{"_id":"signalk-container","_rev":"99-ff69bdaacdc4de53d65435bc60b37f16","name":"signalk-container","dist-tags":{"beta":"1.16.4-beta.0","latest":"1.34.0"},"versions":{"0.1.0":{"name":"signalk-container","version":"0.1.0","keywords":["signalk-node-server-plugin","signalk-plugin-configurator"],"license":"MIT","_id":"signalk-container@0.1.0","maintainers":[{"name":"dirkwa","email":"dirkwahrheit@gmail.com"}],"homepage":"https://github.com/dirkwa/signalk-container#readme","bugs":{"url":"https://github.com/dirkwa/signalk-container/issues"},"dist":{"shasum":"ce2ac3c80bb3fb346d017f3a428f70368abd7d57","tarball":"https://registry.npmjs.org/signalk-container/-/signalk-container-0.1.0.tgz","fileCount":39,"integrity":"sha512-3uA44Y14WlO4EGEmquhOKvleKTn8T88n9MGF7b0WzbcNcRtx3T5buioSobgT+y9xTopcwoPPqVmxsXOQsx/kIA==","signatures":[{"sig":"MEUCIQDC7Qs2pBZ21bKljkQ9lWMHWZzv06pciciWyI6JAIyw7wIgPqK+ZpIcHKUdfmLN9HWpCLlV4xVpBcbKynRZ/Y8Hwnk=","keyid":"SHA256:DhQ8wR5APBvFHLF/+Tc+AYvPOdTpcIDqOhxsBHRwC7U"}],"unpackedSize":110784},"main":"dist/index.js","types":"./dist/index.d.ts","engines":{"node":">=22"},"gitHead":"95926f62a61005cd231d84a6296af8e49eafd7c5","scripts":{"lint":"eslint --fix","test":"node --test 'dist/test/**/*.test.js'","build":"tsc && webpack","watch":"tsc --watch","format":"npm run prettier && npm run lint","ci-lint":"eslint && prettier --check .","prettier":"prettier --write .","build:all":"npm run build && npm test","build:config":"webpack","prepublishOnly":"npm run build"},"signalk":{"appIcon":"./icon.svg","displayName":"Container Manager"},"_npmUser":{"name":"dirkwa","email":"dirkwahrheit@gmail.com"},"repository":{"url":"git+https://github.com/dirkwa/signalk-container.git","type":"git"},"_npmVersion":"11.9.0","description":"Shared container runtime management (Podman/Docker) for Signal K plugins","directories":{},"_nodeVersion":"24.14.0","_hasShrinkwrap":false,"devDependencies":{"react":"^19.2.4","eslint":"^10.2.0","globals":"^17.4.0","webpack":"^5.105.4","prettier":"^3.8.1","@eslint/js":"^10.0.1","typescript":"^5.0.0","@babel/core":"^7.29.0","@types/node":"^20.0.0","webpack-cli":"^7.0.2","babel-loader":"^10.1.1","@types/express":"^5.0.6","typescript-eslint":"^8.58.0","@babel/preset-react":"^7.28.5","@signalk/server-api":"latest","eslint-config-prettier":"^10.1.8"},"_npmOperationalInternal":{"tmp":"tmp/signalk-container_0.1.0_1775351902206_0.3296662938795527","host":"s3://npm-registry-packages-npm-production"},"signalk-plugin-enabled-by-default":true},"0.1.1":{"name":"signalk-container","version":"0.1.1","keywords":["signalk-node-server-plugin","signalk-plugin-configurator"],"license":"MIT","_id":"signalk-container@0.1.1","maintainers":[{"name":"dirkwa","email":"dirkwahrheit@gmail.com"}],"homepage":"https://github.com/dirkwa/signalk-container#readme","bugs":{"url":"https://github.com/dirkwa/signalk-container/issues"},"dist":{"shasum":"24da2cd546559e3135deca6b491ef97b35ecb0f1","tarball":"https://registry.npmjs.org/signalk-container/-/signalk-container-0.1.1.tgz","fileCount":39,"integrity":"sha512-/XsNabgn2rza1MNLGbybZA5iwW8s9i4NPAZsIJcxUDcHVQXNoZng7gDvCI4tQ1ifuSffr4qOdEkKlNlH2NiZHA==","signatures":[{"sig":"MEUCIA6Mn2QZmdgWzKf7529f1fCbVmEnAsylRA7EdSqIz5hpAiEAttDnwWHhKh11oT2qMXVbxekxcJsJ6NQJBglBpPNqlXI=","keyid":"SHA256:DhQ8wR5APBvFHLF/+Tc+AYvPOdTpcIDqOhxsBHRwC7U"}],"unpackedSize":119594},"main":"dist/index.js","types":"./dist/index.d.ts","engines":{"node":">=22"},"gitHead":"4def0c847c1c9fe246cbca10273e137d42333484","scripts":{"lint":"eslint --fix","test":"node --test 'dist/test/**/*.test.js'","build":"tsc && webpack","watch":"tsc --watch","format":"npm run prettier && npm run lint","ci-lint":"eslint && prettier --check .","prettier":"prettier --write .","build:all":"npm run build && npm test","build:config":"webpack","prepublishOnly":"npm run build"},"signalk":{"appIcon":"./icon.svg","displayName":"Container Manager"},"_npmUser":{"name":"dirkwa","email":"dirkwahrheit@gmail.com"},"repository":{"url":"git+https://github.com/dirkwa/signalk-container.git","type":"git"},"_npmVersion":"11.9.0","description":"Shared container runtime management (Podman/Docker) for Signal K plugins","directories":{},"_nodeVersion":"24.14.0","_hasShrinkwrap":false,"devDependencies":{"react":"^19.2.4","eslint":"^10.2.0","globals":"^17.4.0","webpack":"^5.105.4","prettier":"^3.8.1","react-dom":"^19.2.4","@eslint/js":"^10.0.1","typescript":"^5.0.0","@babel/core":"^7.29.0","@types/node":"^20.0.0","webpack-cli":"^7.0.2","babel-loader":"^10.1.1","@types/express":"^5.0.6","typescript-eslint":"^8.58.0","@babel/preset-react":"^7.28.5","@signalk/server-api":"latest","eslint-config-prettier":"^10.1.8"},"_npmOperationalInternal":{"tmp":"tmp/signalk-container_0.1.1_1775447050724_0.2763716392528264","host":"s3://npm-registry-packages-npm-production"},"signalk-plugin-enabled-by-default":true},"0.1.2":{"name":"signalk-container","version":"0.1.2","keywords":["signalk-node-server-plugin","signalk-plugin-configurator"],"license":"MIT","_id":"signalk-container@0.1.2","maintainers":[{"name":"dirkwa","email":"dirkwahrheit@gmail.com"}],"homepage":"https://github.com/dirkwa/signalk-container#readme","bugs":{"url":"https://github.com/dirkwa/signalk-container/issues"},"dist":{"shasum":"27897bfd105a19f9bf636bffdbf366239df99532","tarball":"https://registry.npmjs.org/signalk-container/-/signalk-container-0.1.2.tgz","fileCount":39,"integrity":"sha512-/TsMNTVFLjMzz4HUoSRnoDtEIl8TcRDEH2kZLd6n6LoL2UcamWhQL2lHV2bLu/AQ6Kn7KrsERuTaV9dbuFoFPQ==","signatures":[{"sig":"MEQCIAssryjv9LT3kbTMY3IatXbbQrwzoqVCkoosu5UIIQ28AiA+SeFTV9Wq6qaGOTVsidayVq3xjK86YoSOpfmf+g/KAA==","keyid":"SHA256:DhQ8wR5APBvFHLF/+Tc+AYvPOdTpcIDqOhxsBHRwC7U"}],"unpackedSize":121314},"main":"dist/index.js","types":"./dist/index.d.ts","engines":{"node":">=22"},"gitHead":"6e895ddf6d969ebf848e55eb2ffd1ecdcef9d6ee","scripts":{"lint":"eslint --fix","test":"node --test 'dist/test/**/*.test.js'","build":"tsc && webpack","watch":"tsc --watch","format":"npm run prettier && npm run lint","ci-lint":"eslint && prettier --check .","prettier":"prettier --write .","build:all":"npm run build && npm test","build:config":"webpack","prepublishOnly":"npm run build"},"signalk":{"appIcon":"./icon.svg","displayName":"Container Manager"},"_npmUser":{"name":"dirkwa","email":"dirkwahrheit@gmail.com"},"repository":{"url":"git+https://github.com/dirkwa/signalk-container.git","type":"git"},"_npmVersion":"11.9.0","description":"Shared container runtime management (Podman/Docker) for Signal K plugins","directories":{},"_nodeVersion":"24.14.0","_hasShrinkwrap":false,"devDependencies":{"react":"^19.2.4","eslint":"^10.2.0","globals":"^17.4.0","webpack":"^5.105.4","prettier":"^3.8.1","react-dom":"^19.2.4","@eslint/js":"^10.0.1","typescript":"^5.0.0","@babel/core":"^7.29.0","@types/node":"^20.0.0","webpack-cli":"^7.0.2","babel-loader":"^10.1.1","@types/express":"^5.0.6","typescript-eslint":"^8.58.0","@babel/preset-react":"^7.28.5","@signalk/server-api":"latest","eslint-config-prettier":"^10.1.8"},"_npmOperationalInternal":{"tmp":"tmp/signalk-container_0.1.2_1775497348832_0.3213179623723481","host":"s3://npm-registry-packages-npm-production"},"signalk-plugin-enabled-by-default":true},"0.1.3":{"name":"signalk-container","version":"0.1.3","keywords":["signalk-node-server-plugin","signalk-plugin-configurator"],"license":"MIT","_id":"signalk-container@0.1.3","maintainers":[{"name":"dirkwa","email":"dirkwahrheit@gmail.com"}],"homepage":"https://github.com/dirkwa/signalk-container#readme","bugs":{"url":"https://github.com/dirkwa/signalk-container/issues"},"dist":{"shasum":"01452c2382b8732dde8a20ea23978e68d79bf592","tarball":"https://registry.npmjs.org/signalk-container/-/signalk-container-0.1.3.tgz","fileCount":39,"integrity":"sha512-n6Oi+m1BxVhzHsOAdnjXJSTCcC45ILGpPhAT17tXiWcKqbPH85uojyNmpkMF46RvUOVVCSa3TH7ixUd5OBRRCg==","signatures":[{"sig":"MEQCIEAoH4uu2huzhb8/4ksOyLMwaDKmp2zilmdEbV05UyBTAiA2kjhQCNG4uMtdFii9X2iIqSSYOw7035yDT70rMVqOLA==","keyid":"SHA256:DhQ8wR5APBvFHLF/+Tc+AYvPOdTpcIDqOhxsBHRwC7U"}],"unpackedSize":127711},"main":"dist/index.js","types":"./dist/index.d.ts","engines":{"node":">=22"},"gitHead":"bc759491ee65590178497163fae7f98a26d5e822","scripts":{"lint":"eslint --fix","test":"node --test 'dist/test/**/*.test.js'","build":"tsc && webpack","watch":"tsc --watch","format":"npm run prettier && npm run lint","ci-lint":"eslint && prettier --check .","prettier":"prettier --write .","build:all":"npm run build && npm test","build:config":"webpack","prepublishOnly":"npm run build"},"signalk":{"appIcon":"./icon.svg","displayName":"Container Manager"},"_npmUser":{"name":"dirkwa","email":"dirkwahrheit@gmail.com"},"repository":{"url":"git+https://github.com/dirkwa/signalk-container.git","type":"git"},"_npmVersion":"11.9.0","description":"Shared container runtime management (Podman/Docker) for Signal K plugins","directories":{},"_nodeVersion":"24.14.0","_hasShrinkwrap":false,"devDependencies":{"react":"^19.2.4","eslint":"^10.2.0","globals":"^17.4.0","webpack":"^5.105.4","prettier":"^3.8.1","react-dom":"^19.2.4","@eslint/js":"^10.0.1","typescript":"^5.0.0","@babel/core":"^7.29.0","@types/node":"^20.0.0","webpack-cli":"^7.0.2","babel-loader":"^10.1.1","@types/express":"^5.0.6","typescript-eslint":"^8.58.0","@babel/preset-react":"^7.28.5","@signalk/server-api":"latest","eslint-config-prettier":"^10.1.8"},"_npmOperationalInternal":{"tmp":"tmp/signalk-container_0.1.3_1775536684329_0.022035123144935165","host":"s3://npm-registry-packages-npm-production"},"signalk-plugin-enabled-by-default":true},"0.1.6":{"name":"signalk-container","version":"0.1.6","keywords":["signalk-node-server-plugin","signalk-plugin-configurator"],"license":"MIT","_id":"signalk-container@0.1.6","maintainers":[{"name":"dirkwa","email":"dirkwahrheit@gmail.com"}],"homepage":"https://github.com/dirkwa/signalk-container#readme","bugs":{"url":"https://github.com/dirkwa/signalk-container/issues"},"dist":{"shasum":"16e649fccd177670337d97cbf04577a96436d979","tarball":"https://registry.npmjs.org/signalk-container/-/signalk-container-0.1.6.tgz","fileCount":67,"integrity":"sha512-KpLyP2UxaY+suiDPexe/dQxtb9qMBTxC79P3YOFMxrri+63GYUGy7VWvlsZub7NSLEPeM32Q9NTSmDfX9JFDHw==","signatures":[{"sig":"MEUCIGIHLmh5rZGpYdwMZtHwHmHsKYkSg/2uRfw2WI/7i++oAiEAxCuWZdAnmjoHDVfo8mar0TLL/XglCsdEr4/C/+WKHqI=","keyid":"SHA256:DhQ8wR5APBvFHLF/+Tc+AYvPOdTpcIDqOhxsBHRwC7U"}],"unpackedSize":310115},"main":"dist/index.js","types":"./dist/index.d.ts","engines":{"node":">=22"},"gitHead":"7d69eb858f09bf24c555fec536081622d0784e13","scripts":{"lint":"eslint --fix","test":"node --test 'dist/test/**/*.test.js'","build":"tsc && webpack","watch":"tsc --watch","format":"npm run prettier && npm run lint","ci-lint":"eslint && prettier --check .","prettier":"prettier --write .","build:all":"npm run build && npm test","build:config":"webpack","prepublishOnly":"npm run build"},"signalk":{"appIcon":"./icon.svg","displayName":"Container Manager"},"_npmUser":{"name":"dirkwa","email":"dirkwahrheit@gmail.com"},"repository":{"url":"git+https://github.com/dirkwa/signalk-container.git","type":"git"},"_npmVersion":"11.9.0","description":"Shared container runtime management (Podman/Docker) for Signal K plugins","directories":{},"_nodeVersion":"24.14.0","_hasShrinkwrap":false,"devDependencies":{"react":"^19.2.4","eslint":"^10.2.0","globals":"^17.4.0","webpack":"^5.105.4","prettier":"^3.8.1","react-dom":"^19.2.4","@eslint/js":"^10.0.1","typescript":"^5.0.0","@babel/core":"^7.29.0","@types/node":"^20.0.0","webpack-cli":"^7.0.2","babel-loader":"^10.1.1","@types/express":"^5.0.6","typescript-eslint":"^8.58.0","@babel/preset-react":"^7.28.5","@signalk/server-api":"latest","eslint-config-prettier":"^10.1.8"},"_npmOperationalInternal":{"tmp":"tmp/signalk-container_0.1.6_1775606036521_0.9047461413784834","host":"s3://npm-registry-packages-npm-production"},"signalk-plugin-enabled-by-default":true},"0.1.7":{"name":"signalk-container","version":"0.1.7","keywords":["signalk-node-server-plugin","signalk-plugin-configurator"],"license":"MIT","_id":"signalk-container@0.1.7","maintainers":[{"name":"dirkwa","email":"dirkwahrheit@gmail.com"}],"homepage":"https://github.com/dirkwa/signalk-container#readme","bugs":{"url":"https://github.com/dirkwa/signalk-container/issues"},"dist":{"shasum":"73e1f786c70576edf4a8ba09a0c717499f677ddd","tarball":"https://registry.npmjs.org/signalk-container/-/signalk-container-0.1.7.tgz","fileCount":67,"integrity":"sha512-SQBysuYeoDoQwfQcFX0ESVUegZbTtqSiEz7HCY0xCJxxdDZ7L+W1Q8PvBBHo3oLtJdCzdRaIfc2kxPv9rygEHA==","signatures":[{"sig":"MEYCIQCzXV3oo6Joof/GtXspZxNF1EVkZjv/X1w6/jy6U1T/aAIhAL8ffnmrWz8gg+pK9sOQqINUoN5wYfgrCB+L8qObXzIC","keyid":"SHA256:DhQ8wR5APBvFHLF/+Tc+AYvPOdTpcIDqOhxsBHRwC7U"}],"unpackedSize":319381},"main":"dist/index.js","types":"./dist/index.d.ts","engines":{"node":">=22"},"gitHead":"fbde34690d91382ca5e30311ed826b148a33120c","scripts":{"lint":"eslint --fix","test":"node --test 'dist/test/**/*.test.js'","build":"tsc && webpack","watch":"tsc --watch","format":"npm run prettier && npm run lint","ci-lint":"eslint && prettier --check .","prettier":"prettier --write .","build:all":"npm run build && npm test","build:config":"webpack","prepublishOnly":"npm run build"},"signalk":{"appIcon":"./icon.svg","displayName":"Container Manager"},"_npmUser":{"name":"dirkwa","email":"dirkwahrheit@gmail.com"},"repository":{"url":"git+https://github.com/dirkwa/signalk-container.git","type":"git"},"_npmVersion":"11.9.0","description":"Shared container runtime management (Podman/Docker) for Signal K plugins","directories":{},"_nodeVersion":"24.14.0","_hasShrinkwrap":false,"devDependencies":{"react":"^19.2.4","eslint":"^10.2.0","globals":"^17.4.0","webpack":"^5.105.4","prettier":"^3.8.1","react-dom":"^19.2.4","@eslint/js":"^10.0.1","typescript":"^5.0.0","@babel/core":"^7.29.0","@types/node":"^20.0.0","webpack-cli":"^7.0.2","babel-loader":"^10.1.1","@types/express":"^5.0.6","typescript-eslint":"^8.58.0","@babel/preset-react":"^7.28.5","@signalk/server-api":"latest","eslint-config-prettier":"^10.1.8"},"_npmOperationalInternal":{"tmp":"tmp/signalk-container_0.1.7_1775665638776_0.4412797014888823","host":"s3://npm-registry-packages-npm-production"},"signalk-plugin-enabled-by-default":true},"0.1.8":{"name":"signalk-container","version":"0.1.8","keywords":["signalk-node-server-plugin","signalk-plugin-configurator"],"license":"MIT","_id":"signalk-container@0.1.8","maintainers":[{"name":"dirkwa","email":"dirkwahrheit@gmail.com"}],"homepage":"https://github.com/dirkwa/signalk-container#readme","bugs":{"url":"https://github.com/dirkwa/signalk-container/issues"},"dist":{"shasum":"730e7320fee3d9c774d15cb739ba553d6239a664","tarball":"https://registry.npmjs.org/signalk-container/-/signalk-container-0.1.8.tgz","fileCount":67,"integrity":"sha512-owDTHYwX+s4T7LIzLbr4xrnOq0mCLhUzBpLqAgu9/tEiYftZ6jJgE3JZOBHlpn8yHwW4StwvsVOaXD4oJAwIkQ==","signatures":[{"sig":"MEUCIEtdXNRoo6BAm+FtHRt05iZ+791aqPwn4lqDEkHdBV0UAiEA3iPxpv405LBL3jN1s1R4K/FXOmZcg4/aRV+S17iYP8s=","keyid":"SHA256:DhQ8wR5APBvFHLF/+Tc+AYvPOdTpcIDqOhxsBHRwC7U"}],"unpackedSize":358066},"main":"dist/index.js","types":"./dist/index.d.ts","engines":{"node":">=22"},"gitHead":"a6fff6daccd1868b70df84eb007b73d91db395f4","scripts":{"lint":"eslint --fix","test":"node --test 'dist/test/**/*.test.js'","build":"tsc && webpack","watch":"tsc --watch","format":"npm run prettier && npm run lint","ci-lint":"eslint && prettier --check .","prettier":"prettier --write .","build:all":"npm run build && npm test","build:config":"webpack","prepublishOnly":"npm run build"},"signalk":{"appIcon":"./icon.svg","displayName":"Container Manager"},"_npmUser":{"name":"dirkwa","email":"dirkwahrheit@gmail.com"},"repository":{"url":"git+https://github.com/dirkwa/signalk-container.git","type":"git"},"_npmVersion":"11.9.0","description":"Shared container runtime management (Podman/Docker) for Signal K plugins","directories":{},"_nodeVersion":"24.14.0","_hasShrinkwrap":false,"devDependencies":{"react":"^19.2.4","eslint":"^10.2.0","globals":"^17.4.0","webpack":"^5.105.4","prettier":"^3.8.1","react-dom":"^19.2.4","@eslint/js":"^10.0.1","typescript":"^5.0.0","@babel/core":"^7.29.0","@types/node":"^20.0.0","webpack-cli":"^7.0.2","babel-loader":"^10.1.1","@types/express":"^5.0.6","typescript-eslint":"^8.58.0","@babel/preset-react":"^7.28.5","@signalk/server-api":"latest","eslint-config-prettier":"^10.1.8"},"_npmOperationalInternal":{"tmp":"tmp/signalk-container_0.1.8_1775689786174_0.5017826025239811","host":"s3://npm-registry-packages-npm-production"},"signalk-plugin-enabled-by-default":true},"0.2.0":{"name":"signalk-container","version":"0.2.0","keywords":["signalk-node-server-plugin","signalk-plugin-configurator"],"license":"MIT","_id":"signalk-container@0.2.0","maintainers":[{"name":"dirkwa","email":"dirkwahrheit@gmail.com"}],"homepage":"https://github.com/dirkwa/signalk-container#readme","bugs":{"url":"https://github.com/dirkwa/signalk-container/issues"},"dist":{"shasum":"0b9ee30ba9365848ffb42a0f568b65f8890e13a6","tarball":"https://registry.npmjs.org/signalk-container/-/signalk-container-0.2.0.tgz","fileCount":67,"integrity":"sha512-d+VAbNVkiGmAEl/qJYk0+62yqKPX6S6F6sat6rucSHFsR/Ck23MfYFJC7TdPjtW3TpYufXEk8X37xBjqLvLiWw==","signatures":[{"sig":"MEUCIQCsY5RpfPR+gogmHK6XgKNvjKZ2hh27uLq8Z6pN+9cHEgIgNxtjZGYlLOOybuYpMzss/T2J7cmGp76w4jiJpO0T0wo=","keyid":"SHA256:DhQ8wR5APBvFHLF/+Tc+AYvPOdTpcIDqOhxsBHRwC7U"}],"attestations":{"url":"https://registry.npmjs.org/-/npm/v1/attestations/signalk-container@0.2.0","provenance":{"predicateType":"https://slsa.dev/provenance/v1"}},"unpackedSize":358037},"main":"dist/index.js","types":"./dist/index.d.ts","engines":{"node":">=22"},"gitHead":"4d00d27d257a412f124a433a3f3944a97d46ce1e","scripts":{"lint":"eslint --fix","test":"node --test 'dist/test/**/*.test.js'","build":"tsc && webpack","watch":"tsc --watch","format":"npm run prettier && npm run lint","ci-lint":"eslint && prettier --check .","prettier":"prettier --write .","build:all":"npm run build && npm test","build:config":"webpack","prepublishOnly":"npm run build"},"signalk":{"displayName":"Container Manager"},"_npmUser":{"name":"GitHub Actions","email":"npm-oidc-no-reply@github.com","trustedPublisher":{"id":"github","oidcConfigId":"oidc:ac86e6a6-7555-4a7a-aa96-7ed2220dbf64"}},"repository":{"url":"git+https://github.com/dirkwa/signalk-container.git","type":"git"},"_npmVersion":"11.11.0","description":"Shared container runtime management (Podman/Docker) for Signal K plugins","directories":{},"_nodeVersion":"24.14.1","_hasShrinkwrap":false,"devDependencies":{"react":"^19.2.4","eslint":"^10.2.0","globals":"^17.4.0","webpack":"^5.105.4","prettier":"^3.8.1","react-dom":"^19.2.4","@eslint/js":"^10.0.1","typescript":"^5.0.0","@babel/core":"^7.29.0","@types/node":"^22.0.0","webpack-cli":"^7.0.2","babel-loader":"^10.1.1","@types/express":"^5.0.6","typescript-eslint":"^8.58.0","@babel/preset-react":"^7.28.5","@signalk/server-api":"latest","eslint-config-prettier":"^10.1.8"},"_npmOperationalInternal":{"tmp":"tmp/signalk-container_0.2.0_1777245726878_0.28921626786562915","host":"s3://npm-registry-packages-npm-production"},"signalk-plugin-enabled-by-default":true},"0.2.1":{"name":"signalk-container","version":"0.2.1","keywords":["signalk-node-server-plugin","signalk-plugin-configurator"],"license":"MIT","_id":"signalk-container@0.2.1","maintainers":[{"name":"dirkwa","email":"dirkwahrheit@gmail.com"}],"homepage":"https://github.com/dirkwa/signalk-container#readme","bugs":{"url":"https://github.com/dirkwa/signalk-container/issues"},"dist":{"shasum":"125d97bfdedc1cac73698e80425ceed14ec26430","tarball":"https://registry.npmjs.org/signalk-container/-/signalk-container-0.2.1.tgz","fileCount":69,"integrity":"sha512-fuaOftkCmzQJX5P8nPxgJ36Q4H6jlIvHA0pypKb5po17eT5rgjiKxYdgqsJzIgbo8/dfCu57yMj+ps/YhZesRw==","signatures":[{"sig":"MEUCIQCdNkrGqtVcLAuB3+VCyy3ptXQfE9nPeys48S+umQrP9wIgS1LLkflHWwOnGSroDmK7C0oSiYVcLoF6UcxzV2VHx5o=","keyid":"SHA256:DhQ8wR5APBvFHLF/+Tc+AYvPOdTpcIDqOhxsBHRwC7U"}],"attestations":{"url":"https://registry.npmjs.org/-/npm/v1/attestations/signalk-container@0.2.1","provenance":{"predicateType":"https://slsa.dev/provenance/v1"}},"unpackedSize":379744},"main":"dist/index.js","types":"./dist/index.d.ts","engines":{"node":">=22"},"gitHead":"704d41fe16f15fb2125ec1f2ba4f8dfef05a628c","scripts":{"lint":"eslint --fix","test":"node --test 'dist/test/**/*.test.js'","build":"tsc && webpack","watch":"tsc --watch","format":"npm run prettier && npm run lint","ci-lint":"eslint && prettier --check .","prettier":"prettier --write .","build:all":"npm run build && npm test","build:config":"webpack","prepublishOnly":"npm run build"},"signalk":{"appIcon":"./icon.svg","displayName":"Container Manager"},"_npmUser":{"name":"GitHub Actions","email":"npm-oidc-no-reply@github.com","trustedPublisher":{"id":"github","oidcConfigId":"oidc:ac86e6a6-7555-4a7a-aa96-7ed2220dbf64"}},"repository":{"url":"git+https://github.com/dirkwa/signalk-container.git","type":"git"},"_npmVersion":"11.11.0","description":"Shared container runtime management (Podman/Docker) for Signal K plugins","directories":{},"_nodeVersion":"24.14.1","_hasShrinkwrap":false,"devDependencies":{"react":"^19.2.4","eslint":"^10.2.0","globals":"^17.4.0","webpack":"^5.105.4","prettier":"^3.8.1","react-dom":"^19.2.4","@eslint/js":"^10.0.1","typescript":"^6.0.3","@babel/core":"^7.29.0","@types/node":"^22.0.0","webpack-cli":"^7.0.2","babel-loader":"^10.1.1","@types/express":"^5.0.6","typescript-eslint":"^8.58.0","@babel/preset-react":"^7.28.5","@signalk/server-api":"latest","eslint-config-prettier":"^10.1.8"},"_npmOperationalInternal":{"tmp":"tmp/signalk-container_0.2.1_1777264301637_0.7092801635260608","host":"s3://npm-registry-packages-npm-production"},"signalk-plugin-enabled-by-default":true},"1.0.0":{"name":"signalk-container","version":"1.0.0","keywords":["signalk-node-server-plugin","signalk-plugin-configurator"],"license":"MIT","_id":"signalk-container@1.0.0","maintainers":[{"name":"dirkwa","email":"dirkwahrheit@gmail.com"}],"homepage":"https://github.com/dirkwa/signalk-container#readme","bugs":{"url":"https://github.com/dirkwa/signalk-container/issues"},"dist":{"shasum":"571dd672a9fc9edf593ae66dacf51049e3b0eae1","tarball":"https://registry.npmjs.org/signalk-container/-/signalk-container-1.0.0.tgz","fileCount":69,"integrity":"sha512-2L3T4reSvX3x/7zf9g3iS2I6mU00GMYLG+ofZLfASqEsQ1FHC0Xn+GI077vjog6fKiA4K8c5ZuzVQcxG/7qPtQ==","signatures":[{"sig":"MEUCIQCBY1X1qurFX+AP75dq2Ulk0HGvWCoBk7GE8n2igFqMMAIgYdWsUPu506UzvHicGLb8/9ahqUBsxop5EaxCOscbP+o=","keyid":"SHA256:DhQ8wR5APBvFHLF/+Tc+AYvPOdTpcIDqOhxsBHRwC7U"}],"attestations":{"url":"https://registry.npmjs.org/-/npm/v1/attestations/signalk-container@1.0.0","provenance":{"predicateType":"https://slsa.dev/provenance/v1"}},"unpackedSize":420446},"main":"dist/index.js","types":"./dist/index.d.ts","engines":{"node":">=22"},"gitHead":"4a9853b88340ef187ce3f630ed3b9228c867c257","scripts":{"lint":"eslint --fix","test":"node --test 'dist/test/**/*.test.js'","build":"tsc && webpack","watch":"tsc --watch","format":"npm run prettier && npm run lint","ci-lint":"eslint && prettier --check .","prettier":"prettier --write .","build:all":"npm run build && npm test","build:config":"webpack","prepublishOnly":"npm run build"},"signalk":{"appIcon":"./icon.svg","displayName":"Container Manager"},"_npmUser":{"name":"GitHub Actions","email":"npm-oidc-no-reply@github.com","trustedPublisher":{"id":"github","oidcConfigId":"oidc:ac86e6a6-7555-4a7a-aa96-7ed2220dbf64"}},"repository":{"url":"git+https://github.com/dirkwa/signalk-container.git","type":"git"},"_npmVersion":"11.11.0","description":"Shared container runtime management (Podman/Docker) for Signal K plugins","directories":{},"_nodeVersion":"24.14.1","_hasShrinkwrap":false,"devDependencies":{"react":"^19.2.4","eslint":"^10.2.0","globals":"^17.4.0","webpack":"^5.105.4","prettier":"^3.8.1","react-dom":"^19.2.4","@eslint/js":"^10.0.1","typescript":"^6.0.3","@babel/core":"^7.29.0","@types/node":"^22.0.0","webpack-cli":"^7.0.2","babel-loader":"^10.1.1","@types/express":"^5.0.6","typescript-eslint":"^8.58.0","@babel/preset-react":"^7.28.5","@signalk/server-api":"latest","eslint-config-prettier":"^10.1.8"},"_npmOperationalInternal":{"tmp":"tmp/signalk-container_1.0.0_1778111462062_0.4882843155329821","host":"s3://npm-registry-packages-npm-production"},"signalk-plugin-enabled-by-default":true},"1.1.0":{"name":"signalk-container","version":"1.1.0","keywords":["signalk-node-server-plugin","signalk-plugin-configurator"],"license":"MIT","_id":"signalk-container@1.1.0","maintainers":[{"name":"dirkwa","email":"dirkwahrheit@gmail.com"}],"homepage":"https://github.com/dirkwa/signalk-container#readme","bugs":{"url":"https://github.com/dirkwa/signalk-container/issues"},"dist":{"shasum":"87f710a857fc9a6a4729d6e9dacc5d85ef47cc7d","tarball":"https://registry.npmjs.org/signalk-container/-/signalk-container-1.1.0.tgz","fileCount":69,"integrity":"sha512-OMrRUlxNIegK/C2UqcQwcWZHR1zjqrBTNTCv15M1Z0o6i7H486tqN0DOr3nEPQrafalMVqbASTJTqgJveGLUMg==","signatures":[{"sig":"MEUCIBHXUSyBpYSjDBmcnlcLNJkVXKqyzOSgEBa/JpTxSWYOAiEAh1/EhmnjlrG/Ql6e4CPBUjbRigHKSJJGvj8/rdNDhuw=","keyid":"SHA256:DhQ8wR5APBvFHLF/+Tc+AYvPOdTpcIDqOhxsBHRwC7U"}],"attestations":{"url":"https://registry.npmjs.org/-/npm/v1/attestations/signalk-container@1.1.0","provenance":{"predicateType":"https://slsa.dev/provenance/v1"}},"unpackedSize":434380},"main":"dist/index.js","types":"./dist/index.d.ts","engines":{"node":">=22"},"gitHead":"f6a45d28d8ef268b7f813912bf54cdba34b9047a","scripts":{"lint":"eslint --fix","test":"node --test 'dist/test/**/*.test.js'","build":"tsc && webpack","watch":"tsc --watch","format":"npm run prettier && npm run lint","ci-lint":"eslint && prettier --check .","prettier":"prettier --write .","build:all":"npm run build && npm test","build:config":"webpack","prepublishOnly":"npm run build"},"signalk":{"appIcon":"./icon.svg","displayName":"Container Manager"},"_npmUser":{"name":"GitHub Actions","email":"npm-oidc-no-reply@github.com","trustedPublisher":{"id":"github","oidcConfigId":"oidc:ac86e6a6-7555-4a7a-aa96-7ed2220dbf64"}},"repository":{"url":"git+https://github.com/dirkwa/signalk-container.git","type":"git"},"_npmVersion":"11.11.0","description":"Shared container runtime management (Podman/Docker) for Signal K plugins","directories":{},"_nodeVersion":"24.14.1","_hasShrinkwrap":false,"devDependencies":{"react":"^19.2.4","eslint":"^10.2.0","globals":"^17.4.0","webpack":"^5.105.4","prettier":"^3.8.1","react-dom":"^19.2.4","@eslint/js":"^10.0.1","typescript":"^6.0.3","@babel/core":"^7.29.0","@types/node":"^22.0.0","webpack-cli":"^7.0.2","babel-loader":"^10.1.1","@types/express":"^5.0.6","typescript-eslint":"^8.58.0","@babel/preset-react":"^7.28.5","@signalk/server-api":"latest","eslint-config-prettier":"^10.1.8"},"_npmOperationalInternal":{"tmp":"tmp/signalk-container_1.1.0_1778114051913_0.8498626790495054","host":"s3://npm-registry-packages-npm-production"},"signalk-plugin-enabled-by-default":true},"1.2.0":{"name":"signalk-container","version":"1.2.0","keywords":["signalk-node-server-plugin","signalk-plugin-configurator"],"license":"MIT","_id":"signalk-container@1.2.0","maintainers":[{"name":"dirkwa","email":"dirkwahrheit@gmail.com"}],"homepage":"https://github.com/dirkwa/signalk-container#readme","bugs":{"url":"https://github.com/dirkwa/signalk-container/issues"},"dist":{"shasum":"942c218f650bd8b4d755227c22cb7ccd5594a1a1","tarball":"https://registry.npmjs.org/signalk-container/-/signalk-container-1.2.0.tgz","fileCount":69,"integrity":"sha512-/EYmQjHW2Ee38u50sZrs3HOBhO15oJHX2PSxvKlwzp2p4Zb4G6PKE1XVJifj1bUJJP7dp+jafk0eUEKeA7h/qg==","signatures":[{"sig":"MEUCIQDr8h7uWV2rGsBUdQ7RrpNXoEoJsH0Y7zwFqtHmbqUcfQIgbvyzu+EC7phObcEZdplFZ6e36R71v7M8nvRJU6hksaE=","keyid":"SHA256:DhQ8wR5APBvFHLF/+Tc+AYvPOdTpcIDqOhxsBHRwC7U"}],"attestations":{"url":"https://registry.npmjs.org/-/npm/v1/attestations/signalk-container@1.2.0","provenance":{"predicateType":"https://slsa.dev/provenance/v1"}},"unpackedSize":436118},"main":"dist/index.js","types":"./dist/index.d.ts","engines":{"node":">=22"},"gitHead":"dc7df82fa4c4aed70a9c075bf5a89245cae6c86d","scripts":{"lint":"eslint --fix","test":"node --test 'dist/test/**/*.test.js'","build":"tsc && webpack","watch":"tsc --watch","format":"npm run prettier && npm run lint","ci-lint":"eslint && prettier --check .","prettier":"prettier --write .","build:all":"npm run build && npm test","build:config":"webpack","prepublishOnly":"npm run build"},"signalk":{"appIcon":"./icon.svg","displayName":"Container Manager"},"_npmUser":{"name":"GitHub Actions","email":"npm-oidc-no-reply@github.com","trustedPublisher":{"id":"github","oidcConfigId":"oidc:ac86e6a6-7555-4a7a-aa96-7ed2220dbf64"}},"repository":{"url":"git+https://github.com/dirkwa/signalk-container.git","type":"git"},"_npmVersion":"11.11.0","description":"Shared container runtime management (Podman/Docker) for Signal K plugins","directories":{},"_nodeVersion":"24.14.1","_hasShrinkwrap":false,"devDependencies":{"react":"^19.2.4","eslint":"^10.2.0","globals":"^17.4.0","webpack":"^5.105.4","prettier":"^3.8.1","react-dom":"^19.2.4","@eslint/js":"^10.0.1","typescript":"^6.0.3","@babel/core":"^7.29.0","@types/node":"^22.0.0","webpack-cli":"^7.0.2","babel-loader":"^10.1.1","@types/express":"^5.0.6","typescript-eslint":"^8.58.0","@babel/preset-react":"^7.28.5","@signalk/server-api":"latest","eslint-config-prettier":"^10.1.8"},"_npmOperationalInternal":{"tmp":"tmp/signalk-container_1.2.0_1778120380427_0.47981146537958197","host":"s3://npm-registry-packages-npm-production"},"signalk-plugin-enabled-by-default":true},"1.2.1":{"name":"signalk-container","version":"1.2.1","keywords":["signalk-node-server-plugin","signalk-plugin-configurator"],"license":"MIT","_id":"signalk-container@1.2.1","maintainers":[{"name":"dirkwa","email":"dirkwahrheit@gmail.com"}],"homepage":"https://github.com/dirkwa/signalk-container#readme","bugs":{"url":"https://github.com/dirkwa/signalk-container/issues"},"dist":{"shasum":"5f790552115c51554dac91a6eacb19ec93b7f4e6","tarball":"https://registry.npmjs.org/signalk-container/-/signalk-container-1.2.1.tgz","fileCount":69,"integrity":"sha512-MwjLfXclnAQGxFiZjWgizYlpVFqSUg2JnqV6Psp7Nt/mreKM6rRmIlchRoAuJGcRD5urWNAimIOsu8YPFcwoRQ==","signatures":[{"sig":"MEYCIQDektqtVVSH4p7BW+4n2RWdhDrqmTnymDyWJzAiwnkyFAIhAL2ZVHNeLswe5ebfAN+Dm7//YJ4cwCM9fqtFcb6cUTf1","keyid":"SHA256:DhQ8wR5APBvFHLF/+Tc+AYvPOdTpcIDqOhxsBHRwC7U"}],"attestations":{"url":"https://registry.npmjs.org/-/npm/v1/attestations/signalk-container@1.2.1","provenance":{"predicateType":"https://slsa.dev/provenance/v1"}},"unpackedSize":437436},"main":"dist/index.js","types":"./dist/index.d.ts","engines":{"node":">=22"},"gitHead":"514c15c664ed78220794a8bdbf10236b27bb867d","scripts":{"lint":"eslint --fix","test":"node --test 'dist/test/**/*.test.js'","build":"tsc && webpack","watch":"tsc --watch","format":"npm run prettier && npm run lint","ci-lint":"eslint && prettier --check .","prettier":"prettier --write .","build:all":"npm run build && npm test","build:config":"webpack","prepublishOnly":"npm run build"},"signalk":{"appIcon":"./icon.svg","displayName":"Container Manager"},"_npmUser":{"name":"GitHub Actions","email":"npm-oidc-no-reply@github.com","trustedPublisher":{"id":"github","oidcConfigId":"oidc:ac86e6a6-7555-4a7a-aa96-7ed2220dbf64"}},"repository":{"url":"git+https://github.com/dirkwa/signalk-container.git","type":"git"},"_npmVersion":"11.11.0","description":"Shared container runtime management (Podman/Docker) for Signal K plugins","directories":{},"_nodeVersion":"24.14.1","_hasShrinkwrap":false,"devDependencies":{"react":"^19.2.4","eslint":"^10.2.0","globals":"^17.4.0","webpack":"^5.105.4","prettier":"^3.8.1","react-dom":"^19.2.4","@eslint/js":"^10.0.1","typescript":"^6.0.3","@babel/core":"^7.29.0","@types/node":"^22.0.0","webpack-cli":"^7.0.2","babel-loader":"^10.1.1","@types/express":"^5.0.6","typescript-eslint":"^8.58.0","@babel/preset-react":"^7.28.5","@signalk/server-api":"latest","eslint-config-prettier":"^10.1.8"},"_npmOperationalInternal":{"tmp":"tmp/signalk-container_1.2.1_1778122774657_0.6855532056451603","host":"s3://npm-registry-packages-npm-production"},"signalk-plugin-enabled-by-default":true},"1.3.0":{"name":"signalk-container","version":"1.3.0","keywords":["signalk-node-server-plugin","signalk-plugin-configurator"],"license":"MIT","_id":"signalk-container@1.3.0","maintainers":[{"name":"dirkwa","email":"dirkwahrheit@gmail.com"}],"homepage":"https://github.com/dirkwa/signalk-container#readme","bugs":{"url":"https://github.com/dirkwa/signalk-container/issues"},"dist":{"shasum":"1d8596fc810aff6e19df6b311c305c8a31eacb22","tarball":"https://registry.npmjs.org/signalk-container/-/signalk-container-1.3.0.tgz","fileCount":69,"integrity":"sha512-9ICTR4/ZBnlQnxn7ov/1/MuvMwmCvo/0E1WFVrsru5iCbuEEPXqOy39c6Y0N/rD8MpiA11ciRZDv1xsw8GdXYQ==","signatures":[{"sig":"MEUCIQCAOFgr/YK1kL5CbSo3v4uMtwlcJvNTmtQ3zgJW+4/QfQIgU62OKHyFJIuBiuYWXA5Bz6qjgYAFcr6ld8aAFNSvtJA=","keyid":"SHA256:DhQ8wR5APBvFHLF/+Tc+AYvPOdTpcIDqOhxsBHRwC7U"}],"attestations":{"url":"https://registry.npmjs.org/-/npm/v1/attestations/signalk-container@1.3.0","provenance":{"predicateType":"https://slsa.dev/provenance/v1"}},"unpackedSize":455214},"main":"dist/index.js","types":"./dist/index.d.ts","engines":{"node":">=22"},"gitHead":"09de4ab819e5f7790e592dc83f97532dfc4af26d","scripts":{"lint":"eslint --fix","test":"node --test 'dist/test/**/*.test.js'","build":"tsc && webpack","watch":"tsc --watch","format":"npm run prettier && npm run lint","ci-lint":"eslint && prettier --check .","prettier":"prettier --write .","build:all":"npm run build && npm test","build:config":"webpack","prepublishOnly":"npm run build"},"signalk":{"appIcon":"./icon.svg","displayName":"Container Manager"},"_npmUser":{"name":"GitHub Actions","email":"npm-oidc-no-reply@github.com","trustedPublisher":{"id":"github","oidcConfigId":"oidc:ac86e6a6-7555-4a7a-aa96-7ed2220dbf64"}},"repository":{"url":"git+https://github.com/dirkwa/signalk-container.git","type":"git"},"_npmVersion":"11.11.0","description":"Shared container runtime management (Podman/Docker) for Signal K plugins","directories":{},"_nodeVersion":"24.14.1","_hasShrinkwrap":false,"devDependencies":{"react":"^19.2.4","eslint":"^10.2.0","globals":"^17.4.0","webpack":"^5.105.4","prettier":"^3.8.1","react-dom":"^19.2.4","@eslint/js":"^10.0.1","typescript":"^6.0.3","@babel/core":"^7.29.0","@types/node":"^22.0.0","webpack-cli":"^7.0.2","babel-loader":"^10.1.1","@types/express":"^5.0.6","typescript-eslint":"^8.58.0","@babel/preset-react":"^7.28.5","@signalk/server-api":"latest","eslint-config-prettier":"^10.1.8"},"_npmOperationalInternal":{"tmp":"tmp/signalk-container_1.3.0_1778211734237_0.3403392970218735","host":"s3://npm-registry-packages-npm-production"},"signalk-plugin-enabled-by-default":true},"1.3.1":{"name":"signalk-container","version":"1.3.1","keywords":["signalk-node-server-plugin","signalk-plugin-configurator"],"license":"MIT","_id":"signalk-container@1.3.1","maintainers":[{"name":"dirkwa","email":"dirkwahrheit@gmail.com"}],"homepage":"https://github.com/dirkwa/signalk-container#readme","bugs":{"url":"https://github.com/dirkwa/signalk-container/issues"},"dist":{"shasum":"8bc901ec2eeda8709cf3b592fc68d47e33deb526","tarball":"https://registry.npmjs.org/signalk-container/-/signalk-container-1.3.1.tgz","fileCount":69,"integrity":"sha512-lrufb74ugO8hnAgoiTl+SwR9eCH9db6BNsB/SasX+9OxmEsIFAhn5+oqvqypqJFjn1NCNpPDYaSTAjuFoUSWwA==","signatures":[{"sig":"MEUCIQDldFTQk91VP2EiOR8sdrxhib+FX+yknSjEEuYL793t8AIgbqdAQoPsoJts4uYb7Kn0gxnF4diIWYxajLRRCoOTxpo=","keyid":"SHA256:DhQ8wR5APBvFHLF/+Tc+AYvPOdTpcIDqOhxsBHRwC7U"}],"attestations":{"url":"https://registry.npmjs.org/-/npm/v1/attestations/signalk-container@1.3.1","provenance":{"predicateType":"https://slsa.dev/provenance/v1"}},"unpackedSize":457604},"main":"dist/index.js","types":"./dist/index.d.ts","engines":{"node":">=22"},"gitHead":"5823aa378abeec303705cd0ce6ae79f4a1db88d0","scripts":{"lint":"eslint --fix","test":"node --test 'dist/test/**/*.test.js'","build":"tsc && webpack","watch":"tsc --watch","format":"npm run prettier && npm run lint","ci-lint":"eslint && prettier --check .","prettier":"prettier --write .","build:all":"npm run build && npm test","build:config":"webpack","prepublishOnly":"npm run build"},"signalk":{"appIcon":"./icon.svg","displayName":"Container Manager"},"_npmUser":{"name":"GitHub Actions","email":"npm-oidc-no-reply@github.com","trustedPublisher":{"id":"github","oidcConfigId":"oidc:ac86e6a6-7555-4a7a-aa96-7ed2220dbf64"}},"repository":{"url":"git+https://github.com/dirkwa/signalk-container.git","type":"git"},"_npmVersion":"11.11.0","description":"Shared container runtime management (Podman/Docker) for Signal K plugins","directories":{},"_nodeVersion":"24.14.1","_hasShrinkwrap":false,"devDependencies":{"react":"^19.2.4","eslint":"^10.2.0","globals":"^17.4.0","webpack":"^5.105.4","prettier":"^3.8.1","react-dom":"^19.2.4","@eslint/js":"^10.0.1","typescript":"^6.0.3","@babel/core":"^7.29.0","@types/node":"^22.0.0","webpack-cli":"^7.0.2","babel-loader":"^10.1.1","@types/express":"^5.0.6","typescript-eslint":"^8.58.0","@babel/preset-react":"^7.28.5","@signalk/server-api":"latest","eslint-config-prettier":"^10.1.8"},"_npmOperationalInternal":{"tmp":"tmp/signalk-container_1.3.1_1778265265322_0.08475399002619244","host":"s3://npm-registry-packages-npm-production"},"signalk-plugin-enabled-by-default":true},"1.3.2":{"name":"signalk-container","version":"1.3.2","keywords":["signalk-node-server-plugin","signalk-plugin-configurator"],"author":{"name":"Dirk Wahrheit","email":"dirkwahrheit@gmail.com"},"license":"MIT","_id":"signalk-container@1.3.2","maintainers":[{"name":"dirkwa","email":"dirkwahrheit@gmail.com"}],"homepage":"https://github.com/dirkwa/signalk-container#readme","bugs":{"url":"https://github.com/dirkwa/signalk-container/issues"},"dist":{"shasum":"81340b5d477f418cb7478237859a7f815cd18649","tarball":"https://registry.npmjs.org/signalk-container/-/signalk-container-1.3.2.tgz","fileCount":69,"integrity":"sha512-QGGJo5JtxYVAwyrllf8wwu8u/mMZDUNbVaWDcZx8iHC55kjleTnoTJeQzXIYoz1G7sQ+s9/XCD/7c1xGYM/U+A==","signatures":[{"sig":"MEQCIFqz923g5gtgKYMKBscX7nuU38iQ6UHSqe6JzfsB0HqnAiAvQZrlwdv9rACLIxN/zYlfuV4wsXNUz8cQukJUVNR9tA==","keyid":"SHA256:DhQ8wR5APBvFHLF/+Tc+AYvPOdTpcIDqOhxsBHRwC7U"}],"attestations":{"url":"https://registry.npmjs.org/-/npm/v1/attestations/signalk-container@1.3.2","provenance":{"predicateType":"https://slsa.dev/provenance/v1"}},"unpackedSize":457658},"main":"dist/index.js","types":"./dist/index.d.ts","engines":{"node":">=22"},"gitHead":"6507ecc5a09f70bf429e0438d5bd2f8f573e23bc","scripts":{"lint":"eslint --fix","test":"node --test 'dist/test/**/*.test.js'","build":"tsc && webpack","watch":"tsc --watch","format":"npm run prettier && npm run lint","ci-lint":"eslint && prettier --check .","prettier":"prettier --write .","build:all":"npm run build && npm test","build:config":"webpack","prepublishOnly":"npm run build"},"signalk":{"appIcon":"./icon.svg","displayName":"Container Manager"},"_npmUser":{"name":"GitHub Actions","email":"npm-oidc-no-reply@github.com","trustedPublisher":{"id":"github","oidcConfigId":"oidc:ac86e6a6-7555-4a7a-aa96-7ed2220dbf64"}},"repository":{"url":"git+https://github.com/dirkwa/signalk-container.git","type":"git"},"_npmVersion":"11.11.0","description":"Shared container runtime management (Podman/Docker) for Signal K plugins","directories":{},"_nodeVersion":"24.14.1","_hasShrinkwrap":false,"devDependencies":{"react":"^19.2.4","eslint":"^10.2.0","globals":"^17.4.0","webpack":"^5.105.4","prettier":"^3.8.1","react-dom":"^19.2.4","@eslint/js":"^10.0.1","typescript":"^6.0.3","@babel/core":"^7.29.0","@types/node":"^22.0.0","webpack-cli":"^7.0.2","babel-loader":"^10.1.1","@types/express":"^5.0.6","typescript-eslint":"^8.58.0","@babel/preset-react":"^7.28.5","@signalk/server-api":"latest","eslint-config-prettier":"^10.1.8"},"_npmOperationalInternal":{"tmp":"tmp/signalk-container_1.3.2_1778266500026_0.6410821547771985","host":"s3://npm-registry-packages-npm-production"},"signalk-plugin-enabled-by-default":true},"1.4.0":{"name":"signalk-container","version":"1.4.0","keywords":["signalk-node-server-plugin","signalk-plugin-configurator"],"author":{"name":"Dirk Wahrheit","email":"dirkwahrheit@gmail.com"},"license":"MIT","_id":"signalk-container@1.4.0","maintainers":[{"name":"dirkwa","email":"dirkwahrheit@gmail.com"}],"homepage":"https://github.com/dirkwa/signalk-container#readme","bugs":{"url":"https://github.com/dirkwa/signalk-container/issues"},"dist":{"shasum":"1c1376d61366243afff3360f7c450817b921a4b9","tarball":"https://registry.npmjs.org/signalk-container/-/signalk-container-1.4.0.tgz","fileCount":69,"integrity":"sha512-3b7fpQzZv/kR8v+4jrE6Z/fDe38A3fgn8g8ho26Bo2KknFlObgGbdoxiwUQ/mBINWkSi8XSvoMS3hMF3ufpA9Q==","signatures":[{"sig":"MEUCIDzxFSBwlY1WMhDldymH0D80mSPoyhQ86kpricZ/abkSAiEAzEfLyGTJYDmiJCHNrQiDVCSr7NY/rQLD9kCamhLoEHc=","keyid":"SHA256:DhQ8wR5APBvFHLF/+Tc+AYvPOdTpcIDqOhxsBHRwC7U"}],"attestations":{"url":"https://registry.npmjs.org/-/npm/v1/attestations/signalk-container@1.4.0","provenance":{"predicateType":"https://slsa.dev/provenance/v1"}},"unpackedSize":469741},"main":"dist/index.js","types":"./dist/index.d.ts","engines":{"node":">=22"},"gitHead":"1c99173995556d22f981d1973d43b3da8e329b55","scripts":{"lint":"eslint --fix","test":"node --test 'dist/test/**/*.test.js'","build":"tsc && webpack","watch":"tsc --watch","format":"npm run prettier && npm run lint","ci-lint":"eslint && prettier --check .","prettier":"prettier --write .","build:all":"npm run build && npm test","build:config":"webpack","prepublishOnly":"npm run build"},"signalk":{"appIcon":"./icon.svg","displayName":"Container Manager"},"_npmUser":{"name":"GitHub Actions","email":"npm-oidc-no-reply@github.com","trustedPublisher":{"id":"github","oidcConfigId":"oidc:ac86e6a6-7555-4a7a-aa96-7ed2220dbf64"}},"repository":{"url":"git+https://github.com/dirkwa/signalk-container.git","type":"git"},"_npmVersion":"11.11.0","description":"Shared container runtime management (Podman/Docker) for Signal K plugins","directories":{},"_nodeVersion":"24.14.1","_hasShrinkwrap":false,"devDependencies":{"react":"^19.2.4","eslint":"^10.2.0","globals":"^17.4.0","webpack":"^5.105.4","prettier":"^3.8.1","react-dom":"^19.2.4","@eslint/js":"^10.0.1","typescript":"^6.0.3","@babel/core":"^7.29.0","@types/node":"^22.0.0","webpack-cli":"^7.0.2","babel-loader":"^10.1.1","@types/express":"^5.0.6","typescript-eslint":"^8.58.0","@babel/preset-react":"^7.28.5","@signalk/server-api":"latest","eslint-config-prettier":"^10.1.8"},"_npmOperationalInternal":{"tmp":"tmp/signalk-container_1.4.0_1778276576894_0.394614183947823","host":"s3://npm-registry-packages-npm-production"},"signalk-plugin-enabled-by-default":true},"1.4.1":{"name":"signalk-container","version":"1.4.1","keywords":["signalk-node-server-plugin","signalk-plugin-configurator"],"author":{"name":"Dirk Wahrheit","email":"dirkwahrheit@gmail.com"},"license":"MIT","_id":"signalk-container@1.4.1","maintainers":[{"name":"dirkwa","email":"dirkwahrheit@gmail.com"}],"homepage":"https://github.com/dirkwa/signalk-container#readme","bugs":{"url":"https://github.com/dirkwa/signalk-container/issues"},"dist":{"shasum":"eb1c130100f72ac3306137a7225c284858d60ecf","tarball":"https://registry.npmjs.org/signalk-container/-/signalk-container-1.4.1.tgz","fileCount":69,"integrity":"sha512-qYT3GLCZPQ/Giz6oJYCvwbWRRLxyqOecSRhtCy0y6tzsGLfAXckmLZ06UNoOUCZshS+T8r6OTrKS2ltyp0RSWQ==","signatures":[{"sig":"MEUCIQC+KFHBIJRh9lBnfdz5r0mcdxcBX2KZ6irNT/UoH6lngAIgFFFh8kSeSTGQnNUYAcuX6FweOKNwp/2/Wu6+bwlPSJ0=","keyid":"SHA256:DhQ8wR5APBvFHLF/+Tc+AYvPOdTpcIDqOhxsBHRwC7U"}],"attestations":{"url":"https://registry.npmjs.org/-/npm/v1/attestations/signalk-container@1.4.1","provenance":{"predicateType":"https://slsa.dev/provenance/v1"}},"unpackedSize":486079},"main":"dist/index.js","types":"./dist/index.d.ts","engines":{"node":">=22"},"gitHead":"05787721f88b8cacaef48fbd07a9880294d9c0fb","scripts":{"lint":"eslint --fix","test":"node --test 'dist/test/**/*.test.js'","build":"tsc && webpack","watch":"tsc --watch","format":"npm run prettier && npm run lint","ci-lint":"eslint && prettier --check .","prettier":"prettier --write .","build:all":"npm run build && npm test","build:config":"webpack","prepublishOnly":"npm run build"},"signalk":{"appIcon":"./icon.svg","displayName":"Container Manager"},"_npmUser":{"name":"GitHub Actions","email":"npm-oidc-no-reply@github.com","trustedPublisher":{"id":"github","oidcConfigId":"oidc:ac86e6a6-7555-4a7a-aa96-7ed2220dbf64"}},"repository":{"url":"git+https://github.com/dirkwa/signalk-container.git","type":"git"},"_npmVersion":"11.11.0","description":"Shared container runtime management (Podman/Docker) for Signal K plugins","directories":{},"_nodeVersion":"24.14.1","_hasShrinkwrap":false,"devDependencies":{"react":"^19.2.4","eslint":"^10.2.0","globals":"^17.4.0","webpack":"^5.105.4","prettier":"^3.8.1","react-dom":"^19.2.4","@eslint/js":"^10.0.1","typescript":"^6.0.3","@babel/core":"^7.29.0","@types/node":"^22.0.0","webpack-cli":"^7.0.2","babel-loader":"^10.1.1","@types/express":"^5.0.6","typescript-eslint":"^8.58.0","@babel/preset-react":"^7.28.5","@signalk/server-api":"latest","eslint-config-prettier":"^10.1.8"},"_npmOperationalInternal":{"tmp":"tmp/signalk-container_1.4.1_1778334023977_0.9553397638131709","host":"s3://npm-registry-packages-npm-production"},"signalk-plugin-enabled-by-default":true},"1.5.0":{"name":"signalk-container","version":"1.5.0","keywords":["signalk-node-server-plugin","signalk-plugin-configurator"],"author":{"name":"Dirk Wahrheit","email":"dirkwahrheit@gmail.com"},"license":"MIT","_id":"signalk-container@1.5.0","maintainers":[{"name":"dirkwa","email":"dirkwahrheit@gmail.com"}],"homepage":"https://github.com/dirkwa/signalk-container#readme","bugs":{"url":"https://github.com/dirkwa/signalk-container/issues"},"dist":{"shasum":"df1b8efdc0b7ce430a28452a7ea3b8f6b144ee7b","tarball":"https://registry.npmjs.org/signalk-container/-/signalk-container-1.5.0.tgz","fileCount":69,"integrity":"sha512-ln4IZvhRAvKi6jIO/Pp4uMgB3O82q0GErYAJ6ogW4emZJWOMTcyhRsRDtsZkOTRuMQ3CrbAvj58fT7Lri2+8/Q==","signatures":[{"sig":"MEQCIHCNLx4wRTlqe7T1YqOl031BipZr4zMqx0xcuLBWEuGjAiAUg1BnO32FuRt+zZ+8ctKkdTs0uGQj+wCLzQs/FrfXnw==","keyid":"SHA256:DhQ8wR5APBvFHLF/+Tc+AYvPOdTpcIDqOhxsBHRwC7U"}],"attestations":{"url":"https://registry.npmjs.org/-/npm/v1/attestations/signalk-container@1.5.0","provenance":{"predicateType":"https://slsa.dev/provenance/v1"}},"unpackedSize":505564},"main":"dist/index.js","types":"./dist/index.d.ts","engines":{"node":">=22"},"gitHead":"6b0038c07d88b348869b500c7b981677ca12901b","scripts":{"lint":"eslint --fix","test":"node --test 'dist/test/**/*.test.js'","build":"tsc && webpack","watch":"tsc --watch","format":"npm run prettier && npm run lint","ci-lint":"eslint && prettier --check .","prettier":"prettier --write .","build:all":"npm run build && npm test","build:config":"webpack","prepublishOnly":"npm run build"},"signalk":{"appIcon":"./icon.svg","displayName":"Container Manager"},"_npmUser":{"name":"GitHub Actions","email":"npm-oidc-no-reply@github.com","trustedPublisher":{"id":"github","oidcConfigId":"oidc:ac86e6a6-7555-4a7a-aa96-7ed2220dbf64"}},"repository":{"url":"git+https://github.com/dirkwa/signalk-container.git","type":"git"},"_npmVersion":"11.11.0","description":"Shared container runtime management (Podman/Docker) for Signal K plugins","directories":{},"_nodeVersion":"24.14.1","_hasShrinkwrap":false,"devDependencies":{"react":"^19.2.4","eslint":"^10.2.0","globals":"^17.4.0","webpack":"^5.105.4","prettier":"^3.8.1","react-dom":"^19.2.4","@eslint/js":"^10.0.1","typescript":"^6.0.3","@babel/core":"^7.29.0","@types/node":"^22.0.0","webpack-cli":"^7.0.2","babel-loader":"^10.1.1","@types/express":"^5.0.6","typescript-eslint":"^8.58.0","@babel/preset-react":"^7.28.5","@signalk/server-api":"latest","eslint-config-prettier":"^10.1.8"},"_npmOperationalInternal":{"tmp":"tmp/signalk-container_1.5.0_1778473125336_0.5173876692523944","host":"s3://npm-registry-packages-npm-production"},"signalk-plugin-enabled-by-default":true},"1.6.0":{"name":"signalk-container","version":"1.6.0","keywords":["signalk-node-server-plugin","signalk-plugin-configurator"],"author":{"name":"Dirk Wahrheit","email":"dirkwahrheit@gmail.com"},"license":"MIT","_id":"signalk-container@1.6.0","maintainers":[{"name":"dirkwa","email":"dirkwahrheit@gmail.com"}],"homepage":"https://github.com/dirkwa/signalk-container#readme","bugs":{"url":"https://github.com/dirkwa/signalk-container/issues"},"dist":{"shasum":"8e2cd236f1b6fc6ca3ab6c36ba2d0df706769e04","tarball":"https://registry.npmjs.org/signalk-container/-/signalk-container-1.6.0.tgz","fileCount":74,"integrity":"sha512-DMFd5bQ6INhc/FXAQMTsBCz+xsYPWdNNSwE0yRCF+CsTifF+ukzpLKNiTI2pjUund3mV5rN2MdUHdtWq+cprYA==","signatures":[{"sig":"MEYCIQCABBy2XgeCa5iwRHdGlwaPZylVhtqcgvHevAsMTyj2kgIhAIxxcMbxmxNr+Jn6lr1eLoNX8QtqQellmoslQw24iTbo","keyid":"SHA256:DhQ8wR5APBvFHLF/+Tc+AYvPOdTpcIDqOhxsBHRwC7U"}],"attestations":{"url":"https://registry.npmjs.org/-/npm/v1/attestations/signalk-container@1.6.0","provenance":{"predicateType":"https://slsa.dev/provenance/v1"}},"unpackedSize":819982},"main":"dist/index.js","types":"./dist/index.d.ts","engines":{"node":">=22"},"gitHead":"cc31a320c6dbb3d9706850f941e7ce81e8b9fa15","scripts":{"lint":"eslint --fix","test":"node --test \"dist/test/**/*.test.js\"","build":"npm run clean && tsc && webpack","clean":"rimraf dist","watch":"tsc --watch","format":"npm run prettier && npm run lint","ci-lint":"eslint && prettier --check .","prettier":"prettier --write .","build:all":"npm run build && npm test","build:config":"webpack","prepublishOnly":"npm run build"},"signalk":{"appIcon":"./icon.svg","displayName":"Container Manager","screenshots":["./doc/screenshots/signalk-container-1.png","./doc/screenshots/signalk-container-2.png"]},"_npmUser":{"name":"GitHub Actions","email":"npm-oidc-no-reply@github.com","trustedPublisher":{"id":"github","oidcConfigId":"oidc:ac86e6a6-7555-4a7a-aa96-7ed2220dbf64"}},"repository":{"url":"git+https://github.com/dirkwa/signalk-container.git","type":"git"},"_npmVersion":"11.11.0","description":"Shared container runtime management (Podman/Docker) for Signal K plugins","directories":{},"_nodeVersion":"24.14.1","_hasShrinkwrap":false,"devDependencies":{"react":"^19.2.4","eslint":"^10.2.0","rimraf":"^6.1.3","globals":"^17.4.0","webpack":"^5.105.4","prettier":"^3.8.1","react-dom":"^19.2.4","@eslint/js":"^10.0.1","typescript":"^6.0.3","@babel/core":"^7.29.0","@types/node":"^22.0.0","webpack-cli":"^7.0.2","babel-loader":"^10.1.1","@types/express":"^5.0.6","typescript-eslint":"^8.58.0","@babel/preset-react":"^7.28.5","@signalk/server-api":"latest","eslint-config-prettier":"^10.1.8"},"_npmOperationalInternal":{"tmp":"tmp/signalk-container_1.6.0_1778538159983_0.36264850319181563","host":"s3://npm-registry-packages-npm-production"},"signalk-plugin-enabled-by-default":true},"1.7.0":{"name":"signalk-container","version":"1.7.0","keywords":["signalk-node-server-plugin","signalk-plugin-configurator"],"author":{"name":"Dirk Wahrheit","email":"dirkwahrheit@gmail.com"},"license":"MIT","_id":"signalk-container@1.7.0","maintainers":[{"name":"dirkwa","email":"dirkwahrheit@gmail.com"}],"homepage":"https://github.com/dirkwa/signalk-container#readme","bugs":{"url":"https://github.com/dirkwa/signalk-container/issues"},"dist":{"shasum":"fe295d4c2cbc13d575bf7c39ac0089e7abf816e1","tarball":"https://registry.npmjs.org/signalk-container/-/signalk-container-1.7.0.tgz","fileCount":79,"integrity":"sha512-pS99YeUKp/y87k76S++u/owAnBXNz2Eol30VSNwH0FVmxvtnNTTe32r2KyQ0yC/FiAiFqbApwf5j7rLuG123qA==","signatures":[{"sig":"MEQCICCPUTFZx/uccB1dsluo0V/UFXfBceEm7vFy38LOCy9WAiB7DcrXuFK233SKPNl92V5JG2z/wY3MoXP9sFSZZ5LkdQ==","keyid":"SHA256:DhQ8wR5APBvFHLF/+Tc+AYvPOdTpcIDqOhxsBHRwC7U"}],"attestations":{"url":"https://registry.npmjs.org/-/npm/v1/attestations/signalk-container@1.7.0","provenance":{"predicateType":"https://slsa.dev/provenance/v1"}},"unpackedSize":1053855},"main":"dist/index.js","types":"./dist/index.d.ts","engines":{"node":">=22"},"gitHead":"23772df81bbfe66a1f9cee252e1613e35e65a440","scripts":{"lint":"eslint --fix","test":"node --test \"dist/test/**/*.test.js\"","build":"npm run clean && tsc && webpack","clean":"rimraf dist","watch":"tsc --watch","format":"npm run prettier && npm run lint","ci-lint":"eslint && prettier --check .","prettier":"prettier --write .","build:all":"npm run build && npm test","build:config":"webpack","prepublishOnly":"npm run build"},"signalk":{"appIcon":"./icon.svg","displayName":"Container Manager","screenshots":["./doc/screenshots/signalk-container-1.png","./doc/screenshots/signalk-container-2.png","./doc/screenshots/signalk-container-3.png"]},"_npmUser":{"name":"GitHub Actions","email":"npm-oidc-no-reply@github.com","trustedPublisher":{"id":"github","oidcConfigId":"oidc:ac86e6a6-7555-4a7a-aa96-7ed2220dbf64"}},"repository":{"url":"git+https://github.com/dirkwa/signalk-container.git","type":"git"},"_npmVersion":"11.11.0","description":"Shared container runtime management (Podman/Docker) for Signal K plugins","directories":{},"_nodeVersion":"24.14.1","_hasShrinkwrap":false,"devDependencies":{"react":"^19.2.4","eslint":"^10.2.0","rimraf":"^6.1.3","globals":"^17.4.0","webpack":"^5.105.4","prettier":"^3.8.1","react-dom":"^19.2.4","@eslint/js":"^10.0.1","typescript":"^6.0.3","@babel/core":"^7.29.0","@types/node":"^22.0.0","webpack-cli":"^7.0.2","@types/react":"^19.2.14","babel-loader":"^10.1.1","@types/express":"^5.0.6","@types/react-dom":"^19.2.3","typescript-eslint":"^8.58.0","@babel/preset-react":"^7.28.5","@signalk/server-api":"latest","eslint-config-prettier":"^10.1.8","@babel/preset-typescript":"^7.28.5"},"_npmOperationalInternal":{"tmp":"tmp/signalk-container_1.7.0_1778634878197_0.03747570036722592","host":"s3://npm-registry-packages-npm-production"},"signalk-plugin-enabled-by-default":true},"1.8.0-beta.1":{"name":"signalk-container","version":"1.8.0-beta.1","keywords":["signalk-node-server-plugin","signalk-plugin-configurator"],"author":{"name":"Dirk Wahrheit","email":"dirkwahrheit@gmail.com"},"license":"MIT","_id":"signalk-container@1.8.0-beta.1","maintainers":[{"name":"dirkwa","email":"dirkwahrheit@gmail.com"}],"homepage":"https://github.com/dirkwa/signalk-container#readme","bugs":{"url":"https://github.com/dirkwa/signalk-container/issues"},"dist":{"shasum":"a991543eb3e9953444f6be879e9084261fc377aa","tarball":"https://registry.npmjs.org/signalk-container/-/signalk-container-1.8.0-beta.1.tgz","fileCount":100,"integrity":"sha512-K9aOG5SyhJkGuWGFKB2WjceKaECc9+yhQut9qm7QLPchTgvwUbqa7DgaTit2t9UQ8UdREdQ5gBjC+qmHNImKfA==","signatures":[{"sig":"MEQCIGxh6r4Efji73ulY09Vk2eYqqmAiWzovy+aqDCeJW4xmAiAf62ZNw4QkrCoM2iybc1ba8txIALUGasfgvv1b1wkTjg==","keyid":"SHA256:DhQ8wR5APBvFHLF/+Tc+AYvPOdTpcIDqOhxsBHRwC7U"}],"attestations":{"url":"https://registry.npmjs.org/-/npm/v1/attestations/signalk-container@1.8.0-beta.1","provenance":{"predicateType":"https://slsa.dev/provenance/v1"}},"unpackedSize":1180402},"main":"dist/index.js","type":"module","types":"./dist/index.d.ts","engines":{"node":">=22"},"gitHead":"41c6fdbb04d7f53befcb07ba695ca712b7ab1045","scripts":{"lint":"eslint --fix","test":"node --test \"dist/test/**/*.test.js\"","build":"npm run clean && npm run build:server && npm run build:configpanel","clean":"rimraf dist public","watch":"tsc --watch","format":"npm run prettier && npm run lint","ci-lint":"eslint && prettier --check .","prettier":"prettier --write .","build:all":"npm run build && npm test","build:server":"tsc","prepublishOnly":"npm run build","build:configpanel":"vite build"},"signalk":{"appIcon":"./icon.svg","displayName":"Container Manager","screenshots":["./doc/screenshots/signalk-container-1.png","./doc/screenshots/signalk-container-2.png","./doc/screenshots/signalk-container-3.png"]},"_npmUser":{"name":"GitHub Actions","email":"npm-oidc-no-reply@github.com","trustedPublisher":{"id":"github","oidcConfigId":"oidc:ac86e6a6-7555-4a7a-aa96-7ed2220dbf64"}},"repository":{"url":"git+https://github.com/dirkwa/signalk-container.git","type":"git"},"_npmVersion":"11.12.1","description":"Shared container runtime management (Podman/Docker) for Signal K plugins","directories":{},"_nodeVersion":"24.15.0","dependencies":{"typebox":"^1.1.38"},"_hasShrinkwrap":false,"readmeFilename":"README.md","devDependencies":{"vite":"^8.0.13","react":"^19.2.4","eslint":"^10.2.0","rimraf":"^6.1.3","globals":"^17.4.0","prettier":"^3.8.1","react-dom":"^19.2.4","@eslint/js":"^10.0.1","typescript":"^6.0.3","@types/node":"^22.0.0","@types/react":"^19.2.14","@types/express":"^5.0.6","@types/react-dom":"^19.2.3","typescript-eslint":"^8.58.0","@signalk/server-api":"latest","@vitejs/plugin-react":"^6.0.2","eslint-config-prettier":"^10.1.8","@module-federation/vite":"^1.5.0"},"_npmOperationalInternal":{"tmp":"tmp/signalk-container_1.8.0-beta.1_1779176444558_0.725300910447239","host":"s3://npm-registry-packages-npm-production"},"signalk-plugin-enabled-by-default":true},"1.8.0":{"name":"signalk-container","version":"1.8.0","keywords":["signalk-node-server-plugin","signalk-plugin-configurator"],"author":{"name":"Dirk Wahrheit","email":"dirkwahrheit@gmail.com"},"license":"MIT","_id":"signalk-container@1.8.0","maintainers":[{"name":"dirkwa","email":"dirkwahrheit@gmail.com"}],"homepage":"https://github.com/dirkwa/signalk-container#readme","bugs":{"url":"https://github.com/dirkwa/signalk-container/issues"},"dist":{"shasum":"4e002ec545cfd1fb17bad05f4abd3c6a42a0ff26","tarball":"https://registry.npmjs.org/signalk-container/-/signalk-container-1.8.0.tgz","fileCount":100,"integrity":"sha512-9g30u5Jhat9O4WGLRH35Lz4JnEPUVAMJBrTg/53anhi646DDfWTJ4cj85f/qg9gqX0E40fKKdyrQmiiulzFwng==","signatures":[{"sig":"MEYCIQDNEygCYkXJat8kEEVmxa6R8nno9WsBqe30HjCBbJuzJgIhAKGYBm9Ufp+0v3I4D/xnedQXMcKNz08YWSDcVsvmmiZS","keyid":"SHA256:DhQ8wR5APBvFHLF/+Tc+AYvPOdTpcIDqOhxsBHRwC7U"}],"attestations":{"url":"https://registry.npmjs.org/-/npm/v1/attestations/signalk-container@1.8.0","provenance":{"predicateType":"https://slsa.dev/provenance/v1"}},"unpackedSize":1180395},"main":"dist/index.js","type":"module","types":"./dist/index.d.ts","engines":{"node":">=22"},"gitHead":"28bd2fb0e30d6423fd4a89297c1ce044d7d95e3e","scripts":{"lint":"eslint --fix","test":"node --test \"dist/test/**/*.test.js\"","build":"npm run clean && npm run build:server && npm run build:configpanel","clean":"rimraf dist public","watch":"tsc --watch","format":"npm run prettier && npm run lint","ci-lint":"eslint && prettier --check .","prettier":"prettier --write .","build:all":"npm run build && npm test","build:server":"tsc","prepublishOnly":"npm run build","build:configpanel":"vite build"},"signalk":{"appIcon":"./icon.svg","displayName":"Container Manager","screenshots":["./doc/screenshots/signalk-container-1.png","./doc/screenshots/signalk-container-2.png","./doc/screenshots/signalk-container-3.png"]},"_npmUser":{"name":"GitHub Actions","email":"npm-oidc-no-reply@github.com","trustedPublisher":{"id":"github","oidcConfigId":"oidc:ac86e6a6-7555-4a7a-aa96-7ed2220dbf64"}},"repository":{"url":"git+https://github.com/dirkwa/signalk-container.git","type":"git"},"_npmVersion":"11.12.1","description":"Shared container runtime management (Podman/Docker) for Signal K plugins","directories":{},"_nodeVersion":"24.15.0","dependencies":{"typebox":"^1.1.38"},"_hasShrinkwrap":false,"devDependencies":{"vite":"^8.0.13","react":"^19.2.4","eslint":"^10.2.0","rimraf":"^6.1.3","globals":"^17.4.0","prettier":"^3.8.1","react-dom":"^19.2.4","@eslint/js":"^10.0.1","typescript":"^6.0.3","@types/node":"^22.0.0","@types/react":"^19.2.14","@types/express":"^5.0.6","@types/react-dom":"^19.2.3","typescript-eslint":"^8.58.0","@signalk/server-api":"latest","@vitejs/plugin-react":"^6.0.2","eslint-config-prettier":"^10.1.8","@module-federation/vite":"^1.5.0"},"_npmOperationalInternal":{"tmp":"tmp/signalk-container_1.8.0_1779214046746_0.9034389057280612","host":"s3://npm-registry-packages-npm-production"},"signalk-plugin-enabled-by-default":true},"1.8.1":{"name":"signalk-container","version":"1.8.1","keywords":["signalk-node-server-plugin","signalk-plugin-configurator"],"author":{"name":"Dirk Wahrheit","email":"dirkwahrheit@gmail.com"},"license":"MIT","_id":"signalk-container@1.8.1","maintainers":[{"name":"dirkwa","email":"dirkwahrheit@gmail.com"}],"homepage":"https://github.com/dirkwa/signalk-container#readme","bugs":{"url":"https://github.com/dirkwa/signalk-container/issues"},"dist":{"shasum":"bdca7f95d14afa6f22e3e8b9411da8bb16dcb1fb","tarball":"https://registry.npmjs.org/signalk-container/-/signalk-container-1.8.1.tgz","fileCount":100,"integrity":"sha512-DmcWnvzTrKjueE79/GBAafL40Ab7bfs4VH9t/oXhrgbjDl67bJYv6i9qUosS02tga8GHH6hHMJpdQTIKSkweyg==","signatures":[{"sig":"MEUCIQDLXJNN4beMXjUNcZdECsuvCochHnwthbjBgbX3aJ+SdAIgTeN+pYgFU0tXqAs6M2bS1hzEFoYb75eGsPhpWYC6Q3E=","keyid":"SHA256:DhQ8wR5APBvFHLF/+Tc+AYvPOdTpcIDqOhxsBHRwC7U"}],"attestations":{"url":"https://registry.npmjs.org/-/npm/v1/attestations/signalk-container@1.8.1","provenance":{"predicateType":"https://slsa.dev/provenance/v1"}},"unpackedSize":1191412},"main":"dist/index.js","type":"module","types":"./dist/index.d.ts","engines":{"node":">=22"},"gitHead":"3c2217f2c7287fb446fdbad685ed0cbcb2ef046c","scripts":{"lint":"eslint --fix","test":"node --test \"dist/test/**/*.test.js\"","build":"npm run clean && npm run build:server && npm run build:configpanel","clean":"rimraf dist public","watch":"tsc --watch","format":"npm run prettier && npm run lint","ci-lint":"eslint && prettier --check .","prettier":"prettier --write .","build:all":"npm run build && npm test","build:server":"tsc","prepublishOnly":"npm run build","build:configpanel":"vite build"},"signalk":{"appIcon":"./icon.svg","displayName":"Container Manager","screenshots":["./doc/screenshots/signalk-container-1.png","./doc/screenshots/signalk-container-2.png","./doc/screenshots/signalk-container-3.png"]},"_npmUser":{"name":"GitHub Actions","email":"npm-oidc-no-reply@github.com","trustedPublisher":{"id":"github","oidcConfigId":"oidc:ac86e6a6-7555-4a7a-aa96-7ed2220dbf64"}},"repository":{"url":"git+https://github.com/dirkwa/signalk-container.git","type":"git"},"_npmVersion":"11.12.1","description":"Shared container runtime management (Podman/Docker) for Signal K plugins","directories":{},"_nodeVersion":"24.15.0","dependencies":{"typebox":"^1.1.38"},"_hasShrinkwrap":false,"devDependencies":{"vite":"^8.0.13","react":"^19.2.4","eslint":"^10.2.0","rimraf":"^6.1.3","globals":"^17.4.0","prettier":"^3.8.1","react-dom":"^19.2.4","@eslint/js":"^10.0.1","typescript":"^6.0.3","@types/node":"^22.0.0","@types/react":"^19.2.14","@types/express":"^5.0.6","@types/react-dom":"^19.2.3","typescript-eslint":"^8.58.0","@signalk/server-api":"latest","@vitejs/plugin-react":"^6.0.2","eslint-config-prettier":"^10.1.8","@module-federation/vite":"^1.5.0"},"_npmOperationalInternal":{"tmp":"tmp/signalk-container_1.8.1_1779219509434_0.03005866282870384","host":"s3://npm-registry-packages-npm-production"},"signalk-plugin-enabled-by-default":true},"1.9.0-beta.1":{"name":"signalk-container","version":"1.9.0-beta.1","keywords":["signalk-node-server-plugin","signalk-plugin-configurator"],"author":{"name":"Dirk Wahrheit","email":"dirkwahrheit@gmail.com"},"license":"MIT","_id":"signalk-container@1.9.0-beta.1","maintainers":[{"name":"dirkwa","email":"dirkwahrheit@gmail.com"}],"homepage":"https://github.com/dirkwa/signalk-container#readme","bugs":{"url":"https://github.com/dirkwa/signalk-container/issues"},"dist":{"shasum":"65586c3ee1a5d4590859a8e5c1b1f2a38c58828c","tarball":"https://registry.npmjs.org/signalk-container/-/signalk-container-1.9.0-beta.1.tgz","fileCount":101,"integrity":"sha512-yzR+hH6tkPNCZcopq1KJ0uoSgjjTMrshQohO/moAYYvQq3Q+W2RKGQ72G4u2C6wWdagQsXfOota0SXxlDk1YLw==","signatures":[{"sig":"MEUCIQD3NTZ1q0wYJPwkEo+eHJ+BE3/s8DV91GAFLPG6Ox+E7QIgGR9Yqm1+DEXZa45waAod8Z7IJwgzX1H4Nb8ok+XAYkI=","keyid":"SHA256:DhQ8wR5APBvFHLF/+Tc+AYvPOdTpcIDqOhxsBHRwC7U"}],"attestations":{"url":"https://registry.npmjs.org/-/npm/v1/attestations/signalk-container@1.9.0-beta.1","provenance":{"predicateType":"https://slsa.dev/provenance/v1"}},"unpackedSize":1263385},"main":"dist/index.js","type":"module","types":"./dist/index.d.ts","engines":{"node":">=22"},"gitHead":"137e9cb2b8eecdae8efeb35102418a04ce779acf","scripts":{"lint":"eslint --fix","test":"node --test \"dist/test/**/*.test.js\"","build":"npm run clean && npm run build:server && npm run build:configpanel","clean":"rimraf dist public","watch":"tsc --watch","format":"npm run prettier && npm run lint","ci-lint":"eslint && prettier --check .","prettier":"prettier --write .","build:all":"npm run build && npm test","build:server":"tsc","prepublishOnly":"npm run build","build:configpanel":"vite build"},"signalk":{"appIcon":"./icon.svg","displayName":"Container Manager","screenshots":["./doc/screenshots/signalk-container-1.png","./doc/screenshots/signalk-container-2.png","./doc/screenshots/signalk-container-3.png"]},"_npmUser":{"name":"GitHub Actions","email":"npm-oidc-no-reply@github.com","trustedPublisher":{"id":"github","oidcConfigId":"oidc:ac86e6a6-7555-4a7a-aa96-7ed2220dbf64"}},"repository":{"url":"git+https://github.com/dirkwa/signalk-container.git","type":"git"},"_npmVersion":"11.12.1","description":"Shared container runtime management (Podman/Docker) for Signal K plugins","directories":{},"_nodeVersion":"24.15.0","dependencies":{"typebox":"^1.1.38"},"_hasShrinkwrap":false,"readmeFilename":"README.md","devDependencies":{"vite":"^8.0.13","react":"^19.2.4","eslint":"^10.2.0","rimraf":"^6.1.3","globals":"^17.4.0","prettier":"^3.8.1","react-dom":"^19.2.4","@eslint/js":"^10.0.1","typescript":"^6.0.3","@types/node":"^22.0.0","@types/react":"^19.2.14","@types/express":"^5.0.6","@types/react-dom":"^19.2.3","typescript-eslint":"^8.58.0","@signalk/server-api":"latest","@vitejs/plugin-react":"^6.0.2","eslint-config-prettier":"^10.1.8","@module-federation/vite":"^1.5.0"},"_npmOperationalInternal":{"tmp":"tmp/signalk-container_1.9.0-beta.1_1779333256516_0.6584549750145077","host":"s3://npm-registry-packages-npm-production"},"signalk-plugin-enabled-by-default":true},"1.9.0-beta.2":{"name":"signalk-container","version":"1.9.0-beta.2","keywords":["signalk-node-server-plugin","signalk-plugin-configurator"],"author":{"name":"Dirk Wahrheit","email":"dirkwahrheit@gmail.com"},"license":"MIT","_id":"signalk-container@1.9.0-beta.2","maintainers":[{"name":"dirkwa","email":"dirkwahrheit@gmail.com"}],"homepage":"https://github.com/dirkwa/signalk-container#readme","bugs":{"url":"https://github.com/dirkwa/signalk-container/issues"},"dist":{"shasum":"d17124a30a80430f9febd8676983b23792e10af7","tarball":"https://registry.npmjs.org/signalk-container/-/signalk-container-1.9.0-beta.2.tgz","fileCount":101,"integrity":"sha512-psktXZO8lIqCfQxNFgejEX384TyprPXu3Kt/NAiSybcRe/F3oTj/2n/h55iAgKd6sqzjqCe6PZVto0JrjjNV8g==","signatures":[{"sig":"MEUCIA/TUtWhbgstnPhcX12RYdg1u4adWqFA4u2n59qK3Q4AAiEA6uL7LZu9Xvs7YK0dqpmiUayfEa3ryCIAAPYJUzCLZMA=","keyid":"SHA256:DhQ8wR5APBvFHLF/+Tc+AYvPOdTpcIDqOhxsBHRwC7U"}],"attestations":{"url":"https://registry.npmjs.org/-/npm/v1/attestations/signalk-container@1.9.0-beta.2","provenance":{"predicateType":"https://slsa.dev/provenance/v1"}},"unpackedSize":1264214},"main":"dist/index.js","type":"module","types":"./dist/index.d.ts","engines":{"node":">=22"},"gitHead":"f67794e50d9c659383fa443ea02e3d9e0bf4b997","scripts":{"lint":"eslint --fix","test":"node --test \"dist/test/**/*.test.js\"","build":"npm run clean && npm run build:server && npm run build:configpanel","clean":"rimraf dist public","watch":"tsc --watch","format":"npm run prettier && npm run lint","ci-lint":"eslint && prettier --check .","prettier":"prettier --write .","build:all":"npm run build && npm test","build:server":"tsc","prepublishOnly":"npm run build","build:configpanel":"vite build"},"signalk":{"appIcon":"./icon.svg","displayName":"Container Manager","screenshots":["./doc/screenshots/signalk-container-1.png","./doc/screenshots/signalk-container-2.png","./doc/screenshots/signalk-container-3.png"]},"_npmUser":{"name":"GitHub Actions","email":"npm-oidc-no-reply@github.com","trustedPublisher":{"id":"github","oidcConfigId":"oidc:ac86e6a6-7555-4a7a-aa96-7ed2220dbf64"}},"repository":{"url":"git+https://github.com/dirkwa/signalk-container.git","type":"git"},"_npmVersion":"11.12.1","description":"Shared container runtime management (Podman/Docker) for Signal K plugins","directories":{},"_nodeVersion":"24.15.0","dependencies":{"typebox":"^1.1.38"},"_hasShrinkwrap":false,"readmeFilename":"README.md","devDependencies":{"vite":"^8.0.13","react":"^19.2.4","eslint":"^10.2.0","rimraf":"^6.1.3","globals":"^17.4.0","prettier":"^3.8.1","react-dom":"^19.2.4","@eslint/js":"^10.0.1","typescript":"^6.0.3","@types/node":"^22.0.0","@types/react":"^19.2.14","@types/express":"^5.0.6","@types/react-dom":"^19.2.3","typescript-eslint":"^8.58.0","@signalk/server-api":"latest","@vitejs/plugin-react":"^6.0.2","eslint-config-prettier":"^10.1.8","@module-federation/vite":"^1.5.0"},"_npmOperationalInternal":{"tmp":"tmp/signalk-container_1.9.0-beta.2_1779335226919_0.49474618822602157","host":"s3://npm-registry-packages-npm-production"},"signalk-plugin-enabled-by-default":true},"1.9.0":{"name":"signalk-container","version":"1.9.0","keywords":["signalk-node-server-plugin","signalk-plugin-configurator"],"author":{"name":"Dirk Wahrheit","email":"dirkwahrheit@gmail.com"},"license":"MIT","_id":"signalk-container@1.9.0","maintainers":[{"name":"dirkwa","email":"dirkwahrheit@gmail.com"}],"homepage":"https://github.com/dirkwa/signalk-container#readme","bugs":{"url":"https://github.com/dirkwa/signalk-container/issues"},"dist":{"shasum":"71f04088cfcb0e576af7533760fa26db7459cb00","tarball":"https://registry.npmjs.org/signalk-container/-/signalk-container-1.9.0.tgz","fileCount":101,"integrity":"sha512-4RABiBfpZ4k5A9SgZWAEIWMBhn5NNWF6quxSHMu0djmqvCJcL+qqlGE5AeLDka2YFiCqww05pSgm5062gLTZ+Q==","signatures":[{"sig":"MEQCIEPfVSTDij5QQNGP+Uif2ET7cFXzG+H5iC2zS7tcr5w5AiBHjDksuyY4hr3LthGSeTxisFr86Z+qUNQswacxOciHdg==","keyid":"SHA256:DhQ8wR5APBvFHLF/+Tc+AYvPOdTpcIDqOhxsBHRwC7U"}],"attestations":{"url":"https://registry.npmjs.org/-/npm/v1/attestations/signalk-container@1.9.0","provenance":{"predicateType":"https://slsa.dev/provenance/v1"}},"unpackedSize":1275181},"main":"dist/index.js","type":"module","types":"./dist/index.d.ts","engines":{"node":">=22"},"gitHead":"8b376e7c49f2d3843545518f0a3f19e7a0d1204e","scripts":{"lint":"eslint --fix","test":"node --test \"dist/test/**/*.test.js\"","build":"npm run clean && npm run build:server && npm run build:configpanel","clean":"rimraf dist public","watch":"tsc --watch","format":"npm run prettier && npm run lint","ci-lint":"eslint && prettier --check .","prettier":"prettier --write .","build:all":"npm run build && npm test","build:server":"tsc","prepublishOnly":"npm run build","build:configpanel":"vite build"},"signalk":{"appIcon":"./icon.svg","displayName":"Container Manager","screenshots":["./doc/screenshots/signalk-container-1.png","./doc/screenshots/signalk-container-2.png","./doc/screenshots/signalk-container-3.png"]},"_npmUser":{"name":"GitHub Actions","email":"npm-oidc-no-reply@github.com","trustedPublisher":{"id":"github","oidcConfigId":"oidc:ac86e6a6-7555-4a7a-aa96-7ed2220dbf64"}},"repository":{"url":"git+https://github.com/dirkwa/signalk-container.git","type":"git"},"_npmVersion":"11.12.1","description":"Shared container runtime management (Podman/Docker) for Signal K plugins","directories":{},"_nodeVersion":"24.15.0","dependencies":{"typebox":"^1.1.38"},"_hasShrinkwrap":false,"devDependencies":{"vite":"^8.0.13","react":"^19.2.4","eslint":"^10.2.0","rimraf":"^6.1.3","globals":"^17.4.0","prettier":"^3.8.1","react-dom":"^19.2.4","@eslint/js":"^10.0.1","typescript":"^6.0.3","@types/node":"^22.0.0","@types/react":"^19.2.14","@types/express":"^5.0.6","@types/react-dom":"^19.2.3","typescript-eslint":"^8.58.0","@signalk/server-api":"latest","@vitejs/plugin-react":"^6.0.2","eslint-config-prettier":"^10.1.8","@module-federation/vite":"^1.5.0"},"_npmOperationalInternal":{"tmp":"tmp/signalk-container_1.9.0_1779390841568_0.4457213135422349","host":"s3://npm-registry-packages-npm-production"},"signalk-plugin-enabled-by-default":true},"1.9.1":{"name":"signalk-container","version":"1.9.1","keywords":["signalk-node-server-plugin","signalk-plugin-configurator"],"author":{"name":"Dirk Wahrheit","email":"dirkwahrheit@gmail.com"},"license":"MIT","_id":"signalk-container@1.9.1","maintainers":[{"name":"dirkwa","email":"dirkwahrheit@gmail.com"}],"homepage":"https://github.com/dirkwa/signalk-container#readme","bugs":{"url":"https://github.com/dirkwa/signalk-container/issues"},"dist":{"shasum":"572bc80839eee27930f1db7d4a00b6b7e1425f03","tarball":"https://registry.npmjs.org/signalk-container/-/signalk-container-1.9.1.tgz","fileCount":101,"integrity":"sha512-vZP39k6Gd2aNy/Ob/RwSbrr2tHu6kbZmwu3Msg5yh+LPx0q/23K7nd71OICWlaH6vfL63QyiMnUOu8wjn89NWg==","signatures":[{"sig":"MEQCIAo7miWy/t1ZSBRkDZA/aJfengOFpX1Y4VPOAkwqxvVnAiAUcpnBMMrqfspntWXVAQv6mzW/ZkVqBmKZnni7jQQMeQ==","keyid":"SHA256:DhQ8wR5APBvFHLF/+Tc+AYvPOdTpcIDqOhxsBHRwC7U"}],"attestations":{"url":"https://registry.npmjs.org/-/npm/v1/attestations/signalk-container@1.9.1","provenance":{"predicateType":"https://slsa.dev/provenance/v1"}},"unpackedSize":1285712},"main":"dist/index.js","type":"module","types":"./dist/index.d.ts","engines":{"node":">=22"},"gitHead":"4ae56a113c83acae43f0f2e4e0b3e59df8432319","scripts":{"lint":"eslint --fix","test":"node --test \"dist/test/**/*.test.js\"","build":"npm run clean && npm run build:server && npm run build:configpanel","clean":"rimraf dist public","watch":"tsc --watch","format":"npm run prettier && npm run lint","ci-lint":"eslint && prettier --check .","prettier":"prettier --write .","build:all":"npm run build && npm test","build:server":"tsc","prepublishOnly":"npm run build","build:configpanel":"vite build"},"signalk":{"appIcon":"./icon.svg","displayName":"Container Manager","screenshots":["./doc/screenshots/signalk-container-1.png","./doc/screenshots/signalk-container-2.png","./doc/screenshots/signalk-container-3.png"]},"_npmUser":{"name":"GitHub Actions","email":"npm-oidc-no-reply@github.com","trustedPublisher":{"id":"github","oidcConfigId":"oidc:ac86e6a6-7555-4a7a-aa96-7ed2220dbf64"}},"repository":{"url":"git+https://github.com/dirkwa/signalk-container.git","type":"git"},"_npmVersion":"11.12.1","description":"Shared container runtime management (Podman/Docker) for Signal K plugins","directories":{},"_nodeVersion":"24.15.0","dependencies":{"typebox":"^1.1.38"},"_hasShrinkwrap":false,"devDependencies":{"vite":"^8.0.13","react":"^19.2.4","eslint":"^10.2.0","rimraf":"^6.1.3","globals":"^17.4.0","prettier":"^3.8.1","react-dom":"^19.2.4","@eslint/js":"^10.0.1","typescript":"^6.0.3","@types/node":"^22.0.0","@types/react":"^19.2.14","@types/express":"^5.0.6","@types/react-dom":"^19.2.3","typescript-eslint":"^8.58.0","@signalk/server-api":"latest","@vitejs/plugin-react":"^6.0.2","eslint-config-prettier":"^10.1.8","@module-federation/vite":"^1.5.0"},"_npmOperationalInternal":{"tmp":"tmp/signalk-container_1.9.1_1779403894190_0.004225421902581017","host":"s3://npm-registry-packages-npm-production"},"signalk-plugin-enabled-by-default":true},"1.9.2":{"name":"signalk-container","version":"1.9.2","keywords":["signalk-node-server-plugin","signalk-plugin-configurator"],"author":{"name":"Dirk Wahrheit","email":"dirkwahrheit@gmail.com"},"license":"MIT","_id":"signalk-container@1.9.2","maintainers":[{"name":"dirkwa","email":"dirkwahrheit@gmail.com"}],"homepage":"https://github.com/dirkwa/signalk-container#readme","bugs":{"url":"https://github.com/dirkwa/signalk-container/issues"},"dist":{"shasum":"20a4ed2d4dd3610b16bb9b588d805ecefbb1143c","tarball":"https://registry.npmjs.org/signalk-container/-/signalk-container-1.9.2.tgz","fileCount":101,"integrity":"sha512-3LZD7aHZuWG7sjDPYfHdJDeVzCuZNaUYDddVxmaWXxwntdQZkvbBGG9aevvBl9XyCVZjG8rwEyAaM6qRi+0mUg==","signatures":[{"sig":"MEUCIDTCwPfWJzmf+TKKm8zQpLZbQqHBlC+0LKXbko2JSx+GAiEAlp6MKBldspCvxqj4oAq3W21I/R1tMHfhLfDPmcRLQx4=","keyid":"SHA256:DhQ8wR5APBvFHLF/+Tc+AYvPOdTpcIDqOhxsBHRwC7U"}],"attestations":{"url":"https://registry.npmjs.org/-/npm/v1/attestations/signalk-container@1.9.2","provenance":{"predicateType":"https://slsa.dev/provenance/v1"}},"unpackedSize":1287274},"main":"dist/index.js","type":"module","types":"./dist/index.d.ts","engines":{"node":">=22"},"gitHead":"8977d1988e69cb8002023f3412828b2971fd90cd","scripts":{"lint":"eslint --fix","test":"node --test \"dist/test/**/*.test.js\"","build":"npm run clean && npm run build:server && npm run build:configpanel","clean":"rimraf dist public","watch":"tsc --watch","format":"npm run prettier && npm run lint","ci-lint":"eslint && prettier --check .","prettier":"prettier --write .","build:all":"npm run build && npm test","build:server":"tsc","prepublishOnly":"npm run build","build:configpanel":"vite build"},"signalk":{"appIcon":"./icon.svg","displayName":"Container Manager","screenshots":["./doc/screenshots/signalk-container-1.png","./doc/screenshots/signalk-container-2.png","./doc/screenshots/signalk-container-3.png"]},"_npmUser":{"name":"GitHub Actions","email":"npm-oidc-no-reply@github.com","trustedPublisher":{"id":"github","oidcConfigId":"oidc:ac86e6a6-7555-4a7a-aa96-7ed2220dbf64"}},"repository":{"url":"git+https://github.com/dirkwa/signalk-container.git","type":"git"},"_npmVersion":"11.12.1","description":"Shared container runtime management (Podman/Docker) for Signal K plugins","directories":{},"_nodeVersion":"24.15.0","dependencies":{"typebox":"^1.1.38"},"_hasShrinkwrap":false,"devDependencies":{"vite":"^8.0.13","react":"^19.2.4","eslint":"^10.2.0","rimraf":"^6.1.3","globals":"^17.4.0","prettier":"^3.8.1","react-dom":"^19.2.4","@eslint/js":"^10.0.1","typescript":"^6.0.3","@types/node":"^22.0.0","@types/react":"^19.2.14","@types/express":"^5.0.6","@types/react-dom":"^19.2.3","typescript-eslint":"^8.58.0","@signalk/server-api":"latest","@vitejs/plugin-react":"^6.0.2","eslint-config-prettier":"^10.1.8","@module-federation/vite":"^1.5.0"},"_npmOperationalInternal":{"tmp":"tmp/signalk-container_1.9.2_1779407977315_0.7222204460549646","host":"s3://npm-registry-packages-npm-production"},"signalk-plugin-enabled-by-default":true},"1.9.3":{"name":"signalk-container","version":"1.9.3","keywords":["signalk-node-server-plugin","signalk-plugin-configurator"],"author":{"name":"Dirk Wahrheit","email":"dirkwahrheit@gmail.com"},"license":"MIT","_id":"signalk-container@1.9.3","maintainers":[{"name":"dirkwa","email":"dirkwahrheit@gmail.com"}],"homepage":"https://github.com/dirkwa/signalk-container#readme","bugs":{"url":"https://github.com/dirkwa/signalk-container/issues"},"dist":{"shasum":"c9d9c8ccea5f7f43d82035654ca323e0dd722305","tarball":"https://registry.npmjs.org/signalk-container/-/signalk-container-1.9.3.tgz","fileCount":102,"integrity":"sha512-bVKX1sGAkBR80qS3l9jUfl4N+J0lqEq6bbIbZyVm5r1VRIbwCC6UMEUmMkK9hLhPE68Ma3VyyFY/8j/yGvzomQ==","signatures":[{"sig":"MEUCIFG0818PFPjL0K/pmRbv0FWXOvJv2GtC3ZX/Usq2lu7gAiEAijP+/6joaaSZplzZ3cujZntmhbaj+UakSzW0XiEYpMM=","keyid":"SHA256:DhQ8wR5APBvFHLF/+Tc+AYvPOdTpcIDqOhxsBHRwC7U"}],"attestations":{"url":"https://registry.npmjs.org/-/npm/v1/attestations/signalk-container@1.9.3","provenance":{"predicateType":"https://slsa.dev/provenance/v1"}},"unpackedSize":1299852},"main":"dist/index.js","type":"module","types":"./dist/index.d.ts","engines":{"node":">=22"},"gitHead":"6cd6d18c840bd3bc4b3abf904366fd9b2155c3dd","scripts":{"lint":"eslint --fix","test":"node --test \"dist/test/**/*.test.js\"","build":"npm run clean && npm run build:server && npm run build:configpanel","clean":"rimraf dist public","watch":"tsc --watch","format":"npm run prettier && npm run lint","ci-lint":"eslint && prettier --check .","prettier":"prettier --write .","build:all":"npm run build && npm test","build:server":"tsc","prepublishOnly":"npm run build","build:configpanel":"vite build"},"signalk":{"appIcon":"./icon.svg","displayName":"Container Manager","screenshots":["./doc/screenshots/signalk-container-1.png","./doc/screenshots/signalk-container-2.png","./doc/screenshots/signalk-container-3.png"]},"_npmUser":{"name":"GitHub Actions","email":"npm-oidc-no-reply@github.com","trustedPublisher":{"id":"github","oidcConfigId":"oidc:ac86e6a6-7555-4a7a-aa96-7ed2220dbf64"}},"repository":{"url":"git+https://github.com/dirkwa/signalk-container.git","type":"git"},"_npmVersion":"11.12.1","description":"Shared container runtime management (Podman/Docker) for Signal K plugins","directories":{},"_nodeVersion":"24.15.0","dependencies":{"typebox":"^1.1.38"},"_hasShrinkwrap":false,"devDependencies":{"vite":"^8.0.13","react":"^19.2.4","eslint":"^10.2.0","rimraf":"^6.1.3","globals":"^17.4.0","prettier":"^3.8.1","react-dom":"^19.2.4","@eslint/js":"^10.0.1","typescript":"^6.0.3","@types/node":"^22.0.0","@types/react":"^19.2.14","@types/express":"^5.0.6","@types/react-dom":"^19.2.3","typescript-eslint":"^8.58.0","@signalk/server-api":"latest","@vitejs/plugin-react":"^6.0.2","eslint-config-prettier":"^10.1.8","@module-federation/vite":"^1.5.0"},"_npmOperationalInternal":{"tmp":"tmp/signalk-container_1.9.3_1779419978226_0.15537205286404387","host":"s3://npm-registry-packages-npm-production"},"signalk-plugin-enabled-by-default":true},"1.9.4":{"name":"signalk-container","version":"1.9.4","keywords":["signalk-node-server-plugin","signalk-plugin-configurator"],"author":{"name":"Dirk Wahrheit","email":"dirkwahrheit@gmail.com"},"license":"MIT","_id":"signalk-container@1.9.4","maintainers":[{"name":"dirkwa","email":"dirkwahrheit@gmail.com"}],"homepage":"https://github.com/dirkwa/signalk-container#readme","bugs":{"url":"https://github.com/dirkwa/signalk-container/issues"},"dist":{"shasum":"dcffbbe51e8ac280d7ea915933506a213ac9fe6a","tarball":"https://registry.npmjs.org/signalk-container/-/signalk-container-1.9.4.tgz","fileCount":102,"integrity":"sha512-Gm3R0ULgZEpeC7do+uo2mjXk1JAhr3zq+AfM8UfgJ4t+k6rvMvXCrFBw5A3/xTm+qzPAREbPZ4b48RpsEk2OFw==","signatures":[{"sig":"MEYCIQDNGaX1wrqWWXNmz+TeoSSgbjxUGwiIdZnFNR44x9bprAIhAKRvd2DVsh7bVZQSQChS/AvvFfzB1+Cr6jmsfyP0mXvQ","keyid":"SHA256:DhQ8wR5APBvFHLF/+Tc+AYvPOdTpcIDqOhxsBHRwC7U"}],"attestations":{"url":"https://registry.npmjs.org/-/npm/v1/attestations/signalk-container@1.9.4","provenance":{"predicateType":"https://slsa.dev/provenance/v1"}},"unpackedSize":1306350},"main":"dist/index.js","type":"module","types":"./dist/index.d.ts","engines":{"node":">=22"},"gitHead":"f08bd65ce5a123eb05ab3072cf214217653f6a93","scripts":{"lint":"eslint --fix","test":"node --test \"dist/test/**/*.test.js\"","build":"npm run clean && npm run build:server && npm run build:configpanel","clean":"rimraf dist public","watch":"tsc --watch","format":"npm run prettier && npm run lint","ci-lint":"eslint && prettier --check .","prettier":"prettier --write .","build:all":"npm run build && npm test","build:server":"tsc","prepublishOnly":"npm run build","build:configpanel":"vite build"},"signalk":{"appIcon":"./icon.svg","displayName":"Container Manager","screenshots":["./doc/screenshots/signalk-container-1.png","./doc/screenshots/signalk-container-2.png","./doc/screenshots/signalk-container-3.png"]},"_npmUser":{"name":"GitHub Actions","email":"npm-oidc-no-reply@github.com","trustedPublisher":{"id":"github","oidcConfigId":"oidc:ac86e6a6-7555-4a7a-aa96-7ed2220dbf64"}},"repository":{"url":"git+https://github.com/dirkwa/signalk-container.git","type":"git"},"_npmVersion":"11.12.1","description":"Shared container runtime management (Podman/Docker) for Signal K plugins","directories":{},"_nodeVersion":"24.15.0","dependencies":{"typebox":"^1.1.38"},"_hasShrinkwrap":false,"devDependencies":{"vite":"^8.0.13","react":"^19.2.4","eslint":"^10.2.0","rimraf":"^6.1.3","globals":"^17.4.0","prettier":"^3.8.1","react-dom":"^19.2.4","@eslint/js":"^10.0.1","typescript":"^6.0.3","@types/node":"^22.0.0","@types/react":"^19.2.14","@types/express":"^5.0.6","@types/react-dom":"^19.2.3","typescript-eslint":"^8.58.0","@signalk/server-api":"latest","@vitejs/plugin-react":"^6.0.2","eslint-config-prettier":"^10.1.8","@module-federation/vite":"^1.5.0"},"_npmOperationalInternal":{"tmp":"tmp/signalk-container_1.9.4_1779441666089_0.175074141132477","host":"s3://npm-registry-packages-npm-production"},"signalk-plugin-enabled-by-default":true},"1.9.5":{"name":"signalk-container","version":"1.9.5","keywords":["signalk-node-server-plugin","signalk-plugin-configurator"],"author":{"name":"Dirk Wahrheit","email":"dirkwahrheit@gmail.com"},"license":"MIT","_id":"signalk-container@1.9.5","maintainers":[{"name":"dirkwa","email":"dirkwahrheit@gmail.com"}],"homepage":"https://github.com/dirkwa/signalk-container#readme","bugs":{"url":"https://github.com/dirkwa/signalk-container/issues"},"dist":{"shasum":"c4c0eb8f593820974a3675d8dd7d311c9a6b5130","tarball":"https://registry.npmjs.org/signalk-container/-/signalk-container-1.9.5.tgz","fileCount":103,"integrity":"sha512-39ROsvdgZ0P12tgmgOc8wppqjwChYsJbN/KHelrzXgHwRxOE49/XLFcn1sCrU6/d8dzN6j8aeVraBXPwmT/VHw==","signatures":[{"sig":"MEQCIAeIyRRRkhzsTVgGcLvxKTcNlEefu2I2gh6WNM7qzcAkAiArXjiamV+BThEa7d+Gc2GX2yztNoCCq0rRo23pPWCwKQ==","keyid":"SHA256:DhQ8wR5APBvFHLF/+Tc+AYvPOdTpcIDqOhxsBHRwC7U"}],"attestations":{"url":"https://registry.npmjs.org/-/npm/v1/attestations/signalk-container@1.9.5","provenance":{"predicateType":"https://slsa.dev/provenance/v1"}},"unpackedSize":1316932},"main":"dist/index.js","type":"module","types":"./dist/index.d.ts","engines":{"node":">=22"},"gitHead":"82171d58f23b9b07409ab0bf9a3d1cca0722b7fa","scripts":{"lint":"eslint --fix","test":"node --test \"dist/test/**/*.test.js\"","build":"npm run clean && npm run build:server && npm run build:configpanel","clean":"rimraf dist public","watch":"tsc --watch","format":"npm run prettier && npm run lint","ci-lint":"eslint && prettier --check .","prettier":"prettier --write .","build:all":"npm run build && npm test","build:server":"tsc","prepublishOnly":"npm run build","build:configpanel":"vite build"},"signalk":{"appIcon":"./icon.svg","displayName":"Container Manager","screenshots":["./doc/screenshots/signalk-container-1.png","./doc/screenshots/signalk-container-2.png","./doc/screenshots/signalk-container-3.png"]},"_npmUser":{"name":"GitHub Actions","email":"npm-oidc-no-reply@github.com","trustedPublisher":{"id":"github","oidcConfigId":"oidc:ac86e6a6-7555-4a7a-aa96-7ed2220dbf64"}},"repository":{"url":"git+https://github.com/dirkwa/signalk-container.git","type":"git"},"_npmVersion":"11.12.1","description":"Shared container runtime management (Podman/Docker) for Signal K plugins","directories":{},"_nodeVersion":"24.15.0","dependencies":{"typebox":"^1.1.38"},"_hasShrinkwrap":false,"devDependencies":{"vite":"^8.0.13","react":"^19.2.4","eslint":"^10.2.0","rimraf":"^6.1.3","globals":"^17.4.0","prettier":"^3.8.1","react-dom":"^19.2.4","@eslint/js":"^10.0.1","typescript":"^6.0.3","@types/node":"^22.0.0","@types/react":"^19.2.14","@types/express":"^5.0.6","@types/react-dom":"^19.2.3","typescript-eslint":"^8.58.0","@signalk/server-api":"latest","@vitejs/plugin-react":"^6.0.2","eslint-config-prettier":"^10.1.8","@module-federation/vite":"^1.5.0"},"_npmOperationalInternal":{"tmp":"tmp/signalk-container_1.9.5_1779445370294_0.4961470625856139","host":"s3://npm-registry-packages-npm-production"},"signalk-plugin-enabled-by-default":true},"1.10.0":{"name":"signalk-container","version":"1.10.0","keywords":["signalk-node-server-plugin","signalk-plugin-configurator"],"author":{"name":"Dirk Wahrheit","email":"dirkwahrheit@gmail.com"},"license":"MIT","_id":"signalk-container@1.10.0","maintainers":[{"name":"dirkwa","email":"dirkwahrheit@gmail.com"}],"homepage":"https://github.com/dirkwa/signalk-container#readme","bugs":{"url":"https://github.com/dirkwa/signalk-container/issues"},"dist":{"shasum":"be08db28d31b5d47beb7a9103bdd9b89ed631260","tarball":"https://registry.npmjs.org/signalk-container/-/signalk-container-1.10.0.tgz","fileCount":103,"integrity":"sha512-FWRladw/9wB5c+NGs0ZOyuOkYdYrsUmgwhMfA80sBY0geh7gIygnPd7GJOq1RS1E02iPDiThwNZtI0jvX63goA==","signatures":[{"sig":"MEUCIQDHnco5DpUMaZUGjRt/ussUIh0I417vtLugAqeaJModAQIgW1RkhcMB+H2cHVqmPckG2pPEpZL5Mebs44SNBRB4yjI=","keyid":"SHA256:DhQ8wR5APBvFHLF/+Tc+AYvPOdTpcIDqOhxsBHRwC7U"}],"attestations":{"url":"https://registry.npmjs.org/-/npm/v1/attestations/signalk-container@1.10.0","provenance":{"predicateType":"https://slsa.dev/provenance/v1"}},"unpackedSize":1339144},"main":"dist/index.js","type":"module","types":"./dist/index.d.ts","engines":{"node":">=22"},"gitHead":"8d2e414cbb2c63497d82d3dcf6594404d6189297","scripts":{"lint":"eslint --fix","test":"node --test \"dist/test/**/*.test.js\"","build":"npm run clean && npm run build:server && npm run build:configpanel","clean":"rimraf dist public","watch":"tsc --watch","format":"npm run prettier && npm run lint","ci-lint":"eslint && prettier --check .","prettier":"prettier --write .","build:all":"npm run build && npm test","build:server":"tsc","prepublishOnly":"npm run build","build:configpanel":"vite build"},"signalk":{"appIcon":"./icon.svg","displayName":"Container Manager","screenshots":["./doc/screenshots/signalk-container-1.png","./doc/screenshots/signalk-container-2.png","./doc/screenshots/signalk-container-3.png"]},"_npmUser":{"name":"GitHub Actions","email":"npm-oidc-no-reply@github.com","trustedPublisher":{"id":"github","oidcConfigId":"oidc:ac86e6a6-7555-4a7a-aa96-7ed2220dbf64"}},"repository":{"url":"git+https://github.com/dirkwa/signalk-container.git","type":"git"},"_npmVersion":"11.12.1","description":"Shared container runtime management (Podman/Docker) for Signal K plugins","directories":{},"_nodeVersion":"24.15.0","dependencies":{"typebox":"^1.1.38"},"_hasShrinkwrap":false,"devDependencies":{"vite":"^8.0.13","react":"^19.2.4","eslint":"^10.2.0","rimraf":"^6.1.3","globals":"^17.4.0","prettier":"^3.8.1","react-dom":"^19.2.4","@eslint/js":"^10.0.1","typescript":"^6.0.3","@types/node":"^22.0.0","@types/react":"^19.2.14","@types/express":"^5.0.6","@types/react-dom":"^19.2.3","typescript-eslint":"^8.58.0","@signalk/server-api":"latest","@vitejs/plugin-react":"^6.0.2","eslint-config-prettier":"^10.1.8","@module-federation/vite":"^1.5.0"},"_npmOperationalInternal":{"tmp":"tmp/signalk-container_1.10.0_1779462877134_0.19021997859845108","host":"s3://npm-registry-packages-npm-production"},"signalk-plugin-enabled-by-default":true},"1.10.1":{"name":"signalk-container","version":"1.10.1","keywords":["signalk-node-server-plugin","signalk-plugin-configurator"],"author":{"name":"Dirk Wahrheit","email":"dirkwahrheit@gmail.com"},"license":"MIT","_id":"signalk-container@1.10.1","maintainers":[{"name":"dirkwa","email":"dirkwahrheit@gmail.com"}],"homepage":"https://github.com/dirkwa/signalk-container#readme","bugs":{"url":"https://github.com/dirkwa/signalk-container/issues"},"dist":{"shasum":"fd6a61742731eca4a3c82d6d1888b66a44f5cf22","tarball":"https://registry.npmjs.org/signalk-container/-/signalk-container-1.10.1.tgz","fileCount":103,"integrity":"sha512-xDgxCGaOZUdX8MKuVAfi+iX9ELXG+0IYDtDnu0ojhpi94kqHs+hda/AS6LC6T8JjCDMHc+uTLczsXJ40QV0bdQ==","signatures":[{"sig":"MEUCIQCFXxbNFA/P+ruPxFv7LahhWHvCa2vdlPYZ2wImlWoMAgIgOKSgm4HAMfZdO0l3pGsmRFXgc3XTa2QHjb4mccW8S/c=","keyid":"SHA256:DhQ8wR5APBvFHLF/+Tc+AYvPOdTpcIDqOhxsBHRwC7U"}],"attestations":{"url":"https://registry.npmjs.org/-/npm/v1/attestations/signalk-container@1.10.1","provenance":{"predicateType":"https://slsa.dev/provenance/v1"}},"unpackedSize":1340152},"main":"dist/index.js","type":"module","types":"./dist/index.d.ts","engines":{"node":">=22"},"gitHead":"64ce294d1d47b443b39918dcadb29f46fbcbd2f8","scripts":{"lint":"eslint --fix","test":"node --test \"dist/test/*.test.js\"","build":"npm run clean && npm run build:server && npm run build:configpanel","clean":"rimraf dist public","watch":"tsc --watch","format":"npm run prettier && npm run lint","ci-lint":"eslint && prettier --check .","prettier":"prettier --write .","test:all":"node --test \"dist/test/**/*.test.js\"","build:all":"npm run build && npm test","build:server":"tsc","prepublishOnly":"npm run build","test:integration":"node --test \"dist/test/integration/*.test.js\"","build:configpanel":"vite build","build:all:integration":"npm run build && npm run test:all"},"signalk":{"appIcon":"./icon.svg","displayName":"Container Manager","screenshots":["./doc/screenshots/signalk-container-1.png","./doc/screenshots/signalk-container-2.png","./doc/screenshots/signalk-container-3.png"]},"_npmUser":{"name":"GitHub Actions","email":"npm-oidc-no-reply@github.com","trustedPublisher":{"id":"github","oidcConfigId":"oidc:ac86e6a6-7555-4a7a-aa96-7ed2220dbf64"}},"repository":{"url":"git+https://github.com/dirkwa/signalk-container.git","type":"git"},"_npmVersion":"11.12.1","description":"Shared container runtime management (Podman/Docker) for Signal K plugins","directories":{},"_nodeVersion":"24.15.0","dependencies":{"typebox":"^1.1.38"},"_hasShrinkwrap":false,"devDependencies":{"vite":"^8.0.13","react":"^19.2.4","eslint":"^10.2.0","rimraf":"^6.1.3","globals":"^17.4.0","prettier":"^3.8.1","react-dom":"^19.2.4","@eslint/js":"^10.0.1","typescript":"^6.0.3","@types/node":"^22.0.0","@types/react":"^19.2.14","@types/express":"^5.0.6","@types/react-dom":"^19.2.3","typescript-eslint":"^8.58.0","@signalk/server-api":"latest","@vitejs/plugin-react":"^6.0.2","eslint-config-prettier":"^10.1.8","@module-federation/vite":"^1.5.0"},"_npmOperationalInternal":{"tmp":"tmp/signalk-container_1.10.1_1779466245335_0.3009772735526466","host":"s3://npm-registry-packages-npm-production"},"signalk-plugin-enabled-by-default":true},"1.10.2":{"name":"signalk-container","version":"1.10.2","keywords":["signalk-node-server-plugin","signalk-plugin-configurator"],"author":{"name":"Dirk Wahrheit","email":"dirkwahrheit@gmail.com"},"license":"MIT","_id":"signalk-container@1.10.2","maintainers":[{"name":"dirkwa","email":"dirkwahrheit@gmail.com"}],"homepage":"https://github.com/dirkwa/signalk-container#readme","bugs":{"url":"https://github.com/dirkwa/signalk-container/issues"},"dist":{"shasum":"de66fde2463cce7c44172e481567692ea3a0543c","tarball":"https://registry.npmjs.org/signalk-container/-/signalk-container-1.10.2.tgz","fileCount":103,"integrity":"sha512-rO+2elSoW/IVn+xIMiu5hgd7dG9UItySzC/tgYsOYNMbYrwBLfcmG1Q7ovbz50t4jo+v89kt4j3BZ28QqhxJZQ==","signatures":[{"sig":"MEYCIQDTEX1xecrVm2+EEHgEpxKeWpq7ZO3CyO8TlP0d7+F7UwIhAMJjPUORx31i8m7lUFx3BC37VSJfnq88P/N3ISvB9sU3","keyid":"SHA256:DhQ8wR5APBvFHLF/+Tc+AYvPOdTpcIDqOhxsBHRwC7U"}],"attestations":{"url":"https://registry.npmjs.org/-/npm/v1/attestations/signalk-container@1.10.2","provenance":{"predicateType":"https://slsa.dev/provenance/v1"}},"unpackedSize":1343680},"main":"dist/index.js","type":"module","types":"./dist/index.d.ts","engines":{"node":">=22"},"gitHead":"023abb0cd96f1743ef57e283623847bae2bd9871","scripts":{"lint":"eslint --fix","test":"node --test \"dist/test/*.test.js\"","build":"npm run clean && npm run build:server && npm run build:configpanel","clean":"rimraf dist public","watch":"tsc --watch","format":"npm run prettier && npm run lint","ci-lint":"eslint && prettier --check .","prettier":"prettier --write .","test:all":"node --test \"dist/test/**/*.test.js\"","build:all":"npm run build && npm test","build:server":"tsc","prepublishOnly":"npm run build","test:integration":"node --test \"dist/test/integration/*.test.js\"","build:configpanel":"vite build","build:all:integration":"npm run build && npm run test:all"},"signalk":{"appIcon":"./icon.svg","displayName":"Container Manager","screenshots":["./doc/screenshots/signalk-container-1.png","./doc/screenshots/signalk-container-2.png","./doc/screenshots/signalk-container-3.png"]},"_npmUser":{"name":"GitHub Actions","email":"npm-oidc-no-reply@github.com","trustedPublisher":{"id":"github","oidcConfigId":"oidc:ac86e6a6-7555-4a7a-aa96-7ed2220dbf64"}},"repository":{"url":"git+https://github.com/dirkwa/signalk-container.git","type":"git"},"_npmVersion":"11.12.1","description":"Shared container runtime management (Podman/Docker) for Signal K plugins","directories":{},"_nodeVersion":"24.15.0","dependencies":{"typebox":"^1.1.38"},"_hasShrinkwrap":false,"devDependencies":{"vite":"^8.0.13","react":"^19.2.4","eslint":"^10.2.0","rimraf":"^6.1.3","globals":"^17.4.0","prettier":"^3.8.1","react-dom":"^19.2.4","@eslint/js":"^10.0.1","typescript":"^6.0.3","@types/node":"^22.0.0","@types/react":"^19.2.14","@types/express":"^5.0.6","@types/react-dom":"^19.2.3","typescript-eslint":"^8.58.0","@signalk/server-api":"latest","@vitejs/plugin-react":"^6.0.2","eslint-config-prettier":"^10.1.8","@module-federation/vite":"^1.5.0"},"_npmOperationalInternal":{"tmp":"tmp/signalk-container_1.10.2_1779472673281_0.9176963404712173","host":"s3://npm-registry-packages-npm-production"},"signalk-plugin-enabled-by-default":true},"1.10.3":{"name":"signalk-container","version":"1.10.3","keywords":["signalk-node-server-plugin","signalk-plugin-configurator"],"author":{"name":"Dirk Wahrheit","email":"dirkwahrheit@gmail.com"},"license":"MIT","_id":"signalk-container@1.10.3","maintainers":[{"name":"dirkwa","email":"dirkwahrheit@gmail.com"}],"homepage":"https://github.com/dirkwa/signalk-container#readme","bugs":{"url":"https://github.com/dirkwa/signalk-container/issues"},"dist":{"shasum":"eebe28ce2164b425e7af5dc05e1df1c015f1be49","tarball":"https://registry.npmjs.org/signalk-container/-/signalk-container-1.10.3.tgz","fileCount":103,"integrity":"sha512-FJMpVk1H55Sb0P1E5S2FAabxG8Daoe0zcAoe8nPPATE+HcGWSTbUfEV0Nisr5WIuog6S83y4/OsuhBxRWMtTiw==","signatures":[{"sig":"MEUCICdp+7HUad97CqfNxIyDdgDJ1tXiS8VLKkpgO+ie8LibAiEAvdYVuICFN2zRRAT1Qb/AwyJzE10D0KWjryd7/k3/fEc=","keyid":"SHA256:DhQ8wR5APBvFHLF/+Tc+AYvPOdTpcIDqOhxsBHRwC7U"}],"attestations":{"url":"https://registry.npmjs.org/-/npm/v1/attestations/signalk-container@1.10.3","provenance":{"predicateType":"https://slsa.dev/provenance/v1"}},"unpackedSize":1347684},"main":"dist/index.js","type":"module","types":"./dist/index.d.ts","engines":{"node":">=22"},"gitHead":"72073bb8b29822abeee02459c298725cc0bd52fd","scripts":{"lint":"eslint --fix","test":"node --test \"dist/test/*.test.js\"","build":"npm run clean && npm run build:server && npm run build:configpanel","clean":"rimraf dist public","watch":"tsc --watch","format":"npm run prettier && npm run lint","ci-lint":"eslint && prettier --check .","prettier":"prettier --write .","test:all":"node --test \"dist/test/**/*.test.js\"","build:all":"npm run build && npm test","build:server":"tsc","prepublishOnly":"npm run build","test:integration":"node --test \"dist/test/integration/*.test.js\"","build:configpanel":"vite build","build:all:integration":"npm run build && npm run test:all"},"signalk":{"appIcon":"./icon.svg","displayName":"Container Manager","screenshots":["./doc/screenshots/signalk-container-1.png","./doc/screenshots/signalk-container-2.png","./doc/screenshots/signalk-container-3.png"]},"_npmUser":{"name":"GitHub Actions","email":"npm-oidc-no-reply@github.com","trustedPublisher":{"id":"github","oidcConfigId":"oidc:ac86e6a6-7555-4a7a-aa96-7ed2220dbf64"}},"repository":{"url":"git+https://github.com/dirkwa/signalk-container.git","type":"git"},"_npmVersion":"11.12.1","description":"Shared container runtime management (Podman/Docker) for Signal K plugins","directories":{},"_nodeVersion":"24.15.0","dependencies":{"typebox":"^1.1.38"},"_hasShrinkwrap":false,"devDependencies":{"vite":"^8.0.13","react":"^19.2.4","eslint":"^10.2.0","rimraf":"^6.1.3","globals":"^17.4.0","prettier":"^3.8.1","react-dom":"^19.2.4","@eslint/js":"^10.0.1","typescript":"^6.0.3","@types/node":"^22.0.0","@types/react":"^19.2.14","@types/express":"^5.0.6","@types/react-dom":"^19.2.3","typescript-eslint":"^8.58.0","@signalk/server-api":"latest","@vitejs/plugin-react":"^6.0.2","eslint-config-prettier":"^10.1.8","@module-federation/vite":"^1.5.0"},"_npmOperationalInternal":{"tmp":"tmp/signalk-container_1.10.3_1779567278782_0.5427132561290304","host":"s3://npm-registry-packages-npm-production"},"signalk-plugin-enabled-by-default":true},"1.11.0":{"name":"signalk-container","version":"1.11.0","keywords":["signalk-node-server-plugin","signalk-plugin-configurator"],"author":{"name":"Dirk Wahrheit","email":"dirkwahrheit@gmail.com"},"license":"MIT","_id":"signalk-container@1.11.0","maintainers":[{"name":"dirkwa","email":"dirkwahrheit@gmail.com"}],"homepage":"https://github.com/dirkwa/signalk-container#readme","bugs":{"url":"https://github.com/dirkwa/signalk-container/issues"},"dist":{"shasum":"d65f9364a11c4fae3393e4535708d0383a9a4aa6","tarball":"https://registry.npmjs.org/signalk-container/-/signalk-container-1.11.0.tgz","fileCount":103,"integrity":"sha512-nYHu0eGg926Hu5PKnVZqXSFPwBbiqZjoe9iHVcL3qbJMzFaHymxT1yvB9Br4395e7RrS+3fSXXQL5OpDPXsmjg==","signatures":[{"sig":"MEUCIHVzr3GizFoGyN7xr95wZ5oYMMil3JQoRyMJn7ex7Or5AiEAqzq7Lg+OlQ1LtMHDbsGD7G0rF54F1mFg+S2AIR8pfKc=","keyid":"SHA256:DhQ8wR5APBvFHLF/+Tc+AYvPOdTpcIDqOhxsBHRwC7U"}],"attestations":{"url":"https://registry.npmjs.org/-/npm/v1/attestations/signalk-container@1.11.0","provenance":{"predicateType":"https://slsa.dev/provenance/v1"}},"unpackedSize":1350755},"main":"dist/index.js","type":"module","types":"./dist/index.d.ts","engines":{"node":">=22"},"gitHead":"6c711def2545765c8858def0062d0266f44650b7","scripts":{"lint":"eslint --fix","test":"node --test \"dist/test/*.test.js\"","build":"npm run clean && npm run build:server && npm run build:configpanel","clean":"rimraf dist public","watch":"tsc --watch","format":"npm run prettier && npm run lint","ci-lint":"eslint && prettier --check .","prettier":"prettier --write .","test:all":"node --test \"dist/test/**/*.test.js\"","build:all":"npm run build && npm test","build:server":"tsc","prepublishOnly":"npm run build","test:integration":"node --test \"dist/test/integration/*.test.js\"","build:configpanel":"vite build","build:all:integration":"npm run build && npm run test:all"},"signalk":{"appIcon":"./icon.svg","displayName":"Container Manager","screenshots":["./doc/screenshots/signalk-container-1.png","./doc/screenshots/signalk-container-2.png","./doc/screenshots/signalk-container-3.png"]},"_npmUser":{"name":"GitHub Actions","email":"npm-oidc-no-reply@github.com","trustedPublisher":{"id":"github","oidcConfigId":"oidc:ac86e6a6-7555-4a7a-aa96-7ed2220dbf64"}},"repository":{"url":"git+https://github.com/dirkwa/signalk-container.git","type":"git"},"_npmVersion":"11.12.1","description":"Shared container runtime management (Podman/Docker) for Signal K plugins","directories":{},"_nodeVersion":"24.15.0","dependencies":{"typebox":"^1.1.38"},"_hasShrinkwrap":false,"devDependencies":{"vite":"^8.0.13","react":"^19.2.4","eslint":"^10.2.0","rimraf":"^6.1.3","globals":"^17.4.0","prettier":"^3.8.1","react-dom":"^19.2.4","@eslint/js":"^10.0.1","typescript":"^6.0.3","@types/node":"^22.0.0","@types/react":"^19.2.14","@types/express":"^5.0.6","@types/react-dom":"^19.2.3","typescript-eslint":"^8.58.0","@signalk/server-api":"latest","@vitejs/plugin-react":"^6.0.2","eslint-config-prettier":"^10.1.8","@module-federation/vite":"^1.5.0"},"_npmOperationalInternal":{"tmp":"tmp/signalk-container_1.11.0_1779568651312_0.25062607883013066","host":"s3://npm-registry-packages-npm-production"},"signalk-plugin-enabled-by-default":true},"1.11.1":{"name":"signalk-container","version":"1.11.1","keywords":["signalk-node-server-plugin","signalk-plugin-configurator"],"author":{"name":"Dirk Wahrheit","email":"dirkwahrheit@gmail.com"},"license":"MIT","_id":"signalk-container@1.11.1","maintainers":[{"name":"dirkwa","email":"dirkwahrheit@gmail.com"}],"homepage":"https://github.com/dirkwa/signalk-container#readme","bugs":{"url":"https://github.com/dirkwa/signalk-container/issues"},"dist":{"shasum":"6a525fef20b59d8401aae887942c7b37f68fc3bc","tarball":"https://registry.npmjs.org/signalk-container/-/signalk-container-1.11.1.tgz","fileCount":103,"integrity":"sha512-NWkAVlPY3Oh8P9aLuYNfO6ak5SwLGrq+/tI402qT1gflsUFj59iC+0u+4G5HezFiNLI9HKGbRVQmlTtaG4/AWw==","signatures":[{"sig":"MEUCIAQycGA9FXxnBXc/LX76FDJvtyau0aphcX7qYwtd9pHjAiEA1+7AQqw+SjXShdD9XfipHCJwiWjXvMxwbt8zhuK4QME=","keyid":"SHA256:DhQ8wR5APBvFHLF/+Tc+AYvPOdTpcIDqOhxsBHRwC7U"}],"attestations":{"url":"https://registry.npmjs.org/-/npm/v1/attestations/signalk-container@1.11.1","provenance":{"predicateType":"https://slsa.dev/provenance/v1"}},"unpackedSize":1358808},"main":"dist/index.js","type":"module","types":"./dist/index.d.ts","engines":{"node":">=22"},"gitHead":"7307e81ba34bf6b66ffd3b478d2caec3e5eed4c9","scripts":{"lint":"eslint --fix","test":"node --test \"dist/test/*.test.js\"","build":"npm run clean && npm run build:server && npm run build:configpanel","clean":"rimraf dist public","watch":"tsc --watch","format":"npm run prettier && npm run lint","ci-lint":"eslint && prettier --check .","prettier":"prettier --write .","test:all":"node --test \"dist/test/**/*.test.js\"","build:all":"npm run build && npm test","build:server":"tsc","prepublishOnly":"npm run build","test:integration":"node --test \"dist/test/integration/*.test.js\"","build:configpanel":"vite build","build:all:integration":"npm run build && npm run test:all"},"signalk":{"appIcon":"./icon.svg","displayName":"Container Manager","screenshots":["./doc/screenshots/signalk-container-1.png","./doc/screenshots/signalk-container-2.png","./doc/screenshots/signalk-container-3.png"]},"_npmUser":{"name":"GitHub Actions","email":"npm-oidc-no-reply@github.com","trustedPublisher":{"id":"github","oidcConfigId":"oidc:ac86e6a6-7555-4a7a-aa96-7ed2220dbf64"}},"repository":{"url":"git+https://github.com/dirkwa/signalk-container.git","type":"git"},"_npmVersion":"11.12.1","description":"Shared container runtime management (Podman/Docker) for Signal K plugins","directories":{},"_nodeVersion":"24.15.0","dependencies":{"typebox":"^1.1.38"},"_hasShrinkwrap":false,"devDependencies":{"vite":"^8.0.13","react":"^19.2.4","eslint":"^10.2.0","rimraf":"^6.1.3","globals":"^17.4.0","prettier":"^3.8.1","react-dom":"^19.2.4","@eslint/js":"^10.0.1","typescript":"^6.0.3","@types/node":"^22.0.0","@types/react":"^19.2.14","@types/express":"^5.0.6","@types/react-dom":"^19.2.3","typescript-eslint":"^8.58.0","@signalk/server-api":"latest","@vitejs/plugin-react":"^6.0.2","eslint-config-prettier":"^10.1.8","@module-federation/vite":"^1.5.0"},"_npmOperationalInternal":{"tmp":"tmp/signalk-container_1.11.1_1779571887927_0.42889985511681483","host":"s3://npm-registry-packages-npm-production"},"signalk-plugin-enabled-by-default":true},"1.11.2":{"name":"signalk-container","version":"1.11.2","keywords":["signalk-node-server-plugin","signalk-plugin-configurator"],"author":{"name":"Dirk Wahrheit","email":"dirkwahrheit@gmail.com"},"license":"MIT","_id":"signalk-container@1.11.2","maintainers":[{"name":"dirkwa","email":"dirkwahrheit@gmail.com"}],"homepage":"https://github.com/dirkwa/signalk-container#readme","bugs":{"url":"https://github.com/dirkwa/signalk-container/issues"},"dist":{"shasum":"93dc7bc6278802072ea2fe77608cfd4ed11166b0","tarball":"https://registry.npmjs.org/signalk-container/-/signalk-container-1.11.2.tgz","fileCount":103,"integrity":"sha512-fqohqoVL40XkED7kQrYD/Wk5/8KIB+0MF6U9GDNu7Sm/xWh3rYqOVvxew+rAFJrwXnJbs5pFkKITfutqXkcHXQ==","signatures":[{"sig":"MEYCIQCj50v++fzBPauG+DHjWcH7WxN24I5A69w8t0VosafAwAIhANM8bzQR04fj3DcbgawkE6YxvK477QUerCB04ljeF0Hb","keyid":"SHA256:DhQ8wR5APBvFHLF/+Tc+AYvPOdTpcIDqOhxsBHRwC7U"}],"attestations":{"url":"https://registry.npmjs.org/-/npm/v1/attestations/signalk-container@1.11.2","provenance":{"predicateType":"https://slsa.dev/provenance/v1"}},"unpackedSize":1370275},"main":"dist/index.js","type":"module","types":"./dist/index.d.ts","engines":{"node":">=22"},"gitHead":"520a62011b72ca078ffa4fdd747ec9d286ef8374","scripts":{"lint":"eslint --fix","test":"node --test \"dist/test/*.test.js\"","build":"npm run clean && npm run build:server && npm run build:configpanel","clean":"rimraf dist public","watch":"tsc --watch","format":"npm run prettier && npm run lint","ci-lint":"eslint && prettier --check .","prettier":"prettier --write .","test:all":"node --test \"dist/test/**/*.test.js\"","build:all":"npm run build && npm test","build:server":"tsc","prepublishOnly":"npm run build","test:integration":"node --test \"dist/test/integration/*.test.js\"","build:configpanel":"vite build","build:all:integration":"npm run build && npm run test:all"},"signalk":{"appIcon":"./icon.svg","displayName":"Container Manager","screenshots":["./doc/screenshots/signalk-container-1.png","./doc/screenshots/signalk-container-2.png","./doc/screenshots/signalk-container-3.png"]},"_npmUser":{"name":"GitHub Actions","email":"npm-oidc-no-reply@github.com","trustedPublisher":{"id":"github","oidcConfigId":"oidc:ac86e6a6-7555-4a7a-aa96-7ed2220dbf64"}},"repository":{"url":"git+https://github.com/dirkwa/signalk-container.git","type":"git"},"_npmVersion":"11.12.1","description":"Shared container runtime management (Podman/Docker) for Signal K plugins","directories":{},"_nodeVersion":"24.15.0","dependencies":{"typebox":"^1.1.38"},"_hasShrinkwrap":false,"devDependencies":{"vite":"^8.0.13","react":"^19.2.4","eslint":"^10.2.0","rimraf":"^6.1.3","globals":"^17.4.0","prettier":"^3.8.1","react-dom":"^19.2.4","@eslint/js":"^10.0.1","typescript":"^6.0.3","@types/node":"^22.0.0","@types/react":"^19.2.14","@types/express":"^5.0.6","@types/react-dom":"^19.2.3","typescript-eslint":"^8.58.0","@signalk/server-api":"latest","@vitejs/plugin-react":"^6.0.2","eslint-config-prettier":"^10.1.8","@module-federation/vite":"^1.5.0"},"_npmOperationalInternal":{"tmp":"tmp/signalk-container_1.11.2_1779573641641_0.657579110314686","host":"s3://npm-registry-packages-npm-production"},"signalk-plugin-enabled-by-default":true},"1.11.3":{"name":"signalk-container","version":"1.11.3","keywords":["signalk-node-server-plugin","signalk-plugin-configurator"],"author":{"name":"Dirk Wahrheit","email":"dirkwahrheit@gmail.com"},"license":"MIT","_id":"signalk-container@1.11.3","maintainers":[{"name":"dirkwa","email":"dirkwahrheit@gmail.com"}],"homepage":"https://github.com/dirkwa/signalk-container#readme","bugs":{"url":"https://github.com/dirkwa/signalk-container/issues"},"dist":{"shasum":"f418b21de6ea8135ad3d9c6dd42c8a4b11dee521","tarball":"https://registry.npmjs.org/signalk-container/-/signalk-container-1.11.3.tgz","fileCount":104,"integrity":"sha512-ioe+lxnvRQT0gKajI+tuwuYa9tX/CPA/6ZArgTDRIO0FVj30jhwal5pkH24bmpCUU0p6WghHSeju89VfjqubsA==","signatures":[{"sig":"MEUCIQCkEtQ86w62QadjqiAK75MD5QFH2EyV9Pe2QCORtAfy4wIgUakSX+exvW1O5VadfXQ686YTOdaGwSeBJRZyFHuDjmk=","keyid":"SHA256:DhQ8wR5APBvFHLF/+Tc+AYvPOdTpcIDqOhxsBHRwC7U"}],"attestations":{"url":"https://registry.npmjs.org/-/npm/v1/attestations/signalk-container@1.11.3","provenance":{"predicateType":"https://slsa.dev/provenance/v1"}},"unpackedSize":1374355},"main":"dist/index.js","type":"module","types":"./dist/index.d.ts","engines":{"node":">=22"},"gitHead":"755ddd83a302f60075239c430129a2254ea6e047","scripts":{"lint":"eslint --fix","test":"node --test \"dist/test/*.test.js\"","build":"npm run clean && npm run build:server && npm run build:configpanel","clean":"rimraf dist public","watch":"tsc --watch","format":"npm run prettier && npm run lint","ci-lint":"eslint && prettier --check .","prettier":"prettier --write .","test:all":"node --test \"dist/test/**/*.test.js\"","build:all":"npm run build && npm test","build:server":"tsc","prepublishOnly":"npm run build","test:integration":"node --test \"dist/test/integration/*.test.js\"","build:configpanel":"vite build","build:all:integration":"npm run build && npm run test:all"},"signalk":{"appIcon":"./icon.svg","displayName":"Container Manager","screenshots":["./doc/screenshots/signalk-container-1.png","./doc/screenshots/signalk-container-2.png","./doc/screenshots/signalk-container-3.png"]},"_npmUser":{"name":"GitHub Actions","email":"npm-oidc-no-reply@github.com","trustedPublisher":{"id":"github","oidcConfigId":"oidc:ac86e6a6-7555-4a7a-aa96-7ed2220dbf64"}},"repository":{"url":"git+https://github.com/dirkwa/signalk-container.git","type":"git"},"_npmVersion":"11.12.1","description":"Shared container runtime management (Podman/Docker) for Signal K plugins","directories":{},"_nodeVersion":"24.15.0","dependencies":{"typebox":"^1.1.38"},"_hasShrinkwrap":false,"devDependencies":{"jiti":"^2.7.0","vite":"^8.0.13","react":"^19.2.4","eslint":"^10.2.0","rimraf":"^6.1.3","globals":"^17.4.0","prettier":"^3.8.1","react-dom":"^19.2.4","@eslint/js":"^10.0.1","typescript":"^6.0.3","@types/node":"^22.0.0","@types/react":"^19.2.14","@types/express":"^5.0.6","@types/react-dom":"^19.2.3","typescript-eslint":"^8.58.0","@signalk/server-api":"latest","@vitejs/plugin-react":"^6.0.2","eslint-config-prettier":"^10.1.8","@module-federation/vite":"^1.5.0"},"_npmOperationalInternal":{"tmp":"tmp/signalk-container_1.11.3_1779577566981_0.13819973874877522","host":"s3://npm-registry-packages-npm-production"},"signalk-plugin-enabled-by-default":true},"1.11.4":{"name":"signalk-container","version":"1.11.4","keywords":["signalk-node-server-plugin","signalk-plugin-configurator"],"author":{"name":"Dirk Wahrheit","email":"dirkwahrheit@gmail.com"},"license":"MIT","_id":"signalk-container@1.11.4","maintainers":[{"name":"dirkwa","email":"dirkwahrheit@gmail.com"}],"homepage":"https://github.com/dirkwa/signalk-container#readme","bugs":{"url":"https://github.com/dirkwa/signalk-container/issues"},"dist":{"shasum":"67dd2e128dcddabda4b302094227f24633cb09b8","tarball":"https://registry.npmjs.org/signalk-container/-/signalk-container-1.11.4.tgz","fileCount":104,"integrity":"sha512-qerzbrCwe76B3ll89BJOiYp2hMlQ6Tvb+i9kmT59S50mUUECWikhi7sHiCXTLZrVW8tp6u97Eo0xmvXufdPAJw==","signatures":[{"sig":"MEUCIQC9UkuJdbis4YtKSxdTic46tagnPl+bgoKdWeDq/V8pNAIgHSZhW8qUFUR29+kB3IqkUNOVE2tXa2VgySPalXlg6h0=","keyid":"SHA256:DhQ8wR5APBvFHLF/+Tc+AYvPOdTpcIDqOhxsBHRwC7U"}],"attestations":{"url":"https://registry.npmjs.org/-/npm/v1/attestations/signalk-container@1.11.4","provenance":{"predicateType":"https://slsa.dev/provenance/v1"}},"unpackedSize":1375856},"main":"dist/index.js","type":"module","types":"./dist/index.d.ts","engines":{"node":">=22"},"gitHead":"3739200965f0de13ebe3f3321ecfed2b63a55a9a","scripts":{"lint":"eslint --fix","test":"node --test \"dist/test/*.test.js\"","build":"npm run clean && npm run build:server && npm run build:configpanel","clean":"rimraf dist public","watch":"tsc --watch","format":"npm run prettier && npm run lint","ci-lint":"eslint && prettier --check .","prettier":"prettier --write .","test:all":"node --test \"dist/test/**/*.test.js\"","build:all":"npm run build && npm test","build:server":"tsc","prepublishOnly":"npm run build","test:integration":"node --test \"dist/test/integration/*.test.js\"","build:configpanel":"vite build","build:all:integration":"npm run build && npm run test:all"},"signalk":{"appIcon":"./icon.svg","displayName":"Container Manager","screenshots":["./doc/screenshots/signalk-container-1.png","./doc/screenshots/signalk-container-2.png","./doc/screenshots/signalk-container-3.png"]},"_npmUser":{"name":"GitHub Actions","email":"npm-oidc-no-reply@github.com","trustedPublisher":{"id":"github","oidcConfigId":"oidc:ac86e6a6-7555-4a7a-aa96-7ed2220dbf64"}},"repository":{"url":"git+https://github.com/dirkwa/signalk-container.git","type":"git"},"_npmVersion":"11.12.1","description":"Shared container runtime management (Podman/Docker) for Signal K plugins","directories":{},"_nodeVersion":"24.15.0","dependencies":{"typebox":"^1.1.38"},"_hasShrinkwrap":false,"devDependencies":{"jiti":"^2.7.0","vite":"^8.0.13","react":"^19.2.4","eslint":"^10.2.0","rimraf":"^6.1.3","globals":"^17.4.0","prettier":"^3.8.1","react-dom":"^19.2.4","@eslint/js":"^10.0.1","typescript":"^6.0.3","@types/node":"^22.0.0","@types/react":"^19.2.14","@types/express":"^5.0.6","@types/react-dom":"^19.2.3","typescript-eslint":"^8.58.0","@signalk/server-api":"latest","@vitejs/plugin-react":"^6.0.2","eslint-config-prettier":"^10.1.8","@module-federation/vite":"^1.5.0"},"_npmOperationalInternal":{"tmp":"tmp/signalk-container_1.11.4_1779578714781_0.5389665389699305","host":"s3://npm-registry-packages-npm-production"},"signalk-plugin-enabled-by-default":true},"1.11.5":{"name":"signalk-container","version":"1.11.5","keywords":["signalk-node-server-plugin","signalk-plugin-configurator"],"author":{"name":"Dirk Wahrheit","email":"dirkwahrheit@gmail.com"},"license":"MIT","_id":"signalk-container@1.11.5","maintainers":[{"name":"dirkwa","email":"dirkwahrheit@gmail.com"}],"homepage":"https://github.com/dirkwa/signalk-container#readme","bugs":{"url":"https://github.com/dirkwa/signalk-container/issues"},"dist":{"shasum":"1a18a55eb4317ddadafa90221bf1dd55dfadce89","tarball":"https://registry.npmjs.org/signalk-container/-/signalk-container-1.11.5.tgz","fileCount":104,"integrity":"sha512-ej4jDGA/Tf8PJLIlbPXQfOukZQGyk88mv7BF8MrOswlNj1Hqp3NLNF3CZULTF0yf6hpJDbWfwF1FduUriauyOw==","signatures":[{"sig":"MEUCIQCfJB2LZnKsC2aOQ7HQjEG0Gl+H/4RsJc7XgqyKL7331AIgF+sMS5d61awmMYauGQcYV71dxhOQnqmcCGsBlcABziY=","keyid":"SHA256:DhQ8wR5APBvFHLF/+Tc+AYvPOdTpcIDqOhxsBHRwC7U"}],"attestations":{"url":"https://registry.npmjs.org/-/npm/v1/attestations/signalk-container@1.11.5","provenance":{"predicateType":"https://slsa.dev/provenance/v1"}},"unpackedSize":1380222},"main":"dist/index.js","type":"module","types":"./dist/index.d.ts","engines":{"node":">=22"},"gitHead":"a09dcbd0ac11e134a8ff6a817f1849e860d4ba3d","scripts":{"lint":"eslint --fix","test":"node --test \"dist/test/*.test.js\"","build":"npm run clean && npm run build:server && npm run build:configpanel","clean":"rimraf dist public","watch":"tsc --watch","format":"npm run prettier && npm run lint","ci-lint":"eslint && prettier --check .","prettier":"prettier --write .","test:all":"node --test \"dist/test/**/*.test.js\"","build:all":"npm run build && npm test","build:server":"tsc","prepublishOnly":"npm run build","test:integration":"node --test \"dist/test/integration/*.test.js\"","build:configpanel":"vite build","build:all:integration":"npm run build && npm run test:all"},"signalk":{"appIcon":"./icon.svg","displayName":"Container Manager","screenshots":["./doc/screenshots/signalk-container-1.png","./doc/screenshots/signalk-container-2.png","./doc/screenshots/signalk-container-3.png"]},"_npmUser":{"name":"GitHub Actions","email":"npm-oidc-no-reply@github.com","trustedPublisher":{"id":"github","oidcConfigId":"oidc:ac86e6a6-7555-4a7a-aa96-7ed2220dbf64"}},"repository":{"url":"git+https://github.com/dirkwa/signalk-container.git","type":"git"},"_npmVersion":"11.12.1","description":"Shared container runtime management (Podman/Docker) for Signal K plugins","directories":{},"_nodeVersion":"24.15.0","dependencies":{"typebox":"^1.1.38"},"_hasShrinkwrap":false,"devDependencies":{"jiti":"^2.7.0","vite":"^8.0.13","react":"^19.2.4","eslint":"^10.2.0","rimraf":"^6.1.3","globals":"^17.4.0","prettier":"^3.8.1","react-dom":"^19.2.4","@eslint/js":"^10.0.1","typescript":"^6.0.3","@types/node":"^22.0.0","@types/react":"^19.2.14","@types/express":"^5.0.6","@types/react-dom":"^19.2.3","typescript-eslint":"^8.58.0","@signalk/server-api":"latest","@vitejs/plugin-react":"^6.0.2","eslint-config-prettier":"^10.1.8","@module-federation/vite":"^1.5.0"},"_npmOperationalInternal":{"tmp":"tmp/signalk-container_1.11.5_1779732477634_0.95935318644978","host":"s3://npm-registry-packages-npm-production"},"signalk-plugin-enabled-by-default":true},"1.11.6":{"name":"signalk-container","version":"1.11.6","keywords":["signalk-node-server-plugin","signalk-plugin-configurator"],"author":{"name":"Dirk Wahrheit","email":"dirkwahrheit@gmail.com"},"license":"MIT","_id":"signalk-container@1.11.6","maintainers":[{"name":"dirkwa","email":"dirkwahrheit@gmail.com"}],"homepage":"https://github.com/dirkwa/signalk-container#readme","bugs":{"url":"https://github.com/dirkwa/signalk-container/issues"},"dist":{"shasum":"ecf3e7ebf20546d42db2344150629b7d2b3bf842","tarball":"https://registry.npmjs.org/signalk-container/-/signalk-container-1.11.6.tgz","fileCount":104,"integrity":"sha512-UDAOOb9E+Qf7vXJJulEGTRyQRvQr1Fw5yXKRPqXkCToHTy0htylfGqfLpVT3dA1xwRARj+3q6gtIpon8iekgBA==","signatures":[{"sig":"MEYCIQC3q5dOLZqGYpSohu61Yt22DkAi2J14YtEzBMF/ZZ67gwIhAKu1lwI8BJMPGtKNm5BHKGtsqlg5my5nD+3CMLH9XJXz","keyid":"SHA256:DhQ8wR5APBvFHLF/+Tc+AYvPOdTpcIDqOhxsBHRwC7U"}],"attestations":{"url":"https://registry.npmjs.org/-/npm/v1/attestations/signalk-container@1.11.6","provenance":{"predicateType":"https://slsa.dev/provenance/v1"}},"unpackedSize":1383984},"main":"dist/index.js","type":"module","types":"./dist/index.d.ts","engines":{"node":">=22"},"gitHead":"43c8c734bddfeec8fd106272b75ccd8ef261bee5","scripts":{"lint":"eslint --fix","test":"node --test \"dist/test/*.test.js\"","build":"npm run clean && npm run build:server && npm run build:configpanel","clean":"rimraf dist public","watch":"tsc --watch","format":"npm run prettier && npm run lint","ci-lint":"eslint && prettier --check .","prettier":"prettier --write .","test:all":"node --test \"dist/test/**/*.test.js\"","build:all":"npm run build && npm test","build:server":"tsc","prepublishOnly":"npm run build","test:integration":"node --test \"dist/test/integration/*.test.js\"","build:configpanel":"vite build","build:all:integration":"npm run build && npm run test:all"},"signalk":{"appIcon":"./icon.svg","displayName":"Container Manager","screenshots":["./doc/screenshots/signalk-container-1.png","./doc/screenshots/signalk-container-2.png","./doc/screenshots/signalk-container-3.png"]},"_npmUser":{"name":"GitHub Actions","email":"npm-oidc-no-reply@github.com","trustedPublisher":{"id":"github","oidcConfigId":"oidc:ac86e6a6-7555-4a7a-aa96-7ed2220dbf64"}},"repository":{"url":"git+https://github.com/dirkwa/signalk-container.git","type":"git"},"_npmVersion":"11.12.1","description":"Shared container runtime management (Podman/Docker) for Signal K plugins","directories":{},"_nodeVersion":"24.15.0","dependencies":{"typebox":"^1.1.38"},"_hasShrinkwrap":false,"devDependencies":{"jiti":"^2.7.0","vite":"^8.0.13","react":"^19.2.4","eslint":"^10.2.0","rimraf":"^6.1.3","globals":"^17.4.0","prettier":"^3.8.1","react-dom":"^19.2.4","@eslint/js":"^10.0.1","typescript":"^6.0.3","@types/node":"^22.0.0","@types/react":"^19.2.14","@types/express":"^5.0.6","@types/react-dom":"^19.2.3","typescript-eslint":"^8.58.0","@signalk/server-api":"latest","@vitejs/plugin-react":"^6.0.2","eslint-config-prettier":"^10.1.8","@module-federation/vite":"^1.5.0"},"_npmOperationalInternal":{"tmp":"tmp/signalk-container_1.11.6_1779846867121_0.4643478414500819","host":"s3://npm-registry-packages-npm-production"},"signalk-plugin-enabled-by-default":true},"1.11.7":{"name":"signalk-container","version":"1.11.7","keywords":["signalk-node-server-plugin","signalk-plugin-configurator"],"author":{"name":"Dirk Wahrheit","email":"dirkwahrheit@gmail.com"},"license":"MIT","_id":"signalk-container@1.11.7","maintainers":[{"name":"dirkwa","email":"dirkwahrheit@gmail.com"}],"homepage":"https://github.com/dirkwa/signalk-container#readme","bugs":{"url":"https://github.com/dirkwa/signalk-container/issues"},"dist":{"shasum":"41c4659a077092e542c88ddb34605a51d0139641","tarball":"https://registry.npmjs.org/signalk-container/-/signalk-container-1.11.7.tgz","fileCount":104,"integrity":"sha512-hzLMYLizoURwvOGhzAa6vqyn0EH35zlQRBpNfdF9TrubphnGJ94AfvQPdTMoLqPsJA4QVGGDIRRAAeWUh0y+tQ==","signatures":[{"sig":"MEQCIDsI6usj239rBspyHmsc5TglMmZv5kRjw0zGfY3jnJdeAiAA7Wl4tjmpk6qht//iU/mGCXHB6583CkXUwyR9GV0eqA==","keyid":"SHA256:DhQ8wR5APBvFHLF/+Tc+AYvPOdTpcIDqOhxsBHRwC7U"}],"attestations":{"url":"https://registry.npmjs.org/-/npm/v1/attestations/signalk-container@1.11.7","provenance":{"predicateType":"https://slsa.dev/provenance/v1"}},"unpackedSize":1384582},"main":"dist/index.js","type":"module","types":"./dist/index.d.ts","engines":{"node":">=22"},"gitHead":"c67541d0139f0b69bdd7f246f4ce72046a4a26ba","scripts":{"lint":"eslint --fix","test":"node --test \"dist/test/*.test.js\"","build":"npm run clean && npm run build:server && npm run build:configpanel","clean":"rimraf dist public","watch":"tsc --watch","format":"npm run prettier && npm run lint","ci-lint":"eslint && prettier --check .","prettier":"prettier --write .","test:all":"node --test \"dist/test/**/*.test.js\"","build:all":"npm run build && npm test","build:server":"tsc","prepublishOnly":"npm run build","test:integration":"node --test \"dist/test/integration/*.test.js\"","build:configpanel":"vite build","build:all:integration":"npm run build && npm run test:all"},"signalk":{"appIcon":"./icon.svg","displayName":"Container Manager","screenshots":["./doc/screenshots/signalk-container-1.png","./doc/screenshots/signalk-container-2.png","./doc/screenshots/signalk-container-3.png"]},"_npmUser":{"name":"GitHub Actions","email":"npm-oidc-no-reply@github.com","trustedPublisher":{"id":"github","oidcConfigId":"oidc:ac86e6a6-7555-4a7a-aa96-7ed2220dbf64"}},"repository":{"url":"git+https://github.com/dirkwa/signalk-container.git","type":"git"},"_npmVersion":"11.12.1","description":"Shared container runtime management (Podman/Docker) for Signal K plugins","directories":{},"_nodeVersion":"24.15.0","dependencies":{"typebox":"^1.1.38"},"_hasShrinkwrap":false,"devDependencies":{"jiti":"^2.7.0","vite":"^8.0.13","react":"^19.2.4","eslint":"^10.2.0","rimraf":"^6.1.3","globals":"^17.4.0","prettier":"^3.8.1","react-dom":"^19.2.4","@eslint/js":"^10.0.1","typescript":"^6.0.3","@types/node":"^22.0.0","@types/react":"^19.2.14","@types/express":"^5.0.6","@types/react-dom":"^19.2.3","typescript-eslint":"^8.58.0","@signalk/server-api":"latest","@vitejs/plugin-react":"^6.0.2","eslint-config-prettier":"^10.1.8","@module-federation/vite":"^1.5.0"},"_npmOperationalInternal":{"tmp":"tmp/signalk-container_1.11.7_1779862841484_0.044430167437535584","host":"s3://npm-registry-packages-npm-production"},"signalk-plugin-enabled-by-default":true},"1.12.0":{"name":"signalk-container","version":"1.12.0","keywords":["signalk-node-server-plugin","signalk-plugin-configurator"],"author":{"name":"Dirk Wahrheit","email":"dirkwahrheit@gmail.com"},"license":"MIT","_id":"signalk-container@1.12.0","maintainers":[{"name":"dirkwa","email":"dirkwahrheit@gmail.com"}],"homepage":"https://github.com/dirkwa/signalk-container#readme","bugs":{"url":"https://github.com/dirkwa/signalk-container/issues"},"dist":{"shasum":"d586b0a6762c6b4e8c7cc783b52f8e7816d1da7c","tarball":"https://registry.npmjs.org/signalk-container/-/signalk-container-1.12.0.tgz","fileCount":108,"integrity":"sha512-3dzztFRQ5Y+QYmNvjhjat9HkPh0PDI7AforFJSdhegtPVhpUAaeRFc6Kr3OkaKp7ULZ+EljmW7Vx32KAoP1zbA==","signatures":[{"sig":"MEQCIGoBIyshVHSmhxUgLa3qb8eYrHOzb2yyXLpG0ts15MRzAiBlDCfs6QVezS2kaYFodsADFaDeu4bXKsDLpjXeqp9JQQ==","keyid":"SHA256:DhQ8wR5APBvFHLF/+Tc+AYvPOdTpcIDqOhxsBHRwC7U"}],"attestations":{"url":"https://registry.npmjs.org/-/npm/v1/attestations/signalk-container@1.12.0","provenance":{"predicateType":"https://slsa.dev/provenance/v1"}},"unpackedSize":1434459},"main":"dist/index.js","type":"module","types":"./dist/index.d.ts","engines":{"node":">=22"},"gitHead":"5222745dc9323a4a619a7637f4f887440438977d","scripts":{"lint":"eslint --fix","test":"node --test \"dist/test/*.test.js\"","build":"npm run clean && npm run build:server && npm run build:configpanel","clean":"rimraf dist public","watch":"tsc --watch","format":"npm run prettier && npm run lint","ci-lint":"eslint && prettier --check .","prettier":"prettier --write .","test:all":"node --test \"dist/test/**/*.test.js\"","build:all":"npm run build && npm test","build:server":"tsc","prepublishOnly":"npm run build","test:integration":"node --test \"dist/test/integration/*.test.js\"","build:configpanel":"vite build","build:all:integration":"npm run build && npm run test:all"},"signalk":{"appIcon":"./icon.svg","displayName":"Container Manager","screenshots":["./doc/screenshots/signalk-container-1.png","./doc/screenshots/signalk-container-2.png","./doc/screenshots/signalk-container-3.png"]},"_npmUser":{"name":"GitHub Actions","email":"npm-oidc-no-reply@github.com","trustedPublisher":{"id":"github","oidcConfigId":"oidc:ac86e6a6-7555-4a7a-aa96-7ed2220dbf64"}},"repository":{"url":"git+https://github.com/dirkwa/signalk-container.git","type":"git"},"_npmVersion":"11.13.0","description":"Shared container runtime management (Podman/Docker) for Signal K plugins","directories":{},"_nodeVersion":"24.16.0","dependencies":{"typebox":"^1.1.38"},"_hasShrinkwrap":false,"devDependencies":{"jiti":"^2.7.0","vite":"^8.0.13","react":"^19.2.4","eslint":"^10.2.0","rimraf":"^6.1.3","globals":"^17.4.0","prettier":"^3.8.1","react-dom":"^19.2.4","@eslint/js":"^10.0.1","typescript":"^6.0.3","@types/node":"^22.0.0","@types/react":"^19.2.14","@types/express":"^5.0.6","@types/react-dom":"^19.2.3","typescript-eslint":"^8.58.0","@signalk/server-api":"latest","@vitejs/plugin-react":"^6.0.2","eslint-config-prettier":"^10.1.8","@module-federation/vite":"^1.5.0"},"_npmOperationalInternal":{"tmp":"tmp/signalk-container_1.12.0_1779907142148_0.8424614716878491","host":"s3://npm-registry-packages-npm-production"},"signalk-plugin-enabled-by-default":true},"1.12.1":{"name":"signalk-container","version":"1.12.1","keywords":["signalk-node-server-plugin","signalk-plugin-configurator"],"author":{"name":"Dirk Wahrheit","email":"dirkwahrheit@gmail.com"},"license":"MIT","_id":"signalk-container@1.12.1","maintainers":[{"name":"dirkwa","email":"dirkwahrheit@gmail.com"}],"homepage":"https://github.com/dirkwa/signalk-container#readme","bugs":{"url":"https://github.com/dirkwa/signalk-container/issues"},"dist":{"shasum":"4d990b7d447806a7fc52528aad9a26d95e10e3f0","tarball":"https://registry.npmjs.org/signalk-container/-/signalk-container-1.12.1.tgz","fileCount":108,"integrity":"sha512-G6g324YEtIILLRRC1uQaIX/rGhwVhbreFQxU7vf3Sf9tSs/sxzsb+xUbWazBa1L+mPmdR9LFpqxoc5YzWE9O9w==","signatures":[{"sig":"MEUCIQDDXWkClECO/EISqXQyv5Vp7RDJr5bjtor6qKVlX0oU4gIgTmSO+URomRunUXSvZUheBXVEwJZmOTbzD2ZvxVuJ1UM=","keyid":"SHA256:DhQ8wR5APBvFHLF/+Tc+AYvPOdTpcIDqOhxsBHRwC7U"}],"attestations":{"url":"https://registry.npmjs.org/-/npm/v1/attestations/signalk-container@1.12.1","provenance":{"predicateType":"https://slsa.dev/provenance/v1"}},"unpackedSize":1435245},"main":"dist/index.js","type":"module","types":"./dist/index.d.ts","engines":{"node":">=22"},"gitHead":"0d9cef4eb8700b9207c52980aa8076fb8a345a8c","scripts":{"lint":"eslint --fix","test":"node --test \"dist/test/*.test.js\"","build":"npm run clean && npm run build:server && npm run build:configpanel","clean":"rimraf dist public","watch":"tsc --watch","format":"npm run prettier && npm run lint","ci-lint":"eslint && prettier --check .","prettier":"prettier --write .","test:all":"node --test \"dist/test/**/*.test.js\"","build:all":"npm run build && npm test","build:server":"tsc","prepublishOnly":"npm run build","test:integration":"node --test \"dist/test/integration/*.test.js\"","build:configpanel":"vite build","build:all:integration":"npm run build && npm run test:all"},"signalk":{"appIcon":"./icon.svg","displayName":"Container Manager","screenshots":["./doc/screenshots/signalk-container-1.png","./doc/screenshots/signalk-container-2.png","./doc/screenshots/signalk-container-3.png"]},"_npmUser":{"name":"GitHub Actions","email":"npm-oidc-no-reply@github.com","trustedPublisher":{"id":"github","oidcConfigId":"oidc:ac86e6a6-7555-4a7a-aa96-7ed2220dbf64"}},"repository":{"url":"git+https://github.com/dirkwa/signalk-container.git","type":"git"},"_npmVersion":"11.12.1","description":"Shared container runtime management (Podman/Docker) for Signal K plugins","directories":{},"_nodeVersion":"24.15.0","dependencies":{"typebox":"^1.1.38"},"_hasShrinkwrap":false,"devDependencies":{"jiti":"^2.7.0","vite":"^8.0.13","react":"^19.2.4","eslint":"^10.2.0","rimraf":"^6.1.3","globals":"^17.4.0","prettier":"^3.8.1","react-dom":"^19.2.4","@eslint/js":"^10.0.1","typescript":"^6.0.3","@types/node":"^22.0.0","@types/react":"^19.2.14","@types/express":"^5.0.6","@types/react-dom":"^19.2.3","typescript-eslint":"^8.58.0","@signalk/server-api":"latest","@vitejs/plugin-react":"^6.0.2","eslint-config-prettier":"^10.1.8","@module-federation/vite":"^1.5.0"},"_npmOperationalInternal":{"tmp":"tmp/signalk-container_1.12.1_1779909698078_0.8607632734221755","host":"s3://npm-registry-packages-npm-production"},"signalk-plugin-enabled-by-default":true},"1.12.2":{"name":"signalk-container","version":"1.12.2","keywords":["signalk-node-server-plugin","signalk-plugin-configurator"],"author":{"name":"Dirk Wahrheit","email":"dirkwahrheit@gmail.com"},"license":"MIT","_id":"signalk-container@1.12.2","maintainers":[{"name":"dirkwa","email":"dirkwahrheit@gmail.com"}],"homepage":"https://github.com/dirkwa/signalk-container#readme","bugs":{"url":"https://github.com/dirkwa/signalk-container/issues"},"dist":{"shasum":"91cfdc2594a00aea9c6252cf016a52804d1e66c6","tarball":"https://registry.npmjs.org/signalk-container/-/signalk-container-1.12.2.tgz","fileCount":108,"integrity":"sha512-dKP9QWTn+Z8HLA+7EcdUUjQUfvSi9DMUoBJ8Jp260sQ1e1YwLv9DD/rSsfZLEscM3vFZqLNrZDFG0yAGBV/wFQ==","signatures":[{"sig":"MEYCIQDfPmBYs+EG4TC7HiMU6UY5H8C53nCUoaqzN1sIfV/WcAIhANjLIcV2WOget0SjTJB8g1xA+M1wL3L9te9Trns/jiQT","keyid":"SHA256:DhQ8wR5APBvFHLF/+Tc+AYvPOdTpcIDqOhxsBHRwC7U"}],"attestations":{"url":"https://registry.npmjs.org/-/npm/v1/attestations/signalk-container@1.12.2","provenance":{"predicateType":"https://slsa.dev/provenance/v1"}},"unpackedSize":1435376},"main":"dist/index.js","type":"module","types":"./dist/index.d.ts","engines":{"node":">=22"},"gitHead":"5146ff2013bf98da550cdf2f6f51f600b048d065","scripts":{"lint":"eslint --fix","test":"node --test \"dist/test/*.test.js\"","build":"npm run clean && npm run build:server && npm run build:configpanel","clean":"rimraf dist public","watch":"tsc --watch","format":"npm run prettier && npm run lint","ci-lint":"eslint && prettier --check .","prettier":"prettier --write .","test:all":"node --test \"dist/test/**/*.test.js\"","build:all":"npm run build && npm test","build:server":"tsc","prepublishOnly":"npm run build","test:integration":"node --test \"dist/test/integration/*.test.js\"","build:configpanel":"vite build","build:all:integration":"npm run build && npm run test:all"},"signalk":{"appIcon":"./icon.svg","displayName":"Container Manager","screenshots":["./doc/screenshots/signalk-container-1.png","./doc/screenshots/signalk-container-2.png","./doc/screenshots/signalk-container-3.png"]},"_npmUser":{"name":"GitHub Actions","email":"npm-oidc-no-reply@github.com","trustedPublisher":{"id":"github","oidcConfigId":"oidc:ac86e6a6-7555-4a7a-aa96-7ed2220dbf64"}},"repository":{"url":"git+https://github.com/dirkwa/signalk-container.git","type":"git"},"_npmVersion":"11.13.0","description":"Shared container runtime management (Podman/Docker) for Signal K plugins","directories":{},"_nodeVersion":"24.16.0","dependencies":{"typebox":"^1.1.38"},"_hasShrinkwrap":false,"devDependencies":{"jiti":"^2.7.0","vite":"^8.0.13","react":"^19.2.4","eslint":"^10.2.0","rimraf":"^6.1.3","globals":"^17.4.0","prettier":"^3.8.1","react-dom":"^19.2.4","@eslint/js":"^10.0.1","typescript":"^6.0.3","@types/node":"^22.0.0","@types/react":"^19.2.14","@types/express":"^5.0.6","@types/react-dom":"^19.2.3","typescript-eslint":"^8.58.0","@signalk/server-api":"latest","@vitejs/plugin-react":"^6.0.2","eslint-config-prettier":"^10.1.8","@module-federation/vite":"^1.5.0"},"_npmOperationalInternal":{"tmp":"tmp/signalk-container_1.12.2_1780164543340_0.7185125099651444","host":"s3://npm-registry-packages-npm-production"},"signalk-plugin-enabled-by-default":true},"1.13.0-beta.1":{"name":"signalk-container","version":"1.13.0-beta.1","keywords":["signalk-node-server-plugin","signalk-plugin-configurator"],"author":{"name":"Dirk Wahrheit","email":"dirkwahrheit@gmail.com"},"license":"MIT","_id":"signalk-container@1.13.0-beta.1","maintainers":[{"name":"dirkwa","email":"dirkwahrheit@gmail.com"}],"homepage":"https://github.com/dirkwa/signalk-container#readme","bugs":{"url":"https://github.com/dirkwa/signalk-container/issues"},"dist":{"shasum":"7d4a0ba67822ebbcbd9f118cd670a743ccdf8388","tarball":"https://registry.npmjs.org/signalk-container/-/signalk-container-1.13.0-beta.1.tgz","fileCount":108,"integrity":"sha512-pup14zdpyIIaW7hX148RT6C0HnzV0z75SLQ6/m/LbrWb8cKvGKh9nPzbq8Buyy0cPRUzQZ7uZqW1aI4QAjxXcg==","signatures":[{"sig":"MEYCIQDzA+9ojGtAaOEcUqa6m1DCI9U5W835FxVr4mZU+1TJbQIhAJtekkldee+E0HsHzM4kJwN6ej44aeIPyHTmBcRg15+K","keyid":"SHA256:DhQ8wR5APBvFHLF/+Tc+AYvPOdTpcIDqOhxsBHRwC7U"}],"attestations":{"url":"https://registry.npmjs.org/-/npm/v1/attestations/signalk-container@1.13.0-beta.1","provenance":{"predicateType":"https://slsa.dev/provenance/v1"}},"unpackedSize":1442295},"main":"dist/index.js","type":"module","types":"./dist/index.d.ts","engines":{"node":">=22"},"gitHead":"3d21371efc1b68c5fe88d95a359b986d49271efa","scripts":{"lint":"eslint --fix","test":"node --test \"dist/test/*.test.js\"","build":"npm run clean && npm run build:server && npm run build:configpanel","clean":"rimraf dist public","watch":"tsc --watch","format":"npm run prettier && npm run lint","ci-lint":"eslint && prettier --check .","prettier":"prettier --write .","test:all":"node --test \"dist/test/**/*.test.js\"","build:all":"npm run build && npm test","build:server":"tsc","prepublishOnly":"npm run build","test:integration":"node --test \"dist/test/integration/*.test.js\"","build:configpanel":"vite build","build:all:integration":"npm run build && npm run test:all"},"signalk":{"appIcon":"./icon.svg","displayName":"Container Manager","screenshots":["./doc/screenshots/signalk-container-1.png","./doc/screenshots/signalk-container-2.png","./doc/screenshots/signalk-container-3.png"]},"_npmUser":{"name":"GitHub Actions","email":"npm-oidc-no-reply@github.com","trustedPublisher":{"id":"github","oidcConfigId":"oidc:ac86e6a6-7555-4a7a-aa96-7ed2220dbf64"}},"repository":{"url":"git+https://github.com/dirkwa/signalk-container.git","type":"git"},"_npmVersion":"11.13.0","description":"Shared container runtime management (Podman/Docker) for Signal K plugins","directories":{},"_nodeVersion":"24.16.0","dependencies":{"typebox":"^1.1.38"},"_hasShrinkwrap":false,"readmeFilename":"README.md","devDependencies":{"jiti":"^2.7.0","vite":"^8.0.13","react":"^19.2.4","eslint":"^10.2.0","rimraf":"^6.1.3","globals":"^17.4.0","prettier":"^3.8.1","react-dom":"^19.2.4","@eslint/js":"^10.0.1","typescript":"^6.0.3","@types/node":"^22.0.0","@types/react":"^19.2.14","@types/express":"^5.0.6","@types/react-dom":"^19.2.3","typescript-eslint":"^8.58.0","@signalk/server-api":"latest","@vitejs/plugin-react":"^6.0.2","eslint-config-prettier":"^10.1.8","@module-federation/vite":"^1.5.0"},"_npmOperationalInternal":{"tmp":"tmp/signalk-container_1.13.0-beta.1_1780370872191_0.8449334297972606","host":"s3://npm-registry-packages-npm-production"},"signalk-plugin-enabled-by-default":true},"1.13.0":{"name":"signalk-container","version":"1.13.0","keywords":["signalk-node-server-plugin","signalk-plugin-configurator"],"author":{"name":"Dirk Wahrheit","email":"dirkwahrheit@gmail.com"},"license":"MIT","_id":"signalk-container@1.13.0","maintainers":[{"name":"dirkwa","email":"dirkwahrheit@gmail.com"}],"homepage":"https://github.com/dirkwa/signalk-container#readme","bugs":{"url":"https://github.com/dirkwa/signalk-container/issues"},"dist":{"shasum":"a7e33003c9cc8d81cfcef71cc0a98e1f83cda00a","tarball":"https://registry.npmjs.org/signalk-container/-/signalk-container-1.13.0.tgz","fileCount":108,"integrity":"sha512-jevcik4auVs1807d60RMePyKvvPgbo2iGU43AWF4iX+GHNqN7HfB86wtGbACvix03sFXgkqzrLhnbgOLGlJOmw==","signatures":[{"sig":"MEUCIGi0hEOAriZDq1opeGrrpd9565C8rU6NlQh+ubI1ekEYAiEAmFd74K448A2V3PT/tU3RjBiKEmqWXpZ3BV+QcSFlwtU=","keyid":"SHA256:DhQ8wR5APBvFHLF/+Tc+AYvPOdTpcIDqOhxsBHRwC7U"}],"attestations":{"url":"https://registry.npmjs.org/-/npm/v1/attestations/signalk-container@1.13.0","provenance":{"predicateType":"https://slsa.dev/provenance/v1"}},"unpackedSize":1442288},"main":"dist/index.js","type":"module","types":"./dist/index.d.ts","engines":{"node":">=22"},"gitHead":"9f03a5a685b912a4fdb55476dac57c1ded310786","scripts":{"lint":"eslint --fix","test":"node --test \"dist/test/*.test.js\"","build":"npm run clean && npm run build:server && npm run build:configpanel","clean":"rimraf dist public","watch":"tsc --watch","format":"npm run prettier && npm run lint","ci-lint":"eslint && prettier --check .","prettier":"prettier --write .","test:all":"node --test \"dist/test/**/*.test.js\"","build:all":"npm run build && npm test","build:server":"tsc","prepublishOnly":"npm run build","test:integration":"node --test \"dist/test/integration/*.test.js\"","build:configpanel":"vite build","build:all:integration":"npm run build && npm run test:all"},"signalk":{"appIcon":"./icon.svg","displayName":"Container Manager","screenshots":["./doc/screenshots/signalk-container-1.png","./doc/screenshots/signalk-container-2.png","./doc/screenshots/signalk-container-3.png"]},"_npmUser":{"name":"GitHub Actions","email":"npm-oidc-no-reply@github.com","trustedPublisher":{"id":"github","oidcConfigId":"oidc:ac86e6a6-7555-4a7a-aa96-7ed2220dbf64"}},"repository":{"url":"git+https://github.com/dirkwa/signalk-container.git","type":"git"},"_npmVersion":"11.13.0","description":"Shared container runtime management (Podman/Docker) for Signal K plugins","directories":{},"_nodeVersion":"24.16.0","dependencies":{"typebox":"^1.1.38"},"_hasShrinkwrap":false,"devDependencies":{"jiti":"^2.7.0","vite":"^8.0.13","react":"^19.2.4","eslint":"^10.2.0","rimraf":"^6.1.3","globals":"^17.4.0","prettier":"^3.8.1","react-dom":"^19.2.4","@eslint/js":"^10.0.1","typescript":"^6.0.3","@types/node":"^22.0.0","@types/react":"^19.2.14","@types/express":"^5.0.6","@types/react-dom":"^19.2.3","typescript-eslint":"^8.58.0","@signalk/server-api":"latest","@vitejs/plugin-react":"^6.0.2","eslint-config-prettier":"^10.1.8","@module-federation/vite":"^1.5.0"},"_npmOperationalInternal":{"tmp":"tmp/signalk-container_1.13.0_1780372419537_0.7604294036736692","host":"s3://npm-registry-packages-npm-production"},"signalk-plugin-enabled-by-default":true},"1.14.0":{"name":"signalk-container","version":"1.14.0","keywords":["signalk-node-server-plugin","signalk-plugin-configurator"],"author":{"name":"Dirk Wahrheit","email":"dirkwahrheit@gmail.com"},"license":"MIT","_id":"signalk-container@1.14.0","maintainers":[{"name":"dirkwa","email":"dirkwahrheit@gmail.com"}],"homepage":"https://github.com/dirkwa/signalk-container#readme","bugs":{"url":"https://github.com/dirkwa/signalk-container/issues"},"dist":{"shasum":"205a139aae18c192a05becaa3763b5a58da4a25f","tarball":"https://registry.npmjs.org/signalk-container/-/signalk-container-1.14.0.tgz","fileCount":108,"integrity":"sha512-ga4cZTv1KhjuryPRefRkzhPLHTLvh3xW0qPBq2VqzjaDTMNFh+dqAKCoRcy007fKCQeRTqWdVWU3TKQ/+kGGSQ==","signatures":[{"sig":"MEQCIBVzAXOfbFWFoh0jv8iCA7EmmRms0wvVGLGIJS/bbSX3AiBaJFOb+okeZ9JxeDjvRgjPVsuiCAd5avFeH7Zaqo4qfQ==","keyid":"SHA256:DhQ8wR5APBvFHLF/+Tc+AYvPOdTpcIDqOhxsBHRwC7U"}],"attestations":{"url":"https://registry.npmjs.org/-/npm/v1/attestations/signalk-container@1.14.0","provenance":{"predicateType":"https://slsa.dev/provenance/v1"}},"unpackedSize":1452443},"main":"dist/index.js","type":"module","types":"./dist/index.d.ts","engines":{"node":">=22"},"gitHead":"799f09a010870b6886eea1eebdf7e181c8a677ce","scripts":{"lint":"eslint --fix","test":"node --test \"dist/test/*.test.js\"","build":"npm run clean && npm run build:server && npm run build:configpanel","clean":"rimraf dist public","watch":"tsc --watch","format":"npm run prettier && npm run lint","ci-lint":"eslint && prettier --check .","prettier":"prettier --write .","test:all":"node --test \"dist/test/**/*.test.js\"","build:all":"npm run build && npm test","build:server":"tsc","prepublishOnly":"npm run build","test:integration":"node --test \"dist/test/integration/*.test.js\"","build:configpanel":"vite build","build:all:integration":"npm run build && npm run test:all"},"signalk":{"appIcon":"./icon.svg","displayName":"Container Manager","screenshots":["./doc/screenshots/signalk-container-1.png","./doc/screenshots/signalk-container-2.png","./doc/screenshots/signalk-container-3.png"]},"_npmUser":{"name":"GitHub Actions","email":"npm-oidc-no-reply@github.com","trustedPublisher":{"id":"github","oidcConfigId":"oidc:ac86e6a6-7555-4a7a-aa96-7ed2220dbf64"}},"repository":{"url":"git+https://github.com/dirkwa/signalk-container.git","type":"git"},"_npmVersion":"11.13.0","description":"Shared container runtime management (Podman/Docker) for Signal K plugins","directories":{},"_nodeVersion":"24.16.0","dependencies":{"typebox":"^1.1.38"},"_hasShrinkwrap":false,"devDependencies":{"jiti":"^2.7.0","vite":"^8.0.13","react":"^19.2.4","eslint":"^10.2.0","rimraf":"^6.1.3","globals":"^17.4.0","prettier":"^3.8.1","react-dom":"^19.2.4","@eslint/js":"^10.0.1","typescript":"^6.0.3","@types/node":"^22.0.0","@types/react":"^19.2.14","@types/express":"^5.0.6","@types/react-dom":"^19.2.3","typescript-eslint":"^8.58.0","@signalk/server-api":"latest","@vitejs/plugin-react":"^6.0.2","eslint-config-prettier":"^10.1.8","@module-federation/vite":"^1.5.0"},"_npmOperationalInternal":{"tmp":"tmp/signalk-container_1.14.0_1780451975293_0.9742429729841584","host":"s3://npm-registry-packages-npm-production"},"signalk-plugin-enabled-by-default":true},"1.15.0-beta.0":{"name":"signalk-container","version":"1.15.0-beta.0","keywords":["signalk-node-server-plugin","signalk-plugin-configurator"],"author":{"name":"Dirk Wahrheit","email":"dirkwahrheit@gmail.com"},"license":"MIT","_id":"signalk-container@1.15.0-beta.0","maintainers":[{"name":"dirkwa","email":"dirkwahrheit@gmail.com"}],"homepage":"https://github.com/dirkwa/signalk-container#readme","bugs":{"url":"https://github.com/dirkwa/signalk-container/issues"},"dist":{"shasum":"7bc9256af8090d8a24d95956e719c6417be56046","tarball":"https://registry.npmjs.org/signalk-container/-/signalk-container-1.15.0-beta.0.tgz","fileCount":116,"integrity":"sha512-Fw+Mem7OeamzEHmyYqA1vHT7RgK4zMuPRRPTlO8QjjOSePLxfPrMk3iG1mQSB/DMD/pPDKr28ziaowDL9WpqJg==","signatures":[{"sig":"MEUCIQDVSedRaPE2u0DoN/fOLUDzCP2nGlJL5N9vQjbwqSuHhQIgD5Gxd0IAhOCv9Buub+EiSMvVBsvbVTwjExgT/FZCNRc=","keyid":"SHA256:DhQ8wR5APBvFHLF/+Tc+AYvPOdTpcIDqOhxsBHRwC7U"}],"attestations":{"url":"https://registry.npmjs.org/-/npm/v1/attestations/signalk-container@1.15.0-beta.0","provenance":{"predicateType":"https://slsa.dev/provenance/v1"}},"unpackedSize":1466196},"main":"dist/index.js","type":"module","types":"./dist/index.d.ts","engines":{"node":">=22"},"gitHead":"eb62083bc29254ff769b3190151ddc31bc706d76","scripts":{"lint":"eslint --fix","test":"node --test \"dist/test/*.test.js\"","build":"npm run clean && npm run build:server && npm run build:configpanel","clean":"rimraf dist public","watch":"tsc --watch","format":"npm run prettier && npm run lint","ci-lint":"eslint && prettier --check .","prettier":"prettier --write .","test:all":"node --test \"dist/test/**/*.test.js\"","build:all":"npm run build && npm test","build:server":"tsc","prepublishOnly":"npm run build","test:integration":"node --test \"dist/test/integration/*.test.js\"","build:configpanel":"vite build","build:all:integration":"npm run build && npm run test:all"},"signalk":{"appIcon":"./icon.svg","displayName":"Container Manager","screenshots":["./doc/screenshots/signalk-container-1.png","./doc/screenshots/signalk-container-2.png","./doc/screenshots/signalk-container-3.png"]},"_npmUser":{"name":"GitHub Actions","email":"npm-oidc-no-reply@github.com","trustedPublisher":{"id":"github","oidcConfigId":"oidc:ac86e6a6-7555-4a7a-aa96-7ed2220dbf64"}},"repository":{"url":"git+https://github.com/dirkwa/signalk-container.git","type":"git"},"_npmVersion":"11.13.0","description":"Shared container runtime management (Podman/Docker) for Signal K plugins","directories":{},"_nodeVersion":"24.16.0","dependencies":{"typebox":"^1.1.38","dockerode":"^5.0.0"},"_hasShrinkwrap":false,"readmeFilename":"README.md","devDependencies":{"jiti":"^2.7.0","vite":"^8.0.13","react":"^19.2.4","eslint":"^10.2.0","rimraf":"^6.1.3","globals":"^17.4.0","prettier":"^3.8.1","react-dom":"^19.2.4","@eslint/js":"^10.0.1","typescript":"^6.0.3","@types/node":"^22.0.0","@types/react":"^19.2.14","@types/express":"^5.0.6","@types/dockerode":"^4.0.1","@types/react-dom":"^19.2.3","typescript-eslint":"^8.58.0","@signalk/server-api":"latest","@vitejs/plugin-react":"^6.0.2","eslint-config-prettier":"^10.1.8","@module-federation/vite":"^1.5.0"},"_npmOperationalInternal":{"tmp":"tmp/signalk-container_1.15.0-beta.0_1780893523797_0.14965797977655892","host":"s3://npm-registry-packages-npm-production"},"signalk-plugin-enabled-by-default":true},"1.15.0":{"name":"signalk-container","version":"1.15.0","keywords":["signalk-node-server-plugin","signalk-plugin-configurator"],"author":{"name":"Dirk Wahrheit","email":"dirkwahrheit@gmail.com"},"license":"MIT","_id":"signalk-container@1.15.0","maintainers":[{"name":"dirkwa","email":"dirkwahrheit@gmail.com"}],"homepage":"https://github.com/dirkwa/signalk-container#readme","bugs":{"url":"https://github.com/dirkwa/signalk-container/issues"},"dist":{"shasum":"0b4035b69d86ecd177a8af1960c3c9fba8df67d3","tarball":"https://registry.npmjs.org/signalk-container/-/signalk-container-1.15.0.tgz","fileCount":116,"integrity":"sha512-4K4ZVPs5Ah6zCHa4/bzuyH9VZjSQUCav3edPSOdTA5F76hRGP8O++q/eHhv+LhqrO3t+16nYEydWdH722hpsDg==","signatures":[{"sig":"MEUCIQCl0uc6QFeOB/SkvuhROZewTOPW6ERrW5k5gBAgdoiOZgIgKPSLopo4RCJfvi964Xo3HvjHTA41Q6w1SgBDONBPp74=","keyid":"SHA256:DhQ8wR5APBvFHLF/+Tc+AYvPOdTpcIDqOhxsBHRwC7U"}],"attestations":{"url":"https://registry.npmjs.org/-/npm/v1/attestations/signalk-container@1.15.0","provenance":{"predicateType":"https://slsa.dev/provenance/v1"}},"unpackedSize":1466189},"main":"dist/index.js","type":"module","types":"./dist/index.d.ts","engines":{"node":">=22"},"gitHead":"ba8e04f79e77ead06799252b270a470394f020de","scripts":{"lint":"eslint --fix","test":"node --test \"dist/test/*.test.js\"","build":"npm run clean && npm run build:server && npm run build:configpanel","clean":"rimraf dist public","watch":"tsc --watch","format":"npm run prettier && npm run lint","ci-lint":"eslint && prettier --check .","prettier":"prettier --write .","test:all":"node --test \"dist/test/**/*.test.js\"","build:all":"npm run build && npm test","build:server":"tsc","prepublishOnly":"npm run build","test:integration":"node --test \"dist/test/integration/*.test.js\"","build:configpanel":"vite build","build:all:integration":"npm run build && npm run test:all"},"signalk":{"appIcon":"./icon.svg","displayName":"Container Manager","screenshots":["./doc/screenshots/signalk-container-1.png","./doc/screenshots/signalk-container-2.png","./doc/screenshots/signalk-container-3.png"]},"_npmUser":{"name":"GitHub Actions","email":"npm-oidc-no-reply@github.com","trustedPublisher":{"id":"github","oidcConfigId":"oidc:ac86e6a6-7555-4a7a-aa96-7ed2220dbf64"}},"repository":{"url":"git+https://github.com/dirkwa/signalk-container.git","type":"git"},"_npmVersion":"11.13.0","description":"Shared container runtime management (Podman/Docker) for Signal K plugins","directories":{},"_nodeVersion":"24.16.0","dependencies":{"typebox":"^1.1.38","dockerode":"^5.0.0"},"_hasShrinkwrap":false,"devDependencies":{"jiti":"^2.7.0","vite":"^8.0.13","react":"^19.2.4","eslint":"^10.2.0","rimraf":"^6.1.3","globals":"^17.4.0","prettier":"^3.8.1","react-dom":"^19.2.4","@eslint/js":"^10.0.1","typescript":"^6.0.3","@types/node":"^22.0.0","@types/react":"^19.2.14","@types/express":"^5.0.6","@types/dockerode":"^4.0.1","@types/react-dom":"^19.2.3","typescript-eslint":"^8.58.0","@signalk/server-api":"latest","@vitejs/plugin-react":"^6.0.2","eslint-config-prettier":"^10.1.8","@module-federation/vite":"^1.5.0"},"_npmOperationalInternal":{"tmp":"tmp/signalk-container_1.15.0_1780895628393_0.6880416151812403","host":"s3://npm-registry-packages-npm-production"},"signalk-plugin-enabled-by-default":true},"1.15.1":{"name":"signalk-container","version":"1.15.1","keywords":["signalk-node-server-plugin","signalk-plugin-configurator"],"author":{"name":"Dirk Wahrheit","email":"dirkwahrheit@gmail.com"},"license":"MIT","_id":"signalk-container@1.15.1","maintainers":[{"name":"dirkwa","email":"dirkwahrheit@gmail.com"}],"homepage":"https://github.com/dirkwa/signalk-container#readme","bugs":{"url":"https://github.com/dirkwa/signalk-container/issues"},"dist":{"shasum":"bee305f442ad72ce9075b113788f47c1775498c3","tarball":"https://registry.npmjs.org/signalk-container/-/signalk-container-1.15.1.tgz","fileCount":114,"integrity":"sha512-CIiXvkxF2hiEaaP/TtoQ6wBqHImDaiHDVZryU4Is+MnDL+RJ6nanjLYoTV3A8s8NNrJPYCVtir+gE4Q3du2ubg==","signatures":[{"sig":"MEUCIDVSJM4+UBVTKPi3/TL9Yh04BTwd6SfNHBCApwzx+FCmAiEApC95pFQ/e7LLJFRw8h8SCAy7y9aHtTTxm/BLjQvxlmY=","keyid":"SHA256:DhQ8wR5APBvFHLF/+Tc+AYvPOdTpcIDqOhxsBHRwC7U"}],"attestations":{"url":"https://registry.npmjs.org/-/npm/v1/attestations/signalk-container@1.15.1","provenance":{"predicateType":"https://slsa.dev/provenance/v1"}},"unpackedSize":1437441},"main":"dist/index.js","type":"module","types":"./dist/index.d.ts","engines":{"node":">=22"},"gitHead":"1f752e3b8f45d8af4da2ba6114f80129b4c429df","scripts":{"lint":"eslint --fix","test":"node --test \"dist/test/*.test.js\"","build":"npm run clean && npm run build:server && npm run build:configpanel","clean":"rimraf dist public","watch":"tsc --watch","format":"npm run prettier && npm run lint","ci-lint":"eslint && prettier --check .","prettier":"prettier --write .","test:all":"node --test \"dist/test/**/*.test.js\"","build:all":"npm run build && npm test","build:server":"tsc","prepublishOnly":"npm run build","test:integration":"node --test \"dist/test/integration/*.test.js\"","build:configpanel":"vite build","build:all:integration":"npm run build && npm run test:all"},"signalk":{"appIcon":"./icon.svg","displayName":"Container Manager","screenshots":["./doc/screenshots/signalk-container-1.png","./doc/screenshots/signalk-container-2.png","./doc/screenshots/signalk-container-3.png"]},"_npmUser":{"name":"GitHub Actions","email":"npm-oidc-no-reply@github.com","trustedPublisher":{"id":"github","oidcConfigId":"oidc:ac86e6a6-7555-4a7a-aa96-7ed2220dbf64"}},"repository":{"url":"git+https://github.com/dirkwa/signalk-container.git","type":"git"},"_npmVersion":"11.13.0","description":"Shared container runtime management (Podman/Docker) for Signal K plugins","directories":{},"_nodeVersion":"24.16.0","dependencies":{"typebox":"^1.1.38","dockerode":"^5.0.0"},"_hasShrinkwrap":false,"devDependencies":{"jiti":"^2.7.0","vite":"^8.0.13","react":"^19.2.4","eslint":"^10.2.0","rimraf":"^6.1.3","globals":"^17.4.0","prettier":"^3.8.1","react-dom":"^19.2.4","@eslint/js":"^10.0.1","typescript":"^6.0.3","@types/node":"^22.0.0","@types/react":"^19.2.14","@types/express":"^5.0.6","@types/dockerode":"^4.0.1","@types/react-dom":"^19.2.3","typescript-eslint":"^8.58.0","@signalk/server-api":"latest","@vitejs/plugin-react":"^6.0.2","eslint-config-prettier":"^10.1.8","@module-federation/vite":"^1.5.0"},"_npmOperationalInternal":{"tmp":"tmp/signalk-container_1.15.1_1781117178328_0.8988970326851284","host":"s3://npm-registry-packages-npm-production"},"signalk-plugin-enabled-by-default":true},"1.15.2":{"name":"signalk-container","version":"1.15.2","keywords":["signalk-node-server-plugin","signalk-plugin-configurator"],"author":{"name":"Dirk Wahrheit","email":"dirkwahrheit@gmail.com"},"license":"MIT","_id":"signalk-container@1.15.2","maintainers":[{"name":"dirkwa","email":"dirkwahrheit@gmail.com"}],"homepage":"https://github.com/dirkwa/signalk-container#readme","bugs":{"url":"https://github.com/dirkwa/signalk-container/issues"},"dist":{"shasum":"112e7097ff84e6402906d9749636d93272ed0f89","tarball":"https://registry.npmjs.org/signalk-container/-/signalk-container-1.15.2.tgz","fileCount":114,"integrity":"sha512-E/IMnHyUOChVTsNPCXox5sqbUDILByZVi6otYTQEeeIF9poTvQYoZLso5RZhSCSN/pKYBCa8sFQ3oHePA2Pa5g==","signatures":[{"sig":"MEUCIEy71dl3WlKZc6P3fTa7CQsDbrWIMH7WOwLWloMVQqXQAiEAnwy397VKrDYsApn1chfdHVyduzAFeC6wMjr4oY6nqSY=","keyid":"SHA256:DhQ8wR5APBvFHLF/+Tc+AYvPOdTpcIDqOhxsBHRwC7U"}],"attestations":{"url":"https://registry.npmjs.org/-/npm/v1/attestations/signalk-container@1.15.2","provenance":{"predicateType":"https://slsa.dev/provenance/v1"}},"unpackedSize":1438272},"main":"dist/index.js","type":"module","types":"./dist/index.d.ts","engines":{"node":">=22"},"gitHead":"cd5cb09bad7ee7001ae8d6a3fb92bc5a352e145c","scripts":{"lint":"eslint --fix","test":"node --test \"dist/test/*.test.js\"","build":"npm run clean && npm run build:server && npm run build:configpanel","clean":"rimraf dist public","watch":"tsc --watch","format":"npm run prettier && npm run lint","ci-lint":"eslint && prettier --check .","prettier":"prettier --write .","test:all":"node --test \"dist/test/**/*.test.js\"","build:all":"npm run build && npm test","build:server":"tsc","prepublishOnly":"npm run build","test:integration":"node --test \"dist/test/integration/*.test.js\"","build:configpanel":"vite build","build:all:integration":"npm run build && npm run test:all"},"signalk":{"appIcon":"./icon.svg","displayName":"Container Manager","screenshots":["./doc/screenshots/signalk-container-1.png","./doc/screenshots/signalk-container-2.png","./doc/screenshots/signalk-container-3.png"]},"_npmUser":{"name":"GitHub Actions","email":"npm-oidc-no-reply@github.com","trustedPublisher":{"id":"github","oidcConfigId":"oidc:ac86e6a6-7555-4a7a-aa96-7ed2220dbf64"}},"repository":{"url":"git+https://github.com/dirkwa/signalk-container.git","type":"git"},"_npmVersion":"11.13.0","description":"Shared container runtime management (Podman/Docker) for Signal K plugins","directories":{},"_nodeVersion":"24.16.0","dependencies":{"typebox":"^1.1.38","dockerode":"^5.0.0"},"_hasShrinkwrap":false,"devDependencies":{"jiti":"^2.7.0","vite":"^8.0.13","react":"^19.2.4","eslint":"^10.2.0","rimraf":"^6.1.3","globals":"^17.4.0","prettier":"^3.8.1","react-dom":"^19.2.4","@eslint/js":"^10.0.1","typescript":"^6.0.3","@types/node":"^22.0.0","@types/react":"^19.2.14","@types/express":"^5.0.6","@types/dockerode":"^4.0.1","@types/react-dom":"^19.2.3","typescript-eslint":"^8.58.0","@signalk/server-api":"latest","@vitejs/plugin-react":"^6.0.2","eslint-config-prettier":"^10.1.8","@module-federation/vite":"^1.5.0"},"_npmOperationalInternal":{"tmp":"tmp/signalk-container_1.15.2_1781118580974_0.3021537577083917","host":"s3://npm-registry-packages-npm-production"},"signalk-plugin-enabled-by-default":true},"1.16.0":{"name":"signalk-container","version":"1.16.0","keywords":["signalk-node-server-plugin","signalk-plugin-configurator"],"author":{"name":"Dirk Wahrheit","email":"dirkwahrheit@gmail.com"},"license":"MIT","_id":"signalk-container@1.16.0","maintainers":[{"name":"dirkwa","email":"dirkwahrheit@gmail.com"}],"homepage":"https://github.com/dirkwa/signalk-container#readme","bugs":{"url":"https://github.com/dirkwa/signalk-container/issues"},"dist":{"shasum":"2108d8178db5bb2d874c0c4ff23eb5716bfca1ad","tarball":"https://registry.npmjs.org/signalk-container/-/signalk-container-1.16.0.tgz","fileCount":114,"integrity":"sha512-UK4A7H6u/TL71Z6pi8gC8bPs29gdsh5wLfYizyw5fR+ebIF7q1TLoT2Mdmsjz4Sc0Kj8IPxGqZg2KED4LukEpg==","signatures":[{"sig":"MEQCIDnr/M3BWXy+zu6py0MewkN9TDmiMBs8ZaH6aGqnLUibAiAzdljyKIxWVq10Q3qbSiCwjWS0x5SZbfI0j4tUXtgoVg==","keyid":"SHA256:DhQ8wR5APBvFHLF/+Tc+AYvPOdTpcIDqOhxsBHRwC7U"}],"attestations":{"url":"https://registry.npmjs.org/-/npm/v1/attestations/signalk-container@1.16.0","provenance":{"predicateType":"https://slsa.dev/provenance/v1"}},"unpackedSize":1444151},"main":"dist/index.js","type":"module","types":"./dist/index.d.ts","engines":{"node":">=22"},"gitHead":"4c4e57e2653645de3e0170648536e4c474136402","scripts":{"lint":"eslint --fix","test":"node --test \"dist/test/*.test.js\"","build":"npm run clean && npm run build:server && npm run build:configpanel","clean":"rimraf dist public","watch":"tsc --watch","format":"npm run prettier && npm run lint","ci-lint":"eslint && prettier --check .","prettier":"prettier --write .","test:all":"node --test \"dist/test/**/*.test.js\"","build:all":"npm run build && npm test","build:server":"tsc","prepublishOnly":"npm run build","test:integration":"node --test \"dist/test/integration/*.test.js\"","build:configpanel":"vite build","build:all:integration":"npm run build && npm run test:all"},"signalk":{"appIcon":"./icon.svg","displayName":"Container Manager","screenshots":["./doc/screenshots/signalk-container-1.png","./doc/screenshots/signalk-container-2.png","./doc/screenshots/signalk-container-3.png"]},"_npmUser":{"name":"GitHub Actions","email":"npm-oidc-no-reply@github.com","trustedPublisher":{"id":"github","oidcConfigId":"oidc:ac86e6a6-7555-4a7a-aa96-7ed2220dbf64"}},"repository":{"url":"git+https://github.com/dirkwa/signalk-container.git","type":"git"},"_npmVersion":"11.13.0","description":"Shared container runtime management (Podman/Docker) for Signal K plugins","directories":{},"_nodeVersion":"24.16.0","dependencies":{"typebox":"^1.1.38","dockerode":"^5.0.0"},"_hasShrinkwrap":false,"devDependencies":{"jiti":"^2.7.0","vite":"^8.0.13","react":"^19.2.4","eslint":"^10.2.0","rimraf":"^6.1.3","globals":"^17.4.0","prettier":"^3.8.1","react-dom":"^19.2.4","@eslint/js":"^10.0.1","typescript":"^6.0.3","@types/node":"^22.0.0","@types/react":"^19.2.14","@types/express":"^5.0.6","@types/dockerode":"^4.0.1","@types/react-dom":"^19.2.3","typescript-eslint":"^8.58.0","@signalk/server-api":"latest","@vitejs/plugin-react":"^6.0.2","eslint-config-prettier":"^10.1.8","@module-federation/vite":"^1.5.0"},"_npmOperationalInternal":{"tmp":"tmp/signalk-container_1.16.0_1781132938595_0.5464059660209486","host":"s3://npm-registry-packages-npm-production"},"signalk-plugin-enabled-by-default":true},"1.16.1":{"name":"signalk-container","version":"1.16.1","keywords":["signalk-node-server-plugin","signalk-plugin-configurator"],"author":{"name":"Dirk Wahrheit","email":"dirkwahrheit@gmail.com"},"license":"MIT","_id":"signalk-container@1.16.1","maintainers":[{"name":"dirkwa","email":"dirkwahrheit@gmail.com"}],"homepage":"https://github.com/dirkwa/signalk-container#readme","bugs":{"url":"https://github.com/dirkwa/signalk-container/issues"},"dist":{"shasum":"3b18bf6170dd1f77c0400dfde49c944a6a434d02","tarball":"https://registry.npmjs.org/signalk-container/-/signalk-container-1.16.1.tgz","fileCount":122,"integrity":"sha512-GDovG3DHj0PnDITPSji+EOGbdBi9lyQvi3jQBq1V8fEqRr8KIY9xLGhWa3uRJk0kLo0WmRd8tfQ+9KIopwiTOQ==","signatures":[{"sig":"MEUCIFtkf7KhedxvEmnyjNYUi8PHOrCCZWNdwghU81h9JvQKAiEApoEUvdpAkJ4MGkpH8lJ0QcYGGE0aSajEjcpCT/H9Hec=","keyid":"SHA256:DhQ8wR5APBvFHLF/+Tc+AYvPOdTpcIDqOhxsBHRwC7U"}],"attestations":{"url":"https://registry.npmjs.org/-/npm/v1/attestations/signalk-container@1.16.1","provenance":{"predicateType":"https://slsa.dev/provenance/v1"}},"unpackedSize":1469509},"main":"dist/index.js","type":"module","types":"./dist/index.d.ts","engines":{"node":">=22"},"gitHead":"5ee76fafe1ce3730b99ddb0cac532b1edef718fb","scripts":{"lint":"eslint --fix","test":"node --test \"dist/test/*.test.js\"","build":"npm run clean && npm run build:server && npm run build:configpanel","clean":"rimraf dist public","watch":"tsc --watch","format":"npm run prettier && npm run lint","ci-lint":"eslint && prettier --check .","prettier":"prettier --write .","test:all":"node --test \"dist/test/**/*.test.js\"","build:all":"npm run build && npm test","build:server":"tsc","prepublishOnly":"npm run build","test:integration":"node --test \"dist/test/integration/*.test.js\"","build:configpanel":"vite build","build:all:integration":"npm run build && npm run test:all"},"signalk":{"appIcon":"./icon.svg","displayName":"Container Manager","screenshots":["./doc/screenshots/signalk-container-1.png","./doc/screenshots/signalk-container-2.png","./doc/screenshots/signalk-container-3.png"]},"_npmUser":{"name":"GitHub Actions","email":"npm-oidc-no-reply@github.com","trustedPublisher":{"id":"github","oidcConfigId":"oidc:ac86e6a6-7555-4a7a-aa96-7ed2220dbf64"}},"repository":{"url":"git+https://github.com/dirkwa/signalk-container.git","type":"git"},"_npmVersion":"11.13.0","description":"Shared container runtime management (Podman/Docker) for Signal K plugins","directories":{},"_nodeVersion":"24.16.0","dependencies":{"typebox":"^1.1.38","dockerode":"^5.0.0"},"_hasShrinkwrap":false,"devDependencies":{"jiti":"^2.7.0","vite":"^8.0.13","react":"^19.2.4","eslint":"^10.2.0","rimraf":"^6.1.3","globals":"^17.4.0","prettier":"^3.8.1","react-dom":"^19.2.4","@eslint/js":"^10.0.1","typescript":"^6.0.3","@types/node":"^22.0.0","@types/react":"^19.2.14","@types/express":"^5.0.6","@types/dockerode":"^4.0.1","@types/react-dom":"^19.2.3","typescript-eslint":"^8.58.0","@signalk/server-api":"latest","@vitejs/plugin-react":"^6.0.2","eslint-config-prettier":"^10.1.8","@module-federation/vite":"^1.5.0"},"_npmOperationalInternal":{"tmp":"tmp/signalk-container_1.16.1_1781196738276_0.8494673460231887","host":"s3://npm-registry-packages-npm-production"},"signalk-plugin-enabled-by-default":true},"1.16.2":{"name":"signalk-container","version":"1.16.2","keywords":["signalk-node-server-plugin","signalk-plugin-configurator"],"author":{"name":"Dirk Wahrheit","email":"dirkwahrheit@gmail.com"},"license":"MIT","_id":"signalk-container@1.16.2","maintainers":[{"name":"dirkwa","email":"dirkwahrheit@gmail.com"}],"homepage":"https://github.com/dirkwa/signalk-container#readme","bugs":{"url":"https://github.com/dirkwa/signalk-container/issues"},"dist":{"shasum":"33f4601eeea5bfa67a83d481e781d7c403bbb7a6","tarball":"https://registry.npmjs.org/signalk-container/-/signalk-container-1.16.2.tgz","fileCount":122,"integrity":"sha512-XtsbpbKyzVBWUJppW1lO2GKWyZVnj7ab0HXkbaPJyhaDORFFKxO7X0Okm9pLTUl0FOEt+eI/+lWZ21etungp5g==","signatures":[{"sig":"MEYCIQD4EXVCWSbC7Dfp42q9kC7vV909ZLyWs0mpOJvkxUr52QIhAOkLd7yMugVHwij6LvrNo9tdTfDaOwM/iITSn36xmZLt","keyid":"SHA256:DhQ8wR5APBvFHLF/+Tc+AYvPOdTpcIDqOhxsBHRwC7U"}],"attestations":{"url":"https://registry.npmjs.org/-/npm/v1/attestations/signalk-container@1.16.2","provenance":{"predicateType":"https://slsa.dev/provenance/v1"}},"unpackedSize":1470061},"main":"dist/index.js","type":"module","types":"./dist/index.d.ts","engines":{"node":">=22"},"gitHead":"6c62dcd5fc3cb1312f48230f20adfd824b294015","scripts":{"lint":"eslint --fix","test":"node --test \"dist/test/*.test.js\"","build":"npm run clean && npm run build:server && npm run build:configpanel","clean":"rimraf dist public","watch":"tsc --watch","format":"npm run prettier && npm run lint","ci-lint":"eslint && prettier --check .","prettier":"prettier --write .","test:all":"node --test \"dist/test/**/*.test.js\"","build:all":"npm run build && npm test","build:server":"tsc","prepublishOnly":"npm run build","test:integration":"node --test \"dist/test/integration/*.test.js\"","build:configpanel":"vite build","build:all:integration":"npm run build && npm run test:all"},"signalk":{"appIcon":"./icon.svg","displayName":"Container Manager","screenshots":["./doc/screenshots/signalk-container-1.png","./doc/screenshots/signalk-container-2.png","./doc/screenshots/signalk-container-3.png"]},"_npmUser":{"name":"GitHub Actions","email":"npm-oidc-no-reply@github.com","trustedPublisher":{"id":"github","oidcConfigId":"oidc:ac86e6a6-7555-4a7a-aa96-7ed2220dbf64"}},"repository":{"url":"git+https://github.com/dirkwa/signalk-container.git","type":"git"},"_npmVersion":"11.13.0","description":"Shared container runtime management (Podman/Docker) for Signal K plugins","directories":{},"_nodeVersion":"24.16.0","dependencies":{"typebox":"^1.1.38","dockerode":"^5.0.0"},"_hasShrinkwrap":false,"devDependencies":{"jiti":"^2.7.0","vite":"^8.0.13","react":"^19.2.4","eslint":"^10.2.0","rimraf":"^6.1.3","globals":"^17.4.0","prettier":"^3.8.1","react-dom":"^19.2.4","@eslint/js":"^10.0.1","typescript":"^6.0.3","@types/node":"^22.0.0","@types/react":"^19.2.14","@types/express":"^5.0.6","@types/dockerode":"^4.0.1","@types/react-dom":"^19.2.3","typescript-eslint":"^8.58.0","@signalk/server-api":"latest","@vitejs/plugin-react":"^6.0.2","eslint-config-prettier":"^10.1.8","@module-federation/vite":"^1.5.0"},"_npmOperationalInternal":{"tmp":"tmp/signalk-container_1.16.2_1781198070340_0.22632662967817652","host":"s3://npm-registry-packages-npm-production"},"signalk-plugin-enabled-by-default":true},"1.16.3":{"name":"signalk-container","version":"1.16.3","keywords":["signalk-node-server-plugin","signalk-plugin-configurator"],"author":{"name":"Dirk Wahrheit","email":"dirkwahrheit@gmail.com"},"license":"MIT","_id":"signalk-container@1.16.3","maintainers":[{"name":"dirkwa","email":"dirkwahrheit@gmail.com"}],"homepage":"https://github.com/dirkwa/signalk-container#readme","bugs":{"url":"https://github.com/dirkwa/signalk-container/issues"},"dist":{"shasum":"f1ec293fdbc7d0e1e798beb20892df869474eec6","tarball":"https://registry.npmjs.org/signalk-container/-/signalk-container-1.16.3.tgz","fileCount":122,"integrity":"sha512-s3hY2OHYWK46wGwua8AGEJwT3bcCW5mf/CkMM+QE6BhG6/Jew5RRKHTWK2pNl3sldAqaAEAUcVFWOEcQ59k6mQ==","signatures":[{"sig":"MEUCIGS9T6ve7xAnJoAwl4SI66miB22GzdX8XrZFUPYBZVEAAiEAvOvNCIeSE+KS/mo8jswqanJX6p/3DrnIcynyykkQ/no=","keyid":"SHA256:DhQ8wR5APBvFHLF/+Tc+AYvPOdTpcIDqOhxsBHRwC7U"}],"attestations":{"url":"https://registry.npmjs.org/-/npm/v1/attestations/signalk-container@1.16.3","provenance":{"predicateType":"https://slsa.dev/provenance/v1"}},"unpackedSize":1484114},"main":"dist/index.js","type":"module","types":"./dist/index.d.ts","engines":{"node":">=22"},"gitHead":"c21764bdc05cd3e6f879a62320a1378173e6d2b9","scripts":{"lint":"eslint --fix","test":"node --test \"dist/test/*.test.js\"","build":"npm run clean && npm run build:server && npm run build:configpanel","clean":"rimraf dist public","watch":"tsc --watch","format":"npm run prettier && npm run lint","ci-lint":"eslint && prettier --check .","prettier":"prettier --write .","test:all":"node --test \"dist/test/**/*.test.js\"","build:all":"npm run build && npm test","build:server":"tsc","prepublishOnly":"npm run build","test:integration":"node --test \"dist/test/integration/*.test.js\"","build:configpanel":"vite build","build:all:integration":"npm run build && npm run test:all"},"signalk":{"appIcon":"./icon.svg","displayName":"Container Manager","screenshots":["./doc/screenshots/signalk-container-1.png","./doc/screenshots/signalk-container-2.png","./doc/screenshots/signalk-container-3.png"]},"_npmUser":{"name":"GitHub Actions","email":"npm-oidc-no-reply@github.com","trustedPublisher":{"id":"github","oidcConfigId":"oidc:ac86e6a6-7555-4a7a-aa96-7ed2220dbf64"}},"repository":{"url":"git+https://github.com/dirkwa/signalk-container.git","type":"git"},"_npmVersion":"11.13.0","description":"Shared container runtime management (Podman/Docker) for Signal K plugins","directories":{},"_nodeVersion":"24.16.0","dependencies":{"typebox":"^1.1.38","dockerode":"^5.0.0"},"_hasShrinkwrap":false,"devDependencies":{"jiti":"^2.7.0","vite":"^8.0.13","react":"^19.2.4","eslint":"^10.2.0","rimraf":"^6.1.3","globals":"^17.4.0","prettier":"^3.8.1","react-dom":"^19.2.4","@eslint/js":"^10.0.1","typescript":"^6.0.3","@types/node":"^22.0.0","@types/react":"^19.2.14","@types/express":"^5.0.6","@types/dockerode":"^4.0.1","@types/react-dom":"^19.2.3","typescript-eslint":"^8.58.0","@signalk/server-api":"latest","@vitejs/plugin-react":"^6.0.2","eslint-config-prettier":"^10.1.8","@module-federation/vite":"^1.5.0"},"_npmOperationalInternal":{"tmp":"tmp/signalk-container_1.16.3_1781221769536_0.8904286789366331","host":"s3://npm-registry-packages-npm-production"},"signalk-plugin-enabled-by-default":true},"1.16.4-beta.0":{"name":"signalk-container","version":"1.16.4-beta.0","keywords":["signalk-node-server-plugin","signalk-plugin-configurator"],"author":{"name":"Dirk Wahrheit","email":"dirkwahrheit@gmail.com"},"license":"MIT","_id":"signalk-container@1.16.4-beta.0","maintainers":[{"name":"dirkwa","email":"dirkwahrheit@gmail.com"}],"homepage":"https://github.com/dirkwa/signalk-container#readme","bugs":{"url":"https://github.com/dirkwa/signalk-container/issues"},"dist":{"shasum":"4e8b1e396870ed5841211b77b5a6a2597bb89ff9","tarball":"https://registry.npmjs.org/signalk-container/-/signalk-container-1.16.4-beta.0.tgz","fileCount":122,"integrity":"sha512-2+EIQ/SugSOpf5IV7Om4QqenTm7XUqCGSoobzWxrLg+kbRn3yOYdXX+IlV5eqwX384iUS2Z0yUD2S/KbrKtogw==","signatures":[{"sig":"MEYCIQDANd7kSFgkRqBaXoSvN+Ada9Ft8DM57VE/foPR3gyA4AIhAKTvFJaya4qox+DMVpDE0IZOUyyCWdALwg5FX8Dmpr6w","keyid":"SHA256:DhQ8wR5APBvFHLF/+Tc+AYvPOdTpcIDqOhxsBHRwC7U"}],"attestations":{"url":"https://registry.npmjs.org/-/npm/v1/attestations/signalk-container@1.16.4-beta.0","provenance":{"predicateType":"https://slsa.dev/provenance/v1"}},"unpackedSize":1493609},"main":"dist/index.js","type":"module","types":"./dist/index.d.ts","engines":{"node":">=22"},"gitHead":"d7b99b5bcc533b8c6d62ee588e62bb0cdff79e70","scripts":{"lint":"eslint --fix","test":"node --test \"dist/test/*.test.js\"","build":"npm run clean && npm run build:server && npm run build:configpanel","clean":"rimraf dist public","watch":"tsc --watch","format":"npm run prettier && npm run lint","ci-lint":"eslint && prettier --check .","prettier":"prettier --write .","test:all":"node --test \"dist/test/**/*.test.js\"","build:all":"npm run build && npm test","build:server":"tsc","prepublishOnly":"npm run build","test:integration":"node --test \"dist/test/integration/*.test.js\"","build:configpanel":"vite build","build:all:integration":"npm run build && npm run test:all"},"signalk":{"appIcon":"./icon.svg","displayName":"Container Manager","screenshots":["./doc/screenshots/signalk-container-1.png","./doc/screenshots/signalk-container-2.png","./doc/screenshots/signalk-container-3.png"]},"_npmUser":{"name":"GitHub Actions","email":"npm-oidc-no-reply@github.com","trustedPublisher":{"id":"github","oidcConfigId":"oidc:ac86e6a6-7555-4a7a-aa96-7ed2220dbf64"}},"repository":{"url":"git+https://github.com/dirkwa/signalk-container.git","type":"git"},"_npmVersion":"11.13.0","description":"Shared container runtime management (Podman/Docker) for Signal K plugins","directories":{},"_nodeVersion":"24.16.0","dependencies":{"typebox":"^1.1.38","dockerode":"^5.0.0"},"_hasShrinkwrap":false,"readmeFilename":"README.md","devDependencies":{"jiti":"^2.7.0","vite":"^8.0.13","react":"^19.2.4","eslint":"^10.2.0","rimraf":"^6.1.3","globals":"^17.4.0","prettier":"^3.8.1","react-dom":"^19.2.4","@eslint/js":"^10.0.1","typescript":"^6.0.3","@types/node":"^22.0.0","@types/react":"^19.2.14","@types/express":"^5.0.6","@types/dockerode":"^4.0.1","@types/react-dom":"^19.2.3","typescript-eslint":"^8.58.0","@signalk/server-api":"latest","@vitejs/plugin-react":"^6.0.2","eslint-config-prettier":"^10.1.8","@module-federation/vite":"^1.5.0"},"_npmOperationalInternal":{"tmp":"tmp/signalk-container_1.16.4-beta.0_1781734851862_0.9355944639452141","host":"s3://npm-registry-packages-npm-production"},"signalk-plugin-enabled-by-default":true},"1.16.4":{"name":"signalk-container","version":"1.16.4","keywords":["signalk-node-server-plugin","signalk-plugin-configurator"],"author":{"name":"Dirk Wahrheit","email":"dirkwahrheit@gmail.com"},"license":"MIT","_id":"signalk-container@1.16.4","maintainers":[{"name":"dirkwa","email":"dirkwahrheit@gmail.com"}],"homepage":"https://github.com/dirkwa/signalk-container#readme","bugs":{"url":"https://github.com/dirkwa/signalk-container/issues"},"dist":{"shasum":"35a0dcc40a409de150f77249f7b1d69cb7f59712","tarball":"https://registry.npmjs.org/signalk-container/-/signalk-container-1.16.4.tgz","fileCount":122,"integrity":"sha512-DM9zZL4U4ABv09fh5qSXZU6xNNXxrX75Rs1lqsBtQ4585ATInKqxongmodyh7yMmOzj+AaQNonzPXljlW6r3hA==","signatures":[{"sig":"MEUCIQDho/Ofwx/hX7UOfM1bDNfMmANnVEqanW/8pHm7Qeb8GQIgMBwR2l4VZKegHQLT+AwF+VzUragQ4xE+fxGnrQFo1W0=","keyid":"SHA256:DhQ8wR5APBvFHLF/+Tc+AYvPOdTpcIDqOhxsBHRwC7U"}],"attestations":{"url":"https://registry.npmjs.org/-/npm/v1/attestations/signalk-container@1.16.4","provenance":{"predicateType":"https://slsa.dev/provenance/v1"}},"unpackedSize":1493602},"main":"dist/index.js","type":"module","types":"./dist/index.d.ts","engines":{"node":">=22"},"gitHead":"286328c3913f479acd4b5b78f18394b1e4f4a18a","scripts":{"lint":"eslint --fix","test":"node --test \"dist/test/*.test.js\"","build":"npm run clean && npm run build:server && npm run build:configpanel","clean":"rimraf dist public","watch":"tsc --watch","format":"npm run prettier && npm run lint","ci-lint":"eslint && prettier --check .","prettier":"prettier --write .","test:all":"node --test \"dist/test/**/*.test.js\"","build:all":"npm run build && npm test","build:server":"tsc","prepublishOnly":"npm run build","test:integration":"node --test \"dist/test/integration/*.test.js\"","build:configpanel":"vite build","build:all:integration":"npm run build && npm run test:all"},"signalk":{"appIcon":"./icon.svg","displayName":"Container Manager","screenshots":["./doc/screenshots/signalk-container-1.png","./doc/screenshots/signalk-container-2.png","./doc/screenshots/signalk-container-3.png"]},"_npmUser":{"name":"GitHub Actions","email":"npm-oidc-no-reply@github.com","trustedPublisher":{"id":"github","oidcConfigId":"oidc:ac86e6a6-7555-4a7a-aa96-7ed2220dbf64"}},"repository":{"url":"git+https://github.com/dirkwa/signalk-container.git","type":"git"},"_npmVersion":"11.13.0","description":"Shared container runtime management (Podman/Docker) for Signal K plugins","directories":{},"_nodeVersion":"24.16.0","dependencies":{"typebox":"^1.1.38","dockerode":"^5.0.0"},"_hasShrinkwrap":false,"devDependencies":{"jiti":"^2.7.0","vite":"^8.0.13","react":"^19.2.4","eslint":"^10.2.0","rimraf":"^6.1.3","globals":"^17.4.0","prettier":"^3.8.1","react-dom":"^19.2.4","@eslint/js":"^10.0.1","typescript":"^6.0.3","@types/node":"^22.0.0","@types/react":"^19.2.14","@types/express":"^5.0.6","@types/dockerode":"^4.0.1","@types/react-dom":"^19.2.3","typescript-eslint":"^8.58.0","@signalk/server-api":"latest","@vitejs/plugin-react":"^6.0.2","eslint-config-prettier":"^10.1.8","@module-federation/vite":"^1.5.0"},"_npmOperationalInternal":{"tmp":"tmp/signalk-container_1.16.4_1781738532641_0.764735638027672","host":"s3://npm-registry-packages-npm-production"},"signalk-plugin-enabled-by-default":true},"1.17.0":{"name":"signalk-container","version":"1.17.0","keywords":["signalk-node-server-plugin","signalk-plugin-configurator"],"author":{"name":"Dirk Wahrheit","email":"dirkwahrheit@gmail.com"},"license":"MIT","_id":"signalk-container@1.17.0","maintainers":[{"name":"dirkwa","email":"dirkwahrheit@gmail.com"}],"homepage":"https://github.com/dirkwa/signalk-container#readme","bugs":{"url":"https://github.com/dirkwa/signalk-container/issues"},"dist":{"shasum":"8e8d9843bd279632fc6a7e984af4087a3a94e81f","tarball":"https://registry.npmjs.org/signalk-container/-/signalk-container-1.17.0.tgz","fileCount":122,"integrity":"sha512-pEHtt3G6BaLtohzQt1kOJDo1+dUdLdA3Y7X7v4Mdf3kAgofUIVm34z+YHd4rxY8j23O0DAM/s1OJv+WkRNZvsw==","signatures":[{"sig":"MEQCIE2tXkwSluI/dN6LPac+XYliMIuSirlj8tfYa0rYjsh9AiBMqcQxiF1Nj8Z/p4TbbHuc5rQmE6feM3/SI7eg8RHNYw==","keyid":"SHA256:DhQ8wR5APBvFHLF/+Tc+AYvPOdTpcIDqOhxsBHRwC7U"}],"attestations":{"url":"https://registry.npmjs.org/-/npm/v1/attestations/signalk-container@1.17.0","provenance":{"predicateType":"https://slsa.dev/provenance/v1"}},"unpackedSize":1508976},"main":"dist/index.js","type":"module","types":"./dist/index.d.ts","engines":{"node":">=22"},"gitHead":"fa32263dea5d9ce4e769dbe6bff542f5716d0202","scripts":{"lint":"eslint --fix","test":"node --test \"dist/test/*.test.js\"","build":"npm run clean && npm run build:server && npm run build:configpanel","clean":"rimraf dist public","watch":"tsc --watch","format":"npm run prettier && npm run lint","ci-lint":"eslint && prettier --check .","prettier":"prettier --write .","test:all":"node --test \"dist/test/**/*.test.js\"","build:all":"npm run build && npm test","build:server":"tsc","prepublishOnly":"npm run build","test:integration":"node --test \"dist/test/integration/*.test.js\"","build:configpanel":"vite build","build:all:integration":"npm run build && npm run test:all"},"signalk":{"appIcon":"./icon.svg","displayName":"Container Manager","screenshots":["./doc/screenshots/signalk-container-1.png","./doc/screenshots/signalk-container-2.png","./doc/screenshots/signalk-container-3.png"]},"_npmUser":{"name":"GitHub Actions","email":"npm-oidc-no-reply@github.com","trustedPublisher":{"id":"github","oidcConfigId":"oidc:ac86e6a6-7555-4a7a-aa96-7ed2220dbf64"}},"repository":{"url":"git+https://github.com/dirkwa/signalk-container.git","type":"git"},"_npmVersion":"11.13.0","description":"Shared container runtime management (Podman/Docker) for Signal K plugins","directories":{},"_nodeVersion":"24.16.0","dependencies":{"typebox":"^1.1.38","dockerode":"^5.0.0"},"_hasShrinkwrap":false,"devDependencies":{"jiti":"^2.7.0","vite":"^8.0.13","react":"^19.2.4","eslint":"^10.2.0","rimraf":"^6.1.3","globals":"^17.4.0","prettier":"^3.8.1","react-dom":"^19.2.4","@eslint/js":"^10.0.1","typescript":"^6.0.3","@types/node":"^22.0.0","@types/react":"^19.2.14","@types/express":"^5.0.6","@types/dockerode":"^4.0.1","@types/react-dom":"^19.2.3","typescript-eslint":"^8.58.0","@signalk/server-api":"latest","@vitejs/plugin-react":"^6.0.2","eslint-config-prettier":"^10.1.8","@module-federation/vite":"^1.5.0"},"_npmOperationalInternal":{"tmp":"tmp/signalk-container_1.17.0_1781820498678_0.4806381141869811","host":"s3://npm-registry-packages-npm-production"},"signalk-plugin-enabled-by-default":true},"1.18.0":{"name":"signalk-container","version":"1.18.0","keywords":["signalk-node-server-plugin","signalk-plugin-configurator"],"author":{"name":"Dirk Wahrheit","email":"dirkwahrheit@gmail.com"},"license":"MIT","_id":"signalk-container@1.18.0","maintainers":[{"name":"dirkwa","email":"dirkwahrheit@gmail.com"}],"homepage":"https://github.com/dirkwa/signalk-container#readme","bugs":{"url":"https://github.com/dirkwa/signalk-container/issues"},"dist":{"shasum":"3393c6a86faf1c5f871215a0e4c0bcfec265e2ec","tarball":"https://registry.npmjs.org/signalk-container/-/signalk-container-1.18.0.tgz","fileCount":122,"integrity":"sha512-z0SpvdCGSAGBpAudx5pNTxBrsEd9cf/dK0PevEooa7cLkPoAdUKDFRtu/mwphR7uo4wlBmVxxo8pdXgASV4p7Q==","signatures":[{"sig":"MEYCIQCRlDM9fAJFuY3plX4IT32F1bWzbRrsjlxay1RMXofwiAIhAJpa1j5dL1StZj1BFNk4un/4YSK92R4sNVWuEFmKXvQw","keyid":"SHA256:DhQ8wR5APBvFHLF/+Tc+AYvPOdTpcIDqOhxsBHRwC7U"}],"attestations":{"url":"https://registry.npmjs.org/-/npm/v1/attestations/signalk-container@1.18.0","provenance":{"predicateType":"https://slsa.dev/provenance/v1"}},"unpackedSize":1513490},"main":"dist/index.js","type":"module","types":"./dist/index.d.ts","engines":{"node":">=22"},"gitHead":"3dc4c290e0d8bde3a3b04af5b06c699d5bcb92a4","scripts":{"lint":"eslint --fix","test":"node --test \"dist/test/*.test.js\"","build":"npm run clean && npm run build:server && npm run build:configpanel","clean":"rimraf dist public","watch":"tsc --watch","format":"npm run prettier && npm run lint","ci-lint":"eslint && prettier --check .","prettier":"prettier --write .","test:all":"node --test \"dist/test/**/*.test.js\"","build:all":"npm run build && npm test","build:server":"tsc","prepublishOnly":"npm run build","test:integration":"node --test \"dist/test/integration/*.test.js\"","build:configpanel":"vite build","build:all:integration":"npm run build && npm run test:all"},"signalk":{"appIcon":"./icon.svg","displayName":"Container Manager","screenshots":["./doc/screenshots/signalk-container-1.png","./doc/screenshots/signalk-container-2.png","./doc/screenshots/signalk-container-3.png"]},"_npmUser":{"name":"GitHub Actions","email":"npm-oidc-no-reply@github.com","trustedPublisher":{"id":"github","oidcConfigId":"oidc:ac86e6a6-7555-4a7a-aa96-7ed2220dbf64"}},"repository":{"url":"git+https://github.com/dirkwa/signalk-container.git","type":"git"},"_npmVersion":"11.13.0","description":"Shared container runtime management (Podman/Docker) for Signal K plugins","directories":{},"_nodeVersion":"24.16.0","dependencies":{"typebox":"^1.1.38","dockerode":"^5.0.0"},"_hasShrinkwrap":false,"devDependencies":{"jiti":"^2.7.0","vite":"^8.0.13","react":"^19.2.4","eslint":"^10.2.0","rimraf":"^6.1.3","globals":"^17.4.0","prettier":"^3.8.1","react-dom":"^19.2.4","@eslint/js":"^10.0.1","typescript":"^6.0.3","@types/node":"^22.0.0","@types/react":"^19.2.14","@types/express":"^5.0.6","@types/dockerode":"^4.0.1","@types/react-dom":"^19.2.3","typescript-eslint":"^8.58.0","@signalk/server-api":"latest","@vitejs/plugin-react":"^6.0.2","eslint-config-prettier":"^10.1.8","@module-federation/vite":"^1.5.0"},"_npmOperationalInternal":{"tmp":"tmp/signalk-container_1.18.0_1781825948088_0.9005748545624983","host":"s3://npm-registry-packages-npm-production"},"signalk-plugin-enabled-by-default":true},"1.19.0":{"name":"signalk-container","version":"1.19.0","keywords":["signalk-node-server-plugin","signalk-plugin-configurator"],"author":{"name":"Dirk Wahrheit","email":"dirkwahrheit@gmail.com"},"license":"MIT","_id":"signalk-container@1.19.0","maintainers":[{"name":"dirkwa","email":"dirkwahrheit@gmail.com"}],"homepage":"https://github.com/dirkwa/signalk-container#readme","bugs":{"url":"https://github.com/dirkwa/signalk-container/issues"},"dist":{"shasum":"6609147d4fdf921c42ee149165accfdecaa1c50a","tarball":"https://registry.npmjs.org/signalk-container/-/signalk-container-1.19.0.tgz","fileCount":122,"integrity":"sha512-LEFj7Kkjmp1ZlWrsf+bgXbwDxlfPNw+aipsaDbORk9xrwrjcSzl5c5SxctOXo2PVKhdyfvYzoyWbo2n+lG663w==","signatures":[{"sig":"MEYCIQCzAeMEjyy1QzuQefCRhPS9zS4QnGaT/c3zT8XBr/rO9gIhANH8dnvjvG90YFHlU0yKSUDzmEVXPDLOCp4m8LGBjP+r","keyid":"SHA256:DhQ8wR5APBvFHLF/+Tc+AYvPOdTpcIDqOhxsBHRwC7U"}],"attestations":{"url":"https://registry.npmjs.org/-/npm/v1/attestations/signalk-container@1.19.0","provenance":{"predicateType":"https://slsa.dev/provenance/v1"}},"unpackedSize":1541167},"main":"dist/index.js","type":"module","types":"./dist/index.d.ts","engines":{"node":">=22"},"gitHead":"3c079bdfb98fa1a0d30d98379ba783259ff61f65","scripts":{"lint":"eslint --fix","test":"node --test \"dist/test/*.test.js\"","build":"npm run clean && npm run build:server && npm run build:configpanel","clean":"rimraf dist public","watch":"tsc --watch","format":"npm run prettier && npm run lint","ci-lint":"eslint && prettier --check .","prettier":"prettier --write .","test:all":"node --test \"dist/test/**/*.test.js\"","build:all":"npm run build && npm test","build:server":"tsc","prepublishOnly":"npm run build","test:integration":"node --test \"dist/test/integration/*.test.js\"","build:configpanel":"vite build","build:all:integration":"npm run build && npm run test:all"},"signalk":{"appIcon":"./icon.svg","displayName":"Container Manager","screenshots":["./doc/screenshots/signalk-container-1.png","./doc/screenshots/signalk-container-2.png","./doc/screenshots/signalk-container-3.png"]},"_npmUser":{"name":"GitHub Actions","email":"npm-oidc-no-reply@github.com","trustedPublisher":{"id":"github","oidcConfigId":"oidc:ac86e6a6-7555-4a7a-aa96-7ed2220dbf64"}},"repository":{"url":"git+https://github.com/dirkwa/signalk-container.git","type":"git"},"_npmVersion":"11.13.0","description":"Shared container runtime management (Podman/Docker) for Signal K plugins","directories":{},"_nodeVersion":"24.16.0","dependencies":{"typebox":"^1.1.38","dockerode":"^5.0.0"},"_hasShrinkwrap":false,"devDependencies":{"jiti":"^2.7.0","vite":"^8.0.13","react":"^19.2.4","eslint":"^10.2.0","rimraf":"^6.1.3","globals":"^17.4.0","prettier":"^3.8.1","react-dom":"^19.2.4","@eslint/js":"^10.0.1","typescript":"^6.0.3","@types/node":"^22.0.0","@types/react":"^19.2.14","@types/express":"^5.0.6","@types/dockerode":"^4.0.1","@types/react-dom":"^19.2.3","typescript-eslint":"^8.58.0","@signalk/server-api":"latest","@vitejs/plugin-react":"^6.0.2","eslint-config-prettier":"^10.1.8","@module-federation/vite":"^1.5.0"},"_npmOperationalInternal":{"tmp":"tmp/signalk-container_1.19.0_1782192043004_0.9698103454511999","host":"s3://npm-registry-packages-npm-production"},"signalk-plugin-enabled-by-default":true},"1.19.1":{"name":"signalk-container","version":"1.19.1","keywords":["signalk-node-server-plugin","signalk-plugin-configurator"],"author":{"name":"Dirk Wahrheit","email":"dirkwahrheit@gmail.com"},"license":"MIT","_id":"signalk-container@1.19.1","maintainers":[{"name":"dirkwa","email":"dirkwahrheit@gmail.com"}],"homepage":"https://github.com/dirkwa/signalk-container#readme","bugs":{"url":"https://github.com/dirkwa/signalk-container/issues"},"dist":{"shasum":"7d3626b4373ad28535ae0f9b13eb5ff96f053280","tarball":"https://registry.npmjs.org/signalk-container/-/signalk-container-1.19.1.tgz","fileCount":122,"integrity":"sha512-PloQYNLV5z+MSqOm41Ywm1rie8+jkJ2onxc2+Ka1R6AOB7ATA2+ByTKFKX8LG0lBCfqCC6fzl1iY2eC2h6VFRA==","signatures":[{"sig":"MEYCIQCHsfOoCEkLRSCUD87eqRACPpVVtKUAQpuayNShYlijHwIhAKmvqftVY4w1pkwYovI82tIQA0iJE8nt8MFTrzuEa4oz","keyid":"SHA256:DhQ8wR5APBvFHLF/+Tc+AYvPOdTpcIDqOhxsBHRwC7U"}],"attestations":{"url":"https://registry.npmjs.org/-/npm/v1/attestations/signalk-container@1.19.1","provenance":{"predicateType":"https://slsa.dev/provenance/v1"}},"unpackedSize":1544842},"main":"dist/index.js","type":"module","types":"./dist/index.d.ts","engines":{"node":">=22"},"gitHead":"05d0de3e8121abd5b8418f50d8a51713ec18ccb6","scripts":{"lint":"eslint --fix","test":"node --test \"dist/test/*.test.js\"","build":"npm run clean && npm run build:server && npm run build:configpanel","clean":"rimraf dist public","watch":"tsc --watch","format":"npm run prettier && npm run lint","ci-lint":"eslint && prettier --check .","prettier":"prettier --write .","test:all":"node --test \"dist/test/**/*.test.js\"","build:all":"npm run build && npm test","build:server":"tsc","prepublishOnly":"npm run build","test:integration":"node --test \"dist/test/integration/*.test.js\"","build:configpanel":"vite build","build:all:integration":"npm run build && npm run test:all"},"signalk":{"appIcon":"./icon.svg","displayName":"Container Manager","screenshots":["./doc/screenshots/signalk-container-1.png","./doc/screenshots/signalk-container-2.png","./doc/screenshots/signalk-container-3.png"]},"_npmUser":{"name":"GitHub Actions","email":"npm-oidc-no-reply@github.com","trustedPublisher":{"id":"github","oidcConfigId":"oidc:ac86e6a6-7555-4a7a-aa96-7ed2220dbf64"}},"repository":{"url":"git+https://github.com/dirkwa/signalk-container.git","type":"git"},"_npmVersion":"11.13.0","description":"Shared container runtime management (Podman/Docker) for Signal K plugins","directories":{},"_nodeVersion":"24.16.0","dependencies":{"typebox":"^1.1.38","dockerode":"^5.0.0"},"_hasShrinkwrap":false,"devDependencies":{"jiti":"^2.7.0","vite":"^8.0.13","react":"^19.2.4","eslint":"^10.2.0","rimraf":"^6.1.3","globals":"^17.4.0","prettier":"^3.8.1","react-dom":"^19.2.4","@eslint/js":"^10.0.1","typescript":"^6.0.3","@types/node":"^22.0.0","@types/react":"^19.2.14","@types/express":"^5.0.6","@types/dockerode":"^4.0.1","@types/react-dom":"^19.2.3","typescript-eslint":"^8.58.0","@signalk/server-api":"latest","@vitejs/plugin-react":"^6.0.2","eslint-config-prettier":"^10.1.8","@module-federation/vite":"^1.5.0"},"_npmOperationalInternal":{"tmp":"tmp/signalk-container_1.19.1_1782236036155_0.38217912074859695","host":"s3://npm-registry-packages-npm-production"},"signalk-plugin-enabled-by-default":true},"1.20.0":{"name":"signalk-container","version":"1.20.0","keywords":["signalk-node-server-plugin","signalk-plugin-configurator"],"author":{"name":"Dirk Wahrheit","email":"dirkwahrheit@gmail.com"},"license":"MIT","_id":"signalk-container@1.20.0","maintainers":[{"name":"dirkwa","email":"dirkwahrheit@gmail.com"}],"homepage":"https://github.com/dirkwa/signalk-container#readme","bugs":{"url":"https://github.com/dirkwa/signalk-container/issues"},"dist":{"shasum":"11672439ffd9a28915daedf6744600c36d7a47c8","tarball":"https://registry.npmjs.org/signalk-container/-/signalk-container-1.20.0.tgz","fileCount":122,"integrity":"sha512-F/s7VcENrWDFRY9hu1CKbrJn0mQUVt4i8hUL+88BjHxsmFdqRt75n4wvges7l1DP0RGFckYFrIcE/1/2WayP/Q==","signatures":[{"sig":"MEQCIBX+di5bKtPEg7of2DncitEjtCs3S+VhFwcgCFp7iUe9AiBrgqJNf0PX7/OZ5xVST25DGpd6ZFjlc9uKiA+p5rEHNg==","keyid":"SHA256:DhQ8wR5APBvFHLF/+Tc+AYvPOdTpcIDqOhxsBHRwC7U"}],"attestations":{"url":"https://registry.npmjs.org/-/npm/v1/attestations/signalk-container@1.20.0","provenance":{"predicateType":"https://slsa.dev/provenance/v1"}},"unpackedSize":1580856},"main":"dist/index.js","type":"module","types":"./dist/index.d.ts","engines":{"node":">=22"},"gitHead":"7c60853870180b3023c1b3bd9f348a8e29ddead6","scripts":{"lint":"eslint --fix","test":"node --test \"dist/test/*.test.js\"","build":"npm run clean && npm run build:server && npm run build:configpanel","clean":"rimraf dist public","watch":"tsc --watch","format":"npm run prettier && npm run lint","ci-lint":"eslint && prettier --check .","prettier":"prettier --write .","test:all":"node --test \"dist/test/**/*.test.js\"","build:all":"npm run build && npm test","build:server":"tsc","prepublishOnly":"npm run build","test:integration":"node --test \"dist/test/integration/*.test.js\"","build:configpanel":"vite build","build:all:integration":"npm run build && npm run test:all"},"signalk":{"appIcon":"./icon.svg","displayName":"Container Manager","screenshots":["./doc/screenshots/signalk-container-1.png","./doc/screenshots/signalk-container-2.png","./doc/screenshots/signalk-container-3.png"]},"_npmUser":{"name":"GitHub Actions","email":"npm-oidc-no-reply@github.com","trustedPublisher":{"id":"github","oidcConfigId":"oidc:ac86e6a6-7555-4a7a-aa96-7ed2220dbf64"}},"repository":{"url":"git+https://github.com/dirkwa/signalk-container.git","type":"git"},"_npmVersion":"11.13.0","description":"Shared container runtime management (Podman/Docker) for Signal K plugins","directories":{},"_nodeVersion":"24.17.0","dependencies":{"typebox":"^1.1.38","dockerode":"^5.0.0"},"_hasShrinkwrap":false,"devDependencies":{"jiti":"^2.7.0","vite":"^8.0.13","react":"^19.2.4","eslint":"^10.2.0","rimraf":"^6.1.3","globals":"^17.4.0","prettier":"^3.8.1","react-dom":"^19.2.4","@eslint/js":"^10.0.1","typescript":"^6.0.3","@types/node":"^22.0.0","@types/react":"^19.2.14","@types/express":"^5.0.6","@types/dockerode":"^4.0.1","@types/react-dom":"^19.2.3","typescript-eslint":"^8.58.0","@signalk/server-api":"latest","@vitejs/plugin-react":"^6.0.2","eslint-config-prettier":"^10.1.8","@module-federation/vite":"^1.5.0"},"_npmOperationalInternal":{"tmp":"tmp/signalk-container_1.20.0_1782427125564_0.18522976391568058","host":"s3://npm-registry-packages-npm-production"},"signalk-plugin-enabled-by-default":true},"1.20.1":{"name":"signalk-container","version":"1.20.1","keywords":["signalk-node-server-plugin","signalk-plugin-configurator"],"author":{"name":"Dirk Wahrheit","email":"dirkwahrheit@gmail.com"},"license":"MIT","_id":"signalk-container@1.20.1","maintainers":[{"name":"dirkwa","email":"dirkwahrheit@gmail.com"}],"homepage":"https://github.com/dirkwa/signalk-container#readme","bugs":{"url":"https://github.com/dirkwa/signalk-container/issues"},"dist":{"shasum":"fdea7f8d194b798c574fb5f4ed1f7322ad09cd72","tarball":"https://registry.npmjs.org/signalk-container/-/signalk-container-1.20.1.tgz","fileCount":126,"integrity":"sha512-mCqLFpHFBn5NQ/EQXC8BSed+O/nPS+Qkhye9MtoWmKoYevEsiVGCxjFaBhfoZ9qLD+33/AfmHwJn/jFNKsjhpw==","signatures":[{"sig":"MEUCICWGXdcFBu+zSnWvBO2n5en3pnoqE909RMcKaXU6vY3WAiEA/ftHRv5fO2PR57zlq3uoWkX4DbZ5k+AzLuu9D4mkag8=","keyid":"SHA256:DhQ8wR5APBvFHLF/+Tc+AYvPOdTpcIDqOhxsBHRwC7U"}],"attestations":{"url":"https://registry.npmjs.org/-/npm/v1/attestations/signalk-container@1.20.1","provenance":{"predicateType":"https://slsa.dev/provenance/v1"}},"unpackedSize":1585407},"main":"dist/index.js","type":"module","types":"./dist/index.d.ts","engines":{"node":">=22"},"gitHead":"395f1eb88c4eba51b3c42bb3b8aaf7e75eb16c13","scripts":{"lint":"eslint --fix","test":"node --test \"dist/test/*.test.js\"","build":"npm run clean && npm run build:server && npm run build:configpanel","clean":"rimraf dist public","watch":"tsc --watch","format":"npm run prettier && npm run lint","ci-lint":"eslint && prettier --check .","prettier":"prettier --write .","test:all":"node --test \"dist/test/**/*.test.js\"","build:all":"npm run build && npm test","build:server":"tsc","prepublishOnly":"npm run build","test:integration":"node --test \"dist/test/integration/*.test.js\"","build:configpanel":"vite build","build:all:integration":"npm run build && npm run test:all"},"signalk":{"appIcon":"./icon.svg","displayName":"Container Manager","screenshots":["./doc/screenshots/signalk-container-1.png","./doc/screenshots/signalk-container-2.png","./doc/screenshots/signalk-container-3.png"]},"_npmUser":{"name":"GitHub Actions","email":"npm-oidc-no-reply@github.com","trustedPublisher":{"id":"github","oidcConfigId":"oidc:ac86e6a6-7555-4a7a-aa96-7ed2220dbf64"}},"repository":{"url":"git+https://github.com/dirkwa/signalk-container.git","type":"git"},"_npmVersion":"11.13.0","description":"Shared container runtime management (Podman/Docker) for Signal K plugins","directories":{},"_nodeVersion":"24.17.0","dependencies":{"typebox":"^1.1.38","dockerode":"^5.0.0"},"_hasShrinkwrap":false,"devDependencies":{"jiti":"^2.7.0","vite":"^8.0.13","react":"^19.2.4","eslint":"^10.2.0","rimraf":"^6.1.3","globals":"^17.4.0","prettier":"^3.8.1","react-dom":"^19.2.4","@eslint/js":"^10.0.1","typescript":"^6.0.3","@types/node":"^22.0.0","@types/react":"^19.2.14","@types/express":"^5.0.6","@types/dockerode":"^4.0.1","@types/react-dom":"^19.2.3","typescript-eslint":"^8.58.0","@signalk/server-api":"latest","@vitejs/plugin-react":"^6.0.2","eslint-config-prettier":"^10.1.8","@module-federation/vite":"^1.5.0"},"_npmOperationalInternal":{"tmp":"tmp/signalk-container_1.20.1_1782430425403_0.09927088426370978","host":"s3://npm-registry-packages-npm-production"},"signalk-plugin-enabled-by-default":true},"1.20.2":{"name":"signalk-container","version":"1.20.2","keywords":["signalk-node-server-plugin","signalk-plugin-configurator"],"author":{"name":"Dirk Wahrheit","email":"dirkwahrheit@gmail.com"},"license":"MIT","_id":"signalk-container@1.20.2","maintainers":[{"name":"dirkwa","email":"dirkwahrheit@gmail.com"}],"homepage":"https://github.com/dirkwa/signalk-container#readme","bugs":{"url":"https://github.com/dirkwa/signalk-container/issues"},"dist":{"shasum":"323847101ce7eb5b6078bdc05e7a642768bd950d","tarball":"https://registry.npmjs.org/signalk-container/-/signalk-container-1.20.2.tgz","fileCount":126,"integrity":"sha512-qrkSb2Me8bVAtXmjR5dupVM7rCo1MJcl+3PfjQcCKPFQ442dJQ1AZwgMGz2JzxGvEjOqG+Lel4GAiowmeyISgw==","signatures":[{"sig":"MEYCIQD84y7ORG3gV5LMOEXVuu56rh6OENaKtO5+k0s2yt8RlgIhAP5ymf2vmQ8SfAzykH9TiAAMT4hHHOrYUe3OLH/MFG8J","keyid":"SHA256:DhQ8wR5APBvFHLF/+Tc+AYvPOdTpcIDqOhxsBHRwC7U"}],"attestations":{"url":"https://registry.npmjs.org/-/npm/v1/attestations/signalk-container@1.20.2","provenance":{"predicateType":"https://slsa.dev/provenance/v1"}},"unpackedSize":1585407},"main":"dist/index.js","type":"module","types":"./dist/index.d.ts","engines":{"node":">=22"},"gitHead":"6be2f3759559840e8c6550a4571bd1d4048904d6","scripts":{"lint":"eslint --fix","test":"node --test \"dist/test/*.test.js\"","build":"npm run clean && npm run build:server && npm run build:configpanel","clean":"rimraf dist public","watch":"tsc --watch","format":"npm run prettier && npm run lint","ci-lint":"eslint && prettier --check .","prettier":"prettier --write .","test:all":"node --test \"dist/test/**/*.test.js\"","build:all":"npm run build && npm test","build:server":"tsc","prepublishOnly":"npm run build","test:integration":"node --test \"dist/test/integration/*.test.js\"","build:configpanel":"vite build","build:all:integration":"npm run build && npm run test:all"},"signalk":{"appIcon":"./icon.svg","displayName":"Container Manager","screenshots":["./doc/screenshots/signalk-container-1.png","./doc/screenshots/signalk-container-2.png","./doc/screenshots/signalk-container-3.png"]},"_npmUser":{"name":"GitHub Actions","email":"npm-oidc-no-reply@github.com","trustedPublisher":{"id":"github","oidcConfigId":"oidc:ac86e6a6-7555-4a7a-aa96-7ed2220dbf64"}},"repository":{"url":"git+https://github.com/dirkwa/signalk-container.git","type":"git"},"_npmVersion":"11.13.0","description":"Shared container runtime management (Podman/Docker) for Signal K plugins","directories":{},"_nodeVersion":"24.17.0","dependencies":{"typebox":"^1.1.38","dockerode":"^5.0.0"},"_hasShrinkwrap":false,"devDependencies":{"jiti":"^2.7.0","vite":"^8.0.13","react":"^19.2.4","eslint":"^10.2.0","rimraf":"^6.1.3","globals":"^17.4.0","prettier":"^3.8.1","react-dom":"^19.2.4","@eslint/js":"^10.0.1","typescript":"^6.0.3","@types/node":"^22.0.0","@types/react":"^19.2.14","@types/express":"^5.0.6","@types/dockerode":"^4.0.1","@types/react-dom":"^19.2.3","typescript-eslint":"^8.58.0","@signalk/server-api":"latest","@vitejs/plugin-react":"^6.0.2","eslint-config-prettier":"^10.1.8","@module-federation/vite":"^1.5.0"},"_npmOperationalInternal":{"tmp":"tmp/signalk-container_1.20.2_1782447218235_0.5250422905235186","host":"s3://npm-registry-packages-npm-production"},"signalk-plugin-enabled-by-default":true},"1.20.3":{"name":"signalk-container","version":"1.20.3","keywords":["signalk-node-server-plugin","signalk-plugin-configurator"],"author":{"name":"Dirk Wahrheit","email":"dirkwahrheit@gmail.com"},"license":"MIT","_id":"signalk-container@1.20.3","maintainers":[{"name":"dirkwa","email":"dirkwahrheit@gmail.com"}],"homepage":"https://github.com/dirkwa/signalk-container#readme","bugs":{"url":"https://github.com/dirkwa/signalk-container/issues"},"dist":{"shasum":"cb88d18d1f3328ffbd5eca1a37d21076770fa053","tarball":"https://registry.npmjs.org/signalk-container/-/signalk-container-1.20.3.tgz","fileCount":126,"integrity":"sha512-XQpjcCq/TTdihTpHVRDffNi9SKQMBgfwBmSyG8QO5aWKELs50FQABMjMTGCWrMmOSkquVDlIbapMmRt5g63akg==","signatures":[{"sig":"MEUCIGqXqg9rWzNyhQtV06OTBLdlmL053EVXG8sMzsMm7+xHAiEA96qQeTET02uRIDOX9grEpOLYmvY7Z4fFU/zcVwjZb8w=","keyid":"SHA256:DhQ8wR5APBvFHLF/+Tc+AYvPOdTpcIDqOhxsBHRwC7U"}],"attestations":{"url":"https://registry.npmjs.org/-/npm/v1/attestations/signalk-container@1.20.3","provenance":{"predicateType":"https://slsa.dev/provenance/v1"}},"unpackedSize":1588217},"main":"dist/index.js","type":"module","types":"./dist/index.d.ts","engines":{"node":">=22"},"gitHead":"4520e0b4f0321d6b3507bf2445d279fefeb7cb2b","scripts":{"lint":"eslint --fix","test":"node --test \"dist/test/*.test.js\"","build":"npm run clean && npm run build:server && npm run build:configpanel","clean":"rimraf dist public","watch":"tsc --watch","format":"npm run prettier && npm run lint","ci-lint":"eslint && prettier --check .","prettier":"prettier --write .","test:all":"node --test \"dist/test/**/*.test.js\"","build:all":"npm run build && npm test","build:server":"tsc","prepublishOnly":"npm run build","test:integration":"node --test \"dist/test/integration/*.test.js\"","build:configpanel":"vite build","build:all:integration":"npm run build && npm run test:all"},"signalk":{"appIcon":"./icon.svg","displayName":"Container Manager","screenshots":["./doc/screenshots/signalk-container-1.png","./doc/screenshots/signalk-container-2.png","./doc/screenshots/signalk-container-3.png"]},"_npmUser":{"name":"GitHub Actions","email":"npm-oidc-no-reply@github.com","trustedPublisher":{"id":"github","oidcConfigId":"oidc:ac86e6a6-7555-4a7a-aa96-7ed2220dbf64"}},"repository":{"url":"git+https://github.com/dirkwa/signalk-container.git","type":"git"},"_npmVersion":"11.16.0","description":"Shared container runtime management (Podman/Docker) for Signal K plugins","directories":{},"_nodeVersion":"24.18.0","dependencies":{"typebox":"^1.1.38","dockerode":"^5.0.0"},"_hasShrinkwrap":false,"devDependencies":{"jiti":"^2.7.0","vite":"^8.0.13","react":"^19.2.4","eslint":"^10.2.0","rimraf":"^6.1.3","globals":"^17.4.0","prettier":"^3.8.1","react-dom":"^19.2.4","@eslint/js":"^10.0.1","typescript":"^6.0.3","@types/node":"^22.0.0","@types/react":"^19.2.14","@types/express":"^5.0.6","@types/dockerode":"^4.0.1","@types/react-dom":"^19.2.3","typescript-eslint":"^8.58.0","@signalk/server-api":"latest","@vitejs/plugin-react":"^6.0.2","eslint-config-prettier":"^10.1.8","@module-federation/vite":"^1.5.0"},"_npmOperationalInternal":{"tmp":"tmp/signalk-container_1.20.3_1783312304416_0.058538365180545116","host":"s3://npm-registry-packages-npm-production"},"signalk-plugin-enabled-by-default":true},"1.20.4":{"name":"signalk-container","version":"1.20.4","keywords":["signalk-node-server-plugin","signalk-plugin-configurator"],"author":{"name":"Dirk Wahrheit","email":"dirkwahrheit@gmail.com"},"license":"MIT","_id":"signalk-container@1.20.4","maintainers":[{"name":"dirkwa","email":"dirkwahrheit@gmail.com"}],"homepage":"https://github.com/dirkwa/signalk-container#readme","bugs":{"url":"https://github.com/dirkwa/signalk-container/issues"},"dist":{"shasum":"28410edf1459bb097a4545474f843107c0edc377","tarball":"https://registry.npmjs.org/signalk-container/-/signalk-container-1.20.4.tgz","fileCount":130,"integrity":"sha512-I0rnrGl2sC08FwQ5jx2TUCIKyvcTqKtg4C2x2q3iUmKjiLlUW/YrY4qw16OEI7AnV1a7hcjPL2y7k7yIuENRuQ==","signatures":[{"sig":"MEQCIF5OMycv/2c50xvYEiek7Asamq2naEA/zxKGRO4WKD6EAiAkacNRjR/zOuBWRDsq7eoD4tPmV4gmBGacNDoYiXFN9w==","keyid":"SHA256:DhQ8wR5APBvFHLF/+Tc+AYvPOdTpcIDqOhxsBHRwC7U"}],"attestations":{"url":"https://registry.npmjs.org/-/npm/v1/attestations/signalk-container@1.20.4","provenance":{"predicateType":"https://slsa.dev/provenance/v1"}},"unpackedSize":1607396},"main":"dist/index.js","type":"module","types":"./dist/index.d.ts","engines":{"node":">=22"},"gitHead":"a8aa4f82e1df9bc4a1597b586968382f63c28827","scripts":{"lint":"eslint --fix","test":"node --test \"dist/test/*.test.js\"","build":"npm run clean && npm run build:server && npm run build:configpanel","clean":"rimraf dist public","watch":"tsc --watch","format":"npm run prettier && npm run lint","ci-lint":"eslint && prettier --check .","prettier":"prettier --write .","test:all":"node --test \"dist/test/**/*.test.js\"","build:all":"npm run build && npm test","build:server":"tsc","prepublishOnly":"npm run build","test:integration":"node --test \"dist/test/integration/*.test.js\"","build:configpanel":"vite build","build:all:integration":"npm run build && npm run test:all"},"signalk":{"appIcon":"./icon.svg","displayName":"Container Manager","screenshots":["./doc/screenshots/signalk-container-1.png","./doc/screenshots/signalk-container-2.png","./doc/screenshots/signalk-container-3.png"]},"_npmUser":{"name":"GitHub Actions","email":"npm-oidc-no-reply@github.com","trustedPublisher":{"id":"github","oidcConfigId":"oidc:ac86e6a6-7555-4a7a-aa96-7ed2220dbf64"}},"repository":{"url":"git+https://github.com/dirkwa/signalk-container.git","type":"git"},"_npmVersion":"11.16.0","description":"Shared container runtime management (Podman/Docker) for Signal K plugins","directories":{},"_nodeVersion":"24.18.0","dependencies":{"typebox":"^1.1.38","dockerode":"^5.0.0"},"_hasShrinkwrap":false,"devDependencies":{"jiti":"^2.7.0","vite":"^8.0.13","react":"^19.2.4","eslint":"^10.2.0","rimraf":"^6.1.3","globals":"^17.4.0","prettier":"^3.8.1","react-dom":"^19.2.4","@eslint/js":"^10.0.1","typescript":"^6.0.3","@types/node":"^22.0.0","@types/react":"^19.2.14","@types/express":"^5.0.6","@types/dockerode":"^4.0.1","@types/react-dom":"^19.2.3","typescript-eslint":"^8.58.0","@signalk/server-api":"latest","@vitejs/plugin-react":"^6.0.2","eslint-config-prettier":"^10.1.8","@module-federation/vite":"^1.5.0"},"_npmOperationalInternal":{"tmp":"tmp/signalk-container_1.20.4_1783545713872_0.0777822586083361","host":"s3://npm-registry-packages-npm-production"},"signalk-plugin-enabled-by-default":true},"1.20.5":{"name":"signalk-container","version":"1.20.5","keywords":["signalk-node-server-plugin","signalk-plugin-configurator"],"author":{"name":"Dirk Wahrheit","email":"dirkwahrheit@gmail.com"},"license":"MIT","_id":"signalk-container@1.20.5","maintainers":[{"name":"dirkwa","email":"dirkwahrheit@gmail.com"}],"homepage":"https://github.com/dirkwa/signalk-container#readme","bugs":{"url":"https://github.com/dirkwa/signalk-container/issues"},"dist":{"shasum":"1990a389261b8639b51b6281249c2958b8806685","tarball":"https://registry.npmjs.org/signalk-container/-/signalk-container-1.20.5.tgz","fileCount":130,"integrity":"sha512-JqTnvunxhSGFf8RVQENm68gUDq9c6r2V11QRSbt/UQ9UrJcDg6Bv56pad0iBVyE0AvuE9sck5qfizNxDc83puQ==","signatures":[{"sig":"MEUCIQChQxKZCbHsRladKRuFbNaFYJBZWXummWuN/lkElef2wQIgNhXqvztQlO8M63u2EFddFYXu1xrkCYQOEp/+O47qnXI=","keyid":"SHA256:DhQ8wR5APBvFHLF/+Tc+AYvPOdTpcIDqOhxsBHRwC7U"}],"attestations":{"url":"https://registry.npmjs.org/-/npm/v1/attestations/signalk-container@1.20.5","provenance":{"predicateType":"https://slsa.dev/provenance/v1"}},"unpackedSize":1612183},"main":"dist/index.js","type":"module","types":"./dist/index.d.ts","engines":{"node":">=22"},"gitHead":"795abc9e32d07d34844067018c97c5dfc78fc1c8","scripts":{"lint":"eslint --fix","test":"node --test \"dist/test/*.test.js\"","build":"npm run clean && npm run build:server && npm run build:configpanel","clean":"rimraf dist public","watch":"tsc --watch","format":"npm run prettier && npm run lint","ci-lint":"eslint && prettier --check .","prettier":"prettier --write .","test:all":"node --test \"dist/test/**/*.test.js\"","build:all":"npm run build && npm test","build:server":"tsc","prepublishOnly":"npm run build","test:integration":"node --test \"dist/test/integration/*.test.js\"","build:configpanel":"vite build","build:all:integration":"npm run build && npm run test:all"},"signalk":{"appIcon":"./icon.svg","displayName":"Container Manager","screenshots":["./doc/screenshots/signalk-container-1.png","./doc/screenshots/signalk-container-2.png","./doc/screenshots/signalk-container-3.png"]},"_npmUser":{"name":"GitHub Actions","email":"npm-oidc-no-reply@github.com","trustedPublisher":{"id":"github","oidcConfigId":"oidc:ac86e6a6-7555-4a7a-aa96-7ed2220dbf64"}},"repository":{"url":"git+https://github.com/dirkwa/signalk-container.git","type":"git"},"_npmVersion":"11.16.0","description":"Shared container runtime management (Podman/Docker) for Signal K plugins","directories":{},"_nodeVersion":"24.18.0","dependencies":{"typebox":"^1.1.38","dockerode":"^5.0.0"},"_hasShrinkwrap":false,"devDependencies":{"jiti":"^2.7.0","vite":"^8.0.13","react":"^19.2.4","eslint":"^10.2.0","rimraf":"^6.1.3","globals":"^17.4.0","prettier":"^3.8.1","react-dom":"^19.2.4","@eslint/js":"^10.0.1","typescript":"^6.0.3","@types/node":"^22.0.0","@types/react":"^19.2.14","@types/express":"^5.0.6","@types/dockerode":"^4.0.1","@types/react-dom":"^19.2.3","typescript-eslint":"^8.58.0","@signalk/server-api":"latest","@vitejs/plugin-react":"^6.0.2","eslint-config-prettier":"^10.1.8","@module-federation/vite":"^1.5.0"},"_npmOperationalInternal":{"tmp":"tmp/signalk-container_1.20.5_1783711099720_0.4128495736230986","host":"s3://npm-registry-packages-npm-production"},"signalk-plugin-enabled-by-default":true},"1.21.0":{"name":"signalk-container","version":"1.21.0","keywords":["signalk-node-server-plugin","signalk-plugin-configurator"],"author":{"name":"Dirk Wahrheit","email":"dirkwahrheit@gmail.com"},"license":"MIT","_id":"signalk-container@1.21.0","maintainers":[{"name":"dirkwa","email":"dirkwahrheit@gmail.com"}],"homepage":"https://github.com/dirkwa/signalk-container#readme","bugs":{"url":"https://github.com/dirkwa/signalk-container/issues"},"dist":{"shasum":"50ea95cdda53afb9241e809f446318b4f8ac90d9","tarball":"https://registry.npmjs.org/signalk-container/-/signalk-container-1.21.0.tgz","fileCount":130,"integrity":"sha512-sD4Y81Cqv1CusnABPLMXIFMw2cxfnnMGi+w4NhgtHlPelznDYuz6OqenqSZZxxBZymDkCx38IfEJmx5E2tzceg==","signatures":[{"sig":"MEUCIQDB0yUI0+JAaPuffVSIxnVHOqCW3fWrs6HXoAS5KVehFgIgJnkgc49zM43xQd85299XKiabkHl8jVNhbCPUCXfMYFc=","keyid":"SHA256:DhQ8wR5APBvFHLF/+Tc+AYvPOdTpcIDqOhxsBHRwC7U"}],"attestations":{"url":"https://registry.npmjs.org/-/npm/v1/attestations/signalk-container@1.21.0","provenance":{"predicateType":"https://slsa.dev/provenance/v1"}},"unpackedSize":1633932},"main":"dist/index.js","type":"module","types":"./dist/index.d.ts","engines":{"node":">=22"},"gitHead":"667e306b7665da693708b1a1852af990fe19d05b","scripts":{"lint":"eslint --fix","test":"node --test \"dist/test/*.test.js\"","build":"npm run clean && npm run build:server && npm run build:configpanel","clean":"rimraf dist public","watch":"tsc --watch","format":"npm run prettier && npm run lint","ci-lint":"eslint && prettier --check .","prettier":"prettier --write .","test:all":"node --test \"dist/test/**/*.test.js\"","build:all":"npm run build && npm test","build:server":"tsc","prepublishOnly":"npm run build","test:integration":"node --test \"dist/test/integration/*.test.js\"","build:configpanel":"vite build","build:all:integration":"npm run build && npm run test:all"},"signalk":{"appIcon":"./icon.svg","displayName":"Container Manager","screenshots":["./doc/screenshots/signalk-container-1.png","./doc/screenshots/signalk-container-2.png","./doc/screenshots/signalk-container-3.png"]},"_npmUser":{"name":"GitHub Actions","email":"npm-oidc-no-reply@github.com","trustedPublisher":{"id":"github","oidcConfigId":"oidc:ac86e6a6-7555-4a7a-aa96-7ed2220dbf64"}},"repository":{"url":"git+https://github.com/dirkwa/signalk-container.git","type":"git"},"_npmVersion":"11.16.0","description":"Shared container runtime management (Podman/Docker) for Signal K plugins","directories":{},"_nodeVersion":"24.18.0","dependencies":{"typebox":"^1.1.38","dockerode":"^5.0.0"},"_hasShrinkwrap":false,"devDependencies":{"jiti":"^2.7.0","vite":"^8.0.13","react":"^19.2.4","eslint":"^10.2.0","rimraf":"^6.1.3","globals":"^17.4.0","prettier":"^3.8.1","react-dom":"^19.2.4","@eslint/js":"^10.0.1","typescript":"^6.0.3","@types/node":"^22.0.0","@types/react":"^19.2.14","@types/express":"^5.0.6","@types/dockerode":"^4.0.1","@types/react-dom":"^19.2.3","typescript-eslint":"^8.58.0","@signalk/server-api":"latest","@vitejs/plugin-react":"^6.0.2","eslint-config-prettier":"^10.1.8","@module-federation/vite":"^1.5.0"},"_npmOperationalInternal":{"tmp":"tmp/signalk-container_1.21.0_1784492922573_0.7792182811317014","host":"s3://npm-registry-packages-npm-production"},"signalk-plugin-enabled-by-default":true},"1.22.0":{"name":"signalk-container","version":"1.22.0","keywords":["signalk-node-server-plugin","signalk-plugin-configurator"],"author":{"name":"Dirk Wahrheit","email":"dirkwahrheit@gmail.com"},"license":"MIT","_id":"signalk-container@1.22.0","maintainers":[{"name":"dirkwa","email":"dirkwahrheit@gmail.com"}],"homepage":"https://github.com/dirkwa/signalk-container#readme","bugs":{"url":"https://github.com/dirkwa/signalk-container/issues"},"dist":{"shasum":"29d9a924d8df5246e25920cc4cacc6f0d8531c7e","tarball":"https://registry.npmjs.org/signalk-container/-/signalk-container-1.22.0.tgz","fileCount":134,"integrity":"sha512-3cadTLDR0619diK6CfmY6xk9SD3Bu0nsTXDKU6CGAXnzhGx5OiY3kC2ogWx8UvWenFB6mNgDgFcrtO7TK5dafA==","signatures":[{"sig":"MEQCIB3WroK+/0Bb2YdlaJ/dljE8JQu4D6nYIqEdPENvxQdQAiB2QNjL55JCZYi8pLJMSx1GEuisMYBjC6fg1g9dF3U1Vw==","keyid":"SHA256:DhQ8wR5APBvFHLF/+Tc+AYvPOdTpcIDqOhxsBHRwC7U"}],"attestations":{"url":"https://registry.npmjs.org/-/npm/v1/attestations/signalk-container@1.22.0","provenance":{"predicateType":"https://slsa.dev/provenance/v1"}},"unpackedSize":1648835},"main":"dist/index.js","type":"module","types":"./dist/index.d.ts","engines":{"node":">=22"},"gitHead":"6f683e19049cb5bdca83553fa088b6a98819d02d","scripts":{"lint":"eslint --fix","test":"node --test \"dist/test/*.test.js\"","build":"npm run clean && npm run build:server && npm run build:configpanel","clean":"rimraf dist public","watch":"tsc --watch","format":"npm run prettier && npm run lint","ci-lint":"eslint && prettier --check .","prettier":"prettier --write .","test:all":"node --test \"dist/test/**/*.test.js\"","build:all":"npm run build && npm test","build:server":"tsc","prepublishOnly":"npm run build","test:integration":"node --test \"dist/test/integration/*.test.js\"","build:configpanel":"vite build","build:all:integration":"npm run build && npm run test:all"},"signalk":{"appIcon":"./icon.svg","displayName":"Container Manager","screenshots":["./doc/screenshots/signalk-container-1.png","./doc/screenshots/signalk-container-2.png","./doc/screenshots/signalk-container-3.png"]},"_npmUser":{"name":"GitHub Actions","email":"npm-oidc-no-reply@github.com","trustedPublisher":{"id":"github","oidcConfigId":"oidc:ac86e6a6-7555-4a7a-aa96-7ed2220dbf64"}},"repository":{"url":"git+https://github.com/dirkwa/signalk-container.git","type":"git"},"_npmVersion":"11.16.0","description":"Shared container runtime management (Podman/Docker) for Signal K plugins","directories":{},"_nodeVersion":"24.18.0","dependencies":{"typebox":"^1.1.38","dockerode":"^5.0.0"},"_hasShrinkwrap":false,"devDependencies":{"jiti":"^2.7.0","vite":"^8.0.13","react":"^19.2.4","eslint":"^10.2.0","rimraf":"^6.1.3","globals":"^17.4.0","prettier":"^3.8.1","react-dom":"^19.2.4","@eslint/js":"^10.0.1","typescript":"^6.0.3","@types/node":"^22.0.0","@types/react":"^19.2.14","@types/express":"^5.0.6","@types/dockerode":"^4.0.1","@types/react-dom":"^19.2.3","typescript-eslint":"^8.58.0","@signalk/server-api":"latest","@vitejs/plugin-react":"^6.0.2","eslint-config-prettier":"^10.1.8","@module-federation/vite":"^1.5.0"},"_npmOperationalInternal":{"tmp":"tmp/signalk-container_1.22.0_1784689878369_0.4739346233495787","host":"s3://npm-registry-packages-npm-production"},"signalk-plugin-enabled-by-default":true},"1.22.1":{"name":"signalk-container","version":"1.22.1","keywords":["signalk-node-server-plugin","signalk-plugin-configurator"],"author":{"name":"Dirk Wahrheit","email":"dirkwahrheit@gmail.com"},"license":"MIT","_id":"signalk-container@1.22.1","maintainers":[{"name":"dirkwa","email":"dirkwahrheit@gmail.com"}],"homepage":"https://github.com/dirkwa/signalk-container#readme","bugs":{"url":"https://github.com/dirkwa/signalk-container/issues"},"dist":{"shasum":"2e55513a4ad858ef7d168fd4bc6624a253651d81","tarball":"https://registry.npmjs.org/signalk-container/-/signalk-container-1.22.1.tgz","fileCount":134,"integrity":"sha512-UshyF1DcG7I/12wKD2rdMjFdLfAPTJk5uO/jcwhKPqGMzM5xXw7jd1rRA4KvHfjx1jkgXLolM8n6bwIjHTWrag==","signatures":[{"sig":"MEUCICj0ZtUKeQqCPdlkfUpjsvhjX60nAFF1XuHlnbqX7hj2AiEAy+LKtXMKuJ2oiIPN8uSZfknZJDCF0CW5T1ZTiBvqWuU=","keyid":"SHA256:DhQ8wR5APBvFHLF/+Tc+AYvPOdTpcIDqOhxsBHRwC7U"}],"attestations":{"url":"https://registry.npmjs.org/-/npm/v1/attestations/signalk-container@1.22.1","provenance":{"predicateType":"https://slsa.dev/provenance/v1"}},"unpackedSize":1657239},"main":"dist/index.js","type":"module","types":"./dist/index.d.ts","engines":{"node":">=22"},"gitHead":"b203cda3469c97233b48ca01d0ec1d5117dd0427","scripts":{"lint":"eslint --fix","test":"node --test \"dist/test/*.test.js\"","build":"npm run clean && npm run build:server && npm run build:configpanel","clean":"rimraf dist public","watch":"tsc --watch","format":"npm run prettier && npm run lint","ci-lint":"eslint && prettier --check .","prettier":"prettier --write .","test:all":"node --test \"dist/test/**/*.test.js\"","build:all":"npm run build && npm test","build:server":"tsc","prepublishOnly":"npm run build","test:integration":"node --test \"dist/test/integration/*.test.js\"","build:configpanel":"vite build","build:all:integration":"npm run build && npm run test:all"},"signalk":{"appIcon":"./icon.svg","displayName":"Container Manager","screenshots":["./doc/screenshots/signalk-container-1.png","./doc/screenshots/signalk-container-2.png","./doc/screenshots/signalk-container-3.png"]},"_npmUser":{"name":"GitHub Actions","email":"npm-oidc-no-reply@github.com","trustedPublisher":{"id":"github","oidcConfigId":"oidc:ac86e6a6-7555-4a7a-aa96-7ed2220dbf64"}},"repository":{"url":"git+https://github.com/dirkwa/signalk-container.git","type":"git"},"_npmVersion":"11.16.0","description":"Shared container runtime management (Podman/Docker) for Signal K plugins","directories":{},"_nodeVersion":"24.18.0","dependencies":{"typebox":"^1.1.38","dockerode":"^5.0.0"},"_hasShrinkwrap":false,"devDependencies":{"jiti":"^2.7.0","vite":"^8.0.13","react":"^19.2.4","eslint":"^10.2.0","rimraf":"^6.1.3","globals":"^17.4.0","prettier":"^3.8.1","react-dom":"^19.2.4","@eslint/js":"^10.0.1","typescript":"^6.0.3","@types/node":"^22.0.0","@types/react":"^19.2.14","@types/express":"^5.0.6","@types/dockerode":"^4.0.1","@types/react-dom":"^19.2.3","typescript-eslint":"^8.58.0","@signalk/server-api":"latest","@vitejs/plugin-react":"^6.0.2","eslint-config-prettier":"^10.1.8","@module-federation/vite":"^1.5.0"},"_npmOperationalInternal":{"tmp":"tmp/signalk-container_1.22.1_1784831465037_0.36816198947863565","host":"s3://npm-registry-packages-npm-production"},"signalk-plugin-enabled-by-default":true},"1.23.0":{"name":"signalk-container","version":"1.23.0","keywords":["signalk-node-server-plugin","signalk-plugin-configurator"],"author":{"name":"Dirk Wahrheit","email":"dirkwahrheit@gmail.com"},"license":"MIT","_id":"signalk-container@1.23.0","maintainers":[{"name":"dirkwa","email":"dirkwahrheit@gmail.com"}],"homepage":"https://github.com/dirkwa/signalk-container#readme","bugs":{"url":"https://github.com/dirkwa/signalk-container/issues"},"dist":{"shasum":"0fd74801584e9592cca7e42544cd0157a8966304","tarball":"https://registry.npmjs.org/signalk-container/-/signalk-container-1.23.0.tgz","fileCount":134,"integrity":"sha512-/hUHQzNEa6RM4bIKmvK/zqPDEMqYn1lh9K8AwrNqKb/yN9a0smu9s80cDvEo0y0piMuukcNZDvE+BEsU7mKs/g==","signatures":[{"sig":"MEYCIQC+9ytO8m2k30i7JVUL4P1hD1Wm6c05oWmYjK1CDzb64wIhAOs0tD0b7jFnkOqLVHL/pnsXXXl26AWYVRFjxLRhdYv1","keyid":"SHA256:DhQ8wR5APBvFHLF/+Tc+AYvPOdTpcIDqOhxsBHRwC7U"}],"attestations":{"url":"https://registry.npmjs.org/-/npm/v1/attestations/signalk-container@1.23.0","provenance":{"predicateType":"https://slsa.dev/provenance/v1"}},"unpackedSize":1657476},"main":"dist/index.js","type":"module","types":"./dist/index.d.ts","engines":{"node":">=22"},"exports":{".":"./dist/index.js","./types":{"types":"./dist/types.d.ts","import":"./dist/types.js"}},"gitHead":"f373e48fe03210ab1f8f2500330b9b566fcb3e16","scripts":{"lint":"eslint --fix","test":"node --test \"dist/test/*.test.js\"","build":"npm run clean && npm run build:server && npm run build:configpanel","clean":"rimraf dist public","watch":"tsc --watch","format":"npm run prettier && npm run lint","ci-lint":"eslint && prettier --check .","prettier":"prettier --write .","test:all":"node --test \"dist/test/**/*.test.js\"","build:all":"npm run build && npm test","build:server":"tsc","prepublishOnly":"npm run build","test:integration":"node --test \"dist/test/integration/*.test.js\"","build:configpanel":"vite build","build:all:integration":"npm run build && npm run test:all"},"signalk":{"appIcon":"./icon.svg","displayName":"Container Manager","screenshots":["./doc/screenshots/signalk-container-1.png","./doc/screenshots/signalk-container-2.png","./doc/screenshots/signalk-container-3.png"]},"_npmUser":{"name":"GitHub Actions","email":"npm-oidc-no-reply@github.com","trustedPublisher":{"id":"github","oidcConfigId":"oidc:ac86e6a6-7555-4a7a-aa96-7ed2220dbf64"}},"repository":{"url":"git+https://github.com/dirkwa/signalk-container.git","type":"git"},"_npmVersion":"11.16.0","description":"Shared container runtime management (Podman/Docker) for Signal K plugins","directories":{},"_nodeVersion":"24.18.0","dependencies":{"typebox":"^1.1.38","dockerode":"^5.0.0"},"_hasShrinkwrap":false,"devDependencies":{"jiti":"^2.7.0","vite":"^8.0.13","react":"^19.2.4","eslint":"^10.2.0","rimraf":"^6.1.3","globals":"^17.4.0","prettier":"^3.8.1","react-dom":"^19.2.4","@eslint/js":"^10.0.1","typescript":"^6.0.3","@types/node":"^22.0.0","@types/react":"^19.2.14","@types/express":"^5.0.6","@types/dockerode":"^4.0.1","@types/react-dom":"^19.2.3","typescript-eslint":"^8.58.0","@signalk/server-api":"latest","@vitejs/plugin-react":"^6.0.2","eslint-config-prettier":"^10.1.8","@module-federation/vite":"^1.5.0"},"_npmOperationalInternal":{"tmp":"tmp/signalk-container_1.23.0_1784839832412_0.6397992004372783","host":"s3://npm-registry-packages-npm-production"},"signalk-plugin-enabled-by-default":true},"1.23.1":{"name":"signalk-container","version":"1.23.1","keywords":["signalk-node-server-plugin","signalk-plugin-configurator"],"author":{"name":"Dirk Wahrheit","email":"dirkwahrheit@gmail.com"},"license":"MIT","_id":"signalk-container@1.23.1","maintainers":[{"name":"dirkwa","email":"dirkwahrheit@gmail.com"}],"homepage":"https://github.com/dirkwa/signalk-container#readme","bugs":{"url":"https://github.com/dirkwa/signalk-container/issues"},"dist":{"shasum":"b11e74e6128fb3fdc96edb1a3fe4ab44384ca1d6","tarball":"https://registry.npmjs.org/signalk-container/-/signalk-container-1.23.1.tgz","fileCount":134,"integrity":"sha512-ZTADN1Cm52w/qS8R4T1KacNvMe1oTNRbdno2Fs0LetADxQNfIhbQq7Ub9vMk9HIrQ2JJjIqb9/uwjtnJP6zhVQ==","signatures":[{"sig":"MEUCIQCuu00S18PlawB/QcaLqhLEsI8aRBEFdKwc5hxDcPCwrwIgCyFurIR6o2A80g4jjUI1VelJbMazRIGTsCJTyOf/LHY=","keyid":"SHA256:DhQ8wR5APBvFHLF/+Tc+AYvPOdTpcIDqOhxsBHRwC7U"}],"attestations":{"url":"https://registry.npmjs.org/-/npm/v1/attestations/signalk-container@1.23.1","provenance":{"predicateType":"https://slsa.dev/provenance/v1"}},"unpackedSize":1658023},"main":"dist/index.js","type":"module","types":"./dist/index.d.ts","engines":{"node":">=22"},"exports":{".":"./dist/index.js","./types":{"types":"./dist/types.d.ts","import":"./dist/types.js"}},"gitHead":"23070ab22da2d2f1020997b5e8e5b023c3658564","scripts":{"lint":"eslint --fix","test":"node --test \"dist/test/*.test.js\"","build":"npm run clean && npm run build:server && npm run build:configpanel","clean":"rimraf dist public","watch":"tsc --watch","format":"npm run prettier && npm run lint","ci-lint":"eslint && prettier --check .","prettier":"prettier --write .","test:all":"node --test \"dist/test/**/*.test.js\"","build:all":"npm run build && npm test","build:server":"tsc","prepublishOnly":"npm run build","test:integration":"node --test \"dist/test/integration/*.test.js\"","build:configpanel":"vite build","build:all:integration":"npm run build && npm run test:all"},"signalk":{"appIcon":"./icon.svg","displayName":"Container Manager","screenshots":["./doc/screenshots/signalk-container-1.png","./doc/screenshots/signalk-container-2.png","./doc/screenshots/signalk-container-3.png"]},"_npmUser":{"name":"GitHub Actions","email":"npm-oidc-no-reply@github.com","trustedPublisher":{"id":"github","oidcConfigId":"oidc:ac86e6a6-7555-4a7a-aa96-7ed2220dbf64"}},"repository":{"url":"git+https://github.com/dirkwa/signalk-container.git","type":"git"},"_npmVersion":"11.16.0","description":"Shared container runtime management (Podman/Docker) for Signal K plugins","directories":{},"_nodeVersion":"24.18.0","dependencies":{"typebox":"^1.1.38","dockerode":"^5.0.0"},"_hasShrinkwrap":false,"devDependencies":{"jiti":"^2.7.0","vite":"^8.0.13","react":"^19.2.4","eslint":"^10.2.0","rimraf":"^6.1.3","globals":"^17.4.0","prettier":"^3.8.1","react-dom":"^19.2.4","@eslint/js":"^10.0.1","typescript":"^6.0.3","@types/node":"^22.0.0","@types/react":"^19.2.14","@types/express":"^5.0.6","@types/dockerode":"^4.0.1","@types/react-dom":"^19.2.3","typescript-eslint":"^8.58.0","@signalk/server-api":"latest","@vitejs/plugin-react":"^6.0.2","eslint-config-prettier":"^10.1.8","@module-federation/vite":"^1.5.0"},"_npmOperationalInternal":{"tmp":"tmp/signalk-container_1.23.1_1784847252373_0.39102346464398585","host":"s3://npm-registry-packages-npm-production"},"signalk-plugin-enabled-by-default":true},"1.23.2":{"name":"signalk-container","version":"1.23.2","keywords":["signalk-node-server-plugin","signalk-plugin-configurator"],"author":{"name":"Dirk Wahrheit","email":"dirkwahrheit@gmail.com"},"license":"MIT","_id":"signalk-container@1.23.2","maintainers":[{"name":"dirkwa","email":"dirkwahrheit@gmail.com"}],"homepage":"https://github.com/dirkwa/signalk-container#readme","bugs":{"url":"https://github.com/dirkwa/signalk-container/issues"},"dist":{"shasum":"865c6aed64a8d72af569bf00f624daae145e04f9","tarball":"https://registry.npmjs.org/signalk-container/-/signalk-container-1.23.2.tgz","fileCount":134,"integrity":"sha512-LXm1L8mIdAfePu75Ugm0YeskMP7j89/NRQ8U3qbsw3UizU9a6PQN/h1xcgz2ccuoouSAWmWEjG+RffcK13OkOQ==","signatures":[{"sig":"MEYCIQDWXBw0fhdYQxGkSXn8stJoMec64WW79uEfkBKoX+vwxAIhAPp03HxIIk9YrXSmJf29Hrfe/zYDoEBAzzOHMvxCbZru","keyid":"SHA256:DhQ8wR5APBvFHLF/+Tc+AYvPOdTpcIDqOhxsBHRwC7U"}],"attestations":{"url":"https://registry.npmjs.org/-/npm/v1/attestations/signalk-container@1.23.2","provenance":{"predicateType":"https://slsa.dev/provenance/v1"}},"unpackedSize":1658932},"main":"dist/index.js","type":"module","types":"./dist/index.d.ts","engines":{"node":">=22"},"exports":{".":"./dist/index.js","./types":{"types":"./dist/types.d.ts","import":"./dist/types.js"}},"gitHead":"29463e11555fb2ef4c5f6d5518199757675f78c8","scripts":{"lint":"eslint --fix","test":"node --test \"dist/test/*.test.js\"","build":"npm run clean && npm run build:server && npm run build:configpanel","clean":"rimraf dist public","watch":"tsc --watch","format":"npm run prettier && npm run lint","ci-lint":"eslint && prettier --check .","prettier":"prettier --write .","test:all":"node --test \"dist/test/**/*.test.js\"","build:all":"npm run build && npm test","build:server":"tsc","prepublishOnly":"npm run build","test:integration":"node --test \"dist/test/integration/*.test.js\"","build:configpanel":"vite build","build:all:integration":"npm run build && npm run test:all"},"signalk":{"appIcon":"./icon.svg","displayName":"Container Manager","screenshots":["./doc/screenshots/signalk-container-1.png","./doc/screenshots/signalk-container-2.png","./doc/screenshots/signalk-container-3.png"]},"_npmUser":{"name":"GitHub Actions","email":"npm-oidc-no-reply@github.com","trustedPublisher":{"id":"github","oidcConfigId":"oidc:ac86e6a6-7555-4a7a-aa96-7ed2220dbf64"}},"repository":{"url":"git+https://github.com/dirkwa/signalk-container.git","type":"git"},"_npmVersion":"11.16.0","description":"Shared container runtime management (Podman/Docker) for Signal K plugins","directories":{},"_nodeVersion":"24.18.0","dependencies":{"typebox":"^1.1.38","dockerode":"^5.0.0"},"_hasShrinkwrap":false,"devDependencies":{"jiti":"^2.7.0","vite":"^8.0.13","react":"^19.2.4","eslint":"^10.2.0","rimraf":"^6.1.3","globals":"^17.4.0","prettier":"^3.8.1","react-dom":"^19.2.4","@eslint/js":"^10.0.1","typescript":"^6.0.3","@types/node":"^22.0.0","@types/react":"^19.2.14","@types/express":"^5.0.6","@types/dockerode":"^4.0.1","@types/react-dom":"^19.2.3","typescript-eslint":"^8.58.0","@signalk/server-api":"latest","@vitejs/plugin-react":"^6.0.2","eslint-config-prettier":"^10.1.8","@module-federation/vite":"^1.5.0"},"_npmOperationalInternal":{"tmp":"tmp/signalk-container_1.23.2_1784852325908_0.09489292258885551","host":"s3://npm-registry-packages-npm-production"},"signalk-plugin-enabled-by-default":true},"1.24.0":{"name":"signalk-container","version":"1.24.0","keywords":["signalk-node-server-plugin","signalk-plugin-configurator"],"author":{"name":"Dirk Wahrheit","email":"dirkwahrheit@gmail.com"},"license":"MIT","_id":"signalk-container@1.24.0","maintainers":[{"name":"dirkwa","email":"dirkwahrheit@gmail.com"}],"homepage":"https://github.com/dirkwa/signalk-container#readme","bugs":{"url":"https://github.com/dirkwa/signalk-container/issues"},"dist":{"shasum":"16241356674babdfc7ddff9c030c9cd2b56fec5c","tarball":"https://registry.npmjs.org/signalk-container/-/signalk-container-1.24.0.tgz","fileCount":138,"integrity":"sha512-yi6uKQll21pwuBXcJI/sLRSnpQefXPBJHLk8xrKdl0BZeMQNns2HS+EgWhsnTKK8L8PxyVfYXlU9By2wHIiZAQ==","signatures":[{"sig":"MEQCIEkZxoGXtWXM4wewZa3oUbamcmGxgzF1Ph8lyj16IhtAAiARg7T9GkiBTmfre5VVY4SAm1TKQBIdsD+O5hR3zwgfJQ==","keyid":"SHA256:DhQ8wR5APBvFHLF/+Tc+AYvPOdTpcIDqOhxsBHRwC7U"}],"attestations":{"url":"https://registry.npmjs.org/-/npm/v1/attestations/signalk-container@1.24.0","provenance":{"predicateType":"https://slsa.dev/provenance/v1"}},"unpackedSize":1765968},"main":"dist/index.js","type":"module","types":"./dist/index.d.ts","engines":{"node":">=22"},"exports":{".":"./dist/index.js","./types":{"types":"./dist/types.d.ts","import":"./dist/types.js"}},"gitHead":"fba6ef05ac2c0494e1b32659fbb130d9af6e8fce","scripts":{"lint":"eslint --fix","test":"node --test \"dist/test/*.test.js\"","build":"npm run clean && npm run build:server && npm run build:configpanel","clean":"rimraf dist public","watch":"tsc --watch","format":"npm run prettier && npm run lint","ci-lint":"eslint && prettier --check .","prettier":"prettier --write .","test:all":"node --test \"dist/test/**/*.test.js\"","build:all":"npm run build && npm test","build:server":"tsc","prepublishOnly":"npm run build","test:integration":"node --test \"dist/test/integration/*.test.js\"","build:configpanel":"vite build","build:all:integration":"npm run build && npm run test:all"},"signalk":{"appIcon":"./icon.svg","displayName":"Container Manager","screenshots":["./doc/screenshots/signalk-container-1.png","./doc/screenshots/signalk-container-2.png","./doc/screenshots/signalk-container-3.png"]},"_npmUser":{"name":"GitHub Actions","email":"npm-oidc-no-reply@github.com","trustedPublisher":{"id":"github","oidcConfigId":"oidc:ac86e6a6-7555-4a7a-aa96-7ed2220dbf64"}},"repository":{"url":"git+https://github.com/dirkwa/signalk-container.git","type":"git"},"_npmVersion":"11.16.0","description":"Shared container runtime management (Podman/Docker) for Signal K plugins","directories":{},"_nodeVersion":"24.18.0","dependencies":{"typebox":"^1.1.38","dockerode":"^5.0.0"},"_hasShrinkwrap":false,"devDependencies":{"jiti":"^2.7.0","vite":"^8.0.13","react":"^19.2.4","eslint":"^10.2.0","rimraf":"^6.1.3","globals":"^17.4.0","prettier":"^3.8.1","react-dom":"^19.2.4","@eslint/js":"^10.0.1","typescript":"^6.0.3","@types/node":"^22.0.0","@types/react":"^19.2.14","@types/express":"^5.0.6","@types/dockerode":"^4.0.1","@types/react-dom":"^19.2.3","typescript-eslint":"^8.58.0","@signalk/server-api":"latest","@vitejs/plugin-react":"^6.0.2","eslint-config-prettier":"^10.1.8","@module-federation/vite":"^1.5.0"},"_npmOperationalInternal":{"tmp":"tmp/signalk-container_1.24.0_1785096745276_0.30947611452465984","host":"s3://npm-registry-packages-npm-production"},"signalk-plugin-enabled-by-default":true},"1.25.0":{"name":"signalk-container","version":"1.25.0","keywords":["signalk-node-server-plugin","signalk-plugin-configurator"],"author":{"name":"Dirk Wahrheit","email":"dirkwahrheit@gmail.com"},"license":"MIT","_id":"signalk-container@1.25.0","maintainers":[{"name":"dirkwa","email":"dirkwahrheit@gmail.com"}],"homepage":"https://github.com/dirkwa/signalk-container#readme","bugs":{"url":"https://github.com/dirkwa/signalk-container/issues"},"dist":{"shasum":"ba109171021f0fced347c2211227c31d8cd069cc","tarball":"https://registry.npmjs.org/signalk-container/-/signalk-container-1.25.0.tgz","fileCount":142,"integrity":"sha512-3bRoaHq9AJhq9MjEGV3VRCBPqdIFljvlqocwXZPMIw3dP93uFTebJYm5CpLdkcJlj81cu8hOJfNC98hYdTByMQ==","signatures":[{"sig":"MEYCIQCDniJhPsutNxHAWj7pkPQk+Q1MWlIMyq9VNyV8tj3cFwIhAMk5cD/HL2P0Zsc02KYC2Sj28qVjVGTSFRmbZHe/7TEm","keyid":"SHA256:DhQ8wR5APBvFHLF/+Tc+AYvPOdTpcIDqOhxsBHRwC7U"}],"attestations":{"url":"https://registry.npmjs.org/-/npm/v1/attestations/signalk-container@1.25.0","provenance":{"predicateType":"https://slsa.dev/provenance/v1"}},"unpackedSize":1797537},"main":"dist/index.js","type":"module","types":"./dist/index.d.ts","engines":{"node":">=22"},"exports":{".":"./dist/index.js","./types":{"types":"./dist/types.d.ts","import":"./dist/types.js"}},"gitHead":"88798a9fcca898161d0e593f2a3a6dccb76187fe","scripts":{"lint":"eslint --fix","test":"node --test \"dist/test/*.test.js\"","build":"npm run clean && npm run build:server && npm run build:configpanel","clean":"rimraf dist public","watch":"tsc --watch","format":"npm run prettier && npm run lint","ci-lint":"eslint && prettier --check .","prettier":"prettier --write .","test:all":"node --test \"dist/test/**/*.test.js\"","build:all":"npm run build && npm test","build:server":"tsc","prepublishOnly":"npm run build","test:integration":"node --test \"dist/test/integration/*.test.js\"","build:configpanel":"vite build","build:all:integration":"npm run build && npm run test:all"},"signalk":{"appIcon":"./icon.svg","displayName":"Container Manager","screenshots":["./doc/screenshots/signalk-container-1.png","./doc/screenshots/signalk-container-2.png","./doc/screenshots/signalk-container-3.png"]},"_npmUser":{"name":"GitHub Actions","email":"npm-oidc-no-reply@github.com","trustedPublisher":{"id":"github","oidcConfigId":"oidc:ac86e6a6-7555-4a7a-aa96-7ed2220dbf64"}},"repository":{"url":"git+https://github.com/dirkwa/signalk-container.git","type":"git"},"_npmVersion":"11.16.0","description":"Shared container runtime management (Podman/Docker) for Signal K plugins","directories":{},"_nodeVersion":"24.18.0","dependencies":{"typebox":"^1.1.38","dockerode":"^5.0.0"},"_hasShrinkwrap":false,"devDependencies":{"jiti":"^2.7.0","vite":"^8.0.13","react":"^19.2.4","eslint":"^10.2.0","rimraf":"^6.1.3","globals":"^17.4.0","prettier":"^3.8.1","react-dom":"^19.2.4","@eslint/js":"^10.0.1","typescript":"^6.0.3","@types/node":"^22.0.0","@types/react":"^19.2.14","@types/express":"^5.0.6","@types/dockerode":"^4.0.1","@types/react-dom":"^19.2.3","typescript-eslint":"^8.58.0","@signalk/server-api":"latest","@vitejs/plugin-react":"^6.0.2","eslint-config-prettier":"^10.1.8","@module-federation/vite":"^1.5.0"},"_npmOperationalInternal":{"tmp":"tmp/signalk-container_1.25.0_1785125269652_0.2824933284868274","host":"s3://npm-registry-packages-npm-production"},"signalk-plugin-enabled-by-default":true},"1.25.1":{"name":"signalk-container","version":"1.25.1","keywords":["signalk-node-server-plugin","signalk-plugin-configurator"],"author":{"name":"Dirk Wahrheit","email":"dirkwahrheit@gmail.com"},"license":"MIT","_id":"signalk-container@1.25.1","maintainers":[{"name":"dirkwa","email":"dirkwahrheit@gmail.com"}],"homepage":"https://github.com/dirkwa/signalk-container#readme","bugs":{"url":"https://github.com/dirkwa/signalk-container/issues"},"dist":{"shasum":"5982bdcf7b0c3e6055127fb8560f679bbcdc1649","tarball":"https://registry.npmjs.org/signalk-container/-/signalk-container-1.25.1.tgz","fileCount":142,"integrity":"sha512-rtdT/Sj5NS2BWDqSLaYqA/1JMwhCe7j8U3Zv+WAOc/Be8UZn2/QZ7JphP2312gVdUCZcDrtoEU73WeotM5ZNLA==","signatures":[{"sig":"MEYCIQCBaZaHiYx0g3AHOff1oDapfGn0Vt5czotcsCUYom3+qgIhAKnjDZY0U2V4n/hOpmPdI9MG2cGqFpI6bptG1wojVZK2","keyid":"SHA256:DhQ8wR5APBvFHLF/+Tc+AYvPOdTpcIDqOhxsBHRwC7U"}],"attestations":{"url":"https://registry.npmjs.org/-/npm/v1/attestations/signalk-container@1.25.1","provenance":{"predicateType":"https://slsa.dev/provenance/v1"}},"unpackedSize":1806391},"main":"dist/index.js","type":"module","types":"./dist/index.d.ts","engines":{"node":">=22"},"exports":{".":"./dist/index.js","./types":{"types":"./dist/types.d.ts","import":"./dist/types.js"}},"gitHead":"aa84ac1482e78be99942a3b12bd451ab0c71c347","scripts":{"lint":"eslint --fix","test":"node --test \"dist/test/*.test.js\"","build":"npm run clean && npm run build:server && npm run build:configpanel","clean":"rimraf dist public","watch":"tsc --watch","format":"npm run prettier && npm run lint","ci-lint":"eslint && prettier --check .","prettier":"prettier --write .","test:all":"node --test \"dist/test/**/*.test.js\"","build:all":"npm run build && npm test","build:server":"tsc","prepublishOnly":"npm run build","test:integration":"node --test \"dist/test/integration/*.test.js\"","build:configpanel":"vite build","build:all:integration":"npm run build && npm run test:all"},"signalk":{"appIcon":"./icon.svg","displayName":"Container Manager","screenshots":["./doc/screenshots/signalk-container-1.png","./doc/screenshots/signalk-container-2.png","./doc/screenshots/signalk-container-3.png"]},"_npmUser":{"name":"GitHub Actions","email":"npm-oidc-no-reply@github.com","trustedPublisher":{"id":"github","oidcConfigId":"oidc:ac86e6a6-7555-4a7a-aa96-7ed2220dbf64"}},"repository":{"url":"git+https://github.com/dirkwa/signalk-container.git","type":"git"},"_npmVersion":"11.16.0","description":"Shared container runtime management (Podman/Docker) for Signal K plugins","directories":{},"_nodeVersion":"24.18.0","dependencies":{"typebox":"^1.1.38","dockerode":"^5.0.0"},"_hasShrinkwrap":false,"devDependencies":{"jiti":"^2.7.0","vite":"^8.0.13","react":"^19.2.4","eslint":"^10.2.0","rimraf":"^6.1.3","globals":"^17.4.0","prettier":"^3.8.1","react-dom":"^19.2.4","@eslint/js":"^10.0.1","typescript":"^6.0.3","@types/node":"^22.0.0","@types/react":"^19.2.14","@types/express":"^5.0.6","@types/dockerode":"^4.0.1","@types/react-dom":"^19.2.3","typescript-eslint":"^8.58.0","@signalk/server-api":"latest","@vitejs/plugin-react":"^6.0.2","eslint-config-prettier":"^10.1.8","@module-federation/vite":"^1.5.0"},"_npmOperationalInternal":{"tmp":"tmp/signalk-container_1.25.1_1785616390975_0.9425532754871322","host":"s3://npm-registry-packages-npm-production"},"signalk-plugin-enabled-by-default":true},"1.25.2":{"name":"signalk-container","version":"1.25.2","keywords":["signalk-node-server-plugin","signalk-plugin-configurator"],"author":{"name":"Dirk Wahrheit","email":"dirkwahrheit@gmail.com"},"license":"MIT","_id":"signalk-container@1.25.2","maintainers":[{"name":"dirkwa","email":"dirkwahrheit@gmail.com"}],"homepage":"https://github.com/dirkwa/signalk-container#readme","bugs":{"url":"https://github.com/dirkwa/signalk-container/issues"},"dist":{"shasum":"9a1f4620ae52940423fcb16481b6c6b9ec69472a","tarball":"https://registry.npmjs.org/signalk-container/-/signalk-container-1.25.2.tgz","fileCount":142,"integrity":"sha512-rRkQhj2y0sdH1fcaX87UQkOQhr52sUgENo9YblB3AJam3PJYZmMbHrddWtp948PWjQHBhjwnyMStPk7JnfnhJA==","signatures":[{"sig":"MEUCIAd66uBDjmosb/yJVWmKIzRtI5oaPo8KkhSqBosuJAugAiEAy5qcXzslpKDNZVNiH4pxFyKNKKA+G7peWf32/lNhqfQ=","keyid":"SHA256:DhQ8wR5APBvFHLF/+Tc+AYvPOdTpcIDqOhxsBHRwC7U"}],"attestations":{"url":"https://registry.npmjs.org/-/npm/v1/attestations/signalk-container@1.25.2","provenance":{"predicateType":"https://slsa.dev/provenance/v1"}},"unpackedSize":1814446},"main":"dist/index.js","type":"module","types":"./dist/index.d.ts","engines":{"node":">=22"},"exports":{".":"./dist/index.js","./types":{"types":"./dist/types.d.ts","import":"./dist/types.js"}},"gitHead":"dc9a88fdba113ab452795770901bdb15f2d2b5a0","scripts":{"lint":"eslint --fix","test":"node --test \"dist/test/*.test.js\"","build":"npm run clean && npm run build:server && npm run build:configpanel","clean":"rimraf dist public","watch":"tsc --watch","format":"npm run prettier && npm run lint","ci-lint":"eslint && prettier --check .","prettier":"prettier --write .","test:all":"node --test \"dist/test/**/*.test.js\"","build:all":"npm run build && npm test","build:server":"tsc","prepublishOnly":"npm run build","test:integration":"node --test \"dist/test/integration/*.test.js\"","build:configpanel":"vite build","build:all:integration":"npm run build && npm run test:all"},"signalk":{"appIcon":"./icon.svg","displayName":"Container Manager","screenshots":["./doc/screenshots/signalk-container-1.png","./doc/screenshots/signalk-container-2.png","./doc/screenshots/signalk-container-3.png"]},"_npmUser":{"name":"GitHub Actions","email":"npm-oidc-no-reply@github.com","trustedPublisher":{"id":"github","oidcConfigId":"oidc:ac86e6a6-7555-4a7a-aa96-7ed2220dbf64"}},"repository":{"url":"git+https://github.com/dirkwa/signalk-container.git","type":"git"},"_npmVersion":"11.16.0","description":"Shared container runtime management (Podman/Docker) for Signal K plugins","directories":{},"_nodeVersion":"24.18.0","dependencies":{"typebox":"^1.1.38","dockerode":"^5.0.0"},"_hasShrinkwrap":false,"devDependencies":{"jiti":"^2.7.0","vite":"^8.0.13","react":"^19.2.4","eslint":"^10.2.0","rimraf":"^6.1.3","globals":"^17.4.0","prettier":"^3.8.1","react-dom":"^19.2.4","@eslint/js":"^10.0.1","typescript":"^6.0.3","@types/node":"^22.0.0","@types/react":"^19.2.14","@types/express":"^5.0.6","@types/dockerode":"^4.0.1","@types/react-dom":"^19.2.3","typescript-eslint":"^8.58.0","@signalk/server-api":"latest","@vitejs/plugin-react":"^6.0.2","eslint-config-prettier":"^10.1.8","@module-federation/vite":"^1.5.0"},"_npmOperationalInternal":{"tmp":"tmp/signalk-container_1.25.2_1785726691047_0.5445435516024437","host":"s3://npm-registry-packages-npm-production"},"signalk-plugin-enabled-by-default":true},"1.25.3":{"name":"signalk-container","version":"1.25.3","keywords":["signalk-node-server-plugin","signalk-plugin-configurator"],"author":{"name":"Dirk Wahrheit","email":"dirkwahrheit@gmail.com"},"license":"MIT","_id":"signalk-container@1.25.3","maintainers":[{"name":"dirkwa","email":"dirkwahrheit@gmail.com"}],"homepage":"https://github.com/dirkwa/signalk-container#readme","bugs":{"url":"https://github.com/dirkwa/signalk-container/issues"},"dist":{"shasum":"32a921e6c7287e664b0b426a426dacdce0af9b2d","tarball":"https://registry.npmjs.org/signalk-container/-/signalk-container-1.25.3.tgz","fileCount":142,"integrity":"sha512-LmQbAoLVt3f65TRTglKvDKO4CSPD4nPb0OEUKvE99BzoP4lF9hD8xCHsPvPJQr8aqqk0uIGhLboLdIP/uYmxFw==","signatures":[{"sig":"MEUCIEn2jWRcWIAfFNFCq2BjEwW5tXW/9w6zEbG2alccl8kYAiEA6HQAwsMDeRVz2bCXUYAMlp60ZHXJNkLTv3XIQrtc7p0=","keyid":"SHA256:DhQ8wR5APBvFHLF/+Tc+AYvPOdTpcIDqOhxsBHRwC7U"}],"attestations":{"url":"https://registry.npmjs.org/-/npm/v1/attestations/signalk-container@1.25.3","provenance":{"predicateType":"https://slsa.dev/provenance/v1"}},"unpackedSize":1839392},"main":"dist/index.js","type":"module","types":"./dist/index.d.ts","engines":{"node":">=22"},"exports":{".":"./dist/index.js","./types":{"types":"./dist/types.d.ts","import":"./dist/types.js"}},"gitHead":"29efbcfb523135299fa1c245a46fd4c96fcee38b","scripts":{"lint":"eslint --fix","test":"node --test \"dist/test/*.test.js\"","build":"npm run clean && npm run build:server && npm run build:configpanel","clean":"rimraf dist public","watch":"tsc --watch","format":"npm run prettier && npm run lint","ci-lint":"eslint && prettier --check .","prettier":"prettier --write .","test:all":"node --test \"dist/test/**/*.test.js\"","build:all":"npm run build && npm test","build:server":"tsc","prepublishOnly":"npm run build","test:integration":"node --test \"dist/test/integration/*.test.js\"","build:configpanel":"vite build","build:all:integration":"npm run build && npm run test:all"},"signalk":{"appIcon":"./icon.svg","displayName":"Container Manager","screenshots":["./doc/screenshots/signalk-container-1.png","./doc/screenshots/signalk-container-2.png","./doc/screenshots/signalk-container-3.png"]},"_npmUser":{"name":"GitHub Actions","email":"npm-oidc-no-reply@github.com","trustedPublisher":{"id":"github","oidcConfigId":"oidc:ac86e6a6-7555-4a7a-aa96-7ed2220dbf64"}},"repository":{"url":"git+https://github.com/dirkwa/signalk-container.git","type":"git"},"_npmVersion":"11.16.0","description":"Shared container runtime management (Podman/Docker) for Signal K plugins","directories":{},"_nodeVersion":"24.18.0","dependencies":{"typebox":"^1.1.38","dockerode":"^5.0.0"},"_hasShrinkwrap":false,"devDependencies":{"jiti":"^2.7.0","vite":"^8.0.13","react":"^19.2.4","eslint":"^10.2.0","rimraf":"^6.1.3","globals":"^17.4.0","prettier":"^3.8.1","react-dom":"^19.2.4","@eslint/js":"^10.0.1","typescript":"^6.0.3","@types/node":"^22.0.0","@types/react":"^19.2.14","@types/express":"^5.0.6","@types/dockerode":"^4.0.1","@types/react-dom":"^19.2.3","typescript-eslint":"^8.58.0","@signalk/server-api":"latest","@vitejs/plugin-react":"^6.0.2","eslint-config-prettier":"^10.1.8","@module-federation/vite":"^1.5.0"},"_npmOperationalInternal":{"tmp":"tmp/signalk-container_1.25.3_1785973992330_0.37133695343560147","host":"s3://npm-registry-packages-npm-production"},"signalk-plugin-enabled-by-default":true},"1.25.4":{"name":"signalk-container","version":"1.25.4","keywords":["signalk-node-server-plugin","signalk-plugin-configurator"],"author":{"name":"Dirk Wahrheit","email":"dirkwahrheit@gmail.com"},"license":"MIT","_id":"signalk-container@1.25.4","maintainers":[{"name":"dirkwa","email":"dirkwahrheit@gmail.com"}],"homepage":"https://github.com/dirkwa/signalk-container#readme","bugs":{"url":"https://github.com/dirkwa/signalk-container/issues"},"dist":{"shasum":"b6359a7caeb57f32eda6b8b1fa92dc9d4c9a631d","tarball":"https://registry.npmjs.org/signalk-container/-/signalk-container-1.25.4.tgz","fileCount":140,"integrity":"sha512-wZlMsRYsWdDcMcVJGEL6sxfX1IeyTOH7kJTLLZ2cXdM26k3HroXIQynfNLBDBS8tzdT1LU+78hClOzTj/fuTZQ==","signatures":[{"sig":"MEYCIQC2V61xzj9JKTvm3Mf6HRedscWaoc2Gwglhkz67Fo8aVQIhAJguusTxqiH6JcdPiZPrsQsGoCG4LguvxzrCm14GygIz","keyid":"SHA256:DhQ8wR5APBvFHLF/+Tc+AYvPOdTpcIDqOhxsBHRwC7U"}],"attestations":{"url":"https://registry.npmjs.org/-/npm/v1/attestations/signalk-container@1.25.4","provenance":{"predicateType":"https://slsa.dev/provenance/v1"}},"unpackedSize":1844422},"main":"dist/index.js","type":"module","types":"./dist/index.d.ts","engines":{"node":">=22"},"exports":{".":"./dist/index.js","./types":{"types":"./dist/types.d.ts","import":"./dist/types.js"}},"gitHead":"b5ad4d327fbbf991754dc079fb6914248f5615c0","scripts":{"lint":"eslint --fix","test":"node --test \"dist/test/*.test.js\"","build":"npm run clean && npm run build:server && npm run build:configpanel","clean":"rimraf dist public","watch":"tsc --watch","format":"npm run prettier && npm run lint","ci-lint":"eslint && prettier --check .","prettier":"prettier --write .","test:all":"node --test \"dist/test/**/*.test.js\"","build:all":"npm run build && npm test","build:server":"tsc","prepublishOnly":"npm run build","test:integration":"node --test \"dist/test/integration/*.test.js\"","build:configpanel":"vite build","build:all:integration":"npm run build && npm run test:all"},"signalk":{"appIcon":"./icon.svg","displayName":"Container Manager","screenshots":["./doc/screenshots/signalk-container-1.png","./doc/screenshots/signalk-container-2.png","./doc/screenshots/signalk-container-3.png"]},"_npmUser":{"name":"GitHub Actions","email":"npm-oidc-no-reply@github.com","trustedPublisher":{"id":"github","oidcConfigId":"oidc:ac86e6a6-7555-4a7a-aa96-7ed2220dbf64"}},"repository":{"url":"git+https://github.com/dirkwa/signalk-container.git","type":"git"},"_npmVersion":"11.16.0","description":"Shared container runtime management (Podman/Docker) for Signal K plugins","directories":{},"_nodeVersion":"24.18.0","dependencies":{"typebox":"^1.1.38","dockerode":"^5.0.0"},"_hasShrinkwrap":false,"devDependencies":{"jiti":"^2.7.0","vite":"^8.0.13","react":"^19.2.4","eslint":"^10.2.0","rimraf":"^6.1.3","globals":"^17.4.0","prettier":"^3.8.1","react-dom":"^19.2.4","@eslint/js":"^10.0.1","typescript":"^6.0.3","@types/node":"^22.0.0","@types/react":"^19.2.14","@types/express":"^5.0.6","@types/dockerode":"^4.0.1","@types/react-dom":"^19.2.3","typescript-eslint":"^8.58.0","@signalk/server-api":"latest","@vitejs/plugin-react":"^6.0.2","eslint-config-prettier":"^10.1.8","@module-federation/vite":"^1.5.0"},"_npmOperationalInternal":{"tmp":"tmp/signalk-container_1.25.4_1786389325673_0.06819154835385732","host":"s3://npm-registry-packages-npm-production"},"signalk-plugin-enabled-by-default":true},"1.25.5":{"name":"signalk-container","version":"1.25.5","keywords":["signalk-node-server-plugin","signalk-plugin-configurator"],"author":{"name":"Dirk Wahrheit","email":"dirkwahrheit@gmail.com"},"license":"MIT","_id":"signalk-container@1.25.5","maintainers":[{"name":"dirkwa","email":"dirkwahrheit@gmail.com"}],"homepage":"https://github.com/dirkwa/signalk-container#readme","bugs":{"url":"https://github.com/dirkwa/signalk-container/issues"},"dist":{"shasum":"18572bb62ae4beb4f532a4ba58ba052fbb648b83","tarball":"https://registry.npmjs.org/signalk-container/-/signalk-container-1.25.5.tgz","fileCount":140,"integrity":"sha512-XbsE5JkueRXF751CEvv6zQePVyNsCwTgkpD06wOm8PJpaGqk2ItQA1riOMQiiCUdX+jElWh32hAGpaThOrtC3g==","signatures":[{"sig":"MEUCIHfbjQ8rbH5g1r1JfywFacbFkszBAsoedrUVwBdnryt5AiEAgqsF3Uqc5I/XL7aDZZNlMHZvQ+m6TqT7Jtnmdwdmdp4=","keyid":"SHA256:DhQ8wR5APBvFHLF/+Tc+AYvPOdTpcIDqOhxsBHRwC7U"}],"attestations":{"url":"https://registry.npmjs.org/-/npm/v1/attestations/signalk-container@1.25.5","provenance":{"predicateType":"https://slsa.dev/provenance/v1"}},"unpackedSize":1845218},"main":"dist/index.js","type":"module","types":"./dist/index.d.ts","engines":{"node":">=22"},"exports":{".":"./dist/index.js","./types":{"types":"./dist/types.d.ts","import":"./dist/types.js"}},"gitHead":"5ec6d79f10dee32b109d3e37cc47fcb762a45e1d","scripts":{"lint":"eslint --fix","test":"node --test \"dist/test/*.test.js\"","build":"npm run clean && npm run build:server && npm run build:configpanel","clean":"rimraf dist public","watch":"tsc --watch","format":"npm run prettier && npm run lint","ci-lint":"eslint && prettier --check .","prettier":"prettier --write .","test:all":"node --test \"dist/test/**/*.test.js\"","build:all":"npm run build && npm test","build:server":"tsc","prepublishOnly":"npm run build","test:integration":"node --test \"dist/test/integration/*.test.js\"","build:configpanel":"vite build","build:all:integration":"npm run build && npm run test:all"},"signalk":{"appIcon":"./icon.svg","displayName":"Container Manager","screenshots":["./doc/screenshots/signalk-container-1.png","./doc/screenshots/signalk-container-2.png","./doc/screenshots/signalk-container-3.png"]},"_npmUser":{"name":"GitHub Actions","email":"npm-oidc-no-reply@github.com","trustedPublisher":{"id":"github","oidcConfigId":"oidc:ac86e6a6-7555-4a7a-aa96-7ed2220dbf64"}},"repository":{"url":"git+https://github.com/dirkwa/signalk-container.git","type":"git"},"_npmVersion":"11.16.0","description":"Shared container runtime management (Podman/Docker) for Signal K plugins","directories":{},"_nodeVersion":"24.18.0","dependencies":{"typebox":"^1.1.38","dockerode":"^5.0.0"},"_hasShrinkwrap":false,"devDependencies":{"jiti":"^2.7.0","vite":"^8.0.13","react":"^19.2.4","eslint":"^10.2.0","rimraf":"^6.1.3","globals":"^17.4.0","prettier":"^3.8.1","react-dom":"^19.2.4","@eslint/js":"^10.0.1","typescript":"^6.0.3","@types/node":"^22.0.0","@types/react":"^19.2.14","@types/express":"^5.0.6","@types/dockerode":"^4.0.1","@types/react-dom":"^19.2.3","typescript-eslint":"^8.58.0","@signalk/server-api":"latest","@vitejs/plugin-react":"^6.0.2","eslint-config-prettier":"^10.1.8","@module-federation/vite":"^1.5.0"},"_npmOperationalInternal":{"tmp":"tmp/signalk-container_1.25.5_1786391305312_0.6938037810272155","host":"s3://npm-registry-packages-npm-production"},"signalk-plugin-enabled-by-default":true},"1.26.0":{"name":"signalk-container","version":"1.26.0","keywords":["signalk-node-server-plugin","signalk-plugin-configurator"],"author":{"name":"Dirk Wahrheit","email":"dirkwahrheit@gmail.com"},"license":"MIT","_id":"signalk-container@1.26.0","maintainers":[{"name":"dirkwa","email":"dirkwahrheit@gmail.com"}],"homepage":"https://github.com/dirkwa/signalk-container#readme","bugs":{"url":"https://github.com/dirkwa/signalk-container/issues"},"dist":{"shasum":"721d456fe8d2882b6b21c58b4b069d1da194ef6b","tarball":"https://registry.npmjs.org/signalk-container/-/signalk-container-1.26.0.tgz","fileCount":140,"integrity":"sha512-GzKcwP1HWvNjiKX/1ukCkrKWuENdNKksxwZ1PXir2HVsv/dMuzC6gMABYO3yxmokPQ/Qy3OQHox2y5RLoA2+5Q==","signatures":[{"sig":"MEQCIACUu+IGOBv67+9Tkm+QvkF/9XWj3dvpr9Vp3MI5Zc5TAiBHxIoN1wpsWoP5778sd06gfdjMQ64Zmoehi+y+QfL6GQ==","keyid":"SHA256:DhQ8wR5APBvFHLF/+Tc+AYvPOdTpcIDqOhxsBHRwC7U"}],"attestations":{"url":"https://registry.npmjs.org/-/npm/v1/attestations/signalk-container@1.26.0","provenance":{"predicateType":"https://slsa.dev/provenance/v1"}},"unpackedSize":1878914},"main":"dist/index.js","type":"module","types":"./dist/index.d.ts","engines":{"node":">=22"},"exports":{".":"./dist/index.js","./types":{"types":"./dist/types.d.ts","import":"./dist/types.js"}},"gitHead":"cc1515775b03942dad6df6ffc8444837bc3332f9","scripts":{"lint":"eslint --fix","test":"node --test \"dist/test/*.test.js\"","build":"npm run clean && npm run build:server && npm run build:configpanel","clean":"rimraf dist public","watch":"tsc --watch","format":"npm run prettier && npm run lint","ci-lint":"eslint && prettier --check .","prettier":"prettier --write .","test:all":"node --test \"dist/test/**/*.test.js\"","build:all":"npm run build && npm test","build:server":"tsc","prepublishOnly":"npm run build","test:integration":"node --test \"dist/test/integration/*.test.js\"","build:configpanel":"vite build","build:all:integration":"npm run build && npm run test:all"},"signalk":{"appIcon":"./icon.svg","displayName":"Container Manager","screenshots":["./doc/screenshots/signalk-container-1.png","./doc/screenshots/signalk-container-2.png","./doc/screenshots/signalk-container-3.png"]},"_npmUser":{"name":"GitHub Actions","email":"npm-oidc-no-reply@github.com","trustedPublisher":{"id":"github","oidcConfigId":"oidc:ac86e6a6-7555-4a7a-aa96-7ed2220dbf64"}},"repository":{"url":"git+https://github.com/dirkwa/signalk-container.git","type":"git"},"_npmVersion":"11.17.0","description":"Shared container runtime management (Podman/Docker) for Signal K plugins","directories":{},"_nodeVersion":"24.19.0","dependencies":{"typebox":"^1.1.38","dockerode":"^5.0.0"},"_hasShrinkwrap":false,"devDependencies":{"jiti":"^2.7.0","vite":"^8.0.13","react":"^19.2.4","eslint":"^10.2.0","rimraf":"^6.1.3","globals":"^17.4.0","prettier":"^3.8.1","react-dom":"^19.2.4","@eslint/js":"^10.0.1","typescript":"^6.0.3","@types/node":"^22.0.0","@types/react":"^19.2.14","@types/express":"^5.0.6","@types/dockerode":"^4.0.1","@types/react-dom":"^19.2.3","typescript-eslint":"^8.58.0","@signalk/server-api":"latest","@vitejs/plugin-react":"^6.0.2","eslint-config-prettier":"^10.1.8","@module-federation/vite":"^1.5.0"},"_npmOperationalInternal":{"tmp":"tmp/signalk-container_1.26.0_1786737134576_0.6057227036165767","host":"s3://npm-registry-packages-npm-production"},"signalk-plugin-enabled-by-default":true},"1.27.0":{"name":"signalk-container","version":"1.27.0","keywords":["signalk-node-server-plugin","signalk-plugin-configurator"],"author":{"name":"Dirk Wahrheit","email":"dirkwahrheit@gmail.com"},"license":"MIT","_id":"signalk-container@1.27.0","maintainers":[{"name":"dirkwa","email":"dirkwahrheit@gmail.com"}],"homepage":"https://github.com/dirkwa/signalk-container#readme","bugs":{"url":"https://github.com/dirkwa/signalk-container/issues"},"dist":{"shasum":"d6e70170542555329803117453f6e688a767d62d","tarball":"https://registry.npmjs.org/signalk-container/-/signalk-container-1.27.0.tgz","fileCount":140,"integrity":"sha512-sUDJOloS5lccboTChJ9N5ywSGX/neXwUwJjnUyifrcGwOnMc8xyp0w4tKHYlkYXOFAxpKhHlk3T3ExhbyoaTXQ==","signatures":[{"sig":"MEYCIQD0ICR450Ts4nfTIZkVyTEMsr0m2m3Sh7AbiKCpv4o49QIhALaEIanc19mHPqzrbnVxUTjxF38/wUgkOv+AhlMYJMx3","keyid":"SHA256:DhQ8wR5APBvFHLF/+Tc+AYvPOdTpcIDqOhxsBHRwC7U"}],"attestations":{"url":"https://registry.npmjs.org/-/npm/v1/attestations/signalk-container@1.27.0","provenance":{"predicateType":"https://slsa.dev/provenance/v1"}},"unpackedSize":1896723},"main":"dist/index.js","type":"module","types":"./dist/index.d.ts","engines":{"node":">=22"},"exports":{".":"./dist/index.js","./types":{"types":"./dist/types.d.ts","import":"./dist/types.js"}},"gitHead":"a0452fe193330842cceae748f19eac3750379090","scripts":{"lint":"eslint --fix","test":"node --test \"dist/test/*.test.js\"","build":"npm run clean && npm run build:server && npm run build:configpanel","clean":"rimraf dist public","watch":"tsc --watch","format":"npm run prettier && npm run lint","ci-lint":"eslint && prettier --check .","prettier":"prettier --write .","test:all":"node --test \"dist/test/**/*.test.js\"","build:all":"npm run build && npm test","build:server":"tsc","prepublishOnly":"npm run build","test:integration":"node --test \"dist/test/integration/*.test.js\"","build:configpanel":"vite build","build:all:integration":"npm run build && npm run test:all"},"signalk":{"appIcon":"./icon.svg","displayName":"Container Manager","screenshots":["./doc/screenshots/signalk-container-1.png","./doc/screenshots/signalk-container-2.png","./doc/screenshots/signalk-container-3.png"]},"_npmUser":{"name":"GitHub Actions","email":"npm-oidc-no-reply@github.com","trustedPublisher":{"id":"github","oidcConfigId":"oidc:ac86e6a6-7555-4a7a-aa96-7ed2220dbf64"}},"repository":{"url":"git+https://github.com/dirkwa/signalk-container.git","type":"git"},"_npmVersion":"11.17.0","description":"Shared container runtime management (Podman/Docker) for Signal K plugins","directories":{},"_nodeVersion":"24.19.0","dependencies":{"typebox":"^1.1.38","dockerode":"^5.0.0"},"_hasShrinkwrap":false,"devDependencies":{"jiti":"^2.7.0","vite":"^8.0.13","react":"^19.2.4","eslint":"^10.2.0","rimraf":"^6.1.3","globals":"^17.4.0","prettier":"^3.8.1","react-dom":"^19.2.4","@eslint/js":"^10.0.1","typescript":"^6.0.3","@types/node":"^22.0.0","@types/react":"^19.2.14","@types/express":"^5.0.6","@types/dockerode":"^4.0.1","@types/react-dom":"^19.2.3","typescript-eslint":"^8.58.0","@signalk/server-api":"latest","@vitejs/plugin-react":"^6.0.2","eslint-config-prettier":"^10.1.8","@module-federation/vite":"^1.5.0"},"_npmOperationalInternal":{"tmp":"tmp/signalk-container_1.27.0_1786908772223_0.8470552358066026","host":"s3://npm-registry-packages-npm-production"},"signalk-plugin-enabled-by-default":true},"1.28.0":{"name":"signalk-container","version":"1.28.0","keywords":["signalk-node-server-plugin","signalk-plugin-configurator"],"author":{"name":"Dirk Wahrheit","email":"dirkwahrheit@gmail.com"},"license":"MIT","_id":"signalk-container@1.28.0","maintainers":[{"name":"dirkwa","email":"dirkwahrheit@gmail.com"}],"homepage":"https://github.com/dirkwa/signalk-container#readme","bugs":{"url":"https://github.com/dirkwa/signalk-container/issues"},"dist":{"shasum":"334eae90c63b0687034bf054d4713de48c48718d","tarball":"https://registry.npmjs.org/signalk-container/-/signalk-container-1.28.0.tgz","fileCount":140,"integrity":"sha512-PMTVprLnJGWYWg+VQ8tabnhwG5O6UkM2GgXwFhxYJdmev1+2SMXLzAsxPgIkGE9R94MZJMoaTXTQTYukCfntCQ==","signatures":[{"sig":"MEMCHxfqqjYe5IJH9wO9arL2cEbJ+RrkkYg7CP+NaK/GZeYCIHvWfqVuKGxGwWrb7i8mdxHlrWGNIfS1Qj6qCxgoQdyH","keyid":"SHA256:DhQ8wR5APBvFHLF/+Tc+AYvPOdTpcIDqOhxsBHRwC7U"}],"attestations":{"url":"https://registry.npmjs.org/-/npm/v1/attestations/signalk-container@1.28.0","provenance":{"predicateType":"https://slsa.dev/provenance/v1"}},"unpackedSize":1922771},"main":"dist/index.js","type":"module","types":"./dist/index.d.ts","engines":{"node":">=22"},"exports":{".":"./dist/index.js","./types":{"types":"./dist/types.d.ts","import":"./dist/types.js"}},"gitHead":"be1d914a0f09404c37ebbec93dd86297d6756c7a","scripts":{"lint":"eslint --fix","test":"node --test \"dist/test/*.test.js\"","build":"npm run clean && npm run build:server && npm run build:configpanel","clean":"rimraf dist public","watch":"tsc --watch","format":"npm run prettier && npm run lint","ci-lint":"eslint && prettier --check .","prettier":"prettier --write .","test:all":"node --test \"dist/test/**/*.test.js\"","build:all":"npm run build && npm test","build:server":"tsc","prepublishOnly":"npm run build","test:integration":"node --test \"dist/test/integration/*.test.js\"","build:configpanel":"vite build","build:all:integration":"npm run build && npm run test:all"},"signalk":{"appIcon":"./icon.svg","displayName":"Container Manager","screenshots":["./doc/screenshots/signalk-container-1.png","./doc/screenshots/signalk-container-2.png","./doc/screenshots/signalk-container-3.png"]},"_npmUser":{"name":"GitHub Actions","email":"npm-oidc-no-reply@github.com","trustedPublisher":{"id":"github","oidcConfigId":"oidc:ac86e6a6-7555-4a7a-aa96-7ed2220dbf64"}},"repository":{"url":"git+https://github.com/dirkwa/signalk-container.git","type":"git"},"_npmVersion":"11.17.0","description":"Shared container runtime management (Podman/Docker) for Signal K plugins","directories":{},"_nodeVersion":"24.19.0","dependencies":{"typebox":"^1.1.38","dockerode":"^5.0.0"},"_hasShrinkwrap":false,"devDependencies":{"jiti":"^2.7.0","vite":"^8.0.13","react":"^19.2.4","eslint":"^10.2.0","rimraf":"^6.1.3","globals":"^17.4.0","prettier":"^3.8.1","react-dom":"^19.2.4","@eslint/js":"^10.0.1","typescript":"^6.0.3","@types/node":"^22.0.0","@types/react":"^19.2.14","@types/express":"^5.0.6","@types/dockerode":"^4.0.1","@types/react-dom":"^19.2.3","typescript-eslint":"^8.58.0","@signalk/server-api":"latest","@vitejs/plugin-react":"^6.0.2","eslint-config-prettier":"^10.1.8","@module-federation/vite":"^1.5.0"},"_npmOperationalInternal":{"tmp":"tmp/signalk-container_1.28.0_1786999796110_0.17754489457320877","host":"s3://npm-registry-packages-npm-production"},"signalk-plugin-enabled-by-default":true},"1.28.1":{"name":"signalk-container","version":"1.28.1","keywords":["signalk-node-server-plugin","signalk-plugin-configurator"],"author":{"name":"Dirk Wahrheit","email":"dirkwahrheit@gmail.com"},"license":"MIT","_id":"signalk-container@1.28.1","maintainers":[{"name":"dirkwa","email":"dirkwahrheit@gmail.com"}],"homepage":"https://github.com/dirkwa/signalk-container#readme","bugs":{"url":"https://github.com/dirkwa/signalk-container/issues"},"dist":{"shasum":"8e28867b7f4db4fe6e0ee1979f8e1ee607427918","tarball":"https://registry.npmjs.org/signalk-container/-/signalk-container-1.28.1.tgz","fileCount":140,"integrity":"sha512-VhKyNA74jBU3snTrGbmM2NDFV3JiqAzWm+JgQa0wTSNH4cDC9zH3fKSKb7KdOPStpFMXXswTP8LoahkCLf8HMQ==","signatures":[{"sig":"MEYCIQCRitPw2ArUr+ETxvWyIHYpu0Yk7E+LtqBq4W2WkZDH8AIhANnsa4AGYlKyuzyeh3WIt9Fy5nKD71+QB+/ZEMl98d+G","keyid":"SHA256:DhQ8wR5APBvFHLF/+Tc+AYvPOdTpcIDqOhxsBHRwC7U"}],"attestations":{"url":"https://registry.npmjs.org/-/npm/v1/attestations/signalk-container@1.28.1","provenance":{"predicateType":"https://slsa.dev/provenance/v1"}},"unpackedSize":1936972},"main":"dist/index.js","type":"module","types":"./dist/index.d.ts","engines":{"node":">=22"},"exports":{".":"./dist/index.js","./types":{"types":"./dist/types.d.ts","import":"./dist/types.js"}},"gitHead":"998569c5372a69ed28830cec31e1cb8428d0ffb0","scripts":{"lint":"eslint --fix","test":"node --test \"dist/test/*.test.js\"","build":"npm run clean && npm run build:server && npm run build:configpanel","clean":"rimraf dist public","watch":"tsc --watch","format":"npm run prettier && npm run lint","ci-lint":"eslint && prettier --check .","prettier":"prettier --write .","test:all":"node --test \"dist/test/**/*.test.js\"","build:all":"npm run build && npm test","build:server":"tsc","prepublishOnly":"npm run build","test:integration":"node --test \"dist/test/integration/*.test.js\"","build:configpanel":"vite build","build:all:integration":"npm run build && npm run test:all"},"signalk":{"appIcon":"./icon.svg","displayName":"Container Manager","screenshots":["./doc/screenshots/signalk-container-1.png","./doc/screenshots/signalk-container-2.png","./doc/screenshots/signalk-container-3.png"]},"_npmUser":{"name":"GitHub Actions","email":"npm-oidc-no-reply@github.com","trustedPublisher":{"id":"github","oidcConfigId":"oidc:ac86e6a6-7555-4a7a-aa96-7ed2220dbf64"}},"repository":{"url":"git+https://github.com/dirkwa/signalk-container.git","type":"git"},"_npmVersion":"11.17.0","description":"Shared container runtime management (Podman/Docker) for Signal K plugins","directories":{},"_nodeVersion":"24.19.0","dependencies":{"typebox":"^1.1.38","dockerode":"^5.0.0"},"_hasShrinkwrap":false,"devDependencies":{"jiti":"^2.7.0","vite":"^8.0.13","react":"^19.2.4","eslint":"^10.2.0","rimraf":"^6.1.3","globals":"^17.4.0","prettier":"^3.8.1","react-dom":"^19.2.4","@eslint/js":"^10.0.1","typescript":"^6.0.3","@types/node":"^22.0.0","@types/react":"^19.2.14","@types/express":"^5.0.6","@types/dockerode":"^4.0.1","@types/react-dom":"^19.2.3","typescript-eslint":"^8.58.0","@signalk/server-api":"latest","@vitejs/plugin-react":"^6.0.2","eslint-config-prettier":"^10.1.8","@module-federation/vite":"^1.5.0"},"_npmOperationalInternal":{"tmp":"tmp/signalk-container_1.28.1_1787049442469_0.08550418769239965","host":"s3://npm-registry-packages-npm-production"},"signalk-plugin-enabled-by-default":true},"1.29.0":{"name":"signalk-container","version":"1.29.0","keywords":["signalk-node-server-plugin","signalk-plugin-configurator"],"author":{"name":"Dirk Wahrheit","email":"dirkwahrheit@gmail.com"},"license":"MIT","_id":"signalk-container@1.29.0","maintainers":[{"name":"dirkwa","email":"dirkwahrheit@gmail.com"}],"homepage":"https://github.com/dirkwa/signalk-container#readme","bugs":{"url":"https://github.com/dirkwa/signalk-container/issues"},"dist":{"shasum":"25dc8fcfa8e5299f381c63307ba02015b6a7a32c","tarball":"https://registry.npmjs.org/signalk-container/-/signalk-container-1.29.0.tgz","fileCount":140,"integrity":"sha512-v1dl/pJu7dqGLSvJ+c7bvmMag8+gWCl+DJJZVCsmfty6NYAqDonJ/HVldCqaNppT64vRGeveGSR1RHhplg2XdQ==","signatures":[{"sig":"MEYCIQDDVnFDRX5VK2E881Nbp26xlw+YQheja7qvL6m2wueMNQIhAPYxHqWNpfP2TZFa/4SEnsFpWB4YVNaBqGyZEl/H3dA/","keyid":"SHA256:DhQ8wR5APBvFHLF/+Tc+AYvPOdTpcIDqOhxsBHRwC7U"}],"attestations":{"url":"https://registry.npmjs.org/-/npm/v1/attestations/signalk-container@1.29.0","provenance":{"predicateType":"https://slsa.dev/provenance/v1"}},"unpackedSize":1950556},"main":"dist/index.js","type":"module","types":"./dist/index.d.ts","engines":{"node":">=22"},"exports":{".":"./dist/index.js","./types":{"types":"./dist/types.d.ts","import":"./dist/types.js"}},"gitHead":"f3ee9bc6dae504d091cddb72bac3b6fc53fee0c7","scripts":{"lint":"eslint --fix","test":"node --test \"dist/test/*.test.js\"","build":"npm run clean && npm run build:server && npm run build:configpanel","clean":"rimraf dist public","watch":"tsc --watch","format":"npm run prettier && npm run lint","ci-lint":"eslint && prettier --check .","prettier":"prettier --write .","test:all":"node --test \"dist/test/**/*.test.js\"","build:all":"npm run build && npm test","build:server":"tsc","prepublishOnly":"npm run build","test:integration":"node --test \"dist/test/integration/*.test.js\"","build:configpanel":"vite build","build:all:integration":"npm run build && npm run test:all"},"signalk":{"appIcon":"./icon.svg","displayName":"Container Manager","screenshots":["./doc/screenshots/signalk-container-1.png","./doc/screenshots/signalk-container-2.png","./doc/screenshots/signalk-container-3.png"]},"_npmUser":{"name":"GitHub Actions","email":"npm-oidc-no-reply@github.com","trustedPublisher":{"id":"github","oidcConfigId":"oidc:ac86e6a6-7555-4a7a-aa96-7ed2220dbf64"}},"repository":{"url":"git+https://github.com/dirkwa/signalk-container.git","type":"git"},"_npmVersion":"11.17.0","description":"Shared container runtime management (Podman/Docker) for Signal K plugins","directories":{},"_nodeVersion":"24.19.0","dependencies":{"typebox":"^1.1.38","dockerode":"^5.0.0"},"_hasShrinkwrap":false,"devDependencies":{"jiti":"^2.7.0","vite":"^8.0.13","react":"^19.2.4","eslint":"^10.2.0","rimraf":"^6.1.3","globals":"^17.4.0","prettier":"^3.8.1","react-dom":"^19.2.4","@eslint/js":"^10.0.1","typescript":"^6.0.3","@types/node":"^22.0.0","@types/react":"^19.2.14","@types/express":"^5.0.6","@types/dockerode":"^4.0.1","@types/react-dom":"^19.2.3","typescript-eslint":"^8.58.0","@signalk/server-api":"latest","@vitejs/plugin-react":"^6.0.2","eslint-config-prettier":"^10.1.8","@module-federation/vite":"^1.5.0"},"_npmOperationalInternal":{"tmp":"tmp/signalk-container_1.29.0_1787088258561_0.011586331724227739","host":"s3://npm-registry-packages-npm-production"},"signalk-plugin-enabled-by-default":true},"1.30.0":{"name":"signalk-container","version":"1.30.0","keywords":["signalk-node-server-plugin","signalk-plugin-configurator"],"author":{"name":"Dirk Wahrheit","email":"dirkwahrheit@gmail.com"},"license":"MIT","_id":"signalk-container@1.30.0","maintainers":[{"name":"dirkwa","email":"dirkwahrheit@gmail.com"}],"homepage":"https://github.com/dirkwa/signalk-container#readme","bugs":{"url":"https://github.com/dirkwa/signalk-container/issues"},"dist":{"shasum":"c71f314644561a650f2b11f69f90eec3fb0f8bda","tarball":"https://registry.npmjs.org/signalk-container/-/signalk-container-1.30.0.tgz","fileCount":140,"integrity":"sha512-7L+UScV/NdXyi2fHlJ0Ah+4JVSxiprPaeTS94i5fr1zBlw8e86UMw4h4fm/dF2RUP9XqtMSn1E/ktNXNWmZE+w==","signatures":[{"sig":"MEUCIBXNfrJGuY7YjQlHu9sxSkalT1QF8MyalLKLfIE/qji0AiEAgQeJdBUwhsjuOfML+8GiDDFSnk7wvXwl8vKpuzvYvSc=","keyid":"SHA256:DhQ8wR5APBvFHLF/+Tc+AYvPOdTpcIDqOhxsBHRwC7U"}],"attestations":{"url":"https://registry.npmjs.org/-/npm/v1/attestations/signalk-container@1.30.0","provenance":{"predicateType":"https://slsa.dev/provenance/v1"}},"unpackedSize":2006757},"main":"dist/index.js","type":"module","types":"./dist/index.d.ts","engines":{"node":">=22"},"exports":{".":"./dist/index.js","./types":{"types":"./dist/types.d.ts","import":"./dist/types.js"}},"gitHead":"75978d56045a23129c3ed0adb4b7cbc154e1d8c2","scripts":{"lint":"eslint --fix","test":"node --test \"dist/test/*.test.js\"","build":"npm run clean && npm run build:server && npm run build:configpanel","clean":"rimraf dist public","watch":"tsc --watch","format":"npm run prettier && npm run lint","ci-lint":"eslint && prettier --check .","prettier":"prettier --write .","test:all":"node --test \"dist/test/**/*.test.js\"","build:all":"npm run build && npm test","build:server":"tsc","prepublishOnly":"npm run build","test:integration":"node --test \"dist/test/integration/*.test.js\"","build:configpanel":"vite build","build:all:integration":"npm run build && npm run test:all"},"signalk":{"appIcon":"./icon.svg","displayName":"Container Manager","screenshots":["./doc/screenshots/signalk-container-1.png","./doc/screenshots/signalk-container-2.png","./doc/screenshots/signalk-container-3.png"]},"_npmUser":{"name":"GitHub Actions","email":"npm-oidc-no-reply@github.com","trustedPublisher":{"id":"github","oidcConfigId":"oidc:ac86e6a6-7555-4a7a-aa96-7ed2220dbf64"}},"repository":{"url":"git+https://github.com/dirkwa/signalk-container.git","type":"git"},"_npmVersion":"11.17.0","description":"Shared container runtime management (Podman/Docker) for Signal K plugins","directories":{},"_nodeVersion":"24.19.0","dependencies":{"typebox":"^1.1.38","dockerode":"^5.0.0"},"_hasShrinkwrap":false,"devDependencies":{"jiti":"^2.7.0","vite":"^8.0.13","react":"^19.2.4","eslint":"^10.2.0","rimraf":"^6.1.3","globals":"^17.4.0","prettier":"^3.8.1","react-dom":"^19.2.4","@eslint/js":"^10.0.1","typescript":"^6.0.3","@types/node":"^22.0.0","@types/react":"^19.2.14","@types/express":"^5.0.6","@types/dockerode":"^4.0.1","@types/react-dom":"^19.2.3","typescript-eslint":"^8.58.0","@signalk/server-api":"latest","@vitejs/plugin-react":"^6.0.2","eslint-config-prettier":"^10.1.8","@module-federation/vite":"^1.5.0"},"_npmOperationalInternal":{"tmp":"tmp/signalk-container_1.30.0_1787517349069_0.686849765288156","host":"s3://npm-registry-packages-npm-production"},"signalk-plugin-enabled-by-default":true},"1.31.0":{"name":"signalk-container","version":"1.31.0","keywords":["signalk-node-server-plugin","signalk-plugin-configurator"],"author":{"name":"Dirk Wahrheit","email":"dirkwahrheit@gmail.com"},"license":"MIT","_id":"signalk-container@1.31.0","maintainers":[{"name":"dirkwa","email":"dirkwahrheit@gmail.com"}],"homepage":"https://github.com/dirkwa/signalk-container#readme","bugs":{"url":"https://github.com/dirkwa/signalk-container/issues"},"dist":{"shasum":"f287c0fb049a6900c9bff50ac1ac1bda63441334","tarball":"https://registry.npmjs.org/signalk-container/-/signalk-container-1.31.0.tgz","fileCount":140,"integrity":"sha512-eabJPsy/Fuo2SsZj2j2EPhF5LQ1QDFGaxYQQo7AsGDu9781/NCCGK+wlKVlfO5ybduUlBwSWLqqHbyu7DoAG8Q==","signatures":[{"sig":"MEUCIQD7RPsU5TvK9JdkgJc0psFniY63Nw7V3nLNiU9ATAhN+wIgWDTDGgudFnWBE/fAP+OhyqMy3CeST0zVxiX9HNzG4ng=","keyid":"SHA256:DhQ8wR5APBvFHLF/+Tc+AYvPOdTpcIDqOhxsBHRwC7U"}],"attestations":{"url":"https://registry.npmjs.org/-/npm/v1/attestations/signalk-container@1.31.0","provenance":{"predicateType":"https://slsa.dev/provenance/v1"}},"unpackedSize":2054209},"main":"dist/index.js","type":"module","types":"./dist/index.d.ts","engines":{"node":">=22"},"exports":{".":"./dist/index.js","./types":{"types":"./dist/types.d.ts","import":"./dist/types.js"}},"gitHead":"66dce4af4543395182424297ed0ccab89d1716df","scripts":{"lint":"eslint --fix","test":"node -e \"require('node:fs').mkdirSync('test-results',{recursive:true})\" && node --test --test-concurrency=1 --test-reporter=spec --test-reporter-destination=stdout --test-reporter=junit --test-reporter-destination=test-results/junit.xml \"dist/test/*.test.js\"","build":"npm run clean && npm run build:server && npm run build:configpanel && npm run check:home-paths","clean":"rimraf dist public","watch":"tsc --watch","format":"npm run prettier && npm run lint","ci-lint":"eslint && prettier --check .","prettier":"prettier --write .","test:all":"node --test \"dist/test/**/*.test.js\"","build:all":"npm run build && npm test","build:server":"tsc","prepublishOnly":"npm run build","check:home-paths":"node dist/scripts/check-home-paths.js","test:integration":"node --test \"dist/test/integration/*.test.js\"","build:configpanel":"vite build","build:all:integration":"npm run build && npm run test:all"},"signalk":{"appIcon":"./icon.svg","displayName":"Container Manager","screenshots":["./doc/screenshots/signalk-container-1.png","./doc/screenshots/signalk-container-2.png","./doc/screenshots/signalk-container-3.png"]},"_npmUser":{"name":"GitHub Actions","email":"npm-oidc-no-reply@github.com","trustedPublisher":{"id":"github","oidcConfigId":"oidc:ac86e6a6-7555-4a7a-aa96-7ed2220dbf64"}},"repository":{"url":"git+https://github.com/dirkwa/signalk-container.git","type":"git"},"_npmVersion":"11.17.0","description":"Shared container runtime management (Podman/Docker) for Signal K plugins","directories":{},"_nodeVersion":"24.19.0","dependencies":{"typebox":"^1.1.38","dockerode":"^5.0.0"},"_hasShrinkwrap":false,"devDependencies":{"jiti":"^2.7.0","vite":"^8.0.13","react":"^19.2.4","eslint":"^10.2.0","rimraf":"^6.1.3","globals":"^17.4.0","prettier":"^3.8.1","react-dom":"^19.2.4","@eslint/js":"^10.0.1","typescript":"^6.0.3","@types/node":"^22.0.0","@types/react":"^19.2.14","@types/express":"^5.0.6","@types/dockerode":"^4.0.1","@types/react-dom":"^19.2.3","typescript-eslint":"^8.58.0","@signalk/server-api":"latest","@vitejs/plugin-react":"^6.0.2","eslint-config-prettier":"^10.1.8","@module-federation/vite":"^1.5.0"},"_npmOperationalInternal":{"tmp":"tmp/signalk-container_1.31.0_1788036319936_0.8756903917379035","host":"s3://npm-registry-packages-npm-production"},"signalk-plugin-enabled-by-default":true},"1.32.0":{"name":"signalk-container","version":"1.32.0","keywords":["signalk-node-server-plugin","signalk-plugin-configurator"],"author":{"name":"Dirk Wahrheit","email":"dirkwahrheit@gmail.com"},"license":"MIT","_id":"signalk-container@1.32.0","maintainers":[{"name":"dirkwa","email":"dirkwahrheit@gmail.com"}],"homepage":"https://github.com/dirkwa/signalk-container#readme","bugs":{"url":"https://github.com/dirkwa/signalk-container/issues"},"dist":{"shasum":"eac1a13381482ad0ff91943396e0bb2a01387e32","tarball":"https://registry.npmjs.org/signalk-container/-/signalk-container-1.32.0.tgz","fileCount":140,"integrity":"sha512-iaRiqqDqWaYp/WHTJSRiZHMsP0BNyXxPlYBu3AOaOJfVlzIqErPd0ildhrYTrZrYoa7YtLUQaBA/CuqXzKTjjA==","signatures":[{"sig":"MEQCIAOGHhzRE3qYFmDBPX+DAD7qU8fSuAaVk9q4DCCq8YFMAiB3VXMwIuWTS8JOHitIm+/f12q8ZAwEFtdxzYJstVynNw==","keyid":"SHA256:DhQ8wR5APBvFHLF/+Tc+AYvPOdTpcIDqOhxsBHRwC7U"}],"attestations":{"url":"https://registry.npmjs.org/-/npm/v1/attestations/signalk-container@1.32.0","provenance":{"predicateType":"https://slsa.dev/provenance/v1"}},"unpackedSize":2076360},"main":"dist/index.js","type":"module","types":"./dist/index.d.ts","engines":{"node":">=22"},"exports":{".":"./dist/index.js","./types":{"types":"./dist/types.d.ts","import":"./dist/types.js"}},"gitHead":"12f077749de3d209369e8562397dac5a4514cd3d","scripts":{"lint":"eslint --fix","test":"node -e \"require('node:fs').mkdirSync('test-results',{recursive:true})\" && node --test --test-concurrency=1 --test-reporter=spec --test-reporter-destination=stdout --test-reporter=junit --test-reporter-destination=test-results/junit.xml \"dist/test/*.test.js\"","build":"npm run clean && npm run build:server && npm run build:configpanel && npm run check:home-paths","clean":"rimraf dist public","watch":"tsc --watch","format":"npm run prettier && npm run lint","ci-lint":"eslint && prettier --check .","prettier":"prettier --write .","test:all":"node --test \"dist/test/**/*.test.js\"","build:all":"npm run build && npm test","build:server":"tsc","prepublishOnly":"npm run build","check:home-paths":"node dist/scripts/check-home-paths.js","test:integration":"node --test \"dist/test/integration/*.test.js\"","build:configpanel":"vite build","build:all:integration":"npm run build && npm run test:all"},"signalk":{"appIcon":"./icon.svg","displayName":"Container Manager","screenshots":["./doc/screenshots/signalk-container-1.png","./doc/screenshots/signalk-container-2.png","./doc/screenshots/signalk-container-3.png"]},"_npmUser":{"name":"GitHub Actions","email":"npm-oidc-no-reply@github.com","trustedPublisher":{"id":"github","oidcConfigId":"oidc:ac86e6a6-7555-4a7a-aa96-7ed2220dbf64"}},"repository":{"url":"git+https://github.com/dirkwa/signalk-container.git","type":"git"},"_npmVersion":"11.17.0","description":"Shared container runtime management (Podman/Docker) for Signal K plugins","directories":{},"_nodeVersion":"24.19.0","dependencies":{"typebox":"^1.1.38","dockerode":"^5.0.0"},"_hasShrinkwrap":false,"devDependencies":{"jiti":"^2.7.0","vite":"^8.0.13","react":"^19.2.4","eslint":"^10.2.0","rimraf":"^6.1.3","globals":"^17.4.0","prettier":"^3.8.1","react-dom":"^19.2.4","@eslint/js":"^10.0.1","typescript":"^6.0.3","@types/node":"^22.0.0","@types/react":"^19.2.14","@types/express":"^5.0.6","@types/dockerode":"^4.0.1","@types/react-dom":"^19.2.3","typescript-eslint":"^8.58.0","@signalk/server-api":"latest","@vitejs/plugin-react":"^6.0.2","eslint-config-prettier":"^10.1.8","@module-federation/vite":"^1.5.0"},"_npmOperationalInternal":{"tmp":"tmp/signalk-container_1.32.0_1788117202492_0.396153458205007","host":"s3://npm-registry-packages-npm-production"},"signalk-plugin-enabled-by-default":true},"1.32.1":{"name":"signalk-container","version":"1.32.1","keywords":["signalk-node-server-plugin","signalk-plugin-configurator"],"author":{"name":"Dirk Wahrheit","email":"dirkwahrheit@gmail.com"},"license":"MIT","_id":"signalk-container@1.32.1","maintainers":[{"name":"dirkwa","email":"dirkwahrheit@gmail.com"}],"homepage":"https://github.com/dirkwa/signalk-container#readme","bugs":{"url":"https://github.com/dirkwa/signalk-container/issues"},"dist":{"shasum":"261440c9ef89992b399f0b411c4ab4bb3f6581ce","tarball":"https://registry.npmjs.org/signalk-container/-/signalk-container-1.32.1.tgz","fileCount":140,"integrity":"sha512-qNIZqejZ7j5j23cR2NsA+lvZH3pMXid/dKtc1l6ISJTTbUkvpCLkgaEZumnvM3AU50hygvqy3rkmq7QsjmuQlw==","signatures":[{"sig":"MEUCIQDZu1ajrIGZ524QdXEJcjAqY5d+G0eUMbqatjZmSIRABwIgM0UqV0PiIkDPrqDCtUKMbsr1IR7DLJ5eIe/5vRsiKk4=","keyid":"SHA256:DhQ8wR5APBvFHLF/+Tc+AYvPOdTpcIDqOhxsBHRwC7U"}],"attestations":{"url":"https://registry.npmjs.org/-/npm/v1/attestations/signalk-container@1.32.1","provenance":{"predicateType":"https://slsa.dev/provenance/v1"}},"unpackedSize":2078921},"main":"dist/index.js","type":"module","types":"./dist/index.d.ts","engines":{"node":">=22"},"exports":{".":"./dist/index.js","./types":{"types":"./dist/types.d.ts","import":"./dist/types.js"}},"gitHead":"34ff9da0bc5a90dd102165081553e786aac31afb","scripts":{"lint":"eslint --fix","test":"node -e \"require('node:fs').mkdirSync('test-results',{recursive:true})\" && node --test --test-concurrency=1 --test-reporter=spec --test-reporter-destination=stdout --test-reporter=junit --test-reporter-destination=test-results/junit.xml \"dist/test/*.test.js\"","build":"npm run clean && npm run build:server && npm run build:configpanel && npm run check:home-paths","clean":"rimraf dist public","watch":"tsc --watch","format":"npm run prettier && npm run lint","ci-lint":"eslint && prettier --check .","prettier":"prettier --write .","test:all":"node --test \"dist/test/**/*.test.js\"","build:all":"npm run build && npm test","build:server":"tsc","prepublishOnly":"npm run build","check:home-paths":"node dist/scripts/check-home-paths.js","test:integration":"node --test \"dist/test/integration/*.test.js\"","build:configpanel":"vite build","build:all:integration":"npm run build && npm run test:all"},"signalk":{"appIcon":"./icon.svg","displayName":"Container Manager","screenshots":["./doc/screenshots/signalk-container-1.png","./doc/screenshots/signalk-container-2.png","./doc/screenshots/signalk-container-3.png"]},"_npmUser":{"name":"GitHub Actions","email":"npm-oidc-no-reply@github.com","trustedPublisher":{"id":"github","oidcConfigId":"oidc:ac86e6a6-7555-4a7a-aa96-7ed2220dbf64"}},"repository":{"url":"git+https://github.com/dirkwa/signalk-container.git","type":"git"},"_npmVersion":"11.17.0","description":"Shared container runtime management (Podman/Docker) for Signal K plugins","directories":{},"_nodeVersion":"24.19.0","dependencies":{"typebox":"^1.1.38","dockerode":"^5.0.0"},"_hasShrinkwrap":false,"devDependencies":{"jiti":"^2.7.0","vite":"^8.0.13","react":"^19.2.4","eslint":"^10.2.0","rimraf":"^6.1.3","globals":"^17.4.0","prettier":"^3.8.1","react-dom":"^19.2.4","@eslint/js":"^10.0.1","typescript":"^6.0.3","@types/node":"^22.0.0","@types/react":"^19.2.14","@types/express":"^5.0.6","@types/dockerode":"^4.0.1","@types/react-dom":"^19.2.3","typescript-eslint":"^8.58.0","@signalk/server-api":"latest","@vitejs/plugin-react":"^6.0.2","eslint-config-prettier":"^10.1.8","@module-federation/vite":"^1.5.0"},"_npmOperationalInternal":{"tmp":"tmp/signalk-container_1.32.1_1788123175030_0.8541919635094322","host":"s3://npm-registry-packages-npm-production"},"signalk-plugin-enabled-by-default":true},"1.32.2":{"name":"signalk-container","version":"1.32.2","keywords":["signalk-node-server-plugin","signalk-plugin-configurator"],"author":{"name":"Dirk Wahrheit","email":"dirkwahrheit@gmail.com"},"license":"MIT","_id":"signalk-container@1.32.2","maintainers":[{"name":"dirkwa","email":"dirkwahrheit@gmail.com"}],"homepage":"https://github.com/dirkwa/signalk-container#readme","bugs":{"url":"https://github.com/dirkwa/signalk-container/issues"},"dist":{"shasum":"047c6925eb1af19b433666bb7ef09288cbcfdadd","tarball":"https://registry.npmjs.org/signalk-container/-/signalk-container-1.32.2.tgz","fileCount":140,"integrity":"sha512-Whp8AdHCJncq22NveFTAreWpg98EKKxnIJMRpkCiwHyAFQp/rsKLR8z0Ui4ET3Rd1AhhwHlNUD4bRjJOQN0IVQ==","signatures":[{"sig":"MEYCIQDHeMsQEcK58eg2TeYBDkXkYb1kOXUII4N4WI2JL5eV/AIhAJEU3erCK0/BdVB0XwxdEkY92kPmqOW+yCoth5AHijo+","keyid":"SHA256:DhQ8wR5APBvFHLF/+Tc+AYvPOdTpcIDqOhxsBHRwC7U"}],"attestations":{"url":"https://registry.npmjs.org/-/npm/v1/attestations/signalk-container@1.32.2","provenance":{"predicateType":"https://slsa.dev/provenance/v1"}},"unpackedSize":2078917},"main":"dist/index.js","type":"module","types":"./dist/index.d.ts","engines":{"node":">=22"},"exports":{".":"./dist/index.js","./types":{"types":"./dist/types.d.ts","import":"./dist/types.js"}},"gitHead":"942748806687041e2d3355119d3c8e36fe5a7594","scripts":{"lint":"eslint --fix","test":"node -e \"require('node:fs').mkdirSync('test-results',{recursive:true})\" && node --test --test-concurrency=1 --test-reporter=spec --test-reporter-destination=stdout --test-reporter=junit --test-reporter-destination=test-results/junit.xml \"dist/test/*.test.js\"","build":"npm run clean && npm run build:server && npm run build:configpanel && npm run check:home-paths","clean":"rimraf dist public","watch":"tsc --watch","format":"npm run prettier && npm run lint","ci-lint":"eslint && prettier --check .","prettier":"prettier --write .","test:all":"node --test \"dist/test/**/*.test.js\"","build:all":"npm run build && npm test","build:server":"tsc","prepublishOnly":"npm run build","check:home-paths":"node dist/scripts/check-home-paths.js","test:integration":"node --test \"dist/test/integration/*.test.js\"","build:configpanel":"vite build","build:all:integration":"npm run build && npm run test:all"},"signalk":{"appIcon":"./icon.svg","displayName":"Container Manager","screenshots":["./doc/screenshots/signalk-container-1.png","./doc/screenshots/signalk-container-2.png","./doc/screenshots/signalk-container-3.png"]},"_npmUser":{"name":"GitHub Actions","email":"npm-oidc-no-reply@github.com","trustedPublisher":{"id":"github","oidcConfigId":"oidc:ac86e6a6-7555-4a7a-aa96-7ed2220dbf64"}},"repository":{"url":"git+https://github.com/dirkwa/signalk-container.git","type":"git"},"_npmVersion":"11.17.0","description":"Shared container runtime management (Podman/Docker) for Signal K plugins","directories":{},"_nodeVersion":"24.19.0","dependencies":{"typebox":"^1.1.38","dockerode":"^5.0.0"},"_hasShrinkwrap":false,"devDependencies":{"jiti":"^2.7.0","vite":"^8.0.13","react":"^19.2.4","eslint":"^10.2.0","rimraf":"^6.1.3","globals":"^17.4.0","prettier":"^3.8.1","react-dom":"^19.2.4","@eslint/js":"^10.0.1","typescript":"^6.0.3","@types/node":"^22.0.0","@types/react":"^19.2.14","@types/express":"^5.0.6","@types/dockerode":"^4.0.1","@types/react-dom":"^19.2.3","typescript-eslint":"^8.58.0","@signalk/server-api":"latest","@vitejs/plugin-react":"^6.0.2","eslint-config-prettier":"^10.1.8","@module-federation/vite":"^1.5.0"},"_npmOperationalInternal":{"tmp":"tmp/signalk-container_1.32.2_1788385861271_0.17203111179683472","host":"s3://npm-registry-packages-npm-production"},"signalk-plugin-enabled-by-default":true},"1.32.3":{"name":"signalk-container","version":"1.32.3","keywords":["signalk-node-server-plugin","signalk-plugin-configurator"],"author":{"name":"Dirk Wahrheit","email":"dirkwahrheit@gmail.com"},"license":"MIT","_id":"signalk-container@1.32.3","maintainers":[{"name":"dirkwa","email":"dirkwahrheit@gmail.com"}],"homepage":"https://github.com/dirkwa/signalk-container#readme","bugs":{"url":"https://github.com/dirkwa/signalk-container/issues"},"dist":{"shasum":"89b3d0bb9de07218bc0889701e69ed426a34fb36","tarball":"https://registry.npmjs.org/signalk-container/-/signalk-container-1.32.3.tgz","fileCount":140,"integrity":"sha512-NpbbWkShnGPUcUSuKBH20rZGAaM+MfewL55AecyxM0Q9O3Op0nR87EWwYZNn4eWmd8J8JVvqaPcvCs8w3S60VA==","signatures":[{"sig":"MEUCIQDvag1WW5+SUjlnWcGr6g1YqWnfrGLdOQQMsIYZGFXkewIgcLQltwgQsIsM656L0Z1XpINN9d7xpOZahLirjV4HPLo=","keyid":"SHA256:DhQ8wR5APBvFHLF/+Tc+AYvPOdTpcIDqOhxsBHRwC7U"}],"attestations":{"url":"https://registry.npmjs.org/-/npm/v1/attestations/signalk-container@1.32.3","provenance":{"predicateType":"https://slsa.dev/provenance/v1"}},"unpackedSize":2078685},"main":"dist/index.js","type":"module","types":"./dist/index.d.ts","engines":{"node":">=22"},"exports":{".":"./dist/index.js","./types":{"types":"./dist/types.d.ts","import":"./dist/types.js"}},"gitHead":"7de909b32ebcc6e150a6e29f231379d4ac97c9a2","scripts":{"lint":"eslint --fix","test":"node dist/scripts/run-tests.js","build":"npm run clean && npm run build:server && npm run build:configpanel && npm run check:home-paths","clean":"rimraf dist public","watch":"tsc --watch","format":"npm run prettier && npm run lint","ci-lint":"eslint && prettier --check .","prettier":"prettier --write .","test:all":"node --test \"dist/test/**/*.test.js\"","build:all":"npm run build && npm test","build:server":"tsc","prepublishOnly":"npm run build","check:home-paths":"node dist/scripts/check-home-paths.js","test:integration":"node --test \"dist/test/integration/*.test.js\"","build:configpanel":"vite build","build:all:integration":"npm run build && npm run test:all"},"signalk":{"appIcon":"./icon.svg","displayName":"Container Manager","screenshots":["./doc/screenshots/signalk-container-1.png","./doc/screenshots/signalk-container-2.png","./doc/screenshots/signalk-container-3.png"]},"_npmUser":{"name":"GitHub Actions","email":"npm-oidc-no-reply@github.com","trustedPublisher":{"id":"github","oidcConfigId":"oidc:ac86e6a6-7555-4a7a-aa96-7ed2220dbf64"}},"repository":{"url":"git+https://github.com/dirkwa/signalk-container.git","type":"git"},"_npmVersion":"11.17.0","description":"Shared container runtime management (Podman/Docker) for Signal K plugins","directories":{},"_nodeVersion":"24.19.0","dependencies":{"typebox":"^1.1.38","dockerode":"^5.0.0"},"_hasShrinkwrap":false,"devDependencies":{"jiti":"^2.7.0","vite":"^8.0.13","react":"^19.2.4","eslint":"^10.2.0","rimraf":"^6.1.3","globals":"^17.4.0","prettier":"^3.8.1","react-dom":"^19.2.4","@eslint/js":"^10.0.1","typescript":"^6.0.3","@types/node":"^22.0.0","@types/react":"^19.2.14","@types/express":"^5.0.6","@types/dockerode":"^4.0.1","@types/react-dom":"^19.2.3","typescript-eslint":"^8.58.0","@signalk/server-api":"latest","@vitejs/plugin-react":"^6.0.2","eslint-config-prettier":"^10.1.8","@module-federation/vite":"^1.5.0"},"_npmOperationalInternal":{"tmp":"tmp/signalk-container_1.32.3_1788416449936_0.15097337615400597","host":"s3://npm-registry-packages-npm-production"},"signalk-plugin-enabled-by-default":true},"1.33.0":{"name":"signalk-container","version":"1.33.0","keywords":["signalk-node-server-plugin","signalk-plugin-configurator"],"author":{"name":"Dirk Wahrheit","email":"dirkwahrheit@gmail.com"},"license":"MIT","_id":"signalk-container@1.33.0","maintainers":[{"name":"dirkwa","email":"dirkwahrheit@gmail.com"}],"homepage":"https://github.com/dirkwa/signalk-container#readme","bugs":{"url":"https://github.com/dirkwa/signalk-container/issues"},"dist":{"shasum":"7fbdc958173002a4e989fbc1c995265068100fa5","tarball":"https://registry.npmjs.org/signalk-container/-/signalk-container-1.33.0.tgz","fileCount":141,"integrity":"sha512-Ucxp56QIMgu/QugkOH+aSnGfpVKvkdbtLx+glr2CGxY1kkDDLb+ELXqyuujTX7FJ42rmeQnY/0dwJVSD+wqhBA==","signatures":[{"sig":"MEUCIQCMSbiNO+ROpOyIHj+jnmswVCIsr3AAOl6sqPHkoXlXSwIgP576HClmqWZrpftoqydHIZCvQODnTjSMLIVHKYQZJ+8=","keyid":"SHA256:DhQ8wR5APBvFHLF/+Tc+AYvPOdTpcIDqOhxsBHRwC7U"}],"attestations":{"url":"https://registry.npmjs.org/-/npm/v1/attestations/signalk-container@1.33.0","provenance":{"predicateType":"https://slsa.dev/provenance/v1"}},"unpackedSize":2116355},"main":"dist/index.js","type":"module","types":"./dist/index.d.ts","engines":{"node":">=22"},"exports":{".":"./dist/index.js","./types":{"types":"./dist/types.d.ts","import":"./dist/types.js"}},"gitHead":"1b375bdc9fede53d10227e351541ded740026cd6","scripts":{"lint":"eslint --fix","test":"node dist/scripts/run-tests.js","build":"npm run clean && npm run build:server && npm run build:configpanel && npm run check:home-paths","clean":"rimraf dist public","watch":"tsc --watch","format":"npm run prettier && npm run lint","ci-lint":"eslint && prettier --check .","prettier":"prettier --write .","test:all":"node --test \"dist/test/**/*.test.js\"","build:all":"npm run build && npm test","build:server":"tsc","prepublishOnly":"npm run build","check:home-paths":"node dist/scripts/check-home-paths.js","test:integration":"node --test \"dist/test/integration/*.test.js\"","build:configpanel":"vite build","build:all:integration":"npm run build && npm run test:all"},"signalk":{"appIcon":"./icon.svg","displayName":"Container Manager","screenshots":["./doc/screenshots/signalk-container-1.png","./doc/screenshots/signalk-container-2.png","./doc/screenshots/signalk-container-3.png"]},"_npmUser":{"name":"GitHub Actions","email":"npm-oidc-no-reply@github.com","trustedPublisher":{"id":"github","oidcConfigId":"oidc:ac86e6a6-7555-4a7a-aa96-7ed2220dbf64"}},"repository":{"url":"git+https://github.com/dirkwa/signalk-container.git","type":"git"},"_npmVersion":"11.19.0","description":"Shared container runtime management (Podman/Docker) for Signal K plugins","directories":{},"_nodeVersion":"24.20.0","dependencies":{"typebox":"^1.1.38","dockerode":"^5.0.0"},"_hasShrinkwrap":false,"devDependencies":{"jiti":"^2.7.0","vite":"^8.0.13","react":"^19.2.4","eslint":"^10.2.0","rimraf":"^6.1.3","globals":"^17.4.0","prettier":"^3.8.1","react-dom":"^19.2.4","@eslint/js":"^10.0.1","typescript":"^6.0.3","@types/node":"^22.0.0","@types/react":"^19.2.14","@types/express":"^5.0.6","@types/dockerode":"^4.0.1","@types/react-dom":"^19.2.3","typescript-eslint":"^8.58.0","@signalk/server-api":"latest","@vitejs/plugin-react":"^6.0.2","eslint-config-prettier":"^10.1.8","@module-federation/vite":"^1.5.0"},"_npmOperationalInternal":{"tmp":"tmp/signalk-container_1.33.0_1788977460702_0.730673995454147","host":"s3://npm-registry-packages-npm-production"},"signalk-plugin-enabled-by-default":true},"1.33.1":{"name":"signalk-container","version":"1.33.1","keywords":["signalk-node-server-plugin","signalk-plugin-configurator"],"author":{"name":"Dirk Wahrheit","email":"dirkwahrheit@gmail.com"},"license":"MIT","_id":"signalk-container@1.33.1","maintainers":[{"name":"dirkwa","email":"dirkwahrheit@gmail.com"}],"homepage":"https://github.com/dirkwa/signalk-container#readme","bugs":{"url":"https://github.com/dirkwa/signalk-container/issues"},"dist":{"shasum":"d6d658351c6630167b61ba91766af22633c6ab2e","tarball":"https://registry.npmjs.org/signalk-container/-/signalk-container-1.33.1.tgz","fileCount":141,"integrity":"sha512-T+AGK8KJTRrmgoXJ6Kzl9Cq8Ql4rW/pAYvK5N+lMhLmAqQ2cud8E4eueKaBxCSWpV0/SSLJisx6S00tSspS2rg==","signatures":[{"sig":"MEYCIQC/KdctlPKbRXAFn4XX89SKSSq2YmpFryUaKP9u0phYMAIhAM52nw5782jQGfMj3ATqu5vmye0SEgelKRjyj3TUEhFA","keyid":"SHA256:DhQ8wR5APBvFHLF/+Tc+AYvPOdTpcIDqOhxsBHRwC7U"}],"attestations":{"url":"https://registry.npmjs.org/-/npm/v1/attestations/signalk-container@1.33.1","provenance":{"predicateType":"https://slsa.dev/provenance/v1"}},"unpackedSize":2135045},"main":"dist/index.js","type":"module","types":"./dist/index.d.ts","engines":{"node":">=22"},"exports":{".":"./dist/index.js","./types":{"types":"./dist/types.d.ts","import":"./dist/types.js"}},"gitHead":"7ac8aec84210fdb02b8715af3ec6c06a42870608","scripts":{"lint":"eslint --fix","test":"node dist/scripts/run-tests.js","build":"npm run clean && npm run build:server && npm run build:configpanel && npm run check:home-paths","clean":"rimraf dist public","watch":"tsc --watch","format":"npm run prettier && npm run lint","ci-lint":"eslint && prettier --check .","prettier":"prettier --write .","test:all":"node --test \"dist/test/**/*.test.js\"","build:all":"npm run build && npm test","build:server":"tsc","prepublishOnly":"npm run build","check:home-paths":"node dist/scripts/check-home-paths.js","test:integration":"node --test \"dist/test/integration/*.test.js\"","build:configpanel":"vite build","build:all:integration":"npm run build && npm run test:all"},"signalk":{"appIcon":"./icon.svg","displayName":"Container Manager","screenshots":["./doc/screenshots/signalk-container-1.png","./doc/screenshots/signalk-container-2.png","./doc/screenshots/signalk-container-3.png"]},"_npmUser":{"name":"GitHub Actions","email":"npm-oidc-no-reply@github.com","trustedPublisher":{"id":"github","oidcConfigId":"oidc:ac86e6a6-7555-4a7a-aa96-7ed2220dbf64"}},"repository":{"url":"git+https://github.com/dirkwa/signalk-container.git","type":"git"},"_npmVersion":"11.19.0","description":"Shared container runtime management (Podman/Docker) for Signal K plugins","directories":{},"_nodeVersion":"24.20.0","dependencies":{"typebox":"^1.1.38","dockerode":"^5.0.0"},"_hasShrinkwrap":false,"devDependencies":{"jiti":"^2.7.0","vite":"^8.0.13","react":"^19.2.4","eslint":"^10.2.0","rimraf":"^6.1.3","globals":"^17.4.0","prettier":"^3.8.1","react-dom":"^19.2.4","@eslint/js":"^10.0.1","typescript":"^6.0.3","@types/node":"^22.0.0","@types/react":"^19.2.14","@types/express":"^5.0.6","@types/dockerode":"^4.0.1","@types/react-dom":"^19.2.3","typescript-eslint":"^8.58.0","@signalk/server-api":"latest","@vitejs/plugin-react":"^6.0.2","eslint-config-prettier":"^10.1.8","@module-federation/vite":"^1.5.0"},"_npmOperationalInternal":{"tmp":"tmp/signalk-container_1.33.1_1789254293129_0.5707754340029021","host":"s3://npm-registry-packages-npm-production"},"signalk-plugin-enabled-by-default":true},"1.33.3":{"name":"signalk-container","version":"1.33.3","keywords":["signalk-node-server-plugin","signalk-plugin-configurator"],"author":{"name":"Dirk Wahrheit","email":"dirkwahrheit@gmail.com"},"license":"MIT","_id":"signalk-container@1.33.3","maintainers":[{"name":"dirkwa","email":"dirkwahrheit@gmail.com"}],"homepage":"https://github.com/dirkwa/signalk-container#readme","bugs":{"url":"https://github.com/dirkwa/signalk-container/issues"},"dist":{"shasum":"314d77b475c02f157621f479811987227ad1d807","tarball":"https://registry.npmjs.org/signalk-container/-/signalk-container-1.33.3.tgz","fileCount":141,"integrity":"sha512-Aswby/JV3l1BUru50H+gsJczZ5ceT5Zy8lvFDheAPJNjCXl/1L9XW7oRn8RtskwVDOW48XPag747Jyn29cIq5g==","signatures":[{"sig":"MEUCIAeptrhFDpKC/IFyb6+Dsp32aWLDD39V1tvBcLFnYJDTAiEAxmzAvDIsHNOpHc8nHa+mEXJYrc1S2sEij/uhRZvMrsc=","keyid":"SHA256:DhQ8wR5APBvFHLF/+Tc+AYvPOdTpcIDqOhxsBHRwC7U"}],"attestations":{"url":"https://registry.npmjs.org/-/npm/v1/attestations/signalk-container@1.33.3","provenance":{"predicateType":"https://slsa.dev/provenance/v1"}},"unpackedSize":2147642},"main":"dist/index.js","type":"module","types":"./dist/index.d.ts","engines":{"node":">=22"},"exports":{".":"./dist/index.js","./types":{"types":"./dist/types.d.ts","import":"./dist/types.js"}},"gitHead":"4cc2ce38ebf56539a6d67c28e6d0df9eb1682ccd","scripts":{"lint":"eslint --fix","test":"node dist/scripts/run-tests.js","build":"npm run clean && npm run build:server && npm run build:configpanel && npm run check:home-paths","clean":"rimraf dist public","watch":"tsc --watch","format":"npm run prettier && npm run lint","ci-lint":"eslint && prettier --check .","prettier":"prettier --write .","test:all":"node --test \"dist/test/**/*.test.js\"","build:all":"npm run build && npm test","build:server":"tsc","prepublishOnly":"npm run build","check:home-paths":"node dist/scripts/check-home-paths.js","test:integration":"node --test \"dist/test/integration/*.test.js\"","build:configpanel":"vite build","build:all:integration":"npm run build && npm run test:all"},"signalk":{"appIcon":"./icon.svg","displayName":"Container Manager","screenshots":["./doc/screenshots/signalk-container-1.png","./doc/screenshots/signalk-container-2.png","./doc/screenshots/signalk-container-3.png"]},"_npmUser":{"name":"GitHub Actions","email":"npm-oidc-no-reply@github.com","trustedPublisher":{"id":"github","oidcConfigId":"oidc:ac86e6a6-7555-4a7a-aa96-7ed2220dbf64"}},"repository":{"url":"git+https://github.com/dirkwa/signalk-container.git","type":"git"},"_npmVersion":"11.19.0","description":"Shared container runtime management (Podman/Docker) for Signal K plugins","directories":{},"_nodeVersion":"24.20.0","dependencies":{"typebox":"^1.1.38","dockerode":"^5.0.0"},"_hasShrinkwrap":false,"devDependencies":{"jiti":"^2.7.0","vite":"^8.0.13","react":"^19.2.4","eslint":"^10.2.0","rimraf":"^6.1.3","globals":"^17.4.0","prettier":"^3.8.1","react-dom":"^19.2.4","@eslint/js":"^10.0.1","typescript":"^6.0.3","@types/node":"^22.0.0","@types/react":"^19.2.14","@types/express":"^5.0.6","@types/dockerode":"^4.0.1","@types/react-dom":"^19.2.3","typescript-eslint":"^8.58.0","@signalk/server-api":"latest","@vitejs/plugin-react":"^6.0.2","eslint-config-prettier":"^10.1.8","@module-federation/vite":"^1.5.0"},"_npmOperationalInternal":{"tmp":"tmp/signalk-container_1.33.3_1789299301966_0.8239858708764021","host":"s3://npm-registry-packages-npm-production"},"signalk-plugin-enabled-by-default":true},"1.33.4":{"name":"signalk-container","version":"1.33.4","keywords":["signalk-node-server-plugin","signalk-plugin-configurator"],"author":{"name":"Dirk Wahrheit","email":"dirkwahrheit@gmail.com"},"license":"MIT","_id":"signalk-container@1.33.4","maintainers":[{"name":"dirkwa","email":"dirkwahrheit@gmail.com"}],"homepage":"https://github.com/dirkwa/signalk-container#readme","bugs":{"url":"https://github.com/dirkwa/signalk-container/issues"},"dist":{"shasum":"08f9cc0155ea43bf549faeb03fa71685b535a6df","tarball":"https://registry.npmjs.org/signalk-container/-/signalk-container-1.33.4.tgz","fileCount":140,"integrity":"sha512-DzIx0PN5aWmUpp/KZCqFjLMRb7Cw5IlrGPUY7/aqcSsWcnSXCXEG8BHie3orsz5jHNv++fWbWNjQybZ/hKpWVw==","signatures":[{"sig":"MEQCIFErdCK9kBdYx5p/NCsFMnwKfm6yQkIEsaTOeIOmZrjJAiA8JBlWIg9VeyLcwXbdJs98gSRMjSXiIcsj5q1gisAlPA==","keyid":"SHA256:DhQ8wR5APBvFHLF/+Tc+AYvPOdTpcIDqOhxsBHRwC7U"},{"sig":"MEYCIQCSJYtIAzyyWUGUvRb2qPeQ7FY1BI2hFcP2fyrjwSpeUAIhAOeIzJV8aejw4TseLzmRJYGH7ybA0vvcjPGQHbI3mX8+","keyid":"SHA256:DhQ8wR5APBvFHLF/+Tc+AYvPOdTpcIDqOhxsBHRwC7U"}],"attestations":{"url":"https://registry.npmjs.org/-/npm/v1/attestations/signalk-container@1.33.4","provenance":{"predicateType":"https://slsa.dev/provenance/v1"}},"unpackedSize":2154832},"main":"dist/index.js","type":"module","types":"./dist/index.d.ts","engines":{"node":">=22"},"exports":{".":"./dist/index.js","./types":{"types":"./dist/types.d.ts","import":"./dist/types.js"}},"gitHead":"9fdbb27f972edd36b4a18ee1766c81c12d1739f0","scripts":{"lint":"eslint --fix","test":"node dist/scripts/run-tests.js","build":"npm run clean && npm run build:server && npm run build:configpanel && npm run check:home-paths","clean":"rimraf dist public","watch":"tsc --watch","format":"npm run prettier && npm run lint","ci-lint":"eslint && prettier --check .","prettier":"prettier --write .","test:all":"node --test \"dist/test/**/*.test.js\"","build:all":"npm run build && npm test","build:server":"tsc","prepublishOnly":"npm run build","check:home-paths":"node dist/scripts/check-home-paths.js","test:integration":"node --test \"dist/test/integration/*.test.js\"","build:configpanel":"vite build","build:all:integration":"npm run build && npm run test:all"},"signalk":{"appIcon":"./icon.svg","displayName":"Container Manager","screenshots":["./doc/screenshots/signalk-container-1.png","./doc/screenshots/signalk-container-2.png","./doc/screenshots/signalk-container-3.png"]},"_npmUser":{"name":"GitHub Actions","email":"npm-oidc-no-reply@github.com","trustedPublisher":{"id":"github","oidcConfigId":"oidc:ac86e6a6-7555-4a7a-aa96-7ed2220dbf64"}},"repository":{"url":"git+https://github.com/dirkwa/signalk-container.git","type":"git"},"_npmVersion":"11.19.0","description":"Shared container runtime management (Podman/Docker) for Signal K plugins","directories":{},"_nodeVersion":"24.20.0","dependencies":{"typebox":"^1.1.38","dockerode":"^5.0.0"},"_hasShrinkwrap":false,"devDependencies":{"jiti":"^2.7.0","vite":"^8.0.13","react":"^19.2.4","eslint":"^10.2.0","rimraf":"^6.1.3","globals":"^17.4.0","prettier":"^3.8.1","react-dom":"^19.2.4","@eslint/js":"^10.0.1","typescript":"^6.0.3","@types/node":"^22.0.0","@types/react":"^19.2.14","@types/express":"^5.0.6","@types/dockerode":"^4.0.1","@types/react-dom":"^19.2.3","typescript-eslint":"^8.58.0","@signalk/server-api":"latest","@vitejs/plugin-react":"^6.0.2","eslint-config-prettier":"^10.1.8","@module-federation/vite":"^1.5.0"},"_npmOperationalInternal":{"tmp":"tmp/signalk-container_1.33.4_1789617564007_0.19379102333457876","host":"s3://npm-registry-packages-npm-production"},"signalk-plugin-enabled-by-default":true},"1.34.0":{"_id":"signalk-container@1.34.0","bugs":{"url":"https://github.com/dirkwa/signalk-container/issues"},"dist":{"shasum":"50db496793ab17cbdd54891f7bba9f778b2e6e8c","tarball":"https://registry.npmjs.org/signalk-container/-/signalk-container-1.34.0.tgz","fileCount":143,"integrity":"sha512-j8E2VYThvB7S+szl1gu88mxPODUWo3pOZzxqyQJDbo5uJ6UcRuq4VmbG/KsP1bFqTNEzXpv+5zJVXfeBmBncmQ==","signatures":[{"sig":"MEYCIQC3rn4oQJTTDSPCFITO0qh4Y5Ub7b+Kd87r8EsyMHHEHgIhALyEXv4adY+ojLRfPkkkfixCuDI0Y/gjQrnK6F74VV5O","keyid":"SHA256:DhQ8wR5APBvFHLF/+Tc+AYvPOdTpcIDqOhxsBHRwC7U"},{"keyid":"SHA256:DhQ8wR5APBvFHLF/+Tc+AYvPOdTpcIDqOhxsBHRwC7U","sig":"MEQCIAdecA0lFzHv7RLPOvRzi3r8FidpI0d45TI26Xpo0JngAiAZ1RBQzczArWVq56bsfa0eF1ctMMWtzHOZjEhG5LRbWA=="}],"attestations":{"url":"https://registry.npmjs.org/-/npm/v1/attestations/signalk-container@1.34.0","provenance":{"predicateType":"https://slsa.dev/provenance/v1"}},"unpackedSize":2187250},"main":"dist/index.js","name":"signalk-container","type":"module","types":"./dist/index.d.ts","author":{"name":"Dirk Wahrheit","email":"dirkwahrheit@gmail.com"},"engines":{"node":">=22"},"exports":{".":"./dist/index.js","./types":{"types":"./dist/types.d.ts","import":"./dist/types.js"}},"gitHead":"1781b3e68696dda4628da0c84badc564dddc017d","license":"MIT","scripts":{"lint":"eslint --fix","test":"node dist/scripts/run-tests.js","build":"npm run clean && npm run build:server && npm run typecheck:panel && npm run build:configpanel && npm run check:home-paths","clean":"rimraf dist public","watch":"tsc --watch","format":"npm run prettier && npm run lint","ci-lint":"eslint && prettier --check .","prettier":"prettier --write .","test:all":"node --test \"dist/test/**/*.test.js\"","build:all":"npm run build && npm test","build:server":"tsc","prepublishOnly":"npm run build","typecheck:panel":"tsc -p src/configpanel --noEmit","check:home-paths":"node dist/scripts/check-home-paths.js","test:integration":"node --test \"dist/test/integration/*.test.js\"","build:configpanel":"vite build","build:all:integration":"npm run build && npm run test:all"},"signalk":{"appIcon":"./icon.svg","displayName":"Container Manager","screenshots":["./doc/screenshots/signalk-container-1.png","./doc/screenshots/signalk-container-2.png","./doc/screenshots/signalk-container-3.png"]},"version":"1.34.0","_npmUser":{"name":"GitHub Actions","email":"npm-oidc-no-reply@github.com","trustedPublisher":{"id":"github","oidcConfigId":"oidc:ac86e6a6-7555-4a7a-aa96-7ed2220dbf64"}},"homepage":"https://github.com/dirkwa/signalk-container#readme","keywords":["signalk-node-server-plugin","signalk-plugin-configurator"],"repository":{"url":"git+https://github.com/dirkwa/signalk-container.git","type":"git"},"_npmVersion":"11.19.0","description":"Shared container runtime management (Podman/Docker) for Signal K plugins","directories":{},"maintainers":[{"name":"dirkwa","email":"dirkwahrheit@gmail.com"}],"_nodeVersion":"24.20.0","dependencies":{"typebox":"^1.1.38","dockerode":"^5.0.0"},"_hasShrinkwrap":false,"devDependencies":{"jiti":"^2.7.0","vite":"^8.0.13","react":"^19.2.4","eslint":"^10.2.0","rimraf":"^6.1.3","globals":"^17.4.0","prettier":"^3.8.1","react-dom":"^19.2.4","@eslint/js":"^10.0.1","typescript":"^6.0.3","@types/node":"^22.0.0","@types/react":"^19.2.14","@types/express":"^5.0.6","@types/dockerode":"^4.0.1","@types/react-dom":"^19.2.3","typescript-eslint":"^8.58.0","@signalk/server-api":"latest","@vitejs/plugin-react":"^6.0.2","eslint-config-prettier":"^10.1.8","@module-federation/vite":"^1.5.0"},"_npmOperationalInternal":{"host":"s3://npm-registry-packages-npm-production","tmp":"tmp/signalk-container_1.34.0_1789959482927_0.10542366283147153"},"signalk-plugin-enabled-by-default":true}},"time":{"created":"2026-04-05T01:18:22.065Z","modified":"2026-09-21T02:58:03.396Z","0.1.0":"2026-04-05T01:18:22.363Z","0.1.1":"2026-04-06T03:44:10.892Z","0.1.2":"2026-04-06T17:42:28.971Z","0.1.3":"2026-04-07T04:38:04.512Z","0.1.6":"2026-04-07T23:53:56.679Z","0.1.7":"2026-04-08T16:27:18.910Z","0.1.8":"2026-04-08T23:09:46.309Z","0.2.0":"2026-04-26T23:22:07.017Z","0.2.1":"2026-04-27T04:31:41.782Z","1.0.0":"2026-05-06T23:51:02.268Z","1.1.0":"2026-05-07T00:34:12.054Z","1.2.0":"2026-05-07T02:19:40.682Z","1.2.1":"2026-05-07T02:59:34.830Z","1.3.0":"2026-05-08T03:42:14.409Z","1.3.1":"2026-05-08T18:34:25.484Z","1.3.2":"2026-05-08T18:55:00.184Z","1.4.0":"2026-05-08T21:42:57.061Z","1.4.1":"2026-05-09T13:40:24.146Z","1.5.0":"2026-05-11T04:18:45.488Z","1.6.0":"2026-05-11T22:22:40.233Z","1.7.0":"2026-05-13T01:14:38.359Z","1.8.0-beta.1":"2026-05-19T07:40:44.715Z","1.8.0":"2026-05-19T18:07:27.046Z","1.8.1":"2026-05-19T19:38:29.641Z","1.9.0-beta.1":"2026-05-21T03:14:16.668Z","1.9.0-beta.2":"2026-05-21T03:47:07.165Z","1.9.0":"2026-05-21T19:14:01.728Z","1.9.1":"2026-05-21T22:51:34.359Z","1.9.2":"2026-05-21T23:59:37.497Z","1.9.3":"2026-05-22T03:19:38.432Z","1.9.4":"2026-05-22T09:21:06.259Z","1.9.5":"2026-05-22T10:22:50.483Z","1.10.0":"2026-05-22T15:14:37.343Z","1.10.1":"2026-05-22T16:10:45.501Z","1.10.2":"2026-05-22T17:57:53.467Z","1.10.3":"2026-05-23T20:14:38.993Z","1.11.0":"2026-05-23T20:37:31.459Z","1.11.1":"2026-05-23T21:31:28.161Z","1.11.2":"2026-05-23T22:00:41.860Z","1.11.3":"2026-05-23T23:06:07.161Z","1.11.4":"2026-05-23T23:25:14.966Z","1.11.5":"2026-05-25T18:07:57.791Z","1.11.6":"2026-05-27T01:54:27.288Z","1.11.7":"2026-05-27T06:20:41.733Z","1.12.0":"2026-05-27T18:39:02.340Z","1.12.1":"2026-05-27T19:21:38.235Z","1.12.2":"2026-05-30T18:09:03.567Z","1.13.0-beta.1":"2026-06-02T03:27:52.351Z","1.13.0":"2026-06-02T03:53:39.743Z","1.14.0":"2026-06-03T01:59:35.473Z","1.15.0-beta.0":"2026-06-08T04:38:44.006Z","1.15.0":"2026-06-08T05:13:48.573Z","1.15.1":"2026-06-10T18:46:18.522Z","1.15.2":"2026-06-10T19:09:41.120Z","1.16.0":"2026-06-10T23:08:58.776Z","1.16.1":"2026-06-11T16:52:18.449Z","1.16.2":"2026-06-11T17:14:30.543Z","1.16.3":"2026-06-11T23:49:29.747Z","1.16.4-beta.0":"2026-06-17T22:20:52.075Z","1.16.4":"2026-06-17T23:22:12.876Z","1.17.0":"2026-06-18T22:08:18.920Z","1.18.0":"2026-06-18T23:39:08.324Z","1.19.0":"2026-06-23T05:20:43.170Z","1.19.1":"2026-06-23T17:33:56.326Z","1.20.0":"2026-06-25T22:38:45.754Z","1.20.1":"2026-06-25T23:33:45.578Z","1.20.2":"2026-06-26T04:13:38.401Z","1.20.3":"2026-07-06T04:31:44.611Z","1.20.4":"2026-07-08T21:21:54.086Z","1.20.5":"2026-07-10T19:18:19.920Z","1.21.0":"2026-07-19T20:28:42.754Z","1.22.0":"2026-07-22T03:11:18.574Z","1.22.1":"2026-07-23T18:31:05.200Z","1.23.0":"2026-07-23T20:50:32.605Z","1.23.1":"2026-07-23T22:54:12.614Z","1.23.2":"2026-07-24T00:18:46.111Z","1.24.0":"2026-07-26T20:12:25.474Z","1.25.0":"2026-07-27T04:07:49.881Z","1.25.1":"2026-08-01T20:33:11.174Z","1.25.2":"2026-08-03T03:11:31.210Z","1.25.3":"2026-08-05T23:53:12.509Z","1.25.4":"2026-08-10T19:15:25.837Z","1.25.5":"2026-08-10T19:48:25.595Z","1.26.0":"2026-08-14T19:52:14.793Z","1.27.0":"2026-08-16T19:32:52.428Z","1.28.0":"2026-08-17T20:49:56.296Z","1.28.1":"2026-08-18T10:37:22.869Z","1.29.0":"2026-08-18T21:24:18.761Z","1.30.0":"2026-08-23T20:35:49.313Z","1.31.0":"2026-08-29T20:45:20.135Z","1.32.0":"2026-08-30T19:13:22.668Z","1.32.1":"2026-08-30T20:52:55.199Z","1.32.2":"2026-09-02T21:51:01.456Z","1.32.3":"2026-09-03T06:20:50.258Z","1.33.0":"2026-09-09T18:11:00.880Z","1.33.1":"2026-09-12T23:04:53.305Z","1.33.3":"2026-09-13T11:35:02.129Z","1.33.4":"2026-09-17T03:59:24.133Z","1.34.0":"2026-09-21T02:58:03.054Z"},"bugs":{"url":"https://github.com/dirkwa/signalk-container/issues"},"author":{"name":"Dirk Wahrheit","email":"dirkwahrheit@gmail.com"},"license":"MIT","homepage":"https://github.com/dirkwa/signalk-container#readme","keywords":["signalk-node-server-plugin","signalk-plugin-configurator"],"repository":{"url":"git+https://github.com/dirkwa/signalk-container.git","type":"git"},"description":"Shared container runtime management (Podman/Docker) for Signal K plugins","maintainers":[{"name":"dirkwa","email":"dirkwahrheit@gmail.com"}],"readme":"# signalk-container\n\nShared container runtime management (Podman/Docker) for Signal K plugins.\n\nInstead of each plugin implementing its own container orchestration, they delegate to this plugin. It detects the available runtime, pulls images, manages container lifecycles, and provides a config panel in the Admin UI.\n\n## Features\n\n- **Runtime detection** -- resolves the container runtime over its Docker-API socket (Podman preferred, Docker fallback); no podman/docker CLI binary is needed. Consumer plugins `await containers.whenReady()` once instead of polling in a loop — resolves when the probe settles in either direction.\n- **Container lifecycle** -- pull, create, start, stop, remove with `sk-` prefix naming\n- **Automatic config-drift recreation** -- `ensureRunning` compares the requested `ContainerConfig` against the live container on every call. If `image`, `tag`, `command`, `networkMode`, `env`, `volumes`, `ports`, `extraHosts`, `devices`, `groupAdd`, or `capAdd` differ, the container is removed and recreated transparently (`user` too, where the runtime reports it). `resources` is applied live where possible instead. Consumer plugins no longer need a per-plugin hash file to detect \"config changed since last start.\" See the [developer guide](doc/plugin-developer-guide.md#container-config-changes).\n- **Healthcheck handling** -- image-declared healthchecks are made to work reliably across runtimes. For images that ship **no** healthcheck, consumer plugins set `ContainerConfig.healthcheck` to supply a probe, so the container reports a real health status instead of being stuck in `starting`. See the [developer guide](doc/plugin-developer-guide.md#healthcheck-for-images-that-ship-none).\n- **One-shot jobs** -- run containers for batch tasks (export, conversion, etc.)\n- **Update detection** -- centralized \"is there a newer image?\" service for all consumer plugins. Auto-detects semver vs floating tags (`:latest`, `:main`), offline-tolerant with persistent cache, emits Signal K notifications, visible inline in the config panel. See the [developer guide](doc/plugin-developer-guide.md#update-detection).\n- **Degradation notifications** -- publishes SignalK notifications on `notifications.container.*` when a managed container is unhealthy, a requested host device was rejected, a required volume source is missing, the container-runtime deployment is degraded, or a container is crash-looping. Severity is `warn` (or `alert` for a missing required volume and for a crash loop); the notification carries no `method`, so the server's NotificationManager controls how it is presented. Each clears when its condition recovers: the unhealthy and volume notifications clear the moment the next health check or `ensureRunning` succeeds, the device notification clears when a later `ensureRunning` finds no unresolved devices, the crash-loop notification clears once the container falls back below three restarts per five minutes, and the deployment notification clears on the next plugin start that finds the host healthy. A crash loop is measured as three restarts within any five-minute span _while the plugin is watching_ — the restarts a container accumulated before that (surviving a host reboot, say) never raise it. On by default; opt out with the \"Emit container degradation notifications\" config toggle. Requires a SignalK server ≥ 2.30.0 (no effect on older servers).\n- **Resource limits editor** -- interactive UI in the config panel for setting CPU/memory/PID caps per container. Values are applied live via `podman update` when possible (no downtime), falls back to recreate when needed. Stored overrides are minimized against the consumer plugin's defaults so a future default bump flows through automatically. See the [developer guide](doc/plugin-developer-guide.md#resource-limits).\n- **Reset to plugin default** -- one-click restore of a container's original resource limits, clearing any user override.\n- **CPU caps that fit the host** -- a `cpus` limit above the daemon's core count is lowered to it instead of failing the container create (Docker rejects `--cpus 1.5` on a 1-vCPU host outright); the consumer plugin can surface it via the optional `onResourceClamped` callback (otherwise it is a debug-log line). See the [developer guide](doc/plugin-developer-guide.md#resource-limits).\n- **Per-process ulimits** -- `ContainerConfig.ulimits` pins per-process limits (`nofile`, `nproc`, …) on a container. A containerized process inherits these from the runtime, not the host sysctl, so raising the host `fs.file-max` alone does not lift a database's open-files limit; setting `ulimits` does. A `nofile` request over the host ceiling is clamped (not rejected) so the container still starts. See the [developer guide](doc/plugin-developer-guide.md#per-process-ulimits-nofile-) and, for raising the host limit, [Raising the open-files limit](#raising-the-open-files-limit-nofile).\n- **Image management** -- scheduled pruning of dangling images (weekly/monthly), plus optional cleanup of superseded versions of managed-container images\n- **Zero-config persistent storage** -- `signalkDataMount` mounts signalk-container's own data directory into any managed container automatically, whether Signal K runs on bare metal, in Docker (named volume), or in Podman (named volume or bind mount). No host paths to configure; namespace a subdirectory, since every managed container shares it.\n- **Zero-config config root sharing** -- `signalkConfigRootMount` mounts the entire SignalK installation config (`~/.signalk/`) — for backup, audit, or config-sync tools that need the whole tree, not the per-plugin subdirectory.\n- **Zero-config container service connectivity** -- `signalkAccessiblePorts` lets the SignalK process connect back to a service running inside a managed container (e.g. an HTTP or TCP server). signalk-container picks the right networking strategy automatically — port binding on the host loopback for bare-metal deployments, or a shared Docker network with DNS for containerised ones. No host ports are exposed unnecessarily.\n- **Host timezone propagation** -- managed containers and one-shot jobs get `TZ=<host zone>` injected automatically, so time-based logic inside them (cron-style Node-RED flows, Grafana/QuestDB time rendering, log timestamps) agrees with the host clock instead of defaulting to UTC. Consumer plugins that set `env.TZ` themselves keep full control; shell-level tools inside minimal images may additionally need the image's `tzdata` package to interpret the zone name. See the [developer guide](doc/plugin-developer-guide.md#host-timezone).\n- **SELinux support** -- `:Z` volume flags for Podman bind mounts on Fedora/RHEL; named volumes are handled correctly (`:Z` is not applied)\n- **Host device access** -- `ContainerConfig.devices` exposes host device nodes or whole device directories (`/dev/snd`, `/dev/input`, …) to a managed container — directory bindings are hot-plug-safe, so a USB replug keeps working without a recreate (individual nodes are attached statically and need one) — and `ContainerConfig.groupAdd` resolves host group names to the GIDs that own those nodes. Works across docker and rootless Podman (on rootless the access comes from the Podman caller's own host groups, so that user must be in the device-owning group); a missing device never blocks container start. See [Exposing host devices](#exposing-host-devices-devices-groupadd-capadd).\n- **Read-only volumes** -- `{ source, readOnly: true }` binds a volume `:ro`, for sharing a directory another component owns (charts published by a chart provider, say) without granting write access to it. 1.30.0+.\n- **Per-volume host-source policy** -- volumes accept `{ source, ifMissing: \"skip\" | \"abort\" }` for user-managed (USB drives, NFS) or deployment-required (TLS certs) mounts. Plugins subscribe to `onVolumeIssue` events for `'skipped'`, `'aborted'`, and `'recovered'` actions; signalk-container auto-recreates the container when a previously-missing source reappears. See the [developer guide](doc/plugin-developer-guide.md#optional-and-required-volumes).\n- **Container log streaming** -- click **Logs** on any managed-container card to open a live-streaming popup of the container's stdout+stderr (combined, the same shape `podman logs <name>` produces). Plugin authors can also wire `onContainerLog` in `ensureRunning` options to forward the same stream into their plugin's `app.debug` channel — visible in the Signal K server log when debug is enabled. Multiple subscribers share a single underlying log stream. See the [developer guide](doc/plugin-developer-guide.md#streaming-container-logs-into-your-plugins-debug-channel).\n- **Host-UID ownership alignment** -- managed containers run by default under the Signal K host user's UID/GID (via `--user host:host` on Docker/rootful Podman, `--userns=keep-id` on rootless Podman). Files created on bind mounts are owned by the same identity that runs Signal K, with no `chmod` sweeps. Override per container via `ContainerConfig.user` for images with a non-root `USER` directive, or `user: false` to opt out. See the [developer guide](doc/plugin-developer-guide.md#host-uid-ownership).\n- **Data-directory teardown** -- `containers.removeManagedData(name, hostPath)` removes a managed container _and_ deletes its bind-mount data, even on rootless Podman where a container process running as a non-root in-container UID writes files owned by a host **subuid** the Signal K user can't `rm`. The host-side delete is tried first (docker / rootful); on EACCES it falls back to an in-userns wipe using the container's own image (no extra pull). Use it for plugin uninstall cleanup. See the [developer guide](doc/plugin-developer-guide.md#removemanageddataname-hostpath-options-promisevoid).\n- **Image compliance probes** -- `containers.doctor.imageRunsAsUser(image, user?)` runs the image under the live UID mapping and verifies it can write `/tmp` as the host caller. Surfaces UID-compatibility problems _before_ a container wedges in a restart loop. See the [developer guide](doc/plugin-developer-guide.md#containersdoctorimagerunsasuserimage-user-promiseimageproberesult).\n- **Podman image qualification** -- automatically prefixes `docker.io/` for short image names\n- **Docker `host.containers.internal` parity** -- signalk-container adds the `host-gateway` mapping for Docker automatically (Podman has it natively). User-supplied `extraHosts` overrides are respected.\n- **Cross-plugin API** -- other plugins use `globalThis.__signalk_containerManager`\n\n## Requirements\n\n- Node.js >= 22\n- Podman >= 5.4 (the supported baseline — Debian 13 \"trixie\" ships 5.4.2) or Docker installed on the host\n- Signal K server\n\nOlder Podman versions may work, but they are untested and carry known\ndocker-compat API defects the deployment doctor warns about:\n\n- **below 4.5** — the compat socket can reset the connection\n  (`write EPIPE`) on large create payloads, breaking big helper jobs\n- **below 5.5, rootless** — `--ulimit nofile` requests are silently\n  dropped over the compat API (containers/podman#25881); containers\n  inherit the podman service's limits instead. This one also applies to\n  the 5.4.x baseline itself — see the \"Rootless Podman < 5.5.0\" note in\n  [Raising the open-files limit](#raising-the-open-files-limit-nofile)\n\n## Running Signal K in a Container\n\nIf your Signal K server itself runs inside a container (Docker, Podman),\nthis plugin needs access to the host's container runtime to manage other\ncontainers. The plugin auto-detects this scenario via `/.dockerenv` or\n`/run/.containerenv` and prefixes the status with `(in-container)`.\n\nFor the plugin to work, two things must be true inside the Signal K\ncontainer:\n\n1. **A matching runtime CLI is available** — the CLI inside the SK\n   container must match the daemon on the host (Docker host → `docker`;\n   Podman host → `podman`). End users typically bind-mount the host\n   binary; image maintainers can bake it into a custom image.\n2. **The matching runtime socket is bind-mounted** from the host\n   (rootless or rootful podman, or docker).\n\nConcrete platform-specific commands — for both end-user and\nimage-maintainer setups — are emitted by the deployment doctor (see\n`/api/doctor/deployment` and the snippet generator below). Use those\nas the source of truth; they always reflect the running plugin\nversion.\n\n### Quick check: `/api/doctor/deployment`\n\nThe plugin ships a self-diagnostic. After starting, hit:\n\n```bash\ncurl http://<signalk-host>:3000/plugins/signalk-container/api/doctor/deployment\n```\n\nThe response includes a `status` field (`ok` / `no-runtime` /\n`socket-unreachable` / `permission-denied` / `self-id-unresolved` /\n`cgroup-controllers-incomplete`) and a `remediation` array of\ncopy-pasteable lines for whichever failure mode applies. When startup\ndetection fails, the same remediation is also logged to the Signal K\nserver log.\n\nA separate `cgroupControllers` field on the response reports the\ndelegated cgroup v2 controllers and which expected ones are missing —\nsee [Cgroup controller delegation](#cgroup-controller-delegation) for\nwhat missing controllers mean for resource limits.\n\n### Generate a starter snippet\n\nTo bootstrap a new deployment, ask the plugin for a ready-to-paste\ncompose fragment or shell command tailored to the detected runtime:\n\n```bash\ncurl 'http://<signalk-host>:3000/plugins/signalk-container/api/doctor/snippet?format=compose' > docker-compose.yml\ncurl 'http://<signalk-host>:3000/plugins/signalk-container/api/doctor/snippet?format=run'      > run-signalk.sh\n```\n\nThe endpoint returns plain text by default; pass\n`Accept: application/json` to get the structured\n`SetupSnippetResult` (snippet + Dockerfile sidecar + operator notes)\nfor programmatic consumers.\n\n> [!note]\n> The per-runtime examples below illustrate the shape of a working setup.\n> For an actual deployment, prefer the doctor-generated snippet above — it\n> reflects your detected runtime and the running plugin version, so it\n> stays correct as these details evolve.\n\n### Rootless Podman (recommended)\n\nThe cleanest setup. Runs as your user, not root, so the security\nexposure is limited to your user account rather than the entire host —\nand matches signalk-container's default behaviour.\n\nOn the host, ensure the user-scoped podman socket is enabled, and enable\nlingering so it survives logout and reboot:\n\n```bash\nsystemctl --user enable --now podman.socket\nsudo loginctl enable-linger \"$USER\" # or: sudo loginctl enable-linger <signalk-user>\n```\n\nWithout lingering, the user's systemd instance — and therefore the podman\nsocket — only runs while that user has an active login session. On a\nheadless boat where nobody logs in after a reboot, the socket never comes\nup and signalk-container can't reach the runtime. `enable-linger` keeps the\nsession alive so the socket is always present. (Enabling linger for your\nown account does not strictly require `sudo`, but minimal server images\noften lack the polkit rule that permits it, so `sudo` is the reliable\nform.)\n\nThen in your compose / `podman run`:\n\n```yaml\nservices:\n  signalk:\n    image: your-signalk-image-with-podman-remote\n    user: \"${UID}:${GID}\" # match the uid that owns the host's podman socket\n    volumes:\n      - /run/user/${UID}/podman/podman.sock:/run/user/${UID}/podman/podman.sock\n    environment:\n      - CONTAINER_HOST=unix:///run/user/${UID}/podman/podman.sock\n```\n\nYour image's Dockerfile should include `podman` or `podman-remote`:\n\n```dockerfile\nRUN apt-get update && apt-get install -y podman    # Debian/Ubuntu\n# or:\nRUN dnf install -y podman-remote                    # Fedora/RHEL\n```\n\n### Rootful Podman\n\n```yaml\nservices:\n  signalk:\n    image: your-signalk-image-with-podman\n    volumes:\n      - /run/podman/podman.sock:/run/podman/podman.sock\n    environment:\n      - CONTAINER_HOST=unix:///run/podman/podman.sock\n```\n\n### Docker\n\n```yaml\nservices:\n  signalk:\n    image: your-signalk-image-with-docker-cli\n    volumes:\n      - /var/run/docker.sock:/var/run/docker.sock\n    group_add:\n      - \"<docker-gid-from-host>\" # `getent group docker | cut -d: -f3`\n```\n\n`group_add` makes the in-container Signal K user a member of the host's\n`docker` group, which owns `/var/run/docker.sock`. Access to the socket is\ngated by that unix-socket ACL: `privileged: true` and `network_mode: host`\ndo **not** bypass it. Without the correct host docker GID here, the\nconnection is refused with `EACCES` and the deployment doctor reports\n`status: permission-denied`.\n\n> [!warning]\n> Mounting `/var/run/docker.sock` gives the container **root-equivalent\n> access to the host**. Anyone who compromises Signal K (including via\n> a malicious plugin) can take over the entire host. Prefer rootless\n> Podman for production.\n\n### Networking caveats\n\nWhen Signal K runs in a container, containers spawned by this plugin\nare **siblings** on the host's container network, not inside Signal K's\nnetwork namespace. This affects:\n\n- The shared `sk-network` works only if Signal K is also attached to it\n  (add it externally or via the same compose file)\n- `host.containers.internal` from spawned containers points to the host\n  itself, not the Signal K container — use Signal K's container name\n  for direct communication. signalk-container 1.8.0+ adds this hostname\n  to Docker containers automatically (Podman already provides it); set\n  `ContainerConfig.extraHosts` to override it or to add other hostnames.\n\n### Cgroup controller delegation\n\nWhen Signal K runs inside a rootless container, the kernel only enforces\nthose resource limits whose **cgroup controller has been delegated** down\nto the SK container's cgroup. Anything else passed to `podman run` is\nsilently ignored — your `--memory 1g` request reaches the runtime, but\nthe cgroup never gets a memory cap and the container can grow without\nbound.\n\nThe most common culprit is `memory`: many distros delegate `cpu`,\n`cpuset`, `io`, and `pids` to user sessions by default, but `memory`\nmust be explicitly added.\n\nsignalk-container 1.9.0+ probes the available controllers via\n`/sys/fs/cgroup/cgroup.controllers` and **silently drops** unsupported\nlimit fields before invoking podman — better than crashing the\ncontainer, but the user-visible effect is \"I set memory to 1 GB and\nnothing happened.\" The drop is logged at `debug` level with the reason\n(`cgroup controller 'memory' not delegated to podman (available: cpuset,\ncpu, io, pids)`); the live `effective` resource response also reflects\nonly what's actually in place.\n\n**The deployment doctor flags this automatically** with `status:\ncgroup-controllers-incomplete` and a ready-to-paste remediation block.\nHit `/api/doctor/deployment` (see above) and check the `status` and\n`cgroupControllers` fields.\n\n**Manual check from a shell:**\n\n```bash\npodman exec <sk-container> cat /sys/fs/cgroup/cgroup.controllers\n# cpuset cpu io memory pids       ← memory delegated, all limits work\n# cpuset cpu io pids               ← memory missing, --memory is dropped\n```\n\n**Enable memory delegation on the host** (one-time, requires sudo):\n\n```bash\nsudo mkdir -p /etc/systemd/system/user@.service.d\nsudo tee /etc/systemd/system/user@.service.d/delegate.conf <<'EOF'\n[Service]\nDelegate=cpu cpuset io memory pids\nEOF\nsudo systemctl daemon-reload\n# Log the SK-owning user out and back in (or reboot) so a fresh user@.service starts.\n```\n\nAfter re-login, re-running the consumer plugin's `ensureRunning` (or\njust restarting Signal K) recreates the managed container with the\nmemory cap actually applied. Verify with `podman inspect sk-<name>\n--format '{{.HostConfig.Memory}}'` — a non-zero value confirms the cap\nis in cgroup state, not just on the command line.\n\nThis is purely a host-side prerequisite; signalk-container cannot\noverride the kernel's controller delegation.\n\n#### Raspberry Pi OS: `cgroup_disable=memory` in the kernel cmdline\n\nIf you're on a Raspberry Pi 4/5 running Raspberry Pi OS Trixie (and\nlikely earlier Pi OS releases) and the systemd `Delegate=memory` snippet\nabove **doesn't work** — `cat /sys/fs/cgroup/cgroup.controllers` still\nshows `cpuset cpu io pids` after a reboot — the cause is one level\ndeeper. The Pi's GPU firmware injects `cgroup_disable=memory` into the\nkernel boot cmdline, so the memory controller never reaches systemd.\n\nQuick check:\n\n```bash\ngrep -o \"cgroup_disable=memory\" /proc/cmdline\n# Prints \"cgroup_disable=memory\" → you're hit.\n```\n\nFull runbook with copy-pasteable commands, verification steps, and\nrevert instructions: **[doc/cgroup-memory-on-raspberry-pi-os.md](doc/cgroup-memory-on-raspberry-pi-os.md)**.\n\nThe deployment doctor at `/api/doctor/deployment` also detects this\nscenario and surfaces the same kernel-cmdline fix in its `remediation`\narray, so you don't have to guess which layer is broken first.\n\n### Raising the open-files limit (`nofile`)\n\nSome managed containers ask for a high per-process open-files limit\n(`RLIMIT_NOFILE`). QuestDB is the common case — it recommends\n`nofile=1048576` and otherwise logs an open-files warning and risks WAL\ncorruption under heavy ingestion.\n\nA containerized process inherits `nofile` from the **container runtime**,\nnot from the host's `fs.file-max` sysctl — so raising `fs.file-max` does\n**not** help here. And under **rootless Podman** a container can never\nraise its hard limit above the limit of the user that runs the runtime.\nWhen a plugin requests more than the host allows, signalk-container clamps\nthe request to the host ceiling so the container still starts (you'll see\nan advisory in the requesting plugin's config panel, e.g. QuestDB's\n\"open-files limit capped by the host\"). Where the ceiling cannot be read\nat all (Signal K on macOS with podman machine — the limits live inside the\nVM), the request goes through unclamped; if the runtime then rejects it,\nsignalk-container retries once **without** the nofile request, so the\ncontainer still starts — with the runtime's default limits — and the same\nadvisory reports the shortfall. To grant the full value, raise the host\nlimit.\n\n**Check the limit the container actually got:**\n\n```bash\n# podman, or `docker exec` on Docker\npodman exec <sk-container> cat /proc/1/limits | grep -i \"open files\"\n# Max open files   524288   524288   ← the per-process cap in effect\n```\n\n**Rootless Podman** runs under the systemd user session, so the lever is the\nuser manager's open-files limit, which a rootless container can never exceed.\nThere are two places to set it; on stock Debian / Raspberry Pi OS you usually\nneed the **second**. Editing `/etc/security/limits.conf` does **not** help —\n`pam_limits` only touches login shells, not the user manager that parents the\npodman socket. `LimitNOFILE` takes a `soft:hard` form; a single number sets\nsoft = hard, and the container's hard ceiling is the user manager's _hard_\nlimit.\n\n**1. Per-user-manager drop-in.** One-time, requires sudo:\n\n```bash\nsudo mkdir -p /etc/systemd/system/user@.service.d\nsudo tee /etc/systemd/system/user@.service.d/nofile.conf <<'EOF'\n[Service]\nLimitNOFILE=1048576\nEOF\nsudo systemctl daemon-reload\n```\n\nThe new limit only applies once the **user manager itself restarts** — and\n`daemon-reload` does **not** restart an already-running `user@<uid>.service`.\nOn a headless boat the SK user has linger enabled (`loginctl enable-linger`),\nso logging out and back in does not tear it down. Force a fresh user manager:\n\n```bash\nsudo systemctl restart user@$(id -u <sk-user>).service   # or just reboot\n```\n\nNote that restarting the **container** is not enough on its own: a restart\nre-applies the nofile value stored when the container was created, so a\ncontainer created under the old ceiling keeps the lower limit. Since\nsignalk-container 1.25.3 this resolves itself — on the next Signal K start,\n`ensureRunning` compares the limit the container actually runs with against\nwhat the host can now grant and recreates the container to apply the raise.\nOn older versions, remove the container (`podman rm -f sk-<name>`) so the\nnext plugin start recreates it with the raised limit.\n\n> **Rootless Podman < 5.5.0**: the docker-compat API silently drops the\n> ulimit request at container create\n> ([containers/podman#25881](https://github.com/containers/podman/issues/25881),\n> fixed in 5.5.0) — containers instead **inherit the podman service's own\n> limits**. The user-manager drop-in above is then not just the ceiling but\n> the actual source of the container's limit, and the recreate described\n> above is what picks it up.\n\n**2. System-wide default (Raspberry Pi OS / openplotter, and the reliable\nfallback).** Stock Debian / Pi OS ships `/etc/systemd/system.conf` with a\ncommented `#DefaultLimitNOFILE=1024:524288` — that 524288 _hard_ default is\nwhat bounds the per-unit request when step 1 doesn't take. Raise the system\n(PID 1) manager's default directly:\n\n```bash\nsudo sed -i 's/^#\\?DefaultLimitNOFILE=.*/DefaultLimitNOFILE=1048576:1048576/' /etc/systemd/system.conf\nsudo systemctl daemon-reexec   # NOT daemon-reload — manager-global defaults\n                               # are only re-read when PID 1 re-executes itself\nsudo reboot                    # respawns the lingering user@.service + podman\n                               # under the raised default\n```\n\n**Rootful Podman / Docker** read the limit from the daemon's own service.\nFor Docker, set `LimitNOFILE=1048576` in a `docker.service` drop-in\n(`/etc/systemd/system/docker.service.d/nofile.conf`), `daemon-reload`, and\nrestart the daemon.\n\n**podman machine (macOS).** Signal K runs on macOS but the containers run\ninside podman machine's Linux VM, so signalk-container cannot see the VM's\nlimits: the request passes through unclamped, the VM's runtime rejects it,\nand signalk-container starts the container with the runtime's default\nlimits and reports the shortfall (see above) instead of failing the start.\nTo grant the full value, raise the limits inside the VM:\n\n```bash\npodman machine ssh\nsudo mkdir -p /etc/systemd/system/user@.service.d /etc/systemd/system/podman.service.d\nsudo tee /etc/systemd/system/user@.service.d/nofile.conf <<'EOF'\n[Service]\nLimitNOFILE=1048576\nEOF\nsudo cp /etc/systemd/system/user@.service.d/nofile.conf /etc/systemd/system/podman.service.d/nofile.conf\nsudo systemctl daemon-reload\nexit\npodman machine stop && podman machine start\n```\n\nThe `user@.service` drop-in covers the default rootless connection; the\n`podman.service` copy covers a rootful connection. Verify from macOS —\n\n```bash\npodman run --rm --ulimit nofile=1048576:1048576 docker.io/library/alpine sh -c 'ulimit -n -H'\n```\n\n— should print `1048576`. Then remove the container with its actual managed\nname — `sk-` is the default namespace prefix, so for signalk-questdb that is\n`podman rm -f sk-signalk-questdb` — and the next plugin start recreates it\nwith the full request granted.\n\nThe value cannot exceed the kernel's absolute per-process cap, `fs.nr_open`\n(`cat /proc/sys/fs/nr_open` — typically ~1 billion, so not a practical limit).\nVerify (either path):\n\n```bash\nsystemctl show user@$(id -u <sk-user>).service -p LimitNOFILE\n# LimitNOFILE=1048576   ← the user manager now allows it\n<runtime> exec <sk-container> cat /proc/1/limits | grep -i \"open files\"\n# Max open files   1048576   1048576   ← the container actually got it\n```\n\n### Watch out for systemd auto-restart (Quadlet / `Restart=always`)\n\nIf you run Signal K via a podman Quadlet (`*.container` in\n`~/.config/containers/systemd/`) or a systemd unit with\n`Restart=always`, the unit silently restarts the SK container within\n`RestartSec` seconds of any stop — including operator-initiated\n`podman stop`. This races with manually-started replacement containers\non the same port.\n\nFor test/diagnostic swaps, temporarily disable the unit's\nrestart/recovery policy before stopping the container and re-enable it\nafterward. With a `--user` Quadlet (substitute your actual unit name):\n\n```bash\nsystemctl --user mask  <your-signalk-unit>.service   # suppress auto-restart\n# … run your test container on port 3000 …\nsystemctl --user unmask <your-signalk-unit>.service  # re-enable\nsystemctl --user start  <your-signalk-unit>.service\n```\n\nThis is purely an operator-side consideration; signalk-container has no\nvisibility into systemd-managed lifecycles.\n\n## Config Panel\n\nThe plugin embeds a React config panel in the Signal K Admin UI (via Module Federation). It's the recommended way to manage containers — you shouldn't need to edit JSON directly.\n\n### Runtime section\n\n- Detected runtime with version (Podman or Docker)\n- Green status indicator when available, red if no runtime was found\n\n### Settings\n\n- **Preferred runtime** -- auto-detect, or force `podman`/`docker`\n- **Auto-prune images** -- off, weekly, or monthly scheduled cleanup of dangling (`<none>`) images. The interval is measured in wall-clock time and survives server restarts; when a prune is overdue at startup (or has never run), it fires a few minutes after the server comes up. Setting this to `off` also disables the version cleanup below.\n- **Keep N prior managed-image versions** -- on the prune schedule above, also remove superseded versions of images belonging to managed containers, keeping this many prior versions in addition to the running one (default `1`; `0` keeps only the running image). Only touches images of containers this plugin manages — never your other images (e.g. a hand-pulled questdb/grafana), the running image, or any image in use by a container. See [Image version cleanup](#image-version-cleanup).\n- **Update check interval** -- how often to check consumer plugins for new container images (1h to 1 week, default 24h)\n- **Background update checks** -- toggle for metered connections; manual checks still work when off\n- **CPU priority: containers / jobs** -- soft CPU weight every managed container (default `normal`) and every one-shot job (default `lowest`) gets when they compete for CPU. See [CPU priority](#cpu-priority).\n- **Disable user-namespace remap (ZFS escape hatch)** -- off by default. Secondary fix for ZFS / id-map-less hosts; prefer the host-side `fuse-overlayfs` storage driver first ([ZFS host notes](#zfs-and-other-idmap-incompatible-filesystems)). Enable only if container creation fails with `crun: writing file /proc/<pid>/gid_map: Invalid argument` and you cannot switch storage drivers. With the flag on, signalk-container stops emitting `--userns=keep-id` for rootless Podman; bind-mount file ownership still lands on the host caller for root-by-default images (questdb, grafana, mayara), but non-root images lose host-caller ownership in exchange for being able to start at all.\n\n### Managed Containers (one card per running or stopped container)\n\n- Container name, image, state, and port mappings\n- **Start** / **Stop** / **Logs** / **Remove** buttons appropriate to the current state\n- **Logs** opens a live-streaming popup of the container's combined stdout/stderr — works for both running and stopped containers. A container that never started has no logs; the empty log view then shows the runtime's record of the last start failure (inspect `.State.Error`) so the reason is visible without shell access\n- **Current effective resource limits** shown as compact badges (e.g. `1.5 CPU · 512m · 200 PIDs`)\n- **Override active** amber badge when the user has configured a resource override for the container\n- **Updates row** (when the consumer plugin has registered with the update service):\n  - Color-coded badge: `✓ up to date`, `↑ v3.4.0 available`, `↻ rebuild available` (floating tag), `📡 offline` (with cached state fallback), `⚠ check error`\n  - \"checked 5m ago\" staleness indicator\n  - **Check now ↻** button for an immediate fresh check\n\n### Resource Limits Editor (expands inline when you click \"Edit Limits\" on a running container)\n\n- Five primary fields visible by default: CPU cores, CPU priority (a tier, or a raw shares value), Memory, Memory+swap, Max processes\n- **Advanced** section (collapsed) for CPU pinning, memory reservation, OOM score adjust\n- **× button** next to each field to explicitly unset (send `null`, removing a plugin-default limit); the CPU priority select has none — Normal is the unset\n- **Apply** -- live update where possible, recreate where needed, with a clear result box showing which method was used and any warnings (e.g. \"dropped cpusetCpus — not delegated by cgroups\")\n- **Revert** -- discard unsaved form edits, re-seed from current effective state\n- **Reset to default** -- clear the user override entirely and restore the consumer plugin's pristine default limits (confirmation dialog warns about possible recreate)\n- After Apply or Reset, the form re-seeds from the server's fresh state so the inputs always match what's actually running\n\n### Maintenance\n\n- **Prune Dangling Images** button with before/after space reclaimed summary\n\n## Setting Resource Limits\n\nOn a boat with limited compute (typically a Pi 4/5 or low-power x86 mini PC), one runaway container can starve Signal K, raise NMEA decode latency, trigger thermal throttling, or even take the host down via OOM. signalk-container exposes podman/docker resource flags so consumer plugins can set sensible defaults — and you, as the user, can tune them per-container in two ways: **the config panel UI (recommended)** or direct JSON edit (for scripted/automated setups).\n\n### How it works\n\nEach consumer plugin (signalk-questdb, signalk-grafana, mayara, etc.) declares default CPU/memory limits when it starts its container. Your override is **merged field-by-field** on top of the plugin's defaults, and only the fields that actually differ from the default get stored. This means if a future plugin version bumps its memory default from 512m to 1g, your override for just `cpus` will automatically pick up the new memory value — no manual edit needed.\n\n### Using the Config Panel (recommended)\n\n1. Open the Signal K admin UI → Plugin Config → **Container Manager**\n2. Find the container you want to tune in the \"Managed Containers\" list\n3. Click **Edit Limits ▸** on the row\n4. Edit the CPU cores, CPU priority, Memory, Memory+swap, or Max processes fields. Use the × button next to a field to explicitly unset a limit the plugin set. Click **Advanced** to access cpusetCpus, memoryReservation, and oomScoreAdj.\n5. Click **Apply** — live updated where possible (no downtime), recreated where needed. The result box shows which method was used plus any warnings.\n6. To restore the plugin's default: click **Reset to default** (amber button). This clears your override and applies the pristine default to the running container.\n\nThe form re-seeds from the server's fresh state after every Apply or Reset, so the displayed values always match what's actually running.\n\n### Available fields\n\n| Field               | Example          | What it does                                                                                                                                                             |\n| ------------------- | ---------------- | ------------------------------------------------------------------------------------------------------------------------------------------------------------------------ |\n| `cpus`              | `1.5`            | Hard CPU cap. `1.5` = max 1.5 cores. The most important field for stability.                                                                                             |\n| `cpuShares`         | `512`            | Soft CPU weight under contention (`--cpu-shares`). Unset = the runtime default (`cpu.weight` 100); the panel offers named tiers. See [CPU priority](#cpu-priority).      |\n| `cpusetCpus`        | `\"1,2\"`          | Pin to specific cores. Useful to keep heavy containers off core 0 where Signal K runs. May force a recreate on hosts where the cpuset cgroup controller isn't delegated. |\n| `memory`            | `\"512m\"`, `\"2g\"` | Hard memory cap. Container is OOM-killed if exceeded.                                                                                                                    |\n| `memorySwap`        | `\"512m\"`         | Memory + swap total. **Set equal to `memory` to disable swap entirely** — recommended on Pi/eMMC where swap is slow.                                                     |\n| `memoryReservation` | `\"256m\"`         | Soft memory floor. Kernel reclaims first from containers above this.                                                                                                     |\n| `pidsLimit`         | `200`            | Cap on processes/threads. Prevents fork bombs and thread leaks.                                                                                                          |\n| `oomScoreAdj`       | `500`            | OOM kill priority, -1000..1000. Higher = killed first when host runs out of memory. Set at container create time only — forces a recreate when changed.                  |\n\n### Direct JSON (scripted/advanced)\n\nThe UI writes to a `containerOverrides` map in `plugin-config-data/signalk-container.json`. You can edit this directly if you prefer — useful for automation or bulk configuration:\n\n```json\n{\n  \"configuration\": {\n    \"containerOverrides\": {\n      \"mayara-server\": {\n        \"cpus\": 1.5,\n        \"memory\": \"512m\",\n        \"memorySwap\": \"512m\"\n      }\n    }\n  }\n}\n```\n\nThe key (`mayara-server`) is the container name **without** the `sk-` prefix that signalk-container adds internally. Use `null` for a field to explicitly remove a limit set by the plugin:\n\n```json\n{\n  \"mayara-server\": { \"memory\": null }\n}\n```\n\nAfter editing the file, restart the Container Manager plugin from the Signal K admin UI (or run the REST calls below) for the changes to take effect on running containers.\n\n### REST API (for scripts or external tools)\n\n```bash\n# Read current state\ncurl http://localhost:3000/plugins/signalk-container/api/containers/mayara-server/resources\n\n# Apply a new override (live or recreate as needed)\ncurl -X POST http://localhost:3000/plugins/signalk-container/api/containers/mayara-server/resources \\\n  -H 'Content-Type: application/json' \\\n  -d '{\"cpus\": 2}'\n\n# Reset to plugin default (clear the override)\ncurl -X DELETE http://localhost:3000/plugins/signalk-container/api/containers/mayara-server/resources\n```\n\n### When changes take effect\n\n- **Immediately via the UI or REST API** (`updateResources`): signalk-container tries `podman update` / `docker update` first (instantaneous, no downtime). Falls back to stop+remove+create if the runtime can't apply the change live (e.g. unsetting memory limits, or changing `cpusetCpus` / `oomScoreAdj` which are set at container create time only). A live update leaves the container's `restart` policy as configured.\n- **On next consumer plugin restart**: the merge happens automatically inside `ensureRunning` — useful for installations that manage via JSON edits and don't want to use the REST API.\n- **Persistence**: overrides applied via the UI or REST API are auto-persisted to `plugin-config-data/signalk-container.json` — they survive Signal K restarts without any extra action.\n\n### Verifying limits are applied\n\nCheck the live container directly:\n\n```bash\npodman inspect sk-mayara-server --format '\n  cpus={{.HostConfig.NanoCpus}}\n  memory={{.HostConfig.Memory}}\n  pids={{.HostConfig.PidsLimit}}\n'\n```\n\n`NanoCpus` is in CPU-nanoseconds per second; `1500000000` = 1.5 cores. Memory is in bytes.\n\nOr via the REST API:\n\n```bash\ncurl http://localhost:3000/plugins/signalk-container/api/containers/mayara-server/resources | jq\n# {\n#   \"name\": \"mayara-server\",\n#   \"effective\": { \"cpus\": 1.5, \"memory\": \"512m\", ... },  // what's actually applied\n#   \"override\": { \"cpus\": 1.5 }                            // only what the user changed\n# }\n```\n\nNote that `override` contains only the fields that differ from the consumer plugin's default — this minimization is automatic and lets future plugin default bumps flow through without you having to re-edit your override.\n\n### CPU priority\n\n`cpus` is a hard cap; `cpuShares` is a _soft_ weight that only matters when containers actually compete for CPU. On an idle host it changes nothing; when a chart import saturates every core, it decides who gets the CPU. The plugin exposes it as named tiers:\n\n| Tier     | `cpuShares` | `cpu.weight` on crun, runc < 1.3.2 | `cpu.weight` on runc ≥ 1.3.2 | Default for        |\n| -------- | ----------- | ---------------------------------- | ---------------------------- | ------------------ |\n| `high`   | `5120`      | 196                                | 363                          |                    |\n| `normal` | _unset_     | 100                                | 100                          | managed containers |\n| `low`    | `512`       | 20                                 | 59                           |                    |\n| `lowest` | `128`       | 5                                  | 21                           | jobs (`runJob`)    |\n\nTwo plugin-wide settings pick the default tier for managed containers and for jobs. A consumer plugin's own `resources.cpuShares` beats the tier, and a per-container override (panel or `containerOverrides`) beats both — the tier is simply the bottom layer of the same merge. To return one container to `normal`, pick Normal in the panel's limits editor (or `POST …/resources` with `{\"cpuShares\": null}`): that recreates the container, because neither runtime can un-set shares in place. A `cpuShares: null` written straight into `containerOverrides` is only picked up as far as a live update can go — the next consumer restart logs \"cannot live-unset\" and the container keeps its old weight until it is recreated.\n\nTwo things worth knowing:\n\n- **`normal` means no request, not 1024.** The kernel schedules by cgroup v2 `cpu.weight`; the OCI runtime translates `--cpu-shares` into it, and the translation is the runtime's, not the kernel's: crun (Podman's default) and runc before 1.3.2 use a linear formula under which an explicit `1024` lands at weight 39 — _below_ an untouched container at 100 — while runc 1.3.2 and later use a quadratic one that maps 1024 to 100 (measured above on crun 1.21 and runc 1.4.3). Unset is 100 on every runtime and the tier order holds on every runtime; only the absolute numbers differ. Don't \"reset\" a container by typing 1024; use `normal` (the panel) or `null` (JSON).\n- **Weights rank cgroup siblings only.** Managed containers and jobs are siblings of each other, so the tiers rank them against one another. Signal K itself usually lives in a different cgroup branch, so ranking it _above_ the plugin containers is a systemd `CPUWeight=` at the right level, not a tier here:\n  - Universal installer (rootless Podman, Signal K as a Quadlet unit in `app.slice`, managed containers in `user.slice`): the installer writes `~/.config/systemd/user/app.slice.d/50-signalk-cpu-priority.conf` with `[Slice] CPUWeight=300`. A hand-rolled rootless setup with Signal K as a user service takes the same drop-in.\n  - Bare-metal Signal K as a system service with rootful Podman/Docker: `signalk.service` and the `docker-*.scope` / `libpod-*.scope` containers are siblings under `system.slice`, so `systemctl edit signalk.service` → `[Service] CPUWeight=300` does it.\n  - Signal K itself in Docker (compose): its container is a sibling of the managed ones under `system.slice`, so the tiers already rank against it; give the Signal K service `cpu_shares: 5120` to put it on top.\n\n  The host's own services in `system.slice` are untouched by any of this.\n\nChanging a tier _down_ (or between `high`/`low`/`lowest`) is applied live (`podman update` / `docker update`) to running containers on the next consumer-plugin restart. Moving a container _up_ to `normal` needs a recreate: neither runtime can un-set shares in place, so the restart only logs the mismatch — use the panel (Normal → Apply, or Reset to default) to recreate.\n\nIf the host has not delegated the `cpu` cgroup controller, the tiers are stored but silently have no effect — the panel says so next to the selects, and the [doctor](#quick-check-apidoctordeployment) reports `cgroup-controllers-incomplete`.\n\n### Picking the right values\n\n1. Run the container without overrides for a typical workload\n2. Watch resource use: `podman stats sk-mayara-server`\n3. Note peak CPU% and peak memory\n4. Set `cpus` ≈ peak / 100 + 25% headroom; `memory` ≈ peak rounded up + 25% headroom\n5. Re-test under load to make sure the container still functions inside its caps\n\nThe plugin developer guide has a detailed walk-through in [doc/plugin-developer-guide.md#resource-limits](doc/plugin-developer-guide.md#resource-limits).\n\n> If you're running Signal K inside a container and a memory limit\n> appears to be ignored, the host's cgroup controller delegation is\n> almost certainly the cause — see [Cgroup controller delegation](#cgroup-controller-delegation) above.\n\n## Persistent storage for managed containers (`signalkDataMount`)\n\nWhen a managed container needs somewhere durable to read and write (e.g. HLS segments, exports, caches), use `signalkDataMount` instead of computing and hardcoding a host path or volume name.\n\nIt mounts **signalk-container's own plugin data directory** —\n`<configRoot>/plugin-config-data/signalk-container/`. Signal K rewrites\n`getDataDirPath()` per plugin and this resolves it against signalk-container's\napp, so the source is the same for every managed container whichever plugin\nasked — never the caller's own directory, since a cross-plugin API reached\nthrough `globalThis` never learns who called it.\n\nThe container never sees more than that directory. A bind mount is narrowed\nto the exact host path; a **named volume** is accepted only when it is\nattached to the directory itself, because signalk-container mounts a volume\nwhole, and one covering a parent would expose that volume's entire contents —\nsibling plugins' data, or the whole SignalK config tree when the volume sits\non the config root. That case fails with an error rather than over-sharing —\nsee the note below.\n\n**Namespace a subdirectory** (as the example below does) so two consumers\ncannot collide. For the SignalK config root see `signalkConfigRootMount`; to\nmount your own plugin's data dir, translate it with `resolveHostPath`.\n\n```typescript\nconst SK_MOUNT = \"/signalk-data\";\n\nawait containers.ensureRunning(\"my-worker\", {\n  image: \"myorg/myworker\",\n  tag: \"latest\",\n  signalkDataMount: SK_MOUNT, // ← shared managed-container storage\n  command: [\"--output\", path.join(SK_MOUNT, \"my-plugin/output/result.bin\")],\n});\n```\n\nsignalk-container resolves the correct source automatically:\n\n| Deployment                     | What gets mounted                                                 |\n| ------------------------------ | ----------------------------------------------------------------- |\n| Bare-metal Signal K            | `app.getDataDirPath()` as a bind mount (already a host path)      |\n| Docker, volume-backed data dir | the named volume (e.g. `mystack_signalk-data`)                    |\n| Docker, bind-backed data dir   | the exact host path, even when a parent directory is bind-mounted |\n| Podman (rootless or root)      | same logic; named volumes receive no `:Z` flag                    |\n\nOn bare metal or a bind mount, `SK_MOUNT` corresponds to the root of the\nresolved directory, so paths compose with `path.join`:\n\n```typescript\n// Path inside the managed container, for a path under the resolved dir:\nconst containerPath = path.join(SK_MOUNT, \"my-plugin\", \"output\", \"result.bin\");\n```\n\nA **named volume** backing the directory works the same way, since it is\nonly accepted when attached to that directory. Call\n`containers.resolveSignalkDataMount()` if you need the resolved source (a\nhost path or a volume name) at runtime.\n\n> [!note]\n> signalk-container mounts a named volume whole: it sends no subpath, and podman's\n> Docker-compat endpoint ignores one anyway (measured on 5.4.2 — Docker Engine would\n> honour it, so narrowing cannot work uniformly). A volume attached to the\n> resolved directory is mounted whole, which is exactly that directory — fine. A volume\n> attached to a **parent** (the SignalK config root, say) would expose far more than was\n> asked for, so `ensureRunning` rejects it with an error naming the volume and the fix:\n> attach the volume to the data directory, or use `resolveHostPath()` and handle the\n> returned `subPath` deliberately. Also avoid writing to paths inside `SK_MOUNT` that are\n> separately bind-mounted in the Signal K container — those are not visible from inside\n> the managed container.\n\nYou can also call `containers.resolveSignalkDataMount()` if you need to inspect the resolved source at runtime (e.g. for logging).\n\n## Mounting the SignalK config root (`signalkConfigRootMount`)\n\n`signalkDataMount` resolves to `app.getDataDirPath()`, which Signal K rewrites per-plugin to the plugin's _own_ subdirectory (`<configRoot>/plugin-config-data/<pluginId>/`). That's right when a managed container needs a private writable area inside the SignalK data tree.\n\nWhen a managed container needs the **entire SignalK installation config** (`settings.json`, `security.json`, `package.json`, the whole `plugin-config-data/` tree, etc.) — typical for backup, audit, or config-sync tools — use `signalkConfigRootMount` instead. It resolves through `app.config.configPath` (the actual top of the tree, typically `~/.signalk/`).\n\n```typescript\nconst SK_MOUNT = \"/signalk-data\";\n\nawait containers.ensureRunning(\"signalk-backup-server\", {\n  image: \"ghcr.io/dirkwa/signalk-backup-server\",\n  tag: \"latest\",\n  signalkConfigRootMount: SK_MOUNT, // ← mount the SignalK config root\n});\n// Inside the container:\n//   /signalk-data/settings.json\n//   /signalk-data/security.json\n//   /signalk-data/plugin-config-data/<plugin>/...\n```\n\nThe deployment-mode resolution is identical to `signalkDataMount`: bare-metal returns the host path directly, containerised SignalK gets resolved through the SignalK container's mount list (named volumes preserved, bind mounts walked correctly).\n\n`app.config.configPath` is provided by the SignalK server runtime. If the caller's `app` object lacks it (a non-standard host), `ensureRunning()` throws.\n\n> [!note]\n> The same named-volume caveat applies — the volume is mounted whole. If `app.config.configPath` happens to live under a parent-directory bind, signalk-container computes the exact host path so the container sees the right tree.\n\n### When SignalK runs in a container: self-container detection\n\n`signalkDataMount`, `signalkAccessiblePorts`, and `resolveHostPath` all need to know **which container** SignalK itself is running in (so they can read its mount list and join its network). signalk-container detects this automatically by cascading three signals — most reliable first:\n\n1. **`SIGNALK_CONTAINER_ID` environment variable** (explicit override)\n2. **`HOSTNAME`** — the default in container deployments where the runtime sets `HOSTNAME=<container-id>`\n3. **`/proc/self/cgroup`** — extracts the container ID from the cgroup path (works for cgroup v1/v2, Docker, Podman rootless and rootful, and Kubernetes)\n\nThe cascade is **mostly** robust against the **`network_mode: host`** case where `HOSTNAME` is the host machine name (e.g. `halos`) rather than the container ID — the cgroup-based step usually picks up the real ID. On some hosts, however, `/proc/self/cgroup` under host networking reads just `0::/` (no container path), and the cascade falls through entirely. When the doctor reports `status: self-id-unresolved` and consumer plugins fail to create sibling containers with `Error: statfs <path>: no such file or directory`, set the override explicitly:\n\n**When automatic detection fails** (custom deployment, unusual cgroup layout, or a future runtime we don't recognise), set `SIGNALK_CONTAINER_ID` to the container's name or ID in your compose file:\n\n```yaml\nservices:\n  signalk:\n    image: signalk/signalk-server\n    container_name: signalk\n    environment:\n      - SIGNALK_CONTAINER_ID=signalk # ← matches container_name above\n    network_mode: host # only required if you use host networking\n    # ... volumes, etc.\n```\n\nYou'll see \"could not detect self container id\" in the SignalK log when the cascade has failed; the override resolves it without code changes.\n\nFor a full walkthrough of the in-container deployment (socket bind-mount, self-container-id override, reference quadlet, troubleshooting table) see **[doc/run-in-container.md](doc/run-in-container.md)**. On [HaLOS](https://github.com/halos-org/halos) the Doctor recognises the platform and renders a paste-once fix for the docker-socket permission it ships with — see [doc/run-in-container.md#halos](doc/run-in-container.md#halos).\n\n## Connecting back to a container service (`signalkAccessiblePorts`)\n\nWhen a managed container exposes an HTTP, TCP, or other service that the SignalK process itself needs to connect to (e.g. a video stream, a database, an inference engine), use `signalkAccessiblePorts` instead of hardcoding port bindings or writing deployment-detection logic in your plugin.\n\n```typescript\nconst STREAM_PORT = 8090;\n\nawait containers.ensureRunning(\"my-streamer\", {\n  image: \"myorg/streamer\",\n  tag: \"latest\",\n  signalkAccessiblePorts: [STREAM_PORT],\n  restart: \"unless-stopped\",\n  command: [\"--listen\", String(STREAM_PORT)],\n});\n\nconst addr = await containers.resolveContainerAddress(\n  \"my-streamer\",\n  STREAM_PORT,\n);\nif (!addr) throw new Error(\"Container address not available\");\n// Connect from the SignalK process — addr is always the right host:port:\nhttp.get(`http://${addr}/stream`, handleResponse);\n```\n\nsignalk-container resolves the correct networking strategy automatically:\n\n| Deployment                             | Strategy                                                                        | Address returned                                         |\n| -------------------------------------- | ------------------------------------------------------------------------------- | -------------------------------------------------------- |\n| Bare-metal Signal K                    | Port bound to `127.0.0.1` (first free port ≥ declared value)                    | `127.0.0.1:8090` (or `127.0.0.1:8091` if 8090 was taken) |\n| Containerised, user-defined network    | Container attached to SignalK's own Docker/Podman network; no host port exposed | `sk-my-streamer:8090` (Docker DNS)                       |\n| Containerised, default bridge (no DNS) | Container shares SignalK's network namespace                                    | `127.0.0.1:8090`                                         |\n\nThe allocated address is cached for the lifetime of the plugin session, so repeated `ensureRunning()` calls never trigger an unwanted container recreate due to a port number change.\n\n> [!note]\n> `signalkAccessiblePorts` sets up networking automatically. Do not combine it with\n> a manual `ports` or `networkMode` entry for the same container — the field takes\n> full ownership of those concerns.\n\n## Exposing host devices (`devices`, `groupAdd`, `capAdd`)\n\nWhen a managed container needs a host device — a USB speakerphone for a voice assistant, a serial/GPS dongle, a GPU — declare it in the config instead of hand-rolling runtime flags:\n\n```typescript\nawait containers.ensureRunning(\"voice-satellite\", {\n  image: \"myorg/voice-satellite\",\n  tag: \"1.0.0\",\n  devices: [\"/dev/snd\"], // directory → hot-plug mode\n  groupAdd: [\"audio\"], // host group that owns the device nodes\n  restart: \"unless-stopped\",\n});\n```\n\n`devices` accepts two entry forms:\n\n- **A device node**, in docker `--device` syntax `hostPath[:containerPath[:permissions]]` — e.g. `\"/dev/ttyUSB0\"` or `\"/dev/ttyUSB0:/dev/gps0:rw\"`. The node is attached statically at create time, so a device that is replugged while the container runs is only picked up on the next recreate.\n- **A device directory** — e.g. `\"/dev/snd\"` — which enables **hot-plug mode**: the whole directory is bind-mounted (and, where the runtime supports device-cgroup rules, its device class is opened up too), so a device node that appears after a USB replug is immediately usable, and a directory that is **empty** at container start (device unplugged) still works once the device is plugged in. Use this for anything that may be replugged while the container runs — USB audio, input devices, GPUs.\n\nAn entry whose host path does not exist is skipped with a warning rather than failing the start (same philosophy as `ifMissing: \"skip\"` volumes): on a boat, an unplugged USB device must never keep a container down. One exception: when Signal K itself runs in a container, a well-known device _directory_ (e.g. `/dev/snd`) that isn't visible from inside the Signal K container is emitted anyway — the runtime resolves the bind against the real host, where the device may well exist — and dropped later only if the host rejects it too.\n\n`groupAdd` adds supplementary groups to the container process. Names are resolved to numeric GIDs against the **host's** `/etc/group` before being handed to the runtime — docker and podman resolve bare names against the container _image's_ `/etc/group`, whose GIDs need not match the host's, and it is the host GID the kernel checks when the process opens a host device node. Numeric entries pass through unchanged; a name the host doesn't know is skipped with a warning.\n\nOn rootless Podman (the recommended deployment) device access is governed by plain file permissions on the bound nodes rather than device-cgroup rules. What actually grants access there is that signalk-container preserves the Podman caller's own host supplementary groups on the container process — so `groupAdd: [\"audio\"]` works only when the user running Podman is already in the host `audio` group. `groupAdd` itself doesn't confer host-group membership; on rootless it names which of the caller's already-held groups matter (and on docker / rootful Podman, where the runtime can apply it directly, it is the mechanism).\n\n> Note when verifying by hand: some device nodes (e.g. `/dev/snd/timer`) are blocking character devices — a `read` hangs until an event, which looks like a failure. Test access by _opening_ the node (`exec 3</dev/snd/timer`), not by reading it. Inside a rootless container `id` may show the supplementary groups as `nobody`; that is expected — the kernel still checks the caller's real host GIDs against the node, so access works regardless of the display.\n\n### Capabilities (`capAdd`)\n\nSome workloads need a Linux capability rather than (or as well as) a device node. `ContainerConfig.capAdd` maps to `--cap-add`:\n\n```js\ncapAdd: [\"SYS_ADMIN\"], // or \"CAP_SYS_ADMIN\" — the same capability\n```\n\nNames are accepted with or without the `CAP_` prefix and normalised to the prefixed form the runtimes report, so rewriting one spelling as the other does not recreate the container.\n\nEvery capability widens what the container may do to the host, so request the narrowest set that works. `SYS_ADMIN` in particular is close to root — prefer a specific capability, a device passthrough, or `groupAdd` when one of those covers the need.\n\nCapabilities are not a route to privileges the runtime itself lacks: under rootless Podman the container's capabilities are bounded by the invoking user's, so an entry can be accepted at create time and still not grant the access you expected. Verify on the target host rather than assuming. There is deliberately **no `privileged` field** — that is the absence of a boundary rather than a capability.\n\nAll three fields participate in config-drift detection — adding, removing, or changing them recreates the container on the next `ensureRunning` call. That includes _removing_ a capability: the container does not keep running with a capability the consumer has dropped.\n\n> Availability: `devices` and `groupAdd` require signalk-container ≥ 1.24.0; `capAdd` requires ≥ 1.34.0. Older versions silently ignore the fields — the container still runs, just without the device access.\n\n---\n\n# Developer / plugin-author reference\n\nThe sections below are for plugin authors integrating with signalk-container. End users deploying the plugin do not need them.\n\n## How Other Plugins Use It\n\n```typescript\nconst containers = (globalThis as any).__signalk_containerManager;\nif (!containers) {\n  app.setPluginError(\"signalk-container plugin required\");\n  return;\n}\n\n// Wait for runtime detection to settle, then verify a runtime was found.\nawait containers.whenReady();\nif (!containers.getRuntime()) {\n  app.setPluginError(\"No container runtime detected\");\n  return;\n}\n\n// Start a long-running service container. ensureRunning compares this\n// config against the live container and recreates on drift — no per-\n// plugin hash file or remove() dance needed.\nawait containers.ensureRunning(\"my-service\", {\n  image: \"myorg/myimage\",\n  tag: \"latest\",\n  signalkDataMount: \"/data\", // resolves to the SignalK data dir, regardless of deployment\n  signalkAccessiblePorts: [8080], // port 8080 in the container must be reachable by SignalK\n  env: { MY_VAR: \"value\" },\n  restart: \"unless-stopped\",\n});\n\n// Get the actual address to connect to (resolved after ensureRunning)\nconst addr = await containers.resolveContainerAddress(\"my-service\", 8080);\nif (!addr) throw new Error(\"Container address not available\");\n// bare-metal  → \"127.0.0.1:8080\"  (or \"127.0.0.1:8081\" if 8080 was taken)\n// containerised → \"sk-my-service:8080\"  (Docker DNS, no host port exposed)\nconst response = await fetch(`http://${addr}/status`);\n\n// Run a one-shot job\nconst result = await containers.runJob({\n  image: \"myorg/converter\",\n  command: [\"convert\", \"--input\", \"/in/data.csv\"],\n  inputs: { \"/in\": \"/host/path/input\" },\n  outputs: { \"/out\": \"/host/path/output\" },\n  timeout: 120,\n});\n```\n\nSee [doc/plugin-developer-guide.md](doc/plugin-developer-guide.md) for the full integration guide with gotchas and patterns.\n\n## API\n\n| Method                                          | Description                                                                                                                                                                                                                                                                                                          |\n| ----------------------------------------------- | -------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------- |\n| `getRuntime()`                                  | Returns `{ runtime, version, isRootless, socketPath, ... }` (a `ContainerRuntimeInfo`) or `null`                                                                                                                                                                                                                     |\n| `whenReady()`                                   | Resolves once runtime detection settles (success OR failure). Replaces the polling-loop pattern; check `getRuntime()` after the await                                                                                                                                                                                |\n| `pullImage(image, onProgress?)`                 | Pull a container image (auto-qualifies for Podman)                                                                                                                                                                                                                                                                   |\n| `imageExists(image)`                            | Check if image exists locally                                                                                                                                                                                                                                                                                        |\n| `getImageDigest(imageOrContainer)`              | Local image ID (sha256) for an image:tag or container                                                                                                                                                                                                                                                                |\n| `ensureRunning(name, config, options?)`         | Create and start container if not running; auto-recreates on config drift across `image`, `tag`, `command`, `networkMode`, `env`, `volumes`, `ports`, `extraHosts`, `devices`, `groupAdd`, or `capAdd`                                                                                                               |\n| `recreate(name, config, options?)`              | Force-recreate: remove (if present) + ensureRunning. Always replaces an existing container (running or stopped) — use this for \"update now\" / plugin-startup self-heal flows where correctness must not depend on drift detection (1.12.0+)                                                                          |\n| `start(name)`                                   | Start a stopped container                                                                                                                                                                                                                                                                                            |\n| `stop(name)`                                    | Stop a running co","readmeFilename":"README.md"}