summaryrefslogtreecommitdiff
diff options
context:
space:
mode:
authormaguroshouta <54607611+maguroshouta@users.noreply.github.com>2023-08-22 15:56:36 +0900
committerGitHub <noreply@github.com>2023-08-22 15:56:36 +0900
commitcb80dff7df07e9ea9292365fe82fc7af09cc63c1 (patch)
tree7f7ef1dd2c4c3f594dc15a8cc1b4d1be7260dada
parentNew Crowdin updates (#11397) (diff)
downloadsharkey-cb80dff7df07e9ea9292365fe82fc7af09cc63c1.tar.gz
sharkey-cb80dff7df07e9ea9292365fe82fc7af09cc63c1.tar.bz2
sharkey-cb80dff7df07e9ea9292365fe82fc7af09cc63c1.zip
x.comでも展開ができるように (#11757)
-rw-r--r--packages/frontend/src/components/MkUrlPreview.vue2
-rw-r--r--packages/frontend/test/url-preview.test.ts9
2 files changed, 10 insertions, 1 deletions
diff --git a/packages/frontend/src/components/MkUrlPreview.vue b/packages/frontend/src/components/MkUrlPreview.vue
index 1f9c336eee..bac7f1e310 100644
--- a/packages/frontend/src/components/MkUrlPreview.vue
+++ b/packages/frontend/src/components/MkUrlPreview.vue
@@ -133,7 +133,7 @@ let unknownUrl = $ref(false);
const requestUrl = new URL(props.url);
if (!['http:', 'https:'].includes(requestUrl.protocol)) throw new Error('invalid url');
-if (requestUrl.hostname === 'twitter.com' || requestUrl.hostname === 'mobile.twitter.com') {
+if (requestUrl.hostname === 'twitter.com' || requestUrl.hostname === 'mobile.twitter.com' || requestUrl.hostname === 'x.com' || requestUrl.hostname === 'mobile.x.com') {
const m = requestUrl.pathname.match(/^\/.+\/status(?:es)?\/(\d+)/);
if (m) tweetId = m[1];
}
diff --git a/packages/frontend/test/url-preview.test.ts b/packages/frontend/test/url-preview.test.ts
index b5fcf9bece..0cf3a417e2 100644
--- a/packages/frontend/test/url-preview.test.ts
+++ b/packages/frontend/test/url-preview.test.ts
@@ -152,4 +152,13 @@ describe('MkUrlPreview', () => {
assert.strictEqual(iframe?.getAttribute('allow'), 'fullscreen;web-share');
assert.strictEqual(iframe?.getAttribute('sandbox'), 'allow-popups allow-scripts allow-same-origin');
});
+
+ test('Loading a post in iframe', async () => {
+ const iframe = await renderAndOpenPreview({
+ url: 'https://x.com/i/web/status/1685072521782325249',
+ });
+ assert.exists(iframe, 'iframe should exist');
+ assert.strictEqual(iframe?.getAttribute('allow'), 'fullscreen;web-share');
+ assert.strictEqual(iframe?.getAttribute('sandbox'), 'allow-popups allow-scripts allow-same-origin');
+ });
});