[{"data":1,"prerenderedAt":560},["ShallowReactive",2],{"navigation_docs":3,"-getting-started-configuration":81,"-getting-started-configuration-surround":555},[4,27,41,67],{"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},"Installation","\u002Fgetting-started\u002Finstallation","1.getting-started\u002F2.installation",{"title":19,"path":20,"stem":21},"Configuration","\u002Fgetting-started\u002Fconfiguration","1.getting-started\u002F3.configuration",{"title":23,"path":24,"stem":25},"Directory Structure","\u002Fgetting-started\u002Fdirectory-structure","1.getting-started\u002F4.directory-structure",false,{"title":28,"icon":29,"path":30,"stem":31,"children":32,"page":26},"Routing","i-lucide-route","\u002Frouting","2.routing",[33,37],{"title":34,"path":35,"stem":36},"Parallel Routes","\u002Frouting\u002Fparallel-routes","2.routing\u002F1.parallel-routes",{"title":38,"path":39,"stem":40},"Modal Routes","\u002Frouting\u002Fmodal-routes","2.routing\u002F2.modal-routes",{"title":42,"icon":43,"path":44,"stem":45,"children":46,"page":26},"Components","i-lucide-blocks","\u002Fcomponents","3.components",[47,51,55,59,63],{"title":48,"path":49,"stem":50},"\u003CPlusParallelPage \u002F>","\u002Fcomponents\u002Fplus-parallel-page","3.components\u002F1.plus-parallel-page",{"title":52,"path":53,"stem":54},"\u003CPlusModalApp \u002F>","\u002Fcomponents\u002Fplus-modal-app","3.components\u002F2.plus-modal-app",{"title":56,"path":57,"stem":58},"\u003CPlusModalNuxtPage \u002F>","\u002Fcomponents\u002Fplus-modal-nuxt-page","3.components\u002F3.plus-modal-nuxt-page",{"title":60,"path":61,"stem":62},"\u003CPlusModalPage \u002F>","\u002Fcomponents\u002Fplus-modal-page","3.components\u002F4.plus-modal-page",{"title":64,"path":65,"stem":66},"\u003CPlusModalLink \u002F>","\u002Fcomponents\u002Fplus-modal-link","3.components\u002F5.plus-modal-link",{"title":68,"icon":69,"path":70,"stem":71,"children":72,"page":26},"API","i-lucide-braces","\u002Fapi","4.api",[73,77],{"title":74,"path":75,"stem":76},"Composables","\u002Fapi\u002Fcomposables","4.api\u002F2.composables",{"title":78,"path":79,"stem":80},"Interfaces","\u002Fapi\u002Finterfaces","4.api\u002F3.interfaces",{"id":82,"title":19,"body":83,"description":548,"extension":549,"links":550,"meta":551,"navigation":552,"path":20,"seo":553,"stem":21,"__hash__":554},"docs\u002F1.getting-started\u002F3.configuration.md",{"type":84,"value":85,"toc":543},"minimark",[86,156,162,178,188,194,206,224,230,280,283,323,329,341,344,359,366,469,475,486,493,498,510,517,522,534,539],[87,88,94],"pre",{"className":89,"code":90,"filename":91,"language":92,"meta":93,"style":93},"language-ts shiki shiki-themes material-theme-lighter material-theme material-theme-palenight","export default defineNuxtConfig({\n  pagesPlus: {\n    \u002F\u002F Nuxt Pages Plus configuration\n  }\n})\n","nuxt.config.ts","ts","",[95,96,97,121,134,141,147],"code",{"__ignoreMap":93},[98,99,102,106,109,113,117],"span",{"class":100,"line":101},"line",1,[98,103,105],{"class":104},"s7zQu","export",[98,107,108],{"class":104}," default",[98,110,112],{"class":111},"s2Zo4"," defineNuxtConfig",[98,114,116],{"class":115},"sTEyZ","(",[98,118,120],{"class":119},"sMK4o","{\n",[98,122,124,128,131],{"class":100,"line":123},2,[98,125,127],{"class":126},"swJcz","  pagesPlus",[98,129,130],{"class":119},":",[98,132,133],{"class":119}," {\n",[98,135,137],{"class":100,"line":136},3,[98,138,140],{"class":139},"sHwdD","    \u002F\u002F Nuxt Pages Plus configuration\n",[98,142,144],{"class":100,"line":143},4,[98,145,146],{"class":119},"  }\n",[98,148,150,153],{"class":100,"line":149},5,[98,151,152],{"class":119},"}",[98,154,155],{"class":115},")\n",[157,158,160],"h2",{"id":159},"separator",[95,161,159],{},[163,164,165,172],"ul",{},[166,167,168,169],"li",{},"Type: ",[95,170,171],{},"string",[166,173,174,175],{},"Default: ",[95,176,177],{},"@",[179,180,181,182,187],"p",{},"The separator is used to split the parallel route name and the page name. Please read the ",[183,184,186],"a",{"href":185},"\u002Fgetting-started\u002Fdirectory-structure#escape-separator","Directory Structure > Escape @ eparator"," for more information.",[157,189,191],{"id":190},"namedviewsasparallelroutes",[95,192,193],{},"namedViewsAsParallelRoutes",[163,195,196,201],{},[166,197,168,198],{},[95,199,200],{},"boolean",[166,202,174,203],{},[95,204,205],{},"false",[179,207,208,209,212,213,216,217,223],{},"Nuxt ",[95,210,211],{},">= 4.5"," parses ",[95,214,215],{},"name@view.vue"," page files as ",[183,218,222],{"href":219,"rel":220},"https:\u002F\u002Frouter.vuejs.org\u002Fguide\u002Fessentials\u002Fnamed-views.html",[221],"nofollow","vue-router named views"," instead of emitting standalone routes, so Nuxt Pages Plus can no longer detect them as parallel routes by default.",[179,225,226,227,229],{},"Enable this option to keep treating ",[95,228,215],{}," files as parallel routes, like older Nuxt versions did:",[87,231,233],{"className":89,"code":232,"filename":91,"language":92,"meta":93,"style":93},"export default defineNuxtConfig({\n  pagesPlus: {\n    namedViewsAsParallelRoutes: true,\n  },\n})\n",[95,234,235,247,255,269,274],{"__ignoreMap":93},[98,236,237,239,241,243,245],{"class":100,"line":101},[98,238,105],{"class":104},[98,240,108],{"class":104},[98,242,112],{"class":111},[98,244,116],{"class":115},[98,246,120],{"class":119},[98,248,249,251,253],{"class":100,"line":123},[98,250,127],{"class":126},[98,252,130],{"class":119},[98,254,133],{"class":119},[98,256,257,260,262,266],{"class":100,"line":136},[98,258,259],{"class":126},"    namedViewsAsParallelRoutes",[98,261,130],{"class":119},[98,263,265],{"class":264},"sfNiH"," true",[98,267,268],{"class":119},",\n",[98,270,271],{"class":100,"line":143},[98,272,273],{"class":119},"  },\n",[98,275,276,278],{"class":100,"line":149},[98,277,152],{"class":119},[98,279,155],{"class":115},[179,281,282],{},"Notes:",[163,284,285,303,312],{},[166,286,287,288,290,291,293,294,299,300,302],{},"This option only takes effect on Nuxt ",[95,289,211],{}," with the default ",[95,292,177],{}," ",[183,295,297],{"href":296},"#separator",[95,298,159],{},". Older Nuxt versions always emit ",[95,301,215],{}," files as parallel routes, regardless of this option.",[166,304,305,306,308,309,311],{},"When this option is not set and ",[95,307,215],{}," files are detected as named views, a warning will be printed during build. Set the option to ",[95,310,205],{}," explicitly to keep using Nuxt's native named views and dismiss the warning.",[166,313,314,315,318,319,322],{},"Directory style parallel routes (e.g. ",[95,316,317],{},"@foo\u002Findex.vue",") and custom separators (e.g. ",[95,320,321],{},"index+foo.vue",") are not affected by Nuxt's named views and work without this option.",[157,324,326],{"id":325},"parallelpages",[95,327,328],{},"parallelPages",[163,330,331,336],{},[166,332,168,333],{},[95,334,335],{},"Record\u003Cstring, ParallelPageOptions>",[166,337,174,338],{},[95,339,340],{},"{}",[179,342,343],{},"You can configure every parallel route in your project using this option.",[179,345,346,347,350,351,354,355,358],{},"The ",[95,348,349],{},"key"," is the parallel route name, for example you have a ",[95,352,353],{},"~\u002Fpages\u002F@foo"," parallel route, the key should be ",[95,356,357],{},"foo",".",[360,361,363],"h4",{"id":362},"parallelpageoptions",[95,364,365],{},"ParallelPageOptions",[87,367,369],{"className":89,"code":368,"language":92,"meta":93,"style":93},"interface ParallelPageOptions {\n  mode: 'sync' | 'sync-once' | 'manual' \u002F\u002F default: 'sync'\n  index?: string \u002F\u002F default: undefined\n  fallback: boolean | { redirect?: string } \u002F\u002F default: true\n}\n",[95,370,371,383,422,436,464],{"__ignoreMap":93},[98,372,373,377,381],{"class":100,"line":101},[98,374,376],{"class":375},"spNyl","interface",[98,378,380],{"class":379},"sBMFI"," ParallelPageOptions",[98,382,133],{"class":119},[98,384,385,388,390,393,397,400,403,405,408,410,412,414,417,419],{"class":100,"line":123},[98,386,387],{"class":126},"  mode",[98,389,130],{"class":119},[98,391,392],{"class":119}," '",[98,394,396],{"class":395},"sfazB","sync",[98,398,399],{"class":119},"'",[98,401,402],{"class":119}," |",[98,404,392],{"class":119},[98,406,407],{"class":395},"sync-once",[98,409,399],{"class":119},[98,411,402],{"class":119},[98,413,392],{"class":119},[98,415,416],{"class":395},"manual",[98,418,399],{"class":119},[98,420,421],{"class":139}," \u002F\u002F default: 'sync'\n",[98,423,424,427,430,433],{"class":100,"line":136},[98,425,426],{"class":126},"  index",[98,428,429],{"class":119},"?:",[98,431,432],{"class":379}," string",[98,434,435],{"class":139}," \u002F\u002F default: undefined\n",[98,437,438,441,443,446,448,451,454,456,458,461],{"class":100,"line":143},[98,439,440],{"class":126},"  fallback",[98,442,130],{"class":119},[98,444,445],{"class":379}," boolean",[98,447,402],{"class":119},[98,449,450],{"class":119}," {",[98,452,453],{"class":126}," redirect",[98,455,429],{"class":119},[98,457,432],{"class":379},[98,459,460],{"class":119}," }",[98,462,463],{"class":139}," \u002F\u002F default: true\n",[98,465,466],{"class":100,"line":149},[98,467,468],{"class":119},"}\n",[470,471,473],"h5",{"id":472},"mode",[95,474,472],{},[163,476,477,482],{},[166,478,168,479],{},[95,480,481],{},"'sync' | 'sync-once' | 'manual'",[166,483,174,484],{},[95,485,396],{},[179,487,488,489,187],{},"The sync mode of the parallel route. Please read the ",[183,490,492],{"href":491},"\u002Frouting\u002Fparallel-routes#sync-modes","Parallel Routes > Sync Modes",[470,494,496],{"id":495},"index",[95,497,495],{},[163,499,500,505],{},[166,501,168,502],{},[95,503,504],{},"string | undefined",[166,506,174,507],{},[95,508,509],{},"\u002F~index",[179,511,512,513,187],{},"The index page of the parallel route. Please read the ",[183,514,516],{"href":515},"\u002Frouting\u002Fparallel-routes#fallback-mechanism","Parallel Routes > Fallback Mechanism",[470,518,520],{"id":519},"fallback",[95,521,519],{},[163,523,524,529],{},[166,525,168,526],{},[95,527,528],{},"boolean | { redirect?: string }",[166,530,174,531],{},[95,532,533],{},"true",[179,535,536,537,187],{},"The fallback mechanism of the parallel route. Please read the ",[183,538,516],{"href":515},[540,541,542],"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 .s2Zo4, html code.shiki .s2Zo4{--shiki-light:#6182B8;--shiki-default:#82AAFF;--shiki-dark:#82AAFF}html pre.shiki code .sTEyZ, html code.shiki .sTEyZ{--shiki-light:#90A4AE;--shiki-default:#EEFFFF;--shiki-dark:#BABED8}html pre.shiki code .sMK4o, html code.shiki .sMK4o{--shiki-light:#39ADB5;--shiki-default:#89DDFF;--shiki-dark:#89DDFF}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 .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 .sfNiH, html code.shiki .sfNiH{--shiki-light:#FF5370;--shiki-default:#FF9CAC;--shiki-dark:#FF9CAC}html pre.shiki code .spNyl, html code.shiki .spNyl{--shiki-light:#9C3EDA;--shiki-default:#C792EA;--shiki-dark:#C792EA}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}",{"title":93,"searchDepth":123,"depth":123,"links":544},[545,546,547],{"id":159,"depth":123,"text":159},{"id":190,"depth":123,"text":193},{"id":325,"depth":123,"text":328},"Nuxt Pages Plus provides a bunch of options to configure your parallel routes as you like in nuxt.config.","md",null,{},true,{"title":19,"description":548},"oF6Ji_vD6FkTk8DOrKzKSoKHGjb7QX2WkdK-7reZvhA",[556,558],{"title":15,"path":16,"stem":17,"description":557,"children":-1},"Install Nuxt Pages Plus to your Nuxt project using a single line of command using nuxi as shown below.",{"title":23,"path":24,"stem":25,"description":559,"children":-1},"All named parallel routes page files should be placed in the ~\u002Fpages\u002F directory. Nuxt Pages Plus will process these files and generate parallel routes after Nuxt has generated the routes.",1786800920448]