@ozdao/martyrs 0.2.429 → 0.2.431
This diff represents the content of publicly available package versions that have been released to one of the supported registries. The information contained in this diff is provided for informational purposes only and reflects changes between package versions as they appear in their respective public registries.
- package/dist/chats.server.js +0 -19
- package/dist/chats.server.mjs +0 -19
- package/dist/community.server.js +1 -1
- package/dist/community.server.mjs +1 -1
- package/dist/events.server.js +1 -1
- package/dist/events.server.mjs +1 -1
- package/dist/gallery.server.js +1 -1
- package/dist/gallery.server.mjs +1 -1
- package/dist/{globals.logger-Deb_8o7C.mjs → globals.cache-BT6q3vOf.mjs} +0 -33
- package/dist/{globals.logger-BuG0pN80.js → globals.cache-CwWvNGFQ.js} +0 -33
- package/dist/globals.logger-BdjooLaD.js +34 -0
- package/dist/globals.logger-DusiFsxN.mjs +35 -0
- package/dist/martyrs/src/components/Block/Block.vue.cjs +1 -1
- package/dist/martyrs/src/components/Block/Block.vue.js +1 -1
- package/dist/martyrs/src/components/Button/{Button.vue.cjs → Button.vue2.cjs} +2 -2
- package/dist/martyrs/src/components/Button/Button.vue2.cjs.map +1 -0
- package/dist/martyrs/src/components/Button/{Button.vue.js → Button.vue2.js} +2 -2
- package/dist/martyrs/src/components/Button/{Button.vue.cjs.map → Button.vue2.js.map} +1 -1
- package/dist/martyrs/src/components/Chips/{Chips.vue.cjs → Chips.vue2.cjs} +2 -2
- package/dist/martyrs/src/components/Chips/Chips.vue2.cjs.map +1 -0
- package/dist/martyrs/src/components/Chips/{Chips.vue.js → Chips.vue2.js} +2 -2
- package/dist/martyrs/src/components/Chips/Chips.vue2.js.map +1 -0
- package/dist/martyrs/src/components/Menu/{Menu.vue2.cjs → Menu.vue.cjs} +2 -2
- package/dist/martyrs/src/components/Menu/Menu.vue.cjs.map +1 -0
- package/dist/martyrs/src/components/Menu/{Menu.vue2.js → Menu.vue.js} +2 -2
- package/dist/martyrs/src/components/Menu/Menu.vue.js.map +1 -0
- package/dist/martyrs/src/components/Popup/{Popup.vue2.cjs → Popup.vue.cjs} +2 -2
- package/dist/martyrs/src/components/Popup/{Popup.vue2.js.map → Popup.vue.cjs.map} +1 -1
- package/dist/martyrs/src/components/Popup/{Popup.vue2.js → Popup.vue.js} +2 -2
- package/dist/martyrs/src/components/Popup/Popup.vue.js.map +1 -0
- package/dist/martyrs/src/components/Tab/{Tab.vue.cjs → Tab.vue2.cjs} +2 -2
- package/dist/martyrs/src/components/Tab/Tab.vue2.cjs.map +1 -0
- package/dist/martyrs/src/components/Tab/{Tab.vue.js → Tab.vue2.js} +2 -2
- package/dist/martyrs/src/components/Tab/{Tab.vue.cjs.map → Tab.vue2.js.map} +1 -1
- package/dist/martyrs/src/components/Tooltip/{Tooltip.vue.cjs → Tooltip.vue2.cjs} +2 -2
- package/dist/martyrs/src/components/Tooltip/Tooltip.vue2.cjs.map +1 -0
- package/dist/martyrs/src/components/Tooltip/{Tooltip.vue.js → Tooltip.vue2.js} +2 -2
- package/dist/martyrs/src/components/Tooltip/{Tooltip.vue.cjs.map → Tooltip.vue2.js.map} +1 -1
- package/dist/martyrs/src/modules/auth/views/components/layouts/Auth.vue.cjs +2 -2
- package/dist/martyrs/src/modules/auth/views/components/layouts/Auth.vue.js +2 -2
- package/dist/martyrs/src/modules/auth/views/components/pages/EnterPassword.vue.cjs +2 -2
- package/dist/martyrs/src/modules/auth/views/components/pages/EnterPassword.vue.js +2 -2
- package/dist/martyrs/src/modules/auth/views/components/pages/Invite.vue.cjs +2 -2
- package/dist/martyrs/src/modules/auth/views/components/pages/Invite.vue.js +2 -2
- package/dist/martyrs/src/modules/auth/views/components/pages/Profile.vue.cjs +2 -2
- package/dist/martyrs/src/modules/auth/views/components/pages/Profile.vue.js +2 -2
- package/dist/martyrs/src/modules/auth/views/components/pages/ProfileBlogposts.vue.cjs +1 -1
- package/dist/martyrs/src/modules/auth/views/components/pages/ProfileBlogposts.vue.js +1 -1
- package/dist/martyrs/src/modules/auth/views/components/pages/ProfileEdit.vue.cjs +2 -2
- package/dist/martyrs/src/modules/auth/views/components/pages/ProfileEdit.vue.js +2 -2
- package/dist/martyrs/src/modules/auth/views/components/pages/ResetPassword.vue.cjs +2 -2
- package/dist/martyrs/src/modules/auth/views/components/pages/ResetPassword.vue.js +2 -2
- package/dist/martyrs/src/modules/auth/views/components/pages/SignIn.vue.cjs +2 -2
- package/dist/martyrs/src/modules/auth/views/components/pages/SignIn.vue.js +2 -2
- package/dist/martyrs/src/modules/auth/views/components/pages/SignUp.vue.cjs +2 -2
- package/dist/martyrs/src/modules/auth/views/components/pages/SignUp.vue.js +2 -2
- package/dist/martyrs/src/modules/auth/views/components/sections/ProfileEditCredentials.vue.cjs +1 -1
- package/dist/martyrs/src/modules/auth/views/components/sections/ProfileEditCredentials.vue.js +1 -1
- package/dist/martyrs/src/modules/community/components/blocks/CardBlogpost.vue.cjs +1 -1
- package/dist/martyrs/src/modules/community/components/blocks/CardBlogpost.vue.js +1 -1
- package/dist/martyrs/src/modules/community/components/pages/BlogPost.vue.cjs +3 -3
- package/dist/martyrs/src/modules/community/components/pages/BlogPost.vue.js +3 -3
- package/dist/martyrs/src/modules/community/components/pages/CreateBlogPost.vue.cjs +2 -2
- package/dist/martyrs/src/modules/community/components/pages/CreateBlogPost.vue.js +2 -2
- package/dist/martyrs/src/modules/events/components/blocks/CardEvent.vue.cjs +1 -1
- package/dist/martyrs/src/modules/events/components/blocks/CardEvent.vue.js +1 -1
- package/dist/martyrs/src/modules/events/components/elements/ButtonCheck.vue.cjs +1 -1
- package/dist/martyrs/src/modules/events/components/elements/ButtonCheck.vue.js +1 -1
- package/dist/martyrs/src/modules/events/components/elements/ButtonJoin.vue.cjs +1 -1
- package/dist/martyrs/src/modules/events/components/elements/ButtonJoin.vue.js +1 -1
- package/dist/martyrs/src/modules/events/components/pages/EditEvent.vue.cjs +2 -2
- package/dist/martyrs/src/modules/events/components/pages/EditEvent.vue.js +2 -2
- package/dist/martyrs/src/modules/events/components/pages/EditEventTickets.vue.cjs +2 -2
- package/dist/martyrs/src/modules/events/components/pages/EditEventTickets.vue.js +2 -2
- package/dist/martyrs/src/modules/events/components/pages/Event.vue.cjs +1 -1
- package/dist/martyrs/src/modules/events/components/pages/Event.vue.js +1 -1
- package/dist/martyrs/src/modules/events/components/pages/Events.vue.cjs +1 -1
- package/dist/martyrs/src/modules/events/components/pages/Events.vue.js +1 -1
- package/dist/martyrs/src/modules/events/components/pages/EventsBackoffice.vue.cjs +1 -1
- package/dist/martyrs/src/modules/events/components/pages/EventsBackoffice.vue.js +1 -1
- package/dist/martyrs/src/modules/gallery/components/pages/Gallery.vue.cjs +1 -1
- package/dist/martyrs/src/modules/gallery/components/pages/Gallery.vue.js +1 -1
- package/dist/martyrs/src/modules/gallery/components/sections/BackofficeGallery.vue.cjs +3 -3
- package/dist/martyrs/src/modules/gallery/components/sections/BackofficeGallery.vue.js +3 -3
- package/dist/martyrs/src/modules/globals/views/components/blocks/CardHeader.vue.cjs +2 -2
- package/dist/martyrs/src/modules/globals/views/components/blocks/CardHeader.vue.js +2 -2
- package/dist/martyrs/src/modules/globals/views/components/blocks/PopupDateSelector.vue.cjs +2 -2
- package/dist/martyrs/src/modules/globals/views/components/blocks/PopupDateSelector.vue.js +2 -2
- package/dist/martyrs/src/modules/globals/views/components/layouts/Client.vue.cjs +16 -12
- package/dist/martyrs/src/modules/globals/views/components/layouts/Client.vue.cjs.map +1 -1
- package/dist/martyrs/src/modules/globals/views/components/layouts/Client.vue.js +16 -12
- package/dist/martyrs/src/modules/globals/views/components/layouts/Client.vue.js.map +1 -1
- package/dist/martyrs/src/modules/globals/views/components/partials/Header.vue.cjs +6 -6
- package/dist/martyrs/src/modules/globals/views/components/partials/Header.vue.cjs.map +1 -1
- package/dist/martyrs/src/modules/globals/views/components/partials/Header.vue.js +6 -6
- package/dist/martyrs/src/modules/globals/views/components/partials/Header.vue.js.map +1 -1
- package/dist/martyrs/src/modules/globals/views/components/partials/Navigation.vue.cjs +17 -9
- package/dist/martyrs/src/modules/globals/views/components/partials/Navigation.vue.cjs.map +1 -1
- package/dist/martyrs/src/modules/globals/views/components/partials/Navigation.vue.js +17 -9
- package/dist/martyrs/src/modules/globals/views/components/partials/Navigation.vue.js.map +1 -1
- package/dist/martyrs/src/modules/globals/views/components/partials/NavigationBar.vue.cjs +1 -1
- package/dist/martyrs/src/modules/globals/views/components/partials/NavigationBar.vue.js +1 -1
- package/dist/martyrs/src/modules/globals/views/components/partials/Sidebar.vue.cjs +16 -4
- package/dist/martyrs/src/modules/globals/views/components/partials/Sidebar.vue.cjs.map +1 -1
- package/dist/martyrs/src/modules/globals/views/components/partials/Sidebar.vue.js +16 -4
- package/dist/martyrs/src/modules/globals/views/components/partials/Sidebar.vue.js.map +1 -1
- package/dist/martyrs/src/modules/globals/views/components/sections/SectionPageTitle.vue.cjs +1 -1
- package/dist/martyrs/src/modules/globals/views/components/sections/SectionPageTitle.vue.js +1 -1
- package/dist/martyrs/src/modules/landing/components/sections/SectionFeaturesImages.vue.cjs +101 -0
- package/dist/martyrs/src/modules/landing/components/sections/SectionFeaturesImages.vue.cjs.map +1 -0
- package/dist/martyrs/src/modules/landing/components/sections/SectionFeaturesImages.vue.js +101 -0
- package/dist/martyrs/src/modules/landing/components/sections/SectionFeaturesImages.vue.js.map +1 -0
- package/dist/martyrs/src/modules/landing/components/sections/SectionHeroToken.vue.cjs +85 -0
- package/dist/martyrs/src/modules/landing/components/sections/SectionHeroToken.vue.cjs.map +1 -0
- package/dist/martyrs/src/modules/landing/components/sections/SectionHeroToken.vue.js +85 -0
- package/dist/martyrs/src/modules/landing/components/sections/SectionHeroToken.vue.js.map +1 -0
- package/dist/martyrs/src/modules/landing/components/sections/SectionRoadmap.vue.cjs +97 -0
- package/dist/martyrs/src/modules/landing/components/sections/SectionRoadmap.vue.cjs.map +1 -0
- package/dist/martyrs/src/modules/landing/components/sections/SectionRoadmap.vue.js +97 -0
- package/dist/martyrs/src/modules/landing/components/sections/SectionRoadmap.vue.js.map +1 -0
- package/dist/martyrs/src/modules/landing/landing.client.cjs +6 -0
- package/dist/martyrs/src/modules/landing/landing.client.cjs.map +1 -1
- package/dist/martyrs/src/modules/landing/landing.client.js +6 -0
- package/dist/martyrs/src/modules/landing/landing.client.js.map +1 -1
- package/dist/martyrs/src/modules/notifications/components/elements/NotificationBadge.vue.cjs +4 -12
- package/dist/martyrs/src/modules/notifications/components/elements/NotificationBadge.vue.cjs.map +1 -1
- package/dist/martyrs/src/modules/notifications/components/elements/NotificationBadge.vue.js +4 -12
- package/dist/martyrs/src/modules/notifications/components/elements/NotificationBadge.vue.js.map +1 -1
- package/dist/martyrs/src/modules/notifications/notifications.client.cjs +135 -248
- package/dist/martyrs/src/modules/notifications/notifications.client.cjs.map +1 -1
- package/dist/martyrs/src/modules/notifications/notifications.client.js +135 -248
- package/dist/martyrs/src/modules/notifications/notifications.client.js.map +1 -1
- package/dist/martyrs/src/modules/orders/components/blocks/CardOrderBackoffice.vue.cjs +112 -0
- package/dist/martyrs/src/modules/orders/components/blocks/CardOrderBackoffice.vue.cjs.map +1 -0
- package/dist/martyrs/src/modules/orders/components/blocks/CardOrderBackoffice.vue.js +112 -0
- package/dist/martyrs/src/modules/orders/components/blocks/CardOrderBackoffice.vue.js.map +1 -0
- package/dist/martyrs/src/modules/orders/components/blocks/CardOrderUser.vue.cjs +19 -13
- package/dist/martyrs/src/modules/orders/components/blocks/CardOrderUser.vue.cjs.map +1 -1
- package/dist/martyrs/src/modules/orders/components/blocks/CardOrderUser.vue.js +19 -13
- package/dist/martyrs/src/modules/orders/components/blocks/CardOrderUser.vue.js.map +1 -1
- package/dist/martyrs/src/modules/orders/components/pages/OrderBackoffice.vue.cjs +3 -3
- package/dist/martyrs/src/modules/orders/components/pages/OrderBackoffice.vue.js +3 -3
- package/dist/martyrs/src/modules/orders/components/pages/OrderCreate.vue.cjs +2 -2
- package/dist/martyrs/src/modules/orders/components/pages/OrderCreate.vue.cjs.map +1 -1
- package/dist/martyrs/src/modules/orders/components/pages/OrderCreate.vue.js +2 -2
- package/dist/martyrs/src/modules/orders/components/pages/OrderCreate.vue.js.map +1 -1
- package/dist/martyrs/src/modules/orders/components/pages/OrderCreateBackoffice.vue.cjs +17 -9
- package/dist/martyrs/src/modules/orders/components/pages/OrderCreateBackoffice.vue.cjs.map +1 -1
- package/dist/martyrs/src/modules/orders/components/pages/OrderCreateBackoffice.vue.js +26 -18
- package/dist/martyrs/src/modules/orders/components/pages/OrderCreateBackoffice.vue.js.map +1 -1
- package/dist/martyrs/src/modules/orders/components/pages/Orders.vue.cjs +17 -100
- package/dist/martyrs/src/modules/orders/components/pages/Orders.vue.cjs.map +1 -1
- package/dist/martyrs/src/modules/orders/components/pages/Orders.vue.js +17 -100
- package/dist/martyrs/src/modules/orders/components/pages/Orders.vue.js.map +1 -1
- package/dist/martyrs/src/modules/orders/components/partials/ShopCart.vue.cjs +2 -2
- package/dist/martyrs/src/modules/orders/components/partials/ShopCart.vue.cjs.map +1 -1
- package/dist/martyrs/src/modules/orders/components/partials/ShopCart.vue.js +2 -2
- package/dist/martyrs/src/modules/orders/components/partials/ShopCart.vue.js.map +1 -1
- package/dist/martyrs/src/modules/orders/components/sections/FormAddCustomer.vue.cjs +1 -1
- package/dist/martyrs/src/modules/orders/components/sections/FormAddCustomer.vue.js +1 -1
- package/dist/martyrs/src/modules/organizations/components/blocks/CardOrganization.vue.cjs +1 -1
- package/dist/martyrs/src/modules/organizations/components/blocks/CardOrganization.vue.js +1 -1
- package/dist/martyrs/src/modules/organizations/components/elements/ButtonToggleMembership.vue.cjs +1 -1
- package/dist/martyrs/src/modules/organizations/components/elements/ButtonToggleMembership.vue.js +1 -1
- package/dist/martyrs/src/modules/organizations/components/pages/DepartmentEdit.vue.cjs +3 -3
- package/dist/martyrs/src/modules/organizations/components/pages/DepartmentEdit.vue.js +3 -3
- package/dist/martyrs/src/modules/organizations/components/pages/Members.vue.cjs +4 -4
- package/dist/martyrs/src/modules/organizations/components/pages/Members.vue.js +4 -4
- package/dist/martyrs/src/modules/organizations/components/pages/Organization.vue.cjs +61 -58
- package/dist/martyrs/src/modules/organizations/components/pages/Organization.vue.cjs.map +1 -1
- package/dist/martyrs/src/modules/organizations/components/pages/Organization.vue.js +65 -62
- package/dist/martyrs/src/modules/organizations/components/pages/Organization.vue.js.map +1 -1
- package/dist/martyrs/src/modules/organizations/components/pages/OrganizationBackoffice.vue.cjs +1 -1
- package/dist/martyrs/src/modules/organizations/components/pages/OrganizationBackoffice.vue.js +1 -1
- package/dist/martyrs/src/modules/organizations/components/pages/OrganizationEdit.vue.cjs +3 -3
- package/dist/martyrs/src/modules/organizations/components/pages/OrganizationEdit.vue.js +3 -3
- package/dist/martyrs/src/modules/organizations/components/pages/Organizations.vue.cjs +1 -1
- package/dist/martyrs/src/modules/organizations/components/pages/Organizations.vue.js +1 -1
- package/dist/martyrs/src/modules/organizations/components/sections/DetailsTabSection.vue.cjs +1 -1
- package/dist/martyrs/src/modules/organizations/components/sections/DetailsTabSection.vue.js +1 -1
- package/dist/martyrs/src/modules/organizations/components/sections/Documents.vue.cjs +2 -2
- package/dist/martyrs/src/modules/organizations/components/sections/Documents.vue.js +2 -2
- package/dist/martyrs/src/modules/organizations/components/sections/MembersAdd.vue.cjs +1 -1
- package/dist/martyrs/src/modules/organizations/components/sections/MembersAdd.vue.js +1 -1
- package/dist/martyrs/src/modules/organizations/components/sections/Organizations.vue.cjs +2 -2
- package/dist/martyrs/src/modules/organizations/components/sections/Organizations.vue.js +2 -2
- package/dist/martyrs/src/modules/organizations/store/organizations.cjs +0 -2
- package/dist/martyrs/src/modules/organizations/store/organizations.cjs.map +1 -1
- package/dist/martyrs/src/modules/organizations/store/organizations.js +1 -3
- package/dist/martyrs/src/modules/organizations/store/organizations.js.map +1 -1
- package/dist/martyrs/src/modules/pages/views/components/blocks/CardPage.vue.cjs +1 -1
- package/dist/martyrs/src/modules/pages/views/components/blocks/CardPage.vue.js +1 -1
- package/dist/martyrs/src/modules/pages/views/components/pages/PageEdit.vue.cjs +2 -2
- package/dist/martyrs/src/modules/pages/views/components/pages/PageEdit.vue.js +2 -2
- package/dist/martyrs/src/modules/pages/views/components/partials/SidebarPages.vue.cjs +2 -2
- package/dist/martyrs/src/modules/pages/views/components/partials/SidebarPages.vue.js +2 -2
- package/dist/martyrs/src/modules/products/components/blocks/ImagesThumbnails.vue.cjs +1 -1
- package/dist/martyrs/src/modules/products/components/blocks/ImagesThumbnails.vue.js +1 -1
- package/dist/martyrs/src/modules/products/components/pages/Categories.vue.cjs +1 -1
- package/dist/martyrs/src/modules/products/components/pages/Categories.vue.js +1 -1
- package/dist/martyrs/src/modules/products/components/pages/CategoryEdit.vue.cjs +1 -1
- package/dist/martyrs/src/modules/products/components/pages/CategoryEdit.vue.js +1 -1
- package/dist/martyrs/src/modules/products/components/pages/EditLeftover.vue.cjs +1 -1
- package/dist/martyrs/src/modules/products/components/pages/EditLeftover.vue.js +1 -1
- package/dist/martyrs/src/modules/products/components/pages/Leftovers.vue.cjs +1 -1
- package/dist/martyrs/src/modules/products/components/pages/Leftovers.vue.js +1 -1
- package/dist/martyrs/src/modules/products/components/pages/Product.vue.cjs +12 -10
- package/dist/martyrs/src/modules/products/components/pages/Product.vue.cjs.map +1 -1
- package/dist/martyrs/src/modules/products/components/pages/Product.vue.js +12 -10
- package/dist/martyrs/src/modules/products/components/pages/Product.vue.js.map +1 -1
- package/dist/martyrs/src/modules/products/components/pages/ProductEdit.vue.cjs +3 -3
- package/dist/martyrs/src/modules/products/components/pages/ProductEdit.vue.js +3 -3
- package/dist/martyrs/src/modules/products/components/pages/Products.vue.cjs +5 -4
- package/dist/martyrs/src/modules/products/components/pages/Products.vue.cjs.map +1 -1
- package/dist/martyrs/src/modules/products/components/pages/Products.vue.js +6 -5
- package/dist/martyrs/src/modules/products/components/pages/Products.vue.js.map +1 -1
- package/dist/martyrs/src/modules/products/components/sections/EditProductInfo.vue.cjs +1 -1
- package/dist/martyrs/src/modules/products/components/sections/EditProductInfo.vue.js +1 -1
- package/dist/martyrs/src/modules/products/components/sections/SectionProduct.vue.cjs +2 -2
- package/dist/martyrs/src/modules/products/components/sections/SectionProduct.vue.js +2 -2
- package/dist/martyrs/src/modules/rents/views/components/pages/GanttChart.vue.cjs +1 -1
- package/dist/martyrs/src/modules/rents/views/components/pages/GanttChart.vue.js +1 -1
- package/dist/martyrs/src/modules/rents/views/components/pages/Rents.vue.cjs +1 -1
- package/dist/martyrs/src/modules/rents/views/components/pages/Rents.vue.js +1 -1
- package/dist/martyrs/src/modules/rents/views/components/pages/RentsEdit.vue.cjs +1 -1
- package/dist/martyrs/src/modules/rents/views/components/pages/RentsEdit.vue.js +1 -1
- package/dist/martyrs/src/modules/reports/components/sections/FormReport.vue.cjs +2 -2
- package/dist/martyrs/src/modules/reports/components/sections/FormReport.vue.js +2 -2
- package/dist/martyrs/src/modules/spots/components/blocks/CardSpot.vue.cjs +1 -1
- package/dist/martyrs/src/modules/spots/components/blocks/CardSpot.vue.js +1 -1
- package/dist/martyrs/src/modules/spots/components/pages/Map.vue.cjs +1 -1
- package/dist/martyrs/src/modules/spots/components/pages/Map.vue.js +1 -1
- package/dist/martyrs/src/modules/spots/components/pages/SpotEdit.vue.cjs +3 -3
- package/dist/martyrs/src/modules/spots/components/pages/SpotEdit.vue.js +3 -3
- package/dist/martyrs/src/modules/spots/store/spots.cjs +4 -11
- package/dist/martyrs/src/modules/spots/store/spots.cjs.map +1 -1
- package/dist/martyrs/src/modules/spots/store/spots.js +4 -11
- package/dist/martyrs/src/modules/spots/store/spots.js.map +1 -1
- package/dist/martyrs.css +1 -1
- package/dist/notifications.server.js +85 -1
- package/dist/notifications.server.mjs +85 -1
- package/dist/orders.server.js +4 -30
- package/dist/orders.server.mjs +3 -29
- package/dist/organizations.server.js +33 -30
- package/dist/organizations.server.mjs +33 -30
- package/dist/products.server.js +1 -1
- package/dist/products.server.mjs +1 -1
- package/dist/{queryProcessor-CCmHM0yi.mjs → queryProcessor-CWnMIe2U.mjs} +4 -1
- package/dist/{queryProcessor-CwQakZkT.js → queryProcessor-D6GuKfTV.js} +4 -1
- package/dist/rents.server.js +4 -3
- package/dist/rents.server.mjs +3 -2
- package/dist/spots.server.js +4 -16
- package/dist/spots.server.mjs +4 -16
- package/dist/style.css +136 -61
- package/dist/wallet.server.js +1 -1
- package/dist/wallet.server.mjs +1 -1
- package/package.json +1 -1
- package/src/builder/modes/ssr.dev.js +0 -20
- package/src/modules/chats/routes/chats.routes.js +19 -19
- package/src/modules/globals/controllers/utils/queryProcessor.js +2 -1
- package/src/modules/globals/views/components/layouts/Client.vue +25 -19
- package/src/modules/globals/views/components/partials/Header.vue +3 -4
- package/src/modules/globals/views/components/partials/Navigation.vue +17 -19
- package/src/modules/globals/views/components/partials/Sidebar.vue +20 -9
- package/src/modules/landing/components/sections/SectionHeroToken.vue +1 -1
- package/src/modules/landing/landing.client.js +7 -0
- package/src/modules/notifications/components/elements/NotificationBadge.vue +4 -13
- package/src/modules/notifications/notifications.client.js +166 -350
- package/src/modules/notifications/services/notification.service.js +4 -3
- package/src/modules/notifications/services/websocket.service.js +54 -56
- package/src/modules/orders/components/blocks/CardOrderBackoffice.vue +106 -0
- package/src/modules/orders/components/blocks/CardOrderUser.vue +16 -9
- package/src/modules/orders/components/pages/OrderCreate.vue +3 -3
- package/src/modules/orders/components/pages/OrderCreateBackoffice.vue +15 -3
- package/src/modules/orders/components/pages/Orders.vue +10 -93
- package/src/modules/orders/components/partials/ShopCart.vue +2 -2
- package/src/modules/orders/controllers/orders.controller.js +2 -2
- package/src/modules/organizations/components/pages/Organization.vue +48 -47
- package/src/modules/organizations/controllers/organizations.controller.js +57 -47
- package/src/modules/organizations/store/organizations.js +6 -6
- package/src/modules/products/components/pages/Product.vue +10 -9
- package/src/modules/products/components/pages/Products.vue +4 -3
- package/src/modules/spots/controllers/spots.controller.js +3 -17
- package/src/modules/spots/routes/spots.routes.js +1 -4
- package/src/modules/spots/store/spots.js +4 -12
- package/src/styles/base/shadow_transitions_hover_refactor.scss +1 -0
- package/dist/martyrs/src/components/Button/Button.vue.js.map +0 -1
- package/dist/martyrs/src/components/Chips/Chips.vue.cjs.map +0 -1
- package/dist/martyrs/src/components/Chips/Chips.vue.js.map +0 -1
- package/dist/martyrs/src/components/Menu/Menu.vue2.cjs.map +0 -1
- package/dist/martyrs/src/components/Menu/Menu.vue2.js.map +0 -1
- package/dist/martyrs/src/components/Popup/Popup.vue2.cjs.map +0 -1
- package/dist/martyrs/src/components/Tab/Tab.vue.js.map +0 -1
- package/dist/martyrs/src/components/Tooltip/Tooltip.vue.js.map +0 -1
- package/src/modules/landing/components/sections/HowToBuyWDR.vue +0 -130
- package/src/modules/landing/components/sections/WhatIsWDRSection.vue +0 -116
|
@@ -1,5 +1,7 @@
|
|
|
1
1
|
const jwt = require("jsonwebtoken");
|
|
2
2
|
|
|
3
|
+
const Cache = require('@martyrs/src/modules/globals/controllers/classes/globals.cache');
|
|
4
|
+
|
|
3
5
|
const queryProcessorGlobals = require('@martyrs/src/modules/globals/controllers/utils/queryProcessor');
|
|
4
6
|
|
|
5
7
|
const {
|
|
@@ -23,25 +25,33 @@ const controllerFactory = (db) => {
|
|
|
23
25
|
const Department = db.department;
|
|
24
26
|
const Membership = db.membership;
|
|
25
27
|
|
|
26
|
-
|
|
28
|
+
// Создаем экземпляр вашего кэша с TTL 5 минут (по умолчанию)
|
|
29
|
+
const cache = new Cache({ ttlSeconds: 60 * 5 });
|
|
27
30
|
|
|
28
|
-
|
|
31
|
+
const read = async (req, res) => {
|
|
32
|
+
console.log('controller query', req.query);
|
|
29
33
|
|
|
30
34
|
try {
|
|
35
|
+
const cacheKey = JSON.stringify(req.query); // Ключ кэша на основе запроса
|
|
36
|
+
|
|
37
|
+
// Проверяем, есть ли данные в кэше
|
|
38
|
+
let cachedResult = await cache.get(cacheKey);
|
|
39
|
+
if (cachedResult) {
|
|
40
|
+
// Если данные в кэше есть, возвращаем их
|
|
41
|
+
return res.status(200).send(cachedResult);
|
|
42
|
+
}
|
|
43
|
+
|
|
31
44
|
const requestedLookups = getRequestedLookups(req.query);
|
|
32
45
|
const matchConditions = getBasicMatchConditions(req.query);
|
|
33
46
|
|
|
34
47
|
const stages = [
|
|
35
48
|
...getLookupStages(requestedLookups, lookupConfigs),
|
|
36
|
-
|
|
37
49
|
...getPostableConditions(req.query.postable),
|
|
38
50
|
...getContainConditions(req.query.contain),
|
|
39
|
-
|
|
40
51
|
...queryProcessorGlobals.getSearchOptions(
|
|
41
52
|
req.query.search,
|
|
42
53
|
{ fields: requestedLookups.includes('products') ? ['profile.name', 'products.name'] : ['profile.name'] }
|
|
43
54
|
),
|
|
44
|
-
|
|
45
55
|
...(requestedLookups.includes('products') && req.query.prices ? getPriceConditions(req.query.prices) : []),
|
|
46
56
|
...(requestedLookups.includes('spots') ? (await getLocationStages(req.query)).stages : []),
|
|
47
57
|
...(requestedLookups.includes('memberships') ? [
|
|
@@ -56,50 +66,17 @@ const controllerFactory = (db) => {
|
|
|
56
66
|
console.log(JSON.stringify(stages, null, 2));
|
|
57
67
|
|
|
58
68
|
const organizations = await Organization.aggregate(stages);
|
|
59
|
-
res.status(200).send(organizations);
|
|
60
|
-
} catch (err) {
|
|
61
|
-
console.error(err);
|
|
62
|
-
res.status(500).send({ message: err.message });
|
|
63
|
-
}
|
|
64
|
-
};
|
|
65
69
|
|
|
66
|
-
|
|
67
|
-
|
|
68
|
-
|
|
69
|
-
|
|
70
|
-
|
|
71
|
-
console.log(req.query)
|
|
72
|
-
|
|
73
|
-
// Fetch by website
|
|
74
|
-
if (req.query._id) {
|
|
75
|
-
query['_id'] = req.query._id;
|
|
76
|
-
}
|
|
77
|
-
|
|
78
|
-
if (req.query.owner) {
|
|
79
|
-
query['owner'] = req.query.owner;
|
|
80
|
-
}
|
|
81
|
-
|
|
82
|
-
// Fetch by type
|
|
83
|
-
if (req.query.type) {
|
|
84
|
-
query.types = req.query.type;
|
|
85
|
-
}
|
|
86
|
-
|
|
87
|
-
// Pagination options
|
|
88
|
-
let options = {};
|
|
89
|
-
options.skip = parseInt(req.query.skip) || 0;
|
|
90
|
-
options.limit = parseInt(req.query.limit) || 10;
|
|
91
|
-
|
|
92
|
-
try {
|
|
93
|
-
const organizations = await Organization.find(query, null, options);
|
|
94
|
-
|
|
95
|
-
if (!organizations || organizations.length === 0) {
|
|
96
|
-
return res.status(404).send({ message: "Organizations not found." });
|
|
70
|
+
// Кэшируем результат с тегами для каждой организации
|
|
71
|
+
for (const org of organizations) {
|
|
72
|
+
const orgTag = `organization_${org._id}`; // Уникальный тег для каждой организации
|
|
73
|
+
await cache.setWithTags(cacheKey, organizations, [orgTag, 'organizations']); // Добавляем оба тега
|
|
97
74
|
}
|
|
98
75
|
|
|
99
|
-
// Send fetched organizations
|
|
100
76
|
res.status(200).send(organizations);
|
|
101
|
-
} catch(err) {
|
|
102
|
-
|
|
77
|
+
} catch (err) {
|
|
78
|
+
console.error(err);
|
|
79
|
+
res.status(500).send({ message: err.message });
|
|
103
80
|
}
|
|
104
81
|
};
|
|
105
82
|
|
|
@@ -122,6 +99,14 @@ const controllerFactory = (db) => {
|
|
|
122
99
|
|
|
123
100
|
const savedMembership = await membership.save();
|
|
124
101
|
|
|
102
|
+
// Очищаем кэш для этой организации
|
|
103
|
+
const orgTag = `organization_${savedOrganization._id}`;
|
|
104
|
+
await cache.delByTag(orgTag);
|
|
105
|
+
|
|
106
|
+
// Обновляем кэш, добавляя новую организацию
|
|
107
|
+
const newCacheKey = JSON.stringify({ _id: savedOrganization._id }); // Ключ для новой записи
|
|
108
|
+
await cache.setWithTags(newCacheKey, [savedOrganization], [orgTag, 'organizations']);
|
|
109
|
+
|
|
125
110
|
res.status(201).json(savedOrganization);
|
|
126
111
|
} catch (error) {
|
|
127
112
|
console.error('Error:', error);
|
|
@@ -144,6 +129,14 @@ const controllerFactory = (db) => {
|
|
|
144
129
|
return res.status(404).json({ message: 'Organization not found' });
|
|
145
130
|
}
|
|
146
131
|
|
|
132
|
+
// Очищаем кэш для этой организации
|
|
133
|
+
const orgTag = `organization_${organizationId}`;
|
|
134
|
+
await cache.delByTag(orgTag);
|
|
135
|
+
|
|
136
|
+
// Обновляем кэш новой версией организации
|
|
137
|
+
const updateCacheKey = JSON.stringify({ _id: organizationId }); // Ключ для обновленной записи
|
|
138
|
+
await cache.setWithTags(updateCacheKey, [organization], [orgTag, 'organizations']);
|
|
139
|
+
|
|
147
140
|
res.status(200).json({ message: 'Organization updated successfully', organization });
|
|
148
141
|
} catch (error) {
|
|
149
142
|
res.status(500).json({ error: error.message });
|
|
@@ -167,6 +160,10 @@ const controllerFactory = (db) => {
|
|
|
167
160
|
expiresIn: 86400 // 24 hours
|
|
168
161
|
});
|
|
169
162
|
|
|
163
|
+
// Очищаем кэш для этой организации
|
|
164
|
+
const orgTag = `organization_${req.params._id}`;
|
|
165
|
+
cache.delByTag(orgTag);
|
|
166
|
+
|
|
170
167
|
res.send({ newToken });
|
|
171
168
|
})
|
|
172
169
|
.catch(err => {
|
|
@@ -181,6 +178,14 @@ const controllerFactory = (db) => {
|
|
|
181
178
|
const checkAccesses = async (req, res) => {
|
|
182
179
|
try {
|
|
183
180
|
const uid = new db.mongoose.Types.ObjectId(req.userId);
|
|
181
|
+
const cacheKey = `accesses_${uid.toString()}`; // Уникальный ключ для кэша на основе userId
|
|
182
|
+
|
|
183
|
+
// Проверяем, есть ли данные в кэше
|
|
184
|
+
const cachedResult = await cache.get(cacheKey);
|
|
185
|
+
if (cachedResult) {
|
|
186
|
+
return res.status(200).json(cachedResult);
|
|
187
|
+
}
|
|
188
|
+
|
|
184
189
|
const depts = await Department.find({ 'members.user': uid });
|
|
185
190
|
const ownedOrgs = await Organization.find({ owner: uid });
|
|
186
191
|
const ownedOrgIds = ownedOrgs.map(org => org._id.toString());
|
|
@@ -200,8 +205,8 @@ const controllerFactory = (db) => {
|
|
|
200
205
|
rights[key] = {};
|
|
201
206
|
}
|
|
202
207
|
const accessRights = accessData[key];
|
|
203
|
-
Object.
|
|
204
|
-
rights[key][right] = isOwner || rights[key][right] ||
|
|
208
|
+
Object.entries(accessRights).forEach(([right, value]) => {
|
|
209
|
+
rights[key][right] = isOwner || rights[key][right] || value;
|
|
205
210
|
});
|
|
206
211
|
});
|
|
207
212
|
};
|
|
@@ -239,6 +244,11 @@ const controllerFactory = (db) => {
|
|
|
239
244
|
});
|
|
240
245
|
|
|
241
246
|
const accessArray = Object.values(accesses);
|
|
247
|
+
|
|
248
|
+
// Кэшируем результат с тегами: уникальный тег для пользователя и общий тег для всех доступов
|
|
249
|
+
const userTag = `access_${uid.toString()}`; // Тег для конкретного пользователя
|
|
250
|
+
await cache.setWithTags(cacheKey, accessArray, [userTag, 'accesses']);
|
|
251
|
+
|
|
242
252
|
res.status(200).json(accessArray);
|
|
243
253
|
} catch (err) {
|
|
244
254
|
console.error('Error getting accesses:', err);
|
|
@@ -141,13 +141,13 @@ const actions = {
|
|
|
141
141
|
}
|
|
142
142
|
}
|
|
143
143
|
|
|
144
|
-
const history = []
|
|
145
|
-
history.push(state)
|
|
144
|
+
// const history = []
|
|
145
|
+
// history.push(state)
|
|
146
146
|
|
|
147
|
-
// // Watch
|
|
148
|
-
watch(state, (newState, oldState) => {
|
|
149
|
-
|
|
150
|
-
})
|
|
147
|
+
// // // Watch
|
|
148
|
+
// watch(state, (newState, oldState) => {
|
|
149
|
+
// history.push(newState)
|
|
150
|
+
// })
|
|
151
151
|
|
|
152
152
|
// Module Export
|
|
153
153
|
export {
|
|
@@ -1,5 +1,5 @@
|
|
|
1
1
|
<template>
|
|
2
|
-
<div v-if="products.state.current
|
|
2
|
+
<div v-if="products.state.current" class="h-100 w-100 mobile:pd-thin pd-big bg-white">
|
|
3
3
|
<div class="cols-2-1_2 w-100 gap-medium">
|
|
4
4
|
|
|
5
5
|
<ImagesThumbnails
|
|
@@ -91,9 +91,9 @@
|
|
|
91
91
|
</div>
|
|
92
92
|
</div>
|
|
93
93
|
|
|
94
|
-
<div class="h-max pos-relative">
|
|
95
|
-
<h3 class="pd-
|
|
96
|
-
<PopularProducts />
|
|
94
|
+
<div class="h-max mn-t-big pos-relative">
|
|
95
|
+
<h3 class="pd-b-small">Most Popular</h3>
|
|
96
|
+
<PopularProducts class="mn-r-big-negative mn-l-big-negative"/>
|
|
97
97
|
</div>
|
|
98
98
|
</div>
|
|
99
99
|
</template>
|
|
@@ -144,15 +144,16 @@ function closePopup() {
|
|
|
144
144
|
isPopupOpen.value = false
|
|
145
145
|
}
|
|
146
146
|
|
|
147
|
-
|
|
148
|
-
const emit = defineEmits(['page-loading', 'page-loaded']);
|
|
147
|
+
const emits = defineEmits(['page-loading', 'page-loaded']);
|
|
149
148
|
|
|
150
|
-
|
|
149
|
+
const pageProduct = ref(null)
|
|
150
|
+
products.state.current = null
|
|
151
151
|
// products.mutations.resetProduct()
|
|
152
152
|
onMounted(async () => {
|
|
153
|
-
|
|
153
|
+
|
|
154
|
+
emits('page-loading');
|
|
154
155
|
await products.actions.read({ _id: route.params.product })
|
|
155
|
-
|
|
156
|
+
emits('page-loaded');
|
|
156
157
|
|
|
157
158
|
|
|
158
159
|
// route.meta.title.en = product.value.name
|
|
@@ -48,11 +48,12 @@
|
|
|
48
48
|
</div>
|
|
49
49
|
|
|
50
50
|
<div class="z-index-3 bg-white radius-tl-big radius-tr-big">
|
|
51
|
-
<
|
|
51
|
+
<slot></slot>
|
|
52
|
+
<div class=" z-index-3 radius-tl-big radius-tr-big">
|
|
52
53
|
<BlockSearch
|
|
53
54
|
@search="updateSearch"
|
|
54
55
|
placeholder="Enter product name"
|
|
55
|
-
class="bg-light h-4r"
|
|
56
|
+
class="bg-light mn-b-thin h-4r"
|
|
56
57
|
/>
|
|
57
58
|
</div>
|
|
58
59
|
<Feed
|
|
@@ -82,7 +83,7 @@
|
|
|
82
83
|
v-slot="{
|
|
83
84
|
items
|
|
84
85
|
}"
|
|
85
|
-
class="cols-4 rows-1
|
|
86
|
+
class="cols-4 rows-1 gap-thin"
|
|
86
87
|
|
|
87
88
|
>
|
|
88
89
|
<router-link
|
|
@@ -33,13 +33,13 @@ const controllerFactory = (db) => {
|
|
|
33
33
|
];
|
|
34
34
|
|
|
35
35
|
try {
|
|
36
|
-
const spots = await
|
|
36
|
+
const spots = await Spot.aggregate(stages);
|
|
37
37
|
|
|
38
|
-
if (!
|
|
38
|
+
if (!spots) {
|
|
39
39
|
return res.status(404).send({ errorCode: "SPOTS_NOT_FOUND", message: "Spots not found." });
|
|
40
40
|
}
|
|
41
41
|
|
|
42
|
-
res.status(200).send(
|
|
42
|
+
res.status(200).send(spots);
|
|
43
43
|
|
|
44
44
|
} catch (err) {
|
|
45
45
|
console.log(err);
|
|
@@ -60,19 +60,6 @@ const controllerFactory = (db) => {
|
|
|
60
60
|
});
|
|
61
61
|
};
|
|
62
62
|
|
|
63
|
-
const readOld = (req, res) => {
|
|
64
|
-
Spot.find({ organization: req.params._id })
|
|
65
|
-
.then(spots => {
|
|
66
|
-
if (!spots) {
|
|
67
|
-
return res.status(404).send({ message: "Spots not found" });
|
|
68
|
-
}
|
|
69
|
-
res.send(spots);
|
|
70
|
-
})
|
|
71
|
-
.catch(err => {
|
|
72
|
-
res.status(500).send({ message: err.message });
|
|
73
|
-
});
|
|
74
|
-
};
|
|
75
|
-
|
|
76
63
|
const create = async (req, res) => {
|
|
77
64
|
try {
|
|
78
65
|
const newSpot = new Spot({
|
|
@@ -117,7 +104,6 @@ const controllerFactory = (db) => {
|
|
|
117
104
|
return {
|
|
118
105
|
read,
|
|
119
106
|
readOne,
|
|
120
|
-
readOld,
|
|
121
107
|
create,
|
|
122
108
|
update,
|
|
123
109
|
delete: deleteSpot
|
|
@@ -5,10 +5,7 @@ module.exports = function(app, db) {
|
|
|
5
5
|
const controller = controllerFactory(db);
|
|
6
6
|
|
|
7
7
|
app.get("/api/spots", controller.read);
|
|
8
|
-
|
|
9
|
-
// Get organization spots by _id
|
|
10
|
-
app.get("/api/spots/:_id", controller.readOld);
|
|
11
|
-
|
|
8
|
+
|
|
12
9
|
// Get spot by _id
|
|
13
10
|
app.get("/api/spots/get/:_id", controller.readOne);
|
|
14
11
|
|
|
@@ -46,19 +46,11 @@ const actions = {
|
|
|
46
46
|
setError(error);
|
|
47
47
|
}
|
|
48
48
|
},
|
|
49
|
-
async read(
|
|
49
|
+
async read(options) {
|
|
50
50
|
try {
|
|
51
|
-
|
|
52
|
-
|
|
53
|
-
|
|
54
|
-
return response.data;
|
|
55
|
-
}
|
|
56
|
-
|
|
57
|
-
if (typeof organization === 'object') {
|
|
58
|
-
const response = await $axios.get(`/api/spots`, { organization });
|
|
59
|
-
state.spots = response.data;
|
|
60
|
-
return response.data;
|
|
61
|
-
}
|
|
51
|
+
const response = await $axios.get(`/api/spots`, { params: options });
|
|
52
|
+
state.spots = response.data;
|
|
53
|
+
return response.data;
|
|
62
54
|
} catch (error) {
|
|
63
55
|
setError(error);
|
|
64
56
|
}
|
|
@@ -13,6 +13,7 @@ body {
|
|
|
13
13
|
.hover-bg-white {&:hover {background: rgb(var(--white), 1);; } }
|
|
14
14
|
.hover-bg-black {&:hover {background: rgb(var(--black), 1);; } }
|
|
15
15
|
.hover-bg-light {&:hover {background: rgb(var(--light), 1);; } }
|
|
16
|
+
.hover-bg-dark {&:hover {background: rgb(var(--dark), 1);; } }
|
|
16
17
|
|
|
17
18
|
|
|
18
19
|
.hover-fill-main {&:hover {fill: rgb(var(--main)); } }
|
|
@@ -1 +0,0 @@
|
|
|
1
|
-
{"version":3,"file":"Button.vue.js","sources":["../../../../../src/components/Button/Button.vue"],"sourcesContent":["<script setup>\n\timport { ref } from 'vue'\n\n\timport Loader from '@martyrs/src/components/Loader/Loader.vue'\n\n\tconst props = defineProps({\n\t\tsubmit: {\n\t\t\ttype: Function,\n\t\t\tdefault: async () => { console.log('Button click.') }\n\t\t},\n\t\ttext: {\n\t\t\ttype: Object,\n\t\t\tdefault: (textComponent) => {\n\t\t\t\treturn textComponent = {\n\t\t\t\t\t...textComponent.text,\n\t\t\t\t\tsuccess: '✔',\n\t\t\t\t\terror: '✖'\n\t\t\t\t}\n\t\t\t}\n\t\t},\n\t\tcounter: {\n\t type: Object\n\t },\n\t\tcallback: {\n\t\t\ttype: Function,\n\t\t\tdefault: async () => { console.log('Button callback.') }\n\t\t},\n\t\tcallbackDelay: {\n\t\t\ttype: Number,\n\t\t\tdefault: 750\n\t\t},\n\t\tshowSucces: {\n\t\t\ttype: Boolean,\n\t\t\tdefault: true\n\t\t},\n\t\tshowLoader: {\n\t\t\ttype: Boolean,\n\t\t\tdefault: true\n\t\t},\n\t\tvalidation: {\n\t\t\ttype: Boolean,\n\t\t\tdefault: false\n\t\t},\n\t})\t\n\n\tconst emits = defineEmits(['error'])\n\n\tconst button = ref(null);\n\tconst error = ref(null);\n\tconst loading = ref(false);\n\tconst finished = ref(false);\n\n\tasync function Submit() {\n\t\t\tconsole.log('click')\n\t\t\t\n\t button.value.style['pointer-events'] = 'none';\n\t error.value = null;\n\t loading.value = true;\n\n\t // Функция для сброса состояния кнопки.\n\t const resetButton = () => {\n if (button.value) {\n button.value.classList.replace('bg-second', 'bg-main');\n button.value.style.pointerEvents = 'auto';\n loading.value = false;\n finished.value = false;\n error.value = null;\n }\n\t };\n\n\t try {\n await props.submit();\n\n button.value.classList.replace('bg-main', 'bg-second');\n\n loading.value = false;\n\n // Используем функцию сброса состояния кнопки здесь.\n if (props.showSucces) { \n\t\t\t\t\tfinished.value = true;\n setTimeout(resetButton, 500);\n } else {\n resetButton();\n }\n\n // Если есть callback, мы также установим таймер для его вызова.\n if (props.callback) setTimeout(() => props.callback(), props.callbackDelay);\n\n\t } catch (err) {\n \t\temits('error',err)\n // Если возникла ошибка, мы изменяем стили и устанавливаем сообщение об ошибке.\n button.value.classList.replace('bg-main', 'bg-fourth-nano');\n error.value = props.error;\n \n // После задержки снова сбрасываем состояние кнопки.\n setTimeout(() => {\n resetButton();\n // Так как класс кнопки был изменен, вернем его в исходное состояние.\n button.value.classList.replace('bg-fourth-nano', 'bg-main');\n }, 1330);\n\t }\n\t}\n\n</script>\n\n<template>\n\t<button @click.stop=\"Submit\" :disabled=\"validation\" ref=\"button\" class=\"button\">\n\t\t<transition name=\"FromTop\" >\n\t\t\t<!-- Slot -->\n\t\t\t<template v-if=\"!loading && !error && !finished || !showLoader\"><slot></slot></template>\n\t\t\t<!-- Loading Circle Animation -->\n\t\t\t<template v-else-if=\"loading && !error && showLoader\"><Loader class=\"pos-relative pos-t-0 pos-l-0 loading\"/></template>\n\t\t\t<!-- <Loader v-else-if=\"loading && !error && showLoader\"/> -->\n\t\t\t<!-- Success -->\n\t\t\t<span v-else-if=\"finished && showSucces\" class=\"t-semi loading t-black\">{{text.success}}</span>\n\t\t\t<!-- Error if not finished -->\n\t\t\t<span v-else-if=\"error\" class=\"error\">{{ error }}</span>\n\t\t</transition>\n\t\t<!-- Counter -->\n\t\t<p v-if=\"counter\" class=\"button-counter\">{{counter}}</p> \n\n\t</button> \n</template>\n\n\n<style lang=\"scss\">\n\t.FromTop-enter-active,\n\t.FromTop-leave-active {\n\t\ttransform: translateY(0);\n\t\topacity: 1;\n\t\ttransition: all 0.5s ease; \n\t\t\n\t}\n\t.FromTop-enter-from,\n\t.FromTop-leave-to {\n\t\tposition: absolute;\n\t\ttransform: translateY(-1rem);\n\t\topacity: 0;\n\t\ttransition: all 0.5s ease;\n\t}\n\n\tbutton[disabled] {\n\t\topacity: 0.75 !important;\n\t \tpointer-events: none !important;\n\t \tcursor: default !important;\n\t \tcolor: rgba(var(--black), 0.5) !important;\n\t\tbackground: rgba(var(--grey), 1) !important; \n\t}\n\n\t.button {\n\t\tdisplay: flex;\n\n\t\tpadding: 0.75rem 1.5rem;\n\t\tborder-radius: 3rem;\n\n\t\ttransform: scale(1);\n\t\topacity: 1;\n\n\t\talign-items: center;\n\t\tjustify-content: center;\n\t\t\n\t\tcolor: black;\n\t\ttext-align: center;\n\t\ttext-transform: uppercase;\n\t\tfont-size: 1rem;\n\t\tletter-spacing: 5%;\n\n\t\ttransition: all 0.33s ease;\n\t \n\t\t&:hover {\n\t\t\tcursor: pointer;\n\t\t\topacity: 0.9;\n\t\t}\n\n\t\t&:active {\n\t\t\ttransform: scale(0.95);\n\t\t}\n\n\t\t&-small {\n\t\t\tpadding: 0.5rem 0.75rem;\n\t\t\tborder-radius: 0.5rem;\n\t\t\theight: fit-content;\n\t\t}\n\n\t\t.button-counter {\n\t\t\tposition: absolute;\n\t\t\tright: -8px;\n\t bottom: -8px;\n\t background: yellow;\n\t height: 16px;\n\t border-radius: 16px;\n\t width: 16px;\n\t font-weight: 500;\n\t text-align: center;\n\t line-height: 16px;\n\t font-size: 10px;\n\t\t}\n\t}\n</style>"],"names":[],"mappings":";;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;AAKC,UAAM,QAAQ;AAwCd,UAAM,QAAQ;AAEd,UAAM,SAAS,IAAI,IAAI;AACvB,UAAM,QAAQ,IAAI,IAAI;AACtB,UAAM,UAAU,IAAI,KAAK;AACzB,UAAM,WAAW,IAAI,KAAK;AAE1B,mBAAe,SAAS;AACtB,cAAQ,IAAI,OAAO;AAEjB,aAAO,MAAM,MAAM,gBAAgB,IAAI;AACvC,YAAM,QAAQ;AACd,cAAQ,QAAQ;AAGhB,YAAM,cAAc,MAAM;AACvB,YAAI,OAAO,OAAO;AAChB,iBAAO,MAAM,UAAU,QAAQ,aAAa,SAAS;AACrD,iBAAO,MAAM,MAAM,gBAAgB;AACnC,kBAAQ,QAAQ;AAChB,mBAAS,QAAQ;AACjB,gBAAM,QAAQ;AAAA,QACxB;AAAA,MACM;AAED,UAAI;AACD,cAAM,MAAM,OAAQ;AAEpB,eAAO,MAAM,UAAU,QAAQ,WAAW,WAAW;AAErD,gBAAQ,QAAQ;AAGhB,YAAI,MAAM,YAAY;AACzB,mBAAS,QAAQ;AACZ,qBAAW,aAAa,GAAG;AAAA,QACrC,OAAe;AACL,sBAAa;AAAA,QACvB;AAGQ,YAAI,MAAM,SAAU,YAAW,MAAM,MAAM,SAAU,GAAE,MAAM,aAAa;AAAA,MAE5E,SAAQ,KAAK;AACb,cAAM,SAAQ,GAAG;AAEf,eAAO,MAAM,UAAU,QAAQ,WAAW,gBAAgB;AAC1D,cAAM,QAAQ,MAAM;AAGpB,mBAAW,MAAM;AACf,sBAAa;AAEb,iBAAO,MAAM,UAAU,QAAQ,kBAAkB,SAAS;AAAA,QAC3D,GAAE,IAAI;AAAA,MACf;AAAA,IACA;;;;;;;;;;;;;;;;;;;;;;;"}
|
|
@@ -1 +0,0 @@
|
|
|
1
|
-
{"version":3,"file":"Chips.vue.cjs","sources":[],"sourcesContent":[],"names":[],"mappings":";;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;"}
|
|
@@ -1 +0,0 @@
|
|
|
1
|
-
{"version":3,"file":"Chips.vue.js","sources":[],"sourcesContent":[],"names":[],"mappings":";;;;;;;;;;;;;;;;;;;;;;;;;;;;;"}
|
|
@@ -1 +0,0 @@
|
|
|
1
|
-
{"version":3,"file":"Menu.vue2.cjs","sources":[],"sourcesContent":[],"names":[],"mappings":";;;;;;;;;;;;;;;;"}
|
|
@@ -1 +0,0 @@
|
|
|
1
|
-
{"version":3,"file":"Menu.vue2.js","sources":[],"sourcesContent":[],"names":[],"mappings":";;;;;;;;;;;;;"}
|
|
@@ -1 +0,0 @@
|
|
|
1
|
-
{"version":3,"file":"Popup.vue2.cjs","sources":["../../../../../src/components/Popup/Popup.vue"],"sourcesContent":["<template>\n\t\t<transition name=\"moveFromTop\">\n\t\t\t<teleport to=\"body\" v-if=\"isPopupOpen\">\n\t\t\t\t<div v-if=\"isPopupOpen\" key=\"popup-content\" class=\"pd-small z-index-6 popup-wrapper\"\n\t\t\t\t\t:class=\"{\n \t\t\t\t\t'pd-t-extra': MOBILE_APP === 'ios', \n\t\t\t\t\t}\"\n\t\t\t\t>\n\n\t\t\t\t\t<transition name=\"TransitionTranslateY\" mode=\"out-in\">\n\t\t\t\t\t\t<section class=\"h-max-100 o-y-scroll pos-relative z-index-4\" v-bind=\"$attrs\" :class=\"$attrs.class\">\n\t\t\t\t\t\t\t\t<h4 v-if=\"title\" class=\"mn-b-small\">{{title}}</h4>\n\t\t\t\t\t\t\t\t<IconCross :fill=\"'rgb(var(--white))'\" @click=\"closePopup()\" class=\"cursor-pointer bg-second pd-micro radius-extra pos-absolute pos-t-0 pos-r-0 mn-t-semi mn-r-semi hover-scale-1 i-medium z-index-5\"/>\n\t\t\t\t\t\t\t\t<slot></slot>\n\t\t\t\t\t\t</section> \n\t\t\t\t\t</transition>\n\n\t\t\t\t\t<div \n\t\t\t\t\t\t@click=\"closePopup()\" \n\t\t\t\t :class=\"{'active':isPopupOpen === true}\" \n\t\t\t\t class=\"color-overlay z-index-3\">\n\t\t\t\t\t</div>\n\n\t\t\t\t</div>\n\t\t</teleport>\n\t</transition>\n</template>\n\n<script setup>\nimport { computed, watch, onMounted, ref, nextTick } from 'vue';\n// Import libs\nimport { useRoute, useRouter } from 'vue-router'\nimport { useI18n } from 'vue-i18n'\n// Icons\nimport IconCross from '@martyrs/src/modules/icons/navigation/IconCross.vue';\n// Define props\nconst props = defineProps({\n isPopupOpen: {\n \ttype: Boolean,\n\t default: false\n },\n style: String,\n title: String,\n});\nconst emits = defineEmits(['close-popup'])\n\nfunction closePopup() {\n emits(\"close-popup\");\n} \n\nwatch(() => props.isPopupOpen, (newVal) => {\n if (newVal) {\n document.body.classList.add('no-scroll');\n } else {\n document.body.classList.remove('no-scroll');\n }\n});\n\n// Accessing router and store\nconst route = useRoute()\nconst router = useRouter()\n// Localization\nconst text = {\n \tmessages: {\n\t en: {},\n\t ru: {}\n\t}\n}\nconst { t } = useI18n(text)\n</script>\n\n<style lang=\"scss\">\n\t.no-scroll {\n\t overflow: hidden;\n\t}\n\n\t.popup-wrapper {\n\t\tdisplay: flex;\n\t\tposition: fixed;\n\n\t\talign-items: center;\n\t\tjustify-content: center;\n\n\t\twidth: 100%;\n\t\theight: 100%;\n\n\t\tleft: 0;\n\t\ttop: 0;\n\n\t\tz-index: 40;\n\n\t\t.popup {\n\t\t\tposition: absolute;\n\t\t\theight: auto;\n\t\t\tpadding: 2rem;\n\t\t\tmin-width: 24rem;\n\t\t\tborder-radius: 2rem;\n\t\t\toverflow: hidden;\n\n\t\t\tcolor: white;\n\t\t\tbackground: black;\n\n\t\t\tz-index: 40;\n\t\t}\n\t}\n\n\t.color-overlay {\n\t\tdisplay: block;\n\t\tposition: fixed;\n\n\t\tleft: 0;\n\t\ttop: 0;\n\n\t\twidth: 100%;\n\t\theight: 100%;\n\n\t\tbackground: rgba(0,0,0,0.0);\n\t\tpointer-events: none;\n\n\t\ttransform: scale(1.5);\n\n\t\ttransition: all 0.5s cubic-bezier(.31,.79,.24,.92);\n\n\t\t&.active {\n\t\t\tbackground: rgba(#000,0.25);\n\t\t\tpointer-events: all;\n\t\t}\n\t}\n</style>\n"],"names":["watch","useRoute","useRouter","useI18n"],"mappings":";;;;;;;;;;;;;;;;;;;;;;;AAoCA,UAAM,QAAQ;AAQd,UAAM,QAAQ;AAEd,aAAS,aAAa;AACpB,YAAM,aAAa;AAAA,IACrB;AAEAA,QAAK,MAAC,MAAM,MAAM,aAAa,CAAC,WAAW;AACzC,UAAI,QAAQ;AACV,iBAAS,KAAK,UAAU,IAAI,WAAW;AAAA,MAC3C,OAAS;AACL,iBAAS,KAAK,UAAU,OAAO,WAAW;AAAA,MAC9C;AAAA,IACA,CAAC;AAGaC,cAAQ,SAAA;AACPC,cAAS,UAAA;AAExB,UAAM,OAAO;AAAA,MACV,UAAU;AAAA,QACR,IAAI,CAAE;AAAA,QACN,IAAI,CAAA;AAAA,MACT;AAAA,IACA;AACA,UAAM,EAAE,EAAC,IAAKC,QAAAA,QAAQ,IAAI;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;"}
|
|
@@ -1 +0,0 @@
|
|
|
1
|
-
{"version":3,"file":"Tab.vue.js","sources":["../../../../../src/components/Tab/Tab.vue"],"sourcesContent":["<template>\n <div class=\"flex-nowrap flex-v-center flex pos-relative\">\n <button \n v-for=\"(tab, index) in tabs\" \n :key=\"index\" \n @click=\"handleTabClick(index, tab)\" \n class=\"z-index-1 t-center cursor-pointer\"\n :style=\"isSelected(index, tab) ? 'background: rgb(var(--main)) !important' : ''\"\n :class=\"[\n isSelected(index, tab) ? 'bg-main' : '',\n tabClass ? tabClass : 'pd-small pd-r-medium pd-l-medium w-max pd-small radius-small'\n ]\"\n >\n {{tab.name || tab.label}}\n </button>\n </div>\n</template>\n\n<script setup>\nimport { ref, computed, watch } from 'vue'\n\nconst emit = defineEmits(['update:selected', 'tab-click']);\n\nconst props = defineProps({\n tabs: Array,\n tabClass: String,\n selected: [String, Number],\n modelValue: [String, Number],\n callback: Function\n})\n\nconst selectedTab = ref(0)\n\n// Handle both v-model and selected prop for backward compatibility\nconst updateSelectedIndex = () => {\n if (props.modelValue !== undefined) {\n const selectedIndex = props.tabs.findIndex(tab => tab.value === props.modelValue)\n if (selectedIndex !== -1) {\n selectedTab.value = selectedIndex\n }\n } else if (props.selected !== undefined) {\n const selectedIndex = props.tabs.findIndex(tab => tab.value === props.selected)\n if (selectedIndex !== -1) {\n selectedTab.value = selectedIndex\n }\n }\n}\n\n// Initial setup\nupdateSelectedIndex()\n\n// Watch for changes in selected or modelValue props\nwatch(() => props.selected, updateSelectedIndex)\nwatch(() => props.modelValue, updateSelectedIndex)\n\n// Check if tab is selected\nconst isSelected = (index, tab) => {\n if (props.modelValue !== undefined) {\n return tab.value === props.modelValue\n } else if (props.selected !== undefined) {\n return tab.value === props.selected\n }\n return index === selectedTab.value\n}\n\n// Handle tab click\nfunction handleTabClick(index, tab) {\n selectedTab.value = index\n \n // Emit both events for flexibility\n emit('update:selected', tab.value)\n emit('tab-click', { index, tab })\n \n // For v-model support\n if (props.modelValue !== undefined) {\n emit('update:modelValue', tab.value)\n }\n \n // Call callback if provided\n if (props.callback) props.callback(tab)\n}\n</script>\n\n<style lang=\"scss\">\n.tab-selector {\n position: absolute;\n width: 50%;\n height: 100%;\n left: 0;\n top: 0;\n z-index: 0;\n transition: left 0.3s cubic-bezier(0.4, 0, 0.2, 1);\n}\n</style>"],"names":[],"mappings":";;;;;;;;;;;;;;;AAqBA,UAAM,OAAO;AAEb,UAAM,QAAQ;AAQd,UAAM,cAAc,IAAI,CAAC;AAGzB,UAAM,sBAAsB,MAAM;AAChC,UAAI,MAAM,eAAe,QAAW;AAClC,cAAM,gBAAgB,MAAM,KAAK,UAAU,SAAO,IAAI,UAAU,MAAM,UAAU;AAChF,YAAI,kBAAkB,IAAI;AACxB,sBAAY,QAAQ;AAAA,QAC1B;AAAA,MACA,WAAa,MAAM,aAAa,QAAW;AACvC,cAAM,gBAAgB,MAAM,KAAK,UAAU,SAAO,IAAI,UAAU,MAAM,QAAQ;AAC9E,YAAI,kBAAkB,IAAI;AACxB,sBAAY,QAAQ;AAAA,QAC1B;AAAA,MACA;AAAA,IACA;AAGA,wBAAmB;AAGnB,UAAM,MAAM,MAAM,UAAU,mBAAmB;AAC/C,UAAM,MAAM,MAAM,YAAY,mBAAmB;AAGjD,UAAM,aAAa,CAAC,OAAO,QAAQ;AACjC,UAAI,MAAM,eAAe,QAAW;AAClC,eAAO,IAAI,UAAU,MAAM;AAAA,MAC/B,WAAa,MAAM,aAAa,QAAW;AACvC,eAAO,IAAI,UAAU,MAAM;AAAA,MAC/B;AACE,aAAO,UAAU,YAAY;AAAA,IAC/B;AAGA,aAAS,eAAe,OAAO,KAAK;AAClC,kBAAY,QAAQ;AAGpB,WAAK,mBAAmB,IAAI,KAAK;AACjC,WAAK,aAAa,EAAE,OAAO,IAAK,CAAA;AAGhC,UAAI,MAAM,eAAe,QAAW;AAClC,aAAK,qBAAqB,IAAI,KAAK;AAAA,MACvC;AAGE,UAAI,MAAM,SAAU,OAAM,SAAS,GAAG;AAAA,IACxC;;;;;;;;;;;;;;;;;;"}
|
|
@@ -1 +0,0 @@
|
|
|
1
|
-
{"version":3,"file":"Tooltip.vue.js","sources":["../../../../../src/components/Tooltip/Tooltip.vue"],"sourcesContent":["<template>\n <div class=\"cursor-pointer tooltip-container\" @mouseover=\"showTooltip\" @mouseleave=\"hideTooltip\">\n <slot></slot>\n <div class=\"tooltip-content\" :style=\"tooltipStyle\">\n {{ text }}\n </div>\n </div>\n</template>\n\n<script setup>\nimport { ref, reactive } from 'vue';\n\nconst props = defineProps({\n text: {\n type: String,\n required: true\n }\n});\n\nconst visible = ref(false);\n\nconst tooltipStyle = reactive({\n position: 'absolute',\n width: 'max-content',\n zIndex: 1000,\n background: '#333',\n color: '#fff',\n padding: '5px 10px',\n borderRadius: '3px',\n fontSize: '14px',\n display: 'none',\n});\n\nfunction showTooltip(event) {\n visible.value = true;\n tooltipStyle.left = `${(event.clientX / 100) + 10 }px`;\n tooltipStyle.top = `${(event.clientY / 100) + 10 }px`;\n tooltipStyle.display = 'block';\n}\n\nfunction hideTooltip() {\n visible.value = false;\n tooltipStyle.display = 'none';\n}\n</script>\n\n<style >\n.tooltip-container {\n position: relative;\n display: inline-block;\n}\n\n.tooltip-content {\n pointer-events: none;\n}\n</style>"],"names":[],"mappings":";;;;;;;;;;;AAmBA,UAAM,UAAU,IAAI,KAAK;AAEzB,UAAM,eAAe,SAAS;AAAA,MAC5B,UAAU;AAAA,MACV,OAAO;AAAA,MACP,QAAQ;AAAA,MACR,YAAY;AAAA,MACZ,OAAO;AAAA,MACP,SAAS;AAAA,MACT,cAAc;AAAA,MACd,UAAU;AAAA,MACV,SAAS;AAAA,IACX,CAAC;AAED,aAAS,YAAY,OAAO;AAC1B,cAAQ,QAAQ;AAChB,mBAAa,OAAO,GAAI,MAAM,UAAU,MAAO,EAAE;AACjD,mBAAa,MAAM,GAAI,MAAM,UAAU,MAAO,EAAE;AAChD,mBAAa,UAAU;AAAA,IACzB;AAEA,aAAS,cAAc;AACrB,cAAQ,QAAQ;AAChB,mBAAa,UAAU;AAAA,IACzB;;;;;;;;;;;;;;;;"}
|
|
@@ -1,130 +0,0 @@
|
|
|
1
|
-
<template>
|
|
2
|
-
<section id="howtoget" class="cols-2 gap-thin">
|
|
3
|
-
<div class="pd-big bg-main radius-medium">
|
|
4
|
-
<h2 class="mn-b-small">{{ t('buyTokenTitle') }}</h2>
|
|
5
|
-
<p class="mn-b-semi p-big t-transp">{{ t('description') }}</p>
|
|
6
|
-
<h3 class="mn-b-small">{{ t('purchaseDetailsTitle') }}</h3>
|
|
7
|
-
<ol class="mn-b-big">
|
|
8
|
-
<li class="mn-b-small radius-small bg-black-transp-5 pd-small">{{ t('step1') }}</li>
|
|
9
|
-
<li class="mn-b-small radius-small bg-black-transp-5 pd-small">{{ t('step2') }}</li>
|
|
10
|
-
<li class="mn-b-small radius-small bg-black-transp-5 pd-small">{{ t('step3') }}</li>
|
|
11
|
-
<li class="mn-b-small radius-small bg-black-transp-5 pd-small">{{ t('step4') }}</li>
|
|
12
|
-
</ol>
|
|
13
|
-
|
|
14
|
-
|
|
15
|
-
<h4 class="mn-b-small">{{ t('privateRoundTitle') }}</h4>
|
|
16
|
-
|
|
17
|
-
{{ t('privateRoundText1') }}
|
|
18
|
-
<a>hello@weeder.delivery</a>
|
|
19
|
-
{{ t('privateRoundText2') }}
|
|
20
|
-
</div>
|
|
21
|
-
|
|
22
|
-
<div class="flex-column pd-big flex-nowrap flex h-100 bg-light radius-medium o-hidden coming-soon">
|
|
23
|
-
<div class="
|
|
24
|
-
w-100 h-100
|
|
25
|
-
rainbow
|
|
26
|
-
flex-v-center flex-h-center
|
|
27
|
-
flex-column flex
|
|
28
|
-
pd-big mn-b-medium
|
|
29
|
-
radius-medium o-hidden"
|
|
30
|
-
>
|
|
31
|
-
<img loading="lazy" class="mn-b-small" src="/logo/logo-disabled.png">
|
|
32
|
-
<p class="t-semi uppercase">{{ t('comingSoon') }}</p>
|
|
33
|
-
</div>
|
|
34
|
-
<p class="mn-b-small">
|
|
35
|
-
To add WDT, you need to install MetaMask. Please install it if you haven't already.
|
|
36
|
-
</p>
|
|
37
|
-
<ConnectMetamask class="w-100" />
|
|
38
|
-
</div>
|
|
39
|
-
</section>
|
|
40
|
-
</template>
|
|
41
|
-
|
|
42
|
-
<script setup>
|
|
43
|
-
import { useI18n } from 'vue-i18n';
|
|
44
|
-
|
|
45
|
-
import ConnectMetamask from '@martyrs/src/modules/wallet/views/components/elements/ConnectMetamask.vue'
|
|
46
|
-
|
|
47
|
-
const text = {
|
|
48
|
-
messages: {
|
|
49
|
-
en: {
|
|
50
|
-
howToBuyTitle: 'How To Buy WDT?',
|
|
51
|
-
description:
|
|
52
|
-
'Weeder Token is a revolutionary cryptocurrency designed for the cannabis industry. With Weeder Token, you can easily buy, sell and trade cannabis products around the world.',
|
|
53
|
-
purchaseDetailsTitle: 'Purchasing details:',
|
|
54
|
-
step1: 'Create a cryptocurrency wallet that supports ERC20 tokens.',
|
|
55
|
-
step2: 'Buy Ethereum (ETH) or any other supported cryptocurrency.',
|
|
56
|
-
step3: 'Transfer your ETH or other cryptocurrency to your wallet.',
|
|
57
|
-
step4: 'Visit our token sale platform (coming soon) and follow the instructions to purchase WDT tokens.',
|
|
58
|
-
privateRoundTitle: 'Interested in a private round?',
|
|
59
|
-
privateRoundText1: 'If you want to participate in a private round, please email us at',
|
|
60
|
-
privateRoundText2: 'and we will get back to you with more information.',
|
|
61
|
-
buyTokenTitle: 'Buy Weeder Token',
|
|
62
|
-
comingSoon: 'Here will be UI for exchange WDT',
|
|
63
|
-
},
|
|
64
|
-
ru: {
|
|
65
|
-
howToBuyTitle: 'Как купить WDT?',
|
|
66
|
-
description:
|
|
67
|
-
'Weeder Token - это революционная криптовалюта, разработанная для индустрии каннабиса. С Weeder Token вы можете легко покупать, продавать и обменивать продукты каннабиса по всему миру.',
|
|
68
|
-
purchaseDetailsTitle: 'Процесс покупки:',
|
|
69
|
-
step1: '1. Создайте криптовалютный кошелек, поддерживающий токены ERC20.',
|
|
70
|
-
step2: '2. Купите Ethereum (ETH) или другую поддерживаемую криптовалюту.',
|
|
71
|
-
step3: '3. Переведите свои ETH или другую криптовалюту на свой кошелек.',
|
|
72
|
-
step4: '4. Посетите нашу платформу продажи токенов (скоро будет доступна) и следуйте инструкциям для покупки токенов WDT.',
|
|
73
|
-
privateRoundTitle: 'Хотите участвовать в приватном раунде?',
|
|
74
|
-
privateRoundText1: 'Если вы хотите участвовать в приватном раунде, пожалуйста, напишите нам на почту',
|
|
75
|
-
privateRoundText2: 'и мы свяжемся с вами с дополнительной информацией.',
|
|
76
|
-
buyTokenTitle: 'Купить Weeder Token',
|
|
77
|
-
comingSoon: 'Здесь будет интерфейс для обмена WDT',
|
|
78
|
-
},
|
|
79
|
-
}
|
|
80
|
-
}
|
|
81
|
-
|
|
82
|
-
const { t } = useI18n(text);
|
|
83
|
-
</script>
|
|
84
|
-
|
|
85
|
-
<style lang="scss" scoped>
|
|
86
|
-
.weeder-token {
|
|
87
|
-
display: flex;
|
|
88
|
-
justify-content: space-between;
|
|
89
|
-
align-items: flex-start;
|
|
90
|
-
padding: 20px;
|
|
91
|
-
max-width: 800px;
|
|
92
|
-
margin: auto;
|
|
93
|
-
}
|
|
94
|
-
|
|
95
|
-
.content {
|
|
96
|
-
flex: 1;
|
|
97
|
-
margin-right: 20px;
|
|
98
|
-
}
|
|
99
|
-
|
|
100
|
-
.purchase-form {
|
|
101
|
-
flex: 1;
|
|
102
|
-
}
|
|
103
|
-
|
|
104
|
-
.rainbow {
|
|
105
|
-
position: relative;
|
|
106
|
-
z-index: 0;
|
|
107
|
-
padding: 2rem;
|
|
108
|
-
|
|
109
|
-
&::before {
|
|
110
|
-
content: '';
|
|
111
|
-
position: absolute;
|
|
112
|
-
z-index: -2;
|
|
113
|
-
left: -50%;
|
|
114
|
-
top: -50%;
|
|
115
|
-
width: 200%;
|
|
116
|
-
height: 200%;
|
|
117
|
-
background-color: #399953;
|
|
118
|
-
background-repeat: no-repeat;
|
|
119
|
-
background-size: 50% 50%, 50% 50%;
|
|
120
|
-
background-position: 0 0, 100% 0, 100% 100%, 0 100%;
|
|
121
|
-
background-image:
|
|
122
|
-
linear-gradient(#00ff88, #fff),
|
|
123
|
-
linear-gradient(#00ff88, #fff),
|
|
124
|
-
linear-gradient(white, white),
|
|
125
|
-
linear-gradient(white, #fff);
|
|
126
|
-
animation: rotate 4s linear infinite;
|
|
127
|
-
}
|
|
128
|
-
}
|
|
129
|
-
|
|
130
|
-
</style>
|