@restaround/react 1.1.2 → 1.2.2
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/components/Events/Events.d.ts +1 -2
- package/dist/components/PublicMenu/Branches/Branches.d.ts +1 -1
- package/dist/components/PublicMenu/Customer/CustomerAddress/CustomerAddress.d.ts +2 -0
- package/dist/components/PublicMenu/Customer/CustomerAddress/index.d.ts +1 -0
- package/dist/components/PublicMenu/FloatingOrdersButton/FloatingOrdersButton.d.ts +2 -0
- package/dist/components/PublicMenu/FloatingOrdersButton/index.d.ts +1 -0
- package/dist/components/PublicMenu/Header/Header.d.ts +1 -1
- package/dist/components/PublicMenu/Modals/AddUpdateAddress/AddUpdateAddress.d.ts +3 -0
- package/dist/components/PublicMenu/Modals/AddUpdateAddress/index.d.ts +1 -0
- package/dist/components/PublicMenu/Modals/AddUpdateNote/AddUpdateNote.d.ts +3 -0
- package/dist/components/PublicMenu/Modals/AddUpdateNote/index.d.ts +1 -0
- package/dist/components/PublicMenu/Modals/Auth/Auth.d.ts +3 -0
- package/dist/components/PublicMenu/Modals/Auth/EmailStep.d.ts +8 -0
- package/dist/components/PublicMenu/Modals/Auth/OTPStep.d.ts +8 -0
- package/dist/components/PublicMenu/Modals/Auth/PhoneStep.d.ts +7 -0
- package/dist/components/PublicMenu/Modals/Auth/index.d.ts +1 -0
- package/dist/components/PublicMenu/OrderDrawer/OrderDrawer.d.ts +2 -0
- package/dist/components/PublicMenu/OrderDrawer/OrderDrawerCart.d.ts +2 -0
- package/dist/components/PublicMenu/OrderDrawer/OrderDrawerCompleted.d.ts +2 -0
- package/dist/components/PublicMenu/OrderDrawer/OrderDrawerDetails.d.ts +2 -0
- package/dist/components/PublicMenu/OrderDrawer/OrderDrawerFooter.d.ts +5 -0
- package/dist/components/PublicMenu/OrderDrawer/index.d.ts +1 -0
- package/dist/components/PublicMenu/OrderItemsList/OrderItemsList.d.ts +5 -0
- package/dist/components/PublicMenu/OrderItemsList/OrderNoItems.d.ts +2 -0
- package/dist/components/PublicMenu/OrderItemsList/index.d.ts +1 -0
- package/dist/components/PublicMenu/OrderListItem/OptionsInfo/OptionsInfo.d.ts +9 -0
- package/dist/components/PublicMenu/OrderListItem/OrderListItem.d.ts +7 -0
- package/dist/components/PublicMenu/OrderListItem/index.d.ts +1 -0
- package/dist/components/PublicMenu/OrderStepper/OrderStepper.d.ts +7 -0
- package/dist/components/PublicMenu/OrderStepper/index.d.ts +1 -0
- package/dist/components/PublicMenu/ProductAddons/ProductAddons.d.ts +4 -4
- package/dist/components/PublicMenu/ProductDetails/ProductDetails.d.ts +2 -2
- package/dist/components/PublicMenu/ProductInOrder/ProductInOrder.d.ts +6 -0
- package/dist/components/PublicMenu/ProductInOrder/index.d.ts +1 -0
- package/dist/components/PublicMenu/ProductQuantity/ProductQuantity.d.ts +4 -3
- package/dist/components/PublicMenu/ProductVariants/ProductVariants.d.ts +2 -2
- package/dist/components/PublicMenu/ProductsGridItem/ProductsGridItem.d.ts +1 -1
- package/dist/components/PublicMenu/ProductsListItem/ProductsListItem.d.ts +1 -1
- package/dist/constants/analytics.d.ts +1 -1
- package/dist/constants/env.d.ts +1 -0
- package/dist/hooks/product.d.ts +4 -4
- package/dist/hooks/translation.d.ts +4 -2
- 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.d.ts +3 -3
- package/dist/models/index.esm.js.map +1 -1
- package/dist/models/index.js.map +1 -1
- package/dist/models/menu.d.ts +4 -3
- package/dist/models/models/category.d.ts +10 -0
- package/dist/models/models/index.d.ts +6 -0
- package/dist/models/models/menu.d.ts +30 -0
- package/dist/models/models/pricing.d.ts +17 -0
- package/dist/models/{addon.d.ts → modules/addon/models.d.ts} +0 -3
- package/dist/{utils/models/product.d.ts → models/modules/product/models.d.ts} +5 -4
- package/dist/modules/addon/index.d.ts +2 -0
- package/dist/{utils/models/addon.d.ts → modules/addon/models.d.ts} +0 -3
- package/dist/{utils/utils/addon.d.ts → modules/addon/utils.d.ts} +1 -1
- package/dist/modules/branch/index.d.ts +1 -0
- package/dist/modules/business/index.d.ts +1 -0
- package/dist/modules/common/index.d.ts +1 -0
- package/dist/modules/common/services.d.ts +1 -0
- package/dist/modules/customer/hooks.d.ts +3 -0
- package/dist/modules/customer/index.d.ts +4 -0
- package/dist/modules/customer/models.d.ts +47 -0
- package/dist/modules/customer/services.d.ts +7 -0
- package/dist/modules/customer/utils.d.ts +6 -0
- package/dist/modules/feature/hooks.d.ts +2 -0
- package/dist/modules/feature/index.d.ts +2 -0
- package/dist/modules/feature/models.d.ts +3 -0
- package/dist/modules/order/constants.d.ts +9 -0
- package/dist/modules/order/hooks.d.ts +22 -0
- package/dist/modules/order/index.d.ts +5 -0
- package/dist/modules/order/models.d.ts +80 -0
- package/dist/modules/order/services.d.ts +2 -0
- package/dist/modules/order/utils.d.ts +20 -0
- package/dist/modules/product/index.d.ts +2 -0
- package/dist/{models/product.d.ts → modules/product/models.d.ts} +5 -4
- package/dist/{utils/product.d.ts → modules/product/utils.d.ts} +9 -8
- package/dist/modules/view/constants.d.ts +15 -0
- package/dist/modules/view/index.d.ts +3 -0
- package/dist/modules/view/services.d.ts +2 -0
- package/dist/modules/view/utils.d.ts +6 -0
- package/dist/services/api/index.d.ts +5 -0
- package/dist/services/translation/index.d.ts +3 -0
- package/dist/services/translation/locales/az/auth.d.ts +7 -0
- package/dist/services/translation/locales/az/common.d.ts +6 -0
- package/dist/services/translation/locales/az/customer.d.ts +75 -0
- package/dist/services/translation/locales/az/error.d.ts +11 -0
- package/dist/services/translation/locales/az/events.d.ts +8 -0
- package/dist/services/translation/locales/az/index.d.ts +164 -0
- package/dist/services/translation/locales/az/order.d.ts +32 -0
- package/dist/services/translation/locales/az/pricing.d.ts +29 -0
- package/dist/services/translation/locales/en/auth.d.ts +2 -0
- package/dist/services/translation/locales/en/common.d.ts +2 -0
- package/dist/services/translation/locales/en/customer.d.ts +2 -0
- package/dist/services/translation/locales/en/error.d.ts +7 -0
- package/dist/services/translation/locales/en/events.d.ts +2 -0
- package/dist/services/translation/locales/en/index.d.ts +15 -0
- package/dist/services/translation/locales/en/order.d.ts +2 -0
- package/dist/services/translation/locales/en/pricing.d.ts +2 -0
- package/dist/services/translation/locales/et/auth.d.ts +7 -0
- package/dist/services/translation/locales/et/common.d.ts +6 -0
- package/dist/services/translation/locales/et/customer.d.ts +75 -0
- package/dist/services/translation/locales/et/error.d.ts +11 -0
- package/dist/services/translation/locales/et/events.d.ts +8 -0
- package/dist/services/translation/locales/et/index.d.ts +165 -0
- package/dist/services/translation/locales/et/order.d.ts +33 -0
- package/dist/services/translation/locales/et/pricing.d.ts +29 -0
- package/dist/services/translation/locales/index.d.ts +836 -0
- package/dist/services/translation/locales/nl/auth.d.ts +7 -0
- package/dist/services/translation/locales/nl/common.d.ts +6 -0
- package/dist/services/translation/locales/nl/customer.d.ts +75 -0
- package/dist/services/translation/locales/nl/error.d.ts +11 -0
- package/dist/services/translation/locales/nl/events.d.ts +8 -0
- package/dist/services/translation/locales/nl/index.d.ts +165 -0
- package/dist/services/translation/locales/nl/order.d.ts +33 -0
- package/dist/services/translation/locales/nl/pricing.d.ts +29 -0
- package/dist/services/translation/locales/ru/auth.d.ts +7 -0
- package/dist/services/translation/locales/ru/common.d.ts +6 -0
- package/dist/services/translation/locales/ru/customer.d.ts +75 -0
- package/dist/services/translation/locales/ru/error.d.ts +11 -0
- package/dist/services/translation/locales/ru/events.d.ts +8 -0
- package/dist/services/translation/locales/ru/index.d.ts +165 -0
- package/dist/services/translation/locales/ru/order.d.ts +33 -0
- package/dist/services/translation/locales/ru/pricing.d.ts +29 -0
- package/dist/services/translation/locales/tr/auth.d.ts +7 -0
- package/dist/services/translation/locales/tr/common.d.ts +6 -0
- package/dist/services/translation/locales/tr/customer.d.ts +75 -0
- package/dist/services/translation/locales/tr/error.d.ts +11 -0
- package/dist/services/translation/locales/tr/events.d.ts +8 -0
- package/dist/services/translation/locales/tr/index.d.ts +165 -0
- package/dist/services/translation/locales/tr/order.d.ts +33 -0
- package/dist/services/translation/locales/tr/pricing.d.ts +29 -0
- package/dist/store/order.d.ts +30 -0
- package/dist/styles/ui.css +1 -1
- package/dist/styles/ui.css.map +1 -1
- package/dist/utils/index.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/models/index.d.ts +3 -3
- package/dist/utils/models/menu.d.ts +4 -3
- package/dist/utils/modules/addon/models.d.ts +27 -0
- package/dist/utils/{addon.d.ts → modules/addon/utils.d.ts} +1 -1
- package/dist/utils/modules/branch/models.d.ts +11 -0
- package/dist/utils/modules/business/models.d.ts +20 -0
- package/dist/utils/modules/order/models.d.ts +80 -0
- package/dist/utils/modules/order/utils.d.ts +20 -0
- package/dist/utils/modules/product/models.d.ts +40 -0
- package/dist/utils/{utils/product.d.ts → modules/product/utils.d.ts} +9 -8
- package/dist/utils/utils/index.d.ts +3 -3
- package/package.json +17 -15
- package/dist/components/PublicMenu/Cart/Cart.d.ts +0 -2
- package/dist/components/PublicMenu/Cart/index.d.ts +0 -1
- package/dist/components/PublicMenu/CartDrawer/CartDrawer.d.ts +0 -2
- package/dist/components/PublicMenu/CartDrawer/index.d.ts +0 -1
- package/dist/components/PublicMenu/CartItem/CartItem.d.ts +0 -6
- package/dist/components/PublicMenu/CartItem/OptionsInfo/OptionsInfo.d.ts +0 -9
- package/dist/components/PublicMenu/CartItem/index.d.ts +0 -1
- package/dist/components/PublicMenu/CartStepper/CartStepper.d.ts +0 -6
- package/dist/components/PublicMenu/CartStepper/index.d.ts +0 -1
- package/dist/components/PublicMenu/ProductInCart/ProductInCart.d.ts +0 -6
- package/dist/components/PublicMenu/ProductInCart/index.d.ts +0 -1
- package/dist/constants/translations.d.ts +0 -212
- package/dist/hooks/cart.d.ts +0 -12
- package/dist/models/order.d.ts +0 -47
- package/dist/store/cart.d.ts +0 -23
- package/dist/utils/cart.d.ts +0 -7
- package/dist/utils/cart.test.d.ts +0 -1
- package/dist/utils/models/order.d.ts +0 -47
- package/dist/utils/utils/cart.d.ts +0 -7
- package/dist/utils/utils/cart.test.d.ts +0 -1
- /package/dist/components/PublicMenu/{CartItem → OrderListItem}/OptionsInfo/index.d.ts +0 -0
- /package/dist/models/{branch.d.ts → modules/branch/models.d.ts} +0 -0
- /package/dist/models/{business.d.ts → modules/business/models.d.ts} +0 -0
- /package/dist/{utils/models/branch.d.ts → modules/branch/models.d.ts} +0 -0
- /package/dist/{utils/models/business.d.ts → modules/business/models.d.ts} +0 -0
package/dist/styles/ui.css.map
CHANGED
|
@@ -1 +1 @@
|
|
|
1
|
-
{"version":3,"sources":["PublicMenu.module.scss","Header.module.scss","Languages.module.scss","Products.module.scss","ProductsListItem.module.scss","ProductsGridItem.module.scss","ProductDetails.module.scss","Quantity.module.scss","ProductInCart.module.scss","ProductVariants.module.scss","ProductAddons.module.scss","Cart.module.scss","CartStepper.module.scss","CartDrawer.module.scss","CartItem.module.scss","Branches.module.scss","Pricing.module.scss"],"names":[],"mappings":"AA4BA,6CACE,GACE,MACF,CACA,GACE,MACF,CACF,CACA,4CACE,GACE,uBACF,CACA,GACE,2BACF,CACF,CACA,8CACE,GACE,UACF,CACA,IACE,SACF,CACA,GACE,UACF,CACF,CACA,oDACE,GACE,QACF,CACA,GACE,WACF,CACF,CACA,2CACE,GACE,SACF,CACA,GACE,SACF,CACF,CA4BA,mDACE,GACE,uBACF,CACA,GACE,2BACF,CACF,CACA,gDACE,GACE,0BACF,CACA,GACE,sBACF,CACF,CACA,qDACE,GACE,0BACF,CACA,GACE,uBACF,CACF,CACA,oCACE,qBAAyB,CAEzB,mBAAoB,CADpB,iBAEF,CACA,0EAGE,eAAiB,CAFjB,uBAAyB,CACzB,iBAEF,CACA,sEACE,YACF,CACA,+EACE,SACF,CACA,yEAOE,qBAAyB,CAHzB,MAAO,CAHP,cAAe,CAOf,kBAAoB,CANpB,eAAgB,CAGhB,OAAQ,CACR,KAAM,CAHN,SAMF,CACA,qEAME,aAAc,CALd,aAAc,CAId,gBAAkB,CADlB,sBAAuB,CADvB,iBAAkB,CADlB,UAKF,CC/HA,yCACE,GACE,MACF,CACA,GACE,MACF,CACF,CACA,wCACE,GACE,uBACF,CACA,GACE,2BACF,CACF,CACA,0CACE,GACE,UACF,CACA,IACE,SACF,CACA,GACE,UACF,CACF,CACA,gDACE,GACE,QACF,CACA,GACE,WACF,CACF,CACA,uCACE,GACE,SACF,CACA,GACE,SACF,CACF,CA4BA,+CACE,GACE,uBACF,CACA,GACE,2BACF,CACF,CACA,4CACE,GACE,0BACF,CACA,GACE,sBACF,CACF,CACA,iDACE,GACE,0BACF,CACA,GACE,uBACF,CACF,CACA,gCAEE,cAAe,CAEf,kBAAmB,CADnB,iBAAkB,CAFlB,UAIF,CACA,4DAEE,WAAY,CACZ,mBAAiB,CAAjB,gBAAiB,CAFjB,UAGF,CACA,8DAWE,oBAAqB,CAFrB,+DAA2E,CAN3E,QAAS,CAKT,UAAc,CAEd,YAAa,CANb,MAAO,CAGP,sBAAuB,CANvB,iBAAkB,CAIlB,OAAQ,CAHR,KAAM,CAIN,UAMF,CACA,yFAIE,iBAAkB,CAHlB,aAAc,CAEd,WAAY,CAGZ,mBAAiB,CAAjB,gBAAiB,CADjB,eAAgB,CAHhB,UAKF,CACA,yFAEE,eAAgB,CADhB,uBAEF,CACA,oHACE,gBAAiB,CACjB,QAAS,CACT,cAAe,CACf,eAAgB,CAChB,sBACF,CACA,uHACE,UAAc,CACd,eACF,CACA,yJAEE,YAAa,CACb,oBAAqB,CACrB,2BAA4B,CAH5B,mBAAoB,CAIpB,eAAgB,CAChB,sBAAuB,CACvB,kBACF,CACA,2FAGE,QAAS,CAET,WAAY,CACZ,cAAgB,CALhB,iBAAkB,CAGlB,OAAQ,CAGR,oBAAqB,CALrB,KAMF,CACA,8GAGE,sBAAuB,CAFvB,QAAS,CACT,OAEF,CACA,6DAEE,eAAgB,CAGhB,YAAa,CACb,sBAAuB,CAHvB,MAAO,CAFP,iBAAkB,CAGlB,OAGF,CACA,4DAEE,qBAAyB,CACzB,oBAAqB,CACrB,qCAAgD,CAHhD,qBAAwB,CAIxB,sBAAkB,CAAlB,iBACF,CACA,+FAEE,kBAAmB,CACnB,cAAe,CAFf,YAAa,CAGb,aACF,CACA,sIACE,WACF,CC3LA,4CACE,GACE,MACF,CACA,GACE,MACF,CACF,CACA,2CACE,GACE,uBACF,CACA,GACE,2BACF,CACF,CACA,6CACE,GACE,UACF,CACA,IACE,SACF,CACA,GACE,UACF,CACF,CACA,mDACE,GACE,QACF,CACA,GACE,WACF,CACF,CACA,0CACE,GACE,SACF,CACA,GACE,SACF,CACF,CA4BA,kDACE,GACE,uBACF,CACA,GACE,2BACF,CACF,CACA,+CACE,GACE,0BACF,CACA,GACE,sBACF,CACF,CACA,oDACE,GACE,0BACF,CACA,GACE,uBACF,CACF,CACA,mCACE,iBAAkB,CAElB,UAAW,CADX,QAAS,CAET,SACF,CACA,4EAQE,kBAAmB,CAJnB,qBAAyB,CAQzB,qBAAyB,CAPzB,iBAAkB,CAIlB,cAAe,CAHf,YAAa,CAHb,eAAgB,CAFhB,aAAc,CAMd,sBAAuB,CAIvB,mBAAiB,CAAjB,gBAAiB,CADjB,eAAgB,CARhB,YAWF,CACA,oEAGE,oBAAqB,CADrB,aAAc,CAGd,eAAgB,CAJhB,cAAe,CAGf,OAEF,CACA,oGAQE,kBAAmB,CAJnB,qBAAyB,CAQzB,qBAAyB,CAPzB,iBAAkB,CAIlB,cAAe,CAHf,YAAa,CAHb,eAAgB,CAFhB,aAAc,CAMd,sBAAuB,CAIvB,mBAAiB,CAAjB,gBAAiB,CADjB,eAAgB,CAGhB,0BAA2B,CAC3B,wBAA0B,CAZ1B,YAaF,CACA,iHACE,oBACF,CACA,iHACE,oBACF,CACA,iHACE,oBACF,CACA,iHACE,oBACF,CACA,iHACE,oBACF,CACA,iHACE,oBACF,CACA,iHACE,oBACF,CACA,iHACE,oBACF,CACA,kHACE,oBACF,CACA,mGACE,sBAAkB,CAAlB,iBACF,CACA,mIACE,uBACF,CCrMA,kCACE,YACF,CAIA,gIACE,mBACF,CACA,mEAIE,iBAAkB,CAFlB,gBAAiB,CACjB,sBAAuB,CAEvB,sBAAuB,CAJvB,UAKF,CACA,oGACE,gBAAiB,CACjB,kBAAmB,CAEnB,iBAAkB,CAClB,sBAAuB,CAFvB,UAGF,CACA,gGACE,UACF,CCGA,mDACE,GACE,MACF,CACA,GACE,MACF,CACF,CACA,kDACE,GACE,uBACF,CACA,GACE,2BACF,CACF,CACA,oDACE,GACE,UACF,CACA,IACE,SACF,CACA,GACE,UACF,CACF,CACA,0DACE,GACE,QACF,CACA,GACE,WACF,CACF,CACA,iDACE,GACE,SACF,CACA,GACE,SACF,CACF,CA4BA,yDACE,GACE,uBACF,CACA,GACE,2BACF,CACF,CACA,sDACE,GACE,0BACF,CACA,GACE,sBACF,CACF,CACA,2DACE,GACE,0BACF,CACA,GACE,uBACF,CACF,CACA,0CAEE,+BAAgC,CAGhC,eAAgB,CAFhB,gBAAiB,CACjB,iBAAkB,CAHlB,UAKF,CACA,qFACE,cACF,CACA,+EACE,MAAO,CAEP,eAAgB,CADhB,oBAEF,CACA,oHACE,cAAe,CACf,eAAgB,CAChB,QAAS,CACT,cAAe,CACf,eACF,CACA,2HAEE,YAAa,CACb,oBAAqB,CACrB,2BAA4B,CAI5B,aAAc,CAPd,mBAAoB,CAQpB,iBAAmB,CACnB,mBAAoB,CACpB,cAAe,CANf,eAAgB,CAChB,sBAAuB,CACvB,kBAKF,CACA,qHACE,kBACF,CACA,gFAGE,qBAAuB,CADvB,eAAgB,CAEhB,mBAAiB,CAAjB,gBAAiB,CACjB,eAAgB,CAJhB,WAKF,CACA,4HAEE,sBACF,CACA,oFAEE,kBAAmB,CADnB,iBAAkB,CAGlB,YAAc,CADd,WAEF,CACA,sHACE,eACF,CACA,2JAEE,mBAAqB,CADrB,kBAEF,CC3JA,mDACE,GACE,MACF,CACA,GACE,MACF,CACF,CACA,kDACE,GACE,uBACF,CACA,GACE,2BACF,CACF,CACA,oDACE,GACE,UACF,CACA,IACE,SACF,CACA,GACE,UACF,CACF,CACA,0DACE,GACE,QACF,CACA,GACE,WACF,CACF,CACA,iDACE,GACE,SACF,CACA,GACE,SACF,CACF,CA4BA,yDACE,GACE,uBACF,CACA,GACE,2BACF,CACF,CACA,sDACE,GACE,0BACF,CACA,GACE,sBACF,CACF,CACA,2DACE,GACE,0BACF,CACA,GACE,uBACF,CACF,CACA,0CAEE,+BAAgC,CAChC,gBAAiB,CAFjB,UAGF,CACA,kFAEE,eAAgB,CADhB,iBAAkB,CAElB,UAGF,CACA,6HACE,cACF,CACA,uHAOE,4BAA6B,CAC7B,mFAAkG,CAKlG,qBAAuB,CAJvB,YAAa,CACb,qBAAsB,CAJtB,WAAY,CAHZ,MAAO,CAFP,iBAAkB,CAClB,KAAM,CAEN,OAAQ,CAOR,wBAAyB,CACzB,eAAgB,CAEhB,YAAa,CATb,UAUF,CACA,uHACE,eAAgB,CAChB,8BACF,CACA,4JAME,UAAc,CALd,cAAe,CACf,eAAgB,CAChB,QAAS,CACT,cAAe,CACf,eAEF,CACA,mKAEE,YAAa,CACb,oBAAqB,CACrB,2BAA4B,CAI5B,wBAA+B,CAP/B,mBAAoB,CAQpB,iBAAmB,CACnB,mBAAoB,CACpB,cAAe,CANf,eAAgB,CAChB,sBAAuB,CACvB,kBAKF,CACA,6JAEE,UAAc,CADd,kBAEF,CACA,iIAIE,qBAAuB,CAFvB,eAAgB,CAChB,iBAAkB,CAFlB,UAIF,CACA,uKAKE,WAAY,CAFZ,MAAO,CAGP,mBAAiB,CAAjB,gBAAiB,CALjB,iBAAkB,CAClB,KAAM,CAEN,UAGF,CACA,mNAEE,sBACF,CACA,8BACE,iIACE,iBAAkB,CAClB,aACF,CACF,CACA,kCACE,iIACE,kBACF,CACF,CACA,4HAEE,kBAAmB,CADnB,iBAAkB,CAGlB,WAAa,CADb,SAEF,CACA,yHACE,kBACF,CACA,8JACE,sBAAuB,CACvB,SACF,CACA,idAEE,aACF,CACA,wOACE,kBACF,CACA,ydAEE,uBACF,CC9MA,iDACE,GACE,MACF,CACA,GACE,MACF,CACF,CACA,gDACE,GACE,uBACF,CACA,GACE,2BACF,CACF,CACA,kDACE,GACE,UACF,CACA,IACE,SACF,CACA,GACE,UACF,CACF,CACA,wDACE,GACE,QACF,CACA,GACE,WACF,CACF,CACA,+CACE,GACE,SACF,CACA,GACE,SACF,CACF,CA4BA,uDACE,GACE,uBACF,CACA,GACE,2BACF,CACF,CACA,oDACE,GACE,0BACF,CACA,GACE,sBACF,CACF,CACA,yDACE,GACE,0BACF,CACA,GACE,uBACF,CACF,CACA,wCAME,kBAAmB,CAHnB,+BAAoC,CAEpC,YAAa,CAHb,OAAQ,CAKR,sBAAuB,CANvB,cAAe,CAGf,WAIF,CACA,8EAEE,gBAAiB,CADjB,iBAEF,CACA,kHAKE,aAAc,CAJd,gBAAiB,CACjB,cAAe,CAIf,mBAAiB,CAAjB,gBAAiB,CAFjB,eAAgB,CADhB,UAIF,CACA,oHAEE,cAAe,CAEf,eAAgB,CAHhB,wBAAyB,CAIzB,sBAAuB,CAFvB,UAGF,CACA,uJAEE,gBAAiB,CADjB,QAEF,CACA,wJACE,kBACF,CACA,yJACE,aACF,CACA,8JACE,aAAc,CACd,cAAe,CACf,mBAAoB,CACpB,eACF,CACA,oHAEE,+BAAgC,CADhC,4BAA6B,CAE7B,cAAe,CAEf,eAAgB,CAChB,sBAAuB,CAFvB,UAGF,CACA,kHACE,iBAAkB,CAElB,UAAW,CADX,QAEF,CACA,0HACE,wBACF,CACA,yBACE,wCACE,oBACF,CACF,CC9JA,2CACE,GACE,MACF,CACA,GACE,MACF,CACF,CACA,0CACE,GACE,uBACF,CACA,GACE,2BACF,CACF,CACA,4CACE,GACE,UACF,CACA,IACE,SACF,CACA,GACE,UACF,CACF,CACA,kDACE,GACE,QACF,CACA,GACE,WACF,CACF,CACA,yCACE,GACE,SACF,CACA,GACE,SACF,CACF,CA4BA,iDACE,GACE,uBACF,CACA,GACE,2BACF,CACF,CACA,8CACE,GACE,0BACF,CACA,GACE,sBACF,CACF,CACA,mDACE,GACE,0BACF,CACA,GACE,uBACF,CACF,CACA,kCACE,6DAA+D,CAC/D,qBACF,CACA,iJAIE,kBAAmB,CAGnB,4CAA8C,CAJ9C,YAAa,CAEb,sBAAuB,CACvB,kBAAmB,CAJnB,iBAMF,CACA,yEACE,cACF,CACA,kFACE,6CACF,CACA,2GACE,kBACF,CACA,4DAEE,uBAAyB,CADzB,sBAEF,CACA,qMAGE,uBAAyB,CADzB,YAEF,CACA,4DAEE,wBAA0B,CAD1B,qBAEF,CACA,qMAGE,wBAA0B,CAD1B,qBAEF,CACA,4DAEE,wBAA0B,CAD1B,uBAEF,CACA,qMAGE,wBAA0B,CAD1B,qBAEF,CC1KA,0EACE,eACF,CC0BA,kDACE,GACE,MACF,CACA,GACE,MACF,CACF,CACA,iDACE,GACE,uBACF,CACA,GACE,2BACF,CACF,CACA,mDACE,GACE,UACF,CACA,IACE,SACF,CACA,GACE,UACF,CACF,CACA,yDACE,GACE,QACF,CACA,GACE,WACF,CACF,CACA,gDACE,GACE,SACF,CACA,GACE,SACF,CACF,CA4BA,wDACE,GACE,uBACF,CACA,GACE,2BACF,CACF,CACA,qDACE,GACE,0BACF,CACA,GACE,sBACF,CACF,CACA,0DACE,GACE,0BACF,CACA,GACE,uBACF,CACF,CACA,yCAEE,YAAa,CADb,mBAAoB,CAEpB,qCACF,CACA,sFACE,eAAgB,CAChB,mBACF,CACA,gFACE,cACF,CACA,+EACE,4BACF,CC5GA,gDACE,GACE,MACF,CACA,GACE,MACF,CACF,CACA,+CACE,GACE,uBACF,CACA,GACE,2BACF,CACF,CACA,iDACE,GACE,UACF,CACA,IACE,SACF,CACA,GACE,UACF,CACF,CACA,uDACE,GACE,QACF,CACA,GACE,WACF,CACF,CACA,8CACE,GACE,SACF,CACA,GACE,SACF,CACF,CA4BA,sDACE,GACE,uBACF,CACA,GACE,2BACF,CACF,CACA,mDACE,GACE,0BACF,CACA,GACE,sBACF,CACF,CACA,wDACE,GACE,0BACF,CACA,GACE,uBACF,CACF,CACA,uCAEE,YAAa,CADb,mBAAoB,CAEpB,qCACF,CACA,2EACE,4BACF,CACA,iFACE,eAAgB,CAChB,mBACF,CCzGA,uCACE,GACE,MACF,CACA,GACE,MACF,CACF,CACA,sCACE,GACE,uBACF,CACA,GACE,2BACF,CACF,CACA,wCACE,GACE,UACF,CACA,IACE,SACF,CACA,GACE,UACF,CACF,CACA,8CACE,GACE,QACF,CACA,GACE,WACF,CACF,CACA,qCACE,GACE,SACF,CACA,GACE,SACF,CACF,CA4BA,6CACE,GACE,uBACF,CACA,GACE,2BACF,CACF,CACA,0CACE,GACE,0BACF,CACA,GACE,sBACF,CACF,CACA,+CACE,GACE,0BACF,CACA,GACE,uBACF,CACF,CACA,8BAEE,QAAS,CAIT,YAAa,CACb,sBAAuB,CAJvB,MAAO,CAKP,YAAa,CAPb,cAAe,CAGf,OAAQ,CACR,UAIF,CACA,0DAIE,sBAAyB,CADzB,6CAA2B,CAE3B,mDAAyD,CAJzD,eAAgB,CAChB,UAIF,CC9GA,8CACE,GACE,MACF,CACA,GACE,MACF,CACF,CACA,6CACE,GACE,uBACF,CACA,GACE,2BACF,CACF,CACA,+CACE,GACE,UACF,CACA,IACE,SACF,CACA,GACE,UACF,CACF,CACA,qDACE,GACE,QACF,CACA,GACE,WACF,CACF,CACA,4CACE,GACE,SACF,CACA,GACE,SACF,CACF,CA4BA,oDACE,GACE,uBACF,CACA,GACE,2BACF,CACF,CACA,iDACE,GACE,0BACF,CACA,GACE,sBACF,CACF,CACA,sDACE,GACE,0BACF,CACA,GACE,uBACF,CACF,CACA,qCAGE,uDAAyD,CAEzD,oBAAqB,CACrB,UAAc,CALd,mBAAoB,CAGpB,kBAAoB,CAFpB,UAKF,CACA,sEASE,kBAAmB,CANnB,qBAAyB,CACzB,iBAAkB,CAOlB,aAAc,CAHd,YAAa,CAHb,gBAAkB,CAClB,eAAgB,CAJhB,aAAc,CAQd,sBAAuB,CAHvB,gBAAiB,CANjB,YAWF,CACA,2EACE,eACF,CACA,2EAEE,eAAgB,CADhB,cAEF,CACA,2EACE,cACF,CC5HA,6CACE,GACE,MACF,CACA,GACE,MACF,CACF,CACA,4CACE,GACE,uBACF,CACA,GACE,2BACF,CACF,CACA,8CACE,GACE,UACF,CACA,IACE,SACF,CACA,GACE,UACF,CACF,CACA,oDACE,GACE,QACF,CACA,GACE,WACF,CACF,CACA,2CACE,GACE,SACF,CACA,GACE,SACF,CACF,CA4BA,mDACE,GACE,uBACF,CACA,GACE,2BACF,CACF,CACA,gDACE,GACE,0BACF,CACA,GACE,sBACF,CACF,CACA,qDACE,GACE,0BACF,CACA,GACE,uBACF,CACF,CACA,oCAME,kBAAmB,CAHnB,+BAAoC,CAEpC,YAAa,CAHb,OAAQ,CAKR,wBAAyB,CANzB,cAAe,CAGf,WAIF,CACA,sEAEE,WAAY,CADZ,cAEF,CC1GA,2CACE,GACE,MACF,CACA,GACE,MACF,CACF,CACA,0CACE,GACE,uBACF,CACA,GACE,2BACF,CACF,CACA,4CACE,GACE,UACF,CACA,IACE,SACF,CACA,GACE,UACF,CACF,CACA,kDACE,GACE,QACF,CACA,GACE,WACF,CACF,CACA,yCACE,GACE,SACF,CACA,GACE,SACF,CACF,CA4BA,iDACE,GACE,uBACF,CACA,GACE,2BACF,CACF,CACA,8CACE,GACE,0BACF,CACA,GACE,sBACF,CACF,CACA,mDACE,GACE,0BACF,CACA,GACE,uBACF,CACF,CACA,kCAEE,+BAAgC,CADhC,mBAEF,CACA,gEAGE,qBAAuB,CADvB,gBAAiB,CAEjB,mBAAiB,CAAjB,gBAAiB,CACjB,eAAgB,CAJhB,UAKF,CACA,+DACE,MAAO,CACP,cAAe,CACf,eAAgB,CAChB,sBACF,CACA,4FACE,eAAgB,CAChB,aAAc,CACd,mBACF,CACA,6FAEE,kBAAmB,CADnB,gBAEF,CCvHA,2CACE,GACE,MACF,CACA,GACE,MACF,CACF,CACA,0CACE,GACE,uBACF,CACA,GACE,2BACF,CACF,CACA,4CACE,GACE,UACF,CACA,IACE,SACF,CACA,GACE,UACF,CACF,CACA,kDACE,GACE,QACF,CACA,GACE,WACF,CACF,CACA,yCACE,GACE,SACF,CACA,GACE,SACF,CACF,CA4BA,iDACE,GACE,uBACF,CACA,GACE,2BACF,CACF,CACA,8CACE,GACE,0BACF,CACA,GACE,sBACF,CACF,CACA,mDACE,GACE,0BACF,CACA,GACE,uBACF,CACF,CACA,iCACE,qBACF,CACA,8DAEE,YAAa,CACb,QAAS,CACT,kBAAmB,CACnB,wDAA2D,CAJ3D,mBAKF,CACA,yBACE,8DACE,yBACF,CACF,CACA,2FAGE,iBAAkB,CADlB,eAAgB,CAEhB,QAAS,CAHT,iBAIF,CClHA,0CACE,GACE,MACF,CACA,GACE,MACF,CACF,CACA,yCACE,GACE,uBACF,CACA,GACE,2BACF,CACF,CACA,2CACE,GACE,UACF,CACA,IACE,SACF,CACA,GACE,UACF,CACF,CACA,iDACE,GACE,QACF,CACA,GACE,WACF,CACF,CACA,wCACE,GACE,SACF,CACA,GACE,SACF,CACF,CA4BA,gDACE,GACE,uBACF,CACA,GACE,2BACF,CACF,CACA,6CACE,GACE,0BACF,CACA,GACE,sBACF,CACF,CACA,kDACE,GACE,0BACF,CACA,GACE,uBACF,CACF,CACA,iCAGE,kBAAmB,CAFnB,YAAa,CACb,qBAEF,CACA,kEAIE,qBAAyB,CAGzB,qBAAsB,CAFtB,6CAAsD,CAHtD,YAAa,CACb,QAAS,CAFT,oBAAqB,CAKrB,mBAEF,CACA,kGACE,4BAA6B,CAC7B,qBAAsB,CAEtB,cAAe,CADf,qBAAuB,CAGvB,yBAA0B,CAD1B,iEAEF,CACA,+HACE,uDAAyD,CACzD,UACF,CACA,8DAGE,YAAa,CAFb,QAAS,CAGT,wDAA2D,CAC3D,kBAAmB,CAHnB,UAIF,CACA,0FAGE,oBAAsB,CAFtB,WAAY,CACZ,qFAEF,CACA,8FACE,WACF,CACA,uHAIE,gCAAiC,CAHjC,iBAAkB,CAClB,eAAgB,CAChB,mBAEF,CACA,uHACE,cAAe,CAEf,cAAe,CADf,eAEF,CACA,4JAEE,gBAAiB,CACjB,eAAgB,CAFhB,4BAGF,CACA,8JACE,4CAA8C,CAC9C,eACF,CACA,wHACE,aACF,CACA,yJAGE,kBAAmB,CADnB,YAAa,CAEb,QAAS,CAHT,eAIF,CACA,2JACE,iBACF,CACA,gGACE,8EAA8F,CAE9F,aAAc,CADd,sBAEF","file":"ui.css","sourcesContent":["/* Text */\n/* Input */\n/* Button */\n/* TABLE */\n/* Modal */\n/* Bagde */\n/* Menu */\n/* Notification */\n/* BRANDS */\n/* Border radius */\n/* Fonts */\n/* WIDTH */\n/* HEIGHT */\n/* CARD */\n/* TABLE */\n/* MODAL */\n/* BADGE */\n/* Menu */\n/* Input */\n/* EDITOR */\n/* HEADER */\n/* Z-INDEX */\n/* SIZES */\n/* SHADOW */\n/**/\n/* BUTTON */\n/* TEXT */\n/* RESPONSIVE */\n@keyframes flexWide {\n from {\n flex: 0;\n }\n to {\n flex: 1;\n }\n}\n@keyframes slidein {\n from {\n transform: translateX(0%);\n }\n to {\n transform: translateX(-100%);\n }\n}\n@keyframes fadeInOut {\n 0% {\n opacity: 0.5;\n }\n 50% {\n opacity: 1;\n }\n 100% {\n opacity: 0.5;\n }\n}\n@keyframes heightAnimation {\n 0% {\n height: 0%;\n }\n 100% {\n height: 100%;\n }\n}\n@keyframes fadein {\n from {\n opacity: 0;\n }\n to {\n opacity: 1;\n }\n}\n/* Firefox < 16 */\n@-moz-keyframes fadein {\n from {\n opacity: 0;\n }\n to {\n opacity: 1;\n }\n}\n/* Safari, Chrome and Opera > 12.1 */\n@-webkit-keyframes fadein {\n from {\n opacity: 0;\n }\n to {\n opacity: 1;\n }\n}\n/* Internet Explorer */\n@-ms-keyframes fadein {\n from {\n opacity: 0;\n }\n to {\n opacity: 1;\n }\n}\n@keyframes floatAnimation {\n 0% {\n transform: translateY(0);\n }\n 100% {\n transform: translateY(-20px);\n }\n}\n@keyframes bottomSheet {\n from {\n transform: translate(0, 100%);\n }\n to {\n transform: translate(0, 0);\n }\n}\n@keyframes slideRightToLeft {\n from {\n transform: translateX(100%);\n }\n to {\n transform: translateX(0%);\n }\n}\n.container {\n background-color: #ffffff;\n position: relative;\n padding-bottom: 4rem;\n}\n.container .description {\n padding: 1rem 1rem 0.5rem;\n text-align: center;\n font-size: 0.9rem;\n}\n.container .contact {\n padding: 1rem;\n}\n.container .contact svg path {\n fill: #ffffff;\n}\n.container .categories {\n max-width: 100%;\n position: sticky;\n z-index: 1;\n left: 0;\n right: 0;\n top: 0;\n background-color: #ffffff;\n padding: 0.5rem 1rem;\n}\n.container .footer {\n display: block;\n width: 100%;\n text-align: center;\n padding: 3rem 2rem 2rem;\n font-size: 0.75rem;\n color: #a1a5b7;\n}","/* Text */\n/* Input */\n/* Button */\n/* TABLE */\n/* Modal */\n/* Bagde */\n/* Menu */\n/* Notification */\n/* BRANDS */\n/* Border radius */\n/* Fonts */\n/* WIDTH */\n/* HEIGHT */\n/* CARD */\n/* TABLE */\n/* MODAL */\n/* BADGE */\n/* Menu */\n/* Input */\n/* EDITOR */\n/* HEADER */\n/* Z-INDEX */\n/* SIZES */\n/* SHADOW */\n/**/\n/* BUTTON */\n/* TEXT */\n/* RESPONSIVE */\n@keyframes flexWide {\n from {\n flex: 0;\n }\n to {\n flex: 1;\n }\n}\n@keyframes slidein {\n from {\n transform: translateX(0%);\n }\n to {\n transform: translateX(-100%);\n }\n}\n@keyframes fadeInOut {\n 0% {\n opacity: 0.5;\n }\n 50% {\n opacity: 1;\n }\n 100% {\n opacity: 0.5;\n }\n}\n@keyframes heightAnimation {\n 0% {\n height: 0%;\n }\n 100% {\n height: 100%;\n }\n}\n@keyframes fadein {\n from {\n opacity: 0;\n }\n to {\n opacity: 1;\n }\n}\n/* Firefox < 16 */\n@-moz-keyframes fadein {\n from {\n opacity: 0;\n }\n to {\n opacity: 1;\n }\n}\n/* Safari, Chrome and Opera > 12.1 */\n@-webkit-keyframes fadein {\n from {\n opacity: 0;\n }\n to {\n opacity: 1;\n }\n}\n/* Internet Explorer */\n@-ms-keyframes fadein {\n from {\n opacity: 0;\n }\n to {\n opacity: 1;\n }\n}\n@keyframes floatAnimation {\n 0% {\n transform: translateY(0);\n }\n 100% {\n transform: translateY(-20px);\n }\n}\n@keyframes bottomSheet {\n from {\n transform: translate(0, 100%);\n }\n to {\n transform: translate(0, 0);\n }\n}\n@keyframes slideRightToLeft {\n from {\n transform: translateX(100%);\n }\n to {\n transform: translateX(0%);\n }\n}\n.container {\n width: 100%;\n height: 12.5rem;\n position: relative;\n margin-bottom: 3rem;\n}\n.container .cover {\n width: 100%;\n height: 100%;\n object-fit: cover;\n}\n.container .content {\n position: absolute;\n top: 0;\n bottom: 0;\n left: 0;\n right: 0;\n width: 100%;\n padding: 1rem 1rem 2rem;\n color: #ffffff;\n background: linear-gradient(0deg, rgba(0, 0, 0, 0.5) 20%, transparent 100%);\n display: flex;\n align-items: flex-end;\n}\n.container .content .logo {\n display: block;\n width: 6rem;\n height: 6rem;\n border-radius: 50%;\n overflow: hidden;\n object-fit: cover;\n}\n.container .content .info {\n width: calc(100% - 7rem);\n overflow: hidden;\n}\n.container .content .info .name {\n font-size: 1.5rem;\n margin: 0;\n max-width: 100%;\n overflow: hidden;\n text-overflow: ellipsis;\n}\n.container .content .info .address {\n color: #ffffff;\n font-size: 0.9rem;\n}\n.container .content .info .address .addressText {\n display: -webkit-box;\n line-clamp: 2;\n -webkit-line-clamp: 2;\n -webkit-box-orient: vertical;\n overflow: hidden;\n text-overflow: ellipsis;\n white-space: normal;\n}\n.container .content .labels {\n position: absolute;\n top: 0;\n bottom: 0;\n right: 0;\n height: 100%;\n padding: 0.75rem;\n scrollbar-width: none;\n}\n.container .content .labels::-webkit-scrollbar {\n height: 0;\n width: 0;\n background: transparent;\n}\n.container .social {\n position: absolute;\n bottom: -1.25rem;\n left: 0;\n right: 0;\n display: flex;\n justify-content: center;\n}\n.container .links {\n padding: 0.25rem 0.75rem;\n background-color: #ffffff;\n border-radius: 1.5rem;\n box-shadow: 0px 0px 50px 0px rgba(0, 0, 0, 0.15);\n width: fit-content;\n}\n.container .links .wifiPassword {\n display: flex;\n align-items: center;\n cursor: pointer;\n padding: 0.5rem;\n}\n.container .links .wifiPassword .wifiPasswordIcon {\n height: 100%;\n}","/* Text */\n/* Input */\n/* Button */\n/* TABLE */\n/* Modal */\n/* Bagde */\n/* Menu */\n/* Notification */\n/* BRANDS */\n/* Border radius */\n/* Fonts */\n/* WIDTH */\n/* HEIGHT */\n/* CARD */\n/* TABLE */\n/* MODAL */\n/* BADGE */\n/* Menu */\n/* Input */\n/* EDITOR */\n/* HEADER */\n/* Z-INDEX */\n/* SIZES */\n/* SHADOW */\n/**/\n/* BUTTON */\n/* TEXT */\n/* RESPONSIVE */\n@keyframes flexWide {\n from {\n flex: 0;\n }\n to {\n flex: 1;\n }\n}\n@keyframes slidein {\n from {\n transform: translateX(0%);\n }\n to {\n transform: translateX(-100%);\n }\n}\n@keyframes fadeInOut {\n 0% {\n opacity: 0.5;\n }\n 50% {\n opacity: 1;\n }\n 100% {\n opacity: 0.5;\n }\n}\n@keyframes heightAnimation {\n 0% {\n height: 0%;\n }\n 100% {\n height: 100%;\n }\n}\n@keyframes fadein {\n from {\n opacity: 0;\n }\n to {\n opacity: 1;\n }\n}\n/* Firefox < 16 */\n@-moz-keyframes fadein {\n from {\n opacity: 0;\n }\n to {\n opacity: 1;\n }\n}\n/* Safari, Chrome and Opera > 12.1 */\n@-webkit-keyframes fadein {\n from {\n opacity: 0;\n }\n to {\n opacity: 1;\n }\n}\n/* Internet Explorer */\n@-ms-keyframes fadein {\n from {\n opacity: 0;\n }\n to {\n opacity: 1;\n }\n}\n@keyframes floatAnimation {\n 0% {\n transform: translateY(0);\n }\n 100% {\n transform: translateY(-20px);\n }\n}\n@keyframes bottomSheet {\n from {\n transform: translate(0, 100%);\n }\n to {\n transform: translate(0, 0);\n }\n}\n@keyframes slideRightToLeft {\n from {\n transform: translateX(100%);\n }\n to {\n transform: translateX(0%);\n }\n}\n.container {\n position: absolute;\n top: 1rem;\n right: 1rem;\n z-index: 1;\n}\n.container .currentLanguage {\n height: 1.5rem;\n width: 1.5rem;\n flex: 0 0 1.5rem;\n background-color: #ffffff;\n border-radius: 50%;\n display: flex;\n justify-content: center;\n align-items: center;\n cursor: pointer;\n overflow: hidden;\n object-fit: cover;\n border: 2px solid #ffffff;\n}\n.container .options {\n padding: 0 1rem;\n height: 1.5rem;\n border-radius: 1.5rem;\n width: 0;\n overflow: hidden;\n}\n.container .options .option {\n height: 1.5rem;\n width: 1.5rem;\n flex: 0 0 1.5rem;\n background-color: #ffffff;\n border-radius: 50%;\n display: flex;\n justify-content: center;\n align-items: center;\n cursor: pointer;\n overflow: hidden;\n object-fit: cover;\n border: 2px solid #ffffff;\n transform: translateX(500%);\n transition: transform 0.2s;\n}\n.container .options .option:nth-child(2) {\n transition-delay: 0.1s;\n}\n.container .options .option:nth-child(3) {\n transition-delay: 0.2s;\n}\n.container .options .option:nth-child(4) {\n transition-delay: 0.3s;\n}\n.container .options .option:nth-child(5) {\n transition-delay: 0.4s;\n}\n.container .options .option:nth-child(6) {\n transition-delay: 0.5s;\n}\n.container .options .option:nth-child(7) {\n transition-delay: 0.6s;\n}\n.container .options .option:nth-child(8) {\n transition-delay: 0.7s;\n}\n.container .options .option:nth-child(9) {\n transition-delay: 0.8s;\n}\n.container .options .option:nth-child(10) {\n transition-delay: 0.9s;\n}\n.container .options.isOpen {\n width: max-content;\n}\n.container .options.isOpen .option {\n transform: translateX(0%);\n}",".container {\n padding: 1rem;\n}\n.container .view {\n margin-bottom: -1rem;\n}\n.container .header {\n margin-bottom: -1rem;\n}\n.container .products {\n width: 100%;\n padding: 3rem 0 0;\n scroll-margin-top: 2rem;\n overflow-x: hidden;\n text-overflow: ellipsis;\n}\n.container .products .category {\n font-size: 1.5rem;\n margin-bottom: 1rem;\n width: 100%;\n overflow-x: hidden;\n text-overflow: ellipsis;\n}\n.container .products .list {\n width: 100%;\n}","/* Text */\n/* Input */\n/* Button */\n/* TABLE */\n/* Modal */\n/* Bagde */\n/* Menu */\n/* Notification */\n/* BRANDS */\n/* Border radius */\n/* Fonts */\n/* WIDTH */\n/* HEIGHT */\n/* CARD */\n/* TABLE */\n/* MODAL */\n/* BADGE */\n/* Menu */\n/* Input */\n/* EDITOR */\n/* HEADER */\n/* Z-INDEX */\n/* SIZES */\n/* SHADOW */\n/**/\n/* BUTTON */\n/* TEXT */\n/* RESPONSIVE */\n@keyframes flexWide {\n from {\n flex: 0;\n }\n to {\n flex: 1;\n }\n}\n@keyframes slidein {\n from {\n transform: translateX(0%);\n }\n to {\n transform: translateX(-100%);\n }\n}\n@keyframes fadeInOut {\n 0% {\n opacity: 0.5;\n }\n 50% {\n opacity: 1;\n }\n 100% {\n opacity: 0.5;\n }\n}\n@keyframes heightAnimation {\n 0% {\n height: 0%;\n }\n 100% {\n height: 100%;\n }\n}\n@keyframes fadein {\n from {\n opacity: 0;\n }\n to {\n opacity: 1;\n }\n}\n/* Firefox < 16 */\n@-moz-keyframes fadein {\n from {\n opacity: 0;\n }\n to {\n opacity: 1;\n }\n}\n/* Safari, Chrome and Opera > 12.1 */\n@-webkit-keyframes fadein {\n from {\n opacity: 0;\n }\n to {\n opacity: 1;\n }\n}\n/* Internet Explorer */\n@-ms-keyframes fadein {\n from {\n opacity: 0;\n }\n to {\n opacity: 1;\n }\n}\n@keyframes floatAnimation {\n 0% {\n transform: translateY(0);\n }\n 100% {\n transform: translateY(-20px);\n }\n}\n@keyframes bottomSheet {\n from {\n transform: translate(0, 100%);\n }\n to {\n transform: translate(0, 0);\n }\n}\n@keyframes slideRightToLeft {\n from {\n transform: translateX(100%);\n }\n to {\n transform: translateX(0%);\n }\n}\n.container {\n width: 100%;\n border-bottom: 1px solid #eff2f5;\n padding: 1.5rem 0;\n position: relative;\n overflow: hidden;\n}\n.container.isClickable {\n cursor: pointer;\n}\n.container .info {\n flex: 1;\n padding-right: 1.5rem;\n overflow: hidden;\n}\n.container .info .name {\n font-size: 1rem;\n font-weight: 600;\n margin: 0;\n max-width: 100%;\n overflow: hidden;\n}\n.container .info .description {\n display: -webkit-box;\n line-clamp: 2;\n -webkit-line-clamp: 2;\n -webkit-box-orient: vertical;\n overflow: hidden;\n text-overflow: ellipsis;\n white-space: normal;\n color: #a1a5b7;\n font-size: 0.875rem;\n line-height: 1.25rem;\n max-width: 100%;\n}\n.container .info .price {\n line-height: 1.5rem;\n}\n.container .image {\n width: 10rem;\n height: 5.625rem;\n border-radius: 0.475rem;\n object-fit: cover;\n overflow: hidden;\n}\n.container .image.notAvailable {\n -webkit-filter: grayscale(100%);\n filter: grayscale(100%);\n}\n.container .addToCart {\n position: absolute;\n pointer-events: all;\n top: 1.75rem;\n right: 0.25rem;\n}\n.container.noImage .info {\n padding-right: 0;\n}\n.container.noImage .info .name {\n padding-right: 3rem;\n margin-bottom: 0.5rem;\n}","/* Text */\n/* Input */\n/* Button */\n/* TABLE */\n/* Modal */\n/* Bagde */\n/* Menu */\n/* Notification */\n/* BRANDS */\n/* Border radius */\n/* Fonts */\n/* WIDTH */\n/* HEIGHT */\n/* CARD */\n/* TABLE */\n/* MODAL */\n/* BADGE */\n/* Menu */\n/* Input */\n/* EDITOR */\n/* HEADER */\n/* Z-INDEX */\n/* SIZES */\n/* SHADOW */\n/**/\n/* BUTTON */\n/* TEXT */\n/* RESPONSIVE */\n@keyframes flexWide {\n from {\n flex: 0;\n }\n to {\n flex: 1;\n }\n}\n@keyframes slidein {\n from {\n transform: translateX(0%);\n }\n to {\n transform: translateX(-100%);\n }\n}\n@keyframes fadeInOut {\n 0% {\n opacity: 0.5;\n }\n 50% {\n opacity: 1;\n }\n 100% {\n opacity: 0.5;\n }\n}\n@keyframes heightAnimation {\n 0% {\n height: 0%;\n }\n 100% {\n height: 100%;\n }\n}\n@keyframes fadein {\n from {\n opacity: 0;\n }\n to {\n opacity: 1;\n }\n}\n/* Firefox < 16 */\n@-moz-keyframes fadein {\n from {\n opacity: 0;\n }\n to {\n opacity: 1;\n }\n}\n/* Safari, Chrome and Opera > 12.1 */\n@-webkit-keyframes fadein {\n from {\n opacity: 0;\n }\n to {\n opacity: 1;\n }\n}\n/* Internet Explorer */\n@-ms-keyframes fadein {\n from {\n opacity: 0;\n }\n to {\n opacity: 1;\n }\n}\n@keyframes floatAnimation {\n 0% {\n transform: translateY(0);\n }\n 100% {\n transform: translateY(-20px);\n }\n}\n@keyframes bottomSheet {\n from {\n transform: translate(0, 100%);\n }\n to {\n transform: translate(0, 0);\n }\n}\n@keyframes slideRightToLeft {\n from {\n transform: translateX(100%);\n }\n to {\n transform: translateX(0%);\n }\n}\n.container {\n width: 100%;\n border-bottom: 1px solid #eff2f5;\n padding: 1.5rem 0;\n}\n.container .content {\n position: relative;\n overflow: hidden;\n width: 100%;\n /* Use the modern aspect-ratio property where supported */\n /* Fallback: Use padding hack for older browsers */\n}\n.container .content.isClickable {\n cursor: pointer;\n}\n.container .content .info {\n position: absolute;\n top: 0;\n left: 0;\n inset: 0;\n width: 100%;\n height: 100%;\n background-color: transparent;\n background: linear-gradient(0deg, rgba(0, 0, 0, 0.5) 0%, rgba(0, 0, 0, 0.25) 30%, transparent 60%);\n display: flex;\n flex-direction: column;\n justify-content: flex-end;\n overflow: hidden;\n border-radius: 0.475rem;\n padding: 1rem;\n}\n.container .content .data {\n overflow: hidden;\n text-shadow: 0.5px 0.5px 5px #000000;\n}\n.container .content .data .name {\n font-size: 1rem;\n font-weight: 600;\n margin: 0;\n max-width: 100%;\n overflow: hidden;\n color: #ffffff;\n}\n.container .content .data .description {\n display: -webkit-box;\n line-clamp: 1;\n -webkit-line-clamp: 1;\n -webkit-box-orient: vertical;\n overflow: hidden;\n text-overflow: ellipsis;\n white-space: normal;\n color: rgba(255, 255, 255, 0.9);\n font-size: 0.875rem;\n line-height: 1.25rem;\n max-width: 100%;\n}\n.container .content .data .price {\n line-height: 1.5rem;\n color: #ffffff;\n}\n.container .content .imageContainer {\n width: 100%;\n overflow: hidden;\n position: relative;\n border-radius: 0.475rem;\n}\n.container .content .imageContainer .image {\n position: absolute;\n top: 0;\n left: 0;\n width: 100%;\n height: 100%;\n object-fit: cover;\n}\n.container .content .imageContainer .image.notAvailable {\n -webkit-filter: grayscale(100%);\n filter: grayscale(100%);\n}\n@supports (aspect-ratio: 16/9) {\n .container .content .imageContainer {\n aspect-ratio: 16/9;\n padding-top: 0;\n }\n}\n@supports not (aspect-ratio: 16/9) {\n .container .content .imageContainer {\n padding-top: 56.25%; /* 16:9 aspect ratio = 9 / 16 * 100 */\n }\n}\n.container .content .addToCart {\n position: absolute;\n pointer-events: all;\n top: 0.5rem;\n right: 0.5rem;\n}\n.container .content.noImage {\n min-height: 4.75rem;\n}\n.container .content.noImage .info {\n background: transparent;\n padding: 0;\n}\n.container .content.noImage .info .data .name,\n.container .content.noImage .info .data .price {\n color: #181c32;\n}\n.container .content.noImage .info .data .name {\n padding-right: 3rem;\n}\n.container .content.noImage .info .data .description,\n.container .content.noImage .info .data .volume {\n color: #a1a5b7 !important;\n}","/* Text */\n/* Input */\n/* Button */\n/* TABLE */\n/* Modal */\n/* Bagde */\n/* Menu */\n/* Notification */\n/* BRANDS */\n/* Border radius */\n/* Fonts */\n/* WIDTH */\n/* HEIGHT */\n/* CARD */\n/* TABLE */\n/* MODAL */\n/* BADGE */\n/* Menu */\n/* Input */\n/* EDITOR */\n/* HEADER */\n/* Z-INDEX */\n/* SIZES */\n/* SHADOW */\n/**/\n/* BUTTON */\n/* TEXT */\n/* RESPONSIVE */\n@keyframes flexWide {\n from {\n flex: 0;\n }\n to {\n flex: 1;\n }\n}\n@keyframes slidein {\n from {\n transform: translateX(0%);\n }\n to {\n transform: translateX(-100%);\n }\n}\n@keyframes fadeInOut {\n 0% {\n opacity: 0.5;\n }\n 50% {\n opacity: 1;\n }\n 100% {\n opacity: 0.5;\n }\n}\n@keyframes heightAnimation {\n 0% {\n height: 0%;\n }\n 100% {\n height: 100%;\n }\n}\n@keyframes fadein {\n from {\n opacity: 0;\n }\n to {\n opacity: 1;\n }\n}\n/* Firefox < 16 */\n@-moz-keyframes fadein {\n from {\n opacity: 0;\n }\n to {\n opacity: 1;\n }\n}\n/* Safari, Chrome and Opera > 12.1 */\n@-webkit-keyframes fadein {\n from {\n opacity: 0;\n }\n to {\n opacity: 1;\n }\n}\n/* Internet Explorer */\n@-ms-keyframes fadein {\n from {\n opacity: 0;\n }\n to {\n opacity: 1;\n }\n}\n@keyframes floatAnimation {\n 0% {\n transform: translateY(0);\n }\n 100% {\n transform: translateY(-20px);\n }\n}\n@keyframes bottomSheet {\n from {\n transform: translate(0, 100%);\n }\n to {\n transform: translate(0, 0);\n }\n}\n@keyframes slideRightToLeft {\n from {\n transform: translateX(100%);\n }\n to {\n transform: translateX(0%);\n }\n}\n.container {\n position: fixed;\n inset: 0;\n background-color: rgba(0, 0, 0, 0.5);\n z-index: 110;\n display: flex;\n align-items: center;\n justify-content: center;\n}\n.container .content {\n position: relative;\n padding: 0 0 1rem;\n}\n.container .content .image {\n max-height: 25rem;\n max-width: 100%;\n width: 100%;\n overflow: hidden;\n display: block;\n object-fit: cover;\n}\n.container .content .details {\n padding: 1rem 1.5rem 2rem;\n max-width: 100%;\n width: 100%;\n overflow: hidden;\n text-overflow: ellipsis;\n}\n.container .content .details .name {\n margin: 0;\n font-size: 1.5rem;\n}\n.container .content .details .price {\n line-height: 1.5rem;\n}\n.container .content .details .volume {\n color: #a1a5b7;\n}\n.container .content .details .description {\n color: #a1a5b7;\n font-size: 1rem;\n line-height: 1.25rem;\n margin-top: 1rem;\n}\n.container .content .choices {\n border-top: 1px solid #eff2f5;\n border-bottom: 1px solid #eff2f5;\n max-width: 100%;\n width: 100%;\n overflow: hidden;\n text-overflow: ellipsis;\n}\n.container .content .close {\n position: absolute;\n top: 1rem;\n right: 1rem;\n}\n.container .addAction .actionTitle {\n white-space: break-spaces;\n}\n@media (max-width: 580px) {\n .container {\n align-items: flex-end;\n }\n}","/* Text */\n/* Input */\n/* Button */\n/* TABLE */\n/* Modal */\n/* Bagde */\n/* Menu */\n/* Notification */\n/* BRANDS */\n/* Border radius */\n/* Fonts */\n/* WIDTH */\n/* HEIGHT */\n/* CARD */\n/* TABLE */\n/* MODAL */\n/* BADGE */\n/* Menu */\n/* Input */\n/* EDITOR */\n/* HEADER */\n/* Z-INDEX */\n/* SIZES */\n/* SHADOW */\n/**/\n/* BUTTON */\n/* TEXT */\n/* RESPONSIVE */\n@keyframes flexWide {\n from {\n flex: 0;\n }\n to {\n flex: 1;\n }\n}\n@keyframes slidein {\n from {\n transform: translateX(0%);\n }\n to {\n transform: translateX(-100%);\n }\n}\n@keyframes fadeInOut {\n 0% {\n opacity: 0.5;\n }\n 50% {\n opacity: 1;\n }\n 100% {\n opacity: 0.5;\n }\n}\n@keyframes heightAnimation {\n 0% {\n height: 0%;\n }\n 100% {\n height: 100%;\n }\n}\n@keyframes fadein {\n from {\n opacity: 0;\n }\n to {\n opacity: 1;\n }\n}\n/* Firefox < 16 */\n@-moz-keyframes fadein {\n from {\n opacity: 0;\n }\n to {\n opacity: 1;\n }\n}\n/* Safari, Chrome and Opera > 12.1 */\n@-webkit-keyframes fadein {\n from {\n opacity: 0;\n }\n to {\n opacity: 1;\n }\n}\n/* Internet Explorer */\n@-ms-keyframes fadein {\n from {\n opacity: 0;\n }\n to {\n opacity: 1;\n }\n}\n@keyframes floatAnimation {\n 0% {\n transform: translateY(0);\n }\n 100% {\n transform: translateY(-20px);\n }\n}\n@keyframes bottomSheet {\n from {\n transform: translate(0, 100%);\n }\n to {\n transform: translate(0, 0);\n }\n}\n@keyframes slideRightToLeft {\n from {\n transform: translateX(100%);\n }\n to {\n transform: translateX(0%);\n }\n}\n.container {\n background-color: var(--sorocraft-color-primary-light, #f5f8fa);\n border-radius: 3.75rem;\n}\n.container .quantityAction,\n.container .quantityValue {\n text-align: center;\n display: flex;\n align-items: center;\n justify-content: center;\n line-height: 1.5rem;\n color: var(--sorocraft-color-primary, #2d3436);\n}\n.container .quantityAction {\n cursor: pointer;\n}\n.container .quantityAction svg path {\n stroke: var(--sorocraft-color-primary, #2d3436);\n}\n.container .quantityAction.isDisabled {\n cursor: not-allowed;\n}\n.container.sm {\n width: 7.5rem !important;\n height: 2.5rem !important;\n}\n.container.sm .quantityAction,\n.container.sm .quantityValue {\n width: 2.5rem;\n height: 2.5rem !important;\n}\n.container.md {\n width: 10rem !important;\n height: 3.25rem !important;\n}\n.container.md .quantityAction,\n.container.md .quantityValue {\n width: 3.3333333333rem;\n height: 3.25rem !important;\n}\n.container.lg {\n width: 12.5rem !important;\n height: 3.75rem !important;\n}\n.container.lg .quantityAction,\n.container.lg .quantityValue {\n width: 4.1666666667rem;\n height: 3.75rem !important;\n}",".container .title {\n font-weight: 600;\n}","/* Text */\n/* Input */\n/* Button */\n/* TABLE */\n/* Modal */\n/* Bagde */\n/* Menu */\n/* Notification */\n/* BRANDS */\n/* Border radius */\n/* Fonts */\n/* WIDTH */\n/* HEIGHT */\n/* CARD */\n/* TABLE */\n/* MODAL */\n/* BADGE */\n/* Menu */\n/* Input */\n/* EDITOR */\n/* HEADER */\n/* Z-INDEX */\n/* SIZES */\n/* SHADOW */\n/**/\n/* BUTTON */\n/* TEXT */\n/* RESPONSIVE */\n@keyframes flexWide {\n from {\n flex: 0;\n }\n to {\n flex: 1;\n }\n}\n@keyframes slidein {\n from {\n transform: translateX(0%);\n }\n to {\n transform: translateX(-100%);\n }\n}\n@keyframes fadeInOut {\n 0% {\n opacity: 0.5;\n }\n 50% {\n opacity: 1;\n }\n 100% {\n opacity: 0.5;\n }\n}\n@keyframes heightAnimation {\n 0% {\n height: 0%;\n }\n 100% {\n height: 100%;\n }\n}\n@keyframes fadein {\n from {\n opacity: 0;\n }\n to {\n opacity: 1;\n }\n}\n/* Firefox < 16 */\n@-moz-keyframes fadein {\n from {\n opacity: 0;\n }\n to {\n opacity: 1;\n }\n}\n/* Safari, Chrome and Opera > 12.1 */\n@-webkit-keyframes fadein {\n from {\n opacity: 0;\n }\n to {\n opacity: 1;\n }\n}\n/* Internet Explorer */\n@-ms-keyframes fadein {\n from {\n opacity: 0;\n }\n to {\n opacity: 1;\n }\n}\n@keyframes floatAnimation {\n 0% {\n transform: translateY(0);\n }\n 100% {\n transform: translateY(-20px);\n }\n}\n@keyframes bottomSheet {\n from {\n transform: translate(0, 100%);\n }\n to {\n transform: translate(0, 0);\n }\n}\n@keyframes slideRightToLeft {\n from {\n transform: translateX(100%);\n }\n to {\n transform: translateX(0%);\n }\n}\n.container {\n padding: 1rem 1.5rem;\n box-shadow: 0;\n transition: box-shadow 0.1s ease-in-out;\n}\n.container .variantsTitle {\n font-weight: 600;\n margin-bottom: 0.5rem;\n}\n.container .variant {\n cursor: pointer;\n}\n.container.focused {\n box-shadow: 0px 0px 5px 0px #f1416c;\n}","/* Text */\n/* Input */\n/* Button */\n/* TABLE */\n/* Modal */\n/* Bagde */\n/* Menu */\n/* Notification */\n/* BRANDS */\n/* Border radius */\n/* Fonts */\n/* WIDTH */\n/* HEIGHT */\n/* CARD */\n/* TABLE */\n/* MODAL */\n/* BADGE */\n/* Menu */\n/* Input */\n/* EDITOR */\n/* HEADER */\n/* Z-INDEX */\n/* SIZES */\n/* SHADOW */\n/**/\n/* BUTTON */\n/* TEXT */\n/* RESPONSIVE */\n@keyframes flexWide {\n from {\n flex: 0;\n }\n to {\n flex: 1;\n }\n}\n@keyframes slidein {\n from {\n transform: translateX(0%);\n }\n to {\n transform: translateX(-100%);\n }\n}\n@keyframes fadeInOut {\n 0% {\n opacity: 0.5;\n }\n 50% {\n opacity: 1;\n }\n 100% {\n opacity: 0.5;\n }\n}\n@keyframes heightAnimation {\n 0% {\n height: 0%;\n }\n 100% {\n height: 100%;\n }\n}\n@keyframes fadein {\n from {\n opacity: 0;\n }\n to {\n opacity: 1;\n }\n}\n/* Firefox < 16 */\n@-moz-keyframes fadein {\n from {\n opacity: 0;\n }\n to {\n opacity: 1;\n }\n}\n/* Safari, Chrome and Opera > 12.1 */\n@-webkit-keyframes fadein {\n from {\n opacity: 0;\n }\n to {\n opacity: 1;\n }\n}\n/* Internet Explorer */\n@-ms-keyframes fadein {\n from {\n opacity: 0;\n }\n to {\n opacity: 1;\n }\n}\n@keyframes floatAnimation {\n 0% {\n transform: translateY(0);\n }\n 100% {\n transform: translateY(-20px);\n }\n}\n@keyframes bottomSheet {\n from {\n transform: translate(0, 100%);\n }\n to {\n transform: translate(0, 0);\n }\n}\n@keyframes slideRightToLeft {\n from {\n transform: translateX(100%);\n }\n to {\n transform: translateX(0%);\n }\n}\n.container {\n padding: 1rem 1.5rem;\n box-shadow: 0;\n transition: box-shadow 0.1s ease-in-out;\n}\n.container.focused {\n box-shadow: 0px 0px 5px 0px #f1416c;\n}\n.container .optionsTitle {\n font-weight: 600;\n margin-bottom: 0.5rem;\n}","/* Text */\n/* Input */\n/* Button */\n/* TABLE */\n/* Modal */\n/* Bagde */\n/* Menu */\n/* Notification */\n/* BRANDS */\n/* Border radius */\n/* Fonts */\n/* WIDTH */\n/* HEIGHT */\n/* CARD */\n/* TABLE */\n/* MODAL */\n/* BADGE */\n/* Menu */\n/* Input */\n/* EDITOR */\n/* HEADER */\n/* Z-INDEX */\n/* SIZES */\n/* SHADOW */\n/**/\n/* BUTTON */\n/* TEXT */\n/* RESPONSIVE */\n@keyframes flexWide {\n from {\n flex: 0;\n }\n to {\n flex: 1;\n }\n}\n@keyframes slidein {\n from {\n transform: translateX(0%);\n }\n to {\n transform: translateX(-100%);\n }\n}\n@keyframes fadeInOut {\n 0% {\n opacity: 0.5;\n }\n 50% {\n opacity: 1;\n }\n 100% {\n opacity: 0.5;\n }\n}\n@keyframes heightAnimation {\n 0% {\n height: 0%;\n }\n 100% {\n height: 100%;\n }\n}\n@keyframes fadein {\n from {\n opacity: 0;\n }\n to {\n opacity: 1;\n }\n}\n/* Firefox < 16 */\n@-moz-keyframes fadein {\n from {\n opacity: 0;\n }\n to {\n opacity: 1;\n }\n}\n/* Safari, Chrome and Opera > 12.1 */\n@-webkit-keyframes fadein {\n from {\n opacity: 0;\n }\n to {\n opacity: 1;\n }\n}\n/* Internet Explorer */\n@-ms-keyframes fadein {\n from {\n opacity: 0;\n }\n to {\n opacity: 1;\n }\n}\n@keyframes floatAnimation {\n 0% {\n transform: translateY(0);\n }\n 100% {\n transform: translateY(-20px);\n }\n}\n@keyframes bottomSheet {\n from {\n transform: translate(0, 100%);\n }\n to {\n transform: translate(0, 0);\n }\n}\n@keyframes slideRightToLeft {\n from {\n transform: translateX(100%);\n }\n to {\n transform: translateX(0%);\n }\n}\n.container {\n position: fixed;\n bottom: 0;\n left: 0;\n right: 0;\n z-index: 10;\n display: flex;\n justify-content: center;\n padding: 1rem;\n}\n.container .content {\n max-width: 25rem;\n width: 100%;\n animation-name: bottomSheet;\n animation-duration: 300ms;\n animation-timing-function: cubic-bezier(0.32, 1, 0.23, 1);\n}","/* Text */\n/* Input */\n/* Button */\n/* TABLE */\n/* Modal */\n/* Bagde */\n/* Menu */\n/* Notification */\n/* BRANDS */\n/* Border radius */\n/* Fonts */\n/* WIDTH */\n/* HEIGHT */\n/* CARD */\n/* TABLE */\n/* MODAL */\n/* BADGE */\n/* Menu */\n/* Input */\n/* EDITOR */\n/* HEADER */\n/* Z-INDEX */\n/* SIZES */\n/* SHADOW */\n/**/\n/* BUTTON */\n/* TEXT */\n/* RESPONSIVE */\n@keyframes flexWide {\n from {\n flex: 0;\n }\n to {\n flex: 1;\n }\n}\n@keyframes slidein {\n from {\n transform: translateX(0%);\n }\n to {\n transform: translateX(-100%);\n }\n}\n@keyframes fadeInOut {\n 0% {\n opacity: 0.5;\n }\n 50% {\n opacity: 1;\n }\n 100% {\n opacity: 0.5;\n }\n}\n@keyframes heightAnimation {\n 0% {\n height: 0%;\n }\n 100% {\n height: 100%;\n }\n}\n@keyframes fadein {\n from {\n opacity: 0;\n }\n to {\n opacity: 1;\n }\n}\n/* Firefox < 16 */\n@-moz-keyframes fadein {\n from {\n opacity: 0;\n }\n to {\n opacity: 1;\n }\n}\n/* Safari, Chrome and Opera > 12.1 */\n@-webkit-keyframes fadein {\n from {\n opacity: 0;\n }\n to {\n opacity: 1;\n }\n}\n/* Internet Explorer */\n@-ms-keyframes fadein {\n from {\n opacity: 0;\n }\n to {\n opacity: 1;\n }\n}\n@keyframes floatAnimation {\n 0% {\n transform: translateY(0);\n }\n 100% {\n transform: translateY(-20px);\n }\n}\n@keyframes bottomSheet {\n from {\n transform: translate(0, 100%);\n }\n to {\n transform: translate(0, 0);\n }\n}\n@keyframes slideRightToLeft {\n from {\n transform: translateX(100%);\n }\n to {\n transform: translateX(0%);\n }\n}\n.container {\n min-height: 3.375rem;\n width: 100%;\n background-color: var(--sorocraft-color-primary, #2d3436);\n padding: 0.9rem 1rem;\n border-radius: 1.5rem;\n color: #ffffff;\n}\n.container .count {\n width: 1.5rem;\n height: 1.5rem;\n background-color: #ffffff;\n border-radius: 50%;\n font-size: 0.75rem;\n font-weight: 500;\n line-height: 1rem;\n display: flex;\n align-items: center;\n justify-content: center;\n color: #181c32;\n}\n.container .actionText {\n font-weight: 600;\n}\n.container .totalPrice {\n text-align: end;\n font-weight: 500;\n}\n.container.isClickable {\n cursor: pointer;\n}","/* Text */\n/* Input */\n/* Button */\n/* TABLE */\n/* Modal */\n/* Bagde */\n/* Menu */\n/* Notification */\n/* BRANDS */\n/* Border radius */\n/* Fonts */\n/* WIDTH */\n/* HEIGHT */\n/* CARD */\n/* TABLE */\n/* MODAL */\n/* BADGE */\n/* Menu */\n/* Input */\n/* EDITOR */\n/* HEADER */\n/* Z-INDEX */\n/* SIZES */\n/* SHADOW */\n/**/\n/* BUTTON */\n/* TEXT */\n/* RESPONSIVE */\n@keyframes flexWide {\n from {\n flex: 0;\n }\n to {\n flex: 1;\n }\n}\n@keyframes slidein {\n from {\n transform: translateX(0%);\n }\n to {\n transform: translateX(-100%);\n }\n}\n@keyframes fadeInOut {\n 0% {\n opacity: 0.5;\n }\n 50% {\n opacity: 1;\n }\n 100% {\n opacity: 0.5;\n }\n}\n@keyframes heightAnimation {\n 0% {\n height: 0%;\n }\n 100% {\n height: 100%;\n }\n}\n@keyframes fadein {\n from {\n opacity: 0;\n }\n to {\n opacity: 1;\n }\n}\n/* Firefox < 16 */\n@-moz-keyframes fadein {\n from {\n opacity: 0;\n }\n to {\n opacity: 1;\n }\n}\n/* Safari, Chrome and Opera > 12.1 */\n@-webkit-keyframes fadein {\n from {\n opacity: 0;\n }\n to {\n opacity: 1;\n }\n}\n/* Internet Explorer */\n@-ms-keyframes fadein {\n from {\n opacity: 0;\n }\n to {\n opacity: 1;\n }\n}\n@keyframes floatAnimation {\n 0% {\n transform: translateY(0);\n }\n 100% {\n transform: translateY(-20px);\n }\n}\n@keyframes bottomSheet {\n from {\n transform: translate(0, 100%);\n }\n to {\n transform: translate(0, 0);\n }\n}\n@keyframes slideRightToLeft {\n from {\n transform: translateX(100%);\n }\n to {\n transform: translateX(0%);\n }\n}\n.container {\n position: fixed;\n inset: 0;\n background-color: rgba(0, 0, 0, 0.5);\n z-index: 100;\n display: flex;\n align-items: center;\n justify-content: flex-end;\n}\n.container .content {\n padding: 1rem 0;\n height: 100%;\n}","/* Text */\n/* Input */\n/* Button */\n/* TABLE */\n/* Modal */\n/* Bagde */\n/* Menu */\n/* Notification */\n/* BRANDS */\n/* Border radius */\n/* Fonts */\n/* WIDTH */\n/* HEIGHT */\n/* CARD */\n/* TABLE */\n/* MODAL */\n/* BADGE */\n/* Menu */\n/* Input */\n/* EDITOR */\n/* HEADER */\n/* Z-INDEX */\n/* SIZES */\n/* SHADOW */\n/**/\n/* BUTTON */\n/* TEXT */\n/* RESPONSIVE */\n@keyframes flexWide {\n from {\n flex: 0;\n }\n to {\n flex: 1;\n }\n}\n@keyframes slidein {\n from {\n transform: translateX(0%);\n }\n to {\n transform: translateX(-100%);\n }\n}\n@keyframes fadeInOut {\n 0% {\n opacity: 0.5;\n }\n 50% {\n opacity: 1;\n }\n 100% {\n opacity: 0.5;\n }\n}\n@keyframes heightAnimation {\n 0% {\n height: 0%;\n }\n 100% {\n height: 100%;\n }\n}\n@keyframes fadein {\n from {\n opacity: 0;\n }\n to {\n opacity: 1;\n }\n}\n/* Firefox < 16 */\n@-moz-keyframes fadein {\n from {\n opacity: 0;\n }\n to {\n opacity: 1;\n }\n}\n/* Safari, Chrome and Opera > 12.1 */\n@-webkit-keyframes fadein {\n from {\n opacity: 0;\n }\n to {\n opacity: 1;\n }\n}\n/* Internet Explorer */\n@-ms-keyframes fadein {\n from {\n opacity: 0;\n }\n to {\n opacity: 1;\n }\n}\n@keyframes floatAnimation {\n 0% {\n transform: translateY(0);\n }\n 100% {\n transform: translateY(-20px);\n }\n}\n@keyframes bottomSheet {\n from {\n transform: translate(0, 100%);\n }\n to {\n transform: translate(0, 0);\n }\n}\n@keyframes slideRightToLeft {\n from {\n transform: translateX(100%);\n }\n to {\n transform: translateX(0%);\n }\n}\n.container {\n padding: 0.75rem 1rem;\n border-bottom: 1px solid #eff2f5;\n}\n.container .image {\n width: 5rem;\n height: 2.8125rem;\n border-radius: 0.475rem;\n object-fit: cover;\n overflow: hidden;\n}\n.container .data {\n flex: 1;\n max-width: 100%;\n overflow: hidden;\n text-overflow: ellipsis;\n}\n.container .data .name {\n font-weight: 500;\n line-height: 1;\n margin-bottom: 0.5rem;\n}\n.container .data .price {\n margin-top: 0.5rem;\n line-height: 1.5rem;\n}","/* Text */\n/* Input */\n/* Button */\n/* TABLE */\n/* Modal */\n/* Bagde */\n/* Menu */\n/* Notification */\n/* BRANDS */\n/* Border radius */\n/* Fonts */\n/* WIDTH */\n/* HEIGHT */\n/* CARD */\n/* TABLE */\n/* MODAL */\n/* BADGE */\n/* Menu */\n/* Input */\n/* EDITOR */\n/* HEADER */\n/* Z-INDEX */\n/* SIZES */\n/* SHADOW */\n/**/\n/* BUTTON */\n/* TEXT */\n/* RESPONSIVE */\n@keyframes flexWide {\n from {\n flex: 0;\n }\n to {\n flex: 1;\n }\n}\n@keyframes slidein {\n from {\n transform: translateX(0%);\n }\n to {\n transform: translateX(-100%);\n }\n}\n@keyframes fadeInOut {\n 0% {\n opacity: 0.5;\n }\n 50% {\n opacity: 1;\n }\n 100% {\n opacity: 0.5;\n }\n}\n@keyframes heightAnimation {\n 0% {\n height: 0%;\n }\n 100% {\n height: 100%;\n }\n}\n@keyframes fadein {\n from {\n opacity: 0;\n }\n to {\n opacity: 1;\n }\n}\n/* Firefox < 16 */\n@-moz-keyframes fadein {\n from {\n opacity: 0;\n }\n to {\n opacity: 1;\n }\n}\n/* Safari, Chrome and Opera > 12.1 */\n@-webkit-keyframes fadein {\n from {\n opacity: 0;\n }\n to {\n opacity: 1;\n }\n}\n/* Internet Explorer */\n@-ms-keyframes fadein {\n from {\n opacity: 0;\n }\n to {\n opacity: 1;\n }\n}\n@keyframes floatAnimation {\n 0% {\n transform: translateY(0);\n }\n 100% {\n transform: translateY(-20px);\n }\n}\n@keyframes bottomSheet {\n from {\n transform: translate(0, 100%);\n }\n to {\n transform: translate(0, 0);\n }\n}\n@keyframes slideRightToLeft {\n from {\n transform: translateX(100%);\n }\n to {\n transform: translateX(0%);\n }\n}\n.branches {\n background-color: #ffffff;\n}\n.branches .list {\n padding-bottom: 2rem;\n display: grid;\n gap: 2rem;\n grid-auto-rows: 1fr;\n grid-template-columns: repeat(auto-fit, minmax(200px, 1fr));\n}\n@media (max-width: 580px) {\n .branches .list {\n grid-template-columns: 1fr;\n }\n}\n.branches .list .name {\n text-align: center;\n font-weight: 500;\n font-size: 1.25rem;\n margin: 0;\n}","/* Text */\n/* Input */\n/* Button */\n/* TABLE */\n/* Modal */\n/* Bagde */\n/* Menu */\n/* Notification */\n/* BRANDS */\n/* Border radius */\n/* Fonts */\n/* WIDTH */\n/* HEIGHT */\n/* CARD */\n/* TABLE */\n/* MODAL */\n/* BADGE */\n/* Menu */\n/* Input */\n/* EDITOR */\n/* HEADER */\n/* Z-INDEX */\n/* SIZES */\n/* SHADOW */\n/**/\n/* BUTTON */\n/* TEXT */\n/* RESPONSIVE */\n@keyframes flexWide {\n from {\n flex: 0;\n }\n to {\n flex: 1;\n }\n}\n@keyframes slidein {\n from {\n transform: translateX(0%);\n }\n to {\n transform: translateX(-100%);\n }\n}\n@keyframes fadeInOut {\n 0% {\n opacity: 0.5;\n }\n 50% {\n opacity: 1;\n }\n 100% {\n opacity: 0.5;\n }\n}\n@keyframes heightAnimation {\n 0% {\n height: 0%;\n }\n 100% {\n height: 100%;\n }\n}\n@keyframes fadein {\n from {\n opacity: 0;\n }\n to {\n opacity: 1;\n }\n}\n/* Firefox < 16 */\n@-moz-keyframes fadein {\n from {\n opacity: 0;\n }\n to {\n opacity: 1;\n }\n}\n/* Safari, Chrome and Opera > 12.1 */\n@-webkit-keyframes fadein {\n from {\n opacity: 0;\n }\n to {\n opacity: 1;\n }\n}\n/* Internet Explorer */\n@-ms-keyframes fadein {\n from {\n opacity: 0;\n }\n to {\n opacity: 1;\n }\n}\n@keyframes floatAnimation {\n 0% {\n transform: translateY(0);\n }\n 100% {\n transform: translateY(-20px);\n }\n}\n@keyframes bottomSheet {\n from {\n transform: translate(0, 100%);\n }\n to {\n transform: translate(0, 0);\n }\n}\n@keyframes slideRightToLeft {\n from {\n transform: translateX(100%);\n }\n to {\n transform: translateX(0%);\n }\n}\n.container {\n display: flex;\n flex-direction: column;\n align-items: center;\n}\n.container .intervals {\n margin-bottom: 2.5rem;\n display: flex;\n gap: 1rem;\n background-color: #ffffff;\n box-shadow: 0px 10px 35px 0px rgba(56, 71, 109, 0.075);\n padding: 1rem 1.5rem;\n border-radius: 3.75rem;\n}\n.container .intervals .interval {\n background-color: transparent;\n border-radius: 3.75rem;\n padding: 0.75rem 1.5rem;\n cursor: pointer;\n transition: background-color ease-in-out 0.2s, color ease-in-out 0.2s;\n text-transform: capitalize;\n}\n.container .intervals .interval.active {\n background-color: var(--sorocraft-color-primary, #2d3436);\n color: #ffffff;\n}\n.container .plans {\n gap: 2rem;\n width: 100%;\n display: grid;\n grid-template-columns: repeat(auto-fit, minmax(300px, 1fr));\n margin-bottom: 6rem;\n}\n.container .plans .plan {\n height: 100%;\n transition: transform 500ms cubic-bezier(0.7, 0, 0, 1), box-shadow 500ms cubic-bezier(0.7, 0, 0, 1);\n border-radius: 0.85rem;\n}\n.container .plans .plan > div {\n height: 100%;\n}\n.container .plans .plan .title {\n font-size: 1.75rem;\n font-weight: 600;\n padding-bottom: 1rem;\n border-bottom: 1px dashed #e4e6ef;\n}\n.container .plans .plan .price {\n font-size: 2rem;\n margin-top: 1rem;\n height: 3.75rem;\n}\n.container .plans .plan .price .originalPrice {\n text-decoration: line-through;\n font-size: 1.5rem;\n font-weight: 600;\n}\n.container .plans .plan .price .discountedPrice {\n color: var(--sorocraft-color-primary, #2d3436);\n font-weight: 600;\n}\n.container .plans .plan .action {\n margin: 2rem 0;\n}\n.container .plans .plan .benefits .benefit {\n padding: 0.5rem 0;\n display: flex;\n align-items: center;\n gap: 1rem;\n}\n.container .plans .plan .benefits .benefit i {\n margin-right: 1rem;\n}\n.container .plans .plan:hover {\n box-shadow: 0px 100px 50px -40px rgba(0, 0, 0, 0.1), 0px 60px 100px 0px rgba(50, 50, 93, 0.25);\n transform: scale(1.018);\n color: #181c32;\n}"]}
|
|
1
|
+
{"version":3,"sources":["PublicMenu.module.scss","Header.module.scss","Languages.module.scss","Products.module.scss","ProductsListItem.module.scss","ProductsGridItem.module.scss","ProductDetails.module.scss","Quantity.module.scss","ProductInOrder.module.scss","ProductVariants.module.scss","ProductAddons.module.scss","FloatingOrdersButton.module.scss","OrderStepper.module.scss","OrderDrawer.module.scss","OrderListItem.module.scss","ProductQuantity.module.scss","CustomerAddress.module.scss","Branches.module.scss","Auth.module.scss","Pricing.module.scss"],"names":[],"mappings":"AA4BA,6CACE,GACE,MACF,CACA,GACE,MACF,CACF,CACA,4CACE,GACE,uBACF,CACA,GACE,2BACF,CACF,CACA,8CACE,GACE,UACF,CACA,IACE,SACF,CACA,GACE,UACF,CACF,CACA,oDACE,GACE,QACF,CACA,GACE,WACF,CACF,CACA,2CACE,GACE,SACF,CACA,GACE,SACF,CACF,CA4BA,mDACE,GACE,uBACF,CACA,GACE,2BACF,CACF,CACA,gDACE,GACE,0BACF,CACA,GACE,sBACF,CACF,CACA,qDACE,GACE,0BACF,CACA,GACE,uBACF,CACF,CACA,6CACE,GACE,sBACF,CACA,GACE,uBACF,CACF,CACA,oCACE,qBAAyB,CAEzB,mBAAoB,CADpB,iBAEF,CACA,0EAGE,eAAiB,CAFjB,uBAAyB,CACzB,iBAEF,CACA,sEACE,YACF,CACA,+EACE,SACF,CACA,yEAOE,qBAAyB,CAHzB,MAAO,CAHP,cAAe,CAOf,kBAAoB,CANpB,eAAgB,CAGhB,OAAQ,CACR,KAAM,CAHN,SAMF,CACA,qEAME,aAAc,CALd,aAAc,CAId,gBAAkB,CADlB,sBAAuB,CADvB,iBAAkB,CADlB,UAKF,CCvIA,yCACE,GACE,MACF,CACA,GACE,MACF,CACF,CACA,wCACE,GACE,uBACF,CACA,GACE,2BACF,CACF,CACA,0CACE,GACE,UACF,CACA,IACE,SACF,CACA,GACE,UACF,CACF,CACA,gDACE,GACE,QACF,CACA,GACE,WACF,CACF,CACA,uCACE,GACE,SACF,CACA,GACE,SACF,CACF,CA4BA,+CACE,GACE,uBACF,CACA,GACE,2BACF,CACF,CACA,4CACE,GACE,0BACF,CACA,GACE,sBACF,CACF,CACA,iDACE,GACE,0BACF,CACA,GACE,uBACF,CACF,CACA,yCACE,GACE,sBACF,CACA,GACE,uBACF,CACF,CACA,gCAEE,cAAe,CAEf,kBAAmB,CADnB,iBAAkB,CAFlB,UAIF,CACA,4DAEE,WAAY,CACZ,mBAAiB,CAAjB,gBAAiB,CAFjB,UAGF,CACA,8DAWE,oBAAqB,CAFrB,+DAA2E,CAN3E,QAAS,CAKT,UAAc,CAEd,YAAa,CANb,MAAO,CAGP,sBAAuB,CANvB,iBAAkB,CAIlB,OAAQ,CAHR,KAAM,CAIN,UAMF,CACA,yFAIE,iBAAkB,CAHlB,aAAc,CAEd,WAAY,CAGZ,mBAAiB,CAAjB,gBAAiB,CADjB,eAAgB,CAHhB,UAKF,CACA,yFAEE,eAAgB,CADhB,uBAEF,CACA,oHACE,gBAAiB,CACjB,QAAS,CACT,cAAe,CACf,eAAgB,CAChB,sBACF,CACA,uHACE,UAAc,CACd,eACF,CACA,yJAEE,YAAa,CACb,oBAAqB,CACrB,2BAA4B,CAH5B,mBAAoB,CAIpB,eAAgB,CAChB,sBAAuB,CACvB,kBACF,CACA,2FAGE,QAAS,CAET,WAAY,CACZ,cAAgB,CALhB,iBAAkB,CAGlB,OAAQ,CAGR,oBAAqB,CALrB,KAMF,CACA,8GAGE,sBAAuB,CAFvB,QAAS,CACT,OAEF,CACA,6DAEE,eAAgB,CAGhB,YAAa,CACb,sBAAuB,CAHvB,MAAO,CAFP,iBAAkB,CAGlB,OAGF,CACA,4DAEE,qBAAyB,CACzB,oBAAqB,CACrB,qCAAgD,CAHhD,qBAAwB,CAIxB,sBAAkB,CAAlB,iBACF,CACA,+FAEE,kBAAmB,CACnB,cAAe,CAFf,YAAa,CAGb,aACF,CACA,sIACE,WACF,CCnMA,4CACE,GACE,MACF,CACA,GACE,MACF,CACF,CACA,2CACE,GACE,uBACF,CACA,GACE,2BACF,CACF,CACA,6CACE,GACE,UACF,CACA,IACE,SACF,CACA,GACE,UACF,CACF,CACA,mDACE,GACE,QACF,CACA,GACE,WACF,CACF,CACA,0CACE,GACE,SACF,CACA,GACE,SACF,CACF,CA4BA,kDACE,GACE,uBACF,CACA,GACE,2BACF,CACF,CACA,+CACE,GACE,0BACF,CACA,GACE,sBACF,CACF,CACA,oDACE,GACE,0BACF,CACA,GACE,uBACF,CACF,CACA,4CACE,GACE,sBACF,CACA,GACE,uBACF,CACF,CACA,mCACE,iBAAkB,CAElB,UAAW,CADX,QAAS,CAET,SACF,CACA,4EAQE,kBAAmB,CAJnB,qBAAyB,CAQzB,qBAAyB,CAPzB,iBAAkB,CAIlB,cAAe,CAHf,YAAa,CAHb,eAAgB,CAFhB,aAAc,CAMd,sBAAuB,CAIvB,mBAAiB,CAAjB,gBAAiB,CADjB,eAAgB,CARhB,YAWF,CACA,oEAGE,oBAAqB,CADrB,aAAc,CAGd,eAAgB,CAJhB,cAAe,CAGf,OAEF,CACA,oGAQE,kBAAmB,CAJnB,qBAAyB,CAQzB,qBAAyB,CAPzB,iBAAkB,CAIlB,cAAe,CAHf,YAAa,CAHb,eAAgB,CAFhB,aAAc,CAMd,sBAAuB,CAIvB,mBAAiB,CAAjB,gBAAiB,CADjB,eAAgB,CAGhB,0BAA2B,CAC3B,wBAA0B,CAZ1B,YAaF,CACA,iHACE,oBACF,CACA,iHACE,oBACF,CACA,iHACE,oBACF,CACA,iHACE,oBACF,CACA,iHACE,oBACF,CACA,iHACE,oBACF,CACA,iHACE,oBACF,CACA,iHACE,oBACF,CACA,kHACE,oBACF,CACA,mGACE,sBAAkB,CAAlB,iBACF,CACA,mIACE,uBACF,CC7MA,kCACE,YACF,CAIA,gIACE,mBACF,CACA,mEAIE,iBAAkB,CAFlB,gBAAiB,CACjB,sBAAuB,CAEvB,sBAAuB,CAJvB,UAKF,CACA,oGACE,gBAAiB,CACjB,kBAAmB,CAEnB,iBAAkB,CAClB,sBAAuB,CAFvB,UAGF,CACA,gGACE,UACF,CCGA,mDACE,GACE,MACF,CACA,GACE,MACF,CACF,CACA,kDACE,GACE,uBACF,CACA,GACE,2BACF,CACF,CACA,oDACE,GACE,UACF,CACA,IACE,SACF,CACA,GACE,UACF,CACF,CACA,0DACE,GACE,QACF,CACA,GACE,WACF,CACF,CACA,iDACE,GACE,SACF,CACA,GACE,SACF,CACF,CA4BA,yDACE,GACE,uBACF,CACA,GACE,2BACF,CACF,CACA,sDACE,GACE,0BACF,CACA,GACE,sBACF,CACF,CACA,2DACE,GACE,0BACF,CACA,GACE,uBACF,CACF,CACA,mDACE,GACE,sBACF,CACA,GACE,uBACF,CACF,CACA,0CAEE,+BAAgC,CAGhC,eAAgB,CAFhB,gBAAiB,CACjB,iBAAkB,CAHlB,UAKF,CACA,qFACE,cACF,CACA,+EACE,MAAO,CAEP,eAAgB,CADhB,oBAEF,CACA,oHACE,cAAe,CACf,eAAgB,CAChB,QAAS,CACT,cAAe,CACf,eACF,CACA,2HAEE,YAAa,CACb,oBAAqB,CACrB,2BAA4B,CAI5B,aAAc,CAPd,mBAAoB,CAQpB,iBAAmB,CACnB,mBAAoB,CACpB,cAAe,CANf,eAAgB,CAChB,sBAAuB,CACvB,kBAKF,CACA,qHACE,kBACF,CACA,gFAGE,qBAAuB,CADvB,eAAgB,CAEhB,mBAAiB,CAAjB,gBAAiB,CACjB,eAAgB,CAJhB,WAKF,CACA,4HAEE,sBACF,CACA,qFAEE,kBAAmB,CADnB,iBAAkB,CAGlB,YAAc,CADd,WAEF,CACA,sHACE,eACF,CACA,2JAEE,mBAAqB,CADrB,kBAEF,CCnKA,mDACE,GACE,MACF,CACA,GACE,MACF,CACF,CACA,kDACE,GACE,uBACF,CACA,GACE,2BACF,CACF,CACA,oDACE,GACE,UACF,CACA,IACE,SACF,CACA,GACE,UACF,CACF,CACA,0DACE,GACE,QACF,CACA,GACE,WACF,CACF,CACA,iDACE,GACE,SACF,CACA,GACE,SACF,CACF,CA4BA,yDACE,GACE,uBACF,CACA,GACE,2BACF,CACF,CACA,sDACE,GACE,0BACF,CACA,GACE,sBACF,CACF,CACA,2DACE,GACE,0BACF,CACA,GACE,uBACF,CACF,CACA,mDACE,GACE,sBACF,CACA,GACE,uBACF,CACF,CACA,0CAEE,+BAAgC,CAChC,gBAAiB,CAFjB,UAGF,CACA,kFAEE,eAAgB,CADhB,iBAAkB,CAElB,UAGF,CACA,6HACE,cACF,CACA,uHAOE,4BAA6B,CAC7B,mFAAkG,CAKlG,qBAAuB,CAJvB,YAAa,CACb,qBAAsB,CAJtB,WAAY,CAHZ,MAAO,CAFP,iBAAkB,CAClB,KAAM,CAEN,OAAQ,CAOR,wBAAyB,CACzB,eAAgB,CAEhB,YAAa,CATb,UAUF,CACA,uHACE,eAAgB,CAChB,8BACF,CACA,4JAME,UAAc,CALd,cAAe,CACf,eAAgB,CAChB,QAAS,CACT,cAAe,CACf,eAEF,CACA,mKAEE,YAAa,CACb,oBAAqB,CACrB,2BAA4B,CAI5B,wBAA+B,CAP/B,mBAAoB,CAQpB,iBAAmB,CACnB,mBAAoB,CACpB,cAAe,CANf,eAAgB,CAChB,sBAAuB,CACvB,kBAKF,CACA,6JAEE,UAAc,CADd,kBAEF,CACA,iIAIE,qBAAuB,CAFvB,eAAgB,CAChB,iBAAkB,CAFlB,UAIF,CACA,uKAKE,WAAY,CAFZ,MAAO,CAGP,mBAAiB,CAAjB,gBAAiB,CALjB,iBAAkB,CAClB,KAAM,CAEN,UAGF,CACA,mNAEE,sBACF,CACA,8BACE,iIACE,iBAAkB,CAClB,aACF,CACF,CACA,kCACE,iIACE,kBACF,CACF,CACA,6HAEE,kBAAmB,CADnB,iBAAkB,CAGlB,WAAa,CADb,SAEF,CACA,yHACE,kBACF,CACA,8JACE,sBAAuB,CACvB,SACF,CACA,idAEE,aACF,CACA,wOACE,kBACF,CACA,ydAEE,uBACF,CCtNA,iDACE,GACE,MACF,CACA,GACE,MACF,CACF,CACA,gDACE,GACE,uBACF,CACA,GACE,2BACF,CACF,CACA,kDACE,GACE,UACF,CACA,IACE,SACF,CACA,GACE,UACF,CACF,CACA,wDACE,GACE,QACF,CACA,GACE,WACF,CACF,CACA,+CACE,GACE,SACF,CACA,GACE,SACF,CACF,CA4BA,uDACE,GACE,uBACF,CACA,GACE,2BACF,CACF,CACA,oDACE,GACE,0BACF,CACA,GACE,sBACF,CACF,CACA,yDACE,GACE,0BACF,CACA,GACE,uBACF,CACF,CACA,iDACE,GACE,sBACF,CACA,GACE,uBACF,CACF,CACA,wCAME,kBAAmB,CAHnB,+BAAoC,CAEpC,YAAa,CAHb,OAAQ,CAKR,sBAAuB,CANvB,cAAe,CAGf,WAIF,CACA,8EAEE,gBAAiB,CADjB,iBAEF,CACA,kHAKE,aAAc,CAJd,gBAAiB,CACjB,cAAe,CAIf,mBAAiB,CAAjB,gBAAiB,CAFjB,eAAgB,CADhB,UAIF,CACA,oHAEE,cAAe,CAEf,eAAgB,CAHhB,wBAAyB,CAIzB,sBAAuB,CAFvB,UAGF,CACA,uJAEE,gBAAiB,CADjB,QAEF,CACA,wJACE,kBACF,CACA,yJACE,aACF,CACA,8JACE,aAAc,CACd,cAAe,CACf,mBAAoB,CACpB,eACF,CACA,oHAEE,+BAAgC,CADhC,4BAA6B,CAE7B,cAAe,CAEf,eAAgB,CAChB,sBAAuB,CAFvB,UAGF,CACA,kHACE,iBAAkB,CAElB,UAAW,CADX,QAEF,CACA,0HACE,wBACF,CACA,yBACE,wCACE,oBACF,CACF,CCtKA,2CACE,GACE,MACF,CACA,GACE,MACF,CACF,CACA,0CACE,GACE,uBACF,CACA,GACE,2BACF,CACF,CACA,4CACE,GACE,UACF,CACA,IACE,SACF,CACA,GACE,UACF,CACF,CACA,kDACE,GACE,QACF,CACA,GACE,WACF,CACF,CACA,yCACE,GACE,SACF,CACA,GACE,SACF,CACF,CA4BA,iDACE,GACE,uBACF,CACA,GACE,2BACF,CACF,CACA,8CACE,GACE,0BACF,CACA,GACE,sBACF,CACF,CACA,mDACE,GACE,0BACF,CACA,GACE,uBACF,CACF,CACA,2CACE,GACE,sBACF,CACA,GACE,uBACF,CACF,CACA,kCACE,6DAA+D,CAC/D,qBACF,CACA,iJAIE,kBAAmB,CAGnB,4CAA8C,CAJ9C,YAAa,CAEb,sBAAuB,CACvB,kBAAmB,CAJnB,iBAMF,CACA,yEACE,cACF,CACA,kFACE,6CACF,CACA,2GACE,kBACF,CACA,4DAEE,uBAAyB,CADzB,sBAEF,CACA,qMAGE,uBAAyB,CADzB,YAEF,CACA,4DAEE,wBAA0B,CAD1B,qBAEF,CACA,qMAGE,wBAA0B,CAD1B,qBAEF,CACA,4DAEE,wBAA0B,CAD1B,uBAEF,CACA,qMAGE,wBAA0B,CAD1B,qBAEF,CClLA,4EACE,eACF,CC0BA,kDACE,GACE,MACF,CACA,GACE,MACF,CACF,CACA,iDACE,GACE,uBACF,CACA,GACE,2BACF,CACF,CACA,mDACE,GACE,UACF,CACA,IACE,SACF,CACA,GACE,UACF,CACF,CACA,yDACE,GACE,QACF,CACA,GACE,WACF,CACF,CACA,gDACE,GACE,SACF,CACA,GACE,SACF,CACF,CA4BA,wDACE,GACE,uBACF,CACA,GACE,2BACF,CACF,CACA,qDACE,GACE,0BACF,CACA,GACE,sBACF,CACF,CACA,0DACE,GACE,0BACF,CACA,GACE,uBACF,CACF,CACA,kDACE,GACE,sBACF,CACA,GACE,uBACF,CACF,CACA,yCAEE,YAAa,CADb,mBAAoB,CAEpB,qCACF,CACA,sFACE,eAAgB,CAChB,mBACF,CACA,gFACE,cACF,CACA,+EACE,4BACF,CCpHA,gDACE,GACE,MACF,CACA,GACE,MACF,CACF,CACA,+CACE,GACE,uBACF,CACA,GACE,2BACF,CACF,CACA,iDACE,GACE,UACF,CACA,IACE,SACF,CACA,GACE,UACF,CACF,CACA,uDACE,GACE,QACF,CACA,GACE,WACF,CACF,CACA,8CACE,GACE,SACF,CACA,GACE,SACF,CACF,CA4BA,sDACE,GACE,uBACF,CACA,GACE,2BACF,CACF,CACA,mDACE,GACE,0BACF,CACA,GACE,sBACF,CACF,CACA,wDACE,GACE,0BACF,CACA,GACE,uBACF,CACF,CACA,gDACE,GACE,sBACF,CACA,GACE,uBACF,CACF,CACA,uCAEE,YAAa,CADb,mBAAoB,CAEpB,qCACF,CACA,2EACE,4BACF,CACA,iFACE,eAAgB,CAChB,mBACF,CCjHA,uDACE,GACE,MACF,CACA,GACE,MACF,CACF,CACA,sDACE,GACE,uBACF,CACA,GACE,2BACF,CACF,CACA,wDACE,GACE,UACF,CACA,IACE,SACF,CACA,GACE,UACF,CACF,CACA,8DACE,GACE,QACF,CACA,GACE,WACF,CACF,CACA,qDACE,GACE,SACF,CACA,GACE,SACF,CACF,CA4BA,6DACE,GACE,uBACF,CACA,GACE,2BACF,CACF,CACA,0DACE,GACE,0BACF,CACA,GACE,sBACF,CACF,CACA,+DACE,GACE,0BACF,CACA,GACE,uBACF,CACF,CACA,uDACE,GACE,sBACF,CACA,GACE,uBACF,CACF,CACA,8CAEE,QAAS,CAIT,YAAa,CACb,sBAAuB,CAJvB,MAAO,CAKP,YAAa,CAPb,cAAe,CAGf,OAAQ,CACR,UAIF,CACA,0FAIE,sBAAyB,CADzB,6DAA2B,CAE3B,mDAAyD,CAJzD,eAAgB,CAChB,UAIF,CCtHA,+CACE,GACE,MACF,CACA,GACE,MACF,CACF,CACA,8CACE,GACE,uBACF,CACA,GACE,2BACF,CACF,CACA,gDACE,GACE,UACF,CACA,IACE,SACF,CACA,GACE,UACF,CACF,CACA,sDACE,GACE,QACF,CACA,GACE,WACF,CACF,CACA,6CACE,GACE,SACF,CACA,GACE,SACF,CACF,CA4BA,qDACE,GACE,uBACF,CACA,GACE,2BACF,CACF,CACA,kDACE,GACE,0BACF,CACA,GACE,sBACF,CACF,CACA,uDACE,GACE,0BACF,CACA,GACE,uBACF,CACF,CACA,+CACE,GACE,sBACF,CACA,GACE,uBACF,CACF,CACA,sCAGE,uDAAyD,CAEzD,oBAAqB,CACrB,UAAc,CALd,mBAAoB,CAGpB,kBAAoB,CAFpB,UAKF,CACA,wEASE,kBAAmB,CANnB,qBAAyB,CACzB,iBAAkB,CAOlB,aAAc,CAHd,YAAa,CAHb,gBAAkB,CAClB,eAAgB,CAJhB,aAAc,CAQd,sBAAuB,CAHvB,gBAAiB,CANjB,YAWF,CACA,6EACE,eACF,CACA,6EAEE,eAAgB,CADhB,cAEF,CACA,6EACE,cACF,CACA,2EACE,oCAAyC,CACzC,kBACF,CACA,kHACE,eACF,CC3IA,8CACE,GACE,MACF,CACA,GACE,MACF,CACF,CACA,6CACE,GACE,uBACF,CACA,GACE,2BACF,CACF,CACA,+CACE,GACE,UACF,CACA,IACE,SACF,CACA,GACE,UACF,CACF,CACA,qDACE,GACE,QACF,CACA,GACE,WACF,CACF,CACA,4CACE,GACE,SACF,CACA,GACE,SACF,CACF,CA4BA,oDACE,GACE,uBACF,CACA,GACE,2BACF,CACF,CACA,iDACE,GACE,0BACF,CACA,GACE,sBACF,CACF,CACA,sDACE,GACE,0BACF,CACA,GACE,uBACF,CACF,CACA,8CACE,GACE,sBACF,CACA,GACE,uBACF,CACF,CACA,qCAME,kBAAmB,CAHnB,+BAAoC,CAEpC,YAAa,CAHb,OAAQ,CAKR,wBAAyB,CANzB,cAAe,CAGf,WAIF,CACA,wEAEE,WAAY,CADZ,cAEF,CAIA,wOACE,cACF,CAEA,wEACE,gCACF,CC5HA,gDACE,GACE,MACF,CACA,GACE,MACF,CACF,CACA,+CACE,GACE,uBACF,CACA,GACE,2BACF,CACF,CACA,iDACE,GACE,UACF,CACA,IACE,SACF,CACA,GACE,UACF,CACF,CACA,uDACE,GACE,QACF,CACA,GACE,WACF,CACF,CACA,8CACE,GACE,SACF,CACA,GACE,SACF,CACF,CA4BA,sDACE,GACE,uBACF,CACA,GACE,2BACF,CACF,CACA,mDACE,GACE,0BACF,CACA,GACE,sBACF,CACF,CACA,wDACE,GACE,0BACF,CACA,GACE,uBACF,CACF,CACA,gDACE,GACE,sBACF,CACA,GACE,uBACF,CACF,CACA,uCAEE,+BAAgC,CADhC,mBAEF,CACA,0EAGE,qBAAuB,CADvB,gBAAiB,CAEjB,mBAAiB,CAAjB,gBAAiB,CACjB,eAAgB,CAJhB,UAKF,CACA,yEACE,MAAO,CACP,cAAe,CACf,eAAgB,CAChB,sBACF,CACA,2GACE,eAAgB,CAChB,aAAc,CACd,mBACF,CACA,4GAEE,kBAAmB,CADnB,gBAEF,CC/HA,kDACE,GACE,MACF,CACA,GACE,MACF,CACF,CACA,iDACE,GACE,uBACF,CACA,GACE,2BACF,CACF,CACA,mDACE,GACE,UACF,CACA,IACE,SACF,CACA,GACE,UACF,CACF,CACA,yDACE,GACE,QACF,CACA,GACE,WACF,CACF,CACA,gDACE,GACE,SACF,CACA,GACE,SACF,CACF,CA4BA,wDACE,GACE,uBACF,CACA,GACE,2BACF,CACF,CACA,qDACE,GACE,0BACF,CACA,GACE,sBACF,CACF,CACA,0DACE,GACE,0BACF,CACA,GACE,uBACF,CACF,CACA,kDACE,GACE,sBACF,CACA,GACE,uBACF,CACF,CACA,wCAUE,kBAAmB,CAPnB,wBAAyB,CAEzB,iBAAkB,CADlB,aAAc,CAKd,YAAa,CAHb,iBAAmB,CACnB,eAAgB,CALhB,WAAY,CASZ,sBAAuB,CAHvB,gBAAiB,CAPjB,UAWF,CC9IA,yCAGE,cAAe,CAFf,YAAa,CACb,UAEF,CCwBA,2CACE,GACE,MACF,CACA,GACE,MACF,CACF,CACA,0CACE,GACE,uBACF,CACA,GACE,2BACF,CACF,CACA,4CACE,GACE,UACF,CACA,IACE,SACF,CACA,GACE,UACF,CACF,CACA,kDACE,GACE,QACF,CACA,GACE,WACF,CACF,CACA,yCACE,GACE,SACF,CACA,GACE,SACF,CACF,CA4BA,iDACE,GACE,uBACF,CACA,GACE,2BACF,CACF,CACA,8CACE,GACE,0BACF,CACA,GACE,sBACF,CACF,CACA,mDACE,GACE,0BACF,CACA,GACE,uBACF,CACF,CACA,2CACE,GACE,sBACF,CACA,GACE,uBACF,CACF,CACA,iCACE,qBACF,CACA,8DAEE,YAAa,CACb,QAAS,CACT,kBAAmB,CACnB,wDAA2D,CAJ3D,mBAKF,CACA,yBACE,8DACE,yBACF,CACF,CACA,2FAGE,iBAAkB,CADlB,eAAgB,CAEhB,QAAS,CAHT,iBAIF,CC1HA,uCACE,GACE,MACF,CACA,GACE,MACF,CACF,CACA,sCACE,GACE,uBACF,CACA,GACE,2BACF,CACF,CACA,wCACE,GACE,UACF,CACA,IACE,SACF,CACA,GACE,UACF,CACF,CACA,8CACE,GACE,QACF,CACA,GACE,WACF,CACF,CACA,qCACE,GACE,SACF,CACA,GACE,SACF,CACF,CA4BA,6CACE,GACE,uBACF,CACA,GACE,2BACF,CACF,CACA,0CACE,GACE,0BACF,CACA,GACE,sBACF,CACF,CACA,+CACE,GACE,0BACF,CACA,GACE,uBACF,CACF,CACA,uCACE,GACE,sBACF,CACA,GACE,uBACF,CACF,CACA,4BAEE,WAAY,CADZ,cAEF,CACA,4DACE,gBACF,CACA,sDAIE,aAAc,CAHd,iBAAmB,CACnB,gBAAiB,CACjB,iBAAkB,CAElB,UACF,CACA,wDACE,aACF,CCtHA,0CACE,GACE,MACF,CACA,GACE,MACF,CACF,CACA,yCACE,GACE,uBACF,CACA,GACE,2BACF,CACF,CACA,2CACE,GACE,UACF,CACA,IACE,SACF,CACA,GACE,UACF,CACF,CACA,iDACE,GACE,QACF,CACA,GACE,WACF,CACF,CACA,wCACE,GACE,SACF,CACA,GACE,SACF,CACF,CA4BA,gDACE,GACE,uBACF,CACA,GACE,2BACF,CACF,CACA,6CACE,GACE,0BACF,CACA,GACE,sBACF,CACF,CACA,kDACE,GACE,0BACF,CACA,GACE,uBACF,CACF,CACA,0CACE,GACE,sBACF,CACA,GACE,uBACF,CACF,CACA,iCAGE,kBAAmB,CAFnB,YAAa,CACb,qBAEF,CACA,kEAIE,qBAAyB,CAGzB,qBAAsB,CAFtB,6CAAsD,CAHtD,YAAa,CACb,QAAS,CAFT,oBAAqB,CAKrB,mBAEF,CACA,kGACE,4BAA6B,CAC7B,qBAAsB,CAEtB,cAAe,CADf,qBAAuB,CAGvB,yBAA0B,CAD1B,iEAEF,CACA,+HACE,uDAAyD,CACzD,UACF,CACA,8DAGE,YAAa,CAFb,QAAS,CAGT,wDAA2D,CAC3D,kBAAmB,CAHnB,UAIF,CACA,0FAGE,oBAAsB,CAFtB,WAAY,CACZ,qFAEF,CACA,8FACE,WACF,CACA,uHAIE,gCAAiC,CAHjC,iBAAkB,CAClB,eAAgB,CAChB,mBAEF,CACA,uHACE,cAAe,CAEf,cAAe,CADf,eAEF,CACA,4JAEE,gBAAiB,CACjB,eAAgB,CAFhB,4BAGF,CACA,8JACE,4CAA8C,CAC9C,eACF,CACA,wHACE,aACF,CACA,yJAGE,kBAAmB,CADnB,YAAa,CAEb,QAAS,CAHT,eAIF,CACA,2JACE,iBACF,CACA,gGACE,8EAA8F,CAE9F,aAAc,CADd,sBAEF","file":"ui.css","sourcesContent":["/* Text */\n/* Input */\n/* Button */\n/* TABLE */\n/* Modal */\n/* Bagde */\n/* Menu */\n/* Notification */\n/* BRANDS */\n/* Border radius */\n/* Fonts */\n/* WIDTH */\n/* HEIGHT */\n/* CARD */\n/* TABLE */\n/* MODAL */\n/* BADGE */\n/* Menu */\n/* Input */\n/* EDITOR */\n/* HEADER */\n/* Z-INDEX */\n/* SIZES */\n/* SHADOW */\n/**/\n/* BUTTON */\n/* TEXT */\n/* RESPONSIVE */\n@keyframes flexWide {\n from {\n flex: 0;\n }\n to {\n flex: 1;\n }\n}\n@keyframes slidein {\n from {\n transform: translateX(0%);\n }\n to {\n transform: translateX(-100%);\n }\n}\n@keyframes fadeInOut {\n 0% {\n opacity: 0.5;\n }\n 50% {\n opacity: 1;\n }\n 100% {\n opacity: 0.5;\n }\n}\n@keyframes heightAnimation {\n 0% {\n height: 0%;\n }\n 100% {\n height: 100%;\n }\n}\n@keyframes fadein {\n from {\n opacity: 0;\n }\n to {\n opacity: 1;\n }\n}\n/* Firefox < 16 */\n@-moz-keyframes fadein {\n from {\n opacity: 0;\n }\n to {\n opacity: 1;\n }\n}\n/* Safari, Chrome and Opera > 12.1 */\n@-webkit-keyframes fadein {\n from {\n opacity: 0;\n }\n to {\n opacity: 1;\n }\n}\n/* Internet Explorer */\n@-ms-keyframes fadein {\n from {\n opacity: 0;\n }\n to {\n opacity: 1;\n }\n}\n@keyframes floatAnimation {\n 0% {\n transform: translateY(0);\n }\n 100% {\n transform: translateY(-20px);\n }\n}\n@keyframes bottomSheet {\n from {\n transform: translate(0, 100%);\n }\n to {\n transform: translate(0, 0);\n }\n}\n@keyframes slideRightToLeft {\n from {\n transform: translateX(100%);\n }\n to {\n transform: translateX(0%);\n }\n}\n@keyframes rotation {\n 0% {\n transform: rotate(0deg);\n }\n 100% {\n transform: rotate(360deg);\n }\n}\n.container {\n background-color: #ffffff;\n position: relative;\n padding-bottom: 4rem;\n}\n.container .description {\n padding: 1rem 1rem 0.5rem;\n text-align: center;\n font-size: 0.9rem;\n}\n.container .contact {\n padding: 1rem;\n}\n.container .contact svg path {\n fill: #ffffff;\n}\n.container .categories {\n max-width: 100%;\n position: sticky;\n z-index: 1;\n left: 0;\n right: 0;\n top: 0;\n background-color: #ffffff;\n padding: 0.5rem 1rem;\n}\n.container .footer {\n display: block;\n width: 100%;\n text-align: center;\n padding: 3rem 2rem 2rem;\n font-size: 0.75rem;\n color: #a1a5b7;\n}","/* Text */\n/* Input */\n/* Button */\n/* TABLE */\n/* Modal */\n/* Bagde */\n/* Menu */\n/* Notification */\n/* BRANDS */\n/* Border radius */\n/* Fonts */\n/* WIDTH */\n/* HEIGHT */\n/* CARD */\n/* TABLE */\n/* MODAL */\n/* BADGE */\n/* Menu */\n/* Input */\n/* EDITOR */\n/* HEADER */\n/* Z-INDEX */\n/* SIZES */\n/* SHADOW */\n/**/\n/* BUTTON */\n/* TEXT */\n/* RESPONSIVE */\n@keyframes flexWide {\n from {\n flex: 0;\n }\n to {\n flex: 1;\n }\n}\n@keyframes slidein {\n from {\n transform: translateX(0%);\n }\n to {\n transform: translateX(-100%);\n }\n}\n@keyframes fadeInOut {\n 0% {\n opacity: 0.5;\n }\n 50% {\n opacity: 1;\n }\n 100% {\n opacity: 0.5;\n }\n}\n@keyframes heightAnimation {\n 0% {\n height: 0%;\n }\n 100% {\n height: 100%;\n }\n}\n@keyframes fadein {\n from {\n opacity: 0;\n }\n to {\n opacity: 1;\n }\n}\n/* Firefox < 16 */\n@-moz-keyframes fadein {\n from {\n opacity: 0;\n }\n to {\n opacity: 1;\n }\n}\n/* Safari, Chrome and Opera > 12.1 */\n@-webkit-keyframes fadein {\n from {\n opacity: 0;\n }\n to {\n opacity: 1;\n }\n}\n/* Internet Explorer */\n@-ms-keyframes fadein {\n from {\n opacity: 0;\n }\n to {\n opacity: 1;\n }\n}\n@keyframes floatAnimation {\n 0% {\n transform: translateY(0);\n }\n 100% {\n transform: translateY(-20px);\n }\n}\n@keyframes bottomSheet {\n from {\n transform: translate(0, 100%);\n }\n to {\n transform: translate(0, 0);\n }\n}\n@keyframes slideRightToLeft {\n from {\n transform: translateX(100%);\n }\n to {\n transform: translateX(0%);\n }\n}\n@keyframes rotation {\n 0% {\n transform: rotate(0deg);\n }\n 100% {\n transform: rotate(360deg);\n }\n}\n.container {\n width: 100%;\n height: 12.5rem;\n position: relative;\n margin-bottom: 3rem;\n}\n.container .cover {\n width: 100%;\n height: 100%;\n object-fit: cover;\n}\n.container .content {\n position: absolute;\n top: 0;\n bottom: 0;\n left: 0;\n right: 0;\n width: 100%;\n padding: 1rem 1rem 2rem;\n color: #ffffff;\n background: linear-gradient(0deg, rgba(0, 0, 0, 0.5) 20%, transparent 100%);\n display: flex;\n align-items: flex-end;\n}\n.container .content .logo {\n display: block;\n width: 6rem;\n height: 6rem;\n border-radius: 50%;\n overflow: hidden;\n object-fit: cover;\n}\n.container .content .info {\n width: calc(100% - 7rem);\n overflow: hidden;\n}\n.container .content .info .name {\n font-size: 1.5rem;\n margin: 0;\n max-width: 100%;\n overflow: hidden;\n text-overflow: ellipsis;\n}\n.container .content .info .address {\n color: #ffffff;\n font-size: 0.9rem;\n}\n.container .content .info .address .addressText {\n display: -webkit-box;\n line-clamp: 2;\n -webkit-line-clamp: 2;\n -webkit-box-orient: vertical;\n overflow: hidden;\n text-overflow: ellipsis;\n white-space: normal;\n}\n.container .content .labels {\n position: absolute;\n top: 0;\n bottom: 0;\n right: 0;\n height: 100%;\n padding: 0.75rem;\n scrollbar-width: none;\n}\n.container .content .labels::-webkit-scrollbar {\n height: 0;\n width: 0;\n background: transparent;\n}\n.container .social {\n position: absolute;\n bottom: -1.25rem;\n left: 0;\n right: 0;\n display: flex;\n justify-content: center;\n}\n.container .links {\n padding: 0.25rem 0.75rem;\n background-color: #ffffff;\n border-radius: 1.5rem;\n box-shadow: 0px 0px 50px 0px rgba(0, 0, 0, 0.15);\n width: fit-content;\n}\n.container .links .wifiPassword {\n display: flex;\n align-items: center;\n cursor: pointer;\n padding: 0.5rem;\n}\n.container .links .wifiPassword .wifiPasswordIcon {\n height: 100%;\n}","/* Text */\n/* Input */\n/* Button */\n/* TABLE */\n/* Modal */\n/* Bagde */\n/* Menu */\n/* Notification */\n/* BRANDS */\n/* Border radius */\n/* Fonts */\n/* WIDTH */\n/* HEIGHT */\n/* CARD */\n/* TABLE */\n/* MODAL */\n/* BADGE */\n/* Menu */\n/* Input */\n/* EDITOR */\n/* HEADER */\n/* Z-INDEX */\n/* SIZES */\n/* SHADOW */\n/**/\n/* BUTTON */\n/* TEXT */\n/* RESPONSIVE */\n@keyframes flexWide {\n from {\n flex: 0;\n }\n to {\n flex: 1;\n }\n}\n@keyframes slidein {\n from {\n transform: translateX(0%);\n }\n to {\n transform: translateX(-100%);\n }\n}\n@keyframes fadeInOut {\n 0% {\n opacity: 0.5;\n }\n 50% {\n opacity: 1;\n }\n 100% {\n opacity: 0.5;\n }\n}\n@keyframes heightAnimation {\n 0% {\n height: 0%;\n }\n 100% {\n height: 100%;\n }\n}\n@keyframes fadein {\n from {\n opacity: 0;\n }\n to {\n opacity: 1;\n }\n}\n/* Firefox < 16 */\n@-moz-keyframes fadein {\n from {\n opacity: 0;\n }\n to {\n opacity: 1;\n }\n}\n/* Safari, Chrome and Opera > 12.1 */\n@-webkit-keyframes fadein {\n from {\n opacity: 0;\n }\n to {\n opacity: 1;\n }\n}\n/* Internet Explorer */\n@-ms-keyframes fadein {\n from {\n opacity: 0;\n }\n to {\n opacity: 1;\n }\n}\n@keyframes floatAnimation {\n 0% {\n transform: translateY(0);\n }\n 100% {\n transform: translateY(-20px);\n }\n}\n@keyframes bottomSheet {\n from {\n transform: translate(0, 100%);\n }\n to {\n transform: translate(0, 0);\n }\n}\n@keyframes slideRightToLeft {\n from {\n transform: translateX(100%);\n }\n to {\n transform: translateX(0%);\n }\n}\n@keyframes rotation {\n 0% {\n transform: rotate(0deg);\n }\n 100% {\n transform: rotate(360deg);\n }\n}\n.container {\n position: absolute;\n top: 1rem;\n right: 1rem;\n z-index: 1;\n}\n.container .currentLanguage {\n height: 1.5rem;\n width: 1.5rem;\n flex: 0 0 1.5rem;\n background-color: #ffffff;\n border-radius: 50%;\n display: flex;\n justify-content: center;\n align-items: center;\n cursor: pointer;\n overflow: hidden;\n object-fit: cover;\n border: 2px solid #ffffff;\n}\n.container .options {\n padding: 0 1rem;\n height: 1.5rem;\n border-radius: 1.5rem;\n width: 0;\n overflow: hidden;\n}\n.container .options .option {\n height: 1.5rem;\n width: 1.5rem;\n flex: 0 0 1.5rem;\n background-color: #ffffff;\n border-radius: 50%;\n display: flex;\n justify-content: center;\n align-items: center;\n cursor: pointer;\n overflow: hidden;\n object-fit: cover;\n border: 2px solid #ffffff;\n transform: translateX(500%);\n transition: transform 0.2s;\n}\n.container .options .option:nth-child(2) {\n transition-delay: 0.1s;\n}\n.container .options .option:nth-child(3) {\n transition-delay: 0.2s;\n}\n.container .options .option:nth-child(4) {\n transition-delay: 0.3s;\n}\n.container .options .option:nth-child(5) {\n transition-delay: 0.4s;\n}\n.container .options .option:nth-child(6) {\n transition-delay: 0.5s;\n}\n.container .options .option:nth-child(7) {\n transition-delay: 0.6s;\n}\n.container .options .option:nth-child(8) {\n transition-delay: 0.7s;\n}\n.container .options .option:nth-child(9) {\n transition-delay: 0.8s;\n}\n.container .options .option:nth-child(10) {\n transition-delay: 0.9s;\n}\n.container .options.isOpen {\n width: max-content;\n}\n.container .options.isOpen .option {\n transform: translateX(0%);\n}",".container {\n padding: 1rem;\n}\n.container .view {\n margin-bottom: -1rem;\n}\n.container .header {\n margin-bottom: -1rem;\n}\n.container .products {\n width: 100%;\n padding: 3rem 0 0;\n scroll-margin-top: 2rem;\n overflow-x: hidden;\n text-overflow: ellipsis;\n}\n.container .products .category {\n font-size: 1.5rem;\n margin-bottom: 1rem;\n width: 100%;\n overflow-x: hidden;\n text-overflow: ellipsis;\n}\n.container .products .list {\n width: 100%;\n}","/* Text */\n/* Input */\n/* Button */\n/* TABLE */\n/* Modal */\n/* Bagde */\n/* Menu */\n/* Notification */\n/* BRANDS */\n/* Border radius */\n/* Fonts */\n/* WIDTH */\n/* HEIGHT */\n/* CARD */\n/* TABLE */\n/* MODAL */\n/* BADGE */\n/* Menu */\n/* Input */\n/* EDITOR */\n/* HEADER */\n/* Z-INDEX */\n/* SIZES */\n/* SHADOW */\n/**/\n/* BUTTON */\n/* TEXT */\n/* RESPONSIVE */\n@keyframes flexWide {\n from {\n flex: 0;\n }\n to {\n flex: 1;\n }\n}\n@keyframes slidein {\n from {\n transform: translateX(0%);\n }\n to {\n transform: translateX(-100%);\n }\n}\n@keyframes fadeInOut {\n 0% {\n opacity: 0.5;\n }\n 50% {\n opacity: 1;\n }\n 100% {\n opacity: 0.5;\n }\n}\n@keyframes heightAnimation {\n 0% {\n height: 0%;\n }\n 100% {\n height: 100%;\n }\n}\n@keyframes fadein {\n from {\n opacity: 0;\n }\n to {\n opacity: 1;\n }\n}\n/* Firefox < 16 */\n@-moz-keyframes fadein {\n from {\n opacity: 0;\n }\n to {\n opacity: 1;\n }\n}\n/* Safari, Chrome and Opera > 12.1 */\n@-webkit-keyframes fadein {\n from {\n opacity: 0;\n }\n to {\n opacity: 1;\n }\n}\n/* Internet Explorer */\n@-ms-keyframes fadein {\n from {\n opacity: 0;\n }\n to {\n opacity: 1;\n }\n}\n@keyframes floatAnimation {\n 0% {\n transform: translateY(0);\n }\n 100% {\n transform: translateY(-20px);\n }\n}\n@keyframes bottomSheet {\n from {\n transform: translate(0, 100%);\n }\n to {\n transform: translate(0, 0);\n }\n}\n@keyframes slideRightToLeft {\n from {\n transform: translateX(100%);\n }\n to {\n transform: translateX(0%);\n }\n}\n@keyframes rotation {\n 0% {\n transform: rotate(0deg);\n }\n 100% {\n transform: rotate(360deg);\n }\n}\n.container {\n width: 100%;\n border-bottom: 1px solid #eff2f5;\n padding: 1.5rem 0;\n position: relative;\n overflow: hidden;\n}\n.container.isClickable {\n cursor: pointer;\n}\n.container .info {\n flex: 1;\n padding-right: 1.5rem;\n overflow: hidden;\n}\n.container .info .name {\n font-size: 1rem;\n font-weight: 600;\n margin: 0;\n max-width: 100%;\n overflow: hidden;\n}\n.container .info .description {\n display: -webkit-box;\n line-clamp: 2;\n -webkit-line-clamp: 2;\n -webkit-box-orient: vertical;\n overflow: hidden;\n text-overflow: ellipsis;\n white-space: normal;\n color: #a1a5b7;\n font-size: 0.875rem;\n line-height: 1.25rem;\n max-width: 100%;\n}\n.container .info .price {\n line-height: 1.5rem;\n}\n.container .image {\n width: 10rem;\n height: 5.625rem;\n border-radius: 0.475rem;\n object-fit: cover;\n overflow: hidden;\n}\n.container .image.notAvailable {\n -webkit-filter: grayscale(100%);\n filter: grayscale(100%);\n}\n.container .addToOrder {\n position: absolute;\n pointer-events: all;\n top: 1.75rem;\n right: 0.25rem;\n}\n.container.noImage .info {\n padding-right: 0;\n}\n.container.noImage .info .name {\n padding-right: 3rem;\n margin-bottom: 0.5rem;\n}","/* Text */\n/* Input */\n/* Button */\n/* TABLE */\n/* Modal */\n/* Bagde */\n/* Menu */\n/* Notification */\n/* BRANDS */\n/* Border radius */\n/* Fonts */\n/* WIDTH */\n/* HEIGHT */\n/* CARD */\n/* TABLE */\n/* MODAL */\n/* BADGE */\n/* Menu */\n/* Input */\n/* EDITOR */\n/* HEADER */\n/* Z-INDEX */\n/* SIZES */\n/* SHADOW */\n/**/\n/* BUTTON */\n/* TEXT */\n/* RESPONSIVE */\n@keyframes flexWide {\n from {\n flex: 0;\n }\n to {\n flex: 1;\n }\n}\n@keyframes slidein {\n from {\n transform: translateX(0%);\n }\n to {\n transform: translateX(-100%);\n }\n}\n@keyframes fadeInOut {\n 0% {\n opacity: 0.5;\n }\n 50% {\n opacity: 1;\n }\n 100% {\n opacity: 0.5;\n }\n}\n@keyframes heightAnimation {\n 0% {\n height: 0%;\n }\n 100% {\n height: 100%;\n }\n}\n@keyframes fadein {\n from {\n opacity: 0;\n }\n to {\n opacity: 1;\n }\n}\n/* Firefox < 16 */\n@-moz-keyframes fadein {\n from {\n opacity: 0;\n }\n to {\n opacity: 1;\n }\n}\n/* Safari, Chrome and Opera > 12.1 */\n@-webkit-keyframes fadein {\n from {\n opacity: 0;\n }\n to {\n opacity: 1;\n }\n}\n/* Internet Explorer */\n@-ms-keyframes fadein {\n from {\n opacity: 0;\n }\n to {\n opacity: 1;\n }\n}\n@keyframes floatAnimation {\n 0% {\n transform: translateY(0);\n }\n 100% {\n transform: translateY(-20px);\n }\n}\n@keyframes bottomSheet {\n from {\n transform: translate(0, 100%);\n }\n to {\n transform: translate(0, 0);\n }\n}\n@keyframes slideRightToLeft {\n from {\n transform: translateX(100%);\n }\n to {\n transform: translateX(0%);\n }\n}\n@keyframes rotation {\n 0% {\n transform: rotate(0deg);\n }\n 100% {\n transform: rotate(360deg);\n }\n}\n.container {\n width: 100%;\n border-bottom: 1px solid #eff2f5;\n padding: 1.5rem 0;\n}\n.container .content {\n position: relative;\n overflow: hidden;\n width: 100%;\n /* Use the modern aspect-ratio property where supported */\n /* Fallback: Use padding hack for older browsers */\n}\n.container .content.isClickable {\n cursor: pointer;\n}\n.container .content .info {\n position: absolute;\n top: 0;\n left: 0;\n inset: 0;\n width: 100%;\n height: 100%;\n background-color: transparent;\n background: linear-gradient(0deg, rgba(0, 0, 0, 0.5) 0%, rgba(0, 0, 0, 0.25) 30%, transparent 60%);\n display: flex;\n flex-direction: column;\n justify-content: flex-end;\n overflow: hidden;\n border-radius: 0.475rem;\n padding: 1rem;\n}\n.container .content .data {\n overflow: hidden;\n text-shadow: 0.5px 0.5px 5px #000000;\n}\n.container .content .data .name {\n font-size: 1rem;\n font-weight: 600;\n margin: 0;\n max-width: 100%;\n overflow: hidden;\n color: #ffffff;\n}\n.container .content .data .description {\n display: -webkit-box;\n line-clamp: 1;\n -webkit-line-clamp: 1;\n -webkit-box-orient: vertical;\n overflow: hidden;\n text-overflow: ellipsis;\n white-space: normal;\n color: rgba(255, 255, 255, 0.9);\n font-size: 0.875rem;\n line-height: 1.25rem;\n max-width: 100%;\n}\n.container .content .data .price {\n line-height: 1.5rem;\n color: #ffffff;\n}\n.container .content .imageContainer {\n width: 100%;\n overflow: hidden;\n position: relative;\n border-radius: 0.475rem;\n}\n.container .content .imageContainer .image {\n position: absolute;\n top: 0;\n left: 0;\n width: 100%;\n height: 100%;\n object-fit: cover;\n}\n.container .content .imageContainer .image.notAvailable {\n -webkit-filter: grayscale(100%);\n filter: grayscale(100%);\n}\n@supports (aspect-ratio: 16/9) {\n .container .content .imageContainer {\n aspect-ratio: 16/9;\n padding-top: 0;\n }\n}\n@supports not (aspect-ratio: 16/9) {\n .container .content .imageContainer {\n padding-top: 56.25%; /* 16:9 aspect ratio = 9 / 16 * 100 */\n }\n}\n.container .content .addToOrder {\n position: absolute;\n pointer-events: all;\n top: 0.5rem;\n right: 0.5rem;\n}\n.container .content.noImage {\n min-height: 4.75rem;\n}\n.container .content.noImage .info {\n background: transparent;\n padding: 0;\n}\n.container .content.noImage .info .data .name,\n.container .content.noImage .info .data .price {\n color: #181c32;\n}\n.container .content.noImage .info .data .name {\n padding-right: 3rem;\n}\n.container .content.noImage .info .data .description,\n.container .content.noImage .info .data .volume {\n color: #a1a5b7 !important;\n}","/* Text */\n/* Input */\n/* Button */\n/* TABLE */\n/* Modal */\n/* Bagde */\n/* Menu */\n/* Notification */\n/* BRANDS */\n/* Border radius */\n/* Fonts */\n/* WIDTH */\n/* HEIGHT */\n/* CARD */\n/* TABLE */\n/* MODAL */\n/* BADGE */\n/* Menu */\n/* Input */\n/* EDITOR */\n/* HEADER */\n/* Z-INDEX */\n/* SIZES */\n/* SHADOW */\n/**/\n/* BUTTON */\n/* TEXT */\n/* RESPONSIVE */\n@keyframes flexWide {\n from {\n flex: 0;\n }\n to {\n flex: 1;\n }\n}\n@keyframes slidein {\n from {\n transform: translateX(0%);\n }\n to {\n transform: translateX(-100%);\n }\n}\n@keyframes fadeInOut {\n 0% {\n opacity: 0.5;\n }\n 50% {\n opacity: 1;\n }\n 100% {\n opacity: 0.5;\n }\n}\n@keyframes heightAnimation {\n 0% {\n height: 0%;\n }\n 100% {\n height: 100%;\n }\n}\n@keyframes fadein {\n from {\n opacity: 0;\n }\n to {\n opacity: 1;\n }\n}\n/* Firefox < 16 */\n@-moz-keyframes fadein {\n from {\n opacity: 0;\n }\n to {\n opacity: 1;\n }\n}\n/* Safari, Chrome and Opera > 12.1 */\n@-webkit-keyframes fadein {\n from {\n opacity: 0;\n }\n to {\n opacity: 1;\n }\n}\n/* Internet Explorer */\n@-ms-keyframes fadein {\n from {\n opacity: 0;\n }\n to {\n opacity: 1;\n }\n}\n@keyframes floatAnimation {\n 0% {\n transform: translateY(0);\n }\n 100% {\n transform: translateY(-20px);\n }\n}\n@keyframes bottomSheet {\n from {\n transform: translate(0, 100%);\n }\n to {\n transform: translate(0, 0);\n }\n}\n@keyframes slideRightToLeft {\n from {\n transform: translateX(100%);\n }\n to {\n transform: translateX(0%);\n }\n}\n@keyframes rotation {\n 0% {\n transform: rotate(0deg);\n }\n 100% {\n transform: rotate(360deg);\n }\n}\n.container {\n position: fixed;\n inset: 0;\n background-color: rgba(0, 0, 0, 0.5);\n z-index: 110;\n display: flex;\n align-items: center;\n justify-content: center;\n}\n.container .content {\n position: relative;\n padding: 0 0 1rem;\n}\n.container .content .image {\n max-height: 25rem;\n max-width: 100%;\n width: 100%;\n overflow: hidden;\n display: block;\n object-fit: cover;\n}\n.container .content .details {\n padding: 1rem 1.5rem 2rem;\n max-width: 100%;\n width: 100%;\n overflow: hidden;\n text-overflow: ellipsis;\n}\n.container .content .details .name {\n margin: 0;\n font-size: 1.5rem;\n}\n.container .content .details .price {\n line-height: 1.5rem;\n}\n.container .content .details .volume {\n color: #a1a5b7;\n}\n.container .content .details .description {\n color: #a1a5b7;\n font-size: 1rem;\n line-height: 1.25rem;\n margin-top: 1rem;\n}\n.container .content .choices {\n border-top: 1px solid #eff2f5;\n border-bottom: 1px solid #eff2f5;\n max-width: 100%;\n width: 100%;\n overflow: hidden;\n text-overflow: ellipsis;\n}\n.container .content .close {\n position: absolute;\n top: 1rem;\n right: 1rem;\n}\n.container .addAction .actionTitle {\n white-space: break-spaces;\n}\n@media (max-width: 580px) {\n .container {\n align-items: flex-end;\n }\n}","/* Text */\n/* Input */\n/* Button */\n/* TABLE */\n/* Modal */\n/* Bagde */\n/* Menu */\n/* Notification */\n/* BRANDS */\n/* Border radius */\n/* Fonts */\n/* WIDTH */\n/* HEIGHT */\n/* CARD */\n/* TABLE */\n/* MODAL */\n/* BADGE */\n/* Menu */\n/* Input */\n/* EDITOR */\n/* HEADER */\n/* Z-INDEX */\n/* SIZES */\n/* SHADOW */\n/**/\n/* BUTTON */\n/* TEXT */\n/* RESPONSIVE */\n@keyframes flexWide {\n from {\n flex: 0;\n }\n to {\n flex: 1;\n }\n}\n@keyframes slidein {\n from {\n transform: translateX(0%);\n }\n to {\n transform: translateX(-100%);\n }\n}\n@keyframes fadeInOut {\n 0% {\n opacity: 0.5;\n }\n 50% {\n opacity: 1;\n }\n 100% {\n opacity: 0.5;\n }\n}\n@keyframes heightAnimation {\n 0% {\n height: 0%;\n }\n 100% {\n height: 100%;\n }\n}\n@keyframes fadein {\n from {\n opacity: 0;\n }\n to {\n opacity: 1;\n }\n}\n/* Firefox < 16 */\n@-moz-keyframes fadein {\n from {\n opacity: 0;\n }\n to {\n opacity: 1;\n }\n}\n/* Safari, Chrome and Opera > 12.1 */\n@-webkit-keyframes fadein {\n from {\n opacity: 0;\n }\n to {\n opacity: 1;\n }\n}\n/* Internet Explorer */\n@-ms-keyframes fadein {\n from {\n opacity: 0;\n }\n to {\n opacity: 1;\n }\n}\n@keyframes floatAnimation {\n 0% {\n transform: translateY(0);\n }\n 100% {\n transform: translateY(-20px);\n }\n}\n@keyframes bottomSheet {\n from {\n transform: translate(0, 100%);\n }\n to {\n transform: translate(0, 0);\n }\n}\n@keyframes slideRightToLeft {\n from {\n transform: translateX(100%);\n }\n to {\n transform: translateX(0%);\n }\n}\n@keyframes rotation {\n 0% {\n transform: rotate(0deg);\n }\n 100% {\n transform: rotate(360deg);\n }\n}\n.container {\n background-color: var(--sorocraft-color-primary-light, #f5f8fa);\n border-radius: 3.75rem;\n}\n.container .quantityAction,\n.container .quantityValue {\n text-align: center;\n display: flex;\n align-items: center;\n justify-content: center;\n line-height: 1.5rem;\n color: var(--sorocraft-color-primary, #2d3436);\n}\n.container .quantityAction {\n cursor: pointer;\n}\n.container .quantityAction svg path {\n stroke: var(--sorocraft-color-primary, #2d3436);\n}\n.container .quantityAction.isDisabled {\n cursor: not-allowed;\n}\n.container.sm {\n width: 7.5rem !important;\n height: 2.5rem !important;\n}\n.container.sm .quantityAction,\n.container.sm .quantityValue {\n width: 2.5rem;\n height: 2.5rem !important;\n}\n.container.md {\n width: 10rem !important;\n height: 3.25rem !important;\n}\n.container.md .quantityAction,\n.container.md .quantityValue {\n width: 3.3333333333rem;\n height: 3.25rem !important;\n}\n.container.lg {\n width: 12.5rem !important;\n height: 3.75rem !important;\n}\n.container.lg .quantityAction,\n.container.lg .quantityValue {\n width: 4.1666666667rem;\n height: 3.75rem !important;\n}",".container .title {\n font-weight: 600;\n}","/* Text */\n/* Input */\n/* Button */\n/* TABLE */\n/* Modal */\n/* Bagde */\n/* Menu */\n/* Notification */\n/* BRANDS */\n/* Border radius */\n/* Fonts */\n/* WIDTH */\n/* HEIGHT */\n/* CARD */\n/* TABLE */\n/* MODAL */\n/* BADGE */\n/* Menu */\n/* Input */\n/* EDITOR */\n/* HEADER */\n/* Z-INDEX */\n/* SIZES */\n/* SHADOW */\n/**/\n/* BUTTON */\n/* TEXT */\n/* RESPONSIVE */\n@keyframes flexWide {\n from {\n flex: 0;\n }\n to {\n flex: 1;\n }\n}\n@keyframes slidein {\n from {\n transform: translateX(0%);\n }\n to {\n transform: translateX(-100%);\n }\n}\n@keyframes fadeInOut {\n 0% {\n opacity: 0.5;\n }\n 50% {\n opacity: 1;\n }\n 100% {\n opacity: 0.5;\n }\n}\n@keyframes heightAnimation {\n 0% {\n height: 0%;\n }\n 100% {\n height: 100%;\n }\n}\n@keyframes fadein {\n from {\n opacity: 0;\n }\n to {\n opacity: 1;\n }\n}\n/* Firefox < 16 */\n@-moz-keyframes fadein {\n from {\n opacity: 0;\n }\n to {\n opacity: 1;\n }\n}\n/* Safari, Chrome and Opera > 12.1 */\n@-webkit-keyframes fadein {\n from {\n opacity: 0;\n }\n to {\n opacity: 1;\n }\n}\n/* Internet Explorer */\n@-ms-keyframes fadein {\n from {\n opacity: 0;\n }\n to {\n opacity: 1;\n }\n}\n@keyframes floatAnimation {\n 0% {\n transform: translateY(0);\n }\n 100% {\n transform: translateY(-20px);\n }\n}\n@keyframes bottomSheet {\n from {\n transform: translate(0, 100%);\n }\n to {\n transform: translate(0, 0);\n }\n}\n@keyframes slideRightToLeft {\n from {\n transform: translateX(100%);\n }\n to {\n transform: translateX(0%);\n }\n}\n@keyframes rotation {\n 0% {\n transform: rotate(0deg);\n }\n 100% {\n transform: rotate(360deg);\n }\n}\n.container {\n padding: 1rem 1.5rem;\n box-shadow: 0;\n transition: box-shadow 0.1s ease-in-out;\n}\n.container .variantsTitle {\n font-weight: 600;\n margin-bottom: 0.5rem;\n}\n.container .variant {\n cursor: pointer;\n}\n.container.focused {\n box-shadow: 0px 0px 5px 0px #f1416c;\n}","/* Text */\n/* Input */\n/* Button */\n/* TABLE */\n/* Modal */\n/* Bagde */\n/* Menu */\n/* Notification */\n/* BRANDS */\n/* Border radius */\n/* Fonts */\n/* WIDTH */\n/* HEIGHT */\n/* CARD */\n/* TABLE */\n/* MODAL */\n/* BADGE */\n/* Menu */\n/* Input */\n/* EDITOR */\n/* HEADER */\n/* Z-INDEX */\n/* SIZES */\n/* SHADOW */\n/**/\n/* BUTTON */\n/* TEXT */\n/* RESPONSIVE */\n@keyframes flexWide {\n from {\n flex: 0;\n }\n to {\n flex: 1;\n }\n}\n@keyframes slidein {\n from {\n transform: translateX(0%);\n }\n to {\n transform: translateX(-100%);\n }\n}\n@keyframes fadeInOut {\n 0% {\n opacity: 0.5;\n }\n 50% {\n opacity: 1;\n }\n 100% {\n opacity: 0.5;\n }\n}\n@keyframes heightAnimation {\n 0% {\n height: 0%;\n }\n 100% {\n height: 100%;\n }\n}\n@keyframes fadein {\n from {\n opacity: 0;\n }\n to {\n opacity: 1;\n }\n}\n/* Firefox < 16 */\n@-moz-keyframes fadein {\n from {\n opacity: 0;\n }\n to {\n opacity: 1;\n }\n}\n/* Safari, Chrome and Opera > 12.1 */\n@-webkit-keyframes fadein {\n from {\n opacity: 0;\n }\n to {\n opacity: 1;\n }\n}\n/* Internet Explorer */\n@-ms-keyframes fadein {\n from {\n opacity: 0;\n }\n to {\n opacity: 1;\n }\n}\n@keyframes floatAnimation {\n 0% {\n transform: translateY(0);\n }\n 100% {\n transform: translateY(-20px);\n }\n}\n@keyframes bottomSheet {\n from {\n transform: translate(0, 100%);\n }\n to {\n transform: translate(0, 0);\n }\n}\n@keyframes slideRightToLeft {\n from {\n transform: translateX(100%);\n }\n to {\n transform: translateX(0%);\n }\n}\n@keyframes rotation {\n 0% {\n transform: rotate(0deg);\n }\n 100% {\n transform: rotate(360deg);\n }\n}\n.container {\n padding: 1rem 1.5rem;\n box-shadow: 0;\n transition: box-shadow 0.1s ease-in-out;\n}\n.container.focused {\n box-shadow: 0px 0px 5px 0px #f1416c;\n}\n.container .optionsTitle {\n font-weight: 600;\n margin-bottom: 0.5rem;\n}","/* Text */\n/* Input */\n/* Button */\n/* TABLE */\n/* Modal */\n/* Bagde */\n/* Menu */\n/* Notification */\n/* BRANDS */\n/* Border radius */\n/* Fonts */\n/* WIDTH */\n/* HEIGHT */\n/* CARD */\n/* TABLE */\n/* MODAL */\n/* BADGE */\n/* Menu */\n/* Input */\n/* EDITOR */\n/* HEADER */\n/* Z-INDEX */\n/* SIZES */\n/* SHADOW */\n/**/\n/* BUTTON */\n/* TEXT */\n/* RESPONSIVE */\n@keyframes flexWide {\n from {\n flex: 0;\n }\n to {\n flex: 1;\n }\n}\n@keyframes slidein {\n from {\n transform: translateX(0%);\n }\n to {\n transform: translateX(-100%);\n }\n}\n@keyframes fadeInOut {\n 0% {\n opacity: 0.5;\n }\n 50% {\n opacity: 1;\n }\n 100% {\n opacity: 0.5;\n }\n}\n@keyframes heightAnimation {\n 0% {\n height: 0%;\n }\n 100% {\n height: 100%;\n }\n}\n@keyframes fadein {\n from {\n opacity: 0;\n }\n to {\n opacity: 1;\n }\n}\n/* Firefox < 16 */\n@-moz-keyframes fadein {\n from {\n opacity: 0;\n }\n to {\n opacity: 1;\n }\n}\n/* Safari, Chrome and Opera > 12.1 */\n@-webkit-keyframes fadein {\n from {\n opacity: 0;\n }\n to {\n opacity: 1;\n }\n}\n/* Internet Explorer */\n@-ms-keyframes fadein {\n from {\n opacity: 0;\n }\n to {\n opacity: 1;\n }\n}\n@keyframes floatAnimation {\n 0% {\n transform: translateY(0);\n }\n 100% {\n transform: translateY(-20px);\n }\n}\n@keyframes bottomSheet {\n from {\n transform: translate(0, 100%);\n }\n to {\n transform: translate(0, 0);\n }\n}\n@keyframes slideRightToLeft {\n from {\n transform: translateX(100%);\n }\n to {\n transform: translateX(0%);\n }\n}\n@keyframes rotation {\n 0% {\n transform: rotate(0deg);\n }\n 100% {\n transform: rotate(360deg);\n }\n}\n.container {\n position: fixed;\n bottom: 0;\n left: 0;\n right: 0;\n z-index: 10;\n display: flex;\n justify-content: center;\n padding: 1rem;\n}\n.container .content {\n max-width: 25rem;\n width: 100%;\n animation-name: bottomSheet;\n animation-duration: 300ms;\n animation-timing-function: cubic-bezier(0.32, 1, 0.23, 1);\n}","/* Text */\n/* Input */\n/* Button */\n/* TABLE */\n/* Modal */\n/* Bagde */\n/* Menu */\n/* Notification */\n/* BRANDS */\n/* Border radius */\n/* Fonts */\n/* WIDTH */\n/* HEIGHT */\n/* CARD */\n/* TABLE */\n/* MODAL */\n/* BADGE */\n/* Menu */\n/* Input */\n/* EDITOR */\n/* HEADER */\n/* Z-INDEX */\n/* SIZES */\n/* SHADOW */\n/**/\n/* BUTTON */\n/* TEXT */\n/* RESPONSIVE */\n@keyframes flexWide {\n from {\n flex: 0;\n }\n to {\n flex: 1;\n }\n}\n@keyframes slidein {\n from {\n transform: translateX(0%);\n }\n to {\n transform: translateX(-100%);\n }\n}\n@keyframes fadeInOut {\n 0% {\n opacity: 0.5;\n }\n 50% {\n opacity: 1;\n }\n 100% {\n opacity: 0.5;\n }\n}\n@keyframes heightAnimation {\n 0% {\n height: 0%;\n }\n 100% {\n height: 100%;\n }\n}\n@keyframes fadein {\n from {\n opacity: 0;\n }\n to {\n opacity: 1;\n }\n}\n/* Firefox < 16 */\n@-moz-keyframes fadein {\n from {\n opacity: 0;\n }\n to {\n opacity: 1;\n }\n}\n/* Safari, Chrome and Opera > 12.1 */\n@-webkit-keyframes fadein {\n from {\n opacity: 0;\n }\n to {\n opacity: 1;\n }\n}\n/* Internet Explorer */\n@-ms-keyframes fadein {\n from {\n opacity: 0;\n }\n to {\n opacity: 1;\n }\n}\n@keyframes floatAnimation {\n 0% {\n transform: translateY(0);\n }\n 100% {\n transform: translateY(-20px);\n }\n}\n@keyframes bottomSheet {\n from {\n transform: translate(0, 100%);\n }\n to {\n transform: translate(0, 0);\n }\n}\n@keyframes slideRightToLeft {\n from {\n transform: translateX(100%);\n }\n to {\n transform: translateX(0%);\n }\n}\n@keyframes rotation {\n 0% {\n transform: rotate(0deg);\n }\n 100% {\n transform: rotate(360deg);\n }\n}\n.container {\n min-height: 3.375rem;\n width: 100%;\n background-color: var(--sorocraft-color-primary, #2d3436);\n padding: 0.9rem 1rem;\n border-radius: 1.5rem;\n color: #ffffff;\n}\n.container .count {\n width: 1.5rem;\n height: 1.5rem;\n background-color: #ffffff;\n border-radius: 50%;\n font-size: 0.75rem;\n font-weight: 500;\n line-height: 1rem;\n display: flex;\n align-items: center;\n justify-content: center;\n color: #181c32;\n}\n.container .actionText {\n font-weight: 600;\n}\n.container .totalPrice {\n text-align: end;\n font-weight: 500;\n}\n.container.isClickable {\n cursor: pointer;\n}\n.container.isLoading {\n background-color: rgba(235, 59, 90, 0.75);\n cursor: not-allowed;\n}\n.container.isLoading .actionText {\n line-height: 0.75;\n}","/* Text */\n/* Input */\n/* Button */\n/* TABLE */\n/* Modal */\n/* Bagde */\n/* Menu */\n/* Notification */\n/* BRANDS */\n/* Border radius */\n/* Fonts */\n/* WIDTH */\n/* HEIGHT */\n/* CARD */\n/* TABLE */\n/* MODAL */\n/* BADGE */\n/* Menu */\n/* Input */\n/* EDITOR */\n/* HEADER */\n/* Z-INDEX */\n/* SIZES */\n/* SHADOW */\n/**/\n/* BUTTON */\n/* TEXT */\n/* RESPONSIVE */\n@keyframes flexWide {\n from {\n flex: 0;\n }\n to {\n flex: 1;\n }\n}\n@keyframes slidein {\n from {\n transform: translateX(0%);\n }\n to {\n transform: translateX(-100%);\n }\n}\n@keyframes fadeInOut {\n 0% {\n opacity: 0.5;\n }\n 50% {\n opacity: 1;\n }\n 100% {\n opacity: 0.5;\n }\n}\n@keyframes heightAnimation {\n 0% {\n height: 0%;\n }\n 100% {\n height: 100%;\n }\n}\n@keyframes fadein {\n from {\n opacity: 0;\n }\n to {\n opacity: 1;\n }\n}\n/* Firefox < 16 */\n@-moz-keyframes fadein {\n from {\n opacity: 0;\n }\n to {\n opacity: 1;\n }\n}\n/* Safari, Chrome and Opera > 12.1 */\n@-webkit-keyframes fadein {\n from {\n opacity: 0;\n }\n to {\n opacity: 1;\n }\n}\n/* Internet Explorer */\n@-ms-keyframes fadein {\n from {\n opacity: 0;\n }\n to {\n opacity: 1;\n }\n}\n@keyframes floatAnimation {\n 0% {\n transform: translateY(0);\n }\n 100% {\n transform: translateY(-20px);\n }\n}\n@keyframes bottomSheet {\n from {\n transform: translate(0, 100%);\n }\n to {\n transform: translate(0, 0);\n }\n}\n@keyframes slideRightToLeft {\n from {\n transform: translateX(100%);\n }\n to {\n transform: translateX(0%);\n }\n}\n@keyframes rotation {\n 0% {\n transform: rotate(0deg);\n }\n 100% {\n transform: rotate(360deg);\n }\n}\n.container {\n position: fixed;\n inset: 0;\n background-color: rgba(0, 0, 0, 0.5);\n z-index: 100;\n display: flex;\n align-items: center;\n justify-content: flex-end;\n}\n.container .content {\n padding: 1rem 0;\n height: 100%;\n}\n.container .content .paymentMethods {\n padding: 0 1rem;\n}\n.container .content .transactionDetails {\n padding: 0 1rem;\n}\n\n.footer .noteButton {\n padding: 0.625rem 1.5rem !important;\n}","/* Text */\n/* Input */\n/* Button */\n/* TABLE */\n/* Modal */\n/* Bagde */\n/* Menu */\n/* Notification */\n/* BRANDS */\n/* Border radius */\n/* Fonts */\n/* WIDTH */\n/* HEIGHT */\n/* CARD */\n/* TABLE */\n/* MODAL */\n/* BADGE */\n/* Menu */\n/* Input */\n/* EDITOR */\n/* HEADER */\n/* Z-INDEX */\n/* SIZES */\n/* SHADOW */\n/**/\n/* BUTTON */\n/* TEXT */\n/* RESPONSIVE */\n@keyframes flexWide {\n from {\n flex: 0;\n }\n to {\n flex: 1;\n }\n}\n@keyframes slidein {\n from {\n transform: translateX(0%);\n }\n to {\n transform: translateX(-100%);\n }\n}\n@keyframes fadeInOut {\n 0% {\n opacity: 0.5;\n }\n 50% {\n opacity: 1;\n }\n 100% {\n opacity: 0.5;\n }\n}\n@keyframes heightAnimation {\n 0% {\n height: 0%;\n }\n 100% {\n height: 100%;\n }\n}\n@keyframes fadein {\n from {\n opacity: 0;\n }\n to {\n opacity: 1;\n }\n}\n/* Firefox < 16 */\n@-moz-keyframes fadein {\n from {\n opacity: 0;\n }\n to {\n opacity: 1;\n }\n}\n/* Safari, Chrome and Opera > 12.1 */\n@-webkit-keyframes fadein {\n from {\n opacity: 0;\n }\n to {\n opacity: 1;\n }\n}\n/* Internet Explorer */\n@-ms-keyframes fadein {\n from {\n opacity: 0;\n }\n to {\n opacity: 1;\n }\n}\n@keyframes floatAnimation {\n 0% {\n transform: translateY(0);\n }\n 100% {\n transform: translateY(-20px);\n }\n}\n@keyframes bottomSheet {\n from {\n transform: translate(0, 100%);\n }\n to {\n transform: translate(0, 0);\n }\n}\n@keyframes slideRightToLeft {\n from {\n transform: translateX(100%);\n }\n to {\n transform: translateX(0%);\n }\n}\n@keyframes rotation {\n 0% {\n transform: rotate(0deg);\n }\n 100% {\n transform: rotate(360deg);\n }\n}\n.container {\n padding: 0.75rem 1rem;\n border-bottom: 1px solid #eff2f5;\n}\n.container .image {\n width: 5rem;\n height: 2.8125rem;\n border-radius: 0.475rem;\n object-fit: cover;\n overflow: hidden;\n}\n.container .data {\n flex: 1;\n max-width: 100%;\n overflow: hidden;\n text-overflow: ellipsis;\n}\n.container .data .name {\n font-weight: 500;\n line-height: 1;\n margin-bottom: 0.5rem;\n}\n.container .data .price {\n margin-top: 0.5rem;\n line-height: 1.5rem;\n}","/* Text */\n/* Input */\n/* Button */\n/* TABLE */\n/* Modal */\n/* Bagde */\n/* Menu */\n/* Notification */\n/* BRANDS */\n/* Border radius */\n/* Fonts */\n/* WIDTH */\n/* HEIGHT */\n/* CARD */\n/* TABLE */\n/* MODAL */\n/* BADGE */\n/* Menu */\n/* Input */\n/* EDITOR */\n/* HEADER */\n/* Z-INDEX */\n/* SIZES */\n/* SHADOW */\n/**/\n/* BUTTON */\n/* TEXT */\n/* RESPONSIVE */\n@keyframes flexWide {\n from {\n flex: 0;\n }\n to {\n flex: 1;\n }\n}\n@keyframes slidein {\n from {\n transform: translateX(0%);\n }\n to {\n transform: translateX(-100%);\n }\n}\n@keyframes fadeInOut {\n 0% {\n opacity: 0.5;\n }\n 50% {\n opacity: 1;\n }\n 100% {\n opacity: 0.5;\n }\n}\n@keyframes heightAnimation {\n 0% {\n height: 0%;\n }\n 100% {\n height: 100%;\n }\n}\n@keyframes fadein {\n from {\n opacity: 0;\n }\n to {\n opacity: 1;\n }\n}\n/* Firefox < 16 */\n@-moz-keyframes fadein {\n from {\n opacity: 0;\n }\n to {\n opacity: 1;\n }\n}\n/* Safari, Chrome and Opera > 12.1 */\n@-webkit-keyframes fadein {\n from {\n opacity: 0;\n }\n to {\n opacity: 1;\n }\n}\n/* Internet Explorer */\n@-ms-keyframes fadein {\n from {\n opacity: 0;\n }\n to {\n opacity: 1;\n }\n}\n@keyframes floatAnimation {\n 0% {\n transform: translateY(0);\n }\n 100% {\n transform: translateY(-20px);\n }\n}\n@keyframes bottomSheet {\n from {\n transform: translate(0, 100%);\n }\n to {\n transform: translate(0, 0);\n }\n}\n@keyframes slideRightToLeft {\n from {\n transform: translateX(100%);\n }\n to {\n transform: translateX(0%);\n }\n}\n@keyframes rotation {\n 0% {\n transform: rotate(0deg);\n }\n 100% {\n transform: rotate(360deg);\n }\n}\n.quantity {\n width: 2rem;\n height: 2rem;\n background-color: #f5f8fa;\n color: #181c32;\n border-radius: 50%;\n font-size: 0.875rem;\n font-weight: 500;\n line-height: 1rem;\n display: flex;\n align-items: center;\n justify-content: center;\n}",".container {\n padding: 1rem;\n width: 100%;\n cursor: pointer;\n}","/* Text */\n/* Input */\n/* Button */\n/* TABLE */\n/* Modal */\n/* Bagde */\n/* Menu */\n/* Notification */\n/* BRANDS */\n/* Border radius */\n/* Fonts */\n/* WIDTH */\n/* HEIGHT */\n/* CARD */\n/* TABLE */\n/* MODAL */\n/* BADGE */\n/* Menu */\n/* Input */\n/* EDITOR */\n/* HEADER */\n/* Z-INDEX */\n/* SIZES */\n/* SHADOW */\n/**/\n/* BUTTON */\n/* TEXT */\n/* RESPONSIVE */\n@keyframes flexWide {\n from {\n flex: 0;\n }\n to {\n flex: 1;\n }\n}\n@keyframes slidein {\n from {\n transform: translateX(0%);\n }\n to {\n transform: translateX(-100%);\n }\n}\n@keyframes fadeInOut {\n 0% {\n opacity: 0.5;\n }\n 50% {\n opacity: 1;\n }\n 100% {\n opacity: 0.5;\n }\n}\n@keyframes heightAnimation {\n 0% {\n height: 0%;\n }\n 100% {\n height: 100%;\n }\n}\n@keyframes fadein {\n from {\n opacity: 0;\n }\n to {\n opacity: 1;\n }\n}\n/* Firefox < 16 */\n@-moz-keyframes fadein {\n from {\n opacity: 0;\n }\n to {\n opacity: 1;\n }\n}\n/* Safari, Chrome and Opera > 12.1 */\n@-webkit-keyframes fadein {\n from {\n opacity: 0;\n }\n to {\n opacity: 1;\n }\n}\n/* Internet Explorer */\n@-ms-keyframes fadein {\n from {\n opacity: 0;\n }\n to {\n opacity: 1;\n }\n}\n@keyframes floatAnimation {\n 0% {\n transform: translateY(0);\n }\n 100% {\n transform: translateY(-20px);\n }\n}\n@keyframes bottomSheet {\n from {\n transform: translate(0, 100%);\n }\n to {\n transform: translate(0, 0);\n }\n}\n@keyframes slideRightToLeft {\n from {\n transform: translateX(100%);\n }\n to {\n transform: translateX(0%);\n }\n}\n@keyframes rotation {\n 0% {\n transform: rotate(0deg);\n }\n 100% {\n transform: rotate(360deg);\n }\n}\n.branches {\n background-color: #ffffff;\n}\n.branches .list {\n padding-bottom: 2rem;\n display: grid;\n gap: 2rem;\n grid-auto-rows: 1fr;\n grid-template-columns: repeat(auto-fit, minmax(200px, 1fr));\n}\n@media (max-width: 580px) {\n .branches .list {\n grid-template-columns: 1fr;\n }\n}\n.branches .list .name {\n text-align: center;\n font-weight: 500;\n font-size: 1.25rem;\n margin: 0;\n}","/* Text */\n/* Input */\n/* Button */\n/* TABLE */\n/* Modal */\n/* Bagde */\n/* Menu */\n/* Notification */\n/* BRANDS */\n/* Border radius */\n/* Fonts */\n/* WIDTH */\n/* HEIGHT */\n/* CARD */\n/* TABLE */\n/* MODAL */\n/* BADGE */\n/* Menu */\n/* Input */\n/* EDITOR */\n/* HEADER */\n/* Z-INDEX */\n/* SIZES */\n/* SHADOW */\n/**/\n/* BUTTON */\n/* TEXT */\n/* RESPONSIVE */\n@keyframes flexWide {\n from {\n flex: 0;\n }\n to {\n flex: 1;\n }\n}\n@keyframes slidein {\n from {\n transform: translateX(0%);\n }\n to {\n transform: translateX(-100%);\n }\n}\n@keyframes fadeInOut {\n 0% {\n opacity: 0.5;\n }\n 50% {\n opacity: 1;\n }\n 100% {\n opacity: 0.5;\n }\n}\n@keyframes heightAnimation {\n 0% {\n height: 0%;\n }\n 100% {\n height: 100%;\n }\n}\n@keyframes fadein {\n from {\n opacity: 0;\n }\n to {\n opacity: 1;\n }\n}\n/* Firefox < 16 */\n@-moz-keyframes fadein {\n from {\n opacity: 0;\n }\n to {\n opacity: 1;\n }\n}\n/* Safari, Chrome and Opera > 12.1 */\n@-webkit-keyframes fadein {\n from {\n opacity: 0;\n }\n to {\n opacity: 1;\n }\n}\n/* Internet Explorer */\n@-ms-keyframes fadein {\n from {\n opacity: 0;\n }\n to {\n opacity: 1;\n }\n}\n@keyframes floatAnimation {\n 0% {\n transform: translateY(0);\n }\n 100% {\n transform: translateY(-20px);\n }\n}\n@keyframes bottomSheet {\n from {\n transform: translate(0, 100%);\n }\n to {\n transform: translate(0, 0);\n }\n}\n@keyframes slideRightToLeft {\n from {\n transform: translateX(100%);\n }\n to {\n transform: translateX(0%);\n }\n}\n@keyframes rotation {\n 0% {\n transform: rotate(0deg);\n }\n 100% {\n transform: rotate(360deg);\n }\n}\n.content {\n padding: 2rem 0;\n height: 100%;\n}\n.content .countryCode {\n min-width: 7.5rem;\n}\n.content .terms {\n font-size: 0.875rem;\n line-height: 20px;\n text-align: center;\n color: #a1a5b7;\n width: 100%;\n}\n.content .terms a {\n color: #1b84ff;\n}","/* Text */\n/* Input */\n/* Button */\n/* TABLE */\n/* Modal */\n/* Bagde */\n/* Menu */\n/* Notification */\n/* BRANDS */\n/* Border radius */\n/* Fonts */\n/* WIDTH */\n/* HEIGHT */\n/* CARD */\n/* TABLE */\n/* MODAL */\n/* BADGE */\n/* Menu */\n/* Input */\n/* EDITOR */\n/* HEADER */\n/* Z-INDEX */\n/* SIZES */\n/* SHADOW */\n/**/\n/* BUTTON */\n/* TEXT */\n/* RESPONSIVE */\n@keyframes flexWide {\n from {\n flex: 0;\n }\n to {\n flex: 1;\n }\n}\n@keyframes slidein {\n from {\n transform: translateX(0%);\n }\n to {\n transform: translateX(-100%);\n }\n}\n@keyframes fadeInOut {\n 0% {\n opacity: 0.5;\n }\n 50% {\n opacity: 1;\n }\n 100% {\n opacity: 0.5;\n }\n}\n@keyframes heightAnimation {\n 0% {\n height: 0%;\n }\n 100% {\n height: 100%;\n }\n}\n@keyframes fadein {\n from {\n opacity: 0;\n }\n to {\n opacity: 1;\n }\n}\n/* Firefox < 16 */\n@-moz-keyframes fadein {\n from {\n opacity: 0;\n }\n to {\n opacity: 1;\n }\n}\n/* Safari, Chrome and Opera > 12.1 */\n@-webkit-keyframes fadein {\n from {\n opacity: 0;\n }\n to {\n opacity: 1;\n }\n}\n/* Internet Explorer */\n@-ms-keyframes fadein {\n from {\n opacity: 0;\n }\n to {\n opacity: 1;\n }\n}\n@keyframes floatAnimation {\n 0% {\n transform: translateY(0);\n }\n 100% {\n transform: translateY(-20px);\n }\n}\n@keyframes bottomSheet {\n from {\n transform: translate(0, 100%);\n }\n to {\n transform: translate(0, 0);\n }\n}\n@keyframes slideRightToLeft {\n from {\n transform: translateX(100%);\n }\n to {\n transform: translateX(0%);\n }\n}\n@keyframes rotation {\n 0% {\n transform: rotate(0deg);\n }\n 100% {\n transform: rotate(360deg);\n }\n}\n.container {\n display: flex;\n flex-direction: column;\n align-items: center;\n}\n.container .intervals {\n margin-bottom: 2.5rem;\n display: flex;\n gap: 1rem;\n background-color: #ffffff;\n box-shadow: 0px 10px 35px 0px rgba(56, 71, 109, 0.075);\n padding: 1rem 1.5rem;\n border-radius: 3.75rem;\n}\n.container .intervals .interval {\n background-color: transparent;\n border-radius: 3.75rem;\n padding: 0.75rem 1.5rem;\n cursor: pointer;\n transition: background-color ease-in-out 0.2s, color ease-in-out 0.2s;\n text-transform: capitalize;\n}\n.container .intervals .interval.active {\n background-color: var(--sorocraft-color-primary, #2d3436);\n color: #ffffff;\n}\n.container .plans {\n gap: 2rem;\n width: 100%;\n display: grid;\n grid-template-columns: repeat(auto-fit, minmax(300px, 1fr));\n margin-bottom: 6rem;\n}\n.container .plans .plan {\n height: 100%;\n transition: transform 500ms cubic-bezier(0.7, 0, 0, 1), box-shadow 500ms cubic-bezier(0.7, 0, 0, 1);\n border-radius: 0.85rem;\n}\n.container .plans .plan > div {\n height: 100%;\n}\n.container .plans .plan .title {\n font-size: 1.75rem;\n font-weight: 600;\n padding-bottom: 1rem;\n border-bottom: 1px dashed #e4e6ef;\n}\n.container .plans .plan .price {\n font-size: 2rem;\n margin-top: 1rem;\n height: 3.75rem;\n}\n.container .plans .plan .price .originalPrice {\n text-decoration: line-through;\n font-size: 1.5rem;\n font-weight: 600;\n}\n.container .plans .plan .price .discountedPrice {\n color: var(--sorocraft-color-primary, #2d3436);\n font-weight: 600;\n}\n.container .plans .plan .action {\n margin: 2rem 0;\n}\n.container .plans .plan .benefits .benefit {\n padding: 0.5rem 0;\n display: flex;\n align-items: center;\n gap: 1rem;\n}\n.container .plans .plan .benefits .benefit i {\n margin-right: 1rem;\n}\n.container .plans .plan:hover {\n box-shadow: 0px 100px 50px -40px rgba(0, 0, 0, 0.1), 0px 60px 100px 0px rgba(50, 50, 93, 0.25);\n transform: scale(1.018);\n color: #181c32;\n}"]}
|
package/dist/utils/index.d.ts
CHANGED
|
@@ -1,8 +1,8 @@
|
|
|
1
|
-
export * from "./addon";
|
|
2
|
-
export * from "./cart";
|
|
3
1
|
export * from "./category";
|
|
4
2
|
export * from "./common";
|
|
5
3
|
export * from "./image";
|
|
6
4
|
export * from "./menu";
|
|
7
|
-
export * from "
|
|
5
|
+
export * from "src/modules/addon/utils";
|
|
6
|
+
export * from "src/modules/product/utils";
|
|
7
|
+
export * from "src/modules/order/utils";
|
|
8
8
|
export * from "./url";
|
package/dist/utils/index.esm.js
CHANGED
|
@@ -1,2 +1,2 @@
|
|
|
1
|
-
import{
|
|
1
|
+
import{isEmpty as t,priceFormatter as r}from"@sorocraft/js-utils";const n=(t,r)=>{var n,o;return(null===(o=null===(n=null==t?void 0:t.translations)||void 0===n?void 0:n.find)||void 0===o?void 0:o.call(n,(t=>t.language===r)))||{}},o=(r,o,a)=>{var i;const e=null===(i=null==o?void 0:o.find)||void 0===i?void 0:i.call(o,(({id:t})=>t===r));if(t(e))return"";const{name:l}=n(e,a);return l},a=(t=0,r=1,n=0)=>t*r*(1+n/100),i="https://images.restaround.co",e=t=>t?t.includes("base64")||t.startsWith("https://")?t:`${i}/${t}`:"",l=t=>t?t.includes("base64")||t.startsWith("https://")?t:`${i}/${t}`:"https://images.restaround.co/no-photo-128.webp",d=t=>t?t.includes("base64")||t.startsWith("https://")?t:`${i}/${t}`:"https://images.restaround.co/restaround-doodle.webp",u="ABCDEFGHIJKLMNOPQRSTUVWXYZabcdefghijklmnopqrstuvwxyz0123456789+/=",s=(t,r,n)=>u.charAt(t>>2)+u.charAt((3&t)<<4|r>>4)+u.charAt((15&r)<<2|n>>6)+u.charAt(63&n),c=(t,r,n)=>`data:image/gif;base64,R0lGODlhAQABAPAA${s(0,t,r)+s(n,255,255)}/yH5BAAAAAAALAAAAAABAAEAAAICRAEAOw==`,v=(t,r)=>{const n=r.reduce(((t,r)=>{if(!r.visible)return t;const n=Number(r.categoryId);return t[n]||(t[n]=[]),t[n].push(r),t}),{});return t.map((t=>Object.assign(Object.assign({},t),{products:n[Number(t.id)]||[]}))).filter((t=>{var r;return(null===(r=null==t?void 0:t.products)||void 0===r?void 0:r.length)>0}))},p=(t,r)=>{var n,o;return(null===(o=null===(n=null==t?void 0:t.translations)||void 0===n?void 0:n.find)||void 0===o?void 0:o.call(n,(t=>t.language===r)))||{}},f=(t,r)=>{var n,o;return(null===(o=null===(n=null==t?void 0:t.translations)||void 0===n?void 0:n.find)||void 0===o?void 0:o.call(n,(t=>t.language===r)))||{}},A=({option:t,currency:n="USD",language:o="en"})=>{const{price:a}=t||{};return{totalPrice:a,formattedTotalPrice:r(a,n,o)}},g=(t,r)=>{var n;return(null===(n=((null==t?void 0:t.options)||[]).find((({id:t})=>t===r)))||void 0===n?void 0:n.price)||0},h=(t,r,n)=>{var o;if(Array.isArray(r))return t.filter((({id:t})=>r.includes(t))).map((({translations:t})=>{var r;return(null===(r=t.find((t=>t.language===n)))||void 0===r?void 0:r.title)||""})).filter(Boolean).join(", ");{const a=t.find((({id:t})=>t===r));return(null===(o=null==a?void 0:a.translations.find((t=>t.language===n)))||void 0===o?void 0:o.title)||""}},m=(t,r)=>{var n,o,a;return(null===(a=null===(o=null===(n=null==t?void 0:t.translations)||void 0===n?void 0:n.find)||void 0===o?void 0:o.call(n,(t=>t.language===r)))||void 0===a?void 0:a.title)||""};var y;!function(t){t.SINGLE="SINGLE",t.MULTIPLE="MULTIPLE"}(y||(y={}));const P=(t,r)=>{var n,o;return(null===(o=null===(n=null==t?void 0:t.translations)||void 0===n?void 0:n.find)||void 0===o?void 0:o.call(n,(t=>t.language===r)))||{}},$=(t,r=1)=>{const{price:n=0,vat:o=0}=t||{};return a(n,r,o)},b=(t,n,o,a=1)=>{const i=$(t,a);return{totalPrice:i,formattedTotalPrice:r(i,n,o)}},T=(t,r)=>{var n,o;return(null===(o=null===(n=null==t?void 0:t.variants)||void 0===n?void 0:n.find)||void 0===o?void 0:o.call(n,(t=>t.id===r)))||{}},I=(t,r={},n)=>((null==t?void 0:t.addons)||[]).filter((t=>Object.prototype.hasOwnProperty.call(r,t.id))).reduce(((t,n)=>{const{id:o,selectType:a}=n;if(a===y.SINGLE){const a=r[o];return t+g(n,a)}return t+(r[o]||[]).reduce(((t,r)=>t+g(n,r)),0)}),0)*n,j=(t,r,n)=>{const o=T(r,t),{vat:i}=r||{},{price:e}=o||{};return a(e,n,i)},x=({variantId:t,currency:n="USD",language:o="en",product:a,quantity:i=1})=>{const e=j(t,a,i);return{totalPrice:e,formattedTotalPrice:r(e,n,o)}},O=(t,r)=>{var n,o;return(null===(o=null===(n=null==t?void 0:t.translations)||void 0===n?void 0:n.find)||void 0===o?void 0:o.call(n,(t=>t.language===r)))||{}},E=({product:r,variantId:n,quantity:o=1,selectedAddons:a,noVat:i=!1})=>{if(t(r))return{price:0,optionsPrice:0,total:0};const e=Object.assign(Object.assign({},r),{vat:i?0:r.vat}),l=I(e,a,o),d=n?j(n,e,o):$(e,o);return{price:d,optionsPrice:l,total:d+l}},L=({product:t,variantId:n,quantity:o=1,currency:a,language:i,selectedAddons:e,noVat:l=!1})=>{const{total:d}=E({product:t,variantId:n,quantity:o,selectedAddons:e,noVat:l});return{totalPrice:d,formattedTotalPrice:r(d,a,i)}},q=(t,r)=>((null==t?void 0:t.addons)||[]).find((({id:t})=>t===r))||{},N=(t=[],r)=>r*t.reduce(((t,r)=>t+r.price),0),W=(t,n,o)=>{let a=0,i=0;for(const r of t.items){const n=(e=r.price,l=r.quantity,d=r.addons,l*e+N(d,l));a+=n,void 0===t.vat&&r.vat&&(i+=n*r.vat/100)}var e,l,d;void 0!==t.vat&&(i=a*t.vat/100);const u=a+i;return{totalWithoutTax:a,totalWithoutTaxFormatted:r(a,n,o),totalTax:i,totalTaxFormatted:r(i,n,o),totalWithTax:u,totalWithTaxFormatted:r(u,n,o)}},w=(t,r,n)=>{if(!t)throw new Error("Product ID is required");let o=`${t}`;r&&(o+=`-${r}`);const a=Object.entries(n||{}).map((([t,r])=>{if(!t||!r)return null;const n=Array.isArray(r)?r.filter(Boolean).join("-"):`${r}`;return n?`${t}-${n}`:null})).filter(Boolean).join("-");return a&&(o+=`-${a}`),o},B=t=>{var r;const{price:n,variant:o,addons:a,quantity:i,vat:e}=t||{},l=null!==(r=null==o?void 0:o.price)&&void 0!==r?r:n,d=l+(a||[]).reduce(((t,r)=>t+r.price),0),u=l*(e/100),s=d+u;return{totalGross:s*i,totalNet:d*i,totalTax:u*i,itemGrossPrice:s,itemNetPrice:d,itemTax:u}},G=t=>((null==t?void 0:t.addons)||[]).reduce(((t,{addonId:r,optionId:n})=>(t[r]=n,t)),{}),S="restaround.co",D=[S,"restaround.az","restaround.ee","restaround.nl"],U=(t,r)=>{const n=D.includes(t)?t:S;return{url:`https://${n}/${r||"en"}`,domain:n}},z=t=>"az"===t?"az":"co",F=(t,r)=>`https://app.restaround.${z(t)}/auth/register?lang=${t}&utm_source=${r}`;export{i as IMAGE_BASE_URL,a as calculateTotalPrice,w as generateOrderItemsId,g as getAddonOptionRawPrice,f as getAddonOptionTranslation,m as getAddonTitle,p as getAddonTranslation,U as getBaseUrl,o as getCategoryNameById,n as getCategoryTranslation,d as getCoverImageSource,e as getImageSource,l as getLogoImageSource,A as getOptionPrice,h as getOptionTitles,N as getOrderAddonsPrice,B as getOrderItemPrice,W as getOrderPrice,q as getProductAddon,L as getProductOrderPrice,E as getProductOrderRawPrice,b as getProductPrice,$ as getProductRawPrice,P as getProductTranslation,T as getProductVariant,x as getProductVariantPrice,j as getProductVariantRawPrice,O as getProductVariantTranslation,F as getRegisterUrl,G as getSelectedAddonsFromOrderItems,I as getSelectedOptionsTotalPrice,z as getTLD,v as prepareCategoryAndProductMap,c as rgbDataURL};
|
|
2
2
|
//# sourceMappingURL=index.esm.js.map
|
|
@@ -1 +1 @@
|
|
|
1
|
-
{"version":3,"file":"index.esm.js","sources":["../../../src/utils/addon.ts","../../../src/utils/common.ts","../../../src/utils/cart.ts","../../../src/utils/category.ts","../../../src/utils/image.ts","../../../src/utils/menu.ts","../../../src/models/addon.ts","../../../src/utils/product.ts","../../../src/utils/constants.ts","../../../src/utils/url.ts"],"sourcesContent":["import { priceFormatter } from \"@sorocraft/js-utils\";\n\nimport {\n\tMenuAddon,\n\tMenuAddonOption,\n\tMenuAddonOptionTranslation,\n\tMenuAddonTranslation,\n} from \"src/models/addon\";\n\nexport const getAddonTranslation = (addon: MenuAddon, language: string): MenuAddonTranslation => {\n\treturn (addon?.translations?.find?.((item) => item.language === language) ||\n\t\t{}) as MenuAddonTranslation;\n};\n\nexport const getAddonOptionTranslation = (\n\toption: MenuAddonOption,\n\tlanguage: string\n): MenuAddonOptionTranslation => {\n\treturn (option?.translations?.find?.((item) => item.language === language) ||\n\t\t{}) as MenuAddonOptionTranslation;\n};\n\nexport const getOptionPrice = ({\n\toption,\n\tcurrency = \"USD\",\n\tlanguage = \"en\",\n}: {\n\toption: MenuAddonOption;\n\tcurrency?: string;\n\tlanguage?: string;\n}) => {\n\tconst { price } = option || {};\n\n\treturn {\n\t\ttotalPrice: price,\n\t\tformattedTotalPrice: priceFormatter(price, currency, language),\n\t};\n};\n\nexport const getAddonOptionRawPrice = (addon: MenuAddon, optionId: number): number => {\n\treturn (addon?.options || []).find(({ id }) => id === optionId)?.price || 0;\n};\n\nexport const getOptionTitles = (\n\toptions: MenuAddonOption[],\n\toptionIds: number | number[],\n\tlanguage: string\n): string => {\n\tif (Array.isArray(optionIds)) {\n\t\treturn options\n\t\t\t.filter(({ id }) => optionIds.includes(id))\n\t\t\t.map(({ translations }) => translations.find((t) => t.language === language)?.title || \"\")\n\t\t\t.filter(Boolean)\n\t\t\t.join(\", \");\n\t} else {\n\t\tconst option = options.find(({ id }) => id === optionIds);\n\t\treturn option?.translations.find((t) => t.language === language)?.title || \"\";\n\t}\n};\n\nexport const getAddonTitle = (addon: MenuAddon, language: string): string => {\n\treturn addon.translations.find((t) => t.language === language)?.title || \"\";\n};\n","export const calculateTotalPrice = (price: number = 0, quantity: number = 1, vat: number = 0) => {\n\treturn price * quantity * (1 + vat / 100);\n};\n","import { priceFormatter } from \"@sorocraft/js-utils\";\n\nimport { CartItem } from \"src/models/order\";\nimport { SelectedAddons } from \"src/models/addon\";\n\nimport { calculateTotalPrice } from \"./common\";\n\nexport const getCartPrice = (item: CartItem, currency: string = \"USD\", language: string = \"en\") => {\n\tconst { price, vat, quantity, optionsPrice } = item || {};\n\tconst productPrice = calculateTotalPrice(price, quantity, vat);\n\tconst totalPrice = productPrice + optionsPrice * quantity;\n\n\treturn {\n\t\ttotalPrice: totalPrice,\n\t\tformattedTotalPrice: priceFormatter(totalPrice, currency, language),\n\t};\n};\n\nexport const generateCartId = (\n\tproductId: number,\n\tvariantId: number | null,\n\tselectedAddons: SelectedAddons\n): string => {\n\tif (!productId) throw new Error(\"Product ID is required\");\n\n\t// Build the cart ID base with productId and variantId\n\tlet cartId = `${productId}`;\n\tif (variantId) {\n\t\tcartId += `-${variantId}`;\n\t}\n\n\t// Build the addon part of the ID\n\tconst addonIdsPart = Object.entries(selectedAddons || {})\n\t\t.map(([addonId, option]) => {\n\t\t\tif (!addonId || !option) return null; // Skip invalid entries\n\t\t\tconst optionIds = Array.isArray(option) ? option.filter(Boolean).join(\"-\") : `${option}`;\n\t\t\tif (!optionIds) return null;\n\t\t\treturn `${addonId}-${optionIds}`;\n\t\t})\n\t\t.filter(Boolean) // Remove null/undefined values\n\t\t.join(\"-\");\n\n\t// Append addonIdsPart if it's not empty\n\tif (addonIdsPart) {\n\t\tcartId += `-${addonIdsPart}`;\n\t}\n\n\treturn cartId;\n};\n","import { isEmpty } from \"@sorocraft/js-utils\";\n\nimport { Category, CategoryTranslation } from \"../models/category\";\n\nexport const getCategoryTranslation = (\n\tcategory: Category,\n\tlanguage: string\n): CategoryTranslation => {\n\treturn (category?.translations?.find?.((item) => item.language === language) ||\n\t\t{}) as CategoryTranslation;\n};\n\nexport const getCategoryNameById = (\n\tcategoryId: number,\n\tcategories: Category[],\n\tlanguage: string\n): string => {\n\tconst category = categories?.find?.(({ id }) => id === categoryId);\n\n\tif (isEmpty(category)) return \"\";\n\n\tconst { name } = getCategoryTranslation(category, language);\n\n\treturn name;\n};\n","export const IMAGE_BASE_URL = \"https://images.restaround.co\";\n\nexport const getImageSource = (image?: string) => {\n\tif (!image) return \"\";\n\n\tif (image.includes(\"base64\") || image.startsWith(\"https://\")) return image;\n\n\treturn `${IMAGE_BASE_URL}/${image}`;\n};\n\nexport const getLogoImageSource = (logoImage?: string) => {\n\tif (!logoImage) return \"https://images.restaround.co/no-photo-128.webp\";\n\n\tif (logoImage.includes(\"base64\") || logoImage.startsWith(\"https://\")) return logoImage;\n\n\treturn `${IMAGE_BASE_URL}/${logoImage}`;\n};\n\nexport const getCoverImageSource = (coverImage?: string) => {\n\tif (!coverImage) return \"https://images.restaround.co/restaround-doodle.webp\";\n\n\tif (coverImage.includes(\"base64\") || coverImage.startsWith(\"https://\")) return coverImage;\n\n\treturn `${IMAGE_BASE_URL}/${coverImage}`;\n};\n\nconst keyStr = \"ABCDEFGHIJKLMNOPQRSTUVWXYZabcdefghijklmnopqrstuvwxyz0123456789+/=\";\n\nconst triplet = (e1: number, e2: number, e3: number) =>\n\tkeyStr.charAt(e1 >> 2) +\n\tkeyStr.charAt(((e1 & 3) << 4) | (e2 >> 4)) +\n\tkeyStr.charAt(((e2 & 15) << 2) | (e3 >> 6)) +\n\tkeyStr.charAt(e3 & 63);\n\nexport const rgbDataURL = (r: number, g: number, b: number) =>\n\t`data:image/gif;base64,R0lGODlhAQABAPAA${\n\t\ttriplet(0, r, g) + triplet(b, 255, 255)\n\t}/yH5BAAAAAAALAAAAAABAAEAAAICRAEAOw==`;\n","import { Category, CategoryProductMap, Product } from \"src/models\";\n\nexport const prepareCategoryAndProductMap = (\n\tcategories: Category[],\n\tproducts: Product[]\n): CategoryProductMap[] => {\n\tconst productMap = products.reduce<Record<number, Product[]>>((map, product) => {\n\t\tif (!product.visible) return map;\n\n\t\tconst categoryId = Number(product.categoryId);\n\t\tif (!map[categoryId]) {\n\t\t\tmap[categoryId] = [];\n\t\t}\n\t\tmap[categoryId].push(product);\n\t\treturn map;\n\t}, {});\n\n\treturn categories\n\t\t.map((category) => ({\n\t\t\t...category,\n\t\t\tproducts: (productMap[Number(category.id)] || []) as Product[],\n\t\t}))\n\t\t.filter((category) => category?.products?.length > 0);\n};\n","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\nexport interface SelectedAddons {\n\t[key: number]: number | number[];\n}\n","import { isEmpty, priceFormatter } from \"@sorocraft/js-utils\";\n\nimport {\n\tProduct,\n\tProductTranslation,\n\tProductVariant,\n\tProductVariantTranslations,\n} from \"src/models/product\";\n\nimport { calculateTotalPrice } from \"./common\";\nimport { MenuAddon, MenuAddonSelectType, SelectedAddons } from \"src/models/addon\";\n\nimport { getAddonOptionRawPrice } from \"./addon\";\n\nexport const getProductTranslation = (product: Product, language: string): ProductTranslation => {\n\treturn (product?.translations?.find?.((item) => item.language === language) ||\n\t\t{}) as ProductTranslation;\n};\n\nexport const getProductRawPrice = (product: Product, quantity: number = 1) => {\n\tconst { price = 0, vat = 0 } = product || {};\n\treturn calculateTotalPrice(price, quantity, vat);\n};\n\nexport const getProductPrice = (\n\tproduct: Product,\n\tcurrency: string,\n\tlanguage: string,\n\tquantity: number = 1\n) => {\n\tconst totalPrice = getProductRawPrice(product, quantity);\n\n\treturn {\n\t\ttotalPrice: totalPrice,\n\t\tformattedTotalPrice: priceFormatter(totalPrice, currency, language),\n\t};\n};\n\nexport const getProductVariant = (product: Product, variantId: number): ProductVariant => {\n\treturn product?.variants?.find?.((item) => item.id === variantId) || ({} as ProductVariant);\n};\n\nexport const getSelectedOptionsTotalPrice = (\n\tproduct: Product,\n\tselectedAddons: SelectedAddons = {},\n\tquantity: number\n): number => {\n\t// Filter addons that are selected by the user\n\tconst selectedAddonsList = (product?.addons || []).filter((addon) =>\n\t\tObject.prototype.hasOwnProperty.call(selectedAddons, addon.id)\n\t);\n\n\t// Calculate the total price\n\tconst optionsTotalPrice = selectedAddonsList.reduce((total: number, addon: MenuAddon) => {\n\t\tconst { id: addonId, selectType } = addon;\n\n\t\t// Handle SINGLE selection\n\t\tif (selectType === MenuAddonSelectType.SINGLE) {\n\t\t\tconst selectedOptionId = selectedAddons[addonId] as number;\n\t\t\treturn total + getAddonOptionRawPrice(addon, selectedOptionId);\n\t\t}\n\n\t\t// Handle MULTIPLE selection\n\t\tconst selectedOptionIds = (selectedAddons[addonId] || []) as number[];\n\t\tconst multipleOptionsPrice = selectedOptionIds.reduce(\n\t\t\t(multipleTotal, optionId) => multipleTotal + getAddonOptionRawPrice(addon, optionId),\n\t\t\t0\n\t\t);\n\n\t\treturn total + multipleOptionsPrice;\n\t}, 0);\n\n\treturn optionsTotalPrice * quantity;\n};\n\nexport const getProductVariantRawPrice = (\n\tvariantId: number,\n\tproduct: Product,\n\tquantity?: number\n) => {\n\tconst variant = getProductVariant(product, variantId);\n\tconst { vat } = product || {};\n\tconst { price } = variant || {};\n\treturn calculateTotalPrice(price, quantity, vat);\n};\n\nexport const getProductVariantPrice = ({\n\tvariantId,\n\tcurrency = \"USD\",\n\tlanguage = \"en\",\n\tproduct,\n\tquantity = 1,\n}: {\n\tvariantId: number;\n\tcurrency?: string;\n\tlanguage?: string;\n\tproduct: Product;\n\tquantity?: number;\n}) => {\n\tconst totalPrice = getProductVariantRawPrice(variantId, product, quantity);\n\n\treturn {\n\t\ttotalPrice: totalPrice,\n\t\tformattedTotalPrice: priceFormatter(totalPrice, currency, language),\n\t};\n};\n\nexport const getProductVariantTranslation = (\n\tvariant: ProductVariant,\n\tlanguage: string\n): ProductVariantTranslations => {\n\treturn (variant?.translations?.find?.((item) => item.language === language) ||\n\t\t{}) as ProductVariantTranslations;\n};\n\nexport const getProductCartRawPrice = ({\n\tproduct,\n\tvariantId,\n\tquantity = 1,\n\tselectedAddons,\n\tnoVat = false,\n}: {\n\tproduct: Product;\n\tvariantId: number | null;\n\tquantity: number;\n\tselectedAddons: SelectedAddons;\n\tnoVat?: boolean;\n}): { price: number; optionsPrice: number; total: number } => {\n\tif (isEmpty(product)) return { price: 0, optionsPrice: 0, total: 0 };\n\n\tconst productData: Product = { ...product, vat: noVat ? 0 : product.vat };\n\tconst selectedOptionsTotalPrice = getSelectedOptionsTotalPrice(\n\t\tproductData,\n\t\tselectedAddons,\n\t\tquantity\n\t);\n\tconst price = variantId\n\t\t? getProductVariantRawPrice(variantId, productData, quantity)\n\t\t: getProductRawPrice(productData, quantity);\n\n\treturn {\n\t\tprice,\n\t\toptionsPrice: selectedOptionsTotalPrice,\n\t\ttotal: price + selectedOptionsTotalPrice,\n\t};\n};\n\nexport const getProductCartPrice = ({\n\tproduct,\n\tvariantId,\n\tquantity = 1,\n\tcurrency,\n\tlanguage,\n\tselectedAddons,\n\tnoVat = false,\n}: {\n\tproduct: Product;\n\tvariantId: number | null;\n\tquantity: number;\n\tcurrency: string;\n\tlanguage: string;\n\tselectedAddons: SelectedAddons;\n\tnoVat?: boolean;\n}) => {\n\tconst { total } = getProductCartRawPrice({\n\t\tproduct,\n\t\tvariantId,\n\t\tquantity,\n\t\tselectedAddons,\n\t\tnoVat,\n\t});\n\n\treturn {\n\t\ttotalPrice: total,\n\t\tformattedTotalPrice: priceFormatter(total, currency, language),\n\t};\n};\n\nexport const getProductAddon = (product: Product, addonId: number): MenuAddon => {\n\treturn (product?.addons || []).find(({ id }) => id === addonId) || ({} as MenuAddon);\n};\n","export const CO_DOMAIN = \"restaround.co\";\nexport const AZ_DOMAIN = \"restaround.az\";\nexport const EE_DOMAIN = \"restaround.ee\";\nexport const NL_DOMAIN = \"restaround.nl\";\n\nexport const DOMAINS = [CO_DOMAIN, AZ_DOMAIN, EE_DOMAIN, NL_DOMAIN]; // Supported domains list\n","import { CO_DOMAIN, DOMAINS } from \"./constants\";\n\nexport const getBaseUrl = (hostname: string, language: string) => {\n\tconst domain = DOMAINS.includes(hostname) ? hostname : CO_DOMAIN;\n\tconst locale = language || \"en\";\n\treturn { url: `https://${domain}/${locale}`, domain };\n};\n\nexport const getTLD = (language: string) => {\n\treturn language === \"az\" ? \"az\" : \"co\";\n};\n\nexport const getRegisterUrl = (language: string, source: string) => {\n\tconst tld = getTLD(language);\n\n\treturn `https://app.restaround.${tld}/auth/register?lang=${language}&utm_source=${source}`;\n};\n"],"names":["getAddonTranslation","addon","language","_b","_a","translations","find","call","item","getAddonOptionTranslation","option","getOptionPrice","currency","price","totalPrice","formattedTotalPrice","priceFormatter","getAddonOptionRawPrice","optionId","options","id","getOptionTitles","optionIds","Array","isArray","filter","includes","map","t","title","Boolean","join","getAddonTitle","calculateTotalPrice","quantity","vat","getCartPrice","optionsPrice","generateCartId","productId","variantId","selectedAddons","Error","cartId","addonIdsPart","Object","entries","addonId","getCategoryTranslation","category","getCategoryNameById","categoryId","categories","isEmpty","name","IMAGE_BASE_URL","getImageSource","image","startsWith","getLogoImageSource","logoImage","getCoverImageSource","coverImage","keyStr","triplet","e1","e2","e3","charAt","rgbDataURL","r","g","b","prepareCategoryAndProductMap","products","productMap","reduce","product","visible","Number","push","assign","length","MenuAddonSelectType","getProductTranslation","getProductRawPrice","getProductPrice","getProductVariant","variants","getSelectedOptionsTotalPrice","addons","prototype","hasOwnProperty","total","selectType","SINGLE","selectedOptionId","multipleTotal","getProductVariantRawPrice","variant","getProductVariantPrice","getProductVariantTranslation","getProductCartRawPrice","noVat","productData","selectedOptionsTotalPrice","getProductCartPrice","getProductAddon","CO_DOMAIN","DOMAINS","getBaseUrl","hostname","domain","url","getTLD","getRegisterUrl","source"],"mappings":"wEASaA,EAAsB,CAACC,EAAkBC,aACrD,OAAoC,QAA5BC,EAAmB,QAAnBC,EAAAH,aAAK,EAALA,EAAOI,oBAAY,IAAAD,OAAA,EAAAA,EAAEE,YAAO,IAAAH,OAAA,EAAAA,EAAAI,KAAAH,GAACI,GAASA,EAAKN,WAAaA,MAC/D,CAAE,CAAA,EAGSO,EAA4B,CACxCC,EACAR,aAEA,OAAqC,QAA7BC,EAAoB,QAApBC,EAAAM,aAAM,EAANA,EAAQL,oBAAY,IAAAD,OAAA,EAAAA,EAAEE,YAAO,IAAAH,OAAA,EAAAA,EAAAI,KAAAH,GAACI,GAASA,EAAKN,WAAaA,MAChE,CAAE,CAAA,EAGSS,EAAiB,EAC7BD,SACAE,WAAW,MACXV,WAAW,SAMX,MAAMW,MAAEA,GAAUH,GAAU,CAAE,EAE9B,MAAO,CACNI,WAAYD,EACZE,oBAAqBC,EAAeH,EAAOD,EAAUV,GACrD,EAGWe,EAAyB,CAAChB,EAAkBiB,WACxD,OAA+D,QAAxDd,IAACH,aAAA,EAAAA,EAAOkB,UAAW,IAAIb,MAAK,EAAGc,QAASA,IAAOF,WAAS,IAAAd,OAAA,EAAAA,EAAES,QAAS,CAAC,EAG/DQ,EAAkB,CAC9BF,EACAG,EACApB,WAEA,GAAIqB,MAAMC,QAAQF,GACjB,OAAOH,EACLM,QAAO,EAAGL,QAASE,EAAUI,SAASN,KACtCO,KAAI,EAAGtB,mBAAmB,IAAAD,EAAA,OAAiD,QAAjDA,EAAAC,EAAaC,MAAMsB,GAAMA,EAAE1B,WAAaA,WAAS,IAAAE,OAAA,EAAAA,EAAEyB,QAAS,EAAE,IACxFJ,OAAOK,SACPC,KAAK,MACD,CACN,MAAMrB,EAASS,EAAQb,MAAK,EAAGc,QAASA,IAAOE,IAC/C,OAAkE,QAA3DlB,EAAAM,aAAA,EAAAA,EAAQL,aAAaC,MAAMsB,GAAMA,EAAE1B,WAAaA,WAAW,IAAAE,OAAA,EAAAA,EAAAyB,QAAS,KAIhEG,EAAgB,CAAC/B,EAAkBC,WAC/C,OAAgE,UAAzDD,EAAMI,aAAaC,MAAMsB,GAAMA,EAAE1B,WAAaA,WAAW,IAAAE,OAAA,EAAAA,EAAAyB,QAAS,EAAE,EC7D/DI,EAAsB,CAACpB,EAAgB,EAAGqB,EAAmB,EAAGC,EAAc,IACnFtB,EAAQqB,GAAY,EAAIC,EAAM,KCMzBC,EAAe,CAAC5B,EAAgBI,EAAmB,MAAOV,EAAmB,QACzF,MAAMW,MAAEA,EAAKsB,IAAEA,EAAGD,SAAEA,EAAQG,aAAEA,GAAiB7B,GAAQ,CAAE,EAEnDM,EADemB,EAAoBpB,EAAOqB,EAAUC,GACxBE,EAAeH,EAEjD,MAAO,CACNpB,WAAYA,EACZC,oBAAqBC,EAAeF,EAAYF,EAAUV,GAC1D,EAGWoC,EAAiB,CAC7BC,EACAC,EACAC,KAEA,IAAKF,EAAW,MAAM,IAAIG,MAAM,0BAGhC,IAAIC,EAAS,GAAGJ,IACZC,IACHG,GAAU,IAAIH,KAIf,MAAMI,EAAeC,OAAOC,QAAQL,GAAkB,CAAE,GACtDd,KAAI,EAAEoB,EAASrC,MACf,IAAKqC,IAAYrC,EAAQ,OAAO,KAChC,MAAMY,EAAYC,MAAMC,QAAQd,GAAUA,EAAOe,OAAOK,SAASC,KAAK,KAAO,GAAGrB,IAChF,OAAKY,EACE,GAAGyB,KAAWzB,IADE,IACS,IAEhCG,OAAOK,SACPC,KAAK,KAOP,OAJIa,IACHD,GAAU,IAAIC,KAGRD,CAAM,EC3CDK,EAAyB,CACrCC,EACA/C,aAEA,OAAuC,QAA/BC,EAAsB,QAAtBC,EAAA6C,aAAQ,EAARA,EAAU5C,oBAAY,IAAAD,OAAA,EAAAA,EAAEE,YAAO,IAAAH,OAAA,EAAAA,EAAAI,KAAAH,GAACI,GAASA,EAAKN,WAAaA,MAClE,CAAE,CAAA,EAGSgD,EAAsB,CAClCC,EACAC,EACAlD,WAEA,MAAM+C,EAA2B,QAAhB7C,EAAAgD,aAAU,EAAVA,EAAY9C,YAAI,IAAAF,OAAA,EAAAA,EAAAG,KAAA6C,GAAG,EAAGhC,QAASA,IAAO+B,IAEvD,GAAIE,EAAQJ,GAAW,MAAO,GAE9B,MAAMK,KAAEA,GAASN,EAAuBC,EAAU/C,GAElD,OAAOoD,CAAI,ECvBCC,EAAiB,+BAEjBC,EAAkBC,GACzBA,EAEDA,EAAM/B,SAAS,WAAa+B,EAAMC,WAAW,YAAoBD,EAE9D,GAAGF,KAAkBE,IAJT,GAOPE,EAAsBC,GAC7BA,EAEDA,EAAUlC,SAAS,WAAakC,EAAUF,WAAW,YAAoBE,EAEtE,GAAGL,KAAkBK,IAJL,iDAOXC,EAAuBC,GAC9BA,EAEDA,EAAWpC,SAAS,WAAaoC,EAAWJ,WAAW,YAAoBI,EAExE,GAAGP,KAAkBO,IAJJ,sDAOnBC,EAAS,oEAETC,EAAU,CAACC,EAAYC,EAAYC,IACxCJ,EAAOK,OAAOH,GAAM,GACpBF,EAAOK,QAAc,EAALH,IAAW,EAAMC,GAAM,GACvCH,EAAOK,QAAc,GAALF,IAAY,EAAMC,GAAM,GACxCJ,EAAOK,OAAY,GAALD,GAEFE,EAAa,CAACC,EAAWC,EAAWC,IAChD,yCACCR,EAAQ,EAAGM,EAAGC,GAAKP,EAAQQ,EAAG,IAAK,2CClCxBC,EAA+B,CAC3CrB,EACAsB,KAEA,MAAMC,EAAaD,EAASE,QAAkC,CAACjD,EAAKkD,KACnE,IAAKA,EAAQC,QAAS,OAAOnD,EAE7B,MAAMwB,EAAa4B,OAAOF,EAAQ1B,YAKlC,OAJKxB,EAAIwB,KACRxB,EAAIwB,GAAc,IAEnBxB,EAAIwB,GAAY6B,KAAKH,GACdlD,CAAG,GACR,IAEH,OAAOyB,EACLzB,KAAKsB,GACFJ,OAAAoC,OAAApC,OAAAoC,OAAA,CAAA,EAAAhC,GACH,CAAAyB,SAAWC,EAAWI,OAAO9B,EAAS7B,MAAQ,OAE9CK,QAAQwB,IAAa,IAAA7C,EAAA,OAAoB,QAApBA,EAAA6C,aAAA,EAAAA,EAAUyB,gBAAU,IAAAtE,OAAA,EAAAA,EAAA8E,QAAS,CAAC,GAAC,ECtBvD,IAAYC,GAAZ,SAAYA,GACXA,EAAA,OAAA,SACAA,EAAA,SAAA,UACA,CAHD,CAAYA,IAAAA,EAGX,CAAA,UCWYC,EAAwB,CAACP,EAAkB3E,aACvD,OAAsC,QAA9BC,EAAqB,QAArBC,EAAAyE,aAAO,EAAPA,EAASxE,oBAAY,IAAAD,OAAA,EAAAA,EAAEE,YAAO,IAAAH,OAAA,EAAAA,EAAAI,KAAAH,GAACI,GAASA,EAAKN,WAAaA,MACjE,CAAE,CAAA,EAGSmF,EAAqB,CAACR,EAAkB3C,EAAmB,KACvE,MAAMrB,MAAEA,EAAQ,EAACsB,IAAEA,EAAM,GAAM0C,GAAW,CAAE,EAC5C,OAAO5C,EAAoBpB,EAAOqB,EAAUC,EAAI,EAGpCmD,EAAkB,CAC9BT,EACAjE,EACAV,EACAgC,EAAmB,KAEnB,MAAMpB,EAAauE,EAAmBR,EAAS3C,GAE/C,MAAO,CACNpB,WAAYA,EACZC,oBAAqBC,EAAeF,EAAYF,EAAUV,GAC1D,EAGWqF,EAAoB,CAACV,EAAkBrC,aACnD,OAA8B,QAAvBrC,EAAiB,QAAjBC,EAAAyE,aAAO,EAAPA,EAASW,gBAAQ,IAAApF,OAAA,EAAAA,EAAEE,YAAI,IAAAH,OAAA,EAAAA,EAAAI,KAAAH,GAAII,GAASA,EAAKY,KAAOoB,MAAe,CAAqB,CAAA,EAG/EiD,EAA+B,CAC3CZ,EACApC,EAAiC,CAAA,EACjCP,MAG4B2C,aAAO,EAAPA,EAASa,SAAU,IAAIjE,QAAQxB,GAC1D4C,OAAO8C,UAAUC,eAAerF,KAAKkC,EAAgBxC,EAAMmB,MAIfwD,QAAO,CAACiB,EAAe5F,KACnE,MAAQmB,GAAI2B,EAAO+C,WAAEA,GAAe7F,EAGpC,GAAI6F,IAAeX,EAAoBY,OAAQ,CAC9C,MAAMC,EAAmBvD,EAAeM,GACxC,OAAO8C,EAAQ5E,EAAuBhB,EAAO+F,GAU9C,OAAOH,GANoBpD,EAAeM,IAAY,IACP6B,QAC9C,CAACqB,EAAe/E,IAAa+E,EAAgBhF,EAAuBhB,EAAOiB,IAC3E,EAGkC,GACjC,GAEwBgB,EAGfgE,EAA4B,CACxC1D,EACAqC,EACA3C,KAEA,MAAMiE,EAAUZ,EAAkBV,EAASrC,IACrCL,IAAEA,GAAQ0C,GAAW,CAAE,GACvBhE,MAAEA,GAAUsF,GAAW,CAAE,EAC/B,OAAOlE,EAAoBpB,EAAOqB,EAAUC,EAAI,EAGpCiE,EAAyB,EACrC5D,YACA5B,WAAW,MACXV,WAAW,KACX2E,UACA3C,WAAW,MAQX,MAAMpB,EAAaoF,EAA0B1D,EAAWqC,EAAS3C,GAEjE,MAAO,CACNpB,WAAYA,EACZC,oBAAqBC,EAAeF,EAAYF,EAAUV,GAC1D,EAGWmG,EAA+B,CAC3CF,EACAjG,aAEA,OAAsC,QAA9BC,EAAqB,QAArBC,EAAA+F,aAAO,EAAPA,EAAS9F,oBAAY,IAAAD,OAAA,EAAAA,EAAEE,YAAO,IAAAH,OAAA,EAAAA,EAAAI,KAAAH,GAACI,GAASA,EAAKN,WAAaA,MACjE,CAAE,CAAA,EAGSoG,EAAyB,EACrCzB,UACArC,YACAN,WAAW,EACXO,iBACA8D,SAAQ,MAQR,GAAIlD,EAAQwB,GAAU,MAAO,CAAEhE,MAAO,EAAGwB,aAAc,EAAGwD,MAAO,GAEjE,MAAMW,EAA4B3D,OAAAoC,OAAApC,OAAAoC,OAAA,CAAA,EAAAJ,IAAS1C,IAAKoE,EAAQ,EAAI1B,EAAQ1C,MAC9DsE,EAA4BhB,EACjCe,EACA/D,EACAP,GAEKrB,EAAQ2B,EACX0D,EAA0B1D,EAAWgE,EAAatE,GAClDmD,EAAmBmB,EAAatE,GAEnC,MAAO,CACNrB,QACAwB,aAAcoE,EACdZ,MAAOhF,EAAQ4F,EACf,EAGWC,EAAsB,EAClC7B,UACArC,YACAN,WAAW,EACXtB,WACAV,WACAuC,iBACA8D,SAAQ,MAUR,MAAMV,MAAEA,GAAUS,EAAuB,CACxCzB,UACArC,YACAN,WACAO,iBACA8D,UAGD,MAAO,CACNzF,WAAY+E,EACZ9E,oBAAqBC,EAAe6E,EAAOjF,EAAUV,GACrD,EAGWyG,EAAkB,CAAC9B,EAAkB9B,MACzC8B,aAAO,EAAPA,EAASa,SAAU,IAAIpF,MAAK,EAAGc,QAASA,IAAO2B,KAAa,CAAgB,ECnLxE6D,EAAY,gBAKZC,EAAU,CAACD,EAJC,gBACA,gBACA,iBCDZE,EAAa,CAACC,EAAkB7G,KAC5C,MAAM8G,EAASH,EAAQnF,SAASqF,GAAYA,EAAWH,EAEvD,MAAO,CAAEK,IAAK,WAAWD,KADV9G,GAAY,OACkB8G,SAAQ,EAGzCE,EAAUhH,GACF,OAAbA,EAAoB,KAAO,KAGtBiH,EAAiB,CAACjH,EAAkBkH,IAGzC,0BAFKF,EAAOhH,yBAEwCA,gBAAuBkH"}
|
|
1
|
+
{"version":3,"file":"index.esm.js","sources":["../../../src/utils/category.ts","../../../src/utils/common.ts","../../../src/utils/image.ts","../../../src/utils/menu.ts","../../../src/modules/addon/utils.ts","../../../src/modules/addon/models.ts","../../../src/modules/product/utils.ts","../../../src/modules/order/utils.ts","../../../src/utils/constants.ts","../../../src/utils/url.ts"],"sourcesContent":["import { isEmpty } from \"@sorocraft/js-utils\";\n\nimport { Category, CategoryTranslation } from \"../models/category\";\n\nexport const getCategoryTranslation = (\n\tcategory: Category,\n\tlanguage: string\n): CategoryTranslation => {\n\treturn (category?.translations?.find?.((item) => item.language === language) ||\n\t\t{}) as CategoryTranslation;\n};\n\nexport const getCategoryNameById = (\n\tcategoryId: number,\n\tcategories: Category[],\n\tlanguage: string\n): string => {\n\tconst category = categories?.find?.(({ id }) => id === categoryId);\n\n\tif (isEmpty(category)) return \"\";\n\n\tconst { name } = getCategoryTranslation(category, language);\n\n\treturn name;\n};\n","export const calculateTotalPrice = (price: number = 0, quantity: number = 1, vat: number = 0) => {\n\treturn price * quantity * (1 + vat / 100);\n};\n","export const IMAGE_BASE_URL = \"https://images.restaround.co\";\n\nexport const getImageSource = (image?: string) => {\n\tif (!image) return \"\";\n\n\tif (image.includes(\"base64\") || image.startsWith(\"https://\")) return image;\n\n\treturn `${IMAGE_BASE_URL}/${image}`;\n};\n\nexport const getLogoImageSource = (logoImage?: string) => {\n\tif (!logoImage) return \"https://images.restaround.co/no-photo-128.webp\";\n\n\tif (logoImage.includes(\"base64\") || logoImage.startsWith(\"https://\")) return logoImage;\n\n\treturn `${IMAGE_BASE_URL}/${logoImage}`;\n};\n\nexport const getCoverImageSource = (coverImage?: string) => {\n\tif (!coverImage) return \"https://images.restaround.co/restaround-doodle.webp\";\n\n\tif (coverImage.includes(\"base64\") || coverImage.startsWith(\"https://\")) return coverImage;\n\n\treturn `${IMAGE_BASE_URL}/${coverImage}`;\n};\n\nconst keyStr = \"ABCDEFGHIJKLMNOPQRSTUVWXYZabcdefghijklmnopqrstuvwxyz0123456789+/=\";\n\nconst triplet = (e1: number, e2: number, e3: number) =>\n\tkeyStr.charAt(e1 >> 2) +\n\tkeyStr.charAt(((e1 & 3) << 4) | (e2 >> 4)) +\n\tkeyStr.charAt(((e2 & 15) << 2) | (e3 >> 6)) +\n\tkeyStr.charAt(e3 & 63);\n\nexport const rgbDataURL = (r: number, g: number, b: number) =>\n\t`data:image/gif;base64,R0lGODlhAQABAPAA${\n\t\ttriplet(0, r, g) + triplet(b, 255, 255)\n\t}/yH5BAAAAAAALAAAAAABAAEAAAICRAEAOw==`;\n","import { Category, CategoryProductMap, Product } from \"src/models\";\n\nexport const prepareCategoryAndProductMap = (\n\tcategories: Category[],\n\tproducts: Product[]\n): CategoryProductMap[] => {\n\tconst productMap = products.reduce<Record<number, Product[]>>((map, product) => {\n\t\tif (!product.visible) return map;\n\n\t\tconst categoryId = Number(product.categoryId);\n\t\tif (!map[categoryId]) {\n\t\t\tmap[categoryId] = [];\n\t\t}\n\t\tmap[categoryId].push(product);\n\t\treturn map;\n\t}, {});\n\n\treturn categories\n\t\t.map((category) => ({\n\t\t\t...category,\n\t\t\tproducts: (productMap[Number(category.id)] || []) as Product[],\n\t\t}))\n\t\t.filter((category) => category?.products?.length > 0);\n};\n","import { priceFormatter } from \"@sorocraft/js-utils\";\n\nimport {\n\tMenuAddon,\n\tMenuAddonOption,\n\tMenuAddonOptionTranslation,\n\tMenuAddonTranslation,\n} from \"./models\";\n\nexport const getAddonTranslation = (addon: MenuAddon, language: string): MenuAddonTranslation => {\n\treturn (addon?.translations?.find?.((item) => item.language === language) ||\n\t\t{}) as MenuAddonTranslation;\n};\n\nexport const getAddonOptionTranslation = (\n\toption: MenuAddonOption,\n\tlanguage: string\n): MenuAddonOptionTranslation => {\n\treturn (option?.translations?.find?.((item) => item.language === language) ||\n\t\t{}) as MenuAddonOptionTranslation;\n};\n\nexport const getOptionPrice = ({\n\toption,\n\tcurrency = \"USD\",\n\tlanguage = \"en\",\n}: {\n\toption: MenuAddonOption;\n\tcurrency?: string;\n\tlanguage?: string;\n}) => {\n\tconst { price } = option || {};\n\n\treturn {\n\t\ttotalPrice: price,\n\t\tformattedTotalPrice: priceFormatter(price, currency, language),\n\t};\n};\n\nexport const getAddonOptionRawPrice = (addon: MenuAddon, optionId: number): number => {\n\treturn (addon?.options || []).find(({ id }) => id === optionId)?.price || 0;\n};\n\nexport const getOptionTitles = (\n\toptions: MenuAddonOption[],\n\toptionIds: number | number[],\n\tlanguage: string\n): string => {\n\tif (Array.isArray(optionIds)) {\n\t\treturn options\n\t\t\t.filter(({ id }) => optionIds.includes(id))\n\t\t\t.map(({ translations }) => translations.find((t) => t.language === language)?.title || \"\")\n\t\t\t.filter(Boolean)\n\t\t\t.join(\", \");\n\t} else {\n\t\tconst option = options.find(({ id }) => id === optionIds);\n\t\treturn option?.translations.find((t) => t.language === language)?.title || \"\";\n\t}\n};\n\nexport const getAddonTitle = (addon: MenuAddon, language: string): string => {\n\treturn addon?.translations?.find?.((t) => t.language === language)?.title || \"\";\n};\n","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","import { isEmpty, priceFormatter } from \"@sorocraft/js-utils\";\n\nimport { Product, ProductTranslation, ProductVariant, ProductVariantTranslation } from \"./models\";\n\nimport { calculateTotalPrice } from \"src/utils/common\";\nimport { MenuAddon, MenuAddonSelectType } from \"src/modules/addon/models\";\nimport { getAddonOptionRawPrice } from \"src/modules/addon/utils\";\nimport * as orderModels from \"src/modules/order/models\";\n\nexport const getProductTranslation = (product: Product, language: string): ProductTranslation => {\n\treturn (product?.translations?.find?.((item) => item.language === language) ||\n\t\t{}) as ProductTranslation;\n};\n\nexport const getProductRawPrice = (product: Product, quantity: number = 1) => {\n\tconst { price = 0, vat = 0 } = product || {};\n\treturn calculateTotalPrice(price, quantity, vat);\n};\n\nexport const getProductPrice = (\n\tproduct: Product,\n\tcurrency: string,\n\tlanguage: string,\n\tquantity: number = 1\n) => {\n\tconst totalPrice = getProductRawPrice(product, quantity);\n\n\treturn {\n\t\ttotalPrice: totalPrice,\n\t\tformattedTotalPrice: priceFormatter(totalPrice, currency, language),\n\t};\n};\n\nexport const getProductVariant = (product: Product, variantId: number): ProductVariant => {\n\treturn product?.variants?.find?.((item) => item.id === variantId) || ({} as ProductVariant);\n};\n\nexport const getSelectedOptionsTotalPrice = (\n\tproduct: Product,\n\tselectedAddons: orderModels.SelectedAddons = {},\n\tquantity: number\n): number => {\n\t// Filter addons that are selected by the user\n\tconst selectedAddonsList = (product?.addons || []).filter((addon) =>\n\t\tObject.prototype.hasOwnProperty.call(selectedAddons, addon.id)\n\t);\n\n\t// Calculate the total price\n\tconst optionsTotalPrice = selectedAddonsList.reduce((total: number, addon: MenuAddon) => {\n\t\tconst { id: addonId, selectType } = addon;\n\n\t\t// Handle SINGLE selection\n\t\tif (selectType === MenuAddonSelectType.SINGLE) {\n\t\t\tconst selectedOptionId = selectedAddons[addonId] as number;\n\t\t\treturn total + getAddonOptionRawPrice(addon, selectedOptionId);\n\t\t}\n\n\t\t// Handle MULTIPLE selection\n\t\tconst selectedOptionIds = (selectedAddons[addonId] || []) as number[];\n\t\tconst multipleOptionsPrice = selectedOptionIds.reduce(\n\t\t\t(multipleTotal, optionId) => multipleTotal + getAddonOptionRawPrice(addon, optionId),\n\t\t\t0\n\t\t);\n\n\t\treturn total + multipleOptionsPrice;\n\t}, 0);\n\n\treturn optionsTotalPrice * quantity;\n};\n\nexport const getProductVariantRawPrice = (\n\tvariantId: number,\n\tproduct: Product,\n\tquantity?: number\n) => {\n\tconst variant = getProductVariant(product, variantId);\n\tconst { vat } = product || {};\n\tconst { price } = variant || {};\n\treturn calculateTotalPrice(price, quantity, vat);\n};\n\nexport const getProductVariantPrice = ({\n\tvariantId,\n\tcurrency = \"USD\",\n\tlanguage = \"en\",\n\tproduct,\n\tquantity = 1,\n}: {\n\tvariantId: number;\n\tcurrency?: string;\n\tlanguage?: string;\n\tproduct: Product;\n\tquantity?: number;\n}) => {\n\tconst totalPrice = getProductVariantRawPrice(variantId, product, quantity);\n\n\treturn {\n\t\ttotalPrice: totalPrice,\n\t\tformattedTotalPrice: priceFormatter(totalPrice, currency, language),\n\t};\n};\n\nexport const getProductVariantTranslation = (\n\tvariant: ProductVariant,\n\tlanguage: string\n): ProductVariantTranslation => {\n\treturn (variant?.translations?.find?.((item) => item.language === language) ||\n\t\t{}) as ProductVariantTranslation;\n};\n\nexport const getProductOrderRawPrice = ({\n\tproduct,\n\tvariantId,\n\tquantity = 1,\n\tselectedAddons,\n\tnoVat = false,\n}: {\n\tproduct: Product;\n\tvariantId: number | null;\n\tquantity: number;\n\tselectedAddons: orderModels.SelectedAddons;\n\tnoVat?: boolean;\n}): { price: number; optionsPrice: number; total: number } => {\n\tif (isEmpty(product)) return { price: 0, optionsPrice: 0, total: 0 };\n\n\tconst productData: Product = { ...product, vat: noVat ? 0 : product.vat };\n\tconst selectedOptionsTotalPrice = getSelectedOptionsTotalPrice(\n\t\tproductData,\n\t\tselectedAddons,\n\t\tquantity\n\t);\n\tconst price = variantId\n\t\t? getProductVariantRawPrice(variantId, productData, quantity)\n\t\t: getProductRawPrice(productData, quantity);\n\n\treturn {\n\t\tprice,\n\t\toptionsPrice: selectedOptionsTotalPrice,\n\t\ttotal: price + selectedOptionsTotalPrice,\n\t};\n};\n\nexport const getProductOrderPrice = ({\n\tproduct,\n\tvariantId,\n\tquantity = 1,\n\tcurrency,\n\tlanguage,\n\tselectedAddons,\n\tnoVat = false,\n}: {\n\tproduct: Product;\n\tvariantId: number | null;\n\tquantity: number;\n\tcurrency: string;\n\tlanguage: string;\n\tselectedAddons: orderModels.SelectedAddons;\n\tnoVat?: boolean;\n}) => {\n\tconst { total } = getProductOrderRawPrice({\n\t\tproduct,\n\t\tvariantId,\n\t\tquantity,\n\t\tselectedAddons,\n\t\tnoVat,\n\t});\n\n\treturn {\n\t\ttotalPrice: total,\n\t\tformattedTotalPrice: priceFormatter(total, currency, language),\n\t};\n};\n\nexport const getProductAddon = (product: Product, addonId: number): MenuAddon => {\n\treturn (product?.addons || []).find(({ id }) => id === addonId) || ({} as MenuAddon);\n};\n","import { priceFormatter } from \"@sorocraft/js-utils\";\n\nimport { Order, OrderAddon, OrderItem, SelectedAddons } from \"./models\";\n\nexport const getOrderAddonsPrice = (orderAddons: OrderAddon[] = [], quantity: number): number => {\n\tconst totalOrderAddonsPrice = orderAddons.reduce((sum, current) => sum + current.price, 0);\n\n\treturn quantity * totalOrderAddonsPrice;\n};\n\nexport const getOrderPrice = (order: Order, currency: string, language: string) => {\n\tconst calculateItemTotal = (price: number, quantity: number, addons: OrderAddon[]) => {\n\t\treturn quantity * price + getOrderAddonsPrice(addons, quantity);\n\t};\n\n\tlet totalWithoutTax = 0;\n\tlet totalTax = 0;\n\n\tfor (const item of order.items) {\n\t\tconst itemTotal = calculateItemTotal(item.price, item.quantity, item.addons);\n\t\ttotalWithoutTax += itemTotal;\n\n\t\tif (order.vat === undefined && item.vat) {\n\t\t\ttotalTax += (itemTotal * item.vat) / 100;\n\t\t}\n\t}\n\n\tif (order.vat !== undefined) {\n\t\ttotalTax = (totalWithoutTax * order.vat) / 100;\n\t}\n\n\tconst totalWithTax = totalWithoutTax + totalTax;\n\n\treturn {\n\t\ttotalWithoutTax,\n\t\ttotalWithoutTaxFormatted: priceFormatter(totalWithoutTax, currency, language),\n\t\ttotalTax,\n\t\ttotalTaxFormatted: priceFormatter(totalTax, currency, language),\n\t\ttotalWithTax,\n\t\ttotalWithTaxFormatted: priceFormatter(totalWithTax, currency, language),\n\t};\n};\n\nexport const generateOrderItemsId = (\n\tproductId: number,\n\tvariantId: number | null,\n\tselectedAddons: SelectedAddons\n): string => {\n\tif (!productId) throw new Error(\"Product ID is required\");\n\n\t// Build the order items ID base with productId and variantId\n\tlet orderItemsId = `${productId}`;\n\tif (variantId) {\n\t\torderItemsId += `-${variantId}`;\n\t}\n\n\t// Build the addon part of the ID\n\tconst addonIdsPart = Object.entries(selectedAddons || {})\n\t\t.map(([addonId, option]) => {\n\t\t\tif (!addonId || !option) return null; // Skip invalid entries\n\t\t\tconst optionIds = Array.isArray(option) ? option.filter(Boolean).join(\"-\") : `${option}`;\n\t\t\tif (!optionIds) return null;\n\t\t\treturn `${addonId}-${optionIds}`;\n\t\t})\n\t\t.filter(Boolean) // Remove null/undefined values\n\t\t.join(\"-\");\n\n\t// Append addonIdsPart if it's not empty\n\tif (addonIdsPart) {\n\t\torderItemsId += `-${addonIdsPart}`;\n\t}\n\n\treturn orderItemsId;\n};\n\nexport const getOrderItemPrice = (orderItem: OrderItem) => {\n\tconst { price, variant, addons, quantity, vat } = orderItem || {};\n\tconst basePrice = variant?.price ?? price;\n\tconst addonsPrice = (addons || []).reduce((sum, addon) => sum + addon.price, 0);\n\n\tconst itemNetPrice = basePrice + addonsPrice;\n\t// Currently VAT is applied only on basePrice, not on addons\n\t// TODO: Re-evaluate for European market where tax may apply to addons too\n\tconst itemTax = basePrice * (vat / 100);\n\tconst itemGrossPrice = itemNetPrice + itemTax;\n\n\tconst totalNet = itemNetPrice * quantity;\n\tconst totalTax = itemTax * quantity;\n\tconst totalGross = itemGrossPrice * quantity;\n\n\treturn {\n\t\ttotalGross,\n\t\ttotalNet,\n\t\ttotalTax,\n\t\titemGrossPrice,\n\t\titemNetPrice,\n\t\titemTax,\n\t};\n};\n\nexport const getSelectedAddonsFromOrderItems = (item: OrderItem): SelectedAddons => {\n\tconst selectedAddons: SelectedAddons = (item?.addons || []).reduce(\n\t\t(acc, { addonId, optionId }) => {\n\t\t\tacc[addonId] = optionId;\n\n\t\t\treturn acc;\n\t\t},\n\t\t{}\n\t);\n\n\treturn selectedAddons;\n};\n","export const CO_DOMAIN = \"restaround.co\";\nexport const AZ_DOMAIN = \"restaround.az\";\nexport const EE_DOMAIN = \"restaround.ee\";\nexport const NL_DOMAIN = \"restaround.nl\";\n\nexport const DOMAINS = [CO_DOMAIN, AZ_DOMAIN, EE_DOMAIN, NL_DOMAIN]; // Supported domains list\n","import { CO_DOMAIN, DOMAINS } from \"./constants\";\n\nexport const getBaseUrl = (hostname: string, language: string) => {\n\tconst domain = DOMAINS.includes(hostname) ? hostname : CO_DOMAIN;\n\tconst locale = language || \"en\";\n\treturn { url: `https://${domain}/${locale}`, domain };\n};\n\nexport const getTLD = (language: string) => {\n\treturn language === \"az\" ? \"az\" : \"co\";\n};\n\nexport const getRegisterUrl = (language: string, source: string) => {\n\tconst tld = getTLD(language);\n\n\treturn `https://app.restaround.${tld}/auth/register?lang=${language}&utm_source=${source}`;\n};\n"],"names":["getCategoryTranslation","category","language","_b","_a","translations","find","call","item","getCategoryNameById","categoryId","categories","id","isEmpty","name","calculateTotalPrice","price","quantity","vat","IMAGE_BASE_URL","getImageSource","image","includes","startsWith","getLogoImageSource","logoImage","getCoverImageSource","coverImage","keyStr","triplet","e1","e2","e3","charAt","rgbDataURL","r","g","b","prepareCategoryAndProductMap","products","productMap","reduce","map","product","visible","Number","push","Object","assign","filter","length","getAddonTranslation","addon","getAddonOptionTranslation","option","getOptionPrice","currency","totalPrice","formattedTotalPrice","priceFormatter","getAddonOptionRawPrice","optionId","options","getOptionTitles","optionIds","Array","isArray","t","title","Boolean","join","getAddonTitle","_c","MenuAddonSelectType","getProductTranslation","getProductRawPrice","getProductPrice","getProductVariant","variantId","variants","getSelectedOptionsTotalPrice","selectedAddons","addons","prototype","hasOwnProperty","total","addonId","selectType","SINGLE","selectedOptionId","multipleTotal","getProductVariantRawPrice","variant","getProductVariantPrice","getProductVariantTranslation","getProductOrderRawPrice","noVat","optionsPrice","productData","selectedOptionsTotalPrice","getProductOrderPrice","getProductAddon","getOrderAddonsPrice","orderAddons","sum","current","getOrderPrice","order","totalWithoutTax","totalTax","items","itemTotal","undefined","totalWithTax","totalWithoutTaxFormatted","totalTaxFormatted","totalWithTaxFormatted","generateOrderItemsId","productId","Error","orderItemsId","addonIdsPart","entries","getOrderItemPrice","orderItem","basePrice","itemNetPrice","itemTax","itemGrossPrice","totalGross","totalNet","getSelectedAddonsFromOrderItems","acc","CO_DOMAIN","DOMAINS","getBaseUrl","hostname","domain","url","getTLD","getRegisterUrl","source"],"mappings":"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"}
|
package/dist/utils/index.js
CHANGED
|
@@ -1,2 +1,2 @@
|
|
|
1
|
-
"use strict";var t=require("@sorocraft/js-utils");const r=(t,r)=>{var e
|
|
1
|
+
"use strict";var t=require("@sorocraft/js-utils");const r=(t,r)=>{var e,o;return(null===(o=null===(e=null==t?void 0:t.translations)||void 0===e?void 0:e.find)||void 0===o?void 0:o.call(e,(t=>t.language===r)))||{}},e=(t=0,r=1,e=0)=>t*r*(1+e/100),o="https://images.restaround.co",a="ABCDEFGHIJKLMNOPQRSTUVWXYZabcdefghijklmnopqrstuvwxyz0123456789+/=",n=(t,r,e)=>a.charAt(t>>2)+a.charAt((3&t)<<4|r>>4)+a.charAt((15&r)<<2|e>>6)+a.charAt(63&e),i=(t,r)=>{var e;return(null===(e=((null==t?void 0:t.options)||[]).find((({id:t})=>t===r)))||void 0===e?void 0:e.price)||0};var d;!function(t){t.SINGLE="SINGLE",t.MULTIPLE="MULTIPLE"}(d||(d={}));const l=(t,r=1)=>{const{price:o=0,vat:a=0}=t||{};return e(o,r,a)},s=(t,r)=>{var e,o;return(null===(o=null===(e=null==t?void 0:t.variants)||void 0===e?void 0:e.find)||void 0===o?void 0:o.call(e,(t=>t.id===r)))||{}},u=(t,r={},e)=>((null==t?void 0:t.addons)||[]).filter((t=>Object.prototype.hasOwnProperty.call(r,t.id))).reduce(((t,e)=>{const{id:o,selectType:a}=e;if(a===d.SINGLE){const a=r[o];return t+i(e,a)}return t+(r[o]||[]).reduce(((t,r)=>t+i(e,r)),0)}),0)*e,c=(t,r,o)=>{const a=s(r,t),{vat:n}=r||{},{price:i}=a||{};return e(i,o,n)},p=({product:r,variantId:e,quantity:o=1,selectedAddons:a,noVat:n=!1})=>{if(t.isEmpty(r))return{price:0,optionsPrice:0,total:0};const i=Object.assign(Object.assign({},r),{vat:n?0:r.vat}),d=u(i,a,o),s=e?c(e,i,o):l(i,o);return{price:s,optionsPrice:d,total:s+d}},v=(t=[],r)=>r*t.reduce(((t,r)=>t+r.price),0),g="restaround.co",A=[g,"restaround.az","restaround.ee","restaround.nl"],x=t=>"az"===t?"az":"co";exports.IMAGE_BASE_URL=o,exports.calculateTotalPrice=e,exports.generateOrderItemsId=(t,r,e)=>{if(!t)throw new Error("Product ID is required");let o=`${t}`;r&&(o+=`-${r}`);const a=Object.entries(e||{}).map((([t,r])=>{if(!t||!r)return null;const e=Array.isArray(r)?r.filter(Boolean).join("-"):`${r}`;return e?`${t}-${e}`:null})).filter(Boolean).join("-");return a&&(o+=`-${a}`),o},exports.getAddonOptionRawPrice=i,exports.getAddonOptionTranslation=(t,r)=>{var e,o;return(null===(o=null===(e=null==t?void 0:t.translations)||void 0===e?void 0:e.find)||void 0===o?void 0:o.call(e,(t=>t.language===r)))||{}},exports.getAddonTitle=(t,r)=>{var e,o,a;return(null===(a=null===(o=null===(e=null==t?void 0:t.translations)||void 0===e?void 0:e.find)||void 0===o?void 0:o.call(e,(t=>t.language===r)))||void 0===a?void 0:a.title)||""},exports.getAddonTranslation=(t,r)=>{var e,o;return(null===(o=null===(e=null==t?void 0:t.translations)||void 0===e?void 0:e.find)||void 0===o?void 0:o.call(e,(t=>t.language===r)))||{}},exports.getBaseUrl=(t,r)=>{const e=A.includes(t)?t:g;return{url:`https://${e}/${r||"en"}`,domain:e}},exports.getCategoryNameById=(e,o,a)=>{var n;const i=null===(n=null==o?void 0:o.find)||void 0===n?void 0:n.call(o,(({id:t})=>t===e));if(t.isEmpty(i))return"";const{name:d}=r(i,a);return d},exports.getCategoryTranslation=r,exports.getCoverImageSource=t=>t?t.includes("base64")||t.startsWith("https://")?t:`${o}/${t}`:"https://images.restaround.co/restaround-doodle.webp",exports.getImageSource=t=>t?t.includes("base64")||t.startsWith("https://")?t:`${o}/${t}`:"",exports.getLogoImageSource=t=>t?t.includes("base64")||t.startsWith("https://")?t:`${o}/${t}`:"https://images.restaround.co/no-photo-128.webp",exports.getOptionPrice=({option:r,currency:e="USD",language:o="en"})=>{const{price:a}=r||{};return{totalPrice:a,formattedTotalPrice:t.priceFormatter(a,e,o)}},exports.getOptionTitles=(t,r,e)=>{var o;if(Array.isArray(r))return t.filter((({id:t})=>r.includes(t))).map((({translations:t})=>{var r;return(null===(r=t.find((t=>t.language===e)))||void 0===r?void 0:r.title)||""})).filter(Boolean).join(", ");{const a=t.find((({id:t})=>t===r));return(null===(o=null==a?void 0:a.translations.find((t=>t.language===e)))||void 0===o?void 0:o.title)||""}},exports.getOrderAddonsPrice=v,exports.getOrderItemPrice=t=>{var r;const{price:e,variant:o,addons:a,quantity:n,vat:i}=t||{},d=null!==(r=null==o?void 0:o.price)&&void 0!==r?r:e,l=d+(a||[]).reduce(((t,r)=>t+r.price),0),s=d*(i/100),u=l+s;return{totalGross:u*n,totalNet:l*n,totalTax:s*n,itemGrossPrice:u,itemNetPrice:l,itemTax:s}},exports.getOrderPrice=(r,e,o)=>{let a=0,n=0;for(const t of r.items){const e=(i=t.price,d=t.quantity,l=t.addons,d*i+v(l,d));a+=e,void 0===r.vat&&t.vat&&(n+=e*t.vat/100)}var i,d,l;void 0!==r.vat&&(n=a*r.vat/100);const s=a+n;return{totalWithoutTax:a,totalWithoutTaxFormatted:t.priceFormatter(a,e,o),totalTax:n,totalTaxFormatted:t.priceFormatter(n,e,o),totalWithTax:s,totalWithTaxFormatted:t.priceFormatter(s,e,o)}},exports.getProductAddon=(t,r)=>((null==t?void 0:t.addons)||[]).find((({id:t})=>t===r))||{},exports.getProductOrderPrice=({product:r,variantId:e,quantity:o=1,currency:a,language:n,selectedAddons:i,noVat:d=!1})=>{const{total:l}=p({product:r,variantId:e,quantity:o,selectedAddons:i,noVat:d});return{totalPrice:l,formattedTotalPrice:t.priceFormatter(l,a,n)}},exports.getProductOrderRawPrice=p,exports.getProductPrice=(r,e,o,a=1)=>{const n=l(r,a);return{totalPrice:n,formattedTotalPrice:t.priceFormatter(n,e,o)}},exports.getProductRawPrice=l,exports.getProductTranslation=(t,r)=>{var e,o;return(null===(o=null===(e=null==t?void 0:t.translations)||void 0===e?void 0:e.find)||void 0===o?void 0:o.call(e,(t=>t.language===r)))||{}},exports.getProductVariant=s,exports.getProductVariantPrice=({variantId:r,currency:e="USD",language:o="en",product:a,quantity:n=1})=>{const i=c(r,a,n);return{totalPrice:i,formattedTotalPrice:t.priceFormatter(i,e,o)}},exports.getProductVariantRawPrice=c,exports.getProductVariantTranslation=(t,r)=>{var e,o;return(null===(o=null===(e=null==t?void 0:t.translations)||void 0===e?void 0:e.find)||void 0===o?void 0:o.call(e,(t=>t.language===r)))||{}},exports.getRegisterUrl=(t,r)=>`https://app.restaround.${x(t)}/auth/register?lang=${t}&utm_source=${r}`,exports.getSelectedAddonsFromOrderItems=t=>((null==t?void 0:t.addons)||[]).reduce(((t,{addonId:r,optionId:e})=>(t[r]=e,t)),{}),exports.getSelectedOptionsTotalPrice=u,exports.getTLD=x,exports.prepareCategoryAndProductMap=(t,r)=>{const e=r.reduce(((t,r)=>{if(!r.visible)return t;const e=Number(r.categoryId);return t[e]||(t[e]=[]),t[e].push(r),t}),{});return t.map((t=>Object.assign(Object.assign({},t),{products:e[Number(t.id)]||[]}))).filter((t=>{var r;return(null===(r=null==t?void 0:t.products)||void 0===r?void 0:r.length)>0}))},exports.rgbDataURL=(t,r,e)=>`data:image/gif;base64,R0lGODlhAQABAPAA${n(0,t,r)+n(e,255,255)}/yH5BAAAAAAALAAAAAABAAEAAAICRAEAOw==`;
|
|
2
2
|
//# sourceMappingURL=index.js.map
|