{"_id":"email-block-builder","_rev":"27-a676f04013b79530e0ef87d31ed9fc29","name":"email-block-builder","dist-tags":{"latest":"0.15.0"},"versions":{"0.1.0":{"name":"email-block-builder","version":"0.1.0","keywords":["email","email-builder","email-editor","drag-and-drop","react","email-template","wysiwyg","mjml-alternative"],"author":{"name":"Ilias Verginis"},"license":"MIT","_id":"email-block-builder@0.1.0","maintainers":[{"name":"verzio99","email":"eliasver99@gmail.com"}],"homepage":"https://github.com/iliasverginis/email-block-builder#readme","bugs":{"url":"https://github.com/iliasverginis/email-block-builder/issues"},"dist":{"shasum":"15eb36f85924f35bf01e8daa1abd04ba1f4ff6fc","tarball":"https://registry.npmjs.org/email-block-builder/-/email-block-builder-0.1.0.tgz","fileCount":10,"integrity":"sha512-mvM10H4H8q7J/fe0sFt4lMqruoHhuGSiBDzuiBT/TXpVY2Ff3sQa+laAuXygn9FxGqG004IEfJwpnvL9twqMKw==","signatures":[{"sig":"MEYCIQDSfu4wbyfD8cxF2JKj/ydNfJpWiBuE4OH4tInjEnHcKAIhANhNh+V0Y4JpwS5WRgEAPcpfTU73kjLuZgtLhiWIWq/v","keyid":"SHA256:DhQ8wR5APBvFHLF/+Tc+AYvPOdTpcIDqOhxsBHRwC7U"}],"unpackedSize":955340},"main":"./dist/index.cjs","type":"module","types":"./dist/index.d.ts","module":"./dist/index.js","exports":{".":{"types":"./dist/index.d.ts","import":"./dist/index.js","require":"./dist/index.cjs"},"./styles.css":"./dist/styles.css"},"gitHead":"d93415049df77fbff37332cf0bbf85ff073d7141","scripts":{"dev":"tsup --watch","test":"vitest run","build":"npm run build:js && npm run build:css","build:js":"tsup","build:css":"postcss src/styles.css -o dist/styles.css --no-map","typecheck":"tsc --noEmit","playground":"vite","test:watch":"vitest","email:sample":"node scripts/render-sample.mjs","prepublishOnly":"npm run build"},"_npmUser":{"name":"verzio99","email":"eliasver99@gmail.com"},"repository":{"url":"git+https://github.com/iliasverginis/email-block-builder.git","type":"git"},"_npmVersion":"11.6.2","description":"Framework-agnostic drag-and-drop email builder for React. Themable, localizable, exports email-safe HTML.","directories":{},"sideEffects":["**/*.css"],"_nodeVersion":"24.11.0","publishConfig":{"access":"public"},"_hasShrinkwrap":false,"devDependencies":{"clsx":"^2.1.1","tsup":"^8.5.0","vite":"^5.4.21","react":"^19.2.0","nanoid":"^5.1.7","vitest":"^2.1.9","postcss":"^8.5.6","react-dom":"^19.2.0","typescript":"~5.9.3","postcss-cli":"^11.0.1","tailwindcss":"^3.4.19","@types/react":"^19.0.0","autoprefixer":"^10.4.23","lucide-react":"^0.462.0","@dnd-kit/core":"^6.3.1","tailwind-merge":"^2.6.0","@types/react-dom":"^19.0.0","tailwindcss-animate":"^1.0.7","@monaco-editor/react":"^4.7.0","@vitejs/plugin-react":"^4.7.0","postcss-prefix-selector":"^1.16.1"},"peerDependencies":{"clsx":">=2.0.0","react":">=18.0.0","nanoid":">=4.0.0","react-dom":">=18.0.0","lucide-react":">=0.300.0","@dnd-kit/core":">=6.0.0","tailwind-merge":">=2.0.0","@monaco-editor/react":">=4.0.0"},"peerDependenciesMeta":{"@monaco-editor/react":{"optional":true}},"_npmOperationalInternal":{"tmp":"tmp/email-block-builder_0.1.0_1782382988577_0.3541814616394523","host":"s3://npm-registry-packages-npm-production"}},"0.1.1":{"name":"email-block-builder","version":"0.1.1","keywords":["email","email-builder","email-editor","drag-and-drop","react","email-template","wysiwyg","mjml-alternative"],"author":{"name":"Ilias Verginis"},"license":"MIT","_id":"email-block-builder@0.1.1","maintainers":[{"name":"verzio99","email":"eliasver99@gmail.com"}],"homepage":"https://github.com/iliasverginis/email-block-builder#readme","bugs":{"url":"https://github.com/iliasverginis/email-block-builder/issues"},"dist":{"shasum":"83e87fb73d04b643084dfd1f6358abd105f333f6","tarball":"https://registry.npmjs.org/email-block-builder/-/email-block-builder-0.1.1.tgz","fileCount":10,"integrity":"sha512-c6laGDyMkJkK0BObrg19dtwdwmRICuF4nVJmJOgsJ+wUf9WwDW0MiyaoUy0jc+1PkX8yvMpuvMH/b8hf/fhQqQ==","signatures":[{"sig":"MEUCIFmY7yo2/D1KDtbB5oRWBmOxLSMgeQvE2Sum+nBH16ioAiEAqZzCvHw0xdGv/yoet6KhxdCt/UaJ0BH+GvgZQJEgeX0=","keyid":"SHA256:DhQ8wR5APBvFHLF/+Tc+AYvPOdTpcIDqOhxsBHRwC7U"}],"unpackedSize":979542},"main":"./dist/index.cjs","type":"module","types":"./dist/index.d.ts","module":"./dist/index.js","exports":{".":{"types":"./dist/index.d.ts","import":"./dist/index.js","require":"./dist/index.cjs"},"./styles.css":"./dist/styles.css"},"gitHead":"8f2f3e5c475c3454e06f4435c9a4f9c6fcc71677","scripts":{"dev":"tsup --watch","test":"vitest run","build":"npm run build:js && npm run build:css","build:js":"tsup","build:css":"postcss src/styles.css -o dist/styles.css --no-map","typecheck":"tsc --noEmit","playground":"vite","test:watch":"vitest","email:sample":"node scripts/render-sample.mjs","prepublishOnly":"npm run build"},"_npmUser":{"name":"verzio99","email":"eliasver99@gmail.com"},"repository":{"url":"git+https://github.com/iliasverginis/email-block-builder.git","type":"git"},"_npmVersion":"11.6.2","description":"Framework-agnostic drag-and-drop email builder for React. Themable, localizable, exports email-safe HTML.","directories":{},"sideEffects":["**/*.css"],"_nodeVersion":"24.11.0","publishConfig":{"access":"public"},"_hasShrinkwrap":false,"devDependencies":{"clsx":"^2.1.1","tsup":"^8.5.0","vite":"^5.4.21","react":"^19.2.0","nanoid":"^5.1.7","vitest":"^2.1.9","postcss":"^8.5.6","react-dom":"^19.2.0","typescript":"~5.9.3","postcss-cli":"^11.0.1","tailwindcss":"^3.4.19","@types/react":"^19.0.0","autoprefixer":"^10.4.23","lucide-react":"^0.462.0","@dnd-kit/core":"^6.3.1","tailwind-merge":"^2.6.0","@types/react-dom":"^19.0.0","tailwindcss-animate":"^1.0.7","@monaco-editor/react":"^4.7.0","@vitejs/plugin-react":"^4.7.0","postcss-prefix-selector":"^1.16.1"},"peerDependencies":{"clsx":">=2.0.0","react":">=18.0.0","nanoid":">=4.0.0","react-dom":">=18.0.0","lucide-react":">=0.300.0","@dnd-kit/core":">=6.0.0","tailwind-merge":">=2.0.0","@monaco-editor/react":">=4.0.0"},"peerDependenciesMeta":{"@monaco-editor/react":{"optional":true}},"_npmOperationalInternal":{"tmp":"tmp/email-block-builder_0.1.1_1782386597720_0.26755103852938134","host":"s3://npm-registry-packages-npm-production"}},"0.1.2":{"name":"email-block-builder","version":"0.1.2","keywords":["email","email-builder","email-editor","drag-and-drop","react","email-template","wysiwyg","mjml-alternative"],"author":{"name":"Ilias Verginis"},"license":"MIT","_id":"email-block-builder@0.1.2","maintainers":[{"name":"verzio99","email":"eliasver99@gmail.com"}],"homepage":"https://github.com/iliasverginis/email-block-builder#readme","bugs":{"url":"https://github.com/iliasverginis/email-block-builder/issues"},"dist":{"shasum":"17f4c75d95d1a6ed62137b810d1dcecf5721ea98","tarball":"https://registry.npmjs.org/email-block-builder/-/email-block-builder-0.1.2.tgz","fileCount":10,"integrity":"sha512-d0ZROTJNBXC1fJwpFtxCQnt3EeV64fgZsTyjT+Qv3C5kXHG6B5uNmYjT27kXj2ddhI7KkHPPXeDXjgEQRtw3cw==","signatures":[{"sig":"MEYCIQDMQ22kRDKQG9qAUBVAuVl7/mz87mUN+i7Zp1oCGmtbZAIhAPbTRuIZHtrjh5BGnafe/1htKSsdU9G2Oubacrl8TvcV","keyid":"SHA256:DhQ8wR5APBvFHLF/+Tc+AYvPOdTpcIDqOhxsBHRwC7U"}],"unpackedSize":1023322},"main":"./dist/index.cjs","type":"module","types":"./dist/index.d.ts","module":"./dist/index.js","exports":{".":{"types":"./dist/index.d.ts","import":"./dist/index.js","require":"./dist/index.cjs"},"./styles.css":"./dist/styles.css"},"gitHead":"4058e7d1ba3a154eadf3f025f428ad1a30cc8115","scripts":{"dev":"tsup --watch","test":"vitest run","build":"npm run build:js && npm run build:css","build:js":"tsup","build:css":"postcss src/styles.css -o dist/styles.css --no-map","typecheck":"tsc --noEmit","playground":"vite","test:watch":"vitest","email:sample":"node scripts/render-sample.mjs","prepublishOnly":"npm run build"},"_npmUser":{"name":"verzio99","email":"eliasver99@gmail.com"},"repository":{"url":"git+https://github.com/iliasverginis/email-block-builder.git","type":"git"},"_npmVersion":"11.6.2","description":"Framework-agnostic drag-and-drop email builder for React. Themable, localizable, exports email-safe HTML.","directories":{},"sideEffects":["**/*.css"],"_nodeVersion":"24.11.0","publishConfig":{"access":"public"},"_hasShrinkwrap":false,"devDependencies":{"clsx":"^2.1.1","tsup":"^8.5.0","vite":"^5.4.21","react":"^19.2.0","nanoid":"^5.1.7","vitest":"^2.1.9","postcss":"^8.5.6","react-dom":"^19.2.0","typescript":"~5.9.3","postcss-cli":"^11.0.1","tailwindcss":"^3.4.19","@types/react":"^19.0.0","autoprefixer":"^10.4.23","lucide-react":"^0.462.0","@dnd-kit/core":"^6.3.1","tailwind-merge":"^2.6.0","@types/react-dom":"^19.0.0","tailwindcss-animate":"^1.0.7","@monaco-editor/react":"^4.7.0","@vitejs/plugin-react":"^4.7.0","postcss-prefix-selector":"^1.16.1"},"peerDependencies":{"clsx":">=2.0.0","react":">=18.0.0","nanoid":">=4.0.0","react-dom":">=18.0.0","lucide-react":">=0.300.0","@dnd-kit/core":">=6.0.0","tailwind-merge":">=2.0.0","@monaco-editor/react":">=4.0.0"},"peerDependenciesMeta":{"@monaco-editor/react":{"optional":true}},"_npmOperationalInternal":{"tmp":"tmp/email-block-builder_0.1.2_1782394674750_0.39298449022624293","host":"s3://npm-registry-packages-npm-production"}},"0.1.3":{"name":"email-block-builder","version":"0.1.3","keywords":["email","email-builder","email-editor","drag-and-drop","react","email-template","wysiwyg","mjml-alternative"],"author":{"name":"Ilias Verginis"},"license":"MIT","_id":"email-block-builder@0.1.3","maintainers":[{"name":"verzio99","email":"eliasver99@gmail.com"}],"homepage":"https://github.com/iliasverginis/email-block-builder#readme","bugs":{"url":"https://github.com/iliasverginis/email-block-builder/issues"},"dist":{"shasum":"2511f8468d201a55e59dc64f9c19c7fc9d08677a","tarball":"https://registry.npmjs.org/email-block-builder/-/email-block-builder-0.1.3.tgz","fileCount":10,"integrity":"sha512-C4kYWjdVivBkaehAj9HxRrscx2o3zmNdNxNSvYxxvdj6R8ChEwcLr00plTIW9dS6WbRT5ekterWiVc2kiuUX2w==","signatures":[{"sig":"MEYCIQDmTTHcncN+Lm4R4Qt3fjORyDnQOXM/VHefRWthigb2iwIhAMFIjeIDKVeVPq3eLf3U+uI0kxsCnIRYb8xvEMWIiMgo","keyid":"SHA256:DhQ8wR5APBvFHLF/+Tc+AYvPOdTpcIDqOhxsBHRwC7U"}],"unpackedSize":1023322},"main":"./dist/index.cjs","type":"module","types":"./dist/index.d.ts","module":"./dist/index.js","exports":{".":{"types":"./dist/index.d.ts","import":"./dist/index.js","require":"./dist/index.cjs"},"./styles.css":"./dist/styles.css"},"gitHead":"c757520d20260ec45ad01c654925f99b5a81220f","scripts":{"dev":"tsup --watch","test":"vitest run","build":"npm run build:js && npm run build:css","build:js":"tsup","build:css":"postcss src/styles.css -o dist/styles.css --no-map","typecheck":"tsc --noEmit","playground":"vite","test:watch":"vitest","email:sample":"node scripts/render-sample.mjs","prepublishOnly":"npm run build"},"_npmUser":{"name":"verzio99","email":"eliasver99@gmail.com"},"repository":{"url":"git+https://github.com/iliasverginis/email-block-builder.git","type":"git"},"_npmVersion":"11.6.2","description":"Framework-agnostic drag-and-drop email builder for React. Themable, localizable, exports email-safe HTML.","directories":{},"sideEffects":["**/*.css"],"_nodeVersion":"24.11.0","publishConfig":{"access":"public"},"_hasShrinkwrap":false,"devDependencies":{"clsx":"^2.1.1","tsup":"^8.5.0","vite":"^5.4.21","react":"^19.2.0","nanoid":"^5.1.7","vitest":"^2.1.9","postcss":"^8.5.6","react-dom":"^19.2.0","typescript":"~5.9.3","postcss-cli":"^11.0.1","tailwindcss":"^3.4.19","@types/react":"^19.0.0","autoprefixer":"^10.4.23","lucide-react":"^0.462.0","@dnd-kit/core":"^6.3.1","tailwind-merge":"^2.6.0","@types/react-dom":"^19.0.0","tailwindcss-animate":"^1.0.7","@monaco-editor/react":"^4.7.0","@vitejs/plugin-react":"^4.7.0","postcss-prefix-selector":"^1.16.1"},"peerDependencies":{"clsx":">=2.0.0","react":">=18.0.0","nanoid":">=4.0.0","react-dom":">=18.0.0","lucide-react":">=0.300.0","@dnd-kit/core":">=6.0.0","tailwind-merge":">=2.0.0","@monaco-editor/react":">=4.0.0"},"peerDependenciesMeta":{"@monaco-editor/react":{"optional":true}},"_npmOperationalInternal":{"tmp":"tmp/email-block-builder_0.1.3_1782394818328_0.11380279749898126","host":"s3://npm-registry-packages-npm-production"}},"0.1.4":{"name":"email-block-builder","version":"0.1.4","keywords":["email","email-builder","email-editor","drag-and-drop","react","email-template","wysiwyg","mjml-alternative"],"author":{"name":"Ilias Verginis"},"license":"MIT","_id":"email-block-builder@0.1.4","maintainers":[{"name":"verzio99","email":"eliasver99@gmail.com"}],"homepage":"https://github.com/iliasverginis/email-block-builder#readme","bugs":{"url":"https://github.com/iliasverginis/email-block-builder/issues"},"dist":{"shasum":"0065309bbf290a52459d5a46eab1203f2bb47e98","tarball":"https://registry.npmjs.org/email-block-builder/-/email-block-builder-0.1.4.tgz","fileCount":10,"integrity":"sha512-PTQkoyPjGxtnoWGXqoASgo6dAOqPiU/gjd7iXSt310KKIbneCcQHydYq/fTlL/GKJxl3pjuCQs57nlHhGgk1Jg==","signatures":[{"sig":"MEQCIFW9Hupf72zqV9lCi5yfugv1SS/nN8GucG4CprwMLDFRAiB808o5ZkQBgH+0pnMEncdwo4KlBIdNo5nNwhug7HeLcg==","keyid":"SHA256:DhQ8wR5APBvFHLF/+Tc+AYvPOdTpcIDqOhxsBHRwC7U"}],"unpackedSize":1023322},"main":"./dist/index.cjs","type":"module","types":"./dist/index.d.ts","module":"./dist/index.js","exports":{".":{"types":"./dist/index.d.ts","import":"./dist/index.js","require":"./dist/index.cjs"},"./styles.css":"./dist/styles.css"},"gitHead":"4ce2d4c422f7c4c2162918adc407643cbb99784c","scripts":{"dev":"tsup --watch","test":"vitest run","build":"npm run build:js && npm run build:css","build:js":"tsup","build:css":"postcss src/styles.css -o dist/styles.css --no-map","typecheck":"tsc --noEmit","playground":"vite","test:watch":"vitest","email:sample":"node scripts/render-sample.mjs","prepublishOnly":"npm run build"},"_npmUser":{"name":"verzio99","email":"eliasver99@gmail.com"},"repository":{"url":"git+https://github.com/iliasverginis/email-block-builder.git","type":"git"},"_npmVersion":"11.6.2","description":"Framework-agnostic drag-and-drop email builder for React. Themable, localizable, exports email-safe HTML.","directories":{},"sideEffects":["**/*.css"],"_nodeVersion":"24.11.0","publishConfig":{"access":"public"},"_hasShrinkwrap":false,"devDependencies":{"clsx":"^2.1.1","tsup":"^8.5.0","vite":"^5.4.21","react":"^19.2.0","nanoid":"^5.1.7","vitest":"^2.1.9","postcss":"^8.5.6","react-dom":"^19.2.0","typescript":"~5.9.3","postcss-cli":"^11.0.1","tailwindcss":"^3.4.19","@types/react":"^19.0.0","autoprefixer":"^10.4.23","lucide-react":"^0.462.0","@dnd-kit/core":"^6.3.1","tailwind-merge":"^2.6.0","@types/react-dom":"^19.0.0","tailwindcss-animate":"^1.0.7","@monaco-editor/react":"^4.7.0","@vitejs/plugin-react":"^4.7.0","postcss-prefix-selector":"^1.16.1"},"peerDependencies":{"clsx":">=2.0.0","react":">=18.0.0","nanoid":">=4.0.0","react-dom":">=18.0.0","lucide-react":">=0.300.0","@dnd-kit/core":">=6.0.0","tailwind-merge":">=2.0.0","@monaco-editor/react":">=4.0.0"},"peerDependenciesMeta":{"@monaco-editor/react":{"optional":true}},"_npmOperationalInternal":{"tmp":"tmp/email-block-builder_0.1.4_1782395327384_0.7545595757983337","host":"s3://npm-registry-packages-npm-production"}},"0.2.0":{"name":"email-block-builder","version":"0.2.0","keywords":["email","email-builder","email-editor","drag-and-drop","react","email-template","wysiwyg","mjml-alternative"],"author":{"name":"Ilias Verginis"},"license":"MIT","_id":"email-block-builder@0.2.0","maintainers":[{"name":"verzio99","email":"eliasver99@gmail.com"}],"homepage":"https://github.com/iliasverginis/email-block-builder#readme","bugs":{"url":"https://github.com/iliasverginis/email-block-builder/issues"},"dist":{"shasum":"7c6dff4ba43db8a43cd80f074f353ff3808182b8","tarball":"https://registry.npmjs.org/email-block-builder/-/email-block-builder-0.2.0.tgz","fileCount":10,"integrity":"sha512-k3az2vywWji81dqqA1LrfDhCH1/5l8dQiVygsUxWL6bJBuev/1ImzbvYNldF+zvxBWn87wEHCupzFfR0WAfqzA==","signatures":[{"sig":"MEUCIG/mP7pw+iPpNmGMfm6BrN2ChvqdUImVMt7RDGVhqb2kAiEAkQ42FwYizSRHg+FItRncoYOaHVQINT6JgumklbKOPdA=","keyid":"SHA256:DhQ8wR5APBvFHLF/+Tc+AYvPOdTpcIDqOhxsBHRwC7U"}],"unpackedSize":1055167},"main":"./dist/index.cjs","type":"module","types":"./dist/index.d.ts","module":"./dist/index.js","exports":{".":{"types":"./dist/index.d.ts","import":"./dist/index.js","require":"./dist/index.cjs"},"./styles.css":"./dist/styles.css"},"gitHead":"58788b8a57c1ee8e652a961f5c94fea94d8cfef6","scripts":{"dev":"tsup --watch","test":"vitest run","build":"npm run build:js && npm run build:css","build:js":"tsup","build:css":"postcss src/styles.css -o dist/styles.css --no-map","typecheck":"tsc --noEmit","playground":"vite","test:watch":"vitest","email:sample":"node scripts/render-sample.mjs","prepublishOnly":"npm run build"},"_npmUser":{"name":"verzio99","email":"eliasver99@gmail.com"},"repository":{"url":"git+https://github.com/iliasverginis/email-block-builder.git","type":"git"},"_npmVersion":"11.6.2","description":"Framework-agnostic drag-and-drop email builder for React. Themable, localizable, exports email-safe HTML.","directories":{},"sideEffects":["**/*.css"],"_nodeVersion":"24.11.0","publishConfig":{"access":"public"},"_hasShrinkwrap":false,"devDependencies":{"clsx":"^2.1.1","tsup":"^8.5.0","vite":"^5.4.21","react":"^19.2.0","nanoid":"^5.1.7","vitest":"^2.1.9","postcss":"^8.5.6","react-dom":"^19.2.0","typescript":"~5.9.3","postcss-cli":"^11.0.1","tailwindcss":"^3.4.19","@types/react":"^19.0.0","autoprefixer":"^10.4.23","lucide-react":"^0.462.0","@dnd-kit/core":"^6.3.1","tailwind-merge":"^2.6.0","@types/react-dom":"^19.0.0","tailwindcss-animate":"^1.0.7","@monaco-editor/react":"^4.7.0","@vitejs/plugin-react":"^4.7.0","postcss-prefix-selector":"^1.16.1"},"peerDependencies":{"clsx":">=2.0.0","react":">=18.0.0","nanoid":">=4.0.0","react-dom":">=18.0.0","lucide-react":">=0.300.0","@dnd-kit/core":">=6.0.0","tailwind-merge":">=2.0.0","@monaco-editor/react":">=4.0.0"},"peerDependenciesMeta":{"@monaco-editor/react":{"optional":true}},"_npmOperationalInternal":{"tmp":"tmp/email-block-builder_0.2.0_1782462723229_0.4976006649554776","host":"s3://npm-registry-packages-npm-production"}},"0.3.0":{"name":"email-block-builder","version":"0.3.0","keywords":["email","email-builder","email-editor","drag-and-drop","react","email-template","wysiwyg","mjml-alternative"],"author":{"name":"Ilias Verginis"},"license":"MIT","_id":"email-block-builder@0.3.0","maintainers":[{"name":"verzio99","email":"eliasver99@gmail.com"}],"homepage":"https://github.com/iliasverginis/email-block-builder#readme","bugs":{"url":"https://github.com/iliasverginis/email-block-builder/issues"},"dist":{"shasum":"436dc3911ba635edb622a0de51711f82114d9e60","tarball":"https://registry.npmjs.org/email-block-builder/-/email-block-builder-0.3.0.tgz","fileCount":10,"integrity":"sha512-Nnf9oUltCfnHjrvVlgAKYcIoflwma7NKbV577aXzQn6XPvP2Zlh4Ro+ASyTMjuV0+v2ALYHn3WtFmsnZyRsAKA==","signatures":[{"sig":"MEUCIQCAsgfjC2oRC3oiKTq3YyTFJaH6NuDdwLEFZi+tHERXewIgZ1CJKZvHcAsjo7Q0Kae+4PFZwZYoXnuJDyHKmdUTuaM=","keyid":"SHA256:DhQ8wR5APBvFHLF/+Tc+AYvPOdTpcIDqOhxsBHRwC7U"}],"unpackedSize":1100729},"main":"./dist/index.cjs","type":"module","types":"./dist/index.d.ts","module":"./dist/index.js","exports":{".":{"types":"./dist/index.d.ts","import":"./dist/index.js","require":"./dist/index.cjs"},"./styles.css":"./dist/styles.css"},"gitHead":"6c51acd9cfd1f956ece5568b4696a516f37c9200","scripts":{"dev":"tsup --watch","test":"vitest run","build":"npm run build:js && npm run build:css","build:js":"tsup","build:css":"postcss src/styles.css -o dist/styles.css --no-map","typecheck":"tsc --noEmit","playground":"vite","test:watch":"vitest","email:sample":"node scripts/render-sample.mjs","prepublishOnly":"npm run build"},"_npmUser":{"name":"verzio99","email":"eliasver99@gmail.com"},"repository":{"url":"git+https://github.com/iliasverginis/email-block-builder.git","type":"git"},"_npmVersion":"11.6.2","description":"Framework-agnostic drag-and-drop email builder for React. Themable, localizable, exports email-safe HTML.","directories":{},"sideEffects":["**/*.css"],"_nodeVersion":"24.11.0","publishConfig":{"access":"public"},"_hasShrinkwrap":false,"devDependencies":{"clsx":"^2.1.1","tsup":"^8.5.0","vite":"^5.4.21","react":"^19.2.0","nanoid":"^5.1.7","vitest":"^2.1.9","postcss":"^8.5.6","react-dom":"^19.2.0","typescript":"~5.9.3","postcss-cli":"^11.0.1","tailwindcss":"^3.4.19","@types/react":"^19.0.0","autoprefixer":"^10.4.23","lucide-react":"^0.462.0","@dnd-kit/core":"^6.3.1","tailwind-merge":"^2.6.0","@types/react-dom":"^19.0.0","tailwindcss-animate":"^1.0.7","@monaco-editor/react":"^4.7.0","@vitejs/plugin-react":"^4.7.0","postcss-prefix-selector":"^1.16.1"},"peerDependencies":{"clsx":">=2.0.0","react":">=18.0.0","nanoid":">=4.0.0","react-dom":">=18.0.0","lucide-react":">=0.300.0","@dnd-kit/core":">=6.0.0","tailwind-merge":">=2.0.0","@monaco-editor/react":">=4.0.0"},"peerDependenciesMeta":{"@monaco-editor/react":{"optional":true}},"_npmOperationalInternal":{"tmp":"tmp/email-block-builder_0.3.0_1782464110004_0.9007779937466103","host":"s3://npm-registry-packages-npm-production"}},"0.3.1":{"name":"email-block-builder","version":"0.3.1","keywords":["email","email-builder","email-editor","drag-and-drop","react","email-template","wysiwyg","mjml-alternative"],"author":{"name":"Ilias Verginis"},"license":"MIT","_id":"email-block-builder@0.3.1","maintainers":[{"name":"verzio99","email":"eliasver99@gmail.com"}],"homepage":"https://github.com/iliasverginis/email-block-builder#readme","bugs":{"url":"https://github.com/iliasverginis/email-block-builder/issues"},"dist":{"shasum":"2394f748db077d6f78095a7f1210c23c4eded485","tarball":"https://registry.npmjs.org/email-block-builder/-/email-block-builder-0.3.1.tgz","fileCount":10,"integrity":"sha512-hJFCx5dw8GSUEA4a8xZ6Ddy8HSfxKEh9Lj+qyOixBWFS7jZJ72GmAgR2/lcE2ZUIuSofdBPf4pZRkLQEJwdI+A==","signatures":[{"sig":"MEYCIQCV+Q+HXQcl5Rnopckb/ZSNm6G/Iyh97wkp56cmWnF1fwIhAIwex1hM5yqdpZRioX4mikZKdtrI9VuEuXM3MWTIBXeF","keyid":"SHA256:DhQ8wR5APBvFHLF/+Tc+AYvPOdTpcIDqOhxsBHRwC7U"}],"unpackedSize":1100729},"main":"./dist/index.cjs","type":"module","types":"./dist/index.d.ts","module":"./dist/index.js","exports":{".":{"types":"./dist/index.d.ts","import":"./dist/index.js","require":"./dist/index.cjs"},"./styles.css":"./dist/styles.css"},"gitHead":"3befe41ee10d1b09318414e12078fd84cd1e1f71","scripts":{"dev":"tsup --watch","test":"vitest run","build":"npm run build:js && npm run build:css","build:js":"tsup","build:css":"postcss src/styles.css -o dist/styles.css --no-map","typecheck":"tsc --noEmit","playground":"vite","test:watch":"vitest","email:sample":"node scripts/render-sample.mjs","prepublishOnly":"npm run build"},"_npmUser":{"name":"verzio99","email":"eliasver99@gmail.com"},"repository":{"url":"git+https://github.com/iliasverginis/email-block-builder.git","type":"git"},"_npmVersion":"11.6.2","description":"Framework-agnostic drag-and-drop email builder for React. Themable, localizable, exports email-safe HTML.","directories":{},"sideEffects":["**/*.css"],"_nodeVersion":"24.11.0","publishConfig":{"access":"public"},"_hasShrinkwrap":false,"devDependencies":{"clsx":"^2.1.1","tsup":"^8.5.0","vite":"^5.4.21","react":"^19.2.0","nanoid":"^5.1.7","vitest":"^2.1.9","postcss":"^8.5.6","react-dom":"^19.2.0","typescript":"~5.9.3","postcss-cli":"^11.0.1","tailwindcss":"^3.4.19","@types/react":"^19.0.0","autoprefixer":"^10.4.23","lucide-react":"^0.462.0","@dnd-kit/core":"^6.3.1","tailwind-merge":"^2.6.0","@types/react-dom":"^19.0.0","tailwindcss-animate":"^1.0.7","@monaco-editor/react":"^4.7.0","@vitejs/plugin-react":"^4.7.0","postcss-prefix-selector":"^1.16.1"},"peerDependencies":{"clsx":">=2.0.0","react":">=18.0.0","nanoid":">=4.0.0","react-dom":">=18.0.0","lucide-react":">=0.300.0","@dnd-kit/core":">=6.0.0","tailwind-merge":">=2.0.0","@monaco-editor/react":">=4.0.0"},"peerDependenciesMeta":{"@monaco-editor/react":{"optional":true}},"_npmOperationalInternal":{"tmp":"tmp/email-block-builder_0.3.1_1782464316966_0.6838687607490006","host":"s3://npm-registry-packages-npm-production"}},"0.4.0":{"name":"email-block-builder","version":"0.4.0","keywords":["email","email-builder","email-editor","drag-and-drop","react","email-template","wysiwyg","mjml-alternative"],"author":{"name":"Ilias Verginis"},"license":"MIT","_id":"email-block-builder@0.4.0","maintainers":[{"name":"verzio99","email":"eliasver99@gmail.com"}],"homepage":"https://github.com/iliasverginis/email-block-builder#readme","bugs":{"url":"https://github.com/iliasverginis/email-block-builder/issues"},"dist":{"shasum":"6cc8f0e11484f3cff7e23e3bd56ddab96a9fc015","tarball":"https://registry.npmjs.org/email-block-builder/-/email-block-builder-0.4.0.tgz","fileCount":10,"integrity":"sha512-hdyDNuqeJTSZtOOwVIp+wlulEhc92vRxHIdypONhg0L32puW+bdqGQChbw0r+sIplfASUYFiZaxCNYGOiHpDCQ==","signatures":[{"sig":"MEUCIQDFwk7EKe50cuHfWFZwadcDAcjBgWQMLIhldzaBoBFgsgIgCs9RvMkGsFHMWGe1ahNn6VtG3CzSwH7Hofvy7U3dauM=","keyid":"SHA256:DhQ8wR5APBvFHLF/+Tc+AYvPOdTpcIDqOhxsBHRwC7U"}],"unpackedSize":1110364},"main":"./dist/index.cjs","type":"module","types":"./dist/index.d.ts","module":"./dist/index.js","exports":{".":{"types":"./dist/index.d.ts","import":"./dist/index.js","require":"./dist/index.cjs"},"./styles.css":"./dist/styles.css"},"gitHead":"0d3977f69c0a571b53625772bcca7840bb37157d","scripts":{"dev":"tsup --watch","test":"vitest run","build":"npm run build:js && npm run build:css","build:js":"tsup","build:css":"postcss src/styles.css -o dist/styles.css --no-map","typecheck":"tsc --noEmit","playground":"vite","test:watch":"vitest","email:sample":"node scripts/render-sample.mjs","prepublishOnly":"npm run build"},"_npmUser":{"name":"verzio99","email":"eliasver99@gmail.com"},"repository":{"url":"git+https://github.com/iliasverginis/email-block-builder.git","type":"git"},"_npmVersion":"11.6.2","description":"Framework-agnostic drag-and-drop email builder for React. Themable, localizable, exports email-safe HTML.","directories":{},"sideEffects":["**/*.css"],"_nodeVersion":"24.11.0","publishConfig":{"access":"public"},"_hasShrinkwrap":false,"devDependencies":{"clsx":"^2.1.1","tsup":"^8.5.0","vite":"^5.4.21","react":"^19.2.0","nanoid":"^5.1.7","vitest":"^2.1.9","postcss":"^8.5.6","react-dom":"^19.2.0","typescript":"~5.9.3","postcss-cli":"^11.0.1","tailwindcss":"^3.4.19","@types/react":"^19.0.0","autoprefixer":"^10.4.23","lucide-react":"^0.462.0","@dnd-kit/core":"^6.3.1","tailwind-merge":"^2.6.0","@types/react-dom":"^19.0.0","tailwindcss-animate":"^1.0.7","@monaco-editor/react":"^4.7.0","@vitejs/plugin-react":"^4.7.0","postcss-prefix-selector":"^1.16.1"},"peerDependencies":{"clsx":">=2.0.0","react":">=18.0.0","nanoid":">=4.0.0","react-dom":">=18.0.0","lucide-react":">=0.300.0","@dnd-kit/core":">=6.0.0","tailwind-merge":">=2.0.0","@monaco-editor/react":">=4.0.0"},"peerDependenciesMeta":{"@monaco-editor/react":{"optional":true}},"_npmOperationalInternal":{"tmp":"tmp/email-block-builder_0.4.0_1782472853688_0.6290686211916401","host":"s3://npm-registry-packages-npm-production"}},"0.4.1":{"name":"email-block-builder","version":"0.4.1","keywords":["email","email-builder","email-editor","drag-and-drop","react","email-template","wysiwyg","mjml-alternative"],"author":{"name":"Ilias Verginis"},"license":"MIT","_id":"email-block-builder@0.4.1","maintainers":[{"name":"verzio99","email":"eliasver99@gmail.com"}],"homepage":"https://github.com/eliasver1999/Email-editor#readme","bugs":{"url":"https://github.com/eliasver1999/Email-editor/issues"},"dist":{"shasum":"9fcdc65d670aee0dde3fdc02cbeafd2ee04e2315","tarball":"https://registry.npmjs.org/email-block-builder/-/email-block-builder-0.4.1.tgz","fileCount":10,"integrity":"sha512-t+ACQ9t6rMeZK1ks9tAa9tsymSqyFdR+ssFuNrlfuSIx1OC6gfy0IA1F5o3Zm7FsgTjJq92MXqCfzEVsCIoujQ==","signatures":[{"sig":"MEUCIB6Jz3ti6gRpnY8rjulGHZdgiinuWiYVHdCnfTwHZNyJAiEAvYxZNZX3KsyJ4vZFg0lMC9mtYeGpcoSt80LOu4oUYKc=","keyid":"SHA256:DhQ8wR5APBvFHLF/+Tc+AYvPOdTpcIDqOhxsBHRwC7U"}],"unpackedSize":1110340},"main":"./dist/index.cjs","type":"module","types":"./dist/index.d.ts","module":"./dist/index.js","exports":{".":{"types":"./dist/index.d.ts","import":"./dist/index.js","require":"./dist/index.cjs"},"./styles.css":"./dist/styles.css"},"gitHead":"a6078f14cc03f2ccdcb8c3440a2129f9e4022ed9","scripts":{"dev":"tsup --watch","test":"vitest run","build":"npm run build:js && npm run build:css","build:js":"tsup","build:css":"postcss src/styles.css -o dist/styles.css --no-map","typecheck":"tsc --noEmit","playground":"vite","test:watch":"vitest","email:sample":"node scripts/render-sample.mjs","prepublishOnly":"npm run build"},"_npmUser":{"name":"verzio99","email":"eliasver99@gmail.com"},"repository":{"url":"git+https://github.com/eliasver1999/Email-editor.git","type":"git"},"_npmVersion":"11.6.2","description":"Framework-agnostic drag-and-drop email builder for React. Themable, localizable, exports email-safe HTML.","directories":{},"sideEffects":["**/*.css"],"_nodeVersion":"24.11.0","publishConfig":{"access":"public"},"_hasShrinkwrap":false,"devDependencies":{"clsx":"^2.1.1","tsup":"^8.5.0","vite":"^5.4.21","react":"^19.2.0","nanoid":"^5.1.7","vitest":"^2.1.9","postcss":"^8.5.6","react-dom":"^19.2.0","typescript":"~5.9.3","postcss-cli":"^11.0.1","tailwindcss":"^3.4.19","@types/react":"^19.0.0","autoprefixer":"^10.4.23","lucide-react":"^0.462.0","@dnd-kit/core":"^6.3.1","tailwind-merge":"^2.6.0","@types/react-dom":"^19.0.0","tailwindcss-animate":"^1.0.7","@monaco-editor/react":"^4.7.0","@vitejs/plugin-react":"^4.7.0","postcss-prefix-selector":"^1.16.1"},"peerDependencies":{"clsx":">=2.0.0","react":">=18.0.0","nanoid":">=4.0.0","react-dom":">=18.0.0","lucide-react":">=0.300.0","@dnd-kit/core":">=6.0.0","tailwind-merge":">=2.0.0","@monaco-editor/react":">=4.0.0"},"peerDependenciesMeta":{"@monaco-editor/react":{"optional":true}},"_npmOperationalInternal":{"tmp":"tmp/email-block-builder_0.4.1_1782717913456_0.11871769233022356","host":"s3://npm-registry-packages-npm-production"}},"0.4.3":{"name":"email-block-builder","version":"0.4.3","keywords":["email","email-builder","email-editor","drag-and-drop","react","email-template","wysiwyg","mjml-alternative"],"author":{"name":"Ilias Verginis"},"license":"MIT","_id":"email-block-builder@0.4.3","maintainers":[{"name":"verzio99","email":"eliasver99@gmail.com"}],"homepage":"https://github.com/eliasver1999/Email-editor#readme","bugs":{"url":"https://github.com/eliasver1999/Email-editor/issues"},"dist":{"shasum":"0cb4126635f85c7f3a685240f0a8ac00734e9650","tarball":"https://registry.npmjs.org/email-block-builder/-/email-block-builder-0.4.3.tgz","fileCount":10,"integrity":"sha512-5j87s4qs/zIFTaFQWwO5W7mB65/KBBiZt1Hjinqp7Ol/ijaSQuQ2QdbT+VpvTkjhMunHB6Q0cfleBahgpbuUJQ==","signatures":[{"sig":"MEQCIF0YaVn57mIKVBEKjZTm8sBdRRHkWCWdMJZE6o6C3TTGAiAE/gGuyQFLYn6za6QobVxYZmVGcgEykFwUcC9gA+RLPg==","keyid":"SHA256:DhQ8wR5APBvFHLF/+Tc+AYvPOdTpcIDqOhxsBHRwC7U"}],"unpackedSize":1123716},"main":"./dist/index.cjs","type":"module","types":"./dist/index.d.ts","module":"./dist/index.js","exports":{".":{"types":"./dist/index.d.ts","import":"./dist/index.js","require":"./dist/index.cjs"},"./styles.css":"./dist/styles.css"},"gitHead":"1886d9442c0262c3b150640231a0c8d7202a4864","scripts":{"dev":"tsup --watch","test":"vitest run","build":"npm run build:js && npm run build:css","build:js":"tsup","build:css":"postcss src/styles.css -o dist/styles.css --no-map","typecheck":"tsc --noEmit","build:demo":"vite build --base=/Email-editor/","playground":"vite","test:watch":"vitest","email:sample":"node scripts/render-sample.mjs","preview:demo":"vite preview --base=/Email-editor/","prepublishOnly":"npm run build"},"_npmUser":{"name":"verzio99","email":"eliasver99@gmail.com"},"repository":{"url":"git+https://github.com/eliasver1999/Email-editor.git","type":"git"},"_npmVersion":"11.6.2","description":"Framework-agnostic drag-and-drop email builder for React. Themable, localizable, exports email-safe HTML.","directories":{},"sideEffects":["**/*.css"],"_nodeVersion":"24.11.0","publishConfig":{"access":"public"},"_hasShrinkwrap":false,"devDependencies":{"clsx":"^2.1.1","tsup":"^8.5.0","vite":"^5.4.21","react":"^19.2.0","nanoid":"^5.1.7","vitest":"^2.1.9","postcss":"^8.5.6","react-dom":"^19.2.0","typescript":"~5.9.3","postcss-cli":"^11.0.1","tailwindcss":"^3.4.19","@types/react":"^19.0.0","autoprefixer":"^10.4.23","lucide-react":"^0.462.0","@dnd-kit/core":"^6.3.1","tailwind-merge":"^2.6.0","@types/react-dom":"^19.0.0","tailwindcss-animate":"^1.0.7","@monaco-editor/react":"^4.7.0","@vitejs/plugin-react":"^4.7.0","postcss-prefix-selector":"^1.16.1"},"peerDependencies":{"clsx":">=2.0.0","react":">=18.0.0","nanoid":">=4.0.0","react-dom":">=18.0.0","lucide-react":">=0.300.0","@dnd-kit/core":">=6.0.0","tailwind-merge":">=2.0.0","@monaco-editor/react":">=4.0.0"},"peerDependenciesMeta":{"@monaco-editor/react":{"optional":true}},"_npmOperationalInternal":{"tmp":"tmp/email-block-builder_0.4.3_1782736437703_0.9449406349032501","host":"s3://npm-registry-packages-npm-production"}},"0.5.0":{"name":"email-block-builder","version":"0.5.0","keywords":["email","email-builder","email-editor","drag-and-drop","react","email-template","wysiwyg","mjml-alternative"],"author":{"name":"Ilias Verginis"},"license":"MIT","_id":"email-block-builder@0.5.0","maintainers":[{"name":"verzio99","email":"eliasver99@gmail.com"}],"homepage":"https://github.com/eliasver1999/Email-editor#readme","bugs":{"url":"https://github.com/eliasver1999/Email-editor/issues"},"dist":{"shasum":"0fbf97309fa01a23c6cb4539f16689befc8b97a8","tarball":"https://registry.npmjs.org/email-block-builder/-/email-block-builder-0.5.0.tgz","fileCount":10,"integrity":"sha512-yQhHC/YS+uFsMrLW2UxzSUhTWVIeM6G+SYsatr6x/kZwyLR0scn2xsYrDKg8pmhWD9yZFg+ZWDmLRRFKQB5ubw==","signatures":[{"sig":"MEUCIEPJR80zoEH4QLe2v1lIeXaQqC5EBsOJK8Pl0ZLGYoXQAiEA9Im5v4nhTttDD5cx80ERtyOClymMRANleTWu02jdhpw=","keyid":"SHA256:DhQ8wR5APBvFHLF/+Tc+AYvPOdTpcIDqOhxsBHRwC7U"}],"unpackedSize":1238647},"main":"./dist/index.cjs","type":"module","types":"./dist/index.d.ts","module":"./dist/index.js","exports":{".":{"types":"./dist/index.d.ts","import":"./dist/index.js","require":"./dist/index.cjs"},"./styles.css":"./dist/styles.css"},"gitHead":"99443d3c0b8d632f3bc19ff12f2f9dcfd7cd6f16","scripts":{"dev":"tsup --watch","test":"vitest run","build":"npm run build:js && npm run build:css","build:js":"tsup","build:css":"postcss src/styles.css -o dist/styles.css --no-map","typecheck":"tsc --noEmit","build:demo":"vite build --base=/Email-editor/","playground":"vite","test:watch":"vitest","email:sample":"node scripts/render-sample.mjs","preview:demo":"vite preview --base=/Email-editor/","prepublishOnly":"npm run build"},"_npmUser":{"name":"verzio99","email":"eliasver99@gmail.com"},"repository":{"url":"git+https://github.com/eliasver1999/Email-editor.git","type":"git"},"_npmVersion":"11.6.2","description":"Framework-agnostic drag-and-drop email builder for React. Themable, localizable, exports email-safe HTML.","directories":{},"sideEffects":["**/*.css"],"_nodeVersion":"24.11.0","publishConfig":{"access":"public"},"_hasShrinkwrap":false,"devDependencies":{"clsx":"^2.1.1","tsup":"^8.5.0","vite":"^5.4.21","react":"^19.2.0","nanoid":"^5.1.7","vitest":"^2.1.9","postcss":"^8.5.6","react-dom":"^19.2.0","typescript":"~5.9.3","postcss-cli":"^11.0.1","tailwindcss":"^3.4.19","@types/react":"^19.0.0","autoprefixer":"^10.4.23","lucide-react":"^0.462.0","@dnd-kit/core":"^6.3.1","tailwind-merge":"^2.6.0","@types/react-dom":"^19.0.0","tailwindcss-animate":"^1.0.7","@monaco-editor/react":"^4.7.0","@vitejs/plugin-react":"^4.7.0","postcss-prefix-selector":"^1.16.1"},"peerDependencies":{"clsx":">=2.0.0","react":">=18.0.0","nanoid":">=4.0.0","react-dom":">=18.0.0","lucide-react":">=0.300.0","@dnd-kit/core":">=6.0.0","tailwind-merge":">=2.0.0","@monaco-editor/react":">=4.0.0"},"peerDependenciesMeta":{"@monaco-editor/react":{"optional":true}},"_npmOperationalInternal":{"tmp":"tmp/email-block-builder_0.5.0_1782821799860_0.06634256604558542","host":"s3://npm-registry-packages-npm-production"}},"0.5.2":{"name":"email-block-builder","version":"0.5.2","keywords":["email","email-builder","email-editor","drag-and-drop","react","email-template","wysiwyg","mjml-alternative"],"author":{"name":"Ilias Verginis"},"license":"MIT","_id":"email-block-builder@0.5.2","maintainers":[{"name":"verzio99","email":"eliasver99@gmail.com"}],"homepage":"https://github.com/eliasver1999/Email-editor#readme","bugs":{"url":"https://github.com/eliasver1999/Email-editor/issues"},"dist":{"shasum":"e576f8cb53118453f809743eb1aa1a6fff674d7f","tarball":"https://registry.npmjs.org/email-block-builder/-/email-block-builder-0.5.2.tgz","fileCount":10,"integrity":"sha512-XJsvPMDOiRhgO9SjT7XVjJvu/F8Ivqnia/HzCltKt/qb++v4DyAzoTvm/PH7cmoKkNg7JTq2XPsz5n0nMjjcjg==","signatures":[{"sig":"MEUCIE+3xKJypjF3zJ1ju2jMAh7yoJy0XwjsTyKREQ5DSdIzAiEA4zEQltgcpQNwXFNl0STGU+ha7KKtsO+OER3w2fhaO1Y=","keyid":"SHA256:DhQ8wR5APBvFHLF/+Tc+AYvPOdTpcIDqOhxsBHRwC7U"}],"unpackedSize":1238647},"main":"./dist/index.cjs","type":"module","types":"./dist/index.d.ts","module":"./dist/index.js","exports":{".":{"types":"./dist/index.d.ts","import":"./dist/index.js","require":"./dist/index.cjs"},"./styles.css":"./dist/styles.css"},"gitHead":"91fcdb0c04eb6aca39c240cb8dea6fcba1e00790","scripts":{"dev":"tsup --watch","test":"vitest run","build":"npm run build:js && npm run build:css","build:js":"tsup","build:css":"postcss src/styles.css -o dist/styles.css --no-map","typecheck":"tsc --noEmit","build:demo":"vite build --base=/Email-editor/","playground":"vite","test:watch":"vitest","email:sample":"node scripts/render-sample.mjs","preview:demo":"vite preview --base=/Email-editor/","prepublishOnly":"npm run build"},"_npmUser":{"name":"verzio99","email":"eliasver99@gmail.com"},"repository":{"url":"git+https://github.com/eliasver1999/Email-editor.git","type":"git"},"_npmVersion":"11.6.2","description":"Framework-agnostic drag-and-drop email builder for React. Themable, localizable, exports email-safe HTML.","directories":{},"sideEffects":["**/*.css"],"_nodeVersion":"24.11.0","publishConfig":{"access":"public"},"_hasShrinkwrap":false,"devDependencies":{"clsx":"^2.1.1","tsup":"^8.5.0","vite":"^5.4.21","react":"^19.2.0","nanoid":"^5.1.7","vitest":"^2.1.9","postcss":"^8.5.6","react-dom":"^19.2.0","typescript":"~5.9.3","postcss-cli":"^11.0.1","tailwindcss":"^3.4.19","@types/react":"^19.0.0","autoprefixer":"^10.4.23","lucide-react":"^0.462.0","@dnd-kit/core":"^6.3.1","tailwind-merge":"^2.6.0","@types/react-dom":"^19.0.0","tailwindcss-animate":"^1.0.7","@monaco-editor/react":"^4.7.0","@vitejs/plugin-react":"^4.7.0","postcss-prefix-selector":"^1.16.1"},"peerDependencies":{"clsx":">=2.0.0","react":">=18.0.0","nanoid":">=4.0.0","react-dom":">=18.0.0","lucide-react":">=0.300.0","@dnd-kit/core":">=6.0.0","tailwind-merge":">=2.0.0","@monaco-editor/react":">=4.0.0"},"peerDependenciesMeta":{"@monaco-editor/react":{"optional":true}},"_npmOperationalInternal":{"tmp":"tmp/email-block-builder_0.5.2_1782822456683_0.8273558566137473","host":"s3://npm-registry-packages-npm-production"}},"0.5.3":{"name":"email-block-builder","version":"0.5.3","keywords":["email","email-builder","email-editor","drag-and-drop","react","email-template","wysiwyg","mjml-alternative"],"author":{"name":"Ilias Verginis"},"license":"MIT","_id":"email-block-builder@0.5.3","maintainers":[{"name":"verzio99","email":"eliasver99@gmail.com"}],"homepage":"https://github.com/eliasver1999/Email-editor#readme","bugs":{"url":"https://github.com/eliasver1999/Email-editor/issues"},"dist":{"shasum":"980b509b9ba73754da0ec042e9661189d098d0d1","tarball":"https://registry.npmjs.org/email-block-builder/-/email-block-builder-0.5.3.tgz","fileCount":10,"integrity":"sha512-eCTLc2J/bCD2FN0d3QI+GvbB06zB2h3xQM/xP7+CrjhlP5BjTLE2ZL1d3q3+LG3RMNAmHUHOEO5nEVhOnxktGQ==","signatures":[{"sig":"MEUCIFz5hqLnJxetPCB+NAjwFSPgWY5+l1ejpw1aKxICEmUmAiEA7DDGa5FHQlGjaO1bY4xaOM8S9FZJeN9YuSMU7qdLX+M=","keyid":"SHA256:DhQ8wR5APBvFHLF/+Tc+AYvPOdTpcIDqOhxsBHRwC7U"}],"unpackedSize":1239333},"main":"./dist/index.cjs","type":"module","types":"./dist/index.d.ts","module":"./dist/index.js","exports":{".":{"types":"./dist/index.d.ts","import":"./dist/index.js","require":"./dist/index.cjs"},"./styles.css":"./dist/styles.css"},"gitHead":"acc5251b6a7f8542363202c4ff22f3c4f666f968","scripts":{"dev":"tsup --watch","test":"vitest run","build":"npm run build:js && npm run build:css","build:js":"tsup","build:css":"postcss src/styles.css -o dist/styles.css --no-map","typecheck":"tsc --noEmit","build:demo":"vite build --base=/Email-editor/","playground":"vite","test:watch":"vitest","email:sample":"node scripts/render-sample.mjs","preview:demo":"vite preview --base=/Email-editor/","prepublishOnly":"npm run build"},"_npmUser":{"name":"verzio99","email":"eliasver99@gmail.com"},"repository":{"url":"git+https://github.com/eliasver1999/Email-editor.git","type":"git"},"_npmVersion":"11.6.2","description":"Framework-agnostic drag-and-drop email builder for React. Themable, localizable, exports email-safe HTML.","directories":{},"sideEffects":["**/*.css"],"_nodeVersion":"24.11.0","publishConfig":{"access":"public"},"_hasShrinkwrap":false,"devDependencies":{"clsx":"^2.1.1","tsup":"^8.5.0","vite":"^5.4.21","react":"^19.2.0","nanoid":"^5.1.7","vitest":"^2.1.9","postcss":"^8.5.6","react-dom":"^19.2.0","typescript":"~5.9.3","postcss-cli":"^11.0.1","tailwindcss":"^3.4.19","@types/react":"^19.0.0","autoprefixer":"^10.4.23","lucide-react":"^0.462.0","@dnd-kit/core":"^6.3.1","tailwind-merge":"^2.6.0","@types/react-dom":"^19.0.0","tailwindcss-animate":"^1.0.7","@monaco-editor/react":"^4.7.0","@vitejs/plugin-react":"^4.7.0","postcss-prefix-selector":"^1.16.1"},"peerDependencies":{"clsx":">=2.0.0","react":">=18.0.0","nanoid":">=4.0.0","react-dom":">=18.0.0","lucide-react":">=0.300.0","@dnd-kit/core":">=6.0.0","tailwind-merge":">=2.0.0","@monaco-editor/react":">=4.0.0"},"peerDependenciesMeta":{"@monaco-editor/react":{"optional":true}},"_npmOperationalInternal":{"tmp":"tmp/email-block-builder_0.5.3_1782826776148_0.5198514868042303","host":"s3://npm-registry-packages-npm-production"}},"0.6.0":{"name":"email-block-builder","version":"0.6.0","keywords":["email","email-builder","email-editor","drag-and-drop","react","email-template","wysiwyg","mjml-alternative"],"author":{"name":"Ilias Verginis"},"license":"MIT","_id":"email-block-builder@0.6.0","maintainers":[{"name":"verzio99","email":"eliasver99@gmail.com"}],"homepage":"https://github.com/eliasver1999/Email-editor#readme","bugs":{"url":"https://github.com/eliasver1999/Email-editor/issues"},"dist":{"shasum":"2dc83a9d0dcca9c97fb82236bd980529e69f76e5","tarball":"https://registry.npmjs.org/email-block-builder/-/email-block-builder-0.6.0.tgz","fileCount":10,"integrity":"sha512-2T3dp6wfytlj7A04I3aIs57pER4YSJA9QwFgw+bcnvIuSEGYjTNaAbH0u7e3Q4y9tsNkn4vbb5ACykGdAqyPHQ==","signatures":[{"sig":"MEYCIQDnhNJrjccqDTGN071WECfi0Q1V2LwhCEIuOc0U9/ZeVQIhALYIwKCWz12pJgZWG8rxWXuf8Sth6/v2HOw/kjQ5smru","keyid":"SHA256:DhQ8wR5APBvFHLF/+Tc+AYvPOdTpcIDqOhxsBHRwC7U"}],"unpackedSize":1217880},"main":"./dist/index.cjs","type":"module","types":"./dist/index.d.ts","module":"./dist/index.js","exports":{".":{"types":"./dist/index.d.ts","import":"./dist/index.js","require":"./dist/index.cjs"},"./styles.css":"./dist/styles.css"},"gitHead":"55897a846dd95424e899d2ce81359c92f599c1af","scripts":{"dev":"tsup --watch","test":"vitest run","build":"npm run build:js && npm run build:css","build:js":"tsup","build:css":"postcss src/styles.css -o dist/styles.css --no-map","typecheck":"tsc --noEmit","build:demo":"vite build --base=/Email-editor/","playground":"vite","test:watch":"vitest","email:sample":"node scripts/render-sample.mjs","preview:demo":"vite preview --base=/Email-editor/","prepublishOnly":"npm run build"},"_npmUser":{"name":"verzio99","email":"eliasver99@gmail.com"},"repository":{"url":"git+https://github.com/eliasver1999/Email-editor.git","type":"git"},"_npmVersion":"11.6.2","description":"Framework-agnostic drag-and-drop email builder for React. Themable, localizable, exports email-safe HTML.","directories":{},"sideEffects":["**/*.css"],"_nodeVersion":"24.11.0","publishConfig":{"access":"public"},"_hasShrinkwrap":false,"devDependencies":{"clsx":"^2.1.1","tsup":"^8.5.0","vite":"^5.4.21","react":"^19.2.0","nanoid":"^5.1.7","vitest":"^2.1.9","postcss":"^8.5.6","react-dom":"^19.2.0","typescript":"~5.9.3","postcss-cli":"^11.0.1","tailwindcss":"^3.4.19","@types/react":"^19.0.0","autoprefixer":"^10.4.23","lucide-react":"^0.462.0","@dnd-kit/core":"^6.3.1","tailwind-merge":"^2.6.0","@types/react-dom":"^19.0.0","tailwindcss-animate":"^1.0.7","@monaco-editor/react":"^4.7.0","@vitejs/plugin-react":"^4.7.0","postcss-prefix-selector":"^1.16.1"},"peerDependencies":{"clsx":">=2.0.0","react":">=18.0.0","nanoid":">=4.0.0","react-dom":">=18.0.0","lucide-react":">=0.300.0","@dnd-kit/core":">=6.0.0","tailwind-merge":">=2.0.0","@monaco-editor/react":">=4.0.0"},"peerDependenciesMeta":{"@monaco-editor/react":{"optional":true}},"_npmOperationalInternal":{"tmp":"tmp/email-block-builder_0.6.0_1782889215629_0.8224848015409998","host":"s3://npm-registry-packages-npm-production"}},"0.7.0":{"name":"email-block-builder","version":"0.7.0","keywords":["email","email-builder","email-editor","drag-and-drop","react","email-template","wysiwyg","mjml-alternative"],"author":{"name":"Ilias Verginis"},"license":"MIT","_id":"email-block-builder@0.7.0","maintainers":[{"name":"verzio99","email":"eliasver99@gmail.com"}],"homepage":"https://github.com/eliasver1999/Email-editor#readme","bugs":{"url":"https://github.com/eliasver1999/Email-editor/issues"},"dist":{"shasum":"8ec82e829b363c98e7d83abe93b8038783d19fe3","tarball":"https://registry.npmjs.org/email-block-builder/-/email-block-builder-0.7.0.tgz","fileCount":10,"integrity":"sha512-GRf4jwqE+c5nIOUk5ED+xuJ3npFRj36MCO7QlrVA+1M9P/MCzNONeeAds9BNXjOeQwVKgbK6eAVqD9gt4E1sqw==","signatures":[{"sig":"MEYCIQCfuYLO4feORkK3NxU+/sv0cnk6gDLgp5unUiv7nl4vTgIhAPN0/p5Ig/radCYT6n72FLg4RWvtAH4lkTMA5y88yAkK","keyid":"SHA256:DhQ8wR5APBvFHLF/+Tc+AYvPOdTpcIDqOhxsBHRwC7U"}],"unpackedSize":1249140},"main":"./dist/index.cjs","type":"module","types":"./dist/index.d.ts","module":"./dist/index.js","exports":{".":{"types":"./dist/index.d.ts","import":"./dist/index.js","require":"./dist/index.cjs"},"./styles.css":"./dist/styles.css"},"gitHead":"06d89e0ab5ff029ed662464569d6017a9253a5ea","scripts":{"dev":"tsup --watch","test":"vitest run","build":"npm run build:js && npm run build:css","build:js":"tsup","build:css":"postcss src/styles.css -o dist/styles.css --no-map","typecheck":"tsc --noEmit","build:demo":"vite build --base=/Email-editor/","playground":"vite","test:watch":"vitest","email:sample":"node scripts/render-sample.mjs","preview:demo":"vite preview --base=/Email-editor/","prepublishOnly":"npm run build"},"_npmUser":{"name":"verzio99","email":"eliasver99@gmail.com"},"repository":{"url":"git+https://github.com/eliasver1999/Email-editor.git","type":"git"},"_npmVersion":"11.6.2","description":"Framework-agnostic drag-and-drop email builder for React. Themable, localizable, exports email-safe HTML.","directories":{},"sideEffects":["**/*.css"],"_nodeVersion":"24.11.0","publishConfig":{"access":"public"},"_hasShrinkwrap":false,"devDependencies":{"clsx":"^2.1.1","tsup":"^8.5.0","vite":"^5.4.21","react":"^19.2.0","nanoid":"^5.1.7","vitest":"^2.1.9","postcss":"^8.5.6","react-dom":"^19.2.0","typescript":"~5.9.3","postcss-cli":"^11.0.1","tailwindcss":"^3.4.19","@types/react":"^19.0.0","autoprefixer":"^10.4.23","lucide-react":"^0.462.0","@dnd-kit/core":"^6.3.1","tailwind-merge":"^2.6.0","@types/react-dom":"^19.0.0","tailwindcss-animate":"^1.0.7","@monaco-editor/react":"^4.7.0","@vitejs/plugin-react":"^4.7.0","postcss-prefix-selector":"^1.16.1"},"peerDependencies":{"clsx":">=2.0.0","react":">=18.0.0","nanoid":">=4.0.0","react-dom":">=18.0.0","lucide-react":">=0.300.0","@dnd-kit/core":">=6.0.0","tailwind-merge":">=2.0.0","@monaco-editor/react":">=4.0.0"},"peerDependenciesMeta":{"@monaco-editor/react":{"optional":true}},"_npmOperationalInternal":{"tmp":"tmp/email-block-builder_0.7.0_1782891667790_0.26964083164935704","host":"s3://npm-registry-packages-npm-production"}},"0.8.0":{"name":"email-block-builder","version":"0.8.0","keywords":["email","email-builder","email-editor","drag-and-drop","react","email-template","wysiwyg","mjml-alternative"],"author":{"name":"Ilias Verginis"},"license":"MIT","_id":"email-block-builder@0.8.0","maintainers":[{"name":"verzio99","email":"eliasver99@gmail.com"}],"homepage":"https://github.com/eliasver1999/Email-editor#readme","bugs":{"url":"https://github.com/eliasver1999/Email-editor/issues"},"dist":{"shasum":"94f05b15c2257a4a8d8ee3819651ae63a2e0b924","tarball":"https://registry.npmjs.org/email-block-builder/-/email-block-builder-0.8.0.tgz","fileCount":10,"integrity":"sha512-K5fRTZ+oxpzzVvNjerPU7cO72KA9tgxasp+WV9eN6BfqCL1wKDtBZ+2uzx/nTZwXUSvG8A27Tc5orK5dR+t5Iw==","signatures":[{"sig":"MEYCIQDDzta6G33VPvzjGQ44aQo9aE3pVXvULGnL2bGuP3tdnwIhAI7edyZwplzDgZyQZ9hjhG8cRYdJof7smCD4+/I1xOz+","keyid":"SHA256:DhQ8wR5APBvFHLF/+Tc+AYvPOdTpcIDqOhxsBHRwC7U"}],"unpackedSize":1361658},"main":"./dist/index.cjs","type":"module","types":"./dist/index.d.ts","module":"./dist/index.js","exports":{".":{"types":"./dist/index.d.ts","import":"./dist/index.js","require":"./dist/index.cjs"},"./styles.css":"./dist/styles.css"},"gitHead":"b1c66f2772b9bdb11165b0fd4829f6a1b572a5f9","scripts":{"dev":"tsup --watch","test":"vitest run","build":"npm run build:js && npm run build:css","build:js":"tsup","build:css":"postcss src/styles.css -o dist/styles.css --no-map","typecheck":"tsc --noEmit","build:demo":"vite build --base=/Email-editor/","playground":"vite","test:watch":"vitest","email:sample":"node scripts/render-sample.mjs","preview:demo":"vite preview --base=/Email-editor/","prepublishOnly":"npm run build","validate:sample":"node scripts/validate-sample.mjs"},"_npmUser":{"name":"verzio99","email":"eliasver99@gmail.com"},"repository":{"url":"git+https://github.com/eliasver1999/Email-editor.git","type":"git"},"_npmVersion":"11.6.2","description":"Framework-agnostic drag-and-drop email builder for React. Themable, localizable, exports email-safe HTML.","directories":{},"sideEffects":["**/*.css"],"_nodeVersion":"24.11.0","publishConfig":{"access":"public"},"_hasShrinkwrap":false,"devDependencies":{"clsx":"^2.1.1","tsup":"^8.5.0","vite":"^5.4.21","react":"^19.2.0","nanoid":"^5.1.7","vitest":"^2.1.9","postcss":"^8.5.6","react-dom":"^19.2.0","typescript":"~5.9.3","postcss-cli":"^11.0.1","tailwindcss":"^3.4.19","@types/react":"^19.0.0","autoprefixer":"^10.4.23","lucide-react":"^0.462.0","@dnd-kit/core":"^6.3.1","tailwind-merge":"^2.6.0","@types/react-dom":"^19.0.0","tailwindcss-animate":"^1.0.7","@monaco-editor/react":"^4.7.0","@vitejs/plugin-react":"^4.7.0","postcss-prefix-selector":"^1.16.1"},"peerDependencies":{"clsx":">=2.0.0","react":">=18.0.0","nanoid":">=4.0.0","react-dom":">=18.0.0","lucide-react":">=0.300.0","@dnd-kit/core":">=6.0.0","tailwind-merge":">=2.0.0","@monaco-editor/react":">=4.0.0"},"peerDependenciesMeta":{"@monaco-editor/react":{"optional":true}},"_npmOperationalInternal":{"tmp":"tmp/email-block-builder_0.8.0_1782900497191_0.5757229525937069","host":"s3://npm-registry-packages-npm-production"}},"0.8.1":{"name":"email-block-builder","version":"0.8.1","keywords":["email","email-builder","email-editor","drag-and-drop","react","email-template","wysiwyg","mjml-alternative"],"author":{"name":"Ilias Verginis"},"license":"MIT","_id":"email-block-builder@0.8.1","maintainers":[{"name":"verzio99","email":"eliasver99@gmail.com"}],"homepage":"https://github.com/eliasver1999/Email-editor#readme","bugs":{"url":"https://github.com/eliasver1999/Email-editor/issues"},"dist":{"shasum":"08dadccd8f743f07bf33b3c1e57408e235a085fd","tarball":"https://registry.npmjs.org/email-block-builder/-/email-block-builder-0.8.1.tgz","fileCount":10,"integrity":"sha512-8zJGf5TZJQUWzRsn5sYw1lMVdclrCfLKfsOC0ageOt09DrIajtZBq02FbRipCo8r6Z3PtqUGkgH/of/50YjRPA==","signatures":[{"sig":"MEYCIQD6H85vriMCdDuA4VV/p9vXiM37hIKQoCpkQUrL5eznhAIhAP5YV+vJcBbd94CZt1155Wjh1aXrZfluwtiaDdP8NgHf","keyid":"SHA256:DhQ8wR5APBvFHLF/+Tc+AYvPOdTpcIDqOhxsBHRwC7U"}],"unpackedSize":1363297},"main":"./dist/index.cjs","type":"module","types":"./dist/index.d.ts","module":"./dist/index.js","exports":{".":{"types":"./dist/index.d.ts","import":"./dist/index.js","require":"./dist/index.cjs"},"./styles.css":"./dist/styles.css"},"gitHead":"d406574e090adc628f27495c6c2cbcc6c8ad0d7f","scripts":{"dev":"tsup --watch","test":"vitest run","build":"npm run build:js && npm run build:css","build:js":"tsup","build:css":"postcss src/styles.css -o dist/styles.css --no-map","typecheck":"tsc --noEmit","build:demo":"vite build --base=/Email-editor/","playground":"vite","test:watch":"vitest","email:sample":"node scripts/render-sample.mjs","preview:demo":"vite preview --base=/Email-editor/","prepublishOnly":"npm run build","validate:sample":"node scripts/validate-sample.mjs"},"_npmUser":{"name":"verzio99","email":"eliasver99@gmail.com"},"repository":{"url":"git+https://github.com/eliasver1999/Email-editor.git","type":"git"},"_npmVersion":"11.6.2","description":"Framework-agnostic drag-and-drop email builder for React. Themable, localizable, exports email-safe HTML.","directories":{},"sideEffects":["**/*.css"],"_nodeVersion":"24.11.0","publishConfig":{"access":"public"},"_hasShrinkwrap":false,"devDependencies":{"clsx":"^2.1.1","tsup":"^8.5.0","vite":"^5.4.21","react":"^19.2.0","nanoid":"^5.1.7","vitest":"^2.1.9","postcss":"^8.5.6","react-dom":"^19.2.0","typescript":"~5.9.3","postcss-cli":"^11.0.1","tailwindcss":"^3.4.19","@types/react":"^19.0.0","autoprefixer":"^10.4.23","lucide-react":"^0.462.0","@dnd-kit/core":"^6.3.1","tailwind-merge":"^2.6.0","@types/react-dom":"^19.0.0","tailwindcss-animate":"^1.0.7","@monaco-editor/react":"^4.7.0","@vitejs/plugin-react":"^4.7.0","postcss-prefix-selector":"^1.16.1"},"peerDependencies":{"clsx":">=2.0.0","react":">=18.0.0","nanoid":">=4.0.0","react-dom":">=18.0.0","lucide-react":">=0.300.0","@dnd-kit/core":">=6.0.0","tailwind-merge":">=2.0.0","@monaco-editor/react":">=4.0.0"},"peerDependenciesMeta":{"@monaco-editor/react":{"optional":true}},"_npmOperationalInternal":{"tmp":"tmp/email-block-builder_0.8.1_1782904486560_0.2173755499520118","host":"s3://npm-registry-packages-npm-production"}},"0.9.0":{"name":"email-block-builder","version":"0.9.0","keywords":["email","email-builder","email-editor","drag-and-drop","react","email-template","wysiwyg","mjml-alternative"],"author":{"name":"Ilias Verginis"},"license":"MIT","_id":"email-block-builder@0.9.0","maintainers":[{"name":"verzio99","email":"eliasver99@gmail.com"}],"homepage":"https://github.com/eliasver1999/Email-editor#readme","bugs":{"url":"https://github.com/eliasver1999/Email-editor/issues"},"dist":{"shasum":"09f1847d13d26401daff8391b04fbf32c8f2838c","tarball":"https://registry.npmjs.org/email-block-builder/-/email-block-builder-0.9.0.tgz","fileCount":10,"integrity":"sha512-YlGn1YTPURqgZ1s6BuqnyiYg02/ng6lk5I14Z5dw1HOumAHZzexZc3pxojl9c47AywRsZmvQgW84nVBiIavJiw==","signatures":[{"sig":"MEQCIC9m3kpuKLoq7xOYywa91Dc65Mt+eBcP09mkrmgNncoBAiB5b26456ZEeFqGM/j3HXJIu8SA1ONoN0RJDeX8mNPIGg==","keyid":"SHA256:DhQ8wR5APBvFHLF/+Tc+AYvPOdTpcIDqOhxsBHRwC7U"}],"unpackedSize":1367085},"main":"./dist/index.cjs","type":"module","types":"./dist/index.d.ts","module":"./dist/index.js","exports":{".":{"types":"./dist/index.d.ts","import":"./dist/index.js","require":"./dist/index.cjs"},"./styles.css":"./dist/styles.css"},"gitHead":"52635af308ec3b447dbdc86cf35cbb1e0d86797f","scripts":{"dev":"tsup --watch","test":"vitest run","build":"npm run build:js && npm run build:css","build:js":"tsup","build:css":"postcss src/styles.css -o dist/styles.css --no-map","typecheck":"tsc --noEmit","build:demo":"vite build --base=/Email-editor/","playground":"vite","test:watch":"vitest","email:sample":"node scripts/render-sample.mjs","preview:demo":"vite preview --base=/Email-editor/","prepublishOnly":"npm run build","validate:sample":"node scripts/validate-sample.mjs"},"_npmUser":{"name":"verzio99","email":"eliasver99@gmail.com"},"repository":{"url":"git+https://github.com/eliasver1999/Email-editor.git","type":"git"},"_npmVersion":"11.6.2","description":"Framework-agnostic drag-and-drop email builder for React. Themable, localizable, exports email-safe HTML.","directories":{},"sideEffects":["**/*.css"],"_nodeVersion":"24.11.0","publishConfig":{"access":"public"},"_hasShrinkwrap":false,"devDependencies":{"clsx":"^2.1.1","tsup":"^8.5.0","vite":"^5.4.21","react":"^19.2.0","nanoid":"^5.1.7","vitest":"^2.1.9","postcss":"^8.5.6","react-dom":"^19.2.0","typescript":"~5.9.3","postcss-cli":"^11.0.1","tailwindcss":"^3.4.19","@types/react":"^19.0.0","autoprefixer":"^10.4.23","lucide-react":"^0.462.0","@dnd-kit/core":"^6.3.1","tailwind-merge":"^2.6.0","@types/react-dom":"^19.0.0","tailwindcss-animate":"^1.0.7","@monaco-editor/react":"^4.7.0","@vitejs/plugin-react":"^4.7.0","postcss-prefix-selector":"^1.16.1"},"peerDependencies":{"clsx":">=2.0.0","react":">=18.0.0","nanoid":">=4.0.0","react-dom":">=18.0.0","lucide-react":">=0.300.0","@dnd-kit/core":">=6.0.0","tailwind-merge":">=2.0.0","@monaco-editor/react":">=4.0.0"},"peerDependenciesMeta":{"@monaco-editor/react":{"optional":true}},"_npmOperationalInternal":{"tmp":"tmp/email-block-builder_0.9.0_1782905265732_0.055998276882899045","host":"s3://npm-registry-packages-npm-production"}},"0.10.0":{"name":"email-block-builder","version":"0.10.0","keywords":["email","email-builder","email-editor","drag-and-drop","react","email-template","wysiwyg","mjml-alternative"],"author":{"name":"Ilias Verginis"},"license":"MIT","_id":"email-block-builder@0.10.0","maintainers":[{"name":"verzio99","email":"eliasver99@gmail.com"}],"homepage":"https://github.com/eliasver1999/Email-editor#readme","bugs":{"url":"https://github.com/eliasver1999/Email-editor/issues"},"dist":{"shasum":"dc274f38ff77dc945c2646f9909054fc6f64a3f3","tarball":"https://registry.npmjs.org/email-block-builder/-/email-block-builder-0.10.0.tgz","fileCount":10,"integrity":"sha512-nwev2XbVGLKL2lfkksT4ECSf3r6qLfqK6cAQ7npTD4nMQtpgTxVdQVkOMADrCcCT27usKZA3RytovVY4bIa5Mg==","signatures":[{"sig":"MEQCIHnalThnMRlSHsBRWYN+BcBbCKx5PGRW/yZnRB73FylaAiB0npPB1brwJtNfQJ+PfiriYjGklr69JqUwHMGPTWfuOw==","keyid":"SHA256:DhQ8wR5APBvFHLF/+Tc+AYvPOdTpcIDqOhxsBHRwC7U"}],"unpackedSize":1373220},"main":"./dist/index.cjs","type":"module","types":"./dist/index.d.ts","module":"./dist/index.js","exports":{".":{"types":"./dist/index.d.ts","import":"./dist/index.js","require":"./dist/index.cjs"},"./styles.css":"./dist/styles.css"},"gitHead":"0bf824c202c9542374f5b8d2f4ddb9066a0024be","scripts":{"dev":"tsup --watch","test":"vitest run","build":"npm run build:js && npm run build:css","build:js":"tsup","build:css":"postcss src/styles.css -o dist/styles.css --no-map","typecheck":"tsc --noEmit","build:demo":"vite build --base=/Email-editor/","playground":"vite","test:watch":"vitest","email:sample":"node scripts/render-sample.mjs","preview:demo":"vite preview --base=/Email-editor/","prepublishOnly":"npm run build","validate:sample":"node scripts/validate-sample.mjs"},"_npmUser":{"name":"verzio99","email":"eliasver99@gmail.com"},"repository":{"url":"git+https://github.com/eliasver1999/Email-editor.git","type":"git"},"_npmVersion":"11.6.2","description":"Framework-agnostic drag-and-drop email builder for React. Themable, localizable, exports email-safe HTML.","directories":{},"sideEffects":["**/*.css"],"_nodeVersion":"24.11.0","publishConfig":{"access":"public"},"_hasShrinkwrap":false,"devDependencies":{"clsx":"^2.1.1","tsup":"^8.5.0","vite":"^5.4.21","react":"^19.2.0","nanoid":"^5.1.7","vitest":"^2.1.9","postcss":"^8.5.6","react-dom":"^19.2.0","typescript":"~5.9.3","postcss-cli":"^11.0.1","tailwindcss":"^3.4.19","@types/react":"^19.0.0","autoprefixer":"^10.4.23","lucide-react":"^0.462.0","@dnd-kit/core":"^6.3.1","tailwind-merge":"^2.6.0","@types/react-dom":"^19.0.0","tailwindcss-animate":"^1.0.7","@monaco-editor/react":"^4.7.0","@vitejs/plugin-react":"^4.7.0","postcss-prefix-selector":"^1.16.1"},"peerDependencies":{"clsx":">=2.0.0","react":">=18.0.0","nanoid":">=4.0.0","react-dom":">=18.0.0","lucide-react":">=0.300.0","@dnd-kit/core":">=6.0.0","tailwind-merge":">=2.0.0","@monaco-editor/react":">=4.0.0"},"peerDependenciesMeta":{"@monaco-editor/react":{"optional":true}},"_npmOperationalInternal":{"tmp":"tmp/email-block-builder_0.10.0_1782906740228_0.2348804848665509","host":"s3://npm-registry-packages-npm-production"}},"0.11.0":{"name":"email-block-builder","version":"0.11.0","keywords":["email","email-builder","email-editor","drag-and-drop","react","email-template","wysiwyg","mjml-alternative"],"author":{"name":"Ilias Verginis"},"license":"MIT","_id":"email-block-builder@0.11.0","maintainers":[{"name":"verzio99","email":"eliasver99@gmail.com"}],"homepage":"https://github.com/eliasver1999/Email-editor#readme","bugs":{"url":"https://github.com/eliasver1999/Email-editor/issues"},"dist":{"shasum":"88f1ef7c0d37519258619e58c78f9912f5a44a90","tarball":"https://registry.npmjs.org/email-block-builder/-/email-block-builder-0.11.0.tgz","fileCount":10,"integrity":"sha512-vA6OnfJ5qxirgMgrl2OMc1dU7RvbaX1kcDZw6xaeIWsf6L3BkcKsD9ydvxzJWedQsNtxCk5Y5eI7mcJFEgLupQ==","signatures":[{"sig":"MEQCIFHkG9jZCxGr8K133RRUaiMiuVWwDRo/bbVkJhqz5B+uAiAaLTj6n8yKNpB2/ncz/1WLR+KL5C1OjS0iqbebx/iGMw==","keyid":"SHA256:DhQ8wR5APBvFHLF/+Tc+AYvPOdTpcIDqOhxsBHRwC7U"}],"unpackedSize":1432401},"main":"./dist/index.cjs","type":"module","types":"./dist/index.d.ts","module":"./dist/index.js","exports":{".":{"types":"./dist/index.d.ts","import":"./dist/index.js","require":"./dist/index.cjs"},"./styles.css":"./dist/styles.css"},"gitHead":"79249754df417e4eaf7f7543277da3d308a349ad","scripts":{"dev":"tsup --watch","test":"vitest run","build":"npm run build:js && npm run build:css","build:js":"tsup","build:css":"postcss src/styles.css -o dist/styles.css --no-map","typecheck":"tsc --noEmit","build:demo":"vite build --base=/Email-editor/","playground":"vite","test:watch":"vitest","email:sample":"node scripts/render-sample.mjs","preview:demo":"vite preview --base=/Email-editor/","prepublishOnly":"npm run build","validate:sample":"node scripts/validate-sample.mjs"},"_npmUser":{"name":"verzio99","email":"eliasver99@gmail.com"},"repository":{"url":"git+https://github.com/eliasver1999/Email-editor.git","type":"git"},"_npmVersion":"11.6.2","description":"Framework-agnostic drag-and-drop email builder for React. Themable, localizable, exports email-safe HTML.","directories":{},"sideEffects":["**/*.css"],"_nodeVersion":"24.11.0","publishConfig":{"access":"public"},"_hasShrinkwrap":false,"devDependencies":{"clsx":"^2.1.1","tsup":"^8.5.0","vite":"^5.4.21","react":"^19.2.0","nanoid":"^5.1.7","vitest":"^2.1.9","postcss":"^8.5.6","react-dom":"^19.2.0","typescript":"~5.9.3","postcss-cli":"^11.0.1","tailwindcss":"^3.4.19","@types/react":"^19.0.0","autoprefixer":"^10.4.23","lucide-react":"^0.462.0","@dnd-kit/core":"^6.3.1","tailwind-merge":"^2.6.0","@types/react-dom":"^19.0.0","tailwindcss-animate":"^1.0.7","@monaco-editor/react":"^4.7.0","@vitejs/plugin-react":"^4.7.0","postcss-prefix-selector":"^1.16.1"},"peerDependencies":{"clsx":">=2.0.0","react":">=18.0.0","nanoid":">=4.0.0","react-dom":">=18.0.0","lucide-react":">=0.300.0","@dnd-kit/core":">=6.0.0","tailwind-merge":">=2.0.0","@monaco-editor/react":">=4.0.0"},"peerDependenciesMeta":{"@monaco-editor/react":{"optional":true}},"_npmOperationalInternal":{"tmp":"tmp/email-block-builder_0.11.0_1782914382898_0.7342571708227703","host":"s3://npm-registry-packages-npm-production"}},"0.12.0":{"name":"email-block-builder","version":"0.12.0","keywords":["email","email-builder","email-editor","drag-and-drop","react","email-template","wysiwyg","mjml-alternative"],"author":{"name":"Ilias Verginis"},"license":"MIT","_id":"email-block-builder@0.12.0","maintainers":[{"name":"verzio99","email":"eliasver99@gmail.com"}],"homepage":"https://github.com/eliasver1999/Email-editor#readme","bugs":{"url":"https://github.com/eliasver1999/Email-editor/issues"},"dist":{"shasum":"985cac62dccb64615a1c381b944102287e1595d7","tarball":"https://registry.npmjs.org/email-block-builder/-/email-block-builder-0.12.0.tgz","fileCount":10,"integrity":"sha512-9yyc6FXSV7BuzJjNKpNszTBWjFygno7a2qa87yPSBSngrfa7Prd4lIAcm2xNuLrBTEmC1W280C/+aj0aEgRkEg==","signatures":[{"sig":"MEUCIQCZKeqgQbPxHYZFjJdiRyB9+v7V+Y8QAM2XRmA85ZQKggIga2XIa09nQrAlpzJbw5QIwutixnfaISkqfCPEFgloa/g=","keyid":"SHA256:DhQ8wR5APBvFHLF/+Tc+AYvPOdTpcIDqOhxsBHRwC7U"}],"unpackedSize":1465711},"main":"./dist/index.cjs","type":"module","types":"./dist/index.d.ts","module":"./dist/index.js","exports":{".":{"types":"./dist/index.d.ts","import":"./dist/index.js","require":"./dist/index.cjs"},"./styles.css":"./dist/styles.css"},"gitHead":"5e909ce8ab5647cfdb73c33b32e0026fc0a57dde","scripts":{"dev":"tsup --watch","test":"vitest run","build":"npm run build:js && npm run build:css","build:js":"tsup","build:css":"postcss src/styles.css -o dist/styles.css --no-map","typecheck":"tsc --noEmit","build:demo":"vite build --base=/Email-editor/","playground":"vite","test:watch":"vitest","email:sample":"node scripts/render-sample.mjs","preview:demo":"vite preview --base=/Email-editor/","prepublishOnly":"npm run build","validate:sample":"node scripts/validate-sample.mjs"},"_npmUser":{"name":"verzio99","email":"eliasver99@gmail.com"},"repository":{"url":"git+https://github.com/eliasver1999/Email-editor.git","type":"git"},"_npmVersion":"11.6.2","description":"Framework-agnostic drag-and-drop email builder for React. Themable, localizable, exports email-safe HTML.","directories":{},"sideEffects":["**/*.css"],"_nodeVersion":"24.11.0","publishConfig":{"access":"public"},"_hasShrinkwrap":false,"devDependencies":{"clsx":"^2.1.1","tsup":"^8.5.0","vite":"^5.4.21","react":"^19.2.0","nanoid":"^5.1.7","vitest":"^2.1.9","postcss":"^8.5.6","react-dom":"^19.2.0","typescript":"~5.9.3","postcss-cli":"^11.0.1","tailwindcss":"^3.4.19","@types/react":"^19.0.0","autoprefixer":"^10.4.23","lucide-react":"^0.462.0","@dnd-kit/core":"^6.3.1","tailwind-merge":"^2.6.0","@types/react-dom":"^19.0.0","tailwindcss-animate":"^1.0.7","@monaco-editor/react":"^4.7.0","@vitejs/plugin-react":"^4.7.0","postcss-prefix-selector":"^1.16.1"},"peerDependencies":{"clsx":">=2.0.0","react":">=18.0.0","nanoid":">=4.0.0","react-dom":">=18.0.0","lucide-react":">=0.300.0","@dnd-kit/core":">=6.0.0","tailwind-merge":">=2.0.0","@monaco-editor/react":">=4.0.0"},"peerDependenciesMeta":{"@monaco-editor/react":{"optional":true}},"_npmOperationalInternal":{"tmp":"tmp/email-block-builder_0.12.0_1782974805221_0.8446246029832005","host":"s3://npm-registry-packages-npm-production"}},"0.12.1":{"name":"email-block-builder","version":"0.12.1","keywords":["email","email-builder","email-editor","drag-and-drop","react","email-template","wysiwyg","mjml-alternative"],"author":{"name":"Ilias Verginis"},"license":"MIT","_id":"email-block-builder@0.12.1","maintainers":[{"name":"verzio99","email":"eliasver99@gmail.com"}],"homepage":"https://github.com/eliasver1999/Email-editor#readme","bugs":{"url":"https://github.com/eliasver1999/Email-editor/issues"},"dist":{"shasum":"19f18c6a35a0fd28af7f02d0efff973adf430b79","tarball":"https://registry.npmjs.org/email-block-builder/-/email-block-builder-0.12.1.tgz","fileCount":10,"integrity":"sha512-AsSRLxEmPaIifExlz0/SujrwHDAagdoWtPPkzL+kTtRbwTAboPYh6xrgcnFzFA0mGRyTnk5h8thH4s3N2wdX7g==","signatures":[{"sig":"MEUCIQCEeH5Q/8oecRYdQspdImFXqcaJY4ZpiExszWD4WwFYaQIgIipTx+upTrfk7j1iL0K1gJ1PsR7mn0c/gAuan/jDxB8=","keyid":"SHA256:DhQ8wR5APBvFHLF/+Tc+AYvPOdTpcIDqOhxsBHRwC7U"}],"unpackedSize":1465793},"main":"./dist/index.cjs","type":"module","types":"./dist/index.d.ts","module":"./dist/index.js","exports":{".":{"types":"./dist/index.d.ts","import":"./dist/index.js","require":"./dist/index.cjs"},"./styles.css":"./dist/styles.css"},"gitHead":"d95483d6ac8c9a389a15c314cc6e441f675a01f4","scripts":{"dev":"tsup --watch","test":"vitest run","build":"npm run build:js && npm run build:css","build:js":"tsup","build:css":"postcss src/styles.css -o dist/styles.css --no-map","typecheck":"tsc --noEmit","build:demo":"vite build --base=/Email-editor/","playground":"vite","test:watch":"vitest","email:sample":"node scripts/render-sample.mjs","preview:demo":"vite preview --base=/Email-editor/","prepublishOnly":"npm run build","validate:sample":"node scripts/validate-sample.mjs"},"_npmUser":{"name":"verzio99","email":"eliasver99@gmail.com"},"repository":{"url":"git+https://github.com/eliasver1999/Email-editor.git","type":"git"},"_npmVersion":"11.6.2","description":"Framework-agnostic drag-and-drop email builder for React. Themable, localizable, exports email-safe HTML.","directories":{},"sideEffects":["**/*.css"],"_nodeVersion":"24.11.0","publishConfig":{"access":"public"},"_hasShrinkwrap":false,"devDependencies":{"clsx":"^2.1.1","tsup":"^8.5.0","vite":"^5.4.21","react":"^19.2.0","nanoid":"^5.1.7","vitest":"^2.1.9","postcss":"^8.5.6","react-dom":"^19.2.0","typescript":"~5.9.3","postcss-cli":"^11.0.1","tailwindcss":"^3.4.19","@types/react":"^19.0.0","autoprefixer":"^10.4.23","lucide-react":"^0.462.0","@dnd-kit/core":"^6.3.1","tailwind-merge":"^2.6.0","@types/react-dom":"^19.0.0","tailwindcss-animate":"^1.0.7","@monaco-editor/react":"^4.7.0","@vitejs/plugin-react":"^4.7.0","postcss-prefix-selector":"^1.16.1"},"peerDependencies":{"clsx":">=2.0.0","react":">=18.0.0","nanoid":">=4.0.0","react-dom":">=18.0.0","lucide-react":">=0.300.0","@dnd-kit/core":">=6.0.0","tailwind-merge":">=2.0.0","@monaco-editor/react":">=4.0.0"},"peerDependenciesMeta":{"@monaco-editor/react":{"optional":true}},"_npmOperationalInternal":{"tmp":"tmp/email-block-builder_0.12.1_1782977285678_0.45388447243258434","host":"s3://npm-registry-packages-npm-production"}},"0.13.0":{"name":"email-block-builder","version":"0.13.0","keywords":["email","email-builder","email-editor","drag-and-drop","react","email-template","wysiwyg","mjml-alternative"],"author":{"name":"Ilias Verginis"},"license":"MIT","_id":"email-block-builder@0.13.0","maintainers":[{"name":"verzio99","email":"eliasver99@gmail.com"}],"homepage":"https://github.com/eliasver1999/Email-editor#readme","bugs":{"url":"https://github.com/eliasver1999/Email-editor/issues"},"dist":{"shasum":"939bd2bd212fa58578480fa8402ec464b8f94449","tarball":"https://registry.npmjs.org/email-block-builder/-/email-block-builder-0.13.0.tgz","fileCount":10,"integrity":"sha512-necW+woSPHgBKC9bwZAHrTW37tTH0j+Q7HWu+cvVMyQ/AkAcShx3FbAXgrWVDvYaOzdTjCP8QXXEYy2DIJhhKw==","signatures":[{"sig":"MEUCIDD3Rd+IBTr8/cvc/ej44ExJ5OZWqH7KjDFNTEordeY4AiEApixq0qMctq22jEBWcDl69jASrESPM2D21yMEa45ZUC0=","keyid":"SHA256:DhQ8wR5APBvFHLF/+Tc+AYvPOdTpcIDqOhxsBHRwC7U"}],"unpackedSize":1475689},"main":"./dist/index.cjs","type":"module","types":"./dist/index.d.ts","module":"./dist/index.js","exports":{".":{"types":"./dist/index.d.ts","import":"./dist/index.js","require":"./dist/index.cjs"},"./styles.css":"./dist/styles.css"},"gitHead":"1cb06416e9b7052665304450af07c3e7556c7a92","scripts":{"dev":"tsup --watch","test":"vitest run","build":"npm run build:js && npm run build:css","build:js":"tsup","build:css":"postcss src/styles.css -o dist/styles.css --no-map","typecheck":"tsc --noEmit","build:demo":"vite build --base=/Email-editor/","playground":"vite","test:watch":"vitest","email:sample":"node scripts/render-sample.mjs","preview:demo":"vite preview --base=/Email-editor/","prepublishOnly":"npm run build","validate:sample":"node scripts/validate-sample.mjs"},"_npmUser":{"name":"verzio99","email":"eliasver99@gmail.com"},"repository":{"url":"git+https://github.com/eliasver1999/Email-editor.git","type":"git"},"_npmVersion":"11.6.2","description":"Framework-agnostic drag-and-drop email builder for React. Themable, localizable, exports email-safe HTML.","directories":{},"sideEffects":["**/*.css"],"_nodeVersion":"24.11.0","publishConfig":{"access":"public"},"_hasShrinkwrap":false,"devDependencies":{"clsx":"^2.1.1","tsup":"^8.5.0","vite":"^5.4.21","react":"^19.2.0","nanoid":"^5.1.7","vitest":"^2.1.9","postcss":"^8.5.6","react-dom":"^19.2.0","typescript":"~5.9.3","postcss-cli":"^11.0.1","tailwindcss":"^3.4.19","@types/react":"^19.0.0","autoprefixer":"^10.4.23","lucide-react":"^0.462.0","@dnd-kit/core":"^6.3.1","tailwind-merge":"^2.6.0","@types/react-dom":"^19.0.0","tailwindcss-animate":"^1.0.7","@monaco-editor/react":"^4.7.0","@vitejs/plugin-react":"^4.7.0","postcss-prefix-selector":"^1.16.1"},"peerDependencies":{"clsx":">=2.0.0","react":">=18.0.0","nanoid":">=4.0.0","react-dom":">=18.0.0","lucide-react":">=0.300.0","@dnd-kit/core":">=6.0.0","tailwind-merge":">=2.0.0","@monaco-editor/react":">=4.0.0"},"peerDependenciesMeta":{"@monaco-editor/react":{"optional":true}},"_npmOperationalInternal":{"tmp":"tmp/email-block-builder_0.13.0_1782977988532_0.04739154346362118","host":"s3://npm-registry-packages-npm-production"}},"0.14.0":{"name":"email-block-builder","version":"0.14.0","keywords":["email","email-builder","email-editor","drag-and-drop","react","email-template","wysiwyg","mjml-alternative"],"author":{"name":"Ilias Verginis"},"license":"MIT","_id":"email-block-builder@0.14.0","maintainers":[{"name":"verzio99","email":"eliasver99@gmail.com"}],"homepage":"https://github.com/eliasver1999/Email-editor#readme","bugs":{"url":"https://github.com/eliasver1999/Email-editor/issues"},"dist":{"shasum":"269c87cfceadd305c465e63150c67f13a324b870","tarball":"https://registry.npmjs.org/email-block-builder/-/email-block-builder-0.14.0.tgz","fileCount":10,"integrity":"sha512-ZkIf1EUyrUzADtFnsGtxr4mAci18PQMfwJFtNxRMvryJTl/rvC6C114tsrDum53DqZP/fDY0XkNkGqZvne1ETw==","signatures":[{"sig":"MEUCIEbQYyoH3C2+f5XJVYQtPWQbF3MmqRJazKlAZi5HFBRmAiEA0WyyXE/ugm8G58RtEpxSy5tD1nkbwBwETowWp78B89M=","keyid":"SHA256:DhQ8wR5APBvFHLF/+Tc+AYvPOdTpcIDqOhxsBHRwC7U"}],"unpackedSize":1563657},"main":"./dist/index.cjs","type":"module","types":"./dist/index.d.ts","module":"./dist/index.js","exports":{".":{"types":"./dist/index.d.ts","import":"./dist/index.js","require":"./dist/index.cjs"},"./styles.css":"./dist/styles.css"},"gitHead":"c41f5744a99d1ae303754c02e06cfc4f9d731e37","scripts":{"dev":"tsup --watch","test":"vitest run","build":"npm run build:js && npm run build:css","build:js":"tsup","build:css":"postcss src/styles.css -o dist/styles.css --no-map","typecheck":"tsc --noEmit","build:demo":"vite build --base=/Email-editor/","playground":"vite","test:watch":"vitest","email:sample":"node scripts/render-sample.mjs","preview:demo":"vite preview --base=/Email-editor/","prepublishOnly":"npm run build","validate:sample":"node scripts/validate-sample.mjs"},"_npmUser":{"name":"verzio99","email":"eliasver99@gmail.com"},"repository":{"url":"git+https://github.com/eliasver1999/Email-editor.git","type":"git"},"_npmVersion":"11.6.2","description":"Framework-agnostic drag-and-drop email builder for React. Themable, localizable, exports email-safe HTML.","directories":{},"sideEffects":["**/*.css"],"_nodeVersion":"24.11.0","publishConfig":{"access":"public"},"_hasShrinkwrap":false,"devDependencies":{"clsx":"^2.1.1","tsup":"^8.5.0","vite":"^5.4.21","react":"^19.2.0","nanoid":"^5.1.7","vitest":"^2.1.9","postcss":"^8.5.6","react-dom":"^19.2.0","typescript":"~5.9.3","postcss-cli":"^11.0.1","tailwindcss":"^3.4.19","@types/react":"^19.0.0","autoprefixer":"^10.4.23","lucide-react":"^0.462.0","@dnd-kit/core":"^6.3.1","tailwind-merge":"^2.6.0","@types/react-dom":"^19.0.0","tailwindcss-animate":"^1.0.7","@monaco-editor/react":"^4.7.0","@vitejs/plugin-react":"^4.7.0","postcss-prefix-selector":"^1.16.1"},"peerDependencies":{"clsx":">=2.0.0","react":">=18.0.0","nanoid":">=4.0.0","react-dom":">=18.0.0","lucide-react":">=0.300.0","@dnd-kit/core":">=6.0.0","tailwind-merge":">=2.0.0","@monaco-editor/react":">=4.0.0"},"peerDependenciesMeta":{"@monaco-editor/react":{"optional":true}},"_npmOperationalInternal":{"tmp":"tmp/email-block-builder_0.14.0_1783059988405_0.2823465199182109","host":"s3://npm-registry-packages-npm-production"}},"0.14.2":{"name":"email-block-builder","version":"0.14.2","keywords":["email","email-builder","email-editor","drag-and-drop","react","email-template","wysiwyg","mjml-alternative"],"author":{"name":"Ilias Verginis"},"license":"MIT","_id":"email-block-builder@0.14.2","maintainers":[{"name":"verzio99","email":"eliasver99@gmail.com"}],"homepage":"https://github.com/eliasver1999/Email-editor#readme","bugs":{"url":"https://github.com/eliasver1999/Email-editor/issues"},"dist":{"shasum":"98e4a6e2a30b80a3691960d3e1a3a979fe5dcaa4","tarball":"https://registry.npmjs.org/email-block-builder/-/email-block-builder-0.14.2.tgz","fileCount":10,"integrity":"sha512-O8XVIpKmpvVUe7WvnIqwX1mz5IZ9wFzN+USMwRMOCQwLTD+bzkcPhw3pi9W30I2ZFJKR5fMq+KiKvZztZwhjqA==","signatures":[{"sig":"MEYCIQDSYDTJnuiBCe0KjZX4nbOxOeefJFvE1fDIyS4BYsa4UgIhAPpP9D5Zs4m/P5yPc+94MUC6itpv5aaJX7x5B2ePKXab","keyid":"SHA256:DhQ8wR5APBvFHLF/+Tc+AYvPOdTpcIDqOhxsBHRwC7U"}],"unpackedSize":1570860},"main":"./dist/index.cjs","type":"module","types":"./dist/index.d.ts","module":"./dist/index.js","exports":{".":{"types":"./dist/index.d.ts","import":"./dist/index.js","require":"./dist/index.cjs"},"./styles.css":"./dist/styles.css"},"gitHead":"00e6bd020b6fa5272fd71df4e30bdbcd67a9bd13","scripts":{"dev":"tsup --watch","test":"vitest run","build":"npm run build:js && npm run build:css","build:js":"tsup","build:css":"postcss src/styles.css -o dist/styles.css --no-map","typecheck":"tsc --noEmit","build:demo":"vite build --base=/Email-editor/","playground":"vite","test:watch":"vitest","email:sample":"node scripts/render-sample.mjs","preview:demo":"vite preview --base=/Email-editor/","prepublishOnly":"npm run build","validate:sample":"node scripts/validate-sample.mjs"},"_npmUser":{"name":"verzio99","email":"eliasver99@gmail.com"},"repository":{"url":"git+https://github.com/eliasver1999/Email-editor.git","type":"git"},"_npmVersion":"11.6.2","description":"Framework-agnostic drag-and-drop email builder for React. Themable, localizable, exports email-safe HTML.","directories":{},"sideEffects":["**/*.css"],"_nodeVersion":"24.11.0","publishConfig":{"access":"public"},"_hasShrinkwrap":false,"devDependencies":{"clsx":"^2.1.1","tsup":"^8.5.0","vite":"^5.4.21","react":"^19.2.0","nanoid":"^5.1.7","vitest":"^2.1.9","postcss":"^8.5.6","react-dom":"^19.2.0","typescript":"~5.9.3","postcss-cli":"^11.0.1","tailwindcss":"^3.4.19","@types/react":"^19.0.0","autoprefixer":"^10.4.23","lucide-react":"^0.462.0","@dnd-kit/core":"^6.3.1","tailwind-merge":"^2.6.0","@types/react-dom":"^19.0.0","tailwindcss-animate":"^1.0.7","@monaco-editor/react":"^4.7.0","@vitejs/plugin-react":"^4.7.0","postcss-prefix-selector":"^1.16.1"},"peerDependencies":{"clsx":">=2.0.0","react":">=18.0.0","nanoid":">=4.0.0","react-dom":">=18.0.0","lucide-react":">=0.300.0","@dnd-kit/core":">=6.0.0","tailwind-merge":">=2.0.0","@monaco-editor/react":">=4.0.0"},"peerDependenciesMeta":{"@monaco-editor/react":{"optional":true}},"_npmOperationalInternal":{"tmp":"tmp/email-block-builder_0.14.2_1783062979517_0.003792911711550717","host":"s3://npm-registry-packages-npm-production"}},"0.15.0":{"name":"email-block-builder","version":"0.15.0","description":"Framework-agnostic drag-and-drop email builder for React. Themable, localizable, exports email-safe HTML.","type":"module","license":"MIT","author":{"name":"Ilias Verginis"},"repository":{"type":"git","url":"git+https://github.com/eliasver1999/Email-editor.git"},"homepage":"https://github.com/eliasver1999/Email-editor#readme","bugs":{"url":"https://github.com/eliasver1999/Email-editor/issues"},"keywords":["email","email-builder","email-editor","drag-and-drop","react","email-template","wysiwyg","mjml-alternative"],"sideEffects":["**/*.css"],"main":"./dist/index.cjs","module":"./dist/index.js","types":"./dist/index.d.ts","exports":{".":{"types":"./dist/index.d.ts","import":"./dist/index.js","require":"./dist/index.cjs"},"./styles.css":"./dist/styles.css"},"scripts":{"build":"npm run build:js && npm run build:css","build:js":"tsup","build:css":"postcss src/styles.css -o dist/styles.css --no-map","dev":"tsup --watch","playground":"vite","build:demo":"vite build --base=/Email-editor/","preview:demo":"vite preview --base=/Email-editor/","email:sample":"node scripts/render-sample.mjs","validate:sample":"node scripts/validate-sample.mjs","test":"vitest run","test:watch":"vitest","typecheck":"tsc --noEmit","prepublishOnly":"npm run build"},"peerDependencies":{"@dnd-kit/core":">=6.0.0","@monaco-editor/react":">=4.0.0","clsx":">=2.0.0","lucide-react":">=0.300.0","nanoid":">=4.0.0","react":">=18.0.0","react-dom":">=18.0.0","tailwind-merge":">=2.0.0"},"peerDependenciesMeta":{"@monaco-editor/react":{"optional":true}},"devDependencies":{"@dnd-kit/core":"^6.3.1","@monaco-editor/react":"^4.7.0","@types/react":"^19.0.0","@types/react-dom":"^19.0.0","@vitejs/plugin-react":"^4.7.0","autoprefixer":"^10.4.23","clsx":"^2.1.1","lucide-react":"^0.462.0","nanoid":"^5.1.7","postcss":"^8.5.6","postcss-cli":"^11.0.1","postcss-prefix-selector":"^1.16.1","react":"^19.2.0","react-dom":"^19.2.0","tailwind-merge":"^2.6.0","tailwindcss":"^3.4.19","tailwindcss-animate":"^1.0.7","tsup":"^8.5.0","typescript":"~5.9.3","vite":"^5.4.21","vitest":"^2.1.9"},"publishConfig":{"access":"public"},"gitHead":"49d9032047466a70b07427d4085a1f869029bd98","_id":"email-block-builder@0.15.0","_nodeVersion":"24.11.0","_npmVersion":"11.6.2","dist":{"integrity":"sha512-ByGcx9gYaPLrUkNXHFcBxFcKrPbDy6rmo9zzOIQ38cnw9S1TzB3CbxrKnyJCWFhigy73+BSvwdyPFfI0uSHBEA==","shasum":"6495206e6a116eacfb0e809abdbbdc7e1d288a93","tarball":"https://registry.npmjs.org/email-block-builder/-/email-block-builder-0.15.0.tgz","fileCount":10,"unpackedSize":1601182,"signatures":[{"keyid":"SHA256:DhQ8wR5APBvFHLF/+Tc+AYvPOdTpcIDqOhxsBHRwC7U","sig":"MEQCIAWsnaaLua2Ih1f13kOKRXIZojrUw8FGrji9fEvxH6RnAiBNqfGvGkMtld1Y9T4Au4hA3+bI+IfSJ32aN+VHDQ4v+g=="}]},"_npmUser":{"name":"verzio99","email":"eliasver99@gmail.com"},"directories":{},"maintainers":[{"name":"verzio99","email":"eliasver99@gmail.com"}],"_npmOperationalInternal":{"host":"s3://npm-registry-packages-npm-production","tmp":"tmp/email-block-builder_0.15.0_1783067389734_0.035916357135719945"},"_hasShrinkwrap":false}},"time":{"created":"2026-06-25T10:23:08.415Z","modified":"2026-07-03T08:29:50.078Z","0.1.0":"2026-06-25T10:23:08.718Z","0.1.1":"2026-06-25T11:23:17.907Z","0.1.2":"2026-06-25T13:37:54.927Z","0.1.3":"2026-06-25T13:40:18.509Z","0.1.4":"2026-06-25T13:48:47.531Z","0.2.0":"2026-06-26T08:32:03.385Z","0.3.0":"2026-06-26T08:55:10.189Z","0.3.1":"2026-06-26T08:58:37.111Z","0.4.0":"2026-06-26T11:20:53.905Z","0.4.1":"2026-06-29T07:25:13.606Z","0.4.3":"2026-06-29T12:33:57.872Z","0.5.0":"2026-06-30T12:16:40.059Z","0.5.2":"2026-06-30T12:27:36.838Z","0.5.3":"2026-06-30T13:39:36.321Z","0.6.0":"2026-07-01T07:00:15.818Z","0.7.0":"2026-07-01T07:41:07.971Z","0.8.0":"2026-07-01T10:08:17.348Z","0.8.1":"2026-07-01T11:14:46.775Z","0.9.0":"2026-07-01T11:27:45.875Z","0.10.0":"2026-07-01T11:52:20.495Z","0.11.0":"2026-07-01T13:59:43.103Z","0.12.0":"2026-07-02T06:46:45.459Z","0.12.1":"2026-07-02T07:28:05.840Z","0.13.0":"2026-07-02T07:39:48.683Z","0.14.0":"2026-07-03T06:26:28.590Z","0.14.2":"2026-07-03T07:16:19.690Z","0.15.0":"2026-07-03T08:29:49.964Z"},"bugs":{"url":"https://github.com/eliasver1999/Email-editor/issues"},"author":{"name":"Ilias Verginis"},"license":"MIT","homepage":"https://github.com/eliasver1999/Email-editor#readme","keywords":["email","email-builder","email-editor","drag-and-drop","react","email-template","wysiwyg","mjml-alternative"],"repository":{"type":"git","url":"git+https://github.com/eliasver1999/Email-editor.git"},"description":"Framework-agnostic drag-and-drop email builder for React. Themable, localizable, exports email-safe HTML.","maintainers":[{"name":"verzio99","email":"eliasver99@gmail.com"}],"readme":"# email-block-builder\r\n\r\nA framework-agnostic, drag-and-drop **email builder** for React. Compose emails from blocks (text, image, button, columns, social, …), preview them live, and export **email-safe, table-based HTML** that renders across clients (including Outlook).\r\n\r\n**▶ [Live demo](https://eliasver1999.github.io/Email-editor/)** — try the editor in your browser.\r\n\r\n- 🧱 **Block-based editor** — drag, drop, reorder, edit inline\r\n- 🎨 **Themable** — every color is a CSS variable; light/dark out of the box\r\n- 🌍 **Localizable** — inject your own translations via a single `t` prop\r\n- 📦 **Self-contained styles** — ships precompiled, scoped CSS; **no Tailwind required** in your app\r\n- 📤 **HTML + JSON export** — save the design as JSON, render to email-safe HTML\r\n- 🔤 **Merge tags** — insert `{{tokens}}` for personalization\r\n\r\n## Install\r\n\r\n```bash\r\nnpm install email-block-builder\r\n```\r\n\r\nPeer dependencies (you likely already have most):\r\n\r\n```bash\r\nnpm install react react-dom @dnd-kit/core lucide-react nanoid clsx tailwind-merge\r\n# optional — only needed for the in-editor HTML \"code view\"\r\nnpm install @monaco-editor/react\r\n```\r\n\r\n## Quick start\r\n\r\n```tsx\r\nimport { useState } from \"react\";\r\nimport { EmailBuilder, type EmailDocument } from \"email-block-builder\";\r\nimport \"email-block-builder/styles.css\"; // once, anywhere\r\n\r\nexport function MyEditor() {\r\n  const [doc, setDoc] = useState<EmailDocument>();\r\n\r\n  return (\r\n    <EmailBuilder\r\n      initialDocument={doc}\r\n      onSave={(document, html) => {\r\n        setDoc(document);                       // persist the JSON design\r\n        sendToServer({\r\n          subject: document.settings.subject,   // the email Subject header\r\n          html,                                 // the rendered email body\r\n        });\r\n      }}\r\n      onBack={() => history.back()}\r\n    />\r\n  );\r\n}\r\n```\r\n\r\nThat's it — the editor is fully styled (it renders inside a `.email-builder` root the stylesheet targets).\r\n\r\n> **Subject & preheader** live on `document.settings` (`subject`, `preheaderText`) — set them in the editor's **Email settings** panel. They're metadata for your sender: the subject is *not* in the rendered body (it's the email's `Subject` header), and the preheader is emitted as the usual hidden inbox-preview snippet.\r\n\r\n## Rendering without the editor\r\n\r\nRender a saved design to HTML anywhere (server or client) — no React tree needed:\r\n\r\n```ts\r\nimport { renderToHtml, renderToText, type EmailDocument } from \"email-block-builder\";\r\n\r\nconst doc = savedDocument as EmailDocument;\r\nconst html = renderToHtml(doc);\r\nconst text = renderToText(doc); // plain-text alternative for the multipart email\r\n```\r\n\r\n`renderToText` produces a readable `text/plain` part (better deliverability + accessibility): headings/paragraphs, `- ` bullet lists, `text (url)` links, `label: url` buttons, `\"quote\" — author`, and `---` dividers; images become their alt text, hidden blocks and merge tags are handled. Send both parts (`text/plain` + `text/html`) as a multipart alternative. Custom blocks render via an optional `toText` on `defineBlock` (skipped otherwise).\r\n\r\n## Merge tags (personalization)\r\n\r\nPass groups of insertable tokens; users can drop them into text, and you control how they preview:\r\n\r\n```tsx\r\n<EmailBuilder\r\n  fieldGroups={[\r\n    { category: \"Recipient\", fields: [\r\n      { token: \"{{first_name}}\", label: \"First name\" },\r\n      { token: \"{{email}}\", label: \"Email\" },\r\n    ]},\r\n  ]}\r\n  previewSubstitute={(html) =>\r\n    html.replaceAll(\"{{first_name}}\", \"Maria\").replaceAll(\"{{email}}\", \"maria@example.com\")\r\n  }\r\n/>\r\n```\r\n\r\nThe exported HTML keeps the raw `{{tokens}}` so your backend does the final substitution at send time.\r\n\r\n## Image & file uploads\r\n\r\nImage fields and the **File / Download** block take a URL by default. Provide an uploader and the builder adds an upload button (with drag-and-drop): it hands you the picked/dropped `File`, you upload it wherever you store assets, and return the hosted URL.\r\n\r\n- `onImageUpload` — image fields (`<img src>`).\r\n- `onFileUpload` — the File/Download block, **any** file type (the URL becomes the link). Falls back to `onImageUpload` when omitted, so a single S3 handler serves both.\r\n\r\n```tsx\r\n<EmailBuilder\r\n  // One handler for both images and files — e.g. a presigned-S3 upload:\r\n  onImageUpload={async (file) => {\r\n    // 1) ask your backend for a presigned PUT URL\r\n    const { uploadUrl, publicUrl } = await fetch(\r\n      `/api/s3-presign?name=${encodeURIComponent(file.name)}&type=${file.type}`\r\n    ).then((r) => r.json());\r\n    // 2) PUT the file straight to S3\r\n    await fetch(uploadUrl, { method: \"PUT\", body: file, headers: { \"Content-Type\": file.type } });\r\n    // 3) return the public https URL the email will point at\r\n    return publicUrl;\r\n  }}\r\n  // Optional: route files differently from images\r\n  // onFileUpload={async (file) => uploadToDocsBucket(file)}\r\n/>\r\n```\r\n\r\nEmails require publicly-hosted assets, so return an absolute `https://` URL (not a `blob:`/`data:` URI). Without an uploader, the fields stay URL-only.\r\n\r\n## Theming\r\n\r\nThe editor ships **precompiled, self-contained CSS scoped to `.email-builder`** — no Tailwind setup needed in your app, and it won't collide with your own Tailwind (both are namespaced). Theme it two ways:\r\n\r\n**As a prop** — pass `theme` (colors as hex *or* HSL channels; `radius` as any length), plus `dark` / `className`:\r\n\r\n```tsx\r\n<EmailBuilder\r\n  theme={{ primary: \"#7c3aed\", radius: \"0.25rem\", ring: \"#7c3aed\" }}\r\n  dark={isDark}                 // or put `.dark` on any ancestor yourself\r\n  className=\"my-editor\"         // your own class alongside `email-builder`\r\n/>\r\n```\r\n\r\n`theme` keys: `background`, `foreground`, `card(Foreground)`, `popover(Foreground)`, `primary(Foreground)`, `secondary(Foreground)`, `muted(Foreground)`, `accent(Foreground)`, `destructive(Foreground)`, `border`, `input`, `ring`, `radius`.\r\n\r\n**Or in CSS** — override the variables on `.email-builder` (or any parent). Handy if your Tailwind config already defines these tokens:\r\n\r\n```css\r\n.email-builder {\r\n  --primary: 250 84% 54%;     /* HSL channels (no hsl()) */\r\n  --radius: 0.75rem;\r\n}\r\n```\r\n\r\n## Styling blocks with Custom CSS\r\n\r\nThe document **Custom CSS** field (Email settings) is injected into the email `<head>` and applied live on the canvas. Every block's row carries hooks you can target:\r\n\r\n- `.eb-block` — every block; `.eb-block-<type>` — all blocks of a type (`.eb-block-button`, `.eb-block-text`, …).\r\n- A per-block **CSS class** (set in the block's Properties panel) — target one specific block.\r\n\r\n```css\r\n.eb-block-button a { text-transform: uppercase !important; }  /* all buttons */\r\n.promo-cta a       { background: #111 !important; }           /* one tagged block */\r\n```\r\n\r\nNote: blocks set their base styles inline, so use `!important` (or properties the block doesn't set) to override. And email clients vary in `<style>` support — the Preview is the source of truth, and inline styles are safest for the actual inbox.\r\n\r\n## Localization\r\n\r\nThe editor ships English text by default. Pass a `t(key)` function to translate its UI — it falls back to English for any missing key. Keys live under the `emailBuilder.*` namespace.\r\n\r\n```tsx\r\n<EmailBuilder t={(key) => myI18n.translate(key)} />\r\n```\r\n\r\n> Note: `t` translates the **editor chrome**. To translate the **email content** itself, use multi-language mode below — each language gets its own design.\r\n\r\n## Multiple languages\r\n\r\nPass a `locales` list to keep a **separate design per language**. A switcher appears in the toolbar, and each language is a fully independent `EmailDocument` — different blocks, layout, and content are all allowed. A **\"Copy to all languages\"** action (in the ⋯ More menu) clones the active language's design onto the others, so translators start from an identical layout.\r\n\r\n```tsx\r\n<EmailBuilder\r\n  locales={[\r\n    { code: \"en\", label: \"English\" },\r\n    { code: \"el\", label: \"Ελληνικά\" },\r\n    { code: \"fr\", label: \"Français\" },\r\n  ]}\r\n  defaultLocale=\"en\"\r\n  initialDocuments={{ en: savedEn, el: savedEl }}   // optional; missing langs start from the starter\r\n  onSave={(doc, html, meta) => {\r\n    // doc/html are the active language. meta has them all:\r\n    if (meta) {\r\n      for (const [code, document] of Object.entries(meta.documents)) {\r\n        save(code, document, meta.htmls[code]);       // persist each language's design + HTML\r\n      }\r\n    }\r\n  }}\r\n/>\r\n```\r\n\r\n`onSave`'s third argument (`MultiLocaleSaveMeta`) carries `{ locale, documents, htmls }` — every language's design and rendered HTML, keyed by `code` — so you can persist all variants in one save.\r\n\r\n> Editing history (undo/redo) is per-language and resets when you switch languages.\r\n\r\n## `<EmailBuilder>` props\r\n\r\n| Prop | Type | Description |\r\n| --- | --- | --- |\r\n| `initialDocument` | `EmailDocument` | Design to load. Omit to start from a default starter layout; pass `{ settings, blocks: [] }` for a blank canvas. |\r\n| `onSave` | `(doc, html, meta?) => void` | Called on save with the JSON design **and** rendered HTML. With `locales`, the third arg is a `MultiLocaleSaveMeta` carrying every language's design + HTML. |\r\n| `onBack` | `() => void` | Optional back button handler. |\r\n| `locales` | `EmailLocale[]` | Enable multi-language mode: edit a separate design per language with a toolbar switcher. See [Multiple languages](#multiple-languages). |\r\n| `initialDocuments` | `Record<string, EmailDocument>` | Initial design per language, keyed by locale `code`. Missing languages start from the starter layout. |\r\n| `defaultLocale` | `string` | Which language is selected on load (defaults to the first in `locales`). |\r\n| `fieldGroups` | `MergeFieldGroup[]` | Merge-tag groups available to insert. |\r\n| `previewSubstitute` | `(html) => string` | Resolve `{{tokens}}` to sample values in the live preview. |\r\n| `onImageUpload` | `(file) => Promise<string>` | Upload picked images and return a hosted URL; adds an upload button to image/thumbnail fields. Omit for URL-only. |\r\n| `onFileUpload` | `(file) => Promise<string>` | Upload any file for the **File / Download** block and return a hosted URL. Falls back to `onImageUpload` when omitted — one S3 handler serves both. Omit both for URL-only. |\r\n| `canManageLocks` | `boolean` | Full editor (default `true`). `false` = restricted editor: locked blocks are read-only. |\r\n| `customBlocks` | `BlockDefinition[]` | Custom block types from `defineBlock` (see [Custom blocks](#custom-blocks-plugin-api)). |\r\n| `blockPresets` | `BlockPreset[]` | Reusable pre-filled blocks shown in the sidebar's **Presets** group (see [Block presets](#block-presets)). |\r\n| `canvasShadow` | `boolean` | Draw a drop shadow around the canvas in edit mode (off by default). |\r\n| `t` | `(key) => string` | Translation function for the editor UI. |\r\n\r\n## Block presets\r\n\r\nRegister ready-made, pre-filled blocks your users insert often — boilerplate notices, footers, disclaimers. They appear in a **Presets** group at the top of the sidebar's Components tab and drag / double-click onto the canvas like any other block. Each insertion calls the preset's `create()` and gets a fresh block id, so the same preset can be added any number of times.\r\n\r\n```tsx\r\nimport { EmailBuilder, createBlock } from \"email-block-builder\";\r\n\r\n<EmailBuilder\r\n  blockPresets={[\r\n    {\r\n      id: \"view-online\",\r\n      label: \"View-online notice\",\r\n      create: () => ({ ...createBlock(\"text\"),\r\n        content: 'Αν δεν εμφανίζεται σωστά η εικόνα της πρόσκλησης, <a href=\"{{ViewEmailAsWebPageLink}}\">κάντε κλικ εδώ</a>.' }),\r\n    },\r\n    {\r\n      id: \"unsubscribe\",\r\n      label: \"Unsubscribe notice\",\r\n      create: () => ({ ...createBlock(\"text\"),\r\n        content: 'Εάν δεν επιθυμείτε να λαμβάνετε ενημερωτικά emails, <a href=\"{{UnsubscribeEmailLink}}\">κάντε κλικ εδώ</a>.' }),\r\n    },\r\n  ]}\r\n/>\r\n```\r\n\r\nPresets are plain data — start from `createBlock(type)` and override what you need (any built-in or registered custom `type` works). The exported HTML keeps the embedded `{{merge_tags}}` for send-time substitution. The group label localizes via the `emailBuilder.presets` key.\r\n\r\n## Custom blocks (plugin API)\r\n\r\nRegister your own block types — without forking — by defining them once with `defineBlock`. A definition supplies both how the block **renders to email** (`toHtml`, required) and, optionally, how it behaves **in the editor** (`Canvas`, `Editor`, plus sidebar metadata). Pass the definitions to both `<EmailBuilder customBlocks={…} />` and `renderToHtml(doc, { blocks })`:\r\n\r\n```tsx\r\nimport { defineBlock, EmailBuilder, renderToHtml, type CustomBlock } from \"email-block-builder\";\r\n\r\ninterface ProductCardBlock extends CustomBlock {\r\n  type: \"product-card\";\r\n  title: string;\r\n}\r\n\r\nconst productCard = defineBlock<ProductCardBlock>({\r\n  type: \"product-card\",\r\n\r\n  // Sidebar metadata (optional — falls back to the type string)\r\n  label: \"Product card\",\r\n  description: \"Title + image promo\",\r\n  category: \"content\",          // \"layout\" → Layout tab, otherwise Components tab\r\n  icon: <ShoppingBag className=\"h-4 w-4\" />,\r\n\r\n  // Default data for a freshly-added block (optional)\r\n  create: () => ({ id: \"\", type: \"product-card\", title: \"New product\", padding: { top: 12, right: 16, bottom: 12, left: 16 }, backgroundColor: \"transparent\" }),\r\n\r\n  // How it looks on the editor canvas (optional — falls back to a placeholder)\r\n  Canvas: ({ block }) => <strong>{block.title}</strong>,\r\n\r\n  // Its property-panel editor (optional — falls back to \"no editable properties\")\r\n  Editor: ({ block, update }) => (\r\n    <input value={block.title} onChange={(e) => update({ title: e.target.value })} />\r\n  ),\r\n\r\n  // How it exports to email HTML (required)\r\n  toHtml: (block, ctx) => ctx.wrapRow(`<strong>${ctx.escapeHtml(block.title)}</strong>`),\r\n});\r\n\r\n// Editor:\r\n<EmailBuilder customBlocks={[productCard]} onSave={(doc, html) => …} />\r\n\r\n// Headless render (e.g. on your server) — pass the same definitions:\r\nconst html = renderToHtml(savedDocument, { blocks: [productCard] });\r\n```\r\n\r\nCustom blocks appear in the sidebar, drag/double-click onto the canvas, render via `Canvas`, and edit via `Editor` in the property panel — then export through `toHtml`. Only `type` and `toHtml` are required; omit the editor fields for render-only blocks.\r\n\r\n`ctx` gives you `settings`, `escapeHtml`, `sanitizeRichHtml`, `wrapRow` (the standard padded/background row), and `renderBlock` (for container blocks). Reusing a built-in `type` overrides it; an unrecognized `type` renders to nothing.\r\n\r\n## Testing in real email clients\r\n\r\nThe output targets the broad email-client matrix, but always smoke-test your own templates. Generate a sample (or use your real document):\r\n\r\n```bash\r\nnpm run build && npm run email:sample   # writes examples/sample-email.html\r\n```\r\n\r\nOpen it in a browser, then send it through your ESP — or paste it into Litmus / Email on Acid — and check at least Gmail (web + app), Outlook (Windows desktop), Apple Mail, and iOS Mail. In the editor, the **HTML** tab and the `onSave` callback both hand you this same exported HTML.\r\n\r\n## Validating output\r\n\r\n`validate(doc)` lints a document against common email pitfalls before you send — so you catch problems without round-tripping through a testing service:\r\n\r\n```tsx\r\nimport { validate } from \"email-block-builder\";\r\n\r\nconst issues = validate(document); // ValidationIssue[] — empty means all clear\r\nfor (const i of issues) console.log(`[${i.level}] ${i.code}: ${i.message}`, i.blockId);\r\n\r\n// gate a send on it:\r\nif (issues.some((i) => i.level === \"error\")) throw new Error(\"Fix email issues first\");\r\n```\r\n\r\nEach issue is `{ level: \"error\" | \"warning\" | \"info\", code, message, blockId? }`. Current checks:\r\n\r\n- **Gmail clipping** — rendered HTML over ~102 KB (`size.gmail-clip`).\r\n- **Accessibility** — images missing `alt` (`image.missing-alt`); text/button color contrast below WCAG AA 4.5:1 (`contrast.low`).\r\n- **Links** — non-`https://` links (`link.insecure`); empty CTA targets (`link.empty`).\r\n- **Send-time** — no subject set (`subject.missing`); leftover `{{merge_tags}}` in the output (`token.unresolved`).\r\n\r\nPass `validate(doc, { html })` to lint a specific rendered string, or `{ blocks }` (custom-block renderers) so the size check is accurate.\r\n\r\n## Status & limitations\r\n\r\nThis is an early **0.x** release; the API may change between minor versions.\r\n\r\n- The **renderer** is covered by tests; the **editor UI** is not yet — verify interactions in your app.\r\n- **Sanitization** is a conservative baseline (see above), not a full sanitizer.\r\n- **No dark-mode** handling or **plain-text / multipart** alternative yet.\r\n\r\n## License\r\n\r\nMIT © Ilias Verginis\r\n","readmeFilename":"README.md"}