Editor embeds (#680)

- [x] Make deleting an embed easier
- [x] Add document level ability to disable embeds
- [x] Add team level ability to disable embeds
- [x] GitHub
- [x] Numeracy
- [x] Mode Analytics
- [x] Figma
- [x] Airtable
- [x] Vimeo
- [x] RealtimeBoard
- [x] Loom
- [x] Lucidcharts
- [x] Framer
- [x] InVision
- [x] Typeform
- [x] Marvel
- [x] Spotify
- [x] Codepen
- [x] Trello
This commit is contained in:
Tom Moor
2018-12-15 14:06:29 -08:00
committed by GitHub
parent 836f9a88a2
commit 044b4f16bc
50 changed files with 1121 additions and 18 deletions

36
app/embeds/Spotify.js Normal file
View File

@@ -0,0 +1,36 @@
// @flow
import * as React from 'react';
import Frame from './components/Frame';
const URL_REGEX = new RegExp('https?://open.spotify.com/(.*)$');
type Props = {
url: string,
};
export default class Spotify extends React.Component<Props> {
static ENABLED = [URL_REGEX];
get pathname() {
try {
const parsed = new URL(this.props.url);
return parsed.pathname;
} catch (err) {
return '';
}
}
render() {
const normalizedPath = this.pathname.replace(/^\/embed/, '/');
return (
<Frame
width="300px"
height="380px"
src={`https://open.spotify.com/embed${normalizedPath}`}
title="Spotify Embed"
allow="encrypted-media"
/>
);
}
}