diff --git a/package.json b/package.json index 812070bb..f86543f3 100644 --- a/package.json +++ b/package.json @@ -28,7 +28,7 @@ "clean": "rm -Rf static/files/* && touch static/files/.gitkeep && rm -Rf src/pages/* && touch src/pages/.gitkeep && rm -Rf src/posts/* && touch src/posts/.gitkeep" }, "devDependencies": { - "@divriots/jampack": "^0.24.4", + "@divriots/jampack": "^0.25.0", "@playwright/test": "^1.45.1", "@skeletonlabs/skeleton": "^2.10.1", "@skeletonlabs/tw-plugin": "^0.4.0", @@ -39,7 +39,7 @@ "autoprefixer": "^10.4.19", "cheerio": "1.0.0-rc.12", "dompurify": "^3.1.6", - "eslint": "^9.6.0", + "eslint": "^9.8.0", "eslint-config-prettier": "^9.1.0", "eslint-plugin-svelte": "^2.41.0", "husky": "^9.0.11", @@ -50,18 +50,18 @@ "postcss": "^8.4.39", "prettier": "^3.3.2", "prettier-plugin-organize-imports": "^4.0.0", - "prettier-plugin-svelte": "^3.2.5", + "prettier-plugin-svelte": "^3.2.6", "prettier-plugin-tailwindcss": "^0.6.5", "rehype-autolink-headings": "^7.1.0", "rehype-external-links": "^3.0.0", "rehype-slug": "^6.0.0", "remark-captions": "^2.2.4", "svelte": "^4.2.18", - "svelte-check": "^3.8.4", + "svelte-check": "^3.8.5", "svelte-maplibre": "^0.9.8", "tailwindcss": "^3.4.4", "turndown": "^7.2.0", - "typescript": "^5.5.3", + "typescript": "^5.5.4", "vite": "^5.3.3", "vite-plugin-tailwind-purgecss": "^0.3.3", "vitest": "^2.0.1", diff --git a/pnpm-lock.yaml b/pnpm-lock.yaml index 46798c1c..bf0c253c 100644 --- a/pnpm-lock.yaml +++ b/pnpm-lock.yaml @@ -9,8 +9,8 @@ importers: .: devDependencies: '@divriots/jampack': - specifier: ^0.24.4 - version: 0.24.4(react-dom@18.3.1(react@18.3.1))(react@18.3.1) + specifier: ^0.25.0 + version: 0.25.0(react-dom@18.3.1(react@18.3.1))(react@18.3.1) '@playwright/test': specifier: ^1.45.1 version: 1.45.1 @@ -42,14 +42,14 @@ importers: specifier: ^3.1.6 version: 3.1.6 eslint: - specifier: ^9.6.0 - version: 9.6.0 + specifier: ^9.8.0 + version: 9.9.0(jiti@1.21.6) eslint-config-prettier: specifier: ^9.1.0 - version: 9.1.0(eslint@9.6.0) + version: 9.1.0(eslint@9.9.0(jiti@1.21.6)) eslint-plugin-svelte: specifier: ^2.41.0 - version: 2.41.0(eslint@9.6.0)(svelte@4.2.18) + version: 2.41.0(eslint@9.9.0(jiti@1.21.6))(svelte@4.2.18) husky: specifier: ^9.0.11 version: 9.0.11 @@ -73,13 +73,13 @@ importers: version: 3.3.2 prettier-plugin-organize-imports: specifier: ^4.0.0 - version: 4.0.0(prettier@3.3.2)(typescript@5.5.3) + version: 4.0.0(prettier@3.3.2)(typescript@5.5.4) prettier-plugin-svelte: - specifier: ^3.2.5 - version: 3.2.5(prettier@3.3.2)(svelte@4.2.18) + specifier: ^3.2.6 + version: 3.2.6(prettier@3.3.2)(svelte@4.2.18) prettier-plugin-tailwindcss: specifier: ^0.6.5 - version: 0.6.5(prettier-plugin-organize-imports@4.0.0(prettier@3.3.2)(typescript@5.5.3))(prettier-plugin-svelte@3.2.5(prettier@3.3.2)(svelte@4.2.18))(prettier@3.3.2) + version: 0.6.5(prettier-plugin-organize-imports@4.0.0(prettier@3.3.2)(typescript@5.5.4))(prettier-plugin-svelte@3.2.6(prettier@3.3.2)(svelte@4.2.18))(prettier@3.3.2) rehype-autolink-headings: specifier: ^7.1.0 version: 7.1.0 @@ -96,8 +96,8 @@ importers: specifier: ^4.2.18 version: 4.2.18 svelte-check: - specifier: ^3.8.4 - version: 3.8.4(postcss-load-config@6.0.1(postcss@8.4.39))(postcss@8.4.39)(svelte@4.2.18) + specifier: ^3.8.5 + version: 3.8.5(postcss-load-config@6.0.1(jiti@1.21.6)(postcss@8.4.39)(yaml@2.4.5))(postcss@8.4.39)(svelte@4.2.18) svelte-maplibre: specifier: ^0.9.8 version: 0.9.8(svelte@4.2.18) @@ -108,8 +108,8 @@ importers: specifier: ^7.2.0 version: 7.2.0 typescript: - specifier: ^5.5.3 - version: 5.5.3 + specifier: ^5.5.4 + version: 5.5.4 vite: specifier: ^5.3.3 version: 5.3.3(lightningcss@1.25.1)(terser@5.31.1) @@ -133,12 +133,17 @@ packages: resolution: {integrity: sha512-30iZtAPgz+LTIYoeivqYo853f02jBYSd5uGnGpkFV0M3xOt9aN73erkgYAmZU43x4VfqcnLxW9Kpg3R5LC4YYw==} engines: {node: '>=6.0.0'} + '@commander-js/extra-typings@12.1.0': + resolution: {integrity: sha512-wf/lwQvWAA0goIghcb91dQYpkLBcyhOhQNqG/VgWhnKzgt+UOMvra7EX/2fv70arm5RW+PUHoQHHDa6/p77Eqg==} + peerDependencies: + commander: ~12.1.0 + '@divriots/cheerio@1.0.0-rc.12': resolution: {integrity: sha512-kQUVEgMDj0yE7LOdrDhKOC8JkfUzUKsUqp8m9WQDiSxim8Bnga+80opjXaCtHLhO3/W3DIZMow8QXtXUqNS+zA==} engines: {node: '>= 6'} - '@divriots/jampack@0.24.4': - resolution: {integrity: sha512-VCkz6Kmb1j3wBzsbc9aNTEmyAqvKZDjtRf7LnDktXE3xkVswHKXzvSqItnDkKJfBC670EQDLMQQqOCYLYVCDhw==} + '@divriots/jampack@0.25.0': + resolution: {integrity: sha512-r6WMX8nDoVqNmb+Xlt0ML63ES6u+hb/qdyXzUMwQccmwh0D8AW+TWKUEZZAHE1jSic4sp+jxmQZiAq3IAS0xlg==} engines: {node: '>=14.0.0'} hasBin: true @@ -431,16 +436,16 @@ packages: resolution: {integrity: sha512-G/M/tIiMrTAxEWRfLfQJMmGNX28IxBg4PBz8XqQhqUHLFI6TL2htpIB1iQCj144V5ee/JaKyT9/WZ0MGZWfA7A==} engines: {node: ^12.0.0 || ^14.0.0 || >=16.0.0} - '@eslint/config-array@0.17.0': - resolution: {integrity: sha512-A68TBu6/1mHHuc5YJL0U0VVeGNiklLAL6rRmhTCP2B5XjWLMnrX+HkO+IAXyHvks5cyyY1jjK5ITPQ1HGS2EVA==} + '@eslint/config-array@0.17.1': + resolution: {integrity: sha512-BlYOpej8AQ8Ev9xVqroV7a02JK3SkBAaN9GfMMH9W6Ch8FlQlkjGw4Ir7+FgYwfirivAf4t+GtzuAxqfukmISA==} engines: {node: ^18.18.0 || ^20.9.0 || >=21.1.0} '@eslint/eslintrc@3.1.0': resolution: {integrity: sha512-4Bfj15dVJdoy3RfZmmo86RK1Fwzn6SstsvK9JS+BaVKqC6QQQQyXekNaC+g+LKNgkQ+2VhGAzm6hO40AhMR3zQ==} engines: {node: ^18.18.0 || ^20.9.0 || >=21.1.0} - '@eslint/js@9.6.0': - resolution: {integrity: sha512-D9B0/3vNg44ZeWbYMpBoXqNP4j6eQD5vNwIlGAuFRRzK/WtT/jvDQW3Bi9kkf3PMDMlM7Yi+73VLUsn5bJcl8A==} + '@eslint/js@9.9.0': + resolution: {integrity: sha512-hhetes6ZHP3BlXLxmd8K2SNgkhNSi+UcecbnwWKwpP7kyi/uC75DJ1lOOBO3xrC4jyojtGE3YxKZPHfk4yrgug==} engines: {node: ^18.18.0 || ^20.9.0 || >=21.1.0} '@eslint/object-schema@2.1.4': @@ -1371,8 +1376,8 @@ packages: resolution: {integrity: sha512-dOt21O7lTMhDM+X9mB4GX+DZrZtCUJPL/wlcTqxyrx5IvO0IYtILdtrQGQp+8n5S0gwSVmOf9NQrjMOgfQZlIg==} engines: {node: ^12.22.0 || ^14.17.0 || >=16.0.0} - eslint-scope@8.0.1: - resolution: {integrity: sha512-pL8XjgP4ZOmmwfFE8mEhSxA7ZY4C+LWyqjQ3o4yWkkmD0qcMT9kkW3zWHOczhWcjTSgqycYAgwSlXvZltv65og==} + eslint-scope@8.0.2: + resolution: {integrity: sha512-6E4xmrTw5wtxnLA5wYL3WDfhZ/1bUBGOXV0zQvVRDOtrR8D0p6W7fs3JweNYhwRYeGvd/1CKX2se0/2s7Q/nJA==} engines: {node: ^18.18.0 || ^20.9.0 || >=21.1.0} eslint-visitor-keys@3.4.3: @@ -1383,10 +1388,15 @@ packages: resolution: {integrity: sha512-OtIRv/2GyiF6o/d8K7MYKKbXrOUBIK6SfkIRM4Z0dY3w+LiQ0vy3F57m0Z71bjbyeiWFiHJ8brqnmE6H6/jEuw==} engines: {node: ^18.18.0 || ^20.9.0 || >=21.1.0} - eslint@9.6.0: - resolution: {integrity: sha512-ElQkdLMEEqQNM9Njff+2Y4q2afHk7JpkPvrd7Xh7xefwgQynqPxwf55J7di9+MEibWUGdNjFF9ITG9Pck5M84w==} + eslint@9.9.0: + resolution: {integrity: sha512-JfiKJrbx0506OEerjK2Y1QlldtBxkAlLxT5OEcRF8uaQ86noDe2k31Vw9rnSWv+MXZHj7OOUV/dA0AhdLFcyvA==} engines: {node: ^18.18.0 || ^20.9.0 || >=21.1.0} hasBin: true + peerDependencies: + jiti: '*' + peerDependenciesMeta: + jiti: + optional: true esm-env@1.0.0: resolution: {integrity: sha512-Cf6VksWPsTuW01vU9Mk/3vRue91Zevka5SjyNf3nEpokFRuqt/KjUQoGAwq9qMmhpLTHmXzSIrFRw8zxWzmFBA==} @@ -2284,8 +2294,8 @@ packages: vue-tsc: optional: true - prettier-plugin-svelte@3.2.5: - resolution: {integrity: sha512-vP/M/Goc8z4iVIvrwXwbrYVjJgA0Hf8PO1G4LBh/ocSt6vUP6sLvyu9F3ABEGr+dbKyxZjEKLkeFsWy/yYl0HQ==} + prettier-plugin-svelte@3.2.6: + resolution: {integrity: sha512-Y1XWLw7vXUQQZmgv1JAEiLcErqUniAF2wO7QJsw8BVMvpLET2dI5WpEIEJx1r11iHVdSMzQxivyfrH9On9t2IQ==} peerDependencies: prettier: ^3.0.0 svelte: ^3.2.0 || ^4.0.0-next.0 || ^5.0.0-next.0 @@ -2646,8 +2656,8 @@ packages: resolution: {integrity: sha512-ot0WnXS9fgdkgIcePe6RHNk1WA8+muPa6cSjeR3V8K27q9BB1rTE3R1p7Hv0z1ZyAc8s6Vvv8DIyWf681MAt0w==} engines: {node: '>= 0.4'} - svelte-check@3.8.4: - resolution: {integrity: sha512-61aHMkdinWyH8BkkTX9jPLYxYzaAAz/FK/VQqdr2FiCQQ/q04WCwDlpGbHff1GdrMYTmW8chlTFvRWL9k0A8vg==} + svelte-check@3.8.5: + resolution: {integrity: sha512-3OGGgr9+bJ/+1nbPgsvulkLC48xBsqsgtc8Wam281H4G9F5v3mYGa2bHRsPuwHC5brKl4AxJH95QF73kmfihGQ==} hasBin: true peerDependencies: svelte: ^3.55.0 || ^4.0.0-next.0 || ^4.0.0 || ^5.0.0-next.0 @@ -2816,8 +2826,8 @@ packages: resolution: {integrity: sha512-ADn2w7hVPcK6w1I0uWnM//y1rLXZhzB9mr0a3OirzclKF1Wp6VzevUmzz/NRAWunOT6E8HrnpGY7xOfc6K57fA==} engines: {node: '>=16'} - typescript@5.5.3: - resolution: {integrity: sha512-/hreyEujaB0w76zKo6717l3L0o/qEUtRgdvUBvlkhoWeOVMjMuHNHk0BRBzikzuGDqNmPQbg5ifMEqsHLiIUcQ==} + typescript@5.5.4: + resolution: {integrity: sha512-Mtq29sKDAEYP7aljRgtPOpTvOfbwRWlS6dPRzwjdE+C0R4brX/GUyhHSecbHMFLNBLcJIPt9nl9yG5TZ1weH+Q==} engines: {node: '>=14.17'} hasBin: true @@ -3094,6 +3104,10 @@ snapshots: '@jridgewell/gen-mapping': 0.3.5 '@jridgewell/trace-mapping': 0.3.25 + '@commander-js/extra-typings@12.1.0(commander@12.1.0)': + dependencies: + commander: 12.1.0 + '@divriots/cheerio@1.0.0-rc.12': dependencies: cheerio-select: 2.1.0 @@ -3108,8 +3122,9 @@ snapshots: undici: 5.28.4 whatwg-mimetype: 3.0.0 - '@divriots/jampack@0.24.4(react-dom@18.3.1(react@18.3.1))(react@18.3.1)': + '@divriots/jampack@0.25.0(react-dom@18.3.1(react@18.3.1))(react@18.3.1)': dependencies: + '@commander-js/extra-typings': 12.1.0(commander@12.1.0) '@divriots/cheerio': 1.0.0-rc.12 '@proload/core': 0.3.3 '@swc/core': 1.6.13 @@ -3281,14 +3296,14 @@ snapshots: '@esbuild/win32-x64@0.21.5': optional: true - '@eslint-community/eslint-utils@4.4.0(eslint@9.6.0)': + '@eslint-community/eslint-utils@4.4.0(eslint@9.9.0(jiti@1.21.6))': dependencies: - eslint: 9.6.0 + eslint: 9.9.0(jiti@1.21.6) eslint-visitor-keys: 3.4.3 '@eslint-community/regexpp@4.11.0': {} - '@eslint/config-array@0.17.0': + '@eslint/config-array@0.17.1': dependencies: '@eslint/object-schema': 2.1.4 debug: 4.3.5 @@ -3310,7 +3325,7 @@ snapshots: transitivePeerDependencies: - supports-color - '@eslint/js@9.6.0': {} + '@eslint/js@9.9.0': {} '@eslint/object-schema@2.1.4': {} @@ -4160,21 +4175,21 @@ snapshots: escape-string-regexp@4.0.0: {} - eslint-compat-utils@0.5.1(eslint@9.6.0): + eslint-compat-utils@0.5.1(eslint@9.9.0(jiti@1.21.6)): dependencies: - eslint: 9.6.0 + eslint: 9.9.0(jiti@1.21.6) semver: 7.6.2 - eslint-config-prettier@9.1.0(eslint@9.6.0): + eslint-config-prettier@9.1.0(eslint@9.9.0(jiti@1.21.6)): dependencies: - eslint: 9.6.0 + eslint: 9.9.0(jiti@1.21.6) - eslint-plugin-svelte@2.41.0(eslint@9.6.0)(svelte@4.2.18): + eslint-plugin-svelte@2.41.0(eslint@9.9.0(jiti@1.21.6))(svelte@4.2.18): dependencies: - '@eslint-community/eslint-utils': 4.4.0(eslint@9.6.0) + '@eslint-community/eslint-utils': 4.4.0(eslint@9.9.0(jiti@1.21.6)) '@jridgewell/sourcemap-codec': 1.4.15 - eslint: 9.6.0 - eslint-compat-utils: 0.5.1(eslint@9.6.0) + eslint: 9.9.0(jiti@1.21.6) + eslint-compat-utils: 0.5.1(eslint@9.9.0(jiti@1.21.6)) esutils: 2.0.3 known-css-properties: 0.34.0 postcss: 8.4.39 @@ -4193,7 +4208,7 @@ snapshots: esrecurse: 4.3.0 estraverse: 5.3.0 - eslint-scope@8.0.1: + eslint-scope@8.0.2: dependencies: esrecurse: 4.3.0 estraverse: 5.3.0 @@ -4202,13 +4217,13 @@ snapshots: eslint-visitor-keys@4.0.0: {} - eslint@9.6.0: + eslint@9.9.0(jiti@1.21.6): dependencies: - '@eslint-community/eslint-utils': 4.4.0(eslint@9.6.0) + '@eslint-community/eslint-utils': 4.4.0(eslint@9.9.0(jiti@1.21.6)) '@eslint-community/regexpp': 4.11.0 - '@eslint/config-array': 0.17.0 + '@eslint/config-array': 0.17.1 '@eslint/eslintrc': 3.1.0 - '@eslint/js': 9.6.0 + '@eslint/js': 9.9.0 '@humanwhocodes/module-importer': 1.0.1 '@humanwhocodes/retry': 0.3.0 '@nodelib/fs.walk': 1.2.8 @@ -4217,7 +4232,7 @@ snapshots: cross-spawn: 7.0.3 debug: 4.3.5 escape-string-regexp: 4.0.0 - eslint-scope: 8.0.1 + eslint-scope: 8.0.2 eslint-visitor-keys: 4.0.0 espree: 10.1.0 esquery: 1.6.0 @@ -4238,6 +4253,8 @@ snapshots: optionator: 0.9.4 strip-ansi: 6.0.1 text-table: 0.2.0 + optionalDependencies: + jiti: 1.21.6 transitivePeerDependencies: - supports-color @@ -5028,11 +5045,13 @@ snapshots: optionalDependencies: postcss: 8.4.39 - postcss-load-config@6.0.1(postcss@8.4.39): + postcss-load-config@6.0.1(jiti@1.21.6)(postcss@8.4.39)(yaml@2.4.5): dependencies: lilconfig: 3.1.2 optionalDependencies: + jiti: 1.21.6 postcss: 8.4.39 + yaml: 2.4.5 optional: true postcss-media-query-parser@0.2.3: {} @@ -5072,22 +5091,22 @@ snapshots: prelude-ls@1.2.1: {} - prettier-plugin-organize-imports@4.0.0(prettier@3.3.2)(typescript@5.5.3): + prettier-plugin-organize-imports@4.0.0(prettier@3.3.2)(typescript@5.5.4): dependencies: prettier: 3.3.2 - typescript: 5.5.3 + typescript: 5.5.4 - prettier-plugin-svelte@3.2.5(prettier@3.3.2)(svelte@4.2.18): + prettier-plugin-svelte@3.2.6(prettier@3.3.2)(svelte@4.2.18): dependencies: prettier: 3.3.2 svelte: 4.2.18 - prettier-plugin-tailwindcss@0.6.5(prettier-plugin-organize-imports@4.0.0(prettier@3.3.2)(typescript@5.5.3))(prettier-plugin-svelte@3.2.5(prettier@3.3.2)(svelte@4.2.18))(prettier@3.3.2): + prettier-plugin-tailwindcss@0.6.5(prettier-plugin-organize-imports@4.0.0(prettier@3.3.2)(typescript@5.5.4))(prettier-plugin-svelte@3.2.6(prettier@3.3.2)(svelte@4.2.18))(prettier@3.3.2): dependencies: prettier: 3.3.2 optionalDependencies: - prettier-plugin-organize-imports: 4.0.0(prettier@3.3.2)(typescript@5.5.3) - prettier-plugin-svelte: 3.2.5(prettier@3.3.2)(svelte@4.2.18) + prettier-plugin-organize-imports: 4.0.0(prettier@3.3.2)(typescript@5.5.4) + prettier-plugin-svelte: 3.2.6(prettier@3.3.2)(svelte@4.2.18) prettier@3.3.2: {} @@ -5441,15 +5460,15 @@ snapshots: supports-preserve-symlinks-flag@1.0.0: {} - svelte-check@3.8.4(postcss-load-config@6.0.1(postcss@8.4.39))(postcss@8.4.39)(svelte@4.2.18): + svelte-check@3.8.5(postcss-load-config@6.0.1(jiti@1.21.6)(postcss@8.4.39)(yaml@2.4.5))(postcss@8.4.39)(svelte@4.2.18): dependencies: '@jridgewell/trace-mapping': 0.3.25 chokidar: 3.6.0 picocolors: 1.0.1 sade: 1.8.1 svelte: 4.2.18 - svelte-preprocess: 5.1.4(postcss-load-config@6.0.1(postcss@8.4.39))(postcss@8.4.39)(svelte@4.2.18)(typescript@5.5.3) - typescript: 5.5.3 + svelte-preprocess: 5.1.4(postcss-load-config@6.0.1(jiti@1.21.6)(postcss@8.4.39)(yaml@2.4.5))(postcss@8.4.39)(svelte@4.2.18)(typescript@5.5.4) + typescript: 5.5.4 transitivePeerDependencies: - '@babel/core' - coffeescript @@ -5484,7 +5503,7 @@ snapshots: pmtiles: 3.0.6 svelte: 4.2.18 - svelte-preprocess@5.1.4(postcss-load-config@6.0.1(postcss@8.4.39))(postcss@8.4.39)(svelte@4.2.18)(typescript@5.5.3): + svelte-preprocess@5.1.4(postcss-load-config@6.0.1(jiti@1.21.6)(postcss@8.4.39)(yaml@2.4.5))(postcss@8.4.39)(svelte@4.2.18)(typescript@5.5.4): dependencies: '@types/pug': 2.0.10 detect-indent: 6.1.0 @@ -5494,8 +5513,8 @@ snapshots: svelte: 4.2.18 optionalDependencies: postcss: 8.4.39 - postcss-load-config: 6.0.1(postcss@8.4.39) - typescript: 5.5.3 + postcss-load-config: 6.0.1(jiti@1.21.6)(postcss@8.4.39)(yaml@2.4.5) + typescript: 5.5.4 svelte@4.2.18: dependencies: @@ -5631,7 +5650,7 @@ snapshots: type-fest@4.21.0: {} - typescript@5.5.3: {} + typescript@5.5.4: {} typewise-core@1.2.0: {} diff --git a/src/lib/components/Head.svelte b/src/lib/components/Head.svelte index 68e967da..86cf086d 100644 --- a/src/lib/components/Head.svelte +++ b/src/lib/components/Head.svelte @@ -25,6 +25,7 @@ logo: config.url + '/android-chrome-512x512.png', sameAs: [ 'https://www.instagram.com/' + config.instagramHandle, + 'https://www.linkedin.com/company/' + config.linkedinHandle, 'https://twitter.com/' + config.twitterHandle, 'https://github.com/' + config.githubHandle ] diff --git a/src/lib/config.js b/src/lib/config.js index 30b6225b..9680a493 100644 --- a/src/lib/config.js +++ b/src/lib/config.js @@ -49,6 +49,12 @@ export const instagramHandle = 'sta.ge.ba'; */ export const twitterHandle = '@basel_stadt'; +/** + * The LinkedIn handle associated with the website. + * @type {string} + */ +export const linkedinHandle = 'stadt-geschichte-basel'; + /** * The GitHub handle or organization associated with the website's repository. * @type {string} diff --git a/src/routes/+layout.svelte b/src/routes/+layout.svelte index 244bf29d..d73b74d6 100644 --- a/src/routes/+layout.svelte +++ b/src/routes/+layout.svelte @@ -113,14 +113,14 @@