{"_id":"@shaahink/sitekit","_rev":"34-75ce15ac9ce061ccb6ecff30c6c9a428","name":"@shaahink/sitekit","dist-tags":{"latest":"0.27.0"},"versions":{"0.1.0":{"name":"@shaahink/sitekit","version":"0.1.0","license":"MIT","_id":"@shaahink/sitekit@0.1.0","maintainers":[{"name":"shaahink","email":"shaahin69@gmail.com"}],"homepage":"https://github.com/shaahink/sitekit#readme","bugs":{"url":"https://github.com/shaahink/sitekit/issues"},"dist":{"shasum":"38590f292852db924ea7c6ac69ff58e8d45c8d81","tarball":"https://registry.npmjs.org/@shaahink/sitekit/-/sitekit-0.1.0.tgz","fileCount":37,"integrity":"sha512-QFcRs29y1HdsvhNBC/8GOWMfC7T6jxgAVpOQ/lLWgc5upnZQ6d88EpZdgpXULnjMzKhZN5NLyfkmruHccdWSpw==","signatures":[{"sig":"MEYCIQDK2vpTNg5jZOw/nUO98NQzZWB4RS5lhQ9MxD26bXNB+gIhAJbQXZaAgXXgH8PAPLcSfeLrqMb/uTXP1TxyQJUPSr+1","keyid":"SHA256:DhQ8wR5APBvFHLF/+Tc+AYvPOdTpcIDqOhxsBHRwC7U"}],"unpackedSize":53146},"type":"module","engines":{"node":">=22.12"},"exports":{"./shot":{"types":"./dist/shot/index.d.ts","default":"./dist/shot/index.js"},"./widget":{"types":"./dist/widget/index.d.ts","default":"./dist/widget/index.js"},"./credits":{"types":"./dist/credits/index.d.ts","default":"./dist/credits/index.js"},"./headers":{"types":"./dist/headers/index.d.ts","default":"./dist/headers/index.js"},"./feedback":{"types":"./dist/feedback/index.d.ts","default":"./dist/feedback/index.js"},"./package.json":"./package.json"},"gitHead":"a9339b92d2c8f21e948dc2b998986eac75ade614","scripts":{"test":"vitest run","build":"tsc -p tsconfig.server.json && tsc -p tsconfig.widget.json","prepublishOnly":"npm run build && npm test"},"_npmUser":{"name":"shaahink","email":"shaahin69@gmail.com"},"repository":{"url":"git+https://github.com/shaahink/sitekit.git","type":"git"},"_npmVersion":"11.12.1","description":"Shared logic for the sk site fleet: feedback intake, screenshot proxy, widget internals, credits, and the dual header emitter.","directories":{},"sideEffects":false,"_nodeVersion":"24.15.0","publishConfig":{"access":"public"},"_hasShrinkwrap":false,"devDependencies":{"vitest":"^4.1.10","typescript":"^7.0.2"},"_npmOperationalInternal":{"tmp":"tmp/sitekit_0.1.0_1785162853800_0.9762344580330238","host":"s3://npm-registry-packages-npm-production"}},"0.2.0":{"name":"@shaahink/sitekit","version":"0.2.0","license":"MIT","_id":"@shaahink/sitekit@0.2.0","maintainers":[{"name":"shaahink","email":"shaahin69@gmail.com"}],"homepage":"https://github.com/shaahink/sitekit#readme","bugs":{"url":"https://github.com/shaahink/sitekit/issues"},"dist":{"shasum":"9c090a915620eed6e0b484baedf6a680ecf6051c","tarball":"https://registry.npmjs.org/@shaahink/sitekit/-/sitekit-0.2.0.tgz","fileCount":37,"integrity":"sha512-/dApcsZvE3XJbSbSi5QMPLdTfunliTA3mzwfTf2skbPrU8FcB2PO8EA39mCp3Ox7tjWNGke9ldwlN7btchFG/w==","signatures":[{"sig":"MEUCIBQwSVXoBvzz+20Vp1V+ZjCKPoyKWATCG6SalaGXY/nvAiEAgSg/5a69N5EHyzirEJZxwWMFE9Y4MNhIiUWCDiLtHmg=","keyid":"SHA256:DhQ8wR5APBvFHLF/+Tc+AYvPOdTpcIDqOhxsBHRwC7U"}],"attestations":{"url":"https://registry.npmjs.org/-/npm/v1/attestations/@shaahink%2fsitekit@0.2.0","provenance":{"predicateType":"https://slsa.dev/provenance/v1"}},"unpackedSize":53431},"type":"module","engines":{"node":">=22.12"},"exports":{"./shot":{"types":"./dist/shot/index.d.ts","default":"./dist/shot/index.js"},"./widget":{"types":"./dist/widget/index.d.ts","default":"./dist/widget/index.js"},"./credits":{"types":"./dist/credits/index.d.ts","default":"./dist/credits/index.js"},"./headers":{"types":"./dist/headers/index.d.ts","default":"./dist/headers/index.js"},"./feedback":{"types":"./dist/feedback/index.d.ts","default":"./dist/feedback/index.js"},"./package.json":"./package.json"},"gitHead":"30a8290c1a06c91c332a44aab9aaecb5ea00bba2","scripts":{"test":"vitest run","build":"tsc -p tsconfig.server.json && tsc -p tsconfig.widget.json","prepublishOnly":"npm run build && npm test"},"_npmUser":{"name":"GitHub Actions","email":"npm-oidc-no-reply@github.com","trustedPublisher":{"id":"github","oidcConfigId":"oidc:4ef3cd08-db47-467f-8d1e-aeddc5789035"}},"repository":{"url":"git+https://github.com/shaahink/sitekit.git","type":"git"},"_npmVersion":"12.0.1","description":"Shared logic for the sk site fleet: feedback intake, screenshot proxy, widget internals, credits, and the dual header emitter.","directories":{},"sideEffects":false,"_nodeVersion":"22.23.1","publishConfig":{"access":"public"},"_hasShrinkwrap":false,"devDependencies":{"vitest":"^4.1.10","typescript":"^7.0.2"},"_npmOperationalInternal":{"tmp":"tmp/sitekit_0.2.0_1785180838198_0.674384943607476","host":"s3://npm-registry-packages-npm-production"}},"0.3.0":{"name":"@shaahink/sitekit","version":"0.3.0","license":"MIT","_id":"@shaahink/sitekit@0.3.0","maintainers":[{"name":"shaahink","email":"shaahin69@gmail.com"}],"homepage":"https://github.com/shaahink/sitekit#readme","bugs":{"url":"https://github.com/shaahink/sitekit/issues"},"dist":{"shasum":"424ea122555654e7f482d91a8d969e498edeadfd","tarball":"https://registry.npmjs.org/@shaahink/sitekit/-/sitekit-0.3.0.tgz","fileCount":41,"integrity":"sha512-vCkcclVgiL1tmC157Bi6g06ny2ARnJAdMGbAgT7ElcIx2KsvExRhs4d/THBFsejaGTz0tYfqHphY50OQSpdxbg==","signatures":[{"sig":"MEQCIHUtXdrnwKqYwHWbCmBps1E+4r+YLSQxMSOlkZYiL9UNAiAix0tNV0IBw2wGb3tVBdYITWxW3F/xAdOz7c4z4siupA==","keyid":"SHA256:DhQ8wR5APBvFHLF/+Tc+AYvPOdTpcIDqOhxsBHRwC7U"}],"attestations":{"url":"https://registry.npmjs.org/-/npm/v1/attestations/@shaahink%2fsitekit@0.3.0","provenance":{"predicateType":"https://slsa.dev/provenance/v1"}},"unpackedSize":62170},"type":"module","engines":{"node":">=22.12"},"exports":{"./seo":{"types":"./dist/seo/index.d.ts","default":"./dist/seo/index.js"},"./shot":{"types":"./dist/shot/index.d.ts","default":"./dist/shot/index.js"},"./widget":{"types":"./dist/widget/index.d.ts","default":"./dist/widget/index.js"},"./credits":{"types":"./dist/credits/index.d.ts","default":"./dist/credits/index.js"},"./headers":{"types":"./dist/headers/index.d.ts","default":"./dist/headers/index.js"},"./feedback":{"types":"./dist/feedback/index.d.ts","default":"./dist/feedback/index.js"},"./analytics":{"types":"./dist/analytics/index.d.ts","default":"./dist/analytics/index.js"},"./package.json":"./package.json"},"gitHead":"2a4bc9c20c9ebeed4bc19c79dc808bdcfce65fb2","scripts":{"test":"vitest run","build":"tsc -p tsconfig.server.json && tsc -p tsconfig.widget.json","prepublishOnly":"npm run build && npm test"},"_npmUser":{"name":"GitHub Actions","email":"npm-oidc-no-reply@github.com","trustedPublisher":{"id":"github","oidcConfigId":"oidc:4ef3cd08-db47-467f-8d1e-aeddc5789035"}},"repository":{"url":"git+https://github.com/shaahink/sitekit.git","type":"git"},"_npmVersion":"12.0.1","description":"Shared logic for the sk site fleet: feedback intake, screenshot proxy, widget internals, credits, the dual header emitter, site URLs and sitemaps from one source, and the analytics tag.","directories":{},"sideEffects":false,"_nodeVersion":"22.23.1","publishConfig":{"access":"public"},"_hasShrinkwrap":false,"devDependencies":{"vitest":"^4.1.10","typescript":"^7.0.2"},"_npmOperationalInternal":{"tmp":"tmp/sitekit_0.3.0_1785186988748_0.9227327801940832","host":"s3://npm-registry-packages-npm-production"}},"0.4.0":{"name":"@shaahink/sitekit","version":"0.4.0","license":"MIT","_id":"@shaahink/sitekit@0.4.0","maintainers":[{"name":"shaahink","email":"shaahin69@gmail.com"}],"homepage":"https://github.com/shaahink/sitekit#readme","bugs":{"url":"https://github.com/shaahink/sitekit/issues"},"dist":{"shasum":"a1dbd14a7c70f4fe9206c0765a4acafcb83f7f56","tarball":"https://registry.npmjs.org/@shaahink/sitekit/-/sitekit-0.4.0.tgz","fileCount":43,"integrity":"sha512-fghhD8RBag6kizUrOQBjxUO9YDQBCxXAPVUijFppT77NK7+DHKxkSWB15/XHBvdSU+PknWXvG1G1B4KTx3RZag==","signatures":[{"sig":"MEQCIBXmFmqvpoa9iD9EjfXCaR7jrN3udlcmlf+oTKQHIVyHAiAW5giEp5IiDbi+qtrg2wVlX6p6/tgMI0gZOcGdQYSlFA==","keyid":"SHA256:DhQ8wR5APBvFHLF/+Tc+AYvPOdTpcIDqOhxsBHRwC7U"}],"attestations":{"url":"https://registry.npmjs.org/-/npm/v1/attestations/@shaahink%2fsitekit@0.4.0","provenance":{"predicateType":"https://slsa.dev/provenance/v1"}},"unpackedSize":68416},"type":"module","engines":{"node":">=22.12"},"exports":{"./seo":{"types":"./dist/seo/index.d.ts","default":"./dist/seo/index.js"},"./shot":{"types":"./dist/shot/index.d.ts","default":"./dist/shot/index.js"},"./widget":{"types":"./dist/widget/index.d.ts","default":"./dist/widget/index.js"},"./credits":{"types":"./dist/credits/index.d.ts","default":"./dist/credits/index.js"},"./headers":{"types":"./dist/headers/index.d.ts","default":"./dist/headers/index.js"},"./feedback":{"types":"./dist/feedback/index.d.ts","default":"./dist/feedback/index.js"},"./analytics":{"types":"./dist/analytics/index.d.ts","default":"./dist/analytics/index.js"},"./package.json":"./package.json"},"gitHead":"57035a5160317fe593f0351bd9c6784ae0767835","scripts":{"test":"vitest run","build":"tsc -p tsconfig.server.json && tsc -p tsconfig.widget.json","prepublishOnly":"npm run build && npm test"},"_npmUser":{"name":"GitHub Actions","email":"npm-oidc-no-reply@github.com","trustedPublisher":{"id":"github","oidcConfigId":"oidc:4ef3cd08-db47-467f-8d1e-aeddc5789035"}},"repository":{"url":"git+https://github.com/shaahink/sitekit.git","type":"git"},"_npmVersion":"12.0.1","description":"Shared logic for the sk site fleet: feedback intake, screenshot proxy, widget internals, credits, the dual header emitter, site URLs and sitemaps from one source, and the analytics tag.","directories":{},"sideEffects":false,"_nodeVersion":"22.23.1","publishConfig":{"access":"public"},"_hasShrinkwrap":false,"devDependencies":{"vitest":"^4.1.10","typescript":"^7.0.2"},"_npmOperationalInternal":{"tmp":"tmp/sitekit_0.4.0_1785192487590_0.957296428846991","host":"s3://npm-registry-packages-npm-production"}},"0.5.0":{"name":"@shaahink/sitekit","version":"0.5.0","license":"MIT","_id":"@shaahink/sitekit@0.5.0","maintainers":[{"name":"shaahink","email":"shaahin69@gmail.com"}],"homepage":"https://github.com/shaahink/sitekit#readme","bugs":{"url":"https://github.com/shaahink/sitekit/issues"},"dist":{"shasum":"2ae99639130ca7696859f71ddb156fd39b1af743","tarball":"https://registry.npmjs.org/@shaahink/sitekit/-/sitekit-0.5.0.tgz","fileCount":65,"integrity":"sha512-fwZpTg4TK+FeoKcgtgsgCIlXb3vXbxZqA8hq0T16aRrfCmrEoVB4umt0clQlGtvaSaT10jt4Bgzjp25XSKNrjg==","signatures":[{"sig":"MEUCIQDVIJzwHfhEYulO1IxhiV90OCDCLUEz9sO45wU2fnM/BgIgTIQZTOcGvWvLssNV1RMre19xnLYyG5jXS1GPU3BMG4Q=","keyid":"SHA256:DhQ8wR5APBvFHLF/+Tc+AYvPOdTpcIDqOhxsBHRwC7U"}],"attestations":{"url":"https://registry.npmjs.org/-/npm/v1/attestations/@shaahink%2fsitekit@0.5.0","provenance":{"predicateType":"https://slsa.dev/provenance/v1"}},"unpackedSize":121696},"type":"module","engines":{"node":">=22.12"},"exports":{"./cms":{"types":"./dist/cms/index.d.ts","default":"./dist/cms/index.js"},"./seo":{"types":"./dist/seo/index.d.ts","default":"./dist/seo/index.js"},"./shot":{"types":"./dist/shot/index.d.ts","default":"./dist/shot/index.js"},"./widget":{"types":"./dist/widget/index.d.ts","default":"./dist/widget/index.js"},"./credits":{"types":"./dist/credits/index.d.ts","default":"./dist/credits/index.js"},"./headers":{"types":"./dist/headers/index.d.ts","default":"./dist/headers/index.js"},"./feedback":{"types":"./dist/feedback/index.d.ts","default":"./dist/feedback/index.js"},"./analytics":{"types":"./dist/analytics/index.d.ts","default":"./dist/analytics/index.js"},"./package.json":"./package.json"},"gitHead":"45758678c48bfbd6bb43130478654b2db3863b55","scripts":{"test":"vitest run","build":"tsc -p tsconfig.server.json && tsc -p tsconfig.widget.json","prepublishOnly":"npm run build && npm test"},"_npmUser":{"name":"GitHub Actions","email":"npm-oidc-no-reply@github.com","trustedPublisher":{"id":"github","oidcConfigId":"oidc:4ef3cd08-db47-467f-8d1e-aeddc5789035"}},"repository":{"url":"git+https://github.com/shaahink/sitekit.git","type":"git"},"_npmVersion":"12.0.1","description":"Shared logic for the sk site fleet: feedback intake, screenshot proxy, widget internals, credits, the dual header emitter, site URLs and sitemaps from one source, the analytics tag, and the owner's editor.","directories":{},"sideEffects":false,"_nodeVersion":"22.23.1","dependencies":{"yaml":"^2.9.0"},"publishConfig":{"access":"public"},"_hasShrinkwrap":false,"devDependencies":{"zod":"^4.4.3","vitest":"^4.1.10","typescript":"^7.0.2"},"peerDependencies":{"zod":"^4"},"peerDependenciesMeta":{"zod":{"optional":true}},"_npmOperationalInternal":{"tmp":"tmp/sitekit_0.5.0_1785199468222_0.6499064827387175","host":"s3://npm-registry-packages-npm-production"}},"0.6.0":{"name":"@shaahink/sitekit","version":"0.6.0","license":"MIT","_id":"@shaahink/sitekit@0.6.0","maintainers":[{"name":"shaahink","email":"shaahin69@gmail.com"}],"homepage":"https://github.com/shaahink/sitekit#readme","bugs":{"url":"https://github.com/shaahink/sitekit/issues"},"bin":{"sitekit-editor-css":"bin/editor-css.mjs"},"dist":{"shasum":"8a8972f028e5da152b3ed43dbf10e3ae1e449060","tarball":"https://registry.npmjs.org/@shaahink/sitekit/-/sitekit-0.6.0.tgz","fileCount":83,"integrity":"sha512-t4Nvjjibt5bXVJIjKmohCcNGWx9Dsg+ljrlDx/gVZjpi90oD58qbvKEDKH1IkM1xowCCo1ueKlF/qWzPG+ZMVg==","signatures":[{"sig":"MEUCIQDkZ+rShDUiQXxf9jsdmPc2ZqyzurYvxcuZ4RAktZ7bCgIgWjk4c38mKlpjqC008xX3khDY3q8nRwrtJeDCN7VyxsY=","keyid":"SHA256:DhQ8wR5APBvFHLF/+Tc+AYvPOdTpcIDqOhxsBHRwC7U"}],"attestations":{"url":"https://registry.npmjs.org/-/npm/v1/attestations/@shaahink%2fsitekit@0.6.0","provenance":{"predicateType":"https://slsa.dev/provenance/v1"}},"unpackedSize":169620},"type":"module","engines":{"node":">=22.12"},"exports":{"./cms":{"types":"./dist/cms/index.d.ts","default":"./dist/cms/index.js"},"./seo":{"types":"./dist/seo/index.d.ts","default":"./dist/seo/index.js"},"./shot":{"types":"./dist/shot/index.d.ts","default":"./dist/shot/index.js"},"./editor":{"types":"./dist/editor/index.d.ts","default":"./dist/editor/index.js"},"./widget":{"types":"./dist/widget/index.d.ts","default":"./dist/widget/index.js"},"./credits":{"types":"./dist/credits/index.d.ts","default":"./dist/credits/index.js"},"./headers":{"types":"./dist/headers/index.d.ts","default":"./dist/headers/index.js"},"./feedback":{"types":"./dist/feedback/index.d.ts","default":"./dist/feedback/index.js"},"./analytics":{"types":"./dist/analytics/index.d.ts","default":"./dist/analytics/index.js"},"./package.json":"./package.json","./editor/editor.css":"./dist/editor/editor.css"},"gitHead":"7e05c1235c4ac033bae5cea524e5768408266748","scripts":{"test":"vitest run","build":"node scripts/clean.mjs && tsc -p tsconfig.server.json && tsc -p tsconfig.widget.json && tsc -p tsconfig.editor.json && node scripts/copy-assets.mjs","prepublishOnly":"npm run build && npm test"},"_npmUser":{"name":"GitHub Actions","email":"npm-oidc-no-reply@github.com","trustedPublisher":{"id":"github","oidcConfigId":"oidc:4ef3cd08-db47-467f-8d1e-aeddc5789035"}},"repository":{"url":"git+https://github.com/shaahink/sitekit.git","type":"git"},"_npmVersion":"12.0.1","description":"Shared logic for the sk site fleet: feedback intake, screenshot proxy, widget internals, credits, the dual header emitter, site URLs and sitemaps from one source, the analytics tag, and the owner's editor.","directories":{},"sideEffects":false,"_nodeVersion":"22.23.1","dependencies":{"yaml":"^2.9.0"},"publishConfig":{"access":"public"},"_hasShrinkwrap":false,"devDependencies":{"zod":"^4.4.3","vitest":"^4.1.10","typescript":"^7.0.2"},"peerDependencies":{"zod":"^4"},"peerDependenciesMeta":{"zod":{"optional":true}},"_npmOperationalInternal":{"tmp":"tmp/sitekit_0.6.0_1785204208533_0.90845936629064","host":"s3://npm-registry-packages-npm-production"}},"0.6.1":{"name":"@shaahink/sitekit","version":"0.6.1","license":"MIT","_id":"@shaahink/sitekit@0.6.1","maintainers":[{"name":"shaahink","email":"shaahin69@gmail.com"}],"homepage":"https://github.com/shaahink/sitekit#readme","bugs":{"url":"https://github.com/shaahink/sitekit/issues"},"bin":{"sitekit-editor-css":"bin/editor-css.mjs"},"dist":{"shasum":"9b0496bf5b086d19261374349fe29aac5a980b69","tarball":"https://registry.npmjs.org/@shaahink/sitekit/-/sitekit-0.6.1.tgz","fileCount":83,"integrity":"sha512-O7RTQWrgYyYHBt8IUrxZTkxZmYz4SLtCVMqpIU+xhXmNgOKkamij+PAk4kWPUKoqhOki4bvmH04Ur68SD5JJyA==","signatures":[{"sig":"MEUCIGbYqvRA0MdArSOX2mdPO4E57PgiTXNy/ThfeN5L6UDIAiEAoZbn9JnxBADCsW3TSp9x7GS/Is/UyuFEwr+E9kNLNlM=","keyid":"SHA256:DhQ8wR5APBvFHLF/+Tc+AYvPOdTpcIDqOhxsBHRwC7U"}],"attestations":{"url":"https://registry.npmjs.org/-/npm/v1/attestations/@shaahink%2fsitekit@0.6.1","provenance":{"predicateType":"https://slsa.dev/provenance/v1"}},"unpackedSize":170116},"type":"module","engines":{"node":">=22.12"},"exports":{"./cms":{"types":"./dist/cms/index.d.ts","default":"./dist/cms/index.js"},"./seo":{"types":"./dist/seo/index.d.ts","default":"./dist/seo/index.js"},"./shot":{"types":"./dist/shot/index.d.ts","default":"./dist/shot/index.js"},"./editor":{"types":"./dist/editor/index.d.ts","default":"./dist/editor/index.js"},"./widget":{"types":"./dist/widget/index.d.ts","default":"./dist/widget/index.js"},"./credits":{"types":"./dist/credits/index.d.ts","default":"./dist/credits/index.js"},"./headers":{"types":"./dist/headers/index.d.ts","default":"./dist/headers/index.js"},"./feedback":{"types":"./dist/feedback/index.d.ts","default":"./dist/feedback/index.js"},"./analytics":{"types":"./dist/analytics/index.d.ts","default":"./dist/analytics/index.js"},"./package.json":"./package.json","./editor/editor.css":"./dist/editor/editor.css"},"gitHead":"780f0f0ffa49f7610b8869c28dd5342c0a9fa58e","scripts":{"test":"vitest run","build":"node scripts/clean.mjs && tsc -p tsconfig.server.json && tsc -p tsconfig.widget.json && tsc -p tsconfig.editor.json && node scripts/copy-assets.mjs","prepublishOnly":"npm run build && npm test"},"_npmUser":{"name":"GitHub Actions","email":"npm-oidc-no-reply@github.com","trustedPublisher":{"id":"github","oidcConfigId":"oidc:4ef3cd08-db47-467f-8d1e-aeddc5789035"}},"repository":{"url":"git+https://github.com/shaahink/sitekit.git","type":"git"},"_npmVersion":"12.0.1","description":"Shared logic for the sk site fleet: feedback intake, screenshot proxy, widget internals, credits, the dual header emitter, site URLs and sitemaps from one source, the analytics tag, and the owner's editor.","directories":{},"sideEffects":false,"_nodeVersion":"22.23.1","dependencies":{"yaml":"^2.9.0"},"publishConfig":{"access":"public"},"_hasShrinkwrap":false,"devDependencies":{"zod":"^4.4.3","vitest":"^4.1.10","typescript":"^7.0.2"},"peerDependencies":{"zod":"^4"},"peerDependenciesMeta":{"zod":{"optional":true}},"_npmOperationalInternal":{"tmp":"tmp/sitekit_0.6.1_1785207347198_0.886348296616654","host":"s3://npm-registry-packages-npm-production"}},"0.7.0":{"name":"@shaahink/sitekit","version":"0.7.0","license":"MIT","_id":"@shaahink/sitekit@0.7.0","maintainers":[{"name":"shaahink","email":"shaahin69@gmail.com"}],"homepage":"https://github.com/shaahink/sitekit#readme","bugs":{"url":"https://github.com/shaahink/sitekit/issues"},"bin":{"sitekit-editor-css":"bin/editor-css.mjs"},"dist":{"shasum":"0f19ab4c06b30e1b0129e10f415171b223e11625","tarball":"https://registry.npmjs.org/@shaahink/sitekit/-/sitekit-0.7.0.tgz","fileCount":92,"integrity":"sha512-VDF4mMZ5cqOl/CwzyCsQ0LlEh/F98R1v9XOMij0qYU3EUQstZpvfo6xs0M91JklZdnHZ7Ocln7Xob60MnmgIPw==","signatures":[{"sig":"MEYCIQCJ/KDLCOYDz6X/8W5vN8o5JpmkCP6OI6cwNYNfaOqJywIhAPGUCjglTceBMX9EgZdP3I2/2+bRQYB9krNO599SWZy0","keyid":"SHA256:DhQ8wR5APBvFHLF/+Tc+AYvPOdTpcIDqOhxsBHRwC7U"}],"attestations":{"url":"https://registry.npmjs.org/-/npm/v1/attestations/@shaahink%2fsitekit@0.7.0","provenance":{"predicateType":"https://slsa.dev/provenance/v1"}},"unpackedSize":225994},"type":"module","engines":{"node":">=22.12"},"exports":{"./cms":{"types":"./dist/cms/index.d.ts","default":"./dist/cms/index.js"},"./seo":{"types":"./dist/seo/index.d.ts","default":"./dist/seo/index.js"},"./shot":{"types":"./dist/shot/index.d.ts","default":"./dist/shot/index.js"},"./editor":{"types":"./dist/editor/index.d.ts","default":"./dist/editor/index.js"},"./widget":{"types":"./dist/widget/index.d.ts","default":"./dist/widget/index.js"},"./credits":{"types":"./dist/credits/index.d.ts","default":"./dist/credits/index.js"},"./headers":{"types":"./dist/headers/index.d.ts","default":"./dist/headers/index.js"},"./feedback":{"types":"./dist/feedback/index.d.ts","default":"./dist/feedback/index.js"},"./analytics":{"types":"./dist/analytics/index.d.ts","default":"./dist/analytics/index.js"},"./package.json":"./package.json","./editor/inline":{"types":"./dist/editor/inline.d.ts","default":"./dist/editor/inline.js"},"./editor/editor.css":"./dist/editor/editor.css","./editor/inline.css":"./dist/editor/inline.css","./editor/inline-gate":{"types":"./dist/editor/inline-gate.d.ts","default":"./dist/editor/inline-gate.js"}},"gitHead":"3efdf12f86e8001375027f40911cb856eae22bb6","scripts":{"test":"vitest run","build":"node scripts/clean.mjs && tsc -p tsconfig.server.json && tsc -p tsconfig.widget.json && tsc -p tsconfig.editor.json && node scripts/copy-assets.mjs","prepublishOnly":"npm run build && npm test"},"_npmUser":{"name":"GitHub Actions","email":"npm-oidc-no-reply@github.com","trustedPublisher":{"id":"github","oidcConfigId":"oidc:4ef3cd08-db47-467f-8d1e-aeddc5789035"}},"repository":{"url":"git+https://github.com/shaahink/sitekit.git","type":"git"},"_npmVersion":"12.0.1","description":"Shared logic for the sk site fleet: feedback intake, screenshot proxy, widget internals, credits, the dual header emitter, site URLs and sitemaps from one source, the analytics tag, and the owner's editor.","directories":{},"sideEffects":false,"_nodeVersion":"22.23.1","dependencies":{"yaml":"^2.9.0"},"publishConfig":{"access":"public"},"_hasShrinkwrap":false,"devDependencies":{"zod":"^4.4.3","vitest":"^4.1.10","typescript":"^7.0.2"},"peerDependencies":{"zod":"^4"},"peerDependenciesMeta":{"zod":{"optional":true}},"_npmOperationalInternal":{"tmp":"tmp/sitekit_0.7.0_1785233853466_0.9526033849027045","host":"s3://npm-registry-packages-npm-production"}},"0.7.1":{"name":"@shaahink/sitekit","version":"0.7.1","license":"MIT","_id":"@shaahink/sitekit@0.7.1","maintainers":[{"name":"shaahink","email":"shaahin69@gmail.com"}],"homepage":"https://github.com/shaahink/sitekit#readme","bugs":{"url":"https://github.com/shaahink/sitekit/issues"},"bin":{"sitekit-editor-css":"bin/editor-css.mjs"},"dist":{"shasum":"a1bc1934f3c4d0420e698fbfa5824de5a67b25f2","tarball":"https://registry.npmjs.org/@shaahink/sitekit/-/sitekit-0.7.1.tgz","fileCount":92,"integrity":"sha512-pxLqBHecqmBfcNTDl8NpU2LIlzHk9OvUlMl76m1/n/yHpu4O/WAqRDpLr9Yl71oMit5YnghLZ6sJNIXTKth/ow==","signatures":[{"sig":"MEYCIQC1KuuGaQIJmiLYsDNdmGwy+4EJ2//Vt428jaxrsQ5JdgIhAJXSSSb+liXtaYBHc7eZUuIOqvWV7VcghHTripT3s0TZ","keyid":"SHA256:DhQ8wR5APBvFHLF/+Tc+AYvPOdTpcIDqOhxsBHRwC7U"}],"attestations":{"url":"https://registry.npmjs.org/-/npm/v1/attestations/@shaahink%2fsitekit@0.7.1","provenance":{"predicateType":"https://slsa.dev/provenance/v1"}},"unpackedSize":227953},"type":"module","engines":{"node":">=22.12"},"exports":{"./cms":{"types":"./dist/cms/index.d.ts","default":"./dist/cms/index.js"},"./seo":{"types":"./dist/seo/index.d.ts","default":"./dist/seo/index.js"},"./shot":{"types":"./dist/shot/index.d.ts","default":"./dist/shot/index.js"},"./editor":{"types":"./dist/editor/index.d.ts","default":"./dist/editor/index.js"},"./widget":{"types":"./dist/widget/index.d.ts","default":"./dist/widget/index.js"},"./credits":{"types":"./dist/credits/index.d.ts","default":"./dist/credits/index.js"},"./headers":{"types":"./dist/headers/index.d.ts","default":"./dist/headers/index.js"},"./feedback":{"types":"./dist/feedback/index.d.ts","default":"./dist/feedback/index.js"},"./analytics":{"types":"./dist/analytics/index.d.ts","default":"./dist/analytics/index.js"},"./package.json":"./package.json","./editor/inline":{"types":"./dist/editor/inline.d.ts","default":"./dist/editor/inline.js"},"./editor/editor.css":"./dist/editor/editor.css","./editor/inline.css":"./dist/editor/inline.css","./editor/inline-gate":{"types":"./dist/editor/inline-gate.d.ts","default":"./dist/editor/inline-gate.js"}},"gitHead":"0f9aef7b750b67dca36dfd8fadc7209ffcfc5007","scripts":{"test":"vitest run","build":"node scripts/clean.mjs && tsc -p tsconfig.server.json && tsc -p tsconfig.widget.json && tsc -p tsconfig.editor.json && node scripts/copy-assets.mjs","prepublishOnly":"npm run build && npm test"},"_npmUser":{"name":"GitHub Actions","email":"npm-oidc-no-reply@github.com","trustedPublisher":{"id":"github","oidcConfigId":"oidc:4ef3cd08-db47-467f-8d1e-aeddc5789035"}},"repository":{"url":"git+https://github.com/shaahink/sitekit.git","type":"git"},"_npmVersion":"12.0.1","description":"Shared logic for the sk site fleet: feedback intake, screenshot proxy, widget internals, credits, the dual header emitter, site URLs and sitemaps from one source, the analytics tag, and the owner's editor.","directories":{},"sideEffects":false,"_nodeVersion":"22.23.1","dependencies":{"yaml":"^2.9.0"},"publishConfig":{"access":"public"},"_hasShrinkwrap":false,"devDependencies":{"zod":"^4.4.3","vitest":"^4.1.10","typescript":"^7.0.2"},"peerDependencies":{"zod":"^4"},"peerDependenciesMeta":{"zod":{"optional":true}},"_npmOperationalInternal":{"tmp":"tmp/sitekit_0.7.1_1785234082499_0.04443969195818953","host":"s3://npm-registry-packages-npm-production"}},"0.7.2":{"name":"@shaahink/sitekit","version":"0.7.2","license":"MIT","_id":"@shaahink/sitekit@0.7.2","maintainers":[{"name":"shaahink","email":"shaahin69@gmail.com"}],"homepage":"https://github.com/shaahink/sitekit#readme","bugs":{"url":"https://github.com/shaahink/sitekit/issues"},"bin":{"sitekit-editor-css":"bin/editor-css.mjs"},"dist":{"shasum":"7526305d89e865ee46af4efd8cd581525b0f94a9","tarball":"https://registry.npmjs.org/@shaahink/sitekit/-/sitekit-0.7.2.tgz","fileCount":92,"integrity":"sha512-dE8FTNpyMK5V1z0o3RrS6mBOzkwXmSKV4rQBWCTMl4tJtqNi4eXMALitf4P4wvflhbHHIA8/LAZzuUlLOSlhiQ==","signatures":[{"sig":"MEQCID4MwJWGRiEPT0mqPyU1BPKKcMEOM+F4tJreiMtCJl5JAiAWYx9vaeB2GxreeOU7v4evafQnLMmaemsLGMA6T6otGQ==","keyid":"SHA256:DhQ8wR5APBvFHLF/+Tc+AYvPOdTpcIDqOhxsBHRwC7U"}],"attestations":{"url":"https://registry.npmjs.org/-/npm/v1/attestations/@shaahink%2fsitekit@0.7.2","provenance":{"predicateType":"https://slsa.dev/provenance/v1"}},"unpackedSize":229982},"type":"module","engines":{"node":">=22.12"},"exports":{"./cms":{"types":"./dist/cms/index.d.ts","default":"./dist/cms/index.js"},"./seo":{"types":"./dist/seo/index.d.ts","default":"./dist/seo/index.js"},"./shot":{"types":"./dist/shot/index.d.ts","default":"./dist/shot/index.js"},"./editor":{"types":"./dist/editor/index.d.ts","default":"./dist/editor/index.js"},"./widget":{"types":"./dist/widget/index.d.ts","default":"./dist/widget/index.js"},"./credits":{"types":"./dist/credits/index.d.ts","default":"./dist/credits/index.js"},"./headers":{"types":"./dist/headers/index.d.ts","default":"./dist/headers/index.js"},"./feedback":{"types":"./dist/feedback/index.d.ts","default":"./dist/feedback/index.js"},"./analytics":{"types":"./dist/analytics/index.d.ts","default":"./dist/analytics/index.js"},"./package.json":"./package.json","./editor/inline":{"types":"./dist/editor/inline.d.ts","default":"./dist/editor/inline.js"},"./editor/editor.css":"./dist/editor/editor.css","./editor/inline.css":"./dist/editor/inline.css","./editor/inline-gate":{"types":"./dist/editor/inline-gate.d.ts","default":"./dist/editor/inline-gate.js"}},"gitHead":"4e6e265b72d343700fea6c6d8e300984a5e0d76c","scripts":{"test":"vitest run","build":"node scripts/clean.mjs && tsc -p tsconfig.server.json && tsc -p tsconfig.widget.json && tsc -p tsconfig.editor.json && node scripts/copy-assets.mjs","prepublishOnly":"npm run build && npm test"},"_npmUser":{"name":"GitHub Actions","email":"npm-oidc-no-reply@github.com","trustedPublisher":{"id":"github","oidcConfigId":"oidc:4ef3cd08-db47-467f-8d1e-aeddc5789035"}},"repository":{"url":"git+https://github.com/shaahink/sitekit.git","type":"git"},"_npmVersion":"12.0.1","description":"Shared logic for the sk site fleet: feedback intake, screenshot proxy, widget internals, credits, the dual header emitter, site URLs and sitemaps from one source, the analytics tag, and the owner's editor.","directories":{},"sideEffects":false,"_nodeVersion":"22.23.1","dependencies":{"yaml":"^2.9.0"},"publishConfig":{"access":"public"},"_hasShrinkwrap":false,"devDependencies":{"zod":"^4.4.3","vitest":"^4.1.10","typescript":"^7.0.2"},"peerDependencies":{"zod":"^4"},"peerDependenciesMeta":{"zod":{"optional":true}},"_npmOperationalInternal":{"tmp":"tmp/sitekit_0.7.2_1785239466042_0.9876221940750818","host":"s3://npm-registry-packages-npm-production"}},"0.7.3":{"name":"@shaahink/sitekit","version":"0.7.3","license":"MIT","_id":"@shaahink/sitekit@0.7.3","maintainers":[{"name":"shaahink","email":"shaahin69@gmail.com"}],"homepage":"https://github.com/shaahink/sitekit#readme","bugs":{"url":"https://github.com/shaahink/sitekit/issues"},"bin":{"sitekit-editor-css":"bin/editor-css.mjs"},"dist":{"shasum":"fc0a01f7345a6a105a83721d3bb5cb79b43ca2a9","tarball":"https://registry.npmjs.org/@shaahink/sitekit/-/sitekit-0.7.3.tgz","fileCount":92,"integrity":"sha512-qyqi5lo0XBYFkd4YbTe2Rq1la4KvaLbF2wRMPdUeSYyovWQjUvJVtQ2p+pUdDunM1l7qv9/euGbIJIiXoKMXFQ==","signatures":[{"sig":"MEQCIBxue+MKplZnQfsLMNsCgDUWtW99nCEHJs/3yVd1WU7vAiBgAHrz2X1XBBxBSegvChqtOFsZOiupapRluz5noy22aw==","keyid":"SHA256:DhQ8wR5APBvFHLF/+Tc+AYvPOdTpcIDqOhxsBHRwC7U"}],"attestations":{"url":"https://registry.npmjs.org/-/npm/v1/attestations/@shaahink%2fsitekit@0.7.3","provenance":{"predicateType":"https://slsa.dev/provenance/v1"}},"unpackedSize":231837},"type":"module","engines":{"node":">=22.12"},"exports":{"./cms":{"types":"./dist/cms/index.d.ts","default":"./dist/cms/index.js"},"./seo":{"types":"./dist/seo/index.d.ts","default":"./dist/seo/index.js"},"./shot":{"types":"./dist/shot/index.d.ts","default":"./dist/shot/index.js"},"./editor":{"types":"./dist/editor/index.d.ts","default":"./dist/editor/index.js"},"./widget":{"types":"./dist/widget/index.d.ts","default":"./dist/widget/index.js"},"./credits":{"types":"./dist/credits/index.d.ts","default":"./dist/credits/index.js"},"./headers":{"types":"./dist/headers/index.d.ts","default":"./dist/headers/index.js"},"./feedback":{"types":"./dist/feedback/index.d.ts","default":"./dist/feedback/index.js"},"./analytics":{"types":"./dist/analytics/index.d.ts","default":"./dist/analytics/index.js"},"./package.json":"./package.json","./editor/inline":{"types":"./dist/editor/inline.d.ts","default":"./dist/editor/inline.js"},"./editor/editor.css":"./dist/editor/editor.css","./editor/inline.css":"./dist/editor/inline.css","./editor/inline-gate":{"types":"./dist/editor/inline-gate.d.ts","default":"./dist/editor/inline-gate.js"}},"gitHead":"fa828ff8c8e37134906092a25ad0f993ffb9eced","scripts":{"test":"vitest run","build":"node scripts/clean.mjs && tsc -p tsconfig.server.json && tsc -p tsconfig.widget.json && tsc -p tsconfig.editor.json && node scripts/copy-assets.mjs","prepublishOnly":"npm run build && npm test"},"_npmUser":{"name":"GitHub Actions","email":"npm-oidc-no-reply@github.com","trustedPublisher":{"id":"github","oidcConfigId":"oidc:4ef3cd08-db47-467f-8d1e-aeddc5789035"}},"repository":{"url":"git+https://github.com/shaahink/sitekit.git","type":"git"},"_npmVersion":"12.0.1","description":"Shared logic for the sk site fleet: feedback intake, screenshot proxy, widget internals, credits, the dual header emitter, site URLs and sitemaps from one source, the analytics tag, and the owner's editor.","directories":{},"sideEffects":false,"_nodeVersion":"22.23.1","dependencies":{"yaml":"^2.9.0"},"publishConfig":{"access":"public"},"_hasShrinkwrap":false,"devDependencies":{"zod":"^4.4.3","vitest":"^4.1.10","typescript":"^7.0.2"},"peerDependencies":{"zod":"^4"},"peerDependenciesMeta":{"zod":{"optional":true}},"_npmOperationalInternal":{"tmp":"tmp/sitekit_0.7.3_1785242279186_0.81298639738284","host":"s3://npm-registry-packages-npm-production"}},"0.7.4":{"name":"@shaahink/sitekit","version":"0.7.4","license":"MIT","_id":"@shaahink/sitekit@0.7.4","maintainers":[{"name":"shaahink","email":"shaahin69@gmail.com"}],"homepage":"https://github.com/shaahink/sitekit#readme","bugs":{"url":"https://github.com/shaahink/sitekit/issues"},"bin":{"sitekit-editor-css":"bin/editor-css.mjs"},"dist":{"shasum":"07ea1a056f8dc170dae090ed16887470ce509f4a","tarball":"https://registry.npmjs.org/@shaahink/sitekit/-/sitekit-0.7.4.tgz","fileCount":92,"integrity":"sha512-d18qICbu3kzjWy4rxcRHdCBWGbV5E52w/ey4TkkV0FDHus34zB9xT9YvzmMJorolwcHNcFnFFcQ1/4kKijVbrg==","signatures":[{"sig":"MEUCIC+gfgfI+1XYelAaDE8KMK3qFwMRMU20ATgUgSaz5/hUAiEA8VafPy3o/DwN7SaiHTlCA+LLlDUdFm8hC8dNR1j+Nvg=","keyid":"SHA256:DhQ8wR5APBvFHLF/+Tc+AYvPOdTpcIDqOhxsBHRwC7U"}],"attestations":{"url":"https://registry.npmjs.org/-/npm/v1/attestations/@shaahink%2fsitekit@0.7.4","provenance":{"predicateType":"https://slsa.dev/provenance/v1"}},"unpackedSize":233026},"type":"module","engines":{"node":">=22.12"},"exports":{"./cms":{"types":"./dist/cms/index.d.ts","default":"./dist/cms/index.js"},"./seo":{"types":"./dist/seo/index.d.ts","default":"./dist/seo/index.js"},"./shot":{"types":"./dist/shot/index.d.ts","default":"./dist/shot/index.js"},"./editor":{"types":"./dist/editor/index.d.ts","default":"./dist/editor/index.js"},"./widget":{"types":"./dist/widget/index.d.ts","default":"./dist/widget/index.js"},"./credits":{"types":"./dist/credits/index.d.ts","default":"./dist/credits/index.js"},"./headers":{"types":"./dist/headers/index.d.ts","default":"./dist/headers/index.js"},"./feedback":{"types":"./dist/feedback/index.d.ts","default":"./dist/feedback/index.js"},"./analytics":{"types":"./dist/analytics/index.d.ts","default":"./dist/analytics/index.js"},"./package.json":"./package.json","./editor/inline":{"types":"./dist/editor/inline.d.ts","default":"./dist/editor/inline.js"},"./editor/editor.css":"./dist/editor/editor.css","./editor/inline.css":"./dist/editor/inline.css","./editor/inline-gate":{"types":"./dist/editor/inline-gate.d.ts","default":"./dist/editor/inline-gate.js"}},"gitHead":"241383aa14374576e318644b2252a32025ac2618","scripts":{"test":"vitest run","build":"node scripts/clean.mjs && tsc -p tsconfig.server.json && tsc -p tsconfig.widget.json && tsc -p tsconfig.editor.json && node scripts/copy-assets.mjs","prepublishOnly":"npm run build && npm test"},"_npmUser":{"name":"GitHub Actions","email":"npm-oidc-no-reply@github.com","trustedPublisher":{"id":"github","oidcConfigId":"oidc:4ef3cd08-db47-467f-8d1e-aeddc5789035"}},"repository":{"url":"git+https://github.com/shaahink/sitekit.git","type":"git"},"_npmVersion":"12.0.1","description":"Shared logic for the sk site fleet: feedback intake, screenshot proxy, widget internals, credits, the dual header emitter, site URLs and sitemaps from one source, the analytics tag, and the owner's editor.","directories":{},"sideEffects":false,"_nodeVersion":"22.23.1","dependencies":{"yaml":"^2.9.0"},"publishConfig":{"access":"public"},"_hasShrinkwrap":false,"devDependencies":{"zod":"^4.4.3","vitest":"^4.1.10","typescript":"^7.0.2"},"peerDependencies":{"zod":"^4"},"peerDependenciesMeta":{"zod":{"optional":true}},"_npmOperationalInternal":{"tmp":"tmp/sitekit_0.7.4_1785243111072_0.6433367332915254","host":"s3://npm-registry-packages-npm-production"}},"0.8.0":{"name":"@shaahink/sitekit","version":"0.8.0","license":"MIT","_id":"@shaahink/sitekit@0.8.0","maintainers":[{"name":"shaahink","email":"shaahin69@gmail.com"}],"homepage":"https://github.com/shaahink/sitekit#readme","bugs":{"url":"https://github.com/shaahink/sitekit/issues"},"bin":{"sitekit-editor-css":"bin/editor-css.mjs"},"dist":{"shasum":"2b6c052bf2a0f96c383ae0d8022d1775a22d940c","tarball":"https://registry.npmjs.org/@shaahink/sitekit/-/sitekit-0.8.0.tgz","fileCount":94,"integrity":"sha512-28HIvdaEkHXGgwQFSA7+Rehfh5GTAlxB9X2zmaLzBnBdEEXhPJst3Si2zJQWVx4lQJKTUyUWJTv142EUnd2+1w==","signatures":[{"sig":"MEQCIDQjqAY9WouoSgxFZf+obSUb3MN1nHKsRcIWi3KAQOPoAiBV+M/flfFKJXSRDMhmvE2/MfaaiDQ5rctKtE4POvLNWw==","keyid":"SHA256:DhQ8wR5APBvFHLF/+Tc+AYvPOdTpcIDqOhxsBHRwC7U"}],"attestations":{"url":"https://registry.npmjs.org/-/npm/v1/attestations/@shaahink%2fsitekit@0.8.0","provenance":{"predicateType":"https://slsa.dev/provenance/v1"}},"unpackedSize":250523},"type":"module","engines":{"node":">=22.12"},"exports":{"./cms":{"types":"./dist/cms/index.d.ts","default":"./dist/cms/index.js"},"./seo":{"types":"./dist/seo/index.d.ts","default":"./dist/seo/index.js"},"./shot":{"types":"./dist/shot/index.d.ts","default":"./dist/shot/index.js"},"./editor":{"types":"./dist/editor/index.d.ts","default":"./dist/editor/index.js"},"./widget":{"types":"./dist/widget/index.d.ts","default":"./dist/widget/index.js"},"./credits":{"types":"./dist/credits/index.d.ts","default":"./dist/credits/index.js"},"./headers":{"types":"./dist/headers/index.d.ts","default":"./dist/headers/index.js"},"./feedback":{"types":"./dist/feedback/index.d.ts","default":"./dist/feedback/index.js"},"./analytics":{"types":"./dist/analytics/index.d.ts","default":"./dist/analytics/index.js"},"./package.json":"./package.json","./editor/inline":{"types":"./dist/editor/inline.d.ts","default":"./dist/editor/inline.js"},"./editor/editor.css":"./dist/editor/editor.css","./editor/inline.css":"./dist/editor/inline.css","./editor/inline-gate":{"types":"./dist/editor/inline-gate.d.ts","default":"./dist/editor/inline-gate.js"}},"gitHead":"e4878ab397e1d8d9d48f11163e39706d2f0d3a6e","scripts":{"test":"vitest run","build":"node scripts/clean.mjs && tsc -p tsconfig.server.json && tsc -p tsconfig.widget.json && tsc -p tsconfig.editor.json && node scripts/copy-assets.mjs","prepublishOnly":"npm run build && npm test"},"_npmUser":{"name":"GitHub Actions","email":"npm-oidc-no-reply@github.com","trustedPublisher":{"id":"github","oidcConfigId":"oidc:4ef3cd08-db47-467f-8d1e-aeddc5789035"}},"repository":{"url":"git+https://github.com/shaahink/sitekit.git","type":"git"},"_npmVersion":"12.0.1","description":"Shared logic for the sk site fleet: feedback intake, screenshot proxy, widget internals, credits, the dual header emitter, site URLs and sitemaps from one source, the analytics tag, and the owner's editor.","directories":{},"sideEffects":false,"_nodeVersion":"22.23.1","dependencies":{"yaml":"^2.9.0"},"publishConfig":{"access":"public"},"_hasShrinkwrap":false,"devDependencies":{"zod":"^4.4.3","vitest":"^4.1.10","typescript":"^7.0.2"},"peerDependencies":{"zod":"^4"},"peerDependenciesMeta":{"zod":{"optional":true}},"_npmOperationalInternal":{"tmp":"tmp/sitekit_0.8.0_1785247698307_0.0266702003693009","host":"s3://npm-registry-packages-npm-production"}},"0.9.0":{"name":"@shaahink/sitekit","version":"0.9.0","license":"MIT","_id":"@shaahink/sitekit@0.9.0","maintainers":[{"name":"shaahink","email":"shaahin69@gmail.com"}],"homepage":"https://github.com/shaahink/sitekit#readme","bugs":{"url":"https://github.com/shaahink/sitekit/issues"},"bin":{"sitekit-editor-css":"bin/editor-css.mjs"},"dist":{"shasum":"bb5982bbf7a66032f72118e02029667dd25cd4c5","tarball":"https://registry.npmjs.org/@shaahink/sitekit/-/sitekit-0.9.0.tgz","fileCount":102,"integrity":"sha512-BUpOQB13XQOmwW8pYxsTpSKASQ917aJx9HSFSYZS9hFYXU6VOXIPHTvZxOltY8NZN5dRJlKBU9xZlBgQahC7bQ==","signatures":[{"sig":"MEQCIGNGicR1EW5DFwuA+o3YZWBP5+9+KIYLRaUQj+Q8be2xAiAa4efmt63oUjw7Xi6o43scKgd7/ZJTvhhNLqKUVqe8HA==","keyid":"SHA256:DhQ8wR5APBvFHLF/+Tc+AYvPOdTpcIDqOhxsBHRwC7U"}],"attestations":{"url":"https://registry.npmjs.org/-/npm/v1/attestations/@shaahink%2fsitekit@0.9.0","provenance":{"predicateType":"https://slsa.dev/provenance/v1"}},"unpackedSize":332558},"type":"module","engines":{"node":">=22.12"},"exports":{"./cms":{"types":"./dist/cms/index.d.ts","default":"./dist/cms/index.js"},"./seo":{"types":"./dist/seo/index.d.ts","default":"./dist/seo/index.js"},"./shot":{"types":"./dist/shot/index.d.ts","default":"./dist/shot/index.js"},"./editor":{"types":"./dist/editor/index.d.ts","default":"./dist/editor/index.js"},"./widget":{"types":"./dist/widget/index.d.ts","default":"./dist/widget/index.js"},"./credits":{"types":"./dist/credits/index.d.ts","default":"./dist/credits/index.js"},"./headers":{"types":"./dist/headers/index.d.ts","default":"./dist/headers/index.js"},"./feedback":{"types":"./dist/feedback/index.d.ts","default":"./dist/feedback/index.js"},"./analytics":{"types":"./dist/analytics/index.d.ts","default":"./dist/analytics/index.js"},"./visibility":{"types":"./dist/cms/visibility.d.ts","default":"./dist/cms/visibility.js"},"./package.json":"./package.json","./editor/inline":{"types":"./dist/editor/inline.d.ts","default":"./dist/editor/inline.js"},"./editor/editor.css":"./dist/editor/editor.css","./editor/inline.css":"./dist/editor/inline.css","./editor/inline-gate":{"types":"./dist/editor/inline-gate.d.ts","default":"./dist/editor/inline-gate.js"}},"gitHead":"4b6146517ea0c33dfbbaea9931f9f07e01728d5a","scripts":{"test":"vitest run","build":"node scripts/clean.mjs && tsc -p tsconfig.server.json && tsc -p tsconfig.widget.json && tsc -p tsconfig.editor.json && node scripts/copy-assets.mjs","prepublishOnly":"npm run build && npm test"},"_npmUser":{"name":"GitHub Actions","email":"npm-oidc-no-reply@github.com","trustedPublisher":{"id":"github","oidcConfigId":"oidc:4ef3cd08-db47-467f-8d1e-aeddc5789035"}},"repository":{"url":"git+https://github.com/shaahink/sitekit.git","type":"git"},"_npmVersion":"12.0.1","description":"Shared logic for the sk site fleet: feedback intake, screenshot proxy, widget internals, credits, the dual header emitter, site URLs and sitemaps from one source, the analytics tag, and the owner's editor.","directories":{},"sideEffects":false,"_nodeVersion":"22.23.1","dependencies":{"yaml":"^2.9.0"},"publishConfig":{"access":"public"},"_hasShrinkwrap":false,"devDependencies":{"zod":"^4.4.3","vitest":"^4.1.10","typescript":"^7.0.2"},"peerDependencies":{"zod":"^4"},"peerDependenciesMeta":{"zod":{"optional":true}},"_npmOperationalInternal":{"tmp":"tmp/sitekit_0.9.0_1785255354364_0.9603024285335955","host":"s3://npm-registry-packages-npm-production"}},"0.10.0":{"name":"@shaahink/sitekit","version":"0.10.0","license":"MIT","_id":"@shaahink/sitekit@0.10.0","maintainers":[{"name":"shaahink","email":"shaahin69@gmail.com"}],"homepage":"https://github.com/shaahink/sitekit#readme","bugs":{"url":"https://github.com/shaahink/sitekit/issues"},"bin":{"sitekit-editor-css":"bin/editor-css.mjs"},"dist":{"shasum":"4295c217c05b42e7e0d3db9423646c519bf3c7f9","tarball":"https://registry.npmjs.org/@shaahink/sitekit/-/sitekit-0.10.0.tgz","fileCount":104,"integrity":"sha512-6BxcKnQExgp82jo+BPNLwk2a21RjkBf91MLwAFDBGVC77EBtv1NntFD2i50VRkaYdSqULT1ZcDbf1dAHDiI5/Q==","signatures":[{"sig":"MEUCIGBSr7J0hfA0kou1dAPGYMtjCeE7/8SBjykc6If7hxouAiEAuFjrh7xMnbzACPDv/cfcmZBNYG3du7NE6Ln66R0HZKE=","keyid":"SHA256:DhQ8wR5APBvFHLF/+Tc+AYvPOdTpcIDqOhxsBHRwC7U"}],"attestations":{"url":"https://registry.npmjs.org/-/npm/v1/attestations/@shaahink%2fsitekit@0.10.0","provenance":{"predicateType":"https://slsa.dev/provenance/v1"}},"unpackedSize":346234},"type":"module","engines":{"node":">=22.12"},"exports":{"./cms":{"types":"./dist/cms/index.d.ts","default":"./dist/cms/index.js"},"./seo":{"types":"./dist/seo/index.d.ts","default":"./dist/seo/index.js"},"./shot":{"types":"./dist/shot/index.d.ts","default":"./dist/shot/index.js"},"./stats":{"types":"./dist/analytics/stats.d.ts","default":"./dist/analytics/stats.js"},"./editor":{"types":"./dist/editor/index.d.ts","default":"./dist/editor/index.js"},"./widget":{"types":"./dist/widget/index.d.ts","default":"./dist/widget/index.js"},"./credits":{"types":"./dist/credits/index.d.ts","default":"./dist/credits/index.js"},"./headers":{"types":"./dist/headers/index.d.ts","default":"./dist/headers/index.js"},"./feedback":{"types":"./dist/feedback/index.d.ts","default":"./dist/feedback/index.js"},"./analytics":{"types":"./dist/analytics/index.d.ts","default":"./dist/analytics/index.js"},"./visibility":{"types":"./dist/cms/visibility.d.ts","default":"./dist/cms/visibility.js"},"./package.json":"./package.json","./editor/inline":{"types":"./dist/editor/inline.d.ts","default":"./dist/editor/inline.js"},"./editor/editor.css":"./dist/editor/editor.css","./editor/inline.css":"./dist/editor/inline.css","./editor/inline-gate":{"types":"./dist/editor/inline-gate.d.ts","default":"./dist/editor/inline-gate.js"}},"gitHead":"2021ad05fcb934db8d78b4262683ee1f69309821","scripts":{"test":"vitest run","build":"node scripts/clean.mjs && tsc -p tsconfig.server.json && tsc -p tsconfig.widget.json && tsc -p tsconfig.editor.json && node scripts/copy-assets.mjs","prepublishOnly":"npm run build && npm test"},"_npmUser":{"name":"GitHub Actions","email":"npm-oidc-no-reply@github.com","trustedPublisher":{"id":"github","oidcConfigId":"oidc:4ef3cd08-db47-467f-8d1e-aeddc5789035"}},"repository":{"url":"git+https://github.com/shaahink/sitekit.git","type":"git"},"_npmVersion":"12.0.1","description":"Shared logic for the sk site fleet: feedback intake, screenshot proxy, widget internals, credits, the dual header emitter, site URLs and sitemaps from one source, the analytics tag and its stats reader, and the owner's editor.","directories":{},"sideEffects":false,"_nodeVersion":"22.23.1","dependencies":{"yaml":"^2.9.0"},"publishConfig":{"access":"public"},"_hasShrinkwrap":false,"devDependencies":{"zod":"^4.4.3","vitest":"^4.1.10","typescript":"^7.0.2"},"peerDependencies":{"zod":"^4"},"peerDependenciesMeta":{"zod":{"optional":true}},"_npmOperationalInternal":{"tmp":"tmp/sitekit_0.10.0_1785259169894_0.6751646103776778","host":"s3://npm-registry-packages-npm-production"}},"0.11.0":{"name":"@shaahink/sitekit","version":"0.11.0","license":"MIT","_id":"@shaahink/sitekit@0.11.0","maintainers":[{"name":"shaahink","email":"shaahin69@gmail.com"}],"homepage":"https://github.com/shaahink/sitekit#readme","bugs":{"url":"https://github.com/shaahink/sitekit/issues"},"bin":{"sitekit-editor-css":"bin/editor-css.mjs"},"dist":{"shasum":"3be7c0261ab88ed1943d9dbf70426e2f7e5157d8","tarball":"https://registry.npmjs.org/@shaahink/sitekit/-/sitekit-0.11.0.tgz","fileCount":108,"integrity":"sha512-6u0XWLrc+XvISe19lPa8awg2DDN9V8n/35q9asecvA2LTFUSECUG/i3zA50f9KmnJtZ9ujcn860wICE+HX+fBg==","signatures":[{"sig":"MEUCIHynccp6GvLi5GIcGkk1qB/SM4F3MoQJFyB2r1cdkFkoAiEA95n9a2Btu13UzUmIgRihxUfXihIB/8pjKR1N/iNsZ+I=","keyid":"SHA256:DhQ8wR5APBvFHLF/+Tc+AYvPOdTpcIDqOhxsBHRwC7U"}],"attestations":{"url":"https://registry.npmjs.org/-/npm/v1/attestations/@shaahink%2fsitekit@0.11.0","provenance":{"predicateType":"https://slsa.dev/provenance/v1"}},"unpackedSize":359160},"type":"module","engines":{"node":">=22.12"},"exports":{"./cms":{"types":"./dist/cms/index.d.ts","default":"./dist/cms/index.js"},"./seo":{"types":"./dist/seo/index.d.ts","default":"./dist/seo/index.js"},"./shot":{"types":"./dist/shot/index.d.ts","default":"./dist/shot/index.js"},"./astro":{"types":"./dist/astro/index.d.ts","default":"./dist/astro/index.js"},"./stats":{"types":"./dist/analytics/stats.d.ts","default":"./dist/analytics/stats.js"},"./editor":{"types":"./dist/editor/index.d.ts","default":"./dist/editor/index.js"},"./widget":{"types":"./dist/widget/index.d.ts","default":"./dist/widget/index.js"},"./credits":{"types":"./dist/credits/index.d.ts","default":"./dist/credits/index.js"},"./headers":{"types":"./dist/headers/index.d.ts","default":"./dist/headers/index.js"},"./feedback":{"types":"./dist/feedback/index.d.ts","default":"./dist/feedback/index.js"},"./analytics":{"types":"./dist/analytics/index.d.ts","default":"./dist/analytics/index.js"},"./visibility":{"types":"./dist/cms/visibility.d.ts","default":"./dist/cms/visibility.js"},"./package.json":"./package.json","./editor/inline":{"types":"./dist/editor/inline.d.ts","default":"./dist/editor/inline.js"},"./astro/edit.astro":"./dist/astro/edit.astro","./editor/editor.css":"./dist/editor/editor.css","./editor/inline.css":"./dist/editor/inline.css","./editor/inline-gate":{"types":"./dist/editor/inline-gate.d.ts","default":"./dist/editor/inline-gate.js"}},"gitHead":"24a19b9a2d6665dc66298f6868619289d40cf930","scripts":{"test":"vitest run","build":"node scripts/clean.mjs && tsc -p tsconfig.server.json && tsc -p tsconfig.widget.json && tsc -p tsconfig.editor.json && tsc -p tsconfig.astro.json && node scripts/copy-assets.mjs","prepublishOnly":"npm run build && npm test"},"_npmUser":{"name":"GitHub Actions","email":"npm-oidc-no-reply@github.com","trustedPublisher":{"id":"github","oidcConfigId":"oidc:4ef3cd08-db47-467f-8d1e-aeddc5789035"}},"repository":{"url":"git+https://github.com/shaahink/sitekit.git","type":"git"},"_npmVersion":"12.0.1","description":"Shared logic for the sk site fleet: feedback intake, screenshot proxy, widget internals, credits, the dual header emitter, site URLs and sitemaps from one source, the analytics tag and its stats reader, and the owner's editor.","directories":{},"sideEffects":false,"_nodeVersion":"22.23.1","dependencies":{"yaml":"^2.9.0"},"publishConfig":{"access":"public"},"_hasShrinkwrap":false,"devDependencies":{"zod":"^4.4.3","vitest":"^4.1.10","typescript":"^7.0.2"},"peerDependencies":{"zod":"^4","astro":"^7"},"peerDependenciesMeta":{"zod":{"optional":true},"astro":{"optional":true}},"_npmOperationalInternal":{"tmp":"tmp/sitekit_0.11.0_1785260580773_0.12023896275966584","host":"s3://npm-registry-packages-npm-production"}},"0.12.0":{"name":"@shaahink/sitekit","version":"0.12.0","license":"MIT","_id":"@shaahink/sitekit@0.12.0","maintainers":[{"name":"shaahink","email":"shaahin69@gmail.com"}],"homepage":"https://github.com/shaahink/sitekit#readme","bugs":{"url":"https://github.com/shaahink/sitekit/issues"},"bin":{"sitekit-editor-css":"bin/editor-css.mjs"},"dist":{"shasum":"63608645e5bf6f97527acfa179a02bab3b81c593","tarball":"https://registry.npmjs.org/@shaahink/sitekit/-/sitekit-0.12.0.tgz","fileCount":112,"integrity":"sha512-hBUPilbh4eER4+SrGnPEYczj4v6Ex5htjwJweAnMTJIsFtFIX9GacxUDX1L9lPh4xKFk32vixW34/FX6wjLnLg==","signatures":[{"sig":"MEYCIQC+kVrPLV3MOS4uKhj0H77Q+koJNsPzKTFSF/4mb1M+lgIhAMoISj2QA1559gLximHexU//D7SZkvBG+r1YJ1O1oi2H","keyid":"SHA256:DhQ8wR5APBvFHLF/+Tc+AYvPOdTpcIDqOhxsBHRwC7U"}],"attestations":{"url":"https://registry.npmjs.org/-/npm/v1/attestations/@shaahink%2fsitekit@0.12.0","provenance":{"predicateType":"https://slsa.dev/provenance/v1"}},"unpackedSize":383925},"type":"module","engines":{"node":">=22.12"},"exports":{"./cms":{"types":"./dist/cms/index.d.ts","default":"./dist/cms/index.js"},"./seo":{"types":"./dist/seo/index.d.ts","default":"./dist/seo/index.js"},"./shot":{"types":"./dist/shot/index.d.ts","default":"./dist/shot/index.js"},"./astro":{"types":"./dist/astro/index.d.ts","default":"./dist/astro/index.js"},"./stats":{"types":"./dist/analytics/stats.d.ts","default":"./dist/analytics/stats.js"},"./editor":{"types":"./dist/editor/index.d.ts","default":"./dist/editor/index.js"},"./widget":{"types":"./dist/widget/index.d.ts","default":"./dist/widget/index.js"},"./credits":{"types":"./dist/credits/index.d.ts","default":"./dist/credits/index.js"},"./headers":{"types":"./dist/headers/index.d.ts","default":"./dist/headers/index.js"},"./feedback":{"types":"./dist/feedback/index.d.ts","default":"./dist/feedback/index.js"},"./analytics":{"types":"./dist/analytics/index.d.ts","default":"./dist/analytics/index.js"},"./visibility":{"types":"./dist/cms/visibility.d.ts","default":"./dist/cms/visibility.js"},"./package.json":"./package.json","./editor/inline":{"types":"./dist/editor/inline.d.ts","default":"./dist/editor/inline.js"},"./astro/edit.astro":"./dist/astro/edit.astro","./editor/editor.css":"./dist/editor/editor.css","./editor/inline.css":"./dist/editor/inline.css","./editor/inline-gate":{"types":"./dist/editor/inline-gate.d.ts","default":"./dist/editor/inline-gate.js"}},"gitHead":"a19733608d37cd5f388dc9f372ef448dea622242","scripts":{"test":"vitest run","build":"node scripts/clean.mjs && tsc -p tsconfig.server.json && tsc -p tsconfig.widget.json && tsc -p tsconfig.editor.json && tsc -p tsconfig.astro.json && node scripts/copy-assets.mjs","proof":"node scripts/prove.mjs","prepublishOnly":"npm run build && npm test"},"_npmUser":{"name":"GitHub Actions","email":"npm-oidc-no-reply@github.com","trustedPublisher":{"id":"github","oidcConfigId":"oidc:4ef3cd08-db47-467f-8d1e-aeddc5789035"}},"repository":{"url":"git+https://github.com/shaahink/sitekit.git","type":"git"},"_npmVersion":"12.0.1","description":"Shared logic for the sk site fleet: feedback intake, screenshot proxy, widget internals, credits, the dual header emitter, site URLs and sitemaps from one source, the analytics tag and its stats reader, and the owner's editor.","directories":{},"sideEffects":false,"_nodeVersion":"22.23.1","dependencies":{"yaml":"^2.9.0"},"publishConfig":{"access":"public"},"_hasShrinkwrap":false,"devDependencies":{"zod":"^4.4.3","vitest":"^4.1.10","typescript":"^7.0.2","@types/node":"^22.20.1"},"peerDependencies":{"zod":"^4","astro":"^7"},"peerDependenciesMeta":{"zod":{"optional":true},"astro":{"optional":true}},"_npmOperationalInternal":{"tmp":"tmp/sitekit_0.12.0_1785265340687_0.8839448249150665","host":"s3://npm-registry-packages-npm-production"}},"0.13.0":{"name":"@shaahink/sitekit","version":"0.13.0","license":"MIT","_id":"@shaahink/sitekit@0.13.0","maintainers":[{"name":"shaahink","email":"shaahin69@gmail.com"}],"homepage":"https://github.com/shaahink/sitekit#readme","bugs":{"url":"https://github.com/shaahink/sitekit/issues"},"bin":{"sitekit-editor-css":"bin/editor-css.mjs"},"dist":{"shasum":"f453f2a6c9ca4f3ac52d7eaeac6d89169df06ca2","tarball":"https://registry.npmjs.org/@shaahink/sitekit/-/sitekit-0.13.0.tgz","fileCount":120,"integrity":"sha512-bQvmPRm/LCSOz1tf7V5H26mu4a2Nxp/ujzRJnD/A67tZE5jfl56LHXhUU65RMboGT5xcy4jFtMkcBu/GiL9vpw==","signatures":[{"sig":"MEYCIQDTIyuR/tKEZxUTgiRdWCGhiTaqUJkAZBhBZRSQinkzLQIhALccIIZHI95XC3v3gR1Sdr6RkAX71DZ3F9SQjS5Hps1J","keyid":"SHA256:DhQ8wR5APBvFHLF/+Tc+AYvPOdTpcIDqOhxsBHRwC7U"}],"attestations":{"url":"https://registry.npmjs.org/-/npm/v1/attestations/@shaahink%2fsitekit@0.13.0","provenance":{"predicateType":"https://slsa.dev/provenance/v1"}},"unpackedSize":439686},"type":"module","engines":{"node":">=22.12"},"exports":{"./cms":{"types":"./dist/cms/index.d.ts","default":"./dist/cms/index.js"},"./seo":{"types":"./dist/seo/index.d.ts","default":"./dist/seo/index.js"},"./shot":{"types":"./dist/shot/index.d.ts","default":"./dist/shot/index.js"},"./astro":{"types":"./dist/astro/index.d.ts","default":"./dist/astro/index.js"},"./stats":{"types":"./dist/analytics/stats.d.ts","default":"./dist/analytics/stats.js"},"./editor":{"types":"./dist/editor/index.d.ts","default":"./dist/editor/index.js"},"./widget":{"types":"./dist/widget/index.d.ts","default":"./dist/widget/index.js"},"./credits":{"types":"./dist/credits/index.d.ts","default":"./dist/credits/index.js"},"./headers":{"types":"./dist/headers/index.d.ts","default":"./dist/headers/index.js"},"./feedback":{"types":"./dist/feedback/index.d.ts","default":"./dist/feedback/index.js"},"./analytics":{"types":"./dist/analytics/index.d.ts","default":"./dist/analytics/index.js"},"./visibility":{"types":"./dist/cms/visibility.d.ts","default":"./dist/cms/visibility.js"},"./package.json":"./package.json","./editor/inline":{"types":"./dist/editor/inline.d.ts","default":"./dist/editor/inline.js"},"./astro/edit.astro":"./dist/astro/edit.astro","./editor/editor.css":"./dist/editor/editor.css","./editor/inline.css":"./dist/editor/inline.css","./editor/inline-gate":{"types":"./dist/editor/inline-gate.d.ts","default":"./dist/editor/inline-gate.js"}},"gitHead":"38a6e0be6d0ac7bb2f1a1022166304b9165b4b3c","scripts":{"test":"vitest run","build":"node scripts/clean.mjs && tsc -p tsconfig.server.json && tsc -p tsconfig.widget.json && tsc -p tsconfig.editor.json && tsc -p tsconfig.astro.json && node scripts/copy-assets.mjs","proof":"node scripts/prove.mjs","prepublishOnly":"npm run build && npm test"},"_npmUser":{"name":"GitHub Actions","email":"npm-oidc-no-reply@github.com","trustedPublisher":{"id":"github","oidcConfigId":"oidc:4ef3cd08-db47-467f-8d1e-aeddc5789035"}},"repository":{"url":"git+https://github.com/shaahink/sitekit.git","type":"git"},"_npmVersion":"12.0.1","description":"Shared logic for the sk site fleet: feedback intake, screenshot proxy, widget internals, credits, the dual header emitter, site URLs and sitemaps from one source, the analytics tag and its stats reader, and the owner's editor.","directories":{},"sideEffects":false,"_nodeVersion":"22.23.1","dependencies":{"yaml":"^2.9.0"},"publishConfig":{"access":"public"},"_hasShrinkwrap":false,"devDependencies":{"zod":"^4.4.3","vitest":"^4.1.10","typescript":"^7.0.2","@types/node":"^22.20.1"},"peerDependencies":{"zod":"^4","astro":"^7"},"peerDependenciesMeta":{"zod":{"optional":true},"astro":{"optional":true}},"_npmOperationalInternal":{"tmp":"tmp/sitekit_0.13.0_1785269633715_0.6536066326917118","host":"s3://npm-registry-packages-npm-production"}},"0.14.0":{"name":"@shaahink/sitekit","version":"0.14.0","license":"MIT","_id":"@shaahink/sitekit@0.14.0","maintainers":[{"name":"shaahink","email":"shaahin69@gmail.com"}],"homepage":"https://github.com/shaahink/sitekit#readme","bugs":{"url":"https://github.com/shaahink/sitekit/issues"},"bin":{"sitekit-headers":"bin/headers.mjs","sitekit-editor-css":"bin/editor-css.mjs"},"dist":{"shasum":"63f96349f4e371230989a703a3c18aed209e7378","tarball":"https://registry.npmjs.org/@shaahink/sitekit/-/sitekit-0.14.0.tgz","fileCount":121,"integrity":"sha512-kyF86//MOrRbXEeWAKPtDTxRWZNMT45tlsj4j2rAZPDpgfcr+4b3WLTPZ/nSXBcdzEhZ0xxQdBBnKYhVWe478g==","signatures":[{"sig":"MEUCICTNatLtfnlQAd2d/HGZE1CcHXAiuH4mzEwtR7jfJCfdAiEA9sn5kDHFhNmUUJJdSBIJngZFIqdeYbngLLvAbgdwgcM=","keyid":"SHA256:DhQ8wR5APBvFHLF/+Tc+AYvPOdTpcIDqOhxsBHRwC7U"}],"attestations":{"url":"https://registry.npmjs.org/-/npm/v1/attestations/@shaahink%2fsitekit@0.14.0","provenance":{"predicateType":"https://slsa.dev/provenance/v1"}},"unpackedSize":443639},"type":"module","engines":{"node":">=22.12"},"exports":{"./cms":{"types":"./dist/cms/index.d.ts","default":"./dist/cms/index.js"},"./seo":{"types":"./dist/seo/index.d.ts","default":"./dist/seo/index.js"},"./shot":{"types":"./dist/shot/index.d.ts","default":"./dist/shot/index.js"},"./astro":{"types":"./dist/astro/index.d.ts","default":"./dist/astro/index.js"},"./stats":{"types":"./dist/analytics/stats.d.ts","default":"./dist/analytics/stats.js"},"./editor":{"types":"./dist/editor/index.d.ts","default":"./dist/editor/index.js"},"./widget":{"types":"./dist/widget/index.d.ts","default":"./dist/widget/index.js"},"./credits":{"types":"./dist/credits/index.d.ts","default":"./dist/credits/index.js"},"./headers":{"types":"./dist/headers/index.d.ts","default":"./dist/headers/index.js"},"./feedback":{"types":"./dist/feedback/index.d.ts","default":"./dist/feedback/index.js"},"./analytics":{"types":"./dist/analytics/index.d.ts","default":"./dist/analytics/index.js"},"./visibility":{"types":"./dist/cms/visibility.d.ts","default":"./dist/cms/visibility.js"},"./package.json":"./package.json","./editor/inline":{"types":"./dist/editor/inline.d.ts","default":"./dist/editor/inline.js"},"./astro/edit.astro":"./dist/astro/edit.astro","./editor/editor.css":"./dist/editor/editor.css","./editor/inline.css":"./dist/editor/inline.css","./editor/inline-gate":{"types":"./dist/editor/inline-gate.d.ts","default":"./dist/editor/inline-gate.js"}},"gitHead":"f4f82a64c8fcef062c7ff054863e4418654e2dfd","scripts":{"test":"vitest run","build":"node scripts/clean.mjs && tsc -p tsconfig.server.json && tsc -p tsconfig.widget.json && tsc -p tsconfig.editor.json && tsc -p tsconfig.astro.json && node scripts/copy-assets.mjs","proof":"node scripts/prove.mjs","prepublishOnly":"npm run build && npm test"},"_npmUser":{"name":"GitHub Actions","email":"npm-oidc-no-reply@github.com","trustedPublisher":{"id":"github","oidcConfigId":"oidc:4ef3cd08-db47-467f-8d1e-aeddc5789035"}},"repository":{"url":"git+https://github.com/shaahink/sitekit.git","type":"git"},"_npmVersion":"12.0.1","description":"Shared logic for the sk site fleet: feedback intake, screenshot proxy, widget internals, credits, the dual header emitter, site URLs and sitemaps from one source, the analytics tag and its stats reader, and the owner's editor.","directories":{},"sideEffects":false,"_nodeVersion":"22.23.1","dependencies":{"yaml":"^2.9.0"},"publishConfig":{"access":"public"},"_hasShrinkwrap":false,"devDependencies":{"zod":"^4.4.3","vitest":"^4.1.10","typescript":"^7.0.2","@types/node":"^22.20.1"},"peerDependencies":{"zod":"^4","astro":"^7"},"peerDependenciesMeta":{"zod":{"optional":true},"astro":{"optional":true}},"_npmOperationalInternal":{"tmp":"tmp/sitekit_0.14.0_1785277227980_0.5835284509548877","host":"s3://npm-registry-packages-npm-production"}},"0.15.0":{"name":"@shaahink/sitekit","version":"0.15.0","license":"MIT","_id":"@shaahink/sitekit@0.15.0","maintainers":[{"name":"shaahink","email":"shaahin69@gmail.com"}],"homepage":"https://github.com/shaahink/sitekit#readme","bugs":{"url":"https://github.com/shaahink/sitekit/issues"},"bin":{"sitekit-headers":"bin/headers.mjs","sitekit-editor-css":"bin/editor-css.mjs"},"dist":{"shasum":"24df3dc5ce02e812b07fd630a91bafc71bd20f5b","tarball":"https://registry.npmjs.org/@shaahink/sitekit/-/sitekit-0.15.0.tgz","fileCount":121,"integrity":"sha512-5iHEM897ne+XGZRaZcd9/Ed4UG1Tw5s+Tj8NjHExbRrfSaOTSeunVB2V6/SVIwKfzWciMOHVPRY523zDt7oC6w==","signatures":[{"sig":"MEQCIFCyzecJBdlOtxjAnB57aazOfHtNkgvjQ7ehMhNMtfuFAiASLb2eV9SARe0Tjr56C++WcJbODP/CXTTetnRXtYrseQ==","keyid":"SHA256:DhQ8wR5APBvFHLF/+Tc+AYvPOdTpcIDqOhxsBHRwC7U"}],"attestations":{"url":"https://registry.npmjs.org/-/npm/v1/attestations/@shaahink%2fsitekit@0.15.0","provenance":{"predicateType":"https://slsa.dev/provenance/v1"}},"unpackedSize":461534},"type":"module","engines":{"node":">=22.12"},"exports":{"./cms":{"types":"./dist/cms/index.d.ts","default":"./dist/cms/index.js"},"./seo":{"types":"./dist/seo/index.d.ts","default":"./dist/seo/index.js"},"./shot":{"types":"./dist/shot/index.d.ts","default":"./dist/shot/index.js"},"./astro":{"types":"./dist/astro/index.d.ts","default":"./dist/astro/index.js"},"./stats":{"types":"./dist/analytics/stats.d.ts","default":"./dist/analytics/stats.js"},"./editor":{"types":"./dist/editor/index.d.ts","default":"./dist/editor/index.js"},"./widget":{"types":"./dist/widget/index.d.ts","default":"./dist/widget/index.js"},"./credits":{"types":"./dist/credits/index.d.ts","default":"./dist/credits/index.js"},"./headers":{"types":"./dist/headers/index.d.ts","default":"./dist/headers/index.js"},"./feedback":{"types":"./dist/feedback/index.d.ts","default":"./dist/feedback/index.js"},"./analytics":{"types":"./dist/analytics/index.d.ts","default":"./dist/analytics/index.js"},"./visibility":{"types":"./dist/cms/visibility.d.ts","default":"./dist/cms/visibility.js"},"./package.json":"./package.json","./editor/inline":{"types":"./dist/editor/inline.d.ts","default":"./dist/editor/inline.js"},"./astro/edit.astro":"./dist/astro/edit.astro","./editor/editor.css":"./dist/editor/editor.css","./editor/inline.css":"./dist/editor/inline.css","./editor/inline-gate":{"types":"./dist/editor/inline-gate.d.ts","default":"./dist/editor/inline-gate.js"}},"gitHead":"892970c94ccadf7b08b7d2d2f6a3eee239434a51","scripts":{"test":"vitest run","build":"node scripts/clean.mjs && tsc -p tsconfig.server.json && tsc -p tsconfig.widget.json && tsc -p tsconfig.editor.json && tsc -p tsconfig.astro.json && node scripts/copy-assets.mjs","proof":"node scripts/prove.mjs","prepublishOnly":"npm run build && npm test"},"_npmUser":{"name":"GitHub Actions","email":"npm-oidc-no-reply@github.com","trustedPublisher":{"id":"github","oidcConfigId":"oidc:4ef3cd08-db47-467f-8d1e-aeddc5789035"}},"repository":{"url":"git+https://github.com/shaahink/sitekit.git","type":"git"},"_npmVersion":"12.0.1","description":"Shared logic for the sk site fleet: feedback intake, screenshot proxy, widget internals, credits, the dual header emitter, site URLs and sitemaps from one source, the analytics tag and its stats reader, and the owner's editor.","directories":{},"sideEffects":false,"_nodeVersion":"22.23.1","dependencies":{"yaml":"^2.9.0"},"publishConfig":{"access":"public"},"_hasShrinkwrap":false,"devDependencies":{"zod":"^4.4.3","vitest":"^4.1.10","typescript":"^7.0.2","@types/node":"^22.20.1"},"peerDependencies":{"zod":"^4","astro":"^7"},"peerDependenciesMeta":{"zod":{"optional":true},"astro":{"optional":true}},"_npmOperationalInternal":{"tmp":"tmp/sitekit_0.15.0_1785297401344_0.04026780516319595","host":"s3://npm-registry-packages-npm-production"}},"0.16.0":{"name":"@shaahink/sitekit","version":"0.16.0","license":"MIT","_id":"@shaahink/sitekit@0.16.0","maintainers":[{"name":"shaahink","email":"shaahin69@gmail.com"}],"homepage":"https://github.com/shaahink/sitekit#readme","bugs":{"url":"https://github.com/shaahink/sitekit/issues"},"bin":{"sitekit-headers":"bin/headers.mjs","sitekit-normalize":"bin/normalize.mjs","sitekit-editor-css":"bin/editor-css.mjs"},"dist":{"shasum":"20947d1193ebdb7503e2caa8223fa6a1e4e55e65","tarball":"https://registry.npmjs.org/@shaahink/sitekit/-/sitekit-0.16.0.tgz","fileCount":132,"integrity":"sha512-WAHAwRPDpktTW+DirgE4BMCqIZGfac7bnCNmTqz45FhSqTf/3p38i8Saxglcybz0w6m8QDfDupSZr8AFGkNpgA==","signatures":[{"sig":"MEQCIDNj5JfIJiD+aoMGjBttUQMC4HmAw6AvziE8iAdo5QgTAiByGWjVY5nB7Xg9YJSsCW7AstbWH8ZVndFc6648mh9cGQ==","keyid":"SHA256:DhQ8wR5APBvFHLF/+Tc+AYvPOdTpcIDqOhxsBHRwC7U"}],"attestations":{"url":"https://registry.npmjs.org/-/npm/v1/attestations/@shaahink%2fsitekit@0.16.0","provenance":{"predicateType":"https://slsa.dev/provenance/v1"}},"unpackedSize":539803},"type":"module","engines":{"node":">=22.12"},"exports":{"./cms":{"types":"./dist/cms/index.d.ts","default":"./dist/cms/index.js"},"./seo":{"types":"./dist/seo/index.d.ts","default":"./dist/seo/index.js"},"./shot":{"types":"./dist/shot/index.d.ts","default":"./dist/shot/index.js"},"./astro":{"types":"./dist/astro/index.d.ts","default":"./dist/astro/index.js"},"./stats":{"types":"./dist/analytics/stats.d.ts","default":"./dist/analytics/stats.js"},"./editor":{"types":"./dist/editor/index.d.ts","default":"./dist/editor/index.js"},"./widget":{"types":"./dist/widget/index.d.ts","default":"./dist/widget/index.js"},"./credits":{"types":"./dist/credits/index.d.ts","default":"./dist/credits/index.js"},"./headers":{"types":"./dist/headers/index.d.ts","default":"./dist/headers/index.js"},"./feedback":{"types":"./dist/feedback/index.d.ts","default":"./dist/feedback/index.js"},"./analytics":{"types":"./dist/analytics/index.d.ts","default":"./dist/analytics/index.js"},"./visibility":{"types":"./dist/cms/visibility.d.ts","default":"./dist/cms/visibility.js"},"./package.json":"./package.json","./editor/inline":{"types":"./dist/editor/inline.d.ts","default":"./dist/editor/inline.js"},"./widget/chrome":{"types":"./dist/widget/chrome.d.ts","default":"./dist/widget/chrome.js"},"./astro/edit.astro":"./dist/astro/edit.astro","./editor/editor.css":"./dist/editor/editor.css","./editor/inline.css":"./dist/editor/inline.css","./editor/inline-gate":{"types":"./dist/editor/inline-gate.d.ts","default":"./dist/editor/inline-gate.js"}},"gitHead":"ead94531e6147957e365ac12227761decb27909a","scripts":{"test":"vitest run","build":"node scripts/clean.mjs && tsc -p tsconfig.server.json && tsc -p tsconfig.widget.json && tsc -p tsconfig.editor.json && tsc -p tsconfig.astro.json && node scripts/copy-assets.mjs","proof":"node scripts/prove.mjs","prepublishOnly":"npm run build && npm test"},"_npmUser":{"name":"GitHub Actions","email":"npm-oidc-no-reply@github.com","trustedPublisher":{"id":"github","oidcConfigId":"oidc:4ef3cd08-db47-467f-8d1e-aeddc5789035"}},"repository":{"url":"git+https://github.com/shaahink/sitekit.git","type":"git"},"_npmVersion":"12.0.2","description":"Shared logic for the sk site fleet: feedback intake, screenshot proxy, widget internals, credits, the dual header emitter, site URLs and sitemaps from one source, the analytics tag and its stats reader, and the owner's editor.","directories":{},"sideEffects":false,"_nodeVersion":"22.23.1","dependencies":{"yaml":"^2.9.0"},"publishConfig":{"access":"public"},"_hasShrinkwrap":false,"devDependencies":{"zod":"^4.4.3","vitest":"^4.1.10","typescript":"^7.0.2","@types/node":"^22.20.1"},"peerDependencies":{"zod":"^4","astro":"^7"},"peerDependenciesMeta":{"zod":{"optional":true},"astro":{"optional":true}},"_npmOperationalInternal":{"tmp":"tmp/sitekit_0.16.0_1785368264493_0.4878179744357014","host":"s3://npm-registry-packages-npm-production"}},"0.16.1":{"name":"@shaahink/sitekit","version":"0.16.1","license":"MIT","_id":"@shaahink/sitekit@0.16.1","maintainers":[{"name":"shaahink","email":"shaahin69@gmail.com"}],"homepage":"https://github.com/shaahink/sitekit#readme","bugs":{"url":"https://github.com/shaahink/sitekit/issues"},"bin":{"sitekit-headers":"bin/headers.mjs","sitekit-normalize":"bin/normalize.mjs","sitekit-editor-css":"bin/editor-css.mjs"},"dist":{"shasum":"af18aa012f03d7e02004e27b379eeb788c936ab5","tarball":"https://registry.npmjs.org/@shaahink/sitekit/-/sitekit-0.16.1.tgz","fileCount":134,"integrity":"sha512-l0dq/fqromAaHlZU1+j7Dc/NVz/BVuAenBzYUTDcQMvUbb48NT32/r6VBTE3+06EpJUBKXN414oEYeaQg0W4QQ==","signatures":[{"sig":"MEUCIQDOS0DjwmaprvDBgkxsOzoeOOC22OCQTqutaaAQCLX5bwIgTGhikp4Q1a3vpfzPG49diN2uAPuv9txpZwPz8Rge6lQ=","keyid":"SHA256:DhQ8wR5APBvFHLF/+Tc+AYvPOdTpcIDqOhxsBHRwC7U"}],"attestations":{"url":"https://registry.npmjs.org/-/npm/v1/attestations/@shaahink%2fsitekit@0.16.1","provenance":{"predicateType":"https://slsa.dev/provenance/v1"}},"unpackedSize":562327},"type":"module","engines":{"node":">=22.12"},"exports":{"./cms":{"types":"./dist/cms/index.d.ts","default":"./dist/cms/index.js"},"./seo":{"types":"./dist/seo/index.d.ts","default":"./dist/seo/index.js"},"./shot":{"types":"./dist/shot/index.d.ts","default":"./dist/shot/index.js"},"./astro":{"types":"./dist/astro/index.d.ts","default":"./dist/astro/index.js"},"./stats":{"types":"./dist/analytics/stats.d.ts","default":"./dist/analytics/stats.js"},"./editor":{"types":"./dist/editor/index.d.ts","default":"./dist/editor/index.js"},"./widget":{"types":"./dist/widget/index.d.ts","default":"./dist/widget/index.js"},"./credits":{"types":"./dist/credits/index.d.ts","default":"./dist/credits/index.js"},"./headers":{"types":"./dist/headers/index.d.ts","default":"./dist/headers/index.js"},"./feedback":{"types":"./dist/feedback/index.d.ts","default":"./dist/feedback/index.js"},"./analytics":{"types":"./dist/analytics/index.d.ts","default":"./dist/analytics/index.js"},"./visibility":{"types":"./dist/cms/visibility.d.ts","default":"./dist/cms/visibility.js"},"./package.json":"./package.json","./editor/inline":{"types":"./dist/editor/inline.d.ts","default":"./dist/editor/inline.js"},"./widget/chrome":{"types":"./dist/widget/chrome.d.ts","default":"./dist/widget/chrome.js"},"./astro/edit.astro":"./dist/astro/edit.astro","./editor/editor.css":"./dist/editor/editor.css","./editor/inline.css":"./dist/editor/inline.css","./editor/inline-gate":{"types":"./dist/editor/inline-gate.d.ts","default":"./dist/editor/inline-gate.js"}},"gitHead":"317370596312dba75a63b55f589c965bb4b7fb5b","scripts":{"test":"vitest run","build":"node scripts/clean.mjs && tsc -p tsconfig.server.json && tsc -p tsconfig.widget.json && tsc -p tsconfig.editor.json && tsc -p tsconfig.astro.json && node scripts/copy-assets.mjs","proof":"node scripts/prove.mjs","prepublishOnly":"npm run build && npm test"},"_npmUser":{"name":"GitHub Actions","email":"npm-oidc-no-reply@github.com","trustedPublisher":{"id":"github","oidcConfigId":"oidc:4ef3cd08-db47-467f-8d1e-aeddc5789035"}},"repository":{"url":"git+https://github.com/shaahink/sitekit.git","type":"git"},"_npmVersion":"12.0.2","description":"Shared logic for the sk site fleet: feedback intake, screenshot proxy, widget internals, credits, the dual header emitter, site URLs and sitemaps from one source, the analytics tag and its stats reader, and the owner's editor.","directories":{},"sideEffects":false,"_nodeVersion":"22.23.1","dependencies":{"yaml":"^2.9.0"},"publishConfig":{"access":"public"},"_hasShrinkwrap":false,"devDependencies":{"zod":"^4.4.3","vitest":"^4.1.10","typescript":"^7.0.2","@types/node":"^22.20.1"},"peerDependencies":{"zod":"^4","astro":"^7"},"peerDependenciesMeta":{"zod":{"optional":true},"astro":{"optional":true}},"_npmOperationalInternal":{"tmp":"tmp/sitekit_0.16.1_1785374393633_0.6494289448896227","host":"s3://npm-registry-packages-npm-production"}},"0.17.0":{"name":"@shaahink/sitekit","version":"0.17.0","license":"MIT","_id":"@shaahink/sitekit@0.17.0","maintainers":[{"name":"shaahink","email":"shaahin69@gmail.com"}],"homepage":"https://github.com/shaahink/sitekit#readme","bugs":{"url":"https://github.com/shaahink/sitekit/issues"},"bin":{"sitekit-headers":"bin/headers.mjs","sitekit-normalize":"bin/normalize.mjs","sitekit-editor-css":"bin/editor-css.mjs"},"dist":{"shasum":"ed551fb6c0a0c5a01dad28a57e7687757095f1da","tarball":"https://registry.npmjs.org/@shaahink/sitekit/-/sitekit-0.17.0.tgz","fileCount":136,"integrity":"sha512-TSqEssMiGKfOAurua3U8UU8x0SmzYYHXZ3gqORKF1Qt4sj8MLYQzhxFpcvIOUuMYF/TAVAS3rxwVqzl/jooTAg==","signatures":[{"sig":"MEUCIDvZGMXxQBvsYydWYcv7RronaVxH4HV5BUzNzqkUwasTAiEA2tcHkyvf41uI8dyvxxZk27M3iqLwXJvrsbkj2UVhgjc=","keyid":"SHA256:DhQ8wR5APBvFHLF/+Tc+AYvPOdTpcIDqOhxsBHRwC7U"}],"attestations":{"url":"https://registry.npmjs.org/-/npm/v1/attestations/@shaahink%2fsitekit@0.17.0","provenance":{"predicateType":"https://slsa.dev/provenance/v1"}},"unpackedSize":702905},"type":"module","engines":{"node":">=22.12"},"exports":{"./cms":{"types":"./dist/cms/index.d.ts","default":"./dist/cms/index.js"},"./seo":{"types":"./dist/seo/index.d.ts","default":"./dist/seo/index.js"},"./shot":{"types":"./dist/shot/index.d.ts","default":"./dist/shot/index.js"},"./astro":{"types":"./dist/astro/index.d.ts","default":"./dist/astro/index.js"},"./stats":{"types":"./dist/analytics/stats.d.ts","default":"./dist/analytics/stats.js"},"./editor":{"types":"./dist/editor/index.d.ts","default":"./dist/editor/index.js"},"./widget":{"types":"./dist/widget/index.d.ts","default":"./dist/widget/index.js"},"./credits":{"types":"./dist/credits/index.d.ts","default":"./dist/credits/index.js"},"./headers":{"types":"./dist/headers/index.d.ts","default":"./dist/headers/index.js"},"./feedback":{"types":"./dist/feedback/index.d.ts","default":"./dist/feedback/index.js"},"./analytics":{"types":"./dist/analytics/index.d.ts","default":"./dist/analytics/index.js"},"./visibility":{"types":"./dist/cms/visibility.d.ts","default":"./dist/cms/visibility.js"},"./package.json":"./package.json","./editor/inline":{"types":"./dist/editor/inline.d.ts","default":"./dist/editor/inline.js"},"./widget/chrome":{"types":"./dist/widget/chrome.d.ts","default":"./dist/widget/chrome.js"},"./astro/edit.astro":"./dist/astro/edit.astro","./editor/editor.css":"./dist/editor/editor.css","./editor/inline.css":"./dist/editor/inline.css","./editor/inline-gate":{"types":"./dist/editor/inline-gate.d.ts","default":"./dist/editor/inline-gate.js"}},"gitHead":"96a157d0e6c60a1c1dd567f764e482dfab2aa862","scripts":{"test":"vitest run","build":"node scripts/clean.mjs && tsc -p tsconfig.server.json && tsc -p tsconfig.widget.json && tsc -p tsconfig.editor.json && tsc -p tsconfig.astro.json && node scripts/copy-assets.mjs","proof":"node scripts/prove.mjs","prepublishOnly":"npm run build && npm test"},"_npmUser":{"name":"GitHub Actions","email":"npm-oidc-no-reply@github.com","trustedPublisher":{"id":"github","oidcConfigId":"oidc:4ef3cd08-db47-467f-8d1e-aeddc5789035"}},"repository":{"url":"git+https://github.com/shaahink/sitekit.git","type":"git"},"_npmVersion":"12.0.2","description":"Shared logic for the sk site fleet: feedback intake, screenshot proxy, widget internals, credits, the dual header emitter, site URLs and sitemaps from one source, the analytics tag and its stats reader, and the owner's editor.","directories":{},"sideEffects":false,"_nodeVersion":"22.23.1","dependencies":{"yaml":"^2.9.0"},"publishConfig":{"access":"public"},"_hasShrinkwrap":false,"devDependencies":{"zod":"^4.4.3","vitest":"^4.1.10","happy-dom":"^20.11.1","typescript":"^7.0.2","@types/node":"^22.20.1"},"peerDependencies":{"zod":"^4","astro":"^7"},"peerDependenciesMeta":{"zod":{"optional":true},"astro":{"optional":true}},"_npmOperationalInternal":{"tmp":"tmp/sitekit_0.17.0_1785393759705_0.8470105702084847","host":"s3://npm-registry-packages-npm-production"}},"0.18.0":{"name":"@shaahink/sitekit","version":"0.18.0","license":"MIT","_id":"@shaahink/sitekit@0.18.0","maintainers":[{"name":"shaahink","email":"shaahin69@gmail.com"}],"homepage":"https://github.com/shaahink/sitekit#readme","bugs":{"url":"https://github.com/shaahink/sitekit/issues"},"bin":{"sitekit-headers":"bin/headers.mjs","sitekit-normalize":"bin/normalize.mjs","sitekit-editor-css":"bin/editor-css.mjs"},"dist":{"shasum":"0bb1e13d0f689ac786408575f426994ef2551973","tarball":"https://registry.npmjs.org/@shaahink/sitekit/-/sitekit-0.18.0.tgz","fileCount":142,"integrity":"sha512-9SC23ADyt6LUXqMu1sVVCLkgRAi+bEuV5gLr42i9k79Sm3swn3pkBQ65p1JrnT4w2rAM40emCJjA3fVuwMVLZA==","signatures":[{"sig":"MEYCIQCT0MS/npD6w1Spvyzrl6Eg2k2L8QVhW/AMpkPH5QscxQIhAN4HLH6bFcl+qzZZZVfjRw+MfMJ0LpDaE0briw4ofIo3","keyid":"SHA256:DhQ8wR5APBvFHLF/+Tc+AYvPOdTpcIDqOhxsBHRwC7U"}],"attestations":{"url":"https://registry.npmjs.org/-/npm/v1/attestations/@shaahink%2fsitekit@0.18.0","provenance":{"predicateType":"https://slsa.dev/provenance/v1"}},"unpackedSize":727915},"type":"module","engines":{"node":">=22.12"},"exports":{"./cms":{"types":"./dist/cms/index.d.ts","default":"./dist/cms/index.js"},"./seo":{"types":"./dist/seo/index.d.ts","default":"./dist/seo/index.js"},"./shot":{"types":"./dist/shot/index.d.ts","default":"./dist/shot/index.js"},"./astro":{"types":"./dist/astro/index.d.ts","default":"./dist/astro/index.js"},"./stats":{"types":"./dist/analytics/stats.d.ts","default":"./dist/analytics/stats.js"},"./editor":{"types":"./dist/editor/index.d.ts","default":"./dist/editor/index.js"},"./motion":{"types":"./dist/motion/index.d.ts","default":"./dist/motion/index.js"},"./widget":{"types":"./dist/widget/index.d.ts","default":"./dist/widget/index.js"},"./credits":{"types":"./dist/credits/index.d.ts","default":"./dist/credits/index.js"},"./headers":{"types":"./dist/headers/index.d.ts","default":"./dist/headers/index.js"},"./feedback":{"types":"./dist/feedback/index.d.ts","default":"./dist/feedback/index.js"},"./analytics":{"types":"./dist/analytics/index.d.ts","default":"./dist/analytics/index.js"},"./motion/rig":{"types":"./dist/motion/rig.d.ts","default":"./dist/motion/rig.js"},"./visibility":{"types":"./dist/cms/visibility.d.ts","default":"./dist/cms/visibility.js"},"./package.json":"./package.json","./editor/inline":{"types":"./dist/editor/inline.d.ts","default":"./dist/editor/inline.js"},"./widget/chrome":{"types":"./dist/widget/chrome.d.ts","default":"./dist/widget/chrome.js"},"./astro/edit.astro":"./dist/astro/edit.astro","./editor/editor.css":"./dist/editor/editor.css","./editor/inline.css":"./dist/editor/inline.css","./editor/inline-gate":{"types":"./dist/editor/inline-gate.d.ts","default":"./dist/editor/inline-gate.js"}},"gitHead":"d84b717307ffd885fb9f19df64feef7869091399","scripts":{"test":"vitest run","build":"node scripts/clean.mjs && tsc -p tsconfig.server.json && tsc -p tsconfig.widget.json && tsc -p tsconfig.editor.json && tsc -p tsconfig.astro.json && node scripts/copy-assets.mjs","proof":"node scripts/prove.mjs","prepublishOnly":"npm run build && npm test"},"_npmUser":{"name":"GitHub Actions","email":"npm-oidc-no-reply@github.com","trustedPublisher":{"id":"github","oidcConfigId":"oidc:4ef3cd08-db47-467f-8d1e-aeddc5789035"}},"repository":{"url":"git+https://github.com/shaahink/sitekit.git","type":"git"},"_npmVersion":"12.0.2","description":"Shared logic for the sk site fleet: feedback intake, screenshot proxy, widget internals, credits, the dual header emitter, site URLs and sitemaps from one source, the analytics tag and its stats reader, the owner's editor, and the motion plumbing (deferre","directories":{},"sideEffects":false,"_nodeVersion":"22.23.1","dependencies":{"yaml":"^2.9.0"},"publishConfig":{"access":"public"},"_hasShrinkwrap":false,"devDependencies":{"zod":"^4.4.3","vitest":"^4.1.10","happy-dom":"^20.11.1","typescript":"^7.0.2","@types/node":"^22.20.1"},"peerDependencies":{"zod":"^4","astro":"^7"},"peerDependenciesMeta":{"zod":{"optional":true},"astro":{"optional":true}},"_npmOperationalInternal":{"tmp":"tmp/sitekit_0.18.0_1785459841234_0.9260416609870794","host":"s3://npm-registry-packages-npm-production"}},"0.19.0":{"name":"@shaahink/sitekit","version":"0.19.0","license":"MIT","_id":"@shaahink/sitekit@0.19.0","maintainers":[{"name":"shaahink","email":"shaahin69@gmail.com"}],"homepage":"https://github.com/shaahink/sitekit#readme","bugs":{"url":"https://github.com/shaahink/sitekit/issues"},"bin":{"sitekit-headers":"bin/headers.mjs","sitekit-normalize":"bin/normalize.mjs","sitekit-editor-css":"bin/editor-css.mjs"},"dist":{"shasum":"968ec0dc3a82dc8aa61776b0d39c170ebaa4e402","tarball":"https://registry.npmjs.org/@shaahink/sitekit/-/sitekit-0.19.0.tgz","fileCount":150,"integrity":"sha512-LZtL0Ornb0JTix/wkcS1i76AHEBXBio99EMnzCHyCzIUsN03qqpWh273csC6fRHxkgFrusl4khj/xEgfuyEqGg==","signatures":[{"sig":"MEQCIDKEP0/lAT539tYj4M9YKXWBTXMTUCEsXgt1WglxjtQ9AiB040u06wWYrzV+PfPupHJHdBSrXL6iKEloVsj+4wSIZQ==","keyid":"SHA256:DhQ8wR5APBvFHLF/+Tc+AYvPOdTpcIDqOhxsBHRwC7U"}],"attestations":{"url":"https://registry.npmjs.org/-/npm/v1/attestations/@shaahink%2fsitekit@0.19.0","provenance":{"predicateType":"https://slsa.dev/provenance/v1"}},"unpackedSize":793834},"type":"module","engines":{"node":">=22.12"},"exports":{"./cms":{"types":"./dist/cms/index.d.ts","default":"./dist/cms/index.js"},"./seo":{"types":"./dist/seo/index.d.ts","default":"./dist/seo/index.js"},"./shot":{"types":"./dist/shot/index.d.ts","default":"./dist/shot/index.js"},"./astro":{"types":"./dist/astro/index.d.ts","default":"./dist/astro/index.js"},"./stats":{"types":"./dist/analytics/stats.d.ts","default":"./dist/analytics/stats.js"},"./editor":{"types":"./dist/editor/index.d.ts","default":"./dist/editor/index.js"},"./motion":{"types":"./dist/motion/index.d.ts","default":"./dist/motion/index.js"},"./widget":{"types":"./dist/widget/index.d.ts","default":"./dist/widget/index.js"},"./credits":{"types":"./dist/credits/index.d.ts","default":"./dist/credits/index.js"},"./headers":{"types":"./dist/headers/index.d.ts","default":"./dist/headers/index.js"},"./feedback":{"types":"./dist/feedback/index.d.ts","default":"./dist/feedback/index.js"},"./analytics":{"types":"./dist/analytics/index.d.ts","default":"./dist/analytics/index.js"},"./motion/rig":{"types":"./dist/motion/rig.d.ts","default":"./dist/motion/rig.js"},"./visibility":{"types":"./dist/cms/visibility.d.ts","default":"./dist/cms/visibility.js"},"./package.json":"./package.json","./editor/inline":{"types":"./dist/editor/inline.d.ts","default":"./dist/editor/inline.js"},"./widget/chrome":{"types":"./dist/widget/chrome.d.ts","default":"./dist/widget/chrome.js"},"./astro/edit.astro":"./dist/astro/edit.astro","./editor/editor.css":"./dist/editor/editor.css","./editor/inline.css":"./dist/editor/inline.css","./editor/inline-gate":{"types":"./dist/editor/inline-gate.d.ts","default":"./dist/editor/inline-gate.js"}},"gitHead":"6691715211233097d63ee89e81e2ecb7708c57e3","scripts":{"test":"vitest run","build":"node scripts/clean.mjs && tsc -p tsconfig.server.json && tsc -p tsconfig.widget.json && tsc -p tsconfig.editor.json && tsc -p tsconfig.astro.json && node scripts/copy-assets.mjs","proof":"node scripts/prove.mjs","prepublishOnly":"npm run build && npm test"},"_npmUser":{"name":"GitHub Actions","email":"npm-oidc-no-reply@github.com","trustedPublisher":{"id":"github","oidcConfigId":"oidc:4ef3cd08-db47-467f-8d1e-aeddc5789035"}},"repository":{"url":"git+https://github.com/shaahink/sitekit.git","type":"git"},"_npmVersion":"12.0.2","description":"Shared logic for the sk site fleet: feedback intake, screenshot proxy, widget internals, credits, the dual header emitter, site URLs and sitemaps from one source, the analytics tag and its stats reader, the owner's editor, the fleet sign-in hand-off, and ","directories":{},"sideEffects":false,"_nodeVersion":"22.23.1","dependencies":{"yaml":"^2.9.0"},"publishConfig":{"access":"public"},"_hasShrinkwrap":false,"devDependencies":{"zod":"^4.4.3","vitest":"^4.1.10","happy-dom":"^20.11.1","typescript":"^7.0.2","@types/node":"^22.20.1"},"peerDependencies":{"zod":"^4","astro":"^7"},"peerDependenciesMeta":{"zod":{"optional":true},"astro":{"optional":true}},"_npmOperationalInternal":{"tmp":"tmp/sitekit_0.19.0_1785471478594_0.43589618949873676","host":"s3://npm-registry-packages-npm-production"}},"0.20.0":{"name":"@shaahink/sitekit","version":"0.20.0","license":"MIT","_id":"@shaahink/sitekit@0.20.0","maintainers":[{"name":"shaahink","email":"shaahin69@gmail.com"}],"homepage":"https://github.com/shaahink/sitekit#readme","bugs":{"url":"https://github.com/shaahink/sitekit/issues"},"bin":{"sitekit-headers":"bin/headers.mjs","sitekit-normalize":"bin/normalize.mjs","sitekit-editor-css":"bin/editor-css.mjs"},"dist":{"shasum":"ee67d71af7d3c3fbc027a0ca8746f4089c905fd0","tarball":"https://registry.npmjs.org/@shaahink/sitekit/-/sitekit-0.20.0.tgz","fileCount":168,"integrity":"sha512-u7PqcdicS1OS7StKOSdFzVoROvzjvTZcMR1rSYpNXLWnlP8NV1sbA50qCpZ+WYZO9QOG0VsMIJNr9dTTU8korQ==","signatures":[{"sig":"MEUCIQDpdh2ybeI6XWz2UP4cIA8TqPrAlU/kpev9asxQybVkeAIgXQ7CysgzueqVn9CjbNoBwYI/5+LZ/FVliPfpDADHtiY=","keyid":"SHA256:DhQ8wR5APBvFHLF/+Tc+AYvPOdTpcIDqOhxsBHRwC7U"}],"attestations":{"url":"https://registry.npmjs.org/-/npm/v1/attestations/@shaahink%2fsitekit@0.20.0","provenance":{"predicateType":"https://slsa.dev/provenance/v1"}},"unpackedSize":943820},"type":"module","engines":{"node":">=22.12"},"exports":{"./cms":{"types":"./dist/cms/index.d.ts","default":"./dist/cms/index.js"},"./seo":{"types":"./dist/seo/index.d.ts","default":"./dist/seo/index.js"},"./shot":{"types":"./dist/shot/index.d.ts","default":"./dist/shot/index.js"},"./astro":{"types":"./dist/astro/index.d.ts","default":"./dist/astro/index.js"},"./stats":{"types":"./dist/analytics/stats.d.ts","default":"./dist/analytics/stats.js"},"./editor":{"types":"./dist/editor/index.d.ts","default":"./dist/editor/index.js"},"./motion":{"types":"./dist/motion/index.d.ts","default":"./dist/motion/index.js"},"./widget":{"types":"./dist/widget/index.d.ts","default":"./dist/widget/index.js"},"./credits":{"types":"./dist/credits/index.d.ts","default":"./dist/credits/index.js"},"./headers":{"types":"./dist/headers/index.d.ts","default":"./dist/headers/index.js"},"./feedback":{"types":"./dist/feedback/index.d.ts","default":"./dist/feedback/index.js"},"./analytics":{"types":"./dist/analytics/index.d.ts","default":"./dist/analytics/index.js"},"./motion/rig":{"types":"./dist/motion/rig.d.ts","default":"./dist/motion/rig.js"},"./visibility":{"types":"./dist/cms/visibility.d.ts","default":"./dist/cms/visibility.js"},"./package.json":"./package.json","./editor/inline":{"types":"./dist/editor/inline.d.ts","default":"./dist/editor/inline.js"},"./widget/chrome":{"types":"./dist/widget/chrome.d.ts","default":"./dist/widget/chrome.js"},"./astro/edit.astro":"./dist/astro/edit.astro","./editor/editor.css":"./dist/editor/editor.css","./editor/inline.css":"./dist/editor/inline.css","./editor/inline-gate":{"types":"./dist/editor/inline-gate.d.ts","default":"./dist/editor/inline-gate.js"}},"gitHead":"bf070ad9fdc9549b3b0f48c123cca68624dd4c75","scripts":{"test":"vitest run","build":"node scripts/clean.mjs && tsc -p tsconfig.server.json && tsc -p tsconfig.widget.json && tsc -p tsconfig.editor.json && tsc -p tsconfig.astro.json && node scripts/copy-assets.mjs","proof":"node scripts/prove.mjs","prepublishOnly":"npm run build && npm test"},"_npmUser":{"name":"GitHub Actions","email":"npm-oidc-no-reply@github.com","trustedPublisher":{"id":"github","oidcConfigId":"oidc:4ef3cd08-db47-467f-8d1e-aeddc5789035"}},"repository":{"url":"git+https://github.com/shaahink/sitekit.git","type":"git"},"_npmVersion":"12.0.2","description":"Shared logic for the sk site fleet: feedback intake, screenshot proxy, widget internals, credits, the dual header emitter, site URLs and sitemaps from one source, the analytics tag and its stats reader, the owner's editor, the fleet sign-in hand-off, and ","directories":{},"sideEffects":false,"_nodeVersion":"22.23.1","dependencies":{"yaml":"^2.9.0"},"publishConfig":{"access":"public"},"_hasShrinkwrap":false,"devDependencies":{"zod":"^4.4.3","vitest":"^4.1.10","happy-dom":"^20.11.1","typescript":"^7.0.2","@types/node":"^22.20.1"},"peerDependencies":{"zod":"^4","astro":"^7"},"peerDependenciesMeta":{"zod":{"optional":true},"astro":{"optional":true}},"_npmOperationalInternal":{"tmp":"tmp/sitekit_0.20.0_1785491664669_0.31978998926161406","host":"s3://npm-registry-packages-npm-production"}},"0.21.0":{"name":"@shaahink/sitekit","version":"0.21.0","license":"MIT","_id":"@shaahink/sitekit@0.21.0","maintainers":[{"name":"shaahink","email":"shaahin69@gmail.com"}],"homepage":"https://github.com/shaahink/sitekit#readme","bugs":{"url":"https://github.com/shaahink/sitekit/issues"},"bin":{"sitekit-headers":"bin/headers.mjs","sitekit-normalize":"bin/normalize.mjs","sitekit-editor-css":"bin/editor-css.mjs"},"dist":{"shasum":"38b56a0dff611a1faa12fd220d733da1da2f7435","tarball":"https://registry.npmjs.org/@shaahink/sitekit/-/sitekit-0.21.0.tgz","fileCount":168,"integrity":"sha512-REha1S17yIsbSW+gH0rMKh4v+d4j1uBam5m0o7zQAOnjlVKDu9XS4F+E36zPEJJvAHAgQyTOzYHR0EeSx5vsYw==","signatures":[{"sig":"MEUCIEgcys4tmGVneUxntY7H29vOkQy4o3Oax8pAJ5uzfnzeAiEAiWSIDp6AY9CtHTucSTbfOhb72AbLtuC1Mp8QUWtiaEs=","keyid":"SHA256:DhQ8wR5APBvFHLF/+Tc+AYvPOdTpcIDqOhxsBHRwC7U"}],"attestations":{"url":"https://registry.npmjs.org/-/npm/v1/attestations/@shaahink%2fsitekit@0.21.0","provenance":{"predicateType":"https://slsa.dev/provenance/v1"}},"unpackedSize":947645},"type":"module","engines":{"node":">=22.12"},"exports":{"./cms":{"types":"./dist/cms/index.d.ts","default":"./dist/cms/index.js"},"./seo":{"types":"./dist/seo/index.d.ts","default":"./dist/seo/index.js"},"./shot":{"types":"./dist/shot/index.d.ts","default":"./dist/shot/index.js"},"./astro":{"types":"./dist/astro/index.d.ts","default":"./dist/astro/index.js"},"./stats":{"types":"./dist/analytics/stats.d.ts","default":"./dist/analytics/stats.js"},"./editor":{"types":"./dist/editor/index.d.ts","default":"./dist/editor/index.js"},"./motion":{"types":"./dist/motion/index.d.ts","default":"./dist/motion/index.js"},"./widget":{"types":"./dist/widget/index.d.ts","default":"./dist/widget/index.js"},"./credits":{"types":"./dist/credits/index.d.ts","default":"./dist/credits/index.js"},"./headers":{"types":"./dist/headers/index.d.ts","default":"./dist/headers/index.js"},"./feedback":{"types":"./dist/feedback/index.d.ts","default":"./dist/feedback/index.js"},"./analytics":{"types":"./dist/analytics/index.d.ts","default":"./dist/analytics/index.js"},"./motion/rig":{"types":"./dist/motion/rig.d.ts","default":"./dist/motion/rig.js"},"./visibility":{"types":"./dist/cms/visibility.d.ts","default":"./dist/cms/visibility.js"},"./package.json":"./package.json","./editor/inline":{"types":"./dist/editor/inline.d.ts","default":"./dist/editor/inline.js"},"./widget/chrome":{"types":"./dist/widget/chrome.d.ts","default":"./dist/widget/chrome.js"},"./astro/edit.astro":"./dist/astro/edit.astro","./editor/editor.css":"./dist/editor/editor.css","./editor/inline.css":"./dist/editor/inline.css","./editor/inline-gate":{"types":"./dist/editor/inline-gate.d.ts","default":"./dist/editor/inline-gate.js"}},"gitHead":"63c7d3d468cd9357009182806658be3f889120f4","scripts":{"test":"vitest run","build":"node scripts/clean.mjs && tsc -p tsconfig.server.json && tsc -p tsconfig.widget.json && tsc -p tsconfig.editor.json && tsc -p tsconfig.astro.json && node scripts/copy-assets.mjs","proof":"node scripts/prove.mjs","prepublishOnly":"npm run build && npm test"},"_npmUser":{"name":"GitHub Actions","email":"npm-oidc-no-reply@github.com","trustedPublisher":{"id":"github","oidcConfigId":"oidc:4ef3cd08-db47-467f-8d1e-aeddc5789035"}},"repository":{"url":"git+https://github.com/shaahink/sitekit.git","type":"git"},"_npmVersion":"12.0.2","description":"Shared logic for the sk site fleet: feedback intake, screenshot proxy, widget internals, credits, the dual header emitter, site URLs and sitemaps from one source, the analytics tag and its stats reader, the owner's editor, the fleet sign-in hand-off, and ","directories":{},"sideEffects":false,"_nodeVersion":"22.23.1","dependencies":{"yaml":"^2.9.0"},"publishConfig":{"access":"public"},"_hasShrinkwrap":false,"devDependencies":{"zod":"^4.4.3","vitest":"^4.1.10","happy-dom":"^20.11.1","typescript":"^7.0.2","@types/node":"^22.20.1"},"peerDependencies":{"zod":"^4","astro":"^7"},"peerDependenciesMeta":{"zod":{"optional":true},"astro":{"optional":true}},"_npmOperationalInternal":{"tmp":"tmp/sitekit_0.21.0_1785502880018_0.7958096078864796","host":"s3://npm-registry-packages-npm-production"}},"0.22.0":{"name":"@shaahink/sitekit","version":"0.22.0","license":"MIT","_id":"@shaahink/sitekit@0.22.0","maintainers":[{"name":"shaahink","email":"shaahin69@gmail.com"}],"homepage":"https://github.com/shaahink/sitekit#readme","bugs":{"url":"https://github.com/shaahink/sitekit/issues"},"bin":{"sitekit-headers":"bin/headers.mjs","sitekit-normalize":"bin/normalize.mjs","sitekit-editor-css":"bin/editor-css.mjs"},"dist":{"shasum":"9b66c3daf85f21c1239a0e00156ac844c677ad47","tarball":"https://registry.npmjs.org/@shaahink/sitekit/-/sitekit-0.22.0.tgz","fileCount":172,"integrity":"sha512-nXTZ24CrxMY2L0boQXSkKfidOpLCyB/l4voCNwimas/l54JO6pJYcGGEWy1Y12llItuCT6dMO13vEcOK1sE3Bg==","signatures":[{"sig":"MEYCIQD5L3KwlaKkJgcx01DV+So4qG7TwR6lSkeR0JyclODfWgIhAMgHRSefdfHyDCsH3Pkga2lA0TaffmI3A+d6QH7Wb6LN","keyid":"SHA256:DhQ8wR5APBvFHLF/+Tc+AYvPOdTpcIDqOhxsBHRwC7U"}],"attestations":{"url":"https://registry.npmjs.org/-/npm/v1/attestations/@shaahink%2fsitekit@0.22.0","provenance":{"predicateType":"https://slsa.dev/provenance/v1"}},"unpackedSize":972436},"type":"module","engines":{"node":">=22.12"},"exports":{"./cms":{"types":"./dist/cms/index.d.ts","default":"./dist/cms/index.js"},"./seo":{"types":"./dist/seo/index.d.ts","default":"./dist/seo/index.js"},"./shot":{"types":"./dist/shot/index.d.ts","default":"./dist/shot/index.js"},"./astro":{"types":"./dist/astro/index.d.ts","default":"./dist/astro/index.js"},"./stats":{"types":"./dist/analytics/stats.d.ts","default":"./dist/analytics/stats.js"},"./editor":{"types":"./dist/editor/index.d.ts","default":"./dist/editor/index.js"},"./motion":{"types":"./dist/motion/index.d.ts","default":"./dist/motion/index.js"},"./widget":{"types":"./dist/widget/index.d.ts","default":"./dist/widget/index.js"},"./credits":{"types":"./dist/credits/index.d.ts","default":"./dist/credits/index.js"},"./headers":{"types":"./dist/headers/index.d.ts","default":"./dist/headers/index.js"},"./feedback":{"types":"./dist/feedback/index.d.ts","default":"./dist/feedback/index.js"},"./analytics":{"types":"./dist/analytics/index.d.ts","default":"./dist/analytics/index.js"},"./motion/rig":{"types":"./dist/motion/rig.d.ts","default":"./dist/motion/rig.js"},"./visibility":{"types":"./dist/cms/visibility.d.ts","default":"./dist/cms/visibility.js"},"./motion/moves":{"types":"./dist/motion/moves.d.ts","default":"./dist/motion/moves.js"},"./package.json":"./package.json","./editor/inline":{"types":"./dist/editor/inline.d.ts","default":"./dist/editor/inline.js"},"./widget/chrome":{"types":"./dist/widget/chrome.d.ts","default":"./dist/widget/chrome.js"},"./motion/balloon":{"types":"./dist/motion/balloon.d.ts","default":"./dist/motion/balloon.js"},"./astro/edit.astro":"./dist/astro/edit.astro","./editor/editor.css":"./dist/editor/editor.css","./editor/inline.css":"./dist/editor/inline.css","./editor/inline-gate":{"types":"./dist/editor/inline-gate.d.ts","default":"./dist/editor/inline-gate.js"}},"gitHead":"a76c2fd9f2f819e14cd35e91f75ab2c4a2cc7b31","scripts":{"test":"vitest run","build":"node scripts/clean.mjs && tsc -p tsconfig.server.json && tsc -p tsconfig.widget.json && tsc -p tsconfig.editor.json && tsc -p tsconfig.astro.json && node scripts/copy-assets.mjs","proof":"node scripts/prove.mjs","prepublishOnly":"npm run build && npm test"},"_npmUser":{"name":"GitHub Actions","email":"npm-oidc-no-reply@github.com","trustedPublisher":{"id":"github","oidcConfigId":"oidc:4ef3cd08-db47-467f-8d1e-aeddc5789035"}},"repository":{"url":"git+https://github.com/shaahink/sitekit.git","type":"git"},"_npmVersion":"12.0.2","description":"Shared logic for the sk site fleet: feedback intake, screenshot proxy, widget internals, credits, the dual header emitter, site URLs and sitemaps from one source, the analytics tag and its stats reader, the owner's editor, the fleet sign-in hand-off, and ","directories":{},"sideEffects":false,"_nodeVersion":"22.23.1","dependencies":{"yaml":"^2.9.0"},"publishConfig":{"access":"public"},"_hasShrinkwrap":false,"devDependencies":{"zod":"^4.4.3","vitest":"^4.1.10","happy-dom":"^20.11.1","typescript":"^7.0.2","@types/node":"^22.20.1"},"peerDependencies":{"zod":"^4","astro":"^7"},"peerDependenciesMeta":{"zod":{"optional":true},"astro":{"optional":true}},"_npmOperationalInternal":{"tmp":"tmp/sitekit_0.22.0_1785504738522_0.3087387682308931","host":"s3://npm-registry-packages-npm-production"}},"0.23.0":{"name":"@shaahink/sitekit","version":"0.23.0","license":"MIT","_id":"@shaahink/sitekit@0.23.0","maintainers":[{"name":"shaahink","email":"shaahin69@gmail.com"}],"homepage":"https://github.com/shaahink/sitekit#readme","bugs":{"url":"https://github.com/shaahink/sitekit/issues"},"bin":{"sitekit-headers":"bin/headers.mjs","sitekit-normalize":"bin/normalize.mjs","sitekit-editor-css":"bin/editor-css.mjs"},"dist":{"shasum":"8d3f05ae2f6fc2d5b0d147f3598f23396a875f8c","tarball":"https://registry.npmjs.org/@shaahink/sitekit/-/sitekit-0.23.0.tgz","fileCount":190,"integrity":"sha512-2RPbhMpWyrqMDpqx0MlHZ1pC+hB4/v8vT72BHwz4Y8dLFESUDJheC6cdY4KbfcRn1u0SMuEOr5ea1AWJmrQBxw==","signatures":[{"sig":"MEYCIQChkxyohlZ/BYxhQPmQwxR/St/DfY1vIhenFMESGSuDGQIhAM1hn26ZupshsfWYX0+Afq6d+mwZlry6Oxh3tkAZ0g9U","keyid":"SHA256:DhQ8wR5APBvFHLF/+Tc+AYvPOdTpcIDqOhxsBHRwC7U"}],"attestations":{"url":"https://registry.npmjs.org/-/npm/v1/attestations/@shaahink%2fsitekit@0.23.0","provenance":{"predicateType":"https://slsa.dev/provenance/v1"}},"unpackedSize":1085089},"type":"module","engines":{"node":">=22.12"},"exports":{"./app":{"types":"./dist/app/index.d.ts","default":"./dist/app/index.js"},"./cms":{"types":"./dist/cms/index.d.ts","default":"./dist/cms/index.js"},"./seo":{"types":"./dist/seo/index.d.ts","default":"./dist/seo/index.js"},"./shot":{"types":"./dist/shot/index.d.ts","default":"./dist/shot/index.js"},"./astro":{"types":"./dist/astro/index.d.ts","default":"./dist/astro/index.js"},"./stats":{"types":"./dist/analytics/stats.d.ts","default":"./dist/analytics/stats.js"},"./editor":{"types":"./dist/editor/index.d.ts","default":"./dist/editor/index.js"},"./motion":{"types":"./dist/motion/index.d.ts","default":"./dist/motion/index.js"},"./widget":{"types":"./dist/widget/index.d.ts","default":"./dist/widget/index.js"},"./credits":{"types":"./dist/credits/index.d.ts","default":"./dist/credits/index.js"},"./headers":{"types":"./dist/headers/index.d.ts","default":"./dist/headers/index.js"},"./version":{"types":"./dist/version.d.ts","default":"./dist/version.js"},"./feedback":{"types":"./dist/feedback/index.d.ts","default":"./dist/feedback/index.js"},"./analytics":{"types":"./dist/analytics/index.d.ts","default":"./dist/analytics/index.js"},"./motion/rig":{"types":"./dist/motion/rig.d.ts","default":"./dist/motion/rig.js"},"./visibility":{"types":"./dist/cms/visibility.d.ts","default":"./dist/cms/visibility.js"},"./motion/moves":{"types":"./dist/motion/moves.d.ts","default":"./dist/motion/moves.js"},"./package.json":"./package.json","./editor/inline":{"types":"./dist/editor/inline.d.ts","default":"./dist/editor/inline.js"},"./widget/chrome":{"types":"./dist/widget/chrome.d.ts","default":"./dist/widget/chrome.js"},"./motion/balloon":{"types":"./dist/motion/balloon.d.ts","default":"./dist/motion/balloon.js"},"./astro/edit.astro":"./dist/astro/edit.astro","./editor/editor.css":"./dist/editor/editor.css","./editor/inline.css":"./dist/editor/inline.css","./editor/inline-gate":{"types":"./dist/editor/inline-gate.d.ts","default":"./dist/editor/inline-gate.js"}},"gitHead":"24616202d031d785ce573df7922b2adf7444f199","scripts":{"test":"vitest run","build":"node scripts/clean.mjs && tsc -p tsconfig.server.json && tsc -p tsconfig.widget.json && tsc -p tsconfig.editor.json && tsc -p tsconfig.astro.json && node scripts/copy-assets.mjs","proof":"node scripts/prove.mjs","prepublishOnly":"npm run build && npm test"},"_npmUser":{"name":"GitHub Actions","email":"npm-oidc-no-reply@github.com","trustedPublisher":{"id":"github","oidcConfigId":"oidc:4ef3cd08-db47-467f-8d1e-aeddc5789035"}},"repository":{"url":"git+https://github.com/shaahink/sitekit.git","type":"git"},"_npmVersion":"12.0.2","description":"Shared logic for the sk site fleet: feedback intake, screenshot proxy, widget internals, credits, the dual header emitter, site URLs and sitemaps from one source, the analytics tag and its stats reader, the owner's editor, the fleet sign-in hand-off, and ","directories":{},"sideEffects":false,"_nodeVersion":"22.23.1","dependencies":{"yaml":"^2.9.0"},"publishConfig":{"access":"public"},"_hasShrinkwrap":false,"devDependencies":{"zod":"^4.4.3","vitest":"^4.1.10","happy-dom":"^20.11.1","typescript":"^7.0.2","@types/node":"^22.20.1"},"peerDependencies":{"zod":"^4","astro":"^7"},"peerDependenciesMeta":{"zod":{"optional":true},"astro":{"optional":true}},"_npmOperationalInternal":{"tmp":"tmp/sitekit_0.23.0_1785509262693_0.5652795206953811","host":"s3://npm-registry-packages-npm-production"}},"0.23.1":{"name":"@shaahink/sitekit","version":"0.23.1","license":"MIT","_id":"@shaahink/sitekit@0.23.1","maintainers":[{"name":"shaahink","email":"shaahin69@gmail.com"}],"homepage":"https://github.com/shaahink/sitekit#readme","bugs":{"url":"https://github.com/shaahink/sitekit/issues"},"bin":{"sitekit-headers":"bin/headers.mjs","sitekit-normalize":"bin/normalize.mjs","sitekit-editor-css":"bin/editor-css.mjs"},"dist":{"shasum":"915a67606822cb8252501c527b7be7add46af8b2","tarball":"https://registry.npmjs.org/@shaahink/sitekit/-/sitekit-0.23.1.tgz","fileCount":190,"integrity":"sha512-Pobu/VBW4V1XGtg8Pn74FkV61QIgQ6cej+CeYr8oQ8qDU2DbZzW8foYtkFzKEto9Tmc6XMFukoCamiMy3EIkIw==","signatures":[{"sig":"MEQCIHqhwiqVzRuXb/CFogjgiLwwW9ElRlxFMCILjC+CnhAMAiAbp68L+fKWx1wqFBoO31PA4iCaCcTAbF1DFMq2AbI95w==","keyid":"SHA256:DhQ8wR5APBvFHLF/+Tc+AYvPOdTpcIDqOhxsBHRwC7U"}],"attestations":{"url":"https://registry.npmjs.org/-/npm/v1/attestations/@shaahink%2fsitekit@0.23.1","provenance":{"predicateType":"https://slsa.dev/provenance/v1"}},"unpackedSize":1085244},"type":"module","engines":{"node":">=22.12"},"exports":{"./app":{"types":"./dist/app/index.d.ts","default":"./dist/app/index.js"},"./cms":{"types":"./dist/cms/index.d.ts","default":"./dist/cms/index.js"},"./seo":{"types":"./dist/seo/index.d.ts","default":"./dist/seo/index.js"},"./shot":{"types":"./dist/shot/index.d.ts","default":"./dist/shot/index.js"},"./astro":{"types":"./dist/astro/index.d.ts","default":"./dist/astro/index.js"},"./stats":{"types":"./dist/analytics/stats.d.ts","default":"./dist/analytics/stats.js"},"./editor":{"types":"./dist/editor/index.d.ts","default":"./dist/editor/index.js"},"./motion":{"types":"./dist/motion/index.d.ts","default":"./dist/motion/index.js"},"./widget":{"types":"./dist/widget/index.d.ts","default":"./dist/widget/index.js"},"./credits":{"types":"./dist/credits/index.d.ts","default":"./dist/credits/index.js"},"./headers":{"types":"./dist/headers/index.d.ts","default":"./dist/headers/index.js"},"./version":{"types":"./dist/version.d.ts","default":"./dist/version.js"},"./feedback":{"types":"./dist/feedback/index.d.ts","default":"./dist/feedback/index.js"},"./analytics":{"types":"./dist/analytics/index.d.ts","default":"./dist/analytics/index.js"},"./motion/rig":{"types":"./dist/motion/rig.d.ts","default":"./dist/motion/rig.js"},"./visibility":{"types":"./dist/cms/visibility.d.ts","default":"./dist/cms/visibility.js"},"./motion/moves":{"types":"./dist/motion/moves.d.ts","default":"./dist/motion/moves.js"},"./package.json":"./package.json","./editor/inline":{"types":"./dist/editor/inline.d.ts","default":"./dist/editor/inline.js"},"./widget/chrome":{"types":"./dist/widget/chrome.d.ts","default":"./dist/widget/chrome.js"},"./motion/balloon":{"types":"./dist/motion/balloon.d.ts","default":"./dist/motion/balloon.js"},"./astro/edit.astro":"./dist/astro/edit.astro","./editor/editor.css":"./dist/editor/editor.css","./editor/inline.css":"./dist/editor/inline.css","./editor/inline-gate":{"types":"./dist/editor/inline-gate.d.ts","default":"./dist/editor/inline-gate.js"}},"gitHead":"1d1360fb2b61f5e3f0ed2bd967794f9639dbf513","scripts":{"test":"vitest run","build":"node scripts/clean.mjs && tsc -p tsconfig.server.json && tsc -p tsconfig.widget.json && tsc -p tsconfig.editor.json && tsc -p tsconfig.astro.json && node scripts/copy-assets.mjs","proof":"node scripts/prove.mjs","prepublishOnly":"npm run build && npm test"},"_npmUser":{"name":"GitHub Actions","email":"npm-oidc-no-reply@github.com","trustedPublisher":{"id":"github","oidcConfigId":"oidc:4ef3cd08-db47-467f-8d1e-aeddc5789035"}},"repository":{"url":"git+https://github.com/shaahink/sitekit.git","type":"git"},"_npmVersion":"12.0.2","description":"Shared logic for the sk site fleet: feedback intake, screenshot proxy, widget internals, credits, the dual header emitter, site URLs and sitemaps from one source, the analytics tag and its stats reader, the owner's editor, the fleet sign-in hand-off, and ","directories":{},"sideEffects":false,"_nodeVersion":"22.23.1","dependencies":{"yaml":"^2.9.0"},"publishConfig":{"access":"public"},"_hasShrinkwrap":false,"devDependencies":{"zod":"^4.4.3","vitest":"^4.1.10","happy-dom":"^20.11.1","typescript":"^7.0.2","@types/node":"^22.20.1"},"peerDependencies":{"zod":"^4","astro":"^7"},"peerDependenciesMeta":{"zod":{"optional":true},"astro":{"optional":true}},"_npmOperationalInternal":{"tmp":"tmp/sitekit_0.23.1_1785509537294_0.8309482175009237","host":"s3://npm-registry-packages-npm-production"}},"0.24.0":{"name":"@shaahink/sitekit","version":"0.24.0","license":"MIT","_id":"@shaahink/sitekit@0.24.0","maintainers":[{"name":"shaahink","email":"shaahin69@gmail.com"}],"homepage":"https://github.com/shaahink/sitekit#readme","bugs":{"url":"https://github.com/shaahink/sitekit/issues"},"bin":{"sitekit-headers":"bin/headers.mjs","sitekit-normalize":"bin/normalize.mjs","sitekit-editor-css":"bin/editor-css.mjs"},"dist":{"shasum":"c5e708ef99310e2211e2d55241be84f1cf353f77","tarball":"https://registry.npmjs.org/@shaahink/sitekit/-/sitekit-0.24.0.tgz","fileCount":190,"integrity":"sha512-tojUsl1VqfTipwLk/49i2mmJDJ4+fkVhMqEezFFMhhYF9X5yOCGExEzIxCjBXNyF9eKy1faKaGU/EixUMz9vyw==","signatures":[{"sig":"MEUCIQCQNfJ7Sgw5oB5J9T4bff1+OOsGNuAasyP6bTBlHHI6zgIgG6DgK/98YL6njbYKLzMXD9nikgHc1zMmLJQ/9WHNfp8=","keyid":"SHA256:DhQ8wR5APBvFHLF/+Tc+AYvPOdTpcIDqOhxsBHRwC7U"}],"attestations":{"url":"https://registry.npmjs.org/-/npm/v1/attestations/@shaahink%2fsitekit@0.24.0","provenance":{"predicateType":"https://slsa.dev/provenance/v1"}},"unpackedSize":1086239},"type":"module","engines":{"node":">=22.12"},"exports":{"./app":{"types":"./dist/app/index.d.ts","default":"./dist/app/index.js"},"./cms":{"types":"./dist/cms/index.d.ts","default":"./dist/cms/index.js"},"./seo":{"types":"./dist/seo/index.d.ts","default":"./dist/seo/index.js"},"./shot":{"types":"./dist/shot/index.d.ts","default":"./dist/shot/index.js"},"./astro":{"types":"./dist/astro/index.d.ts","default":"./dist/astro/index.js"},"./stats":{"types":"./dist/analytics/stats.d.ts","default":"./dist/analytics/stats.js"},"./editor":{"types":"./dist/editor/index.d.ts","default":"./dist/editor/index.js"},"./motion":{"types":"./dist/motion/index.d.ts","default":"./dist/motion/index.js"},"./widget":{"types":"./dist/widget/index.d.ts","default":"./dist/widget/index.js"},"./credits":{"types":"./dist/credits/index.d.ts","default":"./dist/credits/index.js"},"./headers":{"types":"./dist/headers/index.d.ts","default":"./dist/headers/index.js"},"./version":{"types":"./dist/version.d.ts","default":"./dist/version.js"},"./feedback":{"types":"./dist/feedback/index.d.ts","default":"./dist/feedback/index.js"},"./analytics":{"types":"./dist/analytics/index.d.ts","default":"./dist/analytics/index.js"},"./motion/rig":{"types":"./dist/motion/rig.d.ts","default":"./dist/motion/rig.js"},"./visibility":{"types":"./dist/cms/visibility.d.ts","default":"./dist/cms/visibility.js"},"./motion/moves":{"types":"./dist/motion/moves.d.ts","default":"./dist/motion/moves.js"},"./package.json":"./package.json","./editor/inline":{"types":"./dist/editor/inline.d.ts","default":"./dist/editor/inline.js"},"./widget/chrome":{"types":"./dist/widget/chrome.d.ts","default":"./dist/widget/chrome.js"},"./motion/balloon":{"types":"./dist/motion/balloon.d.ts","default":"./dist/motion/balloon.js"},"./astro/edit.astro":"./dist/astro/edit.astro","./editor/editor.css":"./dist/editor/editor.css","./editor/inline.css":"./dist/editor/inline.css","./editor/inline-gate":{"types":"./dist/editor/inline-gate.d.ts","default":"./dist/editor/inline-gate.js"}},"gitHead":"cb08d2603a3342753213fe1c18da050b5bac8a38","scripts":{"test":"vitest run","build":"node scripts/clean.mjs && tsc -p tsconfig.server.json && tsc -p tsconfig.widget.json && tsc -p tsconfig.editor.json && tsc -p tsconfig.astro.json && node scripts/copy-assets.mjs","proof":"node scripts/prove.mjs","prepublishOnly":"npm run build && npm test"},"_npmUser":{"name":"GitHub Actions","email":"npm-oidc-no-reply@github.com","trustedPublisher":{"id":"github","oidcConfigId":"oidc:4ef3cd08-db47-467f-8d1e-aeddc5789035"}},"repository":{"url":"git+https://github.com/shaahink/sitekit.git","type":"git"},"_npmVersion":"12.0.2","description":"Shared logic for the sk site fleet: feedback intake, screenshot proxy, widget internals, credits, the dual header emitter, site URLs and sitemaps from one source, the analytics tag and its stats reader, the owner's editor, the fleet sign-in hand-off, and ","directories":{},"sideEffects":false,"_nodeVersion":"22.23.1","dependencies":{"yaml":"^2.9.0"},"publishConfig":{"access":"public"},"_hasShrinkwrap":false,"devDependencies":{"zod":"^4.4.3","vitest":"^4.1.10","happy-dom":"^20.11.1","typescript":"^7.0.2","@types/node":"^22.20.1"},"peerDependencies":{"zod":"^4","astro":"^7"},"peerDependenciesMeta":{"zod":{"optional":true},"astro":{"optional":true}},"_npmOperationalInternal":{"tmp":"tmp/sitekit_0.24.0_1785513471897_0.4237843904307599","host":"s3://npm-registry-packages-npm-production"}},"0.25.0":{"name":"@shaahink/sitekit","version":"0.25.0","license":"MIT","_id":"@shaahink/sitekit@0.25.0","maintainers":[{"name":"shaahink","email":"shaahin69@gmail.com"}],"homepage":"https://github.com/shaahink/sitekit#readme","bugs":{"url":"https://github.com/shaahink/sitekit/issues"},"bin":{"sitekit-headers":"bin/headers.mjs","sitekit-normalize":"bin/normalize.mjs","sitekit-editor-css":"bin/editor-css.mjs"},"dist":{"shasum":"ccde2c4d6a6358566e257376b78c3234868c3ebd","tarball":"https://registry.npmjs.org/@shaahink/sitekit/-/sitekit-0.25.0.tgz","fileCount":194,"integrity":"sha512-IwPHKuaC9DcLQPQ/32me2zndK5pz0NbBwBXt2PqIpjhejuPGxB/rtM3vlfNQXg7evZNeGPkNAGwl/ZRos+SrkQ==","signatures":[{"sig":"MEQCIBKpymuof9E7IAKY/I+lBrhGSJ84zP4UGYkMBmqVflw+AiAnSDgav+6mIUomu2wn6RvM89lYY4xBQWbr432ryxFzCQ==","keyid":"SHA256:DhQ8wR5APBvFHLF/+Tc+AYvPOdTpcIDqOhxsBHRwC7U"}],"attestations":{"url":"https://registry.npmjs.org/-/npm/v1/attestations/@shaahink%2fsitekit@0.25.0","provenance":{"predicateType":"https://slsa.dev/provenance/v1"}},"unpackedSize":1188541},"type":"module","engines":{"node":">=22.12"},"exports":{"./app":{"types":"./dist/app/index.d.ts","default":"./dist/app/index.js"},"./cms":{"types":"./dist/cms/index.d.ts","default":"./dist/cms/index.js"},"./seo":{"types":"./dist/seo/index.d.ts","default":"./dist/seo/index.js"},"./shot":{"types":"./dist/shot/index.d.ts","default":"./dist/shot/index.js"},"./astro":{"types":"./dist/astro/index.d.ts","default":"./dist/astro/index.js"},"./stats":{"types":"./dist/analytics/stats.d.ts","default":"./dist/analytics/stats.js"},"./editor":{"types":"./dist/editor/index.d.ts","default":"./dist/editor/index.js"},"./motion":{"types":"./dist/motion/index.d.ts","default":"./dist/motion/index.js"},"./widget":{"types":"./dist/widget/index.d.ts","default":"./dist/widget/index.js"},"./credits":{"types":"./dist/credits/index.d.ts","default":"./dist/credits/index.js"},"./headers":{"types":"./dist/headers/index.d.ts","default":"./dist/headers/index.js"},"./version":{"types":"./dist/version.d.ts","default":"./dist/version.js"},"./feedback":{"types":"./dist/feedback/index.d.ts","default":"./dist/feedback/index.js"},"./analytics":{"types":"./dist/analytics/index.d.ts","default":"./dist/analytics/index.js"},"./companion":{"types":"./dist/motion/companion.d.ts","default":"./dist/motion/companion.js"},"./motion/rig":{"types":"./dist/motion/rig.d.ts","default":"./dist/motion/rig.js"},"./visibility":{"types":"./dist/cms/visibility.d.ts","default":"./dist/cms/visibility.js"},"./motion/moves":{"types":"./dist/motion/moves.d.ts","default":"./dist/motion/moves.js"},"./package.json":"./package.json","./editor/inline":{"types":"./dist/editor/inline.d.ts","default":"./dist/editor/inline.js"},"./motion/figure":{"types":"./dist/motion/figure.d.ts","default":"./dist/motion/figure.js"},"./widget/chrome":{"types":"./dist/widget/chrome.d.ts","default":"./dist/widget/chrome.js"},"./motion/balloon":{"types":"./dist/motion/balloon.d.ts","default":"./dist/motion/balloon.js"},"./astro/edit.astro":"./dist/astro/edit.astro","./editor/editor.css":"./dist/editor/editor.css","./editor/inline.css":"./dist/editor/inline.css","./editor/inline-gate":{"types":"./dist/editor/inline-gate.d.ts","default":"./dist/editor/inline-gate.js"}},"gitHead":"29afc66d48744b50a5893c683d3d02f9e5a9aff5","scripts":{"test":"vitest run","build":"node scripts/clean.mjs && tsc -p tsconfig.server.json && tsc -p tsconfig.widget.json && tsc -p tsconfig.editor.json && tsc -p tsconfig.astro.json && node scripts/copy-assets.mjs","proof":"node scripts/prove.mjs","prepublishOnly":"npm run build && npm test"},"_npmUser":{"name":"GitHub Actions","email":"npm-oidc-no-reply@github.com","trustedPublisher":{"id":"github","oidcConfigId":"oidc:4ef3cd08-db47-467f-8d1e-aeddc5789035"}},"repository":{"url":"git+https://github.com/shaahink/sitekit.git","type":"git"},"_npmVersion":"12.0.2","description":"Shared logic for the sk site fleet: feedback intake, screenshot proxy, widget internals, credits, the dual header emitter, site URLs and sitemaps from one source, the analytics tag and its stats reader, the owner's editor, the fleet sign-in hand-off, and ","directories":{},"sideEffects":false,"_nodeVersion":"22.23.1","dependencies":{"yaml":"^2.9.0"},"publishConfig":{"access":"public"},"_hasShrinkwrap":false,"devDependencies":{"zod":"^4.4.3","vitest":"^4.1.10","happy-dom":"^20.11.1","typescript":"^7.0.2","@types/node":"^22.20.1"},"peerDependencies":{"zod":"^4","astro":"^7"},"peerDependenciesMeta":{"zod":{"optional":true},"astro":{"optional":true}},"_npmOperationalInternal":{"tmp":"tmp/sitekit_0.25.0_1785896326450_0.007803920553980381","host":"s3://npm-registry-packages-npm-production"}},"0.26.0":{"name":"@shaahink/sitekit","version":"0.26.0","license":"MIT","_id":"@shaahink/sitekit@0.26.0","maintainers":[{"name":"shaahink","email":"shaahin69@gmail.com"}],"homepage":"https://github.com/shaahink/sitekit#readme","bugs":{"url":"https://github.com/shaahink/sitekit/issues"},"bin":{"sitekit-headers":"bin/headers.mjs","sitekit-normalize":"bin/normalize.mjs","sitekit-editor-css":"bin/editor-css.mjs"},"dist":{"shasum":"107f029eefeff0d3792f34746169e9437fafe8dd","tarball":"https://registry.npmjs.org/@shaahink/sitekit/-/sitekit-0.26.0.tgz","fileCount":195,"integrity":"sha512-5griC+002QI3x6aRnaOgu1WjB661g2++NuqXipMe7daf16Vdg+POgZzj2zR4S3VPO32irDupSoqCKjF0cI03vA==","signatures":[{"sig":"MEUCIFmmRy0QufaSH4GkyjephPm44uGdo7J3lOXjcsMEjpZJAiEAwGCtEYPSjCt28hPS3WFkcdy9HGM6Hmyxt7vaGAXPJZw=","keyid":"SHA256:DhQ8wR5APBvFHLF/+Tc+AYvPOdTpcIDqOhxsBHRwC7U"}],"attestations":{"url":"https://registry.npmjs.org/-/npm/v1/attestations/@shaahink%2fsitekit@0.26.0","provenance":{"predicateType":"https://slsa.dev/provenance/v1"}},"unpackedSize":1202165},"type":"module","engines":{"node":">=22.12"},"exports":{"./app":{"types":"./dist/app/index.d.ts","default":"./dist/app/index.js"},"./cms":{"types":"./dist/cms/index.d.ts","default":"./dist/cms/index.js"},"./seo":{"types":"./dist/seo/index.d.ts","default":"./dist/seo/index.js"},"./shot":{"types":"./dist/shot/index.d.ts","default":"./dist/shot/index.js"},"./astro":{"types":"./dist/astro/index.d.ts","default":"./dist/astro/index.js"},"./stats":{"types":"./dist/analytics/stats.d.ts","default":"./dist/analytics/stats.js"},"./editor":{"types":"./dist/editor/index.d.ts","default":"./dist/editor/index.js"},"./motion":{"types":"./dist/motion/index.d.ts","default":"./dist/motion/index.js"},"./widget":{"types":"./dist/widget/index.d.ts","default":"./dist/widget/index.js"},"./credits":{"types":"./dist/credits/index.d.ts","default":"./dist/credits/index.js"},"./headers":{"types":"./dist/headers/index.d.ts","default":"./dist/headers/index.js"},"./version":{"types":"./dist/version.d.ts","default":"./dist/version.js"},"./feedback":{"types":"./dist/feedback/index.d.ts","default":"./dist/feedback/index.js"},"./analytics":{"types":"./dist/analytics/index.d.ts","default":"./dist/analytics/index.js"},"./companion":{"types":"./dist/motion/companion.d.ts","default":"./dist/motion/companion.js"},"./motion/rig":{"types":"./dist/motion/rig.d.ts","default":"./dist/motion/rig.js"},"./visibility":{"types":"./dist/cms/visibility.d.ts","default":"./dist/cms/visibility.js"},"./motion/moves":{"types":"./dist/motion/moves.d.ts","default":"./dist/motion/moves.js"},"./package.json":"./package.json","./editor/inline":{"types":"./dist/editor/inline.d.ts","default":"./dist/editor/inline.js"},"./motion/figure":{"types":"./dist/motion/figure.d.ts","default":"./dist/motion/figure.js"},"./widget/chrome":{"types":"./dist/widget/chrome.d.ts","default":"./dist/widget/chrome.js"},"./motion/balloon":{"types":"./dist/motion/balloon.d.ts","default":"./dist/motion/balloon.js"},"./astro/edit.astro":"./dist/astro/edit.astro","./editor/editor.css":"./dist/editor/editor.css","./editor/inline.css":"./dist/editor/inline.css","./astro/Credit.astro":"./dist/astro/Credit.astro","./editor/inline-gate":{"types":"./dist/editor/inline-gate.d.ts","default":"./dist/editor/inline-gate.js"}},"gitHead":"5d707f00be516dbacfe3a6294762e2086d4287ff","scripts":{"test":"vitest run","build":"node scripts/clean.mjs && tsc -p tsconfig.server.json && tsc -p tsconfig.widget.json && tsc -p tsconfig.editor.json && tsc -p tsconfig.astro.json && node scripts/copy-assets.mjs","proof":"node scripts/prove.mjs","prepublishOnly":"npm run build && npm test"},"_npmUser":{"name":"GitHub Actions","email":"npm-oidc-no-reply@github.com","trustedPublisher":{"id":"github","oidcConfigId":"oidc:4ef3cd08-db47-467f-8d1e-aeddc5789035"}},"repository":{"url":"git+https://github.com/shaahink/sitekit.git","type":"git"},"_npmVersion":"12.0.2","description":"Shared logic for the sk site fleet: feedback intake, screenshot proxy, widget internals, credits, the dual header emitter, site URLs and sitemaps from one source, the analytics tag and its stats reader, the owner's editor, the fleet sign-in hand-off, and ","directories":{},"sideEffects":false,"_nodeVersion":"22.23.1","dependencies":{"yaml":"^2.9.0"},"publishConfig":{"access":"public"},"_hasShrinkwrap":false,"devDependencies":{"zod":"^4.4.3","vitest":"^4.1.10","happy-dom":"^20.11.1","typescript":"^7.0.2","@types/node":"^22.20.1"},"peerDependencies":{"zod":"^4","astro":"^7"},"peerDependenciesMeta":{"zod":{"optional":true},"astro":{"optional":true}},"_npmOperationalInternal":{"tmp":"tmp/sitekit_0.26.0_1785898604176_0.7789160228087075","host":"s3://npm-registry-packages-npm-production"}},"0.27.0":{"name":"@shaahink/sitekit","version":"0.27.0","description":"Shared logic for the sk site fleet: feedback intake, screenshot proxy, widget internals, credits, the dual header emitter, site URLs and sitemaps from one source, the analytics tag and its stats reader, the owner's editor, the fleet sign-in hand-off, and ","license":"MIT","repository":{"type":"git","url":"git+https://github.com/shaahink/sitekit.git"},"type":"module","engines":{"node":">=22.12"},"bin":{"sitekit-editor-css":"bin/editor-css.mjs","sitekit-headers":"bin/headers.mjs","sitekit-normalize":"bin/normalize.mjs"},"sideEffects":false,"publishConfig":{"access":"public"},"exports":{"./feedback":{"types":"./dist/feedback/index.d.ts","default":"./dist/feedback/index.js"},"./shot":{"types":"./dist/shot/index.d.ts","default":"./dist/shot/index.js"},"./widget":{"types":"./dist/widget/index.d.ts","default":"./dist/widget/index.js"},"./widget/chrome":{"types":"./dist/widget/chrome.d.ts","default":"./dist/widget/chrome.js"},"./credits":{"types":"./dist/credits/index.d.ts","default":"./dist/credits/index.js"},"./headers":{"types":"./dist/headers/index.d.ts","default":"./dist/headers/index.js"},"./seo":{"types":"./dist/seo/index.d.ts","default":"./dist/seo/index.js"},"./analytics":{"types":"./dist/analytics/index.d.ts","default":"./dist/analytics/index.js"},"./stats":{"types":"./dist/analytics/stats.d.ts","default":"./dist/analytics/stats.js"},"./cms":{"types":"./dist/cms/index.d.ts","default":"./dist/cms/index.js"},"./app":{"types":"./dist/app/index.d.ts","default":"./dist/app/index.js"},"./version":{"types":"./dist/version.d.ts","default":"./dist/version.js"},"./visibility":{"types":"./dist/cms/visibility.d.ts","default":"./dist/cms/visibility.js"},"./editor":{"types":"./dist/editor/index.d.ts","default":"./dist/editor/index.js"},"./editor/inline":{"types":"./dist/editor/inline.d.ts","default":"./dist/editor/inline.js"},"./editor/inline-gate":{"types":"./dist/editor/inline-gate.d.ts","default":"./dist/editor/inline-gate.js"},"./editor/editor.css":"./dist/editor/editor.css","./editor/inline.css":"./dist/editor/inline.css","./motion":{"types":"./dist/motion/index.d.ts","default":"./dist/motion/index.js"},"./motion/rig":{"types":"./dist/motion/rig.d.ts","default":"./dist/motion/rig.js"},"./motion/moves":{"types":"./dist/motion/moves.d.ts","default":"./dist/motion/moves.js"},"./motion/balloon":{"types":"./dist/motion/balloon.d.ts","default":"./dist/motion/balloon.js"},"./motion/figure":{"types":"./dist/motion/figure.d.ts","default":"./dist/motion/figure.js"},"./companion":{"types":"./dist/motion/companion.d.ts","default":"./dist/motion/companion.js"},"./astro":{"types":"./dist/astro/index.d.ts","default":"./dist/astro/index.js"},"./astro/edit.astro":"./dist/astro/edit.astro","./astro/Credit.astro":"./dist/astro/Credit.astro","./package.json":"./package.json"},"scripts":{"build":"node scripts/clean.mjs && tsc -p tsconfig.server.json && tsc -p tsconfig.widget.json && tsc -p tsconfig.editor.json && tsc -p tsconfig.astro.json && node scripts/copy-assets.mjs","test":"vitest run","prepublishOnly":"npm run build && npm test","proof":"node scripts/prove.mjs"},"devDependencies":{"@types/node":"^22.20.1","happy-dom":"^20.11.1","typescript":"^7.0.2","vitest":"^4.1.10","zod":"^4.4.3"},"dependencies":{"yaml":"^2.9.0"},"peerDependencies":{"astro":"^7","zod":"^4"},"peerDependenciesMeta":{"astro":{"optional":true},"zod":{"optional":true}},"gitHead":"b8fd09c6461241c9b22ce3083801f9a41745c4fe","_id":"@shaahink/sitekit@0.27.0","bugs":{"url":"https://github.com/shaahink/sitekit/issues"},"homepage":"https://github.com/shaahink/sitekit#readme","_nodeVersion":"22.23.1","_npmVersion":"12.0.2","dist":{"integrity":"sha512-sL0K52QNWpYsHKi+kec4eUJQ0TyaEXHIytJGBpcTZfpJameCpdMYnZTtu0DnYKDUzCqxzs/2CnkE4UiYLE37BA==","shasum":"3b9816f0402a8281647148553a230efb8c99d714","tarball":"https://registry.npmjs.org/@shaahink/sitekit/-/sitekit-0.27.0.tgz","fileCount":195,"unpackedSize":1203328,"attestations":{"url":"https://registry.npmjs.org/-/npm/v1/attestations/@shaahink%2fsitekit@0.27.0","provenance":{"predicateType":"https://slsa.dev/provenance/v1"}},"signatures":[{"keyid":"SHA256:DhQ8wR5APBvFHLF/+Tc+AYvPOdTpcIDqOhxsBHRwC7U","sig":"MEUCIQDCvVTCdu+99OV0ScDcLXnQJ3sgrbPVgmaklVHjfqvYPQIgcjCR9YeTAD7TUiFy7WtNn1watGSatCRavh8NIDv9t/U="}]},"_npmUser":{"name":"GitHub Actions","email":"npm-oidc-no-reply@github.com","trustedPublisher":{"id":"github","oidcConfigId":"oidc:4ef3cd08-db47-467f-8d1e-aeddc5789035"}},"directories":{},"maintainers":[{"name":"shaahink","email":"shaahin69@gmail.com"}],"_npmOperationalInternal":{"host":"s3://npm-registry-packages-npm-production","tmp":"tmp/sitekit_0.27.0_1785925413139_0.8811769917183567"},"_hasShrinkwrap":false}},"time":{"created":"2026-07-27T14:34:13.319Z","modified":"2026-08-05T10:23:33.589Z","0.1.0":"2026-07-27T14:34:13.943Z","0.2.0":"2026-07-27T19:33:58.351Z","0.3.0":"2026-07-27T21:16:28.891Z","0.4.0":"2026-07-27T22:48:07.755Z","0.5.0":"2026-07-28T00:44:28.355Z","0.6.0":"2026-07-28T02:03:28.732Z","0.6.1":"2026-07-28T02:55:47.333Z","0.7.0":"2026-07-28T10:17:33.616Z","0.7.1":"2026-07-28T10:21:22.676Z","0.7.2":"2026-07-28T11:51:06.188Z","0.7.3":"2026-07-28T12:37:59.373Z","0.7.4":"2026-07-28T12:51:51.262Z","0.8.0":"2026-07-28T14:08:18.455Z","0.9.0":"2026-07-28T16:15:54.519Z","0.10.0":"2026-07-28T17:19:30.051Z","0.11.0":"2026-07-28T17:43:01.192Z","0.12.0":"2026-07-28T19:02:20.853Z","0.13.0":"2026-07-28T20:13:53.868Z","0.14.0":"2026-07-28T22:20:28.121Z","0.15.0":"2026-07-29T03:56:41.530Z","0.16.0":"2026-07-29T23:37:44.709Z","0.16.1":"2026-07-30T01:19:53.794Z","0.17.0":"2026-07-30T06:42:39.850Z","0.18.0":"2026-07-31T01:04:01.430Z","0.19.0":"2026-07-31T04:17:58.768Z","0.20.0":"2026-07-31T09:54:24.827Z","0.21.0":"2026-07-31T13:01:20.196Z","0.22.0":"2026-07-31T13:32:18.682Z","0.23.0":"2026-07-31T14:47:42.871Z","0.23.1":"2026-07-31T14:52:17.484Z","0.24.0":"2026-07-31T15:57:52.122Z","0.25.0":"2026-08-05T02:18:46.618Z","0.26.0":"2026-08-05T02:56:44.379Z","0.27.0":"2026-08-05T10:23:33.294Z"},"bugs":{"url":"https://github.com/shaahink/sitekit/issues"},"license":"MIT","homepage":"https://github.com/shaahink/sitekit#readme","repository":{"type":"git","url":"git+https://github.com/shaahink/sitekit.git"},"description":"Shared logic for the sk site fleet: feedback intake, screenshot proxy, widget internals, credits, the dual header emitter, site URLs and sitemaps from one source, the analytics tag and its stats reader, the owner's editor, the fleet sign-in hand-off, and ","maintainers":[{"name":"shaahink","email":"shaahin69@gmail.com"}],"readme":"# @shaahink/sitekit\n\nShared logic for the sk site fleet. Logic only — no layout, no design system,\nno house style. Each site keeps its own face; this package holds the machinery\nthey have in common.\n\nExtracted from `elfine-site`'s review-mode feedback system, which remains the\nreference for how a site consumes it.\n\n## Entry points\n\n| Import | What it is |\n| --- | --- |\n| `@shaahink/sitekit/feedback` | The feedback intake handler factory — validates, uploads screenshots to an orphan branch, files GitHub issues |\n| `@shaahink/sitekit/shot` | The screenshot proxy handler factory — serves stored screenshots so GitHub can render them inside private repos |\n| `@shaahink/sitekit/widget` | The review-mode widget's mechanics: element refinement, CSS paths, section/context extraction, image downscaling, the POST envelope |\n| `@shaahink/sitekit/widget/chrome` | The widget a reviewer sees: `mountReviewWidget()` builds the pill, the picker, the composer, the pins. English, French and Farsi included; a site keeps only `feedback-chrome.css` — see below |\n| `@shaahink/sitekit/credits` | The `sk` footer credit: anchor plus schema.org JSON-LD |\n| `@shaahink/sitekit/headers` | The dual header emitter: one config, emitted as `vercel.json` and Cloudflare `_headers`/`_redirects` |\n| `@shaahink/sitekit/seo` | Site URLs, canonicals and sitemaps from one source |\n| `@shaahink/sitekit/analytics` | The Umami tag |\n| `@shaahink/sitekit/stats` | Reading that instance back, server side: a single-flight cached login, team-scoped enumeration for a fleet, and one site's totals, top pages and share link for its owner |\n| `@shaahink/sitekit/cms` | The owner's editor, server side: Google ID token verification, the fleet sign-in hand-off (both halves — see below), a signed session cookie, a form model generated from a collection's Zod schema, a comment-preserving YAML writer that commits through the GitHub App, and the owner's home — their traffic, their recent changes, whether the last one is live |\n| `@shaahink/sitekit/visibility` | Reading a section's `visible` flag the one safe way — a missing flag means *shown* |\n| `@shaahink/sitekit/editor` | The owner's editor, browser side: `mountEditor(element)` builds the whole panel from the form model. Chrome included — see below |\n| `@shaahink/sitekit/editor/inline` | Editing the words on the page they are on: `startInlineEditor()`, driven by the `data-sk-edit` annotations |\n| `@shaahink/sitekit/editor/inline-gate` | The one-line entry a public page loads to decide whether inline editing should start at all |\n| `@shaahink/sitekit/editor/editor.css`, `.../inline.css` | Those two surfaces' stylesheets, for a site to copy into `public/` |\n| `@shaahink/sitekit/astro` | The two build-time integrations: `editorRoute()` injects the editor's page, `checkAnnotations()` fails the build when an annotation stops resolving — see below |\n| `@shaahink/sitekit/motion` | The plumbing under a decorative sequence: `mountMotion()`'s loading contract (deferred past load + idle, never under reduced motion, paused off screen, resting frame on a mid-flight preference flip), the forward-kinematics figure rig, the moves a sequence is written out of, and the speech balloon that attributes what it says |\n| `@shaahink/sitekit/motion/rig` | The rig alone: poses as flat joint angles, geometry derived every frame. Pure arithmetic, no DOM — a figure can be rendered to a contact sheet in Node without a browser |\n| `@shaahink/sitekit/motion/moves` | `fall`, `ripple`, `cue`, `timetable` — the four moves every sequence turned out to share, against a one-method timeline contract rather than a tween engine |\n| `@shaahink/sitekit/motion/balloon` | Comic-book speech balloons: `balloon()` spells the outline and its tail as one closed path, `aim()` decides where the tail is rooted and how far it leans so it points at whoever is speaking. Pure arithmetic |\n\nEntry points are separate on purpose: a site importing handlers never pulls in\nwidget code, and the handler entries typecheck against WebWorker globals only —\nno DOM, no Node built-ins.\n\n### Where the chrome/palette line actually falls\n\nThis section used to be called \"why `./editor` ships chrome and `./widget`\ndoesn't\", and the answer it gave was that the widget appears on pages a visitor\nsees, so each site owns its DOM, strings and palette. What that bought was six\ncopies of one 626-line file at three versions, two of them forked to translate\na table of twenty-six strings — so a widget change was six hand edits and two\nby-eye re-merges, and a bilingual new site hand-translated the table again.\n0.16.0 ended it. **Both surfaces now ship their chrome; what a site owns is the\npalette.**\n\nThe line is not \"public versus admin\" after all. It is *who is looking*. A\nreviewer is looking at the client's own page and the widget sits on top of it,\nso `feedback-chrome.css` stays per-site and the class names it styles are a\ncontract (`WIDGET_CLASSES`, enforced against `chrome.ts` by a test — renaming\none would break six stylesheets *silently*, because an unstyled widget still\nworks). Nothing else about the widget was ever site-specific: the DOM was\nidentical in all six copies and the strings were a table.\n\nThe editor is one owner's admin panel on one route, and four hand-maintained\ncopies of it is exactly what this package exists to prevent. CLAUDE.md's \"no\ndesign system in the kit\" rule was scoped on 2026-07-28 to say so: it governs\npublic pages. Nobody's face is their admin panel.\n\n```js\n// src/scripts/review-gate.js — the only feedback code a public visitor runs\nif (localStorage.getItem(\"review-mode-key\")) {\n  Promise.all([\n    import(\"@shaahink/sitekit/widget/chrome\"),\n    import(\"./feedback-chrome.css\")\n  ]).then(([widget]) => widget.mountReviewWidget());\n}\n```\n\nBoth imports are dynamic so neither lands in the bundle every public visitor\ndownloads, and `mountReviewWidget` is *called* rather than the module\nbare-imported, because this package is `sideEffects: false` and a bare import of\na side-effecting module is tree-shaken away to nothing. Measured on\nsite-template: the public bundle grew 32 bytes and carries no widget class; the\nreviewer-only chunk grew 2.9 kB, which is French and Farsi arriving on every\nsite in the fleet.\n\nA site picks its language by declaring one — the table follows `<html lang>`,\nby primary subtag, falling back to English rather than to blanks — and overrides\nany word with `mountReviewWidget({ strings: { send: \"Enviar\" } })`.\n\nA site therefore gets no copy. It tunes the look with the `--sk-editor-*`\ncustom properties — `bg`, `raise`, `ink`, `line`, `accent`, `font` are enough,\nbecause everything derived from them is a translucent overlay — and the words\nwith `mountEditor(el, { strings })`. A site's whole editor surface is an\n`edit.astro` that mounts the panel and sets its own CSP, two `api/` edges that\nread environment variables, and a copied stylesheet. None of those change when\nthe editor improves; that is the test the boundary has to keep passing.\n\n```js\n// src/pages/edit.astro\nimport { mountEditor } from \"@shaahink/sitekit/editor\";\nconst root = document.querySelector(\"[data-sk-editor]\");\nif (root) mountEditor(root);\n```\n\nThe stylesheet is **copied into `public/`, not imported**: Astro folds every\nprocessed stylesheet's hash into *every* page's CSP, so importing it would\nchange the public pages' policy for no reason. The kit ships the copier too —\n\n```\nsitekit-editor-css [destination]   # default public/editor-panel.css\n```\n\n— so a site's `package.json` reads `\"editor\": \"sitekit-editor-css\"` and CI runs\nit and diffs. A per-site copy script would have meant editing four repos the\nday the asset moved inside `dist`, which is exactly the boundary this lift\nexists to get right.\n\n### The three commands a site runs\n\n```\nsitekit-headers [--cloudflare [dir]]   # vercel.json, and Cloudflare's three\nsitekit-normalize [directory]          # default src/content\nsitekit-editor-css [destination]       # default public/editor-panel.css\n```\n\nA site's `package.json` names them `headers`, `content` and `editor`, and its\nCI runs each and diffs — regenerate, then `git diff --exit-code`. All three\nreplaced per-site scripts, and the pattern is the same each time: the *emitting*\nis the kit's, the *input* stays the site's. `headers.config.mjs` is a site's own\nbecause what it sends is content; the content files are obviously a site's own;\nthe editor stylesheet has no site input at all, which is why that one is a copy.\n\n`sitekit-normalize` arrived at 0.16.0, replacing six copies of\n`scripts/normalize-content.mjs` that were still byte-identical — the cheap\nmoment to move something rather than the late one, `emit-headers` having reached\nfour variants by hash before it went. One thing did have to change: the per-site\nscript resolved `../src/content` from its own location and then undid Node's URL\npathname on Windows by hand, because a drive letter comes back behind a leading\nslash. A command runs from the site root, so the path is `resolve(cwd, …)` and\nthe workaround left with the copies.\n\n### What a site's `astro.config.mjs` says\n\n```js\nimport { checkAnnotations, editorRoute } from \"@shaahink/sitekit/astro\";\nimport { editable } from \"./src/content/schema.js\";\n\nintegrations: [\n  editorRoute({ title: \"Edit — Bruce Nemeth\" }),\n  checkAnnotations({ collections: editable })\n]\n```\n\n`editorRoute` injects the editor's page, so no site owns one. The URL does not\nmove: an injected route follows the site's own `build.format`, so a site on\n`\"file\"` still serves `/edit.html`.\n\nIt also touches that one page's CSP after the build, and only that page: Astro\nwrites the build's style hashes into `style-src-elem`, and a hash in a directive\nmakes `'unsafe-inline'` **ignored** — which is the source Google's sign-in script\nneeds for the stylesheet it injects. Those hashes belong to other pages (the\neditor page has no inline style of its own), so they are dropped from that one\ndirective and the build log says so. Measured on all six sites before it was\nwritten: five of them were degraded, silently. If the page ever does carry an\ninline style, nothing is rewritten and the build warns instead.\n\n`checkAnnotations` reads the built pages back in `astro:build:done` and fails\nthe build on a `data-sk-edit` that would not save — a path resolving to nothing\nin the content, a path with no field in the form model, the same path twice on\none page, annotations with no `data-sk-collection` above them. It reaches both\nverdicts the same way the page does at runtime, so the build and the editor\ncannot disagree about what is broken. What it deliberately does *not* fail on\nis everything the runtime sends to the panel instead: a value inside\n`aria-hidden`, an element wrapping the design's own spans, text a template\ntransforms. Those are correct annotations that simply cannot be edited in\nplace.\n\nIt takes the same `editable` map `api/content.ts` hands `createContentHandler`,\nwhich is why that map has always been a Zod-only module with nothing\nAstro-shaped in it. Nothing new is declared, so nothing can drift.\n\n### The fleet sign-in hand-off (0.19.0)\n\nGoogle matches Authorised JavaScript Origins exactly and offers no wildcard, so\nbefore this every new site cost a visit to somebody else's console before its\nowner could sign in at all. `sessions/22-fleet-auth.md` in `sk-platform` is the\ndecision record and the argument; this is the wiring.\n\n**A site's whole share is one environment variable**, whose value is the same\nstring on every site in the fleet:\n\n```\nCMS_AUTH_ORIGIN=https://sk.works\n```\n\nand one line in the `api/auth.ts` it already has —\n`authOrigin: process.env.CMS_AUTH_ORIGIN` beside the three variables that are\nthere. No new route file, no new secret, no console visit. `createAuthHandler`'s\nexisting `GET` grew two shapes: `?handoff=1&to=…` starts the hand-off, and\n`?ticket=…&state=…` finishes it. `allows()`, `issueSession()` and everything\ndownstream are untouched.\n\n**The auth origin mounts the issuer**, as one route file, and holds the one new\nsecret this design adds anywhere:\n\n```js\n// api/handoff.ts on the auth origin\nimport { createHandoffHandler } from \"@shaahink/sitekit/cms\";\n\nconst handler = createHandoffHandler({\n  env: () => ({\n    googleClientId: process.env.CMS_GOOGLE_CLIENT_ID,\n    ticketPrivateKey: process.env.CMS_TICKET_PRIVATE_KEY,  // PKCS#8 PEM\n    fleetOrigins: process.env.CMS_FLEET_ORIGINS            // who it will sign for\n  })\n});\n\nexport const GET = handler.GET;\nexport const POST = handler.POST;\n```\n\nIt serves the sign-in page on the one registered origin, publishes its JWKS at\n`?jwks=1`, and answers `?ping=1` for whatever watches the fleet. `CMS_FLEET_ORIGINS`\nis what stops it being an open redirector *that signs what it hands over*, so it\nis compared exactly — with one exception, a `*` that may be a prefix within a\nsingle host label and never a whole one, because a Vercel preview host is minted\nper deployment and cannot be written down in advance.\n\nThe ticket is RS256, signed with Web Crypto against machinery `feedback/app-auth.ts`\nalready had, and it carries **identity and not permission**: the issuer mints one\nfor any Google account that signs in, including a stranger's, and each site's own\n`CMS_ALLOWLIST` still answers *may you edit me*. That split is deliberate — a\ncentral directory of who may edit what would make one site the single point of\nfailure for every client's content, and would move \"who can edit this site\" out\nof that site's own repository.\n\n## The portability contract\n\nHandlers are Web-standard: `Request`/`Response`, `fetch`, Web Crypto. The\nenvironment is always an argument — the kit never reads `process.env`. A host's\nwrapper reads its own environment at the edge and passes values in:\n\n```js\n// api/feedback.js on a Vercel site\nimport { createFeedbackHandler } from \"@shaahink/sitekit/feedback\";\n\nconst handler = createFeedbackHandler({\n  env: () => ({\n    token: process.env.FEEDBACK_GITHUB_TOKEN,\n    repo: process.env.FEEDBACK_GITHUB_REPO,\n    reviewKey: process.env.FEEDBACK_REVIEW_KEY,\n    branch: process.env.FEEDBACK_ASSETS_BRANCH,\n    siteUrl: process.env.FEEDBACK_SITE_URL,\n    allowedOrigin: process.env.FEEDBACK_ALLOWED_ORIGIN\n  }),\n  locales: [\n    { prefix: \"fr\", name: \"French\", label: \"fr\" },\n    { prefix: \"en\", name: \"English\" }\n  ],\n  timeZone: \"Europe/Brussels\"\n});\n\nexport const GET = handler.GET;\nexport const POST = handler.POST;\n```\n\nEverything a site used to hardcode — timezone, locale names and labels, size\ncaps, rate limits — is an option with a sensible default.\n\n**Sites pin exact versions.** No `^`.\n\n## Dependencies\n\nTwo, and both were argued for rather than reached for.\n\n`yaml` is the kit's only runtime dependency, added for `./cms`. Rewriting\nhand-authored content without destroying its diff needs a real parser that\nkeeps comments and scalar styles — that is not something to hand-roll. It is\npure JavaScript with no Node built-ins, so the portability contract above holds\nand the Cloudflare adapter stays a one-line swap.\n\n`zod` is an **optional peer**: `./cms` calls `z.toJSONSchema()` to generate the\neditor's form model, and every site already has Zod because Astro's content\ncollections are built on it. Optional because a site using only `./feedback` or\n`./headers` should not be made to install it.\n\nNotably *not* a dependency: a JWT library. PLAN §3.9 named `jose`, but the kit\nalready signs RS256 with Web Crypto in `feedback/app-auth.ts`, and verifying\nGoogle's ID tokens is the mirror image of that — a few dozen lines against\nmachinery that already exists and is already tested.\n\n## Development\n\n```\nnpm install\nnpm run build   # tsc, four configs: server (WebWorker) + widget (DOM, ES2017)\n                # + editor (DOM, ES2020) + astro (Node), then the stylesheets\n                # and the .astro route are copied\nnpm test        # vitest\nnpm run proof   # build ../site-template against this working copy\n```\n\nFour configs because the four halves have different floors. Handlers must not\nreach for `document` or a Node built-in, so they typecheck against WebWorker\nglobals only. The widget ships on public pages and stays at ES2017 to reach as\nmany visitors as the sites do. The editor is one route for one owner, so ES2020\nis honest — and it needs the lib as well as the syntax. `src/astro` is the only\nplace Node types are admitted, because reading a site's built pages back is\nwhat the annotation checker does.\n\n**`npm run proof` is the one that catches integration bugs.** Both exports in\n`./astro` only do anything inside a real Astro build; a unit test calls their\nhooks directly, which proves what they do with the arguments they are given and\nnothing about whether Astro gives them those arguments. Every fact the kit has\nbeen wrong about there — that `insertDirective` merges rather than replaces,\nthat an injected route inherits `build.format` — came from reading a real\nbuild. The script overlays this checkout's `dist` **and `package.json`** onto\nsite-template's installed copy, builds, and puts both back. It is not part of\n`prepublishOnly`, because publishing happens from CI where there is no sibling\ncheckout.\n\nThe `package.json` half was added at 0.16.0 and is the same lesson one layer\nout: overlaying only `dist` meant the proof could not see a *new* entry point at\nall, because the installed release's `exports` map decides what a site can\nresolve. `./widget/chrome` was on disk and unreachable, and the build failed on\nan import that was correct. A proof that cannot prove a new subpath is a proof\nof the last release.\n\n`dist` is emptied before every build. `files: [\"dist\"]` publishes whatever is in\nthere, and `tsc` only ever adds, so a moved file used to ship forever.\n\nBehaviours that look like oversights are deliberate and pinned by tests: the\nhoneypot succeeds quietly, a 422 on issue creation retries without labels — kept\nsince 0.16.0 as insurance rather than a guard, because measurement says GitHub\ncreates the label as it files the issue and the failure that *does* happen is a\nsilently dropped label, which is now read back and reported — a failed\nscreenshot upload never loses the comment, and the rate limiter sweeps its whole\nmap above 500 addresses.\n\n`?preview=<field path>` on the content edge, added at 0.16.0, answers with the\nbytes of the photograph one image field points at. It exists because a stored\n`src` is only a URL on a site whose pictures live in `public/`: where\n`astro:assets` owns them the content names a path into the repository that\nnothing serves, so the picker drew a broken-image hairline instead of the\nphotograph an owner was about to replace. The panel asks the browser first and\nfalls back to this once, and only for the value that came from the file. Nothing\nis declared per site, and no path is ever taken from the caller — the handler\nreads the field's own value out of the content, so the reachable set is exactly\nthe pictures the panel is showing.\n\nThe owner's home (`?home` on the content edge) adds three: every block is\n**settled independently**, so a dead analytics instance costs the traffic\nnumbers and not the change list; the analytics **share link is derived** from\nthe instance's own `shareId` rather than configured, because configuration that\ncan be read from the thing it describes is configuration that can go stale; and\na failed deploy is reported in **the host's own words**, since \"Deployment rate\nlimited — retry in 24 hours\" is actionable where \"something went wrong\" is not.\n\nIn `./cms` the same is true of four more: the form model is generated in Zod's\n**input** mode, because a content file may legitimately omit a defaulted field\nand output mode would flag it as incomplete; content is **normalised once** so\nthat every later edit is a small diff, and `applyEdits` verifies its own output\nround-trips before returning it; the allowlist is re-checked on **every**\nrequest, not just at sign-in; and the whole document — never the individual\npatch — is re-validated against the schema, because field-level checks would\nlet a client assemble values that are each valid and collectively wrong.\n","readmeFilename":"README.md"}