Compare commits

...

3 Commits
master ... rand

Author SHA1 Message Date
matthieu42morin c028cc19cb Fixing content alias and time to minute update 2024-03-21 01:26:25 +01:00
matthieu42morin 514c974bf0 sentry sessions,, tsconfig target to es6 for testing 2024-03-21 01:25:35 +01:00
matthieu42morin 0d282adf3f Libre Map with tests and error handling 2024-03-20 18:57:51 +01:00
9 changed files with 93 additions and 38 deletions

View File

@ -7,28 +7,28 @@
"description": "Diagnostika pleti, odlíčení tonizace", "description": "Diagnostika pleti, odlíčení tonizace",
"id": "lifting-ras-booster", "id": "lifting-ras-booster",
"price": 500, "price": 500,
"duration": 1 "duration": 60
}, },
{ {
"name": "Laminace obočí + výživa", "name": "Laminace obočí + výživa",
"description": "Diagnostika pleti, odlíčení tonizace", "description": "Diagnostika pleti, odlíčení tonizace",
"id": "laminace-oboci-vyziva", "id": "laminace-oboci-vyziva",
"price": 500, "price": 500,
"duration": 1 "duration": 60
}, },
{ {
"name": "Úprava obočí (tvar + barva)", "name": "Úprava obočí (tvar + barva)",
"description": "Diagnostika pleti, odlíčení tonizace", "description": "Diagnostika pleti, odlíčení tonizace",
"id": "uprava-oboci-tvar-barva", "id": "uprava-oboci-tvar-barva",
"price": 250, "price": 250,
"duration": 1 "duration": 60
}, },
{ {
"name": "Úprava obočí + řasy (tvar + barvení)", "name": "Úprava obočí + řasy (tvar + barvení)",
"description": "Diagnostika pleti, odlíčení tonizace", "description": "Diagnostika pleti, odlíčení tonizace",
"id": "uprava-oboci-rasy-tvar-barveni", "id": "uprava-oboci-rasy-tvar-barveni",
"price": 300, "price": 300,
"duration": 1 "duration": 60
} }
] ]
} }

View File

@ -7,63 +7,63 @@
"description": "Diagnostika pleti, odlíčení tonizace", "description": "Diagnostika pleti, odlíčení tonizace",
"id": "depilace-horni-ret", "id": "depilace-horni-ret",
"price": 80, "price": 80,
"duration": 0.5 "duration": 30
}, },
{ {
"name": "Depilace Brada", "name": "Depilace Brada",
"description": "Diagnostika pleti, odlíčení tonizace", "description": "Diagnostika pleti, odlíčení tonizace",
"id": "depilace-brada", "id": "depilace-brada",
"price": 80, "price": 80,
"duration": 0.5 "duration": 30
}, },
{ {
"name": "Depilace Obočí", "name": "Depilace Obočí",
"description": "Diagnostika pleti, odlíčení tonizace", "description": "Diagnostika pleti, odlíčení tonizace",
"id": "depilace-oboci", "id": "depilace-oboci",
"price": 150, "price": 150,
"duration": 0.5 "duration": 30
}, },
{ {
"name": "Depilace Tváře", "name": "Depilace Tváře",
"description": "Diagnostika pleti, odlíčení tonizace", "description": "Diagnostika pleti, odlíčení tonizace",
"id": "depilace-tvare", "id": "depilace-tvare",
"price": 150, "price": 150,
"duration": 0.5 "duration": 30
}, },
{ {
"name": "Depilace Podpaží", "name": "Depilace Podpaží",
"description": "Diagnostika pleti, odlíčení tonizace", "description": "Diagnostika pleti, odlíčení tonizace",
"id": "depilace-podpazi", "id": "depilace-podpazi",
"price": 150, "price": 150,
"duration": 0.5 "duration": 30
}, },
{ {
"name": "Depilace Předloktí", "name": "Depilace Předloktí",
"description": "Diagnostika pleti, odlíčení tonizace", "description": "Diagnostika pleti, odlíčení tonizace",
"id": "depilace-predlokti", "id": "depilace-predlokti",
"price": 200, "price": 200,
"duration": 0.5 "duration": 30
}, },
{ {
"name": "Depilace Celé ruce", "name": "Depilace Celé ruce",
"description": "Diagnostika pleti, odlíčení tonizace", "description": "Diagnostika pleti, odlíčení tonizace",
"id": "depilace-cele-ruce", "id": "depilace-cele-ruce",
"price": 350, "price": 350,
"duration": 1 "duration": 60
}, },
{ {
"name": "Depilace Lýtka", "name": "Depilace Lýtka",
"description": "Diagnostika pleti, odlíčení tonizace", "description": "Diagnostika pleti, odlíčení tonizace",
"id": "depilace-lytka", "id": "depilace-lytka",
"price": 350, "price": 350,
"duration": 1 "duration": 60
}, },
{ {
"name": "Depilace Celé nohy", "name": "Depilace Celé nohy",
"description": "Diagnostika pleti, odlíčení tonizace", "description": "Diagnostika pleti, odlíčení tonizace",
"id": "depilace-cele-nohy", "id": "depilace-cele-nohy",
"price": 500, "price": 500,
"duration": 1 "duration": 60
} }
] ]
} }

View File

@ -7,42 +7,42 @@
"description": "Diagnostika pleti, odlíčení tonizace, enzymatický peeling, kavitační peeling -ultarzvuková špachtle, séra dle typu pleti, masky (tvář,krk,dekolt), závěrečná péče (oční a denní krém)", "description": "Diagnostika pleti, odlíčení tonizace, enzymatický peeling, kavitační peeling -ultarzvuková špachtle, séra dle typu pleti, masky (tvář,krk,dekolt), závěrečná péče (oční a denní krém)",
"id": "zakladni-calm", "id": "zakladni-calm",
"price": 500, "price": 500,
"duration": 1 "duration": 60
}, },
{ {
"name": "ZÁKLADNÍ + CALM PLUS", "name": "ZÁKLADNÍ + CALM PLUS",
"description": "Diagnostika pleti, odlíčení tonizace, úprava obočí (vosk+pinzeta), barvení řas a obočí, depilace horní ret/brada, enzymatický peeling, kavitační peeling -ultarzvuková špachtle, séra dle typu pleti, masky (tvář,krk,dekolt), závěrečná péče (oční a denní krém)", "description": "Diagnostika pleti, odlíčení tonizace, úprava obočí (vosk+pinzeta), barvení řas a obočí, depilace horní ret/brada, enzymatický peeling, kavitační peeling -ultarzvuková špachtle, séra dle typu pleti, masky (tvář,krk,dekolt), závěrečná péče (oční a denní krém)",
"id": "zakladni-calm-plus", "id": "zakladni-calm-plus",
"price": 600, "price": 600,
"duration": 1 "duration": 60
}, },
{ {
"name": "RELAXAČNÍ", "name": "RELAXAČNÍ",
"description": "Diagnostika pleti, odlíčení tonizace, úprava obočí (vosk+pinzeta), barvení řas a obočí, depilace horní ret/brada, enzymatický peeling, kavitační peeling -ultarzvuková špachtle, séra, masáž relaxační (tvář,krk dekolt), masky (tvář,krk,dekolt), závěrečná péče (oční a denní krém)", "description": "Diagnostika pleti, odlíčení tonizace, úprava obočí (vosk+pinzeta), barvení řas a obočí, depilace horní ret/brada, enzymatický peeling, kavitační peeling -ultarzvuková špachtle, séra, masáž relaxační (tvář,krk dekolt), masky (tvář,krk,dekolt), závěrečná péče (oční a denní krém)",
"id": "relaxacni", "id": "relaxacni",
"price": 690, "price": 690,
"duration": 1.5 "duration": 90
}, },
{ {
"name": "LIFTINGOVÉ - ANTI AGE", "name": "LIFTINGOVÉ - ANTI AGE",
"description": "Diagnostika pleti, odlíčení tonizace, úprava obočí (vosk+pinzeta), barvení řas a obočí, depilace horní ret/brada, enzymatický peeling, kavitační peeling -ultarzvuková špachtle, vacupres ošetření lifting obličeje krku a dekoltu, séra, masky (tvář,krk,dekolt), alginátová maska, závěrečná péče (oční a denní krém)", "description": "Diagnostika pleti, odlíčení tonizace, úprava obočí (vosk+pinzeta), barvení řas a obočí, depilace horní ret/brada, enzymatický peeling, kavitační peeling -ultarzvuková špachtle, vacupres ošetření lifting obličeje krku a dekoltu, séra, masky (tvář,krk,dekolt), alginátová maska, závěrečná péče (oční a denní krém)",
"id": "liftingove-anti-age", "id": "liftingove-anti-age",
"price": 690, "price": 690,
"duration": 1.5 "duration": 90
}, },
{ {
"name": "CLEAR + ANTI AKNÉ", "name": "CLEAR + ANTI AKNÉ",
"description": "Diagnostika pleti, odlíčení tonizace", "description": "Diagnostika pleti, odlíčení tonizace",
"id": "clear-anti-akne", "id": "clear-anti-akne",
"price": 690, "price": 690,
"duration": 1.5 "duration": 90
}, },
{ {
"name": "Odlíčení + sérum + alginátová maska (PROJASNĚNÍ)", "name": "Odlíčení + sérum + alginátová maska (PROJASNĚNÍ)",
"description": "Diagnostika pleti, odlíčení tonizace", "description": "Diagnostika pleti, odlíčení tonizace",
"id": "odliceni-serum-alginatova-maska", "id": "odliceni-serum-alginatova-maska",
"price": 300, "price": 300,
"duration": 1 "duration": 60
} }
] ]
} }

View File

@ -7,56 +7,56 @@
"description": "Diagnostika pleti, odlíčení tonizace", "description": "Diagnostika pleti, odlíčení tonizace",
"id": "oboci", "id": "oboci",
"price": 3000, "price": 3000,
"duration": 2.5 "duration": 150
}, },
{ {
"name": "Horní linky - meziřasové přirozené", "name": "Horní linky - meziřasové přirozené",
"description": "Diagnostika pleti, odlíčení tonizace", "description": "Diagnostika pleti, odlíčení tonizace",
"id": "linky", "id": "linky",
"price": 2000, "price": 2000,
"duration": 2 "duration": 120
}, },
{ {
"name": "Klasické linky - s ocáskem", "name": "Klasické linky - s ocáskem",
"description": "Diagnostika pleti, odlíčení tonizace", "description": "Diagnostika pleti, odlíčení tonizace",
"id": "classic-linky", "id": "classic-linky",
"price": 3000, "price": 3000,
"duration": 2.5 "duration": 150
}, },
{ {
"name": "Klasické linky - s ocáskem + spodní linky", "name": "Klasické linky - s ocáskem + spodní linky",
"description": "Diagnostika pleti, odlíčení tonizace", "description": "Diagnostika pleti, odlíčení tonizace",
"id": "classic-linky+spodni", "id": "classic-linky+spodni",
"price": 3500, "price": 3500,
"duration": 2.5 "duration": 150
}, },
{ {
"name": "Rty - kontura", "name": "Rty - kontura",
"description": "Diagnostika pleti, odlíčení tonizace", "description": "Diagnostika pleti, odlíčení tonizace",
"id": "rty", "id": "rty",
"price": 2500, "price": 2500,
"duration": 2 "duration": 120
}, },
{ {
"name": "3D Rty (kontura a stínování), Full Lips (plné rty)", "name": "3D Rty (kontura a stínování), Full Lips (plné rty)",
"description": "Diagnostika pleti, odlíčení tonizace", "description": "Diagnostika pleti, odlíčení tonizace",
"id": "3d-rty", "id": "3d-rty",
"price": 3500, "price": 3500,
"duration": 2.5 "duration": 150
}, },
{ {
"name": "Aquarelle Lips (přirodní stínování, bez kontury)", "name": "Aquarelle Lips (přirodní stínování, bez kontury)",
"description": "Diagnostika pleti, odlíčení tonizace", "description": "Diagnostika pleti, odlíčení tonizace",
"id": "aquarelle", "id": "aquarelle",
"price": 3000, "price": 3000,
"duration": 2 "duration": 120
}, },
{ {
"name": "První korekce po aplikaci pmu max. do 3 měsíců", "name": "První korekce po aplikaci pmu max. do 3 měsíců",
"description": "Diagnostika pleti, odlíčení tonizace", "description": "Diagnostika pleti, odlíčení tonizace",
"id": "korekce", "id": "korekce",
"price": 1000, "price": 1000,
"duration": 1.5 "duration": 90
}, },
{ {
"name": "Oprava práce obočí jiného salonu", "name": "Oprava práce obočí jiného salonu",

View File

@ -7,35 +7,35 @@
"description": "Diagnostika pleti, odlíčení tonizace", "description": "Diagnostika pleti, odlíčení tonizace",
"id": "vakuslim-48-zestihlujici-procedura-horni-koncetiny", "id": "vakuslim-48-zestihlujici-procedura-horni-koncetiny",
"price": 600, "price": 600,
"duration": 2 "duration": 120
}, },
{ {
"name": "1 ošetření spodní části těla (břicho, boky, dolní končetiny)", "name": "1 ošetření spodní části těla (břicho, boky, dolní končetiny)",
"description": "Diagnostika pleti, odlíčení tonizace", "description": "Diagnostika pleti, odlíčení tonizace",
"id": "vakuslim-48-zestihlujici-procedura-spodni-cast-tela", "id": "vakuslim-48-zestihlujici-procedura-spodni-cast-tela",
"price": 800, "price": 800,
"duration": 2 "duration": 120
}, },
{ {
"name": "1 ošetření komplet horní-dolní části", "name": "1 ošetření komplet horní-dolní části",
"description": "Diagnostika pleti, odlíčení tonizace", "description": "Diagnostika pleti, odlíčení tonizace",
"id": "vakuslim-48-zestihlujici-procedura-komplet-horni-dolni-cast", "id": "vakuslim-48-zestihlujici-procedura-komplet-horni-dolni-cast",
"price": 1200, "price": 1200,
"duration": 2 "duration": 120
}, },
{ {
"name": "6 ošetření předplatné kompet", "name": "6 ošetření předplatné kompet",
"description": "Diagnostika pleti, odlíčení tonizace", "description": "Diagnostika pleti, odlíčení tonizace",
"id": "vakuslim-48-zestihlujici-procedura-6-o-setreni-predplatne-kompet", "id": "vakuslim-48-zestihlujici-procedura-6-o-setreni-predplatne-kompet",
"price": 6600, "price": 6600,
"duration": 2 "duration": 120
}, },
{ {
"name": "12 ošetření předplatné komplet", "name": "12 ošetření předplatné komplet",
"description": "Diagnostika pleti, odlíčení tonizace", "description": "Diagnostika pleti, odlíčení tonizace",
"id": "vakuslim-48-zestihlujici-procedura-12-o-setreni-predplatne-komplet", "id": "vakuslim-48-zestihlujici-procedura-12-o-setreni-predplatne-komplet",
"price": 11000, "price": 11000,
"duration": 2 "duration": 120
} }
] ]
} }

View File

@ -14,7 +14,11 @@ Sentry.init({
replaysOnErrorSampleRate: 1.0, replaysOnErrorSampleRate: 1.0,
// If you don't want to use Session Replay, just remove the line below: // If you don't want to use Session Replay, just remove the line below:
integrations: [replayIntegration()], integrations: [replayIntegration({
maskAllText: false,
blockAllMedia: false,
})
],
}); });
// If you have a custom error handler, pass it to `handleErrorWithSentry` // If you have a custom error handler, pass it to `handleErrorWithSentry`

View File

@ -0,0 +1,53 @@
<script lang="ts">
import { onMount } from 'svelte';
import { browser } from '$app/environment';
import { MapLibre, Marker, Popup } from 'svelte-maplibre';
import Spinner from './Spinner.svelte';
export let lngLat = { lng: 49.317881, lat: 14.104978 };
export let clazz = "absolute inset-0"
let hasWebGL = false;
let isLoading = true;
onMount(async () => {
try {
const canvas = document.createElement('canvas');
hasWebGL = !!(window.WebGLRenderingContext && (canvas.getContext('webgl') || canvas.getContext('experimental-webgl')));
} catch (e) {
hasWebGL = false;
}
isLoading = false;
});
</script>
{#if !browser}
<div>Pokud chcete zobrazit mapu, zvažte použití prohlížeče, pokud jste bot či scraper, jděte se vycpat.</div>
{:else if isLoading}
<Spinner/>
{:else if hasWebGL}
<MapLibre
center={[49.317881,14.104978]}
zoom={2}
class="map"
standardControls
style="https://basemaps.cartocdn.com/gl/positron-gl-style/style.json {clazz}"
>
<Marker
{lngLat}
class="grid h-8 w-8 place-items-center rounded-full border border-gray-200 bg-red-300 text-black shadow-2xl focus:outline-2 focus:outline-black"
>
<span>
KKosmetickySalon Oldřichov
</span>
<Popup openOn="hover" offset={[0, -10]}>
<div class="text-lg font-bold">Přijeďte ke mně :)</div>
</Popup>
</Marker>
</MapLibre>
{:else}
<div class="map">Omlouváme se, tato funkce vyžaduje WebGL, pro zobrazení map na tomto webu ji prosím povolte.</div>
{/if}
<style>
:global(.map) {
height: 500px;
}
</style>

View File

@ -12,7 +12,6 @@ const config = {
], ],
kit: { kit: {
adapter: adapter({ adapter: adapter({
out: 'build',
precompress: false precompress: false
}), }),
@ -22,14 +21,13 @@ const config = {
$root: './', $root: './',
$src: './src', $src: './src',
$routes: './src/routes', $routes: './src/routes',
$content: './src/content'
}, },
env: { env: {
publicPrefix: "PUBLIC_", publicPrefix: "PUBLIC_",
}, },
// https://kit.svelte.dev/docs/configuration#alias
}, },
}; };
export default config; export default config;

View File

@ -11,7 +11,7 @@
"strict": true, "strict": true,
// custom compiler options // custom compiler options
"noEmit": true, "noEmit": true,
"target": "ES2018", "target": "ES6",
"module": "ES2022", "module": "ES2022",
"moduleResolution": "Bundler", "moduleResolution": "Bundler",
"allowSyntheticDefaultImports": true, "allowSyntheticDefaultImports": true,