{"_id":"@xcelerate-ui/core","_rev":"34-61e2c8b91bc66e94735c6a3b7c2a1d2a","name":"@xcelerate-ui/core","dist-tags":{"latest":"1.0.5","develop":"1.0.4-beta.3"},"versions":{"1.0.0":{"name":"@xcelerate-ui/core","version":"1.0.0","description":"An NPM package that I can install in my Twilio plugin which will give me access to several Xcelerate features.","author":{"name":"Waterfield Technologies Inc"},"license":"MIT","main":"dist/index.js","module":"dist/index.modern.js","source":"src/index.tsx","engines":{"node":">=10"},"scripts":{"build":"microbundle-crl --no-compress --format modern,cjs","start":"microbundle-crl watch --no-compress --format modern,cjs","prepare":"run-s build","test":"run-s test:unit test:lint test:build","test:build":"run-s build","test:lint":"eslint .","test:unit":"cross-env CI=1 react-scripts test --env=jsdom","test:watch":"react-scripts test --env=jsdom"},"peerDependencies":{"react":"^16.0.0"},"devDependencies":{"@testing-library/jest-dom":"^4.2.4","@testing-library/react":"^9.5.0","@testing-library/user-event":"^7.2.1","@types/jest":"^25.1.4","@types/node":"^12.12.38","@types/react":"^16.9.27","@types/react-dom":"^16.9.7","@typescript-eslint/eslint-plugin":"^2.26.0","@typescript-eslint/parser":"^2.26.0","microbundle-crl":"^0.13.10","babel-eslint":"^10.0.3","cross-env":"^7.0.2","eslint":"^6.8.0","eslint-config-prettier":"^6.7.0","eslint-config-standard":"^14.1.0","eslint-config-standard-react":"^9.2.0","eslint-plugin-import":"^2.18.2","eslint-plugin-node":"^11.0.0","eslint-plugin-prettier":"^3.1.1","eslint-plugin-promise":"^4.2.1","eslint-plugin-react":"^7.17.0","eslint-plugin-standard":"^4.0.1","npm-run-all":"^4.1.5","prettier":"^2.0.4","react":"^16.13.1","react-dom":"^16.13.1","react-scripts":"^3.4.1","typescript":"^3.7.5"},"dependencies":{"@types/lodash":"^4.14.177","lodash":"^4.17.21"},"gitHead":"99efbcb29b990a1d727beb7e60417dc5b3fc1905","_id":"@xcelerate-ui/core@1.0.0","_nodeVersion":"12.22.7","_npmVersion":"6.14.15","dist":{"integrity":"sha512-XudXs6zA+0OftSGFnbBZgt6r0BbooDaEo5yWlO36auUDniWJXwOR4iFGSTlbBSDhGAfaPA5+c9KrOATs/vWPvA==","shasum":"1e598f7dde73bb38172c0252930d13a0a2a4fe31","tarball":"https://registry.npmjs.org/@xcelerate-ui/core/-/core-1.0.0.tgz","fileCount":28,"unpackedSize":6008272,"npm-signature":"-----BEGIN PGP SIGNATURE-----\r\nVersion: OpenPGP.js v3.0.13\r\nComment: https://openpgpjs.org\r\n\r\nwsFcBAEBCAAQBQJhsRqgCRA9TVsSAnZWagAAxokQAJeK48TNmpn+UieGuxJq\n6hKdc9HFFPrPysubC5gwiDpL6s61+mUt7XHM5HQxLz0SL26dcqoamfY0NPXn\nWkokbd7x19XruTrvlPGyWosWZIRjJ3locte30YpINGUfX8AA3atnWU2OX2S/\npaSE8TcJM8rqzr2bALFjWezOOYvAMpG3sr1gK0u0dabfdp+USDvKqr1chyaZ\nmdyVRnNK5HL0AkvcbyxvTiXXAQrK702GQqhkJal/awd6m+rNm6Pe+RePwtSS\nrlDyVdLUJ+RceQR+qomiT0axKuzH3634SLFY6lCHlXMJi6FtAaCXPg2l93k/\nvJC9eJMECR0Tfv46cELnb3g3dd78gsxFPB/yzQccz+EGX7uvWZ2yFqQIJ54Q\nJn1d58cT4yv7n/0yHHMI5uITUapoYM83L3atZOSoRFjp+rODO+rEB7zeRbMW\nBbroyN31rhQ0OYzroYs1hMa1AXYScp7fLtBy/kFqhway/hqziTF2GJ+4L7FO\nB/jRJ8++xAw74auh3G9m8Jbl48RQxafTaLLWIoPkIt1eCIU8TLbufFFDZrpJ\nUqc1Wj0lecrS1XoigNqk5FU8th/CQxmTvyxhL1g2oT+3wMxQ0dNB8L/DZ7ID\nMfa+HRyQV3TvLDPDh9SbOHAdWod0YKbGSuzhxzBNHxJpu9lCNbbFvnIuqx0K\nKjwR\r\n=qvTR\r\n-----END PGP SIGNATURE-----\r\n","signatures":[{"keyid":"SHA256:jl3bwswu80PjjokCgh0o2w5c2U4LhQAE57gj9cz1kzA","sig":"MEUCIQDqQCC9CTj4CI43qbdEqbvK9/UWoG0wv72pI3EFMBSelgIgT32JTGIqbRO7Bo6EEun+qZmt/oJd3N0qjzlVXwzbm00="}]},"_npmUser":{"name":"waterfield_jclb","email":"john.losbanes@waterfield.com"},"directories":{},"maintainers":[{"name":"lawrenceobote","email":"lawrence.obote@waterfield.com"},{"name":"arcsbstn-wti","email":"adrianne.sebastian@waterfield.com"},{"name":"luc_saunders","email":"luc.saunders@waterfield.com"},{"name":"waterfield_jclb","email":"john.losbanes@waterfield.com"},{"name":"jasonhuangwaterfield","email":"jason.huang@waterfield.com"},{"name":"rileyworthenwaterfield","email":"riley.worthen@waterfield.com"}],"_npmOperationalInternal":{"host":"s3://npm-registry-packages","tmp":"tmp/core_1.0.0_1638996639789_0.19332291008339753"},"_hasShrinkwrap":false,"deprecated":"This will still work in Xcelerate v2.x and below. But it will no longer be supported. The new updated package is in: https://www.npmjs.com/package/xcelerate-ui"},"1.0.1-beta.0":{"name":"@xcelerate-ui/core","version":"1.0.1-beta.0","description":"An NPM package that I can install in my Twilio plugin which will give me access to several Xcelerate features.","author":{"name":"Waterfield Technologies Inc"},"license":"MIT","main":"dist/index.js","module":"dist/index.modern.js","source":"src/index.tsx","engines":{"node":">=10"},"scripts":{"build":"microbundle-crl --no-compress --format modern,cjs","start":"microbundle-crl watch --no-compress --format modern,cjs","prepare":"run-s build","test":"run-s test:unit test:lint test:build","test:build":"run-s build","test:lint":"eslint .","test:unit":"cross-env CI=1 react-scripts test --env=jsdom","test:watch":"react-scripts test --env=jsdom","npm:login":"npm run npm-cli-login -u <npm username> -p <password> -e <npm email>","npm:publish":"npm publish","npm:deploy":"npm run npm:login && npm run npm:publish"},"peerDependencies":{"react":"^16.0.0"},"devDependencies":{"@testing-library/jest-dom":"^4.2.4","@testing-library/react":"^9.5.0","@testing-library/user-event":"^7.2.1","@types/jest":"^25.1.4","@types/node":"^12.12.38","@types/react":"^16.9.27","@types/react-dom":"^16.9.7","@typescript-eslint/eslint-plugin":"^2.26.0","@typescript-eslint/parser":"^2.26.0","babel-eslint":"^10.0.3","cross-env":"^7.0.2","eslint":"^6.8.0","eslint-config-prettier":"^6.7.0","eslint-config-standard":"^14.1.0","eslint-config-standard-react":"^9.2.0","eslint-plugin-import":"^2.18.2","eslint-plugin-node":"^11.0.0","eslint-plugin-prettier":"^3.1.1","eslint-plugin-promise":"^4.2.1","eslint-plugin-react":"^7.17.0","eslint-plugin-standard":"^4.0.1","microbundle-crl":"^0.13.10","npm-cli-login":"^1.0.0","npm-run-all":"^4.1.5","prettier":"^2.0.4","react":"^16.13.1","react-dom":"^16.13.1","react-scripts":"^3.4.1","typescript":"^3.7.5"},"gitHead":"dfa75c823071619b603e89baf42a08a44d1d3252","_id":"@xcelerate-ui/core@1.0.1-beta.0","_nodeVersion":"12.22.7","_npmVersion":"6.14.15","dist":{"integrity":"sha512-y7nTrNDGznW4y9bpu8hl3JRb/vG/i6RsOxRX7+XqgyJuwR6LyD7VJWd/zpi/rBAGqPNYHeG7o27OT0maOXGqBA==","shasum":"130e030cd107be9290f00f20c927ceb61665ec1a","tarball":"https://registry.npmjs.org/@xcelerate-ui/core/-/core-1.0.1-beta.0.tgz","fileCount":28,"unpackedSize":6008651,"npm-signature":"-----BEGIN PGP SIGNATURE-----\r\nVersion: OpenPGP.js v3.0.13\r\nComment: https://openpgpjs.org\r\n\r\nwsFcBAEBCAAQBQJht3lrCRA9TVsSAnZWagAAMLEQAJzuPSRknJ6RgxXVyg63\nb8PC7k8RqarICqkTsSYG2JzgugmLIMKRsX2MSQCTFTfM41zW72uHayZ+5jcv\nj+Vp6QOOq7f5M29cVsPaFAKRl6tOzMahjxBZ+qOpE6I6afWR8zIlkw/v3nYi\nH+HJhBXD7406TrzJlUOvNyJOiCdPioKDesxBnmwoOJqbPppgFNVzDwk4Wp9T\n2Ddv4coEkWww7/n7wuTX5giUPbsFMbIpAJ0Ff+5Lvo8RzL4TJ7sH4ugWZHp/\n2XXgA7vGKSOwCfEeLIsHBvq+RE3zUCpO0+VOMYWIa9U4W0h/SgkMfKpECBEP\nB7Npar87Z5PThSJZcV5pNf5w9MFaQudR++SZbj/MjXKs6Ap3UB78WX2fssQx\nElfgNlxWUTo5Hfa49wjULuEYMlvcYoU6FvQCCxPZCEfL0Tizquo4uP0G5mI6\n1SHianLUxkBQnYtY7l7CHtUiDs7VPQWKz88UBN6Z8eO+j0xyzfQ1WIiGeJvA\nACeC0JudLBcitTryjUZddclhc0N5odkuQIucYWxmORIEHg+MgVpEJ1EDRuUI\nh1WlePRW9eq8rjUH76+bi0zX0bmr8pgAaauCQSpE42OnWDrHyYIshOET4zuc\nzGy+eDsFOBJu1Iel1cJW59PONg4hGV2ADvtjEKwiotcEzVBULQTlpYP/1HyL\nQ865\r\n=plIR\r\n-----END PGP SIGNATURE-----\r\n","signatures":[{"keyid":"SHA256:jl3bwswu80PjjokCgh0o2w5c2U4LhQAE57gj9cz1kzA","sig":"MEYCIQC79DGkHMBm0iajSXwQwTgHUpaq3LickeAUeBaiNscdswIhAKmtKbKap+Yu/rm29x2sochHPBv/wsO+/NslP+LsQJ1x"}]},"_npmUser":{"name":"waterfield_jclb","email":"john.losbanes@waterfield.com"},"directories":{},"maintainers":[{"name":"lawrenceobote","email":"lawrence.obote@waterfield.com"},{"name":"arcsbstn-wti","email":"adrianne.sebastian@waterfield.com"},{"name":"luc_saunders","email":"luc.saunders@waterfield.com"},{"name":"waterfield_jclb","email":"john.losbanes@waterfield.com"},{"name":"jasonhuangwaterfield","email":"jason.huang@waterfield.com"},{"name":"rileyworthenwaterfield","email":"riley.worthen@waterfield.com"}],"_npmOperationalInternal":{"host":"s3://npm-registry-packages","tmp":"tmp/core_1.0.1-beta.0_1639414123680_0.9123205555691973"},"_hasShrinkwrap":false,"deprecated":"This will still work in Xcelerate v2.x and below. But it will no longer be supported. The new updated package is in: https://www.npmjs.com/package/xcelerate-ui"},"1.0.1-beta.1":{"name":"@xcelerate-ui/core","version":"1.0.1-beta.1","description":"An NPM package that I can install in my Twilio plugin which will give me access to several Xcelerate features.","author":{"name":"Waterfield Technologies Inc"},"license":"MIT","main":"dist/index.js","module":"dist/index.modern.js","source":"src/index.tsx","engines":{"node":">=10"},"scripts":{"build":"microbundle-crl --no-compress --format modern,cjs","start":"microbundle-crl watch --no-compress --format modern,cjs","prepare":"run-s build","test":"run-s test:unit test:lint test:build","test:build":"run-s build","test:lint":"eslint .","test:unit":"cross-env CI=1 react-scripts test --env=jsdom","test:watch":"react-scripts test --env=jsdom","npm:login":"npm run npm-cli-login -u <npm username> -p <password> -e <npm email>","npm:publish":"npm publish","npm:deploy":"npm run npm:login && npm run npm:publish"},"peerDependencies":{"react":"^16.0.0"},"devDependencies":{"@testing-library/jest-dom":"^4.2.4","@testing-library/react":"^9.5.0","@testing-library/user-event":"^7.2.1","@types/jest":"^25.1.4","@types/node":"^12.12.38","@types/react":"^16.9.27","@types/react-dom":"^16.9.7","@typescript-eslint/eslint-plugin":"^2.26.0","@typescript-eslint/parser":"^2.26.0","babel-eslint":"^10.0.3","cross-env":"^7.0.2","eslint":"^6.8.0","eslint-config-prettier":"^6.7.0","eslint-config-standard":"^14.1.0","eslint-config-standard-react":"^9.2.0","eslint-plugin-import":"^2.18.2","eslint-plugin-node":"^11.0.0","eslint-plugin-prettier":"^3.1.1","eslint-plugin-promise":"^4.2.1","eslint-plugin-react":"^7.17.0","eslint-plugin-standard":"^4.0.1","microbundle-crl":"^0.13.10","npm-cli-login":"^1.0.0","npm-run-all":"^4.1.5","prettier":"^2.0.4","react":"^16.13.1","react-dom":"^16.13.1","react-scripts":"^3.4.1","typescript":"^3.7.5"},"gitHead":"021f886ee9a1bcff8fba74f1a1ab1cdbff56cdcc","_id":"@xcelerate-ui/core@1.0.1-beta.1","_nodeVersion":"12.22.7","_npmVersion":"6.14.15","dist":{"integrity":"sha512-j3R9OOF1w0UNjVXM7Aym18dkD3LJ/qR1RBRb1tbY3Kj6U5C/7gVLYragz4nNJ0cJxuG8wmOG5YG6K7itQj/b9Q==","shasum":"4b18544734ac468ff29af6c73fced4ead1b459b5","tarball":"https://registry.npmjs.org/@xcelerate-ui/core/-/core-1.0.1-beta.1.tgz","fileCount":28,"unpackedSize":6008651,"npm-signature":"-----BEGIN PGP SIGNATURE-----\r\nVersion: OpenPGP.js v3.0.13\r\nComment: https://openpgpjs.org\r\n\r\nwsFcBAEBCAAQBQJhwzxCCRA9TVsSAnZWagAAdskP/3X8ViObJAXA3jqkQjmE\n+/ot7DISGtqy9iL6py+2yaRHdtJt0Ua50PJONcWCLWMzuLXYK89pLFewinMC\n+9NAqkS347uxh+668GXxBJg91qD+Ft+vPF+1qURELL8eSNMl+CwKX1kcxGWu\nY77HshI5iFSybrSRNukyfplKzSEKqgUpEScO57zCp5oJ2LewAw8BIHzD8THv\n82UFIHw7lZ7PVoc5yLSP9ReMl8GkVpyt3oBOoFccjap4JSiOYULpR2ysNuAW\n1PsyTTJAxe1IsdceuBMe5RDbzPwwfSag9OWFEgeJ159g2Md3mkP0HaQFnN73\n60L7ZEnutlRZd8iRziN2RfdsXiDe+apDchYunMZ/2bo+B8brZUBAtN3nw72R\nFIu4EsOd9RfoYQhayHlqx/I6Xfwdj7LhGVv1lnAgDh9bukxKd0QR49qbLlA8\nmKma2aI1XMQtvA4krU3OEE6Eo6rVvuNpbL/PXtp2DTjUPOB3ksGSLn8PT5x5\nO3Ms4QkT3BDbXr0z/M3047zOQ0YfTy/uzmvEIF3gkkACSW6aIg5OmnFks2aV\nTVUZkuAslY3JbJK6+ifC0Mh3QqL5sgcfobrM9XWqhd5jacQr8DUKgA3kQdEu\neeNFO9+af8KolXibWIw55ICkxBwZVIRPueWHXLvH48bvsFBKw4ZwQl7RHJmf\nSUwS\r\n=zyKB\r\n-----END PGP SIGNATURE-----\r\n","signatures":[{"keyid":"SHA256:jl3bwswu80PjjokCgh0o2w5c2U4LhQAE57gj9cz1kzA","sig":"MEUCIQCPa3wB7OCg1314w3HhMKDKPXKybxC3P5ZOSBWdsFq+DwIgMN3CDtMHfm8TvFQwBYoE8Zh/i6N7FTTiZKcVw0JsfRM="}]},"_npmUser":{"name":"waterfield_jclb","email":"john.losbanes@waterfield.com"},"directories":{},"maintainers":[{"name":"lawrenceobote","email":"lawrence.obote@waterfield.com"},{"name":"arcsbstn-wti","email":"adrianne.sebastian@waterfield.com"},{"name":"luc_saunders","email":"luc.saunders@waterfield.com"},{"name":"waterfield_jclb","email":"john.losbanes@waterfield.com"},{"name":"jasonhuangwaterfield","email":"jason.huang@waterfield.com"},{"name":"rileyworthenwaterfield","email":"riley.worthen@waterfield.com"}],"_npmOperationalInternal":{"host":"s3://npm-registry-packages","tmp":"tmp/core_1.0.1-beta.1_1640184897903_0.40870634655061755"},"_hasShrinkwrap":false,"deprecated":"This will still work in Xcelerate v2.x and below. But it will no longer be supported. The new updated package is in: https://www.npmjs.com/package/xcelerate-ui"},"1.0.1-beta.2":{"name":"@xcelerate-ui/core","version":"1.0.1-beta.2","description":"An NPM package that I can install in my Twilio plugin which will give me access to several Xcelerate features.","author":{"name":"Waterfield Technologies Inc"},"license":"MIT","main":"dist/index.js","module":"dist/index.modern.js","source":"src/index.tsx","engines":{"node":">=10"},"scripts":{"build":"microbundle-crl --no-compress --format modern,cjs","start":"microbundle-crl watch --no-compress --format modern,cjs","prepare":"run-s build","test":"run-s test:unit test:lint test:build","test:build":"run-s build","test:lint":"eslint .","test:unit":"cross-env CI=1 react-scripts test --env=jsdom","test:watch":"react-scripts test --env=jsdom","npm:login":"npm-cli-login -u waterfield_jclb -p CreizyFing3rs!@#$ -e john.losbanes@waterfield.com","npm:publish":"npm publish","npm:deploy":"npm run npm:login && npm run npm:publish"},"peerDependencies":{"react":"^16.0.0"},"devDependencies":{"@testing-library/jest-dom":"^4.2.4","@testing-library/react":"^9.5.0","@testing-library/user-event":"^7.2.1","@types/jest":"^25.1.4","@types/node":"^12.12.38","@types/react":"^16.9.27","@types/react-dom":"^16.9.7","@typescript-eslint/eslint-plugin":"^2.26.0","@typescript-eslint/parser":"^2.26.0","babel-eslint":"^10.0.3","cross-env":"^7.0.2","eslint":"^6.8.0","eslint-config-prettier":"^6.7.0","eslint-config-standard":"^14.1.0","eslint-config-standard-react":"^9.2.0","eslint-plugin-import":"^2.18.2","eslint-plugin-node":"^11.0.0","eslint-plugin-prettier":"^3.1.1","eslint-plugin-promise":"^4.2.1","eslint-plugin-react":"^7.17.0","eslint-plugin-standard":"^4.0.1","microbundle-crl":"^0.13.10","npm-cli-login":"^1.0.0","npm-run-all":"^4.1.5","prettier":"^2.0.4","react":"^16.13.1","react-dom":"^16.13.1","react-scripts":"^3.4.1","typescript":"^3.7.5"},"gitHead":"ed7755336fdc48c06065f21e6f3739ed143eb8a4","_id":"@xcelerate-ui/core@1.0.1-beta.2","_nodeVersion":"12.22.7","_npmVersion":"6.14.15","dist":{"integrity":"sha512-F+wrqhMqNBghSB6mPTS7HDevWJhKzRR6IdXIqUIfhJwbGq/sPkx3wPnS9RFmA6nne16yvXfAJ7plV1C9F0zoHw==","shasum":"b2779461db2b65652cf0b8f1b3235bfb2e52cfa4","tarball":"https://registry.npmjs.org/@xcelerate-ui/core/-/core-1.0.1-beta.2.tgz","fileCount":28,"unpackedSize":6008668,"npm-signature":"-----BEGIN PGP SIGNATURE-----\r\nVersion: OpenPGP.js v3.0.13\r\nComment: https://openpgpjs.org\r\n\r\nwsFcBAEBCAAQBQJh30nOCRA9TVsSAnZWagAA/MYQAI40U6Ky0vVAps1ikZ9x\nfyexo2FiIMq7pj7otdlU/7UugenA02PsrRUdAcJZQe9K4/y9D2ohKHED+pJ2\ns7k25upA3OzsPaJWDSsffwvt7V1iaA+7QCCJr5HY7FN+fF+HiQ4LedTR0v1n\nRTChwvSo5XfU2i+20gWE2fFkbnqfOhoyu6Vo3vezUUrd57S6ttRyq34ToZFh\nQfGT4vFH/u7GFqG8VxBPVQ1hhTkQjEFSKf5tvqfwkysMqJSTJgOCkrtxQVLp\nnd2tmt/g/VVHBkdrxmTbYSvy+s/604rFrwvIqfIwMcs3lUVkS3T58BFBPF4G\nZb6TK4/z4T39boKx1DqC0WzHf5L/FgjFBusKh8BbtVI3bysTNNeIIx4+AFAu\nz/v9UTWpGAd5jJP476HsjxMoXd26U1X1LjHDJpYXJbwodTQoew1LReI317oc\n47E22vB9GKSfN8299euTniI2xgJuhkDQi8A2scNNe5UDSG9tYo4NvU/Lq+Jk\nNs2WTzK+vLvdFZHazFdh7RRTFysaXE5HB5NeXUpOx3kT1fZCfAQQaC6uXB1W\nHc1xSgwK9hv+Qw9wGNVkkR97NK6Su8L5XyGIs8Dd9QZQutqUs8ZROSW1yJkf\n2/rFfbEZU6TaAdVlp33K0blq6qfJpi1Uh0S74cL/4Hcu9yT14JHAeAqbS0u7\nd659\r\n=meOG\r\n-----END PGP SIGNATURE-----\r\n","signatures":[{"keyid":"SHA256:jl3bwswu80PjjokCgh0o2w5c2U4LhQAE57gj9cz1kzA","sig":"MEQCIBtQVVjxzAqMqWIu/Vjml/ZSUWkbZ3pL1kCScE0nYrBNAiAjYqi5Vr0ekAGuDf2XY+Li0V74RVWKR97kKqcsHseLoQ=="}]},"_npmUser":{"name":"waterfield_jclb","email":"john.losbanes@waterfield.com"},"directories":{},"maintainers":[{"name":"lawrenceobote","email":"lawrence.obote@waterfield.com"},{"name":"arcsbstn-wti","email":"adrianne.sebastian@waterfield.com"},{"name":"luc_saunders","email":"luc.saunders@waterfield.com"},{"name":"waterfield_jclb","email":"john.losbanes@waterfield.com"},{"name":"jasonhuangwaterfield","email":"jason.huang@waterfield.com"},{"name":"rileyworthenwaterfield","email":"riley.worthen@waterfield.com"}],"_npmOperationalInternal":{"host":"s3://npm-registry-packages","tmp":"tmp/core_1.0.1-beta.2_1642023374408_0.23878260170473586"},"_hasShrinkwrap":false,"deprecated":"This will still work in Xcelerate v2.x and below. But it will no longer be supported. The new updated package is in: https://www.npmjs.com/package/xcelerate-ui"},"1.0.1-beta.3":{"name":"@xcelerate-ui/core","version":"1.0.1-beta.3","description":"An NPM package that I can install in my Twilio plugin which will give me access to several Xcelerate features.","author":{"name":"Waterfield Technologies Inc"},"license":"MIT","main":"dist/index.js","module":"dist/index.modern.js","source":"src/index.tsx","engines":{"node":">=10"},"scripts":{"build":"microbundle-crl --no-compress --format modern,cjs","start":"microbundle-crl watch --no-compress --format modern,cjs","prepare":"run-s build","test":"run-s test:unit test:lint test:build","test:build":"run-s build","test:lint":"eslint .","test:unit":"cross-env CI=1 react-scripts test --env=jsdom","test:watch":"react-scripts test --env=jsdom","npm:login":"npm-cli-login -u waterfield_jclb -p CreizyFing3rs!@#$ -e john.losbanes@waterfield.com","npm:publish":"npm publish","npm:deploy":"npm run npm:login && npm run npm:publish"},"peerDependencies":{"react":"^16.0.0"},"devDependencies":{"@testing-library/jest-dom":"^4.2.4","@testing-library/react":"^9.5.0","@testing-library/user-event":"^7.2.1","@types/jest":"^25.1.4","@types/node":"^12.12.38","@types/react":"^16.9.27","@types/react-dom":"^16.9.7","@typescript-eslint/eslint-plugin":"^2.26.0","@typescript-eslint/parser":"^2.26.0","babel-eslint":"^10.0.3","cross-env":"^7.0.2","eslint":"^6.8.0","eslint-config-prettier":"^6.7.0","eslint-config-standard":"^14.1.0","eslint-config-standard-react":"^9.2.0","eslint-plugin-import":"^2.18.2","eslint-plugin-node":"^11.0.0","eslint-plugin-prettier":"^3.1.1","eslint-plugin-promise":"^4.2.1","eslint-plugin-react":"^7.17.0","eslint-plugin-standard":"^4.0.1","microbundle-crl":"^0.13.10","npm-cli-login":"^1.0.0","npm-run-all":"^4.1.5","prettier":"^2.0.4","react":"^16.13.1","react-dom":"^16.13.1","react-scripts":"^3.4.1","typescript":"^3.7.5"},"readme":"# xcelerate-ui\n\n> xcelerate-ui\n\n[![NPM](https://img.shields.io/npm/v/xcelerate-ui.svg)](https://www.npmjs.com/package/xcelerate-ui) [![JavaScript Style Guide](https://img.shields.io/badge/code_style-standard-brightgreen.svg)](https://standardjs.com)\n\n## Install\n\n```bash\nnpm install --save xcelerate-ui\n```\n\n## Publish\n```bash\n// Option 1: CLI\nnpm run npm-cli-login -u <npm username> -p <password> -e <npm email>\nnpm publish --access public\n\n// Option 2: NPM Scripts\n// Update the needed fields inside the npm:login script.\nnpm run npm:deploy\n```\n\n## License\n\nMIT © [](https://github.com/)\n","readmeFilename":"README.md","gitHead":"ed7755336fdc48c06065f21e6f3739ed143eb8a4","_id":"@xcelerate-ui/core@1.0.1-beta.3","_nodeVersion":"12.22.7","_npmVersion":"6.14.15","dist":{"integrity":"sha512-ZXhSXV1ezwG2sX5hxK++q/z7HnvZ0VdIHgFru3CA3zuIP8rQbE9iOnENMcIQlOV/dxrXgNJW37UnSU38qKtLfw==","shasum":"cfe83680bf206bda667c8b361809caad44d486f7","tarball":"https://registry.npmjs.org/@xcelerate-ui/core/-/core-1.0.1-beta.3.tgz","fileCount":28,"unpackedSize":6008668,"npm-signature":"-----BEGIN PGP SIGNATURE-----\r\nVersion: OpenPGP.js v3.0.13\r\nComment: https://openpgpjs.org\r\n\r\nwsFcBAEBCAAQBQJh30ugCRA9TVsSAnZWagAAt1sP/0pkr0cUYkMWFoBdCoOO\n/XDgC33Kx0q77hOJUtDFvYPxv5x9Ewp7xFk4C6gQqMHTdT7DgkGTjboYpOPd\ngV9IIWEv4YvjOZxKFekHmWWlmecLPHnYtLKh+Anyr8QBkI685vxGpB3nprwK\n7Zc7jpWwr5K/wBBuWIm/BYIIhwNROq079p0dr93ouKW8zt12HFyDofAqsLDk\nQVANPuP+dkIdWgUCiJUjMYuX9opTqmS7k7fhbnhgDzgvkYPwXjpUZkOFkM9S\nkSUn/f4vkwFM9BsNHEls5ZLKJNO2ZVwiRAPkcMIfH4wQLvNUeCySMbgs1+ct\nEyxI0e2pQkY49GrsWXv3ZI5vJsUw8wUYnB1jxJIbcCM5Xd/ro5xlSFrFf2sl\nylLU65SNx/KTOyBX7/ALbC5PaX81B6SuSHE+mOj+BebptjdDIztFynD0Au/b\n1iIfqiXoOgf+9BTvxKbFt3ukdZXrtlFhMDH/J+8nG+rKGrwwNvcwidfAlhgu\ndY+q9vRTVX6KF45LV2Wg0y53qC0o74cv3fqqCsaKWt2Nsi7lDu/tmuSFS6zr\nCszWl+WSs2oK7g/lDCORM+V4hll82fN4lHVRXsgAPhk5g2B1HihiG+0HONXG\n7O3/c4Nc0Q/ho54Cd6bpohJ2KzKDUmaCU2Cue+TM9DwLSuyryn2ku6U6XoTi\nkN8d\r\n=Hhts\r\n-----END PGP SIGNATURE-----\r\n","signatures":[{"keyid":"SHA256:jl3bwswu80PjjokCgh0o2w5c2U4LhQAE57gj9cz1kzA","sig":"MEYCIQC+Y0+INqJX6FHnyHMBXJxFUI7DQHatCHaOOnNZfTkEpgIhANPi5kyIVi6CEw88c97Z+EZldPMqEiGOivyRyrn9yqlQ"}]},"_npmUser":{"name":"waterfield_jclb","email":"john.losbanes@waterfield.com"},"directories":{},"maintainers":[{"name":"lawrenceobote","email":"lawrence.obote@waterfield.com"},{"name":"arcsbstn-wti","email":"adrianne.sebastian@waterfield.com"},{"name":"luc_saunders","email":"luc.saunders@waterfield.com"},{"name":"waterfield_jclb","email":"john.losbanes@waterfield.com"},{"name":"jasonhuangwaterfield","email":"jason.huang@waterfield.com"},{"name":"rileyworthenwaterfield","email":"riley.worthen@waterfield.com"}],"_npmOperationalInternal":{"host":"s3://npm-registry-packages","tmp":"tmp/core_1.0.1-beta.3_1642023839780_0.04376512380145359"},"_hasShrinkwrap":false,"deprecated":"This will still work in Xcelerate v2.x and below. But it will no longer be supported. The new updated package is in: https://www.npmjs.com/package/xcelerate-ui"},"1.0.1-beta.4":{"name":"@xcelerate-ui/core","version":"1.0.1-beta.4","description":"An NPM package that I can install in my Twilio plugin which will give me access to several Xcelerate features.","author":{"name":"Waterfield Technologies Inc"},"license":"MIT","main":"dist/index.js","module":"dist/index.modern.js","source":"src/index.tsx","engines":{"node":">=10"},"scripts":{"build":"microbundle-crl --no-compress --format modern,cjs","start":"microbundle-crl watch --no-compress --format modern,cjs","prepare":"run-s build","test":"run-s test:unit test:lint test:build","test:build":"run-s build","test:lint":"eslint .","test:unit":"cross-env CI=1 react-scripts test --env=jsdom","test:watch":"react-scripts test --env=jsdom","npm:login":"npm-cli-login -u waterfield_jclb -p CreizyFing3rs!@#$ -e john.losbanes@waterfield.com","npm:publish":"npm publish","npm:deploy":"npm run npm:login && npm run npm:publish"},"peerDependencies":{"react":"^16.0.0"},"devDependencies":{"@testing-library/jest-dom":"^4.2.4","@testing-library/react":"^9.5.0","@testing-library/user-event":"^7.2.1","@types/jest":"^25.1.4","@types/node":"^12.12.38","@types/react":"^16.9.27","@types/react-dom":"^16.9.7","@typescript-eslint/eslint-plugin":"^2.26.0","@typescript-eslint/parser":"^2.26.0","babel-eslint":"^10.0.3","cross-env":"^7.0.2","eslint":"^6.8.0","eslint-config-prettier":"^6.7.0","eslint-config-standard":"^14.1.0","eslint-config-standard-react":"^9.2.0","eslint-plugin-import":"^2.18.2","eslint-plugin-node":"^11.0.0","eslint-plugin-prettier":"^3.1.1","eslint-plugin-promise":"^4.2.1","eslint-plugin-react":"^7.17.0","eslint-plugin-standard":"^4.0.1","microbundle-crl":"^0.13.10","npm-cli-login":"^1.0.0","npm-run-all":"^4.1.5","prettier":"^2.0.4","react":"^16.13.1","react-dom":"^16.13.1","react-scripts":"^3.4.1","typescript":"^3.7.5"},"readme":"# xcelerate-ui\n\n> xcelerate-ui\n\n[![NPM](https://img.shields.io/npm/v/xcelerate-ui.svg)](https://www.npmjs.com/package/xcelerate-ui) [![JavaScript Style Guide](https://img.shields.io/badge/code_style-standard-brightgreen.svg)](https://standardjs.com)\n\n## Install\n\n```bash\nnpm install --save xcelerate-ui\n```\n\n## Publish\n```bash\n// Option 1: CLI\nnpm run npm-cli-login -u <npm username> -p <password> -e <npm email>\nnpm publish --access public\n\n// Option 2: NPM Scripts\n// Update the needed fields inside the npm:login script.\nnpm run npm:deploy\n```\n\n## License\n\nMIT © [](https://github.com/)\n","readmeFilename":"README.md","gitHead":"ed7755336fdc48c06065f21e6f3739ed143eb8a4","_id":"@xcelerate-ui/core@1.0.1-beta.4","_nodeVersion":"12.22.7","_npmVersion":"6.14.15","dist":{"integrity":"sha512-3G9XiWRhM64c5dzrnrvykdOthzRgctNzOxGX/GRBfTyFp+CwzmXdCKeAhy3mLjDauAHhRoXPqQRkZrixtIJYvQ==","shasum":"0a0451a88691159777642ec44c5210a3fe98368e","tarball":"https://registry.npmjs.org/@xcelerate-ui/core/-/core-1.0.1-beta.4.tgz","fileCount":28,"unpackedSize":6008668,"npm-signature":"-----BEGIN PGP SIGNATURE-----\r\nVersion: OpenPGP.js v3.0.13\r\nComment: https://openpgpjs.org\r\n\r\nwsFcBAEBCAAQBQJh303LCRA9TVsSAnZWagAA3g4P/0KGLad8RhMI8eKq3A79\nr9n5P4YqCv5qXWNnK0B7ocs9MHdwZP3zOvCHIkTT195xcVVzO3Qz/luDCEuA\n7qXxyAefxev8aoV43BvEnQkCvWSjvkSHgMPDXhuDIinpA1lunikFdI60rYWu\n1UTo5p2wxrsHNLodI+Y9SbmgYhkqDtJgpRW9uetHHnZt7BovPCQgWTeI+5i9\nrUbquSMprIUiq2A2p6xsJapbLNJMigzGeP6aBHwWeUdbGjiLphU3G+NepkmF\npwXRrOGU3pN0X4DCCvNYqxxiK4SQMq9MWdwhwfYlQZpPT9Mq3rziJW3V/htJ\nRHdGDo1NZNlrTQu3zWt9SS4f/TGnwtzMDGIC3gxP7JlQNPhVqm33BAePL6GD\neY5dpUfTxs9iSPcHTlcukWhgeT7FCH0hR4lFGRIr3Y454hwS9qFe5aNbVaay\nOSMBKBUKH4GjicWm77AucMjWtVvkjNgDXxKVT/RHHy5qJ3wXdwtb/AQjWKGe\n9xkXQ9KedJLcgq0ztE9PRlrPg5+cJCcuQ76C6fEMH4xj8vS8FIL/NPBqpdA3\n+stfKI88dQGOK2+28Ia++fQ2NEgUo8bQ9qQnOxJAdnlcGDcoI/kd4zNiXBAW\n3OtzG3H5z+pLFiAuBFbCWPpwxnnMCP54wp91XRwKRWMLrrnvk0FPYFT5WCUk\nzC8K\r\n=Ezri\r\n-----END PGP SIGNATURE-----\r\n","signatures":[{"keyid":"SHA256:jl3bwswu80PjjokCgh0o2w5c2U4LhQAE57gj9cz1kzA","sig":"MEUCIQCSrCA/DFSDT0KMXKF7ApG1Vu6nmx0FoXVijiH6L0fvPgIgP4OLuVU94Za/2nenH2bTBMdGYdKETWdV7GV3Ux57eNI="}]},"_npmUser":{"name":"waterfield_jclb","email":"john.losbanes@waterfield.com"},"directories":{},"maintainers":[{"name":"lawrenceobote","email":"lawrence.obote@waterfield.com"},{"name":"arcsbstn-wti","email":"adrianne.sebastian@waterfield.com"},{"name":"luc_saunders","email":"luc.saunders@waterfield.com"},{"name":"waterfield_jclb","email":"john.losbanes@waterfield.com"},{"name":"jasonhuangwaterfield","email":"jason.huang@waterfield.com"},{"name":"rileyworthenwaterfield","email":"riley.worthen@waterfield.com"}],"_npmOperationalInternal":{"host":"s3://npm-registry-packages","tmp":"tmp/core_1.0.1-beta.4_1642024395656_0.6752128075769024"},"_hasShrinkwrap":false,"deprecated":"This will still work in Xcelerate v2.x and below. But it will no longer be supported. The new updated package is in: https://www.npmjs.com/package/xcelerate-ui"},"1.0.1-beta.5":{"name":"@xcelerate-ui/core","version":"1.0.1-beta.5","description":"An NPM package that I can install in my Twilio plugin which will give me access to several Xcelerate features.","author":{"name":"Waterfield Technologies Inc"},"license":"MIT","main":"dist/index.js","module":"dist/index.modern.js","source":"src/index.tsx","engines":{"node":">=10"},"scripts":{"build":"microbundle-crl --no-compress --format modern,cjs","start":"microbundle-crl watch --no-compress --format modern,cjs","prepare":"run-s build","test":"run-s test:unit test:lint test:build","test:build":"run-s build","test:lint":"eslint .","test:unit":"cross-env CI=1 react-scripts test --env=jsdom","test:watch":"react-scripts test --env=jsdom","npm:login":"npm run npm-cli-login -u <npm username> -p <password> -e <npm email>","npm:publish":"npm publish","npm:deploy":"npm run npm:login && npm run npm:publish"},"peerDependencies":{"react":"^16.0.0"},"devDependencies":{"@testing-library/jest-dom":"^4.2.4","@testing-library/react":"^9.5.0","@testing-library/user-event":"^7.2.1","@types/jest":"^25.1.4","@types/node":"^12.12.38","@types/react":"^16.9.27","@types/react-dom":"^16.9.7","@typescript-eslint/eslint-plugin":"^2.26.0","@typescript-eslint/parser":"^2.26.0","babel-eslint":"^10.0.3","cross-env":"^7.0.2","eslint":"^6.8.0","eslint-config-prettier":"^6.7.0","eslint-config-standard":"^14.1.0","eslint-config-standard-react":"^9.2.0","eslint-plugin-import":"^2.18.2","eslint-plugin-node":"^11.0.0","eslint-plugin-prettier":"^3.1.1","eslint-plugin-promise":"^4.2.1","eslint-plugin-react":"^7.17.0","eslint-plugin-standard":"^4.0.1","microbundle-crl":"^0.13.10","npm-cli-login":"^1.0.0","npm-run-all":"^4.1.5","prettier":"^2.0.4","react":"^16.13.1","react-dom":"^16.13.1","react-scripts":"^3.4.1","typescript":"^3.7.5"},"readme":"# xcelerate-ui\n\n> xcelerate-ui\n\n[![NPM](https://img.shields.io/npm/v/xcelerate-ui.svg)](https://www.npmjs.com/package/xcelerate-ui) [![JavaScript Style Guide](https://img.shields.io/badge/code_style-standard-brightgreen.svg)](https://standardjs.com)\n\n## Install\n\n```bash\nnpm install --save xcelerate-ui\n```\n\n## Publish\n```bash\n// Option 1: CLI\nnpm run npm-cli-login -u <npm username> -p <password> -e <npm email>\nnpm publish --access public\n\n// Option 2: NPM Scripts\n// Update the needed fields inside the npm:login script.\nnpm run npm:deploy\n```\n\n## License\n\nMIT © [](https://github.com/)\n","readmeFilename":"README.md","gitHead":"ed7755336fdc48c06065f21e6f3739ed143eb8a4","_id":"@xcelerate-ui/core@1.0.1-beta.5","_nodeVersion":"12.22.7","_npmVersion":"6.14.15","dist":{"integrity":"sha512-B++d9jvF9Q2V+qi7ypFt7VtW8cBkLMFt2YkI9N/niquKMS5OynsH1QPLptp0jTdN5fzjxIc1ai7nF1W6DHAXiQ==","shasum":"a224ed53c341a22b8a6b85606e2c86764de9109e","tarball":"https://registry.npmjs.org/@xcelerate-ui/core/-/core-1.0.1-beta.5.tgz","fileCount":28,"unpackedSize":6008651,"npm-signature":"-----BEGIN PGP SIGNATURE-----\r\nVersion: OpenPGP.js v3.0.13\r\nComment: https://openpgpjs.org\r\n\r\nwsFcBAEBCAAQBQJh31ODCRA9TVsSAnZWagAAFxsP/0TS1pXAb1nmyJ14jxyO\nB5J1uYSxmC7gfClK97ytXIGict+nov3EBo4Rwq472FSj46jvmS1uxv+OpDJI\nus7kLmlJn2mCEAnZHvti7OwUMSpsrPfM/Q8sFqPv3HlwZhKo1aHGn76Pg1wn\n4c9lA1duWvZfTXXvWrSbjMzm3YyaHej3YI7hmgSflJgioSTif6T94oBpCagM\nPJpN+aUJgrZeQhNkLejdfljb0WbhUAZZiHUOwp7wLRbw2dd+84T7GG9V9C46\n9IaafRekE7r+IQBD3fclt8wzYNPmNN4k2RIR+dNvELI6F/T6yNNmAmzOyCUP\nHnObhbvI0JoumY6rNr+vL1m1jwuUUuvjtroY6QybDR9oy3S9vJMnx7wjH8m9\nISrTq5r2xvbImkD5xw8+qqDGF6UcKR6UVHIINDsyeJ8OYrGhNIZA3IxkVDVh\nzESx+sufcKTaA3LpiPFC2iMelb/Bkf+EVBV0sDkjhguxsOr8rIRc1pFz9mOm\nfYdZsXlG0FEhyBJ+/yeqOF+DADlIOFny7lhj5Q4m5FgNux+gDFkaO2cNYZbx\n3ioq/kdO5propLk8bC22op8gt5Dn1kBeC8THdWwtFEIw2SUOqpmvwXjqu+J8\nsDDcc3qE94QFmQMfqoNIMHBbY4wuo4CONrQLUFZMohM3wYdxyIzxAGK7/Hck\nMBEm\r\n=Wbcr\r\n-----END PGP SIGNATURE-----\r\n","signatures":[{"keyid":"SHA256:jl3bwswu80PjjokCgh0o2w5c2U4LhQAE57gj9cz1kzA","sig":"MEUCIA2UIY0u1VjLzufhq9R46+1/jQrYoU+irejDupumfK02AiEAkGjUwGOaDHEYIzKw3AQO+KyGaZZaNFoXUehvPKq/rCQ="}]},"_npmUser":{"name":"waterfield_jclb","email":"john.losbanes@waterfield.com"},"directories":{},"maintainers":[{"name":"lawrenceobote","email":"lawrence.obote@waterfield.com"},{"name":"arcsbstn-wti","email":"adrianne.sebastian@waterfield.com"},{"name":"luc_saunders","email":"luc.saunders@waterfield.com"},{"name":"waterfield_jclb","email":"john.losbanes@waterfield.com"},{"name":"jasonhuangwaterfield","email":"jason.huang@waterfield.com"},{"name":"rileyworthenwaterfield","email":"riley.worthen@waterfield.com"}],"_npmOperationalInternal":{"host":"s3://npm-registry-packages","tmp":"tmp/core_1.0.1-beta.5_1642025858884_0.19313847843661613"},"_hasShrinkwrap":false,"deprecated":"This will still work in Xcelerate v2.x and below. But it will no longer be supported. The new updated package is in: https://www.npmjs.com/package/xcelerate-ui"},"1.0.1-beta.6":{"name":"@xcelerate-ui/core","version":"1.0.1-beta.6","description":"An NPM package that I can install in my Twilio plugin which will give me access to several Xcelerate features.","author":{"name":"Waterfield Technologies Inc"},"license":"MIT","main":"dist/index.js","module":"dist/index.modern.js","source":"src/index.tsx","engines":{"node":">=10"},"scripts":{"build":"microbundle-crl --no-compress --format modern,cjs","start":"microbundle-crl watch --no-compress --format modern,cjs","prepare":"run-s build","test":"run-s test:unit test:lint test:build","test:build":"run-s build","test:lint":"eslint .","test:unit":"cross-env CI=1 react-scripts test --env=jsdom","test:watch":"react-scripts test --env=jsdom","npm:login":"npm run npm-cli-login -u <npm username> -p <password> -e <npm email>","npm:publish":"npm publish","npm:deploy":"npm run npm:login && npm run npm:publish"},"peerDependencies":{"react":"^16.0.0"},"devDependencies":{"@testing-library/jest-dom":"^4.2.4","@testing-library/react":"^9.5.0","@testing-library/user-event":"^7.2.1","@types/jest":"^25.1.4","@types/node":"^12.12.38","@types/react":"^16.9.27","@types/react-dom":"^16.9.7","@typescript-eslint/eslint-plugin":"^2.26.0","@typescript-eslint/parser":"^2.26.0","babel-eslint":"^10.0.3","cross-env":"^7.0.2","eslint":"^6.8.0","eslint-config-prettier":"^6.7.0","eslint-config-standard":"^14.1.0","eslint-config-standard-react":"^9.2.0","eslint-plugin-import":"^2.18.2","eslint-plugin-node":"^11.0.0","eslint-plugin-prettier":"^3.1.1","eslint-plugin-promise":"^4.2.1","eslint-plugin-react":"^7.17.0","eslint-plugin-standard":"^4.0.1","microbundle-crl":"^0.13.10","npm-cli-login":"^1.0.0","npm-run-all":"^4.1.5","prettier":"^2.0.4","react":"^16.13.1","react-dom":"^16.13.1","react-scripts":"^3.4.1","typescript":"^3.7.5"},"readme":"# xcelerate-ui\n\n> xcelerate-ui\n\n[![NPM](https://img.shields.io/npm/v/xcelerate-ui.svg)](https://www.npmjs.com/package/xcelerate-ui) [![JavaScript Style Guide](https://img.shields.io/badge/code_style-standard-brightgreen.svg)](https://standardjs.com)\n\n## Install\n\n```bash\nnpm install --save xcelerate-ui\n```\n\n## Publish\n```bash\n// Option 1: CLI\nnpm run npm-cli-login -u <npm username> -p <password> -e <npm email>\nnpm publish --access public\n\n// Option 2: NPM Scripts\n// Update the needed fields inside the npm:login script.\nnpm run npm:deploy\n```\n\n## License\n\nMIT © [](https://github.com/)\n","readmeFilename":"README.md","gitHead":"ed7755336fdc48c06065f21e6f3739ed143eb8a4","_id":"@xcelerate-ui/core@1.0.1-beta.6","_nodeVersion":"12.22.7","_npmVersion":"6.14.15","dist":{"integrity":"sha512-wbW4h1SOh2Wb8HsCpCVyaNAb42/A7S6g18g196DSXZeAhaMAAQnk+ABKIn0lqlGgpnmc7j9oI0FLaxsVgprRbQ==","shasum":"2bcf167c8da1fd4b27d29c32a0f7b3a20d55d838","tarball":"https://registry.npmjs.org/@xcelerate-ui/core/-/core-1.0.1-beta.6.tgz","fileCount":28,"unpackedSize":6008651,"npm-signature":"-----BEGIN PGP SIGNATURE-----\r\nVersion: OpenPGP.js v3.0.13\r\nComment: https://openpgpjs.org\r\n\r\nwsFcBAEBCAAQBQJh31RyCRA9TVsSAnZWagAAGEMQAJN6To98TK1KCfFba99u\nAzrPNoSfVMTpj2VavjZkwc4/zARoQcbPXNf7EN1vdqxCC+vobO24I24fp5bJ\nqNyZVlUcrvuLPcHF5FvypTeh/CncLrl7wzX/XRlS8coNo3Lrh3/FsO4GX/wO\nmkfs6sq2/8j4HxEY+DDaYiDr0ngXY3cSRk/S1HD90SK99lzqriSQCWp5/04n\nuX3ZcwhDJssN0+DSO66vwHPfFGFr2Bm3Ar5q7KnH8C8jGgUdrQ1ltk/9pcNs\n8b7SEaFjsITAyHY6xuRgljME5b+M3MJXDanicUPeWjKeedH3Zc/PkQ3F8B+D\nKh8qC2WGVD7RCCEGqRRErOZ87UZM0WzsoC+7JFHhqfGEM7vK/CNorR9DQMw2\npVGMmznvNLbexGe0izRUPsrvJez75lt0l1+fzHMORmLQL2A3tAULlQXy4jFl\nDGNlhHN+tmpynlqynVbNvDdmowQO5IPRGF2TH5KoOQBqs8/gsjYox6Us1rBf\nItnuLD28nAdWCssfwT92pp1xm1MMUe5afDjHx83BiBJHIkrtfnTeMm9bKGoM\nTE7UlvCdorOBvYVnNaRLeZymWqiRnW1RH6NpvrQzlhLPtwJDp4i31dPO4bJD\nvP5VNFbJrULEm6TMq0/wNQE6QdjMe4d0Kek3boXUQPxtO0hc7VRuiMYdqK2m\nff0K\r\n=9zbs\r\n-----END PGP SIGNATURE-----\r\n","signatures":[{"keyid":"SHA256:jl3bwswu80PjjokCgh0o2w5c2U4LhQAE57gj9cz1kzA","sig":"MEUCIQDwBzOWdjNn/p8c+mRUCLMKS/r1Dj4QuJ9o+QV6hYcP4QIgJLhdUuebgy24YjQcPy0djXSpfEChZE13veyGMuz4AtE="}]},"_npmUser":{"name":"waterfield_jclb","email":"john.losbanes@waterfield.com"},"directories":{},"maintainers":[{"name":"lawrenceobote","email":"lawrence.obote@waterfield.com"},{"name":"arcsbstn-wti","email":"adrianne.sebastian@waterfield.com"},{"name":"luc_saunders","email":"luc.saunders@waterfield.com"},{"name":"waterfield_jclb","email":"john.losbanes@waterfield.com"},{"name":"jasonhuangwaterfield","email":"jason.huang@waterfield.com"},{"name":"rileyworthenwaterfield","email":"riley.worthen@waterfield.com"}],"_npmOperationalInternal":{"host":"s3://npm-registry-packages","tmp":"tmp/core_1.0.1-beta.6_1642026098779_0.10405565829690366"},"_hasShrinkwrap":false,"deprecated":"This will still work in Xcelerate v2.x and below. But it will no longer be supported. The new updated package is in: https://www.npmjs.com/package/xcelerate-ui"},"1.0.1-beta.7":{"name":"@xcelerate-ui/core","version":"1.0.1-beta.7","description":"An NPM package that I can install in my Twilio plugin which will give me access to several Xcelerate features.","author":{"name":"Waterfield Technologies Inc"},"license":"MIT","main":"dist/index.js","module":"dist/index.modern.js","source":"src/index.tsx","engines":{"node":">=10"},"scripts":{"build":"microbundle-crl --no-compress --format modern,cjs","start":"microbundle-crl watch --no-compress --format modern,cjs","prepare":"run-s build","test":"run-s test:unit test:lint test:build","test:build":"run-s build","test:lint":"eslint .","test:unit":"cross-env CI=1 react-scripts test --env=jsdom","test:watch":"react-scripts test --env=jsdom","npm:login":"npm run npm-cli-login -u <npm username> -p <password> -e <npm email>","npm:publish":"npm publish","npm:deploy":"npm run npm:login && npm run npm:publish"},"peerDependencies":{"react":"^16.0.0"},"devDependencies":{"@testing-library/jest-dom":"^4.2.4","@testing-library/react":"^9.5.0","@testing-library/user-event":"^7.2.1","@types/jest":"^25.1.4","@types/node":"^12.12.38","@types/react":"^16.9.27","@types/react-dom":"^16.9.7","@typescript-eslint/eslint-plugin":"^2.26.0","@typescript-eslint/parser":"^2.26.0","babel-eslint":"^10.0.3","cross-env":"^7.0.2","eslint":"^6.8.0","eslint-config-prettier":"^6.7.0","eslint-config-standard":"^14.1.0","eslint-config-standard-react":"^9.2.0","eslint-plugin-import":"^2.18.2","eslint-plugin-node":"^11.0.0","eslint-plugin-prettier":"^3.1.1","eslint-plugin-promise":"^4.2.1","eslint-plugin-react":"^7.17.0","eslint-plugin-standard":"^4.0.1","microbundle-crl":"^0.13.10","npm-cli-login":"^1.0.0","npm-run-all":"^4.1.5","prettier":"^2.0.4","react":"^16.13.1","react-dom":"^16.13.1","react-scripts":"^3.4.1","typescript":"^3.7.5"},"readme":"# xcelerate-ui\n\n> xcelerate-ui\n\n[![NPM](https://img.shields.io/npm/v/xcelerate-ui.svg)](https://www.npmjs.com/package/xcelerate-ui) [![JavaScript Style Guide](https://img.shields.io/badge/code_style-standard-brightgreen.svg)](https://standardjs.com)\n\n## Install\n\n```bash\nnpm install --save xcelerate-ui\n```\n\n## Publish\n```bash\n// Option 1: CLI\nnpm run npm-cli-login -u <npm username> -p <password> -e <npm email>\nnpm publish --access public\n\n// Option 2: NPM Scripts\n// Update the needed fields inside the npm:login script.\nnpm run npm:deploy\n```\n\n## License\n\nMIT © [](https://github.com/)\n","readmeFilename":"README.md","gitHead":"ed7755336fdc48c06065f21e6f3739ed143eb8a4","_id":"@xcelerate-ui/core@1.0.1-beta.7","_nodeVersion":"12.22.7","_npmVersion":"6.14.15","dist":{"integrity":"sha512-E9RqQYLieqDEqLCiaMdc/8pSVrZM2w+uJ/+vL12Mo8LShSKY4mGaw0jvowbzHFzt9+/5iUMxDdh/VZRBjsrutA==","shasum":"2e98636931511ac2646a5b61603a1269808cfa0b","tarball":"https://registry.npmjs.org/@xcelerate-ui/core/-/core-1.0.1-beta.7.tgz","fileCount":28,"unpackedSize":6008651,"npm-signature":"-----BEGIN PGP SIGNATURE-----\r\nVersion: OpenPGP.js v3.0.13\r\nComment: https://openpgpjs.org\r\n\r\nwsFcBAEBCAAQBQJh31X7CRA9TVsSAnZWagAAaFUP+waoe2O4kMDNcZ8s3fdL\n0Gl46TowN6ujTpQrynfqUzKOtg8iXF7JL6vZWhtPLJh5nTfeA9cRGhSkyMcY\ni7gdDGyMZspHte1cczgzzQOf0eoKohrcXJkypws+q1WZIfFZKNahBpzDkofG\ngrdWAav9xpgj82wIHYHMaxcf63GXY2Gc11FqlGEN0mvfgFYaoaNSmDu+sWy0\nWzcMRhnYwOyfXMD4LpnR+bi5C4MsM6f3d1ZHklwpe1iFKEiK1lQe7y6l+7Yf\nLzaW4DSbcWmCEQfU7Md2fFojO//bw/H8GhjWazKL12/LA/jERFrtdMc/h/M/\nr/WG4ZJjqoGvZuVOe8qHEI7HNcgTBQ+Hp2JBgllFlqSe3058chcq5IxDLmLp\n51/XqrtCZsp28sOyKdK8RowZlpZx/ojxzOGQ4NxS1+bk1gMBK8Q3LrQSTjqd\nNJKPbdK280ox20sgP1car6nPOT7rIqEPNd8tdjDuXLkJY3QQ/mNtQszIqd1U\nB+tWQTsdHzR1Hze7mhMbCiLAfYK0wSi8RZMpC7Axlfk7L4fZkXB4rYd7Ys2j\nTTKhhTA/5Pd6S7W0EY9Hi5OXPi3uuCWawIXsBjc3il+9o69yusy4pUTlZavC\naODFUmVKbSV9m+TBPr1KlybduFlILwSeTjopQh8A3ukNfqoAFECw1sLWomXX\n/6Nm\r\n=N6Ur\r\n-----END PGP SIGNATURE-----\r\n","signatures":[{"keyid":"SHA256:jl3bwswu80PjjokCgh0o2w5c2U4LhQAE57gj9cz1kzA","sig":"MEUCIFfpQO7qlo+HXu+OVVmppwZEN1xacSn/JVWy/Vn2zm9MAiEA8JKgke2ODZZgeZHCojwGZtr847F4iX5RaGcsl7sis9s="}]},"_npmUser":{"name":"waterfield_jclb","email":"john.losbanes@waterfield.com"},"directories":{},"maintainers":[{"name":"lawrenceobote","email":"lawrence.obote@waterfield.com"},{"name":"arcsbstn-wti","email":"adrianne.sebastian@waterfield.com"},{"name":"luc_saunders","email":"luc.saunders@waterfield.com"},{"name":"waterfield_jclb","email":"john.losbanes@waterfield.com"},{"name":"jasonhuangwaterfield","email":"jason.huang@waterfield.com"},{"name":"rileyworthenwaterfield","email":"riley.worthen@waterfield.com"}],"_npmOperationalInternal":{"host":"s3://npm-registry-packages","tmp":"tmp/core_1.0.1-beta.7_1642026491350_0.9700806720303148"},"_hasShrinkwrap":false,"deprecated":"This will still work in Xcelerate v2.x and below. But it will no longer be supported. The new updated package is in: https://www.npmjs.com/package/xcelerate-ui"},"1.0.1-beta.8":{"name":"@xcelerate-ui/core","version":"1.0.1-beta.8","description":"An NPM package that I can install in my Twilio plugin which will give me access to several Xcelerate features.","author":{"name":"Waterfield Technologies Inc"},"license":"MIT","main":"dist/index.js","module":"dist/index.modern.js","source":"src/index.tsx","engines":{"node":">=10"},"scripts":{"build":"microbundle-crl --no-compress --format modern,cjs","start":"microbundle-crl watch --no-compress --format modern,cjs","prepare":"run-s build","test":"run-s test:unit test:lint test:build","test:build":"run-s build","test:lint":"eslint .","test:unit":"cross-env CI=1 react-scripts test --env=jsdom","test:watch":"react-scripts test --env=jsdom","npm:login":"npm run npm-cli-login -u <npm username> -p <password> -e <npm email>","npm:publish":"npm publish","npm:deploy":"npm run npm:login && npm run npm:publish"},"peerDependencies":{"react":"^16.0.0"},"devDependencies":{"@testing-library/jest-dom":"^4.2.4","@testing-library/react":"^9.5.0","@testing-library/user-event":"^7.2.1","@types/jest":"^25.1.4","@types/node":"^12.12.38","@types/react":"^16.9.27","@types/react-dom":"^16.9.7","@typescript-eslint/eslint-plugin":"^2.26.0","@typescript-eslint/parser":"^2.26.0","babel-eslint":"^10.0.3","cross-env":"^7.0.2","eslint":"^6.8.0","eslint-config-prettier":"^6.7.0","eslint-config-standard":"^14.1.0","eslint-config-standard-react":"^9.2.0","eslint-plugin-import":"^2.18.2","eslint-plugin-node":"^11.0.0","eslint-plugin-prettier":"^3.1.1","eslint-plugin-promise":"^4.2.1","eslint-plugin-react":"^7.17.0","eslint-plugin-standard":"^4.0.1","microbundle-crl":"^0.13.10","npm-cli-login":"^1.0.0","npm-run-all":"^4.1.5","prettier":"^2.0.4","react":"^16.13.1","react-dom":"^16.13.1","react-scripts":"^3.4.1","typescript":"^3.7.5"},"readme":"# xcelerate-ui\n\n> xcelerate-ui\n\n[![NPM](https://img.shields.io/npm/v/xcelerate-ui.svg)](https://www.npmjs.com/package/xcelerate-ui) [![JavaScript Style Guide](https://img.shields.io/badge/code_style-standard-brightgreen.svg)](https://standardjs.com)\n\n## Install\n\n```bash\nnpm install --save xcelerate-ui\n```\n\n## Publish\n```bash\n// Option 1: CLI\nnpm run npm-cli-login -u <npm username> -p <password> -e <npm email>\nnpm publish --access public\n\n// Option 2: NPM Scripts\n// Update the needed fields inside the npm:login script.\nnpm run npm:deploy\n```\n\n## License\n\nMIT © [](https://github.com/)\n","readmeFilename":"README.md","gitHead":"ed7755336fdc48c06065f21e6f3739ed143eb8a4","_id":"@xcelerate-ui/core@1.0.1-beta.8","_nodeVersion":"12.22.7","_npmVersion":"6.14.15","dist":{"integrity":"sha512-/KLnloiWUlmmTa+YDu0m4a4imxdeAb8Zc0HjaZ2KEzwuMkEv9DnKe3xd6Dmz0+jwnq/hJe0AChlGpDEIbQUaNw==","shasum":"9a8adb7f0879171882c4224642b034202e34a3ba","tarball":"https://registry.npmjs.org/@xcelerate-ui/core/-/core-1.0.1-beta.8.tgz","fileCount":28,"unpackedSize":6008651,"npm-signature":"-----BEGIN PGP SIGNATURE-----\r\nVersion: OpenPGP.js v3.0.13\r\nComment: https://openpgpjs.org\r\n\r\nwsFcBAEBCAAQBQJh31wfCRA9TVsSAnZWagAAqMYP+QE9TuTJJ/YYZbFUFEXL\nMhY0UP4iZhkElBR2r7m3rYUQi9nkgViY/5CoQ7+aaJ3ozSMPeIndNiG0eH/o\nlUgS1g64gowQRbuUOTDwDaNp3CjP58CkRBBKy6KCu6Ji4Y47L09J+TnuG87f\nl6ZB0jwjR1CLYZvqHDEWg1ufeQo99K3A8XzQzqVjYLX83Ug470CErxNjebTK\n1PGO5LVdab3xTURhqaZBPhf8mUxNBGmHmFDpLcTNNRjpRHgyzHzRNi/1a0KX\nlQKVu/kcYYZYNGUyMWBAWTRe08s3JhqqSs0O626X/m+KGuQ6GVyu0YPTigOs\nldU3iIqIa3VtnLddBTZQ7vHTbJFLNJhpJ7uJe4fQMcMf/6DsNmB4V5FazfBl\nDaLjS1XFLPviRBq2Ha2RxutYjQfdvpDqXC/BKsA4CWccw46HuYFLB65O9WUM\n7YymcU+a3a1AcHsipzkvoJsfuFxoPm3Ec7dnWWQ1ZHvbzGVmJj0Y1af9MzrP\nMqaF+WKIJOjf9RvkEkBCYgWKc1tSnRqUNs3IXwEjYfdL2sklFckg1NkaelhI\npMF8QMK57R99aJUOK7zYZJMTYdlUY5BeHHBFIJwHAseL1tnPXnJx1TNctU/X\nrHD6UWuhTallUR52zjG++FLCHOjWUgXE+VdfFRedZKdVPhlEeADOQoQB+yGQ\nlFx9\r\n=Exph\r\n-----END PGP SIGNATURE-----\r\n","signatures":[{"keyid":"SHA256:jl3bwswu80PjjokCgh0o2w5c2U4LhQAE57gj9cz1kzA","sig":"MEYCIQDcmrIR8O+BbNlDVwNovPMXOxVh7eiCsQb1lEmWyJluCAIhAO0lUM9PKVz8AIGMRBzkPfH9O/coLkzIoWXRInU0j/+D"}]},"_npmUser":{"name":"waterfield_jclb","email":"john.losbanes@waterfield.com"},"directories":{},"maintainers":[{"name":"lawrenceobote","email":"lawrence.obote@waterfield.com"},{"name":"arcsbstn-wti","email":"adrianne.sebastian@waterfield.com"},{"name":"luc_saunders","email":"luc.saunders@waterfield.com"},{"name":"waterfield_jclb","email":"john.losbanes@waterfield.com"},{"name":"jasonhuangwaterfield","email":"jason.huang@waterfield.com"},{"name":"rileyworthenwaterfield","email":"riley.worthen@waterfield.com"}],"_npmOperationalInternal":{"host":"s3://npm-registry-packages","tmp":"tmp/core_1.0.1-beta.8_1642028062912_0.9465158028834051"},"_hasShrinkwrap":false,"deprecated":"This will still work in Xcelerate v2.x and below. But it will no longer be supported. The new updated package is in: https://www.npmjs.com/package/xcelerate-ui"},"1.0.1-beta.9":{"name":"@xcelerate-ui/core","version":"1.0.1-beta.9","description":"An NPM package that I can install in my Twilio plugin which will give me access to several Xcelerate features.","author":{"name":"Waterfield Technologies Inc"},"license":"MIT","main":"dist/index.js","module":"dist/index.modern.js","source":"src/index.tsx","engines":{"node":">=10"},"scripts":{"build":"microbundle-crl --no-compress --format modern,cjs","start":"microbundle-crl watch --no-compress --format modern,cjs","prepare":"run-s build","test":"run-s test:unit test:lint test:build","test:build":"run-s build","test:lint":"eslint .","test:unit":"cross-env CI=1 react-scripts test --env=jsdom","test:watch":"react-scripts test --env=jsdom","npm:login":"npm run npm-cli-login -u <npm username> -p <password> -e <npm email>","npm:publish":"npm publish","npm:deploy":"npm run npm:login && npm run npm:publish"},"peerDependencies":{"react":"^16.0.0"},"devDependencies":{"@testing-library/jest-dom":"^4.2.4","@testing-library/react":"^9.5.0","@testing-library/user-event":"^7.2.1","@types/jest":"^25.1.4","@types/node":"^12.12.38","@types/react":"^16.9.27","@types/react-dom":"^16.9.7","@typescript-eslint/eslint-plugin":"^2.26.0","@typescript-eslint/parser":"^2.26.0","babel-eslint":"^10.0.3","cross-env":"^7.0.2","eslint":"^6.8.0","eslint-config-prettier":"^6.7.0","eslint-config-standard":"^14.1.0","eslint-config-standard-react":"^9.2.0","eslint-plugin-import":"^2.18.2","eslint-plugin-node":"^11.0.0","eslint-plugin-prettier":"^3.1.1","eslint-plugin-promise":"^4.2.1","eslint-plugin-react":"^7.17.0","eslint-plugin-standard":"^4.0.1","microbundle-crl":"^0.13.10","npm-cli-login":"^1.0.0","npm-run-all":"^4.1.5","prettier":"^2.0.4","react":"^16.13.1","react-dom":"^16.13.1","react-scripts":"^3.4.1","typescript":"^3.7.5"},"readme":"# xcelerate-ui\n\n> xcelerate-ui\n\n[![NPM](https://img.shields.io/npm/v/xcelerate-ui.svg)](https://www.npmjs.com/package/xcelerate-ui) [![JavaScript Style Guide](https://img.shields.io/badge/code_style-standard-brightgreen.svg)](https://standardjs.com)\n\n## Install\n\n```bash\nnpm install --save xcelerate-ui\n```\n\n## Publish\n```bash\n// Option 1: CLI\nnpm run npm-cli-login -u <npm username> -p <password> -e <npm email>\nnpm publish --access public\n\n// Option 2: NPM Scripts\n// Update the needed fields inside the npm:login script.\nnpm run npm:deploy\n```\n\n## License\n\nMIT © [](https://github.com/)\n","readmeFilename":"README.md","gitHead":"ed7755336fdc48c06065f21e6f3739ed143eb8a4","_id":"@xcelerate-ui/core@1.0.1-beta.9","_nodeVersion":"12.22.7","_npmVersion":"6.14.15","dist":{"integrity":"sha512-2kEyJlmlyz4DEDdPc1Q0qgkrNkylMFxB1Gc9iOWFTt0+Y8q9ymYcGi+cWGaFPz6OSTC7OK1rCsFOc5l72xe78Q==","shasum":"b7e8a8290072ee510418c5b3b6ed34e2ebe92f5f","tarball":"https://registry.npmjs.org/@xcelerate-ui/core/-/core-1.0.1-beta.9.tgz","fileCount":28,"unpackedSize":6008651,"npm-signature":"-----BEGIN PGP SIGNATURE-----\r\nVersion: OpenPGP.js v3.0.13\r\nComment: https://openpgpjs.org\r\n\r\nwsFcBAEBCAAQBQJh314BCRA9TVsSAnZWagAAOy8QAKSdsYiOC326JhMq0tyX\nTDXNqRv/BFdWDB2zxgbCceG9Z+Z7yMFIryLworzOUHeW40uHkqr17JmCEH6O\nuRvrulSqiXFwSSdJHsF7KUWgBh4uqBAGmRSB7gKDV+43m5FYJZ7I3wClrkK2\nbaH7WE4sJoSDNgUO/MBICj8lV0gYlJzOqPaGnQjEwma+XRpJTLn3W/KHsx0w\n8rqpachxmzL7c7s5nbBFnb7erxCC4tZAAW/AiCEuI5VLSWlN5qcKusk76AbX\nQbs7FR5/vhiEKv9kgK8D5eN6kBQ2t8lI/2wKgKxbnMDPeaIY+kL/MGlO95yB\nynY03NjAnvqkw/EpBfl+8EH6D/24d9haYRydxnJ/iSFNcYD/c+W32yFjdqxY\nSpiXRHnhOye4xWhqJS6OuPuBQHQ9R2mJ/2jBQEvhvVshvu1xtu6jctJnTUka\nnODngxE9+YxbM6JW8X3Freq5LDLF09EPbqQO0kUT6CJO9acFRc9j8sn5kyRw\nvnIo49w/ky9MU0v5YBgxPeZjJaS1uBS80t7y/JU0/QfGed5C0qIiiI2E91lZ\nhqvw8hp4VIA3NyRuvXl2oMRC9/27yBmUcXQPhRxkqgIQMQYVqorXY+KRczE/\nTJgExIeNMlHNqpdCPyVER0/enNIv2pDtAZV34Z/FLwOnnUyXYTRfBuQUp2c7\n9TnT\r\n=tO2C\r\n-----END PGP SIGNATURE-----\r\n","signatures":[{"keyid":"SHA256:jl3bwswu80PjjokCgh0o2w5c2U4LhQAE57gj9cz1kzA","sig":"MEUCIQCHMG+PvYzGOVQtpiNoCPs5SNTltXNGNn/9Y+pJ0FDNgQIgDkxtkpwwYiOgdYOfP78pSwwo+IMCs60/rP/T2102yMQ="}]},"_npmUser":{"name":"waterfield_jclb","email":"john.losbanes@waterfield.com"},"directories":{},"maintainers":[{"name":"lawrenceobote","email":"lawrence.obote@waterfield.com"},{"name":"arcsbstn-wti","email":"adrianne.sebastian@waterfield.com"},{"name":"luc_saunders","email":"luc.saunders@waterfield.com"},{"name":"waterfield_jclb","email":"john.losbanes@waterfield.com"},{"name":"jasonhuangwaterfield","email":"jason.huang@waterfield.com"},{"name":"rileyworthenwaterfield","email":"riley.worthen@waterfield.com"}],"_npmOperationalInternal":{"host":"s3://npm-registry-packages","tmp":"tmp/core_1.0.1-beta.9_1642028544687_0.39705359217220537"},"_hasShrinkwrap":false,"deprecated":"This will still work in Xcelerate v2.x and below. But it will no longer be supported. The new updated package is in: https://www.npmjs.com/package/xcelerate-ui"},"1.0.1-beta.10":{"name":"@xcelerate-ui/core","version":"1.0.1-beta.10","description":"An NPM package that I can install in my Twilio plugin which will give me access to several Xcelerate features.","author":{"name":"Waterfield Technologies Inc"},"license":"MIT","main":"dist/index.js","module":"dist/index.modern.js","source":"src/index.ts","engines":{"node":">=10"},"scripts":{"build":"microbundle-crl --no-compress --format modern,cjs","start":"microbundle-crl watch --no-compress --format modern,cjs","prepare":"run-s build","test":"run-s test:unit test:lint test:build","test:build":"run-s build","test:lint":"eslint .","test:unit":"cross-env CI=1 react-scripts test --env=jsdom","test:watch":"react-scripts test --env=jsdom","npm:login":"npm run npm-cli-login -u <npm username> -p <password> -e <npm email>","npm:publish":"npm publish","npm:deploy":"npm run npm:login && npm run npm:publish"},"peerDependencies":{"react":"^16.0.0"},"devDependencies":{"@testing-library/jest-dom":"^4.2.4","@testing-library/react":"^9.5.0","@testing-library/user-event":"^7.2.1","@types/jest":"^25.1.4","@types/node":"^12.12.38","@types/react":"^16.9.27","@types/react-dom":"^16.9.7","@typescript-eslint/eslint-plugin":"^2.26.0","@typescript-eslint/parser":"^2.26.0","babel-eslint":"^10.0.3","cross-env":"^7.0.2","eslint":"^6.8.0","eslint-config-prettier":"^6.7.0","eslint-config-standard":"^14.1.0","eslint-config-standard-react":"^9.2.0","eslint-plugin-import":"^2.18.2","eslint-plugin-node":"^11.0.0","eslint-plugin-prettier":"^3.1.1","eslint-plugin-promise":"^4.2.1","eslint-plugin-react":"^7.17.0","eslint-plugin-standard":"^4.0.1","microbundle-crl":"^0.13.10","npm-cli-login":"^1.0.0","npm-run-all":"^4.1.5","prettier":"^2.0.4","react":"^16.13.1","react-dom":"^16.13.1","react-scripts":"^3.4.1","typescript":"^3.7.5"},"gitHead":"8b33f19b750f34d2d0ead571fb541201ae500ddf","_id":"@xcelerate-ui/core@1.0.1-beta.10","_nodeVersion":"12.22.7","_npmVersion":"6.14.15","dist":{"integrity":"sha512-FsP77vmU5JZC38p+QoaaRikhZuEgUVEI6Ve3CT8Xt8mmowYKLZ3PvT7UU2TDurlSb41Q13PqJL6BqzjicPaMsQ==","shasum":"c64c9b66c8dd950261e2ea0dab5c2f8c6aa61521","tarball":"https://registry.npmjs.org/@xcelerate-ui/core/-/core-1.0.1-beta.10.tgz","fileCount":14,"unpackedSize":6016965,"npm-signature":"-----BEGIN PGP SIGNATURE-----\r\nVersion: OpenPGP.js v3.0.13\r\nComment: https://openpgpjs.org\r\n\r\nwsFcBAEBCAAQBQJh4EI3CRA9TVsSAnZWagAAEq0QAKEORSaIoVejAB8iEzaD\n9BsY3pjUjOyENJBPe9tEIqLVAfjLMsUWYF+ycey8bMgUjq7pZNLNIp9OaNT7\najl0OOT0ndeLkYgcwOa46el8LkT1ksZilU75Wqrw0e0/+/fLNqnHCfNCcFkt\nn5bGwOlbs06zHK7OQPyjwO2NheNe7rK8fDx5j5GtyJ4axKVqjbB7KSJRs5VX\nEEYEZSaM0vjL+TxBW6ITpI7oJpi5+j0G8XwAO3MG6yIApqyIIwavTypa3c5O\nK6vcM5Pn4VT9oXksKi0I05jpdioGnXzaYd8Id+8knE4c/0wjByrAPn0Xutzq\nnhsg8TWeQB6IwrnPDUe+aftzeVxWRC2/uwKDVNeKjzLfcm0YGZEMmd1wWjhR\nZkz7zaZAwdae3NsQFETQeICw0SgQ1GjFm2RGfJfDfcpv4DGwyOPhBoHfAnwK\nC4CnEvOBgwIVbA70xjMsX3Ps0TXL9S3S5fWBX/gzorZpXQzssWQXI02OBKPU\nzEwtAhbdS+zMHFyO8sk92wLI70gtoLmmvinNwZK5v02p4Tel0ZtOSXJdQvnI\nKJbMB+Wh8f2X/xHWsJVfpQ9ghPftfaK20iykZfGZefUN5Br+EqkFAyZszbTV\nemy+f9hcd1DBknALxqfSGpFbY2EgRSfGoI7dDwfIdCRESa8ej8Pr4pbcKh4w\nTopy\r\n=H62T\r\n-----END PGP SIGNATURE-----\r\n","signatures":[{"keyid":"SHA256:jl3bwswu80PjjokCgh0o2w5c2U4LhQAE57gj9cz1kzA","sig":"MEYCIQCrBlYbNTE6W3AO/Y0Vz0RhfIPX3yByMY7Pg8jqCo8FcQIhAOfuBs40QtvGUT1O9G+k2T+QZSGclnro1sw1dcllShD7"}]},"_npmUser":{"name":"waterfield_jclb","email":"john.losbanes@waterfield.com"},"directories":{},"maintainers":[{"name":"lawrenceobote","email":"lawrence.obote@waterfield.com"},{"name":"arcsbstn-wti","email":"adrianne.sebastian@waterfield.com"},{"name":"luc_saunders","email":"luc.saunders@waterfield.com"},{"name":"waterfield_jclb","email":"john.losbanes@waterfield.com"},{"name":"jasonhuangwaterfield","email":"jason.huang@waterfield.com"},{"name":"rileyworthenwaterfield","email":"riley.worthen@waterfield.com"}],"_npmOperationalInternal":{"host":"s3://npm-registry-packages","tmp":"tmp/core_1.0.1-beta.10_1642086967114_0.62219462017237"},"_hasShrinkwrap":false,"deprecated":"This will still work in Xcelerate v2.x and below. But it will no longer be supported. The new updated package is in: https://www.npmjs.com/package/xcelerate-ui"},"1.0.1-beta.11":{"name":"@xcelerate-ui/core","version":"1.0.1-beta.11","description":"An NPM package that I can install in my Twilio plugin which will give me access to several Xcelerate features.","author":{"name":"Waterfield Technologies Inc"},"license":"MIT","main":"dist/index.js","module":"dist/index.modern.js","source":"src/index.ts","engines":{"node":">=10"},"scripts":{"build":"microbundle-crl --no-compress --format modern,cjs","start":"microbundle-crl watch --no-compress --format modern,cjs","prepare":"run-s build","test":"run-s test:unit test:lint test:build","test:build":"run-s build","test:lint":"eslint .","test:unit":"cross-env CI=1 react-scripts test --env=jsdom","test:watch":"react-scripts test --env=jsdom","npm:login":"npm run npm-cli-login -u <npm username> -p <password> -e <npm email>","npm:publish":"npm publish","npm:deploy":"npm run npm:login && npm run npm:publish"},"peerDependencies":{"react":"^16.0.0"},"devDependencies":{"@testing-library/jest-dom":"^4.2.4","@testing-library/react":"^9.5.0","@testing-library/user-event":"^7.2.1","@types/jest":"^25.1.4","@types/node":"^12.12.38","@types/react":"^16.9.27","@types/react-dom":"^16.9.7","@typescript-eslint/eslint-plugin":"^2.26.0","@typescript-eslint/parser":"^2.26.0","babel-eslint":"^10.0.3","cross-env":"^7.0.2","eslint":"^6.8.0","eslint-config-prettier":"^6.7.0","eslint-config-standard":"^14.1.0","eslint-config-standard-react":"^9.2.0","eslint-plugin-import":"^2.18.2","eslint-plugin-node":"^11.0.0","eslint-plugin-prettier":"^3.1.1","eslint-plugin-promise":"^4.2.1","eslint-plugin-react":"^7.17.0","eslint-plugin-standard":"^4.0.1","microbundle-crl":"^0.13.10","npm-cli-login":"^1.0.0","npm-run-all":"^4.1.5","prettier":"^2.0.4","react":"^16.13.1","react-dom":"^16.13.1","react-scripts":"^3.4.1","typescript":"^3.7.5"},"gitHead":"965c4edd8f8fed98390e4396590379b2705fd6cd","_id":"@xcelerate-ui/core@1.0.1-beta.11","_nodeVersion":"12.22.7","_npmVersion":"6.14.15","dist":{"integrity":"sha512-EnoWw/W4wZHES2ivTRagOJTsiZ4UirJqyuQHAKB6MXW5jf3oa5OF7S2w+C9t4eVDwf2AJx3onDVTlUmaxCXPag==","shasum":"6034ae8e1e7ff546fa8f7123fb02fe2f893903ae","tarball":"https://registry.npmjs.org/@xcelerate-ui/core/-/core-1.0.1-beta.11.tgz","fileCount":14,"unpackedSize":6017642,"npm-signature":"-----BEGIN PGP SIGNATURE-----\r\nVersion: OpenPGP.js v3.0.13\r\nComment: https://openpgpjs.org\r\n\r\nwsFcBAEBCAAQBQJh4JqKCRA9TVsSAnZWagAA1Q0P/1F8lTMRw7RdkizTX0p3\ninLZBPHws58q7QdVddjt0mxF9JLnXWK20fQEnSLwaWwnOmIeMDUiTm5SPLIH\nqYYQjcx3D4OzbklD7QwLwupDzHdXZ2Waxx/LseDaQpaubK7/zcTA9jytGIUy\n3upqxhhjbkYNYDU5CmjACHgg3SZsKVWxFRgvyUJcSm/vVZOJ4awH3HB47PLd\n2g3dpvEvptyoF+T4XC855rxGbRBEkKBUZQCPuYkpY04IaNb8s1FihIYABCea\nyDVuGMTo3dZaVqj+czewqR+a9rdodcR5/6pMcDR11hppwgZAiORI0C7Od4eJ\n5U/fpzKioH3jEN6T7ff+uAjZH/E0AkMSvCp0tjRajl3Mpa50Ve7BxxTZ2rdi\npaDanj+wxD5o6Z5jAcPu5RqPGQTg+V+LuQC8urpaUoDHgh4f4ISF3yaygpqu\nhADxyJwyJHvWuIJHTeXM2YxhEbbWCrCkwiywGUTWQcuaYvC9XhLmh7YjT1xj\n6oJoPSoUj58H/eTy+Iy+tpUvt+HI4inHkSbRAWbIPd4P5iVsikons2z5AS/E\nPwTYoCk9nY3MnFfvKxoPmvmPXB/4SZb9Ej6W3GFjLiGyy8LA/3Nj+E2x2roS\nrbukxWXLFCBJ73ggntekeq5+n/TEY6AFLBAtbfpQSBuayLtwGqMmkCKJLlKX\na8nk\r\n=68b2\r\n-----END PGP SIGNATURE-----\r\n","signatures":[{"keyid":"SHA256:jl3bwswu80PjjokCgh0o2w5c2U4LhQAE57gj9cz1kzA","sig":"MEQCIDetJmMnp0QjIIQfeeixXUHFl0PCuwupLDiG9e4TS1EOAiBQts3UsHVq4DT7wU387zZAz+j/La/+wRZAmn0Dbt4dNA=="}]},"_npmUser":{"name":"waterfield_jclb","email":"john.losbanes@waterfield.com"},"directories":{},"maintainers":[{"name":"lawrenceobote","email":"lawrence.obote@waterfield.com"},{"name":"arcsbstn-wti","email":"adrianne.sebastian@waterfield.com"},{"name":"luc_saunders","email":"luc.saunders@waterfield.com"},{"name":"waterfield_jclb","email":"john.losbanes@waterfield.com"},{"name":"jasonhuangwaterfield","email":"jason.huang@waterfield.com"},{"name":"rileyworthenwaterfield","email":"riley.worthen@waterfield.com"}],"_npmOperationalInternal":{"host":"s3://npm-registry-packages","tmp":"tmp/core_1.0.1-beta.11_1642109578403_0.4140215977869224"},"_hasShrinkwrap":false,"deprecated":"This will still work in Xcelerate v2.x and below. But it will no longer be supported. The new updated package is in: https://www.npmjs.com/package/xcelerate-ui"},"1.0.1":{"name":"@xcelerate-ui/core","version":"1.0.1","description":"An NPM package that I can install in my Twilio plugin which will give me access to several Xcelerate features.","author":{"name":"Waterfield Technologies Inc"},"license":"MIT","main":"dist/index.js","module":"dist/index.modern.js","source":"src/index.ts","engines":{"node":">=10"},"scripts":{"build":"microbundle-crl --no-compress --format modern,cjs","start":"microbundle-crl watch --no-compress --format modern,cjs","prepare":"run-s build","test":"run-s test:unit test:lint test:build","test:build":"run-s build","test:lint":"eslint .","test:unit":"cross-env CI=1 react-scripts test --env=jsdom","test:watch":"react-scripts test --env=jsdom","npm:login":"npm run npm-cli-login -u <npm username> -p <password> -e <npm email>","npm:publish":"npm publish","npm:deploy":"npm run npm:login && npm run npm:publish"},"peerDependencies":{"react":"^16.0.0"},"devDependencies":{"@testing-library/jest-dom":"^4.2.4","@testing-library/react":"^9.5.0","@testing-library/user-event":"^7.2.1","@types/jest":"^25.1.4","@types/node":"^12.12.38","@types/react":"^16.9.27","@types/react-dom":"^16.9.7","@typescript-eslint/eslint-plugin":"^2.26.0","@typescript-eslint/parser":"^2.26.0","babel-eslint":"^10.0.3","cross-env":"^7.0.2","eslint":"^6.8.0","eslint-config-prettier":"^6.7.0","eslint-config-standard":"^14.1.0","eslint-config-standard-react":"^9.2.0","eslint-plugin-import":"^2.18.2","eslint-plugin-node":"^11.0.0","eslint-plugin-prettier":"^3.1.1","eslint-plugin-promise":"^4.2.1","eslint-plugin-react":"^7.17.0","eslint-plugin-standard":"^4.0.1","microbundle-crl":"^0.13.10","npm-cli-login":"^1.0.0","npm-run-all":"^4.1.5","prettier":"^2.0.4","react":"^16.13.1","react-dom":"^16.13.1","react-scripts":"^3.4.1","typescript":"^3.7.5"},"gitHead":"965c4edd8f8fed98390e4396590379b2705fd6cd","_id":"@xcelerate-ui/core@1.0.1","_nodeVersion":"12.22.7","_npmVersion":"6.14.15","dist":{"integrity":"sha512-XfOI3zYMNOaTwEY33qBqAzuRomkS1UvaLvvw/B+XZbNbBRpjLVclSpFfAanPNtBTTQrdD1jUBhqCj7ABXI/cmA==","shasum":"f2b665b9df8f2e72f38e200ebb702b13de7712d6","tarball":"https://registry.npmjs.org/@xcelerate-ui/core/-/core-1.0.1.tgz","fileCount":14,"unpackedSize":6017634,"npm-signature":"-----BEGIN PGP SIGNATURE-----\r\nVersion: OpenPGP.js v3.0.13\r\nComment: https://openpgpjs.org\r\n\r\nwsFcBAEBCAAQBQJh4cLvCRA9TVsSAnZWagAAaNEP/03XsEk8SqlpP7M6jpyE\nj7qA+cvxQzFEplX2KCvxMV2N4wjhEdv2z8m6FO+MtBKIWr+YWjHN+/O9OXdL\nOHjEC+M+awFpEWlwir2Xs0cZyn04pLTIz3z6bJPjzHYU/ekeJ8F8V+V6HRvP\nrSOJ1kUlb4BDeJTewcL/L6NFdzhcWDIyXKNsBspJGDePP7DMWtnsIY98hPVt\nrSG4B2DWmIpvo6eW9P0xIsGt8Uhy9gOptrrHFVTs3unee2gbXFqePtPIkKKG\n9s2KE8VBLx8//H+GCuIUFuDVVIYZEY9LgvdgF669MbRi6LlNxTpeqOcZ6Jc0\nSLAJF9cGO/Cgq5+lCjDgdBiuDdWweLLFB1LRcVaTKENFK583C3ImltcH7OL2\nM2T5CLhIWclExIIselMczkWD5YHM9/Pxbo04p6kNQs7bvrzncIUMDYj2WqaW\nwOYHer3/x9V3zMuD5AtF8YpbtAFTcVHbESPoQB9MZRlzFGfVxJEaG/Rq3FnN\nYIIFQQP2bwpkbnYZ3wdfnm0JZsDTaAhO+YB3FOzXvyZs5iNjqepVVEnjr8ka\nub/fzEkmPjD+PA/JTrmUE8tTeB6qlnZfjDz1IzTGMGpDooaYWfMZEYkoSqwJ\nMkvYidQ3tY2GgCfaK3D66pMNckaW2mdVxUmLcbPV8lmKwfUtq0j9gbmtlOX5\nDReN\r\n=1mFV\r\n-----END PGP SIGNATURE-----\r\n","signatures":[{"keyid":"SHA256:jl3bwswu80PjjokCgh0o2w5c2U4LhQAE57gj9cz1kzA","sig":"MEUCIQCR2Aw9xH73P54eqL78SJp/W58t6FAvcbNUa4qp8wjeUgIgYbYqsWP3PUaX4m7vg3BHpn7Wuz/549KsEh/1giA9N6A="}]},"_npmUser":{"name":"waterfield_jclb","email":"john.losbanes@waterfield.com"},"directories":{},"maintainers":[{"name":"lawrenceobote","email":"lawrence.obote@waterfield.com"},{"name":"arcsbstn-wti","email":"adrianne.sebastian@waterfield.com"},{"name":"luc_saunders","email":"luc.saunders@waterfield.com"},{"name":"waterfield_jclb","email":"john.losbanes@waterfield.com"},{"name":"jasonhuangwaterfield","email":"jason.huang@waterfield.com"},{"name":"rileyworthenwaterfield","email":"riley.worthen@waterfield.com"}],"_npmOperationalInternal":{"host":"s3://npm-registry-packages","tmp":"tmp/core_1.0.1_1642185455568_0.9872746392840959"},"_hasShrinkwrap":false,"deprecated":"This will still work in Xcelerate v2.x and below. But it will no longer be supported. The new updated package is in: https://www.npmjs.com/package/xcelerate-ui"},"1.0.2-beta.1":{"name":"@xcelerate-ui/core","version":"1.0.2-beta.1","description":"An NPM package that I can install in my Twilio plugin which will give me access to several Xcelerate features.","author":{"name":"Waterfield Technologies Inc"},"license":"MIT","main":"dist/index.js","module":"dist/index.modern.js","source":"src/index.ts","engines":{"node":">=10"},"scripts":{"build":"microbundle-crl --no-compress --format modern,cjs","start":"microbundle-crl watch --no-compress --format modern,cjs","prepare":"run-s build","test":"run-s test:unit test:lint test:build","test:build":"run-s build","test:lint":"eslint .","test:unit":"cross-env CI=1 react-scripts test --env=jsdom","test:watch":"react-scripts test --env=jsdom","npm:login":"npm run npm-cli-login -u <npm username> -p <password> -e <npm email>","npm:publish":"npm publish","npm:deploy":"npm run npm:login && npm run npm:publish"},"peerDependencies":{"react":"^16.0.0"},"devDependencies":{"@testing-library/jest-dom":"^4.2.4","@testing-library/react":"^9.5.0","@testing-library/user-event":"^7.2.1","@types/jest":"^25.1.4","@types/node":"^12.12.38","@types/react":"^16.9.27","@types/react-dom":"^16.9.7","@typescript-eslint/eslint-plugin":"^2.26.0","@typescript-eslint/parser":"^2.26.0","babel-eslint":"^10.0.3","cross-env":"^7.0.2","eslint":"^6.8.0","eslint-config-prettier":"^6.7.0","eslint-config-standard":"^14.1.0","eslint-config-standard-react":"^9.2.0","eslint-plugin-import":"^2.18.2","eslint-plugin-node":"^11.0.0","eslint-plugin-prettier":"^3.1.1","eslint-plugin-promise":"^4.2.1","eslint-plugin-react":"^7.17.0","eslint-plugin-standard":"^4.0.1","microbundle-crl":"^0.13.10","npm-cli-login":"^1.0.0","npm-run-all":"^4.1.5","prettier":"^2.0.4","react":"^16.13.1","react-dom":"^16.13.1","react-scripts":"^3.4.1","typescript":"^3.7.5"},"readme":"# xcelerate-ui\n\n> xcelerate-ui\n\n[![NPM](https://img.shields.io/npm/v/xcelerate-ui.svg)](https://www.npmjs.com/package/xcelerate-ui) [![JavaScript Style Guide](https://img.shields.io/badge/code_style-standard-brightgreen.svg)](https://standardjs.com)\n\nUI wrapper for Xcelerate's portal framework.\n<br>\n<br>\n\n## Table of Contents\n\n1. [Requirements](##Requirements)\n2. [Installation](##Installation)\n3. [Usage](##Usage)\n4. [Example 1](##Example1)\n5. [Example 2](##Example2)\n6. [Local Development](##LocalDevelopment)\n7. [Deployment](##Deployment)\n8. [License](##License)\n<br>\n<br>\n\n## Requirements\n\n* **NPM version 5 or later**. Type `npm -v` in your terminal to check which version you have.\n* **Node version 12**. Type `node -v` in your terminal to check which version you have.\n* **Twilio CLI**. Refer to the [Twilio CLI Quick Start Guide](https://www.twilio.com/docs/twilio-cli/quickstart) for installation instructions. (If you're using a Mac, use NPM for the CLI installation: ```npm install twilio-cli -g``` )\n* **Flex Plugins CLI**. Refer to the [Flex Developer Documentation](https://www.twilio.com/docs/flex/developer/plugins/cli/install) for installation instructions, and the [Plugins CLI Reference](https://www.twilio.com/docs/flex/developer/plugins/cli/reference) for available commands.  \n<br>\n<br>\n\n## Installation\n\n```bash\nnpm install xcelerate-ui --save \n```\n<br>\n\n## Usage\n\nThe purpose of this library is to expose:\n* enums in conjunction with the [Twilio Actions Framework](https://www.twilio.com/docs/flex/developer/ui/actions) \n* a `<Portal>` wrapper for use with custom Twilio Flex plugins \n<br>\n<br>\n\nIt primarily utilizes four methods:\n* _**registerAction**_ - used to register your own action\n* _**invokeAction**_ - used to invoke an action \n* _**addListener**_ - used before or after an action is invoked \n* _**replaceAction**_ - used when an action is already registed in Xcelerate, to customize an existing action with your own logic\n\n<br>\n\nThe **container-ids** file exposes the following enums: `ContainerIds`, `RegistrableActions`, and `InvocableActions`. (From the root directory: _src > enums > container-ids_.) \n\n* _**ContainerIds**_ identify the container in which the plugin will be injected. A ContainerId is a required attribute of the `<Portal>` wrapper.\n* _**RegistrableActions**_ are Xcelerate versions of [existing actions](https://assets.flex.twilio.com/docs/releases/flex-ui/1.24.0/Actions.html) in the Twilio Actions Framework. These actions are already registered with Xcelerate and perform the original action. Functionality for any action can be replaced with the `.replaceAction()` method.\n* _**InvocableActions**_ are custom actions within Xcelerate.\n<br>\n<br>\n\n\n## Example 1\n\nThis example uses minimal copy-and-paste code for a sample plugin. It does not exemplify use of the `<Portal>` wrapper. For a more involved example, see [Example 2](##Example2).  \n<br>\n\n1. [Create a sample Twilio Flex plugin](https://www.twilio.com/docs/flex/quickstart/getting-started-plugin#set-up-a-flex-environment-with-flex-plugins-cli). This generates a boilerplate with generic files, some of which are unused by this example and can be ignored or removed. Please note this example uses TypeScript.\n\n```bash\n# Start with a TypeScript template plugin with the create command\ntwilio flex:plugins:create plugin-sample-1 --install --typescript\n```\n<br>\n\n2. Copy and paste the code below into `SamplePlugin.tsx`. (From root:  _plugin-sample-1  >  src  >  SamplePlugin.tsx_. )\n\n```ts\nimport React from 'react';\nimport * as Flex from '@twilio/flex-ui';\nimport { RegistrableActions, InvocableActions } from '@xcelerate-ui/core'\nimport { FlexPlugin } from 'flex-plugin';\n\nconst PLUGIN_NAME = 'SamplePlugin';\n\nFlex.Actions.replaceAction(RegistrableActions.SELECT_TASK, (payload: any, original: any) => {\n  return new Promise<void>((resolve, reject) => {\n    console.log('>>>>>xcelerateSelectTask', { payload });\n    Flex.Actions.invokeAction(InvocableActions.UPDATE_IFRAME_URL, `https://loremipsum.io?sid=${payload.sid}`);\n    resolve();\n  })\n})\n\nFlex.Actions.replaceAction(RegistrableActions.WRAPUP_TASK, (payload: any, original: any) => {\n  return new Promise<void>((resolve, reject) => {\n    console.log('>>>>>xcelerateWrapupTask', { payload });\n    Flex.Actions.invokeAction(InvocableActions.UPDATE_IFRAME_URL, `https://waterfieldtech.com`);\n    resolve();\n  })\n})\n\nexport default class SamplePlugin extends FlexPlugin {\n  constructor() {\n    super(PLUGIN_NAME);\n  }\n  /**\n   * This code is run when your plugin is being started\n   * Use this to modify any UI components or attach to the actions framework\n   *\n   * @param flex { typeof Flex }\n   * @param manager { Flex.Manager }\n   */\n  async init(flex: typeof Flex, manager: Flex.Manager): Promise<void> {\n    // this.registerReducers(manager);\n    const options: Flex.ContentFragmentProps = { sortOrder: -1 };\n  }\n}\n```\n<br>\n\n## Example 2\n\nThis second example uses containers and components more intricately and exemplifies use of the `<Portal>` wrapper. It models a more complex, more organized folder structure, generally appropriate for Flex plugins.  \n<br>\n\n1. [Create a sample Twilio Flex plugin](https://www.twilio.com/docs/flex/quickstart/getting-started-plugin#set-up-a-flex-environment-with-flex-plugins-cli). This generates a boilerplate with generic files, some of which are unused by this example and can be ignored or removed. Please note this example uses TypeScript.\n\n```bash\n# Start with a TypeScript template plugin with the create command\ntwilio flex:plugins:create plugin-sample-2 --install --typescript\n```\n<br>\n\n 2. Copy and paste the code below into `SamplePlugin.tsx`. (From root:  _plugin-sample-2  >  src  >  SamplePlugin.tsx_. )\n\n```tsx\nimport React from 'react';\nimport * as Flex from '@twilio/flex-ui';\nimport { FlexPlugin } from 'flex-plugin';\nimport { SamplePluginInit } from './init/SamplePluginInit';\n\nconst PLUGIN_NAME = 'SamplePlugin';\n\nexport default class SamplePlugin extends FlexPlugin {\n  constructor() {\n    super(PLUGIN_NAME);\n  }\n\n  /**\n   * This code is run when your plugin is being started\n   * Use this to modify any UI components or attach to the actions framework\n   *\n   * @param flex { typeof Flex }\n   * @param manager { Flex.Manager }\n   */\n  init(flex: typeof Flex, manager: Flex.Manager) {\n    new SamplePluginInit({flex, manager});\n  }\n}\n```\n<br>\n\n3. Within the _plugin-sample-2 > src_ directory, create an _init_ directory. Within _init_, create a `SamplePluginInit.tsx` file. Copy and paste the code below into `SamplePluginInit.tsx`.  \n\n```ts\nimport React from 'react';\nimport * as Flex from '@twilio/flex-ui';\nimport { RegistrableActions, InvocableActions } from '@xcelerate-ui/core';\nimport { ExampleComponentContainer } from '../components/ExampleComponent/ExampleComponent.Container';\n\ninterface SamplePluginInitProps {\n  flex: typeof Flex,\n  manager: Flex.Manager\n}\n\nclass SamplePluginInit {\n  props: SamplePluginInitProps;\n\n  constructor(props: SamplePluginInitProps) {\n    this.props = props;\n    this.initializeExampleComponent();\n    this.updateIframeUrlOnSelectTask();\n  }\n\n  initializeExampleComponent = () => {\n    // inject the ExampleComponentContainer into the DOM\n    this.props.flex.AgentDesktopView\n      .Panel2\n      .Content\n      .add(\n        <ExampleComponentContainer key=\"main-example-component\"></ExampleComponentContainer>\n        , { sortOrder: -1 }\n      );\n  };\n\n  updateIframeUrlOnSelectTask = () => {\n    // create custom logic for xcelerateSelectTask\n    this.props.flex.Actions.replaceAction(RegistrableActions.SELECT_TASK, (payload: any, original: any) => {\n      return new Promise<void>((resolve, reject) => {\n        // see payload associated with the selected task on the console\n        console.log('>>>>>xcelerateSelectTask', { payload });\n        // update the iframe url upon selecting the task\n        Flex.Actions.invokeAction(InvocableActions.UPDATE_IFRAME_URL, `https://loremipsum.io?sid=${payload.sid}`);\n        resolve();\n      })\n    });\n  };\n}\n\nexport { SamplePluginInit };\n```\n<br>\n\n4. Within the _plugin-sample-2 > src > components_ directory, create an _ExampleComponent_ directory. Within _ExampleComponent_, create an `ExampleComponent.Container.ts` file. Copy and paste the code below into `ExampleComponent.Container.ts`.  \n\n```ts\nimport { connect } from 'react-redux';\nimport { ExampleComponent } from './ExampleComponent';\n\nexport const ExampleComponentContainer = connect(\n  //mapStateToProps,\n  //mapDispatchToProps\n)(ExampleComponent);\n```\n<br>\n\n5. Within _ExampleComponent_ directory, create an `ExampleComponent.tsx` file. Copy and paste the code below into `ExampleComponent.tsx`.\n\n```tsx\nimport React from 'react';\nimport { ContainerIds, Portal } from '@xcelerate-ui/core';\n\ninterface ConfigState {\n  loaded: boolean;\n  [key: string]: boolean;\n}\n\nexport class ExampleComponent extends React.Component<any> {\n  render(): JSX.Element {\n    // Portal a 'Hello world!' div into the RIGHT_PANEL ContainerId \n    return (\n      <>\n        <Portal\n          reduxKey=\"enableExampleComponent\"\n          reduxValue={true}\n          containerId={ContainerIds.RIGHT_PANEL}\n          config={{ loaded: true, enableExampleComponent: true } as ConfigState}\n        >\n          <div>Hello world!</div>\n        </Portal>\n        <div id={ContainerIds.RIGHT_PANEL}></div>\n      </>\n    );\n  }\n}\n```\n<br>\n\n## Local Development and Deployment\n\nRefer to the Flex Plugins CLI documentation to [run your plugin locally](https://www.twilio.com/docs/flex/developer/plugins/cli/run-multiple-plugins#using-local-plugins) and to [deploy and release your plugin](https://www.twilio.com/docs/flex/developer/plugins/cli/deploy-and-release).\n<br>\n<br>\n\n## License\n\nMIT © [](https://github.com/)\n\n<br>\n\n## Maintainer\n[Waterfield Technologies](https://waterfieldtech.com)\n<br>\n<br>\n\n<!-- //TODO: Contact info to come from Riley \n## Issues and Help\nFor any issues or to request assistance, please contact [PLACEHOLDER].\n-->\n","readmeFilename":"README.md","gitHead":"7869c44b5610866e9d1036736ee6f37ca3bcf404","_id":"@xcelerate-ui/core@1.0.2-beta.1","_nodeVersion":"12.22.7","_npmVersion":"6.14.15","dist":{"integrity":"sha512-+kirNDiR91jC54r88leU7KVu0AeBpz9UUH7HWwdReDybMvmMiBnQKbYEroU5vB7kRrx6NlLX8M7f0q9RLw6Mug==","shasum":"66fd4074ed73243121c3b17e6f3ee26aa641460b","tarball":"https://registry.npmjs.org/@xcelerate-ui/core/-/core-1.0.2-beta.1.tgz","fileCount":14,"unpackedSize":6027048,"npm-signature":"-----BEGIN PGP SIGNATURE-----\r\nVersion: OpenPGP.js v3.0.13\r\nComment: https://openpgpjs.org\r\n\r\nwsFcBAEBCAAQBQJh4chICRA9TVsSAnZWagAAX0kP/0JoJUKJlAq9fBH8rTt6\n4XEJ2FARJtocScBIpIucpGMYcvwh9ucSwFn+K7OB7GcUI1rTxnlxPAO3xIqY\nt0vSc74gjO0VWMFOEdcJGwo9PDiq7VUCq2qJauC9YpaOGZvrdFoTOSYVooDX\nZ8Uyap7AM1Y360K3JGAManHxCWI7UGZUeIlYYIJjIWvrDeQ7gJkBlFUfXU1E\nL3wj9g++8AFivH6FSvQjDi72ccmCMV6qNFU88MFASuDJRBFiL2QLOZIkB8YH\nFBw2eg4esUZAhmKujBVg+gdA86dDJ9VRZdLNcqZDAQW+4tJzOO8nP/dA2bUf\nBIvyBHiMa9+yZiELJKi222RSFEwEdwcQH/yqeoo1nf5HXRThoyGx58vCVVQH\nJvfZsKIvPLaEq2hhxcnPUJX8FZXHcK88lOukYdcCgE3Z0kWvmI0IKt+Ul2q1\n+bvDZxbD1bL8CEBsI7E60msc9GhRsfRhGni7igvM2XVf0raCJIa37ypyys6A\nHNI3/5cjo+YvNG6LWIA0TaP4GR9NZF6ZIpQQEYFFOhZWgBx6RJ3rkelFvkS5\n5UvzO96LAMwHqWtQ46ayV/2RDIk6iJXZxeFo05qzLqJtUkN90f7GEBntMn0Q\n7Uw0xdgEGrjYk1Xw+VGgEEdPe0Jx66mOoc+6UjLrxPBjgqsTu6V0nksQGS5e\nxr2t\r\n=9hsL\r\n-----END PGP SIGNATURE-----\r\n","signatures":[{"keyid":"SHA256:jl3bwswu80PjjokCgh0o2w5c2U4LhQAE57gj9cz1kzA","sig":"MEUCIHIvoJO4KSZJNXsnyGEKeqdLZISCjwrOqTOfhA9v4xoWAiEAom1plBQg9f/ZMEP6vafKLf46DlGP8BDc5EE7ih3FK1s="}]},"_npmUser":{"name":"waterfield_jclb","email":"john.losbanes@waterfield.com"},"directories":{},"maintainers":[{"name":"lawrenceobote","email":"lawrence.obote@waterfield.com"},{"name":"arcsbstn-wti","email":"adrianne.sebastian@waterfield.com"},{"name":"luc_saunders","email":"luc.saunders@waterfield.com"},{"name":"waterfield_jclb","email":"john.losbanes@waterfield.com"},{"name":"jasonhuangwaterfield","email":"jason.huang@waterfield.com"},{"name":"rileyworthenwaterfield","email":"riley.worthen@waterfield.com"}],"_npmOperationalInternal":{"host":"s3://npm-registry-packages","tmp":"tmp/core_1.0.2-beta.1_1642186824756_0.9778086386257303"},"_hasShrinkwrap":false,"deprecated":"This will still work in Xcelerate v2.x and below. But it will no longer be supported. The new updated package is in: https://www.npmjs.com/package/xcelerate-ui"},"1.0.2-beta.2":{"name":"@xcelerate-ui/core","version":"1.0.2-beta.2","description":"An NPM package that I can install in my Twilio plugin which will give me access to several Xcelerate features.","author":{"name":"Waterfield Technologies Inc"},"license":"MIT","main":"dist/index.js","module":"dist/index.modern.js","source":"src/index.ts","engines":{"node":">=10"},"scripts":{"build":"microbundle-crl --no-compress --format modern,cjs","start":"microbundle-crl watch --no-compress --format modern,cjs","prepare":"run-s build","test":"run-s test:unit test:lint test:build","test:build":"run-s build","test:lint":"eslint .","test:unit":"cross-env CI=1 react-scripts test --env=jsdom","test:watch":"react-scripts test --env=jsdom","npm:login":"npm run npm-cli-login -u <npm username> -p <password> -e <npm email>","npm:publish":"npm publish","npm:deploy":"npm run npm:login && npm run npm:publish"},"peerDependencies":{"react":"^16.0.0"},"devDependencies":{"@testing-library/jest-dom":"^4.2.4","@testing-library/react":"^9.5.0","@testing-library/user-event":"^7.2.1","@types/jest":"^25.1.4","@types/node":"^12.12.38","@types/react":"^16.9.27","@types/react-dom":"^16.9.7","@typescript-eslint/eslint-plugin":"^2.26.0","@typescript-eslint/parser":"^2.26.0","babel-eslint":"^10.0.3","cross-env":"^7.0.2","eslint":"^6.8.0","eslint-config-prettier":"^6.7.0","eslint-config-standard":"^14.1.0","eslint-config-standard-react":"^9.2.0","eslint-plugin-import":"^2.18.2","eslint-plugin-node":"^11.0.0","eslint-plugin-prettier":"^3.1.1","eslint-plugin-promise":"^4.2.1","eslint-plugin-react":"^7.17.0","eslint-plugin-standard":"^4.0.1","microbundle-crl":"^0.13.10","npm-cli-login":"^1.0.0","npm-run-all":"^4.1.5","prettier":"^2.0.4","react":"^16.13.1","react-dom":"^16.13.1","react-scripts":"^3.4.1","typescript":"^3.7.5"},"gitHead":"7869c44b5610866e9d1036736ee6f37ca3bcf404","_id":"@xcelerate-ui/core@1.0.2-beta.2","_nodeVersion":"12.22.7","_npmVersion":"6.14.15","dist":{"integrity":"sha512-BXCec/sB0XmmovOhfAW4iHv73sIqEzUZuMPYrgCS2UUKPisQj8Gy4F8VLfaNTSoSE6SbTfV8BMzeXK3pSidzrw==","shasum":"b249d2ca084066683dee3b6a3ff8be78fa2069a3","tarball":"https://registry.npmjs.org/@xcelerate-ui/core/-/core-1.0.2-beta.2.tgz","fileCount":14,"unpackedSize":6027048,"npm-signature":"-----BEGIN PGP SIGNATURE-----\r\nVersion: OpenPGP.js v3.0.13\r\nComment: https://openpgpjs.org\r\n\r\nwsFcBAEBCAAQBQJh4ci9CRA9TVsSAnZWagAA3lMP/Ahs/SL2qqySrPLvGlLI\nQaM84afBQpQbO12KS/9731U4hrr0YcGV+wXgb6My54b9ylsO9ga/g/FHa+1i\nagFqDJGEbnDD0PoszOvWLXfJT7GSNyUsUifSmhIdVWSWN/4cvcBx1HicXcvO\nd7beBZkgswucvq+O/gLwHFohJ0pSD1kD4DEmE41QEeqr/ycckY4cycE1SXWT\nmOw9NV8BeFULB9ABdwjLbT6jAI9hBbPMTe83KpQcWlJg92xSOQfhYjSIgIaE\nlPIFtY4FdmmDqGAekPcSyNd+FOIpUb4+jOV9jvlbvC1VXwpUT1XF6yXCSJC3\nOMGoPAVsmqQGX9OW7JfRCAcbuKjUDBiT3B+oKVOw/0RAWlVV74A3xuYLYg5+\neARfvT54fsm1XwiaaqnKvULr8dcG3FMAotAnH8IS9+cnxzbGR3xEGoLhoE9r\npfMOVmpxspycr95mhMgC1PGKdz8580nKHPPlbdkIOD5dmedMJD8RqJFrGm7p\nV8k/MekXqgXT57tCN/vzqEjGiHS49oIWcx2WPPmbhipw4n7CdLkLEu/8aw8g\nDokWlkDWCOy+20jv3sTuEYd9iMwu1pZ6F3vMJjJ+elaHE25ndiVJyuSy6QsK\nQqKocXZFpFRuXQrIYiOr2fE/xmdFDlnX7m4ZZLc1oOw4wCDd7AgKI00aAMQe\nwhrL\r\n=FsmG\r\n-----END PGP SIGNATURE-----\r\n","signatures":[{"keyid":"SHA256:jl3bwswu80PjjokCgh0o2w5c2U4LhQAE57gj9cz1kzA","sig":"MEYCIQDi4DvRAbW42AolwvwAXaRI6Epk6fKdCwnndytO5+nD5wIhAIc56hD/rHLcoXePMTvctMTByxrG4JRjRXID/jfuOufB"}]},"_npmUser":{"name":"waterfield_jclb","email":"john.losbanes@waterfield.com"},"directories":{},"maintainers":[{"name":"lawrenceobote","email":"lawrence.obote@waterfield.com"},{"name":"arcsbstn-wti","email":"adrianne.sebastian@waterfield.com"},{"name":"luc_saunders","email":"luc.saunders@waterfield.com"},{"name":"waterfield_jclb","email":"john.losbanes@waterfield.com"},{"name":"jasonhuangwaterfield","email":"jason.huang@waterfield.com"},{"name":"rileyworthenwaterfield","email":"riley.worthen@waterfield.com"}],"_npmOperationalInternal":{"host":"s3://npm-registry-packages","tmp":"tmp/core_1.0.2-beta.2_1642186941529_0.29558271433317973"},"_hasShrinkwrap":false,"deprecated":"This will still work in Xcelerate v2.x and below. But it will no longer be supported. The new updated package is in: https://www.npmjs.com/package/xcelerate-ui"},"1.0.2":{"name":"@xcelerate-ui/core","version":"1.0.2","description":"An NPM package that I can install in my Twilio plugin which will give me access to several Xcelerate features.","author":{"name":"Waterfield Technologies Inc"},"license":"MIT","main":"dist/index.js","module":"dist/index.modern.js","source":"src/index.ts","engines":{"node":">=10"},"scripts":{"build":"microbundle-crl --no-compress --format modern,cjs","start":"microbundle-crl watch --no-compress --format modern,cjs","prepare":"run-s build","test":"run-s test:unit test:lint test:build","test:build":"run-s build","test:lint":"eslint .","test:unit":"cross-env CI=1 react-scripts test --env=jsdom","test:watch":"react-scripts test --env=jsdom","npm:login":"npm run npm-cli-login -u <npm username> -p <password> -e <npm email>","npm:publish":"npm publish","npm:deploy":"npm run npm:login && npm run npm:publish"},"peerDependencies":{"react":"^16.0.0"},"devDependencies":{"@testing-library/jest-dom":"^4.2.4","@testing-library/react":"^9.5.0","@testing-library/user-event":"^7.2.1","@types/jest":"^25.1.4","@types/node":"^12.12.38","@types/react":"^16.9.27","@types/react-dom":"^16.9.7","@typescript-eslint/eslint-plugin":"^2.26.0","@typescript-eslint/parser":"^2.26.0","babel-eslint":"^10.0.3","cross-env":"^7.0.2","eslint":"^6.8.0","eslint-config-prettier":"^6.7.0","eslint-config-standard":"^14.1.0","eslint-config-standard-react":"^9.2.0","eslint-plugin-import":"^2.18.2","eslint-plugin-node":"^11.0.0","eslint-plugin-prettier":"^3.1.1","eslint-plugin-promise":"^4.2.1","eslint-plugin-react":"^7.17.0","eslint-plugin-standard":"^4.0.1","microbundle-crl":"^0.13.10","npm-cli-login":"^1.0.0","npm-run-all":"^4.1.5","prettier":"^2.0.4","react":"^16.13.1","react-dom":"^16.13.1","react-scripts":"^3.4.1","typescript":"^3.7.5"},"gitHead":"7869c44b5610866e9d1036736ee6f37ca3bcf404","_id":"@xcelerate-ui/core@1.0.2","_nodeVersion":"12.22.7","_npmVersion":"6.14.15","dist":{"integrity":"sha512-8EVAy9ssQq880ZAPnbJVbGdcZFy/XOz0lVPINHX5lxwB8fwB4l8jaHsakdre8RLl0rMVF05iO5o5seNbtFveWA==","shasum":"de093b647bd427421788bf458f0e794b44343d32","tarball":"https://registry.npmjs.org/@xcelerate-ui/core/-/core-1.0.2.tgz","fileCount":14,"unpackedSize":6027041,"npm-signature":"-----BEGIN PGP SIGNATURE-----\r\nVersion: OpenPGP.js v3.0.13\r\nComment: https://openpgpjs.org\r\n\r\nwsFcBAEBCAAQBQJh4coQCRA9TVsSAnZWagAAJOoP/ie9g2ub62+oH4WAJRsI\nSqikcsUutc3YsSHoVAZ++8P6GIPCHpSAvkA3pUtiFeHayhq/GgDAeTP2z3mg\nlHR7KyitEWC23PmjTrtLjc/4YMNOv94vhuYMdYZbBb6zEiwGiUc+uH93CXm+\n/b0KP0niCe9b5w7jaynEk/YGbSGp7fMww1UgXCMNonl6tQaL3Pt3yU3FSr1u\n0ihlwSxONsXZ7DV8ZkXxU3dk1KiOgc5gA/3OWXk0++EgMwIt/pNBuSSVrwoY\nmoZGoOuMH5H6O2q6Ej2mkuxu7kf2LL0JVnRf9iYuAMT/sRbQeo+CrnzCvLbI\nx5ZfsZf6LrJIYN2e/2iVuv3xLA6BHWVUQ7OkTMq0pND/s8vfK07/eHAO0isX\nUHk7U7OXRKu7YLqL82V2GstiqTVOLcol78Q9q3yKqlspiYbK0Q/gpVquq5JC\nnSAx1mUs6v+03OgOPOK+R9aDSLDDR4EuGWa9cRx4JVkZQuUaNEfrJERM/1tz\nybyM78V1AKgdxDyRddT2YuEwJurmXHZ9HVx2mwGSWi4qSLEubFWP2e66zg83\n+ZckL/wnZlzA8QcRalld41/Y9oyPEGiYgt6ktqA62Unwv1ncF1SZgESa5/dn\nWBV5CDuarNpGyeuLiOut1DiJim6PkzHgmttFApify0iNowrPyZHUcU9QEPF/\nuWBc\r\n=9Xei\r\n-----END PGP SIGNATURE-----\r\n","signatures":[{"keyid":"SHA256:jl3bwswu80PjjokCgh0o2w5c2U4LhQAE57gj9cz1kzA","sig":"MEUCIQCLn0SH+BQNnEYOIE6HhtYsesIwjWteoLrOnBP+SG0E6gIgW3EgjCD8FXLq5DKyzygLlon5JCou/GUA5AAsLnSAeSc="}]},"_npmUser":{"name":"waterfield_jclb","email":"john.losbanes@waterfield.com"},"directories":{},"maintainers":[{"name":"lawrenceobote","email":"lawrence.obote@waterfield.com"},{"name":"arcsbstn-wti","email":"adrianne.sebastian@waterfield.com"},{"name":"luc_saunders","email":"luc.saunders@waterfield.com"},{"name":"waterfield_jclb","email":"john.losbanes@waterfield.com"},{"name":"jasonhuangwaterfield","email":"jason.huang@waterfield.com"},{"name":"rileyworthenwaterfield","email":"riley.worthen@waterfield.com"}],"_npmOperationalInternal":{"host":"s3://npm-registry-packages","tmp":"tmp/core_1.0.2_1642187280449_0.5477565277283369"},"_hasShrinkwrap":false,"deprecated":"This will still work in Xcelerate v2.x and below. But it will no longer be supported. The new updated package is in: https://www.npmjs.com/package/xcelerate-ui"},"1.0.3":{"name":"@xcelerate-ui/core","version":"1.0.3","description":"An NPM package that I can install in my Twilio plugin which will give me access to several Xcelerate features.","author":{"name":"Waterfield Technologies Inc"},"license":"MIT","main":"dist/index.js","module":"dist/index.modern.js","source":"src/index.ts","engines":{"node":">=10"},"scripts":{"build":"microbundle-crl --no-compress --format modern,cjs","start":"microbundle-crl watch --no-compress --format modern,cjs","prepare":"run-s build","test":"run-s test:unit test:lint test:build","test:build":"run-s build","test:lint":"eslint .","test:unit":"cross-env CI=1 react-scripts test --env=jsdom","test:watch":"react-scripts test --env=jsdom","npm:login":"npm run npm-cli-login -u <npm username> -p <password> -e <npm email>","npm:publish":"npm publish","npm:deploy":"npm run npm:login && npm run npm:publish"},"peerDependencies":{"react":"^16.0.0"},"devDependencies":{"@testing-library/jest-dom":"^4.2.4","@testing-library/react":"^9.5.0","@testing-library/user-event":"^7.2.1","@types/jest":"^25.1.4","@types/node":"^12.12.38","@types/react":"^16.9.27","@types/react-dom":"^16.9.7","@typescript-eslint/eslint-plugin":"^2.26.0","@typescript-eslint/parser":"^2.26.0","babel-eslint":"^10.0.3","cross-env":"^7.0.2","eslint":"^6.8.0","eslint-config-prettier":"^6.7.0","eslint-config-standard":"^14.1.0","eslint-config-standard-react":"^9.2.0","eslint-plugin-import":"^2.18.2","eslint-plugin-node":"^11.0.0","eslint-plugin-prettier":"^3.1.1","eslint-plugin-promise":"^4.2.1","eslint-plugin-react":"^7.17.0","eslint-plugin-standard":"^4.0.1","microbundle-crl":"^0.13.10","npm-cli-login":"^1.0.0","npm-run-all":"^4.1.5","prettier":"^2.0.4","react":"^16.13.1","react-dom":"^16.13.1","react-scripts":"^3.4.1","typescript":"^3.7.5"},"gitHead":"b993de418099ee34e11c6ae9fa94bd0802076fdc","_id":"@xcelerate-ui/core@1.0.3","_nodeVersion":"12.22.7","_npmVersion":"6.14.15","dist":{"integrity":"sha512-55Cum1pnsoe8Y2m9tdyAOanoRHW2awr3+LhkrDcc4x6CXstkjqCIxiVXGXhIMX/hecNbK9RH6sJ66aumohcWPw==","shasum":"12343bb356585b6df08d5ecfd2488c79c94271dd","tarball":"https://registry.npmjs.org/@xcelerate-ui/core/-/core-1.0.3.tgz","fileCount":14,"unpackedSize":6026717,"npm-signature":"-----BEGIN PGP SIGNATURE-----\r\nVersion: OpenPGP.js v3.0.13\r\nComment: https://openpgpjs.org\r\n\r\nwsFcBAEBCAAQBQJh5xUgCRA9TVsSAnZWagAA0uwQAI15R7cG4YF828V/4ZhL\n4mj7xZYBnkAOWaYCTV736/NTqE6iB8mZzaYAPg/3MZgOvC5D79jILA4E1iZZ\n6YJxVQqPAZcLwCGWXIxdpHnVVL/+lCsxu/PKICZOSG5PR0TA/v69oSWixyMi\nWbT9/VDmqYZB3XY65x3sxTyURqWPXu22GGbs8VhFIX5CTdsjrMhyty85WodM\n/JiSfpQc0M+H/4ZBTumriKMPE/xKDBayHlTCzGj8VcmzGwZPDhkLqfl1kIbO\nrhhWudb1G+GZE4ZW0uA1mzOScGQhwPuWTdAHl893cgN6Uu+5Bn1wpkI5pSx+\nBEr+nT5tx+VXJkfqiAkLUQjQX0Ze/hKBQEyug6wR7JBzQSkyVlGZCcZPvOV7\nFh3k/2tbCxdFDyxwIEyPosacnVMy7yn74eZ6HAI2FyFPr5Ggm82MnL8Y3T/S\nQ2vHI1UZWTtooXG2Qvm79QPGtnkm888NIGqZ8wx7dg584o/4o6OkLUdsGS9z\nspf9R0KekwCK/lXPPhOnG3hSIUcPEFB4pRoyQavx5oAyYa8/Vz9cYHZ0f8RT\n+M+UU9yslddtfrLYZ9Ak1/uAVVciaWvVNNkKvYPd5UdYUHzFcf/IEywMCG8F\nK3BVoF+M0+UYJlDyeBH+NSu6N+tNgdC7Bncv254kNn6PRN+Zbsl+sve8XU2W\n7sHw\r\n=dNVE\r\n-----END PGP SIGNATURE-----\r\n","signatures":[{"keyid":"SHA256:jl3bwswu80PjjokCgh0o2w5c2U4LhQAE57gj9cz1kzA","sig":"MEUCIQCRRcXjjwoblpZwkyxA9hHn4ZZO+TiasIw1e/NkFibv7AIgTSQ+OeYoPFymlJFiMNRMmD8T3+1yDWp3dOYCj/8zXD0="}]},"_npmUser":{"name":"waterfield_jclb","email":"john.losbanes@waterfield.com"},"directories":{},"maintainers":[{"name":"lawrenceobote","email":"lawrence.obote@waterfield.com"},{"name":"arcsbstn-wti","email":"adrianne.sebastian@waterfield.com"},{"name":"luc_saunders","email":"luc.saunders@waterfield.com"},{"name":"waterfield_jclb","email":"john.losbanes@waterfield.com"},{"name":"jasonhuangwaterfield","email":"jason.huang@waterfield.com"},{"name":"rileyworthenwaterfield","email":"riley.worthen@waterfield.com"}],"_npmOperationalInternal":{"host":"s3://npm-registry-packages","tmp":"tmp/core_1.0.3_1642534176136_0.4095230223596624"},"_hasShrinkwrap":false,"deprecated":"This will still work in Xcelerate v2.x and below. But it will no longer be supported. The new updated package is in: https://www.npmjs.com/package/xcelerate-ui"},"1.0.4-beta.1":{"name":"@xcelerate-ui/core","version":"1.0.4-beta.1","description":"An NPM package that I can install in my Twilio plugin which will give me access to several Xcelerate features.","author":{"name":"Waterfield Technologies Inc"},"license":"MIT","main":"dist/index.js","module":"dist/index.modern.js","source":"src/index.ts","engines":{"node":">=10"},"scripts":{"build":"microbundle-crl --no-compress --format modern,cjs","start":"microbundle-crl watch --no-compress --format modern,cjs","prepare":"run-s build","test":"run-s test:unit test:lint test:build","test:build":"run-s build","test:lint":"eslint .","test:unit":"cross-env CI=1 react-scripts test --env=jsdom","test:watch":"react-scripts test --env=jsdom","npm:login":"npm run npm-cli-login -u <npm username> -p <password> -e <npm email>","npm:publish":"npm publish","npm:deploy":"npm run npm:login && npm run npm:publish"},"peerDependencies":{"react":"^16.0.0"},"devDependencies":{"@testing-library/jest-dom":"^4.2.4","@testing-library/react":"^9.5.0","@testing-library/user-event":"^7.2.1","@types/jest":"^25.1.4","@types/node":"^12.12.38","@types/react":"^16.9.27","@types/react-dom":"^16.9.7","@typescript-eslint/eslint-plugin":"^2.26.0","@typescript-eslint/parser":"^2.26.0","babel-eslint":"^10.0.3","cross-env":"^7.0.2","eslint":"^6.8.0","eslint-config-prettier":"^6.7.0","eslint-config-standard":"^14.1.0","eslint-config-standard-react":"^9.2.0","eslint-plugin-import":"^2.18.2","eslint-plugin-node":"^11.0.0","eslint-plugin-prettier":"^3.1.1","eslint-plugin-promise":"^4.2.1","eslint-plugin-react":"^7.17.0","eslint-plugin-standard":"^4.0.1","microbundle-crl":"^0.13.10","npm-cli-login":"^1.0.0","npm-run-all":"^4.1.5","prettier":"^2.0.4","react":"^16.13.1","react-dom":"^16.13.1","react-scripts":"^3.4.1","typescript":"^3.7.5"},"readme":"# xcelerate-ui\n\n> xcelerate-ui\n\n[![NPM](https://img.shields.io/npm/v/xcelerate-ui.svg)](https://www.npmjs.com/package/xcelerate-ui) [![JavaScript Style Guide](https://img.shields.io/badge/code_style-standard-brightgreen.svg)](https://standardjs.com)\n\nUI wrapper for Xcelerate's portal framework.\n<br>\n<br>\n\n## Table of Contents\n\n1. [Requirements](##Requirements)\n2. [Installation](##Installation)\n3. [Usage](##Usage)\n4. [Example 1](##Example1)\n5. [Example 2](##Example2)\n6. [Local Development](##LocalDevelopment)\n7. [Deployment](##Deployment)\n8. [License](##License)\n<br>\n<br>\n\n## Requirements\n\n* **NPM version 5 or later**. Type `npm -v` in your terminal to check which version you have.\n* **Node version 12**. Type `node -v` in your terminal to check which version you have.\n* **Twilio CLI**. Refer to the [Twilio CLI Quick Start Guide](https://www.twilio.com/docs/twilio-cli/quickstart) for installation instructions. (If you're using a Mac, use NPM for the CLI installation: ```npm install twilio-cli -g``` )\n* **Flex Plugins CLI**. Refer to the [Flex Developer Documentation](https://www.twilio.com/docs/flex/developer/plugins/cli/install) for installation instructions, and the [Plugins CLI Reference](https://www.twilio.com/docs/flex/developer/plugins/cli/reference) for available commands.  \n<br>\n<br>\n\n## Installation\n\n```bash\nnpm install xcelerate-ui --save \n```\n<br>\n\n## Usage\n\nThe purpose of this library is to expose:\n* enums in conjunction with the [Twilio Actions Framework](https://www.twilio.com/docs/flex/developer/ui/actions) \n* a `<Portal>` wrapper for use with custom Twilio Flex plugins \n<br>\n<br>\n\nIt primarily utilizes four methods:\n* _**registerAction**_ - used to register your own action\n* _**invokeAction**_ - used to invoke an action \n* _**addListener**_ - used before or after an action is invoked \n* _**replaceAction**_ - used when an action is already registed in Xcelerate, to customize an existing action with your own logic\n\n<br>\n\nThe **container-ids** file exposes the following enums: `ContainerIds`, `RegistrableActions`, and `InvocableActions`. (From the root directory: _src > enums > container-ids_.) \n\n* _**ContainerIds**_ identify the container in which the plugin will be injected. A ContainerId is a required attribute of the `<Portal>` wrapper.\n* _**RegistrableActions**_ are Xcelerate versions of [existing actions](https://assets.flex.twilio.com/docs/releases/flex-ui/1.24.0/Actions.html) in the Twilio Actions Framework. These actions are already registered with Xcelerate and perform the original action. Functionality for any action can be replaced with the `.replaceAction()` method.\n* _**InvocableActions**_ are custom actions within Xcelerate.\n<br>\n<br>\n\n\n## Example 1\n\nThis example uses minimal copy-and-paste code for a sample plugin. It does not exemplify use of the `<Portal>` wrapper. For a more involved example, see [Example 2](##Example2).  \n<br>\n\n1. [Create a sample Twilio Flex plugin](https://www.twilio.com/docs/flex/quickstart/getting-started-plugin#set-up-a-flex-environment-with-flex-plugins-cli). This generates a boilerplate with generic files, some of which are unused by this example and can be ignored or removed. Please note this example uses TypeScript.\n\n```bash\n# Start with a TypeScript template plugin with the create command\ntwilio flex:plugins:create plugin-sample-1 --install --typescript\n```\n<br>\n\n2. Copy and paste the code below into `SamplePlugin.tsx`. (From root:  _plugin-sample-1  >  src  >  SamplePlugin.tsx_. )\n\n```ts\nimport React from 'react';\nimport * as Flex from '@twilio/flex-ui';\nimport { RegistrableActions, InvocableActions } from '@xcelerate-ui/core'\nimport { FlexPlugin } from 'flex-plugin';\n\nconst PLUGIN_NAME = 'SamplePlugin';\n\nFlex.Actions.replaceAction(RegistrableActions.SELECT_TASK, (payload: any, original: any) => {\n  return new Promise<void>((resolve, reject) => {\n    console.log('>>>>>xcelerateSelectTask', { payload });\n    Flex.Actions.invokeAction(InvocableActions.UPDATE_IFRAME_URL, `https://loremipsum.io?sid=${payload.sid}`);\n    resolve();\n  })\n})\n\nFlex.Actions.replaceAction(RegistrableActions.WRAPUP_TASK, (payload: any, original: any) => {\n  return new Promise<void>((resolve, reject) => {\n    console.log('>>>>>xcelerateWrapupTask', { payload });\n    Flex.Actions.invokeAction(InvocableActions.UPDATE_IFRAME_URL, `https://waterfieldtech.com`);\n    resolve();\n  })\n})\n\nexport default class SamplePlugin extends FlexPlugin {\n  constructor() {\n    super(PLUGIN_NAME);\n  }\n  /**\n   * This code is run when your plugin is being started\n   * Use this to modify any UI components or attach to the actions framework\n   *\n   * @param flex { typeof Flex }\n   * @param manager { Flex.Manager }\n   */\n  async init(flex: typeof Flex, manager: Flex.Manager): Promise<void> {\n    // this.registerReducers(manager);\n    const options: Flex.ContentFragmentProps = { sortOrder: -1 };\n  }\n}\n```\n<br>\n\n## Example 2\n\nThis second example uses containers and components more intricately and exemplifies use of the `<Portal>` wrapper. It models a more complex, more organized folder structure, generally appropriate for Flex plugins.  \n<br>\n\n1. [Create a sample Twilio Flex plugin](https://www.twilio.com/docs/flex/quickstart/getting-started-plugin#set-up-a-flex-environment-with-flex-plugins-cli). This generates a boilerplate with generic files, some of which are unused by this example and can be ignored or removed. Please note this example uses TypeScript.\n\n```bash\n# Start with a TypeScript template plugin with the create command\ntwilio flex:plugins:create plugin-sample-2 --install --typescript\n```\n<br>\n\n 2. Copy and paste the code below into `SamplePlugin.tsx`. (From root:  _plugin-sample-2  >  src  >  SamplePlugin.tsx_. )\n\n```tsx\nimport React from 'react';\nimport * as Flex from '@twilio/flex-ui';\nimport { FlexPlugin } from 'flex-plugin';\nimport { SamplePluginInit } from './init/SamplePluginInit';\n\nconst PLUGIN_NAME = 'SamplePlugin';\n\nexport default class SamplePlugin extends FlexPlugin {\n  constructor() {\n    super(PLUGIN_NAME);\n  }\n\n  /**\n   * This code is run when your plugin is being started\n   * Use this to modify any UI components or attach to the actions framework\n   *\n   * @param flex { typeof Flex }\n   * @param manager { Flex.Manager }\n   */\n  init(flex: typeof Flex, manager: Flex.Manager) {\n    new SamplePluginInit({flex, manager});\n  }\n}\n```\n<br>\n\n3. Within the _plugin-sample-2 > src_ directory, create an _init_ directory. Within _init_, create a `SamplePluginInit.tsx` file. Copy and paste the code below into `SamplePluginInit.tsx`.  \n\n```ts\nimport React from 'react';\nimport * as Flex from '@twilio/flex-ui';\nimport { RegistrableActions, InvocableActions } from '@xcelerate-ui/core';\nimport { ExampleComponentContainer } from '../components/ExampleComponent/ExampleComponent.Container';\n\ninterface SamplePluginInitProps {\n  flex: typeof Flex,\n  manager: Flex.Manager\n}\n\nclass SamplePluginInit {\n  props: SamplePluginInitProps;\n\n  constructor(props: SamplePluginInitProps) {\n    this.props = props;\n    this.initializeExampleComponent();\n    this.updateIframeUrlOnSelectTask();\n  }\n\n  initializeExampleComponent = () => {\n    // inject the ExampleComponentContainer into the DOM\n    this.props.flex.AgentDesktopView\n      .Panel2\n      .Content\n      .add(\n        <ExampleComponentContainer key=\"main-example-component\"></ExampleComponentContainer>\n        , { sortOrder: -1 }\n      );\n  };\n\n  updateIframeUrlOnSelectTask = () => {\n    // create custom logic for xcelerateSelectTask\n    this.props.flex.Actions.replaceAction(RegistrableActions.SELECT_TASK, (payload: any, original: any) => {\n      return new Promise<void>((resolve, reject) => {\n        // see payload associated with the selected task on the console\n        console.log('>>>>>xcelerateSelectTask', { payload });\n        // update the iframe url upon selecting the task\n        Flex.Actions.invokeAction(InvocableActions.UPDATE_IFRAME_URL, `https://loremipsum.io?sid=${payload.sid}`);\n        resolve();\n      })\n    });\n  };\n}\n\nexport { SamplePluginInit };\n```\n<br>\n\n4. Within the _plugin-sample-2 > src > components_ directory, create an _ExampleComponent_ directory. Within _ExampleComponent_, create an `ExampleComponent.Container.ts` file. Copy and paste the code below into `ExampleComponent.Container.ts`.  \n\n```ts\nimport { connect } from 'react-redux';\nimport { ExampleComponent } from './ExampleComponent';\n\nexport const ExampleComponentContainer = connect(\n  //mapStateToProps,\n  //mapDispatchToProps\n)(ExampleComponent);\n```\n<br>\n\n5. Within _ExampleComponent_ directory, create an `ExampleComponent.tsx` file. Copy and paste the code below into `ExampleComponent.tsx`.\n\n```tsx\nimport React from 'react';\nimport { ContainerIds, Portal } from '@xcelerate-ui/core';\n\ninterface ConfigState {\n  loaded: boolean;\n  [key: string]: boolean;\n}\n\nexport class ExampleComponent extends React.Component<any> {\n  render(): JSX.Element {\n    // Portal a 'Hello world!' div into the RIGHT_PANEL ContainerId \n    return (\n      <>\n        <Portal\n          reduxKey=\"enableExampleComponent\"\n          reduxValue={true}\n          containerId={ContainerIds.RIGHT_PANEL}\n          config={{ loaded: true, enableExampleComponent: true } as ConfigState}\n        >\n          <div>Hello world!</div>\n        </Portal>\n        <div id={ContainerIds.RIGHT_PANEL}></div>\n      </>\n    );\n  }\n}\n```\n<br>\n\n## Local Development and Deployment\n\nRefer to the Flex Plugins CLI documentation to [run your plugin locally](https://www.twilio.com/docs/flex/developer/plugins/cli/run-multiple-plugins#using-local-plugins) and to [deploy and release your plugin](https://www.twilio.com/docs/flex/developer/plugins/cli/deploy-and-release).\n<br>\n<br>\n\n## License\n\nMIT © [](https://github.com/)\n\n<br>\n\n## Maintainer\n[Waterfield Technologies](https://waterfieldtech.com)\n<br>\n<br>\n\n<!-- //TODO: Contact info to come from Riley \n## Issues and Help\nFor any issues or to request assistance, please contact [PLACEHOLDER].\n-->\n","readmeFilename":"README.md","gitHead":"e8c9c6ff5427a49dd75828ca92b1fd2ab16bedd6","_id":"@xcelerate-ui/core@1.0.4-beta.1","_nodeVersion":"12.22.7","_npmVersion":"6.14.15","dist":{"integrity":"sha512-eTGQbueZZ2+ThnFvmfqJvb16LsnM/5Jes/oLLT3TheyzCUth3qAvlFDxE5oD+As1qkIOfdBfVKgeHmXZlJXG8A==","shasum":"28d97d97a657609a317525a86e5a908d3009a8dc","tarball":"https://registry.npmjs.org/@xcelerate-ui/core/-/core-1.0.4-beta.1.tgz","fileCount":14,"unpackedSize":6027177,"npm-signature":"-----BEGIN PGP SIGNATURE-----\r\nVersion: OpenPGP.js v3.0.13\r\nComment: https://openpgpjs.org\r\n\r\nwsFcBAEBCAAQBQJiA9NrCRA9TVsSAnZWagAA3jcP/0MO8WmKbbHoYRL/bkBp\nykl76Hzv42ipmYR+OWcn6RXwWsrxpJXma+elgwLiNvbZCkDw8YQn+gw7y2IW\n3dcLn5zQsZv3lX7sZ6ySLdOK6KsmN5kezGfqELnlzyIYB/IBAwYwqg57y36U\nlziL726+OpVVPPWRbkOJqP5sKnlXzXkrRgJu+wnZ3W8V4DgJSM8ripJAzD1b\nKeClK/94HulGLr1w0Z1EHQmD1BNCxRbpZlRQGRch7zAEqSjOWm5OkN0aJ7lw\nxv8Uayon1ZQpV7uWC23GRHZ0Io4c62loMhZVqXz7WuuoJeLRuqh8s7rAjYWo\nktl5G6B0HLSvOqBQuytSfPYl9USR72uqf69gzWr0x9W4niFJPkIZOc7KTqx7\nitxwUvbr26VtQs9vrsLTvS871gVHuhxKHi2F7lwmf2fFIatm3BAJPZ2C5bou\n+W0U+oWgwOPQIsd6t9vHv0StJNDhkqpEpMmIsIKd73tSgJ5zAn9y8y7iF9AK\nbUrusj5lLCvLhvKtO/HM497sJEkyz1syzqVbFHXa1T96Idy2rZx1IbakZum0\ndOhNxFmQ1T5UP7bRuEUjnQdn0D9uL2b6Qe9p5eXygrpALurDeyR4Ej3I0dmg\n9aRl4pee/qpgamC9UlpZz/QhYHJQ86UWMgZuzEoev9gqgscSt8Ki/YbA+vN+\nMPod\r\n=fGv8\r\n-----END PGP SIGNATURE-----\r\n","signatures":[{"keyid":"SHA256:jl3bwswu80PjjokCgh0o2w5c2U4LhQAE57gj9cz1kzA","sig":"MEYCIQD66Uwb/Ki6IPv+lnOcTB12rUpns5U8KotqVuJ+xzc0yQIhAMgxpAjHYhc25wa25NoGjfKgcVMHSzT6xf0kfNWXQPJh"}]},"_npmUser":{"name":"waterfield_jclb","email":"john.losbanes@waterfield.com"},"directories":{},"maintainers":[{"name":"lawrenceobote","email":"lawrence.obote@waterfield.com"},{"name":"arcsbstn-wti","email":"adrianne.sebastian@waterfield.com"},{"name":"luc_saunders","email":"luc.saunders@waterfield.com"},{"name":"waterfield_jclb","email":"john.losbanes@waterfield.com"},{"name":"jasonhuangwaterfield","email":"jason.huang@waterfield.com"},{"name":"rileyworthenwaterfield","email":"riley.worthen@waterfield.com"}],"_npmOperationalInternal":{"host":"s3://npm-registry-packages","tmp":"tmp/core_1.0.4-beta.1_1644417899416_0.4733917364434468"},"_hasShrinkwrap":false,"deprecated":"This will still work in Xcelerate v2.x and below. But it will no longer be supported. The new updated package is in: https://www.npmjs.com/package/xcelerate-ui"},"1.0.4-beta.2":{"name":"@xcelerate-ui/core","version":"1.0.4-beta.2","description":"An NPM package that I can install in my Twilio plugin which will give me access to several Xcelerate features.","author":{"name":"Waterfield Technologies Inc"},"license":"MIT","main":"dist/index.js","module":"dist/index.modern.js","source":"src/index.ts","engines":{"node":">=10"},"scripts":{"build":"microbundle-crl --no-compress --format modern,cjs","start":"microbundle-crl watch --no-compress --format modern,cjs","prepare":"run-s build","test":"run-s test:unit test:lint test:build","test:build":"run-s build","test:lint":"eslint .","test:unit":"cross-env CI=1 react-scripts test --env=jsdom","test:watch":"react-scripts test --env=jsdom","npm:login":"npm run npm-cli-login -u <npm username> -p <password> -e <npm email>","npm:publish":"npm publish","npm:deploy":"npm run npm:login && npm run npm:publish"},"peerDependencies":{"react":"^16.0.0"},"devDependencies":{"@testing-library/jest-dom":"^4.2.4","@testing-library/react":"^9.5.0","@testing-library/user-event":"^7.2.1","@types/jest":"^25.1.4","@types/node":"^12.12.38","@types/react":"^16.9.27","@types/react-dom":"^16.9.7","@typescript-eslint/eslint-plugin":"^2.26.0","@typescript-eslint/parser":"^2.26.0","babel-eslint":"^10.0.3","cross-env":"^7.0.2","eslint":"^6.8.0","eslint-config-prettier":"^6.7.0","eslint-config-standard":"^14.1.0","eslint-config-standard-react":"^9.2.0","eslint-plugin-import":"^2.18.2","eslint-plugin-node":"^11.0.0","eslint-plugin-prettier":"^3.1.1","eslint-plugin-promise":"^4.2.1","eslint-plugin-react":"^7.17.0","eslint-plugin-standard":"^4.0.1","microbundle-crl":"^0.13.10","npm-cli-login":"^1.0.0","npm-run-all":"^4.1.5","prettier":"^2.0.4","react":"^16.13.1","react-dom":"^16.13.1","react-scripts":"^3.4.1","typescript":"^3.7.5"},"readme":"# xcelerate-ui\n\n> xcelerate-ui\n\n[![NPM](https://img.shields.io/npm/v/xcelerate-ui.svg)](https://www.npmjs.com/package/xcelerate-ui) [![JavaScript Style Guide](https://img.shields.io/badge/code_style-standard-brightgreen.svg)](https://standardjs.com)\n\nUI wrapper for Xcelerate's portal framework.\n<br>\n<br>\n\n## Table of Contents\n\n1. [Requirements](##Requirements)\n2. [Installation](##Installation)\n3. [Usage](##Usage)\n4. [Example 1](##Example1)\n5. [Example 2](##Example2)\n6. [Local Development](##LocalDevelopment)\n7. [Deployment](##Deployment)\n8. [License](##License)\n<br>\n<br>\n\n## Requirements\n\n* **NPM version 5 or later**. Type `npm -v` in your terminal to check which version you have.\n* **Node version 12**. Type `node -v` in your terminal to check which version you have.\n* **Twilio CLI**. Refer to the [Twilio CLI Quick Start Guide](https://www.twilio.com/docs/twilio-cli/quickstart) for installation instructions. (If you're using a Mac, use NPM for the CLI installation: ```npm install twilio-cli -g``` )\n* **Flex Plugins CLI**. Refer to the [Flex Developer Documentation](https://www.twilio.com/docs/flex/developer/plugins/cli/install) for installation instructions, and the [Plugins CLI Reference](https://www.twilio.com/docs/flex/developer/plugins/cli/reference) for available commands.  \n<br>\n<br>\n\n## Installation\n\n```bash\nnpm install xcelerate-ui --save \n```\n<br>\n\n## Usage\n\nThe purpose of this library is to expose:\n* enums in conjunction with the [Twilio Actions Framework](https://www.twilio.com/docs/flex/developer/ui/actions) \n* a `<Portal>` wrapper for use with custom Twilio Flex plugins \n<br>\n<br>\n\nIt primarily utilizes four methods:\n* _**registerAction**_ - used to register your own action\n* _**invokeAction**_ - used to invoke an action \n* _**addListener**_ - used before or after an action is invoked \n* _**replaceAction**_ - used when an action is already registed in Xcelerate, to customize an existing action with your own logic\n\n<br>\n\nThe **container-ids** file exposes the following enums: `ContainerIds`, `RegistrableActions`, and `InvocableActions`. (From the root directory: _src > enums > container-ids_.) \n\n* _**ContainerIds**_ identify the container in which the plugin will be injected. A ContainerId is a required attribute of the `<Portal>` wrapper.\n* _**RegistrableActions**_ are Xcelerate versions of [existing actions](https://assets.flex.twilio.com/docs/releases/flex-ui/1.24.0/Actions.html) in the Twilio Actions Framework. These actions are already registered with Xcelerate and perform the original action. Functionality for any action can be replaced with the `.replaceAction()` method.\n* _**InvocableActions**_ are custom actions within Xcelerate.\n<br>\n<br>\n\n\n## Example 1\n\nThis example uses minimal copy-and-paste code for a sample plugin. It does not exemplify use of the `<Portal>` wrapper. For a more involved example, see [Example 2](##Example2).  \n<br>\n\n1. [Create a sample Twilio Flex plugin](https://www.twilio.com/docs/flex/quickstart/getting-started-plugin#set-up-a-flex-environment-with-flex-plugins-cli). This generates a boilerplate with generic files, some of which are unused by this example and can be ignored or removed. Please note this example uses TypeScript.\n\n```bash\n# Start with a TypeScript template plugin with the create command\ntwilio flex:plugins:create plugin-sample-1 --install --typescript\n```\n<br>\n\n2. Copy and paste the code below into `SamplePlugin.tsx`. (From root:  _plugin-sample-1  >  src  >  SamplePlugin.tsx_. )\n\n```ts\nimport React from 'react';\nimport * as Flex from '@twilio/flex-ui';\nimport { RegistrableActions, InvocableActions } from '@xcelerate-ui/core'\nimport { FlexPlugin } from 'flex-plugin';\n\nconst PLUGIN_NAME = 'SamplePlugin';\n\nFlex.Actions.replaceAction(RegistrableActions.SELECT_TASK, (payload: any, original: any) => {\n  return new Promise<void>((resolve, reject) => {\n    console.log('>>>>>xcelerateSelectTask', { payload });\n    Flex.Actions.invokeAction(InvocableActions.UPDATE_IFRAME_URL, `https://loremipsum.io?sid=${payload.sid}`);\n    resolve();\n  })\n})\n\nFlex.Actions.replaceAction(RegistrableActions.WRAPUP_TASK, (payload: any, original: any) => {\n  return new Promise<void>((resolve, reject) => {\n    console.log('>>>>>xcelerateWrapupTask', { payload });\n    Flex.Actions.invokeAction(InvocableActions.UPDATE_IFRAME_URL, `https://waterfieldtech.com`);\n    resolve();\n  })\n})\n\nexport default class SamplePlugin extends FlexPlugin {\n  constructor() {\n    super(PLUGIN_NAME);\n  }\n  /**\n   * This code is run when your plugin is being started\n   * Use this to modify any UI components or attach to the actions framework\n   *\n   * @param flex { typeof Flex }\n   * @param manager { Flex.Manager }\n   */\n  async init(flex: typeof Flex, manager: Flex.Manager): Promise<void> {\n    // this.registerReducers(manager);\n    const options: Flex.ContentFragmentProps = { sortOrder: -1 };\n  }\n}\n```\n<br>\n\n## Example 2\n\nThis second example uses containers and components more intricately and exemplifies use of the `<Portal>` wrapper. It models a more complex, more organized folder structure, generally appropriate for Flex plugins.  \n<br>\n\n1. [Create a sample Twilio Flex plugin](https://www.twilio.com/docs/flex/quickstart/getting-started-plugin#set-up-a-flex-environment-with-flex-plugins-cli). This generates a boilerplate with generic files, some of which are unused by this example and can be ignored or removed. Please note this example uses TypeScript.\n\n```bash\n# Start with a TypeScript template plugin with the create command\ntwilio flex:plugins:create plugin-sample-2 --install --typescript\n```\n<br>\n\n 2. Copy and paste the code below into `SamplePlugin.tsx`. (From root:  _plugin-sample-2  >  src  >  SamplePlugin.tsx_. )\n\n```tsx\nimport React from 'react';\nimport * as Flex from '@twilio/flex-ui';\nimport { FlexPlugin } from 'flex-plugin';\nimport { SamplePluginInit } from './init/SamplePluginInit';\n\nconst PLUGIN_NAME = 'SamplePlugin';\n\nexport default class SamplePlugin extends FlexPlugin {\n  constructor() {\n    super(PLUGIN_NAME);\n  }\n\n  /**\n   * This code is run when your plugin is being started\n   * Use this to modify any UI components or attach to the actions framework\n   *\n   * @param flex { typeof Flex }\n   * @param manager { Flex.Manager }\n   */\n  init(flex: typeof Flex, manager: Flex.Manager) {\n    new SamplePluginInit({flex, manager});\n  }\n}\n```\n<br>\n\n3. Within the _plugin-sample-2 > src_ directory, create an _init_ directory. Within _init_, create a `SamplePluginInit.tsx` file. Copy and paste the code below into `SamplePluginInit.tsx`.  \n\n```ts\nimport React from 'react';\nimport * as Flex from '@twilio/flex-ui';\nimport { RegistrableActions, InvocableActions } from '@xcelerate-ui/core';\nimport { ExampleComponentContainer } from '../components/ExampleComponent/ExampleComponent.Container';\n\ninterface SamplePluginInitProps {\n  flex: typeof Flex,\n  manager: Flex.Manager\n}\n\nclass SamplePluginInit {\n  props: SamplePluginInitProps;\n\n  constructor(props: SamplePluginInitProps) {\n    this.props = props;\n    this.initializeExampleComponent();\n    this.updateIframeUrlOnSelectTask();\n  }\n\n  initializeExampleComponent = () => {\n    // inject the ExampleComponentContainer into the DOM\n    this.props.flex.AgentDesktopView\n      .Panel2\n      .Content\n      .add(\n        <ExampleComponentContainer key=\"main-example-component\"></ExampleComponentContainer>\n        , { sortOrder: -1 }\n      );\n  };\n\n  updateIframeUrlOnSelectTask = () => {\n    // create custom logic for xcelerateSelectTask\n    this.props.flex.Actions.replaceAction(RegistrableActions.SELECT_TASK, (payload: any, original: any) => {\n      return new Promise<void>((resolve, reject) => {\n        // see payload associated with the selected task on the console\n        console.log('>>>>>xcelerateSelectTask', { payload });\n        // update the iframe url upon selecting the task\n        Flex.Actions.invokeAction(InvocableActions.UPDATE_IFRAME_URL, `https://loremipsum.io?sid=${payload.sid}`);\n        resolve();\n      })\n    });\n  };\n}\n\nexport { SamplePluginInit };\n```\n<br>\n\n4. Within the _plugin-sample-2 > src > components_ directory, create an _ExampleComponent_ directory. Within _ExampleComponent_, create an `ExampleComponent.Container.ts` file. Copy and paste the code below into `ExampleComponent.Container.ts`.  \n\n```ts\nimport { connect } from 'react-redux';\nimport { ExampleComponent } from './ExampleComponent';\n\nexport const ExampleComponentContainer = connect(\n  //mapStateToProps,\n  //mapDispatchToProps\n)(ExampleComponent);\n```\n<br>\n\n5. Within _ExampleComponent_ directory, create an `ExampleComponent.tsx` file. Copy and paste the code below into `ExampleComponent.tsx`.\n\n```tsx\nimport React from 'react';\nimport { ContainerIds, Portal } from '@xcelerate-ui/core';\n\ninterface ConfigState {\n  loaded: boolean;\n  [key: string]: boolean;\n}\n\nexport class ExampleComponent extends React.Component<any> {\n  render(): JSX.Element {\n    // Portal a 'Hello world!' div into the RIGHT_PANEL ContainerId \n    return (\n      <>\n        <Portal\n          reduxKey=\"enableExampleComponent\"\n          reduxValue={true}\n          containerId={ContainerIds.RIGHT_PANEL}\n          config={{ loaded: true, enableExampleComponent: true } as ConfigState}\n        >\n          <div>Hello world!</div>\n        </Portal>\n        <div id={ContainerIds.RIGHT_PANEL}></div>\n      </>\n    );\n  }\n}\n```\n<br>\n\n## Local Development and Deployment\n\nRefer to the Flex Plugins CLI documentation to [run your plugin locally](https://www.twilio.com/docs/flex/developer/plugins/cli/run-multiple-plugins#using-local-plugins) and to [deploy and release your plugin](https://www.twilio.com/docs/flex/developer/plugins/cli/deploy-and-release).\n<br>\n<br>\n\n## License\n\nMIT © [](https://github.com/)\n\n<br>\n\n## Maintainer\n[Waterfield Technologies](https://waterfieldtech.com)\n<br>\n<br>\n\n<!-- //TODO: Contact info to come from Riley \n## Issues and Help\nFor any issues or to request assistance, please contact [PLACEHOLDER].\n-->\n","readmeFilename":"README.md","gitHead":"fc3feb9795cc481313d7af6cb20be9b843a10afa","_id":"@xcelerate-ui/core@1.0.4-beta.2","_nodeVersion":"12.22.7","_npmVersion":"6.14.15","dist":{"integrity":"sha512-tUDvH/UOdIL/L8973Al+aLUiB+kI8/VYvrVR/bi8cRk25Kiz7xPrN84WQAxDRlukE4Wvn4RtKLd1YX06r2utxA==","shasum":"693cad6eee37a579c07118d3438cdc4ac55b96bd","tarball":"https://registry.npmjs.org/@xcelerate-ui/core/-/core-1.0.4-beta.2.tgz","fileCount":14,"unpackedSize":6027107,"npm-signature":"-----BEGIN PGP SIGNATURE-----\r\nVersion: OpenPGP.js v3.0.13\r\nComment: https://openpgpjs.org\r\n\r\nwsFcBAEBCAAQBQJiBCn3CRA9TVsSAnZWagAAxvwP/izA7WyDKcUjyTyYxd5Q\n/oE2tWF8nnTIUiAl/KQy+yomPpe6JBp6b48dF7gAhD8Crg7a+p4CglrU1+N+\nFkhA2IOwxQQ91+T61dZ7477xrvF4hypbNaIa8M9Dc+9fOncpgEPhVH8Fvvq7\nVvaG3ISOVL/w/05uQVnCrnpjUd29UtlVCnWz241bdwokeyzChcz37j3A/wIX\nLuA6sJUfGRgsOmLmx/qXD6w0S+t0nnXGtXjU85hugj4NmDKvt6kfaKyo7w9K\nyw2bWuZha4kTdel6BJw1IYkYSq4BTShh5pUC+BcnYCr6vV0kOR3jNmsYb5xg\nFc/yy3tSCxPsZQuJoJ0G6hsHvMMOBwj7tJy8XQ3cp6oFNwFpI6Jpi80d4cph\nO0pk5kEjz8j2nD/m5qQpuzSy3Jfxdh/e18ndoO8hBET/H06n5lXLlxDsd34d\npmcANOJo6HMs12sLOA/3+J6C/PJJ2oecYzxbJvnYaUGhphXl+BHlQcPoGbYk\n4kSHsj4u5i12PPG1Z7xfPD+n8MlJmNAfv0nn2ZeAhIojqsgaOtPAAwNvcWKc\nQASf6x8xNyprYxUhsHt5ZADN4xvJnushqVL9WDfu1VOi5CEt164mZzU2MxIc\nHwAHQNWpztjKBXT0QpeENVbXnAeYDMUBXXtsBqzItWMqsReY6J1RkDs7Jb/t\n+ozv\r\n=uyb4\r\n-----END PGP SIGNATURE-----\r\n","signatures":[{"keyid":"SHA256:jl3bwswu80PjjokCgh0o2w5c2U4LhQAE57gj9cz1kzA","sig":"MEQCIAzBLrQzx8LBmoBTVxQ18BgoUE4UwHH9qxwgP6Fhr3S5AiBcctR8Gtl7uR/c9MLUsuhe4Jzb6FulR+dr2V3d9PurSA=="}]},"_npmUser":{"name":"waterfield_jclb","email":"john.losbanes@waterfield.com"},"directories":{},"maintainers":[{"name":"lawrenceobote","email":"lawrence.obote@waterfield.com"},{"name":"arcsbstn-wti","email":"adrianne.sebastian@waterfield.com"},{"name":"luc_saunders","email":"luc.saunders@waterfield.com"},{"name":"waterfield_jclb","email":"john.losbanes@waterfield.com"},{"name":"jasonhuangwaterfield","email":"jason.huang@waterfield.com"},{"name":"rileyworthenwaterfield","email":"riley.worthen@waterfield.com"}],"_npmOperationalInternal":{"host":"s3://npm-registry-packages","tmp":"tmp/core_1.0.4-beta.2_1644440054870_0.7023903319547253"},"_hasShrinkwrap":false,"deprecated":"This will still work in Xcelerate v2.x and below. But it will no longer be supported. The new updated package is in: https://www.npmjs.com/package/xcelerate-ui"},"1.0.4-beta.3":{"name":"@xcelerate-ui/core","version":"1.0.4-beta.3","description":"An NPM package that I can install in my Twilio plugin which will give me access to several Xcelerate features.","author":{"name":"Waterfield Technologies Inc"},"license":"MIT","main":"dist/index.js","module":"dist/index.modern.js","source":"src/index.ts","engines":{"node":">=10"},"scripts":{"build":"microbundle-crl --no-compress --format modern,cjs","start":"microbundle-crl watch --no-compress --format modern,cjs","prepare":"run-s build","test":"run-s test:unit test:lint test:build","test:build":"run-s build","test:lint":"eslint .","test:unit":"cross-env CI=1 react-scripts test --env=jsdom","test:watch":"react-scripts test --env=jsdom","npm:login":"npm run npm-cli-login -u <npm username> -p <password> -e <npm email>","npm:publish":"npm publish","npm:deploy":"npm run npm:login && npm run npm:publish"},"peerDependencies":{"react":"^16.0.0"},"devDependencies":{"@testing-library/jest-dom":"^4.2.4","@testing-library/react":"^9.5.0","@testing-library/user-event":"^7.2.1","@types/jest":"^25.1.4","@types/node":"^12.12.38","@types/react":"^16.9.27","@types/react-dom":"^16.9.7","@typescript-eslint/eslint-plugin":"^2.26.0","@typescript-eslint/parser":"^2.26.0","babel-eslint":"^10.0.3","cross-env":"^7.0.2","eslint":"^6.8.0","eslint-config-prettier":"^6.7.0","eslint-config-standard":"^14.1.0","eslint-config-standard-react":"^9.2.0","eslint-plugin-import":"^2.18.2","eslint-plugin-node":"^11.0.0","eslint-plugin-prettier":"^3.1.1","eslint-plugin-promise":"^4.2.1","eslint-plugin-react":"^7.17.0","eslint-plugin-standard":"^4.0.1","microbundle-crl":"^0.13.10","npm-cli-login":"^1.0.0","npm-run-all":"^4.1.5","prettier":"^2.0.4","react":"^16.13.1","react-dom":"^16.13.1","react-scripts":"^3.4.1","typescript":"^3.7.5"},"readme":"# xcelerate-ui\n\n> xcelerate-ui\n\n[![NPM](https://img.shields.io/npm/v/xcelerate-ui.svg)](https://www.npmjs.com/package/xcelerate-ui) [![JavaScript Style Guide](https://img.shields.io/badge/code_style-standard-brightgreen.svg)](https://standardjs.com)\n\nUI wrapper for Xcelerate's portal framework.\n<br>\n<br>\n\n## Table of Contents\n\n1. [Requirements](##Requirements)\n2. [Installation](##Installation)\n3. [Usage](##Usage)\n4. [Example 1](##Example1)\n5. [Example 2](##Example2)\n6. [Local Development](##LocalDevelopment)\n7. [Deployment](##Deployment)\n8. [License](##License)\n<br>\n<br>\n\n## Requirements\n\n* **NPM version 5 or later**. Type `npm -v` in your terminal to check which version you have.\n* **Node version 12**. Type `node -v` in your terminal to check which version you have.\n* **Twilio CLI**. Refer to the [Twilio CLI Quick Start Guide](https://www.twilio.com/docs/twilio-cli/quickstart) for installation instructions. (If you're using a Mac, use NPM for the CLI installation: ```npm install twilio-cli -g``` )\n* **Flex Plugins CLI**. Refer to the [Flex Developer Documentation](https://www.twilio.com/docs/flex/developer/plugins/cli/install) for installation instructions, and the [Plugins CLI Reference](https://www.twilio.com/docs/flex/developer/plugins/cli/reference) for available commands.  \n<br>\n<br>\n\n## Installation\n\n```bash\nnpm install xcelerate-ui --save \n```\n<br>\n\n## Usage\n\nThe purpose of this library is to expose:\n* enums in conjunction with the [Twilio Actions Framework](https://www.twilio.com/docs/flex/developer/ui/actions) \n* a `<Portal>` wrapper for use with custom Twilio Flex plugins \n<br>\n<br>\n\nIt primarily utilizes four methods:\n* _**registerAction**_ - used to register your own action\n* _**invokeAction**_ - used to invoke an action \n* _**addListener**_ - used before or after an action is invoked \n* _**replaceAction**_ - used when an action is already registed in Xcelerate, to customize an existing action with your own logic\n\n<br>\n\nThe **container-ids** file exposes the following enums: `ContainerIds`, `RegistrableActions`, and `InvocableActions`. (From the root directory: _src > enums > container-ids_.) \n\n* _**ContainerIds**_ identify the container in which the plugin will be injected. A ContainerId is a required attribute of the `<Portal>` wrapper.\n* _**RegistrableActions**_ are Xcelerate versions of [existing actions](https://assets.flex.twilio.com/docs/releases/flex-ui/1.24.0/Actions.html) in the Twilio Actions Framework. These actions are already registered with Xcelerate and perform the original action. Functionality for any action can be replaced with the `.replaceAction()` method.\n* _**InvocableActions**_ are custom actions within Xcelerate.\n<br>\n<br>\n\n\n## Example 1\n\nThis example uses minimal copy-and-paste code for a sample plugin. It does not exemplify use of the `<Portal>` wrapper. For a more involved example, see [Example 2](##Example2).  \n<br>\n\n1. [Create a sample Twilio Flex plugin](https://www.twilio.com/docs/flex/quickstart/getting-started-plugin#set-up-a-flex-environment-with-flex-plugins-cli). This generates a boilerplate with generic files, some of which are unused by this example and can be ignored or removed. Please note this example uses TypeScript.\n\n```bash\n# Start with a TypeScript template plugin with the create command\ntwilio flex:plugins:create plugin-sample-1 --install --typescript\n```\n<br>\n\n2. Copy and paste the code below into `SamplePlugin.tsx`. (From root:  _plugin-sample-1  >  src  >  SamplePlugin.tsx_. )\n\n```ts\nimport React from 'react';\nimport * as Flex from '@twilio/flex-ui';\nimport { RegistrableActions, InvocableActions } from '@xcelerate-ui/core'\nimport { FlexPlugin } from 'flex-plugin';\n\nconst PLUGIN_NAME = 'SamplePlugin';\n\nFlex.Actions.replaceAction(RegistrableActions.SELECT_TASK, (payload: any, original: any) => {\n  return new Promise<void>((resolve, reject) => {\n    console.log('>>>>>xcelerateSelectTask', { payload });\n    Flex.Actions.invokeAction(InvocableActions.UPDATE_IFRAME_URL, `https://loremipsum.io?sid=${payload.sid}`);\n    resolve();\n  })\n})\n\nFlex.Actions.replaceAction(RegistrableActions.WRAPUP_TASK, (payload: any, original: any) => {\n  return new Promise<void>((resolve, reject) => {\n    console.log('>>>>>xcelerateWrapupTask', { payload });\n    Flex.Actions.invokeAction(InvocableActions.UPDATE_IFRAME_URL, `https://waterfieldtech.com`);\n    resolve();\n  })\n})\n\nexport default class SamplePlugin extends FlexPlugin {\n  constructor() {\n    super(PLUGIN_NAME);\n  }\n  /**\n   * This code is run when your plugin is being started\n   * Use this to modify any UI components or attach to the actions framework\n   *\n   * @param flex { typeof Flex }\n   * @param manager { Flex.Manager }\n   */\n  async init(flex: typeof Flex, manager: Flex.Manager): Promise<void> {\n    // this.registerReducers(manager);\n    const options: Flex.ContentFragmentProps = { sortOrder: -1 };\n  }\n}\n```\n<br>\n\n## Example 2\n\nThis second example uses containers and components more intricately and exemplifies use of the `<Portal>` wrapper. It models a more complex, more organized folder structure, generally appropriate for Flex plugins.  \n<br>\n\n1. [Create a sample Twilio Flex plugin](https://www.twilio.com/docs/flex/quickstart/getting-started-plugin#set-up-a-flex-environment-with-flex-plugins-cli). This generates a boilerplate with generic files, some of which are unused by this example and can be ignored or removed. Please note this example uses TypeScript.\n\n```bash\n# Start with a TypeScript template plugin with the create command\ntwilio flex:plugins:create plugin-sample-2 --install --typescript\n```\n<br>\n\n 2. Copy and paste the code below into `SamplePlugin.tsx`. (From root:  _plugin-sample-2  >  src  >  SamplePlugin.tsx_. )\n\n```tsx\nimport React from 'react';\nimport * as Flex from '@twilio/flex-ui';\nimport { FlexPlugin } from 'flex-plugin';\nimport { SamplePluginInit } from './init/SamplePluginInit';\n\nconst PLUGIN_NAME = 'SamplePlugin';\n\nexport default class SamplePlugin extends FlexPlugin {\n  constructor() {\n    super(PLUGIN_NAME);\n  }\n\n  /**\n   * This code is run when your plugin is being started\n   * Use this to modify any UI components or attach to the actions framework\n   *\n   * @param flex { typeof Flex }\n   * @param manager { Flex.Manager }\n   */\n  init(flex: typeof Flex, manager: Flex.Manager) {\n    new SamplePluginInit({flex, manager});\n  }\n}\n```\n<br>\n\n3. Within the _plugin-sample-2 > src_ directory, create an _init_ directory. Within _init_, create a `SamplePluginInit.tsx` file. Copy and paste the code below into `SamplePluginInit.tsx`.  \n\n```ts\nimport React from 'react';\nimport * as Flex from '@twilio/flex-ui';\nimport { RegistrableActions, InvocableActions } from '@xcelerate-ui/core';\nimport { ExampleComponentContainer } from '../components/ExampleComponent/ExampleComponent.Container';\n\ninterface SamplePluginInitProps {\n  flex: typeof Flex,\n  manager: Flex.Manager\n}\n\nclass SamplePluginInit {\n  props: SamplePluginInitProps;\n\n  constructor(props: SamplePluginInitProps) {\n    this.props = props;\n    this.initializeExampleComponent();\n    this.updateIframeUrlOnSelectTask();\n  }\n\n  initializeExampleComponent = () => {\n    // inject the ExampleComponentContainer into the DOM\n    this.props.flex.AgentDesktopView\n      .Panel2\n      .Content\n      .add(\n        <ExampleComponentContainer key=\"main-example-component\"></ExampleComponentContainer>\n        , { sortOrder: -1 }\n      );\n  };\n\n  updateIframeUrlOnSelectTask = () => {\n    // create custom logic for xcelerateSelectTask\n    this.props.flex.Actions.replaceAction(RegistrableActions.SELECT_TASK, (payload: any, original: any) => {\n      return new Promise<void>((resolve, reject) => {\n        // see payload associated with the selected task on the console\n        console.log('>>>>>xcelerateSelectTask', { payload });\n        // update the iframe url upon selecting the task\n        Flex.Actions.invokeAction(InvocableActions.UPDATE_IFRAME_URL, `https://loremipsum.io?sid=${payload.sid}`);\n        resolve();\n      })\n    });\n  };\n}\n\nexport { SamplePluginInit };\n```\n<br>\n\n4. Within the _plugin-sample-2 > src > components_ directory, create an _ExampleComponent_ directory. Within _ExampleComponent_, create an `ExampleComponent.Container.ts` file. Copy and paste the code below into `ExampleComponent.Container.ts`.  \n\n```ts\nimport { connect } from 'react-redux';\nimport { ExampleComponent } from './ExampleComponent';\n\nexport const ExampleComponentContainer = connect(\n  //mapStateToProps,\n  //mapDispatchToProps\n)(ExampleComponent);\n```\n<br>\n\n5. Within _ExampleComponent_ directory, create an `ExampleComponent.tsx` file. Copy and paste the code below into `ExampleComponent.tsx`.\n\n```tsx\nimport React from 'react';\nimport { ContainerIds, Portal } from '@xcelerate-ui/core';\n\ninterface ConfigState {\n  loaded: boolean;\n  [key: string]: boolean;\n}\n\nexport class ExampleComponent extends React.Component<any> {\n  render(): JSX.Element {\n    // Portal a 'Hello world!' div into the RIGHT_PANEL ContainerId \n    return (\n      <>\n        <Portal\n          reduxKey=\"enableExampleComponent\"\n          reduxValue={true}\n          containerId={ContainerIds.RIGHT_PANEL}\n          config={{ loaded: true, enableExampleComponent: true } as ConfigState}\n        >\n          <div>Hello world!</div>\n        </Portal>\n        <div id={ContainerIds.RIGHT_PANEL}></div>\n      </>\n    );\n  }\n}\n```\n<br>\n\n## Local Development and Deployment\n\nRefer to the Flex Plugins CLI documentation to [run your plugin locally](https://www.twilio.com/docs/flex/developer/plugins/cli/run-multiple-plugins#using-local-plugins) and to [deploy and release your plugin](https://www.twilio.com/docs/flex/developer/plugins/cli/deploy-and-release).\n<br>\n<br>\n\n## License\n\nMIT © [](https://github.com/)\n\n<br>\n\n## Maintainer\n[Waterfield Technologies](https://waterfieldtech.com)\n<br>\n<br>\n\n<!-- //TODO: Contact info to come from Riley \n## Issues and Help\nFor any issues or to request assistance, please contact [PLACEHOLDER].\n-->\n","readmeFilename":"README.md","gitHead":"0d7fe41dcc16a5c154a805db49403781b3281209","_id":"@xcelerate-ui/core@1.0.4-beta.3","_nodeVersion":"12.22.7","_npmVersion":"6.14.15","dist":{"integrity":"sha512-tSOf6uO2feDgK9MJT8CGm6PRQTuDEcza8OOTCTE0TXubRhOcOe5yaaLe7CbfdOGBgmXsKdh6pYF6V4/bj6uTEg==","shasum":"6330d154089b5c1a19f3eda5a9da867539ec4b05","tarball":"https://registry.npmjs.org/@xcelerate-ui/core/-/core-1.0.4-beta.3.tgz","fileCount":14,"unpackedSize":6027058,"npm-signature":"-----BEGIN PGP SIGNATURE-----\r\nVersion: OpenPGP.js v3.0.13\r\nComment: https://openpgpjs.org\r\n\r\nwsFcBAEBCAAQBQJiBsVaCRA9TVsSAnZWagAAjfwP+wYIBSBm/+H77qKUWx4c\ndFRhjNOD/PWPFfbAzZuAQjAuRgy7R2Avc9geiPwB37a8BNnCMT80aoK/sCwW\nGrENYIxW3NZOuHObZsa4RISuvCbdA3tKqEe8xXqtSWMVBD3ZFQapmFlMgshm\n1ZkbOQMDMigFvmw+yi4O7g5qW0rgtCKGLBMQryoqVr2rA4tVzqY0ivDujQ1g\nivwVFHrgs1KvgEy7/z2tCFyFETk39rClQGpbfLfUlN/3SmKK8d8yPREyYSc3\nTZpJnpVNTju8D0C8ZjJuHMjSpYF6VXIZ9Rh02+LgtRC5gA6blGD8Nz6lECRI\ncD3ILixvIzTxndqXWPrwwhMoMynFSdUwJAiAODjRHhsKu5UJ1OnwmxeMuFRF\nkHXse2J6KJDAAMMmI6YI1a5p/GfFus8z8q7KMRUCi9ZMV6qheE4GRGpZ+LhD\np2wemrg4dzp+QsK4BKYwUXK/xyq/sFmDNE4sQ96j882dTGbwWJAeRvgsJmpo\nC04NutWHDqw7C2Et+CwIp0PJGYIJeUnPJThblGDNL+xZiBC4Uz4vvhOfSdS3\nEQDrXwahT1LJXpmo9E9NlH0wTGCvx0TcUZ/Dm2Nn4b6Ln1MHnFBduBYO0U4a\n0OeYmD1RxnuEEVKq8LTG1hJfcM6WRhXozltzbMp2/VP5+xFCJ9DkpERHfOPM\n1zlt\r\n=gH3o\r\n-----END PGP SIGNATURE-----\r\n","signatures":[{"keyid":"SHA256:jl3bwswu80PjjokCgh0o2w5c2U4LhQAE57gj9cz1kzA","sig":"MEYCIQDiDw2WaowVTJnzumiOdKfPhehx9cxXuNmzOXfZscsi6QIhAOW5fKQFfl3RwzCjl29mjlM91mvGU3Vp479lKVYPuqCY"}]},"_npmUser":{"name":"arcsbstn-wti","email":"adrianne.sebastian@waterfield.com"},"directories":{},"maintainers":[{"name":"lawrenceobote","email":"lawrence.obote@waterfield.com"},{"name":"arcsbstn-wti","email":"adrianne.sebastian@waterfield.com"},{"name":"luc_saunders","email":"luc.saunders@waterfield.com"},{"name":"waterfield_jclb","email":"john.losbanes@waterfield.com"},{"name":"jasonhuangwaterfield","email":"jason.huang@waterfield.com"},{"name":"rileyworthenwaterfield","email":"riley.worthen@waterfield.com"}],"_npmOperationalInternal":{"host":"s3://npm-registry-packages","tmp":"tmp/core_1.0.4-beta.3_1644610906719_0.042420689385385346"},"_hasShrinkwrap":false,"deprecated":"This will still work in Xcelerate v2.x and below. But it will no longer be supported. The new updated package is in: https://www.npmjs.com/package/xcelerate-ui"},"1.0.4":{"name":"@xcelerate-ui/core","version":"1.0.4","description":"An NPM package that I can install in my Twilio plugin which will give me access to several Xcelerate features.","author":{"name":"Waterfield Technologies Inc"},"license":"MIT","main":"dist/index.js","module":"dist/index.modern.js","source":"src/index.ts","engines":{"node":">=10"},"scripts":{"build":"microbundle-crl --no-compress --format modern,cjs","start":"microbundle-crl watch --no-compress --format modern,cjs","prepare":"run-s build","test":"run-s test:unit test:lint test:build","test:build":"run-s build","test:lint":"eslint .","test:unit":"cross-env CI=1 react-scripts test --env=jsdom","test:watch":"react-scripts test --env=jsdom","npm:login":"npm run npm-cli-login -u <npm username> -p <password> -e <npm email>","npm:publish":"npm publish","npm:deploy":"npm run npm:login && npm run npm:publish"},"peerDependencies":{"react":"^16.0.0"},"devDependencies":{"@testing-library/jest-dom":"^4.2.4","@testing-library/react":"^9.5.0","@testing-library/user-event":"^7.2.1","@types/jest":"^25.1.4","@types/node":"^12.12.38","@types/react":"^16.9.27","@types/react-dom":"^16.9.7","@typescript-eslint/eslint-plugin":"^2.26.0","@typescript-eslint/parser":"^2.26.0","babel-eslint":"^10.0.3","cross-env":"^7.0.2","eslint":"^6.8.0","eslint-config-prettier":"^6.7.0","eslint-config-standard":"^14.1.0","eslint-config-standard-react":"^9.2.0","eslint-plugin-import":"^2.18.2","eslint-plugin-node":"^11.0.0","eslint-plugin-prettier":"^3.1.1","eslint-plugin-promise":"^4.2.1","eslint-plugin-react":"^7.17.0","eslint-plugin-standard":"^4.0.1","microbundle-crl":"^0.13.10","npm-cli-login":"^1.0.0","npm-run-all":"^4.1.5","prettier":"^2.0.4","react":"^16.13.1","react-dom":"^16.13.1","react-scripts":"^3.4.1","typescript":"^3.7.5"},"gitHead":"33cc0def178b0bd86669fca67b8a8aa9e3b13064","_id":"@xcelerate-ui/core@1.0.4","_nodeVersion":"12.19.0","_npmVersion":"6.14.8","dist":{"integrity":"sha512-dgi1Tx3cIaw1sEPGzL7zXwwEY98Ae+gmSRnNNskqBL4BlwYeDdLyQGg4e74v0FwEOaBHa33HkFM3kmPHiuuvUg==","shasum":"c47e85ebdb4bd0fc9888c58a94020dff87043bea","tarball":"https://registry.npmjs.org/@xcelerate-ui/core/-/core-1.0.4.tgz","fileCount":14,"unpackedSize":6027649,"signatures":[{"keyid":"SHA256:jl3bwswu80PjjokCgh0o2w5c2U4LhQAE57gj9cz1kzA","sig":"MEYCIQCjRRRNeDuONzCxNGOSrw2QDRjDirUtmQgUXWdZ9oZ4rAIhANHO18jLkpKgKV2r1vgSLIAmiAhkmhMHEq0Q25ShNGlo"}],"npm-signature":"-----BEGIN PGP SIGNATURE-----\r\nVersion: OpenPGP.js v4.10.10\r\nComment: https://openpgpjs.org\r\n\r\nwsFzBAEBCAAGBQJimTo+ACEJED1NWxICdlZqFiEECWMYAoorWMhJKdjhPU1b\r\nEgJ2Vmr0dw//UgksGm6BV800/q8hC4ifchV+9Mk4Nfxh4U/MuqCym4oV8i2j\r\n0mOOMtNPSkC0hHJARTPuwB4tYrFeYv35F8zq6BFQ2S/t6MWiOvJ7vouA3JM0\r\nWf+fTXYsapl0kQpLenHItebDQQY38jtWCqS7bV2qfs/WFQOSvzj6p1TX9fjx\r\ni2zkWW7p1ttdI0X8NllxLJI1Yj+7T5p47F9tFBj5c4CB8fXV8MEr7sglVAZT\r\nJ35MrNJZFioPBrrvuoJC0BauTHSDO9MHH09F//L7ERcRqYY3wUehdiWeHXfe\r\nDOJiTevktFJvmzdII79Qq7q3l0aSkBkvGTInevFZuXe6zom8E9mzc0Fqivgl\r\nSglbz89Nw72YWUZfAl4cmiU26Jk0TBuDFSqcV9OxdfeeMveum41D7GJmOKCF\r\nH0ZVEzZ97u4vpkc1MXJ5SWrk4+22D2iJnx5Xok0KFnULdMWPgiMZs0t5j2kU\r\nIXSg70oCJuI7LisOFm27MO79MejbeSqt62CjIv4NEquauqH4Aihgb+dWssjP\r\n0mWwrf7B3XyepBndpsAtPz4nzbBX5Nh1hbq11PXqkvpRtshWYDT4+avQta9i\r\n1GVOG2n/zA/bNU82Clze/WGiB2gfZ6kbu2ewzDRWSfW7MUayOLIuGzC0yK5W\r\ndQ3pL+KCICZ/POowHd6eldV/PYxZAJd6JII=\r\n=DpCz\r\n-----END PGP SIGNATURE-----\r\n"},"_npmUser":{"name":"rileyworthenwaterfield","email":"riley.worthen@waterfield.com"},"directories":{},"maintainers":[{"name":"chrisbland","email":"chris.bland@waterfield.com"},{"name":"andres.munoz","email":"andres.munoz@waterfield.com"},{"name":"lawrenceobote","email":"lawrence.obote@waterfield.com"},{"name":"arcsbstn-wti","email":"adrianne.sebastian@waterfield.com"},{"name":"luc_saunders","email":"luc.saunders@waterfield.com"},{"name":"waterfield_jclb","email":"john.losbanes@waterfield.com"},{"name":"jasonhuangwaterfield","email":"jason.huang@waterfield.com"},{"name":"rileyworthenwaterfield","email":"riley.worthen@waterfield.com"}],"_npmOperationalInternal":{"host":"s3://npm-registry-packages","tmp":"tmp/core_1.0.4_1654209085835_0.8372050668592841"},"_hasShrinkwrap":false,"deprecated":"This will still work in Xcelerate v2.x and below. But it will no longer be supported. The new updated package is in: https://www.npmjs.com/package/xcelerate-ui"},"1.0.5":{"name":"@xcelerate-ui/core","version":"1.0.5","description":"An NPM package that I can install in my Twilio plugin which will give me access to several Xcelerate features.","author":{"name":"Waterfield Technologies Inc"},"license":"MIT","main":"dist/index.js","module":"dist/index.modern.js","source":"src/index.ts","engines":{"node":">=10"},"scripts":{"build":"microbundle-crl --no-compress --format modern,cjs","start":"microbundle-crl watch --no-compress --format modern,cjs","prepare":"run-s build","test":"run-s test:unit test:lint test:build","test:build":"run-s build","test:lint":"eslint .","test:unit":"cross-env CI=1 react-scripts test --env=jsdom","test:watch":"react-scripts test --env=jsdom","npm:login":"npm run npm-cli-login -u <npm username> -p <password> -e <npm email>","npm:publish:patch":"npm version patch && npm publish","npm:publish:minor":"npm version minor && npm publish","npm:publish:major":"npm version major && npm publish","npm:publish":"npm publish","npm:deploy":"npm run npm:login && npm run npm:publish"},"peerDependencies":{"react":"^16.0.0"},"devDependencies":{"@testing-library/jest-dom":"^4.2.4","@testing-library/react":"^9.5.0","@testing-library/user-event":"^7.2.1","@types/jest":"^25.1.4","@types/node":"^12.12.38","@types/react":"^16.9.27","@types/react-dom":"^16.9.7","@typescript-eslint/eslint-plugin":"^2.26.0","@typescript-eslint/parser":"^2.26.0","babel-eslint":"^10.0.3","cross-env":"^7.0.2","eslint":"^6.8.0","eslint-config-prettier":"^6.7.0","eslint-config-standard":"^14.1.0","eslint-config-standard-react":"^9.2.0","eslint-plugin-import":"^2.18.2","eslint-plugin-node":"^11.0.0","eslint-plugin-prettier":"^3.1.1","eslint-plugin-promise":"^4.2.1","eslint-plugin-react":"^7.17.0","eslint-plugin-standard":"^4.0.1","microbundle-crl":"^0.13.10","npm-cli-login":"^1.0.0","npm-run-all":"^4.1.5","prettier":"^2.0.4","react":"^16.13.1","react-dom":"^16.13.1","react-scripts":"^3.4.1","typescript":"^3.7.5"},"gitHead":"f4ed66ca0dd8d46267ca5286ed74d5c1002aae23","_id":"@xcelerate-ui/core@1.0.5","_nodeVersion":"14.19.1","_npmVersion":"6.14.16","dist":{"integrity":"sha512-s0gQZ7vCt2P2lPzVeOyYF/JLvPcyREyqov3IBJpFjGODUUZ1zpt8TAF5VgmPurfXdPo4AeC7AydGNxa8ulKmmQ==","shasum":"de8deff338f00b82241dcc60a8a2c8ea66c13f19","tarball":"https://registry.npmjs.org/@xcelerate-ui/core/-/core-1.0.5.tgz","fileCount":14,"unpackedSize":6033290,"signatures":[{"keyid":"SHA256:jl3bwswu80PjjokCgh0o2w5c2U4LhQAE57gj9cz1kzA","sig":"MEQCIH+nZ5H3n+JG9wzeGeKQHOpJVCQUcj7AbREwbHxUh8CuAiA6S3/DXxh/zDmJE5CRIpR9f4TmK+hFvi/VORVoM+b2ug=="}],"npm-signature":"-----BEGIN PGP SIGNATURE-----\r\nVersion: OpenPGP.js v4.10.10\r\nComment: https://openpgpjs.org\r\n\r\nwsFzBAEBCAAGBQJjRwFWACEJED1NWxICdlZqFiEECWMYAoorWMhJKdjhPU1b\r\nEgJ2Vmq9oBAAhBAqwKujJbjTpdDaY7yBM91QVBhn4FNd5680QbcV4Vld1/+v\r\np4+ZDmg3i0AYLwOzJkdJ4u4GWSljA/yUK47wySa7Kk6+7TRjGitNofhtZadP\r\nt8wt41P00iThAmtUt5Q6nixuvR5ilgjo2dtjZerzhTdy7OmSuYHPd30mNrtQ\r\nShgLd39yj9Z6HJCmnLQfH5Xjky2wTFFHUhFjeQfU1pYqh7+DUWfTpimcoGiC\r\nIx6BqeC9VO+bposlEoHODUW8ERWUKrk5NTTHTOwQXZGC8Fb6Vi8NZeCuXV10\r\nhTDmRM/CILn6lLQJYLeeAYXS0QKskoquAvLiLNEJkIjn2ZKSoOxxthhBS/37\r\nWgZTkDvhcIDm7KZYhmRl6wXBBLrOh7jCpZO8nLNBfTAgt8OtB890vb6/P1ro\r\n4y7lILPQpBqfBp7Ea6PTZ1hdWLtoyXFuGOk7nuPx3eOmoCESSDRwVnZi3GFJ\r\nbsNKc1q/1MvwfhqcypbrAJTEcaL2WbqSn1fBGDteKDrrL9weSbsgBxD9hpg9\r\nxGxQsWhdvOMb6NIT9OKvt4we39azkMFjnoNTIxSaus4JklN8UJnB3nAr9sYR\r\nse/Sp/cA84FRxq7KN4hVGerq/mkCjnOhwP+HVcmL7D3jjRCg1X63H6t2cSMx\r\nthzMWrHhRSvrVVeeWKbZgiTxlTLBDvdAvDM=\r\n=K6j7\r\n-----END PGP SIGNATURE-----\r\n"},"_npmUser":{"name":"andres.munoz","email":"andres.munoz@waterfield.com"},"directories":{},"maintainers":[{"name":"chrisbland","email":"chris.bland@waterfield.com"},{"name":"andres.munoz","email":"andres.munoz@waterfield.com"},{"name":"lawrenceobote","email":"lawrence.obote@waterfield.com"},{"name":"arcsbstn-wti","email":"adrianne.sebastian@waterfield.com"},{"name":"luc_saunders","email":"luc.saunders@waterfield.com"},{"name":"waterfield_jclb","email":"john.losbanes@waterfield.com"},{"name":"jasonhuangwaterfield","email":"jason.huang@waterfield.com"},{"name":"rileyworthenwaterfield","email":"riley.worthen@waterfield.com"}],"_npmOperationalInternal":{"host":"s3://npm-registry-packages","tmp":"tmp/core_1.0.5_1665597782692_0.9591407674333383"},"_hasShrinkwrap":false,"deprecated":"This will still work in Xcelerate v2.x and below. But it will no longer be supported. The new updated package is in: https://www.npmjs.com/package/xcelerate-ui"}},"time":{"created":"2021-12-08T20:50:39.788Z","1.0.0":"2021-12-08T20:50:40.063Z","modified":"2024-04-11T17:33:40.554Z","1.0.1-beta.0":"2021-12-13T16:48:43.830Z","1.0.1-beta.1":"2021-12-22T14:54:58.167Z","1.0.1-beta.2":"2022-01-12T21:36:14.711Z","1.0.1-beta.3":"2022-01-12T21:44:00.133Z","1.0.1-beta.4":"2022-01-12T21:53:15.870Z","1.0.1-beta.5":"2022-01-12T22:17:39.341Z","1.0.1-beta.6":"2022-01-12T22:21:38.993Z","1.0.1-beta.7":"2022-01-12T22:28:11.772Z","1.0.1-beta.8":"2022-01-12T22:54:23.234Z","1.0.1-beta.9":"2022-01-12T23:02:25.326Z","1.0.1-beta.10":"2022-01-13T15:16:07.470Z","1.0.1-beta.11":"2022-01-13T21:32:58.804Z","1.0.1":"2022-01-14T18:37:35.843Z","1.0.2-beta.1":"2022-01-14T19:00:24.986Z","1.0.2-beta.2":"2022-01-14T19:02:21.791Z","1.0.2":"2022-01-14T19:08:00.685Z","1.0.3":"2022-01-18T19:29:36.354Z","1.0.4-beta.1":"2022-02-09T14:44:59.607Z","1.0.4-beta.2":"2022-02-09T20:54:15.101Z","1.0.4-beta.3":"2022-02-11T20:21:46.991Z","1.0.4":"2022-06-02T22:31:26.081Z","1.0.5":"2022-10-12T18:03:02.935Z"},"maintainers":[{"email":"dev@xceleratecx.com","name":"xceleratedev"},{"email":"richard.large@waterfield.com","name":"richardlarge-waterfield"},{"email":"dmitriy.fridkin@waterfield.com","name":"dmitriyfridkinwaterfield"},{"email":"adrianne.sebastian@waterfield.com","name":"arcsbstn-wti"},{"email":"john.losbanes@waterfield.com","name":"waterfield_jclb"}],"description":"An NPM package that I can install in my Twilio plugin which will give me access to several Xcelerate features.","author":{"name":"Waterfield Technologies Inc"},"license":"MIT","readme":"# xcelerate-ui\n\n> xcelerate-ui\n\n[![NPM](https://img.shields.io/npm/v/xcelerate-ui.svg)](https://www.npmjs.com/package/xcelerate-ui) [![JavaScript Style Guide](https://img.shields.io/badge/code_style-standard-brightgreen.svg)](https://standardjs.com)\n\nUI wrapper for Xcelerate's portal framework.\n<br>\n<br>\n\n## Table of Contents\n\n1. [Requirements](##Requirements)\n2. [Installation](##Installation)\n3. [Usage](##Usage)\n4. [Example 1](##Example1)\n5. [Example 2](##Example2)\n6. [Local Development](##LocalDevelopment)\n7. [Deployment](##Deployment)\n8. [License](##License)\n<br>\n<br>\n\n## Requirements\n\n* **NPM version 5 or later**. Type `npm -v` in your terminal to check which version you have.\n* **Node version 12**. Type `node -v` in your terminal to check which version you have.\n* **Twilio CLI**. Refer to the [Twilio CLI Quick Start Guide](https://www.twilio.com/docs/twilio-cli/quickstart) for installation instructions. (If you're using a Mac, use NPM for the CLI installation: ```npm install twilio-cli -g``` )\n* **Flex Plugins CLI**. Refer to the [Flex Developer Documentation](https://www.twilio.com/docs/flex/developer/plugins/cli/install) for installation instructions, and the [Plugins CLI Reference](https://www.twilio.com/docs/flex/developer/plugins/cli/reference) for available commands.  \n<br>\n<br>\n\n## Installation\n\n```bash\nnpm install xcelerate-ui --save \n```\n<br>\n\n## Usage\n\nThe purpose of this library is to expose:\n* enums in conjunction with the [Twilio Actions Framework](https://www.twilio.com/docs/flex/developer/ui/actions) \n* a `<Portal>` wrapper for use with custom Twilio Flex plugins \n<br>\n<br>\n\nIt primarily utilizes four methods:\n* _**registerAction**_ - used to register your own action\n* _**invokeAction**_ - used to invoke an action \n* _**addListener**_ - used before or after an action is invoked \n* _**replaceAction**_ - used when an action is already registed in Xcelerate, to customize an existing action with your own logic\n\n<br>\n\nThe **container-ids** file exposes the following enums: `ContainerIds`, `RegistrableActions`, and `InvocableActions`. (From the root directory: _src > enums > container-ids_.) \n\n* _**ContainerIds**_ identify the container in which the plugin will be injected. A ContainerId is a required attribute of the `<Portal>` wrapper.\n* _**RegistrableActions**_ are Xcelerate versions of [existing actions](https://assets.flex.twilio.com/docs/releases/flex-ui/1.24.0/Actions.html) in the Twilio Actions Framework. These actions are already registered with Xcelerate and perform the original action. Functionality for any action can be replaced with the `.replaceAction()` method.\n* _**InvocableActions**_ are custom actions within Xcelerate.\n<br>\n<br>\n\n\n## Example 1\n\nThis example uses minimal copy-and-paste code for a sample plugin. It does not exemplify use of the `<Portal>` wrapper. For a more involved example, see [Example 2](##Example2).  \n<br>\n\n1. [Create a sample Twilio Flex plugin](https://www.twilio.com/docs/flex/quickstart/getting-started-plugin#set-up-a-flex-environment-with-flex-plugins-cli). This generates a boilerplate with generic files, some of which are unused by this example and can be ignored or removed. Please note this example uses TypeScript.\n\n```bash\n# Start with a TypeScript template plugin with the create command\ntwilio flex:plugins:create plugin-sample-1 --install --typescript\n```\n<br>\n\n2. Copy and paste the code below into `SamplePlugin.tsx`. (From root:  _plugin-sample-1  >  src  >  SamplePlugin.tsx_. )\n\n```ts\nimport React from 'react';\nimport * as Flex from '@twilio/flex-ui';\nimport { RegistrableActions, InvocableActions } from '@xcelerate-ui/core'\nimport { FlexPlugin } from 'flex-plugin';\n\nconst PLUGIN_NAME = 'SamplePlugin';\n\nFlex.Actions.replaceAction(RegistrableActions.SELECT_TASK, (payload: any, original: any) => {\n  return new Promise<void>((resolve, reject) => {\n    console.log('>>>>>xcelerateSelectTask', { payload });\n    Flex.Actions.invokeAction(InvocableActions.UPDATE_IFRAME_URL, `https://loremipsum.io?sid=${payload.sid}`);\n    resolve();\n  })\n})\n\nFlex.Actions.replaceAction(RegistrableActions.WRAPUP_TASK, (payload: any, original: any) => {\n  return new Promise<void>((resolve, reject) => {\n    console.log('>>>>>xcelerateWrapupTask', { payload });\n    Flex.Actions.invokeAction(InvocableActions.UPDATE_IFRAME_URL, `https://waterfieldtech.com`);\n    resolve();\n  })\n})\n\nexport default class SamplePlugin extends FlexPlugin {\n  constructor() {\n    super(PLUGIN_NAME);\n  }\n  /**\n   * This code is run when your plugin is being started\n   * Use this to modify any UI components or attach to the actions framework\n   *\n   * @param flex { typeof Flex }\n   * @param manager { Flex.Manager }\n   */\n  async init(flex: typeof Flex, manager: Flex.Manager): Promise<void> {\n    // this.registerReducers(manager);\n    const options: Flex.ContentFragmentProps = { sortOrder: -1 };\n  }\n}\n```\n<br>\n\n## Example 2\n\nThis second example uses containers and components more intricately and exemplifies use of the `<Portal>` wrapper. It models a more complex, more organized folder structure, generally appropriate for Flex plugins.  \n<br>\n\n1. [Create a sample Twilio Flex plugin](https://www.twilio.com/docs/flex/quickstart/getting-started-plugin#set-up-a-flex-environment-with-flex-plugins-cli). This generates a boilerplate with generic files, some of which are unused by this example and can be ignored or removed. Please note this example uses TypeScript.\n\n```bash\n# Start with a TypeScript template plugin with the create command\ntwilio flex:plugins:create plugin-sample-2 --install --typescript\n```\n<br>\n\n 2. Copy and paste the code below into `SamplePlugin.tsx`. (From root:  _plugin-sample-2  >  src  >  SamplePlugin.tsx_. )\n\n```tsx\nimport React from 'react';\nimport * as Flex from '@twilio/flex-ui';\nimport { FlexPlugin } from 'flex-plugin';\nimport { SamplePluginInit } from './init/SamplePluginInit';\n\nconst PLUGIN_NAME = 'SamplePlugin';\n\nexport default class SamplePlugin extends FlexPlugin {\n  constructor() {\n    super(PLUGIN_NAME);\n  }\n\n  /**\n   * This code is run when your plugin is being started\n   * Use this to modify any UI components or attach to the actions framework\n   *\n   * @param flex { typeof Flex }\n   * @param manager { Flex.Manager }\n   */\n  init(flex: typeof Flex, manager: Flex.Manager) {\n    new SamplePluginInit({flex, manager});\n  }\n}\n```\n<br>\n\n3. Within the _plugin-sample-2 > src_ directory, create an _init_ directory. Within _init_, create a `SamplePluginInit.tsx` file. Copy and paste the code below into `SamplePluginInit.tsx`.  \n\n```ts\nimport React from 'react';\nimport * as Flex from '@twilio/flex-ui';\nimport { RegistrableActions, InvocableActions } from '@xcelerate-ui/core';\nimport { ExampleComponentContainer } from '../components/ExampleComponent/ExampleComponent.Container';\n\ninterface SamplePluginInitProps {\n  flex: typeof Flex,\n  manager: Flex.Manager\n}\n\nclass SamplePluginInit {\n  props: SamplePluginInitProps;\n\n  constructor(props: SamplePluginInitProps) {\n    this.props = props;\n    this.initializeExampleComponent();\n    this.updateIframeUrlOnSelectTask();\n  }\n\n  initializeExampleComponent = () => {\n    // inject the ExampleComponentContainer into the DOM\n    this.props.flex.AgentDesktopView\n      .Panel2\n      .Content\n      .add(\n        <ExampleComponentContainer key=\"main-example-component\"></ExampleComponentContainer>\n        , { sortOrder: -1 }\n      );\n  };\n\n  updateIframeUrlOnSelectTask = () => {\n    // create custom logic for xcelerateSelectTask\n    this.props.flex.Actions.replaceAction(RegistrableActions.SELECT_TASK, (payload: any, original: any) => {\n      return new Promise<void>((resolve, reject) => {\n        // see payload associated with the selected task on the console\n        console.log('>>>>>xcelerateSelectTask', { payload });\n        // update the iframe url upon selecting the task\n        Flex.Actions.invokeAction(InvocableActions.UPDATE_IFRAME_URL, `https://loremipsum.io?sid=${payload.sid}`);\n        resolve();\n      })\n    });\n  };\n}\n\nexport { SamplePluginInit };\n```\n<br>\n\n4. Within the _plugin-sample-2 > src > components_ directory, create an _ExampleComponent_ directory. Within _ExampleComponent_, create an `ExampleComponent.Container.ts` file. Copy and paste the code below into `ExampleComponent.Container.ts`.  \n\n```ts\nimport { connect } from 'react-redux';\nimport { ExampleComponent } from './ExampleComponent';\n\nexport const ExampleComponentContainer = connect(\n  //mapStateToProps,\n  //mapDispatchToProps\n)(ExampleComponent);\n```\n<br>\n\n5. Within _ExampleComponent_ directory, create an `ExampleComponent.tsx` file. Copy and paste the code below into `ExampleComponent.tsx`.\n\n```tsx\nimport React from 'react';\nimport { ContainerIds, Portal } from '@xcelerate-ui/core';\n\ninterface ConfigState {\n  loaded: boolean;\n  [key: string]: boolean;\n}\n\nexport class ExampleComponent extends React.Component<any> {\n  render(): JSX.Element {\n    // Portal a 'Hello world!' div into the RIGHT_PANEL ContainerId \n    return (\n      <>\n        <Portal\n          reduxKey=\"enableExampleComponent\"\n          reduxValue={true}\n          containerId={ContainerIds.RIGHT_PANEL}\n          config={{ loaded: true, enableExampleComponent: true } as ConfigState}\n        >\n          <div>Hello world!</div>\n        </Portal>\n        <div id={ContainerIds.RIGHT_PANEL}></div>\n      </>\n    );\n  }\n}\n```\n<br>\n\n## Local Development and Deployment\n\nRefer to the Flex Plugins CLI documentation to [run your plugin locally](https://www.twilio.com/docs/flex/developer/plugins/cli/run-multiple-plugins#using-local-plugins) and to [deploy and release your plugin](https://www.twilio.com/docs/flex/developer/plugins/cli/deploy-and-release).\n<br>\n<br>\n\n## License\n\nMIT © [](https://github.com/)\n\n<br>\n\n## Maintainer\n[Waterfield Technologies](https://waterfieldtech.com)\n<br>\n<br>\n\n<!-- //TODO: Contact info to come from Riley \n## Issues and Help\nFor any issues or to request assistance, please contact [PLACEHOLDER].\n-->\n","readmeFilename":"README.md"}