your personal website on atproto - mirror
blento.app
1import type { CardDefinition } from '../types';
2import CreateMapCardModal from './CreateMapCardModal.svelte';
3import MapCard from './MapCard.svelte';
4import MapCardSettings from './MapCardSettings.svelte';
5
6export const MapCardDefinition = {
7 type: 'mapLocation',
8 contentComponent: MapCard,
9 sidebarButtonText: 'Map',
10 createNew: (item) => {
11 item.w = 4;
12 item.h = 4;
13 item.mobileH = 8;
14 item.mobileW = 8;
15 },
16
17 creationModalComponent: CreateMapCardModal,
18 allowSetColor: false,
19 canHaveLabel: true,
20 settingsComponent: MapCardSettings
21} as CardDefinition & { type: 'mapLocation' };
22
23export function getZoomLevel(type: string | undefined): number {
24 if (
25 ['house', 'building', 'address', 'street', 'road', 'residential', 'highway'].includes(
26 type || ''
27 )
28 ) {
29 return 13;
30 }
31 if (['neighbourhood', 'suburb', 'quarter', 'district', 'postcode'].includes(type || '')) {
32 return 12;
33 }
34 return 1;
35}