6 changed files with 114 additions and 39 deletions
@ -1,11 +1,16 @@ |
|||||||
import { Icon, Icons } from 'components/Icon' |
import { Icon, Icons } from "components/Icon"; |
||||||
|
|
||||||
export function BrandPill() { |
|
||||||
|
|
||||||
|
export function BrandPill(props: { clickable?: boolean }) { |
||||||
return ( |
return ( |
||||||
<div className="bg-bink-100 bg-opacity-50 text-bink-600 rounded-full flex items-center space-x-2 px-4 py-2"> |
<div |
||||||
|
className={`bg-bink-100 text-bink-600 flex items-center space-x-2 rounded-full bg-opacity-50 px-4 py-2 ${ |
||||||
|
props.clickable |
||||||
|
? "hover:bg-bink-200 hover:text-bink-700 transition-[transform,background-color] hover:scale-105 active:scale-95" |
||||||
|
: "" |
||||||
|
}`}
|
||||||
|
> |
||||||
<Icon className="text-xl" icon={Icons.MOVIE_WEB} /> |
<Icon className="text-xl" icon={Icons.MOVIE_WEB} /> |
||||||
<span className="font-semibold text-white">movie-web</span> |
<span className="font-semibold text-white">movie-web</span> |
||||||
</div> |
</div> |
||||||
) |
); |
||||||
} |
} |
||||||
|
@ -0,0 +1,23 @@ |
|||||||
|
# the providers |
||||||
|
|
||||||
|
to make this as clear as possible, here is some extra information on how the interal system works regarding providers. |
||||||
|
|
||||||
|
| Term | explanation | |
||||||
|
| ------------- | ------------------------------------------------------------------------------------- | |
||||||
|
| Media | Object containing information about a piece of media. like title and its id's | |
||||||
|
| PortableMedia | Object with just the identifiers of a piece of media. used for transport and saving | |
||||||
|
| MediaStream | Object with a stream url in it. use it to view a piece of media. | |
||||||
|
| Provider | group of methods to generate media and mediastreams from a source. aliased as scraper | |
||||||
|
|
||||||
|
All types are prefixed with MW (MovieWeb) to prevent clashing names. |
||||||
|
|
||||||
|
## Some rules |
||||||
|
|
||||||
|
1. **Never** remove a provider completely if it's been in use before. just disable it. |
||||||
|
2. **Never** change the ID of a provider if it's been in use before. |
||||||
|
3. **Never** change system of the media ID of a provider without making it backwards compatible |
||||||
|
|
||||||
|
All these rules are because `PortableMedia` objects need to stay functional. because: |
||||||
|
|
||||||
|
- It's used for routing, links would stop working |
||||||
|
- It's used for storage, continue watching and bookmarks would stop working |
Loading…
Reference in new issue