npm run serve:ssr funktioniert und Hamburger Menu bug fix
This commit is contained in:
@@ -159,8 +159,10 @@ export function formatPhoneNumber(phone: string): string {
|
||||
}
|
||||
|
||||
export const getSessionStorageHandler = function (criteriaType, path, value, previous, applyData) {
|
||||
sessionStorage.setItem(`${criteriaType}_criteria`, JSON.stringify(this));
|
||||
console.log('Zusätzlicher Parameter:', criteriaType);
|
||||
if (typeof sessionStorage !== 'undefined') {
|
||||
sessionStorage.setItem(`${criteriaType}_criteria`, JSON.stringify(this));
|
||||
console.log('Zusätzlicher Parameter:', criteriaType);
|
||||
}
|
||||
};
|
||||
export const getSessionStorageHandlerWrapper = param => {
|
||||
return function (path, value, previous, applyData) {
|
||||
@@ -191,6 +193,11 @@ export function map2User(jwt: string | null): KeycloakUser {
|
||||
}
|
||||
export function getImageDimensions(imageUrl: string): Promise<{ width: number; height: number }> {
|
||||
return new Promise(resolve => {
|
||||
// Only use Image in browser context
|
||||
if (typeof Image === 'undefined') {
|
||||
resolve({ width: 0, height: 0 });
|
||||
return;
|
||||
}
|
||||
const img = new Image();
|
||||
img.onload = () => {
|
||||
resolve({ width: img.width, height: img.height });
|
||||
@@ -295,9 +302,11 @@ export function checkAndUpdate(changed: boolean, condition: boolean, assignment:
|
||||
return changed || condition;
|
||||
}
|
||||
export function removeSortByStorage() {
|
||||
sessionStorage.removeItem('businessSortBy');
|
||||
sessionStorage.removeItem('commercialSortBy');
|
||||
sessionStorage.removeItem('professionalsSortBy');
|
||||
if (typeof sessionStorage !== 'undefined') {
|
||||
sessionStorage.removeItem('businessSortBy');
|
||||
sessionStorage.removeItem('commercialSortBy');
|
||||
sessionStorage.removeItem('professionalsSortBy');
|
||||
}
|
||||
}
|
||||
// -----------------------------
|
||||
// Criteria Proxy
|
||||
@@ -311,8 +320,11 @@ export function getCriteriaStateObject(criteriaType: 'businessListings' | 'comme
|
||||
} else {
|
||||
initialState = createEmptyUserListingCriteria();
|
||||
}
|
||||
const storedState = sessionStorage.getItem(`${criteriaType}`);
|
||||
return storedState ? JSON.parse(storedState) : initialState;
|
||||
if (typeof sessionStorage !== 'undefined') {
|
||||
const storedState = sessionStorage.getItem(`${criteriaType}`);
|
||||
return storedState ? JSON.parse(storedState) : initialState;
|
||||
}
|
||||
return initialState;
|
||||
}
|
||||
export function getCriteriaProxy(path: string, component: any): BusinessListingCriteria | CommercialPropertyListingCriteria | UserListingCriteria {
|
||||
if ('businessListings' === path) {
|
||||
@@ -327,7 +339,9 @@ export function getCriteriaProxy(path: string, component: any): BusinessListingC
|
||||
}
|
||||
export function createEnhancedProxy(obj: BusinessListingCriteria | CommercialPropertyListingCriteria | UserListingCriteria, component: any) {
|
||||
const sessionStorageHandler = function (path, value, previous, applyData) {
|
||||
sessionStorage.setItem(`${obj.criteriaType}`, JSON.stringify(this));
|
||||
if (typeof sessionStorage !== 'undefined') {
|
||||
sessionStorage.setItem(`${obj.criteriaType}`, JSON.stringify(this));
|
||||
}
|
||||
};
|
||||
|
||||
return onChange(obj, function (path, value, previous, applyData) {
|
||||
@@ -341,16 +355,20 @@ export function createEnhancedProxy(obj: BusinessListingCriteria | CommercialPro
|
||||
});
|
||||
}
|
||||
export function getCriteriaByListingCategory(listingsCategory: 'business' | 'professionals_brokers' | 'commercialProperty') {
|
||||
if (typeof sessionStorage === 'undefined') return null;
|
||||
|
||||
const storedState =
|
||||
listingsCategory === 'business'
|
||||
? sessionStorage.getItem('businessListings')
|
||||
: listingsCategory === 'commercialProperty'
|
||||
? sessionStorage.getItem('commercialPropertyListings')
|
||||
: sessionStorage.getItem('brokerListings');
|
||||
return JSON.parse(storedState);
|
||||
return storedState ? JSON.parse(storedState) : null;
|
||||
}
|
||||
|
||||
export function getSortByListingCategory(listingsCategory: 'business' | 'professionals_brokers' | 'commercialProperty') {
|
||||
if (typeof sessionStorage === 'undefined') return null;
|
||||
|
||||
const storedSortBy =
|
||||
listingsCategory === 'business' ? sessionStorage.getItem('businessSortBy') : listingsCategory === 'commercialProperty' ? sessionStorage.getItem('commercialSortBy') : sessionStorage.getItem('professionalsSortBy');
|
||||
const sortBy = storedSortBy && storedSortBy !== 'null' ? (storedSortBy as SortByOptions) : null;
|
||||
|
||||
Reference in New Issue
Block a user