diff --git a/package.json b/package.json index c7c8b58..56c145a 100644 --- a/package.json +++ b/package.json @@ -14,6 +14,7 @@ "@atcute/client": "^3.0.1", "@atcute/identity-resolver": "^0.1.2", "@atproto/api": "^0.16.9", + "@braintree/sanitize-url": "^7.1.1", "@eslint/compat": "^2.0.0", "@eslint/js": "^9.39.1", "@sinclair/typebox": "^0.34.41", diff --git a/pnpm-lock.yaml b/pnpm-lock.yaml index 0a283c3..d70bf6e 100644 --- a/pnpm-lock.yaml +++ b/pnpm-lock.yaml @@ -20,6 +20,9 @@ importers: '@atproto/api': specifier: ^0.16.9 version: 0.16.11 + '@braintree/sanitize-url': + specifier: ^7.1.1 + version: 7.1.1 '@eslint/compat': specifier: ^2.0.0 version: 2.0.0(eslint@9.39.1) @@ -131,6 +134,9 @@ packages: resolution: {integrity: sha512-4kdqcjyxo/8RQ8ayjms47HCWZIF5981oE5nIenbfThKDxWXtEHKipAOWlflpPJzZx9y/JWYQkp18Awr7VuepFg==} engines: {node: '>= 18'} + '@braintree/sanitize-url@7.1.1': + resolution: {integrity: sha512-i1L7noDNxtFyL5DmZafWy1wRVhGehQmzZaz1HiN5e7iylJMSZR7ekOV7NsIqa5qBldlLrsKv4HbgFUVlQrz8Mw==} + '@esbuild/aix-ppc64@0.25.12': resolution: {integrity: sha512-Hhmwd6CInZ3dwpuGTF8fJG6yoWmsToE+vYgD4nytZVxcu1ulHpUQRAB1UJ8+N1Am3Mz4+xOByoQoSZf4D+CpkA==} engines: {node: '>=18'} @@ -1392,6 +1398,8 @@ snapshots: '@badrap/valita@0.4.6': {} + '@braintree/sanitize-url@7.1.1': {} + '@esbuild/aix-ppc64@0.25.12': optional: true diff --git a/src/lib/components/landing/PostComponent.svelte b/src/lib/components/landing/PostComponent.svelte index 8bfb72d..d47b9f7 100644 --- a/src/lib/components/landing/PostComponent.svelte +++ b/src/lib/components/landing/PostComponent.svelte @@ -5,6 +5,7 @@ import moment from 'moment'; import { blueskyHandleFromDid } from '../../pdsfetch'; import Hls from 'hls.js'; + import {sanitizeUrl} from '@braintree/sanitize-url'; let { post }: { post: Post } = $props(); // State for image carousel @@ -137,13 +138,13 @@ > {/if}