{"_id":"@alistigo/third-party-js-container","_rev":"1-cd983eea864ec1cfcda1ea1ea2bbcb5b","name":"@alistigo/third-party-js-container","dist-tags":{"latest":"0.6.8"},"versions":{"0.6.7":{"name":"@alistigo/third-party-js-container","version":"0.6.7","keywords":["third-party","javascript","host","container","public"],"author":{"name":"Mikaël Labrut","email":"labrut@gmail.com"},"license":"MIT","_id":"@alistigo/third-party-js-container@0.6.7","maintainers":[{"name":"mikael.labrut","email":"npm@alistigo.com"}],"homepage":"https://github.com/alistigo/libraries/tree/main/packages/third-party-js-container","bugs":{"url":"https://github.com/alistigo/libraries/issues"},"dist":{"shasum":"9c62ba8888de3bde939138d9f60fc38d772cb31a","tarball":"https://registry.npmjs.org/@alistigo/third-party-js-container/-/third-party-js-container-0.6.7.tgz","fileCount":18,"integrity":"sha512-28HqYRUUQzMG1KMNe6kdKa6Ok/UviQyunQGY/1O6tcLJonLgnI8J5UzDM8LHcL/VuqboGVoOoKC9pm/xFNPfSw==","signatures":[{"sig":"MEYCIQDvD7TlZ22dVxtvmQ7le4lYT8AGAvH63gZmKRoU06aq9wIhAJy7hhfUgLoR0PqFITahbdwVwsY9vs0Ov2/4fezeNncB","keyid":"SHA256:jl3bwswu80PjjokCgh0o2w5c2U4LhQAE57gj9cz1kzA"}],"attestations":{"url":"https://registry.npmjs.org/-/npm/v1/attestations/@alistigo%2fthird-party-js-container@0.6.7","provenance":{"predicateType":"https://slsa.dev/provenance/v1"}},"unpackedSize":53441},"main":"./src/index.js","type":"commonjs","engines":{"node":">=20.0"},"gitHead":"fc402b8a47c3547b17c181d0bf396138c8a81b70","typings":"./src/index.d.ts","_npmUser":{"name":"mikael.labrut","email":"npm@alistigo.com"},"repository":{"url":"git+https://github.com/alistigo/libraries.git","type":"git","directory":"packages/third-party-js-container"},"_npmVersion":"10.7.0","description":"Integrate any 3rd party JS Application on your website","directories":{},"_nodeVersion":"20.15.1","dependencies":{"@alistigo/third-party-js-types":"^0.4.5","@alistigo/third-party-js-application-client":"^0.4.7"},"publishConfig":{"access":"public","registry":"https://registry.npmjs.org/"},"_hasShrinkwrap":false,"_npmOperationalInternal":{"tmp":"tmp/third-party-js-container_0.6.7_1722418576319_0.7329089848398149","host":"s3://npm-registry-packages"}},"0.6.8":{"name":"@alistigo/third-party-js-container","version":"0.6.8","description":"Integrate any 3rd party JS Application on your website","keywords":["third-party-js","host","public"],"engines":{"node":">=20.0"},"author":{"name":"Mikaël Labrut","email":"labrut@gmail.com"},"license":"MIT","main":"./src/index.js","repository":{"type":"git","url":"git+https://github.com/alistigo/libraries.git","directory":"packages/third-party-js-container"},"dependencies":{"@alistigo/third-party-js-application-client":"^0.4.8","@alistigo/third-party-js-types":"^0.4.6"},"publishConfig":{"access":"public","registry":"https://registry.npmjs.org/"},"type":"commonjs","typings":"./src/index.d.ts","bugs":{"url":"https://github.com/alistigo/libraries/issues"},"homepage":"https://github.com/alistigo/libraries/tree/main/packages/third-party-js-container","_id":"@alistigo/third-party-js-container@0.6.8","gitHead":"322ad6bd95e68249ad3620ff18ce5a6d308a4351","_nodeVersion":"20.16.0","_npmVersion":"10.8.1","dist":{"integrity":"sha512-XpA9vqw3QnJlEMxB5WFuAPDrBXrtfpfn1Rj0lyOzciOM5KhR7IIhzklCjjGlqtrlOJxnReWcSgDuGGScV8w2KA==","shasum":"58c1e25d593890a209a78f8b16b756c750ffe58e","tarball":"https://registry.npmjs.org/@alistigo/third-party-js-container/-/third-party-js-container-0.6.8.tgz","fileCount":18,"unpackedSize":53242,"attestations":{"url":"https://registry.npmjs.org/-/npm/v1/attestations/@alistigo%2fthird-party-js-container@0.6.8","provenance":{"predicateType":"https://slsa.dev/provenance/v1"}},"signatures":[{"keyid":"SHA256:jl3bwswu80PjjokCgh0o2w5c2U4LhQAE57gj9cz1kzA","sig":"MEUCIQCN/5ZSt6ULgKuTAPAivcEWv7dCZs6glKD9IJQVc/mlGgIgNnRowmUWyQSptbuBS+iSFNIgLnhr/HWUsGcL9rx5gN4="}]},"_npmUser":{"name":"mikael.labrut","email":"npm@alistigo.com"},"directories":{},"maintainers":[{"name":"mikael.labrut","email":"npm@alistigo.com"}],"_npmOperationalInternal":{"host":"s3://npm-registry-packages","tmp":"tmp/third-party-js-container_0.6.8_1722780986612_0.9386721347187199"},"_hasShrinkwrap":false}},"time":{"created":"2024-07-31T09:36:16.227Z","modified":"2024-08-04T14:16:27.254Z","0.6.7":"2024-07-31T09:36:16.478Z","0.6.8":"2024-08-04T14:16:26.801Z"},"bugs":{"url":"https://github.com/alistigo/libraries/issues"},"author":{"name":"Mikaël Labrut","email":"labrut@gmail.com"},"license":"MIT","homepage":"https://github.com/alistigo/libraries/tree/main/packages/third-party-js-container","keywords":["third-party-js","host","public"],"repository":{"type":"git","url":"git+https://github.com/alistigo/libraries.git","directory":"packages/third-party-js-container"},"description":"Integrate any 3rd party JS Application on your website","maintainers":[{"name":"mikael.labrut","email":"npm@alistigo.com"}],"readme":"# @alistigo/third-party-js-container\n\nIntegrate any 3rd party JS Application on your website\n\nThis library should be used on the **host** application.\n\n```ts\nimport { container } from '@alistigo/third-party-js-container';\n\ncontainer.require(\n  'http://my-cdn.com/my3rdPartyJsApp.js',\n  document.getElementById('my3rdPartyJsApp-viewport')\n);\ncontainer.call('setup', 'my-credentials');\n```\n\n## (Soon) Load third-party-js-container from CDN\n\n```html\n<script src=\"https://cdn.alistigo.com/third-party-js-container/latest.min.js\"></script>\n<script type=\"text/javascript\">\n  const app = window.thirdPartyContainer.require('http://my-cdn.com/app.js');\n  app.call('setup', 'my-credentials', cookie.value);\n</script>\n```\n\n## Implementation choices\n\n### API not using Proxy\n\nWe can't polyfill Proxy properly ...\nSo instead of:\n\n```js\nwindow.alistigo.setup(args);\n```\n\nYou have to do:\n\n```js\nwindow.alistigo.call('setup', args);\n```\n","readmeFilename":"README.md"}