{"_id":"@autumnsgrove/lattice","_rev":"6-43babd7aa36ef635b840c0181f651335","name":"@autumnsgrove/lattice","dist-tags":{"latest":"1.2.2"},"versions":{"1.0.0":{"name":"@autumnsgrove/lattice","version":"1.0.0","keywords":["grove","lattice","blog","cms","sveltekit","cloudflare","durable-objects","ui-components","multi-tenant","loom","ai-routing"],"author":{"name":"AutumnsGrove"},"license":"AGPL-3.0-only","_id":"@autumnsgrove/lattice@1.0.0","maintainers":[{"name":"autumnsgrove","email":"autumnbrown23@pm.me"}],"homepage":"https://github.com/AutumnsGrove/Lattice#readme","bugs":{"url":"https://github.com/AutumnsGrove/Lattice/issues"},"dist":{"shasum":"bcb482dc71999c7abc2998943e2894b48e666da7","tarball":"https://registry.npmjs.org/@autumnsgrove/lattice/-/lattice-1.0.0.tgz","fileCount":1447,"integrity":"sha512-VIQ9fqJp7uRNcCeZ/tEk68aNPea3aa9TI/Bu2Jt6bol/gVBRBZHuTPLBiWzy93+jLbTsPKvQqA7BG57N2dZOyQ==","signatures":[{"sig":"MEUCIHQEClWFUacbs8hn7sQxCKc7a+ZzcIdT9jPTe0da0kXGAiEAkdPjvHqDmj7jTMKtMJ7qgtv9G2QSgty+icw9Ca1XlfU=","keyid":"SHA256:DhQ8wR5APBvFHLF/+Tc+AYvPOdTpcIDqOhxsBHRwC7U"}],"unpackedSize":9833641},"type":"module","types":"./dist/index.d.ts","svelte":"./dist/index.js","exports":{".":{"types":"./dist/index.d.ts","svelte":"./dist/index.js","default":"./dist/index.js"},"./ui":{"types":"./dist/ui/index.d.ts","svelte":"./dist/ui/index.js","default":"./dist/ui/index.js"},"./auth":{"types":"./dist/auth/index.d.ts","default":"./dist/auth/index.js"},"./loom":{"types":"./dist/loom/index.d.ts","default":"./dist/loom/index.js"},"./email":{"types":"./dist/email/index.d.ts","default":"./dist/email/index.js"},"./lumen":{"types":"./dist/lumen/index.d.ts","default":"./dist/lumen/index.js"},"./thorn":{"types":"./dist/thorn/index.d.ts","default":"./dist/thorn/index.js"},"./utils":{"types":"./dist/utils/index.d.ts","default":"./dist/utils/index.js"},"./auth/*":{"types":"./dist/auth/*.d.ts","default":"./dist/auth/*.js"},"./config":{"types":"./dist/config/index.d.ts","default":"./dist/config/index.js"},"./curios":{"types":"./dist/curios/index.d.ts","default":"./dist/curios/index.js"},"./errors":{"types":"./dist/errors/index.d.ts","default":"./dist/errors/index.js"},"./grafts":{"types":"./dist/grafts/index.d.ts","svelte":"./dist/grafts/index.js","default":"./dist/grafts/index.js"},"./server":{"types":"./dist/server/index.d.ts","default":"./dist/server/index.js"},"./zephyr":{"types":"./dist/zephyr/index.d.ts","default":"./dist/zephyr/index.js"},"./utils/*":{"types":"./dist/utils/*.d.ts","default":"./dist/utils/*.js"},"./config/*":{"types":"./dist/config/*.d.ts","default":"./dist/config/*.js"},"./payments":{"types":"./dist/payments/index.d.ts","default":"./dist/payments/index.js"},"./server/*":{"types":"./dist/server/*.d.ts","default":"./dist/server/*.js"},"./services":{"types":"./dist/server/services/index.d.ts","default":"./dist/server/services/index.js"},"./ui/arbor":{"types":"./dist/ui/components/arbor/index.d.ts","svelte":"./dist/ui/components/arbor/index.js","default":"./dist/ui/components/arbor/index.js"},"./ui/forms":{"types":"./dist/ui/components/forms/index.d.ts","svelte":"./dist/ui/components/forms/index.js","default":"./dist/ui/components/forms/index.js"},"./ui/icons":{"types":"./dist/ui/components/icons/index.d.ts","svelte":"./dist/ui/components/icons/index.js","default":"./dist/ui/components/icons/index.js"},"./ui/utils":{"types":"./dist/ui/utils/index.d.ts","default":"./dist/ui/utils/index.js"},"./vineyard":{"types":"./dist/ui/vineyard/index.d.ts","svelte":"./dist/ui/vineyard/index.js","default":"./dist/ui/vineyard/index.js"},"./groveauth":{"types":"./dist/heartwood/index.d.ts","default":"./dist/heartwood/index.js"},"./heartwood":{"types":"./dist/heartwood/index.d.ts","default":"./dist/heartwood/index.js"},"./threshold":{"types":"./dist/threshold/index.d.ts","default":"./dist/threshold/index.js"},"./ui/charts":{"types":"./dist/ui/components/charts/index.d.ts","svelte":"./dist/ui/components/charts/index.js","default":"./dist/ui/components/charts/index.js"},"./ui/chrome":{"types":"./dist/ui/components/chrome/index.d.ts","svelte":"./dist/ui/components/chrome/index.js","default":"./dist/ui/components/chrome/index.js"},"./ui/editor":{"types":"./dist/components/editor/index.d.ts","svelte":"./dist/components/editor/index.js","default":"./dist/components/editor/index.js"},"./ui/nature":{"types":"./dist/ui/components/nature/index.d.ts","svelte":"./dist/ui/components/nature/index.js","default":"./dist/ui/components/nature/index.js"},"./ui/states":{"types":"./dist/ui/components/states/index.d.ts","svelte":"./dist/ui/components/states/index.js","default":"./dist/ui/components/states/index.js"},"./ui/stores":{"types":"./dist/ui/stores/index.d.ts","svelte":"./dist/ui/stores/index.js","default":"./dist/ui/stores/index.js"},"./ui/styles":"./dist/ui/styles/grove.css","./ui/tokens":{"types":"./dist/ui/tokens/index.d.ts","default":"./dist/ui/tokens/index.js"},"./email/urls":{"types":"./dist/email/urls.d.ts","default":"./dist/email/urls.js"},"./payments/*":{"types":"./dist/payments/*.d.ts","default":"./dist/payments/*.js"},"./services/*":{"types":"./dist/server/services/*.d.ts","default":"./dist/server/services/*.js"},"./ui/content":{"types":"./dist/ui/components/content/index.d.ts","svelte":"./dist/ui/components/content/index.js","default":"./dist/ui/components/content/index.js"},"./ui/gallery":{"types":"./dist/ui/components/gallery/index.d.ts","svelte":"./dist/ui/components/gallery/index.js","default":"./dist/ui/components/gallery/index.js"},"./email/porch":{"types":"./dist/email/porch/index.d.ts","default":"./dist/email/porch/index.js"},"./email/types":{"types":"./dist/email/types.d.ts","default":"./dist/email/types.js"},"./loom/worker":{"types":"./dist/loom/adapters/worker.d.ts","default":"./dist/loom/adapters/worker.js"},"./ui/feedback":{"types":"./dist/ui/components/feedback/index.d.ts","svelte":"./dist/ui/components/feedback/index.js","default":"./dist/ui/components/feedback/index.js"},"./ui/nature/*":{"types":"./dist/ui/components/nature/*/index.d.ts","svelte":"./dist/ui/components/nature/*/index.js","default":"./dist/ui/components/nature/*/index.js"},"./ui/styles/*":"./dist/ui/styles/*","./ui/tailwind":"./dist/ui/tailwind.preset.js","./email/render":{"types":"./dist/email/render.d.ts","default":"./dist/email/render.js"},"./grafts/login":{"types":"./dist/grafts/login/index.d.ts","svelte":"./dist/grafts/login/index.js","default":"./dist/grafts/login/index.js"},"./loom/testing":{"types":"./dist/loom/test-utils.d.ts","default":"./dist/loom/test-utils.js"},"./ui/terrarium":{"types":"./dist/ui/components/terrarium/index.d.ts","svelte":"./dist/ui/components/terrarium/index.js","default":"./dist/ui/components/terrarium/index.js"},"./email/updates":{"types":"./dist/email/updates/index.d.ts","default":"./dist/email/updates/index.js"},"./feature-flags":{"types":"./dist/feature-flags/index.d.ts","default":"./dist/feature-flags/index.js"},"./ui/indicators":{"types":"./dist/ui/components/indicators/index.d.ts","svelte":"./dist/ui/components/indicators/index.js","default":"./dist/ui/components/indicators/index.js"},"./ui/typography":{"types":"./dist/ui/components/typography/index.d.ts","svelte":"./dist/ui/components/typography/index.js","default":"./dist/ui/components/typography/index.js"},"./curios/gallery":{"types":"./dist/curios/gallery/index.d.ts","default":"./dist/curios/gallery/index.js"},"./email/schedule":{"types":"./dist/email/schedule.d.ts","default":"./dist/email/schedule.js"},"./grafts/pricing":{"types":"./dist/grafts/pricing/index.d.ts","svelte":"./dist/grafts/pricing/index.js","default":"./dist/grafts/pricing/index.js"},"./grafts/uploads":{"types":"./dist/grafts/uploads/index.d.ts","svelte":"./dist/grafts/uploads/index.js","default":"./dist/grafts/uploads/index.js"},"./loom/sveltekit":{"types":"./dist/loom/adapters/sveltekit.d.ts","default":"./dist/loom/adapters/sveltekit.js"},"./threshold/hono":{"types":"./dist/threshold/adapters/hono.d.ts","default":"./dist/threshold/adapters/hono.js"},"./ui/content/hum":{"types":"./dist/ui/components/content/hum/index.d.ts","svelte":"./dist/ui/components/content/hum/index.js","default":"./dist/ui/components/content/hum/index.js"},"./curios/timeline":{"types":"./dist/curios/timeline/index.d.ts","default":"./dist/curios/timeline/index.js"},"./email/sequences":{"types":"./dist/email/sequences/index.d.ts","default":"./dist/email/sequences/index.js"},"./grafts/upgrades":{"types":"./dist/grafts/upgrades/index.d.ts","svelte":"./dist/grafts/upgrades/index.js","default":"./dist/grafts/upgrades/index.js"},"./config/terrarium":{"types":"./dist/config/terrarium.d.ts","default":"./dist/config/terrarium.js"},"./email/components":{"types":"./dist/email/components/index.d.ts","default":"./dist/email/components/index.js"},"./threshold/worker":{"types":"./dist/threshold/adapters/worker.d.ts","default":"./dist/threshold/adapters/worker.js"},"./grafts/greenhouse":{"types":"./dist/grafts/greenhouse/index.d.ts","svelte":"./dist/grafts/greenhouse/index.js","default":"./dist/grafts/greenhouse/index.js"},"./ui/content/curios":{"types":"./dist/ui/components/content/curios/index.d.ts","svelte":"./dist/ui/components/content/curios/index.js","default":"./dist/ui/components/content/curios/index.js"},"./components/admin/*":{"types":"./dist/components/admin/*.svelte.d.ts","svelte":"./dist/components/admin/*.svelte"},"./components/custom/*":{"types":"./dist/components/custom/*.svelte.d.ts","svelte":"./dist/components/custom/*.svelte"},"./grafts/login/server":{"types":"./dist/grafts/login/server/index.d.ts","default":"./dist/grafts/login/server/index.js"},"./threshold/sveltekit":{"types":"./dist/threshold/adapters/sveltekit.d.ts","default":"./dist/threshold/adapters/sveltekit.js"},"./server/observability":{"types":"./dist/server/observability/index.d.ts","default":"./dist/server/observability/index.js"},"./curios/timeline/voices":{"types":"./dist/curios/timeline/voices/index.d.ts","default":"./dist/curios/timeline/voices/index.js"}},"gitHead":"9d83d66d7599d82fba2e2d28ae8be7ae93c7290b","scripts":{"dev":"vite dev","test":"vitest","audit":"pnpm audit --audit-level=moderate","build":"vite build","check":"svelte-kit sync && svelte-check --tsconfig ./tsconfig.json","deploy":"wrangler pages deploy .svelte-kit/cloudflare --project-name grove-lattice","package":"svelte-kit sync && svelte-package -o dist","preview":"vite preview","test:ui":"vitest --ui","test:run":"vitest run","audit:fix":"pnpm audit --fix","email:dev":"email dev -p 3001 --dir src/lib/email","prepackage":"npx tsx ../../scripts/generate/grove-term-manifest.ts","test:watch":"vitest watch","check:watch":"svelte-kit sync && svelte-check --tsconfig ./tsconfig.json --watch","dev:wrangler":"wrangler pages dev -- vite dev","email:export":"email export --dir src/lib/email","build:package":"svelte-kit sync && svelte-package -o dist","test:coverage":"vitest run --coverage","test:security":"vitest run tests/security","prepublishOnly":"pnpm run package","build:sveltekit":"vite build"},"_npmUser":{"name":"autumnsgrove","email":"autumnbrown23@pm.me"},"repository":{"url":"git+https://github.com/AutumnsGrove/Lattice.git","type":"git","directory":"packages/engine"},"_npmVersion":"11.8.0","description":"The shared framework powering Grove — blogging platform, glassmorphism UI components, Loom Durable Objects SDK, Lumen AI routing, auth utilities, feature flags, and email infrastructure for SvelteKit on Cloudflare Workers.","directories":{},"_nodeVersion":"25.5.0","dependencies":{"clsx":"^2.1.1","resend":"^4.8.0","esm-env":"^1.2.2","heic2any":"^0.0.4","dompurify":"^3.3.1","@tiptap/pm":"^3.19.0","markdown-it":"^14.1.1","@jsquash/jxl":"^1.3.0","@tiptap/core":"^3.19.0","lucide-svelte":"^0.554.0","sanitize-html":"^2.17.0","svelte-sonner":"^1.0.7","svelte-tiptap":"^3.0.1","tailwind-merge":"^3.4.0","@11ty/gray-matter":"^2.0.1","dom-to-image-more":"^3.7.2","@react-email/render":"^2.0.4","@tiptap/starter-kit":"^3.19.0","@autumnsgrove/gossamer":"^0.1.1","@react-email/components":"^1.0.7","@tiptap/extension-image":"^3.19.0","@tiptap/extension-underline":"^3.19.0","@lemonsqueezy/lemonsqueezy.js":"^4.0.0","@tiptap/extension-bubble-menu":"^3.19.0","@tiptap/extension-placeholder":"^3.19.0","@tiptap/extension-character-count":"^3.19.0"},"publishConfig":{"access":"public","registry":"https://registry.npmjs.org"},"_hasShrinkwrap":false,"devDependencies":{"vite":"^5.4.21","jsdom":"^27.4.0","react":"^19.2.4","svelte":"^5.50.1","vitest":"^4.0.18","bits-ui":"^1.8.0","esbuild":"^0.27.3","postcss":"^8.5.6","unified":"^11.0.5","happy-dom":"^20.6.1","react-dom":"^19.2.4","@vitest/ui":"^4.0.18","rehype-raw":"^7.0.0","typescript":"^5.9.3","react-email":"^5.2.8","remark-html":"^16.0.1","tailwindcss":"^3.4.19","@types/mdast":"^4.0.4","@types/react":"^19.2.14","autoprefixer":"^10.4.24","remark-parse":"^11.0.0","svelte-check":"^4.3.6","@sveltejs/kit":"^2.50.2","remark-rehype":"^11.1.2","@lucide/svelte":"^0.482.0","@types/react-dom":"^19.2.3","rehype-stringify":"^10.0.1","unist-util-visit":"^5.1.0","@sveltejs/package":"^2.5.7","tailwind-variants":"^0.3.1","@types/markdown-it":"^14.1.2","@vitest/coverage-v8":"^4.0.18","@types/sanitize-html":"^2.16.0","@tailwindcss/typography":"^0.5.19","@testing-library/svelte":"^5.3.1","@cloudflare/workers-types":"^4.20260210.0","@testing-library/jest-dom":"^6.9.1","@sveltejs/adapter-cloudflare":"^7.2.6","@sveltejs/vite-plugin-svelte":"^4.0.4"},"peerDependencies":{"svelte":"^5.0.0","tailwindcss":"^3.4.0","@sveltejs/kit":"^2.0.0"},"_npmOperationalInternal":{"tmp":"tmp/lattice_1.0.0_1771456397106_0.022778467135876612","host":"s3://npm-registry-packages-npm-production"}},"1.1.0":{"name":"@autumnsgrove/lattice","version":"1.1.0","keywords":["grove","lattice","blog","cms","sveltekit","cloudflare","durable-objects","ui-components","multi-tenant","loom","ai-routing"],"author":{"name":"AutumnsGrove"},"license":"AGPL-3.0-only","_id":"@autumnsgrove/lattice@1.1.0","maintainers":[{"name":"autumnsgrove","email":"autumnbrown23@pm.me"}],"homepage":"https://github.com/AutumnsGrove/Lattice#readme","bugs":{"url":"https://github.com/AutumnsGrove/Lattice/issues"},"dist":{"shasum":"c6f4d9050159cc2d2702af6d2dbba55b5b90739b","tarball":"https://registry.npmjs.org/@autumnsgrove/lattice/-/lattice-1.1.0.tgz","fileCount":1577,"integrity":"sha512-+wgT2myduFRrZ5mwIGQqwK62x2i5iLhRPaR4GnQWV/wXhQPK3p4TK5VzBFSFIf+oXqLZmfR3LATg3mm+tRxvCQ==","signatures":[{"sig":"MEYCIQDjgrybTnBO44L+xuVv90DbtroW7PTe7YtI3EoLtdLYNgIhAPeejFOznGzj4iDtMpRbn8c3QuAB/ypP8lqtF9cqfGna","keyid":"SHA256:DhQ8wR5APBvFHLF/+Tc+AYvPOdTpcIDqOhxsBHRwC7U"}],"unpackedSize":11261525},"type":"module","types":"./dist/index.d.ts","svelte":"./dist/index.js","exports":{".":{"types":"./dist/index.d.ts","svelte":"./dist/index.js","default":"./dist/index.js"},"./db":{"types":"./dist/server/db/index.d.ts","default":"./dist/server/db/index.js"},"./ui":{"types":"./dist/ui/index.d.ts","svelte":"./dist/ui/index.js","default":"./dist/ui/index.js"},"./auth":{"types":"./dist/auth/index.d.ts","default":"./dist/auth/index.js"},"./loom":{"types":"./dist/loom/index.d.ts","default":"./dist/loom/index.js"},"./amber":{"types":"./dist/amber/index.d.ts","default":"./dist/amber/index.js"},"./email":{"types":"./dist/email/index.d.ts","default":"./dist/email/index.js"},"./lumen":{"types":"./dist/lumen/index.d.ts","default":"./dist/lumen/index.js"},"./thorn":{"types":"./dist/thorn/index.d.ts","default":"./dist/thorn/index.js"},"./utils":{"types":"./dist/utils/index.d.ts","default":"./dist/utils/index.js"},"./auth/*":{"types":"./dist/auth/*.d.ts","default":"./dist/auth/*.js"},"./blazes":{"types":"./dist/blazes/index.d.ts","svelte":"./dist/blazes/index.js","default":"./dist/blazes/index.js"},"./config":{"types":"./dist/config/index.d.ts","default":"./dist/config/index.js"},"./curios":{"types":"./dist/curios/index.d.ts","default":"./dist/curios/index.js"},"./errors":{"types":"./dist/errors/index.d.ts","default":"./dist/errors/index.js"},"./grafts":{"types":"./dist/grafts/index.d.ts","svelte":"./dist/grafts/index.js","default":"./dist/grafts/index.js"},"./server":{"types":"./dist/server/index.d.ts","default":"./dist/server/index.js"},"./warden":{"types":"./dist/warden/index.d.ts","default":"./dist/warden/index.js"},"./zephyr":{"types":"./dist/zephyr/index.d.ts","default":"./dist/zephyr/index.js"},"./firefly":{"types":"./dist/firefly/index.d.ts","default":"./dist/firefly/index.js"},"./foliage":{"types":"./dist/foliage/index.d.ts","svelte":"./dist/foliage/index.js","default":"./dist/foliage/index.js"},"./utils/*":{"types":"./dist/utils/*.d.ts","default":"./dist/utils/*.js"},"./config/*":{"types":"./dist/config/*.d.ts","default":"./dist/config/*.js"},"./payments":{"types":"./dist/payments/index.d.ts","default":"./dist/payments/index.js"},"./server/*":{"types":"./dist/server/*.d.ts","default":"./dist/server/*.js"},"./services":{"types":"./dist/server/services/index.d.ts","default":"./dist/server/services/index.js"},"./ui/arbor":{"types":"./dist/ui/components/arbor/index.d.ts","svelte":"./dist/ui/components/arbor/index.js","default":"./dist/ui/components/arbor/index.js"},"./ui/forms":{"types":"./dist/ui/components/forms/index.d.ts","svelte":"./dist/ui/components/forms/index.js","default":"./dist/ui/components/forms/index.js"},"./ui/icons":{"types":"./dist/ui/components/icons/index.d.ts","svelte":"./dist/ui/components/icons/index.js","default":"./dist/ui/components/icons/index.js"},"./ui/utils":{"types":"./dist/ui/utils/index.d.ts","default":"./dist/ui/utils/index.js"},"./vineyard":{"types":"./dist/ui/vineyard/index.d.ts","svelte":"./dist/ui/vineyard/index.js","default":"./dist/ui/vineyard/index.js"},"./db/schema":{"types":"./dist/server/db/schema/index.d.ts","default":"./dist/server/db/schema/index.js"},"./groveauth":{"types":"./dist/heartwood/index.d.ts","default":"./dist/heartwood/index.js"},"./heartwood":{"types":"./dist/heartwood/index.d.ts","default":"./dist/heartwood/index.js"},"./threshold":{"types":"./dist/threshold/index.d.ts","default":"./dist/threshold/index.js"},"./ui/charts":{"types":"./dist/ui/components/charts/index.d.ts","svelte":"./dist/ui/components/charts/index.js","default":"./dist/ui/components/charts/index.js"},"./ui/chrome":{"types":"./dist/ui/components/chrome/index.d.ts","svelte":"./dist/ui/components/chrome/index.js","default":"./dist/ui/components/chrome/index.js"},"./ui/editor":{"types":"./dist/components/editor/index.d.ts","svelte":"./dist/components/editor/index.js","default":"./dist/components/editor/index.js"},"./ui/nature":{"types":"./dist/ui/components/nature/index.d.ts","svelte":"./dist/ui/components/nature/index.js","default":"./dist/ui/components/nature/index.js"},"./ui/states":{"types":"./dist/ui/components/states/index.d.ts","svelte":"./dist/ui/components/states/index.js","default":"./dist/ui/components/states/index.js"},"./ui/stores":{"types":"./dist/ui/stores/index.d.ts","svelte":"./dist/ui/stores/index.js","default":"./dist/ui/stores/index.js"},"./ui/styles":"./dist/ui/styles/grove.css","./ui/tokens":{"types":"./dist/ui/tokens/index.d.ts","default":"./dist/ui/tokens/index.js"},"./email/urls":{"types":"./dist/email/urls.d.ts","default":"./dist/email/urls.js"},"./payments/*":{"types":"./dist/payments/*.d.ts","default":"./dist/payments/*.js"},"./services/*":{"types":"./dist/server/services/*.d.ts","default":"./dist/server/services/*.js"},"./ui/content":{"types":"./dist/ui/components/content/index.d.ts","svelte":"./dist/ui/components/content/index.js","default":"./dist/ui/components/content/index.js"},"./ui/gallery":{"types":"./dist/ui/components/gallery/index.d.ts","svelte":"./dist/ui/components/gallery/index.js","default":"./dist/ui/components/gallery/index.js"},"./db/schema/*":{"types":"./dist/server/db/schema/*.d.ts","default":"./dist/server/db/schema/*.js"},"./email/porch":{"types":"./dist/email/porch/index.d.ts","default":"./dist/email/porch/index.js"},"./email/types":{"types":"./dist/email/types.d.ts","default":"./dist/email/types.js"},"./loom/worker":{"types":"./dist/loom/adapters/worker.d.ts","default":"./dist/loom/adapters/worker.js"},"./ui/feedback":{"types":"./dist/ui/components/feedback/index.d.ts","svelte":"./dist/ui/components/feedback/index.js","default":"./dist/ui/components/feedback/index.js"},"./ui/nature/*":{"types":"./dist/ui/components/nature/*/index.d.ts","svelte":"./dist/ui/components/nature/*/index.js","default":"./dist/ui/components/nature/*/index.js"},"./ui/styles/*":"./dist/ui/styles/*","./ui/tailwind":"./dist/ui/tailwind.preset.js","./email/render":{"types":"./dist/email/render.d.ts","default":"./dist/email/render.js"},"./grafts/login":{"types":"./dist/grafts/login/index.d.ts","svelte":"./dist/grafts/login/index.js","default":"./dist/grafts/login/index.js"},"./loom/testing":{"types":"./dist/loom/test-utils.d.ts","default":"./dist/loom/test-utils.js"},"./ui/terrarium":{"types":"./dist/ui/components/terrarium/index.d.ts","svelte":"./dist/ui/components/terrarium/index.js","default":"./dist/ui/components/terrarium/index.js"},"./email/updates":{"types":"./dist/email/updates/index.d.ts","default":"./dist/email/updates/index.js"},"./feature-flags":{"types":"./dist/feature-flags/index.d.ts","default":"./dist/feature-flags/index.js"},"./ui/components":{"types":"./dist/ui/components/ui/index.d.ts","svelte":"./dist/ui/components/ui/index.js","default":"./dist/ui/components/ui/index.js"},"./ui/indicators":{"types":"./dist/ui/components/indicators/index.d.ts","svelte":"./dist/ui/components/indicators/index.js","default":"./dist/ui/components/indicators/index.js"},"./ui/typography":{"types":"./dist/ui/components/typography/index.d.ts","svelte":"./dist/ui/components/typography/index.js","default":"./dist/ui/components/typography/index.js"},"./curios/gallery":{"types":"./dist/curios/gallery/index.d.ts","default":"./dist/curios/gallery/index.js"},"./email/schedule":{"types":"./dist/email/schedule.d.ts","default":"./dist/email/schedule.js"},"./foliage/server":{"types":"./dist/foliage/server.d.ts","default":"./dist/foliage/server.js"},"./foliage/themes":{"types":"./dist/foliage/themes.d.ts","default":"./dist/foliage/themes.js"},"./grafts/pricing":{"types":"./dist/grafts/pricing/index.d.ts","svelte":"./dist/grafts/pricing/index.js","default":"./dist/grafts/pricing/index.js"},"./grafts/uploads":{"types":"./dist/grafts/uploads/index.d.ts","svelte":"./dist/grafts/uploads/index.js","default":"./dist/grafts/uploads/index.js"},"./loom/sveltekit":{"types":"./dist/loom/adapters/sveltekit.d.ts","default":"./dist/loom/adapters/sveltekit.js"},"./threshold/hono":{"types":"./dist/threshold/adapters/hono.d.ts","default":"./dist/threshold/adapters/hono.js"},"./ui/content/hum":{"types":"./dist/ui/components/content/hum/index.d.ts","svelte":"./dist/ui/components/content/hum/index.js","default":"./dist/ui/components/content/hum/index.js"},"./curios/timeline":{"types":"./dist/curios/timeline/index.d.ts","default":"./dist/curios/timeline/index.js"},"./email/sequences":{"types":"./dist/email/sequences/index.d.ts","default":"./dist/email/sequences/index.js"},"./grafts/upgrades":{"types":"./dist/grafts/upgrades/index.d.ts","svelte":"./dist/grafts/upgrades/index.js","default":"./dist/grafts/upgrades/index.js"},"./ui/media-player":{"types":"./dist/ui/components/media-player/index.d.ts","svelte":"./dist/ui/components/media-player/index.js","default":"./dist/ui/components/media-player/index.js"},"./config/terrarium":{"types":"./dist/config/terrarium.d.ts","default":"./dist/config/terrarium.js"},"./email/components":{"types":"./dist/email/components/index.d.ts","default":"./dist/email/components/index.js"},"./threshold/worker":{"types":"./dist/threshold/adapters/worker.d.ts","default":"./dist/threshold/adapters/worker.js"},"./grafts/greenhouse":{"types":"./dist/grafts/greenhouse/index.d.ts","svelte":"./dist/grafts/greenhouse/index.js","default":"./dist/grafts/greenhouse/index.js"},"./ui/content/curios":{"types":"./dist/ui/components/content/curios/index.d.ts","svelte":"./dist/ui/components/content/curios/index.js","default":"./dist/ui/components/content/curios/index.js"},"./components/admin/*":{"types":"./dist/components/admin/*.svelte.d.ts","svelte":"./dist/components/admin/*.svelte"},"./foliage/components":{"types":"./dist/foliage/components.d.ts","svelte":"./dist/foliage/components.js","default":"./dist/foliage/components.js"},"./components/custom/*":{"types":"./dist/components/custom/*.svelte.d.ts","svelte":"./dist/components/custom/*.svelte"},"./grafts/login/server":{"types":"./dist/grafts/login/server/index.d.ts","default":"./dist/grafts/login/server/index.js"},"./threshold/sveltekit":{"types":"./dist/threshold/adapters/sveltekit.d.ts","default":"./dist/threshold/adapters/sveltekit.js"},"./server/observability":{"types":"./dist/server/observability/index.d.ts","default":"./dist/server/observability/index.js"},"./curios/timeline/voices":{"types":"./dist/curios/timeline/voices/index.d.ts","default":"./dist/curios/timeline/voices/index.js"}},"gitHead":"5795a993c2915e850db06d8ecf8a4926ce3a274c","scripts":{"dev":"vite dev","test":"vitest","audit":"pnpm audit --audit-level=moderate","build":"vite build","check":"svelte-kit sync && svelte-check --tsconfig ./tsconfig.json","deploy":"wrangler pages deploy .svelte-kit/cloudflare --project-name grove-lattice","package":"svelte-kit sync && svelte-package -o dist","preview":"vite preview","test:ui":"vitest --ui","test:run":"vitest run","audit:fix":"pnpm audit --fix","email:dev":"email dev -p 3001 --dir src/lib/email","prepackage":"npx tsx ../../scripts/generate/grove-term-manifest.ts","test:watch":"vitest watch","check:watch":"svelte-kit sync && svelte-check --tsconfig ./tsconfig.json --watch","dev:wrangler":"wrangler pages dev -- vite dev","email:export":"email export --dir src/lib/email","build:package":"svelte-kit sync && svelte-package -o dist","test:coverage":"vitest run --coverage","test:security":"vitest run tests/security","prepublishOnly":"pnpm run package","build:sveltekit":"vite build"},"_npmUser":{"name":"autumnsgrove","email":"autumnbrown23@pm.me"},"repository":{"url":"git+https://github.com/AutumnsGrove/Lattice.git","type":"git","directory":"libs/engine"},"_npmVersion":"11.9.0","description":"The shared framework powering Grove — blogging platform, glassmorphism UI components, Loom Durable Objects SDK, Lumen AI routing, auth utilities, feature flags, and email infrastructure for SvelteKit on Cloudflare Workers.","directories":{},"_nodeVersion":"25.6.1","dependencies":{"zod":"^4.3.6","clsx":"^2.1.1","resend":"^4.8.0","esm-env":"^1.2.2","heic2any":"^0.0.4","dompurify":"^3.3.1","@tiptap/pm":"^3.19.0","drizzle-orm":"0.44.5","markdown-it":"^14.1.1","@jsquash/jxl":"^1.3.0","@tiptap/core":"^3.19.0","lucide-svelte":"^0.554.0","sanitize-html":"^2.17.0","svelte-sonner":"^1.0.7","svelte-tiptap":"^3.0.1","tailwind-merge":"^3.4.0","@11ty/gray-matter":"^2.0.1","dom-to-image-more":"^3.7.2","@autumnsgrove/infra":"workspace:*","@react-email/render":"^2.0.4","@tiptap/starter-kit":"^3.19.0","@autumnsgrove/foliage":"workspace:*","@autumnsgrove/gossamer":"workspace:*","@react-email/components":"^1.0.7","@tiptap/extension-image":"^3.19.0","@tiptap/extension-underline":"^3.19.0","@tiptap/extension-bubble-menu":"^3.19.0","@tiptap/extension-placeholder":"^3.19.0","@tiptap/extension-character-count":"^3.19.0"},"publishConfig":{"access":"public","registry":"https://registry.npmjs.org"},"_hasShrinkwrap":false,"devDependencies":{"vite":"^5.4.21","jsdom":"^27.4.0","react":"^19.2.4","svelte":"^5.50.1","vitest":"^4.0.18","bits-ui":"^1.8.0","esbuild":"^0.27.3","postcss":"^8.5.6","unified":"^11.0.5","happy-dom":"^20.6.1","react-dom":"^19.2.4","@vitest/ui":"^4.0.18","rehype-raw":"^7.0.0","typescript":"^5.9.3","drizzle-kit":"0.31.9","react-email":"^5.2.8","remark-html":"^16.0.1","tailwindcss":"^3.4.19","@types/mdast":"^4.0.4","@types/react":"^19.2.14","autoprefixer":"^10.4.24","remark-parse":"^11.0.0","svelte-check":"^4.3.6","@sveltejs/kit":"^2.50.2","remark-rehype":"^11.1.2","@lucide/svelte":"^0.482.0","@types/react-dom":"^19.2.3","rehype-stringify":"^10.0.1","unist-util-visit":"^5.1.0","@sveltejs/package":"^2.5.7","tailwind-variants":"^0.3.1","@types/markdown-it":"^14.1.2","@vitest/coverage-v8":"^4.0.18","@types/sanitize-html":"^2.16.0","@tailwindcss/typography":"^0.5.19","@testing-library/svelte":"^5.3.1","@cloudflare/workers-types":"^4.20260210.0","@testing-library/jest-dom":"^6.9.1","@sveltejs/adapter-cloudflare":"^7.2.6","@sveltejs/vite-plugin-svelte":"^4.0.4"},"peerDependencies":{"svelte":"^5.0.0","tailwindcss":"^3.4.0","@sveltejs/kit":"^2.0.0"},"_npmOperationalInternal":{"tmp":"tmp/lattice_1.1.0_1772157453144_0.8846240858777203","host":"s3://npm-registry-packages-npm-production"}},"1.1.2":{"name":"@autumnsgrove/lattice","version":"1.1.2","keywords":["grove","lattice","blog","cms","sveltekit","cloudflare","durable-objects","ui-components","multi-tenant","loom","ai-routing"],"author":{"name":"AutumnsGrove"},"license":"AGPL-3.0-only","_id":"@autumnsgrove/lattice@1.1.2","maintainers":[{"name":"autumnsgrove","email":"autumnbrown23@pm.me"}],"homepage":"https://github.com/AutumnsGrove/Lattice#readme","bugs":{"url":"https://github.com/AutumnsGrove/Lattice/issues"},"dist":{"shasum":"35b84968c9eef9efa3410100317c293a7c6844d8","tarball":"https://registry.npmjs.org/@autumnsgrove/lattice/-/lattice-1.1.2.tgz","fileCount":1803,"integrity":"sha512-JiCj7OEMVEm/dAwFBnV2DctTnVr7WJyUd+zSwC7h4vLR14yLpgpLSbClQESkTSaGbHOtx4/mm0jmK5ZsXg7JpQ==","signatures":[{"sig":"MEUCIQDtofNHKrrzXJiNUhwSb0+IlBGLw2ZwsfeCyxQqRWZtuAIgHEYq1mRfrRLLuYaqcRQRkoSJBFZnGBdi2m3F9NflENc=","keyid":"SHA256:DhQ8wR5APBvFHLF/+Tc+AYvPOdTpcIDqOhxsBHRwC7U"}],"unpackedSize":12116489},"type":"module","types":"./dist/index.d.ts","svelte":"./dist/index.js","exports":{".":{"types":"./dist/index.d.ts","svelte":"./dist/index.js","default":"./dist/index.js"},"./db":{"types":"./dist/server/db/index.d.ts","default":"./dist/server/db/index.js"},"./ui":{"types":"./dist/ui/index.d.ts","svelte":"./dist/ui/index.js","default":"./dist/ui/index.js"},"./git":{"types":"./dist/git/index.d.ts","default":"./dist/git/index.js"},"./auth":{"types":"./dist/auth/index.d.ts","default":"./dist/auth/index.js"},"./loom":{"types":"./dist/loom/index.d.ts","default":"./dist/loom/index.js"},"./amber":{"types":"./dist/amber/index.d.ts","default":"./dist/amber/index.js"},"./email":{"types":"./dist/email/index.d.ts","default":"./dist/email/index.js"},"./lumen":{"types":"./dist/lumen/index.d.ts","default":"./dist/lumen/index.js"},"./thorn":{"types":"./dist/thorn/index.d.ts","default":"./dist/thorn/index.js"},"./utils":{"types":"./dist/utils/index.d.ts","default":"./dist/utils/index.js"},"./auth/*":{"types":"./dist/auth/*.d.ts","default":"./dist/auth/*.js"},"./blazes":{"types":"./dist/blazes/index.d.ts","svelte":"./dist/blazes/index.js","default":"./dist/blazes/index.js"},"./config":{"types":"./dist/config/index.d.ts","default":"./dist/config/index.js"},"./curios":{"types":"./dist/curios/index.d.ts","default":"./dist/curios/index.js"},"./errors":{"types":"./dist/errors/index.d.ts","default":"./dist/errors/index.js"},"./grafts":{"types":"./dist/grafts/index.d.ts","svelte":"./dist/grafts/index.js","default":"./dist/grafts/index.js"},"./server":{"types":"./dist/server/index.d.ts","default":"./dist/server/index.js"},"./warden":{"types":"./dist/warden/index.d.ts","default":"./dist/warden/index.js"},"./zephyr":{"types":"./dist/zephyr/index.d.ts","default":"./dist/zephyr/index.js"},"./firefly":{"types":"./dist/firefly/index.d.ts","default":"./dist/firefly/index.js"},"./lumen/*":{"types":"./dist/lumen/*.d.ts","default":"./dist/lumen/*.js"},"./reverie":{"types":"./dist/reverie/index.d.ts","default":"./dist/reverie/index.js"},"./thorn/*":{"types":"./dist/thorn/*.d.ts","default":"./dist/thorn/*.js"},"./ui/chat":{"types":"./dist/ui/chat/index.d.ts","default":"./dist/ui/chat/index.js"},"./utils/*":{"types":"./dist/utils/*.d.ts","default":"./dist/utils/*.js"},"./config/*":{"types":"./dist/config/*.d.ts","default":"./dist/config/*.js"},"./curios/*":{"types":"./dist/curios/*/index.d.ts","default":"./dist/curios/*/index.js"},"./errors/*":{"types":"./dist/errors/*.d.ts","default":"./dist/errors/*.js"},"./payments":{"types":"./dist/payments/index.d.ts","default":"./dist/payments/index.js"},"./sentinel":{"types":"./dist/sentinel/index.d.ts","default":"./dist/sentinel/index.js"},"./server/*":{"types":"./dist/server/*.d.ts","default":"./dist/server/*.js"},"./services":{"types":"./dist/server/services/index.d.ts","default":"./dist/server/services/index.js"},"./styles/*":"./dist/styles/*","./ui/arbor":{"types":"./dist/ui/components/arbor/index.d.ts","svelte":"./dist/ui/components/arbor/index.js","default":"./dist/ui/components/arbor/index.js"},"./ui/forms":{"types":"./dist/ui/components/forms/index.d.ts","svelte":"./dist/ui/components/forms/index.js","default":"./dist/ui/components/forms/index.js"},"./ui/icons":{"types":"./dist/ui/components/icons/index.d.ts","svelte":"./dist/ui/components/icons/index.js","default":"./dist/ui/components/icons/index.js"},"./ui/utils":{"types":"./dist/ui/utils/index.d.ts","default":"./dist/ui/utils/index.js"},"./vineyard":{"types":"./dist/ui/vineyard/index.d.ts","svelte":"./dist/ui/vineyard/index.js","default":"./dist/ui/vineyard/index.js"},"./actions/*":{"types":"./dist/actions/*.d.ts","default":"./dist/actions/*.js"},"./db/schema":{"types":"./dist/server/db/schema/index.d.ts","default":"./dist/server/db/schema/index.js"},"./groveauth":{"types":"./dist/heartwood/index.d.ts","default":"./dist/heartwood/index.js"},"./heartwood":{"types":"./dist/heartwood/index.d.ts","default":"./dist/heartwood/index.js"},"./threshold":{"types":"./dist/threshold/index.d.ts","default":"./dist/threshold/index.js"},"./ui/charts":{"types":"./dist/ui/components/charts/index.d.ts","svelte":"./dist/ui/components/charts/index.js","default":"./dist/ui/components/charts/index.js"},"./ui/chat/*":{"types":"./dist/ui/chat/*.d.ts","default":"./dist/ui/chat/*.js"},"./ui/chrome":{"types":"./dist/ui/components/chrome/index.d.ts","svelte":"./dist/ui/components/chrome/index.js","default":"./dist/ui/components/chrome/index.js"},"./ui/editor":{"types":"./dist/components/editor/index.d.ts","svelte":"./dist/components/editor/index.js","default":"./dist/components/editor/index.js"},"./ui/nature":{"types":"./dist/ui/components/nature/index.d.ts","svelte":"./dist/ui/components/nature/index.js","default":"./dist/ui/components/nature/index.js"},"./ui/states":{"types":"./dist/ui/components/states/index.d.ts","svelte":"./dist/ui/components/states/index.js","default":"./dist/ui/components/states/index.js"},"./ui/stores":{"types":"./dist/ui/stores/index.d.ts","svelte":"./dist/ui/stores/index.js","default":"./dist/ui/stores/index.js"},"./ui/styles":"./dist/ui/styles/grove.css","./ui/tokens":{"types":"./dist/ui/tokens/index.d.ts","default":"./dist/ui/tokens/index.js"},"./email/urls":{"types":"./dist/email/urls.d.ts","default":"./dist/email/urls.js"},"./payments/*":{"types":"./dist/payments/*.d.ts","default":"./dist/payments/*.js"},"./sentinel/*":{"types":"./dist/sentinel/*.d.ts","default":"./dist/sentinel/*.js"},"./services/*":{"types":"./dist/server/services/*.d.ts","default":"./dist/server/services/*.js"},"./ui/content":{"types":"./dist/ui/components/content/index.d.ts","svelte":"./dist/ui/components/content/index.js","default":"./dist/ui/components/content/index.js"},"./ui/gallery":{"types":"./dist/ui/components/gallery/index.d.ts","svelte":"./dist/ui/components/gallery/index.js","default":"./dist/ui/components/gallery/index.js"},"./ui/types/*":{"types":"./dist/ui/types/*.d.ts","default":"./dist/ui/types/*.js"},"./ui/utils/*":{"types":"./dist/ui/utils/*.d.ts","default":"./dist/ui/utils/*.js"},"./db/schema/*":{"types":"./dist/server/db/schema/*.d.ts","default":"./dist/server/db/schema/*.js"},"./email/porch":{"types":"./dist/email/porch/index.d.ts","default":"./dist/email/porch/index.js"},"./email/types":{"types":"./dist/email/types.d.ts","default":"./dist/email/types.js"},"./heartwood/*":{"types":"./dist/heartwood/*.d.ts","default":"./dist/heartwood/*.js"},"./loom/worker":{"types":"./dist/loom/adapters/worker.d.ts","default":"./dist/loom/adapters/worker.js"},"./threshold/*":{"types":"./dist/threshold/*.d.ts","default":"./dist/threshold/*.js"},"./ui/feedback":{"types":"./dist/ui/components/feedback/index.d.ts","svelte":"./dist/ui/components/feedback/index.js","default":"./dist/ui/components/feedback/index.js"},"./ui/nature/*":{"types":"./dist/ui/components/nature/*/index.d.ts","svelte":"./dist/ui/components/nature/*/index.js","default":"./dist/ui/components/nature/*/index.js"},"./ui/stores/*":{"types":"./dist/ui/stores/*.d.ts","default":"./dist/ui/stores/*.js"},"./ui/styles/*":"./dist/ui/styles/*","./ui/tailwind":"./dist/ui/tailwind.preset.js","./ui/tokens/*":{"types":"./dist/ui/tokens/*.d.ts","default":"./dist/ui/tokens/*.js"},"./ui/vineyard":{"types":"./dist/ui/vineyard/index.d.ts","svelte":"./dist/ui/vineyard/index.js","default":"./dist/ui/vineyard/index.js"},"./email/render":{"types":"./dist/email/render.d.ts","default":"./dist/email/render.js"},"./grafts/login":{"types":"./dist/grafts/login/index.d.ts","svelte":"./dist/grafts/login/index.js","default":"./dist/grafts/login/index.js"},"./loom/testing":{"types":"./dist/loom/test-utils.d.ts","default":"./dist/loom/test-utils.js"},"./server/petal":{"types":"./dist/server/petal/index.d.ts","default":"./dist/server/petal/index.js"},"./server/utils":{"types":"./dist/server/utils/index.d.ts","default":"./dist/server/utils/index.js"},"./ui/terrarium":{"types":"./dist/ui/components/terrarium/index.d.ts","svelte":"./dist/ui/components/terrarium/index.js","default":"./dist/ui/components/terrarium/index.js"},"./email/updates":{"types":"./dist/email/updates/index.d.ts","default":"./dist/email/updates/index.js"},"./feature-flags":{"types":"./dist/feature-flags/index.d.ts","default":"./dist/feature-flags/index.js"},"./ui/components":{"types":"./dist/ui/components/ui/index.d.ts","svelte":"./dist/ui/components/ui/index.js","default":"./dist/ui/components/ui/index.js"},"./ui/indicators":{"types":"./dist/ui/components/indicators/index.d.ts","svelte":"./dist/ui/components/indicators/index.js","default":"./dist/ui/components/indicators/index.js"},"./ui/typography":{"types":"./dist/ui/components/typography/index.d.ts","svelte":"./dist/ui/components/typography/index.js","default":"./dist/ui/components/typography/index.js"},"./curios/gallery":{"types":"./dist/curios/gallery/index.d.ts","default":"./dist/curios/gallery/index.js"},"./curios/shrines":{"types":"./dist/curios/shrines/index.d.ts","default":"./dist/curios/shrines/index.js"},"./email/schedule":{"types":"./dist/email/schedule.d.ts","default":"./dist/email/schedule.js"},"./grafts/login/*":{"types":"./dist/grafts/login/*.d.ts","default":"./dist/grafts/login/*.js"},"./grafts/pricing":{"types":"./dist/grafts/pricing/index.d.ts","svelte":"./dist/grafts/pricing/index.js","default":"./dist/grafts/pricing/index.js"},"./grafts/uploads":{"types":"./dist/grafts/uploads/index.d.ts","svelte":"./dist/grafts/uploads/index.js","default":"./dist/grafts/uploads/index.js"},"./loom/sveltekit":{"types":"./dist/loom/adapters/sveltekit.d.ts","default":"./dist/loom/adapters/sveltekit.js"},"./server/petal/*":{"types":"./dist/server/petal/*.d.ts","default":"./dist/server/petal/*.js"},"./server/utils/*":{"types":"./dist/server/utils/*.d.ts","default":"./dist/server/utils/*.js"},"./threshold/hono":{"types":"./dist/threshold/adapters/hono.d.ts","default":"./dist/threshold/adapters/hono.js"},"./ui/content/hum":{"types":"./dist/ui/components/content/hum/index.d.ts","svelte":"./dist/ui/components/content/hum/index.js","default":"./dist/ui/components/content/hum/index.js"},"./ui/season-meta":{"types":"./dist/ui/season-meta.d.ts","default":"./dist/ui/season-meta.js"},"./curios/sanitize":{"types":"./dist/curios/sanitize.d.ts","default":"./dist/curios/sanitize.js"},"./curios/timeline":{"types":"./dist/curios/timeline/index.d.ts","default":"./dist/curios/timeline/index.js"},"./durable-objects":{"types":"./dist/durable-objects/index.d.ts","default":"./dist/durable-objects/index.js"},"./email/sequences":{"types":"./dist/email/sequences/index.d.ts","default":"./dist/email/sequences/index.js"},"./feature-flags/*":{"types":"./dist/feature-flags/*.d.ts","default":"./dist/feature-flags/*.js"},"./grafts/upgrades":{"types":"./dist/grafts/upgrades/index.d.ts","svelte":"./dist/grafts/upgrades/index.js","default":"./dist/grafts/upgrades/index.js"},"./server/services":{"types":"./dist/server/services/index.d.ts","default":"./dist/server/services/index.js"},"./ui/media-player":{"types":"./dist/ui/components/media-player/index.d.ts","svelte":"./dist/ui/components/media-player/index.js","default":"./dist/ui/components/media-player/index.js"},"./config/terrarium":{"types":"./dist/config/terrarium.d.ts","default":"./dist/config/terrarium.js"},"./curios/guestbook":{"types":"./dist/curios/guestbook/index.d.ts","default":"./dist/curios/guestbook/index.js"},"./email/components":{"types":"./dist/email/components/index.d.ts","default":"./dist/email/components/index.js"},"./threshold/worker":{"types":"./dist/threshold/adapters/worker.d.ts","default":"./dist/threshold/adapters/worker.js"},"./blazes/components":{"types":"./dist/blazes/components/index.d.ts","svelte":"./dist/blazes/components/index.js","default":"./dist/blazes/components/index.js"},"./durable-objects/*":{"types":"./dist/durable-objects/*.d.ts","default":"./dist/durable-objects/*.js"},"./grafts/greenhouse":{"types":"./dist/grafts/greenhouse/index.d.ts","svelte":"./dist/grafts/greenhouse/index.js","default":"./dist/grafts/greenhouse/index.js"},"./server/services/*":{"types":"./dist/server/services/*.d.ts","default":"./dist/server/services/*.js"},"./styles/tokens.css":"./dist/styles/tokens.css","./ui/content/curios":{"types":"./dist/curios/components/index.d.ts","svelte":"./dist/curios/components/index.js","default":"./dist/curios/components/index.js"},"./ui/vineyard/types":{"types":"./dist/ui/vineyard/types.d.ts","default":"./dist/ui/vineyard/types.js"},"./ui/components/ui/*":{"types":"./dist/ui/components/ui/*/index.d.ts","svelte":"./dist/ui/components/ui/*/index.js","default":"./dist/ui/components/ui/*/index.js"},"./curios/components/*":{"types":"./dist/curios/components/*/index.d.ts","svelte":"./dist/curios/components/*/index.js","default":"./dist/curios/components/*/index.js"},"./grafts/login/server":{"types":"./dist/grafts/login/server/index.d.ts","default":"./dist/grafts/login/server/index.js"},"./threshold/sveltekit":{"types":"./dist/threshold/adapters/sveltekit.d.ts","default":"./dist/threshold/adapters/sveltekit.js"},"./ui/components/arbor":{"types":"./dist/ui/components/arbor/index.d.ts","svelte":"./dist/ui/components/arbor/index.js","default":"./dist/ui/components/arbor/index.js"},"./ui/components/forms":{"types":"./dist/ui/components/forms/index.d.ts","svelte":"./dist/ui/components/forms/index.js","default":"./dist/ui/components/forms/index.js"},"./ui/components/icons":{"types":"./dist/ui/components/icons/index.d.ts","svelte":"./dist/ui/components/icons/index.js","default":"./dist/ui/components/icons/index.js"},"./server/observability":{"types":"./dist/server/observability/index.d.ts","default":"./dist/server/observability/index.js"},"./threshold/adapters/*":{"types":"./dist/threshold/adapters/*.d.ts","default":"./dist/threshold/adapters/*.js"},"./ui/components/chrome":{"types":"./dist/ui/components/chrome/index.d.ts","svelte":"./dist/ui/components/chrome/index.js","default":"./dist/ui/components/chrome/index.js"},"./ui/components/domain":{"types":"./dist/ui/components/domain/index.d.ts","svelte":"./dist/ui/components/domain/index.js","default":"./dist/ui/components/domain/index.js"},"./ui/components/content":{"types":"./dist/ui/components/content/index.d.ts","svelte":"./dist/ui/components/content/index.js","default":"./dist/ui/components/content/index.js"},"./curios/timeline/voices":{"types":"./dist/curios/timeline/voices/index.d.ts","default":"./dist/curios/timeline/voices/index.js"},"./ui/components/chrome/*":{"types":"./dist/ui/components/chrome/*.d.ts","default":"./dist/ui/components/chrome/*.js"},"./ui/components/ui/toast":{"types":"./dist/ui/components/ui/toast.d.ts","default":"./dist/ui/components/ui/toast.js"},"./curios/shrines/*.svelte":{"svelte":"./dist/curios/shrines/*.svelte","default":"./dist/curios/shrines/*.svelte"},"./styles/vine-pattern.css":"./dist/styles/vine-pattern.css","./ui/components/indicators":{"types":"./dist/ui/components/indicators/index.d.ts","svelte":"./dist/ui/components/indicators/index.js","default":"./dist/ui/components/indicators/index.js"},"./ui/components/typography":{"types":"./dist/ui/components/typography/index.d.ts","svelte":"./dist/ui/components/typography/index.js","default":"./dist/ui/components/typography/index.js"},"./components/admin/*.svelte":{"types":"./dist/components/admin/*.svelte.d.ts","svelte":"./dist/components/admin/*.svelte","default":"./dist/components/admin/*.svelte"},"./components/reeds/*.svelte":{"types":"./dist/components/reeds/*.svelte.d.ts","svelte":"./dist/components/reeds/*.svelte","default":"./dist/components/reeds/*.svelte"},"./curios/guestbook/*.svelte":{"svelte":"./dist/curios/guestbook/*.svelte","default":"./dist/curios/guestbook/*.svelte"},"./styles/fonts-optional.css":"./dist/styles/fonts-optional.css","./ui/components/ui/*.svelte":{"svelte":"./dist/ui/components/ui/*.svelte","default":"./dist/ui/components/ui/*.svelte"},"./components/chrome/*.svelte":{"types":"./dist/components/chrome/*.svelte.d.ts","svelte":"./dist/components/chrome/*.svelte","default":"./dist/components/chrome/*.svelte"},"./components/custom/*.svelte":{"types":"./dist/components/custom/*.svelte.d.ts","svelte":"./dist/components/custom/*.svelte","default":"./dist/components/custom/*.svelte"},"./ui/components/ui/groveicon":{"types":"./dist/ui/components/ui/groveicon/index.d.ts","default":"./dist/ui/components/ui/groveicon/index.js"},"./ui/components/content/hum/*":{"types":"./dist/ui/components/content/hum/*.d.ts","default":"./dist/ui/components/content/hum/*.js"},"./ui/components/ui/waystone/*":{"types":"./dist/ui/components/ui/waystone/*.d.ts","default":"./dist/ui/components/ui/waystone/*.js"},"./grafts/upgrades/server/api/*":{"types":"./dist/grafts/upgrades/server/api/*.d.ts","default":"./dist/grafts/upgrades/server/api/*.js"},"./ui/components/forms/*.svelte":{"svelte":"./dist/ui/components/forms/*.svelte","default":"./dist/ui/components/forms/*.svelte"},"./ui/components/nature/palette":{"types":"./dist/ui/components/nature/palette.d.ts","default":"./dist/ui/components/nature/palette.js"},"./ui/components/ui/glasschat/*":{"types":"./dist/ui/components/ui/glasschat/*.d.ts","default":"./dist/ui/components/ui/glasschat/*.js"},"./ui/components/ui/groveicon/*":{"types":"./dist/ui/components/ui/groveicon/*.d.ts","default":"./dist/ui/components/ui/groveicon/*.js"},"./ui/components/chrome/*.svelte":{"svelte":"./dist/ui/components/chrome/*.svelte","default":"./dist/ui/components/chrome/*.svelte"},"./ui/components/nature/*.svelte":{"svelte":"./dist/ui/components/nature/*.svelte","default":"./dist/ui/components/nature/*.svelte"},"./curios/timeline/secrets.server":{"types":"./dist/curios/timeline/secrets.server.d.ts","default":"./dist/curios/timeline/secrets.server.js"},"./ui/components/chrome/lantern/*":{"types":"./dist/ui/components/chrome/lantern/*.d.ts","default":"./dist/ui/components/chrome/lantern/*.js"},"./components/terminology/*.svelte":{"types":"./dist/components/terminology/*.svelte.d.ts","svelte":"./dist/components/terminology/*.svelte","default":"./dist/components/terminology/*.svelte"},"./ui/components/terrarium/*.svelte":{"svelte":"./dist/ui/components/terrarium/*.svelte","default":"./dist/ui/components/terrarium/*.svelte"},"./ui/components/ui/waystone/*.svelte":{"svelte":"./dist/ui/components/ui/waystone/*.svelte","default":"./dist/ui/components/ui/waystone/*.svelte"},"./ui/components/ui/glasschat/*.svelte":{"svelte":"./dist/ui/components/ui/glasschat/*.svelte","default":"./dist/ui/components/ui/glasschat/*.svelte"},"./ui/components/ui/groveicon/*.svelte":{"svelte":"./dist/ui/components/ui/groveicon/*.svelte","default":"./dist/ui/components/ui/groveicon/*.svelte"},"./curios/components/artifacts/*.svelte":{"svelte":"./dist/curios/components/artifacts/*.svelte","default":"./dist/curios/components/artifacts/*.svelte"},"./ui/components/chrome/lantern/*.svelte":{"svelte":"./dist/ui/components/chrome/lantern/*.svelte","default":"./dist/ui/components/chrome/lantern/*.svelte"},"./ui/components/forms/ContentSearch.svelte":{"svelte":"./dist/ui/components/forms/ContentSearch.svelte","default":"./dist/ui/components/forms/ContentSearch.svelte"}},"gitHead":"5035aa02d140bd8433dcebc69edf125cf8527476","scripts":{"dev":"vite dev","test":"vitest","audit":"pnpm audit --audit-level=moderate","build":"vite build","check":"svelte-kit sync && svelte-check --tsconfig ./tsconfig.json","deploy":"wrangler pages deploy .svelte-kit/cloudflare --project-name grove-lattice","package":"svelte-kit sync && svelte-package -o dist","preview":"vite preview","test:ui":"vitest --ui","test:run":"vitest run","audit:fix":"pnpm audit --fix","email:dev":"email dev -p 3001 --dir src/lib/email","prepackage":"npx tsx ../../scripts/generate/grove-term-manifest.ts","test:watch":"vitest watch","check:watch":"svelte-kit sync && svelte-check --tsconfig ./tsconfig.json --watch","dev:wrangler":"wrangler pages dev -- vite dev","email:export":"email export --dir src/lib/email","build:package":"svelte-kit sync && svelte-package -o dist","test:coverage":"vitest run --coverage","test:security":"vitest run tests/security","prepublishOnly":"pnpm run package","build:sveltekit":"vite build"},"_npmUser":{"name":"autumnsgrove","email":"autumnbrown23@pm.me"},"repository":{"url":"git+https://github.com/AutumnsGrove/Lattice.git","type":"git","directory":"libs/engine"},"_npmVersion":"11.11.0","description":"The shared framework powering Grove — blogging platform, glassmorphism UI components, Loom Durable Objects SDK, Lumen AI routing, auth utilities, feature flags, and email infrastructure for SvelteKit on Cloudflare Workers.","directories":{},"_nodeVersion":"25.8.1","dependencies":{"zod":"^4.3.6","clsx":"^2.1.1","resend":"^4.8.0","esm-env":"^1.2.2","heic2any":"^0.0.4","dompurify":"^3.3.1","@tiptap/pm":"^3.19.0","drizzle-orm":"0.44.5","markdown-it":"^14.1.1","@jsquash/jxl":"^1.3.0","@tiptap/core":"^3.19.0","sanitize-html":"^2.17.0","svelte-sonner":"^1.0.7","svelte-tiptap":"^3.0.1","tailwind-merge":"^3.4.0","@11ty/gray-matter":"^2.0.1","dom-to-image-more":"^3.7.2","@autumnsgrove/infra":"workspace:*","@autumnsgrove/prism":"workspace:*","@react-email/render":"^2.0.4","@tiptap/starter-kit":"^3.19.0","@autumnsgrove/gossamer":"workspace:*","@react-email/components":"^1.0.7","@tiptap/extension-image":"^3.19.0","@tiptap/extension-underline":"^3.19.0","@tiptap/extension-bubble-menu":"^3.19.0","@tiptap/extension-placeholder":"^3.19.0","@tiptap/extension-character-count":"^3.19.0"},"publishConfig":{"access":"public","registry":"https://registry.npmjs.org"},"_hasShrinkwrap":false,"devDependencies":{"vite":"^5.4.21","jsdom":"^27.4.0","react":"^19.2.4","svelte":"^5.50.1","vitest":"^4.0.18","bits-ui":"^1.8.0","esbuild":"^0.27.3","postcss":"^8.5.6","unified":"^11.0.5","happy-dom":"^20.6.1","react-dom":"^19.2.4","@vitest/ui":"^4.0.18","rehype-raw":"^7.0.0","typescript":"^5.9.3","drizzle-kit":"0.31.9","react-email":"^5.2.8","remark-html":"^16.0.1","tailwindcss":"^3.4.19","@types/mdast":"^4.0.4","@types/react":"^19.2.14","autoprefixer":"^10.4.24","remark-parse":"^11.0.0","svelte-check":"^4.3.6","@sveltejs/kit":"^2.50.2","remark-rehype":"^11.1.2","@lucide/svelte":"^0.577.0","@types/react-dom":"^19.2.3","rehype-stringify":"^10.0.1","unist-util-visit":"^5.1.0","@sveltejs/package":"^2.5.7","tailwind-variants":"^0.3.1","@types/markdown-it":"^14.1.2","@vitest/coverage-v8":"^4.0.18","@types/sanitize-html":"^2.16.0","@tailwindcss/typography":"^0.5.19","@testing-library/svelte":"^5.3.1","@cloudflare/workers-types":"^4.20260210.0","@testing-library/jest-dom":"^6.9.1","@sveltejs/adapter-cloudflare":"^7.2.6","@sveltejs/vite-plugin-svelte":"^4.0.4"},"peerDependencies":{"svelte":"^5.0.0","tailwindcss":"^3.4.0","@sveltejs/kit":"^2.0.0"},"_npmOperationalInternal":{"tmp":"tmp/lattice_1.1.2_1773837750055_0.8448566803617952","host":"s3://npm-registry-packages-npm-production"}},"1.2.0":{"name":"@autumnsgrove/lattice","version":"1.2.0","keywords":["grove","lattice","blog","cms","sveltekit","cloudflare","durable-objects","ui-components","multi-tenant","loom","ai-routing"],"author":{"name":"AutumnsGrove"},"license":"AGPL-3.0-only","_id":"@autumnsgrove/lattice@1.2.0","maintainers":[{"name":"autumnsgrove","email":"autumnbrown23@pm.me"}],"homepage":"https://github.com/AutumnsGrove/Lattice#readme","bugs":{"url":"https://github.com/AutumnsGrove/Lattice/issues"},"dist":{"shasum":"32bd496a06cb0620ab769377bc4997294dd5d91f","tarball":"https://registry.npmjs.org/@autumnsgrove/lattice/-/lattice-1.2.0.tgz","fileCount":1556,"integrity":"sha512-C2sy+CdNMJNcx4aDkAw0l7e57Nd06RJ0CX0pPER0fhgJy+5LVD9483OzLnYfA9ea5nvfjTTM6sQyW9wMp3jq4w==","signatures":[{"sig":"MEUCIQC38+sJWxRUsPcJIOWsLDg2FmqU/c9uvuI7Y2EcT1EG9gIgLl17NOQtUU7QPhYBe5lUh9dMmI94CrSOrIyQsu2LFkc=","keyid":"SHA256:DhQ8wR5APBvFHLF/+Tc+AYvPOdTpcIDqOhxsBHRwC7U"}],"unpackedSize":10753021},"type":"module","types":"./dist/index.d.ts","svelte":"./dist/index.js","exports":{".":{"types":"./dist/index.d.ts","svelte":"./dist/index.js","default":"./dist/index.js"},"./db":{"types":"./dist/server/db/index.d.ts","default":"./dist/server/db/index.js"},"./ui":{"types":"./dist/ui/index.d.ts","svelte":"./dist/ui/index.js","default":"./dist/ui/index.js"},"./git":{"types":"./dist/git/index.d.ts","default":"./dist/git/index.js"},"./auth":{"types":"./dist/auth/index.d.ts","default":"./dist/auth/index.js"},"./email":{"types":"./dist/email/index.d.ts","default":"./dist/email/index.js"},"./pulse":{"types":"./dist/pulse/index.d.ts","default":"./dist/pulse/index.js"},"./utils":{"types":"./dist/utils/index.d.ts","default":"./dist/utils/index.js"},"./auth/*":{"types":"./dist/auth/*.d.ts","default":"./dist/auth/*.js"},"./errors":{"types":"./dist/errors/index.d.ts","default":"./dist/errors/index.js"},"./server":{"types":"./dist/server/index.d.ts","default":"./dist/server/index.js"},"./zephyr":{"types":"./dist/zephyr/index.d.ts","default":"./dist/zephyr/index.js"},"./pulse/*":{"types":"./dist/pulse/*.d.ts","default":"./dist/pulse/*.js"},"./ui/chat":{"types":"./dist/ui/chat/index.d.ts","default":"./dist/ui/chat/index.js"},"./utils/*":{"types":"./dist/utils/*.d.ts","default":"./dist/utils/*.js"},"./ai/lumen":{"types":"./dist/ai/lumen/index.d.ts","default":"./dist/ai/lumen/index.js"},"./errors/*":{"types":"./dist/errors/*.d.ts","default":"./dist/errors/*.js"},"./payments":{"types":"./dist/payments/index.d.ts","default":"./dist/payments/index.js"},"./server/*":{"types":"./dist/server/*.d.ts","default":"./dist/server/*.js"},"./services":{"types":"./dist/server/services/index.d.ts","default":"./dist/server/services/index.js"},"./styles/*":"./dist/styles/*","./ui/arbor":{"types":"./dist/ui/components/arbor/index.d.ts","svelte":"./dist/ui/components/arbor/index.js","default":"./dist/ui/components/arbor/index.js"},"./ui/forms":{"types":"./dist/ui/components/forms/index.d.ts","svelte":"./dist/ui/components/forms/index.js","default":"./dist/ui/components/forms/index.js"},"./ui/icons":{"types":"./dist/ui/components/icons/index.d.ts","svelte":"./dist/ui/components/icons/index.js","default":"./dist/ui/components/icons/index.js"},"./ui/utils":{"types":"./dist/ui/utils/index.d.ts","default":"./dist/ui/utils/index.js"},"./actions/*":{"types":"./dist/actions/*.d.ts","default":"./dist/actions/*.js"},"./db/schema":{"types":"./dist/server/db/schema/index.d.ts","default":"./dist/server/db/schema/index.js"},"./ui/charts":{"types":"./dist/ui/components/charts/index.d.ts","svelte":"./dist/ui/components/charts/index.js","default":"./dist/ui/components/charts/index.js"},"./ui/chat/*":{"types":"./dist/ui/chat/*.d.ts","default":"./dist/ui/chat/*.js"},"./ui/chrome":{"types":"./dist/ui/components/chrome/index.d.ts","svelte":"./dist/ui/components/chrome/index.js","default":"./dist/ui/components/chrome/index.js"},"./ui/editor":{"types":"./dist/content/editor/index.d.ts","svelte":"./dist/content/editor/index.js","default":"./dist/content/editor/index.js"},"./ui/nature":{"types":"./dist/ui/components/nature/index.d.ts","svelte":"./dist/ui/components/nature/index.js","default":"./dist/ui/components/nature/index.js"},"./ui/states":{"types":"./dist/ui/components/states/index.d.ts","svelte":"./dist/ui/components/states/index.js","default":"./dist/ui/components/states/index.js"},"./ui/stores":{"types":"./dist/ui/stores/index.d.ts","svelte":"./dist/ui/stores/index.js","default":"./dist/ui/stores/index.js"},"./ui/styles":"./dist/ui/styles/grove.css","./ui/tokens":{"types":"./dist/ui/tokens/index.d.ts","default":"./dist/ui/tokens/index.js"},"./ai/lumen/*":{"types":"./dist/ai/lumen/*.d.ts","default":"./dist/ai/lumen/*.js"},"./auth/login":{"types":"./dist/auth/login/index.d.ts","svelte":"./dist/auth/login/index.js","default":"./dist/auth/login/index.js"},"./email/urls":{"types":"./dist/email/urls.d.ts","default":"./dist/email/urls.js"},"./payments/*":{"types":"./dist/payments/*.d.ts","default":"./dist/payments/*.js"},"./services/*":{"types":"./dist/server/services/*.d.ts","default":"./dist/server/services/*.js"},"./ui/content":{"types":"./dist/ui/components/content/index.d.ts","svelte":"./dist/ui/components/content/index.js","default":"./dist/ui/components/content/index.js"},"./ui/gallery":{"types":"./dist/ui/components/gallery/index.d.ts","svelte":"./dist/ui/components/gallery/index.js","default":"./dist/ui/components/gallery/index.js"},"./ui/types/*":{"types":"./dist/ui/types/*.d.ts","default":"./dist/ui/types/*.js"},"./ui/utils/*":{"types":"./dist/ui/utils/*.d.ts","default":"./dist/ui/utils/*.js"},"./auth/warden":{"types":"./dist/auth/warden/index.d.ts","default":"./dist/auth/warden/index.js"},"./db/schema/*":{"types":"./dist/server/db/schema/*.d.ts","default":"./dist/server/db/schema/*.js"},"./email/porch":{"types":"./dist/email/porch/index.d.ts","default":"./dist/email/porch/index.js"},"./email/types":{"types":"./dist/email/types.d.ts","default":"./dist/email/types.js"},"./media/amber":{"types":"./dist/media/amber/index.d.ts","default":"./dist/media/amber/index.js"},"./ui/feedback":{"types":"./dist/ui/components/feedback/index.d.ts","svelte":"./dist/ui/components/feedback/index.js","default":"./dist/ui/components/feedback/index.js"},"./ui/nature/*":{"types":"./dist/ui/components/nature/*/index.d.ts","svelte":"./dist/ui/components/nature/*/index.js","default":"./dist/ui/components/nature/*/index.js"},"./ui/stores/*":{"types":"./dist/ui/stores/*.d.ts","default":"./dist/ui/stores/*.js"},"./ui/styles/*":"./dist/ui/styles/*","./ui/tailwind":"./dist/ui/tailwind.preset.js","./ui/tokens/*":{"types":"./dist/ui/tokens/*.d.ts","default":"./dist/ui/tokens/*.js"},"./auth/login/*":{"types":"./dist/auth/login/*.d.ts","default":"./dist/auth/login/*.js"},"./email/render":{"types":"./dist/email/render.d.ts","default":"./dist/email/render.js"},"./server/petal":{"types":"./dist/server/petal/index.d.ts","default":"./dist/server/petal/index.js"},"./server/utils":{"types":"./dist/server/utils/index.d.ts","default":"./dist/server/utils/index.js"},"./ui/terrarium":{"types":"./dist/ui/components/terrarium/index.d.ts","svelte":"./dist/ui/components/terrarium/index.js","default":"./dist/ui/components/terrarium/index.js"},"./email/updates":{"types":"./dist/email/updates/index.d.ts","default":"./dist/email/updates/index.js"},"./social/blazes":{"types":"./dist/social/blazes/index.d.ts","svelte":"./dist/social/blazes/index.js","default":"./dist/social/blazes/index.js"},"./ui/components":{"types":"./dist/ui/components/ui/index.d.ts","svelte":"./dist/ui/components/ui/index.js","default":"./dist/ui/components/ui/index.js"},"./ui/indicators":{"types":"./dist/ui/components/indicators/index.d.ts","svelte":"./dist/ui/components/indicators/index.js","default":"./dist/ui/components/indicators/index.js"},"./ui/typography":{"types":"./dist/ui/components/typography/index.d.ts","svelte":"./dist/ui/components/typography/index.js","default":"./dist/ui/components/typography/index.js"},"./content/editor":{"types":"./dist/content/editor/index.d.ts","svelte":"./dist/content/editor/index.js","default":"./dist/content/editor/index.js"},"./email/schedule":{"types":"./dist/email/schedule.d.ts","default":"./dist/email/schedule.js"},"./server/petal/*":{"types":"./dist/server/petal/*.d.ts","default":"./dist/server/petal/*.js"},"./server/utils/*":{"types":"./dist/server/utils/*.d.ts","default":"./dist/server/utils/*.js"},"./ui/content/hum":{"types":"./dist/ui/components/content/hum/index.d.ts","svelte":"./dist/ui/components/content/hum/index.js","default":"./dist/ui/components/content/hum/index.js"},"./ui/season-meta":{"types":"./dist/ui/season-meta.d.ts","default":"./dist/ui/season-meta.js"},"./durable-objects":{"types":"./dist/durable-objects/index.d.ts","default":"./dist/durable-objects/index.js"},"./email/sequences":{"types":"./dist/email/sequences/index.d.ts","default":"./dist/email/sequences/index.js"},"./platform/config":{"types":"./dist/platform/config/index.d.ts","default":"./dist/platform/config/index.js"},"./server/services":{"types":"./dist/server/services/index.d.ts","default":"./dist/server/services/index.js"},"./ui/media-player":{"types":"./dist/ui/components/media-player/index.d.ts","svelte":"./dist/ui/components/media-player/index.js","default":"./dist/ui/components/media-player/index.js"},"./content/editor/*":{"types":"./dist/content/editor/*.d.ts","default":"./dist/content/editor/*.js"},"./content/markdown":{"types":"./dist/content/markdown/index.d.ts","default":"./dist/content/markdown/index.js"},"./email/components":{"types":"./dist/email/components/index.d.ts","default":"./dist/email/components/index.js"},"./media/processing":{"types":"./dist/media/processing/imageProcessor.d.ts","default":"./dist/media/processing/imageProcessor.js"},"./media/validation":{"types":"./dist/media/validation/upload-validation.d.ts","default":"./dist/media/validation/upload-validation.js"},"./platform/pricing":{"types":"./dist/platform/pricing/index.d.ts","svelte":"./dist/platform/pricing/index.js","default":"./dist/platform/pricing/index.js"},"./platform/uploads":{"types":"./dist/platform/uploads/index.d.ts","svelte":"./dist/platform/uploads/index.js","default":"./dist/platform/uploads/index.js"},"./auth/login/server":{"types":"./dist/auth/login/server/index.d.ts","default":"./dist/auth/login/server/index.js"},"./durable-objects/*":{"types":"./dist/durable-objects/*.d.ts","default":"./dist/durable-objects/*.js"},"./platform/config/*":{"types":"./dist/platform/config/*.d.ts","default":"./dist/platform/config/*.js"},"./platform/upgrades":{"types":"./dist/platform/upgrades/index.d.ts","svelte":"./dist/platform/upgrades/index.js","default":"./dist/platform/upgrades/index.js"},"./server/services/*":{"types":"./dist/server/services/*.d.ts","default":"./dist/server/services/*.js"},"./styles/tokens.css":"./dist/styles/tokens.css","./content/markdown/*":{"types":"./dist/content/markdown/*.d.ts","default":"./dist/content/markdown/*.js"},"./media/processing/*":{"types":"./dist/media/processing/*.d.ts","default":"./dist/media/processing/*.js"},"./media/validation/*":{"types":"./dist/media/validation/*.d.ts","default":"./dist/media/validation/*.js"},"./platform/threshold":{"types":"./dist/platform/threshold/index.d.ts","default":"./dist/platform/threshold/index.js"},"./ui/components/ui/*":{"types":"./dist/ui/components/ui/*/index.d.ts","svelte":"./dist/ui/components/ui/*/index.js","default":"./dist/ui/components/ui/*/index.js"},"./monitoring/sentinel":{"types":"./dist/monitoring/sentinel/index.d.ts","default":"./dist/monitoring/sentinel/index.js"},"./platform/greenhouse":{"types":"./dist/platform/greenhouse/index.d.ts","svelte":"./dist/platform/greenhouse/index.js","default":"./dist/platform/greenhouse/index.js"},"./ui/components/arbor":{"types":"./dist/ui/components/arbor/index.d.ts","svelte":"./dist/ui/components/arbor/index.js","default":"./dist/ui/components/arbor/index.js"},"./ui/components/forms":{"types":"./dist/ui/components/forms/index.d.ts","svelte":"./dist/ui/components/forms/index.js","default":"./dist/ui/components/forms/index.js"},"./ui/components/icons":{"types":"./dist/ui/components/icons/index.d.ts","svelte":"./dist/ui/components/icons/index.js","default":"./dist/ui/components/icons/index.js"},"./platform/threshold/*":{"types":"./dist/platform/threshold/*.d.ts","default":"./dist/platform/threshold/*.js"},"./ui/components/chrome":{"types":"./dist/ui/components/chrome/index.d.ts","svelte":"./dist/ui/components/chrome/index.js","default":"./dist/ui/components/chrome/index.js"},"./ui/components/custom":{"types":"./dist/ui/components/custom/index.d.ts","svelte":"./dist/ui/components/custom/index.js","default":"./dist/ui/components/custom/index.js"},"./ui/components/domain":{"types":"./dist/ui/components/domain/index.d.ts","svelte":"./dist/ui/components/domain/index.js","default":"./dist/ui/components/domain/index.js"},"./monitoring/sentinel/*":{"types":"./dist/monitoring/sentinel/*.d.ts","default":"./dist/monitoring/sentinel/*.js"},"./ui/components/content":{"types":"./dist/ui/components/content/index.d.ts","svelte":"./dist/ui/components/content/index.js","default":"./dist/ui/components/content/index.js"},"./platform/feature-flags":{"types":"./dist/platform/feature-flags/index.d.ts","default":"./dist/platform/feature-flags/index.js"},"./ui/components/chrome/*":{"types":"./dist/ui/components/chrome/*.d.ts","default":"./dist/ui/components/chrome/*.js"},"./ui/components/ui/toast":{"types":"./dist/ui/components/ui/toast.d.ts","default":"./dist/ui/components/ui/toast.js"},"./content/editor/*.svelte":{"types":"./dist/content/editor/*.svelte.d.ts","svelte":"./dist/content/editor/*.svelte","default":"./dist/content/editor/*.svelte"},"./platform/threshold/hono":{"types":"./dist/platform/threshold/adapters/hono.d.ts","default":"./dist/platform/threshold/adapters/hono.js"},"./styles/vine-pattern.css":"./dist/styles/vine-pattern.css","./monitoring/observability":{"types":"./dist/monitoring/observability/index.d.ts","default":"./dist/monitoring/observability/index.js"},"./platform/feature-flags/*":{"types":"./dist/platform/feature-flags/*.d.ts","default":"./dist/platform/feature-flags/*.js"},"./social/blazes/components":{"types":"./dist/social/blazes/components/index.d.ts","svelte":"./dist/social/blazes/components/index.js","default":"./dist/social/blazes/components/index.js"},"./ui/components/indicators":{"types":"./dist/ui/components/indicators/index.d.ts","svelte":"./dist/ui/components/indicators/index.js","default":"./dist/ui/components/indicators/index.js"},"./ui/components/typography":{"types":"./dist/ui/components/typography/index.d.ts","svelte":"./dist/ui/components/typography/index.js","default":"./dist/ui/components/typography/index.js"},"./components/admin/*.svelte":{"types":"./dist/components/admin/*.svelte.d.ts","svelte":"./dist/components/admin/*.svelte","default":"./dist/components/admin/*.svelte"},"./components/reeds/*.svelte":{"types":"./dist/components/reeds/*.svelte.d.ts","svelte":"./dist/components/reeds/*.svelte","default":"./dist/components/reeds/*.svelte"},"./platform/threshold/worker":{"types":"./dist/platform/threshold/adapters/worker.d.ts","default":"./dist/platform/threshold/adapters/worker.js"},"./styles/fonts-optional.css":"./dist/styles/fonts-optional.css","./ui/components/ui/*.svelte":{"types":"./dist/ui/components/ui/*.svelte.d.ts","svelte":"./dist/ui/components/ui/*.svelte","default":"./dist/ui/components/ui/*.svelte"},"./components/custom/*.svelte":{"types":"./dist/components/custom/*.svelte.d.ts","svelte":"./dist/components/custom/*.svelte","default":"./dist/components/custom/*.svelte"},"./ui/components/ui/groveicon":{"types":"./dist/ui/components/ui/groveicon/index.d.ts","default":"./dist/ui/components/ui/groveicon/index.js"},"./ui/components/content/hum/*":{"types":"./dist/ui/components/content/hum/*.d.ts","default":"./dist/ui/components/content/hum/*.js"},"./ui/components/ui/waystone/*":{"types":"./dist/ui/components/ui/waystone/*.d.ts","default":"./dist/ui/components/ui/waystone/*.js"},"./platform/threshold/sveltekit":{"types":"./dist/platform/threshold/adapters/sveltekit.d.ts","default":"./dist/platform/threshold/adapters/sveltekit.js"},"./ui/components/forms/*.svelte":{"types":"./dist/ui/components/forms/*.svelte.d.ts","svelte":"./dist/ui/components/forms/*.svelte","default":"./dist/ui/components/forms/*.svelte"},"./ui/components/nature/palette":{"types":"./dist/ui/components/nature/palette.d.ts","default":"./dist/ui/components/nature/palette.js"},"./ui/components/ui/glasschat/*":{"types":"./dist/ui/components/ui/glasschat/*.d.ts","default":"./dist/ui/components/ui/glasschat/*.js"},"./ui/components/ui/groveicon/*":{"types":"./dist/ui/components/ui/groveicon/*.d.ts","default":"./dist/ui/components/ui/groveicon/*.js"},"./ui/components/chrome/*.svelte":{"types":"./dist/ui/components/chrome/*.svelte.d.ts","svelte":"./dist/ui/components/chrome/*.svelte","default":"./dist/ui/components/chrome/*.svelte"},"./ui/components/custom/*.svelte":{"types":"./dist/ui/components/custom/*.svelte.d.ts","svelte":"./dist/ui/components/custom/*.svelte","default":"./dist/ui/components/custom/*.svelte"},"./ui/components/nature/*.svelte":{"types":"./dist/ui/components/nature/*.svelte.d.ts","svelte":"./dist/ui/components/nature/*.svelte","default":"./dist/ui/components/nature/*.svelte"},"./platform/upgrades/server/api/*":{"types":"./dist/platform/upgrades/server/api/*.d.ts","default":"./dist/platform/upgrades/server/api/*.js"},"./ui/components/chrome/lantern/*":{"types":"./dist/ui/components/chrome/lantern/*.d.ts","default":"./dist/ui/components/chrome/lantern/*.js"},"./components/terminology/*.svelte":{"types":"./dist/components/terminology/*.svelte.d.ts","svelte":"./dist/components/terminology/*.svelte","default":"./dist/components/terminology/*.svelte"},"./ui/components/terrarium/*.svelte":{"types":"./dist/ui/components/terrarium/*.svelte.d.ts","svelte":"./dist/ui/components/terrarium/*.svelte","default":"./dist/ui/components/terrarium/*.svelte"},"./ui/components/ui/waystone/*.svelte":{"types":"./dist/ui/components/ui/waystone/*.svelte.d.ts","svelte":"./dist/ui/components/ui/waystone/*.svelte","default":"./dist/ui/components/ui/waystone/*.svelte"},"./ui/components/ui/glasschat/*.svelte":{"types":"./dist/ui/components/ui/glasschat/*.svelte.d.ts","svelte":"./dist/ui/components/ui/glasschat/*.svelte","default":"./dist/ui/components/ui/glasschat/*.svelte"},"./ui/components/ui/groveicon/*.svelte":{"types":"./dist/ui/components/ui/groveicon/*.svelte.d.ts","svelte":"./dist/ui/components/ui/groveicon/*.svelte","default":"./dist/ui/components/ui/groveicon/*.svelte"},"./ui/components/chrome/lantern/*.svelte":{"types":"./dist/ui/components/chrome/lantern/*.svelte.d.ts","svelte":"./dist/ui/components/chrome/lantern/*.svelte","default":"./dist/ui/components/chrome/lantern/*.svelte"},"./ui/components/forms/ContentSearch.svelte":{"types":"./dist/ui/components/forms/ContentSearch.svelte.d.ts","svelte":"./dist/ui/components/forms/ContentSearch.svelte","default":"./dist/ui/components/forms/ContentSearch.svelte"}},"gitHead":"4c31481bd2edbec7f614baad6065bf5ea2d9b702","scripts":{"dev":"vite dev","test":"vitest","audit":"pnpm audit --audit-level=moderate","build":"vite build","check":"svelte-kit sync && svelte-check --tsconfig ./tsconfig.json","deploy":"wrangler pages deploy .svelte-kit/cloudflare --project-name grove-lattice","package":"svelte-kit sync && svelte-package -o dist","preview":"vite preview","test:ui":"vitest --ui","test:run":"vitest run","audit:fix":"pnpm audit --fix","email:dev":"email dev -p 3001 --dir src/lib/email","prepackage":"npx tsx ../../scripts/generate/grove-term-manifest.ts","test:watch":"vitest watch","check:watch":"svelte-kit sync && svelte-check --tsconfig ./tsconfig.json --watch","dev:wrangler":"wrangler pages dev -- vite dev","email:export":"email export --dir src/lib/email","build:package":"svelte-kit sync && svelte-package -o dist","test:coverage":"vitest run --coverage","test:security":"vitest run tests/security","prepublishOnly":"pnpm run package","build:sveltekit":"vite build"},"_npmUser":{"name":"autumnsgrove","email":"autumnbrown23@pm.me"},"repository":{"url":"git+https://github.com/AutumnsGrove/Lattice.git","type":"git","directory":"libs/engine"},"_npmVersion":"11.16.0","description":"The shared framework powering Grove — blogging platform, glassmorphism UI components, Loom Durable Objects SDK, Lumen AI routing, auth utilities, feature flags, and email infrastructure for SvelteKit on Cloudflare Workers.","directories":{},"_nodeVersion":"26.3.0","dependencies":{"zod":"^4.3.6","clsx":"^2.1.1","resend":"^4.8.0","esm-env":"^1.2.2","heic2any":"^0.0.4","dompurify":"^3.3.1","@tiptap/pm":"^3.19.0","drizzle-orm":"0.44.5","markdown-it":"^14.1.1","@jsquash/jxl":"^1.3.0","@tiptap/core":"^3.19.0","sanitize-html":"^2.17.0","svelte-sonner":"^1.0.7","svelte-tiptap":"^3.0.1","tailwind-merge":"^3.4.0","@11ty/gray-matter":"^2.0.1","dom-to-image-more":"^3.7.2","@autumnsgrove/loom":"workspace:*","@autumnsgrove/infra":"workspace:*","@autumnsgrove/prism":"workspace:*","@react-email/render":"^2.0.4","@tiptap/starter-kit":"^3.19.0","@autumnsgrove/curios":"workspace:*","markdown-it-footnote":"^4.0.0","@react-email/components":"^1.0.10","@tiptap/extension-image":"^3.19.0","@autumnsgrove/grove-crypto":"workspace:*","@autumnsgrove/grove-errors":"workspace:*","@tiptap/extension-underline":"^3.19.0","@autumnsgrove/grove-markdown":"workspace:*","@tiptap/extension-bubble-menu":"^3.19.0","@tiptap/extension-placeholder":"^3.19.0","@tiptap/extension-character-count":"^3.19.0"},"publishConfig":{"access":"public","registry":"https://registry.npmjs.org"},"_hasShrinkwrap":false,"devDependencies":{"vite":"^7.3.1","jsdom":"^27.4.0","react":"^19.2.4","svelte":"^5.50.1","vitest":"^4.1.0","bits-ui":"^1.8.0","esbuild":"^0.27.3","postcss":"^8.5.6","unified":"^11.0.5","happy-dom":"^20.6.1","react-dom":"^19.2.4","@vitest/ui":"^4.1.0","rehype-raw":"^7.0.0","typescript":"^5.9.3","drizzle-kit":"0.31.9","react-email":"^5.2.8","remark-html":"^16.0.1","tailwindcss":"^3.4.19","@types/mdast":"^4.0.4","@types/react":"^19.2.14","autoprefixer":"^10.4.24","remark-parse":"^11.0.0","svelte-check":"^4.3.6","@sveltejs/kit":"^2.50.2","remark-rehype":"^11.1.2","@lucide/svelte":"^0.577.0","@types/react-dom":"^19.2.3","rehype-stringify":"^10.0.1","unist-util-visit":"^5.1.0","@sveltejs/package":"^2.5.7","tailwind-variants":"^0.3.1","@types/markdown-it":"^14.1.2","@vitest/coverage-v8":"^4.1.0","@types/sanitize-html":"^2.16.0","@autumnsgrove/gossamer":"workspace:*","@tailwindcss/typography":"^0.5.19","@testing-library/svelte":"^5.3.1","@cloudflare/workers-types":"^4.20260317.1","@testing-library/jest-dom":"^6.9.1","@types/markdown-it-footnote":"^3.0.4","@sveltejs/adapter-cloudflare":"^7.2.6","@sveltejs/vite-plugin-svelte":"^6.2.4"},"peerDependencies":{"svelte":"^5.50.1","tailwindcss":"^3.4.0","@sveltejs/kit":"^2.50.2","@autumnsgrove/gossamer":"workspace:*"},"peerDependenciesMeta":{"@autumnsgrove/gossamer":{"optional":true}},"_npmOperationalInternal":{"tmp":"tmp/lattice_1.2.0_1782495536901_0.8922957662881839","host":"s3://npm-registry-packages-npm-production"}},"1.2.1":{"name":"@autumnsgrove/lattice","version":"1.2.1","keywords":["grove","lattice","blog","cms","sveltekit","cloudflare","durable-objects","ui-components","multi-tenant","loom","ai-routing"],"author":{"name":"AutumnsGrove"},"license":"AGPL-3.0-only","_id":"@autumnsgrove/lattice@1.2.1","maintainers":[{"name":"autumnsgrove","email":"autumnbrown23@pm.me"}],"homepage":"https://github.com/AutumnsGrove/Lattice#readme","bugs":{"url":"https://github.com/AutumnsGrove/Lattice/issues"},"dist":{"shasum":"2847384bc7641c6b17d31d5cf81bbdc1a8d4c9b4","tarball":"https://registry.npmjs.org/@autumnsgrove/lattice/-/lattice-1.2.1.tgz","fileCount":1557,"integrity":"sha512-pX2oNZc8eslifCNAN17McbMXwWyCQBNkc4i48JThNb/eETyU9FgYeRcp/DIFEX2k2uWLJzTQ/04EKS2WtKlbPw==","signatures":[{"sig":"MEYCIQCvgxC9WSEtvS7/5Fq5eoTDRRsaM+eIREdI+uMgNKOFXQIhAOg1zPxi8jMssJfJ8FYuNWc0a8th9tr0BUlb2fJEvPUb","keyid":"SHA256:DhQ8wR5APBvFHLF/+Tc+AYvPOdTpcIDqOhxsBHRwC7U"}],"unpackedSize":10773572},"type":"module","_from":"file:autumnsgrove-lattice-1.2.1.tgz","types":"./dist/index.d.ts","svelte":"./dist/index.js","exports":{".":{"types":"./dist/index.d.ts","svelte":"./dist/index.js","default":"./dist/index.js"},"./db":{"types":"./dist/server/db/index.d.ts","default":"./dist/server/db/index.js"},"./ui":{"types":"./dist/ui/index.d.ts","svelte":"./dist/ui/index.js","default":"./dist/ui/index.js"},"./git":{"types":"./dist/git/index.d.ts","default":"./dist/git/index.js"},"./auth":{"types":"./dist/auth/index.d.ts","default":"./dist/auth/index.js"},"./email":{"types":"./dist/email/index.d.ts","default":"./dist/email/index.js"},"./pulse":{"types":"./dist/pulse/index.d.ts","default":"./dist/pulse/index.js"},"./utils":{"types":"./dist/utils/index.d.ts","default":"./dist/utils/index.js"},"./auth/*":{"types":"./dist/auth/*.d.ts","default":"./dist/auth/*.js"},"./errors":{"types":"./dist/errors/index.d.ts","default":"./dist/errors/index.js"},"./server":{"types":"./dist/server/index.d.ts","default":"./dist/server/index.js"},"./zephyr":{"types":"./dist/zephyr/index.d.ts","default":"./dist/zephyr/index.js"},"./pulse/*":{"types":"./dist/pulse/*.d.ts","default":"./dist/pulse/*.js"},"./ui/chat":{"types":"./dist/ui/chat/index.d.ts","default":"./dist/ui/chat/index.js"},"./utils/*":{"types":"./dist/utils/*.d.ts","default":"./dist/utils/*.js"},"./ai/lumen":{"types":"./dist/ai/lumen/index.d.ts","default":"./dist/ai/lumen/index.js"},"./errors/*":{"types":"./dist/errors/*.d.ts","default":"./dist/errors/*.js"},"./payments":{"types":"./dist/payments/index.d.ts","default":"./dist/payments/index.js"},"./server/*":{"types":"./dist/server/*.d.ts","default":"./dist/server/*.js"},"./services":{"types":"./dist/server/services/index.d.ts","default":"./dist/server/services/index.js"},"./styles/*":"./dist/styles/*","./ui/arbor":{"types":"./dist/ui/components/arbor/index.d.ts","svelte":"./dist/ui/components/arbor/index.js","default":"./dist/ui/components/arbor/index.js"},"./ui/forms":{"types":"./dist/ui/components/forms/index.d.ts","svelte":"./dist/ui/components/forms/index.js","default":"./dist/ui/components/forms/index.js"},"./ui/icons":{"types":"./dist/ui/components/icons/index.d.ts","svelte":"./dist/ui/components/icons/index.js","default":"./dist/ui/components/icons/index.js"},"./ui/utils":{"types":"./dist/ui/utils/index.d.ts","default":"./dist/ui/utils/index.js"},"./actions/*":{"types":"./dist/actions/*.d.ts","default":"./dist/actions/*.js"},"./db/schema":{"types":"./dist/server/db/schema/index.d.ts","default":"./dist/server/db/schema/index.js"},"./ui/charts":{"types":"./dist/ui/components/charts/index.d.ts","svelte":"./dist/ui/components/charts/index.js","default":"./dist/ui/components/charts/index.js"},"./ui/chat/*":{"types":"./dist/ui/chat/*.d.ts","default":"./dist/ui/chat/*.js"},"./ui/chrome":{"types":"./dist/ui/components/chrome/index.d.ts","svelte":"./dist/ui/components/chrome/index.js","default":"./dist/ui/components/chrome/index.js"},"./ui/editor":{"types":"./dist/content/editor/index.d.ts","svelte":"./dist/content/editor/index.js","default":"./dist/content/editor/index.js"},"./ui/nature":{"types":"./dist/ui/components/nature/index.d.ts","svelte":"./dist/ui/components/nature/index.js","default":"./dist/ui/components/nature/index.js"},"./ui/states":{"types":"./dist/ui/components/states/index.d.ts","svelte":"./dist/ui/components/states/index.js","default":"./dist/ui/components/states/index.js"},"./ui/stores":{"types":"./dist/ui/stores/index.d.ts","svelte":"./dist/ui/stores/index.js","default":"./dist/ui/stores/index.js"},"./ui/styles":"./dist/ui/styles/grove.css","./ui/tokens":{"types":"./dist/ui/tokens/index.d.ts","default":"./dist/ui/tokens/index.js"},"./ai/lumen/*":{"types":"./dist/ai/lumen/*.d.ts","default":"./dist/ai/lumen/*.js"},"./auth/login":{"types":"./dist/auth/login/index.d.ts","svelte":"./dist/auth/login/index.js","default":"./dist/auth/login/index.js"},"./email/urls":{"types":"./dist/email/urls.d.ts","default":"./dist/email/urls.js"},"./payments/*":{"types":"./dist/payments/*.d.ts","default":"./dist/payments/*.js"},"./services/*":{"types":"./dist/server/services/*.d.ts","default":"./dist/server/services/*.js"},"./ui/content":{"types":"./dist/ui/components/content/index.d.ts","svelte":"./dist/ui/components/content/index.js","default":"./dist/ui/components/content/index.js"},"./ui/gallery":{"types":"./dist/ui/components/gallery/index.d.ts","svelte":"./dist/ui/components/gallery/index.js","default":"./dist/ui/components/gallery/index.js"},"./ui/types/*":{"types":"./dist/ui/types/*.d.ts","default":"./dist/ui/types/*.js"},"./ui/utils/*":{"types":"./dist/ui/utils/*.d.ts","default":"./dist/ui/utils/*.js"},"./auth/warden":{"types":"./dist/auth/warden/index.d.ts","default":"./dist/auth/warden/index.js"},"./db/schema/*":{"types":"./dist/server/db/schema/*.d.ts","default":"./dist/server/db/schema/*.js"},"./email/porch":{"types":"./dist/email/porch/index.d.ts","default":"./dist/email/porch/index.js"},"./email/types":{"types":"./dist/email/types.d.ts","default":"./dist/email/types.js"},"./media/amber":{"types":"./dist/media/amber/index.d.ts","default":"./dist/media/amber/index.js"},"./ui/feedback":{"types":"./dist/ui/components/feedback/index.d.ts","svelte":"./dist/ui/components/feedback/index.js","default":"./dist/ui/components/feedback/index.js"},"./ui/nature/*":{"types":"./dist/ui/components/nature/*/index.d.ts","svelte":"./dist/ui/components/nature/*/index.js","default":"./dist/ui/components/nature/*/index.js"},"./ui/stores/*":{"types":"./dist/ui/stores/*.d.ts","default":"./dist/ui/stores/*.js"},"./ui/styles/*":"./dist/ui/styles/*","./ui/tailwind":"./dist/ui/tailwind.preset.js","./ui/tokens/*":{"types":"./dist/ui/tokens/*.d.ts","default":"./dist/ui/tokens/*.js"},"./auth/login/*":{"types":"./dist/auth/login/*.d.ts","default":"./dist/auth/login/*.js"},"./email/render":{"types":"./dist/email/render.d.ts","default":"./dist/email/render.js"},"./server/petal":{"types":"./dist/server/petal/index.d.ts","default":"./dist/server/petal/index.js"},"./server/utils":{"types":"./dist/server/utils/index.d.ts","default":"./dist/server/utils/index.js"},"./ui/terrarium":{"types":"./dist/ui/components/terrarium/index.d.ts","svelte":"./dist/ui/components/terrarium/index.js","default":"./dist/ui/components/terrarium/index.js"},"./email/updates":{"types":"./dist/email/updates/index.d.ts","default":"./dist/email/updates/index.js"},"./social/blazes":{"types":"./dist/social/blazes/index.d.ts","svelte":"./dist/social/blazes/index.js","default":"./dist/social/blazes/index.js"},"./ui/components":{"types":"./dist/ui/components/ui/index.d.ts","svelte":"./dist/ui/components/ui/index.js","default":"./dist/ui/components/ui/index.js"},"./ui/indicators":{"types":"./dist/ui/components/indicators/index.d.ts","svelte":"./dist/ui/components/indicators/index.js","default":"./dist/ui/components/indicators/index.js"},"./ui/typography":{"types":"./dist/ui/components/typography/index.d.ts","svelte":"./dist/ui/components/typography/index.js","default":"./dist/ui/components/typography/index.js"},"./content/editor":{"types":"./dist/content/editor/index.d.ts","svelte":"./dist/content/editor/index.js","default":"./dist/content/editor/index.js"},"./email/schedule":{"types":"./dist/email/schedule.d.ts","default":"./dist/email/schedule.js"},"./server/petal/*":{"types":"./dist/server/petal/*.d.ts","default":"./dist/server/petal/*.js"},"./server/utils/*":{"types":"./dist/server/utils/*.d.ts","default":"./dist/server/utils/*.js"},"./ui/content/hum":{"types":"./dist/ui/components/content/hum/index.d.ts","svelte":"./dist/ui/components/content/hum/index.js","default":"./dist/ui/components/content/hum/index.js"},"./ui/season-meta":{"types":"./dist/ui/season-meta.d.ts","default":"./dist/ui/season-meta.js"},"./durable-objects":{"types":"./dist/durable-objects/index.d.ts","default":"./dist/durable-objects/index.js"},"./email/sequences":{"types":"./dist/email/sequences/index.d.ts","default":"./dist/email/sequences/index.js"},"./platform/config":{"types":"./dist/platform/config/index.d.ts","default":"./dist/platform/config/index.js"},"./server/services":{"types":"./dist/server/services/index.d.ts","default":"./dist/server/services/index.js"},"./ui/media-player":{"types":"./dist/ui/components/media-player/index.d.ts","svelte":"./dist/ui/components/media-player/index.js","default":"./dist/ui/components/media-player/index.js"},"./content/editor/*":{"types":"./dist/content/editor/*.d.ts","default":"./dist/content/editor/*.js"},"./content/markdown":{"types":"./dist/content/markdown/index.d.ts","default":"./dist/content/markdown/index.js"},"./email/components":{"types":"./dist/email/components/index.d.ts","default":"./dist/email/components/index.js"},"./media/processing":{"types":"./dist/media/processing/imageProcessor.d.ts","default":"./dist/media/processing/imageProcessor.js"},"./media/validation":{"types":"./dist/media/validation/upload-validation.d.ts","default":"./dist/media/validation/upload-validation.js"},"./platform/pricing":{"types":"./dist/platform/pricing/index.d.ts","svelte":"./dist/platform/pricing/index.js","default":"./dist/platform/pricing/index.js"},"./platform/uploads":{"types":"./dist/platform/uploads/index.d.ts","svelte":"./dist/platform/uploads/index.js","default":"./dist/platform/uploads/index.js"},"./auth/login/server":{"types":"./dist/auth/login/server/index.d.ts","default":"./dist/auth/login/server/index.js"},"./durable-objects/*":{"types":"./dist/durable-objects/*.d.ts","default":"./dist/durable-objects/*.js"},"./platform/config/*":{"types":"./dist/platform/config/*.d.ts","default":"./dist/platform/config/*.js"},"./platform/upgrades":{"types":"./dist/platform/upgrades/index.d.ts","svelte":"./dist/platform/upgrades/index.js","default":"./dist/platform/upgrades/index.js"},"./server/services/*":{"types":"./dist/server/services/*.d.ts","default":"./dist/server/services/*.js"},"./styles/tokens.css":"./dist/styles/tokens.css","./content/markdown/*":{"types":"./dist/content/markdown/*.d.ts","default":"./dist/content/markdown/*.js"},"./media/processing/*":{"types":"./dist/media/processing/*.d.ts","default":"./dist/media/processing/*.js"},"./media/validation/*":{"types":"./dist/media/validation/*.d.ts","default":"./dist/media/validation/*.js"},"./platform/threshold":{"types":"./dist/platform/threshold/index.d.ts","default":"./dist/platform/threshold/index.js"},"./ui/components/ui/*":{"types":"./dist/ui/components/ui/*/index.d.ts","svelte":"./dist/ui/components/ui/*/index.js","default":"./dist/ui/components/ui/*/index.js"},"./monitoring/sentinel":{"types":"./dist/monitoring/sentinel/index.d.ts","default":"./dist/monitoring/sentinel/index.js"},"./platform/greenhouse":{"types":"./dist/platform/greenhouse/index.d.ts","svelte":"./dist/platform/greenhouse/index.js","default":"./dist/platform/greenhouse/index.js"},"./ui/components/arbor":{"types":"./dist/ui/components/arbor/index.d.ts","svelte":"./dist/ui/components/arbor/index.js","default":"./dist/ui/components/arbor/index.js"},"./ui/components/forms":{"types":"./dist/ui/components/forms/index.d.ts","svelte":"./dist/ui/components/forms/index.js","default":"./dist/ui/components/forms/index.js"},"./ui/components/icons":{"types":"./dist/ui/components/icons/index.d.ts","svelte":"./dist/ui/components/icons/index.js","default":"./dist/ui/components/icons/index.js"},"./platform/threshold/*":{"types":"./dist/platform/threshold/*.d.ts","default":"./dist/platform/threshold/*.js"},"./ui/components/chrome":{"types":"./dist/ui/components/chrome/index.d.ts","svelte":"./dist/ui/components/chrome/index.js","default":"./dist/ui/components/chrome/index.js"},"./ui/components/custom":{"types":"./dist/ui/components/custom/index.d.ts","svelte":"./dist/ui/components/custom/index.js","default":"./dist/ui/components/custom/index.js"},"./ui/components/domain":{"types":"./dist/ui/components/domain/index.d.ts","svelte":"./dist/ui/components/domain/index.js","default":"./dist/ui/components/domain/index.js"},"./monitoring/sentinel/*":{"types":"./dist/monitoring/sentinel/*.d.ts","default":"./dist/monitoring/sentinel/*.js"},"./ui/components/content":{"types":"./dist/ui/components/content/index.d.ts","svelte":"./dist/ui/components/content/index.js","default":"./dist/ui/components/content/index.js"},"./platform/feature-flags":{"types":"./dist/platform/feature-flags/index.d.ts","default":"./dist/platform/feature-flags/index.js"},"./ui/components/chrome/*":{"types":"./dist/ui/components/chrome/*.d.ts","default":"./dist/ui/components/chrome/*.js"},"./ui/components/ui/toast":{"types":"./dist/ui/components/ui/toast.d.ts","default":"./dist/ui/components/ui/toast.js"},"./content/editor/*.svelte":{"types":"./dist/content/editor/*.svelte.d.ts","svelte":"./dist/content/editor/*.svelte","default":"./dist/content/editor/*.svelte"},"./platform/threshold/hono":{"types":"./dist/platform/threshold/adapters/hono.d.ts","default":"./dist/platform/threshold/adapters/hono.js"},"./styles/vine-pattern.css":"./dist/styles/vine-pattern.css","./monitoring/observability":{"types":"./dist/monitoring/observability/index.d.ts","default":"./dist/monitoring/observability/index.js"},"./platform/feature-flags/*":{"types":"./dist/platform/feature-flags/*.d.ts","default":"./dist/platform/feature-flags/*.js"},"./social/blazes/components":{"types":"./dist/social/blazes/components/index.d.ts","svelte":"./dist/social/blazes/components/index.js","default":"./dist/social/blazes/components/index.js"},"./ui/components/indicators":{"types":"./dist/ui/components/indicators/index.d.ts","svelte":"./dist/ui/components/indicators/index.js","default":"./dist/ui/components/indicators/index.js"},"./ui/components/typography":{"types":"./dist/ui/components/typography/index.d.ts","svelte":"./dist/ui/components/typography/index.js","default":"./dist/ui/components/typography/index.js"},"./components/admin/*.svelte":{"types":"./dist/components/admin/*.svelte.d.ts","svelte":"./dist/components/admin/*.svelte","default":"./dist/components/admin/*.svelte"},"./components/reeds/*.svelte":{"types":"./dist/components/reeds/*.svelte.d.ts","svelte":"./dist/components/reeds/*.svelte","default":"./dist/components/reeds/*.svelte"},"./platform/threshold/worker":{"types":"./dist/platform/threshold/adapters/worker.d.ts","default":"./dist/platform/threshold/adapters/worker.js"},"./styles/fonts-optional.css":"./dist/styles/fonts-optional.css","./ui/components/ui/*.svelte":{"types":"./dist/ui/components/ui/*.svelte.d.ts","svelte":"./dist/ui/components/ui/*.svelte","default":"./dist/ui/components/ui/*.svelte"},"./components/custom/*.svelte":{"types":"./dist/components/custom/*.svelte.d.ts","svelte":"./dist/components/custom/*.svelte","default":"./dist/components/custom/*.svelte"},"./ui/components/ui/groveicon":{"types":"./dist/ui/components/ui/groveicon/index.d.ts","default":"./dist/ui/components/ui/groveicon/index.js"},"./ui/components/content/hum/*":{"types":"./dist/ui/components/content/hum/*.d.ts","default":"./dist/ui/components/content/hum/*.js"},"./ui/components/ui/waystone/*":{"types":"./dist/ui/components/ui/waystone/*.d.ts","default":"./dist/ui/components/ui/waystone/*.js"},"./platform/threshold/sveltekit":{"types":"./dist/platform/threshold/adapters/sveltekit.d.ts","default":"./dist/platform/threshold/adapters/sveltekit.js"},"./ui/components/forms/*.svelte":{"types":"./dist/ui/components/forms/*.svelte.d.ts","svelte":"./dist/ui/components/forms/*.svelte","default":"./dist/ui/components/forms/*.svelte"},"./ui/components/nature/palette":{"types":"./dist/ui/components/nature/palette.d.ts","default":"./dist/ui/components/nature/palette.js"},"./ui/components/ui/glasschat/*":{"types":"./dist/ui/components/ui/glasschat/*.d.ts","default":"./dist/ui/components/ui/glasschat/*.js"},"./ui/components/ui/groveicon/*":{"types":"./dist/ui/components/ui/groveicon/*.d.ts","default":"./dist/ui/components/ui/groveicon/*.js"},"./ui/components/chrome/*.svelte":{"types":"./dist/ui/components/chrome/*.svelte.d.ts","svelte":"./dist/ui/components/chrome/*.svelte","default":"./dist/ui/components/chrome/*.svelte"},"./ui/components/custom/*.svelte":{"types":"./dist/ui/components/custom/*.svelte.d.ts","svelte":"./dist/ui/components/custom/*.svelte","default":"./dist/ui/components/custom/*.svelte"},"./ui/components/nature/*.svelte":{"types":"./dist/ui/components/nature/*.svelte.d.ts","svelte":"./dist/ui/components/nature/*.svelte","default":"./dist/ui/components/nature/*.svelte"},"./platform/upgrades/server/api/*":{"types":"./dist/platform/upgrades/server/api/*.d.ts","default":"./dist/platform/upgrades/server/api/*.js"},"./ui/components/chrome/lantern/*":{"types":"./dist/ui/components/chrome/lantern/*.d.ts","default":"./dist/ui/components/chrome/lantern/*.js"},"./components/terminology/*.svelte":{"types":"./dist/components/terminology/*.svelte.d.ts","svelte":"./dist/components/terminology/*.svelte","default":"./dist/components/terminology/*.svelte"},"./ui/components/terrarium/*.svelte":{"types":"./dist/ui/components/terrarium/*.svelte.d.ts","svelte":"./dist/ui/components/terrarium/*.svelte","default":"./dist/ui/components/terrarium/*.svelte"},"./ui/components/ui/waystone/*.svelte":{"types":"./dist/ui/components/ui/waystone/*.svelte.d.ts","svelte":"./dist/ui/components/ui/waystone/*.svelte","default":"./dist/ui/components/ui/waystone/*.svelte"},"./ui/components/ui/glasschat/*.svelte":{"types":"./dist/ui/components/ui/glasschat/*.svelte.d.ts","svelte":"./dist/ui/components/ui/glasschat/*.svelte","default":"./dist/ui/components/ui/glasschat/*.svelte"},"./ui/components/ui/groveicon/*.svelte":{"types":"./dist/ui/components/ui/groveicon/*.svelte.d.ts","svelte":"./dist/ui/components/ui/groveicon/*.svelte","default":"./dist/ui/components/ui/groveicon/*.svelte"},"./ui/components/chrome/lantern/*.svelte":{"types":"./dist/ui/components/chrome/lantern/*.svelte.d.ts","svelte":"./dist/ui/components/chrome/lantern/*.svelte","default":"./dist/ui/components/chrome/lantern/*.svelte"},"./ui/components/forms/ContentSearch.svelte":{"types":"./dist/ui/components/forms/ContentSearch.svelte.d.ts","svelte":"./dist/ui/components/forms/ContentSearch.svelte","default":"./dist/ui/components/forms/ContentSearch.svelte"}},"scripts":{"dev":"vite dev","test":"vitest","audit":"pnpm audit --audit-level=moderate","build":"vite build","check":"svelte-kit sync && svelte-check --tsconfig ./tsconfig.json","deploy":"wrangler pages deploy .svelte-kit/cloudflare --project-name grove-lattice","package":"svelte-kit sync && svelte-package -o dist","preview":"vite preview","test:ui":"vitest --ui","test:run":"vitest run","audit:fix":"pnpm audit --fix","email:dev":"email dev -p 3001 --dir src/lib/email","prepackage":"npx tsx ../../scripts/generate/grove-term-manifest.ts","test:watch":"vitest watch","check:watch":"svelte-kit sync && svelte-check --tsconfig ./tsconfig.json --watch","dev:wrangler":"wrangler pages dev -- vite dev","email:export":"email export --dir src/lib/email","build:package":"svelte-kit sync && svelte-package -o dist","test:coverage":"vitest run --coverage","test:security":"vitest run tests/security","build:sveltekit":"vite build"},"_npmUser":{"name":"autumnsgrove","email":"autumnbrown23@pm.me"},"_resolved":"/private/var/folders/qy/7dsqmqmj0v71d0dty0l80sm00000gn/T/50bf0b1f9803ddb3daf832cce618dcef/autumnsgrove-lattice-1.2.1.tgz","_integrity":"sha512-pX2oNZc8eslifCNAN17McbMXwWyCQBNkc4i48JThNb/eETyU9FgYeRcp/DIFEX2k2uWLJzTQ/04EKS2WtKlbPw==","repository":{"url":"git+https://github.com/AutumnsGrove/Lattice.git","type":"git","directory":"libs/engine"},"_npmVersion":"11.16.0","description":"The shared framework powering Grove — blogging platform, glassmorphism UI components, Loom Durable Objects SDK, Lumen AI routing, auth utilities, feature flags, and email infrastructure for SvelteKit on Cloudflare Workers.","directories":{},"_nodeVersion":"26.3.0","dependencies":{"zod":"^4.3.6","clsx":"^2.1.1","resend":"^4.8.0","esm-env":"^1.2.2","heic2any":"^0.0.4","dompurify":"^3.3.1","@tiptap/pm":"^3.19.0","drizzle-orm":"0.44.5","markdown-it":"^14.1.1","@jsquash/jxl":"^1.3.0","@tiptap/core":"^3.19.0","sanitize-html":"^2.17.0","svelte-sonner":"^1.0.7","svelte-tiptap":"^3.0.1","tailwind-merge":"^3.4.0","@11ty/gray-matter":"^2.0.1","dom-to-image-more":"^3.7.2","@autumnsgrove/loom":"0.1.0","@autumnsgrove/infra":"0.1.0","@autumnsgrove/prism":"0.1.0","@react-email/render":"^2.0.4","@tiptap/starter-kit":"^3.19.0","@autumnsgrove/curios":"0.1.0","markdown-it-footnote":"^4.0.0","@react-email/components":"^1.0.10","@tiptap/extension-image":"^3.19.0","@autumnsgrove/grove-crypto":"0.1.0","@autumnsgrove/grove-errors":"0.1.0","@tiptap/extension-underline":"^3.19.0","@autumnsgrove/grove-markdown":"0.1.0","@tiptap/extension-bubble-menu":"^3.19.0","@tiptap/extension-placeholder":"^3.19.0","@tiptap/extension-character-count":"^3.19.0"},"publishConfig":{"access":"public","registry":"https://registry.npmjs.org"},"_hasShrinkwrap":false,"devDependencies":{"vite":"^7.3.1","jsdom":"^27.4.0","react":"^19.2.4","svelte":"^5.50.1","vitest":"^4.1.0","bits-ui":"^1.8.0","esbuild":"^0.27.3","postcss":"^8.5.6","unified":"^11.0.5","happy-dom":"^20.6.1","react-dom":"^19.2.4","@vitest/ui":"^4.1.0","rehype-raw":"^7.0.0","typescript":"^5.9.3","drizzle-kit":"0.31.9","react-email":"^5.2.8","remark-html":"^16.0.1","tailwindcss":"^3.4.19","@types/mdast":"^4.0.4","@types/react":"^19.2.14","autoprefixer":"^10.4.24","remark-parse":"^11.0.0","svelte-check":"^4.3.6","@sveltejs/kit":"^2.50.2","remark-rehype":"^11.1.2","@lucide/svelte":"^0.577.0","@types/react-dom":"^19.2.3","rehype-stringify":"^10.0.1","unist-util-visit":"^5.1.0","@sveltejs/package":"^2.5.7","tailwind-variants":"^0.3.1","@types/markdown-it":"^14.1.2","@vitest/coverage-v8":"^4.1.0","@types/sanitize-html":"^2.16.0","@autumnsgrove/gossamer":"0.2.0","@tailwindcss/typography":"^0.5.19","@testing-library/svelte":"^5.3.1","@cloudflare/workers-types":"^4.20260317.1","@testing-library/jest-dom":"^6.9.1","@types/markdown-it-footnote":"^3.0.4","@sveltejs/adapter-cloudflare":"^7.2.6","@sveltejs/vite-plugin-svelte":"^6.2.4"},"peerDependencies":{"svelte":"^5.50.1","tailwindcss":"^3.4.0","@sveltejs/kit":"^2.50.2","@autumnsgrove/gossamer":"0.2.0"},"peerDependenciesMeta":{"@autumnsgrove/gossamer":{"optional":true}},"_npmOperationalInternal":{"tmp":"tmp/lattice_1.2.1_1782497402130_0.37713199549304743","host":"s3://npm-registry-packages-npm-production"}},"1.2.2":{"author":{"name":"AutumnsGrove"},"dependencies":{"@11ty/gray-matter":"^2.0.1","@jsquash/jxl":"^1.3.0","@react-email/components":"^1.0.10","@react-email/render":"^2.0.4","@tiptap/core":"^3.19.0","@tiptap/extension-bubble-menu":"^3.19.0","@tiptap/extension-character-count":"^3.19.0","@tiptap/extension-image":"^3.19.0","@tiptap/extension-placeholder":"^3.19.0","@tiptap/extension-underline":"^3.19.0","@tiptap/pm":"^3.19.0","@tiptap/starter-kit":"^3.19.0","clsx":"^2.1.1","dom-to-image-more":"^3.7.2","dompurify":"^3.3.1","drizzle-orm":"0.44.5","esm-env":"^1.2.2","heic2any":"^0.0.4","markdown-it":"^14.1.1","markdown-it-footnote":"^4.0.0","resend":"^4.8.0","sanitize-html":"^2.17.0","svelte-sonner":"^1.0.7","svelte-tiptap":"^3.0.1","tailwind-merge":"^3.4.0","zod":"^4.3.6","@autumnsgrove/curios":"0.1.1","@autumnsgrove/grove-crypto":"0.1.0","@autumnsgrove/grove-errors":"0.1.0","@autumnsgrove/infra":"0.1.1","@autumnsgrove/grove-markdown":"0.1.0","@autumnsgrove/prism":"0.1.0","@autumnsgrove/loom":"0.1.1"},"description":"The shared framework powering Grove — blogging platform, glassmorphism UI components, Loom Durable Objects SDK, Lumen AI routing, auth utilities, feature flags, and email infrastructure for SvelteKit on Cloudflare Workers.","devDependencies":{"@cloudflare/workers-types":"^4.20260317.1","@lucide/svelte":"^0.577.0","@sveltejs/adapter-cloudflare":"^7.2.6","@sveltejs/kit":"^2.50.2","@sveltejs/package":"^2.5.7","@sveltejs/vite-plugin-svelte":"^6.2.4","@tailwindcss/typography":"^0.5.19","@testing-library/jest-dom":"^6.9.1","@testing-library/svelte":"^5.3.1","@types/markdown-it":"^14.1.2","@types/markdown-it-footnote":"^3.0.4","@types/mdast":"^4.0.4","@types/react":"^19.2.14","@types/react-dom":"^19.2.3","@types/sanitize-html":"^2.16.0","@vitest/coverage-v8":"^4.1.0","@vitest/ui":"^4.1.0","autoprefixer":"^10.4.24","bits-ui":"^1.8.0","drizzle-kit":"0.31.9","esbuild":"^0.27.3","happy-dom":"^20.6.1","jsdom":"^27.4.0","postcss":"^8.5.6","react":"^19.2.4","react-dom":"^19.2.4","react-email":"^5.2.8","rehype-raw":"^7.0.0","rehype-stringify":"^10.0.1","remark-html":"^16.0.1","remark-parse":"^11.0.0","remark-rehype":"^11.1.2","svelte":"^5.50.1","svelte-check":"^4.3.6","tailwind-variants":"^0.3.1","tailwindcss":"^3.4.19","typescript":"^5.9.3","unified":"^11.0.5","unist-util-visit":"^5.1.0","vite":"^7.3.1","vitest":"^4.1.0","@autumnsgrove/gossamer":"0.2.0"},"exports":{".":{"types":"./dist/index.d.ts","svelte":"./dist/index.js","default":"./dist/index.js"},"./actions/*":{"types":"./dist/actions/*.d.ts","default":"./dist/actions/*.js"},"./media/amber":{"types":"./dist/media/amber/index.d.ts","default":"./dist/media/amber/index.js"},"./media/processing":{"types":"./dist/media/processing/imageProcessor.d.ts","default":"./dist/media/processing/imageProcessor.js"},"./media/processing/*":{"types":"./dist/media/processing/*.d.ts","default":"./dist/media/processing/*.js"},"./media/validation":{"types":"./dist/media/validation/upload-validation.d.ts","default":"./dist/media/validation/upload-validation.js"},"./media/validation/*":{"types":"./dist/media/validation/*.d.ts","default":"./dist/media/validation/*.js"},"./content/markdown":{"types":"./dist/content/markdown/index.d.ts","default":"./dist/content/markdown/index.js"},"./content/markdown/*":{"types":"./dist/content/markdown/*.d.ts","default":"./dist/content/markdown/*.js"},"./content/editor":{"types":"./dist/content/editor/index.d.ts","svelte":"./dist/content/editor/index.js","default":"./dist/content/editor/index.js"},"./content/editor/*":{"types":"./dist/content/editor/*.d.ts","default":"./dist/content/editor/*.js"},"./content/editor/*.svelte":{"types":"./dist/content/editor/*.svelte.d.ts","svelte":"./dist/content/editor/*.svelte","default":"./dist/content/editor/*.svelte"},"./components/admin/*.svelte":{"types":"./dist/components/admin/*.svelte.d.ts","svelte":"./dist/components/admin/*.svelte","default":"./dist/components/admin/*.svelte"},"./components/custom/*.svelte":{"types":"./dist/components/custom/*.svelte.d.ts","svelte":"./dist/components/custom/*.svelte","default":"./dist/components/custom/*.svelte"},"./components/reeds/*.svelte":{"types":"./dist/components/reeds/*.svelte.d.ts","svelte":"./dist/components/reeds/*.svelte","default":"./dist/components/reeds/*.svelte"},"./components/terminology/*.svelte":{"types":"./dist/components/terminology/*.svelte.d.ts","svelte":"./dist/components/terminology/*.svelte","default":"./dist/components/terminology/*.svelte"},"./auth":{"types":"./dist/auth/index.d.ts","default":"./dist/auth/index.js"},"./auth/*":{"types":"./dist/auth/*.d.ts","default":"./dist/auth/*.js"},"./auth/warden":{"types":"./dist/auth/warden/index.d.ts","default":"./dist/auth/warden/index.js"},"./auth/login":{"types":"./dist/auth/login/index.d.ts","svelte":"./dist/auth/login/index.js","default":"./dist/auth/login/index.js"},"./auth/login/*":{"types":"./dist/auth/login/*.d.ts","default":"./dist/auth/login/*.js"},"./auth/login/server":{"types":"./dist/auth/login/server/index.d.ts","default":"./dist/auth/login/server/index.js"},"./social/blazes":{"types":"./dist/social/blazes/index.d.ts","svelte":"./dist/social/blazes/index.js","default":"./dist/social/blazes/index.js"},"./social/blazes/components":{"types":"./dist/social/blazes/components/index.d.ts","svelte":"./dist/social/blazes/components/index.js","default":"./dist/social/blazes/components/index.js"},"./platform/config":{"types":"./dist/platform/config/index.d.ts","default":"./dist/platform/config/index.js"},"./platform/config/*":{"types":"./dist/platform/config/*.d.ts","default":"./dist/platform/config/*.js"},"./db":{"types":"./dist/server/db/index.d.ts","default":"./dist/server/db/index.js"},"./db/schema":{"types":"./dist/server/db/schema/index.d.ts","default":"./dist/server/db/schema/index.js"},"./db/schema/*":{"types":"./dist/server/db/schema/*.d.ts","default":"./dist/server/db/schema/*.js"},"./durable-objects":{"types":"./dist/durable-objects/index.d.ts","default":"./dist/durable-objects/index.js"},"./durable-objects/*":{"types":"./dist/durable-objects/*.d.ts","default":"./dist/durable-objects/*.js"},"./email":{"types":"./dist/email/index.d.ts","default":"./dist/email/index.js"},"./email/components":{"types":"./dist/email/components/index.d.ts","default":"./dist/email/components/index.js"},"./email/porch":{"types":"./dist/email/porch/index.d.ts","default":"./dist/email/porch/index.js"},"./email/render":{"types":"./dist/email/render.d.ts","default":"./dist/email/render.js"},"./email/schedule":{"types":"./dist/email/schedule.d.ts","default":"./dist/email/schedule.js"},"./email/sequences":{"types":"./dist/email/sequences/index.d.ts","default":"./dist/email/sequences/index.js"},"./email/types":{"types":"./dist/email/types.d.ts","default":"./dist/email/types.js"},"./email/updates":{"types":"./dist/email/updates/index.d.ts","default":"./dist/email/updates/index.js"},"./email/urls":{"types":"./dist/email/urls.d.ts","default":"./dist/email/urls.js"},"./errors":{"types":"./dist/errors/index.d.ts","default":"./dist/errors/index.js"},"./errors/*":{"types":"./dist/errors/*.d.ts","default":"./dist/errors/*.js"},"./platform/feature-flags":{"types":"./dist/platform/feature-flags/index.d.ts","default":"./dist/platform/feature-flags/index.js"},"./platform/feature-flags/*":{"types":"./dist/platform/feature-flags/*.d.ts","default":"./dist/platform/feature-flags/*.js"},"./git":{"types":"./dist/git/index.d.ts","default":"./dist/git/index.js"},"./platform/greenhouse":{"types":"./dist/platform/greenhouse/index.d.ts","svelte":"./dist/platform/greenhouse/index.js","default":"./dist/platform/greenhouse/index.js"},"./platform/pricing":{"types":"./dist/platform/pricing/index.d.ts","svelte":"./dist/platform/pricing/index.js","default":"./dist/platform/pricing/index.js"},"./platform/upgrades":{"types":"./dist/platform/upgrades/index.d.ts","svelte":"./dist/platform/upgrades/index.js","default":"./dist/platform/upgrades/index.js"},"./platform/upgrades/server/api/*":{"types":"./dist/platform/upgrades/server/api/*.d.ts","default":"./dist/platform/upgrades/server/api/*.js"},"./platform/uploads":{"types":"./dist/platform/uploads/index.d.ts","svelte":"./dist/platform/uploads/index.js","default":"./dist/platform/uploads/index.js"},"./ai/lumen":{"types":"./dist/ai/lumen/index.d.ts","default":"./dist/ai/lumen/index.js"},"./ai/lumen/*":{"types":"./dist/ai/lumen/*.d.ts","default":"./dist/ai/lumen/*.js"},"./payments":{"types":"./dist/payments/index.d.ts","default":"./dist/payments/index.js"},"./payments/*":{"types":"./dist/payments/*.d.ts","default":"./dist/payments/*.js"},"./monitoring/sentinel":{"types":"./dist/monitoring/sentinel/index.d.ts","default":"./dist/monitoring/sentinel/index.js"},"./monitoring/sentinel/*":{"types":"./dist/monitoring/sentinel/*.d.ts","default":"./dist/monitoring/sentinel/*.js"},"./server":{"types":"./dist/server/index.d.ts","default":"./dist/server/index.js"},"./server/*":{"types":"./dist/server/*.d.ts","default":"./dist/server/*.js"},"./monitoring/observability":{"types":"./dist/monitoring/observability/index.d.ts","default":"./dist/monitoring/observability/index.js"},"./pulse":{"types":"./dist/pulse/index.d.ts","default":"./dist/pulse/index.js"},"./pulse/*":{"types":"./dist/pulse/*.d.ts","default":"./dist/pulse/*.js"},"./server/petal":{"types":"./dist/server/petal/index.d.ts","default":"./dist/server/petal/index.js"},"./server/petal/*":{"types":"./dist/server/petal/*.d.ts","default":"./dist/server/petal/*.js"},"./server/services":{"types":"./dist/server/services/index.d.ts","default":"./dist/server/services/index.js"},"./server/services/*":{"types":"./dist/server/services/*.d.ts","default":"./dist/server/services/*.js"},"./server/utils":{"types":"./dist/server/utils/index.d.ts","default":"./dist/server/utils/index.js"},"./server/utils/*":{"types":"./dist/server/utils/*.d.ts","default":"./dist/server/utils/*.js"},"./services":{"types":"./dist/server/services/index.d.ts","default":"./dist/server/services/index.js"},"./services/*":{"types":"./dist/server/services/*.d.ts","default":"./dist/server/services/*.js"},"./styles/*":"./dist/styles/*","./styles/fonts-optional.css":"./dist/styles/fonts-optional.css","./styles/tokens.css":"./dist/styles/tokens.css","./styles/vine-pattern.css":"./dist/styles/vine-pattern.css","./platform/threshold":{"types":"./dist/platform/threshold/index.d.ts","default":"./dist/platform/threshold/index.js"},"./platform/threshold/*":{"types":"./dist/platform/threshold/*.d.ts","default":"./dist/platform/threshold/*.js"},"./platform/threshold/hono":{"types":"./dist/platform/threshold/adapters/hono.d.ts","default":"./dist/platform/threshold/adapters/hono.js"},"./platform/threshold/sveltekit":{"types":"./dist/platform/threshold/adapters/sveltekit.d.ts","default":"./dist/platform/threshold/adapters/sveltekit.js"},"./platform/threshold/worker":{"types":"./dist/platform/threshold/adapters/worker.d.ts","default":"./dist/platform/threshold/adapters/worker.js"},"./ui":{"types":"./dist/ui/index.d.ts","svelte":"./dist/ui/index.js","default":"./dist/ui/index.js"},"./ui/arbor":{"types":"./dist/ui/components/arbor/index.d.ts","svelte":"./dist/ui/components/arbor/index.js","default":"./dist/ui/components/arbor/index.js"},"./ui/charts":{"types":"./dist/ui/components/charts/index.d.ts","svelte":"./dist/ui/components/charts/index.js","default":"./dist/ui/components/charts/index.js"},"./ui/chat":{"types":"./dist/ui/chat/index.d.ts","default":"./dist/ui/chat/index.js"},"./ui/chat/*":{"types":"./dist/ui/chat/*.d.ts","default":"./dist/ui/chat/*.js"},"./ui/chrome":{"types":"./dist/ui/components/chrome/index.d.ts","svelte":"./dist/ui/components/chrome/index.js","default":"./dist/ui/components/chrome/index.js"},"./ui/components":{"types":"./dist/ui/components/ui/index.d.ts","svelte":"./dist/ui/components/ui/index.js","default":"./dist/ui/components/ui/index.js"},"./ui/components/arbor":{"types":"./dist/ui/components/arbor/index.d.ts","svelte":"./dist/ui/components/arbor/index.js","default":"./dist/ui/components/arbor/index.js"},"./ui/components/chrome":{"types":"./dist/ui/components/chrome/index.d.ts","svelte":"./dist/ui/components/chrome/index.js","default":"./dist/ui/components/chrome/index.js"},"./ui/components/chrome/*":{"types":"./dist/ui/components/chrome/*.d.ts","default":"./dist/ui/components/chrome/*.js"},"./ui/components/chrome/*.svelte":{"types":"./dist/ui/components/chrome/*.svelte.d.ts","svelte":"./dist/ui/components/chrome/*.svelte","default":"./dist/ui/components/chrome/*.svelte"},"./ui/components/chrome/lantern/*":{"types":"./dist/ui/components/chrome/lantern/*.d.ts","default":"./dist/ui/components/chrome/lantern/*.js"},"./ui/components/chrome/lantern/*.svelte":{"types":"./dist/ui/components/chrome/lantern/*.svelte.d.ts","svelte":"./dist/ui/components/chrome/lantern/*.svelte","default":"./dist/ui/components/chrome/lantern/*.svelte"},"./ui/components/custom":{"types":"./dist/ui/components/custom/index.d.ts","svelte":"./dist/ui/components/custom/index.js","default":"./dist/ui/components/custom/index.js"},"./ui/components/custom/*.svelte":{"types":"./dist/ui/components/custom/*.svelte.d.ts","svelte":"./dist/ui/components/custom/*.svelte","default":"./dist/ui/components/custom/*.svelte"},"./ui/components/content":{"types":"./dist/ui/components/content/index.d.ts","svelte":"./dist/ui/components/content/index.js","default":"./dist/ui/components/content/index.js"},"./ui/components/content/hum/*":{"types":"./dist/ui/components/content/hum/*.d.ts","default":"./dist/ui/components/content/hum/*.js"},"./ui/components/domain":{"types":"./dist/ui/components/domain/index.d.ts","svelte":"./dist/ui/components/domain/index.js","default":"./dist/ui/components/domain/index.js"},"./ui/components/forms":{"types":"./dist/ui/components/forms/index.d.ts","svelte":"./dist/ui/components/forms/index.js","default":"./dist/ui/components/forms/index.js"},"./ui/components/forms/*.svelte":{"types":"./dist/ui/components/forms/*.svelte.d.ts","svelte":"./dist/ui/components/forms/*.svelte","default":"./dist/ui/components/forms/*.svelte"},"./ui/components/forms/ContentSearch.svelte":{"types":"./dist/ui/components/forms/ContentSearch.svelte.d.ts","svelte":"./dist/ui/components/forms/ContentSearch.svelte","default":"./dist/ui/components/forms/ContentSearch.svelte"},"./ui/components/icons":{"types":"./dist/ui/components/icons/index.d.ts","svelte":"./dist/ui/components/icons/index.js","default":"./dist/ui/components/icons/index.js"},"./ui/components/indicators":{"types":"./dist/ui/components/indicators/index.d.ts","svelte":"./dist/ui/components/indicators/index.js","default":"./dist/ui/components/indicators/index.js"},"./ui/components/nature/*.svelte":{"types":"./dist/ui/components/nature/*.svelte.d.ts","svelte":"./dist/ui/components/nature/*.svelte","default":"./dist/ui/components/nature/*.svelte"},"./ui/components/nature/palette":{"types":"./dist/ui/components/nature/palette.d.ts","default":"./dist/ui/components/nature/palette.js"},"./ui/components/terrarium/*.svelte":{"types":"./dist/ui/components/terrarium/*.svelte.d.ts","svelte":"./dist/ui/components/terrarium/*.svelte","default":"./dist/ui/components/terrarium/*.svelte"},"./ui/components/typography":{"types":"./dist/ui/components/typography/index.d.ts","svelte":"./dist/ui/components/typography/index.js","default":"./dist/ui/components/typography/index.js"},"./ui/components/ui/*":{"types":"./dist/ui/components/ui/*/index.d.ts","svelte":"./dist/ui/components/ui/*/index.js","default":"./dist/ui/components/ui/*/index.js"},"./ui/components/ui/*.svelte":{"types":"./dist/ui/components/ui/*.svelte.d.ts","svelte":"./dist/ui/components/ui/*.svelte","default":"./dist/ui/components/ui/*.svelte"},"./ui/components/ui/glasschat/*":{"types":"./dist/ui/components/ui/glasschat/*.d.ts","default":"./dist/ui/components/ui/glasschat/*.js"},"./ui/components/ui/glasschat/*.svelte":{"types":"./dist/ui/components/ui/glasschat/*.svelte.d.ts","svelte":"./dist/ui/components/ui/glasschat/*.svelte","default":"./dist/ui/components/ui/glasschat/*.svelte"},"./ui/components/ui/groveicon":{"types":"./dist/ui/components/ui/groveicon/index.d.ts","default":"./dist/ui/components/ui/groveicon/index.js"},"./ui/components/ui/groveicon/*":{"types":"./dist/ui/components/ui/groveicon/*.d.ts","default":"./dist/ui/components/ui/groveicon/*.js"},"./ui/components/ui/groveicon/*.svelte":{"types":"./dist/ui/components/ui/groveicon/*.svelte.d.ts","svelte":"./dist/ui/components/ui/groveicon/*.svelte","default":"./dist/ui/components/ui/groveicon/*.svelte"},"./ui/components/ui/toast":{"types":"./dist/ui/components/ui/toast.d.ts","default":"./dist/ui/components/ui/toast.js"},"./ui/components/ui/waystone/*":{"types":"./dist/ui/components/ui/waystone/*.d.ts","default":"./dist/ui/components/ui/waystone/*.js"},"./ui/components/ui/waystone/*.svelte":{"types":"./dist/ui/components/ui/waystone/*.svelte.d.ts","svelte":"./dist/ui/components/ui/waystone/*.svelte","default":"./dist/ui/components/ui/waystone/*.svelte"},"./ui/content":{"types":"./dist/ui/components/content/index.d.ts","svelte":"./dist/ui/components/content/index.js","default":"./dist/ui/components/content/index.js"},"./ui/content/hum":{"types":"./dist/ui/components/content/hum/index.d.ts","svelte":"./dist/ui/components/content/hum/index.js","default":"./dist/ui/components/content/hum/index.js"},"./ui/editor":{"types":"./dist/content/editor/index.d.ts","svelte":"./dist/content/editor/index.js","default":"./dist/content/editor/index.js"},"./ui/feedback":{"types":"./dist/ui/components/feedback/index.d.ts","svelte":"./dist/ui/components/feedback/index.js","default":"./dist/ui/components/feedback/index.js"},"./ui/forms":{"types":"./dist/ui/components/forms/index.d.ts","svelte":"./dist/ui/components/forms/index.js","default":"./dist/ui/components/forms/index.js"},"./ui/gallery":{"types":"./dist/ui/components/gallery/index.d.ts","svelte":"./dist/ui/components/gallery/index.js","default":"./dist/ui/components/gallery/index.js"},"./ui/icons":{"types":"./dist/ui/components/icons/index.d.ts","svelte":"./dist/ui/components/icons/index.js","default":"./dist/ui/components/icons/index.js"},"./ui/indicators":{"types":"./dist/ui/components/indicators/index.d.ts","svelte":"./dist/ui/components/indicators/index.js","default":"./dist/ui/components/indicators/index.js"},"./ui/media-player":{"types":"./dist/ui/components/media-player/index.d.ts","svelte":"./dist/ui/components/media-player/index.js","default":"./dist/ui/components/media-player/index.js"},"./ui/nature":{"types":"./dist/ui/components/nature/index.d.ts","svelte":"./dist/ui/components/nature/index.js","default":"./dist/ui/components/nature/index.js"},"./ui/nature/*":{"types":"./dist/ui/components/nature/*/index.d.ts","svelte":"./dist/ui/components/nature/*/index.js","default":"./dist/ui/components/nature/*/index.js"},"./ui/season-meta":{"types":"./dist/ui/season-meta.d.ts","default":"./dist/ui/season-meta.js"},"./ui/states":{"types":"./dist/ui/components/states/index.d.ts","svelte":"./dist/ui/components/states/index.js","default":"./dist/ui/components/states/index.js"},"./ui/stores":{"types":"./dist/ui/stores/index.d.ts","svelte":"./dist/ui/stores/index.js","default":"./dist/ui/stores/index.js"},"./ui/stores/*":{"types":"./dist/ui/stores/*.d.ts","default":"./dist/ui/stores/*.js"},"./ui/styles":"./dist/ui/styles/grove.css","./ui/styles/*":"./dist/ui/styles/*","./ui/tailwind":"./dist/ui/tailwind.preset.js","./ui/terrarium":{"types":"./dist/ui/components/terrarium/index.d.ts","svelte":"./dist/ui/components/terrarium/index.js","default":"./dist/ui/components/terrarium/index.js"},"./ui/tokens":{"types":"./dist/ui/tokens/index.d.ts","default":"./dist/ui/tokens/index.js"},"./ui/tokens/*":{"types":"./dist/ui/tokens/*.d.ts","default":"./dist/ui/tokens/*.js"},"./ui/types/*":{"types":"./dist/ui/types/*.d.ts","default":"./dist/ui/types/*.js"},"./ui/typography":{"types":"./dist/ui/components/typography/index.d.ts","svelte":"./dist/ui/components/typography/index.js","default":"./dist/ui/components/typography/index.js"},"./ui/utils":{"types":"./dist/ui/utils/index.d.ts","default":"./dist/ui/utils/index.js"},"./ui/utils/*":{"types":"./dist/ui/utils/*.d.ts","default":"./dist/ui/utils/*.js"},"./utils":{"types":"./dist/utils/index.d.ts","default":"./dist/utils/index.js"},"./utils/*":{"types":"./dist/utils/*.d.ts","default":"./dist/utils/*.js"},"./zephyr":{"types":"./dist/zephyr/index.d.ts","default":"./dist/zephyr/index.js"}},"keywords":["grove","lattice","blog","cms","sveltekit","cloudflare","durable-objects","ui-components","multi-tenant","loom","ai-routing"],"license":"AGPL-3.0-only","name":"@autumnsgrove/lattice","peerDependencies":{"@sveltejs/kit":"^2.50.2","svelte":"^5.50.1","tailwindcss":"^3.4.0","@autumnsgrove/gossamer":"0.2.0"},"peerDependenciesMeta":{"@autumnsgrove/gossamer":{"optional":true}},"publishConfig":{"access":"public","registry":"https://registry.npmjs.org"},"repository":{"directory":"libs/engine","type":"git","url":"git+https://github.com/AutumnsGrove/Lattice.git"},"svelte":"./dist/index.js","type":"module","types":"./dist/index.d.ts","version":"1.2.2","scripts":{"audit":"pnpm audit --audit-level=moderate","audit:fix":"pnpm audit --fix","build":"vite build","build:package":"svelte-kit sync && svelte-package -o dist","build:sveltekit":"vite build","check":"svelte-kit sync && svelte-check --tsconfig ./tsconfig.json","check:watch":"svelte-kit sync && svelte-check --tsconfig ./tsconfig.json --watch","deploy":"wrangler pages deploy .svelte-kit/cloudflare --project-name grove-lattice","dev":"vite dev","dev:wrangler":"wrangler pages dev -- vite dev","email:dev":"email dev -p 3001 --dir src/lib/email","email:export":"email export --dir src/lib/email","package":"svelte-kit sync && svelte-package -o dist","prepackage":"npx tsx ../../scripts/generate/grove-term-manifest.ts","preview":"vite preview","test":"vitest","test:coverage":"vitest run --coverage","test:run":"vitest run","test:security":"vitest run tests/security","test:ui":"vitest --ui","test:watch":"vitest watch"},"_id":"@autumnsgrove/lattice@1.2.2","bugs":{"url":"https://github.com/AutumnsGrove/Lattice/issues"},"homepage":"https://github.com/AutumnsGrove/Lattice#readme","_integrity":"sha512-T2K/ySRCSww1tP0rVB3sGn2ifZmCI6SmlBzhLzS1hm4x42pxDYUc9htQOE45I/+qy7P6ZZ5Beu3afqKIfgmkNw==","_resolved":"/private/var/folders/qy/7dsqmqmj0v71d0dty0l80sm00000gn/T/fe27a370787fbf7d69b48032b68241f2/autumnsgrove-lattice-1.2.2.tgz","_from":"file:autumnsgrove-lattice-1.2.2.tgz","_nodeVersion":"26.3.0","_npmVersion":"11.16.0","dist":{"integrity":"sha512-T2K/ySRCSww1tP0rVB3sGn2ifZmCI6SmlBzhLzS1hm4x42pxDYUc9htQOE45I/+qy7P6ZZ5Beu3afqKIfgmkNw==","shasum":"4b206798e8578ea8af893f5b02f0cbb8bc45fbf6","tarball":"https://registry.npmjs.org/@autumnsgrove/lattice/-/lattice-1.2.2.tgz","fileCount":1557,"unpackedSize":10773572,"signatures":[{"keyid":"SHA256:DhQ8wR5APBvFHLF/+Tc+AYvPOdTpcIDqOhxsBHRwC7U","sig":"MEQCIErmkT7rI0f6fVyXMNRFPNIUNlYFUeoH1qdCmiaTCgX1AiA/mvQaSaL8sU/uRrC9MjYgMA8rIMBYYKHOXNyd6W1Qag=="}]},"_npmUser":{"name":"autumnsgrove","email":"autumnbrown23@pm.me"},"directories":{},"maintainers":[{"name":"autumnsgrove","email":"autumnbrown23@pm.me"}],"_npmOperationalInternal":{"host":"s3://npm-registry-packages-npm-production","tmp":"tmp/lattice_1.2.2_1782497684690_0.27163739172451606"},"_hasShrinkwrap":false}},"time":{"created":"2026-02-18T23:13:17.012Z","modified":"2026-06-26T18:14:45.045Z","1.0.0":"2026-02-18T23:13:17.493Z","1.1.0":"2026-02-27T01:57:33.530Z","1.1.2":"2026-03-18T12:42:30.380Z","1.2.0":"2026-06-26T17:38:57.129Z","1.2.1":"2026-06-26T18:10:02.517Z","1.2.2":"2026-06-26T18:14:44.937Z"},"bugs":{"url":"https://github.com/AutumnsGrove/Lattice/issues"},"author":{"name":"AutumnsGrove"},"license":"AGPL-3.0-only","homepage":"https://github.com/AutumnsGrove/Lattice#readme","keywords":["grove","lattice","blog","cms","sveltekit","cloudflare","durable-objects","ui-components","multi-tenant","loom","ai-routing"],"repository":{"directory":"libs/engine","type":"git","url":"git+https://github.com/AutumnsGrove/Lattice.git"},"description":"The shared framework powering Grove — blogging platform, glassmorphism UI components, Loom Durable Objects SDK, Lumen AI routing, auth utilities, feature flags, and email infrastructure for SvelteKit on Cloudflare Workers.","maintainers":[{"name":"autumnsgrove","email":"autumnbrown23@pm.me"}],"readme":"# Lattice (@autumnsgrove/lattice)\n\n> **Internal codename:** Lattice\n\nMulti-tenant blog engine for the Grove Platform. Each Grove site runs as its own Cloudflare Worker, powered by Lattice. A lattice is the framework that supports growth—vines climb it, gardens are built around it.\n\n## Features\n\n- **Gutter Annotations** - Unique sidebar annotation system for blog posts\n- **Markdown Editor** - Full-featured editor with live preview, themes, and drag-drop image upload\n- **Magic Code Auth** - Passwordless authentication via email codes\n- **Admin Panel** - Complete CMS for posts, pages, images, and settings\n- **Multi-Tenant Ready** - Designed for username.grove.place architecture\n- **Cloudflare Native** - D1 database, R2 storage, KV caching, Workers deployment\n\n## Architecture\n\n```\nEach Grove Site (Cloudflare Worker)\n├── src/\n│   ├── routes/\n│   │   ├── admin/        # CMS admin panel\n│   │   ├── api/          # REST API endpoints\n│   │   ├── auth/         # Magic code authentication\n│   │   ├── blog/         # Blog listing and posts\n│   │   ├── about/        # Static about page\n│   │   └── contact/      # Static contact page\n│   └── lib/\n│       ├── auth/         # JWT and session management\n│       ├── components/   # Svelte components\n│       │   ├── admin/    # MarkdownEditor, GutterManager\n│       │   ├── custom/   # ContentWithGutter, TableOfContents\n│       │   ├── gallery/  # ImageGallery, Lightbox, ZoomableImage\n│       │   └── ui/       # shadcn-svelte components\n│       ├── utils/        # Markdown parser, CSRF, sanitization\n│       └── styles/       # CSS and tokens\n├── UserContent/          # Site-specific content\n├── migrations/           # D1 database migrations\n└── static/fonts/         # Self-hosted fonts\n```\n\n## Cloudflare Bindings Required\n\n```toml\n# wrangler.toml\n[[d1_databases]]\nbinding = \"DB\"\ndatabase_name = \"your-site-db\"\ndatabase_id = \"your-database-id\"\n\n[[r2_buckets]]\nbinding = \"IMAGES\"\nbucket_name = \"your-site-images\"\n\n[[kv_namespaces]]\nbinding = \"CACHE\"\nid = \"your-kv-id\"\n```\n\n## Environment Variables\n\n```bash\n# .dev.vars\nJWT_SECRET=your-secret-key\nALLOWED_ADMIN_EMAILS=admin@example.com\nRESEND_API_KEY=re_xxxxx\n```\n\n## Quick Start\n\n1. **Clone and install**\n\n   ```bash\n   cd packages/engine\n   npm install\n   ```\n\n2. **Set up Cloudflare resources**\n\n   ```bash\n   npx wrangler d1 create your-site-db\n   npx wrangler r2 bucket create your-site-images\n   npx wrangler kv:namespace create CACHE\n   ```\n\n3. **Run migrations**\n\n   ```bash\n   npx wrangler d1 execute your-site-db --local --file=migrations/001_initial_schema.sql\n   npx wrangler d1 execute your-site-db --local --file=migrations/002_auth_security.sql\n   npx wrangler d1 execute your-site-db --local --file=migrations/003_site_settings.sql\n   npx wrangler d1 execute your-site-db --local --file=migrations/004_pages_table.sql\n   npx wrangler d1 execute your-site-db --local --file=migrations/005_multi_tenant.sql\n   ```\n\n4. **Configure environment**\n\n   ```bash\n   cp .dev.vars.example .dev.vars\n   # Edit .dev.vars with your values\n   ```\n\n5. **Start development**\n\n   ```bash\n   npm run dev\n   ```\n\n6. **Deploy**\n   ```bash\n   npx wrangler pages deploy\n   ```\n\n## Fonts\n\nLattice includes self-hosted accessibility-focused fonts in `static/fonts/`. After installing the package, copy the fonts to your project's static directory:\n\n```bash\n# Copy fonts from node_modules to your static folder\ncp -r node_modules/@autumnsgrove/lattice/static/fonts/ static/fonts/\n```\n\n**Included fonts:**\n\n- `alagard.ttf` - Pixel art style\n- `AtkinsonHyperlegible-Regular.ttf` - High legibility\n- `CozetteVector.ttf` - Bitmap style\n- `Cormorant-Regular.ttf` - Elegant serif\n- `Lexend-Regular.ttf` - Reading optimized\n- `OpenDyslexic-Regular.otf` - Dyslexia-friendly\n- `Quicksand-Regular.ttf` - Rounded sans-serif\n\nYour `@font-face` declarations should reference `/fonts/fontname.ttf`.\n\n## Key Components\n\n### Gutter System\n\nThe unique gutter annotation system allows sidebar notes on blog posts:\n\n- `ContentWithGutter.svelte` - Main content layout\n- `GutterItem.svelte` - Individual annotations\n- `LeftGutter.svelte` - Gutter container\n- `GutterManager.svelte` - Admin UI for managing gutters\n\n### Markdown Editor\n\nFull-featured editor with:\n\n- Live preview\n- Multiple themes (Grove, Amber, Matrix, Dracula, Nord, Rose)\n- Drag-drop image upload to R2\n- Mermaid diagram support\n- Slash commands\n- Zen mode\n\n### Authentication\n\nPasswordless magic code system:\n\n- Email-based verification codes\n- JWT sessions\n- Rate limiting\n- Constant-time comparison for security\n\n## Multi-Tenant Schema\n\nThe engine supports multi-tenant deployment where each tenant gets isolated data:\n\n```sql\n-- Each tenant (subdomain)\nCREATE TABLE tenants (\n  id TEXT PRIMARY KEY,\n  subdomain TEXT UNIQUE NOT NULL,\n  plan TEXT DEFAULT 'starter',\n  -- ...\n);\n\n-- Posts scoped to tenant\nCREATE TABLE posts (\n  id TEXT PRIMARY KEY,\n  tenant_id TEXT NOT NULL,\n  slug TEXT NOT NULL,\n  -- ...\n  UNIQUE(tenant_id, slug)\n);\n```\n\n## Related Documentation\n\n- [Migration Strategy](../../docs/MIGRATION-STRATEGY.md)\n- [Agent Guide for New Sites](../../docs/guides/AGENT-GUIDE-NEW-GROVE-SITES.md)\n- [Customer Setup Guide](../../docs/guides/customer-setup.md)\n\n## License\n\nMIT\n","readmeFilename":"README.md"}