[{"data":1,"prerenderedAt":2000},["ShallowReactive",2],{"navigation":3,"\u002Farchitecture\u002Fsdk":629,"\u002Farchitecture\u002Fsdk-surround":1995},[4,27,60,265,595,625],{"title":5,"icon":6,"path":7,"stem":8,"children":9,"page":26},"Getting started","i-lucide-rocket","\u002Fgetting-started","1.getting-started",[10,14,18,22],{"title":11,"path":12,"stem":13},"Introduction","\u002Fgetting-started\u002Fintroduction","1.getting-started\u002F1.introduction",{"title":15,"path":16,"stem":17},"Editors","\u002Fgetting-started\u002Feditors","1.getting-started\u002F2.editors",{"title":19,"path":20,"stem":21},"Editor API","\u002Fgetting-started\u002Feditor-api","1.getting-started\u002F3.editor-api",{"title":23,"path":24,"stem":25},"Migration v1 → v2","\u002Fgetting-started\u002Fmigration-v1-to-v2","1.getting-started\u002F4.migration-v1-to-v2",false,{"title":15,"icon":28,"path":29,"stem":30,"children":31,"page":26},"i-lucide-layout-panel-left","\u002Feditors","2.editors",[32,36,40,44,48,52,56],{"title":33,"path":34,"stem":35},"JSON Editor","\u002Feditors\u002Fjson","2.editors\u002F1.json",{"title":37,"path":38,"stem":39},"Markdown Editor","\u002Feditors\u002Fmarkdown","2.editors\u002F2.markdown",{"title":41,"path":42,"stem":43},"Code Editor","\u002Feditors\u002Fcode","2.editors\u002F3.code",{"title":45,"path":46,"stem":47},"Forms Editor","\u002Feditors\u002Fforms","2.editors\u002F4.forms",{"title":49,"path":50,"stem":51},"Charts Editor","\u002Feditors\u002Fcharts","2.editors\u002F5.charts",{"title":53,"path":54,"stem":55},"Calendar Editor","\u002Feditors\u002Fcalendar","2.editors\u002F6.calendar",{"title":57,"path":58,"stem":59},"Tables Editor","\u002Feditors\u002Ftables","2.editors\u002F7.tables",{"title":61,"icon":62,"path":63,"stem":64,"children":65,"page":26},"Plugins","i-lucide-puzzle","\u002Fplugins","3.plugins",[66,70,108,154,180,210,235],{"title":67,"path":68,"stem":69},"Plugins overview","\u002Fplugins\u002Foverview","3.plugins\u002F1.overview",{"title":71,"icon":72,"path":73,"stem":74,"children":75,"page":26},"Formatting","i-lucide-type","\u002Fplugins\u002Fformatting","3.plugins\u002F2.formatting",[76,80,84,88,92,96,100,104],{"title":77,"path":78,"stem":79},"Default marks","\u002Fplugins\u002Fformatting\u002Ftoolbar","3.plugins\u002F2.formatting\u002F1.toolbar",{"title":81,"path":82,"stem":83},"Font","\u002Fplugins\u002Fformatting\u002Ffont","3.plugins\u002F2.formatting\u002F2.font",{"title":85,"path":86,"stem":87},"Typography","\u002Fplugins\u002Fformatting\u002Ftypography","3.plugins\u002F2.formatting\u002F3.typography",{"title":89,"path":90,"stem":91},"Color","\u002Fplugins\u002Fformatting\u002Fcolor","3.plugins\u002F2.formatting\u002F4.color",{"title":93,"path":94,"stem":95},"Clear Styles","\u002Fplugins\u002Fformatting\u002Fclear-styles","3.plugins\u002F2.formatting\u002F5.clear-styles",{"title":97,"path":98,"stem":99},"Alignment","\u002Fplugins\u002Fformatting\u002Falignment","3.plugins\u002F2.formatting\u002F6.alignment",{"title":101,"path":102,"stem":103},"Block Style","\u002Fplugins\u002Fformatting\u002Fblock-style","3.plugins\u002F2.formatting\u002F7.block-style",{"title":105,"path":106,"stem":107},"Link","\u002Fplugins\u002Fformatting\u002Flink","3.plugins\u002F2.formatting\u002F8.link",{"title":109,"icon":110,"path":111,"stem":112,"children":113,"page":26},"Blocks","i-lucide-blocks","\u002Fplugins\u002Fblocks","3.plugins\u002F3.blocks",[114,118,122,126,130,134,138,142,146,150],{"title":115,"path":116,"stem":117},"Block","\u002Fplugins\u002Fblocks\u002Fblock","3.plugins\u002F3.blocks\u002F01.block",{"title":119,"path":120,"stem":121},"Lists","\u002Fplugins\u002Fblocks\u002Flists","3.plugins\u002F3.blocks\u002F02.lists",{"title":123,"path":124,"stem":125},"Table","\u002Fplugins\u002Fblocks\u002Ftable","3.plugins\u002F3.blocks\u002F03.table",{"title":127,"path":128,"stem":129},"Templates","\u002Fplugins\u002Fblocks\u002Ftemplates","3.plugins\u002F3.blocks\u002F04.templates",{"title":131,"path":132,"stem":133},"Code Block","\u002Fplugins\u002Fblocks\u002Fcode-block","3.plugins\u002F3.blocks\u002F05.code-block",{"title":135,"path":136,"stem":137},"Math","\u002Fplugins\u002Fblocks\u002Fmath","3.plugins\u002F3.blocks\u002F06.math",{"title":139,"path":140,"stem":141},"HTML Viewer","\u002Fplugins\u002Fblocks\u002Fhtml-viewer","3.plugins\u002F3.blocks\u002F07.html-viewer",{"title":143,"path":144,"stem":145},"Footnotes","\u002Fplugins\u002Fblocks\u002Ffootnotes","3.plugins\u002F3.blocks\u002F08.footnotes",{"title":147,"path":148,"stem":149},"Anchor Link","\u002Fplugins\u002Fblocks\u002Fanchor-link","3.plugins\u002F3.blocks\u002F09.anchor-link",{"title":151,"path":152,"stem":153},"Footer","\u002Fplugins\u002Fblocks\u002Ffooter","3.plugins\u002F3.blocks\u002F10.footer",{"title":155,"icon":156,"path":157,"stem":158,"children":159,"page":26},"Media","i-lucide-image","\u002Fplugins\u002Fmedia","3.plugins\u002F4.media",[160,164,168,172,176],{"title":161,"path":162,"stem":163},"Image","\u002Fplugins\u002Fmedia\u002Fimage","3.plugins\u002F4.media\u002F1.image",{"title":165,"path":166,"stem":167},"Video","\u002Fplugins\u002Fmedia\u002Fvideo","3.plugins\u002F4.media\u002F2.video",{"title":169,"path":170,"stem":171},"YouTube Video","\u002Fplugins\u002Fmedia\u002Fyoutube-video","3.plugins\u002F4.media\u002F3.youtube-video",{"title":173,"path":174,"stem":175},"File Upload","\u002Fplugins\u002Fmedia\u002Ffile-upload","3.plugins\u002F4.media\u002F4.file-upload",{"title":177,"path":178,"stem":179},"PDF Embed","\u002Fplugins\u002Fmedia\u002Fpdf-embed","3.plugins\u002F4.media\u002F5.pdf-embed",{"title":181,"icon":182,"path":183,"stem":184,"children":185,"page":26},"Data & embeds","i-lucide-database","\u002Fplugins\u002Fdata","3.plugins\u002F5.data",[186,190,194,198,202,206],{"title":187,"path":188,"stem":189},"JSON","\u002Fplugins\u002Fdata\u002Fjson","3.plugins\u002F5.data\u002F1.json",{"title":191,"path":192,"stem":193},"Markdown","\u002Fplugins\u002Fdata\u002Fmarkdown","3.plugins\u002F5.data\u002F2.markdown",{"title":195,"path":196,"stem":197},"Charts","\u002Fplugins\u002Fdata\u002Fcharts","3.plugins\u002F5.data\u002F3.charts",{"title":199,"path":200,"stem":201},"Form Builder","\u002Fplugins\u002Fdata\u002Fform-builder","3.plugins\u002F5.data\u002F4.form-builder",{"title":203,"path":204,"stem":205},"Calendar","\u002Fplugins\u002Fdata\u002Fcalendar","3.plugins\u002F5.data\u002F5.calendar",{"title":207,"path":208,"stem":209},"Timer","\u002Fplugins\u002Fdata\u002Ftimer","3.plugins\u002F5.data\u002F6.timer",{"title":211,"icon":212,"path":213,"stem":214,"children":215,"page":26},"Collaboration","i-lucide-users","\u002Fplugins\u002Fcollaboration","3.plugins\u002F6.collaboration",[216,219,223,227,231],{"title":211,"path":217,"stem":218},"\u002Fplugins\u002Fcollaboration\u002Fcollaboration","3.plugins\u002F6.collaboration\u002F1.collaboration",{"title":220,"path":221,"stem":222},"Comments","\u002Fplugins\u002Fcollaboration\u002Fcomments","3.plugins\u002F6.collaboration\u002F2.comments",{"title":224,"path":225,"stem":226},"Mentions","\u002Fplugins\u002Fcollaboration\u002Fmentions","3.plugins\u002F6.collaboration\u002F3.mentions",{"title":228,"path":229,"stem":230},"Track Changes","\u002Fplugins\u002Fcollaboration\u002Ftrack-changes","3.plugins\u002F6.collaboration\u002F4.track-changes",{"title":232,"path":233,"stem":234},"History","\u002Fplugins\u002Fcollaboration\u002Fhistory","3.plugins\u002F6.collaboration\u002F5.history",{"title":236,"icon":237,"path":238,"stem":239,"children":240,"page":26},"Tools","i-lucide-wrench","\u002Fplugins\u002Ftools","3.plugins\u002F7.tools",[241,245,249,253,257,261],{"title":242,"path":243,"stem":244},"Export","\u002Fplugins\u002Ftools\u002Fexport","3.plugins\u002F7.tools\u002F1.export",{"title":246,"path":247,"stem":248},"Shortcuts","\u002Fplugins\u002Ftools\u002Fshortcuts","3.plugins\u002F7.tools\u002F2.shortcuts",{"title":250,"path":251,"stem":252},"Responsive","\u002Fplugins\u002Ftools\u002Fresponsive","3.plugins\u002F7.tools\u002F3.responsive",{"title":254,"path":255,"stem":256},"Language","\u002Fplugins\u002Ftools\u002Flanguage","3.plugins\u002F7.tools\u002F4.language",{"title":258,"path":259,"stem":260},"Spell Checker","\u002Fplugins\u002Ftools\u002Fspell-checker","3.plugins\u002F7.tools\u002F5.spell-checker",{"title":262,"path":263,"stem":264},"AI Assistant","\u002Fplugins\u002Ftools\u002Fai-assistant","3.plugins\u002F7.tools\u002F6.ai-assistant",{"title":266,"icon":267,"path":268,"stem":269,"children":270,"page":26},"Integrate","i-lucide-plug","\u002Fintegrate","4.integrate",[271,275,305,359,385,423,445,471,493,523,569],{"title":272,"path":273,"stem":274},"Integrate overview","\u002Fintegrate\u002Foverview","4.integrate\u002F01.overview",{"title":276,"icon":277,"path":278,"stem":279,"children":280,"page":26},"Basics","i-lucide-book-open","\u002Fintegrate\u002Fbasics","4.integrate\u002F02.basics",[281,285,289,293,297,301],{"title":282,"path":283,"stem":284},"Persistence","\u002Fintegrate\u002Fbasics\u002Fpersistence","4.integrate\u002F02.basics\u002F1.persistence",{"title":286,"path":287,"stem":288},"Host config","\u002Fintegrate\u002Fbasics\u002Fhost-config","4.integrate\u002F02.basics\u002F2.host-config",{"title":290,"path":291,"stem":292},"Server + Vite","\u002Fintegrate\u002Fbasics\u002Fserver-vite","4.integrate\u002F02.basics\u002F3.server-vite",{"title":294,"path":295,"stem":296},"Meta-frameworks (SSR \u002F CSR)","\u002Fintegrate\u002Fbasics\u002Fmeta-ssr","4.integrate\u002F02.basics\u002F4.meta-ssr",{"title":298,"path":299,"stem":300},"Native \u002F iframe bridge","\u002Fintegrate\u002Fbasics\u002Fnative-bridge","4.integrate\u002F02.basics\u002F5.native-bridge",{"title":302,"path":303,"stem":304},"Chrome & host","\u002Fintegrate\u002Fbasics\u002Fchrome-and-host","4.integrate\u002F02.basics\u002F6.chrome-and-host",{"title":306,"icon":307,"path":308,"stem":309,"children":310,"page":26},"Frontend","i-lucide-monitor","\u002Fintegrate\u002Ffrontend","4.integrate\u002F03.frontend",[311,315,319,323,327,331,335,339,343,347,351,355],{"title":312,"path":313,"stem":314},"React","\u002Fintegrate\u002Ffrontend\u002Freact","4.integrate\u002F03.frontend\u002F01.react",{"title":316,"path":317,"stem":318},"Vue 2","\u002Fintegrate\u002Ffrontend\u002Fvue2","4.integrate\u002F03.frontend\u002F02.vue2",{"title":320,"path":321,"stem":322},"Vue 3","\u002Fintegrate\u002Ffrontend\u002Fvue3","4.integrate\u002F03.frontend\u002F03.vue3",{"title":324,"path":325,"stem":326},"Angular","\u002Fintegrate\u002Ffrontend\u002Fangular","4.integrate\u002F03.frontend\u002F04.angular",{"title":328,"path":329,"stem":330},"Svelte","\u002Fintegrate\u002Ffrontend\u002Fsvelte","4.integrate\u002F03.frontend\u002F05.svelte",{"title":332,"path":333,"stem":334},"Solid.js","\u002Fintegrate\u002Ffrontend\u002Fsolid","4.integrate\u002F03.frontend\u002F06.solid",{"title":336,"path":337,"stem":338},"Preact","\u002Fintegrate\u002Ffrontend\u002Fpreact","4.integrate\u002F03.frontend\u002F07.preact",{"title":340,"path":341,"stem":342},"Lit","\u002Fintegrate\u002Ffrontend\u002Flit","4.integrate\u002F03.frontend\u002F08.lit",{"title":344,"path":345,"stem":346},"Qwik","\u002Fintegrate\u002Ffrontend\u002Fqwik","4.integrate\u002F03.frontend\u002F09.qwik",{"title":348,"path":349,"stem":350},"jQuery","\u002Fintegrate\u002Ffrontend\u002Fjquery","4.integrate\u002F03.frontend\u002F10.jquery",{"title":352,"path":353,"stem":354},"Alpine.js","\u002Fintegrate\u002Ffrontend\u002Falpine","4.integrate\u002F03.frontend\u002F11.alpine",{"title":356,"path":357,"stem":358},"Backbone.js","\u002Fintegrate\u002Ffrontend\u002Fbackbone","4.integrate\u002F03.frontend\u002F12.backbone",{"title":360,"icon":361,"path":362,"stem":363,"children":364,"page":26},"Meta-frameworks","i-lucide-layers","\u002Fintegrate\u002Fmeta-frameworks","4.integrate\u002F04.meta-frameworks",[365,369,373,377,381],{"title":366,"path":367,"stem":368},"Next.js","\u002Fintegrate\u002Fmeta-frameworks\u002Fnext","4.integrate\u002F04.meta-frameworks\u002F1.next",{"title":370,"path":371,"stem":372},"Nuxt 3 \u002F 4","\u002Fintegrate\u002Fmeta-frameworks\u002Fnuxt","4.integrate\u002F04.meta-frameworks\u002F2.nuxt",{"title":374,"path":375,"stem":376},"SvelteKit","\u002Fintegrate\u002Fmeta-frameworks\u002Fsveltekit","4.integrate\u002F04.meta-frameworks\u002F3.sveltekit",{"title":378,"path":379,"stem":380},"Remix","\u002Fintegrate\u002Fmeta-frameworks\u002Fremix","4.integrate\u002F04.meta-frameworks\u002F4.remix",{"title":382,"path":383,"stem":384},"Astro","\u002Fintegrate\u002Fmeta-frameworks\u002Fastro","4.integrate\u002F04.meta-frameworks\u002F5.astro",{"title":386,"icon":387,"path":388,"stem":389,"children":390,"page":26},"Node \u002F edge","i-simple-icons-nodedotjs","\u002Fintegrate\u002Fnode","4.integrate\u002F05.node",[391,395,399,403,407,411,415,419],{"title":392,"path":393,"stem":394},"Express.js","\u002Fintegrate\u002Fnode\u002Fexpress","4.integrate\u002F05.node\u002F1.express",{"title":396,"path":397,"stem":398},"NestJS","\u002Fintegrate\u002Fnode\u002Fnestjs","4.integrate\u002F05.node\u002F2.nestjs",{"title":400,"path":401,"stem":402},"Fastify","\u002Fintegrate\u002Fnode\u002Ffastify","4.integrate\u002F05.node\u002F3.fastify",{"title":404,"path":405,"stem":406},"Hono","\u002Fintegrate\u002Fnode\u002Fhono","4.integrate\u002F05.node\u002F4.hono",{"title":408,"path":409,"stem":410},"Koa","\u002Fintegrate\u002Fnode\u002Fkoa","4.integrate\u002F05.node\u002F5.koa",{"title":412,"path":413,"stem":414},"Bun","\u002Fintegrate\u002Fnode\u002Fbun","4.integrate\u002F05.node\u002F6.bun",{"title":416,"path":417,"stem":418},"Deno","\u002Fintegrate\u002Fnode\u002Fdeno","4.integrate\u002F05.node\u002F7.deno",{"title":420,"path":421,"stem":422},"AdonisJS","\u002Fintegrate\u002Fnode\u002Fadonis","4.integrate\u002F05.node\u002F8.adonis",{"title":424,"icon":425,"path":426,"stem":427,"children":428,"page":26},"Python","i-simple-icons-python","\u002Fintegrate\u002Fpython","4.integrate\u002F06.python",[429,433,437,441],{"title":430,"path":431,"stem":432},"FastAPI","\u002Fintegrate\u002Fpython\u002Ffastapi","4.integrate\u002F06.python\u002F1.fastapi",{"title":434,"path":435,"stem":436},"Django","\u002Fintegrate\u002Fpython\u002Fdjango","4.integrate\u002F06.python\u002F2.django",{"title":438,"path":439,"stem":440},"Python Flask","\u002Fintegrate\u002Fpython\u002Fpython-flask","4.integrate\u002F06.python\u002F3.python-flask",{"title":442,"path":443,"stem":444},"Litestar","\u002Fintegrate\u002Fpython\u002Flitestar","4.integrate\u002F06.python\u002F4.litestar",{"title":446,"icon":447,"path":448,"stem":449,"children":450,"page":26},"PHP","i-simple-icons-php","\u002Fintegrate\u002Fphp","4.integrate\u002F07.php",[451,455,459,463,467],{"title":452,"path":453,"stem":454},"Laravel","\u002Fintegrate\u002Fphp\u002Flaravel","4.integrate\u002F07.php\u002F1.laravel",{"title":456,"path":457,"stem":458},"Symfony","\u002Fintegrate\u002Fphp\u002Fsymfony","4.integrate\u002F07.php\u002F2.symfony",{"title":460,"path":461,"stem":462},"Slim","\u002Fintegrate\u002Fphp\u002Fslim","4.integrate\u002F07.php\u002F3.slim",{"title":464,"path":465,"stem":466},"CakePHP","\u002Fintegrate\u002Fphp\u002Fcakephp","4.integrate\u002F07.php\u002F4.cakephp",{"title":468,"path":469,"stem":470},"CodeIgniter","\u002Fintegrate\u002Fphp\u002Fcodeigniter","4.integrate\u002F07.php\u002F5.codeigniter",{"title":472,"icon":473,"path":474,"stem":475,"children":476,"page":26},"Go","i-simple-icons-go","\u002Fintegrate\u002Fgo","4.integrate\u002F08.go",[477,481,485,489],{"title":478,"path":479,"stem":480},"Go Gin","\u002Fintegrate\u002Fgo\u002Fgo-gin","4.integrate\u002F08.go\u002F1.go-gin",{"title":482,"path":483,"stem":484},"Go Echo","\u002Fintegrate\u002Fgo\u002Fgo-echo","4.integrate\u002F08.go\u002F2.go-echo",{"title":486,"path":487,"stem":488},"Go Fiber","\u002Fintegrate\u002Fgo\u002Fgo-fiber","4.integrate\u002F08.go\u002F3.go-fiber",{"title":490,"path":491,"stem":492},"Go Chi","\u002Fintegrate\u002Fgo\u002Fgo-chi","4.integrate\u002F08.go\u002F4.go-chi",{"title":494,"icon":495,"path":496,"stem":497,"children":498,"page":26},"Rust","i-simple-icons-rust","\u002Fintegrate\u002Frust","4.integrate\u002F09.rust",[499,503,507,511,515,519],{"title":500,"path":501,"stem":502},"Rust Axum","\u002Fintegrate\u002Frust\u002Frust-axum","4.integrate\u002F09.rust\u002F1.rust-axum",{"title":504,"path":505,"stem":506},"Rust Actix-web","\u002Fintegrate\u002Frust\u002Frust-actix","4.integrate\u002F09.rust\u002F2.rust-actix",{"title":508,"path":509,"stem":510},"Rust Rocket","\u002Fintegrate\u002Frust\u002Frust-rocket","4.integrate\u002F09.rust\u002F3.rust-rocket",{"title":512,"path":513,"stem":514},"Rust Warp","\u002Fintegrate\u002Frust\u002Frust-warp","4.integrate\u002F09.rust\u002F4.rust-warp",{"title":516,"path":517,"stem":518},"Rust Poem","\u002Fintegrate\u002Frust\u002Frust-poem","4.integrate\u002F09.rust\u002F5.rust-poem",{"title":520,"path":521,"stem":522},"Rust Loco","\u002Fintegrate\u002Frust\u002Frust-loco","4.integrate\u002F09.rust\u002F6.rust-loco",{"title":524,"icon":525,"path":526,"stem":527,"children":528,"page":26},"JVM \u002F .NET \u002F other","i-lucide-coffee","\u002Fintegrate\u002Fjvm-dotnet","4.integrate\u002F10.jvm-dotnet",[529,533,537,541,545,549,553,557,561,565],{"title":530,"path":531,"stem":532},"Spring Boot","\u002Fintegrate\u002Fjvm-dotnet\u002Fspring","4.integrate\u002F10.jvm-dotnet\u002F01.spring",{"title":534,"path":535,"stem":536},"Quarkus","\u002Fintegrate\u002Fjvm-dotnet\u002Fquarkus","4.integrate\u002F10.jvm-dotnet\u002F02.quarkus",{"title":538,"path":539,"stem":540},"Micronaut","\u002Fintegrate\u002Fjvm-dotnet\u002Fmicronaut","4.integrate\u002F10.jvm-dotnet\u002F03.micronaut",{"title":542,"path":543,"stem":544},"Kotlin Spring Boot","\u002Fintegrate\u002Fjvm-dotnet\u002Fkotlin-spring","4.integrate\u002F10.jvm-dotnet\u002F04.kotlin-spring",{"title":546,"path":547,"stem":548},"Ktor","\u002Fintegrate\u002Fjvm-dotnet\u002Fktor","4.integrate\u002F10.jvm-dotnet\u002F05.ktor",{"title":550,"path":551,"stem":552},"ASP.NET Core","\u002Fintegrate\u002Fjvm-dotnet\u002Faspnet-core","4.integrate\u002F10.jvm-dotnet\u002F06.aspnet-core",{"title":554,"path":555,"stem":556},"Blazor","\u002Fintegrate\u002Fjvm-dotnet\u002Fblazor","4.integrate\u002F10.jvm-dotnet\u002F07.blazor",{"title":558,"path":559,"stem":560},"Phoenix","\u002Fintegrate\u002Fjvm-dotnet\u002Fphoenix","4.integrate\u002F10.jvm-dotnet\u002F08.phoenix",{"title":562,"path":563,"stem":564},"Ruby on Rails","\u002Fintegrate\u002Fjvm-dotnet\u002Frails","4.integrate\u002F10.jvm-dotnet\u002F09.rails",{"title":566,"path":567,"stem":568},"HTMX host","\u002Fintegrate\u002Fjvm-dotnet\u002Fhtmx","4.integrate\u002F10.jvm-dotnet\u002F10.htmx",{"title":570,"icon":571,"path":572,"stem":573,"children":574,"page":26},"Desktop & mobile hosts","i-lucide-smartphone","\u002Fintegrate\u002Fhosts","4.integrate\u002F11.hosts",[575,579,583,587,591],{"title":576,"path":577,"stem":578},"Flutter","\u002Fintegrate\u002Fhosts\u002Fflutter","4.integrate\u002F11.hosts\u002F1.flutter",{"title":580,"path":581,"stem":582},"Electron","\u002Fintegrate\u002Fhosts\u002Felectron","4.integrate\u002F11.hosts\u002F2.electron",{"title":584,"path":585,"stem":586},"Tauri","\u002Fintegrate\u002Fhosts\u002Ftauri","4.integrate\u002F11.hosts\u002F3.tauri",{"title":588,"path":589,"stem":590},"Wails","\u002Fintegrate\u002Fhosts\u002Fwails","4.integrate\u002F11.hosts\u002F4.wails",{"title":592,"path":593,"stem":594},"Capacitor","\u002Fintegrate\u002Fhosts\u002Fcapacitor","4.integrate\u002F11.hosts\u002F5.capacitor",{"title":596,"icon":597,"path":598,"stem":599,"children":600,"page":26},"Architecture","i-lucide-cpu","\u002Farchitecture","5.architecture",[601,605,609,613,617,621],{"title":602,"path":603,"stem":604},"Document model","\u002Farchitecture\u002Fdocument-model","5.architecture\u002F1.document-model",{"title":606,"path":607,"stem":608},"SDK reference","\u002Farchitecture\u002Fsdk","5.architecture\u002F2.sdk",{"title":610,"path":611,"stem":612},"View runtime","\u002Farchitecture\u002Fview","5.architecture\u002F3.view",{"title":614,"path":615,"stem":616},"Authoring plugins","\u002Farchitecture\u002Fauthoring-plugins","5.architecture\u002F4.authoring-plugins",{"title":618,"path":619,"stem":620},"Mermaid","\u002Farchitecture\u002Fmermaid","5.architecture\u002F5.mermaid",{"title":622,"path":623,"stem":624},"Publishing packages","\u002Farchitecture\u002Fpublishing-packages","5.architecture\u002F6.publishing-packages",{"title":626,"path":627,"stem":628},"Changelog","\u002Fchangelog","9.changelog",{"id":630,"title":606,"body":631,"description":1988,"extension":1989,"links":1990,"meta":1991,"navigation":1992,"path":607,"seo":1993,"stem":608,"__hash__":1994},"docs\u002F5.architecture\u002F2.sdk.md",{"type":632,"value":633,"toc":1972},"minimark",[634,653,670,764,784,789,925,929,1008,1033,1038,1202,1320,1332,1340,1350,1444,1448,1504,1509,1513,1610,1628,1635,1741,1748,1755,1870,1875,1879,1934,1938,1968],[635,636,637,638,645,646,649,650,652],"p",{},"Standalone low-level package: ",[639,640,641],"strong",{},[642,643,644],"code",{},"@codemerge\u002Fsdk"," (same API; do ",[639,647,648],{},"not"," install both into one app bundle — dual instances). Workspace sources still resolve via Vite alias ",[642,651,644],{},".",[635,654,655,656,658,659,662,663,665,666,669],{},"Plugins and host apps that need UI primitives, commands, or publish helpers import from here — ",[639,657,648],{}," from ",[642,660,661],{},"on-codemerge\u002Fkernel"," inside a plugin, and ",[639,664,648],{}," from deep ",[642,667,668],{},"src\u002Futils\u002F*"," paths.",[671,672,677],"pre",{"className":673,"code":674,"language":675,"meta":676,"style":676},"language-ts shiki shiki-themes material-theme-lighter material-theme material-theme-palenight","import {\n  definePlugin,\n  core,\n  h,\n  mount,\n  insertAtomAfter,\n  composePublishedDocument,\n} from 'on-codemerge\u002Fsdk';\n","ts","",[642,678,679,692,702,710,718,726,734,742],{"__ignoreMap":676},[680,681,684,688],"span",{"class":682,"line":683},"line",1,[680,685,687],{"class":686},"s7zQu","import",[680,689,691],{"class":690},"sMK4o"," {\n",[680,693,695,699],{"class":682,"line":694},2,[680,696,698],{"class":697},"sTEyZ","  definePlugin",[680,700,701],{"class":690},",\n",[680,703,705,708],{"class":682,"line":704},3,[680,706,707],{"class":697},"  core",[680,709,701],{"class":690},[680,711,713,716],{"class":682,"line":712},4,[680,714,715],{"class":697},"  h",[680,717,701],{"class":690},[680,719,721,724],{"class":682,"line":720},5,[680,722,723],{"class":697},"  mount",[680,725,701],{"class":690},[680,727,729,732],{"class":682,"line":728},6,[680,730,731],{"class":697},"  insertAtomAfter",[680,733,701],{"class":690},[680,735,737,740],{"class":682,"line":736},7,[680,738,739],{"class":697},"  composePublishedDocument",[680,741,701],{"class":690},[680,743,745,748,751,754,758,761],{"class":682,"line":744},8,[680,746,747],{"class":690},"}",[680,749,750],{"class":686}," from",[680,752,753],{"class":690}," '",[680,755,757],{"class":756},"sfazB","on-codemerge\u002Fsdk",[680,759,760],{"class":690},"'",[680,762,763],{"class":690},";\n",[635,765,766,767,772,773,776,777,780,781,783],{},"The ",[639,768,769],{},[642,770,771],{},"Editor"," class and headless HTML\u002FMarkdown IO live on the package root (",[642,774,775],{},"on-codemerge",") — see ",[778,779,19],"a",{"href":20},". This page lists what ",[642,782,757],{}," exports.",[785,786,788],"h2",{"id":787},"packages","Packages",[790,791,792,805],"table",{},[793,794,795],"thead",{},[796,797,798,802],"tr",{},[799,800,801],"th",{},"Import",[799,803,804],{},"Role",[806,807,808,829,838,847,857,866,876,893,905,915],"tbody",{},[796,809,810,815],{},[811,812,813],"td",{},[642,814,775],{},[811,816,817,818,820,821,824,825,828],{},"Product: ",[642,819,771],{},", plugins, CSS, ",[642,822,823],{},"importHTML"," \u002F ",[642,826,827],{},"exportMarkdown",", …",[796,830,831,835],{},[811,832,833],{},[642,834,757],{},[811,836,837],{},"Plugin authoring + UI + publish helpers (compat subpath)",[796,839,840,844],{},[811,841,842],{},[642,843,661],{},[811,845,846],{},"Pure doc\u002Fops via product subpath",[796,848,849,854],{},[811,850,851],{},[642,852,853],{},"on-codemerge\u002Fview",[811,855,856],{},"ViewSpec DOM runtime (product subpath)",[796,858,859,863],{},[811,860,861],{},[642,862,644],{},[811,864,865],{},"Same SDK as a standalone npm package (plugin authors \u002F headless)",[796,867,868,873],{},[811,869,870],{},[642,871,872],{},"@codemerge\u002Fkernel",[811,874,875],{},"Same kernel standalone",[796,877,878,883],{},[811,879,880],{},[642,881,882],{},"@codemerge\u002Fview",[811,884,885,886,824,889,892],{},"Zero-dep ",[642,887,888],{},"h",[642,890,891],{},"mount"," \u002F portals (also re-exported from sdk)",[796,894,895,900],{},[811,896,897],{},[642,898,899],{},"@codemerge\u002Fmermaid",[811,901,902,903],{},"Sync Mermaid-subset SVG — see ",[778,904,618],{"href":619},[796,906,907,912],{},[811,908,909],{},[642,910,911],{},"@codemerge\u002Fhunspell",[811,913,914],{},"Spell engine without the editor",[796,916,917,922],{},[811,918,919],{},[642,920,921],{},"@codemerge\u002Fcollaboration-server",[811,923,924],{},"Authoritative collab server (ops op-log, presence, REST)",[785,926,928],{"id":927},"plugin-authoring","Plugin authoring",[790,930,931,939],{},[793,932,933],{},[796,934,935,937],{},[799,936,242],{},[799,938,804],{},[806,940,941,951,968,978,992],{},[796,942,943,948],{},[811,944,945],{},[642,946,947],{},"definePlugin(def)",[811,949,950],{},"Seal a plugin descriptor",[796,952,953,958],{},[811,954,955],{},[642,956,957],{},"collectPublishNodes(plugins)",[811,959,960,961,964,965],{},"Map ",[642,962,963],{},"data-node"," → ",[642,966,967],{},"PublishNodeDefinition",[796,969,970,975],{},[811,971,972],{},[642,973,974],{},"isDeclarativeWidget",[811,976,977],{},"Type guard for widget defs",[796,979,980,985],{},[811,981,982],{},[642,983,984],{},"createPluginContext",[811,986,987,988,991],{},"Build ",[642,989,990],{},"PluginContext"," (normally Editor-owned)",[796,993,994,1005],{},[811,995,996,824,999,824,1002],{},[642,997,998],{},"DisposableScope",[642,1000,1001],{},"OwnedSlot",[642,1003,1004],{},"teardownOwnable",[811,1006,1007],{},"Lifetime helpers",[635,1009,1010,1013,1014,1017,1018,1017,1021,1017,1024,1017,1027,1030,1031,652],{},[642,1011,1012],{},"PluginDefinition"," may include ",[642,1015,1016],{},"commands",", ",[642,1019,1020],{},"hotkeys",[642,1022,1023],{},"widgets",[642,1025,1026],{},"publish",[642,1028,1029],{},"setup(ctx)",", locales, etc. See ",[778,1032,614],{"href":615},[1034,1035,1037],"h3",{"id":1036},"publish-hooks","Publish hooks",[671,1039,1041],{"className":673,"code":1040,"language":675,"meta":676,"style":676},"definePlugin({\n  name: 'timer',\n  publish: {\n    node: 'timer',\n    runtime: 'timer', \u002F\u002F id in dist\u002Fpublic.js\n    render: (attrs) => h('div', { class: 'timer-widget', attrs: { … } }, […]),\n  },\n});\n",[642,1042,1043,1055,1073,1082,1097,1117,1189,1194],{"__ignoreMap":676},[680,1044,1045,1049,1052],{"class":682,"line":683},[680,1046,1048],{"class":1047},"s2Zo4","definePlugin",[680,1050,1051],{"class":697},"(",[680,1053,1054],{"class":690},"{\n",[680,1056,1057,1061,1064,1066,1069,1071],{"class":682,"line":694},[680,1058,1060],{"class":1059},"swJcz","  name",[680,1062,1063],{"class":690},":",[680,1065,753],{"class":690},[680,1067,1068],{"class":756},"timer",[680,1070,760],{"class":690},[680,1072,701],{"class":690},[680,1074,1075,1078,1080],{"class":682,"line":704},[680,1076,1077],{"class":1059},"  publish",[680,1079,1063],{"class":690},[680,1081,691],{"class":690},[680,1083,1084,1087,1089,1091,1093,1095],{"class":682,"line":712},[680,1085,1086],{"class":1059},"    node",[680,1088,1063],{"class":690},[680,1090,753],{"class":690},[680,1092,1068],{"class":756},[680,1094,760],{"class":690},[680,1096,701],{"class":690},[680,1098,1099,1102,1104,1106,1108,1110,1113],{"class":682,"line":720},[680,1100,1101],{"class":1059},"    runtime",[680,1103,1063],{"class":690},[680,1105,753],{"class":690},[680,1107,1068],{"class":756},[680,1109,760],{"class":690},[680,1111,1112],{"class":690},",",[680,1114,1116],{"class":1115},"sHwdD"," \u002F\u002F id in dist\u002Fpublic.js\n",[680,1118,1119,1122,1124,1127,1131,1134,1138,1141,1143,1145,1148,1150,1152,1155,1158,1160,1162,1165,1167,1169,1172,1174,1176,1179,1181,1184,1187],{"class":682,"line":728},[680,1120,1121],{"class":1047},"    render",[680,1123,1063],{"class":690},[680,1125,1126],{"class":690}," (",[680,1128,1130],{"class":1129},"sHdIc","attrs",[680,1132,1133],{"class":690},")",[680,1135,1137],{"class":1136},"spNyl"," =>",[680,1139,1140],{"class":1047}," h",[680,1142,1051],{"class":697},[680,1144,760],{"class":690},[680,1146,1147],{"class":756},"div",[680,1149,760],{"class":690},[680,1151,1112],{"class":690},[680,1153,1154],{"class":690}," {",[680,1156,1157],{"class":1059}," class",[680,1159,1063],{"class":690},[680,1161,753],{"class":690},[680,1163,1164],{"class":756},"timer-widget",[680,1166,760],{"class":690},[680,1168,1112],{"class":690},[680,1170,1171],{"class":1059}," attrs",[680,1173,1063],{"class":690},[680,1175,1154],{"class":690},[680,1177,1178],{"class":697}," … ",[680,1180,747],{"class":690},[680,1182,1183],{"class":690}," },",[680,1185,1186],{"class":697}," […])",[680,1188,701],{"class":690},[680,1190,1191],{"class":682,"line":736},[680,1192,1193],{"class":690},"  },\n",[680,1195,1196,1198,1200],{"class":682,"line":744},[680,1197,747],{"class":690},[680,1199,1133],{"class":697},[680,1201,763],{"class":690},[790,1203,1204,1212],{},[793,1205,1206],{},[796,1207,1208,1210],{},[799,1209,242],{},[799,1211,804],{},[806,1213,1214,1227,1244,1260,1270,1280,1297,1310],{},[796,1215,1216,1224],{},[811,1217,1218,824,1221],{},[642,1219,1220],{},"definePublishRuntime",[642,1222,1223],{},"registerPublishRuntime",[811,1225,1226],{},"Define \u002F register a page runtime",[796,1228,1229,1237],{},[811,1230,1231,824,1234],{},[642,1232,1233],{},"publishRuntimes",[642,1235,1236],{},"PublishRuntimeRegistry",[811,1238,1239,1240,1243],{},"Boot ",[642,1241,1242],{},"[data-ocm-runtime]"," hosts",[796,1245,1246,1254],{},[811,1247,1248,824,1251],{},[642,1249,1250],{},"readOcmConfig",[642,1252,1253],{},"setOcmConfig",[811,1255,1256,1259],{},[642,1257,1258],{},"data-ocm-config"," JSON",[796,1261,1262,1267],{},[811,1263,1264],{},[642,1265,1266],{},"neededRuntimeIds(html|root)",[811,1268,1269],{},"Which runtimes a fragment needs",[796,1271,1272,1277],{},[811,1273,1274],{},[642,1275,1276],{},"composePublishedDocument({ bodyHtml, cssHref, jsHref })",[811,1278,1279],{},"Full HTML document string",[796,1281,1282,1290],{},[811,1283,1284,824,1287],{},[642,1285,1286],{},"publishedCssHref",[642,1288,1289],{},"publishedJsHref",[811,1291,1292,1293,1296],{},"Default CDN\u002F",[642,1294,1295],{},"dist"," asset URLs",[796,1298,1299,1307],{},[811,1300,1301,824,1304],{},[642,1302,1303],{},"OCM_RUNTIME_ATTR",[642,1305,1306],{},"OCM_CONFIG_ATTR",[811,1308,1309],{},"Attribute name constants",[796,1311,1312,1317],{},[811,1313,1314],{},[642,1315,1316],{},"PUBLISHED_CONTENT_CLASS",[811,1318,1319],{},"Wrapper class for published body",[635,1321,1322,1323,824,1326,824,1329,652],{},"Pair with Editor: ",[642,1324,1325],{},"getPublishedHTML()",[642,1327,1328],{},"getPublishedDocument()",[642,1330,1331],{},"getPublishedJS()",[785,1333,1335,1336,824,1338,1133],{"id":1334},"viewspec-ui-h-mount","ViewSpec UI (",[642,1337,888],{},[642,1339,891],{},[635,1341,1342,1343,824,1346,1349],{},"Build plugin UI with ViewSpec — no ",[642,1344,1345],{},"document.createElement",[642,1347,1348],{},"innerHTML"," in plugins.",[790,1351,1352,1360],{},[793,1353,1354],{},[796,1355,1356,1358],{},[799,1357,242],{},[799,1359,804],{},[806,1361,1362,1371,1383,1402,1418,1428],{},[796,1363,1364,1368],{},[811,1365,1366],{},[642,1367,888],{},[811,1369,1370],{},"Hyperscript elements (string\u002Fnumber children = text)",[796,1372,1373,1378],{},[811,1374,1375],{},[642,1376,1377],{},"foreign",[811,1379,1380,1381,1133],{},"Escape hatch (still mount children with ",[642,1382,888],{},[796,1384,1385,1399],{},[811,1386,1387,824,1390,824,1393,824,1396],{},[642,1388,1389],{},"img",[642,1391,1392],{},"video",[642,1394,1395],{},"iframe",[642,1397,1398],{},"canvas",[811,1400,1401],{},"Typed element helpers",[796,1403,1404,1411],{},[811,1405,1406,824,1408],{},[642,1407,891],{},[642,1409,1410],{},"renderDetached",[811,1412,1413,1414,1417],{},"Attach \u002F detached root (",[642,1415,1416],{},"handle.update"," to refresh)",[796,1419,1420,1425],{},[811,1421,1422],{},[642,1423,1424],{},"viewToHtml",[811,1426,1427],{},"Serialize ViewSpec → HTML string (export boundary)",[796,1429,1430,1441],{},[811,1431,1432,824,1435,824,1438],{},[642,1433,1434],{},"downloadUrl",[642,1436,1437],{},"downloadBlob",[642,1439,1440],{},"pickFile",[811,1442,1443],{},"File download \u002F picker portals",[785,1445,1447],{"id":1446},"portals","Portals",[790,1449,1450,1458],{},[793,1451,1452],{},[796,1453,1454,1456],{},[799,1455,242],{},[799,1457,804],{},[806,1459,1460,1476],{},[796,1461,1462,1473],{},[811,1463,1464,824,1467,824,1470],{},[642,1465,1466],{},"createPortal",[642,1468,1469],{},"teleport",[642,1471,1472],{},"isTeleport",[811,1474,1475],{},"Mount outside the editor host",[796,1477,1478,1489],{},[811,1479,1480,824,1483,824,1486],{},[642,1481,1482],{},"getPortalRoot",[642,1484,1485],{},"setPortalRoot",[642,1487,1488],{},"clearPortalRoot",[811,1490,1491,1492,1017,1495,1017,1498,1017,1501,1133],{},"Named roots (",[642,1493,1494],{},"body",[642,1496,1497],{},"menu",[642,1499,1500],{},"popup",[642,1502,1503],{},"notify",[635,1505,1506,1507,652],{},"Required for shadow DOM \u002F iframe hosts — see ",[778,1508,302],{"href":303},[785,1510,1512],{"id":1511},"chrome-services","Chrome services",[790,1514,1515,1523],{},[793,1516,1517],{},[796,1518,1519,1521],{},[799,1520,242],{},[799,1522,804],{},[806,1524,1525,1535,1548,1558,1568,1587,1600],{},[796,1526,1527,1532],{},[811,1528,1529],{},[642,1530,1531],{},"ToolbarPanel",[811,1533,1534],{},"Core toolbar panel (Editor owns an instance)",[796,1536,1537,1545],{},[811,1538,1539,824,1542],{},[642,1540,1541],{},"PopupService",[642,1543,1544],{},"PopupController",[811,1546,1547],{},"Modal \u002F popup stack",[796,1549,1550,1555],{},[811,1551,1552],{},[642,1553,1554],{},"ContextMenuService",[811,1556,1557],{},"Context menus",[796,1559,1560,1565],{},[811,1561,1562],{},[642,1563,1564],{},"NotifyService",[811,1566,1567],{},"Toasts \u002F confirms",[796,1569,1570,1584],{},[811,1571,1572,824,1575,824,1578,824,1581],{},[642,1573,1574],{},"placeRoot",[642,1576,1577],{},"placeSubmenu",[642,1579,1580],{},"applyPlaceRoot",[642,1582,1583],{},"applyPlaceSubmenu",[811,1585,1586],{},"Menu positioning",[796,1588,1589,1597],{},[811,1590,1591,824,1594],{},[642,1592,1593],{},"studioPaneTabs",[642,1595,1596],{},"syncStudioPanel",[811,1598,1599],{},"Multi-pane studio mobile tabs (Charts\u002FForms\u002F…)",[796,1601,1602,1607],{},[811,1603,1604],{},[642,1605,1606],{},"editorChromeTv",[811,1608,1609],{},"Tailwind-variants tokens for chrome",[635,1611,1612,1613,1017,1616,1017,1619,1017,1622,1017,1625,828],{},"Types: ",[642,1614,1615],{},"ToolbarButton",[642,1617,1618],{},"ToolbarMenuDef",[642,1620,1621],{},"PopupOptions",[642,1623,1624],{},"MenuItem",[642,1626,1627],{},"NotifyOptions",[785,1629,1631,1632],{"id":1630},"commands-core","Commands & ",[642,1633,1634],{},"core",[790,1636,1637,1645],{},[793,1638,1639],{},[796,1640,1641,1643],{},[799,1642,242],{},[799,1644,804],{},[806,1646,1647,1666,1679,1692,1708,1718,1728],{},[796,1648,1649,1653],{},[811,1650,1651],{},[642,1652,1634],{},[811,1654,1655,1656,1017,1659,1017,1662,1665],{},"Kernel facade (",[642,1657,1658],{},"toggleMark",[642,1660,1661],{},"insertText",[642,1663,1664],{},"applyOps",", …)",[796,1667,1668,1676],{},[811,1669,1670,824,1673],{},[642,1671,1672],{},"insertAtomAfter",[642,1674,1675],{},"insertBlockNearSelection",[811,1677,1678],{},"Insert blocks\u002Fatoms",[796,1680,1681,1689],{},[811,1682,1683,824,1686],{},[642,1684,1685],{},"setMarkAttrs",[642,1687,1688],{},"setBlockAttr",[811,1690,1691],{},"Mark \u002F block attrs",[796,1693,1694,1705],{},[811,1695,1696,824,1699,824,1702],{},[642,1697,1698],{},"replaceBlockType",[642,1700,1701],{},"convertBlockType",[642,1703,1704],{},"wrapInList",[811,1706,1707],{},"Structure",[796,1709,1710,1715],{},[811,1711,1712],{},[642,1713,1714],{},"withMarkTarget",[811,1716,1717],{},"Expand caret to word before mark ops",[796,1719,1720,1725],{},[811,1721,1722],{},[642,1723,1724],{},"attrString",[811,1726,1727],{},"Safe string coerce for attrs",[796,1729,1730,1738],{},[811,1731,1732,824,1735],{},[642,1733,1734],{},"findAncestorPath",[642,1736,1737],{},"resolveInsertSite",[811,1739,1740],{},"Path helpers",[785,1742,1744,1747],{"id":1743},"editorapi-type",[642,1745,1746],{},"EditorAPI"," (type)",[635,1749,1750,1751,1754],{},"Plugins receive ",[642,1752,1753],{},"ctx.editor: EditorAPI",". Document boundaries on that surface:",[790,1756,1757,1766],{},[793,1758,1759],{},[796,1760,1761,1764],{},[799,1762,1763],{},"Method",[799,1765,804],{},[806,1767,1768,1781,1794,1806,1822,1838,1856],{},[796,1769,1770,1778],{},[811,1771,1772,824,1775],{},[642,1773,1774],{},"getJSON",[642,1776,1777],{},"setJSON",[811,1779,1780],{},"SoT",[796,1782,1783,1791],{},[811,1784,1785,824,1788],{},[642,1786,1787],{},"getHTML",[642,1789,1790],{},"setHTML",[811,1792,1793],{},"Semantic HTML",[796,1795,1796,1804],{},[811,1797,1798,824,1801],{},[642,1799,1800],{},"getMarkdown",[642,1802,1803],{},"setMarkdown",[811,1805,191],{},[796,1807,1808,1819],{},[811,1809,1810,824,1813,824,1816],{},[642,1811,1812],{},"getPublishedHTML",[642,1814,1815],{},"getPublishedJS",[642,1817,1818],{},"getPublishedDocument",[811,1820,1821],{},"Published page",[796,1823,1824,1835],{},[811,1825,1826,824,1829,824,1832],{},[642,1827,1828],{},"command",[642,1830,1831],{},"run",[642,1833,1834],{},"dispatch",[811,1836,1837],{},"Commands",[796,1839,1840,1853],{},[811,1841,1842,824,1845,824,1848,824,1851],{},[642,1843,1844],{},"toolbar",[642,1846,1847],{},"ui.popup",[642,1849,1850],{},"ui.menu",[642,1852,1503],{},[811,1854,1855],{},"Chrome",[796,1857,1858,1867],{},[811,1859,1860,824,1863,1866],{},[642,1861,1862],{},"t",[642,1864,1865],{},"setLocale"," \u002F …",[811,1868,1869],{},"i18n",[635,1871,1872,1873,652],{},"Full usage examples: ",[778,1874,19],{"href":20},[785,1876,1878],{"id":1877},"css-entry-points-package","CSS entry points (package)",[790,1880,1881,1889],{},[793,1882,1883],{},[796,1884,1885,1887],{},[799,1886,801],{},[799,1888,804],{},[806,1890,1891,1901,1911,1924],{},[796,1892,1893,1898],{},[811,1894,1895],{},[642,1896,1897],{},"on-codemerge\u002Findex.css",[811,1899,1900],{},"Editor chrome (includes SDK + plugin styles)",[796,1902,1903,1908],{},[811,1904,1905],{},[642,1906,1907],{},"on-codemerge\u002Fpublic.css",[811,1909,1910],{},"Published atom skins + prose",[796,1912,1913,1918],{},[811,1914,1915],{},[642,1916,1917],{},"@codemerge\u002Fsdk\u002Fsdk.css",[811,1919,1920,1921,1133],{},"SDK chrome alone (optional; already in ",[642,1922,1923],{},"index.css",[796,1925,1926,1931],{},[811,1927,1928],{},[642,1929,1930],{},"on-codemerge\u002Fpublic.js",[811,1932,1933],{},"Published runtimes bootstrap (timer, calendar, mermaid hydrate, …)",[785,1935,1937],{"id":1936},"related","Related",[1939,1940,1941,1946,1951,1955,1959,1963],"ul",{},[1942,1943,1944],"li",{},[778,1945,614],{"href":615},[1942,1947,1948,1950],{},[778,1949,19],{"href":20}," — HTML \u002F Markdown \u002F published boundaries",[1942,1952,1953],{},[778,1954,610],{"href":611},[1942,1956,1957],{},[778,1958,618],{"href":619},[1942,1960,1961],{},[778,1962,602],{"href":603},[1942,1964,1965],{},[778,1966,1967],{"href":243},"Export plugin",[1969,1970,1971],"style",{},"html pre.shiki code .s7zQu, html code.shiki .s7zQu{--shiki-light:#39ADB5;--shiki-light-font-style:italic;--shiki-default:#89DDFF;--shiki-default-font-style:italic;--shiki-dark:#89DDFF;--shiki-dark-font-style:italic}html pre.shiki code .sMK4o, html code.shiki .sMK4o{--shiki-light:#39ADB5;--shiki-default:#89DDFF;--shiki-dark:#89DDFF}html pre.shiki code .sTEyZ, html code.shiki .sTEyZ{--shiki-light:#90A4AE;--shiki-default:#EEFFFF;--shiki-dark:#BABED8}html pre.shiki code .sfazB, html code.shiki .sfazB{--shiki-light:#91B859;--shiki-default:#C3E88D;--shiki-dark:#C3E88D}html .light .shiki span {color: var(--shiki-light);background: var(--shiki-light-bg);font-style: var(--shiki-light-font-style);font-weight: var(--shiki-light-font-weight);text-decoration: var(--shiki-light-text-decoration);}html.light .shiki span {color: var(--shiki-light);background: var(--shiki-light-bg);font-style: var(--shiki-light-font-style);font-weight: var(--shiki-light-font-weight);text-decoration: var(--shiki-light-text-decoration);}html .default .shiki span {color: var(--shiki-default);background: var(--shiki-default-bg);font-style: var(--shiki-default-font-style);font-weight: var(--shiki-default-font-weight);text-decoration: var(--shiki-default-text-decoration);}html .shiki span {color: var(--shiki-default);background: var(--shiki-default-bg);font-style: var(--shiki-default-font-style);font-weight: var(--shiki-default-font-weight);text-decoration: var(--shiki-default-text-decoration);}html .dark .shiki span {color: var(--shiki-dark);background: var(--shiki-dark-bg);font-style: var(--shiki-dark-font-style);font-weight: var(--shiki-dark-font-weight);text-decoration: var(--shiki-dark-text-decoration);}html.dark .shiki span {color: var(--shiki-dark);background: var(--shiki-dark-bg);font-style: var(--shiki-dark-font-style);font-weight: var(--shiki-dark-font-weight);text-decoration: var(--shiki-dark-text-decoration);}html pre.shiki code .s2Zo4, html code.shiki .s2Zo4{--shiki-light:#6182B8;--shiki-default:#82AAFF;--shiki-dark:#82AAFF}html pre.shiki code .swJcz, html code.shiki .swJcz{--shiki-light:#E53935;--shiki-default:#F07178;--shiki-dark:#F07178}html pre.shiki code .sHwdD, html code.shiki .sHwdD{--shiki-light:#90A4AE;--shiki-light-font-style:italic;--shiki-default:#546E7A;--shiki-default-font-style:italic;--shiki-dark:#676E95;--shiki-dark-font-style:italic}html pre.shiki code .sHdIc, html code.shiki .sHdIc{--shiki-light:#90A4AE;--shiki-light-font-style:italic;--shiki-default:#EEFFFF;--shiki-default-font-style:italic;--shiki-dark:#BABED8;--shiki-dark-font-style:italic}html pre.shiki code .spNyl, html code.shiki .spNyl{--shiki-light:#9C3EDA;--shiki-default:#C792EA;--shiki-dark:#C792EA}",{"title":676,"searchDepth":694,"depth":704,"links":1973},[1974,1975,1978,1980,1981,1982,1984,1986,1987],{"id":787,"depth":694,"text":788},{"id":927,"depth":694,"text":928,"children":1976},[1977],{"id":1036,"depth":704,"text":1037},{"id":1334,"depth":694,"text":1979},"ViewSpec UI (h \u002F mount)",{"id":1446,"depth":694,"text":1447},{"id":1511,"depth":694,"text":1512},{"id":1630,"depth":694,"text":1983},"Commands & core",{"id":1743,"depth":694,"text":1985},"EditorAPI (type)",{"id":1877,"depth":694,"text":1878},{"id":1936,"depth":694,"text":1937},"Published path for apps: on-codemerge\u002Fsdk (bundled into the product package).","md",null,{},true,{"title":606,"description":1988},"Mp8-woij9Z6HTfvoUKi8YjUWqK67NV8ue3a0469UQcY",[1996,1998],{"title":602,"path":603,"stem":604,"description":1997,"children":-1},"Own virtual document kernel for on-codemerge. No ProseMirror \u002F TipTap \u002F Lexical \u002F BlockNote \u002F Slate \u002F CKEditor as foundation.",{"title":610,"path":611,"stem":612,"description":1999,"children":-1},"Tiny zero-dependency DOM runtime: hyperscript h, mount, portals, file helpers, and DisposableScope — without the editor kernel or plugin chrome.",1794129103566]