@ozdao/prometheus-framework 0.2.252 → 0.2.254
Sign up to get free protection for your applications and to get access to all the features.
- package/dist/auth.server.js +298 -14
- package/dist/auth.server.mjs +298 -14
- package/dist/builder.js +4 -4
- package/dist/builder.mjs +4 -4
- package/dist/chats.server.js +110 -0
- package/dist/chats.server.mjs +111 -0
- package/dist/community.server.js +38 -21
- package/dist/community.server.mjs +38 -21
- package/dist/events.server.js +38 -18
- package/dist/events.server.mjs +38 -17
- package/dist/files.server.js +12 -3
- package/dist/files.server.mjs +12 -3
- package/dist/gallery.server.js +17 -4
- package/dist/gallery.server.mjs +17 -4
- package/dist/organizations.server.js +43 -26
- package/dist/organizations.server.mjs +43 -26
- package/dist/products.server.js +49 -23
- package/dist/products.server.mjs +49 -22
- package/dist/prometheus-framework/src/modules/auth/auth.client.cjs +15 -3
- package/dist/prometheus-framework/src/modules/auth/auth.client.cjs.map +1 -1
- package/dist/prometheus-framework/src/modules/auth/auth.client.js +16 -4
- package/dist/prometheus-framework/src/modules/auth/auth.client.js.map +1 -1
- package/dist/prometheus-framework/src/modules/auth/views/components/blocks/CardUser.vue.cjs +95 -0
- package/dist/prometheus-framework/src/modules/auth/views/components/blocks/CardUser.vue.cjs.map +1 -0
- package/dist/prometheus-framework/src/modules/auth/views/components/blocks/CardUser.vue.js +95 -0
- package/dist/prometheus-framework/src/modules/auth/views/components/blocks/CardUser.vue.js.map +1 -0
- package/dist/prometheus-framework/src/modules/auth/views/components/pages/Profile.vue.cjs +284 -0
- package/dist/prometheus-framework/src/modules/auth/views/components/pages/Profile.vue.cjs.map +1 -0
- package/dist/prometheus-framework/src/modules/auth/views/components/pages/Profile.vue.js +284 -0
- package/dist/prometheus-framework/src/modules/auth/views/components/pages/Profile.vue.js.map +1 -0
- package/dist/prometheus-framework/src/modules/auth/views/components/pages/Profile.vue2.cjs +2 -0
- package/dist/prometheus-framework/src/modules/auth/views/components/pages/Profile.vue2.cjs.map +1 -0
- package/dist/prometheus-framework/src/modules/auth/views/components/pages/Profile.vue2.js +2 -0
- package/dist/prometheus-framework/src/modules/auth/views/components/pages/Profile.vue2.js.map +1 -0
- package/dist/prometheus-framework/src/modules/auth/views/components/pages/ProfileBlogposts.vue.cjs +85 -0
- package/dist/prometheus-framework/src/modules/auth/views/components/pages/ProfileBlogposts.vue.cjs.map +1 -0
- package/dist/prometheus-framework/src/modules/auth/views/components/pages/ProfileBlogposts.vue.js +85 -0
- package/dist/prometheus-framework/src/modules/auth/views/components/pages/ProfileBlogposts.vue.js.map +1 -0
- package/dist/prometheus-framework/src/modules/auth/views/components/pages/ProfileEdit.vue.cjs +176 -0
- package/dist/prometheus-framework/src/modules/auth/views/components/pages/ProfileEdit.vue.cjs.map +1 -0
- package/dist/prometheus-framework/src/modules/auth/views/components/pages/ProfileEdit.vue.js +176 -0
- package/dist/prometheus-framework/src/modules/auth/views/components/pages/ProfileEdit.vue.js.map +1 -0
- package/dist/prometheus-framework/src/modules/auth/views/components/pages/ProfileEdit.vue2.cjs +2 -0
- package/dist/prometheus-framework/src/modules/auth/views/components/pages/ProfileEdit.vue2.cjs.map +1 -0
- package/dist/prometheus-framework/src/modules/auth/views/components/pages/ProfileEdit.vue2.js +2 -0
- package/dist/prometheus-framework/src/modules/auth/views/components/pages/ProfileEdit.vue2.js.map +1 -0
- package/dist/prometheus-framework/src/modules/auth/views/components/sections/FeaturedUsers.vue.cjs +114 -0
- package/dist/prometheus-framework/src/modules/auth/views/components/sections/FeaturedUsers.vue.cjs.map +1 -0
- package/dist/prometheus-framework/src/modules/auth/views/components/sections/FeaturedUsers.vue.js +114 -0
- package/dist/prometheus-framework/src/modules/auth/views/components/sections/FeaturedUsers.vue.js.map +1 -0
- package/dist/prometheus-framework/src/modules/auth/views/components/sections/ProfileCompletion.vue.cjs +72 -0
- package/dist/prometheus-framework/src/modules/auth/views/components/sections/ProfileCompletion.vue.cjs.map +1 -0
- package/dist/prometheus-framework/src/modules/auth/views/components/sections/ProfileCompletion.vue.js +72 -0
- package/dist/prometheus-framework/src/modules/auth/views/components/sections/ProfileCompletion.vue.js.map +1 -0
- package/dist/prometheus-framework/src/modules/auth/views/router/users.cjs +97 -0
- package/dist/prometheus-framework/src/modules/auth/views/router/users.cjs.map +1 -0
- package/dist/prometheus-framework/src/modules/auth/views/router/users.js +97 -0
- package/dist/prometheus-framework/src/modules/auth/views/router/users.js.map +1 -0
- package/dist/prometheus-framework/src/modules/auth/views/store/users.cjs +95 -0
- package/dist/prometheus-framework/src/modules/auth/views/store/users.cjs.map +1 -0
- package/dist/prometheus-framework/src/modules/auth/views/store/users.js +95 -0
- package/dist/prometheus-framework/src/modules/auth/views/store/users.js.map +1 -0
- package/dist/prometheus-framework/src/modules/backoffice/backoffice.client.cjs +32 -2
- package/dist/prometheus-framework/src/modules/backoffice/backoffice.client.cjs.map +1 -1
- package/dist/prometheus-framework/src/modules/backoffice/backoffice.client.js +32 -2
- package/dist/prometheus-framework/src/modules/backoffice/backoffice.client.js.map +1 -1
- package/dist/prometheus-framework/src/modules/backoffice/router/backoffice.cjs +2 -2
- package/dist/prometheus-framework/src/modules/backoffice/router/backoffice.cjs.map +1 -1
- package/dist/prometheus-framework/src/modules/backoffice/router/backoffice.js +2 -2
- package/dist/prometheus-framework/src/modules/backoffice/router/backoffice.js.map +1 -1
- package/dist/prometheus-framework/src/modules/chats/chats.client.cjs +31 -0
- package/dist/prometheus-framework/src/modules/chats/chats.client.cjs.map +1 -0
- package/dist/prometheus-framework/src/modules/chats/chats.client.js +31 -0
- package/dist/prometheus-framework/src/modules/chats/chats.client.js.map +1 -0
- package/dist/prometheus-framework/src/modules/community/community.client.cjs +42 -7
- package/dist/prometheus-framework/src/modules/community/community.client.cjs.map +1 -1
- package/dist/prometheus-framework/src/modules/community/community.client.js +59 -24
- package/dist/prometheus-framework/src/modules/community/community.client.js.map +1 -1
- package/dist/prometheus-framework/src/modules/community/router/blogposts.cjs +68 -70
- package/dist/prometheus-framework/src/modules/community/router/blogposts.cjs.map +1 -1
- package/dist/prometheus-framework/src/modules/community/router/blogposts.js +68 -70
- package/dist/prometheus-framework/src/modules/community/router/blogposts.js.map +1 -1
- package/dist/prometheus-framework/src/modules/gallery/gallery.client.cjs +26 -3
- package/dist/prometheus-framework/src/modules/gallery/gallery.client.cjs.map +1 -1
- package/dist/prometheus-framework/src/modules/gallery/gallery.client.js +27 -4
- package/dist/prometheus-framework/src/modules/gallery/gallery.client.js.map +1 -1
- package/dist/prometheus-framework/src/modules/gallery/router/gallery.router.cjs +2 -2
- package/dist/prometheus-framework/src/modules/gallery/router/gallery.router.cjs.map +1 -1
- package/dist/prometheus-framework/src/modules/gallery/router/gallery.router.js +2 -2
- package/dist/prometheus-framework/src/modules/gallery/router/gallery.router.js.map +1 -1
- package/dist/prometheus-framework/src/modules/orders/components/pages/OrderCreate.vue.cjs +1 -1
- package/dist/prometheus-framework/src/modules/orders/components/pages/OrderCreate.vue.cjs.map +1 -1
- package/dist/prometheus-framework/src/modules/orders/components/pages/OrderCreate.vue.js +1 -1
- package/dist/prometheus-framework/src/modules/orders/components/pages/OrderCreate.vue.js.map +1 -1
- package/dist/prometheus-framework/src/modules/orders/components/pages/OrderCreateBackoffice.vue.cjs +1 -1
- package/dist/prometheus-framework/src/modules/orders/components/pages/OrderCreateBackoffice.vue.cjs.map +1 -1
- package/dist/prometheus-framework/src/modules/orders/components/pages/OrderCreateBackoffice.vue.js +1 -1
- package/dist/prometheus-framework/src/modules/orders/components/pages/OrderCreateBackoffice.vue.js.map +1 -1
- package/dist/prometheus-framework/src/modules/orders/components/sections/FormAddCustomer.vue.cjs +2 -2
- package/dist/prometheus-framework/src/modules/orders/components/sections/FormAddCustomer.vue.cjs.map +1 -1
- package/dist/prometheus-framework/src/modules/orders/components/sections/FormAddCustomer.vue.js +2 -2
- package/dist/prometheus-framework/src/modules/orders/components/sections/FormAddCustomer.vue.js.map +1 -1
- package/dist/prometheus-framework/src/modules/orders/orders.client.cjs +4 -1
- package/dist/prometheus-framework/src/modules/orders/orders.client.cjs.map +1 -1
- package/dist/prometheus-framework/src/modules/orders/orders.client.js +4 -1
- package/dist/prometheus-framework/src/modules/orders/orders.client.js.map +1 -1
- package/dist/prometheus-framework/src/modules/orders/store/testimonials.cjs +63 -0
- package/dist/prometheus-framework/src/modules/orders/store/testimonials.cjs.map +1 -0
- package/dist/prometheus-framework/src/modules/orders/store/testimonials.js +63 -0
- package/dist/prometheus-framework/src/modules/orders/store/testimonials.js.map +1 -0
- package/dist/prometheus-framework/src/modules/organizations/components/blocks/CardDepartment.vue.cjs +2 -2
- package/dist/prometheus-framework/src/modules/organizations/components/blocks/CardDepartment.vue.cjs.map +1 -1
- package/dist/prometheus-framework/src/modules/organizations/components/blocks/CardDepartment.vue.js +2 -2
- package/dist/prometheus-framework/src/modules/organizations/components/blocks/CardDepartment.vue.js.map +1 -1
- package/dist/prometheus-framework/src/modules/organizations/components/blocks/CardOrganization.vue.cjs +1 -1
- package/dist/prometheus-framework/src/modules/organizations/components/blocks/CardOrganization.vue.cjs.map +1 -1
- package/dist/prometheus-framework/src/modules/organizations/components/blocks/CardOrganization.vue.js +1 -1
- package/dist/prometheus-framework/src/modules/organizations/components/blocks/CardOrganization.vue.js.map +1 -1
- package/dist/prometheus-framework/src/modules/organizations/components/pages/Department.vue.cjs +1 -1
- package/dist/prometheus-framework/src/modules/organizations/components/pages/Department.vue.cjs.map +1 -1
- package/dist/prometheus-framework/src/modules/organizations/components/pages/Department.vue.js +1 -1
- package/dist/prometheus-framework/src/modules/organizations/components/pages/Department.vue.js.map +1 -1
- package/dist/prometheus-framework/src/modules/organizations/components/pages/DepartmentEdit.vue.cjs +1 -1
- package/dist/prometheus-framework/src/modules/organizations/components/pages/DepartmentEdit.vue.cjs.map +1 -1
- package/dist/prometheus-framework/src/modules/organizations/components/pages/DepartmentEdit.vue.js +1 -1
- package/dist/prometheus-framework/src/modules/organizations/components/pages/DepartmentEdit.vue.js.map +1 -1
- package/dist/prometheus-framework/src/modules/organizations/components/pages/Members.vue.cjs +1 -1
- package/dist/prometheus-framework/src/modules/organizations/components/pages/Members.vue.cjs.map +1 -1
- package/dist/prometheus-framework/src/modules/organizations/components/pages/Members.vue.js +1 -1
- package/dist/prometheus-framework/src/modules/organizations/components/pages/Members.vue.js.map +1 -1
- package/dist/prometheus-framework/src/modules/organizations/components/pages/Organization.vue.cjs.map +1 -1
- package/dist/prometheus-framework/src/modules/organizations/components/pages/Organization.vue.js.map +1 -1
- package/dist/prometheus-framework/src/modules/organizations/components/sections/MembersAdd.vue.cjs +2 -2
- package/dist/prometheus-framework/src/modules/organizations/components/sections/MembersAdd.vue.cjs.map +1 -1
- package/dist/prometheus-framework/src/modules/organizations/components/sections/MembersAdd.vue.js +2 -2
- package/dist/prometheus-framework/src/modules/organizations/components/sections/MembersAdd.vue.js.map +1 -1
- package/dist/prometheus-framework/src/modules/organizations/organizations.client.cjs +60 -11
- package/dist/prometheus-framework/src/modules/organizations/organizations.client.cjs.map +1 -1
- package/dist/prometheus-framework/src/modules/organizations/organizations.client.js +95 -46
- package/dist/prometheus-framework/src/modules/organizations/organizations.client.js.map +1 -1
- package/dist/prometheus-framework/src/modules/organizations/router/organizations.cjs +6 -10
- package/dist/prometheus-framework/src/modules/organizations/router/organizations.cjs.map +1 -1
- package/dist/prometheus-framework/src/modules/organizations/router/organizations.js +8 -12
- package/dist/prometheus-framework/src/modules/organizations/router/organizations.js.map +1 -1
- package/dist/prometheus-framework/src/modules/pages/pages.client.cjs +500 -500
- package/dist/prometheus-framework/src/modules/pages/pages.client.js +500 -500
- package/dist/prometheus-framework/src/modules/products/components/layouts/Marketplace.vue.cjs +179 -0
- package/dist/prometheus-framework/src/modules/products/components/layouts/Marketplace.vue.cjs.map +1 -0
- package/dist/prometheus-framework/src/modules/products/components/layouts/Marketplace.vue.js +179 -0
- package/dist/prometheus-framework/src/modules/products/components/layouts/Marketplace.vue.js.map +1 -0
- package/dist/prometheus-framework/src/modules/products/components/pages/Catalog.vue.cjs +64 -0
- package/dist/prometheus-framework/src/modules/products/components/pages/Catalog.vue.cjs.map +1 -0
- package/dist/prometheus-framework/src/modules/products/components/pages/Catalog.vue.js +64 -0
- package/dist/prometheus-framework/src/modules/products/components/pages/Catalog.vue.js.map +1 -0
- package/dist/prometheus-framework/src/modules/products/components/pages/ProductRecommmendation.vue.cjs +2 -2
- package/dist/prometheus-framework/src/modules/products/components/pages/ProductRecommmendation.vue.js +2 -2
- package/dist/prometheus-framework/src/modules/products/components/pages/Products.vue.cjs +2 -2
- package/dist/prometheus-framework/src/modules/products/components/pages/Products.vue.cjs.map +1 -1
- package/dist/prometheus-framework/src/modules/products/components/pages/Products.vue.js +2 -2
- package/dist/prometheus-framework/src/modules/products/components/pages/Products.vue.js.map +1 -1
- package/dist/prometheus-framework/src/modules/products/components/sections/FilterProducts.vue.cjs +1 -1
- package/dist/prometheus-framework/src/modules/products/components/sections/FilterProducts.vue.cjs.map +1 -1
- package/dist/prometheus-framework/src/modules/products/components/sections/FilterProducts.vue.js +1 -1
- package/dist/prometheus-framework/src/modules/products/components/sections/FilterProducts.vue.js.map +1 -1
- package/dist/prometheus-framework/src/modules/products/components/sections/Filters.vue.cjs +156 -0
- package/dist/prometheus-framework/src/modules/products/components/sections/Filters.vue.cjs.map +1 -0
- package/dist/prometheus-framework/src/modules/products/components/sections/Filters.vue.js +157 -0
- package/dist/prometheus-framework/src/modules/products/components/sections/Filters.vue.js.map +1 -0
- package/dist/prometheus-framework/src/modules/products/components/sections/HeroRecommendation.vue.cjs +1 -1
- package/dist/prometheus-framework/src/modules/products/components/sections/HeroRecommendation.vue.cjs.map +1 -1
- package/dist/prometheus-framework/src/modules/products/components/sections/HeroRecommendation.vue.js +1 -1
- package/dist/prometheus-framework/src/modules/products/components/sections/HeroRecommendation.vue.js.map +1 -1
- package/dist/prometheus-framework/src/modules/products/components/sections/PopularProducts.vue.cjs +1 -1
- package/dist/prometheus-framework/src/modules/products/components/sections/PopularProducts.vue.cjs.map +1 -1
- package/dist/prometheus-framework/src/modules/products/components/sections/PopularProducts.vue.js +1 -1
- package/dist/prometheus-framework/src/modules/products/components/sections/PopularProducts.vue.js.map +1 -1
- package/dist/prometheus-framework/src/modules/products/products.client.cjs +72 -7
- package/dist/prometheus-framework/src/modules/products/products.client.cjs.map +1 -1
- package/dist/prometheus-framework/src/modules/products/products.client.js +114 -49
- package/dist/prometheus-framework/src/modules/products/products.client.js.map +1 -1
- package/dist/prometheus-framework/src/modules/products/router/marketplace.router.cjs +46 -0
- package/dist/prometheus-framework/src/modules/products/router/marketplace.router.cjs.map +1 -0
- package/dist/prometheus-framework/src/modules/products/router/marketplace.router.js +46 -0
- package/dist/prometheus-framework/src/modules/products/router/marketplace.router.js.map +1 -0
- package/dist/prometheus-framework/src/modules/products/router/products.router.cjs +79 -36
- package/dist/prometheus-framework/src/modules/products/router/products.router.cjs.map +1 -1
- package/dist/prometheus-framework/src/modules/products/router/products.router.js +78 -35
- package/dist/prometheus-framework/src/modules/products/router/products.router.js.map +1 -1
- package/dist/prometheus-framework/src/modules/products/store/marketplace.cjs +57 -0
- package/dist/prometheus-framework/src/modules/products/store/marketplace.cjs.map +1 -0
- package/dist/prometheus-framework/src/modules/products/store/marketplace.js +57 -0
- package/dist/prometheus-framework/src/modules/products/store/marketplace.js.map +1 -0
- package/dist/prometheus-framework/src/modules/reports/reports.client.cjs +21 -2
- package/dist/prometheus-framework/src/modules/reports/reports.client.cjs.map +1 -1
- package/dist/prometheus-framework/src/modules/reports/reports.client.js +20 -1
- package/dist/prometheus-framework/src/modules/reports/reports.client.js.map +1 -1
- package/dist/prometheus-framework/src/modules/spots/components/layouts/Spots.vue.cjs +1 -1
- package/dist/prometheus-framework/src/modules/spots/components/layouts/Spots.vue.cjs.map +1 -1
- package/dist/prometheus-framework/src/modules/spots/components/layouts/Spots.vue.js +1 -1
- package/dist/prometheus-framework/src/modules/spots/components/layouts/Spots.vue.js.map +1 -1
- package/dist/prometheus-framework/src/modules/spots/components/pages/Map.vue.cjs +2 -2
- package/dist/prometheus-framework/src/modules/spots/components/pages/Map.vue.cjs.map +1 -1
- package/dist/prometheus-framework/src/modules/spots/components/pages/Map.vue.js +2 -2
- package/dist/prometheus-framework/src/modules/spots/components/pages/Map.vue.js.map +1 -1
- package/dist/prometheus-framework/src/modules/spots/components/pages/Spot.vue.cjs +2 -2
- package/dist/prometheus-framework/src/modules/spots/components/pages/Spot.vue.cjs.map +1 -1
- package/dist/prometheus-framework/src/modules/spots/components/pages/Spot.vue.js +2 -2
- package/dist/prometheus-framework/src/modules/spots/components/pages/Spot.vue.js.map +1 -1
- package/dist/reports.server.js +21 -8
- package/dist/reports.server.mjs +21 -8
- package/package.json +9 -1
- package/src/builder/webpack/webpack.config.client.js +2 -2
- package/src/builder/webpack/webpack.config.server.js +1 -1
- package/src/builder/webpack/webpack.config.spa.js +1 -1
- package/src/builder/webpack/webpack.config.ssr.js +1 -1
- package/src/modules/auth/auth.client.js +16 -3
- package/src/modules/auth/auth.server.js +22 -1
- package/src/modules/{users → auth/controllers}/routes/users.routes.js +1 -1
- package/src/modules/auth/controllers/services/auth.service.js +0 -1
- package/src/modules/{users → auth/views}/components/pages/Profile.vue +1 -1
- package/src/modules/{users → auth/views}/components/pages/ProfileEdit.vue +2 -2
- package/src/modules/{users → auth/views}/components/sections/FeaturedUsers.vue +2 -2
- package/src/modules/auth/views/router/users.js +79 -0
- package/src/modules/backoffice/backoffice.client.js +53 -11
- package/src/modules/backoffice/router/backoffice.js +29 -2
- package/src/modules/chats/chats.client.js +48 -0
- package/src/modules/chats/chats.server.js +32 -0
- package/src/modules/community/community.client.js +56 -10
- package/src/modules/community/community.server.js +35 -14
- package/src/modules/community/models/comment.model.js +7 -7
- package/src/modules/community/models/reaction.model.js +5 -5
- package/src/modules/community/router/blogposts.js +55 -57
- package/src/modules/events/events.server.js +37 -16
- package/src/modules/events/models/ticket.model.js +6 -6
- package/src/modules/files/files.server.js +17 -7
- package/src/modules/gallery/gallery.client.js +44 -8
- package/src/modules/gallery/gallery.server.js +28 -9
- package/src/modules/gallery/router/gallery.router.js +2 -2
- package/src/modules/orders/components/pages/OrderCreate.vue +1 -1
- package/src/modules/orders/components/pages/OrderCreateBackoffice.vue +1 -1
- package/src/modules/orders/components/sections/FormAddCustomer.vue +2 -2
- package/src/modules/orders/orders.client.js +4 -1
- package/src/modules/orders/orders.server.js +1 -0
- package/src/modules/organizations/components/blocks/CardDepartment.vue +1 -1
- package/src/modules/organizations/components/blocks/CardOrganization.vue +1 -1
- package/src/modules/organizations/components/pages/Department.vue +1 -1
- package/src/modules/organizations/components/pages/DepartmentEdit.vue +1 -1
- package/src/modules/organizations/components/pages/Members.vue +1 -1
- package/src/modules/organizations/components/pages/Organization.vue +1 -1
- package/src/modules/organizations/components/sections/MembersAdd.vue +2 -2
- package/src/modules/organizations/controllers/organizations.controller.js +0 -2
- package/src/modules/organizations/models/department.model.js +7 -7
- package/src/modules/organizations/models/membership.model.js +5 -5
- package/src/modules/organizations/organizations.client.js +71 -16
- package/src/modules/organizations/organizations.server.js +43 -18
- package/src/modules/organizations/router/organizations.js +6 -13
- package/src/modules/{marketplace → products}/components/layouts/Marketplace.vue +20 -19
- package/src/modules/{marketplace → products}/components/pages/Catalog.vue +5 -5
- package/src/modules/products/components/pages/Products.vue +2 -2
- package/src/modules/products/components/sections/FilterProducts.vue +1 -1
- package/src/modules/{marketplace → products}/components/sections/Filters.vue +12 -15
- package/src/modules/products/components/sections/HeroRecommendation.vue +1 -1
- package/src/modules/products/components/sections/PopularProducts.vue +1 -1
- package/src/modules/products/models/category.model.js +3 -3
- package/src/modules/products/models/product.model.js +7 -7
- package/src/modules/products/products.client.js +93 -25
- package/src/modules/products/products.server.js +47 -16
- package/src/modules/products/router/marketplace.router.js +38 -0
- package/src/modules/products/router/products.router.js +72 -32
- package/src/modules/reports/models/report.model.js +4 -4
- package/src/modules/reports/reports.client.js +35 -14
- package/src/modules/reports/reports.server.js +27 -8
- package/src/modules/spots/components/layouts/Spots.vue +1 -1
- package/src/modules/spots/components/pages/Map.vue +1 -1
- package/src/modules/spots/components/pages/Spot.vue +1 -1
- package/src/modules/backoffice/router/admin.js +0 -51
- package/src/modules/landing/components/pages/404.vue +0 -3
- package/src/modules/landing/components/pages/Farming.vue +0 -226
- package/src/modules/landing/components/pages/Governance.vue +0 -144
- package/src/modules/landing/components/pages/Home.vue +0 -51
- package/src/modules/landing/components/pages/Hotel.vue +0 -43
- package/src/modules/landing/router/landing.js +0 -39
- package/src/modules/legal/components/pages/Legal.vue +0 -62
- package/src/modules/legal/components/pages/legal/Cookies.vue +0 -370
- package/src/modules/legal/components/pages/legal/EULA.vue +0 -2145
- package/src/modules/legal/components/pages/legal/Privacy.vue +0 -4284
- package/src/modules/legal/components/pages/legal/Terms.vue +0 -1283
- package/src/modules/legal/legal.client.js +0 -18
- package/src/modules/legal/router/legal.js +0 -59
- package/src/modules/marketplace/router/marketplace.js +0 -54
- package/src/modules/users/router/users.js +0 -90
- package/src/modules/users/users.client.js +0 -22
- package/src/modules/users/users.server.js +0 -13
- /package/src/modules/{users → auth/controllers}/middlewares/visitor.logger.js +0 -0
- /package/src/modules/{users/controllers/users.controller.js → auth/controllers/services/users.service.js} +0 -0
- /package/src/modules/{users → auth}/models/request.model.js +0 -0
- /package/src/modules/{users → auth}/models/user.model.js +0 -0
- /package/src/modules/{users → auth}/models/visitor.model.js +0 -0
- /package/src/modules/{users → auth/views}/components/blocks/CardUser.vue +0 -0
- /package/src/modules/{users → auth/views}/components/pages/ProfileBlogposts.vue +0 -0
- /package/src/modules/{users → auth/views}/components/pages/ProfileComments.vue +0 -0
- /package/src/modules/{users → auth/views}/components/pages/ProfileLikes.vue +0 -0
- /package/src/modules/{users → auth/views}/components/sections/ProfileCompletion.vue +0 -0
- /package/src/modules/{users → auth/views}/router/account.js +0 -0
- /package/src/modules/{users → auth/views}/store/users.js +0 -0
- /package/src/modules/{projects/controller → governance/controllers/factories}/projects.controller.js +0 -0
- /package/src/modules/{projects → governance/controllers}/routes/projects.routes.js +0 -0
- /package/src/modules/{projects → governance}/models/project.model.js +0 -0
- /package/src/modules/{projects → governance/views}/store/projects.js +0 -0
- /package/src/modules/{marketplace → products}/store/marketplace.js +0 -0
@@ -1,39 +1,82 @@
|
|
1
1
|
"use strict";
|
2
|
-
Object.
|
2
|
+
Object.defineProperty(exports, Symbol.toStringTag, { value: "Module" });
|
3
3
|
const auth_validation = require("../../auth/views/middlewares/auth.validation.cjs");
|
4
|
-
|
5
|
-
|
6
|
-
|
7
|
-
|
8
|
-
|
9
|
-
|
10
|
-
|
11
|
-
|
12
|
-
|
13
|
-
|
14
|
-
|
15
|
-
|
16
|
-
|
17
|
-
|
18
|
-
},
|
19
|
-
|
20
|
-
|
21
|
-
|
22
|
-
|
23
|
-
|
24
|
-
|
25
|
-
|
26
|
-
|
27
|
-
|
28
|
-
|
29
|
-
|
30
|
-
|
31
|
-
|
32
|
-
|
33
|
-
|
34
|
-
|
35
|
-
|
36
|
-
|
37
|
-
|
38
|
-
|
4
|
+
function createProductRoutes(prefix = "", options = {}) {
|
5
|
+
const nameWithPrefix = (name) => prefix ? `${prefix}${name}` : name;
|
6
|
+
const routes = {
|
7
|
+
path: options.basePath || "products",
|
8
|
+
children: [
|
9
|
+
{
|
10
|
+
path: "",
|
11
|
+
name: nameWithPrefix("Products"),
|
12
|
+
meta: {
|
13
|
+
title: {
|
14
|
+
en: "Products",
|
15
|
+
ru: "Товары"
|
16
|
+
},
|
17
|
+
authorize: options.productsAuthorize || []
|
18
|
+
},
|
19
|
+
component: () => Promise.resolve().then(() => require(
|
20
|
+
/* webpackChunkName: 'Products' */
|
21
|
+
"../components/pages/Products.vue.cjs"
|
22
|
+
))
|
23
|
+
},
|
24
|
+
{
|
25
|
+
path: "add",
|
26
|
+
name: nameWithPrefix("ProductAdd"),
|
27
|
+
meta: {
|
28
|
+
title: {
|
29
|
+
en: "Add Product",
|
30
|
+
ru: "Добавить товар"
|
31
|
+
},
|
32
|
+
authorize: options.addProductAuthorize || []
|
33
|
+
},
|
34
|
+
component: () => Promise.resolve().then(() => require("../components/pages/ProductEdit.vue.cjs"))
|
35
|
+
},
|
36
|
+
{
|
37
|
+
path: ":product",
|
38
|
+
name: nameWithPrefix("Product"),
|
39
|
+
meta: {
|
40
|
+
title: {
|
41
|
+
en: "Product",
|
42
|
+
ru: "Продукт"
|
43
|
+
}
|
44
|
+
},
|
45
|
+
component: () => Promise.resolve().then(() => require("../components/pages/Product.vue.cjs"))
|
46
|
+
},
|
47
|
+
{
|
48
|
+
path: ":product/edit",
|
49
|
+
name: nameWithPrefix("ProductEdit"),
|
50
|
+
meta: {
|
51
|
+
title: {
|
52
|
+
en: "Edit Product",
|
53
|
+
ru: "Редактировать продукт"
|
54
|
+
},
|
55
|
+
authorize: options.editProductAuthorize || []
|
56
|
+
},
|
57
|
+
beforeEnter: [auth_validation.requiresAuth],
|
58
|
+
component: () => Promise.resolve().then(() => require("../components/pages/ProductEdit.vue.cjs"))
|
59
|
+
},
|
60
|
+
{
|
61
|
+
path: "recommendation",
|
62
|
+
name: nameWithPrefix("ProductRecommmendation"),
|
63
|
+
meta: {
|
64
|
+
title: {
|
65
|
+
en: "Product Recommmendation",
|
66
|
+
ru: "Рекомендации продукта"
|
67
|
+
},
|
68
|
+
header_theme: "dark",
|
69
|
+
footer_theme: "dark"
|
70
|
+
},
|
71
|
+
component: () => Promise.resolve().then(() => require(
|
72
|
+
/* webpackChunkName: 'Product Recommmendation' */
|
73
|
+
"../components/pages/ProductRecommmendation.vue.cjs"
|
74
|
+
)),
|
75
|
+
props: (route) => ({ mood: route.query.mood })
|
76
|
+
}
|
77
|
+
]
|
78
|
+
};
|
79
|
+
return routes;
|
80
|
+
}
|
81
|
+
exports.createProductRoutes = createProductRoutes;
|
39
82
|
//# sourceMappingURL=products.router.cjs.map
|
@@ -1 +1 @@
|
|
1
|
-
{"version":3,"file":"products.router.cjs","sources":["../../../../../../src/modules/products/router/products.router.js"],"sourcesContent":["import * as validationAuth from '@pf/src/modules/auth/views/middlewares/auth.validation';\n\
|
1
|
+
{"version":3,"file":"products.router.cjs","sources":["../../../../../../src/modules/products/router/products.router.js"],"sourcesContent":["import * as validationAuth from '@pf/src/modules/auth/views/middlewares/auth.validation';\n\nexport function createProductRoutes(prefix = '', options = {}) {\n const nameWithPrefix = (name) => prefix ? `${prefix}${name}` : name;\n\n const routes = {\n path: options.basePath || 'products',\n children: [\n {\n path: '',\n name: nameWithPrefix('Products'),\n meta: {\n title: {\n en: 'Products',\n ru: 'Товары'\n },\n authorize: options.productsAuthorize || []\n },\n component: () => import(/* webpackChunkName: 'Products' */ '@pf/src/modules/products/components/pages/Products.vue'),\n },\n {\n path: 'add',\n name: nameWithPrefix('ProductAdd'),\n meta: {\n title: {\n en: 'Add Product',\n ru: 'Добавить товар'\n },\n authorize: options.addProductAuthorize || []\n },\n component: () => import('@pf/src/modules/products/components/pages/ProductEdit.vue')\n },\n {\n path: ':product',\n name: nameWithPrefix('Product'),\n meta: {\n title: {\n en: 'Product',\n ru: 'Продукт'\n }\n },\n component: () => import('@pf/src/modules/products/components/pages/Product.vue')\n },\n {\n path: ':product/edit',\n name: nameWithPrefix('ProductEdit'),\n meta: {\n title: {\n en: 'Edit Product',\n ru: 'Редактировать продукт'\n },\n authorize: options.editProductAuthorize || []\n },\n beforeEnter: [validationAuth.requiresAuth],\n component: () => import('@pf/src/modules/products/components/pages/ProductEdit.vue')\n },\n {\n path: 'recommendation',\n name: nameWithPrefix('ProductRecommmendation'),\n meta: {\n title: {\n en: 'Product Recommmendation',\n ru: 'Рекомендации продукта'\n },\n header_theme: 'dark',\n footer_theme: 'dark',\n },\n component: () => import(/* webpackChunkName: 'Product Recommmendation' */ '@pf/src/modules/products/components/pages/ProductRecommmendation.vue'),\n props: route => ({ mood: route.query.mood })\n }\n ]\n };\n\n return routes;\n}"],"names":["validationAuth.requiresAuth"],"mappings":";;;AAEO,SAAS,oBAAoB,SAAS,IAAI,UAAU,CAAA,GAAI;AAC7D,QAAM,iBAAiB,CAAC,SAAS,SAAS,GAAG,MAAM,GAAG,IAAI,KAAK;AAE/D,QAAM,SAAS;AAAA,IACb,MAAM,QAAQ,YAAY;AAAA,IAC1B,UAAU;AAAA,MACR;AAAA,QACE,MAAM;AAAA,QACN,MAAM,eAAe,UAAU;AAAA,QAC/B,MAAM;AAAA,UACJ,OAAO;AAAA,YACL,IAAI;AAAA,YACJ,IAAI;AAAA,UACL;AAAA,UACD,WAAW,QAAQ,qBAAqB,CAAE;AAAA,QAC3C;AAAA,QACD,WAAW,MAAM,QAAO,QAAA,EAAA,KAAA,MAAA;AAAA;AAAA,UAAmC;AAAA,QAAwD,CAAC;AAAA,MACrH;AAAA,MACD;AAAA,QACE,MAAM;AAAA,QACN,MAAM,eAAe,YAAY;AAAA,QACjC,MAAM;AAAA,UACJ,OAAO;AAAA,YACL,IAAI;AAAA,YACJ,IAAI;AAAA,UACL;AAAA,UACD,WAAW,QAAQ,uBAAuB,CAAE;AAAA,QAC7C;AAAA,QACD,WAAW,MAAM,QAAA,QAAA,EAAA,KAAA,MAAA,QAAO,yCAA2D,CAAC;AAAA,MACrF;AAAA,MACD;AAAA,QACE,MAAM;AAAA,QACN,MAAM,eAAe,SAAS;AAAA,QAC9B,MAAM;AAAA,UACJ,OAAO;AAAA,YACL,IAAI;AAAA,YACJ,IAAI;AAAA,UACL;AAAA,QACF;AAAA,QACD,WAAW,MAAM,QAAA,QAAA,EAAA,KAAA,MAAA,QAAO,qCAAuD,CAAC;AAAA,MACjF;AAAA,MACD;AAAA,QACE,MAAM;AAAA,QACN,MAAM,eAAe,aAAa;AAAA,QAClC,MAAM;AAAA,UACJ,OAAO;AAAA,YACL,IAAI;AAAA,YACJ,IAAI;AAAA,UACL;AAAA,UACD,WAAW,QAAQ,wBAAwB,CAAE;AAAA,QAC9C;AAAA,QACD,aAAa,CAACA,gBAAAA,YAA2B;AAAA,QACzC,WAAW,MAAM,QAAA,QAAA,EAAA,KAAA,MAAA,QAAO,yCAA2D,CAAC;AAAA,MACrF;AAAA,MACD;AAAA,QACE,MAAM;AAAA,QACN,MAAM,eAAe,wBAAwB;AAAA,QAC7C,MAAM;AAAA,UACJ,OAAO;AAAA,YACL,IAAI;AAAA,YACJ,IAAI;AAAA,UACL;AAAA,UACD,cAAc;AAAA,UACd,cAAc;AAAA,QACf;AAAA,QACD,WAAW,MAAM,QAAO,QAAA,EAAA,KAAA,MAAA;AAAA;AAAA,UAAkD;AAAA,QAAsE,CAAC;AAAA,QACjJ,OAAO,YAAU,EAAE,MAAM,MAAM,MAAM;MACtC;AAAA,IACF;AAAA,EACL;AAEE,SAAO;AACT;;"}
|
@@ -1,39 +1,82 @@
|
|
1
1
|
import { requiresAuth } from "../../auth/views/middlewares/auth.validation.js";
|
2
|
-
|
3
|
-
|
4
|
-
|
5
|
-
|
6
|
-
|
7
|
-
|
8
|
-
|
9
|
-
|
10
|
-
|
11
|
-
|
12
|
-
|
13
|
-
|
14
|
-
|
15
|
-
|
16
|
-
},
|
17
|
-
|
18
|
-
|
19
|
-
|
20
|
-
|
21
|
-
|
22
|
-
|
23
|
-
|
24
|
-
|
25
|
-
|
26
|
-
|
27
|
-
|
28
|
-
|
29
|
-
|
30
|
-
|
31
|
-
|
32
|
-
|
33
|
-
|
34
|
-
|
35
|
-
|
2
|
+
function createProductRoutes(prefix = "", options = {}) {
|
3
|
+
const nameWithPrefix = (name) => prefix ? `${prefix}${name}` : name;
|
4
|
+
const routes = {
|
5
|
+
path: options.basePath || "products",
|
6
|
+
children: [
|
7
|
+
{
|
8
|
+
path: "",
|
9
|
+
name: nameWithPrefix("Products"),
|
10
|
+
meta: {
|
11
|
+
title: {
|
12
|
+
en: "Products",
|
13
|
+
ru: "Товары"
|
14
|
+
},
|
15
|
+
authorize: options.productsAuthorize || []
|
16
|
+
},
|
17
|
+
component: () => import(
|
18
|
+
/* webpackChunkName: 'Products' */
|
19
|
+
"../components/pages/Products.vue.js"
|
20
|
+
)
|
21
|
+
},
|
22
|
+
{
|
23
|
+
path: "add",
|
24
|
+
name: nameWithPrefix("ProductAdd"),
|
25
|
+
meta: {
|
26
|
+
title: {
|
27
|
+
en: "Add Product",
|
28
|
+
ru: "Добавить товар"
|
29
|
+
},
|
30
|
+
authorize: options.addProductAuthorize || []
|
31
|
+
},
|
32
|
+
component: () => import("../components/pages/ProductEdit.vue.js")
|
33
|
+
},
|
34
|
+
{
|
35
|
+
path: ":product",
|
36
|
+
name: nameWithPrefix("Product"),
|
37
|
+
meta: {
|
38
|
+
title: {
|
39
|
+
en: "Product",
|
40
|
+
ru: "Продукт"
|
41
|
+
}
|
42
|
+
},
|
43
|
+
component: () => import("../components/pages/Product.vue.js")
|
44
|
+
},
|
45
|
+
{
|
46
|
+
path: ":product/edit",
|
47
|
+
name: nameWithPrefix("ProductEdit"),
|
48
|
+
meta: {
|
49
|
+
title: {
|
50
|
+
en: "Edit Product",
|
51
|
+
ru: "Редактировать продукт"
|
52
|
+
},
|
53
|
+
authorize: options.editProductAuthorize || []
|
54
|
+
},
|
55
|
+
beforeEnter: [requiresAuth],
|
56
|
+
component: () => import("../components/pages/ProductEdit.vue.js")
|
57
|
+
},
|
58
|
+
{
|
59
|
+
path: "recommendation",
|
60
|
+
name: nameWithPrefix("ProductRecommmendation"),
|
61
|
+
meta: {
|
62
|
+
title: {
|
63
|
+
en: "Product Recommmendation",
|
64
|
+
ru: "Рекомендации продукта"
|
65
|
+
},
|
66
|
+
header_theme: "dark",
|
67
|
+
footer_theme: "dark"
|
68
|
+
},
|
69
|
+
component: () => import(
|
70
|
+
/* webpackChunkName: 'Product Recommmendation' */
|
71
|
+
"../components/pages/ProductRecommmendation.vue.js"
|
72
|
+
),
|
73
|
+
props: (route) => ({ mood: route.query.mood })
|
74
|
+
}
|
75
|
+
]
|
76
|
+
};
|
77
|
+
return routes;
|
78
|
+
}
|
36
79
|
export {
|
37
|
-
|
80
|
+
createProductRoutes
|
38
81
|
};
|
39
82
|
//# sourceMappingURL=products.router.js.map
|
@@ -1 +1 @@
|
|
1
|
-
{"version":3,"file":"products.router.js","sources":["../../../../../../src/modules/products/router/products.router.js"],"sourcesContent":["import * as validationAuth from '@pf/src/modules/auth/views/middlewares/auth.validation';\n\
|
1
|
+
{"version":3,"file":"products.router.js","sources":["../../../../../../src/modules/products/router/products.router.js"],"sourcesContent":["import * as validationAuth from '@pf/src/modules/auth/views/middlewares/auth.validation';\n\nexport function createProductRoutes(prefix = '', options = {}) {\n const nameWithPrefix = (name) => prefix ? `${prefix}${name}` : name;\n\n const routes = {\n path: options.basePath || 'products',\n children: [\n {\n path: '',\n name: nameWithPrefix('Products'),\n meta: {\n title: {\n en: 'Products',\n ru: 'Товары'\n },\n authorize: options.productsAuthorize || []\n },\n component: () => import(/* webpackChunkName: 'Products' */ '@pf/src/modules/products/components/pages/Products.vue'),\n },\n {\n path: 'add',\n name: nameWithPrefix('ProductAdd'),\n meta: {\n title: {\n en: 'Add Product',\n ru: 'Добавить товар'\n },\n authorize: options.addProductAuthorize || []\n },\n component: () => import('@pf/src/modules/products/components/pages/ProductEdit.vue')\n },\n {\n path: ':product',\n name: nameWithPrefix('Product'),\n meta: {\n title: {\n en: 'Product',\n ru: 'Продукт'\n }\n },\n component: () => import('@pf/src/modules/products/components/pages/Product.vue')\n },\n {\n path: ':product/edit',\n name: nameWithPrefix('ProductEdit'),\n meta: {\n title: {\n en: 'Edit Product',\n ru: 'Редактировать продукт'\n },\n authorize: options.editProductAuthorize || []\n },\n beforeEnter: [validationAuth.requiresAuth],\n component: () => import('@pf/src/modules/products/components/pages/ProductEdit.vue')\n },\n {\n path: 'recommendation',\n name: nameWithPrefix('ProductRecommmendation'),\n meta: {\n title: {\n en: 'Product Recommmendation',\n ru: 'Рекомендации продукта'\n },\n header_theme: 'dark',\n footer_theme: 'dark',\n },\n component: () => import(/* webpackChunkName: 'Product Recommmendation' */ '@pf/src/modules/products/components/pages/ProductRecommmendation.vue'),\n props: route => ({ mood: route.query.mood })\n }\n ]\n };\n\n return routes;\n}"],"names":["validationAuth.requiresAuth"],"mappings":";AAEO,SAAS,oBAAoB,SAAS,IAAI,UAAU,CAAA,GAAI;AAC7D,QAAM,iBAAiB,CAAC,SAAS,SAAS,GAAG,MAAM,GAAG,IAAI,KAAK;AAE/D,QAAM,SAAS;AAAA,IACb,MAAM,QAAQ,YAAY;AAAA,IAC1B,UAAU;AAAA,MACR;AAAA,QACE,MAAM;AAAA,QACN,MAAM,eAAe,UAAU;AAAA,QAC/B,MAAM;AAAA,UACJ,OAAO;AAAA,YACL,IAAI;AAAA,YACJ,IAAI;AAAA,UACL;AAAA,UACD,WAAW,QAAQ,qBAAqB,CAAE;AAAA,QAC3C;AAAA,QACD,WAAW,MAAM;AAAA;AAAA,UAA0C;AAAA,QAAwD;AAAA,MACpH;AAAA,MACD;AAAA,QACE,MAAM;AAAA,QACN,MAAM,eAAe,YAAY;AAAA,QACjC,MAAM;AAAA,UACJ,OAAO;AAAA,YACL,IAAI;AAAA,YACJ,IAAI;AAAA,UACL;AAAA,UACD,WAAW,QAAQ,uBAAuB,CAAE;AAAA,QAC7C;AAAA,QACD,WAAW,MAAM,OAAO,wCAA2D;AAAA,MACpF;AAAA,MACD;AAAA,QACE,MAAM;AAAA,QACN,MAAM,eAAe,SAAS;AAAA,QAC9B,MAAM;AAAA,UACJ,OAAO;AAAA,YACL,IAAI;AAAA,YACJ,IAAI;AAAA,UACL;AAAA,QACF;AAAA,QACD,WAAW,MAAM,OAAO,oCAAuD;AAAA,MAChF;AAAA,MACD;AAAA,QACE,MAAM;AAAA,QACN,MAAM,eAAe,aAAa;AAAA,QAClC,MAAM;AAAA,UACJ,OAAO;AAAA,YACL,IAAI;AAAA,YACJ,IAAI;AAAA,UACL;AAAA,UACD,WAAW,QAAQ,wBAAwB,CAAE;AAAA,QAC9C;AAAA,QACD,aAAa,CAACA,YAA2B;AAAA,QACzC,WAAW,MAAM,OAAO,wCAA2D;AAAA,MACpF;AAAA,MACD;AAAA,QACE,MAAM;AAAA,QACN,MAAM,eAAe,wBAAwB;AAAA,QAC7C,MAAM;AAAA,UACJ,OAAO;AAAA,YACL,IAAI;AAAA,YACJ,IAAI;AAAA,UACL;AAAA,UACD,cAAc;AAAA,UACd,cAAc;AAAA,QACf;AAAA,QACD,WAAW,MAAM;AAAA;AAAA,UAAyD;AAAA,QAAsE;AAAA,QAChJ,OAAO,YAAU,EAAE,MAAM,MAAM,MAAM;MACtC;AAAA,IACF;AAAA,EACL;AAEE,SAAO;AACT;"}
|
@@ -0,0 +1,57 @@
|
|
1
|
+
"use strict";
|
2
|
+
Object.defineProperty(exports, Symbol.toStringTag, { value: "Module" });
|
3
|
+
const vue = require("vue");
|
4
|
+
const state = vue.reactive({
|
5
|
+
shops: [],
|
6
|
+
popular: [],
|
7
|
+
pagination: {
|
8
|
+
page: 1,
|
9
|
+
perPage: 18
|
10
|
+
},
|
11
|
+
search: {
|
12
|
+
active: false,
|
13
|
+
current: "",
|
14
|
+
result: []
|
15
|
+
},
|
16
|
+
filter: {
|
17
|
+
active: false,
|
18
|
+
class: "mobile-only",
|
19
|
+
selected: {},
|
20
|
+
options: [{
|
21
|
+
title: "Delivery",
|
22
|
+
value: "delivery",
|
23
|
+
options: [
|
24
|
+
{ label: "Pickup", value: "pickup" },
|
25
|
+
{ label: "Courier", value: "courier" },
|
26
|
+
{ label: "Post", value: "post" }
|
27
|
+
]
|
28
|
+
}, {
|
29
|
+
title: "Prices",
|
30
|
+
value: "prices",
|
31
|
+
options: [
|
32
|
+
{ label: "Under 300฿", value: "<300" },
|
33
|
+
{ label: "300฿ to 600฿", value: "300-600" },
|
34
|
+
{ label: "600฿ to 1200฿", value: "600-1200" },
|
35
|
+
{ label: "$1200 and above", value: ">1200" }
|
36
|
+
]
|
37
|
+
}]
|
38
|
+
},
|
39
|
+
sort: {
|
40
|
+
param: "distance",
|
41
|
+
order: "asc",
|
42
|
+
options: [{
|
43
|
+
label: "Distance",
|
44
|
+
value: "distance"
|
45
|
+
}, {
|
46
|
+
label: "Popularity",
|
47
|
+
value: "views"
|
48
|
+
}, {
|
49
|
+
label: "Products",
|
50
|
+
value: "numberOfProducts"
|
51
|
+
}]
|
52
|
+
}
|
53
|
+
});
|
54
|
+
vue.watch(state, (newState, oldState) => {
|
55
|
+
});
|
56
|
+
exports.state = state;
|
57
|
+
//# sourceMappingURL=marketplace.cjs.map
|
@@ -0,0 +1 @@
|
|
1
|
+
{"version":3,"file":"marketplace.cjs","sources":["../../../../../../src/modules/products/store/marketplace.js"],"sourcesContent":["import { reactive, watch } from \"vue\";\n\n// State\nconst state = reactive({\n shops: [],\n popular: [],\n pagination: {\n page: 1,\n perPage: 18,\n },\n search: {\n active: false,\n current: '',\n result:[]\n },\n filter: {\n active: false,\n class: 'mobile-only',\n selected: {},\n options: [{\n title: 'Delivery',\n value: 'delivery',\n options: [\n { label: 'Pickup', value: 'pickup' },\n { label: 'Courier', value: 'courier' },\n { label: 'Post', value: 'post' }\n ]\n },{\n title: 'Prices', \n value: 'prices',\n options: [\n { label: 'Under 300฿', value: '<300' },\n { label: '300฿ to 600฿', value: '300-600' },\n { label: '600฿ to 1200฿', value: '600-1200' },\n { label: '$1200 and above', value: '>1200' }\n ]\n }],\n },\n sort: {\n param: 'distance',\n order: 'asc',\n options: [{\n label: 'Distance',\n value: 'distance'\n },{\n label: 'Popularity',\n value: 'views'\n },{\n label: 'Products',\n value: 'numberOfProducts'\n }]\n }\n});\n\n\n// History\nconst history = []; history.push(state);\n\n// Watch\nwatch(state, (newState, oldState) => {\n history.push(newState)\n})\n\n// Module Export\nexport {\n state\n}"],"names":["reactive","watch"],"mappings":";;;AAGK,MAAC,QAAQA,IAAAA,SAAS;AAAA,EACrB,OAAO,CAAE;AAAA,EACT,SAAS,CAAE;AAAA,EACX,YAAY;AAAA,IACV,MAAM;AAAA,IACN,SAAS;AAAA,EACV;AAAA,EACD,QAAQ;AAAA,IACN,QAAQ;AAAA,IACR,SAAS;AAAA,IACT,QAAO,CAAE;AAAA,EACV;AAAA,EACD,QAAQ;AAAA,IACN,QAAQ;AAAA,IACR,OAAO;AAAA,IACP,UAAU,CAAE;AAAA,IACZ,SAAS,CAAC;AAAA,MACR,OAAO;AAAA,MACP,OAAO;AAAA,MACP,SAAS;AAAA,QACP,EAAE,OAAO,UAAU,OAAO,SAAU;AAAA,QACpC,EAAE,OAAO,WAAW,OAAO,UAAW;AAAA,QACtC,EAAE,OAAO,QAAQ,OAAO,OAAQ;AAAA,MACjC;AAAA,IACP,GAAM;AAAA,MACA,OAAO;AAAA,MACP,OAAO;AAAA,MACP,SAAS;AAAA,QACP,EAAE,OAAO,cAAqB,OAAO,OAAQ;AAAA,QAC7C,EAAE,OAAO,gBAAqB,OAAO,UAAW;AAAA,QAChD,EAAE,OAAO,iBAAqB,OAAO,WAAY;AAAA,QACjD,EAAE,OAAO,mBAAqB,OAAO,QAAS;AAAA,MAC/C;AAAA,IACP,CAAK;AAAA,EACF;AAAA,EACD,MAAM;AAAA,IACJ,OAAO;AAAA,IACP,OAAO;AAAA,IACP,SAAS,CAAC;AAAA,MACR,OAAO;AAAA,MACP,OAAO;AAAA,IACb,GAAM;AAAA,MACA,OAAO;AAAA,MACP,OAAO;AAAA,IACb,GAAM;AAAA,MACA,OAAO;AAAA,MACP,OAAO;AAAA,IACb,CAAK;AAAA,EACF;AACH,CAAC;AAODC,IAAAA,MAAM,OAAO,CAAC,UAAU,aAAa;AAErC,CAAC;;"}
|
@@ -0,0 +1,57 @@
|
|
1
|
+
import { reactive, watch } from "vue";
|
2
|
+
const state = reactive({
|
3
|
+
shops: [],
|
4
|
+
popular: [],
|
5
|
+
pagination: {
|
6
|
+
page: 1,
|
7
|
+
perPage: 18
|
8
|
+
},
|
9
|
+
search: {
|
10
|
+
active: false,
|
11
|
+
current: "",
|
12
|
+
result: []
|
13
|
+
},
|
14
|
+
filter: {
|
15
|
+
active: false,
|
16
|
+
class: "mobile-only",
|
17
|
+
selected: {},
|
18
|
+
options: [{
|
19
|
+
title: "Delivery",
|
20
|
+
value: "delivery",
|
21
|
+
options: [
|
22
|
+
{ label: "Pickup", value: "pickup" },
|
23
|
+
{ label: "Courier", value: "courier" },
|
24
|
+
{ label: "Post", value: "post" }
|
25
|
+
]
|
26
|
+
}, {
|
27
|
+
title: "Prices",
|
28
|
+
value: "prices",
|
29
|
+
options: [
|
30
|
+
{ label: "Under 300฿", value: "<300" },
|
31
|
+
{ label: "300฿ to 600฿", value: "300-600" },
|
32
|
+
{ label: "600฿ to 1200฿", value: "600-1200" },
|
33
|
+
{ label: "$1200 and above", value: ">1200" }
|
34
|
+
]
|
35
|
+
}]
|
36
|
+
},
|
37
|
+
sort: {
|
38
|
+
param: "distance",
|
39
|
+
order: "asc",
|
40
|
+
options: [{
|
41
|
+
label: "Distance",
|
42
|
+
value: "distance"
|
43
|
+
}, {
|
44
|
+
label: "Popularity",
|
45
|
+
value: "views"
|
46
|
+
}, {
|
47
|
+
label: "Products",
|
48
|
+
value: "numberOfProducts"
|
49
|
+
}]
|
50
|
+
}
|
51
|
+
});
|
52
|
+
watch(state, (newState, oldState) => {
|
53
|
+
});
|
54
|
+
export {
|
55
|
+
state
|
56
|
+
};
|
57
|
+
//# sourceMappingURL=marketplace.js.map
|
@@ -0,0 +1 @@
|
|
1
|
+
{"version":3,"file":"marketplace.js","sources":["../../../../../../src/modules/products/store/marketplace.js"],"sourcesContent":["import { reactive, watch } from \"vue\";\n\n// State\nconst state = reactive({\n shops: [],\n popular: [],\n pagination: {\n page: 1,\n perPage: 18,\n },\n search: {\n active: false,\n current: '',\n result:[]\n },\n filter: {\n active: false,\n class: 'mobile-only',\n selected: {},\n options: [{\n title: 'Delivery',\n value: 'delivery',\n options: [\n { label: 'Pickup', value: 'pickup' },\n { label: 'Courier', value: 'courier' },\n { label: 'Post', value: 'post' }\n ]\n },{\n title: 'Prices', \n value: 'prices',\n options: [\n { label: 'Under 300฿', value: '<300' },\n { label: '300฿ to 600฿', value: '300-600' },\n { label: '600฿ to 1200฿', value: '600-1200' },\n { label: '$1200 and above', value: '>1200' }\n ]\n }],\n },\n sort: {\n param: 'distance',\n order: 'asc',\n options: [{\n label: 'Distance',\n value: 'distance'\n },{\n label: 'Popularity',\n value: 'views'\n },{\n label: 'Products',\n value: 'numberOfProducts'\n }]\n }\n});\n\n\n// History\nconst history = []; history.push(state);\n\n// Watch\nwatch(state, (newState, oldState) => {\n history.push(newState)\n})\n\n// Module Export\nexport {\n state\n}"],"names":[],"mappings":";AAGK,MAAC,QAAQ,SAAS;AAAA,EACrB,OAAO,CAAE;AAAA,EACT,SAAS,CAAE;AAAA,EACX,YAAY;AAAA,IACV,MAAM;AAAA,IACN,SAAS;AAAA,EACV;AAAA,EACD,QAAQ;AAAA,IACN,QAAQ;AAAA,IACR,SAAS;AAAA,IACT,QAAO,CAAE;AAAA,EACV;AAAA,EACD,QAAQ;AAAA,IACN,QAAQ;AAAA,IACR,OAAO;AAAA,IACP,UAAU,CAAE;AAAA,IACZ,SAAS,CAAC;AAAA,MACR,OAAO;AAAA,MACP,OAAO;AAAA,MACP,SAAS;AAAA,QACP,EAAE,OAAO,UAAU,OAAO,SAAU;AAAA,QACpC,EAAE,OAAO,WAAW,OAAO,UAAW;AAAA,QACtC,EAAE,OAAO,QAAQ,OAAO,OAAQ;AAAA,MACjC;AAAA,IACP,GAAM;AAAA,MACA,OAAO;AAAA,MACP,OAAO;AAAA,MACP,SAAS;AAAA,QACP,EAAE,OAAO,cAAqB,OAAO,OAAQ;AAAA,QAC7C,EAAE,OAAO,gBAAqB,OAAO,UAAW;AAAA,QAChD,EAAE,OAAO,iBAAqB,OAAO,WAAY;AAAA,QACjD,EAAE,OAAO,mBAAqB,OAAO,QAAS;AAAA,MAC/C;AAAA,IACP,CAAK;AAAA,EACF;AAAA,EACD,MAAM;AAAA,IACJ,OAAO;AAAA,IACP,OAAO;AAAA,IACP,SAAS,CAAC;AAAA,MACR,OAAO;AAAA,MACP,OAAO;AAAA,IACb,GAAM;AAAA,MACA,OAAO;AAAA,MACP,OAAO;AAAA,IACb,GAAM;AAAA,MACA,OAAO;AAAA,MACP,OAAO;AAAA,IACb,CAAK;AAAA,EACF;AACH,CAAC;AAOD,MAAM,OAAO,CAAC,UAAU,aAAa;AAErC,CAAC;"}
|
@@ -1,5 +1,24 @@
|
|
1
1
|
"use strict";
|
2
|
-
Object.
|
2
|
+
Object.defineProperties(exports, { __esModule: { value: true }, [Symbol.toStringTag]: { value: "Module" } });
|
3
3
|
const reports = require("./store/reports.cjs");
|
4
|
-
|
4
|
+
function initializeReports(app, store, router, options = {}) {
|
5
|
+
options.route || "Home";
|
6
|
+
store.addStore("reports", reports);
|
7
|
+
}
|
8
|
+
const ModuleReports = {
|
9
|
+
initialize: initializeReports,
|
10
|
+
views: {
|
11
|
+
store: {
|
12
|
+
storeReports: reports
|
13
|
+
},
|
14
|
+
router: {
|
15
|
+
// createReportsRoutes
|
16
|
+
},
|
17
|
+
components: {
|
18
|
+
// Pages
|
19
|
+
// ReportPage
|
20
|
+
}
|
21
|
+
}
|
22
|
+
};
|
23
|
+
exports.default = ModuleReports;
|
5
24
|
//# sourceMappingURL=reports.client.cjs.map
|
@@ -1 +1 @@
|
|
1
|
-
{"version":3,"file":"reports.client.cjs","sources":[],"sourcesContent":[],"names":[],"mappings":"
|
1
|
+
{"version":3,"file":"reports.client.cjs","sources":["../../../../../src/modules/reports/reports.client.js"],"sourcesContent":["// Store\nimport * as storeReports from './store/reports.js';\n\n// Router\n// import { createReportsRoutes } from './router/reports';\n\n// Views\n// Предполагаем, что у нас есть компонент для отображения отчетов\n// import ReportPage from './components/pages/ReportPage.vue';\n\n// Пример функции инициализации для модуля отчетов\nfunction initializeReports(app, store, router, options = {}) {\n const route = options.route || 'Home';\n\n // const routesReports = createReportsRoutes();\n \n // router.addRoute(route, routesReports);\n \n store.addStore('reports', storeReports);\n}\n\nconst ModuleReports = {\n initialize: initializeReports,\n views: {\n store: {\n storeReports\n },\n router: {\n // createReportsRoutes\n },\n components: {\n // Pages\n // ReportPage\n }\n }\n}\n\nexport default ModuleReports;"],"names":["storeReports"],"mappings":";;;AAWA,SAAS,kBAAkB,KAAK,OAAO,QAAQ,UAAU,CAAA,GAAI;AAC7C,UAAQ,SAAS;AAM/B,QAAM,SAAS,WAAWA,OAAY;AACxC;AAEK,MAAC,gBAAgB;AAAA,EACpB,YAAY;AAAA,EACZ,OAAO;AAAA,IACL,OAAO;AAAA,MACX,cAAMA;AAAAA,IACD;AAAA,IACD,QAAQ;AAAA;AAAA,IAEP;AAAA,IACD,YAAY;AAAA;AAAA;AAAA,IAGX;AAAA,EACF;AACH;;"}
|
@@ -1,5 +1,24 @@
|
|
1
1
|
import * as reports from "./store/reports.js";
|
2
|
+
function initializeReports(app, store, router, options = {}) {
|
3
|
+
options.route || "Home";
|
4
|
+
store.addStore("reports", reports);
|
5
|
+
}
|
6
|
+
const ModuleReports = {
|
7
|
+
initialize: initializeReports,
|
8
|
+
views: {
|
9
|
+
store: {
|
10
|
+
storeReports: reports
|
11
|
+
},
|
12
|
+
router: {
|
13
|
+
// createReportsRoutes
|
14
|
+
},
|
15
|
+
components: {
|
16
|
+
// Pages
|
17
|
+
// ReportPage
|
18
|
+
}
|
19
|
+
}
|
20
|
+
};
|
2
21
|
export {
|
3
|
-
|
22
|
+
ModuleReports as default
|
4
23
|
};
|
5
24
|
//# sourceMappingURL=reports.client.js.map
|
@@ -1 +1 @@
|
|
1
|
-
{"version":3,"file":"reports.client.js","sources":[],"sourcesContent":[],"names":[],"mappings":";"}
|
1
|
+
{"version":3,"file":"reports.client.js","sources":["../../../../../src/modules/reports/reports.client.js"],"sourcesContent":["// Store\nimport * as storeReports from './store/reports.js';\n\n// Router\n// import { createReportsRoutes } from './router/reports';\n\n// Views\n// Предполагаем, что у нас есть компонент для отображения отчетов\n// import ReportPage from './components/pages/ReportPage.vue';\n\n// Пример функции инициализации для модуля отчетов\nfunction initializeReports(app, store, router, options = {}) {\n const route = options.route || 'Home';\n\n // const routesReports = createReportsRoutes();\n \n // router.addRoute(route, routesReports);\n \n store.addStore('reports', storeReports);\n}\n\nconst ModuleReports = {\n initialize: initializeReports,\n views: {\n store: {\n storeReports\n },\n router: {\n // createReportsRoutes\n },\n components: {\n // Pages\n // ReportPage\n }\n }\n}\n\nexport default ModuleReports;"],"names":["storeReports"],"mappings":";AAWA,SAAS,kBAAkB,KAAK,OAAO,QAAQ,UAAU,CAAA,GAAI;AAC7C,UAAQ,SAAS;AAM/B,QAAM,SAAS,WAAWA,OAAY;AACxC;AAEK,MAAC,gBAAgB;AAAA,EACpB,YAAY;AAAA,EACZ,OAAO;AAAA,IACL,OAAO;AAAA,MACX,cAAMA;AAAAA,IACD;AAAA,IACD,QAAQ;AAAA;AAAA,IAEP;AAAA,IACD,YAAY;AAAA;AAAA;AAAA,IAGX;AAAA,EACF;AACH;"}
|
@@ -9,7 +9,7 @@ const vueI18n = require("vue-i18n");
|
|
9
9
|
;/* empty css */
|
10
10
|
const globals = require("../../../globals/views/store/globals.cjs");
|
11
11
|
const categories = require("../../../products/store/categories.cjs");
|
12
|
-
const marketplace = require("../../../
|
12
|
+
const marketplace = require("../../../products/store/marketplace.cjs");
|
13
13
|
const _hoisted_1 = { class: "w-100 h-100" };
|
14
14
|
const _hoisted_2 = { class: "h-100 w-100 flex-nowrap flex-column flex gap-thin" };
|
15
15
|
const _hoisted_3 = { class: "pos-absolute z-index-2 w-100" };
|
@@ -1 +1 @@
|
|
1
|
-
{"version":3,"file":"Spots.vue.cjs","sources":["../../../../../../../src/modules/spots/components/layouts/Spots.vue"],"sourcesContent":["<template>\n\t<div class=\"w-100 h-100\">\n\t\t<!-- Catalog wrapper -->\n\t\t<div class=\"h-100 w-100 flex-nowrap flex-column flex gap-thin\">\n\n\t\t\t\t<!-- Sorting section -->\n\t\t\t\t<div class=\"pos-absolute z-index-2 w-100\">\n\t \t<h2 class=\"bg-black-transp-25 t-white pd-small w-100 bg-blur-big mn-l-auto mn-r-auto t-center\">\n\t \t\t<span class=\"\">Weed in </span>\n\n\t \t\t<span @click=\"a => { globals.state.isOpenLocationPopup = true }\" v-if=\"localPosition.city || localPosition.state || localPosition.country\" class=\"t-semi t-main\">\n \t\t\t\t<span v-if=\"localPosition.city\">{{localPosition.city}}, </span>\n \t\t\t\t<span v-if=\"localPosition.state\">{{localPosition.state}}, </span>\n \t\t\t\t<span v-if=\"localPosition.country\">{{localPosition.country}}</span>\n\t \t\t</span>\n\n\t \t\t<span v-else @click=\"a => { globals.state.isOpenLocationPopup = true }\" class=\"t-semi t-main\">\n\t\t\t\t\t\t\t\tThe World\n\t \t\t</span>\n\t \t</h2>\n\t\t\t\t\t</div>\n\n\n\t\t\t\t<!-- <Filters/> -->\n\n\t\t\t\t<!-- Products section -->\n\t\t\t\t<router-view v-slot=\"{ Component, route }\">\n\t\t\t\t\t<transition name=\"scaleIn\" mode=\"out-in\">\n\t\t\t\t\t\t<component \n\t\t\t\t\t\t\tref=\"page\" \n\t\t\t\t\t\t\t:key=\"route.path\" \n\t\t\t\t\t\t\t:localPosition=\"localPosition\" \n\t\t\t\t\t\t\t:is=\"Component\"\n\t\t\t\t\t\t\t:apiKey=\"GOOGLE_MAPS_API_KEY\" \n \t\t\t\t:locale=\"$i18n.locale\"\n\t\t\t\t\t\t\tclass=\"\"\n\t\t\t\t\t\t/>\n\t\t\t\t\t</transition>\n\t\t\t\t</router-view>\n\n\t\t</div>\n\t</div>\n</template>\n\n\n<script setup=\"props\">\n\t// Import libs\n\timport { computed, onMounted, watch, watchEffect, ref } from 'vue'\n\timport { useRoute, useRouter,onBeforeRouteLeave } from 'vue-router'\n\timport { useI18n } from 'vue-i18n'\n // Prometheus\n\timport Spoiler from \"@pf/src/components/Spoiler/Spoiler.vue\";\n \timport Checkbox from \"@pf/src/components/Checkbox/Checkbox.vue\";\n \timport Field from \"@pf/src/components/Field/Field.vue\";\n \t// Partials\n\timport Breadcrumbs from '@pf/src/components/Breadcrumbs/Breadcrumbs.vue'\n \timport Dropdown from \"@pf/src/components/Dropdown/Dropdown.vue\";\n\n \t// import Filters from '@pf/src/modules/marketplace/components/sections/Filters.vue'\n\n\n\timport * as globals from '@pf/src/modules/globals/views/store/globals';\n\timport * as categories from '@pf/src/modules/products/store/categories';\n\timport * as marketplace from '@pf/src/modules/marketplace/store/marketplace';\n\n\t// Accessing router and store\n\tconst route = useRoute()\n\tconst router = useRouter()\n\n\tconst localPosition = ref({\n\t\tcity: null,\n\t\tstate: null,\n\t\tcountry: null\n\t});\n\n\n\tfunction denormalizeUrlParam(param) {\n\t return param\n\t .replace(/-/g, ' ') // Замена дефисов на пробелы\n\t .replace(/\\b\\w/g, l => l.toUpperCase()); // Преобразование первой буквы каждого слова в заглавную\n\t}\n\n\tonMounted(async () => {\n\t if (route.params) {\n\t // Загружаем новые значения из параметров маршрута в состояние\n\t let newState = {\n\t country: denormalizeUrlParam(route.params.country),\n\t state: denormalizeUrlParam(route.params.state),\n\t city: denormalizeUrlParam(route.params.city),\n\t };\n\n\t\t // Обновляем глобальное состояние\n\t\t localPosition.value = newState;\n\t\t}\n\n\t\tif (route.query) {\n\t\t const query = route.query;\n\t\t const newFilterValue = {\n\t\t categories: query.categories ? query.categories.split(',') : [],\n\t\t prices: query.prices ? query.prices.split(',') : [],\n\t\t delivery: query.delivery ? query.delivery.split(',') : [],\n\t\t // Продолжайте этот паттерн для остальных полей фильтра\n\t\t };\n\t\t marketplace.state.filter.selected = newFilterValue;\n\t\t}\n\n\n\t\t// Data fetching\n\t\tawait categories.actions.fetchCategories()\n\t})\n\n\twatch(() => marketplace.state.filter.selected, (newFilterValue, oldFilterValue) => {\n\t // Переводим фильтр в формат query\n\t const query = { ...route.query };\n\n\t // Удаляем старые значения фильтра из query\n\t Object.keys(oldFilterValue).forEach(key => {\n\t if (query[key]) {\n\t delete query[key];\n\t }\n\t });\n\n\t // Добавляем новые значения фильтра в query\n\t const newQueryValues = Object.fromEntries(\n\t Object.entries(newFilterValue)\n\t .filter(([key, value]) => Array.isArray(value) && value.length > 0)\n\t .map(([key, value]) => [key, value.join(',')])\n\t );\n\t Object.assign(query, newQueryValues);\n\n\t // Обновляем маршрут с новым query\n\t router.push({ query });\n\t}, { deep: true })\n\n\t\n\tfunction normalizeUrlParam(param) {\n\t return param\n\t .toLowerCase() // Преобразование всех символов в нижний регистр\n\t .replace(/ /g, '-') // Замена всех пробелов на дефисы\n\t .replace(/[^a-z0-9-]/g, ''); // Удаление всех символов, которые не являются буквами, цифрами или дефисами\n\t}\n\n\twatch(() => globals.state.position, (newPosition) => {\n\t // get the current route\n\t const currentRoute = { ...router.currentRoute.value };\n\t \n\t // create new parameters based on globals state position\n\t let newParams = {\n\t country: normalizeUrlParam(newPosition.country),\n\t state: normalizeUrlParam(newPosition.state),\n\t city: normalizeUrlParam(newPosition.city),\n\t };\n\t \t\n\t // update route params\n\t currentRoute.params = newParams;\n\t \n\t // replace the current route\n\t router.replace(currentRoute);\n\t}, { deep: true });\n\t\n const text = {\n locale: 'en',\n messages: {\n en: {\n\t \tmeta: {\n title: \"Marketplace – Shop Our Wide Selection of Quality Weed for Delivery\",\n description: \"Browse our marketplace of top-grade weed strains and choose from a variety of delivery options. Order now and have your favorite strains delivered straight to your door. Safe, fast, and reliable.\",\n },\n \tbreadcrumbs: {\n \t\thome: 'Home',\n \t\tstore: 'Marketplace',\n \t},\n \tcategoriesTitle: 'Category',\n \tcategories: [],\n \tsort: {\n \t\tprice: 'By price',\n \t\tnewest: 'By newest',\n \t\tpopularity: 'By popularity'\n \t},\n \tfilters: {\n \t\ttitle: 'Filters',\n \t\tprice: {\n \t\t\ttitle: 'Price',\n \t\t\tfrom: 'From',\n \t\t\tto: 'To'\n \t\t},\n \t\tfilters: [],\n \t\treset: 'Reset Filters'\n \t}\n },\n ru: {\n\t meta: {\n title: \"Маркетплейс – Выбирайте из нашего ассортимента качественной травки для доставки\",\n description: \"Маркетплейс – Изучите наши продукты высокого качества и выбирайте из различных вариантов доставки. Закажите сейчас и получите свои любимые сорта на дом. Безопасно, быстро и надежно.\",\n },\n \tbreadcrumbs: {\n \t\thome: 'Главная',\n \t\tstore: 'Маркетплейс',\n \t},\n \tcategoriesTitle: 'Категория',\n \tcategories: [],\n \tsort: {\n \t\tprice: 'По цене',\n \t\tnewest: 'По новизне',\n \t\tpopularity: 'По популярности'\n \t},\n \tfilters: {\n \t\ttitle: 'Фильтры',\n \t\tprice: {\n \t\t\ttitle: 'Цена',\n \t\t\tfrom: 'От',\n \t\t\tto: 'До'\n \t\t},\n \t\tfilters: [],\n \t\treset: 'Сбросить фильтры',\n \t}\n }\n }\n }\n\n \tcategories.state.all.forEach( category => {\n \tcategory.localization.forEach( localization => {\n \ttext.messages[localization.locale].categories.push(localization.text)\n \t})\n\t})\n\n \tconst { t } = useI18n(text)\n\n</script>\n\n<style lang=\"scss\">\n\n\n</style>\n"],"names":["useRoute","useRouter","ref","onMounted","marketplace.state","categories.actions","watch","globals.state","categories.state","useI18n"],"mappings":"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"}
|
1
|
+
{"version":3,"file":"Spots.vue.cjs","sources":["../../../../../../../src/modules/spots/components/layouts/Spots.vue"],"sourcesContent":["<template>\n\t<div class=\"w-100 h-100\">\n\t\t<!-- Catalog wrapper -->\n\t\t<div class=\"h-100 w-100 flex-nowrap flex-column flex gap-thin\">\n\n\t\t\t\t<!-- Sorting section -->\n\t\t\t\t<div class=\"pos-absolute z-index-2 w-100\">\n\t \t<h2 class=\"bg-black-transp-25 t-white pd-small w-100 bg-blur-big mn-l-auto mn-r-auto t-center\">\n\t \t\t<span class=\"\">Weed in </span>\n\n\t \t\t<span @click=\"a => { globals.state.isOpenLocationPopup = true }\" v-if=\"localPosition.city || localPosition.state || localPosition.country\" class=\"t-semi t-main\">\n \t\t\t\t<span v-if=\"localPosition.city\">{{localPosition.city}}, </span>\n \t\t\t\t<span v-if=\"localPosition.state\">{{localPosition.state}}, </span>\n \t\t\t\t<span v-if=\"localPosition.country\">{{localPosition.country}}</span>\n\t \t\t</span>\n\n\t \t\t<span v-else @click=\"a => { globals.state.isOpenLocationPopup = true }\" class=\"t-semi t-main\">\n\t\t\t\t\t\t\t\tThe World\n\t \t\t</span>\n\t \t</h2>\n\t\t\t\t\t</div>\n\n\n\t\t\t\t<!-- <Filters/> -->\n\n\t\t\t\t<!-- Products section -->\n\t\t\t\t<router-view v-slot=\"{ Component, route }\">\n\t\t\t\t\t<transition name=\"scaleIn\" mode=\"out-in\">\n\t\t\t\t\t\t<component \n\t\t\t\t\t\t\tref=\"page\" \n\t\t\t\t\t\t\t:key=\"route.path\" \n\t\t\t\t\t\t\t:localPosition=\"localPosition\" \n\t\t\t\t\t\t\t:is=\"Component\"\n\t\t\t\t\t\t\t:apiKey=\"GOOGLE_MAPS_API_KEY\" \n \t\t\t\t:locale=\"$i18n.locale\"\n\t\t\t\t\t\t\tclass=\"\"\n\t\t\t\t\t\t/>\n\t\t\t\t\t</transition>\n\t\t\t\t</router-view>\n\n\t\t</div>\n\t</div>\n</template>\n\n\n<script setup=\"props\">\n\t// Import libs\n\timport { computed, onMounted, watch, watchEffect, ref } from 'vue'\n\timport { useRoute, useRouter,onBeforeRouteLeave } from 'vue-router'\n\timport { useI18n } from 'vue-i18n'\n // Prometheus\n\timport Spoiler from \"@pf/src/components/Spoiler/Spoiler.vue\";\n \timport Checkbox from \"@pf/src/components/Checkbox/Checkbox.vue\";\n \timport Field from \"@pf/src/components/Field/Field.vue\";\n \t// Partials\n\timport Breadcrumbs from '@pf/src/components/Breadcrumbs/Breadcrumbs.vue'\n \timport Dropdown from \"@pf/src/components/Dropdown/Dropdown.vue\";\n\n \t// import Filters from '@pf/src/modules/marketplace/components/sections/Filters.vue'\n\n\n\timport * as globals from '@pf/src/modules/globals/views/store/globals';\n\timport * as categories from '@pf/src/modules/products/store/categories';\n\timport * as marketplace from '@pf/src/modules/products/store/marketplace';\n\n\t// Accessing router and store\n\tconst route = useRoute()\n\tconst router = useRouter()\n\n\tconst localPosition = ref({\n\t\tcity: null,\n\t\tstate: null,\n\t\tcountry: null\n\t});\n\n\n\tfunction denormalizeUrlParam(param) {\n\t return param\n\t .replace(/-/g, ' ') // Замена дефисов на пробелы\n\t .replace(/\\b\\w/g, l => l.toUpperCase()); // Преобразование первой буквы каждого слова в заглавную\n\t}\n\n\tonMounted(async () => {\n\t if (route.params) {\n\t // Загружаем новые значения из параметров маршрута в состояние\n\t let newState = {\n\t country: denormalizeUrlParam(route.params.country),\n\t state: denormalizeUrlParam(route.params.state),\n\t city: denormalizeUrlParam(route.params.city),\n\t };\n\n\t\t // Обновляем глобальное состояние\n\t\t localPosition.value = newState;\n\t\t}\n\n\t\tif (route.query) {\n\t\t const query = route.query;\n\t\t const newFilterValue = {\n\t\t categories: query.categories ? query.categories.split(',') : [],\n\t\t prices: query.prices ? query.prices.split(',') : [],\n\t\t delivery: query.delivery ? query.delivery.split(',') : [],\n\t\t // Продолжайте этот паттерн для остальных полей фильтра\n\t\t };\n\t\t marketplace.state.filter.selected = newFilterValue;\n\t\t}\n\n\n\t\t// Data fetching\n\t\tawait categories.actions.fetchCategories()\n\t})\n\n\twatch(() => marketplace.state.filter.selected, (newFilterValue, oldFilterValue) => {\n\t // Переводим фильтр в формат query\n\t const query = { ...route.query };\n\n\t // Удаляем старые значения фильтра из query\n\t Object.keys(oldFilterValue).forEach(key => {\n\t if (query[key]) {\n\t delete query[key];\n\t }\n\t });\n\n\t // Добавляем новые значения фильтра в query\n\t const newQueryValues = Object.fromEntries(\n\t Object.entries(newFilterValue)\n\t .filter(([key, value]) => Array.isArray(value) && value.length > 0)\n\t .map(([key, value]) => [key, value.join(',')])\n\t );\n\t Object.assign(query, newQueryValues);\n\n\t // Обновляем маршрут с новым query\n\t router.push({ query });\n\t}, { deep: true })\n\n\t\n\tfunction normalizeUrlParam(param) {\n\t return param\n\t .toLowerCase() // Преобразование всех символов в нижний регистр\n\t .replace(/ /g, '-') // Замена всех пробелов на дефисы\n\t .replace(/[^a-z0-9-]/g, ''); // Удаление всех символов, которые не являются буквами, цифрами или дефисами\n\t}\n\n\twatch(() => globals.state.position, (newPosition) => {\n\t // get the current route\n\t const currentRoute = { ...router.currentRoute.value };\n\t \n\t // create new parameters based on globals state position\n\t let newParams = {\n\t country: normalizeUrlParam(newPosition.country),\n\t state: normalizeUrlParam(newPosition.state),\n\t city: normalizeUrlParam(newPosition.city),\n\t };\n\t \t\n\t // update route params\n\t currentRoute.params = newParams;\n\t \n\t // replace the current route\n\t router.replace(currentRoute);\n\t}, { deep: true });\n\t\n const text = {\n locale: 'en',\n messages: {\n en: {\n\t \tmeta: {\n title: \"Marketplace – Shop Our Wide Selection of Quality Weed for Delivery\",\n description: \"Browse our marketplace of top-grade weed strains and choose from a variety of delivery options. Order now and have your favorite strains delivered straight to your door. Safe, fast, and reliable.\",\n },\n \tbreadcrumbs: {\n \t\thome: 'Home',\n \t\tstore: 'Marketplace',\n \t},\n \tcategoriesTitle: 'Category',\n \tcategories: [],\n \tsort: {\n \t\tprice: 'By price',\n \t\tnewest: 'By newest',\n \t\tpopularity: 'By popularity'\n \t},\n \tfilters: {\n \t\ttitle: 'Filters',\n \t\tprice: {\n \t\t\ttitle: 'Price',\n \t\t\tfrom: 'From',\n \t\t\tto: 'To'\n \t\t},\n \t\tfilters: [],\n \t\treset: 'Reset Filters'\n \t}\n },\n ru: {\n\t meta: {\n title: \"Маркетплейс – Выбирайте из нашего ассортимента качественной травки для доставки\",\n description: \"Маркетплейс – Изучите наши продукты высокого качества и выбирайте из различных вариантов доставки. Закажите сейчас и получите свои любимые сорта на дом. Безопасно, быстро и надежно.\",\n },\n \tbreadcrumbs: {\n \t\thome: 'Главная',\n \t\tstore: 'Маркетплейс',\n \t},\n \tcategoriesTitle: 'Категория',\n \tcategories: [],\n \tsort: {\n \t\tprice: 'По цене',\n \t\tnewest: 'По новизне',\n \t\tpopularity: 'По популярности'\n \t},\n \tfilters: {\n \t\ttitle: 'Фильтры',\n \t\tprice: {\n \t\t\ttitle: 'Цена',\n \t\t\tfrom: 'От',\n \t\t\tto: 'До'\n \t\t},\n \t\tfilters: [],\n \t\treset: 'Сбросить фильтры',\n \t}\n }\n }\n }\n\n \tcategories.state.all.forEach( category => {\n \tcategory.localization.forEach( localization => {\n \ttext.messages[localization.locale].categories.push(localization.text)\n \t})\n\t})\n\n \tconst { t } = useI18n(text)\n\n</script>\n\n<style lang=\"scss\">\n\n\n</style>\n"],"names":["useRoute","useRouter","ref","onMounted","marketplace.state","categories.actions","watch","globals.state","categories.state","useI18n"],"mappings":"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"}
|
@@ -7,7 +7,7 @@ import { useI18n } from "vue-i18n";
|
|
7
7
|
/* empty css */
|
8
8
|
import { state as state$1 } from "../../../globals/views/store/globals.js";
|
9
9
|
import { actions, state as state$2 } from "../../../products/store/categories.js";
|
10
|
-
import { state } from "../../../
|
10
|
+
import { state } from "../../../products/store/marketplace.js";
|
11
11
|
const _hoisted_1 = { class: "w-100 h-100" };
|
12
12
|
const _hoisted_2 = { class: "h-100 w-100 flex-nowrap flex-column flex gap-thin" };
|
13
13
|
const _hoisted_3 = { class: "pos-absolute z-index-2 w-100" };
|
@@ -1 +1 @@
|
|
1
|
-
{"version":3,"file":"Spots.vue.js","sources":["../../../../../../../src/modules/spots/components/layouts/Spots.vue"],"sourcesContent":["<template>\n\t<div class=\"w-100 h-100\">\n\t\t<!-- Catalog wrapper -->\n\t\t<div class=\"h-100 w-100 flex-nowrap flex-column flex gap-thin\">\n\n\t\t\t\t<!-- Sorting section -->\n\t\t\t\t<div class=\"pos-absolute z-index-2 w-100\">\n\t \t<h2 class=\"bg-black-transp-25 t-white pd-small w-100 bg-blur-big mn-l-auto mn-r-auto t-center\">\n\t \t\t<span class=\"\">Weed in </span>\n\n\t \t\t<span @click=\"a => { globals.state.isOpenLocationPopup = true }\" v-if=\"localPosition.city || localPosition.state || localPosition.country\" class=\"t-semi t-main\">\n \t\t\t\t<span v-if=\"localPosition.city\">{{localPosition.city}}, </span>\n \t\t\t\t<span v-if=\"localPosition.state\">{{localPosition.state}}, </span>\n \t\t\t\t<span v-if=\"localPosition.country\">{{localPosition.country}}</span>\n\t \t\t</span>\n\n\t \t\t<span v-else @click=\"a => { globals.state.isOpenLocationPopup = true }\" class=\"t-semi t-main\">\n\t\t\t\t\t\t\t\tThe World\n\t \t\t</span>\n\t \t</h2>\n\t\t\t\t\t</div>\n\n\n\t\t\t\t<!-- <Filters/> -->\n\n\t\t\t\t<!-- Products section -->\n\t\t\t\t<router-view v-slot=\"{ Component, route }\">\n\t\t\t\t\t<transition name=\"scaleIn\" mode=\"out-in\">\n\t\t\t\t\t\t<component \n\t\t\t\t\t\t\tref=\"page\" \n\t\t\t\t\t\t\t:key=\"route.path\" \n\t\t\t\t\t\t\t:localPosition=\"localPosition\" \n\t\t\t\t\t\t\t:is=\"Component\"\n\t\t\t\t\t\t\t:apiKey=\"GOOGLE_MAPS_API_KEY\" \n \t\t\t\t:locale=\"$i18n.locale\"\n\t\t\t\t\t\t\tclass=\"\"\n\t\t\t\t\t\t/>\n\t\t\t\t\t</transition>\n\t\t\t\t</router-view>\n\n\t\t</div>\n\t</div>\n</template>\n\n\n<script setup=\"props\">\n\t// Import libs\n\timport { computed, onMounted, watch, watchEffect, ref } from 'vue'\n\timport { useRoute, useRouter,onBeforeRouteLeave } from 'vue-router'\n\timport { useI18n } from 'vue-i18n'\n // Prometheus\n\timport Spoiler from \"@pf/src/components/Spoiler/Spoiler.vue\";\n \timport Checkbox from \"@pf/src/components/Checkbox/Checkbox.vue\";\n \timport Field from \"@pf/src/components/Field/Field.vue\";\n \t// Partials\n\timport Breadcrumbs from '@pf/src/components/Breadcrumbs/Breadcrumbs.vue'\n \timport Dropdown from \"@pf/src/components/Dropdown/Dropdown.vue\";\n\n \t// import Filters from '@pf/src/modules/marketplace/components/sections/Filters.vue'\n\n\n\timport * as globals from '@pf/src/modules/globals/views/store/globals';\n\timport * as categories from '@pf/src/modules/products/store/categories';\n\timport * as marketplace from '@pf/src/modules/marketplace/store/marketplace';\n\n\t// Accessing router and store\n\tconst route = useRoute()\n\tconst router = useRouter()\n\n\tconst localPosition = ref({\n\t\tcity: null,\n\t\tstate: null,\n\t\tcountry: null\n\t});\n\n\n\tfunction denormalizeUrlParam(param) {\n\t return param\n\t .replace(/-/g, ' ') // Замена дефисов на пробелы\n\t .replace(/\\b\\w/g, l => l.toUpperCase()); // Преобразование первой буквы каждого слова в заглавную\n\t}\n\n\tonMounted(async () => {\n\t if (route.params) {\n\t // Загружаем новые значения из параметров маршрута в состояние\n\t let newState = {\n\t country: denormalizeUrlParam(route.params.country),\n\t state: denormalizeUrlParam(route.params.state),\n\t city: denormalizeUrlParam(route.params.city),\n\t };\n\n\t\t // Обновляем глобальное состояние\n\t\t localPosition.value = newState;\n\t\t}\n\n\t\tif (route.query) {\n\t\t const query = route.query;\n\t\t const newFilterValue = {\n\t\t categories: query.categories ? query.categories.split(',') : [],\n\t\t prices: query.prices ? query.prices.split(',') : [],\n\t\t delivery: query.delivery ? query.delivery.split(',') : [],\n\t\t // Продолжайте этот паттерн для остальных полей фильтра\n\t\t };\n\t\t marketplace.state.filter.selected = newFilterValue;\n\t\t}\n\n\n\t\t// Data fetching\n\t\tawait categories.actions.fetchCategories()\n\t})\n\n\twatch(() => marketplace.state.filter.selected, (newFilterValue, oldFilterValue) => {\n\t // Переводим фильтр в формат query\n\t const query = { ...route.query };\n\n\t // Удаляем старые значения фильтра из query\n\t Object.keys(oldFilterValue).forEach(key => {\n\t if (query[key]) {\n\t delete query[key];\n\t }\n\t });\n\n\t // Добавляем новые значения фильтра в query\n\t const newQueryValues = Object.fromEntries(\n\t Object.entries(newFilterValue)\n\t .filter(([key, value]) => Array.isArray(value) && value.length > 0)\n\t .map(([key, value]) => [key, value.join(',')])\n\t );\n\t Object.assign(query, newQueryValues);\n\n\t // Обновляем маршрут с новым query\n\t router.push({ query });\n\t}, { deep: true })\n\n\t\n\tfunction normalizeUrlParam(param) {\n\t return param\n\t .toLowerCase() // Преобразование всех символов в нижний регистр\n\t .replace(/ /g, '-') // Замена всех пробелов на дефисы\n\t .replace(/[^a-z0-9-]/g, ''); // Удаление всех символов, которые не являются буквами, цифрами или дефисами\n\t}\n\n\twatch(() => globals.state.position, (newPosition) => {\n\t // get the current route\n\t const currentRoute = { ...router.currentRoute.value };\n\t \n\t // create new parameters based on globals state position\n\t let newParams = {\n\t country: normalizeUrlParam(newPosition.country),\n\t state: normalizeUrlParam(newPosition.state),\n\t city: normalizeUrlParam(newPosition.city),\n\t };\n\t \t\n\t // update route params\n\t currentRoute.params = newParams;\n\t \n\t // replace the current route\n\t router.replace(currentRoute);\n\t}, { deep: true });\n\t\n const text = {\n locale: 'en',\n messages: {\n en: {\n\t \tmeta: {\n title: \"Marketplace – Shop Our Wide Selection of Quality Weed for Delivery\",\n description: \"Browse our marketplace of top-grade weed strains and choose from a variety of delivery options. Order now and have your favorite strains delivered straight to your door. Safe, fast, and reliable.\",\n },\n \tbreadcrumbs: {\n \t\thome: 'Home',\n \t\tstore: 'Marketplace',\n \t},\n \tcategoriesTitle: 'Category',\n \tcategories: [],\n \tsort: {\n \t\tprice: 'By price',\n \t\tnewest: 'By newest',\n \t\tpopularity: 'By popularity'\n \t},\n \tfilters: {\n \t\ttitle: 'Filters',\n \t\tprice: {\n \t\t\ttitle: 'Price',\n \t\t\tfrom: 'From',\n \t\t\tto: 'To'\n \t\t},\n \t\tfilters: [],\n \t\treset: 'Reset Filters'\n \t}\n },\n ru: {\n\t meta: {\n title: \"Маркетплейс – Выбирайте из нашего ассортимента качественной травки для доставки\",\n description: \"Маркетплейс – Изучите наши продукты высокого качества и выбирайте из различных вариантов доставки. Закажите сейчас и получите свои любимые сорта на дом. Безопасно, быстро и надежно.\",\n },\n \tbreadcrumbs: {\n \t\thome: 'Главная',\n \t\tstore: 'Маркетплейс',\n \t},\n \tcategoriesTitle: 'Категория',\n \tcategories: [],\n \tsort: {\n \t\tprice: 'По цене',\n \t\tnewest: 'По новизне',\n \t\tpopularity: 'По популярности'\n \t},\n \tfilters: {\n \t\ttitle: 'Фильтры',\n \t\tprice: {\n \t\t\ttitle: 'Цена',\n \t\t\tfrom: 'От',\n \t\t\tto: 'До'\n \t\t},\n \t\tfilters: [],\n \t\treset: 'Сбросить фильтры',\n \t}\n }\n }\n }\n\n \tcategories.state.all.forEach( category => {\n \tcategory.localization.forEach( localization => {\n \ttext.messages[localization.locale].categories.push(localization.text)\n \t})\n\t})\n\n \tconst { t } = useI18n(text)\n\n</script>\n\n<style lang=\"scss\">\n\n\n</style>\n"],"names":["marketplace.state","categories.actions","globals.state","categories.state"],"mappings":";;;;;;;;;;;;;;;;;;;;AAkEC,UAAM,QAAQ,SAAU;AACxB,UAAM,SAAS,UAAW;AAE1B,UAAM,gBAAgB,IAAI;AAAA,MACzB,MAAM;AAAA,MACN,OAAO;AAAA,MACP,SAAS;AAAA,IACX,CAAE;AAGD,aAAS,oBAAoB,OAAO;AAClC,aAAO,MACJ,QAAQ,MAAM,GAAG,EACjB,QAAQ,SAAS,OAAK,EAAE,YAAa,CAAA;AAAA,IACzC;AAED,cAAU,YAAY;AACpB,UAAI,MAAM,QAAQ;AAEhB,YAAI,WAAW;AAAA,UACb,SAAS,oBAAoB,MAAM,OAAO,OAAO;AAAA,UACjD,OAAO,oBAAoB,MAAM,OAAO,KAAK;AAAA,UAC7C,MAAM,oBAAoB,MAAM,OAAO,IAAI;AAAA,QAClD;AAGI,sBAAc,QAAQ;AAAA,MACvB;AAED,UAAI,MAAM,OAAO;AAChB,cAAM,QAAQ,MAAM;AACnB,cAAM,iBAAiB;AAAA,UACrB,YAAY,MAAM,aAAa,MAAM,WAAW,MAAM,GAAG,IAAI,CAAE;AAAA,UAC/D,QAAQ,MAAM,SAAS,MAAM,OAAO,MAAM,GAAG,IAAI,CAAE;AAAA,UACnD,UAAU,MAAM,WAAW,MAAM,SAAS,MAAM,GAAG,IAAI,CAAE;AAAA;AAAA,QAE/D;AACIA,cAAkB,OAAO,WAAW;AAAA,MACrC;AAID,YAAMC,QAAmB,gBAAiB;AAAA,IAC5C,CAAE;AAED,UAAM,MAAMD,MAAkB,OAAO,UAAU,CAAC,gBAAgB,mBAAmB;AAEjF,YAAM,QAAQ,EAAE,GAAG,MAAM,MAAK;AAG9B,aAAO,KAAK,cAAc,EAAE,QAAQ,SAAO;AACzC,YAAI,MAAM,GAAG,GAAG;AACd,iBAAO,MAAM,GAAG;AAAA,QACjB;AAAA,MACN,CAAI;AAGD,YAAM,iBAAiB,OAAO;AAAA,QAC5B,OAAO,QAAQ,cAAc,EAC1B,OAAO,CAAC,CAAC,KAAK,KAAK,MAAM,MAAM,QAAQ,KAAK,KAAK,MAAM,SAAS,CAAC,EACjE,IAAI,CAAC,CAAC,KAAK,KAAK,MAAM,CAAC,KAAK,MAAM,KAAK,GAAG,CAAC,CAAC;AAAA,MACpD;AACG,aAAO,OAAO,OAAO,cAAc;AAGnC,aAAO,KAAK,EAAE,MAAK,CAAE;AAAA,IACxB,GAAI,EAAE,MAAM,MAAM;AAGjB,aAAS,kBAAkB,OAAO;AAChC,aAAO,MACJ,YAAa,EACb,QAAQ,MAAM,GAAG,EACjB,QAAQ,eAAe,EAAE;AAAA,IAC7B;AAED,UAAM,MAAME,QAAc,UAAU,CAAC,gBAAgB;AAEnD,YAAM,eAAe,EAAE,GAAG,OAAO,aAAa,MAAK;AAGnD,UAAI,YAAY;AAAA,QACd,SAAS,kBAAkB,YAAY,OAAO;AAAA,QAC9C,OAAO,kBAAkB,YAAY,KAAK;AAAA,QAC1C,MAAM,kBAAkB,YAAY,IAAI;AAAA,MAC7C;AAGG,mBAAa,SAAS;AAGtB,aAAO,QAAQ,YAAY;AAAA,IAC9B,GAAI,EAAE,MAAM,KAAI,CAAE;AAEhB,UAAM,OAAO;AAAA,MACX,QAAQ;AAAA,MACR,UAAU;AAAA,QACR,IAAI;AAAA,UACH,MAAM;AAAA,YACH,OAAO;AAAA,YACP,aAAa;AAAA,UACd;AAAA,UACF,aAAa;AAAA,YACZ,MAAM;AAAA,YACN,OAAO;AAAA,UACP;AAAA,UACD,iBAAiB;AAAA,UACjB,YAAY,CAAE;AAAA,UACd,MAAM;AAAA,YACL,OAAO;AAAA,YACP,QAAQ;AAAA,YACR,YAAY;AAAA,UACZ;AAAA,UACD,SAAS;AAAA,YACR,OAAO;AAAA,YACP,OAAO;AAAA,cACN,OAAO;AAAA,cACP,MAAM;AAAA,cACN,IAAI;AAAA,YACJ;AAAA,YACD,SAAS,CAAE;AAAA,YACX,OAAO;AAAA,UACP;AAAA,QACD;AAAA,QACD,IAAI;AAAA,UACH,MAAM;AAAA,YACH,OAAO;AAAA,YACP,aAAa;AAAA,UACd;AAAA,UACF,aAAa;AAAA,YACZ,MAAM;AAAA,YACN,OAAO;AAAA,UACP;AAAA,UACD,iBAAiB;AAAA,UACjB,YAAY,CAAE;AAAA,UACd,MAAM;AAAA,YACL,OAAO;AAAA,YACP,QAAQ;AAAA,YACR,YAAY;AAAA,UACZ;AAAA,UACD,SAAS;AAAA,YACR,OAAO;AAAA,YACP,OAAO;AAAA,cACN,OAAO;AAAA,cACP,MAAM;AAAA,cACN,IAAI;AAAA,YACJ;AAAA,YACD,SAAS,CAAE;AAAA,YACX,OAAO;AAAA,UACP;AAAA,QACD;AAAA,MACF;AAAA,IACF;AAEDC,YAAiB,IAAI,QAAS,cAAY;AACzC,eAAS,aAAa,QAAS,kBAAgB;AAC7C,aAAK,SAAS,aAAa,MAAM,EAAE,WAAW,KAAK,aAAa,IAAI;AAAA,MACzE,CAAI;AAAA,IACJ,CAAE;AAEc,YAAQ,IAAI;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;"}
|
1
|
+
{"version":3,"file":"Spots.vue.js","sources":["../../../../../../../src/modules/spots/components/layouts/Spots.vue"],"sourcesContent":["<template>\n\t<div class=\"w-100 h-100\">\n\t\t<!-- Catalog wrapper -->\n\t\t<div class=\"h-100 w-100 flex-nowrap flex-column flex gap-thin\">\n\n\t\t\t\t<!-- Sorting section -->\n\t\t\t\t<div class=\"pos-absolute z-index-2 w-100\">\n\t \t<h2 class=\"bg-black-transp-25 t-white pd-small w-100 bg-blur-big mn-l-auto mn-r-auto t-center\">\n\t \t\t<span class=\"\">Weed in </span>\n\n\t \t\t<span @click=\"a => { globals.state.isOpenLocationPopup = true }\" v-if=\"localPosition.city || localPosition.state || localPosition.country\" class=\"t-semi t-main\">\n \t\t\t\t<span v-if=\"localPosition.city\">{{localPosition.city}}, </span>\n \t\t\t\t<span v-if=\"localPosition.state\">{{localPosition.state}}, </span>\n \t\t\t\t<span v-if=\"localPosition.country\">{{localPosition.country}}</span>\n\t \t\t</span>\n\n\t \t\t<span v-else @click=\"a => { globals.state.isOpenLocationPopup = true }\" class=\"t-semi t-main\">\n\t\t\t\t\t\t\t\tThe World\n\t \t\t</span>\n\t \t</h2>\n\t\t\t\t\t</div>\n\n\n\t\t\t\t<!-- <Filters/> -->\n\n\t\t\t\t<!-- Products section -->\n\t\t\t\t<router-view v-slot=\"{ Component, route }\">\n\t\t\t\t\t<transition name=\"scaleIn\" mode=\"out-in\">\n\t\t\t\t\t\t<component \n\t\t\t\t\t\t\tref=\"page\" \n\t\t\t\t\t\t\t:key=\"route.path\" \n\t\t\t\t\t\t\t:localPosition=\"localPosition\" \n\t\t\t\t\t\t\t:is=\"Component\"\n\t\t\t\t\t\t\t:apiKey=\"GOOGLE_MAPS_API_KEY\" \n \t\t\t\t:locale=\"$i18n.locale\"\n\t\t\t\t\t\t\tclass=\"\"\n\t\t\t\t\t\t/>\n\t\t\t\t\t</transition>\n\t\t\t\t</router-view>\n\n\t\t</div>\n\t</div>\n</template>\n\n\n<script setup=\"props\">\n\t// Import libs\n\timport { computed, onMounted, watch, watchEffect, ref } from 'vue'\n\timport { useRoute, useRouter,onBeforeRouteLeave } from 'vue-router'\n\timport { useI18n } from 'vue-i18n'\n // Prometheus\n\timport Spoiler from \"@pf/src/components/Spoiler/Spoiler.vue\";\n \timport Checkbox from \"@pf/src/components/Checkbox/Checkbox.vue\";\n \timport Field from \"@pf/src/components/Field/Field.vue\";\n \t// Partials\n\timport Breadcrumbs from '@pf/src/components/Breadcrumbs/Breadcrumbs.vue'\n \timport Dropdown from \"@pf/src/components/Dropdown/Dropdown.vue\";\n\n \t// import Filters from '@pf/src/modules/marketplace/components/sections/Filters.vue'\n\n\n\timport * as globals from '@pf/src/modules/globals/views/store/globals';\n\timport * as categories from '@pf/src/modules/products/store/categories';\n\timport * as marketplace from '@pf/src/modules/products/store/marketplace';\n\n\t// Accessing router and store\n\tconst route = useRoute()\n\tconst router = useRouter()\n\n\tconst localPosition = ref({\n\t\tcity: null,\n\t\tstate: null,\n\t\tcountry: null\n\t});\n\n\n\tfunction denormalizeUrlParam(param) {\n\t return param\n\t .replace(/-/g, ' ') // Замена дефисов на пробелы\n\t .replace(/\\b\\w/g, l => l.toUpperCase()); // Преобразование первой буквы каждого слова в заглавную\n\t}\n\n\tonMounted(async () => {\n\t if (route.params) {\n\t // Загружаем новые значения из параметров маршрута в состояние\n\t let newState = {\n\t country: denormalizeUrlParam(route.params.country),\n\t state: denormalizeUrlParam(route.params.state),\n\t city: denormalizeUrlParam(route.params.city),\n\t };\n\n\t\t // Обновляем глобальное состояние\n\t\t localPosition.value = newState;\n\t\t}\n\n\t\tif (route.query) {\n\t\t const query = route.query;\n\t\t const newFilterValue = {\n\t\t categories: query.categories ? query.categories.split(',') : [],\n\t\t prices: query.prices ? query.prices.split(',') : [],\n\t\t delivery: query.delivery ? query.delivery.split(',') : [],\n\t\t // Продолжайте этот паттерн для остальных полей фильтра\n\t\t };\n\t\t marketplace.state.filter.selected = newFilterValue;\n\t\t}\n\n\n\t\t// Data fetching\n\t\tawait categories.actions.fetchCategories()\n\t})\n\n\twatch(() => marketplace.state.filter.selected, (newFilterValue, oldFilterValue) => {\n\t // Переводим фильтр в формат query\n\t const query = { ...route.query };\n\n\t // Удаляем старые значения фильтра из query\n\t Object.keys(oldFilterValue).forEach(key => {\n\t if (query[key]) {\n\t delete query[key];\n\t }\n\t });\n\n\t // Добавляем новые значения фильтра в query\n\t const newQueryValues = Object.fromEntries(\n\t Object.entries(newFilterValue)\n\t .filter(([key, value]) => Array.isArray(value) && value.length > 0)\n\t .map(([key, value]) => [key, value.join(',')])\n\t );\n\t Object.assign(query, newQueryValues);\n\n\t // Обновляем маршрут с новым query\n\t router.push({ query });\n\t}, { deep: true })\n\n\t\n\tfunction normalizeUrlParam(param) {\n\t return param\n\t .toLowerCase() // Преобразование всех символов в нижний регистр\n\t .replace(/ /g, '-') // Замена всех пробелов на дефисы\n\t .replace(/[^a-z0-9-]/g, ''); // Удаление всех символов, которые не являются буквами, цифрами или дефисами\n\t}\n\n\twatch(() => globals.state.position, (newPosition) => {\n\t // get the current route\n\t const currentRoute = { ...router.currentRoute.value };\n\t \n\t // create new parameters based on globals state position\n\t let newParams = {\n\t country: normalizeUrlParam(newPosition.country),\n\t state: normalizeUrlParam(newPosition.state),\n\t city: normalizeUrlParam(newPosition.city),\n\t };\n\t \t\n\t // update route params\n\t currentRoute.params = newParams;\n\t \n\t // replace the current route\n\t router.replace(currentRoute);\n\t}, { deep: true });\n\t\n const text = {\n locale: 'en',\n messages: {\n en: {\n\t \tmeta: {\n title: \"Marketplace – Shop Our Wide Selection of Quality Weed for Delivery\",\n description: \"Browse our marketplace of top-grade weed strains and choose from a variety of delivery options. Order now and have your favorite strains delivered straight to your door. Safe, fast, and reliable.\",\n },\n \tbreadcrumbs: {\n \t\thome: 'Home',\n \t\tstore: 'Marketplace',\n \t},\n \tcategoriesTitle: 'Category',\n \tcategories: [],\n \tsort: {\n \t\tprice: 'By price',\n \t\tnewest: 'By newest',\n \t\tpopularity: 'By popularity'\n \t},\n \tfilters: {\n \t\ttitle: 'Filters',\n \t\tprice: {\n \t\t\ttitle: 'Price',\n \t\t\tfrom: 'From',\n \t\t\tto: 'To'\n \t\t},\n \t\tfilters: [],\n \t\treset: 'Reset Filters'\n \t}\n },\n ru: {\n\t meta: {\n title: \"Маркетплейс – Выбирайте из нашего ассортимента качественной травки для доставки\",\n description: \"Маркетплейс – Изучите наши продукты высокого качества и выбирайте из различных вариантов доставки. Закажите сейчас и получите свои любимые сорта на дом. Безопасно, быстро и надежно.\",\n },\n \tbreadcrumbs: {\n \t\thome: 'Главная',\n \t\tstore: 'Маркетплейс',\n \t},\n \tcategoriesTitle: 'Категория',\n \tcategories: [],\n \tsort: {\n \t\tprice: 'По цене',\n \t\tnewest: 'По новизне',\n \t\tpopularity: 'По популярности'\n \t},\n \tfilters: {\n \t\ttitle: 'Фильтры',\n \t\tprice: {\n \t\t\ttitle: 'Цена',\n \t\t\tfrom: 'От',\n \t\t\tto: 'До'\n \t\t},\n \t\tfilters: [],\n \t\treset: 'Сбросить фильтры',\n \t}\n }\n }\n }\n\n \tcategories.state.all.forEach( category => {\n \tcategory.localization.forEach( localization => {\n \ttext.messages[localization.locale].categories.push(localization.text)\n \t})\n\t})\n\n \tconst { t } = useI18n(text)\n\n</script>\n\n<style lang=\"scss\">\n\n\n</style>\n"],"names":["marketplace.state","categories.actions","globals.state","categories.state"],"mappings":"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"}
|