{"_id":"@geonosis/themekit","_rev":"27-104e60aefc9e36c177841e9cbc74a929","name":"@geonosis/themekit","dist-tags":{"latest":"3.0.0"},"versions":{"1.0.0":{"name":"@geonosis/themekit","version":"1.0.0","keywords":["design-tokens","dtcg","theme","css-variables","tailwind","figma","monorepo"],"license":"Apache-2.0","_id":"@geonosis/themekit@1.0.0","maintainers":[{"name":"bayraak","email":"bayraak@gmail.com"}],"homepage":"https://github.com/microcompanies/geonosis/tree/main/packages/themekit","dist":{"shasum":"4601abd0bccc55edacc38cb2524be9b954a9deac","tarball":"https://registry.npmjs.org/@geonosis/themekit/-/themekit-1.0.0.tgz","fileCount":5,"integrity":"sha512-EngV2ZYSJKIo04zyKWy1Acxt/lqe4DITApttwBt5BkyhYEu9rD7+WQA1K6sygOb+FLPhyPq2648dnkabn2tURA==","signatures":[{"sig":"MEQCIG6xMnxqv1sNPM8Q0I8gblToYKrab7koj0hgG6PLCowEAiBI+9kTf9IcC60TsU21m9dC2p9aXz05TbNEL2YzUWEHmg==","keyid":"SHA256:DhQ8wR5APBvFHLF/+Tc+AYvPOdTpcIDqOhxsBHRwC7U"}],"unpackedSize":66774},"main":"dist/index.js","type":"module","engines":{"node":">=22"},"exports":{".":"./dist/index.js"},"scripts":{"build":"tsup","typecheck":"tsc --noEmit"},"_npmUser":{"name":"bayraak","email":"bayraak@gmail.com"},"repository":{"url":"git+https://github.com/microcompanies/geonosis.git","type":"git","directory":"packages/themekit"},"description":"The tokens contract, a variable map that is data, and DTCG in and out — themes as files, never components.","directories":{},"_nodeVersion":"24.16.0","publishConfig":{"access":"public"},"_hasShrinkwrap":false,"_npmOperationalInternal":{"tmp":"tmp/themekit_1.0.0_1788106380697_0.4930103933400656","host":"s3://npm-registry-packages-npm-production"}},"1.1.0":{"name":"@geonosis/themekit","version":"1.1.0","keywords":["design-tokens","dtcg","theme","css-variables","tailwind","figma","monorepo"],"license":"Apache-2.0","_id":"@geonosis/themekit@1.1.0","maintainers":[{"name":"bayraak","email":"bayraak@gmail.com"}],"homepage":"https://github.com/microcompanies/geonosis/tree/main/packages/themekit","dist":{"shasum":"b70703d203dd9e687d816112dde3ddf26bf35550","tarball":"https://registry.npmjs.org/@geonosis/themekit/-/themekit-1.1.0.tgz","fileCount":5,"integrity":"sha512-9P7xmqL/T0B4R7oC44QYJpfXmi3ify7Tcn6j17MAhiEA29Ccua7ZOUMTO/fQv9I3P/wkAgEOS7w/MvfdKeZu2w==","signatures":[{"sig":"MEUCIACf/+81IqV0pLW0LTxKIOVi2M/dDGR6txwheQncY9hUAiEAl+dLLjU9xX1CMRDQmXQtqHejogfnGdmPTl5yeUJoqEM=","keyid":"SHA256:DhQ8wR5APBvFHLF/+Tc+AYvPOdTpcIDqOhxsBHRwC7U"}],"unpackedSize":66867},"main":"dist/index.js","type":"module","types":"./dist/index.d.ts","engines":{"node":">=22"},"exports":{".":{"types":"./dist/index.d.ts","default":"./dist/index.js"}},"scripts":{"build":"tsup","typecheck":"tsc --noEmit"},"_npmUser":{"name":"bayraak","email":"bayraak@gmail.com"},"repository":{"url":"git+https://github.com/microcompanies/geonosis.git","type":"git","directory":"packages/themekit"},"description":"The tokens contract, a variable map that is data, and DTCG in and out — themes as files, never components.","directories":{},"_nodeVersion":"24.16.0","publishConfig":{"access":"public"},"_hasShrinkwrap":false,"_npmOperationalInternal":{"tmp":"tmp/themekit_1.1.0_1788114852166_0.33624699418857995","host":"s3://npm-registry-packages-npm-production"}},"1.2.0":{"name":"@geonosis/themekit","version":"1.2.0","keywords":["design-tokens","dtcg","theme","css-variables","tailwind","figma","monorepo"],"license":"Apache-2.0","_id":"@geonosis/themekit@1.2.0","maintainers":[{"name":"bayraak","email":"bayraak@gmail.com"}],"homepage":"https://github.com/microcompanies/geonosis/tree/main/packages/themekit","dist":{"shasum":"ffe5cd07f7274af34187c92917d15fcfb3b43a02","tarball":"https://registry.npmjs.org/@geonosis/themekit/-/themekit-1.2.0.tgz","fileCount":5,"integrity":"sha512-L0yPIk8EGhspIupJGczmWDGcrEYKPFP99pzqtU2DyA8r3fHcMbIUvDtFBcpxP5IjEAr2rJ/djOLsxpb/buE7Qw==","signatures":[{"sig":"MEQCIBarbnY1I82fERdLPnNiAZXFenlXiJJi90nREJl9RadbAiAvwYXsSnzGcnE2L1dw97/D7f+xosf7kyRdse1R/vgD2Q==","keyid":"SHA256:DhQ8wR5APBvFHLF/+Tc+AYvPOdTpcIDqOhxsBHRwC7U"}],"unpackedSize":66867},"main":"dist/index.js","type":"module","types":"./dist/index.d.ts","engines":{"node":">=22"},"exports":{".":{"types":"./dist/index.d.ts","default":"./dist/index.js"}},"scripts":{"build":"tsup","typecheck":"tsc --noEmit"},"_npmUser":{"name":"bayraak","email":"bayraak@gmail.com"},"repository":{"url":"git+https://github.com/microcompanies/geonosis.git","type":"git","directory":"packages/themekit"},"description":"The tokens contract, a variable map that is data, and DTCG in and out — themes as files, never components.","directories":{},"_nodeVersion":"24.16.0","publishConfig":{"access":"public"},"_hasShrinkwrap":false,"_npmOperationalInternal":{"tmp":"tmp/themekit_1.2.0_1788119038401_0.06933062346803087","host":"s3://npm-registry-packages-npm-production"}},"1.3.0":{"name":"@geonosis/themekit","version":"1.3.0","keywords":["design-tokens","dtcg","theme","css-variables","tailwind","figma","monorepo"],"license":"Apache-2.0","_id":"@geonosis/themekit@1.3.0","maintainers":[{"name":"bayraak","email":"bayraak@gmail.com"}],"homepage":"https://github.com/microcompanies/geonosis/tree/main/packages/themekit","dist":{"shasum":"9d4acd434af5303a33461b0cd56d12d922fc81cb","tarball":"https://registry.npmjs.org/@geonosis/themekit/-/themekit-1.3.0.tgz","fileCount":9,"integrity":"sha512-GCUsdPdOVanQGXgTbeitQMpY1iY3KI8En8igOPVIfJR3/lQKqxcaiESwPKbMHa20UbcPinEsUqwmg54WAa/Bhg==","signatures":[{"sig":"MEUCIQDu/aaHGzRr+HiOf0zuO5FTyFueSsTCuLBuDGUc+JTRRgIgI9CRpDJLl/Cw1wvBKGPqUNL5sa9HSBYLhcEm+6E3mfM=","keyid":"SHA256:DhQ8wR5APBvFHLF/+Tc+AYvPOdTpcIDqOhxsBHRwC7U"}],"unpackedSize":67920},"main":"dist/index.js","type":"module","types":"./dist/index.d.ts","engines":{"node":">=22"},"exports":{".":{"types":"./dist/index.d.ts","default":"./dist/index.js"},"./load":{"types":"./dist/load.d.ts","default":"./dist/load.js"}},"scripts":{"build":"tsup","typecheck":"tsc --noEmit"},"_npmUser":{"name":"bayraak","email":"bayraak@gmail.com"},"repository":{"url":"git+https://github.com/microcompanies/geonosis.git","type":"git","directory":"packages/themekit"},"description":"The tokens contract, a variable map that is data, and DTCG in and out — themes as files, never components.","directories":{},"_nodeVersion":"24.16.0","publishConfig":{"access":"public"},"_hasShrinkwrap":false,"_npmOperationalInternal":{"tmp":"tmp/themekit_1.3.0_1788254759167_0.9116044967203618","host":"s3://npm-registry-packages-npm-production"}},"1.4.0":{"name":"@geonosis/themekit","version":"1.4.0","keywords":["design-tokens","dtcg","theme","css-variables","tailwind","figma","monorepo"],"license":"Apache-2.0","_id":"@geonosis/themekit@1.4.0","maintainers":[{"name":"bayraak","email":"bayraak@gmail.com"}],"homepage":"https://github.com/microcompanies/geonosis/tree/main/packages/themekit","dist":{"shasum":"d6aac9990c15a08c81572574eeba2dbaf3c3ceed","tarball":"https://registry.npmjs.org/@geonosis/themekit/-/themekit-1.4.0.tgz","fileCount":9,"integrity":"sha512-1eb4n8K8k9AqpRK+E4+6XE0PSMWeScgu9qmcJIMd2+d2l18xb3gk29p2sYfqPPe4ThPQq/zq5w4N3bISESoNmQ==","signatures":[{"sig":"MEQCIB62PFInTAkqkDDWZJIvmVyX+yaEABpBx/QqKlOVbfXtAiBsuqkIX+qRM2dSFIPamyvWgAPSRityie0QfzVSnMSa7Q==","keyid":"SHA256:DhQ8wR5APBvFHLF/+Tc+AYvPOdTpcIDqOhxsBHRwC7U"}],"unpackedSize":67920},"main":"dist/index.js","type":"module","types":"./dist/index.d.ts","engines":{"node":">=22"},"exports":{".":{"types":"./dist/index.d.ts","default":"./dist/index.js"},"./load":{"types":"./dist/load.d.ts","default":"./dist/load.js"}},"scripts":{"build":"tsup","typecheck":"tsc --noEmit"},"_npmUser":{"name":"bayraak","email":"bayraak@gmail.com"},"repository":{"url":"git+https://github.com/microcompanies/geonosis.git","type":"git","directory":"packages/themekit"},"description":"The tokens contract, a variable map that is data, and DTCG in and out — themes as files, never components.","directories":{},"_nodeVersion":"24.16.0","publishConfig":{"access":"public"},"_hasShrinkwrap":false,"_npmOperationalInternal":{"tmp":"tmp/themekit_1.4.0_1788268907862_0.5005026429954005","host":"s3://npm-registry-packages-npm-production"}},"2.0.0":{"name":"@geonosis/themekit","version":"2.0.0","keywords":["design-tokens","dtcg","theme","css-variables","tailwind","figma","monorepo"],"license":"Apache-2.0","_id":"@geonosis/themekit@2.0.0","maintainers":[{"name":"bayraak","email":"bayraak@gmail.com"}],"homepage":"https://github.com/microcompanies/geonosis/tree/main/packages/themekit","bin":{"geonosis-themekit":"bin/geonosis-themekit.mjs"},"dist":{"shasum":"992edb8a75ee0db19cdb181d1effb4f3761f65c1","tarball":"https://registry.npmjs.org/@geonosis/themekit/-/themekit-2.0.0.tgz","fileCount":13,"integrity":"sha512-hODs8wrdp9dmXoPGAvrcl32dPF6RJRZloZMJhCyCBDdh7M/c73QxFphOLLyhuUmJmaQCe5UZebuxT4BwlJB3KQ==","signatures":[{"sig":"MEUCIE4OAfMP7G413Ts9Q+QwTHSuCKFrm3lrylbTAJwr2BbpAiEAqZY34CGtN0rbwLX2PuPxx2BOhpT0k0yvXPHzvCDN+LY=","keyid":"SHA256:DhQ8wR5APBvFHLF/+Tc+AYvPOdTpcIDqOhxsBHRwC7U"}],"unpackedSize":89787},"main":"dist/index.js","type":"module","types":"./dist/index.d.ts","engines":{"node":">=22"},"exports":{".":{"types":"./dist/index.d.ts","default":"./dist/index.js"},"./load":{"types":"./dist/load.d.ts","default":"./dist/load.js"}},"scripts":{"build":"tsup","typecheck":"tsc --noEmit"},"_npmUser":{"name":"bayraak","email":"bayraak@gmail.com"},"repository":{"url":"git+https://github.com/microcompanies/geonosis.git","type":"git","directory":"packages/themekit"},"description":"The tokens contract, a variable map that is data, and DTCG in and out — themes as files, never components.","directories":{},"_nodeVersion":"24.16.0","publishConfig":{"access":"public"},"_hasShrinkwrap":false,"_npmOperationalInternal":{"tmp":"tmp/themekit_2.0.0_1788332152301_0.948210082962682","host":"s3://npm-registry-packages-npm-production"}},"2.1.0":{"name":"@geonosis/themekit","version":"2.1.0","keywords":["design-tokens","dtcg","theme","css-variables","tailwind","figma","monorepo"],"license":"Apache-2.0","_id":"@geonosis/themekit@2.1.0","maintainers":[{"name":"bayraak","email":"bayraak@gmail.com"}],"homepage":"https://github.com/microcompanies/geonosis/tree/main/packages/themekit","bin":{"geonosis-themekit":"bin/geonosis-themekit.mjs"},"dist":{"shasum":"cb69e23b504d5b5b54d1ea405c59620f5b95232b","tarball":"https://registry.npmjs.org/@geonosis/themekit/-/themekit-2.1.0.tgz","fileCount":13,"integrity":"sha512-9LvLf9GZaYbyGo6puiJNEm3x7JqYtVJtqxiuoRjaD/ofG7Szx7WFYkyrijUDKWTPpwU/aaH7LpV0Y2BEnAxguQ==","signatures":[{"sig":"MEUCIQCORj13D1M0uE9TpSAb1JZ+mhts+TUPbE5nlD/u6hmmzwIgPdp8qBASZJoBclzGkZ7Y123m+nPzSvbyFtlUiy5F9zc=","keyid":"SHA256:DhQ8wR5APBvFHLF/+Tc+AYvPOdTpcIDqOhxsBHRwC7U"}],"unpackedSize":89460},"main":"dist/index.js","type":"module","types":"./dist/index.d.ts","engines":{"node":">=22"},"exports":{".":{"types":"./dist/index.d.ts","default":"./dist/index.js"},"./load":{"types":"./dist/load.d.ts","default":"./dist/load.js"}},"scripts":{"build":"tsup","typecheck":"tsc --noEmit"},"_npmUser":{"name":"bayraak","email":"bayraak@gmail.com"},"repository":{"url":"git+https://github.com/microcompanies/geonosis.git","type":"git","directory":"packages/themekit"},"description":"The tokens contract, a variable map that is data, and DTCG in and out — themes as files, never components.","directories":{},"_nodeVersion":"24.16.0","publishConfig":{"access":"public"},"_hasShrinkwrap":false,"_npmOperationalInternal":{"tmp":"tmp/themekit_2.1.0_1788357158285_0.44986351188350104","host":"s3://npm-registry-packages-npm-production"}},"2.2.0":{"name":"@geonosis/themekit","version":"2.2.0","keywords":["design-tokens","dtcg","theme","css-variables","tailwind","figma","monorepo"],"license":"Apache-2.0","_id":"@geonosis/themekit@2.2.0","maintainers":[{"name":"bayraak","email":"bayraak@gmail.com"}],"homepage":"https://github.com/microcompanies/geonosis/tree/main/packages/themekit","bin":{"geonosis-themekit":"bin/geonosis-themekit.mjs"},"dist":{"shasum":"759e027e052f14a5c512b29d8e81b252828a0fdf","tarball":"https://registry.npmjs.org/@geonosis/themekit/-/themekit-2.2.0.tgz","fileCount":13,"integrity":"sha512-XqOCqSSwVFGaTAlF2qxUzCatDruKXp2ukc5UCxRgFKC5uNKBQp90W1yrzgiCC81OyUxtNeOAElPghOn1Qd3GwA==","signatures":[{"sig":"MEYCIQCKvZA0+i6G0W5+XrBwLKLJvLs59MSk0pK41ZPRZ2F5kAIhANBjclPJgn10RNHZhtfacKHf96yCpH5mSrN9m+B4it8D","keyid":"SHA256:DhQ8wR5APBvFHLF/+Tc+AYvPOdTpcIDqOhxsBHRwC7U"}],"unpackedSize":89460},"main":"dist/index.js","type":"module","types":"./dist/index.d.ts","engines":{"node":">=22"},"exports":{".":{"types":"./dist/index.d.ts","default":"./dist/index.js"},"./load":{"types":"./dist/load.d.ts","default":"./dist/load.js"}},"scripts":{"build":"tsup","typecheck":"tsc --noEmit"},"_npmUser":{"name":"bayraak","email":"bayraak@gmail.com"},"repository":{"url":"git+https://github.com/microcompanies/geonosis.git","type":"git","directory":"packages/themekit"},"description":"The tokens contract, a variable map that is data, and DTCG in and out — themes as files, never components.","directories":{},"_nodeVersion":"24.16.0","publishConfig":{"access":"public"},"_hasShrinkwrap":false,"_npmOperationalInternal":{"tmp":"tmp/themekit_2.2.0_1788369600614_0.9639564573863315","host":"s3://npm-registry-packages-npm-production"}},"2.3.0":{"name":"@geonosis/themekit","version":"2.3.0","keywords":["design-tokens","dtcg","theme","css-variables","tailwind","figma","monorepo"],"license":"Apache-2.0","_id":"@geonosis/themekit@2.3.0","maintainers":[{"name":"bayraak","email":"bayraak@gmail.com"}],"homepage":"https://github.com/microcompanies/geonosis/tree/main/packages/themekit","bin":{"geonosis-themekit":"bin/geonosis-themekit.mjs"},"dist":{"shasum":"9ff61c6a1e6b9b6b7fb6723da3e8bc04afbc4fd5","tarball":"https://registry.npmjs.org/@geonosis/themekit/-/themekit-2.3.0.tgz","fileCount":13,"integrity":"sha512-zkYZDZFsccEYJikUjMRhAHyUlcRJM/tP5OLOll95JcQSPZrbsmuDk4tqQNOhSoJy2ltcycsweZWC1aSejtrM7w==","signatures":[{"sig":"MEUCICAkfJ9vgtK7dkEfc7fOEusmKQw0Yj0a0v7g1mhK5m6AAiEAo82CsPIX86ZNFTTmglY5exjJIxqusnXoqCZQvwTUDBU=","keyid":"SHA256:DhQ8wR5APBvFHLF/+Tc+AYvPOdTpcIDqOhxsBHRwC7U"}],"unpackedSize":92516},"main":"dist/index.js","type":"module","types":"./dist/index.d.ts","engines":{"node":">=22"},"exports":{".":{"types":"./dist/index.d.ts","default":"./dist/index.js"},"./load":{"types":"./dist/load.d.ts","default":"./dist/load.js"}},"scripts":{"build":"tsup","typecheck":"tsc --noEmit"},"_npmUser":{"name":"bayraak","email":"bayraak@gmail.com"},"repository":{"url":"git+https://github.com/microcompanies/geonosis.git","type":"git","directory":"packages/themekit"},"description":"The tokens contract, a variable map that is data, and DTCG in and out — themes as files, never components.","directories":{},"_nodeVersion":"24.16.0","publishConfig":{"access":"public"},"_hasShrinkwrap":false,"_npmOperationalInternal":{"tmp":"tmp/themekit_2.3.0_1788419928136_0.2385115862406222","host":"s3://npm-registry-packages-npm-production"}},"2.3.1":{"name":"@geonosis/themekit","version":"2.3.1","keywords":["design-tokens","dtcg","theme","css-variables","tailwind","figma","monorepo"],"license":"Apache-2.0","_id":"@geonosis/themekit@2.3.1","maintainers":[{"name":"bayraak","email":"bayraak@gmail.com"}],"homepage":"https://github.com/microcompanies/geonosis/tree/main/packages/themekit","bin":{"geonosis-themekit":"bin/geonosis-themekit.mjs"},"dist":{"shasum":"5b14c7d85fd54d75f33eb9e3def3e0121d3a8b60","tarball":"https://registry.npmjs.org/@geonosis/themekit/-/themekit-2.3.1.tgz","fileCount":13,"integrity":"sha512-wWjM2hkSnjUp02WNWICS95yV89UnjQv8/4hOVhZeIekQj1+9mnW7eaq9M87jJPxImajZyDtof9c1N6yeqbjP9g==","signatures":[{"sig":"MEUCIGT6gldeit6G0beGWTMvQCtHZAZvigzONqnmAv5HY4GvAiEAuX/TY98ign1HCIhNsUF1+g8X+30aDJPeWSCFCbhPRp4=","keyid":"SHA256:DhQ8wR5APBvFHLF/+Tc+AYvPOdTpcIDqOhxsBHRwC7U"}],"unpackedSize":92516},"main":"dist/index.js","type":"module","types":"./dist/index.d.ts","engines":{"node":">=22"},"exports":{".":{"types":"./dist/index.d.ts","default":"./dist/index.js"},"./load":{"types":"./dist/load.d.ts","default":"./dist/load.js"}},"scripts":{"build":"tsup","typecheck":"tsc --noEmit"},"_npmUser":{"name":"bayraak","email":"bayraak@gmail.com"},"repository":{"url":"git+https://github.com/microcompanies/geonosis.git","type":"git","directory":"packages/themekit"},"description":"The tokens contract, a variable map that is data, and DTCG in and out — themes as files, never components.","directories":{},"_nodeVersion":"24.16.0","publishConfig":{"access":"public"},"_hasShrinkwrap":false,"_npmOperationalInternal":{"tmp":"tmp/themekit_2.3.1_1788435299289_0.04160779408751858","host":"s3://npm-registry-packages-npm-production"}},"2.4.2":{"name":"@geonosis/themekit","version":"2.4.2","keywords":["design-tokens","dtcg","theme","css-variables","tailwind","figma","monorepo"],"license":"Apache-2.0","_id":"@geonosis/themekit@2.4.2","maintainers":[{"name":"bayraak","email":"bayraak@gmail.com"}],"homepage":"https://github.com/microcompanies/geonosis/tree/main/packages/themekit","bin":{"geonosis-themekit":"bin/geonosis-themekit.mjs"},"dist":{"shasum":"d11f4e7de90ce7011b6d3dd28f9b6d029c317d1b","tarball":"https://registry.npmjs.org/@geonosis/themekit/-/themekit-2.4.2.tgz","fileCount":14,"integrity":"sha512-Ev+EUZm2UIazRhoOiJnt7cMwxOXhGtff8Ptu6URVAediE+x1n+AS5oVGEXZdSF0iTykmVCE8BQOCzS6ZJnRL3A==","signatures":[{"sig":"MEYCIQCvyo/6l3ajomghdQhiEsUwiOxicBRIjRBrUAS2G2Pj6wIhAMmm0c/0YoQms9Lo88rdy+xQzHZLrujQKOEAtPaiNwG4","keyid":"SHA256:DhQ8wR5APBvFHLF/+Tc+AYvPOdTpcIDqOhxsBHRwC7U"}],"unpackedSize":102588},"main":"dist/index.js","type":"module","types":"./dist/index.d.ts","engines":{"node":">=22"},"exports":{".":{"types":"./dist/index.d.ts","default":"./dist/index.js"},"./load":{"types":"./dist/load.d.ts","default":"./dist/load.js"}},"scripts":{"build":"tsup","typecheck":"tsc --noEmit"},"_npmUser":{"name":"bayraak","email":"bayraak@gmail.com"},"repository":{"url":"git+https://github.com/microcompanies/geonosis.git","type":"git","directory":"packages/themekit"},"description":"The tokens contract, a variable map that is data, and DTCG in and out — themes as files, never components.","directories":{},"_nodeVersion":"24.16.0","publishConfig":{"access":"public"},"_hasShrinkwrap":false,"_npmOperationalInternal":{"tmp":"tmp/themekit_2.4.2_1788444810239_0.3464354317574352","host":"s3://npm-registry-packages-npm-production"}},"2.4.3":{"name":"@geonosis/themekit","version":"2.4.3","keywords":["design-tokens","dtcg","theme","css-variables","tailwind","figma","monorepo"],"license":"Apache-2.0","_id":"@geonosis/themekit@2.4.3","maintainers":[{"name":"bayraak","email":"bayraak@gmail.com"}],"homepage":"https://github.com/microcompanies/geonosis/tree/main/packages/themekit","bin":{"geonosis-themekit":"bin/geonosis-themekit.mjs"},"dist":{"shasum":"fcffe9211bb3d1d329735ab0e29a48483484ebd6","tarball":"https://registry.npmjs.org/@geonosis/themekit/-/themekit-2.4.3.tgz","fileCount":14,"integrity":"sha512-BlFHKElfIR7kow1fRuBPfxhs87k4lU9bRq0q0WdQF5K6zSHQYA8wJDEHdwrimMnDMuvm2fOVLwGq6Xc6G9HoqA==","signatures":[{"sig":"MEUCIE9nFBNNjt3qIIcz2Fe9oxGw9Mo5d37iwvGlnj8wVfNvAiEAv53hCpRDGqrbmpyFsYDIXkoqqsoyzYC/+418UVno7s8=","keyid":"SHA256:DhQ8wR5APBvFHLF/+Tc+AYvPOdTpcIDqOhxsBHRwC7U"}],"unpackedSize":102598},"main":"dist/index.js","type":"module","types":"./dist/index.d.ts","engines":{"node":">=22"},"exports":{".":{"types":"./dist/index.d.ts","default":"./dist/index.js"},"./load":{"types":"./dist/load.d.ts","default":"./dist/load.js"}},"scripts":{"build":"tsup","typecheck":"tsc --noEmit"},"_npmUser":{"name":"bayraak","email":"bayraak@gmail.com"},"repository":{"url":"git+https://github.com/microcompanies/geonosis.git","type":"git","directory":"packages/themekit"},"description":"The tokens contract, a variable map that is data, and DTCG in and out — themes as files, never components.","directories":{},"_nodeVersion":"24.16.0","publishConfig":{"access":"public"},"_hasShrinkwrap":false,"_npmOperationalInternal":{"tmp":"tmp/themekit_2.4.3_1788566001292_0.03422977393679938","host":"s3://npm-registry-packages-npm-production"}},"2.5.0":{"name":"@geonosis/themekit","version":"2.5.0","keywords":["design-tokens","dtcg","theme","css-variables","tailwind","figma","monorepo"],"license":"Apache-2.0","_id":"@geonosis/themekit@2.5.0","maintainers":[{"name":"bayraak","email":"bayraak@gmail.com"}],"homepage":"https://github.com/microcompanies/geonosis/tree/main/packages/themekit","bin":{"geonosis-themekit":"bin/geonosis-themekit.mjs"},"dist":{"shasum":"73f386e991ab58e87d8981c6ba2747df9dd7f303","tarball":"https://registry.npmjs.org/@geonosis/themekit/-/themekit-2.5.0.tgz","fileCount":14,"integrity":"sha512-tcH9doqFWfRoGJdNkiG9TJ2a43te8PtyEVnYXB1x62bRr5Gw1zTsNS59HbSzE1wuJVngwzCAq4CeG2xDMrvixw==","signatures":[{"sig":"MEYCIQDecTB9e2YU3wVv6XxYqNj/X4eTUUZKhc0LfAy+xWgRAgIhALTOftatlkmm+HPQteYzLYUcD2xjhrWENRUX6jCZfczD","keyid":"SHA256:DhQ8wR5APBvFHLF/+Tc+AYvPOdTpcIDqOhxsBHRwC7U"}],"unpackedSize":102608},"main":"dist/index.js","type":"module","types":"./dist/index.d.ts","engines":{"node":">=22"},"exports":{".":{"types":"./dist/index.d.ts","default":"./dist/index.js"},"./load":{"types":"./dist/load.d.ts","default":"./dist/load.js"}},"scripts":{"build":"tsup","typecheck":"tsc --noEmit"},"_npmUser":{"name":"bayraak","email":"bayraak@gmail.com"},"repository":{"url":"git+https://github.com/microcompanies/geonosis.git","type":"git","directory":"packages/themekit"},"description":"The tokens contract, a variable map that is data, and DTCG in and out — themes as files, never components.","directories":{},"_nodeVersion":"24.16.0","publishConfig":{"access":"public"},"_hasShrinkwrap":false,"_npmOperationalInternal":{"tmp":"tmp/themekit_2.5.0_1788595392881_0.5283114665958581","host":"s3://npm-registry-packages-npm-production"}},"2.5.1":{"name":"@geonosis/themekit","version":"2.5.1","keywords":["design-tokens","dtcg","theme","css-variables","tailwind","figma","monorepo"],"license":"Apache-2.0","_id":"@geonosis/themekit@2.5.1","maintainers":[{"name":"bayraak","email":"bayraak@gmail.com"}],"homepage":"https://github.com/microcompanies/geonosis/tree/main/packages/themekit","bin":{"geonosis-themekit":"bin/geonosis-themekit.mjs"},"dist":{"shasum":"e66fc13f63482560e803babf34b14e5680d39a8b","tarball":"https://registry.npmjs.org/@geonosis/themekit/-/themekit-2.5.1.tgz","fileCount":14,"integrity":"sha512-hwqy8Kt9CeCxaLUklg38DYZQcEZHpM+ZvB5llbgFGMVJ9ZDBHk4qnm9SKbfvjO89Hs29Y7Cnrz7cwt69Y+v6RQ==","signatures":[{"sig":"MEQCIHO8qbN+T5ETnkFySZb05BxdFOQwu7HwXq8AjGUpIvTIAiAm7JcYYTcJD0poDTTB9vUQFcNL7hUVZZsI0Pu4YmHd/A==","keyid":"SHA256:DhQ8wR5APBvFHLF/+Tc+AYvPOdTpcIDqOhxsBHRwC7U"}],"unpackedSize":102974},"main":"dist/index.js","type":"module","types":"./dist/index.d.ts","engines":{"node":">=22"},"exports":{".":{"types":"./dist/index.d.ts","default":"./dist/index.js"},"./load":{"types":"./dist/load.d.ts","default":"./dist/load.js"}},"scripts":{"build":"tsup","typecheck":"tsc --noEmit"},"_npmUser":{"name":"bayraak","email":"bayraak@gmail.com"},"repository":{"url":"git+https://github.com/microcompanies/geonosis.git","type":"git","directory":"packages/themekit"},"description":"The tokens contract, a variable map that is data, and DTCG in and out — themes as files, never components.","directories":{},"_nodeVersion":"24.16.0","publishConfig":{"access":"public"},"_hasShrinkwrap":false,"_npmOperationalInternal":{"tmp":"tmp/themekit_2.5.1_1788685756255_0.21125970644913772","host":"s3://npm-registry-packages-npm-production"}},"2.5.2":{"name":"@geonosis/themekit","version":"2.5.2","keywords":["design-tokens","dtcg","theme","css-variables","tailwind","figma","monorepo"],"license":"Apache-2.0","_id":"@geonosis/themekit@2.5.2","maintainers":[{"name":"bayraak","email":"bayraak@gmail.com"}],"homepage":"https://github.com/microcompanies/geonosis/tree/main/packages/themekit","bin":{"geonosis-themekit":"bin/geonosis-themekit.mjs"},"dist":{"shasum":"fa0f393ea83ee45f6444b7dfec2419dfbeb64f7e","tarball":"https://registry.npmjs.org/@geonosis/themekit/-/themekit-2.5.2.tgz","fileCount":14,"integrity":"sha512-GBAiCbGuCa33r7fH0a8d7hXQ22ukg0ZbunAubtljJOXx9sks4zR/zZYhMnbe/TFeUt1K39zaLUoakGjMrhnt6A==","signatures":[{"sig":"MEQCIHpJ+Q+7yxHBaqng36F+B04ScSjeNvil+7H4FAAqk02lAiApIwzACHfmtShjunpZpf9u4PH+9AkMJsa7U/cv0EhQGA==","keyid":"SHA256:DhQ8wR5APBvFHLF/+Tc+AYvPOdTpcIDqOhxsBHRwC7U"}],"unpackedSize":102984},"main":"dist/index.js","type":"module","types":"./dist/index.d.ts","engines":{"node":">=22"},"exports":{".":{"types":"./dist/index.d.ts","default":"./dist/index.js"},"./load":{"types":"./dist/load.d.ts","default":"./dist/load.js"}},"scripts":{"build":"tsup","typecheck":"tsc --noEmit"},"_npmUser":{"name":"bayraak","email":"bayraak@gmail.com"},"repository":{"url":"git+https://github.com/microcompanies/geonosis.git","type":"git","directory":"packages/themekit"},"description":"The tokens contract, a variable map that is data, and DTCG in and out — themes as files, never components.","directories":{},"_nodeVersion":"24.16.0","publishConfig":{"access":"public"},"_hasShrinkwrap":false,"_npmOperationalInternal":{"tmp":"tmp/themekit_2.5.2_1788701275272_0.788501271339574","host":"s3://npm-registry-packages-npm-production"}},"2.5.3":{"name":"@geonosis/themekit","version":"2.5.3","keywords":["design-tokens","dtcg","theme","css-variables","tailwind","figma","monorepo"],"license":"Apache-2.0","_id":"@geonosis/themekit@2.5.3","maintainers":[{"name":"bayraak","email":"bayraak@gmail.com"}],"homepage":"https://github.com/microcompanies/geonosis/tree/main/packages/themekit","bin":{"geonosis-themekit":"bin/geonosis-themekit.mjs"},"dist":{"shasum":"f44ba9c352619e4961131b29d4113cf2ff092776","tarball":"https://registry.npmjs.org/@geonosis/themekit/-/themekit-2.5.3.tgz","fileCount":14,"integrity":"sha512-uzQNLWqa+1IBChPAkMdNGy0J3oNz4iFAf+hdefK8mVlTzRtYAReYkZ1W0fkQKSRnBibkmS78Koe9CctzoSBw+Q==","signatures":[{"sig":"MEUCIFZ/Wocz5M0AAoKUQf4g0IkrgoPiKgd0N1krex3NnLGBAiEApeMv400vYT7QswcboRNtC7jtWFVNEkOSHS14Ex4aESI=","keyid":"SHA256:DhQ8wR5APBvFHLF/+Tc+AYvPOdTpcIDqOhxsBHRwC7U"}],"unpackedSize":102994},"main":"dist/index.js","type":"module","types":"./dist/index.d.ts","engines":{"node":">=22"},"exports":{".":{"types":"./dist/index.d.ts","default":"./dist/index.js"},"./load":{"types":"./dist/load.d.ts","default":"./dist/load.js"}},"scripts":{"build":"tsup","typecheck":"tsc --noEmit"},"_npmUser":{"name":"bayraak","email":"bayraak@gmail.com"},"repository":{"url":"git+https://github.com/microcompanies/geonosis.git","type":"git","directory":"packages/themekit"},"description":"The tokens contract, a variable map that is data, and DTCG in and out — themes as files, never components.","directories":{},"_nodeVersion":"24.16.0","publishConfig":{"access":"public"},"_hasShrinkwrap":false,"_npmOperationalInternal":{"tmp":"tmp/themekit_2.5.3_1788712650710_0.28711471859842685","host":"s3://npm-registry-packages-npm-production"}},"2.6.0":{"name":"@geonosis/themekit","version":"2.6.0","keywords":["design-tokens","dtcg","theme","css-variables","tailwind","figma","monorepo"],"license":"Apache-2.0","_id":"@geonosis/themekit@2.6.0","maintainers":[{"name":"bayraak","email":"bayraak@gmail.com"}],"homepage":"https://github.com/microcompanies/geonosis/tree/main/packages/themekit","bin":{"geonosis-themekit":"bin/geonosis-themekit.mjs"},"dist":{"shasum":"aee9fce590847fb2184f8b0f45360fa5c06ceb18","tarball":"https://registry.npmjs.org/@geonosis/themekit/-/themekit-2.6.0.tgz","fileCount":14,"integrity":"sha512-2d7OnlbLx0Nh9XYCiaEa+XYh4EuojzfVPqqG/I30O4H46V/fpvpzvPsjpVie1hAjFF8LE44R1yNVnBzuAxhL4Q==","signatures":[{"sig":"MEUCIQDF/xROS7Pic6JqLwKPnn0Wujs9LJ9zqwrXvzisARuJ/gIgBmSdPuJpxBhnRlSmKG6QUBRBjO+3C0xpDSCq5Y+gBvY=","keyid":"SHA256:DhQ8wR5APBvFHLF/+Tc+AYvPOdTpcIDqOhxsBHRwC7U"}],"unpackedSize":103314},"main":"dist/index.js","type":"module","types":"./dist/index.d.ts","engines":{"node":">=22"},"exports":{".":{"types":"./dist/index.d.ts","default":"./dist/index.js"},"./load":{"types":"./dist/load.d.ts","default":"./dist/load.js"}},"scripts":{"lint":"oxlint --config ../../.oxlintrc.json .","build":"tsup","test:bin":"vitest run --project bin --root ../.. --passWithNoTests \"$PWD\"","test:exam":"vitest run --project exam --root ../.. --passWithNoTests \"$PWD\"","test:unit":"vitest run --project unit --root ../.. --passWithNoTests \"$PWD\"","typecheck":"tsc --noEmit"},"_npmUser":{"name":"bayraak","email":"bayraak@gmail.com"},"repository":{"url":"git+https://github.com/microcompanies/geonosis.git","type":"git","directory":"packages/themekit"},"description":"The tokens contract, a variable map that is data, and DTCG in and out — themes as files, never components.","directories":{},"_nodeVersion":"24.16.0","publishConfig":{"access":"public"},"_hasShrinkwrap":false,"_npmOperationalInternal":{"tmp":"tmp/themekit_2.6.0_1788776151701_0.6407283220883995","host":"s3://npm-registry-packages-npm-production"}},"2.6.1":{"name":"@geonosis/themekit","version":"2.6.1","keywords":["design-tokens","dtcg","theme","css-variables","tailwind","figma","monorepo"],"license":"Apache-2.0","_id":"@geonosis/themekit@2.6.1","maintainers":[{"name":"bayraak","email":"bayraak@gmail.com"}],"homepage":"https://github.com/microcompanies/geonosis/tree/main/packages/themekit","bin":{"geonosis-themekit":"bin/geonosis-themekit.mjs"},"dist":{"shasum":"ba8dd6cd9f8e688d91188d73dda269933fff7b08","tarball":"https://registry.npmjs.org/@geonosis/themekit/-/themekit-2.6.1.tgz","fileCount":14,"integrity":"sha512-BeJhr+Irl0OHEJuuEx6hF01WYD+pq4NhgZ9dScFoTX83bStPBjY7bSuh8+x6jvSrHq8EOcmRq3m+n0H8nVAJpA==","signatures":[{"sig":"MEYCIQCK+0FSZ4T7z1xRiaRWzxbkCLi17Q3F6zVEArRJTQB1swIhAI00U48VHDQgtsSbuqcRSpBli46gNGpwVz0RbYSy6w0z","keyid":"SHA256:DhQ8wR5APBvFHLF/+Tc+AYvPOdTpcIDqOhxsBHRwC7U"}],"unpackedSize":103324},"main":"dist/index.js","type":"module","types":"./dist/index.d.ts","engines":{"node":">=22"},"exports":{".":{"types":"./dist/index.d.ts","default":"./dist/index.js"},"./load":{"types":"./dist/load.d.ts","default":"./dist/load.js"}},"scripts":{"lint":"oxlint --config ../../.oxlintrc.json .","build":"tsup","test:bin":"vitest run --project bin --root ../.. --passWithNoTests \"$PWD\"","test:exam":"vitest run --project exam --root ../.. --passWithNoTests \"$PWD\"","test:unit":"vitest run --project unit --root ../.. --passWithNoTests \"$PWD\"","typecheck":"tsc --noEmit"},"_npmUser":{"name":"bayraak","email":"bayraak@gmail.com"},"repository":{"url":"git+https://github.com/microcompanies/geonosis.git","type":"git","directory":"packages/themekit"},"description":"The tokens contract, a variable map that is data, and DTCG in and out — themes as files, never components.","directories":{},"_nodeVersion":"24.16.0","publishConfig":{"access":"public"},"_hasShrinkwrap":false,"_npmOperationalInternal":{"tmp":"tmp/themekit_2.6.1_1788803816740_0.05273417435588734","host":"s3://npm-registry-packages-npm-production"}},"2.7.0":{"name":"@geonosis/themekit","version":"2.7.0","keywords":["design-tokens","dtcg","theme","css-variables","tailwind","figma","monorepo"],"license":"Apache-2.0","_id":"@geonosis/themekit@2.7.0","maintainers":[{"name":"bayraak","email":"bayraak@gmail.com"}],"homepage":"https://github.com/microcompanies/geonosis/tree/main/packages/themekit","bin":{"geonosis-themekit":"bin/geonosis-themekit.mjs"},"dist":{"shasum":"c5e3ce4a91116b68d7737cc0afdad76d79a5cf68","tarball":"https://registry.npmjs.org/@geonosis/themekit/-/themekit-2.7.0.tgz","fileCount":14,"integrity":"sha512-iPvjHDS2iDiL/Bug88wKV+HCWA8QDT1YJuCe+np5vD4xO+yJhfQGE3RImhT5KrkNFsvnnSvsatXEavF9Qm0g3A==","signatures":[{"sig":"MEYCIQDuJ0Z3rHZTZp9GIZkEo3fP9qGZR7/hJxlQU7DIEFH0GgIhANLKvkLGCHaJ5Llqkr47yOMtASM0dXMXcshF96/AcqmH","keyid":"SHA256:DhQ8wR5APBvFHLF/+Tc+AYvPOdTpcIDqOhxsBHRwC7U"}],"unpackedSize":103334},"main":"dist/index.js","type":"module","types":"./dist/index.d.ts","engines":{"node":">=22"},"exports":{".":{"types":"./dist/index.d.ts","default":"./dist/index.js"},"./load":{"types":"./dist/load.d.ts","default":"./dist/load.js"}},"scripts":{"lint":"oxlint --config ../../.oxlintrc.json .","build":"tsup","test:bin":"vitest run --project bin --root ../.. --passWithNoTests \"$PWD\"","test:exam":"vitest run --project exam --root ../.. --passWithNoTests \"$PWD\"","test:unit":"vitest run --project unit --root ../.. --passWithNoTests \"$PWD\"","typecheck":"tsc --noEmit"},"_npmUser":{"name":"bayraak","email":"bayraak@gmail.com"},"repository":{"url":"git+https://github.com/microcompanies/geonosis.git","type":"git","directory":"packages/themekit"},"description":"The tokens contract, a variable map that is data, and DTCG in and out — themes as files, never components.","directories":{},"_nodeVersion":"24.16.0","publishConfig":{"access":"public"},"_hasShrinkwrap":false,"_npmOperationalInternal":{"tmp":"tmp/themekit_2.7.0_1789209386530_0.44694360506194886","host":"s3://npm-registry-packages-npm-production"}},"2.8.0":{"name":"@geonosis/themekit","version":"2.8.0","keywords":["design-tokens","dtcg","theme","css-variables","tailwind","figma","monorepo"],"license":"Apache-2.0","_id":"@geonosis/themekit@2.8.0","maintainers":[{"name":"bayraak","email":"bayraak@gmail.com"}],"homepage":"https://github.com/microcompanies/geonosis/tree/main/packages/themekit","bin":{"geonosis-themekit":"bin/geonosis-themekit.mjs"},"dist":{"shasum":"2d782ec5fc0b7f1835b9b31ece1b77d4faba0351","tarball":"https://registry.npmjs.org/@geonosis/themekit/-/themekit-2.8.0.tgz","fileCount":14,"integrity":"sha512-u/QVkBGHk4yijmwdOlwE9hR86d6yYBRWZkPXFjBVEvD4ZLXjtwYIVu1l+WvZQdGISUveTqYCr22rCNd54veDlQ==","signatures":[{"sig":"MEUCIAYKgOlplBe6f8+X8F33tMSzqzpGkJgaSHS6BBsIr5prAiEAyEyeCn53AiNDZxIxkMnpRV7zP1HFmbf+Q9OKlafXyL4=","keyid":"SHA256:DhQ8wR5APBvFHLF/+Tc+AYvPOdTpcIDqOhxsBHRwC7U"},{"sig":"MEUCIQC8wQin97OguHdNxF6Lrm4areLfXBE2tpIQSzvL9lC5+gIgEW4EAHS9NHRAlQ5IvmuRdtQwTRGoAmvbZWkTOnxQ/4s=","keyid":"SHA256:DhQ8wR5APBvFHLF/+Tc+AYvPOdTpcIDqOhxsBHRwC7U"}],"unpackedSize":103342},"main":"dist/index.js","type":"module","types":"./dist/index.d.ts","engines":{"node":">=22"},"exports":{".":{"types":"./dist/index.d.ts","default":"./dist/index.js"},"./load":{"types":"./dist/load.d.ts","default":"./dist/load.js"}},"scripts":{"lint":"oxlint --config ../../.oxlintrc.json .","build":"tsup","test:bin":"vitest run --project bin --root ../.. --passWithNoTests \"$PWD\"","test:exam":"vitest run --project exam --root ../.. --passWithNoTests \"$PWD\"","test:unit":"vitest run --project unit --root ../.. --passWithNoTests \"$PWD\"","typecheck":"tsc --noEmit"},"_npmUser":{"name":"bayraak","email":"bayraak@gmail.com"},"repository":{"url":"git+https://github.com/microcompanies/geonosis.git","type":"git","directory":"packages/themekit"},"description":"The tokens contract, a variable map that is data, and DTCG in and out — themes as files, never components.","directories":{},"_nodeVersion":"24.16.0","publishConfig":{"access":"public"},"_hasShrinkwrap":false,"_npmOperationalInternal":{"tmp":"tmp/themekit_2.8.0_1789421456750_0.600889795163349","host":"s3://npm-registry-packages-npm-production"}},"2.9.0":{"name":"@geonosis/themekit","version":"2.9.0","keywords":["design-tokens","dtcg","theme","css-variables","tailwind","figma","monorepo"],"license":"Apache-2.0","_id":"@geonosis/themekit@2.9.0","maintainers":[{"name":"bayraak","email":"bayraak@gmail.com"}],"homepage":"https://github.com/microcompanies/geonosis/tree/main/packages/themekit","bin":{"geonosis-themekit":"bin/geonosis-themekit.mjs"},"dist":{"shasum":"f52214e5fb5a9393221779c640cdd766170e66b4","tarball":"https://registry.npmjs.org/@geonosis/themekit/-/themekit-2.9.0.tgz","fileCount":14,"integrity":"sha512-B4X+oaZNxOs6wAw6ZkQs2GTAwgG2LPmb9jhsJ8VYYCtBfn+I5QEJmrGBgntGuESfudtHHoosRGi7Wh/zi3MR+A==","signatures":[{"sig":"MEQCIH//MGaDHT/PMKxvP8CzXxzeTcLEsYkz4ilyf6NT4ZLcAiAVGnnOKhTZlZM0KXsvuuk/G6DTr5uvLllHDyASwo1hLA==","keyid":"SHA256:DhQ8wR5APBvFHLF/+Tc+AYvPOdTpcIDqOhxsBHRwC7U"},{"sig":"MEQCIHGHK8g+i63f7M58+KJJJ7GEhGo2IdvKoQYZCktjwZGpAiBoffiHN37kXMjLwESMAN3VmQZzDdpQ8kDFvC78D9nOUA==","keyid":"SHA256:DhQ8wR5APBvFHLF/+Tc+AYvPOdTpcIDqOhxsBHRwC7U"}],"unpackedSize":103352},"main":"dist/index.js","type":"module","types":"./dist/index.d.ts","engines":{"node":">=22"},"exports":{".":{"types":"./dist/index.d.ts","default":"./dist/index.js"},"./load":{"types":"./dist/load.d.ts","default":"./dist/load.js"}},"scripts":{"lint":"oxlint --config ../../.oxlintrc.json .","build":"tsup","test:bin":"vitest run --project bin --root ../.. --passWithNoTests \"$PWD\"","test:exam":"vitest run --project exam --root ../.. --passWithNoTests \"$PWD\"","test:unit":"vitest run --project unit --root ../.. --passWithNoTests \"$PWD\"","typecheck":"tsc --noEmit"},"_npmUser":{"name":"bayraak","email":"bayraak@gmail.com"},"repository":{"url":"git+https://github.com/microcompanies/geonosis.git","type":"git","directory":"packages/themekit"},"description":"The tokens contract, a variable map that is data, and DTCG in and out — themes as files, never components.","directories":{},"_nodeVersion":"24.16.0","publishConfig":{"access":"public"},"_hasShrinkwrap":false,"_npmOperationalInternal":{"tmp":"tmp/themekit_2.9.0_1789468570080_0.5767189970902094","host":"s3://npm-registry-packages-npm-production"}},"2.10.0":{"name":"@geonosis/themekit","version":"2.10.0","keywords":["design-tokens","dtcg","theme","css-variables","tailwind","figma","monorepo"],"license":"Apache-2.0","_id":"@geonosis/themekit@2.10.0","maintainers":[{"name":"bayraak","email":"bayraak@gmail.com"}],"homepage":"https://github.com/microcompanies/geonosis/tree/main/packages/themekit","bin":{"geonosis-themekit":"bin/geonosis-themekit.mjs"},"dist":{"shasum":"ff7ab61afb3ce58fd1fa01d34248e54e87f477f6","tarball":"https://registry.npmjs.org/@geonosis/themekit/-/themekit-2.10.0.tgz","fileCount":14,"integrity":"sha512-IjlL/LTWlkQ7EEcSQGvOd3LrR6akEobyBXb8aymHrCw+vPMOpUAP80+eruGyIYgZKjpmcQqjS46akiymTIsJPg==","signatures":[{"sig":"MEYCIQCsAdMbgk2YPBxPiHstBGBxTUYzyU1GTGtI568Uzl8gWAIhAMcnEhep/rnKmCl02ctbUQiX+EBjsMTgj2W54OtbD0UL","keyid":"SHA256:DhQ8wR5APBvFHLF/+Tc+AYvPOdTpcIDqOhxsBHRwC7U"},{"sig":"MEUCIQD8mUntY3XBSHkjirfSC+tOL6s9zJD8td7648uUsuVF6QIgR+6CT4RX7DYU6BZYqrnLaMZEl2cWl0RDVRaQBN8/vKs=","keyid":"SHA256:DhQ8wR5APBvFHLF/+Tc+AYvPOdTpcIDqOhxsBHRwC7U"}],"unpackedSize":103364},"main":"dist/index.js","type":"module","types":"./dist/index.d.ts","engines":{"node":">=22"},"exports":{".":{"types":"./dist/index.d.ts","default":"./dist/index.js"},"./load":{"types":"./dist/load.d.ts","default":"./dist/load.js"}},"scripts":{"lint":"oxlint --config ../../.oxlintrc.json .","build":"tsup","test:bin":"vitest run --project bin --root ../.. --passWithNoTests \"$PWD\"","test:exam":"vitest run --project exam --root ../.. --passWithNoTests \"$PWD\"","test:unit":"vitest run --project unit --root ../.. --passWithNoTests \"$PWD\"","typecheck":"tsc --noEmit"},"_npmUser":{"name":"bayraak","email":"bayraak@gmail.com"},"repository":{"url":"git+https://github.com/microcompanies/geonosis.git","type":"git","directory":"packages/themekit"},"description":"The tokens contract, a variable map that is data, and DTCG in and out — themes as files, never components.","directories":{},"_nodeVersion":"24.16.0","publishConfig":{"access":"public"},"_hasShrinkwrap":false,"_npmOperationalInternal":{"tmp":"tmp/themekit_2.10.0_1789489912066_0.9848656336926727","host":"s3://npm-registry-packages-npm-production"}},"2.11.0":{"name":"@geonosis/themekit","version":"2.11.0","keywords":["design-tokens","dtcg","theme","css-variables","tailwind","figma","monorepo"],"license":"Apache-2.0","_id":"@geonosis/themekit@2.11.0","maintainers":[{"name":"bayraak","email":"bayraak@gmail.com"}],"homepage":"https://github.com/microcompanies/geonosis/tree/main/packages/themekit","bin":{"geonosis-themekit":"bin/geonosis-themekit.mjs"},"dist":{"shasum":"1db97d8f8fb0e0c8377d5abfdfc779f6d32c95a7","tarball":"https://registry.npmjs.org/@geonosis/themekit/-/themekit-2.11.0.tgz","fileCount":14,"integrity":"sha512-REsdkvxDxv/K6JyrkyXANtvOPujU7q5lQPjZSyFlNA3yhjlHpNDNk8UJx4LAcZVs73R/UFxBTFBCogaHb4duYQ==","signatures":[{"sig":"MEUCIG1UsdHsox6oFWDVkUR9IjQmekPSqBXuxaXh4PzNoh6XAiEArid7dPIUAOD+cYNAmsnHENfvLRYVdggxXVwaIL4l4Kg=","keyid":"SHA256:DhQ8wR5APBvFHLF/+Tc+AYvPOdTpcIDqOhxsBHRwC7U"},{"sig":"MEUCIAgW3+YMd4iEIeAkkE171ektjAgXNpajNwsHOEOgzioUAiEAj+4Men4q+42dZUKyi0qLK4zvRal6FFhlxpoTGWrHZus=","keyid":"SHA256:DhQ8wR5APBvFHLF/+Tc+AYvPOdTpcIDqOhxsBHRwC7U"}],"unpackedSize":114895},"main":"dist/index.js","type":"module","types":"./dist/index.d.ts","engines":{"node":">=22"},"exports":{".":{"types":"./dist/index.d.ts","default":"./dist/index.js"},"./load":{"types":"./dist/load.d.ts","default":"./dist/load.js"}},"scripts":{"lint":"oxlint --config ../../.oxlintrc.json .","build":"tsx ../../tooling/build-step.ts tsup","test:bin":"vitest run --project bin --root ../.. --passWithNoTests \"$PWD\"","test:exam":"vitest run --project exam --root ../.. --passWithNoTests \"$PWD\"","test:unit":"vitest run --project unit --root ../.. --passWithNoTests \"$PWD\"","typecheck":"tsc --noEmit"},"_npmUser":{"name":"bayraak","email":"bayraak@gmail.com"},"repository":{"url":"git+https://github.com/microcompanies/geonosis.git","type":"git","directory":"packages/themekit"},"description":"The tokens contract, a variable map that is data, and DTCG in and out — themes as files, never components.","directories":{},"_nodeVersion":"24.16.0","publishConfig":{"access":"public"},"_hasShrinkwrap":false,"_npmOperationalInternal":{"tmp":"tmp/themekit_2.11.0_1790271843377_0.061759228915777786","host":"s3://npm-registry-packages-npm-production"}},"2.11.1":{"name":"@geonosis/themekit","version":"2.11.1","keywords":["design-tokens","dtcg","theme","css-variables","tailwind","figma","monorepo"],"license":"Apache-2.0","_id":"@geonosis/themekit@2.11.1","maintainers":[{"name":"bayraak","email":"bayraak@gmail.com"}],"homepage":"https://github.com/microcompanies/geonosis/tree/main/packages/themekit","bin":{"geonosis-themekit":"bin/geonosis-themekit.mjs"},"dist":{"shasum":"bf8cce5e1b2fef15e90eb6a729e62b9b2b6df9a3","tarball":"https://registry.npmjs.org/@geonosis/themekit/-/themekit-2.11.1.tgz","fileCount":14,"integrity":"sha512-vffbobKYEALZjjSXAjU6yUXDCrQ8LVDsjK1cgHa+UV3gfVUTMhHEPKO/VA8llbOFLwzaFWviW+iBVjffAPggGg==","signatures":[{"sig":"MEYCIQD9TfKCxHZqDrei46P8c/VcCaj5EjrjcTUQe+XFn7g0BQIhAKnPS47KjBBOCeDemzsLrrJ1y/vZNIQfcshB0EZRJxQa","keyid":"SHA256:DhQ8wR5APBvFHLF/+Tc+AYvPOdTpcIDqOhxsBHRwC7U"},{"sig":"MEQCICpvQUuQ6lYplcJBXxWbUkX0NkfDn2pitQVDn7IzZwRsAiA7ndX+4cmdDPcqvWHjjgeCNsGcAiP9ai9LpJBEuq9MMw==","keyid":"SHA256:DhQ8wR5APBvFHLF/+Tc+AYvPOdTpcIDqOhxsBHRwC7U"}],"unpackedSize":114906},"main":"dist/index.js","type":"module","types":"./dist/index.d.ts","engines":{"node":">=22"},"exports":{".":{"types":"./dist/index.d.ts","default":"./dist/index.js"},"./load":{"types":"./dist/load.d.ts","default":"./dist/load.js"}},"scripts":{"lint":"oxlint --config ../../.oxlintrc.json .","build":"tsx ../../tooling/build-step.ts tsup","test:bin":"vitest run --project bin --root ../.. --passWithNoTests \"$PWD\"","test:exam":"vitest run --project exam --root ../.. --passWithNoTests \"$PWD\"","test:unit":"vitest run --project unit --root ../.. --passWithNoTests \"$PWD\"","typecheck":"tsc --noEmit"},"_npmUser":{"name":"bayraak","email":"bayraak@gmail.com"},"repository":{"url":"git+https://github.com/microcompanies/geonosis.git","type":"git","directory":"packages/themekit"},"description":"The tokens contract, a variable map that is data, and DTCG in and out — themes as files, never components.","directories":{},"_nodeVersion":"24.16.0","publishConfig":{"access":"public"},"_hasShrinkwrap":false,"_npmOperationalInternal":{"tmp":"tmp/themekit_2.11.1_1790351322923_0.9321833573761984","host":"s3://npm-registry-packages-npm-production"}},"2.12.0":{"name":"@geonosis/themekit","version":"2.12.0","keywords":["design-tokens","dtcg","theme","css-variables","tailwind","figma","monorepo"],"license":"Apache-2.0","_id":"@geonosis/themekit@2.12.0","maintainers":[{"name":"bayraak","email":"bayraak@gmail.com"}],"homepage":"https://github.com/microcompanies/geonosis/tree/main/packages/themekit","bin":{"geonosis-themekit":"bin/geonosis-themekit.mjs"},"dist":{"shasum":"df854f105a0e1b85b9ae646ab97f80b467ddc09c","tarball":"https://registry.npmjs.org/@geonosis/themekit/-/themekit-2.12.0.tgz","fileCount":14,"integrity":"sha512-kV9CGeYHSuNJbDOFdGBuJs//3FbED1qTgKpopQ+bdaryH9qoCQtXnMYFmDbSW3xoj5xn6DwhAAWZOviW4NGXRg==","signatures":[{"sig":"MEUCIQDm0bYeq0In8fYcof0up1LJBG8NQ6pzJ8UjmDXACvTrcQIgNYJEaKEIo9gDI1BUrWGAR3/YM46JsY+3IpyEm8hfMYo=","keyid":"SHA256:DhQ8wR5APBvFHLF/+Tc+AYvPOdTpcIDqOhxsBHRwC7U"},{"sig":"MEQCIBKQ3MIYNHqpZC/sRq8AXdpDraI+r49tu6cmpg0d3p8fAiAadeafJY/Uw80eQTryE0tH5Xq+H6KmzrAabpNCObLOtQ==","keyid":"SHA256:DhQ8wR5APBvFHLF/+Tc+AYvPOdTpcIDqOhxsBHRwC7U"}],"unpackedSize":114917},"main":"dist/index.js","type":"module","types":"./dist/index.d.ts","engines":{"node":">=22"},"exports":{".":{"types":"./dist/index.d.ts","default":"./dist/index.js"},"./load":{"types":"./dist/load.d.ts","default":"./dist/load.js"}},"scripts":{"lint":"oxlint --config ../../.oxlintrc.json .","build":"tsx ../../tooling/build-step.ts tsup","test:bin":"vitest run --project bin --root ../.. --passWithNoTests \"$PWD\"","test:exam":"vitest run --project exam --root ../.. --passWithNoTests \"$PWD\"","test:unit":"vitest run --project unit --root ../.. --passWithNoTests \"$PWD\"","typecheck":"tsc --noEmit"},"_npmUser":{"name":"bayraak","email":"bayraak@gmail.com"},"repository":{"url":"git+https://github.com/microcompanies/geonosis.git","type":"git","directory":"packages/themekit"},"description":"The tokens contract, a variable map that is data, and DTCG in and out — themes as files, never components.","directories":{},"_nodeVersion":"24.16.0","publishConfig":{"access":"public"},"_hasShrinkwrap":false,"_npmOperationalInternal":{"tmp":"tmp/themekit_2.12.0_1790356422268_0.7419371837985553","host":"s3://npm-registry-packages-npm-production"}},"2.13.0":{"name":"@geonosis/themekit","version":"2.13.0","keywords":["design-tokens","dtcg","theme","css-variables","tailwind","figma","monorepo"],"license":"Apache-2.0","_id":"@geonosis/themekit@2.13.0","maintainers":[{"name":"bayraak","email":"bayraak@gmail.com"}],"homepage":"https://github.com/microcompanies/geonosis/tree/main/packages/themekit","bin":{"geonosis-themekit":"bin/geonosis-themekit.mjs"},"dist":{"shasum":"fc86f311594fec67aa24ca7daa72139430e24db9","tarball":"https://registry.npmjs.org/@geonosis/themekit/-/themekit-2.13.0.tgz","fileCount":14,"integrity":"sha512-Q8kiCgFiTiCx5QQi4sBNCI0jV7hl1kai2XE8i8ZMvunODbd1YYswXZaM+J5k/2hXYiv4HvlNZSuSGA/gMFX7oQ==","signatures":[{"sig":"MEQCIDYu+bI5/newkdTfONBw3UhHwbiAkrYvV949V3IX9+wNAiAjJRfqemfF6sBeJep0XGct337A1+GoYgw+Uj3ZEfJB+w==","keyid":"SHA256:DhQ8wR5APBvFHLF/+Tc+AYvPOdTpcIDqOhxsBHRwC7U"},{"sig":"MEYCIQCRjsLYEXcszeJG4ICKbEmeODygTEBEb+azVqcDpfnZDwIhANtR/k95+IjLV1+evkptbaTaKz4qN7zCsS6MPDDunE7t","keyid":"SHA256:DhQ8wR5APBvFHLF/+Tc+AYvPOdTpcIDqOhxsBHRwC7U"}],"unpackedSize":106266},"main":"dist/index.js","type":"module","types":"./dist/index.d.ts","engines":{"node":">=22"},"exports":{".":{"types":"./dist/index.d.ts","default":"./dist/index.js"},"./load":{"types":"./dist/load.d.ts","default":"./dist/load.js"}},"scripts":{"lint":"oxlint --config ../../.oxlintrc.json .","build":"tsx ../../tooling/build-step.ts tsup","test:bin":"vitest run --project bin --root ../.. --passWithNoTests \"$PWD\"","test:exam":"vitest run --project exam --root ../.. --passWithNoTests \"$PWD\"","test:unit":"vitest run --project unit --root ../.. --passWithNoTests \"$PWD\"","typecheck":"tsc --noEmit"},"_npmUser":{"name":"bayraak","email":"bayraak@gmail.com"},"repository":{"url":"git+https://github.com/microcompanies/geonosis.git","type":"git","directory":"packages/themekit"},"description":"The tokens contract, a variable map that is data, and DTCG in and out — themes as files, never components.","directories":{},"_nodeVersion":"24.16.0","publishConfig":{"access":"public"},"_hasShrinkwrap":false,"_npmOperationalInternal":{"tmp":"tmp/themekit_2.13.0_1790432638357_0.9569684674383416","host":"s3://npm-registry-packages-npm-production"}},"3.0.0":{"_id":"@geonosis/themekit@3.0.0","bin":{"geonosis-themekit":"bin/geonosis-themekit.mjs"},"dist":{"shasum":"fe9a9511838bc3d50506a8536d80c0c1e5c4fb55","tarball":"https://registry.npmjs.org/@geonosis/themekit/-/themekit-3.0.0.tgz","fileCount":22,"integrity":"sha512-8+d+qDIwjA2CdkMSd2Pj1DJvUz1xABI1InzNa+cUIyXoeyEMCBsTMtynza/2MmWawSvyQdUKdWHdUA9vWVVmzQ==","signatures":[{"sig":"MEQCIA1W2t5qQ0ucIPJPQpF3zdXHzvGZqFSohuZu3qZCFDxWAiAmo8684mb3wDyovRlygPz1/JW9K5IJpnYu8+TjZ0TpcA==","keyid":"SHA256:DhQ8wR5APBvFHLF/+Tc+AYvPOdTpcIDqOhxsBHRwC7U"},{"keyid":"SHA256:DhQ8wR5APBvFHLF/+Tc+AYvPOdTpcIDqOhxsBHRwC7U","sig":"MEUCIQDPa4s6ueSnJRa0vzbextaWT8ubxlZFBx8sKDW2sF95LAIgJe2/vrmuQ1Cp68+YPM5HZaTUkCOLSL2AfOYH98vEQ2Q="}],"unpackedSize":108730},"main":"dist/index.js","name":"@geonosis/themekit","type":"module","types":"./dist/index.d.ts","engines":{"bun":"^1.4.2","node":">=22"},"exports":{".":{"types":"./dist/index.d.ts","default":"./dist/index.js"},"./load":{"types":"./dist/load.d.ts","default":"./dist/load.js"}},"license":"Apache-2.0","scripts":{"lint":"oxlint --config ../../.oxlintrc.json .","build":"bun ../../tooling/build-step.ts bun ../../tooling/bundle.ts","test:bin":"vitest run --project bin --root ../.. --passWithNoTests \"$PWD\"","test:exam":"vitest run --project exam --root ../.. --passWithNoTests \"$PWD\"","test:unit":"vitest run --project unit --root ../.. --passWithNoTests \"$PWD\"","typecheck":"tsc --noEmit"},"version":"3.0.0","_npmUser":{"name":"bayraak","email":"bayraak@gmail.com"},"homepage":"https://github.com/microcompanies/geonosis/tree/main/packages/themekit","keywords":["design-tokens","dtcg","theme","css-variables","tailwind","figma","monorepo"],"repository":{"url":"git+https://github.com/microcompanies/geonosis.git","type":"git","directory":"packages/themekit"},"description":"The tokens contract, a variable map that is data, and DTCG in and out — themes as files, never components.","directories":{},"maintainers":[{"name":"bayraak","email":"bayraak@gmail.com"}],"publishConfig":{"access":"public"},"_hasShrinkwrap":false,"_npmOperationalInternal":{"host":"s3://npm-registry-packages-npm-production","tmp":"tmp/themekit_3.0.0_1790529070308_0.8215905050560879"}}},"time":{"created":"2026-08-30T16:13:00.550Z","modified":"2026-09-27T17:11:10.574Z","1.0.0":"2026-08-30T16:13:00.966Z","1.1.0":"2026-08-30T18:34:12.332Z","1.2.0":"2026-08-30T19:43:58.535Z","1.3.0":"2026-09-01T09:25:59.304Z","1.4.0":"2026-09-01T13:21:47.990Z","2.0.0":"2026-09-02T06:55:52.454Z","2.1.0":"2026-09-02T13:52:38.469Z","2.2.0":"2026-09-02T17:20:00.752Z","2.3.0":"2026-09-03T07:18:48.275Z","2.3.1":"2026-09-03T11:34:59.447Z","2.4.2":"2026-09-03T14:13:30.374Z","2.4.3":"2026-09-04T23:53:21.435Z","2.5.0":"2026-09-05T08:03:13.016Z","2.5.1":"2026-09-06T09:09:16.388Z","2.5.2":"2026-09-06T13:27:55.665Z","2.5.3":"2026-09-06T16:37:30.863Z","2.6.0":"2026-09-07T10:15:51.839Z","2.6.1":"2026-09-07T17:56:56.882Z","2.7.0":"2026-09-12T10:36:26.670Z","2.8.0":"2026-09-14T21:30:56.833Z","2.9.0":"2026-09-15T10:36:10.175Z","2.10.0":"2026-09-15T16:31:52.162Z","2.11.0":"2026-09-24T17:44:03.457Z","2.11.1":"2026-09-25T15:48:43.085Z","2.12.0":"2026-09-25T17:13:42.368Z","2.13.0":"2026-09-26T14:23:58.445Z","3.0.0":"2026-09-27T17:11:10.390Z"},"license":"Apache-2.0","homepage":"https://github.com/microcompanies/geonosis/tree/main/packages/themekit","keywords":["design-tokens","dtcg","theme","css-variables","tailwind","figma","monorepo"],"repository":{"url":"git+https://github.com/microcompanies/geonosis.git","type":"git","directory":"packages/themekit"},"description":"The tokens contract, a variable map that is data, and DTCG in and out — themes as files, never components.","maintainers":[{"name":"bayraak","email":"bayraak@gmail.com"}],"readme":"# `@geonosis/themekit`\n\nThe tokens contract, a variable map that is data, and DTCG in and out. **Themes are files; the\ncomponents are yours** (D-010) — nothing here renders, and nothing here is React.\n\nThe theme contract is a Medusa storefront's, generalised, measured first in\n[`docs/themekit-inventory-2026-08-30.md`](../../docs/themekit-inventory-2026-08-30.md). Zero runtime\ndependencies.\n\n## The gate this package is held to\n\n`src/byte-identity.test.ts` runs **a storefront UI kit's own compiler on a theme authored for it**, both\nin `src/__fixtures__`, and requires the kit's output to match it variable for\nvariable, value for value, **in order** — 36 custom properties, three of them derived\n`color-mix()` strings, two of them camelCase escape-hatch keys.\n\nNot a recorded snapshot. A snapshot proves the kit still agrees with itself; this proves it agrees\nwith the implementation it replaces, and it goes red the day the two diverge.\n\n## The three inputs\n\n```ts\nimport { compile, defineTheme } from '@geonosis/themekit'\n\nconst theme = defineTheme({\n  id: 'example-storefront',\n  name: 'Example Storefront',\n  colors: { primary: 'oklch(0.91 0.17 202)', onPrimary: 'oklch(0.22 0.02 240)', /* … */ },\n  fonts: { body: \"'Example Sans', Helvetica, Arial, sans-serif\", display: \"'Example Display', Georgia, serif\" },\n  radii: { none: '0px', sm: '4px', md: '8px', lg: '16px', full: '9999px' },\n  shadows: { level1: '0 1px 5px rgb(0 0 0 / 0.12)' },\n  extra: { brandFade: 'linear-gradient(100deg, …)' },\n})\n```\n\n1. **The theme** — the values. Colour roles are a named set (they are design-system vocabulary, not\n   any repo's); `fonts`, `radii` and `shadows` are open maps, because font roles are data and\n   an app may have no radii at all. Anything the contract does not model goes in `extra`.\n2. **The emission map** — *which* custom properties those values compile to, in what order. This is\n   the part that is one repo's stylesheet, so it is data and never a default (law 6):\n\n   ```ts\n   compile(theme, {\n     emit: [\n       { role: 'colors.primary', variable: '--mc-primary' },\n       { mix: { role: 'colors.primary', amount: '85%', with: '#000000' }, variable: '--mc-primary-hover' },\n       { each: 'extra', prefix: '--mc-' },\n     ],\n   })\n   ```\n\n   Three entry kinds: `role` copies a value, `mix` writes\n   `color-mix(in <space>, <value> <amount>, <with>)`, `each` writes one variable per key of an open\n   map, **verbatim** — `--mc-brandFade` stays camelCase, because it is what the stylesheet already\n   ships is reading.\n\n   Two behaviours that look like details and are not: an emission whose role resolves to nothing is\n   **skipped** (that is how `--accent` stays conditional, with no special case — and why nothing\n   ever emits `--accent: ;`), and a later entry naming an earlier variable replaces its **value**\n   while keeping its **position** (that is how `extra` overrides a derived colour).\n\n   `defaultEmission('--theme-')` is what a repo that has declared nothing gets: one variable per\n   role, complete, and nobody's house style.\n3. **The `themeBlock` namer** — Tailwind v4 has no config file, so a utility exists because a\n   variable exists. Hand it a function and it generates the `@theme inline` block from the same\n   emission list, so a variable can never be mapped that was never written.\n\n## The four outputs\n\n| | what it is | who reads it |\n|---|---|---|\n| `cssVariables` | `Record<'--…', string>`, in emission order | spread straight into a `style` prop |\n| `css` | `<selector> { … }`, default `:root` | a stylesheet, a `<style>` tag |\n| `themeBlock` | `@theme inline { --color-…: var(--…); }` | Tailwind v4 |\n| `plain` | role path → value: `plain['colors.primary']` | react-email inline styles, `<svg fill>`, canvas |\n| `object` | the theme, unchanged | a switcher, a logo lookup |\n\n`plain` is keyed by **role**, not by variable, on purpose: a mail client that drops `var()` needs\nthe value, and which variable a repo calls it by is not its business. It also carries roles no\nvariable was emitted for — a Medusa storefront's map emits nothing for `success` or `warning`, and an email that\nwants the success green must still be able to ask.\n\n## DTCG, and the one place this deviates\n\n`toDtcg(theme)` and `fromDtcg(document)`. Groups, `$value`, `$type`, `$extensions` — the Design\nTokens Community Group draft, with **one deliberate deviation**: `$value` is the **CSS string,\nexactly as authored**, where the draft wants an object.\n\nThe draft types a colour as `{ colorSpace, components }`, a dimension as `{ value, unit }`, a shadow\nas five named fields. Three kinds of real value cannot become those objects at all:\n\n- `var(--mc-gray-c)` has no colour space — and a DTCG `{alias}` is not a substitute, because an\n  alias resolves inside the file while `var()` resolves in the browser, and that late binding is the\n  whole point of a palette layer;\n- `color-mix(in srgb, … 85%, #000000)` is a computation, not a colour;\n- `0 1px 5px rgb(0 0 0 / 0.12)` is a *spelling* — parse it into five fields, print it back, and you\n  have the same colour and different bytes.\n\nDifferent bytes is the whole problem: the gate on this extraction is that a consumer's stylesheet is\nunchanged afterwards, so a format that re-spells a value on the way through is not an interchange,\nit is a rewrite.\n\nSo the deviation is **declared and measured**, never assumed:\n\n```ts\nvalidateDtcg(document)                    // is it this profile? errors + `lossy`\nvalidateDtcg(document, { strict: true })  // which values could the DRAFT not hold?\n```\n\n`strict` names them one by one — the extension the draft would need, per token, instead of a\nparagraph in a README nobody diffs. `lossy` names what a round trip through the contract would drop\n(today: `$description`, which the contract has nowhere to put), so nothing evaporates quietly.\n\nTwo laws hold and are tested: `toDtcg(fromDtcg(x))` is `x`, and a theme that has been through\n`JSON.parse(JSON.stringify(toDtcg(…)))` still compiles byte-identically. Brand identity (`id`,\n`name`) rides in the root group's `$extensions` under `com.microcompanies.geonosis`, because it is\nmetadata with no `$value` — a logo, likewise, belongs in `brand.json` beside the tokens and not in\nthe token file.\n\n## The registry\n\n```ts\nimport { compile, loadThemekit } from '@geonosis/themekit'\n\nconst kit = loadThemekit('themekits/example-storefront', { pinned: '1.0.0' })\nconst { css } = compile(kit.theme, { emit: kit.emit, selector: `[data-brand=\"${kit.brand.id}\"]` })\n```\n\nA themekit is a **directory** — `themekit.json` (name, version, `complete`, which map to compile\nthrough), `theme.tokens.json`, `brand.json`, `CHANGELOG.md`. This package ships none of them\n(`files: [\"dist\"]`), so installing a tokens compiler never installs somebody else's palette; see\n[`themekits/`](../../themekits/README.md) for why that follows from D-010, D-026 and D-027.\n\n`{ pinned }` is what makes a bump **invisible until the consumer moves the pin**: a directory whose\nversion has moved is refused, naming both. A pin nobody checks is a comment.\n\n`loadThemekit` validates and refuses; it never repairs. It stops on a directory that is not a\nthemekit, a manifest with no version, tokens that are not this profile (naming the token), a\nmanifest that claims `complete` while a required role is empty, and a JSON file that will not parse\n— read as `{}`, that last one is a themekit that compiles to nothing and a page that renders\nunstyled with nothing in the log.\n\nAn incomplete themekit is allowed and is reported: `missingRoles` names each required role the theme\ndoes not fill. `themekits/example-app` is one — two colour roles out of fourteen, the shape of an app\nthat styles the rest from Tailwind classes directly, and inventing its `primary` is the one thing a\nregistry must never do.\n\n## Figma variables in\n\n```ts\nimport { fromFigmaVariables } from '@geonosis/themekit'\n\nconst { themes, unmapped, unsupported } = fromFigmaVariables(payload, {\n  map: { 'color/primary': 'colors.primary', 'radius/md': 'radii.md' },\n  floatUnit: 'px',\n})\n```\n\nOver the shape `GET /v1/files/:key/variables/local` documents. **Modes become themes**: a file's\n`Semantic` collection with Light and Dark yields two DTCG documents, each of which validates and\ncompiles. Pulling the payload is your step — this package makes no network calls.\n\n**Aliases are resolved**, which is most of the work. A real Figma file is a `Primitives` collection\nnobody themes and a `Semantic` one whose every variable aliases into it; an importer that did not\nfollow those would write `VariableID:1` where a colour goes and — worse — every mode would come out\nidentical, because an id does not change per mode. The chain is followed in the mode being imported,\nfalling back to a collection's own default when it does not have that mode (`Primitives` has never\nheard of `Dark`), and a cycle is reported rather than run.\n\n**Nothing is dropped quietly.** `map` is the designer's vocabulary meeting the repo's, and it is\ndata you pass (law 6). A variable nobody mapped goes into `extra` and is listed in `unmapped`. A\nvariable that cannot become a token at all is listed in `unsupported`, with the reason:\n\n- a `BOOLEAN` is not a design token;\n- a `FLOAT` carries **no unit** — Figma has `8` and nothing anywhere says px or rem. Guessing px is\n  right most of the time and produces, the rest of the time, a layout nobody can trace to an import.\n  Pass `floatUnit` and it imports;\n- a `STRING` mapped where a colour goes, named with the variable rather than surfacing later as an\n  anonymous validation error.\n\n## The migration, for a repo that has a theme object already\n\n```ts\nconst asTheme = (brand: BrandTheme): Theme => ({\n  ...brand,\n  fonts: { ...brand.fonts },\n  radii: { ...brand.radii },\n  shadows: { ...brand.shadows },\n})\n```\n\nThat is all of it, and the spreads are not ceremony: this contract widened those three to open maps,\nand TypeScript will not let an `interface` stand in for a `Record<string, string>` — an interface can\nbe augmented later, so it carries no implicit index signature. Spreading copies strings, so the\ncompiled output does not move.\n\n## The migration, for a repo that has only a stylesheet\n\n```bash\nnpx geonosis-themekit ingest --from <the stylesheet> --out themekits/<name>\nnpx geonosis-themekit drift  --from <the stylesheet> --kit themekits/<name>\n```\n\n`ingest` reads every custom property one selector declares and writes the four themekit files.\n`drift` is the gate: **zero, or a refusal naming the variable.** It is what a migration nobody may\nrisk is allowed to stand on, and it is a gate rather than a review because a stylesheet is where a\nwrong value is invisible until somebody looks at the page.\n\n### Why the gate compares declarations and not pixels\n\nBecause the compiled block is the source block. A value is stored exactly as authored and never\nre-spelled, so a themekit that emits the same declarations in the same order produces a\nbyte-identical `:root { … }` — and two byte-identical blocks render identically without anyone\nopening a browser.\n\nA pixel comparison would be **weaker here, not stronger**, and a Workers + D1 app's sheet is where that is\nmeasured rather than argued: across the 19 declarations its three theme selectors carry, **10 are\n`oklch()`** and the rest are `rgb()` and `#hex`. A rasteriser inside this package\nwould need a colour library to resolve those, which is the dependency the byte-identity gate was\nbuilt to do without; and every value it could not resolve would compare *equal* in the frame,\nblind exactly where a migration is riskiest.\n\nSo a one-unit move is a refusal, quoted from the real run over a Workers + D1 app's stylesheet:\n\n```\ngeonosis-themekit: --color-stripe-pattern: \"#dbdbdb\" in the stylesheet, \"#dbdbdc\" from the themekit\ngeonosis-themekit: 1 drift over 7 declaration(s) of :root — the themekit does not render what globals.css renders.\n```\n\n### `--roles`, and what happens without it\n\n```json\n{ \"--color-page\": \"colors.background\", \"--color-container\": \"colors.surface\" }\n```\n\nA variable a repo has not mapped lands in `extra` under its own name minus the leading dashes, which\nthe contract keeps verbatim; the emission map names the same custom property back. There is no\ndefault mapping and there never will be one: which role `--color-page` plays is a claim only\na Workers + D1 app can make (law 6). Without a map the migration is still worth running — the tokens become\nDTCG, the drift becomes a gate — and `ingest` prints the required roles nobody filled.\n\n### What it refuses rather than drops\n\nThe contract stores one non-empty string per token, so four things are named and nothing is written:\n\n| refused | why the contract has no slot |\n|---|---|\n| `--x: ;` | an empty value; `''` is how the contract spells *absent*, so storing it would delete the token |\n| `--x` declared twice in one selector | one slot, two values |\n| `@media (…) { :root { --x: … } }` where `--x` was taken | a condition is not a slot; ingesting one half silently drops the other |\n| `--x` mapped onto a path the contract has no role for | the map is the repo's, and a typo in it would compile a complete set of variables under wrong names |\n\nOnly blocks with a selector are read. An at-rule's own declarations — Tailwind's `@theme`,\n`@property`, `@font-face` — are not one selector's tokens and are not ingested.\n\n### Two selectors are two themekits\n\n```bash\nnpx geonosis-themekit ingest --from globals.css --out themekits/night --selector html.night\n```\n\nOne selector is one theme, because a theme is one set of values. A consumer's sheet measured here\nholds three, and all three ingest and gate at 0 drift on their own.\n\n## Adoption status — **NOT adopted** (D-027)\n\nA package is DONE when every consumer depends on the published version and has deleted its copy.\nNeither has, yet:\n\n| consumer | today | the five-line migration |\n|---|---|---|\n| **a repo with a theme object** | its own contract and `defineTheme` | (1) depend on `@geonosis/themekit`; (2) `const asTheme = (b: BrandTheme): Theme => ({ ...b, fonts: { ...b.fonts }, radii: { ...b.radii }, shadows: { ...b.shadows } })`; (3) `const kit = loadThemekit('themekits/<name>', { pinned: '1.0.0' })`; (4) `themeToCssVars(t)` → `compile(asTheme(t), { emit: kit.emit }).cssVariables`; (5) delete the contract and the factory, keep the React provider — it is React and stays. The stylesheet is untouched. |\n| **a repo with only a stylesheet** | no theme object at all | (1) depend on `@geonosis/themekit`; (2) `geonosis-themekit ingest --from <the stylesheet> --out themekits/<name>`, measured at 0 drift on 2026-09-02; (3) read `kit.missingRoles` — fourteen with no `--roles` map, and they are honest; (4) `compile(kit.theme, { emit: kit.emit })`; (5) nothing to delete. Each dark selector is its own `--selector` ingest; a mode axis inside one theme is still not in the contract. |\n\nThe byte-identity evidence for step (4) is [`proofs/022-W6-byte-identity`](../../proofs/022-W6-byte-identity/README.md);\nwhat the two conformance rules find in each tree, read-only, is\n[`proofs/022-W6-consumers`](../../proofs/022-W6-consumers/README.md).\n\n## What is deliberately not here\n\n- **No components, no React, no provider.** D-010: the factory stores themes and the contract, never\n  components. A provider is 70 lines a consumer writes against its own framework.\n- **No browser and no capture.** Per-theme visual baselines are `@geonosis/visual-diff`'s job, and\n  what to capture is yours. The recipe — one baseline per `<surface>@<brand>` per breakpoint, at\n  `threshold: 0`, with the compiled CSS injected rather than re-implemented — is in\n  [`docs/themekit-visual-and-switcher.md`](../../docs/themekit-visual-and-switcher.md), together\n  with the three non-obvious parts of a Storybook switcher (the portal/`document.body` mirror above\n  all).\n- **No brand names, no token names, no font roles as defaults.** They are data in\n  `themekits/<brand>/` or options. The default emission map is deliberately generic and deliberately\n  not a Medusa storefront's.\n- **No dependencies.** The moment this package grew a colour library to parse `oklch()`, it would\n  also grow that library's opinion about how to print one back — the byte-identity gate lost to a\n  transitive dependency.\n","readmeFilename":""}