117 lines
4.6 KiB
TypeScript
117 lines
4.6 KiB
TypeScript
export const API_GATE_WAY = "https://apimznstg.aireview.ir";
|
|
export const ADMIN_API_PREFIX = "api/v1/admin";
|
|
|
|
export const REQUEST_TIMEOUT = 30000;
|
|
|
|
export const API_ROUTES = {
|
|
// Auth APIs
|
|
ADMIN_LOGIN: "auth/login",
|
|
|
|
// Draft APIs (non-admin)
|
|
GET_DISCOUNT_DETAIL: (id: string) => `api/v1/discount-drafts/${id}`,
|
|
GET_DRAFT_DETAIL: (id: string) => `api/v1/drafts/${id}`,
|
|
|
|
// Admin Users APIs
|
|
GET_ADMIN_USERS: "admin-users",
|
|
GET_ADMIN_USER: (id: string) => `admin-users/${id}`,
|
|
CREATE_ADMIN_USER: "admin-users",
|
|
UPDATE_ADMIN_USER: (id: string) => `admin-users/${id}`,
|
|
DELETE_ADMIN_USER: (id: string) => `admin-users/${id}`,
|
|
|
|
// Roles APIs
|
|
GET_ROLES: "roles",
|
|
GET_ROLE: (id: string) => `roles/${id}`,
|
|
CREATE_ROLE: "roles",
|
|
UPDATE_ROLE: (id: string) => `roles/${id}`,
|
|
DELETE_ROLE: (id: string) => `roles/${id}`,
|
|
GET_ROLE_PERMISSIONS: (id: string) => `roles/${id}/permissions`,
|
|
ASSIGN_ROLE_PERMISSION: (roleId: string, permissionId: string) =>
|
|
`roles/${roleId}/permissions/${permissionId}`,
|
|
REMOVE_ROLE_PERMISSION: (roleId: string, permissionId: string) =>
|
|
`roles/${roleId}/permissions/${permissionId}`,
|
|
|
|
// Permissions APIs
|
|
GET_PERMISSIONS: "permissions",
|
|
GET_PERMISSION: (id: string) => `permissions/${id}`,
|
|
CREATE_PERMISSION: "permissions",
|
|
UPDATE_PERMISSION: (id: string) => `permissions/${id}`,
|
|
DELETE_PERMISSION: (id: string) => `permissions/${id}`,
|
|
|
|
// Product Options APIs (non-admin)
|
|
GET_PRODUCT_OPTIONS: "products/options",
|
|
GET_PRODUCT_OPTION: (id: string) => `products/options/${id}`,
|
|
CREATE_PRODUCT_OPTION: "products/options",
|
|
UPDATE_PRODUCT_OPTION: (id: string) => `products/options/${id}`,
|
|
DELETE_PRODUCT_OPTION: (id: string) => `products/options/${id}`,
|
|
|
|
// Categories APIs (non-admin)
|
|
GET_CATEGORIES: "api/v1/products/categories",
|
|
GET_CATEGORY: (id: string) => `api/v1/products/categories/${id}`,
|
|
CREATE_CATEGORY: "api/v1/products/categories",
|
|
UPDATE_CATEGORY: (id: string) => `api/v1/products/categories/${id}`,
|
|
DELETE_CATEGORY: (id: string) => `api/v1/products/categories/${id}`,
|
|
|
|
// Products APIs (non-admin)
|
|
GET_PRODUCTS: "api/v1/products",
|
|
GET_PRODUCT: (id: string) => `api/v1/products/${id}`,
|
|
CREATE_PRODUCT: "api/v1/products",
|
|
UPDATE_PRODUCT: (id: string) => `api/v1/products/${id}`,
|
|
DELETE_PRODUCT: (id: string) => `api/v1/products/${id}`,
|
|
GET_PRODUCT_VARIANTS: (id: string) => `api/v1/products/${id}/variants`,
|
|
CREATE_PRODUCT_VARIANT: (id: string) => `api/v1/products/${id}/variants`,
|
|
UPDATE_PRODUCT_VARIANT: (variantId: string) =>
|
|
`api/v1/products/variants/${variantId}`,
|
|
DELETE_PRODUCT_VARIANT: (variantId: string) =>
|
|
`api/v1/products/variants/${variantId}`,
|
|
|
|
// Files APIs
|
|
GET_FILES: "files",
|
|
UPLOAD_FILE: "files",
|
|
GET_FILE: (id: string) => `files/${id}`,
|
|
UPDATE_FILE: (id: string) => `files/${id}`,
|
|
DELETE_FILE: (id: string) => `files/${id}`,
|
|
DOWNLOAD_FILE: (serveKey: string) => `api/v1/files/${serveKey}`, // non-admin
|
|
|
|
// Images APIs (non-admin)
|
|
GET_IMAGES: "api/v1/images",
|
|
CREATE_IMAGE: "api/v1/images",
|
|
UPDATE_IMAGE: (imageId: string) => `api/v1/products/images/${imageId}`,
|
|
DELETE_IMAGE: (imageId: string) => `api/v1/products/images/${imageId}`,
|
|
|
|
// Landing Hero APIs
|
|
GET_LANDING_HERO: "settings/landing/hero", // non-admin
|
|
UPDATE_LANDING_HERO: "settings/landing/hero", // admin
|
|
|
|
// Discount Codes APIs
|
|
GET_DISCOUNT_CODES: "discount/",
|
|
GET_DISCOUNT_CODE: (id: string) => `discount/${id}/`,
|
|
CREATE_DISCOUNT_CODE: "discount/",
|
|
UPDATE_DISCOUNT_CODE: (id: string) => `discount/${id}/`,
|
|
DELETE_DISCOUNT_CODE: (id: string) => `discount/${id}/`,
|
|
|
|
// Orders APIs
|
|
GET_ORDERS: "checkout/orders",
|
|
GET_ORDER: (id: string) => `checkout/orders/${id}`,
|
|
GET_ORDER_STATS: "checkout/orders/statistics",
|
|
UPDATE_ORDER_STATUS: (id: string) => `checkout/orders/${id}/status`,
|
|
|
|
// Shipping Methods APIs
|
|
GET_SHIPPING_METHODS: "checkout/shipping-methods",
|
|
GET_SHIPPING_METHOD: (id: string) => `checkout/shipping-methods/${id}`,
|
|
CREATE_SHIPPING_METHOD: "checkout/shipping-methods",
|
|
UPDATE_SHIPPING_METHOD: (id: string) => `checkout/shipping-methods/${id}`,
|
|
DELETE_SHIPPING_METHOD: (id: string) => `checkout/shipping-methods/${id}`,
|
|
|
|
// User Admin APIs
|
|
GET_USERS: "users",
|
|
GET_USER: (id: string) => `users/${id}`,
|
|
SEARCH_USERS: "users/search",
|
|
CREATE_USER: "users",
|
|
UPDATE_USER: (id: string) => `users/${id}`,
|
|
UPDATE_USER_PROFILE: (id: string) => `users/${id}/profile`,
|
|
UPDATE_USER_AVATAR: (id: string) => `users/${id}/avatar`,
|
|
DELETE_USER: (id: string) => `users/${id}`,
|
|
VERIFY_USER: (id: string) => `users/${id}/verify`,
|
|
UNVERIFY_USER: (id: string) => `users/${id}/unverify`,
|
|
};
|