{"_id":"mountly","_rev":"11-a873b467ebcf829281e8a2dbf170ce2c","name":"mountly","dist-tags":{"latest":"0.2.3"},"versions":{"0.0.1":{"name":"mountly","version":"0.0.1","license":"MIT","_id":"mountly@0.0.1","maintainers":[{"name":"jagreehal","email":"jag.reehal@gmail.com"}],"dist":{"shasum":"3b29ec9d02904805b56d3022e41a4923beef3716","tarball":"https://registry.npmjs.org/mountly/-/mountly-0.0.1.tgz","fileCount":3,"integrity":"sha512-/B8ivGNn/7Rv43P4gtHFOLEnXJL9ktGDVW8MesK4bi1KeIpTuhQWtdGglFVdQ2ivLAB/KvlgqsHj0GpC9IXPWw==","signatures":[{"sig":"MEYCIQCwI4YCNmQhu7k/GNRwYY09PaUPqjTKsLv1xgktFpiRlwIhAKbKurL++AYT/nT1bnvXakOTDQuwI2nNkygnIc/XYVMI","keyid":"SHA256:DhQ8wR5APBvFHLF/+Tc+AYvPOdTpcIDqOhxsBHRwC7U"}],"unpackedSize":486},"main":"./index.js","type":"module","_npmUser":{"name":"jagreehal","email":"jag.reehal@gmail.com"},"_npmVersion":"11.6.2","description":"Name availability test — placeholder. Will be replaced with the real package or unpublished.","directories":{},"_nodeVersion":"24.12.0","_hasShrinkwrap":false,"_npmOperationalInternal":{"tmp":"tmp/mountly_0.0.1_1777191765830_0.5709280853559242","host":"s3://npm-registry-packages-npm-production"}},"0.1.0":{"name":"mountly","version":"0.1.0","license":"Apache-2.0","_id":"mountly@0.1.0","maintainers":[{"name":"jagreehal","email":"jag.reehal@gmail.com"}],"homepage":"https://github.com/jagreehal/mountly/tree/main/packages/mountly#readme","bugs":{"url":"https://github.com/jagreehal/mountly/issues"},"bin":{"mountly":"cli/index.js"},"dist":{"shasum":"bc45349c8bab17ea027d366c87de483207b9cb2f","tarball":"https://registry.npmjs.org/mountly/-/mountly-0.1.0.tgz","fileCount":32,"integrity":"sha512-sfCyLh2LoMvU2x9kB1c2tcyJDkTHW1LlcboYRCJ66T7f8fnFH+qiFo141soduThKcxRu2Yi9KbfWelq61gB2ng==","signatures":[{"sig":"MEYCIQDzFkpkQHuVIehJop4K1+Z55l+rw1oaqsC1Awd2a7MsVAIhAJKo2fBn13A5BwtX+TxLsMK402g6PFvEpKR2Av5gjOh/","keyid":"SHA256:DhQ8wR5APBvFHLF/+Tc+AYvPOdTpcIDqOhxsBHRwC7U"}],"unpackedSize":207552},"main":"./dist/index.js","type":"module","types":"./dist/index.d.ts","exports":{".":{"types":"./dist/index.d.ts","import":"./dist/index.js"}},"gitHead":"1a99ed6f38ce15952879522beff55b44adbbd1b7","scripts":{"dev":"tsup --watch","build":"tsup","prepack":"rm -f README.md LICENSE && cp ../../README.md README.md && cp ../../LICENSE LICENSE","postpack":"rm -f README.md LICENSE && ln -s ../../README.md README.md && ln -s ../../LICENSE LICENSE","typecheck":"tsc --noEmit"},"_npmUser":{"name":"jagreehal","email":"jag.reehal@gmail.com"},"repository":{"url":"git+https://github.com/jagreehal/mountly.git","type":"git","directory":"packages/mountly"},"_npmVersion":"11.6.2","description":"**On-Demand Interactive UI Platform**","directories":{},"_nodeVersion":"24.12.0","publishConfig":{"access":"public"},"_hasShrinkwrap":false,"devDependencies":{"tsup":"^8.5.1","typescript":"^6.0.3"},"_npmOperationalInternal":{"tmp":"tmp/mountly_0.1.0_1777227831730_0.3176392839928719","host":"s3://npm-registry-packages-npm-production"}},"0.1.1":{"name":"mountly","version":"0.1.1","license":"Apache-2.0","_id":"mountly@0.1.1","maintainers":[{"name":"jagreehal","email":"jag.reehal@gmail.com"}],"homepage":"https://github.com/jagreehal/mountly/tree/main/packages/mountly#readme","bugs":{"url":"https://github.com/jagreehal/mountly/issues"},"bin":{"mountly":"cli/index.js"},"dist":{"shasum":"1f30c6eb2fd559d33ba4a2c5584b03f8c64ad33b","tarball":"https://registry.npmjs.org/mountly/-/mountly-0.1.1.tgz","fileCount":83,"integrity":"sha512-UjHtu2TJ/oJrC8J9+qnVfKb0ff+uSCjdxPJFMeyxSBBzQdnR66BsDzd5RGkTL0QC+Q6jbu/xtnuKrO+CkJaLiQ==","signatures":[{"sig":"MEUCIQDbwhSsdA6TyYWKos1eJ+lcQpgsw7w1r4M56zhYwdjwTgIgX7D852V/ewNYCgAPsnZDggq4QNYSnZABtmbtK1ZCsT8=","keyid":"SHA256:DhQ8wR5APBvFHLF/+Tc+AYvPOdTpcIDqOhxsBHRwC7U"}],"attestations":{"url":"https://registry.npmjs.org/-/npm/v1/attestations/mountly@0.1.1","provenance":{"predicateType":"https://slsa.dev/provenance/v1"}},"unpackedSize":265849},"main":"./dist/index.js","type":"module","_from":"file:mountly-0.1.1.tgz","types":"./dist/index.d.ts","exports":{".":{"types":"./dist/index.d.ts","import":"./dist/index.js"},"./core":{"types":"./dist/core.d.ts","import":"./dist/core.js"},"./plugins":{"types":"./dist/plugins-entry.d.ts","import":"./dist/plugins-entry.js"},"./runtime":{"types":"./dist/runtime-entry.d.ts","import":"./dist/runtime-entry.js"},"./devtools":{"types":"./dist/devtools-entry.d.ts","import":"./dist/devtools-entry.js"},"./overlays":{"types":"./dist/overlays-entry.d.ts","import":"./dist/overlays-entry.js"},"./prefetch":{"types":"./dist/prefetch-entry.d.ts","import":"./dist/prefetch-entry.js"},"./analytics":{"types":"./dist/analytics-entry.d.ts","import":"./dist/analytics-entry.js"}},"scripts":{"dev":"tsup --watch","build":"tsup","typecheck":"tsc --noEmit"},"_npmUser":{"name":"GitHub Actions","email":"npm-oidc-no-reply@github.com","trustedPublisher":{"id":"github","oidcConfigId":"oidc:b47ba077-f392-4e0b-9cb3-f725d6ffde31"}},"_resolved":"/tmp/2ace0c7256707fd556d909b6d7b04244/mountly-0.1.1.tgz","_integrity":"sha512-UjHtu2TJ/oJrC8J9+qnVfKb0ff+uSCjdxPJFMeyxSBBzQdnR66BsDzd5RGkTL0QC+Q6jbu/xtnuKrO+CkJaLiQ==","repository":{"url":"git+https://github.com/jagreehal/mountly.git","type":"git","directory":"packages/mountly"},"_npmVersion":"11.13.0","description":"**On-Demand Interactive UI Platform**","directories":{},"_nodeVersion":"24.14.1","publishConfig":{"access":"public"},"_hasShrinkwrap":false,"devDependencies":{"tsup":"^8.5.1","typescript":"^6.0.3"},"_npmOperationalInternal":{"tmp":"tmp/mountly_0.1.1_1777413000484_0.011851415136815424","host":"s3://npm-registry-packages-npm-production"}},"0.1.2":{"name":"mountly","version":"0.1.2","license":"Apache-2.0","_id":"mountly@0.1.2","maintainers":[{"name":"jagreehal","email":"jag.reehal@gmail.com"}],"homepage":"https://github.com/jagreehal/mountly/tree/main/packages/mountly#readme","bugs":{"url":"https://github.com/jagreehal/mountly/issues"},"bin":{"mountly":"cli/index.js"},"dist":{"shasum":"43c259b9defc52490b8d7c9c605a306677da49f7","tarball":"https://registry.npmjs.org/mountly/-/mountly-0.1.2.tgz","fileCount":83,"integrity":"sha512-sKk/L250qjowkxSeIzENsMQaH35NOGftAsPRydtQsKig32gjHXbW0QPyQzXM93TrCSn8PqSrdDV17EW+46101g==","signatures":[{"sig":"MEUCICduLMn+kK0uQPdLc6Uyc9uAs0ZpN5uzjv0KIupGUAitAiEAiksocWRzDK9M9N2ZsdvHUFlYCPq39L7zsUgzt7+FV4w=","keyid":"SHA256:DhQ8wR5APBvFHLF/+Tc+AYvPOdTpcIDqOhxsBHRwC7U"}],"attestations":{"url":"https://registry.npmjs.org/-/npm/v1/attestations/mountly@0.1.2","provenance":{"predicateType":"https://slsa.dev/provenance/v1"}},"unpackedSize":284755},"main":"./dist/index.js","type":"module","_from":"file:mountly-0.1.2.tgz","types":"./dist/index.d.ts","exports":{".":{"types":"./dist/index.d.ts","import":"./dist/index.js"},"./core":{"types":"./dist/core.d.ts","import":"./dist/core.js"},"./plugins":{"types":"./dist/plugins-entry.d.ts","import":"./dist/plugins-entry.js"},"./runtime":{"types":"./dist/runtime-entry.d.ts","import":"./dist/runtime-entry.js"},"./devtools":{"types":"./dist/devtools-entry.d.ts","import":"./dist/devtools-entry.js"},"./overlays":{"types":"./dist/overlays-entry.d.ts","import":"./dist/overlays-entry.js"},"./prefetch":{"types":"./dist/prefetch-entry.d.ts","import":"./dist/prefetch-entry.js"},"./analytics":{"types":"./dist/analytics-entry.d.ts","import":"./dist/analytics-entry.js"}},"scripts":{"dev":"tsup --watch","build":"tsup","typecheck":"tsc --noEmit"},"_npmUser":{"name":"GitHub Actions","email":"npm-oidc-no-reply@github.com","trustedPublisher":{"id":"github","oidcConfigId":"oidc:b47ba077-f392-4e0b-9cb3-f725d6ffde31"}},"_resolved":"/tmp/22508122d845efde6c544f5245adc445/mountly-0.1.2.tgz","_integrity":"sha512-sKk/L250qjowkxSeIzENsMQaH35NOGftAsPRydtQsKig32gjHXbW0QPyQzXM93TrCSn8PqSrdDV17EW+46101g==","repository":{"url":"git+https://github.com/jagreehal/mountly.git","type":"git","directory":"packages/mountly"},"_npmVersion":"11.13.0","description":"**On-Demand Interactive UI Platform**","directories":{},"_nodeVersion":"24.14.1","publishConfig":{"access":"public"},"_hasShrinkwrap":false,"devDependencies":{"tsup":"^8.5.1","typescript":"^6.0.3"},"_npmOperationalInternal":{"tmp":"tmp/mountly_0.1.2_1777487193663_0.42586466622781205","host":"s3://npm-registry-packages-npm-production"}},"0.1.4":{"name":"mountly","version":"0.1.4","license":"Apache-2.0","_id":"mountly@0.1.4","maintainers":[{"name":"jagreehal","email":"jag.reehal@gmail.com"}],"homepage":"https://github.com/jagreehal/mountly/tree/main/packages/mountly#readme","bugs":{"url":"https://github.com/jagreehal/mountly/issues"},"bin":{"mountly":"cli/index.js"},"dist":{"shasum":"83847edb971541243fa763c5546ad0574be4d612","tarball":"https://registry.npmjs.org/mountly/-/mountly-0.1.4.tgz","fileCount":107,"integrity":"sha512-yZvcgrWIvggXj9Umub37fGJOtuuJw+r/b05b5kdXP6rJrO0gOBWGJLmvNimFCQb0BtQj4p4J+/1s9rimwpNg2Q==","signatures":[{"sig":"MEYCIQDOOpfdJkgYeUbBhjtiwNtBc61m2D6Qcl25B5GtVzvVwQIhAOdknTbhBNBVia3MZnXjXLzWblAW7VtNOwNCqWzY17/W","keyid":"SHA256:DhQ8wR5APBvFHLF/+Tc+AYvPOdTpcIDqOhxsBHRwC7U"}],"attestations":{"url":"https://registry.npmjs.org/-/npm/v1/attestations/mountly@0.1.4","provenance":{"predicateType":"https://slsa.dev/provenance/v1"}},"unpackedSize":322873},"main":"./dist/index.js","type":"module","_from":"file:mountly-0.1.4.tgz","types":"./dist/index.d.ts","exports":{".":{"types":"./dist/index.d.ts","import":"./dist/index.js"},"./bus":{"types":"./dist/bus-entry.d.ts","import":"./dist/bus-entry.js"},"./url":{"types":"./dist/url-entry.d.ts","import":"./dist/url-entry.js"},"./core":{"types":"./dist/core.d.ts","import":"./dist/core.js"},"./data":{"types":"./dist/data-entry.d.ts","import":"./dist/data-entry.js"},"./test":{"types":"./dist/test-entry.d.ts","import":"./dist/test-entry.js"},"./plugins":{"types":"./dist/plugins-entry.d.ts","import":"./dist/plugins-entry.js"},"./runtime":{"types":"./dist/runtime-entry.d.ts","import":"./dist/runtime-entry.js"},"./devtools":{"types":"./dist/devtools-entry.d.ts","import":"./dist/devtools-entry.js"},"./overlays":{"types":"./dist/overlays-entry.d.ts","import":"./dist/overlays-entry.js"},"./prefetch":{"types":"./dist/prefetch-entry.d.ts","import":"./dist/prefetch-entry.js"},"./analytics":{"types":"./dist/analytics-entry.d.ts","import":"./dist/analytics-entry.js"}},"scripts":{"dev":"tsup --watch","build":"tsup","typecheck":"tsc --noEmit"},"_npmUser":{"name":"GitHub Actions","email":"npm-oidc-no-reply@github.com","trustedPublisher":{"id":"github","oidcConfigId":"oidc:b47ba077-f392-4e0b-9cb3-f725d6ffde31"}},"_resolved":"/tmp/cdc6f3b4b604fa7cd8fd17209b20293f/mountly-0.1.4.tgz","_integrity":"sha512-yZvcgrWIvggXj9Umub37fGJOtuuJw+r/b05b5kdXP6rJrO0gOBWGJLmvNimFCQb0BtQj4p4J+/1s9rimwpNg2Q==","repository":{"url":"git+https://github.com/jagreehal/mountly.git","type":"git","directory":"packages/mountly"},"_npmVersion":"11.13.0","description":"**On-Demand Interactive UI Platform**","directories":{},"_nodeVersion":"24.14.1","publishConfig":{"access":"public"},"_hasShrinkwrap":false,"devDependencies":{"tsup":"^8.5.1","typescript":"^6.0.3"},"_npmOperationalInternal":{"tmp":"tmp/mountly_0.1.4_1777625483537_0.11392566329397535","host":"s3://npm-registry-packages-npm-production"}},"0.2.0":{"name":"mountly","version":"0.2.0","license":"Apache-2.0","_id":"mountly@0.2.0","maintainers":[{"name":"jagreehal","email":"jag.reehal@gmail.com"}],"homepage":"https://github.com/jagreehal/mountly/tree/main/packages/mountly#readme","bugs":{"url":"https://github.com/jagreehal/mountly/issues"},"bin":{"mountly":"cli/index.js"},"dist":{"shasum":"bf64c0c2775d685b18ce25c85bf5aed64724f6a9","tarball":"https://registry.npmjs.org/mountly/-/mountly-0.2.0.tgz","fileCount":107,"integrity":"sha512-CQzQaI8CLGSAMDkdjDnDpFoyZHhquRWA0dle+OUWa6HD1EfQe7Cp9aLJt1lxZ4EVZ0w9RtBFALZll+RlvC0kGg==","signatures":[{"sig":"MEQCIHf+Xy3EOrae9DLaY/vpyncp/tx87J9ML9j2VIXm9VmzAiBhoYalasgNkoc3bOCAoYmkgUWHz81XiAtD24nJt5vwkw==","keyid":"SHA256:DhQ8wR5APBvFHLF/+Tc+AYvPOdTpcIDqOhxsBHRwC7U"}],"attestations":{"url":"https://registry.npmjs.org/-/npm/v1/attestations/mountly@0.2.0","provenance":{"predicateType":"https://slsa.dev/provenance/v1"}},"unpackedSize":352366},"main":"./dist/index.js","type":"module","_from":"file:mountly-0.2.0.tgz","types":"./dist/index.d.ts","exports":{".":{"types":"./dist/index.d.ts","import":"./dist/index.js"},"./bus":{"types":"./dist/bus-entry.d.ts","import":"./dist/bus-entry.js"},"./url":{"types":"./dist/url-entry.d.ts","import":"./dist/url-entry.js"},"./core":{"types":"./dist/core.d.ts","import":"./dist/core.js"},"./data":{"types":"./dist/data-entry.d.ts","import":"./dist/data-entry.js"},"./test":{"types":"./dist/test-entry.d.ts","import":"./dist/test-entry.js"},"./plugins":{"types":"./dist/plugins-entry.d.ts","import":"./dist/plugins-entry.js"},"./runtime":{"types":"./dist/runtime-entry.d.ts","import":"./dist/runtime-entry.js"},"./devtools":{"types":"./dist/devtools-entry.d.ts","import":"./dist/devtools-entry.js"},"./overlays":{"types":"./dist/overlays-entry.d.ts","import":"./dist/overlays-entry.js"},"./prefetch":{"types":"./dist/prefetch-entry.d.ts","import":"./dist/prefetch-entry.js"},"./analytics":{"types":"./dist/analytics-entry.d.ts","import":"./dist/analytics-entry.js"}},"scripts":{"dev":"tsup --watch","build":"tsup","typecheck":"tsc --noEmit"},"_npmUser":{"name":"GitHub Actions","email":"npm-oidc-no-reply@github.com","trustedPublisher":{"id":"github","oidcConfigId":"oidc:b47ba077-f392-4e0b-9cb3-f725d6ffde31"}},"_resolved":"/tmp/c30a03d1411a4b22d6aff9aeb823f651/mountly-0.2.0.tgz","_integrity":"sha512-CQzQaI8CLGSAMDkdjDnDpFoyZHhquRWA0dle+OUWa6HD1EfQe7Cp9aLJt1lxZ4EVZ0w9RtBFALZll+RlvC0kGg==","repository":{"url":"git+https://github.com/jagreehal/mountly.git","type":"git","directory":"packages/mountly"},"_npmVersion":"11.13.0","description":"**On-Demand Interactive UI Platform**","directories":{},"_nodeVersion":"24.14.1","publishConfig":{"access":"public"},"_hasShrinkwrap":false,"devDependencies":{"tsup":"^8.5.1","typescript":"^6.0.3"},"_npmOperationalInternal":{"tmp":"tmp/mountly_0.2.0_1777706127454_0.997932652327177","host":"s3://npm-registry-packages-npm-production"}},"0.2.1":{"name":"mountly","version":"0.2.1","license":"Apache-2.0","_id":"mountly@0.2.1","maintainers":[{"name":"jagreehal","email":"jag.reehal@gmail.com"}],"homepage":"https://github.com/jagreehal/mountly/tree/main/packages/mountly#readme","bugs":{"url":"https://github.com/jagreehal/mountly/issues"},"bin":{"mountly":"cli/index.js"},"dist":{"shasum":"f49a121f134c07bf41038ce6debb643428459e21","tarball":"https://registry.npmjs.org/mountly/-/mountly-0.2.1.tgz","fileCount":107,"integrity":"sha512-8gKFjp9tuDKOqEAfGwq4AlKQc1eUd0u3JoJVMbg2iFSUpnE9WUAzM9wTQuGf5Dy7GKFSC8HiqF7ZkrLaLSIlag==","signatures":[{"sig":"MEUCIQCfh4sUg2fdMcZufGRYCvxsDNfjPgLbT3RvbijSN6r8ngIgB07ayr2pJQQOFahivsD9bO3A5hxWlYRgQJBdwL/1/x0=","keyid":"SHA256:DhQ8wR5APBvFHLF/+Tc+AYvPOdTpcIDqOhxsBHRwC7U"}],"attestations":{"url":"https://registry.npmjs.org/-/npm/v1/attestations/mountly@0.2.1","provenance":{"predicateType":"https://slsa.dev/provenance/v1"}},"unpackedSize":352088},"main":"./dist/index.js","type":"module","_from":"file:mountly-0.2.1.tgz","types":"./dist/index.d.ts","exports":{".":{"types":"./dist/index.d.ts","import":"./dist/index.js"},"./bus":{"types":"./dist/bus-entry.d.ts","import":"./dist/bus-entry.js"},"./url":{"types":"./dist/url-entry.d.ts","import":"./dist/url-entry.js"},"./core":{"types":"./dist/core.d.ts","import":"./dist/core.js"},"./data":{"types":"./dist/data-entry.d.ts","import":"./dist/data-entry.js"},"./test":{"types":"./dist/test-entry.d.ts","import":"./dist/test-entry.js"},"./plugins":{"types":"./dist/plugins-entry.d.ts","import":"./dist/plugins-entry.js"},"./runtime":{"types":"./dist/runtime-entry.d.ts","import":"./dist/runtime-entry.js"},"./devtools":{"types":"./dist/devtools-entry.d.ts","import":"./dist/devtools-entry.js"},"./overlays":{"types":"./dist/overlays-entry.d.ts","import":"./dist/overlays-entry.js"},"./prefetch":{"types":"./dist/prefetch-entry.d.ts","import":"./dist/prefetch-entry.js"},"./analytics":{"types":"./dist/analytics-entry.d.ts","import":"./dist/analytics-entry.js"}},"scripts":{"dev":"tsup --watch","build":"tsup","typecheck":"tsc --noEmit"},"_npmUser":{"name":"GitHub Actions","email":"npm-oidc-no-reply@github.com","trustedPublisher":{"id":"github","oidcConfigId":"oidc:b47ba077-f392-4e0b-9cb3-f725d6ffde31"}},"_resolved":"/tmp/12b4fb13322061ad700c36f5a73f132c/mountly-0.2.1.tgz","_integrity":"sha512-8gKFjp9tuDKOqEAfGwq4AlKQc1eUd0u3JoJVMbg2iFSUpnE9WUAzM9wTQuGf5Dy7GKFSC8HiqF7ZkrLaLSIlag==","repository":{"url":"git+https://github.com/jagreehal/mountly.git","type":"git","directory":"packages/mountly"},"_npmVersion":"11.13.0","description":"**On-Demand Interactive UI Platform**","directories":{},"_nodeVersion":"24.14.1","publishConfig":{"access":"public"},"_hasShrinkwrap":false,"devDependencies":{"tsup":"^8.5.1","typescript":"^6.0.3"},"_npmOperationalInternal":{"tmp":"tmp/mountly_0.2.1_1778050776664_0.15940590209153016","host":"s3://npm-registry-packages-npm-production"}},"0.2.2":{"name":"mountly","version":"0.2.2","license":"Apache-2.0","_id":"mountly@0.2.2","maintainers":[{"name":"jagreehal","email":"jag.reehal@gmail.com"}],"homepage":"https://github.com/jagreehal/mountly/tree/main/packages/mountly#readme","bugs":{"url":"https://github.com/jagreehal/mountly/issues"},"bin":{"mountly":"./cli/index.js"},"dist":{"shasum":"cd26ad0788a50cef64047a35be4b9de93053d115","tarball":"https://registry.npmjs.org/mountly/-/mountly-0.2.2.tgz","fileCount":120,"integrity":"sha512-VB4fIILV/cZUGUBP8CCMHT4UMusCUbzt8eXkdhEno4NCkEz2eCtc2DDAe+nM0dAkUg5TJ+Azwc4V8OaPjT+YFQ==","signatures":[{"sig":"MEQCIE9nXy7vpnLnAq8Zu4IIKdT0ulmghUNJgFqWWO1OjWEhAiAvh+McMw+WRqVxnEZ67+OTugLP+feV79RW/hLQHsxLdQ==","keyid":"SHA256:DhQ8wR5APBvFHLF/+Tc+AYvPOdTpcIDqOhxsBHRwC7U"}],"attestations":{"url":"https://registry.npmjs.org/-/npm/v1/attestations/mountly@0.2.2","provenance":{"predicateType":"https://slsa.dev/provenance/v1"}},"unpackedSize":4703650},"main":"./dist/index.js","type":"module","types":"./dist/index.d.ts","exports":{".":{"types":"./dist/index.d.ts","import":"./dist/index.js"},"./bus":{"types":"./dist/bus-entry.d.ts","import":"./dist/bus-entry.js"},"./url":{"types":"./dist/url-entry.d.ts","import":"./dist/url-entry.js"},"./core":{"types":"./dist/core.d.ts","import":"./dist/core.js"},"./data":{"types":"./dist/data-entry.d.ts","import":"./dist/data-entry.js"},"./test":{"types":"./dist/test-entry.d.ts","import":"./dist/test-entry.js"},"./plugins":{"types":"./dist/plugins-entry.d.ts","import":"./dist/plugins-entry.js"},"./runtime":{"types":"./dist/runtime-entry.d.ts","import":"./dist/runtime-entry.js"},"./devtools":{"types":"./dist/devtools-entry.d.ts","import":"./dist/devtools-entry.js"},"./overlays":{"types":"./dist/overlays-entry.d.ts","import":"./dist/overlays-entry.js"},"./prefetch":{"types":"./dist/prefetch-entry.d.ts","import":"./dist/prefetch-entry.js"},"./analytics":{"types":"./dist/analytics-entry.d.ts","import":"./dist/analytics-entry.js"}},"scripts":{"dev":"tsup --watch","build":"tsup","typecheck":"tsc --noEmit"},"_npmUser":{"name":"GitHub Actions","email":"npm-oidc-no-reply@github.com","trustedPublisher":{"id":"github","oidcConfigId":"oidc:b47ba077-f392-4e0b-9cb3-f725d6ffde31"}},"deprecated":"SECURITY: compromised supply-chain build (2026-06-04 worm) — do not use; upgrade to a known-good release.","repository":{"url":"https://github.com/jagreehal/mountly","type":"git","directory":"packages/mountly"},"directories":{},"publishConfig":{"access":"public"},"_hasShrinkwrap":false,"devDependencies":{"tsup":"^8.5.1","typescript":"^6.0.3"},"_npmOperationalInternal":{"tmp":"tmp/mountly_0.2.2_1780532767407_0.02848708404708611","host":"s3://npm-registry-packages-npm-production"}},"0.2.3":{"name":"mountly","version":"0.2.3","license":"Apache-2.0","repository":{"type":"git","url":"git+https://github.com/jagreehal/mountly.git","directory":"packages/mountly"},"bugs":{"url":"https://github.com/jagreehal/mountly/issues"},"homepage":"https://github.com/jagreehal/mountly/tree/main/packages/mountly#readme","type":"module","main":"./dist/index.js","types":"./dist/index.d.ts","sideEffects":["./dist/host-entry.js"],"publishConfig":{"access":"public"},"bin":{"mountly":"cli/index.js"},"exports":{".":{"import":"./dist/index.js","types":"./dist/index.d.ts"},"./triggers":{"import":"./dist/triggers.js","types":"./dist/triggers.d.ts"},"./gestures":{"import":"./dist/gestures.js","types":"./dist/gestures.d.ts"},"./attach":{"import":"./dist/attach.js","types":"./dist/attach.d.ts"},"./elements":{"import":"./dist/elements.js","types":"./dist/elements.d.ts"},"./island":{"import":"./dist/island.js","types":"./dist/island.d.ts"},"./host":{"import":"./dist/host.js","types":"./dist/host.d.ts"},"./host/auto":{"import":"./dist/host-entry.js","types":"./dist/host-entry.d.ts"},"./bundle":{"import":"./dist/bundle.js","types":"./dist/bundle.d.ts"},"./cache":{"import":"./dist/cache.js","types":"./dist/cache.d.ts"},"./mount":{"import":"./dist/mount.js","types":"./dist/mount.d.ts"},"./shadow":{"import":"./dist/shadow.js","types":"./dist/shadow.d.ts"},"./assets":{"import":"./dist/assets.js","types":"./dist/assets.d.ts"},"./adapter":{"import":"./dist/adapter.js","types":"./dist/adapter.d.ts"},"./analytics":{"import":"./dist/analytics.js","types":"./dist/analytics.d.ts"},"./prefetch":{"import":"./dist/prefetch.js","types":"./dist/prefetch.d.ts"},"./devtools":{"import":"./dist/devtools.js","types":"./dist/devtools.d.ts"},"./overlays":{"import":"./dist/positioning.js","types":"./dist/positioning.d.ts"},"./data":{"import":"./dist/data-source.js","types":"./dist/data-source.d.ts"},"./url":{"import":"./dist/url-state.js","types":"./dist/url-state.d.ts"},"./bus":{"import":"./dist/bus.js","types":"./dist/bus.d.ts"},"./test":{"import":"./dist/test-utils.js","types":"./dist/test-utils.d.ts"},"./runtime":{"import":"./dist/runtime.js","types":"./dist/runtime.d.ts"}},"devDependencies":{"tsup":"^8.5.1","typescript":"^6.0.3"},"scripts":{"build":"tsup","typecheck":"tsc --noEmit","dev":"tsup --watch"},"_id":"mountly@0.2.3","description":"**On-Demand Interactive UI Platform**","_integrity":"sha512-NIkfJtWlC4HTsiUSBDCZ1UkEcFiUYii5C8UaHI5BHaZKSOjE1rQjC88ywI9GqkgDAlJtReVsjMSJflOLbvCObw==","_resolved":"/private/var/folders/sp/__ydkqk53ss4hb4k3wbv1wbc0000gn/T/326b4cd0a803dc3b2a266d6fb7d7b524/mountly-0.2.3.tgz","_from":"file:mountly-0.2.3.tgz","_nodeVersion":"24.16.0","_npmVersion":"11.13.0","dist":{"integrity":"sha512-NIkfJtWlC4HTsiUSBDCZ1UkEcFiUYii5C8UaHI5BHaZKSOjE1rQjC88ywI9GqkgDAlJtReVsjMSJflOLbvCObw==","shasum":"bec08f6ec3ca5c485f79404422195e290d40192d","tarball":"https://registry.npmjs.org/mountly/-/mountly-0.2.3.tgz","fileCount":114,"unpackedSize":345868,"signatures":[{"keyid":"SHA256:DhQ8wR5APBvFHLF/+Tc+AYvPOdTpcIDqOhxsBHRwC7U","sig":"MEUCIQD4wmdvO/URfL2ERls4zfaWM07bIwTp5AdALGtMHh/f0wIgX5Aq+m6hxPn428RQdYaTW9eeCq8zBTKwB1nbK6KcJnM="}]},"_npmUser":{"name":"jagreehal","email":"jag.reehal@gmail.com"},"directories":{},"maintainers":[{"name":"jagreehal","email":"jag.reehal@gmail.com"}],"_npmOperationalInternal":{"host":"s3://npm-registry-packages-npm-production","tmp":"tmp/mountly_0.2.3_1780866195087_0.495293913654244"},"_hasShrinkwrap":false}},"time":{"created":"2026-04-26T08:22:45.829Z","modified":"2026-06-07T21:03:15.415Z","0.0.1":"2026-04-26T08:22:45.975Z","0.1.0":"2026-04-26T18:23:51.887Z","0.1.1":"2026-04-28T21:50:00.633Z","0.1.2":"2026-04-29T18:26:33.875Z","0.1.4":"2026-05-01T08:51:23.677Z","0.2.0":"2026-05-02T07:15:27.668Z","0.2.1":"2026-05-06T06:59:36.805Z","0.2.2":"2026-06-04T00:26:07.634Z","0.2.3":"2026-06-07T21:03:15.289Z"},"bugs":{"url":"https://github.com/jagreehal/mountly/issues"},"license":"Apache-2.0","homepage":"https://github.com/jagreehal/mountly/tree/main/packages/mountly#readme","repository":{"type":"git","url":"git+https://github.com/jagreehal/mountly.git","directory":"packages/mountly"},"description":"**On-Demand Interactive UI Platform**","maintainers":[{"name":"jagreehal","email":"jag.reehal@gmail.com"}],"readme":"# mountly\n\n**On-Demand Interactive UI Platform**\n\nLoad rich UI only when the user actually needs it.\nUse your existing React, Vue, or Svelte components with no new component model.\nModernize legacy pages incrementally without rewriting the host app.\n\n**Documentation:** <https://jagreehal.github.io/mountly>\n\n## The Problem\n\nModern web apps ship too much JavaScript upfront. Component libraries load everything at once. Microfrontends are operationally heavy. Framework lazy-loading lacks standardized interaction patterns.\n\nThere's no unified system for: **\"Load rich UI only when the user actually needs it.\"**\n\n## What mountly Does\n\nmountly is a frontend platform for building Features — Widgets that load **only on user intent** (hover, click, focus, viewport entry, or idle time).\n\n```\nBefore mountly:                    After mountly:\n┌──────────────────────┐            ┌──────────────────────┐\n│  Full app JS bundle  │            │  Page shell (light)  │\n│  - Payment widget    │            │                      │\n│  - Video player      │────►       │  [User hovers]       │\n│  - Image lightbox    │            │  → Load widget code  │\n│  - Analytics panel   │            │  → Fetch data        │\n│  - Chat widget       │            │  → Mount UI          │\n└──────────────────────┘            └──────────────────────┘\n  Slow TTI, heavy bundle              Fast TTI, lean bundle\n```\n\n## Key Features\n\n- **Intent-driven loading** — code splits at the feature level, loads on hover/click/focus/viewport/idle/url-change\n- **Dual caching** — module cache (JS code) + data cache (API responses) with in-flight deduplication\n- **Framework-agnostic core** — runtime is framework-agnostic. React, Vue, and Svelte adapters today; Solid in the same shape later.\n- **Standardized lifecycle** — `idle → preload → activate → mount → unmount`\n- **Multiple instances** — mount the same feature multiple times on one page\n- **Small core** — ~9 KB gzipped; widgets load on demand, not on page load\n- **Custom element** — `<mountly-feature>` web component for declarative usage\n- **Analytics** — built-in interaction timing and performance tracking\n- **Predictive prefetch** — idle-time loading scored by interaction history\n- **Plugin triggers** — swipe, long-press, keyboard, URL-change, and custom trigger plugins\n- **Devtools panel** — floating debug UI showing live feature states and events\n\n## Packages\n\n| Package | Purpose |\n|---|---|\n| [`mountly`](https://npmjs.com/package/mountly) | Core runtime, on-demand loader, lifecycle, custom element, CLI |\n| [`mountly-react`](https://npmjs.com/package/mountly-react) | React adapter — `createWidget(Component, { styles })` |\n| [`mountly-vue`](https://npmjs.com/package/mountly-vue) | Vue adapter — `createWidget(Component, { styles })` |\n| [`mountly-svelte`](https://npmjs.com/package/mountly-svelte) | Svelte adapter — `createWidget(Component, { styles })` |\n| [`mountly-tailwind`](https://npmjs.com/package/mountly-tailwind) | Tailwind v4 design preset (opt-in) |\n\n## Quick Start (60 seconds)\n\n```bash\nnpx mountly init my-widget\ncd my-widget\npnpm install\npnpm build\n```\n\nDrop the built widget into any HTML page:\n\n```html\n<div id=\"mount\"></div>\n<script type=\"module\">\n  import widget from \"./my-widget/dist/index.js\";\n  widget.mount(document.getElementById(\"mount\"));\n</script>\n```\n\nThe widget mounts inside the container in light DOM by default, with bundled styles applied. Pass `shadow: true` to `createWidget` when you need a hard style boundary. That's the whole flow.\n\n**See it running first:** clone the repo, run `pnpm install && pnpm -r build && cd examples/plain-html && pnpm dev`, then open <http://localhost:5175/examples/quickstart/host.html> ([source](examples/quickstart/host.html)).\n\n### Going further\n\n- **Lazy load on user intent (Features)** — `createOnDemandFeature(...)` adds hover/click/viewport/idle triggers around a widget. See [examples/marketing-site](examples/marketing-site/README.md).\n- **Plain-HTML host (no bundler)** — `installRuntime({...})` injects a shared-React import map. For direct browser import maps, also map used `mountly/*` subpaths (for example `mountly/attach`, `mountly/elements`, `mountly/shadow`, `mountly/assets`, `mountly/adapter`). See [examples/plain-html](examples/plain-html/README.md).\n- **Pick a distribution (self-contained vs shared React)** — when to ship one widget vs many, when to share React. See [examples/README.md#choosing-a-distribution](examples/README.md#choosing-a-distribution).\n- **When *not* to use mountly** — single SPA, full SSR-hydration ownership, MFE orchestration. See [examples/README.md#when-not-to-use-it](examples/README.md#when-not-to-use-it).\n- **All runnable examples** — [examples/README.md](examples/README.md).\n- **Host runtime API** — [packages/mountly/README.md](packages/mountly/README.md).\n- **MCP Apps integration** — [docs/protocol-layering.md](docs/protocol-layering.md) and [docs/how-to-test.md](docs/how-to-test.md).\n- **MCP Apps runnable demo** — [`examples/mcp-app-demo`](examples/mcp-app-demo/README.md) for an end-to-end `ui://` resource + MCP server verification.\n- **MCP adapter package docs** — [`mountly-mcp`](packages/adapters/mountly-mcp/README.md), [`mountly-mcp-react`](packages/adapters/mountly-mcp-react/README.md), [`mountly-mcp-server`](packages/adapters/mountly-mcp-server/README.md). All three are thin wrappers around the official [`@modelcontextprotocol/ext-apps`](https://www.npmjs.com/package/@modelcontextprotocol/ext-apps) SDK (SEP-1865, 2026-01-26).\n\n## API Stability\n\n`mountly` is pre-1.0, but the public API used in the examples is now frozen for the `0.1.x` line:\n\n- `createOnDemandFeature`\n- `registerCustomElement` / `defineMountlyFeature`\n- adapter contract types (`WidgetModule`, `AdapterOptions`)\n- `installRuntime` shape (including `react/jsx-runtime` mapping support)\n\nBreaking changes to this surface should wait for `0.2.0` and must be called out in release notes. Releases follow [docs/release-checklist.md](docs/release-checklist.md).\n\n## Islands + SSR Controls\n\n`mountly` now includes guarded island mounting primitives for SSR handoff safety:\n\n- `mountIslandFeature()` / `mountAllIslands()`\n- hydration guards: `skipIfHydrated`, `forceRemount`, `hydratedAttr`\n- nested ordering guard: `waitForParent`\n- deterministic single hydration: `once`\n- loader resilience: `retry`, `retryDelayMs`\n- SSR marker gating: `requireSsrMarker`, `ssrMarkerAttr`\n- teardown controls: `unmount()`, `unmountAllIslands()`, `mountly:unmount` event\n- runtime state marker: `data-mountly-state` (`idle|loading|mounted|error`)\n\n## Examples\n\nSee **[examples/README.md](examples/README.md)** for start order, ports, and when to use each pattern.\n\nSummary:\n\n- `examples/payment-breakdown` — a popover with async data loading and shadow-DOM styling\n- `examples/image-lightbox` — a media viewer with focus restoration\n- `examples/signup-card` — a marketing card\n- `examples/demo` — a Vite host that exercises all of the above\n- `examples/plain-html` — bundler-free integration via import maps\n- `examples/marketing-site` — embedding widgets in static HTML\n- `examples/quickstart/host.html` — minimal import map + `attach()` host\n- `examples/pokemon-kitchen-sink` — stress-test of all features\n\n## Development\n\n```bash\npnpm install\npnpm -r build\npnpm test\n```\n\n## License\n\nMIT\n","readmeFilename":"README.md"}