[{"data":1,"prerenderedAt":2170},["ShallowReactive",2],{"navigation":3,"\u002Feditors\u002Ftables":629,"\u002Feditors\u002Ftables-surround":2166},[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":57,"body":631,"description":757,"extension":2161,"links":2162,"meta":2163,"navigation":828,"path":58,"seo":2164,"stem":59,"__hash__":2165},"docs\u002F2.editors\u002F7.tables.md",{"type":632,"value":633,"toc":2150},"minimark",[634,705,726,743,746,751,779,1074,1087,1092,1178,1198,1202,1216,1220,1374,1378,1404,2043,2054,2067,2071,2091,2095,2121,2125,2146],[635,636,637,638,645,646,651,652,655,656,659,660,663,664,667,668,671,672,663,675,678,679,682,683,663,686,689,690,693,694,697,698,663,701,704],"p",{},"Grid product published as ",[639,640,641],"strong",{},[642,643,644],"code",{},"on-codemerge\u002Ftables",". Thin app entry uses a shell ViewPort and ",[639,647,648],{},[642,649,650],{},"TablePlugin({ surface: 'workspace' })",", which mounts a custom grid engine (sparse Excel-like sheet, sort \u002F filter \u002F search \u002F resize \u002F selection \u002F virtualization \u002F clipboard \u002F CSV, optional remote ",[642,653,654],{},"source",") plus optional Raw JSON into ",[642,657,658],{},"contentTarget",". Interchange via ",[642,661,662],{},"getText"," \u002F ",[642,665,666],{},"setText"," (pretty ",[642,669,670],{},"TableGridDoc"," JSON), ",[642,673,674],{},"getHTML()",[642,676,677],{},"setHTML()"," (",[642,680,681],{},"\u003Ctable>","), and ",[642,684,685],{},"getMd()",[642,687,688],{},"setMd()"," (GFM pipe table). ",[642,691,692],{},"setHtml"," is an alias of ",[642,695,696],{},"setHTML","; ",[642,699,700],{},"getMarkdown",[642,702,703],{},"setMarkdown"," match the shared Editor API.",[635,706,707,708,711,712,715,716,719,720,722,723,725],{},"WYSIWYG ",[639,709,710],{},"Insert Table"," mounts the same ",[642,713,714],{},"tableGrid"," sheet as an in-document atom (",[642,717,718],{},"TablePlugin({ surface: 'atom' })","). HTML\u002FMarkdown still interchange as ",[642,721,681],{}," \u002F GFM. A constrained Tables product (",[642,724,644],{},") uses the sheet as the whole document.",[635,727,728,731,732,734,735,738,739,742],{},[639,729,730],{},"Stretch"," (default) fills the editor width and ",[642,733,674],{}," uses ",[642,736,737],{},"width:100%",". ",[639,740,741],{},"Fixed"," keeps stored column widths in both the grid and the HTML preview. Toggle on the toolbar or the status chip.",[744,745],"tables-editor-component",{},[747,748,750],"h2",{"id":749},"install","Install",[752,753,758],"pre",{"className":754,"code":755,"language":756,"meta":757,"style":757},"language-bash shiki shiki-themes material-theme-lighter material-theme material-theme-palenight","npm install --save on-codemerge\n","bash","",[642,759,760],{"__ignoreMap":757},[761,762,765,769,773,776],"span",{"class":763,"line":764},"line",1,[761,766,768],{"class":767},"sBMFI","npm",[761,770,772],{"class":771},"sfazB"," install",[761,774,775],{"class":771}," --save",[761,777,778],{"class":771}," on-codemerge\n",[752,780,784],{"className":781,"code":782,"language":783,"meta":757,"style":757},"language-ts shiki shiki-themes material-theme-lighter material-theme material-theme-palenight","import { Editor, createDefaultPlugins } from 'on-codemerge\u002Ftables';\n\nconst host = document.getElementById('tables-editor')!;\nconst editor = new Editor(host, {\n  chrome: 'bar',\n  plugins: createDefaultPlugins(), \u002F\u002F TablePlugin({ surface: 'workspace' })\n});\n\neditor.on('docChanged', () => {\n  console.log(editor.getText());\n});\n\neditor.setText(`{\n  \"version\": 2,\n  \"columns\": [{ \"id\": \"a\", \"title\": \"A\", \"type\": \"text\" }],\n  \"rows\": [{ \"id\": \"r1\", \"cells\": { \"a\": \"\" } }]\n}`);\neditor.destroy();\n","ts",[642,785,786,823,830,869,892,912,931,941,946,976,1000,1009,1014,1031,1037,1043,1049,1060],{"__ignoreMap":757},[761,787,788,792,796,800,803,806,809,812,815,817,820],{"class":763,"line":764},[761,789,791],{"class":790},"s7zQu","import",[761,793,795],{"class":794},"sMK4o"," {",[761,797,799],{"class":798},"sTEyZ"," Editor",[761,801,802],{"class":794},",",[761,804,805],{"class":798}," createDefaultPlugins",[761,807,808],{"class":794}," }",[761,810,811],{"class":790}," from",[761,813,814],{"class":794}," '",[761,816,644],{"class":771},[761,818,819],{"class":794},"'",[761,821,822],{"class":794},";\n",[761,824,826],{"class":763,"line":825},2,[761,827,829],{"emptyLinePlaceholder":828},true,"\n",[761,831,833,837,840,843,846,849,853,856,858,861,863,866],{"class":763,"line":832},3,[761,834,836],{"class":835},"spNyl","const",[761,838,839],{"class":798}," host ",[761,841,842],{"class":794},"=",[761,844,845],{"class":798}," document",[761,847,848],{"class":794},".",[761,850,852],{"class":851},"s2Zo4","getElementById",[761,854,855],{"class":798},"(",[761,857,819],{"class":794},[761,859,860],{"class":771},"tables-editor",[761,862,819],{"class":794},[761,864,865],{"class":798},")",[761,867,868],{"class":794},"!;\n",[761,870,872,874,877,879,882,884,887,889],{"class":763,"line":871},4,[761,873,836],{"class":835},[761,875,876],{"class":798}," editor ",[761,878,842],{"class":794},[761,880,881],{"class":794}," new",[761,883,799],{"class":851},[761,885,886],{"class":798},"(host",[761,888,802],{"class":794},[761,890,891],{"class":794}," {\n",[761,893,895,899,902,904,907,909],{"class":763,"line":894},5,[761,896,898],{"class":897},"swJcz","  chrome",[761,900,901],{"class":794},":",[761,903,814],{"class":794},[761,905,906],{"class":771},"bar",[761,908,819],{"class":794},[761,910,911],{"class":794},",\n",[761,913,915,918,920,922,925,927],{"class":763,"line":914},6,[761,916,917],{"class":897},"  plugins",[761,919,901],{"class":794},[761,921,805],{"class":851},[761,923,924],{"class":798},"()",[761,926,802],{"class":794},[761,928,930],{"class":929},"sHwdD"," \u002F\u002F TablePlugin({ surface: 'workspace' })\n",[761,932,934,937,939],{"class":763,"line":933},7,[761,935,936],{"class":794},"}",[761,938,865],{"class":798},[761,940,822],{"class":794},[761,942,944],{"class":763,"line":943},8,[761,945,829],{"emptyLinePlaceholder":828},[761,947,949,952,954,957,959,961,964,966,968,971,974],{"class":763,"line":948},9,[761,950,951],{"class":798},"editor",[761,953,848],{"class":794},[761,955,956],{"class":851},"on",[761,958,855],{"class":798},[761,960,819],{"class":794},[761,962,963],{"class":771},"docChanged",[761,965,819],{"class":794},[761,967,802],{"class":794},[761,969,970],{"class":794}," ()",[761,972,973],{"class":835}," =>",[761,975,891],{"class":794},[761,977,979,982,984,987,989,991,993,995,998],{"class":763,"line":978},10,[761,980,981],{"class":798},"  console",[761,983,848],{"class":794},[761,985,986],{"class":851},"log",[761,988,855],{"class":897},[761,990,951],{"class":798},[761,992,848],{"class":794},[761,994,662],{"class":851},[761,996,997],{"class":897},"())",[761,999,822],{"class":794},[761,1001,1003,1005,1007],{"class":763,"line":1002},11,[761,1004,936],{"class":794},[761,1006,865],{"class":798},[761,1008,822],{"class":794},[761,1010,1012],{"class":763,"line":1011},12,[761,1013,829],{"emptyLinePlaceholder":828},[761,1015,1017,1019,1021,1023,1025,1028],{"class":763,"line":1016},13,[761,1018,951],{"class":798},[761,1020,848],{"class":794},[761,1022,666],{"class":851},[761,1024,855],{"class":798},[761,1026,1027],{"class":794},"`",[761,1029,1030],{"class":771},"{\n",[761,1032,1034],{"class":763,"line":1033},14,[761,1035,1036],{"class":771},"  \"version\": 2,\n",[761,1038,1040],{"class":763,"line":1039},15,[761,1041,1042],{"class":771},"  \"columns\": [{ \"id\": \"a\", \"title\": \"A\", \"type\": \"text\" }],\n",[761,1044,1046],{"class":763,"line":1045},16,[761,1047,1048],{"class":771},"  \"rows\": [{ \"id\": \"r1\", \"cells\": { \"a\": \"\" } }]\n",[761,1050,1052,1054,1056,1058],{"class":763,"line":1051},17,[761,1053,936],{"class":771},[761,1055,1027],{"class":794},[761,1057,865],{"class":798},[761,1059,822],{"class":794},[761,1061,1063,1065,1067,1070,1072],{"class":763,"line":1062},18,[761,1064,951],{"class":798},[761,1066,848],{"class":794},[761,1068,1069],{"class":851},"destroy",[761,1071,924],{"class":798},[761,1073,822],{"class":794},[635,1075,1076,1079,1080,1083,1084,848],{},[642,1077,1078],{},"createView"," defaults to ",[642,1081,1082],{},"createShellView",". Local SPA: ",[642,1085,1086],{},"pnpm dev:tables",[1088,1089,1091],"h3",{"id":1090},"same-plugin-in-wysiwyg","Same plugin in WYSIWYG",[752,1093,1095],{"className":781,"code":1094,"language":783,"meta":757,"style":757},"import { Editor, createDefaultPlugins } from 'on-codemerge';\n\nnew Editor(host, {\n  plugins: [\n    ...createDefaultPlugins(), \u002F\u002F includes TablePlugin({ surface: 'atom' })\n  ],\n});\n",[642,1096,1097,1122,1126,1139,1148,1163,1170],{"__ignoreMap":757},[761,1098,1099,1101,1103,1105,1107,1109,1111,1113,1115,1118,1120],{"class":763,"line":764},[761,1100,791],{"class":790},[761,1102,795],{"class":794},[761,1104,799],{"class":798},[761,1106,802],{"class":794},[761,1108,805],{"class":798},[761,1110,808],{"class":794},[761,1112,811],{"class":790},[761,1114,814],{"class":794},[761,1116,1117],{"class":771},"on-codemerge",[761,1119,819],{"class":794},[761,1121,822],{"class":794},[761,1123,1124],{"class":763,"line":825},[761,1125,829],{"emptyLinePlaceholder":828},[761,1127,1128,1131,1133,1135,1137],{"class":763,"line":832},[761,1129,1130],{"class":794},"new",[761,1132,799],{"class":851},[761,1134,886],{"class":798},[761,1136,802],{"class":794},[761,1138,891],{"class":794},[761,1140,1141,1143,1145],{"class":763,"line":871},[761,1142,917],{"class":897},[761,1144,901],{"class":794},[761,1146,1147],{"class":798}," [\n",[761,1149,1150,1153,1156,1158,1160],{"class":763,"line":894},[761,1151,1152],{"class":794},"    ...",[761,1154,1155],{"class":851},"createDefaultPlugins",[761,1157,924],{"class":798},[761,1159,802],{"class":794},[761,1161,1162],{"class":929}," \u002F\u002F includes TablePlugin({ surface: 'atom' })\n",[761,1164,1165,1168],{"class":763,"line":914},[761,1166,1167],{"class":798},"  ]",[761,1169,911],{"class":794},[761,1171,1172,1174,1176],{"class":763,"line":933},[761,1173,936],{"class":794},[761,1175,865],{"class":798},[761,1177,822],{"class":794},[635,1179,1180,1183,1184,663,1187,1190,1191,1195,1196,848],{},[642,1181,1182],{},"surface: 'atom'"," is the existing prose table (insert popup, context menu, lazy autoload). Hotkeys ",[642,1185,1186],{},"Mod-Shift-t",[642,1188,1189],{},"Mod-Shift-u",". See ",[1192,1193,1194],"a",{"href":124},"Table Plugin"," and ",[1192,1197,15],{"href":16},[1088,1199,1201],{"id":1200},"types","Types",[635,1203,1204,1205,1207,1208,1211,1212,1215],{},"Published types for ",[642,1206,644],{}," expect TypeScript ",[642,1209,1210],{},"moduleResolution: \"bundler\""," (or ",[642,1213,1214],{},"skipLibCheck: true",").",[747,1217,1219],{"id":1218},"document-api","Document API",[1221,1222,1223,1236],"table",{},[1224,1225,1226],"thead",{},[1227,1228,1229,1233],"tr",{},[1230,1231,1232],"th",{},"Method",[1230,1234,1235],{},"Role",[1237,1238,1239,1253,1267,1288,1306,1322,1338,1354,1364],"tbody",{},[1227,1240,1241,1247],{},[1242,1243,1244],"td",{},[642,1245,1246],{},"getText()",[1242,1248,1249,1250,1252],{},"Pretty ",[642,1251,670],{}," JSON",[1227,1254,1255,1260],{},[1242,1256,1257],{},[642,1258,1259],{},"setText(text)",[1242,1261,1262,1263,1266],{},"Replace SoT; returns ",[642,1264,1265],{},"ParseError | null"," (SoT unchanged on error)",[1227,1268,1269,1279],{},[1242,1270,1271,663,1273,663,1276],{},[642,1272,674],{},[642,1274,1275],{},"setHTML(html)",[642,1277,1278],{},"setHtml(html)",[1242,1280,1281,1282,1285,1286,865],{},"Used SoT as ",[642,1283,1284],{},"\u003Ctable class=\"html-editor-table\">","; load from HTML (first ",[642,1287,681],{},[1227,1289,1290,1303],{},[1242,1291,1292,663,1294,663,1297,663,1300],{},[642,1293,685],{},[642,1295,1296],{},"setMd(md)",[642,1298,1299],{},"getMarkdown()",[642,1301,1302],{},"setMarkdown(md)",[1242,1304,1305],{},"GFM pipe table of used SoT",[1227,1307,1308,1316],{},[1242,1309,1310,663,1313],{},[642,1311,1312],{},"getGrid()",[642,1314,1315],{},"setGrid(doc)",[1242,1317,1318,1319],{},"Typed ",[642,1320,1321],{},"{ version, columns, rows, view?, source? }",[1227,1323,1324,1332],{},[1242,1325,1326,663,1329],{},[642,1327,1328],{},"getJSON()",[642,1330,1331],{},"setJSON(doc)",[1242,1333,1334,1335,865],{},"Kernel document snapshot (",[642,1336,1337],{},"doc → tableGrid",[1227,1339,1340,1351],{},[1242,1341,1342,663,1345,663,1348],{},[642,1343,1344],{},"run",[642,1346,1347],{},"command",[642,1349,1350],{},"use",[1242,1352,1353],{},"Same as WYSIWYG",[1227,1355,1356,1361],{},[1242,1357,1358],{},[642,1359,1360],{},"on('docChanged', …)",[1242,1362,1363],{},"Subscriptions",[1227,1365,1366,1371],{},[1242,1367,1368],{},[642,1369,1370],{},"destroy()",[1242,1372,1373],{},"Tear down",[747,1375,1377],{"id":1376},"document-shape-sot-v2","Document shape (SoT v2)",[635,1379,1380,1381,1384,1385,1387,1388,1391,1392,1391,1395,1391,1398,1391,1401,1403],{},"SoT is ",[642,1382,1383],{},"doc"," → single ",[642,1386,714],{}," child. Payload in flat attrs (",[642,1389,1390],{},"columns",", ",[642,1393,1394],{},"rows",[642,1396,1397],{},"view",[642,1399,1400],{},"version",[642,1402,654],{},"):",[752,1405,1407],{"className":781,"code":1406,"language":783,"meta":757,"style":757},"type TableGridDoc = {\n  version: 2;\n  columns: {\n    id: string;\n    title: string;\n    width?: number;\n    pinned?: 'left' | 'right' | null;\n    type?: 'text' | 'number' | 'boolean';\n  }[];\n  rows: {\n    id: string;\n    cells: Record\u003Cstring, string | number | boolean | null>;\n    parentId?: string | null;\n    styles?: Record\u003C\n      string,\n      {\n        align?: 'left' | 'center' | 'right';\n        background?: string;\n        color?: string;\n        border?: 'none' | 'thin' | 'medium' | 'thick';\n      }\n    >;\n  }[];\n  view?: {\n    sort?: { colId: string; dir: 'asc' | 'desc' }[];\n    filters?: Record\u003Cstring, { op: string; value: unknown }>;\n    quickFilter?: string;\n    columnOrder?: string[];\n    expandedRowIds?: string[];\n    expandedGroupIds?: string[];\n    groupBy?: string[];\n    fit?: 'fill' | 'content';\n    rowHeight?: number;\n  };\n  source?: { url: string; format: 'json' | 'csv'; headers?: boolean; delimiter?: string };\n};\n",[642,1408,1409,1422,1435,1444,1456,1467,1480,1511,1545,1555,1564,1574,1610,1625,1637,1644,1649,1681,1692,1704,1748,1754,1760,1769,1779,1826,1864,1876,1890,1904,1918,1932,1958,1970,1976,2037],{"__ignoreMap":757},[761,1410,1411,1414,1417,1420],{"class":763,"line":764},[761,1412,1413],{"class":835},"type",[761,1415,1416],{"class":767}," TableGridDoc",[761,1418,1419],{"class":794}," =",[761,1421,891],{"class":794},[761,1423,1424,1427,1429,1433],{"class":763,"line":825},[761,1425,1426],{"class":897},"  version",[761,1428,901],{"class":794},[761,1430,1432],{"class":1431},"sbssI"," 2",[761,1434,822],{"class":794},[761,1436,1437,1440,1442],{"class":763,"line":832},[761,1438,1439],{"class":897},"  columns",[761,1441,901],{"class":794},[761,1443,891],{"class":794},[761,1445,1446,1449,1451,1454],{"class":763,"line":871},[761,1447,1448],{"class":897},"    id",[761,1450,901],{"class":794},[761,1452,1453],{"class":767}," string",[761,1455,822],{"class":794},[761,1457,1458,1461,1463,1465],{"class":763,"line":894},[761,1459,1460],{"class":897},"    title",[761,1462,901],{"class":794},[761,1464,1453],{"class":767},[761,1466,822],{"class":794},[761,1468,1469,1472,1475,1478],{"class":763,"line":914},[761,1470,1471],{"class":897},"    width",[761,1473,1474],{"class":794},"?:",[761,1476,1477],{"class":767}," number",[761,1479,822],{"class":794},[761,1481,1482,1485,1487,1489,1492,1494,1497,1499,1502,1504,1506,1509],{"class":763,"line":933},[761,1483,1484],{"class":897},"    pinned",[761,1486,1474],{"class":794},[761,1488,814],{"class":794},[761,1490,1491],{"class":771},"left",[761,1493,819],{"class":794},[761,1495,1496],{"class":794}," |",[761,1498,814],{"class":794},[761,1500,1501],{"class":771},"right",[761,1503,819],{"class":794},[761,1505,1496],{"class":794},[761,1507,1508],{"class":767}," null",[761,1510,822],{"class":794},[761,1512,1513,1516,1518,1520,1523,1525,1527,1529,1532,1534,1536,1538,1541,1543],{"class":763,"line":943},[761,1514,1515],{"class":897},"    type",[761,1517,1474],{"class":794},[761,1519,814],{"class":794},[761,1521,1522],{"class":771},"text",[761,1524,819],{"class":794},[761,1526,1496],{"class":794},[761,1528,814],{"class":794},[761,1530,1531],{"class":771},"number",[761,1533,819],{"class":794},[761,1535,1496],{"class":794},[761,1537,814],{"class":794},[761,1539,1540],{"class":771},"boolean",[761,1542,819],{"class":794},[761,1544,822],{"class":794},[761,1546,1547,1550,1553],{"class":763,"line":948},[761,1548,1549],{"class":794},"  }",[761,1551,1552],{"class":798},"[]",[761,1554,822],{"class":794},[761,1556,1557,1560,1562],{"class":763,"line":978},[761,1558,1559],{"class":897},"  rows",[761,1561,901],{"class":794},[761,1563,891],{"class":794},[761,1565,1566,1568,1570,1572],{"class":763,"line":1002},[761,1567,1448],{"class":897},[761,1569,901],{"class":794},[761,1571,1453],{"class":767},[761,1573,822],{"class":794},[761,1575,1576,1579,1581,1584,1587,1590,1592,1594,1596,1598,1600,1603,1605,1607],{"class":763,"line":1011},[761,1577,1578],{"class":897},"    cells",[761,1580,901],{"class":794},[761,1582,1583],{"class":767}," Record",[761,1585,1586],{"class":794},"\u003C",[761,1588,1589],{"class":767},"string",[761,1591,802],{"class":794},[761,1593,1453],{"class":767},[761,1595,1496],{"class":794},[761,1597,1477],{"class":767},[761,1599,1496],{"class":794},[761,1601,1602],{"class":767}," boolean",[761,1604,1496],{"class":794},[761,1606,1508],{"class":767},[761,1608,1609],{"class":794},">;\n",[761,1611,1612,1615,1617,1619,1621,1623],{"class":763,"line":1016},[761,1613,1614],{"class":897},"    parentId",[761,1616,1474],{"class":794},[761,1618,1453],{"class":767},[761,1620,1496],{"class":794},[761,1622,1508],{"class":767},[761,1624,822],{"class":794},[761,1626,1627,1630,1632,1634],{"class":763,"line":1033},[761,1628,1629],{"class":897},"    styles",[761,1631,1474],{"class":794},[761,1633,1583],{"class":767},[761,1635,1636],{"class":794},"\u003C\n",[761,1638,1639,1642],{"class":763,"line":1039},[761,1640,1641],{"class":767},"      string",[761,1643,911],{"class":794},[761,1645,1646],{"class":763,"line":1045},[761,1647,1648],{"class":794},"      {\n",[761,1650,1651,1654,1656,1658,1660,1662,1664,1666,1669,1671,1673,1675,1677,1679],{"class":763,"line":1051},[761,1652,1653],{"class":897},"        align",[761,1655,1474],{"class":794},[761,1657,814],{"class":794},[761,1659,1491],{"class":771},[761,1661,819],{"class":794},[761,1663,1496],{"class":794},[761,1665,814],{"class":794},[761,1667,1668],{"class":771},"center",[761,1670,819],{"class":794},[761,1672,1496],{"class":794},[761,1674,814],{"class":794},[761,1676,1501],{"class":771},[761,1678,819],{"class":794},[761,1680,822],{"class":794},[761,1682,1683,1686,1688,1690],{"class":763,"line":1062},[761,1684,1685],{"class":897},"        background",[761,1687,1474],{"class":794},[761,1689,1453],{"class":767},[761,1691,822],{"class":794},[761,1693,1695,1698,1700,1702],{"class":763,"line":1694},19,[761,1696,1697],{"class":897},"        color",[761,1699,1474],{"class":794},[761,1701,1453],{"class":767},[761,1703,822],{"class":794},[761,1705,1707,1710,1712,1714,1717,1719,1721,1723,1726,1728,1730,1732,1735,1737,1739,1741,1744,1746],{"class":763,"line":1706},20,[761,1708,1709],{"class":897},"        border",[761,1711,1474],{"class":794},[761,1713,814],{"class":794},[761,1715,1716],{"class":771},"none",[761,1718,819],{"class":794},[761,1720,1496],{"class":794},[761,1722,814],{"class":794},[761,1724,1725],{"class":771},"thin",[761,1727,819],{"class":794},[761,1729,1496],{"class":794},[761,1731,814],{"class":794},[761,1733,1734],{"class":771},"medium",[761,1736,819],{"class":794},[761,1738,1496],{"class":794},[761,1740,814],{"class":794},[761,1742,1743],{"class":771},"thick",[761,1745,819],{"class":794},[761,1747,822],{"class":794},[761,1749,1751],{"class":763,"line":1750},21,[761,1752,1753],{"class":794},"      }\n",[761,1755,1757],{"class":763,"line":1756},22,[761,1758,1759],{"class":794},"    >;\n",[761,1761,1763,1765,1767],{"class":763,"line":1762},23,[761,1764,1549],{"class":794},[761,1766,1552],{"class":798},[761,1768,822],{"class":794},[761,1770,1772,1775,1777],{"class":763,"line":1771},24,[761,1773,1774],{"class":897},"  view",[761,1776,1474],{"class":794},[761,1778,891],{"class":794},[761,1780,1782,1785,1787,1789,1792,1794,1796,1799,1802,1804,1806,1809,1811,1813,1815,1818,1820,1822,1824],{"class":763,"line":1781},25,[761,1783,1784],{"class":897},"    sort",[761,1786,1474],{"class":794},[761,1788,795],{"class":794},[761,1790,1791],{"class":897}," colId",[761,1793,901],{"class":794},[761,1795,1453],{"class":767},[761,1797,1798],{"class":794},";",[761,1800,1801],{"class":897}," dir",[761,1803,901],{"class":794},[761,1805,814],{"class":794},[761,1807,1808],{"class":771},"asc",[761,1810,819],{"class":794},[761,1812,1496],{"class":794},[761,1814,814],{"class":794},[761,1816,1817],{"class":771},"desc",[761,1819,819],{"class":794},[761,1821,808],{"class":794},[761,1823,1552],{"class":798},[761,1825,822],{"class":794},[761,1827,1829,1832,1834,1836,1838,1840,1842,1844,1847,1849,1851,1853,1856,1858,1861],{"class":763,"line":1828},26,[761,1830,1831],{"class":897},"    filters",[761,1833,1474],{"class":794},[761,1835,1583],{"class":767},[761,1837,1586],{"class":794},[761,1839,1589],{"class":767},[761,1841,802],{"class":794},[761,1843,795],{"class":794},[761,1845,1846],{"class":897}," op",[761,1848,901],{"class":794},[761,1850,1453],{"class":767},[761,1852,1798],{"class":794},[761,1854,1855],{"class":897}," value",[761,1857,901],{"class":794},[761,1859,1860],{"class":767}," unknown",[761,1862,1863],{"class":794}," }>;\n",[761,1865,1867,1870,1872,1874],{"class":763,"line":1866},27,[761,1868,1869],{"class":897},"    quickFilter",[761,1871,1474],{"class":794},[761,1873,1453],{"class":767},[761,1875,822],{"class":794},[761,1877,1879,1882,1884,1886,1888],{"class":763,"line":1878},28,[761,1880,1881],{"class":897},"    columnOrder",[761,1883,1474],{"class":794},[761,1885,1453],{"class":767},[761,1887,1552],{"class":798},[761,1889,822],{"class":794},[761,1891,1893,1896,1898,1900,1902],{"class":763,"line":1892},29,[761,1894,1895],{"class":897},"    expandedRowIds",[761,1897,1474],{"class":794},[761,1899,1453],{"class":767},[761,1901,1552],{"class":798},[761,1903,822],{"class":794},[761,1905,1907,1910,1912,1914,1916],{"class":763,"line":1906},30,[761,1908,1909],{"class":897},"    expandedGroupIds",[761,1911,1474],{"class":794},[761,1913,1453],{"class":767},[761,1915,1552],{"class":798},[761,1917,822],{"class":794},[761,1919,1921,1924,1926,1928,1930],{"class":763,"line":1920},31,[761,1922,1923],{"class":897},"    groupBy",[761,1925,1474],{"class":794},[761,1927,1453],{"class":767},[761,1929,1552],{"class":798},[761,1931,822],{"class":794},[761,1933,1935,1938,1940,1942,1945,1947,1949,1951,1954,1956],{"class":763,"line":1934},32,[761,1936,1937],{"class":897},"    fit",[761,1939,1474],{"class":794},[761,1941,814],{"class":794},[761,1943,1944],{"class":771},"fill",[761,1946,819],{"class":794},[761,1948,1496],{"class":794},[761,1950,814],{"class":794},[761,1952,1953],{"class":771},"content",[761,1955,819],{"class":794},[761,1957,822],{"class":794},[761,1959,1961,1964,1966,1968],{"class":763,"line":1960},33,[761,1962,1963],{"class":897},"    rowHeight",[761,1965,1474],{"class":794},[761,1967,1477],{"class":767},[761,1969,822],{"class":794},[761,1971,1973],{"class":763,"line":1972},34,[761,1974,1975],{"class":794},"  };\n",[761,1977,1979,1982,1984,1986,1989,1991,1993,1995,1998,2000,2002,2005,2007,2009,2011,2014,2016,2018,2021,2023,2025,2027,2030,2032,2034],{"class":763,"line":1978},35,[761,1980,1981],{"class":897},"  source",[761,1983,1474],{"class":794},[761,1985,795],{"class":794},[761,1987,1988],{"class":897}," url",[761,1990,901],{"class":794},[761,1992,1453],{"class":767},[761,1994,1798],{"class":794},[761,1996,1997],{"class":897}," format",[761,1999,901],{"class":794},[761,2001,814],{"class":794},[761,2003,2004],{"class":771},"json",[761,2006,819],{"class":794},[761,2008,1496],{"class":794},[761,2010,814],{"class":794},[761,2012,2013],{"class":771},"csv",[761,2015,819],{"class":794},[761,2017,1798],{"class":794},[761,2019,2020],{"class":897}," headers",[761,2022,1474],{"class":794},[761,2024,1602],{"class":767},[761,2026,1798],{"class":794},[761,2028,2029],{"class":897}," delimiter",[761,2031,1474],{"class":794},[761,2033,1453],{"class":767},[761,2035,2036],{"class":794}," };\n",[761,2038,2040],{"class":763,"line":2039},36,[761,2041,2042],{"class":794},"};\n",[635,2044,2045,2046,2049,2050,2053],{},"JSON stores only used rows\u002Fcolumns. Extra columns appear only via Add column (toolbar, header ",[642,2047,2048],{},"+",", or paste). Empty rows below are a visual canvas (",[642,2051,2052],{},"sheetRows","); click \u002F F2 on an empty row materializes SoT. Scroll near the bottom grows that canvas (cap 2000) without writing empty rows.",[635,2055,2056,2057,2060,2061,663,2064,848],{},"Legacy ",[642,2058,2059],{},"{ columns, rows: string[][] }"," is migrated on ",[642,2062,2063],{},"parseText",[642,2065,2066],{},"normalizeTableGrid",[747,2068,2070],{"id":2069},"toolbar-grid-ux","Toolbar & grid UX",[635,2072,2073,2076,2077,2080,2081,2083,2084,2087,2088,848],{},[642,2074,2075],{},"defaultTableToolbar()",": Grid \u002F Raw, add row, Table menu (+col, Format cell, Import URL, Refresh data, Edit source, Export CSV, Search). One-line column header (title left, ← → pin right); header click sorts; column edge drag resizes; row # selects; Ctrl\u002FCmd+C\u002FV copies TSV. Status shows used row count and source host when ",[642,2078,2079],{},"source.url"," is set. ",[642,2082,1189],{}," import URL, ",[642,2085,2086],{},"Mod-Alt-k"," edit source. Raw Apply\u002FDiscard without monkey-patching ",[642,2089,2090],{},"editor.run",[747,2092,2094],{"id":2093},"local-demo","Local demo",[752,2096,2098],{"className":754,"code":2097,"language":756,"meta":757,"style":757},"pnpm dev:tables    # apps\u002Ftables SPA\npnpm build:tables  # → dist-tables\u002F\n",[642,2099,2100,2111],{"__ignoreMap":757},[761,2101,2102,2105,2108],{"class":763,"line":764},[761,2103,2104],{"class":767},"pnpm",[761,2106,2107],{"class":771}," dev:tables",[761,2109,2110],{"class":929},"    # apps\u002Ftables SPA\n",[761,2112,2113,2115,2118],{"class":763,"line":825},[761,2114,2104],{"class":767},[761,2116,2117],{"class":771}," build:tables",[761,2119,2120],{"class":929},"  # → dist-tables\u002F\n",[747,2122,2124],{"id":2123},"see-also","See also",[2126,2127,2128,2134,2139],"ul",{},[2129,2130,2131,2133],"li",{},[1192,2132,15],{"href":16}," — product matrix",[2129,2135,2136,2138],{},[1192,2137,1194],{"href":124}," — atom + workspace options",[2129,2140,2141,2143,2144,865],{},[1192,2142,19],{"href":20}," — WYSIWYG entry (",[642,2145,1117],{},[2147,2148,2149],"style",{},"html pre.shiki code .sBMFI, html code.shiki .sBMFI{--shiki-light:#E2931D;--shiki-default:#FFCB6B;--shiki-dark:#FFCB6B}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 .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 .spNyl, html code.shiki .spNyl{--shiki-light:#9C3EDA;--shiki-default:#C792EA;--shiki-dark:#C792EA}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 .sbssI, html code.shiki .sbssI{--shiki-light:#F76D47;--shiki-default:#F78C6C;--shiki-dark:#F78C6C}",{"title":757,"searchDepth":825,"depth":832,"links":2151},[2152,2156,2157,2158,2159,2160],{"id":749,"depth":825,"text":750,"children":2153},[2154,2155],{"id":1090,"depth":832,"text":1091},{"id":1200,"depth":832,"text":1201},{"id":1218,"depth":825,"text":1219},{"id":1376,"depth":825,"text":1377},{"id":2069,"depth":825,"text":2070},{"id":2093,"depth":825,"text":2094},{"id":2123,"depth":825,"text":2124},"md",null,{},{"title":57,"description":757},"shw7SaLTeom-K13oalwi-5djXua65A4fC2csltDo10E",[2167,2168],{"title":53,"path":54,"stem":55,"description":757,"children":-1},{"title":67,"path":68,"stem":69,"description":2169,"children":-1},"Plugins register onto the core-owned toolbar and use SDK popup \u002F context menu \u002F notify. Prefer createDefaultPlugins() or pick factories explicitly.",1794129103914]