diff --git a/src/assets/scss/_leaflet.scss b/src/assets/scss/_leaflet.scss
index 396f8291..cf9864b4 100644
--- a/src/assets/scss/_leaflet.scss
+++ b/src/assets/scss/_leaflet.scss
@@ -103,14 +103,14 @@
text-underline-offset: 2px;
text-decoration: underline;
- &:hover {
+ &:hover,
+ &:focus-visible {
text-decoration: none;
color: var(--green-500);
}
}
.map-link {
- margin-top: .5rem;
display: inline-flex;
align-items: center;
gap: .5ch;
@@ -123,7 +123,13 @@
.tooltip-content > * + * {
margin: 0;
- margin-top: .4em;
+ margin-top: .66em;
+ }
+
+ .tooltip-footer {
+ display: grid;
+ gap: .15em;
+ font-size: .95em;
}
}
}
diff --git a/src/components/global/CopyText.astro b/src/components/global/CopyText.astro
new file mode 100644
index 00000000..3eebe718
--- /dev/null
+++ b/src/components/global/CopyText.astro
@@ -0,0 +1,81 @@
+---
+import { t } from '@/i18n/store';
+import { getLangFromUrl } from '@/i18n/utils';
+
+interface Props {
+ text: string,
+}
+
+const { text } = Astro.props
+
+const lang = getLangFromUrl(Astro.url);
+const placeholder = t('common.copyLink', lang)
+const message = t('common.copiedLink', lang)
+---
+
+
+
+
+
+
diff --git a/src/components/maps/Map.astro b/src/components/maps/Map.astro
index 883e5719..ad059353 100644
--- a/src/components/maps/Map.astro
+++ b/src/components/maps/Map.astro
@@ -4,6 +4,8 @@ import type { MapProps } from '@/types/Map';
import MarkerCreator from './overlay/MarkerCreator.vue';
import { t } from '@/i18n/store';
import { getLangFromUrl } from '@/i18n/utils';
+import { normalizeString } from '@/utils/Strings';
+import CopyText from '../global/CopyText.astro';
interface Props extends MapProps {}
@@ -33,32 +35,44 @@ const seeMapText = t('maps.go-to-map', lang)
{m.description}
} - {m.mapId && ( - - - { seeMapText } - - - - )} -