@ozdao/prometheus-framework 0.2.251 → 0.2.253
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/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/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/components/Feed/Feed.vue.cjs +1 -1
- package/dist/prometheus-framework/src/components/Feed/Feed.vue.js +1 -1
- package/dist/prometheus-framework/src/components/LocationMarker/LocationMarker.vue2.cjs +1 -1
- package/dist/prometheus-framework/src/components/LocationMarker/LocationMarker.vue2.js +1 -1
- package/dist/prometheus-framework/src/components/Slider/Slider.vue.cjs +1 -1
- package/dist/prometheus-framework/src/components/Slider/Slider.vue.js +1 -1
- package/dist/prometheus-framework/src/components/UploadImageMultiple/UploadImageMultiple.vue.cjs +1 -1
- package/dist/prometheus-framework/src/components/UploadImageMultiple/UploadImageMultiple.vue.js +1 -1
- 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/layouts/Auth.vue.cjs +2 -2
- package/dist/prometheus-framework/src/modules/auth/views/components/layouts/Auth.vue.js +2 -2
- package/dist/prometheus-framework/src/modules/auth/views/components/pages/EnterPassword.vue.cjs +1 -1
- package/dist/prometheus-framework/src/modules/auth/views/components/pages/EnterPassword.vue.js +1 -1
- package/dist/prometheus-framework/src/modules/auth/views/components/pages/Invite.vue.cjs +1 -1
- package/dist/prometheus-framework/src/modules/auth/views/components/pages/Invite.vue.js +1 -1
- 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/pages/ResetPassword.vue.cjs +1 -1
- package/dist/prometheus-framework/src/modules/auth/views/components/pages/ResetPassword.vue.js +1 -1
- package/dist/prometheus-framework/src/modules/auth/views/components/pages/SignIn.vue.cjs +1 -1
- package/dist/prometheus-framework/src/modules/auth/views/components/pages/SignIn.vue.js +1 -1
- package/dist/prometheus-framework/src/modules/auth/views/components/pages/SignUp.vue.cjs +1 -1
- package/dist/prometheus-framework/src/modules/auth/views/components/pages/SignUp.vue.js +1 -1
- 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/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/components/layouts/Community.vue.cjs +1 -1
- package/dist/prometheus-framework/src/modules/community/components/layouts/Community.vue.js +1 -1
- package/dist/prometheus-framework/src/modules/community/components/pages/BlogPost.vue.cjs +2 -2
- package/dist/prometheus-framework/src/modules/community/components/pages/BlogPost.vue.js +2 -2
- package/dist/prometheus-framework/src/modules/community/components/pages/Community.vue.cjs +3 -3
- package/dist/prometheus-framework/src/modules/community/components/pages/Community.vue.js +3 -3
- package/dist/prometheus-framework/src/modules/community/components/pages/CreateBlogPost.vue.cjs +2 -2
- package/dist/prometheus-framework/src/modules/community/components/pages/CreateBlogPost.vue.js +2 -2
- package/dist/prometheus-framework/src/modules/community/components/sections/HotPosts.vue.cjs +1 -1
- package/dist/prometheus-framework/src/modules/community/components/sections/HotPosts.vue.js +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/events/components/elements/ButtonCheck.vue.cjs +1 -1
- package/dist/prometheus-framework/src/modules/events/components/elements/ButtonCheck.vue.js +1 -1
- package/dist/prometheus-framework/src/modules/events/components/elements/ButtonJoin.vue.cjs +1 -1
- package/dist/prometheus-framework/src/modules/events/components/elements/ButtonJoin.vue.js +1 -1
- package/dist/prometheus-framework/src/modules/events/components/pages/EditEvent.vue.cjs +2 -2
- package/dist/prometheus-framework/src/modules/events/components/pages/EditEvent.vue.js +2 -2
- package/dist/prometheus-framework/src/modules/events/components/pages/EditEventTickets.vue.cjs +2 -2
- package/dist/prometheus-framework/src/modules/events/components/pages/EditEventTickets.vue.js +2 -2
- package/dist/prometheus-framework/src/modules/events/components/pages/Event.vue.cjs +1 -1
- package/dist/prometheus-framework/src/modules/events/components/pages/Event.vue.js +1 -1
- package/dist/prometheus-framework/src/modules/events/components/sections/Feed.vue.cjs +1 -1
- package/dist/prometheus-framework/src/modules/events/components/sections/Feed.vue.js +1 -1
- package/dist/prometheus-framework/src/modules/events/components/sections/List.vue.cjs +1 -1
- package/dist/prometheus-framework/src/modules/events/components/sections/List.vue.js +1 -1
- package/dist/prometheus-framework/src/modules/gallery/components/pages/Gallery.vue.cjs +1 -1
- package/dist/prometheus-framework/src/modules/gallery/components/pages/Gallery.vue.js +1 -1
- package/dist/prometheus-framework/src/modules/gallery/components/sections/BackofficeGallery.vue.cjs +3 -3
- package/dist/prometheus-framework/src/modules/gallery/components/sections/BackofficeGallery.vue.js +3 -3
- 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/globals/globals.client.cjs.map +1 -1
- package/dist/prometheus-framework/src/modules/globals/globals.client.js.map +1 -1
- package/dist/prometheus-framework/src/modules/globals/views/components/blocks/CardHeader.vue.cjs +2 -2
- package/dist/prometheus-framework/src/modules/globals/views/components/blocks/CardHeader.vue.js +2 -2
- package/dist/prometheus-framework/src/modules/globals/views/components/layouts/Client.vue.cjs +2 -2
- package/dist/prometheus-framework/src/modules/globals/views/components/layouts/Client.vue.js +2 -2
- package/dist/prometheus-framework/src/modules/globals/views/components/partials/Header.vue.cjs +2 -2
- package/dist/prometheus-framework/src/modules/globals/views/components/partials/Header.vue.js +2 -2
- package/dist/prometheus-framework/src/modules/globals/views/components/partials/NavigationBar.vue.cjs +1 -1
- package/dist/prometheus-framework/src/modules/globals/views/components/partials/NavigationBar.vue.js +1 -1
- package/dist/prometheus-framework/src/modules/legal/components/pages/Legal.vue.cjs +2 -2
- package/dist/prometheus-framework/src/modules/legal/components/pages/Legal.vue.js +2 -2
- package/dist/prometheus-framework/src/modules/orders/components/pages/OrderBackoffice.vue.cjs +1 -1
- package/dist/prometheus-framework/src/modules/orders/components/pages/OrderBackoffice.vue.js +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 +4 -4
- 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 +4 -4
- 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 +4 -4
- 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 +4 -4
- package/dist/prometheus-framework/src/modules/orders/components/sections/FormAddCustomer.vue.js.map +1 -1
- package/dist/prometheus-framework/src/modules/orders/components/sections/FormCustomerDetails.vue.cjs +1 -1
- package/dist/prometheus-framework/src/modules/orders/components/sections/FormCustomerDetails.vue.js +1 -1
- package/dist/prometheus-framework/src/modules/orders/components/sections/FormPayment.vue.cjs +1 -1
- package/dist/prometheus-framework/src/modules/orders/components/sections/FormPayment.vue.js +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/elements/ButtonToggleMembership.vue.cjs +1 -1
- package/dist/prometheus-framework/src/modules/organizations/components/elements/ButtonToggleMembership.vue.js +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 +5 -5
- 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 +5 -5
- 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 +2 -2
- 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 +2 -2
- 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/pages/OrganizationEdit.vue.cjs +3 -3
- package/dist/prometheus-framework/src/modules/organizations/components/pages/OrganizationEdit.vue.js +3 -3
- package/dist/prometheus-framework/src/modules/organizations/components/sections/Documents.vue.cjs +3 -3
- package/dist/prometheus-framework/src/modules/organizations/components/sections/Documents.vue.js +3 -3
- package/dist/prometheus-framework/src/modules/organizations/components/sections/Feed.vue.cjs +1 -1
- package/dist/prometheus-framework/src/modules/organizations/components/sections/Feed.vue.js +1 -1
- package/dist/prometheus-framework/src/modules/organizations/components/sections/MembersAdd.vue.cjs +4 -4
- 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 +4 -4
- package/dist/prometheus-framework/src/modules/organizations/components/sections/MembersAdd.vue.js.map +1 -1
- package/dist/prometheus-framework/src/modules/organizations/components/sections/Organizations.vue.cjs +3 -3
- package/dist/prometheus-framework/src/modules/organizations/components/sections/Organizations.vue.js +3 -3
- 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 +786 -773
- package/dist/prometheus-framework/src/modules/pages/pages.client.js +786 -773
- package/dist/prometheus-framework/src/modules/pages/views/components/blocks/CardPage.vue.cjs +2 -2
- package/dist/prometheus-framework/src/modules/pages/views/components/blocks/CardPage.vue.js +2 -2
- package/dist/prometheus-framework/src/modules/pages/views/components/pages/PageEdit.vue.cjs +1 -1
- package/dist/prometheus-framework/src/modules/pages/views/components/pages/PageEdit.vue.js +1 -1
- package/dist/prometheus-framework/src/modules/pages/views/components/partials/SidebarPages.vue.cjs +2 -2
- package/dist/prometheus-framework/src/modules/pages/views/components/partials/SidebarPages.vue.js +2 -2
- package/dist/prometheus-framework/src/modules/pages/views/store/pages.cjs +5 -7
- package/dist/prometheus-framework/src/modules/pages/views/store/pages.cjs.map +1 -1
- package/dist/prometheus-framework/src/modules/pages/views/store/pages.js +1 -3
- package/dist/prometheus-framework/src/modules/pages/views/store/pages.js.map +1 -1
- package/dist/prometheus-framework/src/modules/products/components/blocks/CardPosition.vue.cjs +1 -1
- package/dist/prometheus-framework/src/modules/products/components/blocks/CardPosition.vue.js +1 -1
- package/dist/prometheus-framework/src/modules/products/components/blocks/Images360.vue.cjs +1 -1
- package/dist/prometheus-framework/src/modules/products/components/blocks/Images360.vue.js +1 -1
- package/dist/prometheus-framework/src/modules/products/components/blocks/ImagesThumbnails.vue.cjs +1 -1
- package/dist/prometheus-framework/src/modules/products/components/blocks/ImagesThumbnails.vue.js +1 -1
- package/dist/prometheus-framework/src/modules/products/components/layouts/Marketplace.vue.cjs +178 -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 +178 -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 +62 -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 +62 -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/Categories.vue.cjs +1 -1
- package/dist/prometheus-framework/src/modules/products/components/pages/Categories.vue.js +1 -1
- package/dist/prometheus-framework/src/modules/products/components/pages/CategoryEdit.vue.cjs +2 -2
- package/dist/prometheus-framework/src/modules/products/components/pages/CategoryEdit.vue.js +2 -2
- package/dist/prometheus-framework/src/modules/products/components/pages/EditLeftover.vue.cjs +2 -2
- package/dist/prometheus-framework/src/modules/products/components/pages/EditLeftover.vue.js +2 -2
- package/dist/prometheus-framework/src/modules/products/components/pages/ProductEdit.vue.cjs +2 -2
- package/dist/prometheus-framework/src/modules/products/components/pages/ProductEdit.vue.js +2 -2
- package/dist/prometheus-framework/src/modules/products/components/pages/ProductRecommmendation.vue.cjs +3 -3
- package/dist/prometheus-framework/src/modules/products/components/pages/ProductRecommmendation.vue.js +3 -3
- 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/EditProductInfo.vue.cjs +3 -3
- package/dist/prometheus-framework/src/modules/products/components/sections/EditProductInfo.vue.js +3 -3
- 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/MenuSection.vue.cjs +128 -0
- package/dist/prometheus-framework/src/modules/products/components/sections/MenuSection.vue.cjs.map +1 -0
- package/dist/prometheus-framework/src/modules/products/components/sections/MenuSection.vue.js +128 -0
- package/dist/prometheus-framework/src/modules/products/components/sections/MenuSection.vue.js.map +1 -0
- package/dist/prometheus-framework/src/modules/products/components/sections/PopularProducts.vue.cjs +2 -2
- 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 +2 -2
- package/dist/prometheus-framework/src/modules/products/components/sections/PopularProducts.vue.js.map +1 -1
- package/dist/prometheus-framework/src/modules/products/components/sections/SectionProduct.vue.cjs +1 -1
- package/dist/prometheus-framework/src/modules/products/components/sections/SectionProduct.vue.js +1 -1
- package/dist/prometheus-framework/src/modules/products/products.client.cjs +74 -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 -47
- 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/components/sections/FormReport.vue.cjs +3 -3
- package/dist/prometheus-framework/src/modules/reports/components/sections/FormReport.vue.js +3 -3
- package/dist/prometheus-framework/src/modules/spots/components/blocks/SpotMemberModify.vue.cjs +1 -1
- package/dist/prometheus-framework/src/modules/spots/components/blocks/SpotMemberModify.vue.js +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 +3 -3
- 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 +3 -3
- 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/prometheus-framework/src/modules/spots/components/pages/SpotEdit.vue.cjs +3 -3
- package/dist/prometheus-framework/src/modules/spots/components/pages/SpotEdit.vue.js +3 -3
- package/dist/prometheus-framework/src/modules/users/components/pages/Profile.vue.cjs +2 -2
- package/dist/prometheus-framework/src/modules/users/components/pages/Profile.vue.js +2 -2
- package/dist/prometheus-framework/src/modules/users/components/pages/ProfileEdit.vue.cjs +1 -1
- package/dist/prometheus-framework/src/modules/users/components/pages/ProfileEdit.vue.js +1 -1
- package/dist/prometheus-framework/src/modules/wallet/views/components/blocks/CryptoDeposit.vue.cjs +1 -1
- package/dist/prometheus-framework/src/modules/wallet/views/components/blocks/CryptoDeposit.vue.js +1 -1
- package/dist/prometheus-framework/src/modules/wallet/views/components/pages/Wallet.vue.cjs +3 -3
- package/dist/prometheus-framework/src/modules/wallet/views/components/pages/Wallet.vue.js +3 -3
- package/package.json +1 -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/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/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/globals/globals.client.js +15 -14
- package/src/modules/governance/controllers/factories/initiatives.controller.js +94 -0
- package/src/modules/governance/controllers/factories/tasks.controller.js +94 -0
- package/src/modules/governance/controllers/factories/votes.controller.js +68 -0
- package/src/modules/governance/controllers/factories/votings.controller.js +112 -0
- package/src/modules/governance/controllers/routes/initiatives.routes.js +13 -0
- package/src/modules/governance/controllers/routes/tasks.routes.js +13 -0
- package/src/modules/governance/controllers/routes/votes.routes.js +11 -0
- package/src/modules/governance/controllers/routes/votings.routes.js +14 -0
- package/src/modules/governance/models/initiative.model.js +25 -0
- package/src/modules/governance/models/task.model.js +21 -0
- package/src/modules/governance/models/vote.model.js +20 -0
- package/src/modules/governance/models/voting.model.js +22 -0
- package/src/modules/governance/views/components/blocks/CardInitiativeItem.vue +18 -0
- package/src/modules/governance/views/components/blocks/CardTaskItem.vue +19 -0
- package/src/modules/governance/views/components/blocks/CardVotingItem.vue +18 -0
- package/src/modules/governance/views/components/pages/Initiative.vue +22 -0
- package/src/modules/governance/views/components/pages/InitiativeCreate.vue +24 -0
- package/src/modules/governance/views/components/pages/Initiatives.vue +19 -0
- package/src/modules/governance/views/components/pages/Task.vue +23 -0
- package/src/modules/governance/views/components/pages/TaskCreate.vue +25 -0
- package/src/modules/governance/views/components/pages/Tasks.vue +19 -0
- package/src/modules/governance/views/components/pages/Voting.vue +30 -0
- package/src/modules/governance/views/components/pages/VotingCreate.vue +25 -0
- package/src/modules/governance/views/components/pages/Votings.vue +19 -0
- package/src/modules/governance/views/components/partials/RewardDisplay.vue +19 -0
- package/src/modules/governance/views/components/partials/VoteDisplay.vue +21 -0
- package/src/modules/governance/views/components/partials/VotingResult.vue +21 -0
- package/src/modules/governance/views/components/sections/FormInitiativeDetails.vue +37 -0
- package/src/modules/governance/views/components/sections/FormTaskDetails.vue +41 -0
- package/src/modules/governance/views/components/sections/FormVotingDetails.vue +37 -0
- package/src/modules/governance/views/components/sections/VoteForm.vue +29 -0
- package/src/modules/governance/views/store/initiatives.js +102 -0
- package/src/modules/governance/views/store/tasks.js +104 -0
- package/src/modules/governance/views/store/votes.js +115 -0
- package/src/modules/governance/views/store/votings.js +81 -0
- 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/pages/views/store/pages.js +1 -3
- package/src/modules/{marketplace → products}/components/layouts/Marketplace.vue +19 -19
- package/src/modules/{marketplace → products}/components/pages/Catalog.vue +0 -2
- 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/MenuSection.vue +8 -9
- 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 +95 -27
- 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/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 -55
- 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 +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":"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"}
|
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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"}
|
@@ -3,10 +3,10 @@ Object.defineProperties(exports, { __esModule: { value: true }, [Symbol.toString
|
|
3
3
|
const vue = require("vue");
|
4
4
|
const vueRouter = require("vue-router");
|
5
5
|
const index = require("../../../../../../node_modules/@googlemaps/js-api-loader/dist/index.cjs");
|
6
|
-
const Button = require("../../../../components/Button/Button.
|
6
|
+
const Button = require("../../../../components/Button/Button.vue2.cjs");
|
7
7
|
const organizations = require("../../../organizations/store/organizations.cjs");
|
8
8
|
const globals = require("../../../globals/views/store/globals.cjs");
|
9
|
-
const marketplace = require("../../../
|
9
|
+
const marketplace = require("../../../products/store/marketplace.cjs");
|
10
10
|
;/* empty css */
|
11
11
|
const _pluginVue_exportHelper = require("../../../../../../_virtual/_plugin-vue_export-helper.cjs");
|
12
12
|
const _hoisted_1 = { class: "h-100 w-100 pos-relative" };
|
@@ -529,6 +529,6 @@ const _sfc_main = {
|
|
529
529
|
};
|
530
530
|
}
|
531
531
|
};
|
532
|
-
const Map = /* @__PURE__ */ _pluginVue_exportHelper.default(_sfc_main, [["__scopeId", "data-v-
|
532
|
+
const Map = /* @__PURE__ */ _pluginVue_exportHelper.default(_sfc_main, [["__scopeId", "data-v-fd0cdc10"]]);
|
533
533
|
exports.default = Map;
|
534
534
|
//# sourceMappingURL=Map.vue.cjs.map
|
@@ -1 +1 @@
|
|
1
|
-
{"version":3,"file":"Map.vue.cjs","sources":["../../../../../../../src/modules/spots/components/pages/Map.vue"],"sourcesContent":["<template>\n <div class=\"h-100 w-100 pos-relative\">\n <div class=\"w-100 pos-absolute z-index-2 pos-b-10 \">\n <Button \n :submit=\"searchInCurrentLocation\" \n class=\"mn-l-auto mn-r-auto bg-black t-white w-min-20 button\"\n >\n Search in This Location\n </Button>\n </div>\n\n <div id=\"map\" class=\"h-100 w-100 pos-relative o-hidden\">\n </div>\n </div>\n</template>\n\n<script setup>\nimport { onMounted, watch, ref } from 'vue';\nimport { useRoute, useRouter } from 'vue-router'\n\nimport { Loader as GMLoader } from \"@googlemaps/js-api-loader\";\n\nimport Button from '@pf/src/components/Button/Button.vue'\n\nimport { state, actions } from '@pf/src/modules/organizations/store/organizations'\n\nimport * as globals from '@pf/src/modules/globals/views/store/globals';\nimport * as marketplace from '@pf/src/modules/marketplace/store/marketplace';\n\nconst router = useRouter();\nconst route = useRoute();\n\nconst props = defineProps({\n localPosition: Object,\n location: {\n type: Object,\n default: () => ({ lat: 15.8700, lng: 100.9925 })\n },\n address: {\n type: String,\n default: null\n },\n apiKey: String,\n locale: {\n type: String,\n default: 'en'\n }\n})\n\nlet map = ref(null);\nlet markers = ref([]);\n\nlet skip = ref(0);\nlet limit = ref(50);\n\nlet currentMapCenter = ref({lat: 0, lng: 0});\nlet currentMapZoom = ref(null);\n\nasync function getCountry() {\n try {\n const response = await fetch('https://ip2c.org/s');\n const result = await response.text();\n\n if (!result || result[0] !== '1') {\n throw new Error('Unable to fetch the country');\n }\n\n // Разделение строки и извлечение кода страны\n const parts = result.split(';');\n if (parts.length < 4) {\n throw new Error('Invalid response format');\n }\n\n console.log(parts[3])\n\n return parts[3]; // Возвращает двухбуквенный код страны\n } catch (error) {\n console.error(error);\n throw error;\n }\n}\n\n\nonMounted(async () => {\n let lat = parseFloat(route.query.lat || globals.state.position?.location?.lat);\n let lng = parseFloat(route.query.lng || globals.state.position?.location?.lng);\n\n let zoomLevel;\n\n // Определите уровень зума в зависимости от доступной информации\n if (route.params.location || globals.state.position?.location) {\n zoomLevel = 15;\n } else if (route.params.country || globals.state.position?.country) {\n zoomLevel = 9;\n } else if (route.params.state || globals.state.position?.state) {\n zoomLevel = 6;\n } else if (route.params.city || globals.state.position?.city) {\n zoomLevel = 14;\n } else {\n zoomLevel = 2;\n }\n\n const loader = new GMLoader({\n apiKey: props.apiKey,\n version: \"weekly\",\n libraries: [\"places\"],\n language: 'en'\n });\n\n loader.load().then(async () => {\n\n // Если координаты не заданы, попробуйте их получить\n if (!lat || !lng) {\n let country\n\n const geocoder = new google.maps.Geocoder();\n\n try {\n country = await getCountry();\n } catch {\n country = 'Thailand' \n console.log(error)\n }\n\n try {\n const results = await geocoder.geocode({ 'address': country })\n\n console.log(results);\n\n if (results) {\n lat = results.results[0].geometry.location.lat();\n lng = results.results[0].geometry.location.lng();\n zoomLevel = 6;\n } else {\n console.error('No results found for the country code.');\n }\n } catch (error) {\n console.error('Error getting coordinates from country code:', error);\n }\n }\n \n // If there's no lat/lng in the query, try to use country/state/city to get the lat/lng\n if (!lat && !lng && (route.params.country || route.params.state || route.params.city)) {\n const geocoder = new google.maps.Geocoder();\n\n const address = [\n route.params.city,\n route.params.state,\n route.params.country\n ].filter(Boolean).join(', ');\n\n try {\n const results = await geocoder.geocode({ address });\n\n if (results[0]) {\n lat = results[0].geometry.location.lat();\n lng = results[0].geometry.location.lng();\n }\n\n } catch (error) {\n console.error('Error getting coordinates:', error);\n }\n }\n\n\n skip.value += limit.value;\n\n const params = {\n // country: route.params.country,\n // state: route.params.state,\n // city: route.params.city,\n // categories: route.query.categories,\n // prices: route.query.prices,\n // delivery: route.query.delivery,\n country: route.params.country,\n state: route.params.state,\n city: route.params.city,\n categories: route.query.categories,\n prices: route.query.prices,\n delivery: route.query.delivery,\n sortParam: route.query.sortParam || marketplace.state.sort.param,\n sortOrder: route.query.sortOrder || marketplace.state.sort.order,\n location: {coordinates: [lng,lat] },\n locationRadius: 1000,\n limit: 500,\n };\n\n console.log(params)\n\n const data = await actions.read(params);\n\n state.all = [...state.all, ...data];\n\n map.value = new google.maps.Map(document.getElementById('map'), {\n mapTypeControl: false,\n fullscreenControl: false,\n styles: [\n {\n \"elementType\": \"geometry\",\n \"stylers\": [\n {\n \"color\": \"#212121\"\n }\n ]\n },\n {\n \"elementType\": \"labels.icon\",\n \"stylers\": [\n {\n \"visibility\": \"off\"\n }\n ]\n },\n {\n \"elementType\": \"labels.text.fill\",\n \"stylers\": [\n {\n \"color\": \"#757575\"\n }\n ]\n },\n {\n \"elementType\": \"labels.text.stroke\",\n \"stylers\": [\n {\n \"color\": \"#212121\"\n }\n ]\n },\n {\n \"featureType\": \"administrative\",\n \"elementType\": \"geometry\",\n \"stylers\": [\n {\n \"color\": \"#757575\"\n },\n {\n \"visibility\": \"off\"\n }\n ]\n },\n {\n \"featureType\": \"administrative.country\",\n \"elementType\": \"labels.text.fill\",\n \"stylers\": [\n {\n \"color\": \"#9e9e9e\"\n }\n ]\n },\n {\n \"featureType\": \"administrative.land_parcel\",\n \"stylers\": [\n {\n \"visibility\": \"off\"\n }\n ]\n },\n {\n \"featureType\": \"administrative.locality\",\n \"elementType\": \"labels.text.fill\",\n \"stylers\": [\n {\n \"color\": \"#bdbdbd\"\n }\n ]\n },\n {\n \"featureType\": \"administrative.neighborhood\",\n \"stylers\": [\n // {\n // \"visibility\": \"off\"\n // }\n ]\n },\n {\n \"featureType\": \"poi\",\n \"stylers\": [\n {\n \"visibility\": \"off\"\n }\n ]\n },\n {\n \"featureType\": \"poi\",\n \"elementType\": \"labels.text.fill\",\n \"stylers\": [\n {\n \"color\": \"#757575\"\n }\n ]\n },\n {\n \"featureType\": \"poi.park\",\n \"elementType\": \"geometry\",\n \"stylers\": [\n {\n \"color\": \"#181818\"\n }\n ]\n },\n {\n \"featureType\": \"poi.park\",\n \"elementType\": \"labels.text.fill\",\n \"stylers\": [\n {\n \"color\": \"#616161\"\n }\n ]\n },\n {\n \"featureType\": \"poi.park\",\n \"elementType\": \"labels.text.stroke\",\n \"stylers\": [\n {\n \"color\": \"#1b1b1b\"\n }\n ]\n },\n {\n \"featureType\": \"road\",\n \"elementType\": \"geometry.fill\",\n \"stylers\": [\n {\n \"color\": \"#2c2c2c\"\n }\n ]\n },\n {\n \"featureType\": \"road\",\n \"elementType\": \"labels\",\n \"stylers\": [\n {\n \"visibility\": \"off\"\n }\n ]\n },\n {\n \"featureType\": \"road\",\n \"elementType\": \"labels.icon\",\n \"stylers\": [\n {\n \"visibility\": \"off\"\n }\n ]\n },\n {\n \"featureType\": \"road\",\n \"elementType\": \"labels.text.fill\",\n \"stylers\": [\n {\n \"color\": \"#8a8a8a\"\n }\n ]\n },\n {\n \"featureType\": \"road.arterial\",\n \"elementType\": \"geometry\",\n \"stylers\": [\n {\n \"color\": \"#373737\"\n }\n ]\n },\n {\n \"featureType\": \"road.arterial\",\n \"elementType\": \"labels\",\n \"stylers\": [\n ]\n },\n {\n \"featureType\": \"road.highway\",\n \"elementType\": \"geometry\",\n \"stylers\": [\n {\n \"color\": \"#3c3c3c\"\n }\n ]\n },\n {\n \"featureType\": \"road.highway\",\n \"elementType\": \"labels\",\n \"stylers\": [\n {\n \"visibility\": \"off\"\n }\n ]\n },\n {\n \"featureType\": \"road.highway.controlled_access\",\n \"elementType\": \"geometry\",\n \"stylers\": [\n {\n \"color\": \"#4e4e4e\"\n }\n ]\n },\n {\n \"featureType\": \"road.local\",\n \"stylers\": [\n ]\n },\n {\n \"featureType\": \"road.local\",\n \"elementType\": \"labels.text.fill\",\n \"stylers\": [\n {\n \"color\": \"#616161\"\n }\n ]\n },\n {\n \"featureType\": \"transit\",\n \"stylers\": [\n {\n \"visibility\": \"off\"\n }\n ]\n },\n {\n \"featureType\": \"transit\",\n \"elementType\": \"labels.text.fill\",\n \"stylers\": [\n {\n \"color\": \"#757575\"\n }\n ]\n },\n {\n \"featureType\": \"water\",\n \"elementType\": \"geometry\",\n \"stylers\": [\n {\n \"color\": \"#000000\"\n }\n ]\n },\n {\n \"featureType\": \"water\",\n \"elementType\": \"labels.text\",\n \"stylers\": [\n {\n \"visibility\": \"off\"\n }\n ]\n },\n {\n \"featureType\": \"water\",\n \"elementType\": \"labels.text.fill\",\n \"stylers\": [\n {\n \"color\": \"#3d3d3d\"\n }\n ]\n }\n ],\n center: { lat, lng },\n zoom: parseInt(route.query.zoom || zoomLevel || '12')\n });\n\n \n\n for (let marker of markers.value) {\n marker.setMap(null);\n }\n\n markers.value = [];\n\n // Add new markers\n markers.value = data.map(org => {\n // Get the first spot's location\n let location = org.spots[0]?.location;\n\n if (location && location.type === 'Point') {\n let [lng, lat] = location.coordinates; // Note that coordinates are in [lng, lat] format\n \n let markerIcon = '/marker_2.png'; // Default marker icon\n\n if (org.products && org.products.length === 0) {\n markerIcon = '/marker.png'; // If there are no products, set a different icon\n }\n \n const marker = new google.maps.Marker({\n position: { lng, lat },\n map: map.value,\n icon: {\n url: markerIcon, // URL to the icon\n scaledSize: new google.maps.Size(32, 48), // icon dimensions\n origin: new google.maps.Point(0,0), // coordinate origin for this icon\n anchor: new google.maps.Point(16, 48) // point on the icon that corresponds to the geographic location of the marker\n }\n });\n\n // Add click listener to the marker\n marker.addListener('click', () => {\n router.push({name: 'Organization', params: {_id: org._id}});\n });\n\n return marker;\n }\n return null;\n }).filter(marker => marker !== null); // Remove null markers\n\n google.maps.event.addListener(map.value, 'center_changed', () => {\n let center = map.value.getCenter();\n currentMapCenter.value = {\n lat: center.lat(),\n lng: center.lng()\n };\n });\n\n google.maps.event.addListener(map.value, 'zoom_changed', () => {\n currentMapZoom.value = map.value.getZoom();\n });\n\n })\n\n});\n\nconst searchInCurrentLocation = async () => {\n // Use currentMapCenter for the location\n const params = {\n country: route.params.country,\n state: route.params.state,\n city: route.params.city,\n categories: route.query.categories,\n prices: route.query.prices,\n delivery: route.query.delivery,\n sortParam: route.query.sortParam || marketplace.state.sort.param,\n sortOrder: route.query.sortOrder || marketplace.state.sort.order,\n locationRadius: 8000/currentMapZoom.value,\n limit: 100,\n location: {\n type: \"Point\",\n coordinates: [currentMapCenter.value.lng, currentMapCenter.value.lat]\n }\n };\n\n console.log([currentMapCenter.value.lng, currentMapCenter.value.lat])\n\n try {\n const data = await actions.read(params);\n // Remove old markers\n for (let marker of markers.value) {\n marker.setMap(null);\n }\n markers.value = [];\n\n // Add new markers\n markers.value = data.map(org => {\n let location = org.spots[0]?.location;\n if (location && location.type === 'Point') {\n let [lng, lat] = location.coordinates; // Note that coordinates are in [lng, lat] format\n let markerIcon = org.products && org.products.length > 0 ? '/marker_2.png' : '/marker.png';\n\n const marker = new google.maps.Marker({\n position: { lng, lat },\n map: map.value,\n icon: {\n url: markerIcon, // URL to the icon\n scaledSize: new google.maps.Size(32, 48), // icon dimensions\n origin: new google.maps.Point(0,0), // coordinate origin for this icon\n anchor: new google.maps.Point(16, 48) // point on the icon that corresponds to the geographic location of the marker\n }\n });\n\n // Add click listener to the marker\n marker.addListener('click', () => {\n router.push({ name: 'Organization', params: { _id: org._id } });\n });\n\n return marker;\n }\n return null;\n }).filter(marker => marker !== null); // Remove null markers\n } catch (error) {\n console.error('Error fetching organizations:', error);\n }\n};\n\n\n\n</script>\n\n<style scoped lang=\"scss\">\n #map {\n &:focus {\n outline: none;\n }\n }\n</style>\n"],"names":["useRouter","useRoute","ref","error","onMounted","globals.state","GMLoader","marketplace.state","actions","state","_a","lng","lat"],"mappings":"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"}
|
1
|
+
{"version":3,"file":"Map.vue.cjs","sources":["../../../../../../../src/modules/spots/components/pages/Map.vue"],"sourcesContent":["<template>\n <div class=\"h-100 w-100 pos-relative\">\n <div class=\"w-100 pos-absolute z-index-2 pos-b-10 \">\n <Button \n :submit=\"searchInCurrentLocation\" \n class=\"mn-l-auto mn-r-auto bg-black t-white w-min-20 button\"\n >\n Search in This Location\n </Button>\n </div>\n\n <div id=\"map\" class=\"h-100 w-100 pos-relative o-hidden\">\n </div>\n </div>\n</template>\n\n<script setup>\nimport { onMounted, watch, ref } from 'vue';\nimport { useRoute, useRouter } from 'vue-router'\n\nimport { Loader as GMLoader } from \"@googlemaps/js-api-loader\";\n\nimport Button from '@pf/src/components/Button/Button.vue'\n\nimport { state, actions } from '@pf/src/modules/organizations/store/organizations'\n\nimport * as globals from '@pf/src/modules/globals/views/store/globals';\nimport * as marketplace from '@pf/src/modules/products/store/marketplace';\n\nconst router = useRouter();\nconst route = useRoute();\n\nconst props = defineProps({\n localPosition: Object,\n location: {\n type: Object,\n default: () => ({ lat: 15.8700, lng: 100.9925 })\n },\n address: {\n type: String,\n default: null\n },\n apiKey: String,\n locale: {\n type: String,\n default: 'en'\n }\n})\n\nlet map = ref(null);\nlet markers = ref([]);\n\nlet skip = ref(0);\nlet limit = ref(50);\n\nlet currentMapCenter = ref({lat: 0, lng: 0});\nlet currentMapZoom = ref(null);\n\nasync function getCountry() {\n try {\n const response = await fetch('https://ip2c.org/s');\n const result = await response.text();\n\n if (!result || result[0] !== '1') {\n throw new Error('Unable to fetch the country');\n }\n\n // Разделение строки и извлечение кода страны\n const parts = result.split(';');\n if (parts.length < 4) {\n throw new Error('Invalid response format');\n }\n\n console.log(parts[3])\n\n return parts[3]; // Возвращает двухбуквенный код страны\n } catch (error) {\n console.error(error);\n throw error;\n }\n}\n\n\nonMounted(async () => {\n let lat = parseFloat(route.query.lat || globals.state.position?.location?.lat);\n let lng = parseFloat(route.query.lng || globals.state.position?.location?.lng);\n\n let zoomLevel;\n\n // Определите уровень зума в зависимости от доступной информации\n if (route.params.location || globals.state.position?.location) {\n zoomLevel = 15;\n } else if (route.params.country || globals.state.position?.country) {\n zoomLevel = 9;\n } else if (route.params.state || globals.state.position?.state) {\n zoomLevel = 6;\n } else if (route.params.city || globals.state.position?.city) {\n zoomLevel = 14;\n } else {\n zoomLevel = 2;\n }\n\n const loader = new GMLoader({\n apiKey: props.apiKey,\n version: \"weekly\",\n libraries: [\"places\"],\n language: 'en'\n });\n\n loader.load().then(async () => {\n\n // Если координаты не заданы, попробуйте их получить\n if (!lat || !lng) {\n let country\n\n const geocoder = new google.maps.Geocoder();\n\n try {\n country = await getCountry();\n } catch {\n country = 'Thailand' \n console.log(error)\n }\n\n try {\n const results = await geocoder.geocode({ 'address': country })\n\n console.log(results);\n\n if (results) {\n lat = results.results[0].geometry.location.lat();\n lng = results.results[0].geometry.location.lng();\n zoomLevel = 6;\n } else {\n console.error('No results found for the country code.');\n }\n } catch (error) {\n console.error('Error getting coordinates from country code:', error);\n }\n }\n \n // If there's no lat/lng in the query, try to use country/state/city to get the lat/lng\n if (!lat && !lng && (route.params.country || route.params.state || route.params.city)) {\n const geocoder = new google.maps.Geocoder();\n\n const address = [\n route.params.city,\n route.params.state,\n route.params.country\n ].filter(Boolean).join(', ');\n\n try {\n const results = await geocoder.geocode({ address });\n\n if (results[0]) {\n lat = results[0].geometry.location.lat();\n lng = results[0].geometry.location.lng();\n }\n\n } catch (error) {\n console.error('Error getting coordinates:', error);\n }\n }\n\n\n skip.value += limit.value;\n\n const params = {\n // country: route.params.country,\n // state: route.params.state,\n // city: route.params.city,\n // categories: route.query.categories,\n // prices: route.query.prices,\n // delivery: route.query.delivery,\n country: route.params.country,\n state: route.params.state,\n city: route.params.city,\n categories: route.query.categories,\n prices: route.query.prices,\n delivery: route.query.delivery,\n sortParam: route.query.sortParam || marketplace.state.sort.param,\n sortOrder: route.query.sortOrder || marketplace.state.sort.order,\n location: {coordinates: [lng,lat] },\n locationRadius: 1000,\n limit: 500,\n };\n\n console.log(params)\n\n const data = await actions.read(params);\n\n state.all = [...state.all, ...data];\n\n map.value = new google.maps.Map(document.getElementById('map'), {\n mapTypeControl: false,\n fullscreenControl: false,\n styles: [\n {\n \"elementType\": \"geometry\",\n \"stylers\": [\n {\n \"color\": \"#212121\"\n }\n ]\n },\n {\n \"elementType\": \"labels.icon\",\n \"stylers\": [\n {\n \"visibility\": \"off\"\n }\n ]\n },\n {\n \"elementType\": \"labels.text.fill\",\n \"stylers\": [\n {\n \"color\": \"#757575\"\n }\n ]\n },\n {\n \"elementType\": \"labels.text.stroke\",\n \"stylers\": [\n {\n \"color\": \"#212121\"\n }\n ]\n },\n {\n \"featureType\": \"administrative\",\n \"elementType\": \"geometry\",\n \"stylers\": [\n {\n \"color\": \"#757575\"\n },\n {\n \"visibility\": \"off\"\n }\n ]\n },\n {\n \"featureType\": \"administrative.country\",\n \"elementType\": \"labels.text.fill\",\n \"stylers\": [\n {\n \"color\": \"#9e9e9e\"\n }\n ]\n },\n {\n \"featureType\": \"administrative.land_parcel\",\n \"stylers\": [\n {\n \"visibility\": \"off\"\n }\n ]\n },\n {\n \"featureType\": \"administrative.locality\",\n \"elementType\": \"labels.text.fill\",\n \"stylers\": [\n {\n \"color\": \"#bdbdbd\"\n }\n ]\n },\n {\n \"featureType\": \"administrative.neighborhood\",\n \"stylers\": [\n // {\n // \"visibility\": \"off\"\n // }\n ]\n },\n {\n \"featureType\": \"poi\",\n \"stylers\": [\n {\n \"visibility\": \"off\"\n }\n ]\n },\n {\n \"featureType\": \"poi\",\n \"elementType\": \"labels.text.fill\",\n \"stylers\": [\n {\n \"color\": \"#757575\"\n }\n ]\n },\n {\n \"featureType\": \"poi.park\",\n \"elementType\": \"geometry\",\n \"stylers\": [\n {\n \"color\": \"#181818\"\n }\n ]\n },\n {\n \"featureType\": \"poi.park\",\n \"elementType\": \"labels.text.fill\",\n \"stylers\": [\n {\n \"color\": \"#616161\"\n }\n ]\n },\n {\n \"featureType\": \"poi.park\",\n \"elementType\": \"labels.text.stroke\",\n \"stylers\": [\n {\n \"color\": \"#1b1b1b\"\n }\n ]\n },\n {\n \"featureType\": \"road\",\n \"elementType\": \"geometry.fill\",\n \"stylers\": [\n {\n \"color\": \"#2c2c2c\"\n }\n ]\n },\n {\n \"featureType\": \"road\",\n \"elementType\": \"labels\",\n \"stylers\": [\n {\n \"visibility\": \"off\"\n }\n ]\n },\n {\n \"featureType\": \"road\",\n \"elementType\": \"labels.icon\",\n \"stylers\": [\n {\n \"visibility\": \"off\"\n }\n ]\n },\n {\n \"featureType\": \"road\",\n \"elementType\": \"labels.text.fill\",\n \"stylers\": [\n {\n \"color\": \"#8a8a8a\"\n }\n ]\n },\n {\n \"featureType\": \"road.arterial\",\n \"elementType\": \"geometry\",\n \"stylers\": [\n {\n \"color\": \"#373737\"\n }\n ]\n },\n {\n \"featureType\": \"road.arterial\",\n \"elementType\": \"labels\",\n \"stylers\": [\n ]\n },\n {\n \"featureType\": \"road.highway\",\n \"elementType\": \"geometry\",\n \"stylers\": [\n {\n \"color\": \"#3c3c3c\"\n }\n ]\n },\n {\n \"featureType\": \"road.highway\",\n \"elementType\": \"labels\",\n \"stylers\": [\n {\n \"visibility\": \"off\"\n }\n ]\n },\n {\n \"featureType\": \"road.highway.controlled_access\",\n \"elementType\": \"geometry\",\n \"stylers\": [\n {\n \"color\": \"#4e4e4e\"\n }\n ]\n },\n {\n \"featureType\": \"road.local\",\n \"stylers\": [\n ]\n },\n {\n \"featureType\": \"road.local\",\n \"elementType\": \"labels.text.fill\",\n \"stylers\": [\n {\n \"color\": \"#616161\"\n }\n ]\n },\n {\n \"featureType\": \"transit\",\n \"stylers\": [\n {\n \"visibility\": \"off\"\n }\n ]\n },\n {\n \"featureType\": \"transit\",\n \"elementType\": \"labels.text.fill\",\n \"stylers\": [\n {\n \"color\": \"#757575\"\n }\n ]\n },\n {\n \"featureType\": \"water\",\n \"elementType\": \"geometry\",\n \"stylers\": [\n {\n \"color\": \"#000000\"\n }\n ]\n },\n {\n \"featureType\": \"water\",\n \"elementType\": \"labels.text\",\n \"stylers\": [\n {\n \"visibility\": \"off\"\n }\n ]\n },\n {\n \"featureType\": \"water\",\n \"elementType\": \"labels.text.fill\",\n \"stylers\": [\n {\n \"color\": \"#3d3d3d\"\n }\n ]\n }\n ],\n center: { lat, lng },\n zoom: parseInt(route.query.zoom || zoomLevel || '12')\n });\n\n \n\n for (let marker of markers.value) {\n marker.setMap(null);\n }\n\n markers.value = [];\n\n // Add new markers\n markers.value = data.map(org => {\n // Get the first spot's location\n let location = org.spots[0]?.location;\n\n if (location && location.type === 'Point') {\n let [lng, lat] = location.coordinates; // Note that coordinates are in [lng, lat] format\n \n let markerIcon = '/marker_2.png'; // Default marker icon\n\n if (org.products && org.products.length === 0) {\n markerIcon = '/marker.png'; // If there are no products, set a different icon\n }\n \n const marker = new google.maps.Marker({\n position: { lng, lat },\n map: map.value,\n icon: {\n url: markerIcon, // URL to the icon\n scaledSize: new google.maps.Size(32, 48), // icon dimensions\n origin: new google.maps.Point(0,0), // coordinate origin for this icon\n anchor: new google.maps.Point(16, 48) // point on the icon that corresponds to the geographic location of the marker\n }\n });\n\n // Add click listener to the marker\n marker.addListener('click', () => {\n router.push({name: 'Organization', params: {_id: org._id}});\n });\n\n return marker;\n }\n return null;\n }).filter(marker => marker !== null); // Remove null markers\n\n google.maps.event.addListener(map.value, 'center_changed', () => {\n let center = map.value.getCenter();\n currentMapCenter.value = {\n lat: center.lat(),\n lng: center.lng()\n };\n });\n\n google.maps.event.addListener(map.value, 'zoom_changed', () => {\n currentMapZoom.value = map.value.getZoom();\n });\n\n })\n\n});\n\nconst searchInCurrentLocation = async () => {\n // Use currentMapCenter for the location\n const params = {\n country: route.params.country,\n state: route.params.state,\n city: route.params.city,\n categories: route.query.categories,\n prices: route.query.prices,\n delivery: route.query.delivery,\n sortParam: route.query.sortParam || marketplace.state.sort.param,\n sortOrder: route.query.sortOrder || marketplace.state.sort.order,\n locationRadius: 8000/currentMapZoom.value,\n limit: 100,\n location: {\n type: \"Point\",\n coordinates: [currentMapCenter.value.lng, currentMapCenter.value.lat]\n }\n };\n\n console.log([currentMapCenter.value.lng, currentMapCenter.value.lat])\n\n try {\n const data = await actions.read(params);\n // Remove old markers\n for (let marker of markers.value) {\n marker.setMap(null);\n }\n markers.value = [];\n\n // Add new markers\n markers.value = data.map(org => {\n let location = org.spots[0]?.location;\n if (location && location.type === 'Point') {\n let [lng, lat] = location.coordinates; // Note that coordinates are in [lng, lat] format\n let markerIcon = org.products && org.products.length > 0 ? '/marker_2.png' : '/marker.png';\n\n const marker = new google.maps.Marker({\n position: { lng, lat },\n map: map.value,\n icon: {\n url: markerIcon, // URL to the icon\n scaledSize: new google.maps.Size(32, 48), // icon dimensions\n origin: new google.maps.Point(0,0), // coordinate origin for this icon\n anchor: new google.maps.Point(16, 48) // point on the icon that corresponds to the geographic location of the marker\n }\n });\n\n // Add click listener to the marker\n marker.addListener('click', () => {\n router.push({ name: 'Organization', params: { _id: org._id } });\n });\n\n return marker;\n }\n return null;\n }).filter(marker => marker !== null); // Remove null markers\n } catch (error) {\n console.error('Error fetching organizations:', error);\n }\n};\n\n\n\n</script>\n\n<style scoped lang=\"scss\">\n #map {\n &:focus {\n outline: none;\n }\n }\n</style>\n"],"names":["useRouter","useRoute","ref","error","onMounted","globals.state","GMLoader","marketplace.state","actions","state","_a","lng","lat"],"mappings":"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"}
|
@@ -1,10 +1,10 @@
|
|
1
1
|
import { ref, onMounted, openBlock, createElementBlock, createElementVNode, createVNode, withCtx, createTextVNode } from "vue";
|
2
2
|
import { useRouter, useRoute } from "vue-router";
|
3
3
|
import { Loader } from "../../../../../../node_modules/@googlemaps/js-api-loader/dist/index.js";
|
4
|
-
import _sfc_main$1 from "../../../../components/Button/Button.
|
4
|
+
import _sfc_main$1 from "../../../../components/Button/Button.vue2.js";
|
5
5
|
import { actions, state as state$2 } from "../../../organizations/store/organizations.js";
|
6
6
|
import { state } from "../../../globals/views/store/globals.js";
|
7
|
-
import { state as state$1 } from "../../../
|
7
|
+
import { state as state$1 } from "../../../products/store/marketplace.js";
|
8
8
|
/* empty css */
|
9
9
|
import _export_sfc from "../../../../../../_virtual/_plugin-vue_export-helper.js";
|
10
10
|
const _hoisted_1 = { class: "h-100 w-100 pos-relative" };
|
@@ -527,7 +527,7 @@ const _sfc_main = {
|
|
527
527
|
};
|
528
528
|
}
|
529
529
|
};
|
530
|
-
const Map = /* @__PURE__ */ _export_sfc(_sfc_main, [["__scopeId", "data-v-
|
530
|
+
const Map = /* @__PURE__ */ _export_sfc(_sfc_main, [["__scopeId", "data-v-fd0cdc10"]]);
|
531
531
|
export {
|
532
532
|
Map as default
|
533
533
|
};
|
@@ -1 +1 @@
|
|
1
|
-
{"version":3,"file":"Map.vue.js","sources":["../../../../../../../src/modules/spots/components/pages/Map.vue"],"sourcesContent":["<template>\n <div class=\"h-100 w-100 pos-relative\">\n <div class=\"w-100 pos-absolute z-index-2 pos-b-10 \">\n <Button \n :submit=\"searchInCurrentLocation\" \n class=\"mn-l-auto mn-r-auto bg-black t-white w-min-20 button\"\n >\n Search in This Location\n </Button>\n </div>\n\n <div id=\"map\" class=\"h-100 w-100 pos-relative o-hidden\">\n </div>\n </div>\n</template>\n\n<script setup>\nimport { onMounted, watch, ref } from 'vue';\nimport { useRoute, useRouter } from 'vue-router'\n\nimport { Loader as GMLoader } from \"@googlemaps/js-api-loader\";\n\nimport Button from '@pf/src/components/Button/Button.vue'\n\nimport { state, actions } from '@pf/src/modules/organizations/store/organizations'\n\nimport * as globals from '@pf/src/modules/globals/views/store/globals';\nimport * as marketplace from '@pf/src/modules/marketplace/store/marketplace';\n\nconst router = useRouter();\nconst route = useRoute();\n\nconst props = defineProps({\n localPosition: Object,\n location: {\n type: Object,\n default: () => ({ lat: 15.8700, lng: 100.9925 })\n },\n address: {\n type: String,\n default: null\n },\n apiKey: String,\n locale: {\n type: String,\n default: 'en'\n }\n})\n\nlet map = ref(null);\nlet markers = ref([]);\n\nlet skip = ref(0);\nlet limit = ref(50);\n\nlet currentMapCenter = ref({lat: 0, lng: 0});\nlet currentMapZoom = ref(null);\n\nasync function getCountry() {\n try {\n const response = await fetch('https://ip2c.org/s');\n const result = await response.text();\n\n if (!result || result[0] !== '1') {\n throw new Error('Unable to fetch the country');\n }\n\n // Разделение строки и извлечение кода страны\n const parts = result.split(';');\n if (parts.length < 4) {\n throw new Error('Invalid response format');\n }\n\n console.log(parts[3])\n\n return parts[3]; // Возвращает двухбуквенный код страны\n } catch (error) {\n console.error(error);\n throw error;\n }\n}\n\n\nonMounted(async () => {\n let lat = parseFloat(route.query.lat || globals.state.position?.location?.lat);\n let lng = parseFloat(route.query.lng || globals.state.position?.location?.lng);\n\n let zoomLevel;\n\n // Определите уровень зума в зависимости от доступной информации\n if (route.params.location || globals.state.position?.location) {\n zoomLevel = 15;\n } else if (route.params.country || globals.state.position?.country) {\n zoomLevel = 9;\n } else if (route.params.state || globals.state.position?.state) {\n zoomLevel = 6;\n } else if (route.params.city || globals.state.position?.city) {\n zoomLevel = 14;\n } else {\n zoomLevel = 2;\n }\n\n const loader = new GMLoader({\n apiKey: props.apiKey,\n version: \"weekly\",\n libraries: [\"places\"],\n language: 'en'\n });\n\n loader.load().then(async () => {\n\n // Если координаты не заданы, попробуйте их получить\n if (!lat || !lng) {\n let country\n\n const geocoder = new google.maps.Geocoder();\n\n try {\n country = await getCountry();\n } catch {\n country = 'Thailand' \n console.log(error)\n }\n\n try {\n const results = await geocoder.geocode({ 'address': country })\n\n console.log(results);\n\n if (results) {\n lat = results.results[0].geometry.location.lat();\n lng = results.results[0].geometry.location.lng();\n zoomLevel = 6;\n } else {\n console.error('No results found for the country code.');\n }\n } catch (error) {\n console.error('Error getting coordinates from country code:', error);\n }\n }\n \n // If there's no lat/lng in the query, try to use country/state/city to get the lat/lng\n if (!lat && !lng && (route.params.country || route.params.state || route.params.city)) {\n const geocoder = new google.maps.Geocoder();\n\n const address = [\n route.params.city,\n route.params.state,\n route.params.country\n ].filter(Boolean).join(', ');\n\n try {\n const results = await geocoder.geocode({ address });\n\n if (results[0]) {\n lat = results[0].geometry.location.lat();\n lng = results[0].geometry.location.lng();\n }\n\n } catch (error) {\n console.error('Error getting coordinates:', error);\n }\n }\n\n\n skip.value += limit.value;\n\n const params = {\n // country: route.params.country,\n // state: route.params.state,\n // city: route.params.city,\n // categories: route.query.categories,\n // prices: route.query.prices,\n // delivery: route.query.delivery,\n country: route.params.country,\n state: route.params.state,\n city: route.params.city,\n categories: route.query.categories,\n prices: route.query.prices,\n delivery: route.query.delivery,\n sortParam: route.query.sortParam || marketplace.state.sort.param,\n sortOrder: route.query.sortOrder || marketplace.state.sort.order,\n location: {coordinates: [lng,lat] },\n locationRadius: 1000,\n limit: 500,\n };\n\n console.log(params)\n\n const data = await actions.read(params);\n\n state.all = [...state.all, ...data];\n\n map.value = new google.maps.Map(document.getElementById('map'), {\n mapTypeControl: false,\n fullscreenControl: false,\n styles: [\n {\n \"elementType\": \"geometry\",\n \"stylers\": [\n {\n \"color\": \"#212121\"\n }\n ]\n },\n {\n \"elementType\": \"labels.icon\",\n \"stylers\": [\n {\n \"visibility\": \"off\"\n }\n ]\n },\n {\n \"elementType\": \"labels.text.fill\",\n \"stylers\": [\n {\n \"color\": \"#757575\"\n }\n ]\n },\n {\n \"elementType\": \"labels.text.stroke\",\n \"stylers\": [\n {\n \"color\": \"#212121\"\n }\n ]\n },\n {\n \"featureType\": \"administrative\",\n \"elementType\": \"geometry\",\n \"stylers\": [\n {\n \"color\": \"#757575\"\n },\n {\n \"visibility\": \"off\"\n }\n ]\n },\n {\n \"featureType\": \"administrative.country\",\n \"elementType\": \"labels.text.fill\",\n \"stylers\": [\n {\n \"color\": \"#9e9e9e\"\n }\n ]\n },\n {\n \"featureType\": \"administrative.land_parcel\",\n \"stylers\": [\n {\n \"visibility\": \"off\"\n }\n ]\n },\n {\n \"featureType\": \"administrative.locality\",\n \"elementType\": \"labels.text.fill\",\n \"stylers\": [\n {\n \"color\": \"#bdbdbd\"\n }\n ]\n },\n {\n \"featureType\": \"administrative.neighborhood\",\n \"stylers\": [\n // {\n // \"visibility\": \"off\"\n // }\n ]\n },\n {\n \"featureType\": \"poi\",\n \"stylers\": [\n {\n \"visibility\": \"off\"\n }\n ]\n },\n {\n \"featureType\": \"poi\",\n \"elementType\": \"labels.text.fill\",\n \"stylers\": [\n {\n \"color\": \"#757575\"\n }\n ]\n },\n {\n \"featureType\": \"poi.park\",\n \"elementType\": \"geometry\",\n \"stylers\": [\n {\n \"color\": \"#181818\"\n }\n ]\n },\n {\n \"featureType\": \"poi.park\",\n \"elementType\": \"labels.text.fill\",\n \"stylers\": [\n {\n \"color\": \"#616161\"\n }\n ]\n },\n {\n \"featureType\": \"poi.park\",\n \"elementType\": \"labels.text.stroke\",\n \"stylers\": [\n {\n \"color\": \"#1b1b1b\"\n }\n ]\n },\n {\n \"featureType\": \"road\",\n \"elementType\": \"geometry.fill\",\n \"stylers\": [\n {\n \"color\": \"#2c2c2c\"\n }\n ]\n },\n {\n \"featureType\": \"road\",\n \"elementType\": \"labels\",\n \"stylers\": [\n {\n \"visibility\": \"off\"\n }\n ]\n },\n {\n \"featureType\": \"road\",\n \"elementType\": \"labels.icon\",\n \"stylers\": [\n {\n \"visibility\": \"off\"\n }\n ]\n },\n {\n \"featureType\": \"road\",\n \"elementType\": \"labels.text.fill\",\n \"stylers\": [\n {\n \"color\": \"#8a8a8a\"\n }\n ]\n },\n {\n \"featureType\": \"road.arterial\",\n \"elementType\": \"geometry\",\n \"stylers\": [\n {\n \"color\": \"#373737\"\n }\n ]\n },\n {\n \"featureType\": \"road.arterial\",\n \"elementType\": \"labels\",\n \"stylers\": [\n ]\n },\n {\n \"featureType\": \"road.highway\",\n \"elementType\": \"geometry\",\n \"stylers\": [\n {\n \"color\": \"#3c3c3c\"\n }\n ]\n },\n {\n \"featureType\": \"road.highway\",\n \"elementType\": \"labels\",\n \"stylers\": [\n {\n \"visibility\": \"off\"\n }\n ]\n },\n {\n \"featureType\": \"road.highway.controlled_access\",\n \"elementType\": \"geometry\",\n \"stylers\": [\n {\n \"color\": \"#4e4e4e\"\n }\n ]\n },\n {\n \"featureType\": \"road.local\",\n \"stylers\": [\n ]\n },\n {\n \"featureType\": \"road.local\",\n \"elementType\": \"labels.text.fill\",\n \"stylers\": [\n {\n \"color\": \"#616161\"\n }\n ]\n },\n {\n \"featureType\": \"transit\",\n \"stylers\": [\n {\n \"visibility\": \"off\"\n }\n ]\n },\n {\n \"featureType\": \"transit\",\n \"elementType\": \"labels.text.fill\",\n \"stylers\": [\n {\n \"color\": \"#757575\"\n }\n ]\n },\n {\n \"featureType\": \"water\",\n \"elementType\": \"geometry\",\n \"stylers\": [\n {\n \"color\": \"#000000\"\n }\n ]\n },\n {\n \"featureType\": \"water\",\n \"elementType\": \"labels.text\",\n \"stylers\": [\n {\n \"visibility\": \"off\"\n }\n ]\n },\n {\n \"featureType\": \"water\",\n \"elementType\": \"labels.text.fill\",\n \"stylers\": [\n {\n \"color\": \"#3d3d3d\"\n }\n ]\n }\n ],\n center: { lat, lng },\n zoom: parseInt(route.query.zoom || zoomLevel || '12')\n });\n\n \n\n for (let marker of markers.value) {\n marker.setMap(null);\n }\n\n markers.value = [];\n\n // Add new markers\n markers.value = data.map(org => {\n // Get the first spot's location\n let location = org.spots[0]?.location;\n\n if (location && location.type === 'Point') {\n let [lng, lat] = location.coordinates; // Note that coordinates are in [lng, lat] format\n \n let markerIcon = '/marker_2.png'; // Default marker icon\n\n if (org.products && org.products.length === 0) {\n markerIcon = '/marker.png'; // If there are no products, set a different icon\n }\n \n const marker = new google.maps.Marker({\n position: { lng, lat },\n map: map.value,\n icon: {\n url: markerIcon, // URL to the icon\n scaledSize: new google.maps.Size(32, 48), // icon dimensions\n origin: new google.maps.Point(0,0), // coordinate origin for this icon\n anchor: new google.maps.Point(16, 48) // point on the icon that corresponds to the geographic location of the marker\n }\n });\n\n // Add click listener to the marker\n marker.addListener('click', () => {\n router.push({name: 'Organization', params: {_id: org._id}});\n });\n\n return marker;\n }\n return null;\n }).filter(marker => marker !== null); // Remove null markers\n\n google.maps.event.addListener(map.value, 'center_changed', () => {\n let center = map.value.getCenter();\n currentMapCenter.value = {\n lat: center.lat(),\n lng: center.lng()\n };\n });\n\n google.maps.event.addListener(map.value, 'zoom_changed', () => {\n currentMapZoom.value = map.value.getZoom();\n });\n\n })\n\n});\n\nconst searchInCurrentLocation = async () => {\n // Use currentMapCenter for the location\n const params = {\n country: route.params.country,\n state: route.params.state,\n city: route.params.city,\n categories: route.query.categories,\n prices: route.query.prices,\n delivery: route.query.delivery,\n sortParam: route.query.sortParam || marketplace.state.sort.param,\n sortOrder: route.query.sortOrder || marketplace.state.sort.order,\n locationRadius: 8000/currentMapZoom.value,\n limit: 100,\n location: {\n type: \"Point\",\n coordinates: [currentMapCenter.value.lng, currentMapCenter.value.lat]\n }\n };\n\n console.log([currentMapCenter.value.lng, currentMapCenter.value.lat])\n\n try {\n const data = await actions.read(params);\n // Remove old markers\n for (let marker of markers.value) {\n marker.setMap(null);\n }\n markers.value = [];\n\n // Add new markers\n markers.value = data.map(org => {\n let location = org.spots[0]?.location;\n if (location && location.type === 'Point') {\n let [lng, lat] = location.coordinates; // Note that coordinates are in [lng, lat] format\n let markerIcon = org.products && org.products.length > 0 ? '/marker_2.png' : '/marker.png';\n\n const marker = new google.maps.Marker({\n position: { lng, lat },\n map: map.value,\n icon: {\n url: markerIcon, // URL to the icon\n scaledSize: new google.maps.Size(32, 48), // icon dimensions\n origin: new google.maps.Point(0,0), // coordinate origin for this icon\n anchor: new google.maps.Point(16, 48) // point on the icon that corresponds to the geographic location of the marker\n }\n });\n\n // Add click listener to the marker\n marker.addListener('click', () => {\n router.push({ name: 'Organization', params: { _id: org._id } });\n });\n\n return marker;\n }\n return null;\n }).filter(marker => marker !== null); // Remove null markers\n } catch (error) {\n console.error('Error fetching organizations:', error);\n }\n};\n\n\n\n</script>\n\n<style scoped lang=\"scss\">\n #map {\n &:focus {\n outline: none;\n }\n }\n</style>\n"],"names":["error","globals.state","GMLoader","marketplace.state","state","_a","lng","lat"],"mappings":"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"}
|
1
|
+
{"version":3,"file":"Map.vue.js","sources":["../../../../../../../src/modules/spots/components/pages/Map.vue"],"sourcesContent":["<template>\n <div class=\"h-100 w-100 pos-relative\">\n <div class=\"w-100 pos-absolute z-index-2 pos-b-10 \">\n <Button \n :submit=\"searchInCurrentLocation\" \n class=\"mn-l-auto mn-r-auto bg-black t-white w-min-20 button\"\n >\n Search in This Location\n </Button>\n </div>\n\n <div id=\"map\" class=\"h-100 w-100 pos-relative o-hidden\">\n </div>\n </div>\n</template>\n\n<script setup>\nimport { onMounted, watch, ref } from 'vue';\nimport { useRoute, useRouter } from 'vue-router'\n\nimport { Loader as GMLoader } from \"@googlemaps/js-api-loader\";\n\nimport Button from '@pf/src/components/Button/Button.vue'\n\nimport { state, actions } from '@pf/src/modules/organizations/store/organizations'\n\nimport * as globals from '@pf/src/modules/globals/views/store/globals';\nimport * as marketplace from '@pf/src/modules/products/store/marketplace';\n\nconst router = useRouter();\nconst route = useRoute();\n\nconst props = defineProps({\n localPosition: Object,\n location: {\n type: Object,\n default: () => ({ lat: 15.8700, lng: 100.9925 })\n },\n address: {\n type: String,\n default: null\n },\n apiKey: String,\n locale: {\n type: String,\n default: 'en'\n }\n})\n\nlet map = ref(null);\nlet markers = ref([]);\n\nlet skip = ref(0);\nlet limit = ref(50);\n\nlet currentMapCenter = ref({lat: 0, lng: 0});\nlet currentMapZoom = ref(null);\n\nasync function getCountry() {\n try {\n const response = await fetch('https://ip2c.org/s');\n const result = await response.text();\n\n if (!result || result[0] !== '1') {\n throw new Error('Unable to fetch the country');\n }\n\n // Разделение строки и извлечение кода страны\n const parts = result.split(';');\n if (parts.length < 4) {\n throw new Error('Invalid response format');\n }\n\n console.log(parts[3])\n\n return parts[3]; // Возвращает двухбуквенный код страны\n } catch (error) {\n console.error(error);\n throw error;\n }\n}\n\n\nonMounted(async () => {\n let lat = parseFloat(route.query.lat || globals.state.position?.location?.lat);\n let lng = parseFloat(route.query.lng || globals.state.position?.location?.lng);\n\n let zoomLevel;\n\n // Определите уровень зума в зависимости от доступной информации\n if (route.params.location || globals.state.position?.location) {\n zoomLevel = 15;\n } else if (route.params.country || globals.state.position?.country) {\n zoomLevel = 9;\n } else if (route.params.state || globals.state.position?.state) {\n zoomLevel = 6;\n } else if (route.params.city || globals.state.position?.city) {\n zoomLevel = 14;\n } else {\n zoomLevel = 2;\n }\n\n const loader = new GMLoader({\n apiKey: props.apiKey,\n version: \"weekly\",\n libraries: [\"places\"],\n language: 'en'\n });\n\n loader.load().then(async () => {\n\n // Если координаты не заданы, попробуйте их получить\n if (!lat || !lng) {\n let country\n\n const geocoder = new google.maps.Geocoder();\n\n try {\n country = await getCountry();\n } catch {\n country = 'Thailand' \n console.log(error)\n }\n\n try {\n const results = await geocoder.geocode({ 'address': country })\n\n console.log(results);\n\n if (results) {\n lat = results.results[0].geometry.location.lat();\n lng = results.results[0].geometry.location.lng();\n zoomLevel = 6;\n } else {\n console.error('No results found for the country code.');\n }\n } catch (error) {\n console.error('Error getting coordinates from country code:', error);\n }\n }\n \n // If there's no lat/lng in the query, try to use country/state/city to get the lat/lng\n if (!lat && !lng && (route.params.country || route.params.state || route.params.city)) {\n const geocoder = new google.maps.Geocoder();\n\n const address = [\n route.params.city,\n route.params.state,\n route.params.country\n ].filter(Boolean).join(', ');\n\n try {\n const results = await geocoder.geocode({ address });\n\n if (results[0]) {\n lat = results[0].geometry.location.lat();\n lng = results[0].geometry.location.lng();\n }\n\n } catch (error) {\n console.error('Error getting coordinates:', error);\n }\n }\n\n\n skip.value += limit.value;\n\n const params = {\n // country: route.params.country,\n // state: route.params.state,\n // city: route.params.city,\n // categories: route.query.categories,\n // prices: route.query.prices,\n // delivery: route.query.delivery,\n country: route.params.country,\n state: route.params.state,\n city: route.params.city,\n categories: route.query.categories,\n prices: route.query.prices,\n delivery: route.query.delivery,\n sortParam: route.query.sortParam || marketplace.state.sort.param,\n sortOrder: route.query.sortOrder || marketplace.state.sort.order,\n location: {coordinates: [lng,lat] },\n locationRadius: 1000,\n limit: 500,\n };\n\n console.log(params)\n\n const data = await actions.read(params);\n\n state.all = [...state.all, ...data];\n\n map.value = new google.maps.Map(document.getElementById('map'), {\n mapTypeControl: false,\n fullscreenControl: false,\n styles: [\n {\n \"elementType\": \"geometry\",\n \"stylers\": [\n {\n \"color\": \"#212121\"\n }\n ]\n },\n {\n \"elementType\": \"labels.icon\",\n \"stylers\": [\n {\n \"visibility\": \"off\"\n }\n ]\n },\n {\n \"elementType\": \"labels.text.fill\",\n \"stylers\": [\n {\n \"color\": \"#757575\"\n }\n ]\n },\n {\n \"elementType\": \"labels.text.stroke\",\n \"stylers\": [\n {\n \"color\": \"#212121\"\n }\n ]\n },\n {\n \"featureType\": \"administrative\",\n \"elementType\": \"geometry\",\n \"stylers\": [\n {\n \"color\": \"#757575\"\n },\n {\n \"visibility\": \"off\"\n }\n ]\n },\n {\n \"featureType\": \"administrative.country\",\n \"elementType\": \"labels.text.fill\",\n \"stylers\": [\n {\n \"color\": \"#9e9e9e\"\n }\n ]\n },\n {\n \"featureType\": \"administrative.land_parcel\",\n \"stylers\": [\n {\n \"visibility\": \"off\"\n }\n ]\n },\n {\n \"featureType\": \"administrative.locality\",\n \"elementType\": \"labels.text.fill\",\n \"stylers\": [\n {\n \"color\": \"#bdbdbd\"\n }\n ]\n },\n {\n \"featureType\": \"administrative.neighborhood\",\n \"stylers\": [\n // {\n // \"visibility\": \"off\"\n // }\n ]\n },\n {\n \"featureType\": \"poi\",\n \"stylers\": [\n {\n \"visibility\": \"off\"\n }\n ]\n },\n {\n \"featureType\": \"poi\",\n \"elementType\": \"labels.text.fill\",\n \"stylers\": [\n {\n \"color\": \"#757575\"\n }\n ]\n },\n {\n \"featureType\": \"poi.park\",\n \"elementType\": \"geometry\",\n \"stylers\": [\n {\n \"color\": \"#181818\"\n }\n ]\n },\n {\n \"featureType\": \"poi.park\",\n \"elementType\": \"labels.text.fill\",\n \"stylers\": [\n {\n \"color\": \"#616161\"\n }\n ]\n },\n {\n \"featureType\": \"poi.park\",\n \"elementType\": \"labels.text.stroke\",\n \"stylers\": [\n {\n \"color\": \"#1b1b1b\"\n }\n ]\n },\n {\n \"featureType\": \"road\",\n \"elementType\": \"geometry.fill\",\n \"stylers\": [\n {\n \"color\": \"#2c2c2c\"\n }\n ]\n },\n {\n \"featureType\": \"road\",\n \"elementType\": \"labels\",\n \"stylers\": [\n {\n \"visibility\": \"off\"\n }\n ]\n },\n {\n \"featureType\": \"road\",\n \"elementType\": \"labels.icon\",\n \"stylers\": [\n {\n \"visibility\": \"off\"\n }\n ]\n },\n {\n \"featureType\": \"road\",\n \"elementType\": \"labels.text.fill\",\n \"stylers\": [\n {\n \"color\": \"#8a8a8a\"\n }\n ]\n },\n {\n \"featureType\": \"road.arterial\",\n \"elementType\": \"geometry\",\n \"stylers\": [\n {\n \"color\": \"#373737\"\n }\n ]\n },\n {\n \"featureType\": \"road.arterial\",\n \"elementType\": \"labels\",\n \"stylers\": [\n ]\n },\n {\n \"featureType\": \"road.highway\",\n \"elementType\": \"geometry\",\n \"stylers\": [\n {\n \"color\": \"#3c3c3c\"\n }\n ]\n },\n {\n \"featureType\": \"road.highway\",\n \"elementType\": \"labels\",\n \"stylers\": [\n {\n \"visibility\": \"off\"\n }\n ]\n },\n {\n \"featureType\": \"road.highway.controlled_access\",\n \"elementType\": \"geometry\",\n \"stylers\": [\n {\n \"color\": \"#4e4e4e\"\n }\n ]\n },\n {\n \"featureType\": \"road.local\",\n \"stylers\": [\n ]\n },\n {\n \"featureType\": \"road.local\",\n \"elementType\": \"labels.text.fill\",\n \"stylers\": [\n {\n \"color\": \"#616161\"\n }\n ]\n },\n {\n \"featureType\": \"transit\",\n \"stylers\": [\n {\n \"visibility\": \"off\"\n }\n ]\n },\n {\n \"featureType\": \"transit\",\n \"elementType\": \"labels.text.fill\",\n \"stylers\": [\n {\n \"color\": \"#757575\"\n }\n ]\n },\n {\n \"featureType\": \"water\",\n \"elementType\": \"geometry\",\n \"stylers\": [\n {\n \"color\": \"#000000\"\n }\n ]\n },\n {\n \"featureType\": \"water\",\n \"elementType\": \"labels.text\",\n \"stylers\": [\n {\n \"visibility\": \"off\"\n }\n ]\n },\n {\n \"featureType\": \"water\",\n \"elementType\": \"labels.text.fill\",\n \"stylers\": [\n {\n \"color\": \"#3d3d3d\"\n }\n ]\n }\n ],\n center: { lat, lng },\n zoom: parseInt(route.query.zoom || zoomLevel || '12')\n });\n\n \n\n for (let marker of markers.value) {\n marker.setMap(null);\n }\n\n markers.value = [];\n\n // Add new markers\n markers.value = data.map(org => {\n // Get the first spot's location\n let location = org.spots[0]?.location;\n\n if (location && location.type === 'Point') {\n let [lng, lat] = location.coordinates; // Note that coordinates are in [lng, lat] format\n \n let markerIcon = '/marker_2.png'; // Default marker icon\n\n if (org.products && org.products.length === 0) {\n markerIcon = '/marker.png'; // If there are no products, set a different icon\n }\n \n const marker = new google.maps.Marker({\n position: { lng, lat },\n map: map.value,\n icon: {\n url: markerIcon, // URL to the icon\n scaledSize: new google.maps.Size(32, 48), // icon dimensions\n origin: new google.maps.Point(0,0), // coordinate origin for this icon\n anchor: new google.maps.Point(16, 48) // point on the icon that corresponds to the geographic location of the marker\n }\n });\n\n // Add click listener to the marker\n marker.addListener('click', () => {\n router.push({name: 'Organization', params: {_id: org._id}});\n });\n\n return marker;\n }\n return null;\n }).filter(marker => marker !== null); // Remove null markers\n\n google.maps.event.addListener(map.value, 'center_changed', () => {\n let center = map.value.getCenter();\n currentMapCenter.value = {\n lat: center.lat(),\n lng: center.lng()\n };\n });\n\n google.maps.event.addListener(map.value, 'zoom_changed', () => {\n currentMapZoom.value = map.value.getZoom();\n });\n\n })\n\n});\n\nconst searchInCurrentLocation = async () => {\n // Use currentMapCenter for the location\n const params = {\n country: route.params.country,\n state: route.params.state,\n city: route.params.city,\n categories: route.query.categories,\n prices: route.query.prices,\n delivery: route.query.delivery,\n sortParam: route.query.sortParam || marketplace.state.sort.param,\n sortOrder: route.query.sortOrder || marketplace.state.sort.order,\n locationRadius: 8000/currentMapZoom.value,\n limit: 100,\n location: {\n type: \"Point\",\n coordinates: [currentMapCenter.value.lng, currentMapCenter.value.lat]\n }\n };\n\n console.log([currentMapCenter.value.lng, currentMapCenter.value.lat])\n\n try {\n const data = await actions.read(params);\n // Remove old markers\n for (let marker of markers.value) {\n marker.setMap(null);\n }\n markers.value = [];\n\n // Add new markers\n markers.value = data.map(org => {\n let location = org.spots[0]?.location;\n if (location && location.type === 'Point') {\n let [lng, lat] = location.coordinates; // Note that coordinates are in [lng, lat] format\n let markerIcon = org.products && org.products.length > 0 ? '/marker_2.png' : '/marker.png';\n\n const marker = new google.maps.Marker({\n position: { lng, lat },\n map: map.value,\n icon: {\n url: markerIcon, // URL to the icon\n scaledSize: new google.maps.Size(32, 48), // icon dimensions\n origin: new google.maps.Point(0,0), // coordinate origin for this icon\n anchor: new google.maps.Point(16, 48) // point on the icon that corresponds to the geographic location of the marker\n }\n });\n\n // Add click listener to the marker\n marker.addListener('click', () => {\n router.push({ name: 'Organization', params: { _id: org._id } });\n });\n\n return marker;\n }\n return null;\n }).filter(marker => marker !== null); // Remove null markers\n } catch (error) {\n console.error('Error fetching organizations:', error);\n }\n};\n\n\n\n</script>\n\n<style scoped lang=\"scss\">\n #map {\n &:focus {\n outline: none;\n }\n }\n</style>\n"],"names":["error","globals.state","GMLoader","marketplace.state","state","_a","lng","lat"],"mappings":"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"}
|
@@ -4,7 +4,7 @@ const vue = require("vue");
|
|
4
4
|
const Spoiler = require("../../../../components/Spoiler/Spoiler.vue2.cjs");
|
5
5
|
const Map = require("../../../../components/Map/Map.vue.cjs");
|
6
6
|
const SpotSub = require("../blocks/SpotSub.vue.cjs");
|
7
|
-
const CardUser = require("../../../
|
7
|
+
const CardUser = require("../../../auth/views/components/blocks/CardUser.vue.cjs");
|
8
8
|
;/* empty css */
|
9
9
|
const _pluginVue_exportHelper = require("../../../../../../_virtual/_plugin-vue_export-helper.cjs");
|
10
10
|
const _hoisted_1 = { class: "radius-big o-hidden cols-2-1_3" };
|
@@ -134,6 +134,6 @@ const _sfc_main = {
|
|
134
134
|
};
|
135
135
|
}
|
136
136
|
};
|
137
|
-
const Spot = /* @__PURE__ */ _pluginVue_exportHelper.default(_sfc_main, [["__scopeId", "data-v-
|
137
|
+
const Spot = /* @__PURE__ */ _pluginVue_exportHelper.default(_sfc_main, [["__scopeId", "data-v-83b42a48"]]);
|
138
138
|
exports.default = Spot;
|
139
139
|
//# sourceMappingURL=Spot.vue.cjs.map
|
@@ -1 +1 @@
|
|
1
|
-
{"version":3,"file":"Spot.vue.cjs","sources":["../../../../../../../src/modules/spots/components/pages/Spot.vue"],"sourcesContent":["<template>\n <div class=\"radius-big o-hidden cols-2-1_3\">\n <Map :location=\"{lat: spot.location.coordinates[1] ,lng: spot.location.coordinates[0]}\" class=\"\"/>\n\n <div class=\"pd-medium w-100\">\n <svg @click=\"$router.push(`/app/organization/${props.organization._id}/spots/${spot._id}/edit`)\" class=\"i-regular pos-absolute pos-r-0 pos-t-0 t-transp\" width=\"652\" height=\"652\" viewBox=\"0 0 652 652\" fill=\"none\" xmlns=\"http://www.w3.org/2000/svg\">\n <path d=\"M515.693 9.52082C510.095 3.91669 502.49 0.765625 494.563 0.765625C486.635 0.765625 479.036 3.91669 473.432 9.52082L48.7255 434.307C44.8244 438.214 42.0848 443.125 40.8088 448.496L0.939444 615.069C-1.47202 625.168 1.528 635.788 8.86652 643.132C16.2103 650.47 26.8305 653.47 36.9292 651.059L203.516 611.261H203.511C208.88 609.985 213.792 607.246 217.699 603.35L642.485 178.496C648.089 172.892 651.241 165.293 651.241 157.366C651.241 149.439 648.089 141.835 642.485 136.235L515.693 9.52082ZM113.76 453.708L388.307 179.161L472.828 263.682L198.281 538.229L113.76 453.708ZM87.1041 511.5L140.416 564.812L70.3014 581.614L87.1041 511.5ZM515.091 221.793L430.195 136.897L494.184 72.9075L579.08 157.429L515.091 221.793Z\" fill=\"rgb(var(--black))\"/>\n </svg>\n \n <h3 \n @click=\"$router.push(`/app/organization/${props.organization._id}/spots/${spot._id}`)\"\n class=\"mn-b-small w-100\"\n v-html=\"spot.profile.name\"\n />\n\n <p \n @click=\"$router.push(`/app/organization/${props.organization._id}/spots/${spot._id}`)\"\n class=\"mn-b-small p-big w-100\"\n v-html=\"spot.address\"\n />\n\n \n \n <Spoiler \n class=\"\n radius-small \n o-hidden\n br-1px br-solid br-grey-transp-25 \n mn-b-thin\n \"\n >\n <template #header>\n <div class=\"pd-small flex-v-center flex-nowrap flex\">\n <h5 class=\"w-100\" >Contacts </h5>\n <p class=\"mn-r-small\">{{spot.members.length}} человек</p>\n <svg width=\"14\" height=\"9\" viewBox=\"0 0 14 9\" fill=\"none\" xmlns=\"http://www.w3.org/2000/svg\">\n <path fill-rule=\"evenodd\" clip-rule=\"evenodd\" d=\"M12.4697 0.469727L13.5304 1.53039L7.00006 8.06072L0.469727 1.53039L1.53039 0.469727L7.00006 5.9394L12.4697 0.469727Z\" fill=\"#8A8A8A\"/>\n </svg>\n\n </div>\n </template>\n <template #content>\n <ul>\n <li v-if=\"spot.members.length < 1\">В отделе еще нет участников</li>\n <User \n class=\"br-b br-solid br-grey-transp-25\" \n v-for=\"(member, index) in spot.members\" \n :key=\"index\" \n :user=\"member.user\" \n :position=\"member.position\" \n @click=\"$router.push(`/app/profile/${member.user._id}`)\" \n />\n </ul>\n </template>\n </Spoiler>\n\n <Spoiler \n class=\"\n radius-small \n o-hidden\n br-1px br-solid br-grey-transp-25 \n mn-b-thin\n \"\n >\n <template #header>\n <div class=\"pd-small flex-v-center flex-nowrap flex\">\n <h5 class=\"w-100\" >Working Hours </h5>\n <p class=\"mn-r-small\">{{spot.subspots ? spot.subspots.length : 0}} отделов</p>\n <svg width=\"14\" height=\"9\" viewBox=\"0 0 14 9\" fill=\"none\" xmlns=\"http://www.w3.org/2000/svg\">\n <path fill-rule=\"evenodd\" clip-rule=\"evenodd\" d=\"M12.4697 0.469727L13.5304 1.53039L7.00006 8.06072L0.469727 1.53039L1.53039 0.469727L7.00006 5.9394L12.4697 0.469727Z\" fill=\"#8A8A8A\"/>\n </svg>\n\n </div>\n </template>\n <template #content>\n <ul>\n <li v-if=\"spot.subspots.length < 1\">В отделе еще нет подотделов</li>\n <SpotSub v-for=\"(subspotsartment, index) in spot.subspots\" @click=\"$router.push(`/app/organization/spots/${subspotsartment._id}`)\" :key=\"index\" class=\"br-b br-solid br-grey-transp-25\" :spot=\"subspotsartment\" />\n </ul>\n </template>\n </Spoiler>\n\n </div>\n </div>\n</template>\n\n<script setup>\nimport { ref } from 'vue';\n\nimport Spoiler from '@pf/src/components/Spoiler/Spoiler.vue';\nimport Map from '@pf/src/components/Map/Map.vue';\n\n\nimport SpotSub from '@pf/src/modules/spots/components/blocks/SpotSub.vue';\nimport User from '@pf/src/modules/
|
1
|
+
{"version":3,"file":"Spot.vue.cjs","sources":["../../../../../../../src/modules/spots/components/pages/Spot.vue"],"sourcesContent":["<template>\n <div class=\"radius-big o-hidden cols-2-1_3\">\n <Map :location=\"{lat: spot.location.coordinates[1] ,lng: spot.location.coordinates[0]}\" class=\"\"/>\n\n <div class=\"pd-medium w-100\">\n <svg @click=\"$router.push(`/app/organization/${props.organization._id}/spots/${spot._id}/edit`)\" class=\"i-regular pos-absolute pos-r-0 pos-t-0 t-transp\" width=\"652\" height=\"652\" viewBox=\"0 0 652 652\" fill=\"none\" xmlns=\"http://www.w3.org/2000/svg\">\n <path d=\"M515.693 9.52082C510.095 3.91669 502.49 0.765625 494.563 0.765625C486.635 0.765625 479.036 3.91669 473.432 9.52082L48.7255 434.307C44.8244 438.214 42.0848 443.125 40.8088 448.496L0.939444 615.069C-1.47202 625.168 1.528 635.788 8.86652 643.132C16.2103 650.47 26.8305 653.47 36.9292 651.059L203.516 611.261H203.511C208.88 609.985 213.792 607.246 217.699 603.35L642.485 178.496C648.089 172.892 651.241 165.293 651.241 157.366C651.241 149.439 648.089 141.835 642.485 136.235L515.693 9.52082ZM113.76 453.708L388.307 179.161L472.828 263.682L198.281 538.229L113.76 453.708ZM87.1041 511.5L140.416 564.812L70.3014 581.614L87.1041 511.5ZM515.091 221.793L430.195 136.897L494.184 72.9075L579.08 157.429L515.091 221.793Z\" fill=\"rgb(var(--black))\"/>\n </svg>\n \n <h3 \n @click=\"$router.push(`/app/organization/${props.organization._id}/spots/${spot._id}`)\"\n class=\"mn-b-small w-100\"\n v-html=\"spot.profile.name\"\n />\n\n <p \n @click=\"$router.push(`/app/organization/${props.organization._id}/spots/${spot._id}`)\"\n class=\"mn-b-small p-big w-100\"\n v-html=\"spot.address\"\n />\n\n \n \n <Spoiler \n class=\"\n radius-small \n o-hidden\n br-1px br-solid br-grey-transp-25 \n mn-b-thin\n \"\n >\n <template #header>\n <div class=\"pd-small flex-v-center flex-nowrap flex\">\n <h5 class=\"w-100\" >Contacts </h5>\n <p class=\"mn-r-small\">{{spot.members.length}} человек</p>\n <svg width=\"14\" height=\"9\" viewBox=\"0 0 14 9\" fill=\"none\" xmlns=\"http://www.w3.org/2000/svg\">\n <path fill-rule=\"evenodd\" clip-rule=\"evenodd\" d=\"M12.4697 0.469727L13.5304 1.53039L7.00006 8.06072L0.469727 1.53039L1.53039 0.469727L7.00006 5.9394L12.4697 0.469727Z\" fill=\"#8A8A8A\"/>\n </svg>\n\n </div>\n </template>\n <template #content>\n <ul>\n <li v-if=\"spot.members.length < 1\">В отделе еще нет участников</li>\n <User \n class=\"br-b br-solid br-grey-transp-25\" \n v-for=\"(member, index) in spot.members\" \n :key=\"index\" \n :user=\"member.user\" \n :position=\"member.position\" \n @click=\"$router.push(`/app/profile/${member.user._id}`)\" \n />\n </ul>\n </template>\n </Spoiler>\n\n <Spoiler \n class=\"\n radius-small \n o-hidden\n br-1px br-solid br-grey-transp-25 \n mn-b-thin\n \"\n >\n <template #header>\n <div class=\"pd-small flex-v-center flex-nowrap flex\">\n <h5 class=\"w-100\" >Working Hours </h5>\n <p class=\"mn-r-small\">{{spot.subspots ? spot.subspots.length : 0}} отделов</p>\n <svg width=\"14\" height=\"9\" viewBox=\"0 0 14 9\" fill=\"none\" xmlns=\"http://www.w3.org/2000/svg\">\n <path fill-rule=\"evenodd\" clip-rule=\"evenodd\" d=\"M12.4697 0.469727L13.5304 1.53039L7.00006 8.06072L0.469727 1.53039L1.53039 0.469727L7.00006 5.9394L12.4697 0.469727Z\" fill=\"#8A8A8A\"/>\n </svg>\n\n </div>\n </template>\n <template #content>\n <ul>\n <li v-if=\"spot.subspots.length < 1\">В отделе еще нет подотделов</li>\n <SpotSub v-for=\"(subspotsartment, index) in spot.subspots\" @click=\"$router.push(`/app/organization/spots/${subspotsartment._id}`)\" :key=\"index\" class=\"br-b br-solid br-grey-transp-25\" :spot=\"subspotsartment\" />\n </ul>\n </template>\n </Spoiler>\n\n </div>\n </div>\n</template>\n\n<script setup>\nimport { ref } from 'vue';\n\nimport Spoiler from '@pf/src/components/Spoiler/Spoiler.vue';\nimport Map from '@pf/src/components/Map/Map.vue';\n\n\nimport SpotSub from '@pf/src/modules/spots/components/blocks/SpotSub.vue';\nimport User from '@pf/src/modules/auth/views/components/blocks/CardUser.vue';\n\nconst props = defineProps({\n spot: Object,\n organization: Object\n});\n</script>\n<style scoped>\n.subspotsartment {\n border: 1px solid rgba(0, 0, 0, 0.1);\n margin-top: 1rem;\n}\n</style>"],"names":[],"mappings":";;;;;;;;;;;;;;;;;;;;;;;;;;AAgGA,UAAM,QAAQ;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;"}
|
@@ -2,7 +2,7 @@ import { openBlock, createElementBlock, createVNode, createElementVNode, withCtx
|
|
2
2
|
import _sfc_main$1 from "../../../../components/Spoiler/Spoiler.vue2.js";
|
3
3
|
import Map from "../../../../components/Map/Map.vue.js";
|
4
4
|
import SpotSub from "../blocks/SpotSub.vue.js";
|
5
|
-
import _sfc_main$2 from "../../../
|
5
|
+
import _sfc_main$2 from "../../../auth/views/components/blocks/CardUser.vue.js";
|
6
6
|
/* empty css */
|
7
7
|
import _export_sfc from "../../../../../../_virtual/_plugin-vue_export-helper.js";
|
8
8
|
const _hoisted_1 = { class: "radius-big o-hidden cols-2-1_3" };
|
@@ -132,7 +132,7 @@ const _sfc_main = {
|
|
132
132
|
};
|
133
133
|
}
|
134
134
|
};
|
135
|
-
const Spot = /* @__PURE__ */ _export_sfc(_sfc_main, [["__scopeId", "data-v-
|
135
|
+
const Spot = /* @__PURE__ */ _export_sfc(_sfc_main, [["__scopeId", "data-v-83b42a48"]]);
|
136
136
|
export {
|
137
137
|
Spot as default
|
138
138
|
};
|
@@ -1 +1 @@
|
|
1
|
-
{"version":3,"file":"Spot.vue.js","sources":["../../../../../../../src/modules/spots/components/pages/Spot.vue"],"sourcesContent":["<template>\n <div class=\"radius-big o-hidden cols-2-1_3\">\n <Map :location=\"{lat: spot.location.coordinates[1] ,lng: spot.location.coordinates[0]}\" class=\"\"/>\n\n <div class=\"pd-medium w-100\">\n <svg @click=\"$router.push(`/app/organization/${props.organization._id}/spots/${spot._id}/edit`)\" class=\"i-regular pos-absolute pos-r-0 pos-t-0 t-transp\" width=\"652\" height=\"652\" viewBox=\"0 0 652 652\" fill=\"none\" xmlns=\"http://www.w3.org/2000/svg\">\n <path d=\"M515.693 9.52082C510.095 3.91669 502.49 0.765625 494.563 0.765625C486.635 0.765625 479.036 3.91669 473.432 9.52082L48.7255 434.307C44.8244 438.214 42.0848 443.125 40.8088 448.496L0.939444 615.069C-1.47202 625.168 1.528 635.788 8.86652 643.132C16.2103 650.47 26.8305 653.47 36.9292 651.059L203.516 611.261H203.511C208.88 609.985 213.792 607.246 217.699 603.35L642.485 178.496C648.089 172.892 651.241 165.293 651.241 157.366C651.241 149.439 648.089 141.835 642.485 136.235L515.693 9.52082ZM113.76 453.708L388.307 179.161L472.828 263.682L198.281 538.229L113.76 453.708ZM87.1041 511.5L140.416 564.812L70.3014 581.614L87.1041 511.5ZM515.091 221.793L430.195 136.897L494.184 72.9075L579.08 157.429L515.091 221.793Z\" fill=\"rgb(var(--black))\"/>\n </svg>\n \n <h3 \n @click=\"$router.push(`/app/organization/${props.organization._id}/spots/${spot._id}`)\"\n class=\"mn-b-small w-100\"\n v-html=\"spot.profile.name\"\n />\n\n <p \n @click=\"$router.push(`/app/organization/${props.organization._id}/spots/${spot._id}`)\"\n class=\"mn-b-small p-big w-100\"\n v-html=\"spot.address\"\n />\n\n \n \n <Spoiler \n class=\"\n radius-small \n o-hidden\n br-1px br-solid br-grey-transp-25 \n mn-b-thin\n \"\n >\n <template #header>\n <div class=\"pd-small flex-v-center flex-nowrap flex\">\n <h5 class=\"w-100\" >Contacts </h5>\n <p class=\"mn-r-small\">{{spot.members.length}} человек</p>\n <svg width=\"14\" height=\"9\" viewBox=\"0 0 14 9\" fill=\"none\" xmlns=\"http://www.w3.org/2000/svg\">\n <path fill-rule=\"evenodd\" clip-rule=\"evenodd\" d=\"M12.4697 0.469727L13.5304 1.53039L7.00006 8.06072L0.469727 1.53039L1.53039 0.469727L7.00006 5.9394L12.4697 0.469727Z\" fill=\"#8A8A8A\"/>\n </svg>\n\n </div>\n </template>\n <template #content>\n <ul>\n <li v-if=\"spot.members.length < 1\">В отделе еще нет участников</li>\n <User \n class=\"br-b br-solid br-grey-transp-25\" \n v-for=\"(member, index) in spot.members\" \n :key=\"index\" \n :user=\"member.user\" \n :position=\"member.position\" \n @click=\"$router.push(`/app/profile/${member.user._id}`)\" \n />\n </ul>\n </template>\n </Spoiler>\n\n <Spoiler \n class=\"\n radius-small \n o-hidden\n br-1px br-solid br-grey-transp-25 \n mn-b-thin\n \"\n >\n <template #header>\n <div class=\"pd-small flex-v-center flex-nowrap flex\">\n <h5 class=\"w-100\" >Working Hours </h5>\n <p class=\"mn-r-small\">{{spot.subspots ? spot.subspots.length : 0}} отделов</p>\n <svg width=\"14\" height=\"9\" viewBox=\"0 0 14 9\" fill=\"none\" xmlns=\"http://www.w3.org/2000/svg\">\n <path fill-rule=\"evenodd\" clip-rule=\"evenodd\" d=\"M12.4697 0.469727L13.5304 1.53039L7.00006 8.06072L0.469727 1.53039L1.53039 0.469727L7.00006 5.9394L12.4697 0.469727Z\" fill=\"#8A8A8A\"/>\n </svg>\n\n </div>\n </template>\n <template #content>\n <ul>\n <li v-if=\"spot.subspots.length < 1\">В отделе еще нет подотделов</li>\n <SpotSub v-for=\"(subspotsartment, index) in spot.subspots\" @click=\"$router.push(`/app/organization/spots/${subspotsartment._id}`)\" :key=\"index\" class=\"br-b br-solid br-grey-transp-25\" :spot=\"subspotsartment\" />\n </ul>\n </template>\n </Spoiler>\n\n </div>\n </div>\n</template>\n\n<script setup>\nimport { ref } from 'vue';\n\nimport Spoiler from '@pf/src/components/Spoiler/Spoiler.vue';\nimport Map from '@pf/src/components/Map/Map.vue';\n\n\nimport SpotSub from '@pf/src/modules/spots/components/blocks/SpotSub.vue';\nimport User from '@pf/src/modules/
|
1
|
+
{"version":3,"file":"Spot.vue.js","sources":["../../../../../../../src/modules/spots/components/pages/Spot.vue"],"sourcesContent":["<template>\n <div class=\"radius-big o-hidden cols-2-1_3\">\n <Map :location=\"{lat: spot.location.coordinates[1] ,lng: spot.location.coordinates[0]}\" class=\"\"/>\n\n <div class=\"pd-medium w-100\">\n <svg @click=\"$router.push(`/app/organization/${props.organization._id}/spots/${spot._id}/edit`)\" class=\"i-regular pos-absolute pos-r-0 pos-t-0 t-transp\" width=\"652\" height=\"652\" viewBox=\"0 0 652 652\" fill=\"none\" xmlns=\"http://www.w3.org/2000/svg\">\n <path d=\"M515.693 9.52082C510.095 3.91669 502.49 0.765625 494.563 0.765625C486.635 0.765625 479.036 3.91669 473.432 9.52082L48.7255 434.307C44.8244 438.214 42.0848 443.125 40.8088 448.496L0.939444 615.069C-1.47202 625.168 1.528 635.788 8.86652 643.132C16.2103 650.47 26.8305 653.47 36.9292 651.059L203.516 611.261H203.511C208.88 609.985 213.792 607.246 217.699 603.35L642.485 178.496C648.089 172.892 651.241 165.293 651.241 157.366C651.241 149.439 648.089 141.835 642.485 136.235L515.693 9.52082ZM113.76 453.708L388.307 179.161L472.828 263.682L198.281 538.229L113.76 453.708ZM87.1041 511.5L140.416 564.812L70.3014 581.614L87.1041 511.5ZM515.091 221.793L430.195 136.897L494.184 72.9075L579.08 157.429L515.091 221.793Z\" fill=\"rgb(var(--black))\"/>\n </svg>\n \n <h3 \n @click=\"$router.push(`/app/organization/${props.organization._id}/spots/${spot._id}`)\"\n class=\"mn-b-small w-100\"\n v-html=\"spot.profile.name\"\n />\n\n <p \n @click=\"$router.push(`/app/organization/${props.organization._id}/spots/${spot._id}`)\"\n class=\"mn-b-small p-big w-100\"\n v-html=\"spot.address\"\n />\n\n \n \n <Spoiler \n class=\"\n radius-small \n o-hidden\n br-1px br-solid br-grey-transp-25 \n mn-b-thin\n \"\n >\n <template #header>\n <div class=\"pd-small flex-v-center flex-nowrap flex\">\n <h5 class=\"w-100\" >Contacts </h5>\n <p class=\"mn-r-small\">{{spot.members.length}} человек</p>\n <svg width=\"14\" height=\"9\" viewBox=\"0 0 14 9\" fill=\"none\" xmlns=\"http://www.w3.org/2000/svg\">\n <path fill-rule=\"evenodd\" clip-rule=\"evenodd\" d=\"M12.4697 0.469727L13.5304 1.53039L7.00006 8.06072L0.469727 1.53039L1.53039 0.469727L7.00006 5.9394L12.4697 0.469727Z\" fill=\"#8A8A8A\"/>\n </svg>\n\n </div>\n </template>\n <template #content>\n <ul>\n <li v-if=\"spot.members.length < 1\">В отделе еще нет участников</li>\n <User \n class=\"br-b br-solid br-grey-transp-25\" \n v-for=\"(member, index) in spot.members\" \n :key=\"index\" \n :user=\"member.user\" \n :position=\"member.position\" \n @click=\"$router.push(`/app/profile/${member.user._id}`)\" \n />\n </ul>\n </template>\n </Spoiler>\n\n <Spoiler \n class=\"\n radius-small \n o-hidden\n br-1px br-solid br-grey-transp-25 \n mn-b-thin\n \"\n >\n <template #header>\n <div class=\"pd-small flex-v-center flex-nowrap flex\">\n <h5 class=\"w-100\" >Working Hours </h5>\n <p class=\"mn-r-small\">{{spot.subspots ? spot.subspots.length : 0}} отделов</p>\n <svg width=\"14\" height=\"9\" viewBox=\"0 0 14 9\" fill=\"none\" xmlns=\"http://www.w3.org/2000/svg\">\n <path fill-rule=\"evenodd\" clip-rule=\"evenodd\" d=\"M12.4697 0.469727L13.5304 1.53039L7.00006 8.06072L0.469727 1.53039L1.53039 0.469727L7.00006 5.9394L12.4697 0.469727Z\" fill=\"#8A8A8A\"/>\n </svg>\n\n </div>\n </template>\n <template #content>\n <ul>\n <li v-if=\"spot.subspots.length < 1\">В отделе еще нет подотделов</li>\n <SpotSub v-for=\"(subspotsartment, index) in spot.subspots\" @click=\"$router.push(`/app/organization/spots/${subspotsartment._id}`)\" :key=\"index\" class=\"br-b br-solid br-grey-transp-25\" :spot=\"subspotsartment\" />\n </ul>\n </template>\n </Spoiler>\n\n </div>\n </div>\n</template>\n\n<script setup>\nimport { ref } from 'vue';\n\nimport Spoiler from '@pf/src/components/Spoiler/Spoiler.vue';\nimport Map from '@pf/src/components/Map/Map.vue';\n\n\nimport SpotSub from '@pf/src/modules/spots/components/blocks/SpotSub.vue';\nimport User from '@pf/src/modules/auth/views/components/blocks/CardUser.vue';\n\nconst props = defineProps({\n spot: Object,\n organization: Object\n});\n</script>\n<style scoped>\n.subspotsartment {\n border: 1px solid rgba(0, 0, 0, 0.1);\n margin-top: 1rem;\n}\n</style>"],"names":[],"mappings":";;;;;;;;;;;;;;;;;;;;;;;;AAgGA,UAAM,QAAQ;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;"}
|
@@ -6,13 +6,13 @@ const Block = require("../../../../components/Block/Block.vue.cjs");
|
|
6
6
|
const UploadImage = require("../../../../components/UploadImage/UploadImage.vue.cjs");
|
7
7
|
;/* empty css */
|
8
8
|
const Field = require("../../../../components/Field/Field.vue2.cjs");
|
9
|
-
const Select = require("../../../../components/Select/Select.
|
9
|
+
const Select = require("../../../../components/Select/Select.vue2.cjs");
|
10
10
|
const Checkbox = require("../../../../components/Checkbox/Checkbox.vue.cjs");
|
11
11
|
const Address = require("../../../../components/Address/Address.vue2.cjs");
|
12
12
|
const LocationMarker = require("../../../../components/LocationMarker/LocationMarker.vue2.cjs");
|
13
|
-
const Button = require("../../../../components/Button/Button.
|
13
|
+
const Button = require("../../../../components/Button/Button.vue2.cjs");
|
14
14
|
require("vue-i18n");
|
15
|
-
;/* empty css
|
15
|
+
;/* empty css */
|
16
16
|
const spots = require("../../store/spots.cjs");
|
17
17
|
const _hoisted_1 = { class: "for-transition w-100 cols-1 pd-thin gap-thin" };
|
18
18
|
const _hoisted_2 = { class: "mn-r-auto" };
|
@@ -4,13 +4,13 @@ import _sfc_main$1 from "../../../../components/Block/Block.vue.js";
|
|
4
4
|
import _sfc_main$3 from "../../../../components/UploadImage/UploadImage.vue.js";
|
5
5
|
/* empty css */
|
6
6
|
import Field from "../../../../components/Field/Field.vue2.js";
|
7
|
-
import Select from "../../../../components/Select/Select.
|
7
|
+
import Select from "../../../../components/Select/Select.vue2.js";
|
8
8
|
import _sfc_main$4 from "../../../../components/Checkbox/Checkbox.vue.js";
|
9
9
|
import _sfc_main$5 from "../../../../components/Address/Address.vue2.js";
|
10
10
|
import _sfc_main$6 from "../../../../components/LocationMarker/LocationMarker.vue2.js";
|
11
|
-
import _sfc_main$2 from "../../../../components/Button/Button.
|
11
|
+
import _sfc_main$2 from "../../../../components/Button/Button.vue2.js";
|
12
12
|
import "vue-i18n";
|
13
|
-
/* empty css
|
13
|
+
/* empty css */
|
14
14
|
import { actions, state } from "../../store/spots.js";
|
15
15
|
const _hoisted_1 = { class: "for-transition w-100 cols-1 pd-thin gap-thin" };
|
16
16
|
const _hoisted_2 = { class: "mn-r-auto" };
|
@@ -2,8 +2,8 @@
|
|
2
2
|
Object.defineProperties(exports, { __esModule: { value: true }, [Symbol.toStringTag]: { value: "Module" } });
|
3
3
|
const vue = require("vue");
|
4
4
|
;/* empty css */
|
5
|
-
;/* empty css
|
6
|
-
;/* empty css
|
5
|
+
;/* empty css */
|
6
|
+
;/* empty css */
|
7
7
|
const Dropdown = require("../../../../components/Dropdown/Dropdown.vue.cjs");
|
8
8
|
const Completion = require("../../../../components/Completion/Completion.vue.cjs");
|
9
9
|
const Menu = require("../../../../components/Menu/Menu.vue.cjs");
|
@@ -1,7 +1,7 @@
|
|
1
1
|
import { ref, onMounted, openBlock, createElementBlock, unref, createBlock, createCommentVNode, createElementVNode, withCtx, createVNode, toDisplayString, Fragment, renderList, normalizeClass } from "vue";
|
2
2
|
/* empty css */
|
3
|
-
/* empty css
|
4
|
-
/* empty css
|
3
|
+
/* empty css */
|
4
|
+
/* empty css */
|
5
5
|
import _sfc_main$2 from "../../../../components/Dropdown/Dropdown.vue.js";
|
6
6
|
import _sfc_main$1 from "../../../../components/Completion/Completion.vue.js";
|
7
7
|
import _sfc_main$7 from "../../../../components/Menu/Menu.vue.js";
|
@@ -4,7 +4,7 @@ const vue = require("vue");
|
|
4
4
|
;/* empty css */
|
5
5
|
const Field = require("../../../../components/Field/Field.vue2.cjs");
|
6
6
|
const Checkbox = require("../../../../components/Checkbox/Checkbox.vue.cjs");
|
7
|
-
const Button = require("../../../../components/Button/Button.
|
7
|
+
const Button = require("../../../../components/Button/Button.vue2.cjs");
|
8
8
|
const UploadImage = require("../../../../components/UploadImage/UploadImage.vue.cjs");
|
9
9
|
const ProfileCompletion = require("../sections/ProfileCompletion.vue.cjs");
|
10
10
|
const vueRouter = require("vue-router");
|
@@ -2,7 +2,7 @@ import { ref, onMounted, openBlock, createElementBlock, unref, createBlock, crea
|
|
2
2
|
/* empty css */
|
3
3
|
import Field from "../../../../components/Field/Field.vue2.js";
|
4
4
|
import _sfc_main$3 from "../../../../components/Checkbox/Checkbox.vue.js";
|
5
|
-
import _sfc_main$4 from "../../../../components/Button/Button.
|
5
|
+
import _sfc_main$4 from "../../../../components/Button/Button.vue2.js";
|
6
6
|
import _sfc_main$2 from "../../../../components/UploadImage/UploadImage.vue.js";
|
7
7
|
import _sfc_main$1 from "../sections/ProfileCompletion.vue.js";
|
8
8
|
import { useRoute, useRouter } from "vue-router";
|
package/dist/prometheus-framework/src/modules/wallet/views/components/blocks/CryptoDeposit.vue.cjs
CHANGED
@@ -6,7 +6,7 @@ const bignumber = require("../../../../../../node_modules/bignumber.js/bignumber
|
|
6
6
|
const wallet_store = require("../../store/wallet.store.cjs");
|
7
7
|
const wallet = require("../../localization/wallet.json.cjs");
|
8
8
|
const Field = require("../../../../../components/Field/Field.vue2.cjs");
|
9
|
-
const Select = require("../../../../../components/Select/Select.
|
9
|
+
const Select = require("../../../../../components/Select/Select.vue2.cjs");
|
10
10
|
const _hoisted_1 = { class: "mn-b-small t-center t-bold" };
|
11
11
|
const _hoisted_2 = { class: "t-semi" };
|
12
12
|
const _hoisted_3 = ["disabled"];
|
package/dist/prometheus-framework/src/modules/wallet/views/components/blocks/CryptoDeposit.vue.js
CHANGED
@@ -4,7 +4,7 @@ import { BigNumber } from "../../../../../../node_modules/bignumber.js/bignumber
|
|
4
4
|
import { state, actions } from "../../store/wallet.store.js";
|
5
5
|
import text from "../../localization/wallet.json.js";
|
6
6
|
import Field from "../../../../../components/Field/Field.vue2.js";
|
7
|
-
import Select from "../../../../../components/Select/Select.
|
7
|
+
import Select from "../../../../../components/Select/Select.vue2.js";
|
8
8
|
const _hoisted_1 = { class: "mn-b-small t-center t-bold" };
|
9
9
|
const _hoisted_2 = { class: "t-semi" };
|
10
10
|
const _hoisted_3 = ["disabled"];
|