6 changed files with 114 additions and 39 deletions
@ -1,11 +1,16 @@
@@ -1,11 +1,16 @@
|
||||
import { Icon, Icons } from 'components/Icon' |
||||
|
||||
export function BrandPill() { |
||||
import { Icon, Icons } from "components/Icon"; |
||||
|
||||
export function BrandPill(props: { clickable?: boolean }) { |
||||
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} /> |
||||
<span className="font-semibold text-white">movie-web</span> |
||||
</div> |
||||
) |
||||
); |
||||
} |
||||
|
@ -0,0 +1,23 @@
@@ -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