diff --git a/website/package-lock.json b/website/package-lock.json index 0a1cc80a..76a349ba 100644 --- a/website/package-lock.json +++ b/website/package-lock.json @@ -10,7 +10,7 @@ "dependencies": { "@internationalized/date": "^3.5.4", "@mapbox/mapbox-gl-geocoder": "^5.0.2", - "bits-ui": "^0.21.11", + "bits-ui": "^0.21.12", "chart.js": "^4.4.3", "clsx": "^2.1.1", "dexie": "^4.0.7", @@ -2419,9 +2419,9 @@ } }, "node_modules/bits-ui": { - "version": "0.21.11", - "resolved": "https://registry.npmjs.org/bits-ui/-/bits-ui-0.21.11.tgz", - "integrity": "sha512-pFS/9z1qLaPZwb+9Tm0YS4iBp+ClsJBARMZWFOjv0lGCYpzAN7lx4eNk3SbSB5QMBUKwoVjr9Rai71ROq3RD1Q==", + "version": "0.21.12", + "resolved": "https://registry.npmjs.org/bits-ui/-/bits-ui-0.21.12.tgz", + "integrity": "sha512-Cf0iB+ZKwA0ZjkpixrhrZK9PC6pGPFleW/65Xc/z0lpGvWaFtdOhiYEntCHHxZ0VihP3aJaG0OBhUBIbmAePaA==", "dependencies": { "@internationalized/date": "^3.5.1", "@melt-ui/svelte": "0.76.2", diff --git a/website/package.json b/website/package.json index 2d946283..8b6376d5 100644 --- a/website/package.json +++ b/website/package.json @@ -48,7 +48,7 @@ "dependencies": { "@internationalized/date": "^3.5.4", "@mapbox/mapbox-gl-geocoder": "^5.0.2", - "bits-ui": "^0.21.11", + "bits-ui": "^0.21.12", "chart.js": "^4.4.3", "clsx": "^2.1.1", "dexie": "^4.0.7", diff --git a/website/src/lib/components/Welcome.svelte b/website/src/lib/components/Welcome.svelte new file mode 100644 index 00000000..4d3a344a --- /dev/null +++ b/website/src/lib/components/Welcome.svelte @@ -0,0 +1,29 @@ + + + ($showWelcomeMessage = false)} +> + + + + + Welcome to the new version of gpx.studio! + + +

The website is still under development and may contain bugs.

+

Please report any issues you find by email or on GitHub.

+
+
+ + Let's go! + +
+
diff --git a/website/src/lib/components/ui/alert-dialog/alert-dialog-action.svelte b/website/src/lib/components/ui/alert-dialog/alert-dialog-action.svelte new file mode 100644 index 00000000..57d643b4 --- /dev/null +++ b/website/src/lib/components/ui/alert-dialog/alert-dialog-action.svelte @@ -0,0 +1,21 @@ + + + + + diff --git a/website/src/lib/components/ui/alert-dialog/alert-dialog-cancel.svelte b/website/src/lib/components/ui/alert-dialog/alert-dialog-cancel.svelte new file mode 100644 index 00000000..ef0a953c --- /dev/null +++ b/website/src/lib/components/ui/alert-dialog/alert-dialog-cancel.svelte @@ -0,0 +1,21 @@ + + + + + diff --git a/website/src/lib/components/ui/alert-dialog/alert-dialog-content.svelte b/website/src/lib/components/ui/alert-dialog/alert-dialog-content.svelte new file mode 100644 index 00000000..256a5fff --- /dev/null +++ b/website/src/lib/components/ui/alert-dialog/alert-dialog-content.svelte @@ -0,0 +1,28 @@ + + + + + + + + diff --git a/website/src/lib/components/ui/alert-dialog/alert-dialog-description.svelte b/website/src/lib/components/ui/alert-dialog/alert-dialog-description.svelte new file mode 100644 index 00000000..18acce96 --- /dev/null +++ b/website/src/lib/components/ui/alert-dialog/alert-dialog-description.svelte @@ -0,0 +1,16 @@ + + + + + diff --git a/website/src/lib/components/ui/alert-dialog/alert-dialog-footer.svelte b/website/src/lib/components/ui/alert-dialog/alert-dialog-footer.svelte new file mode 100644 index 00000000..a235d1f8 --- /dev/null +++ b/website/src/lib/components/ui/alert-dialog/alert-dialog-footer.svelte @@ -0,0 +1,16 @@ + + +
+ +
diff --git a/website/src/lib/components/ui/alert-dialog/alert-dialog-header.svelte b/website/src/lib/components/ui/alert-dialog/alert-dialog-header.svelte new file mode 100644 index 00000000..2650ef9f --- /dev/null +++ b/website/src/lib/components/ui/alert-dialog/alert-dialog-header.svelte @@ -0,0 +1,13 @@ + + +
+ +
diff --git a/website/src/lib/components/ui/alert-dialog/alert-dialog-overlay.svelte b/website/src/lib/components/ui/alert-dialog/alert-dialog-overlay.svelte new file mode 100644 index 00000000..3081d756 --- /dev/null +++ b/website/src/lib/components/ui/alert-dialog/alert-dialog-overlay.svelte @@ -0,0 +1,21 @@ + + + diff --git a/website/src/lib/components/ui/alert-dialog/alert-dialog-portal.svelte b/website/src/lib/components/ui/alert-dialog/alert-dialog-portal.svelte new file mode 100644 index 00000000..e2272192 --- /dev/null +++ b/website/src/lib/components/ui/alert-dialog/alert-dialog-portal.svelte @@ -0,0 +1,9 @@ + + + + + diff --git a/website/src/lib/components/ui/alert-dialog/alert-dialog-title.svelte b/website/src/lib/components/ui/alert-dialog/alert-dialog-title.svelte new file mode 100644 index 00000000..7f98004c --- /dev/null +++ b/website/src/lib/components/ui/alert-dialog/alert-dialog-title.svelte @@ -0,0 +1,14 @@ + + + + + diff --git a/website/src/lib/components/ui/alert-dialog/index.ts b/website/src/lib/components/ui/alert-dialog/index.ts new file mode 100644 index 00000000..be56dd7b --- /dev/null +++ b/website/src/lib/components/ui/alert-dialog/index.ts @@ -0,0 +1,40 @@ +import { AlertDialog as AlertDialogPrimitive } from "bits-ui"; + +import Title from "./alert-dialog-title.svelte"; +import Action from "./alert-dialog-action.svelte"; +import Cancel from "./alert-dialog-cancel.svelte"; +import Portal from "./alert-dialog-portal.svelte"; +import Footer from "./alert-dialog-footer.svelte"; +import Header from "./alert-dialog-header.svelte"; +import Overlay from "./alert-dialog-overlay.svelte"; +import Content from "./alert-dialog-content.svelte"; +import Description from "./alert-dialog-description.svelte"; + +const Root = AlertDialogPrimitive.Root; +const Trigger = AlertDialogPrimitive.Trigger; + +export { + Root, + Title, + Action, + Cancel, + Portal, + Footer, + Header, + Trigger, + Overlay, + Content, + Description, + // + Root as AlertDialog, + Title as AlertDialogTitle, + Action as AlertDialogAction, + Cancel as AlertDialogCancel, + Portal as AlertDialogPortal, + Footer as AlertDialogFooter, + Header as AlertDialogHeader, + Trigger as AlertDialogTrigger, + Overlay as AlertDialogOverlay, + Content as AlertDialogContent, + Description as AlertDialogDescription, +}; diff --git a/website/src/lib/db.ts b/website/src/lib/db.ts index 53a24f0a..3f44184f 100644 --- a/website/src/lib/db.ts +++ b/website/src/lib/db.ts @@ -108,6 +108,7 @@ export const settings = { defaultWeight: dexieSettingStore('defaultWeight', 5), bottomPanelSize: dexieSettingStore('bottomPanelSize', 170), rightPanelSize: dexieSettingStore('rightPanelSize', 240), + showWelcomeMessage: dexieUninitializedSettingStore('showWelcomeMessage', true), }; // Wrap Dexie live queries in a Svelte store to avoid triggering the query for every subscriber diff --git a/website/src/routes/[...language]/app/+page.svelte b/website/src/routes/[...language]/app/+page.svelte index a034ab0b..8f2a7769 100644 --- a/website/src/routes/[...language]/app/+page.svelte +++ b/website/src/routes/[...language]/app/+page.svelte @@ -17,6 +17,7 @@ import { page } from '$app/stores'; import { languages } from '$lib/languages'; import { getURLForLanguage } from '$lib/utils'; + import Welcome from '$lib/components/Welcome.svelte'; const { verticalFileView, @@ -99,6 +100,7 @@ {/if} +