You can not select more than 25 topics Topics must start with a letter or number, can include dashes ('-') and can be up to 35 characters long.

69 lines
2.1KB

  1. import { env } from "process";
  2. import { ApiId as A } from ".";
  3. import { HOST_API } from "config";
  4. const urls = {
  5. [A.CSRF_TOKEN]: "sanctum/csrf-cookie",
  6. [A.ME]: "me",
  7. [A.LOGIN]: "login",
  8. [A.LOGOUT]: "logout",
  9. [A.CHANGE_CONTRACT]: "change-contract",
  10. [A.APP_TOKEN_CHECK]: "app-token-check",
  11. [A.RECEIPT_ISSUING_ORDER_CONFIRM]: "receipt-issuing-order/confirm",
  12. [A.DOWNLOAD_RECEIPT]: "receipt/download",
  13. [A.RECEIPT_ISSUING_ORDER_MAIL_ORDER]: "receipt-issuing-order/mail-order",
  14. [A.RECEIPT_ISSUING_ORDER_MAIL_POST_COMPLETE]:
  15. "receipt-issuing-order/mail-complete",
  16. [A.RECEIPT_ISSUING_ORDER_HANDELRS]: "receipt-issuing-order/handlers",
  17. [A.RECEIPT_ISSUING_ORDER_CHANGE_HANDELR]:
  18. "receipt-issuing-order/change-handler",
  19. [A.DOWNLOAD_RECEIPT_LETTER]: "receipt-letter/download",
  20. [A.RECEIPT_ISSUING_ORDERS]: "receipt-issuing-orders",
  21. [A.CONTRACTS]: "contracts",
  22. [A.CONTRACT_CREATE]: "contract/create",
  23. [A.USE_SUMMARY_YYYYMM]: "use-summary/yyyymm",
  24. [A.LOGIN_USERS]: "users",
  25. [A.LOGIN_USER_CREATE]: "user/create",
  26. [A.LOGIN_USER_CHANGE_PASSWORD]: "user/change-password",
  27. // FOR CUSTOM
  28. [A.HT_CUSTOM_CUSTOMERS]: "custom/hello-techno/customers",
  29. [A.HT_CUSTOM_PARKINGS]: "custom/hello-techno/parkings",
  30. [A.HT_CUSTOM_ADJUST_DATA]: "custom/hello-techno/adjust-data",
  31. [A.HT_CUSTOM_RECEIPT_ISSUING_ORDERS]:
  32. "custom/hello-techno/receipt-issuing-orders",
  33. [A.HT_CUSTOM_RECEIPT_ISSUING_ORDER_CREATE]:
  34. "custom/hello-techno/receipt-issuing-order/create",
  35. [A.HT_CUSTOM_USE_SUMMARIES]: "custom/hello-techno/use-summaries",
  36. [A.HT_CUSTOM_USE_SUMMARY_DOWNLOAD_CSV]: "custom/hello-techno/use-summary/csv",
  37. };
  38. const prefixs = {
  39. [A.CSRF_TOKEN]: "",
  40. [A.DOWNLOAD_RECEIPT]: "",
  41. [A.DOWNLOAD_RECEIPT_LETTER]: "",
  42. [A.HT_CUSTOM_USE_SUMMARY_DOWNLOAD_CSV]: "",
  43. };
  44. const DEFAULT_API_URL_PREFIX = "api";
  45. const getPrefix = (apiId: A) => {
  46. return prefixs[apiId] ?? DEFAULT_API_URL_PREFIX;
  47. };
  48. export const getUrl = (apiId: A) => {
  49. let url = getPrefix(apiId);
  50. if (url.length !== 0) {
  51. url += "/";
  52. }
  53. return url + (urls[apiId] ?? "");
  54. };
  55. export const getFullUrl = (apiId: A) => {
  56. return HOST_API + "/" + getUrl(apiId);
  57. };