mirror of
https://github.com/sabjorn7/meetguru.git
synced 2025-08-11 20:46:59 +03:00
v120 - okay
This commit is contained in:
parent
c2b6a6f17c
commit
e27b11c26c
File diff suppressed because one or more lines are too long
File diff suppressed because one or more lines are too long
File diff suppressed because one or more lines are too long
File diff suppressed because one or more lines are too long
File diff suppressed because one or more lines are too long
File diff suppressed because one or more lines are too long
File diff suppressed because one or more lines are too long
File diff suppressed because one or more lines are too long
File diff suppressed because one or more lines are too long
File diff suppressed because one or more lines are too long
File diff suppressed because one or more lines are too long
File diff suppressed because one or more lines are too long
File diff suppressed because one or more lines are too long
File diff suppressed because one or more lines are too long
File diff suppressed because one or more lines are too long
File diff suppressed because one or more lines are too long
File diff suppressed because one or more lines are too long
File diff suppressed because one or more lines are too long
File diff suppressed because one or more lines are too long
File diff suppressed because one or more lines are too long
File diff suppressed because one or more lines are too long
File diff suppressed because one or more lines are too long
@ -1 +1 @@
|
||||
{"cacheVersion":119,"page":{"id":"cf9f551f-e733-4934-a682-535575cb7c70","paths":{"en":"promo","default":"promo"},"cmsDataSetPath":null,"workflows":[]},"sections":{"4a2188f6-d98c-4150-9ba7-5918c72f3421":{"uid":"4a2188f6-d98c-4150-9ba7-5918c72f3421","linkId":"416695e7-e54e-4897-9f9a-befeb223f1b0","_state":{"style":{"default":{}}},"content":{"default":{"wwObjects":[],"_ww-layout_alignItems":"flex-start","_ww-layout_flexDirection":"column"}},"sectionBaseId":"99586bd3-2b15-4d6b-a025-6a50d07ca845","sectionTitle":"Section"}},"wwObjects":{},"collections":[],"variables":[],"workflows":[],"formulas":[],"libraryComponents":[]}
|
||||
{"cacheVersion":120,"page":{"id":"cf9f551f-e733-4934-a682-535575cb7c70","paths":{"en":"promo","default":"promo"},"cmsDataSetPath":null,"workflows":[]},"sections":{"4a2188f6-d98c-4150-9ba7-5918c72f3421":{"uid":"4a2188f6-d98c-4150-9ba7-5918c72f3421","linkId":"416695e7-e54e-4897-9f9a-befeb223f1b0","_state":{"style":{"default":{}}},"content":{"default":{"wwObjects":[],"_ww-layout_alignItems":"flex-start","_ww-layout_flexDirection":"column"}},"sectionBaseId":"99586bd3-2b15-4d6b-a025-6a50d07ca845","sectionTitle":"Section"}},"wwObjects":{},"collections":[],"variables":[],"workflows":[],"formulas":[],"libraryComponents":[]}
|
File diff suppressed because one or more lines are too long
File diff suppressed because one or more lines are too long
File diff suppressed because one or more lines are too long
File diff suppressed because one or more lines are too long
@ -1 +1 @@
|
||||
{"name":"Образовательная платформа Meetguru","short_name":"Образовательная платформа Meetguru","icons":[{"src":"images/48-favicon.png?_wwcv=119","type":"image/png","sizes":"48x48"},{"src":"images/72-favicon.png?_wwcv=119","type":"image/png","sizes":"72x72"},{"src":"images/96-favicon.png?_wwcv=119","type":"image/png","sizes":"96x96"},{"src":"images/128-favicon.png?_wwcv=119","type":"image/png","sizes":"128x128"},{"src":"images/144-favicon.png?_wwcv=119","type":"image/png","sizes":"144x144"},{"src":"images/152-favicon.png?_wwcv=119","type":"image/png","sizes":"152x152"},{"src":"images/192-favicon.png?_wwcv=119","type":"image/png","sizes":"192x192"},{"src":"images/256-favicon.png?_wwcv=119","type":"image/png","sizes":"256x256"},{"src":"images/384-favicon.png?_wwcv=119","type":"image/png","sizes":"384x384"},{"src":"images/512-favicon.png?_wwcv=119","type":"image/png","sizes":"512x512"}],"start_url":"/","display":"fullscreen","scope":"/","background_color":"#FFFFFF","theme_color":"#FFFFFF"}
|
||||
{"name":"Образовательная платформа Meetguru","short_name":"Образовательная платформа Meetguru","icons":[{"src":"images/48-favicon.png?_wwcv=120","type":"image/png","sizes":"48x48"},{"src":"images/72-favicon.png?_wwcv=120","type":"image/png","sizes":"72x72"},{"src":"images/96-favicon.png?_wwcv=120","type":"image/png","sizes":"96x96"},{"src":"images/128-favicon.png?_wwcv=120","type":"image/png","sizes":"128x128"},{"src":"images/144-favicon.png?_wwcv=120","type":"image/png","sizes":"144x144"},{"src":"images/152-favicon.png?_wwcv=120","type":"image/png","sizes":"152x152"},{"src":"images/192-favicon.png?_wwcv=120","type":"image/png","sizes":"192x192"},{"src":"images/256-favicon.png?_wwcv=120","type":"image/png","sizes":"256x256"},{"src":"images/384-favicon.png?_wwcv=120","type":"image/png","sizes":"384x384"},{"src":"images/512-favicon.png?_wwcv=120","type":"image/png","sizes":"512x512"}],"start_url":"/","display":"fullscreen","scope":"/","background_color":"#FFFFFF","theme_color":"#FFFFFF"}
|
@ -1,4 +1,4 @@
|
||||
const version = 119;
|
||||
const version = 120;
|
||||
self.addEventListener('install', event => {
|
||||
// eslint-disable-next-line no-console
|
||||
console.log(`Service worker v${version} installed`);
|
||||
|
@ -44,6 +44,7 @@ export const TEXT_CONFIGURATION = {
|
||||
responsive: true,
|
||||
states: true,
|
||||
classes: true,
|
||||
isStyle: true,
|
||||
},
|
||||
'_ww-text_fontSize': {
|
||||
label: 'Size',
|
||||
@ -63,6 +64,7 @@ export const TEXT_CONFIGURATION = {
|
||||
bindable: true,
|
||||
hidden: (content, _, boundProps) => content['_ww-text_font'] || boundProps['_ww-text_font'],
|
||||
bindingValidation: { markdown: 'font-size', type: 'string', cssSupports: 'font-size' },
|
||||
isStyle: true,
|
||||
},
|
||||
'_ww-text_fontFamily': {
|
||||
label: 'Font family',
|
||||
@ -74,6 +76,7 @@ export const TEXT_CONFIGURATION = {
|
||||
bindable: true,
|
||||
hidden: (content, _, boundProps) => content['_ww-text_font'] || boundProps['_ww-text_font'],
|
||||
bindingValidation: { markdown: 'font-family', type: 'string', cssSupports: 'font-family' },
|
||||
isStyle: true,
|
||||
},
|
||||
'_ww-text_fontWeight': {
|
||||
label: 'Font weight',
|
||||
@ -99,6 +102,7 @@ export const TEXT_CONFIGURATION = {
|
||||
bindable: true,
|
||||
hidden: (content, _, boundProps) => content['_ww-text_font'] || boundProps['_ww-text_font'],
|
||||
bindingValidation: { markdown: 'font-weight', type: 'string', cssSupports: 'font-weight' },
|
||||
isStyle: true,
|
||||
},
|
||||
'_ww-text_fontStyle': {
|
||||
label: 'Font Style',
|
||||
@ -116,6 +120,7 @@ export const TEXT_CONFIGURATION = {
|
||||
classes: true,
|
||||
hidden: (content, _, boundProps) => content['_ww-text_font'] || boundProps['_ww-text_font'],
|
||||
bindingValidation: { markdown: 'font-style', type: 'string', cssSupports: 'font-style' },
|
||||
isStyle: true,
|
||||
},
|
||||
'_ww-text_lineHeight': {
|
||||
label: 'Line height',
|
||||
@ -138,6 +143,7 @@ export const TEXT_CONFIGURATION = {
|
||||
bindable: true,
|
||||
hidden: (content, _, boundProps) => content['_ww-text_font'] || boundProps['_ww-text_font'],
|
||||
bindingValidation: { markdown: 'line-height', type: 'string', cssSupports: 'line-height' },
|
||||
isStyle: true,
|
||||
},
|
||||
'_ww-text_textAlign': {
|
||||
label: 'Alignment',
|
||||
@ -155,6 +161,7 @@ export const TEXT_CONFIGURATION = {
|
||||
classes: true,
|
||||
bindable: true,
|
||||
bindingValidation: { markdown: 'text-align', type: 'string', cssSupports: 'text-align' },
|
||||
isStyle: true,
|
||||
},
|
||||
'_ww-text_color': {
|
||||
label: 'Text color',
|
||||
@ -166,6 +173,7 @@ export const TEXT_CONFIGURATION = {
|
||||
responsive: true,
|
||||
states: true,
|
||||
classes: true,
|
||||
isStyle: true,
|
||||
},
|
||||
'_ww-text_textDecoration': {
|
||||
label: 'Decoration',
|
||||
@ -184,6 +192,7 @@ export const TEXT_CONFIGURATION = {
|
||||
states: true,
|
||||
classes: true,
|
||||
bindingValidation: { markdown: 'text-decoration', type: 'string', cssSupports: 'text-decoration' },
|
||||
isStyle: true,
|
||||
},
|
||||
'_ww-text_textDecorationStyle': {
|
||||
label: 'Decoration style',
|
||||
@ -208,6 +217,7 @@ export const TEXT_CONFIGURATION = {
|
||||
type: 'string',
|
||||
cssSupports: 'text-decoration-style',
|
||||
},
|
||||
isStyle: true,
|
||||
},
|
||||
'_ww-text_textDecorationColor': {
|
||||
label: 'Decoration color',
|
||||
@ -220,6 +230,7 @@ export const TEXT_CONFIGURATION = {
|
||||
states: true,
|
||||
classes: true,
|
||||
hidden: content => content['_ww-text_textDecoration'] === 'none' || !content['_ww-text_textDecoration'],
|
||||
isStyle: true,
|
||||
},
|
||||
'_ww-text_nowrap': {
|
||||
label: 'No-wrap',
|
||||
@ -230,6 +241,7 @@ export const TEXT_CONFIGURATION = {
|
||||
states: true,
|
||||
classes: true,
|
||||
bindingValidation: { type: 'boolean', markdown: 'no-wrap' },
|
||||
isStyle: true,
|
||||
},
|
||||
'_ww-text_ellipsis': {
|
||||
hidden: content => !content['_ww-text_nowrap'],
|
||||
@ -241,6 +253,7 @@ export const TEXT_CONFIGURATION = {
|
||||
states: true,
|
||||
classes: true,
|
||||
bindingValidation: { type: 'boolean', markdown: 'ellipsis' },
|
||||
isStyle: true,
|
||||
},
|
||||
'_ww-text_textTransform': {
|
||||
label: 'Character case',
|
||||
@ -259,6 +272,7 @@ export const TEXT_CONFIGURATION = {
|
||||
bindingValidation: { markdown: 'text-transform', type: 'string', cssSupports: 'text-transform' },
|
||||
states: true,
|
||||
classes: true,
|
||||
isStyle: true,
|
||||
},
|
||||
'_ww-text_textShadow': {
|
||||
label: 'Text Shadows',
|
||||
@ -270,6 +284,7 @@ export const TEXT_CONFIGURATION = {
|
||||
states: true,
|
||||
classes: true,
|
||||
bindingValidation: { markdown: 'text-shadow', type: 'string', cssSupports: 'text-shadow' },
|
||||
isStyle: true,
|
||||
},
|
||||
'_ww-text_letterSpacing': {
|
||||
label: 'Letter spacing',
|
||||
@ -288,6 +303,7 @@ export const TEXT_CONFIGURATION = {
|
||||
classes: true,
|
||||
bindable: true,
|
||||
bindingValidation: { markdown: 'letter-spacing', type: 'string', cssSupports: 'letter-spacing' },
|
||||
isStyle: true,
|
||||
},
|
||||
'_ww-text_wordSpacing': {
|
||||
label: 'Word spacing',
|
||||
@ -302,6 +318,7 @@ export const TEXT_CONFIGURATION = {
|
||||
classes: true,
|
||||
bindable: true,
|
||||
bindingValidation: { markdown: 'word-spacing', type: 'string', cssSupports: 'word-spacing' },
|
||||
isStyle: true,
|
||||
},
|
||||
'_ww-text_links': {
|
||||
hidden: true,
|
||||
|
@ -219,7 +219,7 @@ export default {
|
||||
|
||||
const wwTechnicalAttributes = computed(() => {
|
||||
let attributes = {
|
||||
'data-ww-element': true,
|
||||
'data-ww-element': !props.noInteraction,
|
||||
'data-ww-uid': props.uid,
|
||||
'data-ww-component-id': id,
|
||||
};
|
||||
|
@ -1,11 +1,11 @@
|
||||
<template>
|
||||
<wwLocalContext :methods="localMethods" element-key="popup">
|
||||
<wwLocalContext :methods="localMethods" :data="data" element-key="popup">
|
||||
<wwLibraryComponent :uid="modal.uid" is-popup></wwLibraryComponent>
|
||||
</wwLocalContext>
|
||||
</template>
|
||||
|
||||
<script>
|
||||
import { provide } from 'vue';
|
||||
import { provide, computed } from 'vue';
|
||||
import wwLibraryComponent from './wwLibraryComponent.vue';
|
||||
import { usePopupStore } from '@/pinia/popup.js';
|
||||
|
||||
@ -17,14 +17,15 @@ export default {
|
||||
type: Object,
|
||||
required: true,
|
||||
},
|
||||
stacked: { type: Boolean, default: false },
|
||||
},
|
||||
setup(props) {
|
||||
const modalsStore = usePopupStore();
|
||||
const popupStore = usePopupStore();
|
||||
const localMethods = {
|
||||
close: {
|
||||
description: 'Close the popup',
|
||||
method(data) {
|
||||
modalsStore.close(props.modal?.uid, data);
|
||||
popupStore.close(props.modal?.uid, data);
|
||||
},
|
||||
editor: {
|
||||
label: 'Close this popup instance',
|
||||
@ -53,10 +54,21 @@ export default {
|
||||
},
|
||||
},
|
||||
};
|
||||
const data = computed(() => {
|
||||
const instances = Object.values(popupStore.instances).filter(
|
||||
m => m.libraryComponentBaseId === props.modal?.libraryComponentBaseId
|
||||
);
|
||||
return {
|
||||
instancesCount: instances.length,
|
||||
index: instances.findIndex(m => m.uid === props.modal?.uid),
|
||||
totalCount: Object.keys(popupStore.instances).length,
|
||||
};
|
||||
});
|
||||
|
||||
provide('dragZoneId', props.modal?.uid);
|
||||
provide('_wwPopupStacked', props.stacked);
|
||||
|
||||
return { localMethods };
|
||||
return { localMethods, data };
|
||||
},
|
||||
};
|
||||
</script>
|
||||
|
File diff suppressed because one or more lines are too long
@ -24,7 +24,10 @@
|
||||
:section-id="activeLinkPopup.sectionId"
|
||||
/>
|
||||
</transition>
|
||||
<wwFrontPopup v-for="(modal, uid) in modalsStore.instances" :key="uid" :modal="modal" />
|
||||
<wwElement v-for="(popups, uid) in popupStore.stackedPopupUids" :key="uid" :uid="uid" no-interaction>
|
||||
<wwFrontPopup v-for="pUid in popups" :key="pUid" :modal="popupStore.instances[pUid]" stacked />
|
||||
</wwElement>
|
||||
<wwFrontPopup v-for="uid in popupStore.singlePopupUids" :key="uid" :modal="popupStore.instances[uid]" />
|
||||
</div>
|
||||
</template>
|
||||
|
||||
@ -49,7 +52,7 @@ export default {
|
||||
setup() {
|
||||
const store = useStore();
|
||||
const page = computed(() => store.getters['websiteData/getPage'] || { id: null, meta: {} });
|
||||
const modalsStore = usePopupStore();
|
||||
const popupStore = usePopupStore();
|
||||
|
||||
const designInfo = computed(() => store.getters['websiteData/getDesignInfo'] || {});
|
||||
|
||||
@ -70,7 +73,7 @@ export default {
|
||||
x: 0,
|
||||
y: 0,
|
||||
},
|
||||
modalsStore,
|
||||
popupStore,
|
||||
/* wwFront:start */
|
||||
sections: computed(() => {
|
||||
const sections = store.getters['websiteData/getSections'];
|
||||
|
@ -1,5 +1,6 @@
|
||||
<template>
|
||||
<div
|
||||
v-if="!isStacked"
|
||||
class="ww-dialog"
|
||||
:style="!content.overlay && dialogStyle"
|
||||
:class="[
|
||||
@ -29,6 +30,7 @@
|
||||
]"
|
||||
></wwLayout>
|
||||
</div>
|
||||
<wwLayout v-else path="children" role="dialog"></wwLayout>
|
||||
</template>
|
||||
|
||||
<script>
|
||||
@ -40,7 +42,10 @@ export default {
|
||||
content: { type: Object, required: true },
|
||||
uid: { type: String, required: true },
|
||||
},
|
||||
|
||||
events: [],
|
||||
setup(props, { emit }) {
|
||||
const isStacked = inject('_wwPopupStacked', false);
|
||||
const isEditing = computed(() => {
|
||||
// eslint-disable-next-line no-unreachable
|
||||
return false;
|
||||
@ -50,13 +55,14 @@ export default {
|
||||
|
||||
// TODO: will not work with several instances
|
||||
watchEffect(() => {
|
||||
if (props.content.preventScroll && !isEditing.value) {
|
||||
if (props.content.preventScroll && !isEditing.value && !unref(isStacked)) {
|
||||
wwLib.getFrontDocument().documentElement.classList.add('ww-dialog-open');
|
||||
} else {
|
||||
wwLib.getFrontDocument().documentElement.classList.remove('ww-dialog-open');
|
||||
}
|
||||
});
|
||||
|
||||
|
||||
const animationDuration = computed(() => {
|
||||
return props.content.animationDuration + 'ms';
|
||||
});
|
||||
@ -92,7 +98,7 @@ export default {
|
||||
}
|
||||
|
||||
watchEffect(() => {
|
||||
if (props.content.escClose) {
|
||||
if (props.content.escClose && !isStacked) {
|
||||
wwLib.getFrontDocument().addEventListener('keydown', onEscapeKeyDown);
|
||||
} else {
|
||||
wwLib.getFrontDocument().removeEventListener('keydown', onEscapeKeyDown);
|
||||
@ -149,6 +155,7 @@ export default {
|
||||
}
|
||||
},
|
||||
isEditing,
|
||||
isStacked,
|
||||
};
|
||||
},
|
||||
};
|
||||
|
@ -57,11 +57,9 @@ export default {
|
||||
],
|
||||
},
|
||||
defaultValue: 'center',
|
||||
hidden: content => content.type !== 'modal',
|
||||
bindable: true,
|
||||
},
|
||||
customPositionX: {
|
||||
hidden: content => content.sideModal !== 'custom' || content.type !== 'modal',
|
||||
label: {
|
||||
en: 'Horizontal',
|
||||
fr: 'Horizontal',
|
||||
@ -91,12 +89,11 @@ export default {
|
||||
{ value: 'bottom', label: { en: 'Bottom', fr: 'Bas' } },
|
||||
],
|
||||
},
|
||||
hidden: content => content.type !== 'sheet',
|
||||
hidden: (content, sidepanelcontent) => content.type !== 'sheet' || sidepanelcontent?.isStacked,
|
||||
defaultValue: 'top',
|
||||
bindable: true,
|
||||
},
|
||||
align: {
|
||||
hidden: content => content.type !== 'modal',
|
||||
label: {
|
||||
en: 'Align',
|
||||
fr: 'Alignement',
|
||||
@ -115,7 +112,6 @@ export default {
|
||||
bindable: true,
|
||||
},
|
||||
customPositionY: {
|
||||
hidden: content => content.align !== 'custom' || content.type !== 'modal',
|
||||
label: {
|
||||
en: 'Vertical',
|
||||
fr: 'Vertical',
|
||||
@ -149,7 +145,8 @@ export default {
|
||||
bindable: true,
|
||||
},
|
||||
slideInDirection: {
|
||||
hidden: content => content.animation !== 'slide-in' || content.animation === null,
|
||||
hidden: (content, sidepanelcontent) =>
|
||||
content.animation !== 'slide-in' || content.animation === null || sidepanelcontent?.isStacked,
|
||||
label: {
|
||||
en: 'Direction',
|
||||
fr: 'Direction',
|
||||
@ -180,7 +177,7 @@ export default {
|
||||
max: 10000,
|
||||
},
|
||||
bindable: true,
|
||||
hidden: content => content.animation === null,
|
||||
hidden: (content, sidepanelcontent) => content.animation === null || sidepanelcontent?.isStacked,
|
||||
},
|
||||
animationEasing: {
|
||||
label: {
|
||||
@ -200,7 +197,7 @@ export default {
|
||||
},
|
||||
defaultValue: 'linear',
|
||||
bindable: true,
|
||||
hidden: content => content.animation === null,
|
||||
hidden: (content, sidepanelcontent) => content.animation === null || sidepanelcontent?.isStacked,
|
||||
},
|
||||
|
||||
preventScroll: {
|
||||
@ -252,7 +249,6 @@ export default {
|
||||
propertyHelp: {
|
||||
tooltip: 'Whether the dialog should be closed when the user clicks outside the dialog.',
|
||||
},
|
||||
hidden: content => content.overlay,
|
||||
},
|
||||
overlayClickCloses: {
|
||||
type: 'OnOff',
|
||||
@ -266,7 +262,6 @@ export default {
|
||||
propertyHelp: {
|
||||
tooltip: 'You can prevent the dialog from closing when the user clicks the overlay.',
|
||||
},
|
||||
hidden: content => !content.overlay,
|
||||
},
|
||||
overlayBackgroundColor: {
|
||||
label: {
|
||||
@ -278,7 +273,7 @@ export default {
|
||||
bindable: true,
|
||||
responsive: true,
|
||||
classes: true,
|
||||
hidden: content => !content.overlay,
|
||||
hidden: (content, sidepanelcontent) => !content.overlay || sidepanelcontent?.isStacked,
|
||||
options: {
|
||||
nullable: true,
|
||||
},
|
||||
|
@ -34,8 +34,8 @@ import wwobject1be951afde7143e6ad1ee9b36de15529 from '@/components/elements/elem
|
||||
import wwobject9ecb2cfccef74be8b7363e17a3b7e9ff from '@/components/elements/element-9ecb2cfc-cef7-4be8-b736-3e17a3b7e9ff/ww-config.js';
|
||||
import wwobjecta823467cbdc74ceca38c71875c4c214a from '@/components/elements/element-a823467c-bdc7-4cec-a38c-71875c4c214a/ww-config.js';
|
||||
import wwobject9ae1fce82e314bfda4d20450235bdfd5 from '@/components/elements/element-9ae1fce8-2e31-4bfd-a4d2-0450235bdfd5/ww-config.js';
|
||||
import wwobjectc6c0c00e49fd4cb9bd785bc09945721e from '@/components/elements/element-c6c0c00e-49fd-4cb9-bd78-5bc09945721e/ww-config.js';
|
||||
import wwobjectdeb10a015eef4aa190171b51c2ad6fd0 from '@/components/elements/element-deb10a01-5eef-4aa1-9017-1b51c2ad6fd0/ww-config.js';
|
||||
import wwobjectc6c0c00e49fd4cb9bd785bc09945721e from '@/components/elements/element-c6c0c00e-49fd-4cb9-bd78-5bc09945721e/ww-config.js';
|
||||
/* wwFront:end */
|
||||
|
||||
export const useComponentBasesStore = defineStore('componentBases', () => {
|
||||
@ -74,8 +74,8 @@ export const useComponentBasesStore = defineStore('componentBases', () => {
|
||||
'wwobject-9ecb2cfc-cef7-4be8-b736-3e17a3b7e9ff': getInheritedConfiguration({ ...wwobject9ecb2cfccef74be8b7363e17a3b7e9ff, name: 'wwobject-9ecb2cfc-cef7-4be8-b736-3e17a3b7e9ff' }),
|
||||
'wwobject-a823467c-bdc7-4cec-a38c-71875c4c214a': getInheritedConfiguration({ ...wwobjecta823467cbdc74ceca38c71875c4c214a, name: 'wwobject-a823467c-bdc7-4cec-a38c-71875c4c214a' }),
|
||||
'wwobject-9ae1fce8-2e31-4bfd-a4d2-0450235bdfd5': getInheritedConfiguration({ ...wwobject9ae1fce82e314bfda4d20450235bdfd5, name: 'wwobject-9ae1fce8-2e31-4bfd-a4d2-0450235bdfd5' }),
|
||||
'wwobject-c6c0c00e-49fd-4cb9-bd78-5bc09945721e': getInheritedConfiguration({ ...wwobjectc6c0c00e49fd4cb9bd785bc09945721e, name: 'wwobject-c6c0c00e-49fd-4cb9-bd78-5bc09945721e' }),
|
||||
'wwobject-deb10a01-5eef-4aa1-9017-1b51c2ad6fd0': getInheritedConfiguration({ ...wwobjectdeb10a015eef4aa190171b51c2ad6fd0, name: 'wwobject-deb10a01-5eef-4aa1-9017-1b51c2ad6fd0' })};
|
||||
'wwobject-deb10a01-5eef-4aa1-9017-1b51c2ad6fd0': getInheritedConfiguration({ ...wwobjectdeb10a015eef4aa190171b51c2ad6fd0, name: 'wwobject-deb10a01-5eef-4aa1-9017-1b51c2ad6fd0' }),
|
||||
'wwobject-c6c0c00e-49fd-4cb9-bd78-5bc09945721e': getInheritedConfiguration({ ...wwobjectc6c0c00e49fd4cb9bd785bc09945721e, name: 'wwobject-c6c0c00e-49fd-4cb9-bd78-5bc09945721e' })};
|
||||
/* wwFront:end */
|
||||
|
||||
return {
|
||||
|
@ -58,5 +58,32 @@ export const usePopupStore = defineStore('popups', () => {
|
||||
close,
|
||||
closeAll,
|
||||
instances,
|
||||
stackedPopupUids: computed(() => {
|
||||
const stacks = {};
|
||||
Object.values(instances.value).forEach(popup => {
|
||||
const isStacked =
|
||||
wwLib.$store.getters['libraries/getComponents'][popup.libraryComponentBaseId]?.configuration?.popup
|
||||
?.isStacked &&
|
||||
wwLib.$store.getters['libraries/getComponents'][popup.libraryComponentBaseId]?.configuration?.popup
|
||||
?.containerUid;
|
||||
if (!isStacked) return;
|
||||
const containerUid =
|
||||
wwLib.$store.getters['libraries/getComponents'][popup.libraryComponentBaseId]?.configuration?.popup
|
||||
?.containerUid;
|
||||
if (!stacks[containerUid]) {
|
||||
stacks[containerUid] = [];
|
||||
}
|
||||
stacks[containerUid].push(popup.uid);
|
||||
});
|
||||
|
||||
return stacks;
|
||||
}),
|
||||
singlePopupUids: computed(() => {
|
||||
return Object.keys(instances.value).filter(uid => {
|
||||
const popup = instances.value[uid];
|
||||
return !wwLib.$store.getters['libraries/getComponents'][popup.libraryComponentBaseId]?.configuration
|
||||
?.popup?.isStacked;
|
||||
});
|
||||
}),
|
||||
};
|
||||
});
|
||||
|
@ -12,20 +12,20 @@
|
||||
|
||||
<link rel="icon" type="image/x-icon" href="favicon.ico?_wwcv={{cacheVersion}}" />
|
||||
|
||||
<link rel="manifest" href="manifest.json?_wwcv=119" />
|
||||
<link rel="manifest" href="manifest.json?_wwcv=120" />
|
||||
<meta name="theme-color" content="" />
|
||||
<link rel="apple-touch-icon" sizes="48x48" href="images/48-favicon.png?_wwcv=119">
|
||||
<link rel="apple-touch-icon" sizes="72x72" href="images/72-favicon.png?_wwcv=119">
|
||||
<link rel="apple-touch-icon" sizes="96x96" href="images/96-favicon.png?_wwcv=119">
|
||||
<link rel="apple-touch-icon" sizes="128x128" href="images/128-favicon.png?_wwcv=119">
|
||||
<link rel="apple-touch-icon" sizes="144x144" href="images/144-favicon.png?_wwcv=119">
|
||||
<link rel="apple-touch-icon" sizes="152x152" href="images/152-favicon.png?_wwcv=119">
|
||||
<link rel="apple-touch-icon" sizes="192x192" href="images/192-favicon.png?_wwcv=119">
|
||||
<link rel="apple-touch-icon" sizes="256x256" href="images/256-favicon.png?_wwcv=119">
|
||||
<link rel="apple-touch-icon" sizes="384x384" href="images/384-favicon.png?_wwcv=119">
|
||||
<link rel="apple-touch-icon" sizes="512x512" href="images/512-favicon.png?_wwcv=119">
|
||||
<link rel="apple-touch-icon" sizes="48x48" href="images/48-favicon.png?_wwcv=120">
|
||||
<link rel="apple-touch-icon" sizes="72x72" href="images/72-favicon.png?_wwcv=120">
|
||||
<link rel="apple-touch-icon" sizes="96x96" href="images/96-favicon.png?_wwcv=120">
|
||||
<link rel="apple-touch-icon" sizes="128x128" href="images/128-favicon.png?_wwcv=120">
|
||||
<link rel="apple-touch-icon" sizes="144x144" href="images/144-favicon.png?_wwcv=120">
|
||||
<link rel="apple-touch-icon" sizes="152x152" href="images/152-favicon.png?_wwcv=120">
|
||||
<link rel="apple-touch-icon" sizes="192x192" href="images/192-favicon.png?_wwcv=120">
|
||||
<link rel="apple-touch-icon" sizes="256x256" href="images/256-favicon.png?_wwcv=120">
|
||||
<link rel="apple-touch-icon" sizes="384x384" href="images/384-favicon.png?_wwcv=120">
|
||||
<link rel="apple-touch-icon" sizes="512x512" href="images/512-favicon.png?_wwcv=120">
|
||||
<link href="https://fonts.googleapis.com/css2?family=Inter:wght@100;200;300;400;500;600;700;800;900&display=swap" rel="preload" as="style" onload="this.onload=null;this.rel='stylesheet'">
|
||||
<link href="/fonts/Phosphor/font.css?_wwcv=119" rel="preload" as="style" onload="this.onload=null;this.rel='stylesheet'">
|
||||
<link href="/fonts/Phosphor/font.css?_wwcv=120" rel="preload" as="style" onload="this.onload=null;this.rel='stylesheet'">
|
||||
<link href="https://fonts.googleapis.com/css2?family=Raleway:ital,wght@0,100;0,200;0,300;0,400;0,500;0,600;0,700;0,800;0,900;1,100;1,200;1,300;1,400;1,500;1,600;1,700;1,800;1,900&display=swap" rel="preload" as="style" onload="this.onload=null;this.rel='stylesheet'">
|
||||
<style>:root{ --ww-default-font-family: 'Raleway', sans-serif }</style>
|
||||
<style>
|
||||
|
File diff suppressed because one or more lines are too long
Loading…
x
Reference in New Issue
Block a user