[{"data":1,"prerenderedAt":663},["ShallowReactive",2],{"mobile-docs-navigation":3,"docs-page:\u002Fmigration\u002Fv3":59,"docs-navigation:en":650},[4,8,12,16,20,30],{"title":5,"path":6,"stem":7},"Getting Started","\u002Fgetting-started","2.getting-started",{"title":9,"path":10,"stem":11},"Writing Diagrams","\u002Fwriting-diagrams","3.writing-diagrams",{"title":13,"path":14,"stem":15},"Configuration","\u002Fconfiguration","4.configuration",{"title":17,"path":18,"stem":19},"Troubleshooting","\u002Ftroubleshooting","5.troubleshooting",{"title":21,"path":22,"stem":23,"children":24,"page":29},"Migration","\u002Fmigration","6.migration",[25],{"title":26,"path":27,"stem":28},"Migration to v3","\u002Fmigration\u002Fv3","6.migration\u002F1.v3",false,{"title":31,"path":32,"stem":33,"children":34,"page":29},"Zh","\u002Fzh","zh",[35,39,43,47,51],{"title":36,"path":37,"stem":38},"開始使用","\u002Fzh\u002Fgetting-started","zh\u002F2.getting-started",{"title":40,"path":41,"stem":42},"撰寫圖表","\u002Fzh\u002Fwriting-diagrams","zh\u002F3.writing-diagrams",{"title":44,"path":45,"stem":46},"設定","\u002Fzh\u002Fconfiguration","zh\u002F4.configuration",{"title":48,"path":49,"stem":50},"疑難排解","\u002Fzh\u002Ftroubleshooting","zh\u002F5.troubleshooting",{"title":21,"path":52,"stem":53,"children":54,"page":29},"\u002Fzh\u002Fmigration","zh\u002F6.migration",[55],{"title":56,"path":57,"stem":58},"升級至 v3","\u002Fzh\u002Fmigration\u002Fv3","zh\u002F6.migration\u002F1.v3",{"id":60,"title":26,"body":61,"description":646,"extension":350,"meta":647,"navigation":160,"path":27,"seo":648,"stem":28,"__hash__":649},"docs\u002F6.migration\u002F1.v3.md",{"type":62,"value":63,"toc":635},"minimark",[64,68,85,90,96,196,200,206,237,248,252,265,328,335,339,346,397,410,414,429,436,440,449,538,542,559,563,570,574,631],[65,66,26],"h1",{"id":67},"migration-to-v3",[69,70,71,72,76,77,80,81,84],"p",{},"Version 3 requires Node.js ",[73,74,75],"code",{},">=22.19.0",", Nuxt ",[73,78,79],{},"^4.1.0",", and Nuxt Content ",[73,82,83],{},">=3.5.0 \u003C4.0.0",". Upgrade those dependencies, install the 3.x package, and then apply the configuration changes below.",[86,87,89],"h2",{"id":88},"rename-the-module-key","Rename the module key",[69,91,92,95],{},[73,93,94],{},"contentMermaid"," is the only supported Nuxt configuration key. Replace the v2 compatibility alias everywhere:",[97,98,103],"pre",{"className":99,"code":100,"language":101,"meta":102,"style":102},"language-ts shiki shiki-themes github-light github-dark-high-contrast","\u002F\u002F v2 compatibility alias — removed\nexport default defineNuxtConfig({\n  mermaidContent: { debug: true },\n})\n\n\u002F\u002F v3\nexport default defineNuxtConfig({\n  contentMermaid: { debug: true },\n})\n","ts","",[73,104,105,114,132,149,155,162,168,179,191],{"__ignoreMap":102},[106,107,110],"span",{"class":108,"line":109},"line",1,[106,111,113],{"class":112},"s-wDw","\u002F\u002F v2 compatibility alias — removed\n",[106,115,117,121,124,128],{"class":108,"line":116},2,[106,118,120],{"class":119},"s-kum","export",[106,122,123],{"class":119}," default",[106,125,127],{"class":126},"s_Opv"," defineNuxtConfig",[106,129,131],{"class":130},"sjV9Q","({\n",[106,133,135,139,143,146],{"class":108,"line":134},3,[106,136,138],{"class":137},"skGVy","  mermaidContent: { debug: ",[106,140,142],{"class":141},"sP0c6","true",[106,144,145],{"class":137}," }",[106,147,148],{"class":130},",\n",[106,150,152],{"class":108,"line":151},4,[106,153,154],{"class":130},"})\n",[106,156,158],{"class":108,"line":157},5,[106,159,161],{"emptyLinePlaceholder":160},true,"\n",[106,163,165],{"class":108,"line":164},6,[106,166,167],{"class":112},"\u002F\u002F v3\n",[106,169,171,173,175,177],{"class":108,"line":170},7,[106,172,120],{"class":119},[106,174,123],{"class":119},[106,176,127],{"class":126},[106,178,131],{"class":130},[106,180,182,185,187,189],{"class":108,"line":181},8,[106,183,184],{"class":137},"  contentMermaid: { debug: ",[106,186,142],{"class":141},[106,188,145],{"class":137},[106,190,148],{"class":130},[106,192,194],{"class":108,"line":193},9,[106,195,154],{"class":130},[86,197,199],{"id":198},"keep-module-activation-at-build-time","Keep module activation at build time",[69,201,202,205],{},[73,203,204],{},"contentMermaid.enabled"," decides whether Nuxt installs the Markdown transform and runtime integration. Keep it in Nuxt configuration:",[97,207,209],{"className":99,"code":208,"language":101,"meta":102,"style":102},"export default defineNuxtConfig({\n  contentMermaid: { enabled: false },\n})\n",[73,210,211,221,233],{"__ignoreMap":102},[106,212,213,215,217,219],{"class":108,"line":109},[106,214,120],{"class":119},[106,216,123],{"class":119},[106,218,127],{"class":126},[106,220,131],{"class":130},[106,222,223,226,229,231],{"class":108,"line":116},[106,224,225],{"class":137},"  contentMermaid: { enabled: ",[106,227,228],{"class":141},"false",[106,230,145],{"class":137},[106,232,148],{"class":130},[106,234,235],{"class":108,"line":134},[106,236,154],{"class":130},[69,238,239,240,243,244,247],{},"Do not move ",[73,241,242],{},"enabled"," into ",[73,245,246],{},"runtimeConfig.public.contentMermaid","; changing public runtime data cannot activate or deactivate a module after Nuxt starts.",[86,249,251],{"id":250},"transport-only-pure-data-at-runtime","Transport only pure data at runtime",[69,253,254,256,257,260,261,264],{},[73,255,246],{}," accepts data that Nuxt can serialize: strings, booleans, ",[73,258,259],{},"null",", finite numbers, plain objects, and arrays. Do not put functions, class instances, symbols, ",[73,262,263],{},"undefined",", cycles, or other client-only capabilities there.",[97,266,268],{"className":99,"code":267,"language":101,"meta":102,"style":102},"export default defineNuxtConfig({\n  runtimeConfig: {\n    public: {\n      contentMermaid: {\n        loader: { init: { flowchart: { curve: 'basis' } } },\n      },\n    },\n  },\n})\n",[73,269,270,280,285,290,295,307,312,317,324],{"__ignoreMap":102},[106,271,272,274,276,278],{"class":108,"line":109},[106,273,120],{"class":119},[106,275,123],{"class":119},[106,277,127],{"class":126},[106,279,131],{"class":130},[106,281,282],{"class":108,"line":116},[106,283,284],{"class":137},"  runtimeConfig: {\n",[106,286,287],{"class":108,"line":134},[106,288,289],{"class":137},"    public: {\n",[106,291,292],{"class":108,"line":151},[106,293,294],{"class":137},"      contentMermaid: {\n",[106,296,297,300,304],{"class":108,"line":157},[106,298,299],{"class":137},"        loader: { init: { flowchart: { curve: ",[106,301,303],{"class":302},"srMev","'basis'",[106,305,306],{"class":137}," } } },\n",[106,308,309],{"class":108,"line":164},[106,310,311],{"class":137},"      },\n",[106,313,314],{"class":108,"line":170},[106,315,316],{"class":137},"    },\n",[106,318,319,322],{"class":108,"line":181},[106,320,321],{"class":137},"  }",[106,323,148],{"class":130},[106,325,326],{"class":108,"line":193},[106,327,154],{"class":130},[69,329,330,331,334],{},"Pass a supported client-only value directly to ",[73,332,333],{},"\u003CMermaid :config=\"...\">"," instead.",[86,336,338],{"id":337},"choose-page-or-direct-mermaid-config","Choose page or direct Mermaid config",[69,340,341,342,345],{},"For Content-authored Markdown, put pure-data Mermaid configuration in the page's ",[73,343,344],{},"config"," frontmatter:",[97,347,351],{"className":348,"code":349,"language":350,"meta":102,"style":102},"language-md shiki shiki-themes github-light github-dark-high-contrast","---\nconfig:\n  theme: forest\n---\n\n```mermaid\nflowchart LR\n  Page --> Diagram\n```\n","md",[73,352,353,359,364,369,373,377,382,387,392],{"__ignoreMap":102},[106,354,355],{"class":108,"line":109},[106,356,358],{"class":357},"sg8bY","---\n",[106,360,361],{"class":108,"line":116},[106,362,363],{"class":137},"config:\n",[106,365,366],{"class":108,"line":134},[106,367,368],{"class":137},"  theme: forest\n",[106,370,371],{"class":108,"line":151},[106,372,358],{"class":357},[106,374,375],{"class":108,"line":157},[106,376,161],{"emptyLinePlaceholder":160},[106,378,379],{"class":108,"line":164},[106,380,381],{"class":137},"```mermaid\n",[106,383,384],{"class":108,"line":170},[106,385,386],{"class":137},"flowchart LR\n",[106,388,389],{"class":108,"line":181},[106,390,391],{"class":137},"  Page --> Diagram\n",[106,393,394],{"class":108,"line":193},[106,395,396],{"class":137},"```\n",[69,398,399,400,402,403,406,407,409],{},"For application code, pass ",[73,401,344],{}," directly to the Mermaid component. The component's ",[73,404,405],{},"pageConfig"," and ",[73,408,344],{}," props are alternatives; providing both is a configuration error.",[86,411,413],{"id":412},"account-for-property-presence-merge","Account for property-presence merge",[69,415,416,417,419,420,419,423,419,426,428],{},"In v3, an absent property falls back to the lower configuration layer. A present value replaces it unless both values are plain objects. This means ",[73,418,228],{},", ",[73,421,422],{},"0",[73,424,425],{},"''",[73,427,259],{},", empty arrays, and non-empty arrays are intentional overrides rather than requests for a default.",[69,430,431,432,435],{},"Review configuration that previously relied on ",[73,433,434],{},"defu","-style backfilling, especially empty and falsy values.",[86,437,439],{"id":438},"treat-expand-booleans-as-resets","Treat expand booleans as resets",[69,441,442,406,445,448],{},[73,443,444],{},"expand: true",[73,446,447],{},"expand: false"," reset the complete expand state to the corresponding package preset. An options object patches individual properties.",[97,450,452],{"className":99,"code":451,"language":101,"meta":102,"style":102},"\u002F\u002F A lower layer disabled expansion.\n{ expand: false }\n\n\u002F\u002F This changes the margin but does not re-enable expansion.\n{ expand: { margin: 32 } }\n\n\u002F\u002F Re-enable it explicitly.\n{ expand: { enabled: true, margin: 32 } }\n",[73,453,454,459,476,480,485,505,509,514],{"__ignoreMap":102},[106,455,456],{"class":108,"line":109},[106,457,458],{"class":112},"\u002F\u002F A lower layer disabled expansion.\n",[106,460,461,464,468,471,473],{"class":108,"line":116},[106,462,463],{"class":137},"{ ",[106,465,467],{"class":466},"sMTad","expand",[106,469,470],{"class":137},": ",[106,472,228],{"class":141},[106,474,475],{"class":137}," }\n",[106,477,478],{"class":108,"line":134},[106,479,161],{"emptyLinePlaceholder":160},[106,481,482],{"class":108,"line":151},[106,483,484],{"class":112},"\u002F\u002F This changes the margin but does not re-enable expansion.\n",[106,486,487,489,491,494,497,499,502],{"class":108,"line":157},[106,488,463],{"class":137},[106,490,467],{"class":466},[106,492,493],{"class":137},": { ",[106,495,496],{"class":466},"margin",[106,498,470],{"class":137},[106,500,501],{"class":141},"32",[106,503,504],{"class":137}," } }\n",[106,506,507],{"class":108,"line":164},[106,508,161],{"emptyLinePlaceholder":160},[106,510,511],{"class":108,"line":170},[106,512,513],{"class":112},"\u002F\u002F Re-enable it explicitly.\n",[106,515,516,518,520,522,524,526,528,530,532,534,536],{"class":108,"line":181},[106,517,463],{"class":137},[106,519,467],{"class":466},[106,521,493],{"class":137},[106,523,242],{"class":466},[106,525,470],{"class":137},[106,527,142],{"class":141},[106,529,419],{"class":137},[106,531,496],{"class":466},[106,533,470],{"class":137},[106,535,501],{"class":141},[106,537,504],{"class":137},[86,539,541],{"id":540},"remove-usecolormodetheme","Remove useColorModeTheme",[69,543,544,547,548,406,551,554,555,558],{},[73,545,546],{},"theme.useColorModeTheme"," is accepted in v3 only as a no-op for compatibility. It does not enable or disable color-mode integration, so remove the key. Configure ",[73,549,550],{},"theme.light",[73,552,553],{},"theme.dark","; when ",[73,556,557],{},"@nuxtjs\u002Fcolor-mode"," is installed, integration is automatic.",[86,560,562],{"id":561},"remove-package-root-transform-imports","Remove package-root transform imports",[69,564,565,566,569],{},"Version 3 removes the undocumented package-root export ",[73,567,568],{},"transformMermaidCodeBlocks",". There is no replacement public transform API. Register the Nuxt module and let it own Markdown transformation.",[86,571,573],{"id":572},"migration-checklist","Migration checklist",[575,576,577,581,584,594,600,603,609,612,618,623,628],"ul",{},[578,579,580],"li",{},"Upgrade Node.js, Nuxt, and Nuxt Content to the supported ranges.",[578,582,583],{},"Install the 3.x package.",[578,585,586,587,590,591,593],{},"Replace ",[73,588,589],{},"mermaidContent"," with ",[73,592,94],{},".",[578,595,596,597,599],{},"Keep ",[73,598,242],{}," in build-time module configuration.",[578,601,602],{},"Keep public runtime configuration serializable and pure-data only.",[578,604,605,606,608],{},"Use page configuration for Markdown or direct ",[73,607,344],{}," for Vue, never both on one component.",[578,610,611],{},"Review empty and falsy overrides under property-presence merge.",[578,613,614,615,617],{},"Review ",[73,616,467],{}," boolean resets and re-enable expansion explicitly when needed.",[578,619,620,621,593],{},"Remove ",[73,622,546],{},[578,624,625,626,593],{},"Remove imports of ",[73,627,568],{},[578,629,630],{},"Run a production build and reload a migrated Content route.",[632,633,634],"style",{},"html pre.shiki code .s-wDw, html code.shiki .s-wDw{--shiki-default:#6A737D;--shiki-dark:#BDC4CC}html pre.shiki code .s-kum, html code.shiki .s-kum{--shiki-default:#D73A49;--shiki-dark:#FF9492}html pre.shiki code .s_Opv, html code.shiki .s_Opv{--shiki-default:#6F42C1;--shiki-dark:#DBB7FF}html pre.shiki code .sjV9Q, html code.shiki .sjV9Q{--shiki-default:#24292E;--shiki-dark:#FFB757}html pre.shiki code .skGVy, html code.shiki .skGVy{--shiki-default:#24292E;--shiki-dark:#F0F3F6}html pre.shiki code .sP0c6, html code.shiki .sP0c6{--shiki-default:#005CC5;--shiki-dark:#91CBFF}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 .srMev, html code.shiki .srMev{--shiki-default:#032F62;--shiki-dark:#ADDCFF}html pre.shiki code .sg8bY, html code.shiki .sg8bY{--shiki-default:#005CC5;--shiki-default-font-weight:bold;--shiki-dark:#91CBFF;--shiki-dark-font-weight:bold}html pre.shiki code .sMTad, html code.shiki .sMTad{--shiki-default:#6F42C1;--shiki-dark:#FFB757}",{"title":102,"searchDepth":116,"depth":116,"links":636},[637,638,639,640,641,642,643,644,645],{"id":88,"depth":116,"text":89},{"id":198,"depth":116,"text":199},{"id":250,"depth":116,"text":251},{"id":337,"depth":116,"text":338},{"id":412,"depth":116,"text":413},{"id":438,"depth":116,"text":439},{"id":540,"depth":116,"text":541},{"id":561,"depth":116,"text":562},{"id":572,"depth":116,"text":573},"Update a Nuxt Content Mermaid v2 application for version 3.",{},{"title":26,"description":646},"HCuMHPKpIdT_s9VfkhMUHfYhinqEGY9VUP0BVtaI4sA",[651,653,655,657,659],{"title":5,"path":6,"stem":7,"children":652},[],{"title":9,"path":10,"stem":11,"children":654},[],{"title":13,"path":14,"stem":15,"children":656},[],{"title":17,"path":18,"stem":19,"children":658},[],{"title":21,"path":22,"stem":23,"children":660,"page":29},[661],{"title":26,"path":27,"stem":28,"children":662},[],1786997380387]