{"_id":"@odla-ai/ui","_rev":"31-0a2f8b57b386f6c07567fd11f19af639","name":"@odla-ai/ui","dist-tags":{"latest":"0.20.0"},"versions":{"0.1.0":{"name":"@odla-ai/ui","version":"0.1.0","keywords":["odla","design-system","css","design-tokens","themes","components","react","preact"],"license":"MIT","_id":"@odla-ai/ui@0.1.0","maintainers":[{"name":"coryondrejka","email":"cory.ondrejka@gmail.com"}],"dist":{"shasum":"4aa3e3b803079c03236865bed521686512109396","tarball":"https://registry.npmjs.org/@odla-ai/ui/-/ui-0.1.0.tgz","fileCount":43,"integrity":"sha512-Owc1WAFne7Z5KixAZNMjZpJfJQPMvj9sxp+AcGRgQbrLiWV9ob/0iMnXRp7ZLNdbOzuM/LV49gDG82GXD8c0ew==","signatures":[{"sig":"MEUCIGSv6B9iY5t4OrKQHnuTmxU7fLVLtmq3b8Aauacu0PoEAiEAlqBGCnzcsPVbZnktU1kDSezhOedjHi+SxJFrmbgHi90=","keyid":"SHA256:DhQ8wR5APBvFHLF/+Tc+AYvPOdTpcIDqOhxsBHRwC7U"}],"unpackedSize":160826},"type":"module","engines":{"node":">=20"},"exports":{".":"./js/index.js","./js/*":"./js/*","./css/*":"./css/*","./fonts/*":"./fonts/*","./themes/*":"./themes/*","./index.css":"./index.css","./components":{"types":"./dist/index.d.ts","import":"./dist/index.js"},"./odla-ui.css":"./odla-ui.css","./package.json":"./package.json"},"gitHead":"bc45a66eb384d83793241dd314650abb2cb649f7","scripts":{"test":"npm run build && node --test --test-reporter=spec","build":"tsup","clean":"rm -rf dist","gen:css":"node scripts/gen-css.mjs","typecheck":"tsc --noEmit","prepublishOnly":"npm run build && npm test"},"_npmUser":{"name":"coryondrejka","email":"cory.ondrejka@gmail.com"},"_npmVersion":"11.6.2","description":"The odla design system: semantic CSS design tokens, five themes (paper, juniper, salt, chalk, clay), class-scoped component styles, canvas chart helpers, and optional React/Preact form components. CSS and JS helpers ship as source; only /components is com","directories":{},"sideEffects":["*.css"],"_nodeVersion":"24.13.0","publishConfig":{"access":"public"},"_hasShrinkwrap":false,"devDependencies":{"tsup":"^8.3.0","react":"^19.2.7","react-dom":"^19.2.7","typescript":"^6.0.3"},"peerDependencies":{"react":">=18"},"peerDependenciesMeta":{"react":{"optional":true}},"_npmOperationalInternal":{"tmp":"tmp/ui_0.1.0_1783180617919_0.5465866502561838","host":"s3://npm-registry-packages-npm-production"}},"0.1.1":{"name":"@odla-ai/ui","version":"0.1.1","keywords":["odla","design-system","css","design-tokens","themes","components","react","preact"],"license":"MIT","_id":"@odla-ai/ui@0.1.1","maintainers":[{"name":"coryondrejka","email":"cory.ondrejka@gmail.com"}],"dist":{"shasum":"6273455a0c991d2389b863c6828d666c57a314c4","tarball":"https://registry.npmjs.org/@odla-ai/ui/-/ui-0.1.1.tgz","fileCount":48,"integrity":"sha512-L0X1pLTP37Y6hAW74vYe2hQa7Sj+FHiwLRtfJUCa8NkPRPbxpoA8K8QxhJ836VD3iwU9bF2YEXNo5UzMHWpmUA==","signatures":[{"sig":"MEUCIGWB96NxwEjZwbNRburEZLhlFU7zLhIXI2fokrtyfZS5AiEAirc7LDABUDf7xTsNdqdubYFy52eU+U3fH4NukV+d8xQ=","keyid":"SHA256:DhQ8wR5APBvFHLF/+Tc+AYvPOdTpcIDqOhxsBHRwC7U"}],"unpackedSize":175883},"type":"module","engines":{"node":">=20"},"exports":{".":"./js/index.js","./js/*":"./js/*","./css/*":"./css/*","./fonts/*":"./fonts/*","./themes/*":"./themes/*","./index.css":"./index.css","./components":{"types":"./dist/index.d.ts","import":"./dist/index.js"},"./odla-ui.css":"./odla-ui.css","./package.json":"./package.json"},"gitHead":"355032a5006f08a0e664a7256c2ffdb811754440","scripts":{"test":"npm run build && node --test --test-reporter=spec","build":"tsup","clean":"rm -rf dist","gen:css":"node scripts/gen-css.mjs","typecheck":"tsc --noEmit","prepublishOnly":"npm run build && npm test"},"_npmUser":{"name":"coryondrejka","email":"cory.ondrejka@gmail.com"},"_npmVersion":"11.6.2","description":"The odla design system: semantic CSS design tokens, five themes (paper, juniper, salt, chalk, clay), class-scoped component styles, canvas chart helpers, and optional React/Preact form components. CSS and JS helpers ship as source; only /components is com","directories":{},"sideEffects":["*.css"],"_nodeVersion":"24.13.0","publishConfig":{"access":"public"},"_hasShrinkwrap":false,"devDependencies":{"tsup":"^8.3.0","react":"^19.2.7","react-dom":"^19.2.7","typescript":"^6.0.3"},"peerDependencies":{"react":">=18"},"peerDependenciesMeta":{"react":{"optional":true}},"_npmOperationalInternal":{"tmp":"tmp/ui_0.1.1_1783190147641_0.8650563360338894","host":"s3://npm-registry-packages-npm-production"}},"0.1.2":{"name":"@odla-ai/ui","version":"0.1.2","keywords":["odla","design-system","css","design-tokens","themes","components","react","preact"],"license":"MIT","_id":"@odla-ai/ui@0.1.2","maintainers":[{"name":"coryondrejka","email":"cory.ondrejka@gmail.com"}],"dist":{"shasum":"0f2807e98da5010dc4bff2facf9c88573ea8b640","tarball":"https://registry.npmjs.org/@odla-ai/ui/-/ui-0.1.2.tgz","fileCount":48,"integrity":"sha512-C7Dx2DvotVtWwjFuzxgoKHNFlF/dwA1Ea3PyWlFWhdzQw3tYhpbpE6Za4yxNogF8GH+1UL+E7hpt+zGLOgYBNw==","signatures":[{"sig":"MEUCIDRg4LUCz8E3f4rcC0kwDreWwisuJV+sn9XAqYd95tIYAiEAkAkxIkEoWefu/skmnSAI73jI0jH7lY5SDOQaYnyugII=","keyid":"SHA256:DhQ8wR5APBvFHLF/+Tc+AYvPOdTpcIDqOhxsBHRwC7U"}],"unpackedSize":176525},"type":"module","engines":{"node":">=20"},"exports":{".":"./js/index.js","./js/*":"./js/*","./css/*":"./css/*","./fonts/*":"./fonts/*","./themes/*":"./themes/*","./index.css":"./index.css","./components":{"types":"./dist/index.d.ts","import":"./dist/index.js"},"./odla-ui.css":"./odla-ui.css","./package.json":"./package.json"},"gitHead":"e03597f53c249eacb4402b9c585531ceb995252b","scripts":{"test":"npm run build && node --test --test-reporter=spec","build":"tsup","clean":"rm -rf dist","gen:css":"node scripts/gen-css.mjs","typecheck":"tsc --noEmit","prepublishOnly":"npm run build && npm test"},"_npmUser":{"name":"coryondrejka","email":"cory.ondrejka@gmail.com"},"_npmVersion":"11.6.2","description":"The odla design system: semantic CSS design tokens, five themes (paper, juniper, salt, chalk, clay), class-scoped component styles, canvas chart helpers, and optional React/Preact form components. CSS and JS helpers ship as source; only /components is com","directories":{},"sideEffects":["*.css"],"_nodeVersion":"24.13.0","publishConfig":{"access":"public"},"_hasShrinkwrap":false,"devDependencies":{"tsup":"^8.3.0","react":"^19.2.7","react-dom":"^19.2.7","typescript":"^6.0.3"},"peerDependencies":{"react":">=18"},"peerDependenciesMeta":{"react":{"optional":true}},"_npmOperationalInternal":{"tmp":"tmp/ui_0.1.2_1783192619193_0.5769938359516991","host":"s3://npm-registry-packages-npm-production"}},"0.2.0":{"name":"@odla-ai/ui","version":"0.2.0","keywords":["odla","design-system","css","design-tokens","themes","components","react","preact"],"license":"MIT","_id":"@odla-ai/ui@0.2.0","maintainers":[{"name":"coryondrejka","email":"cory.ondrejka@gmail.com"}],"dist":{"shasum":"650eebd23154753d9bcee4565cd63c04dcc3b4a5","tarball":"https://registry.npmjs.org/@odla-ai/ui/-/ui-0.2.0.tgz","fileCount":51,"integrity":"sha512-RRD+XSfu9dvfQ3naNEld/O3EXaH3OwKQ5q7jvSVmX9QTiYHd3dS446Zpv6L8qlxodMvSGgba4euZl9GtJN1avQ==","signatures":[{"sig":"MEQCIHAOXfYHd5uv+4MMadGbRSYfusMa20kytk6tWYhXFcmQAiB/KR1YKRFBb3M/TcYAStcAm73jic5yOwpMXJhtcFHrLg==","keyid":"SHA256:DhQ8wR5APBvFHLF/+Tc+AYvPOdTpcIDqOhxsBHRwC7U"}],"unpackedSize":191005},"type":"module","engines":{"node":">=20"},"exports":{".":"./js/index.js","./js/*":"./js/*","./css/*":"./css/*","./fonts/*":"./fonts/*","./themes/*":"./themes/*","./index.css":"./index.css","./components":{"types":"./dist/index.d.ts","import":"./dist/index.js"},"./odla-ui.css":"./odla-ui.css","./package.json":"./package.json"},"gitHead":"d28d64caafa145e5b47377ab60aca233d2dd9d3d","scripts":{"test":"npm run build && node --test --test-reporter=spec","build":"tsup","clean":"rm -rf dist","gen:css":"node scripts/gen-css.mjs","typecheck":"tsc --noEmit","prepublishOnly":"npm run build && npm test"},"_npmUser":{"name":"coryondrejka","email":"cory.ondrejka@gmail.com"},"_npmVersion":"11.6.2","description":"The odla design system: semantic CSS design tokens, five themes (paper, juniper, salt, chalk, clay), class-scoped component styles, canvas chart helpers, and optional React/Preact form components. CSS and JS helpers ship as source; only /components is com","directories":{},"sideEffects":["*.css"],"_nodeVersion":"24.13.0","publishConfig":{"access":"public"},"_hasShrinkwrap":false,"devDependencies":{"tsup":"^8.3.0","react":"^19.2.7","react-dom":"^19.2.7","typescript":"^6.0.3"},"peerDependencies":{"react":">=18"},"peerDependenciesMeta":{"react":{"optional":true}},"_npmOperationalInternal":{"tmp":"tmp/ui_0.2.0_1783221807460_0.5144288276221705","host":"s3://npm-registry-packages-npm-production"}},"0.2.1":{"name":"@odla-ai/ui","version":"0.2.1","keywords":["odla","design-system","css","design-tokens","themes","components","react","preact"],"license":"MIT","_id":"@odla-ai/ui@0.2.1","maintainers":[{"name":"coryondrejka","email":"cory.ondrejka@gmail.com"}],"dist":{"shasum":"5db1cea0f97293a59fd09c6f74f07df6674bacd3","tarball":"https://registry.npmjs.org/@odla-ai/ui/-/ui-0.2.1.tgz","fileCount":52,"integrity":"sha512-K5BtRmhAg4ApXcAvhzLaWw6nvSVyBCZYGi0d01Ap1VaZGyK8w5KTttHhTeZQbjIDva6KWbkVQUksEUMKy0ytXw==","signatures":[{"sig":"MEQCIBsiVuKfJkbTiMMy0p6MG/6MikMlu2FcqLBGfBr20p0cAiBBoBzZOwYzKIhtfV/jueeAJI5YARmbU2fOI+vU6WVFtg==","keyid":"SHA256:DhQ8wR5APBvFHLF/+Tc+AYvPOdTpcIDqOhxsBHRwC7U"}],"unpackedSize":193841},"type":"module","engines":{"node":">=20"},"exports":{".":{"types":"./js/index.d.ts","import":"./js/index.js"},"./js/*":"./js/*","./css/*":"./css/*","./fonts/*":"./fonts/*","./themes/*":"./themes/*","./index.css":"./index.css","./components":{"types":"./dist/index.d.ts","import":"./dist/index.js"},"./odla-ui.css":"./odla-ui.css","./package.json":"./package.json"},"gitHead":"d4dda4d76702eea3ddfacd5b3ffb0b94efd04e02","scripts":{"test":"npm run build && node --test --test-reporter=spec","build":"tsup","clean":"rm -rf dist","gen:css":"node scripts/gen-css.mjs","typecheck":"tsc --noEmit","prepublishOnly":"npm run build && npm test"},"_npmUser":{"name":"coryondrejka","email":"cory.ondrejka@gmail.com"},"_npmVersion":"11.6.2","description":"The odla design system: semantic CSS design tokens, five themes (paper, juniper, salt, chalk, clay), class-scoped component styles, canvas chart helpers, and optional React/Preact form components. CSS and JS helpers ship as source; only /components is com","directories":{},"sideEffects":["*.css"],"_nodeVersion":"24.13.0","publishConfig":{"access":"public"},"_hasShrinkwrap":false,"devDependencies":{"tsup":"^8.3.0","react":"^19.2.7","react-dom":"^19.2.7","typescript":"^6.0.3"},"peerDependencies":{"react":">=18"},"peerDependenciesMeta":{"react":{"optional":true}},"_npmOperationalInternal":{"tmp":"tmp/ui_0.2.1_1783275919371_0.4101944893090117","host":"s3://npm-registry-packages-npm-production"}},"0.2.2":{"name":"@odla-ai/ui","version":"0.2.2","keywords":["odla","design-system","css","design-tokens","themes","components","react","preact"],"license":"MIT","_id":"@odla-ai/ui@0.2.2","maintainers":[{"name":"coryondrejka","email":"cory.ondrejka@gmail.com"}],"homepage":"https://odla.ai/docs/packages/ui","bugs":{"url":"https://github.com/cory/odla-ai/issues"},"dist":{"shasum":"b2163cacbbde8f53d9d75dd26ad26ed306f68f8e","tarball":"https://registry.npmjs.org/@odla-ai/ui/-/ui-0.2.2.tgz","fileCount":57,"integrity":"sha512-ho11/ljrxfPpiI0GvR5gTR2Ufv8nBL5H87o7q2BdfAIF5QadIJBlQxAAKSj9WsYUjgSDAv9cB3wLFCZqMlKwGw==","signatures":[{"sig":"MEUCIQD1jBJfzs3BGLodPxhNhRPZ6j6LGjLJQFIwHZ+YdYwgEAIgO4daDqXKwHVuPhO7WDQ/Hn8cVDyy05Iu0mKBQ1rZEiM=","keyid":"SHA256:DhQ8wR5APBvFHLF/+Tc+AYvPOdTpcIDqOhxsBHRwC7U"}],"unpackedSize":249037},"type":"module","engines":{"node":">=20"},"exports":{".":{"types":"./js/index.d.ts","import":"./js/index.js"},"./js/*":"./js/*","./css/*":"./css/*","./fonts/*":"./fonts/*","./gallery":{"types":"./dist/gallery/index.d.ts","import":"./dist/gallery/index.js"},"./themes/*":"./themes/*","./index.css":"./index.css","./components":{"types":"./dist/index.d.ts","import":"./dist/index.js"},"./odla-ui.css":"./odla-ui.css","./package.json":"./package.json"},"gitHead":"25655934e6ca0ab7220dd6cca06faa92fc524b63","scripts":{"test":"npm run build && node --test --test-reporter=spec","build":"tsup","clean":"rm -rf dist","gen:css":"node scripts/gen-css.mjs","gen:llms":"node ../../scripts/gen-llms.mjs","typecheck":"tsc --noEmit","prepublishOnly":"npm run build && npm run gen:llms && npm test"},"_npmUser":{"name":"GitHub Actions","email":"npm-oidc-no-reply@github.com","trustedPublisher":{"id":"github","oidcConfigId":"oidc:6ee0f536-545b-4ab3-916e-ba5f458661c1"}},"repository":{"url":"git+https://github.com/cory/odla-ai.git","type":"git","directory":"packages/ui"},"_npmVersion":"11.16.0","description":"The odla design system: semantic CSS design tokens, five themes (paper, juniper, salt, chalk, clay), class-scoped component styles, canvas chart helpers, and optional React/Preact form components. CSS and JS helpers ship as source; only /components is com","directories":{},"sideEffects":["*.css"],"_nodeVersion":"24.18.0","publishConfig":{"access":"public","provenance":false},"_hasShrinkwrap":false,"devDependencies":{"tsup":"^8.3.0","react":"^19.2.7","react-dom":"^19.2.7","typescript":"^6.0.3"},"peerDependencies":{"react":">=18"},"peerDependenciesMeta":{"react":{"optional":true}},"_npmOperationalInternal":{"tmp":"tmp/ui_0.2.2_1783704785161_0.23494772745961812","host":"s3://npm-registry-packages-npm-production"}},"0.3.0":{"name":"@odla-ai/ui","version":"0.3.0","keywords":["odla","design-system","css","design-tokens","themes","components","react","preact"],"license":"MIT","_id":"@odla-ai/ui@0.3.0","maintainers":[{"name":"coryondrejka","email":"cory.ondrejka@gmail.com"}],"homepage":"https://odla.ai/docs/packages/ui","bugs":{"url":"https://github.com/cory/odla-ai/issues"},"dist":{"shasum":"f8669b0677e6b193b95559b61d8590853780c159","tarball":"https://registry.npmjs.org/@odla-ai/ui/-/ui-0.3.0.tgz","fileCount":60,"integrity":"sha512-C6LaPM7vXhMJEdv9cs+yPYuPNtQ4gmaUT+aSEcu9rgfNEUozIf0zf8v4seNgBExTPQHz611I1+dDEACROVksnA==","signatures":[{"sig":"MEYCIQC/icRPdb9zAWpZ2QG31aHKkuO1qPx1pd73ds2vy/WeMwIhAKDe1gavjTq4cNi4cp7w6dFcUL6nuis7EsKwWnFLhvn0","keyid":"SHA256:DhQ8wR5APBvFHLF/+Tc+AYvPOdTpcIDqOhxsBHRwC7U"}],"unpackedSize":329946},"type":"module","engines":{"node":">=20"},"exports":{".":{"types":"./js/index.d.ts","import":"./js/index.js"},"./js/*":"./js/*","./css/*":"./css/*","./fonts/*":"./fonts/*","./gallery":{"types":"./dist/gallery/index.d.ts","import":"./dist/gallery/index.js"},"./themes/*":"./themes/*","./index.css":"./index.css","./components":{"types":"./dist/index.d.ts","import":"./dist/index.js"},"./odla-ui.css":"./odla-ui.css","./package.json":"./package.json"},"gitHead":"007933e122c6c72dff4a7d670462c24532273841","scripts":{"test":"npm run build && node --test --test-reporter=spec","build":"tsup","clean":"rm -rf dist","gen:css":"node scripts/gen-css.mjs","gen:llms":"node ../../scripts/gen-llms.mjs","typecheck":"tsc --noEmit","prepublishOnly":"npm run build && npm run gen:llms && npm test"},"_npmUser":{"name":"GitHub Actions","email":"npm-oidc-no-reply@github.com","trustedPublisher":{"id":"github","oidcConfigId":"oidc:6ee0f536-545b-4ab3-916e-ba5f458661c1"}},"repository":{"url":"git+https://github.com/cory/odla-ai.git","type":"git","directory":"packages/ui"},"_npmVersion":"11.16.0","description":"The odla design system: semantic CSS tokens, five themes, class-scoped styles, canvas helpers, and optional React/Preact form, navigation, and application-shell components.","directories":{},"sideEffects":["*.css"],"_nodeVersion":"24.18.0","publishConfig":{"access":"public","provenance":false},"_hasShrinkwrap":false,"devDependencies":{"tsup":"^8.3.0","react":"^19.2.7","react-dom":"^19.2.7","typescript":"^6.0.3"},"peerDependencies":{"react":">=18"},"peerDependenciesMeta":{"react":{"optional":true}},"_npmOperationalInternal":{"tmp":"tmp/ui_0.3.0_1783732631293_0.46317664173954864","host":"s3://npm-registry-packages-npm-production"}},"0.3.1":{"name":"@odla-ai/ui","version":"0.3.1","keywords":["odla","design-system","css","design-tokens","themes","components","react","preact"],"license":"MIT","_id":"@odla-ai/ui@0.3.1","maintainers":[{"name":"coryondrejka","email":"cory.ondrejka@gmail.com"}],"homepage":"https://odla.ai/docs/packages/ui","bugs":{"url":"https://github.com/cory/odla-ai/issues"},"dist":{"shasum":"b45134187ec932834b1506167761af6546d777d6","tarball":"https://registry.npmjs.org/@odla-ai/ui/-/ui-0.3.1.tgz","fileCount":63,"integrity":"sha512-QrJFbNx/alkurPqCt1R3tCcjqP7fwyR3TN5BNL9NF2lP/cwoDrLBAfqBuPQOliwmCE64eH2kCvmHJLBu3zJyGw==","signatures":[{"sig":"MEUCIQC+w42bnxJ2uXEVoxUoI8QA3mOPqswYmJJ+Ru/yxanF/wIgVNK+h5iENctQ2KMZD/iGAqHPs0u4OFCILQG6khApibA=","keyid":"SHA256:DhQ8wR5APBvFHLF/+Tc+AYvPOdTpcIDqOhxsBHRwC7U"}],"unpackedSize":327830},"type":"module","engines":{"node":">=20"},"exports":{".":{"types":"./js/index.d.ts","import":"./js/index.js"},"./js/*":"./js/*","./css/*":"./css/*","./fonts/*":"./fonts/*","./gallery":{"types":"./dist/gallery/index.d.ts","import":"./dist/gallery/index.js"},"./themes/*":"./themes/*","./index.css":"./index.css","./components":{"types":"./dist/index.d.ts","import":"./dist/index.js"},"./odla-ui.css":"./odla-ui.css","./package.json":"./package.json"},"gitHead":"1bca268f65a091cbfa7d04fd9f8e3393a8aa47a3","scripts":{"test":"npm run build && node --test --test-reporter=spec","build":"tsup","clean":"rm -rf dist","gen:css":"node scripts/gen-css.mjs","typecheck":"tsc --noEmit","prepublishOnly":"npm run build && npm test"},"_npmUser":{"name":"coryondrejka","email":"cory.ondrejka@gmail.com"},"repository":{"url":"git+https://github.com/cory/odla-ai.git","type":"git","directory":"packages/ui"},"_npmVersion":"11.6.2","description":"The odla design system: semantic CSS tokens, six themes, class-scoped styles, canvas helpers, and optional React/Preact form, navigation, and application-shell components.","directories":{},"sideEffects":["*.css"],"_nodeVersion":"24.13.0","publishConfig":{"access":"public","provenance":false},"_hasShrinkwrap":false,"devDependencies":{"tsup":"^8.3.0","react":"^19.2.7","react-dom":"^19.2.7","typescript":"^6.0.3"},"peerDependencies":{"react":">=18"},"peerDependenciesMeta":{"react":{"optional":true}},"_npmOperationalInternal":{"tmp":"tmp/ui_0.3.1_1783872457562_0.22721003584456767","host":"s3://npm-registry-packages-npm-production"}},"0.4.0":{"name":"@odla-ai/ui","version":"0.4.0","keywords":["odla","design-system","css","design-tokens","themes","components","react","preact"],"license":"MIT","_id":"@odla-ai/ui@0.4.0","maintainers":[{"name":"coryondrejka","email":"cory.ondrejka@gmail.com"}],"homepage":"https://odla.ai/docs/packages/ui","bugs":{"url":"https://github.com/cory/odla-ai/issues"},"dist":{"shasum":"3fadc0aa85622b5b9eae66f8a5adaab6c1ddc328","tarball":"https://registry.npmjs.org/@odla-ai/ui/-/ui-0.4.0.tgz","fileCount":72,"integrity":"sha512-MGaUwHXjEkD+AXXhNJDmHpm1HME8y21lv8m2SG68keNahPCu9XT1R/Dc9/td/miYt+ZFLDAFS4DydLcAVCBxBA==","signatures":[{"sig":"MEUCIFiJqY6CKBOWWx5dquchV+Ht6wudE+k3WAsYIf3nZhOZAiEA5aQzQ2or8ctjy8e7f467Nd6ycECVB+qrd53e2DGUmGs=","keyid":"SHA256:DhQ8wR5APBvFHLF/+Tc+AYvPOdTpcIDqOhxsBHRwC7U"}],"unpackedSize":563188},"type":"module","engines":{"node":">=20"},"exports":{".":{"types":"./js/index.d.ts","import":"./js/index.js"},"./js/*":"./js/*","./css/*":"./css/*","./fonts/*":"./fonts/*","./gallery":{"types":"./dist/gallery/index.d.ts","import":"./dist/gallery/index.js"},"./themes/*":"./themes/*","./index.css":"./index.css","./components":{"types":"./dist/index.d.ts","import":"./dist/index.js"},"./odla-ui.css":"./odla-ui.css","./package.json":"./package.json"},"gitHead":"e055398f64f45dbe025e87f351edb0faeb05127c","scripts":{"test":"npm run build && node --test --test-reporter=spec","build":"tsup","clean":"rm -rf dist","gen:css":"node scripts/gen-css.mjs","typecheck":"tsc --noEmit","prepublishOnly":"npm run build && npm test"},"_npmUser":{"name":"GitHub Actions","email":"npm-oidc-no-reply@github.com","trustedPublisher":{"id":"github","oidcConfigId":"oidc:6ee0f536-545b-4ab3-916e-ba5f458661c1"}},"repository":{"url":"git+https://github.com/cory/odla-ai.git","type":"git","directory":"packages/ui"},"_npmVersion":"11.16.0","description":"The odla design system: semantic CSS tokens, six themes, class-scoped styles, canvas helpers, and optional React/Preact form, navigation, and application-shell components.","directories":{},"sideEffects":["*.css"],"_nodeVersion":"24.18.0","publishConfig":{"access":"public","provenance":false},"_hasShrinkwrap":false,"devDependencies":{"tsup":"^8.3.0","react":"^19.2.7","react-dom":"^19.2.7","typescript":"^6.0.3"},"peerDependencies":{"react":">=18"},"peerDependenciesMeta":{"react":{"optional":true}},"_npmOperationalInternal":{"tmp":"tmp/ui_0.4.0_1784035325058_0.8616965384274908","host":"s3://npm-registry-packages-npm-production"}},"0.5.0":{"name":"@odla-ai/ui","version":"0.5.0","keywords":["odla","design-system","css","design-tokens","themes","components","react","preact"],"license":"MIT","_id":"@odla-ai/ui@0.5.0","maintainers":[{"name":"coryondrejka","email":"cory.ondrejka@gmail.com"}],"homepage":"https://odla.ai/docs/packages/ui","bugs":{"url":"https://github.com/cory/odla-ai/issues"},"dist":{"shasum":"b06e20b818f4e308ed1f67bb5eeffd4ad523d0a5","tarball":"https://registry.npmjs.org/@odla-ai/ui/-/ui-0.5.0.tgz","fileCount":73,"integrity":"sha512-zj7uAqpCKp9mSV/NHOFIctSY46nnfhpc56+cJ5L1gfhiwU4RbgsOQTqXBbTY2qNhdMk/s7uV0/Z8KMJO8RP6fA==","signatures":[{"sig":"MEQCIEvmGEGWyRzJUzNo9HVTm8IroMbYojdeAFPsWxWicieIAiBPZQPiV9bKj1p8SDDE+3rMTNf7Q2NLERHP+j7OgRLxdA==","keyid":"SHA256:DhQ8wR5APBvFHLF/+Tc+AYvPOdTpcIDqOhxsBHRwC7U"}],"unpackedSize":572544},"type":"module","engines":{"node":">=20"},"exports":{".":{"types":"./js/index.d.ts","import":"./js/index.js"},"./js/*":"./js/*","./css/*":"./css/*","./fonts/*":"./fonts/*","./gallery":{"types":"./dist/gallery/index.d.ts","import":"./dist/gallery/index.js"},"./themes/*":"./themes/*","./index.css":"./index.css","./components":{"types":"./dist/index.d.ts","import":"./dist/index.js"},"./odla-ui.css":"./odla-ui.css","./package.json":"./package.json"},"gitHead":"d6ec776edcac9cf7f676caa2b49163a0f0ab3778","scripts":{"test":"npm run build && node --test --test-reporter=spec","build":"tsup","clean":"rm -rf dist","gen:css":"node scripts/gen-css.mjs","typecheck":"tsc --noEmit","prepublishOnly":"npm run build && npm test"},"_npmUser":{"name":"GitHub Actions","email":"npm-oidc-no-reply@github.com","trustedPublisher":{"id":"github","oidcConfigId":"oidc:6ee0f536-545b-4ab3-916e-ba5f458661c1"}},"repository":{"url":"git+https://github.com/cory/odla-ai.git","type":"git","directory":"packages/ui"},"_npmVersion":"11.16.0","description":"The odla design system: semantic CSS tokens, six themes, class-scoped styles, canvas helpers, and optional React/Preact form, navigation, and application-shell components.","directories":{},"sideEffects":["*.css"],"_nodeVersion":"24.18.0","publishConfig":{"access":"public","provenance":false},"_hasShrinkwrap":false,"devDependencies":{"tsup":"^8.3.0","react":"^19.2.7","react-dom":"^19.2.7","typescript":"^6.0.3"},"peerDependencies":{"react":">=18"},"peerDependenciesMeta":{"react":{"optional":true}},"_npmOperationalInternal":{"tmp":"tmp/ui_0.5.0_1784078034091_0.057321368312476695","host":"s3://npm-registry-packages-npm-production"}},"0.6.0":{"name":"@odla-ai/ui","version":"0.6.0","keywords":["odla","design-system","css","design-tokens","themes","components","react","preact"],"license":"MIT","_id":"@odla-ai/ui@0.6.0","maintainers":[{"name":"coryondrejka","email":"cory.ondrejka@gmail.com"}],"homepage":"https://odla.ai/docs/packages/ui","bugs":{"url":"https://github.com/cory/odla-ai/issues"},"dist":{"shasum":"420ce6b680f4866ffa484da626f6e44486160b24","tarball":"https://registry.npmjs.org/@odla-ai/ui/-/ui-0.6.0.tgz","fileCount":94,"integrity":"sha512-3nUqJK4DBSIAvTLJGjylHJKaorkdfYP2ftck6MAdDZy0Mk++GSchgzuCXiq7LSsfR5LGzdDVC/IbiXKZzQZIxw==","signatures":[{"sig":"MEUCIQDTrHyO58v6iv7AzX8tfXdzMdgLtp6j+9sr65l5jawF6wIgeVEnEM8U8mjr/A5Xw8b5xCusIPkREKZgJaiElh3crzs=","keyid":"SHA256:DhQ8wR5APBvFHLF/+Tc+AYvPOdTpcIDqOhxsBHRwC7U"}],"unpackedSize":910809},"type":"module","engines":{"node":">=20"},"exports":{".":{"types":"./js/index.d.ts","import":"./js/index.js"},"./js/*":"./js/*","./css/*":"./css/*","./fonts/*":"./fonts/*","./gallery":{"types":"./dist/gallery/index.d.ts","import":"./dist/gallery/index.js"},"./themes/*":"./themes/*","./index.css":"./index.css","./components":{"types":"./dist/index.d.ts","import":"./dist/index.js"},"./odla-ui.css":"./odla-ui.css","./package.json":"./package.json"},"gitHead":"df09e6bb640add5af798ef4568fca545c5a2b9d8","scripts":{"test":"npm run build && node --test --test-reporter=spec","build":"tsup","clean":"rm -rf dist","gen:css":"node scripts/gen-css.mjs","typecheck":"tsc --noEmit","prepublishOnly":"npm run build && npm test"},"_npmUser":{"name":"GitHub Actions","email":"npm-oidc-no-reply@github.com","trustedPublisher":{"id":"github","oidcConfigId":"oidc:6ee0f536-545b-4ab3-916e-ba5f458661c1"}},"repository":{"url":"git+https://github.com/cory/odla-ai.git","type":"git","directory":"packages/ui"},"_npmVersion":"11.16.0","description":"The odla design system: semantic CSS tokens, six themes, class-scoped styles, canvas helpers, and optional React/Preact form, navigation, and application-shell components.","directories":{},"sideEffects":["*.css"],"_nodeVersion":"24.18.0","publishConfig":{"access":"public","provenance":false},"_hasShrinkwrap":false,"devDependencies":{"tsup":"^8.3.0","react":"^19.2.7","react-dom":"^19.2.7","typescript":"^6.0.3"},"peerDependencies":{"react":">=18"},"peerDependenciesMeta":{"react":{"optional":true}},"_npmOperationalInternal":{"tmp":"tmp/ui_0.6.0_1784145444189_0.44311663605593377","host":"s3://npm-registry-packages-npm-production"}},"0.7.0":{"name":"@odla-ai/ui","version":"0.7.0","keywords":["odla","design-system","css","design-tokens","themes","components","react","preact"],"license":"MIT","_id":"@odla-ai/ui@0.7.0","maintainers":[{"name":"coryondrejka","email":"cory.ondrejka@gmail.com"}],"homepage":"https://odla.ai/docs/packages/ui","bugs":{"url":"https://github.com/cory/odla-ai/issues"},"dist":{"shasum":"6eb0bf95976c048e3369e2b95e584d4f400ee2e6","tarball":"https://registry.npmjs.org/@odla-ai/ui/-/ui-0.7.0.tgz","fileCount":96,"integrity":"sha512-PMHXs3cv9u2DxG/kp/bdzwmi07MjXEVIOiutJiq0VvebeWbpn7BjdWtbak+tQ7oleV3PD91a1K4hkDyxMVdEjA==","signatures":[{"sig":"MEYCIQDf4VYgsEEHA14rNMFJnY5UHUWq47pxPrT9rQbpnBWQtAIhAJUW1kGMOmOIbX5wsHz7wd2B7pAH7tB3MfjD/YGYrwMT","keyid":"SHA256:DhQ8wR5APBvFHLF/+Tc+AYvPOdTpcIDqOhxsBHRwC7U"}],"unpackedSize":963401},"type":"module","engines":{"node":">=20"},"exports":{".":{"types":"./js/index.d.ts","import":"./js/index.js"},"./js/*":"./js/*","./css/*":"./css/*","./fonts/*":"./fonts/*","./gallery":{"types":"./dist/gallery/index.d.ts","import":"./dist/gallery/index.js"},"./themes/*":"./themes/*","./index.css":"./index.css","./components":{"types":"./dist/index.d.ts","import":"./dist/index.js"},"./odla-ui.css":"./odla-ui.css","./package.json":"./package.json"},"gitHead":"0116d8ef0c8fd0a1308dedca090667ea7f3b3818","scripts":{"test":"npm run build && node --test --test-reporter=spec","build":"tsup","clean":"rm -rf dist","gen:css":"node scripts/gen-css.mjs","typecheck":"tsc --noEmit","prepublishOnly":"npm run build && npm test"},"_npmUser":{"name":"GitHub Actions","email":"npm-oidc-no-reply@github.com","trustedPublisher":{"id":"github","oidcConfigId":"oidc:6ee0f536-545b-4ab3-916e-ba5f458661c1"}},"repository":{"url":"git+https://github.com/cory/odla-ai.git","type":"git","directory":"packages/ui"},"_npmVersion":"11.16.0","description":"The odla design system: semantic CSS tokens, six themes, class-scoped styles, canvas helpers, and optional React/Preact form, navigation, and application-shell components.","directories":{},"sideEffects":["*.css"],"_nodeVersion":"24.18.0","publishConfig":{"access":"public","provenance":false},"_hasShrinkwrap":false,"devDependencies":{"tsup":"^8.3.0","react":"^19.2.7","react-dom":"^19.2.7","typescript":"^6.0.3"},"peerDependencies":{"react":">=18"},"peerDependenciesMeta":{"react":{"optional":true}},"_npmOperationalInternal":{"tmp":"tmp/ui_0.7.0_1784164978844_0.2901692157117186","host":"s3://npm-registry-packages-npm-production"}},"0.8.0":{"name":"@odla-ai/ui","version":"0.8.0","keywords":["odla","design-system","css","design-tokens","themes","components","react","preact"],"license":"MIT","_id":"@odla-ai/ui@0.8.0","maintainers":[{"name":"coryondrejka","email":"cory.ondrejka@gmail.com"}],"homepage":"https://odla.ai/docs/packages/ui","bugs":{"url":"https://github.com/cory/odla-ai/issues"},"dist":{"shasum":"62e3a72c711684bf003b92185d53ba742928d647","tarball":"https://registry.npmjs.org/@odla-ai/ui/-/ui-0.8.0.tgz","fileCount":97,"integrity":"sha512-GNRkqqdBRhr2kTj6e2a35Nokz/PpspdEv9FLkQG7XLfpnm31MCaV9KQkvikg2S3v780ZIQeB7hZpDuj1D7lD4Q==","signatures":[{"sig":"MEUCIH80XyQHI+QSF3zIaw3wuBAAJ/1NLqhkVF0M5G5kzFbGAiEA7tRNWdpIr8XnjZSZfWcmwTjaS+AW8p13APyKeOb/oEU=","keyid":"SHA256:DhQ8wR5APBvFHLF/+Tc+AYvPOdTpcIDqOhxsBHRwC7U"}],"unpackedSize":1023563},"type":"module","engines":{"node":">=20"},"exports":{".":{"types":"./js/index.d.ts","import":"./js/index.js"},"./js/*":"./js/*","./css/*":"./css/*","./fonts/*":"./fonts/*","./gallery":{"types":"./dist/gallery/index.d.ts","import":"./dist/gallery/index.js"},"./themes/*":"./themes/*","./index.css":"./index.css","./components":{"types":"./dist/index.d.ts","import":"./dist/index.js"},"./odla-ui.css":"./odla-ui.css","./package.json":"./package.json"},"gitHead":"7ab05bf1ee5e75cfcaa8defda24ddd09c83ae218","scripts":{"test":"npm run build && node --test --test-reporter=spec","build":"tsup","clean":"rm -rf dist","gen:css":"node scripts/gen-css.mjs","typecheck":"tsc --noEmit","prepublishOnly":"npm run build && npm test"},"_npmUser":{"name":"coryondrejka","email":"cory.ondrejka@gmail.com"},"repository":{"url":"git+https://github.com/cory/odla-ai.git","type":"git","directory":"packages/ui"},"_npmVersion":"11.6.2","description":"The odla design system: semantic CSS tokens, six themes, class-scoped styles, canvas helpers, and optional React/Preact form, navigation, and application-shell components.","directories":{},"sideEffects":["*.css"],"_nodeVersion":"24.13.0","publishConfig":{"access":"public","provenance":false},"_hasShrinkwrap":false,"devDependencies":{"tsup":"^8.3.0","react":"^19.2.7","react-dom":"^19.2.7","typescript":"^6.0.3"},"peerDependencies":{"react":">=18"},"peerDependenciesMeta":{"react":{"optional":true}},"_npmOperationalInternal":{"tmp":"tmp/ui_0.8.0_1784343809396_0.2915473692375383","host":"s3://npm-registry-packages-npm-production"}},"0.8.1":{"name":"@odla-ai/ui","version":"0.8.1","keywords":["odla","design-system","css","design-tokens","themes","components","react","preact"],"license":"MIT","_id":"@odla-ai/ui@0.8.1","maintainers":[{"name":"coryondrejka","email":"cory.ondrejka@gmail.com"}],"homepage":"https://odla.ai/docs/packages/ui","bugs":{"url":"https://github.com/cory/odla-ai/issues"},"dist":{"shasum":"f4d45ab56b4245e66760151fa0fc1efa68649a17","tarball":"https://registry.npmjs.org/@odla-ai/ui/-/ui-0.8.1.tgz","fileCount":97,"integrity":"sha512-sM8DnycquNRrmWtRbUm2nWudIEcxwet7diKnxcIyx+pq4WSdLwAGSf5HvfR9GJiL39UckFsscpFq0Q4qzuIU4A==","signatures":[{"sig":"MEQCIG2QprRpn+EH7XJjNa4PNuxiFVIU2ulltICwEZfMmqgfAiBz6YIS815/+eHZTMvGMxJaEehZnMeWQyRQrclWI9nhLQ==","keyid":"SHA256:DhQ8wR5APBvFHLF/+Tc+AYvPOdTpcIDqOhxsBHRwC7U"}],"unpackedSize":1035832},"type":"module","engines":{"node":">=20"},"exports":{".":{"types":"./js/index.d.ts","import":"./js/index.js"},"./js/*":"./js/*","./css/*":"./css/*","./fonts/*":"./fonts/*","./gallery":{"types":"./dist/gallery/index.d.ts","import":"./dist/gallery/index.js"},"./themes/*":"./themes/*","./index.css":"./index.css","./components":{"types":"./dist/index.d.ts","import":"./dist/index.js"},"./odla-ui.css":"./odla-ui.css","./package.json":"./package.json"},"gitHead":"730ae4b4c1684d88a49691e51dae05324c4c5b34","scripts":{"test":"npm run build && node --test --test-reporter=spec","build":"tsup","clean":"rm -rf dist","gen:css":"node scripts/gen-css.mjs","typecheck":"tsc --noEmit","prepublishOnly":"npm run build && npm test"},"_npmUser":{"name":"GitHub Actions","email":"npm-oidc-no-reply@github.com","trustedPublisher":{"id":"github","oidcConfigId":"oidc:6ee0f536-545b-4ab3-916e-ba5f458661c1"}},"repository":{"url":"git+https://github.com/cory/odla-ai.git","type":"git","directory":"packages/ui"},"_npmVersion":"11.16.0","description":"The odla design system: semantic CSS tokens, six themes, class-scoped styles, canvas helpers, and optional React/Preact form, navigation, and application-shell components.","directories":{},"sideEffects":["*.css"],"_nodeVersion":"24.18.0","publishConfig":{"access":"public","provenance":false},"_hasShrinkwrap":false,"devDependencies":{"tsup":"^8.3.0","react":"^19.2.7","react-dom":"^19.2.7","typescript":"^6.0.3"},"peerDependencies":{"react":">=18"},"peerDependenciesMeta":{"react":{"optional":true}},"_npmOperationalInternal":{"tmp":"tmp/ui_0.8.1_1784354159747_0.6387999961812181","host":"s3://npm-registry-packages-npm-production"}},"0.8.2":{"name":"@odla-ai/ui","version":"0.8.2","keywords":["odla","design-system","css","design-tokens","themes","components","react","preact"],"license":"MIT","_id":"@odla-ai/ui@0.8.2","maintainers":[{"name":"coryondrejka","email":"cory.ondrejka@gmail.com"}],"homepage":"https://odla.ai/docs/packages/ui","bugs":{"url":"https://github.com/cory/odla-ai/issues"},"dist":{"shasum":"510cffe3b0bc739347195c578ddf13ffcd6e0bbf","tarball":"https://registry.npmjs.org/@odla-ai/ui/-/ui-0.8.2.tgz","fileCount":97,"integrity":"sha512-oobgwr96++9HPyFynloOEcvlyBhrTZMI25uZLMZWYDJKSiDhILPePcpVsVSWOEEdjuXIint+HbvxSlrL/5ra6g==","signatures":[{"sig":"MEQCIEVNal7Wyt7KYY8mnMxFDwEfib6UdBMVTklAtvhAAQ0yAiAOuXf0WoRnuO8IxNfgLkyQPXAMMNv69oIONvUeLoy2Iw==","keyid":"SHA256:DhQ8wR5APBvFHLF/+Tc+AYvPOdTpcIDqOhxsBHRwC7U"}],"unpackedSize":1036788},"type":"module","engines":{"node":">=20"},"exports":{".":{"types":"./js/index.d.ts","import":"./js/index.js"},"./js/*":"./js/*","./css/*":"./css/*","./fonts/*":"./fonts/*","./gallery":{"types":"./dist/gallery/index.d.ts","import":"./dist/gallery/index.js"},"./themes/*":"./themes/*","./index.css":"./index.css","./components":{"types":"./dist/index.d.ts","import":"./dist/index.js"},"./odla-ui.css":"./odla-ui.css","./package.json":"./package.json"},"gitHead":"e80ccec8d42036b3de86c54462766c3af0189007","scripts":{"test":"npm run build && node --test --test-reporter=spec","build":"tsup","clean":"rm -rf dist","gen:css":"node scripts/gen-css.mjs","typecheck":"tsc --noEmit","prepublishOnly":"npm run build && npm test"},"_npmUser":{"name":"GitHub Actions","email":"npm-oidc-no-reply@github.com","trustedPublisher":{"id":"github","oidcConfigId":"oidc:6ee0f536-545b-4ab3-916e-ba5f458661c1"}},"repository":{"url":"git+https://github.com/cory/odla-ai.git","type":"git","directory":"packages/ui"},"_npmVersion":"11.16.0","description":"The odla design system: semantic CSS tokens, six themes, class-scoped styles, canvas helpers, and optional React/Preact form, navigation, and application-shell components.","directories":{},"sideEffects":["*.css"],"_nodeVersion":"24.18.0","publishConfig":{"access":"public","provenance":false},"_hasShrinkwrap":false,"devDependencies":{"tsup":"^8.3.0","react":"^19.2.7","react-dom":"^19.2.7","typescript":"^6.0.3"},"peerDependencies":{"react":">=18"},"peerDependenciesMeta":{"react":{"optional":true}},"_npmOperationalInternal":{"tmp":"tmp/ui_0.8.2_1784361812640_0.08942136582267213","host":"s3://npm-registry-packages-npm-production"}},"0.9.0":{"name":"@odla-ai/ui","version":"0.9.0","keywords":["odla","design-system","css","design-tokens","themes","components","react","preact"],"license":"MIT","_id":"@odla-ai/ui@0.9.0","maintainers":[{"name":"coryondrejka","email":"cory.ondrejka@gmail.com"}],"homepage":"https://odla.ai/docs/packages/ui","bugs":{"url":"https://github.com/cory/odla-ai/issues"},"dist":{"shasum":"846fcdac5664a0c9476f48be3f477548fb3246ca","tarball":"https://registry.npmjs.org/@odla-ai/ui/-/ui-0.9.0.tgz","fileCount":96,"integrity":"sha512-NgbDm9KDBvloVQsVXqsUkQwh/rWog6M+bXFgBi4rknrFzhzI3gZj4ubVmdbn3zybm6VxgNSMLji40ej7u0jO0A==","signatures":[{"sig":"MEUCIQDnqNk4CcYeHboJ3FSgvEhzFUEYaGx2ssO0KZHFphHpSQIgIwRf+e5gcAIfrlN+hOUNq088aJNAo8rdx3wJ6z8UsQo=","keyid":"SHA256:DhQ8wR5APBvFHLF/+Tc+AYvPOdTpcIDqOhxsBHRwC7U"}],"unpackedSize":1114426},"type":"module","engines":{"node":">=20"},"exports":{".":{"types":"./js/index.d.ts","import":"./js/index.js"},"./js/*":"./js/*","./css/*":"./css/*","./fonts/*":"./fonts/*","./gallery":{"types":"./dist/gallery/index.d.ts","import":"./dist/gallery/index.js"},"./themes/*":"./themes/*","./index.css":"./index.css","./components":{"types":"./dist/index.d.ts","import":"./dist/index.js"},"./odla-ui.css":"./odla-ui.css","./package.json":"./package.json"},"gitHead":"9ef23b78c5718c893b432cb52bddca7399befe7b","scripts":{"test":"npm run build && node --test --test-reporter=spec","build":"tsup","clean":"rm -rf dist","gen:css":"node scripts/gen-css.mjs","typecheck":"tsc --noEmit","prepublishOnly":"npm run build && npm test"},"_npmUser":{"name":"GitHub Actions","email":"npm-oidc-no-reply@github.com","trustedPublisher":{"id":"github","oidcConfigId":"oidc:6ee0f536-545b-4ab3-916e-ba5f458661c1"}},"repository":{"url":"git+https://github.com/cory/odla-ai.git","type":"git","directory":"packages/ui"},"_npmVersion":"11.6.2","description":"The odla design system: semantic CSS tokens, six themes, class-scoped styles, canvas helpers, and optional React/Preact form, navigation, and application-shell components.","directories":{},"sideEffects":["*.css"],"_nodeVersion":"24.13.0","publishConfig":{"access":"public","provenance":false},"_hasShrinkwrap":false,"devDependencies":{"tsup":"^8.3.0","react":"^19.2.7","react-dom":"^19.2.7","typescript":"^6.0.3"},"peerDependencies":{"react":">=18"},"peerDependenciesMeta":{"react":{"optional":true}},"_npmOperationalInternal":{"tmp":"tmp/ui_0.9.0_1784612936804_0.9276315347972739","host":"s3://npm-registry-packages-npm-production"}},"0.9.1":{"name":"@odla-ai/ui","version":"0.9.1","keywords":["odla","design-system","css","design-tokens","themes","components","react","preact"],"license":"MIT","_id":"@odla-ai/ui@0.9.1","maintainers":[{"name":"coryondrejka","email":"cory.ondrejka@gmail.com"}],"homepage":"https://odla.ai/docs/packages/ui","bugs":{"url":"https://github.com/cory/odla-ai/issues"},"dist":{"shasum":"2d105b5e829e47f66189421e5fc1dcab564e220f","tarball":"https://registry.npmjs.org/@odla-ai/ui/-/ui-0.9.1.tgz","fileCount":96,"integrity":"sha512-tFimuRsY+hTgEqtUkGmeFeRs4/UIB5x330otz3t4iqG3zVIbm24/eTl37xMhhQiDUMv1MC3u0c3X9cIOkHOdJw==","signatures":[{"sig":"MEUCIEyQ91KehJcMi2dO5w36H9U0sdwlYby/T7OVvCT2byw2AiEAqP+PN0GTUQddlJJ3dm3eGAXQhol+OFs2okrDgR6U820=","keyid":"SHA256:DhQ8wR5APBvFHLF/+Tc+AYvPOdTpcIDqOhxsBHRwC7U"}],"unpackedSize":1116420},"type":"module","engines":{"node":">=20"},"exports":{".":{"types":"./js/index.d.ts","import":"./js/index.js"},"./js/*":"./js/*","./css/*":"./css/*","./fonts/*":"./fonts/*","./gallery":{"types":"./dist/gallery/index.d.ts","import":"./dist/gallery/index.js"},"./themes/*":"./themes/*","./index.css":"./index.css","./components":{"types":"./dist/index.d.ts","import":"./dist/index.js"},"./odla-ui.css":"./odla-ui.css","./package.json":"./package.json"},"gitHead":"b48afe578c84af3afeeabe80bf1ac33d5a740bdd","scripts":{"test":"npm run build && node --test --test-reporter=spec","build":"tsup","clean":"rm -rf dist","gen:css":"node scripts/gen-css.mjs","typecheck":"tsc --noEmit","prepublishOnly":"npm run build && npm test"},"_npmUser":{"name":"GitHub Actions","email":"npm-oidc-no-reply@github.com","trustedPublisher":{"id":"github","oidcConfigId":"oidc:6ee0f536-545b-4ab3-916e-ba5f458661c1"}},"repository":{"url":"git+https://github.com/cory/odla-ai.git","type":"git","directory":"packages/ui"},"_npmVersion":"11.6.2","description":"The odla design system: semantic CSS tokens, six themes, class-scoped styles, canvas helpers, and optional React/Preact form, navigation, and application-shell components.","directories":{},"sideEffects":["*.css"],"_nodeVersion":"24.13.0","publishConfig":{"access":"public","provenance":false},"_hasShrinkwrap":false,"devDependencies":{"tsup":"^8.3.0","react":"^19.2.7","react-dom":"^19.2.7","typescript":"^6.0.3"},"peerDependencies":{"react":">=18"},"peerDependenciesMeta":{"react":{"optional":true}},"_npmOperationalInternal":{"tmp":"tmp/ui_0.9.1_1784847851267_0.8746446646766945","host":"s3://npm-registry-packages-npm-production"}},"0.10.0":{"name":"@odla-ai/ui","version":"0.10.0","keywords":["odla","design-system","css","design-tokens","themes","components","react","preact"],"license":"MIT","_id":"@odla-ai/ui@0.10.0","maintainers":[{"name":"coryondrejka","email":"cory.ondrejka@gmail.com"}],"homepage":"https://odla.ai/docs/packages/ui","bugs":{"url":"https://github.com/cory/odla-ai/issues"},"dist":{"shasum":"122d4e21e0788af9adf5b260b81d11df7da18c82","tarball":"https://registry.npmjs.org/@odla-ai/ui/-/ui-0.10.0.tgz","fileCount":97,"integrity":"sha512-hgSns6ezcuO76HlRCZFWBV7yK6ovwlk8mmOINfE+XeKbjsn7oD86/5objKPZ/6oWepMGU/athex2xSkSwA3jjg==","signatures":[{"sig":"MEYCIQDnEvqHKBJ1I6muOR35v/Fbk2lK5uZ6d/iD1Xu00/J+SQIhAL3RTjsHUf+yWHmj1HwHOgoAEuhYvD9odpHBoCGppRIs","keyid":"SHA256:DhQ8wR5APBvFHLF/+Tc+AYvPOdTpcIDqOhxsBHRwC7U"}],"unpackedSize":1116973},"type":"module","engines":{"node":">=20"},"exports":{".":{"types":"./js/index.d.ts","import":"./js/index.js"},"./js/*":"./js/*","./css/*":"./css/*","./fonts/*":"./fonts/*","./gallery":{"types":"./dist/gallery/index.d.ts","import":"./dist/gallery/index.js"},"./themes/*":"./themes/*","./index.css":"./index.css","./components":{"types":"./dist/index.d.ts","import":"./dist/index.js"},"./odla-ui.css":"./odla-ui.css","./package.json":"./package.json"},"gitHead":"6b4c4686222bb1084d9b8ff0af7e0c9973870c61","scripts":{"test":"npm run build && node --test --test-reporter=spec","build":"tsup","clean":"rm -rf dist","gen:css":"node scripts/gen-css.mjs","typecheck":"tsc --noEmit","prepublishOnly":"npm run build && npm test"},"_npmUser":{"name":"GitHub Actions","email":"npm-oidc-no-reply@github.com","trustedPublisher":{"id":"github","oidcConfigId":"oidc:6ee0f536-545b-4ab3-916e-ba5f458661c1"}},"repository":{"url":"git+https://github.com/cory/odla-ai.git","type":"git","directory":"packages/ui"},"_npmVersion":"11.6.2","description":"The odla design system: semantic CSS tokens, seven themes, load-order-safe application styles, canvas helpers, and optional React/Preact components.","directories":{},"sideEffects":["*.css"],"_nodeVersion":"24.13.0","publishConfig":{"access":"public","provenance":false},"_hasShrinkwrap":false,"devDependencies":{"tsup":"^8.3.0","react":"^19.2.7","react-dom":"^19.2.7","typescript":"^6.0.3"},"peerDependencies":{"react":">=18"},"peerDependenciesMeta":{"react":{"optional":true}},"_npmOperationalInternal":{"tmp":"tmp/ui_0.10.0_1784852454980_0.8449535280481109","host":"s3://npm-registry-packages-npm-production"}},"0.11.0":{"name":"@odla-ai/ui","version":"0.11.0","keywords":["odla","design-system","css","design-tokens","themes","components","react","preact"],"license":"MIT","_id":"@odla-ai/ui@0.11.0","maintainers":[{"name":"coryondrejka","email":"cory.ondrejka@gmail.com"}],"homepage":"https://odla.ai/docs/packages/ui","bugs":{"url":"https://github.com/cory/odla-ai/issues"},"dist":{"shasum":"f7b439115717bbb813377e69b0e9ed2be6e02db0","tarball":"https://registry.npmjs.org/@odla-ai/ui/-/ui-0.11.0.tgz","fileCount":106,"integrity":"sha512-e4FAgf5U83m1jXw8RsjED3CXVFoHSPbN52i0yUp55jyzV+O670zZaYwRRkblALmEUYAl/5upTwXA8aYUPakMOg==","signatures":[{"sig":"MEUCIQClmGWXnr18MVC1LN2WBpXRlePGZvWbSBD3YTf/aNOfPgIgIfCBXVYFKcSNSadBD2so8hmWARVI/zCsP/DOFfPth0E=","keyid":"SHA256:DhQ8wR5APBvFHLF/+Tc+AYvPOdTpcIDqOhxsBHRwC7U"}],"unpackedSize":1197548},"type":"module","engines":{"node":">=20"},"exports":{".":{"types":"./js/index.d.ts","import":"./js/index.js"},"./js/*":"./js/*","./css/*":"./css/*","./fonts/*":"./fonts/*","./gallery":{"types":"./dist/gallery/index.d.ts","import":"./dist/gallery/index.js"},"./themes/*":"./themes/*","./index.css":"./index.css","./components":{"types":"./dist/index.d.ts","import":"./dist/index.js"},"./odla-ui.css":"./odla-ui.css","./package.json":"./package.json"},"gitHead":"4bdbc9542c09e028cb1ad37578871a1c82c134ea","scripts":{"test":"npm run build && node --test --test-reporter=spec","build":"tsup","clean":"rm -rf dist","gen:css":"node scripts/gen-css.mjs","typecheck":"tsc --noEmit","prepublishOnly":"npm run build && npm test"},"_npmUser":{"name":"GitHub Actions","email":"npm-oidc-no-reply@github.com","trustedPublisher":{"id":"github","oidcConfigId":"oidc:6ee0f536-545b-4ab3-916e-ba5f458661c1"}},"repository":{"url":"git+https://github.com/cory/odla-ai.git","type":"git","directory":"packages/ui"},"_npmVersion":"11.6.2","description":"The odla design system: semantic CSS tokens, seven themes, load-order-safe application styles, canvas helpers, and optional React/Preact components.","directories":{},"sideEffects":["*.css"],"_nodeVersion":"24.13.0","publishConfig":{"access":"public","provenance":false},"_hasShrinkwrap":false,"devDependencies":{"tsup":"^8.3.0","react":"^19.2.7","react-dom":"^19.2.7","typescript":"^6.0.3"},"peerDependencies":{"react":">=18"},"peerDependenciesMeta":{"react":{"optional":true}},"_npmOperationalInternal":{"tmp":"tmp/ui_0.11.0_1784913077486_0.2595748620105556","host":"s3://npm-registry-packages-npm-production"}},"0.12.0":{"name":"@odla-ai/ui","version":"0.12.0","keywords":["odla","design-system","css","design-tokens","themes","components","react","preact"],"license":"MIT","_id":"@odla-ai/ui@0.12.0","maintainers":[{"name":"coryondrejka","email":"cory.ondrejka@gmail.com"}],"homepage":"https://odla.ai/docs/packages/ui","bugs":{"url":"https://github.com/cory/odla-ai/issues"},"dist":{"shasum":"0076ec5609841c70fb4ebca18c1152759200a773","tarball":"https://registry.npmjs.org/@odla-ai/ui/-/ui-0.12.0.tgz","fileCount":106,"integrity":"sha512-CfkE0GqbzdUoN0jzU/5Z6NhRqlD776lsX9R6RDsaa/p8GAz0OVuSGKo6ucupzfJUT7mSpC7/RDmKk6s9i0iddA==","signatures":[{"sig":"MEQCIGVMPX2I3egJdTa2sNPiocGR4rJl32H3+BXkuiwcImRlAiBRBbSVT7JWwS7omJ6c2fHr64L5yE0b7NmWc3jq4DHpQw==","keyid":"SHA256:DhQ8wR5APBvFHLF/+Tc+AYvPOdTpcIDqOhxsBHRwC7U"}],"unpackedSize":1201166},"type":"module","engines":{"node":">=20"},"exports":{".":{"types":"./js/index.d.ts","import":"./js/index.js"},"./js/*":"./js/*","./css/*":"./css/*","./fonts/*":"./fonts/*","./gallery":{"types":"./dist/gallery/index.d.ts","import":"./dist/gallery/index.js"},"./themes/*":"./themes/*","./index.css":"./index.css","./components":{"types":"./dist/index.d.ts","import":"./dist/index.js"},"./odla-ui.css":"./odla-ui.css","./package.json":"./package.json"},"gitHead":"76ee8389c667aa6cdcc485ed56f9d436ad2e8403","scripts":{"test":"npm run build && node --test --test-reporter=spec","build":"tsup","clean":"rm -rf dist","gen:css":"node scripts/gen-css.mjs","typecheck":"tsc --noEmit","prepublishOnly":"npm run build && npm test"},"_npmUser":{"name":"GitHub Actions","email":"npm-oidc-no-reply@github.com","trustedPublisher":{"id":"github","oidcConfigId":"oidc:6ee0f536-545b-4ab3-916e-ba5f458661c1"}},"repository":{"url":"git+https://github.com/cory/odla-ai.git","type":"git","directory":"packages/ui"},"_npmVersion":"11.6.2","description":"The odla design system: semantic CSS tokens, seven themes, load-order-safe application styles, canvas helpers, and optional React/Preact components.","directories":{},"sideEffects":["*.css"],"_nodeVersion":"24.13.0","publishConfig":{"access":"public","provenance":false},"_hasShrinkwrap":false,"devDependencies":{"tsup":"^8.3.0","react":"^19.2.7","react-dom":"^19.2.7","typescript":"^6.0.3"},"peerDependencies":{"react":">=18"},"peerDependenciesMeta":{"react":{"optional":true}},"_npmOperationalInternal":{"tmp":"tmp/ui_0.12.0_1784918542410_0.6755281528205077","host":"s3://npm-registry-packages-npm-production"}},"0.12.1":{"name":"@odla-ai/ui","version":"0.12.1","keywords":["odla","design-system","css","design-tokens","themes","components","preact"],"license":"MIT","_id":"@odla-ai/ui@0.12.1","maintainers":[{"name":"coryondrejka","email":"cory.ondrejka@gmail.com"}],"homepage":"https://odla.ai/docs/packages/ui","bugs":{"url":"https://github.com/cory/odla-ai/issues"},"dist":{"shasum":"c47e8474b88bf3404fc80fe91d5790f43ea63323","tarball":"https://registry.npmjs.org/@odla-ai/ui/-/ui-0.12.1.tgz","fileCount":106,"integrity":"sha512-O0FiPjjuwOsLM71o9L9g/+By/bnpzwOPjnVuuhbD+5qO6800moQl+22I89VNPm9jbbp1x5Y2IN6GKtZ6METbQg==","signatures":[{"sig":"MEYCIQDQ6DR9piHhNud9Y35nzf2egPJUPek4USz48UfDiEUBigIhAP1lvWpLjMXTHhMs2BjBcYAj13QHQbM+1+Ag7U25GQAh","keyid":"SHA256:DhQ8wR5APBvFHLF/+Tc+AYvPOdTpcIDqOhxsBHRwC7U"}],"unpackedSize":1209568},"type":"module","engines":{"node":">=20"},"exports":{".":{"types":"./js/index.d.ts","import":"./js/index.js"},"./js/*":"./js/*","./css/*":"./css/*","./fonts/*":"./fonts/*","./gallery":{"types":"./dist/gallery/index.d.ts","import":"./dist/gallery/index.js"},"./themes/*":"./themes/*","./index.css":"./index.css","./components":{"types":"./dist/index.d.ts","import":"./dist/index.js"},"./odla-ui.css":"./odla-ui.css","./package.json":"./package.json"},"gitHead":"27a50dfb5b18c4502cf51978e61f1dd4915fec90","scripts":{"test":"npm run build && node --test --test-reporter=spec","build":"tsup","clean":"rm -rf dist","gen:css":"node scripts/gen-css.mjs","typecheck":"tsc --noEmit","prepublishOnly":"npm run build && npm test"},"_npmUser":{"name":"GitHub Actions","email":"npm-oidc-no-reply@github.com","trustedPublisher":{"id":"github","oidcConfigId":"oidc:6ee0f536-545b-4ab3-916e-ba5f458661c1"}},"repository":{"url":"git+https://github.com/cory/odla-ai.git","type":"git","directory":"packages/ui"},"_npmVersion":"11.6.2","description":"The odla design system: semantic CSS tokens, seven themes, load-order-safe application styles, canvas helpers, and lightweight Preact components.","directories":{},"sideEffects":["*.css"],"_nodeVersion":"24.13.0","publishConfig":{"access":"public","provenance":false},"_hasShrinkwrap":false,"devDependencies":{"tsup":"^8.3.0","jsdom":"26.1.0","preact":"10.29.7","typescript":"^6.0.3","preact-render-to-string":"6.7.0"},"peerDependencies":{"preact":">=10.29.7 <11"},"_npmOperationalInternal":{"tmp":"tmp/ui_0.12.1_1784927238098_0.680766622622323","host":"s3://npm-registry-packages-npm-production"}},"0.12.2":{"name":"@odla-ai/ui","version":"0.12.2","keywords":["odla","design-system","css","design-tokens","themes","components","preact"],"license":"MIT","_id":"@odla-ai/ui@0.12.2","maintainers":[{"name":"coryondrejka","email":"cory.ondrejka@gmail.com"}],"homepage":"https://odla.ai/docs/packages/ui","bugs":{"url":"https://github.com/cory/odla-ai/issues"},"dist":{"shasum":"a95d61004898404ab5515f1bdbbc04697c2b8f93","tarball":"https://registry.npmjs.org/@odla-ai/ui/-/ui-0.12.2.tgz","fileCount":106,"integrity":"sha512-8/yxm6mnym6Rqw+qar/lM3O8f9UqC3xoLsB3NkHlk74xncw455yS2SF1M3vfoG5HD1x9Cm+FSHJJZ4Z12vnVVA==","signatures":[{"sig":"MEUCIDSsOl4IdrzcUjPffDqM66V2J0ixOh5Zs37UNp7wdvGbAiEA8XQLECg2HCjJ6p3v/YIU0Xm03ZntlrtqKS1Ip8+cikY=","keyid":"SHA256:DhQ8wR5APBvFHLF/+Tc+AYvPOdTpcIDqOhxsBHRwC7U"}],"unpackedSize":1213333},"type":"module","engines":{"node":">=20"},"exports":{".":{"types":"./js/index.d.ts","import":"./js/index.js"},"./js/*":"./js/*","./css/*":"./css/*","./fonts/*":"./fonts/*","./gallery":{"types":"./dist/gallery/index.d.ts","import":"./dist/gallery/index.js"},"./themes/*":"./themes/*","./index.css":"./index.css","./components":{"types":"./dist/index.d.ts","import":"./dist/index.js"},"./odla-ui.css":"./odla-ui.css","./package.json":"./package.json"},"gitHead":"d9a1dc3665f67225e06d81a5a619d504d600425e","scripts":{"test":"npm run build && node --test --test-reporter=spec","build":"tsup","clean":"rm -rf dist","gen:css":"node scripts/gen-css.mjs","typecheck":"tsc --noEmit","prepublishOnly":"npm run build && npm test"},"_npmUser":{"name":"GitHub Actions","email":"npm-oidc-no-reply@github.com","trustedPublisher":{"id":"github","oidcConfigId":"oidc:6ee0f536-545b-4ab3-916e-ba5f458661c1"}},"repository":{"url":"git+https://github.com/cory/odla-ai.git","type":"git","directory":"packages/ui"},"_npmVersion":"11.6.2","description":"The odla design system: semantic CSS tokens, seven themes, load-order-safe application styles, canvas helpers, and lightweight Preact components.","directories":{},"sideEffects":["*.css"],"_nodeVersion":"24.13.0","publishConfig":{"access":"public","provenance":false},"_hasShrinkwrap":false,"devDependencies":{"tsup":"^8.3.0","jsdom":"26.1.0","preact":"10.29.7","typescript":"^6.0.3","preact-render-to-string":"6.7.0"},"peerDependencies":{"preact":">=10.29.7 <11"},"_npmOperationalInternal":{"tmp":"tmp/ui_0.12.2_1785095026469_0.8378810466396183","host":"s3://npm-registry-packages-npm-production"}},"0.13.0":{"name":"@odla-ai/ui","version":"0.13.0","keywords":["odla","design-system","css","design-tokens","themes","components","preact"],"license":"MIT","_id":"@odla-ai/ui@0.13.0","maintainers":[{"name":"coryondrejka","email":"cory.ondrejka@gmail.com"}],"homepage":"https://odla.ai/docs/packages/ui","bugs":{"url":"https://github.com/cory/odla-ai/issues"},"dist":{"shasum":"fa622784d24fc55943730a00ab9616a89c11466a","tarball":"https://registry.npmjs.org/@odla-ai/ui/-/ui-0.13.0.tgz","fileCount":107,"integrity":"sha512-e1RCZjOtC2fZeObKRkrsYUDisqSFzO55lOEJUtbdsvjycmtfjC0As12Xs/2rzsiqaquF5sclVGHWehSBROhoaQ==","signatures":[{"sig":"MEUCIQCq6ZUmBCDI30VeRrK/gKn957BjpGWpAGTmNjuJiRiAugIgd/LN5Qrt8qjc0NH21TROeTI+XmvxiNzKcGHpvUBde/s=","keyid":"SHA256:DhQ8wR5APBvFHLF/+Tc+AYvPOdTpcIDqOhxsBHRwC7U"}],"unpackedSize":1285817},"type":"module","engines":{"node":">=20"},"exports":{".":{"types":"./js/index.d.ts","import":"./js/index.js"},"./js/*":"./js/*","./css/*":"./css/*","./fonts/*":"./fonts/*","./gallery":{"types":"./dist/gallery/index.d.ts","import":"./dist/gallery/index.js"},"./themes/*":"./themes/*","./index.css":"./index.css","./components":{"types":"./dist/index.d.ts","import":"./dist/index.js"},"./odla-ui.css":"./odla-ui.css","./package.json":"./package.json"},"gitHead":"b2a90fc1ef7e1cee3ddda731e620d4731274cae8","scripts":{"test":"npm run build && node --test --test-reporter=spec","build":"tsup","clean":"rm -rf dist","gen:css":"node scripts/gen-css.mjs","typecheck":"tsc --noEmit","prepublishOnly":"npm run build && npm test"},"_npmUser":{"name":"GitHub Actions","email":"npm-oidc-no-reply@github.com","trustedPublisher":{"id":"github","oidcConfigId":"oidc:6ee0f536-545b-4ab3-916e-ba5f458661c1"}},"repository":{"url":"git+https://github.com/cory/odla-ai.git","type":"git","directory":"packages/ui"},"_npmVersion":"11.6.2","description":"The odla design system: semantic CSS tokens, seven themes, load-order-safe application styles, canvas helpers, and lightweight Preact components.","directories":{},"sideEffects":["*.css"],"_nodeVersion":"24.13.0","publishConfig":{"access":"public","provenance":false},"_hasShrinkwrap":false,"devDependencies":{"tsup":"^8.3.0","jsdom":"26.1.0","preact":"10.29.7","typescript":"^6.0.3","preact-render-to-string":"6.7.0"},"peerDependencies":{"preact":">=10.29.7 <11"},"_npmOperationalInternal":{"tmp":"tmp/ui_0.13.0_1785110274138_0.5109899070446713","host":"s3://npm-registry-packages-npm-production"}},"0.15.0":{"name":"@odla-ai/ui","version":"0.15.0","keywords":["odla","design-system","css","design-tokens","themes","components","preact"],"license":"MIT","_id":"@odla-ai/ui@0.15.0","maintainers":[{"name":"coryondrejka","email":"cory.ondrejka@gmail.com"}],"homepage":"https://odla.ai/docs/packages/ui","bugs":{"url":"https://github.com/cory/odla-ai/issues"},"dist":{"shasum":"d077820abd889900f4a1bb6b548d22041d324f7d","tarball":"https://registry.npmjs.org/@odla-ai/ui/-/ui-0.15.0.tgz","fileCount":113,"integrity":"sha512-LxiDorKhMFsIpFnBWuflaNQQ8U5WtMHqOm2TX+2EGeaIAfhxsY6gHNQDS+OqFPyCgJUwzJTo/eA1x5WMCeI8VQ==","signatures":[{"sig":"MEUCIBNiRkjJcqzEHxcRebl62qoQvmMd8m34wLsyfPMWDAnIAiEAosfsfqStVnJVZVenOfCpjI860/GQtZ1csoiwUc7NRzU=","keyid":"SHA256:DhQ8wR5APBvFHLF/+Tc+AYvPOdTpcIDqOhxsBHRwC7U"}],"unpackedSize":1423259},"type":"module","engines":{"node":">=20"},"exports":{".":{"types":"./js/index.d.ts","import":"./js/index.js"},"./js/*":"./js/*","./css/*":"./css/*","./fonts/*":"./fonts/*","./gallery":{"types":"./dist/gallery/index.d.ts","import":"./dist/gallery/index.js"},"./themes/*":"./themes/*","./index.css":"./index.css","./components":{"types":"./dist/index.d.ts","import":"./dist/index.js"},"./odla-ui.css":"./odla-ui.css","./package.json":"./package.json"},"gitHead":"0098c310f6c988698e89ca9db14d9d073a4a72e9","scripts":{"test":"npm run build && node --test --test-reporter=spec","build":"tsup","clean":"rm -rf dist","gen:css":"node scripts/gen-css.mjs","typecheck":"tsc --noEmit","prepublishOnly":"npm run build && npm test"},"_npmUser":{"name":"GitHub Actions","email":"npm-oidc-no-reply@github.com","trustedPublisher":{"id":"github","oidcConfigId":"oidc:6ee0f536-545b-4ab3-916e-ba5f458661c1"}},"repository":{"url":"git+https://github.com/cory/odla-ai.git","type":"git","directory":"packages/ui"},"_npmVersion":"11.6.2","description":"The odla design system: semantic CSS tokens, seven themes, application shells, bottom work docks, accessible status, anchored mentions, canvas helpers, and lightweight Preact components.","directories":{},"sideEffects":["*.css"],"_nodeVersion":"24.13.0","publishConfig":{"access":"public","provenance":false},"_hasShrinkwrap":false,"devDependencies":{"tsup":"^8.3.0","jsdom":"26.1.0","preact":"10.29.7","typescript":"^6.0.3","preact-render-to-string":"6.7.0"},"peerDependencies":{"preact":">=10.29.7 <11"},"_npmOperationalInternal":{"tmp":"tmp/ui_0.15.0_1785281117574_0.8763588504252344","host":"s3://npm-registry-packages-npm-production"}},"0.16.0":{"name":"@odla-ai/ui","version":"0.16.0","keywords":["odla","design-system","css","design-tokens","themes","components","preact"],"license":"MIT","_id":"@odla-ai/ui@0.16.0","maintainers":[{"name":"coryondrejka","email":"cory.ondrejka@gmail.com"}],"homepage":"https://odla.ai/docs/packages/ui","bugs":{"url":"https://github.com/cory/odla-ai/issues"},"dist":{"shasum":"7db70b051f122384650f5744b01d28684a981b88","tarball":"https://registry.npmjs.org/@odla-ai/ui/-/ui-0.16.0.tgz","fileCount":115,"integrity":"sha512-+KIJvXRtLauct9GfelUGIw/bNLdxGQXmOm47mdqEykY331bhQGTPgvsYU5+yBmlog1XbWSJFSh+gBE3VyLxMsw==","signatures":[{"sig":"MEQCIQCAKdUePdbM4vIKwpJcv3DRGkbhjirY353PjeGJgn0Q2gIfLRcd3PM5VljJgvy7/mu0CM1bLk+QS+pySj9oOYL0xQ==","keyid":"SHA256:DhQ8wR5APBvFHLF/+Tc+AYvPOdTpcIDqOhxsBHRwC7U"}],"unpackedSize":1467574},"type":"module","engines":{"node":">=20"},"exports":{".":{"types":"./js/index.d.ts","import":"./js/index.js"},"./js/*":"./js/*","./css/*":"./css/*","./fonts/*":"./fonts/*","./gallery":{"types":"./dist/gallery/index.d.ts","import":"./dist/gallery/index.js"},"./themes/*":"./themes/*","./index.css":"./index.css","./components":{"types":"./dist/index.d.ts","import":"./dist/index.js"},"./odla-ui.css":"./odla-ui.css","./package.json":"./package.json"},"gitHead":"81b462a7822d7654b5971b1a8e56a5014cf240f0","scripts":{"test":"npm run build && node --test --test-reporter=spec","build":"tsup","clean":"rm -rf dist","gen:css":"node scripts/gen-css.mjs","typecheck":"tsc --noEmit","prepublishOnly":"npm run build && npm test"},"_npmUser":{"name":"GitHub Actions","email":"npm-oidc-no-reply@github.com","trustedPublisher":{"id":"github","oidcConfigId":"oidc:6ee0f536-545b-4ab3-916e-ba5f458661c1"}},"repository":{"url":"git+https://github.com/cory/odla-ai.git","type":"git","directory":"packages/ui"},"_npmVersion":"11.6.2","description":"The odla design system: semantic CSS tokens, seven themes, application shells, exact-artifact review cards, bottom work docks, accessible status, friendly principal identity, anchored mentions, canvas helpers, and lightweight Preact components.","directories":{},"sideEffects":["*.css"],"_nodeVersion":"24.13.0","publishConfig":{"access":"public","provenance":false},"_hasShrinkwrap":false,"devDependencies":{"tsup":"^8.3.0","jsdom":"26.1.0","preact":"10.29.7","typescript":"^6.0.3","preact-render-to-string":"6.7.0"},"peerDependencies":{"preact":">=10.29.7 <11"},"_npmOperationalInternal":{"tmp":"tmp/ui_0.16.0_1785351972405_0.43495969087008546","host":"s3://npm-registry-packages-npm-production"}},"0.17.0":{"name":"@odla-ai/ui","version":"0.17.0","keywords":["odla","design-system","css","design-tokens","themes","components","preact"],"license":"MIT","_id":"@odla-ai/ui@0.17.0","maintainers":[{"name":"coryondrejka","email":"cory.ondrejka@gmail.com"}],"homepage":"https://odla.ai/docs/packages/ui","bugs":{"url":"https://github.com/cory/odla-ai/issues"},"dist":{"shasum":"7dd8b6edfb0fded113225a6685936d942e72bddc","tarball":"https://registry.npmjs.org/@odla-ai/ui/-/ui-0.17.0.tgz","fileCount":115,"integrity":"sha512-hqnUYcvu7lUeAzT5JWdkEyReQDZ9OrsOumPK0BWVCGLEKfkum3OyBxxQBSPWLsCmedqtXcg2YgQR0VBXmGQl+w==","signatures":[{"sig":"MEYCIQCfHGe9/kTQL/mbcc0hJ2bQsq5slySefbowCPO2E2RFnAIhANPUKTiY3h+K5j5g4kRl4oQOr+zGx0T9SunKwozMg81c","keyid":"SHA256:DhQ8wR5APBvFHLF/+Tc+AYvPOdTpcIDqOhxsBHRwC7U"}],"unpackedSize":1483914},"type":"module","engines":{"node":">=20"},"exports":{".":{"types":"./js/index.d.ts","import":"./js/index.js"},"./js/*":"./js/*","./css/*":"./css/*","./fonts/*":"./fonts/*","./gallery":{"types":"./dist/gallery/index.d.ts","import":"./dist/gallery/index.js"},"./themes/*":"./themes/*","./index.css":"./index.css","./components":{"types":"./dist/index.d.ts","import":"./dist/index.js"},"./odla-ui.css":"./odla-ui.css","./package.json":"./package.json"},"gitHead":"992376fbc409bdb5206e7e508b2485128160863a","scripts":{"test":"npm run build && node --test --test-reporter=spec","build":"tsup","clean":"rm -rf dist","gen:css":"node scripts/gen-css.mjs","typecheck":"tsc --noEmit","prepublishOnly":"npm run build && npm test"},"_npmUser":{"name":"GitHub Actions","email":"npm-oidc-no-reply@github.com","trustedPublisher":{"id":"github","oidcConfigId":"oidc:6ee0f536-545b-4ab3-916e-ba5f458661c1"}},"repository":{"url":"git+https://github.com/cory/odla-ai.git","type":"git","directory":"packages/ui"},"_npmVersion":"11.6.2","description":"The odla design system: semantic CSS tokens, seven themes, application shells, exact-artifact review cards, bottom work docks, accessible status, friendly principal identity, anchored mentions, canvas helpers, and lightweight Preact components.","directories":{},"sideEffects":["*.css"],"_nodeVersion":"24.13.0","publishConfig":{"access":"public","provenance":false},"_hasShrinkwrap":false,"devDependencies":{"tsup":"^8.3.0","jsdom":"26.1.0","preact":"10.29.7","typescript":"^6.0.3","preact-render-to-string":"6.7.0"},"peerDependencies":{"preact":">=10.29.7 <11"},"_npmOperationalInternal":{"tmp":"tmp/ui_0.17.0_1786581918499_0.22343392698334763","host":"s3://npm-registry-packages-npm-production"}},"0.18.0":{"name":"@odla-ai/ui","version":"0.18.0","keywords":["odla","design-system","css","design-tokens","themes","components","preact"],"license":"MIT","_id":"@odla-ai/ui@0.18.0","maintainers":[{"name":"coryondrejka","email":"cory.ondrejka@gmail.com"}],"homepage":"https://odla.ai/docs/packages/ui","bugs":{"url":"https://github.com/cory/odla-ai/issues"},"dist":{"shasum":"f518af538364313522745359a875e0a22e80463b","tarball":"https://registry.npmjs.org/@odla-ai/ui/-/ui-0.18.0.tgz","fileCount":115,"integrity":"sha512-fKTxbopu+LyOzMMkZHLq2+hwxbznFfkCW0rtGH0mVM1mo2i0at24w8ZtEGGdDxTXNOWkBmxQEjNLDxEx2DRjSQ==","signatures":[{"sig":"MEUCIQD4rxB+MYnrT3A4a+pRC/YoAIb+UeV1WLH/ey3EY7SAowIgBTZIztz3dBkpvGvCtwr/FepX+hoxQ3Sx+UlvmKpc2oE=","keyid":"SHA256:DhQ8wR5APBvFHLF/+Tc+AYvPOdTpcIDqOhxsBHRwC7U"}],"unpackedSize":1490608},"type":"module","engines":{"node":">=20"},"exports":{".":{"types":"./js/index.d.ts","import":"./js/index.js"},"./js/*":"./js/*","./css/*":"./css/*","./fonts/*":"./fonts/*","./gallery":{"types":"./dist/gallery/index.d.ts","import":"./dist/gallery/index.js"},"./themes/*":"./themes/*","./index.css":"./index.css","./components":{"types":"./dist/index.d.ts","import":"./dist/index.js"},"./odla-ui.css":"./odla-ui.css","./package.json":"./package.json"},"gitHead":"5c993420f91827f631f4649853d0c9e9966a3d1f","scripts":{"test":"npm run build && node --test --test-reporter=spec","build":"tsup","clean":"rm -rf dist","gen:css":"node scripts/gen-css.mjs","typecheck":"tsc --noEmit","prepublishOnly":"npm run build && npm test"},"_npmUser":{"name":"GitHub Actions","email":"npm-oidc-no-reply@github.com","trustedPublisher":{"id":"github","oidcConfigId":"oidc:6ee0f536-545b-4ab3-916e-ba5f458661c1"}},"repository":{"url":"git+https://github.com/cory/odla-ai.git","type":"git","directory":"packages/ui"},"_npmVersion":"11.6.2","description":"The odla design system: semantic CSS tokens, seven themes, application shells, exact-artifact review cards, bottom work docks, accessible status, friendly principal identity, anchored mentions, canvas helpers, and lightweight Preact components.","directories":{},"sideEffects":["*.css"],"_nodeVersion":"24.13.0","publishConfig":{"access":"public","provenance":false},"_hasShrinkwrap":false,"devDependencies":{"tsup":"^8.3.0","jsdom":"26.1.0","preact":"10.29.7","typescript":"^6.0.3","preact-render-to-string":"6.7.0"},"peerDependencies":{"preact":">=10.29.7 <11"},"_npmOperationalInternal":{"tmp":"tmp/ui_0.18.0_1786850176299_0.4221720220915359","host":"s3://npm-registry-packages-npm-production"}},"0.18.1":{"name":"@odla-ai/ui","version":"0.18.1","keywords":["odla","design-system","css","design-tokens","themes","components","preact"],"license":"MIT","_id":"@odla-ai/ui@0.18.1","maintainers":[{"name":"coryondrejka","email":"cory.ondrejka@gmail.com"}],"homepage":"https://odla.ai/docs/packages/ui","bugs":{"url":"https://github.com/cory/odla-ai/issues"},"dist":{"shasum":"a6e3dc3f34074a7fda0651978774c167d1c7f9fb","tarball":"https://registry.npmjs.org/@odla-ai/ui/-/ui-0.18.1.tgz","fileCount":115,"integrity":"sha512-cpC1sjJZ1pEi8EENFjZvmwKeubtO13rgjR8ehfpsKXfvUx2Oa52l8Uve7coAhrV9lgkSH4/fUzHByvz+cQb9kQ==","signatures":[{"sig":"MEUCIQDypWE6h5ScFgshMjy7f037yd4AtebX/ddbcrzi/e+s+wIgKIPKSQ1OCVa/02+RF8nERUV2rA/3EPEMOiiWKqt2xoE=","keyid":"SHA256:DhQ8wR5APBvFHLF/+Tc+AYvPOdTpcIDqOhxsBHRwC7U"}],"unpackedSize":1490610},"type":"module","engines":{"node":">=20"},"exports":{".":{"types":"./js/index.d.ts","import":"./js/index.js"},"./js/*":"./js/*","./css/*":"./css/*","./fonts/*":"./fonts/*","./gallery":{"types":"./dist/gallery/index.d.ts","import":"./dist/gallery/index.js"},"./themes/*":"./themes/*","./index.css":"./index.css","./components":{"types":"./dist/index.d.ts","import":"./dist/index.js"},"./odla-ui.css":"./odla-ui.css","./package.json":"./package.json"},"gitHead":"f2f1652ba56d1b024e131e3ff368a00bafe32461","scripts":{"test":"npm run build && node --test --test-reporter=spec","build":"tsup","clean":"rm -rf dist","gen:css":"node scripts/gen-css.mjs","typecheck":"tsc --noEmit","prepublishOnly":"npm run build && npm test"},"_npmUser":{"name":"GitHub Actions","email":"npm-oidc-no-reply@github.com","trustedPublisher":{"id":"github","oidcConfigId":"oidc:6ee0f536-545b-4ab3-916e-ba5f458661c1"}},"repository":{"url":"git+https://github.com/cory/odla-ai.git","type":"git","directory":"packages/ui"},"_npmVersion":"11.6.2","description":"The odla design system: semantic CSS tokens, seven themes, application shells, exact-artifact review cards, bottom work docks, accessible status, friendly principal identity, anchored mentions, canvas helpers, and lightweight Preact components.","directories":{},"sideEffects":["*.css"],"_nodeVersion":"24.13.0","publishConfig":{"access":"public","provenance":false},"_hasShrinkwrap":false,"devDependencies":{"tsup":"^8.3.0","jsdom":"26.1.0","preact":"10.29.7","typescript":"^6.0.3","preact-render-to-string":"6.7.0"},"peerDependencies":{"preact":">=10.29.7 <11"},"_npmOperationalInternal":{"tmp":"tmp/ui_0.18.1_1787176375525_0.25774445049706984","host":"s3://npm-registry-packages-npm-production"}},"0.19.0":{"name":"@odla-ai/ui","version":"0.19.0","keywords":["odla","design-system","css","design-tokens","themes","components","preact"],"license":"MIT","_id":"@odla-ai/ui@0.19.0","maintainers":[{"name":"coryondrejka","email":"cory.ondrejka@gmail.com"}],"homepage":"https://odla.ai/docs/packages/ui","bugs":{"url":"https://github.com/cory/odla-ai/issues"},"dist":{"shasum":"8e833bd612c0ab22cc01413df1bf29a676ebe001","tarball":"https://registry.npmjs.org/@odla-ai/ui/-/ui-0.19.0.tgz","fileCount":116,"integrity":"sha512-yOf9PjvKWZcNbS2M2eru6M7DYpX9+ohVxdBRuIx6D1fG9y7MW+UVAzy8kXQ1g//up+HF/v7s/0/AFsuN784mQQ==","signatures":[{"sig":"MEQCIBxbXI9VY2eOcyPjh93pzJTMtmal8KovSWUUKRgNDdtgAiBdKtDITN5Q5uQzokAPwSle6RIHidcfSMiX5yiFnbHzAw==","keyid":"SHA256:DhQ8wR5APBvFHLF/+Tc+AYvPOdTpcIDqOhxsBHRwC7U"},{"sig":"MEUCIQDr23AWsMcP/iN/Dio0QZwKhP/ouemv6T+Nr26qZ5nRbwIgBGBQUh0sDz5IGb+uuSx7BT3oml8FQyQ3Rppjf3OyGj0=","keyid":"SHA256:DhQ8wR5APBvFHLF/+Tc+AYvPOdTpcIDqOhxsBHRwC7U"}],"unpackedSize":1544579},"type":"module","engines":{"node":">=20"},"exports":{".":{"types":"./js/index.d.ts","import":"./js/index.js"},"./js/*":"./js/*","./css/*":"./css/*","./fonts/*":"./fonts/*","./gallery":{"types":"./dist/gallery/index.d.ts","import":"./dist/gallery/index.js"},"./themes/*":"./themes/*","./index.css":"./index.css","./components":{"types":"./dist/index.d.ts","import":"./dist/index.js"},"./odla-ui.css":"./odla-ui.css","./package.json":"./package.json"},"gitHead":"22706ab6ce644d52dea16438006abfedb09a9302","scripts":{"test":"npm run build && node --test --test-reporter=spec","build":"tsup","clean":"rm -rf dist","gen:css":"node scripts/gen-css.mjs","typecheck":"tsc --noEmit","prepublishOnly":"npm run build && npm test"},"_npmUser":{"name":"GitHub Actions","email":"npm-oidc-no-reply@github.com","trustedPublisher":{"id":"github","oidcConfigId":"oidc:6ee0f536-545b-4ab3-916e-ba5f458661c1"}},"repository":{"url":"git+https://github.com/cory/odla-ai.git","type":"git","directory":"packages/ui"},"_npmVersion":"11.6.2","description":"The odla design system: semantic CSS tokens, seven themes, application shells, safe authored Markdown, exact-artifact review cards, bottom work docks, accessible status, friendly principal identity, anchored mentions, canvas helpers, and lightweight Preac","directories":{},"sideEffects":["*.css"],"_nodeVersion":"24.13.0","publishConfig":{"access":"public","provenance":false},"_hasShrinkwrap":false,"devDependencies":{"tsup":"^8.3.0","jsdom":"26.1.0","preact":"10.29.7","typescript":"^6.0.3","preact-render-to-string":"6.7.0"},"peerDependencies":{"preact":">=10.29.7 <11"},"_npmOperationalInternal":{"tmp":"tmp/ui_0.19.0_1787397284275_0.09970891740180354","host":"s3://npm-registry-packages-npm-production"}},"0.19.1":{"name":"@odla-ai/ui","version":"0.19.1","keywords":["odla","design-system","css","design-tokens","themes","components","preact"],"license":"MIT","_id":"@odla-ai/ui@0.19.1","maintainers":[{"name":"coryondrejka","email":"cory.ondrejka@gmail.com"}],"homepage":"https://odla.ai/docs/packages/ui","bugs":{"url":"https://github.com/cory/odla-ai/issues"},"dist":{"shasum":"6b56950f5d353ca68c9bf2449e20ea2743116865","tarball":"https://registry.npmjs.org/@odla-ai/ui/-/ui-0.19.1.tgz","fileCount":116,"integrity":"sha512-45P627795k7hVDME84HZB2+f//PIZcCJDlxBAVO6GHx2jPmqNWfnBT3VX1nvCV5VT9OP7W861eEJG+ZqaqGX3w==","signatures":[{"sig":"MEUCIAl9/C84TobmQYDEcNTObgkuLQRA4SIUmrIbL62GK8rJAiEA0O+z3W/u7OzWpMIa/s85ERib+4hGcNXUt50kFeY/t4Q=","keyid":"SHA256:DhQ8wR5APBvFHLF/+Tc+AYvPOdTpcIDqOhxsBHRwC7U"},{"sig":"MEQCIDPivnQ0Ds7jvAf3FUqd7e9YiRSop/9I18MWL/rfvnf4AiBZngJFG8s45m3dp8gTNx53Yvj6kBPcIp155kCR8BaSqg==","keyid":"SHA256:DhQ8wR5APBvFHLF/+Tc+AYvPOdTpcIDqOhxsBHRwC7U"}],"unpackedSize":1552176},"type":"module","engines":{"node":">=20"},"exports":{".":{"types":"./js/index.d.ts","import":"./js/index.js"},"./js/*":"./js/*","./css/*":"./css/*","./fonts/*":"./fonts/*","./gallery":{"types":"./dist/gallery/index.d.ts","import":"./dist/gallery/index.js"},"./themes/*":"./themes/*","./index.css":"./index.css","./components":{"types":"./dist/index.d.ts","import":"./dist/index.js"},"./odla-ui.css":"./odla-ui.css","./package.json":"./package.json"},"gitHead":"d375e0ea28d859f2081fd8e62233e0de5b19438b","scripts":{"test":"npm run build && node --test --test-reporter=spec","build":"tsup","clean":"rm -rf dist","gen:css":"node scripts/gen-css.mjs","typecheck":"tsc --noEmit","prepublishOnly":"npm run build && npm test"},"_npmUser":{"name":"GitHub Actions","email":"npm-oidc-no-reply@github.com","trustedPublisher":{"id":"github","oidcConfigId":"oidc:6ee0f536-545b-4ab3-916e-ba5f458661c1"}},"repository":{"url":"git+https://github.com/cory/odla-ai.git","type":"git","directory":"packages/ui"},"_npmVersion":"11.6.2","description":"The odla design system: semantic CSS tokens, seven themes, application shells, safe authored Markdown, exact-artifact review cards, bottom work docks, accessible status, friendly principal identity, anchored mentions, canvas helpers, and lightweight Preac","directories":{},"sideEffects":["*.css"],"_nodeVersion":"24.13.0","publishConfig":{"access":"public","provenance":false},"_hasShrinkwrap":false,"devDependencies":{"tsup":"^8.3.0","jsdom":"26.1.0","preact":"10.29.7","typescript":"^6.0.3","preact-render-to-string":"6.7.0"},"peerDependencies":{"preact":">=10.29.7 <11"},"_npmOperationalInternal":{"tmp":"tmp/ui_0.19.1_1787525955343_0.7687886141776961","host":"s3://npm-registry-packages-npm-production"}},"0.20.0":{"_id":"@odla-ai/ui@0.20.0","bugs":{"url":"https://github.com/cory/odla-ai/issues"},"dist":{"shasum":"40e4cca3b53556a3dd6a116ff0c29097d2211062","tarball":"https://registry.npmjs.org/@odla-ai/ui/-/ui-0.20.0.tgz","fileCount":116,"integrity":"sha512-XcF284fqaMP8ioBEYfgSIK1GDMQbUsYlHCqrmdCfP6e3PB0a5C377qNBLrRkwJr5vCGjtbkCV65OqvsazKsiTQ==","signatures":[{"sig":"MEUCIEAyHhIxtfyB6hj15Qjx2LwEuQUSr7LVZqO/rx0wh3GqAiEA9s9ZPq9CSBvu4i6h1GBr8kOZDvo3lLvhJ0TL95IWXcU=","keyid":"SHA256:DhQ8wR5APBvFHLF/+Tc+AYvPOdTpcIDqOhxsBHRwC7U"},{"keyid":"SHA256:DhQ8wR5APBvFHLF/+Tc+AYvPOdTpcIDqOhxsBHRwC7U","sig":"MEUCIAehAZHxZMrs2DQ1BMBFWhQ3AeIlAQSx4zmveo+CD3n5AiEA7IkoLo+KFiofwJb3U3i1bSnlYRmRAS7Vk62uvb+uIcY="}],"unpackedSize":1569536},"name":"@odla-ai/ui","type":"module","engines":{"node":">=20"},"exports":{".":{"types":"./js/index.d.ts","import":"./js/index.js"},"./js/*":"./js/*","./css/*":"./css/*","./fonts/*":"./fonts/*","./gallery":{"types":"./dist/gallery/index.d.ts","import":"./dist/gallery/index.js"},"./themes/*":"./themes/*","./index.css":"./index.css","./components":{"types":"./dist/index.d.ts","import":"./dist/index.js"},"./odla-ui.css":"./odla-ui.css","./package.json":"./package.json"},"gitHead":"cb2462eb745fc309db9f314faa1dddaf8758e720","license":"MIT","scripts":{"test":"npm run build && node --test --test-reporter=spec","build":"tsup","clean":"rm -rf dist","gen:css":"node scripts/gen-css.mjs","typecheck":"tsc --noEmit","prepublishOnly":"npm run build && npm test"},"version":"0.20.0","_npmUser":{"name":"GitHub Actions","email":"npm-oidc-no-reply@github.com","trustedPublisher":{"id":"github","oidcConfigId":"oidc:6ee0f536-545b-4ab3-916e-ba5f458661c1"}},"homepage":"https://odla.ai/docs/packages/ui","keywords":["odla","design-system","css","design-tokens","themes","components","preact"],"repository":{"url":"git+https://github.com/cory/odla-ai.git","type":"git","directory":"packages/ui"},"_npmVersion":"11.6.2","description":"The odla design system: semantic CSS tokens, seven themes, application shells, safe authored Markdown, exact-artifact review cards, bottom work docks, accessible status, friendly principal identity, anchored mentions, canvas helpers, and lightweight Preac","directories":{},"maintainers":[{"name":"coryondrejka","email":"cory.ondrejka@gmail.com"}],"sideEffects":["*.css"],"_nodeVersion":"24.13.0","publishConfig":{"access":"public","provenance":false},"_hasShrinkwrap":false,"devDependencies":{"tsup":"^8.3.0","jsdom":"26.1.0","preact":"10.29.7","typescript":"^6.0.3","preact-render-to-string":"6.7.0"},"peerDependencies":{"preact":">=10.29.7 <11"},"_npmOperationalInternal":{"host":"s3://npm-registry-packages-npm-production","tmp":"tmp/ui_0.20.0_1788128181594_0.0312168483409756"}}},"time":{"created":"2026-07-04T15:56:57.708Z","modified":"2026-08-30T22:16:21.873Z","0.1.0":"2026-07-04T15:56:58.052Z","0.1.1":"2026-07-04T18:35:47.799Z","0.1.2":"2026-07-04T19:16:59.314Z","0.2.0":"2026-07-05T03:23:27.595Z","0.2.1":"2026-07-05T18:25:19.514Z","0.2.2":"2026-07-10T17:33:05.330Z","0.3.0":"2026-07-11T01:17:11.461Z","0.3.1":"2026-07-12T16:07:37.699Z","0.4.0":"2026-07-14T13:22:05.247Z","0.5.0":"2026-07-15T01:13:54.304Z","0.6.0":"2026-07-15T19:57:24.395Z","0.7.0":"2026-07-16T01:22:59.029Z","0.8.0":"2026-07-18T03:03:29.654Z","0.8.1":"2026-07-18T05:55:59.917Z","0.8.2":"2026-07-18T08:03:32.826Z","0.9.0":"2026-07-21T05:48:56.963Z","0.9.1":"2026-07-23T23:04:11.502Z","0.10.0":"2026-07-24T00:20:55.186Z","0.11.0":"2026-07-24T17:11:17.696Z","0.12.0":"2026-07-24T18:42:22.631Z","0.12.1":"2026-07-24T21:07:18.280Z","0.12.2":"2026-07-26T19:43:46.627Z","0.13.0":"2026-07-26T23:57:54.324Z","0.15.0":"2026-07-28T23:25:17.716Z","0.16.0":"2026-07-29T19:06:12.588Z","0.17.0":"2026-08-13T00:45:18.726Z","0.18.0":"2026-08-16T03:16:16.478Z","0.18.1":"2026-08-19T21:52:55.688Z","0.19.0":"2026-08-22T11:14:44.363Z","0.19.1":"2026-08-23T22:59:15.442Z","0.20.0":"2026-08-30T22:16:21.683Z"},"bugs":{"url":"https://github.com/cory/odla-ai/issues"},"license":"MIT","homepage":"https://odla.ai/docs/packages/ui","keywords":["odla","design-system","css","design-tokens","themes","components","preact"],"repository":{"url":"git+https://github.com/cory/odla-ai.git","type":"git","directory":"packages/ui"},"description":"The odla design system: semantic CSS tokens, seven themes, application shells, safe authored Markdown, exact-artifact review cards, bottom work docks, accessible status, friendly principal identity, anchored mentions, canvas helpers, and lightweight Preac","maintainers":[{"name":"coryondrejka","email":"cory.ondrejka@gmail.com"}],"readme":"# @odla-ai/ui\n\n> ⚠️ **Early access — pre-1.0.** Agents work from bounded runbooks; humans\n> approve credentials, production changes, releases, and merges. APIs and exact\n> package availability can change. Review the documented guarantees and\n> limitations; this software is MIT-licensed and provided without warranty.\n\nThe odla design system: one semantic token contract (`--ui-*`), seven themes,\nclass-scoped component CSS, canvas chart helpers, and optional Preact\ncomponents. CSS-first — every odla surface can consume it, from zero-build\nstatic sites to small Vite + Preact apps, and it covers marketing/brand sites\nas well as app chrome.\n\n- **Tokens**: colors, text tiers, status, fonts, spacing, radius, focus,\n  chart and chat roles, reading preferences (root size + scale, the\n  body/medium/strong/heading weight ladder, font smoothing), plus a marketing\n  tier (fluid display type scale, section rhythm, decor hooks). Defaults ship\n  at zero specificity (`:where()`), so themes and app overrides always win.\n- **Reading preferences**: five axes the reader owns, one attribute each on\n  `<html>` — appearance (`data-theme`), palette (`data-ui-palette`), text size\n  (`data-ui-text`), text weight (`data-ui-weight`), motion\n  (`data-ui-motion`). The `mono` and `contrast` palettes *layer over* any\n  theme instead of replacing it, winning on specificity rather than load\n  order. `contrast` **sharpens** rather than replaces — it references only\n  roles the theme owns, and each theme deepens its own accents to AAA in\n  `ui.css`, hue held, measured on every test run. `PrefsMenu` is the popover\n  for apps, `prefsMenuHtml()` + `bindPrefsMenu()` the same control for static\n  sites, `PREFS_NO_FLASH` the `<head>` snippet that applies a stored choice\n  before first paint, and `prefersReducedMotion()` the hook script-driven\n  motion needs. Layout measures must multiply `--ui-font-size-root` rather\n  than use `rem`, or the text-size axis widens the page too — zoom, not a\n  text setting.\n- **Scopes**: `[data-ui-accent=\"<name>\"]` swaps the accent family to a\n  theme-shipped named variant inside any subtree (salt ships six Silver &\n  Salt page palettes); the `.ui-invert` class (per-theme generated\n  `invert.css`) renders a section in the theme's dark palette regardless of\n  the global mode. Import `themes/<name>/scope.css` and use `ThemeScope` when\n  an application subtree needs an explicit light/dark mode and local brand\n  tokens without changing the document root.\n- **Themes**: `odla-brand` (the odla Studio default), `paper`,\n  `flightline` (field manual meets flight recorder), plus `juniper`, `salt`,\n  `chalk`, and `clay` (the blog themes — `@odla-ai/blog` resolves those four\n  from this package). Each theme = `styles.css` (its own palette) + `ui.css`\n  (mapping onto the contract) + `theme.json`.\n- **Components (CSS)**: buttons/segmented/pills, form fields with validation\n  states, cards/panels/badges, data tables, container-native app chrome with a\n  **navigation rail + sidebar**, accessible in-content tabs, a persistent\n  bottom notification edge with Gmail-style docked cards, a sticky or contained\n  **top bar**, grouped **docs left-nav**, friendly principal identity badges,\n  exact-artifact human review cards, toasts/banners/dropzones, chat surfaces (message bubbles, tool-call cards,\n  thinking panels, composer — shaped by `@odla-ai/ai`'s streaming contract),\n  chart containers, and calendar surfaces (month grid, week/day time grid,\n  agenda list, toolbar).\n- **Marketing (CSS, `mk-` family)**: section bands + content wells, the\n  eyebrow/display-title/lead ladder, hero decor (spotlight, hairlines,\n  watermark, grain, glow), stat cells, striped proof rows, portrait quote\n  card, page sources/footnotes, step flows and pipelines, FAQ accordion,\n  veil-blur marketing nav (bar and two-tier rail), sitemap footer, CTA band,\n  and the split-circle brand mark.\n- **JS helpers** (buildless ESM): the reading-preference model\n  (`PREF_AXES`, `readPrefs`/`setPref`, `PREFS_NO_FLASH`, `prefsMenuHtml`,\n  `bindPrefsMenu`), the older mode-only light/dark toggle it supersedes,\n  a `--ui-*` palette reader for canvas, and chart primitives\n  (`fitCanvas`, `niceTicks`, `bandFill`, `drawTip`, …).\n- **`/components`**: form controls, including `InlineActionField` for a compact\n  label/input/action row with a reserved accessible status region; `PrefsMenu`;\n  `TopBar`/`TopBarLink`; `AppShell`,\n  `NavigationRail`, `Sidebar`; accessible `Tabs`; `Dock`/`DockCard` and\n  `EdgeNotificationBar`; `StatusIndicator`; `PrincipalBadge`; `MentionEditor`;\n  `ReviewCard` for server-confirmed artifact decisions; bounded, HTML-inert\n  `Markdown` for authored prose;\n  `DocsNav`/`DocsNavGroup`/`DocsNavLink`; `SectionNav`\n  (in-page table of contents with scroll-spy highlighting + smooth scroll,\n  built on the `useScrollSpy` hook, also exported);\n  `CalendarMonth`/`CalendarWeek`/`CalendarDay`/`CalendarAgenda` +\n  `CalendarToolbar` (timezone-aware views whose `events` accept\n  `@odla-ai/calendar` `Booking[]` as-is — no dependency between the packages);\n  marketing components (`MarketingNav`/`MarketingNavLink`/`MarketingNavMenu`,\n  `Hero`, `StatBand`, `StepIndicator`/`StepPipeline`,\n  `Accordion`/`AccordionItem`, `MarketingFooter`); `FilterChips`;\n  **`DataTable`** (sortable/filterable, app-rendered cells that survive\n  reorder via required `rowKey`); and data viz (`Choropleth` over app-owned\n  SVG geometry with theme heat-ramp fills, `CycleDiagram`) —\n  authored and shipped against Preact. The only compatibility helper in the\n  component build is Preact's own `forwardRef`; hooks and JSX use native\n  `preact/hooks` and `preact/jsx-runtime`.\n\n`Tabs` keeps every panel mounted by default so ordinary in-page forms retain\nlocal state. URL-backed application workspaces should use `mount=\"active\"` to\nprevent hidden panels from fetching or running effects. `MasterDetail` accepts\n`closeHref` so mobile return navigation can be a native anchor while retaining\nfocus restoration.\n\n> **Ask the runbooks first.** odla's operational procedures live in a database,\n> not in this file: `npx @odla-ai/cli runbook ask \"<question>\"` returns the current\n> steps, and unlike anything written here it cannot be out of date. Use it before\n> searching the web or working from memory. This README and the JSDoc in the\n> shipped `.d.ts` are the version-matched **API** reference; a runbook is the\n> **procedure**. Most tasks need an answer from both.\n\n## Install\n\n```bash\nnpm install @odla-ai/ui preact\n```\n\nThe `/components` and `/gallery` entries require Preact 10.29.7 or newer in the\n10.x line. CSS and buildless JS entry points have no framework runtime.\n\n## 60-second start (Vite + Preact)\n\n```js\n// main.tsx\nimport \"@odla-ai/ui/fonts/plex.css\";\nimport \"@odla-ai/ui/themes/paper/styles.css\";\nimport \"@odla-ai/ui/themes/paper/ui.css\";\nimport \"@odla-ai/ui/index.css\";\n```\n\n```tsx\nimport { Button, Field, Input } from \"@odla-ai/ui/components\";\n\n<div className=\"card\">\n  <h4>New note</h4>\n  <Field label=\"Title\" htmlFor=\"t\">\n    <Input id=\"t\" placeholder=\"…\" />\n  </Field>\n  <div className=\"row\">\n    <Button>Save</Button>\n    <Button variant=\"secondary\">Cancel</Button>\n  </div>\n</div>\n```\n\n`InlineActionField` owns the stable `.inline-action-field-*` class contract,\nkeeps its status output mounted to avoid layout jumps, and stacks from its own\ncontainer width. Use `code` for monospace identifiers and pass native input\nbehavior such as `autoComplete=\"one-time-code\"` through `inputProps`.\n\nStatic sites copy `odla-ui.css` (pre-flattened, no imports) plus a theme's\n`styles.css` + `ui.css` and use the same classes in plain HTML.\n\n## Safe authored Markdown\n\n`Markdown` renders the compact prose dialect used by app-owned content fields:\nheadings, ordered and unordered nested lists, blockquotes, bold, italic,\nstrikethrough, inline code, and links. It creates Preact nodes directly; it\nnever uses an HTML string or `dangerouslySetInnerHTML`, so raw HTML remains\nvisible text. Relative links and credential-free absolute HTTPS links are\nnavigable. Active, credential-bearing, plain-HTTP, protocol-relative, malformed,\nor oversized destinations keep their readable label and lose the anchor.\n\n```tsx\nimport {\n  Markdown,\n  MAX_MARKDOWN_LENGTH,\n  MAX_MARKDOWN_NESTING_DEPTH,\n} from \"@odla-ai/ui/components\";\n\n<Markdown source={membershipTier.authoredBody} />;\n```\n\nThe safety bounds are fixed: `MAX_MARKDOWN_LENGTH` is 65,536 UTF-16 code units and\n`MAX_MARKDOWN_NESTING_DEPTH` is 8, with a private output-node budget as a third\nguard. Source beyond the input/output budget renders only a bounded form plus\nan explicit notice; formatting deeper than the nesting bound is shown as text.\nValidate the same length at the authoring boundary when truncation would change\nthe meaning of public copy. Images, fenced code, tables, and raw HTML are\ndeliberately outside this component's dialect.\n\n## Bottom-edge work and mentions\n\n`Dock` belongs in `AppShell`'s `dock` slot and may contain several independent\n`DockCard`s. A card header minimizes/restores it; `onDismiss` closes only that\ncard. Use `size=\"lg\"` plus `bodyOverflow=\"contained\"` for a complete child work\nsurface. Set `active` on the viewer's current card so it receives focus and\nscrolls into view in an overflowing narrow dock. `StatusIndicator` is the shared\naccessible dot-and-label state for live connections and background work. The\ndock's empty span passes pointer input through to the underlying work surface,\nso opening one card never prevents selecting another item to pin.\n\n```tsx\nimport {\n  AppShell,\n  Dock,\n  DockCard,\n  MentionEditor,\n  StatusIndicator,\n} from \"@odla-ai/ui/components\";\n\n<AppShell\n  dock={\n    <Dock aria-label=\"Open discussions\">\n      <DockCard\n        title=\"Release notes\"\n        meta=\"3 replies\"\n        size=\"lg\"\n        bodyOverflow=\"contained\"\n        active\n      >\n        <Thread />\n      </DockCard>\n    </Dock>\n  }\n>\n  <StatusIndicator active tone=\"good\">Live updates</StatusIndicator>\n  <MentionEditor {...composer} menuPlacement=\"above\" />\n</AppShell>\n```\n\n`MentionEditor` defaults to `menuPlacement=\"below\"`. Bottom-edge or sticky\ncomposers should use `\"above\"` so candidate rows stay beside the text and\ninside the viewport.\n\n## Friendly principal identity\n\nUse `PrincipalBadge` wherever humans, agents, and services share an activity\nstream, approval surface, or discussion. The component is deliberately\ndata-free: the host resolves an authoritative profile and passes a friendly\n`displayName`, optional validated `handle`, and—only for an agent—the friendly\nname of its accountable human in `managedBy`.\n\n```tsx\nimport { PrincipalBadge } from \"@odla-ai/ui/components\";\n\n<PrincipalBadge kind=\"human\" displayName=\"Cory\" handle=\"cory\" />\n<PrincipalBadge\n  kind=\"agent\"\n  displayName=\"Odla\"\n  handle=\"cory/odla\"\n  managedBy=\"Cory\"\n/>\n<PrincipalBadge kind=\"service\" displayName=\"Platform\" handle=\"platform\" />\n```\n\nKind is always printed as text and reinforced with an H/A/S mark and a\ndifferent shape, so color is never the only distinction. Do not pass raw\nprincipal or manager IDs as display content. There is intentionally no ID prop\nor ID fallback: if an authoritative friendly name is unavailable, resolve it\nbefore rendering.\n\n`ChatThread` message items expose a presentation-only `byline` slot for the\nsame trusted badge. Resolve its data outside the design system; the thread\ncomponent never guesses identity from an author id.\n\n```tsx\n<ChatThread items={[{\n  kind: \"message\",\n  id: message.id,\n  role: \"assistant\",\n  byline: (\n    <PrincipalBadge\n      kind=\"agent\"\n      displayName=\"Brand partner\"\n      handle=\"cory/brand\"\n      managedBy=\"Cory\"\n    />\n  ),\n  body: message.body,\n}]} />\n```\n\n## Human review of agent changes\n\nUse `ReviewCard` for a proposed brand facet, CRM rule, content revision, or\ncode/configuration change. Its children are the exact preview the person is\njudging; its title and `meta` can carry revision and trusted `PrincipalBadge`\ncontext. The component does not grant authority. Its callbacks ask the host to\ndecide, and the host must revalidate the current human and exact resource,\npersist an immutable receipt, then return the server-confirmed `decision`.\n\n```tsx\nimport { PrincipalBadge, ReviewCard } from \"@odla-ai/ui/components\";\n\n<ReviewCard\n  title=\"Spring campaign palette\"\n  meta={<PrincipalBadge kind=\"agent\" displayName=\"Brand partner\" handle=\"brand\" />}\n  approveLabel=\"Accept palette\"\n  busy={saving}\n  decision={serverDecision}\n  onApprove={() => approveExactProposal(proposal)}\n  onReject={() => rejectExactProposal(proposal)}\n>\n  <ExactPalettePreview proposal={proposal} />\n</ReviewCard>\n```\n\nNever set `decision=\"approved\"` from optimistic local state. A card can make\nthe workflow legible; only the product's authenticated server boundary can\nmake the decision real. The Design gallery demonstrates the pending and\nterminal states.\n\nChapter/CRM application shells using the Salt visual grammar can use one\nload-order-safe import instead of assembling the three layers themselves:\n\n```js\nimport \"@odla-ai/ui/themes/salt/app.css\";\n```\n\n## Themes\n\n| Theme | Look | Fonts |\n| --- | --- | --- |\n| `odla-brand` | Growth-green product brand (the odla Studio default) | IBM Plex Sans/Mono (`fonts/plex.css`) |\n| `paper` | Warm paper dashboard | IBM Plex Sans/Mono (`fonts/plex.css`) |\n| `flightline` | Technical field manual by day, flight recorder at night | IBM Plex Sans/Mono (`fonts/plex.css`) |\n| `juniper` | Quiet long-form reading, violet accents | Lora + Gill Sans stack |\n| `salt` | Warm editorial cream/moss/rust; six named accent variants (`rust`/`teal`/`ink`/`plum`/`lime`/`moss`), grain + `&` watermark decor | Cormorant Garamond + Satoshi |\n| `chalk` | Chalkboard on graph paper | Cormorant + Spectral + JetBrains Mono |\n| `clay` | Warm light editorial, terracotta | System stacks only (zero font requests) |\n\nDark mode: every theme defines dark tokens on `[data-theme=\"dark\"]` and the\n`prefers-color-scheme` fallback (kept byte-identical — tested). Toggle with\n`toggleTheme()` from the JS helpers. For dark **islands** inside a light\npage, import `themes/<name>/invert.css` (generated) and put `.ui-invert` on\nthe section.\n\nFor an isolated application surface, additionally import\n`themes/<name>/scope.css` and wrap the surface:\n\n```tsx\nimport { ThemeScope } from \"@odla-ai/ui/components\";\n\n<ThemeScope theme=\"paper\" colorScheme=\"light\" tokens={{ accent: \"#35654d\" }}>\n  <AdminApp />\n</ThemeScope>\n```\n\nThe full contract — token tables, class inventory, recipes, invariants — lives\nin this installed README and the exported TypeScript declarations/JSDoc. The\nrendered public reference is at <https://odla.ai/docs/packages/ui>.\n\n## Development\n\n```bash\nnpm test -w @odla-ai/ui      # builds dist, then node --test\nnpm run gen:css -w @odla-ai/ui   # refresh odla-ui.css after editing css/\n```\n\nTests enforce: theme dark-block identity across all seven themes, full\n`--ui-*` coverage per theme, accent-variant completeness (every\n`[data-ui-accent]` block declares the full swap set), invert/accent scope\nbyte-identity with the root defaults, class-scoped selectors (no bare\nelements) in component sheets, generated-CSS freshness (`odla-ui.css`,\n`tokens.css`, `invert.css`), gallery completeness for every `/components`\nexport, and component render/interaction behavior.\n","readmeFilename":"README.md"}