This Web Component follows the open-wc recommendation and is meant to be used with the OpenTok Video SDK.
A Vonage Video API account will be needed.
A goal is to simplify the code needed to create a chat room quickly. This Web Component will enable screen sharing functionality.
npm i @vonage/screen-share
<script type="module">
import '@vonage/screen-share/screen-share.js';
</script>
<script type="module" src="https://unpkg.com/@vonage/screen-share@latest/screen-share.js?module"></script>
<screen-share></screen-share>
properties
: (Object) the properties used to publish the screen share. Find the full list in the documentation.start-text
: set the text of the button to begin screen sharing. Default is "start screenshare".stop-text
: set the text of the button to end screen sharing. Default is "stop screenshare".
<screen-share start-text="start" stop-text="stop"></screen-share>
The Web Component uses the CSS pseudo-element ::part
for styling. So you can style it the same way you would style a regular button element. Here's an example:
screen-share::part(button) {
font-size: 20px;
color: white;
background-color: black;
border-radius: 5px;
}
- Get a reference to the Web Component.
- Generate a Session and Token.
- Pass Session and Token into Web Component reference.
Note: This can vary with library / framework (see examples folder)
To scan the project for linting and formatting errors, run
npm run lint
To automatically fix linting and formatting errors, run
npm run format
To execute a single test run:
npm run test
To run the tests in interactive watch mode run:
npm run test:watch
To run a local instance of Storybook for your component, run
npm run storybook
To build a production version of Storybook, run
npm run storybook:build
For most of the tools, the configuration is in the package.json
to minimize the amount of files in your project.
If you customize the configuration a lot, you can consider moving them to individual files.
npm start
To run a local development server that serves the basic demo located in demo/index.html