@ozdao/martyrs 0.2.561 → 0.2.563
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/{abac-DC2x92Pa.js → abac-DYoheWuc.js} +2 -1
- package/dist/{core.logger-VRHh-WUW.js → core.cache-DALYFDdy.js} +10 -59
- package/dist/core.logger-C3q8A9dl.js +51 -0
- package/dist/core.server.js +1 -1
- package/dist/{crud-DFFgLl09.js → crud-C7FSTUes.js} +2 -1
- package/dist/inventory.server.js +4 -3
- package/dist/{main-DQtUY5ma.js → main-CmjWiDVF.js} +2837 -2548
- package/dist/marketplace.server.js +389 -0
- package/dist/martyrs/src/components/Button/{Button.vue.js → Button.vue2.js} +3 -3
- package/dist/martyrs/src/components/Button/Button.vue2.js.map +1 -0
- package/dist/martyrs/src/components/Checkbox/Checkbox.vue.js +1 -1
- package/dist/martyrs/src/components/Checkbox/Checkbox.vue.js.map +1 -1
- package/dist/martyrs/src/components/FieldBig/FieldBig.vue.js +1 -1
- 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/Select/{Select.vue2.js → Select.vue.js} +2 -2
- package/dist/martyrs/src/components/Select/Select.vue.js.map +1 -0
- package/dist/martyrs/src/components/Spoiler/{Spoiler.vue.js → Spoiler.vue2.js} +2 -2
- package/dist/martyrs/src/components/Spoiler/Spoiler.vue2.js.map +1 -0
- package/dist/martyrs/src/modules/auth/views/components/pages/EnterPassword.vue.js +1 -1
- package/dist/martyrs/src/modules/auth/views/components/pages/Invite.vue.js +1 -1
- package/dist/martyrs/src/modules/auth/views/components/pages/Profile.vue.js +2 -2
- package/dist/martyrs/src/modules/auth/views/components/pages/ProfileEditAccount.vue.js +1 -1
- package/dist/martyrs/src/modules/auth/views/components/pages/ProfileEditProfile.vue.js +1 -1
- package/dist/martyrs/src/modules/auth/views/components/pages/ResetPassword.vue.js +1 -1
- package/dist/martyrs/src/modules/auth/views/components/pages/SignIn.vue.js +1 -1
- package/dist/martyrs/src/modules/auth/views/components/pages/SignUp.vue.js +1 -1
- package/dist/martyrs/src/modules/auth/views/components/sections/ProfileEditCredentials.vue.js +1 -1
- package/dist/martyrs/src/modules/community/components/layouts/Community.vue.js +1 -1
- package/dist/martyrs/src/modules/community/components/pages/BlogPost.vue.js +1 -1
- package/dist/martyrs/src/modules/community/components/pages/CreateBlogPost.vue.js +1 -1
- package/dist/martyrs/src/modules/core/views/components/blocks/CardHeader.vue.js +1 -1
- package/dist/martyrs/src/modules/core/views/components/blocks/PopupAuth.vue.js +1 -1
- package/dist/martyrs/src/modules/core/views/components/blocks/PopupDateSelector.vue.js +1 -1
- package/dist/martyrs/src/modules/core/views/components/layouts/Client.vue.js +3 -6
- package/dist/martyrs/src/modules/core/views/components/layouts/Client.vue.js.map +1 -1
- package/dist/martyrs/src/modules/core/views/components/partials/Header.vue.js +3 -3
- package/dist/martyrs/src/modules/core/views/components/partials/Header.vue.js.map +1 -1
- package/dist/martyrs/src/modules/core/views/components/partials/Navigation.vue.js +1 -1
- package/dist/martyrs/src/modules/core/views/components/partials/NavigationBar.vue.js +1 -1
- package/dist/martyrs/src/modules/core/views/components/sections/Filters.vue.js +59 -171
- package/dist/martyrs/src/modules/core/views/components/sections/Filters.vue.js.map +1 -1
- package/dist/martyrs/src/modules/core/views/components/sections/filters/FilterCheckbox.vue2.js +64 -0
- package/dist/martyrs/src/modules/core/views/components/sections/filters/FilterCheckbox.vue2.js.map +1 -0
- package/dist/martyrs/src/modules/core/views/components/sections/filters/FilterDateRange.vue2.js +160 -0
- package/dist/martyrs/src/modules/core/views/components/sections/filters/FilterDateRange.vue2.js.map +1 -0
- package/dist/martyrs/src/modules/core/views/components/sections/filters/FilterOptions.vue.js +46 -0
- package/dist/martyrs/src/modules/core/views/components/sections/filters/FilterOptions.vue.js.map +1 -0
- package/dist/martyrs/src/modules/core/views/components/sections/filters/FilterRange.vue.js +105 -0
- package/dist/martyrs/src/modules/core/views/components/sections/filters/FilterRange.vue.js.map +1 -0
- package/dist/martyrs/src/modules/core/views/components/sections/filters/FiltersGroup.vue.js +166 -0
- package/dist/martyrs/src/modules/core/views/components/sections/filters/FiltersGroup.vue.js.map +1 -0
- package/dist/martyrs/src/modules/core/views/utils/vue-app-renderer.js +4 -0
- package/dist/martyrs/src/modules/core/views/utils/vue-app-renderer.js.map +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.js +1 -1
- package/dist/martyrs/src/modules/events/components/pages/EditEvent.vue.js +1 -1
- package/dist/martyrs/src/modules/events/components/pages/EditEventTickets.vue.js +1 -1
- package/dist/martyrs/src/modules/events/components/pages/Event.vue.js +2 -0
- package/dist/martyrs/src/modules/events/components/pages/Event.vue.js.map +1 -1
- package/dist/martyrs/src/modules/events/components/sections/EditTickets.vue.js +1 -1
- package/dist/martyrs/src/modules/gallery/components/sections/BackofficeGallery.vue.js +2 -2
- package/dist/martyrs/src/modules/inventory/components/forms/AdjustmentForm.vue.js +2 -2
- package/dist/martyrs/src/modules/inventory/components/forms/ColumnSettingsMenu.vue.js +1 -1
- package/dist/martyrs/src/modules/inventory/components/forms/HistoryView.vue.js +1 -1
- package/dist/martyrs/src/modules/inventory/components/forms/StockAlertsForm.vue.js +2 -2
- package/dist/martyrs/src/modules/inventory/components/pages/InventoryEdit.vue.js +2 -2
- package/dist/martyrs/src/modules/landing/components/sections/SectionFeatures.vue.js +1 -1
- package/dist/martyrs/src/modules/landing/components/sections/SectionFeatures.vue.js.map +1 -1
- package/dist/martyrs/src/modules/landing/components/sections/SectionGuide.vue.js +1 -1
- package/dist/martyrs/src/modules/marketplace/marketplace.client.js +5 -9
- package/dist/martyrs/src/modules/marketplace/marketplace.client.js.map +1 -1
- package/dist/martyrs/src/modules/marketplace/views/components/pages/Marketplace.vue.js +242 -0
- package/dist/martyrs/src/modules/marketplace/views/components/pages/Marketplace.vue.js.map +1 -0
- package/dist/martyrs/src/modules/marketplace/views/router/marketplace.router.js +39 -0
- package/dist/martyrs/src/modules/marketplace/views/router/marketplace.router.js.map +1 -0
- package/dist/martyrs/src/modules/marketplace/views/store/marketplace.js +65 -2
- package/dist/martyrs/src/modules/marketplace/views/store/marketplace.js.map +1 -1
- package/dist/martyrs/src/modules/music/components/cards/AlbumCard.vue.js +1 -1
- package/dist/martyrs/src/modules/music/components/cards/ArtistCardSmall.vue.js +1 -1
- package/dist/martyrs/src/modules/music/components/cards/PlaylistCard.vue.js +1 -1
- package/dist/martyrs/src/modules/music/components/cards/TrackListCard.vue.js +1 -1
- package/dist/martyrs/src/modules/music/components/forms/AlbumForm.vue.js +2 -2
- package/dist/martyrs/src/modules/music/components/forms/ArtistForm.vue.js +2 -2
- package/dist/martyrs/src/modules/music/components/forms/PlaylistForm.vue.js +1 -1
- package/dist/martyrs/src/modules/music/components/forms/SearchForm.vue.js +1 -1
- package/dist/martyrs/src/modules/music/components/forms/TrackForm.vue.js +2 -2
- package/dist/martyrs/src/modules/music/components/pages/Album.vue.js +1 -1
- package/dist/martyrs/src/modules/music/components/pages/Artist.vue.js +1 -1
- package/dist/martyrs/src/modules/music/components/pages/MusicLibrary.vue.js +1 -1
- package/dist/martyrs/src/modules/music/components/pages/Playlist.vue.js +1 -1
- package/dist/martyrs/src/modules/music/components/pages/SearchResults.vue.js +1 -1
- package/dist/martyrs/src/modules/music/components/pages/Track.vue.js +1 -1
- package/dist/martyrs/src/modules/music/components/pages/TrackCreate.vue.js +1 -1
- package/dist/martyrs/src/modules/music/components/player/MusicPlayer.vue.js +1 -1
- package/dist/martyrs/src/modules/orders/components/forms/FormApplicationDetails.vue.js +2 -2
- package/dist/martyrs/src/modules/orders/components/forms/FormCustomerDetails.vue.js +2 -2
- package/dist/martyrs/src/modules/orders/components/forms/FormSelectCustomer.vue.js +1 -1
- package/dist/martyrs/src/modules/orders/components/pages/OrderBackoffice.vue.js +2 -2
- package/dist/martyrs/src/modules/orders/components/pages/OrderCreate.vue.js +1 -1
- package/dist/martyrs/src/modules/orders/components/pages/OrderCreateBackoffice.vue.js +1 -1
- package/dist/martyrs/src/modules/orders/components/sections/ApplicationDetails.vue.js +1 -1
- package/dist/martyrs/src/modules/orders/components/sections/CustomerDetails.vue.js +1 -1
- package/dist/martyrs/src/modules/orders/components/sections/FormDelivery.vue.js +2 -0
- package/dist/martyrs/src/modules/orders/components/sections/FormDelivery.vue.js.map +1 -1
- package/dist/martyrs/src/modules/orders/components/sections/FormPayment.vue.js +1 -1
- package/dist/martyrs/src/modules/organizations/components/blocks/CardDepartment.vue.js +1 -1
- package/dist/martyrs/src/modules/organizations/components/blocks/CardOrganization.vue.js +4 -4
- package/dist/martyrs/src/modules/organizations/components/blocks/CardOrganization.vue.js.map +1 -1
- package/dist/martyrs/src/modules/organizations/components/elements/ButtonToggleMembership.vue.js +1 -1
- package/dist/martyrs/src/modules/organizations/components/forms/AddExistingMembersForm.vue.js +1 -1
- package/dist/martyrs/src/modules/organizations/components/forms/DepartmentForm.vue.js +2 -2
- package/dist/martyrs/src/modules/organizations/components/forms/InviteForm.vue.js +1 -1
- package/dist/martyrs/src/modules/organizations/components/pages/Department.vue.js +1 -1
- package/dist/martyrs/src/modules/organizations/components/pages/Organization.vue.js +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.js +2 -2
- package/dist/martyrs/src/modules/organizations/components/sections/Documents.vue.js +1 -1
- package/dist/martyrs/src/modules/organizations/components/sections/MembersAdd.vue.js +2 -2
- package/dist/martyrs/src/modules/organizations/components/sections/Organizations.vue.js +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.js +1 -1
- package/dist/martyrs/src/modules/pages/views/components/partials/SidebarPages.vue.js +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.js +4 -2
- package/dist/martyrs/src/modules/products/components/pages/CategoryEdit.vue.js.map +1 -1
- package/dist/martyrs/src/modules/products/components/pages/Product.vue.js +1 -1
- package/dist/martyrs/src/modules/products/components/pages/ProductEdit.vue.js +2 -2
- package/dist/martyrs/src/modules/products/components/pages/Products.vue.js +1 -1
- package/dist/martyrs/src/modules/products/components/sections/EditAttributes.vue.js +1 -1
- package/dist/martyrs/src/modules/products/components/sections/EditDiscounts.vue.js +2 -2
- package/dist/martyrs/src/modules/products/components/sections/EditVariants.vue.js +2 -2
- package/dist/martyrs/src/modules/products/components/sections/FilterProducts.vue.js +1 -1
- package/dist/martyrs/src/modules/products/components/sections/ProductConfigurator.vue.js +1 -1
- package/dist/martyrs/src/modules/products/components/sections/ProductsRecommended.vue.js +1 -1
- package/dist/martyrs/src/modules/products/components/sections/SectionProduct.vue.js +1 -1
- package/dist/martyrs/src/modules/rents/views/components/pages/Gant/GanttToolbar.vue.js +1 -1
- package/dist/martyrs/src/modules/reports/components/sections/FormReport.vue.js +2 -2
- package/dist/martyrs/src/modules/spots/components/blocks/SpotMemberModify.vue.js +1 -1
- package/dist/martyrs/src/modules/spots/components/layouts/Spots.vue.js +1 -1
- package/dist/martyrs/src/modules/spots/components/pages/Map.vue.js +1 -1
- package/dist/martyrs/src/modules/spots/components/pages/Spot.vue.js +1 -1
- package/dist/martyrs/src/modules/spots/components/pages/SpotEdit.vue.js +2 -2
- package/dist/martyrs/src/modules/spots/components/sections/WorktimeEdit.vue.js +2 -2
- package/dist/martyrs/src/modules/wallet/views/components/blocks/CryptoDeposit.vue.js +1 -1
- package/dist/martyrs/src/modules/wallet/views/components/pages/Wallet.vue.js +2 -2
- package/dist/martyrs.css +1 -1
- package/dist/martyrs.es.js +1 -1
- package/dist/music.server.js +4 -3
- package/dist/node_modules/.pnpm/qrcode@1.5.4/node_modules/qrcode/lib/core/utils.js +1 -1
- package/dist/node_modules/.pnpm/qrcode@1.5.4/node_modules/qrcode/lib/renderer/utils.js +1 -1
- package/dist/orders.server.js +2 -2
- package/dist/organizations.server.js +10 -215
- package/dist/products.server.js +4 -3
- package/dist/queryProcessorOrganizations-BB11WFpc.js +221 -0
- package/dist/rents.server.js +2 -1
- package/dist/style.css +10 -1
- package/dist/{web-Cyc6i_pv.js → web-cNKIl_cL.js} +1 -1
- package/package.json +1 -1
- package/src/components/Button/Button.vue +1 -1
- package/src/components/Checkbox/Checkbox.vue +1 -1
- package/src/modules/core/views/components/layouts/Client.vue +7 -11
- package/src/modules/core/views/components/partials/Header.vue +1 -1
- package/src/modules/core/views/components/sections/Filters.vue +47 -161
- package/src/modules/core/views/components/sections/filters/FilterCheckbox.vue +12 -31
- package/src/modules/core/views/components/sections/filters/FilterDateRange.vue +15 -15
- package/src/modules/core/views/components/sections/filters/FilterOptions.vue +12 -43
- package/src/modules/core/views/components/sections/filters/FilterRange.vue +59 -36
- package/src/modules/core/views/components/sections/filters/FiltersGroup.vue +177 -0
- package/src/modules/core/views/utils/vue-app-renderer.js +12 -0
- package/src/modules/landing/components/sections/SectionFeatures.vue +1 -1
- package/src/modules/marketplace/controllers/marketplace.controller.js +123 -0
- package/src/modules/marketplace/controllers/utils/lookupConfigs.js +130 -0
- package/src/modules/marketplace/controllers/utils/queryProcessorMarketplace.js +211 -0
- package/src/modules/marketplace/marketplace.client.js +3 -10
- package/src/modules/marketplace/marketplace.server.js +22 -0
- package/src/modules/marketplace/routes/marketplace.routes.js +34 -0
- package/src/modules/marketplace/views/components/pages/Marketplace.vue +273 -0
- package/src/modules/marketplace/views/router/marketplace.router.js +37 -30
- package/src/modules/marketplace/views/store/marketplace.js +74 -3
- package/src/modules/organizations/components/blocks/CardOrganization.vue +8 -8
- package/src/modules/organizations/controllers/organizations.controller.js +1 -1
- package/src/modules/organizations/controllers/utils/queryProcessorOrganizations.js +8 -1
- package/dist/martyrs/src/components/Button/Button.vue.js.map +0 -1
- package/dist/martyrs/src/components/Menu/Menu.vue2.js.map +0 -1
- package/dist/martyrs/src/components/Select/Select.vue2.js.map +0 -1
- package/dist/martyrs/src/components/Spoiler/Spoiler.vue.js.map +0 -1
- package/dist/martyrs/src/modules/marketplace/marketplace.router.js +0 -63
- package/dist/martyrs/src/modules/marketplace/marketplace.router.js.map +0 -1
- package/dist/martyrs/src/modules/marketplace/views/components/layouts/Marketplace.vue.js +0 -326
- package/dist/martyrs/src/modules/marketplace/views/components/layouts/Marketplace.vue.js.map +0 -1
- package/dist/martyrs/src/modules/marketplace/views/components/pages/Catalog.vue.js +0 -74
- package/dist/martyrs/src/modules/marketplace/views/components/pages/Catalog.vue.js.map +0 -1
- package/src/modules/core/views/components/sections/filters/FilterPrice.vue +0 -81
- package/src/modules/marketplace/marketplace.router.js +0 -66
- package/src/modules/marketplace/views/components/layouts/Marketplace.vue +0 -363
- package/src/modules/marketplace/views/components/pages/Catalog.vue +0 -73
|
@@ -0,0 +1,242 @@
|
|
|
1
|
+
import { ref, watch, createElementBlock, openBlock, createElementVNode, unref, createCommentVNode, Fragment, createTextVNode, toDisplayString, createVNode, renderList, withCtx, createBlock } from "vue";
|
|
2
|
+
import { useRoute, useRouter } from "vue-router";
|
|
3
|
+
import { useI18n } from "vue-i18n";
|
|
4
|
+
import _sfc_main$2 from "../../../../../components/Feed/Feed.vue.js";
|
|
5
|
+
import Filters from "../../../../core/views/components/sections/Filters.vue.js";
|
|
6
|
+
import _sfc_main$1 from "../../../../core/views/components/sections/filters/FiltersGroup.vue.js";
|
|
7
|
+
import Field from "../../../../../components/Field/Field.vue.js";
|
|
8
|
+
import _sfc_main$3 from "../../../../organizations/components/blocks/CardOrganization.vue.js";
|
|
9
|
+
import { useStore } from "../../../../core/views/store/core.store.js";
|
|
10
|
+
import { state, marketplaceStore } from "../../store/marketplace.js";
|
|
11
|
+
import { useGlobalMixins } from "../../../../core/views/mixins/mixins.js";
|
|
12
|
+
const _hoisted_1 = { class: "pos-relative" };
|
|
13
|
+
const _hoisted_2 = { class: "pd-medium mn-b-thin" };
|
|
14
|
+
const _hoisted_3 = { class: "" };
|
|
15
|
+
const _hoisted_4 = { class: "cols-2-1_3 br-1px br-solid br-light z-index-3 pos-relative" };
|
|
16
|
+
const _hoisted_5 = { class: "o-y-scroll br-r br-solid br-light pd-medium z-index-2 desktop-only h-100 pos-relative" };
|
|
17
|
+
const _hoisted_6 = { class: "w-100 o-y-scroll h-100" };
|
|
18
|
+
const _hoisted_7 = {
|
|
19
|
+
key: 0,
|
|
20
|
+
class: "mn-b-medium"
|
|
21
|
+
};
|
|
22
|
+
const _hoisted_8 = { class: "gap-micro" };
|
|
23
|
+
const _hoisted_9 = ["onClick"];
|
|
24
|
+
const _hoisted_10 = { class: "w-100 rows-1 pd-thin pos-relative o-hidden" };
|
|
25
|
+
const _hoisted_11 = { class: "mn-b-thin mobile-only" };
|
|
26
|
+
const _sfc_main = {
|
|
27
|
+
__name: "Marketplace",
|
|
28
|
+
setup(__props) {
|
|
29
|
+
const route = useRoute();
|
|
30
|
+
const router = useRouter();
|
|
31
|
+
const store = useStore();
|
|
32
|
+
const { returnCurrency } = useGlobalMixins();
|
|
33
|
+
const localPosition = ref({
|
|
34
|
+
city: null,
|
|
35
|
+
state: null,
|
|
36
|
+
country: null
|
|
37
|
+
});
|
|
38
|
+
const localLocation = ref(null);
|
|
39
|
+
const searchLocation = ref("");
|
|
40
|
+
if (route.params) {
|
|
41
|
+
let newState = {
|
|
42
|
+
country: denormalizeUrlParam(route.params.country),
|
|
43
|
+
state: denormalizeUrlParam(route.params.state),
|
|
44
|
+
city: denormalizeUrlParam(route.params.city)
|
|
45
|
+
};
|
|
46
|
+
localPosition.value = newState;
|
|
47
|
+
}
|
|
48
|
+
if (route.query) {
|
|
49
|
+
const query = route.query;
|
|
50
|
+
state.filter.selected.categories = query.categories ? query.categories.split(",") : [];
|
|
51
|
+
state.filter.selected.prices = query.prices ? query.prices.split(",") : [];
|
|
52
|
+
state.filter.selected.delivery = query.delivery ? query.delivery.split(",") : [];
|
|
53
|
+
}
|
|
54
|
+
if (route.query.sortParam) state.sort.param = route.query.sortParam;
|
|
55
|
+
if (route.query.sortOrder) state.sort.order = route.query.sortOrder;
|
|
56
|
+
function denormalizeUrlParam(param) {
|
|
57
|
+
return param.replace(/-/g, " ").replace(/\b\w/g, (l) => l.toUpperCase());
|
|
58
|
+
}
|
|
59
|
+
function normalizeUrlParam(param) {
|
|
60
|
+
return param.toLowerCase().replace(/ /g, "-").replace(/[^a-z0-9-]/g, "");
|
|
61
|
+
}
|
|
62
|
+
watch(() => state.sort, (newSortValue, oldSortValue) => {
|
|
63
|
+
let query = { ...route.query };
|
|
64
|
+
query.sortParam = newSortValue.param;
|
|
65
|
+
query.sortOrder = newSortValue.order;
|
|
66
|
+
router.replace({ query });
|
|
67
|
+
}, { deep: true });
|
|
68
|
+
watch(() => state.filter.selectedFilters, (newFilterValue, oldFilterValue) => {
|
|
69
|
+
const query = { ...route.query };
|
|
70
|
+
Object.keys(oldFilterValue).forEach((key) => {
|
|
71
|
+
if (query[key]) {
|
|
72
|
+
delete query[key];
|
|
73
|
+
}
|
|
74
|
+
});
|
|
75
|
+
const newQueryValues = Object.fromEntries(
|
|
76
|
+
Object.entries(newFilterValue).filter(([key, value]) => Array.isArray(value) && value.length > 0).map(([key, value]) => [key, value.join(",")])
|
|
77
|
+
);
|
|
78
|
+
delete query.options;
|
|
79
|
+
Object.assign(query, newQueryValues);
|
|
80
|
+
router.replace({ query });
|
|
81
|
+
}, { deep: true });
|
|
82
|
+
watch(() => store.core.state.position, (newPosition) => {
|
|
83
|
+
const currentRoute = { ...router.currentRoute.value };
|
|
84
|
+
let newParams = {
|
|
85
|
+
country: normalizeUrlParam(newPosition.country),
|
|
86
|
+
state: normalizeUrlParam(newPosition.state),
|
|
87
|
+
city: normalizeUrlParam(newPosition.city)
|
|
88
|
+
};
|
|
89
|
+
let newState = {
|
|
90
|
+
country: denormalizeUrlParam(newPosition.country),
|
|
91
|
+
state: denormalizeUrlParam(newPosition.state),
|
|
92
|
+
city: denormalizeUrlParam(newPosition.city)
|
|
93
|
+
};
|
|
94
|
+
localPosition.value = newState;
|
|
95
|
+
currentRoute.params = newParams;
|
|
96
|
+
router.replace(currentRoute);
|
|
97
|
+
}, { deep: true });
|
|
98
|
+
const text = {
|
|
99
|
+
locale: "en",
|
|
100
|
+
messages: {
|
|
101
|
+
en: {
|
|
102
|
+
meta: {
|
|
103
|
+
title: "Marketplace – Shop Our Wide Selection of Quality Weed for Delivery",
|
|
104
|
+
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."
|
|
105
|
+
}
|
|
106
|
+
},
|
|
107
|
+
ru: {
|
|
108
|
+
meta: {
|
|
109
|
+
title: "Маркетплейс – Выбирайте из нашего ассортимента качественной травки для доставки",
|
|
110
|
+
description: "Маркетплейс – Изучите наши продукты высокого качества и выбирайте из различных вариантов доставки. Закажите сейчас и получите свои любимые сорта на дом. Безопасно, быстро и надежно."
|
|
111
|
+
}
|
|
112
|
+
}
|
|
113
|
+
}
|
|
114
|
+
};
|
|
115
|
+
const { t } = useI18n(text);
|
|
116
|
+
return (_ctx, _cache) => {
|
|
117
|
+
return openBlock(), createElementBlock("div", _hoisted_1, [
|
|
118
|
+
createElementVNode("header", _hoisted_2, [
|
|
119
|
+
createElementVNode("h2", _hoisted_3, [
|
|
120
|
+
_cache[7] || (_cache[7] = createElementVNode("span", { class: "" }, "Weed Deliveries in ", -1)),
|
|
121
|
+
localPosition.value.city || localPosition.value.state || localPosition.value.country ? (openBlock(), createElementBlock("span", {
|
|
122
|
+
key: 0,
|
|
123
|
+
onClick: _cache[0] || (_cache[0] = (a) => {
|
|
124
|
+
unref(store).core.state.isOpenLocationPopup = true;
|
|
125
|
+
}),
|
|
126
|
+
class: "t-main t-semi cursor-pointer"
|
|
127
|
+
}, [
|
|
128
|
+
localPosition.value.city ? (openBlock(), createElementBlock(Fragment, { key: 0 }, [
|
|
129
|
+
createTextVNode(toDisplayString(localPosition.value.city) + ", ", 1)
|
|
130
|
+
], 64)) : createCommentVNode("", true),
|
|
131
|
+
localPosition.value.state ? (openBlock(), createElementBlock(Fragment, { key: 1 }, [
|
|
132
|
+
createTextVNode(toDisplayString(localPosition.value.state) + ", ", 1)
|
|
133
|
+
], 64)) : createCommentVNode("", true),
|
|
134
|
+
localPosition.value.country ? (openBlock(), createElementBlock(Fragment, { key: 2 }, [
|
|
135
|
+
createTextVNode(toDisplayString(localPosition.value.country), 1)
|
|
136
|
+
], 64)) : createCommentVNode("", true)
|
|
137
|
+
])) : (openBlock(), createElementBlock("span", {
|
|
138
|
+
key: 1,
|
|
139
|
+
onClick: _cache[1] || (_cache[1] = (a) => {
|
|
140
|
+
unref(store).core.state.isOpenLocationPopup = true;
|
|
141
|
+
}),
|
|
142
|
+
class: "t-main t-semi cursor-pointer"
|
|
143
|
+
}, "The World"))
|
|
144
|
+
])
|
|
145
|
+
]),
|
|
146
|
+
createElementVNode("div", _hoisted_4, [
|
|
147
|
+
createElementVNode("div", _hoisted_5, [
|
|
148
|
+
createElementVNode("div", _hoisted_6, [
|
|
149
|
+
!unref(route).params.country && !unref(route).params.state && !unref(route).params.city ? (openBlock(), createElementBlock("div", _hoisted_7, [
|
|
150
|
+
_cache[8] || (_cache[8] = createElementVNode("h4", { class: "mn-b-small" }, "Location", -1)),
|
|
151
|
+
createVNode(Field, {
|
|
152
|
+
modelValue: searchLocation.value,
|
|
153
|
+
"onUpdate:modelValue": _cache[2] || (_cache[2] = ($event) => searchLocation.value = $event),
|
|
154
|
+
placeholder: "Search location...",
|
|
155
|
+
type: "text",
|
|
156
|
+
class: "w-100 bg-light pd-small radius-small mn-b-small"
|
|
157
|
+
}, null, 8, ["modelValue"]),
|
|
158
|
+
createElementVNode("div", _hoisted_8, [
|
|
159
|
+
(openBlock(true), createElementBlock(Fragment, null, renderList(state.locationOptions, (location) => {
|
|
160
|
+
return openBlock(), createElementBlock("div", {
|
|
161
|
+
key: location.label,
|
|
162
|
+
onClick: ($event) => unref(router).push(location.path),
|
|
163
|
+
class: "cursor-pointer hover-t-underline mn-b-regular transition-all"
|
|
164
|
+
}, toDisplayString(location.label), 9, _hoisted_9);
|
|
165
|
+
}), 128))
|
|
166
|
+
])
|
|
167
|
+
])) : createCommentVNode("", true),
|
|
168
|
+
createVNode(_sfc_main$1, {
|
|
169
|
+
filters: state.filter.options,
|
|
170
|
+
selected: state.filter.selected,
|
|
171
|
+
"onUpdate:selected": _cache[3] || (_cache[3] = ($event) => state.filter.selected = $event),
|
|
172
|
+
immediate: true,
|
|
173
|
+
showHeader: false,
|
|
174
|
+
showApplyButton: false,
|
|
175
|
+
showResetButton: true
|
|
176
|
+
}, null, 8, ["filters", "selected"])
|
|
177
|
+
])
|
|
178
|
+
]),
|
|
179
|
+
createElementVNode("div", _hoisted_10, [
|
|
180
|
+
createVNode(_sfc_main$2, {
|
|
181
|
+
search: true,
|
|
182
|
+
sort: state.sort,
|
|
183
|
+
"onUpdate:sort": _cache[6] || (_cache[6] = ($event) => state.sort = $event),
|
|
184
|
+
showLoadMore: false,
|
|
185
|
+
states: {
|
|
186
|
+
empty: {
|
|
187
|
+
title: "No Shops Found",
|
|
188
|
+
description: "Currently, there are no shops."
|
|
189
|
+
}
|
|
190
|
+
},
|
|
191
|
+
store: {
|
|
192
|
+
read: (options) => unref(marketplaceStore).readCatalog(options)
|
|
193
|
+
},
|
|
194
|
+
options: {
|
|
195
|
+
country: localPosition.value.country,
|
|
196
|
+
state: localPosition.value.state,
|
|
197
|
+
city: localPosition.value.city,
|
|
198
|
+
location: localLocation.value?.location,
|
|
199
|
+
lookup: ["products", "spots"],
|
|
200
|
+
contain: ["products"],
|
|
201
|
+
priceMin: state.filter.selected.price?.min,
|
|
202
|
+
priceMax: state.filter.selected.price?.max,
|
|
203
|
+
delivery: state.filter.selected.delivery?.length > 0 ? state.filter.selected.delivery.join(",") : void 0,
|
|
204
|
+
payment: state.filter.selected.payment?.length > 0 ? state.filter.selected.payment.join(",") : void 0
|
|
205
|
+
},
|
|
206
|
+
class: "rows-1 gap-thin"
|
|
207
|
+
}, {
|
|
208
|
+
default: withCtx(({
|
|
209
|
+
items
|
|
210
|
+
}) => [
|
|
211
|
+
createElementVNode("div", _hoisted_11, [
|
|
212
|
+
createVNode(Filters, {
|
|
213
|
+
filters: state.filter.options,
|
|
214
|
+
"onUpdate:filters": _cache[4] || (_cache[4] = ($event) => state.filter.options = $event),
|
|
215
|
+
selected: state.filter.selected,
|
|
216
|
+
"onUpdate:selected": _cache[5] || (_cache[5] = ($event) => state.filter.selected = $event),
|
|
217
|
+
class: ""
|
|
218
|
+
}, null, 8, ["filters", "selected"])
|
|
219
|
+
]),
|
|
220
|
+
(openBlock(true), createElementBlock(Fragment, null, renderList(items, (organization) => {
|
|
221
|
+
return openBlock(), createBlock(_sfc_main$3, {
|
|
222
|
+
key: organization._id,
|
|
223
|
+
organization,
|
|
224
|
+
showRating: true,
|
|
225
|
+
showFollowers: false,
|
|
226
|
+
showProducts: true,
|
|
227
|
+
class: "bg-light w-100 o-hidden radius-medium pd-small"
|
|
228
|
+
}, null, 8, ["organization"]);
|
|
229
|
+
}), 128))
|
|
230
|
+
]),
|
|
231
|
+
_: 1
|
|
232
|
+
}, 8, ["sort", "store", "options"])
|
|
233
|
+
])
|
|
234
|
+
])
|
|
235
|
+
]);
|
|
236
|
+
};
|
|
237
|
+
}
|
|
238
|
+
};
|
|
239
|
+
export {
|
|
240
|
+
_sfc_main as default
|
|
241
|
+
};
|
|
242
|
+
//# sourceMappingURL=Marketplace.vue.js.map
|
|
@@ -0,0 +1 @@
|
|
|
1
|
+
{"version":3,"file":"Marketplace.vue.js","sources":["../../../../../../../../src/modules/marketplace/views/components/pages/Marketplace.vue"],"sourcesContent":["<template>\n <div class=\"pos-relative\">\n <header class=\"pd-medium mn-b-thin\">\n <h2 class=\"\">\n <span class=\"\">Weed Deliveries in </span>\n\n <span\n v-if=\"localPosition.city || localPosition.state || localPosition.country\"\n @click=\"a => { store.core.state.isOpenLocationPopup = true }\"\n class=\"t-main t-semi cursor-pointer \"\n >\n <template v-if=\"localPosition.city\">{{localPosition.city}}, </template>\n <template v-if=\"localPosition.state\">{{localPosition.state}}, </template>\n <template v-if=\"localPosition.country\">{{localPosition.country}}</template>\n </span>\n\n <span v-else @click=\"a => { store.core.state.isOpenLocationPopup = true }\" class=\"t-main t-semi cursor-pointer\">The World</span>\n </h2>\n </header>\n\n <div class=\"cols-2-1_3 br-1px br-solid br-light z-index-3 pos-relative\">\n\n <div class=\"o-y-scroll br-r br-solid br-light pd-medium z-index-2 desktop-only h-100 pos-relative\">\n <div class=\"w-100 o-y-scroll h-100\">\n <!-- Location Filter -->\n <div v-if=\"!route.params.country && !route.params.state && !route.params.city\" class=\"mn-b-medium\">\n <h4 class=\"mn-b-small\">Location</h4>\n <Field\n v-model=\"searchLocation\"\n placeholder=\"Search location...\"\n type=\"text\"\n class=\"w-100 bg-light pd-small radius-small mn-b-small\"\n />\n <div class=\"gap-micro\">\n <div\n v-for=\"location in marketplace.state.locationOptions\"\n :key=\"location.label\"\n @click=\"router.push(location.path)\"\n class=\"cursor-pointer hover-t-underline mn-b-regular transition-all\"\n >\n {{ location.label }}\n </div>\n </div>\n </div>\n\n <!-- Filters Group -->\n <FiltersGroup\n :filters=\"marketplace.state.filter.options\"\n v-model:selected=\"marketplace.state.filter.selected\"\n :immediate=\"true\"\n :showHeader=\"false\"\n :showApplyButton=\"false\"\n :showResetButton=\"true\"\n />\n </div>\n </div>\n\n <div class=\"w-100 rows-1 pd-thin pos-relative o-hidden\">\n <Feed\n :search=\"true\"\n v-model:sort=\"marketplace.state.sort\"\n :showLoadMore=\"false\"\n :states=\"{\n empty: {\n title: 'No Shops Found',\n description: 'Currently, there are no shops.'\n }\n }\"\n :store=\"{\n read: (options) => marketplaceStore.readCatalog(options)\n }\"\n :options=\"{\n country: localPosition.country,\n state: localPosition.state,\n city: localPosition.city,\n location: localLocation?.location,\n lookup: ['products','spots'],\n contain: ['products'],\n priceMin: marketplace.state.filter.selected.price?.min,\n priceMax: marketplace.state.filter.selected.price?.max,\n delivery: marketplace.state.filter.selected.delivery?.length > 0 ? marketplace.state.filter.selected.delivery.join(',') : undefined,\n payment: marketplace.state.filter.selected.payment?.length > 0 ? marketplace.state.filter.selected.payment.join(',') : undefined\n }\"\n v-slot=\"{\n items\n }\"\n class=\"rows-1 gap-thin\"\n >\n <div class=\"mn-b-thin mobile-only\">\n <Filters\n v-model:filters=\"marketplace.state.filter.options\"\n v-model:selected=\"marketplace.state.filter.selected\"\n class=\"\"\n />\n </div>\n\n <CardOrganization\n v-for=\"organization in items\"\n :key=\"organization._id\"\n :organization=\"organization\"\n :showRating=\"true\"\n :showFollowers=\"false\"\n :showProducts=\"true\"\n class=\"bg-light w-100 o-hidden radius-medium pd-small \"\n />\n </Feed>\n\n </div>\n </div>\n </div>\n\n</template>\n\n\n<script setup=\"props\">\n // Import libs\n import { onMounted, watch, ref } from 'vue'\n import { useRoute, useRouter } from 'vue-router'\n import { useI18n } from 'vue-i18n'\n\n import Feed from '@martyrs/src/components/Feed/Feed.vue'\n import Filters from '@martyrs/src/modules/core/views/components/sections/Filters.vue'\n import FiltersGroup from '@martyrs/src/modules/core/views/components/sections/filters/FiltersGroup.vue'\n import Field from \"@martyrs/src/components/Field/Field.vue\"\n\n import CardOrganization from '@martyrs/src/modules/organizations/components/blocks/CardOrganization.vue'\n\n import { useStore } from '@martyrs/src/modules/core/views/store/core.store.js'\n import * as organization from '@martyrs/src/modules/organizations/store/organizations.js'\n import * as marketplace from '../../store/marketplace'\n import marketplaceStore from '../../store/marketplace'\n import { useGlobalMixins } from '@martyrs/src/modules/core/views/mixins/mixins.js'\n\n const route = useRoute()\n const router = useRouter()\n const store = useStore()\n const { returnCurrency } = useGlobalMixins()\n\n const localPosition = ref({\n city: null,\n state: null,\n country: null\n });\n\n const localLocation = ref(null);\n // Location filter\n const searchLocation = ref('');\n\n if (route.params) {\n // Загружаем новые значения из параметров маршрута в состояние\n let newState = {\n country: denormalizeUrlParam(route.params.country),\n state: denormalizeUrlParam(route.params.state),\n city: denormalizeUrlParam(route.params.city),\n };\n\n\t // Обновляем глобальное состояние\n\t localPosition.value = newState;\n\t}\n\n\tif (route.query) {\n\t \tconst query = route.query;\n\n\t\tmarketplace.state.filter.selected.categories = query.categories ? query.categories.split(',') : [];\n\t\tmarketplace.state.filter.selected.prices = query.prices ? query.prices.split(',') : [];\n\t\tmarketplace.state.filter.selected.delivery = query.delivery ? query.delivery.split(',') : [];\n\t}\n\n\tif (route.query.sortParam) marketplace.state.sort.param = route.query.sortParam\n\tif (route.query.sortOrder) marketplace.state.sort.order = route.query.sortOrder\n\n function denormalizeUrlParam(param) {\n return param\n .replace(/-/g, ' ')\n .replace(/\\b\\w/g, l => l.toUpperCase());\n }\n\n function normalizeUrlParam(param) {\n return param\n .toLowerCase()\n .replace(/ /g, '-')\n .replace(/[^a-z0-9-]/g, '');\n }\n\n\twatch(() => marketplace.state.sort, (newSortValue, oldSortValue) => {\n\t\tlet query = { ...route.query}\n\t\t\n\t\tquery.sortParam = newSortValue.param\n\t\tquery.sortOrder = newSortValue.order\n\t \n\t // replace the current route\n\t router.replace({ query });\n\t}, { deep: true });\n\n\n\twatch(() => marketplace.state.filter.selectedFilters, (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\n\t delete query.options;\n\t Object.assign(query, newQueryValues);\n\n\t // Обновляем маршрут с новым query\n\t router.replace({ query });\n\t}, { deep: true })\n\n\twatch(() => store.core.state.position, (newPosition) => {\n // get the current route\n const currentRoute = { ...router.currentRoute.value };\n\t \n // create new parameters based on globals state position\n let newParams = {\n country: normalizeUrlParam(newPosition.country),\n state: normalizeUrlParam(newPosition.state),\n city: normalizeUrlParam(newPosition.city),\n };\n\n let newState = {\n country: denormalizeUrlParam(newPosition.country),\n state: denormalizeUrlParam(newPosition.state),\n city: denormalizeUrlParam(newPosition.city),\n };\n \n // update route params\n localPosition.value = newState;\n currentRoute.params = newParams;\n\n \n // replace the current route\n router.replace(currentRoute);\n\t}, { deep: true });\n\n const text = {\n locale: 'en',\n messages: {\n en: {\n meta: {\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 },\n ru: {\n meta: {\n title: \"Маркетплейс – Выбирайте из нашего ассортимента качественной травки для доставки\",\n description: \"Маркетплейс – Изучите наши продукты высокого качества и выбирайте из различных вариантов доставки. Закажите сейчас и получите свои любимые сорта на дом. Безопасно, быстро и надежно.\",\n }\n }\n }\n }\n\n const { t } = useI18n(text)\n</script>\n\n<style lang=\"scss\">\n\n\n</style>\n\n\n"],"names":["marketplace.state"],"mappings":"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"}
|
|
@@ -0,0 +1,39 @@
|
|
|
1
|
+
function buildMarketplaceTree(options = {}) {
|
|
2
|
+
const marketplaceComponent = options.marketplaceComponent || (() => import(
|
|
3
|
+
/* webpackChunkName: 'marketplace-page' */
|
|
4
|
+
"../components/pages/Marketplace.vue.js"
|
|
5
|
+
));
|
|
6
|
+
const buildName = (suffix) => {
|
|
7
|
+
const prefix = options.routeNamePrefix || "";
|
|
8
|
+
return suffix ? `${prefix}${suffix}` : prefix || void 0;
|
|
9
|
+
};
|
|
10
|
+
return [
|
|
11
|
+
{
|
|
12
|
+
path: ":country?/:state?/:city?",
|
|
13
|
+
name: buildName("Marketplace") || "Marketplace",
|
|
14
|
+
component: marketplaceComponent,
|
|
15
|
+
meta: {
|
|
16
|
+
title: {
|
|
17
|
+
en: "Marketplace",
|
|
18
|
+
ru: "Маркетплейс"
|
|
19
|
+
}
|
|
20
|
+
}
|
|
21
|
+
}
|
|
22
|
+
];
|
|
23
|
+
}
|
|
24
|
+
function getRoutes(options = {}) {
|
|
25
|
+
const route = options.route || "Home";
|
|
26
|
+
const routes = [];
|
|
27
|
+
routes.push({
|
|
28
|
+
parentName: route,
|
|
29
|
+
config: {
|
|
30
|
+
basePath: options.basePath || "marketplace",
|
|
31
|
+
routes: buildMarketplaceTree(options)
|
|
32
|
+
}
|
|
33
|
+
});
|
|
34
|
+
return routes;
|
|
35
|
+
}
|
|
36
|
+
export {
|
|
37
|
+
getRoutes
|
|
38
|
+
};
|
|
39
|
+
//# sourceMappingURL=marketplace.router.js.map
|
|
@@ -0,0 +1 @@
|
|
|
1
|
+
{"version":3,"file":"marketplace.router.js","sources":["../../../../../../../src/modules/marketplace/views/router/marketplace.router.js"],"sourcesContent":["function buildMarketplaceTree(options = {}) {\n const marketplaceComponent = options.marketplaceComponent || (() => import(\n /* webpackChunkName: 'marketplace-page' */\n '../components/pages/Marketplace.vue'\n ));\n\n const buildName = (suffix) => {\n const prefix = options.routeNamePrefix || '';\n return suffix ? `${prefix}${suffix}` : prefix || undefined;\n };\n\n return [\n {\n path: ':country?/:state?/:city?',\n name: buildName('Marketplace') || 'Marketplace',\n component: marketplaceComponent,\n meta: {\n title: {\n en: 'Marketplace',\n ru: 'Маркетплейс',\n },\n },\n },\n ];\n}\n\nexport function getRoutes(options = {}) {\n const route = options.route || 'Home';\n const routes = [];\n\n routes.push({\n parentName: route,\n config: {\n basePath: options.basePath || 'marketplace',\n routes: buildMarketplaceTree(options),\n },\n });\n\n return routes;\n}\n\nexport default { getRoutes };\n"],"names":[],"mappings":"AAAA,SAAS,qBAAqB,UAAU,IAAI;AAC1C,QAAM,uBAAuB,QAAQ,yBAAyB,MAAM;AAAA;AAAA,IAElE;AAAA,EACJ;AAEE,QAAM,YAAY,CAAC,WAAW;AAC5B,UAAM,SAAS,QAAQ,mBAAmB;AAC1C,WAAO,SAAS,GAAG,MAAM,GAAG,MAAM,KAAK,UAAU;AAAA,EACnD;AAEA,SAAO;AAAA,IACL;AAAA,MACE,MAAM;AAAA,MACN,MAAM,UAAU,aAAa,KAAK;AAAA,MAClC,WAAW;AAAA,MACX,MAAM;AAAA,QACJ,OAAO;AAAA,UACL,IAAI;AAAA,UACJ,IAAI;AAAA,QACd;AAAA,MACA;AAAA,IACA;AAAA,EACA;AACA;AAEO,SAAS,UAAU,UAAU,IAAI;AACtC,QAAM,QAAQ,QAAQ,SAAS;AAC/B,QAAM,SAAS,CAAA;AAEf,SAAO,KAAK;AAAA,IACV,YAAY;AAAA,IACZ,QAAQ;AAAA,MACN,UAAU,QAAQ,YAAY;AAAA,MAC9B,QAAQ,qBAAqB,OAAO;AAAA,IAC1C;AAAA,EACA,CAAG;AAED,SAAO;AACT;"}
|
|
@@ -1,4 +1,7 @@
|
|
|
1
1
|
import { reactive, watch } from "vue";
|
|
2
|
+
import StoreManager from "../../../core/views/classes/store.manager.js";
|
|
3
|
+
import { useGlobalMixins } from "../../../core/views/mixins/mixins.js";
|
|
4
|
+
const { returnCurrency } = useGlobalMixins();
|
|
2
5
|
const state = reactive({
|
|
3
6
|
shops: [],
|
|
4
7
|
popular: [],
|
|
@@ -11,18 +14,61 @@ const state = reactive({
|
|
|
11
14
|
current: "",
|
|
12
15
|
result: []
|
|
13
16
|
},
|
|
17
|
+
locationOptions: [
|
|
18
|
+
{ label: "All", path: "/marketplace" },
|
|
19
|
+
{ label: "Phuket", path: "/marketplace/thailand/phuket" },
|
|
20
|
+
{ label: "Bangkok", path: "/marketplace/thailand/bangkok" },
|
|
21
|
+
{ label: "Chiang Mai", path: "/marketplace/thailand/chiang-mai" },
|
|
22
|
+
{ label: "Pattaya", path: "/marketplace/thailand/pattaya" }
|
|
23
|
+
],
|
|
14
24
|
filter: {
|
|
15
25
|
active: false,
|
|
16
26
|
class: "mobile-only",
|
|
17
27
|
selected: {},
|
|
18
28
|
options: [
|
|
29
|
+
{
|
|
30
|
+
title: "Price",
|
|
31
|
+
value: "price",
|
|
32
|
+
type: "range",
|
|
33
|
+
minPlaceholder: "From",
|
|
34
|
+
maxPlaceholder: "To",
|
|
35
|
+
label: returnCurrency()
|
|
36
|
+
},
|
|
19
37
|
{
|
|
20
38
|
title: "Delivery",
|
|
21
39
|
value: "delivery",
|
|
40
|
+
type: "checkbox",
|
|
22
41
|
options: [
|
|
23
42
|
{ label: "Pickup", value: "pickup" },
|
|
24
|
-
{ label: "
|
|
25
|
-
{ label: "
|
|
43
|
+
{ label: "Delivery", value: "courier" },
|
|
44
|
+
{ label: "Mail", value: "post" }
|
|
45
|
+
]
|
|
46
|
+
},
|
|
47
|
+
{
|
|
48
|
+
title: "Payment",
|
|
49
|
+
value: "payment",
|
|
50
|
+
type: "checkbox",
|
|
51
|
+
options: [
|
|
52
|
+
{ label: "Cash", value: "cash" },
|
|
53
|
+
{ label: "Card", value: "card" },
|
|
54
|
+
{ label: "Crypto", value: "crypto" },
|
|
55
|
+
{ label: "Bank Transfer", value: "bank" }
|
|
56
|
+
]
|
|
57
|
+
},
|
|
58
|
+
{
|
|
59
|
+
title: "Availability Date",
|
|
60
|
+
value: "availabilityDate",
|
|
61
|
+
type: "date"
|
|
62
|
+
},
|
|
63
|
+
{
|
|
64
|
+
title: "Rating",
|
|
65
|
+
value: "rating",
|
|
66
|
+
type: "radio",
|
|
67
|
+
options: [
|
|
68
|
+
{ label: "5 stars", value: "5" },
|
|
69
|
+
{ label: "4+ stars", value: "4" },
|
|
70
|
+
{ label: "3+ stars", value: "3" },
|
|
71
|
+
{ label: "Any rating", value: "any" }
|
|
26
72
|
]
|
|
27
73
|
}
|
|
28
74
|
]
|
|
@@ -48,7 +94,24 @@ const state = reactive({
|
|
|
48
94
|
});
|
|
49
95
|
watch(state, (newState, oldState) => {
|
|
50
96
|
});
|
|
97
|
+
const marketplaceStore = new StoreManager("/api/marketplace");
|
|
98
|
+
marketplaceStore.readCatalog = async function(params = {}) {
|
|
99
|
+
console.log("Reading marketplace catalog with params:", params);
|
|
100
|
+
try {
|
|
101
|
+
const result = await this.request("/catalog", { params });
|
|
102
|
+
console.log(`Catalog returned ${result.length || 0} items`);
|
|
103
|
+
if (result && Array.isArray(result)) {
|
|
104
|
+
state.shops = result;
|
|
105
|
+
}
|
|
106
|
+
return result;
|
|
107
|
+
} catch (error) {
|
|
108
|
+
console.error("Catalog read failed:", error);
|
|
109
|
+
throw error;
|
|
110
|
+
}
|
|
111
|
+
};
|
|
51
112
|
export {
|
|
113
|
+
marketplaceStore as default,
|
|
114
|
+
marketplaceStore,
|
|
52
115
|
state
|
|
53
116
|
};
|
|
54
117
|
//# sourceMappingURL=marketplace.js.map
|
|
@@ -1 +1 @@
|
|
|
1
|
-
{"version":3,"file":"marketplace.js","sources":["../../../../../../../src/modules/marketplace/views/store/marketplace.js"],"sourcesContent":["import { reactive, watch } from 'vue';\n\n// State\nconst state = reactive({\n shops: [],\n popular: [],\n pagination: {\n page: 1,\n perPage: 18,\n },\n search: {\n active: false,\n current: '',\n result: [],\n },\n filter: {\n active: false,\n class: 'mobile-only',\n selected: {},\n options: [\n {\n title: 'Delivery',\n value: 'delivery',\n options: [\n { label: 'Pickup', value: 'pickup' },\n { label: '
|
|
1
|
+
{"version":3,"file":"marketplace.js","sources":["../../../../../../../src/modules/marketplace/views/store/marketplace.js"],"sourcesContent":["import { reactive, watch } from 'vue';\nimport StoreManager from '@martyrs/src/modules/core/views/classes/store.manager.js';\nimport { useGlobalMixins } from '@martyrs/src/modules/core/views/mixins/mixins.js';\n\nconst { returnCurrency } = useGlobalMixins();\n\n// State\nconst state = reactive({\n shops: [],\n popular: [],\n pagination: {\n page: 1,\n perPage: 18,\n },\n search: {\n active: false,\n current: '',\n result: [],\n },\n locationOptions: [\n { label: 'All', path: '/marketplace' },\n { label: 'Phuket', path: '/marketplace/thailand/phuket' },\n { label: 'Bangkok', path: '/marketplace/thailand/bangkok' },\n { label: 'Chiang Mai', path: '/marketplace/thailand/chiang-mai' },\n { label: 'Pattaya', path: '/marketplace/thailand/pattaya' },\n ],\n filter: {\n active: false,\n class: 'mobile-only',\n selected: {},\n options: [\n {\n title: 'Price',\n value: 'price',\n type: 'range',\n minPlaceholder: 'From',\n maxPlaceholder: 'To',\n label: returnCurrency()\n },\n {\n title: 'Delivery',\n value: 'delivery',\n type: 'checkbox',\n options: [\n { label: 'Pickup', value: 'pickup' },\n { label: 'Delivery', value: 'courier' },\n { label: 'Mail', value: 'post' },\n ],\n },\n {\n title: 'Payment',\n value: 'payment',\n type: 'checkbox',\n options: [\n { label: 'Cash', value: 'cash' },\n { label: 'Card', value: 'card' },\n { label: 'Crypto', value: 'crypto' },\n { label: 'Bank Transfer', value: 'bank' },\n ],\n },\n {\n title: 'Availability Date',\n value: 'availabilityDate',\n type: 'date'\n },\n {\n title: 'Rating',\n value: 'rating',\n type: 'radio',\n options: [\n { label: '5 stars', value: '5' },\n { label: '4+ stars', value: '4' },\n { label: '3+ stars', value: '3' },\n { label: 'Any rating', value: 'any' }\n ]\n },\n ],\n },\n sort: {\n param: 'distance',\n order: 'asc',\n options: [\n {\n label: 'Distance',\n value: 'distance',\n },\n {\n label: 'Popularity',\n value: 'views',\n },\n {\n label: 'Products',\n value: 'numberOfProducts',\n },\n ],\n },\n});\n\n// History\nconst history = [];\nhistory.push(state);\n\n// Watch\nwatch(state, (newState, oldState) => {\n history.push(newState);\n});\n\n// Actions через StoreManager\nconst marketplaceStore = new StoreManager('/api/marketplace');\n\n// Custom action для каталога\nmarketplaceStore.readCatalog = async function(params = {}) {\n console.log('Reading marketplace catalog with params:', params);\n try {\n const result = await this.request('/catalog', { params });\n console.log(`Catalog returned ${result.length || 0} items`);\n\n // Обновляем state.shops если нужно\n if (result && Array.isArray(result)) {\n state.shops = result;\n }\n\n return result;\n } catch (error) {\n console.error('Catalog read failed:', error);\n throw error;\n }\n};\n\n// Module Export\nexport { state, marketplaceStore };\n\nexport default marketplaceStore;\n"],"names":[],"mappings":"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"}
|
|
@@ -1,6 +1,6 @@
|
|
|
1
1
|
import { computed, resolveComponent, createBlock, openBlock, withCtx, createElementVNode, createVNode, createElementBlock, createCommentVNode, withModifiers, toDisplayString } from "vue";
|
|
2
2
|
import Media from "../../../../components/Media/Media.vue.js";
|
|
3
|
-
import _sfc_main$1 from "../../../../components/Button/Button.
|
|
3
|
+
import _sfc_main$1 from "../../../../components/Button/Button.vue2.js";
|
|
4
4
|
import _sfc_main$2 from "../../../icons/navigation/IconPlay.vue.js";
|
|
5
5
|
import { actions } from "../../store/player.js";
|
|
6
6
|
import { state, actions as actions$1 } from "../../store/albums.js";
|
|
@@ -1,5 +1,5 @@
|
|
|
1
1
|
import { resolveComponent, createElementBlock, openBlock, createVNode, createBlock, createCommentVNode, withCtx, createElementVNode, toDisplayString, createTextVNode } from "vue";
|
|
2
|
-
import _sfc_main$2 from "../../../../components/Button/Button.
|
|
2
|
+
import _sfc_main$2 from "../../../../components/Button/Button.vue2.js";
|
|
3
3
|
import Media from "../../../../components/Media/Media.vue.js";
|
|
4
4
|
import _sfc_main$1 from "../../../icons/navigation/IconCheckmark.vue.js";
|
|
5
5
|
/* empty css */
|
|
@@ -1,6 +1,6 @@
|
|
|
1
1
|
import { computed, resolveComponent, createBlock, openBlock, withCtx, createElementVNode, createVNode, createElementBlock, createCommentVNode, withModifiers, toDisplayString } from "vue";
|
|
2
2
|
import Media from "../../../../components/Media/Media.vue.js";
|
|
3
|
-
import _sfc_main$1 from "../../../../components/Button/Button.
|
|
3
|
+
import _sfc_main$1 from "../../../../components/Button/Button.vue2.js";
|
|
4
4
|
import _sfc_main$2 from "../../../icons/navigation/IconPlay.vue.js";
|
|
5
5
|
import { actions as actions$1 } from "../../store/player.js";
|
|
6
6
|
import { actions, state } from "../../store/playlists.js";
|
|
@@ -1,5 +1,5 @@
|
|
|
1
1
|
import { ref, resolveComponent, createElementBlock, openBlock, normalizeClass, createElementVNode, createCommentVNode, createBlock, toDisplayString, withModifiers, withCtx, createVNode, createTextVNode } from "vue";
|
|
2
|
-
import _sfc_main$1 from "../../../../components/Button/Button.
|
|
2
|
+
import _sfc_main$1 from "../../../../components/Button/Button.vue2.js";
|
|
3
3
|
import Media from "../../../../components/Media/Media.vue.js";
|
|
4
4
|
import _sfc_main$2 from "../../../icons/navigation/IconPlay.vue.js";
|
|
5
5
|
import _sfc_main$3 from "../../../icons/navigation/IconPause.vue.js";
|
|
@@ -2,8 +2,8 @@ import { reactive, ref, watch, onMounted, createElementBlock, openBlock, createE
|
|
|
2
2
|
import { useRouter, useRoute } from "vue-router";
|
|
3
3
|
import Field from "../../../../components/Field/Field.vue.js";
|
|
4
4
|
import _sfc_main$1 from "../../../../components/Block/Block.vue.js";
|
|
5
|
-
import _sfc_main$3 from "../../../../components/Button/Button.
|
|
6
|
-
import Select from "../../../../components/Select/Select.
|
|
5
|
+
import _sfc_main$3 from "../../../../components/Button/Button.vue2.js";
|
|
6
|
+
import Select from "../../../../components/Select/Select.vue.js";
|
|
7
7
|
import UploadImage from "../../../../components/UploadImage/UploadImage.vue.js";
|
|
8
8
|
import _sfc_main$2 from "../../../icons/navigation/IconCross.vue.js";
|
|
9
9
|
import BlockMultiselect from "../../../core/views/components/blocks/BlockMultiselect.vue.js";
|
|
@@ -2,9 +2,9 @@ import { reactive, ref, watch, onMounted, createElementBlock, openBlock, createE
|
|
|
2
2
|
import { useRouter, useRoute } from "vue-router";
|
|
3
3
|
import Field from "../../../../components/Field/Field.vue.js";
|
|
4
4
|
import _sfc_main$1 from "../../../../components/Block/Block.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$3 from "../../../../components/Checkbox/Checkbox.vue.js";
|
|
7
|
-
import Select from "../../../../components/Select/Select.
|
|
7
|
+
import Select from "../../../../components/Select/Select.vue.js";
|
|
8
8
|
import UploadImage from "../../../../components/UploadImage/UploadImage.vue.js";
|
|
9
9
|
/* empty css */
|
|
10
10
|
import BlockMultiselect from "../../../core/views/components/blocks/BlockMultiselect.vue.js";
|
|
@@ -2,7 +2,7 @@ import { reactive, ref, watch, computed, onMounted, createElementBlock, openBloc
|
|
|
2
2
|
import { useRouter, useRoute } from "vue-router";
|
|
3
3
|
import Field from "../../../../components/Field/Field.vue.js";
|
|
4
4
|
import _sfc_main$1 from "../../../../components/Block/Block.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$3 from "../../../../components/Radio/Radio.vue.js";
|
|
7
7
|
import UploadImage from "../../../../components/UploadImage/UploadImage.vue.js";
|
|
8
8
|
import _sfc_main$2 from "../../../icons/navigation/IconCross.vue.js";
|
|
@@ -1,5 +1,5 @@
|
|
|
1
1
|
import { ref, watch, onMounted, createElementBlock, openBlock, createVNode, withDirectives, createBlock, createCommentVNode, createElementVNode, withKeys, vModelText, withCtx } from "vue";
|
|
2
|
-
import _sfc_main$2 from "../../../../components/Button/Button.
|
|
2
|
+
import _sfc_main$2 from "../../../../components/Button/Button.vue2.js";
|
|
3
3
|
import _sfc_main$1 from "../../../icons/navigation/IconSearch.vue.js";
|
|
4
4
|
import _sfc_main$3 from "../../../icons/navigation/IconCross.vue.js";
|
|
5
5
|
/* empty css */
|
|
@@ -2,9 +2,9 @@ import { reactive, ref, watch, onMounted, createElementBlock, openBlock, createE
|
|
|
2
2
|
import { useRouter, useRoute } from "vue-router";
|
|
3
3
|
import Field from "../../../../components/Field/Field.vue.js";
|
|
4
4
|
import _sfc_main$1 from "../../../../components/Block/Block.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$3 from "../../../../components/Checkbox/Checkbox.vue.js";
|
|
7
|
-
import Select from "../../../../components/Select/Select.
|
|
7
|
+
import Select from "../../../../components/Select/Select.vue.js";
|
|
8
8
|
import UploadImage from "../../../../components/UploadImage/UploadImage.vue.js";
|
|
9
9
|
import Upload from "../../../../components/Upload/Upload.vue2.js";
|
|
10
10
|
import _sfc_main$2 from "../../../icons/navigation/IconCross.vue.js";
|
|
@@ -1,6 +1,6 @@
|
|
|
1
1
|
import { ref, computed, onMounted, resolveComponent, createElementBlock, openBlock, createCommentVNode, createVNode, createElementVNode, toDisplayString, withCtx, createTextVNode, Fragment, renderList, createBlock } from "vue";
|
|
2
2
|
import { useRoute, useRouter } from "vue-router";
|
|
3
|
-
import _sfc_main$1 from "../../../../components/Button/Button.
|
|
3
|
+
import _sfc_main$1 from "../../../../components/Button/Button.vue2.js";
|
|
4
4
|
import Loader from "../../../../components/Loader/Loader.vue.js";
|
|
5
5
|
import Media from "../../../../components/Media/Media.vue.js";
|
|
6
6
|
import _sfc_main$5 from "../../../../components/Dropdown/Dropdown.vue.js";
|
|
@@ -1,6 +1,6 @@
|
|
|
1
1
|
import { ref, computed, onMounted, createElementBlock, openBlock, createCommentVNode, createElementVNode, createVNode, unref, withCtx, createTextVNode, normalizeStyle, normalizeClass, toDisplayString, Fragment, renderList, createBlock } from "vue";
|
|
2
2
|
import { useRouter, useRoute } from "vue-router";
|
|
3
|
-
import _sfc_main$1 from "../../../../components/Button/Button.
|
|
3
|
+
import _sfc_main$1 from "../../../../components/Button/Button.vue2.js";
|
|
4
4
|
/* empty css */
|
|
5
5
|
import _sfc_main$2 from "../cards/TrackListCard.vue.js";
|
|
6
6
|
import { state, actions } from "../../store/artists.js";
|
|
@@ -5,7 +5,7 @@ import _sfc_main$3 from "../cards/TrackListCard.vue.js";
|
|
|
5
5
|
import AlbumCard from "../cards/AlbumCard.vue.js";
|
|
6
6
|
import PlaylistCard from "../cards/PlaylistCard.vue.js";
|
|
7
7
|
import ArtistCard from "../cards/ArtistCard.vue.js";
|
|
8
|
-
import _sfc_main$1 from "../../../../components/Button/Button.
|
|
8
|
+
import _sfc_main$1 from "../../../../components/Button/Button.vue2.js";
|
|
9
9
|
import { state } from "../../../auth/views/store/auth.js";
|
|
10
10
|
import { state as state$1, actions } from "../../store/playlists.js";
|
|
11
11
|
import { state as state$2, actions as actions$1 } from "../../store/albums.js";
|
|
@@ -1,6 +1,6 @@
|
|
|
1
1
|
import { ref, computed, onMounted, resolveComponent, createElementBlock, openBlock, createCommentVNode, createVNode, createElementVNode, toDisplayString, withCtx, createTextVNode, Fragment, createBlock, renderList } from "vue";
|
|
2
2
|
import { useRoute, useRouter } from "vue-router";
|
|
3
|
-
import _sfc_main$1 from "../../../../components/Button/Button.
|
|
3
|
+
import _sfc_main$1 from "../../../../components/Button/Button.vue2.js";
|
|
4
4
|
/* empty css */
|
|
5
5
|
import Media from "../../../../components/Media/Media.vue.js";
|
|
6
6
|
import _sfc_main$4 from "../../../../components/Dropdown/Dropdown.vue.js";
|
|
@@ -5,7 +5,7 @@ import _sfc_main$3 from "../cards/TrackListCard.vue.js";
|
|
|
5
5
|
import AlbumCard from "../cards/AlbumCard.vue.js";
|
|
6
6
|
import PlaylistCard from "../cards/PlaylistCard.vue.js";
|
|
7
7
|
import ArtistCard from "../cards/ArtistCard.vue.js";
|
|
8
|
-
import _sfc_main$2 from "../../../../components/Button/Button.
|
|
8
|
+
import _sfc_main$2 from "../../../../components/Button/Button.vue2.js";
|
|
9
9
|
import Loader from "../../../../components/Loader/Loader.vue.js";
|
|
10
10
|
import { state, actions } from "../../store/search.js";
|
|
11
11
|
/* empty css */
|
|
@@ -1,6 +1,6 @@
|
|
|
1
1
|
import { computed, ref, onMounted, resolveComponent, createElementBlock, openBlock, createCommentVNode, createBlock, createVNode, createElementVNode, withCtx, toDisplayString, createTextVNode, Fragment, renderList } from "vue";
|
|
2
2
|
import { useRoute, useRouter } from "vue-router";
|
|
3
|
-
import _sfc_main$1 from "../../../../components/Button/Button.
|
|
3
|
+
import _sfc_main$1 from "../../../../components/Button/Button.vue2.js";
|
|
4
4
|
import Loader from "../../../../components/Loader/Loader.vue.js";
|
|
5
5
|
import Media from "../../../../components/Media/Media.vue.js";
|
|
6
6
|
import _sfc_main$6 from "../../../../components/Dropdown/Dropdown.vue.js";
|
|
@@ -1,7 +1,7 @@
|
|
|
1
1
|
import { createElementBlock, openBlock, createVNode } from "vue";
|
|
2
2
|
import { useRouter } from "vue-router";
|
|
3
3
|
/* empty css */
|
|
4
|
-
/* empty css
|
|
4
|
+
/* empty css */
|
|
5
5
|
import _sfc_main$1 from "../forms/TrackForm.vue.js";
|
|
6
6
|
const _hoisted_1 = { class: "track-create-page" };
|
|
7
7
|
const _sfc_main = {
|
|
@@ -1,6 +1,6 @@
|
|
|
1
1
|
import { ref, computed, createElementBlock, openBlock, createElementVNode, createVNode, toDisplayString, normalizeClass, withCtx, createBlock } from "vue";
|
|
2
2
|
import Media from "../../../../components/Media/Media.vue.js";
|
|
3
|
-
import _sfc_main$1 from "../../../../components/Button/Button.
|
|
3
|
+
import _sfc_main$1 from "../../../../components/Button/Button.vue2.js";
|
|
4
4
|
import TrackProgress from "./TrackProgress.vue.js";
|
|
5
5
|
import VolumeControl from "./VolumeControl.vue.js";
|
|
6
6
|
import _sfc_main$5 from "../../../icons/navigation/IconPlay.vue.js";
|
|
@@ -1,8 +1,8 @@
|
|
|
1
1
|
import { mergeModels, useModel, ref, watch, createBlock, openBlock, withCtx, createVNode, createElementVNode, unref, isRef, createTextVNode, toDisplayString } from "vue";
|
|
2
2
|
import _sfc_main$1 from "../../../../components/Block/Block.vue.js";
|
|
3
3
|
import Field from "../../../../components/Field/Field.vue.js";
|
|
4
|
-
import Select from "../../../../components/Select/Select.
|
|
5
|
-
import _sfc_main$2 from "../../../../components/Button/Button.
|
|
4
|
+
import Select from "../../../../components/Select/Select.vue.js";
|
|
5
|
+
import _sfc_main$2 from "../../../../components/Button/Button.vue2.js";
|
|
6
6
|
const _hoisted_1 = { class: "gap-thin flex mn-t-small" };
|
|
7
7
|
const _sfc_main = {
|
|
8
8
|
__name: "FormApplicationDetails",
|