@helpdice/sdk 0.2.9 → 0.3.4

This diff represents the content of publicly available package versions that have been released to one of the supported registries. The information contained in this diff is provided for informational purposes only and reflects changes between package versions as they appear in their respective public registries.
package/dist/index.js CHANGED
@@ -23,6 +23,7 @@ let config = {
23
23
  apiUrl: 'https://api.helpdice.com',
24
24
  appUrl: '',
25
25
  apisUrl: 'https://apis.helpdice.com',
26
+ lmsUrl: 'https://lms.helpdice.com',
26
27
  environment: 'production',
27
28
  firebase: undefined
28
29
  };
@@ -275,6 +276,27 @@ const linkiePost = (endpoint, data, config) => new Promise((resolve, reject) =>
275
276
  .post(endpoint, data, config)
276
277
  .then(resolve)
277
278
  .catch((e) => reject(e.response?.data)));
279
+ /* ======================================================================================================= */
280
+ /* ------------------------------------ For LMS App --------------------------------------------------- */
281
+ /* ======================================================================================================= */
282
+ const lhttp = axios.create({
283
+ withCredentials: true,
284
+ headers: {
285
+ "Access-Control-Allow-Origin": "*",
286
+ "Content-Type": "application/json",
287
+ },
288
+ });
289
+ lhttp.interceptors.request.use((config) => {
290
+ validateConfig(['apiKey', 'tokenKey', 'lmsUrl']);
291
+ const { lmsUrl } = getConfig();
292
+ config.baseURL = lmsUrl;
293
+ if (config.headers) {
294
+ config.headers["Content-Type"] = "application/json";
295
+ config.headers.Authorization = localStorage.getItem(TOKEN_KEY) || "";
296
+ config.headers["HB-API-KEY"] = `Bearer ${getConfig().apiKey}` || "";
297
+ }
298
+ return config;
299
+ }, Promise.reject);
278
300
 
279
301
  // The fetchDataWithCallbacks function that accepts a Promise and a callbacks object
280
302
  async function handler$1(promise, callbacks) {
@@ -359,6 +381,14 @@ const cms = {
359
381
  },
360
382
  };
361
383
 
384
+ const hr = {
385
+ v1: {
386
+ job: "job",
387
+ jobs: "jobs",
388
+ resume: "resume"
389
+ },
390
+ };
391
+
362
392
  const inventory = {
363
393
  v1: {
364
394
  store: "store",
@@ -372,6 +402,16 @@ const linkie = {
372
402
  },
373
403
  };
374
404
 
405
+ const lms = {
406
+ v1: {
407
+ courses: "courses",
408
+ course: "courses/course",
409
+ myCourses: "enrollments/my-courses",
410
+ enrollCourse: "enrollments",
411
+ getEnrollStudents: "enrollments/course"
412
+ }
413
+ };
414
+
375
415
  const payment = {
376
416
  v1: {
377
417
  create: "",
@@ -411,7 +451,9 @@ const urls = {
411
451
  inventory,
412
452
  tools,
413
453
  sales,
414
- linkie
454
+ linkie,
455
+ hr,
456
+ lms
415
457
  };
416
458
  // Function to get the URL dynamically based on category, version, and action
417
459
  function getUrl(category, version, action, omitCategory = false) {
@@ -420,7 +462,7 @@ function getUrl(category, version, action, omitCategory = false) {
420
462
  const versionData = categoryData[version]; // Access the correct version dynamically
421
463
  // console.log(versionData?.[action]);
422
464
  if (versionData !== undefined) {
423
- console.log(versionData[action]);
465
+ // console.log(versionData[action]);
424
466
  if (omitCategory) {
425
467
  return `/api/${version}/${versionData[action]}`;
426
468
  }
@@ -981,5 +1023,65 @@ const Apis = {
981
1023
  getCities
982
1024
  };
983
1025
 
984
- export { Account, Accounting, Apis, Assets, Auth, Content, Inventory, Linkie, Order, Payment, Sales, Support, Tools, getConfig, getCookie, getUrl, initializeSDK, shareUrl };
1026
+ const addResume = (data, { config, onFetching, onSuccess, onError, onSettled }) => {
1027
+ return handler$1(post(getUrl("hr", "v1", "resume"), data, config), {
1028
+ onFetching: () => onFetching?.(),
1029
+ onError: (error) => onError?.(error),
1030
+ onSuccess: (data) => onSuccess?.(data),
1031
+ onSettled: () => onSettled?.(),
1032
+ });
1033
+ };
1034
+
1035
+ const postJob = (data, { config, onFetching, onSuccess, onError, onSettled }) => {
1036
+ return handler$1(put(getUrl("hr", "v1", "job"), data, config), {
1037
+ onFetching: () => onFetching?.(),
1038
+ onError: (error) => onError?.(error),
1039
+ onSuccess: (data) => onSuccess?.(data),
1040
+ onSettled: () => onSettled?.(),
1041
+ });
1042
+ };
1043
+
1044
+ const Hr = {
1045
+ getJobById: (id) => get(getUrl("hr", "v1", "job"), {
1046
+ params: {
1047
+ id,
1048
+ },
1049
+ }),
1050
+ getJobs: (id) => get(getUrl("hr", "v1", "jobs"), {
1051
+ params: {
1052
+ id,
1053
+ },
1054
+ }),
1055
+ postJob,
1056
+ postResume: addResume
1057
+ };
1058
+
1059
+ const postCourse = (data, { config, onFetching, onSuccess, onError, onSettled }) => {
1060
+ return handler$1(put(getUrl("lms", "v1", "courses", true), data, config), {
1061
+ onFetching: () => onFetching?.(),
1062
+ onError: (error) => onError?.(error),
1063
+ onSuccess: (data) => onSuccess?.(data),
1064
+ onSettled: () => onSettled?.(),
1065
+ });
1066
+ };
1067
+
1068
+ const LMS = {
1069
+ getCourseById: (id) => get(getUrl("lms", "v1", "course", true), {
1070
+ params: {
1071
+ id,
1072
+ },
1073
+ }),
1074
+ getCourses: () => get(getUrl("lms", "v1", "courses", true), {
1075
+ params: {},
1076
+ }),
1077
+ getMyCourses: () => get(getUrl("lms", "v1", "myCourses", true), {
1078
+ params: {},
1079
+ }),
1080
+ getEnrollStudents: () => get(getUrl("lms", "v1", "getEnrollStudents", true), {
1081
+ params: {},
1082
+ }),
1083
+ postCourse
1084
+ };
1085
+
1086
+ export { Account, Accounting, Apis, Assets, Auth, Content, Hr, Inventory, LMS, Linkie, Order, Payment, Sales, Support, Tools, getConfig, getCookie, getUrl, initializeSDK, shareUrl };
985
1087
  //# sourceMappingURL=index.js.map
package/dist/index.js.map CHANGED
@@ -1 +1 @@
1
- {"version":3,"file":"index.js","sources":["../src/config/validate.ts","../src/config/index.ts","../src/utils/auth.ts","../src/utils/localStorage.ts","../src/config/constants.ts","../src/config/axios.ts","../src/config/handler.ts","../src/account/endpoint.ts","../src/accounting/endpoint.ts","../src/assets/endpoint.ts","../src/auth/endpoint.ts","../src/content/endpoint.ts","../src/inventory/endpoint.ts","../src/linkie/endpoint.ts","../src/payment/endpoint.ts","../src/sales/endpoint.ts","../src/support/endpoint.ts","../src/tools/endpoint.ts","../src/config/route.ts","../src/auth/logout.ts","../src/auth/register.ts","../src/auth/signup.ts","../src/auth/signInWithGoogle.ts","../src/auth/signin.ts","../src/auth/authWithToken.ts","../src/auth/authWithKey.ts","../src/auth/resetPassword.ts","../src/auth/index.ts","../src/order/create.ts","../src/order/index.ts","../src/utils/handler.ts","../src/payment/start.ts","../src/payment/verify.ts","../src/payment/index.ts","../src/content/index.ts","../src/accounting/createInvoice.ts","../src/accounting/submitInvoice.ts","../src/accounting/updateInvoice.ts","../src/accounting/index.ts","../src/support/feedback.ts","../src/support/newsletter.ts","../src/support/ticket.ts","../src/support/index.ts","../src/assets/index.ts","../src/account/update_profile.ts","../src/account/index.ts","../src/utils/share.ts","../src/sales/lead.ts","../src/sales/index.ts","../src/inventory/index.ts","../src/tools/exchangeRates.ts","../src/tools/index.ts","../src/linkie/shortUrl.ts","../src/linkie/index.ts","../src/apis/cities.ts","../src/apis/countries.ts","../src/apis/states.ts","../src/apis/index.ts"],"sourcesContent":["// validateConfig\r\nimport { getConfig } from './index';\r\n\r\ntype Config = ReturnType<typeof getConfig>;\r\n\r\nfunction validateConfig(requiredKeys: (keyof Config)[]) {\r\n const config = getConfig();\r\n\r\n const missingKeys = requiredKeys.filter((key) => {\r\n return !config[key]; // null, undefined, empty string → treated as missing\r\n });\r\n\r\n if (missingKeys.length > 0) {\r\n throw new Error(\r\n `SDK configuration error: Missing required config value(s): ${missingKeys.join(', ')}\\n` +\r\n '👉 Please ensure these keys are set using setConfig({ ... }) before making requests.'\r\n );\r\n }\r\n}\r\n\r\nexport default validateConfig;\r\n","import { default as firebase } from \"firebase/compat/app\";\r\nimport validateConfig from \"./validate\";\r\n\r\n// config.ts\r\nexport type Config = {\r\n apiKey: string | null;\r\n apiUrl: string;\r\n linkieUrl?: string;\r\n appUrl: string;\r\n apisUrl: string;\r\n tokenKey: string;\r\n environment: string;\r\n firebase?: FirebaseConfig\r\n};\r\n\r\nexport interface FirebaseConfig {\r\n apiKey?: string;\r\n authDomain?: string;\r\n projectId?: string;\r\n storageBucket?: string;\r\n messagingSenderId?: string;\r\n appId?: string;\r\n measurementId?: string;\r\n}\r\n\r\nlet config: Config = {\r\n tokenKey: '',\r\n apiKey: null,\r\n apiUrl: 'https://api.helpdice.com',\r\n appUrl: '',\r\n apisUrl: 'https://apis.helpdice.com',\r\n environment: 'production',\r\n firebase: undefined\r\n};\r\n\r\nexport function initializeSDK(newConfig: Partial<Config>) {\r\n config = { ...config, ...newConfig };\r\n validateConfig(['apiKey', 'tokenKey']);\r\n}\r\n\r\nexport function getFirebase() {\r\n validateConfig(['firebase']);\r\n const appConfig = getConfig();\r\n if (appConfig.firebase) {\r\n // if (firebase?.default != undefined) {\r\n // return firebase.default.initializeApp(appConfig.firebase)\r\n // }\r\n return firebase.initializeApp(appConfig.firebase)\r\n }\r\n throw new Error(\r\n `SDK configuration error: Firebase is not configured properly`\r\n );\r\n}\r\n\r\nexport function getConfig(): Config {\r\n return config;\r\n}\r\n","import Cookies from \"js-cookie\";\n// import type { NextPageContext } from \"next\";\n// import { parseCookies } from \"nookies\";\nimport { getConfig } from \"../config\";\n\nexport const getCookie = (\n\tkey = getConfig().tokenKey,\n): string | undefined => {\n\t// console.log(Cookies.get(key));\n\tif (key) return Cookies.get(key);\n\treturn \"\";\n};\n\nexport const isAuth = () => !!getCookie();\n\n// export const getServerSideToken = (ctx: NextPageContext) => {\n// \tconst { token } = parseCookies(ctx);\n// \treturn token;\n// };\n","import CryptoJS from \"crypto-js\";\n\n/**\n * Function to set encryption key\n * @param {string} key - encryption key name\n * @param {string} value string value to be set as encryption key\n */\nexport function setEncryptionKey(key: string, value: string) {\n\tif (key && value) {\n\t\tconst sha256Key = CryptoJS.SHA256(key).toString();\n\t\t// console.log('setting key: ', key, value);\n\t\tconst sha256Data = CryptoJS.SHA256(value).toString();\n\n\t\tlocalStorage.setItem(sha256Key, JSON.stringify(sha256Data));\n\t} else {\n\t\tconsole.error(\"No data provided\");\n\t}\n}\n\n/**\n * function to get the encryption key\n * @param {string} - name of the key to get encryption key for\n * @returns {string}\n */\n// eslint-disable-next-line consistent-return\nexport function getEncryptionKey(key: string) {\n\ttry {\n\t\tconst shaKey = CryptoJS.SHA256(key).toString();\n\t\t// console.log('getting key: ', key, localStorage.getItem(shaKey));\n\t\treturn localStorage.getItem(shaKey);\n\t} catch (err) {\n\t\tconsole.error(\"something went wrong man hoho\");\n\t}\n}\n\nexport function daysCountInMonth(month: number, year: number) {\n\treturn new Date(year, month, 0).getDate();\n}\n\n/**\n * Funtion to store data in local storage\n * Pass second argument as true if setting data for employee side\n * @param {string} key key for the value to be stored\n * @param {*} data actual data to be stored with the provided key\n * @param {boolean} [useEmployeeKey] - flag to decide which encyption key to use, (employee's or admin's)\n */\nexport function setDataInStorage(key: string, data: string | object) {\n\t// Encrypt key\n\tconst shaKey = CryptoJS.SHA256(key).toString();\n\n\tconst encKeyName = \"account_key\";\n\n\tconst encryptionKey = getEncryptionKey(encKeyName);\n\n\t// console.log('setting data: ', encryption_key, key, shaKey, data);\n\n\tif (encryptionKey) {\n\t\t// Encrypt data\n\t\tconst dataCipher = CryptoJS.AES.encrypt(\n\t\t\tJSON.stringify(data),\n\t\t\tencryptionKey,\n\t\t).toString();\n\n\t\tlocalStorage.setItem(shaKey, JSON.stringify(dataCipher));\n\t}\n}\n\n/**\n * Function to get data from local storage\n * Pass second argument as true if getting data for employee side\n * @param {string} key - key of the item to fetch from local storage\n * @param {boolean} [useEmployeeKey] - flag to decide which encyption key to use, (employee's or admin's)\n * @returns {*} value associated with the key\n */\n// eslint-disable-next-line consistent-return\nexport function getDataFromStorage(key: string) {\n\ttry {\n\t\tconst shaKey = CryptoJS.SHA256(key).toString();\n\n\t\tconst encKeyName = \"account_key\";\n\n\t\tconst encryptionKey = getEncryptionKey(encKeyName);\n\n\t\t// console.log(\n\t\t// 'from getting data: ',\n\t\t// key,\n\t\t// 'encryption-key',\n\t\t// typeof encryption_key,\n\t\t// encryption_key\n\t\t// );\n\t\tif (encryptionKey && shaKey) {\n\t\t\tconst ciphertext = JSON.parse(String(localStorage.getItem(shaKey)));\n\t\t\tif (ciphertext) {\n\t\t\t\t// Decrypt\n\t\t\t\tconst bytes = CryptoJS.AES.decrypt(ciphertext, encryptionKey);\n\t\t\t\tconst originalData = bytes.toString(CryptoJS.enc.Utf8);\n\t\t\t\t// console.log('getting data: ', key, shaKey, originalData);\n\t\t\t\treturn JSON.parse(originalData);\n\t\t\t}\n\t\t}\n\t} catch (err) {\n\t\t// console.error('Error getting data from storage boi boi');\n\t}\n}\n\n/**\n * Function to clear items from local storage\n * @param {(string|string[])} keys - key to remove or array of keys\n */\n// export function clearStorage(keys: string[]) {\n// \ttry {\n// \t\tif (Array.isArray(keys)) {\n// \t\t\tkeys.forEach((key) => {\n// \t\t\t\tconst shaKey = CryptoJS.SHA256(key).toString();\n// \t\t\t\tlocalStorage.removeItem(shaKey);\n// \t\t\t});\n// \t\t} else if (typeof keys === \"string\") {\n// \t\t\tconst shaKey = CryptoJS.SHA256(keys).toString();\n// \t\t\tlocalStorage.removeItem(shaKey);\n// \t\t}\n// \t} catch (err) {\n// \t\tconsole.error(\"Error clearing storage\", err);\n// \t}\n// }\nexport function clearStorage(keys: string[]) {\n\ttry {\n\t\tif (Array.isArray(keys)) {\n\t\t\tfor (const key of keys) {\n\t\t\t\tconst shaKey = CryptoJS.SHA256(key).toString();\n\t\t\t\tlocalStorage.removeItem(shaKey);\n\t\t\t}\n\t\t} else if (typeof keys === \"string\") {\n\t\t\tconst shaKey = CryptoJS.SHA256(keys).toString();\n\t\t\tlocalStorage.removeItem(shaKey);\n\t\t}\n\t} catch (err) {\n\t\tconsole.error(\"Error clearing storage\", err);\n\t}\n}\n","export const SITE_NAME = \"Helpdice\";\nexport const TOKEN_KEY = \"access-token\";\nexport const REFRESH_TOKEN_KEY = \"refresh-token\";\nexport const TOKEN_THRESHOLD_KEY = \"access-token-threshold\";\n\nexport const AD_CLIENT = \"ca-pub-7034818195807373\";\n\n/* eslint-disable */\nexport const EMAIL_REGEX =\n\t/(?:[a-z0-9!#$%&'*+/=?^_`{|}~-]+(?:\\.[a-z0-9!#$%&'*+/=?^_`{|}~-]+)*|\"(?:[\\x01-\\x08\\x0b\\x0c\\x0e-\\x1f\\x21\\x23-\\x5b\\x5d-\\x7f]|\\\\[\\x01-\\x09\\x0b\\x0c\\x0e-\\x7f])*\")@(?:(?:[a-z0-9](?:[a-z0-9-]*[a-z0-9])?\\.)+[a-z0-9](?:[a-z0-9-]*[a-z0-9])?|\\[(?:(?:25[0-5]|2[0-4][0-9]|[01]?[0-9][0-9]?)\\.){3}(?:25[0-5]|2[0-4][0-9]|[01]?[0-9][0-9]?|[a-z0-9-]*[a-z0-9]:(?:[\\x01-\\x08\\x0b\\x0c\\x0e-\\x1f\\x21-\\x5a\\x53-\\x7f]|\\\\[\\x01-\\x09\\x0b\\x0c\\x0e-\\x7f])+)\\])/;\nexport const PASSWORD_REGEX = /.{8,}/;\n/* eslint-enable */\n","import type { AxiosRequestConfig, AxiosResponse } from \"axios\";\nimport axios from \"axios\";\n\nimport {\n\tREFRESH_TOKEN_KEY,\n\tTOKEN_KEY,\n\t// TOKEN_THRESHOLD_KEY,\n} from \"./constants\";\n\n// import { handleItem, setThreshold } from './local-storage';\n// import { handleItem, setThreshold } from './local-storage';\nimport type { AuthRequest, SignupRequest } from \"../auth/types\";\nimport { getCookie } from \"../utils/auth\";\nimport { getConfig } from \"./index\";\nimport validateConfig from \"./validate\";\n\nexport const http = axios.create({\n\twithCredentials: true,\n\theaders: {\n\t\t\"Access-Control-Allow-Origin\": \"*\",\n\t\t\"Content-Type\": \"application/json\",\n\t},\n});\n\nhttp.interceptors.request.use((config) => {\n\tvalidateConfig(['apiKey', 'apiUrl']);\n\tconst { apiUrl } = getConfig();\n\tconfig.baseURL = apiUrl;\n\tif (config.headers) {\n\t\tconfig.headers[\"Content-Type\"] = \"application/json\";\n\t\tconfig.headers.Authorization = `Bearer ${getCookie()}` || \"\";\n\t\tconfig.headers[\"HB-API-KEY\"] =\n\t\t\t`Bearer ${getConfig().apiKey}` || \"\";\n\t}\n\treturn config;\n}, Promise.reject);\n\nexport const post = (\n\tendpoint: string,\n\tdata?: unknown,\n\tconfig?: AxiosRequestConfig<unknown>,\n): Promise<AxiosResponse> =>\n\tnew Promise((resolve, reject) =>\n\t\thttp\n\t\t\t.post(endpoint, data, config)\n\t\t\t.then(resolve)\n\t\t\t.catch((e) => reject(e.response?.data)),\n\t);\n\nexport const put = (\n\tendpoint: string,\n\tdata?: unknown,\n\tconfig?: AxiosRequestConfig<unknown>,\n): Promise<AxiosResponse> =>\n\tnew Promise((resolve, reject) =>\n\t\thttp\n\t\t\t.put(endpoint, data, config)\n\t\t\t.then(resolve)\n\t\t\t.catch((e) => reject(e.response?.data)),\n\t);\n\nexport const get = (\n\tendpoint: string,\n\tconfig?: AxiosRequestConfig<unknown>,\n): Promise<AxiosResponse> => {\n\t// console.log('Get Request Config :', config);\n\treturn new Promise((resolve, reject) =>\n\t\thttp\n\t\t\t.get(endpoint, config)\n\t\t\t.then(resolve)\n\t\t\t.catch((e) => reject(e.response?.data)),\n\t);\n};\n\nexport const patch = <T>(endpoint: string, data: T): Promise<AxiosResponse> =>\n\tnew Promise((resolve, reject) =>\n\t\thttp\n\t\t\t.patch(endpoint, data)\n\t\t\t.then(resolve)\n\t\t\t.catch((e) => reject(e.response.data)),\n\t);\n\nexport const login = (data: AuthRequest): Promise<AxiosResponse> =>\n\tpost(\"passport/basic/login\", data);\n\nexport const logout = (): Promise<AxiosResponse> => post(\"user/logout\");\n\nexport const passwordReset = (\n\tdata: Partial<AuthRequest>,\n): Promise<AxiosResponse> => post(\"user/reset-password\", data);\n\nexport const signup = (data: SignupRequest): Promise<AxiosResponse> =>\n\tpost(\"passport/basic/signup\", data);\n\n\n\n/* ======================================================================================================= */\n/* ------------------------------------ For Linkie App --------------------------------------------------- */\n/* ======================================================================================================= */\n\nexport const chttp = axios.create({\n\twithCredentials: true,\n\theaders: {\n\t\t\"Access-Control-Allow-Origin\": \"*\",\n\t\t\"Content-Type\": \"application/json\",\n\t},\n});\n\nchttp.interceptors.request.use((config) => {\n\tvalidateConfig(['apiKey', 'tokenKey', 'linkieUrl']);\n\tconst { linkieUrl } = getConfig();\n\tconfig.baseURL = linkieUrl;\n\tif (config.headers) {\n\t\tconfig.headers[\"Content-Type\"] = \"application/json\";\n\t\tconfig.headers.Authorization = localStorage.getItem(TOKEN_KEY) || \"\";\n\t\tconfig.headers[\"HB-API-KEY\"] =\n\t\t\t`Bearer ${getConfig().apiKey}` || \"\";\n\t}\n\treturn config;\n}, Promise.reject);\n\n// chttp.interceptors.response.use(\n// \t(response) => response,\n// \tasync (error) => {\n// \t\tif (error.code === \"ERR_NETWORK\") {\n// \t\t\treturn Promise.reject(error);\n// \t\t}\n\n// \t\tconst refreshToken = localStorage.getItem(REFRESH_TOKEN_KEY);\n\n// \t\tif (!refreshToken) {\n// \t\t\treturn Promise.reject(error);\n// \t\t}\n\n// \t\t// const originalRequest = error.config;\n\n// \t\t// if (error.response.status === 401 && !originalRequest._retry) {\n// \t\t// originalRequest._retry = true;\n\n// \t\t// if (http.defaults.headers) {\n// \t\t// http.defaults.headers.Authorization = `Bearer ${refreshToken}`;\n// \t\t// }\n\n// \t\t// try {\n// \t\t// const res = await post('auth/token');\n// \t\t// const { access_token, threshold } = res.data;\n\n// \t\t// // handleItem(TOKEN_KEY, access_token);\n// \t\t// // handleItem(TOKEN_THRESHOLD_KEY, setThreshold(threshold));\n\n// \t\t// if (http.defaults.headers) {\n// \t\t// http.defaults.headers.Authorization = access_token;\n// \t\t// }\n// \t\t// return await http(originalRequest);\n// \t\t// } catch (reason) {\n// \t\t// return Promise.reject(reason);\n// \t\t// }\n// \t\t// }\n\n// \t\treturn Promise.reject(error);\n// \t},\n// );\n\nexport const linkiePost = (\n\tendpoint: string,\n\tdata?: unknown,\n\tconfig?: AxiosRequestConfig<unknown>,\n): Promise<AxiosResponse> =>\n\tnew Promise((resolve, reject) =>\n\t\tchttp\n\t\t\t.post(endpoint, data, config)\n\t\t\t.then(resolve)\n\t\t\t.catch((e) => reject(e.response?.data)),\n\t);\n","import type { AxiosResponse } from \"axios\";\n\n// Define the type for the callbacks object\nexport interface Callbacks {\n\tonFetching?: () => void;\n\tonSuccess?: (response: {\n\t\tdata: object;\n\t\tstatus: number;\n\t\tstatusText: string;\n\t}) => void;\n\tonError?: (error: string) => void;\n\tonSettled?: () => void;\n}\n\n// The fetchDataWithCallbacks function that accepts a Promise and a callbacks object\nasync function handler(promise: Promise<AxiosResponse>, callbacks?: Callbacks) {\n\t// Destructure callbacks from the object\n\tconst { onFetching, onSuccess, onError, onSettled } = callbacks ?? {};\n\n\t// Call the onFetching callback before making the request\n\tif (onFetching) onFetching();\n\n\t// Handle the Promise passed as an argument\n\tpromise\n\t\t.then(\n\t\t\t(response: {\n\t\t\t\tdata: object;\n\t\t\t\tstatus: number;\n\t\t\t\tstatusText: string;\n\t\t\t}) => {\n\t\t\t\t// Call the onSuccess callback if the Promise resolves successfully\n\t\t\t\tif (onSuccess)\n\t\t\t\t\tonSuccess({\n\t\t\t\t\t\tdata: response.data,\n\t\t\t\t\t\tstatus: response.status,\n\t\t\t\t\t\tstatusText: response.statusText,\n\t\t\t\t\t});\n\t\t\t},\n\t\t)\n\t\t.catch((error) => {\n\t\t\t// Call the onError callback if the Promise is rejected\n\t\t\tif (onError) onError(error);\n\t\t})\n\t\t.finally(() => {\n\t\t\t// Call the onSettled callback after the Promise is settled\n\t\t\tif (onSettled) onSettled();\n\t\t});\n}\n\nexport default handler;\n","const account = {\n\tv1: {\n\t\tprofile: \"profile\",\n\t},\n};\n\nexport default account;\n","const accounting = {\n\tv1: {\n\t\titem: \"item\",\n\t\titems: \"items\",\n\t\tinvoice: \"invoice\",\n\t\tsubmit_invoice: \"invoice/submit\",\n\t\tinvoices: \"invoices\",\n\t\titem_categories: \"item/category\",\n\t\titem_brands: \"item/brand\",\n\t},\n};\n\nexport default accounting;\n","const assets = {\n\tv1: {\n\t\timagePlaceholder: \"images/image-placeholder.webp\",\n\t\tavatar: \"images/avatar.webp\",\n\t},\n};\n\nexport default assets;\n","const auth = {\n\tv1: {\n\t\tsignin: \"signin\",\n\t\tregister: \"signup\",\n\t\tsignup: \"register\",\n\t\tlogout: \"logout\",\n\t\tauth_with_token: \"authenticate\",\n\t\tauth_with_key: \"verify\",\n\t\treset_password: \"recovery-password\",\n\t\tchange_password: \"change-password\"\n\t},\n};\n\nexport default auth;\n","const cms = {\n\tv1: {\n\t\tarticle: \"article\",\n\t\tarticles: \"articles\",\n\t\tarticleCategories: \"article/categories\",\n\t\tmcq: \"mcq\",\n\t\tmcqs: \"mcqs\",\n\t\tall_mcqs: \"mcqs/all\",\n\t\tmcqCategories: \"mcq/categories\",\n\t\tqna: \"qna\",\n\t\tqnas: \"qnas\",\n\t\tqnaCategories: \"qna/categories\",\n\t},\n};\n\nexport default cms;\n","const inventory = {\n\tv1: {\n\t\tstore: \"store\",\n\t\tstore_products: \"store/products\",\n\t},\n};\n\nexport default inventory;\n","const linkie = {\n\tv1: {\n\t\tshorten: \"shorten\",\n\t},\n};\n\nexport default linkie;\n","const payment = {\n\tv1: {\n\t\tcreate: \"\",\n\t\tverify: \"verify\",\n\t},\n};\n\nexport default payment;\n","const sales = {\r\n\tv1: {\r\n\t\taddLead: \"lead\"\r\n\t},\r\n};\r\n\r\nexport default sales;\r\n","const support = {\n\tv1: {\n\t\tticket: \"ticket\",\n\t\ttickets: \"tickets\",\n\t\tnewsletter: \"newsletter\",\n\t\tfeedback: \"feedback\"\n\t}\n};\n\nexport default support;\n","const tools = {\n\tv1: {\n\t\texchangeRates: \"exchange-rates\",\n\t},\n};\n\nexport default tools;\n","import account from \"../account/endpoint\";\nimport accounting from \"../accounting/endpoint\";\nimport assets from \"../assets/endpoint\";\nimport auth from \"../auth/endpoint\";\nimport cms from \"../content/endpoint\";\nimport inventory from \"../inventory/endpoint\";\nimport linkie from \"../linkie/endpoint\";\nimport payment from \"../payment/endpoint\";\nimport sales from \"../sales/endpoint\";\nimport support from \"../support/endpoint\";\nimport tools from \"../tools/endpoint\";\n\ninterface CategoryUrls {\n\t[version: string]: {\n\t\t[action: string]: string;\n\t};\n}\n\ninterface Urls {\n\t[category: string]: CategoryUrls;\n}\n\nconst urls: Urls = {\n\tauth,\n\tcms,\n\taccount,\n\taccounting,\n\tsupport,\n\tassets,\n\tpayment,\n\tinventory,\n\ttools,\n\tsales,\n\tlinkie\n};\n\n// Function to get the URL dynamically based on category, version, and action\nexport function getUrl(\n\tcategory: string,\n\tversion: string,\n\taction: string,\n\tomitCategory: boolean = false\n): string {\n\tconst categoryData = urls[category]; // Access the correct category dynamically\n\tif (categoryData) {\n\t\tconst versionData = categoryData[version]; // Access the correct version dynamically\n\t\t// console.log(versionData?.[action]);\n\t\tif (versionData !== undefined) {\n\t\t\tconsole.log(versionData[action]);\n\t\t\tif (omitCategory) {\n\t\t\t\treturn `/api/${version}/${versionData[action]}`;\n\t\t\t}\n\t\t\treturn `/api/${version}/${category}/${versionData[action]}`; // Construct the URL\n\t\t}\n\t\tthrow new Error(\n\t\t\t`Invalid action: ${action} for version: ${version} in category: ${category}`,\n\t\t);\n\t}\n\tthrow new Error(`Invalid category: ${category}`);\n}\n","import { post } from \"../config/axios\";\nimport handler from \"../config/handler\";\nimport { getUrl } from \"../config/route\";\nimport { clearStorage, getDataFromStorage } from \"../utils/localStorage\";\n\nconst logout = (\n\tdata: { data?: unknown },\n\t{\n\t\tconfig,\n\t\tonFetching,\n\t\tonSuccess,\n\t\tonError,\n\t\tonSettled,\n\t}: {\n\t\tonFetching?: () => void;\n\t\tonSuccess?: (data: object) => void;\n\t\tonError?: (error: string) => void;\n\t\tonSettled?: () => void;\n\t\tconfig?: { params: unknown };\n\t},\n) => {\n\treturn handler(\n\t\tpost(\n\t\t\tgetUrl(\"auth\", \"v1\", \"logout\"),\n\t\t\t{ ...data, fcm_token: getDataFromStorage(\"fcm_token\") },\n\t\t\tconfig,\n\t\t),\n\t\t{\n\t\t\tonFetching: () => onFetching?.(),\n\t\t\tonError: (error) => onError?.(error),\n\t\t\tonSuccess: (data) => {\n\t\t\t\tclearStorage([\"accountAccessToken\", \"accountInfo\", \"account_key\"]);\n\t\t\t\tonSuccess?.(data);\n\t\t\t\twindow.location.href = \"/\";\n\t\t\t},\n\t\t\tonSettled: () => onSettled?.(),\n\t\t},\n\t);\n};\n\nexport default logout;\n","import { post } from \"../config/axios\";\nimport handler from \"../config/handler\";\nimport { getUrl } from \"../config/route\";\nimport type { AuthRequestParams, SignupRequest } from \"./types\";\n\nconst register = (\n\tdata: SignupRequest,\n\t{\n\t\tconfig,\n\t\tonFetching,\n\t\tonSuccess,\n\t\tonError,\n\t\tonSettled,\n\t}: {\n\t\tonFetching?: () => void;\n\t\tonSuccess?: (data: object) => void;\n\t\tonError?: (error: string) => void;\n\t\tonSettled?: () => void;\n\t\tconfig?: { params: AuthRequestParams };\n\t},\n) => {\n\treturn handler(post(getUrl(\"auth\", \"v1\", \"register\"), data, config), {\n\t\tonFetching: () => onFetching?.(),\n\t\tonError: (error) => onError?.(error),\n\t\tonSuccess: (data) => onSuccess?.(data),\n\t\tonSettled: () => onSettled?.(),\n\t});\n};\n\nexport default register;\n","import { post } from \"../config/axios\";\nimport handler from \"../config/handler\";\nimport { getUrl } from \"../config/route\";\nimport type { AuthRequestParams, SignupRequest } from \"./types\";\n\nconst signup = (\n\tdata: SignupRequest,\n\t{\n\t\tconfig,\n\t\tonFetching,\n\t\tonSuccess,\n\t\tonError,\n\t\tonSettled,\n\t}: {\n\t\tonFetching?: () => void;\n\t\tonSuccess?: (data: object) => void;\n\t\tonError?: (error: string) => void;\n\t\tonSettled?: () => void;\n\t\tconfig?: { params: AuthRequestParams };\n\t},\n) => {\n\treturn handler(post(getUrl(\"auth\", \"v1\", \"signup\"), data, config), {\n\t\tonFetching: () => onFetching?.(),\n\t\tonError: (error) => onError?.(error),\n\t\tonSuccess: (data) => onSuccess?.(data),\n\t\tonSettled: () => onSettled?.(),\n\t});\n};\n\nexport default signup;\n","// import signin from \"./signin\";\nimport { GoogleAuthProvider, getAuth, signInWithPopup } from \"firebase/auth\";\nimport signup from \"./signup\";\nimport { getFirebase } from \"../config/index\";\n\ntype SignInGoogleProps = {\n\tonFetching?: () => void;\n\tonSuccess?: (data: object) => void;\n\tonError?: (error: unknown | string) => void;\n\tonSettled?: () => void;\n};\n\n// Function to handle Google Sign-In\nasync function signInWithGoogle({\n\tonSuccess,\n\tonError,\n\tonFetching,\n\tonSettled,\n}: SignInGoogleProps): Promise<void> {\n\ttry {\n\t\tconst provider = new GoogleAuthProvider();\n\t\tconst auth = getAuth(getFirebase());\n\t\tsignInWithPopup(auth, provider)\n\t\t\t.then((result) => {\n\t\t\t\t// This gives you a Google Access Token. You can use it to access the Google API.\n\t\t\t\tconst credential = GoogleAuthProvider.credentialFromResult(result);\n\t\t\t\t// const token = credential?.accessToken;\n\t\t\t\t// The signed-in user info.\n\t\t\t\tconst user = result.user;\n\t\t\t\t// console.log(user);\n\t\t\t\treturn signup(\n\t\t\t\t\t{\n\t\t\t\t\t\tprovider: \"Google\",\n\t\t\t\t\t\tuid: user.uid,\n\t\t\t\t\t\tname: String(user.displayName),\n\t\t\t\t\t\temail: String(user.email),\n\t\t\t\t\t\tusername: String(user.email),\n\t\t\t\t\t\tpassword: user.uid.substring(0, user.uid.length / 2),\n\t\t\t\t\t\t// token: token,\n\t\t\t\t\t\ttoday: new Date(),\n\t\t\t\t\t},\n\t\t\t\t\t{\n\t\t\t\t\t\tonFetching: () => onFetching?.(),\n\t\t\t\t\t\tonError: (error) => onError?.(error),\n\t\t\t\t\t\tonSuccess: (data) => onSuccess?.(data),\n\t\t\t\t\t\tonSettled: () => onSettled?.(),\n\t\t\t\t\t},\n\t\t\t\t);\n\t\t\t})\n\t\t\t.catch((error) => {\n\t\t\t\tonError?.(error);\n\t\t\t\treturn Promise.reject(\"Something Went Wrong\");\n\t\t\t\t// Handle Errors here.\n\t\t\t\t// const errorCode = error.code;\n\t\t\t\t// const errorMessage = error.message;\n\t\t\t\t// The email of the user's account used.\n\t\t\t\t// const email = error.customData.email;\n\t\t\t\t// The AuthCredential type that was used.\n\t\t\t\t// const credential = GoogleAuthProvider.credentialFromError(error);\n\t\t\t\t// ...\n\t\t\t});\n\t} catch (err) {\n\t\tonError?.(err);\n\t}\n}\n\nexport default signInWithGoogle;\n","import { post } from \"../config/axios\";\nimport handler from \"../config/handler\";\nimport { getUrl } from \"../config/route\";\nimport type { AuthRequest, AuthRequestParams } from \"./types\";\n\nconst signin = (\n\tdata: AuthRequest,\n\t{\n\t\tconfig,\n\t\tonFetching,\n\t\tonSuccess,\n\t\tonError,\n\t\tonSettled,\n\t}: {\n\t\tonFetching?: () => void;\n\t\tonSuccess?: (data: object) => void;\n\t\tonError?: (error: string) => void;\n\t\tonSettled?: () => void;\n\t\tconfig?: { params: AuthRequestParams };\n\t},\n) => {\n\treturn handler(post(getUrl(\"auth\", \"v1\", \"signin\"), data, config), {\n\t\tonFetching: () => onFetching?.(),\n\t\tonError: (error) => onError?.(error),\n\t\tonSuccess: (data) => onSuccess?.(data),\n\t\tonSettled: () => onSettled?.(),\n\t});\n};\n\nexport default signin;\n","import { post } from \"../config/axios\";\r\nimport handler from \"../config/handler\";\r\nimport { getUrl } from \"../config/route\";\r\nimport type { TokenRequest, AuthRequestParams } from \"./types\";\r\n\r\nconst authWithToken = (\r\n\tdata: TokenRequest,\r\n\t{\r\n\t\tconfig,\r\n\t\tonFetching,\r\n\t\tonSuccess,\r\n\t\tonError,\r\n\t\tonSettled,\r\n\t}: {\r\n\t\tonFetching?: () => void;\r\n\t\tonSuccess?: (data: object) => void;\r\n\t\tonError?: (error: string) => void;\r\n\t\tonSettled?: () => void;\r\n\t\tconfig?: { params: AuthRequestParams };\r\n\t},\r\n) => {\r\n\treturn handler(post(getUrl(\"auth\", \"v1\", \"auth_with_token\"), data, config), {\r\n\t\tonFetching: () => onFetching?.(),\r\n\t\tonError: (error) => onError?.(error),\r\n\t\tonSuccess: (data) => onSuccess?.(data),\r\n\t\tonSettled: () => onSettled?.(),\r\n\t});\r\n};\r\n\r\nexport default authWithToken;","import { post } from \"../config/axios\";\r\nimport handler from \"../config/handler\";\r\nimport { getUrl } from \"../config/route\";\r\nimport type { APIRequest, AuthRequestParams } from \"./types\";\r\n\r\nconst authWithKey = (\r\n\tdata: APIRequest,\r\n\t{\r\n\t\tconfig,\r\n\t\tonFetching,\r\n\t\tonSuccess,\r\n\t\tonError,\r\n\t\tonSettled,\r\n\t}: {\r\n\t\tonFetching?: () => void;\r\n\t\tonSuccess?: (data: object) => void;\r\n\t\tonError?: (error: string) => void;\r\n\t\tonSettled?: () => void;\r\n\t\tconfig?: { params: AuthRequestParams };\r\n\t},\r\n) => {\r\n\treturn handler(post(getUrl(\"auth\", \"v1\", \"auth_with_key\"), data, config), {\r\n\t\tonFetching: () => onFetching?.(),\r\n\t\tonError: (error) => onError?.(error),\r\n\t\tonSuccess: (data) => onSuccess?.(data),\r\n\t\tonSettled: () => onSettled?.(),\r\n\t});\r\n};\r\n\r\nexport default authWithKey","import { post } from \"../config/axios\";\r\nimport handler from \"../config/handler\";\r\nimport { getUrl } from \"../config/route\";\r\nimport type { AuthRequest, AuthRequestParams } from \"./types\";\r\n\r\nconst resetPassword = (\r\n data: AuthRequest,\r\n {\r\n config,\r\n onFetching,\r\n onSuccess,\r\n onError,\r\n onSettled,\r\n }: {\r\n onFetching?: () => void;\r\n onSuccess?: (data: object) => void;\r\n onError?: (error: string) => void;\r\n onSettled?: () => void;\r\n config?: { params: AuthRequestParams };\r\n },\r\n) => {\r\n return handler(post(getUrl(\"auth\", \"v1\", \"reset_password\"), data, config), {\r\n onFetching: () => onFetching?.(),\r\n onError: (error) => onError?.(error),\r\n onSuccess: (data) => onSuccess?.(data),\r\n onSettled: () => onSettled?.(),\r\n });\r\n};\r\n\r\nexport default resetPassword;\r\n","import cookie from \"js-cookie\";\nimport { jwtDecode } from \"jwt-decode\";\n// import type { NextPageContext } from \"next\";\nimport { getConfig } from \"../config/index\";\nimport { isAuth } from \"../utils/auth\";\nimport {\n\tgetDataFromStorage,\n\tsetDataInStorage,\n\tsetEncryptionKey,\n} from \"../utils/localStorage\";\nimport logout from \"./logout\";\nimport register from \"./register\";\nimport signInWithGoogle from \"./signInWithGoogle\";\nimport signIn from \"./signin\";\nimport signUp from \"./signup\";\nimport validateConfig from \"../config/validate\";\nimport authWithToken from \"./authWithToken\";\nimport authWithKey from \"./authWithKey\";\nimport resetPassword from \"./resetPassword\";\n\nconst Auth = {\n\tsignIn,\n\tsignUp,\n\tregister,\n\tresetPassword,\n\tsignInWithGoogle,\n\tsaveTokenToCookie: (token: string) => {\n\t\tvalidateConfig(['tokenKey']);\n\t\tconst { tokenKey } = getConfig();\n\t\tif (tokenKey) {\n\t\t\tcookie.set(tokenKey, token, { expires: 900000 });\n\t\t}\n\t\twindow.location.href = \"/\";\n\t},\n\tsaveTokenToStorage: (token: string) => {\n\t\tconst accountInfo: {\n\t\t\t_id: string;\n\t\t\tcreatedAt: string;\n\t\t} = jwtDecode(token);\n\t\tif (accountInfo) {\n\t\t\tsetEncryptionKey(\"account_key\", accountInfo._id + accountInfo.createdAt);\n\t\t\tsetDataInStorage(\"accountAccessToken\", token);\n\t\t\tsetDataInStorage(\"accountInfo\", accountInfo);\n\t\t}\n\t},\n\tgetTokenFromStorage: () => {\n\t\treturn getDataFromStorage(\"accountAccessToken\");\n\t},\n\tgetUserFromStrorage: () => {\n\t\treturn getDataFromStorage(\"accountInfo\");\n\t},\n\t/**\n\t * Action to update stored admin info in the redux\n\t * @param {string | object} key key or an object with key: value of the fields to be updated\n\t * @param {any} value value of the field to be updated (only if the key passed is of type string)\n\t */\n\tupdateUserInfo: (key?: string | object, value?: any) => () => {\n\t\tconsole.log(\"typeof key: \", typeof key, key);\n\t\ttry {\n\t\t\t// console.log(key);\n\t\t\tconst accountInfo = getDataFromStorage(\"accountInfo\");\n\t\t\tif (typeof key === \"object\") {\n\t\t\t\tlet updatedInfo = { ...accountInfo };\n\t\t\t\t// for..of\n\t\t\t\tfor (const [ky, value] of Object.entries(key)) {\n\t\t\t\t\tupdatedInfo = { ...updatedInfo, [ky]: value };\n\t\t\t\t}\n\t\t\t\t// console.log(updatedInfo);\n\t\t\t\tsetDataInStorage(\"accountInfo\", updatedInfo);\n\t\t\t} else if (typeof key === \"string\") {\n\t\t\t\tif (value) {\n\t\t\t\t\tsetDataInStorage(\"accountInfo\", { ...accountInfo, [key]: value });\n\t\t\t\t} else {\n\t\t\t\t\tconsole.error(\n\t\t\t\t\t\t\"Value is not provided for the given key to update admin info\",\n\t\t\t\t\t);\n\t\t\t\t}\n\t\t\t}\n\t\t} catch (error) {\n\t\t\tconsole.error(\"update logo action \", error);\n\t\t}\n\t},\n\tisAuthenticated: (cookie?: boolean) => {\n\t\tif (cookie) {\n\t\t\treturn isAuth();\n\t\t}\n\t\treturn getDataFromStorage(\"accountAccessToken\") !== undefined;\n\t},\n\t// getServerToken: (ctx: NextPageContext) => getServerSideToken(ctx),\n\tlogout,\n\tServer: {\n\t\tauthWithToken,\n\t\tauthWithKey\n\t}\n};\n\nexport default Auth;\n","import { post } from \"../config/axios\";\nimport handler from \"../config/handler\";\nimport { getUrl } from \"../config/route\";\nimport type { Order } from \"./types\";\n\nconst create = (\n\tdata: Order,\n\t{\n\t\tconfig,\n\t\tonFetching,\n\t\tonSuccess,\n\t\tonError,\n\t\tonSettled,\n\t}: {\n\t\tonFetching?: () => void;\n\t\tonSuccess?: (data: object) => void;\n\t\tonError?: (error: string) => void;\n\t\tonSettled?: () => void;\n\t\tconfig?: object;\n\t},\n) => {\n\treturn handler(post(getUrl(\"order\", \"v1\", \"create\"), data, config), {\n\t\tonFetching: () => onFetching?.(),\n\t\tonError: (error) => onError?.(error),\n\t\tonSuccess: (data) => onSuccess?.(data),\n\t\tonSettled: () => onSettled?.(),\n\t});\n};\n\nexport default create;\n","import create from \"./create\";\n\nconst Order = {\n\tcreate,\n};\n\nexport default Order;\n","import type { AxiosResponse } from \"axios\";\n\n// Define type for the handler options\ninterface AxiosRequestHandlerOptions {\n\tpromise: Promise<AxiosResponse<any>>; // The promise that resolves with Axios response\n\tonLoading?: (isLoading: boolean) => void; // Callback to show/hide loading state\n\tonSuccess?: (data: any) => void; // Callback for success response\n\tonError?: (error: any) => void; // Callback for error response\n\tonSettled?: () => void; // Callback for when request finishes (either success or failure)\n\tonProgress?: (progress: string) => void; // Callback for progress updates\n}\n\nconst handler = ({\n\tpromise,\n\tonLoading = () => {},\n\tonSuccess = () => {},\n\tonError = () => {},\n\tonSettled = () => {},\n\tonProgress = () => {},\n}: AxiosRequestHandlerOptions): void => {\n\t// Call onLoading at the start to show loading state\n\tonLoading(true);\n\n\t// Handling the passed promise\n\tpromise\n\t\t.then((response: AxiosResponse) => {\n\t\t\t// Show success state\n\t\t\tconsole.log(\"Request Success:\", response);\n\n\t\t\t// Execute success callback if provided\n\t\t\tif (onSuccess) {\n\t\t\t\tonSuccess(response.data);\n\t\t\t}\n\t\t})\n\t\t.catch((error: any) => {\n\t\t\t// Show error state\n\t\t\tconsole.error(\"Request Error:\", error);\n\n\t\t\t// Execute error callback if provided\n\t\t\tif (onError) {\n\t\t\t\tonError(error);\n\t\t\t}\n\t\t})\n\t\t.finally(() => {\n\t\t\t// Execute settled callback (on success or error)\n\t\t\tif (onSettled) {\n\t\t\t\tonSettled();\n\t\t\t}\n\n\t\t\t// Call onLoading to hide loading indicator after completion\n\t\t\tonLoading(false);\n\n\t\t\t// Hide loading indicator\n\t\t\tconsole.log(\"Request Completed\");\n\t\t});\n};\n\nexport default handler;\n","import type { AxiosRequestConfig } from \"axios\";\nimport { post } from \"../config/axios\";\nimport { getUrl } from \"../config/route\";\nimport handler from \"../utils/handler\";\n\n// Optional: if you have defined Order/VerifyPayment types\n// import type { Order } from \"../order/types\";\n// import type { VerifyPayment } from \"./types\";\n\ndeclare global {\n\tinterface Window {\n\t\tRazorpay: any; // Ideally, use proper types from @types/razorpay\n\t}\n}\n\ninterface PaymentData {\n\tamount: number;\n\tcurrency: string;\n\tpaymentService: string;\n\t[key: string]: any;\n}\n\ninterface StartOptions {\n\tconfig?: AxiosRequestConfig | null;\n\tonLoading?: (isLoading: boolean) => void;\n\tonSuccess?: (data: any) => void;\n\tonError?: (error: any) => void;\n\tonSettled?: () => void;\n}\n\nfunction start(\n\tdata: PaymentData,\n\t{\n\t\tconfig = null,\n\t\tonLoading = () => { },\n\t\tonSuccess = () => { },\n\t\tonError = () => { },\n\t\tonSettled = () => { },\n\t}: StartOptions = {},\n) {\n\treturn handler({\n\t\tpromise: post(\n\t\t\tgetUrl(\"payment\", \"v1\", \"create\"),\n\t\t\t{\n\t\t\t\t...data,\n\t\t\t\tmethod: {\n\t\t\t\t\tlabel: data.paymentService,\n\t\t\t\t\tcurrency: data.currency,\n\t\t\t\t},\n\t\t\t},\n\t\t\tconfig || undefined,\n\t\t),\n\t\tonLoading,\n\t\tonError: (error) => onError(error),\n\t\tonSuccess: (responseData: any) => {\n\t\t\tif (responseData?.method === \"Razor Pay\") {\n\t\t\t\tconst options = responseData.options;\n\t\t\t\toptions.handler = async (response: any) => {\n\t\t\t\t\t// console.log(\"Payment Success:\", response);\n\t\t\t\t\tonSuccess(response);\n\t\t\t\t\t// Validation call (if needed)\n\t\t\t\t};\n\t\t\t\tconst rzp1 = new window.Razorpay(options);\n\t\t\t\trzp1.on(\"payment.failed\", (response: any) => {\n\t\t\t\t\tonError(response);\n\t\t\t\t});\n\t\t\t\trzp1.open();\n\t\t\t}\n\t\t},\n\t\tonSettled,\n\t});\n}\n\nexport default start;\n","import type { AxiosRequestConfig } from \"axios\";\nimport { post } from \"../config/axios\";\nimport handler from \"../config/handler\";\nimport { getUrl } from \"../config/route\";\nimport type { SuccessProps } from \"./types\";\nimport type { VerifyPayment } from \"./types\";\n\nconst verify = (\n\tdata: VerifyPayment,\n\t{\n\t\tconfig,\n\t\tonFetching,\n\t\tonSuccess,\n\t\tonError,\n\t\tonSettled,\n\t}: {\n\t\tonFetching?: () => void;\n\t\tonSuccess?: (data: SuccessProps) => void;\n\t\tonError?: (error: string) => void;\n\t\tonSettled?: () => void;\n\t\tconfig?: AxiosRequestConfig<unknown>;\n\t},\n) => {\n\treturn handler(post(getUrl(\"payment\", \"v1\", \"verify\"), data, config), {\n\t\tonFetching: () => onFetching?.(),\n\t\tonError: (error) => onError?.(error),\n\t\tonSuccess: (data) => onSuccess?.(data),\n\t\tonSettled: () => onSettled?.(),\n\t});\n};\n\nexport default verify;\n","import start from \"./start\";\nimport verify from \"./verify\";\n\nconst Payment = {\n\tstart,\n\tverify,\n};\n\nexport default Payment;\n","import { get } from \"../config/axios\";\nimport { getUrl } from \"../config/route\";\n\nconst Content = {\n\tarticle: (slug: string) =>\n\t\tget(getUrl(\"cms\", \"v1\", \"article\"), {\n\t\t\tparams: {\n\t\t\t\tslug,\n\t\t\t},\n\t\t}),\n\tarticles: (config?: object | undefined) =>\n\t\tget(getUrl(\"cms\", \"v1\", \"articles\"), config),\n\tarticleCategories: (config?: object | undefined) =>\n\t\tget(getUrl(\"cms\", \"v1\", \"articleCategories\"), config),\n\tmcq: (slug: string) =>\n\t\tget(getUrl(\"cms\", \"v1\", \"mcq\"), {\n\t\t\tparams: {\n\t\t\t\tslug,\n\t\t\t},\n\t\t}),\n\tmcqs: (config?: object | undefined) =>\n\t\tget(getUrl(\"cms\", \"v1\", \"mcqs\"), config),\n\tallMcqs: (config?: object | undefined) =>\n\t\tget(getUrl(\"cms\", \"v1\", \"all_mcqs\"), config),\n\tmcqsCategories: (config?: object | undefined) =>\n\t\tget(getUrl(\"cms\", \"v1\", \"mcqCategories\"), config),\n\tqna: (slug: string) =>\n\t\tget(getUrl(\"cms\", \"v1\", \"qna\"), {\n\t\t\tparams: {\n\t\t\t\tslug,\n\t\t\t},\n\t\t}),\n\tqnas: (config?: object | undefined) =>\n\t\tget(getUrl(\"cms\", \"v1\", \"qnas\"), config),\n\tqnasCategories: (config?: object | undefined) =>\n\t\tget(getUrl(\"cms\", \"v1\", \"qnaCategories\"), config),\n};\n\nexport default Content;\n","import type { AuthRequestParams } from \"../auth/types\";\nimport { post } from \"../config/axios\";\nimport handler from \"../config/handler\";\nimport { getUrl } from \"../config/route\";\nimport type { Invoice } from \"./types\";\n\nconst createInvoice = (\n\tdata: Invoice,\n\t{\n\t\tconfig,\n\t\tonFetching,\n\t\tonSuccess,\n\t\tonError,\n\t\tonSettled,\n\t}: {\n\t\tonFetching?: () => void;\n\t\tonSuccess?: (data: object) => void;\n\t\tonError?: (error: string) => void;\n\t\tonSettled?: () => void;\n\t\tconfig?: { params: AuthRequestParams };\n\t},\n) => {\n\treturn handler(post(getUrl(\"accounting\", \"v1\", \"invoice\"), data, config), {\n\t\tonFetching: () => onFetching?.(),\n\t\tonError: (error) => onError?.(error),\n\t\tonSuccess: (data) => onSuccess?.(data),\n\t\tonSettled: () => onSettled?.(),\n\t});\n};\n\nexport default createInvoice;\n","import type { AuthRequestParams } from \"../auth/types\";\nimport { post } from \"../config/axios\";\nimport handler from \"../config/handler\";\nimport { getUrl } from \"../config/route\";\nimport type { SubmitInvoice } from \"./types\";\n\nconst submitInvoice = (\n\tdata: SubmitInvoice,\n\t{\n\t\tconfig,\n\t\tonFetching,\n\t\tonSuccess,\n\t\tonError,\n\t\tonSettled,\n\t}: {\n\t\tonFetching?: () => void;\n\t\tonSuccess?: (data: object) => void;\n\t\tonError?: (error: string) => void;\n\t\tonSettled?: () => void;\n\t\tconfig?: { params: AuthRequestParams };\n\t},\n) => {\n\treturn handler(\n\t\tpost(getUrl(\"accounting\", \"v1\", \"submit_invoice\"), data, config),\n\t\t{\n\t\t\tonFetching: () => onFetching?.(),\n\t\t\tonError: (error) => onError?.(error),\n\t\t\tonSuccess: (data) => onSuccess?.(data),\n\t\t\tonSettled: () => onSettled?.(),\n\t\t},\n\t);\n};\n\nexport default submitInvoice;\n","import type { AuthRequestParams } from \"../auth/types\";\nimport { put } from \"../config/axios\";\nimport handler from \"../config/handler\";\nimport { getUrl } from \"../config/route\";\nimport type { Invoice } from \"./types\";\n\nconst updateInvoice = (\n\tdata: Invoice,\n\t{\n\t\tconfig,\n\t\tonFetching,\n\t\tonSuccess,\n\t\tonError,\n\t\tonSettled,\n\t}: {\n\t\tonFetching?: () => void;\n\t\tonSuccess?: (data: object) => void;\n\t\tonError?: (error: string) => void;\n\t\tonSettled?: () => void;\n\t\tconfig?: { params: AuthRequestParams };\n\t},\n) => {\n\treturn handler(put(getUrl(\"accounting\", \"v1\", \"invoice\"), data, config), {\n\t\tonFetching: () => onFetching?.(),\n\t\tonError: (error) => onError?.(error),\n\t\tonSuccess: (data) => onSuccess?.(data),\n\t\tonSettled: () => onSettled?.(),\n\t});\n};\n\nexport default updateInvoice;\n","import { get } from \"../config/axios\";\nimport { getUrl } from \"../config/route\";\nimport createInvoice from \"./createInvoice\";\nimport submitInvoice from \"./submitInvoice\";\nimport updateInvoice from \"./updateInvoice\";\n\nconst Accounting = {\n\titem: (slug: string) =>\n\t\tget(getUrl(\"accounting\", \"v1\", \"item\"), {\n\t\t\tparams: {\n\t\t\t\tslug,\n\t\t\t},\n\t\t}),\n\titems: (config?: object | undefined) =>\n\t\tget(getUrl(\"accounting\", \"v1\", \"items\"), config),\n\tcreateInvoice,\n\tupdateInvoice,\n\tinvoices: (config?: object | undefined) =>\n\t\tget(getUrl(\"accounting\", \"v1\", \"invoices\"), config),\n\tsubmitInvoice,\n\titemCategories: () => get(getUrl(\"accounting\", \"v1\", \"item_categories\")),\n\titemBrands: () => get(getUrl(\"accounting\", \"v1\", \"item_brands\")),\n};\n\n\nexport type { Invoice, SubmitInvoice, PaymentInfo, Tax, Item } from \"./types\";\nexport default Accounting;\n","import { post } from \"../config/axios\";\r\nimport handler from \"../config/handler\";\r\nimport { getUrl } from \"../config/route\";\r\n\r\nconst feedback = (\r\n\tdata: unknown,\r\n\t{\r\n\t\tconfig,\r\n\t\tonFetching,\r\n\t\tonSuccess,\r\n\t\tonError,\r\n\t\tonSettled,\r\n\t}: {\r\n\t\tonFetching?: () => void;\r\n\t\tonSuccess?: (data: object) => void;\r\n\t\tonError?: (error: string) => void;\r\n\t\tonSettled?: () => void;\r\n\t\tconfig?: { params: unknown };\r\n\t},\r\n) => {\r\n\treturn handler(post(getUrl(\"support\", \"v1\", \"feedback\"), data, config), {\r\n\t\tonFetching: () => onFetching?.(),\r\n\t\tonError: (error) => onError?.(error),\r\n\t\tonSuccess: (data) => onSuccess?.(data),\r\n\t\tonSettled: () => onSettled?.(),\r\n\t});\r\n};\r\n\r\nexport default feedback;\r\n","import { post } from \"../config/axios\";\nimport handler from \"../config/handler\";\nimport { getUrl } from \"../config/route\";\n\nconst newsletter = (\n\tdata: unknown,\n\t{\n\t\tconfig,\n\t\tonFetching,\n\t\tonSuccess,\n\t\tonError,\n\t\tonSettled,\n\t}: {\n\t\tonFetching?: () => void;\n\t\tonSuccess?: (data: object) => void;\n\t\tonError?: (error: string) => void;\n\t\tonSettled?: () => void;\n\t\tconfig?: { params: unknown };\n\t},\n) => {\n\treturn handler(post(getUrl(\"support\", \"v1\", \"newsletter\"), data, config), {\n\t\tonFetching: () => onFetching?.(),\n\t\tonError: (error) => onError?.(error),\n\t\tonSuccess: (data) => onSuccess?.(data),\n\t\tonSettled: () => onSettled?.(),\n\t});\n};\n\nexport default newsletter;\n","import { post } from \"../config/axios\";\nimport handler from \"../config/handler\";\nimport { getUrl } from \"../config/route\";\n\nconst ticket = (\n\tdata: unknown,\n\t{\n\t\tconfig,\n\t\tonFetching,\n\t\tonSuccess,\n\t\tonError,\n\t\tonSettled,\n\t}: {\n\t\tonFetching?: () => void;\n\t\tonSuccess?: (data: object) => void;\n\t\tonError?: (error: string) => void;\n\t\tonSettled?: () => void;\n\t\tconfig?: { params: unknown };\n\t},\n) => {\n\treturn handler(post(getUrl(\"support\", \"v1\", \"ticket\"), data, config), {\n\t\tonFetching: () => onFetching?.(),\n\t\tonError: (error) => onError?.(error),\n\t\tonSuccess: (data) => onSuccess?.(data),\n\t\tonSettled: () => onSettled?.(),\n\t});\n};\n\nexport default ticket;\n","import { get } from \"../config/axios\";\nimport { getUrl } from \"../config/route\";\nimport feedback from \"./feedback\";\nimport newsletter from \"./newsletter\";\nimport ticket from \"./ticket\";\n\nconst Support = {\n\tticket,\n\tnewsletter,\n\ttickets: (config?: object | undefined) =>\n\t\tget(getUrl(\"support\", \"v1\", \"tickets\"), config),\n\tfeedback\n};\n\nexport default Support;\n\n\n","import { getConfig } from \"../config/index\";\nimport { getUrl } from \"../config/route\";\n\nconst Assets = {\n\timages: {\n\t\timagePlaceholder: getConfig().apiUrl + getUrl(\"assets\", \"v1\", \"imagePlaceholder\"),\n\t\tavatar: getConfig().apiUrl + getUrl(\"assets\", \"v1\", \"avatar\"),\n\t},\n};\n\nexport default Assets;\n","import type { AuthRequestParams } from \"../auth/types\";\nimport { put } from \"../config/axios\";\nimport handler from \"../config/handler\";\nimport { getUrl } from \"../config/route\";\nimport type { Profile } from \"./types\";\n\nconst updateProfile = (\n\tdata: Profile,\n\t{\n\t\tconfig,\n\t\tonFetching,\n\t\tonSuccess,\n\t\tonError,\n\t\tonSettled\n\t}: {\n\t\tonFetching?: () => void;\n\t\tonSuccess?: (data: object) => void;\n\t\tonError?: (error: string) => void;\n\t\tonSettled?: () => void;\n\t\tconfig?: { params: AuthRequestParams };\n\t},\n) => {\n\treturn handler(put(getUrl(\"account\", \"v1\", \"profile\"), data, config), {\n\t\tonFetching: () => onFetching?.(),\n\t\tonError: (error) => onError?.(error),\n\t\tonSuccess: (data) => onSuccess?.(data),\n\t\tonSettled: () => onSettled?.(),\n\t});\n};\n\nexport default updateProfile;\n","import { get } from \"../config/axios\";\nimport { getUrl } from \"../config/route\";\nimport updateProfile from \"./update_profile\";\n\nconst Account = {\n\tprofile: (id: string) =>\n\t\tget(getUrl(\"account\", \"v1\", \"profile\"), {\n\t\t\tparams: {\n\t\t\t\tid,\n\t\t\t},\n\t\t}),\n\tupdateProfile,\n};\n\n\nexport type { Profile } from \"./types\";\nexport default Account;\n","export default function shareUrl(title: string, url: string) {\n\t// URL encoding to ensure special characters are handled properly\n\tconst encodedTitle = encodeURIComponent(title);\n\tconst encodedUrl = encodeURIComponent(url);\n\tconst target = \"_blank\";\n\tconst dimension = \"width=600,height=400\";\n\t// Social media share URLs\n\tconst shareLinks = {\n\t\tfacebook: `https://www.facebook.com/sharer/sharer.php?u=${encodedUrl}`,\n\t\ttwitter: `https://twitter.com/intent/tweet?text=${encodedTitle}&url=${encodedUrl}`,\n\t\tlinkedin: `https://www.linkedin.com/sharing/share-offsite/?url=${encodedUrl}`,\n\t\twhatsapp: `https://api.whatsapp.com/send?text=${encodedTitle} ${encodedUrl}`,\n\t\tpinterest: `https://www.pinterest.com/pin/create/button/?url=${encodedUrl}&description=${encodedTitle}`,\n\t};\n\n\treturn {\n\t\tfacebook: () => window.open(shareLinks.facebook, target, dimension),\n\t\ttwitter: () => window.open(shareLinks.twitter, target, dimension),\n\t\tlinkedin: () => window.open(shareLinks.linkedin, target, dimension),\n\t\twhatsapp: () => window.open(shareLinks.whatsapp, target, dimension),\n\t\tpinterest: () => window.open(shareLinks.pinterest, target, dimension),\n\t};\n}\n","import type { AxiosRequestConfig } from \"axios\";\r\nimport { post } from \"../config/axios\";\r\nimport { getUrl } from \"../config/route\";\r\nimport handler from \"../utils/handler\";\r\nimport type { Lead } from \"./types\";\r\n\r\ninterface StartOptions {\r\n\tconfig?: AxiosRequestConfig | null;\r\n\tonLoading?: (isLoading: boolean) => void;\r\n\tonSuccess?: (data: any) => void;\r\n\tonError?: (error: any) => void;\r\n\tonSettled?: () => void;\r\n}\r\n\r\nexport function addLead(\r\n\tdata: Lead,\r\n\t{\r\n\t\tconfig = null,\r\n\t\tonLoading = () => { },\r\n\t\tonSuccess = () => { },\r\n\t\tonError = () => { },\r\n\t\tonSettled = () => { },\r\n\t}: StartOptions = {},\r\n) {\r\n\treturn handler({\r\n\t\tpromise: post(\r\n\t\t\tgetUrl(\"sales\", \"v1\", \"addLead\"),\r\n\t\t\t{\r\n\t\t\t\t...data\r\n\t\t\t},\r\n\t\t\tconfig || undefined,\r\n\t\t),\r\n\t\tonLoading,\r\n\t\tonError: (error) => onError(error),\r\n\t\tonSuccess: (responseData: any) => {\r\n\t\t\tonSuccess(responseData);\r\n\t\t},\r\n\t\tonSettled,\r\n\t});\r\n}\r\n","import { addLead } from \"./lead\";\r\nimport { Lead, LeadSource, LeadStatus } from \"./types\";\r\n\r\nconst Sales = {\r\n\taddLead,\r\n};\r\n\r\nexport type { \r\n\tLeadSource,\r\n\tLeadStatus,\r\n\tLead\r\n}\r\n\r\nexport default Sales;","import { get } from \"../config/axios\";\nimport { getUrl } from \"../config/route\";\n\nconst Inventory = {\n\tgetStoreById: (id: string) =>\n\t\tget(getUrl(\"inventory\", \"v1\", \"store\"), {\n\t\t\tparams: {\n\t\t\t\tid,\n\t\t\t},\n\t\t}),\n\tgetStoreBySlug: (slug: string) =>\n\t\tget(getUrl(\"inventory\", \"v1\", \"store\"), {\n\t\t\tparams: {\n\t\t\t\tslug,\n\t\t\t},\n\t\t}),\n\tgetStoreProducts: (\n\t\tslug: string,\n\t\tcategory: string,\n\t\tbrand: string,\n\t\tprice: string,\n\t\tsearch: string,\n\t) =>\n\t\tget(getUrl(\"inventory\", \"v1\", \"store_products\"), {\n\t\t\tparams: {\n\t\t\t\tslug,\n\t\t\t\tcategory,\n\t\t\t\tbrand,\n\t\t\t\tprice,\n\t\t\t\tsearch,\n\t\t\t},\n\t\t}),\n};\n\nexport default Inventory;\n","import { get, post } from \"../config/axios\";\nimport handler from \"../config/handler\";\nimport { getUrl } from \"../config/route\";\n\nconst exchangeRates = (\n\tdata: unknown,\n\t{\n\t\tconfig,\n\t\tonFetching,\n\t\tonSuccess,\n\t\tonError,\n\t\tonSettled,\n\t}: {\n\t\tonFetching?: () => void;\n\t\tonSuccess?: (data: object) => void;\n\t\tonError?: (error: string) => void;\n\t\tonSettled?: () => void;\n\t\tconfig?: {\n\t\t\tparams: {\n\t\t\t\tfrom?: string;\n\t\t\t\tto?: string;\n\t\t\t};\n\t\t};\n\t},\n) => {\n\treturn handler(get(getUrl(\"tools\", \"v1\", \"exchangeRates\"), config), {\n\t\tonFetching: () => onFetching?.(),\n\t\tonError: (error) => onError?.(error),\n\t\tonSuccess: (data) => onSuccess?.(data),\n\t\tonSettled: () => onSettled?.(),\n\t});\n};\n\nexport default exchangeRates;\n\n// export async function convertCurrency(amount: number, fromCurrency?: string, toCurrency?: string) {\n// try {\n// const rates = await getExchangeRates(fromCurrency);\n// if (!rates[toCurrency]) {\n// throw new Error(`Currency ${toCurrency} is not available.`);\n// }\n// const convertedAmount = (amount * rates[toCurrency]).toFixed(2);\n// return convertedAmount;\n// } catch (error) {\n// console.error('Error converting currency:', error);\n// throw error;\n// }\n// }\n","import exchangeRates from \"./exchangeRates\";\n\nconst Tools = {\n\texchangeRates,\n};\n\nexport default Tools;\n","import type { AuthRequestParams } from \"../auth/types\";\r\nimport { linkiePost } from \"../config/axios\";\r\nimport handler from \"../config/handler\";\r\nimport { getUrl } from \"../config/route\";\r\nimport type { ShortenRequest } from \"./types\";\r\n\r\nconst shortUrl = (\r\n\tdata: ShortenRequest,\r\n\t{\r\n\t\tconfig,\r\n\t\tonFetching,\r\n\t\tonSuccess,\r\n\t\tonError,\r\n\t\tonSettled,\r\n\t}: {\r\n\t\tonFetching?: () => void;\r\n\t\tonSuccess?: (data: object) => void;\r\n\t\tonError?: (error: string) => void;\r\n\t\tonSettled?: () => void;\r\n\t\tconfig?: { params: AuthRequestParams };\r\n\t},\r\n) => {\r\n\treturn handler(linkiePost(getUrl(\"linkie\", \"v1\", \"shorten\", true), data, config), {\r\n\t\tonFetching: () => onFetching?.(),\r\n\t\tonError: (error) => onError?.(error),\r\n\t\tonSuccess: (data) => onSuccess?.(data),\r\n\t\tonSettled: () => onSettled?.(),\r\n\t});\r\n};\r\n\r\nexport default shortUrl;","// import cookie from \"js-cookie\";\n// import { jwtDecode } from \"jwt-decode\";\n// import type { NextPageContext } from \"next\";\n// import { getConfig } from \"../config/index\";\n// import { isAuth } from \"../utils/auth\";\n// import {\n// \tgetDataFromStorage,\n// \tsetDataInStorage,\n// \tsetEncryptionKey,\n// } from \"../utils/localStorage\";\nimport shortUrl from \"./shortUrl\";\n\nconst Linkie = {\n\tshortUrl\n};\n\nexport default Linkie;\n","import type { AuthRequestParams } from \"../auth/types\";\r\nimport { get } from \"../config/axios\";\r\nimport handler from \"../config/handler\";\r\nimport { getConfig } from \"../config\";\r\n\r\nconst getCities = (\r\n\t{\r\n\t\tconfig,\r\n\t\tonFetching,\r\n\t\tonSuccess,\r\n\t\tonError,\r\n\t\tonSettled\r\n\t}: {\r\n\t\tonFetching?: () => void;\r\n\t\tonSuccess?: (data: object) => void;\r\n\t\tonError?: (error: string) => void;\r\n\t\tonSettled?: () => void;\r\n\t\tconfig?: { params: AuthRequestParams };\r\n\t},\r\n) => {\r\n\treturn handler(get(`${getConfig().apisUrl}/api/countries/v1/city`, config), {\r\n\t\tonFetching: () => onFetching?.(),\r\n\t\tonError: (error) => onError?.(error),\r\n\t\tonSuccess: (data) => onSuccess?.(data),\r\n\t\tonSettled: () => onSettled?.(),\r\n\t});\r\n};\r\n\r\nexport default getCities;\r\n","import type { AuthRequestParams } from \"../auth/types\";\r\nimport { get } from \"../config/axios\";\r\nimport handler from \"../config/handler\";\r\nimport { getConfig } from \"../config\";\r\n\r\nconst getCountries = (\r\n\t{\r\n\t\tconfig,\r\n\t\tonFetching,\r\n\t\tonSuccess,\r\n\t\tonError,\r\n\t\tonSettled\r\n\t}: {\r\n\t\tonFetching?: () => void;\r\n\t\tonSuccess?: (data: object) => void;\r\n\t\tonError?: (error: string) => void;\r\n\t\tonSettled?: () => void;\r\n\t\tconfig?: { params: AuthRequestParams };\r\n\t},\r\n) => {\r\n\treturn handler(get(`${getConfig().apisUrl}/api/countries/v1`, config), {\r\n\t\tonFetching: () => onFetching?.(),\r\n\t\tonError: (error) => onError?.(error),\r\n\t\tonSuccess: (data) => onSuccess?.(data),\r\n\t\tonSettled: () => onSettled?.(),\r\n\t});\r\n};\r\n\r\nexport default getCountries;\r\n","import type { AuthRequestParams } from \"../auth/types\";\r\nimport { get } from \"../config/axios\";\r\nimport handler from \"../config/handler\";\r\nimport { getConfig } from \"../config/index\";\r\n\r\nconst getStates = (\r\n\t{\r\n\t\tconfig,\r\n\t\tonFetching,\r\n\t\tonSuccess,\r\n\t\tonError,\r\n\t\tonSettled\r\n\t}: {\r\n\t\tonFetching?: () => void;\r\n\t\tonSuccess?: (data: object) => void;\r\n\t\tonError?: (error: string) => void;\r\n\t\tonSettled?: () => void;\r\n\t\tconfig?: { params: AuthRequestParams };\r\n\t},\r\n) => {\r\n\treturn handler(get(`${getConfig().apisUrl}/api/countries/v1/state`, config), {\r\n\t\tonFetching: () => onFetching?.(),\r\n\t\tonError: (error) => onError?.(error),\r\n\t\tonSuccess: (data) => onSuccess?.(data),\r\n\t\tonSettled: () => onSettled?.(),\r\n\t});\r\n};\r\n\r\nexport default getStates;\r\n","import getCities from \"./cities\";\r\nimport getCountries from \"./countries\";\r\nimport getStates from \"./states\";\r\n\r\nconst Apis = {\r\n getCountries,\r\n getStates,\r\n getCities\r\n};\r\n\r\nexport default Apis;\r\n"],"names":["handler","signIn","signUp","cookie"],"mappings":";;;;;;;AAAA;AAKA,SAAS,cAAc,CAAC,YAA8B,EAAA;AACpD,IAAA,MAAM,MAAM,GAAG,SAAS,EAAE;IAE1B,MAAM,WAAW,GAAG,YAAY,CAAC,MAAM,CAAC,CAAC,GAAG,KAAI;AAC9C,QAAA,OAAO,CAAC,MAAM,CAAC,GAAG,CAAC,CAAC;AACtB,IAAA,CAAC,CAAC;AAEF,IAAA,IAAI,WAAW,CAAC,MAAM,GAAG,CAAC,EAAE;QAC1B,MAAM,IAAI,KAAK,CACb,CAAA,2DAAA,EAA8D,WAAW,CAAC,IAAI,CAAC,IAAI,CAAC,CAAA,EAAA,CAAI;AACxF,YAAA,sFAAsF,CACvF;IACH;AACF;;ACOA,IAAI,MAAM,GAAW;AACnB,IAAA,QAAQ,EAAE,EAAE;AACZ,IAAA,MAAM,EAAE,IAAI;AACZ,IAAA,MAAM,EAAE,0BAA0B;AAClC,IAAA,MAAM,EAAE,EAAE;AACV,IAAA,OAAO,EAAE,2BAA2B;AACpC,IAAA,WAAW,EAAE,YAAY;AACzB,IAAA,QAAQ,EAAE;CACX;AAEK,SAAU,aAAa,CAAC,SAA0B,EAAA;IACtD,MAAM,GAAG,EAAE,GAAG,MAAM,EAAE,GAAG,SAAS,EAAE;AACpC,IAAA,cAAc,CAAC,CAAC,QAAQ,EAAE,UAAU,CAAC,CAAC;AACxC;SAEgB,WAAW,GAAA;AACzB,IAAA,cAAc,CAAC,CAAC,UAAU,CAAC,CAAC;AAC5B,IAAA,MAAM,SAAS,GAAG,SAAS,EAAE;AAC7B,IAAA,IAAI,SAAS,CAAC,QAAQ,EAAE;;;;QAItB,OAAO,QAAQ,CAAC,aAAa,CAAC,SAAS,CAAC,QAAQ,CAAC;IACnD;AACA,IAAA,MAAM,IAAI,KAAK,CACb,CAAA,4DAAA,CAA8D,CAC/D;AACH;SAEgB,SAAS,GAAA;AACvB,IAAA,OAAO,MAAM;AACf;;ACnDO,MAAM,SAAS,GAAG,CACxB,GAAG,GAAG,SAAS,EAAE,CAAC,QAAQ,KACH;;AAEvB,IAAA,IAAI,GAAG;AAAE,QAAA,OAAO,OAAO,CAAC,GAAG,CAAC,GAAG,CAAC;AAChC,IAAA,OAAO,EAAE;AACV;AAEO,MAAM,MAAM,GAAG,MAAM,CAAC,CAAC,SAAS,EAAE;AAEzC;AACA;AACA;AACA;;AChBA;;;;AAIG;AACG,SAAU,gBAAgB,CAAC,GAAW,EAAE,KAAa,EAAA;AAC1D,IAAA,IAAW,KAAK,EAAE;QACjB,MAAM,SAAS,GAAG,QAAQ,CAAC,MAAM,CAAC,GAAG,CAAC,CAAC,QAAQ,EAAE;;QAEjD,MAAM,UAAU,GAAG,QAAQ,CAAC,MAAM,CAAC,KAAK,CAAC,CAAC,QAAQ,EAAE;AAEpD,QAAA,YAAY,CAAC,OAAO,CAAC,SAAS,EAAE,IAAI,CAAC,SAAS,CAAC,UAAU,CAAC,CAAC;IAC5D;SAAO;AACN,QAAA,OAAO,CAAC,KAAK,CAAC,kBAAkB,CAAC;IAClC;AACD;AAEA;;;;AAIG;AACH;AACM,SAAU,gBAAgB,CAAC,GAAW,EAAA;AAC3C,IAAA,IAAI;QACH,MAAM,MAAM,GAAG,QAAQ,CAAC,MAAM,CAAC,GAAG,CAAC,CAAC,QAAQ,EAAE;;AAE9C,QAAA,OAAO,YAAY,CAAC,OAAO,CAAC,MAAM,CAAC;IACpC;IAAE,OAAO,GAAG,EAAE;AACb,QAAA,OAAO,CAAC,KAAK,CAAC,+BAA+B,CAAC;IAC/C;AACD;AAMA;;;;;;AAMG;AACG,SAAU,gBAAgB,CAAC,GAAW,EAAE,IAAqB,EAAA;;IAElE,MAAM,MAAM,GAAG,QAAQ,CAAC,MAAM,CAAC,GAAG,CAAC,CAAC,QAAQ,EAAE;IAE9C,MAAM,UAAU,GAAG,aAAa;AAEhC,IAAA,MAAM,aAAa,GAAG,gBAAgB,CAAC,UAAU,CAAC;;IAIlD,IAAI,aAAa,EAAE;;QAElB,MAAM,UAAU,GAAG,QAAQ,CAAC,GAAG,CAAC,OAAO,CACtC,IAAI,CAAC,SAAS,CAAC,IAAI,CAAC,EACpB,aAAa,CACb,CAAC,QAAQ,EAAE;AAEZ,QAAA,YAAY,CAAC,OAAO,CAAC,MAAM,EAAE,IAAI,CAAC,SAAS,CAAC,UAAU,CAAC,CAAC;IACzD;AACD;AAEA;;;;;;AAMG;AACH;AACM,SAAU,kBAAkB,CAAC,GAAW,EAAA;AAC7C,IAAA,IAAI;QACH,MAAM,MAAM,GAAG,QAAQ,CAAC,MAAM,CAAC,GAAG,CAAC,CAAC,QAAQ,EAAE;QAE9C,MAAM,UAAU,GAAG,aAAa;AAEhC,QAAA,MAAM,aAAa,GAAG,gBAAgB,CAAC,UAAU,CAAC;;;;;;;;AASlD,QAAA,IAAI,aAAa,IAAI,MAAM,EAAE;AAC5B,YAAA,MAAM,UAAU,GAAG,IAAI,CAAC,KAAK,CAAC,MAAM,CAAC,YAAY,CAAC,OAAO,CAAC,MAAM,CAAC,CAAC,CAAC;YACnE,IAAI,UAAU,EAAE;;AAEf,gBAAA,MAAM,KAAK,GAAG,QAAQ,CAAC,GAAG,CAAC,OAAO,CAAC,UAAU,EAAE,aAAa,CAAC;AAC7D,gBAAA,MAAM,YAAY,GAAG,KAAK,CAAC,QAAQ,CAAC,QAAQ,CAAC,GAAG,CAAC,IAAI,CAAC;;AAEtD,gBAAA,OAAO,IAAI,CAAC,KAAK,CAAC,YAAY,CAAC;YAChC;QACD;IACD;IAAE,OAAO,GAAG,EAAE;;IAEd;AACD;AAEA;;;AAGG;AACH;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACM,SAAU,YAAY,CAAC,IAAc,EAAA;AAC1C,IAAA,IAAI;AACH,QAAA,IAAI,KAAK,CAAC,OAAO,CAAC,IAAI,CAAC,EAAE;AACxB,YAAA,KAAK,MAAM,GAAG,IAAI,IAAI,EAAE;gBACvB,MAAM,MAAM,GAAG,QAAQ,CAAC,MAAM,CAAC,GAAG,CAAC,CAAC,QAAQ,EAAE;AAC9C,gBAAA,YAAY,CAAC,UAAU,CAAC,MAAM,CAAC;YAChC;QACD;AAAO,aAAA,IAAI,OAAO,IAAI,KAAK,QAAQ,EAAE;YACpC,MAAM,MAAM,GAAG,QAAQ,CAAC,MAAM,CAAC,IAAI,CAAC,CAAC,QAAQ,EAAE;AAC/C,YAAA,YAAY,CAAC,UAAU,CAAC,MAAM,CAAC;QAChC;IACD;IAAE,OAAO,GAAG,EAAE;AACb,QAAA,OAAO,CAAC,KAAK,CAAC,wBAAwB,EAAE,GAAG,CAAC;IAC7C;AACD;;ACzIO,MAAM,SAAS,GAAG,cAAc;AAUvC;;ACKO,MAAM,IAAI,GAAG,KAAK,CAAC,MAAM,CAAC;AAChC,IAAA,eAAe,EAAE,IAAI;AACrB,IAAA,OAAO,EAAE;AACR,QAAA,6BAA6B,EAAE,GAAG;AAClC,QAAA,cAAc,EAAE,kBAAkB;AAClC,KAAA;AACD,CAAA,CAAC;AAEF,IAAI,CAAC,YAAY,CAAC,OAAO,CAAC,GAAG,CAAC,CAAC,MAAM,KAAI;AACxC,IAAA,cAAc,CAAC,CAAC,QAAQ,EAAE,QAAQ,CAAC,CAAC;AACpC,IAAA,MAAM,EAAE,MAAM,EAAE,GAAG,SAAS,EAAE;AAC9B,IAAA,MAAM,CAAC,OAAO,GAAG,MAAM;AACvB,IAAA,IAAI,MAAM,CAAC,OAAO,EAAE;AACnB,QAAA,MAAM,CAAC,OAAO,CAAC,cAAc,CAAC,GAAG,kBAAkB;QACnD,MAAM,CAAC,OAAO,CAAC,aAAa,GAAG,CAAA,OAAA,EAAU,SAAS,EAAE,CAAA,CAAE,IAAI,EAAE;AAC5D,QAAA,MAAM,CAAC,OAAO,CAAC,YAAY,CAAC;AAC3B,YAAA,CAAA,OAAA,EAAU,SAAS,EAAE,CAAC,MAAM,CAAA,CAAE,IAAI,EAAE;IACtC;AACA,IAAA,OAAO,MAAM;AACd,CAAC,EAAE,OAAO,CAAC,MAAM,CAAC;AAEX,MAAM,IAAI,GAAG,CACnB,QAAgB,EAChB,IAAc,EACd,MAAoC,KAEpC,IAAI,OAAO,CAAC,CAAC,OAAO,EAAE,MAAM,KAC3B;AACE,KAAA,IAAI,CAAC,QAAQ,EAAE,IAAI,EAAE,MAAM;KAC3B,IAAI,CAAC,OAAO;AACZ,KAAA,KAAK,CAAC,CAAC,CAAC,KAAK,MAAM,CAAC,CAAC,CAAC,QAAQ,EAAE,IAAI,CAAC,CAAC,CACxC;AAEK,MAAM,GAAG,GAAG,CAClB,QAAgB,EAChB,IAAc,EACd,MAAoC,KAEpC,IAAI,OAAO,CAAC,CAAC,OAAO,EAAE,MAAM,KAC3B;AACE,KAAA,GAAG,CAAC,QAAQ,EAAE,IAAI,EAAE,MAAM;KAC1B,IAAI,CAAC,OAAO;AACZ,KAAA,KAAK,CAAC,CAAC,CAAC,KAAK,MAAM,CAAC,CAAC,CAAC,QAAQ,EAAE,IAAI,CAAC,CAAC,CACxC;AAEK,MAAM,GAAG,GAAG,CAClB,QAAgB,EAChB,MAAoC,KACT;;IAE3B,OAAO,IAAI,OAAO,CAAC,CAAC,OAAO,EAAE,MAAM,KAClC;AACE,SAAA,GAAG,CAAC,QAAQ,EAAE,MAAM;SACpB,IAAI,CAAC,OAAO;AACZ,SAAA,KAAK,CAAC,CAAC,CAAC,KAAK,MAAM,CAAC,CAAC,CAAC,QAAQ,EAAE,IAAI,CAAC,CAAC,CACxC;AACF,CAAC;AAwBD;AACA;AACA;AAEO,MAAM,KAAK,GAAG,KAAK,CAAC,MAAM,CAAC;AACjC,IAAA,eAAe,EAAE,IAAI;AACrB,IAAA,OAAO,EAAE;AACR,QAAA,6BAA6B,EAAE,GAAG;AAClC,QAAA,cAAc,EAAE,kBAAkB;AAClC,KAAA;AACD,CAAA,CAAC;AAEF,KAAK,CAAC,YAAY,CAAC,OAAO,CAAC,GAAG,CAAC,CAAC,MAAM,KAAI;IACzC,cAAc,CAAC,CAAC,QAAQ,EAAE,UAAU,EAAE,WAAW,CAAC,CAAC;AACnD,IAAA,MAAM,EAAE,SAAS,EAAE,GAAG,SAAS,EAAE;AACjC,IAAA,MAAM,CAAC,OAAO,GAAG,SAAS;AAC1B,IAAA,IAAI,MAAM,CAAC,OAAO,EAAE;AACnB,QAAA,MAAM,CAAC,OAAO,CAAC,cAAc,CAAC,GAAG,kBAAkB;AACnD,QAAA,MAAM,CAAC,OAAO,CAAC,aAAa,GAAG,YAAY,CAAC,OAAO,CAAC,SAAS,CAAC,IAAI,EAAE;AACpE,QAAA,MAAM,CAAC,OAAO,CAAC,YAAY,CAAC;AAC3B,YAAA,CAAA,OAAA,EAAU,SAAS,EAAE,CAAC,MAAM,CAAA,CAAE,IAAI,EAAE;IACtC;AACA,IAAA,OAAO,MAAM;AACd,CAAC,EAAE,OAAO,CAAC,MAAM,CAAC;AAElB;AACA;AACA;AACA;AACA;AACA;AAEA;AAEA;AACA;AACA;AAEA;AAEA;AACA;AAEA;AACA;AACA;AAEA;AACA;AACA;AAEA;AACA;AAEA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AAEA;AACA;AACA;AAEO,MAAM,UAAU,GAAG,CACzB,QAAgB,EAChB,IAAc,EACd,MAAoC,KAEpC,IAAI,OAAO,CAAC,CAAC,OAAO,EAAE,MAAM,KAC3B;AACE,KAAA,IAAI,CAAC,QAAQ,EAAE,IAAI,EAAE,MAAM;KAC3B,IAAI,CAAC,OAAO;AACZ,KAAA,KAAK,CAAC,CAAC,CAAC,KAAK,MAAM,CAAC,CAAC,CAAC,QAAQ,EAAE,IAAI,CAAC,CAAC,CACxC;;AC/JF;AACA,eAAeA,SAAO,CAAC,OAA+B,EAAE,SAAqB,EAAA;;AAE5E,IAAA,MAAM,EAAE,UAAU,EAAE,SAAS,EAAE,OAAO,EAAE,SAAS,EAAE,GAAG,SAAS,IAAI,EAAE;;AAGrE,IAAA,IAAI,UAAU;AAAE,QAAA,UAAU,EAAE;;IAG5B;AACE,SAAA,IAAI,CACJ,CAAC,QAIA,KAAI;;AAEJ,QAAA,IAAI,SAAS;AACZ,YAAA,SAAS,CAAC;gBACT,IAAI,EAAE,QAAQ,CAAC,IAAI;gBACnB,MAAM,EAAE,QAAQ,CAAC,MAAM;gBACvB,UAAU,EAAE,QAAQ,CAAC,UAAU;AAC/B,aAAA,CAAC;AACJ,IAAA,CAAC;AAED,SAAA,KAAK,CAAC,CAAC,KAAK,KAAI;;AAEhB,QAAA,IAAI,OAAO;YAAE,OAAO,CAAC,KAAK,CAAC;AAC5B,IAAA,CAAC;SACA,OAAO,CAAC,MAAK;;AAEb,QAAA,IAAI,SAAS;AAAE,YAAA,SAAS,EAAE;AAC3B,IAAA,CAAC,CAAC;AACJ;;AC/CA,MAAM,OAAO,GAAG;AACf,IAAA,EAAE,EAAE;AACH,QAAA,OAAO,EAAE,SAAS;AAClB,KAAA;CACD;;ACJD,MAAM,UAAU,GAAG;AAClB,IAAA,EAAE,EAAE;AACH,QAAA,IAAI,EAAE,MAAM;AACZ,QAAA,KAAK,EAAE,OAAO;AACd,QAAA,OAAO,EAAE,SAAS;AAClB,QAAA,cAAc,EAAE,gBAAgB;AAChC,QAAA,QAAQ,EAAE,UAAU;AACpB,QAAA,eAAe,EAAE,eAAe;AAChC,QAAA,WAAW,EAAE,YAAY;AACzB,KAAA;CACD;;ACVD,MAAM,MAAM,GAAG;AACd,IAAA,EAAE,EAAE;AACH,QAAA,gBAAgB,EAAE,+BAA+B;AACjD,QAAA,MAAM,EAAE,oBAAoB;AAC5B,KAAA;CACD;;ACLD,MAAM,IAAI,GAAG;AACZ,IAAA,EAAE,EAAE;AACH,QAAA,MAAM,EAAE,QAAQ;AAChB,QAAA,QAAQ,EAAE,QAAQ;AAClB,QAAA,MAAM,EAAE,UAAU;AAClB,QAAA,MAAM,EAAE,QAAQ;AAChB,QAAA,eAAe,EAAE,cAAc;AAC/B,QAAA,aAAa,EAAE,QAAQ;AACvB,QAAA,cAAc,EAAE,mBAAmB;AACnC,QAAA,eAAe,EAAE;AACjB,KAAA;CACD;;ACXD,MAAM,GAAG,GAAG;AACX,IAAA,EAAE,EAAE;AACH,QAAA,OAAO,EAAE,SAAS;AAClB,QAAA,QAAQ,EAAE,UAAU;AACpB,QAAA,iBAAiB,EAAE,oBAAoB;AACvC,QAAA,GAAG,EAAE,KAAK;AACV,QAAA,IAAI,EAAE,MAAM;AACZ,QAAA,QAAQ,EAAE,UAAU;AACpB,QAAA,aAAa,EAAE,gBAAgB;AAC/B,QAAA,GAAG,EAAE,KAAK;AACV,QAAA,IAAI,EAAE,MAAM;AACZ,QAAA,aAAa,EAAE,gBAAgB;AAC/B,KAAA;CACD;;ACbD,MAAM,SAAS,GAAG;AACjB,IAAA,EAAE,EAAE;AACH,QAAA,KAAK,EAAE,OAAO;AACd,QAAA,cAAc,EAAE,gBAAgB;AAChC,KAAA;CACD;;ACLD,MAAM,MAAM,GAAG;AACd,IAAA,EAAE,EAAE;AACH,QAAA,OAAO,EAAE,SAAS;AAClB,KAAA;CACD;;ACJD,MAAM,OAAO,GAAG;AACf,IAAA,EAAE,EAAE;AACH,QAAA,MAAM,EAAE,EAAE;AACV,QAAA,MAAM,EAAE,QAAQ;AAChB,KAAA;CACD;;ACLD,MAAM,KAAK,GAAG;AACb,IAAA,EAAE,EAAE;AACH,QAAA,OAAO,EAAE;AACT,KAAA;CACD;;ACJD,MAAM,OAAO,GAAG;AACf,IAAA,EAAE,EAAE;AACH,QAAA,MAAM,EAAE,QAAQ;AAChB,QAAA,OAAO,EAAE,SAAS;AAClB,QAAA,UAAU,EAAE,YAAY;AACxB,QAAA,QAAQ,EAAE;AACV;CACD;;ACPD,MAAM,KAAK,GAAG;AACb,IAAA,EAAE,EAAE;AACH,QAAA,aAAa,EAAE,gBAAgB;AAC/B,KAAA;CACD;;ACkBD,MAAM,IAAI,GAAS;IAClB,IAAI;IACJ,GAAG;IACH,OAAO;IACP,UAAU;IACV,OAAO;IACP,MAAM;IACN,OAAO;IACP,SAAS;IACT,KAAK;IACL,KAAK;IACL;CACA;AAED;AACM,SAAU,MAAM,CACrB,QAAgB,EAChB,OAAe,EACf,MAAc,EACd,YAAA,GAAwB,KAAK,EAAA;IAE7B,MAAM,YAAY,GAAG,IAAI,CAAC,QAAQ,CAAC,CAAC;IACpC,IAAI,YAAY,EAAE;QACjB,MAAM,WAAW,GAAG,YAAY,CAAC,OAAO,CAAC,CAAC;;AAE1C,QAAA,IAAI,WAAW,KAAK,SAAS,EAAE;YAC9B,OAAO,CAAC,GAAG,CAAC,WAAW,CAAC,MAAM,CAAC,CAAC;YAChC,IAAI,YAAY,EAAE;gBACjB,OAAO,CAAA,KAAA,EAAQ,OAAO,CAAA,CAAA,EAAI,WAAW,CAAC,MAAM,CAAC,EAAE;YAChD;AACA,YAAA,OAAO,CAAA,KAAA,EAAQ,OAAO,CAAA,CAAA,EAAI,QAAQ,CAAA,CAAA,EAAI,WAAW,CAAC,MAAM,CAAC,CAAA,CAAE,CAAC;QAC7D;QACA,MAAM,IAAI,KAAK,CACd,CAAA,gBAAA,EAAmB,MAAM,CAAA,cAAA,EAAiB,OAAO,CAAA,cAAA,EAAiB,QAAQ,CAAA,CAAE,CAC5E;IACF;AACA,IAAA,MAAM,IAAI,KAAK,CAAC,qBAAqB,QAAQ,CAAA,CAAE,CAAC;AACjD;;ACtDA,MAAM,MAAM,GAAG,CACd,IAAwB,EACxB,EACC,MAAM,EACN,UAAU,EACV,SAAS,EACT,OAAO,EACP,SAAS,GAOT,KACE;IACH,OAAOA,SAAO,CACb,IAAI,CACH,MAAM,CAAC,MAAM,EAAE,IAAI,EAAE,QAAQ,CAAC,EAC9B,EAAE,GAAG,IAAI,EAAE,SAAS,EAAE,kBAAkB,CAAC,WAAW,CAAC,EAAE,EACvD,MAAM,CACN,EACD;AACC,QAAA,UAAU,EAAE,MAAM,UAAU,IAAI;QAChC,OAAO,EAAE,CAAC,KAAK,KAAK,OAAO,GAAG,KAAK,CAAC;AACpC,QAAA,SAAS,EAAE,CAAC,IAAI,KAAI;YACnB,YAAY,CAAC,CAAC,oBAAoB,EAAE,aAAa,EAAE,aAAa,CAAC,CAAC;AAClE,YAAA,SAAS,GAAG,IAAI,CAAC;AACjB,YAAA,MAAM,CAAC,QAAQ,CAAC,IAAI,GAAG,GAAG;QAC3B,CAAC;AACD,QAAA,SAAS,EAAE,MAAM,SAAS,IAAI;AAC9B,KAAA,CACD;AACF,CAAC;;ACjCD,MAAM,QAAQ,GAAG,CAChB,IAAmB,EACnB,EACC,MAAM,EACN,UAAU,EACV,SAAS,EACT,OAAO,EACP,SAAS,GAOT,KACE;AACH,IAAA,OAAOA,SAAO,CAAC,IAAI,CAAC,MAAM,CAAC,MAAM,EAAE,IAAI,EAAE,UAAU,CAAC,EAAE,IAAI,EAAE,MAAM,CAAC,EAAE;AACpE,QAAA,UAAU,EAAE,MAAM,UAAU,IAAI;QAChC,OAAO,EAAE,CAAC,KAAK,KAAK,OAAO,GAAG,KAAK,CAAC;QACpC,SAAS,EAAE,CAAC,IAAI,KAAK,SAAS,GAAG,IAAI,CAAC;AACtC,QAAA,SAAS,EAAE,MAAM,SAAS,IAAI;AAC9B,KAAA,CAAC;AACH,CAAC;;ACtBD,MAAM,MAAM,GAAG,CACd,IAAmB,EACnB,EACC,MAAM,EACN,UAAU,EACV,SAAS,EACT,OAAO,EACP,SAAS,GAOT,KACE;AACH,IAAA,OAAOA,SAAO,CAAC,IAAI,CAAC,MAAM,CAAC,MAAM,EAAE,IAAI,EAAE,QAAQ,CAAC,EAAE,IAAI,EAAE,MAAM,CAAC,EAAE;AAClE,QAAA,UAAU,EAAE,MAAM,UAAU,IAAI;QAChC,OAAO,EAAE,CAAC,KAAK,KAAK,OAAO,GAAG,KAAK,CAAC;QACpC,SAAS,EAAE,CAAC,IAAI,KAAK,SAAS,GAAG,IAAI,CAAC;AACtC,QAAA,SAAS,EAAE,MAAM,SAAS,IAAI;AAC9B,KAAA,CAAC;AACH,CAAC;;AC3BD;AAYA;AACA,eAAe,gBAAgB,CAAC,EAC/B,SAAS,EACT,OAAO,EACP,UAAU,EACV,SAAS,GACU,EAAA;AACnB,IAAA,IAAI;AACH,QAAA,MAAM,QAAQ,GAAG,IAAI,kBAAkB,EAAE;AACzC,QAAA,MAAM,IAAI,GAAG,OAAO,CAAC,WAAW,EAAE,CAAC;AACnC,QAAA,eAAe,CAAC,IAAI,EAAE,QAAQ;AAC5B,aAAA,IAAI,CAAC,CAAC,MAAM,KAAI;;YAEhB,MAAM,UAAU,GAAG,kBAAkB,CAAC,oBAAoB,CAAC,MAAM,CAAC;;;AAGlE,YAAA,MAAM,IAAI,GAAG,MAAM,CAAC,IAAI;;AAExB,YAAA,OAAO,MAAM,CACZ;AACC,gBAAA,QAAQ,EAAE,QAAQ;gBAClB,GAAG,EAAE,IAAI,CAAC,GAAG;AACb,gBAAA,IAAI,EAAE,MAAM,CAAC,IAAI,CAAC,WAAW,CAAC;AAC9B,gBAAA,KAAK,EAAE,MAAM,CAAC,IAAI,CAAC,KAAK,CAAC;AACzB,gBAAA,QAAQ,EAAE,MAAM,CAAC,IAAI,CAAC,KAAK,CAAC;AAC5B,gBAAA,QAAQ,EAAE,IAAI,CAAC,GAAG,CAAC,SAAS,CAAC,CAAC,EAAE,IAAI,CAAC,GAAG,CAAC,MAAM,GAAG,CAAC,CAAC;;gBAEpD,KAAK,EAAE,IAAI,IAAI,EAAE;aACjB,EACD;AACC,gBAAA,UAAU,EAAE,MAAM,UAAU,IAAI;gBAChC,OAAO,EAAE,CAAC,KAAK,KAAK,OAAO,GAAG,KAAK,CAAC;gBACpC,SAAS,EAAE,CAAC,IAAI,KAAK,SAAS,GAAG,IAAI,CAAC;AACtC,gBAAA,SAAS,EAAE,MAAM,SAAS,IAAI;AAC9B,aAAA,CACD;AACF,QAAA,CAAC;AACA,aAAA,KAAK,CAAC,CAAC,KAAK,KAAI;AAChB,YAAA,OAAO,GAAG,KAAK,CAAC;AAChB,YAAA,OAAO,OAAO,CAAC,MAAM,CAAC,sBAAsB,CAAC;;;;;;;;;AAS9C,QAAA,CAAC,CAAC;IACJ;IAAE,OAAO,GAAG,EAAE;AACb,QAAA,OAAO,GAAG,GAAG,CAAC;IACf;AACD;;AC3DA,MAAM,MAAM,GAAG,CACd,IAAiB,EACjB,EACC,MAAM,EACN,UAAU,EACV,SAAS,EACT,OAAO,EACP,SAAS,GAOT,KACE;AACH,IAAA,OAAOA,SAAO,CAAC,IAAI,CAAC,MAAM,CAAC,MAAM,EAAE,IAAI,EAAE,QAAQ,CAAC,EAAE,IAAI,EAAE,MAAM,CAAC,EAAE;AAClE,QAAA,UAAU,EAAE,MAAM,UAAU,IAAI;QAChC,OAAO,EAAE,CAAC,KAAK,KAAK,OAAO,GAAG,KAAK,CAAC;QACpC,SAAS,EAAE,CAAC,IAAI,KAAK,SAAS,GAAG,IAAI,CAAC;AACtC,QAAA,SAAS,EAAE,MAAM,SAAS,IAAI;AAC9B,KAAA,CAAC;AACH,CAAC;;ACtBD,MAAM,aAAa,GAAG,CACrB,IAAkB,EAClB,EACC,MAAM,EACN,UAAU,EACV,SAAS,EACT,OAAO,EACP,SAAS,GAOT,KACE;AACH,IAAA,OAAOA,SAAO,CAAC,IAAI,CAAC,MAAM,CAAC,MAAM,EAAE,IAAI,EAAE,iBAAiB,CAAC,EAAE,IAAI,EAAE,MAAM,CAAC,EAAE;AAC3E,QAAA,UAAU,EAAE,MAAM,UAAU,IAAI;QAChC,OAAO,EAAE,CAAC,KAAK,KAAK,OAAO,GAAG,KAAK,CAAC;QACpC,SAAS,EAAE,CAAC,IAAI,KAAK,SAAS,GAAG,IAAI,CAAC;AACtC,QAAA,SAAS,EAAE,MAAM,SAAS,IAAI;AAC9B,KAAA,CAAC;AACH,CAAC;;ACtBD,MAAM,WAAW,GAAG,CACnB,IAAgB,EAChB,EACC,MAAM,EACN,UAAU,EACV,SAAS,EACT,OAAO,EACP,SAAS,GAOT,KACE;AACH,IAAA,OAAOA,SAAO,CAAC,IAAI,CAAC,MAAM,CAAC,MAAM,EAAE,IAAI,EAAE,eAAe,CAAC,EAAE,IAAI,EAAE,MAAM,CAAC,EAAE;AACzE,QAAA,UAAU,EAAE,MAAM,UAAU,IAAI;QAChC,OAAO,EAAE,CAAC,KAAK,KAAK,OAAO,GAAG,KAAK,CAAC;QACpC,SAAS,EAAE,CAAC,IAAI,KAAK,SAAS,GAAG,IAAI,CAAC;AACtC,QAAA,SAAS,EAAE,MAAM,SAAS,IAAI;AAC9B,KAAA,CAAC;AACH,CAAC;;ACtBD,MAAM,aAAa,GAAG,CAClB,IAAiB,EACjB,EACI,MAAM,EACN,UAAU,EACV,SAAS,EACT,OAAO,EACP,SAAS,GAOZ,KACD;AACA,IAAA,OAAOA,SAAO,CAAC,IAAI,CAAC,MAAM,CAAC,MAAM,EAAE,IAAI,EAAE,gBAAgB,CAAC,EAAE,IAAI,EAAE,MAAM,CAAC,EAAE;AACvE,QAAA,UAAU,EAAE,MAAM,UAAU,IAAI;QAChC,OAAO,EAAE,CAAC,KAAK,KAAK,OAAO,GAAG,KAAK,CAAC;QACpC,SAAS,EAAE,CAAC,IAAI,KAAK,SAAS,GAAG,IAAI,CAAC;AACtC,QAAA,SAAS,EAAE,MAAM,SAAS,IAAI;AACjC,KAAA,CAAC;AACN,CAAC;;ACPD,MAAM,IAAI,GAAG;YACZC,MAAM;YACNC,MAAM;IACN,QAAQ;IACR,aAAa;IACb,gBAAgB;AAChB,IAAA,iBAAiB,EAAE,CAAC,KAAa,KAAI;AACpC,QAAA,cAAc,CAAC,CAAC,UAAU,CAAC,CAAC;AAC5B,QAAA,MAAM,EAAE,QAAQ,EAAE,GAAG,SAAS,EAAE;QAChC,IAAI,QAAQ,EAAE;AACb,YAAAC,OAAM,CAAC,GAAG,CAAC,QAAQ,EAAE,KAAK,EAAE,EAAE,OAAO,EAAE,MAAM,EAAE,CAAC;QACjD;AACA,QAAA,MAAM,CAAC,QAAQ,CAAC,IAAI,GAAG,GAAG;IAC3B,CAAC;AACD,IAAA,kBAAkB,EAAE,CAAC,KAAa,KAAI;AACrC,QAAA,MAAM,WAAW,GAGb,SAAS,CAAC,KAAK,CAAC;QACpB,IAAI,WAAW,EAAE;YAChB,gBAAgB,CAAC,aAAa,EAAE,WAAW,CAAC,GAAG,GAAG,WAAW,CAAC,SAAS,CAAC;AACxE,YAAA,gBAAgB,CAAC,oBAAoB,EAAE,KAAK,CAAC;AAC7C,YAAA,gBAAgB,CAAC,aAAa,EAAE,WAAW,CAAC;QAC7C;IACD,CAAC;IACD,mBAAmB,EAAE,MAAK;AACzB,QAAA,OAAO,kBAAkB,CAAC,oBAAoB,CAAC;IAChD,CAAC;IACD,mBAAmB,EAAE,MAAK;AACzB,QAAA,OAAO,kBAAkB,CAAC,aAAa,CAAC;IACzC,CAAC;AACD;;;;AAIG;IACH,cAAc,EAAE,CAAC,GAAqB,EAAE,KAAW,KAAK,MAAK;QAC5D,OAAO,CAAC,GAAG,CAAC,cAAc,EAAE,OAAO,GAAG,EAAE,GAAG,CAAC;AAC5C,QAAA,IAAI;;AAEH,YAAA,MAAM,WAAW,GAAG,kBAAkB,CAAC,aAAa,CAAC;AACrD,YAAA,IAAI,OAAO,GAAG,KAAK,QAAQ,EAAE;AAC5B,gBAAA,IAAI,WAAW,GAAG,EAAE,GAAG,WAAW,EAAE;;AAEpC,gBAAA,KAAK,MAAM,CAAC,EAAE,EAAE,KAAK,CAAC,IAAI,MAAM,CAAC,OAAO,CAAC,GAAG,CAAC,EAAE;oBAC9C,WAAW,GAAG,EAAE,GAAG,WAAW,EAAE,CAAC,EAAE,GAAG,KAAK,EAAE;gBAC9C;;AAEA,gBAAA,gBAAgB,CAAC,aAAa,EAAE,WAAW,CAAC;YAC7C;AAAO,iBAAA,IAAI,OAAO,GAAG,KAAK,QAAQ,EAAE;gBACnC,IAAI,KAAK,EAAE;AACV,oBAAA,gBAAgB,CAAC,aAAa,EAAE,EAAE,GAAG,WAAW,EAAE,CAAC,GAAG,GAAG,KAAK,EAAE,CAAC;gBAClE;qBAAO;AACN,oBAAA,OAAO,CAAC,KAAK,CACZ,8DAA8D,CAC9D;gBACF;YACD;QACD;QAAE,OAAO,KAAK,EAAE;AACf,YAAA,OAAO,CAAC,KAAK,CAAC,qBAAqB,EAAE,KAAK,CAAC;QAC5C;IACD,CAAC;AACD,IAAA,eAAe,EAAE,CAAC,MAAgB,KAAI;QACrC,IAAI,MAAM,EAAE;YACX,OAAO,MAAM,EAAE;QAChB;AACA,QAAA,OAAO,kBAAkB,CAAC,oBAAoB,CAAC,KAAK,SAAS;IAC9D,CAAC;;IAED,MAAM;AACN,IAAA,MAAM,EAAE;QACP,aAAa;QACb;AACA;;;ACxFF,MAAM,MAAM,GAAG,CACd,IAAW,EACX,EACC,MAAM,EACN,UAAU,EACV,SAAS,EACT,OAAO,EACP,SAAS,GAOT,KACE;AACH,IAAA,OAAOH,SAAO,CAAC,IAAI,CAAC,MAAM,CAAC,OAAO,EAAE,IAAI,EAAE,QAAQ,CAAC,EAAE,IAAI,EAAE,MAAM,CAAC,EAAE;AACnE,QAAA,UAAU,EAAE,MAAM,UAAU,IAAI;QAChC,OAAO,EAAE,CAAC,KAAK,KAAK,OAAO,GAAG,KAAK,CAAC;QACpC,SAAS,EAAE,CAAC,IAAI,KAAK,SAAS,GAAG,IAAI,CAAC;AACtC,QAAA,SAAS,EAAE,MAAM,SAAS,IAAI;AAC9B,KAAA,CAAC;AACH,CAAC;;ACzBD,MAAM,KAAK,GAAG;IACb,MAAM;;;ACSP,MAAM,OAAO,GAAG,CAAC,EAChB,OAAO,EACP,SAAS,GAAG,MAAK,EAAE,CAAC,EACpB,SAAS,GAAG,MAAK,EAAE,CAAC,EACpB,OAAO,GAAG,MAAK,EAAE,CAAC,EAClB,SAAS,GAAG,MAAK,EAAE,CAAC,EACpB,UAAU,GAAG,QAAO,CAAC,GACO,KAAU;;IAEtC,SAAS,CAAC,IAAI,CAAC;;IAGf;AACE,SAAA,IAAI,CAAC,CAAC,QAAuB,KAAI;;AAEjC,QAAA,OAAO,CAAC,GAAG,CAAC,kBAAkB,EAAE,QAAQ,CAAC;;QAGzC,IAAI,SAAS,EAAE;AACd,YAAA,SAAS,CAAC,QAAQ,CAAC,IAAI,CAAC;QACzB;AACD,IAAA,CAAC;AACA,SAAA,KAAK,CAAC,CAAC,KAAU,KAAI;;AAErB,QAAA,OAAO,CAAC,KAAK,CAAC,gBAAgB,EAAE,KAAK,CAAC;;QAGtC,IAAI,OAAO,EAAE;YACZ,OAAO,CAAC,KAAK,CAAC;QACf;AACD,IAAA,CAAC;SACA,OAAO,CAAC,MAAK;;QAEb,IAAI,SAAS,EAAE;AACd,YAAA,SAAS,EAAE;QACZ;;QAGA,SAAS,CAAC,KAAK,CAAC;;AAGhB,QAAA,OAAO,CAAC,GAAG,CAAC,mBAAmB,CAAC;AACjC,IAAA,CAAC,CAAC;AACJ,CAAC;;ACzBD,SAAS,KAAK,CACb,IAAiB,EACjB,EACC,MAAM,GAAG,IAAI,EACb,SAAS,GAAG,MAAK,EAAG,CAAC,EACrB,SAAS,GAAG,QAAQ,CAAC,EACrB,OAAO,GAAG,MAAK,EAAG,CAAC,EACnB,SAAS,GAAG,MAAK,EAAG,CAAC,MACJ,EAAE,EAAA;AAEpB,IAAA,OAAO,OAAO,CAAC;QACd,OAAO,EAAE,IAAI,CACZ,MAAM,CAAC,SAAS,EAAE,IAAI,EAAE,QAAQ,CAAC,EACjC;AACC,YAAA,GAAG,IAAI;AACP,YAAA,MAAM,EAAE;gBACP,KAAK,EAAE,IAAI,CAAC,cAAc;gBAC1B,QAAQ,EAAE,IAAI,CAAC,QAAQ;AACvB,aAAA;SACD,EACD,MAAM,IAAI,SAAS,CACnB;QACD,SAAS;QACT,OAAO,EAAE,CAAC,KAAK,KAAK,OAAO,CAAC,KAAK,CAAC;AAClC,QAAA,SAAS,EAAE,CAAC,YAAiB,KAAI;AAChC,YAAA,IAAI,YAAY,EAAE,MAAM,KAAK,WAAW,EAAE;AACzC,gBAAA,MAAM,OAAO,GAAG,YAAY,CAAC,OAAO;AACpC,gBAAA,OAAO,CAAC,OAAO,GAAG,OAAO,QAAa,KAAI;;oBAEzC,SAAS,CAAC,QAAQ,CAAC;;AAEpB,gBAAA,CAAC;gBACD,MAAM,IAAI,GAAG,IAAI,MAAM,CAAC,QAAQ,CAAC,OAAO,CAAC;gBACzC,IAAI,CAAC,EAAE,CAAC,gBAAgB,EAAE,CAAC,QAAa,KAAI;oBAC3C,OAAO,CAAC,QAAQ,CAAC;AAClB,gBAAA,CAAC,CAAC;gBACF,IAAI,CAAC,IAAI,EAAE;YACZ;QACD,CAAC;QACD,SAAS;AACT,KAAA,CAAC;AACH;;AChEA,MAAM,MAAM,GAAG,CACd,IAAmB,EACnB,EACC,MAAM,EACN,UAAU,EACV,SAAS,EACT,OAAO,EACP,SAAS,GAOT,KACE;AACH,IAAA,OAAOA,SAAO,CAAC,IAAI,CAAC,MAAM,CAAC,SAAS,EAAE,IAAI,EAAE,QAAQ,CAAC,EAAE,IAAI,EAAE,MAAM,CAAC,EAAE;AACrE,QAAA,UAAU,EAAE,MAAM,UAAU,IAAI;QAChC,OAAO,EAAE,CAAC,KAAK,KAAK,OAAO,GAAG,KAAK,CAAC;QACpC,SAAS,EAAE,CAAC,IAAI,KAAK,SAAS,GAAG,IAAI,CAAC;AACtC,QAAA,SAAS,EAAE,MAAM,SAAS,IAAI;AAC9B,KAAA,CAAC;AACH,CAAC;;AC1BD,MAAM,OAAO,GAAG;IACf,KAAK;IACL,MAAM;;;ACFP,MAAM,OAAO,GAAG;AACf,IAAA,OAAO,EAAE,CAAC,IAAY,KACrB,GAAG,CAAC,MAAM,CAAC,KAAK,EAAE,IAAI,EAAE,SAAS,CAAC,EAAE;AACnC,QAAA,MAAM,EAAE;YACP,IAAI;AACJ,SAAA;KACD,CAAC;AACH,IAAA,QAAQ,EAAE,CAAC,MAA2B,KACrC,GAAG,CAAC,MAAM,CAAC,KAAK,EAAE,IAAI,EAAE,UAAU,CAAC,EAAE,MAAM,CAAC;AAC7C,IAAA,iBAAiB,EAAE,CAAC,MAA2B,KAC9C,GAAG,CAAC,MAAM,CAAC,KAAK,EAAE,IAAI,EAAE,mBAAmB,CAAC,EAAE,MAAM,CAAC;AACtD,IAAA,GAAG,EAAE,CAAC,IAAY,KACjB,GAAG,CAAC,MAAM,CAAC,KAAK,EAAE,IAAI,EAAE,KAAK,CAAC,EAAE;AAC/B,QAAA,MAAM,EAAE;YACP,IAAI;AACJ,SAAA;KACD,CAAC;AACH,IAAA,IAAI,EAAE,CAAC,MAA2B,KACjC,GAAG,CAAC,MAAM,CAAC,KAAK,EAAE,IAAI,EAAE,MAAM,CAAC,EAAE,MAAM,CAAC;AACzC,IAAA,OAAO,EAAE,CAAC,MAA2B,KACpC,GAAG,CAAC,MAAM,CAAC,KAAK,EAAE,IAAI,EAAE,UAAU,CAAC,EAAE,MAAM,CAAC;AAC7C,IAAA,cAAc,EAAE,CAAC,MAA2B,KAC3C,GAAG,CAAC,MAAM,CAAC,KAAK,EAAE,IAAI,EAAE,eAAe,CAAC,EAAE,MAAM,CAAC;AAClD,IAAA,GAAG,EAAE,CAAC,IAAY,KACjB,GAAG,CAAC,MAAM,CAAC,KAAK,EAAE,IAAI,EAAE,KAAK,CAAC,EAAE;AAC/B,QAAA,MAAM,EAAE;YACP,IAAI;AACJ,SAAA;KACD,CAAC;AACH,IAAA,IAAI,EAAE,CAAC,MAA2B,KACjC,GAAG,CAAC,MAAM,CAAC,KAAK,EAAE,IAAI,EAAE,MAAM,CAAC,EAAE,MAAM,CAAC;AACzC,IAAA,cAAc,EAAE,CAAC,MAA2B,KAC3C,GAAG,CAAC,MAAM,CAAC,KAAK,EAAE,IAAI,EAAE,eAAe,CAAC,EAAE,MAAM,CAAC;;;AC7BnD,MAAM,aAAa,GAAG,CACrB,IAAa,EACb,EACC,MAAM,EACN,UAAU,EACV,SAAS,EACT,OAAO,EACP,SAAS,GAOT,KACE;AACH,IAAA,OAAOA,SAAO,CAAC,IAAI,CAAC,MAAM,CAAC,YAAY,EAAE,IAAI,EAAE,SAAS,CAAC,EAAE,IAAI,EAAE,MAAM,CAAC,EAAE;AACzE,QAAA,UAAU,EAAE,MAAM,UAAU,IAAI;QAChC,OAAO,EAAE,CAAC,KAAK,KAAK,OAAO,GAAG,KAAK,CAAC;QACpC,SAAS,EAAE,CAAC,IAAI,KAAK,SAAS,GAAG,IAAI,CAAC;AACtC,QAAA,SAAS,EAAE,MAAM,SAAS,IAAI;AAC9B,KAAA,CAAC;AACH,CAAC;;ACtBD,MAAM,aAAa,GAAG,CACrB,IAAmB,EACnB,EACC,MAAM,EACN,UAAU,EACV,SAAS,EACT,OAAO,EACP,SAAS,GAOT,KACE;AACH,IAAA,OAAOA,SAAO,CACb,IAAI,CAAC,MAAM,CAAC,YAAY,EAAE,IAAI,EAAE,gBAAgB,CAAC,EAAE,IAAI,EAAE,MAAM,CAAC,EAChE;AACC,QAAA,UAAU,EAAE,MAAM,UAAU,IAAI;QAChC,OAAO,EAAE,CAAC,KAAK,KAAK,OAAO,GAAG,KAAK,CAAC;QACpC,SAAS,EAAE,CAAC,IAAI,KAAK,SAAS,GAAG,IAAI,CAAC;AACtC,QAAA,SAAS,EAAE,MAAM,SAAS,IAAI;AAC9B,KAAA,CACD;AACF,CAAC;;ACzBD,MAAM,aAAa,GAAG,CACrB,IAAa,EACb,EACC,MAAM,EACN,UAAU,EACV,SAAS,EACT,OAAO,EACP,SAAS,GAOT,KACE;AACH,IAAA,OAAOA,SAAO,CAAC,GAAG,CAAC,MAAM,CAAC,YAAY,EAAE,IAAI,EAAE,SAAS,CAAC,EAAE,IAAI,EAAE,MAAM,CAAC,EAAE;AACxE,QAAA,UAAU,EAAE,MAAM,UAAU,IAAI;QAChC,OAAO,EAAE,CAAC,KAAK,KAAK,OAAO,GAAG,KAAK,CAAC;QACpC,SAAS,EAAE,CAAC,IAAI,KAAK,SAAS,GAAG,IAAI,CAAC;AACtC,QAAA,SAAS,EAAE,MAAM,SAAS,IAAI;AAC9B,KAAA,CAAC;AACH,CAAC;;ACtBD,MAAM,UAAU,GAAG;AAClB,IAAA,IAAI,EAAE,CAAC,IAAY,KAClB,GAAG,CAAC,MAAM,CAAC,YAAY,EAAE,IAAI,EAAE,MAAM,CAAC,EAAE;AACvC,QAAA,MAAM,EAAE;YACP,IAAI;AACJ,SAAA;KACD,CAAC;AACH,IAAA,KAAK,EAAE,CAAC,MAA2B,KAClC,GAAG,CAAC,MAAM,CAAC,YAAY,EAAE,IAAI,EAAE,OAAO,CAAC,EAAE,MAAM,CAAC;IACjD,aAAa;IACb,aAAa;AACb,IAAA,QAAQ,EAAE,CAAC,MAA2B,KACrC,GAAG,CAAC,MAAM,CAAC,YAAY,EAAE,IAAI,EAAE,UAAU,CAAC,EAAE,MAAM,CAAC;IACpD,aAAa;AACb,IAAA,cAAc,EAAE,MAAM,GAAG,CAAC,MAAM,CAAC,YAAY,EAAE,IAAI,EAAE,iBAAiB,CAAC,CAAC;AACxE,IAAA,UAAU,EAAE,MAAM,GAAG,CAAC,MAAM,CAAC,YAAY,EAAE,IAAI,EAAE,aAAa,CAAC,CAAC;;;ACjBjE,MAAM,QAAQ,GAAG,CAChB,IAAa,EACb,EACC,MAAM,EACN,UAAU,EACV,SAAS,EACT,OAAO,EACP,SAAS,GAOT,KACE;AACH,IAAA,OAAOA,SAAO,CAAC,IAAI,CAAC,MAAM,CAAC,SAAS,EAAE,IAAI,EAAE,UAAU,CAAC,EAAE,IAAI,EAAE,MAAM,CAAC,EAAE;AACvE,QAAA,UAAU,EAAE,MAAM,UAAU,IAAI;QAChC,OAAO,EAAE,CAAC,KAAK,KAAK,OAAO,GAAG,KAAK,CAAC;QACpC,SAAS,EAAE,CAAC,IAAI,KAAK,SAAS,GAAG,IAAI,CAAC;AACtC,QAAA,SAAS,EAAE,MAAM,SAAS,IAAI;AAC9B,KAAA,CAAC;AACH,CAAC;;ACtBD,MAAM,UAAU,GAAG,CAClB,IAAa,EACb,EACC,MAAM,EACN,UAAU,EACV,SAAS,EACT,OAAO,EACP,SAAS,GAOT,KACE;AACH,IAAA,OAAOA,SAAO,CAAC,IAAI,CAAC,MAAM,CAAC,SAAS,EAAE,IAAI,EAAE,YAAY,CAAC,EAAE,IAAI,EAAE,MAAM,CAAC,EAAE;AACzE,QAAA,UAAU,EAAE,MAAM,UAAU,IAAI;QAChC,OAAO,EAAE,CAAC,KAAK,KAAK,OAAO,GAAG,KAAK,CAAC;QACpC,SAAS,EAAE,CAAC,IAAI,KAAK,SAAS,GAAG,IAAI,CAAC;AACtC,QAAA,SAAS,EAAE,MAAM,SAAS,IAAI;AAC9B,KAAA,CAAC;AACH,CAAC;;ACtBD,MAAM,MAAM,GAAG,CACd,IAAa,EACb,EACC,MAAM,EACN,UAAU,EACV,SAAS,EACT,OAAO,EACP,SAAS,GAOT,KACE;AACH,IAAA,OAAOA,SAAO,CAAC,IAAI,CAAC,MAAM,CAAC,SAAS,EAAE,IAAI,EAAE,QAAQ,CAAC,EAAE,IAAI,EAAE,MAAM,CAAC,EAAE;AACrE,QAAA,UAAU,EAAE,MAAM,UAAU,IAAI;QAChC,OAAO,EAAE,CAAC,KAAK,KAAK,OAAO,GAAG,KAAK,CAAC;QACpC,SAAS,EAAE,CAAC,IAAI,KAAK,SAAS,GAAG,IAAI,CAAC;AACtC,QAAA,SAAS,EAAE,MAAM,SAAS,IAAI;AAC9B,KAAA,CAAC;AACH,CAAC;;ACpBD,MAAM,OAAO,GAAG;IACf,MAAM;IACN,UAAU;AACV,IAAA,OAAO,EAAE,CAAC,MAA2B,KACpC,GAAG,CAAC,MAAM,CAAC,SAAS,EAAE,IAAI,EAAE,SAAS,CAAC,EAAE,MAAM,CAAC;IAChD;;;ACRD,MAAM,MAAM,GAAG;AACd,IAAA,MAAM,EAAE;AACP,QAAA,gBAAgB,EAAE,SAAS,EAAE,CAAC,MAAM,GAAG,MAAM,CAAC,QAAQ,EAAE,IAAI,EAAE,kBAAkB,CAAC;AACjF,QAAA,MAAM,EAAE,SAAS,EAAE,CAAC,MAAM,GAAG,MAAM,CAAC,QAAQ,EAAE,IAAI,EAAE,QAAQ,CAAC;AAC7D,KAAA;;;ACDF,MAAM,aAAa,GAAG,CACrB,IAAa,EACb,EACC,MAAM,EACN,UAAU,EACV,SAAS,EACT,OAAO,EACP,SAAS,EAOT,KACE;AACH,IAAA,OAAOA,SAAO,CAAC,GAAG,CAAC,MAAM,CAAC,SAAS,EAAE,IAAI,EAAE,SAAS,CAAC,EAAE,IAAI,EAAE,MAAM,CAAC,EAAE;AACrE,QAAA,UAAU,EAAE,MAAM,UAAU,IAAI;QAChC,OAAO,EAAE,CAAC,KAAK,KAAK,OAAO,GAAG,KAAK,CAAC;QACpC,SAAS,EAAE,CAAC,IAAI,KAAK,SAAS,GAAG,IAAI,CAAC;AACtC,QAAA,SAAS,EAAE,MAAM,SAAS,IAAI;AAC9B,KAAA,CAAC;AACH,CAAC;;ACxBD,MAAM,OAAO,GAAG;AACf,IAAA,OAAO,EAAE,CAAC,EAAU,KACnB,GAAG,CAAC,MAAM,CAAC,SAAS,EAAE,IAAI,EAAE,SAAS,CAAC,EAAE;AACvC,QAAA,MAAM,EAAE;YACP,EAAE;AACF,SAAA;KACD,CAAC;IACH,aAAa;;;ACXA,SAAU,QAAQ,CAAC,KAAa,EAAE,GAAW,EAAA;;AAE1D,IAAA,MAAM,YAAY,GAAG,kBAAkB,CAAC,KAAK,CAAC;AAC9C,IAAA,MAAM,UAAU,GAAG,kBAAkB,CAAC,GAAG,CAAC;IAC1C,MAAM,MAAM,GAAG,QAAQ;IACvB,MAAM,SAAS,GAAG,sBAAsB;;AAExC,IAAA,MAAM,UAAU,GAAG;QAClB,QAAQ,EAAE,CAAA,6CAAA,EAAgD,UAAU,CAAA,CAAE;AACtE,QAAA,OAAO,EAAE,CAAA,sCAAA,EAAyC,YAAY,CAAA,KAAA,EAAQ,UAAU,CAAA,CAAE;QAClF,QAAQ,EAAE,CAAA,oDAAA,EAAuD,UAAU,CAAA,CAAE;AAC7E,QAAA,QAAQ,EAAE,CAAA,mCAAA,EAAsC,YAAY,CAAA,CAAA,EAAI,UAAU,CAAA,CAAE;AAC5E,QAAA,SAAS,EAAE,CAAA,iDAAA,EAAoD,UAAU,CAAA,aAAA,EAAgB,YAAY,CAAA,CAAE;KACvG;IAED,OAAO;AACN,QAAA,QAAQ,EAAE,MAAM,MAAM,CAAC,IAAI,CAAC,UAAU,CAAC,QAAQ,EAAE,MAAM,EAAE,SAAS,CAAC;AACnE,QAAA,OAAO,EAAE,MAAM,MAAM,CAAC,IAAI,CAAC,UAAU,CAAC,OAAO,EAAE,MAAM,EAAE,SAAS,CAAC;AACjE,QAAA,QAAQ,EAAE,MAAM,MAAM,CAAC,IAAI,CAAC,UAAU,CAAC,QAAQ,EAAE,MAAM,EAAE,SAAS,CAAC;AACnE,QAAA,QAAQ,EAAE,MAAM,MAAM,CAAC,IAAI,CAAC,UAAU,CAAC,QAAQ,EAAE,MAAM,EAAE,SAAS,CAAC;AACnE,QAAA,SAAS,EAAE,MAAM,MAAM,CAAC,IAAI,CAAC,UAAU,CAAC,SAAS,EAAE,MAAM,EAAE,SAAS,CAAC;KACrE;AACF;;SCRgB,OAAO,CACtB,IAAU,EACV,EACC,MAAM,GAAG,IAAI,EACb,SAAS,GAAG,MAAK,EAAG,CAAC,EACrB,SAAS,GAAG,QAAQ,CAAC,EACrB,OAAO,GAAG,MAAK,EAAG,CAAC,EACnB,SAAS,GAAG,MAAK,EAAG,CAAC,MACJ,EAAE,EAAA;AAEpB,IAAA,OAAO,OAAO,CAAC;QACd,OAAO,EAAE,IAAI,CACZ,MAAM,CAAC,OAAO,EAAE,IAAI,EAAE,SAAS,CAAC,EAChC;AACC,YAAA,GAAG;SACH,EACD,MAAM,IAAI,SAAS,CACnB;QACD,SAAS;QACT,OAAO,EAAE,CAAC,KAAK,KAAK,OAAO,CAAC,KAAK,CAAC;AAClC,QAAA,SAAS,EAAE,CAAC,YAAiB,KAAI;YAChC,SAAS,CAAC,YAAY,CAAC;QACxB,CAAC;QACD,SAAS;AACT,KAAA,CAAC;AACH;;ACpCA,MAAM,KAAK,GAAG;IACb,OAAO;;;ACDR,MAAM,SAAS,GAAG;AACjB,IAAA,YAAY,EAAE,CAAC,EAAU,KACxB,GAAG,CAAC,MAAM,CAAC,WAAW,EAAE,IAAI,EAAE,OAAO,CAAC,EAAE;AACvC,QAAA,MAAM,EAAE;YACP,EAAE;AACF,SAAA;KACD,CAAC;AACH,IAAA,cAAc,EAAE,CAAC,IAAY,KAC5B,GAAG,CAAC,MAAM,CAAC,WAAW,EAAE,IAAI,EAAE,OAAO,CAAC,EAAE;AACvC,QAAA,MAAM,EAAE;YACP,IAAI;AACJ,SAAA;KACD,CAAC;IACH,gBAAgB,EAAE,CACjB,IAAY,EACZ,QAAgB,EAChB,KAAa,EACb,KAAa,EACb,MAAc,KAEd,GAAG,CAAC,MAAM,CAAC,WAAW,EAAE,IAAI,EAAE,gBAAgB,CAAC,EAAE;AAChD,QAAA,MAAM,EAAE;YACP,IAAI;YACJ,QAAQ;YACR,KAAK;YACL,KAAK;YACL,MAAM;AACN,SAAA;KACD,CAAC;;;AC3BJ,MAAM,aAAa,GAAG,CACrB,IAAa,EACb,EACC,MAAM,EACN,UAAU,EACV,SAAS,EACT,OAAO,EACP,SAAS,GAYT,KACE;AACH,IAAA,OAAOA,SAAO,CAAC,GAAG,CAAC,MAAM,CAAC,OAAO,EAAE,IAAI,EAAE,eAAe,CAAC,EAAE,MAAM,CAAC,EAAE;AACnE,QAAA,UAAU,EAAE,MAAM,UAAU,IAAI;QAChC,OAAO,EAAE,CAAC,KAAK,KAAK,OAAO,GAAG,KAAK,CAAC;QACpC,SAAS,EAAE,CAAC,IAAI,KAAK,SAAS,GAAG,IAAI,CAAC;AACtC,QAAA,SAAS,EAAE,MAAM,SAAS,IAAI;AAC9B,KAAA,CAAC;AACH,CAAC;AAID;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;;AC7CA,MAAM,KAAK,GAAG;IACb,aAAa;;;ACGd,MAAM,QAAQ,GAAG,CAChB,IAAoB,EACpB,EACC,MAAM,EACN,UAAU,EACV,SAAS,EACT,OAAO,EACP,SAAS,GAOT,KACE;AACH,IAAA,OAAOA,SAAO,CAAC,UAAU,CAAC,MAAM,CAAC,QAAQ,EAAE,IAAI,EAAE,SAAS,EAAE,IAAI,CAAC,EAAE,IAAI,EAAE,MAAM,CAAC,EAAE;AACjF,QAAA,UAAU,EAAE,MAAM,UAAU,IAAI;QAChC,OAAO,EAAE,CAAC,KAAK,KAAK,OAAO,GAAG,KAAK,CAAC;QACpC,SAAS,EAAE,CAAC,IAAI,KAAK,SAAS,GAAG,IAAI,CAAC;AACtC,QAAA,SAAS,EAAE,MAAM,SAAS,IAAI;AAC9B,KAAA,CAAC;AACH,CAAC;;AC5BD;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AAGA,MAAM,MAAM,GAAG;IACd;;;ACRD,MAAM,SAAS,GAAG,CACjB,EACC,MAAM,EACN,UAAU,EACV,SAAS,EACT,OAAO,EACP,SAAS,EAOT,KACE;AACH,IAAA,OAAOA,SAAO,CAAC,GAAG,CAAC,CAAA,EAAG,SAAS,EAAE,CAAC,OAAO,CAAA,sBAAA,CAAwB,EAAE,MAAM,CAAC,EAAE;AAC3E,QAAA,UAAU,EAAE,MAAM,UAAU,IAAI;QAChC,OAAO,EAAE,CAAC,KAAK,KAAK,OAAO,GAAG,KAAK,CAAC;QACpC,SAAS,EAAE,CAAC,IAAI,KAAK,SAAS,GAAG,IAAI,CAAC;AACtC,QAAA,SAAS,EAAE,MAAM,SAAS,IAAI;AAC9B,KAAA,CAAC;AACH,CAAC;;ACrBD,MAAM,YAAY,GAAG,CACpB,EACC,MAAM,EACN,UAAU,EACV,SAAS,EACT,OAAO,EACP,SAAS,EAOT,KACE;AACH,IAAA,OAAOA,SAAO,CAAC,GAAG,CAAC,CAAA,EAAG,SAAS,EAAE,CAAC,OAAO,CAAA,iBAAA,CAAmB,EAAE,MAAM,CAAC,EAAE;AACtE,QAAA,UAAU,EAAE,MAAM,UAAU,IAAI;QAChC,OAAO,EAAE,CAAC,KAAK,KAAK,OAAO,GAAG,KAAK,CAAC;QACpC,SAAS,EAAE,CAAC,IAAI,KAAK,SAAS,GAAG,IAAI,CAAC;AACtC,QAAA,SAAS,EAAE,MAAM,SAAS,IAAI;AAC9B,KAAA,CAAC;AACH,CAAC;;ACrBD,MAAM,SAAS,GAAG,CACjB,EACC,MAAM,EACN,UAAU,EACV,SAAS,EACT,OAAO,EACP,SAAS,EAOT,KACE;AACH,IAAA,OAAOA,SAAO,CAAC,GAAG,CAAC,CAAA,EAAG,SAAS,EAAE,CAAC,OAAO,CAAA,uBAAA,CAAyB,EAAE,MAAM,CAAC,EAAE;AAC5E,QAAA,UAAU,EAAE,MAAM,UAAU,IAAI;QAChC,OAAO,EAAE,CAAC,KAAK,KAAK,OAAO,GAAG,KAAK,CAAC;QACpC,SAAS,EAAE,CAAC,IAAI,KAAK,SAAS,GAAG,IAAI,CAAC;AACtC,QAAA,SAAS,EAAE,MAAM,SAAS,IAAI;AAC9B,KAAA,CAAC;AACH,CAAC;;ACtBD,MAAM,IAAI,GAAG;IACT,YAAY;IACZ,SAAS;IACT;;;;;"}
1
+ {"version":3,"file":"index.js","sources":["../src/config/validate.ts","../src/config/index.ts","../src/utils/auth.ts","../src/utils/localStorage.ts","../src/config/constants.ts","../src/config/axios.ts","../src/config/handler.ts","../src/account/endpoint.ts","../src/accounting/endpoint.ts","../src/assets/endpoint.ts","../src/auth/endpoint.ts","../src/content/endpoint.ts","../src/hr/endpoint.ts","../src/inventory/endpoint.ts","../src/linkie/endpoint.ts","../src/lms/endpoint.ts","../src/payment/endpoint.ts","../src/sales/endpoint.ts","../src/support/endpoint.ts","../src/tools/endpoint.ts","../src/config/route.ts","../src/auth/logout.ts","../src/auth/register.ts","../src/auth/signup.ts","../src/auth/signInWithGoogle.ts","../src/auth/signin.ts","../src/auth/authWithToken.ts","../src/auth/authWithKey.ts","../src/auth/resetPassword.ts","../src/auth/index.ts","../src/order/create.ts","../src/order/index.ts","../src/utils/handler.ts","../src/payment/start.ts","../src/payment/verify.ts","../src/payment/index.ts","../src/content/index.ts","../src/accounting/createInvoice.ts","../src/accounting/submitInvoice.ts","../src/accounting/updateInvoice.ts","../src/accounting/index.ts","../src/support/feedback.ts","../src/support/newsletter.ts","../src/support/ticket.ts","../src/support/index.ts","../src/assets/index.ts","../src/account/update_profile.ts","../src/account/index.ts","../src/utils/share.ts","../src/sales/lead.ts","../src/sales/index.ts","../src/inventory/index.ts","../src/tools/exchangeRates.ts","../src/tools/index.ts","../src/linkie/shortUrl.ts","../src/linkie/index.ts","../src/apis/cities.ts","../src/apis/countries.ts","../src/apis/states.ts","../src/apis/index.ts","../src/hr/add_resume.ts","../src/hr/post_job.ts","../src/hr/index.ts","../src/lms/post_course.ts","../src/lms/index.ts"],"sourcesContent":["// validateConfig\r\nimport { getConfig } from './index';\r\n\r\ntype Config = ReturnType<typeof getConfig>;\r\n\r\nfunction validateConfig(requiredKeys: (keyof Config)[]) {\r\n const config = getConfig();\r\n\r\n const missingKeys = requiredKeys.filter((key) => {\r\n return !config[key]; // null, undefined, empty string → treated as missing\r\n });\r\n\r\n if (missingKeys.length > 0) {\r\n throw new Error(\r\n `SDK configuration error: Missing required config value(s): ${missingKeys.join(', ')}\\n` +\r\n '👉 Please ensure these keys are set using setConfig({ ... }) before making requests.'\r\n );\r\n }\r\n}\r\n\r\nexport default validateConfig;\r\n","import { default as firebase } from \"firebase/compat/app\";\r\nimport validateConfig from \"./validate\";\r\n\r\n// config.ts\r\nexport type Config = {\r\n apiKey: string | null;\r\n apiUrl: string;\r\n lmsUrl: string;\r\n linkieUrl?: string;\r\n appUrl: string;\r\n apisUrl: string;\r\n tokenKey: string;\r\n environment: string;\r\n firebase?: FirebaseConfig\r\n};\r\n\r\nexport interface FirebaseConfig {\r\n apiKey?: string;\r\n authDomain?: string;\r\n projectId?: string;\r\n storageBucket?: string;\r\n messagingSenderId?: string;\r\n appId?: string;\r\n measurementId?: string;\r\n}\r\n\r\nlet config: Config = {\r\n tokenKey: '',\r\n apiKey: null,\r\n apiUrl: 'https://api.helpdice.com',\r\n appUrl: '',\r\n apisUrl: 'https://apis.helpdice.com',\r\n lmsUrl: 'https://lms.helpdice.com',\r\n environment: 'production',\r\n firebase: undefined\r\n};\r\n\r\nexport function initializeSDK(newConfig: Partial<Config>) {\r\n config = { ...config, ...newConfig };\r\n validateConfig(['apiKey', 'tokenKey']);\r\n}\r\n\r\nexport function getFirebase() {\r\n validateConfig(['firebase']);\r\n const appConfig = getConfig();\r\n if (appConfig.firebase) {\r\n // if (firebase?.default != undefined) {\r\n // return firebase.default.initializeApp(appConfig.firebase)\r\n // }\r\n return firebase.initializeApp(appConfig.firebase)\r\n }\r\n throw new Error(\r\n `SDK configuration error: Firebase is not configured properly`\r\n );\r\n}\r\n\r\nexport function getConfig(): Config {\r\n return config;\r\n}\r\n","import Cookies from \"js-cookie\";\n// import type { NextPageContext } from \"next\";\n// import { parseCookies } from \"nookies\";\nimport { getConfig } from \"../config\";\n\nexport const getCookie = (\n\tkey = getConfig().tokenKey,\n): string | undefined => {\n\t// console.log(Cookies.get(key));\n\tif (key) return Cookies.get(key);\n\treturn \"\";\n};\n\nexport const isAuth = () => !!getCookie();\n\n// export const getServerSideToken = (ctx: NextPageContext) => {\n// \tconst { token } = parseCookies(ctx);\n// \treturn token;\n// };\n","import CryptoJS from \"crypto-js\";\n\n/**\n * Function to set encryption key\n * @param {string} key - encryption key name\n * @param {string} value string value to be set as encryption key\n */\nexport function setEncryptionKey(key: string, value: string) {\n\tif (key && value) {\n\t\tconst sha256Key = CryptoJS.SHA256(key).toString();\n\t\t// console.log('setting key: ', key, value);\n\t\tconst sha256Data = CryptoJS.SHA256(value).toString();\n\n\t\tlocalStorage.setItem(sha256Key, JSON.stringify(sha256Data));\n\t} else {\n\t\tconsole.error(\"No data provided\");\n\t}\n}\n\n/**\n * function to get the encryption key\n * @param {string} - name of the key to get encryption key for\n * @returns {string}\n */\n// eslint-disable-next-line consistent-return\nexport function getEncryptionKey(key: string) {\n\ttry {\n\t\tconst shaKey = CryptoJS.SHA256(key).toString();\n\t\t// console.log('getting key: ', key, localStorage.getItem(shaKey));\n\t\treturn localStorage.getItem(shaKey);\n\t} catch (err) {\n\t\tconsole.error(\"something went wrong man hoho\");\n\t}\n}\n\nexport function daysCountInMonth(month: number, year: number) {\n\treturn new Date(year, month, 0).getDate();\n}\n\n/**\n * Funtion to store data in local storage\n * Pass second argument as true if setting data for employee side\n * @param {string} key key for the value to be stored\n * @param {*} data actual data to be stored with the provided key\n * @param {boolean} [useEmployeeKey] - flag to decide which encyption key to use, (employee's or admin's)\n */\nexport function setDataInStorage(key: string, data: string | object) {\n\t// Encrypt key\n\tconst shaKey = CryptoJS.SHA256(key).toString();\n\n\tconst encKeyName = \"account_key\";\n\n\tconst encryptionKey = getEncryptionKey(encKeyName);\n\n\t// console.log('setting data: ', encryption_key, key, shaKey, data);\n\n\tif (encryptionKey) {\n\t\t// Encrypt data\n\t\tconst dataCipher = CryptoJS.AES.encrypt(\n\t\t\tJSON.stringify(data),\n\t\t\tencryptionKey,\n\t\t).toString();\n\n\t\tlocalStorage.setItem(shaKey, JSON.stringify(dataCipher));\n\t}\n}\n\n/**\n * Function to get data from local storage\n * Pass second argument as true if getting data for employee side\n * @param {string} key - key of the item to fetch from local storage\n * @param {boolean} [useEmployeeKey] - flag to decide which encyption key to use, (employee's or admin's)\n * @returns {*} value associated with the key\n */\n// eslint-disable-next-line consistent-return\nexport function getDataFromStorage(key: string) {\n\ttry {\n\t\tconst shaKey = CryptoJS.SHA256(key).toString();\n\n\t\tconst encKeyName = \"account_key\";\n\n\t\tconst encryptionKey = getEncryptionKey(encKeyName);\n\n\t\t// console.log(\n\t\t// 'from getting data: ',\n\t\t// key,\n\t\t// 'encryption-key',\n\t\t// typeof encryption_key,\n\t\t// encryption_key\n\t\t// );\n\t\tif (encryptionKey && shaKey) {\n\t\t\tconst ciphertext = JSON.parse(String(localStorage.getItem(shaKey)));\n\t\t\tif (ciphertext) {\n\t\t\t\t// Decrypt\n\t\t\t\tconst bytes = CryptoJS.AES.decrypt(ciphertext, encryptionKey);\n\t\t\t\tconst originalData = bytes.toString(CryptoJS.enc.Utf8);\n\t\t\t\t// console.log('getting data: ', key, shaKey, originalData);\n\t\t\t\treturn JSON.parse(originalData);\n\t\t\t}\n\t\t}\n\t} catch (err) {\n\t\t// console.error('Error getting data from storage boi boi');\n\t}\n}\n\n/**\n * Function to clear items from local storage\n * @param {(string|string[])} keys - key to remove or array of keys\n */\n// export function clearStorage(keys: string[]) {\n// \ttry {\n// \t\tif (Array.isArray(keys)) {\n// \t\t\tkeys.forEach((key) => {\n// \t\t\t\tconst shaKey = CryptoJS.SHA256(key).toString();\n// \t\t\t\tlocalStorage.removeItem(shaKey);\n// \t\t\t});\n// \t\t} else if (typeof keys === \"string\") {\n// \t\t\tconst shaKey = CryptoJS.SHA256(keys).toString();\n// \t\t\tlocalStorage.removeItem(shaKey);\n// \t\t}\n// \t} catch (err) {\n// \t\tconsole.error(\"Error clearing storage\", err);\n// \t}\n// }\nexport function clearStorage(keys: string[]) {\n\ttry {\n\t\tif (Array.isArray(keys)) {\n\t\t\tfor (const key of keys) {\n\t\t\t\tconst shaKey = CryptoJS.SHA256(key).toString();\n\t\t\t\tlocalStorage.removeItem(shaKey);\n\t\t\t}\n\t\t} else if (typeof keys === \"string\") {\n\t\t\tconst shaKey = CryptoJS.SHA256(keys).toString();\n\t\t\tlocalStorage.removeItem(shaKey);\n\t\t}\n\t} catch (err) {\n\t\tconsole.error(\"Error clearing storage\", err);\n\t}\n}\n","export const SITE_NAME = \"Helpdice\";\nexport const TOKEN_KEY = \"access-token\";\nexport const REFRESH_TOKEN_KEY = \"refresh-token\";\nexport const TOKEN_THRESHOLD_KEY = \"access-token-threshold\";\n\nexport const AD_CLIENT = \"ca-pub-7034818195807373\";\n\n/* eslint-disable */\nexport const EMAIL_REGEX =\n\t/(?:[a-z0-9!#$%&'*+/=?^_`{|}~-]+(?:\\.[a-z0-9!#$%&'*+/=?^_`{|}~-]+)*|\"(?:[\\x01-\\x08\\x0b\\x0c\\x0e-\\x1f\\x21\\x23-\\x5b\\x5d-\\x7f]|\\\\[\\x01-\\x09\\x0b\\x0c\\x0e-\\x7f])*\")@(?:(?:[a-z0-9](?:[a-z0-9-]*[a-z0-9])?\\.)+[a-z0-9](?:[a-z0-9-]*[a-z0-9])?|\\[(?:(?:25[0-5]|2[0-4][0-9]|[01]?[0-9][0-9]?)\\.){3}(?:25[0-5]|2[0-4][0-9]|[01]?[0-9][0-9]?|[a-z0-9-]*[a-z0-9]:(?:[\\x01-\\x08\\x0b\\x0c\\x0e-\\x1f\\x21-\\x5a\\x53-\\x7f]|\\\\[\\x01-\\x09\\x0b\\x0c\\x0e-\\x7f])+)\\])/;\nexport const PASSWORD_REGEX = /.{8,}/;\n/* eslint-enable */\n","import type { AxiosRequestConfig, AxiosResponse } from \"axios\";\nimport axios from \"axios\";\n\nimport {\n\tREFRESH_TOKEN_KEY,\n\tTOKEN_KEY,\n\t// TOKEN_THRESHOLD_KEY,\n} from \"./constants\";\n\n// import { handleItem, setThreshold } from './local-storage';\n// import { handleItem, setThreshold } from './local-storage';\nimport type { AuthRequest, SignupRequest } from \"../auth/types\";\nimport { getCookie } from \"../utils/auth\";\nimport { getConfig } from \"./index\";\nimport validateConfig from \"./validate\";\n\nexport const http = axios.create({\n\twithCredentials: true,\n\theaders: {\n\t\t\"Access-Control-Allow-Origin\": \"*\",\n\t\t\"Content-Type\": \"application/json\",\n\t},\n});\n\nhttp.interceptors.request.use((config) => {\n\tvalidateConfig(['apiKey', 'apiUrl']);\n\tconst { apiUrl } = getConfig();\n\tconfig.baseURL = apiUrl;\n\tif (config.headers) {\n\t\tconfig.headers[\"Content-Type\"] = \"application/json\";\n\t\tconfig.headers.Authorization = `Bearer ${getCookie()}` || \"\";\n\t\tconfig.headers[\"HB-API-KEY\"] =\n\t\t\t`Bearer ${getConfig().apiKey}` || \"\";\n\t}\n\treturn config;\n}, Promise.reject);\n\nexport const post = (\n\tendpoint: string,\n\tdata?: unknown,\n\tconfig?: AxiosRequestConfig<unknown>,\n): Promise<AxiosResponse> =>\n\tnew Promise((resolve, reject) =>\n\t\thttp\n\t\t\t.post(endpoint, data, config)\n\t\t\t.then(resolve)\n\t\t\t.catch((e) => reject(e.response?.data)),\n\t);\n\nexport const put = (\n\tendpoint: string,\n\tdata?: unknown,\n\tconfig?: AxiosRequestConfig<unknown>,\n): Promise<AxiosResponse> =>\n\tnew Promise((resolve, reject) =>\n\t\thttp\n\t\t\t.put(endpoint, data, config)\n\t\t\t.then(resolve)\n\t\t\t.catch((e) => reject(e.response?.data)),\n\t);\n\nexport const get = (\n\tendpoint: string,\n\tconfig?: AxiosRequestConfig<unknown>,\n): Promise<AxiosResponse> => {\n\t// console.log('Get Request Config :', config);\n\treturn new Promise((resolve, reject) =>\n\t\thttp\n\t\t\t.get(endpoint, config)\n\t\t\t.then(resolve)\n\t\t\t.catch((e) => reject(e.response?.data)),\n\t);\n};\n\nexport const patch = <T>(endpoint: string, data: T): Promise<AxiosResponse> =>\n\tnew Promise((resolve, reject) =>\n\t\thttp\n\t\t\t.patch(endpoint, data)\n\t\t\t.then(resolve)\n\t\t\t.catch((e) => reject(e.response.data)),\n\t);\n\nexport const login = (data: AuthRequest): Promise<AxiosResponse> =>\n\tpost(\"passport/basic/login\", data);\n\nexport const logout = (): Promise<AxiosResponse> => post(\"user/logout\");\n\nexport const passwordReset = (\n\tdata: Partial<AuthRequest>,\n): Promise<AxiosResponse> => post(\"user/reset-password\", data);\n\nexport const signup = (data: SignupRequest): Promise<AxiosResponse> =>\n\tpost(\"passport/basic/signup\", data);\n\n\n\n/* ======================================================================================================= */\n/* ------------------------------------ For Linkie App --------------------------------------------------- */\n/* ======================================================================================================= */\n\nexport const chttp = axios.create({\n\twithCredentials: true,\n\theaders: {\n\t\t\"Access-Control-Allow-Origin\": \"*\",\n\t\t\"Content-Type\": \"application/json\",\n\t},\n});\n\nchttp.interceptors.request.use((config) => {\n\tvalidateConfig(['apiKey', 'tokenKey', 'linkieUrl']);\n\tconst { linkieUrl } = getConfig();\n\tconfig.baseURL = linkieUrl;\n\tif (config.headers) {\n\t\tconfig.headers[\"Content-Type\"] = \"application/json\";\n\t\tconfig.headers.Authorization = localStorage.getItem(TOKEN_KEY) || \"\";\n\t\tconfig.headers[\"HB-API-KEY\"] =\n\t\t\t`Bearer ${getConfig().apiKey}` || \"\";\n\t}\n\treturn config;\n}, Promise.reject);\n\n// chttp.interceptors.response.use(\n// \t(response) => response,\n// \tasync (error) => {\n// \t\tif (error.code === \"ERR_NETWORK\") {\n// \t\t\treturn Promise.reject(error);\n// \t\t}\n\n// \t\tconst refreshToken = localStorage.getItem(REFRESH_TOKEN_KEY);\n\n// \t\tif (!refreshToken) {\n// \t\t\treturn Promise.reject(error);\n// \t\t}\n\n// \t\t// const originalRequest = error.config;\n\n// \t\t// if (error.response.status === 401 && !originalRequest._retry) {\n// \t\t// originalRequest._retry = true;\n\n// \t\t// if (http.defaults.headers) {\n// \t\t// http.defaults.headers.Authorization = `Bearer ${refreshToken}`;\n// \t\t// }\n\n// \t\t// try {\n// \t\t// const res = await post('auth/token');\n// \t\t// const { access_token, threshold } = res.data;\n\n// \t\t// // handleItem(TOKEN_KEY, access_token);\n// \t\t// // handleItem(TOKEN_THRESHOLD_KEY, setThreshold(threshold));\n\n// \t\t// if (http.defaults.headers) {\n// \t\t// http.defaults.headers.Authorization = access_token;\n// \t\t// }\n// \t\t// return await http(originalRequest);\n// \t\t// } catch (reason) {\n// \t\t// return Promise.reject(reason);\n// \t\t// }\n// \t\t// }\n\n// \t\treturn Promise.reject(error);\n// \t},\n// );\n\nexport const linkiePost = (\n\tendpoint: string,\n\tdata?: unknown,\n\tconfig?: AxiosRequestConfig<unknown>,\n): Promise<AxiosResponse> =>\n\tnew Promise((resolve, reject) =>\n\t\tchttp\n\t\t\t.post(endpoint, data, config)\n\t\t\t.then(resolve)\n\t\t\t.catch((e) => reject(e.response?.data)),\n\t);\n\n\n/* ======================================================================================================= */\n/* ------------------------------------ For LMS App --------------------------------------------------- */\n/* ======================================================================================================= */\n\nexport const lhttp = axios.create({\n\twithCredentials: true,\n\theaders: {\n\t\t\"Access-Control-Allow-Origin\": \"*\",\n\t\t\"Content-Type\": \"application/json\",\n\t},\n});\n\nlhttp.interceptors.request.use((config) => {\n\tvalidateConfig(['apiKey', 'tokenKey', 'lmsUrl']);\n\tconst { lmsUrl } = getConfig();\n\tconfig.baseURL = lmsUrl;\n\tif (config.headers) {\n\t\tconfig.headers[\"Content-Type\"] = \"application/json\";\n\t\tconfig.headers.Authorization = localStorage.getItem(TOKEN_KEY) || \"\";\n\t\tconfig.headers[\"HB-API-KEY\"] = `Bearer ${getConfig().apiKey}` || \"\";\n\t}\n\treturn config;\n}, Promise.reject);\n\n","import type { AxiosResponse } from \"axios\";\n\n// Define the type for the callbacks object\nexport interface Callbacks {\n\tonFetching?: () => void;\n\tonSuccess?: (response: {\n\t\tdata: object;\n\t\tstatus: number;\n\t\tstatusText: string;\n\t}) => void;\n\tonError?: (error: string) => void;\n\tonSettled?: () => void;\n}\n\n// The fetchDataWithCallbacks function that accepts a Promise and a callbacks object\nasync function handler(promise: Promise<AxiosResponse>, callbacks?: Callbacks) {\n\t// Destructure callbacks from the object\n\tconst { onFetching, onSuccess, onError, onSettled } = callbacks ?? {};\n\n\t// Call the onFetching callback before making the request\n\tif (onFetching) onFetching();\n\n\t// Handle the Promise passed as an argument\n\tpromise\n\t\t.then(\n\t\t\t(response: {\n\t\t\t\tdata: object;\n\t\t\t\tstatus: number;\n\t\t\t\tstatusText: string;\n\t\t\t}) => {\n\t\t\t\t// Call the onSuccess callback if the Promise resolves successfully\n\t\t\t\tif (onSuccess)\n\t\t\t\t\tonSuccess({\n\t\t\t\t\t\tdata: response.data,\n\t\t\t\t\t\tstatus: response.status,\n\t\t\t\t\t\tstatusText: response.statusText,\n\t\t\t\t\t});\n\t\t\t},\n\t\t)\n\t\t.catch((error) => {\n\t\t\t// Call the onError callback if the Promise is rejected\n\t\t\tif (onError) onError(error);\n\t\t})\n\t\t.finally(() => {\n\t\t\t// Call the onSettled callback after the Promise is settled\n\t\t\tif (onSettled) onSettled();\n\t\t});\n}\n\nexport default handler;\n","const account = {\n\tv1: {\n\t\tprofile: \"profile\",\n\t},\n};\n\nexport default account;\n","const accounting = {\n\tv1: {\n\t\titem: \"item\",\n\t\titems: \"items\",\n\t\tinvoice: \"invoice\",\n\t\tsubmit_invoice: \"invoice/submit\",\n\t\tinvoices: \"invoices\",\n\t\titem_categories: \"item/category\",\n\t\titem_brands: \"item/brand\",\n\t},\n};\n\nexport default accounting;\n","const assets = {\n\tv1: {\n\t\timagePlaceholder: \"images/image-placeholder.webp\",\n\t\tavatar: \"images/avatar.webp\",\n\t},\n};\n\nexport default assets;\n","const auth = {\n\tv1: {\n\t\tsignin: \"signin\",\n\t\tregister: \"signup\",\n\t\tsignup: \"register\",\n\t\tlogout: \"logout\",\n\t\tauth_with_token: \"authenticate\",\n\t\tauth_with_key: \"verify\",\n\t\treset_password: \"recovery-password\",\n\t\tchange_password: \"change-password\"\n\t},\n};\n\nexport default auth;\n","const cms = {\n\tv1: {\n\t\tarticle: \"article\",\n\t\tarticles: \"articles\",\n\t\tarticleCategories: \"article/categories\",\n\t\tmcq: \"mcq\",\n\t\tmcqs: \"mcqs\",\n\t\tall_mcqs: \"mcqs/all\",\n\t\tmcqCategories: \"mcq/categories\",\n\t\tqna: \"qna\",\n\t\tqnas: \"qnas\",\n\t\tqnaCategories: \"qna/categories\",\n\t},\n};\n\nexport default cms;\n","const hr = {\n\tv1: {\n\t\tjob: \"job\",\n\t\tjobs: \"jobs\",\n\t\tresume: \"resume\"\n\t},\n};\n\nexport default hr;\n","const inventory = {\n\tv1: {\n\t\tstore: \"store\",\n\t\tstore_products: \"store/products\",\n\t},\n};\n\nexport default inventory;\n","const linkie = {\n\tv1: {\n\t\tshorten: \"shorten\",\n\t},\n};\n\nexport default linkie;\n","const lms = {\n\tv1: {\n\t\tcourses: \"courses\",\n\t\tcourse: \"courses/course\",\n\t\tmyCourses: \"enrollments/my-courses\",\n\t\tenrollCourse: \"enrollments\",\n\t\tgetEnrollStudents: \"enrollments/course\"\n\t}\n};\n\nexport default lms;\n","const payment = {\n\tv1: {\n\t\tcreate: \"\",\n\t\tverify: \"verify\",\n\t},\n};\n\nexport default payment;\n","const sales = {\r\n\tv1: {\r\n\t\taddLead: \"lead\"\r\n\t},\r\n};\r\n\r\nexport default sales;\r\n","const support = {\n\tv1: {\n\t\tticket: \"ticket\",\n\t\ttickets: \"tickets\",\n\t\tnewsletter: \"newsletter\",\n\t\tfeedback: \"feedback\"\n\t}\n};\n\nexport default support;\n","const tools = {\n\tv1: {\n\t\texchangeRates: \"exchange-rates\",\n\t},\n};\n\nexport default tools;\n","import account from \"../account/endpoint\";\nimport accounting from \"../accounting/endpoint\";\nimport assets from \"../assets/endpoint\";\nimport auth from \"../auth/endpoint\";\nimport cms from \"../content/endpoint\";\nimport hr from \"../hr/endpoint\";\nimport inventory from \"../inventory/endpoint\";\nimport linkie from \"../linkie/endpoint\";\nimport lms from \"../lms/endpoint\";\nimport payment from \"../payment/endpoint\";\nimport sales from \"../sales/endpoint\";\nimport support from \"../support/endpoint\";\nimport tools from \"../tools/endpoint\";\n\ninterface CategoryUrls {\n\t[version: string]: {\n\t\t[action: string]: string;\n\t};\n}\n\ninterface Urls {\n\t[category: string]: CategoryUrls;\n}\n\nconst urls: Urls = {\n\tauth,\n\tcms,\n\taccount,\n\taccounting,\n\tsupport,\n\tassets,\n\tpayment,\n\tinventory,\n\ttools,\n\tsales,\n\tlinkie,\n\thr,\n\tlms\n};\n\n// Function to get the URL dynamically based on category, version, and action\nexport function getUrl(\n\tcategory: string,\n\tversion: string,\n\taction: string,\n\tomitCategory: boolean = false\n): string {\n\tconst categoryData = urls[category]; // Access the correct category dynamically\n\tif (categoryData) {\n\t\tconst versionData = categoryData[version]; // Access the correct version dynamically\n\t\t// console.log(versionData?.[action]);\n\t\tif (versionData !== undefined) {\n\t\t\t// console.log(versionData[action]);\n\t\t\tif (omitCategory) {\n\t\t\t\treturn `/api/${version}/${versionData[action]}`;\n\t\t\t}\n\t\t\treturn `/api/${version}/${category}/${versionData[action]}`; // Construct the URL\n\t\t}\n\t\tthrow new Error(\n\t\t\t`Invalid action: ${action} for version: ${version} in category: ${category}`,\n\t\t);\n\t}\n\tthrow new Error(`Invalid category: ${category}`);\n}\n","import { post } from \"../config/axios\";\nimport handler from \"../config/handler\";\nimport { getUrl } from \"../config/route\";\nimport { clearStorage, getDataFromStorage } from \"../utils/localStorage\";\n\nconst logout = (\n\tdata: { data?: unknown },\n\t{\n\t\tconfig,\n\t\tonFetching,\n\t\tonSuccess,\n\t\tonError,\n\t\tonSettled,\n\t}: {\n\t\tonFetching?: () => void;\n\t\tonSuccess?: (data: object) => void;\n\t\tonError?: (error: string) => void;\n\t\tonSettled?: () => void;\n\t\tconfig?: { params: unknown };\n\t},\n) => {\n\treturn handler(\n\t\tpost(\n\t\t\tgetUrl(\"auth\", \"v1\", \"logout\"),\n\t\t\t{ ...data, fcm_token: getDataFromStorage(\"fcm_token\") },\n\t\t\tconfig,\n\t\t),\n\t\t{\n\t\t\tonFetching: () => onFetching?.(),\n\t\t\tonError: (error) => onError?.(error),\n\t\t\tonSuccess: (data) => {\n\t\t\t\tclearStorage([\"accountAccessToken\", \"accountInfo\", \"account_key\"]);\n\t\t\t\tonSuccess?.(data);\n\t\t\t\twindow.location.href = \"/\";\n\t\t\t},\n\t\t\tonSettled: () => onSettled?.(),\n\t\t},\n\t);\n};\n\nexport default logout;\n","import { post } from \"../config/axios\";\nimport handler from \"../config/handler\";\nimport { getUrl } from \"../config/route\";\nimport type { AuthRequestParams, SignupRequest } from \"./types\";\n\nconst register = (\n\tdata: SignupRequest,\n\t{\n\t\tconfig,\n\t\tonFetching,\n\t\tonSuccess,\n\t\tonError,\n\t\tonSettled,\n\t}: {\n\t\tonFetching?: () => void;\n\t\tonSuccess?: (data: object) => void;\n\t\tonError?: (error: string) => void;\n\t\tonSettled?: () => void;\n\t\tconfig?: { params: AuthRequestParams };\n\t},\n) => {\n\treturn handler(post(getUrl(\"auth\", \"v1\", \"register\"), data, config), {\n\t\tonFetching: () => onFetching?.(),\n\t\tonError: (error) => onError?.(error),\n\t\tonSuccess: (data) => onSuccess?.(data),\n\t\tonSettled: () => onSettled?.(),\n\t});\n};\n\nexport default register;\n","import { post } from \"../config/axios\";\nimport handler from \"../config/handler\";\nimport { getUrl } from \"../config/route\";\nimport type { AuthRequestParams, SignupRequest } from \"./types\";\n\nconst signup = (\n\tdata: SignupRequest,\n\t{\n\t\tconfig,\n\t\tonFetching,\n\t\tonSuccess,\n\t\tonError,\n\t\tonSettled,\n\t}: {\n\t\tonFetching?: () => void;\n\t\tonSuccess?: (data: object) => void;\n\t\tonError?: (error: string) => void;\n\t\tonSettled?: () => void;\n\t\tconfig?: { params: AuthRequestParams };\n\t},\n) => {\n\treturn handler(post(getUrl(\"auth\", \"v1\", \"signup\"), data, config), {\n\t\tonFetching: () => onFetching?.(),\n\t\tonError: (error) => onError?.(error),\n\t\tonSuccess: (data) => onSuccess?.(data),\n\t\tonSettled: () => onSettled?.(),\n\t});\n};\n\nexport default signup;\n","// import signin from \"./signin\";\nimport { GoogleAuthProvider, getAuth, signInWithPopup } from \"firebase/auth\";\nimport signup from \"./signup\";\nimport { getFirebase } from \"../config/index\";\n\ntype SignInGoogleProps = {\n\tonFetching?: () => void;\n\tonSuccess?: (data: object) => void;\n\tonError?: (error: unknown | string) => void;\n\tonSettled?: () => void;\n};\n\n// Function to handle Google Sign-In\nasync function signInWithGoogle({\n\tonSuccess,\n\tonError,\n\tonFetching,\n\tonSettled,\n}: SignInGoogleProps): Promise<void> {\n\ttry {\n\t\tconst provider = new GoogleAuthProvider();\n\t\tconst auth = getAuth(getFirebase());\n\t\tsignInWithPopup(auth, provider)\n\t\t\t.then((result) => {\n\t\t\t\t// This gives you a Google Access Token. You can use it to access the Google API.\n\t\t\t\tconst credential = GoogleAuthProvider.credentialFromResult(result);\n\t\t\t\t// const token = credential?.accessToken;\n\t\t\t\t// The signed-in user info.\n\t\t\t\tconst user = result.user;\n\t\t\t\t// console.log(user);\n\t\t\t\treturn signup(\n\t\t\t\t\t{\n\t\t\t\t\t\tprovider: \"Google\",\n\t\t\t\t\t\tuid: user.uid,\n\t\t\t\t\t\tname: String(user.displayName),\n\t\t\t\t\t\temail: String(user.email),\n\t\t\t\t\t\tusername: String(user.email),\n\t\t\t\t\t\tpassword: user.uid.substring(0, user.uid.length / 2),\n\t\t\t\t\t\t// token: token,\n\t\t\t\t\t\ttoday: new Date(),\n\t\t\t\t\t},\n\t\t\t\t\t{\n\t\t\t\t\t\tonFetching: () => onFetching?.(),\n\t\t\t\t\t\tonError: (error) => onError?.(error),\n\t\t\t\t\t\tonSuccess: (data) => onSuccess?.(data),\n\t\t\t\t\t\tonSettled: () => onSettled?.(),\n\t\t\t\t\t},\n\t\t\t\t);\n\t\t\t})\n\t\t\t.catch((error) => {\n\t\t\t\tonError?.(error);\n\t\t\t\treturn Promise.reject(\"Something Went Wrong\");\n\t\t\t\t// Handle Errors here.\n\t\t\t\t// const errorCode = error.code;\n\t\t\t\t// const errorMessage = error.message;\n\t\t\t\t// The email of the user's account used.\n\t\t\t\t// const email = error.customData.email;\n\t\t\t\t// The AuthCredential type that was used.\n\t\t\t\t// const credential = GoogleAuthProvider.credentialFromError(error);\n\t\t\t\t// ...\n\t\t\t});\n\t} catch (err) {\n\t\tonError?.(err);\n\t}\n}\n\nexport default signInWithGoogle;\n","import { post } from \"../config/axios\";\nimport handler from \"../config/handler\";\nimport { getUrl } from \"../config/route\";\nimport type { AuthRequest, AuthRequestParams } from \"./types\";\n\nconst signin = (\n\tdata: AuthRequest,\n\t{\n\t\tconfig,\n\t\tonFetching,\n\t\tonSuccess,\n\t\tonError,\n\t\tonSettled,\n\t}: {\n\t\tonFetching?: () => void;\n\t\tonSuccess?: (data: object) => void;\n\t\tonError?: (error: string) => void;\n\t\tonSettled?: () => void;\n\t\tconfig?: { params: AuthRequestParams };\n\t},\n) => {\n\treturn handler(post(getUrl(\"auth\", \"v1\", \"signin\"), data, config), {\n\t\tonFetching: () => onFetching?.(),\n\t\tonError: (error) => onError?.(error),\n\t\tonSuccess: (data) => onSuccess?.(data),\n\t\tonSettled: () => onSettled?.(),\n\t});\n};\n\nexport default signin;\n","import { post } from \"../config/axios\";\r\nimport handler from \"../config/handler\";\r\nimport { getUrl } from \"../config/route\";\r\nimport type { TokenRequest, AuthRequestParams } from \"./types\";\r\n\r\nconst authWithToken = (\r\n\tdata: TokenRequest,\r\n\t{\r\n\t\tconfig,\r\n\t\tonFetching,\r\n\t\tonSuccess,\r\n\t\tonError,\r\n\t\tonSettled,\r\n\t}: {\r\n\t\tonFetching?: () => void;\r\n\t\tonSuccess?: (data: object) => void;\r\n\t\tonError?: (error: string) => void;\r\n\t\tonSettled?: () => void;\r\n\t\tconfig?: { params: AuthRequestParams };\r\n\t},\r\n) => {\r\n\treturn handler(post(getUrl(\"auth\", \"v1\", \"auth_with_token\"), data, config), {\r\n\t\tonFetching: () => onFetching?.(),\r\n\t\tonError: (error) => onError?.(error),\r\n\t\tonSuccess: (data) => onSuccess?.(data),\r\n\t\tonSettled: () => onSettled?.(),\r\n\t});\r\n};\r\n\r\nexport default authWithToken;","import { post } from \"../config/axios\";\r\nimport handler from \"../config/handler\";\r\nimport { getUrl } from \"../config/route\";\r\nimport type { APIRequest, AuthRequestParams } from \"./types\";\r\n\r\nconst authWithKey = (\r\n\tdata: APIRequest,\r\n\t{\r\n\t\tconfig,\r\n\t\tonFetching,\r\n\t\tonSuccess,\r\n\t\tonError,\r\n\t\tonSettled,\r\n\t}: {\r\n\t\tonFetching?: () => void;\r\n\t\tonSuccess?: (data: object) => void;\r\n\t\tonError?: (error: string) => void;\r\n\t\tonSettled?: () => void;\r\n\t\tconfig?: { params: AuthRequestParams };\r\n\t},\r\n) => {\r\n\treturn handler(post(getUrl(\"auth\", \"v1\", \"auth_with_key\"), data, config), {\r\n\t\tonFetching: () => onFetching?.(),\r\n\t\tonError: (error) => onError?.(error),\r\n\t\tonSuccess: (data) => onSuccess?.(data),\r\n\t\tonSettled: () => onSettled?.(),\r\n\t});\r\n};\r\n\r\nexport default authWithKey","import { post } from \"../config/axios\";\r\nimport handler from \"../config/handler\";\r\nimport { getUrl } from \"../config/route\";\r\nimport type { AuthRequest, AuthRequestParams } from \"./types\";\r\n\r\nconst resetPassword = (\r\n data: AuthRequest,\r\n {\r\n config,\r\n onFetching,\r\n onSuccess,\r\n onError,\r\n onSettled,\r\n }: {\r\n onFetching?: () => void;\r\n onSuccess?: (data: object) => void;\r\n onError?: (error: string) => void;\r\n onSettled?: () => void;\r\n config?: { params: AuthRequestParams };\r\n },\r\n) => {\r\n return handler(post(getUrl(\"auth\", \"v1\", \"reset_password\"), data, config), {\r\n onFetching: () => onFetching?.(),\r\n onError: (error) => onError?.(error),\r\n onSuccess: (data) => onSuccess?.(data),\r\n onSettled: () => onSettled?.(),\r\n });\r\n};\r\n\r\nexport default resetPassword;\r\n","import cookie from \"js-cookie\";\nimport { jwtDecode } from \"jwt-decode\";\n// import type { NextPageContext } from \"next\";\nimport { getConfig } from \"../config/index\";\nimport { isAuth } from \"../utils/auth\";\nimport {\n\tgetDataFromStorage,\n\tsetDataInStorage,\n\tsetEncryptionKey,\n} from \"../utils/localStorage\";\nimport logout from \"./logout\";\nimport register from \"./register\";\nimport signInWithGoogle from \"./signInWithGoogle\";\nimport signIn from \"./signin\";\nimport signUp from \"./signup\";\nimport validateConfig from \"../config/validate\";\nimport authWithToken from \"./authWithToken\";\nimport authWithKey from \"./authWithKey\";\nimport resetPassword from \"./resetPassword\";\n\nconst Auth = {\n\tsignIn,\n\tsignUp,\n\tregister,\n\tresetPassword,\n\tsignInWithGoogle,\n\tsaveTokenToCookie: (token: string) => {\n\t\tvalidateConfig(['tokenKey']);\n\t\tconst { tokenKey } = getConfig();\n\t\tif (tokenKey) {\n\t\t\tcookie.set(tokenKey, token, { expires: 900000 });\n\t\t}\n\t\twindow.location.href = \"/\";\n\t},\n\tsaveTokenToStorage: (token: string) => {\n\t\tconst accountInfo: {\n\t\t\t_id: string;\n\t\t\tcreatedAt: string;\n\t\t} = jwtDecode(token);\n\t\tif (accountInfo) {\n\t\t\tsetEncryptionKey(\"account_key\", accountInfo._id + accountInfo.createdAt);\n\t\t\tsetDataInStorage(\"accountAccessToken\", token);\n\t\t\tsetDataInStorage(\"accountInfo\", accountInfo);\n\t\t}\n\t},\n\tgetTokenFromStorage: () => {\n\t\treturn getDataFromStorage(\"accountAccessToken\");\n\t},\n\tgetUserFromStrorage: () => {\n\t\treturn getDataFromStorage(\"accountInfo\");\n\t},\n\t/**\n\t * Action to update stored admin info in the redux\n\t * @param {string | object} key key or an object with key: value of the fields to be updated\n\t * @param {any} value value of the field to be updated (only if the key passed is of type string)\n\t */\n\tupdateUserInfo: (key?: string | object, value?: any) => () => {\n\t\tconsole.log(\"typeof key: \", typeof key, key);\n\t\ttry {\n\t\t\t// console.log(key);\n\t\t\tconst accountInfo = getDataFromStorage(\"accountInfo\");\n\t\t\tif (typeof key === \"object\") {\n\t\t\t\tlet updatedInfo = { ...accountInfo };\n\t\t\t\t// for..of\n\t\t\t\tfor (const [ky, value] of Object.entries(key)) {\n\t\t\t\t\tupdatedInfo = { ...updatedInfo, [ky]: value };\n\t\t\t\t}\n\t\t\t\t// console.log(updatedInfo);\n\t\t\t\tsetDataInStorage(\"accountInfo\", updatedInfo);\n\t\t\t} else if (typeof key === \"string\") {\n\t\t\t\tif (value) {\n\t\t\t\t\tsetDataInStorage(\"accountInfo\", { ...accountInfo, [key]: value });\n\t\t\t\t} else {\n\t\t\t\t\tconsole.error(\n\t\t\t\t\t\t\"Value is not provided for the given key to update admin info\",\n\t\t\t\t\t);\n\t\t\t\t}\n\t\t\t}\n\t\t} catch (error) {\n\t\t\tconsole.error(\"update logo action \", error);\n\t\t}\n\t},\n\tisAuthenticated: (cookie?: boolean) => {\n\t\tif (cookie) {\n\t\t\treturn isAuth();\n\t\t}\n\t\treturn getDataFromStorage(\"accountAccessToken\") !== undefined;\n\t},\n\t// getServerToken: (ctx: NextPageContext) => getServerSideToken(ctx),\n\tlogout,\n\tServer: {\n\t\tauthWithToken,\n\t\tauthWithKey\n\t}\n};\n\nexport default Auth;\n","import { post } from \"../config/axios\";\nimport handler from \"../config/handler\";\nimport { getUrl } from \"../config/route\";\nimport type { Order } from \"./types\";\n\nconst create = (\n\tdata: Order,\n\t{\n\t\tconfig,\n\t\tonFetching,\n\t\tonSuccess,\n\t\tonError,\n\t\tonSettled,\n\t}: {\n\t\tonFetching?: () => void;\n\t\tonSuccess?: (data: object) => void;\n\t\tonError?: (error: string) => void;\n\t\tonSettled?: () => void;\n\t\tconfig?: object;\n\t},\n) => {\n\treturn handler(post(getUrl(\"order\", \"v1\", \"create\"), data, config), {\n\t\tonFetching: () => onFetching?.(),\n\t\tonError: (error) => onError?.(error),\n\t\tonSuccess: (data) => onSuccess?.(data),\n\t\tonSettled: () => onSettled?.(),\n\t});\n};\n\nexport default create;\n","import create from \"./create\";\n\nconst Order = {\n\tcreate,\n};\n\nexport default Order;\n","import type { AxiosResponse } from \"axios\";\n\n// Define type for the handler options\ninterface AxiosRequestHandlerOptions {\n\tpromise: Promise<AxiosResponse<any>>; // The promise that resolves with Axios response\n\tonLoading?: (isLoading: boolean) => void; // Callback to show/hide loading state\n\tonSuccess?: (data: any) => void; // Callback for success response\n\tonError?: (error: any) => void; // Callback for error response\n\tonSettled?: () => void; // Callback for when request finishes (either success or failure)\n\tonProgress?: (progress: string) => void; // Callback for progress updates\n}\n\nconst handler = ({\n\tpromise,\n\tonLoading = () => {},\n\tonSuccess = () => {},\n\tonError = () => {},\n\tonSettled = () => {},\n\tonProgress = () => {},\n}: AxiosRequestHandlerOptions): void => {\n\t// Call onLoading at the start to show loading state\n\tonLoading(true);\n\n\t// Handling the passed promise\n\tpromise\n\t\t.then((response: AxiosResponse) => {\n\t\t\t// Show success state\n\t\t\tconsole.log(\"Request Success:\", response);\n\n\t\t\t// Execute success callback if provided\n\t\t\tif (onSuccess) {\n\t\t\t\tonSuccess(response.data);\n\t\t\t}\n\t\t})\n\t\t.catch((error: any) => {\n\t\t\t// Show error state\n\t\t\tconsole.error(\"Request Error:\", error);\n\n\t\t\t// Execute error callback if provided\n\t\t\tif (onError) {\n\t\t\t\tonError(error);\n\t\t\t}\n\t\t})\n\t\t.finally(() => {\n\t\t\t// Execute settled callback (on success or error)\n\t\t\tif (onSettled) {\n\t\t\t\tonSettled();\n\t\t\t}\n\n\t\t\t// Call onLoading to hide loading indicator after completion\n\t\t\tonLoading(false);\n\n\t\t\t// Hide loading indicator\n\t\t\tconsole.log(\"Request Completed\");\n\t\t});\n};\n\nexport default handler;\n","import type { AxiosRequestConfig } from \"axios\";\nimport { post } from \"../config/axios\";\nimport { getUrl } from \"../config/route\";\nimport handler from \"../utils/handler\";\n\n// Optional: if you have defined Order/VerifyPayment types\n// import type { Order } from \"../order/types\";\n// import type { VerifyPayment } from \"./types\";\n\ndeclare global {\n\tinterface Window {\n\t\tRazorpay: any; // Ideally, use proper types from @types/razorpay\n\t}\n}\n\ninterface PaymentData {\n\tamount: number;\n\tcurrency: string;\n\tpaymentService: string;\n\t[key: string]: any;\n}\n\ninterface StartOptions {\n\tconfig?: AxiosRequestConfig | null;\n\tonLoading?: (isLoading: boolean) => void;\n\tonSuccess?: (data: any) => void;\n\tonError?: (error: any) => void;\n\tonSettled?: () => void;\n}\n\nfunction start(\n\tdata: PaymentData,\n\t{\n\t\tconfig = null,\n\t\tonLoading = () => { },\n\t\tonSuccess = () => { },\n\t\tonError = () => { },\n\t\tonSettled = () => { },\n\t}: StartOptions = {},\n) {\n\treturn handler({\n\t\tpromise: post(\n\t\t\tgetUrl(\"payment\", \"v1\", \"create\"),\n\t\t\t{\n\t\t\t\t...data,\n\t\t\t\tmethod: {\n\t\t\t\t\tlabel: data.paymentService,\n\t\t\t\t\tcurrency: data.currency,\n\t\t\t\t},\n\t\t\t},\n\t\t\tconfig || undefined,\n\t\t),\n\t\tonLoading,\n\t\tonError: (error) => onError(error),\n\t\tonSuccess: (responseData: any) => {\n\t\t\tif (responseData?.method === \"Razor Pay\") {\n\t\t\t\tconst options = responseData.options;\n\t\t\t\toptions.handler = async (response: any) => {\n\t\t\t\t\t// console.log(\"Payment Success:\", response);\n\t\t\t\t\tonSuccess(response);\n\t\t\t\t\t// Validation call (if needed)\n\t\t\t\t};\n\t\t\t\tconst rzp1 = new window.Razorpay(options);\n\t\t\t\trzp1.on(\"payment.failed\", (response: any) => {\n\t\t\t\t\tonError(response);\n\t\t\t\t});\n\t\t\t\trzp1.open();\n\t\t\t}\n\t\t},\n\t\tonSettled,\n\t});\n}\n\nexport default start;\n","import type { AxiosRequestConfig } from \"axios\";\nimport { post } from \"../config/axios\";\nimport handler from \"../config/handler\";\nimport { getUrl } from \"../config/route\";\nimport type { SuccessProps } from \"./types\";\nimport type { VerifyPayment } from \"./types\";\n\nconst verify = (\n\tdata: VerifyPayment,\n\t{\n\t\tconfig,\n\t\tonFetching,\n\t\tonSuccess,\n\t\tonError,\n\t\tonSettled,\n\t}: {\n\t\tonFetching?: () => void;\n\t\tonSuccess?: (data: SuccessProps) => void;\n\t\tonError?: (error: string) => void;\n\t\tonSettled?: () => void;\n\t\tconfig?: AxiosRequestConfig<unknown>;\n\t},\n) => {\n\treturn handler(post(getUrl(\"payment\", \"v1\", \"verify\"), data, config), {\n\t\tonFetching: () => onFetching?.(),\n\t\tonError: (error) => onError?.(error),\n\t\tonSuccess: (data) => onSuccess?.(data),\n\t\tonSettled: () => onSettled?.(),\n\t});\n};\n\nexport default verify;\n","import start from \"./start\";\nimport verify from \"./verify\";\n\nconst Payment = {\n\tstart,\n\tverify,\n};\n\nexport default Payment;\n","import { get } from \"../config/axios\";\nimport { getUrl } from \"../config/route\";\n\nconst Content = {\n\tarticle: (slug: string) =>\n\t\tget(getUrl(\"cms\", \"v1\", \"article\"), {\n\t\t\tparams: {\n\t\t\t\tslug,\n\t\t\t},\n\t\t}),\n\tarticles: (config?: object | undefined) =>\n\t\tget(getUrl(\"cms\", \"v1\", \"articles\"), config),\n\tarticleCategories: (config?: object | undefined) =>\n\t\tget(getUrl(\"cms\", \"v1\", \"articleCategories\"), config),\n\tmcq: (slug: string) =>\n\t\tget(getUrl(\"cms\", \"v1\", \"mcq\"), {\n\t\t\tparams: {\n\t\t\t\tslug,\n\t\t\t},\n\t\t}),\n\tmcqs: (config?: object | undefined) =>\n\t\tget(getUrl(\"cms\", \"v1\", \"mcqs\"), config),\n\tallMcqs: (config?: object | undefined) =>\n\t\tget(getUrl(\"cms\", \"v1\", \"all_mcqs\"), config),\n\tmcqsCategories: (config?: object | undefined) =>\n\t\tget(getUrl(\"cms\", \"v1\", \"mcqCategories\"), config),\n\tqna: (slug: string) =>\n\t\tget(getUrl(\"cms\", \"v1\", \"qna\"), {\n\t\t\tparams: {\n\t\t\t\tslug,\n\t\t\t},\n\t\t}),\n\tqnas: (config?: object | undefined) =>\n\t\tget(getUrl(\"cms\", \"v1\", \"qnas\"), config),\n\tqnasCategories: (config?: object | undefined) =>\n\t\tget(getUrl(\"cms\", \"v1\", \"qnaCategories\"), config),\n};\n\nexport default Content;\n","import type { AuthRequestParams } from \"../auth/types\";\nimport { post } from \"../config/axios\";\nimport handler from \"../config/handler\";\nimport { getUrl } from \"../config/route\";\nimport type { Invoice } from \"./types\";\n\nconst createInvoice = (\n\tdata: Invoice,\n\t{\n\t\tconfig,\n\t\tonFetching,\n\t\tonSuccess,\n\t\tonError,\n\t\tonSettled,\n\t}: {\n\t\tonFetching?: () => void;\n\t\tonSuccess?: (data: object) => void;\n\t\tonError?: (error: string) => void;\n\t\tonSettled?: () => void;\n\t\tconfig?: { params: AuthRequestParams };\n\t},\n) => {\n\treturn handler(post(getUrl(\"accounting\", \"v1\", \"invoice\"), data, config), {\n\t\tonFetching: () => onFetching?.(),\n\t\tonError: (error) => onError?.(error),\n\t\tonSuccess: (data) => onSuccess?.(data),\n\t\tonSettled: () => onSettled?.(),\n\t});\n};\n\nexport default createInvoice;\n","import type { AuthRequestParams } from \"../auth/types\";\nimport { post } from \"../config/axios\";\nimport handler from \"../config/handler\";\nimport { getUrl } from \"../config/route\";\nimport type { SubmitInvoice } from \"./types\";\n\nconst submitInvoice = (\n\tdata: SubmitInvoice,\n\t{\n\t\tconfig,\n\t\tonFetching,\n\t\tonSuccess,\n\t\tonError,\n\t\tonSettled,\n\t}: {\n\t\tonFetching?: () => void;\n\t\tonSuccess?: (data: object) => void;\n\t\tonError?: (error: string) => void;\n\t\tonSettled?: () => void;\n\t\tconfig?: { params: AuthRequestParams };\n\t},\n) => {\n\treturn handler(\n\t\tpost(getUrl(\"accounting\", \"v1\", \"submit_invoice\"), data, config),\n\t\t{\n\t\t\tonFetching: () => onFetching?.(),\n\t\t\tonError: (error) => onError?.(error),\n\t\t\tonSuccess: (data) => onSuccess?.(data),\n\t\t\tonSettled: () => onSettled?.(),\n\t\t},\n\t);\n};\n\nexport default submitInvoice;\n","import type { AuthRequestParams } from \"../auth/types\";\nimport { put } from \"../config/axios\";\nimport handler from \"../config/handler\";\nimport { getUrl } from \"../config/route\";\nimport type { Invoice } from \"./types\";\n\nconst updateInvoice = (\n\tdata: Invoice,\n\t{\n\t\tconfig,\n\t\tonFetching,\n\t\tonSuccess,\n\t\tonError,\n\t\tonSettled,\n\t}: {\n\t\tonFetching?: () => void;\n\t\tonSuccess?: (data: object) => void;\n\t\tonError?: (error: string) => void;\n\t\tonSettled?: () => void;\n\t\tconfig?: { params: AuthRequestParams };\n\t},\n) => {\n\treturn handler(put(getUrl(\"accounting\", \"v1\", \"invoice\"), data, config), {\n\t\tonFetching: () => onFetching?.(),\n\t\tonError: (error) => onError?.(error),\n\t\tonSuccess: (data) => onSuccess?.(data),\n\t\tonSettled: () => onSettled?.(),\n\t});\n};\n\nexport default updateInvoice;\n","import { get } from \"../config/axios\";\nimport { getUrl } from \"../config/route\";\nimport createInvoice from \"./createInvoice\";\nimport submitInvoice from \"./submitInvoice\";\nimport updateInvoice from \"./updateInvoice\";\n\nconst Accounting = {\n\titem: (slug: string) =>\n\t\tget(getUrl(\"accounting\", \"v1\", \"item\"), {\n\t\t\tparams: {\n\t\t\t\tslug,\n\t\t\t},\n\t\t}),\n\titems: (config?: object | undefined) =>\n\t\tget(getUrl(\"accounting\", \"v1\", \"items\"), config),\n\tcreateInvoice,\n\tupdateInvoice,\n\tinvoices: (config?: object | undefined) =>\n\t\tget(getUrl(\"accounting\", \"v1\", \"invoices\"), config),\n\tsubmitInvoice,\n\titemCategories: () => get(getUrl(\"accounting\", \"v1\", \"item_categories\")),\n\titemBrands: () => get(getUrl(\"accounting\", \"v1\", \"item_brands\")),\n};\n\n\nexport type { Invoice, SubmitInvoice, PaymentInfo, Tax, Item } from \"./types\";\nexport default Accounting;\n","import { post } from \"../config/axios\";\r\nimport handler from \"../config/handler\";\r\nimport { getUrl } from \"../config/route\";\r\n\r\nconst feedback = (\r\n\tdata: unknown,\r\n\t{\r\n\t\tconfig,\r\n\t\tonFetching,\r\n\t\tonSuccess,\r\n\t\tonError,\r\n\t\tonSettled,\r\n\t}: {\r\n\t\tonFetching?: () => void;\r\n\t\tonSuccess?: (data: object) => void;\r\n\t\tonError?: (error: string) => void;\r\n\t\tonSettled?: () => void;\r\n\t\tconfig?: { params: unknown };\r\n\t},\r\n) => {\r\n\treturn handler(post(getUrl(\"support\", \"v1\", \"feedback\"), data, config), {\r\n\t\tonFetching: () => onFetching?.(),\r\n\t\tonError: (error) => onError?.(error),\r\n\t\tonSuccess: (data) => onSuccess?.(data),\r\n\t\tonSettled: () => onSettled?.(),\r\n\t});\r\n};\r\n\r\nexport default feedback;\r\n","import { post } from \"../config/axios\";\nimport handler from \"../config/handler\";\nimport { getUrl } from \"../config/route\";\n\nconst newsletter = (\n\tdata: unknown,\n\t{\n\t\tconfig,\n\t\tonFetching,\n\t\tonSuccess,\n\t\tonError,\n\t\tonSettled,\n\t}: {\n\t\tonFetching?: () => void;\n\t\tonSuccess?: (data: object) => void;\n\t\tonError?: (error: string) => void;\n\t\tonSettled?: () => void;\n\t\tconfig?: { params: unknown };\n\t},\n) => {\n\treturn handler(post(getUrl(\"support\", \"v1\", \"newsletter\"), data, config), {\n\t\tonFetching: () => onFetching?.(),\n\t\tonError: (error) => onError?.(error),\n\t\tonSuccess: (data) => onSuccess?.(data),\n\t\tonSettled: () => onSettled?.(),\n\t});\n};\n\nexport default newsletter;\n","import { post } from \"../config/axios\";\nimport handler from \"../config/handler\";\nimport { getUrl } from \"../config/route\";\n\nconst ticket = (\n\tdata: unknown,\n\t{\n\t\tconfig,\n\t\tonFetching,\n\t\tonSuccess,\n\t\tonError,\n\t\tonSettled,\n\t}: {\n\t\tonFetching?: () => void;\n\t\tonSuccess?: (data: object) => void;\n\t\tonError?: (error: string) => void;\n\t\tonSettled?: () => void;\n\t\tconfig?: { params: unknown };\n\t},\n) => {\n\treturn handler(post(getUrl(\"support\", \"v1\", \"ticket\"), data, config), {\n\t\tonFetching: () => onFetching?.(),\n\t\tonError: (error) => onError?.(error),\n\t\tonSuccess: (data) => onSuccess?.(data),\n\t\tonSettled: () => onSettled?.(),\n\t});\n};\n\nexport default ticket;\n","import { get } from \"../config/axios\";\nimport { getUrl } from \"../config/route\";\nimport feedback from \"./feedback\";\nimport newsletter from \"./newsletter\";\nimport ticket from \"./ticket\";\n\nconst Support = {\n\tticket,\n\tnewsletter,\n\ttickets: (config?: object | undefined) =>\n\t\tget(getUrl(\"support\", \"v1\", \"tickets\"), config),\n\tfeedback\n};\n\nexport default Support;\n\n\n","import { getConfig } from \"../config/index\";\nimport { getUrl } from \"../config/route\";\n\nconst Assets = {\n\timages: {\n\t\timagePlaceholder: getConfig().apiUrl + getUrl(\"assets\", \"v1\", \"imagePlaceholder\"),\n\t\tavatar: getConfig().apiUrl + getUrl(\"assets\", \"v1\", \"avatar\"),\n\t},\n};\n\nexport default Assets;\n","import type { AuthRequestParams } from \"../auth/types\";\nimport { put } from \"../config/axios\";\nimport handler from \"../config/handler\";\nimport { getUrl } from \"../config/route\";\nimport type { Profile } from \"./types\";\n\nconst updateProfile = (\n\tdata: Profile,\n\t{\n\t\tconfig,\n\t\tonFetching,\n\t\tonSuccess,\n\t\tonError,\n\t\tonSettled\n\t}: {\n\t\tonFetching?: () => void;\n\t\tonSuccess?: (data: object) => void;\n\t\tonError?: (error: string) => void;\n\t\tonSettled?: () => void;\n\t\tconfig?: { params: AuthRequestParams };\n\t},\n) => {\n\treturn handler(put(getUrl(\"account\", \"v1\", \"profile\"), data, config), {\n\t\tonFetching: () => onFetching?.(),\n\t\tonError: (error) => onError?.(error),\n\t\tonSuccess: (data) => onSuccess?.(data),\n\t\tonSettled: () => onSettled?.(),\n\t});\n};\n\nexport default updateProfile;\n","import { get } from \"../config/axios\";\nimport { getUrl } from \"../config/route\";\nimport updateProfile from \"./update_profile\";\n\nconst Account = {\n\tprofile: (id: string) =>\n\t\tget(getUrl(\"account\", \"v1\", \"profile\"), {\n\t\t\tparams: {\n\t\t\t\tid,\n\t\t\t},\n\t\t}),\n\tupdateProfile,\n};\n\n\nexport type { Profile } from \"./types\";\nexport default Account;\n","export default function shareUrl(title: string, url: string) {\n\t// URL encoding to ensure special characters are handled properly\n\tconst encodedTitle = encodeURIComponent(title);\n\tconst encodedUrl = encodeURIComponent(url);\n\tconst target = \"_blank\";\n\tconst dimension = \"width=600,height=400\";\n\t// Social media share URLs\n\tconst shareLinks = {\n\t\tfacebook: `https://www.facebook.com/sharer/sharer.php?u=${encodedUrl}`,\n\t\ttwitter: `https://twitter.com/intent/tweet?text=${encodedTitle}&url=${encodedUrl}`,\n\t\tlinkedin: `https://www.linkedin.com/sharing/share-offsite/?url=${encodedUrl}`,\n\t\twhatsapp: `https://api.whatsapp.com/send?text=${encodedTitle} ${encodedUrl}`,\n\t\tpinterest: `https://www.pinterest.com/pin/create/button/?url=${encodedUrl}&description=${encodedTitle}`,\n\t};\n\n\treturn {\n\t\tfacebook: () => window.open(shareLinks.facebook, target, dimension),\n\t\ttwitter: () => window.open(shareLinks.twitter, target, dimension),\n\t\tlinkedin: () => window.open(shareLinks.linkedin, target, dimension),\n\t\twhatsapp: () => window.open(shareLinks.whatsapp, target, dimension),\n\t\tpinterest: () => window.open(shareLinks.pinterest, target, dimension),\n\t};\n}\n","import type { AxiosRequestConfig } from \"axios\";\r\nimport { post } from \"../config/axios\";\r\nimport { getUrl } from \"../config/route\";\r\nimport handler from \"../utils/handler\";\r\nimport type { Lead } from \"./types\";\r\n\r\ninterface StartOptions {\r\n\tconfig?: AxiosRequestConfig | null;\r\n\tonLoading?: (isLoading: boolean) => void;\r\n\tonSuccess?: (data: any) => void;\r\n\tonError?: (error: any) => void;\r\n\tonSettled?: () => void;\r\n}\r\n\r\nexport function addLead(\r\n\tdata: Lead,\r\n\t{\r\n\t\tconfig = null,\r\n\t\tonLoading = () => { },\r\n\t\tonSuccess = () => { },\r\n\t\tonError = () => { },\r\n\t\tonSettled = () => { },\r\n\t}: StartOptions = {},\r\n) {\r\n\treturn handler({\r\n\t\tpromise: post(\r\n\t\t\tgetUrl(\"sales\", \"v1\", \"addLead\"),\r\n\t\t\t{\r\n\t\t\t\t...data\r\n\t\t\t},\r\n\t\t\tconfig || undefined,\r\n\t\t),\r\n\t\tonLoading,\r\n\t\tonError: (error) => onError(error),\r\n\t\tonSuccess: (responseData: any) => {\r\n\t\t\tonSuccess(responseData);\r\n\t\t},\r\n\t\tonSettled,\r\n\t});\r\n}\r\n","import { addLead } from \"./lead\";\r\nimport { Lead, LeadSource, LeadStatus } from \"./types\";\r\n\r\nconst Sales = {\r\n\taddLead,\r\n};\r\n\r\nexport type { \r\n\tLeadSource,\r\n\tLeadStatus,\r\n\tLead\r\n}\r\n\r\nexport default Sales;","import { get } from \"../config/axios\";\nimport { getUrl } from \"../config/route\";\n\nconst Inventory = {\n\tgetStoreById: (id: string) =>\n\t\tget(getUrl(\"inventory\", \"v1\", \"store\"), {\n\t\t\tparams: {\n\t\t\t\tid,\n\t\t\t},\n\t\t}),\n\tgetStoreBySlug: (slug: string) =>\n\t\tget(getUrl(\"inventory\", \"v1\", \"store\"), {\n\t\t\tparams: {\n\t\t\t\tslug,\n\t\t\t},\n\t\t}),\n\tgetStoreProducts: (\n\t\tslug: string,\n\t\tcategory: string,\n\t\tbrand: string,\n\t\tprice: string,\n\t\tsearch: string,\n\t) =>\n\t\tget(getUrl(\"inventory\", \"v1\", \"store_products\"), {\n\t\t\tparams: {\n\t\t\t\tslug,\n\t\t\t\tcategory,\n\t\t\t\tbrand,\n\t\t\t\tprice,\n\t\t\t\tsearch,\n\t\t\t},\n\t\t}),\n};\n\nexport default Inventory;\n","import { get, post } from \"../config/axios\";\nimport handler from \"../config/handler\";\nimport { getUrl } from \"../config/route\";\n\nconst exchangeRates = (\n\tdata: unknown,\n\t{\n\t\tconfig,\n\t\tonFetching,\n\t\tonSuccess,\n\t\tonError,\n\t\tonSettled,\n\t}: {\n\t\tonFetching?: () => void;\n\t\tonSuccess?: (data: object) => void;\n\t\tonError?: (error: string) => void;\n\t\tonSettled?: () => void;\n\t\tconfig?: {\n\t\t\tparams: {\n\t\t\t\tfrom?: string;\n\t\t\t\tto?: string;\n\t\t\t};\n\t\t};\n\t},\n) => {\n\treturn handler(get(getUrl(\"tools\", \"v1\", \"exchangeRates\"), config), {\n\t\tonFetching: () => onFetching?.(),\n\t\tonError: (error) => onError?.(error),\n\t\tonSuccess: (data) => onSuccess?.(data),\n\t\tonSettled: () => onSettled?.(),\n\t});\n};\n\nexport default exchangeRates;\n\n// export async function convertCurrency(amount: number, fromCurrency?: string, toCurrency?: string) {\n// try {\n// const rates = await getExchangeRates(fromCurrency);\n// if (!rates[toCurrency]) {\n// throw new Error(`Currency ${toCurrency} is not available.`);\n// }\n// const convertedAmount = (amount * rates[toCurrency]).toFixed(2);\n// return convertedAmount;\n// } catch (error) {\n// console.error('Error converting currency:', error);\n// throw error;\n// }\n// }\n","import exchangeRates from \"./exchangeRates\";\n\nconst Tools = {\n\texchangeRates,\n};\n\nexport default Tools;\n","import type { AuthRequestParams } from \"../auth/types\";\r\nimport { linkiePost } from \"../config/axios\";\r\nimport handler from \"../config/handler\";\r\nimport { getUrl } from \"../config/route\";\r\nimport type { ShortenRequest } from \"./types\";\r\n\r\nconst shortUrl = (\r\n\tdata: ShortenRequest,\r\n\t{\r\n\t\tconfig,\r\n\t\tonFetching,\r\n\t\tonSuccess,\r\n\t\tonError,\r\n\t\tonSettled,\r\n\t}: {\r\n\t\tonFetching?: () => void;\r\n\t\tonSuccess?: (data: object) => void;\r\n\t\tonError?: (error: string) => void;\r\n\t\tonSettled?: () => void;\r\n\t\tconfig?: { params: AuthRequestParams };\r\n\t},\r\n) => {\r\n\treturn handler(linkiePost(getUrl(\"linkie\", \"v1\", \"shorten\", true), data, config), {\r\n\t\tonFetching: () => onFetching?.(),\r\n\t\tonError: (error) => onError?.(error),\r\n\t\tonSuccess: (data) => onSuccess?.(data),\r\n\t\tonSettled: () => onSettled?.(),\r\n\t});\r\n};\r\n\r\nexport default shortUrl;","// import cookie from \"js-cookie\";\n// import { jwtDecode } from \"jwt-decode\";\n// import type { NextPageContext } from \"next\";\n// import { getConfig } from \"../config/index\";\n// import { isAuth } from \"../utils/auth\";\n// import {\n// \tgetDataFromStorage,\n// \tsetDataInStorage,\n// \tsetEncryptionKey,\n// } from \"../utils/localStorage\";\nimport shortUrl from \"./shortUrl\";\n\nconst Linkie = {\n\tshortUrl\n};\n\nexport default Linkie;\n","import type { AuthRequestParams } from \"../auth/types\";\r\nimport { get } from \"../config/axios\";\r\nimport handler from \"../config/handler\";\r\nimport { getConfig } from \"../config\";\r\n\r\nconst getCities = (\r\n\t{\r\n\t\tconfig,\r\n\t\tonFetching,\r\n\t\tonSuccess,\r\n\t\tonError,\r\n\t\tonSettled\r\n\t}: {\r\n\t\tonFetching?: () => void;\r\n\t\tonSuccess?: (data: object) => void;\r\n\t\tonError?: (error: string) => void;\r\n\t\tonSettled?: () => void;\r\n\t\tconfig?: { params: AuthRequestParams };\r\n\t},\r\n) => {\r\n\treturn handler(get(`${getConfig().apisUrl}/api/countries/v1/city`, config), {\r\n\t\tonFetching: () => onFetching?.(),\r\n\t\tonError: (error) => onError?.(error),\r\n\t\tonSuccess: (data) => onSuccess?.(data),\r\n\t\tonSettled: () => onSettled?.(),\r\n\t});\r\n};\r\n\r\nexport default getCities;\r\n","import type { AuthRequestParams } from \"../auth/types\";\r\nimport { get } from \"../config/axios\";\r\nimport handler from \"../config/handler\";\r\nimport { getConfig } from \"../config\";\r\n\r\nconst getCountries = (\r\n\t{\r\n\t\tconfig,\r\n\t\tonFetching,\r\n\t\tonSuccess,\r\n\t\tonError,\r\n\t\tonSettled\r\n\t}: {\r\n\t\tonFetching?: () => void;\r\n\t\tonSuccess?: (data: object) => void;\r\n\t\tonError?: (error: string) => void;\r\n\t\tonSettled?: () => void;\r\n\t\tconfig?: { params: AuthRequestParams };\r\n\t},\r\n) => {\r\n\treturn handler(get(`${getConfig().apisUrl}/api/countries/v1`, config), {\r\n\t\tonFetching: () => onFetching?.(),\r\n\t\tonError: (error) => onError?.(error),\r\n\t\tonSuccess: (data) => onSuccess?.(data),\r\n\t\tonSettled: () => onSettled?.(),\r\n\t});\r\n};\r\n\r\nexport default getCountries;\r\n","import type { AuthRequestParams } from \"../auth/types\";\r\nimport { get } from \"../config/axios\";\r\nimport handler from \"../config/handler\";\r\nimport { getConfig } from \"../config/index\";\r\n\r\nconst getStates = (\r\n\t{\r\n\t\tconfig,\r\n\t\tonFetching,\r\n\t\tonSuccess,\r\n\t\tonError,\r\n\t\tonSettled\r\n\t}: {\r\n\t\tonFetching?: () => void;\r\n\t\tonSuccess?: (data: object) => void;\r\n\t\tonError?: (error: string) => void;\r\n\t\tonSettled?: () => void;\r\n\t\tconfig?: { params: AuthRequestParams };\r\n\t},\r\n) => {\r\n\treturn handler(get(`${getConfig().apisUrl}/api/countries/v1/state`, config), {\r\n\t\tonFetching: () => onFetching?.(),\r\n\t\tonError: (error) => onError?.(error),\r\n\t\tonSuccess: (data) => onSuccess?.(data),\r\n\t\tonSettled: () => onSettled?.(),\r\n\t});\r\n};\r\n\r\nexport default getStates;\r\n","import getCities from \"./cities\";\r\nimport getCountries from \"./countries\";\r\nimport getStates from \"./states\";\r\n\r\nconst Apis = {\r\n getCountries,\r\n getStates,\r\n getCities\r\n};\r\n\r\nexport default Apis;\r\n","import type { AuthRequestParams } from \"../auth/types\";\r\nimport { post } from \"../config/axios\";\r\nimport handler from \"../config/handler\";\r\nimport { getUrl } from \"../config/route\";\r\n\r\nconst addResume = (\r\n\tdata: any,\r\n\t{\r\n\t\tconfig,\r\n\t\tonFetching,\r\n\t\tonSuccess,\r\n\t\tonError,\r\n\t\tonSettled\r\n\t}: {\r\n\t\tonFetching?: () => void;\r\n\t\tonSuccess?: (data: object) => void;\r\n\t\tonError?: (error: string) => void;\r\n\t\tonSettled?: () => void;\r\n\t\tconfig?: { params: AuthRequestParams };\r\n\t}\r\n) => {\r\n\treturn handler(post(getUrl(\"hr\", \"v1\", \"resume\"), data, config), {\r\n\t\tonFetching: () => onFetching?.(),\r\n\t\tonError: (error) => onError?.(error),\r\n\t\tonSuccess: (data) => onSuccess?.(data),\r\n\t\tonSettled: () => onSettled?.(),\r\n\t});\r\n};\r\n\r\nexport default addResume;\r\n","import type { AuthRequestParams } from \"../auth/types\";\nimport { put } from \"../config/axios\";\nimport handler from \"../config/handler\";\nimport { getUrl } from \"../config/route\";\nimport type { Job } from \"./types\";\n\nconst postJob = (\n\tdata: Job,\n\t{\n\t\tconfig,\n\t\tonFetching,\n\t\tonSuccess,\n\t\tonError,\n\t\tonSettled\n\t}: {\n\t\tonFetching?: () => void;\n\t\tonSuccess?: (data: object) => void;\n\t\tonError?: (error: string) => void;\n\t\tonSettled?: () => void;\n\t\tconfig?: { params: AuthRequestParams };\n\t}\n) => {\n\treturn handler(put(getUrl(\"hr\", \"v1\", \"job\"), data, config), {\n\t\tonFetching: () => onFetching?.(),\n\t\tonError: (error) => onError?.(error),\n\t\tonSuccess: (data) => onSuccess?.(data),\n\t\tonSettled: () => onSettled?.(),\n\t});\n};\n\nexport default postJob;\n","import { get } from \"../config/axios\";\nimport { getUrl } from \"../config/route\";\nimport postResume from \"./add_resume\";\nimport postJob from \"./post_job\";\n\nconst Hr = {\n\tgetJobById: (id: string) =>\n\t\tget(getUrl(\"hr\", \"v1\", \"job\"), {\n\t\t\tparams: {\n\t\t\t\tid,\n\t\t\t},\n\t\t}),\n\tgetJobs: (id?: string) =>\n\t\tget(getUrl(\"hr\", \"v1\", \"jobs\"), {\n\t\t\tparams: {\n\t\t\t\tid,\n\t\t\t},\n\t\t}),\n\tpostJob,\n\tpostResume\n};\n\n\nexport type { Job } from \"./types\";\nexport default Hr;\n","import type { AuthRequestParams } from \"../auth/types\";\nimport { put } from \"../config/axios\";\nimport handler from \"../config/handler\";\nimport { getUrl } from \"../config/route\";\nimport type { Job } from \"./types\";\n\nconst postCourse = (\n\tdata: Job,\n\t{\n\t\tconfig,\n\t\tonFetching,\n\t\tonSuccess,\n\t\tonError,\n\t\tonSettled\n\t}: {\n\t\tonFetching?: () => void;\n\t\tonSuccess?: (data: object) => void;\n\t\tonError?: (error: string) => void;\n\t\tonSettled?: () => void;\n\t\tconfig?: { params: AuthRequestParams };\n\t}\n) => {\n\treturn handler(put(getUrl(\"lms\", \"v1\", \"courses\", true), data, config), {\n\t\tonFetching: () => onFetching?.(),\n\t\tonError: (error) => onError?.(error),\n\t\tonSuccess: (data) => onSuccess?.(data),\n\t\tonSettled: () => onSettled?.(),\n\t});\n};\n\nexport default postCourse;\n","import { get } from \"../config/axios\";\nimport { getUrl } from \"../config/route\";\nimport postCourse from \"./post_course\";\n\nconst LMS = {\n\tgetCourseById: (id: string) =>\n\t\tget(getUrl(\"lms\", \"v1\", \"course\", true), {\n\t\t\tparams: {\n\t\t\t\tid,\n\t\t\t},\n\t\t}),\n\tgetCourses: () =>\n\t\tget(getUrl(\"lms\", \"v1\", \"courses\", true), {\n\t\t\tparams: {\n\t\t\t},\n\t\t}),\n\tgetMyCourses: () =>\n\t\tget(getUrl(\"lms\", \"v1\", \"myCourses\", true), {\n\t\t\tparams: {\n\t\t\t},\n\t\t}),\n\tgetEnrollStudents: () =>\n\t\tget(getUrl(\"lms\", \"v1\", \"getEnrollStudents\", true), {\n\t\t\tparams: {\n\t\t\t},\n\t\t}),\n\tpostCourse\n};\n\n\nexport type { Job } from \"./types\";\nexport default LMS;\n"],"names":["handler","signIn","signUp","cookie","postResume"],"mappings":";;;;;;;AAAA;AAKA,SAAS,cAAc,CAAC,YAA8B,EAAA;AACpD,IAAA,MAAM,MAAM,GAAG,SAAS,EAAE;IAE1B,MAAM,WAAW,GAAG,YAAY,CAAC,MAAM,CAAC,CAAC,GAAG,KAAI;AAC9C,QAAA,OAAO,CAAC,MAAM,CAAC,GAAG,CAAC,CAAC;AACtB,IAAA,CAAC,CAAC;AAEF,IAAA,IAAI,WAAW,CAAC,MAAM,GAAG,CAAC,EAAE;QAC1B,MAAM,IAAI,KAAK,CACb,CAAA,2DAAA,EAA8D,WAAW,CAAC,IAAI,CAAC,IAAI,CAAC,CAAA,EAAA,CAAI;AACxF,YAAA,sFAAsF,CACvF;IACH;AACF;;ACQA,IAAI,MAAM,GAAW;AACnB,IAAA,QAAQ,EAAE,EAAE;AACZ,IAAA,MAAM,EAAE,IAAI;AACZ,IAAA,MAAM,EAAE,0BAA0B;AAClC,IAAA,MAAM,EAAE,EAAE;AACV,IAAA,OAAO,EAAE,2BAA2B;AACpC,IAAA,MAAM,EAAE,0BAA0B;AAClC,IAAA,WAAW,EAAE,YAAY;AACzB,IAAA,QAAQ,EAAE;CACX;AAEK,SAAU,aAAa,CAAC,SAA0B,EAAA;IACtD,MAAM,GAAG,EAAE,GAAG,MAAM,EAAE,GAAG,SAAS,EAAE;AACpC,IAAA,cAAc,CAAC,CAAC,QAAQ,EAAE,UAAU,CAAC,CAAC;AACxC;SAEgB,WAAW,GAAA;AACzB,IAAA,cAAc,CAAC,CAAC,UAAU,CAAC,CAAC;AAC5B,IAAA,MAAM,SAAS,GAAG,SAAS,EAAE;AAC7B,IAAA,IAAI,SAAS,CAAC,QAAQ,EAAE;;;;QAItB,OAAO,QAAQ,CAAC,aAAa,CAAC,SAAS,CAAC,QAAQ,CAAC;IACnD;AACA,IAAA,MAAM,IAAI,KAAK,CACb,CAAA,4DAAA,CAA8D,CAC/D;AACH;SAEgB,SAAS,GAAA;AACvB,IAAA,OAAO,MAAM;AACf;;ACrDO,MAAM,SAAS,GAAG,CACxB,GAAG,GAAG,SAAS,EAAE,CAAC,QAAQ,KACH;;AAEvB,IAAA,IAAI,GAAG;AAAE,QAAA,OAAO,OAAO,CAAC,GAAG,CAAC,GAAG,CAAC;AAChC,IAAA,OAAO,EAAE;AACV;AAEO,MAAM,MAAM,GAAG,MAAM,CAAC,CAAC,SAAS,EAAE;AAEzC;AACA;AACA;AACA;;AChBA;;;;AAIG;AACG,SAAU,gBAAgB,CAAC,GAAW,EAAE,KAAa,EAAA;AAC1D,IAAA,IAAW,KAAK,EAAE;QACjB,MAAM,SAAS,GAAG,QAAQ,CAAC,MAAM,CAAC,GAAG,CAAC,CAAC,QAAQ,EAAE;;QAEjD,MAAM,UAAU,GAAG,QAAQ,CAAC,MAAM,CAAC,KAAK,CAAC,CAAC,QAAQ,EAAE;AAEpD,QAAA,YAAY,CAAC,OAAO,CAAC,SAAS,EAAE,IAAI,CAAC,SAAS,CAAC,UAAU,CAAC,CAAC;IAC5D;SAAO;AACN,QAAA,OAAO,CAAC,KAAK,CAAC,kBAAkB,CAAC;IAClC;AACD;AAEA;;;;AAIG;AACH;AACM,SAAU,gBAAgB,CAAC,GAAW,EAAA;AAC3C,IAAA,IAAI;QACH,MAAM,MAAM,GAAG,QAAQ,CAAC,MAAM,CAAC,GAAG,CAAC,CAAC,QAAQ,EAAE;;AAE9C,QAAA,OAAO,YAAY,CAAC,OAAO,CAAC,MAAM,CAAC;IACpC;IAAE,OAAO,GAAG,EAAE;AACb,QAAA,OAAO,CAAC,KAAK,CAAC,+BAA+B,CAAC;IAC/C;AACD;AAMA;;;;;;AAMG;AACG,SAAU,gBAAgB,CAAC,GAAW,EAAE,IAAqB,EAAA;;IAElE,MAAM,MAAM,GAAG,QAAQ,CAAC,MAAM,CAAC,GAAG,CAAC,CAAC,QAAQ,EAAE;IAE9C,MAAM,UAAU,GAAG,aAAa;AAEhC,IAAA,MAAM,aAAa,GAAG,gBAAgB,CAAC,UAAU,CAAC;;IAIlD,IAAI,aAAa,EAAE;;QAElB,MAAM,UAAU,GAAG,QAAQ,CAAC,GAAG,CAAC,OAAO,CACtC,IAAI,CAAC,SAAS,CAAC,IAAI,CAAC,EACpB,aAAa,CACb,CAAC,QAAQ,EAAE;AAEZ,QAAA,YAAY,CAAC,OAAO,CAAC,MAAM,EAAE,IAAI,CAAC,SAAS,CAAC,UAAU,CAAC,CAAC;IACzD;AACD;AAEA;;;;;;AAMG;AACH;AACM,SAAU,kBAAkB,CAAC,GAAW,EAAA;AAC7C,IAAA,IAAI;QACH,MAAM,MAAM,GAAG,QAAQ,CAAC,MAAM,CAAC,GAAG,CAAC,CAAC,QAAQ,EAAE;QAE9C,MAAM,UAAU,GAAG,aAAa;AAEhC,QAAA,MAAM,aAAa,GAAG,gBAAgB,CAAC,UAAU,CAAC;;;;;;;;AASlD,QAAA,IAAI,aAAa,IAAI,MAAM,EAAE;AAC5B,YAAA,MAAM,UAAU,GAAG,IAAI,CAAC,KAAK,CAAC,MAAM,CAAC,YAAY,CAAC,OAAO,CAAC,MAAM,CAAC,CAAC,CAAC;YACnE,IAAI,UAAU,EAAE;;AAEf,gBAAA,MAAM,KAAK,GAAG,QAAQ,CAAC,GAAG,CAAC,OAAO,CAAC,UAAU,EAAE,aAAa,CAAC;AAC7D,gBAAA,MAAM,YAAY,GAAG,KAAK,CAAC,QAAQ,CAAC,QAAQ,CAAC,GAAG,CAAC,IAAI,CAAC;;AAEtD,gBAAA,OAAO,IAAI,CAAC,KAAK,CAAC,YAAY,CAAC;YAChC;QACD;IACD;IAAE,OAAO,GAAG,EAAE;;IAEd;AACD;AAEA;;;AAGG;AACH;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACM,SAAU,YAAY,CAAC,IAAc,EAAA;AAC1C,IAAA,IAAI;AACH,QAAA,IAAI,KAAK,CAAC,OAAO,CAAC,IAAI,CAAC,EAAE;AACxB,YAAA,KAAK,MAAM,GAAG,IAAI,IAAI,EAAE;gBACvB,MAAM,MAAM,GAAG,QAAQ,CAAC,MAAM,CAAC,GAAG,CAAC,CAAC,QAAQ,EAAE;AAC9C,gBAAA,YAAY,CAAC,UAAU,CAAC,MAAM,CAAC;YAChC;QACD;AAAO,aAAA,IAAI,OAAO,IAAI,KAAK,QAAQ,EAAE;YACpC,MAAM,MAAM,GAAG,QAAQ,CAAC,MAAM,CAAC,IAAI,CAAC,CAAC,QAAQ,EAAE;AAC/C,YAAA,YAAY,CAAC,UAAU,CAAC,MAAM,CAAC;QAChC;IACD;IAAE,OAAO,GAAG,EAAE;AACb,QAAA,OAAO,CAAC,KAAK,CAAC,wBAAwB,EAAE,GAAG,CAAC;IAC7C;AACD;;ACzIO,MAAM,SAAS,GAAG,cAAc;AAUvC;;ACKO,MAAM,IAAI,GAAG,KAAK,CAAC,MAAM,CAAC;AAChC,IAAA,eAAe,EAAE,IAAI;AACrB,IAAA,OAAO,EAAE;AACR,QAAA,6BAA6B,EAAE,GAAG;AAClC,QAAA,cAAc,EAAE,kBAAkB;AAClC,KAAA;AACD,CAAA,CAAC;AAEF,IAAI,CAAC,YAAY,CAAC,OAAO,CAAC,GAAG,CAAC,CAAC,MAAM,KAAI;AACxC,IAAA,cAAc,CAAC,CAAC,QAAQ,EAAE,QAAQ,CAAC,CAAC;AACpC,IAAA,MAAM,EAAE,MAAM,EAAE,GAAG,SAAS,EAAE;AAC9B,IAAA,MAAM,CAAC,OAAO,GAAG,MAAM;AACvB,IAAA,IAAI,MAAM,CAAC,OAAO,EAAE;AACnB,QAAA,MAAM,CAAC,OAAO,CAAC,cAAc,CAAC,GAAG,kBAAkB;QACnD,MAAM,CAAC,OAAO,CAAC,aAAa,GAAG,CAAA,OAAA,EAAU,SAAS,EAAE,CAAA,CAAE,IAAI,EAAE;AAC5D,QAAA,MAAM,CAAC,OAAO,CAAC,YAAY,CAAC;AAC3B,YAAA,CAAA,OAAA,EAAU,SAAS,EAAE,CAAC,MAAM,CAAA,CAAE,IAAI,EAAE;IACtC;AACA,IAAA,OAAO,MAAM;AACd,CAAC,EAAE,OAAO,CAAC,MAAM,CAAC;AAEX,MAAM,IAAI,GAAG,CACnB,QAAgB,EAChB,IAAc,EACd,MAAoC,KAEpC,IAAI,OAAO,CAAC,CAAC,OAAO,EAAE,MAAM,KAC3B;AACE,KAAA,IAAI,CAAC,QAAQ,EAAE,IAAI,EAAE,MAAM;KAC3B,IAAI,CAAC,OAAO;AACZ,KAAA,KAAK,CAAC,CAAC,CAAC,KAAK,MAAM,CAAC,CAAC,CAAC,QAAQ,EAAE,IAAI,CAAC,CAAC,CACxC;AAEK,MAAM,GAAG,GAAG,CAClB,QAAgB,EAChB,IAAc,EACd,MAAoC,KAEpC,IAAI,OAAO,CAAC,CAAC,OAAO,EAAE,MAAM,KAC3B;AACE,KAAA,GAAG,CAAC,QAAQ,EAAE,IAAI,EAAE,MAAM;KAC1B,IAAI,CAAC,OAAO;AACZ,KAAA,KAAK,CAAC,CAAC,CAAC,KAAK,MAAM,CAAC,CAAC,CAAC,QAAQ,EAAE,IAAI,CAAC,CAAC,CACxC;AAEK,MAAM,GAAG,GAAG,CAClB,QAAgB,EAChB,MAAoC,KACT;;IAE3B,OAAO,IAAI,OAAO,CAAC,CAAC,OAAO,EAAE,MAAM,KAClC;AACE,SAAA,GAAG,CAAC,QAAQ,EAAE,MAAM;SACpB,IAAI,CAAC,OAAO;AACZ,SAAA,KAAK,CAAC,CAAC,CAAC,KAAK,MAAM,CAAC,CAAC,CAAC,QAAQ,EAAE,IAAI,CAAC,CAAC,CACxC;AACF,CAAC;AAwBD;AACA;AACA;AAEO,MAAM,KAAK,GAAG,KAAK,CAAC,MAAM,CAAC;AACjC,IAAA,eAAe,EAAE,IAAI;AACrB,IAAA,OAAO,EAAE;AACR,QAAA,6BAA6B,EAAE,GAAG;AAClC,QAAA,cAAc,EAAE,kBAAkB;AAClC,KAAA;AACD,CAAA,CAAC;AAEF,KAAK,CAAC,YAAY,CAAC,OAAO,CAAC,GAAG,CAAC,CAAC,MAAM,KAAI;IACzC,cAAc,CAAC,CAAC,QAAQ,EAAE,UAAU,EAAE,WAAW,CAAC,CAAC;AACnD,IAAA,MAAM,EAAE,SAAS,EAAE,GAAG,SAAS,EAAE;AACjC,IAAA,MAAM,CAAC,OAAO,GAAG,SAAS;AAC1B,IAAA,IAAI,MAAM,CAAC,OAAO,EAAE;AACnB,QAAA,MAAM,CAAC,OAAO,CAAC,cAAc,CAAC,GAAG,kBAAkB;AACnD,QAAA,MAAM,CAAC,OAAO,CAAC,aAAa,GAAG,YAAY,CAAC,OAAO,CAAC,SAAS,CAAC,IAAI,EAAE;AACpE,QAAA,MAAM,CAAC,OAAO,CAAC,YAAY,CAAC;AAC3B,YAAA,CAAA,OAAA,EAAU,SAAS,EAAE,CAAC,MAAM,CAAA,CAAE,IAAI,EAAE;IACtC;AACA,IAAA,OAAO,MAAM;AACd,CAAC,EAAE,OAAO,CAAC,MAAM,CAAC;AAElB;AACA;AACA;AACA;AACA;AACA;AAEA;AAEA;AACA;AACA;AAEA;AAEA;AACA;AAEA;AACA;AACA;AAEA;AACA;AACA;AAEA;AACA;AAEA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AAEA;AACA;AACA;AAEO,MAAM,UAAU,GAAG,CACzB,QAAgB,EAChB,IAAc,EACd,MAAoC,KAEpC,IAAI,OAAO,CAAC,CAAC,OAAO,EAAE,MAAM,KAC3B;AACE,KAAA,IAAI,CAAC,QAAQ,EAAE,IAAI,EAAE,MAAM;KAC3B,IAAI,CAAC,OAAO;AACZ,KAAA,KAAK,CAAC,CAAC,CAAC,KAAK,MAAM,CAAC,CAAC,CAAC,QAAQ,EAAE,IAAI,CAAC,CAAC,CACxC;AAGF;AACA;AACA;AAEO,MAAM,KAAK,GAAG,KAAK,CAAC,MAAM,CAAC;AACjC,IAAA,eAAe,EAAE,IAAI;AACrB,IAAA,OAAO,EAAE;AACR,QAAA,6BAA6B,EAAE,GAAG;AAClC,QAAA,cAAc,EAAE,kBAAkB;AAClC,KAAA;AACD,CAAA,CAAC;AAEF,KAAK,CAAC,YAAY,CAAC,OAAO,CAAC,GAAG,CAAC,CAAC,MAAM,KAAI;IACzC,cAAc,CAAC,CAAC,QAAQ,EAAE,UAAU,EAAE,QAAQ,CAAC,CAAC;AAChD,IAAA,MAAM,EAAE,MAAM,EAAE,GAAG,SAAS,EAAE;AAC9B,IAAA,MAAM,CAAC,OAAO,GAAG,MAAM;AACvB,IAAA,IAAI,MAAM,CAAC,OAAO,EAAE;AACnB,QAAA,MAAM,CAAC,OAAO,CAAC,cAAc,CAAC,GAAG,kBAAkB;AACnD,QAAA,MAAM,CAAC,OAAO,CAAC,aAAa,GAAG,YAAY,CAAC,OAAO,CAAC,SAAS,CAAC,IAAI,EAAE;AACpE,QAAA,MAAM,CAAC,OAAO,CAAC,YAAY,CAAC,GAAG,CAAA,OAAA,EAAU,SAAS,EAAE,CAAC,MAAM,CAAA,CAAE,IAAI,EAAE;IACpE;AACA,IAAA,OAAO,MAAM;AACd,CAAC,EAAE,OAAO,CAAC,MAAM,CAAC;;ACxLlB;AACA,eAAeA,SAAO,CAAC,OAA+B,EAAE,SAAqB,EAAA;;AAE5E,IAAA,MAAM,EAAE,UAAU,EAAE,SAAS,EAAE,OAAO,EAAE,SAAS,EAAE,GAAG,SAAS,IAAI,EAAE;;AAGrE,IAAA,IAAI,UAAU;AAAE,QAAA,UAAU,EAAE;;IAG5B;AACE,SAAA,IAAI,CACJ,CAAC,QAIA,KAAI;;AAEJ,QAAA,IAAI,SAAS;AACZ,YAAA,SAAS,CAAC;gBACT,IAAI,EAAE,QAAQ,CAAC,IAAI;gBACnB,MAAM,EAAE,QAAQ,CAAC,MAAM;gBACvB,UAAU,EAAE,QAAQ,CAAC,UAAU;AAC/B,aAAA,CAAC;AACJ,IAAA,CAAC;AAED,SAAA,KAAK,CAAC,CAAC,KAAK,KAAI;;AAEhB,QAAA,IAAI,OAAO;YAAE,OAAO,CAAC,KAAK,CAAC;AAC5B,IAAA,CAAC;SACA,OAAO,CAAC,MAAK;;AAEb,QAAA,IAAI,SAAS;AAAE,YAAA,SAAS,EAAE;AAC3B,IAAA,CAAC,CAAC;AACJ;;AC/CA,MAAM,OAAO,GAAG;AACf,IAAA,EAAE,EAAE;AACH,QAAA,OAAO,EAAE,SAAS;AAClB,KAAA;CACD;;ACJD,MAAM,UAAU,GAAG;AAClB,IAAA,EAAE,EAAE;AACH,QAAA,IAAI,EAAE,MAAM;AACZ,QAAA,KAAK,EAAE,OAAO;AACd,QAAA,OAAO,EAAE,SAAS;AAClB,QAAA,cAAc,EAAE,gBAAgB;AAChC,QAAA,QAAQ,EAAE,UAAU;AACpB,QAAA,eAAe,EAAE,eAAe;AAChC,QAAA,WAAW,EAAE,YAAY;AACzB,KAAA;CACD;;ACVD,MAAM,MAAM,GAAG;AACd,IAAA,EAAE,EAAE;AACH,QAAA,gBAAgB,EAAE,+BAA+B;AACjD,QAAA,MAAM,EAAE,oBAAoB;AAC5B,KAAA;CACD;;ACLD,MAAM,IAAI,GAAG;AACZ,IAAA,EAAE,EAAE;AACH,QAAA,MAAM,EAAE,QAAQ;AAChB,QAAA,QAAQ,EAAE,QAAQ;AAClB,QAAA,MAAM,EAAE,UAAU;AAClB,QAAA,MAAM,EAAE,QAAQ;AAChB,QAAA,eAAe,EAAE,cAAc;AAC/B,QAAA,aAAa,EAAE,QAAQ;AACvB,QAAA,cAAc,EAAE,mBAAmB;AACnC,QAAA,eAAe,EAAE;AACjB,KAAA;CACD;;ACXD,MAAM,GAAG,GAAG;AACX,IAAA,EAAE,EAAE;AACH,QAAA,OAAO,EAAE,SAAS;AAClB,QAAA,QAAQ,EAAE,UAAU;AACpB,QAAA,iBAAiB,EAAE,oBAAoB;AACvC,QAAA,GAAG,EAAE,KAAK;AACV,QAAA,IAAI,EAAE,MAAM;AACZ,QAAA,QAAQ,EAAE,UAAU;AACpB,QAAA,aAAa,EAAE,gBAAgB;AAC/B,QAAA,GAAG,EAAE,KAAK;AACV,QAAA,IAAI,EAAE,MAAM;AACZ,QAAA,aAAa,EAAE,gBAAgB;AAC/B,KAAA;CACD;;ACbD,MAAM,EAAE,GAAG;AACV,IAAA,EAAE,EAAE;AACH,QAAA,GAAG,EAAE,KAAK;AACV,QAAA,IAAI,EAAE,MAAM;AACZ,QAAA,MAAM,EAAE;AACR,KAAA;CACD;;ACND,MAAM,SAAS,GAAG;AACjB,IAAA,EAAE,EAAE;AACH,QAAA,KAAK,EAAE,OAAO;AACd,QAAA,cAAc,EAAE,gBAAgB;AAChC,KAAA;CACD;;ACLD,MAAM,MAAM,GAAG;AACd,IAAA,EAAE,EAAE;AACH,QAAA,OAAO,EAAE,SAAS;AAClB,KAAA;CACD;;ACJD,MAAM,GAAG,GAAG;AACX,IAAA,EAAE,EAAE;AACH,QAAA,OAAO,EAAE,SAAS;AAClB,QAAA,MAAM,EAAE,gBAAgB;AACxB,QAAA,SAAS,EAAE,wBAAwB;AACnC,QAAA,YAAY,EAAE,aAAa;AAC3B,QAAA,iBAAiB,EAAE;AACnB;CACD;;ACRD,MAAM,OAAO,GAAG;AACf,IAAA,EAAE,EAAE;AACH,QAAA,MAAM,EAAE,EAAE;AACV,QAAA,MAAM,EAAE,QAAQ;AAChB,KAAA;CACD;;ACLD,MAAM,KAAK,GAAG;AACb,IAAA,EAAE,EAAE;AACH,QAAA,OAAO,EAAE;AACT,KAAA;CACD;;ACJD,MAAM,OAAO,GAAG;AACf,IAAA,EAAE,EAAE;AACH,QAAA,MAAM,EAAE,QAAQ;AAChB,QAAA,OAAO,EAAE,SAAS;AAClB,QAAA,UAAU,EAAE,YAAY;AACxB,QAAA,QAAQ,EAAE;AACV;CACD;;ACPD,MAAM,KAAK,GAAG;AACb,IAAA,EAAE,EAAE;AACH,QAAA,aAAa,EAAE,gBAAgB;AAC/B,KAAA;CACD;;ACoBD,MAAM,IAAI,GAAS;IAClB,IAAI;IACJ,GAAG;IACH,OAAO;IACP,UAAU;IACV,OAAO;IACP,MAAM;IACN,OAAO;IACP,SAAS;IACT,KAAK;IACL,KAAK;IACL,MAAM;IACN,EAAE;IACF;CACA;AAED;AACM,SAAU,MAAM,CACrB,QAAgB,EAChB,OAAe,EACf,MAAc,EACd,YAAA,GAAwB,KAAK,EAAA;IAE7B,MAAM,YAAY,GAAG,IAAI,CAAC,QAAQ,CAAC,CAAC;IACpC,IAAI,YAAY,EAAE;QACjB,MAAM,WAAW,GAAG,YAAY,CAAC,OAAO,CAAC,CAAC;;AAE1C,QAAA,IAAI,WAAW,KAAK,SAAS,EAAE;;YAE9B,IAAI,YAAY,EAAE;gBACjB,OAAO,CAAA,KAAA,EAAQ,OAAO,CAAA,CAAA,EAAI,WAAW,CAAC,MAAM,CAAC,EAAE;YAChD;AACA,YAAA,OAAO,CAAA,KAAA,EAAQ,OAAO,CAAA,CAAA,EAAI,QAAQ,CAAA,CAAA,EAAI,WAAW,CAAC,MAAM,CAAC,CAAA,CAAE,CAAC;QAC7D;QACA,MAAM,IAAI,KAAK,CACd,CAAA,gBAAA,EAAmB,MAAM,CAAA,cAAA,EAAiB,OAAO,CAAA,cAAA,EAAiB,QAAQ,CAAA,CAAE,CAC5E;IACF;AACA,IAAA,MAAM,IAAI,KAAK,CAAC,qBAAqB,QAAQ,CAAA,CAAE,CAAC;AACjD;;AC1DA,MAAM,MAAM,GAAG,CACd,IAAwB,EACxB,EACC,MAAM,EACN,UAAU,EACV,SAAS,EACT,OAAO,EACP,SAAS,GAOT,KACE;IACH,OAAOA,SAAO,CACb,IAAI,CACH,MAAM,CAAC,MAAM,EAAE,IAAI,EAAE,QAAQ,CAAC,EAC9B,EAAE,GAAG,IAAI,EAAE,SAAS,EAAE,kBAAkB,CAAC,WAAW,CAAC,EAAE,EACvD,MAAM,CACN,EACD;AACC,QAAA,UAAU,EAAE,MAAM,UAAU,IAAI;QAChC,OAAO,EAAE,CAAC,KAAK,KAAK,OAAO,GAAG,KAAK,CAAC;AACpC,QAAA,SAAS,EAAE,CAAC,IAAI,KAAI;YACnB,YAAY,CAAC,CAAC,oBAAoB,EAAE,aAAa,EAAE,aAAa,CAAC,CAAC;AAClE,YAAA,SAAS,GAAG,IAAI,CAAC;AACjB,YAAA,MAAM,CAAC,QAAQ,CAAC,IAAI,GAAG,GAAG;QAC3B,CAAC;AACD,QAAA,SAAS,EAAE,MAAM,SAAS,IAAI;AAC9B,KAAA,CACD;AACF,CAAC;;ACjCD,MAAM,QAAQ,GAAG,CAChB,IAAmB,EACnB,EACC,MAAM,EACN,UAAU,EACV,SAAS,EACT,OAAO,EACP,SAAS,GAOT,KACE;AACH,IAAA,OAAOA,SAAO,CAAC,IAAI,CAAC,MAAM,CAAC,MAAM,EAAE,IAAI,EAAE,UAAU,CAAC,EAAE,IAAI,EAAE,MAAM,CAAC,EAAE;AACpE,QAAA,UAAU,EAAE,MAAM,UAAU,IAAI;QAChC,OAAO,EAAE,CAAC,KAAK,KAAK,OAAO,GAAG,KAAK,CAAC;QACpC,SAAS,EAAE,CAAC,IAAI,KAAK,SAAS,GAAG,IAAI,CAAC;AACtC,QAAA,SAAS,EAAE,MAAM,SAAS,IAAI;AAC9B,KAAA,CAAC;AACH,CAAC;;ACtBD,MAAM,MAAM,GAAG,CACd,IAAmB,EACnB,EACC,MAAM,EACN,UAAU,EACV,SAAS,EACT,OAAO,EACP,SAAS,GAOT,KACE;AACH,IAAA,OAAOA,SAAO,CAAC,IAAI,CAAC,MAAM,CAAC,MAAM,EAAE,IAAI,EAAE,QAAQ,CAAC,EAAE,IAAI,EAAE,MAAM,CAAC,EAAE;AAClE,QAAA,UAAU,EAAE,MAAM,UAAU,IAAI;QAChC,OAAO,EAAE,CAAC,KAAK,KAAK,OAAO,GAAG,KAAK,CAAC;QACpC,SAAS,EAAE,CAAC,IAAI,KAAK,SAAS,GAAG,IAAI,CAAC;AACtC,QAAA,SAAS,EAAE,MAAM,SAAS,IAAI;AAC9B,KAAA,CAAC;AACH,CAAC;;AC3BD;AAYA;AACA,eAAe,gBAAgB,CAAC,EAC/B,SAAS,EACT,OAAO,EACP,UAAU,EACV,SAAS,GACU,EAAA;AACnB,IAAA,IAAI;AACH,QAAA,MAAM,QAAQ,GAAG,IAAI,kBAAkB,EAAE;AACzC,QAAA,MAAM,IAAI,GAAG,OAAO,CAAC,WAAW,EAAE,CAAC;AACnC,QAAA,eAAe,CAAC,IAAI,EAAE,QAAQ;AAC5B,aAAA,IAAI,CAAC,CAAC,MAAM,KAAI;;YAEhB,MAAM,UAAU,GAAG,kBAAkB,CAAC,oBAAoB,CAAC,MAAM,CAAC;;;AAGlE,YAAA,MAAM,IAAI,GAAG,MAAM,CAAC,IAAI;;AAExB,YAAA,OAAO,MAAM,CACZ;AACC,gBAAA,QAAQ,EAAE,QAAQ;gBAClB,GAAG,EAAE,IAAI,CAAC,GAAG;AACb,gBAAA,IAAI,EAAE,MAAM,CAAC,IAAI,CAAC,WAAW,CAAC;AAC9B,gBAAA,KAAK,EAAE,MAAM,CAAC,IAAI,CAAC,KAAK,CAAC;AACzB,gBAAA,QAAQ,EAAE,MAAM,CAAC,IAAI,CAAC,KAAK,CAAC;AAC5B,gBAAA,QAAQ,EAAE,IAAI,CAAC,GAAG,CAAC,SAAS,CAAC,CAAC,EAAE,IAAI,CAAC,GAAG,CAAC,MAAM,GAAG,CAAC,CAAC;;gBAEpD,KAAK,EAAE,IAAI,IAAI,EAAE;aACjB,EACD;AACC,gBAAA,UAAU,EAAE,MAAM,UAAU,IAAI;gBAChC,OAAO,EAAE,CAAC,KAAK,KAAK,OAAO,GAAG,KAAK,CAAC;gBACpC,SAAS,EAAE,CAAC,IAAI,KAAK,SAAS,GAAG,IAAI,CAAC;AACtC,gBAAA,SAAS,EAAE,MAAM,SAAS,IAAI;AAC9B,aAAA,CACD;AACF,QAAA,CAAC;AACA,aAAA,KAAK,CAAC,CAAC,KAAK,KAAI;AAChB,YAAA,OAAO,GAAG,KAAK,CAAC;AAChB,YAAA,OAAO,OAAO,CAAC,MAAM,CAAC,sBAAsB,CAAC;;;;;;;;;AAS9C,QAAA,CAAC,CAAC;IACJ;IAAE,OAAO,GAAG,EAAE;AACb,QAAA,OAAO,GAAG,GAAG,CAAC;IACf;AACD;;AC3DA,MAAM,MAAM,GAAG,CACd,IAAiB,EACjB,EACC,MAAM,EACN,UAAU,EACV,SAAS,EACT,OAAO,EACP,SAAS,GAOT,KACE;AACH,IAAA,OAAOA,SAAO,CAAC,IAAI,CAAC,MAAM,CAAC,MAAM,EAAE,IAAI,EAAE,QAAQ,CAAC,EAAE,IAAI,EAAE,MAAM,CAAC,EAAE;AAClE,QAAA,UAAU,EAAE,MAAM,UAAU,IAAI;QAChC,OAAO,EAAE,CAAC,KAAK,KAAK,OAAO,GAAG,KAAK,CAAC;QACpC,SAAS,EAAE,CAAC,IAAI,KAAK,SAAS,GAAG,IAAI,CAAC;AACtC,QAAA,SAAS,EAAE,MAAM,SAAS,IAAI;AAC9B,KAAA,CAAC;AACH,CAAC;;ACtBD,MAAM,aAAa,GAAG,CACrB,IAAkB,EAClB,EACC,MAAM,EACN,UAAU,EACV,SAAS,EACT,OAAO,EACP,SAAS,GAOT,KACE;AACH,IAAA,OAAOA,SAAO,CAAC,IAAI,CAAC,MAAM,CAAC,MAAM,EAAE,IAAI,EAAE,iBAAiB,CAAC,EAAE,IAAI,EAAE,MAAM,CAAC,EAAE;AAC3E,QAAA,UAAU,EAAE,MAAM,UAAU,IAAI;QAChC,OAAO,EAAE,CAAC,KAAK,KAAK,OAAO,GAAG,KAAK,CAAC;QACpC,SAAS,EAAE,CAAC,IAAI,KAAK,SAAS,GAAG,IAAI,CAAC;AACtC,QAAA,SAAS,EAAE,MAAM,SAAS,IAAI;AAC9B,KAAA,CAAC;AACH,CAAC;;ACtBD,MAAM,WAAW,GAAG,CACnB,IAAgB,EAChB,EACC,MAAM,EACN,UAAU,EACV,SAAS,EACT,OAAO,EACP,SAAS,GAOT,KACE;AACH,IAAA,OAAOA,SAAO,CAAC,IAAI,CAAC,MAAM,CAAC,MAAM,EAAE,IAAI,EAAE,eAAe,CAAC,EAAE,IAAI,EAAE,MAAM,CAAC,EAAE;AACzE,QAAA,UAAU,EAAE,MAAM,UAAU,IAAI;QAChC,OAAO,EAAE,CAAC,KAAK,KAAK,OAAO,GAAG,KAAK,CAAC;QACpC,SAAS,EAAE,CAAC,IAAI,KAAK,SAAS,GAAG,IAAI,CAAC;AACtC,QAAA,SAAS,EAAE,MAAM,SAAS,IAAI;AAC9B,KAAA,CAAC;AACH,CAAC;;ACtBD,MAAM,aAAa,GAAG,CAClB,IAAiB,EACjB,EACI,MAAM,EACN,UAAU,EACV,SAAS,EACT,OAAO,EACP,SAAS,GAOZ,KACD;AACA,IAAA,OAAOA,SAAO,CAAC,IAAI,CAAC,MAAM,CAAC,MAAM,EAAE,IAAI,EAAE,gBAAgB,CAAC,EAAE,IAAI,EAAE,MAAM,CAAC,EAAE;AACvE,QAAA,UAAU,EAAE,MAAM,UAAU,IAAI;QAChC,OAAO,EAAE,CAAC,KAAK,KAAK,OAAO,GAAG,KAAK,CAAC;QACpC,SAAS,EAAE,CAAC,IAAI,KAAK,SAAS,GAAG,IAAI,CAAC;AACtC,QAAA,SAAS,EAAE,MAAM,SAAS,IAAI;AACjC,KAAA,CAAC;AACN,CAAC;;ACPD,MAAM,IAAI,GAAG;YACZC,MAAM;YACNC,MAAM;IACN,QAAQ;IACR,aAAa;IACb,gBAAgB;AAChB,IAAA,iBAAiB,EAAE,CAAC,KAAa,KAAI;AACpC,QAAA,cAAc,CAAC,CAAC,UAAU,CAAC,CAAC;AAC5B,QAAA,MAAM,EAAE,QAAQ,EAAE,GAAG,SAAS,EAAE;QAChC,IAAI,QAAQ,EAAE;AACb,YAAAC,OAAM,CAAC,GAAG,CAAC,QAAQ,EAAE,KAAK,EAAE,EAAE,OAAO,EAAE,MAAM,EAAE,CAAC;QACjD;AACA,QAAA,MAAM,CAAC,QAAQ,CAAC,IAAI,GAAG,GAAG;IAC3B,CAAC;AACD,IAAA,kBAAkB,EAAE,CAAC,KAAa,KAAI;AACrC,QAAA,MAAM,WAAW,GAGb,SAAS,CAAC,KAAK,CAAC;QACpB,IAAI,WAAW,EAAE;YAChB,gBAAgB,CAAC,aAAa,EAAE,WAAW,CAAC,GAAG,GAAG,WAAW,CAAC,SAAS,CAAC;AACxE,YAAA,gBAAgB,CAAC,oBAAoB,EAAE,KAAK,CAAC;AAC7C,YAAA,gBAAgB,CAAC,aAAa,EAAE,WAAW,CAAC;QAC7C;IACD,CAAC;IACD,mBAAmB,EAAE,MAAK;AACzB,QAAA,OAAO,kBAAkB,CAAC,oBAAoB,CAAC;IAChD,CAAC;IACD,mBAAmB,EAAE,MAAK;AACzB,QAAA,OAAO,kBAAkB,CAAC,aAAa,CAAC;IACzC,CAAC;AACD;;;;AAIG;IACH,cAAc,EAAE,CAAC,GAAqB,EAAE,KAAW,KAAK,MAAK;QAC5D,OAAO,CAAC,GAAG,CAAC,cAAc,EAAE,OAAO,GAAG,EAAE,GAAG,CAAC;AAC5C,QAAA,IAAI;;AAEH,YAAA,MAAM,WAAW,GAAG,kBAAkB,CAAC,aAAa,CAAC;AACrD,YAAA,IAAI,OAAO,GAAG,KAAK,QAAQ,EAAE;AAC5B,gBAAA,IAAI,WAAW,GAAG,EAAE,GAAG,WAAW,EAAE;;AAEpC,gBAAA,KAAK,MAAM,CAAC,EAAE,EAAE,KAAK,CAAC,IAAI,MAAM,CAAC,OAAO,CAAC,GAAG,CAAC,EAAE;oBAC9C,WAAW,GAAG,EAAE,GAAG,WAAW,EAAE,CAAC,EAAE,GAAG,KAAK,EAAE;gBAC9C;;AAEA,gBAAA,gBAAgB,CAAC,aAAa,EAAE,WAAW,CAAC;YAC7C;AAAO,iBAAA,IAAI,OAAO,GAAG,KAAK,QAAQ,EAAE;gBACnC,IAAI,KAAK,EAAE;AACV,oBAAA,gBAAgB,CAAC,aAAa,EAAE,EAAE,GAAG,WAAW,EAAE,CAAC,GAAG,GAAG,KAAK,EAAE,CAAC;gBAClE;qBAAO;AACN,oBAAA,OAAO,CAAC,KAAK,CACZ,8DAA8D,CAC9D;gBACF;YACD;QACD;QAAE,OAAO,KAAK,EAAE;AACf,YAAA,OAAO,CAAC,KAAK,CAAC,qBAAqB,EAAE,KAAK,CAAC;QAC5C;IACD,CAAC;AACD,IAAA,eAAe,EAAE,CAAC,MAAgB,KAAI;QACrC,IAAI,MAAM,EAAE;YACX,OAAO,MAAM,EAAE;QAChB;AACA,QAAA,OAAO,kBAAkB,CAAC,oBAAoB,CAAC,KAAK,SAAS;IAC9D,CAAC;;IAED,MAAM;AACN,IAAA,MAAM,EAAE;QACP,aAAa;QACb;AACA;;;ACxFF,MAAM,MAAM,GAAG,CACd,IAAW,EACX,EACC,MAAM,EACN,UAAU,EACV,SAAS,EACT,OAAO,EACP,SAAS,GAOT,KACE;AACH,IAAA,OAAOH,SAAO,CAAC,IAAI,CAAC,MAAM,CAAC,OAAO,EAAE,IAAI,EAAE,QAAQ,CAAC,EAAE,IAAI,EAAE,MAAM,CAAC,EAAE;AACnE,QAAA,UAAU,EAAE,MAAM,UAAU,IAAI;QAChC,OAAO,EAAE,CAAC,KAAK,KAAK,OAAO,GAAG,KAAK,CAAC;QACpC,SAAS,EAAE,CAAC,IAAI,KAAK,SAAS,GAAG,IAAI,CAAC;AACtC,QAAA,SAAS,EAAE,MAAM,SAAS,IAAI;AAC9B,KAAA,CAAC;AACH,CAAC;;ACzBD,MAAM,KAAK,GAAG;IACb,MAAM;;;ACSP,MAAM,OAAO,GAAG,CAAC,EAChB,OAAO,EACP,SAAS,GAAG,MAAK,EAAE,CAAC,EACpB,SAAS,GAAG,MAAK,EAAE,CAAC,EACpB,OAAO,GAAG,MAAK,EAAE,CAAC,EAClB,SAAS,GAAG,MAAK,EAAE,CAAC,EACpB,UAAU,GAAG,QAAO,CAAC,GACO,KAAU;;IAEtC,SAAS,CAAC,IAAI,CAAC;;IAGf;AACE,SAAA,IAAI,CAAC,CAAC,QAAuB,KAAI;;AAEjC,QAAA,OAAO,CAAC,GAAG,CAAC,kBAAkB,EAAE,QAAQ,CAAC;;QAGzC,IAAI,SAAS,EAAE;AACd,YAAA,SAAS,CAAC,QAAQ,CAAC,IAAI,CAAC;QACzB;AACD,IAAA,CAAC;AACA,SAAA,KAAK,CAAC,CAAC,KAAU,KAAI;;AAErB,QAAA,OAAO,CAAC,KAAK,CAAC,gBAAgB,EAAE,KAAK,CAAC;;QAGtC,IAAI,OAAO,EAAE;YACZ,OAAO,CAAC,KAAK,CAAC;QACf;AACD,IAAA,CAAC;SACA,OAAO,CAAC,MAAK;;QAEb,IAAI,SAAS,EAAE;AACd,YAAA,SAAS,EAAE;QACZ;;QAGA,SAAS,CAAC,KAAK,CAAC;;AAGhB,QAAA,OAAO,CAAC,GAAG,CAAC,mBAAmB,CAAC;AACjC,IAAA,CAAC,CAAC;AACJ,CAAC;;ACzBD,SAAS,KAAK,CACb,IAAiB,EACjB,EACC,MAAM,GAAG,IAAI,EACb,SAAS,GAAG,MAAK,EAAG,CAAC,EACrB,SAAS,GAAG,QAAQ,CAAC,EACrB,OAAO,GAAG,MAAK,EAAG,CAAC,EACnB,SAAS,GAAG,MAAK,EAAG,CAAC,MACJ,EAAE,EAAA;AAEpB,IAAA,OAAO,OAAO,CAAC;QACd,OAAO,EAAE,IAAI,CACZ,MAAM,CAAC,SAAS,EAAE,IAAI,EAAE,QAAQ,CAAC,EACjC;AACC,YAAA,GAAG,IAAI;AACP,YAAA,MAAM,EAAE;gBACP,KAAK,EAAE,IAAI,CAAC,cAAc;gBAC1B,QAAQ,EAAE,IAAI,CAAC,QAAQ;AACvB,aAAA;SACD,EACD,MAAM,IAAI,SAAS,CACnB;QACD,SAAS;QACT,OAAO,EAAE,CAAC,KAAK,KAAK,OAAO,CAAC,KAAK,CAAC;AAClC,QAAA,SAAS,EAAE,CAAC,YAAiB,KAAI;AAChC,YAAA,IAAI,YAAY,EAAE,MAAM,KAAK,WAAW,EAAE;AACzC,gBAAA,MAAM,OAAO,GAAG,YAAY,CAAC,OAAO;AACpC,gBAAA,OAAO,CAAC,OAAO,GAAG,OAAO,QAAa,KAAI;;oBAEzC,SAAS,CAAC,QAAQ,CAAC;;AAEpB,gBAAA,CAAC;gBACD,MAAM,IAAI,GAAG,IAAI,MAAM,CAAC,QAAQ,CAAC,OAAO,CAAC;gBACzC,IAAI,CAAC,EAAE,CAAC,gBAAgB,EAAE,CAAC,QAAa,KAAI;oBAC3C,OAAO,CAAC,QAAQ,CAAC;AAClB,gBAAA,CAAC,CAAC;gBACF,IAAI,CAAC,IAAI,EAAE;YACZ;QACD,CAAC;QACD,SAAS;AACT,KAAA,CAAC;AACH;;AChEA,MAAM,MAAM,GAAG,CACd,IAAmB,EACnB,EACC,MAAM,EACN,UAAU,EACV,SAAS,EACT,OAAO,EACP,SAAS,GAOT,KACE;AACH,IAAA,OAAOA,SAAO,CAAC,IAAI,CAAC,MAAM,CAAC,SAAS,EAAE,IAAI,EAAE,QAAQ,CAAC,EAAE,IAAI,EAAE,MAAM,CAAC,EAAE;AACrE,QAAA,UAAU,EAAE,MAAM,UAAU,IAAI;QAChC,OAAO,EAAE,CAAC,KAAK,KAAK,OAAO,GAAG,KAAK,CAAC;QACpC,SAAS,EAAE,CAAC,IAAI,KAAK,SAAS,GAAG,IAAI,CAAC;AACtC,QAAA,SAAS,EAAE,MAAM,SAAS,IAAI;AAC9B,KAAA,CAAC;AACH,CAAC;;AC1BD,MAAM,OAAO,GAAG;IACf,KAAK;IACL,MAAM;;;ACFP,MAAM,OAAO,GAAG;AACf,IAAA,OAAO,EAAE,CAAC,IAAY,KACrB,GAAG,CAAC,MAAM,CAAC,KAAK,EAAE,IAAI,EAAE,SAAS,CAAC,EAAE;AACnC,QAAA,MAAM,EAAE;YACP,IAAI;AACJ,SAAA;KACD,CAAC;AACH,IAAA,QAAQ,EAAE,CAAC,MAA2B,KACrC,GAAG,CAAC,MAAM,CAAC,KAAK,EAAE,IAAI,EAAE,UAAU,CAAC,EAAE,MAAM,CAAC;AAC7C,IAAA,iBAAiB,EAAE,CAAC,MAA2B,KAC9C,GAAG,CAAC,MAAM,CAAC,KAAK,EAAE,IAAI,EAAE,mBAAmB,CAAC,EAAE,MAAM,CAAC;AACtD,IAAA,GAAG,EAAE,CAAC,IAAY,KACjB,GAAG,CAAC,MAAM,CAAC,KAAK,EAAE,IAAI,EAAE,KAAK,CAAC,EAAE;AAC/B,QAAA,MAAM,EAAE;YACP,IAAI;AACJ,SAAA;KACD,CAAC;AACH,IAAA,IAAI,EAAE,CAAC,MAA2B,KACjC,GAAG,CAAC,MAAM,CAAC,KAAK,EAAE,IAAI,EAAE,MAAM,CAAC,EAAE,MAAM,CAAC;AACzC,IAAA,OAAO,EAAE,CAAC,MAA2B,KACpC,GAAG,CAAC,MAAM,CAAC,KAAK,EAAE,IAAI,EAAE,UAAU,CAAC,EAAE,MAAM,CAAC;AAC7C,IAAA,cAAc,EAAE,CAAC,MAA2B,KAC3C,GAAG,CAAC,MAAM,CAAC,KAAK,EAAE,IAAI,EAAE,eAAe,CAAC,EAAE,MAAM,CAAC;AAClD,IAAA,GAAG,EAAE,CAAC,IAAY,KACjB,GAAG,CAAC,MAAM,CAAC,KAAK,EAAE,IAAI,EAAE,KAAK,CAAC,EAAE;AAC/B,QAAA,MAAM,EAAE;YACP,IAAI;AACJ,SAAA;KACD,CAAC;AACH,IAAA,IAAI,EAAE,CAAC,MAA2B,KACjC,GAAG,CAAC,MAAM,CAAC,KAAK,EAAE,IAAI,EAAE,MAAM,CAAC,EAAE,MAAM,CAAC;AACzC,IAAA,cAAc,EAAE,CAAC,MAA2B,KAC3C,GAAG,CAAC,MAAM,CAAC,KAAK,EAAE,IAAI,EAAE,eAAe,CAAC,EAAE,MAAM,CAAC;;;AC7BnD,MAAM,aAAa,GAAG,CACrB,IAAa,EACb,EACC,MAAM,EACN,UAAU,EACV,SAAS,EACT,OAAO,EACP,SAAS,GAOT,KACE;AACH,IAAA,OAAOA,SAAO,CAAC,IAAI,CAAC,MAAM,CAAC,YAAY,EAAE,IAAI,EAAE,SAAS,CAAC,EAAE,IAAI,EAAE,MAAM,CAAC,EAAE;AACzE,QAAA,UAAU,EAAE,MAAM,UAAU,IAAI;QAChC,OAAO,EAAE,CAAC,KAAK,KAAK,OAAO,GAAG,KAAK,CAAC;QACpC,SAAS,EAAE,CAAC,IAAI,KAAK,SAAS,GAAG,IAAI,CAAC;AACtC,QAAA,SAAS,EAAE,MAAM,SAAS,IAAI;AAC9B,KAAA,CAAC;AACH,CAAC;;ACtBD,MAAM,aAAa,GAAG,CACrB,IAAmB,EACnB,EACC,MAAM,EACN,UAAU,EACV,SAAS,EACT,OAAO,EACP,SAAS,GAOT,KACE;AACH,IAAA,OAAOA,SAAO,CACb,IAAI,CAAC,MAAM,CAAC,YAAY,EAAE,IAAI,EAAE,gBAAgB,CAAC,EAAE,IAAI,EAAE,MAAM,CAAC,EAChE;AACC,QAAA,UAAU,EAAE,MAAM,UAAU,IAAI;QAChC,OAAO,EAAE,CAAC,KAAK,KAAK,OAAO,GAAG,KAAK,CAAC;QACpC,SAAS,EAAE,CAAC,IAAI,KAAK,SAAS,GAAG,IAAI,CAAC;AACtC,QAAA,SAAS,EAAE,MAAM,SAAS,IAAI;AAC9B,KAAA,CACD;AACF,CAAC;;ACzBD,MAAM,aAAa,GAAG,CACrB,IAAa,EACb,EACC,MAAM,EACN,UAAU,EACV,SAAS,EACT,OAAO,EACP,SAAS,GAOT,KACE;AACH,IAAA,OAAOA,SAAO,CAAC,GAAG,CAAC,MAAM,CAAC,YAAY,EAAE,IAAI,EAAE,SAAS,CAAC,EAAE,IAAI,EAAE,MAAM,CAAC,EAAE;AACxE,QAAA,UAAU,EAAE,MAAM,UAAU,IAAI;QAChC,OAAO,EAAE,CAAC,KAAK,KAAK,OAAO,GAAG,KAAK,CAAC;QACpC,SAAS,EAAE,CAAC,IAAI,KAAK,SAAS,GAAG,IAAI,CAAC;AACtC,QAAA,SAAS,EAAE,MAAM,SAAS,IAAI;AAC9B,KAAA,CAAC;AACH,CAAC;;ACtBD,MAAM,UAAU,GAAG;AAClB,IAAA,IAAI,EAAE,CAAC,IAAY,KAClB,GAAG,CAAC,MAAM,CAAC,YAAY,EAAE,IAAI,EAAE,MAAM,CAAC,EAAE;AACvC,QAAA,MAAM,EAAE;YACP,IAAI;AACJ,SAAA;KACD,CAAC;AACH,IAAA,KAAK,EAAE,CAAC,MAA2B,KAClC,GAAG,CAAC,MAAM,CAAC,YAAY,EAAE,IAAI,EAAE,OAAO,CAAC,EAAE,MAAM,CAAC;IACjD,aAAa;IACb,aAAa;AACb,IAAA,QAAQ,EAAE,CAAC,MAA2B,KACrC,GAAG,CAAC,MAAM,CAAC,YAAY,EAAE,IAAI,EAAE,UAAU,CAAC,EAAE,MAAM,CAAC;IACpD,aAAa;AACb,IAAA,cAAc,EAAE,MAAM,GAAG,CAAC,MAAM,CAAC,YAAY,EAAE,IAAI,EAAE,iBAAiB,CAAC,CAAC;AACxE,IAAA,UAAU,EAAE,MAAM,GAAG,CAAC,MAAM,CAAC,YAAY,EAAE,IAAI,EAAE,aAAa,CAAC,CAAC;;;ACjBjE,MAAM,QAAQ,GAAG,CAChB,IAAa,EACb,EACC,MAAM,EACN,UAAU,EACV,SAAS,EACT,OAAO,EACP,SAAS,GAOT,KACE;AACH,IAAA,OAAOA,SAAO,CAAC,IAAI,CAAC,MAAM,CAAC,SAAS,EAAE,IAAI,EAAE,UAAU,CAAC,EAAE,IAAI,EAAE,MAAM,CAAC,EAAE;AACvE,QAAA,UAAU,EAAE,MAAM,UAAU,IAAI;QAChC,OAAO,EAAE,CAAC,KAAK,KAAK,OAAO,GAAG,KAAK,CAAC;QACpC,SAAS,EAAE,CAAC,IAAI,KAAK,SAAS,GAAG,IAAI,CAAC;AACtC,QAAA,SAAS,EAAE,MAAM,SAAS,IAAI;AAC9B,KAAA,CAAC;AACH,CAAC;;ACtBD,MAAM,UAAU,GAAG,CAClB,IAAa,EACb,EACC,MAAM,EACN,UAAU,EACV,SAAS,EACT,OAAO,EACP,SAAS,GAOT,KACE;AACH,IAAA,OAAOA,SAAO,CAAC,IAAI,CAAC,MAAM,CAAC,SAAS,EAAE,IAAI,EAAE,YAAY,CAAC,EAAE,IAAI,EAAE,MAAM,CAAC,EAAE;AACzE,QAAA,UAAU,EAAE,MAAM,UAAU,IAAI;QAChC,OAAO,EAAE,CAAC,KAAK,KAAK,OAAO,GAAG,KAAK,CAAC;QACpC,SAAS,EAAE,CAAC,IAAI,KAAK,SAAS,GAAG,IAAI,CAAC;AACtC,QAAA,SAAS,EAAE,MAAM,SAAS,IAAI;AAC9B,KAAA,CAAC;AACH,CAAC;;ACtBD,MAAM,MAAM,GAAG,CACd,IAAa,EACb,EACC,MAAM,EACN,UAAU,EACV,SAAS,EACT,OAAO,EACP,SAAS,GAOT,KACE;AACH,IAAA,OAAOA,SAAO,CAAC,IAAI,CAAC,MAAM,CAAC,SAAS,EAAE,IAAI,EAAE,QAAQ,CAAC,EAAE,IAAI,EAAE,MAAM,CAAC,EAAE;AACrE,QAAA,UAAU,EAAE,MAAM,UAAU,IAAI;QAChC,OAAO,EAAE,CAAC,KAAK,KAAK,OAAO,GAAG,KAAK,CAAC;QACpC,SAAS,EAAE,CAAC,IAAI,KAAK,SAAS,GAAG,IAAI,CAAC;AACtC,QAAA,SAAS,EAAE,MAAM,SAAS,IAAI;AAC9B,KAAA,CAAC;AACH,CAAC;;ACpBD,MAAM,OAAO,GAAG;IACf,MAAM;IACN,UAAU;AACV,IAAA,OAAO,EAAE,CAAC,MAA2B,KACpC,GAAG,CAAC,MAAM,CAAC,SAAS,EAAE,IAAI,EAAE,SAAS,CAAC,EAAE,MAAM,CAAC;IAChD;;;ACRD,MAAM,MAAM,GAAG;AACd,IAAA,MAAM,EAAE;AACP,QAAA,gBAAgB,EAAE,SAAS,EAAE,CAAC,MAAM,GAAG,MAAM,CAAC,QAAQ,EAAE,IAAI,EAAE,kBAAkB,CAAC;AACjF,QAAA,MAAM,EAAE,SAAS,EAAE,CAAC,MAAM,GAAG,MAAM,CAAC,QAAQ,EAAE,IAAI,EAAE,QAAQ,CAAC;AAC7D,KAAA;;;ACDF,MAAM,aAAa,GAAG,CACrB,IAAa,EACb,EACC,MAAM,EACN,UAAU,EACV,SAAS,EACT,OAAO,EACP,SAAS,EAOT,KACE;AACH,IAAA,OAAOA,SAAO,CAAC,GAAG,CAAC,MAAM,CAAC,SAAS,EAAE,IAAI,EAAE,SAAS,CAAC,EAAE,IAAI,EAAE,MAAM,CAAC,EAAE;AACrE,QAAA,UAAU,EAAE,MAAM,UAAU,IAAI;QAChC,OAAO,EAAE,CAAC,KAAK,KAAK,OAAO,GAAG,KAAK,CAAC;QACpC,SAAS,EAAE,CAAC,IAAI,KAAK,SAAS,GAAG,IAAI,CAAC;AACtC,QAAA,SAAS,EAAE,MAAM,SAAS,IAAI;AAC9B,KAAA,CAAC;AACH,CAAC;;ACxBD,MAAM,OAAO,GAAG;AACf,IAAA,OAAO,EAAE,CAAC,EAAU,KACnB,GAAG,CAAC,MAAM,CAAC,SAAS,EAAE,IAAI,EAAE,SAAS,CAAC,EAAE;AACvC,QAAA,MAAM,EAAE;YACP,EAAE;AACF,SAAA;KACD,CAAC;IACH,aAAa;;;ACXA,SAAU,QAAQ,CAAC,KAAa,EAAE,GAAW,EAAA;;AAE1D,IAAA,MAAM,YAAY,GAAG,kBAAkB,CAAC,KAAK,CAAC;AAC9C,IAAA,MAAM,UAAU,GAAG,kBAAkB,CAAC,GAAG,CAAC;IAC1C,MAAM,MAAM,GAAG,QAAQ;IACvB,MAAM,SAAS,GAAG,sBAAsB;;AAExC,IAAA,MAAM,UAAU,GAAG;QAClB,QAAQ,EAAE,CAAA,6CAAA,EAAgD,UAAU,CAAA,CAAE;AACtE,QAAA,OAAO,EAAE,CAAA,sCAAA,EAAyC,YAAY,CAAA,KAAA,EAAQ,UAAU,CAAA,CAAE;QAClF,QAAQ,EAAE,CAAA,oDAAA,EAAuD,UAAU,CAAA,CAAE;AAC7E,QAAA,QAAQ,EAAE,CAAA,mCAAA,EAAsC,YAAY,CAAA,CAAA,EAAI,UAAU,CAAA,CAAE;AAC5E,QAAA,SAAS,EAAE,CAAA,iDAAA,EAAoD,UAAU,CAAA,aAAA,EAAgB,YAAY,CAAA,CAAE;KACvG;IAED,OAAO;AACN,QAAA,QAAQ,EAAE,MAAM,MAAM,CAAC,IAAI,CAAC,UAAU,CAAC,QAAQ,EAAE,MAAM,EAAE,SAAS,CAAC;AACnE,QAAA,OAAO,EAAE,MAAM,MAAM,CAAC,IAAI,CAAC,UAAU,CAAC,OAAO,EAAE,MAAM,EAAE,SAAS,CAAC;AACjE,QAAA,QAAQ,EAAE,MAAM,MAAM,CAAC,IAAI,CAAC,UAAU,CAAC,QAAQ,EAAE,MAAM,EAAE,SAAS,CAAC;AACnE,QAAA,QAAQ,EAAE,MAAM,MAAM,CAAC,IAAI,CAAC,UAAU,CAAC,QAAQ,EAAE,MAAM,EAAE,SAAS,CAAC;AACnE,QAAA,SAAS,EAAE,MAAM,MAAM,CAAC,IAAI,CAAC,UAAU,CAAC,SAAS,EAAE,MAAM,EAAE,SAAS,CAAC;KACrE;AACF;;SCRgB,OAAO,CACtB,IAAU,EACV,EACC,MAAM,GAAG,IAAI,EACb,SAAS,GAAG,MAAK,EAAG,CAAC,EACrB,SAAS,GAAG,QAAQ,CAAC,EACrB,OAAO,GAAG,MAAK,EAAG,CAAC,EACnB,SAAS,GAAG,MAAK,EAAG,CAAC,MACJ,EAAE,EAAA;AAEpB,IAAA,OAAO,OAAO,CAAC;QACd,OAAO,EAAE,IAAI,CACZ,MAAM,CAAC,OAAO,EAAE,IAAI,EAAE,SAAS,CAAC,EAChC;AACC,YAAA,GAAG;SACH,EACD,MAAM,IAAI,SAAS,CACnB;QACD,SAAS;QACT,OAAO,EAAE,CAAC,KAAK,KAAK,OAAO,CAAC,KAAK,CAAC;AAClC,QAAA,SAAS,EAAE,CAAC,YAAiB,KAAI;YAChC,SAAS,CAAC,YAAY,CAAC;QACxB,CAAC;QACD,SAAS;AACT,KAAA,CAAC;AACH;;ACpCA,MAAM,KAAK,GAAG;IACb,OAAO;;;ACDR,MAAM,SAAS,GAAG;AACjB,IAAA,YAAY,EAAE,CAAC,EAAU,KACxB,GAAG,CAAC,MAAM,CAAC,WAAW,EAAE,IAAI,EAAE,OAAO,CAAC,EAAE;AACvC,QAAA,MAAM,EAAE;YACP,EAAE;AACF,SAAA;KACD,CAAC;AACH,IAAA,cAAc,EAAE,CAAC,IAAY,KAC5B,GAAG,CAAC,MAAM,CAAC,WAAW,EAAE,IAAI,EAAE,OAAO,CAAC,EAAE;AACvC,QAAA,MAAM,EAAE;YACP,IAAI;AACJ,SAAA;KACD,CAAC;IACH,gBAAgB,EAAE,CACjB,IAAY,EACZ,QAAgB,EAChB,KAAa,EACb,KAAa,EACb,MAAc,KAEd,GAAG,CAAC,MAAM,CAAC,WAAW,EAAE,IAAI,EAAE,gBAAgB,CAAC,EAAE;AAChD,QAAA,MAAM,EAAE;YACP,IAAI;YACJ,QAAQ;YACR,KAAK;YACL,KAAK;YACL,MAAM;AACN,SAAA;KACD,CAAC;;;AC3BJ,MAAM,aAAa,GAAG,CACrB,IAAa,EACb,EACC,MAAM,EACN,UAAU,EACV,SAAS,EACT,OAAO,EACP,SAAS,GAYT,KACE;AACH,IAAA,OAAOA,SAAO,CAAC,GAAG,CAAC,MAAM,CAAC,OAAO,EAAE,IAAI,EAAE,eAAe,CAAC,EAAE,MAAM,CAAC,EAAE;AACnE,QAAA,UAAU,EAAE,MAAM,UAAU,IAAI;QAChC,OAAO,EAAE,CAAC,KAAK,KAAK,OAAO,GAAG,KAAK,CAAC;QACpC,SAAS,EAAE,CAAC,IAAI,KAAK,SAAS,GAAG,IAAI,CAAC;AACtC,QAAA,SAAS,EAAE,MAAM,SAAS,IAAI;AAC9B,KAAA,CAAC;AACH,CAAC;AAID;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;;AC7CA,MAAM,KAAK,GAAG;IACb,aAAa;;;ACGd,MAAM,QAAQ,GAAG,CAChB,IAAoB,EACpB,EACC,MAAM,EACN,UAAU,EACV,SAAS,EACT,OAAO,EACP,SAAS,GAOT,KACE;AACH,IAAA,OAAOA,SAAO,CAAC,UAAU,CAAC,MAAM,CAAC,QAAQ,EAAE,IAAI,EAAE,SAAS,EAAE,IAAI,CAAC,EAAE,IAAI,EAAE,MAAM,CAAC,EAAE;AACjF,QAAA,UAAU,EAAE,MAAM,UAAU,IAAI;QAChC,OAAO,EAAE,CAAC,KAAK,KAAK,OAAO,GAAG,KAAK,CAAC;QACpC,SAAS,EAAE,CAAC,IAAI,KAAK,SAAS,GAAG,IAAI,CAAC;AACtC,QAAA,SAAS,EAAE,MAAM,SAAS,IAAI;AAC9B,KAAA,CAAC;AACH,CAAC;;AC5BD;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AAGA,MAAM,MAAM,GAAG;IACd;;;ACRD,MAAM,SAAS,GAAG,CACjB,EACC,MAAM,EACN,UAAU,EACV,SAAS,EACT,OAAO,EACP,SAAS,EAOT,KACE;AACH,IAAA,OAAOA,SAAO,CAAC,GAAG,CAAC,CAAA,EAAG,SAAS,EAAE,CAAC,OAAO,CAAA,sBAAA,CAAwB,EAAE,MAAM,CAAC,EAAE;AAC3E,QAAA,UAAU,EAAE,MAAM,UAAU,IAAI;QAChC,OAAO,EAAE,CAAC,KAAK,KAAK,OAAO,GAAG,KAAK,CAAC;QACpC,SAAS,EAAE,CAAC,IAAI,KAAK,SAAS,GAAG,IAAI,CAAC;AACtC,QAAA,SAAS,EAAE,MAAM,SAAS,IAAI;AAC9B,KAAA,CAAC;AACH,CAAC;;ACrBD,MAAM,YAAY,GAAG,CACpB,EACC,MAAM,EACN,UAAU,EACV,SAAS,EACT,OAAO,EACP,SAAS,EAOT,KACE;AACH,IAAA,OAAOA,SAAO,CAAC,GAAG,CAAC,CAAA,EAAG,SAAS,EAAE,CAAC,OAAO,CAAA,iBAAA,CAAmB,EAAE,MAAM,CAAC,EAAE;AACtE,QAAA,UAAU,EAAE,MAAM,UAAU,IAAI;QAChC,OAAO,EAAE,CAAC,KAAK,KAAK,OAAO,GAAG,KAAK,CAAC;QACpC,SAAS,EAAE,CAAC,IAAI,KAAK,SAAS,GAAG,IAAI,CAAC;AACtC,QAAA,SAAS,EAAE,MAAM,SAAS,IAAI;AAC9B,KAAA,CAAC;AACH,CAAC;;ACrBD,MAAM,SAAS,GAAG,CACjB,EACC,MAAM,EACN,UAAU,EACV,SAAS,EACT,OAAO,EACP,SAAS,EAOT,KACE;AACH,IAAA,OAAOA,SAAO,CAAC,GAAG,CAAC,CAAA,EAAG,SAAS,EAAE,CAAC,OAAO,CAAA,uBAAA,CAAyB,EAAE,MAAM,CAAC,EAAE;AAC5E,QAAA,UAAU,EAAE,MAAM,UAAU,IAAI;QAChC,OAAO,EAAE,CAAC,KAAK,KAAK,OAAO,GAAG,KAAK,CAAC;QACpC,SAAS,EAAE,CAAC,IAAI,KAAK,SAAS,GAAG,IAAI,CAAC;AACtC,QAAA,SAAS,EAAE,MAAM,SAAS,IAAI;AAC9B,KAAA,CAAC;AACH,CAAC;;ACtBD,MAAM,IAAI,GAAG;IACT,YAAY;IACZ,SAAS;IACT;;;ACFJ,MAAM,SAAS,GAAG,CACjB,IAAS,EACT,EACC,MAAM,EACN,UAAU,EACV,SAAS,EACT,OAAO,EACP,SAAS,EAOT,KACE;AACH,IAAA,OAAOA,SAAO,CAAC,IAAI,CAAC,MAAM,CAAC,IAAI,EAAE,IAAI,EAAE,QAAQ,CAAC,EAAE,IAAI,EAAE,MAAM,CAAC,EAAE;AAChE,QAAA,UAAU,EAAE,MAAM,UAAU,IAAI;QAChC,OAAO,EAAE,CAAC,KAAK,KAAK,OAAO,GAAG,KAAK,CAAC;QACpC,SAAS,EAAE,CAAC,IAAI,KAAK,SAAS,GAAG,IAAI,CAAC;AACtC,QAAA,SAAS,EAAE,MAAM,SAAS,IAAI;AAC9B,KAAA,CAAC;AACH,CAAC;;ACrBD,MAAM,OAAO,GAAG,CACf,IAAS,EACT,EACC,MAAM,EACN,UAAU,EACV,SAAS,EACT,OAAO,EACP,SAAS,EAOT,KACE;AACH,IAAA,OAAOA,SAAO,CAAC,GAAG,CAAC,MAAM,CAAC,IAAI,EAAE,IAAI,EAAE,KAAK,CAAC,EAAE,IAAI,EAAE,MAAM,CAAC,EAAE;AAC5D,QAAA,UAAU,EAAE,MAAM,UAAU,IAAI;QAChC,OAAO,EAAE,CAAC,KAAK,KAAK,OAAO,GAAG,KAAK,CAAC;QACpC,SAAS,EAAE,CAAC,IAAI,KAAK,SAAS,GAAG,IAAI,CAAC;AACtC,QAAA,SAAS,EAAE,MAAM,SAAS,IAAI;AAC9B,KAAA,CAAC;AACH,CAAC;;ACvBD,MAAM,EAAE,GAAG;AACV,IAAA,UAAU,EAAE,CAAC,EAAU,KACtB,GAAG,CAAC,MAAM,CAAC,IAAI,EAAE,IAAI,EAAE,KAAK,CAAC,EAAE;AAC9B,QAAA,MAAM,EAAE;YACP,EAAE;AACF,SAAA;KACD,CAAC;AACH,IAAA,OAAO,EAAE,CAAC,EAAW,KACpB,GAAG,CAAC,MAAM,CAAC,IAAI,EAAE,IAAI,EAAE,MAAM,CAAC,EAAE;AAC/B,QAAA,MAAM,EAAE;YACP,EAAE;AACF,SAAA;KACD,CAAC;IACH,OAAO;gBACPI;;;ACbD,MAAM,UAAU,GAAG,CAClB,IAAS,EACT,EACC,MAAM,EACN,UAAU,EACV,SAAS,EACT,OAAO,EACP,SAAS,EAOT,KACE;AACH,IAAA,OAAOJ,SAAO,CAAC,GAAG,CAAC,MAAM,CAAC,KAAK,EAAE,IAAI,EAAE,SAAS,EAAE,IAAI,CAAC,EAAE,IAAI,EAAE,MAAM,CAAC,EAAE;AACvE,QAAA,UAAU,EAAE,MAAM,UAAU,IAAI;QAChC,OAAO,EAAE,CAAC,KAAK,KAAK,OAAO,GAAG,KAAK,CAAC;QACpC,SAAS,EAAE,CAAC,IAAI,KAAK,SAAS,GAAG,IAAI,CAAC;AACtC,QAAA,SAAS,EAAE,MAAM,SAAS,IAAI;AAC9B,KAAA,CAAC;AACH,CAAC;;ACxBD,MAAM,GAAG,GAAG;AACX,IAAA,aAAa,EAAE,CAAC,EAAU,KACzB,GAAG,CAAC,MAAM,CAAC,KAAK,EAAE,IAAI,EAAE,QAAQ,EAAE,IAAI,CAAC,EAAE;AACxC,QAAA,MAAM,EAAE;YACP,EAAE;AACF,SAAA;KACD,CAAC;AACH,IAAA,UAAU,EAAE,MACX,GAAG,CAAC,MAAM,CAAC,KAAK,EAAE,IAAI,EAAE,SAAS,EAAE,IAAI,CAAC,EAAE;AACzC,QAAA,MAAM,EAAE,EACP;KACD,CAAC;AACH,IAAA,YAAY,EAAE,MACb,GAAG,CAAC,MAAM,CAAC,KAAK,EAAE,IAAI,EAAE,WAAW,EAAE,IAAI,CAAC,EAAE;AAC3C,QAAA,MAAM,EAAE,EACP;KACD,CAAC;AACH,IAAA,iBAAiB,EAAE,MAClB,GAAG,CAAC,MAAM,CAAC,KAAK,EAAE,IAAI,EAAE,mBAAmB,EAAE,IAAI,CAAC,EAAE;AACnD,QAAA,MAAM,EAAE,EACP;KACD,CAAC;IACH;;;;;"}
@@ -11,3 +11,4 @@ export declare const passwordReset: (data: Partial<AuthRequest>) => Promise<Axio
11
11
  export declare const signup: (data: SignupRequest) => Promise<AxiosResponse>;
12
12
  export declare const chttp: import("axios").AxiosInstance;
13
13
  export declare const linkiePost: (endpoint: string, data?: unknown, config?: AxiosRequestConfig<unknown>) => Promise<AxiosResponse>;
14
+ export declare const lhttp: import("axios").AxiosInstance;
@@ -2,6 +2,7 @@ import { default as firebase } from "firebase/compat/app";
2
2
  export type Config = {
3
3
  apiKey: string | null;
4
4
  apiUrl: string;
5
+ lmsUrl: string;
5
6
  linkieUrl?: string;
6
7
  appUrl: string;
7
8
  apisUrl: string;
@@ -0,0 +1,11 @@
1
+ import type { AuthRequestParams } from "../auth/types";
2
+ declare const addResume: (data: any, { config, onFetching, onSuccess, onError, onSettled }: {
3
+ onFetching?: () => void;
4
+ onSuccess?: (data: object) => void;
5
+ onError?: (error: string) => void;
6
+ onSettled?: () => void;
7
+ config?: {
8
+ params: AuthRequestParams;
9
+ };
10
+ }) => Promise<void>;
11
+ export default addResume;
@@ -0,0 +1,8 @@
1
+ declare const hr: {
2
+ v1: {
3
+ job: string;
4
+ jobs: string;
5
+ resume: string;
6
+ };
7
+ };
8
+ export default hr;
@@ -0,0 +1,24 @@
1
+ declare const Hr: {
2
+ getJobById: (id: string) => Promise<import("axios").AxiosResponse<any, any, {}>>;
3
+ getJobs: (id?: string) => Promise<import("axios").AxiosResponse<any, any, {}>>;
4
+ postJob: (data: import("./types").Job, { config, onFetching, onSuccess, onError, onSettled }: {
5
+ onFetching?: () => void;
6
+ onSuccess?: (data: object) => void;
7
+ onError?: (error: string) => void;
8
+ onSettled?: () => void;
9
+ config?: {
10
+ params: import("../auth/types").AuthRequestParams;
11
+ };
12
+ }) => Promise<void>;
13
+ postResume: (data: any, { config, onFetching, onSuccess, onError, onSettled }: {
14
+ onFetching?: () => void;
15
+ onSuccess?: (data: object) => void;
16
+ onError?: (error: string) => void;
17
+ onSettled?: () => void;
18
+ config?: {
19
+ params: import("../auth/types").AuthRequestParams;
20
+ };
21
+ }) => Promise<void>;
22
+ };
23
+ export type { Job } from "./types";
24
+ export default Hr;
@@ -0,0 +1,12 @@
1
+ import type { AuthRequestParams } from "../auth/types";
2
+ import type { Job } from "./types";
3
+ declare const postJob: (data: Job, { config, onFetching, onSuccess, onError, onSettled }: {
4
+ onFetching?: () => void;
5
+ onSuccess?: (data: object) => void;
6
+ onError?: (error: string) => void;
7
+ onSettled?: () => void;
8
+ config?: {
9
+ params: AuthRequestParams;
10
+ };
11
+ }) => Promise<void>;
12
+ export default postJob;
@@ -0,0 +1,6 @@
1
+ interface Job {
2
+ id?: string;
3
+ title?: string;
4
+ description?: string;
5
+ }
6
+ export type { Job };
@@ -12,6 +12,8 @@ export { default as Inventory } from "./inventory";
12
12
  export { default as Tools } from "./tools";
13
13
  export { default as Linkie } from "./linkie";
14
14
  export { default as Apis } from "./apis";
15
+ export { default as Hr } from "./hr";
16
+ export { default as LMS } from "./lms";
15
17
  export { getConfig, initializeSDK } from './config';
16
18
  export { getCookie } from "./utils/auth";
17
19
  export { getUrl } from "./config/route";
@@ -0,0 +1,10 @@
1
+ declare const lms: {
2
+ v1: {
3
+ courses: string;
4
+ course: string;
5
+ myCourses: string;
6
+ enrollCourse: string;
7
+ getEnrollStudents: string;
8
+ };
9
+ };
10
+ export default lms;
@@ -0,0 +1,12 @@
1
+ import type { AuthRequestParams } from "../auth/types";
2
+ import type { Job } from "./types";
3
+ declare const enrollCourse: (data: Job, { config, onFetching, onSuccess, onError, onSettled }: {
4
+ onFetching?: () => void;
5
+ onSuccess?: (data: object) => void;
6
+ onError?: (error: string) => void;
7
+ onSettled?: () => void;
8
+ config?: {
9
+ params: AuthRequestParams;
10
+ };
11
+ }) => Promise<void>;
12
+ export default enrollCourse;
@@ -0,0 +1,17 @@
1
+ declare const LMS: {
2
+ getCourseById: (id: string) => Promise<import("axios").AxiosResponse<any, any, {}>>;
3
+ getCourses: () => Promise<import("axios").AxiosResponse<any, any, {}>>;
4
+ getMyCourses: () => Promise<import("axios").AxiosResponse<any, any, {}>>;
5
+ getEnrollStudents: () => Promise<import("axios").AxiosResponse<any, any, {}>>;
6
+ postCourse: (data: import("./types").Job, { config, onFetching, onSuccess, onError, onSettled }: {
7
+ onFetching?: () => void;
8
+ onSuccess?: (data: object) => void;
9
+ onError?: (error: string) => void;
10
+ onSettled?: () => void;
11
+ config?: {
12
+ params: import("../auth/types").AuthRequestParams;
13
+ };
14
+ }) => Promise<void>;
15
+ };
16
+ export type { Job } from "./types";
17
+ export default LMS;
@@ -0,0 +1,12 @@
1
+ import type { AuthRequestParams } from "../auth/types";
2
+ import type { Job } from "./types";
3
+ declare const postCourse: (data: Job, { config, onFetching, onSuccess, onError, onSettled }: {
4
+ onFetching?: () => void;
5
+ onSuccess?: (data: object) => void;
6
+ onError?: (error: string) => void;
7
+ onSettled?: () => void;
8
+ config?: {
9
+ params: AuthRequestParams;
10
+ };
11
+ }) => Promise<void>;
12
+ export default postCourse;
@@ -0,0 +1,6 @@
1
+ interface Job {
2
+ id?: string;
3
+ title?: string;
4
+ description?: string;
5
+ }
6
+ export type { Job };
package/package.json CHANGED
@@ -1,56 +1,58 @@
1
1
  {
2
- "name": "@helpdice/sdk",
3
- "description": "A backend API-based SDK (Software Development Kit) provides developers with pre-built tools and libraries to interact seamlessly with a backend server or service. It simplifies the process of integrating external functionality, such as authentication, data storage, or third-party services, into applications. The SDK typically includes API endpoints, functions, and documentation, allowing developers to make requests, handle responses, and manage errors efficiently. By abstracting complex backend logic, it speeds up development, reduces coding errors, and ensures consistent interactions with the backend, making it easier to build scalable, secure, and feature-rich applications.",
4
- "version": "0.2.9",
5
- "type": "module",
6
- "main": "dist/index.js",
7
- "types": "dist/types/index.d.ts",
8
- "repository": {
9
- "type": "git",
10
- "url": "git+https://github.com/helpdice/sdk.git"
11
- },
12
- "homepage": "https://sdk.helpdice.com",
13
- "files": [
14
- "dist/**/*"
15
- ],
16
- "author": "Helpdice Team",
17
- "license": "MIT",
18
- "devDependencies": {
19
- "@biomejs/biome": "1.8.3",
20
- "@changesets/cli": "^2.27.7",
21
- "@rollup/plugin-typescript": "^11.1.3",
22
- "rollup": "^4.3.0",
23
- "@total-typescript/tsconfig": "^1.0.4",
24
- "@types/crypto-js": "^4.2.2",
25
- "@types/js-cookie": "^3.0.6",
26
- "@types/react": "^19.0.8",
27
- "typescript": "^5.5.3"
28
- },
29
- "bugs": {
30
- "url": "https://github.com/helpdice/sdk/issues"
31
- },
32
- "dependencies": {
33
- "axios": "^1.12.2",
34
- "crypto-js": "^4.2.0",
35
- "firebase": "^11.2.0",
36
- "fs": "^0.0.1-security",
37
- "fs-extra": "^11.3.0",
38
- "js-cookie": "^3.0.5",
39
- "jwt-decode": "^4.0.0",
40
- "nookies": "^2.5.2",
41
- "swr": "^2.3.0",
42
- "zod": "^3.24.1"
43
- },
44
- "scripts": {
45
- "build:cjs": "tsc --module CommonJS --outDir dist/cjs",
46
- "build:esm": "tsc --module ESNext --outDir dist/esm",
47
- "build": "npm run build:cjs && npm run build:esm",
48
- "build:rollup": "rollup -c",
49
- "clean": "rm -rf dist",
50
- "dev": "rollup -c -w",
51
- "check": "biome check --write ./src",
52
- "workflow:check": "biome check ./src",
53
- "release": "changeset publish",
54
- "release:github": "npm publish --registry=https://npm.pkg.github.com"
55
- }
2
+ "name": "@helpdice/sdk",
3
+ "description": "A backend API-based SDK (Software Development Kit) provides developers with pre-built tools and libraries to interact seamlessly with a backend server or service. It simplifies the process of integrating external functionality, such as authentication, data storage, or third-party services, into applications. The SDK typically includes API endpoints, functions, and documentation, allowing developers to make requests, handle responses, and manage errors efficiently. By abstracting complex backend logic, it speeds up development, reduces coding errors, and ensures consistent interactions with the backend, making it easier to build scalable, secure, and feature-rich applications.",
4
+ "version": "0.3.4",
5
+ "type": "module",
6
+ "main": "dist/index.js",
7
+ "types": "dist/types/index.d.ts",
8
+ "repository": {
9
+ "type": "git",
10
+ "url": "git+https://github.com/helpdice/sdk.git"
11
+ },
12
+ "homepage": "https://sdk.helpdice.com",
13
+ "files": [
14
+ "dist/**/*"
15
+ ],
16
+ "scripts": {
17
+ "build:cjs": "tsc --module CommonJS --outDir dist/cjs",
18
+ "build:esm": "tsc --module ESNext --outDir dist/esm",
19
+ "build": "npm run build:cjs && npm run build:esm",
20
+ "build:rollup": "rollup -c",
21
+ "clean": "rm -rf dist",
22
+ "dev": "rollup -c -w",
23
+ "check": "biome check --write ./src",
24
+ "workflow:check": "biome check ./src",
25
+ "release": "npm publish --access public --non-interactive",
26
+ "release:npm": "changeset publish",
27
+ "release:github": "npm publish --registry=https://npm.pkg.github.com"
28
+ },
29
+ "author": "Helpdice Team",
30
+ "license": "MIT",
31
+ "devDependencies": {
32
+ "@biomejs/biome": "1.8.3",
33
+ "@changesets/cli": "^2.27.7",
34
+ "@rollup/plugin-typescript": "^11.1.3",
35
+ "rollup": "^4.3.0",
36
+ "@total-typescript/tsconfig": "^1.0.4",
37
+ "@types/crypto-js": "^4.2.2",
38
+ "@types/js-cookie": "^3.0.6",
39
+ "@types/react": "^19.0.8",
40
+ "typescript": "^5.5.3"
41
+ },
42
+ "bugs": {
43
+ "url": "https://github.com/helpdice/sdk/issues"
44
+ },
45
+ "dependencies": {
46
+ "axios": "^1.12.2",
47
+ "crypto-js": "^4.2.0",
48
+ "firebase": "^11.2.0",
49
+ "fs": "^0.0.1-security",
50
+ "fs-extra": "^11.3.0",
51
+ "js-cookie": "^3.0.5",
52
+ "jwt-decode": "^4.0.0",
53
+ "nookies": "^2.5.2",
54
+ "swr": "^2.3.0",
55
+ "zod": "^3.24.1"
56
+ },
57
+ "packageManager": "pnpm@9.6.0+sha512.38dc6fba8dba35b39340b9700112c2fe1e12f10b17134715a4aa98ccf7bb035e76fd981cf0bb384dfa98f8d6af5481c2bef2f4266a24bfa20c34eb7147ce0b5e"
56
58
  }