Product
Socket Now Supports uv.lock Files
Socket now supports uv.lock files to ensure consistent, secure dependency resolution for Python projects and enhance supply chain security.
flex-plugin
Advanced tools
Library to help building Twilio Flex Plugins.
npm install flex-plugin
import { loadPlugin, FlexPlugin } from 'flex-plugin';
class MyPlugin extends FlexPlugin {
pluginName = 'MyPlugin';
init(flex, manager) {
// set up your flex
flex.TaskCanvas.Content.add(<p>Hello</p>);
}
}
loadPlugin(MyPlugin);
Visit Twilio Docs for a tutorial on creating your first plugin.
To load external JS/CSS files into your plugin, we provide two helper methods: loadJS
and loadCSS
. Use them by calling these methods at the start of plugin initialization.
import { FlexPlugin, loadJS, loadCSS } from 'flex-plugin';
class MyPlugin extends FlexPlugin {
pluginName = 'MyPlugin';
init(flex, manager) {
loadJS('http://mysite.com/files/flex.js');
loadCSS(
'http://mysite.com/files/flex.css',
'http://mysite.com/files/flex-2.css',
);
// set up everything else
}
}
The CSS/JS files must be accessible by Twilio's proxy servers. Local files on your desktop are likely inaccessible via these methods, but your stylesheet may be uploaded to Twilio Assets for use here.
The following NPM packages are defined as external dependencies:
react
react-dom
redux
react-redux
When you build
your plugin, these dependencies will not be included in your bundle. Instead, Flex UI will provide them as global for your plugin to use.
To ensure you are using the same version that Flex UI is exposing, leave the version of the React that is specified in your package.json
. See React Versions to see the currently supported version.
We currently support the following versions:
react 16.5.2
react-dom 16.5.2
redux 3.7.2
react-redux 5.1.0
Make sure to follow the instructions in the main repository to set up the project.
# Install dependencies and link local packages with each other
cd packages/flex-plugin-scripts
npx lerna bootstrap
# Run tests
npm test
# To use your local package in a different project
npm link
# then in a different project
npm link flex-plugin-scripts
Thank you to all the lovely contributors to this project. Please check the main repository to see all contributors.
FAQs
Runtime for Flex plugins
We found that flex-plugin demonstrated a not healthy version release cadence and project activity because the last version was released a year ago. It has 8 open source maintainers collaborating on the project.
Did you know?
Socket for GitHub automatically highlights issues in each pull request and monitors the health of all your open source dependencies. Discover the contents of your packages and block harmful activity before you install or update your dependencies.
Product
Socket now supports uv.lock files to ensure consistent, secure dependency resolution for Python projects and enhance supply chain security.
Research
Security News
Socket researchers have discovered multiple malicious npm packages targeting Solana private keys, abusing Gmail to exfiltrate the data and drain Solana wallets.
Security News
PEP 770 proposes adding SBOM support to Python packages to improve transparency and catch hidden non-Python dependencies that security tools often miss.