1.0.4 • Published 4 days ago

@choctawnationofoklahoma/lite-vimeo v1.0.4

Weekly downloads
-
License
MIT
Repository
github
Last release
4 days ago

\<lite-vimeo>

A web component that displays Vimeo embeds faster. Based on @slightlyoff's work (among others), this extends the component to allow for custom image placeholders and unlisted videos.

Features

  • No dependencies; it's just vanilla JS & a web component.
  • It's fast 🏎️.
  • It's Shadow Dom encapsulated!
  • It's responsive 16:9
  • It's accessible via keyboard and will set ARIA via the videotitle attribute
  • It's locale ready; you can set the videoplay to have a properly locale based label
  • Set the start attribute to start at a particular place in a video
  • You can set autoload to use Intersection Observer to load the iframe when scrolled into view.
  • Loads placeholder image as WebP with a Jpeg fallback
  • Allows custom placeholder images
  • Allows unlisted vimeo videos

Install

This web component is built with ES modules in mind and is available on NPM:

Install code-block:

npm i @choctawnationofoklahoma/lite-vimeo

After install, import into your project:

import '@choctawnationofoklahoma/lite-vimeo';

Basic Examples

Attributes

The web component allows certain attributes to be give a little additional flexibility.

NameDescriptionDefault
videoid*The Vimeo videoid (required)
videotitleThe title of the videoVideo
videoplayThe title of the play button (for translation)Play
autoloadUse Intersection Observer to load iframe when scrolled into viewfalse
autoplayVideo attempts to play automatically if auto-load set and browser allows itfalse
startSet the point at which the video should start, in seconds0
unlistedAn attribute flag whose existence declares the videoid as unlisted
customPlaceholderA valid url to load a custom placeholder imagestring

Contributing

  1. Create a PR
  2. Tag @kjroelke as a reviewer.

Misc.

I also wrote a script to track videos views with Google Tag Manager. Since it's in the ShadowDOM, it gets a bit tricky, so here's a link to that repo.

1.0.4

4 days ago

1.0.3

4 days ago

1.0.2

1 month ago

1.0.1

1 month ago

1.0.0

1 month ago