{"_id":"@vonage/micro-frontends","_rev":"135-06efce7e498b8a383a10b95845631065","name":"@vonage/micro-frontends","dist-tags":{"latest":"0.1.0"},"versions":{"0.1.0-alpha":{"name":"@vonage/micro-frontends","version":"0.1.0-alpha","keywords":[],"license":"MIT","_id":"@vonage/micro-frontends@0.1.0-alpha","maintainers":[{"name":"gunifydevops","email":"gunifydevops@vonage.com"},{"name":"voxip_team","email":"voxip-team@vonage.com"},{"name":"voltateam","email":"matteo.zuffolini@vonage.com"},{"name":"vbcbe","email":"vbc-be@vonage.com"},{"name":"vreporter-npm","email":"vreporter-support@vonage.com"},{"name":"unified_portal","email":"unified_portal_dev@vonage.com"},{"name":"yinon","email":"yinon.oved@vonage.com"},{"name":"iceberg-team","email":"icebergteam@vonage.com"},{"name":"web-il","email":"web-il@vonage.com"},{"name":"tomer.amir","email":"tomer.amir@vonage.com"}],"nyc":{"exclude":["**/*.spec.js"],"extends":"@istanbuljs/nyc-config-typescript"},"dist":{"shasum":"f9591e38433286480d67f039ee14417e7c74748d","tarball":"https://registry.npmjs.org/@vonage/micro-frontends/-/micro-frontends-0.1.0-alpha.tgz","fileCount":67,"integrity":"sha512-J8ihgQsicIQrwxmi8s6t/wzviG6OJT1XNk+ewSx22Lhc0Hnnp7i3gNe7I/PdIRPZvZ00IBv7CkESK4A5DVMTww==","signatures":[{"sig":"MEYCIQCIF/K1vv12ba528xKP4hF+WdrnJQImexenmWhzMdwCiAIhANohrquj+00DEHLgBFN8ba8rmrPk4Yq2gmGC+FCpGsQL","keyid":"SHA256:jl3bwswu80PjjokCgh0o2w5c2U4LhQAE57gj9cz1kzA"}],"unpackedSize":167726,"npm-signature":"-----BEGIN PGP SIGNATURE-----\r\nVersion: OpenPGP.js v3.0.4\r\nComment: https://openpgpjs.org\r\n\r\nwsFcBAEBCAAQBQJeTy0hCRA9TVsSAnZWagAAqe0P/RHwKOclUfRWl0yHrin/\nj3AcICqjYjrWoDZz06T2WzkKjZXRz8kKukUlLdZRA9edcwn+nUUD78Bt+i1m\nAL2kMI/myQpLj+m6Gf50znnde+pstOhYeZMNO7iOdgwDmZoIvgiZns7zHXLS\nngUrd7TueA4sTWzGh8NErtS/WrIuUsY52OfMiYw7cgJ8dxGXyg49T2IRaX9t\nouTxhQVRn+LYRagoka7Bey8H8P4AAudZ51HzD4bJH0f3vXeG1naiDzs2Ilid\nT3RwcmIgcfJiaMPjYCnmwvzCcLiU7j/5L/bsKUWSZXtlvToO27iam2lGBaV4\ng3L/sdQ5BbBxUQ5pouTgCmbHM/FBvrB3R2fOR7+qs2MZfHh5J/Yp8oF382TA\nK9R8WGMAk/Q1z50svvj8b2qzuLf4TmjK2lxoIVI5d6pLsBd7fzOquDiePr3r\nzwSi7SCo+LNtHmh/MQnu4dh45QIhigiL14cNT0UEOGBdGmJWB00t0XKijyyu\nPmRXTmXjZkYTHxH+z2QzqVRgRDCiW8njfSy2FeZ1e/HcdyJOV9Z/p8eTzpY1\n42rwFwuCFDrzYP6u9pt+y1/VMMQZn8eT/oFCQwLinCrjJQfsXZBmSx70YF5k\nFt+OnpmIOUcqTehMKMnM0hI1aWuaGjB1aQyKqCjKAaY9W3OYgak4+JEXV+H9\nSdom\r\n=Nw+1\r\n-----END PGP SIGNATURE-----\r\n"},"main":"build/main/index.js","config":{"commitizen":{"path":"cz-conventional-changelog"}},"module":"build/module/index.js","engines":{"node":">=8.9"},"gitHead":"75686283d0113b22dc60a1ca96cc162e6b3f32c2","scripts":{"cov":"run-s build test:unit cov:html && open-cli coverage/index.html","doc":"run-s doc:html && open-cli build/docs/index.html","fix":"run-s fix:*","test":"run-s build test:*","build":"run-s clean && run-p build:*","clean":"trash build tests","reset":"git clean -dfx && git reset --hard && npm i","watch":"run-s clean build:main && run-p \\\"build:main -- -w\\\" \\\"test:unit -- --watch\\\"","version":"standard-version","cov:html":"nyc report --reporter=html","cov:send":"nyc report --reporter=lcov && codecov","describe":"npm-scripts-info","doc:html":"typedoc src/ --exclude **/*.spec.ts --target ES6 --mode file --out build/docs","doc:json":"typedoc src/ --exclude **/*.spec.ts --target ES6 --mode file --json build/docs/typedoc.json","cov:check":"nyc report && nyc check-coverage --lines 100 --functions 100 --branches 100","test:unit":"jest --coverage","build:main":"tsc -p tsconfig.json","fix:tslint":"tslint --fix --project .","doc:publish":"gh-pages -m \\\"[ci skip] Updates\\\" -d build/docs","build:module":"tsc -p tsconfig.module.json","fix:prettier":"prettier \"src/**/*.ts\" --write","prepare-release":"run-s reset tests cov:check doc:html version doc:publish"},"typings":"build/main/index.d.ts","_npmUser":{"name":"web-il","email":"web-il@vonage.com"},"prettier":{"singleQuote":true},"repository":"","_npmVersion":"6.9.0","description":"A simple solution for Micro Frontends orchestration","directories":{},"_nodeVersion":"12.4.0","dependencies":{"cuid":"^2.1.6","uuid":"^3.3.3","lodash.get":"^4.4.2"},"scripts-info":{"cov":"Rebuild, run tests, then create and open the coverage report","doc":"Generate HTML API documentation and open it in a browser","fix":"Try to automatically fix any linting problems","info":"Display information about the package scripts","test":"Lint and unit test the project","build":"Clean and rebuild the project","reset":"Delete all untracked files and reset the repo to the last commit","watch":"Watch and rebuild the project on save, then rerun relevant tests","version":"Bump package.json version, update CHANGELOG.md, tag release","doc:json":"Generate API documentation in typedoc JSON format","prepare-release":"One-step: clean, build, test, publish docs, and prep a release"},"_hasShrinkwrap":false,"devDependencies":{"nyc":"^14.1.1","jest":"^24.9.0","tslint":"^5.18.0","codecov":"^3.5.0","ts-jest":"^24.2.0","gh-pages":"^2.0.1","open-cli":"^5.0.0","prettier":"^1.18.2","trash-cli":"^3.0.0","typescript":"^3.5.3","@types/jest":"^24.0.23","@types/node":"^12.12.14","npm-run-all":"^4.1.5","@bitjson/typedoc":"^0.15.0-0","standard-version":"^6.0.1","tslint-immutable":"^6.0.1","tslint-config-prettier":"^1.18.0","@bitjson/npm-scripts-info":"^1.0.0","cz-conventional-changelog":"^2.1.0","@istanbuljs/nyc-config-typescript":"^0.1.3"},"_npmOperationalInternal":{"tmp":"tmp/micro-frontends_0.1.0-alpha_1582247201192_0.923447452698843","host":"s3://npm-registry-packages"}},"0.1.0-alpha.3":{"name":"@vonage/micro-frontends","version":"0.1.0-alpha.3","keywords":["micro-frontends","orchestration","spa","iframe","web components"],"author":{"name":"Roee Malis","email":"roee.malis@vonage.com"},"license":"MIT","_id":"@vonage/micro-frontends@0.1.0-alpha.3","maintainers":[{"name":"vonagemeetings","email":"VBC-Meetings@vonage.com"},{"name":"vvd","email":"vivid@vonage.com"},{"name":"nexmo-devrel","email":"devrel@vonage.com"},{"name":"idanvon","email":"idan.cohen@vonage.com"},{"name":"yuri.guller","email":"gullerya@gmail.com"},{"name":"gunifydevops","email":"gunifydevops@vonage.com"},{"name":"voxip_team","email":"voxip-team@vonage.com"},{"name":"voltateam","email":"matteo.zuffolini@vonage.com"},{"name":"vbcbe","email":"vbc-be@vonage.com"},{"name":"vreporter-npm","email":"vreporter-support@vonage.com"},{"name":"unified_portal","email":"unified_portal_dev@vonage.com"},{"name":"yinon","email":"yinon.oved@vonage.com"},{"name":"iceberg-team","email":"icebergteam@vonage.com"},{"name":"web-il","email":"web-il@vonage.com"}],"homepage":"https://github.com/Vonage/micro-frontends#readme","bugs":{"url":"https://github.com/Vonage/micro-frontends/issues"},"nyc":{"exclude":["**/*.spec.js"],"extends":"@istanbuljs/nyc-config-typescript"},"dist":{"shasum":"2cf64685246c7a482dd1812338f8c210dd5cb14d","tarball":"https://registry.npmjs.org/@vonage/micro-frontends/-/micro-frontends-0.1.0-alpha.3.tgz","fileCount":73,"integrity":"sha512-txV/774LTOlWdxpqfV1f2KegNnybBgXe8UOQcHOPs0r2NTdMIZ1JTCBt65KpRMj7t/f8VS9e0dnyL9MvpKTlYA==","signatures":[{"sig":"MEYCIQCZ4t9zSSCZmNZ3P/B7NzQ6TZDANYzmvL9k0tQLVvRDOQIhAMPrUapu1S6NWagJCeuglWRGvfBlMpkpp9yZkqOH0Hnh","keyid":"SHA256:jl3bwswu80PjjokCgh0o2w5c2U4LhQAE57gj9cz1kzA"}],"unpackedSize":175882,"npm-signature":"-----BEGIN PGP SIGNATURE-----\r\nVersion: OpenPGP.js v3.0.13\r\nComment: https://openpgpjs.org\r\n\r\nwsFcBAEBCAAQBQJfjvYTCRA9TVsSAnZWagAAWGwP/2GrfhQXlrkazwOR4zWv\nYpXcVr/FOeP7ElP4RQ1z08Du1718jcLgqJDE2d68Q8TwjGsBXc/8e8KjN9jh\nlmWKngcAfgONizMTLoBTvMmdynZirkbZbYV3d7H92G1ossSCmBjmJDFA2Tb0\njvZfL4VlSYDS3nS5crSNw4jH9lQ7Yp46ygvTpIj4c873WIhmFKUD5ZQ3tpq6\nGtdvSQdMMQgDaQ0aiwxXVu2OvEmAu0fDYsj7gIJ1PDjr2WosKLk5sp7ePnly\nWe/tL26tsxP3UrbrCle7zq6glr3jejJvbnSnebrJMH1V6gcBBXHeY1PdXXea\nC3m4ZPDeMkjgfsYT8rN38xgf9HeE2W5NnLkvR2uMsi+evoNHjlsIYn04I+xs\n1wrONK3QqqK21RqN+siOJxOjvjVcOG6Q6LQUv0hOsYejp8XCc4kojoysjTlZ\ns23Ikox8laiHrmLzsrCe+ACHVHHNZXoVfXo5TnmUoHem1urKY0EU2KbJy0w/\nMalJ0S9qdlEF33/sLHrQTX81WEJIQOz3rXMBfPeG6VWS/nJe8avIQw7UC8ph\nSeQ25qY3VZSyayH2FBVVwuiO0QYQsdGwFfG3AJNcqcKC+4HOU48FQl0hxM+N\nwKqHDD1ZxnhDOhU/azUd5OOvS4pAgiMH+6wIoyQPiLmGk5L2xA0Afx7hd48E\nTGSW\r\n=dr0w\r\n-----END PGP SIGNATURE-----\r\n"},"main":"build/main/index.js","config":{"commitizen":{"path":"cz-conventional-changelog"}},"module":"build/module/index.js","engines":{"node":">=8.9"},"gitHead":"322a62129709bda83c6fdbfe3d9fec2cde91e8c7","scripts":{"cov":"run-s build test:unit cov:html && open-cli coverage/index.html","doc":"run-s doc:html && open-cli build/docs/index.html","fix":"run-s fix:*","test":"run-s build test:*","build":"run-s clean && run-p build:*","clean":"trash build","reset":"git clean -dfx && git reset --hard && npm i","watch":"run-s clean build:main && run-p \\\"build:main -- -w\\\" \\\"test:unit -- --watch\\\"","version":"standard-version","cov:html":"nyc report --reporter=html","cov:send":"nyc report --reporter=lcov && codecov","describe":"npm-scripts-info","doc:html":"typedoc src/ --exclude **/*.spec.ts --target ES6 --mode file --out build/docs","doc:json":"typedoc src/ --exclude **/*.spec.ts --target ES6 --mode file --json build/docs/typedoc.json","cov:check":"nyc report && nyc check-coverage --lines 100 --functions 100 --branches 100","test:unit":"jest --coverage","build:main":"tsc -p tsconfig.json","fix:tslint":"tslint --fix --project .","doc:publish":"gh-pages -m \\\"[ci skip] Updates\\\" -d build/docs","build:module":"tsc -p tsconfig.module.json","fix:prettier":"prettier \"src/**/*.ts\" --write","prepare-release":"run-s reset tests cov:check doc:html version doc:publish"},"typings":"build/main/index.d.ts","_npmUser":{"name":"web-il","email":"web-il@vonage.com"},"prettier":{"singleQuote":true},"repository":{"url":"git+https://github.com/Vonage/micro-frontends.git","type":"git"},"_npmVersion":"6.9.0","description":"A simple solution for Micro Frontends orchestration","directories":{},"_nodeVersion":"12.4.0","dependencies":{"cuid":"^2.1.6","uuid":"^3.3.3","lodash.get":"^4.4.2"},"scripts-info":{"cov":"Rebuild, run tests, then create and open the coverage report","doc":"Generate HTML API documentation and open it in a browser","fix":"Try to automatically fix any linting problems","info":"Display information about the package scripts","test":"Lint and unit test the project","build":"Clean and rebuild the project","reset":"Delete all untracked files and reset the repo to the last commit","watch":"Watch and rebuild the project on save, then rerun relevant tests","version":"Bump package.json version, update CHANGELOG.md, tag release","doc:json":"Generate API documentation in typedoc JSON format","prepare-release":"One-step: clean, build, test, publish docs, and prep a release"},"_hasShrinkwrap":false,"devDependencies":{"nyc":"^14.1.1","jest":"^24.9.0","tslint":"^5.18.0","codecov":"^3.5.0","ts-jest":"^24.2.0","gh-pages":"^2.0.1","open-cli":"^5.0.0","prettier":"^1.18.2","trash-cli":"^3.0.0","typescript":"^3.5.3","@types/jest":"^24.0.23","@types/node":"^12.12.14","npm-run-all":"^4.1.5","@bitjson/typedoc":"^0.15.0-0","standard-version":"^6.0.1","tslint-immutable":"^6.0.1","tslint-config-prettier":"^1.18.0","@bitjson/npm-scripts-info":"^1.0.0","cz-conventional-changelog":"^2.1.0","@istanbuljs/nyc-config-typescript":"^0.1.3"},"_npmOperationalInternal":{"tmp":"tmp/micro-frontends_0.1.0-alpha.3_1603204627467_0.49261377614542257","host":"s3://npm-registry-packages"}},"0.1.0-alpha.4":{"name":"@vonage/micro-frontends","version":"0.1.0-alpha.4","keywords":["micro-frontends","orchestration","spa","iframe","web components"],"author":{"name":"Roee Malis","email":"roee.malis@vonage.com"},"license":"MIT","_id":"@vonage/micro-frontends@0.1.0-alpha.4","maintainers":[{"name":"web-il","email":"web-il@vonage.com"},{"name":"iceberg-team","email":"icebergteam@vonage.com"},{"name":"yinon","email":"yinon.oved@vonage.com"},{"name":"unified_portal","email":"unified_portal_dev@vonage.com"},{"name":"vreporter-npm","email":"vreporter-support@vonage.com"},{"name":"vbcbe","email":"vbc-be@vonage.com"},{"name":"voxip_team","email":"voxip-team@vonage.com"},{"name":"gunifydevops","email":"gunifydevops@vonage.com"},{"name":"yuri.guller","email":"gullerya@gmail.com"},{"name":"idanvon","email":"idan.cohen@vonage.com"},{"name":"nexmo-devrel","email":"devrel@vonage.com"},{"name":"vvd","email":"vivid@vonage.com"},{"name":"vonagemeetings","email":"VBC-Meetings@vonage.com"}],"homepage":"https://github.com/Vonage/micro-frontends#readme","bugs":{"url":"https://github.com/Vonage/micro-frontends/issues"},"nyc":{"exclude":["**/*.spec.js"],"extends":"@istanbuljs/nyc-config-typescript"},"dist":{"shasum":"a014c7cfec76c5fd11dd9f5d246c866ac84bd11f","tarball":"https://registry.npmjs.org/@vonage/micro-frontends/-/micro-frontends-0.1.0-alpha.4.tgz","fileCount":68,"integrity":"sha512-AyvFaW3ecrZN5zVEK3CcE3ErrQMauXilTUnnUF8qyKSk8T6T3u8eaVajnoIUVMw/YaeeUAOeGjKqvBb/MYNDxQ==","signatures":[{"sig":"MEQCIGd6qbT3YdfcaQlQm7o1Xxjk4AmEgVSASuWFqEjAc0Y1AiAD2Zvr9mlZl2dWB/x/EQnip9xsl7iuTjgrkGQj8x4Hng==","keyid":"SHA256:jl3bwswu80PjjokCgh0o2w5c2U4LhQAE57gj9cz1kzA"}],"unpackedSize":174639,"npm-signature":"-----BEGIN PGP SIGNATURE-----\r\nVersion: OpenPGP.js v3.0.13\r\nComment: https://openpgpjs.org\r\n\r\nwsFcBAEBCAAQBQJgl61NCRA9TVsSAnZWagAADxQP/2yMCQnTSZWytyHKhu6J\nH4ZY+bQV5hqlAlt+n6IdA6BvcU3PIzX7r44fFd9r/toDd+zMiK+AvKzznTSq\ngx3oQAOj4Q3Kn190fY1JrKL5hkfUKi9wjUppb0wap6l+ufoe7xvULMfaHLN4\nlu4VE6hT291j8rF1jkyrrQXzeVy8KxZOrycw7eCisEOV1R1QeBR3yWyHDD+D\nd93bnt3iQa3MgmW6ZvjggY5jdJkcGRzyh2yronYtZ4KoEY7v87GHXvxqdh52\nDuFVyDZKbWHVnRIWalGHsoG9XTAsM3BJoT55cVryvVYlsoLda6AarecbtJZx\nmYIcMe1boOqb5TDKvWGQe9qkU4oobMYMZgf6k2zoEeIVQyGg1OFe4KOdDpWb\nEXOL1QO1bbrPHDB7dN5USSwP5WKE4vGbS6syOqFHVnCVBlvBsgOmlF6i8kUg\n0Jj8mEq3IVGbErYt4M1gHEgSLTgxDtTOBckXjFMeZ+05ZOg9F65AF4M8OJ3x\nhpAK4ZNJKMGOQHzQsTaup1tZKB+cKw+3T/u5D/mJp6cUDWJieqozYYwz0hnd\nS7SvFh3asyuUWD21fkXCjMouNsRc6gEKTrCKUt6TcL+JYypbxGQY+q8Z6QHR\ndz9sg3IP8ZOGAuLJPo5++3UZs67RHhHm7Zm4k+RLSfnDRNOHmF0rHynaudey\nyHbk\r\n=gmO5\r\n-----END PGP SIGNATURE-----\r\n"},"main":"build/main/index.js","config":{"commitizen":{"path":"cz-conventional-changelog"}},"module":"build/module/index.js","engines":{"node":">=8.9"},"gitHead":"98433f3bf70fabdde48c8047db23ae06d8eb4519","scripts":{"cov":"run-s build test:unit cov:html && open-cli coverage/index.html","doc":"run-s doc:html && open-cli build/docs/index.html","fix":"run-s fix:*","test":"run-s build test:*","build":"run-s clean && run-p build:*","clean":"trash build","reset":"git clean -dfx && git reset --hard && npm i","watch":"run-s clean build:main && run-p \\\"build:main -- -w\\\" \\\"test:unit -- --watch\\\"","version":"standard-version","cov:html":"nyc report --reporter=html","cov:send":"nyc report --reporter=lcov && codecov","describe":"npm-scripts-info","doc:html":"typedoc src/ --exclude **/*.spec.ts --target ES6 --mode file --out build/docs","doc:json":"typedoc src/ --exclude **/*.spec.ts --target ES6 --mode file --json build/docs/typedoc.json","cov:check":"nyc report && nyc check-coverage --lines 100 --functions 100 --branches 100","test:unit":"jest --coverage","build:main":"tsc -p tsconfig.json","fix:tslint":"tslint --fix --project .","doc:publish":"gh-pages -m \\\"[ci skip] Updates\\\" -d build/docs","build:module":"tsc -p tsconfig.module.json","fix:prettier":"prettier \"src/**/*.ts\" --write","prepare-release":"run-s reset tests cov:check doc:html version doc:publish"},"typings":"build/main/index.d.ts","_npmUser":{"name":"web-il","email":"web-il@vonage.com"},"prettier":{"singleQuote":true},"repository":{"url":"git+https://github.com/Vonage/micro-frontends.git","type":"git"},"_npmVersion":"6.12.1","description":"A simple solution for Micro Frontends orchestration","directories":{},"_nodeVersion":"12.13.1","dependencies":{"cuid":"^2.1.6","uuid":"^3.3.3","lodash.get":"^4.4.2"},"scripts-info":{"cov":"Rebuild, run tests, then create and open the coverage report","doc":"Generate HTML API documentation and open it in a browser","fix":"Try to automatically fix any linting problems","info":"Display information about the package scripts","test":"Lint and unit test the project","build":"Clean and rebuild the project","reset":"Delete all untracked files and reset the repo to the last commit","watch":"Watch and rebuild the project on save, then rerun relevant tests","version":"Bump package.json version, update CHANGELOG.md, tag release","doc:json":"Generate API documentation in typedoc JSON format","prepare-release":"One-step: clean, build, test, publish docs, and prep a release"},"_hasShrinkwrap":false,"devDependencies":{"nyc":"^14.1.1","jest":"^24.9.0","tslint":"^5.18.0","codecov":"^3.5.0","ts-jest":"^24.2.0","gh-pages":"^2.0.1","open-cli":"^5.0.0","prettier":"^1.18.2","trash-cli":"^3.0.0","typescript":"^3.5.3","@types/jest":"^24.0.23","@types/node":"^12.12.14","npm-run-all":"^4.1.5","@bitjson/typedoc":"^0.15.0-0","standard-version":"^6.0.1","tslint-immutable":"^6.0.1","tslint-config-prettier":"^1.18.0","@bitjson/npm-scripts-info":"^1.0.0","cz-conventional-changelog":"^2.1.0","@istanbuljs/nyc-config-typescript":"^0.1.3"},"_npmOperationalInternal":{"tmp":"tmp/micro-frontends_0.1.0-alpha.4_1620553037305_0.11469484312212042","host":"s3://npm-registry-packages"}},"0.1.0":{"name":"@vonage/micro-frontends","version":"0.1.0","keywords":["micro-frontends","orchestration","spa","iframe","web components"],"author":{"name":"Roee Malis","email":"roee.malis@vonage.com"},"license":"MIT","_id":"@vonage/micro-frontends@0.1.0","maintainers":[{"name":"tweinfeld","email":"talw@webwise.co.il"},{"name":"web-il","email":"web-il@vonage.com"},{"name":"iceberg-team","email":"icebergteam@vonage.com"},{"name":"yinon","email":"yinon.oved@vonage.com"},{"name":"unified_portal","email":"unified_portal_dev@vonage.com"},{"name":"vreporter-npm","email":"vreporter-support@vonage.com"},{"name":"vbcbe","email":"vbc-be@vonage.com"},{"name":"voxip_team","email":"voxip-team@vonage.com"},{"name":"gunifydevops","email":"gunifydevops@vonage.com"},{"name":"yuri.guller","email":"gullerya@gmail.com"},{"name":"idanvon","email":"idan.cohen@vonage.com"},{"name":"nexmo-devrel","email":"devrel@vonage.com"},{"name":"vvd","email":"vivid@vonage.com"},{"name":"vonagemeetings","email":"VBC-Meetings@vonage.com"}],"homepage":"https://github.com/Vonage/micro-frontends#readme","bugs":{"url":"https://github.com/Vonage/micro-frontends/issues"},"nyc":{"exclude":["**/*.spec.js"],"extends":"@istanbuljs/nyc-config-typescript"},"dist":{"shasum":"0bd6a42d3d0a1a7c5f589e5ea81d27017c09007a","tarball":"https://registry.npmjs.org/@vonage/micro-frontends/-/micro-frontends-0.1.0.tgz","fileCount":68,"integrity":"sha512-2ajqvj++i1AQtjybJZnZx5zxBox35d8AA27kwqP6h7mDygDEvm8b7URrUoytlOLeVUVv0frJsWrJ4Nyaic4vDg==","signatures":[{"sig":"MEQCIArFKiQbbwFa0ByLZO4INswVBZ5NRG91YOr/Z8MAD0WVAiBQM1S7U04MB4EBOA/T35WBPiVrmYvrVi5xhQ8aFoj0uA==","keyid":"SHA256:jl3bwswu80PjjokCgh0o2w5c2U4LhQAE57gj9cz1kzA"}],"unpackedSize":175216,"npm-signature":"-----BEGIN PGP SIGNATURE-----\r\nVersion: OpenPGP.js v3.0.13\r\nComment: https://openpgpjs.org\r\n\r\nwsFcBAEBCAAQBQJgq5D8CRA9TVsSAnZWagAAnAYP/0A9BaYTcugtmbl3H7s0\nGg2KkHGo9kF2vWXUHSunk/W0nWQzUFTbmtSaa7P0d7fswlD47d1gMF9HxsQM\nb32odIGTS0jCe6FNq4ZAhT8IwiOmkX7voplSngEhtgQNI0z7taP666VNnJ9f\nySxQcG7oyDBo/Kh8NWMF5DAQRT1C7Y0MAMDkvhShZRAmgbuKwA7HsvPIDxYH\nY6mhMS9o6OlGzRS9o5YbCzBBUtXBUYtXf8waprUw/+kWqFzqeWHYMx56gAif\nI9CqHJ/KuIdhUE2hwtxn4EgZueNhC5cFMdWtygkNTt4fEwMSXtV6gdEK4Yg7\nykBNnwsiQWIefcOntQf1/YpDCsR1W03u7S8Om2wf9uuJn87w+nfTP0gFQV72\nZ0VuYK7iEI+cR+/5coHwpCidgClobJt5R2Leds+zxev3VAN+dg5dNJ+0PIRN\njVXh8xGOqzZwi9kBaDYIiIjeTb3TCY2UrhIFUQbztE56tAFX89Qlnif1SGeh\nUmSO6xiGxvLJd1kxeQlfmlxuM76ZApH+31quBBzwNLAulZbNSgwF54QTjGWW\nr2tvtcln+5zYtkCPGj39JE8vRiV4eYHaMwZD4FdFW0FrSw02WooHBkdBAhIb\nQiTxvlahpkIrzmy3KuBmLS25LyrYV6aeFSWl54CXrQalI0wfTTt+7a9YOTgA\n5fzh\r\n=d3Gg\r\n-----END PGP SIGNATURE-----\r\n"},"main":"build/main/index.js","config":{"commitizen":{"path":"cz-conventional-changelog"}},"module":"build/module/index.js","engines":{"node":">=8.9"},"gitHead":"8ce4fc7763e4eba47eff3779bd5a3a37f95700a1","scripts":{"cov":"run-s build test:unit cov:html && open-cli coverage/index.html","doc":"run-s doc:html && open-cli build/docs/index.html","fix":"run-s fix:*","test":"run-s build test:*","build":"run-s clean && run-p build:*","clean":"trash build","reset":"git clean -dfx && git reset --hard && npm i","watch":"run-s clean build:main && run-p \\\"build:main -- -w\\\" \\\"test:unit -- --watch\\\"","version":"standard-version","cov:html":"nyc report --reporter=html","cov:send":"nyc report --reporter=lcov && codecov","describe":"npm-scripts-info","doc:html":"typedoc src/ --exclude **/*.spec.ts --target ES6 --mode file --out build/docs","doc:json":"typedoc src/ --exclude **/*.spec.ts --target ES6 --mode file --json build/docs/typedoc.json","cov:check":"nyc report && nyc check-coverage --lines 100 --functions 100 --branches 100","test:unit":"jest --coverage","build:main":"tsc -p tsconfig.json","fix:tslint":"tslint --fix --project .","doc:publish":"gh-pages -m \\\"[ci skip] Updates\\\" -d build/docs","build:module":"tsc -p tsconfig.module.json","fix:prettier":"prettier \"src/**/*.ts\" --write","prepare-release":"run-s reset tests cov:check doc:html version doc:publish"},"typings":"build/main/index.d.ts","_npmUser":{"name":"web-il","email":"web-il@vonage.com"},"prettier":{"singleQuote":true},"repository":{"url":"git+https://github.com/Vonage/micro-frontends.git","type":"git"},"_npmVersion":"6.12.1","description":"A simple solution for Micro Frontends orchestration","directories":{},"_nodeVersion":"12.13.1","dependencies":{"cuid":"^2.1.6","uuid":"^3.3.3","lodash.get":"^4.4.2"},"scripts-info":{"cov":"Rebuild, run tests, then create and open the coverage report","doc":"Generate HTML API documentation and open it in a browser","fix":"Try to automatically fix any linting problems","info":"Display information about the package scripts","test":"Lint and unit test the project","build":"Clean and rebuild the project","reset":"Delete all untracked files and reset the repo to the last commit","watch":"Watch and rebuild the project on save, then rerun relevant tests","version":"Bump package.json version, update CHANGELOG.md, tag release","doc:json":"Generate API documentation in typedoc JSON format","prepare-release":"One-step: clean, build, test, publish docs, and prep a release"},"_hasShrinkwrap":false,"devDependencies":{"nyc":"^14.1.1","jest":"^24.9.0","tslint":"^5.18.0","codecov":"^3.5.0","ts-jest":"^24.2.0","gh-pages":"^2.0.1","open-cli":"^5.0.0","prettier":"^1.18.2","trash-cli":"^3.0.0","typescript":"^3.5.3","@types/jest":"^24.0.23","@types/node":"^12.12.14","npm-run-all":"^4.1.5","@bitjson/typedoc":"^0.15.0-0","standard-version":"^6.0.1","tslint-immutable":"^6.0.1","tslint-config-prettier":"^1.18.0","@bitjson/npm-scripts-info":"^1.0.0","cz-conventional-changelog":"^2.1.0","@istanbuljs/nyc-config-typescript":"^0.1.3"},"_npmOperationalInternal":{"tmp":"tmp/micro-frontends_0.1.0_1621856507490_0.9889237547347771","host":"s3://npm-registry-packages"}}},"time":{"created":"2020-02-21T01:06:41.191Z","modified":"2026-09-03T04:37:57.200Z","0.1.0-alpha":"2020-02-21T01:06:41.296Z","0.1.0-alpha.3":"2020-10-20T14:37:07.613Z","0.1.0-alpha.4":"2021-05-09T09:37:17.516Z","0.1.0":"2021-05-24T11:41:47.658Z"},"bugs":{"url":"https://github.com/Vonage/micro-frontends/issues"},"author":{"name":"Roee Malis","email":"roee.malis@vonage.com"},"license":"MIT","homepage":"https://github.com/Vonage/micro-frontends#readme","keywords":["micro-frontends","orchestration","spa","iframe","web components"],"repository":{"url":"git+https://github.com/Vonage/micro-frontends.git","type":"git"},"description":"A simple solution for Micro Frontends orchestration","maintainers":[{"email":"web-il@vonage.com","name":"web-il"},{"email":"icebergteam@vonage.com","name":"iceberg-team"},{"email":"unified_portal_dev@vonage.com","name":"unified_portal"},{"email":"vreporter-support@vonage.com","name":"vreporter-npm"},{"email":"vbc-be@vonage.com","name":"vbcbe"},{"email":"gullerya@gmail.com","name":"yuri.guller"},{"email":"idan.cohen@vonage.com","name":"idanvon"},{"email":"devrel@vonage.com","name":"nexmo-devrel"},{"email":"vivid@vonage.com","name":"vvd"},{"email":"VBC-Meetings@vonage.com","name":"vonagemeetings"},{"email":"video.api.ops@vonage.com","name":"vonage-jenkins"},{"email":"andreina.dasilvacabral@vonage.com","name":"adasilvacabral"},{"email":"sarvesh.bisht@vonage.com","name":"sarvesh.bisht"},{"email":"vgai-studio-developers@vonage.com","name":"vgai-dev"},{"email":"vcp_webrtc@vonage.com","name":"vonage_client_media_processing"},{"email":"or.abramovich@vonage.com","name":"or.cpc"},{"email":"lily.lihovodov@vonage.com","name":"llihovodov"},{"email":"daniel.sapir@vonage.com","name":"daniel-sapir"},{"email":"Aviad.Houri@vonage.com","name":"aviadhouri.va"},{"email":"ignacio.delacruz@vonage.com","name":"idelacruz"},{"email":"frontier@vonage.com","name":"vonage-frontier"},{"email":"hila.klein@vonage.com","name":"hilakl"},{"email":"Saurabh.Kulkarni@vonage.com","name":"saurabh.vonage"},{"email":"tamir.nahum@vonage.com","name":"leppelin"},{"email":"antoni.silvestrepadros@vonage.com","name":"asilvonage"},{"email":"Gayathri.Pojula@vonage.com","name":"gpojula"},{"email":"egor.limenko@vonage.com","name":"elimenko.vonage"},{"email":"kanav.bhatia@vonage.com","name":"kanav_vonage"},{"email":"omri.zilber@vonage.com","name":"omrizilber"},{"email":"marceli.olszewski@vonage.com","name":"molszewski_v"},{"email":"sailu.vejella@vonage.com","name":"sailusha"},{"email":"ragul.palanisamy@vonage.com","name":"rpalanisamy-vonage"},{"email":"Valentyn.Bohdan@vonage.com","name":"vbohdan_vonage"},{"email":"andrew.bolles@vonage.com","name":"abolles"},{"email":"gorka.revillafernandez@vonage.com","name":"gorka.vonage"},{"email":"bharath.ps@vonage.com","name":"bharath-vonage"},{"email":"mor.tubul@vonage.com","name":"morvonage"},{"email":"ilan.aradbilavsky@vonage.com","name":"ilan.aradbilavsky.at.vonage.com"},{"email":"chuck.reeves@vonage.com","name":"vonreeves"},{"email":"avi.dantes@vonage.com","name":"avi.dantes"},{"email":"michal.galin@vonage.com","name":"mgalin"},{"email":"jakub.hajduk@vonage.com","name":"jhajduk.vonage"},{"email":"Nitsan.unger@vonage.com","name":"nitsanungerfrontier"},{"email":"vladimir.quezada@vonage.com","name":"vquezada"},{"email":"alessio.didomenico@vonage.com","name":"adidomenico"},{"email":"sathish.r@vonage.com","name":"sathishr-vonage"},{"email":"pamu.pravallika@vonage.com","name":"pravallika-pamu"},{"email":"avijit.bagdi@vonage.com","name":"abagdi"},{"email":"anuradh.lankapalli@vonage.com","name":"anuradhlankapalli"},{"email":"hen.rosenberg@vonage.com","name":"hrosenberg"},{"email":"gokul.narayanan@vonage.com","name":"gokul-vonage"},{"email":"alistair.slowe@vonage.com","name":"aslowe-vcc"},{"email":"vbc-web-cicd@vonage.com","name":"vbc-web-cicd-bot"},{"email":"marina.serranomontes@vonage.com","name":"mserranomontes"},{"email":"Ariel.Bar@vonage.com","name":"ariel12955"},{"email":"Francisco.Becerra@vonage.com","name":"franbecerra"},{"email":"Uri.Haim@vonage.com","name":"urihaim"},{"email":"manuel.veranieto@vonage.com","name":"mvera_vonage"},{"email":"mike.zhylevych@vonage.com","name":"mike.zhylevych"},{"email":"mithun.prabhu@vonage.com","name":"mprabhuvonage"},{"email":"sharad.srivastava@vonage.com","name":"sharad-srivastava2"},{"email":"lukasz.pilarski@vonage.com","name":"lucas_pilarski"},{"email":"manish.ranjan@vonage.com","name":"manish-ranjan07"},{"email":"shubham.rajput@vonage.com","name":"srajput0909"},{"email":"pablo.villenamontes@vonage.com","name":"pvillenamontes"},{"email":"diogo.simoes@vonage.com","name":"dsimoes2"},{"email":"manel.jimeno@vonage.com","name":"manel_vonage"},{"email":"joseantonio.oliveraortega@vonage.com","name":"joliveraortega"}],"readme":"# @vonage/micro-frontends\n\n## About\n\nA simple solution for Micro Frontends orchestration.\n\nUse the MicroFrontendOrchestrator in your host application, along with the MicroFrontendComponent in the hosted components.\nCreate your custom communication API between the host and the hosted components, and use the built in lifecycle events.\nSupported Micro frontend implementations are both Iframe and Web Components (native as well as Vue.js compiled web components). \n\n## Installation\n\n```bash\nnpm install @vonage/micro-frontends\n```\n\n# MicroFrontendOrchestrator (MFO) \n\nUse the MFO to inject and manage multiple instances of your micro frontend components.\n\n## Usage Example\n\n### Injecting a component\nDOM Before Injection:\n```html\n<div id=\"someDiv\"></div>\n```\n\n```javascript\nimport { MicroFrontendOrchestrator as MFO } from '@vonage/micro-frontends';\nconst myComponentDOMId = await MFO.inject('someDiv', 'myComponent', config); // more info on the config object below\nconsole.log(myComponentDOMId); // prints 12345__myComponent\n```\n\nDOM After injection:\n```html\n<div id=\"someDiv\">\n    <iframe id=\"12345__myComponent\" src=\"https://example.com\" />\n</div>\n```\n\n## API\n\n### inject(parentId: string, componentId: string, config: InjectionConfig): instanceId: string\nInjects a new micro frontend application into the DOM.\n#### Arguments\nparentId - the DOM Id of the element into which the micro front end component is injected.   \ncomponentId - An Id/name that represents the injected component.    \nconfig - InjectionConfig, explained below.\n#### return value \ninstanceId - a unique id given to the specific injected component instance.\n\n### show(componentId: string): void\nShows the selected component instance.\nAll sibling DOM nodes are automatically hidden.\n#### Arguments\ncomponentId - the DOM Id of the component instance you to be visible on the DOM.\n\n### remove(componentId: string)\nRemoves an injected component from the DOM.\n#### Arguments\ncomponentId - the DOM Id of the component instance to be shown.\n\n### send(componentId: string, eventId: string, eventName: string, payload: object, error: string)\nSends an event to the application.\n#### Arguments\ncomponentId - the DOM Id of the component instance you wish to send the event to.   \neventId - a unique Id for the event, the MFO will generate it for you if you dont send any value.\nThis argument is used to track responses sent back from hosted components.    \neventName - a name that describes the type of event sent.    \npayload - an object passed along to the hosted component. Do not pass along functions since this object is serialized.\n\n### registerEvent(componentId, eventName, callback)\nSubscribe for any event sent by the selected component instance.\n#### Arguments\ncomponentId - the DOM Id of the component instance from which the event is sent.   \neventName - the name of the event you wish to componentId to.  \ncallback - a function called when the event is triggered.\n\n### unsregisterEvent(componentId, eventName, callback)\nUnsubscribe a previously registered event.\n#### Arguments\ncomponentId - the DOM Id of the component instance from which the event was sent.   \neventName - the name of the event you wish to register to.     \ncallback - a function called when the event is triggered.\n\n### getInstancesIds(componentId: string, parentId?: string): string[]\nGet all instances Ids belonging to a specific componentId.\n#### Arguments\ncomponentId - the original componentId sent when the component was injected.   \nparentId - use this argument to search for all instances of a component under a specific parent element.\n\n### InjectionConfig\n\nThis is the config object used to define the injected component.\n\n```javascript\n{\n  // `type` is the type of micro frontend component you want to inject, either 'iframe' or 'webcomponent'.\n  type: 'webcomponent',\n \n  // `url` is the url used to load the remote resource, either a domain (for iframes), or a js file (for webcomponents).\n  url: 'http://somedomain.com',\n \n  // `customElementTagName` the name of the tag represents the webcomponent or custom element loaded.\n  // Only needed when loading a web component.\n  customElementTagName: 'my-web-component',\n \n  // `customEvents` custom event mapping to their handler functions.\n  //  you can alternatively use the registerEvent function to add custom event handlers later.\n  customEvents: {\n    someCustomEventName: (componentInstanceId, eventId, eventName, payload) => { \n      console.log (componentInstanceId); // The DOM Id of the component that fired the event.\n      console.log (eventId) // The eventId generated by the component, used to identify rhe specific event response.\n      console.log (eventName)\n      console.log (payload)\n    } \n  },\n \n  // `onBeforeInjected` - Function - called before the hosted component is injected into the DOM (also before the needed js code is fetched - for webcomponents).\n  onBeforeInjected: (componentInstanceId) => { } // some custom logic before the component instance is loaded \n \n  // `onAfterInjected` - Function - called right after the hosted component is injected into the DOM\n  onAfterInjected: (componentInstanceId) => { } // some custom logic after the component instance is loaded\n\n  // `onInitialized` - Function - called when the hosted component calls the initialize method, and is usually used to communicate component initialization and token exchange to the hosted component.\n  onInitialized: (componentInstanceId, eventId, ) => {\n    // some initialization logic\n    MFO.send(componentInstanceId, eventId, null, { userToken: '123', otherData: 'abc' }); // Dont forget to send back to the component it's initialization data. This resolves the promise for the 'initialize' method in the hosted component.\n  }\n  \n  // `onReady` - Function - called when the hosted component calls the ready method. Usually when the hosted component is ready to be displayed.\n  onReady: (componentInstanceId, eventId, eventName, isReady) => {\n    // some custom logic.\n    MFO.send(componentInstanceId, eventId, null, 'ACK'); // Dont forget to ack back to the component that it is now dispalyed. This resolves the promise for the 'ready' method in the hosted component.\n  }\n\n  // `onError` - Function - called when the hosted component calls the ready method, or a global error occurred in the hosted component's content window(iframe only).\n  // Used to show a generic error screen instead of the hosted component, and report errors for the host application.\n  onError: (componentInstanceId, eventId) => { \n    // handle errors\n  }\n\n  // `onTerminate` - Function - called when the hosted component whishes to be terminated.\n  onTerminate: (componentInstanceId, eventId) => {\n    // Any custom logic.\n    MFO.remove(componentInstanceId);\n  }\n\n  // `onBeforeRemoved` - Function - called right before the hosted component is removed from the DOM.\n  onBeforeRemoved: (componentInstanceId, eventId) => { }\n\n  // `onRemoved`- Function - called after a hosted component is removed from the DOM.\n  onRemoved: (componentInstanceId, eventId) => { }\n}\n```\n\n# MicroFrontendComponent (MFC)\n  \nUse the MFC in your micro frontend components to report basic lifecycle events, send custom events and subscribe to host custom events.\n\n## Usage Example\n\n```javascript\nimport { MicroFrontendComponent } from '@vonage/micro-frontends';\n\nconst mfc = new MicroFrontendComponent();\nconst initialData = await mfc.initialize(); // get some inital data from the host app\n// do some verification on your end...\nverifyInitialData(initialData);\n// your component is ready to be presented.\nawait mfc.ready();\n// your component is now displayed.\n```\n\n## API\n\nAll functions (except one) return a Promise.\nAll function accept the options object with the following fields:\n\n- requestTimeout (ms) - The promise is rejected if no answer was received from the host applicaiton after this time. \n Default value is 10 seconds.\n \n More options soon...\n \n### Component Lifecycle\n\n#### initialize\n\nTell the host application you want to initialize a new component.\nThis method is usually used to pass some initial verification data from the host application, such as a token.\n\nParameters: options\nReturns a Promise resolved or rejected with whatever data sent back from the host application.\n\n```javascript\nconst initialData = await mfc.initialize(); // The host application should use the onInitialized hook to respond to this event. \n```\n\n#### ready\n\nTell the host application that the component is ready to be presented.\nCall this function only after the call to the initialize method was successful.\nParameters: options\n\n```javascript\nawait mfc.ready(options); // The host application should use the onReady hook to respond to this event.\n```\n\n#### error\n\nReport an error to the host application.\nParameters: options\n-- error - any\n\n```javascript\nmfc.error(error, options);\n```\n\n#### terminate\n\nAsk the host app to remove the component from the DOM, ending it's lifecycle.\nCall this function only after the call to the initialize method was successful.\n\nParameters: options\n\n```javascript\nmfc.terminate(options);\n````\n\n### Create a custom API between your component and the host application.\n#### createRequest \n\nSends a custom request to the host application.\nThe Promise returned by this function is resolved only when the host app sends back an answer event with the same Id as the event sent by the hosted component.\nThe Promise is rejected when the host app sends an error, or the request times out.\n```javascript\nconst customData = await mfc.createRequest('myCustomEvent', { payload: { field1: '123', field2: '456'} })\n```\n\na more common usage would be to extend the MicroFrontendComponent class and use the createRequest function to expose other functions.\nExample:\n\n```javascript\nclass myComponent extends MicroFrontendComponent {\n    constructor() { super({}); }\n\n    someCustomFunction(arg1, arg2, arg3) {\n        // some custom logic\n        return this.createRequest('someCustomEvent', {payload: { a: arg1, b: arg2, c: arg3 }, requestTimeout: 500})\n    }\n}\n```\nTo resolve or reject the promise, the host applicaiton should:\n1. use the customEvents option to map the event sent by the hosted component to a callback function.\n2. The host callback function should eventually use the mfc.send(eventId, eventName, payload) function to respond to the request.\n\n#### registerEvent\n\nThis is the only function that does not return a Promise.\nUse this function to register to events that were initiated by the host application. \nThe callback is called with the payload sent by the host application.\n \nParameters:\n\n- eventName - the event to be registered to.\n- callBack - function to be executed when the event is sent.\n\n```javascript\nmfc.registerEvent('someCustomEvent', (eventData) => { console.log(eventData) });\n```\n\n## License\n\n[MIT](https://choosealicense.com/licenses/mit/)\n","readmeFilename":"README.md"}