@ozdao/martyrs 0.2.593 → 0.2.595
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/martyrs/src/components/Dropdown/{Dropdown.vue2.js → Dropdown.vue.js} +2 -2
- package/dist/martyrs/src/components/Dropdown/Dropdown.vue.js.map +1 -0
- package/dist/martyrs/src/components/Feed/Carousel.vue.js +1 -1
- package/dist/martyrs/src/components/Feed/Feed.vue.js +2 -2
- package/dist/martyrs/src/components/Loader/{Loader.vue2.js → Loader.vue.js} +2 -2
- package/dist/martyrs/src/components/Loader/Loader.vue.js.map +1 -0
- package/dist/martyrs/src/components/LocationMarker/LocationMarker.vue.js +1 -1
- package/dist/martyrs/src/components/Media/Media.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/UploadImage/UploadImage.vue.js +1 -1
- package/dist/martyrs/src/components/UploadImageMultiple/UploadImageMultiple.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/ProfileEdit.vue.js +1 -1
- package/dist/martyrs/src/modules/community/components/pages/BlogPost.vue.js +1 -1
- package/dist/martyrs/src/modules/core/locales/en.js +3 -0
- package/dist/martyrs/src/modules/core/locales/en.js.map +1 -1
- package/dist/martyrs/src/modules/core/locales/ru.js +3 -0
- package/dist/martyrs/src/modules/core/locales/ru.js.map +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/PopupDateSelector.vue.js +1 -1
- package/dist/martyrs/src/modules/core/views/components/layouts/Client.vue.js +15 -5
- 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 +22 -7
- 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 +4 -4
- package/dist/martyrs/src/modules/core/views/components/partials/Navigation.vue.js.map +1 -1
- package/dist/martyrs/src/modules/core/views/components/partials/Sidebar.vue.js +4 -2
- package/dist/martyrs/src/modules/core/views/components/partials/Sidebar.vue.js.map +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 -2
- package/dist/martyrs/src/modules/events/components/sections/Feed.vue.js +1 -1
- package/dist/martyrs/src/modules/events/components/sections/List.vue.js +1 -1
- package/dist/martyrs/src/modules/inventory/components/pages/Inventory.vue.js +1 -1
- package/dist/martyrs/src/modules/inventory/components/pages/InventoryEdit.vue.js +1 -1
- package/dist/martyrs/src/modules/marketplace/views/components/sections/SectionMenu.vue.js +1 -1
- package/dist/martyrs/src/modules/music/components/blocks/ActionButtons.vue.js +1 -1
- package/dist/martyrs/src/modules/music/components/forms/ArtistForm.vue.js +1 -1
- package/dist/martyrs/src/modules/music/components/pages/Album.vue.js +2 -2
- package/dist/martyrs/src/modules/music/components/pages/Artist.vue.js +1 -1
- package/dist/martyrs/src/modules/music/components/pages/Playlist.vue.js +2 -2
- package/dist/martyrs/src/modules/music/components/pages/SearchResults.vue.js +1 -1
- package/dist/martyrs/src/modules/music/components/pages/Track.vue.js +2 -2
- package/dist/martyrs/src/modules/notifications/components/sections/NotificationPreferences.vue.js +1 -1
- package/dist/martyrs/src/modules/orders/components/sections/FormDelivery.vue.js +2 -2
- package/dist/martyrs/src/modules/organizations/components/pages/Organization.vue.js +2 -2
- 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/products/components/elements/Image360.vue.js +1 -1
- package/dist/martyrs/src/modules/products/components/pages/CategoryEdit.vue.js +2 -2
- package/dist/martyrs/src/modules/rents/views/components/pages/Gant/GanttToolbar.vue.js +1 -1
- package/dist/martyrs/src/modules/spots/components/layouts/Spots.vue.js +1 -1
- package/dist/style.css +20 -20
- package/package.json +1 -1
- package/src/modules/core/locales/en.js +3 -0
- package/src/modules/core/locales/ru.js +3 -0
- package/src/modules/core/views/components/layouts/Client.vue +7 -1
- package/src/modules/core/views/components/partials/Header.vue +17 -3
- package/src/modules/core/views/components/partials/Navigation.vue +2 -2
- package/src/modules/core/views/components/partials/Sidebar.vue +3 -1
- package/dist/martyrs/src/components/Dropdown/Dropdown.vue2.js.map +0 -1
- package/dist/martyrs/src/components/Loader/Loader.vue2.js.map +0 -1
- package/dist/martyrs/src/components/Menu/Menu.vue2.js.map +0 -1
|
@@ -1 +1 @@
|
|
|
1
|
-
{"version":3,"file":"Navigation.vue.js","sources":["../../../../../../../../src/modules/core/views/components/partials/Navigation.vue"],"sourcesContent":["<script setup>\nimport { ref, watch, computed } from 'vue'\nimport { useRouter, useRoute } from 'vue-router'\n\nimport IconChevronBottom from '@martyrs/src/modules/icons/navigation/IconChevronBottom.vue'\n\nimport { useStore } from '@martyrs/src/modules/core/views/store/core.store.js'\nimport * as auth from '@martyrs/src/modules/auth/views/store/auth.js'\n\nconst store = useStore()\nconst router = useRouter()\nconst route = useRoute()\n\nimport Dropdown from '@martyrs/src/components/Dropdown/Dropdown.vue'\nimport Spoiler from '@martyrs/src/components/Spoiler/Spoiler.vue'\n\nconst props = defineProps({\n navigationItems: Array,\n theme: {\n type: String,\n default: \"light\"\n },\n stateSidebar: {\n type: Boolean,\n default: false\n },\n horizontal: {\n type: Boolean,\n default: false\n }\n})\n\nconst emits = defineEmits([\n 'closeSidebar'\n])\n\nconst expandedSections = ref([])\n\nconst toggleSection = (title) => {\n if (!props.stateSidebar) {\n if (menuItems.value.flatMap(section => section.items).find(item => item.title === title && item.subItems)) {\n emits('closeSidebar')\n setTimeout(() => {\n expandedSections.value.push(title)\n }, 50)\n }\n return\n }\n \n const index = expandedSections.value.indexOf(title)\n\n if (index === -1) {\n expandedSections.value.push(title)\n } else {\n expandedSections.value.splice(index, 1)\n }\n}\n\nconst isSectionExpanded = (title) => {\n return expandedSections.value.includes(title)\n}\n\n// Process route functions with auth data and route\nconst processRoute = (routeFn) => {\n if (typeof routeFn === 'function') {\n return routeFn(auth.state, route)\n }\n return routeFn\n}\n\n</script>\n\n<template>\n <nav\n class=\"ease-quint-out\"\n :class=\"[\n stateSidebar ? 'pd-small' : 'pd-micro',\n horizontal ? 'w-100 desktop-only gap-thin flex flex-center flex-nowrap o-y-visible o-x-visible' : 'gap-medium flex flex-column',\n ]\"\n >\n <div \n v-for=\"section in props.navigationItems\" \n v-show=\"!section.visible || (typeof section.visible === 'function' ? section.visible(auth.state, route) : true)\"\n :key=\"section.category\" \n class=\"ease-quint-out\"\n :class=\"[\n horizontal ? 'w-max flex-child-default flex flex-nowrap' : '',\n stateSidebar && !horizontal ? '' : '',\n ]\"\n >\n <div\n v-if=\"section.category && stateSidebar && !horizontal\"\n class=\"uppercase fw-medium t-transp p-small\"\n :class=\"{\n 't-black': theme === 'light',\n 't-white': theme === 'dark'\n }\"\n >\n {{ section.category }}\n </div>\n\n <ul \n :class=\"[\n horizontal ? 'w-100 gap-micro flex flex-nowrap' : 'flex flex-column gap-micro',\n ]\"\n >\n <li\n v-for=\"item in section.items\"\n v-show=\"!item.visible || (typeof item.visible === 'function' ? item.visible(auth.state, route) : true)\"\n class=\"w-100 pos-relative\"\n :key=\"item.title\"\n\n >\n <Dropdown\n v-if=\"item.subItems && horizontal\"\n class=\"w-100\"\n align=\"left\"\n trigger=\"hover\"\n >\n <template #label>\n <button\n class=\"ease-quint-out w-100 flex radius-small flex-nowrap cursor-pointer flex-v-center pd-thin\"\n @click=\"item.route ? router.push(processRoute(item.route)) : null\"\n :class=\"[\n item.route && route.path === processRoute(item.route) ? theme === 'light' ? 'bg-light' : 'bg-dark' : '',\n theme === 'light' ? 'hover:bg-light' : 'hover:bg-dark'\n ]\"\n >\n <span class=\"fw-medium\">{{ item.title }}</span>\n <!-- <IconChevronBottom :fill=\"theme === 'dark' ? 'rgb(var(--white))': 'rgb(var(--black))'\" class=\"i-small mn-l-thin\"/> -->\n </button>\n </template>\n <ul class=\"dropdown-submenu\">\n <li v-for=\"subItem in item.subItems\" :key=\"subItem.title\">\n <a\n @click=\"subItem.route ? router.push(processRoute(subItem.route)) : null\"\n href=\"#\"\n class=\"group ease-quint-out flex flex-v-center flex-nowrap gap-thin pd-thin radius-small\"\n :class=\"[\n subItem.route && route.path === processRoute(subItem.route) ? theme === 'light' ? 'bg-light' : 'bg-dark' : '',\n theme === 'light' ? 'hover:bg-light' : 'hover:bg-dark'\n ]\"\n >\n <component\n v-if=\"subItem.iconComponent\"\n :is=\"subItem.iconComponent\"\n class=\"i-medium t-black-transp-25 group-hover:t-main\"\n />\n <span v-else class=\"\">{{ subItem.icon }}</span>\n <span class=\"w-100\">{{ subItem.title }}</span>\n </a>\n </li>\n </ul>\n </Dropdown>\n <button\n v-else\n class=\"group ease-quint-out w-100 flex radius-small flex-nowrap cursor-pointer flex-v-center\"\n @click=\"item.route ? (isPhone ? (stateSidebar = false) : null, route.path !== processRoute(item.route) ? router.push(processRoute(item.route)) : null) : null\"\n :class=\"[\n horizontal ? 'pd-thin' : '',\n item.route && route.path === processRoute(item.route) ? theme === 'light' ? 'bg-light' : 'bg-dark' : '',\n theme === 'light' ? 'hover:bg-light' : 'hover:bg-dark'\n ]\"\n >\n <div v-if=\"!horizontal\" class=\"w-100 flex-child-default w-max-big flex flex-center aspect-1x1\">\n <component\n v-if=\"item.iconComponent\"\n :is=\"item.iconComponent\"\n class=\"i-medium flex-child-default ease-quint-out t-black-transp-25 group-hover:t-main\"\n />\n <span\n v-if=\"!item.iconComponent \"\n class=\"p-regular\"\n >\n {{ item.icon }}\n </span>\n </div>\n\n <span\n class=\"ease-quint-out w-100 t-left fw-medium\"\n :class=\"{ 'hidden': !stateSidebar && !horizontal, 'visible': stateSidebar || horizontal }\"\n >\n {{ item.title }}\n </span>\n\n <span\n v-if=\"item.subItems && stateSidebar && !horizontal\"\n class=\"mn-l-auto mn-r-small sidebar-dropdown-icon\"\n :class=\"{ 'rotate-180deg': isSectionExpanded(item.title) }\"\n @click.stop=\"toggleSection(item.title)\"\n >\n <IconChevronBottom :class=\"{ 'rotate-180deg mn-t-micro-negative': isOpen }\" :fill=\" theme === 'dark' ? 'rgb(var(--white))': 'rgb(var(--black))'\" class=\"i-small\"/>\n </span>\n </button>\n <transition\n enter-active-class=\"dropdown-enter\"\n leave-active-class=\"dropdown-leave\"\n enter-from-class=\"dropdown-enter-from\"\n enter-to-class=\"dropdown-enter-to\"\n leave-from-class=\"dropdown-leave-from\"\n leave-to-class=\"dropdown-leave-to\"\n >\n <ul\n v-if=\"item.subItems && isSectionExpanded(item.title) && stateSidebar && !horizontal\"\n class=\"mn-l-small mn-t-thin\"\n >\n <li v-for=\"subItem in item.subItems\" :key=\"subItem.title\">\n\n <a\n @click=\"subItem.route ? (isPhone ? (stateSidebar = false) : null, route.path !== processRoute(subItem.route) ? router.push(processRoute(subItem.route)) : null) : null\"\n href=\"#\"\n class=\"group ease-quint-out flex flex-v-center flex-nowrap gap-thin pd-thin radius-small\"\n :class=\"[\n subItem.route && route.path === processRoute(subItem.route) ? theme === 'light' ? 'bg-light' : 'bg-dark' : '',\n theme === 'light' ? 'hover:bg-light' : 'hover:bg-dark'\n ]\"\n >\n <component\n v-if=\"subItem.iconComponent\"\n :is=\"subItem.iconComponent\"\n class=\"i-medium t-black-transp-25 group-hover:t-main\"\n />\n <span v-else class=\"\">{{ subItem.icon }}</span>\n <span class=\"w-100\">{{ subItem.title }}</span>\n </a>\n </li>\n </ul>\n </transition>\n </li>\n </ul>\n </div>\n </nav>\n</template>\n\n<style scoped>\n\n.rotate-180deg {\n transform: rotate(180deg);\n}\n\n.hidden {\n/* opacity: 0;*/\n width: 0;\n display: none;\n}\n\n.visible {\n/* opacity: 1;*/\n display: block;\n}\n\n/* Dropdown animations */\n.dropdown-enter, .dropdown-leave {\n transition: all 0.3s ease-in-out;\n}\n\n.dropdown-enter-from, .dropdown-leave-to {\n opacity: 0;\n transform: translateY(-0.5rem);\n}\n\n.dropdown-enter-to, .dropdown-leave-from {\n opacity: 1;\n transform: translateY(0);\n}\n\n/* Horizontal dropdown submenu */\n.dropdown-submenu {\n list-style: none;\n padding: 0.5rem;\n margin: 0;\n min-width: 12rem;\n}\n\n.dropdown-submenu li {\n width: 100%;\n}\n\n.dropdown-submenu a {\n display: flex;\n text-decoration: none;\n white-space: nowrap;\n}\n\n/* Transition for horizontal dropdown */\n:deep(.TransitionTranslateY-enter-active),\n:deep(.TransitionTranslateY-leave-active) {\n transition: translateY 0.2s ease;\n transition: opacity 0.2s ease;\n}\n\n:deep(.TransitionTranslateY-enter-from),\n:deep(.TransitionTranslateY-leave-to) {\n opacity: 0;\n transform: translateY(-0.5rem);\n}\n\n:deep(.TransitionTranslateY-enter-to),\n:deep(.TransitionTranslateY-leave-from) {\n opacity: 1;\n transform: translateY(0);\n}\n</style>"],"names":["auth.state"],"mappings":";;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;AASc,aAAQ;AACtB,UAAM,SAAS,UAAS;AACxB,UAAM,QAAQ,SAAQ;AAKtB,UAAM,QAAQ;AAgBd,UAAM,QAAQ;AAId,UAAM,mBAAmB,IAAI,CAAA,CAAE;AAE/B,UAAM,gBAAgB,CAAC,UAAU;AAC/B,UAAI,CAAC,MAAM,cAAc;AACvB,YAAI,UAAU,MAAM,QAAQ,aAAW,QAAQ,KAAK,EAAE,KAAK,UAAQ,KAAK,UAAU,SAAS,KAAK,QAAQ,GAAG;AACzG,gBAAM,cAAc;AACpB,qBAAW,MAAM;AACf,6BAAiB,MAAM,KAAK,KAAK;AAAA,UACnC,GAAG,EAAE;AAAA,QACP;AACA;AAAA,MACF;AAEA,YAAM,QAAQ,iBAAiB,MAAM,QAAQ,KAAK;AAElD,UAAI,UAAU,IAAI;AAChB,yBAAiB,MAAM,KAAK,KAAK;AAAA,MACnC,OAAO;AACL,yBAAiB,MAAM,OAAO,OAAO,CAAC;AAAA,MACxC;AAAA,IACF;AAEA,UAAM,oBAAoB,CAAC,UAAU;AACnC,aAAO,iBAAiB,MAAM,SAAS,KAAK;AAAA,IAC9C;AAGA,UAAM,eAAe,CAAC,YAAY;AAChC,UAAI,OAAO,YAAY,YAAY;AACjC,eAAO,QAAQA,OAAY,KAAK;AAAA,MAClC;AACA,aAAO;AAAA,IACT;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;"}
|
|
1
|
+
{"version":3,"file":"Navigation.vue.js","sources":["../../../../../../../../src/modules/core/views/components/partials/Navigation.vue"],"sourcesContent":["<script setup>\nimport { ref, watch, computed } from 'vue'\nimport { useRouter, useRoute } from 'vue-router'\n\nimport IconChevronBottom from '@martyrs/src/modules/icons/navigation/IconChevronBottom.vue'\n\nimport { useStore } from '@martyrs/src/modules/core/views/store/core.store.js'\nimport * as auth from '@martyrs/src/modules/auth/views/store/auth.js'\n\nconst store = useStore()\nconst router = useRouter()\nconst route = useRoute()\n\nimport Dropdown from '@martyrs/src/components/Dropdown/Dropdown.vue'\nimport Spoiler from '@martyrs/src/components/Spoiler/Spoiler.vue'\n\nconst props = defineProps({\n navigationItems: Array,\n theme: {\n type: String,\n default: \"light\"\n },\n stateSidebar: {\n type: Boolean,\n default: false\n },\n horizontal: {\n type: Boolean,\n default: false\n }\n})\n\nconst emits = defineEmits([\n 'closeSidebar'\n])\n\nconst expandedSections = ref([])\n\nconst toggleSection = (title) => {\n if (!props.stateSidebar) {\n if (menuItems.value.flatMap(section => section.items).find(item => item.title === title && item.subItems)) {\n emits('closeSidebar')\n setTimeout(() => {\n expandedSections.value.push(title)\n }, 50)\n }\n return\n }\n \n const index = expandedSections.value.indexOf(title)\n\n if (index === -1) {\n expandedSections.value.push(title)\n } else {\n expandedSections.value.splice(index, 1)\n }\n}\n\nconst isSectionExpanded = (title) => {\n return expandedSections.value.includes(title)\n}\n\n// Process route functions with auth data and route\nconst processRoute = (routeFn) => {\n if (typeof routeFn === 'function') {\n return routeFn(auth.state, route)\n }\n return routeFn\n}\n\n</script>\n\n<template>\n <nav\n class=\"ease-quint-out\"\n :class=\"[\n stateSidebar ? 'pd-small' : 'pd-micro',\n horizontal ? 'w-100 desktop-only gap-thin flex flex-center flex-nowrap o-y-visible o-x-visible' : 'gap-medium flex flex-column',\n ]\"\n >\n <div \n v-for=\"section in props.navigationItems\" \n v-show=\"!section.visible || (typeof section.visible === 'function' ? section.visible(auth.state, route) : true)\"\n :key=\"section.category\" \n class=\"ease-quint-out\"\n :class=\"[\n horizontal ? 'w-max flex-child-default flex flex-nowrap' : '',\n stateSidebar && !horizontal ? '' : '',\n ]\"\n >\n <div\n v-if=\"section.category && stateSidebar && !horizontal\"\n class=\"uppercase fw-medium t-transp p-small\"\n :class=\"{\n 't-black': theme === 'light',\n 't-white': theme === 'dark'\n }\"\n >\n {{ section.category }}\n </div>\n\n <ul \n :class=\"[\n horizontal ? 'w-100 gap-micro flex flex-nowrap' : 'flex flex-column gap-micro',\n ]\"\n >\n <li\n v-for=\"item in section.items\"\n v-show=\"!item.visible || (typeof item.visible === 'function' ? item.visible(auth.state, route) : true)\"\n class=\"w-100 pos-relative\"\n :key=\"item.title\"\n\n >\n <Dropdown\n v-if=\"item.subItems && horizontal\"\n class=\"w-100\"\n align=\"left\"\n trigger=\"hover\"\n >\n <template #label>\n <button\n class=\"ease-quint-out w-100 flex radius-small flex-nowrap cursor-pointer flex-v-center pd-thin\"\n @click=\"item.route ? router.push(processRoute(item.route)) : null\"\n :class=\"[\n item.route && route.path === processRoute(item.route) ? theme === 'light' ? 'bg-light' : 'bg-dark' : '',\n theme === 'light' ? 'hover:bg-light' : 'hover:bg-dark'\n ]\"\n >\n <span class=\"fw-medium\">{{ item.title }}</span>\n <!-- <IconChevronBottom :fill=\"theme === 'dark' ? 'rgb(var(--white))': 'rgb(var(--black))'\" class=\"i-small mn-l-thin\"/> -->\n </button>\n </template>\n <ul class=\"dropdown-submenu\">\n <li v-for=\"subItem in item.subItems\" :key=\"subItem.title\">\n <a\n @click=\"subItem.route ? router.push(processRoute(subItem.route)) : null\"\n href=\"#\"\n class=\"group ease-quint-out flex flex-v-center flex-nowrap gap-thin pd-thin radius-small\"\n :class=\"[\n subItem.route && route.path === processRoute(subItem.route) ? theme === 'light' ? 'bg-light' : 'bg-dark' : '',\n theme === 'light' ? 'hover:bg-light' : 'hover:bg-dark'\n ]\"\n >\n <component\n v-if=\"subItem.iconComponent\"\n :is=\"subItem.iconComponent\"\n class=\"i-medium t-black-transp-25 group-hover:t-main\"\n />\n <span v-else class=\"\">{{ subItem.icon }}</span>\n <span class=\"w-100\">{{ subItem.title }}</span>\n </a>\n </li>\n </ul>\n </Dropdown>\n <button\n v-else\n class=\"group ease-quint-out w-100 flex radius-small flex-nowrap cursor-pointer flex-v-center\"\n @click=\"item.route ? (isPhone ? (stateSidebar = false) : null, route.path !== processRoute(item.route) ? router.push(processRoute(item.route)) : null) : null\"\n :class=\"[\n horizontal ? 'pd-thin' : '',\n item.route && route.path === processRoute(item.route) ? theme === 'light' ? 'bg-light' : 'bg-dark' : '',\n theme === 'light' ? 'hover:bg-light' : 'hover:bg-dark'\n ]\"\n >\n <div v-if=\"!horizontal && (item.iconComponent || item.icon)\" class=\"w-100 flex-child-default w-max-big flex flex-center aspect-1x1\">\n <component\n v-if=\"item.iconComponent\"\n :is=\"item.iconComponent\"\n class=\"i-medium flex-child-default ease-quint-out t-black-transp-25 group-hover:t-main\"\n />\n <span\n v-if=\"!item.iconComponent \"\n class=\"p-regular\"\n >\n {{ item.icon }}\n </span>\n </div>\n\n <span\n class=\"ease-quint-out w-100 t-left fw-medium\"\n :class=\"{ 'pd-small': !horizontal, 'hidden': !stateSidebar && !horizontal, 'visible': stateSidebar || horizontal }\"\n >\n {{ item.title }}\n </span>\n\n <span\n v-if=\"item.subItems && stateSidebar && !horizontal\"\n class=\"mn-l-auto mn-r-small sidebar-dropdown-icon\"\n :class=\"{ 'rotate-180deg': isSectionExpanded(item.title) }\"\n @click.stop=\"toggleSection(item.title)\"\n >\n <IconChevronBottom :class=\"{ 'rotate-180deg mn-t-micro-negative': isOpen }\" :fill=\" theme === 'dark' ? 'rgb(var(--white))': 'rgb(var(--black))'\" class=\"i-small\"/>\n </span>\n </button>\n <transition\n enter-active-class=\"dropdown-enter\"\n leave-active-class=\"dropdown-leave\"\n enter-from-class=\"dropdown-enter-from\"\n enter-to-class=\"dropdown-enter-to\"\n leave-from-class=\"dropdown-leave-from\"\n leave-to-class=\"dropdown-leave-to\"\n >\n <ul\n v-if=\"item.subItems && isSectionExpanded(item.title) && stateSidebar && !horizontal\"\n class=\"mn-l-small mn-t-thin\"\n >\n <li v-for=\"subItem in item.subItems\" :key=\"subItem.title\">\n\n <a\n @click=\"subItem.route ? (isPhone ? (stateSidebar = false) : null, route.path !== processRoute(subItem.route) ? router.push(processRoute(subItem.route)) : null) : null\"\n href=\"#\"\n class=\"group ease-quint-out flex flex-v-center flex-nowrap gap-thin pd-thin radius-small\"\n :class=\"[\n subItem.route && route.path === processRoute(subItem.route) ? theme === 'light' ? 'bg-light' : 'bg-dark' : '',\n theme === 'light' ? 'hover:bg-light' : 'hover:bg-dark'\n ]\"\n >\n <component\n v-if=\"subItem.iconComponent\"\n :is=\"subItem.iconComponent\"\n class=\"i-medium t-black-transp-25 group-hover:t-main\"\n />\n <span v-else class=\"\">{{ subItem.icon }}</span>\n <span class=\"w-100\">{{ subItem.title }}</span>\n </a>\n </li>\n </ul>\n </transition>\n </li>\n </ul>\n </div>\n </nav>\n</template>\n\n<style scoped>\n\n.rotate-180deg {\n transform: rotate(180deg);\n}\n\n.hidden {\n/* opacity: 0;*/\n width: 0;\n display: none;\n}\n\n.visible {\n/* opacity: 1;*/\n display: block;\n}\n\n/* Dropdown animations */\n.dropdown-enter, .dropdown-leave {\n transition: all 0.3s ease-in-out;\n}\n\n.dropdown-enter-from, .dropdown-leave-to {\n opacity: 0;\n transform: translateY(-0.5rem);\n}\n\n.dropdown-enter-to, .dropdown-leave-from {\n opacity: 1;\n transform: translateY(0);\n}\n\n/* Horizontal dropdown submenu */\n.dropdown-submenu {\n list-style: none;\n padding: 0.5rem;\n margin: 0;\n min-width: 12rem;\n}\n\n.dropdown-submenu li {\n width: 100%;\n}\n\n.dropdown-submenu a {\n display: flex;\n text-decoration: none;\n white-space: nowrap;\n}\n\n/* Transition for horizontal dropdown */\n:deep(.TransitionTranslateY-enter-active),\n:deep(.TransitionTranslateY-leave-active) {\n transition: translateY 0.2s ease;\n transition: opacity 0.2s ease;\n}\n\n:deep(.TransitionTranslateY-enter-from),\n:deep(.TransitionTranslateY-leave-to) {\n opacity: 0;\n transform: translateY(-0.5rem);\n}\n\n:deep(.TransitionTranslateY-enter-to),\n:deep(.TransitionTranslateY-leave-from) {\n opacity: 1;\n transform: translateY(0);\n}\n</style>"],"names":["auth.state"],"mappings":";;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;AASc,aAAQ;AACtB,UAAM,SAAS,UAAS;AACxB,UAAM,QAAQ,SAAQ;AAKtB,UAAM,QAAQ;AAgBd,UAAM,QAAQ;AAId,UAAM,mBAAmB,IAAI,CAAA,CAAE;AAE/B,UAAM,gBAAgB,CAAC,UAAU;AAC/B,UAAI,CAAC,MAAM,cAAc;AACvB,YAAI,UAAU,MAAM,QAAQ,aAAW,QAAQ,KAAK,EAAE,KAAK,UAAQ,KAAK,UAAU,SAAS,KAAK,QAAQ,GAAG;AACzG,gBAAM,cAAc;AACpB,qBAAW,MAAM;AACf,6BAAiB,MAAM,KAAK,KAAK;AAAA,UACnC,GAAG,EAAE;AAAA,QACP;AACA;AAAA,MACF;AAEA,YAAM,QAAQ,iBAAiB,MAAM,QAAQ,KAAK;AAElD,UAAI,UAAU,IAAI;AAChB,yBAAiB,MAAM,KAAK,KAAK;AAAA,MACnC,OAAO;AACL,yBAAiB,MAAM,OAAO,OAAO,CAAC;AAAA,MACxC;AAAA,IACF;AAEA,UAAM,oBAAoB,CAAC,UAAU;AACnC,aAAO,iBAAiB,MAAM,SAAS,KAAK;AAAA,IAC9C;AAGA,UAAM,eAAe,CAAC,YAAY;AAChC,UAAI,OAAO,YAAY,YAAY;AACjC,eAAO,QAAQA,OAAY,KAAK;AAAA,MAClC;AACA,aAAO;AAAA,IACT;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;"}
|
|
@@ -1,5 +1,6 @@
|
|
|
1
1
|
import { ref, watch, createElementBlock, openBlock, normalizeClass, createElementVNode, createCommentVNode, renderSlot, unref, toDisplayString } from "vue";
|
|
2
2
|
import { useRouter, useRoute } from "vue-router";
|
|
3
|
+
import { useI18n } from "vue-i18n";
|
|
3
4
|
import { useGlobalMixins } from "../../mixins/mixins.js";
|
|
4
5
|
import { useStore } from "../../store/core.store.js";
|
|
5
6
|
/* empty css */
|
|
@@ -32,6 +33,7 @@ const _sfc_main = {
|
|
|
32
33
|
"closeSidebar"
|
|
33
34
|
],
|
|
34
35
|
setup(__props, { emit: __emit }) {
|
|
36
|
+
const { t } = useI18n();
|
|
35
37
|
const store = useStore();
|
|
36
38
|
const props = __props;
|
|
37
39
|
const emits = __emit;
|
|
@@ -119,7 +121,7 @@ const _sfc_main = {
|
|
|
119
121
|
}, [
|
|
120
122
|
createElementVNode("span", {
|
|
121
123
|
class: normalizeClass(["w-100 ws-nowrap ease-quint-out t-left fw-medium mn-r-thin", { "hidden": !__props.stateSidebar, "visible": __props.stateSidebar }])
|
|
122
|
-
}, "
|
|
124
|
+
}, toDisplayString(_ctx.$t("core.ui.darkMode")), 3),
|
|
123
125
|
createElementVNode("span", _hoisted_4, toDisplayString(unref(store).core.state.theme.mode === "dark" ? "🌙" : "☀️"), 1)
|
|
124
126
|
], 2)
|
|
125
127
|
], 2)
|
|
@@ -127,7 +129,7 @@ const _sfc_main = {
|
|
|
127
129
|
};
|
|
128
130
|
}
|
|
129
131
|
};
|
|
130
|
-
const Sidebar = /* @__PURE__ */ _export_sfc(_sfc_main, [["__scopeId", "data-v-
|
|
132
|
+
const Sidebar = /* @__PURE__ */ _export_sfc(_sfc_main, [["__scopeId", "data-v-846509b5"]]);
|
|
131
133
|
export {
|
|
132
134
|
Sidebar as default
|
|
133
135
|
};
|
|
@@ -1 +1 @@
|
|
|
1
|
-
{"version":3,"file":"Sidebar.vue.js","sources":["../../../../../../../../src/modules/core/views/components/partials/Sidebar.vue"],"sourcesContent":["<script setup>\nimport { ref, watch } from 'vue'\nimport { useRouter, useRoute } from 'vue-router'\nimport { useGlobalMixins } from \"@martyrs/src/modules/core/views/mixins/mixins.js\"\nimport { useStore } from '@martyrs/src/modules/core/views/store/core.store.js'\n\nconst store = useStore()\n\nconst props = defineProps({\n theme: {\n type: String,\n default: \"light\"\n },\n stateSidebar: {\n type: Boolean,\n default: false\n },\n width: {\n type: String,\n default: 'w-15r'\n },\n widthHidden:{\n type: String,\n default: 'w-3r '\n },\n})\n\nconst emits = defineEmits([\n 'closeSidebar'\n])\n\nconst { isPhone, isTablet } = useGlobalMixins()\nconst router = useRouter()\nconst route = useRoute()\n\n// Отдельный флаг для клика меню на mobile\nconst isManuallyOpened = ref(false)\n\n// Синхронизируем с stateSidebar ТОЛЬКО на mobile\nwatch(() => props.stateSidebar, (newVal) => {\n if (isPhone() || isTablet()) {\n isManuallyOpened.value = newVal\n }\n})\n\nconst toggleSidebar = () => {\n isManuallyOpened.value = !isManuallyOpened.value\n if (!isManuallyOpened.value) {\n emits('closeSidebar')\n }\n}\n\nconst handleMouseEnter = () => {\n if (route.meta?.sidebar_hover && !isPhone() && !isTablet()) {\n store.core.state.isOpenSidebar = true\n }\n}\n\nconst handleMouseLeave = () => {\n if (route.meta?.sidebar_hover && !isPhone() && !isTablet()) {\n store.core.state.isOpenSidebar = false\n }\n}\n\nrouter.beforeEach((to, from) => {\n // На mobile не трогаем state через навигацию\n if (isPhone() || isTablet()) {\n emits('closeSidebar')\n return\n }\n\n\n // Desktop логика\n // Если уходим с профиля И НЕ идем на профиль - закрыть\n if (from.meta?.sidebarCloseOnLeave === true && to.meta?.sidebarOpenOnEnter !== true) {\n store.core.state.isOpenSidebar = false\n }\n\n // Если приходим на профиль - открыть\n if (to.meta?.sidebarOpenOnEnter === true) {\n store.core.state.isOpenSidebar = true\n }\n})\n</script>\n\n<template>\n <aside\n data-sidebar\n class=\"ease-quint-out w-min-0 o-hidden flex-child-default z-index-2 br-r-1px flex flex-column h-100\"\n :class=\"[\n { 'mobile-opened': isManuallyOpened },\n stateSidebar\n ? `${width} w-min-10 tablet:w-min-100 tablet:w-100 mobile:w-min-100 mobile:w-100`\n : `${widthHidden} mobile:w-0`,\n //\n theme === 'light'\n ? 't-black bg-white br-light'\n : 't-white bg-black br-dark'\n ]\"\n @mouseenter=\"handleMouseEnter\"\n @mouseleave=\"handleMouseLeave\"\n >\n <!-- Header slot - shrink-0 -->\n <div class=\"flex-shrink-0\">\n <slot name=\"header\"></slot>\n </div>\n\n <!-- Main scrollable content - flex-1 overflow-y-auto -->\n <div class=\"flex-child-1 o-y-auto\">\n <slot></slot>\n </div>\n\n <!-- Footer slot - shrink-0 -->\n <div class=\"flex-shrink-0\">\n <slot name=\"footer\"></slot>\n </div>\n <div v-if=\"MOBILE_APP\" @click=\"() => toggleSidebar()\" class=\"flex-shrink-0 pos-relative\">\n <div class=\"bg-light radius-medium pd-medium\">\n <p class=\"fw-medium t-black-transp-60\">\n Close Menu\n </p>\n </div>\n </div>\n <div\n class=\"flex-shrink-0 w-100 br-t-1px\"\n :class=\"{ \n 'pd-micro': !stateSidebar, \n 'pd-small': stateSidebar,\n 'br-light': theme === 'light',\n 'br-dark': theme === 'dark'\n }\"\n >\n <button\n @click=\"() => store.core.actions.toggleTheme()\"\n class=\"ease-quint-out flex w-100 flex-center radius-small cursor-pointer flex-nowrap\"\n :class=\"[\n stateSidebar ? 'pd-thin justify-between' : 'w-100 justify-center',\n theme === 'light' ? 'hover:bg-light' : 'hover:bg-dark'\n ]\"\n >\n <span\n class=\"w-100 ws-nowrap ease-quint-out t-left fw-medium mn-r-thin\"\n :class=\"{ 'hidden': !stateSidebar, 'visible': stateSidebar }\"\n >\n
|
|
1
|
+
{"version":3,"file":"Sidebar.vue.js","sources":["../../../../../../../../src/modules/core/views/components/partials/Sidebar.vue"],"sourcesContent":["<script setup>\nimport { ref, watch } from 'vue'\nimport { useRouter, useRoute } from 'vue-router'\nimport { useI18n } from 'vue-i18n'\nimport { useGlobalMixins } from \"@martyrs/src/modules/core/views/mixins/mixins.js\"\nimport { useStore } from '@martyrs/src/modules/core/views/store/core.store.js'\n\nconst { t } = useI18n()\nconst store = useStore()\n\nconst props = defineProps({\n theme: {\n type: String,\n default: \"light\"\n },\n stateSidebar: {\n type: Boolean,\n default: false\n },\n width: {\n type: String,\n default: 'w-15r'\n },\n widthHidden:{\n type: String,\n default: 'w-3r '\n },\n})\n\nconst emits = defineEmits([\n 'closeSidebar'\n])\n\nconst { isPhone, isTablet } = useGlobalMixins()\nconst router = useRouter()\nconst route = useRoute()\n\n// Отдельный флаг для клика меню на mobile\nconst isManuallyOpened = ref(false)\n\n// Синхронизируем с stateSidebar ТОЛЬКО на mobile\nwatch(() => props.stateSidebar, (newVal) => {\n if (isPhone() || isTablet()) {\n isManuallyOpened.value = newVal\n }\n})\n\nconst toggleSidebar = () => {\n isManuallyOpened.value = !isManuallyOpened.value\n if (!isManuallyOpened.value) {\n emits('closeSidebar')\n }\n}\n\nconst handleMouseEnter = () => {\n if (route.meta?.sidebar_hover && !isPhone() && !isTablet()) {\n store.core.state.isOpenSidebar = true\n }\n}\n\nconst handleMouseLeave = () => {\n if (route.meta?.sidebar_hover && !isPhone() && !isTablet()) {\n store.core.state.isOpenSidebar = false\n }\n}\n\nrouter.beforeEach((to, from) => {\n // На mobile не трогаем state через навигацию\n if (isPhone() || isTablet()) {\n emits('closeSidebar')\n return\n }\n\n\n // Desktop логика\n // Если уходим с профиля И НЕ идем на профиль - закрыть\n if (from.meta?.sidebarCloseOnLeave === true && to.meta?.sidebarOpenOnEnter !== true) {\n store.core.state.isOpenSidebar = false\n }\n\n // Если приходим на профиль - открыть\n if (to.meta?.sidebarOpenOnEnter === true) {\n store.core.state.isOpenSidebar = true\n }\n})\n</script>\n\n<template>\n <aside\n data-sidebar\n class=\"ease-quint-out w-min-0 o-hidden flex-child-default z-index-2 br-r-1px flex flex-column h-100\"\n :class=\"[\n { 'mobile-opened': isManuallyOpened },\n stateSidebar\n ? `${width} w-min-10 tablet:w-min-100 tablet:w-100 mobile:w-min-100 mobile:w-100`\n : `${widthHidden} mobile:w-0`,\n //\n theme === 'light'\n ? 't-black bg-white br-light'\n : 't-white bg-black br-dark'\n ]\"\n @mouseenter=\"handleMouseEnter\"\n @mouseleave=\"handleMouseLeave\"\n >\n <!-- Header slot - shrink-0 -->\n <div class=\"flex-shrink-0\">\n <slot name=\"header\"></slot>\n </div>\n\n <!-- Main scrollable content - flex-1 overflow-y-auto -->\n <div class=\"flex-child-1 o-y-auto\">\n <slot></slot>\n </div>\n\n <!-- Footer slot - shrink-0 -->\n <div class=\"flex-shrink-0\">\n <slot name=\"footer\"></slot>\n </div>\n <div v-if=\"MOBILE_APP\" @click=\"() => toggleSidebar()\" class=\"flex-shrink-0 pos-relative\">\n <div class=\"bg-light radius-medium pd-medium\">\n <p class=\"fw-medium t-black-transp-60\">\n Close Menu\n </p>\n </div>\n </div>\n <div\n class=\"flex-shrink-0 w-100 br-t-1px\"\n :class=\"{ \n 'pd-micro': !stateSidebar, \n 'pd-small': stateSidebar,\n 'br-light': theme === 'light',\n 'br-dark': theme === 'dark'\n }\"\n >\n <button\n @click=\"() => store.core.actions.toggleTheme()\"\n class=\"ease-quint-out flex w-100 flex-center radius-small cursor-pointer flex-nowrap\"\n :class=\"[\n stateSidebar ? 'pd-thin justify-between' : 'w-100 justify-center',\n theme === 'light' ? 'hover:bg-light' : 'hover:bg-dark'\n ]\"\n >\n <span\n class=\"w-100 ws-nowrap ease-quint-out t-left fw-medium mn-r-thin\"\n :class=\"{ 'hidden': !stateSidebar, 'visible': stateSidebar }\"\n >\n {{ $t('core.ui.darkMode') }}\n </span>\n <span class=\"aspect-1x1 flex-child-default w-max-big w-100 flex flex-center \">\n {{ store.core.state.theme.mode === 'dark' ? '🌙' : '☀️' }}\n </span>\n </button>\n </div>\n </aside>\n</template>\n\n<style scoped>\n.hidden {\n opacity: 0;\n width: 0;\n display: none;\n}\n.visible {\n opacity: 1;\n display: block;\n}\n\n/* Mobile: ВСЕГДА скрываем, показываем ТОЛЬКО по клику меню */\n@media (max-width: 1024px) {\n aside[data-sidebar] {\n position: absolute !important;\n left: 0 !important;\n transform: translateX(-100%) !important;\n visibility: hidden !important;\n z-index: 1000 !important;\n }\n\n /* Показываем ТОЛЬКО когда manual клик (НЕ от SSR state) */\n aside[data-sidebar].mobile-opened {\n transform: translateX(0) !important;\n visibility: visible !important;\n }\n}\n\n/* Scrollbar styles */\n::-webkit-scrollbar {\n width: 6px;\n}\n::-webkit-scrollbar-track {\n background: transparent;\n}\n::-webkit-scrollbar-thumb {\n background-color: var(--grey-micro);\n border-radius: 3px;\n}\n::-webkit-scrollbar-thumb:hover {\n background-color: var(--grey-small);\n}\n</style>"],"names":[],"mappings":";;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;AAOA,UAAM,EAAE,EAAC,IAAK,QAAO;AACrB,UAAM,QAAQ,SAAQ;AAEtB,UAAM,QAAQ;AAmBd,UAAM,QAAQ;AAId,UAAM,EAAE,SAAS,SAAQ,IAAK,gBAAe;AAC7C,UAAM,SAAS,UAAS;AACxB,UAAM,QAAQ,SAAQ;AAGtB,UAAM,mBAAmB,IAAI,KAAK;AAGlC,UAAM,MAAM,MAAM,cAAc,CAAC,WAAW;AAC1C,UAAI,QAAO,KAAM,YAAY;AAC3B,yBAAiB,QAAQ;AAAA,MAC3B;AAAA,IACF,CAAC;AAED,UAAM,gBAAgB,MAAM;AAC1B,uBAAiB,QAAQ,CAAC,iBAAiB;AAC3C,UAAI,CAAC,iBAAiB,OAAO;AAC3B,cAAM,cAAc;AAAA,MACtB;AAAA,IACF;AAEA,UAAM,mBAAmB,MAAM;AAC7B,UAAI,MAAM,MAAM,iBAAiB,CAAC,QAAO,KAAM,CAAC,YAAY;AAC1D,cAAM,KAAK,MAAM,gBAAgB;AAAA,MACnC;AAAA,IACF;AAEA,UAAM,mBAAmB,MAAM;AAC7B,UAAI,MAAM,MAAM,iBAAiB,CAAC,QAAO,KAAM,CAAC,YAAY;AAC1D,cAAM,KAAK,MAAM,gBAAgB;AAAA,MACnC;AAAA,IACF;AAEA,WAAO,WAAW,CAAC,IAAI,SAAS;AAE9B,UAAI,QAAO,KAAM,YAAY;AAC3B,cAAM,cAAc;AACpB;AAAA,MACF;AAKA,UAAI,KAAK,MAAM,wBAAwB,QAAQ,GAAG,MAAM,uBAAuB,MAAM;AACnF,cAAM,KAAK,MAAM,gBAAgB;AAAA,MACnC;AAGA,UAAI,GAAG,MAAM,uBAAuB,MAAM;AACxC,cAAM,KAAK,MAAM,gBAAgB;AAAA,MACnC;AAAA,IACF,CAAC;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;"}
|
|
@@ -12,7 +12,7 @@ import _sfc_main$9 from "../../../../components/Checkbox/Checkbox.vue.js";
|
|
|
12
12
|
import "axios";
|
|
13
13
|
/* empty css */
|
|
14
14
|
import UploadImage from "../../../../components/UploadImage/UploadImage.vue.js";
|
|
15
|
-
/* empty css
|
|
15
|
+
/* empty css */
|
|
16
16
|
/* empty css */
|
|
17
17
|
import _sfc_main$8 from "../../../../components/Feed/Feed.vue.js";
|
|
18
18
|
import _sfc_main$a from "../../../../components/Button/Button.vue.js";
|
|
@@ -4,7 +4,7 @@ import _sfc_main$2 from "../../../../components/Block/Block.vue.js";
|
|
|
4
4
|
import _sfc_main$3 from "../../../../components/Popup/Popup.vue.js";
|
|
5
5
|
import Field from "../../../../components/Field/Field.vue.js";
|
|
6
6
|
import _sfc_main$6 from "../../../../components/Button/Button.vue.js";
|
|
7
|
-
import _sfc_main$8 from "../../../../components/Dropdown/Dropdown.
|
|
7
|
+
import _sfc_main$8 from "../../../../components/Dropdown/Dropdown.vue.js";
|
|
8
8
|
import _sfc_main$1 from "../elements/ButtonCheck.vue.js";
|
|
9
9
|
import _sfc_main$5 from "../../../icons/navigation/IconDelete.vue.js";
|
|
10
10
|
import _sfc_main$4 from "../../../icons/navigation/IconAdd.vue.js";
|
|
@@ -1,5 +1,5 @@
|
|
|
1
1
|
import { ref, onMounted, createElementBlock, openBlock, createVNode, TransitionGroup, withCtx, createCommentVNode, createBlock, Fragment, renderList, unref, createElementVNode, toDisplayString, createTextVNode } from "vue";
|
|
2
|
-
/* empty css
|
|
2
|
+
/* empty css */
|
|
3
3
|
import _sfc_main$2 from "../../../constructor/components/sections/Viewer.vue.js";
|
|
4
4
|
import _sfc_main$4 from "../../../../components/Countdown/Countdown.vue.js";
|
|
5
5
|
import HeroEvent from "../sections/HeroEvent.vue.js";
|
|
@@ -11,7 +11,7 @@ import { useRoute } from "vue-router";
|
|
|
11
11
|
import { useGlobalMixins } from "../../../core/views/mixins/mixins.js";
|
|
12
12
|
import SkeletonEvent from "../../../icons/skeletons/SkeletonEvent.vue.js";
|
|
13
13
|
/* empty css */
|
|
14
|
-
/* empty css
|
|
14
|
+
/* empty css */
|
|
15
15
|
/* empty css */
|
|
16
16
|
/* empty css */
|
|
17
17
|
/* empty css */
|
|
@@ -1,5 +1,5 @@
|
|
|
1
1
|
import { ref, onMounted, createElementBlock, openBlock, createVNode, TransitionGroup, withCtx, createBlock, createCommentVNode, Transition, Fragment, renderList } from "vue";
|
|
2
|
-
import Loader from "../../../../components/Loader/Loader.
|
|
2
|
+
import Loader from "../../../../components/Loader/Loader.vue.js";
|
|
3
3
|
import _sfc_main$1 from "../../../../components/EmptyState/EmptyState.vue.js";
|
|
4
4
|
import _sfc_main$2 from "../blocks/CardEvent.vue.js";
|
|
5
5
|
import { read } from "../../store/events.js";
|
|
@@ -1,5 +1,5 @@
|
|
|
1
1
|
import { ref, onMounted, createElementBlock, openBlock, createVNode, TransitionGroup, withCtx, createBlock, Fragment, renderList, normalizeClass } from "vue";
|
|
2
|
-
/* empty css
|
|
2
|
+
/* empty css */
|
|
3
3
|
import _sfc_main$1 from "../../../../components/EmptyState/EmptyState.vue.js";
|
|
4
4
|
import _sfc_main$2 from "../blocks/CardEventShort.vue.js";
|
|
5
5
|
import SkeletonEventShort from "../../../icons/skeletons/SkeletonEventShort.vue.js";
|
|
@@ -4,7 +4,7 @@ import { useGlobalMixins } from "../../../core/views/mixins/mixins.js";
|
|
|
4
4
|
import Table from "../../../../components/Table/Table.vue.js";
|
|
5
5
|
import _sfc_main$1 from "../../../../components/Feed/Feed.vue.js";
|
|
6
6
|
import PlaceholderImage from "../../../icons/placeholders/PlaceholderImage.vue.js";
|
|
7
|
-
import _sfc_main$3 from "../../../../components/Dropdown/Dropdown.
|
|
7
|
+
import _sfc_main$3 from "../../../../components/Dropdown/Dropdown.vue.js";
|
|
8
8
|
import _sfc_main$5 from "../../../../components/Popup/Popup.vue.js";
|
|
9
9
|
import _sfc_main$2 from "../../../icons/entities/IconSettings.vue.js";
|
|
10
10
|
import _sfc_main$4 from "../../../icons/navigation/IconEllipsis.vue.js";
|
|
@@ -4,7 +4,7 @@ import _sfc_main$7 from "../../../../components/Button/Button.vue.js";
|
|
|
4
4
|
import Field from "../../../../components/Field/Field.vue.js";
|
|
5
5
|
import _sfc_main$2 from "../../../../components/Feed/Feed.vue.js";
|
|
6
6
|
/* empty css */
|
|
7
|
-
/* empty css
|
|
7
|
+
/* empty css */
|
|
8
8
|
import _sfc_main$1 from "../../../../components/Popup/Popup.vue.js";
|
|
9
9
|
import _sfc_main$3 from "../../../orders/components/blocks/CardOrderItem.vue.js";
|
|
10
10
|
import CardSpot from "../../../spots/components/blocks/CardSpot.vue.js";
|
|
@@ -1,5 +1,5 @@
|
|
|
1
1
|
import { ref, onMounted, resolveComponent, createElementBlock, openBlock, createElementVNode, createVNode, createTextVNode, Transition, withCtx, Fragment, renderList, createBlock, createCommentVNode, normalizeClass, toDisplayString } from "vue";
|
|
2
|
-
import Loader from "../../../../../components/Loader/Loader.
|
|
2
|
+
import Loader from "../../../../../components/Loader/Loader.vue.js";
|
|
3
3
|
import { useRouter } from "vue-router";
|
|
4
4
|
import { useI18n } from "vue-i18n";
|
|
5
5
|
import { actions as actions$1 } from "../../../../products/store/categories.js";
|
|
@@ -1,6 +1,6 @@
|
|
|
1
1
|
import { ref, createElementBlock, openBlock, Fragment, renderList, createBlock, normalizeClass, withCtx, createCommentVNode, createTextVNode, resolveDynamicComponent, toDisplayString, createElementVNode, createVNode } from "vue";
|
|
2
2
|
import _sfc_main$1 from "../../../../components/Button/Button.vue.js";
|
|
3
|
-
import _sfc_main$2 from "../../../../components/Dropdown/Dropdown.
|
|
3
|
+
import _sfc_main$2 from "../../../../components/Dropdown/Dropdown.vue.js";
|
|
4
4
|
import _sfc_main$3 from "../../../icons/navigation/IconEllipsis.vue.js";
|
|
5
5
|
const _hoisted_1 = { class: "flex gap-small mn-b-medium" };
|
|
6
6
|
const _hoisted_2 = { class: "dropdown-menu bg-white pd-small radius-medium shadow-big mn-t-thin" };
|
|
@@ -6,7 +6,7 @@ import _sfc_main$4 from "../../../../components/Button/Button.vue.js";
|
|
|
6
6
|
import _sfc_main$3 from "../../../../components/Checkbox/Checkbox.vue.js";
|
|
7
7
|
import Select from "../../../../components/Select/Select.vue2.js";
|
|
8
8
|
import UploadImage from "../../../../components/UploadImage/UploadImage.vue.js";
|
|
9
|
-
/* empty css
|
|
9
|
+
/* empty css */
|
|
10
10
|
import BlockMultiselect from "../../../core/views/components/blocks/BlockMultiselect.vue.js";
|
|
11
11
|
import _sfc_main$2 from "../../../icons/navigation/IconCross.vue.js";
|
|
12
12
|
import { actions as actions$1 } from "../../store/artists.js";
|
|
@@ -1,9 +1,9 @@
|
|
|
1
1
|
import { ref, computed, onMounted, resolveComponent, createElementBlock, openBlock, createCommentVNode, createVNode, createElementVNode, toDisplayString, Fragment, renderList, createBlock, withCtx, createTextVNode } from "vue";
|
|
2
2
|
import { useRoute, useRouter } from "vue-router";
|
|
3
3
|
/* empty css */
|
|
4
|
-
import Loader from "../../../../components/Loader/Loader.
|
|
4
|
+
import Loader from "../../../../components/Loader/Loader.vue.js";
|
|
5
5
|
import Media from "../../../../components/Media/Media.vue.js";
|
|
6
|
-
/* empty css
|
|
6
|
+
/* empty css */
|
|
7
7
|
import _sfc_main$8 from "../../../../components/Feed/Feed.vue.js";
|
|
8
8
|
import _sfc_main$1 from "../../../icons/navigation/IconPlay.vue.js";
|
|
9
9
|
import _sfc_main$3 from "../../../icons/navigation/IconLike.vue.js";
|
|
@@ -1,7 +1,7 @@
|
|
|
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
3
|
import _sfc_main$1 from "../../../../components/Button/Button.vue.js";
|
|
4
|
-
/* empty css
|
|
4
|
+
/* empty css */
|
|
5
5
|
import _sfc_main$2 from "../cards/TrackListCard.vue.js";
|
|
6
6
|
import { state, actions } from "../../store/artists.js";
|
|
7
7
|
import { state as state$1 } from "../../../auth/views/store/auth.js";
|
|
@@ -1,9 +1,9 @@
|
|
|
1
1
|
import { ref, computed, onMounted, resolveComponent, createElementBlock, openBlock, createCommentVNode, createVNode, createElementVNode, toDisplayString, Fragment, renderList, createBlock, withCtx, createTextVNode } from "vue";
|
|
2
2
|
import { useRoute, useRouter } from "vue-router";
|
|
3
3
|
import _sfc_main$9 from "../../../../components/Button/Button.vue.js";
|
|
4
|
-
/* empty css
|
|
4
|
+
/* empty css */
|
|
5
5
|
import Media from "../../../../components/Media/Media.vue.js";
|
|
6
|
-
/* empty css
|
|
6
|
+
/* empty css */
|
|
7
7
|
import _sfc_main$7 from "../../../../components/Feed/Feed.vue.js";
|
|
8
8
|
import _sfc_main$a from "../../../../components/Popup/Popup.vue.js";
|
|
9
9
|
import _sfc_main$1 from "../../../icons/navigation/IconPlay.vue.js";
|
|
@@ -6,7 +6,7 @@ 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
8
|
import _sfc_main$2 from "../../../../components/Button/Button.vue.js";
|
|
9
|
-
import Loader from "../../../../components/Loader/Loader.
|
|
9
|
+
import Loader from "../../../../components/Loader/Loader.vue.js";
|
|
10
10
|
import { state, actions } from "../../store/search.js";
|
|
11
11
|
/* empty css */
|
|
12
12
|
import _export_sfc from "../../../../../../_virtual/_plugin-vue_export-helper.js";
|
|
@@ -1,9 +1,9 @@
|
|
|
1
1
|
import { computed, ref, onMounted, resolveComponent, createElementBlock, openBlock, createCommentVNode, createBlock, createVNode, createElementVNode, withCtx, toDisplayString, Fragment, renderList } from "vue";
|
|
2
2
|
import { useRoute, useRouter } from "vue-router";
|
|
3
3
|
import _sfc_main$5 from "../../../../components/Button/Button.vue.js";
|
|
4
|
-
import Loader from "../../../../components/Loader/Loader.
|
|
4
|
+
import Loader from "../../../../components/Loader/Loader.vue.js";
|
|
5
5
|
import Media from "../../../../components/Media/Media.vue.js";
|
|
6
|
-
/* empty css
|
|
6
|
+
/* empty css */
|
|
7
7
|
import _sfc_main$c from "../../../../components/Popup/Popup.vue.js";
|
|
8
8
|
import _sfc_main$a from "../../../../components/Feed/Feed.vue.js";
|
|
9
9
|
import _sfc_main$2 from "../../../icons/navigation/IconPlay.vue.js";
|
package/dist/martyrs/src/modules/notifications/components/sections/NotificationPreferences.vue.js
CHANGED
|
@@ -1,7 +1,7 @@
|
|
|
1
1
|
import { inject, reactive, ref, computed, onMounted, createElementBlock, openBlock, createElementVNode, unref, createVNode, Fragment, renderList, toDisplayString, createBlock, createCommentVNode, withCtx, createTextVNode } from "vue";
|
|
2
2
|
import _sfc_main$1 from "../../../../components/Checkbox/Checkbox.vue.js";
|
|
3
3
|
import _sfc_main$2 from "../../../../components/Button/Button.vue.js";
|
|
4
|
-
import Loader from "../../../../components/Loader/Loader.
|
|
4
|
+
import Loader from "../../../../components/Loader/Loader.vue.js";
|
|
5
5
|
const _hoisted_1 = {
|
|
6
6
|
key: 0,
|
|
7
7
|
class: "pd-large t-center t-transp"
|
|
@@ -1,8 +1,8 @@
|
|
|
1
1
|
import { watch, onMounted, computed, createBlock, openBlock, withCtx, createElementVNode, createElementBlock, createCommentVNode, createVNode, Fragment, renderList } from "vue";
|
|
2
2
|
import { useRoute } from "vue-router";
|
|
3
|
-
/* empty css
|
|
4
|
-
/* empty css */
|
|
3
|
+
/* empty css */
|
|
5
4
|
/* empty css */
|
|
5
|
+
/* empty css */
|
|
6
6
|
/* empty css */
|
|
7
7
|
import Field from "../../../../components/Field/Field.vue.js";
|
|
8
8
|
import _sfc_main$2 from "../../../../components/Radio/Radio.vue.js";
|
|
@@ -3,9 +3,9 @@ import { useRouter, useRoute } from "vue-router";
|
|
|
3
3
|
import "vue-i18n";
|
|
4
4
|
/* empty css */
|
|
5
5
|
/* empty css */
|
|
6
|
-
import _sfc_main$1 from "../../../../components/Dropdown/Dropdown.
|
|
6
|
+
import _sfc_main$1 from "../../../../components/Dropdown/Dropdown.vue.js";
|
|
7
7
|
import _sfc_main$7 from "../../../../components/Chips/Chips.vue.js";
|
|
8
|
-
/* empty css
|
|
8
|
+
/* empty css */
|
|
9
9
|
import "../../../../components/Menu/MenuItem.vue.js";
|
|
10
10
|
import _sfc_main$6 from "../../../icons/entities/IconFollowing.vue.js";
|
|
11
11
|
import _sfc_main$5 from "../../../icons/navigation/IconEdit.vue.js";
|
package/dist/martyrs/src/modules/organizations/components/pages/OrganizationBackoffice.vue.js
CHANGED
|
@@ -1,5 +1,5 @@
|
|
|
1
1
|
import { ref, onMounted, createElementBlock, openBlock, createVNode, withCtx, createBlock, createCommentVNode, unref, createElementVNode } from "vue";
|
|
2
|
-
import _sfc_main$1 from "../../../../components/Menu/Menu.
|
|
2
|
+
import _sfc_main$1 from "../../../../components/Menu/Menu.vue.js";
|
|
3
3
|
import _sfc_main$2 from "../../../../components/Menu/MenuItem.vue.js";
|
|
4
4
|
/* empty css */
|
|
5
5
|
import _sfc_main$4 from "../../../icons/entities/IconProducts.vue.js";
|
|
@@ -5,9 +5,9 @@ import _sfc_main$1 from "../../../icons/entities/IconGroups.vue.js";
|
|
|
5
5
|
import _sfc_main$2 from "../../../icons/entities/IconLock.vue.js";
|
|
6
6
|
import _sfc_main$3 from "../../../icons/actions/IconShow.vue.js";
|
|
7
7
|
/* empty css */
|
|
8
|
-
/* empty css
|
|
9
|
-
/* empty css */
|
|
8
|
+
/* empty css */
|
|
10
9
|
/* empty css */
|
|
10
|
+
/* empty css */
|
|
11
11
|
/* empty css */
|
|
12
12
|
import Field from "../../../../components/Field/Field.vue.js";
|
|
13
13
|
/* empty css */
|
|
@@ -1,5 +1,5 @@
|
|
|
1
1
|
import { ref, computed, watch, onMounted, onUnmounted, createElementBlock, openBlock, createStaticVNode, createVNode, Transition, withCtx, createCommentVNode, withModifiers, createBlock } from "vue";
|
|
2
|
-
import Loader from "../../../../components/Loader/Loader.
|
|
2
|
+
import Loader from "../../../../components/Loader/Loader.vue.js";
|
|
3
3
|
/* empty css */
|
|
4
4
|
import _export_sfc from "../../../../../../_virtual/_plugin-vue_export-helper.js";
|
|
5
5
|
const _hoisted_1 = { class: "product-360-viewer" };
|
|
@@ -6,9 +6,9 @@ import Select from "../../../../components/Select/Select.vue2.js";
|
|
|
6
6
|
import UploadImage from "../../../../components/UploadImage/UploadImage.vue.js";
|
|
7
7
|
import Field from "../../../../components/Field/Field.vue.js";
|
|
8
8
|
import FieldTags from "../../../../components/FieldTags/FieldTags.vue.js";
|
|
9
|
-
/* empty css
|
|
10
|
-
/* empty css */
|
|
9
|
+
/* empty css */
|
|
11
10
|
/* empty css */
|
|
11
|
+
/* empty css */
|
|
12
12
|
/* empty css */
|
|
13
13
|
/* empty css */
|
|
14
14
|
import _sfc_main$1 from "../../../icons/navigation/IconCheckmark.vue.js";
|
|
@@ -2,7 +2,7 @@ import { computed, ref, watch, createElementBlock, openBlock, createElementVNode
|
|
|
2
2
|
import dayjs from "../../../../../../../../_virtual/dayjs.min.js";
|
|
3
3
|
import _sfc_main$2 from "../../../../../../components/Tab/Tab.vue2.js";
|
|
4
4
|
import _sfc_main$3 from "../../../../../../components/Button/Button.vue.js";
|
|
5
|
-
import _sfc_main$4 from "../../../../../../components/Dropdown/Dropdown.
|
|
5
|
+
import _sfc_main$4 from "../../../../../../components/Dropdown/Dropdown.vue.js";
|
|
6
6
|
import Calendar from "../../../../../../components/Calendar/Calendar.vue2.js";
|
|
7
7
|
import _sfc_main$1 from "./DateLabel.vue.js";
|
|
8
8
|
import IconNext from "../../../../../icons/navigation/IconChevronRight.vue.js";
|
|
@@ -4,7 +4,7 @@ import { useI18n } from "vue-i18n";
|
|
|
4
4
|
/* empty css */
|
|
5
5
|
/* empty css */
|
|
6
6
|
/* empty css */
|
|
7
|
-
/* empty css
|
|
7
|
+
/* empty css */
|
|
8
8
|
import { useStore } from "../../../core/views/store/core.store.js";
|
|
9
9
|
import { actions, state as state$1 } from "../../../products/store/categories.js";
|
|
10
10
|
import { state } from "../../../marketplace/views/store/marketplace.js";
|
package/dist/style.css
CHANGED
|
@@ -1604,75 +1604,75 @@ to {
|
|
|
1604
1604
|
overflow: hidden;
|
|
1605
1605
|
transition: height 0.3s cubic-bezier(0.4, 0, 0.2, 1);
|
|
1606
1606
|
}
|
|
1607
|
-
.rotate-180deg[data-v-
|
|
1607
|
+
.rotate-180deg[data-v-0f5220e0] {
|
|
1608
1608
|
transform: rotate(180deg);
|
|
1609
1609
|
}
|
|
1610
|
-
.hidden[data-v-
|
|
1610
|
+
.hidden[data-v-0f5220e0] {
|
|
1611
1611
|
/* opacity: 0;*/
|
|
1612
1612
|
width: 0;
|
|
1613
1613
|
display: none;
|
|
1614
1614
|
}
|
|
1615
|
-
.visible[data-v-
|
|
1615
|
+
.visible[data-v-0f5220e0] {
|
|
1616
1616
|
/* opacity: 1;*/
|
|
1617
1617
|
display: block;
|
|
1618
1618
|
}
|
|
1619
1619
|
|
|
1620
1620
|
/* Dropdown animations */
|
|
1621
|
-
.dropdown-enter[data-v-
|
|
1621
|
+
.dropdown-enter[data-v-0f5220e0], .dropdown-leave[data-v-0f5220e0] {
|
|
1622
1622
|
transition: all 0.3s ease-in-out;
|
|
1623
1623
|
}
|
|
1624
|
-
.dropdown-enter-from[data-v-
|
|
1624
|
+
.dropdown-enter-from[data-v-0f5220e0], .dropdown-leave-to[data-v-0f5220e0] {
|
|
1625
1625
|
opacity: 0;
|
|
1626
1626
|
transform: translateY(-0.5rem);
|
|
1627
1627
|
}
|
|
1628
|
-
.dropdown-enter-to[data-v-
|
|
1628
|
+
.dropdown-enter-to[data-v-0f5220e0], .dropdown-leave-from[data-v-0f5220e0] {
|
|
1629
1629
|
opacity: 1;
|
|
1630
1630
|
transform: translateY(0);
|
|
1631
1631
|
}
|
|
1632
1632
|
|
|
1633
1633
|
/* Horizontal dropdown submenu */
|
|
1634
|
-
.dropdown-submenu[data-v-
|
|
1634
|
+
.dropdown-submenu[data-v-0f5220e0] {
|
|
1635
1635
|
list-style: none;
|
|
1636
1636
|
padding: 0.5rem;
|
|
1637
1637
|
margin: 0;
|
|
1638
1638
|
min-width: 12rem;
|
|
1639
1639
|
}
|
|
1640
|
-
.dropdown-submenu li[data-v-
|
|
1640
|
+
.dropdown-submenu li[data-v-0f5220e0] {
|
|
1641
1641
|
width: 100%;
|
|
1642
1642
|
}
|
|
1643
|
-
.dropdown-submenu a[data-v-
|
|
1643
|
+
.dropdown-submenu a[data-v-0f5220e0] {
|
|
1644
1644
|
display: flex;
|
|
1645
1645
|
text-decoration: none;
|
|
1646
1646
|
white-space: nowrap;
|
|
1647
1647
|
}
|
|
1648
1648
|
|
|
1649
1649
|
/* Transition for horizontal dropdown */
|
|
1650
|
-
[data-v-
|
|
1650
|
+
[data-v-0f5220e0] .TransitionTranslateY-enter-active,[data-v-0f5220e0] .TransitionTranslateY-leave-active {
|
|
1651
1651
|
transition: translateY 0.2s ease;
|
|
1652
1652
|
transition: opacity 0.2s ease;
|
|
1653
1653
|
}
|
|
1654
|
-
[data-v-
|
|
1654
|
+
[data-v-0f5220e0] .TransitionTranslateY-enter-from,[data-v-0f5220e0] .TransitionTranslateY-leave-to {
|
|
1655
1655
|
opacity: 0;
|
|
1656
1656
|
transform: translateY(-0.5rem);
|
|
1657
1657
|
}
|
|
1658
|
-
[data-v-
|
|
1658
|
+
[data-v-0f5220e0] .TransitionTranslateY-enter-to,[data-v-0f5220e0] .TransitionTranslateY-leave-from {
|
|
1659
1659
|
opacity: 1;
|
|
1660
1660
|
transform: translateY(0);
|
|
1661
1661
|
}
|
|
1662
1662
|
|
|
1663
|
-
.hidden[data-v-
|
|
1663
|
+
.hidden[data-v-846509b5] {
|
|
1664
1664
|
opacity: 0;
|
|
1665
1665
|
width: 0;
|
|
1666
1666
|
display: none;
|
|
1667
1667
|
}
|
|
1668
|
-
.visible[data-v-
|
|
1668
|
+
.visible[data-v-846509b5] {
|
|
1669
1669
|
opacity: 1;
|
|
1670
1670
|
display: block;
|
|
1671
1671
|
}
|
|
1672
1672
|
|
|
1673
1673
|
/* Mobile: ВСЕГДА скрываем, показываем ТОЛЬКО по клику меню */
|
|
1674
1674
|
@media (max-width: 1024px) {
|
|
1675
|
-
aside[data-sidebar][data-v-
|
|
1675
|
+
aside[data-sidebar][data-v-846509b5] {
|
|
1676
1676
|
position: absolute !important;
|
|
1677
1677
|
left: 0 !important;
|
|
1678
1678
|
transform: translateX(-100%) !important;
|
|
@@ -1681,24 +1681,24 @@ aside[data-sidebar][data-v-99b57d1a] {
|
|
|
1681
1681
|
}
|
|
1682
1682
|
|
|
1683
1683
|
/* Показываем ТОЛЬКО когда manual клик (НЕ от SSR state) */
|
|
1684
|
-
aside[data-sidebar].mobile-opened[data-v-
|
|
1684
|
+
aside[data-sidebar].mobile-opened[data-v-846509b5] {
|
|
1685
1685
|
transform: translateX(0) !important;
|
|
1686
1686
|
visibility: visible !important;
|
|
1687
1687
|
}
|
|
1688
1688
|
}
|
|
1689
1689
|
|
|
1690
1690
|
/* Scrollbar styles */
|
|
1691
|
-
[data-v-
|
|
1691
|
+
[data-v-846509b5]::-webkit-scrollbar {
|
|
1692
1692
|
width: 6px;
|
|
1693
1693
|
}
|
|
1694
|
-
[data-v-
|
|
1694
|
+
[data-v-846509b5]::-webkit-scrollbar-track {
|
|
1695
1695
|
background: transparent;
|
|
1696
1696
|
}
|
|
1697
|
-
[data-v-
|
|
1697
|
+
[data-v-846509b5]::-webkit-scrollbar-thumb {
|
|
1698
1698
|
background-color: var(--grey-micro);
|
|
1699
1699
|
border-radius: 3px;
|
|
1700
1700
|
}
|
|
1701
|
-
[data-v-
|
|
1701
|
+
[data-v-846509b5]::-webkit-scrollbar-thumb:hover {
|
|
1702
1702
|
background-color: var(--grey-small);
|
|
1703
1703
|
}
|
|
1704
1704
|
.eye[data-v-4241147a] {
|
package/package.json
CHANGED
|
@@ -43,6 +43,9 @@
|
|
|
43
43
|
:logotype="route.meta.logotype"
|
|
44
44
|
:location="route.meta.location"
|
|
45
45
|
:headerClass="computedHeaderClass"
|
|
46
|
+
:showCart="route.meta.header_show_cart ?? true"
|
|
47
|
+
:showProfile="route.meta.header_show_profile ?? true"
|
|
48
|
+
:showNotifications="route.meta.header_show_notifications ?? true"
|
|
46
49
|
>
|
|
47
50
|
<component
|
|
48
51
|
v-if="route.meta?.header_navigation"
|
|
@@ -52,6 +55,9 @@
|
|
|
52
55
|
:stateSidebar="store.core.state.isOpenSidebar"
|
|
53
56
|
:theme="headerTheme"
|
|
54
57
|
/>
|
|
58
|
+
<template #right>
|
|
59
|
+
<component v-if="route.meta?.header_right_component" :is="route.meta.header_right_component" :theme="headerTheme" />
|
|
60
|
+
</template>
|
|
55
61
|
</component>
|
|
56
62
|
|
|
57
63
|
|
|
@@ -111,7 +117,7 @@
|
|
|
111
117
|
|
|
112
118
|
<!-- Footer slot -->
|
|
113
119
|
<template #footer>
|
|
114
|
-
<component v-if="route.meta?.sidebar_footer_component" :is="route.meta.sidebar_footer_component" :theme="headerTheme" />
|
|
120
|
+
<component v-if="route.meta?.sidebar_footer_component" :is="route.meta.sidebar_footer_component" :theme="headerTheme" :stateSidebar="store.core.state.isOpenSidebar" />
|
|
115
121
|
</template>
|
|
116
122
|
</component>
|
|
117
123
|
|