@tabres/react 1.0.16 → 1.0.18
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.esm.js +1 -1
- package/dist/index.esm.js.map +1 -1
- package/dist/index.js +1 -1
- package/dist/index.js.map +1 -1
- package/dist/models/index.esm.js.map +1 -1
- package/dist/models/index.js.map +1 -1
- package/dist/models/modules/addon/models.d.ts +2 -12
- package/dist/models/modules/addon/utils.d.ts +3 -3
- package/dist/models/modules/product/models.d.ts +6 -12
- package/dist/models/modules/product/utils.d.ts +3 -3
- package/dist/modules/addon/models.d.ts +2 -12
- package/dist/modules/addon/utils.d.ts +3 -3
- package/dist/modules/product/models.d.ts +6 -12
- package/dist/modules/product/utils.d.ts +3 -3
- package/dist/utils/index.esm.js +1 -1
- package/dist/utils/index.esm.js.map +1 -1
- package/dist/utils/index.js +1 -1
- package/dist/utils/index.js.map +1 -1
- package/dist/utils/modules/addon/models.d.ts +2 -12
- package/dist/utils/modules/addon/utils.d.ts +3 -3
- package/dist/utils/modules/product/models.d.ts +6 -12
- package/dist/utils/modules/product/utils.d.ts +3 -3
- package/package.json +1 -1
|
@@ -1 +1 @@
|
|
|
1
|
-
{"version":3,"file":"index.esm.js","sources":["../../../src/modules/addon/models.ts","../../../src/modules/branch/models.ts","../../../src/modules/business/models.ts","../../../src/modules/customer/models.ts","../../../src/modules/feature/models.ts","../../../src/modules/order/models.ts","../../../src/modules/product/models.ts","../../../src/modules/subscription/models.ts","../../../src/modules/table/models.ts","../../../src/modules/user/models.ts"],"sourcesContent":["export enum MenuAddonSelectType {\n\tSINGLE = \"SINGLE\",\n\tMULTIPLE = \"MULTIPLE\",\n}\n\nexport interface MenuAddonTranslation {\n\tid?: number;\n\ttitle: string;\n\tlanguage: string;\n}\n\nexport interface MenuAddonOptionTranslation {\n\tid?: number;\n\ttitle: string;\n\tlanguage: string;\n}\n\nexport interface MenuAddonOption {\n\tid?: number;\n\tprice: number;\n\ttranslations: MenuAddonOptionTranslation[];\n\tremove?: boolean;\n}\n\nexport interface MenuAddon {\n\tid?: number;\n\tselectType: MenuAddonSelectType;\n\ttranslations: MenuAddonTranslation[];\n\toptions: MenuAddonOption[];\n\tbusinessId?: number;\n}\n","export type BranchWorkHour = {\n\topenAt: string;\n\tcloseAt: string;\n};\n\nexport type BranchWorkDay = {\n\tday: number;\n\thours: BranchWorkHour | null;\n};\n\nexport type BranchWorkDays = {\n\tdays: BranchWorkDay[];\n};\n\nexport interface BranchSettings {\n\tdeliveryOrderEnabled: boolean;\n\tpickupOrderEnabled: boolean;\n\tdineInOrderEnabled: boolean;\n\tmaxDeliveryDistance: number;\n\tminDeliveryAmount: number;\n\tdeliveryFeeAmount: number;\n\tserviceChargeEnabled: boolean;\n\tserviceChargePercentage: number;\n\taddToOrderEnabled: boolean;\n}\n\nexport enum BranchSetting {\n\tMAX_DELIVERY_DISTANCE = \"maxDeliveryDistance\",\n\tDELIVERY_ORDER_ENABLED = \"deliveryOrderEnabled\",\n\tPICKUP_ORDER_ENABLED = \"pickupOrderEnabled\",\n\tDINE_IN_ORDER_ENABLED = \"dineInOrderEnabled\",\n\tMIN_DELIVERY_AMOUNT = \"minDeliveryAmount\",\n\tDELIVERY_FEE_AMOUNT = \"deliveryFeeAmount\",\n\tSERVICE_CHARGE_ENABLED = \"serviceChargeEnabled\",\n\tSERVICE_CHARGE_PERCENTAGE = \"serviceChargePercentage\",\n\tADD_TO_ORDER_ENABLED = \"addToOrderEnabled\",\n}\n\nexport interface Branch {\n\tid: number;\n\tname: string;\n\tbusinessId: number;\n\taddress: string;\n\tlongitude?: number;\n\tlatitude?: number;\n\tphone?: string;\n\twhatsApp?: string;\n\ttelegram?: string;\n\twifiPassword?: string;\n\tcreatedAt?: number;\n\tcoverPhoto?: string;\n\tsettings?: BranchSettings;\n\topeningHours?: BranchWorkDays;\n\tdeliveryHours?: BranchWorkDays;\n}\n\nexport type BranchServes = {\n\tisOpen: boolean;\n\tisDelivering: boolean;\n};\n\nexport enum BranchTaxType {\n\tPERCENTAGE = \"percentage\",\n\tFIXED_AMOUNT = \"fixed\",\n}\n\nexport enum BranchTaxScope {\n\tENTIRE_MENU = \"entire_menu\",\n\tCLASS = \"class\",\n}\n\nexport enum BranchTaxFulfillment {\n\tDELIVERY = \"delivery\",\n\tTAKEAWAY = \"takeaway\",\n\tDINE_IN = \"dine_in\",\n\tALL = \"ALL\",\n}\n\nexport type BranchTax = {\n\tid: number;\n\tbusinessId: number;\n\tbranchId: number;\n\ttaxClassId?: number;\n\tname: Record<string, string>;\n\trate: number;\n\ttype: BranchTaxType;\n\tisActive: boolean;\n\tcreatedAt: number;\n\tupdatedAt: number;\n\tscope: BranchTaxScope;\n\tincludedInPrice: boolean;\n\tisDefault: boolean;\n\tcomputationOrder: number;\n\tappliesToFulfillment?: BranchTaxFulfillment;\n\ttaxClassCode?: string;\n};\n","import * as featureModels from \"../feature/models\";\nimport * as subscriptionModels from \"../subscription/models\";\n\nexport interface BusinessLanguage {\n\tid: number;\n\tcode: string;\n\tbusinessId: number;\n}\n\nexport enum BusinessSetting {\n\tMAX_DELIVERY_DISTANCE = \"maxDeliveryDistance\",\n\tDELIVERY_ORDER_ENABLED = \"deliveryOrderEnabled\",\n\tPICKUP_ORDER_ENABLED = \"pickupOrderEnabled\",\n\tDINE_IN_ORDER_ENABLED = \"dineInOrderEnabled\",\n\tMIN_DELIVERY_AMOUNT = \"minDeliveryAmount\",\n}\n\nexport interface Business {\n\tid: number;\n\tname: string;\n\tusername: string;\n\tavatar64?: string;\n\tavatar128?: string;\n\tavatar256?: string;\n\tcoverPhoto?: string;\n\tinstagram?: string;\n\tfacebook?: string;\n\ttiktok?: string;\n\tcreatedAt?: number;\n\tcurrency: string;\n\tlanguages: BusinessLanguage[];\n\tsubscriptions?: subscriptionModels.Subscription[];\n\tsegment?: featureModels.FeatureSegment;\n}\n","export enum CustomerAuthStep {\n\tPHONE = \"PHONE\",\n\tOTP = \"OTP\",\n\tEMAIL = \"EMAIL\",\n}\n\nexport enum CustomerAddressType {\n\tHOME = \"HOME\",\n\tWORK = \"WORK\",\n\tTRAVEL = \"TRAVEL\",\n}\n\nexport interface CustomerAddress {\n\tid?: number;\n\taddressId?: number; // Update address temporary\n\tcountryCode: string;\n\tcityName: string;\n\tstreet: string;\n\thouseNumber: string;\n\tadditionalNumber?: string;\n\tpostCode?: string;\n\tinstructions?: string;\n\tfloor?: number;\n\tlongitude?: number;\n\tlatitude?: number;\n\ttitle?: string;\n\ttype?: CustomerAddressType;\n}\n\nexport interface CustomerAuthForm {\n\totp: string;\n\temail: string;\n}\n\nexport interface CustomerAuthPhoneForm {\n\tcountryCode: string;\n\tphoneNumber: string;\n}\n\nexport interface AuthResponse {\n\taccessToken: string;\n\trefreshToken: string;\n}\n\nexport interface Customer {\n\tid?: number;\n\temail: string;\n\tphoneNumber: string;\n\tfullName: string;\n\tsmsVerified?: boolean;\n\temailVerified?: boolean;\n\taddress?: CustomerAddress;\n\taddresses?: CustomerAddress[];\n}\n\nexport type CustomerUpdatePayload = Partial<Customer>;\n","export enum Feature {\n\tUPLOAD_VIDEO = \"UPLOAD_VIDEO\",\n}\nexport enum FeatureSegment {\n\tALPHA = \"ALPHA\",\n\tBETA = \"BETA\",\n\tALL = \"ALL\",\n}\n","import * as customerModels from \"../customer/models\";\nimport * as productModels from \"../product/models\";\n\nexport enum OrderType {\n\tDINE_IN = \"DINE_IN\",\n\tPICK_UP = \"PICK_UP\",\n\tDELIVERY = \"DELIVERY\",\n}\n\nexport enum OrderStatus {\n\tDRAFT = \"DRAFT\",\n\tPENDING = \"PENDING\",\n\tCONFIRMED = \"CONFIRMED\",\n\tPREPARING = \"PREPARING\",\n\tREADY = \"READY\",\n\tOUT_FOR_DELIVERY = \"OUT_FOR_DELIVERY\",\n\tDELIVERED = \"DELIVERED\",\n\tCOMPLETED = \"COMPLETED\",\n\tCANCELLED = \"CANCELLED\",\n\tFAILED = \"FAILED\",\n}\n\nexport enum OrderItemStatus {\n\tPENDING = \"PENDING\",\n\tPREPARING = \"PREPARING\",\n\tREADY = \"READY\",\n\tSERVED = \"SERVED\",\n}\n\nexport enum PaymentMethod {\n\tCASH = \"CASH\",\n\tCARD = \"CARD\",\n\tWALLET = \"WALLET\",\n\tTERMINAL = \"TERMINAL\",\n}\n\nexport interface OrderAddonOption {\n\toptionId: number;\n\tprice: number;\n}\n\nexport interface OrderAddon {\n\tid?: number;\n\taddonId: number;\n\toptions: OrderAddonOption[];\n}\n\nexport interface SelectedAddons {\n\t[key: number]: number | number[];\n}\n\nexport interface OrderItemVariant {\n\tid?: number;\n\tvariantId: number;\n\tprice: number;\n}\n\nexport interface OrderItem {\n\tid?: number;\n\tproductId: number;\n\torderId?: number;\n\tquantity: number;\n\tprice: number;\n\tvariant?: OrderItemVariant;\n\taddons: OrderAddon[];\n\tnote?: string;\n\tstatus?: OrderItemStatus;\n\tvat?: number;\n\tisPaid?: boolean;\n\tsellUnitType: productModels.SellUnitType;\n}\n\nexport interface Order {\n\tid?: number;\n\tbusinessId?: number;\n\tbranchId?: number;\n\tworkingDayId?: number;\n\ttableId?: number;\n\temployeeId?: number;\n\torderType: OrderType;\n\ttotalPriceWithTax: number;\n\ttotalPriceWithTaxAndFees?: number;\n\ttotalPriceWithoutTax: number;\n\ttotalTax: number;\n\titems: OrderItem[];\n\tstatus?: OrderStatus;\n\tvat?: number;\n\tpaymentMethod?: PaymentMethod;\n\tnote?: string;\n\tcreatedAt?: number;\n\tupdatedAt?: number;\n\tcustomer?: customerModels.Customer;\n\tdeliveryFee?: number;\n}\n\nexport interface OrderItems {\n\t[key: string]: OrderItem;\n}\n\nexport enum OrderStep {\n\tCART = \"CART\",\n\tDETAILS = \"DETAILS\",\n\tCOMPLETED = \"COMPLETED\",\n}\n\nexport interface OrderPayload extends Order {\n\tcustomerAddressId: number;\n\tcustomerId: number;\n\tlanguage?: string;\n}\n\nexport type OrderPriceDetails = {\n\ttotalPriceWithTax: number;\n\ttotalPriceWithTaxAndFees: number;\n\ttotalPriceWithoutTax: number;\n\ttotalTax: number;\n};\n\nexport type OrderFormattedPriceDetails = {\n\ttotalPriceWithTax: string;\n\ttotalPriceWithTaxAndFees: string;\n\ttotalPriceWithoutTax: string;\n\ttotalTax: string;\n};\n","import { MenuAddon } from \"../addon/models\";\n\nexport interface ProductTranslation {\n\tid: number;\n\tname: string;\n\tdescription?: string;\n\tlanguage: string;\n\tproductId?: number;\n}\n\nexport interface ProductVariantTranslation {\n\tid?: number;\n\ttitle: string;\n\tlanguage: string;\n}\n\nexport interface ProductVariant {\n\tid?: number;\n\tprice: number;\n\ttranslations: ProductVariantTranslation[];\n\tproductId?: number;\n\tremove?: boolean;\n}\n\nexport interface Product {\n\tid: number;\n\tcategoryId: number;\n\tvat?: number;\n\tprice: number;\n\tvolume?: string; // 100qr/250ml/1kq\n\timage160?: string;\n\timage580?: string;\n\timage1024?: string;\n\ttranslations: ProductTranslation[];\n\tvariants: ProductVariant[];\n\taddons: MenuAddon[];\n\tavailable?: boolean;\n\tvisible?: boolean;\n\tposition?: number;\n\tvideoUrl?: string;\n\tsellUnitType?: SellUnitType;\n}\n\nexport enum ProductView {\n\tLIST = \"list\",\n\tGRID = \"grid\",\n}\n\nexport interface DashboardProduct extends Omit<Product, \"addons\"> {\n\taddons: number[];\n}\n\nexport enum SellUnitType {\n\tPIECE = \"PIECE\",\n\tWEIGHT = \"WEIGHT\",\n\tVOLUME = \"VOLUME\",\n}\n","export enum PlanType {\n\tAPPETIZER = \"appetizer\",\n\tMAIN_COURSE = \"mainCourse\",\n\tCHEFS_SPECIAL = \"chefsSpecial\",\n\tLIFETIME = \"lifeTime\",\n}\n\nexport interface PricingPlan {\n\ttitle: string;\n\tprice: {\n\t\tmonthly: number;\n\t\tannually: number;\n\t};\n\tdiscountedPrice?: number;\n\tribbonText?: string;\n}\n\nexport interface PricingPlans {\n\t[key: string]: PricingPlan;\n}\n\nexport type PricingInterval = \"monthly\" | \"annually\";\n\nexport enum SubscriptionStatus {\n\tACTIVE = \"ACTIVE\",\n\tEXPIRED = \"EXPIRED\",\n\tCANCELLED = \"CANCELLED\",\n}\n\nexport type BillingInterval = \"MONTH\" | \"YEAR\";\n\nexport interface Subscription {\n\tid: number;\n\tbillingInterval: BillingInterval;\n\tbillingIntervalCount: number;\n\tstartDate: string;\n\tendDate: string;\n\tinterval: PricingInterval;\n\tstatus: SubscriptionStatus;\n\tbusiness_id?: number;\n\tplanName: string;\n}\n","export enum TableShape {\n\tSQUARE = \"SQUARE\",\n\tCIRCLE = \"CIRCLE\",\n\tRECTANGLE = \"RECTANGLE\",\n\tRECTANGLE_VERTICAL = \"RECTANGLE_VERTICAL\",\n\tSINGLE_AT_BAR = \"SINGLE_AT_BAR\",\n\tOTHER = \"OTHER\",\n}\n\nexport enum TableStatus {\n\tVACANT = \"VACANT\", // Free and available\n\tRESERVED = \"RESERVED\", // Booked but not yet seated\n\tOCCUPIED = \"OCCUPIED\", // Currently in use\n\tBLOCKED = \"BLOCKED\", // Temporarily blocked/unavailable\n\tNEEDS_CLEANING = \"NEEDS_CLEANING\", // Dirty, awaiting cleanup\n\tOUT_OF_SERVICE = \"OUT_OF_SERVICE\", // Permanently unavailable repair/maintenance\n\tPENDING_CONFIRMATION = \"PENDING_CONFIRMATION\", // Reservation not yet confirmed\n\tNO_SHOW = \"NO_SHOW\", // Reserved but guest didn’t arrive\n}\n\nexport enum TableLocation {\n\t// Indoor\n\tMAIN_HALL = \"MAIN_HALL\",\n\tPRIVATE_DINING = \"PRIVATE_DINING\",\n\tVIP_ROOM = \"VIP_ROOM\",\n\tBANQUET_HALL = \"BANQUET_HALL\",\n\tBAR_AREA = \"BAR_AREA\",\n\tLOUNGE = \"LOUNGE\",\n\tOPEN_KITCHEN = \"OPEN_KITCHEN\",\n\tBOOTH_SECTION = \"BOOTH_SECTION\",\n\tMEZZANINE = \"MEZZANINE\",\n\tWINE_CELLAR = \"WINE_CELLAR\",\n\n\t// Outdoor\n\tTERRACE = \"TERRACE\",\n\tPATIO = \"PATIO\",\n\tGARDEN = \"GARDEN\",\n\tCOURTYARD = \"COURTYARD\",\n\tROOFTOP = \"ROOFTOP\",\n\tBALCONY = \"BALCONY\",\n\tSIDEWALK = \"SIDEWALK\",\n\tPOOLSIDE = \"POOLSIDE\",\n\n\t// Special Sections\n\tSMOKING_AREA = \"SMOKING_AREA\",\n\tNON_SMOKING = \"NON_SMOKING\",\n\tFAMILY_SECTION = \"FAMILY_SECTION\",\n\tKIDS_AREA = \"KIDS_AREA\",\n\tWAITING_AREA = \"WAITING_AREA\",\n\tDANCE_FLOOR = \"DANCE_FLOOR\",\n}\n\nexport interface Table {\n\tid: number;\n\tbusinessId: number;\n\tbranchId: number;\n\tname: string;\n\tseatCount: number;\n\tshape: TableShape;\n\tlocation: TableLocation;\n\tstatus: TableStatus;\n}\n\nexport interface TableState {\n\ttables: Table[];\n}\n\nexport type TableForm = Omit<Table, \"id\" | \"businessId\" | \"branchId\"> & {\n\tbranchId: string | number;\n};\n\nexport type TableUpdate = Partial<Omit<Table, \"id\" | \"businessId\">>;\n\nexport type TableFilter = Partial<Pick<Table, \"branchId\" | \"shape\" | \"location\" | \"status\">>;\n\nexport type TableFilterParams = { field: keyof TableFilter; value: TableFilter[keyof TableFilter] };\n","export enum EmployeePermission {\n\tVIEW_BUSINESS = \"VIEW_BUSINESS\",\n\tUPDATE_BUSINESS = \"UPDATE_BUSINESS\",\n\tVIEW_ORDERS = \"VIEW_ORDERS\",\n\tUPDATE_ORDER = \"UPDATE_ORDER\",\n\tCREATE_ORDER = \"CREATE_ORDER\",\n\tVIEW_QR_MENU = \"VIEW_QR_MENU\",\n\tVIEW_MENU = \"VIEW_MENU\",\n\tVIEW_MENU_ITEMS = \"VIEW_MENU_ITEMS\",\n\tCREATE_MENU_ITEM = \"CREATE_MENU_ITEM\",\n\tUPDATE_MENU_ITEM = \"UPDATE_MENU_ITEM\",\n\tDELETE_MENU_ITEM = \"DELETE_MENU_ITEM\",\n\tVIEW_CATEGORIES = \"VIEW_CATEGORIES\",\n\tUPDATE_CATEGORY = \"UPDATE_CATEGORY\",\n\tCREATE_CATEGORY = \"CREATE_CATEGORY\",\n\tDELETE_CATEGORY = \"DELETE_CATEGORY\",\n\tVIEW_ADDONS = \"VIEW_ADDONS\",\n\tUPDATE_ADDON = \"UPDATE_ADDON\",\n\tCREATE_ADDON = \"CREATE_ADDON\",\n\tDELETE_ADDON = \"DELETE_ADDON\",\n\tVIEW_TABLES = \"VIEW_TABLES\",\n\tUPDATE_TABLE = \"UPDATE_TABLE\",\n\tUPDATE_TABLE_STATUS = \"UPDATE_TABLE_STATUS\",\n\tCREATE_TABLE = \"CREATE_TABLE\",\n\tDELETE_TABLE = \"DELETE_TABLE\",\n\tVIEW_BRANCHES = \"VIEW_BRANCHES\",\n\tUPDATE_BRANCH = \"UPDATE_BRANCH\",\n\tCREATE_BRANCH = \"CREATE_BRANCH\",\n\tDELETE_BRANCH = \"DELETE_BRANCH\",\n\tVIEW_EMPLOYEES = \"VIEW_EMPLOYEES\",\n\tUPDATE_EMPLOYEE = \"UPDATE_EMPLOYEE\",\n\tCREATE_EMPLOYEE = \"CREATE_EMPLOYEE\",\n\tDELETE_EMPLOYEE = \"DELETE_EMPLOYEE\",\n\tVIEW_ANALYTICS = \"VIEW_ANALYTICS\",\n\tVIEW_SALES_REPORTS = \"VIEW_SALES_REPORTS\",\n\tVIEW_SUBSCRIPTION = \"VIEW_SUBSCRIPTION\",\n\tUPDATE_SUBSCRIPTION = \"UPDATE_SUBSCRIPTION\",\n\tVIEW_QR_CODES = \"VIEW_QR_CODES\",\n\tCREATE_QR_CODE = \"CREATE_QR_CODE\",\n\tDELETE_QR_CODE = \"DELETE_QR_CODE\",\n\tALL = \"ALL\",\n\t// Inventory\n\tVIEW_INVENTORY = \"VIEW_INVENTORY\",\n\tVIEW_PURCHASES = \"VIEW_PURCHASES\",\n\tVIEW_PURCHASE_DETAIL = \"VIEW_PURCHASE_DETAIL\",\n\tCREATE_PURCHASE = \"CREATE_PURCHASE\",\n\tUPDATE_PURCHASE = \"UPDATE_PURCHASE\",\n\tDELETE_PURCHASE = \"DELETE_PURCHASE\",\n\tVIEW_INVENTORY_PRODUCTS = \"VIEW_INVENTORY_PRODUCTS\",\n\tCREATE_INVENTORY_PRODUCT = \"CREATE_INVENTORY_PRODUCT\",\n\tUPDATE_INVENTORY_PRODUCT = \"UPDATE_INVENTORY_PRODUCT\",\n\tDELETE_INVENTORY_PRODUCT = \"DELETE_INVENTORY_PRODUCT\",\n\tVIEW_BUSINESS_BALANCE = \"VIEW_BUSINESS_BALANCE\",\n\tVIEW_BRANCH_BALANCE = \"VIEW_BRANCH_BALANCE\",\n\tUPDATE_PRODUCT_INGREDIENTS = \"UPDATE_PRODUCT_INGREDIENTS\",\n\tDELETE_PRODUCT_INGREDIENTS = \"DELETE_PRODUCT_INGREDIENTS\",\n\tAI_ASSISTANT = \"AI_ASSISTANT\",\n}\n\nexport enum UserRole {\n\tOWNER = \"OWNER\",\n\tBRANCH_MANAGER = \"BRANCH_MANAGER\",\n\tGENERAL_MANAGER = \"GENERAL_MANAGER\",\n\tCHEF = \"CHEF\",\n\tSOUS_CHEF = \"SOUS_CHEF\",\n\tPASTRY_CHEF = \"PASTRY_CHEF\",\n\tLINE_COOK = \"LINE_COOK\",\n\tPREP_COOK = \"PREP_COOK\",\n\tKITCHEN_ASSISTANT = \"KITCHEN_ASSISTANT\",\n\tDISHWASHER = \"DISHWASHER\",\n\tHEAD_WAITER = \"HEAD_WAITER\",\n\tWAITER = \"WAITER\",\n\tRUNNER = \"RUNNER\",\n\tBARISTA = \"BARISTA\",\n\tBARTENDER = \"BARTENDER\",\n\tSOMMELIER = \"SOMMELIER\",\n\tACCOUNTANT = \"ACCOUNTANT\",\n\tROOM_SERVICE_STAFF = \"ROOM_SERVICE_STAFF\",\n\tDELIVERY_DRIVER = \"DELIVERY_DRIVER\",\n\tINVENTORY_MANAGER = \"INVENTORY_MANAGER\",\n\tPURCHASING_MANAGER = \"PURCHASING_MANAGER\",\n\tWAREHOUSE_STAFF = \"WAREHOUSE_STAFF\",\n}\n\nexport interface User {\n\tid?: number;\n\temail: string;\n\tfullName: string;\n\trole?: UserRole;\n\tavatar64?: string | null;\n\tavatar128?: string | null;\n\tavatar256?: string | null;\n\tbusinessId?: number;\n\tbranchId?: number | null;\n\tcreatedAt: string;\n\temailVerified?: boolean;\n\tpermissions?: EmployeePermission[];\n}\n"],"names":["MenuAddonSelectType","BranchSetting","BranchTaxType","BranchTaxScope","BranchTaxFulfillment","BusinessSetting","CustomerAuthStep","CustomerAddressType","Feature","FeatureSegment","OrderType","OrderStatus","OrderItemStatus","PaymentMethod","OrderStep","ProductView","SellUnitType","PlanType","SubscriptionStatus","TableShape","TableStatus","TableLocation","EmployeePermission","UserRole"],"mappings":"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"}
|
|
1
|
+
{"version":3,"file":"index.esm.js","sources":["../../../src/modules/addon/models.ts","../../../src/modules/branch/models.ts","../../../src/modules/business/models.ts","../../../src/modules/customer/models.ts","../../../src/modules/feature/models.ts","../../../src/modules/order/models.ts","../../../src/modules/product/models.ts","../../../src/modules/subscription/models.ts","../../../src/modules/table/models.ts","../../../src/modules/user/models.ts"],"sourcesContent":["export enum MenuAddonSelectType {\n\tSINGLE = \"SINGLE\",\n\tMULTIPLE = \"MULTIPLE\",\n}\n\nexport interface MenuAddonOption {\n\tid?: number;\n\tprice: number;\n\ttitle: Record<string, string>;\n\tremove?: boolean;\n}\n\nexport interface MenuAddon {\n\tid?: number;\n\tselectType: MenuAddonSelectType;\n\toptions: MenuAddonOption[];\n\tbusinessId?: number;\n\ttitle: Record<string, string>;\n}\n","export type BranchWorkHour = {\n\topenAt: string;\n\tcloseAt: string;\n};\n\nexport type BranchWorkDay = {\n\tday: number;\n\thours: BranchWorkHour | null;\n};\n\nexport type BranchWorkDays = {\n\tdays: BranchWorkDay[];\n};\n\nexport interface BranchSettings {\n\tdeliveryOrderEnabled: boolean;\n\tpickupOrderEnabled: boolean;\n\tdineInOrderEnabled: boolean;\n\tmaxDeliveryDistance: number;\n\tminDeliveryAmount: number;\n\tdeliveryFeeAmount: number;\n\tserviceChargeEnabled: boolean;\n\tserviceChargePercentage: number;\n\taddToOrderEnabled: boolean;\n}\n\nexport enum BranchSetting {\n\tMAX_DELIVERY_DISTANCE = \"maxDeliveryDistance\",\n\tDELIVERY_ORDER_ENABLED = \"deliveryOrderEnabled\",\n\tPICKUP_ORDER_ENABLED = \"pickupOrderEnabled\",\n\tDINE_IN_ORDER_ENABLED = \"dineInOrderEnabled\",\n\tMIN_DELIVERY_AMOUNT = \"minDeliveryAmount\",\n\tDELIVERY_FEE_AMOUNT = \"deliveryFeeAmount\",\n\tSERVICE_CHARGE_ENABLED = \"serviceChargeEnabled\",\n\tSERVICE_CHARGE_PERCENTAGE = \"serviceChargePercentage\",\n\tADD_TO_ORDER_ENABLED = \"addToOrderEnabled\",\n}\n\nexport interface Branch {\n\tid: number;\n\tname: string;\n\tbusinessId: number;\n\taddress: string;\n\tlongitude?: number;\n\tlatitude?: number;\n\tphone?: string;\n\twhatsApp?: string;\n\ttelegram?: string;\n\twifiPassword?: string;\n\tcreatedAt?: number;\n\tcoverPhoto?: string;\n\tsettings?: BranchSettings;\n\topeningHours?: BranchWorkDays;\n\tdeliveryHours?: BranchWorkDays;\n}\n\nexport type BranchServes = {\n\tisOpen: boolean;\n\tisDelivering: boolean;\n};\n\nexport enum BranchTaxType {\n\tPERCENTAGE = \"percentage\",\n\tFIXED_AMOUNT = \"fixed\",\n}\n\nexport enum BranchTaxScope {\n\tENTIRE_MENU = \"entire_menu\",\n\tCLASS = \"class\",\n}\n\nexport enum BranchTaxFulfillment {\n\tDELIVERY = \"delivery\",\n\tTAKEAWAY = \"takeaway\",\n\tDINE_IN = \"dine_in\",\n\tALL = \"ALL\",\n}\n\nexport type BranchTax = {\n\tid: number;\n\tbusinessId: number;\n\tbranchId: number;\n\ttaxClassId?: number;\n\tname: Record<string, string>;\n\trate: number;\n\ttype: BranchTaxType;\n\tisActive: boolean;\n\tcreatedAt: number;\n\tupdatedAt: number;\n\tscope: BranchTaxScope;\n\tincludedInPrice: boolean;\n\tisDefault: boolean;\n\tcomputationOrder: number;\n\tappliesToFulfillment?: BranchTaxFulfillment;\n\ttaxClassCode?: string;\n};\n","import * as featureModels from \"../feature/models\";\nimport * as subscriptionModels from \"../subscription/models\";\n\nexport interface BusinessLanguage {\n\tid: number;\n\tcode: string;\n\tbusinessId: number;\n}\n\nexport enum BusinessSetting {\n\tMAX_DELIVERY_DISTANCE = \"maxDeliveryDistance\",\n\tDELIVERY_ORDER_ENABLED = \"deliveryOrderEnabled\",\n\tPICKUP_ORDER_ENABLED = \"pickupOrderEnabled\",\n\tDINE_IN_ORDER_ENABLED = \"dineInOrderEnabled\",\n\tMIN_DELIVERY_AMOUNT = \"minDeliveryAmount\",\n}\n\nexport interface Business {\n\tid: number;\n\tname: string;\n\tusername: string;\n\tavatar64?: string;\n\tavatar128?: string;\n\tavatar256?: string;\n\tcoverPhoto?: string;\n\tinstagram?: string;\n\tfacebook?: string;\n\ttiktok?: string;\n\tcreatedAt?: number;\n\tcurrency: string;\n\tlanguages: BusinessLanguage[];\n\tsubscriptions?: subscriptionModels.Subscription[];\n\tsegment?: featureModels.FeatureSegment;\n}\n","export enum CustomerAuthStep {\n\tPHONE = \"PHONE\",\n\tOTP = \"OTP\",\n\tEMAIL = \"EMAIL\",\n}\n\nexport enum CustomerAddressType {\n\tHOME = \"HOME\",\n\tWORK = \"WORK\",\n\tTRAVEL = \"TRAVEL\",\n}\n\nexport interface CustomerAddress {\n\tid?: number;\n\taddressId?: number; // Update address temporary\n\tcountryCode: string;\n\tcityName: string;\n\tstreet: string;\n\thouseNumber: string;\n\tadditionalNumber?: string;\n\tpostCode?: string;\n\tinstructions?: string;\n\tfloor?: number;\n\tlongitude?: number;\n\tlatitude?: number;\n\ttitle?: string;\n\ttype?: CustomerAddressType;\n}\n\nexport interface CustomerAuthForm {\n\totp: string;\n\temail: string;\n}\n\nexport interface CustomerAuthPhoneForm {\n\tcountryCode: string;\n\tphoneNumber: string;\n}\n\nexport interface AuthResponse {\n\taccessToken: string;\n\trefreshToken: string;\n}\n\nexport interface Customer {\n\tid?: number;\n\temail: string;\n\tphoneNumber: string;\n\tfullName: string;\n\tsmsVerified?: boolean;\n\temailVerified?: boolean;\n\taddress?: CustomerAddress;\n\taddresses?: CustomerAddress[];\n}\n\nexport type CustomerUpdatePayload = Partial<Customer>;\n","export enum Feature {\n\tUPLOAD_VIDEO = \"UPLOAD_VIDEO\",\n}\nexport enum FeatureSegment {\n\tALPHA = \"ALPHA\",\n\tBETA = \"BETA\",\n\tALL = \"ALL\",\n}\n","import * as customerModels from \"../customer/models\";\nimport * as productModels from \"../product/models\";\n\nexport enum OrderType {\n\tDINE_IN = \"DINE_IN\",\n\tPICK_UP = \"PICK_UP\",\n\tDELIVERY = \"DELIVERY\",\n}\n\nexport enum OrderStatus {\n\tDRAFT = \"DRAFT\",\n\tPENDING = \"PENDING\",\n\tCONFIRMED = \"CONFIRMED\",\n\tPREPARING = \"PREPARING\",\n\tREADY = \"READY\",\n\tOUT_FOR_DELIVERY = \"OUT_FOR_DELIVERY\",\n\tDELIVERED = \"DELIVERED\",\n\tCOMPLETED = \"COMPLETED\",\n\tCANCELLED = \"CANCELLED\",\n\tFAILED = \"FAILED\",\n}\n\nexport enum OrderItemStatus {\n\tPENDING = \"PENDING\",\n\tPREPARING = \"PREPARING\",\n\tREADY = \"READY\",\n\tSERVED = \"SERVED\",\n}\n\nexport enum PaymentMethod {\n\tCASH = \"CASH\",\n\tCARD = \"CARD\",\n\tWALLET = \"WALLET\",\n\tTERMINAL = \"TERMINAL\",\n}\n\nexport interface OrderAddonOption {\n\toptionId: number;\n\tprice: number;\n}\n\nexport interface OrderAddon {\n\tid?: number;\n\taddonId: number;\n\toptions: OrderAddonOption[];\n}\n\nexport interface SelectedAddons {\n\t[key: number]: number | number[];\n}\n\nexport interface OrderItemVariant {\n\tid?: number;\n\tvariantId: number;\n\tprice: number;\n}\n\nexport interface OrderItem {\n\tid?: number;\n\tproductId: number;\n\torderId?: number;\n\tquantity: number;\n\tprice: number;\n\tvariant?: OrderItemVariant;\n\taddons: OrderAddon[];\n\tnote?: string;\n\tstatus?: OrderItemStatus;\n\tvat?: number;\n\tisPaid?: boolean;\n\tsellUnitType: productModels.SellUnitType;\n}\n\nexport interface Order {\n\tid?: number;\n\tbusinessId?: number;\n\tbranchId?: number;\n\tworkingDayId?: number;\n\ttableId?: number;\n\temployeeId?: number;\n\torderType: OrderType;\n\ttotalPriceWithTax: number;\n\ttotalPriceWithTaxAndFees?: number;\n\ttotalPriceWithoutTax: number;\n\ttotalTax: number;\n\titems: OrderItem[];\n\tstatus?: OrderStatus;\n\tvat?: number;\n\tpaymentMethod?: PaymentMethod;\n\tnote?: string;\n\tcreatedAt?: number;\n\tupdatedAt?: number;\n\tcustomer?: customerModels.Customer;\n\tdeliveryFee?: number;\n}\n\nexport interface OrderItems {\n\t[key: string]: OrderItem;\n}\n\nexport enum OrderStep {\n\tCART = \"CART\",\n\tDETAILS = \"DETAILS\",\n\tCOMPLETED = \"COMPLETED\",\n}\n\nexport interface OrderPayload extends Order {\n\tcustomerAddressId: number;\n\tcustomerId: number;\n\tlanguage?: string;\n}\n\nexport type OrderPriceDetails = {\n\ttotalPriceWithTax: number;\n\ttotalPriceWithTaxAndFees: number;\n\ttotalPriceWithoutTax: number;\n\ttotalTax: number;\n};\n\nexport type OrderFormattedPriceDetails = {\n\ttotalPriceWithTax: string;\n\ttotalPriceWithTaxAndFees: string;\n\ttotalPriceWithoutTax: string;\n\ttotalTax: string;\n};\n","import { MenuAddon } from \"../addon/models\";\n\nexport interface LocalizedContent {\n\tname: string;\n\tdescription: string;\n}\n\nexport interface ProductVariant {\n\tid?: number;\n\tprice: number;\n\t/** Title keyed by language code, e.g. { en: \"Large\", az: \"Böyük\" }. */\n\ttitle: Record<string, string>;\n\tproductId?: number;\n\tremove?: boolean;\n}\n\nexport interface Product {\n\tid: number;\n\tcategoryId: number;\n\tvat?: number;\n\tprice: number;\n\tvolume?: string; // 100qr/250ml/1kq\n\timage160?: string;\n\timage580?: string;\n\timage1024?: string;\n\ttranslations: Record<string, LocalizedContent>;\n\tvariants: ProductVariant[];\n\taddons: MenuAddon[];\n\tavailable?: boolean;\n\tvisible?: boolean;\n\tposition?: number;\n\tvideoUrl?: string;\n\tsellUnitType?: SellUnitType;\n\ttaxClassId?: number | null;\n}\n\nexport enum ProductView {\n\tLIST = \"list\",\n\tGRID = \"grid\",\n}\n\nexport interface DashboardProduct extends Omit<Product, \"addons\"> {\n\taddons: number[];\n}\n\nexport enum SellUnitType {\n\tPIECE = \"PIECE\",\n\tWEIGHT = \"WEIGHT\",\n\tVOLUME = \"VOLUME\",\n}\n","export enum PlanType {\n\tAPPETIZER = \"appetizer\",\n\tMAIN_COURSE = \"mainCourse\",\n\tCHEFS_SPECIAL = \"chefsSpecial\",\n\tLIFETIME = \"lifeTime\",\n}\n\nexport interface PricingPlan {\n\ttitle: string;\n\tprice: {\n\t\tmonthly: number;\n\t\tannually: number;\n\t};\n\tdiscountedPrice?: number;\n\tribbonText?: string;\n}\n\nexport interface PricingPlans {\n\t[key: string]: PricingPlan;\n}\n\nexport type PricingInterval = \"monthly\" | \"annually\";\n\nexport enum SubscriptionStatus {\n\tACTIVE = \"ACTIVE\",\n\tEXPIRED = \"EXPIRED\",\n\tCANCELLED = \"CANCELLED\",\n}\n\nexport type BillingInterval = \"MONTH\" | \"YEAR\";\n\nexport interface Subscription {\n\tid: number;\n\tbillingInterval: BillingInterval;\n\tbillingIntervalCount: number;\n\tstartDate: string;\n\tendDate: string;\n\tinterval: PricingInterval;\n\tstatus: SubscriptionStatus;\n\tbusiness_id?: number;\n\tplanName: string;\n}\n","export enum TableShape {\n\tSQUARE = \"SQUARE\",\n\tCIRCLE = \"CIRCLE\",\n\tRECTANGLE = \"RECTANGLE\",\n\tRECTANGLE_VERTICAL = \"RECTANGLE_VERTICAL\",\n\tSINGLE_AT_BAR = \"SINGLE_AT_BAR\",\n\tOTHER = \"OTHER\",\n}\n\nexport enum TableStatus {\n\tVACANT = \"VACANT\", // Free and available\n\tRESERVED = \"RESERVED\", // Booked but not yet seated\n\tOCCUPIED = \"OCCUPIED\", // Currently in use\n\tBLOCKED = \"BLOCKED\", // Temporarily blocked/unavailable\n\tNEEDS_CLEANING = \"NEEDS_CLEANING\", // Dirty, awaiting cleanup\n\tOUT_OF_SERVICE = \"OUT_OF_SERVICE\", // Permanently unavailable repair/maintenance\n\tPENDING_CONFIRMATION = \"PENDING_CONFIRMATION\", // Reservation not yet confirmed\n\tNO_SHOW = \"NO_SHOW\", // Reserved but guest didn’t arrive\n}\n\nexport enum TableLocation {\n\t// Indoor\n\tMAIN_HALL = \"MAIN_HALL\",\n\tPRIVATE_DINING = \"PRIVATE_DINING\",\n\tVIP_ROOM = \"VIP_ROOM\",\n\tBANQUET_HALL = \"BANQUET_HALL\",\n\tBAR_AREA = \"BAR_AREA\",\n\tLOUNGE = \"LOUNGE\",\n\tOPEN_KITCHEN = \"OPEN_KITCHEN\",\n\tBOOTH_SECTION = \"BOOTH_SECTION\",\n\tMEZZANINE = \"MEZZANINE\",\n\tWINE_CELLAR = \"WINE_CELLAR\",\n\n\t// Outdoor\n\tTERRACE = \"TERRACE\",\n\tPATIO = \"PATIO\",\n\tGARDEN = \"GARDEN\",\n\tCOURTYARD = \"COURTYARD\",\n\tROOFTOP = \"ROOFTOP\",\n\tBALCONY = \"BALCONY\",\n\tSIDEWALK = \"SIDEWALK\",\n\tPOOLSIDE = \"POOLSIDE\",\n\n\t// Special Sections\n\tSMOKING_AREA = \"SMOKING_AREA\",\n\tNON_SMOKING = \"NON_SMOKING\",\n\tFAMILY_SECTION = \"FAMILY_SECTION\",\n\tKIDS_AREA = \"KIDS_AREA\",\n\tWAITING_AREA = \"WAITING_AREA\",\n\tDANCE_FLOOR = \"DANCE_FLOOR\",\n}\n\nexport interface Table {\n\tid: number;\n\tbusinessId: number;\n\tbranchId: number;\n\tname: string;\n\tseatCount: number;\n\tshape: TableShape;\n\tlocation: TableLocation;\n\tstatus: TableStatus;\n}\n\nexport interface TableState {\n\ttables: Table[];\n}\n\nexport type TableForm = Omit<Table, \"id\" | \"businessId\" | \"branchId\"> & {\n\tbranchId: string | number;\n};\n\nexport type TableUpdate = Partial<Omit<Table, \"id\" | \"businessId\">>;\n\nexport type TableFilter = Partial<Pick<Table, \"branchId\" | \"shape\" | \"location\" | \"status\">>;\n\nexport type TableFilterParams = { field: keyof TableFilter; value: TableFilter[keyof TableFilter] };\n","export enum EmployeePermission {\n\tVIEW_BUSINESS = \"VIEW_BUSINESS\",\n\tUPDATE_BUSINESS = \"UPDATE_BUSINESS\",\n\tVIEW_ORDERS = \"VIEW_ORDERS\",\n\tUPDATE_ORDER = \"UPDATE_ORDER\",\n\tCREATE_ORDER = \"CREATE_ORDER\",\n\tVIEW_QR_MENU = \"VIEW_QR_MENU\",\n\tVIEW_MENU = \"VIEW_MENU\",\n\tVIEW_MENU_ITEMS = \"VIEW_MENU_ITEMS\",\n\tCREATE_MENU_ITEM = \"CREATE_MENU_ITEM\",\n\tUPDATE_MENU_ITEM = \"UPDATE_MENU_ITEM\",\n\tDELETE_MENU_ITEM = \"DELETE_MENU_ITEM\",\n\tVIEW_CATEGORIES = \"VIEW_CATEGORIES\",\n\tUPDATE_CATEGORY = \"UPDATE_CATEGORY\",\n\tCREATE_CATEGORY = \"CREATE_CATEGORY\",\n\tDELETE_CATEGORY = \"DELETE_CATEGORY\",\n\tVIEW_ADDONS = \"VIEW_ADDONS\",\n\tUPDATE_ADDON = \"UPDATE_ADDON\",\n\tCREATE_ADDON = \"CREATE_ADDON\",\n\tDELETE_ADDON = \"DELETE_ADDON\",\n\tVIEW_TABLES = \"VIEW_TABLES\",\n\tUPDATE_TABLE = \"UPDATE_TABLE\",\n\tUPDATE_TABLE_STATUS = \"UPDATE_TABLE_STATUS\",\n\tCREATE_TABLE = \"CREATE_TABLE\",\n\tDELETE_TABLE = \"DELETE_TABLE\",\n\tVIEW_BRANCHES = \"VIEW_BRANCHES\",\n\tUPDATE_BRANCH = \"UPDATE_BRANCH\",\n\tCREATE_BRANCH = \"CREATE_BRANCH\",\n\tDELETE_BRANCH = \"DELETE_BRANCH\",\n\tVIEW_EMPLOYEES = \"VIEW_EMPLOYEES\",\n\tUPDATE_EMPLOYEE = \"UPDATE_EMPLOYEE\",\n\tCREATE_EMPLOYEE = \"CREATE_EMPLOYEE\",\n\tDELETE_EMPLOYEE = \"DELETE_EMPLOYEE\",\n\tVIEW_ANALYTICS = \"VIEW_ANALYTICS\",\n\tVIEW_SALES_REPORTS = \"VIEW_SALES_REPORTS\",\n\tVIEW_SUBSCRIPTION = \"VIEW_SUBSCRIPTION\",\n\tUPDATE_SUBSCRIPTION = \"UPDATE_SUBSCRIPTION\",\n\tVIEW_QR_CODES = \"VIEW_QR_CODES\",\n\tCREATE_QR_CODE = \"CREATE_QR_CODE\",\n\tDELETE_QR_CODE = \"DELETE_QR_CODE\",\n\tALL = \"ALL\",\n\t// Inventory\n\tVIEW_INVENTORY = \"VIEW_INVENTORY\",\n\tVIEW_PURCHASES = \"VIEW_PURCHASES\",\n\tVIEW_PURCHASE_DETAIL = \"VIEW_PURCHASE_DETAIL\",\n\tCREATE_PURCHASE = \"CREATE_PURCHASE\",\n\tUPDATE_PURCHASE = \"UPDATE_PURCHASE\",\n\tDELETE_PURCHASE = \"DELETE_PURCHASE\",\n\tVIEW_INVENTORY_PRODUCTS = \"VIEW_INVENTORY_PRODUCTS\",\n\tCREATE_INVENTORY_PRODUCT = \"CREATE_INVENTORY_PRODUCT\",\n\tUPDATE_INVENTORY_PRODUCT = \"UPDATE_INVENTORY_PRODUCT\",\n\tDELETE_INVENTORY_PRODUCT = \"DELETE_INVENTORY_PRODUCT\",\n\tVIEW_BUSINESS_BALANCE = \"VIEW_BUSINESS_BALANCE\",\n\tVIEW_BRANCH_BALANCE = \"VIEW_BRANCH_BALANCE\",\n\tUPDATE_PRODUCT_INGREDIENTS = \"UPDATE_PRODUCT_INGREDIENTS\",\n\tDELETE_PRODUCT_INGREDIENTS = \"DELETE_PRODUCT_INGREDIENTS\",\n\tAI_ASSISTANT = \"AI_ASSISTANT\",\n}\n\nexport enum UserRole {\n\tOWNER = \"OWNER\",\n\tBRANCH_MANAGER = \"BRANCH_MANAGER\",\n\tGENERAL_MANAGER = \"GENERAL_MANAGER\",\n\tCHEF = \"CHEF\",\n\tSOUS_CHEF = \"SOUS_CHEF\",\n\tPASTRY_CHEF = \"PASTRY_CHEF\",\n\tLINE_COOK = \"LINE_COOK\",\n\tPREP_COOK = \"PREP_COOK\",\n\tKITCHEN_ASSISTANT = \"KITCHEN_ASSISTANT\",\n\tDISHWASHER = \"DISHWASHER\",\n\tHEAD_WAITER = \"HEAD_WAITER\",\n\tWAITER = \"WAITER\",\n\tRUNNER = \"RUNNER\",\n\tBARISTA = \"BARISTA\",\n\tBARTENDER = \"BARTENDER\",\n\tSOMMELIER = \"SOMMELIER\",\n\tACCOUNTANT = \"ACCOUNTANT\",\n\tROOM_SERVICE_STAFF = \"ROOM_SERVICE_STAFF\",\n\tDELIVERY_DRIVER = \"DELIVERY_DRIVER\",\n\tINVENTORY_MANAGER = \"INVENTORY_MANAGER\",\n\tPURCHASING_MANAGER = \"PURCHASING_MANAGER\",\n\tWAREHOUSE_STAFF = \"WAREHOUSE_STAFF\",\n}\n\nexport interface User {\n\tid?: number;\n\temail: string;\n\tfullName: string;\n\trole?: UserRole;\n\tavatar64?: string | null;\n\tavatar128?: string | null;\n\tavatar256?: string | null;\n\tbusinessId?: number;\n\tbranchId?: number | null;\n\tcreatedAt: string;\n\temailVerified?: boolean;\n\tpermissions?: EmployeePermission[];\n}\n"],"names":["MenuAddonSelectType","BranchSetting","BranchTaxType","BranchTaxScope","BranchTaxFulfillment","BusinessSetting","CustomerAuthStep","CustomerAddressType","Feature","FeatureSegment","OrderType","OrderStatus","OrderItemStatus","PaymentMethod","OrderStep","ProductView","SellUnitType","PlanType","SubscriptionStatus","TableShape","TableStatus","TableLocation","EmployeePermission","UserRole"],"mappings":"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"}
|
package/dist/models/index.js.map
CHANGED
|
@@ -1 +1 @@
|
|
|
1
|
-
{"version":3,"file":"index.js","sources":["../../../src/modules/addon/models.ts","../../../src/modules/branch/models.ts","../../../src/modules/business/models.ts","../../../src/modules/customer/models.ts","../../../src/modules/feature/models.ts","../../../src/modules/order/models.ts","../../../src/modules/product/models.ts","../../../src/modules/subscription/models.ts","../../../src/modules/table/models.ts","../../../src/modules/user/models.ts"],"sourcesContent":["export enum MenuAddonSelectType {\n\tSINGLE = \"SINGLE\",\n\tMULTIPLE = \"MULTIPLE\",\n}\n\nexport interface MenuAddonTranslation {\n\tid?: number;\n\ttitle: string;\n\tlanguage: string;\n}\n\nexport interface MenuAddonOptionTranslation {\n\tid?: number;\n\ttitle: string;\n\tlanguage: string;\n}\n\nexport interface MenuAddonOption {\n\tid?: number;\n\tprice: number;\n\ttranslations: MenuAddonOptionTranslation[];\n\tremove?: boolean;\n}\n\nexport interface MenuAddon {\n\tid?: number;\n\tselectType: MenuAddonSelectType;\n\ttranslations: MenuAddonTranslation[];\n\toptions: MenuAddonOption[];\n\tbusinessId?: number;\n}\n","export type BranchWorkHour = {\n\topenAt: string;\n\tcloseAt: string;\n};\n\nexport type BranchWorkDay = {\n\tday: number;\n\thours: BranchWorkHour | null;\n};\n\nexport type BranchWorkDays = {\n\tdays: BranchWorkDay[];\n};\n\nexport interface BranchSettings {\n\tdeliveryOrderEnabled: boolean;\n\tpickupOrderEnabled: boolean;\n\tdineInOrderEnabled: boolean;\n\tmaxDeliveryDistance: number;\n\tminDeliveryAmount: number;\n\tdeliveryFeeAmount: number;\n\tserviceChargeEnabled: boolean;\n\tserviceChargePercentage: number;\n\taddToOrderEnabled: boolean;\n}\n\nexport enum BranchSetting {\n\tMAX_DELIVERY_DISTANCE = \"maxDeliveryDistance\",\n\tDELIVERY_ORDER_ENABLED = \"deliveryOrderEnabled\",\n\tPICKUP_ORDER_ENABLED = \"pickupOrderEnabled\",\n\tDINE_IN_ORDER_ENABLED = \"dineInOrderEnabled\",\n\tMIN_DELIVERY_AMOUNT = \"minDeliveryAmount\",\n\tDELIVERY_FEE_AMOUNT = \"deliveryFeeAmount\",\n\tSERVICE_CHARGE_ENABLED = \"serviceChargeEnabled\",\n\tSERVICE_CHARGE_PERCENTAGE = \"serviceChargePercentage\",\n\tADD_TO_ORDER_ENABLED = \"addToOrderEnabled\",\n}\n\nexport interface Branch {\n\tid: number;\n\tname: string;\n\tbusinessId: number;\n\taddress: string;\n\tlongitude?: number;\n\tlatitude?: number;\n\tphone?: string;\n\twhatsApp?: string;\n\ttelegram?: string;\n\twifiPassword?: string;\n\tcreatedAt?: number;\n\tcoverPhoto?: string;\n\tsettings?: BranchSettings;\n\topeningHours?: BranchWorkDays;\n\tdeliveryHours?: BranchWorkDays;\n}\n\nexport type BranchServes = {\n\tisOpen: boolean;\n\tisDelivering: boolean;\n};\n\nexport enum BranchTaxType {\n\tPERCENTAGE = \"percentage\",\n\tFIXED_AMOUNT = \"fixed\",\n}\n\nexport enum BranchTaxScope {\n\tENTIRE_MENU = \"entire_menu\",\n\tCLASS = \"class\",\n}\n\nexport enum BranchTaxFulfillment {\n\tDELIVERY = \"delivery\",\n\tTAKEAWAY = \"takeaway\",\n\tDINE_IN = \"dine_in\",\n\tALL = \"ALL\",\n}\n\nexport type BranchTax = {\n\tid: number;\n\tbusinessId: number;\n\tbranchId: number;\n\ttaxClassId?: number;\n\tname: Record<string, string>;\n\trate: number;\n\ttype: BranchTaxType;\n\tisActive: boolean;\n\tcreatedAt: number;\n\tupdatedAt: number;\n\tscope: BranchTaxScope;\n\tincludedInPrice: boolean;\n\tisDefault: boolean;\n\tcomputationOrder: number;\n\tappliesToFulfillment?: BranchTaxFulfillment;\n\ttaxClassCode?: string;\n};\n","import * as featureModels from \"../feature/models\";\nimport * as subscriptionModels from \"../subscription/models\";\n\nexport interface BusinessLanguage {\n\tid: number;\n\tcode: string;\n\tbusinessId: number;\n}\n\nexport enum BusinessSetting {\n\tMAX_DELIVERY_DISTANCE = \"maxDeliveryDistance\",\n\tDELIVERY_ORDER_ENABLED = \"deliveryOrderEnabled\",\n\tPICKUP_ORDER_ENABLED = \"pickupOrderEnabled\",\n\tDINE_IN_ORDER_ENABLED = \"dineInOrderEnabled\",\n\tMIN_DELIVERY_AMOUNT = \"minDeliveryAmount\",\n}\n\nexport interface Business {\n\tid: number;\n\tname: string;\n\tusername: string;\n\tavatar64?: string;\n\tavatar128?: string;\n\tavatar256?: string;\n\tcoverPhoto?: string;\n\tinstagram?: string;\n\tfacebook?: string;\n\ttiktok?: string;\n\tcreatedAt?: number;\n\tcurrency: string;\n\tlanguages: BusinessLanguage[];\n\tsubscriptions?: subscriptionModels.Subscription[];\n\tsegment?: featureModels.FeatureSegment;\n}\n","export enum CustomerAuthStep {\n\tPHONE = \"PHONE\",\n\tOTP = \"OTP\",\n\tEMAIL = \"EMAIL\",\n}\n\nexport enum CustomerAddressType {\n\tHOME = \"HOME\",\n\tWORK = \"WORK\",\n\tTRAVEL = \"TRAVEL\",\n}\n\nexport interface CustomerAddress {\n\tid?: number;\n\taddressId?: number; // Update address temporary\n\tcountryCode: string;\n\tcityName: string;\n\tstreet: string;\n\thouseNumber: string;\n\tadditionalNumber?: string;\n\tpostCode?: string;\n\tinstructions?: string;\n\tfloor?: number;\n\tlongitude?: number;\n\tlatitude?: number;\n\ttitle?: string;\n\ttype?: CustomerAddressType;\n}\n\nexport interface CustomerAuthForm {\n\totp: string;\n\temail: string;\n}\n\nexport interface CustomerAuthPhoneForm {\n\tcountryCode: string;\n\tphoneNumber: string;\n}\n\nexport interface AuthResponse {\n\taccessToken: string;\n\trefreshToken: string;\n}\n\nexport interface Customer {\n\tid?: number;\n\temail: string;\n\tphoneNumber: string;\n\tfullName: string;\n\tsmsVerified?: boolean;\n\temailVerified?: boolean;\n\taddress?: CustomerAddress;\n\taddresses?: CustomerAddress[];\n}\n\nexport type CustomerUpdatePayload = Partial<Customer>;\n","export enum Feature {\n\tUPLOAD_VIDEO = \"UPLOAD_VIDEO\",\n}\nexport enum FeatureSegment {\n\tALPHA = \"ALPHA\",\n\tBETA = \"BETA\",\n\tALL = \"ALL\",\n}\n","import * as customerModels from \"../customer/models\";\nimport * as productModels from \"../product/models\";\n\nexport enum OrderType {\n\tDINE_IN = \"DINE_IN\",\n\tPICK_UP = \"PICK_UP\",\n\tDELIVERY = \"DELIVERY\",\n}\n\nexport enum OrderStatus {\n\tDRAFT = \"DRAFT\",\n\tPENDING = \"PENDING\",\n\tCONFIRMED = \"CONFIRMED\",\n\tPREPARING = \"PREPARING\",\n\tREADY = \"READY\",\n\tOUT_FOR_DELIVERY = \"OUT_FOR_DELIVERY\",\n\tDELIVERED = \"DELIVERED\",\n\tCOMPLETED = \"COMPLETED\",\n\tCANCELLED = \"CANCELLED\",\n\tFAILED = \"FAILED\",\n}\n\nexport enum OrderItemStatus {\n\tPENDING = \"PENDING\",\n\tPREPARING = \"PREPARING\",\n\tREADY = \"READY\",\n\tSERVED = \"SERVED\",\n}\n\nexport enum PaymentMethod {\n\tCASH = \"CASH\",\n\tCARD = \"CARD\",\n\tWALLET = \"WALLET\",\n\tTERMINAL = \"TERMINAL\",\n}\n\nexport interface OrderAddonOption {\n\toptionId: number;\n\tprice: number;\n}\n\nexport interface OrderAddon {\n\tid?: number;\n\taddonId: number;\n\toptions: OrderAddonOption[];\n}\n\nexport interface SelectedAddons {\n\t[key: number]: number | number[];\n}\n\nexport interface OrderItemVariant {\n\tid?: number;\n\tvariantId: number;\n\tprice: number;\n}\n\nexport interface OrderItem {\n\tid?: number;\n\tproductId: number;\n\torderId?: number;\n\tquantity: number;\n\tprice: number;\n\tvariant?: OrderItemVariant;\n\taddons: OrderAddon[];\n\tnote?: string;\n\tstatus?: OrderItemStatus;\n\tvat?: number;\n\tisPaid?: boolean;\n\tsellUnitType: productModels.SellUnitType;\n}\n\nexport interface Order {\n\tid?: number;\n\tbusinessId?: number;\n\tbranchId?: number;\n\tworkingDayId?: number;\n\ttableId?: number;\n\temployeeId?: number;\n\torderType: OrderType;\n\ttotalPriceWithTax: number;\n\ttotalPriceWithTaxAndFees?: number;\n\ttotalPriceWithoutTax: number;\n\ttotalTax: number;\n\titems: OrderItem[];\n\tstatus?: OrderStatus;\n\tvat?: number;\n\tpaymentMethod?: PaymentMethod;\n\tnote?: string;\n\tcreatedAt?: number;\n\tupdatedAt?: number;\n\tcustomer?: customerModels.Customer;\n\tdeliveryFee?: number;\n}\n\nexport interface OrderItems {\n\t[key: string]: OrderItem;\n}\n\nexport enum OrderStep {\n\tCART = \"CART\",\n\tDETAILS = \"DETAILS\",\n\tCOMPLETED = \"COMPLETED\",\n}\n\nexport interface OrderPayload extends Order {\n\tcustomerAddressId: number;\n\tcustomerId: number;\n\tlanguage?: string;\n}\n\nexport type OrderPriceDetails = {\n\ttotalPriceWithTax: number;\n\ttotalPriceWithTaxAndFees: number;\n\ttotalPriceWithoutTax: number;\n\ttotalTax: number;\n};\n\nexport type OrderFormattedPriceDetails = {\n\ttotalPriceWithTax: string;\n\ttotalPriceWithTaxAndFees: string;\n\ttotalPriceWithoutTax: string;\n\ttotalTax: string;\n};\n","import { MenuAddon } from \"../addon/models\";\n\nexport interface ProductTranslation {\n\tid: number;\n\tname: string;\n\tdescription?: string;\n\tlanguage: string;\n\tproductId?: number;\n}\n\nexport interface ProductVariantTranslation {\n\tid?: number;\n\ttitle: string;\n\tlanguage: string;\n}\n\nexport interface ProductVariant {\n\tid?: number;\n\tprice: number;\n\ttranslations: ProductVariantTranslation[];\n\tproductId?: number;\n\tremove?: boolean;\n}\n\nexport interface Product {\n\tid: number;\n\tcategoryId: number;\n\tvat?: number;\n\tprice: number;\n\tvolume?: string; // 100qr/250ml/1kq\n\timage160?: string;\n\timage580?: string;\n\timage1024?: string;\n\ttranslations: ProductTranslation[];\n\tvariants: ProductVariant[];\n\taddons: MenuAddon[];\n\tavailable?: boolean;\n\tvisible?: boolean;\n\tposition?: number;\n\tvideoUrl?: string;\n\tsellUnitType?: SellUnitType;\n}\n\nexport enum ProductView {\n\tLIST = \"list\",\n\tGRID = \"grid\",\n}\n\nexport interface DashboardProduct extends Omit<Product, \"addons\"> {\n\taddons: number[];\n}\n\nexport enum SellUnitType {\n\tPIECE = \"PIECE\",\n\tWEIGHT = \"WEIGHT\",\n\tVOLUME = \"VOLUME\",\n}\n","export enum PlanType {\n\tAPPETIZER = \"appetizer\",\n\tMAIN_COURSE = \"mainCourse\",\n\tCHEFS_SPECIAL = \"chefsSpecial\",\n\tLIFETIME = \"lifeTime\",\n}\n\nexport interface PricingPlan {\n\ttitle: string;\n\tprice: {\n\t\tmonthly: number;\n\t\tannually: number;\n\t};\n\tdiscountedPrice?: number;\n\tribbonText?: string;\n}\n\nexport interface PricingPlans {\n\t[key: string]: PricingPlan;\n}\n\nexport type PricingInterval = \"monthly\" | \"annually\";\n\nexport enum SubscriptionStatus {\n\tACTIVE = \"ACTIVE\",\n\tEXPIRED = \"EXPIRED\",\n\tCANCELLED = \"CANCELLED\",\n}\n\nexport type BillingInterval = \"MONTH\" | \"YEAR\";\n\nexport interface Subscription {\n\tid: number;\n\tbillingInterval: BillingInterval;\n\tbillingIntervalCount: number;\n\tstartDate: string;\n\tendDate: string;\n\tinterval: PricingInterval;\n\tstatus: SubscriptionStatus;\n\tbusiness_id?: number;\n\tplanName: string;\n}\n","export enum TableShape {\n\tSQUARE = \"SQUARE\",\n\tCIRCLE = \"CIRCLE\",\n\tRECTANGLE = \"RECTANGLE\",\n\tRECTANGLE_VERTICAL = \"RECTANGLE_VERTICAL\",\n\tSINGLE_AT_BAR = \"SINGLE_AT_BAR\",\n\tOTHER = \"OTHER\",\n}\n\nexport enum TableStatus {\n\tVACANT = \"VACANT\", // Free and available\n\tRESERVED = \"RESERVED\", // Booked but not yet seated\n\tOCCUPIED = \"OCCUPIED\", // Currently in use\n\tBLOCKED = \"BLOCKED\", // Temporarily blocked/unavailable\n\tNEEDS_CLEANING = \"NEEDS_CLEANING\", // Dirty, awaiting cleanup\n\tOUT_OF_SERVICE = \"OUT_OF_SERVICE\", // Permanently unavailable repair/maintenance\n\tPENDING_CONFIRMATION = \"PENDING_CONFIRMATION\", // Reservation not yet confirmed\n\tNO_SHOW = \"NO_SHOW\", // Reserved but guest didn’t arrive\n}\n\nexport enum TableLocation {\n\t// Indoor\n\tMAIN_HALL = \"MAIN_HALL\",\n\tPRIVATE_DINING = \"PRIVATE_DINING\",\n\tVIP_ROOM = \"VIP_ROOM\",\n\tBANQUET_HALL = \"BANQUET_HALL\",\n\tBAR_AREA = \"BAR_AREA\",\n\tLOUNGE = \"LOUNGE\",\n\tOPEN_KITCHEN = \"OPEN_KITCHEN\",\n\tBOOTH_SECTION = \"BOOTH_SECTION\",\n\tMEZZANINE = \"MEZZANINE\",\n\tWINE_CELLAR = \"WINE_CELLAR\",\n\n\t// Outdoor\n\tTERRACE = \"TERRACE\",\n\tPATIO = \"PATIO\",\n\tGARDEN = \"GARDEN\",\n\tCOURTYARD = \"COURTYARD\",\n\tROOFTOP = \"ROOFTOP\",\n\tBALCONY = \"BALCONY\",\n\tSIDEWALK = \"SIDEWALK\",\n\tPOOLSIDE = \"POOLSIDE\",\n\n\t// Special Sections\n\tSMOKING_AREA = \"SMOKING_AREA\",\n\tNON_SMOKING = \"NON_SMOKING\",\n\tFAMILY_SECTION = \"FAMILY_SECTION\",\n\tKIDS_AREA = \"KIDS_AREA\",\n\tWAITING_AREA = \"WAITING_AREA\",\n\tDANCE_FLOOR = \"DANCE_FLOOR\",\n}\n\nexport interface Table {\n\tid: number;\n\tbusinessId: number;\n\tbranchId: number;\n\tname: string;\n\tseatCount: number;\n\tshape: TableShape;\n\tlocation: TableLocation;\n\tstatus: TableStatus;\n}\n\nexport interface TableState {\n\ttables: Table[];\n}\n\nexport type TableForm = Omit<Table, \"id\" | \"businessId\" | \"branchId\"> & {\n\tbranchId: string | number;\n};\n\nexport type TableUpdate = Partial<Omit<Table, \"id\" | \"businessId\">>;\n\nexport type TableFilter = Partial<Pick<Table, \"branchId\" | \"shape\" | \"location\" | \"status\">>;\n\nexport type TableFilterParams = { field: keyof TableFilter; value: TableFilter[keyof TableFilter] };\n","export enum EmployeePermission {\n\tVIEW_BUSINESS = \"VIEW_BUSINESS\",\n\tUPDATE_BUSINESS = \"UPDATE_BUSINESS\",\n\tVIEW_ORDERS = \"VIEW_ORDERS\",\n\tUPDATE_ORDER = \"UPDATE_ORDER\",\n\tCREATE_ORDER = \"CREATE_ORDER\",\n\tVIEW_QR_MENU = \"VIEW_QR_MENU\",\n\tVIEW_MENU = \"VIEW_MENU\",\n\tVIEW_MENU_ITEMS = \"VIEW_MENU_ITEMS\",\n\tCREATE_MENU_ITEM = \"CREATE_MENU_ITEM\",\n\tUPDATE_MENU_ITEM = \"UPDATE_MENU_ITEM\",\n\tDELETE_MENU_ITEM = \"DELETE_MENU_ITEM\",\n\tVIEW_CATEGORIES = \"VIEW_CATEGORIES\",\n\tUPDATE_CATEGORY = \"UPDATE_CATEGORY\",\n\tCREATE_CATEGORY = \"CREATE_CATEGORY\",\n\tDELETE_CATEGORY = \"DELETE_CATEGORY\",\n\tVIEW_ADDONS = \"VIEW_ADDONS\",\n\tUPDATE_ADDON = \"UPDATE_ADDON\",\n\tCREATE_ADDON = \"CREATE_ADDON\",\n\tDELETE_ADDON = \"DELETE_ADDON\",\n\tVIEW_TABLES = \"VIEW_TABLES\",\n\tUPDATE_TABLE = \"UPDATE_TABLE\",\n\tUPDATE_TABLE_STATUS = \"UPDATE_TABLE_STATUS\",\n\tCREATE_TABLE = \"CREATE_TABLE\",\n\tDELETE_TABLE = \"DELETE_TABLE\",\n\tVIEW_BRANCHES = \"VIEW_BRANCHES\",\n\tUPDATE_BRANCH = \"UPDATE_BRANCH\",\n\tCREATE_BRANCH = \"CREATE_BRANCH\",\n\tDELETE_BRANCH = \"DELETE_BRANCH\",\n\tVIEW_EMPLOYEES = \"VIEW_EMPLOYEES\",\n\tUPDATE_EMPLOYEE = \"UPDATE_EMPLOYEE\",\n\tCREATE_EMPLOYEE = \"CREATE_EMPLOYEE\",\n\tDELETE_EMPLOYEE = \"DELETE_EMPLOYEE\",\n\tVIEW_ANALYTICS = \"VIEW_ANALYTICS\",\n\tVIEW_SALES_REPORTS = \"VIEW_SALES_REPORTS\",\n\tVIEW_SUBSCRIPTION = \"VIEW_SUBSCRIPTION\",\n\tUPDATE_SUBSCRIPTION = \"UPDATE_SUBSCRIPTION\",\n\tVIEW_QR_CODES = \"VIEW_QR_CODES\",\n\tCREATE_QR_CODE = \"CREATE_QR_CODE\",\n\tDELETE_QR_CODE = \"DELETE_QR_CODE\",\n\tALL = \"ALL\",\n\t// Inventory\n\tVIEW_INVENTORY = \"VIEW_INVENTORY\",\n\tVIEW_PURCHASES = \"VIEW_PURCHASES\",\n\tVIEW_PURCHASE_DETAIL = \"VIEW_PURCHASE_DETAIL\",\n\tCREATE_PURCHASE = \"CREATE_PURCHASE\",\n\tUPDATE_PURCHASE = \"UPDATE_PURCHASE\",\n\tDELETE_PURCHASE = \"DELETE_PURCHASE\",\n\tVIEW_INVENTORY_PRODUCTS = \"VIEW_INVENTORY_PRODUCTS\",\n\tCREATE_INVENTORY_PRODUCT = \"CREATE_INVENTORY_PRODUCT\",\n\tUPDATE_INVENTORY_PRODUCT = \"UPDATE_INVENTORY_PRODUCT\",\n\tDELETE_INVENTORY_PRODUCT = \"DELETE_INVENTORY_PRODUCT\",\n\tVIEW_BUSINESS_BALANCE = \"VIEW_BUSINESS_BALANCE\",\n\tVIEW_BRANCH_BALANCE = \"VIEW_BRANCH_BALANCE\",\n\tUPDATE_PRODUCT_INGREDIENTS = \"UPDATE_PRODUCT_INGREDIENTS\",\n\tDELETE_PRODUCT_INGREDIENTS = \"DELETE_PRODUCT_INGREDIENTS\",\n\tAI_ASSISTANT = \"AI_ASSISTANT\",\n}\n\nexport enum UserRole {\n\tOWNER = \"OWNER\",\n\tBRANCH_MANAGER = \"BRANCH_MANAGER\",\n\tGENERAL_MANAGER = \"GENERAL_MANAGER\",\n\tCHEF = \"CHEF\",\n\tSOUS_CHEF = \"SOUS_CHEF\",\n\tPASTRY_CHEF = \"PASTRY_CHEF\",\n\tLINE_COOK = \"LINE_COOK\",\n\tPREP_COOK = \"PREP_COOK\",\n\tKITCHEN_ASSISTANT = \"KITCHEN_ASSISTANT\",\n\tDISHWASHER = \"DISHWASHER\",\n\tHEAD_WAITER = \"HEAD_WAITER\",\n\tWAITER = \"WAITER\",\n\tRUNNER = \"RUNNER\",\n\tBARISTA = \"BARISTA\",\n\tBARTENDER = \"BARTENDER\",\n\tSOMMELIER = \"SOMMELIER\",\n\tACCOUNTANT = \"ACCOUNTANT\",\n\tROOM_SERVICE_STAFF = \"ROOM_SERVICE_STAFF\",\n\tDELIVERY_DRIVER = \"DELIVERY_DRIVER\",\n\tINVENTORY_MANAGER = \"INVENTORY_MANAGER\",\n\tPURCHASING_MANAGER = \"PURCHASING_MANAGER\",\n\tWAREHOUSE_STAFF = \"WAREHOUSE_STAFF\",\n}\n\nexport interface User {\n\tid?: number;\n\temail: string;\n\tfullName: string;\n\trole?: UserRole;\n\tavatar64?: string | null;\n\tavatar128?: string | null;\n\tavatar256?: string | null;\n\tbusinessId?: number;\n\tbranchId?: number | null;\n\tcreatedAt: string;\n\temailVerified?: boolean;\n\tpermissions?: EmployeePermission[];\n}\n"],"names":["MenuAddonSelectType","BranchSetting","BranchTaxType","BranchTaxScope","BranchTaxFulfillment","BusinessSetting","CustomerAuthStep","CustomerAddressType","FeatureSegment","OrderType","OrderStatus","OrderItemStatus","PaymentMethod","OrderStep","ProductView","SellUnitType","PlanType","SubscriptionStatus","TableShape","TableStatus","TableLocation","EmployeePermission","UserRole","Feature"],"mappings":"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"}
|
|
1
|
+
{"version":3,"file":"index.js","sources":["../../../src/modules/addon/models.ts","../../../src/modules/branch/models.ts","../../../src/modules/business/models.ts","../../../src/modules/customer/models.ts","../../../src/modules/feature/models.ts","../../../src/modules/order/models.ts","../../../src/modules/product/models.ts","../../../src/modules/subscription/models.ts","../../../src/modules/table/models.ts","../../../src/modules/user/models.ts"],"sourcesContent":["export enum MenuAddonSelectType {\n\tSINGLE = \"SINGLE\",\n\tMULTIPLE = \"MULTIPLE\",\n}\n\nexport interface MenuAddonOption {\n\tid?: number;\n\tprice: number;\n\ttitle: Record<string, string>;\n\tremove?: boolean;\n}\n\nexport interface MenuAddon {\n\tid?: number;\n\tselectType: MenuAddonSelectType;\n\toptions: MenuAddonOption[];\n\tbusinessId?: number;\n\ttitle: Record<string, string>;\n}\n","export type BranchWorkHour = {\n\topenAt: string;\n\tcloseAt: string;\n};\n\nexport type BranchWorkDay = {\n\tday: number;\n\thours: BranchWorkHour | null;\n};\n\nexport type BranchWorkDays = {\n\tdays: BranchWorkDay[];\n};\n\nexport interface BranchSettings {\n\tdeliveryOrderEnabled: boolean;\n\tpickupOrderEnabled: boolean;\n\tdineInOrderEnabled: boolean;\n\tmaxDeliveryDistance: number;\n\tminDeliveryAmount: number;\n\tdeliveryFeeAmount: number;\n\tserviceChargeEnabled: boolean;\n\tserviceChargePercentage: number;\n\taddToOrderEnabled: boolean;\n}\n\nexport enum BranchSetting {\n\tMAX_DELIVERY_DISTANCE = \"maxDeliveryDistance\",\n\tDELIVERY_ORDER_ENABLED = \"deliveryOrderEnabled\",\n\tPICKUP_ORDER_ENABLED = \"pickupOrderEnabled\",\n\tDINE_IN_ORDER_ENABLED = \"dineInOrderEnabled\",\n\tMIN_DELIVERY_AMOUNT = \"minDeliveryAmount\",\n\tDELIVERY_FEE_AMOUNT = \"deliveryFeeAmount\",\n\tSERVICE_CHARGE_ENABLED = \"serviceChargeEnabled\",\n\tSERVICE_CHARGE_PERCENTAGE = \"serviceChargePercentage\",\n\tADD_TO_ORDER_ENABLED = \"addToOrderEnabled\",\n}\n\nexport interface Branch {\n\tid: number;\n\tname: string;\n\tbusinessId: number;\n\taddress: string;\n\tlongitude?: number;\n\tlatitude?: number;\n\tphone?: string;\n\twhatsApp?: string;\n\ttelegram?: string;\n\twifiPassword?: string;\n\tcreatedAt?: number;\n\tcoverPhoto?: string;\n\tsettings?: BranchSettings;\n\topeningHours?: BranchWorkDays;\n\tdeliveryHours?: BranchWorkDays;\n}\n\nexport type BranchServes = {\n\tisOpen: boolean;\n\tisDelivering: boolean;\n};\n\nexport enum BranchTaxType {\n\tPERCENTAGE = \"percentage\",\n\tFIXED_AMOUNT = \"fixed\",\n}\n\nexport enum BranchTaxScope {\n\tENTIRE_MENU = \"entire_menu\",\n\tCLASS = \"class\",\n}\n\nexport enum BranchTaxFulfillment {\n\tDELIVERY = \"delivery\",\n\tTAKEAWAY = \"takeaway\",\n\tDINE_IN = \"dine_in\",\n\tALL = \"ALL\",\n}\n\nexport type BranchTax = {\n\tid: number;\n\tbusinessId: number;\n\tbranchId: number;\n\ttaxClassId?: number;\n\tname: Record<string, string>;\n\trate: number;\n\ttype: BranchTaxType;\n\tisActive: boolean;\n\tcreatedAt: number;\n\tupdatedAt: number;\n\tscope: BranchTaxScope;\n\tincludedInPrice: boolean;\n\tisDefault: boolean;\n\tcomputationOrder: number;\n\tappliesToFulfillment?: BranchTaxFulfillment;\n\ttaxClassCode?: string;\n};\n","import * as featureModels from \"../feature/models\";\nimport * as subscriptionModels from \"../subscription/models\";\n\nexport interface BusinessLanguage {\n\tid: number;\n\tcode: string;\n\tbusinessId: number;\n}\n\nexport enum BusinessSetting {\n\tMAX_DELIVERY_DISTANCE = \"maxDeliveryDistance\",\n\tDELIVERY_ORDER_ENABLED = \"deliveryOrderEnabled\",\n\tPICKUP_ORDER_ENABLED = \"pickupOrderEnabled\",\n\tDINE_IN_ORDER_ENABLED = \"dineInOrderEnabled\",\n\tMIN_DELIVERY_AMOUNT = \"minDeliveryAmount\",\n}\n\nexport interface Business {\n\tid: number;\n\tname: string;\n\tusername: string;\n\tavatar64?: string;\n\tavatar128?: string;\n\tavatar256?: string;\n\tcoverPhoto?: string;\n\tinstagram?: string;\n\tfacebook?: string;\n\ttiktok?: string;\n\tcreatedAt?: number;\n\tcurrency: string;\n\tlanguages: BusinessLanguage[];\n\tsubscriptions?: subscriptionModels.Subscription[];\n\tsegment?: featureModels.FeatureSegment;\n}\n","export enum CustomerAuthStep {\n\tPHONE = \"PHONE\",\n\tOTP = \"OTP\",\n\tEMAIL = \"EMAIL\",\n}\n\nexport enum CustomerAddressType {\n\tHOME = \"HOME\",\n\tWORK = \"WORK\",\n\tTRAVEL = \"TRAVEL\",\n}\n\nexport interface CustomerAddress {\n\tid?: number;\n\taddressId?: number; // Update address temporary\n\tcountryCode: string;\n\tcityName: string;\n\tstreet: string;\n\thouseNumber: string;\n\tadditionalNumber?: string;\n\tpostCode?: string;\n\tinstructions?: string;\n\tfloor?: number;\n\tlongitude?: number;\n\tlatitude?: number;\n\ttitle?: string;\n\ttype?: CustomerAddressType;\n}\n\nexport interface CustomerAuthForm {\n\totp: string;\n\temail: string;\n}\n\nexport interface CustomerAuthPhoneForm {\n\tcountryCode: string;\n\tphoneNumber: string;\n}\n\nexport interface AuthResponse {\n\taccessToken: string;\n\trefreshToken: string;\n}\n\nexport interface Customer {\n\tid?: number;\n\temail: string;\n\tphoneNumber: string;\n\tfullName: string;\n\tsmsVerified?: boolean;\n\temailVerified?: boolean;\n\taddress?: CustomerAddress;\n\taddresses?: CustomerAddress[];\n}\n\nexport type CustomerUpdatePayload = Partial<Customer>;\n","export enum Feature {\n\tUPLOAD_VIDEO = \"UPLOAD_VIDEO\",\n}\nexport enum FeatureSegment {\n\tALPHA = \"ALPHA\",\n\tBETA = \"BETA\",\n\tALL = \"ALL\",\n}\n","import * as customerModels from \"../customer/models\";\nimport * as productModels from \"../product/models\";\n\nexport enum OrderType {\n\tDINE_IN = \"DINE_IN\",\n\tPICK_UP = \"PICK_UP\",\n\tDELIVERY = \"DELIVERY\",\n}\n\nexport enum OrderStatus {\n\tDRAFT = \"DRAFT\",\n\tPENDING = \"PENDING\",\n\tCONFIRMED = \"CONFIRMED\",\n\tPREPARING = \"PREPARING\",\n\tREADY = \"READY\",\n\tOUT_FOR_DELIVERY = \"OUT_FOR_DELIVERY\",\n\tDELIVERED = \"DELIVERED\",\n\tCOMPLETED = \"COMPLETED\",\n\tCANCELLED = \"CANCELLED\",\n\tFAILED = \"FAILED\",\n}\n\nexport enum OrderItemStatus {\n\tPENDING = \"PENDING\",\n\tPREPARING = \"PREPARING\",\n\tREADY = \"READY\",\n\tSERVED = \"SERVED\",\n}\n\nexport enum PaymentMethod {\n\tCASH = \"CASH\",\n\tCARD = \"CARD\",\n\tWALLET = \"WALLET\",\n\tTERMINAL = \"TERMINAL\",\n}\n\nexport interface OrderAddonOption {\n\toptionId: number;\n\tprice: number;\n}\n\nexport interface OrderAddon {\n\tid?: number;\n\taddonId: number;\n\toptions: OrderAddonOption[];\n}\n\nexport interface SelectedAddons {\n\t[key: number]: number | number[];\n}\n\nexport interface OrderItemVariant {\n\tid?: number;\n\tvariantId: number;\n\tprice: number;\n}\n\nexport interface OrderItem {\n\tid?: number;\n\tproductId: number;\n\torderId?: number;\n\tquantity: number;\n\tprice: number;\n\tvariant?: OrderItemVariant;\n\taddons: OrderAddon[];\n\tnote?: string;\n\tstatus?: OrderItemStatus;\n\tvat?: number;\n\tisPaid?: boolean;\n\tsellUnitType: productModels.SellUnitType;\n}\n\nexport interface Order {\n\tid?: number;\n\tbusinessId?: number;\n\tbranchId?: number;\n\tworkingDayId?: number;\n\ttableId?: number;\n\temployeeId?: number;\n\torderType: OrderType;\n\ttotalPriceWithTax: number;\n\ttotalPriceWithTaxAndFees?: number;\n\ttotalPriceWithoutTax: number;\n\ttotalTax: number;\n\titems: OrderItem[];\n\tstatus?: OrderStatus;\n\tvat?: number;\n\tpaymentMethod?: PaymentMethod;\n\tnote?: string;\n\tcreatedAt?: number;\n\tupdatedAt?: number;\n\tcustomer?: customerModels.Customer;\n\tdeliveryFee?: number;\n}\n\nexport interface OrderItems {\n\t[key: string]: OrderItem;\n}\n\nexport enum OrderStep {\n\tCART = \"CART\",\n\tDETAILS = \"DETAILS\",\n\tCOMPLETED = \"COMPLETED\",\n}\n\nexport interface OrderPayload extends Order {\n\tcustomerAddressId: number;\n\tcustomerId: number;\n\tlanguage?: string;\n}\n\nexport type OrderPriceDetails = {\n\ttotalPriceWithTax: number;\n\ttotalPriceWithTaxAndFees: number;\n\ttotalPriceWithoutTax: number;\n\ttotalTax: number;\n};\n\nexport type OrderFormattedPriceDetails = {\n\ttotalPriceWithTax: string;\n\ttotalPriceWithTaxAndFees: string;\n\ttotalPriceWithoutTax: string;\n\ttotalTax: string;\n};\n","import { MenuAddon } from \"../addon/models\";\n\nexport interface LocalizedContent {\n\tname: string;\n\tdescription: string;\n}\n\nexport interface ProductVariant {\n\tid?: number;\n\tprice: number;\n\t/** Title keyed by language code, e.g. { en: \"Large\", az: \"Böyük\" }. */\n\ttitle: Record<string, string>;\n\tproductId?: number;\n\tremove?: boolean;\n}\n\nexport interface Product {\n\tid: number;\n\tcategoryId: number;\n\tvat?: number;\n\tprice: number;\n\tvolume?: string; // 100qr/250ml/1kq\n\timage160?: string;\n\timage580?: string;\n\timage1024?: string;\n\ttranslations: Record<string, LocalizedContent>;\n\tvariants: ProductVariant[];\n\taddons: MenuAddon[];\n\tavailable?: boolean;\n\tvisible?: boolean;\n\tposition?: number;\n\tvideoUrl?: string;\n\tsellUnitType?: SellUnitType;\n\ttaxClassId?: number | null;\n}\n\nexport enum ProductView {\n\tLIST = \"list\",\n\tGRID = \"grid\",\n}\n\nexport interface DashboardProduct extends Omit<Product, \"addons\"> {\n\taddons: number[];\n}\n\nexport enum SellUnitType {\n\tPIECE = \"PIECE\",\n\tWEIGHT = \"WEIGHT\",\n\tVOLUME = \"VOLUME\",\n}\n","export enum PlanType {\n\tAPPETIZER = \"appetizer\",\n\tMAIN_COURSE = \"mainCourse\",\n\tCHEFS_SPECIAL = \"chefsSpecial\",\n\tLIFETIME = \"lifeTime\",\n}\n\nexport interface PricingPlan {\n\ttitle: string;\n\tprice: {\n\t\tmonthly: number;\n\t\tannually: number;\n\t};\n\tdiscountedPrice?: number;\n\tribbonText?: string;\n}\n\nexport interface PricingPlans {\n\t[key: string]: PricingPlan;\n}\n\nexport type PricingInterval = \"monthly\" | \"annually\";\n\nexport enum SubscriptionStatus {\n\tACTIVE = \"ACTIVE\",\n\tEXPIRED = \"EXPIRED\",\n\tCANCELLED = \"CANCELLED\",\n}\n\nexport type BillingInterval = \"MONTH\" | \"YEAR\";\n\nexport interface Subscription {\n\tid: number;\n\tbillingInterval: BillingInterval;\n\tbillingIntervalCount: number;\n\tstartDate: string;\n\tendDate: string;\n\tinterval: PricingInterval;\n\tstatus: SubscriptionStatus;\n\tbusiness_id?: number;\n\tplanName: string;\n}\n","export enum TableShape {\n\tSQUARE = \"SQUARE\",\n\tCIRCLE = \"CIRCLE\",\n\tRECTANGLE = \"RECTANGLE\",\n\tRECTANGLE_VERTICAL = \"RECTANGLE_VERTICAL\",\n\tSINGLE_AT_BAR = \"SINGLE_AT_BAR\",\n\tOTHER = \"OTHER\",\n}\n\nexport enum TableStatus {\n\tVACANT = \"VACANT\", // Free and available\n\tRESERVED = \"RESERVED\", // Booked but not yet seated\n\tOCCUPIED = \"OCCUPIED\", // Currently in use\n\tBLOCKED = \"BLOCKED\", // Temporarily blocked/unavailable\n\tNEEDS_CLEANING = \"NEEDS_CLEANING\", // Dirty, awaiting cleanup\n\tOUT_OF_SERVICE = \"OUT_OF_SERVICE\", // Permanently unavailable repair/maintenance\n\tPENDING_CONFIRMATION = \"PENDING_CONFIRMATION\", // Reservation not yet confirmed\n\tNO_SHOW = \"NO_SHOW\", // Reserved but guest didn’t arrive\n}\n\nexport enum TableLocation {\n\t// Indoor\n\tMAIN_HALL = \"MAIN_HALL\",\n\tPRIVATE_DINING = \"PRIVATE_DINING\",\n\tVIP_ROOM = \"VIP_ROOM\",\n\tBANQUET_HALL = \"BANQUET_HALL\",\n\tBAR_AREA = \"BAR_AREA\",\n\tLOUNGE = \"LOUNGE\",\n\tOPEN_KITCHEN = \"OPEN_KITCHEN\",\n\tBOOTH_SECTION = \"BOOTH_SECTION\",\n\tMEZZANINE = \"MEZZANINE\",\n\tWINE_CELLAR = \"WINE_CELLAR\",\n\n\t// Outdoor\n\tTERRACE = \"TERRACE\",\n\tPATIO = \"PATIO\",\n\tGARDEN = \"GARDEN\",\n\tCOURTYARD = \"COURTYARD\",\n\tROOFTOP = \"ROOFTOP\",\n\tBALCONY = \"BALCONY\",\n\tSIDEWALK = \"SIDEWALK\",\n\tPOOLSIDE = \"POOLSIDE\",\n\n\t// Special Sections\n\tSMOKING_AREA = \"SMOKING_AREA\",\n\tNON_SMOKING = \"NON_SMOKING\",\n\tFAMILY_SECTION = \"FAMILY_SECTION\",\n\tKIDS_AREA = \"KIDS_AREA\",\n\tWAITING_AREA = \"WAITING_AREA\",\n\tDANCE_FLOOR = \"DANCE_FLOOR\",\n}\n\nexport interface Table {\n\tid: number;\n\tbusinessId: number;\n\tbranchId: number;\n\tname: string;\n\tseatCount: number;\n\tshape: TableShape;\n\tlocation: TableLocation;\n\tstatus: TableStatus;\n}\n\nexport interface TableState {\n\ttables: Table[];\n}\n\nexport type TableForm = Omit<Table, \"id\" | \"businessId\" | \"branchId\"> & {\n\tbranchId: string | number;\n};\n\nexport type TableUpdate = Partial<Omit<Table, \"id\" | \"businessId\">>;\n\nexport type TableFilter = Partial<Pick<Table, \"branchId\" | \"shape\" | \"location\" | \"status\">>;\n\nexport type TableFilterParams = { field: keyof TableFilter; value: TableFilter[keyof TableFilter] };\n","export enum EmployeePermission {\n\tVIEW_BUSINESS = \"VIEW_BUSINESS\",\n\tUPDATE_BUSINESS = \"UPDATE_BUSINESS\",\n\tVIEW_ORDERS = \"VIEW_ORDERS\",\n\tUPDATE_ORDER = \"UPDATE_ORDER\",\n\tCREATE_ORDER = \"CREATE_ORDER\",\n\tVIEW_QR_MENU = \"VIEW_QR_MENU\",\n\tVIEW_MENU = \"VIEW_MENU\",\n\tVIEW_MENU_ITEMS = \"VIEW_MENU_ITEMS\",\n\tCREATE_MENU_ITEM = \"CREATE_MENU_ITEM\",\n\tUPDATE_MENU_ITEM = \"UPDATE_MENU_ITEM\",\n\tDELETE_MENU_ITEM = \"DELETE_MENU_ITEM\",\n\tVIEW_CATEGORIES = \"VIEW_CATEGORIES\",\n\tUPDATE_CATEGORY = \"UPDATE_CATEGORY\",\n\tCREATE_CATEGORY = \"CREATE_CATEGORY\",\n\tDELETE_CATEGORY = \"DELETE_CATEGORY\",\n\tVIEW_ADDONS = \"VIEW_ADDONS\",\n\tUPDATE_ADDON = \"UPDATE_ADDON\",\n\tCREATE_ADDON = \"CREATE_ADDON\",\n\tDELETE_ADDON = \"DELETE_ADDON\",\n\tVIEW_TABLES = \"VIEW_TABLES\",\n\tUPDATE_TABLE = \"UPDATE_TABLE\",\n\tUPDATE_TABLE_STATUS = \"UPDATE_TABLE_STATUS\",\n\tCREATE_TABLE = \"CREATE_TABLE\",\n\tDELETE_TABLE = \"DELETE_TABLE\",\n\tVIEW_BRANCHES = \"VIEW_BRANCHES\",\n\tUPDATE_BRANCH = \"UPDATE_BRANCH\",\n\tCREATE_BRANCH = \"CREATE_BRANCH\",\n\tDELETE_BRANCH = \"DELETE_BRANCH\",\n\tVIEW_EMPLOYEES = \"VIEW_EMPLOYEES\",\n\tUPDATE_EMPLOYEE = \"UPDATE_EMPLOYEE\",\n\tCREATE_EMPLOYEE = \"CREATE_EMPLOYEE\",\n\tDELETE_EMPLOYEE = \"DELETE_EMPLOYEE\",\n\tVIEW_ANALYTICS = \"VIEW_ANALYTICS\",\n\tVIEW_SALES_REPORTS = \"VIEW_SALES_REPORTS\",\n\tVIEW_SUBSCRIPTION = \"VIEW_SUBSCRIPTION\",\n\tUPDATE_SUBSCRIPTION = \"UPDATE_SUBSCRIPTION\",\n\tVIEW_QR_CODES = \"VIEW_QR_CODES\",\n\tCREATE_QR_CODE = \"CREATE_QR_CODE\",\n\tDELETE_QR_CODE = \"DELETE_QR_CODE\",\n\tALL = \"ALL\",\n\t// Inventory\n\tVIEW_INVENTORY = \"VIEW_INVENTORY\",\n\tVIEW_PURCHASES = \"VIEW_PURCHASES\",\n\tVIEW_PURCHASE_DETAIL = \"VIEW_PURCHASE_DETAIL\",\n\tCREATE_PURCHASE = \"CREATE_PURCHASE\",\n\tUPDATE_PURCHASE = \"UPDATE_PURCHASE\",\n\tDELETE_PURCHASE = \"DELETE_PURCHASE\",\n\tVIEW_INVENTORY_PRODUCTS = \"VIEW_INVENTORY_PRODUCTS\",\n\tCREATE_INVENTORY_PRODUCT = \"CREATE_INVENTORY_PRODUCT\",\n\tUPDATE_INVENTORY_PRODUCT = \"UPDATE_INVENTORY_PRODUCT\",\n\tDELETE_INVENTORY_PRODUCT = \"DELETE_INVENTORY_PRODUCT\",\n\tVIEW_BUSINESS_BALANCE = \"VIEW_BUSINESS_BALANCE\",\n\tVIEW_BRANCH_BALANCE = \"VIEW_BRANCH_BALANCE\",\n\tUPDATE_PRODUCT_INGREDIENTS = \"UPDATE_PRODUCT_INGREDIENTS\",\n\tDELETE_PRODUCT_INGREDIENTS = \"DELETE_PRODUCT_INGREDIENTS\",\n\tAI_ASSISTANT = \"AI_ASSISTANT\",\n}\n\nexport enum UserRole {\n\tOWNER = \"OWNER\",\n\tBRANCH_MANAGER = \"BRANCH_MANAGER\",\n\tGENERAL_MANAGER = \"GENERAL_MANAGER\",\n\tCHEF = \"CHEF\",\n\tSOUS_CHEF = \"SOUS_CHEF\",\n\tPASTRY_CHEF = \"PASTRY_CHEF\",\n\tLINE_COOK = \"LINE_COOK\",\n\tPREP_COOK = \"PREP_COOK\",\n\tKITCHEN_ASSISTANT = \"KITCHEN_ASSISTANT\",\n\tDISHWASHER = \"DISHWASHER\",\n\tHEAD_WAITER = \"HEAD_WAITER\",\n\tWAITER = \"WAITER\",\n\tRUNNER = \"RUNNER\",\n\tBARISTA = \"BARISTA\",\n\tBARTENDER = \"BARTENDER\",\n\tSOMMELIER = \"SOMMELIER\",\n\tACCOUNTANT = \"ACCOUNTANT\",\n\tROOM_SERVICE_STAFF = \"ROOM_SERVICE_STAFF\",\n\tDELIVERY_DRIVER = \"DELIVERY_DRIVER\",\n\tINVENTORY_MANAGER = \"INVENTORY_MANAGER\",\n\tPURCHASING_MANAGER = \"PURCHASING_MANAGER\",\n\tWAREHOUSE_STAFF = \"WAREHOUSE_STAFF\",\n}\n\nexport interface User {\n\tid?: number;\n\temail: string;\n\tfullName: string;\n\trole?: UserRole;\n\tavatar64?: string | null;\n\tavatar128?: string | null;\n\tavatar256?: string | null;\n\tbusinessId?: number;\n\tbranchId?: number | null;\n\tcreatedAt: string;\n\temailVerified?: boolean;\n\tpermissions?: EmployeePermission[];\n}\n"],"names":["MenuAddonSelectType","BranchSetting","BranchTaxType","BranchTaxScope","BranchTaxFulfillment","BusinessSetting","CustomerAuthStep","CustomerAddressType","FeatureSegment","OrderType","OrderStatus","OrderItemStatus","PaymentMethod","OrderStep","ProductView","SellUnitType","PlanType","SubscriptionStatus","TableShape","TableStatus","TableLocation","EmployeePermission","UserRole","Feature"],"mappings":"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"}
|
|
@@ -2,26 +2,16 @@ export declare enum MenuAddonSelectType {
|
|
|
2
2
|
SINGLE = "SINGLE",
|
|
3
3
|
MULTIPLE = "MULTIPLE"
|
|
4
4
|
}
|
|
5
|
-
export interface MenuAddonTranslation {
|
|
6
|
-
id?: number;
|
|
7
|
-
title: string;
|
|
8
|
-
language: string;
|
|
9
|
-
}
|
|
10
|
-
export interface MenuAddonOptionTranslation {
|
|
11
|
-
id?: number;
|
|
12
|
-
title: string;
|
|
13
|
-
language: string;
|
|
14
|
-
}
|
|
15
5
|
export interface MenuAddonOption {
|
|
16
6
|
id?: number;
|
|
17
7
|
price: number;
|
|
18
|
-
|
|
8
|
+
title: Record<string, string>;
|
|
19
9
|
remove?: boolean;
|
|
20
10
|
}
|
|
21
11
|
export interface MenuAddon {
|
|
22
12
|
id?: number;
|
|
23
13
|
selectType: MenuAddonSelectType;
|
|
24
|
-
translations: MenuAddonTranslation[];
|
|
25
14
|
options: MenuAddonOption[];
|
|
26
15
|
businessId?: number;
|
|
16
|
+
title: Record<string, string>;
|
|
27
17
|
}
|
|
@@ -1,6 +1,6 @@
|
|
|
1
|
-
import { MenuAddon, MenuAddonOption
|
|
2
|
-
export declare const getAddonTranslation: (addon: MenuAddon, language: string) =>
|
|
3
|
-
export declare const getAddonOptionTranslation: (option: MenuAddonOption, language: string) =>
|
|
1
|
+
import { MenuAddon, MenuAddonOption } from "./models";
|
|
2
|
+
export declare const getAddonTranslation: (addon: MenuAddon, language: string) => string;
|
|
3
|
+
export declare const getAddonOptionTranslation: (option: MenuAddonOption, language: string) => string;
|
|
4
4
|
export declare const getOptionPrice: ({ option, currency, language, }: {
|
|
5
5
|
option: MenuAddonOption;
|
|
6
6
|
currency?: string;
|
|
@@ -1,20 +1,13 @@
|
|
|
1
1
|
import { MenuAddon } from "../addon/models";
|
|
2
|
-
export interface
|
|
3
|
-
id: number;
|
|
2
|
+
export interface LocalizedContent {
|
|
4
3
|
name: string;
|
|
5
|
-
description
|
|
6
|
-
language: string;
|
|
7
|
-
productId?: number;
|
|
8
|
-
}
|
|
9
|
-
export interface ProductVariantTranslation {
|
|
10
|
-
id?: number;
|
|
11
|
-
title: string;
|
|
12
|
-
language: string;
|
|
4
|
+
description: string;
|
|
13
5
|
}
|
|
14
6
|
export interface ProductVariant {
|
|
15
7
|
id?: number;
|
|
16
8
|
price: number;
|
|
17
|
-
|
|
9
|
+
/** Title keyed by language code, e.g. { en: "Large", az: "Böyük" }. */
|
|
10
|
+
title: Record<string, string>;
|
|
18
11
|
productId?: number;
|
|
19
12
|
remove?: boolean;
|
|
20
13
|
}
|
|
@@ -27,7 +20,7 @@ export interface Product {
|
|
|
27
20
|
image160?: string;
|
|
28
21
|
image580?: string;
|
|
29
22
|
image1024?: string;
|
|
30
|
-
translations:
|
|
23
|
+
translations: Record<string, LocalizedContent>;
|
|
31
24
|
variants: ProductVariant[];
|
|
32
25
|
addons: MenuAddon[];
|
|
33
26
|
available?: boolean;
|
|
@@ -35,6 +28,7 @@ export interface Product {
|
|
|
35
28
|
position?: number;
|
|
36
29
|
videoUrl?: string;
|
|
37
30
|
sellUnitType?: SellUnitType;
|
|
31
|
+
taxClassId?: number | null;
|
|
38
32
|
}
|
|
39
33
|
export declare enum ProductView {
|
|
40
34
|
LIST = "list",
|
|
@@ -1,8 +1,8 @@
|
|
|
1
|
-
import {
|
|
1
|
+
import { LocalizedContent, Product, ProductVariant, SellUnitType } from "./models";
|
|
2
2
|
import { MenuAddon } from "src/modules/addon/models";
|
|
3
3
|
import * as orderModels from "src/modules/order/models";
|
|
4
4
|
export declare const calculateTotalPrice: (price?: number, quantity?: number, vat?: number) => number;
|
|
5
|
-
export declare const getProductTranslation: (product: Pick<Product, "translations">, language: string) =>
|
|
5
|
+
export declare const getProductTranslation: (product: Pick<Product, "translations">, language: string) => LocalizedContent;
|
|
6
6
|
export declare const getProductRawPrice: (product: Pick<Product, "price" | "vat">, quantity?: number) => number;
|
|
7
7
|
export declare const getProductPrice: (product: Pick<Product, "price" | "vat">, currency: string, language: string, quantity?: number) => {
|
|
8
8
|
totalPrice: number;
|
|
@@ -21,7 +21,7 @@ export declare const getProductVariantPrice: ({ variantId, currency, language, p
|
|
|
21
21
|
totalPrice: number;
|
|
22
22
|
formattedTotalPrice: string;
|
|
23
23
|
};
|
|
24
|
-
export declare const getProductVariantTranslation: (variant: ProductVariant, language: string) =>
|
|
24
|
+
export declare const getProductVariantTranslation: (variant: ProductVariant, language: string) => string;
|
|
25
25
|
export declare const getProductOrderRawPrice: ({ product, variantId, quantity, selectedAddons, noVat, }: {
|
|
26
26
|
product: Product;
|
|
27
27
|
variantId: number | null;
|
|
@@ -2,26 +2,16 @@ export declare enum MenuAddonSelectType {
|
|
|
2
2
|
SINGLE = "SINGLE",
|
|
3
3
|
MULTIPLE = "MULTIPLE"
|
|
4
4
|
}
|
|
5
|
-
export interface MenuAddonTranslation {
|
|
6
|
-
id?: number;
|
|
7
|
-
title: string;
|
|
8
|
-
language: string;
|
|
9
|
-
}
|
|
10
|
-
export interface MenuAddonOptionTranslation {
|
|
11
|
-
id?: number;
|
|
12
|
-
title: string;
|
|
13
|
-
language: string;
|
|
14
|
-
}
|
|
15
5
|
export interface MenuAddonOption {
|
|
16
6
|
id?: number;
|
|
17
7
|
price: number;
|
|
18
|
-
|
|
8
|
+
title: Record<string, string>;
|
|
19
9
|
remove?: boolean;
|
|
20
10
|
}
|
|
21
11
|
export interface MenuAddon {
|
|
22
12
|
id?: number;
|
|
23
13
|
selectType: MenuAddonSelectType;
|
|
24
|
-
translations: MenuAddonTranslation[];
|
|
25
14
|
options: MenuAddonOption[];
|
|
26
15
|
businessId?: number;
|
|
16
|
+
title: Record<string, string>;
|
|
27
17
|
}
|
|
@@ -1,6 +1,6 @@
|
|
|
1
|
-
import { MenuAddon, MenuAddonOption
|
|
2
|
-
export declare const getAddonTranslation: (addon: MenuAddon, language: string) =>
|
|
3
|
-
export declare const getAddonOptionTranslation: (option: MenuAddonOption, language: string) =>
|
|
1
|
+
import { MenuAddon, MenuAddonOption } from "./models";
|
|
2
|
+
export declare const getAddonTranslation: (addon: MenuAddon, language: string) => string;
|
|
3
|
+
export declare const getAddonOptionTranslation: (option: MenuAddonOption, language: string) => string;
|
|
4
4
|
export declare const getOptionPrice: ({ option, currency, language, }: {
|
|
5
5
|
option: MenuAddonOption;
|
|
6
6
|
currency?: string;
|
|
@@ -1,20 +1,13 @@
|
|
|
1
1
|
import { MenuAddon } from "../addon/models";
|
|
2
|
-
export interface
|
|
3
|
-
id: number;
|
|
2
|
+
export interface LocalizedContent {
|
|
4
3
|
name: string;
|
|
5
|
-
description
|
|
6
|
-
language: string;
|
|
7
|
-
productId?: number;
|
|
8
|
-
}
|
|
9
|
-
export interface ProductVariantTranslation {
|
|
10
|
-
id?: number;
|
|
11
|
-
title: string;
|
|
12
|
-
language: string;
|
|
4
|
+
description: string;
|
|
13
5
|
}
|
|
14
6
|
export interface ProductVariant {
|
|
15
7
|
id?: number;
|
|
16
8
|
price: number;
|
|
17
|
-
|
|
9
|
+
/** Title keyed by language code, e.g. { en: "Large", az: "Böyük" }. */
|
|
10
|
+
title: Record<string, string>;
|
|
18
11
|
productId?: number;
|
|
19
12
|
remove?: boolean;
|
|
20
13
|
}
|
|
@@ -27,7 +20,7 @@ export interface Product {
|
|
|
27
20
|
image160?: string;
|
|
28
21
|
image580?: string;
|
|
29
22
|
image1024?: string;
|
|
30
|
-
translations:
|
|
23
|
+
translations: Record<string, LocalizedContent>;
|
|
31
24
|
variants: ProductVariant[];
|
|
32
25
|
addons: MenuAddon[];
|
|
33
26
|
available?: boolean;
|
|
@@ -35,6 +28,7 @@ export interface Product {
|
|
|
35
28
|
position?: number;
|
|
36
29
|
videoUrl?: string;
|
|
37
30
|
sellUnitType?: SellUnitType;
|
|
31
|
+
taxClassId?: number | null;
|
|
38
32
|
}
|
|
39
33
|
export declare enum ProductView {
|
|
40
34
|
LIST = "list",
|
|
@@ -1,8 +1,8 @@
|
|
|
1
|
-
import {
|
|
1
|
+
import { LocalizedContent, Product, ProductVariant, SellUnitType } from "./models";
|
|
2
2
|
import { MenuAddon } from "src/modules/addon/models";
|
|
3
3
|
import * as orderModels from "src/modules/order/models";
|
|
4
4
|
export declare const calculateTotalPrice: (price?: number, quantity?: number, vat?: number) => number;
|
|
5
|
-
export declare const getProductTranslation: (product: Pick<Product, "translations">, language: string) =>
|
|
5
|
+
export declare const getProductTranslation: (product: Pick<Product, "translations">, language: string) => LocalizedContent;
|
|
6
6
|
export declare const getProductRawPrice: (product: Pick<Product, "price" | "vat">, quantity?: number) => number;
|
|
7
7
|
export declare const getProductPrice: (product: Pick<Product, "price" | "vat">, currency: string, language: string, quantity?: number) => {
|
|
8
8
|
totalPrice: number;
|
|
@@ -21,7 +21,7 @@ export declare const getProductVariantPrice: ({ variantId, currency, language, p
|
|
|
21
21
|
totalPrice: number;
|
|
22
22
|
formattedTotalPrice: string;
|
|
23
23
|
};
|
|
24
|
-
export declare const getProductVariantTranslation: (variant: ProductVariant, language: string) =>
|
|
24
|
+
export declare const getProductVariantTranslation: (variant: ProductVariant, language: string) => string;
|
|
25
25
|
export declare const getProductOrderRawPrice: ({ product, variantId, quantity, selectedAddons, noVat, }: {
|
|
26
26
|
product: Product;
|
|
27
27
|
variantId: number | null;
|
package/dist/utils/index.esm.js
CHANGED
|
@@ -1,2 +1,2 @@
|
|
|
1
|
-
import{priceFormatter as E,isEmpty as A,sortNumbers as _,checkIsValidEmail as t,getQueryParam as T}from"@sorocraft/js-utils";import{HourglassHalf as R,FileCheck as r,Chef as e,Delivery as n,BagCheck as I,Check as D}from"@sorocraft/ui/icons";const a=(E,A)=>{var _,t;return(null===(t=null===(_=null==E?void 0:E.translations)||void 0===_?void 0:_.find)||void 0===t?void 0:t.call(_,E=>E.language===A))||{}},i=(E,A)=>{var _,t;return(null===(t=null===(_=null==E?void 0:E.translations)||void 0===_?void 0:_.find)||void 0===t?void 0:t.call(_,E=>E.language===A))||{}},o=({option:A,currency:_,language:t})=>{const{price:T}=A||{};return{totalPrice:T,formattedTotalPrice:E(T,_||"USD",t||"en")}},N=(E,A)=>{var _;return(null===(_=((null==E?void 0:E.options)||[]).find(({id:E})=>E===A))||void 0===_?void 0:_.price)||0},l=(E,A,_)=>{var t;if(Array.isArray(A))return(E||[]).filter(({id:E})=>A.includes(E)).map(({translations:E})=>{var A;return(null===(A=E.find(E=>E.language===_))||void 0===A?void 0:A.title)||""}).filter(Boolean).join(", ");{const T=(E||[]).find(({id:E})=>E===A);return(null===(t=null==T?void 0:T.translations.find(E=>E.language===_))||void 0===t?void 0:t.title)||""}},O=(E,A)=>{var _,t,T;return(null===(T=null===(t=null===(_=null==E?void 0:E.translations)||void 0===_?void 0:_.find)||void 0===t?void 0:t.call(_,E=>E.language===A))||void 0===T?void 0:T.title)||""};var s,S,u;!function(E){E.LIST="list",E.GRID="grid"}(s||(s={})),function(E){E.PIECE="PIECE",E.WEIGHT="WEIGHT",E.VOLUME="VOLUME"}(S||(S={})),function(E){E.SINGLE="SINGLE",E.MULTIPLE="MULTIPLE"}(u||(u={}));const C=(E=0,A=1,_=0)=>E*A*(1+_/100),c=(E,A)=>{var _,t;return(null===(t=null===(_=null==E?void 0:E.translations)||void 0===_?void 0:_.find)||void 0===t?void 0:t.call(_,E=>E.language===A))||{}},U=(E,A=1)=>{const{price:_=0,vat:t=0}=E||{};return C(_,A,t)},P=(A,_,t,T=1)=>{const R=U(A,T);return{totalPrice:R,formattedTotalPrice:E(R,_,t)}},d=(E,A)=>{var _,t;return(null===(t=null===(_=null==E?void 0:E.variants)||void 0===_?void 0:_.find)||void 0===t?void 0:t.call(_,E=>E.id===A))||{}},L=(E,A={},_)=>((null==E?void 0:E.addons)||[]).filter(E=>Object.prototype.hasOwnProperty.call(A,E.id)).reduce((E,_)=>{const{id:t,selectType:T}=_;if(T===u.SINGLE){const T=A[t];return E+N(_,T)}return E+(A[t]||[]).reduce((E,A)=>E+N(_,A),0)},0)*_,V=(E,A,_)=>{const t=d(A,E),{vat:T}=A||{},{price:R}=t||{};return C(R,_,T)},W=({variantId:A,currency:_="USD",language:t="en",product:T,quantity:R=1})=>{const r=V(A,T,R);return{totalPrice:r,formattedTotalPrice:E(r,_,t)}},M=(E,A)=>{var _,t;return(null===(t=null===(_=null==E?void 0:E.translations)||void 0===_?void 0:_.find)||void 0===t?void 0:t.call(_,E=>E.language===A))||{}},v=({product:E,variantId:_,quantity:t=1,selectedAddons:T,noVat:R=!1})=>{if(A(E))return{price:0,optionsPrice:0,total:0};const r=Object.assign(Object.assign({},E),{vat:R?0:E.vat}),e=L(r,T,t),n=_?V(_,r,t):U(r,t);return{price:n,optionsPrice:e,total:n+e}},B=({product:A,variantId:_,quantity:t=1,currency:T,language:R,selectedAddons:r,noVat:e=!1})=>{const{total:n}=v({product:A,variantId:_,quantity:t,selectedAddons:r,noVat:e});return{totalPrice:n,formattedTotalPrice:E(n,T,R)}},H=(E,A)=>((null==E?void 0:E.addons)||[]).find(({id:E})=>E===A)||{},Y=E=>{switch(E){case S.WEIGHT:return" / kg";case S.VOLUME:return" / l";default:return""}},m=E=>{switch(E){case S.WEIGHT:return{"50gr":.05,"100gr":.1,"150gr":.15,"200gr":.2,"250gr":.25,"300gr":.3,"350gr":.35,"400gr":.4,"450gr":.45,"500gr":.5,"600gr":.6,"700gr":.7,"750gr":.75,"800gr":.8,"850gr":.85,"900gr":.9,"950gr":.95,"1kg":1,"2kg":2,"5kg":5,"10kg":10,"20kg":20};case S.VOLUME:return{"50ml":.05,"100ml":.1,"150ml":.15,"200ml":.2,"250ml":.25,"300ml":.3,"350ml":.35,"400ml":.4,"450ml":.45,"500ml":.5,"600ml":.6,"700ml":.7,"750ml":.75,"800ml":.8,"850ml":.85,"900ml":.9,"950ml":.95,"1l":1,"2l":2,"5l":5,"10l":10,"20l":20};default:return{}}};var f,G,p,g,h,b;!function(E){E.DINE_IN="DINE_IN",E.PICK_UP="PICK_UP",E.DELIVERY="DELIVERY"}(f||(f={})),function(E){E.DRAFT="DRAFT",E.PENDING="PENDING",E.CONFIRMED="CONFIRMED",E.PREPARING="PREPARING",E.READY="READY",E.OUT_FOR_DELIVERY="OUT_FOR_DELIVERY",E.DELIVERED="DELIVERED",E.COMPLETED="COMPLETED",E.CANCELLED="CANCELLED",E.FAILED="FAILED"}(G||(G={})),function(E){E.PENDING="PENDING",E.PREPARING="PREPARING",E.READY="READY",E.SERVED="SERVED"}(p||(p={})),function(E){E.CASH="CASH",E.CARD="CARD",E.WALLET="WALLET",E.TERMINAL="TERMINAL"}(g||(g={})),function(E){E.CART="CART",E.DETAILS="DETAILS",E.COMPLETED="COMPLETED"}(h||(h={})),g.CASH,h.CART,h.DETAILS,h.COMPLETED,function(E){E.FIELD_REQUIRED_ERROR="This field is required",E.TABLE_NOT_SELECTED="Please select a table",E.ADDRESS_IS_EMPTY="Please enter an address",E.EMPTY_ITEMS="Please choose product",E.BRANCH_NOT_SELECTED="Please select a branch"}(b||(b={}));const F=E=>E.options.reduce((E,A)=>E+A.price,0);function y(E=[],A=1){return A*E.reduce((E,A)=>E+F(A),0)}const $=(A,_,t)=>{const T=(E,A,_)=>A*E+y(_,A);let R=0,r=0;for(const E of A.items){const _=T(E.price,E.quantity,E.addons);R+=_,void 0===A.vat&&E.vat&&(r+=_*E.vat/100)}void 0!==A.vat&&(r=R*A.vat/100);const e=R+r;return{totalWithoutTax:R,totalWithoutTaxFormatted:E(R,_,t),totalTax:r,totalTaxFormatted:E(r,_,t),totalWithTax:e,totalWithTaxFormatted:E(e,_,t)}},Q=(E,A,t)=>{if(!E)throw new Error("Product ID is required");let T=`${E}`;A&&(T+=`-${A}`);const R=Object.entries(t||{}).map(([E,A])=>{if(!E||!A)return null;const t=Array.isArray(A)?_(A).filter(Boolean).join("-"):`${A}`;return t?`${E}-${t}`:null}).filter(Boolean).join("-");return R&&(T+=`-${R}`),T},j=E=>{var A;const{price:_,variant:t,addons:T,quantity:R,vat:r}=E||{},e=null!==(A=null==t?void 0:t.price)&&void 0!==A?A:_,n=e+y(T,1),I=e*(r/100),D=n+I;return{totalGross:D*R,totalNet:n*R,totalTax:I*R,itemGrossPrice:D,itemNetPrice:n,itemTax:I}},w=E=>{const A={};for(const{addonId:_,options:t=[]}of E.addons||[]){const E=t.map(({optionId:E})=>E);A[_]=1===E.length?E[0]:E}return A},K=E=>{switch(E){case G.COMPLETED:return D;case G.DELIVERED:return I;case G.OUT_FOR_DELIVERY:return n;case G.PREPARING:return e;case G.CONFIRMED:return r;case G.PENDING:default:return R}},x=(E=[],_={})=>Object.entries(_).map(([_,t])=>{const T=Number(_),R=Array.isArray(t)?t:[t],r=E.find(E=>E.id===T);if(A(r))return{addonId:T,options:[]};const e=(r.options||[]).filter(E=>R.includes(E.id)).map(E=>({optionId:E.id,price:E.price}));return{addonId:T,options:e}}),k=(E,A,_)=>{if(!E)return null;const{deliveryOrderEnabled:t,dineInOrderEnabled:T,pickupOrderEnabled:R}=E;return t&&_?f.DELIVERY:T&&A?f.DINE_IN:R&&A?f.PICK_UP:null},q=E=>{switch(E){case"customer":return b.ADDRESS_IS_EMPTY;case"tableId":return b.TABLE_NOT_SELECTED;case"items":return b.EMPTY_ITEMS;case"branchId":return b.BRANCH_NOT_SELECTED;default:return b.FIELD_REQUIRED_ERROR}};var z,J;!function(E){E.PHONE="PHONE",E.OTP="OTP",E.EMAIL="EMAIL"}(z||(z={})),function(E){E.HOME="HOME",E.WORK="WORK",E.TRAVEL="TRAVEL"}(J||(J={}));const X=E=>`${E.countryCode}${E.phoneNumber}`.replaceAll("+",""),Z=(E,A)=>{const _={},{email:T,otp:R}=E||{};switch(A){case z.OTP:T&&t(T)||(_.email="Invalid Email Address"),R&&6===R.length||(_.otp="Invalid OTP");break;case z.EMAIL:T&&t(T)||(_.email="Invalid Email Address")}return _},EE=E=>{const A={},{countryCode:_,cityName:t,street:T,houseNumber:R}=E||{};return _||(A.countryCode="COUNTRY_REQUIRED"),t||(A.cityName="CITY_REQUIRED"),T||(A.street="STREET_REQUIRED"),R||(A.houseNumber="STREET_NUMBER_REQUIRED"),A},AE=E=>(E||[]).filter(Boolean).join(", "),_E=(E,A,_)=>[E,[A,_].filter(Boolean).join("/")].filter(Boolean).join(" ");var tE,TE;!function(E){E.UPLOAD_VIDEO="UPLOAD_VIDEO"}(tE||(tE={})),function(E){E.ALPHA="ALPHA",E.BETA="BETA",E.ALL="ALL"}(TE||(TE={}));const RE={[TE.ALPHA]:[tE.UPLOAD_VIDEO],[TE.BETA]:[],[TE.ALL]:[]},rE=(E,A)=>{if("1"===T(E))return!0;return(A===TE.ALPHA?[TE.ALPHA,TE.BETA,TE.ALL]:A===TE.BETA?[TE.BETA,TE.ALL]:[TE.ALL]).some(A=>{var _;return null===(_=RE[A])||void 0===_?void 0:_.includes(E)})},eE="tabres.com",nE="https://images.tabres.com",IE={994:E=>{const A=["50","51","10","55","99","70","77","60"];return new RegExp(`^(${A.join("|")})\\d{7}$`).test(E)?{isValid:!0}:{isValid:!1,error:`Azerbaijani numbers must be 9 digits and start with ${A.join(", ")}`}},31:E=>/^\d{9}$/.test(E)?{isValid:!0}:{isValid:!1,error:"Dutch numbers must be exactly 9 digits"}};function DE(E){if(!E)return{isValid:!1,error:"FIELD_REQUIRED"};const A=E.replace(/\D/g,""),_=A.startsWith("994")?"994":A.startsWith("31")?"31":null;if(!_)return{isValid:!1,error:"Unsupported country code"};const t=A.slice(_.length);return(0,IE[_])(t)}const aE=(E,A)=>{const _=A||"en";return"localhost:3000"===E?{url:`http://localhost:3000/${_}`,domain:eE}:{url:`https://${eE}/${_}`,domain:eE}},iE=(E,A)=>`https://app.tabres.com/auth/register?lang=${E}&utm_source=${A}`,oE=E=>E?E.includes("base64")||E.startsWith("https://")?E:`${nE}/${E}`:"",NE=E=>E?E.includes("base64")||E.startsWith("https://")?E:`${nE}/${E}`:"https://images.tabres.com/no-photo-128.webp",lE=E=>E?E.includes("base64")||E.startsWith("https://")?E:`${nE}/${E}`:"https://images.tabres.com/tabres-doodle.webp",OE="ABCDEFGHIJKLMNOPQRSTUVWXYZabcdefghijklmnopqrstuvwxyz0123456789+/=",sE=(E,A,_)=>OE.charAt(E>>2)+OE.charAt((3&E)<<4|A>>4)+OE.charAt((15&A)<<2|_>>6)+OE.charAt(63&_),SE=(E,A,_)=>`data:image/gif;base64,R0lGODlhAQABAPAA${sE(0,E,A)+sE(_,255,255)}/yH5BAAAAAAALAAAAAABAAEAAAICRAEAOw==`,uE=E=>E?E.includes("base64")||E.startsWith("https://")?E:`${nE}/${E}`:"",CE=(E,A)=>{const _=parseInt(E.replace("#",""),16),t=(_>>16&255)/255,T=(_>>8&255)/255,R=(255&_)/255,r=Math.max(t,T,R),e=Math.min(t,T,R),n=(r+e)/2;let I=0,D=0;if(r!==e){const E=r-e;switch(D=n>.5?E/(2-r-e):E/(r+e),r){case t:I=(T-R)/E+(T<R?6:0);break;case T:I=(R-t)/E+2;break;case R:I=(t-T)/E+4}I/=6}const a=Math.max(0,Math.min(1,n+A/100)),i=(E,A,_)=>(_<0&&(_+=1),_>1&&(_-=1),_<1/6?E+6*(A-E)*_:_<.5?A:_<2/3?E+(A-E)*(2/3-_)*6:E);let o=a,N=a,l=a;if(0!==D){const E=a<.5?a*(1+D):a+D-a*D,A=2*a-E;o=i(A,E,I+1/3),N=i(A,E,I),l=i(A,E,I-1/3)}const O=E=>Math.round(255*E).toString(16).padStart(2,"0");return`#${O(o)}${O(N)}${O(l)}`},cE=(E,A)=>{var _,t;return(null===(t=null===(_=null==E?void 0:E.translations)||void 0===_?void 0:_.find)||void 0===t?void 0:t.call(_,E=>E.language===A))||{}},UE=(E,_,t)=>{var T;const R=null===(T=null==_?void 0:_.find)||void 0===T?void 0:T.call(_,({id:A})=>A===E);if(A(R))return"";const{name:r}=cE(R,t);return r||""},PE=(E,A)=>{const _=A.reduce((E,A)=>{if(!A.visible)return E;const _=Number(A.categoryId);return E[_]||(E[_]=[]),E[_].push(A),E},{});return E.map(E=>Object.assign(Object.assign({},E),{products:_[Number(E.id)]||[]})).filter(E=>{var A;return(null===(A=null==E?void 0:E.products)||void 0===A?void 0:A.length)>0})};var dE,LE;!function(E){E.VIEW_BUSINESS="VIEW_BUSINESS",E.UPDATE_BUSINESS="UPDATE_BUSINESS",E.VIEW_ORDERS="VIEW_ORDERS",E.UPDATE_ORDER="UPDATE_ORDER",E.CREATE_ORDER="CREATE_ORDER",E.VIEW_QR_MENU="VIEW_QR_MENU",E.VIEW_MENU="VIEW_MENU",E.VIEW_MENU_ITEMS="VIEW_MENU_ITEMS",E.CREATE_MENU_ITEM="CREATE_MENU_ITEM",E.UPDATE_MENU_ITEM="UPDATE_MENU_ITEM",E.DELETE_MENU_ITEM="DELETE_MENU_ITEM",E.VIEW_CATEGORIES="VIEW_CATEGORIES",E.UPDATE_CATEGORY="UPDATE_CATEGORY",E.CREATE_CATEGORY="CREATE_CATEGORY",E.DELETE_CATEGORY="DELETE_CATEGORY",E.VIEW_ADDONS="VIEW_ADDONS",E.UPDATE_ADDON="UPDATE_ADDON",E.CREATE_ADDON="CREATE_ADDON",E.DELETE_ADDON="DELETE_ADDON",E.VIEW_TABLES="VIEW_TABLES",E.UPDATE_TABLE="UPDATE_TABLE",E.UPDATE_TABLE_STATUS="UPDATE_TABLE_STATUS",E.CREATE_TABLE="CREATE_TABLE",E.DELETE_TABLE="DELETE_TABLE",E.VIEW_BRANCHES="VIEW_BRANCHES",E.UPDATE_BRANCH="UPDATE_BRANCH",E.CREATE_BRANCH="CREATE_BRANCH",E.DELETE_BRANCH="DELETE_BRANCH",E.VIEW_EMPLOYEES="VIEW_EMPLOYEES",E.UPDATE_EMPLOYEE="UPDATE_EMPLOYEE",E.CREATE_EMPLOYEE="CREATE_EMPLOYEE",E.DELETE_EMPLOYEE="DELETE_EMPLOYEE",E.VIEW_ANALYTICS="VIEW_ANALYTICS",E.VIEW_SALES_REPORTS="VIEW_SALES_REPORTS",E.VIEW_SUBSCRIPTION="VIEW_SUBSCRIPTION",E.UPDATE_SUBSCRIPTION="UPDATE_SUBSCRIPTION",E.VIEW_QR_CODES="VIEW_QR_CODES",E.CREATE_QR_CODE="CREATE_QR_CODE",E.DELETE_QR_CODE="DELETE_QR_CODE",E.ALL="ALL",E.VIEW_INVENTORY="VIEW_INVENTORY",E.VIEW_PURCHASES="VIEW_PURCHASES",E.VIEW_PURCHASE_DETAIL="VIEW_PURCHASE_DETAIL",E.CREATE_PURCHASE="CREATE_PURCHASE",E.UPDATE_PURCHASE="UPDATE_PURCHASE",E.DELETE_PURCHASE="DELETE_PURCHASE",E.VIEW_INVENTORY_PRODUCTS="VIEW_INVENTORY_PRODUCTS",E.CREATE_INVENTORY_PRODUCT="CREATE_INVENTORY_PRODUCT",E.UPDATE_INVENTORY_PRODUCT="UPDATE_INVENTORY_PRODUCT",E.DELETE_INVENTORY_PRODUCT="DELETE_INVENTORY_PRODUCT",E.VIEW_BUSINESS_BALANCE="VIEW_BUSINESS_BALANCE",E.VIEW_BRANCH_BALANCE="VIEW_BRANCH_BALANCE",E.UPDATE_PRODUCT_INGREDIENTS="UPDATE_PRODUCT_INGREDIENTS",E.DELETE_PRODUCT_INGREDIENTS="DELETE_PRODUCT_INGREDIENTS",E.AI_ASSISTANT="AI_ASSISTANT"}(dE||(dE={})),function(E){E.OWNER="OWNER",E.BRANCH_MANAGER="BRANCH_MANAGER",E.GENERAL_MANAGER="GENERAL_MANAGER",E.CHEF="CHEF",E.SOUS_CHEF="SOUS_CHEF",E.PASTRY_CHEF="PASTRY_CHEF",E.LINE_COOK="LINE_COOK",E.PREP_COOK="PREP_COOK",E.KITCHEN_ASSISTANT="KITCHEN_ASSISTANT",E.DISHWASHER="DISHWASHER",E.HEAD_WAITER="HEAD_WAITER",E.WAITER="WAITER",E.RUNNER="RUNNER",E.BARISTA="BARISTA",E.BARTENDER="BARTENDER",E.SOMMELIER="SOMMELIER",E.ACCOUNTANT="ACCOUNTANT",E.ROOM_SERVICE_STAFF="ROOM_SERVICE_STAFF",E.DELIVERY_DRIVER="DELIVERY_DRIVER",E.INVENTORY_MANAGER="INVENTORY_MANAGER",E.PURCHASING_MANAGER="PURCHASING_MANAGER",E.WAREHOUSE_STAFF="WAREHOUSE_STAFF"}(LE||(LE={}));const VE=E=>{switch(E){case LE.OWNER:return[dE.ALL];case LE.GENERAL_MANAGER:return[dE.VIEW_BUSINESS,dE.UPDATE_BUSINESS,dE.VIEW_ORDERS,dE.UPDATE_ORDER,dE.CREATE_ORDER,dE.VIEW_QR_MENU,dE.VIEW_QR_CODES,dE.VIEW_MENU,dE.VIEW_MENU_ITEMS,dE.UPDATE_MENU_ITEM,dE.CREATE_MENU_ITEM,dE.DELETE_MENU_ITEM,dE.VIEW_CATEGORIES,dE.UPDATE_CATEGORY,dE.CREATE_CATEGORY,dE.DELETE_CATEGORY,dE.VIEW_ADDONS,dE.UPDATE_ADDON,dE.CREATE_ADDON,dE.DELETE_ADDON,dE.VIEW_TABLES,dE.UPDATE_TABLE,dE.CREATE_TABLE,dE.DELETE_TABLE,dE.VIEW_BRANCHES,dE.UPDATE_BRANCH,dE.CREATE_BRANCH,dE.DELETE_BRANCH,dE.VIEW_EMPLOYEES,dE.UPDATE_EMPLOYEE,dE.CREATE_EMPLOYEE,dE.DELETE_EMPLOYEE,dE.VIEW_ANALYTICS,dE.VIEW_SALES_REPORTS,dE.VIEW_SUBSCRIPTION,dE.CREATE_QR_CODE,dE.DELETE_QR_CODE,dE.AI_ASSISTANT];case LE.BRANCH_MANAGER:return[dE.VIEW_BUSINESS,dE.VIEW_ORDERS,dE.UPDATE_ORDER,dE.CREATE_ORDER,dE.VIEW_QR_MENU,dE.VIEW_QR_CODES,dE.VIEW_MENU,dE.VIEW_MENU_ITEMS,dE.UPDATE_MENU_ITEM,dE.CREATE_MENU_ITEM,dE.DELETE_MENU_ITEM,dE.VIEW_CATEGORIES,dE.UPDATE_CATEGORY,dE.CREATE_CATEGORY,dE.DELETE_CATEGORY,dE.VIEW_ADDONS,dE.UPDATE_ADDON,dE.CREATE_ADDON,dE.DELETE_ADDON,dE.VIEW_TABLES,dE.UPDATE_TABLE,dE.CREATE_TABLE,dE.DELETE_TABLE,dE.VIEW_EMPLOYEES,dE.UPDATE_EMPLOYEE,dE.VIEW_ANALYTICS,dE.VIEW_SALES_REPORTS,dE.CREATE_QR_CODE,dE.DELETE_QR_CODE,dE.AI_ASSISTANT];case LE.CHEF:return[dE.VIEW_MENU,dE.VIEW_MENU_ITEMS,dE.UPDATE_MENU_ITEM,dE.VIEW_CATEGORIES,dE.UPDATE_CATEGORY,dE.VIEW_ADDONS,dE.UPDATE_ADDON,dE.VIEW_ORDERS,dE.UPDATE_ORDER];case LE.SOUS_CHEF:return[dE.VIEW_MENU,dE.VIEW_MENU_ITEMS,dE.VIEW_CATEGORIES,dE.VIEW_ADDONS,dE.VIEW_ORDERS,dE.UPDATE_ORDER];case LE.PASTRY_CHEF:return[dE.VIEW_MENU,dE.VIEW_MENU_ITEMS,dE.UPDATE_MENU_ITEM,dE.VIEW_ORDERS,dE.UPDATE_ORDER];case LE.LINE_COOK:case LE.PREP_COOK:case LE.KITCHEN_ASSISTANT:return[dE.VIEW_MENU,dE.VIEW_MENU_ITEMS,dE.VIEW_ORDERS,dE.UPDATE_ORDER];case LE.HEAD_WAITER:return[dE.VIEW_ORDERS,dE.CREATE_ORDER,dE.UPDATE_ORDER,dE.VIEW_TABLES,dE.UPDATE_TABLE_STATUS,dE.VIEW_MENU,dE.VIEW_MENU_ITEMS,dE.VIEW_CATEGORIES,dE.VIEW_ADDONS,dE.VIEW_QR_MENU,dE.VIEW_QR_CODES];case LE.WAITER:return[dE.VIEW_ORDERS,dE.CREATE_ORDER,dE.UPDATE_ORDER,dE.VIEW_TABLES,dE.UPDATE_TABLE_STATUS,dE.VIEW_MENU,dE.VIEW_MENU_ITEMS,dE.VIEW_CATEGORIES,dE.VIEW_ADDONS];case LE.RUNNER:return[dE.VIEW_ORDERS,dE.UPDATE_ORDER];case LE.BARISTA:case LE.BARTENDER:case LE.SOMMELIER:case LE.ROOM_SERVICE_STAFF:return[dE.VIEW_MENU,dE.VIEW_MENU_ITEMS,dE.VIEW_ORDERS,dE.CREATE_ORDER,dE.UPDATE_ORDER];case LE.ACCOUNTANT:return[dE.VIEW_ANALYTICS,dE.VIEW_SALES_REPORTS,dE.VIEW_SUBSCRIPTION];case LE.DELIVERY_DRIVER:return[dE.VIEW_ORDERS,dE.UPDATE_ORDER];case LE.INVENTORY_MANAGER:return[dE.VIEW_CATEGORIES,dE.UPDATE_CATEGORY,dE.CREATE_CATEGORY,dE.DELETE_CATEGORY,dE.VIEW_ADDONS,dE.UPDATE_ADDON,dE.CREATE_ADDON,dE.DELETE_ADDON,dE.VIEW_MENU,dE.VIEW_MENU_ITEMS,dE.UPDATE_MENU_ITEM,dE.CREATE_MENU_ITEM,dE.DELETE_MENU_ITEM,dE.VIEW_PURCHASES,dE.CREATE_PURCHASE,dE.UPDATE_PURCHASE,dE.DELETE_PURCHASE,dE.VIEW_INVENTORY,dE.VIEW_INVENTORY_PRODUCTS,dE.CREATE_INVENTORY_PRODUCT,dE.UPDATE_INVENTORY_PRODUCT,dE.DELETE_INVENTORY_PRODUCT,dE.VIEW_PURCHASE_DETAIL,dE.VIEW_BRANCH_BALANCE,dE.UPDATE_PRODUCT_INGREDIENTS,dE.DELETE_PRODUCT_INGREDIENTS];case LE.PURCHASING_MANAGER:return[dE.VIEW_MENU,dE.VIEW_MENU_ITEMS,dE.VIEW_CATEGORIES,dE.CREATE_CATEGORY,dE.UPDATE_CATEGORY,dE.VIEW_ADDONS,dE.CREATE_ADDON,dE.UPDATE_ADDON];case LE.WAREHOUSE_STAFF:return[dE.VIEW_CATEGORIES,dE.VIEW_ADDONS,dE.VIEW_MENU,dE.VIEW_MENU_ITEMS];default:return[]}},WE=(E,_)=>!!A(E)||!A(_)&&(!!_.includes(dE.ALL)||E.some(E=>_.includes(E)));export{CE as adjustLightness,x as buildSelectedAddonsPayload,F as calculatSingleAddonTotalPrice,y as calculateTotalAddonPrice,C as calculateTotalPrice,_E as formatAddressLine,AE as formatCityLine,Q as generateOrderItemsId,N as getAddonOptionRawPrice,i as getAddonOptionTranslation,O as getAddonTitle,a as getAddonTranslation,aE as getBaseUrl,UE as getCategoryNameById,cE as getCategoryTranslation,lE as getCoverPhotoSource,k as getDefaultOrderType,WE as getHasUserPermission,oE as getImageSource,rE as getIsFeatureActive,NE as getLogoImageSource,o as getOptionPrice,l as getOptionTitles,q as getOrderErrorMessages,j as getOrderItemPrice,$ as getOrderPrice,VE as getPermissionsByRole,Y as getPriceSuffix,H as getProductAddon,B as getProductOrderPrice,v as getProductOrderRawPrice,P as getProductPrice,U as getProductRawPrice,m as getProductSellUnitShortCuts,c as getProductTranslation,d as getProductVariant,W as getProductVariantPrice,V as getProductVariantRawPrice,M as getProductVariantTranslation,iE as getRegisterUrl,w as getSelectedAddonsFromOrderItems,L as getSelectedOptionsTotalPrice,K as getStatusIcon,uE as getVideoSource,PE as prepareCategoryAndProductMap,X as preparePhoneNumber,SE as rgbDataURL,EE as validateAddressForm,Z as validateForm,DE as validatePhoneNumber};
|
|
1
|
+
import{priceFormatter as E,isEmpty as A,sortNumbers as _,checkIsValidEmail as t,getQueryParam as T}from"@sorocraft/js-utils";import{HourglassHalf as R,FileCheck as r,Chef as e,Delivery as I,BagCheck as n,Check as D}from"@sorocraft/ui/icons";const N=(E,A)=>{var _;return(null===(_=null==E?void 0:E.title)||void 0===_?void 0:_[A])||""},i=(E,A)=>{var _;return(null===(_=null==E?void 0:E.title)||void 0===_?void 0:_[A])||""},o=({option:A,currency:_,language:t})=>{const{price:T}=A||{};return{totalPrice:T,formattedTotalPrice:E(T,_||"USD",t||"en")}},a=(E,A)=>{var _;return(null===(_=((null==E?void 0:E.options)||[]).find(({id:E})=>E===A))||void 0===_?void 0:_.price)||0},O=(E,A,_)=>{var t;if(Array.isArray(A))return(E||[]).filter(({id:E})=>A.includes(E)).map(({title:E})=>(null==E?void 0:E[_])||"").filter(Boolean).join(", ");{const T=(E||[]).find(({id:E})=>E===A);return(null===(t=null==T?void 0:T.title)||void 0===t?void 0:t[_])||""}},S=(E,A)=>{var _;return(null===(_=null==E?void 0:E.title)||void 0===_?void 0:_[A])||""};var s,l,C;!function(E){E.LIST="list",E.GRID="grid"}(s||(s={})),function(E){E.PIECE="PIECE",E.WEIGHT="WEIGHT",E.VOLUME="VOLUME"}(l||(l={})),function(E){E.SINGLE="SINGLE",E.MULTIPLE="MULTIPLE"}(C||(C={}));const c=(E=0,A=1,_=0)=>E*A*(1+_/100),u=(E,A)=>{var _;return(null===(_=null==E?void 0:E.translations)||void 0===_?void 0:_[A])||{}},U=(E,A=1)=>{const{price:_=0,vat:t=0}=E||{};return c(_,A,t)},P=(A,_,t,T=1)=>{const R=U(A,T);return{totalPrice:R,formattedTotalPrice:E(R,_,t)}},L=(E,A)=>{var _,t;return(null===(t=null===(_=null==E?void 0:E.variants)||void 0===_?void 0:_.find)||void 0===t?void 0:t.call(_,E=>E.id===A))||{}},d=(E,A={},_)=>((null==E?void 0:E.addons)||[]).filter(E=>Object.prototype.hasOwnProperty.call(A,E.id)).reduce((E,_)=>{const{id:t,selectType:T}=_;if(T===C.SINGLE){const T=A[t];return E+a(_,T)}return E+(A[t]||[]).reduce((E,A)=>E+a(_,A),0)},0)*_,V=(E,A,_)=>{const t=L(A,E),{vat:T}=A||{},{price:R}=t||{};return c(R,_,T)},W=({variantId:A,currency:_="USD",language:t="en",product:T,quantity:R=1})=>{const r=V(A,T,R);return{totalPrice:r,formattedTotalPrice:E(r,_,t)}},M=(E,A)=>{var _;return(null===(_=null==E?void 0:E.title)||void 0===_?void 0:_[A])||""},B=({product:E,variantId:_,quantity:t=1,selectedAddons:T,noVat:R=!1})=>{if(A(E))return{price:0,optionsPrice:0,total:0};const r=Object.assign(Object.assign({},E),{vat:R?0:E.vat}),e=d(r,T,t),I=_?V(_,r,t):U(r,t);return{price:I,optionsPrice:e,total:I+e}},v=({product:A,variantId:_,quantity:t=1,currency:T,language:R,selectedAddons:r,noVat:e=!1})=>{const{total:I}=B({product:A,variantId:_,quantity:t,selectedAddons:r,noVat:e});return{totalPrice:I,formattedTotalPrice:E(I,T,R)}},H=(E,A)=>((null==E?void 0:E.addons)||[]).find(({id:E})=>E===A)||{},Y=E=>{switch(E){case l.WEIGHT:return" / kg";case l.VOLUME:return" / l";default:return""}},m=E=>{switch(E){case l.WEIGHT:return{"50gr":.05,"100gr":.1,"150gr":.15,"200gr":.2,"250gr":.25,"300gr":.3,"350gr":.35,"400gr":.4,"450gr":.45,"500gr":.5,"600gr":.6,"700gr":.7,"750gr":.75,"800gr":.8,"850gr":.85,"900gr":.9,"950gr":.95,"1kg":1,"2kg":2,"5kg":5,"10kg":10,"20kg":20};case l.VOLUME:return{"50ml":.05,"100ml":.1,"150ml":.15,"200ml":.2,"250ml":.25,"300ml":.3,"350ml":.35,"400ml":.4,"450ml":.45,"500ml":.5,"600ml":.6,"700ml":.7,"750ml":.75,"800ml":.8,"850ml":.85,"900ml":.9,"950ml":.95,"1l":1,"2l":2,"5l":5,"10l":10,"20l":20};default:return{}}};var G,p,f,h,g,b;!function(E){E.DINE_IN="DINE_IN",E.PICK_UP="PICK_UP",E.DELIVERY="DELIVERY"}(G||(G={})),function(E){E.DRAFT="DRAFT",E.PENDING="PENDING",E.CONFIRMED="CONFIRMED",E.PREPARING="PREPARING",E.READY="READY",E.OUT_FOR_DELIVERY="OUT_FOR_DELIVERY",E.DELIVERED="DELIVERED",E.COMPLETED="COMPLETED",E.CANCELLED="CANCELLED",E.FAILED="FAILED"}(p||(p={})),function(E){E.PENDING="PENDING",E.PREPARING="PREPARING",E.READY="READY",E.SERVED="SERVED"}(f||(f={})),function(E){E.CASH="CASH",E.CARD="CARD",E.WALLET="WALLET",E.TERMINAL="TERMINAL"}(h||(h={})),function(E){E.CART="CART",E.DETAILS="DETAILS",E.COMPLETED="COMPLETED"}(g||(g={})),h.CASH,g.CART,g.DETAILS,g.COMPLETED,function(E){E.FIELD_REQUIRED_ERROR="This field is required",E.TABLE_NOT_SELECTED="Please select a table",E.ADDRESS_IS_EMPTY="Please enter an address",E.EMPTY_ITEMS="Please choose product",E.BRANCH_NOT_SELECTED="Please select a branch"}(b||(b={}));const F=E=>E.options.reduce((E,A)=>E+A.price,0);function y(E=[],A=1){return A*E.reduce((E,A)=>E+F(A),0)}const $=(A,_,t)=>{const T=(E,A,_)=>A*E+y(_,A);let R=0,r=0;for(const E of A.items){const _=T(E.price,E.quantity,E.addons);R+=_,void 0===A.vat&&E.vat&&(r+=_*E.vat/100)}void 0!==A.vat&&(r=R*A.vat/100);const e=R+r;return{totalWithoutTax:R,totalWithoutTaxFormatted:E(R,_,t),totalTax:r,totalTaxFormatted:E(r,_,t),totalWithTax:e,totalWithTaxFormatted:E(e,_,t)}},Q=(E,A,t)=>{if(!E)throw new Error("Product ID is required");let T=`${E}`;A&&(T+=`-${A}`);const R=Object.entries(t||{}).map(([E,A])=>{if(!E||!A)return null;const t=Array.isArray(A)?_(A).filter(Boolean).join("-"):`${A}`;return t?`${E}-${t}`:null}).filter(Boolean).join("-");return R&&(T+=`-${R}`),T},j=E=>{var A;const{price:_,variant:t,addons:T,quantity:R,vat:r}=E||{},e=null!==(A=null==t?void 0:t.price)&&void 0!==A?A:_,I=e+y(T,1),n=e*(r/100),D=I+n;return{totalGross:D*R,totalNet:I*R,totalTax:n*R,itemGrossPrice:D,itemNetPrice:I,itemTax:n}},w=E=>{const A={};for(const{addonId:_,options:t=[]}of E.addons||[]){const E=t.map(({optionId:E})=>E);A[_]=1===E.length?E[0]:E}return A},K=E=>{switch(E){case p.COMPLETED:return D;case p.DELIVERED:return n;case p.OUT_FOR_DELIVERY:return I;case p.PREPARING:return e;case p.CONFIRMED:return r;case p.PENDING:default:return R}},x=(E=[],_={})=>Object.entries(_).map(([_,t])=>{const T=Number(_),R=Array.isArray(t)?t:[t],r=E.find(E=>E.id===T);if(A(r))return{addonId:T,options:[]};const e=(r.options||[]).filter(E=>R.includes(E.id)).map(E=>({optionId:E.id,price:E.price}));return{addonId:T,options:e}}),k=(E,A,_)=>{if(!E)return null;const{deliveryOrderEnabled:t,dineInOrderEnabled:T,pickupOrderEnabled:R}=E;return t&&_?G.DELIVERY:T&&A?G.DINE_IN:R&&A?G.PICK_UP:null},q=E=>{switch(E){case"customer":return b.ADDRESS_IS_EMPTY;case"tableId":return b.TABLE_NOT_SELECTED;case"items":return b.EMPTY_ITEMS;case"branchId":return b.BRANCH_NOT_SELECTED;default:return b.FIELD_REQUIRED_ERROR}};var z,J;!function(E){E.PHONE="PHONE",E.OTP="OTP",E.EMAIL="EMAIL"}(z||(z={})),function(E){E.HOME="HOME",E.WORK="WORK",E.TRAVEL="TRAVEL"}(J||(J={}));const X=E=>`${E.countryCode}${E.phoneNumber}`.replaceAll("+",""),Z=(E,A)=>{const _={},{email:T,otp:R}=E||{};switch(A){case z.OTP:T&&t(T)||(_.email="Invalid Email Address"),R&&6===R.length||(_.otp="Invalid OTP");break;case z.EMAIL:T&&t(T)||(_.email="Invalid Email Address")}return _},EE=E=>{const A={},{countryCode:_,cityName:t,street:T,houseNumber:R}=E||{};return _||(A.countryCode="COUNTRY_REQUIRED"),t||(A.cityName="CITY_REQUIRED"),T||(A.street="STREET_REQUIRED"),R||(A.houseNumber="STREET_NUMBER_REQUIRED"),A},AE=E=>(E||[]).filter(Boolean).join(", "),_E=(E,A,_)=>[E,[A,_].filter(Boolean).join("/")].filter(Boolean).join(" ");var tE,TE;!function(E){E.UPLOAD_VIDEO="UPLOAD_VIDEO"}(tE||(tE={})),function(E){E.ALPHA="ALPHA",E.BETA="BETA",E.ALL="ALL"}(TE||(TE={}));const RE={[TE.ALPHA]:[tE.UPLOAD_VIDEO],[TE.BETA]:[],[TE.ALL]:[]},rE=(E,A)=>{if("1"===T(E))return!0;return(A===TE.ALPHA?[TE.ALPHA,TE.BETA,TE.ALL]:A===TE.BETA?[TE.BETA,TE.ALL]:[TE.ALL]).some(A=>{var _;return null===(_=RE[A])||void 0===_?void 0:_.includes(E)})},eE="tabres.com",IE="https://images.tabres.com",nE={994:E=>{const A=["50","51","10","55","99","70","77","60"];return new RegExp(`^(${A.join("|")})\\d{7}$`).test(E)?{isValid:!0}:{isValid:!1,error:`Azerbaijani numbers must be 9 digits and start with ${A.join(", ")}`}},31:E=>/^\d{9}$/.test(E)?{isValid:!0}:{isValid:!1,error:"Dutch numbers must be exactly 9 digits"}};function DE(E){if(!E)return{isValid:!1,error:"FIELD_REQUIRED"};const A=E.replace(/\D/g,""),_=A.startsWith("994")?"994":A.startsWith("31")?"31":null;if(!_)return{isValid:!1,error:"Unsupported country code"};const t=A.slice(_.length);return(0,nE[_])(t)}const NE=(E,A)=>{const _=A||"en";return"localhost:3000"===E?{url:`http://localhost:3000/${_}`,domain:eE}:{url:`https://${eE}/${_}`,domain:eE}},iE=(E,A)=>`https://app.tabres.com/auth/register?lang=${E}&utm_source=${A}`,oE=E=>E?E.includes("base64")||E.startsWith("https://")?E:`${IE}/${E}`:"",aE=E=>E?E.includes("base64")||E.startsWith("https://")?E:`${IE}/${E}`:"https://images.tabres.com/no-photo-128.webp",OE=E=>E?E.includes("base64")||E.startsWith("https://")?E:`${IE}/${E}`:"https://images.tabres.com/tabres-doodle.webp",SE="ABCDEFGHIJKLMNOPQRSTUVWXYZabcdefghijklmnopqrstuvwxyz0123456789+/=",sE=(E,A,_)=>SE.charAt(E>>2)+SE.charAt((3&E)<<4|A>>4)+SE.charAt((15&A)<<2|_>>6)+SE.charAt(63&_),lE=(E,A,_)=>`data:image/gif;base64,R0lGODlhAQABAPAA${sE(0,E,A)+sE(_,255,255)}/yH5BAAAAAAALAAAAAABAAEAAAICRAEAOw==`,CE=E=>E?E.includes("base64")||E.startsWith("https://")?E:`${IE}/${E}`:"",cE=(E,A)=>{const _=parseInt(E.replace("#",""),16),t=(_>>16&255)/255,T=(_>>8&255)/255,R=(255&_)/255,r=Math.max(t,T,R),e=Math.min(t,T,R),I=(r+e)/2;let n=0,D=0;if(r!==e){const E=r-e;switch(D=I>.5?E/(2-r-e):E/(r+e),r){case t:n=(T-R)/E+(T<R?6:0);break;case T:n=(R-t)/E+2;break;case R:n=(t-T)/E+4}n/=6}const N=Math.max(0,Math.min(1,I+A/100)),i=(E,A,_)=>(_<0&&(_+=1),_>1&&(_-=1),_<1/6?E+6*(A-E)*_:_<.5?A:_<2/3?E+(A-E)*(2/3-_)*6:E);let o=N,a=N,O=N;if(0!==D){const E=N<.5?N*(1+D):N+D-N*D,A=2*N-E;o=i(A,E,n+1/3),a=i(A,E,n),O=i(A,E,n-1/3)}const S=E=>Math.round(255*E).toString(16).padStart(2,"0");return`#${S(o)}${S(a)}${S(O)}`},uE=(E,A)=>{var _,t;return(null===(t=null===(_=null==E?void 0:E.translations)||void 0===_?void 0:_.find)||void 0===t?void 0:t.call(_,E=>E.language===A))||{}},UE=(E,_,t)=>{var T;const R=null===(T=null==_?void 0:_.find)||void 0===T?void 0:T.call(_,({id:A})=>A===E);if(A(R))return"";const{name:r}=uE(R,t);return r||""},PE=(E,A)=>{const _=A.reduce((E,A)=>{if(!A.visible)return E;const _=Number(A.categoryId);return E[_]||(E[_]=[]),E[_].push(A),E},{});return E.map(E=>Object.assign(Object.assign({},E),{products:_[Number(E.id)]||[]})).filter(E=>{var A;return(null===(A=null==E?void 0:E.products)||void 0===A?void 0:A.length)>0})};var LE,dE;!function(E){E.VIEW_BUSINESS="VIEW_BUSINESS",E.UPDATE_BUSINESS="UPDATE_BUSINESS",E.VIEW_ORDERS="VIEW_ORDERS",E.UPDATE_ORDER="UPDATE_ORDER",E.CREATE_ORDER="CREATE_ORDER",E.VIEW_QR_MENU="VIEW_QR_MENU",E.VIEW_MENU="VIEW_MENU",E.VIEW_MENU_ITEMS="VIEW_MENU_ITEMS",E.CREATE_MENU_ITEM="CREATE_MENU_ITEM",E.UPDATE_MENU_ITEM="UPDATE_MENU_ITEM",E.DELETE_MENU_ITEM="DELETE_MENU_ITEM",E.VIEW_CATEGORIES="VIEW_CATEGORIES",E.UPDATE_CATEGORY="UPDATE_CATEGORY",E.CREATE_CATEGORY="CREATE_CATEGORY",E.DELETE_CATEGORY="DELETE_CATEGORY",E.VIEW_ADDONS="VIEW_ADDONS",E.UPDATE_ADDON="UPDATE_ADDON",E.CREATE_ADDON="CREATE_ADDON",E.DELETE_ADDON="DELETE_ADDON",E.VIEW_TABLES="VIEW_TABLES",E.UPDATE_TABLE="UPDATE_TABLE",E.UPDATE_TABLE_STATUS="UPDATE_TABLE_STATUS",E.CREATE_TABLE="CREATE_TABLE",E.DELETE_TABLE="DELETE_TABLE",E.VIEW_BRANCHES="VIEW_BRANCHES",E.UPDATE_BRANCH="UPDATE_BRANCH",E.CREATE_BRANCH="CREATE_BRANCH",E.DELETE_BRANCH="DELETE_BRANCH",E.VIEW_EMPLOYEES="VIEW_EMPLOYEES",E.UPDATE_EMPLOYEE="UPDATE_EMPLOYEE",E.CREATE_EMPLOYEE="CREATE_EMPLOYEE",E.DELETE_EMPLOYEE="DELETE_EMPLOYEE",E.VIEW_ANALYTICS="VIEW_ANALYTICS",E.VIEW_SALES_REPORTS="VIEW_SALES_REPORTS",E.VIEW_SUBSCRIPTION="VIEW_SUBSCRIPTION",E.UPDATE_SUBSCRIPTION="UPDATE_SUBSCRIPTION",E.VIEW_QR_CODES="VIEW_QR_CODES",E.CREATE_QR_CODE="CREATE_QR_CODE",E.DELETE_QR_CODE="DELETE_QR_CODE",E.ALL="ALL",E.VIEW_INVENTORY="VIEW_INVENTORY",E.VIEW_PURCHASES="VIEW_PURCHASES",E.VIEW_PURCHASE_DETAIL="VIEW_PURCHASE_DETAIL",E.CREATE_PURCHASE="CREATE_PURCHASE",E.UPDATE_PURCHASE="UPDATE_PURCHASE",E.DELETE_PURCHASE="DELETE_PURCHASE",E.VIEW_INVENTORY_PRODUCTS="VIEW_INVENTORY_PRODUCTS",E.CREATE_INVENTORY_PRODUCT="CREATE_INVENTORY_PRODUCT",E.UPDATE_INVENTORY_PRODUCT="UPDATE_INVENTORY_PRODUCT",E.DELETE_INVENTORY_PRODUCT="DELETE_INVENTORY_PRODUCT",E.VIEW_BUSINESS_BALANCE="VIEW_BUSINESS_BALANCE",E.VIEW_BRANCH_BALANCE="VIEW_BRANCH_BALANCE",E.UPDATE_PRODUCT_INGREDIENTS="UPDATE_PRODUCT_INGREDIENTS",E.DELETE_PRODUCT_INGREDIENTS="DELETE_PRODUCT_INGREDIENTS",E.AI_ASSISTANT="AI_ASSISTANT"}(LE||(LE={})),function(E){E.OWNER="OWNER",E.BRANCH_MANAGER="BRANCH_MANAGER",E.GENERAL_MANAGER="GENERAL_MANAGER",E.CHEF="CHEF",E.SOUS_CHEF="SOUS_CHEF",E.PASTRY_CHEF="PASTRY_CHEF",E.LINE_COOK="LINE_COOK",E.PREP_COOK="PREP_COOK",E.KITCHEN_ASSISTANT="KITCHEN_ASSISTANT",E.DISHWASHER="DISHWASHER",E.HEAD_WAITER="HEAD_WAITER",E.WAITER="WAITER",E.RUNNER="RUNNER",E.BARISTA="BARISTA",E.BARTENDER="BARTENDER",E.SOMMELIER="SOMMELIER",E.ACCOUNTANT="ACCOUNTANT",E.ROOM_SERVICE_STAFF="ROOM_SERVICE_STAFF",E.DELIVERY_DRIVER="DELIVERY_DRIVER",E.INVENTORY_MANAGER="INVENTORY_MANAGER",E.PURCHASING_MANAGER="PURCHASING_MANAGER",E.WAREHOUSE_STAFF="WAREHOUSE_STAFF"}(dE||(dE={}));const VE=E=>{switch(E){case dE.OWNER:return[LE.ALL];case dE.GENERAL_MANAGER:return[LE.VIEW_BUSINESS,LE.UPDATE_BUSINESS,LE.VIEW_ORDERS,LE.UPDATE_ORDER,LE.CREATE_ORDER,LE.VIEW_QR_MENU,LE.VIEW_QR_CODES,LE.VIEW_MENU,LE.VIEW_MENU_ITEMS,LE.UPDATE_MENU_ITEM,LE.CREATE_MENU_ITEM,LE.DELETE_MENU_ITEM,LE.VIEW_CATEGORIES,LE.UPDATE_CATEGORY,LE.CREATE_CATEGORY,LE.DELETE_CATEGORY,LE.VIEW_ADDONS,LE.UPDATE_ADDON,LE.CREATE_ADDON,LE.DELETE_ADDON,LE.VIEW_TABLES,LE.UPDATE_TABLE,LE.CREATE_TABLE,LE.DELETE_TABLE,LE.VIEW_BRANCHES,LE.UPDATE_BRANCH,LE.CREATE_BRANCH,LE.DELETE_BRANCH,LE.VIEW_EMPLOYEES,LE.UPDATE_EMPLOYEE,LE.CREATE_EMPLOYEE,LE.DELETE_EMPLOYEE,LE.VIEW_ANALYTICS,LE.VIEW_SALES_REPORTS,LE.VIEW_SUBSCRIPTION,LE.CREATE_QR_CODE,LE.DELETE_QR_CODE,LE.AI_ASSISTANT];case dE.BRANCH_MANAGER:return[LE.VIEW_BUSINESS,LE.VIEW_ORDERS,LE.UPDATE_ORDER,LE.CREATE_ORDER,LE.VIEW_QR_MENU,LE.VIEW_QR_CODES,LE.VIEW_MENU,LE.VIEW_MENU_ITEMS,LE.UPDATE_MENU_ITEM,LE.CREATE_MENU_ITEM,LE.DELETE_MENU_ITEM,LE.VIEW_CATEGORIES,LE.UPDATE_CATEGORY,LE.CREATE_CATEGORY,LE.DELETE_CATEGORY,LE.VIEW_ADDONS,LE.UPDATE_ADDON,LE.CREATE_ADDON,LE.DELETE_ADDON,LE.VIEW_TABLES,LE.UPDATE_TABLE,LE.CREATE_TABLE,LE.DELETE_TABLE,LE.VIEW_EMPLOYEES,LE.UPDATE_EMPLOYEE,LE.VIEW_ANALYTICS,LE.VIEW_SALES_REPORTS,LE.CREATE_QR_CODE,LE.DELETE_QR_CODE,LE.AI_ASSISTANT];case dE.CHEF:return[LE.VIEW_MENU,LE.VIEW_MENU_ITEMS,LE.UPDATE_MENU_ITEM,LE.VIEW_CATEGORIES,LE.UPDATE_CATEGORY,LE.VIEW_ADDONS,LE.UPDATE_ADDON,LE.VIEW_ORDERS,LE.UPDATE_ORDER];case dE.SOUS_CHEF:return[LE.VIEW_MENU,LE.VIEW_MENU_ITEMS,LE.VIEW_CATEGORIES,LE.VIEW_ADDONS,LE.VIEW_ORDERS,LE.UPDATE_ORDER];case dE.PASTRY_CHEF:return[LE.VIEW_MENU,LE.VIEW_MENU_ITEMS,LE.UPDATE_MENU_ITEM,LE.VIEW_ORDERS,LE.UPDATE_ORDER];case dE.LINE_COOK:case dE.PREP_COOK:case dE.KITCHEN_ASSISTANT:return[LE.VIEW_MENU,LE.VIEW_MENU_ITEMS,LE.VIEW_ORDERS,LE.UPDATE_ORDER];case dE.HEAD_WAITER:return[LE.VIEW_ORDERS,LE.CREATE_ORDER,LE.UPDATE_ORDER,LE.VIEW_TABLES,LE.UPDATE_TABLE_STATUS,LE.VIEW_MENU,LE.VIEW_MENU_ITEMS,LE.VIEW_CATEGORIES,LE.VIEW_ADDONS,LE.VIEW_QR_MENU,LE.VIEW_QR_CODES];case dE.WAITER:return[LE.VIEW_ORDERS,LE.CREATE_ORDER,LE.UPDATE_ORDER,LE.VIEW_TABLES,LE.UPDATE_TABLE_STATUS,LE.VIEW_MENU,LE.VIEW_MENU_ITEMS,LE.VIEW_CATEGORIES,LE.VIEW_ADDONS];case dE.RUNNER:return[LE.VIEW_ORDERS,LE.UPDATE_ORDER];case dE.BARISTA:case dE.BARTENDER:case dE.SOMMELIER:case dE.ROOM_SERVICE_STAFF:return[LE.VIEW_MENU,LE.VIEW_MENU_ITEMS,LE.VIEW_ORDERS,LE.CREATE_ORDER,LE.UPDATE_ORDER];case dE.ACCOUNTANT:return[LE.VIEW_ANALYTICS,LE.VIEW_SALES_REPORTS,LE.VIEW_SUBSCRIPTION];case dE.DELIVERY_DRIVER:return[LE.VIEW_ORDERS,LE.UPDATE_ORDER];case dE.INVENTORY_MANAGER:return[LE.VIEW_CATEGORIES,LE.UPDATE_CATEGORY,LE.CREATE_CATEGORY,LE.DELETE_CATEGORY,LE.VIEW_ADDONS,LE.UPDATE_ADDON,LE.CREATE_ADDON,LE.DELETE_ADDON,LE.VIEW_MENU,LE.VIEW_MENU_ITEMS,LE.UPDATE_MENU_ITEM,LE.CREATE_MENU_ITEM,LE.DELETE_MENU_ITEM,LE.VIEW_PURCHASES,LE.CREATE_PURCHASE,LE.UPDATE_PURCHASE,LE.DELETE_PURCHASE,LE.VIEW_INVENTORY,LE.VIEW_INVENTORY_PRODUCTS,LE.CREATE_INVENTORY_PRODUCT,LE.UPDATE_INVENTORY_PRODUCT,LE.DELETE_INVENTORY_PRODUCT,LE.VIEW_PURCHASE_DETAIL,LE.VIEW_BRANCH_BALANCE,LE.UPDATE_PRODUCT_INGREDIENTS,LE.DELETE_PRODUCT_INGREDIENTS];case dE.PURCHASING_MANAGER:return[LE.VIEW_MENU,LE.VIEW_MENU_ITEMS,LE.VIEW_CATEGORIES,LE.CREATE_CATEGORY,LE.UPDATE_CATEGORY,LE.VIEW_ADDONS,LE.CREATE_ADDON,LE.UPDATE_ADDON];case dE.WAREHOUSE_STAFF:return[LE.VIEW_CATEGORIES,LE.VIEW_ADDONS,LE.VIEW_MENU,LE.VIEW_MENU_ITEMS];default:return[]}},WE=(E,_)=>!!A(E)||!A(_)&&(!!_.includes(LE.ALL)||E.some(E=>_.includes(E)));export{cE as adjustLightness,x as buildSelectedAddonsPayload,F as calculatSingleAddonTotalPrice,y as calculateTotalAddonPrice,c as calculateTotalPrice,_E as formatAddressLine,AE as formatCityLine,Q as generateOrderItemsId,a as getAddonOptionRawPrice,i as getAddonOptionTranslation,S as getAddonTitle,N as getAddonTranslation,NE as getBaseUrl,UE as getCategoryNameById,uE as getCategoryTranslation,OE as getCoverPhotoSource,k as getDefaultOrderType,WE as getHasUserPermission,oE as getImageSource,rE as getIsFeatureActive,aE as getLogoImageSource,o as getOptionPrice,O as getOptionTitles,q as getOrderErrorMessages,j as getOrderItemPrice,$ as getOrderPrice,VE as getPermissionsByRole,Y as getPriceSuffix,H as getProductAddon,v as getProductOrderPrice,B as getProductOrderRawPrice,P as getProductPrice,U as getProductRawPrice,m as getProductSellUnitShortCuts,u as getProductTranslation,L as getProductVariant,W as getProductVariantPrice,V as getProductVariantRawPrice,M as getProductVariantTranslation,iE as getRegisterUrl,w as getSelectedAddonsFromOrderItems,d as getSelectedOptionsTotalPrice,K as getStatusIcon,CE as getVideoSource,PE as prepareCategoryAndProductMap,X as preparePhoneNumber,lE as rgbDataURL,EE as validateAddressForm,Z as validateForm,DE as validatePhoneNumber};
|
|
2
2
|
//# sourceMappingURL=index.esm.js.map
|