{"_id":"@mirantis/lens-extension-cc","_rev":"80-861449ee412980aaa3e51f18d1fb5e44","name":"@mirantis/lens-extension-cc","dist-tags":{"hackweek":"2.0.0-beta.1","next":"3.0.0-beta.1","alpha":"4.0.0-alpha.4","beta":"4.0.0-beta.1","latest":"5.6.0"},"versions":{"1.0.0":{"name":"@mirantis/lens-extension-cc","version":"1.0.0","_id":"@mirantis/lens-extension-cc@1.0.0","maintainers":[{"name":"stevejr","email":"steve.james.richards@gmail.com"},{"name":"msarcher","email":"msarcher@mirantis.com"},{"name":"vikramhh","email":"vikrambirsingh@yahoo.com"},{"name":"o.briukhanov","email":"oleksandr.briukhanov@perfectial.com"},{"name":"infra-ci","email":"infra@mirantis.com"},{"name":"csnider-mirantis","email":"csnider@mirantis.com"},{"name":"nokel81","email":"sebastian@malton.name"},{"name":"cgirard-mir","email":"cgirard@mirantis.com"},{"name":"jehrismann-mir","email":"jehrismann@mirantis.com"},{"name":"emreboga","email":"emreku@yahoo.com"},{"name":"aleksfront","email":"alex.andreev.email@gmail.com"},{"name":"ekhomyakova","email":"ekhomyakova@mirantis.com"},{"name":"stefcameron","email":"stefan@stefcameron.com"},{"name":"mirantis-ci","email":"mirantis-ci-npm@mirantis.com"},{"name":"mirantis_it","email":"it@mirantis.com"}],"dist":{"shasum":"c50b39ca79eabb3bd6d86d4921c5c5d363322b26","tarball":"https://registry.npmjs.org/@mirantis/lens-extension-cc/-/lens-extension-cc-1.0.0.tgz","fileCount":6,"integrity":"sha512-rRAzXtkiQ1riXmuc/7A8mPyjXSNdXU1K2k6f7YhlIaWxqNsjVOZTbIe52+o/ratIUkny88zbmMre6ewcMX//vg==","signatures":[{"sig":"MEUCIH2X4gF08zcbbvlmucXt1miO+xVEyigcickKuzZgk4dnAiEA4WPlAAoH25fsQcgpLrOblYgy8hflwJvSk6VwJtu0IXo=","keyid":"SHA256:jl3bwswu80PjjokCgh0o2w5c2U4LhQAE57gj9cz1kzA"}],"unpackedSize":1359131,"npm-signature":"-----BEGIN PGP SIGNATURE-----\r\nVersion: OpenPGP.js v3.0.13\r\nComment: https://openpgpjs.org\r\n\r\nwsFcBAEBCAAQBQJfrxqsCRA9TVsSAnZWagAARVoP/34ohC64ooFm///En2S1\nyrkwTwedopdjJ+hxUDt3qWIsvht+lp0pyn5tcuwh/D8DZY2g5UyrSd7eUA9G\noKiQMr/ll9EePOgT1SMgcxF8HaDVlWLe0UoL6e732qiZ0MJC0nvLHEmb8WaT\na/8k/MTFIOwgiNK+l+YuXt0ZUaHbMuaANzfULDeqwPwFsaMIVZr4QPU/drOM\nJRsEIdjEspHqoSyNHa7FI8ZnicXXlfaJ/21NtQqCv1h6QJGWShrFneMeYA2S\nPDtye96aOH85H0lk0ihC96IPhuc7Mn+6Y56yGdj/vRCj61AF5vFZqJkEYw05\nLTK++ki8VTRQw0wYk5HDAzIEoego71MltGXg+nfcLnwLcUIoshOB43H561jf\nRs37D4qWvdqN2NWzqDTFbXty9V2Ctx3qDoCOIZk3Ibdmh/raBzccPic3Xznd\nEk14FEpDpbJdj5tTosXffV2nlZ5ZU2umkojxYQZC5xg+RnwlADXmUr3+HONf\nYrY5FPrWjkU8kqSYYqMis7b6YzeVTF6boq69dYnlepOhrItPs2wQWrdHb3CK\nF0hji4Yjnz+v8gAjOVQddcmlN+vQr76KC1DMZzrbTxAzyde6ES3mep3Yv+80\nJfQLby7TPWgtLuq9/F689dKx2Fb+y5wM4RxGGutUrTfSQarOIA05dBxPvMe3\n1u/C\r\n=ia9D\r\n-----END PGP SIGNATURE-----\r\n"},"main":"dist/main.js","engines":{"lens":">= 4.0.0"},"gitHead":"4d18277de96a5af00f9654d6499d3c82a4dad2eb","scripts":{"dev":"TARGET=development npm run build","fmt":"prettier --write \"{*,src/**/*}.+(js|ts*|yml|json)\"","lint":"eslint \"{*,src/**/*}.+(js|ts*)\"","test":"echo 'Works for me! ¯\\_(ツ)_/¯'","build":"npm run clean && webpack","check":"npm run lint && npm run fmt:check","clean":"rm -rf ./dist","start":"TARGET=development npm run build -- --watch","fmt:check":"prettier --check \"{*,src/**/*}.+(js|ts*|yml|json)\"","prepublishOnly":"npm run check && npm test && npm run build"},"_npmUser":{"name":"stefcameron","email":"stefan@stefcameron.com"},"renderer":"dist/renderer.js","publisher":"mirantis","_npmVersion":"7.0.5","description":"Lens extension that loads Mirantis Container Cloud clusters.","directories":{},"_nodeVersion":"14.15.0","_hasShrinkwrap":false,"devDependencies":{"react":"^17.0.1","rtvjs":"^2.4.0","webpack":"^4.44.2","electron":"^9.1.2","prettier":"^2.1.2","react-dom":"^17.0.1","ts-loader":"^8.0.4","@babel/cli":"^7.12.1","node-fetch":"^2.6.1","prop-types":"^15.7.2","typescript":"^4.0.3","@babel/core":"^7.12.3","@types/node":"^12.0.0","webpack-cli":"^3.3.11","@types/react":"^16.9.35","babel-eslint":"^10.1.0","babel-loader":"^8.1.0","query-string":"^6.13.6","@emotion/core":"^10.0.35","@emotion/styled":"^10.0.27","emotion-theming":"^10.0.27","@babel/preset-env":"^7.12.1","@babel/preset-react":"^7.12.1","@k8slens/extensions":"^4.0.0-beta.2","@types/react-router":"^5.1.8","babel-plugin-lodash":"^3.3.4","eslint-plugin-react":"^7.21.5","@emotion/styled-base":"^10.0.31","eslint-config-prettier":"^6.14.0","@typescript-eslint/parser":"^4.6.0","eslint-plugin-react-hooks":"^4.2.0","babel-plugin-module-resolver":"^4.0.0","@emotion/babel-preset-css-prop":"^10.0.27","@typescript-eslint/eslint-plugin":"^4.6.0","@babel/plugin-transform-react-jsx":"^7.10.4","@babel/plugin-proposal-class-properties":"^7.12.1"},"_npmOperationalInternal":{"tmp":"tmp/lens-extension-cc_1.0.0_1605311147535_0.5360862080031428","host":"s3://npm-registry-packages"}},"1.0.1":{"name":"@mirantis/lens-extension-cc","version":"1.0.1","license":"MIT","_id":"@mirantis/lens-extension-cc@1.0.1","maintainers":[{"name":"stevejr","email":"steve.james.richards@gmail.com"},{"name":"msarcher","email":"msarcher@mirantis.com"},{"name":"vikramhh","email":"vikrambirsingh@yahoo.com"},{"name":"o.briukhanov","email":"oleksandr.briukhanov@perfectial.com"},{"name":"infra-ci","email":"infra@mirantis.com"},{"name":"csnider-mirantis","email":"csnider@mirantis.com"},{"name":"nokel81","email":"sebastian@malton.name"},{"name":"cgirard-mir","email":"cgirard@mirantis.com"},{"name":"jehrismann-mir","email":"jehrismann@mirantis.com"},{"name":"emreboga","email":"emreku@yahoo.com"},{"name":"aleksfront","email":"alex.andreev.email@gmail.com"},{"name":"ekhomyakova","email":"ekhomyakova@mirantis.com"},{"name":"stefcameron","email":"stefan@stefcameron.com"},{"name":"mirantis-ci","email":"mirantis-ci-npm@mirantis.com"},{"name":"mirantis_it","email":"it@mirantis.com"}],"dist":{"shasum":"4b0f86d3a2046c22e0fb5f015814642de9fbf711","tarball":"https://registry.npmjs.org/@mirantis/lens-extension-cc/-/lens-extension-cc-1.0.1.tgz","fileCount":6,"integrity":"sha512-saK7QBPRGe9ZW0SY+3jgj0ykram2EG/O9rJczpLM+VgSUO60GsRQb8V36AjfxckgJSo4m+o5Jm3koduLlH63ag==","signatures":[{"sig":"MEQCICLM23U+ibo1BxF6TP0jju+HSIrE0TrstHleS5SJ9EvAAiAZWGJT4AlWHp6XDBsGEcCYg9Fe5YbsVP2qLe364c2nrg==","keyid":"SHA256:jl3bwswu80PjjokCgh0o2w5c2U4LhQAE57gj9cz1kzA"}],"unpackedSize":1360076,"npm-signature":"-----BEGIN PGP SIGNATURE-----\r\nVersion: OpenPGP.js v3.0.13\r\nComment: https://openpgpjs.org\r\n\r\nwsFcBAEBCAAQBQJfryT6CRA9TVsSAnZWagAAnj8P/iO0yn5a6Kl/XQ5Y7v6X\nZgmQdu4LshpjyRgVXUzeEDp+BIrK5i3si6qmaFkRzPbzmZLn5ryDIlktMfij\nxeF2LH3QguOpFhuydsup+IMq7By4dzCl839llcX0KYoBu7sQo+Jo8oDtrwvC\nl5gXeV12EpRGm5UurX/AkWS5qrOtzSwcca2rYExKd7fCSOp7uxkZxboYHM5M\n5rLY+IcIR2l/0pAnXvy3M3l4h4j0mcze5+tth6ABqF11AfQWYBK/R5/8sXrb\nJAA1SA7lVx018hChLC2PWBvWx8RLBD2MnkRh+8XlXH2UosIqFyCTCSkasbNq\nJwUGdDZY724rikNbP09RDIsMJxgB4NdBsdpRT4heote0e7vVY73Y93g9TgVz\nP28HDgphJ+hqbEZS/HZqOPXLu0VUQegiqs/GmrPecXDvhS/CVjTI5H2T+EP5\nsjXFjsfCHerAgqCdSMY3HStFegOp3Vt9tjDABjaxSTYjfk5VmiTONd++4sW9\nFKO+taYDUZYpi37Us98EMDp3GdTMI6EU+z5qaYkptNY6bn0ZRxa+Hq6h51u0\nee5FSE2LkpQjhjYiB8QPNgo7SB47UiBSWag3Q6ZV8RIVrjJRYOUFIJJ/RfF8\nuc+AL+r+R1+IT1BpQk3luydRBk20CCvyfNUFk7VN/2wwLeqrw4HSWoFeFERe\nABZB\r\n=hKuZ\r\n-----END PGP SIGNATURE-----\r\n"},"main":"dist/main.js","engines":{"lens":">= 4.0.0"},"gitHead":"1f3f5e9164a70e1dc9a975d82220eb34f6ed895d","scripts":{"dev":"TARGET=development npm run build","fmt":"prettier --write \"{*,src/**/*}.+(js|ts*|yml|json)\"","lint":"eslint \"{*,src/**/*}.+(js|ts*)\"","test":"echo 'Works for me! ¯\\_(ツ)_/¯'","build":"npm run clean && webpack","check":"npm run lint && npm run fmt:check","clean":"rm -rf ./dist","start":"TARGET=development npm run build -- --watch","fmt:check":"prettier --check \"{*,src/**/*}.+(js|ts*|yml|json)\"","prepublishOnly":"npm run check && npm test && npm run build"},"_npmUser":{"name":"stefcameron","email":"stefan@stefcameron.com"},"renderer":"dist/renderer.js","publisher":"mirantis","_npmVersion":"7.0.5","description":"Lens extension that loads Mirantis Container Cloud clusters.","directories":{},"_nodeVersion":"14.15.0","_hasShrinkwrap":false,"devDependencies":{"react":"^17.0.1","rtvjs":"^2.4.0","webpack":"^4.44.2","electron":"^9.1.2","prettier":"^2.1.2","react-dom":"^17.0.1","ts-loader":"^8.0.4","@babel/cli":"^7.12.1","node-fetch":"^2.6.1","prop-types":"^15.7.2","typescript":"^4.0.3","@babel/core":"^7.12.3","@types/node":"^12.0.0","webpack-cli":"^3.3.11","@types/react":"^16.9.35","babel-eslint":"^10.1.0","babel-loader":"^8.1.0","query-string":"^6.13.6","@emotion/core":"^10.0.35","@emotion/styled":"^10.0.27","emotion-theming":"^10.0.27","@babel/preset-env":"^7.12.1","@babel/preset-react":"^7.12.1","@k8slens/extensions":"^4.0.0-beta.2","@types/react-router":"^5.1.8","babel-plugin-lodash":"^3.3.4","eslint-plugin-react":"^7.21.5","@emotion/styled-base":"^10.0.31","eslint-config-prettier":"^6.14.0","@typescript-eslint/parser":"^4.6.0","eslint-plugin-react-hooks":"^4.2.0","babel-plugin-module-resolver":"^4.0.0","@emotion/babel-preset-css-prop":"^10.0.27","@typescript-eslint/eslint-plugin":"^4.6.0","@babel/plugin-transform-react-jsx":"^7.10.4","@babel/plugin-proposal-class-properties":"^7.12.1"},"_npmOperationalInternal":{"tmp":"tmp/lens-extension-cc_1.0.1_1605313785951_0.46917269935888495","host":"s3://npm-registry-packages"}},"1.0.2":{"name":"@mirantis/lens-extension-cc","version":"1.0.2","keywords":["lens","mirantis","cluster"],"author":{"url":"https://github.com/stefcameron","name":"Stefan Cameron"},"license":"MIT","_id":"@mirantis/lens-extension-cc@1.0.2","maintainers":[{"name":"stevejr","email":"steve.james.richards@gmail.com"},{"name":"msarcher","email":"msarcher@mirantis.com"},{"name":"vikramhh","email":"vikrambirsingh@yahoo.com"},{"name":"o.briukhanov","email":"oleksandr.briukhanov@perfectial.com"},{"name":"infra-ci","email":"infra@mirantis.com"},{"name":"csnider-mirantis","email":"csnider@mirantis.com"},{"name":"nokel81","email":"sebastian@malton.name"},{"name":"cgirard-mir","email":"cgirard@mirantis.com"},{"name":"jehrismann-mir","email":"jehrismann@mirantis.com"},{"name":"emreboga","email":"emreku@yahoo.com"},{"name":"aleksfront","email":"alex.andreev.email@gmail.com"},{"name":"ekhomyakova","email":"ekhomyakova@mirantis.com"},{"name":"stefcameron","email":"stefan@stefcameron.com"},{"name":"mirantis-ci","email":"mirantis-ci-npm@mirantis.com"},{"name":"mirantis_it","email":"it@mirantis.com"}],"homepage":"https://github.com/Mirantis/lens-extension-cc#readme","bugs":{"url":"https://github.com/Mirantis/lens-extension-cc/issues"},"dist":{"shasum":"6d680f999f88e61e74bb1ebf868a8152df185d93","tarball":"https://registry.npmjs.org/@mirantis/lens-extension-cc/-/lens-extension-cc-1.0.2.tgz","fileCount":6,"integrity":"sha512-XPEXvwJn4kZF3BuVfT9pGRN+gdHLwr1ZN+XadnKk6yVwrIc+MFSxu1OeTV6dLCVXqiZKfZRQ+YZnVV1cU1IKqA==","signatures":[{"sig":"MEYCIQD9JfoLwnD7g3C9D0ImkGdguZlZ0p6Shu/X2kth05CCbAIhAIwROTqR97W3dxDkBX8CLM2KKMHhqDjqOFhaIE7ZYcJT","keyid":"SHA256:jl3bwswu80PjjokCgh0o2w5c2U4LhQAE57gj9cz1kzA"}],"unpackedSize":1361453,"npm-signature":"-----BEGIN PGP SIGNATURE-----\r\nVersion: OpenPGP.js v3.0.13\r\nComment: https://openpgpjs.org\r\n\r\nwsFcBAEBCAAQBQJfsC8wCRA9TVsSAnZWagAAkx0P/AjNbsuzPiCXH/mCg2bp\nf2r85cz93YUBPwYXa4lZ5NPVI06RGaulg0RTLzrmwva8HQfXw5EN0tAuHHp5\nb5jT4iMTB+e5qzOtaU0fmbtK0q21cxtWxF2sd/khy4mbgq4V1g6Wwcoyt8QH\nsVgdYG+UmlBEkLYo3Z/xnbr1GVlZWJQ80GjGUnL7ZHFCUKlPHpO+TXiebNwj\nFM38Nt+o5x6ruxnvo2hxOvpnWr/0Br0sx9b8CoKZwEMj2jbhb8SZaKh7jAJW\nGt4HTIXWQizpTcXL+4lqFlC6Wt6Em0dAx+ICoI90F/HkY92lIRaJqtDgC2l/\nSRNdHm8a5tu1O3sh/4AUjBKc/Gm/ox9sV2WSMkLUi++dXm8TxKV0jXwNuOtv\ndon/YgTdciFlf+bpFri1fXj6Vpyo5w6y0p1aPr/Zigkcb6fLvEp20DuaN9B4\nDgDqXmi0dFAJ1OUzJxXTFeZhGYf01EmH7+tn79vpOBW1vefIMCg4uoY7NkXe\npc2I0SQa/BUN3eRSp6/GSUqnkPGlrI5QmjC2+X7G4248UC+LC4pBHM5fRjcm\nlai7EGc9d3HHuMoqtCRVhvj6/FVKwyr7HyTp0PlTfX75pdOVMrNNrGoVsmQ0\n3LDSjUIY1TxKmyR6FejmaFDZ+lTQaiM1CPxw6ZVudFmuOnN/uKlbtQrRFctD\nLV6T\r\n=yu9D\r\n-----END PGP SIGNATURE-----\r\n"},"main":"dist/main.js","engines":{"lens":">= 4.0.0"},"gitHead":"7f72f748c1b679e8c279248c06d1f09c28294db3","scripts":{"dev":"TARGET=development npm run build","fmt":"prettier --write \"{*,src/**/*}.+(js|ts*|yml|json)\"","lint":"eslint \"{*,src/**/*}.+(js|ts*)\"","test":"echo 'Works for me! ¯\\_(ツ)_/¯'","build":"npm run clean && webpack","check":"npm run lint && npm run fmt:check","clean":"rm -rf ./dist","start":"TARGET=development npm run build -- --watch","fmt:check":"prettier --check \"{*,src/**/*}.+(js|ts*|yml|json)\"","prepublishOnly":"npm run check && npm test && npm run build"},"_npmUser":{"name":"stefcameron","email":"stefan@stefcameron.com"},"renderer":"dist/renderer.js","publisher":"mirantis","repository":{"url":"git+https://github.com/Mirantis/lens-extension-cc.git","type":"git"},"_npmVersion":"7.0.5","description":"Lens extension that loads Mirantis Container Cloud clusters.","directories":{},"_nodeVersion":"14.15.0","_hasShrinkwrap":false,"devDependencies":{"react":"^17.0.1","rtvjs":"^2.4.0","webpack":"^4.44.2","electron":"^9.1.2","prettier":"^2.1.2","react-dom":"^17.0.1","ts-loader":"^8.0.4","@babel/cli":"^7.12.1","node-fetch":"^2.6.1","prop-types":"^15.7.2","typescript":"^4.0.3","@babel/core":"^7.12.3","@types/node":"^12.0.0","webpack-cli":"^3.3.11","@types/react":"^16.9.35","babel-eslint":"^10.1.0","babel-loader":"^8.1.0","query-string":"^6.13.6","@emotion/core":"^10.0.35","@emotion/styled":"^10.0.27","emotion-theming":"^10.0.27","@babel/preset-env":"^7.12.1","@babel/preset-react":"^7.12.1","@k8slens/extensions":"^4.0.0-beta.2","@types/react-router":"^5.1.8","babel-plugin-lodash":"^3.3.4","eslint-plugin-react":"^7.21.5","@emotion/styled-base":"^10.0.31","eslint-config-prettier":"^6.14.0","@typescript-eslint/parser":"^4.6.0","eslint-plugin-react-hooks":"^4.2.0","babel-plugin-module-resolver":"^4.0.0","@emotion/babel-preset-css-prop":"^10.0.27","@typescript-eslint/eslint-plugin":"^4.6.0","@babel/plugin-transform-react-jsx":"^7.10.4","@babel/plugin-proposal-class-properties":"^7.12.1"},"_npmOperationalInternal":{"tmp":"tmp/lens-extension-cc_1.0.2_1605381936316_0.05472026291245169","host":"s3://npm-registry-packages"}},"1.0.3":{"name":"@mirantis/lens-extension-cc","version":"1.0.3","keywords":["lens","mirantis","cluster"],"author":{"url":"https://github.com/stefcameron","name":"Stefan Cameron"},"license":"MIT","_id":"@mirantis/lens-extension-cc@1.0.3","maintainers":[{"name":"stevejr","email":"steve.james.richards@gmail.com"},{"name":"msarcher","email":"msarcher@mirantis.com"},{"name":"vikramhh","email":"vikrambirsingh@yahoo.com"},{"name":"o.briukhanov","email":"oleksandr.briukhanov@perfectial.com"},{"name":"infra-ci","email":"infra@mirantis.com"},{"name":"csnider-mirantis","email":"csnider@mirantis.com"},{"name":"nokel81","email":"sebastian@malton.name"},{"name":"cgirard-mir","email":"cgirard@mirantis.com"},{"name":"jehrismann-mir","email":"jehrismann@mirantis.com"},{"name":"emreboga","email":"emreku@yahoo.com"},{"name":"aleksfront","email":"alex.andreev.email@gmail.com"},{"name":"ekhomyakova","email":"ekhomyakova@mirantis.com"},{"name":"stefcameron","email":"stefan@stefcameron.com"},{"name":"mirantis-ci","email":"mirantis-ci-npm@mirantis.com"},{"name":"mirantis_it","email":"it@mirantis.com"}],"homepage":"https://github.com/Mirantis/lens-extension-cc#readme","bugs":{"url":"https://github.com/Mirantis/lens-extension-cc/issues"},"dist":{"shasum":"4ac36bf841364ceaf407370dae0bbdecac8caa3a","tarball":"https://registry.npmjs.org/@mirantis/lens-extension-cc/-/lens-extension-cc-1.0.3.tgz","fileCount":6,"integrity":"sha512-BnM4LHfrJifqmPtv9sANe2Lx+9W3M/MRSwp1v3X1FeNRJe1QSjwvuUREUN9E7ZykcxdynPvTGJ5Z6hPc7OVDDQ==","signatures":[{"sig":"MEUCIQDcHMw66wxdPUer08N910kRinGbQLGBqHnSU1jR+svW+AIgbzUwcq/axr0bSWvT9t4JeJ2DdJ+a+dfV9Re/wyna5IQ=","keyid":"SHA256:jl3bwswu80PjjokCgh0o2w5c2U4LhQAE57gj9cz1kzA"}],"unpackedSize":1362752,"npm-signature":"-----BEGIN PGP SIGNATURE-----\r\nVersion: OpenPGP.js v3.0.13\r\nComment: https://openpgpjs.org\r\n\r\nwsFcBAEBCAAQBQJfxR4FCRA9TVsSAnZWagAAN2EP/j59ZedLzYTp7NGq7Wsm\nia4V5kg9Z6kIGBua7yQhDv8twcU3b/5YAB7nHgnZXM8ZDr0SeY0hlLwf1cJP\n/NYDzSclBp/mPfxPIV/JJ2AqEjfxE838XtxHzbYc8GmCvnQdp7XJAsOT8xri\nM2i8/c14VC7iw8JA+DicQ7FBery4pcbfJ7l/EoGk+U1RQP2I+voYV6E+0IAU\n24vZc/vgOHIDJt5mOPVx9G32IL+PI5WQ60XPuqivQAJc0tNQLYnaHkN5qksf\nyP1xYdO/fPuzPXp1OulVIDAKcfWn0aNe5HhJnjCEXhmQ4UQqdhhoawZXW0mA\n/pfni8Udq3a939ThtaQYbwuzrkz7VIDz/aCqZBNYPKVEBkD3MyufeRmA5mSI\n9TD8zs/RcQnXETG/BQT+74dx3emtnjsi9pYS0adQEtWfrqdrllg/mHh1kBRX\n8C/wnxwu3ZdZbO60tntQoZCLqWUeHZJpzmExHwuaeXhb/6Q1Q1YPe9GZIJS9\n+nzOwjXkbwgr4ba6z4f9PMnvWu76eEDZ3P/hRId6N4+Y6KWZsYhGgu4Hh8wC\nCCSO/1JUphEBQWzq3TUOlL/CHw/JSZfWX/y108TdtNO1bR4fHpyhib/4bInQ\ndh2cUI/yH5eV/yJ/dm8B0ibWoBePbjuiJgqdn2d7iq/IRnqovebG+7aXzRqf\ntEFp\r\n=wg0x\r\n-----END PGP SIGNATURE-----\r\n"},"main":"dist/main.js","engines":{"lens":">= 4.0.0"},"gitHead":"fc05f4615f7b25a9146a3c708376e7af542dfc5e","scripts":{"dev":"TARGET=development npm run build","fmt":"prettier --write \"{*,src/**/*}.+(js|ts*|yml|json)\"","lint":"eslint \"{*,src/**/*}.+(js|ts*)\"","test":"echo 'Works for me! ¯\\_(ツ)_/¯'","build":"npm run clean && webpack","check":"npm run lint && npm run fmt:check","clean":"rm -rf ./dist","start":"TARGET=development npm run build -- --watch","fmt:check":"prettier --check \"{*,src/**/*}.+(js|ts*|yml|json)\"","prepublishOnly":"npm run check && npm test && npm run build"},"_npmUser":{"name":"stefcameron","email":"stefan@stefcameron.com"},"renderer":"dist/renderer.js","publisher":"mirantis","repository":{"url":"git+https://github.com/Mirantis/lens-extension-cc.git","type":"git"},"_npmVersion":"7.0.5","description":"Lens extension that loads Mirantis Container Cloud clusters.","directories":{},"_nodeVersion":"14.15.0","_hasShrinkwrap":false,"devDependencies":{"react":"^17.0.1","rtvjs":"^2.4.0","webpack":"^4.44.2","electron":"^9.1.2","prettier":"^2.1.2","react-dom":"^17.0.1","ts-loader":"^8.0.4","@babel/cli":"^7.12.1","node-fetch":"^2.6.1","prop-types":"^15.7.2","typescript":"^4.0.3","@babel/core":"^7.12.3","@types/node":"^12.0.0","webpack-cli":"^3.3.11","@types/react":"^16.9.35","babel-eslint":"^10.1.0","babel-loader":"^8.1.0","query-string":"^6.13.6","@emotion/core":"^10.0.35","@emotion/styled":"^10.0.27","emotion-theming":"^10.0.27","@babel/preset-env":"^7.12.1","@babel/preset-react":"^7.12.1","@k8slens/extensions":"^4.0.0-rc.1","@types/react-router":"^5.1.8","babel-plugin-lodash":"^3.3.4","eslint-plugin-react":"^7.21.5","@emotion/styled-base":"^10.0.31","eslint-config-prettier":"^6.14.0","@typescript-eslint/parser":"^4.6.0","eslint-plugin-react-hooks":"^4.2.0","babel-plugin-module-resolver":"^4.0.0","@emotion/babel-preset-css-prop":"^10.0.27","@typescript-eslint/eslint-plugin":"^4.6.0","@babel/plugin-transform-react-jsx":"^7.10.4","@babel/plugin-proposal-class-properties":"^7.12.1"},"_npmOperationalInternal":{"tmp":"tmp/lens-extension-cc_1.0.3_1606753797256_0.35500882512687393","host":"s3://npm-registry-packages"}},"1.0.4":{"name":"@mirantis/lens-extension-cc","version":"1.0.4","keywords":["lens","mirantis","cluster"],"author":{"url":"https://github.com/stefcameron","name":"Stefan Cameron"},"license":"MIT","_id":"@mirantis/lens-extension-cc@1.0.4","maintainers":[{"name":"stevejr","email":"steve.james.richards@gmail.com"},{"name":"msarcher","email":"msarcher@mirantis.com"},{"name":"vikramhh","email":"vikrambirsingh@yahoo.com"},{"name":"o.briukhanov","email":"oleksandr.briukhanov@perfectial.com"},{"name":"infra-ci","email":"infra@mirantis.com"},{"name":"csnider-mirantis","email":"csnider@mirantis.com"},{"name":"nokel81","email":"sebastian@malton.name"},{"name":"cgirard-mir","email":"cgirard@mirantis.com"},{"name":"jehrismann-mir","email":"jehrismann@mirantis.com"},{"name":"emreboga","email":"emreku@yahoo.com"},{"name":"aleksfront","email":"alex.andreev.email@gmail.com"},{"name":"ekhomyakova","email":"ekhomyakova@mirantis.com"},{"name":"stefcameron","email":"stefan@stefcameron.com"},{"name":"mirantis-ci","email":"mirantis-ci-npm@mirantis.com"},{"name":"mirantis_it","email":"it@mirantis.com"}],"homepage":"https://github.com/Mirantis/lens-extension-cc#readme","bugs":{"url":"https://github.com/Mirantis/lens-extension-cc/issues"},"dist":{"shasum":"30dc21c33852dc6cd1671b1238d0e866fbc3f6ae","tarball":"https://registry.npmjs.org/@mirantis/lens-extension-cc/-/lens-extension-cc-1.0.4.tgz","fileCount":6,"integrity":"sha512-MPzIyIja0ZmrV5OGaJuvwO9zUDkbPdIxhMFHTxmqxN2O+wjz27ofNpWFpYVWZv/2XGQVTM2ZRPeoKx0VRV+Zvw==","signatures":[{"sig":"MEQCIBijAhGDAXnBTH6jBln9yWtIIkYEyGVRt7/X8LZwuNeaAiA8zCrIBVA01AQ1KfR6U5cdKh+0WawNswvhM7mn1Cga9w==","keyid":"SHA256:jl3bwswu80PjjokCgh0o2w5c2U4LhQAE57gj9cz1kzA"}],"unpackedSize":1356840,"npm-signature":"-----BEGIN PGP SIGNATURE-----\r\nVersion: OpenPGP.js v3.0.13\r\nComment: https://openpgpjs.org\r\n\r\nwsFcBAEBCAAQBQJfxU9uCRA9TVsSAnZWagAAogkP/i6brGfZw6c3fcmjUfvx\nd6Kdo0UbTajBf9vNVHjo7nRc++dF+5Z3ScjxvjRA8pzxxhtdo0DZcoJCbxhn\nV2TAPCWQyk5AY6REiU1YIas9Z21i+Cx0WQdab0QtB7wDYqwwrJT7EukA3GKf\ntJZFxcC0AZQSqwgePTFEi9CQsLPjgXyC8TacMX9mMfRQ4yf50Q7/Z7r7e357\nl7FxgwdAjOCu9hHUpdjciiGzWFD6MlEOYVHFKXFqxhNWnyzINW2sJIAfdXFh\nc6Ns4JkjhAPsXD4Qb/2oipnXDWks6qdjoHaYWzkeh9mFxx/2y2P9n+Nhhhb2\nzcZLImIQ/PCAxZCkXj652SBVjngla83Ga383GGETXV5FqYU9C5yh/8l8ra2Z\nUT0t5eC15CB8hh8KXTpSHk2o0jIWzd+iz21C7q5a4FuShnfAUQn8sjAPXU1/\n9bw8l18sCSH0xxTSkqt2e34Za5mE+IZHSrZyEV+NkhTEqwH57riqGQpHx5fZ\n32pbjyftV5I/nsI6ftuAJBywUvhxyUko4OLzWp2JP8cD3JZLjlRU230q95gx\nBA79nKNDX4U9LQHrCPFCRxw5b+WLvRwQvy/nBoH2hk9IHNQ4D11SJBtkOBS+\n32QjGxlbGA8JJZpLQwqkwrioVCKQOwdP/SzcZ2NntFfL4fneARjk11JL45dg\n8mpm\r\n=o1hK\r\n-----END PGP SIGNATURE-----\r\n"},"main":"dist/main.js","engines":{"lens":">= 4.0.0"},"gitHead":"eed52f74e20c85012755b383ecd183847965d20e","scripts":{"dev":"TARGET=development npm run build","fmt":"prettier --write \"{*,src/**/*}.+(js|ts*|yml|json)\"","lint":"eslint \"{*,src/**/*}.+(js|ts*)\"","test":"echo 'Works for me! ¯\\_(ツ)_/¯'","build":"npm run clean && webpack","check":"npm run lint && npm run fmt:check","clean":"rm -rf ./dist","start":"TARGET=development npm run build -- --watch","fmt:check":"prettier --check \"{*,src/**/*}.+(js|ts*|yml|json)\"","prepublishOnly":"npm run check && npm test && npm run build"},"_npmUser":{"name":"stefcameron","email":"stefan@stefcameron.com"},"renderer":"dist/renderer.js","publisher":"mirantis","repository":{"url":"git+https://github.com/Mirantis/lens-extension-cc.git","type":"git"},"_npmVersion":"7.0.5","description":"Lens extension that loads Mirantis Container Cloud clusters.","directories":{},"_nodeVersion":"14.15.0","_hasShrinkwrap":false,"devDependencies":{"react":"^17.0.1","rtvjs":"^2.4.0","webpack":"^4.44.2","electron":"^9.1.2","prettier":"^2.1.2","react-dom":"^17.0.1","ts-loader":"^8.0.4","@babel/cli":"^7.12.1","node-fetch":"^2.6.1","prop-types":"^15.7.2","typescript":"^4.0.3","@babel/core":"^7.12.3","@types/node":"^12.0.0","webpack-cli":"^3.3.11","@types/react":"^16.9.35","babel-eslint":"^10.1.0","babel-loader":"^8.1.0","query-string":"^6.13.6","@emotion/core":"^10.0.35","@emotion/styled":"^10.0.27","emotion-theming":"^10.0.27","@babel/preset-env":"^7.12.1","@babel/preset-react":"^7.12.1","@k8slens/extensions":"^4.0.0-rc.1","@types/react-router":"^5.1.8","babel-plugin-lodash":"^3.3.4","eslint-plugin-react":"^7.21.5","@emotion/styled-base":"^10.0.31","eslint-config-prettier":"^6.14.0","@typescript-eslint/parser":"^4.6.0","eslint-plugin-react-hooks":"^4.2.0","babel-plugin-module-resolver":"^4.0.0","@emotion/babel-preset-css-prop":"^10.0.27","@typescript-eslint/eslint-plugin":"^4.6.0","@babel/plugin-transform-react-jsx":"^7.10.4","@babel/plugin-proposal-class-properties":"^7.12.1"},"_npmOperationalInternal":{"tmp":"tmp/lens-extension-cc_1.0.4_1606766445975_0.7247334826755296","host":"s3://npm-registry-packages"}},"1.0.5":{"name":"@mirantis/lens-extension-cc","version":"1.0.5","keywords":["lens","mirantis","cluster"],"author":{"url":"https://github.com/stefcameron","name":"Stefan Cameron"},"license":"MIT","_id":"@mirantis/lens-extension-cc@1.0.5","maintainers":[{"name":"stevejr","email":"steve.james.richards@gmail.com"},{"name":"msarcher","email":"msarcher@mirantis.com"},{"name":"vikramhh","email":"vikrambirsingh@yahoo.com"},{"name":"o.briukhanov","email":"oleksandr.briukhanov@perfectial.com"},{"name":"infra-ci","email":"infra@mirantis.com"},{"name":"csnider-mirantis","email":"csnider@mirantis.com"},{"name":"nokel81","email":"sebastian@malton.name"},{"name":"cgirard-mir","email":"cgirard@mirantis.com"},{"name":"jehrismann-mir","email":"jehrismann@mirantis.com"},{"name":"emreboga","email":"emreku@yahoo.com"},{"name":"aleksfront","email":"alex.andreev.email@gmail.com"},{"name":"ekhomyakova","email":"ekhomyakova@mirantis.com"},{"name":"stefcameron","email":"stefan@stefcameron.com"},{"name":"mirantis-ci","email":"mirantis-ci-npm@mirantis.com"},{"name":"mirantis_it","email":"it@mirantis.com"}],"homepage":"https://github.com/Mirantis/lens-extension-cc#readme","bugs":{"url":"https://github.com/Mirantis/lens-extension-cc/issues"},"dist":{"shasum":"9c292bbcd7274e86f92234a365df557a728f9309","tarball":"https://registry.npmjs.org/@mirantis/lens-extension-cc/-/lens-extension-cc-1.0.5.tgz","fileCount":6,"integrity":"sha512-5C8dCQhRymcwDzYnmV8V4o4fa7s1VPC6UCJ2H3uKmRmnbqW4lrVmNjg16fpzmD3hRLiIfgFKXbUfu/UPMpNGAw==","signatures":[{"sig":"MEQCIGcePR3xdJPh6R3/6yv7d3ib66eIQixND73Ur7xVgNfCAiAwbXZA89ZectwwXzTBw0bL4512kbHsFKRP7g5UHDPcYg==","keyid":"SHA256:jl3bwswu80PjjokCgh0o2w5c2U4LhQAE57gj9cz1kzA"}],"unpackedSize":1357047,"npm-signature":"-----BEGIN PGP SIGNATURE-----\r\nVersion: OpenPGP.js v3.0.13\r\nComment: https://openpgpjs.org\r\n\r\nwsFcBAEBCAAQBQJfztCjCRA9TVsSAnZWagAAnTkQAIemX5o3XwJGNEvdi1UX\n3bkbdsuEhVvm/kx3P9cS/U2WH9rFZu+0OKOV/3g9N+eNSYQ64QVc6ODos6Lt\nGGG2WtRJq/ZojcIvJcCcnLEs/fK19/Dhp2rLeo4ChfQGzfirbmXKwXtmaSHz\nBOQ2ybVvnNuNnxP/0WNTqg6IlTolWtLVnSvCMYoy61LKlN/IJ8volXp9jNpJ\ndoMcjGupGwe0Ak1D9ZKI1yfCwcdp21r8gGknvOuUynQY2i70Tgs4oc4JKwXt\nDiuc4Fj5307C0sWTltE8XcaANrKB1q5zO8AFLlKvN6jpXdAAh5lN29LUgQdw\nRMS3vMmc7QrcIq8a1LzJAeStmN8rdR54fjnnTcd2q5b64A1xEtr5uudLIQng\nmjFA52cqQblPFOtj91816sa5UWZ1yk0aveEa5+Ax3iQBdGF6MEVpoTvmHt5k\n5Iusr+dNNYsfkNfNTvfXUGvQguyNCOSvuSXslcyucbfSYUYIk851l/zHSPE2\nfO6vTNb1hktOu9QcRqrDL0JndATCdYTdT2Q85epcYqSJlT8zU05z4Vg3WiYh\nv3eSJYLhlmmOCgT4xcItJleJU/vTf6XsI8v+0qQArr75jBQ2OW5ndu3UJtS6\nnDa0aK/Gl/1qzNZlRR52pEgGa3uwCn3ztURjsP8nuYJNhmgFpOpHzVK7gSd6\nAQyL\r\n=wlZu\r\n-----END PGP SIGNATURE-----\r\n"},"main":"dist/main.js","engines":{"lens":">= 4.0.0"},"gitHead":"1501394f138b76ce483f5546671a7b6643e61942","scripts":{"dev":"TARGET=development npm run build","fmt":"prettier --write \"{*,src/**/*}.+(js|ts*|yml|json)\"","lint":"eslint \"{*,src/**/*}.+(js|ts*)\"","test":"npm run check && npm run test:unit","build":"npm run clean && webpack","check":"npm run lint && npm run fmt:check","clean":"rm -rf ./dist","start":"TARGET=development npm run build -- --watch","fmt:check":"prettier --check \"{*,src/**/*}.+(js|ts*|yml|json)\"","test:unit":"echo 'Works for me! ¯\\_(ツ)_/¯'","prepublishOnly":"npm run check && npm test && npm run build"},"_npmUser":{"name":"stefcameron","email":"stefan@stefcameron.com"},"renderer":"dist/renderer.js","publisher":"mirantis","repository":{"url":"git+https://github.com/Mirantis/lens-extension-cc.git","type":"git"},"_npmVersion":"7.0.5","description":"Lens extension that loads Mirantis Container Cloud clusters.","directories":{},"_nodeVersion":"14.15.0","_hasShrinkwrap":false,"devDependencies":{"react":"^17.0.1","rtvjs":"^2.4.0","webpack":"^4.44.2","electron":"^9.1.2","prettier":"^2.1.2","react-dom":"^17.0.1","ts-loader":"^8.0.4","@babel/cli":"^7.12.1","node-fetch":"^2.6.1","prop-types":"^15.7.2","typescript":"^4.0.3","@babel/core":"^7.12.3","@types/node":"^12.0.0","webpack-cli":"^3.3.11","@types/react":"^16.9.35","babel-eslint":"^10.1.0","babel-loader":"^8.1.0","query-string":"^6.13.6","@emotion/core":"^10.0.35","@emotion/styled":"^10.0.27","emotion-theming":"^10.0.27","@babel/preset-env":"^7.12.1","@babel/preset-react":"^7.12.1","@k8slens/extensions":"^4.0.0","@types/react-router":"^5.1.8","babel-plugin-lodash":"^3.3.4","eslint-plugin-react":"^7.21.5","@emotion/styled-base":"^10.0.31","eslint-config-prettier":"^6.14.0","@typescript-eslint/parser":"^4.6.0","eslint-plugin-react-hooks":"^4.2.0","babel-plugin-module-resolver":"^4.0.0","@emotion/babel-preset-css-prop":"^10.0.27","@typescript-eslint/eslint-plugin":"^4.6.0","@babel/plugin-transform-react-jsx":"^7.10.4","@babel/plugin-proposal-class-properties":"^7.12.1"},"_npmOperationalInternal":{"tmp":"tmp/lens-extension-cc_1.0.5_1607389346728_0.5324018215051409","host":"s3://npm-registry-packages"}},"2.0.0-alpha.0":{"name":"@mirantis/lens-extension-cc","version":"2.0.0-alpha.0","keywords":["lens","mirantis","cluster"],"author":{"url":"https://github.com/stefcameron","name":"Stefan Cameron"},"license":"MIT","_id":"@mirantis/lens-extension-cc@2.0.0-alpha.0","maintainers":[{"name":"stevejr","email":"steve.james.richards@gmail.com"},{"name":"msarcher","email":"msarcher@mirantis.com"},{"name":"vikramhh","email":"vikrambirsingh@yahoo.com"},{"name":"o.briukhanov","email":"oleksandr.briukhanov@perfectial.com"},{"name":"infra-ci","email":"infra@mirantis.com"},{"name":"csnider-mirantis","email":"csnider@mirantis.com"},{"name":"nokel81","email":"sebastian@malton.name"},{"name":"cgirard-mir","email":"cgirard@mirantis.com"},{"name":"jehrismann-mir","email":"jehrismann@mirantis.com"},{"name":"emreboga","email":"emreku@yahoo.com"},{"name":"aleksfront","email":"alex.andreev.email@gmail.com"},{"name":"ekhomyakova","email":"ekhomyakova@mirantis.com"},{"name":"stefcameron","email":"stefan@stefcameron.com"},{"name":"mirantis-ci","email":"mirantis-ci-npm@mirantis.com"},{"name":"mirantis_it","email":"it@mirantis.com"}],"homepage":"https://github.com/Mirantis/lens-extension-cc#readme","bugs":{"url":"https://github.com/Mirantis/lens-extension-cc/issues"},"dist":{"shasum":"079c0f524a61411ee21317df35d34ecaa5c7162c","tarball":"https://registry.npmjs.org/@mirantis/lens-extension-cc/-/lens-extension-cc-2.0.0-alpha.0.tgz","fileCount":6,"integrity":"sha512-Z6UlFNYMvhXt+BjGMur3tW151o/jQHs1XH7/IlP6qlrvm25yVqWNqVGCaRHB28Q1N4/k8CxBI7X51xhwtVglDA==","signatures":[{"sig":"MEUCIAbczmeyVpIDQbpJrnQaCxDsdIzeWtyhFLMfIV4YYXGKAiEAlVwb8pgKAWCgfgpG8RnTNgGe8SnWNqx/Ct5QEbUtT00=","keyid":"SHA256:jl3bwswu80PjjokCgh0o2w5c2U4LhQAE57gj9cz1kzA"}],"unpackedSize":1447601,"npm-signature":"-----BEGIN PGP SIGNATURE-----\r\nVersion: OpenPGP.js v3.0.13\r\nComment: https://openpgpjs.org\r\n\r\nwsFcBAEBCAAQBQJf0mmICRA9TVsSAnZWagAAIwcP/jgEIWFFgVLvK35How+f\nSCeglWrKiPpoqzyXjlgLBhj+AybbYG5r+o77i2QyjwWuv1PxsWNtAPK1dicg\nHUqS4NDd9uV7WRgGar/iFs5IeeWAs885f1V5d4xwZyk/TVb0kvVuhc9nIacV\nxEGwuRR/Pq7b6eUxXB7J93BRz0W/H8/rPWhJZbbZEjpzToRWmZyJhSJGfepH\nBT650HjWTy8eK4wHRbZuKwT5JlBWhSSthNnV2LLwBHVbiD9A2ljvHQyQaQnO\nabC4E/TpS0CiTYEzH7r+IjCfGIDTH+5UiWGyAgfChpcV96vruPhQoWqHKssx\nyB0My4bmyabg4iPfnZinvQVZablpkDPh5B/cuakWm1kGnS+2HprpvbIdMhS6\nJBKLwlzlra6HtISyjPYMwyUfgl1VfxVmUgO+WoyjRc/RBy4+0hokcx1f79DG\njIvDNJKStqSjU6fwXpjURc1C60kc0/3Q6DhRqdVkKh1OqjM/qmjXBb9pVimK\n3q+qn+NmkYOvjHXpfrztwSlv+qpLwzj/bsXCbsr6okP7QCc0UdPDE2xIzSLH\nfL1bQbWfsE6cyO8D6fpuY48q25Gq7BxY4f+l46CpilbwbqoR6ETHzBAW8iaW\nvqVQxAPeFAvX8U/kHCezjogVmR0iRqqPPFeMcutmcpzd6vfBjZsA7+QSF0Iw\n3Qlk\r\n=ttTl\r\n-----END PGP SIGNATURE-----\r\n"},"main":"dist/main.js","readme":"# Mirantis Container Cloud Lens Extension\n\n![CI](https://github.com/Mirantis/lens-extension-cc/workflows/CI/badge.svg?branch=master&event=push)\n\nThis [Lens](https://k8slens.dev/) Extension adds a status bar item, and a menu item, that makes it easy to connect Lens to a Mirantis Container Cloud instance and add its clusters to Lens.\n\n![Extension UI](./docs/screen-shot.png)\n\n## Installation\n\nThese instructions will help you install the extension for direct use with Lens. Follow the [development](#development) instructions below if you intend to work on the extension to improve it.\n\n> NPM 6 or later is required to use the [npm pack](https://docs.npmjs.com/cli/v6/commands/npm-pack) command.\n\nFirst, quit Lens if it's currently running, then:\n\n```bash\n# download tar file without installing it\n$ npm pack @mirantis/lens-extension-cc\n\n# create the directory from which Lens will load the extension on start-up\n$ mkdir -p ~/.k8slens/extensions/lens-extension-cc\n\n# extract the contents of the NPM tarball directly into this directory (replace\n#  `VERSION` with the actual version in the name of the file previously downloaded)\n# NOTE: the '--strip-components=1' part is important to make sure files end-up\n#  where they're supposed to\n$ tar -xf mirantis-lens-extension-cc-VERSION.tgz \\\n  -C ~/.k8slens/extensions/lens-extension-cc/ --strip-components=1\n```\n\nStart Lens. You should now be able to choose the new `File > Add Cloud Cluster` menu item, or click on the `Add Cloud Cluster` status bar item (far right side of the status bar at the bottom of the app), to get started.\n\n## Upgrade\n\nTo upgrade to a newer release, quit Lens, and delete the current extension:\n\n```bash\n$ rm -rf ~/.k8slens/extensions/lens-extension-cc\n```\n\nThen follow the [installation](#installation) instructions again.\n\n## Development\n\n> NPM 7.x is __required__ since `package-lock.json` uses the v2 format. NPM <= 6 uses the older v1 format.\n\nRather than cloning the repository into `~/.k8slens/extensions/lens-extension-cc`, clone the repository wherever you prefer to have your code, and then link to it:\n\n```bash\n$ git clone https://github.com/Mirantis/lens-extension-cc.git /your/src/path\n$ mkdir -p ~/.k8slens/extensions\n$ ln -s /your/src/path ~/.k8slens/extensions/lens-extension-cc\n$ cd /your/src/path\n$ npm install\n$ npm start\n```\n\nThis will put the development build into watch mode.\n\nRestart Lens to load the extension for the first time. Now, as you make source changes, the build will run, and all you need to do is reload the Lens window (`CMD+R` on macOS) to see your changes.\n\nYou can also run a one-off development build with `npm run dev`.\n\n## Publishing\n\nFirst, __update the CHANGELOG__, then:\n\n```bash\n$ npm version <patch|minor|major>\n$ npm publish --access public        # <- NOTE the '--access public' part!\n$ git push && git push --tags\n```\n\n> By default, packages published to an NPM scope/org are __private__. Use the `--access public` option to publish it as a public package instead. You can also [configure NPM](https://docs.npmjs.com/configuring-your-npm-client-with-your-organization-settings#setting-package-visibility-to-public-for-a-single-package) to always publish that single package publicly by running `npm config set access public` within the repository root directory (i.e. package root).\n\nThe `prepublishOnly` script will automatically produce a production build in the `./dist` directory, which will be published.\n","engines":{"lens":">= 4.0.0"},"gitHead":"bae1af12a9294f1dc458010b07e43473a0124a6d","scripts":{"dev":"TARGET=development npm run build","fmt":"prettier --write \"{*,src/**/*}.+(js|ts*|yml|json)\"","lint":"eslint \"{*,src/**/*}.+(js|ts*)\"","test":"npm run check && npm run test:unit","build":"npm run clean && webpack","check":"npm run lint && npm run fmt:check","clean":"rm -rf ./dist","start":"TARGET=development npm run build -- --watch","fmt:check":"prettier --check \"{*,src/**/*}.+(js|ts*|yml|json)\"","test:unit":"echo 'Works for me! ¯\\_(ツ)_/¯'","prepublishOnly":"npm test && npm run build"},"_npmUser":{"name":"stefcameron","email":"stefan@stefcameron.com"},"renderer":"dist/renderer.js","publisher":"mirantis","repository":{"url":"git+https://github.com/Mirantis/lens-extension-cc.git","type":"git"},"_npmVersion":"7.0.5","description":"Lens extension that loads Mirantis Container Cloud clusters.","directories":{},"_nodeVersion":"14.15.0","_hasShrinkwrap":false,"readmeFilename":"README.md","devDependencies":{"mobx":"^6.0.4","react":"^17.0.1","rtvjs":"^2.4.0","webpack":"^5.10.0","electron":"^9.3.5","prettier":"^2.2.1","react-dom":"^17.0.1","ts-loader":"^8.0.11","@babel/cli":"^7.12.8","node-fetch":"^2.6.1","prop-types":"^15.7.2","typescript":"^4.1.2","@babel/core":"^7.12.9","@types/node":"^14.14.10","webpack-cli":"^4.2.0","@types/react":"^17.0.0","babel-eslint":"^10.1.0","babel-loader":"^8.2.2","query-string":"^6.13.7","@emotion/core":"^10.0.35","@emotion/styled":"^10.0.27","emotion-theming":"^10.0.27","@babel/preset-env":"^7.12.7","@babel/preset-react":"^7.12.7","@k8slens/extensions":"^4.0.0","@types/react-router":"^5.1.8","babel-plugin-lodash":"^3.3.4","eslint-plugin-react":"^7.21.5","@emotion/styled-base":"^10.0.31","eslint-config-prettier":"^7.0.0","@typescript-eslint/parser":"^4.9.1","eslint-plugin-react-hooks":"^4.2.0","babel-plugin-module-resolver":"^4.0.0","@emotion/babel-preset-css-prop":"^10.0.27","@typescript-eslint/eslint-plugin":"^4.9.1","@babel/plugin-proposal-decorators":"^7.12.1","@babel/plugin-transform-react-jsx":"^7.12.7","@babel/plugin-proposal-class-properties":"^7.12.1"},"_npmOperationalInternal":{"tmp":"tmp/lens-extension-cc_2.0.0-alpha.0_1607625095895_0.6472267142085457","host":"s3://npm-registry-packages"}},"2.0.0-alpha.1":{"name":"@mirantis/lens-extension-cc","version":"2.0.0-alpha.1","keywords":["lens","mirantis","cluster"],"author":{"url":"https://github.com/stefcameron","name":"Stefan Cameron"},"license":"MIT","_id":"@mirantis/lens-extension-cc@2.0.0-alpha.1","maintainers":[{"name":"stevejr","email":"steve.james.richards@gmail.com"},{"name":"msarcher","email":"msarcher@mirantis.com"},{"name":"vikramhh","email":"vikrambirsingh@yahoo.com"},{"name":"o.briukhanov","email":"oleksandr.briukhanov@perfectial.com"},{"name":"infra-ci","email":"infra@mirantis.com"},{"name":"csnider-mirantis","email":"csnider@mirantis.com"},{"name":"nokel81","email":"sebastian@malton.name"},{"name":"cgirard-mir","email":"cgirard@mirantis.com"},{"name":"jehrismann-mir","email":"jehrismann@mirantis.com"},{"name":"emreboga","email":"emreku@yahoo.com"},{"name":"aleksfront","email":"alex.andreev.email@gmail.com"},{"name":"ekhomyakova","email":"ekhomyakova@mirantis.com"},{"name":"stefcameron","email":"stefan@stefcameron.com"},{"name":"mirantis-ci","email":"mirantis-ci-npm@mirantis.com"},{"name":"mirantis_it","email":"it@mirantis.com"}],"homepage":"https://github.com/Mirantis/lens-extension-cc#readme","bugs":{"url":"https://github.com/Mirantis/lens-extension-cc/issues"},"dist":{"shasum":"9c1809792c560bafaadf49149070e92a288b5794","tarball":"https://registry.npmjs.org/@mirantis/lens-extension-cc/-/lens-extension-cc-2.0.0-alpha.1.tgz","fileCount":6,"integrity":"sha512-tykFEC5krrkm8ooPilOfAK9h282aq+oH4j2xYdcb6BzNNbhosG2oU4pkCGCEr9HZ/DGkSKsA5PFoFZjOcAKBJQ==","signatures":[{"sig":"MEYCIQD4RltHpFFAPB7XLnPXISIyGuhaFImt3WkmsHW3ydXeLgIhAO8lQ1ID8BZVbCfm5pToLNPoPPtFXuWhgn6UdxF7+k1b","keyid":"SHA256:jl3bwswu80PjjokCgh0o2w5c2U4LhQAE57gj9cz1kzA"}],"unpackedSize":1448616,"npm-signature":"-----BEGIN PGP SIGNATURE-----\r\nVersion: OpenPGP.js v3.0.13\r\nComment: https://openpgpjs.org\r\n\r\nwsFcBAEBCAAQBQJf0nXgCRA9TVsSAnZWagAAiAAP/0k8cabE2oa+dYWhwPkU\nKaJtbUELCe2l4PkFGRIWvm5Uhf9Q12kWXHvOK4p5S09Z+HS30/PRYbpv/shi\nR4rthCuKXVPC5uHA7n3ABja2FPUi0eiSQ6o2PRgbYTryj2g8zS4odpg0MPp6\nT4VXxmGpwFnE6zlrKIxGRQ/+b70pGzVp2+tdLXkcrAjrnsb0SrRILQmOXWM2\nivHiuDPEZr4AmcAMkAWv4HKg9wX6eCNocfjsynmoV7Ms6JcA1RHjXjM30Vg+\npHDoWASt6HhlAUK07ddn9Uyc0guP6imJQiW5VByCFW4xmYhYZ8IyymBg802W\nTV86AJPLatSpNq4ZwtmPA2xRcJ95n2RDTqGhl8dSpECMFvb8dN8A9N0PaTMQ\n3UWeQ+zwc8fdvqK88MhvUD51I0FG1rKEZcfyAi1Ua6aMw5fJV4lijVDaNYnZ\nZqNDXbpfO4ooY+F17ZKRHgEXn85223iAZpnXyuuuatKyHg+Uwg6JizgH1Gx8\ntyXUcotmQ3Fr0Q7XESKPDtZ9ux3682IQLGhWpo1viYcBbJCkZTZvvt3o/1nq\n4DDMeFHJG8zAo7yUsdn3wPbU/HB3HvBsJI8bON4eAPm22cpsXbvAPHtk+CFg\nRkEMqNIUt1fFUo5uHEKemKICYje5tUIOdJ3SE8Dvbi026XxNrhdf4xH7xwIR\niuRh\r\n=GrUP\r\n-----END PGP SIGNATURE-----\r\n"},"main":"dist/main.js","readme":"# Mirantis Container Cloud Lens Extension\n\n![CI](https://github.com/Mirantis/lens-extension-cc/workflows/CI/badge.svg?branch=master&event=push)\n\nThis [Lens](https://k8slens.dev/) Extension adds a status bar item, and a menu item, that makes it easy to connect Lens to a Mirantis Container Cloud instance and add its clusters to Lens.\n\n![Extension UI](./docs/screen-shot.png)\n\n## Installation\n\nThese instructions will help you install the extension for direct use with Lens. Follow the [development](#development) instructions below if you intend to work on the extension to improve it.\n\n> NPM 6 or later is required to use the [npm pack](https://docs.npmjs.com/cli/v6/commands/npm-pack) command.\n\nFirst, quit Lens if it's currently running, then:\n\n```bash\n# download tar file without installing it\n$ npm pack @mirantis/lens-extension-cc\n\n# create the directory from which Lens will load the extension on start-up\n$ mkdir -p ~/.k8slens/extensions/lens-extension-cc\n\n# extract the contents of the NPM tarball directly into this directory (replace\n#  `VERSION` with the actual version in the name of the file previously downloaded)\n# NOTE: the '--strip-components=1' part is important to make sure files end-up\n#  where they're supposed to\n$ tar -xf mirantis-lens-extension-cc-VERSION.tgz \\\n  -C ~/.k8slens/extensions/lens-extension-cc/ --strip-components=1\n```\n\nStart Lens. You should now be able to choose the new `File > Add Cloud Cluster` menu item, or click on the `Add Cloud Cluster` status bar item (far right side of the status bar at the bottom of the app), to get started.\n\n## Upgrade\n\nTo upgrade to a newer release, quit Lens, and delete the current extension:\n\n```bash\n$ rm -rf ~/.k8slens/extensions/lens-extension-cc\n```\n\nThen follow the [installation](#installation) instructions again.\n\n## Development\n\n> NPM 7.x is __required__ since `package-lock.json` uses the v2 format. NPM <= 6 uses the older v1 format.\n\nRather than cloning the repository into `~/.k8slens/extensions/lens-extension-cc`, clone the repository wherever you prefer to have your code, and then link to it:\n\n```bash\n$ git clone https://github.com/Mirantis/lens-extension-cc.git /your/src/path\n$ mkdir -p ~/.k8slens/extensions\n$ ln -s /your/src/path ~/.k8slens/extensions/lens-extension-cc\n$ cd /your/src/path\n$ npm install\n$ npm start\n```\n\nThis will put the development build into watch mode.\n\nRestart Lens to load the extension for the first time. Now, as you make source changes, the build will run, and all you need to do is reload the Lens window (`CMD+R` on macOS) to see your changes.\n\nYou can also run a one-off development build with `npm run dev`.\n\n## Publishing\n\nFirst, __update the CHANGELOG__, then:\n\n```bash\n$ npm version <patch|minor|major>\n$ npm publish --access public        # <- NOTE the '--access public' part!\n$ git push && git push --tags\n```\n\n> By default, packages published to an NPM scope/org are __private__. Use the `--access public` option to publish it as a public package instead. You can also [configure NPM](https://docs.npmjs.com/configuring-your-npm-client-with-your-organization-settings#setting-package-visibility-to-public-for-a-single-package) to always publish that single package publicly by running `npm config set access public` within the repository root directory (i.e. package root).\n\nThe `prepublishOnly` script will automatically produce a production build in the `./dist` directory, which will be published.\n","engines":{"lens":">= 4.0.0"},"gitHead":"91c4a80cfb07e7b7112e234f027abbf381622805","scripts":{"dev":"TARGET=development npm run build","fmt":"prettier --write \"{*,src/**/*}.+(js|ts*|yml|json)\"","lint":"eslint \"{*,src/**/*}.+(js|ts*)\"","test":"npm run check && npm run test:unit","build":"npm run clean && webpack","check":"npm run lint && npm run fmt:check","clean":"rm -rf ./dist","start":"TARGET=development npm run build -- --watch","fmt:check":"prettier --check \"{*,src/**/*}.+(js|ts*|yml|json)\"","test:unit":"echo 'Works for me! ¯\\_(ツ)_/¯'","prepublishOnly":"npm test && npm run build"},"_npmUser":{"name":"stefcameron","email":"stefan@stefcameron.com"},"renderer":"dist/renderer.js","publisher":"mirantis","repository":{"url":"git+https://github.com/Mirantis/lens-extension-cc.git","type":"git"},"_npmVersion":"7.0.5","description":"Lens extension that loads Mirantis Container Cloud clusters.","directories":{},"_nodeVersion":"14.15.0","_hasShrinkwrap":false,"readmeFilename":"README.md","devDependencies":{"mobx":"^6.0.4","react":"^17.0.1","rtvjs":"^2.4.0","webpack":"^5.10.0","electron":"^9.3.5","prettier":"^2.2.1","react-dom":"^17.0.1","ts-loader":"^8.0.11","@babel/cli":"^7.12.8","node-fetch":"^2.6.1","prop-types":"^15.7.2","typescript":"^4.1.2","@babel/core":"^7.12.9","@types/node":"^14.14.10","webpack-cli":"^4.2.0","@types/react":"^17.0.0","babel-eslint":"^10.1.0","babel-loader":"^8.2.2","query-string":"^6.13.7","@emotion/core":"^10.0.35","@emotion/styled":"^10.0.27","emotion-theming":"^10.0.27","@babel/preset-env":"^7.12.7","@babel/preset-react":"^7.12.7","@k8slens/extensions":"^4.0.0","@types/react-router":"^5.1.8","babel-plugin-lodash":"^3.3.4","eslint-plugin-react":"^7.21.5","@emotion/styled-base":"^10.0.31","eslint-config-prettier":"^7.0.0","@typescript-eslint/parser":"^4.9.1","eslint-plugin-react-hooks":"^4.2.0","babel-plugin-module-resolver":"^4.0.0","@emotion/babel-preset-css-prop":"^10.0.27","@typescript-eslint/eslint-plugin":"^4.9.1","@babel/plugin-proposal-decorators":"^7.12.1","@babel/plugin-transform-react-jsx":"^7.12.7","@babel/plugin-proposal-class-properties":"^7.12.1"},"_npmOperationalInternal":{"tmp":"tmp/lens-extension-cc_2.0.0-alpha.1_1607628255525_0.39154968253725664","host":"s3://npm-registry-packages"}},"2.0.0-alpha.2":{"name":"@mirantis/lens-extension-cc","version":"2.0.0-alpha.2","keywords":["lens","mirantis","cluster"],"author":{"url":"https://github.com/stefcameron","name":"Stefan Cameron"},"license":"MIT","_id":"@mirantis/lens-extension-cc@2.0.0-alpha.2","maintainers":[{"name":"stevejr","email":"steve.james.richards@gmail.com"},{"name":"msarcher","email":"msarcher@mirantis.com"},{"name":"vikramhh","email":"vikrambirsingh@yahoo.com"},{"name":"o.briukhanov","email":"oleksandr.briukhanov@perfectial.com"},{"name":"infra-ci","email":"infra@mirantis.com"},{"name":"csnider-mirantis","email":"csnider@mirantis.com"},{"name":"nokel81","email":"sebastian@malton.name"},{"name":"cgirard-mir","email":"cgirard@mirantis.com"},{"name":"jehrismann-mir","email":"jehrismann@mirantis.com"},{"name":"emreboga","email":"emreku@yahoo.com"},{"name":"aleksfront","email":"alex.andreev.email@gmail.com"},{"name":"ekhomyakova","email":"ekhomyakova@mirantis.com"},{"name":"stefcameron","email":"stefan@stefcameron.com"},{"name":"mirantis-ci","email":"mirantis-ci-npm@mirantis.com"},{"name":"mirantis_it","email":"it@mirantis.com"}],"homepage":"https://github.com/Mirantis/lens-extension-cc#readme","bugs":{"url":"https://github.com/Mirantis/lens-extension-cc/issues"},"dist":{"shasum":"1ae452571785b88f31585612ebea5264d8f746e1","tarball":"https://registry.npmjs.org/@mirantis/lens-extension-cc/-/lens-extension-cc-2.0.0-alpha.2.tgz","fileCount":6,"integrity":"sha512-cl5bwnP4yI08s5CN09sDBqVs2HBUIQ0LC9WuN3JHON6fFhAnPy3TnLiVD1Vmn1XSfFJlsA5fV1YbJGtEyw31pw==","signatures":[{"sig":"MEUCIB7AJ8NSVc6ImDLcW1SKkeFcuDM2hUtsmaeX7ePp9i26AiEA4f60aVFYcj27zZIDIyTsxj//MkVkPgwqwoGpqjBE+q4=","keyid":"SHA256:jl3bwswu80PjjokCgh0o2w5c2U4LhQAE57gj9cz1kzA"}],"unpackedSize":1469348,"npm-signature":"-----BEGIN PGP SIGNATURE-----\r\nVersion: OpenPGP.js v3.0.13\r\nComment: https://openpgpjs.org\r\n\r\nwsFcBAEBCAAQBQJf0sswCRA9TVsSAnZWagAA0KAP/jNgYzE0cAzx4O5Vk5Gu\nLIZHylI+A5nWnlBay791JSFkwW3hBxiEbdLnndEhpomfrD4JMLAA47aVHOiu\nEmU0vhJtq4NoI/7uusqTF8k7y7/wOlHNG8NgYpPPbM0G9nTLRZyHawGPRJiM\nQfEe3YZ7oASzCL48bQJaXYWQbd9M+6ZGB8EwBaQs81hIjq2fXUL7oC3sO8hO\nH0j4u8O7xF0w3XhNyZ+4e9dZ2+E6HfwdIiyhbmnNtqnYSbsMNlZYvIKXitKC\nren1d2NQbakusq6Vixzkp9607V9LKAWtLUJ8Wmj+DvkzefLX8W3uazmw5je0\nYVyVuayb2H05uPJ6E97qAuhV/CFlq1glTdJgU4GCZTp3My4OtYfnerWh5ep+\nOz2MTk/1nCnb/vRKnZurBdgpGtfXGeHz16gEjgWzPuiFm/5yvWsgl7jlmTsg\n6MHK2Y4xBfACJlmRYsz+xHSdb3xHBMgnNB97zyOAFzysCb1vuLkLUyTgIQ4X\n+mlXjGnk1pMHqLc00UjHurFCGnc0XmTqUX/3BbrBuPrTthl99+1Chivg7PqR\nTsf6gUYMje38NTpX/c47ArOlqNK8F4oxmwHMjLB0cATulp0D9pBnXv+6IHtq\nBdb5D1rDlpv/vzjIXNbKlzhjctUB1tSi27U3Q7FwIGDfZt24Sqp/z/CLkl3R\nHwlQ\r\n=SL/s\r\n-----END PGP SIGNATURE-----\r\n"},"main":"dist/main.js","readme":"# Mirantis Container Cloud Lens Extension\n\n![CI](https://github.com/Mirantis/lens-extension-cc/workflows/CI/badge.svg?branch=master&event=push)\n\nThis [Lens](https://k8slens.dev/) Extension adds a status bar item, and a menu item, that makes it easy to connect Lens to a Mirantis Container Cloud instance and add its clusters to Lens.\n\n![Extension UI](./docs/screen-shot.png)\n\n## Installation\n\nThese instructions will help you install the extension for direct use with Lens. Follow the [development](#development) instructions below if you intend to work on the extension to improve it.\n\n> NPM 6 or later is required to use the [npm pack](https://docs.npmjs.com/cli/v6/commands/npm-pack) command.\n\nFirst, quit Lens if it's currently running, then:\n\n```bash\n# download tar file without installing it\n$ npm pack @mirantis/lens-extension-cc\n\n# create the directory from which Lens will load the extension on start-up\n$ mkdir -p ~/.k8slens/extensions/lens-extension-cc\n\n# extract the contents of the NPM tarball directly into this directory (replace\n#  `VERSION` with the actual version in the name of the file previously downloaded)\n# NOTE: the '--strip-components=1' part is important to make sure files end-up\n#  where they're supposed to\n$ tar -xf mirantis-lens-extension-cc-VERSION.tgz \\\n  -C ~/.k8slens/extensions/lens-extension-cc/ --strip-components=1\n```\n\nStart Lens. You should now be able to choose the new `File > Add Cloud Cluster` menu item, or click on the `Add Cloud Cluster` status bar item (far right side of the status bar at the bottom of the app), to get started.\n\n## Upgrade\n\nTo upgrade to a newer release, quit Lens, and delete the current extension:\n\n```bash\n$ rm -rf ~/.k8slens/extensions/lens-extension-cc\n```\n\nThen follow the [installation](#installation) instructions again.\n\n## Development\n\n> NPM 7.x is __required__ since `package-lock.json` uses the v2 format. NPM <= 6 uses the older v1 format.\n\nRather than cloning the repository into `~/.k8slens/extensions/lens-extension-cc`, clone the repository wherever you prefer to have your code, and then link to it:\n\n```bash\n$ git clone https://github.com/Mirantis/lens-extension-cc.git /your/src/path\n$ mkdir -p ~/.k8slens/extensions\n$ ln -s /your/src/path ~/.k8slens/extensions/lens-extension-cc\n$ cd /your/src/path\n$ npm install\n$ npm start\n```\n\nThis will put the development build into watch mode.\n\nRestart Lens to load the extension for the first time. Now, as you make source changes, the build will run, and all you need to do is reload the Lens window (`CMD+R` on macOS) to see your changes.\n\nYou can also run a one-off development build with `npm run dev`.\n\n## Publishing\n\nFirst, __update the CHANGELOG__, then:\n\n```bash\n$ npm version <patch|minor|major>\n$ npm publish --access public        # <- NOTE the '--access public' part!\n$ git push && git push --tags\n```\n\n> By default, packages published to an NPM scope/org are __private__. Use the `--access public` option to publish it as a public package instead. You can also [configure NPM](https://docs.npmjs.com/configuring-your-npm-client-with-your-organization-settings#setting-package-visibility-to-public-for-a-single-package) to always publish that single package publicly by running `npm config set access public` within the repository root directory (i.e. package root).\n\nThe `prepublishOnly` script will automatically produce a production build in the `./dist` directory, which will be published.\n\n## Help\n\n### SSO Not Supported\n\nMCC instances that use third-party SSO authentication (e.g. Google OAuth) are __not supported__ at this time. We plan on adding support [soon](https://github.com/Mirantis/lens-extension-cc/issues/12).\n","engines":{"lens":">= 4.0.0"},"gitHead":"23c79de119817ca60542ed7fd12b187ed64bb97c","scripts":{"dev":"TARGET=development npm run build","fmt":"prettier --write \"{*,src/**/*}.+(js|ts*|yml|json)\"","lint":"eslint \"{*,src/**/*}.+(js|ts*)\"","test":"npm run check && npm run test:unit","build":"npm run clean && webpack","check":"npm run lint && npm run fmt:check","clean":"rm -rf ./dist","start":"TARGET=development npm run build -- --watch","fmt:check":"prettier --check \"{*,src/**/*}.+(js|ts*|yml|json)\"","test:unit":"echo 'Works for me! ¯\\_(ツ)_/¯'","prepublishOnly":"npm test && npm run build"},"_npmUser":{"name":"stefcameron","email":"stefan@stefcameron.com"},"renderer":"dist/renderer.js","publisher":"mirantis","repository":{"url":"git+https://github.com/Mirantis/lens-extension-cc.git","type":"git"},"_npmVersion":"7.0.5","description":"Lens extension that loads Mirantis Container Cloud clusters.","directories":{},"_nodeVersion":"14.15.0","_hasShrinkwrap":false,"readmeFilename":"README.md","devDependencies":{"mobx":"^6.0.4","react":"^17.0.1","rtvjs":"^2.4.0","webpack":"^5.10.0","electron":"^9.3.5","prettier":"^2.2.1","react-dom":"^17.0.1","ts-loader":"^8.0.11","@babel/cli":"^7.12.8","node-fetch":"^2.6.1","prop-types":"^15.7.2","typescript":"^4.1.2","@babel/core":"^7.12.9","@types/node":"^14.14.10","webpack-cli":"^4.2.0","@types/react":"^17.0.0","babel-eslint":"^10.1.0","babel-loader":"^8.2.2","query-string":"^6.13.7","@emotion/core":"^10.0.35","@emotion/styled":"^10.0.27","emotion-theming":"^10.0.27","@babel/preset-env":"^7.12.7","@babel/preset-react":"^7.12.7","@k8slens/extensions":"^4.0.0","@types/react-router":"^5.1.8","babel-plugin-lodash":"^3.3.4","eslint-plugin-react":"^7.21.5","@emotion/styled-base":"^10.0.31","eslint-config-prettier":"^7.0.0","@typescript-eslint/parser":"^4.9.1","eslint-plugin-react-hooks":"^4.2.0","babel-plugin-module-resolver":"^4.0.0","@emotion/babel-preset-css-prop":"^10.0.27","@typescript-eslint/eslint-plugin":"^4.9.1","@babel/plugin-proposal-decorators":"^7.12.1","@babel/plugin-transform-react-jsx":"^7.12.7","@babel/plugin-proposal-class-properties":"^7.12.1"},"_npmOperationalInternal":{"tmp":"tmp/lens-extension-cc_2.0.0-alpha.2_1607650095991_0.26718342903395986","host":"s3://npm-registry-packages"}},"2.0.0-beta.0":{"name":"@mirantis/lens-extension-cc","version":"2.0.0-beta.0","keywords":["lens","mirantis","cluster"],"author":{"url":"https://github.com/stefcameron","name":"Stefan Cameron"},"license":"MIT","_id":"@mirantis/lens-extension-cc@2.0.0-beta.0","maintainers":[{"name":"stevejr","email":"steve.james.richards@gmail.com"},{"name":"msarcher","email":"msarcher@mirantis.com"},{"name":"vikramhh","email":"vikrambirsingh@yahoo.com"},{"name":"o.briukhanov","email":"oleksandr.briukhanov@perfectial.com"},{"name":"infra-ci","email":"infra@mirantis.com"},{"name":"csnider-mirantis","email":"csnider@mirantis.com"},{"name":"nokel81","email":"sebastian@malton.name"},{"name":"cgirard-mir","email":"cgirard@mirantis.com"},{"name":"jehrismann-mir","email":"jehrismann@mirantis.com"},{"name":"emreboga","email":"emreku@yahoo.com"},{"name":"aleksfront","email":"alex.andreev.email@gmail.com"},{"name":"ekhomyakova","email":"ekhomyakova@mirantis.com"},{"name":"stefcameron","email":"stefan@stefcameron.com"},{"name":"mirantis-ci","email":"mirantis-ci-npm@mirantis.com"},{"name":"mirantis_it","email":"it@mirantis.com"}],"homepage":"https://github.com/Mirantis/lens-extension-cc#readme","bugs":{"url":"https://github.com/Mirantis/lens-extension-cc/issues"},"dist":{"shasum":"e3539897790108e4b5a1652bb0d6c73b52ee3c46","tarball":"https://registry.npmjs.org/@mirantis/lens-extension-cc/-/lens-extension-cc-2.0.0-beta.0.tgz","fileCount":6,"integrity":"sha512-afZwekT5MGssII5JjeZ7vmw+O42phb45psKoNtc0XXjlKYvvmmqK78CoPYDMcSJuHrt9dvsq1PZiOPeuvYBIYQ==","signatures":[{"sig":"MEUCIQD9kbF4nAcyMkqTLubE2LtLgZPUDiUk1LTOOFWKfucrbgIgIFRVbTFoeXezqjPupRDI//eInqrgCXkLouLuut9tzDY=","keyid":"SHA256:jl3bwswu80PjjokCgh0o2w5c2U4LhQAE57gj9cz1kzA"}],"unpackedSize":1468358,"npm-signature":"-----BEGIN PGP SIGNATURE-----\r\nVersion: OpenPGP.js v3.0.13\r\nComment: https://openpgpjs.org\r\n\r\nwsFcBAEBCAAQBQJf05MhCRA9TVsSAnZWagAAbjIQAJOqBe6w6A0/rNpkNjlh\nAy19dif2Qb8je2TC3LU8ziImXunSPKMA36lQV2UtjTuI73egAz9KTOSz9vFz\n95ncL74tQTwa9SZWYI1dqeVFVlBujjKmGHnRzprd8VDFcijr3+Xo6DJMGifz\nDv/g/kzY0vHkevfu4JzVHri4viUmWIyfVyA2CFbPk9lzZ2/5hQaOomzcZagZ\nogwplkdQHDS6k0bMXYLY/N1lx8Tg+TInLxkGKCcF6iMYvys9SN6JpOoF25Dq\ntifnZx5ZML9K/P5R+EZpi0Fxxe+On5f91pEv66WHWmYQaBarYAT69GjmvYiY\nC1rQi7AUHflGeKQOx0W0MQlxwv0v1DDUB86B50nndgxBhb2Zp6/B4cZz1hSG\nzaBF720LsbspmpMrEG3lcdUW9o1FJjWDmt4DFnz0YHYL3iUS8G+dR+Sk87uV\nXRokdeHBkoqG2pPTFyr34QH1mUE6zKbg0kxraoHhEiGM2KB1lYjutN8o7JdY\nCaKiu/MfVgQA/rev+vT+v5BlfhwAuNBLO+y5eAG65h3+tASPFQQ95QHu4uuQ\nNIVRNJfpBjjBtmmtYY0sdr2PELNg3JgDhSOQSGC1fsvmk2cn6bPQONZ27Vho\n8XuyXWk/8tDbIrBwHRybezPsoPManyoY+rl91yb7XrMHHdh9hs44Q6svVrd8\nxaB0\r\n=cxLi\r\n-----END PGP SIGNATURE-----\r\n"},"main":"dist/main.js","readme":"# Mirantis Container Cloud Lens Extension\n\n![CI](https://github.com/Mirantis/lens-extension-cc/workflows/CI/badge.svg?branch=master&event=push)\n\nThis [Lens](https://k8slens.dev/) Extension adds a status bar item, and a menu item, that makes it easy to connect Lens to a Mirantis Container Cloud instance and add its clusters to Lens.\n\n![Extension UI](./docs/screen-shot.png)\n\n## Installation\n\nThese instructions will help you install the extension for direct use with Lens. Follow the [development](#development) instructions below if you intend to work on the extension to improve it.\n\n> NPM 6 or later is required to use the [npm pack](https://docs.npmjs.com/cli/v6/commands/npm-pack) command.\n\nFirst, quit Lens if it's currently running, then:\n\n```bash\n# download tar file without installing it\n$ npm pack @mirantis/lens-extension-cc\n\n# create the directory from which Lens will load the extension on start-up\n$ mkdir -p ~/.k8slens/extensions/lens-extension-cc\n\n# extract the contents of the NPM tarball directly into this directory (replace\n#  `VERSION` with the actual version in the name of the file previously downloaded)\n# NOTE: the '--strip-components=1' part is important to make sure files end-up\n#  where they're supposed to\n$ tar -xf mirantis-lens-extension-cc-VERSION.tgz \\\n  -C ~/.k8slens/extensions/lens-extension-cc/ --strip-components=1\n```\n\nStart Lens. You should now be able to choose the new `File > Add Cloud Cluster` menu item, or click on the `Add Cloud Cluster` status bar item (far right side of the status bar at the bottom of the app), to get started.\n\n## Upgrade\n\nTo upgrade to a newer release, quit Lens, and delete the current extension:\n\n```bash\n$ rm -rf ~/.k8slens/extensions/lens-extension-cc\n```\n\nThen follow the [installation](#installation) instructions again.\n\n## Development\n\n> NPM 7.x is __required__ since `package-lock.json` uses the v2 format. NPM <= 6 uses the older v1 format.\n\nRather than cloning the repository into `~/.k8slens/extensions/lens-extension-cc`, clone the repository wherever you prefer to have your code, and then link to it:\n\n```bash\n$ git clone https://github.com/Mirantis/lens-extension-cc.git /your/src/path\n$ mkdir -p ~/.k8slens/extensions\n$ ln -s /your/src/path ~/.k8slens/extensions/lens-extension-cc\n$ cd /your/src/path\n$ npm install\n$ npm start\n```\n\nThis will put the development build into watch mode.\n\nRestart Lens to load the extension for the first time. Now, as you make source changes, the build will run, and all you need to do is reload the Lens window (`CMD+R` on macOS) to see your changes.\n\nYou can also run a one-off development build with `npm run dev`.\n\n## Publishing\n\nFirst, __update the CHANGELOG__, then:\n\n```bash\n$ npm version <patch|minor|major>\n$ npm publish --access public        # <- NOTE the '--access public' part!\n$ git push && git push --tags\n```\n\n> By default, packages published to an NPM scope/org are __private__. Use the `--access public` option to publish it as a public package instead. You can also [configure NPM](https://docs.npmjs.com/configuring-your-npm-client-with-your-organization-settings#setting-package-visibility-to-public-for-a-single-package) to always publish that single package publicly by running `npm config set access public` within the repository root directory (i.e. package root).\n\nThe `prepublishOnly` script will automatically produce a production build in the `./dist` directory, which will be published.\n\n## Help\n\n### SSO Not Supported\n\nMCC instances that use third-party SSO authentication (e.g. Google OAuth) are __not supported__ at this time. We plan on adding support [soon](https://github.com/Mirantis/lens-extension-cc/issues/12).\n","engines":{"lens":">= 4.0.0"},"gitHead":"b584d665c55f7851498d4d6f5a4d706f54738d59","scripts":{"dev":"TARGET=development npm run build","fmt":"prettier --write \"{*,src/**/*}.+(js|ts*|yml|json)\"","lint":"eslint \"{*,src/**/*}.+(js|ts*)\"","test":"npm run check && npm run test:unit","build":"npm run clean && webpack","check":"npm run lint && npm run fmt:check","clean":"rm -rf ./dist","start":"TARGET=development npm run build -- --watch","fmt:check":"prettier --check \"{*,src/**/*}.+(js|ts*|yml|json)\"","test:unit":"echo 'Works for me! ¯\\_(ツ)_/¯'","prepublishOnly":"npm test && npm run build"},"_npmUser":{"name":"stefcameron","email":"stefan@stefcameron.com"},"renderer":"dist/renderer.js","publisher":"mirantis","repository":{"url":"git+https://github.com/Mirantis/lens-extension-cc.git","type":"git"},"_npmVersion":"7.0.5","description":"Lens extension that loads Mirantis Container Cloud clusters.","directories":{},"_nodeVersion":"14.15.0","_hasShrinkwrap":false,"readmeFilename":"README.md","devDependencies":{"mobx":"^6.0.4","react":"^17.0.1","rtvjs":"^2.4.0","webpack":"^5.10.0","electron":"^9.3.5","prettier":"^2.2.1","react-dom":"^17.0.1","ts-loader":"^8.0.11","@babel/cli":"^7.12.8","node-fetch":"^2.6.1","prop-types":"^15.7.2","typescript":"^4.1.2","@babel/core":"^7.12.9","@types/node":"^14.14.10","webpack-cli":"^4.2.0","@types/react":"^17.0.0","babel-eslint":"^10.1.0","babel-loader":"^8.2.2","query-string":"^6.13.7","@emotion/core":"^10.0.35","@emotion/styled":"^10.0.27","emotion-theming":"^10.0.27","@babel/preset-env":"^7.12.7","@babel/preset-react":"^7.12.7","@k8slens/extensions":"^4.0.0","@types/react-router":"^5.1.8","babel-plugin-lodash":"^3.3.4","eslint-plugin-react":"^7.21.5","@emotion/styled-base":"^10.0.31","eslint-config-prettier":"^7.0.0","@typescript-eslint/parser":"^4.9.1","eslint-plugin-react-hooks":"^4.2.0","babel-plugin-module-resolver":"^4.0.0","@emotion/babel-preset-css-prop":"^10.0.27","@typescript-eslint/eslint-plugin":"^4.9.1","@babel/plugin-proposal-decorators":"^7.12.1","@babel/plugin-transform-react-jsx":"^7.12.7","@babel/plugin-proposal-class-properties":"^7.12.1"},"_npmOperationalInternal":{"tmp":"tmp/lens-extension-cc_2.0.0-beta.0_1607701281380_0.2612741146338411","host":"s3://npm-registry-packages"}},"2.0.0-beta.1":{"name":"@mirantis/lens-extension-cc","version":"2.0.0-beta.1","keywords":["lens","mirantis","cluster"],"author":{"url":"https://github.com/stefcameron","name":"Stefan Cameron"},"license":"MIT","_id":"@mirantis/lens-extension-cc@2.0.0-beta.1","maintainers":[{"name":"stevejr","email":"steve.james.richards@gmail.com"},{"name":"msarcher","email":"msarcher@mirantis.com"},{"name":"vikramhh","email":"vikrambirsingh@yahoo.com"},{"name":"o.briukhanov","email":"oleksandr.briukhanov@perfectial.com"},{"name":"infra-ci","email":"infra@mirantis.com"},{"name":"csnider-mirantis","email":"csnider@mirantis.com"},{"name":"nokel81","email":"sebastian@malton.name"},{"name":"cgirard-mir","email":"cgirard@mirantis.com"},{"name":"jehrismann-mir","email":"jehrismann@mirantis.com"},{"name":"emreboga","email":"emreku@yahoo.com"},{"name":"aleksfront","email":"alex.andreev.email@gmail.com"},{"name":"ekhomyakova","email":"ekhomyakova@mirantis.com"},{"name":"stefcameron","email":"stefan@stefcameron.com"},{"name":"mirantis-ci","email":"mirantis-ci-npm@mirantis.com"},{"name":"mirantis_it","email":"it@mirantis.com"}],"homepage":"https://github.com/Mirantis/lens-extension-cc#readme","bugs":{"url":"https://github.com/Mirantis/lens-extension-cc/issues"},"dist":{"shasum":"406fa594357f6db7c41339bfb76bb9648a0e056b","tarball":"https://registry.npmjs.org/@mirantis/lens-extension-cc/-/lens-extension-cc-2.0.0-beta.1.tgz","fileCount":6,"integrity":"sha512-eExX7yXQYL70F60Rj5/4gvLw3327mOT6chLIRD0g2zKDK6ww2Hwij3yj6ufKEkZre7TKQGfCs8NeXLH+zbhkdQ==","signatures":[{"sig":"MEUCIFRPkoOCmyIfohqSgnMe+e7t0SbIDlAWIvrGsVqYAJp0AiEAoRr1UqgrhNggRJnpWSTUv6sNaZv8+UzEw6RmYO8Pqpw=","keyid":"SHA256:jl3bwswu80PjjokCgh0o2w5c2U4LhQAE57gj9cz1kzA"}],"unpackedSize":1468586,"npm-signature":"-----BEGIN PGP SIGNATURE-----\r\nVersion: OpenPGP.js v3.0.13\r\nComment: https://openpgpjs.org\r\n\r\nwsFcBAEBCAAQBQJf05gJCRA9TVsSAnZWagAAvyIP/jGO+MoNK5FRaZ1KLsvy\nTq6xFRE/RCTT13e3gfZqtMgz3i3g6OBs6zfsv+wgB1CTn6XkfNl44nIVYrvs\nElO4dn1aqWmjopkXtK7/TskIJT3IiEOgxcRfXU8h5yAV5oLeBM8Sa5YHk42Q\n53zt8o9em27xGCmtDCelzTKu14EQBGl1ztfCdZ2Ua0I8NkkS7RvXnQ6Zq49y\nlSjBuTlezpvIsQ8SdlVUOEUg2PAIEgOABYr95sMZRLlyh54aVuYIlBqYZIGE\nuNd5BWJt2V51tpR55llaa+HBJMN9/UFOEnBL7c64/qGlUk0GcXBmCskhIjqJ\nttsWU10EuPqUJl9+EWdrPiG057vplT6UXqRdMg3DQr9zHSppz9DyjO70owP7\neWY+0DNbxF/NIY17kO+V9iGdFXvjsx+w/yfpTfnayEYqwfk5YnbDB9q9mnIC\nkISpdcDJKoboAdlSaMD6Sn/GeqdXljZql46w3pi8p0QdNDAQfXM9iHVWw27Z\nnuIk+rzVs8cXUq5ZY8AcKx3B5w3/5uRZEk13rMWVvw/QUFygTl9S+qv6qjds\nukMa4upjFAZCRwa6W0Gb9YhqGYI2k7Gqsy5ahBeZF7yf1ZD2JttqENdv0H7l\nhkb8x5rvmQxqF5mKW2Sj+tbWM2SuqWUnKgOTp7nVaL4H0RT4h7q9ZZW+jsKs\n+Fqg\r\n=zdbf\r\n-----END PGP SIGNATURE-----\r\n"},"main":"dist/main.js","readme":"# Mirantis Container Cloud Lens Extension\n\n![CI](https://github.com/Mirantis/lens-extension-cc/workflows/CI/badge.svg?branch=master&event=push)\n\nThis [Lens](https://k8slens.dev/) Extension adds a status bar item, and a menu item, that makes it easy to connect Lens to a Mirantis Container Cloud instance and add its clusters to Lens.\n\n![Extension UI](./docs/screen-shot.png)\n\n## Installation\n\nThese instructions will help you install the extension for direct use with Lens. Follow the [development](#development) instructions below if you intend to work on the extension to improve it.\n\n> NPM 6 or later is required to use the [npm pack](https://docs.npmjs.com/cli/v6/commands/npm-pack) command.\n\nFirst, quit Lens if it's currently running, then:\n\n```bash\n# download tar file without installing it\n$ npm pack @mirantis/lens-extension-cc\n\n# create the directory from which Lens will load the extension on start-up\n$ mkdir -p ~/.k8slens/extensions/lens-extension-cc\n\n# extract the contents of the NPM tarball directly into this directory (replace\n#  `VERSION` with the actual version in the name of the file previously downloaded)\n# NOTE: the '--strip-components=1' part is important to make sure files end-up\n#  where they're supposed to\n$ tar -xf mirantis-lens-extension-cc-VERSION.tgz \\\n  -C ~/.k8slens/extensions/lens-extension-cc/ --strip-components=1\n```\n\nStart Lens. You should now be able to choose the new `File > Add Cloud Cluster` menu item, or click on the `Add Cloud Cluster` status bar item (far right side of the status bar at the bottom of the app), to get started.\n\n## Upgrade\n\nTo upgrade to a newer release, quit Lens, and delete the current extension:\n\n```bash\n$ rm -rf ~/.k8slens/extensions/lens-extension-cc\n```\n\nThen follow the [installation](#installation) instructions again.\n\n## Development\n\n> NPM 7.x is __required__ since `package-lock.json` uses the v2 format. NPM <= 6 uses the older v1 format.\n\nRather than cloning the repository into `~/.k8slens/extensions/lens-extension-cc`, clone the repository wherever you prefer to have your code, and then link to it:\n\n```bash\n$ git clone https://github.com/Mirantis/lens-extension-cc.git /your/src/path\n$ mkdir -p ~/.k8slens/extensions\n$ ln -s /your/src/path ~/.k8slens/extensions/lens-extension-cc\n$ cd /your/src/path\n$ npm install\n$ npm start\n```\n\nThis will put the development build into watch mode.\n\nRestart Lens to load the extension for the first time. Now, as you make source changes, the build will run, and all you need to do is reload the Lens window (`CMD+R` on macOS) to see your changes.\n\nYou can also run a one-off development build with `npm run dev`.\n\n## Publishing\n\nFirst, __update the CHANGELOG__, then:\n\n```bash\n$ npm version <patch|minor|major>\n$ npm publish --access public        # <- NOTE the '--access public' part!\n$ git push && git push --tags\n```\n\n> By default, packages published to an NPM scope/org are __private__. Use the `--access public` option to publish it as a public package instead. You can also [configure NPM](https://docs.npmjs.com/configuring-your-npm-client-with-your-organization-settings#setting-package-visibility-to-public-for-a-single-package) to always publish that single package publicly by running `npm config set access public` within the repository root directory (i.e. package root).\n\nThe `prepublishOnly` script will automatically produce a production build in the `./dist` directory, which will be published.\n\n## Help\n\n### SSO Not Supported\n\nMCC instances that use third-party SSO authentication (e.g. Google OAuth) are __not supported__ at this time. We plan on adding support [soon](https://github.com/Mirantis/lens-extension-cc/issues/12).\n","engines":{"lens":">= 4.0.0"},"gitHead":"715841063c4da39c3f540de506c682194c3098ce","scripts":{"dev":"TARGET=development npm run build","fmt":"prettier --write \"{*,src/**/*}.+(js|ts*|yml|json)\"","lint":"eslint \"{*,src/**/*}.+(js|ts*)\"","test":"npm run check && npm run test:unit","build":"npm run clean && webpack","check":"npm run lint && npm run fmt:check","clean":"rm -rf ./dist","start":"TARGET=development npm run build -- --watch","fmt:check":"prettier --check \"{*,src/**/*}.+(js|ts*|yml|json)\"","test:unit":"echo 'Works for me! ¯\\_(ツ)_/¯'","prepublishOnly":"npm test && npm run build"},"_npmUser":{"name":"stefcameron","email":"stefan@stefcameron.com"},"renderer":"dist/renderer.js","publisher":"mirantis","repository":{"url":"git+https://github.com/Mirantis/lens-extension-cc.git","type":"git"},"_npmVersion":"7.0.5","description":"Lens extension that loads Mirantis Container Cloud clusters.","directories":{},"_nodeVersion":"14.15.0","_hasShrinkwrap":false,"readmeFilename":"README.md","devDependencies":{"mobx":"^6.0.4","react":"^17.0.1","rtvjs":"^2.4.0","webpack":"^5.10.0","electron":"^9.3.5","prettier":"^2.2.1","react-dom":"^17.0.1","ts-loader":"^8.0.11","@babel/cli":"^7.12.8","node-fetch":"^2.6.1","prop-types":"^15.7.2","typescript":"^4.1.2","@babel/core":"^7.12.9","@types/node":"^14.14.10","webpack-cli":"^4.2.0","@types/react":"^17.0.0","babel-eslint":"^10.1.0","babel-loader":"^8.2.2","query-string":"^6.13.7","@emotion/core":"^10.0.35","@emotion/styled":"^10.0.27","emotion-theming":"^10.0.27","@babel/preset-env":"^7.12.7","@babel/preset-react":"^7.12.7","@k8slens/extensions":"^4.0.0","@types/react-router":"^5.1.8","babel-plugin-lodash":"^3.3.4","eslint-plugin-react":"^7.21.5","@emotion/styled-base":"^10.0.31","eslint-config-prettier":"^7.0.0","@typescript-eslint/parser":"^4.9.1","eslint-plugin-react-hooks":"^4.2.0","babel-plugin-module-resolver":"^4.0.0","@emotion/babel-preset-css-prop":"^10.0.27","@typescript-eslint/eslint-plugin":"^4.9.1","@babel/plugin-proposal-decorators":"^7.12.1","@babel/plugin-transform-react-jsx":"^7.12.7","@babel/plugin-proposal-class-properties":"^7.12.1"},"_npmOperationalInternal":{"tmp":"tmp/lens-extension-cc_2.0.0-beta.1_1607702536779_0.21716702971555324","host":"s3://npm-registry-packages"}},"2.0.0":{"name":"@mirantis/lens-extension-cc","version":"2.0.0","keywords":["lens","mirantis","cluster"],"author":{"url":"https://github.com/stefcameron","name":"Stefan Cameron"},"license":"MIT","_id":"@mirantis/lens-extension-cc@2.0.0","maintainers":[{"name":"stevejr","email":"steve.james.richards@gmail.com"},{"name":"msarcher","email":"msarcher@mirantis.com"},{"name":"vikramhh","email":"vikrambirsingh@yahoo.com"},{"name":"o.briukhanov","email":"oleksandr.briukhanov@perfectial.com"},{"name":"infra-ci","email":"infra@mirantis.com"},{"name":"csnider-mirantis","email":"csnider@mirantis.com"},{"name":"nokel81","email":"sebastian@malton.name"},{"name":"cgirard-mir","email":"cgirard@mirantis.com"},{"name":"jehrismann-mir","email":"jehrismann@mirantis.com"},{"name":"emreboga","email":"emreku@yahoo.com"},{"name":"aleksfront","email":"alex.andreev.email@gmail.com"},{"name":"ekhomyakova","email":"ekhomyakova@mirantis.com"},{"name":"stefcameron","email":"stefan@stefcameron.com"},{"name":"mirantis-ci","email":"mirantis-ci-npm@mirantis.com"},{"name":"mirantis_it","email":"it@mirantis.com"}],"homepage":"https://github.com/Mirantis/lens-extension-cc#readme","bugs":{"url":"https://github.com/Mirantis/lens-extension-cc/issues"},"dist":{"shasum":"d5d6bad7ad4545dd8e1261fe0d5978bf23d054e2","tarball":"https://registry.npmjs.org/@mirantis/lens-extension-cc/-/lens-extension-cc-2.0.0.tgz","fileCount":6,"integrity":"sha512-UvRkbhdJg6E90lo6cbt13Hw2zqYWvMEDdZdTOOWo6ojjhr3WXNLO6eQJAsjy3eNpt5rR2+XeLFdB9JZeqGzRog==","signatures":[{"sig":"MEQCIH55cbkoKKYvlSy6VtZcRwLeOygekbAJtMakRtemtkymAiAH5odycu+3rJ7HAPgKDDIiY6ZBbqoV8yrAbfVVJw1wVA==","keyid":"SHA256:jl3bwswu80PjjokCgh0o2w5c2U4LhQAE57gj9cz1kzA"}],"unpackedSize":1478830,"npm-signature":"-----BEGIN PGP SIGNATURE-----\r\nVersion: OpenPGP.js v3.0.13\r\nComment: https://openpgpjs.org\r\n\r\nwsFcBAEBCAAQBQJf1BOyCRA9TVsSAnZWagAAij0P/3xkJuSShqbGxqo+sx61\nvRcZAcsHKeRrkW8odbQkSY604qO3YX282/fqGl05aMBRUkbfkCAReuF00zP+\nPanwxuP2P2JBfLxez3t4/Z0kK14Idqey6hjPZEdKWRvIC80N2P8LzL9TzU1e\nLaGAR8opJwIZA5NiTv06ofd/y9q8G3FHIImagGVchZIL//OOMMHQcDH/+fz3\nQzQDWUJh7qLYPiKaBW/uYTmbVNtKu5yHpMmRMeBMDsQyKhnxJLqAPQx1wwmD\n092vvHSldjZ+b10JoAu9oXQZKpuSLJGzmYBcG5/3c0r0fqlqMqSlXkKUGTpg\n1KVudodUj19V1VN2yT/mfWh7g33bOALd5dNarvmppilDU6v/bjj7xjxBXKEo\nlai3JBFvW5lXrOxZyRPi4nnC1SuEUWxONAiOMcHD5Gfkk5SEs1qr4HwYyA1y\nkUKYTQo4O8sBfjGmuSs2jQJ3K3SwUUndcV+ZbiMk5we+34PsKKvMJwDRWPL7\nhCrjysMVkpX6qaR1ED95Cvc6HPpg1nG6Ef5RB2lxECvIf32sV4ad9SD11FR2\nKx1Q8XJdoPm6BYUmzFMufERxVsuUoWeF8uv5fDMwbGo9on3SjCt6MTTSZd4Y\nTPPhSeTllB+IGljxRd5zlW/FsAS3r2guLaswZP8mvzpYrbUmTOP6zAqr2kuw\nztic\r\n=tROA\r\n-----END PGP SIGNATURE-----\r\n"},"main":"dist/main.js","engines":{"lens":">= 4.0.0"},"gitHead":"074db00561958fcf92481db4a37a866bef12c23c","scripts":{"dev":"TARGET=development npm run build","fmt":"prettier --write \"{*,src/**/*}.+(js|ts*|yml|json)\"","lint":"eslint \"{*,src/**/*}.+(js|ts*)\"","test":"npm run check && npm run test:unit","build":"npm run clean && webpack","check":"npm run lint && npm run fmt:check","clean":"rm -rf ./dist","start":"TARGET=development npm run build -- --watch","fmt:check":"prettier --check \"{*,src/**/*}.+(js|ts*|yml|json)\"","test:unit":"echo 'Works for me! ¯\\_(ツ)_/¯'","prepublishOnly":"npm test && npm run build"},"_npmUser":{"name":"stefcameron","email":"stefan@stefcameron.com"},"renderer":"dist/renderer.js","publisher":"mirantis","repository":{"url":"git+https://github.com/Mirantis/lens-extension-cc.git","type":"git"},"_npmVersion":"7.0.5","description":"Lens extension that loads Mirantis Container Cloud clusters.","directories":{},"_nodeVersion":"14.15.0","_hasShrinkwrap":false,"devDependencies":{"mobx":"^6.0.4","react":"^17.0.1","rtvjs":"^2.4.0","webpack":"^5.10.0","electron":"^9.3.5","prettier":"^2.2.1","react-dom":"^17.0.1","ts-loader":"^8.0.12","@babel/cli":"^7.12.10","node-fetch":"^2.6.1","prop-types":"^15.7.2","typescript":"^4.1.2","@babel/core":"^7.12.10","@types/node":"^14.14.12","webpack-cli":"^4.2.0","@types/react":"^17.0.0","babel-eslint":"^10.1.0","babel-loader":"^8.2.2","query-string":"^6.13.7","@emotion/core":"^10.0.35","@emotion/styled":"^10.0.27","emotion-theming":"^10.0.27","@babel/preset-env":"^7.12.10","@babel/preset-react":"^7.12.10","@k8slens/extensions":"^4.0.2","@types/react-router":"^5.1.8","babel-plugin-lodash":"^3.3.4","eslint-plugin-react":"^7.21.5","@emotion/styled-base":"^10.0.31","eslint-config-prettier":"^7.0.0","@typescript-eslint/parser":"^4.9.1","eslint-plugin-react-hooks":"^4.2.0","babel-plugin-module-resolver":"^4.0.0","@emotion/babel-preset-css-prop":"^10.0.27","@typescript-eslint/eslint-plugin":"^4.9.1","@babel/plugin-proposal-decorators":"^7.12.1","@babel/plugin-transform-react-jsx":"^7.12.10","@babel/plugin-proposal-class-properties":"^7.12.1"},"_npmOperationalInternal":{"tmp":"tmp/lens-extension-cc_2.0.0_1607734194186_0.6978305206991902","host":"s3://npm-registry-packages"}},"2.0.1":{"name":"@mirantis/lens-extension-cc","version":"2.0.1","keywords":["lens","mirantis","cluster"],"author":{"url":"https://github.com/stefcameron","name":"Stefan Cameron"},"license":"MIT","_id":"@mirantis/lens-extension-cc@2.0.1","maintainers":[{"name":"roachedezigne","email":"roachedezigne@gmail.com"},{"name":"mirantis_it","email":"it@mirantis.com"},{"name":"mirantis-ci","email":"mirantis-ci-npm@mirantis.com"},{"name":"stefcameron","email":"stefan@stefcameron.com"},{"name":"ekhomyakova","email":"ekhomyakova@mirantis.com"},{"name":"aleksfront","email":"alex.andreev.email@gmail.com"},{"name":"emreboga","email":"emreku@yahoo.com"},{"name":"jehrismann-mir","email":"jehrismann@mirantis.com"},{"name":"cgirard-mir","email":"cgirard@mirantis.com"},{"name":"nokel81","email":"sebastian@malton.name"},{"name":"csnider-mirantis","email":"csnider@mirantis.com"},{"name":"infra-ci","email":"infra@mirantis.com"},{"name":"o.briukhanov","email":"oleksandr.briukhanov@perfectial.com"},{"name":"vikramhh","email":"vikrambirsingh@yahoo.com"},{"name":"msarcher","email":"msarcher@mirantis.com"},{"name":"stevejr","email":"steve.james.richards@gmail.com"}],"homepage":"https://github.com/Mirantis/lens-extension-cc#readme","bugs":{"url":"https://github.com/Mirantis/lens-extension-cc/issues"},"dist":{"shasum":"e5b51b86c0060e4791f00df629d376a9588c9caf","tarball":"https://registry.npmjs.org/@mirantis/lens-extension-cc/-/lens-extension-cc-2.0.1.tgz","fileCount":6,"integrity":"sha512-s77wOQP7yf0UhdF450adHgfiPys21tw1ddDZDz+j8L052JohsJN+xUNss9J9DJyev9BIu0RRUgJ7UhZyLNrzzg==","signatures":[{"sig":"MEQCIA2UMci8/QztDiMMSzBdeT7LpgsE+31RF80M3auqTwVBAiAnkl6YoEBVlJIwak1R9kT0LjWHfEjQCS19+z31PotMcA==","keyid":"SHA256:jl3bwswu80PjjokCgh0o2w5c2U4LhQAE57gj9cz1kzA"}],"unpackedSize":1480492,"npm-signature":"-----BEGIN PGP SIGNATURE-----\r\nVersion: OpenPGP.js v3.0.13\r\nComment: https://openpgpjs.org\r\n\r\nwsFcBAEBCAAQBQJf17ViCRA9TVsSAnZWagAA1o4QAJZfqU22kFuXnQq92jfn\nPl8RE2AnB/Z/C5zP52RQDcansxfJAdMLPnYor5075oN25DIOOKWT84j7PivI\nUZTtVVqCHoF7Uwz+PFmN68b2rd4zbXof1FnaLdqlTjf8iOQCsYLjQDSYy+OI\nNLXnfyfXA5/7ESTHPMQGGCi19zRyziL3nGuO7G4kiZA7IL6DDGZMcUNXngff\nS70BYdFceTPRv0JIhMHbrIpf/x+j4J/dD/k8jdWwD3ROmzNYNxftPgG9B2A9\nICrYUZg4Q2rdKdXod70LyBWWxUimi7oc/lMLBruE43475/0UDg+Zstq4Fgfv\n5Kdlu72kSHfbS2qb+aYA6/vR1FAmCLhVZeqZw3JqwHNWaMu/4yITj5tEGOof\nM4+bWezca97UEXQeKw6ctJ4IK1IktOkPCJG3WkGAdEUB4xejNx+7yyujXV48\n/OWAjJD7fO9mOYDuAWII0PJ0kRLxO6dU9Ceoo96MqTwBAu8R8bOE4V2mXLUK\nxb3ohPGqnPz4QwbcQn4+LfrMkutta7Wwt+prwx3uaP0OEcjVAT/SV33OHllM\npxBB8Q3Klk89cD3p6e9EhOBa86uCA4XS00TWH/mvpIISck0VfZGkDa5Zaym0\n5nGI5Y1lVQwTuxssPUlKgKPWFtELz11WMHt0Q2yYSdAkz2ry6FWDl6Jj92YV\nhptx\r\n=DawL\r\n-----END PGP SIGNATURE-----\r\n"},"main":"dist/main.js","engines":{"lens":">= 4.0.0"},"gitHead":"5978e7449474b8b3eba62811f9554f1efb272521","scripts":{"dev":"TARGET=development npm run build","fmt":"prettier --write \"{*,src/**/*}.+(js|ts*|yml|json)\"","lint":"eslint \"{*,src/**/*}.+(js|ts*)\"","test":"npm run check && npm run test:unit","build":"npm run clean && webpack","check":"npm run lint && npm run fmt:check","clean":"rm -rf ./dist","start":"TARGET=development npm run build -- --watch","fmt:check":"prettier --check \"{*,src/**/*}.+(js|ts*|yml|json)\"","test:unit":"echo 'Works for me! ¯\\_(ツ)_/¯'","prepublishOnly":"npm test && npm run build"},"_npmUser":{"name":"stefcameron","email":"stefan@stefcameron.com"},"renderer":"dist/renderer.js","publisher":"mirantis","repository":{"url":"git+https://github.com/Mirantis/lens-extension-cc.git","type":"git"},"_npmVersion":"7.0.5","description":"Lens extension that loads Mirantis Container Cloud clusters.","directories":{},"_nodeVersion":"14.15.0","_hasShrinkwrap":false,"devDependencies":{"mobx":"^6.0.4","react":"^17.0.1","rtvjs":"^2.4.0","webpack":"^5.10.0","electron":"^9.3.5","prettier":"^2.2.1","react-dom":"^17.0.1","ts-loader":"^8.0.12","@babel/cli":"^7.12.10","node-fetch":"^2.6.1","prop-types":"^15.7.2","typescript":"^4.1.2","@babel/core":"^7.12.10","@types/node":"^14.14.12","webpack-cli":"^4.2.0","@types/react":"^17.0.0","babel-eslint":"^10.1.0","babel-loader":"^8.2.2","query-string":"^6.13.7","@emotion/core":"^10.0.35","@emotion/styled":"^10.0.27","emotion-theming":"^10.0.27","@babel/preset-env":"^7.12.10","@babel/preset-react":"^7.12.10","@k8slens/extensions":"^4.0.2","@types/react-router":"^5.1.8","babel-plugin-lodash":"^3.3.4","eslint-plugin-react":"^7.21.5","@emotion/styled-base":"^10.0.31","eslint-config-prettier":"^7.0.0","@typescript-eslint/parser":"^4.9.1","eslint-plugin-react-hooks":"^4.2.0","babel-plugin-module-resolver":"^4.0.0","@emotion/babel-preset-css-prop":"^10.0.27","@typescript-eslint/eslint-plugin":"^4.9.1","@babel/plugin-proposal-decorators":"^7.12.1","@babel/plugin-transform-react-jsx":"^7.12.10","@babel/plugin-proposal-class-properties":"^7.12.1"},"_npmOperationalInternal":{"tmp":"tmp/lens-extension-cc_2.0.1_1607972194312_0.32614602177296304","host":"s3://npm-registry-packages"}},"2.0.2":{"name":"@mirantis/lens-extension-cc","version":"2.0.2","keywords":["lens","mirantis","cluster"],"author":{"url":"https://github.com/stefcameron","name":"Stefan Cameron"},"license":"MIT","_id":"@mirantis/lens-extension-cc@2.0.2","maintainers":[{"name":"miketkachenko","email":"miketkachenko@mirantis.com"},{"name":"roachedezigne","email":"roachedezigne@gmail.com"},{"name":"mirantis_it","email":"it@mirantis.com"},{"name":"mirantis-ci","email":"mirantis-ci-npm@mirantis.com"},{"name":"stefcameron","email":"stefan@stefcameron.com"},{"name":"ekhomyakova","email":"ekhomyakova@mirantis.com"},{"name":"aleksfront","email":"alex.andreev.email@gmail.com"},{"name":"emreboga","email":"emreku@yahoo.com"},{"name":"jehrismann-mir","email":"jehrismann@mirantis.com"},{"name":"cgirard-mir","email":"cgirard@mirantis.com"},{"name":"nokel81","email":"sebastian@malton.name"},{"name":"csnider-mirantis","email":"csnider@mirantis.com"},{"name":"infra-ci","email":"infra@mirantis.com"},{"name":"o.briukhanov","email":"oleksandr.briukhanov@perfectial.com"},{"name":"vikramhh","email":"vikrambirsingh@yahoo.com"},{"name":"msarcher","email":"msarcher@mirantis.com"},{"name":"stevejr","email":"steve.james.richards@gmail.com"}],"homepage":"https://github.com/Mirantis/lens-extension-cc#readme","bugs":{"url":"https://github.com/Mirantis/lens-extension-cc/issues"},"dist":{"shasum":"da21a5783837ba8bb7590cff4f1db1c9780ecc7f","tarball":"https://registry.npmjs.org/@mirantis/lens-extension-cc/-/lens-extension-cc-2.0.2.tgz","fileCount":6,"integrity":"sha512-YkME5N3JFrGduxGKy5r+nFs6x/xtuqI+QPtthm695XGCXMnj1UN5DtLiDHePiJREsG6VNx6RQOdstMpqlDLKEA==","signatures":[{"sig":"MEYCIQD51fSmJmgcUcI2VRC2YPGpfbbCoE10Ewbt0a9e5nTaRQIhAMJuANG9ycafzz+fRrPhHRGxvpFeUM6Oo9JLejIOwQQk","keyid":"SHA256:jl3bwswu80PjjokCgh0o2w5c2U4LhQAE57gj9cz1kzA"}],"unpackedSize":1481286,"npm-signature":"-----BEGIN PGP SIGNATURE-----\r\nVersion: OpenPGP.js v3.0.13\r\nComment: https://openpgpjs.org\r\n\r\nwsFcBAEBCAAQBQJf2lqDCRA9TVsSAnZWagAAvMYQAJtiSlQ1BonKkgUrUq/y\ndgmGfamW+sNnoG5NhKEYlUl4w/Y3sqQcr6+ouavBOl/5w45Sm8g2dvqBBbQh\n7RyPSRZwuG8p0iTHCs8RyAahyXQGvie3tbYbqS1F7m7cSCVsqXbH3K55ad0D\ngOoS/4HBi4rxCFpCow1zmtudwy6woVtgLJqIe5IpDTiCrB0wAZZThZ8jkuCC\nFvOQs62IDxWJM5y0xbJ6mrUWujucrSke/yvy3yzAN+HFS82CmawZXBSR5SpO\nhHQoJKZF9536DRTAqMu3+cCzyQd8QdkxAKBMqJ6FODJTZxwigqZtL7BowOXO\nJ2FFdFTkEBDDHYLsjQfkE6n6uTOo+9tvrkSSkan+Enx/6CRLpPYJGSOQNYqs\naytVCps95RakQY5G3pFu6/ef3V0X1N/PiqbLXLOXC1X8kSLf+J+7W9K4hLTc\n7W7glmKEavFLhalJjwp2KS6ojnBRov1YnDTZ8wGHDjVxUR43spEpjPwyLCMC\nZT/n4SUXTe15C5llORd1YZFuUZyNBoZR2u+D48NYKhUm/EhRriveIXotkyFs\nufqZcSWv9OkBYpyOUmTm/fSiQaBj0cQ8vdPaCCfh7M5j1zTAz2zakkaHGiUJ\nNF4G3yHyifYLrreiBcLR94cOt/sZDu6Qh592lcfBOnXGk4CW/Qbrpyqhrxhz\npOdJ\r\n=UDgy\r\n-----END PGP SIGNATURE-----\r\n"},"main":"dist/main.js","engines":{"lens":">= 4.0.0"},"gitHead":"037cb84a77e32344a7dde36aa284c894540d1263","scripts":{"dev":"TARGET=development npm run build","fmt":"prettier --write \"{*,src/**/*}.+(js|ts*|yml|json)\"","lint":"eslint \"{*,src/**/*}.+(js|ts*)\"","test":"npm run check && npm run test:unit","build":"npm run clean && webpack","check":"npm run lint && npm run fmt:check","clean":"rm -rf ./dist","start":"TARGET=development npm run build -- --watch","fmt:check":"prettier --check \"{*,src/**/*}.+(js|ts*|yml|json)\"","test:unit":"echo 'Works for me! ¯\\_(ツ)_/¯'","prepublishOnly":"npm test && npm run build"},"_npmUser":{"name":"stefcameron","email":"stefan@stefcameron.com"},"renderer":"dist/renderer.js","publisher":"mirantis","repository":{"url":"git+https://github.com/Mirantis/lens-extension-cc.git","type":"git"},"_npmVersion":"7.0.5","description":"Lens extension that loads Mirantis Container Cloud clusters.","directories":{},"_nodeVersion":"14.15.0","_hasShrinkwrap":false,"devDependencies":{"mobx":"^6.0.4","react":"^17.0.1","rtvjs":"^2.4.0","webpack":"^5.10.3","electron":"^9.3.5","prettier":"^2.2.1","react-dom":"^17.0.1","ts-loader":"^8.0.12","@babel/cli":"^7.12.10","node-fetch":"^2.6.1","prop-types":"^15.7.2","typescript":"^4.1.3","@babel/core":"^7.12.10","@types/node":"^14.14.14","webpack-cli":"^4.2.0","@types/react":"^17.0.0","babel-eslint":"^10.1.0","babel-loader":"^8.2.2","query-string":"^6.13.7","@emotion/core":"^10.0.35","@emotion/styled":"^10.0.27","emotion-theming":"^10.0.27","@babel/preset-env":"^7.12.11","@babel/preset-react":"^7.12.10","@k8slens/extensions":"^4.0.2","@types/react-router":"^5.1.8","babel-plugin-lodash":"^3.3.4","eslint-plugin-react":"^7.21.5","@emotion/styled-base":"^10.0.31","eslint-config-prettier":"^7.0.0","@typescript-eslint/parser":"^4.10.0","eslint-plugin-react-hooks":"^4.2.0","babel-plugin-module-resolver":"^4.1.0","@emotion/babel-preset-css-prop":"^10.0.27","@typescript-eslint/eslint-plugin":"^4.10.0","@babel/plugin-proposal-decorators":"^7.12.1","@babel/plugin-transform-react-jsx":"^7.12.11","@babel/plugin-proposal-class-properties":"^7.12.1"},"_npmOperationalInternal":{"tmp":"tmp/lens-extension-cc_2.0.2_1608145538850_0.2765636839967902","host":"s3://npm-registry-packages"}},"2.0.3":{"name":"@mirantis/lens-extension-cc","version":"2.0.3","keywords":["lens","mirantis","cluster"],"author":{"url":"https://github.com/stefcameron","name":"Stefan Cameron"},"license":"MIT","_id":"@mirantis/lens-extension-cc@2.0.3","maintainers":[{"name":"allysmith424","email":"allysmith424@gmail.com"},{"name":"miketkachenko","email":"miketkachenko@mirantis.com"},{"name":"roachedezigne","email":"roachedezigne@gmail.com"},{"name":"mirantis_it","email":"it@mirantis.com"},{"name":"mirantis-ci","email":"mirantis-ci-npm@mirantis.com"},{"name":"stefcameron","email":"stefan@stefcameron.com"},{"name":"ekhomyakova","email":"ekhomyakova@mirantis.com"},{"name":"aleksfront","email":"alex.andreev.email@gmail.com"},{"name":"emreboga","email":"emreku@yahoo.com"},{"name":"jehrismann-mir","email":"jehrismann@mirantis.com"},{"name":"cgirard-mir","email":"cgirard@mirantis.com"},{"name":"nokel81","email":"sebastian@malton.name"},{"name":"csnider-mirantis","email":"csnider@mirantis.com"},{"name":"infra-ci","email":"infra@mirantis.com"},{"name":"o.briukhanov","email":"oleksandr.briukhanov@perfectial.com"},{"name":"vikramhh","email":"vikrambirsingh@yahoo.com"},{"name":"msarcher","email":"msarcher@mirantis.com"},{"name":"stevejr","email":"steve.james.richards@gmail.com"}],"homepage":"https://github.com/Mirantis/lens-extension-cc#readme","bugs":{"url":"https://github.com/Mirantis/lens-extension-cc/issues"},"dist":{"shasum":"29a76bac97ca51253bb99f14cea32f758b12439d","tarball":"https://registry.npmjs.org/@mirantis/lens-extension-cc/-/lens-extension-cc-2.0.3.tgz","fileCount":6,"integrity":"sha512-gW7XYx7vVc8PDq1bvhnsj+sL+556GZssIcjWjjL89tDSOFSCQNCaugvuYaB/4zxRxsytJ4v2ewUmkact7atEqw==","signatures":[{"sig":"MEQCIH8nYhlNQigOzZoUHmrzfo4LzLfRn5VC8qNFhqiWLGNYAiAoM2dV9K3RcWWLiO9RADWQZMUVaFzsPind1n9WR4sRFg==","keyid":"SHA256:jl3bwswu80PjjokCgh0o2w5c2U4LhQAE57gj9cz1kzA"}],"unpackedSize":1483375,"npm-signature":"-----BEGIN PGP SIGNATURE-----\r\nVersion: OpenPGP.js v3.0.13\r\nComment: https://openpgpjs.org\r\n\r\nwsFcBAEBCAAQBQJf9g+rCRA9TVsSAnZWagAAVKcQAISBe0JPU+KSeN2pzyd1\nA9cPRVM2baVfgF5yTxqLGG1EIpa6e9rGbdg180cIydStuvFZsMhSben+lbZE\nAyRVcWVT+XahPMSLaBULd+Orp5MBzPwlx/RJNCB3q6SObuX94usmKZIWBeyE\nJQNTqbSW9Sv4ef1xNa+v93jB+35zpP0r5wwczLqrU6MvBX9+P3OLMyhhUmHz\nZvP3TYG5WMELWyZabPj5Ao/LVQY7uLz8cSmSenBOEdCWsYrb2N48iNyva2MH\n6UjEMMKbqrlZDSvj33aLLe1tkhYIi+Zlzklws6Jeo0xhn/UM8HtPk9YLjEyC\nmNWjZ89Ay3Fgd/ncA09ec5nBFUU4KQB81Bl+JX+1okV7YoG/HC/p8q5UmeDl\nsnSrm5LpF1hfePCKDKyRl/C3jxy4K3aJ9tmuqkLHoLxrfpWLIcspXgEsVfqD\ncmANfIBxXaJxAgT+/ShJ+6YXN1AQk7F/8nGMljomaWtRkgnbhvy92mREgtKO\n3FmrnXonBwOvt0sUaLRtGo6Gf4g4AkkUNUnrC/9YtauV/UhxBOilo4RA1PaK\nkqLGhrjg9uf0KL6RfBopVUGEmyB6l0KQIyCkUHr3AYLcoBADCn8zCDy+zitQ\nqgzoBm7R31ogX1QeEKl22Kqahzi1CILVgm+Y3kGV3MOf5qqqRo3poO02WAvZ\nvzCh\r\n=FjJ0\r\n-----END PGP SIGNATURE-----\r\n"},"main":"dist/main.js","husky":{"hooks":{"post-merge":"node ./tools/scripts/postmerge-hook.js"}},"engines":{"lens":">= 4.0.0"},"gitHead":"e5cdb14e509ced5b2456a4d144bf43a47efce726","scripts":{"dev":"TARGET=development yarn build","fmt":"prettier --write \"{*,src/**/*}.+(js|ts*|yml|json)\"","lint":"eslint \"{*,src/**/*}.+(js|ts*)\"","test":"yarn lint && yarn fmt:check && yarn test:unit","build":"yarn clean && webpack","clean":"rm -rf ./dist","start":"TARGET=development yarn build --watch","fmt:check":"prettier --check \"{*,src/**/*}.+(js|ts*|yml|json)\"","test:unit":"echo 'Works for me! ¯\\_(ツ)_/¯'","prepublishOnly":"npm test && yarn build"},"_npmUser":{"name":"stefcameron","email":"stefan@stefcameron.com"},"renderer":"dist/renderer.js","publisher":"mirantis","repository":{"url":"git+https://github.com/Mirantis/lens-extension-cc.git","type":"git"},"_npmVersion":"7.0.5","description":"Lens extension that loads Mirantis Container Cloud clusters.","directories":{},"_nodeVersion":"14.15.0","_hasShrinkwrap":false,"devDependencies":{"mobx":"^6.0.4","husky":"^4.3.6","react":"^17.0.1","rtvjs":"^2.4.0","webpack":"^5.11.1","electron":"^9.3.5","prettier":"^2.2.1","react-dom":"^17.0.1","ts-loader":"^8.0.14","@babel/cli":"^7.12.10","node-fetch":"^2.6.1","prop-types":"^15.7.2","typescript":"^4.1.3","@babel/core":"^7.12.10","@types/node":"^14.14.20","webpack-cli":"^4.3.1","@types/react":"^17.0.0","babel-eslint":"^10.1.0","babel-loader":"^8.2.2","query-string":"^6.13.8","@emotion/core":"^10.0.35","@emotion/styled":"^10.0.27","emotion-theming":"^10.0.27","@babel/preset-env":"^7.12.11","@babel/preset-react":"^7.12.10","@k8slens/extensions":"^4.0.6","@types/react-router":"^5.1.9","babel-plugin-lodash":"^3.3.4","eslint-plugin-react":"^7.22.0","@emotion/styled-base":"^10.0.31","eslint-config-prettier":"^7.1.0","@typescript-eslint/parser":"^4.12.0","eslint-plugin-react-hooks":"^4.2.0","babel-plugin-module-resolver":"^4.1.0","@emotion/babel-preset-css-prop":"^10.0.27","@typescript-eslint/eslint-plugin":"^4.12.0","@babel/plugin-proposal-decorators":"^7.12.12","@babel/plugin-transform-react-jsx":"^7.12.12","@babel/plugin-proposal-class-properties":"^7.12.1"},"_npmOperationalInternal":{"tmp":"tmp/lens-extension-cc_2.0.3_1609961386491_0.9141427485817966","host":"s3://npm-registry-packages"}},"2.1.0":{"name":"@mirantis/lens-extension-cc","version":"2.1.0","keywords":["lens","mirantis","cluster"],"author":{"url":"https://github.com/stefcameron","name":"Stefan Cameron"},"license":"MIT","_id":"@mirantis/lens-extension-cc@2.1.0","maintainers":[{"name":"anton_nos","email":"anton.nos@perfectial.com"},{"name":"allysmith424","email":"allysmith424@gmail.com"},{"name":"miketkachenko","email":"miketkachenko@mirantis.com"},{"name":"roachedezigne","email":"roachedezigne@gmail.com"},{"name":"mirantis_it","email":"it@mirantis.com"},{"name":"mirantis-ci","email":"mirantis-ci-npm@mirantis.com"},{"name":"stefcameron","email":"stefan@stefcameron.com"},{"name":"ekhomyakova","email":"ekhomyakova@mirantis.com"},{"name":"aleksfront","email":"alex.andreev.email@gmail.com"},{"name":"emreboga","email":"emreku@yahoo.com"},{"name":"jehrismann-mir","email":"jehrismann@mirantis.com"},{"name":"cgirard-mir","email":"cgirard@mirantis.com"},{"name":"nokel81","email":"sebastian@malton.name"},{"name":"csnider-mirantis","email":"csnider@mirantis.com"},{"name":"infra-ci","email":"infra@mirantis.com"},{"name":"o.briukhanov","email":"oleksandr.briukhanov@perfectial.com"},{"name":"vikramhh","email":"vikrambirsingh@yahoo.com"},{"name":"msarcher","email":"msarcher@mirantis.com"},{"name":"stevejr","email":"steve.james.richards@gmail.com"}],"homepage":"https://github.com/Mirantis/lens-extension-cc#readme","bugs":{"url":"https://github.com/Mirantis/lens-extension-cc/issues"},"dist":{"shasum":"cd82817ed0f2d551fbdc58b3f7f9a698afd99a56","tarball":"https://registry.npmjs.org/@mirantis/lens-extension-cc/-/lens-extension-cc-2.1.0.tgz","fileCount":6,"integrity":"sha512-KMN+DgWEY62mWp2DZMLrlNUQugTcI3hHtxJcA0J4ni+waTSmrx+Ccgx1hqYOWjJbmJYkr6zfJ7Q3dZtja6VJrg==","signatures":[{"sig":"MEYCIQDG66D6FwwNk8iYIVzPfNvUUfGIpHFYRy36rQibuFUA7QIhAI9omghZJal2IeC5F2shxXsnWFxDWd8886IlZJaQLrFs","keyid":"SHA256:jl3bwswu80PjjokCgh0o2w5c2U4LhQAE57gj9cz1kzA"}],"unpackedSize":3062034,"npm-signature":"-----BEGIN PGP SIGNATURE-----\r\nVersion: OpenPGP.js v3.0.13\r\nComment: https://openpgpjs.org\r\n\r\nwsFcBAEBCAAQBQJgDvETCRA9TVsSAnZWagAAO5sQAJ6isYuUaWA2f2gRwUz0\nIa/wM467GoptVFbUUV9epAZJ/vbSBFBk4FSH5dsk96GA3IeIGRLKvGSBV/HZ\nhJH1YjWc+GKDWTAoJXLWC0s+7bdZDTPrIDp/+63SdryhrOipi4DDfYaCLBr/\ndUvIzW/+T2L72TsIHIZ55PA9+Hnp4bGCKEUN2Mw6nKsoiGIfMYwvwZgsn2ZJ\nsjUdAjwPLyD8I1UsTa8XN+8NCoqrPd6iZkx47B4Vq1MdjgqnGHxYuHDzEPNu\nnBgcleVUaiDPFTsH/ZW3+VOlTr5jnbqKlFezS410fkUpI8zcra3Cmbo95GJ5\nIR0zrWQ2FtmkssplMirlTRS47gDC0A5BQdlW8RdKi9Jf/zZZvXOBu6d40NGq\nahF2GP1mcDz+JN50eHIxPZR2p6K/+n0FIW8+GdFooN6sNl3nLa2WP2g9z/6W\nNFyWifqQlK/ULEzGtjJG8ivXRyJbafNlvr0HUkMslMiRLNIBAiulj0BDKGb7\nNzejo/p5I/vCw9KCQiAL+B0ZWu9bKpTpqhrYM27qtvv894+rBFEaBOhuKrrP\nEkvvipd/9fiaPduR8OZImYsGMPSiCvSdKcyyfRBvczX7fwjiOB44F6W2wPON\n5NZpHNu37jd39B99DTZHSfSSw8Mw12Koc6KPJVU0QqmywbRiq7nuFY578nVO\nRpcH\r\n=VTmX\r\n-----END PGP SIGNATURE-----\r\n"},"main":"dist/main.js","husky":{"hooks":{"post-merge":"node ./tools/scripts/postmerge-hook.js"}},"engines":{"lens":">= 4.0.4"},"gitHead":"70b4277e554973666eaad181937151cb3c0ed241","scripts":{"dev":"TARGET=development yarn build","fmt":"prettier --write \"{*,src/**/*}.+(js|ts*|yml|json)\"","lint":"eslint \"{*,src/**/*}.+(js|ts*)\"","test":"yarn lint && yarn fmt:check && yarn test:unit","build":"yarn clean && webpack","clean":"rm -rf ./dist","start":"TARGET=development yarn build --watch","fmt:check":"prettier --check \"{*,src/**/*}.+(js|ts*|yml|json)\"","test:unit":"echo 'Works for me! ¯\\_(ツ)_/¯'","prepublishOnly":"npm test && yarn build"},"_npmUser":{"name":"stefcameron","email":"stefan@stefcameron.com"},"renderer":"dist/renderer.js","publisher":"mirantis","repository":{"url":"git+https://github.com/Mirantis/lens-extension-cc.git","type":"git"},"_npmVersion":"7.4.2","description":"Lens extension that loads Mirantis Container Cloud clusters.","directories":{},"_nodeVersion":"14.15.4","_hasShrinkwrap":false,"devDependencies":{"mobx":"^6.0.5","husky":"^4.3.8","react":"^17.0.1","rtvjs":"^3.1.2","eslint":"^7.18.0","webpack":"^5.17.0","electron":"^9.4.0","prettier":"^2.2.1","react-dom":"^17.0.1","ts-loader":"^8.0.14","@babel/cli":"^7.12.10","node-fetch":"^2.6.1","prop-types":"^15.7.2","typescript":"^4.1.3","@babel/core":"^7.12.10","@types/node":"^14.14.22","webpack-cli":"^4.4.0","@types/react":"^17.0.0","babel-eslint":"^10.1.0","babel-loader":"^8.2.2","query-string":"^6.13.8","@emotion/core":"^11.0.0","@emotion/react":"^11.1.4","@emotion/styled":"^11.0.0","@babel/preset-env":"^7.12.11","@babel/preset-react":"^7.12.10","@k8slens/extensions":"^4.0.8","@types/react-router":"^5.1.11","babel-plugin-lodash":"^3.3.4","eslint-plugin-react":"^7.22.0","@emotion/babel-plugin":"^11.1.2","eslint-config-prettier":"^7.2.0","@typescript-eslint/parser":"^4.14.0","eslint-plugin-react-hooks":"^4.2.0","babel-plugin-module-resolver":"^4.1.0","@typescript-eslint/eslint-plugin":"^4.14.0","@babel/plugin-proposal-decorators":"^7.12.12","@babel/plugin-transform-react-jsx":"^7.12.12","@babel/plugin-proposal-class-properties":"^7.12.1"},"_npmOperationalInternal":{"tmp":"tmp/lens-extension-cc_2.1.0_1611591954330_0.14660453610075264","host":"s3://npm-registry-packages"}},"2.1.1":{"name":"@mirantis/lens-extension-cc","version":"2.1.1","keywords":["lens","mirantis","cluster"],"author":{"url":"https://github.com/stefcameron","name":"Stefan Cameron"},"license":"MIT","_id":"@mirantis/lens-extension-cc@2.1.1","maintainers":[{"name":"anton_nos","email":"anton.nos@perfectial.com"},{"name":"allysmith424","email":"allysmith424@gmail.com"},{"name":"miketkachenko","email":"miketkachenko@mirantis.com"},{"name":"roachedezigne","email":"roachedezigne@gmail.com"},{"name":"mirantis_it","email":"it@mirantis.com"},{"name":"mirantis-ci","email":"mirantis-ci-npm@mirantis.com"},{"name":"stefcameron","email":"stefan@stefcameron.com"},{"name":"ekhomyakova","email":"ekhomyakova@mirantis.com"},{"name":"aleksfront","email":"alex.andreev.email@gmail.com"},{"name":"emreboga","email":"emreku@yahoo.com"},{"name":"jehrismann-mir","email":"jehrismann@mirantis.com"},{"name":"cgirard-mir","email":"cgirard@mirantis.com"},{"name":"nokel81","email":"sebastian@malton.name"},{"name":"csnider-mirantis","email":"csnider@mirantis.com"},{"name":"infra-ci","email":"infra@mirantis.com"},{"name":"o.briukhanov","email":"oleksandr.briukhanov@perfectial.com"},{"name":"vikramhh","email":"vikrambirsingh@yahoo.com"},{"name":"msarcher","email":"msarcher@mirantis.com"},{"name":"stevejr","email":"steve.james.richards@gmail.com"}],"homepage":"https://github.com/Mirantis/lens-extension-cc#readme","bugs":{"url":"https://github.com/Mirantis/lens-extension-cc/issues"},"dist":{"shasum":"f726d3bbcb0683cba46ed42be2f69294b3f14a38","tarball":"https://registry.npmjs.org/@mirantis/lens-extension-cc/-/lens-extension-cc-2.1.1.tgz","fileCount":6,"integrity":"sha512-2SOl3UAJ5apPccIJv+QjtbEY4gGv0SpK46yyCy8gsX+7U8D1bzpnNO2efFRgxMUC2fX75ysLLQQjli8U6PTVew==","signatures":[{"sig":"MEUCIC1+wIEToovkOO4NjoWy8fn19gXvrcJbUKNQeqckYbV4AiEA5wgzMWQ/xmKbW9Nz50nygCJsi/qG71tcA9/XdZY+qoU=","keyid":"SHA256:jl3bwswu80PjjokCgh0o2w5c2U4LhQAE57gj9cz1kzA"}],"unpackedSize":3067572,"npm-signature":"-----BEGIN PGP SIGNATURE-----\r\nVersion: OpenPGP.js v3.0.13\r\nComment: https://openpgpjs.org\r\n\r\nwsFcBAEBCAAQBQJgD2EbCRA9TVsSAnZWagAAzGcQAIG9sUYH605l1hpE6iL0\nql9enCKM+jSFJS+JYEioZc49U0noaTfnaS+U+kdfqyZHuYS/mohAJQYQFfSC\nS3S9uzFfkh2AvO2KUegiGaM8rShok9y2+vQuNkzMPHt2SywEpIrKaYQShvGK\nU+znTvsETkiYz/CDS5mkOMzC/nW+qKiSJYQkOSNy4IK18fMjnaJiuxB+hJ6O\np5wkatt8JUWS8Pn4dB0n5HkQ3eIFvr1ZCCriH/grwR4Sq+pO1mYIYcHqLfW3\nYF0nd3WPEMGvV/QGfuZd3Xo4XWlxHv6+pKezzqj7arqzwtnvFgykjRpNsweV\ndc3S4+YdIwbOEI03xFwgfVF36LkF8cdLs5S/cp3qf4/7/WJR7BRISXHALIlW\n1ulTqFYRFSeeflkWmOraA5LyI04BFcvgO8r65R3Y4Fdx44PEj0bFTfw5qMaR\n8KK+qv8aRU0e/3m6OYQ5jbmrYOw35o19dMVeZ1i1dStXb8fK0WrUKvlXuTnh\nim8xCeoJ54UQ+UlVuhFogssW3u6KLH96/4EmbdQhXpDVNb+LNV/JLIQbNhn1\nllv3IeWELngJr1nOhOcGf0mymW+Ppuw9mgelycWi8UJsn+90Qqqzrsrd5Il2\nAxrKVL1mQBNZ+ExHdcuBTYbTQMib9CU9aFblWXTtY7xKz7uk5lNPWjMmlU45\nAw9W\r\n=yBK4\r\n-----END PGP SIGNATURE-----\r\n"},"main":"dist/main.js","husky":{"hooks":{"post-merge":"node ./tools/scripts/postmerge-hook.js"}},"engines":{"lens":">= 4.0.4"},"gitHead":"895c735f9c8fa00fa1c03b7750bcfe49e17c38fc","scripts":{"dev":"TARGET=development yarn build","fmt":"prettier --write \"{*,src/**/*}.+(js|ts*|yml|json)\"","lint":"eslint \"{*,src/**/*}.+(js|ts*)\"","test":"yarn lint && yarn fmt:check && yarn test:unit","build":"yarn clean && webpack","clean":"rm -rf ./dist","start":"TARGET=development yarn build --watch","fmt:check":"prettier --check \"{*,src/**/*}.+(js|ts*|yml|json)\"","test:unit":"echo 'Works for me! ¯\\_(ツ)_/¯'","prepublishOnly":"npm test && yarn build"},"_npmUser":{"name":"stefcameron","email":"stefan@stefcameron.com"},"renderer":"dist/renderer.js","publisher":"mirantis","repository":{"url":"git+https://github.com/Mirantis/lens-extension-cc.git","type":"git"},"_npmVersion":"7.4.2","description":"Lens extension that loads Mirantis Container Cloud clusters.","directories":{},"_nodeVersion":"14.15.4","_hasShrinkwrap":false,"devDependencies":{"mobx":"^6.0.5","husky":"^4.3.8","react":"^17.0.1","rtvjs":"^3.1.2","eslint":"^7.18.0","webpack":"^5.17.0","electron":"^9.4.0","prettier":"^2.2.1","react-dom":"^17.0.1","ts-loader":"^8.0.14","@babel/cli":"^7.12.10","node-fetch":"^2.6.1","prop-types":"^15.7.2","typescript":"^4.1.3","@babel/core":"^7.12.10","@types/node":"^14.14.22","webpack-cli":"^4.4.0","@types/react":"^17.0.0","babel-eslint":"^10.1.0","babel-loader":"^8.2.2","query-string":"^6.13.8","@emotion/core":"^11.0.0","@emotion/react":"^11.1.4","@emotion/styled":"^11.0.0","@babel/preset-env":"^7.12.11","@babel/preset-react":"^7.12.10","@k8slens/extensions":"^4.0.8","@types/react-router":"^5.1.11","babel-plugin-lodash":"^3.3.4","eslint-plugin-react":"^7.22.0","@emotion/babel-plugin":"^11.1.2","eslint-config-prettier":"^7.2.0","@typescript-eslint/parser":"^4.14.0","eslint-plugin-react-hooks":"^4.2.0","babel-plugin-module-resolver":"^4.1.0","@typescript-eslint/eslint-plugin":"^4.14.0","@babel/plugin-proposal-decorators":"^7.12.12","@babel/plugin-transform-react-jsx":"^7.12.12","@babel/plugin-proposal-class-properties":"^7.12.1"},"_npmOperationalInternal":{"tmp":"tmp/lens-extension-cc_2.1.1_1611620634894_0.07676445112806829","host":"s3://npm-registry-packages"}},"2.1.2":{"name":"@mirantis/lens-extension-cc","version":"2.1.2","keywords":["lens","mirantis","cluster"],"author":{"url":"https://github.com/stefcameron","name":"Stefan Cameron"},"license":"MIT","_id":"@mirantis/lens-extension-cc@2.1.2","maintainers":[{"name":"anton_nos","email":"anton.nos@perfectial.com"},{"name":"allysmith424","email":"allysmith424@gmail.com"},{"name":"miketkachenko","email":"miketkachenko@mirantis.com"},{"name":"roachedezigne","email":"roachedezigne@gmail.com"},{"name":"mirantis_it","email":"it@mirantis.com"},{"name":"mirantis-ci","email":"mirantis-ci-npm@mirantis.com"},{"name":"stefcameron","email":"stefan@stefcameron.com"},{"name":"ekhomyakova","email":"ekhomyakova@mirantis.com"},{"name":"aleksfront","email":"alex.andreev.email@gmail.com"},{"name":"emreboga","email":"emreku@yahoo.com"},{"name":"jehrismann-mir","email":"jehrismann@mirantis.com"},{"name":"cgirard-mir","email":"cgirard@mirantis.com"},{"name":"nokel81","email":"sebastian@malton.name"},{"name":"csnider-mirantis","email":"csnider@mirantis.com"},{"name":"infra-ci","email":"infra@mirantis.com"},{"name":"o.briukhanov","email":"oleksandr.briukhanov@perfectial.com"},{"name":"vikramhh","email":"vikrambirsingh@yahoo.com"},{"name":"msarcher","email":"msarcher@mirantis.com"},{"name":"stevejr","email":"steve.james.richards@gmail.com"}],"homepage":"https://github.com/Mirantis/lens-extension-cc#readme","bugs":{"url":"https://github.com/Mirantis/lens-extension-cc/issues"},"dist":{"shasum":"37360018263da7fd61f05275a89b74613990cad2","tarball":"https://registry.npmjs.org/@mirantis/lens-extension-cc/-/lens-extension-cc-2.1.2.tgz","fileCount":6,"integrity":"sha512-4NmuDdR22nI6zLasgzRzifl9itxpVHy/YRND5Tj0p6Xvd4THQ2cdtz/AJECP9t6ElP5TW4l6CLHCfz7MsFxLfw==","signatures":[{"sig":"MEQCIFyh+LV/DBifm2MwqkEMhVbXO3F7KoAD38TRDIpTHJJ2AiBReDgmrG8OdnAcuNHUt0IZpPnqIRG8a3hHFDgiHGfDbA==","keyid":"SHA256:jl3bwswu80PjjokCgh0o2w5c2U4LhQAE57gj9cz1kzA"}],"unpackedSize":3075508,"npm-signature":"-----BEGIN PGP SIGNATURE-----\r\nVersion: OpenPGP.js v3.0.13\r\nComment: https://openpgpjs.org\r\n\r\nwsFcBAEBCAAQBQJgHDiXCRA9TVsSAnZWagAAWWMP/0gHApiC91xAGpO7cr/z\ntk8D5TNzNVMGl5yeVIjAUjGmE8juAE6Kk6+8gPtBHk7263GOkSZndwd5yq8q\nL+f8zdG4+R4ozkn1wN7dkZl6ySTcBlKjtGYAd+xb/hZMqemmC4YmespRQZnF\nRWtyPRSs6JlFxDfkms3mnlRuYw+c4A5FggYEphH095nICG5t2eZ4eG6abQ4T\niV4KFhSGitXr5f4MKzjqLRBv0vHI+LhnOfTj/hDDjvMrzjy+z+emlSwNxRWJ\nxFykfPDMgeQc6cujJ0xMqlJChRT/5Zpq/8/lvEbieD9IAhjo9bGpnQvFtcKv\nsd4aVySxdpgzlc4bm2ICWmSRIOy3hWCcRYTuCKHYgS7HzfELb7UB+lF58BrE\njFxUnxKbZ3wP8w3frGWY0r1FCEqaReZ/As81msv+upcx8usq+3jEuAOAfPtJ\nlTpLhKLQpt7WxAv51979OckFTIauAxK46t+QAyHALPXE/c2YtZK/8rI4pRqv\noyACdbsbyI7nBwD8RW1fQqe9lCPANs+wL5KI6utdQQr+0s486DT/CEXLRe+5\nng5OP4tgxnaproTUSgLcIMQWlW68vciBppYw9Whqo2XFWf2H5P7oF7GEMWxs\nh2eqvVOoSOeu9U6YcZHZlGoVAAPDV+CieYSRhX5kA1TR+UYkts87Vx7L4uIx\nx9Aw\r\n=QovF\r\n-----END PGP SIGNATURE-----\r\n"},"main":"dist/main.js","husky":{"hooks":{"post-merge":"node ./tools/scripts/postmerge-hook.js"}},"engines":{"lens":">= 4.0.4"},"gitHead":"a6e6fda5044459e6cffabc123c1f559616b7dbb0","scripts":{"dev":"TARGET=development yarn build","fmt":"prettier --write \"{*,src/**/*}.+(js|ts*|yml|json)\"","lint":"eslint \"{*,src/**/*}.+(js|ts*)\"","test":"yarn lint && yarn fmt:check && yarn test:unit","build":"yarn clean && webpack","clean":"rm -rf ./dist","start":"TARGET=development yarn build --watch","fmt:check":"prettier --check \"{*,src/**/*}.+(js|ts*|yml|json)\"","test:unit":"echo 'Works for me! ¯\\_(ツ)_/¯'","prepublishOnly":"npm test && yarn build"},"_npmUser":{"name":"stefcameron","email":"stefan@stefcameron.com"},"renderer":"dist/renderer.js","publisher":"mirantis","repository":{"url":"git+https://github.com/Mirantis/lens-extension-cc.git","type":"git"},"_npmVersion":"7.4.2","description":"Lens extension that loads Mirantis Container Cloud clusters.","directories":{},"_nodeVersion":"14.15.4","_hasShrinkwrap":false,"devDependencies":{"mobx":"^6.1.4","husky":"^4.3.8","react":"^17.0.1","rtvjs":"^3.1.3","eslint":"^7.19.0","webpack":"^5.20.1","electron":"^9.4.0","prettier":"^2.2.1","react-dom":"^17.0.1","ts-loader":"^8.0.14","@babel/cli":"^7.12.13","node-fetch":"^2.6.1","prop-types":"^15.7.2","typescript":"^4.1.3","@babel/core":"^7.12.13","@types/node":"^14.14.24","webpack-cli":"^4.5.0","@types/react":"^17.0.1","babel-eslint":"^10.1.0","babel-loader":"^8.2.2","query-string":"^6.13.8","@emotion/core":"^11.0.0","@emotion/react":"^11.1.4","@emotion/styled":"^11.0.0","@babel/preset-env":"^7.12.13","@babel/preset-react":"^7.12.13","@k8slens/extensions":"^4.0.8","@types/react-router":"^5.1.11","babel-plugin-lodash":"^3.3.4","eslint-plugin-react":"^7.22.0","@emotion/babel-plugin":"^11.1.2","eslint-config-prettier":"^7.2.0","@typescript-eslint/parser":"^4.14.2","eslint-plugin-react-hooks":"^4.2.0","babel-plugin-module-resolver":"^4.1.0","@typescript-eslint/eslint-plugin":"^4.14.2","@babel/plugin-proposal-decorators":"^7.12.13","@babel/plugin-transform-react-jsx":"^7.12.12","@babel/plugin-proposal-class-properties":"^7.12.1"},"_npmOperationalInternal":{"tmp":"tmp/lens-extension-cc_2.1.2_1612462230468_0.8358342342364078","host":"s3://npm-registry-packages"}},"2.2.0":{"name":"@mirantis/lens-extension-cc","version":"2.2.0","keywords":["lens","mirantis","cluster"],"author":{"url":"https://github.com/stefcameron","name":"Stefan Cameron"},"license":"MIT","_id":"@mirantis/lens-extension-cc@2.2.0","maintainers":[{"name":"gunbladesniper","email":"savaughnjones@gmail.com"},{"name":"anton_nos","email":"anton.nos@perfectial.com"},{"name":"allysmith424","email":"allysmith424@gmail.com"},{"name":"miketkachenko","email":"miketkachenko@mirantis.com"},{"name":"roachedezigne","email":"roachedezigne@gmail.com"},{"name":"mirantis_it","email":"it@mirantis.com"},{"name":"mirantis-ci","email":"mirantis-ci-npm@mirantis.com"},{"name":"stefcameron","email":"stefan@stefcameron.com"},{"name":"ekhomyakova","email":"ekhomyakova@mirantis.com"},{"name":"aleksfront","email":"alex.andreev.email@gmail.com"},{"name":"emreboga","email":"emreku@yahoo.com"},{"name":"jehrismann-mir","email":"jehrismann@mirantis.com"},{"name":"cgirard-mir","email":"cgirard@mirantis.com"},{"name":"nokel81","email":"sebastian@malton.name"},{"name":"csnider-mirantis","email":"csnider@mirantis.com"},{"name":"infra-ci","email":"infra@mirantis.com"},{"name":"o.briukhanov","email":"oleksandr.briukhanov@perfectial.com"},{"name":"vikramhh","email":"vikrambirsingh@yahoo.com"},{"name":"msarcher","email":"mario@sarcher.de"},{"name":"stevejr","email":"steve.james.richards@gmail.com"}],"homepage":"https://github.com/Mirantis/lens-extension-cc#readme","bugs":{"url":"https://github.com/Mirantis/lens-extension-cc/issues"},"dist":{"shasum":"2856fec82ce2a4f445d7ab6b7526beba666901a1","tarball":"https://registry.npmjs.org/@mirantis/lens-extension-cc/-/lens-extension-cc-2.2.0.tgz","fileCount":6,"integrity":"sha512-xyZ6QfU3+A+rr7lNJ1Si5jhG7hm/UpGr3TylW4lnDVEbzKvA45T8V9K8/mT6W2dzZEVBTFBu12j1rQTshOuEug==","signatures":[{"sig":"MEQCICIxSqPSMZPS61S8gpm76Sge/uyiWFY/WktwzdW28eLhAiA2p+m3C0S84YLU5Gku9YDZlrLBljBhOiVDufozo8DFRw==","keyid":"SHA256:jl3bwswu80PjjokCgh0o2w5c2U4LhQAE57gj9cz1kzA"}],"unpackedSize":3273065,"npm-signature":"-----BEGIN PGP SIGNATURE-----\r\nVersion: OpenPGP.js v3.0.13\r\nComment: https://openpgpjs.org\r\n\r\nwsFcBAEBCAAQBQJgjJ3iCRA9TVsSAnZWagAAwXgP/i4NJUGDzcMMrkQYWMCm\ndyc2qsaK+gk9rnRPm+cY9rlL35RIHV2wiJQHuuRHgIiK7VKG0JMKHB58RD2x\nHR7J75fMR46Dta69/HnGR/YWBSQPamj45/IhpnxiKwKdhqw1I1mBLLA5tN6E\nwtkKH72QElxQ441w/nGMKRt4ktOJW0ar0iqyRe5Bv6EtLxP0H3tHfthMQC6J\nZ2kStr+2SkIB3fSTGIxRzjruQIeUqs53MB9os43Bxye5AC4e1FLH7ttAbxy9\nsQKyLsdyZZBeyNgu7XFW3iplH7IH+XzUxS3IkywbKrPbMeGh0aUET5HObtAg\nmGNKdGgAEi6SPRhk6v6bEszUTrpiyeinfA5CpfWVnvyQuMfKFdnZnXQUXlAN\nvnZ7qYLzYrG6VfsTRB8pv2oSCgawFBuklbNxiuzb4PKuNnOF0rfuougbTIFO\nZ8n1wYFuypZuWSSilpdeUaHJ2ZVnn2kdlRS2EjlELj8AQoyYIp4X/88kfRzb\nr7YQbQ12wRzC0IssOndHj5ui3iOCzNLOAWN1FsWbuRvJctn3Cs/tAS7zRlDA\nwVSSScRcV6IF5PKlTPYWPn2eJYG9XCmkeSoR/o8niS3YOltFPZg0H75+ALda\n+bWa1iJg6M5gnUeYA2Yof2GsaM64XkahI7B3Iizxi9E2Qec7oCx9FaCL7rs/\nVw3+\r\n=yGE7\r\n-----END PGP SIGNATURE-----\r\n"},"main":"dist/main.js","engines":{"lens":">= 4.0.4"},"gitHead":"a79307420cca410179fc83eaeb41523d271b48d9","scripts":{"dev":"TARGET=development yarn build","fmt":"prettier --write \"{*,src/**/*}.+(js|ts*|yml|json)\"","lint":"eslint \"{*,src/**/*}.+(js|ts*)\"","test":"yarn lint && yarn fmt:check && yarn test:unit","babel":"babel src --out-dir dist_babel","build":"yarn clean && webpack","clean":"rm -rf ./dist && rm -rf ./dist_babel","start":"TARGET=development yarn build --watch","prebabel":"rm -rf ./dist_babel","fmt:check":"prettier --check \"{*,src/**/*}.+(js|ts*|yml|json)\"","test:unit":"echo 'Works for me! ¯\\_(ツ)_/¯'","prepublishOnly":"yarn test && yarn build"},"_npmUser":{"name":"stefcameron","email":"stefan@stefcameron.com"},"renderer":"dist/renderer.js","publisher":"mirantis","repository":{"url":"git+https://github.com/Mirantis/lens-extension-cc.git","type":"git"},"_npmVersion":"7.11.1","description":"Lens extension that loads Mirantis Container Cloud clusters.","directories":{},"_nodeVersion":"14.16.1","_hasShrinkwrap":false,"devDependencies":{"mobx":"^6.3.0","react":"^17.0.2","rtvjs":"^3.1.4","eslint":"^7.25.0","webpack":"^5.36.1","electron":"^9.4.0","prettier":"^2.2.1","react-dom":"^17.0.2","ts-loader":"^9.1.1","@babel/cli":"^7.13.16","node-fetch":"^2.6.1","prop-types":"^15.7.2","typescript":"^4.2.4","@babel/core":"^7.14.0","@types/node":"^15.0.1","webpack-cli":"^4.6.0","@types/react":"^17.0.4","babel-loader":"^8.2.2","query-string":"^7.0.0","@emotion/core":"^11.0.0","@emotion/react":"^11.1.5","@emotion/styled":"^11.3.0","@babel/preset-env":"^7.14.0","@babel/preset-react":"^7.13.13","@k8slens/extensions":"^4.2.3","@types/react-router":"^5.1.13","babel-plugin-lodash":"^3.3.4","eslint-plugin-react":"^7.23.2","@babel/eslint-parser":"^7.13.14","@emotion/babel-plugin":"^11.3.0","eslint-config-prettier":"^8.3.0","@typescript-eslint/parser":"^4.22.0","eslint-plugin-react-hooks":"^4.2.0","babel-plugin-module-resolver":"^4.1.0","@typescript-eslint/eslint-plugin":"^4.22.0","@babel/plugin-proposal-decorators":"^7.13.15","@babel/plugin-transform-react-jsx":"^7.13.12"},"_npmOperationalInternal":{"tmp":"tmp/lens-extension-cc_2.2.0_1619828193370_0.04407252251575655","host":"s3://npm-registry-packages"}},"2.2.1":{"name":"@mirantis/lens-extension-cc","version":"2.2.1","keywords":["lens","mirantis","cluster"],"author":{"url":"https://github.com/stefcameron","name":"Stefan Cameron"},"license":"MIT","_id":"@mirantis/lens-extension-cc@2.2.1","maintainers":[{"name":"gunbladesniper","email":"savaughnjones@gmail.com"},{"name":"anton_nos","email":"anton.nos@perfectial.com"},{"name":"allysmith424","email":"allysmith424@gmail.com"},{"name":"miketkachenko","email":"miketkachenko@mirantis.com"},{"name":"roachedezigne","email":"roachedezigne@gmail.com"},{"name":"mirantis_it","email":"it@mirantis.com"},{"name":"mirantis-ci","email":"mirantis-ci-npm@mirantis.com"},{"name":"stefcameron","email":"stefan@stefcameron.com"},{"name":"ekhomyakova","email":"ekhomyakova@mirantis.com"},{"name":"aleksfront","email":"alex.andreev.email@gmail.com"},{"name":"emreboga","email":"emreku@yahoo.com"},{"name":"jehrismann-mir","email":"jehrismann@mirantis.com"},{"name":"cgirard-mir","email":"cgirard@mirantis.com"},{"name":"nokel81","email":"sebastian@malton.name"},{"name":"csnider-mirantis","email":"csnider@mirantis.com"},{"name":"infra-ci","email":"infra@mirantis.com"},{"name":"o.briukhanov","email":"oleksandr.briukhanov@perfectial.com"},{"name":"vikramhh","email":"vikrambirsingh@yahoo.com"},{"name":"msarcher","email":"mario@sarcher.de"},{"name":"stevejr","email":"steve.james.richards@gmail.com"}],"homepage":"https://github.com/Mirantis/lens-extension-cc#readme","bugs":{"url":"https://github.com/Mirantis/lens-extension-cc/issues"},"dist":{"shasum":"238432ba6ea72576ce63e5adec537fd85bf6cd68","tarball":"https://registry.npmjs.org/@mirantis/lens-extension-cc/-/lens-extension-cc-2.2.1.tgz","fileCount":6,"integrity":"sha512-loMCnYbPiGRbrlK1Ndt16Cn1xrY3sJXkmGcktSt4LXQaX6adFnj89626dv6tEdalgdNbmZnm4iQUe4GXilvJjw==","signatures":[{"sig":"MEUCIQCQhbIl7NHJ7cl0UTipWVAX+z079tEGwHGTv0SwrdR+vQIgDCfErYMXLK+LDBT68uc4tWH+O2mgRSLFw/MzpuR9x8k=","keyid":"SHA256:jl3bwswu80PjjokCgh0o2w5c2U4LhQAE57gj9cz1kzA"}],"unpackedSize":3272893,"npm-signature":"-----BEGIN PGP SIGNATURE-----\r\nVersion: OpenPGP.js v3.0.13\r\nComment: https://openpgpjs.org\r\n\r\nwsFcBAEBCAAQBQJgkcQbCRA9TVsSAnZWagAAJXkP/1nk/Bom783zXQidCqB3\nbvmpLioMfogQrx5g3SAsmuo+ogV6vBdVohOTvYz4MnAUboGqwCybDLZoAgmD\nocSxLVyjSf2I+ej/yBBpn3yd2ZwJUlqMqq2dJmyjTEKGoOBt7AzdJZpQ1XPi\nJwgmISG1cBs3mYpjgzt60nDuPGPmP9WHs2kozbsQIYhynBrvWrwFMOxZ7Ozq\ngZk4G8McUCcYVuMOI7haN8nhMB/46uCyr6uKt7G6uHOEAFdlzqJn5rl+Zf/0\nj2ucCi7PPyb42C72UslIPnddHpkWotbsKO2LtsPed44dEoO/l6SAmwEuczTx\nTPVAiIaAgv6bBKuZLGy2O+Jz9kYElOU5MZDBMaGyR33D+b5U4f6obuFBB0pE\naydfmACMzeRfqJnPsI6hv/JOfJs0+hzNRSAp5HGIM9BEn7EhFR9BLqmfKAFz\nLcU4e3Lp7PMR3713W9oRqd5xtl74FyKxc7OnZV/JQu0jgpZyypUxW+z/NPnH\nQ4ny8AILOigyIgbeR1AVryZrGsxv4zdWP/nlncMJQjZ44UTb82i0lhNh1qyd\niUPzq67yFH4Ou+rG3f0hdcE2npxeliNpPxL28udDzbUQzzY5k3SPgnDbVmgw\ngMbHTKfciTKI2wE5M00uK/ZeHCrxQceTCxX9e2gslRNuWS/AYq+x6WRkKamj\nlR+l\r\n=C9gX\r\n-----END PGP SIGNATURE-----\r\n"},"main":"dist/main.js","engines":{"lens":">= 4.0.4"},"gitHead":"a688ec7a986d200e21e833f894a0d118850cd783","scripts":{"dev":"TARGET=development yarn build","fmt":"prettier --write \"{*,src/**/*}.+(js|ts*|yml|json)\"","lint":"eslint \"{*,src/**/*}.+(js|ts*)\"","test":"yarn lint && yarn fmt:check && yarn test:unit","babel":"babel src --out-dir dist_babel","build":"yarn clean && webpack","clean":"rm -rf ./dist && rm -rf ./dist_babel","start":"TARGET=development yarn build --watch","prebabel":"rm -rf ./dist_babel","fmt:check":"prettier --check \"{*,src/**/*}.+(js|ts*|yml|json)\"","test:unit":"echo 'Works for me! ¯\\_(ツ)_/¯'","prepublishOnly":"yarn test && yarn build"},"_npmUser":{"name":"stefcameron","email":"stefan@stefcameron.com"},"renderer":"dist/renderer.js","publisher":"mirantis","repository":{"url":"git+https://github.com/Mirantis/lens-extension-cc.git","type":"git"},"_npmVersion":"7.11.1","description":"Lens extension that loads Mirantis Container Cloud clusters.","directories":{},"_nodeVersion":"14.16.1","_hasShrinkwrap":false,"devDependencies":{"mobx":"^6.3.0","react":"^17.0.2","rtvjs":"^4.0.0","eslint":"^7.25.0","webpack":"^5.36.2","electron":"^9.4.0","prettier":"^2.2.1","react-dom":"^17.0.2","ts-loader":"^9.1.1","@babel/cli":"^7.13.16","node-fetch":"^2.6.1","prop-types":"^15.7.2","typescript":"^4.2.4","@babel/core":"^7.14.0","@types/node":"^15.0.1","webpack-cli":"^4.6.0","@types/react":"^17.0.4","babel-loader":"^8.2.2","query-string":"^7.0.0","@emotion/core":"^11.0.0","@emotion/react":"^11.1.5","@emotion/styled":"^11.3.0","@babel/preset-env":"^7.14.1","@babel/preset-react":"^7.13.13","@k8slens/extensions":"^4.2.4","@types/react-router":"^5.1.13","babel-plugin-lodash":"^3.3.4","eslint-plugin-react":"^7.23.2","@babel/eslint-parser":"^7.13.14","@emotion/babel-plugin":"^11.3.0","eslint-config-prettier":"^8.3.0","@typescript-eslint/parser":"^4.22.0","eslint-plugin-react-hooks":"^4.2.0","babel-plugin-module-resolver":"^4.1.0","@typescript-eslint/eslint-plugin":"^4.22.0","@babel/plugin-proposal-decorators":"^7.13.15","@babel/plugin-transform-react-jsx":"^7.13.12"},"_npmOperationalInternal":{"tmp":"tmp/lens-extension-cc_2.2.1_1620165658812_0.5116948936113332","host":"s3://npm-registry-packages"}},"3.0.0-beta.1":{"name":"@mirantis/lens-extension-cc","version":"3.0.0-beta.1","keywords":["lens","mirantis","cluster"],"author":{"url":"https://github.com/stefcameron","name":"Stefan Cameron"},"license":"MIT","_id":"@mirantis/lens-extension-cc@3.0.0-beta.1","maintainers":[{"name":"avasylytsia-mirantis","email":"avasylytsia@mirantis.com"},{"name":"anaxdev","email":"anaxdev@outlook.com"},{"name":"ologvinova","email":"ologvinova@mirantis.com"},{"name":"ogusarenko","email":"ogusarenko@mirantis.com"},{"name":"vmarkov-m","email":"vmarkov@mirantis.com"},{"name":"alexshu","email":"ashu@mirantis.com"},{"name":"ry4nz","email":"rzhang@mirantis.com"},{"name":"gunbladesniper","email":"savaughnjones@gmail.com"},{"name":"anton_nos","email":"anton.nos@perfectial.com"},{"name":"allysmith424","email":"allysmith424@gmail.com"},{"name":"roachedezigne","email":"roachedezigne@gmail.com"},{"name":"mirantis_it","email":"it@mirantis.com"},{"name":"mirantis-ci","email":"mirantis-ci-npm@mirantis.com"},{"name":"stefcameron","email":"stefan@stefcameron.com"},{"name":"ekhomyakova","email":"ekhomyakova@mirantis.com"},{"name":"emreboga","email":"emreku@yahoo.com"},{"name":"cgirard-mir","email":"cgirard@mirantis.com"},{"name":"csnider-mirantis","email":"csnider@mirantis.com"},{"name":"infra-ci","email":"infra@mirantis.com"},{"name":"o.briukhanov","email":"oleksandr.briukhanov@perfectial.com"},{"name":"vikramhh","email":"vikrambirsingh@yahoo.com"}],"homepage":"https://github.com/Mirantis/lens-extension-cc#readme","bugs":{"url":"https://github.com/Mirantis/lens-extension-cc/issues"},"dist":{"shasum":"6c2f31db20c7ee974eef89565bee9d10ec524810","tarball":"https://registry.npmjs.org/@mirantis/lens-extension-cc/-/lens-extension-cc-3.0.0-beta.1.tgz","fileCount":6,"integrity":"sha512-hwOgtzzuDm36glCHIfAU+IriSiriiW1mJvccB4vpIRS4FZSjC+3mKK0eZonAXW3c0uZ1GyiDE9rApLXTD1JQ9w==","signatures":[{"sig":"MEUCIQDJzaoW0R0S/XSLIZzZVjzz1rWSLzLxoqgpcaa1ExjMrwIgQs4d5APDDUZRFkf07dV80EPAMb7g+06f4Ido6BEvYT4=","keyid":"SHA256:jl3bwswu80PjjokCgh0o2w5c2U4LhQAE57gj9cz1kzA"}],"unpackedSize":3322794,"npm-signature":"-----BEGIN PGP SIGNATURE-----\r\nVersion: OpenPGP.js v3.0.13\r\nComment: https://openpgpjs.org\r\n\r\nwsFcBAEBCAAQBQJgwju6CRA9TVsSAnZWagAAS+cQAJOuxCWWVam4J8KM0k3u\n486R5/Sga1X4nu2gFHR0hn/em252FZO//8KQyb5Yzmy5ttVlhZ5VvwtucJfb\nGGuqSxb0BPSCAcaz8U4mGZFcIoysynVq+73+KysFOmxbD12hKuXzwW6QhJ4Y\nCmcz013vYGwhvg4+H0ANhFLDC3AmQ/MypmW3l95Sjwym+fVO5zMM05ZVRa9I\ntENnnjazXdl5C2DlQoWEXM7+0auJI+gsqBKUJiCE9CIawHhOlPOTD+qqzvk7\nX0R2rYjcoybdxrw9D7GpN730HfoNuLeEC6QoIx5h4ABnAjfS3uBNxkj5r+re\nNl5051k3Bc2B2GIIpoTdEqw/TaYs1Vxf+EWKxXclnWabv9fzVifWzzjEtB0M\nkki6oq13o2eMVggpZfr/ry3heQDz+mQ0DEsBafm0Uv6EFa2w8TYqV0ar5Jmg\n8RTRc1Qj5XZi8os1qJP4+5l/vS6+cVEZPkYKcYdZgG0hFAQM88RF0Vezn2dw\nTUwLvT9LzXOIDzUjguRZvreaiZ24wJ0QCdBpE+nX6vr9YysOzhAC0l3/y+Bm\n3xVQ5OQpk9WjIXRihYj6l0CQ2snLnLQB/uQXM+7pyUYt7GUi+0PQyHUt/F8U\nYHUC5//G529M5m8NtieCYRVa/pmSBthPgcItY+yTg54VzZKVqBgxtOelxcwB\nYJkz\r\n=0732\r\n-----END PGP SIGNATURE-----\r\n"},"main":"dist/main.js","readme":"# Mirantis Container Cloud Lens Extension\n\n![CI](https://github.com/Mirantis/lens-extension-cc/workflows/CI/badge.svg?branch=master&event=push)\n\nThis [Lens](https://k8slens.dev/) Extension adds a status bar item, and a menu item, that makes it easy to connect Lens to a Mirantis Container Cloud instance and add its clusters to Lens.\n\nℹ️ Requires Lens `>= 5.0.0`.\n\n![Extension UI](./docs/screen-shot.png)\n\n## Installing\n\nInstallation is very easy! Just make sure Lens `5.0.0` or later is running, and follow these simple steps:\n\n1. Switch to the Extensions view (`CMD+SHIFT+E` on macOS).\n2. Enter the name of this extension, `@mirantis/lens-extension-cc`, into the Install Extension box.\n3. Click on the Install button.\n\n![Extension UI](./docs/ext-install-by-name.png)\n\nYou should now be able to choose the new `File > Add Cloud Clusters` menu item, or click on the `Mirantis Container Cloud` status bar icon (far right side of the status bar at the bottom of the app), to get started.\n\n> 💬 These instructions will help you install the extension for direct use with Lens. Follow the [development](#development) instructions below if you intend to work on the extension to improve it.\n\n## Upgrading\n\nTo upgrade to a newer release, go to the Extensions view (`CMD+SHIFT+E` on macOS), [uninstall](#uninstalling) the extension, and then [re-install](#installing) it again.\n\n## Uninstalling\n\nGo to the Lens Extensions view (`CMD+SHIFT+E` on macOS) and click the Uninstall button next to this extension.\n\n## Catalog\n\nLens 5.0.0 replaced its Workspace concept with a new Catalog that allows much more flexibility.\n\nWhen adding clusters to Lens with this extension, each cluster will get the following labels:\n\n- `mcc=true`\n- `project=NAMESPACE` (set to the name of the project/namespace in Container Cloud to which the cluster belongs)\n\nThe extension also supports __removing__ and __deleting__ clusters that it added by choosing these items from the cluster's \"More\" context menu in the Catalog (as well as icons in the Catalog Drawer's toolbar):\n\n- __Remove:__ Removes the cluster from the Catalog, but leaves the kubeConfig on disk in the configured location.\n- __Delete config:__ Removes the cluster from the Catalog __and deletes__ the kubeConfig from disk.\n\nIn either case, __the cluster in Container Cloud is unaffected__. If you need to terminate the cluster, please do so in the Container Cloud web application.\n\n## SSO support\n\n📣 Mirantis Container Cloud instances that use third-party SSO authentication via __Keycloak__ are __required__ in order to use this extension.\n\n### Keycloak Configuration\n\nSince the integration leverages the `lens://` URL protocol handling feature for extensions, __Lens 4.2__ (or later) is required, and the __Keycloak Client__ of the instance must be configured as follows:\n\n-   Allow the following redirect URI: `lens://extensions/@mirantis/lens-extension-cc/oauth/code`\n\n> 💡 Be sure to make these configuration adjustments __on every Keycloak Client__ (`kaas` for the management cluster, and `k8s` for child clusters, by default) that manages clusters you will want to add. The extension does not know ahead of time whether you have given it the appropriate access, and adding clusters without this configuration will result in an error.\n\n### Authentication flow\n\nWhen connecting to an instance that uses SSO, Lens will open the instance's SSO authorization page in the system's default browser.\n\nOnce authorized, Keycloak will redirect to the `lens://...` URL, triggering the browser to ask permission to open the Lens app to process the request (unless permission was granted previously with the _always allow_ check box for your SSO ID Provider, e.g. `accounts.google.com`):\n\n![Lens protocol permission - always allow](docs/lens-protocol-permission.png)\n\n> ⚠️ Even if you check the \"Always allow\" box, your browser may still continue to show a popup message waiting for you to click on an \"Open Lens.app\" button. This is a built-in security feature. Please be on the look out for this popup in your browser whenever accessing your Container Cloud instance, or adding clusters to Lens.\n\nWhether the permission was already given, or upon clicking __Open Lens.app__, Lens will receive focus again, and the extension will then read the list of namespaces and clusters and present them for selection.\n\nThe temporary browser window used for SSO authorization will likely still be open, and should now be closed manually.\n\n### Single cluster limitation\n\nDue to technical issues with generating a unique kubeConfig per cluster, when the Container Cloud instance uses SSO authorization, cluster selection is __limited to a single cluster__:\n\n![Single cluster SSO limitation](docs/sso-single-cluster-warning.png)\n\nWe hope to overcome this limitation in the future.\n\n## Supported protocol requests\n\n[Lens 4.2](https://medium.com/k8slens/lens-4-2-released-f1c3268d3f95) introduced a new __custom Lens protocol handler__. This means Lens can now respond to `lens://` URL requests made in the browser, and this extension can now support some interesting requests that enable tighter integration between Mirantis Container Cloud instances and Lens.\n\n> Note that this integration is a one-way street: Container Cloud -> Lens. It does not work the other way around. _Reverse_ integration is achieved simply by making Container Cloud API requests from Lens, which is much easier to achieve, and has been used by this extension since its inception.\n\nThe __base URL__ for requests that this extension can respond to is:\n\n```\nlens://extensions/@mirantis/lens-extension-cc\n```\n\nThe following APIs are currently supported by this extension, from the base URL above:\n\n### Protocol - Activate cluster\n\nActivates a cluster __already added__ to Lens.\n\n```\nGET /activateCluster\n  ?cloudUrl={string}\n  &namespace={string}\n  &clusterName={string}\n  &clusterId={string}\n```\n\n- `cloudUrl`: URL to the instance, e.g. `https://container-cloud.my-company.com`\n- `namespace`: ID of the Container Cloud namespace containing the cluster to activate.\n- `clusterName`: Name of the cluster to activate.\n- `clusterId`: ID of the cluster (in `namespace`) to activate.\n\n### Protocol - Add one cluster\n\nAdds a __single__ cluster to Lens (if it hasn't already been added) by providing a pre-configured kubeConfig JSON object for the cluster. As such, this endpoint does not require the extension to perform any authentication/authorization requests. It simply stores the kubeConfig on disk and tells Lens where to find it.\n\n```\nGET /kubeConfig\n  ?cloudUrl={string}\n  &namespace={string}\n  &clusterName={string}\n  &clusterId={string}\n  &kubeConfig={string}\n```\n\n- `cloudUrl`: URL to the instance, e.g. `https://container-cloud.my-company.com`\n- `namespace`: ID of the Container Cloud namespace containing the cluster to activate.\n- `clusterName`: Name of the cluster to activate.\n- `clusterId`: ID of the cluster (in `namespace`) to activate.\n- `kubeConfig`: JSON-stringified, Base64-encoded kubeConfig payload.\n\n### Protocol - Add multiple clusters\n\nAllows the user to add __one or more__ clusters to Lens by telling the extension where to find them. Unlike [adding one cluster](#add-one-cluster), it does not automatically add any clusters to Lens. It simply triggers the extension to immediately list all available clusters, and then lets the user choose which ones to add.\n\n```\nGET /addClusters\n  ?cloudUrl={string}\n  &username={string}\n  &tokens={string}\n  [ &namespaces={string} ]\n```\n\n- `cloudUrl`: URL to the instance, e.g. `https://container-cloud.my-company.com`\n- `username`: Username associated with the `tokens`.\n- `tokens`: JSON-stringified, Base64-encoded OAuth2 tokens for the user.\n- `namespaces` (Optional): Comma-delimited list of namespace IDs to restrict the list of clusters presented by the extension (i.e. a filter on namespaces). Only clusters in these namespaces will be listed.\n\n### Protocol - SSO OAuth Code\n\nAllow the extension to use the system's default browser to broker an OAuth authorization code with a Keycloak client in a Container Cloud instance. This is used both for general access (to list clusters) as well as specific cluster access to generate kubeConfig files to add to Lens.\n\n```\nGET /oauth/code\n  ?code={string}\n  [ &state={string} ]\n  [ &error={string} ]\n  [ &error_description={string} ]\n```\n\n- `code`: Temporary authorization code to exchange for API tokens.\n- `state` (Optional): Used to differentiate between requests for general access and specific access. The value is generated by the extension as part of the request and should come back as part of the response.\n- `error` (Optional): OAuth error message, if an error occurs.\n- `error_description` (Optional): OAuth error description, if an error occurs.\n\n## FAQ\n\n- Why are management clusters not selected by default?\n    - The extension purposely doesn't not add management clusters to the default/initial set of selected clusters after retrieving clusters from a Mirantis Container Cloud instance because they are typically of less interest than workload clusters.\n- I get an error, \"Invalid redirect_uri\", when I attempt to access or add my clusters.\n    - Make sure you have properly [configured](#keycloak-configuration) all your Keycloak clients for use with the extension.\n- Why can I only selected one cluster to add at a time?\n    - See [Single cluster limitation](#single-cluster-limitation) when using SSO.\n- I was able to add my cluster to Lens, but Lens fails to show it because of an authentication error.\n    - Check if the cluster is only accessible over a private network (i.e. VPN) connection, and try opening it in Lens once connected to the network. Even though you can see the cluster in Container Cloud, as well as in the extension, accessing the cluster's details may still require a VPN connection in this case.\n\n## Development\n\n> __Yarn 1.x is required__\n\nFirst, quit Lens if it's currently running.\n\nThen, clone the repository wherever you prefer to have your code, and then link to it:\n\n```bash\n$ git clone https://github.com/Mirantis/lens-extension-cc.git /your/src/path\n$ mkdir -p ~/.k8slens/extensions\n$ ln -s /your/src/path ~/.k8slens/extensions/lens-extension-cc\n$ cd /your/src/path\n$ yarn       # install dependencies\n$ yarn start # start dev build in watch mode\n```\n\nThis will put the development build into watch mode.\n\nRestart Lens and go to the Extensions View (`CMD+SHIFT+E` on macOS) to enable it, which will cause it to load for the first time.\n\nNow, as you make source changes, the build will run, and all you need to do is __reload the Lens window__ (`CMD+R` on macOS) to see your changes.\n\nYou can also run a one-off development build with `yarn dev`.\n\n> Note these steps will get much easier once [this Lens issue](https://github.com/lensapp/lens/issues/1741) is fixed.\n\n### Dev - Uninstalling\n\nGo to the Lens Extensions View (`CMD+SHIFT+E` on macOS) and use the UI to uninstall it.\n\nThis will simply remove the symlink [you created](#development) in `~/.k8slens/extensions` and leave your linked directory intact.\n\n### Dev - Publishing\n\nFirst, __update the CHANGELOG__:\n\n- Make sure everything in __UNRELEASED__ is accurate\n- Change `UNRELEASED -> vX.Y.Z` (version that will be published)\n\nThen __use NPM__:\n\n```bash\n$ npm version <patch|minor|major>\n$ npm publish --access public        # <- NOTE the '--access public' part!\n$ git push && git push --tags\n```\n\n> By default, packages published to an NPM scope/org are __private__. Use the `--access public` option to publish it as a public package instead. You can also [configure NPM](https://docs.npmjs.com/configuring-your-npm-client-with-your-organization-settings#setting-package-visibility-to-public-for-a-single-package) to always publish that single package publicly by running `npm config set access public` within the repository root directory (i.e. package root).\n\nThe `prepublishOnly` script will automatically produce a production build in the `./dist` directory, which will be published.\n","engines":{"lens":">=5.0.0-beta.7"},"gitHead":"1f4f281ca96439cd88dec998324609a468b99e43","scripts":{"dev":"TARGET=development yarn build","fmt":"prettier --write \"{*,src/**/*}.+(js|ts*|yml|json)\"","lint":"eslint \"{*,src/**/*}.+(js|ts*)\"","test":"yarn lint && yarn fmt:check && yarn test:unit","babel":"babel src --out-dir dist_babel","build":"yarn clean && webpack","clean":"rm -rf ./dist && rm -rf ./dist_babel","start":"TARGET=development yarn build --watch","prebabel":"rm -rf ./dist_babel","fmt:check":"prettier --check \"{*,src/**/*}.+(js|ts*|yml|json)\"","test:unit":"echo 'Works for me! ¯\\_(ツ)_/¯'","prepublishOnly":"yarn test && yarn build"},"_npmUser":{"name":"stefcameron","email":"stefan@stefcameron.com"},"renderer":"dist/renderer.js","publisher":"mirantis","repository":{"url":"git+https://github.com/Mirantis/lens-extension-cc.git","type":"git"},"_npmVersion":"7.15.1","description":"Lens extension that loads Mirantis Container Cloud clusters.","directories":{},"_nodeVersion":"14.17.0","_hasShrinkwrap":false,"readmeFilename":"README.md","devDependencies":{"mobx":"^6.3.2","react":"^17.0.2","rtvjs":"^4.0.0","eslint":"^7.28.0","webpack":"^5.38.1","electron":"^9.4.4","prettier":"^2.3.1","react-dom":"^17.0.2","ts-loader":"^9.2.3","@babel/cli":"^7.14.3","node-fetch":"^2.6.1","prop-types":"^15.7.2","typescript":"^4.3.2","@babel/core":"^7.14.3","@types/node":"^15.12.2","webpack-cli":"^4.7.2","@types/react":"^17.0.10","babel-loader":"^8.2.2","query-string":"^7.0.0","@emotion/core":"^11.0.0","@emotion/react":"^11.4.0","@emotion/styled":"^11.3.0","@babel/preset-env":"^7.14.4","@babel/preset-react":"^7.13.13","@k8slens/extensions":"^5.0.0-master.c4f177fe58","@types/react-router":"^5.1.15","babel-plugin-lodash":"^3.3.4","eslint-plugin-react":"^7.24.0","@babel/eslint-parser":"^7.14.4","@emotion/babel-plugin":"^11.3.0","eslint-config-prettier":"^8.3.0","@typescript-eslint/parser":"^4.26.1","eslint-plugin-react-hooks":"^4.2.0","babel-plugin-module-resolver":"^4.1.0","@typescript-eslint/eslint-plugin":"^4.26.1","@babel/plugin-proposal-decorators":"^7.14.2","@babel/plugin-transform-react-jsx":"^7.14.3"},"_npmOperationalInternal":{"tmp":"tmp/lens-extension-cc_3.0.0-beta.1_1623342010678_0.6610916354157115","host":"s3://npm-registry-packages"}},"3.0.0":{"name":"@mirantis/lens-extension-cc","version":"3.0.0","keywords":["lens","mirantis","cluster"],"author":{"url":"https://github.com/stefcameron","name":"Stefan Cameron"},"license":"MIT","_id":"@mirantis/lens-extension-cc@3.0.0","maintainers":[{"name":"ivan629","email":"igolovac629@gmail.com"},{"name":"mvuhniavyi","email":"mvuhniavyi@mirantis.com"},{"name":"avasylytsia-mirantis","email":"avasylytsia@mirantis.com"},{"name":"anaxdev","email":"anaxdev@outlook.com"},{"name":"ologvinova","email":"ologvinova@mirantis.com"},{"name":"ogusarenko","email":"ogusarenko@mirantis.com"},{"name":"vmarkov-m","email":"vmarkov@mirantis.com"},{"name":"alexshu","email":"ashu@mirantis.com"},{"name":"ry4nz","email":"rzhang@mirantis.com"},{"name":"gunbladesniper","email":"savaughnjones@gmail.com"},{"name":"anton_nos","email":"anton.nos@perfectial.com"},{"name":"allysmith424","email":"allysmith424@gmail.com"},{"name":"roachedezigne","email":"roachedezigne@gmail.com"},{"name":"mirantis_it","email":"it@mirantis.com"},{"name":"mirantis-ci","email":"mirantis-ci-npm@mirantis.com"},{"name":"stefcameron","email":"stefan@stefcameron.com"},{"name":"ekhomyakova","email":"ekhomyakova@mirantis.com"},{"name":"emreboga","email":"emreku@yahoo.com"},{"name":"cgirard-mir","email":"cgirard@mirantis.com"},{"name":"csnider-mirantis","email":"csnider@mirantis.com"},{"name":"infra-ci","email":"infra@mirantis.com"},{"name":"o.briukhanov","email":"oleksandr.briukhanov@perfectial.com"},{"name":"vikramhh","email":"vikrambirsingh@yahoo.com"}],"homepage":"https://github.com/Mirantis/lens-extension-cc#readme","bugs":{"url":"https://github.com/Mirantis/lens-extension-cc/issues"},"dist":{"shasum":"9b2ea98aaab92a57fa84ad5d47ef02ecdc292471","tarball":"https://registry.npmjs.org/@mirantis/lens-extension-cc/-/lens-extension-cc-3.0.0.tgz","fileCount":6,"integrity":"sha512-4otjm7edPvgPxHyejhgvkrJ0dC9QHIw4PxVIJJEfM7FVsuc09RsFFkgYlN+dL3egQ2R+0tpyqi6U1ojx32nrsA==","signatures":[{"sig":"MEYCIQCQfHR882vTnVT2+2PVF/4Pl3ghhfxA/nGHsRtfgRzzUgIhAIUcR3HGYiBt4ZVDczUteG61ecoHKVB5OZ0SsSSeO21m","keyid":"SHA256:jl3bwswu80PjjokCgh0o2w5c2U4LhQAE57gj9cz1kzA"}],"unpackedSize":3324651,"npm-signature":"-----BEGIN PGP SIGNATURE-----\r\nVersion: OpenPGP.js v3.0.13\r\nComment: https://openpgpjs.org\r\n\r\nwsFcBAEBCAAQBQJg8MY7CRA9TVsSAnZWagAA+qwQAJdvWFcmBWLxcy9Lv2ku\nYwett+9UHX2yY8O81IBSdT6WO1BuTKcj5AaYq2HBTLPSDAP1M94hruGyED5b\ndinyzgR0f31jxGyISeOtu+DYGSzCQAXwM8E+apGChhlUy+Yx3C/Ofjkd+4eq\n3fRfm0vVzAS0Whqc2EQOkhITdDaL7JfV7EJHn+GOKDnr39+MyhItldN/5UF6\njX/VEeIhm1hKAIIltGWJvykW2sai1CYws9Uj2rozj/0Yx2NqEvPzxK2Np255\nRfOBOxN06LAYKhdeILfVkAD2vRoKsnAAscGQfRe8O5m59ixA6288EG/Cmo9D\nsMDn44UL8MWPWzJXyuGe8lLe1WfePL/VfuybsOUz3+/Z/6v+qJAOgCGuSGVX\njKydPBgMnJNyS/OSzDmdzrcm8jGIAzKnLCAtZvr6ixKt6G0i30Pow9Lq6bUc\nm+KxRcETzHFmsVyilN5htq1+nJ6zDSDX2s9j+4a0wwseXclZ0+EEb3RzJ9q4\n2deTb35BS627R8dSCpmNSwyDZAeagH3jPrwS5bV0cVT/yOnPFKMfl0s+Pfoh\nMgnsHV+1+5J9y5bt+H9Hu8m8BqktljcBHtLSFI48ICaSaDDejjt3wkhGkBjx\ng7i7ZgPl3SCPTfIQO2DIhbTGY1b/nez4SBjQsleLb/fZVfiw7xicsjSTjXsl\nIEV+\r\n=Y+OM\r\n-----END PGP SIGNATURE-----\r\n"},"main":"dist/main.js","engines":{"lens":"^5.0.0"},"gitHead":"ffe4e665923a610f72253d63b347357f4b4a3c53","scripts":{"dev":"TARGET=development yarn build","fmt":"prettier --write \"{*,src/**/*}.+(js|ts*|yml|json)\"","lint":"eslint \"{*,src/**/*}.+(js|ts*)\"","test":"yarn lint && yarn fmt:check && yarn test:unit","babel":"babel src --out-dir dist_babel","build":"yarn clean && webpack","clean":"rm -rf ./dist && rm -rf ./dist_babel","start":"TARGET=development yarn build --watch","prebabel":"rm -rf ./dist_babel","fmt:check":"prettier --check \"{*,src/**/*}.+(js|ts*|yml|json)\"","test:unit":"echo 'Works for me! ¯\\_(ツ)_/¯'","prepublishOnly":"yarn test && yarn build"},"_npmUser":{"name":"stefcameron","email":"stefan@stefcameron.com"},"renderer":"dist/renderer.js","publisher":"mirantis","repository":{"url":"git+https://github.com/Mirantis/lens-extension-cc.git","type":"git"},"_npmVersion":"7.15.1","description":"Lens extension that loads Mirantis Container Cloud clusters.","directories":{},"_nodeVersion":"14.17.0","_hasShrinkwrap":false,"devDependencies":{"mobx":"^6.3.2","react":"^17.0.2","rtvjs":"^4.0.0","eslint":"^7.30.0","webpack":"^5.44.0","electron":"^9.4.4","prettier":"^2.3.2","react-dom":"^17.0.2","ts-loader":"^9.2.3","@babel/cli":"^7.14.5","node-fetch":"^2.6.1","prop-types":"^15.7.2","typescript":"^4.3.5","@babel/core":"^7.14.6","@types/node":"^16.3.2","webpack-cli":"^4.7.2","@types/react":"^17.0.14","babel-loader":"^8.2.2","query-string":"^7.0.1","@emotion/core":"^11.0.0","@emotion/react":"^11.4.0","@emotion/styled":"^11.3.0","@babel/preset-env":"^7.14.7","@babel/preset-react":"^7.14.5","@k8slens/extensions":"^5.0.2","@types/react-router":"^5.1.16","babel-plugin-lodash":"^3.3.4","eslint-plugin-react":"^7.24.0","@babel/eslint-parser":"^7.14.7","@emotion/babel-plugin":"^11.3.0","eslint-config-prettier":"^8.3.0","@typescript-eslint/parser":"^4.28.3","eslint-plugin-react-hooks":"^4.2.0","babel-plugin-module-resolver":"^4.1.0","@typescript-eslint/eslint-plugin":"^4.28.3","@babel/plugin-proposal-decorators":"^7.14.5","@babel/plugin-transform-react-jsx":"^7.14.3"},"_npmOperationalInternal":{"tmp":"tmp/lens-extension-cc_3.0.0_1626392123774_0.6433792381182866","host":"s3://npm-registry-packages"}},"3.0.1":{"name":"@mirantis/lens-extension-cc","version":"3.0.1","keywords":["lens","mirantis","cluster"],"author":{"url":"https://github.com/stefcameron","name":"Stefan Cameron"},"license":"MIT","_id":"@mirantis/lens-extension-cc@3.0.1","maintainers":[{"name":"ivan629","email":"igolovac629@gmail.com"},{"name":"mvuhniavyi","email":"mvuhniavyi@mirantis.com"},{"name":"avasylytsia-mirantis","email":"avasylytsia@mirantis.com"},{"name":"anaxdev","email":"anaxdev@outlook.com"},{"name":"ologvinova","email":"ologvinova@mirantis.com"},{"name":"ogusarenko","email":"ogusarenko@mirantis.com"},{"name":"vmarkov-m","email":"vmarkov@mirantis.com"},{"name":"alexshu","email":"ashu@mirantis.com"},{"name":"ry4nz","email":"rzhang@mirantis.com"},{"name":"gunbladesniper","email":"savaughnjones@gmail.com"},{"name":"anton_nos","email":"anton.nos@perfectial.com"},{"name":"allysmith424","email":"allysmith424@gmail.com"},{"name":"roachedezigne","email":"roachedezigne@gmail.com"},{"name":"mirantis_it","email":"it@mirantis.com"},{"name":"mirantis-ci","email":"mirantis-ci-npm@mirantis.com"},{"name":"stefcameron","email":"stefan@stefcameron.com"},{"name":"ekhomyakova","email":"ekhomyakova@mirantis.com"},{"name":"emreboga","email":"emreku@yahoo.com"},{"name":"cgirard-mir","email":"cgirard@mirantis.com"},{"name":"csnider-mirantis","email":"csnider@mirantis.com"},{"name":"infra-ci","email":"infra@mirantis.com"},{"name":"o.briukhanov","email":"oleksandr.briukhanov@perfectial.com"},{"name":"vikramhh","email":"vikrambirsingh@yahoo.com"}],"homepage":"https://github.com/Mirantis/lens-extension-cc#readme","bugs":{"url":"https://github.com/Mirantis/lens-extension-cc/issues"},"dist":{"shasum":"f067ad52e0b28de5c9052f52dc3c9bdbf56711ef","tarball":"https://registry.npmjs.org/@mirantis/lens-extension-cc/-/lens-extension-cc-3.0.1.tgz","fileCount":6,"integrity":"sha512-XHBGDzTblKPOburxUjWdvzubDFeiUoNY5rKy9bTsqUMRQsifTCl1auzXmw+TozW9qRRlru3hIJx3kAESYhnr7w==","signatures":[{"sig":"MEUCIQCyOXSxHG/C27WmB8sTxYSFEmgenDQRR9/vNzlbYArIZAIgFeadKowdRBKCvLxcCHOkZ9d+vMwX3j8VBoH13NymKVY=","keyid":"SHA256:jl3bwswu80PjjokCgh0o2w5c2U4LhQAE57gj9cz1kzA"}],"unpackedSize":3324740,"npm-signature":"-----BEGIN PGP SIGNATURE-----\r\nVersion: OpenPGP.js v3.0.13\r\nComment: https://openpgpjs.org\r\n\r\nwsFcBAEBCAAQBQJg8cRBCRA9TVsSAnZWagAAyzUP/i7TGssIafpaHWKd3xn4\nkgf1eXUvMCL+aMKfSQV6FMCK/OXDKTpraKTUdYjdeYIyMaHkOVMurZa50qtX\ng68kE51AYtUBF2meQDtZQUYHqTzou44Oxq7IX3AJXKytRxnrLiTc8ESFV4pq\n3p3A2xvVub4K8bthQCbwpQ4ikQ908xXEYLTrNcFKsTHshWsBMrONmtQDXc8S\nBApOssrVir0tzBhf9Hgtil5SjZ5Rwl1FDirATRJTEAYus+YpJwucWiTue7TC\nSxCxRQpEq3ub2MlxUw0F19dpJVz1kU+ua0NGpkGIzTY6fL9vTz8Xatvh6HIn\nPXqH/NeR0l7+xNULS0Kg7GzOOw8qkwAUEbH/8yIJ0Bq+M4xwLhBpvwsw9Xlw\naL2t+pxvKjzVQaSrpTuTrkm1dvXGINJUZK8LF/LjcnCXRDB1mLDse8keJ9/f\nRKDgImUTJuZKR3YG+u7yfA7e/HfM4Ej52KxNDPpZXTw5UXWAos97/HJPQoyN\n5Z/KPQ56DP7rp5HrHxUWyfhGuYujJw48EYzK4wCEbI/Enp/OAwXIEUwLUBVj\nHWKw+w3cNl9h4pDC63wrPKdf/kSO49r/3htcHurJBQZKQ0niFXPG35JLU/uC\n2t03GowUb/1tOpQwYHH/JXLazQCYmHNf5/sCDLRvHuejX57h1GurnRW8bg2V\nE7xN\r\n=8vwA\r\n-----END PGP SIGNATURE-----\r\n"},"main":"dist/main.js","engines":{"lens":"^5.0.0"},"gitHead":"dbac0dbd6f161aa8f31613219eb1963f855add3e","scripts":{"dev":"TARGET=development yarn build","fmt":"prettier --write \"{*,src/**/*}.+(js|ts*|yml|json)\"","lint":"eslint \"{*,src/**/*}.+(js|ts*)\"","test":"yarn lint && yarn fmt:check && yarn test:unit","babel":"babel src --out-dir dist_babel","build":"yarn clean && webpack","clean":"rm -rf ./dist && rm -rf ./dist_babel","start":"TARGET=development yarn build --watch","prebabel":"rm -rf ./dist_babel","fmt:check":"prettier --check \"{*,src/**/*}.+(js|ts*|yml|json)\"","test:unit":"echo 'Works for me! ¯\\_(ツ)_/¯'","prepublishOnly":"yarn test && yarn build"},"_npmUser":{"name":"stefcameron","email":"stefan@stefcameron.com"},"renderer":"dist/renderer.js","publisher":"mirantis","repository":{"url":"git+https://github.com/Mirantis/lens-extension-cc.git","type":"git"},"_npmVersion":"7.20.0","description":"Lens extension that loads Mirantis Container Cloud clusters.","directories":{},"_nodeVersion":"14.17.0","_hasShrinkwrap":false,"devDependencies":{"mobx":"^6.3.2","react":"^17.0.2","rtvjs":"^4.0.0","eslint":"^7.30.0","webpack":"^5.44.0","electron":"^9.4.4","prettier":"^2.3.2","react-dom":"^17.0.2","ts-loader":"^9.2.3","@babel/cli":"^7.14.5","node-fetch":"^2.6.1","prop-types":"^15.7.2","typescript":"^4.3.5","@babel/core":"^7.14.6","@types/node":"^16.3.2","webpack-cli":"^4.7.2","@types/react":"^17.0.14","babel-loader":"^8.2.2","query-string":"^7.0.1","@emotion/core":"^11.0.0","@emotion/react":"^11.4.0","@emotion/styled":"^11.3.0","@babel/preset-env":"^7.14.7","@babel/preset-react":"^7.14.5","@k8slens/extensions":"^5.1.0","@types/react-router":"^5.1.16","babel-plugin-lodash":"^3.3.4","eslint-plugin-react":"^7.24.0","@babel/eslint-parser":"^7.14.7","@emotion/babel-plugin":"^11.3.0","eslint-config-prettier":"^8.3.0","@typescript-eslint/parser":"^4.28.3","eslint-plugin-react-hooks":"^4.2.0","babel-plugin-module-resolver":"^4.1.0","@typescript-eslint/eslint-plugin":"^4.28.3","@babel/plugin-proposal-decorators":"^7.14.5","@babel/plugin-transform-react-jsx":"^7.14.3"},"_npmOperationalInternal":{"tmp":"tmp/lens-extension-cc_3.0.1_1626457153089_0.02364976899621052","host":"s3://npm-registry-packages"}},"3.0.2":{"name":"@mirantis/lens-extension-cc","version":"3.0.2","keywords":["lens","mirantis","cluster"],"author":{"url":"https://github.com/stefcameron","name":"Stefan Cameron"},"license":"MIT","_id":"@mirantis/lens-extension-cc@3.0.2","maintainers":[{"name":"mirantis_it","email":"it@mirantis.com"},{"name":"mirantis-ci","email":"mirantis-ci-npm@mirantis.com"},{"name":"stefcameron","email":"stefan@stefcameron.com"},{"name":"ekhomyakova","email":"ekhomyakova@mirantis.com"},{"name":"emreboga","email":"emreku@yahoo.com"},{"name":"cgirard-mir","email":"cgirard@mirantis.com"},{"name":"csnider-mirantis","email":"csnider@mirantis.com"},{"name":"infra-ci","email":"infra@mirantis.com"},{"name":"o.briukhanov","email":"oleksandr.briukhanov@perfectial.com"},{"name":"vikramhh","email":"vikrambirsingh@yahoo.com"},{"name":"roachedezigne","email":"roachedezigne@gmail.com"},{"name":"allysmith424","email":"allysmith424@gmail.com"},{"name":"anton_nos","email":"anton.nos@perfectial.com"},{"name":"gunbladesniper","email":"savaughnjones@gmail.com"},{"name":"ry4nz","email":"rzhang@mirantis.com"},{"name":"alexshu","email":"ashu@mirantis.com"},{"name":"vmarkov-m","email":"vmarkov@mirantis.com"},{"name":"ogusarenko","email":"ogusarenko@mirantis.com"},{"name":"ologvinova","email":"ologvinova@mirantis.com"},{"name":"anaxdev","email":"anaxdev@outlook.com"},{"name":"avasylytsia-mirantis","email":"avasylytsia@mirantis.com"},{"name":"mvuhniavyi","email":"mvuhniavyi@mirantis.com"},{"name":"ivan629","email":"igolovac629@gmail.com"}],"homepage":"https://github.com/Mirantis/lens-extension-cc#readme","bugs":{"url":"https://github.com/Mirantis/lens-extension-cc/issues"},"dist":{"shasum":"e29b8de9eb11fc4fdf63ede5cd9131b8835b5550","tarball":"https://registry.npmjs.org/@mirantis/lens-extension-cc/-/lens-extension-cc-3.0.2.tgz","fileCount":6,"integrity":"sha512-72g76QQzIEc78Wnf4exwINlbQAG2mdq4JaKVYqA14ORmunsbxkI642lQMmGmUwiRaSyCL5zvfApZ5rjCKOQhdA==","signatures":[{"sig":"MEYCIQDxCwUK3RgokRD8O+RtKbSf3czxyL6Hn0+vUC52fjX0NgIhAOtVX72JmdH4lmXQlISoio4iUQKRTzq3YXa/88WrikmZ","keyid":"SHA256:jl3bwswu80PjjokCgh0o2w5c2U4LhQAE57gj9cz1kzA"}],"unpackedSize":3341409,"npm-signature":"-----BEGIN PGP SIGNATURE-----\r\nVersion: OpenPGP.js v3.0.13\r\nComment: https://openpgpjs.org\r\n\r\nwsFcBAEBCAAQBQJhDBpECRA9TVsSAnZWagAAmzEP/2r1XuRkIWJf7j6CK/m3\nvx0dOXuEiuxYDgs9Y4fyO2Q4gnk05/oP8J2Fcy5MzCqxuGbxZiu1rsVeEP04\n6Hl1naeHcuXeDhbB6H31N9iLyqNKFJ+2V7m7INJXXraWr6zNb5IzisEuGgfZ\njBDY5o4Ecq137pYDROV0gNhhHZLOOXYBGHxDcgbRa5ns1C78Nmb0lYTpLaH1\n10QdyIcTyUA8RD4W1c9BqH0ygGbA2zY7PRJcN3oweyEUWfjsX1Y7KZtqpZM2\nLv61NhbjTbYOfHTb7qClzV00yIWg8X0WWRB92FlpChnZYqDPfU0ACSFjvq/s\nihJ5+vOnixdydNXgK3hNTLz2kSK64+YqC34e4rsDQwKMtxPpIXK30pXhN9yI\nq/wZ6gpXec7VVpQuq7AEKWK6al26J/hueQWs0TRg/rCeAiCm0eNlz0G4yQOO\nRUrybGEH02D2pYeFMWoAGpuviSfu1pyrczUAdzzxAddo+9agQTht1EMX4Xez\nh51aPYhQFMQptRkLGSlpxBr+dankUeECnhknvq1pOpGuKnqGuBrsMQUEg1Nt\njB2PNe0loZ5k4jLWF8+FE4eb/HmOvh1DOHuEk84p5V6hVzhvUXsuz8h+8HPa\n9US6esknpxccEpYy1G5J3C1t6jhvAK0cqUs9SxXCaQ6XtPn8BPR/q3ipl0cC\nCdKB\r\n=TC+e\r\n-----END PGP SIGNATURE-----\r\n"},"main":"dist/main.js","engines":{"lens":"^5.0.0"},"gitHead":"4d879e81d23124ae957450ec00fb9a96d5b7083b","scripts":{"dev":"TARGET=development yarn build","fmt":"prettier --write \"{*,src/**/*}.+(js|ts*|yml|json)\"","lint":"eslint \"{*,src/**/*}.+(js|ts*)\"","test":"yarn lint && yarn fmt:check && yarn test:unit","babel":"babel src --out-dir dist_babel","build":"yarn clean && webpack","clean":"rm -rf ./dist && rm -rf ./dist_babel","start":"TARGET=development yarn build --watch","prebabel":"rm -rf ./dist_babel","fmt:check":"prettier --check \"{*,src/**/*}.+(js|ts*|yml|json)\"","test:unit":"echo 'Works for me! ¯\\_(ツ)_/¯'","prepublishOnly":"yarn test && yarn build"},"_npmUser":{"name":"stefcameron","email":"stefan@stefcameron.com"},"renderer":"dist/renderer.js","publisher":"mirantis","repository":{"url":"git+https://github.com/Mirantis/lens-extension-cc.git","type":"git"},"_npmVersion":"7.20.0","description":"Lens extension that loads Mirantis Container Cloud clusters.","directories":{},"_nodeVersion":"14.17.0","_hasShrinkwrap":false,"devDependencies":{"mobx":"^6.3.2","react":"^17.0.2","rtvjs":"^4.0.0","eslint":"^7.32.0","webpack":"^5.48.0","electron":"^9.4.4","prettier":"^2.3.2","react-dom":"^17.0.2","ts-loader":"^9.2.5","@babel/cli":"^7.14.8","node-fetch":"^2.6.1","prop-types":"^15.7.2","typescript":"^4.3.5","@babel/core":"^7.15.0","@types/node":"^16.4.12","webpack-cli":"^4.7.2","@types/react":"^17.0.15","babel-loader":"^8.2.2","query-string":"^7.0.1","@emotion/core":"^11.0.0","@emotion/react":"^11.4.0","@emotion/styled":"^11.3.0","@babel/preset-env":"^7.15.0","@babel/preset-react":"^7.14.5","@k8slens/extensions":"^5.1.3","@types/react-router":"^5.1.16","babel-plugin-lodash":"^3.3.4","eslint-plugin-react":"^7.24.0","@babel/eslint-parser":"^7.15.0","@emotion/babel-plugin":"^11.3.0","eslint-config-prettier":"^8.3.0","@typescript-eslint/parser":"^4.29.0","eslint-plugin-react-hooks":"^4.2.0","babel-plugin-module-resolver":"^4.1.0","@typescript-eslint/eslint-plugin":"^4.29.0","@babel/plugin-proposal-decorators":"^7.14.5","@babel/plugin-transform-react-jsx":"^7.14.9"},"_npmOperationalInternal":{"tmp":"tmp/lens-extension-cc_3.0.2_1628183108576_0.4791827401840725","host":"s3://npm-registry-packages"}},"3.0.3":{"name":"@mirantis/lens-extension-cc","version":"3.0.3","keywords":["lens","mirantis","cluster"],"author":{"url":"https://github.com/stefcameron","name":"Stefan Cameron"},"license":"MIT","_id":"@mirantis/lens-extension-cc@3.0.3","maintainers":[{"name":"mirantis_it","email":"it@mirantis.com"},{"name":"mirantis-ci","email":"mirantis-ci-npm@mirantis.com"},{"name":"stefcameron","email":"stefan@stefcameron.com"},{"name":"ekhomyakova","email":"ekhomyakova@mirantis.com"},{"name":"emreboga","email":"emreku@yahoo.com"},{"name":"cgirard-mir","email":"cgirard@mirantis.com"},{"name":"csnider-mirantis","email":"csnider@mirantis.com"},{"name":"infra-ci","email":"infra@mirantis.com"},{"name":"o.briukhanov","email":"oleksandr.briukhanov@perfectial.com"},{"name":"vikramhh","email":"vikrambirsingh@yahoo.com"},{"name":"roachedezigne","email":"roachedezigne@gmail.com"},{"name":"allysmith424","email":"allysmith424@gmail.com"},{"name":"anton_nos","email":"anton.nos@perfectial.com"},{"name":"gunbladesniper","email":"savaughnjones@gmail.com"},{"name":"ry4nz","email":"rzhang@mirantis.com"},{"name":"alexshu","email":"ashu@mirantis.com"},{"name":"vmarkov-m","email":"vmarkov@mirantis.com"},{"name":"ogusarenko","email":"ogusarenko@mirantis.com"},{"name":"ologvinova","email":"ologvinova@mirantis.com"},{"name":"anaxdev","email":"anaxdev@outlook.com"},{"name":"avasylytsia-mirantis","email":"avasylytsia@mirantis.com"},{"name":"mvuhniavyi","email":"mvuhniavyi@mirantis.com"},{"name":"ivan629","email":"igolovac629@gmail.com"}],"homepage":"https://github.com/Mirantis/lens-extension-cc#readme","bugs":{"url":"https://github.com/Mirantis/lens-extension-cc/issues"},"dist":{"shasum":"bd128a992a0200cf2559c2023f4399d23a65bb02","tarball":"https://registry.npmjs.org/@mirantis/lens-extension-cc/-/lens-extension-cc-3.0.3.tgz","fileCount":6,"integrity":"sha512-h7+EeoD8LUlR/mHk/K+IyJUO7r0R0oUkEPfhXeW9S2H6se7HSbeZb61KJLfPwX1twECJp7TJWyO/b0K2EF9r6g==","signatures":[{"sig":"MEYCIQDe/Y0icMgb3Bru6Z0H7/7xjcJ1TQycjpT3ZK0Tt58A2wIhAOvDvpdBVNZB/VyPqWjmWpCTq0N+VPsxT1r3JnhwjAz4","keyid":"SHA256:jl3bwswu80PjjokCgh0o2w5c2U4LhQAE57gj9cz1kzA"}],"unpackedSize":3341641,"npm-signature":"-----BEGIN PGP SIGNATURE-----\r\nVersion: OpenPGP.js v3.0.13\r\nComment: https://openpgpjs.org\r\n\r\nwsFcBAEBCAAQBQJhDB1pCRA9TVsSAnZWagAA6GwP+wfPy4i4lFmeK0VAi338\njlAjx43VbkTSjWpzZDYDrKG79GbVz8RWCQ/1c5tEe+KxY/dd+uZgWgsgP+e1\nNdYWNuDTlCh1+eH75wk//dqUqi0ScsNrRVsMs5YsFrbobQ4btI9f5QpRhTER\ngpBd5bUADqAvZ3GSlSqzF64co1W3dw7iot2oCbpi83Nm2Il174GUK/4rSuVB\nUHFluK8iZKFCGX4W/hL7uESbFh7cPIPeGPy/BOmS0uh0HR2K0NsS4XuXtEUw\nxQ9dIjF+Mw3202cnNCsAbAjmbw7xh7XRDI8rShRYdqZ9hKz7qmYBXLnXPn5N\nf2Urzvd3xMh2PwsrOwglH8RajbTBAF2xhg/NHQhKC5/qVLcVa2GVBE7du1d+\n6hUWpMPCO7bTfsz2Z8XyybFxWRdv7WchQlbI89aRui3EP0Ci5sDY/QQtcFX5\nTUsj8/VqJzXXiIxaBvIc7bFgbznL+HoGsbyIMkpV63PfK//hkuLCxDN5y3pj\nEEa6gUj6w6oq6K9FGResx9fk7q7LNPkwZBi0F0FD0UUVguqKL9i/sroiIzTs\nPttYsZr6sHVCJSUPENp5jmmHUR7p6bGjq1uGmqEONgxq+CKem0wVJeZqG2Dm\naUyVWHp7xEALCzN2zqmbDAW37eDV0EZ7q+nkjgFIg5cWlxC/I3CWr1hnQznZ\nl4XU\r\n=SWBo\r\n-----END PGP SIGNATURE-----\r\n"},"main":"dist/main.js","engines":{"lens":"^5.0.0"},"gitHead":"41c81389b4720eebe90ca4076236c77e333bce1f","scripts":{"dev":"TARGET=development yarn build","fmt":"prettier --write \"{*,src/**/*}.+(js|ts*|yml|json)\"","lint":"eslint \"{*,src/**/*}.+(js|ts*)\"","test":"yarn lint && yarn fmt:check && yarn test:unit","babel":"babel src --out-dir dist_babel","build":"yarn clean && webpack","clean":"rm -rf ./dist && rm -rf ./dist_babel","start":"TARGET=development yarn build --watch","prebabel":"rm -rf ./dist_babel","fmt:check":"prettier --check \"{*,src/**/*}.+(js|ts*|yml|json)\"","test:unit":"echo 'Works for me! ¯\\_(ツ)_/¯'","prepublishOnly":"yarn test && yarn build"},"_npmUser":{"name":"stefcameron","email":"stefan@stefcameron.com"},"renderer":"dist/renderer.js","publisher":"mirantis","repository":{"url":"git+https://github.com/Mirantis/lens-extension-cc.git","type":"git"},"_npmVersion":"7.20.0","description":"Lens extension that loads Mirantis Container Cloud clusters.","directories":{},"_nodeVersion":"14.17.0","_hasShrinkwrap":false,"devDependencies":{"mobx":"^6.3.2","react":"^17.0.2","rtvjs":"^4.0.0","eslint":"^7.32.0","webpack":"^5.48.0","electron":"^9.4.4","prettier":"^2.3.2","react-dom":"^17.0.2","ts-loader":"^9.2.5","@babel/cli":"^7.14.8","node-fetch":"^2.6.1","prop-types":"^15.7.2","typescript":"^4.3.5","@babel/core":"^7.15.0","@types/node":"^16.4.12","webpack-cli":"^4.7.2","@types/react":"^17.0.15","babel-loader":"^8.2.2","query-string":"^7.0.1","@emotion/core":"^11.0.0","@emotion/react":"^11.4.0","@emotion/styled":"^11.3.0","@babel/preset-env":"^7.15.0","@babel/preset-react":"^7.14.5","@k8slens/extensions":"^5.1.3","@types/react-router":"^5.1.16","babel-plugin-lodash":"^3.3.4","eslint-plugin-react":"^7.24.0","@babel/eslint-parser":"^7.15.0","@emotion/babel-plugin":"^11.3.0","eslint-config-prettier":"^8.3.0","@typescript-eslint/parser":"^4.29.0","eslint-plugin-react-hooks":"^4.2.0","babel-plugin-module-resolver":"^4.1.0","@typescript-eslint/eslint-plugin":"^4.29.0","@babel/plugin-proposal-decorators":"^7.14.5","@babel/plugin-transform-react-jsx":"^7.14.9"},"_npmOperationalInternal":{"tmp":"tmp/lens-extension-cc_3.0.3_1628183913689_0.6865535496180897","host":"s3://npm-registry-packages"}},"3.0.4":{"name":"@mirantis/lens-extension-cc","version":"3.0.4","keywords":["lens","mirantis","cluster"],"author":{"url":"https://github.com/stefcameron","name":"Stefan Cameron"},"license":"MIT","_id":"@mirantis/lens-extension-cc@3.0.4","maintainers":[{"name":"irajapakse","email":"irajapakse@mirantis.com"},{"name":"klukvenka","email":"agasanova@mirantis.com"},{"name":"kyevchuk-m","email":"kyevchuk@mirantis.com"},{"name":"mirantis_it","email":"it@mirantis.com"},{"name":"mirantis-ci","email":"mirantis-ci-npm@mirantis.com"},{"name":"stefcameron","email":"stefan@stefcameron.com"},{"name":"ekhomyakova","email":"ekhomyakova@mirantis.com"},{"name":"emreboga","email":"emreku@yahoo.com"},{"name":"cgirard-mir","email":"cgirard@mirantis.com"},{"name":"csnider-mirantis","email":"csnider@mirantis.com"},{"name":"infra-ci","email":"infra@mirantis.com"},{"name":"vikramhh","email":"vikrambirsingh@yahoo.com"},{"name":"roachedezigne","email":"roachedezigne@gmail.com"},{"name":"anton_nos","email":"anton.nos@perfectial.com"},{"name":"gunbladesniper","email":"savaughnjones@gmail.com"},{"name":"ry4nz","email":"rzhang@mirantis.com"},{"name":"alexshu","email":"ashu@mirantis.com"},{"name":"vmarkov-m","email":"vmarkov@mirantis.com"},{"name":"ogusarenko","email":"ogusarenko@mirantis.com"},{"name":"ologvinova","email":"ologvinova@mirantis.com"},{"name":"anaxdev","email":"anaxdev@outlook.com"},{"name":"avasylytsia-mirantis","email":"avasylytsia@mirantis.com"},{"name":"mvuhniavyi","email":"mvuhniavyi@mirantis.com"},{"name":"ivan629","email":"igolovac629@gmail.com"}],"homepage":"https://github.com/Mirantis/lens-extension-cc#readme","bugs":{"url":"https://github.com/Mirantis/lens-extension-cc/issues"},"dist":{"shasum":"b4945315a2045a6ef4fc751bc4ae138c07e4d11f","tarball":"https://registry.npmjs.org/@mirantis/lens-extension-cc/-/lens-extension-cc-3.0.4.tgz","fileCount":6,"integrity":"sha512-R8yqm2dFW1OLqWCwz4UfryknMAftUKtmFZST1Pj6GqsuX3qOCqKoH+WQ7lO5mIt3+mxelM/cID6zCoBB30ytXQ==","signatures":[{"sig":"MEYCIQC9W2b6ZCTDE5dh9hGPIzXVKIZ+Q8CKQXMaZUmLfFDwugIhAJwZwU0Gw16D/mCcykg3NVjmubWT/PI7AUw0mB+PVDSX","keyid":"SHA256:jl3bwswu80PjjokCgh0o2w5c2U4LhQAE57gj9cz1kzA"}],"unpackedSize":3825685,"npm-signature":"-----BEGIN PGP SIGNATURE-----\r\nVersion: OpenPGP.js v3.0.13\r\nComment: https://openpgpjs.org\r\n\r\nwsFcBAEBCAAQBQJhpWmYCRA9TVsSAnZWagAA9EcP/jzmGoWQXAjnUpoKKLxD\nnq+ihJBpilPUzwuQptAwl89ZYYkTOUSRlkDBdW//Jcikbxyau+7AYPacL6CA\nMBN8JfhaYKYJYEo04bZTkRSHDvfNDnISXIgAMn1P+zms2Fy3XBMlUxaitJMa\nEABNP7tUOqlGGqiraXvFCHRLeQoPArzgItEQr0VfUE+llQYmUY/tZ9wFJPTa\nlCAM0WmKKJwUNYz46Oq8bgvvjUOBR42MTy6eOXJo4uiZ6vzJZ2ODD4AR1ePR\nKvvk0KYbVKl44sbJjkLmSB3e5H8gOcfHEB/WIX0JtP7+vpEiMxqeuMQP60Ev\nozx4Wl/6eAfMBoWqPIJuF8Zl+gERjUFRX0G2x7WweA6+wN6bGSkR2057oGZv\nzUcdaKI2PMAQZgOwAh4RRk4e5rPimRW4YAXObPqIxcIgplrLL6oTliG/krYF\ntIG4v8n7qI8dGE4C8yUurHojwZNyJN9KaiahLAKDFbnNtoKNjs40GSuyl4tn\nSyT1H7EZgtyw4qREHQ2fP2RVCDZdZuyJzn1nu0yhGy1Ie+SgLo+yXMQ8ugnW\noSqjQC0PubfEZ0mHwsMnjDH7uhQ1Lr3WG91CVuBidx9+jyztD54NucHXYsZk\nfqu4413FIdyrJREXhUUoOXAaVb2RZ5HvxFfbayLiEkeegVTHyCQIoUQj/wQ4\nvAL0\r\n=3PgT\r\n-----END PGP SIGNATURE-----\r\n"},"main":"dist/main.js","engines":{"lens":"^5.0.0"},"gitHead":"1073f986958d945db92262beb3c4d374d5ac31be","scripts":{"dev":"TARGET=development yarn build","fmt":"prettier --write \"{*,src/**/*}.+(js|ts*|yml|json)\"","lint":"eslint \"{*,src/**/*}.+(js|ts*)\"","test":"yarn lint && yarn fmt:check && yarn test:unit","babel":"babel src --out-dir dist_babel","build":"yarn clean && webpack","clean":"rm -rf ./dist && rm -rf ./dist_babel","start":"TARGET=development yarn build --watch","prebabel":"rm -rf ./dist_babel","fmt:check":"prettier --check \"{*,src/**/*}.+(js|ts*|yml|json)\"","test:unit":"echo 'Works for me! ¯\\_(ツ)_/¯'","prepublishOnly":"yarn test && yarn build"},"_npmUser":{"name":"stefcameron","email":"stefan@stefcameron.com"},"renderer":"dist/renderer.js","publisher":"mirantis","repository":{"url":"git+https://github.com/Mirantis/lens-extension-cc.git","type":"git"},"_npmVersion":"8.1.2","description":"Lens extension that loads Mirantis Container Cloud clusters.","directories":{},"_nodeVersion":"17.0.1","_hasShrinkwrap":false,"devDependencies":{"mobx":"^6.3.8","react":"^17.0.2","rtvjs":"^4.0.0","eslint":"^7.32.0","webpack":"^5.64.4","electron":"^13.6.1","prettier":"^2.5.0","react-dom":"^17.0.2","ts-loader":"^9.2.6","@babel/cli":"^7.16.0","node-fetch":"^2.6.6","prop-types":"^15.7.2","typescript":"^4.5.2","@babel/core":"^7.16.0","@types/node":"^16.11.10","webpack-cli":"^4.9.1","@types/react":"^17.0.37","babel-loader":"^8.2.3","query-string":"^7.0.1","@emotion/core":"^11.0.0","@emotion/react":"^11.7.0","@emotion/styled":"^11.6.0","@babel/preset-env":"^7.16.4","@babel/preset-react":"^7.16.0","@k8slens/extensions":"^5.3.0","@types/react-router":"^5.1.17","babel-plugin-lodash":"^3.3.4","eslint-plugin-react":"^7.27.1","@babel/eslint-parser":"^7.16.3","@emotion/babel-plugin":"^11.3.0","eslint-config-prettier":"^8.3.0","@typescript-eslint/parser":"^4.33.0","eslint-plugin-react-hooks":"^4.3.0","babel-plugin-module-resolver":"^4.1.0","@typescript-eslint/eslint-plugin":"^4.33.0","@babel/plugin-proposal-decorators":"^7.16.4","@babel/plugin-transform-react-jsx":"^7.16.0"},"_npmOperationalInternal":{"tmp":"tmp/lens-extension-cc_3.0.4_1638230424280_0.8783740009150645","host":"s3://npm-registry-packages"}},"3.1.0":{"name":"@mirantis/lens-extension-cc","version":"3.1.0","keywords":["lens","mirantis","cluster"],"author":{"url":"https://github.com/stefcameron","name":"Stefan Cameron"},"license":"MIT","_id":"@mirantis/lens-extension-cc@3.1.0","maintainers":[{"name":"stefcameron","email":"stefan@stefcameron.com"}],"homepage":"https://github.com/Mirantis/lens-extension-cc#readme","bugs":{"url":"https://github.com/Mirantis/lens-extension-cc/issues"},"dist":{"shasum":"78b444089a243d5624dacf447896cfdca571190f","tarball":"https://registry.npmjs.org/@mirantis/lens-extension-cc/-/lens-extension-cc-3.1.0.tgz","fileCount":6,"integrity":"sha512-Z8yGwe8A7kd1iyStkabQv/XwFFNpTud3MP6tttAv8nUUOBBM66cW1gi7Pr3WM5TLJ6yhDVyAzJDTdt0qjEM01w==","signatures":[{"sig":"MEUCIQC6cLbeRFnjNVScIRlsyZex0xjPLuNd8c7yskv2h2fy2QIgAe57hr8fTbruLLHrQd21/QK6thAaVurJlGnKOeIV3wA=","keyid":"SHA256:jl3bwswu80PjjokCgh0o2w5c2U4LhQAE57gj9cz1kzA"}],"unpackedSize":3831565,"npm-signature":"-----BEGIN PGP SIGNATURE-----\r\nVersion: OpenPGP.js v3.0.13\r\nComment: https://openpgpjs.org\r\n\r\nwsFcBAEBCAAQBQJh8aekCRA9TVsSAnZWagAAeswP/RjqwHvFc8eRzjzL6YHM\nNw57bLPMBTE+3Bz0xcpx4mATE1nogFuW1DEdxbxYst1LiljthSoiSohqvtrt\nJ88aDVh4WSfqF30YV+2XTjKbNyrYYWNXcSqTJ21IHhQpNWKqljaEdJJxAxl1\nTvo5t52Mp3yAfDGqAl9xomjRVY0n7erpX8lWVvQU/ftFd6d/1Mx2v1liPxn/\nSYIFhmN+y+t3LZY1wkMNA3Pjaqp54mQyI+5zhLeodu7S9ZPnVwqtLfPa86fP\npx/S+PSf+MnwzNwlKQAbeV//j5jLDlDHj9Zo3quYXzw6eFtEvWoggLS3MhU3\n2IiVR3nN/FqH+jn6x2vs8bJxpuAVqmIBHks/7pMK6mxPsO2/cOkrHAgOOVX6\nJsk0H/73pjNlcPBKbr0s8lXK/eeh6CwsjfqA2dF2jdd0ZUu1512uZBLiCpm2\n2WaCSf1Ul2UtT7UuVmzY5tDLhWkbrprFrUdwhzRSjIOi2KXJ/iDDZSd2LQFr\n+4bIJ4aWBaAayaYcy4OMe8hpQYlMqCqflLiVShjBFmnf64O/zDw3yMqrMNWK\nJDK/WL5xwlAXtTheQiERwGQu6DqKujyuVl/q2uxkJY/JqSDmpm6B30L3blnl\nBFd3Ag4ScnFgdMsPgtaAIhjvmx9NKUR4ssO9tI9u3O0q1yFbDrnbwyGqhwn+\nSUuC\r\n=WftT\r\n-----END PGP SIGNATURE-----\r\n"},"main":"dist/main.js","engines":{"lens":"^5.0.0"},"gitHead":"964b86c54850f7243256f9e9fb88cfb19d6ad9bf","scripts":{"dev":"TARGET=development yarn build","fmt":"prettier --write \"{*,src/**/*}.+(js|ts*|yml|json)\"","lint":"eslint \"{*,src/**/*}.+(js|ts*)\"","test":"yarn lint && yarn fmt:check && yarn test:unit","babel":"babel src --out-dir dist_babel","build":"yarn clean && webpack","clean":"rm -rf ./dist && rm -rf ./dist_babel","start":"TARGET=development yarn build --watch","prebabel":"rm -rf ./dist_babel","fmt:check":"prettier --check \"{*,src/**/*}.+(js|ts*|yml|json)\"","test:unit":"echo 'Works for me! ¯\\_(ツ)_/¯'","prepublishOnly":"yarn test && yarn build"},"_npmUser":{"name":"stefcameron","email":"stefan@stefcameron.com"},"renderer":"dist/renderer.js","publisher":"mirantis","repository":{"url":"git+https://github.com/Mirantis/lens-extension-cc.git","type":"git"},"_npmVersion":"8.3.1","description":"Lens extension that loads Mirantis Container Cloud clusters.","directories":{},"_nodeVersion":"17.4.0","_hasShrinkwrap":false,"devDependencies":{"mobx":"^6.3.8","react":"^17.0.2","rtvjs":"^4.0.0","eslint":"^7.32.0","webpack":"^5.64.4","electron":"^13.6.1","prettier":"^2.5.0","react-dom":"^17.0.2","ts-loader":"^9.2.6","@babel/cli":"^7.16.0","node-fetch":"^2.6.6","prop-types":"^15.7.2","typescript":"^4.5.2","@babel/core":"^7.16.0","@types/node":"^16.11.10","webpack-cli":"^4.9.1","@types/react":"^17.0.37","babel-loader":"^8.2.3","query-string":"^7.0.1","@emotion/core":"^11.0.0","@emotion/react":"^11.7.0","@emotion/styled":"^11.6.0","@babel/preset-env":"^7.16.4","@babel/preset-react":"^7.16.0","@k8slens/extensions":"^5.3.0","@types/react-router":"^5.1.17","babel-plugin-lodash":"^3.3.4","eslint-plugin-react":"^7.27.1","@babel/eslint-parser":"^7.16.3","@emotion/babel-plugin":"^11.3.0","eslint-config-prettier":"^8.3.0","@typescript-eslint/parser":"^4.33.0","eslint-plugin-react-hooks":"^4.3.0","babel-plugin-module-resolver":"^4.1.0","@typescript-eslint/eslint-plugin":"^4.33.0","@babel/plugin-proposal-decorators":"^7.16.4","@babel/plugin-transform-react-jsx":"^7.16.0"},"_npmOperationalInternal":{"tmp":"tmp/lens-extension-cc_3.1.0_1643227044494_0.23742897253721473","host":"s3://npm-registry-packages"}},"4.0.0-alpha.0":{"name":"@mirantis/lens-extension-cc","version":"4.0.0-alpha.0","keywords":["lens","mirantis","cluster"],"author":{"url":"https://github.com/stefcameron","name":"Stefan Cameron"},"license":"MIT","_id":"@mirantis/lens-extension-cc@4.0.0-alpha.0","maintainers":[{"name":"stefcameron","email":"stefan@stefcameron.com"}],"homepage":"https://github.com/Mirantis/lens-extension-cc#readme","bugs":{"url":"https://github.com/Mirantis/lens-extension-cc/issues"},"dist":{"shasum":"bb45aed50d6b7635b4774f45d1341d5fd4cfbfa1","tarball":"https://registry.npmjs.org/@mirantis/lens-extension-cc/-/lens-extension-cc-4.0.0-alpha.0.tgz","fileCount":6,"integrity":"sha512-IP4IfcFKo3g4GoRwbrJV4GXEQYWN2TfCw00qeUnovPQAq+4YbM6g8Hu/qcEXvOsQIA9guDNBoprxiuqimNEcdQ==","signatures":[{"sig":"MEUCIBpOol3CfChxGaqLknXnXS45jDC40EsQjQjC4gpKMJFCAiEAhDjP2Jn5Fev/pK1UhyV0fiRt9HEOZIksqFfI3ZaP6HI=","keyid":"SHA256:jl3bwswu80PjjokCgh0o2w5c2U4LhQAE57gj9cz1kzA"}],"unpackedSize":4829309,"npm-signature":"-----BEGIN PGP SIGNATURE-----\r\nVersion: OpenPGP.js v3.0.13\r\nComment: https://openpgpjs.org\r\n\r\nwsFcBAEBCAAQBQJh+viICRA9TVsSAnZWagAA9McP/RSr6MeWp3CUeLKniNwN\nn8kivWzHHqwZkYHxZbZ59YEJbD75TbDh9Le2Vnuu3gw1m7MfRS4tNOocP2w+\n5nglDO50yi6xoeHKo0X0uWM5gRVMOergSqFSWt87UAyem1uJc1veNs01NHIB\nBrNIplUFHCjeCV/Xt2w4EqS7iNPIAJowbV+s0BFuAsooKAjDy4BmGPAwETlj\nlwq5L6IoIZAMyQ6uekSWYxfh9tYb72ckLaV9UlOhO4ugB3CKEuZgseoPjbn0\nXZ8kpD3kTAFgnPsHGSxK1MgVzRNoI2OwMfbWKMVh35/aLvKvtlZbEGXRfCZs\nhUZwbZKfIcpQzT7ug3qjEbk8xLC5i1sAEj4tlysVH+AA655pnyJ7hZU+9FxN\nbgTYqnVr63emKi1UzMQUj9JulKwC6MoXyh7BWt1LuNbJk9+bvAXRzBav4cNF\noY15XStAozsI2fagussl9scTrGwJNiNeW8jVZW859q2GEDZduafkFJUzhjkC\nvt9MRstkHBxo9wyC1bIWVgxGKcd9x/sxTecA8+rtuzzpYodHbbnqptRT6cUT\nZWa8Z5HlpmfNZfYDkW4nJsigCTseeq5dI+38mU4duRY3W/2WiVHNBFBwRBI9\ns4XM2PY6Bl/EIMlM+fVq0Dg0zH21WmcDHYNBLV1iW93QeHqTuFyyjxZnP4DF\nei8E\r\n=uJ1h\r\n-----END PGP SIGNATURE-----\r\n"},"main":"dist/main.js","readme":"# ⚠️ Version 3 Maintenance ⚠️\n\nFor v3 (the currently-published version), please see [this README](https://github.com/Mirantis/lens-extension-cc/tree/v3-maint#readme) and code on the [v3-maint](https://github.com/Mirantis/lens-extension-cc/tree/v3-maint) branch. This branch will be maintained until v4 is published.\n\n__The master branch will be used for v4 development__, which will introduce significant architectural changes that will make this extension even more useful and powerful for integrating Mirantis Container Cloud with the Lens IDE.\n\n# Mirantis Container Cloud Lens Extension\n\n![CI](https://github.com/Mirantis/lens-extension-cc/workflows/CI/badge.svg?branch=master&event=push)\n\nThis [Lens](https://k8slens.dev/) Extension adds a status bar item, and a menu item, that makes it easy to connect Lens to a Mirantis Container Cloud instance and add its clusters to Lens.\n\nℹ️ Requires Lens `>= 5.1.0`.\n\n![Extension UI](./docs/screen-shot.png)\n\n## Installing\n\nInstallation is very easy! Just make sure Lens `5.1.0` or later is running, and follow these simple steps:\n\n1. Switch to the Extensions view (`CMD+SHIFT+E` on macOS).\n2. Enter the name of this extension, `@mirantis/lens-extension-cc`, into the Install Extension box.\n3. Click on the Install button.\n\n![Extension UI](./docs/ext-install-by-name.png)\n\nYou should now be able to choose the new `File > Add Cloud Clusters` menu item, or click on the `Mirantis Container Cloud` status bar icon (far right side of the status bar at the bottom of the app), to get started.\n\n> 💬 These instructions will help you install the extension for direct use with Lens. Follow the [development](#development) instructions below if you intend to work on the extension to improve it.\n\n## Upgrading\n\nTo upgrade to a newer release, go to the Extensions view (`CMD+SHIFT+E` on macOS), [uninstall](#uninstalling) the extension, and then [re-install](#installing) it again.\n\n> 🚨 Up to, and including, __Lens 5.1.3__ (and probably some versions after that as well), __Lens must be restarted__ after upgrading the extension. This is __due to a bug in Lens__ that causes the extension's registration of [IPC event handlers](https://api-docs.k8slens.dev/v5.1.2/extensions/guides/ipc/) to be ignored, leading to an error message like \"Failed to add cluster to Lens\" after choosing a cluster and clicking on the \"Add cluster\" button. It will also manifest itself when choosing \"Add cluster to lens\" from the cluster's extended menu options in Mirantis Container Cloud v2.9 or later. [This Lens PR](https://github.com/lensapp/lens/pull/3505) tracks the fix.\n\n## Uninstalling\n\nGo to the Lens Extensions view (`CMD+SHIFT+E` on macOS) and click the Uninstall button next to this extension.\n\n## Catalog\n\nLens 5 replaced its Workspace concept with a new Catalog that allows much more flexibility.\n\nWhen adding clusters to Lens with this extension, each cluster will get the following labels:\n\n- `mcc=true`\n- `project=NAMESPACE` (set to the name of the project/namespace in Container Cloud to which the cluster belongs)\n\nThe extension also supports __removing__ and __deleting__ clusters that it added by choosing these items from the cluster's \"More\" context menu in the Catalog (as well as icons in the Catalog Drawer's toolbar):\n\n- __Remove:__ Removes the cluster from the Catalog, but leaves the kubeConfig on disk in the configured location.\n- __Delete config:__ Removes the cluster from the Catalog __and deletes__ the kubeConfig from disk.\n\nIn either case, __the cluster in Container Cloud is unaffected__. If you need to terminate the cluster, please do so in the Container Cloud web application.\n\n## SSO support\n\n📣 Mirantis Container Cloud instances that use third-party SSO authentication via __Keycloak__ are __required__ in order to use this extension.\n\n### Keycloak Configuration\n\nSince the integration leverages the `lens://` URL protocol handling feature for extensions, __Lens 4.2__ (or later) is required, and the __Keycloak Client__ of the instance must be configured as follows:\n\n-   Allow the following redirect URI: `lens://extensions/@mirantis/lens-extension-cc/oauth/code`\n\n> 💡 Be sure to make these configuration adjustments __on every Keycloak Client__ (`kaas` for the management cluster, and `k8s` for child clusters, by default) that manages clusters you will want to add. The extension does not know ahead of time whether you have given it the appropriate access, and adding clusters without this configuration will result in an error.\n\n> 💬 __Mirantis Container Cloud 2.9__ configures the above for you __automatically__ so you should not have to do this if you're using 2.9 or later.\n\n### Authentication flow\n\nWhen connecting to an instance that uses SSO, Lens will open the instance's SSO authorization page in the system's default browser.\n\nOnce authorized, Keycloak will redirect to the `lens://...` URL, triggering the browser to ask permission to open the Lens app to process the request (unless permission was granted previously with the _always allow_ check box for your SSO ID Provider, e.g. `accounts.google.com`):\n\n![Lens protocol permission - always allow](docs/lens-protocol-permission.png)\n\n> ⚠️ Even if you check the \"Always allow\" box, your browser may still continue to show a popup message waiting for you to click on an \"Open Lens.app\" button. This is a built-in security feature. Please be on the look out for this popup in your browser whenever accessing your Container Cloud instance, or adding clusters to Lens.\n\nWhether the permission was already given, or upon clicking __Open Lens.app__, Lens will receive focus again, and the extension will then read the list of namespaces and clusters and present them for selection.\n\nThe temporary browser window used for SSO authorization will likely still be open, and should now be closed manually.\n\n### Single cluster limitation\n\nDue to technical issues with generating a unique kubeConfig per cluster, when the Container Cloud instance uses SSO authorization, cluster selection is __limited to a single cluster__:\n\n![Single cluster SSO limitation](docs/sso-single-cluster-warning.png)\n\nWe hope to overcome this limitation in the future.\n\n## Supported protocol requests\n\n[Lens 4.2](https://medium.com/k8slens/lens-4-2-released-f1c3268d3f95) introduced a new __custom Lens protocol handler__. This means Lens can now respond to `lens://` URL requests made in the browser, and this extension can now support some interesting requests that enable tighter integration between Mirantis Container Cloud instances and Lens.\n\n> Note that this integration is a one-way street: Container Cloud -> Lens. It does not work the other way around. _Reverse_ integration is achieved simply by making Container Cloud API requests from Lens, which is much easier to achieve, and has been used by this extension since its inception.\n\nThe __base URL__ for requests that this extension can respond to is:\n\n```\nlens://extensions/@mirantis/lens-extension-cc\n```\n\nThe following APIs are currently supported by this extension, from the base URL above:\n\n### Protocol - Activate cluster\n\nActivates a cluster __already added__ to Lens.\n\n```\nGET /activateCluster\n  ?cloudUrl={string}\n  &namespace={string}\n  &clusterName={string}\n  &clusterId={string}\n```\n\n- `cloudUrl`: URL to the instance, e.g. `https://container-cloud.my-company.com`\n- `namespace`: ID of the Container Cloud namespace containing the cluster to activate.\n- `clusterName`: Name of the cluster to activate.\n- `clusterId`: ID of the cluster (in `namespace`) to activate.\n\n### Protocol - SSO OAuth Code\n\nAllow the extension to use the system's default browser to broker an OAuth authorization code with a Keycloak client in a Container Cloud instance. This is used both for general access (to list clusters) as well as specific cluster access to generate kubeConfig files to add to Lens.\n\n```\nGET /oauth/code\n  ?code={string}\n  [ &state={string} ]\n  [ &error={string} ]\n  [ &error_description={string} ]\n```\n\n- `code`: Temporary authorization code to exchange for API tokens.\n- `state` (Optional): Used to differentiate between requests for general access and specific access. The value is generated by the extension as part of the request and should come back as part of the response.\n- `error` (Optional): OAuth error message, if an error occurs.\n- `error_description` (Optional): OAuth error description, if an error occurs.\n\n## FAQ\n\n- Why are management clusters not selected by default?\n    - The extension purposely doesn't not add management clusters to the default/initial set of selected clusters after retrieving clusters from a Mirantis Container Cloud instance because they are typically of less interest than workload clusters.\n- I get an error, \"Invalid redirect_uri\", when I attempt to access or add my clusters.\n    - Make sure you have properly [configured](#keycloak-configuration) all your Keycloak clients for use with the extension.\n- Why can I only selected one cluster to add at a time?\n    - See [Single cluster limitation](#single-cluster-limitation) when using SSO.\n- I was able to add my cluster to Lens, but Lens fails to show it because of an authentication error.\n    - Check if the cluster is only accessible over a private network (i.e. VPN) connection, and try opening it in Lens once connected to the network. Even though you can see the cluster in Container Cloud, as well as in the extension, accessing the cluster's details may still require a VPN connection in this case.\n- Up to, and including, __Lens 5.1.3__ (and probably some versions after that as well), I get an error like, \"Failed to add cluster to Lens\" after choosing a cluster and clicking on the \"Add cluster\" button in the extension, or choosing the \"Add cluster to Lens\" cluster menu option in Mirantis Container Cloud v2.9 or later.\n    - __Lens must be restarted__ after upgrading the extension. This is __due to a bug in Lens__ that causes the extension's registration of [IPC event handlers](https://api-docs.k8slens.dev/v5.1.2/extensions/guides/ipc/) to be ignored, leading to an error message like this. [This Lens PR](https://github.com/lensapp/lens/pull/3505) tracks the fix.\n\n## Development\n\n> __Yarn 1.x is required__\n\nFirst, quit Lens if it's currently running.\n\nThen, clone the repository wherever you prefer to have your code, and then link to it:\n\n```bash\n$ git clone https://github.com/Mirantis/lens-extension-cc.git /your/src/path\n$ mkdir -p ~/.k8slens/extensions\n$ ln -s /your/src/path ~/.k8slens/extensions/lens-extension-cc\n$ cd /your/src/path\n$ yarn       # install dependencies\n$ yarn start # start dev build in watch mode\n```\n\nThis will put the development build into watch mode.\n\nRestart Lens and go to the Extensions View (`CMD+SHIFT+E` on macOS) to enable it, which will cause it to load for the first time.\n\nNow, as you make source changes, the build will run, and __usually__ all you need to do is __reload the Lens window__ (`CMD+R` on macOS) to see your changes. If you make changes under `/src/main` (or any shared code that's used by that code), however, you will need to __restart Lens__ because code on the main thread does not get reloaded with `CMD+R`.\n\nYou can also run a one-off development build with `yarn dev`.\n\n> Note these steps will get much easier once [this Lens issue](https://github.com/lensapp/lens/issues/1741) is fixed.\n\n### Dev - Uninstalling\n\nGo to the Lens Extensions View (`CMD+SHIFT+E` on macOS) and use the UI to uninstall it.\n\nThis will simply remove the symlink [you created](#development) in `~/.k8slens/extensions` and leave your linked directory intact.\n\n### Dev - Publishing\n\nFirst, __update the CHANGELOG__:\n\n- Make sure everything in __UNRELEASED__ is accurate\n- Change `UNRELEASED -> vX.Y.Z` (version that will be published)\n\nThen __use NPM__:\n\n```bash\n$ npm version <patch|minor|major>\n$ npm publish --access public        # <- NOTE the '--access public' part!\n$ git push && git push --tags\n```\n\n> By default, packages published to an NPM scope/org are __private__. Use the `--access public` option to publish it as a public package instead. You can also [configure NPM](https://docs.npmjs.com/configuring-your-npm-client-with-your-organization-settings#setting-package-visibility-to-public-for-a-single-package) to always publish that single package publicly by running `npm config set access public` within the repository root directory (i.e. package root).\n\nThe `prepublishOnly` script will automatically produce a production build in the `./dist` directory, which will be published.\n","engines":{"lens":"^5.0.0"},"gitHead":"242ddffed60c44e7f3cd6e605f8e7d850e596c26","scripts":{"dev":"TARGET=development yarn build","fmt":"prettier --write \"{*,src/**/*}.+(js|ts*|yml|json)\"","lint":"eslint \"{*,src/**/*}.+(js|ts*)\"","test":"yarn lint && yarn fmt:check && yarn test:unit","babel":"babel src --out-dir dist_babel","build":"yarn clean && webpack","clean":"rm -rf ./dist && rm -rf ./dist_babel","start":"TARGET=development yarn build --watch","prebabel":"rm -rf ./dist_babel","fmt:check":"prettier --check \"{*,src/**/*}.+(js|ts*|yml|json)\"","test:unit":"echo 'Works for me! ¯\\_(ツ)_/¯'","prepublishOnly":"yarn test && yarn build"},"_npmUser":{"name":"stefcameron","email":"stefan@stefcameron.com"},"renderer":"dist/renderer.js","publisher":"mirantis","repository":{"url":"git+https://github.com/Mirantis/lens-extension-cc.git","type":"git"},"_npmVersion":"8.3.1","description":"Lens extension that loads Mirantis Container Cloud clusters.","directories":{},"_nodeVersion":"17.4.0","_hasShrinkwrap":false,"readmeFilename":"README.md","devDependencies":{"mobx":"^6.3.13","react":"^17.0.2","rtvjs":"^4.0.0","eslint":"^7.32.0","webpack":"^5.68.0","electron":"^13.6.1","prettier":"^2.5.1","react-dom":"^17.0.2","ts-loader":"^9.2.6","@babel/cli":"^7.16.8","node-fetch":"^2.6.7","prop-types":"^15.8.1","typescript":"^4.5.5","@babel/core":"^7.16.12","@types/node":"^17.0.14","webpack-cli":"^4.9.2","@types/react":"^17.0.38","babel-loader":"^8.2.3","query-string":"^7.1.0","@emotion/core":"^11.0.0","@emotion/react":"^11.7.1","@emotion/styled":"^11.6.0","@babel/preset-env":"^7.16.11","@babel/preset-react":"^7.16.7","@k8slens/extensions":"^5.3.4","@types/react-router":"^5.1.18","babel-plugin-lodash":"^3.3.4","eslint-plugin-react":"^7.28.0","@babel/eslint-parser":"^7.16.5","@emotion/babel-plugin":"^11.7.2","eslint-config-prettier":"^8.3.0","@typescript-eslint/parser":"^4.33.0","eslint-plugin-react-hooks":"^4.3.0","babel-plugin-module-resolver":"^4.1.0","@typescript-eslint/eslint-plugin":"^4.33.0","@babel/plugin-proposal-decorators":"^7.16.7","@babel/plugin-transform-react-jsx":"^7.16.7","@babel/plugin-proposal-class-properties":"^7.16.7"},"_npmOperationalInternal":{"tmp":"tmp/lens-extension-cc_4.0.0-alpha.0_1643837576494_0.9198552566209213","host":"s3://npm-registry-packages"}},"3.1.1":{"name":"@mirantis/lens-extension-cc","version":"3.1.1","keywords":["lens","mirantis","cluster"],"author":{"url":"https://github.com/stefcameron","name":"Stefan Cameron"},"license":"MIT","_id":"@mirantis/lens-extension-cc@3.1.1","maintainers":[{"name":"stefcameron","email":"stefan@stefcameron.com"}],"homepage":"https://github.com/Mirantis/lens-extension-cc#readme","bugs":{"url":"https://github.com/Mirantis/lens-extension-cc/issues"},"dist":{"shasum":"23fef6af2643bb4bb25fb9d53f2a98a9429f485b","tarball":"https://registry.npmjs.org/@mirantis/lens-extension-cc/-/lens-extension-cc-3.1.1.tgz","fileCount":6,"integrity":"sha512-HcJ3H6DUJBrbTX4Mx5DbX3hCYHNVBus9/DF+mTSGzbJgmj9IS97e80LZleI9fpc8Zr3imNx3xJpJx7c7QzNWvA==","signatures":[{"sig":"MEQCIAVdFGUWicPo42LOlw+tVlc/xshh9fSXALqvpkCZmhU9AiBX2jpNma7CMT+hTadiZrosd2agKDtTPbu68uXvd6nFkw==","keyid":"SHA256:jl3bwswu80PjjokCgh0o2w5c2U4LhQAE57gj9cz1kzA"}],"unpackedSize":3837143,"npm-signature":"-----BEGIN PGP SIGNATURE-----\r\nVersion: OpenPGP.js v3.0.13\r\nComment: https://openpgpjs.org\r\n\r\nwsFcBAEBCAAQBQJh/BpTCRA9TVsSAnZWagAAYxQQAJ6YJWAa5rws4MiKOWhi\nKD1VQgT6cHbDAp7G3byguc/ZB9Xh1mXPt0drC2w27kRY5dSvaCDmWLyMhehf\n1NYLMII9YljKaXlrA6ox6j0QoUdCMQkb8z7wg685RjQhdm0vxbOhP7xViK68\nj2UnumTjvBQoDpeXMiJcAKD3V4pFNNWwtFCPPlv+ZwhWCpWFxtAtY8iO/3L/\nSgBLPQWeNJEY1Slv1d/Y7zkyKK1yOhXmgzVQxiXV/RxKtBD509FBZOwfDPeO\nkmQkV37GWo5bsJURp5KQ8e0ahkcf5uEdHAUu//H3tAu8KTTO8rsyLiNMNDls\nbu5RCRrsu4FHmf+fhYGavxvB+k+wzN9EJGhPEmxCtoPlrVcLpQ8QMemQ46wH\nDrOSo1PrJaPId5sLXzjo/QMbfpcx2ZINUKgFlSjDlgrTXzMurNxR+Kg+vF7Q\nYGd3wnEF7kKmjpLfE8DVx6Yx+9kWtlgEkwgRwHc0SNrQCA3qFI8VlCc6boEc\nYRXbuBFAcjHAQkCHHKa75r+0kvYFAp34uGFBXiwhpAl1StVSuAUL5O3GEUwn\nSvpj1dGxWUyXVr9gkrkNem8B3X+XdE+w8dNZxMMjj2hb8OfyQSKggAl4KE6m\nPgcyjrfdUr1hFa/IxvvY1Ki+Klw+0LPbyyTn+i5ZoKjql0HTqAWD2JUB+3uk\n87rn\r\n=Jer6\r\n-----END PGP SIGNATURE-----\r\n"},"main":"dist/main.js","engines":{"lens":"^5.0.0"},"gitHead":"4315713279d8a5e5f1a64c570a5b1aae298ca5c6","scripts":{"dev":"TARGET=development yarn build","fmt":"prettier --write \"{*,src/**/*}.+(js|ts*|yml|json)\"","lint":"eslint \"{*,src/**/*}.+(js|ts*)\"","test":"yarn lint && yarn fmt:check && yarn test:unit","babel":"babel src --out-dir dist_babel","build":"yarn clean && webpack","clean":"rm -rf ./dist && rm -rf ./dist_babel","start":"TARGET=development yarn build --watch","prebabel":"rm -rf ./dist_babel","fmt:check":"prettier --check \"{*,src/**/*}.+(js|ts*|yml|json)\"","test:unit":"echo 'Works for me! ¯\\_(ツ)_/¯'","prepublishOnly":"yarn test && yarn build"},"_npmUser":{"name":"stefcameron","email":"stefan@stefcameron.com"},"renderer":"dist/renderer.js","publisher":"mirantis","repository":{"url":"git+https://github.com/Mirantis/lens-extension-cc.git","type":"git"},"_npmVersion":"8.3.1","description":"Lens extension that loads Mirantis Container Cloud clusters.","directories":{},"_nodeVersion":"17.4.0","_hasShrinkwrap":false,"devDependencies":{"mobx":"^6.3.8","react":"^17.0.2","rtvjs":"^4.0.0","eslint":"^7.32.0","webpack":"^5.64.4","electron":"^13.6.1","prettier":"^2.5.0","react-dom":"^17.0.2","ts-loader":"^9.2.6","@babel/cli":"^7.16.0","node-fetch":"^2.6.6","prop-types":"^15.7.2","typescript":"^4.5.2","@babel/core":"^7.16.0","@types/node":"^16.11.10","webpack-cli":"^4.9.1","@types/react":"^17.0.37","babel-loader":"^8.2.3","query-string":"^7.0.1","@emotion/core":"^11.0.0","@emotion/react":"^11.7.0","@emotion/styled":"^11.6.0","@babel/preset-env":"^7.16.4","@babel/preset-react":"^7.16.0","@k8slens/extensions":"^5.3.0","@types/react-router":"^5.1.17","babel-plugin-lodash":"^3.3.4","eslint-plugin-react":"^7.27.1","@babel/eslint-parser":"^7.16.3","@emotion/babel-plugin":"^11.3.0","eslint-config-prettier":"^8.3.0","@typescript-eslint/parser":"^4.33.0","eslint-plugin-react-hooks":"^4.3.0","babel-plugin-module-resolver":"^4.1.0","@typescript-eslint/eslint-plugin":"^4.33.0","@babel/plugin-proposal-decorators":"^7.16.4","@babel/plugin-transform-react-jsx":"^7.16.0"},"_npmOperationalInternal":{"tmp":"tmp/lens-extension-cc_3.1.1_1643911763430_0.22810191738334518","host":"s3://npm-registry-packages"}},"4.0.0-alpha.1":{"name":"@mirantis/lens-extension-cc","version":"4.0.0-alpha.1","keywords":["lens","mirantis","cluster"],"author":{"url":"https://github.com/stefcameron","name":"Stefan Cameron"},"license":"MIT","_id":"@mirantis/lens-extension-cc@4.0.0-alpha.1","maintainers":[{"name":"stefcameron","email":"stefan@stefcameron.com"}],"homepage":"https://github.com/Mirantis/lens-extension-cc#readme","bugs":{"url":"https://github.com/Mirantis/lens-extension-cc/issues"},"dist":{"shasum":"94e3411c427b433cd29acba24c4118160c06418c","tarball":"https://registry.npmjs.org/@mirantis/lens-extension-cc/-/lens-extension-cc-4.0.0-alpha.1.tgz","fileCount":6,"integrity":"sha512-QiRTcMXPSnEJwJMprElbjJ8qExToKdLbbPQ8698Rc75udQz46qiotB0hMhubvTrN0v2JfhWhVYkuzQUEXEczlw==","signatures":[{"sig":"MEUCICMyIdYJhWBJeT+TPPAeAEZLQ0XUmKreqWaGsdEkrTLYAiEAkdNgwNR2HgUax5f7UniCiwqVXpNfRB0nmXoAFDEOgRA=","keyid":"SHA256:jl3bwswu80PjjokCgh0o2w5c2U4LhQAE57gj9cz1kzA"}],"unpackedSize":5438941,"npm-signature":"-----BEGIN PGP SIGNATURE-----\r\nVersion: OpenPGP.js v4.10.10\r\nComment: https://openpgpjs.org\r\n\r\nwsFzBAEBCAAGBQJiFo9kACEJED1NWxICdlZqFiEECWMYAoorWMhJKdjhPU1b\r\nEgJ2Vmo26g//TP4jCuuM3VFCVfmYsxyEI8TMxVWRVCbzx5L14LQIqYFMWZbD\r\nBCjoQyd53xIJxY7BS7MxJlbIWpow5/Ok1MNb+dGqdceZA4YGsyQ93znW2q7x\r\nlBEA4pEGfGUC2o2wEK2kqUPbaj6C9WHqz4d5YsVzcNmzuUz8fCvRvjxGQ2Gp\r\nuiiE4B9eATzKgtTP9WwBR4fzPcvden98VtGaL5I07NpnlRlTttBdtBeHCxuo\r\n9+tY5sanAhCwSbxCN1ZqIcFaXiMOCTTa7agsIjSVJYjNYB7XMesWWlnkCW98\r\n/8Kto9Tu6exK65NOoMZAVD176bGL11LQzJc60ZnCqS9RAwdhhT0YR4nFTiDS\r\nU0oF8cH5H1No9AOzi+YabiGAwLzbPVweqqjV/0XO8Mbgfps08GAEFHwEvtGy\r\nGBWEVqOFsl8I9kkU1NoudE33z8LDQ8cQ/1j0U1K7tiO68hKhcsQTZumgdVzn\r\nSWfTk0A+fEDP7cjgQvYrK5iVv13SSU9Lh0WYBudIUQ/a6ApYmUW9laGNzXJ5\r\npIysW4MDn6zJPG/3Oh0wnvTsUG1aCX1STY+EX79oRH5yfNQzfv4teoDmFy+1\r\nfDL7yPpy3mvfylfFM5wHTBwQiagDsa0oPfvJEP1lrzd15XVK5JJjsUSsxZGf\r\ncHFAHtyHk5drzx+FO1drkk8nF69qAQNSCuY=\r\n=8VIu\r\n-----END PGP SIGNATURE-----\r\n"},"main":"dist/main.js","engines":{"lens":"^5.0.0"},"gitHead":"5792351c8c7e0fd1067a9ca321b28356b417bc59","scripts":{"dev":"TARGET=development yarn build","fmt":"prettier --write \"{*,src/**/*}.+(js|ts*|yml|json)\"","lint":"eslint \"{*,src/**/*}.+(js|ts*)\"","test":"yarn lint && yarn fmt:check && yarn test:unit","babel":"babel src --out-dir dist_babel","build":"yarn clean && webpack","clean":"rm -rf ./dist && rm -rf ./dist_babel","start":"TARGET=development yarn build --watch","prebabel":"rm -rf ./dist_babel","fmt:check":"prettier --check \"{*,src/**/*}.+(js|ts*|yml|json)\"","test:unit":"echo 'Works for me! ¯\\_(ツ)_/¯'","prepublishOnly":"yarn test && yarn build"},"_npmUser":{"name":"stefcameron","email":"stefan@stefcameron.com"},"renderer":"dist/renderer.js","publisher":"mirantis","repository":{"url":"git+https://github.com/Mirantis/lens-extension-cc.git","type":"git"},"_npmVersion":"8.3.1","description":"Lens extension that loads Mirantis Container Cloud clusters.","directories":{},"_nodeVersion":"17.4.0","_hasShrinkwrap":false,"devDependencies":{"mobx":"^6.4.1","react":"^17.0.2","rtvjs":"^4.0.0","eslint":"^7.32.0","webpack":"^5.69.1","electron":"^13.6.1","prettier":"^2.5.1","react-dom":"^17.0.2","ts-loader":"^9.2.6","@babel/cli":"^7.17.6","node-fetch":"^2.6.7","prop-types":"^15.8.1","typescript":"^4.5.5","@babel/core":"^7.17.5","@types/node":"^17.0.19","webpack-cli":"^4.9.2","@types/react":"^17.0.39","babel-loader":"^8.2.3","query-string":"^7.1.1","@emotion/core":"^11.0.0","@emotion/react":"^11.8.1","@emotion/styled":"^11.8.1","@babel/preset-env":"^7.16.11","@babel/preset-react":"^7.16.7","@k8slens/extensions":"^5.3.4","@types/react-router":"^5.1.18","babel-plugin-lodash":"^3.3.4","eslint-plugin-react":"^7.28.0","@babel/eslint-parser":"^7.17.0","@emotion/babel-plugin":"^11.7.2","eslint-config-prettier":"^8.4.0","@typescript-eslint/parser":"^4.33.0","eslint-plugin-react-hooks":"^4.3.0","babel-plugin-module-resolver":"^4.1.0","@typescript-eslint/eslint-plugin":"^4.33.0","@babel/plugin-proposal-decorators":"^7.17.2","@babel/plugin-transform-react-jsx":"^7.17.3","@babel/plugin-proposal-class-properties":"^7.16.7"},"_npmOperationalInternal":{"tmp":"tmp/lens-extension-cc_4.0.0-alpha.1_1645645668477_0.37563613148448405","host":"s3://npm-registry-packages"}},"4.0.0-alpha.2":{"name":"@mirantis/lens-extension-cc","version":"4.0.0-alpha.2","keywords":["lens","mirantis","cluster"],"author":{"url":"https://github.com/stefcameron","name":"Stefan Cameron"},"license":"MIT","_id":"@mirantis/lens-extension-cc@4.0.0-alpha.2","maintainers":[{"name":"stefcameron","email":"stefan@stefcameron.com"}],"homepage":"https://github.com/Mirantis/lens-extension-cc#readme","bugs":{"url":"https://github.com/Mirantis/lens-extension-cc/issues"},"dist":{"shasum":"87aa4fe2d3978fd9cce1a9a036ebcc9f9d45c664","tarball":"https://registry.npmjs.org/@mirantis/lens-extension-cc/-/lens-extension-cc-4.0.0-alpha.2.tgz","fileCount":6,"integrity":"sha512-UnZEz8ronUzCkYtT26zvr3fpbDpELvMs36vG/3tmhV3Q/nIs7FUSZHPfmHpI6qFjNY66eanjc2SYxdkU0Kcyog==","signatures":[{"sig":"MEUCIDKWOBw2cDB3pXJJ0fMKOQFZig6sNmYsjagTOu/f+DQnAiEAucXev5pRa9t1ueSrznLbLYJuF3cBseR8G1ROLAgBBGU=","keyid":"SHA256:jl3bwswu80PjjokCgh0o2w5c2U4LhQAE57gj9cz1kzA"}],"unpackedSize":5448331,"npm-signature":"-----BEGIN PGP SIGNATURE-----\r\nVersion: OpenPGP.js v4.10.10\r\nComment: https://openpgpjs.org\r\n\r\nwsFzBAEBCAAGBQJiH/qEACEJED1NWxICdlZqFiEECWMYAoorWMhJKdjhPU1b\r\nEgJ2VmqqDg//T9GjnxhaGMqSjQYfKbzLqUDj0KpcKPVMqE+YKKsjQgCK+Qgs\r\nVkQHtcs4C0pO7GpvwpMCENLDbEoor5TN6O76o0aj1Nhve6jc06cNC6zcMEtb\r\nluQ6OpPSwgejqAcAjTGdxNCTe06e9sA4BVGuLA24QX9vwCdDgo0FLad8bdoZ\r\nlo3V7wiPcVIxrUY8rq4KMb1QJMVukEYELmhUxupDhUC1F2YUqW27UEO9QAuj\r\nypFfqWAzRSDwgntFyCqqaIV+sxjRfg/1pvDbfhCPIJwniUbQ3XJY0RANEdCh\r\nPZZARcntERymfcLvFXr1mTnGnLpYSqOr15LTh8meGHRCuSH4lPkq9nZPqSkn\r\n6iXVdAe5MoBe67pABzBn6e5Kd9K/KMqzFIESszfQHrgURFeUfheoijLmbUe/\r\n1CI4WvxkJSghr0X1b+7CTlHuTMMAnK01P8d3ZMbQDtfAVsjjaNDgV9pjoxKk\r\nPO0/fI0bse/3CoWkdmIV2anHJ+/bY0eAL7mFC4MclyhKIHge0XjcI3OguDen\r\nu3l9V6V8JGTKwHGRm+GUyNmPMU/tvPTN0/dSLekWkGZBkhNCcslesEUXzkee\r\nqJIiyj4myLQQaAYNnb9soCkGLL8Ve5FzgXpZfoQ+gyJSKbG/e/1Yb+g4seS6\r\nhR8Fq9VmRZwI5WjkmvRIRxcyUpOa5d+A6Bs=\r\n=hJGG\r\n-----END PGP SIGNATURE-----\r\n"},"main":"dist/main.js","readme":"# ⚠️ Version 3 Maintenance ⚠️\n\nFor v3 (the currently-published version), please see [this README](https://github.com/Mirantis/lens-extension-cc/tree/v3-maint#readme) and code on the [v3-maint](https://github.com/Mirantis/lens-extension-cc/tree/v3-maint) branch. This branch will be maintained until v4 is published.\n\n__The master branch will be used for v4 development__, which will introduce significant architectural changes that will make this extension even more useful and powerful for integrating Mirantis Container Cloud with the Lens IDE.\n\n# Mirantis Container Cloud Lens Extension\n\n![CI](https://github.com/Mirantis/lens-extension-cc/workflows/CI/badge.svg?branch=master&event=push)\n\nThis [Lens](https://k8slens.dev/) Extension adds a status bar item, and a menu item, that makes it easy to connect Lens to a Mirantis Container Cloud instance and add its clusters to Lens.\n\nℹ️ Requires Lens `>= 5.1.0`.\n\n![Extension UI](./docs/screen-shot.png)\n\n## Installing\n\nInstallation is very easy! Just make sure Lens `5.1.0` or later is running, and follow these simple steps:\n\n1. Switch to the Extensions view (`CMD+SHIFT+E` on macOS).\n2. Enter the name of this extension, `@mirantis/lens-extension-cc`, into the Install Extension box.\n3. Click on the Install button.\n\n![Extension UI](./docs/ext-install-by-name.png)\n\nYou should now be able to choose the new `File > Add Cloud Clusters` menu item, or click on the `Mirantis Container Cloud` status bar icon (far right side of the status bar at the bottom of the app), to get started.\n\n> 💬 These instructions will help you install the extension for direct use with Lens. Follow the [development](#development) instructions below if you intend to work on the extension to improve it.\n\n## Upgrading\n\nTo upgrade to a newer release, go to the Extensions view (`CMD+SHIFT+E` on macOS), [uninstall](#uninstalling) the extension, and then [re-install](#installing) it again.\n\n> 🚨 Up to, and including, __Lens 5.1.3__ (and probably some versions after that as well), __Lens must be restarted__ after upgrading the extension. This is __due to a bug in Lens__ that causes the extension's registration of [IPC event handlers](https://api-docs.k8slens.dev/v5.1.2/extensions/guides/ipc/) to be ignored, leading to an error message like \"Failed to add cluster to Lens\" after choosing a cluster and clicking on the \"Add cluster\" button. It will also manifest itself when choosing \"Add cluster to lens\" from the cluster's extended menu options in Mirantis Container Cloud v2.9 or later. [This Lens PR](https://github.com/lensapp/lens/pull/3505) tracks the fix.\n\n## Uninstalling\n\nGo to the Lens Extensions view (`CMD+SHIFT+E` on macOS) and click the Uninstall button next to this extension.\n\n## Catalog\n\nLens 5 replaced its Workspace concept with a new Catalog that allows much more flexibility.\n\nWhen adding clusters to Lens with this extension, each cluster will get the following labels:\n\n- `mcc=true`\n- `project=NAMESPACE` (set to the name of the project/namespace in Container Cloud to which the cluster belongs)\n\nThe extension also supports __removing__ and __deleting__ clusters that it added by choosing these items from the cluster's \"More\" context menu in the Catalog (as well as icons in the Catalog Drawer's toolbar):\n\n- __Remove:__ Removes the cluster from the Catalog, but leaves the kubeConfig on disk in the configured location.\n- __Delete config:__ Removes the cluster from the Catalog __and deletes__ the kubeConfig from disk.\n\nIn either case, __the cluster in Container Cloud is unaffected__. If you need to terminate the cluster, please do so in the Container Cloud web application.\n\n## SSO support\n\n📣 Mirantis Container Cloud instances that use third-party SSO authentication via __Keycloak__ are __required__ in order to use this extension.\n\n### Keycloak Configuration\n\nSince the integration leverages the `lens://` URL protocol handling feature for extensions, __Lens 4.2__ (or later) is required, and the __Keycloak Client__ of the instance must be configured as follows:\n\n-   Allow the following redirect URI: `lens://extensions/@mirantis/lens-extension-cc/oauth/code`\n\n> 💡 Be sure to make these configuration adjustments __on every Keycloak Client__ (`kaas` for the management cluster, and `k8s` for child clusters, by default) that manages clusters you will want to add. The extension does not know ahead of time whether you have given it the appropriate access, and adding clusters without this configuration will result in an error.\n\n> 💬 __Mirantis Container Cloud 2.9__ configures the above for you __automatically__ so you should not have to do this if you're using 2.9 or later.\n\n### Authentication flow\n\nWhen connecting to an instance that uses SSO, Lens will open the instance's SSO authorization page in the system's default browser.\n\nOnce authorized, Keycloak will redirect to the `lens://...` URL, triggering the browser to ask permission to open the Lens app to process the request (unless permission was granted previously with the _always allow_ check box for your SSO ID Provider, e.g. `accounts.google.com`):\n\n![Lens protocol permission - always allow](docs/lens-protocol-permission.png)\n\n> ⚠️ Even if you check the \"Always allow\" box, your browser may still continue to show a popup message waiting for you to click on an \"Open Lens.app\" button. This is a built-in security feature. Please be on the look out for this popup in your browser whenever accessing your Container Cloud instance, or adding clusters to Lens.\n\nWhether the permission was already given, or upon clicking __Open Lens.app__, Lens will receive focus again, and the extension will then read the list of namespaces and clusters and present them for selection.\n\nThe temporary browser window used for SSO authorization will likely still be open, and should now be closed manually.\n\n### Single cluster limitation\n\nDue to technical issues with generating a unique kubeConfig per cluster, when the Container Cloud instance uses SSO authorization, cluster selection is __limited to a single cluster__:\n\n![Single cluster SSO limitation](docs/sso-single-cluster-warning.png)\n\nWe hope to overcome this limitation in the future.\n\n## Supported protocol requests\n\n[Lens 4.2](https://medium.com/k8slens/lens-4-2-released-f1c3268d3f95) introduced a new __custom Lens protocol handler__. This means Lens can now respond to `lens://` URL requests made in the browser, and this extension can now support some interesting requests that enable tighter integration between Mirantis Container Cloud instances and Lens.\n\n> Note that this integration is a one-way street: Container Cloud -> Lens. It does not work the other way around. _Reverse_ integration is achieved simply by making Container Cloud API requests from Lens, which is much easier to achieve, and has been used by this extension since its inception.\n\nThe __base URL__ for requests that this extension can respond to is:\n\n```\nlens://extensions/@mirantis/lens-extension-cc\n```\n\nThe following APIs are currently supported by this extension, from the base URL above:\n\n### Protocol - Activate cluster\n\nActivates a cluster __already added__ to Lens.\n\n```\nGET /activateCluster\n  ?cloudUrl={string}\n  &namespace={string}\n  &clusterName={string}\n  &clusterId={string}\n```\n\n- `cloudUrl`: URL to the instance, e.g. `https://container-cloud.my-company.com`\n- `namespace`: ID of the Container Cloud namespace containing the cluster to activate.\n- `clusterName`: Name of the cluster to activate.\n- `clusterId`: ID of the cluster (in `namespace`) to activate.\n\n### Protocol - SSO OAuth Code\n\nAllow the extension to use the system's default browser to broker an OAuth authorization code with a Keycloak client in a Container Cloud instance. This is used both for general access (to list clusters) as well as specific cluster access to generate kubeConfig files to add to Lens.\n\n```\nGET /oauth/code\n  ?code={string}\n  [ &state={string} ]\n  [ &error={string} ]\n  [ &error_description={string} ]\n```\n\n- `code`: Temporary authorization code to exchange for API tokens.\n- `state` (Optional): Used to differentiate between requests for general access and specific access. The value is generated by the extension as part of the request and should come back as part of the response.\n- `error` (Optional): OAuth error message, if an error occurs.\n- `error_description` (Optional): OAuth error description, if an error occurs.\n\n## FAQ\n\n- Why are management clusters not selected by default?\n    - The extension purposely doesn't not add management clusters to the default/initial set of selected clusters after retrieving clusters from a Mirantis Container Cloud instance because they are typically of less interest than workload clusters.\n- I get an error, \"Invalid redirect_uri\", when I attempt to access or add my clusters.\n    - Make sure you have properly [configured](#keycloak-configuration) all your Keycloak clients for use with the extension.\n- Why can I only selected one cluster to add at a time?\n    - See [Single cluster limitation](#single-cluster-limitation) when using SSO.\n- I was able to add my cluster to Lens, but Lens fails to show it because of an authentication error.\n    - Check if the cluster is only accessible over a private network (i.e. VPN) connection, and try opening it in Lens once connected to the network. Even though you can see the cluster in Container Cloud, as well as in the extension, accessing the cluster's details may still require a VPN connection in this case.\n- Up to, and including, __Lens 5.1.3__ (and probably some versions after that as well), I get an error like, \"Failed to add cluster to Lens\" after choosing a cluster and clicking on the \"Add cluster\" button in the extension, or choosing the \"Add cluster to Lens\" cluster menu option in Mirantis Container Cloud v2.9 or later.\n    - __Lens must be restarted__ after upgrading the extension. This is __due to a bug in Lens__ that causes the extension's registration of [IPC event handlers](https://api-docs.k8slens.dev/v5.1.2/extensions/guides/ipc/) to be ignored, leading to an error message like this. [This Lens PR](https://github.com/lensapp/lens/pull/3505) tracks the fix.\n\n## Development\n\n> __Yarn 1.x is required__\n\nFirst, quit Lens if it's currently running.\n\nThen, clone the repository wherever you prefer to have your code, and then link to it:\n\n```bash\n$ git clone https://github.com/Mirantis/lens-extension-cc.git /your/src/path\n$ mkdir -p ~/.k8slens/extensions\n$ ln -s /your/src/path ~/.k8slens/extensions/lens-extension-cc\n$ cd /your/src/path\n$ yarn       # install dependencies\n$ yarn start # start dev build in watch mode\n```\n\nThis will put the development build into watch mode.\n\nRestart Lens and go to the Extensions View (`CMD+SHIFT+E` on macOS) to enable it, which will cause it to load for the first time.\n\nNow, as you make source changes, the build will run, and __usually__ all you need to do is __reload the Lens window__ (`CMD+R` on macOS) to see your changes. If you make changes under `/src/main` (or any shared code that's used by that code), however, you will need to __restart Lens__ because code on the main thread does not get reloaded with `CMD+R`.\n\nYou can also run a one-off development build with `yarn dev`.\n\n> Note these steps will get much easier once [this Lens issue](https://github.com/lensapp/lens/issues/1741) is fixed.\n\n### Dev - Uninstalling\n\nGo to the Lens Extensions View (`CMD+SHIFT+E` on macOS) and use the UI to uninstall it.\n\nThis will simply remove the symlink [you created](#development) in `~/.k8slens/extensions` and leave your linked directory intact.\n\n### Dev - Publishing\n\nFirst, __update the CHANGELOG__:\n\n- Make sure everything in __UNRELEASED__ is accurate\n- Change `UNRELEASED -> vX.Y.Z` (version that will be published)\n\nThen __use NPM__:\n\n```bash\n$ npm version <patch|minor|major>\n$ npm publish --access public        # <- NOTE the '--access public' part!\n$ git push && git push --tags\n```\n\n> By default, packages published to an NPM scope/org are __private__. Use the `--access public` option to publish it as a public package instead. You can also [configure NPM](https://docs.npmjs.com/configuring-your-npm-client-with-your-organization-settings#setting-package-visibility-to-public-for-a-single-package) to always publish that single package publicly by running `npm config set access public` within the repository root directory (i.e. package root).\n\nThe `prepublishOnly` script will automatically produce a production build in the `./dist` directory, which will be published.\n","engines":{"lens":"^5.0.0"},"gitHead":"83071c746ea10c0e373e83de51bb832ae5d30146","scripts":{"dev":"TARGET=development yarn build","fmt":"prettier --write \"{*,src/**/*}.+(js|ts*|yml|json)\"","lint":"eslint \"{*,src/**/*}.+(js|ts*)\"","test":"yarn lint && yarn fmt:check && yarn test:unit","babel":"babel src --out-dir dist_babel","build":"yarn clean && webpack","clean":"rm -rf ./dist && rm -rf ./dist_babel","start":"TARGET=development yarn build --watch","prebabel":"rm -rf ./dist_babel","fmt:check":"prettier --check \"{*,src/**/*}.+(js|ts*|yml|json)\"","test:unit":"echo 'Works for me! ¯\\_(ツ)_/¯'","prepublishOnly":"yarn test && yarn build"},"_npmUser":{"name":"stefcameron","email":"stefan@stefcameron.com"},"renderer":"dist/renderer.js","publisher":"mirantis","repository":{"url":"git+https://github.com/Mirantis/lens-extension-cc.git","type":"git"},"_npmVersion":"8.3.1","description":"Lens extension that loads Mirantis Container Cloud clusters.","directories":{},"_nodeVersion":"17.4.0","_hasShrinkwrap":false,"readmeFilename":"README.md","devDependencies":{"mobx":"^6.4.2","react":"^17.0.2","rtvjs":"^4.0.0","eslint":"^7.32.0","webpack":"^5.69.1","electron":"^14.2.4","prettier":"^2.5.1","react-dom":"^17.0.2","ts-loader":"^9.2.7","@babel/cli":"^7.17.6","node-fetch":"^2.6.7","prop-types":"^15.8.1","typescript":"^4.6.2","@babel/core":"^7.17.5","@types/node":"^17.0.21","webpack-cli":"^4.9.2","@types/react":"^17.0.39","babel-loader":"^8.2.3","query-string":"^7.1.1","@emotion/core":"^11.0.0","@emotion/react":"^11.8.1","@emotion/styled":"^11.8.1","@babel/preset-env":"^7.16.11","@babel/preset-react":"^7.16.7","@k8slens/extensions":"^5.4.0","@types/react-router":"^5.1.18","babel-plugin-lodash":"^3.3.4","eslint-plugin-react":"^7.29.2","@babel/eslint-parser":"^7.17.0","@emotion/babel-plugin":"^11.7.2","eslint-config-prettier":"^8.4.0","@typescript-eslint/parser":"^4.33.0","eslint-plugin-react-hooks":"^4.3.0","babel-plugin-module-resolver":"^4.1.0","@typescript-eslint/eslint-plugin":"^4.33.0","@babel/plugin-proposal-decorators":"^7.17.2","@babel/plugin-transform-react-jsx":"^7.17.3","@babel/plugin-proposal-class-properties":"^7.16.7"},"_npmOperationalInternal":{"tmp":"tmp/lens-extension-cc_4.0.0-alpha.2_1646262915815_0.1794232186895628","host":"s3://npm-registry-packages"}},"3.1.2":{"name":"@mirantis/lens-extension-cc","version":"3.1.2","keywords":["lens","mirantis","cluster"],"author":{"url":"https://github.com/stefcameron","name":"Stefan Cameron"},"license":"MIT","_id":"@mirantis/lens-extension-cc@3.1.2","maintainers":[{"name":"stefcameron","email":"stefan@stefcameron.com"}],"homepage":"https://github.com/Mirantis/lens-extension-cc#readme","bugs":{"url":"https://github.com/Mirantis/lens-extension-cc/issues"},"dist":{"shasum":"3d63b8ad3f4d71e4614763423209a045922ea876","tarball":"https://registry.npmjs.org/@mirantis/lens-extension-cc/-/lens-extension-cc-3.1.2.tgz","fileCount":6,"integrity":"sha512-Cio3axNOkeJ9ZiDV8iWmnOewAA1y7gbT9fZNY4MNTdi+ryKc/26YjZwG8gbHzYKkZHaAnEi5QLPkR073pL0xTw==","signatures":[{"sig":"MEUCIQDmH6kSmKci/R2xJtdtuWGLpzqELNtTqwkFsq40lefnrAIgUL65SZy8hBkEq+8P7BO+mw+cxPnfjCzJ9NtQO9r+cnQ=","keyid":"SHA256:jl3bwswu80PjjokCgh0o2w5c2U4LhQAE57gj9cz1kzA"}],"unpackedSize":3837332,"npm-signature":"-----BEGIN PGP SIGNATURE-----\r\nVersion: OpenPGP.js v4.10.10\r\nComment: https://openpgpjs.org\r\n\r\nwsFzBAEBCAAGBQJiH/weACEJED1NWxICdlZqFiEECWMYAoorWMhJKdjhPU1b\r\nEgJ2Vmr2Lw/9GoSIQPVveET8qf4PHn8pfaqyDSioUljO9+1gmcaQ8NMRmobK\r\nZlN6dzg6/RryUeBDVz32Igh0MCK0yr6oYihada3Qfmy7pNwbbennrpHJt/VJ\r\niUjkXYzK3XeqBy9Y/roIOCiZbnPLIWsXm0fnPy5Vfhf65g9y4+J+uAhFNW8v\r\ntprQaOzIpoPw4pkHBo2wx0Y7fgS1MVo8lPN6dIJmB8CcFNGQsJaBAYfy34dM\r\nMgH0qyzExGLW2M7Lg9OFVycatt3d/nTibo1G3tkTF6ln6MdDmgKHtfLkPSX9\r\nojYlk3mZNdTAAvqAAqkhtID5yWShgu2LPz3R5NudzkPv9rLhq5Crqikm9x7x\r\nYBrVXHLuGTAxo0hYl3hBq+FI1ZxF0JInSKukauu7vByarYeWzNnVyjN57vh+\r\nkEnjV0ehGYvwF4Umvv5oKGPnI4YuyCMKM6vSLEqocnLuI8RAKTWPB7z+8eba\r\nFdwX7HZFyaXjouzSAoEQHFUECAizDk/ayeEZuHW6EuwEc8Ap4YqjdLb7fBv0\r\n659vAyNO7mlJUAEQeSCoVleE+3LDXrLUIo0UNClFi5y/WMSOuHsOhAaJpTfB\r\np6zC09fEw76GI1N7PP3gEgNyJXG8aKdAATYXET9LQJ2w5kRqn9Pe4nt0dnpr\r\n4OaoA3QL/Fh0jbgzJwInvflz+tv7l0621U4=\r\n=H/pI\r\n-----END PGP SIGNATURE-----\r\n"},"main":"dist/main.js","engines":{"lens":"^5.0.0"},"gitHead":"1640563f64de7c00d739b1b9ced502d1cf3e6800","scripts":{"dev":"TARGET=development yarn build","fmt":"prettier --write \"{*,src/**/*}.+(js|ts*|yml|json)\"","lint":"eslint \"{*,src/**/*}.+(js|ts*)\"","test":"yarn lint && yarn fmt:check && yarn test:unit","babel":"babel src --out-dir dist_babel","build":"yarn clean && webpack","clean":"rm -rf ./dist && rm -rf ./dist_babel","start":"TARGET=development yarn build --watch","prebabel":"rm -rf ./dist_babel","fmt:check":"prettier --check \"{*,src/**/*}.+(js|ts*|yml|json)\"","test:unit":"echo 'Works for me! ¯\\_(ツ)_/¯'","prepublishOnly":"yarn test && yarn build"},"_npmUser":{"name":"stefcameron","email":"stefan@stefcameron.com"},"renderer":"dist/renderer.js","publisher":"mirantis","repository":{"url":"git+https://github.com/Mirantis/lens-extension-cc.git","type":"git"},"_npmVersion":"8.3.1","description":"Lens extension that loads Mirantis Container Cloud clusters.","directories":{},"_nodeVersion":"17.4.0","_hasShrinkwrap":false,"devDependencies":{"mobx":"^6.3.8","react":"^17.0.2","rtvjs":"^4.0.0","eslint":"^7.32.0","webpack":"^5.64.4","electron":"^14.2.4","prettier":"^2.5.0","react-dom":"^17.0.2","ts-loader":"^9.2.6","@babel/cli":"^7.16.0","node-fetch":"^2.6.6","prop-types":"^15.7.2","typescript":"^4.5.2","@babel/core":"^7.16.0","@types/node":"^16.11.10","webpack-cli":"^4.9.1","@types/react":"^17.0.37","babel-loader":"^8.2.3","query-string":"^7.0.1","@emotion/core":"^11.0.0","@emotion/react":"^11.7.0","@emotion/styled":"^11.6.0","@babel/preset-env":"^7.16.4","@babel/preset-react":"^7.16.0","@k8slens/extensions":"^5.4.0","@types/react-router":"^5.1.17","babel-plugin-lodash":"^3.3.4","eslint-plugin-react":"^7.27.1","@babel/eslint-parser":"^7.16.3","@emotion/babel-plugin":"^11.3.0","eslint-config-prettier":"^8.3.0","@typescript-eslint/parser":"^4.33.0","eslint-plugin-react-hooks":"^4.3.0","babel-plugin-module-resolver":"^4.1.0","@typescript-eslint/eslint-plugin":"^4.33.0","@babel/plugin-proposal-decorators":"^7.16.4","@babel/plugin-transform-react-jsx":"^7.16.0"},"_npmOperationalInternal":{"tmp":"tmp/lens-extension-cc_3.1.2_1646263326166_0.5132593069561595","host":"s3://npm-registry-packages"}},"4.0.0-alpha.3":{"name":"@mirantis/lens-extension-cc","version":"4.0.0-alpha.3","keywords":["lens","mirantis","cluster"],"author":{"url":"https://github.com/stefcameron","name":"Stefan Cameron"},"license":"MIT","_id":"@mirantis/lens-extension-cc@4.0.0-alpha.3","maintainers":[{"name":"stefcameron","email":"stefan@stefcameron.com"}],"homepage":"https://github.com/Mirantis/lens-extension-cc#readme","bugs":{"url":"https://github.com/Mirantis/lens-extension-cc/issues"},"dist":{"shasum":"5e0720db967a2a0b5d33d2b1cf33e0e4896fe7ce","tarball":"https://registry.npmjs.org/@mirantis/lens-extension-cc/-/lens-extension-cc-4.0.0-alpha.3.tgz","fileCount":6,"integrity":"sha512-wPnrWqImyh4ZLlMQAxuwCPP8f0ITGnWVFv7x/oGU+s47UWeINnNf1r89RIK76TLbB5RBUzY4BXEwjTA1+Zr8Vg==","signatures":[{"sig":"MEYCIQC8izid9VqU3+MtLkWhtYH0z6dNKpzmpDH8gmcnYTwWoQIhAOOxeypdvm5HOWxCYKNAIPOx/ZCIen3fYqZodGPJu6mO","keyid":"SHA256:jl3bwswu80PjjokCgh0o2w5c2U4LhQAE57gj9cz1kzA"}],"unpackedSize":5827238,"npm-signature":"-----BEGIN PGP SIGNATURE-----\r\nVersion: OpenPGP.js v4.10.10\r\nComment: https://openpgpjs.org\r\n\r\nwsFzBAEBCAAGBQJiIl1zACEJED1NWxICdlZqFiEECWMYAoorWMhJKdjhPU1b\r\nEgJ2VmrcRg/9Ht89F5Qq4zqEGo7ZvyqDQ/EMXTMskt98H4ZRauGK/fJsY6Qy\r\nrMLgt0af0tCf11s3zP2sMEE+99xa3LZlNMEVqvwrC53J129/2+Zh84NstEub\r\nj5Rhp+qAGYd2e9fmhxtzzce629NI3XkMuR8LrHfO5yyZ00kK1yImqA4LSwjM\r\nW6xBgc/1aSBFVw+j4YphjnT0/5HkP+QmaPRrJMtZN5vA+eu8aouTMRVBgpV8\r\ngFUdOVH+S1PeBaOdtDVrlY08R9Hx5cM/1Sx1DoidF0+aYsfN9+FpbQlYGrz3\r\nzBnlQ9h/Nxbq8PJqQ2m6MDJyniGqkURs2aO+Kb0ATn6LkJ73e8M1MZ6pFE+0\r\n9DVq/m5j0aLOiKFuiKyKC/2rK6umSjBzoFuTP3lMV3UtRdrzn4xSgvZbNt6p\r\njJ7mgZEh5mbDOO7ZrYZIrmLgQ4SlXLgMVppTjDUbGS8P7u0Nor3EXYj9wPts\r\nT2sWQuDu7ksy9z68RK67V4aQec8nqZtceSZdjzMiWsKaWwlAeSgp4whrfCPi\r\nOfiZOYuzm3m3z7vZjCNeznnlwPjs3Z90xaAGGPF5BS9Ku5lr8QxLCci3ub6E\r\nBkwIuWaVWdIYyceElUWNWAwyK9Xat6FL2XZWccLdfRsSvcKDxC3eXrGrhqt9\r\n7CBoyM3DWWkh5TrPkd7LzKaBby/BYGGsKzE=\r\n=l9ni\r\n-----END PGP SIGNATURE-----\r\n"},"main":"dist/main.js","readme":"# ⚠️ Version 3 Maintenance ⚠️\n\nFor v3 (the currently-published version), please see [this README](https://github.com/Mirantis/lens-extension-cc/tree/v3-maint#readme) and code on the [v3-maint](https://github.com/Mirantis/lens-extension-cc/tree/v3-maint) branch. This branch will be maintained until v4 is published.\n\n__The master branch will be used for v4 development__, which will introduce significant architectural changes that will make this extension even more useful and powerful for integrating Mirantis Container Cloud with the Lens IDE.\n\n# Mirantis Container Cloud Lens Extension\n\n![CI](https://github.com/Mirantis/lens-extension-cc/workflows/CI/badge.svg?branch=master&event=push)\n\nThis [Lens](https://k8slens.dev/) Extension adds a status bar item, and a menu item, that makes it easy to connect Lens to a Mirantis Container Cloud instance and add its clusters to Lens.\n\nℹ️ Requires Lens `>= 5.1.0`.\n\n![Extension UI](./docs/screen-shot.png)\n\n## Installing\n\nInstallation is very easy! Just make sure Lens `5.1.0` or later is running, and follow these simple steps:\n\n1. Switch to the Extensions view (`CMD+SHIFT+E` on macOS).\n2. Enter the name of this extension, `@mirantis/lens-extension-cc`, into the Install Extension box.\n3. Click on the Install button.\n\n![Extension UI](./docs/ext-install-by-name.png)\n\nYou should now be able to choose the new `File > Add Cloud Clusters` menu item, or click on the `Mirantis Container Cloud` status bar icon (far right side of the status bar at the bottom of the app), to get started.\n\n> 💬 These instructions will help you install the extension for direct use with Lens. Follow the [development](#development) instructions below if you intend to work on the extension to improve it.\n\n## Upgrading\n\nTo upgrade to a newer release, go to the Extensions view (`CMD+SHIFT+E` on macOS), [uninstall](#uninstalling) the extension, and then [re-install](#installing) it again.\n\n> 🚨 Up to, and including, __Lens 5.1.3__ (and probably some versions after that as well), __Lens must be restarted__ after upgrading the extension. This is __due to a bug in Lens__ that causes the extension's registration of [IPC event handlers](https://api-docs.k8slens.dev/v5.1.2/extensions/guides/ipc/) to be ignored, leading to an error message like \"Failed to add cluster to Lens\" after choosing a cluster and clicking on the \"Add cluster\" button. It will also manifest itself when choosing \"Add cluster to lens\" from the cluster's extended menu options in Mirantis Container Cloud v2.9 or later. [This Lens PR](https://github.com/lensapp/lens/pull/3505) tracks the fix.\n\n## Uninstalling\n\nGo to the Lens Extensions view (`CMD+SHIFT+E` on macOS) and click the Uninstall button next to this extension.\n\n## Catalog\n\nLens 5 replaced its Workspace concept with a new Catalog that allows much more flexibility.\n\nWhen adding clusters to Lens with this extension, each cluster will get the following labels:\n\n- `mcc=true`\n- `project=NAMESPACE` (set to the name of the project/namespace in Container Cloud to which the cluster belongs)\n\nThe extension also supports __removing__ and __deleting__ clusters that it added by choosing these items from the cluster's \"More\" context menu in the Catalog (as well as icons in the Catalog Drawer's toolbar):\n\n- __Remove:__ Removes the cluster from the Catalog, but leaves the kubeConfig on disk in the configured location.\n- __Delete config:__ Removes the cluster from the Catalog __and deletes__ the kubeConfig from disk.\n\nIn either case, __the cluster in Container Cloud is unaffected__. If you need to terminate the cluster, please do so in the Container Cloud web application.\n\n## SSO support\n\n📣 Mirantis Container Cloud instances that use third-party SSO authentication via __Keycloak__ are __required__ in order to use this extension.\n\n### Keycloak Configuration\n\nSince the integration leverages the `lens://` URL protocol handling feature for extensions, __Lens 4.2__ (or later) is required, and the __Keycloak Client__ of the instance must be configured as follows:\n\n-   Allow the following redirect URI: `lens://extensions/@mirantis/lens-extension-cc/oauth/code`\n\n> 💡 Be sure to make these configuration adjustments __on every Keycloak Client__ (`kaas` for the management cluster, and `k8s` for child clusters, by default) that manages clusters you will want to add. The extension does not know ahead of time whether you have given it the appropriate access, and adding clusters without this configuration will result in an error.\n\n> 💬 __Mirantis Container Cloud 2.9__ configures the above for you __automatically__ so you should not have to do this if you're using 2.9 or later.\n\n### Authentication flow\n\nWhen connecting to an instance that uses SSO, Lens will open the instance's SSO authorization page in the system's default browser.\n\nOnce authorized, Keycloak will redirect to the `lens://...` URL, triggering the browser to ask permission to open the Lens app to process the request (unless permission was granted previously with the _always allow_ check box for your SSO ID Provider, e.g. `accounts.google.com`):\n\n![Lens protocol permission - always allow](docs/lens-protocol-permission.png)\n\n> ⚠️ Even if you check the \"Always allow\" box, your browser may still continue to show a popup message waiting for you to click on an \"Open Lens.app\" button. This is a built-in security feature. Please be on the look out for this popup in your browser whenever accessing your Container Cloud instance, or adding clusters to Lens.\n\nWhether the permission was already given, or upon clicking __Open Lens.app__, Lens will receive focus again, and the extension will then read the list of namespaces and clusters and present them for selection.\n\nThe temporary browser window used for SSO authorization will likely still be open, and should now be closed manually.\n\n### Single cluster limitation\n\nDue to technical issues with generating a unique kubeConfig per cluster, when the Container Cloud instance uses SSO authorization, cluster selection is __limited to a single cluster__:\n\n![Single cluster SSO limitation](docs/sso-single-cluster-warning.png)\n\nWe hope to overcome this limitation in the future.\n\n## Supported protocol requests\n\n[Lens 4.2](https://medium.com/k8slens/lens-4-2-released-f1c3268d3f95) introduced a new __custom Lens protocol handler__. This means Lens can now respond to `lens://` URL requests made in the browser, and this extension can now support some interesting requests that enable tighter integration between Mirantis Container Cloud instances and Lens.\n\n> Note that this integration is a one-way street: Container Cloud -> Lens. It does not work the other way around. _Reverse_ integration is achieved simply by making Container Cloud API requests from Lens, which is much easier to achieve, and has been used by this extension since its inception.\n\nThe __base URL__ for requests that this extension can respond to is:\n\n```\nlens://extensions/@mirantis/lens-extension-cc\n```\n\nThe following APIs are currently supported by this extension, from the base URL above:\n\n### Protocol - Activate cluster\n\nActivates a cluster __already added__ to Lens.\n\n```\nGET /activateCluster\n  ?cloudUrl={string}\n  &namespace={string}\n  &clusterName={string}\n  &clusterId={string}\n```\n\n- `cloudUrl`: URL to the instance, e.g. `https://container-cloud.my-company.com`\n- `namespace`: ID of the Container Cloud namespace containing the cluster to activate.\n- `clusterName`: Name of the cluster to activate.\n- `clusterId`: ID of the cluster (in `namespace`) to activate.\n\n### Protocol - SSO OAuth Code\n\nAllow the extension to use the system's default browser to broker an OAuth authorization code with a Keycloak client in a Container Cloud instance. This is used both for general access (to list clusters) as well as specific cluster access to generate kubeConfig files to add to Lens.\n\n```\nGET /oauth/code\n  ?code={string}\n  [ &state={string} ]\n  [ &error={string} ]\n  [ &error_description={string} ]\n```\n\n- `code`: Temporary authorization code to exchange for API tokens.\n- `state` (Optional): Used to differentiate between requests for general access and specific access. The value is generated by the extension as part of the request and should come back as part of the response.\n- `error` (Optional): OAuth error message, if an error occurs.\n- `error_description` (Optional): OAuth error description, if an error occurs.\n\n## FAQ\n\n- Why are management clusters not selected by default?\n    - The extension purposely doesn't not add management clusters to the default/initial set of selected clusters after retrieving clusters from a Mirantis Container Cloud instance because they are typically of less interest than workload clusters.\n- I get an error, \"Invalid redirect_uri\", when I attempt to access or add my clusters.\n    - Make sure you have properly [configured](#keycloak-configuration) all your Keycloak clients for use with the extension.\n- Why can I only selected one cluster to add at a time?\n    - See [Single cluster limitation](#single-cluster-limitation) when using SSO.\n- I was able to add my cluster to Lens, but Lens fails to show it because of an authentication error.\n    - Check if the cluster is only accessible over a private network (i.e. VPN) connection, and try opening it in Lens once connected to the network. Even though you can see the cluster in Container Cloud, as well as in the extension, accessing the cluster's details may still require a VPN connection in this case.\n- Up to, and including, __Lens 5.1.3__ (and probably some versions after that as well), I get an error like, \"Failed to add cluster to Lens\" after choosing a cluster and clicking on the \"Add cluster\" button in the extension, or choosing the \"Add cluster to Lens\" cluster menu option in Mirantis Container Cloud v2.9 or later.\n    - __Lens must be restarted__ after upgrading the extension. This is __due to a bug in Lens__ that causes the extension's registration of [IPC event handlers](https://api-docs.k8slens.dev/v5.1.2/extensions/guides/ipc/) to be ignored, leading to an error message like this. [This Lens PR](https://github.com/lensapp/lens/pull/3505) tracks the fix.\n\n## Development\n\n> __Yarn 1.x is required__\n\nFirst, quit Lens if it's currently running.\n\nThen, clone the repository wherever you prefer to have your code, and then link to it:\n\n```bash\n$ git clone https://github.com/Mirantis/lens-extension-cc.git /your/src/path\n$ mkdir -p ~/.k8slens/extensions\n$ ln -s /your/src/path ~/.k8slens/extensions/lens-extension-cc\n$ cd /your/src/path\n$ yarn       # install dependencies\n$ yarn start # start dev build in watch mode\n```\n\nThis will put the development build into watch mode.\n\nRestart Lens and go to the Extensions View (`CMD+SHIFT+E` on macOS) to enable it, which will cause it to load for the first time.\n\nNow, as you make source changes, the build will run, and __usually__ all you need to do is __reload the Lens window__ (`CMD+R` on macOS) to see your changes. If you make changes under `/src/main` (or any shared code that's used by that code), however, you will need to __restart Lens__ because code on the main thread does not get reloaded with `CMD+R`.\n\nYou can also run a one-off development build with `yarn dev`.\n\n> Note these steps will get much easier once [this Lens issue](https://github.com/lensapp/lens/issues/1741) is fixed.\n\n### Dev - Uninstalling\n\nGo to the Lens Extensions View (`CMD+SHIFT+E` on macOS) and use the UI to uninstall it.\n\nThis will simply remove the symlink [you created](#development) in `~/.k8slens/extensions` and leave your linked directory intact.\n\n### Dev - Publishing\n\nFirst, __update the CHANGELOG__:\n\n- Make sure everything in __UNRELEASED__ is accurate\n- Change `UNRELEASED -> vX.Y.Z` (version that will be published)\n\nThen __use NPM__:\n\n```bash\n$ npm version <patch|minor|major>\n$ npm publish --access public        # <- NOTE the '--access public' part!\n$ git push && git push --tags\n```\n\n> By default, packages published to an NPM scope/org are __private__. Use the `--access public` option to publish it as a public package instead. You can also [configure NPM](https://docs.npmjs.com/configuring-your-npm-client-with-your-organization-settings#setting-package-visibility-to-public-for-a-single-package) to always publish that single package publicly by running `npm config set access public` within the repository root directory (i.e. package root).\n\nThe `prepublishOnly` script will automatically produce a production build in the `./dist` directory, which will be published.\n","engines":{"lens":"^5.0.0"},"gitHead":"797cab5cd421239fb6b534e04cf826d2586b25eb","scripts":{"dev":"TARGET=development yarn build","fmt":"prettier --write \"{*,src/**/*}.+(js|ts*|yml|json)\"","lint":"eslint \"{*,src/**/*}.+(js|ts*)\"","test":"yarn lint && yarn fmt:check && yarn test:unit","babel":"babel src --out-dir dist_babel","build":"yarn clean && webpack","clean":"rm -rf ./dist && rm -rf ./dist_babel","start":"TARGET=development yarn build --watch","prebabel":"rm -rf ./dist_babel","fmt:check":"prettier --check \"{*,src/**/*}.+(js|ts*|yml|json)\"","test:unit":"echo 'Works for me! ¯\\_(ツ)_/¯'","prepublishOnly":"yarn test && yarn build"},"_npmUser":{"name":"stefcameron","email":"stefan@stefcameron.com"},"renderer":"dist/renderer.js","publisher":"mirantis","repository":{"url":"git+https://github.com/Mirantis/lens-extension-cc.git","type":"git"},"_npmVersion":"8.3.1","description":"Lens extension that loads Mirantis Container Cloud clusters.","directories":{},"_nodeVersion":"17.4.0","_hasShrinkwrap":false,"readmeFilename":"README.md","devDependencies":{"mobx":"^6.4.2","dayjs":"^1.10.8","react":"^17.0.2","rtvjs":"^4.0.0","eslint":"^7.32.0","webpack":"^5.70.0","electron":"^14.2.4","prettier":"^2.5.1","react-dom":"^17.0.2","ts-loader":"^9.2.7","@babel/cli":"^7.17.6","node-fetch":"^2.6.7","prop-types":"^15.8.1","typescript":"^4.6.2","@babel/core":"^7.17.5","@types/node":"^17.0.21","webpack-cli":"^4.9.2","@types/react":"^17.0.39","babel-loader":"^8.2.3","query-string":"^7.1.1","@emotion/core":"^11.0.0","@emotion/react":"^11.8.1","@emotion/styled":"^11.8.1","@babel/preset-env":"^7.16.11","@babel/preset-react":"^7.16.7","@k8slens/extensions":"^5.4.0","@types/react-router":"^5.1.18","babel-plugin-lodash":"^3.3.4","eslint-plugin-react":"^7.29.3","@babel/eslint-parser":"^7.17.0","@emotion/babel-plugin":"^11.7.2","eslint-config-prettier":"^8.5.0","@typescript-eslint/parser":"^4.33.0","eslint-plugin-react-hooks":"^4.3.0","babel-plugin-module-resolver":"^4.1.0","@typescript-eslint/eslint-plugin":"^4.33.0","@babel/plugin-proposal-decorators":"^7.17.2","@babel/plugin-transform-react-jsx":"^7.17.3","@babel/plugin-proposal-class-properties":"^7.16.7"},"_npmOperationalInternal":{"tmp":"tmp/lens-extension-cc_4.0.0-alpha.3_1646419315365_0.6784688709469842","host":"s3://npm-registry-packages"}},"4.0.0-alpha.4":{"name":"@mirantis/lens-extension-cc","version":"4.0.0-alpha.4","keywords":["lens","mirantis","cluster"],"author":{"url":"https://github.com/stefcameron","name":"Stefan Cameron"},"license":"MIT","_id":"@mirantis/lens-extension-cc@4.0.0-alpha.4","maintainers":[{"name":"stefcameron","email":"stefan@stefcameron.com"}],"homepage":"https://github.com/Mirantis/lens-extension-cc#readme","bugs":{"url":"https://github.com/Mirantis/lens-extension-cc/issues"},"dist":{"shasum":"28362ea83c92e1224e0bbcd8a46928de70ad9e08","tarball":"https://registry.npmjs.org/@mirantis/lens-extension-cc/-/lens-extension-cc-4.0.0-alpha.4.tgz","fileCount":6,"integrity":"sha512-9EmZP5oinbesqQmCISLf8HmeSc5t7bl/ivQBWxINHeYkSkqyUt4bC8YIMB5m6e5wvJVJpaDtYL/ZkP2uCTfCmQ==","signatures":[{"sig":"MEQCIAfz/ftmqx2Lf6R4P8ev98NGpNhBd4hdMwcf965AZLy1AiAnKzbn9sYcDx1tewaPf/XOnB6kBeHaRExPPLy2okPERw==","keyid":"SHA256:jl3bwswu80PjjokCgh0o2w5c2U4LhQAE57gj9cz1kzA"}],"unpackedSize":6907616,"npm-signature":"-----BEGIN PGP SIGNATURE-----\r\nVersion: OpenPGP.js v4.10.10\r\nComment: https://openpgpjs.org\r\n\r\nwsFzBAEBCAAGBQJiTa+TACEJED1NWxICdlZqFiEECWMYAoorWMhJKdjhPU1b\r\nEgJ2Vmo2ow/+O5YMdgwSKEM5zK5S+WOhc+wz2o+BVRCjzMcl5w/DltpGxP5R\r\nw+lfuE1tFcO6znd0rOjniCS34nhAj05balvueoLANp1V6F7p6u8ayr6Fpdv4\r\nO/hd+WEYfwkkN7d0hkyPcQOP3FpwnDEpmZFkI2+3Ce0ll6Vna8lY+hKVNr5Q\r\nWl0r3+Jp8XvxJcT2YiTF8MCCfN2A0olxeOrtiyzjLwtzvklsNZD8o8kWHUZI\r\nteiReLxwrsf3gbOh6eaDZET1aIb5iacK8u4j2UrieovQH/jc/nWvurzsfJ9R\r\nNv9l9NtPg9Rk89Xl5/+2pro7fYGcyzCFEopfsdMvHUnqNgPqXaVHn2msgYFg\r\nZeMQUYaLGOCBCNtRR9HRApIsu1WqrCrtq9PALsdlWk3fKxntIuEqBGGwvqev\r\nZukGUHahkTu4xEGsc1Zq5fv0Vgvvhm1GI5IQVlTrf930tN5JozogsmBG6MIc\r\nuzCZJt86kqEuL+TI/FGbhBTDPXVVih8yk+mTtOkGVHRY+n35a45Z8YeBQbIw\r\nWOvqYnJwSezTlv8ZxIKwCjm3vddqW8TId2oRGAXICkusjsv+zFww3Mgkq1cv\r\nKsRXUiXrDE+gY1wd0RpI0XXArqpISqU9CFhZMJRts+S9dxfTqtzRU7LeQaJQ\r\nJVwwtQKPaTC2crjU6wdnpg7oKyPucLVP0vs=\r\n=5vL8\r\n-----END PGP SIGNATURE-----\r\n"},"main":"dist/main.js","readme":"# ⚠️ Version 3 Maintenance ⚠️\n\nFor v3 (the currently-published version), please see [this README](https://github.com/Mirantis/lens-extension-cc/tree/v3-maint#readme) and code on the [v3-maint](https://github.com/Mirantis/lens-extension-cc/tree/v3-maint) branch. This branch will be maintained until v4 is published.\n\n__The master branch will be used for v4 development__, which will introduce significant architectural changes that will make this extension even more useful and powerful for integrating Mirantis Container Cloud with the Lens IDE.\n\n# Mirantis Container Cloud Lens Extension\n\n![CI](https://github.com/Mirantis/lens-extension-cc/workflows/CI/badge.svg?branch=master&event=push)\n\nThis [Lens](https://k8slens.dev/) Extension adds a status bar item, and a menu item, that makes it easy to connect Lens to a Mirantis Container Cloud instance and add its clusters to Lens.\n\nℹ️ Requires Lens `>= 5.1.0`.\n\n![Extension UI](./docs/screen-shot.png)\n\n## Installing\n\nInstallation is very easy! Just make sure Lens `5.1.0` or later is running, and follow these simple steps:\n\n1. Switch to the Extensions view (`CMD+SHIFT+E` on macOS).\n2. Enter the name of this extension, `@mirantis/lens-extension-cc`, into the Install Extension box.\n3. Click on the Install button.\n\n![Extension UI](./docs/ext-install-by-name.png)\n\nYou should now be able to choose the new `File > Add Cloud Clusters` menu item, or click on the `Mirantis Container Cloud` status bar icon (far right side of the status bar at the bottom of the app), to get started.\n\n> 💬 These instructions will help you install the extension for direct use with Lens. Follow the [development](#development) instructions below if you intend to work on the extension to improve it.\n\n## Upgrading\n\nTo upgrade to a newer release, go to the Extensions view (`CMD+SHIFT+E` on macOS), [uninstall](#uninstalling) the extension, and then [re-install](#installing) it again.\n\n> 🚨 Up to, and including, __Lens 5.1.3__ (and probably some versions after that as well), __Lens must be restarted__ after upgrading the extension. This is __due to a bug in Lens__ that causes the extension's registration of [IPC event handlers](https://api-docs.k8slens.dev/v5.1.2/extensions/guides/ipc/) to be ignored, leading to an error message like \"Failed to add cluster to Lens\" after choosing a cluster and clicking on the \"Add cluster\" button. It will also manifest itself when choosing \"Add cluster to lens\" from the cluster's extended menu options in Mirantis Container Cloud v2.9 or later. [This Lens PR](https://github.com/lensapp/lens/pull/3505) tracks the fix.\n\n## Uninstalling\n\nGo to the Lens Extensions view (`CMD+SHIFT+E` on macOS) and click the Uninstall button next to this extension.\n\n## Catalog\n\nLens 5 replaced its Workspace concept with a new Catalog that allows much more flexibility.\n\nWhen adding clusters to Lens with this extension, each cluster will get the following labels:\n\n- `mcc=true`\n- `project=NAMESPACE` (set to the name of the project/namespace in Container Cloud to which the cluster belongs)\n\nThe extension also supports __removing__ and __deleting__ clusters that it added by choosing these items from the cluster's \"More\" context menu in the Catalog (as well as icons in the Catalog Drawer's toolbar):\n\n- __Remove:__ Removes the cluster from the Catalog, but leaves the kubeConfig on disk in the configured location.\n- __Delete config:__ Removes the cluster from the Catalog __and deletes__ the kubeConfig from disk.\n\nIn either case, __the cluster in Container Cloud is unaffected__. If you need to terminate the cluster, please do so in the Container Cloud web application.\n\n## SSO support\n\n📣 Mirantis Container Cloud instances that use third-party SSO authentication via __Keycloak__ are __required__ in order to use this extension.\n\n### Keycloak Configuration\n\nSince the integration leverages the `lens://` URL protocol handling feature for extensions, __Lens 4.2__ (or later) is required, and the __Keycloak Client__ of the instance must be configured as follows:\n\n-   Allow the following redirect URI: `lens://extensions/@mirantis/lens-extension-cc/oauth/code`\n\n> 💡 Be sure to make these configuration adjustments __on every Keycloak Client__ (`kaas` for the management cluster, and `k8s` for child clusters, by default) that manages clusters you will want to add. The extension does not know ahead of time whether you have given it the appropriate access, and adding clusters without this configuration will result in an error.\n\n> 💬 __Mirantis Container Cloud 2.9__ configures the above for you __automatically__ so you should not have to do this if you're using 2.9 or later.\n\n### Authentication flow\n\nWhen connecting to an instance that uses SSO, Lens will open the instance's SSO authorization page in the system's default browser.\n\nOnce authorized, Keycloak will redirect to the `lens://...` URL, triggering the browser to ask permission to open the Lens app to process the request (unless permission was granted previously with the _always allow_ check box for your SSO ID Provider, e.g. `accounts.google.com`):\n\n![Lens protocol permission - always allow](docs/lens-protocol-permission.png)\n\n> ⚠️ Even if you check the \"Always allow\" box, your browser may still continue to show a popup message waiting for you to click on an \"Open Lens.app\" button. This is a built-in security feature. Please be on the look out for this popup in your browser whenever accessing your Container Cloud instance, or adding clusters to Lens.\n\nWhether the permission was already given, or upon clicking __Open Lens.app__, Lens will receive focus again, and the extension will then read the list of namespaces and clusters and present them for selection.\n\nThe temporary browser window used for SSO authorization will likely still be open, and should now be closed manually.\n\n### Single cluster limitation\n\nDue to technical issues with generating a unique kubeConfig per cluster, when the Container Cloud instance uses SSO authorization, cluster selection is __limited to a single cluster__:\n\n![Single cluster SSO limitation](docs/sso-single-cluster-warning.png)\n\nWe hope to overcome this limitation in the future.\n\n## Supported protocol requests\n\n[Lens 4.2](https://medium.com/k8slens/lens-4-2-released-f1c3268d3f95) introduced a new __custom Lens protocol handler__. This means Lens can now respond to `lens://` URL requests made in the browser, and this extension can now support some interesting requests that enable tighter integration between Mirantis Container Cloud instances and Lens.\n\n> Note that this integration is a one-way street: Container Cloud -> Lens. It does not work the other way around. _Reverse_ integration is achieved simply by making Container Cloud API requests from Lens, which is much easier to achieve, and has been used by this extension since its inception.\n\nThe __base URL__ for requests that this extension can respond to is:\n\n```\nlens://extensions/@mirantis/lens-extension-cc\n```\n\nThe following APIs are currently supported by this extension, from the base URL above:\n\n### Protocol - Activate cluster\n\nActivates a cluster __already added__ to Lens.\n\n```\nGET /activateCluster\n  ?cloudUrl={string}\n  &namespace={string}\n  &clusterName={string}\n  &clusterId={string}\n```\n\n- `cloudUrl`: URL to the instance, e.g. `https://container-cloud.my-company.com`\n- `namespace`: ID of the Container Cloud namespace containing the cluster to activate.\n- `clusterName`: Name of the cluster to activate.\n- `clusterId`: ID of the cluster (in `namespace`) to activate.\n\n### Protocol - SSO OAuth Code\n\nAllow the extension to use the system's default browser to broker an OAuth authorization code with a Keycloak client in a Container Cloud instance. This is used both for general access (to list clusters) as well as specific cluster access to generate kubeConfig files to add to Lens.\n\n```\nGET /oauth/code\n  ?code={string}\n  [ &state={string} ]\n  [ &error={string} ]\n  [ &error_description={string} ]\n```\n\n- `code`: Temporary authorization code to exchange for API tokens.\n- `state` (Optional): Used to differentiate between requests for general access and specific access. The value is generated by the extension as part of the request and should come back as part of the response.\n- `error` (Optional): OAuth error message, if an error occurs.\n- `error_description` (Optional): OAuth error description, if an error occurs.\n\n## FAQ\n\n- Why are management clusters not selected by default?\n    - The extension purposely doesn't not add management clusters to the default/initial set of selected clusters after retrieving clusters from a Mirantis Container Cloud instance because they are typically of less interest than workload clusters.\n- I get an error, \"Invalid redirect_uri\", when I attempt to access or add my clusters.\n    - Make sure you have properly [configured](#keycloak-configuration) all your Keycloak clients for use with the extension.\n- Why can I only selected one cluster to add at a time?\n    - See [Single cluster limitation](#single-cluster-limitation) when using SSO.\n- I was able to add my cluster to Lens, but Lens fails to show it because of an authentication error.\n    - Check if the cluster is only accessible over a private network (i.e. VPN) connection, and try opening it in Lens once connected to the network. Even though you can see the cluster in Container Cloud, as well as in the extension, accessing the cluster's details may still require a VPN connection in this case.\n- Up to, and including, __Lens 5.1.3__ (and probably some versions after that as well), I get an error like, \"Failed to add cluster to Lens\" after choosing a cluster and clicking on the \"Add cluster\" button in the extension, or choosing the \"Add cluster to Lens\" cluster menu option in Mirantis Container Cloud v2.9 or later.\n    - __Lens must be restarted__ after upgrading the extension. This is __due to a bug in Lens__ that causes the extension's registration of [IPC event handlers](https://api-docs.k8slens.dev/v5.1.2/extensions/guides/ipc/) to be ignored, leading to an error message like this. [This Lens PR](https://github.com/lensapp/lens/pull/3505) tracks the fix.\n\n## Security\n\n### Self-signed certificates\n\nBy default, the extension does not support management clusters that use self-signed certificates. They are treated as untrusted hosts for security reasons (because their identity cannot be verified).\n\nThere are some legitimate reasons to use self-signed certificates, however, and it is possible to enable the extension to skip certificate verification by starting Lens from the command line with a special `LEX_CC_UNSAFE_ALLOW_SELFSIGNED_CERTS` flag:\n\n```bash\n$ LEX_CC_UNSAFE_ALLOW_SELFSIGNED_CERTS=1 /Applications/Lens.app/Contents/MacOS/Lens\n```\n\n- Values of `1`, `true`, or `yes` will enable self-signed certificate support.\n\n> The above example is for macOS. It will be similar on Windows and Linux, but with different syntax for setting the environment variable, and a different installation path for Lens.\n\n## Development\n\n> __Yarn 1.x is required__\n\nFirst, quit Lens if it's currently running.\n\nThen, clone the repository wherever you prefer to have your code, and then link to it:\n\n```bash\n$ git clone https://github.com/Mirantis/lens-extension-cc.git /your/src/path\n$ mkdir -p ~/.k8slens/extensions\n$ ln -s /your/src/path ~/.k8slens/extensions/lens-extension-cc\n$ cd /your/src/path\n$ yarn       # install dependencies\n$ yarn start # start dev build in watch mode\n```\n\nThis will put the development build into watch mode.\n\nRestart Lens and go to the Extensions View (`CMD+SHIFT+E` on macOS) to enable it, which will cause it to load for the first time.\n\nNow, as you make source changes, the build will run, and __usually__ all you need to do is __reload the Lens window__ (`CMD+R` on macOS) to see your changes. If you make changes under `/src/main` (or any shared code that's used by that code), however, you will need to __restart Lens__ because code on the main thread does not get reloaded with `CMD+R`.\n\nYou can also run a one-off development build with `yarn dev`.\n\n> Note these steps will get much easier once [this Lens issue](https://github.com/lensapp/lens/issues/1741) is fixed.\n\n### Dev - Env vars\n\nThe following environment variables are supported when starting Lens from the command line (typically to debug the `main` process):\n\n- `LEX_CC_MAIN_CAPTURE`: Use this to opt-out of broadcasting some log messages from `main` to `renderer` to reduce noise in the `renderer` process' DevTools Console.\n    - No value, or one of \"true\", \"yes\", or \"1\" will enable it.\n    - Set it to any other non-empty value to disable it.\n\nStart Lens from the command line, with `main` process debugging enabled, like this (and here, we're disabling the flag, as an example of using it):\n\n```bash\n$ DEBUG=true LEX_CC_MAIN_CAPTURE=0 /Applications/Lens.app/Contents/MacOS/Lens --inspect=5858\n```\n\n### Dev - Uninstalling\n\nGo to the Lens Extensions View (`CMD+SHIFT+E` on macOS) and use the UI to uninstall it.\n\nThis will simply remove the symlink [you created](#development) in `~/.k8slens/extensions` and leave your linked directory intact.\n\n### Dev - Publishing\n\nFirst, __update the CHANGELOG__:\n\n- Make sure everything in __UNRELEASED__ is accurate\n- Change `UNRELEASED -> vX.Y.Z` (version that will be published)\n\nThen __use NPM__:\n\n```bash\n$ npm version <patch|minor|major>\n$ npm publish --access public        # <- NOTE the '--access public' part!\n$ git push && git push --tags\n```\n\n> By default, packages published to an NPM scope/org are __private__. Use the `--access public` option to publish it as a public package instead. You can also [configure NPM](https://docs.npmjs.com/configuring-your-npm-client-with-your-organization-settings#setting-package-visibility-to-public-for-a-single-package) to always publish that single package publicly by running `npm config set access public` within the repository root directory (i.e. package root).\n\nThe `prepublishOnly` script will automatically produce a production build in the `./dist` directory, which will be published.\n","engines":{"lens":"^5.0.0"},"gitHead":"6d8a09f854cb90a771a499b273ed86c06f5f9df6","scripts":{"dev":"TARGET=development yarn build","fmt":"prettier --write \"{*,src/**/*}.+(js|ts*|yml|json)\"","lint":"eslint \"{*,src/**/*}.+(js|ts*)\"","test":"yarn lint && yarn fmt:check && yarn test:unit","babel":"babel src --out-dir dist_babel","build":"yarn clean && webpack","clean":"rm -rf ./dist && rm -rf ./dist_babel","start":"TARGET=development yarn build --watch","prebabel":"rm -rf ./dist_babel","fmt:check":"prettier --check \"{*,src/**/*}.+(js|ts*|yml|json)\"","test:unit":"echo 'Works for me! ¯\\_(ツ)_/¯'","prepublishOnly":"yarn test && yarn build"},"_npmUser":{"name":"stefcameron","email":"stefan@stefcameron.com"},"renderer":"dist/renderer.js","publisher":"mirantis","repository":{"url":"git+https://github.com/Mirantis/lens-extension-cc.git","type":"git"},"_npmVersion":"8.5.3","description":"Lens extension that loads Mirantis Container Cloud clusters.","directories":{},"_nodeVersion":"17.6.0","_hasShrinkwrap":false,"readmeFilename":"README.md","devDependencies":{"mobx":"^6.5.0","yaml":"^1.10.2","dayjs":"^1.11.0","react":"^17.0.2","rtvjs":"^4.0.0","eslint":"^7.32.0","webpack":"^5.71.0","electron":"^14.2.4","prettier":"^2.6.2","react-dom":"^17.0.2","ts-loader":"^9.2.8","@babel/cli":"^7.17.6","node-fetch":"^2.6.7","prop-types":"^15.8.1","typescript":"^4.6.3","@babel/core":"^7.17.8","@types/node":"^17.0.23","webpack-cli":"^4.9.2","@types/react":"^17.0.43","babel-loader":"^8.2.4","query-string":"^7.1.1","@emotion/core":"^11.0.0","@emotion/react":"^11.8.2","@emotion/styled":"^11.8.1","@babel/preset-env":"^7.16.11","@babel/preset-react":"^7.16.7","@k8slens/extensions":"^5.4.5","@types/react-router":"^5.1.18","babel-plugin-lodash":"^3.3.4","eslint-plugin-react":"^7.29.4","@babel/eslint-parser":"^7.17.0","@emotion/babel-plugin":"^11.7.2","eslint-config-prettier":"^8.5.0","@typescript-eslint/parser":"^4.33.0","eslint-plugin-react-hooks":"^4.4.0","babel-plugin-module-resolver":"^4.1.0","@typescript-eslint/eslint-plugin":"^4.33.0","@babel/plugin-proposal-decorators":"^7.17.8","@babel/plugin-transform-react-jsx":"^7.17.3","@babel/plugin-proposal-class-properties":"^7.16.7"},"_npmOperationalInternal":{"tmp":"tmp/lens-extension-cc_4.0.0-alpha.4_1649258387727_0.2691071513240131","host":"s3://npm-registry-packages"}},"4.0.0-beta.0":{"name":"@mirantis/lens-extension-cc","version":"4.0.0-beta.0","keywords":["lens","mirantis","cluster"],"author":{"url":"https://github.com/stefcameron","name":"Stefan Cameron"},"license":"MIT","_id":"@mirantis/lens-extension-cc@4.0.0-beta.0","maintainers":[{"name":"stefcameron","email":"stefan@stefcameron.com"}],"homepage":"https://github.com/Mirantis/lens-extension-cc#readme","bugs":{"url":"https://github.com/Mirantis/lens-extension-cc/issues"},"dist":{"shasum":"916fa2876858902d5ef2addcaaf9461578b159d0","tarball":"https://registry.npmjs.org/@mirantis/lens-extension-cc/-/lens-extension-cc-4.0.0-beta.0.tgz","fileCount":10,"integrity":"sha512-v8HswZ+X6U9MgtZpexKR3sYWH5bsFulXbQIkWfTvVKzUX2kzlQst8xZFEebfmQ2YVa5atPuK5/LR9Bn7VLWPCw==","signatures":[{"sig":"MEQCIGkT05/fbhZRVlL4TyDSbdZ8dpEESYRm2nLRBnzUrURIAiAtl9LucytgqWGqhU0G9SnBdel6t82ar4vW3zr/27bGfA==","keyid":"SHA256:jl3bwswu80PjjokCgh0o2w5c2U4LhQAE57gj9cz1kzA"}],"unpackedSize":77766750,"npm-signature":"-----BEGIN PGP SIGNATURE-----\r\nVersion: OpenPGP.js v4.10.10\r\nComment: https://openpgpjs.org\r\n\r\nwsFzBAEBCAAGBQJib/mpACEJED1NWxICdlZqFiEECWMYAoorWMhJKdjhPU1b\r\nEgJ2VmqWUg//SEWSxHejODeRR7plKSGD07tDHEhe6rVLibOLMohMYdZSgG79\r\nPbvvtk2RUNMA15bGz1v3F9F81xL05wPxX+l5bknvsKl5SW8BfPPZH7BIQSEQ\r\nedM0ynR1xhcL/hRYi/sMaVX/ARvzXNlHO3hHuKTCae6IOXdMrzNSFfBtJiw4\r\nOZFWd9XRDJP98TyV/wKncRWyszsQQYixwXyHmuCqlOAJTchu7dmAqiK30YPS\r\njFa6VERohqj/Y6AT8nmIEnvfS/AqcEpZXhWDXCgURrcmBRYhN1zWDUfhzGJo\r\nhAhOe9wsx0acSglGcozA53zMSlW76HYGmQJUBvO3hUK+FzzuRa95frzF1vuc\r\nktyFhpkmUtzOsq2iZ4QALXfykt+R3sOsuxrk5CYXt8OO/YONmRg0NB0NT3TX\r\nt2cgW6a/0jV4ePZBBfxUOO9Rn0oTbFEkNkr8qypDkLOnc2giMmi6hI3jtuz5\r\n9Mv9HXUYD+lM2b//i2xRHVmmx5+iYOoEs99P7c9lDKbCW/Z+lLkniAISAFBh\r\n4v7TIysprkgxPeJpAcIu5h3NgLhJ+xyLoe3i3x5/d75vK52OQb24ETxoYih4\r\n/TpF0zFmiLFi4lfwYQkhICUlUTpkda8HQHV77fUc6xS8QUVImvo4+dUmXtZ5\r\nMVwl1L+iODaewXyf7jUMc8Xi9/kOTLC2sl8=\r\n=snyl\r\n-----END PGP SIGNATURE-----\r\n"},"main":"dist/main.js","readme":"# ⚠️ Version 3 Maintenance ⚠️\n\nFor v3 (the currently-published version), please see [this README](https://github.com/Mirantis/lens-extension-cc/tree/v3-maint#readme) and code on the [v3-maint](https://github.com/Mirantis/lens-extension-cc/tree/v3-maint) branch. This branch will be maintained until v4 is published.\n\n__The master branch will be used for v4 development__, which will introduce significant architectural changes that will make this extension even more useful and powerful for integrating Mirantis Container Cloud with the Lens IDE.\n\n# Mirantis Container Cloud Lens Extension\n\n![CI](https://github.com/Mirantis/lens-extension-cc/workflows/CI/badge.svg?branch=master&event=push)\n\nThis [Lens](https://k8slens.dev/) Extension adds a status bar item, and a menu item, that makes it easy to connect Lens to a Mirantis Container Cloud instance and add its clusters to Lens.\n\nℹ️ Requires Lens `>= 5.1.0`.\n\n![Extension UI](./docs/screen-shot.png)\n\n## Installing\n\nInstallation is very easy! Just make sure Lens `5.1.0` or later is running, and follow these simple steps:\n\n1. Switch to the Extensions view (`CMD+SHIFT+E` on macOS).\n2. Enter the name of this extension, `@mirantis/lens-extension-cc`, into the Install Extension box.\n3. Click on the Install button.\n\n![Extension UI](./docs/ext-install-by-name.png)\n\nYou should now be able to choose the new `File > Add Cloud Clusters` menu item, or click on the `Mirantis Container Cloud` status bar icon (far right side of the status bar at the bottom of the app), to get started.\n\n> 💬 These instructions will help you install the extension for direct use with Lens. Follow the [development](#development) instructions below if you intend to work on the extension to improve it.\n\n## Upgrading\n\nTo upgrade to a newer release, go to the Extensions view (`CMD+SHIFT+E` on macOS), [uninstall](#uninstalling) the extension, and then [re-install](#installing) it again.\n\n> 🚨 Up to, and including, __Lens 5.1.3__ (and probably some versions after that as well), __Lens must be restarted__ after upgrading the extension. This is __due to a bug in Lens__ that causes the extension's registration of [IPC event handlers](https://api-docs.k8slens.dev/v5.1.2/extensions/guides/ipc/) to be ignored, leading to an error message like \"Failed to add cluster to Lens\" after choosing a cluster and clicking on the \"Add cluster\" button. It will also manifest itself when choosing \"Add cluster to lens\" from the cluster's extended menu options in Mirantis Container Cloud v2.9 or later. [This Lens PR](https://github.com/lensapp/lens/pull/3505) tracks the fix.\n\n## Uninstalling\n\nGo to the Lens Extensions view (`CMD+SHIFT+E` on macOS) and click the Uninstall button next to this extension.\n\n## Catalog\n\nLens 5 replaced its Workspace concept with a new Catalog that allows much more flexibility.\n\nWhen adding clusters to Lens with this extension, each cluster will get the following labels:\n\n- `mcc=true`\n- `project=NAMESPACE` (set to the name of the project/namespace in Container Cloud to which the cluster belongs)\n\nThe extension also supports __removing__ and __deleting__ clusters that it added by choosing these items from the cluster's \"More\" context menu in the Catalog (as well as icons in the Catalog Drawer's toolbar):\n\n- __Remove:__ Removes the cluster from the Catalog, but leaves the kubeConfig on disk in the configured location.\n- __Delete config:__ Removes the cluster from the Catalog __and deletes__ the kubeConfig from disk.\n\nIn either case, __the cluster in Container Cloud is unaffected__. If you need to terminate the cluster, please do so in the Container Cloud web application.\n\n## SSO support\n\n📣 Mirantis Container Cloud instances that use third-party SSO authentication via __Keycloak__ are __required__ in order to use this extension.\n\n### Keycloak Configuration\n\nSince the integration leverages the `lens://` URL protocol handling feature for extensions, __Lens 4.2__ (or later) is required, and the __Keycloak Client__ of the instance must be configured as follows:\n\n-   Allow the following redirect URI: `lens://extensions/@mirantis/lens-extension-cc/oauth/code`\n\n> 💡 Be sure to make these configuration adjustments __on every Keycloak Client__ (`kaas` for the management cluster, and `k8s` for child clusters, by default) that manages clusters you will want to add. The extension does not know ahead of time whether you have given it the appropriate access, and adding clusters without this configuration will result in an error.\n\n> 💬 __Mirantis Container Cloud 2.9__ configures the above for you __automatically__ so you should not have to do this if you're using 2.9 or later.\n\n### Authentication flow\n\nWhen connecting to an instance that uses SSO, Lens will open the instance's SSO authorization page in the system's default browser.\n\nOnce authorized, Keycloak will redirect to the `lens://...` URL, triggering the browser to ask permission to open the Lens app to process the request (unless permission was granted previously with the _always allow_ check box for your SSO ID Provider, e.g. `accounts.google.com`):\n\n![Lens protocol permission - always allow](docs/lens-protocol-permission.png)\n\n> ⚠️ Even if you check the \"Always allow\" box, your browser may still continue to show a popup message waiting for you to click on an \"Open Lens.app\" button. This is a built-in security feature. Please be on the look out for this popup in your browser whenever accessing your Container Cloud instance, or adding clusters to Lens.\n\nWhether the permission was already given, or upon clicking __Open Lens.app__, Lens will receive focus again, and the extension will then read the list of namespaces and clusters and present them for selection.\n\nThe temporary browser window used for SSO authorization will likely still be open, and should now be closed manually.\n\n### Single cluster limitation\n\nDue to technical issues with generating a unique kubeConfig per cluster, when the Container Cloud instance uses SSO authorization, cluster selection is __limited to a single cluster__:\n\n![Single cluster SSO limitation](docs/sso-single-cluster-warning.png)\n\nWe hope to overcome this limitation in the future.\n\n## Supported protocol requests\n\n[Lens 4.2](https://medium.com/k8slens/lens-4-2-released-f1c3268d3f95) introduced a new __custom Lens protocol handler__. This means Lens can now respond to `lens://` URL requests made in the browser, and this extension can now support some interesting requests that enable tighter integration between Mirantis Container Cloud instances and Lens.\n\n> Note that this integration is a one-way street: Container Cloud -> Lens. It does not work the other way around. _Reverse_ integration is achieved simply by making Container Cloud API requests from Lens, which is much easier to achieve, and has been used by this extension since its inception.\n\nThe __base URL__ for requests that this extension can respond to is:\n\n```\nlens://extensions/@mirantis/lens-extension-cc\n```\n\nThe following APIs are currently supported by this extension, from the base URL above:\n\n### Protocol - Activate cluster\n\nActivates a cluster __already added__ to Lens.\n\n```\nGET /activateCluster\n  ?cloudUrl={string}\n  &namespace={string}\n  &clusterName={string}\n  &clusterId={string}\n```\n\n- `cloudUrl`: URL to the instance, e.g. `https://container-cloud.my-company.com`\n- `namespace`: ID of the Container Cloud namespace containing the cluster to activate.\n- `clusterName`: Name of the cluster to activate.\n- `clusterId`: ID of the cluster (in `namespace`) to activate.\n\n### Protocol - SSO OAuth Code\n\nAllow the extension to use the system's default browser to broker an OAuth authorization code with a Keycloak client in a Container Cloud instance. This is used both for general access (to list clusters) as well as specific cluster access to generate kubeConfig files to add to Lens.\n\n```\nGET /oauth/code\n  ?code={string}\n  [ &state={string} ]\n  [ &error={string} ]\n  [ &error_description={string} ]\n```\n\n- `code`: Temporary authorization code to exchange for API tokens.\n- `state` (Optional): Used to differentiate between requests for general access and specific access. The value is generated by the extension as part of the request and should come back as part of the response.\n- `error` (Optional): OAuth error message, if an error occurs.\n- `error_description` (Optional): OAuth error description, if an error occurs.\n\n## FAQ\n\n- Why are management clusters not selected by default?\n    - The extension purposely doesn't not add management clusters to the default/initial set of selected clusters after retrieving clusters from a Mirantis Container Cloud instance because they are typically of less interest than workload clusters.\n- I get an error, \"Invalid redirect_uri\", when I attempt to access or add my clusters.\n    - Make sure you have properly [configured](#keycloak-configuration) all your Keycloak clients for use with the extension.\n- Why can I only selected one cluster to add at a time?\n    - See [Single cluster limitation](#single-cluster-limitation) when using SSO.\n- I was able to add my cluster to Lens, but Lens fails to show it because of an authentication error.\n    - Check if the cluster is only accessible over a private network (i.e. VPN) connection, and try opening it in Lens once connected to the network. Even though you can see the cluster in Container Cloud, as well as in the extension, accessing the cluster's details may still require a VPN connection in this case.\n- Up to, and including, __Lens 5.1.3__ (and probably some versions after that as well), I get an error like, \"Failed to add cluster to Lens\" after choosing a cluster and clicking on the \"Add cluster\" button in the extension, or choosing the \"Add cluster to Lens\" cluster menu option in Mirantis Container Cloud v2.9 or later.\n    - __Lens must be restarted__ after upgrading the extension. This is __due to a bug in Lens__ that causes the extension's registration of [IPC event handlers](https://api-docs.k8slens.dev/v5.1.2/extensions/guides/ipc/) to be ignored, leading to an error message like this. [This Lens PR](https://github.com/lensapp/lens/pull/3505) tracks the fix.\n\n## Security\n\n### Self-signed certificates\n\nBy default, the extension does not support management clusters that use self-signed certificates. They are treated as untrusted hosts for security reasons (because their identity cannot be verified).\n\nThere are some legitimate reasons to use self-signed certificates, however, and it is possible to enable the extension to skip certificate verification by starting Lens from the command line with a special `LEX_CC_UNSAFE_ALLOW_SELFSIGNED_CERTS` flag, where values of `1`, `true`, or `yes` will enable self-signed certificate support.\n\n#### macOS\n\n```bash\n$ LEX_CC_UNSAFE_ALLOW_SELFSIGNED_CERTS=1 /Applications/Lens.app/Contents/MacOS/Lens\n```\n\n#### Linux\n\n```bash\nLEX_CC_UNSAFE_ALLOW_SELFSIGNED_CERTS=1 snap run lens\n```\n\n> This presumes a Snap-based installation. How to run Lens will differ if you used an alternate installation method.\n\n#### Windows\n\nTBD. If someone would like to share the syntax on Windows, we will add it here.\n\n## Development\n\n> __Yarn 1.x is required__\n\nFirst, quit Lens if it's currently running.\n\nThen, clone the repository wherever you prefer to have your code, and then link to it:\n\n```bash\n$ git clone https://github.com/Mirantis/lens-extension-cc.git /your/src/path\n$ mkdir -p ~/.k8slens/extensions\n$ ln -s /your/src/path ~/.k8slens/extensions/lens-extension-cc\n$ cd /your/src/path\n$ yarn       # install dependencies\n$ yarn start # start dev build in watch mode\n```\n\nThis will put the development build into watch mode.\n\nRestart Lens and go to the Extensions View (`CMD+SHIFT+E` on macOS) to enable it, which will cause it to load for the first time.\n\nNow, as you make source changes, the build will run, and __usually__ all you need to do is __reload the Lens window__ (`CMD+R` on macOS) to see your changes. If you make changes under `/src/main` (or any shared code that's used by that code), however, you will need to __restart Lens__ because code on the main thread does not get reloaded with `CMD+R`.\n\nYou can also run a one-off development build with `yarn dev`.\n\n> Note these steps will get much easier once [this Lens issue](https://github.com/lensapp/lens/issues/1741) is fixed.\n\n### Dev - Env vars\n\nThe following environment variables are supported when starting Lens from the command line (typically to debug the `main` process):\n\n- `LEX_CC_MAIN_CAPTURE`: Use this to opt-out of broadcasting some log messages from `main` to `renderer` to reduce noise in the `renderer` process' DevTools Console.\n    - No value, or one of \"true\", \"yes\", or \"1\" will enable it.\n    - Set it to any other non-empty value to disable it.\n\nStart Lens from the command line, with `main` process debugging enabled, like this (and here, we're disabling the flag, as an example of using it):\n\n```bash\n$ DEBUG=true LEX_CC_MAIN_CAPTURE=0 /Applications/Lens.app/Contents/MacOS/Lens --inspect=5858\n```\n\n### Dev - Uninstalling\n\nGo to the Lens Extensions View (`CMD+SHIFT+E` on macOS) and use the UI to uninstall it.\n\nThis will simply remove the symlink [you created](#development) in `~/.k8slens/extensions` and leave your linked directory intact.\n\n### Dev - Publishing\n\nFirst, __update the CHANGELOG__:\n\n- Make sure everything in __UNRELEASED__ is accurate\n- Change `UNRELEASED -> vX.Y.Z` (version that will be published)\n\nThen __use NPM__:\n\n```bash\n$ npm version <patch|minor|major>\n$ npm publish --access public        # <- NOTE the '--access public' part!\n$ git push && git push --tags\n```\n\n> By default, packages published to an NPM scope/org are __private__. Use the `--access public` option to publish it as a public package instead. You can also [configure NPM](https://docs.npmjs.com/configuring-your-npm-client-with-your-organization-settings#setting-package-visibility-to-public-for-a-single-package) to always publish that single package publicly by running `npm config set access public` within the repository root directory (i.e. package root).\n\nThe `prepublishOnly` script will automatically produce a production build in the `./dist` directory, which will be published.\n","engines":{"lens":"^5.0.0"},"gitHead":"52e069e702ac3cc7fe2ea827cb7ff64a917c037b","scripts":{"dev":"TARGET=development yarn build","fmt":"prettier --write \"{*,src/**/*}.+(js|ts*|yml|json)\"","lint":"eslint \"{*,src/**/*}.+(js|ts*)\"","test":"yarn lint && yarn fmt:check && yarn test:unit","babel":"babel src --out-dir dist_babel","build":"yarn clean && webpack","clean":"rm -rf ./dist && rm -rf ./dist_babel","start":"TARGET=development yarn build --watch","prepack":"yarn build && yarn download:kubelogin:all","prebabel":"rm -rf ./dist_babel","prestart":"yarn download:kubelogin","fmt:check":"prettier --check \"{*,src/**/*}.+(js|ts*|yml|json)\"","test:unit":"echo 'Works for me! ¯\\_(ツ)_/¯'","prepublishOnly":"yarn test","download:kubelogin":"run-script-os","download:kubelogin:all":"yarn download:kubelogin:macos && yarn download:kubelogin:linux && yarn download:kubelogin:windows","download:kubelogin:linux":"[[ -f ./bin/kubelogin-linux-amd64 ]] || (mkdir -p ./tmp && cd ./tmp && curl -slL https://github.com/int128/kubelogin/releases/download/v1.25.1/kubelogin_linux_amd64.zip | tar -xz && mv kubelogin ../bin/kubelogin-linux-amd64 && chmod +x ../bin/kubelogin-linux-amd64 && cd .. && rm -rf ./tmp)","download:kubelogin:macos":"yarn download:kubelogin:macos-amd64 && yarn download:kubelogin:macos-arm64","download:kubelogin:windows":"sh -c \"[[ -f ./bin/kubelogin-win-amd64.exe ]] || (mkdir -p ./tmp && cd ./tmp && curl -slL https://github.com/int128/kubelogin/releases/download/v1.25.1/kubelogin_windows_amd64.zip | tar -xz && mv kubelogin.exe ../bin/kubelogin-win-amd64.exe && chmod +x ../bin/kubelogin-win-amd64.exe && cd .. && rm -rf ./tmp)\"","predownload:kubelogin:linux":"mkdir -p ./bin","predownload:kubelogin:macos":"mkdir -p ./bin","predownload:kubelogin:windows":"sh -c \"mkdir -p ./bin\"","download:kubelogin:macos-amd64":"[[ -f ./bin/kubelogin-macos-amd64 ]] || (mkdir -p ./tmp && cd ./tmp && curl -slL https://github.com/int128/kubelogin/releases/download/v1.25.1/kubelogin_darwin_amd64.zip | tar -xz && mv kubelogin ../bin/kubelogin-macos-amd64 && chmod +x ../bin/kubelogin-macos-amd64 && cd .. && rm -rf ./tmp)","download:kubelogin:macos-arm64":"[[ -f ./bin/kubelogin-macos-arm64 ]] || (mkdir -p ./tmp && cd ./tmp && curl -slL https://github.com/int128/kubelogin/releases/download/v1.25.1/kubelogin_darwin_arm64.zip | tar -xz && mv kubelogin ../bin/kubelogin-macos-arm64 && chmod +x ../bin/kubelogin-macos-arm64 && cd .. && rm -rf ./tmp)"},"_npmUser":{"name":"stefcameron","email":"stefan@stefcameron.com"},"renderer":"dist/renderer.js","publisher":"mirantis","repository":{"url":"git+https://github.com/Mirantis/lens-extension-cc.git","type":"git"},"_npmVersion":"8.6.0","description":"Lens extension that loads Mirantis Container Cloud clusters.","directories":{},"_nodeVersion":"17.9.0","_hasShrinkwrap":false,"readmeFilename":"README.md","devDependencies":{"mobx":"^6.5.0","yaml":"^2.0.1","dayjs":"^1.11.1","react":"^17.0.2","rtvjs":"^4.0.0","eslint":"^7.32.0","webpack":"^5.72.0","electron":"^14.2.9","prettier":"^2.6.2","react-dom":"^17.0.2","ts-loader":"^9.3.0","@babel/cli":"^7.17.10","node-fetch":"^2.6.7","prop-types":"^15.8.1","typescript":"^4.6.4","@babel/core":"^7.17.10","@types/node":"^17.0.31","webpack-cli":"^4.9.2","@types/react":"^18.0.8","babel-loader":"^8.2.5","query-string":"^7.1.1","@emotion/core":"^11.0.0","run-script-os":"^1.1.6","@emotion/react":"^11.9.0","@emotion/styled":"^11.8.1","abort-controller":"^3.0.0","@babel/preset-env":"^7.17.10","@babel/preset-react":"^7.16.7","@k8slens/extensions":"^5.4.6","@types/react-router":"^5.1.18","babel-plugin-lodash":"^3.3.4","eslint-plugin-react":"^7.29.4","@babel/eslint-parser":"^7.17.0","@emotion/babel-plugin":"^11.9.2","eslint-config-prettier":"^8.5.0","@typescript-eslint/parser":"^4.33.0","eslint-plugin-react-hooks":"^4.5.0","babel-plugin-module-resolver":"^4.1.0","@typescript-eslint/eslint-plugin":"^4.33.0","@babel/plugin-proposal-decorators":"^7.17.9","@babel/plugin-transform-react-jsx":"^7.17.3","@babel/plugin-proposal-class-properties":"^7.16.7"},"_npmOperationalInternal":{"tmp":"tmp/lens-extension-cc_4.0.0-beta.0_1651505576465_0.7146446235122939","host":"s3://npm-registry-packages"}},"4.0.0-beta.1":{"name":"@mirantis/lens-extension-cc","version":"4.0.0-beta.1","keywords":["lens","mirantis","cluster"],"author":{"url":"https://github.com/stefcameron","name":"Stefan Cameron"},"license":"MIT","_id":"@mirantis/lens-extension-cc@4.0.0-beta.1","maintainers":[{"name":"stefcameron","email":"stefan@stefcameron.com"}],"homepage":"https://github.com/Mirantis/lens-extension-cc#readme","bugs":{"url":"https://github.com/Mirantis/lens-extension-cc/issues"},"dist":{"shasum":"68394dc26c34a2ef4f4a4d347175419029802cfc","tarball":"https://registry.npmjs.org/@mirantis/lens-extension-cc/-/lens-extension-cc-4.0.0-beta.1.tgz","fileCount":11,"integrity":"sha512-ae2h58ii1g7Zbt/hPDooPhWfSPLobsg/n4ACj6+NjSYJb8PKjUlYxvvVrClrzdCXU9sm8fPBQSPQwZ0LIuZw4g==","signatures":[{"sig":"MEUCIQCJAbOH9mBUaJvrecHsAiTvel5xxit9PMr+BJdgg/QUfQIgJmBt5lyIz5a0/cvV7UJc2AK8WuCHyJq76QkUECBSb5U=","keyid":"SHA256:jl3bwswu80PjjokCgh0o2w5c2U4LhQAE57gj9cz1kzA"}],"unpackedSize":77878870,"npm-signature":"-----BEGIN PGP SIGNATURE-----\r\nVersion: OpenPGP.js v4.10.10\r\nComment: https://openpgpjs.org\r\n\r\nwsFzBAEBCAAGBQJihRsOACEJED1NWxICdlZqFiEECWMYAoorWMhJKdjhPU1b\r\nEgJ2VmpbtxAAjPlISiTCfC0tUWT8xIV1te5uMOLspok5lt5pXFV8HRJ87bd8\r\niwa+S68jGQQMk2R8I+B4O+2PupR6MV4tfQzi7bmysU1EnbaPKAmB7KtNWFH5\r\nbjNx+jXq8i1pLaCSOY/33+u8Tai++jYSPk44anfCvAsrWS9pJlXyaoeU7KMi\r\np0K+3EIe8N5KdLO4sne0v3KmmkhsqpmFapniiZbg6dhNT/NvZpfLG8HnLbXI\r\nWafqj7wNkN72yEW/odNexVdXbHL4+6JF9kJC/M9a8dXPSajx67OFJB83YKvF\r\nJHjImfd5m6TUtg/Vnc+JJb4jLygDTfOJtVfd01vVkE7p9zoh/SeouB7Wlm13\r\nJjK93g9uX4z2XFVX4HJMULmQ1rjyvO8sDyr6zutCcfC3wAFFxgvSuTA8h7Fs\r\nwHAKIVW7+yd3UliJJ4+kv2GZbKgi7AQMtmmGPsYam+Nm3bDDE42ezVAOow0T\r\nbyK/1Dc4qJ7+f8K4oZnbs90qoq12twIrQ4Z1WdAr2HBB2neQrn/kfTEcBvH2\r\npbsX1QO9bfLq0RbzO50695U9gkL/L9biiZYHfdDOUDtuOMJtklvypKbuppCi\r\nc/t+WJSJmeV0hOh6fKVDySWNkKsVa58IvcBpcjyfbAgzfIhIxKAVXx2ogFPn\r\nRE0x82dfLln26dzcAL/BL5s9s8jbUkGqe2E=\r\n=IzAm\r\n-----END PGP SIGNATURE-----\r\n"},"main":"dist/main.js","readme":"# ⚠️ Version 3 Maintenance ⚠️\n\nFor v3 (the currently-published version), please see [this README](https://github.com/Mirantis/lens-extension-cc/tree/v3-maint#readme) and code on the [v3-maint](https://github.com/Mirantis/lens-extension-cc/tree/v3-maint) branch. This branch will be maintained until v4 is published.\n\n__The master branch will be used for v4 development__, which will introduce significant architectural changes that will make this extension even more useful and powerful for integrating Mirantis Container Cloud with the Lens IDE.\n\n# Mirantis Container Cloud Lens Extension\n\n![CI](https://github.com/Mirantis/lens-extension-cc/workflows/CI/badge.svg?branch=master&event=push)\n\nThis [Lens](https://k8slens.dev/) Extension adds a status bar item, and a menu item, that makes it easy to connect Lens to a Mirantis Container Cloud instance and add its clusters to Lens.\n\nℹ️ Requires Lens `>= 5.1.0`.\n\n![Extension UI](./docs/screen-shot.png)\n\n## Installing\n\nInstallation is very easy! Just make sure Lens `5.1.0` or later is running, and follow these simple steps:\n\n1. Switch to the Extensions view (`CMD+SHIFT+E` on macOS).\n2. Enter the name of this extension, `@mirantis/lens-extension-cc`, into the Install Extension box.\n3. Click on the Install button.\n\n![Extension UI](./docs/ext-install-by-name.png)\n\nYou should now be able to choose the new `File > Add Cloud Clusters` menu item, or click on the `Mirantis Container Cloud` status bar icon (far right side of the status bar at the bottom of the app), to get started.\n\n> 💬 These instructions will help you install the extension for direct use with Lens. Follow the [development](#development) instructions below if you intend to work on the extension to improve it.\n\n## Upgrading\n\nTo upgrade to a newer release, go to the Extensions view (`CMD+SHIFT+E` on macOS), [uninstall](#uninstalling) the extension, and then [re-install](#installing) it again.\n\n> 🚨 Up to, and including, __Lens 5.1.3__ (and probably some versions after that as well), __Lens must be restarted__ after upgrading the extension. This is __due to a bug in Lens__ that causes the extension's registration of [IPC event handlers](https://api-docs.k8slens.dev/v5.1.2/extensions/guides/ipc/) to be ignored, leading to an error message like \"Failed to add cluster to Lens\" after choosing a cluster and clicking on the \"Add cluster\" button. It will also manifest itself when choosing \"Add cluster to lens\" from the cluster's extended menu options in Mirantis Container Cloud v2.9 or later. [This Lens PR](https://github.com/lensapp/lens/pull/3505) tracks the fix.\n\n## Uninstalling\n\nGo to the Lens Extensions view (`CMD+SHIFT+E` on macOS) and click the Uninstall button next to this extension.\n\n## Catalog\n\nLens 5 replaced its Workspace concept with a new Catalog that allows much more flexibility.\n\nWhen adding clusters to Lens with this extension, each cluster will get the following labels:\n\n- `mcc=true`\n- `project=NAMESPACE` (set to the name of the project/namespace in Container Cloud to which the cluster belongs)\n\nThe extension also supports __removing__ and __deleting__ clusters that it added by choosing these items from the cluster's \"More\" context menu in the Catalog (as well as icons in the Catalog Drawer's toolbar):\n\n- __Remove:__ Removes the cluster from the Catalog, but leaves the kubeConfig on disk in the configured location.\n- __Delete config:__ Removes the cluster from the Catalog __and deletes__ the kubeConfig from disk.\n\nIn either case, __the cluster in Container Cloud is unaffected__. If you need to terminate the cluster, please do so in the Container Cloud web application.\n\n## SSO support\n\n📣 Mirantis Container Cloud instances that use third-party SSO authentication via __Keycloak__ are __required__ in order to use this extension.\n\n### Keycloak Configuration\n\nSince the integration leverages the `lens://` URL protocol handling feature for extensions, __Lens 4.2__ (or later) is required, and the __Keycloak Client__ of the instance must be configured as follows:\n\n-   Allow the following redirect URI: `lens://extensions/@mirantis/lens-extension-cc/oauth/code`\n\n> 💡 Be sure to make these configuration adjustments __on every Keycloak Client__ (`kaas` for the management cluster, and `k8s` for child clusters, by default) that manages clusters you will want to add. The extension does not know ahead of time whether you have given it the appropriate access, and adding clusters without this configuration will result in an error.\n\n> 💬 __Mirantis Container Cloud 2.9__ configures the above for you __automatically__ so you should not have to do this if you're using 2.9 or later.\n\n### Authentication flow\n\nWhen connecting to an instance that uses SSO, Lens will open the instance's SSO authorization page in the system's default browser.\n\nOnce authorized, Keycloak will redirect to the `lens://...` URL, triggering the browser to ask permission to open the Lens app to process the request (unless permission was granted previously with the _always allow_ check box for your SSO ID Provider, e.g. `accounts.google.com`):\n\n![Lens protocol permission - always allow](docs/lens-protocol-permission.png)\n\n> ⚠️ Even if you check the \"Always allow\" box, your browser may still continue to show a popup message waiting for you to click on an \"Open Lens.app\" button. This is a built-in security feature. Please be on the look out for this popup in your browser whenever accessing your Container Cloud instance, or adding clusters to Lens.\n\nWhether the permission was already given, or upon clicking __Open Lens.app__, Lens will receive focus again, and the extension will then read the list of namespaces and clusters and present them for selection.\n\nThe temporary browser window used for SSO authorization will likely still be open, and should now be closed manually.\n\n### Single cluster limitation\n\nDue to technical issues with generating a unique kubeConfig per cluster, when the Container Cloud instance uses SSO authorization, cluster selection is __limited to a single cluster__:\n\n![Single cluster SSO limitation](docs/sso-single-cluster-warning.png)\n\nWe hope to overcome this limitation in the future.\n\n## Supported protocol requests\n\n[Lens 4.2](https://medium.com/k8slens/lens-4-2-released-f1c3268d3f95) introduced a new __custom Lens protocol handler__. This means Lens can now respond to `lens://` URL requests made in the browser, and this extension can now support some interesting requests that enable tighter integration between Mirantis Container Cloud instances and Lens.\n\n> Note that this integration is a one-way street: Container Cloud -> Lens. It does not work the other way around. _Reverse_ integration is achieved simply by making Container Cloud API requests from Lens, which is much easier to achieve, and has been used by this extension since its inception.\n\nThe __base URL__ for requests that this extension can respond to is:\n\n```\nlens://extensions/@mirantis/lens-extension-cc\n```\n\nThe following APIs are currently supported by this extension, from the base URL above:\n\n### Protocol - Activate cluster\n\nActivates a cluster __already added__ to Lens.\n\n```\nGET /activateCluster\n  ?cloudUrl={string}\n  &namespace={string}\n  &clusterName={string}\n  &clusterId={string}\n```\n\n- `cloudUrl`: URL to the instance, e.g. `https://container-cloud.my-company.com`\n- `namespace`: ID of the Container Cloud namespace containing the cluster to activate.\n- `clusterName`: Name of the cluster to activate.\n- `clusterId`: ID of the cluster (in `namespace`) to activate.\n\n### Protocol - SSO OAuth Code\n\nAllow the extension to use the system's default browser to broker an OAuth authorization code with a Keycloak client in a Container Cloud instance. This is used both for general access (to list clusters) as well as specific cluster access to generate kubeConfig files to add to Lens.\n\n```\nGET /oauth/code\n  ?code={string}\n  [ &state={string} ]\n  [ &error={string} ]\n  [ &error_description={string} ]\n```\n\n- `code`: Temporary authorization code to exchange for API tokens.\n- `state` (Optional): Used to differentiate between requests for general access and specific access. The value is generated by the extension as part of the request and should come back as part of the response.\n- `error` (Optional): OAuth error message, if an error occurs.\n- `error_description` (Optional): OAuth error description, if an error occurs.\n\n## FAQ\n\n- Why are management clusters not selected by default?\n    - The extension purposely doesn't not add management clusters to the default/initial set of selected clusters after retrieving clusters from a Mirantis Container Cloud instance because they are typically of less interest than workload clusters.\n- I get an error, \"Invalid redirect_uri\", when I attempt to access or add my clusters.\n    - Make sure you have properly [configured](#keycloak-configuration) all your Keycloak clients for use with the extension.\n- Why can I only selected one cluster to add at a time?\n    - See [Single cluster limitation](#single-cluster-limitation) when using SSO.\n- I was able to add my cluster to Lens, but Lens fails to show it because of an authentication error.\n    - Check if the cluster is only accessible over a private network (i.e. VPN) connection, and try opening it in Lens once connected to the network. Even though you can see the cluster in Container Cloud, as well as in the extension, accessing the cluster's details may still require a VPN connection in this case.\n- Up to, and including, __Lens 5.1.3__ (and probably some versions after that as well), I get an error like, \"Failed to add cluster to Lens\" after choosing a cluster and clicking on the \"Add cluster\" button in the extension, or choosing the \"Add cluster to Lens\" cluster menu option in Mirantis Container Cloud v2.9 or later.\n    - __Lens must be restarted__ after upgrading the extension. This is __due to a bug in Lens__ that causes the extension's registration of [IPC event handlers](https://api-docs.k8slens.dev/v5.1.2/extensions/guides/ipc/) to be ignored, leading to an error message like this. [This Lens PR](https://github.com/lensapp/lens/pull/3505) tracks the fix.\n\n## Security\n\n### Self-signed certificates\n\nBy default, the extension does not support management clusters that use self-signed certificates. They are treated as untrusted hosts for security reasons (because their identity cannot be verified).\n\nThere are some legitimate reasons to use self-signed certificates, however, and it is possible to enable the extension to skip certificate verification by starting Lens from the command line with a special `LEX_CC_UNSAFE_ALLOW_SELFSIGNED_CERTS` flag, where values of `1`, `true`, or `yes` will enable self-signed certificate support.\n\n#### macOS\n\n```bash\n$ LEX_CC_UNSAFE_ALLOW_SELFSIGNED_CERTS=1 /Applications/Lens.app/Contents/MacOS/Lens\n```\n\n#### Linux\n\n```bash\nLEX_CC_UNSAFE_ALLOW_SELFSIGNED_CERTS=1 snap run lens\n```\n\n> This presumes a Snap-based installation. How to run Lens will differ if you used an alternate installation method.\n\n#### Windows\n\nTBD. If someone would like to share the syntax on Windows, we will add it here.\n\n## Development\n\n> __Yarn 1.x is required__\n\nFirst, quit Lens if it's currently running.\n\nThen, clone the repository wherever you prefer to have your code, and then link to it:\n\n```bash\n$ git clone https://github.com/Mirantis/lens-extension-cc.git /your/src/path\n$ mkdir -p ~/.k8slens/extensions\n$ ln -s /your/src/path ~/.k8slens/extensions/lens-extension-cc\n$ cd /your/src/path\n$ yarn       # install dependencies\n$ yarn start # start dev build in watch mode\n```\n\nThis will put the development build into watch mode.\n\nRestart Lens and go to the Extensions View (`CMD+SHIFT+E` on macOS) to enable it, which will cause it to load for the first time.\n\nNow, as you make source changes, the build will run, and __usually__ all you need to do is __reload the Lens window__ (`CMD+R` on macOS) to see your changes. If you make changes under `/src/main` (or any shared code that's used by that code), however, you will need to __restart Lens__ because code on the main thread does not get reloaded with `CMD+R`.\n\nYou can also run a one-off development build with `yarn dev`.\n\n> Note these steps will get much easier once [this Lens issue](https://github.com/lensapp/lens/issues/1741) is fixed.\n\n### Dev - Env vars\n\nThe following environment variables are supported when starting Lens from the command line (typically to debug the `main` process):\n\n- `LEX_CC_MAIN_CAPTURE`: Use this to opt-out of broadcasting some log messages from `main` to `renderer` to reduce noise in the `renderer` process' DevTools Console.\n    - No value, or one of \"true\", \"yes\", or \"1\" will enable it.\n    - Set it to any other non-empty value to disable it.\n\nStart Lens from the command line, with `main` process debugging enabled, like this (and here, we're disabling the flag, as an example of using it):\n\n```bash\n$ DEBUG=true LEX_CC_MAIN_CAPTURE=0 /Applications/Lens.app/Contents/MacOS/Lens --inspect=5858\n```\n\n### Dev - Uninstalling\n\nGo to the Lens Extensions View (`CMD+SHIFT+E` on macOS) and use the UI to uninstall it.\n\nThis will simply remove the symlink [you created](#development) in `~/.k8slens/extensions` and leave your linked directory intact.\n\n### Dev - Publishing\n\nFirst, __update the CHANGELOG__:\n\n- Make sure everything in __UNRELEASED__ is accurate\n- Change `UNRELEASED -> vX.Y.Z` (version that will be published)\n\nThen __use NPM__:\n\n```bash\n$ npm version <patch|minor|major>\n$ npm publish --access public        # <- NOTE the '--access public' part!\n$ git push && git push --tags\n```\n\n> By default, packages published to an NPM scope/org are __private__. Use the `--access public` option to publish it as a public package instead. You can also [configure NPM](https://docs.npmjs.com/configuring-your-npm-client-with-your-organization-settings#setting-package-visibility-to-public-for-a-single-package) to always publish that single package publicly by running `npm config set access public` within the repository root directory (i.e. package root).\n\nThe `prepublishOnly` script will automatically produce a production build in the `./dist` directory, which will be published.\n","engines":{"lens":"^5.0.0"},"gitHead":"fc766b5937fd8eb4fa9066b50520fe314f73695f","scripts":{"dev":"TARGET=development yarn build","fmt":"prettier --write \"{*,src/**/*}.+(js|ts*|yml|json)\"","lint":"eslint \"{*,src/**/*}.+(js|ts*)\"","test":"yarn lint && yarn fmt:check && yarn test:unit","babel":"babel src --out-dir dist_babel","build":"yarn clean && webpack","clean":"rm -rf ./dist && rm -rf ./dist_babel","start":"TARGET=development yarn build --watch","prepack":"yarn build && yarn download:kubelogin:all && yarn download:kubelogin:license","prebabel":"rm -rf ./dist_babel","prestart":"yarn download:kubelogin","fmt:check":"prettier --check \"{*,src/**/*}.+(js|ts*|yml|json)\"","test:unit":"echo 'Works for me! ¯\\_(ツ)_/¯'","create:bin:nix":"mkdir -p ./bin","prepublishOnly":"yarn test","create:bin:windows":"sh -c \"mkdir -p ./bin\"","download:kubelogin":"run-script-os","download:kubelogin:all":"yarn download:kubelogin:macos && yarn download:kubelogin:linux && yarn download:kubelogin:windows","download:kubelogin:linux":"yarn create:bin:nix && ([[ -f ./bin/kubelogin-linux-amd64 ]] || (mkdir -p ./tmp && cd ./tmp && curl -slL https://github.com/int128/kubelogin/releases/download/v1.25.1/kubelogin_linux_amd64.zip | tar -xz && mv kubelogin ../bin/kubelogin-linux-amd64 && chmod +x ../bin/kubelogin-linux-amd64 && cd .. && rm -rf ./tmp))","download:kubelogin:macos":"yarn create:bin:nix && yarn download:kubelogin:macos-amd64 && yarn download:kubelogin:macos-arm64","download:kubelogin:license":"run-script-os","download:kubelogin:windows":"yarn create:bin:windows && sh -c \"[[ -f ./bin/kubelogin-win-amd64.exe ]] || (mkdir -p ./tmp && cd ./tmp && curl -slL https://github.com/int128/kubelogin/releases/download/v1.25.1/kubelogin_windows_amd64.zip | tar -xz && mv kubelogin.exe ../bin/kubelogin-win-amd64.exe && chmod +x ../bin/kubelogin-win-amd64.exe && cd .. && rm -rf ./tmp)\"","download:kubelogin:license:nix":"yarn create:bin:nix && ([[ -f ./bin/kubelogin-license.txt ]] || curl -slL https://raw.githubusercontent.com/int128/kubelogin/v1.25.1/LICENSE > ./bin/kubelogin-license.txt)","download:kubelogin:macos-amd64":"[[ -f ./bin/kubelogin-macos-amd64 ]] || (mkdir -p ./tmp && cd ./tmp && curl -slL https://github.com/int128/kubelogin/releases/download/v1.25.1/kubelogin_darwin_amd64.zip | tar -xz && mv kubelogin ../bin/kubelogin-macos-amd64 && chmod +x ../bin/kubelogin-macos-amd64 && cd .. && rm -rf ./tmp)","download:kubelogin:macos-arm64":"[[ -f ./bin/kubelogin-macos-arm64 ]] || (mkdir -p ./tmp && cd ./tmp && curl -slL https://github.com/int128/kubelogin/releases/download/v1.25.1/kubelogin_darwin_arm64.zip | tar -xz && mv kubelogin ../bin/kubelogin-macos-arm64 && chmod +x ../bin/kubelogin-macos-arm64 && cd .. && rm -rf ./tmp)","download:kubelogin:license:windows":"yarn create:bin:windows && sh -c \"[[ -f ./bin/kubelogin-license.txt ]] || curl -slL https://raw.githubusercontent.com/int128/kubelogin/v1.25.1/LICENSE > ./bin/kubelogin-license.txt\""},"_npmUser":{"name":"stefcameron","email":"stefan@stefcameron.com"},"renderer":"dist/renderer.js","publisher":"mirantis","repository":{"url":"git+https://github.com/Mirantis/lens-extension-cc.git","type":"git"},"_npmVersion":"8.6.0","description":"Lens extension that loads Mirantis Container Cloud clusters.","directories":{},"_nodeVersion":"17.9.0","_hasShrinkwrap":false,"readmeFilename":"README.md","devDependencies":{"mobx":"^6.5.0","yaml":"^2.1.0","dayjs":"^1.11.2","react":"^17.0.2","rtvjs":"^4.1.0","eslint":"^7.32.0","webpack":"^5.72.1","electron":"^14.2.9","prettier":"^2.6.2","react-dom":"^17.0.2","ts-loader":"^9.3.0","@babel/cli":"^7.17.10","node-fetch":"^2.6.7","prop-types":"^15.8.1","typescript":"^4.6.4","@babel/core":"^7.17.12","@types/node":"^17.0.34","webpack-cli":"^4.9.2","@types/react":"^18.0.9","babel-loader":"^8.2.5","query-string":"^7.1.1","@emotion/core":"^11.0.0","run-script-os":"^1.1.6","@emotion/react":"^11.9.0","@emotion/styled":"^11.8.1","abort-controller":"^3.0.0","@babel/preset-env":"^7.17.12","@babel/preset-react":"^7.17.12","@k8slens/extensions":"^5.4.6","@types/react-router":"^5.1.18","babel-plugin-lodash":"^3.3.4","eslint-plugin-react":"^7.29.4","@babel/eslint-parser":"^7.17.0","@emotion/babel-plugin":"^11.9.2","eslint-config-prettier":"^8.5.0","@typescript-eslint/parser":"^4.33.0","eslint-plugin-react-hooks":"^4.5.0","babel-plugin-module-resolver":"^4.1.0","@typescript-eslint/eslint-plugin":"^4.33.0","@babel/plugin-proposal-decorators":"^7.17.12","@babel/plugin-transform-react-jsx":"^7.17.12","@babel/plugin-proposal-class-properties":"^7.17.12"},"_npmOperationalInternal":{"tmp":"tmp/lens-extension-cc_4.0.0-beta.1_1652890381314_0.3852439304891966","host":"s3://npm-registry-packages"}},"4.0.0":{"name":"@mirantis/lens-extension-cc","version":"4.0.0","keywords":["lens","mirantis","cluster"],"author":{"url":"https://github.com/stefcameron","name":"Stefan Cameron"},"license":"MIT","_id":"@mirantis/lens-extension-cc@4.0.0","maintainers":[{"name":"stefcameron","email":"stefan@stefcameron.com"}],"homepage":"https://github.com/Mirantis/lens-extension-cc#readme","bugs":{"url":"https://github.com/Mirantis/lens-extension-cc/issues"},"dist":{"shasum":"daf0b11230e6c64e8c1d83a78bb052950b1279f4","tarball":"https://registry.npmjs.org/@mirantis/lens-extension-cc/-/lens-extension-cc-4.0.0.tgz","fileCount":11,"integrity":"sha512-5iwvHPFCffxUUlQALfK80DC5JSCqhrImZDZt2ZsdWzZ7EIETJfjoBPJJ8QD/QaItHnOL908VuZ24zVeEf/vawg==","signatures":[{"sig":"MEUCIQC1leCY/8+sCB6TOUkzhoDRy+tKn0Fg9t4G/QzSTGmTogIgIXtFS7MpFka7980iI5Q3Lfkofwb775uCQKt43c9F8jI=","keyid":"SHA256:jl3bwswu80PjjokCgh0o2w5c2U4LhQAE57gj9cz1kzA"}],"unpackedSize":77904735,"npm-signature":"-----BEGIN PGP SIGNATURE-----\r\nVersion: OpenPGP.js v4.10.10\r\nComment: https://openpgpjs.org\r\n\r\nwsFzBAEBCAAGBQJi4ZSKACEJED1NWxICdlZqFiEECWMYAoorWMhJKdjhPU1b\r\nEgJ2VmrV3w//UbfJfV+g6MxJz8c1OBTEw5DrI/pMp48RRntWsNuB2FP1Ntnq\r\ndPmJ2zU+WrS4CKiU+cwAIF7sSJvnKaBpWspO61jaxkzdMBlOv17z4N6m2KED\r\nKM2+7hygw4qtLdJZSQF1dpJN/bRYwyXnkriuBDdVhxQtqyMgHsQ+RcoT61w2\r\nkiF7NzuP8CuU/wQOMAMHh0i5eVvicC7R98CicurKg/DgAfAMYKSKIjKdP+f9\r\nNUgHkpEX+nuAEJeZLtjmyieScyVtJtZ9JMJT+Qe1fTioXQM2jJM46Ox1GJ7v\r\n+iJ3tDGIJ/D8/QMTU+mZ5zfl7zKQC8nnfneCnBD1i9BUDz2D6+DQLVZiX7L4\r\nGBl6EJROwvZrQ+0x92NT1JZZiTXbALvPAqkOXQW3qJg/q4mtoiD0729Ye4qq\r\nDj7KBC6ib3fnhF6MDF+WhvgRSIY42lBnovyrMlq0U1ZtgZjEDMjFLH8aNbpn\r\njoo0w1Dxbg7Dp4E4cBAF1PxlKRdQSnSDduidajcazInaZYZ/gMr+gcFOnl9u\r\n+i+5ykzgPznU1cVFUt/GQ6Wzk/QbCTI4oUVgANoQ/98oG3z+o3sD0sJ6BKh6\r\n7e7cBK8s/T+GMcOrh57B9qBYiNKzOu4Vt2PWudqjx1agk1l1I5GrktVRLACp\r\nvY8KVk5p/qVb7M9SyKZLrFadJj9NEQvLxYU=\r\n=Pjod\r\n-----END PGP SIGNATURE-----\r\n"},"main":"dist/main.js","engines":{"lens":"^5.0.0"},"gitHead":"f2027bf3062c9c5f96947c6cc93a21511a2a2a9e","scripts":{"dev":"TARGET=development yarn build","fmt":"prettier --write \"{*,src/**/*,tools/**/*,test/**/*,__mocks__/**/*}.+(js|mjs|ts*|yml|json)\"","lint":"eslint \"{*,src/**/*,tools/**/*,test/**/*,__mocks__/**/*}.+(js|mjs|ts*)\"","test":"yarn lint && yarn fmt:check && yarn test:unit","babel":"babel src --out-dir dist_babel","build":"yarn clean && BABEL_ENV=build webpack","clean":"rm -rf ./dist && rm -rf ./dist_babel","start":"TARGET=development yarn build --watch","prepack":"yarn build && yarn download:kubelogin:all && yarn download:kubelogin:license","prebabel":"rm -rf ./dist_babel","prestart":"yarn download:kubelogin","fmt:check":"prettier --check \"{*,src/**/*,tools/**/*,test/**/*,__mocks__/**/*}.+(js|mjs|ts*|yml|json)\"","test:unit":"jest --colors --config jest.config.mjs","test:coverage":"yarn test:unit --coverage","create:bin:nix":"mkdir -p ./bin","prepublishOnly":"yarn test","create:bin:windows":"sh -c \"mkdir -p ./bin\"","download:kubelogin":"run-script-os","download:kubelogin:all":"yarn download:kubelogin:macos && yarn download:kubelogin:linux && yarn download:kubelogin:windows","download:kubelogin:linux":"yarn create:bin:nix && ([[ -f ./bin/kubelogin-linux-amd64 ]] || (mkdir -p ./tmp && cd ./tmp && curl -slL https://github.com/int128/kubelogin/releases/download/v1.25.1/kubelogin_linux_amd64.zip | tar -xz && mv kubelogin ../bin/kubelogin-linux-amd64 && chmod +x ../bin/kubelogin-linux-amd64 && cd .. && rm -rf ./tmp))","download:kubelogin:macos":"yarn create:bin:nix && yarn download:kubelogin:macos-amd64 && yarn download:kubelogin:macos-arm64","download:kubelogin:license":"run-script-os","download:kubelogin:windows":"yarn create:bin:windows && sh -c \"[[ -f ./bin/kubelogin-win-amd64.exe ]] || (mkdir -p ./tmp && cd ./tmp && curl -slL https://github.com/int128/kubelogin/releases/download/v1.25.1/kubelogin_windows_amd64.zip | tar -xz && mv kubelogin.exe ../bin/kubelogin-win-amd64.exe && chmod +x ../bin/kubelogin-win-amd64.exe && cd .. && rm -rf ./tmp)\"","download:kubelogin:license:nix":"yarn create:bin:nix && ([[ -f ./bin/kubelogin-license.txt ]] || curl -slL https://raw.githubusercontent.com/int128/kubelogin/v1.25.1/LICENSE > ./bin/kubelogin-license.txt)","download:kubelogin:macos-amd64":"[[ -f ./bin/kubelogin-macos-amd64 ]] || (mkdir -p ./tmp && cd ./tmp && curl -slL https://github.com/int128/kubelogin/releases/download/v1.25.1/kubelogin_darwin_amd64.zip | tar -xz && mv kubelogin ../bin/kubelogin-macos-amd64 && chmod +x ../bin/kubelogin-macos-amd64 && cd .. && rm -rf ./tmp)","download:kubelogin:macos-arm64":"[[ -f ./bin/kubelogin-macos-arm64 ]] || (mkdir -p ./tmp && cd ./tmp && curl -slL https://github.com/int128/kubelogin/releases/download/v1.25.1/kubelogin_darwin_arm64.zip | tar -xz && mv kubelogin ../bin/kubelogin-macos-arm64 && chmod +x ../bin/kubelogin-macos-arm64 && cd .. && rm -rf ./tmp)","download:kubelogin:license:windows":"yarn create:bin:windows && sh -c \"[[ -f ./bin/kubelogin-license.txt ]] || curl -slL https://raw.githubusercontent.com/int128/kubelogin/v1.25.1/LICENSE > ./bin/kubelogin-license.txt\""},"_npmUser":{"name":"stefcameron","email":"stefan@stefcameron.com"},"renderer":"dist/renderer.js","publisher":"mirantis","repository":{"url":"git+https://github.com/Mirantis/lens-extension-cc.git","type":"git"},"_npmVersion":"8.13.2","description":"Lens extension that loads Mirantis Container Cloud clusters.","directories":{},"_nodeVersion":"18.4.0","dependencies":{},"_hasShrinkwrap":false,"devDependencies":{"jest":"^28.1.3","mobx":"^6.6.1","yaml":"^2.1.1","dayjs":"^1.11.4","react":"^17.0.2","rtvjs":"^4.1.0","eslint":"^7.32.0","webpack":"^5.74.0","electron":"^15.5.7","prettier":"^2.7.1","react-dom":"^17.0.2","ts-loader":"^9.3.1","@babel/cli":"^7.18.9","babel-jest":"^28.1.3","mobx-react":"^7.5.2","node-fetch":"^2.6.7","prop-types":"^15.8.1","typescript":"^4.7.4","@babel/core":"^7.18.9","@types/node":"^18.6.1","webpack-cli":"^4.10.0","@types/react":"^18.0.9","babel-loader":"^8.2.5","browserslist":"^4.21.2","query-string":"^7.1.1","react-select":"^5.4.0","@emotion/core":"^11.0.0","@emotion/jest":"^11.9.4","run-script-os":"^1.1.6","@emotion/react":"^11.9.3","@emotion/styled":"^11.9.3","jest-fetch-mock":"^3.0.3","abort-controller":"^3.0.0","@babel/preset-env":"^7.18.9","jest-mock-console":"^2.0.0","eslint-plugin-jest":"^26.6.0","@babel/preset-react":"^7.18.6","@k8slens/extensions":"^5.5.4","@types/react-router":"^5.1.18","babel-plugin-lodash":"^3.3.4","eslint-plugin-react":"^7.30.1","jest-transform-stub":"^2.0.0","@babel/eslint-parser":"^7.18.9","@testing-library/dom":"^8.16.0","@emotion/babel-plugin":"^11.9.2","@testing-library/react":"^12.1.4","eslint-config-prettier":"^8.5.0","eslint-plugin-jest-dom":"^4.0.2","jest-environment-jsdom":"^28.1.3","@babel/preset-typescript":"^7.18.6","@testing-library/jest-dom":"^5.16.4","@typescript-eslint/parser":"^4.33.0","eslint-plugin-react-hooks":"^4.6.0","@testing-library/user-event":"^14.3.0","babel-plugin-module-resolver":"^4.1.0","eslint-plugin-testing-library":"^5.5.1","@typescript-eslint/eslint-plugin":"^4.33.0","@babel/plugin-proposal-decorators":"^7.18.9","@babel/plugin-transform-react-jsx":"^7.18.6","@babel/plugin-proposal-class-properties":"^7.17.12"},"_npmOperationalInternal":{"tmp":"tmp/lens-extension-cc_4.0.0_1658950793633_0.8292627292335009","host":"s3://npm-registry-packages"}},"5.0.0":{"name":"@mirantis/lens-extension-cc","version":"5.0.0","keywords":["lens","mirantis","cluster"],"author":{"url":"https://github.com/stefcameron","name":"Stefan Cameron"},"license":"MIT","_id":"@mirantis/lens-extension-cc@5.0.0","maintainers":[{"name":"stefcameron","email":"stefan@stefcameron.com"}],"homepage":"https://github.com/Mirantis/lens-extension-cc#readme","bugs":{"url":"https://github.com/Mirantis/lens-extension-cc/issues"},"dist":{"shasum":"06e8c21a2a052be890d332e658f133735eda8574","tarball":"https://registry.npmjs.org/@mirantis/lens-extension-cc/-/lens-extension-cc-5.0.0.tgz","fileCount":11,"integrity":"sha512-kR+FODeMWvIKLf4ire9MDtQwXoPlZcejPdjpgCbrNSPesnV6k4x5+c2ilx4dZYijZdr/rmTdkaklMFUoCh/ZhA==","signatures":[{"sig":"MEYCIQDcd4/M2FrBMl6UMi794CqnxAir68UruTLZIi+gLOffgwIhAIoWDlE9QAv+O0cJb+vSE9xTnKyVGB98nE3a2im084pk","keyid":"SHA256:jl3bwswu80PjjokCgh0o2w5c2U4LhQAE57gj9cz1kzA"}],"unpackedSize":77905865,"npm-signature":"-----BEGIN PGP SIGNATURE-----\r\nVersion: OpenPGP.js v4.10.10\r\nComment: https://openpgpjs.org\r\n\r\nwsFzBAEBCAAGBQJi4sG/ACEJED1NWxICdlZqFiEECWMYAoorWMhJKdjhPU1b\r\nEgJ2Vmpc1Q//bnMpRuNhx9x2YPHWc98T5O3Tl5eMbZVzwcJi8wQxPrOEd4SX\r\nTSp1RfsYw5+ruaUMlxxise1cc0ASn4eBK6FGv0a/EjmYeo8ApZrskbEFU4gg\r\n55tU3qh2tqwzoXBMGBlTd+ND/017v2RZO/F3xD97vTmBd0jI1F0qhrDeSMy8\r\n1ijpVhzbKyV1HkXm5yuIe7iEUdFBR7esucdxMk0KbndgJPvrTrt8qE2Raw+9\r\nRomPvlkt2UzzYQrxh2P7BqxwlTMcFaKsz0R6vuAXcFbq14Xk21cdPV5cnPKp\r\nj1bwNC+O05j0sM9ihh0U72UNItwsjfGHwBlUzdEiS8HpcGu+ImTH22vYheEE\r\niWMqVSmoFOuEWCUNgHdnBKhmHIkHZLGxKKTubeo48HLGDqPQL1Ih+oh88SGn\r\nLuu8B8q58lCaQCeQbr1CJr2k+wU/n2vkNG5xoISoJQIsIrk3rJ44D79591Iz\r\nkFKolgxJo6V8zTksRk0lO79+yUG6Ge73L7uWAFqnFQZBs79/V+by5/AgXB78\r\nUrhpB8WEhn4Y9a7okbe0+jBF8ojeXuolrdIXiYvsQaE7w/T4LZGxgOt4CkK2\r\nhzucn36YX993ArgHC3Jh7KfIyvmi/X2uPwkQvR4lbMArlk03Ybn6erNl22bL\r\nBDNtc8Ajcf9MvKlRPK00XFX9V4331kL/b0E=\r\n=DBNR\r\n-----END PGP SIGNATURE-----\r\n"},"main":"dist/main.js","engines":{"lens":"^6.0.0"},"gitHead":"70c97258b6fc31a10fa9d64ee2bc4ee824707f11","scripts":{"dev":"TARGET=development yarn build","fmt":"prettier --write \"{*,src/**/*,tools/**/*,test/**/*,__mocks__/**/*}.+(js|mjs|ts*|yml|json)\"","lint":"eslint \"{*,src/**/*,tools/**/*,test/**/*,__mocks__/**/*}.+(js|mjs|ts*)\"","test":"yarn lint && yarn fmt:check && yarn test:unit","babel":"babel src --out-dir dist_babel","build":"yarn clean && BABEL_ENV=build webpack","clean":"rm -rf ./dist && rm -rf ./dist_babel","start":"TARGET=development yarn build --watch","prepack":"yarn build && yarn download:kubelogin:all && yarn download:kubelogin:license","prebabel":"rm -rf ./dist_babel","prestart":"yarn download:kubelogin","fmt:check":"prettier --check \"{*,src/**/*,tools/**/*,test/**/*,__mocks__/**/*}.+(js|mjs|ts*|yml|json)\"","test:unit":"jest --colors --config jest.config.mjs","test:coverage":"yarn test:unit --coverage","create:bin:nix":"mkdir -p ./bin","prepublishOnly":"yarn test","create:bin:windows":"sh -c \"mkdir -p ./bin\"","download:kubelogin":"run-script-os","download:kubelogin:all":"yarn download:kubelogin:macos && yarn download:kubelogin:linux && yarn download:kubelogin:windows","download:kubelogin:linux":"yarn create:bin:nix && ([[ -f ./bin/kubelogin-linux-amd64 ]] || (mkdir -p ./tmp && cd ./tmp && curl -slL https://github.com/int128/kubelogin/releases/download/v1.25.1/kubelogin_linux_amd64.zip | tar -xz && mv kubelogin ../bin/kubelogin-linux-amd64 && chmod +x ../bin/kubelogin-linux-amd64 && cd .. && rm -rf ./tmp))","download:kubelogin:macos":"yarn create:bin:nix && yarn download:kubelogin:macos-amd64 && yarn download:kubelogin:macos-arm64","download:kubelogin:license":"run-script-os","download:kubelogin:windows":"yarn create:bin:windows && sh -c \"[[ -f ./bin/kubelogin-win-amd64.exe ]] || (mkdir -p ./tmp && cd ./tmp && curl -slL https://github.com/int128/kubelogin/releases/download/v1.25.1/kubelogin_windows_amd64.zip | tar -xz && mv kubelogin.exe ../bin/kubelogin-win-amd64.exe && chmod +x ../bin/kubelogin-win-amd64.exe && cd .. && rm -rf ./tmp)\"","download:kubelogin:license:nix":"yarn create:bin:nix && ([[ -f ./bin/kubelogin-license.txt ]] || curl -slL https://raw.githubusercontent.com/int128/kubelogin/v1.25.1/LICENSE > ./bin/kubelogin-license.txt)","download:kubelogin:macos-amd64":"[[ -f ./bin/kubelogin-macos-amd64 ]] || (mkdir -p ./tmp && cd ./tmp && curl -slL https://github.com/int128/kubelogin/releases/download/v1.25.1/kubelogin_darwin_amd64.zip | tar -xz && mv kubelogin ../bin/kubelogin-macos-amd64 && chmod +x ../bin/kubelogin-macos-amd64 && cd .. && rm -rf ./tmp)","download:kubelogin:macos-arm64":"[[ -f ./bin/kubelogin-macos-arm64 ]] || (mkdir -p ./tmp && cd ./tmp && curl -slL https://github.com/int128/kubelogin/releases/download/v1.25.1/kubelogin_darwin_arm64.zip | tar -xz && mv kubelogin ../bin/kubelogin-macos-arm64 && chmod +x ../bin/kubelogin-macos-arm64 && cd .. && rm -rf ./tmp)","download:kubelogin:license:windows":"yarn create:bin:windows && sh -c \"[[ -f ./bin/kubelogin-license.txt ]] || curl -slL https://raw.githubusercontent.com/int128/kubelogin/v1.25.1/LICENSE > ./bin/kubelogin-license.txt\""},"_npmUser":{"name":"stefcameron","email":"stefan@stefcameron.com"},"renderer":"dist/renderer.js","publisher":"mirantis","repository":{"url":"git+https://github.com/Mirantis/lens-extension-cc.git","type":"git"},"_npmVersion":"8.13.2","description":"Lens extension that loads Mirantis Container Cloud clusters.","directories":{},"_nodeVersion":"18.4.0","dependencies":{},"_hasShrinkwrap":false,"devDependencies":{"jest":"^28.1.3","mobx":"^6.6.1","yaml":"^2.1.1","dayjs":"^1.11.4","react":"^17.0.2","rtvjs":"^4.1.0","eslint":"^7.32.0","webpack":"^5.74.0","electron":"^15.5.7","prettier":"^2.7.1","react-dom":"^17.0.2","ts-loader":"^9.3.1","@babel/cli":"^7.18.9","babel-jest":"^28.1.3","mobx-react":"^7.5.2","node-fetch":"^2.6.7","prop-types":"^15.8.1","typescript":"^4.7.4","@babel/core":"^7.18.9","@types/node":"^18.6.1","webpack-cli":"^4.10.0","@types/react":"^18.0.9","babel-loader":"^8.2.5","browserslist":"^4.21.2","query-string":"^7.1.1","react-select":"^5.4.0","@emotion/core":"^11.0.0","@emotion/jest":"^11.9.4","run-script-os":"^1.1.6","@emotion/react":"^11.9.3","@emotion/styled":"^11.9.3","jest-fetch-mock":"^3.0.3","abort-controller":"^3.0.0","@babel/preset-env":"^7.18.9","jest-mock-console":"^2.0.0","eslint-plugin-jest":"^26.6.0","@babel/preset-react":"^7.18.6","@k8slens/extensions":"^5.5.4","@types/react-router":"^5.1.18","babel-plugin-lodash":"^3.3.4","eslint-plugin-react":"^7.30.1","jest-transform-stub":"^2.0.0","@babel/eslint-parser":"^7.18.9","@testing-library/dom":"^8.16.0","@emotion/babel-plugin":"^11.9.2","@testing-library/react":"^12.1.4","eslint-config-prettier":"^8.5.0","eslint-plugin-jest-dom":"^4.0.2","jest-environment-jsdom":"^28.1.3","@babel/preset-typescript":"^7.18.6","@testing-library/jest-dom":"^5.16.4","@typescript-eslint/parser":"^4.33.0","eslint-plugin-react-hooks":"^4.6.0","@testing-library/user-event":"^14.3.0","babel-plugin-module-resolver":"^4.1.0","eslint-plugin-testing-library":"^5.5.1","@typescript-eslint/eslint-plugin":"^4.33.0","@babel/plugin-proposal-decorators":"^7.18.9","@babel/plugin-transform-react-jsx":"^7.18.6","@babel/plugin-proposal-class-properties":"^7.17.12"},"_npmOperationalInternal":{"tmp":"tmp/lens-extension-cc_5.0.0_1659027902343_0.9184715614456396","host":"s3://npm-registry-packages"}},"5.0.1":{"name":"@mirantis/lens-extension-cc","version":"5.0.1","keywords":["lens","mirantis","cluster"],"author":{"url":"https://github.com/stefcameron","name":"Stefan Cameron"},"license":"MIT","_id":"@mirantis/lens-extension-cc@5.0.1","maintainers":[{"name":"stefcameron","email":"stefan@stefcameron.com"}],"homepage":"https://github.com/Mirantis/lens-extension-cc#readme","bugs":{"url":"https://github.com/Mirantis/lens-extension-cc/issues"},"dist":{"shasum":"9e0306bd29cd7e54e6972ae0bcf5e3b15c6e5a3e","tarball":"https://registry.npmjs.org/@mirantis/lens-extension-cc/-/lens-extension-cc-5.0.1.tgz","fileCount":11,"integrity":"sha512-0EVnAaZcIGMENMpuVaJrbipQ5ccFA024a144Pak3+otoxO7YFtywHv4iwcle6cESaUgTdQFEOOAxMHlwxhnRyQ==","signatures":[{"sig":"MEYCIQCqdS9to92LlrilhZuglncj8MCufj3s4tmWj8Evm1MDtgIhAK+zbb3TdNeVYw8ADk+OX/Qc8fz8JD7IS8NxsjU7JkIN","keyid":"SHA256:jl3bwswu80PjjokCgh0o2w5c2U4LhQAE57gj9cz1kzA"}],"unpackedSize":77916870,"npm-signature":"-----BEGIN PGP SIGNATURE-----\r\nVersion: OpenPGP.js v4.10.10\r\nComment: https://openpgpjs.org\r\n\r\nwsFzBAEBCAAGBQJi6wa1ACEJED1NWxICdlZqFiEECWMYAoorWMhJKdjhPU1b\r\nEgJ2VmpYgw/+Jp1OwRWIhgEQbWhGnATuftnI8wYVaZiIGnD2EBwmEgzjLr6C\r\nik6l2Brj8EIk2bIsQG94xmnL4xHXMavuufOpIh7lAGyqK7Q45tkwmsd5mPZN\r\nYzVz9VzF6DBWgLIJbDDCdIHt2lXM+7IOR8MbHYoVc22hnOEZrWJknoASPh2v\r\nv3xjIMjHmfTwlKcEmWxkTd3oPaNzJzOTJI8In/Q8bU+cNuxmDcVRYJgXvv2N\r\nfe8kIA8QdbvTkOfK0Xgytw0xnuk30p59Gvwl8M6gu/vQKBn66OEGa7L+MdnQ\r\ncrh+Ic6lNoVzdeRAsm0IBdLeYD9WJKh2JY2bDgZcoIRddED90v1BdeJjIKPU\r\nu7AbSo2B+KG8VxQUWJX3wEJt7acPETzwaPf2WUxb8aeYjuNzgMNZHthbGNtZ\r\n1WFFVSREju6Mbm9+ngR9ZuGSI7rVHdWep1vg0U4POQ56RfGYHS7kPCAywTxH\r\nWy06fs+KUJc4TUwcFJaCty2+vqvm11rCWvqJJ+ut9dxAgq5CgKJ7/JY//V++\r\njpx9GNahrLT6wAAXW//AJvX2NeqXZ56uJLEARhKvU+B9YnXq8nprqq0LUFbF\r\nPDKjYCmcs6wHg+lFXJoomVVhqp1rd5My80V2Emv9kO/jwnSccWt5i27LjaFU\r\nE+6FHkRmgSUyeBHjoK+ObH9W1VNHZltmxeU=\r\n=gxPD\r\n-----END PGP SIGNATURE-----\r\n"},"main":"dist/main.js","engines":{"lens":"^6.0.0"},"gitHead":"ca5f09f415044a1da8b1df65830f19c3195c98ae","scripts":{"dev":"TARGET=development yarn build","fmt":"prettier --write \"{*,src/**/*,tools/**/*,test/**/*,__mocks__/**/*}.+(js|mjs|ts*|yml|json)\"","lint":"eslint \"{*,src/**/*,tools/**/*,test/**/*,__mocks__/**/*}.+(js|mjs|ts*)\"","test":"yarn lint && yarn fmt:check && yarn test:unit","babel":"babel src --out-dir dist_babel","build":"yarn clean && BABEL_ENV=build webpack","clean":"rm -rf ./dist && rm -rf ./dist_babel","start":"TARGET=development yarn build --watch","prepack":"yarn build && yarn download:kubelogin:all && yarn download:kubelogin:license","prebabel":"rm -rf ./dist_babel","prestart":"yarn download:kubelogin","fmt:check":"prettier --check \"{*,src/**/*,tools/**/*,test/**/*,__mocks__/**/*}.+(js|mjs|ts*|yml|json)\"","test:unit":"jest --colors --config jest.config.mjs","test:coverage":"yarn test:unit --coverage","create:bin:nix":"mkdir -p ./bin","prepublishOnly":"yarn test","create:bin:windows":"sh -c \"mkdir -p ./bin\"","download:kubelogin":"run-script-os","download:kubelogin:all":"yarn download:kubelogin:macos && yarn download:kubelogin:linux && yarn download:kubelogin:windows","download:kubelogin:linux":"yarn create:bin:nix && ([[ -f ./bin/kubelogin-linux-amd64 ]] || (mkdir -p ./tmp && cd ./tmp && curl -slL https://github.com/int128/kubelogin/releases/download/v1.25.1/kubelogin_linux_amd64.zip | tar -xz && mv kubelogin ../bin/kubelogin-linux-amd64 && chmod +x ../bin/kubelogin-linux-amd64 && cd .. && rm -rf ./tmp))","download:kubelogin:macos":"yarn create:bin:nix && yarn download:kubelogin:macos-amd64 && yarn download:kubelogin:macos-arm64","download:kubelogin:license":"run-script-os","download:kubelogin:windows":"yarn create:bin:windows && sh -c \"[[ -f ./bin/kubelogin-win-amd64.exe ]] || (mkdir -p ./tmp && cd ./tmp && curl -slL https://github.com/int128/kubelogin/releases/download/v1.25.1/kubelogin_windows_amd64.zip | tar -xz && mv kubelogin.exe ../bin/kubelogin-win-amd64.exe && chmod +x ../bin/kubelogin-win-amd64.exe && cd .. && rm -rf ./tmp)\"","download:kubelogin:license:nix":"yarn create:bin:nix && ([[ -f ./bin/kubelogin-license.txt ]] || curl -slL https://raw.githubusercontent.com/int128/kubelogin/v1.25.1/LICENSE > ./bin/kubelogin-license.txt)","download:kubelogin:macos-amd64":"[[ -f ./bin/kubelogin-macos-amd64 ]] || (mkdir -p ./tmp && cd ./tmp && curl -slL https://github.com/int128/kubelogin/releases/download/v1.25.1/kubelogin_darwin_amd64.zip | tar -xz && mv kubelogin ../bin/kubelogin-macos-amd64 && chmod +x ../bin/kubelogin-macos-amd64 && cd .. && rm -rf ./tmp)","download:kubelogin:macos-arm64":"[[ -f ./bin/kubelogin-macos-arm64 ]] || (mkdir -p ./tmp && cd ./tmp && curl -slL https://github.com/int128/kubelogin/releases/download/v1.25.1/kubelogin_darwin_arm64.zip | tar -xz && mv kubelogin ../bin/kubelogin-macos-arm64 && chmod +x ../bin/kubelogin-macos-arm64 && cd .. && rm -rf ./tmp)","download:kubelogin:license:windows":"yarn create:bin:windows && sh -c \"[[ -f ./bin/kubelogin-license.txt ]] || curl -slL https://raw.githubusercontent.com/int128/kubelogin/v1.25.1/LICENSE > ./bin/kubelogin-license.txt\""},"_npmUser":{"name":"stefcameron","email":"stefan@stefcameron.com"},"renderer":"dist/renderer.js","publisher":"mirantis","repository":{"url":"git+https://github.com/Mirantis/lens-extension-cc.git","type":"git"},"_npmVersion":"8.13.2","description":"Lens extension that loads Mirantis Container Cloud clusters.","directories":{},"_nodeVersion":"18.4.0","dependencies":{},"_hasShrinkwrap":false,"devDependencies":{"jest":"^28.1.3","mobx":"^6.6.1","yaml":"^2.1.1","dayjs":"^1.11.4","react":"^17.0.2","rtvjs":"^4.1.0","eslint":"^7.32.0","webpack":"^5.74.0","electron":"^15.5.7","prettier":"^2.7.1","react-dom":"^17.0.2","ts-loader":"^9.3.1","@babel/cli":"^7.18.10","babel-jest":"^28.1.3","mobx-react":"^7.5.2","node-fetch":"^2.6.7","prop-types":"^15.8.1","typescript":"^4.7.4","@babel/core":"^7.18.10","@types/node":"^18.6.3","webpack-cli":"^4.10.0","@emotion/css":"^11.10.0","@types/react":"^18.0.9","babel-loader":"^8.2.5","browserslist":"^4.21.3","query-string":"^7.1.1","react-select":"^5.4.0","@emotion/core":"^11.0.0","@emotion/jest":"^11.10.0","run-script-os":"^1.1.6","@emotion/react":"^11.10.0","@emotion/styled":"^11.10.0","jest-fetch-mock":"^3.0.3","abort-controller":"^3.0.0","@babel/preset-env":"^7.18.10","jest-mock-console":"^2.0.0","eslint-plugin-jest":"^26.7.0","@babel/preset-react":"^7.18.6","@k8slens/extensions":"^6.0.0","@types/react-router":"^5.1.18","babel-plugin-lodash":"^3.3.4","eslint-plugin-react":"^7.30.1","jest-transform-stub":"^2.0.0","@babel/eslint-parser":"^7.18.9","@testing-library/dom":"^8.16.0","@emotion/babel-plugin":"^11.9.5","@testing-library/react":"^12.1.4","eslint-config-prettier":"^8.5.0","eslint-plugin-jest-dom":"^4.0.2","jest-environment-jsdom":"^28.1.3","@babel/preset-typescript":"^7.18.6","@testing-library/jest-dom":"^5.16.4","@typescript-eslint/parser":"^4.33.0","eslint-plugin-react-hooks":"^4.6.0","@testing-library/user-event":"^14.4.1","babel-plugin-module-resolver":"^4.1.0","eslint-plugin-testing-library":"^5.6.0","@typescript-eslint/eslint-plugin":"^4.33.0","@babel/plugin-proposal-decorators":"^7.18.10","@babel/plugin-transform-react-jsx":"^7.18.10","@babel/plugin-proposal-class-properties":"^7.17.12"},"_npmOperationalInternal":{"tmp":"tmp/lens-extension-cc_5.0.1_1659569844111_0.6234414980287464","host":"s3://npm-registry-packages"}},"5.0.2":{"name":"@mirantis/lens-extension-cc","version":"5.0.2","keywords":["lens","mirantis","cluster"],"author":{"url":"https://github.com/stefcameron","name":"Stefan Cameron"},"license":"MIT","_id":"@mirantis/lens-extension-cc@5.0.2","maintainers":[{"name":"stefcameron","email":"stefan@stefcameron.com"}],"homepage":"https://github.com/Mirantis/lens-extension-cc#readme","bugs":{"url":"https://github.com/Mirantis/lens-extension-cc/issues"},"dist":{"shasum":"bf44ce0d198ea16249e0e98832a8087c6f1cca44","tarball":"https://registry.npmjs.org/@mirantis/lens-extension-cc/-/lens-extension-cc-5.0.2.tgz","fileCount":11,"integrity":"sha512-prdkfauQHefXAV0HCxnuWLHrkHhqEa5ShO88Rx5XjyF7h6M8DdXe0usUAtvVEIwkTqug/sdEu3hB+RkOhGvQ4w==","signatures":[{"sig":"MEUCIHTQDI/52NbLLdGWWClIs6CklNWscBQC7GG5joAKkF7ZAiEAzyGMP0S4rrFhBNgaF8s3vc8896Sx3m8QWuV/9+Roiwg=","keyid":"SHA256:jl3bwswu80PjjokCgh0o2w5c2U4LhQAE57gj9cz1kzA"}],"unpackedSize":79380767,"npm-signature":"-----BEGIN PGP SIGNATURE-----\r\nVersion: OpenPGP.js v4.10.10\r\nComment: https://openpgpjs.org\r\n\r\nwsFzBAEBCAAGBQJjH5CrACEJED1NWxICdlZqFiEECWMYAoorWMhJKdjhPU1b\r\nEgJ2Vmrq8Q/+Py61C6TIEaMNHvDnqJm6+08u1OJojBpXP/zayMRUD5f/9k3u\r\nrfRi7BCOG3lrRXa8yoEitfwqUx2j/Y05sbWOZsSjWQNiO4qK8hiAm76a1iEu\r\nabqfSjn3e8O4ijTab/poRpQpwtun9yxmokMUTq8m1r2rWRKyj+pcKAbbW5se\r\nWehKTGNjDwpLTg/gC23NKk5Ciixaxe3GpP8t5QGnLv6j9+29aM8JeyfQoyxm\r\nHItiLLCnR74+KSsY2VpPAeMCsxPgOkwucsxmbk8tKllI5cU/IoYOHqxLfdnF\r\n6+lqt8yRIZJBMKLMNSMvmPZ14s2+dQJtj7sjHEQBaxg1LS65KkB9rpdhS7Xr\r\n6Y7Oh8vUb8GhLW51q9m5STgW5zZ1jXfbTFPMUq2gFwLw5urDbXO6L8sP4FFp\r\nKYhyJaATYBUA75+P7ywFBydoNc+4shhPidYdMIiXfOjRnSG465a/P9sXONEo\r\nqBZfjVyMQyWiGnc8dPf7KGByQkJRou9FV/SXOms0mLDHSwG57LxXs/O3IScc\r\n6hAxdmAHTZ9lkVMxZavfbnwPZq63Z8im1ENOwjJvmzUskJNCEjyiZ+iDTxJd\r\nidkHnDeFl/FAQNf6m7TzXQERYQpTIX22Xyt0iNUcdREWJuvWQzwq7CCRtUql\r\nzTIv7Pc8wFPex/kQkrQ0cpAGxz43skucjvY=\r\n=r+cy\r\n-----END PGP SIGNATURE-----\r\n"},"main":"dist/main.js","engines":{"lens":"^6.0.0"},"gitHead":"7c65a65b6b2f13d6544a7f812e15a7bc2234f9e7","scripts":{"dev":"TARGET=development yarn build","fmt":"prettier --write \"{*,src/**/*,tools/**/*,test/**/*,__mocks__/**/*}.+(js|mjs|ts*|yml|json)\"","lint":"eslint \"{*,src/**/*,tools/**/*,test/**/*,__mocks__/**/*}.+(js|mjs|ts*)\"","test":"yarn lint && yarn fmt:check && yarn test:unit","babel":"babel src --out-dir dist_babel","build":"yarn clean && BABEL_ENV=build webpack","clean":"rm -rf ./dist && rm -rf ./dist_babel","start":"TARGET=development yarn build --watch","prepack":"yarn build && yarn download:kubelogin:all && yarn download:kubelogin:license","prebabel":"rm -rf ./dist_babel","prestart":"yarn download:kubelogin","fmt:check":"prettier --check \"{*,src/**/*,tools/**/*,test/**/*,__mocks__/**/*}.+(js|mjs|ts*|yml|json)\"","test:unit":"jest --colors --config jest.config.mjs","test:coverage":"yarn test:unit --coverage","create:bin:nix":"mkdir -p ./bin","prepublishOnly":"yarn test","create:bin:windows":"sh -c \"mkdir -p ./bin\"","download:kubelogin":"run-script-os","download:kubelogin:all":"yarn download:kubelogin:macos && yarn download:kubelogin:linux && yarn download:kubelogin:windows","download:kubelogin:linux":"yarn create:bin:nix && ([[ -f ./bin/kubelogin-linux-amd64 ]] || (mkdir -p ./tmp && cd ./tmp && curl -slL https://github.com/int128/kubelogin/releases/download/v1.25.3/kubelogin_linux_amd64.zip | tar -xz && mv kubelogin ../bin/kubelogin-linux-amd64 && chmod +x ../bin/kubelogin-linux-amd64 && cd .. && rm -rf ./tmp))","download:kubelogin:macos":"yarn create:bin:nix && yarn download:kubelogin:macos-amd64 && yarn download:kubelogin:macos-arm64","download:kubelogin:license":"run-script-os","download:kubelogin:windows":"yarn create:bin:windows && sh -c \"[[ -f ./bin/kubelogin-win-amd64.exe ]] || (mkdir -p ./tmp && cd ./tmp && curl -slL https://github.com/int128/kubelogin/releases/download/v1.25.3/kubelogin_windows_amd64.zip | tar -xz && mv kubelogin.exe ../bin/kubelogin-win-amd64.exe && chmod +x ../bin/kubelogin-win-amd64.exe && cd .. && rm -rf ./tmp)\"","download:kubelogin:license:nix":"yarn create:bin:nix && ([[ -f ./bin/kubelogin-license.txt ]] || curl -slL https://raw.githubusercontent.com/int128/kubelogin/v1.25.3/LICENSE > ./bin/kubelogin-license.txt)","download:kubelogin:macos-amd64":"[[ -f ./bin/kubelogin-macos-amd64 ]] || (mkdir -p ./tmp && cd ./tmp && curl -slL https://github.com/int128/kubelogin/releases/download/v1.25.3/kubelogin_darwin_amd64.zip | tar -xz && mv kubelogin ../bin/kubelogin-macos-amd64 && chmod +x ../bin/kubelogin-macos-amd64 && cd .. && rm -rf ./tmp)","download:kubelogin:macos-arm64":"[[ -f ./bin/kubelogin-macos-arm64 ]] || (mkdir -p ./tmp && cd ./tmp && curl -slL https://github.com/int128/kubelogin/releases/download/v1.25.3/kubelogin_darwin_arm64.zip | tar -xz && mv kubelogin ../bin/kubelogin-macos-arm64 && chmod +x ../bin/kubelogin-macos-arm64 && cd .. && rm -rf ./tmp)","download:kubelogin:license:windows":"yarn create:bin:windows && sh -c \"[[ -f ./bin/kubelogin-license.txt ]] || curl -slL https://raw.githubusercontent.com/int128/kubelogin/v1.25.3/LICENSE > ./bin/kubelogin-license.txt\""},"_npmUser":{"name":"stefcameron","email":"stefan@stefcameron.com"},"renderer":"dist/renderer.js","publisher":"mirantis","repository":{"url":"git+https://github.com/Mirantis/lens-extension-cc.git","type":"git"},"_npmVersion":"8.17.0","description":"Lens extension that loads Mirantis Container Cloud clusters.","directories":{},"_nodeVersion":"18.7.0","dependencies":{},"_hasShrinkwrap":false,"devDependencies":{"jest":"^29.0.3","mobx":"^6.6.2","yaml":"^2.1.1","dayjs":"^1.11.5","react":"^17.0.2","rtvjs":"^4.1.0","eslint":"^7.32.0","lodash":"^4.17.21","webpack":"^5.74.0","electron":"^19.0.16","prettier":"^2.7.1","react-dom":"^17.0.2","ts-loader":"^9.3.1","@babel/cli":"^7.18.10","babel-jest":"^29.0.3","mobx-react":"^7.5.3","node-fetch":"^2.6.7","prop-types":"^15.8.1","typescript":"^4.8.3","@babel/core":"^7.19.0","@types/node":"^18.7.16","webpack-cli":"^4.10.0","@emotion/css":"^11.10.0","@types/react":"^18.0.9","babel-loader":"^8.2.5","browserslist":"^4.21.3","query-string":"^7.1.1","react-select":"^5.4.0","@emotion/core":"^11.0.0","@emotion/jest":"^11.10.0","run-script-os":"^1.1.6","@emotion/react":"^11.10.4","@emotion/styled":"^11.10.4","jest-fetch-mock":"^3.0.3","abort-controller":"^3.0.0","@babel/preset-env":"^7.19.0","jest-mock-console":"^2.0.0","eslint-plugin-jest":"^27.0.4","@babel/preset-react":"^7.18.6","@k8slens/extensions":"^6.0.2","@types/react-router":"^5.1.18","babel-plugin-lodash":"^3.3.4","eslint-plugin-react":"^7.31.8","jest-transform-stub":"^2.0.0","@babel/eslint-parser":"^7.18.9","@testing-library/dom":"^8.17.1","@emotion/babel-plugin":"^11.10.2","@testing-library/react":"^12.1.4","eslint-config-prettier":"^8.5.0","eslint-plugin-jest-dom":"^4.0.2","jest-environment-jsdom":"^29.0.3","@babel/preset-typescript":"^7.18.6","@testing-library/jest-dom":"^5.16.5","@typescript-eslint/parser":"^4.33.0","eslint-plugin-react-hooks":"^4.6.0","@testing-library/user-event":"^14.4.3","babel-plugin-module-resolver":"^4.1.0","eslint-plugin-testing-library":"^5.6.3","@typescript-eslint/eslint-plugin":"^4.33.0","@babel/plugin-proposal-decorators":"^7.19.0","@babel/plugin-transform-react-jsx":"^7.19.0","@babel/plugin-proposal-class-properties":"^7.17.12"},"_npmOperationalInternal":{"tmp":"tmp/lens-extension-cc_5.0.2_1663013035209_0.742049753776417","host":"s3://npm-registry-packages"}},"5.1.0":{"name":"@mirantis/lens-extension-cc","version":"5.1.0","keywords":["lens","mirantis","cluster"],"author":{"url":"https://github.com/stefcameron","name":"Stefan Cameron"},"license":"MIT","_id":"@mirantis/lens-extension-cc@5.1.0","maintainers":[{"name":"stefcameron","email":"stefan@stefcameron.com"}],"homepage":"https://github.com/Mirantis/lens-extension-cc#readme","bugs":{"url":"https://github.com/Mirantis/lens-extension-cc/issues"},"dist":{"shasum":"ea2bfaea780e2edf086321a286fa1eb4bfd57fd7","tarball":"https://registry.npmjs.org/@mirantis/lens-extension-cc/-/lens-extension-cc-5.1.0.tgz","fileCount":11,"integrity":"sha512-+fW9xNiIKPPB1HsGtTQEO6PIeegMawuD9WqbhGl3ZuE4PA41fLi0Xw4c8F9w9eO3dpwsuNQjPI+1WLxHbCxlCg==","signatures":[{"sig":"MEYCIQCECWrRO8DorcsIUu1mEMH3GKNa8UH5DNbLq4E7pZbbYwIhAPSFrvCRWDZfURu2S3wITM40f8+juEALjJEQ9n1ANCV/","keyid":"SHA256:jl3bwswu80PjjokCgh0o2w5c2U4LhQAE57gj9cz1kzA"}],"unpackedSize":79395189,"npm-signature":"-----BEGIN PGP SIGNATURE-----\r\nVersion: OpenPGP.js v4.10.10\r\nComment: https://openpgpjs.org\r\n\r\nwsFzBAEBCAAGBQJjNd0xACEJED1NWxICdlZqFiEECWMYAoorWMhJKdjhPU1b\r\nEgJ2VmoNVA/+L91AqklFpz2DeHJJf7ErNLXXBdTSga+9DB+P0bYA7lxnRvUX\r\nq5wcA/5DhIvFLFcARJuZKhWGta4trZX52PobLwoMoIS21IK4tajgafC1mZxu\r\nJUpIe7W07tmWEauUfo35iSGzFtIH8Q3YwIk01WZQquA1Zvq53QXz2oRo8B/k\r\nGHUjKDGQQWnWtILbTlc5PBq9FTCv1Lks25yGFCXIHClOMPeXKv1Qtt9haX+4\r\nQswZ1f4K0e3zMglKavqcI5vtrpJnxT6/RrKYDRn165vXFcQ1YbPGxaWYQcmj\r\nhG4twlpOjI/HMCzwYO5yxDUozirNH9ZBW2LENOAH3DNI1MbRZQB020grfXqZ\r\nrjpI4sQ103J0HrgvGsjEr3zL8UwJ+LSJlcedsv/eHPOqCoxezIVf2YMFObm1\r\njh+eksPH4uJIszpaEjC75fHxaz4ngZRad8w4Oo34NZns3BjOmhTD7guvQy6v\r\nNHFXxE12zd09nUlvv4xlRUgL28nt61fIgqAcMgqEr54TA9mGbhWBSLeC2IHi\r\nqlkTXb8gfuQP0ifibc1A9it2t+ba035dw11XUDpUcOhamFpnHdEDpZgbXr3t\r\nkJH9dMXh7NgCDNFwBtIYwTgPegG5aMIYiTd20f2h1/kSZTZJfPRER05/5buT\r\nTfPy2ySavStQjicfL2+sQinlNfEfGYHwoUo=\r\n=Vmwn\r\n-----END PGP SIGNATURE-----\r\n"},"main":"dist/main.js","engines":{"lens":"^6.0.0"},"gitHead":"8ee41facd968b353cc8b0726be9fbbe5eb9863ce","scripts":{"dev":"TARGET=development yarn build","fmt":"prettier --write \"{*,src/**/*,tools/**/*,test/**/*,__mocks__/**/*}.+(js|mjs|ts*|yml|json)\"","lint":"eslint \"{*,src/**/*,tools/**/*,test/**/*,__mocks__/**/*}.+(js|mjs|ts*)\"","test":"yarn lint && yarn fmt:check && yarn test:unit","babel":"babel src --out-dir dist_babel","build":"yarn clean && BABEL_ENV=build webpack","clean":"rm -rf ./dist && rm -rf ./dist_babel","start":"TARGET=development yarn build --watch","prepack":"yarn build && yarn download:kubelogin:all && yarn download:kubelogin:license","prebabel":"rm -rf ./dist_babel","prestart":"yarn download:kubelogin","fmt:check":"prettier --check \"{*,src/**/*,tools/**/*,test/**/*,__mocks__/**/*}.+(js|mjs|ts*|yml|json)\"","test:unit":"jest --colors --config jest.config.mjs","test:coverage":"yarn test:unit --coverage","create:bin:nix":"mkdir -p ./bin","prepublishOnly":"yarn test","create:bin:windows":"sh -c \"mkdir -p ./bin\"","download:kubelogin":"run-script-os","download:kubelogin:all":"yarn download:kubelogin:macos && yarn download:kubelogin:linux && yarn download:kubelogin:windows","download:kubelogin:linux":"yarn create:bin:nix && ([[ -f ./bin/kubelogin-linux-amd64 ]] || (mkdir -p ./tmp && cd ./tmp && curl -slL https://github.com/int128/kubelogin/releases/download/v1.25.3/kubelogin_linux_amd64.zip | tar -xz && mv kubelogin ../bin/kubelogin-linux-amd64 && chmod +x ../bin/kubelogin-linux-amd64 && cd .. && rm -rf ./tmp))","download:kubelogin:macos":"yarn create:bin:nix && yarn download:kubelogin:macos-amd64 && yarn download:kubelogin:macos-arm64","download:kubelogin:license":"run-script-os","download:kubelogin:windows":"yarn create:bin:windows && sh -c \"[[ -f ./bin/kubelogin-win-amd64.exe ]] || (mkdir -p ./tmp && cd ./tmp && curl -slL https://github.com/int128/kubelogin/releases/download/v1.25.3/kubelogin_windows_amd64.zip | tar -xz && mv kubelogin.exe ../bin/kubelogin-win-amd64.exe && chmod +x ../bin/kubelogin-win-amd64.exe && cd .. && rm -rf ./tmp)\"","download:kubelogin:license:nix":"yarn create:bin:nix && ([[ -f ./bin/kubelogin-license.txt ]] || curl -slL https://raw.githubusercontent.com/int128/kubelogin/v1.25.3/LICENSE > ./bin/kubelogin-license.txt)","download:kubelogin:macos-amd64":"[[ -f ./bin/kubelogin-macos-amd64 ]] || (mkdir -p ./tmp && cd ./tmp && curl -slL https://github.com/int128/kubelogin/releases/download/v1.25.3/kubelogin_darwin_amd64.zip | tar -xz && mv kubelogin ../bin/kubelogin-macos-amd64 && chmod +x ../bin/kubelogin-macos-amd64 && cd .. && rm -rf ./tmp)","download:kubelogin:macos-arm64":"[[ -f ./bin/kubelogin-macos-arm64 ]] || (mkdir -p ./tmp && cd ./tmp && curl -slL https://github.com/int128/kubelogin/releases/download/v1.25.3/kubelogin_darwin_arm64.zip | tar -xz && mv kubelogin ../bin/kubelogin-macos-arm64 && chmod +x ../bin/kubelogin-macos-arm64 && cd .. && rm -rf ./tmp)","download:kubelogin:license:windows":"yarn create:bin:windows && sh -c \"[[ -f ./bin/kubelogin-license.txt ]] || curl -slL https://raw.githubusercontent.com/int128/kubelogin/v1.25.3/LICENSE > ./bin/kubelogin-license.txt\""},"_npmUser":{"name":"stefcameron","email":"stefan@stefcameron.com"},"renderer":"dist/renderer.js","publisher":"mirantis","repository":{"url":"git+https://github.com/Mirantis/lens-extension-cc.git","type":"git"},"_npmVersion":"8.19.2","description":"Lens extension that loads Mirantis Container Cloud clusters.","directories":{},"_nodeVersion":"18.9.1","dependencies":{},"_hasShrinkwrap":false,"devDependencies":{"jest":"^29.1.1","mobx":"^6.6.2","yaml":"^2.1.1","dayjs":"^1.11.5","react":"^17.0.2","rtvjs":"^4.1.0","eslint":"^7.32.0","lodash":"^4.17.21","webpack":"^5.74.0","electron":"^19.0.16","prettier":"^2.7.1","react-dom":"^17.0.2","ts-loader":"^9.4.1","@babel/cli":"^7.19.3","babel-jest":"^29.1.0","mobx-react":"^7.5.3","node-fetch":"^2.6.7","prop-types":"^15.8.1","typescript":"^4.8.4","@babel/core":"^7.19.3","@types/node":"^18.7.23","webpack-cli":"^4.10.0","@emotion/css":"^11.10.0","@types/react":"^18.0.9","babel-loader":"^8.2.5","browserslist":"^4.21.4","query-string":"^7.1.1","react-select":"^5.4.0","@emotion/core":"^11.0.0","@emotion/jest":"^11.10.0","run-script-os":"^1.1.6","@emotion/react":"^11.10.4","@emotion/styled":"^11.10.4","jest-fetch-mock":"^3.0.3","abort-controller":"^3.0.0","@babel/preset-env":"^7.19.3","jest-mock-console":"^2.0.0","eslint-plugin-jest":"^27.0.4","@babel/preset-react":"^7.18.6","@k8slens/extensions":"^6.1.1","@types/react-router":"^5.1.19","babel-plugin-lodash":"^3.3.4","eslint-plugin-react":"^7.31.8","jest-transform-stub":"^2.0.0","@babel/eslint-parser":"^7.19.1","@testing-library/dom":"^8.18.1","@emotion/babel-plugin":"^11.10.2","@testing-library/react":"^12.1.4","eslint-config-prettier":"^8.5.0","eslint-plugin-jest-dom":"^4.0.2","jest-environment-jsdom":"^29.1.1","@babel/preset-typescript":"^7.18.6","@testing-library/jest-dom":"^5.16.5","@typescript-eslint/parser":"^4.33.0","eslint-plugin-react-hooks":"^4.6.0","@testing-library/user-event":"^14.4.3","babel-plugin-module-resolver":"^4.1.0","eslint-plugin-testing-library":"^5.7.0","@typescript-eslint/eslint-plugin":"^4.33.0","@babel/plugin-proposal-decorators":"^7.19.3","@babel/plugin-transform-react-jsx":"^7.19.0","@babel/plugin-proposal-class-properties":"^7.17.12"},"_npmOperationalInternal":{"tmp":"tmp/lens-extension-cc_5.1.0_1664474416592_0.9401223207362712","host":"s3://npm-registry-packages"}},"5.2.0":{"name":"@mirantis/lens-extension-cc","version":"5.2.0","keywords":["lens","mirantis","cluster"],"author":{"url":"https://github.com/stefcameron","name":"Stefan Cameron"},"license":"MIT","_id":"@mirantis/lens-extension-cc@5.2.0","maintainers":[{"name":"stefcameron","email":"stefan@stefcameron.com"}],"homepage":"https://github.com/Mirantis/lens-extension-cc#readme","bugs":{"url":"https://github.com/Mirantis/lens-extension-cc/issues"},"dist":{"shasum":"061bbbd96439f606923fdfdb1e8bc7d8160aeb59","tarball":"https://registry.npmjs.org/@mirantis/lens-extension-cc/-/lens-extension-cc-5.2.0.tgz","fileCount":11,"integrity":"sha512-8i9JR4uz1Mn2GjWB7kiXhbPNA4V/f0co4/3mjvA23lc2mSQHn0NeoMpcO8jgcwvAxiog7fyjjcwbEKldn+dXfw==","signatures":[{"sig":"MEYCIQDGAuhEf5X1kb3zpTe4lzN7vgeuUXLZfd6tZRJrVd6CVQIhAL2SQC5EhjNm9U0lvKy45ayDtXsz3XM0KZtVFpnuBfld","keyid":"SHA256:jl3bwswu80PjjokCgh0o2w5c2U4LhQAE57gj9cz1kzA"}],"unpackedSize":79380179,"npm-signature":"-----BEGIN PGP SIGNATURE-----\r\nVersion: OpenPGP.js v4.10.10\r\nComment: https://openpgpjs.org\r\n\r\nwsFzBAEBCAAGBQJjSIh8ACEJED1NWxICdlZqFiEECWMYAoorWMhJKdjhPU1b\r\nEgJ2Vmr4Zw//WYGBOXzVWQ9UWUMAJQpcbHG/ZQYCDEan/3rAp3jHyOoGnZFs\r\nanBOUSwwx8sJaJh4IQ18AP7zT78H5mP8J1RIlg1KQ2Iti9G95DZlLJt5ukbJ\r\nIf3QFRSA87e6bVZzKmYX3WA7GgeajNgf6KCv65NxiBlAtMYlSk827wMKN1dk\r\nlRsIZcFW49dx0PSVMujwsvhfCRBmhMdhBFXyEnxqraFna2eE7xI4o0stdrz2\r\nHv0v869D8kKCu4zm48GlvWoXBvNB75UFHJpE6RLBqJtuVFOo5mD92jLC8cJR\r\nCpqAxReEumJ/Da1hJ4NlEMRbRrok5mSwWyUYXng/maUsm+HkmsqZnLFo4bxu\r\najWzPelnL2B044GDOUVJh0MZwV80EldLSYB7IUmRNGYaCZz317kG1mgrYCYV\r\nzqEbkXeyX7u8d43S5iwS5kdWxZT81BnZdCuGRhRW2R2p6kScz257ZQYqEe8a\r\n38/XutnBbWMnvJWSIcv214wCrh3gRXRBasRMoW3KOGKktA9I2rANTGPYoG5c\r\n2/ZWgRziVGHlo4Pokth5tkSgEZdD/Bkez8M4K5xkKNkkXWXfz12EBfDyd7Ut\r\nixJ4V8RsxHLgaCnMVioSouI7YPsur7ASFE9B8jpEvYG3jB1VslaLRSm66DNS\r\nc0FHvpxE/4ZK60Z2ngHihqU0X3cjGWZVUFE=\r\n=Epvo\r\n-----END PGP SIGNATURE-----\r\n"},"main":"dist/main.js","engines":{"lens":"^6.0.0"},"gitHead":"67a6b1ebcb2dc4661f3bf3d9aefcf0f69b630613","scripts":{"dev":"TARGET=development yarn build","fmt":"prettier --write \"{*,src/**/*,tools/**/*,test/**/*,__mocks__/**/*}.+(js|mjs|ts*|yml|json)\"","lint":"eslint \"{*,src/**/*,tools/**/*,test/**/*,__mocks__/**/*}.+(js|mjs|ts*)\"","test":"yarn lint && yarn fmt:check && yarn test:unit","babel":"babel src --out-dir dist_babel","build":"yarn clean && BABEL_ENV=build webpack","clean":"rm -rf ./dist && rm -rf ./dist_babel","start":"TARGET=development yarn build --watch","prepack":"yarn build && yarn download:kubelogin:all && yarn download:kubelogin:license","prebabel":"rm -rf ./dist_babel","prestart":"yarn download:kubelogin","fmt:check":"prettier --check \"{*,src/**/*,tools/**/*,test/**/*,__mocks__/**/*}.+(js|mjs|ts*|yml|json)\"","test:unit":"jest --colors --config jest.config.mjs","test:coverage":"yarn test:unit --coverage","create:bin:nix":"mkdir -p ./bin","prepublishOnly":"yarn test","create:bin:windows":"sh -c \"mkdir -p ./bin\"","download:kubelogin":"run-script-os","download:kubelogin:all":"yarn download:kubelogin:macos && yarn download:kubelogin:linux && yarn download:kubelogin:windows","download:kubelogin:linux":"yarn create:bin:nix && ([[ -f ./bin/kubelogin-linux-amd64 ]] || (mkdir -p ./tmp && cd ./tmp && curl -slL https://github.com/int128/kubelogin/releases/download/v1.25.3/kubelogin_linux_amd64.zip | tar -xz && mv kubelogin ../bin/kubelogin-linux-amd64 && chmod +x ../bin/kubelogin-linux-amd64 && cd .. && rm -rf ./tmp))","download:kubelogin:macos":"yarn create:bin:nix && yarn download:kubelogin:macos-amd64 && yarn download:kubelogin:macos-arm64","download:kubelogin:license":"run-script-os","download:kubelogin:windows":"yarn create:bin:windows && sh -c \"[[ -f ./bin/kubelogin-win-amd64.exe ]] || (mkdir -p ./tmp && cd ./tmp && curl -slL https://github.com/int128/kubelogin/releases/download/v1.25.3/kubelogin_windows_amd64.zip | tar -xz && mv kubelogin.exe ../bin/kubelogin-win-amd64.exe && chmod +x ../bin/kubelogin-win-amd64.exe && cd .. && rm -rf ./tmp)\"","download:kubelogin:license:nix":"yarn create:bin:nix && ([[ -f ./bin/kubelogin-license.txt ]] || curl -slL https://raw.githubusercontent.com/int128/kubelogin/v1.25.3/LICENSE > ./bin/kubelogin-license.txt)","download:kubelogin:macos-amd64":"[[ -f ./bin/kubelogin-macos-amd64 ]] || (mkdir -p ./tmp && cd ./tmp && curl -slL https://github.com/int128/kubelogin/releases/download/v1.25.3/kubelogin_darwin_amd64.zip | tar -xz && mv kubelogin ../bin/kubelogin-macos-amd64 && chmod +x ../bin/kubelogin-macos-amd64 && cd .. && rm -rf ./tmp)","download:kubelogin:macos-arm64":"[[ -f ./bin/kubelogin-macos-arm64 ]] || (mkdir -p ./tmp && cd ./tmp && curl -slL https://github.com/int128/kubelogin/releases/download/v1.25.3/kubelogin_darwin_arm64.zip | tar -xz && mv kubelogin ../bin/kubelogin-macos-arm64 && chmod +x ../bin/kubelogin-macos-arm64 && cd .. && rm -rf ./tmp)","download:kubelogin:license:windows":"yarn create:bin:windows && sh -c \"[[ -f ./bin/kubelogin-license.txt ]] || curl -slL https://raw.githubusercontent.com/int128/kubelogin/v1.25.3/LICENSE > ./bin/kubelogin-license.txt\""},"_npmUser":{"name":"stefcameron","email":"stefan@stefcameron.com"},"renderer":"dist/renderer.js","publisher":"mirantis","repository":{"url":"git+https://github.com/Mirantis/lens-extension-cc.git","type":"git"},"_npmVersion":"8.19.2","description":"Lens extension that loads Mirantis Container Cloud clusters.","directories":{},"_nodeVersion":"18.9.1","dependencies":{},"_hasShrinkwrap":false,"devDependencies":{"jest":"^29.1.2","mobx":"^6.6.2","yaml":"^2.1.3","dayjs":"^1.11.5","react":"^17.0.2","rtvjs":"^4.1.0","eslint":"^7.32.0","lodash":"^4.17.21","webpack":"^5.74.0","electron":"^19.1.1","prettier":"^2.7.1","react-dom":"^17.0.2","ts-loader":"^9.4.1","@babel/cli":"^7.19.3","babel-jest":"^29.1.2","mobx-react":"^7.5.3","node-fetch":"^2.6.7","prop-types":"^15.8.1","typescript":"^4.8.4","@babel/core":"^7.19.3","@types/node":"^18.8.5","webpack-cli":"^4.10.0","@emotion/css":"^11.10.0","@types/react":"^18.0.9","babel-loader":"^8.2.5","browserslist":"^4.21.4","query-string":"^7.1.1","react-select":"^5.5.0","@emotion/core":"^11.0.0","@emotion/jest":"^11.10.0","run-script-os":"^1.1.6","@emotion/react":"^11.10.4","@emotion/styled":"^11.10.4","jest-fetch-mock":"^3.0.3","abort-controller":"^3.0.0","@babel/preset-env":"^7.19.4","jest-mock-console":"^2.0.0","eslint-plugin-jest":"^27.1.1","@babel/preset-react":"^7.18.6","@k8slens/extensions":"^6.1.9","@types/react-router":"^5.1.19","babel-plugin-lodash":"^3.3.4","eslint-plugin-react":"^7.31.10","jest-transform-stub":"^2.0.0","@babel/eslint-parser":"^7.19.1","@testing-library/dom":"^8.19.0","@emotion/babel-plugin":"^11.10.2","@testing-library/react":"^12.1.4","eslint-config-prettier":"^8.5.0","eslint-plugin-jest-dom":"^4.0.2","jest-environment-jsdom":"^29.1.2","@babel/preset-typescript":"^7.18.6","@testing-library/jest-dom":"^5.16.5","@typescript-eslint/parser":"^4.33.0","eslint-plugin-react-hooks":"^4.6.0","@testing-library/user-event":"^14.4.3","babel-plugin-module-resolver":"^4.1.0","eslint-plugin-testing-library":"^5.7.2","@typescript-eslint/eslint-plugin":"^4.33.0","@babel/plugin-proposal-decorators":"^7.19.3","@babel/plugin-transform-react-jsx":"^7.19.0","@babel/plugin-proposal-class-properties":"^7.17.12"},"_npmOperationalInternal":{"tmp":"tmp/lens-extension-cc_5.2.0_1665697915842_0.09462864172510299","host":"s3://npm-registry-packages"}},"5.2.1":{"name":"@mirantis/lens-extension-cc","version":"5.2.1","keywords":["lens","mirantis","cluster"],"author":{"url":"https://github.com/stefcameron","name":"Stefan Cameron"},"license":"MIT","_id":"@mirantis/lens-extension-cc@5.2.1","maintainers":[{"name":"stefcameron","email":"stefan@stefcameron.com"}],"homepage":"https://github.com/Mirantis/lens-extension-cc#readme","bugs":{"url":"https://github.com/Mirantis/lens-extension-cc/issues"},"dist":{"shasum":"2bc0caa8fd3a04ded46d287319ba4a3723ed86f9","tarball":"https://registry.npmjs.org/@mirantis/lens-extension-cc/-/lens-extension-cc-5.2.1.tgz","fileCount":11,"integrity":"sha512-ox+sN6ZCKCjVb08Hf2SUE+g2Ktev51PbcbJ2/N3VSJfwFOjdMdezgyxomBBKHIra+E6N2AEk9Uln1PTnWUCwmg==","signatures":[{"sig":"MEUCICGf8SPo3Td2sTGsytj7nDQV/J+EGGDNDvnIC6keROC4AiEA0px8HRi6SWT3+eRcvD1A2trgQBWXypO1F7KC9VBGrmY=","keyid":"SHA256:jl3bwswu80PjjokCgh0o2w5c2U4LhQAE57gj9cz1kzA"}],"unpackedSize":79283416,"npm-signature":"-----BEGIN PGP SIGNATURE-----\r\nVersion: OpenPGP.js v4.10.10\r\nComment: https://openpgpjs.org\r\n\r\nwsFzBAEBCAAGBQJjbUxyACEJED1NWxICdlZqFiEECWMYAoorWMhJKdjhPU1b\r\nEgJ2VmoK9RAAlRvcAx0YWzGRyqb8zae62RqrnXlBWb4n4t478DqqKgTxR21M\r\nsoqEp/pwJTQnxffOw7GVSLqRRWiSIugWEm4CcN+9BFW4cUoDARLq3lPSsQBv\r\no6M8jfivTpt2mQPDKpZktLTo0tQGFJHcw7taV0AXsXDvaFqjc03SGkVV0Fk+\r\nDOscSN80HLgfzwrRdrMC1fVi1pKQmD+CqEq/iPjuCBIghui2c7v6Mj/MBbm+\r\nOtxTO8MfGjcpr0cmt/JBltu2vOEgtQDALOlpIjAD88NZeMqYf+xj5D4iyfDx\r\nj2AXdprS8S3lOBE6yND/aeRxKBa9jXZxir3jLGT4fNYPKSd0ytX0bKdd+tGI\r\ne4lteAX2D3ClBjdI6MCWaQel5uVE4kLlfIP7YJTPw+veQl5hVBbXjrP8FFjt\r\ngVqg+iCqPQ1QCy1EMrHXO9OATJmMmlNRBDN0C8Z8BTTxjqPiso9jQLWrid19\r\ngcGOtIYJ5kbf5OT5kOry5I0eey86Z13f2VGFr1c7SvKaOe+/gKJ9Yts4q0Ur\r\nYWk9o7FHXVSH1NWlkrzNJ2IhxuAbqvzdJLB5NtKEmQGqHj1xoeQHSFf5ol0t\r\nhBI6gz5FuSUSGVAh+K/oYcH8p5IMo9o8ntWIgvn+pW90k8JO6V/O7cPnUVOz\r\nt7X80O9IZuhn+5jc91YPajbvpWAWl5e3U2k=\r\n=DeBT\r\n-----END PGP SIGNATURE-----\r\n"},"main":"dist/main.js","engines":{"lens":"^6.0.0"},"gitHead":"51a587092474e5a25f2c31be956cad54dbf2cf05","scripts":{"dev":"TARGET=development yarn build","fmt":"prettier --write \"{*,src/**/*,tools/**/*,test/**/*,__mocks__/**/*}.+(js|mjs|ts*|yml|json)\"","lint":"eslint \"{*,src/**/*,tools/**/*,test/**/*,__mocks__/**/*}.+(js|mjs|ts*)\"","test":"yarn lint && yarn fmt:check && yarn test:unit","babel":"babel src --out-dir dist_babel","build":"yarn clean && BABEL_ENV=build webpack","clean":"rm -rf ./dist && rm -rf ./dist_babel","start":"TARGET=development yarn build --watch","prepack":"yarn build && yarn download:kubelogin:all && yarn download:kubelogin:license","prebabel":"rm -rf ./dist_babel","prestart":"yarn download:kubelogin","fmt:check":"prettier --check \"{*,src/**/*,tools/**/*,test/**/*,__mocks__/**/*}.+(js|mjs|ts*|yml|json)\"","test:unit":"jest --colors --config jest.config.mjs","test:coverage":"yarn test:unit --coverage","create:bin:nix":"mkdir -p ./bin","prepublishOnly":"yarn test","create:bin:windows":"sh -c \"mkdir -p ./bin\"","download:kubelogin":"run-script-os","download:kubelogin:all":"yarn download:kubelogin:macos && yarn download:kubelogin:linux && yarn download:kubelogin:windows","download:kubelogin:linux":"yarn create:bin:nix && ([[ -f ./bin/kubelogin-linux-amd64 ]] || (mkdir -p ./tmp && cd ./tmp && curl -slL https://github.com/int128/kubelogin/releases/download/v1.25.3/kubelogin_linux_amd64.zip | tar -xz && mv kubelogin ../bin/kubelogin-linux-amd64 && chmod +x ../bin/kubelogin-linux-amd64 && cd .. && rm -rf ./tmp))","download:kubelogin:macos":"yarn create:bin:nix && yarn download:kubelogin:macos-amd64 && yarn download:kubelogin:macos-arm64","download:kubelogin:license":"run-script-os","download:kubelogin:windows":"yarn create:bin:windows && sh -c \"[[ -f ./bin/kubelogin-win-amd64.exe ]] || (mkdir -p ./tmp && cd ./tmp && curl -slL https://github.com/int128/kubelogin/releases/download/v1.25.3/kubelogin_windows_amd64.zip | tar -xz && mv kubelogin.exe ../bin/kubelogin-win-amd64.exe && chmod +x ../bin/kubelogin-win-amd64.exe && cd .. && rm -rf ./tmp)\"","download:kubelogin:license:nix":"yarn create:bin:nix && ([[ -f ./bin/kubelogin-license.txt ]] || curl -slL https://raw.githubusercontent.com/int128/kubelogin/v1.25.3/LICENSE > ./bin/kubelogin-license.txt)","download:kubelogin:macos-amd64":"[[ -f ./bin/kubelogin-macos-amd64 ]] || (mkdir -p ./tmp && cd ./tmp && curl -slL https://github.com/int128/kubelogin/releases/download/v1.25.3/kubelogin_darwin_amd64.zip | tar -xz && mv kubelogin ../bin/kubelogin-macos-amd64 && chmod +x ../bin/kubelogin-macos-amd64 && cd .. && rm -rf ./tmp)","download:kubelogin:macos-arm64":"[[ -f ./bin/kubelogin-macos-arm64 ]] || (mkdir -p ./tmp && cd ./tmp && curl -slL https://github.com/int128/kubelogin/releases/download/v1.25.3/kubelogin_darwin_arm64.zip | tar -xz && mv kubelogin ../bin/kubelogin-macos-arm64 && chmod +x ../bin/kubelogin-macos-arm64 && cd .. && rm -rf ./tmp)","download:kubelogin:license:windows":"yarn create:bin:windows && sh -c \"[[ -f ./bin/kubelogin-license.txt ]] || curl -slL https://raw.githubusercontent.com/int128/kubelogin/v1.25.3/LICENSE > ./bin/kubelogin-license.txt\""},"_npmUser":{"name":"stefcameron","email":"stefan@stefcameron.com"},"renderer":"dist/renderer.js","publisher":"mirantis","repository":{"url":"git+https://github.com/Mirantis/lens-extension-cc.git","type":"git"},"_npmVersion":"8.19.2","description":"Lens extension that loads Mirantis Container Cloud clusters.","directories":{},"_nodeVersion":"18.9.1","dependencies":{},"_hasShrinkwrap":false,"devDependencies":{"jest":"^29.3.1","mobx":"^6.6.2","yaml":"^2.1.3","dayjs":"^1.11.6","react":"^17.0.2","rtvjs":"^4.1.0","eslint":"^7.32.0","lodash":"^4.17.21","webpack":"^5.75.0","electron":"^19.1.1","prettier":"^2.7.1","react-dom":"^17.0.2","ts-loader":"^9.4.1","@babel/cli":"^7.19.3","babel-jest":"^29.3.1","mobx-react":"^7.5.3","node-fetch":"^2.6.7","prop-types":"^15.8.1","typescript":"^4.8.4","@babel/core":"^7.20.2","@types/node":"^18.11.9","webpack-cli":"^4.10.0","@emotion/css":"^11.10.5","@types/react":"^18.0.9","babel-loader":"^9.1.0","browserslist":"^4.21.4","query-string":"^7.1.1","react-select":"^5.6.0","@emotion/core":"^11.0.0","@emotion/jest":"^11.10.5","run-script-os":"^1.1.6","@emotion/react":"^11.10.5","@emotion/styled":"^11.10.5","@babel/preset-env":"^7.20.2","jest-mock-console":"^2.0.0","eslint-plugin-jest":"^27.1.4","@babel/preset-react":"^7.18.6","@k8slens/extensions":"^6.1.9","@types/react-router":"^5.1.19","babel-plugin-lodash":"^3.3.4","eslint-plugin-react":"^7.31.10","jest-transform-stub":"^2.0.0","@babel/eslint-parser":"^7.19.1","@testing-library/dom":"^8.19.0","@emotion/babel-plugin":"^11.10.2","@testing-library/react":"^12.1.4","eslint-config-prettier":"^8.5.0","eslint-plugin-jest-dom":"^4.0.2","jest-environment-jsdom":"^29.3.1","@babel/preset-typescript":"^7.18.6","@testing-library/jest-dom":"^5.16.5","@typescript-eslint/parser":"^4.33.0","eslint-plugin-react-hooks":"^4.6.0","@testing-library/user-event":"^14.4.3","babel-plugin-module-resolver":"^4.1.0","eslint-plugin-testing-library":"^5.9.1","@typescript-eslint/eslint-plugin":"^4.33.0","@babel/plugin-proposal-decorators":"^7.20.2","@babel/plugin-transform-react-jsx":"^7.19.0","@babel/plugin-proposal-class-properties":"^7.17.12"},"_npmOperationalInternal":{"tmp":"tmp/lens-extension-cc_5.2.1_1668107377369_0.5769435586119889","host":"s3://npm-registry-packages"}},"5.2.2":{"name":"@mirantis/lens-extension-cc","version":"5.2.2","keywords":["lens","mirantis","cluster"],"author":{"url":"https://github.com/stefcameron","name":"Stefan Cameron"},"license":"MIT","_id":"@mirantis/lens-extension-cc@5.2.2","maintainers":[{"name":"stefcameron","email":"stefan@stefcameron.com"}],"homepage":"https://github.com/Mirantis/lens-extension-cc#readme","bugs":{"url":"https://github.com/Mirantis/lens-extension-cc/issues"},"dist":{"shasum":"139a8f8bf1bd083819bceddb8be50d20eb1dbfd6","tarball":"https://registry.npmjs.org/@mirantis/lens-extension-cc/-/lens-extension-cc-5.2.2.tgz","fileCount":11,"integrity":"sha512-WkjRSFLbLx0e93GngQ0+9OqcQIsu1MmEXA7ucbQZY2B8rj8Z9BE2JKLjyjCUh3FQBb1CaocG9OBBlPwNK5Fnpw==","signatures":[{"sig":"MEUCIHURjIP4BgN8e07XuxqyxBU569Hok4N6x2tp1CyZOTmqAiEAlCmI5MLQo0e71/bSuUHuh5VxEyMe/PY6XqsIUubyzzg=","keyid":"SHA256:jl3bwswu80PjjokCgh0o2w5c2U4LhQAE57gj9cz1kzA"}],"unpackedSize":79693843,"npm-signature":"-----BEGIN PGP SIGNATURE-----\r\nVersion: OpenPGP.js v4.10.10\r\nComment: https://openpgpjs.org\r\n\r\nwsFzBAEBCAAGBQJjiRFAACEJED1NWxICdlZqFiEECWMYAoorWMhJKdjhPU1b\r\nEgJ2VmojlA//cZTk0bR6JXdk22HtjcCze4mASFSoP8J9gx1Eaj3x6xjzw3nT\r\nCktgFi8biLBRSR6BobdnbNhjMCh/kEjQSiByh3Ir2bXcbuIO9EN7yFPi1bIB\r\n0bsgBYMpf32piZo+ev0ofpLhRb3dIhLvk1ybWhDmz5TFpKHGIMSDPNKp41WI\r\n0uH4rV27aY1uHs+t3Gy5RDaZKg5xl0UdS7a1NhkxsI4yKJ3WvINq1C7KOhE6\r\nJDZhymEzY0EVHvqN1yJ80y6YUFMOnCcXElv8CaumlVM4LlTvXLxLv+6d3BW6\r\n3gQZKg7MVYqt2pO1eT1UB66x4I1A0q7sXouEczXLI+FIDptPw/7KF/zRJXoa\r\nj/yPZuWVVrDI+vpOSBMlBYJZ05t6vvHw/k66HPJGBf8tkkDOI56ou2h5mr0O\r\nJLGHBzvpiNvrVhYFpJnzpGs0p3v6/+a88tpC5+20xrC2jTb2/VnrcojuNDkz\r\n6HANAZTav7aIzBdN7EaFYc5h0NZvwJ38CMIf4k4ga4Np828MMXFZaErYs2Dx\r\nCLdBMmMujwtBlZYpz0KqGAVyMlRDriKT1FE4j4cfxn1ckBnYSP3tjnubvXDK\r\nQm77fDysZcw+HWvOIShG4/UR6hBLYLpmrIwNUjLY+5gj/coE9ZOCvEqq4eMP\r\nvi/zx+sPV2ueezBTPJtQ4rFwk2haLeuXQsk=\r\n=oyhN\r\n-----END PGP SIGNATURE-----\r\n"},"main":"dist/main.js","engines":{"lens":"^6.0.0"},"gitHead":"eba190942c38671cd6387bcdcc8dd2b626c231b4","scripts":{"dev":"TARGET=development yarn build","fmt":"prettier --write \"{*,src/**/*,tools/**/*,test/**/*,__mocks__/**/*}.+(js|mjs|ts*|yml|json)\"","lint":"eslint \"{*,src/**/*,tools/**/*,test/**/*,__mocks__/**/*}.+(js|mjs|ts*)\"","test":"yarn lint && yarn fmt:check && yarn test:unit","babel":"babel src --out-dir dist_babel","build":"yarn clean && BABEL_ENV=build webpack","clean":"rm -rf ./dist && rm -rf ./dist_babel","start":"TARGET=development yarn build --watch","prepack":"yarn build && yarn download:kubelogin:all && yarn download:kubelogin:license","prebabel":"rm -rf ./dist_babel","prestart":"yarn download:kubelogin","fmt:check":"prettier --check \"{*,src/**/*,tools/**/*,test/**/*,__mocks__/**/*}.+(js|mjs|ts*|yml|json)\"","test:unit":"jest --colors --config jest.config.mjs","test:coverage":"yarn test:unit --coverage","create:bin:nix":"mkdir -p ./bin","prepublishOnly":"yarn test","create:bin:windows":"sh -c \"mkdir -p ./bin\"","download:kubelogin":"run-script-os","download:kubelogin:all":"yarn download:kubelogin:macos && yarn download:kubelogin:linux && yarn download:kubelogin:windows","download:kubelogin:linux":"yarn create:bin:nix && ([[ -f ./bin/kubelogin-linux-amd64 ]] || (mkdir -p ./tmp && cd ./tmp && curl -slL https://github.com/int128/kubelogin/releases/download/v1.25.3/kubelogin_linux_amd64.zip | tar -xz && mv kubelogin ../bin/kubelogin-linux-amd64 && chmod +x ../bin/kubelogin-linux-amd64 && cd .. && rm -rf ./tmp))","download:kubelogin:macos":"yarn create:bin:nix && yarn download:kubelogin:macos-amd64 && yarn download:kubelogin:macos-arm64","download:kubelogin:license":"run-script-os","download:kubelogin:windows":"yarn create:bin:windows && sh -c \"[[ -f ./bin/kubelogin-win-amd64.exe ]] || (mkdir -p ./tmp && cd ./tmp && curl -slL https://github.com/int128/kubelogin/releases/download/v1.25.3/kubelogin_windows_amd64.zip | tar -xz && mv kubelogin.exe ../bin/kubelogin-win-amd64.exe && chmod +x ../bin/kubelogin-win-amd64.exe && cd .. && rm -rf ./tmp)\"","download:kubelogin:license:nix":"yarn create:bin:nix && ([[ -f ./bin/kubelogin-license.txt ]] || curl -slL https://raw.githubusercontent.com/int128/kubelogin/v1.25.3/LICENSE > ./bin/kubelogin-license.txt)","download:kubelogin:macos-amd64":"[[ -f ./bin/kubelogin-macos-amd64 ]] || (mkdir -p ./tmp && cd ./tmp && curl -slL https://github.com/int128/kubelogin/releases/download/v1.25.3/kubelogin_darwin_amd64.zip | tar -xz && mv kubelogin ../bin/kubelogin-macos-amd64 && chmod +x ../bin/kubelogin-macos-amd64 && cd .. && rm -rf ./tmp)","download:kubelogin:macos-arm64":"[[ -f ./bin/kubelogin-macos-arm64 ]] || (mkdir -p ./tmp && cd ./tmp && curl -slL https://github.com/int128/kubelogin/releases/download/v1.25.3/kubelogin_darwin_arm64.zip | tar -xz && mv kubelogin ../bin/kubelogin-macos-arm64 && chmod +x ../bin/kubelogin-macos-arm64 && cd .. && rm -rf ./tmp)","download:kubelogin:license:windows":"yarn create:bin:windows && sh -c \"[[ -f ./bin/kubelogin-license.txt ]] || curl -slL https://raw.githubusercontent.com/int128/kubelogin/v1.25.3/LICENSE > ./bin/kubelogin-license.txt\""},"_npmUser":{"name":"stefcameron","email":"stefan@stefcameron.com"},"renderer":"dist/renderer.js","publisher":"mirantis","repository":{"url":"git+https://github.com/Mirantis/lens-extension-cc.git","type":"git"},"_npmVersion":"9.1.1","description":"Lens extension that loads Mirantis Container Cloud clusters.","directories":{},"_nodeVersion":"19.1.0","dependencies":{},"_hasShrinkwrap":false,"devDependencies":{"jest":"^29.3.1","mobx":"^6.7.0","yaml":"^2.1.3","dayjs":"^1.11.6","react":"^17.0.2","rtvjs":"^4.1.0","eslint":"^7.32.0","lodash":"^4.17.21","webpack":"^5.75.0","electron":"^19.1.1","prettier":"^2.8.0","react-dom":"^17.0.2","ts-loader":"^9.4.2","@babel/cli":"^7.19.3","babel-jest":"^29.3.1","mobx-react":"^7.6.0","node-fetch":"^2.6.7","prop-types":"^15.8.1","typescript":"^4.9.3","@babel/core":"^7.20.5","@types/node":"^18.11.10","webpack-cli":"^5.0.0","@emotion/css":"^11.10.5","@types/react":"^18.0.9","babel-loader":"^9.1.0","browserslist":"^4.21.4","query-string":"^7.1.1","react-select":"^5.7.0","@emotion/core":"^11.0.0","@emotion/jest":"^11.10.5","run-script-os":"^1.1.6","@emotion/react":"^11.10.5","@emotion/styled":"^11.10.5","@babel/preset-env":"^7.20.2","jest-mock-console":"^2.0.0","eslint-plugin-jest":"^27.1.6","@babel/preset-react":"^7.18.6","@k8slens/extensions":"^6.1.9","@types/react-router":"^5.1.19","babel-plugin-lodash":"^3.3.4","eslint-plugin-react":"^7.31.11","jest-transform-stub":"^2.0.0","@babel/eslint-parser":"^7.19.1","@testing-library/dom":"^8.19.0","@emotion/babel-plugin":"^11.10.2","@testing-library/react":"^12.1.4","eslint-config-prettier":"^8.5.0","eslint-plugin-jest-dom":"^4.0.3","jest-environment-jsdom":"^29.3.1","@babel/preset-typescript":"^7.18.6","@testing-library/jest-dom":"^5.16.5","@typescript-eslint/parser":"^4.33.0","eslint-plugin-react-hooks":"^4.6.0","@testing-library/user-event":"^14.4.3","babel-plugin-module-resolver":"^4.1.0","eslint-plugin-testing-library":"^5.9.1","@typescript-eslint/eslint-plugin":"^4.33.0","@babel/plugin-proposal-decorators":"^7.20.5","@babel/plugin-transform-react-jsx":"^7.19.0","@babel/plugin-proposal-class-properties":"^7.17.12"},"_npmOperationalInternal":{"tmp":"tmp/lens-extension-cc_5.2.2_1669927231643_0.3239838721472781","host":"s3://npm-registry-packages"}},"5.3.0":{"name":"@mirantis/lens-extension-cc","version":"5.3.0","keywords":["lens","mirantis","cluster"],"author":{"url":"https://github.com/stefcameron","name":"Stefan Cameron"},"license":"MIT","_id":"@mirantis/lens-extension-cc@5.3.0","maintainers":[{"name":"stefcameron","email":"stefan@stefcameron.com"}],"homepage":"https://github.com/Mirantis/lens-extension-cc#readme","bugs":{"url":"https://github.com/Mirantis/lens-extension-cc/issues"},"dist":{"shasum":"9b9a4f63ba690b5dcb7f1b1839d713fa3979907b","tarball":"https://registry.npmjs.org/@mirantis/lens-extension-cc/-/lens-extension-cc-5.3.0.tgz","fileCount":11,"integrity":"sha512-0M/mS0D7Ar2tvmoGhuEiou2Cs6OdynfDsD1owILyZJVw733XgsdaJzQtPNbkkUzz/8YFrNhvVE5Z4/CjtkjBOQ==","signatures":[{"sig":"MEUCIF6hCwJwjpRBCd3nwTBHLStaL/Yfjaj6TD2xJ1CkYQvsAiEAiFw6mN1utYJFMt5oQy3ukgUpKYaorAeRILDoerQ/c3A=","keyid":"SHA256:jl3bwswu80PjjokCgh0o2w5c2U4LhQAE57gj9cz1kzA"}],"unpackedSize":79880044,"npm-signature":"-----BEGIN PGP SIGNATURE-----\r\nVersion: OpenPGP.js v4.10.10\r\nComment: https://openpgpjs.org\r\n\r\nwsFzBAEBCAAGBQJjtzmEACEJED1NWxICdlZqFiEECWMYAoorWMhJKdjhPU1b\r\nEgJ2VmrskQ/+LbQ8T6Rde6XKaQbjy/IOuehoPMUdeKjxg+Qr8iPUDIlEycsC\r\nVSqugRDkOyQS4HUwXeu47Pg6V5XL1IMHJSYFLkBdWeYh4KhrK/2pM77o7pgG\r\nPTjsRXhvzvJ72CcQoTG0av9/DPikrPjenO25ybLj9Nqq6IaXmsxXPsGJ1tih\r\nqUdi9PEchbt0nCSmAAzfW80c8tnsNwqzF6qVuIaM4r2gLkRwiy8dCGn+Xn11\r\nyL4vIpkLlwqCJ3vVcTuyF4nf0MyyYXJsQxsmxCEEZBLYWUUpqgYm5mDets0m\r\nUZGLs8+JwrxS6zr7oPx4VKSrsWCXVgGcVdhD6h91Q84bbSaN2Jasy0RHaKah\r\nePQF+i7L8sKZimwmy9K+9xOxuwyOIy2Tr1X6cQ7a1Zl1WOjun9aqIForxSp3\r\nR74pEQHZusboYo2gG24h6xN2LP0zYwRHwsOHLsa3xlyLR5JTjwkYUr8lQCgU\r\nGcchwJ+T/Og9yFTI7seNM/ocmhY51KksC7gJgQqH5h3k+/AYWORy6EoRrqcO\r\nEqYhDAh4eh8Q1er4zymSxDNVt9AA4NT519EDt5fYtcTGWC2dlY+/mTclNrFj\r\nmI2xqjafdLegoYNI2DthxVjLczCTpyoay0M2Ks0ttzdIGI2+pJswHGFoVvSA\r\n7PBaYpoTESTyniMblc+DHb9pQrma2LOrtWg=\r\n=2zLW\r\n-----END PGP SIGNATURE-----\r\n"},"main":"dist/main.js","engines":{"lens":"^6.0.0"},"gitHead":"1fc58e5239d5cfb163a2aa475408eaee13020c99","scripts":{"dev":"TARGET=development yarn build","fmt":"prettier --write \"{*,src/**/*,tools/**/*,test/**/*,__mocks__/**/*}.+(js|mjs|ts*|yml|json)\"","lint":"eslint \"{*,src/**/*,tools/**/*,test/**/*,__mocks__/**/*}.+(js|mjs|ts*)\"","test":"yarn lint && yarn fmt:check && yarn test:unit","babel":"babel src --out-dir dist_babel","build":"yarn clean && BABEL_ENV=build webpack","clean":"rm -rf ./dist && rm -rf ./dist_babel","start":"TARGET=development yarn build --watch","prepack":"yarn build && yarn download:kubelogin:all && yarn download:kubelogin:license","prebabel":"rm -rf ./dist_babel","prestart":"yarn download:kubelogin","fmt:check":"prettier --check \"{*,src/**/*,tools/**/*,test/**/*,__mocks__/**/*}.+(js|mjs|ts*|yml|json)\"","test:unit":"jest --colors --config jest.config.mjs","test:coverage":"yarn test:unit --coverage","create:bin:nix":"mkdir -p ./bin","prepublishOnly":"yarn test","create:bin:windows":"sh -c \"mkdir -p ./bin\"","download:kubelogin":"run-script-os","download:kubelogin:all":"yarn download:kubelogin:macos && yarn download:kubelogin:linux && yarn download:kubelogin:windows","download:kubelogin:linux":"yarn create:bin:nix && ([[ -f ./bin/kubelogin-linux-amd64 ]] || (mkdir -p ./tmp && cd ./tmp && curl -slL https://github.com/int128/kubelogin/releases/download/v1.25.3/kubelogin_linux_amd64.zip | tar -xz && mv kubelogin ../bin/kubelogin-linux-amd64 && chmod +x ../bin/kubelogin-linux-amd64 && cd .. && rm -rf ./tmp))","download:kubelogin:macos":"yarn create:bin:nix && yarn download:kubelogin:macos-amd64 && yarn download:kubelogin:macos-arm64","download:kubelogin:license":"run-script-os","download:kubelogin:windows":"yarn create:bin:windows && sh -c \"[[ -f ./bin/kubelogin-win-amd64.exe ]] || (mkdir -p ./tmp && cd ./tmp && curl -slL https://github.com/int128/kubelogin/releases/download/v1.25.3/kubelogin_windows_amd64.zip | tar -xz && mv kubelogin.exe ../bin/kubelogin-win-amd64.exe && chmod +x ../bin/kubelogin-win-amd64.exe && cd .. && rm -rf ./tmp)\"","download:kubelogin:license:nix":"yarn create:bin:nix && ([[ -f ./bin/kubelogin-license.txt ]] || curl -slL https://raw.githubusercontent.com/int128/kubelogin/v1.25.3/LICENSE > ./bin/kubelogin-license.txt)","download:kubelogin:macos-amd64":"[[ -f ./bin/kubelogin-macos-amd64 ]] || (mkdir -p ./tmp && cd ./tmp && curl -slL https://github.com/int128/kubelogin/releases/download/v1.25.3/kubelogin_darwin_amd64.zip | tar -xz && mv kubelogin ../bin/kubelogin-macos-amd64 && chmod +x ../bin/kubelogin-macos-amd64 && cd .. && rm -rf ./tmp)","download:kubelogin:macos-arm64":"[[ -f ./bin/kubelogin-macos-arm64 ]] || (mkdir -p ./tmp && cd ./tmp && curl -slL https://github.com/int128/kubelogin/releases/download/v1.25.3/kubelogin_darwin_arm64.zip | tar -xz && mv kubelogin ../bin/kubelogin-macos-arm64 && chmod +x ../bin/kubelogin-macos-arm64 && cd .. && rm -rf ./tmp)","download:kubelogin:license:windows":"yarn create:bin:windows && sh -c \"[[ -f ./bin/kubelogin-license.txt ]] || curl -slL https://raw.githubusercontent.com/int128/kubelogin/v1.25.3/LICENSE > ./bin/kubelogin-license.txt\""},"_npmUser":{"name":"stefcameron","email":"stefan@stefcameron.com"},"renderer":"dist/renderer.js","publisher":"mirantis","repository":{"url":"git+https://github.com/Mirantis/lens-extension-cc.git","type":"git"},"_npmVersion":"9.1.1","description":"Lens extension that loads Mirantis Container Cloud clusters.","directories":{},"_nodeVersion":"19.1.0","dependencies":{},"_hasShrinkwrap":false,"devDependencies":{"jest":"^29.3.1","mobx":"^6.7.0","yaml":"^2.2.1","dayjs":"^1.11.7","react":"^17.0.2","rtvjs":"^4.1.0","eslint":"^7.32.0","lodash":"^4.17.21","webpack":"^5.75.0","electron":"^19.1.9","prettier":"^2.8.1","react-dom":"^17.0.2","ts-loader":"^9.4.2","@babel/cli":"^7.20.7","babel-jest":"^29.3.1","mobx-react":"^7.6.0","node-fetch":"^2.6.7","prop-types":"^15.8.1","typescript":"^4.9.4","@babel/core":"^7.20.12","@types/node":"^18.11.18","webpack-cli":"^5.0.1","@emotion/css":"^11.10.5","@types/react":"^18.0.9","babel-loader":"^9.1.2","browserslist":"^4.21.4","query-string":"^8.0.3","react-select":"^5.7.0","@emotion/core":"^11.0.0","@emotion/jest":"^11.10.5","run-script-os":"^1.1.6","@emotion/react":"^11.10.5","@emotion/styled":"^11.10.5","@babel/preset-env":"^7.20.2","jest-mock-console":"^2.0.0","eslint-plugin-jest":"^27.2.0","@babel/preset-react":"^7.18.6","@k8slens/extensions":"^6.3.0","@types/react-router":"^5.1.20","babel-plugin-lodash":"^3.3.4","eslint-plugin-react":"^7.31.11","jest-transform-stub":"^2.0.0","@babel/eslint-parser":"^7.19.1","@testing-library/dom":"^8.19.1","@emotion/babel-plugin":"^11.10.2","@testing-library/react":"^12.1.4","eslint-config-prettier":"^8.6.0","eslint-plugin-jest-dom":"^4.0.3","jest-environment-jsdom":"^29.3.1","@babel/preset-typescript":"^7.18.6","@testing-library/jest-dom":"^5.16.5","@typescript-eslint/parser":"^4.33.0","eslint-plugin-react-hooks":"^4.6.0","@testing-library/user-event":"^14.4.3","babel-plugin-module-resolver":"^4.1.0","eslint-plugin-testing-library":"^5.9.1","@typescript-eslint/eslint-plugin":"^4.33.0","@babel/plugin-proposal-decorators":"^7.20.7","@babel/plugin-transform-react-jsx":"^7.20.7","@babel/plugin-proposal-class-properties":"^7.17.12"},"_npmOperationalInternal":{"tmp":"tmp/lens-extension-cc_5.3.0_1672952195720_0.9498202951021386","host":"s3://npm-registry-packages"}},"5.4.0":{"name":"@mirantis/lens-extension-cc","version":"5.4.0","keywords":["lens","mirantis","cluster"],"author":{"url":"https://github.com/stefcameron","name":"Stefan Cameron"},"license":"MIT","_id":"@mirantis/lens-extension-cc@5.4.0","maintainers":[{"name":"stefcameron","email":"stefan@stefcameron.com"}],"homepage":"https://github.com/Mirantis/lens-extension-cc#readme","bugs":{"url":"https://github.com/Mirantis/lens-extension-cc/issues"},"dist":{"shasum":"e7fb2bd815f83c8cc158294a7fb62b6b17e830f8","tarball":"https://registry.npmjs.org/@mirantis/lens-extension-cc/-/lens-extension-cc-5.4.0.tgz","fileCount":11,"integrity":"sha512-THuKkqxsm56/IlowJKQLB7kpmYNIcG9r2wbS0PEFcnMojAV3J/u7gEgmpPXmOyOS2wYZqHpGfJ+3NqC4BVKzPw==","signatures":[{"sig":"MEQCIDNWmKpuyVVEfsWGYknr7/3LkRVydyc9hJgsYa5h9Vb5AiBYoijgnIDRzxgXLqDDKQeYBVknAk7khQ2rWQCZ3m32bQ==","keyid":"SHA256:jl3bwswu80PjjokCgh0o2w5c2U4LhQAE57gj9cz1kzA"}],"unpackedSize":82150866,"npm-signature":"-----BEGIN PGP SIGNATURE-----\r\nVersion: OpenPGP.js v4.10.10\r\nComment: https://openpgpjs.org\r\n\r\nwsFzBAEBCAAGBQJj0tWJACEJED1NWxICdlZqFiEECWMYAoorWMhJKdjhPU1b\r\nEgJ2VmpRDw/9G2iHHUkQe665p57bXB3yFRoYgm4rITzZTLwVYRXSku2qsvX7\r\nFF4uocaNnmZc9OaeFlB6xpjq/kjIPri3Zmw5x+kM0wWHIVDo1MjMCcHCvqNE\r\nh5ojWIoAtBBiXxX65A5ehE6a3bj+RoMUTYQzj0Oh4tTWTpl0VAt719uTdODa\r\nism/i49Ptb7zvX2dviwfG17xbFyQpM1O94z8hoceEZVM5WpuIojqLe+g3xMA\r\nia0XY2q+lOOYR48ir0S8pzefi7BTd14jyA7XZpiX3ivpBSIt7/KUSAfunk9Q\r\nAbt1BbkN56r589Cb9vA5b2mePjxYE5KOsFcp35VqSzgwfoUt1eordghnsnkj\r\nwruIRKCBqUOqh/TMmFC28Tc2QHMDlILv+9f7Z1MM/+kfrIHiu9omIf36rw5b\r\nTK10fhGbFw86EM5HemcpABAi+dvzYwH0y8kT0yo3T0FPeX2DK+6KXcSb4/QG\r\nCvYQzAGpYTGJAhSFnDdKGf8cL8K5dTL9JaqYrth0CfCEj/hANzqi/ySLVbxl\r\n9thUcirQ8O9y8v1yLCbgt9OOZF+jGxFyCvUm2wTqS4+f4j06CY69Huc1wB5V\r\nGyJA4OnVqEqm3cQNefkMb1BTlzaZ4gTNZJRKBvTjL2mB8ygO1YtZQ2JKgSzN\r\nyUgpImeTxa7O0odWmj/QqJPSAXxu461XR48=\r\n=tU2G\r\n-----END PGP SIGNATURE-----\r\n"},"main":"dist/main.js","engines":{"lens":"^6.0.0"},"gitHead":"5272edee27338be2c29e8d4512916b7d198a7422","scripts":{"dev":"TARGET=development yarn build","fmt":"prettier --write \"{*,src/**/*,tools/**/*,test/**/*,__mocks__/**/*}.+(js|mjs|ts*|yml|json)\"","lint":"eslint \"{*,src/**/*,tools/**/*,test/**/*,__mocks__/**/*}.+(js|mjs|ts*)\"","test":"yarn lint && yarn fmt:check && yarn test:unit","babel":"babel src --out-dir dist_babel","build":"yarn clean && BABEL_ENV=build webpack","clean":"rm -rf ./dist && rm -rf ./dist_babel","start":"TARGET=development yarn build --watch","prepack":"yarn build && yarn download:kubelogin:all && yarn download:kubelogin:license","prebabel":"rm -rf ./dist_babel","prestart":"yarn download:kubelogin","fmt:check":"prettier --check \"{*,src/**/*,tools/**/*,test/**/*,__mocks__/**/*}.+(js|mjs|ts*|yml|json)\"","test:unit":"jest --colors --config jest.config.mjs","test:coverage":"yarn test:unit --coverage","create:bin:nix":"mkdir -p ./bin","prepublishOnly":"yarn test","create:bin:windows":"sh -c \"mkdir -p ./bin\"","download:kubelogin":"run-script-os","download:kubelogin:all":"yarn download:kubelogin:macos && yarn download:kubelogin:linux && yarn download:kubelogin:windows","download:kubelogin:linux":"yarn create:bin:nix && ([[ -f ./bin/kubelogin-linux-amd64 ]] || (mkdir -p ./tmp && cd ./tmp && curl -slL https://github.com/int128/kubelogin/releases/download/v1.26.0/kubelogin_linux_amd64.zip | tar -xz && mv kubelogin ../bin/kubelogin-linux-amd64 && chmod +x ../bin/kubelogin-linux-amd64 && cd .. && rm -rf ./tmp))","download:kubelogin:macos":"yarn create:bin:nix && yarn download:kubelogin:macos-amd64 && yarn download:kubelogin:macos-arm64","download:kubelogin:license":"run-script-os","download:kubelogin:windows":"yarn create:bin:windows && sh -c \"[[ -f ./bin/kubelogin-win-amd64.exe ]] || (mkdir -p ./tmp && cd ./tmp && curl -slL https://github.com/int128/kubelogin/releases/download/v1.26.0/kubelogin_windows_amd64.zip | tar -xz && mv kubelogin.exe ../bin/kubelogin-win-amd64.exe && chmod +x ../bin/kubelogin-win-amd64.exe && cd .. && rm -rf ./tmp)\"","download:kubelogin:license:nix":"yarn create:bin:nix && ([[ -f ./bin/kubelogin-license.txt ]] || curl -slL https://raw.githubusercontent.com/int128/kubelogin/v1.26.0/LICENSE > ./bin/kubelogin-license.txt)","download:kubelogin:macos-amd64":"[[ -f ./bin/kubelogin-macos-amd64 ]] || (mkdir -p ./tmp && cd ./tmp && curl -slL https://github.com/int128/kubelogin/releases/download/v1.26.0/kubelogin_darwin_amd64.zip | tar -xz && mv kubelogin ../bin/kubelogin-macos-amd64 && chmod +x ../bin/kubelogin-macos-amd64 && cd .. && rm -rf ./tmp)","download:kubelogin:macos-arm64":"[[ -f ./bin/kubelogin-macos-arm64 ]] || (mkdir -p ./tmp && cd ./tmp && curl -slL https://github.com/int128/kubelogin/releases/download/v1.26.0/kubelogin_darwin_arm64.zip | tar -xz && mv kubelogin ../bin/kubelogin-macos-arm64 && chmod +x ../bin/kubelogin-macos-arm64 && cd .. && rm -rf ./tmp)","download:kubelogin:license:windows":"yarn create:bin:windows && sh -c \"[[ -f ./bin/kubelogin-license.txt ]] || curl -slL https://raw.githubusercontent.com/int128/kubelogin/v1.26.0/LICENSE > ./bin/kubelogin-license.txt\""},"_npmUser":{"name":"stefcameron","email":"stefan@stefcameron.com"},"renderer":"dist/renderer.js","publisher":"mirantis","repository":{"url":"git+https://github.com/Mirantis/lens-extension-cc.git","type":"git"},"_npmVersion":"9.1.1","description":"Lens extension that loads Mirantis Container Cloud clusters.","directories":{},"_nodeVersion":"19.1.0","dependencies":{},"_hasShrinkwrap":false,"devDependencies":{"jest":"^29.4.0","mobx":"^6.7.0","yaml":"^2.2.1","dayjs":"^1.11.7","react":"^17.0.2","rtvjs":"^4.1.0","eslint":"^7.32.0","lodash":"^4.17.21","webpack":"^5.75.0","electron":"^19.1.9","prettier":"^2.8.3","react-dom":"^17.0.2","ts-loader":"^9.4.2","@babel/cli":"^7.20.7","babel-jest":"^29.4.0","mobx-react":"^7.6.0","node-fetch":"^2.6.8","prop-types":"^15.8.1","typescript":"^4.9.4","@babel/core":"^7.20.12","@types/node":"^18.11.18","webpack-cli":"^5.0.1","@emotion/css":"^11.10.5","@types/react":"^18.0.9","babel-loader":"^9.1.2","browserslist":"^4.21.4","query-string":"^8.1.0","react-select":"^5.7.0","@emotion/core":"^11.0.0","@emotion/jest":"^11.10.5","run-script-os":"^1.1.6","@emotion/react":"^11.10.5","@emotion/styled":"^11.10.5","@babel/preset-env":"^7.20.2","jest-mock-console":"^2.0.0","eslint-plugin-jest":"^27.2.1","@babel/preset-react":"^7.18.6","@k8slens/extensions":"^6.3.0","@types/react-router":"^5.1.20","babel-plugin-lodash":"^3.3.4","eslint-plugin-react":"^7.32.1","jest-transform-stub":"^2.0.0","@babel/eslint-parser":"^7.19.1","@testing-library/dom":"^8.20.0","@emotion/babel-plugin":"^11.10.2","@testing-library/react":"^12.1.4","eslint-config-prettier":"^8.6.0","eslint-plugin-jest-dom":"^4.0.3","jest-environment-jsdom":"^29.4.0","@babel/preset-typescript":"^7.18.6","@testing-library/jest-dom":"^5.16.5","@typescript-eslint/parser":"^4.33.0","eslint-plugin-react-hooks":"^4.6.0","@testing-library/user-event":"^14.4.3","babel-plugin-module-resolver":"^5.0.0","eslint-plugin-testing-library":"^5.10.0","@typescript-eslint/eslint-plugin":"^4.33.0","@babel/plugin-proposal-decorators":"^7.20.13","@babel/plugin-transform-react-jsx":"^7.20.13","@babel/plugin-proposal-class-properties":"^7.17.12"},"_npmOperationalInternal":{"tmp":"tmp/lens-extension-cc_5.4.0_1674761608982_0.8762730667618357","host":"s3://npm-registry-packages"}},"5.5.0":{"name":"@mirantis/lens-extension-cc","version":"5.5.0","keywords":["lens","mirantis","cluster"],"author":{"url":"https://github.com/stefcameron","name":"Stefan Cameron"},"license":"MIT","_id":"@mirantis/lens-extension-cc@5.5.0","maintainers":[{"name":"stefcameron","email":"stefan@stefcameron.com"}],"homepage":"https://github.com/Mirantis/lens-extension-cc#readme","bugs":{"url":"https://github.com/Mirantis/lens-extension-cc/issues"},"dist":{"shasum":"3567dc9f536ce659cdb992dd0f2d787c0b6fdbf7","tarball":"https://registry.npmjs.org/@mirantis/lens-extension-cc/-/lens-extension-cc-5.5.0.tgz","fileCount":11,"integrity":"sha512-pRcxFud+k1JXLz4aaxc0yjwSPrsS4C6rAdDDR8wSKc9HeTLpe0rpCsfUSu5fvLFmEkszM5gUKo5UCyYdE11EVA==","signatures":[{"sig":"MEUCICSj0C2hkfn0BjOVepVD/UQMezVrF8qbH7fSNyWzt/cpAiEAvzgguls5zi3n5dDxGx/O2K3dnL38SZF1n1jQYrJRNTk=","keyid":"SHA256:jl3bwswu80PjjokCgh0o2w5c2U4LhQAE57gj9cz1kzA"}],"unpackedSize":83850649,"npm-signature":"-----BEGIN PGP SIGNATURE-----\r\nVersion: OpenPGP.js v4.10.10\r\nComment: https://openpgpjs.org\r\n\r\nwsFzBAEBCAAGBQJj7m1oACEJED1NWxICdlZqFiEECWMYAoorWMhJKdjhPU1b\r\nEgJ2VmqCBA//YO7Zuk/rADirGeUsqmKDnWYrI2hNfaBTU0zb1eGZu2tOpT/z\r\n16tZBNDBDDFwC35yX+Gj1pfYHaKuQ8OT3dngTDZYUOzG/iaqO9vJNsXmM7p5\r\npsMamL74GwcIc2N90bZcnjg5GUUePZZ3xuUicKlIxEzOkZP/Hm/Vcx29zW87\r\nyy1Ix45jqzFDPMmxEOKmhflcZcGFUxtqkgWjwfE1/CN7aIdV6yyLcsCC15Ep\r\n8aahxXZHzaJ8u+KRNWcyJqtu/3qNQo3qjYvPV5NNMhJjL/9RiV9jTWvO5BMV\r\nBapVfgoUaB4tLA2JSAw/kO5dsbqWlpRZ43wYm3KYadwMAttlxuYmnCl09ypS\r\nBrU0acagDDMvTP14nzmJ5evj07BuDxOHIVHdUvBkl6gKz/JxVlT3cjdmKA1x\r\nMFtxerzMYCOp33mm+emolVL0IJuzmghkbcd5cpqmhuor/ab8wCgeFevqza7S\r\ncjCTreejumw7mmZ1KyLjYtByqaISsoRe3aCEtOM6nwNlqIsuY10Gb+ErsLHa\r\nmkeZz/47nzD0z46Su1HrdD9sghnWHcBYSqBIvkMVGxS5QdVV7hOef1rqtrWt\r\nKO0bvCm5SeL7KgarrT5lb+o0M4w1itg0pZBkFHB9593aRqeB9ofuEsyY8MA0\r\nLQjfsFNJq8IA2oTVkrGR+mdGDrzxzw1yi00=\r\n=3CP/\r\n-----END PGP SIGNATURE-----\r\n"},"main":"dist/main.js","engines":{"lens":"^6.0.0"},"gitHead":"e5cee8ebc68c4ffa674bafdb00814ca4bf2032af","scripts":{"dev":"TARGET=development yarn build","fmt":"prettier --write \"{*,src/**/*,tools/**/*,test/**/*,__mocks__/**/*}.+(js|mjs|ts*|yml|json)\"","lint":"eslint \"{*,src/**/*,tools/**/*,test/**/*,__mocks__/**/*}.+(js|mjs|ts*)\"","test":"yarn lint && yarn fmt:check && yarn test:unit","babel":"babel src --out-dir dist_babel","build":"yarn clean && BABEL_ENV=build webpack","clean":"rm -rf ./dist && rm -rf ./dist_babel","start":"TARGET=development yarn build --watch","prepack":"yarn build && yarn download:kubelogin:all && yarn download:kubelogin:license","prebabel":"rm -rf ./dist_babel","prestart":"yarn download:kubelogin","fmt:check":"prettier --check \"{*,src/**/*,tools/**/*,test/**/*,__mocks__/**/*}.+(js|mjs|ts*|yml|json)\"","test:unit":"jest --colors --config jest.config.mjs","test:coverage":"yarn test:unit --coverage","create:bin:nix":"mkdir -p ./bin","prepublishOnly":"yarn test","create:bin:windows":"sh -c \"mkdir -p ./bin\"","download:kubelogin":"run-script-os","download:kubelogin:all":"yarn download:kubelogin:macos && yarn download:kubelogin:linux && yarn download:kubelogin:windows","download:kubelogin:linux":"yarn create:bin:nix && ([[ -f ./bin/kubelogin-linux-amd64 ]] || (mkdir -p ./tmp && cd ./tmp && curl -slL https://github.com/int128/kubelogin/releases/download/v1.26.0/kubelogin_linux_amd64.zip | tar -xz && mv kubelogin ../bin/kubelogin-linux-amd64 && chmod +x ../bin/kubelogin-linux-amd64 && cd .. && rm -rf ./tmp))","download:kubelogin:macos":"yarn create:bin:nix && yarn download:kubelogin:macos-amd64 && yarn download:kubelogin:macos-arm64","download:kubelogin:license":"run-script-os","download:kubelogin:windows":"yarn create:bin:windows && sh -c \"[[ -f ./bin/kubelogin-win-amd64.exe ]] || (mkdir -p ./tmp && cd ./tmp && curl -slL https://github.com/int128/kubelogin/releases/download/v1.26.0/kubelogin_windows_amd64.zip | tar -xz && mv kubelogin.exe ../bin/kubelogin-win-amd64.exe && chmod +x ../bin/kubelogin-win-amd64.exe && cd .. && rm -rf ./tmp)\"","download:kubelogin:license:nix":"yarn create:bin:nix && ([[ -f ./bin/kubelogin-license.txt ]] || curl -slL https://raw.githubusercontent.com/int128/kubelogin/v1.26.0/LICENSE > ./bin/kubelogin-license.txt)","download:kubelogin:macos-amd64":"[[ -f ./bin/kubelogin-macos-amd64 ]] || (mkdir -p ./tmp && cd ./tmp && curl -slL https://github.com/int128/kubelogin/releases/download/v1.26.0/kubelogin_darwin_amd64.zip | tar -xz && mv kubelogin ../bin/kubelogin-macos-amd64 && chmod +x ../bin/kubelogin-macos-amd64 && cd .. && rm -rf ./tmp)","download:kubelogin:macos-arm64":"[[ -f ./bin/kubelogin-macos-arm64 ]] || (mkdir -p ./tmp && cd ./tmp && curl -slL https://github.com/int128/kubelogin/releases/download/v1.26.0/kubelogin_darwin_arm64.zip | tar -xz && mv kubelogin ../bin/kubelogin-macos-arm64 && chmod +x ../bin/kubelogin-macos-arm64 && cd .. && rm -rf ./tmp)","download:kubelogin:license:windows":"yarn create:bin:windows && sh -c \"[[ -f ./bin/kubelogin-license.txt ]] || curl -slL https://raw.githubusercontent.com/int128/kubelogin/v1.26.0/LICENSE > ./bin/kubelogin-license.txt\""},"_npmUser":{"name":"stefcameron","email":"stefan@stefcameron.com"},"renderer":"dist/renderer.js","publisher":"mirantis","repository":{"url":"git+https://github.com/Mirantis/lens-extension-cc.git","type":"git"},"_npmVersion":"9.1.1","description":"Lens extension that loads Mirantis Container Cloud clusters.","directories":{},"_nodeVersion":"19.1.0","_hasShrinkwrap":false,"devDependencies":{"jest":"^29.4.3","mobx":"^6.8.0","yaml":"^2.2.1","dayjs":"^1.11.7","react":"^17.0.2","rtvjs":"^4.1.0","eslint":"^7.32.0","lodash":"^4.17.21","webpack":"^5.75.0","chart.js":"^4.2.1","electron":"^19.1.9","prettier":"^2.8.4","react-dom":"^17.0.2","ts-loader":"^9.4.2","@babel/cli":"^7.20.7","babel-jest":"^29.4.3","mobx-react":"^7.6.0","node-fetch":"^2.6.9","prop-types":"^15.8.1","typescript":"^4.9.5","@babel/core":"^7.20.12","@types/node":"^18.13.0","webpack-cli":"^5.0.1","@emotion/css":"^11.10.5","@types/react":"^18.0.9","babel-loader":"^9.1.2","browserslist":"^4.21.5","query-string":"^8.1.0","react-select":"^5.7.0","@emotion/core":"^11.0.0","@emotion/jest":"^11.10.5","run-script-os":"^1.1.6","@emotion/react":"^11.10.5","@emotion/styled":"^11.10.5","react-chartjs-2":"^5.2.0","@babel/preset-env":"^7.20.2","jest-mock-console":"^2.0.0","eslint-plugin-jest":"^27.2.1","@babel/preset-react":"^7.18.6","@k8slens/extensions":"^6.3.0","@types/react-router":"^5.1.20","babel-plugin-lodash":"^3.3.4","eslint-plugin-react":"^7.32.2","jest-transform-stub":"^2.0.0","@babel/eslint-parser":"^7.19.1","@testing-library/dom":"^8.20.0","@emotion/babel-plugin":"^11.10.2","@testing-library/react":"^12.1.4","eslint-config-prettier":"^8.6.0","eslint-plugin-jest-dom":"^4.0.3","jest-environment-jsdom":"^29.4.3","@babel/preset-typescript":"^7.18.6","@testing-library/jest-dom":"^5.16.5","@typescript-eslint/parser":"^4.33.0","eslint-plugin-react-hooks":"^4.6.0","@testing-library/user-event":"^14.4.3","babel-plugin-module-resolver":"^5.0.0","eslint-plugin-testing-library":"^5.10.2","@typescript-eslint/eslint-plugin":"^4.33.0","@babel/plugin-proposal-decorators":"^7.20.13","@babel/plugin-transform-react-jsx":"^7.20.13","@babel/plugin-proposal-class-properties":"^7.17.12"},"_npmOperationalInternal":{"tmp":"tmp/lens-extension-cc_5.5.0_1676569959552_0.09403556416316139","host":"s3://npm-registry-packages"}},"5.6.0":{"name":"@mirantis/lens-extension-cc","version":"5.6.0","keywords":["lens","mirantis","cluster"],"author":{"url":"https://github.com/stefcameron","name":"Stefan Cameron"},"license":"MIT","_id":"@mirantis/lens-extension-cc@5.6.0","maintainers":[{"name":"stefcameron","email":"stefan@stefcameron.com"}],"homepage":"https://github.com/Mirantis/lens-extension-cc#readme","bugs":{"url":"https://github.com/Mirantis/lens-extension-cc/issues"},"dist":{"shasum":"fb8972ef5d0d61fc20d21e200ed7b38600f9d573","tarball":"https://registry.npmjs.org/@mirantis/lens-extension-cc/-/lens-extension-cc-5.6.0.tgz","fileCount":11,"integrity":"sha512-5hA/Su5SzmzECLd6Ig3QwDAJ9kBoDS+uaymLpXMnBsOzz0DHeDr+pBkjqVyUALlpl1X3EgFamdpBmTmc4Ivs5Q==","signatures":[{"sig":"MEUCIQDqVYXYFGHH0A9BdtCQfmUocJuOmPB//4Yfr3r7UG8ZJgIgHKZQDN+JW7mMzzdMHiTMtI3XbAQVaYU4Fo8tANUO3VA=","keyid":"SHA256:jl3bwswu80PjjokCgh0o2w5c2U4LhQAE57gj9cz1kzA"}],"unpackedSize":84444762,"npm-signature":"-----BEGIN PGP SIGNATURE-----\r\nVersion: OpenPGP.js v4.10.10\r\nComment: https://openpgpjs.org\r\n\r\nwsFzBAEBCAAGBQJkBhOgACEJED1NWxICdlZqFiEECWMYAoorWMhJKdjhPU1b\r\nEgJ2VmpvLg//YjgfQwxfmGSJVy7OBJxq+Tqikqz8MJehtSGhGFbZyyNOEzyr\r\n6YSS19uDo8XkumIymOLhV0AC76aTQECBpDTGmvYtWKqNpOt5CVAmUBq+b8Ur\r\neytPTBvx++ewsE0aTVFrFoiuMJp2iIgAETvNBPc+Pp1gL91x145YFiU5GbRV\r\ntVymGKRxuvKiRUvEbzb8Y8bnOkpI0kVu0x7YN3xbb5NVEZnw47emOKlTR9XH\r\nU7rQRLUCkUy96Rh3oi/wE9wQz/fNNy5WcoeIjPcYxDdP4q1aDqVxmu0zbH3X\r\nFQkngz0q1sizNj6xuHbQ/5iJ4nUThAvPPRWcdKCpBe7z5YKf5YRJUq8TreVE\r\n0Envg4mvoEeDAVIeuZKFVP8fjm4MAIyIIMbkzTu70lFL1qgU93ZKfYuqNTz5\r\n3NG02TjeF/0OGpa4UGftoSU2jeN2W/JVgYpzyt1HyejebBGKLzk+iMv2YwiA\r\nsNZraW5DwdbipfMBPDi9lAxY9kJx097LG4PDdvHPPCLTEHsMNYYL8c1R4Yzl\r\nqH4FNIn88YMsvnJ00dz8U8E3f2j7EtokgwiqeSx2qZRejwgDde5on2rR37QE\r\nZcSe7jLvIXjvppY+ZyfA7HZw0s3AHIGSel7TSUsxv/LekFlAwDN3lbxw8W8X\r\nBP9opx17jqLcC7Rf1dEPAc2LfVImOPfQMEc=\r\n=jWIv\r\n-----END PGP SIGNATURE-----\r\n"},"main":"dist/main.js","engines":{"lens":"^6.0.0"},"gitHead":"8ff4cd1ee479c6483af68d216ab4c690159a6cf7","scripts":{"dev":"TARGET=development yarn build","fmt":"prettier --write \"{*,src/**/*,tools/**/*,test/**/*,__mocks__/**/*}.+(js|mjs|ts*|yml|json)\"","lint":"eslint \"{*,src/**/*,tools/**/*,test/**/*,__mocks__/**/*}.+(js|mjs|ts*)\"","test":"yarn lint && yarn fmt:check && yarn test:unit","babel":"babel src --out-dir dist_babel","build":"yarn clean && BABEL_ENV=build webpack","clean":"rm -rf ./dist && rm -rf ./dist_babel","start":"TARGET=development yarn build --watch","prepack":"yarn build && yarn download:kubelogin:all && yarn download:kubelogin:license","prebabel":"rm -rf ./dist_babel","prestart":"yarn download:kubelogin","fmt:check":"prettier --check \"{*,src/**/*,tools/**/*,test/**/*,__mocks__/**/*}.+(js|mjs|ts*|yml|json)\"","test:unit":"jest --colors --config jest.config.mjs","test:coverage":"yarn test:unit --coverage","create:bin:nix":"mkdir -p ./bin","prepublishOnly":"yarn test","create:bin:windows":"sh -c \"mkdir -p ./bin\"","download:kubelogin":"run-script-os","download:kubelogin:all":"yarn download:kubelogin:macos && yarn download:kubelogin:linux && yarn download:kubelogin:windows","download:kubelogin:linux":"yarn create:bin:nix && ([[ -f ./bin/kubelogin-linux-amd64 ]] || (mkdir -p ./tmp && cd ./tmp && curl -slL https://github.com/int128/kubelogin/releases/download/v1.26.0/kubelogin_linux_amd64.zip | tar -xz && mv kubelogin ../bin/kubelogin-linux-amd64 && chmod +x ../bin/kubelogin-linux-amd64 && cd .. && rm -rf ./tmp))","download:kubelogin:macos":"yarn create:bin:nix && yarn download:kubelogin:macos-amd64 && yarn download:kubelogin:macos-arm64","download:kubelogin:license":"run-script-os","download:kubelogin:windows":"yarn create:bin:windows && sh -c \"[[ -f ./bin/kubelogin-win-amd64.exe ]] || (mkdir -p ./tmp && cd ./tmp && curl -slL https://github.com/int128/kubelogin/releases/download/v1.26.0/kubelogin_windows_amd64.zip | tar -xz && mv kubelogin.exe ../bin/kubelogin-win-amd64.exe && chmod +x ../bin/kubelogin-win-amd64.exe && cd .. && rm -rf ./tmp)\"","download:kubelogin:license:nix":"yarn create:bin:nix && ([[ -f ./bin/kubelogin-license.txt ]] || curl -slL https://raw.githubusercontent.com/int128/kubelogin/v1.26.0/LICENSE > ./bin/kubelogin-license.txt)","download:kubelogin:macos-amd64":"[[ -f ./bin/kubelogin-macos-amd64 ]] || (mkdir -p ./tmp && cd ./tmp && curl -slL https://github.com/int128/kubelogin/releases/download/v1.26.0/kubelogin_darwin_amd64.zip | tar -xz && mv kubelogin ../bin/kubelogin-macos-amd64 && chmod +x ../bin/kubelogin-macos-amd64 && cd .. && rm -rf ./tmp)","download:kubelogin:macos-arm64":"[[ -f ./bin/kubelogin-macos-arm64 ]] || (mkdir -p ./tmp && cd ./tmp && curl -slL https://github.com/int128/kubelogin/releases/download/v1.26.0/kubelogin_darwin_arm64.zip | tar -xz && mv kubelogin ../bin/kubelogin-macos-arm64 && chmod +x ../bin/kubelogin-macos-arm64 && cd .. && rm -rf ./tmp)","download:kubelogin:license:windows":"yarn create:bin:windows && sh -c \"[[ -f ./bin/kubelogin-license.txt ]] || curl -slL https://raw.githubusercontent.com/int128/kubelogin/v1.26.0/LICENSE > ./bin/kubelogin-license.txt\""},"_npmUser":{"name":"stefcameron","email":"stefan@stefcameron.com"},"renderer":"dist/renderer.js","publisher":"mirantis","repository":{"url":"git+https://github.com/Mirantis/lens-extension-cc.git","type":"git"},"_npmVersion":"8.19.3","description":"Lens extension that loads Mirantis Container Cloud clusters.","directories":{},"_nodeVersion":"16.19.1","_hasShrinkwrap":false,"devDependencies":{"jest":"^29.4.3","mobx":"^6.8.0","yaml":"^2.2.1","dayjs":"^1.11.7","react":"^17.0.2","rtvjs":"^4.1.0","eslint":"^7.32.0","lodash":"^4.17.21","semver":"^7.3.8","webpack":"^5.75.0","chart.js":"^4.2.1","electron":"^19.1.9","prettier":"^2.8.4","react-dom":"^17.0.2","ts-loader":"^9.4.2","@babel/cli":"^7.20.7","babel-jest":"^29.4.3","mobx-react":"^7.6.0","node-fetch":"^2.6.9","prop-types":"^15.8.1","typescript":"^4.9.5","@babel/core":"^7.20.12","@types/node":"^18.14.6","webpack-cli":"^5.0.1","@emotion/css":"^11.10.6","@types/react":"^18.0.9","babel-loader":"^9.1.2","browserslist":"^4.21.5","query-string":"^8.1.0","react-select":"^5.7.0","@emotion/core":"^11.0.0","@emotion/jest":"^11.10.5","run-script-os":"^1.1.6","@emotion/react":"^11.10.6","@emotion/styled":"^11.10.6","react-chartjs-2":"^5.2.0","@babel/preset-env":"^7.20.2","jest-mock-console":"^2.0.0","eslint-plugin-jest":"^27.2.1","@babel/preset-react":"^7.18.6","@k8slens/extensions":"^6.3.0","@types/react-router":"^5.1.20","babel-plugin-lodash":"^3.3.4","eslint-plugin-react":"^7.32.2","jest-transform-stub":"^2.0.0","@babel/eslint-parser":"^7.19.1","@testing-library/dom":"^9.0.0","@emotion/babel-plugin":"^11.10.2","@testing-library/react":"^12.1.4","eslint-config-prettier":"^8.6.0","eslint-plugin-jest-dom":"^4.0.3","jest-environment-jsdom":"^29.4.3","@babel/preset-typescript":"^7.18.6","@testing-library/jest-dom":"^5.16.5","@typescript-eslint/parser":"^4.33.0","eslint-plugin-react-hooks":"^4.6.0","@testing-library/user-event":"^14.4.3","babel-plugin-module-resolver":"^5.0.0","eslint-plugin-testing-library":"^5.10.2","@typescript-eslint/eslint-plugin":"^4.33.0","@babel/plugin-proposal-decorators":"^7.20.13","@babel/plugin-transform-react-jsx":"^7.20.13","@babel/plugin-proposal-class-properties":"^7.17.12"},"_npmOperationalInternal":{"tmp":"tmp/lens-extension-cc_5.6.0_1678119839489_0.8461292269122003","host":"s3://npm-registry-packages"}}},"time":{"created":"2020-11-13T23:45:47.318Z","modified":"2026-04-24T09:25:28.534Z","1.0.0":"2020-11-13T23:45:47.904Z","1.0.1":"2020-11-14T00:29:46.189Z","1.0.2":"2020-11-14T19:25:36.489Z","1.0.3":"2020-11-30T16:29:57.442Z","1.0.4":"2020-11-30T20:00:46.211Z","1.0.5":"2020-12-08T01:02:26.900Z","2.0.0-alpha.0":"2020-12-10T18:31:36.084Z","2.0.0-alpha.1":"2020-12-10T19:24:15.710Z","2.0.0-alpha.2":"2020-12-11T01:28:16.206Z","2.0.0-beta.0":"2020-12-11T15:41:21.658Z","2.0.0-beta.1":"2020-12-11T16:02:17.005Z","2.0.0":"2020-12-12T00:49:54.444Z","2.0.1":"2020-12-14T18:56:34.533Z","2.0.2":"2020-12-16T19:05:39.019Z","2.0.3":"2021-01-06T19:29:46.740Z","2.1.0":"2021-01-25T16:25:54.479Z","2.1.1":"2021-01-26T00:23:55.247Z","2.1.2":"2021-02-04T18:10:30.726Z","2.2.0":"2021-05-01T00:16:33.691Z","2.2.1":"2021-05-04T22:00:59.015Z","3.0.0-beta.1":"2021-06-10T16:20:10.877Z","3.0.0":"2021-07-15T23:35:23.968Z","3.0.1":"2021-07-16T17:39:13.451Z","3.0.2":"2021-08-05T17:05:08.835Z","3.0.3":"2021-08-05T17:18:33.987Z","3.0.4":"2021-11-30T00:00:24.572Z","3.1.0":"2022-01-26T19:57:24.765Z","4.0.0-alpha.0":"2022-02-02T21:32:56.721Z","3.1.1":"2022-02-03T18:09:23.632Z","4.0.0-alpha.1":"2022-02-23T19:47:48.658Z","4.0.0-alpha.2":"2022-03-02T23:15:16.049Z","3.1.2":"2022-03-02T23:22:06.423Z","4.0.0-alpha.3":"2022-03-04T18:41:55.569Z","4.0.0-alpha.4":"2022-04-06T15:19:47.959Z","4.0.0-beta.0":"2022-05-02T15:32:57.118Z","4.0.0-beta.1":"2022-05-18T16:13:01.995Z","4.0.0":"2022-07-27T19:39:54.359Z","5.0.0":"2022-07-28T17:05:03.377Z","5.0.1":"2022-08-03T23:37:25.181Z","5.0.2":"2022-09-12T20:03:55.869Z","5.1.0":"2022-09-29T18:00:17.472Z","5.2.0":"2022-10-13T21:51:56.622Z","5.2.1":"2022-11-10T19:09:38.059Z","5.2.2":"2022-12-01T20:40:32.451Z","5.3.0":"2023-01-05T20:56:36.270Z","5.4.0":"2023-01-26T19:33:29.714Z","5.5.0":"2023-02-16T17:52:40.113Z","5.6.0":"2023-03-06T16:24:00.394Z"},"bugs":{"url":"https://github.com/Mirantis/lens-extension-cc/issues"},"author":{"url":"https://github.com/stefcameron","name":"Stefan Cameron"},"license":"MIT","homepage":"https://github.com/Mirantis/lens-extension-cc#readme","keywords":["lens","mirantis","cluster"],"repository":{"url":"git+https://github.com/Mirantis/lens-extension-cc.git","type":"git"},"description":"Lens extension that loads Mirantis Container Cloud clusters.","maintainers":[{"email":"bnallapeta@mirantis.com","name":"bnallapeta"}],"readme":" # Mirantis Container Cloud Lens Extension\n\n![CI](https://github.com/Mirantis/lens-extension-cc/workflows/CI/badge.svg?branch=master&event=push)\n\nA [Lens](https://k8slens.dev/) extension that enables you to connect to management clusters and synchronize their resources into the Lens Catalog.\n\nRequires Lens `>= 6.0.0` and Mirantis Container Cloud `>= 2.19`\n\n> ⚠️ If you are upgrading from __extension__ version 3.x to 4.x, please see our [upgrade instructions](#upgrading-from-v3-to-v4) __before upgrading__.\n\n## Installing\n\n> 💬 If you plan on working on the extension code, follow the [development](./CONTRIBUTING.md#development) instructions instead of these.\n\nInstallation is very easy! Just make sure Lens is running, and follow these simple steps:\n\n1. Switch to the Extensions view (`CMD+SHIFT+E` on macOS).\n2. Enter the name of this extension, `@mirantis/lens-extension-cc`, into the __Install Extension__ box.\n3. Click on the __Install__ button.\n4. Make sure the extension is enabled.\n\n![Extension UI](./docs/ext-install-by-name.png)\n\nYou should now see a __Mirantis Container Cloud__ button in the top bar, on the right hand side. Click this button to access the extension's features.\n\n## Upgrading\n\nTo upgrade to a newer release, go to the Extensions view (`CMD+SHIFT+E` on macOS), [uninstall](#uninstalling) the extension, and then [re-install](#installing) it again.\n\n## Uninstalling\n\nGo to the Lens Extensions view (`CMD+SHIFT+E` on macOS) and click the __Uninstall__ button next to this extension.\n\n## SSO required\n\nMirantis Container Cloud instances that use third-party SSO authentication via __Keycloak__ are __required__ in order to use this extension.\n\nThe extension does not support management clusters using the old basic authentication method.\n\n## Authorization flow\n\nWhen connecting to a management cluster that uses SSO, Lens will open its SSO authorization page in your default browser.\n\nOnce authorized, Keycloak will redirect to the `lens://...` URL, triggering the browser to ask permission to open the Lens app to process the request (unless permission was granted previously with the _always allow_ check box for your SSO ID Provider, e.g. `accounts.google.com`):\n\n![Lens protocol permission - always allow](docs/lens-protocol-permission.png)\n\n> ⚠️ Even if you check the \"Always allow\" box, your browser may still continue to show a popup message waiting for you to click on an \"Open Lens.app\" button. This is a built-in security feature. Please be on the look out for this popup in your browser whenever accessing your Container Cloud management cluster.\n\nWhether the permission was already given, or upon clicking the __Open Lens.app__ button, Lens will receive focus again, and the extension will then obtain access to the management cluster.\n\nThe temporary browser window used for SSO authorization may still be open, and can now be closed manually.\n\n## Tutorial\n\n### Adding your first management cluster\n\nClick on the __Mirantis Container Cloud__ button in the top bar, on the right side, to activate the extension.\n\n![Welcome](./docs/v4-01-welcome.png)\n\nWhen there are no management clusters, you'll see the Welcome screen, as above. Click on the button at the bottom.\n\n![Connect to cloud](./docs/v550-01-add-cloud.png)\n\n- __Management cluster name:__ Enter a friendly name of your choice (no spaces or special characters allowed) for the management cluster you will connect to. This name will be used in Catalog labels to identify resources belonging to this management cluster in order to help with searching/filtering.\n- __Management cluster URL:__ Enter the URL to the management cluster itself.\n    - 💬 This is not the URL to a child cluster inside the management cluster. The management cluster is essentially the Mirantis Container Cloud _instance_. However, using a child cluster URL is OK as the extension will use it to determine the proper URL for you.\n- __Use offline tokens:__ (✳️ New in [v5.5.0](CHANGELOG.md#v550)) By default, short-lived (more secure) cluster access tokens are used in the generated kubeconfigs used by Lens to connect to synced clusters. Enable this option to use long-lived tokens to stay connected to them for a longer period of time. See the [offline tokens](#offline-tokens) section for more information.\n    - 💬 The \"offline\" term should not be confused with [offline support](#offline-support). A network connection is always necessary in order to get the latest cluster status.\n- __Trust this host:__ (✳️ New in [v5.5.0](CHANGELOG.md#v550)) By default, the extension will not connect to management clusters that use __self-signed certificates__ or have expired/invalid certificates. If that is your scenario, and you trust the endpoint, then check this option.\n    - ⚠️ Trusting a host is inherently __unsafe__. [Read more](#trusted-hosts) about this option before using it.\n\nWhen you click on __Connect__, your default browser will open to the management cluster's sign in screen.\n\nComplete the sign in and you should then be redirected to Lens via a confirmation dialog like this (in your browser):\n\n![Protocol permission](./docs/lens-protocol-permission.png)\n\n> Be sure to allow the redirect. Otherwise, the extension will fail to connect to the management cluster. If the browser window remains open, you can safely close it manually.\n\nIn a few seconds, the extension will list all the projects it discovered in the management cluster. These are the projects you can access with the account your used for sign in:\n\n![Sync preview](./docs/v4-03-sync-preview.png)\n\nMake your project selection for synchronization, and choose whether __future projects__ should be automatically synced. This means that any projects created in the future will be automatically added to your sync selection, and their resources automatically added to the Catalog. Otherwise, new projects will be ignored.\n\n> 💬 Deleting an existing, synced project from the Container Cloud API or browser UI will result in the project (and it's related resources) being removed from Lens automatically.\n\nFinally, click on __Synchronize selected projects__ to complete the setup.\n\n### Sync View\n\n![Sync View](./docs/v4-04-sync-overview.png)\n\nAfter adding a new management cluster, you'll be shown the __Sync View__. As highlighted, the __Name__ column on the far left shows the short name for the management cluster, along with all synced projects. Under each project, you'll find the number of resources that have been synced to Lens and are available in the Catalog.\n\nThe highlighted __Status__ column on the far right shows the current sync status of each project, as well as the connection status to the management cluster. As sync takes place periodically (every 5 minutes or so), the management cluster's status will change from \"Connected\" to \"Updating\" whenever it's synchronizing.\n\n> 💡 Click the __Selective sync__ button (top/right corner) to update management cluster sync settings (e.g. which projects to sync, or use of [offline tokens](#offline-tokens) for synced clusters).\n\n### Lens Catalog\n\nOnce the sync status is \"Connected\" and all projects are \"Synced\", head over to the Lens Catalog and choose __Clusters__ from the Category Browser on the left hand side. You should now see all the clusters that were synced (across all synced management clusters and projects):\n\n![Lens Catalog](./docs/v4-05-catalog.png)\n\nNotice there are new categories in the Category Browser:\n\n- MCC Credentials\n- MCC SSH Keys\n- MCC Proxies\n- MCC RHEL Licenses\n\nThese are simply quick filters on specific resource types, just like \"Clusters\" and \"Web Links\".\n\nClick __Browse__ at the very top of the Category Browser to see all items in a single list. Use the __Search__ box at the top/right to filter.\n\nFor example, entering `project=NAME` (replace `NAME` with the name of a project you synced) in the Search box will filter the Catalog to show only those that belong to that project.\n\n### Item details\n\nTo see details about any synced resource, use its context menu in the Catalog and choose __View details__:\n\n![Catalog item context menu](./docs/v4-06-catalog-ctx-menu.png)\n\nThis will show a __Details panel__ with additional information about the resource. This is the same kind of information you would normally find in the Container Cloud browser UI. Here, we see the details for a cluster:\n\n![Catalog details](./docs/v4-07-catalog-details.png)\n\n> 💬 There are `Status` and `MCC Status` fields: The difference is `Status` (near the top) represents the __Lens connection status__ (whether it's connected to the cluster to introspect its details via the [Cluster View](#cluster-metrics), while `MCC Status` (further down in a separate section)\n\n### Cluster metrics\n\nWhen you're ready to introspect a synced cluster, just click on it in the Catalog, same as you would any other cluster.\n\n> 💬 Since Lens requires special credentials to access clusters and introspect them, your default browser window will open again, and you'll need to sign into the management cluster again. Once Lens has the special credentials, this shouldn't be necessary again until they expire.\n\n![Cluster metrics](./docs/v4-08-cluster-view.png)\n\n### Cluster pages\n\n✳️ __New in [v5.3.0](CHANGELOG.md#v530)__\n\nWhen you're in the Lens cluster view, you can now find Mirantis Container Cloud-specific information in the __Container Cloud__ pages accessible at the bottom of the sidenav (highlighted in red below).\n\n![Cluster pages - Overview](./docs/v530-01-cluster-pages-overview.png)\n\nThe overview page also provides information about all the cluster's conditions.\n\n![Cluster pages - Conditions](./docs/v530-02-cluster-pages-conditions.png)\n\nCluster- and machine-related events are available in the second tab.\n\n> 💡 Events are updated every ~5 minutes. Click on the __Refresh__ button in the toolbar (highlighted in red below) to refresh the list right away.\n\n![Cluster pages - Events](./docs/v530-03-cluster-pages-events.png)\n\n(✳️ __New in [v5.6.0](CHANGELOG.md#v560), requires MCC v2.22+__) Cluster- and machine-related deployment and upgrade history are available in the third tab.\n\n> 💡 History is updated every ~5 minutes. Click on the __Refresh__ button in the toolbar (highlighted in red below) to refresh the list right away.\n\n![Cluster pages - History](./docs/v560-01-cluster-pages-history.png)\n\nFinally, the details page provides all the information normally available from the Catalog's \"View details\" slide-in panel so that it isn't necessary to go back to the Catalog to get that data.\n\n![Cluster pages - Details](./docs/v530-04-cluster-pages-details.png)\n\n### Reconnecting a management cluster\n\nIf the management cluster becomes \"Disconnected\", it's simply because the user session used for connection and API access has expired and it needs to be reconnected. In this case, use the management cluster's context menu and choose the __Reconnect__ option:\n\n![Management cluster context menu](./docs/v4-09-sync-view-ctx-menu.png)\n\n> 💬 As when adding a new management cluster, this will cause your default browser to open and you'll need to sign into the management cluster again. After the sign in is complete, you'll be redirected to Lens. If Lens doesn't re-focus, just re-focus the app. You can satefly close the browser window that was opened.\n\n### Adding more management clusters\n\nThe extension can sync multiple management clusters at the same time. Click on the __Connect new Management Cluster__ button at the bottom/right corner of the [Sync View](#sync-view) to add more of them.\n\n### Removing a management cluster\n\nTo remove a management cluster, choose the __Remove__ option from the management cluster's context menu in the [Sync View](#sync-view).\n\n> ⚠️ Removing a management cluster will also remove all of its synced projects and resources from Lens.\n\n### Update sync selection\n\nTo update the synchronization settings for any management cluster, click the __Selective sync__ button at the top/right corner of the [Sync View](#sync-view).\n\nThe screen will then update to show not only synced projects, but also ignored projects, where you'll be able to update your selections. The __future sync__ setting for each management cluster can also be changed from the Selective Sync view.\n\n![Selective Sync view](./docs/v4-10-selective-sync.png)\n\nOnce you've updated your selections, click the __Synchronize selected projects__ button at the top/right corner of the Selective Sync view.\n\nClick __Cancel__ (next to the _Synchronize selected projects_ button) to back out without making any changes.\n\n## Offline support\n\nWhether a management cluster becomes _disconnected_ and is not re-connected for a while, or Lens is closed for a long period of time, all resources that were last synced prior to disconnection or quitting the app will be kept in the Catalog and restored in Lens the next time it's opened.\n\nJust reconnect when you're able and let the synchronization process update to the current state of things in order to keep your Catalog up-to-date.\n\n> ❗️ A network connection is always necessary in order to have the most up-to-date cluster data and status. This is simply a convenience feature should you have to use Lens while temporarily offline.\n\n## Offline tokens\n\n✳️ __New in [v5.5.0](CHANGELOG.md#v550)__\n\nThe `Use offline tokens` option (offered both when [adding](#adding-your-first-management-cluster) a management cluster, or updating its sync settings via the [Selective sync](#sync-view) view) determines whether the cluster access tokens are short-lived or long-lived.\n\nWhen a cluster is synced via this extension, a kubeconfig file is generated. This file is then used by Lens to connect with the cluster when opening it from the Catalog.\n\nThe kubeconfig is configured to use the [kube-login](https://github.com/int128/kubelogin) binary (bundled with the extension) to enable Lens to obtain cluster access tokens (different from the API access token used to \"connect\" to a management cluster).\n\nThis is why your default browser is toggled when you open the cluster for the first time (or whenever the tokens expire and Lens needs to obtain new ones).\n\n> ⚠️ Expired tokens [can cause some havoc](https://github.com/lensapp/lens/issues/6966), especially when the tokens are short-lived, though using long-lived tokens would not necessarily make you immune to this issue; it would simply push it off further into the future.\n\nThese cluster access tokens are those which are partially configured via the `Use offline tokens` option, which applies uniformally to all synced clusters from a given management cluster.\n\n> 💬 \"Offline\" tokens should not be confused with [offline support](#offline-support), which is about retaining the ability to see synced objects even when temporarily offline (disconnected from your network). Eventually, even long-lived tokens will expire and will need to be renewed.\n\n## Trusted hosts\n\n✳️ __New in [v5.5.0](CHANGELOG.md#v550)__\n\nBy default, the extension does not support management clusters that use self-signed certificates (or certificates that are expired, or not verifiable for whatever reason) over `HTTPS` connections. They are treated as untrusted hosts for security reasons (because their identity cannot be verified).\n\n> ❗️ Mirantis does not recommend connecting to an unverified host and takes no responsibility whatsoever for any negative consequences that may ensue. The host could be one posing as the real thing, but in actuality, one owned by a threat actor with malicious goals. This extension is [MIT-licensed](./LICENSE). Proceed at your own risk.\n\nThere are some legitimate reasons to use self-signed certificates, however, and it is possible to connect to a management cluster that uses one by setting the `Trust this host` option offered when [adding](#adding-your-first-management-cluster) a management cluster.\n\nWhen trusting a management cluster, the trust also applies to __all clusters synced__ through it, which means that all generated cluster kubeConfigs will also skip TLS verification.\n\n> ⚠️ This flag can only be set when __adding__ the management cluster. This is because a host that uses a self-signed certificate typically continues to do so into the future.\n>\n> If your management cluster's certificate suddenly expires, contact your IT department and ask them to look into the issue before resorting to trusting the host.\n\nTo __untrust__ the host, remove the management cluster, and add it again without the `Trust this host` option enabled.\n\nIt's not possible to trust a host you've already added on the premise that if a host's certificate becomes invalid, it's a good indication that something might be amis and should be verified/rectified prior to reconnecting. Contact your IT department and ask them to look into the issue before resorting to trusting the host.\n\nIf a host had to be trusted when it was added, we're assuming it probably always has to be trusted (e.g. it's an internal, test, or demo system that always uses a self-signed certificate) and there would be no reason to suddenly no longer trust it and require TLS verification. However, if this is something you _frequently_ encounter, please let us know by [opening an issue](https://github.com/Mirantis/lens-extension-cc/issues) and explaining your use case.\n\n> 💬 This option is irrelevant to management clusters using unsecure `HTTP` connections as certificates are involved in the connection handshake.\n\n## FAQ\n\n- I was able to add my cluster to Lens, but Lens fails to show it because of an authentication error.\n    - Check if the cluster is only accessible over a private network (i.e. VPN) connection, and try opening it in Lens once connected to the network. Even though you can see the cluster in Container Cloud, as well as in the extension, accessing the cluster's details may still require a VPN connection in this case.\n- My management cluster gets disconnected after a while.\n    - Access tokens (which are obtained by the extension when you [authorize access](#authorization-flow) to your management clusters) have a ~5 minute lifespan and come with refresh tokens that last up to ~30 minutes.\n    - Typically, the extension is able to renew these tokens for a few hours, but once the renewal is no longer possible (for security reasons, a more recent authorization becomes necessary), a management cluster will become disconnected even while Lens is still running.\n    - Quitting Lens for more than 30 minutes will definitely result in disconnection as the access token (which has a ~5 minute lifespan) as well as the refresh token, which has a ~30 minute lifespan, will both have expired.\n- Lens keeps toggling my browser to authenticate with a synced cluster.\n    - This appears to be an [issue with Lens](https://github.com/lensapp/lens/issues/6966), not this extension. The kubeconfig provided to Lens for the synced cluster is valid, though it's different from kubeconfigs normally used by Lens in that it doesn't contain any offline tokens. Instead, it causes Lens to go through the [kube-login](https://github.com/int128/kubelogin) binary (bundled with the extension) to obtain SSO tokens, and `kube-login` goes through your system's default browser to obtain those tokens.\n    - Quitting and restarting Lens normally fixes the issue.\n    - If the issue persists after quitting Lens (and leaving it closed because you don't need to use it for a while), then you may need to check for rogue Lens-related processes in your operating system's process explorer app and kill those lingering ones for the behavior to stop.\n    - 💡 As of [v5.5.0](CHANGELOG.md#v550), it's possible to work around this issue by using [offline tokens](#offline-tokens) for cluster access.\n\n## Upgrading from v3 to v4\n\n### Manually added clusters no longer supported\n\nAs the extension underwent a near complete rewrite for version 4 which provides a completely new way of getting Mirantis Container Cloud clusters into Lens (manual, single selection to full synchronization across multiple management clusters), clusters previously added to Lens via the extension __are no longer supported__ and __will be removed__ from Lens upon upgrading.\n\n__Before upgrading to v4__, be sure to take note of which clusters you added, and from which management cluster and project they came from, so you can [add those management clusters](#adding-your-first-management-cluster) and select those projects in order to have those clusters synced into Lens.\n\n### Add to Lens from MCC no longer supported\n\nThe minimum supported version of Mirantis Container Cloud is `2.19` as the browser UI no longer has the old __Add to Lens__ cluster context menu item that the extension no longer supports.\n\nIf you're using an older version of MCC and attempt to use the _Add to Lens_ menu item in the browser UI, you will get an error message in the extension in Lens.\n\n## Contributing\n\nSee our [contribution guide](./CONTRIBUTING.md).\n\n## API\n\nSee our [API docs](./API.md).\n","readmeFilename":"README.md"}