[{"data":1,"prerenderedAt":2707},["ShallowReactive",2],{"navigation_docs":3,"-content":44,"-content-surround":2702},[4,9,14,19,24,29,34,39],{"title":5,"path":6,"stem":7,"icon":8},"Introduction","\u002Fintroduction","1.introduction","i-lucide-monitor",{"title":10,"path":11,"stem":12,"icon":13},"Setup","\u002Fsetup","2.setup","i-lucide-play",{"title":15,"path":16,"stem":17,"icon":18},"Git Providers","\u002Fgit-providers","3.git-providers","i-lucide-git-branch",{"title":20,"path":21,"stem":22,"icon":23},"Auth Providers","\u002Fauth-providers","4.auth-providers","i-lucide-shield-check",{"title":25,"path":26,"stem":27,"icon":28},"Content Editors","\u002Fcontent","5.content","i-lucide-pen-tool",{"title":30,"path":31,"stem":32,"icon":33},"Media Library","\u002Fmedias","6.medias","i-lucide-image",{"title":35,"path":36,"stem":37,"icon":38},"AI Features","\u002Fai","7.ai","i-lucide-sparkles",{"title":40,"path":41,"stem":42,"icon":43},"Advanced","\u002Fadvanced","9.advanced","i-lucide-settings",{"id":45,"title":46,"body":47,"description":2693,"extension":2694,"links":2695,"meta":2696,"navigation":2697,"path":26,"seo":2698,"stem":27,"__hash__":2701},"docs\u002F5.content.md","Edit your content",{"type":48,"value":49,"toc":2677},"minimark",[50,54,91,99,104,111,125,128,135,151,157,162,251,255,258,261,264,1011,1023,1027,1034,1050,1053,1063,1067,1070,1088,1097,1108,1111,1118,1624,1630,1633,1677,1681,1687,1690,1694,2031,2035,2042,2053,2070,2076,2079,2085,2088,2094,2097,2103,2112,2118,2121,2129,2133,2651,2654,2658,2661,2673],[51,52,53],"p",{},"Nuxt Studio offers a versatile workspace for both developers and content writers, giving them the freedom to choose between our different editors:",[55,56,57,71,84],"ul",{},[58,59,60,65,66,70],"li",{},[61,62,64],"a",{"href":63},"#notion-like-editor-markdown-files","Notion-like editor"," for ",[67,68,69],"code",{},"Markdown"," files",[58,72,73,65,77,80,81,70],{},[61,74,76],{"href":75},"#form-editor","Form editor",[67,78,79],{},"YAML"," and ",[67,82,83],{},"JSON",[58,85,86,90],{},[61,87,89],{"href":88},"#code-editor","Code editor"," for any kind of files (for technical users only)",[51,92,93,94,98],{},"Each editor serves its own purpose. Some users prefer visual editing, while others prefer direct code manipulation. At the end, ",[95,96,97],"strong",{},"Markdown and MDC syntax is the final output"," for both editors, with seamless conversion between visual and code modes.",[100,101,103],"h2",{"id":102},"editor-mode-switching","Editor Mode Switching",[51,105,106,107,110],{},"You can switch between the visual editor and code editor at any time by clicking the ",[95,108,109],{},"actions dropdown"," in the file header (on the right of the breadcrumb):",[55,112,113,119],{},[58,114,115,118],{},[95,116,117],{},"Visual Mode"," - Notion-like editing experience for Markdown and Form editor for YAML\u002FJSON files.",[58,120,121,124],{},[95,122,123],{},"Code Mode"," (Monaco) - Direct Markdown\u002FMDC syntax editing",[51,126,127],{},"Your preference is saved and will be used for all files.",[100,129,131,132,134],{"id":130},"tiptap-visual-editor-markdown-files","TipTap Visual Editor (",[67,133,69],{}," files)",[51,136,137,138,144,145,150],{},"The TipTap visual editor provides a modern Notion-like editing experience for Markdown content, powered by the popular ",[61,139,143],{"href":140,"rel":141},"https:\u002F\u002Ftiptap.dev\u002F",[142],"nofollow","TipTap"," editor integrated by ",[61,146,149],{"href":147,"rel":148},"https:\u002F\u002Fui.nuxt.com\u002Fpro\u002Fcomponents\u002Feditor",[142],"Nuxt UI Editor",".",[152,153],"video",{":controls":154,":loop":154,"src":155,"poster":156},"true","https:\u002F\u002Fres.cloudinary.com\u002Fnuxt\u002Fvideo\u002Fupload\u002Fv1767647099\u002Fstudio\u002Fstudio-demo_eiofld.mp4","\u002Fvideo-thumbnail.jpg",[158,159,161],"h3",{"id":160},"key-features","Key Features",[55,163,164,170,176,182,193,199,205,218,227,233,239,245],{},[58,165,166,169],{},[95,167,168],{},"Rich Text Editing"," - Format text with headings, bold, italic, strikethrough, code, links, and more",[58,171,172,175],{},[95,173,174],{},"MDC Component Support"," - Insert and edit custom Vue components directly in the visual editor",[58,177,178,181],{},[95,179,180],{},"Vue Component Props Editor"," - Visually edit component properties through a form-based interface",[58,183,184,187,188],{},[95,185,186],{},"Data Binding"," - Bind component props to frontmatter variables using the ",[61,189,192],{"href":190,"rel":191},"https:\u002F\u002Fcontent.nuxt.com\u002Fdocs\u002Ffiles\u002Fmarkdown#binding-data",[142],"MDC binding syntax",[58,194,195,198],{},[95,196,197],{},"Span-style Formatting"," - Apply inline text styles using the toolbar button for custom text formatting",[58,200,201,204],{},[95,202,203],{},"Media Integration"," - Browse in media picker to insert images from your library",[58,206,207,210,211,214,215],{},[95,208,209],{},"Emoji Integration"," - Type ",[67,212,213],{},":"," followed by an emoji name to insert emojis, or use the slash command ",[67,216,217],{},"\u002Femoji",[58,219,220,210,223,226],{},[95,221,222],{},"Slash Commands",[67,224,225],{},"\u002F"," to access a menu of formatting options and components",[58,228,229,232],{},[95,230,231],{},"Drag & Drop"," - Reorder content blocks by dragging them",[58,234,235,238],{},[95,236,237],{},"Link Editor"," - Floating popover for editing links with external link support",[58,240,241,244],{},[95,242,243],{},"Toolbar"," - Bubble toolbar appears when you select text, providing quick access to formatting options",[58,246,247,250],{},[95,248,249],{},"Real-time Conversion"," - Seamlessly converts between visual content and MDC\u002FMarkdown syntax",[158,252,254],{"id":253},"integrate-components","Integrate Components",[51,256,257],{},"One of the TipTap visual editor's standout features is its ability to integrate and edit custom Vue components directly within the editor interface.",[152,259],{":controls":154,":loop":154,"src":260,"poster":156,":muted":154},"https:\u002F\u002Fres.cloudinary.com\u002Fnuxt\u002Fvideo\u002Fupload\u002Fv1767981444\u002Fstudio\u002Fvidefinalfainalfinalvibecoding_tjuudu.mp4",[51,262,263],{},"Developers can create visually complex components, and editors can use them without technical knowledge. The visual editor handles component integration seamlessly.",[265,266,268,273,635,639,647,706,710,719,725,821,824,981,985,989],"steps",{"level":267},"4",[269,270,272],"h4",{"id":271},"create-your-component","Create your component",[274,275,281],"pre",{"className":276,"code":277,"filename":278,"language":279,"meta":280,"style":280},"language-vue shiki shiki-themes material-theme-lighter material-theme material-theme-palenight","\u003Ctemplate>\n  \u003Cdiv class=\"flex items-start gap-3\">\n    \u003Cdiv class=\"flex items-center justify-center border rounded-lg p-1.5\">\n      \u003CUIcon :name=\"icon\" \u002F>\n    \u003C\u002Fdiv>\n    \u003Cdiv class=\"flex flex-col\">\n      \u003Ch3 class=\"font-semibold\">\n        \u003Cslot name=\"title\" \u002F>\n      \u003C\u002Fh3>\n      \u003Cspan>\n        \u003Cslot name=\"description\" \u002F>\n      \u003C\u002Fspan>\n    \u003C\u002Fdiv>\n  \u003C\u002Fdiv>\n\u003C\u002Ftemplate>\n\n\u003Cscript setup lang=\"ts\">\ndefineProps({\n  icon: {\n    type: String,\n    default: 'i-lucide-cursor-click',\n  },\n})\n\u003C\u002Fscript>\n","components\u002Fcontent\u002FHomeFeature.vue","vue","",[67,282,283,299,326,347,371,381,401,421,444,454,463,483,492,501,511,521,528,553,567,578,592,611,617,626],{"__ignoreMap":280},[284,285,288,292,296],"span",{"class":286,"line":287},"line",1,[284,289,291],{"class":290},"sMK4o","\u003C",[284,293,295],{"class":294},"swJcz","template",[284,297,298],{"class":290},">\n",[284,300,302,305,308,312,315,318,322,324],{"class":286,"line":301},2,[284,303,304],{"class":290},"  \u003C",[284,306,307],{"class":294},"div",[284,309,311],{"class":310},"spNyl"," class",[284,313,314],{"class":290},"=",[284,316,317],{"class":290},"\"",[284,319,321],{"class":320},"sfazB","flex items-start gap-3",[284,323,317],{"class":290},[284,325,298],{"class":290},[284,327,329,332,334,336,338,340,343,345],{"class":286,"line":328},3,[284,330,331],{"class":290},"    \u003C",[284,333,307],{"class":294},[284,335,311],{"class":310},[284,337,314],{"class":290},[284,339,317],{"class":290},[284,341,342],{"class":320},"flex items-center justify-center border rounded-lg p-1.5",[284,344,317],{"class":290},[284,346,298],{"class":290},[284,348,350,353,356,359,361,363,366,368],{"class":286,"line":349},4,[284,351,352],{"class":290},"      \u003C",[284,354,355],{"class":294},"UIcon",[284,357,358],{"class":310}," :name",[284,360,314],{"class":290},[284,362,317],{"class":290},[284,364,365],{"class":320},"icon",[284,367,317],{"class":290},[284,369,370],{"class":290}," \u002F>\n",[284,372,374,377,379],{"class":286,"line":373},5,[284,375,376],{"class":290},"    \u003C\u002F",[284,378,307],{"class":294},[284,380,298],{"class":290},[284,382,384,386,388,390,392,394,397,399],{"class":286,"line":383},6,[284,385,331],{"class":290},[284,387,307],{"class":294},[284,389,311],{"class":310},[284,391,314],{"class":290},[284,393,317],{"class":290},[284,395,396],{"class":320},"flex flex-col",[284,398,317],{"class":290},[284,400,298],{"class":290},[284,402,404,406,408,410,412,414,417,419],{"class":286,"line":403},7,[284,405,352],{"class":290},[284,407,158],{"class":294},[284,409,311],{"class":310},[284,411,314],{"class":290},[284,413,317],{"class":290},[284,415,416],{"class":320},"font-semibold",[284,418,317],{"class":290},[284,420,298],{"class":290},[284,422,424,427,430,433,435,437,440,442],{"class":286,"line":423},8,[284,425,426],{"class":290},"        \u003C",[284,428,429],{"class":294},"slot",[284,431,432],{"class":310}," name",[284,434,314],{"class":290},[284,436,317],{"class":290},[284,438,439],{"class":320},"title",[284,441,317],{"class":290},[284,443,370],{"class":290},[284,445,447,450,452],{"class":286,"line":446},9,[284,448,449],{"class":290},"      \u003C\u002F",[284,451,158],{"class":294},[284,453,298],{"class":290},[284,455,457,459,461],{"class":286,"line":456},10,[284,458,352],{"class":290},[284,460,284],{"class":294},[284,462,298],{"class":290},[284,464,466,468,470,472,474,476,479,481],{"class":286,"line":465},11,[284,467,426],{"class":290},[284,469,429],{"class":294},[284,471,432],{"class":310},[284,473,314],{"class":290},[284,475,317],{"class":290},[284,477,478],{"class":320},"description",[284,480,317],{"class":290},[284,482,370],{"class":290},[284,484,486,488,490],{"class":286,"line":485},12,[284,487,449],{"class":290},[284,489,284],{"class":294},[284,491,298],{"class":290},[284,493,495,497,499],{"class":286,"line":494},13,[284,496,376],{"class":290},[284,498,307],{"class":294},[284,500,298],{"class":290},[284,502,504,507,509],{"class":286,"line":503},14,[284,505,506],{"class":290},"  \u003C\u002F",[284,508,307],{"class":294},[284,510,298],{"class":290},[284,512,514,517,519],{"class":286,"line":513},15,[284,515,516],{"class":290},"\u003C\u002F",[284,518,295],{"class":294},[284,520,298],{"class":290},[284,522,524],{"class":286,"line":523},16,[284,525,527],{"emptyLinePlaceholder":526},true,"\n",[284,529,531,533,536,539,542,544,546,549,551],{"class":286,"line":530},17,[284,532,291],{"class":290},[284,534,535],{"class":294},"script",[284,537,538],{"class":310}," setup",[284,540,541],{"class":310}," lang",[284,543,314],{"class":290},[284,545,317],{"class":290},[284,547,548],{"class":320},"ts",[284,550,317],{"class":290},[284,552,298],{"class":290},[284,554,556,560,564],{"class":286,"line":555},18,[284,557,559],{"class":558},"s2Zo4","defineProps",[284,561,563],{"class":562},"sTEyZ","(",[284,565,566],{"class":290},"{\n",[284,568,570,573,575],{"class":286,"line":569},19,[284,571,572],{"class":294},"  icon",[284,574,213],{"class":290},[284,576,577],{"class":290}," {\n",[284,579,581,584,586,589],{"class":286,"line":580},20,[284,582,583],{"class":294},"    type",[284,585,213],{"class":290},[284,587,588],{"class":562}," String",[284,590,591],{"class":290},",\n",[284,593,595,598,600,603,606,609],{"class":286,"line":594},21,[284,596,597],{"class":294},"    default",[284,599,213],{"class":290},[284,601,602],{"class":290}," '",[284,604,605],{"class":320},"i-lucide-cursor-click",[284,607,608],{"class":290},"'",[284,610,591],{"class":290},[284,612,614],{"class":286,"line":613},22,[284,615,616],{"class":290},"  },\n",[284,618,620,623],{"class":286,"line":619},23,[284,621,622],{"class":290},"}",[284,624,625],{"class":562},")\n",[284,627,629,631,633],{"class":286,"line":628},24,[284,630,516],{"class":290},[284,632,535],{"class":294},[284,634,298],{"class":290},[269,636,638],{"id":637},"use-in-markdown-with-mdc-syntax","Use in Markdown with MDC syntax",[51,640,641,642,213],{},"Components can be integrated using ",[61,643,646],{"href":644,"rel":645},"https:\u002F\u002Fcontent.nuxt.com\u002Fdocs\u002Ffiles\u002Fmarkdown#mdc-syntax",[142],"MDC syntax",[274,648,653],{"className":649,"code":650,"filename":651,"language":652,"meta":280,"style":280},"language-mdc shiki shiki-themes material-theme-lighter material-theme material-theme-palenight","::home-feature\n  ---\n  icon: i-mdi-vuejs\n  ---\n  #title\n  Embedded Vue components\n  #description\n  Edit slots and props inside the visual editor.\n::\n","content\u002Findex.md","mdc",[67,654,655,663,668,677,681,686,691,696,701],{"__ignoreMap":280},[284,656,657,660],{"class":286,"line":287},[284,658,659],{"class":290},"::",[284,661,662],{"class":294},"home-feature\n",[284,664,665],{"class":286,"line":301},[284,666,667],{"class":562},"  ---\n",[284,669,670,672,674],{"class":286,"line":328},[284,671,572],{"class":294},[284,673,213],{"class":290},[284,675,676],{"class":320}," i-mdi-vuejs\n",[284,678,679],{"class":286,"line":349},[284,680,667],{"class":562},[284,682,683],{"class":286,"line":373},[284,684,685],{"class":310},"  #title\n",[284,687,688],{"class":286,"line":383},[284,689,690],{"class":562},"  Embedded Vue components\n",[284,692,693],{"class":286,"line":403},[284,694,695],{"class":310},"  #description\n",[284,697,698],{"class":286,"line":423},[284,699,700],{"class":562},"  Edit slots and props inside the visual editor.\n",[284,702,703],{"class":286,"line":446},[284,704,705],{"class":290},"::\n",[269,707,709],{"id":708},"ensure-components-are-listed","Ensure components are listed",[51,711,712,713,715,716,718],{},"If your component is not used in a ",[67,714,69],{}," file it won't be available in the components listed with the ",[67,717,225],{}," command.",[51,720,721,722,724],{},"To make sure components are listed with the ",[67,723,225],{}," command, make them globally registered:",[274,726,729],{"className":727,"code":728,"language":548,"meta":280,"style":280},"language-ts shiki shiki-themes material-theme-lighter material-theme material-theme-palenight","export default defineNuxtConfig({\n  components: [\n    {\n      path: '~\u002Fcomponents\u002Fcontent', \u002F\u002Fglobally register all components in the components\u002Fcontents folder\n      global: true,\n    }\n  ],  \n\n})\n",[67,730,731,747,757,762,783,796,801,811,815],{"__ignoreMap":280},[284,732,733,737,740,743,745],{"class":286,"line":287},[284,734,736],{"class":735},"s7zQu","export",[284,738,739],{"class":735}," default",[284,741,742],{"class":558}," defineNuxtConfig",[284,744,563],{"class":562},[284,746,566],{"class":290},[284,748,749,752,754],{"class":286,"line":301},[284,750,751],{"class":294},"  components",[284,753,213],{"class":290},[284,755,756],{"class":562}," [\n",[284,758,759],{"class":286,"line":328},[284,760,761],{"class":290},"    {\n",[284,763,764,767,769,771,774,776,779],{"class":286,"line":349},[284,765,766],{"class":294},"      path",[284,768,213],{"class":290},[284,770,602],{"class":290},[284,772,773],{"class":320},"~\u002Fcomponents\u002Fcontent",[284,775,608],{"class":290},[284,777,778],{"class":290},",",[284,780,782],{"class":781},"sHwdD"," \u002F\u002Fglobally register all components in the components\u002Fcontents folder\n",[284,784,785,788,790,794],{"class":286,"line":373},[284,786,787],{"class":294},"      global",[284,789,213],{"class":290},[284,791,793],{"class":792},"sfNiH"," true",[284,795,591],{"class":290},[284,797,798],{"class":286,"line":383},[284,799,800],{"class":290},"    }\n",[284,802,803,806,808],{"class":286,"line":403},[284,804,805],{"class":562},"  ]",[284,807,778],{"class":290},[284,809,810],{"class":562},"  \n",[284,812,813],{"class":286,"line":423},[284,814,527],{"emptyLinePlaceholder":526},[284,816,817,819],{"class":286,"line":446},[284,818,622],{"class":290},[284,820,625],{"class":562},[51,822,823],{},"or with perhaps more control:",[274,825,827],{"className":727,"code":826,"language":548,"meta":280,"style":280},"export default defineNuxtConfig({\n  hooks: {\n    'components:extend': (components) => {\n      const globals = components.filter(c => ['MyCustomComponent'].includes(c.pascalName))\n\n      globals.forEach(c => c.global = true)\n    }\n  },\n})\n",[67,828,829,841,850,877,933,937,967,971,975],{"__ignoreMap":280},[284,830,831,833,835,837,839],{"class":286,"line":287},[284,832,736],{"class":735},[284,834,739],{"class":735},[284,836,742],{"class":558},[284,838,563],{"class":562},[284,840,566],{"class":290},[284,842,843,846,848],{"class":286,"line":301},[284,844,845],{"class":294},"  hooks",[284,847,213],{"class":290},[284,849,577],{"class":290},[284,851,852,855,858,860,862,865,869,872,875],{"class":286,"line":328},[284,853,854],{"class":290},"    '",[284,856,857],{"class":294},"components:extend",[284,859,608],{"class":290},[284,861,213],{"class":290},[284,863,864],{"class":290}," (",[284,866,868],{"class":867},"sHdIc","components",[284,870,871],{"class":290},")",[284,873,874],{"class":310}," =>",[284,876,577],{"class":290},[284,878,879,882,885,888,891,893,896,898,901,903,906,908,911,913,916,918,921,923,925,927,930],{"class":286,"line":349},[284,880,881],{"class":310},"      const",[284,883,884],{"class":562}," globals",[284,886,887],{"class":290}," =",[284,889,890],{"class":562}," components",[284,892,150],{"class":290},[284,894,895],{"class":558},"filter",[284,897,563],{"class":294},[284,899,900],{"class":867},"c",[284,902,874],{"class":310},[284,904,905],{"class":294}," [",[284,907,608],{"class":290},[284,909,910],{"class":320},"MyCustomComponent",[284,912,608],{"class":290},[284,914,915],{"class":294},"]",[284,917,150],{"class":290},[284,919,920],{"class":558},"includes",[284,922,563],{"class":294},[284,924,900],{"class":562},[284,926,150],{"class":290},[284,928,929],{"class":562},"pascalName",[284,931,932],{"class":294},"))\n",[284,934,935],{"class":286,"line":373},[284,936,527],{"emptyLinePlaceholder":526},[284,938,939,942,944,947,949,951,953,956,958,961,963,965],{"class":286,"line":383},[284,940,941],{"class":562},"      globals",[284,943,150],{"class":290},[284,945,946],{"class":558},"forEach",[284,948,563],{"class":294},[284,950,900],{"class":867},[284,952,874],{"class":310},[284,954,955],{"class":562}," c",[284,957,150],{"class":290},[284,959,960],{"class":562},"global",[284,962,887],{"class":290},[284,964,793],{"class":792},[284,966,625],{"class":294},[284,968,969],{"class":286,"line":403},[284,970,800],{"class":290},[284,972,973],{"class":286,"line":423},[284,974,616],{"class":290},[284,976,977,979],{"class":286,"line":446},[284,978,622],{"class":290},[284,980,625],{"class":562},[982,983,984],"note",{},"Components from external libraries (like Nuxt UI) won't appear in Studio's component list. You can use the same hook to make them available.",[269,986,988],{"id":987},"edit-in-the-visual-editor","Edit in the Visual Editor",[990,991,992,998,1001,1004],"ol",{},[58,993,994,995,997],{},"Type ",[67,996,225],{}," anywhere while editing",[58,999,1000],{},"Search for your component in the list",[58,1002,1003],{},"Insert and edit component slots directly in the editor",[58,1005,1006,1007,1010],{},"Click on any component to open the ",[95,1008,1009],{},"Props Editor"," panel and edit properties visually",[1012,1013,1015,1016,1019,1020,150],"tip",{"to":1014},"\u002Fsetup#editor","Customize which components appear in the editor, restrict icon libraries, and filter built-in slash menu entries using the ",[67,1017,1018],{},"studio.editor"," option in your ",[67,1021,1022],{},"nuxt.config.ts",[158,1024,1026],{"id":1025},"debug-mode","Debug Mode",[51,1028,1029,1030,1033],{},"Enable ",[95,1031,1032],{},"debug mode"," from the footer menu to see the real-time conversion between:",[55,1035,1036,1039,1047],{},[58,1037,1038],{},"TipTap JSON format",[58,1040,1041,1042,871],{},"Comark Tree (the compact array-based AST produced by ",[61,1043,1046],{"href":1044,"rel":1045},"https:\u002F\u002Fgithub.com\u002Fcomarkdown\u002Fcomark",[142],"comark",[58,1048,1049],{},"Final Markdown output",[51,1051,1052],{},"This is useful for understanding how content is transformed and to share troubleshooting.",[1054,1055,1056,1057,1059,1060,150],"prose-note",{},"Studio uses ",[95,1058,1046],{}," as its Markdown parser. When you type in the visual editor, the content flows through: TipTap JSON → ComarkTree → raw Markdown. The ComarkTree is also what gets stored in the browser SQLite database and committed to Git as raw markdown via ",[67,1061,1062],{},"renderMarkdown",[100,1064,1066],{"id":1065},"form-editor","Form Editor",[51,1068,1069],{},"The form editor is used for editing:",[55,1071,1072,1080,1084],{},[58,1073,1074,1077,1078,70],{},[95,1075,1076],{},"Frontmatter"," in ",[67,1079,69],{},[58,1081,1082,70],{},[95,1083,79],{},[58,1085,1086,70],{},[95,1087,83],{},[51,1089,1090,1091,1096],{},"It eliminates the need to interact directly with complex file syntax. Instead, forms are automatically generated based on your Nuxt Content ",[61,1092,1095],{"href":1093,"rel":1094},"https:\u002F\u002Fcontent.nuxt.com\u002Fdocs\u002Fcollections\u002Fdefine",[142],"collection schema"," definition.",[158,1098,1100,1103,1104,1107],{"id":1099},"defining-your-form-with-zod-schema",[95,1101,1102],{},"Defining your form with"," ",[67,1105,1106],{},"zod"," Schema",[982,1109,1110],{"to":1093},"Learn more about schema collection definition in the Nuxt Content documentation.",[51,1112,1113,1114,1117],{},"Once the ",[67,1115,1116],{},"schema"," property has been defined in your collection, this will automatically generate the corresponding form on Studio interface.",[1119,1120,1121,1128],"code-group",{},[307,1122,1125],{"icon":1123,"label":1124},"i-lucide-eye","Generated Form",[152,1126],{":controls":154,":loop":154,"src":1127},"https:\u002F\u002Fres.cloudinary.com\u002Fnuxt\u002Fvideo\u002Fupload\u002Fv1767887481\u002Fstudio\u002Fschemaform_tmd4db.mp4",[274,1129,1132],{"className":727,"code":1130,"filename":1131,"language":548,"meta":280,"style":280},"export default defineContentConfig({\n  collections: {\n    authors: defineCollection({\n      type: 'data',\n      source: 'authors\u002F**\u002F*',\n      schema: z.object({\n        name: z.string(),\n        avatar: z.object({\n          src: z.string().editor({ input: 'media' }),\n          alt: z.string(),\n        }),\n        to: z.string(),\n        username: z.string(),\n        role: z.enum(['creator', 'maintainer', 'contributor']),\n        order: z.number().default(0),\n        birthDate: z.string().date(),\n        lastCommitAt: z.string().datetime(),\n        icon: z.string().editor({\n          input: 'icon',\n          iconLibraries: ['lucide']\n        }),\n        isOpenSourceLover: z.boolean().default(true),\n        modules: z.array(z.string()),\n    })\n  },\n})\n","content.config.ts",[67,1133,1134,1147,1156,1170,1186,1202,1221,1240,1257,1301,1318,1327,1344,1361,1408,1439,1463,1487,1510,1525,1544,1552,1580,1606,1613,1618],{"__ignoreMap":280},[284,1135,1136,1138,1140,1143,1145],{"class":286,"line":287},[284,1137,736],{"class":735},[284,1139,739],{"class":735},[284,1141,1142],{"class":558}," defineContentConfig",[284,1144,563],{"class":562},[284,1146,566],{"class":290},[284,1148,1149,1152,1154],{"class":286,"line":301},[284,1150,1151],{"class":294},"  collections",[284,1153,213],{"class":290},[284,1155,577],{"class":290},[284,1157,1158,1161,1163,1166,1168],{"class":286,"line":328},[284,1159,1160],{"class":294},"    authors",[284,1162,213],{"class":290},[284,1164,1165],{"class":558}," defineCollection",[284,1167,563],{"class":562},[284,1169,566],{"class":290},[284,1171,1172,1175,1177,1179,1182,1184],{"class":286,"line":349},[284,1173,1174],{"class":294},"      type",[284,1176,213],{"class":290},[284,1178,602],{"class":290},[284,1180,1181],{"class":320},"data",[284,1183,608],{"class":290},[284,1185,591],{"class":290},[284,1187,1188,1191,1193,1195,1198,1200],{"class":286,"line":373},[284,1189,1190],{"class":294},"      source",[284,1192,213],{"class":290},[284,1194,602],{"class":290},[284,1196,1197],{"class":320},"authors\u002F**\u002F*",[284,1199,608],{"class":290},[284,1201,591],{"class":290},[284,1203,1204,1207,1209,1212,1214,1217,1219],{"class":286,"line":383},[284,1205,1206],{"class":294},"      schema",[284,1208,213],{"class":290},[284,1210,1211],{"class":562}," z",[284,1213,150],{"class":290},[284,1215,1216],{"class":558},"object",[284,1218,563],{"class":562},[284,1220,566],{"class":290},[284,1222,1223,1226,1228,1230,1232,1235,1238],{"class":286,"line":403},[284,1224,1225],{"class":294},"        name",[284,1227,213],{"class":290},[284,1229,1211],{"class":562},[284,1231,150],{"class":290},[284,1233,1234],{"class":558},"string",[284,1236,1237],{"class":562},"()",[284,1239,591],{"class":290},[284,1241,1242,1245,1247,1249,1251,1253,1255],{"class":286,"line":423},[284,1243,1244],{"class":294},"        avatar",[284,1246,213],{"class":290},[284,1248,1211],{"class":562},[284,1250,150],{"class":290},[284,1252,1216],{"class":558},[284,1254,563],{"class":562},[284,1256,566],{"class":290},[284,1258,1259,1262,1264,1266,1268,1270,1272,1274,1277,1279,1282,1285,1287,1289,1292,1294,1297,1299],{"class":286,"line":446},[284,1260,1261],{"class":294},"          src",[284,1263,213],{"class":290},[284,1265,1211],{"class":562},[284,1267,150],{"class":290},[284,1269,1234],{"class":558},[284,1271,1237],{"class":562},[284,1273,150],{"class":290},[284,1275,1276],{"class":558},"editor",[284,1278,563],{"class":562},[284,1280,1281],{"class":290},"{",[284,1283,1284],{"class":294}," input",[284,1286,213],{"class":290},[284,1288,602],{"class":290},[284,1290,1291],{"class":320},"media",[284,1293,608],{"class":290},[284,1295,1296],{"class":290}," }",[284,1298,871],{"class":562},[284,1300,591],{"class":290},[284,1302,1303,1306,1308,1310,1312,1314,1316],{"class":286,"line":456},[284,1304,1305],{"class":294},"          alt",[284,1307,213],{"class":290},[284,1309,1211],{"class":562},[284,1311,150],{"class":290},[284,1313,1234],{"class":558},[284,1315,1237],{"class":562},[284,1317,591],{"class":290},[284,1319,1320,1323,1325],{"class":286,"line":465},[284,1321,1322],{"class":290},"        }",[284,1324,871],{"class":562},[284,1326,591],{"class":290},[284,1328,1329,1332,1334,1336,1338,1340,1342],{"class":286,"line":485},[284,1330,1331],{"class":294},"        to",[284,1333,213],{"class":290},[284,1335,1211],{"class":562},[284,1337,150],{"class":290},[284,1339,1234],{"class":558},[284,1341,1237],{"class":562},[284,1343,591],{"class":290},[284,1345,1346,1349,1351,1353,1355,1357,1359],{"class":286,"line":494},[284,1347,1348],{"class":294},"        username",[284,1350,213],{"class":290},[284,1352,1211],{"class":562},[284,1354,150],{"class":290},[284,1356,1234],{"class":558},[284,1358,1237],{"class":562},[284,1360,591],{"class":290},[284,1362,1363,1366,1368,1370,1372,1375,1378,1380,1383,1385,1387,1389,1392,1394,1396,1398,1401,1403,1406],{"class":286,"line":503},[284,1364,1365],{"class":294},"        role",[284,1367,213],{"class":290},[284,1369,1211],{"class":562},[284,1371,150],{"class":290},[284,1373,1374],{"class":558},"enum",[284,1376,1377],{"class":562},"([",[284,1379,608],{"class":290},[284,1381,1382],{"class":320},"creator",[284,1384,608],{"class":290},[284,1386,778],{"class":290},[284,1388,602],{"class":290},[284,1390,1391],{"class":320},"maintainer",[284,1393,608],{"class":290},[284,1395,778],{"class":290},[284,1397,602],{"class":290},[284,1399,1400],{"class":320},"contributor",[284,1402,608],{"class":290},[284,1404,1405],{"class":562},"])",[284,1407,591],{"class":290},[284,1409,1410,1413,1415,1417,1419,1422,1424,1426,1429,1431,1435,1437],{"class":286,"line":513},[284,1411,1412],{"class":294},"        order",[284,1414,213],{"class":290},[284,1416,1211],{"class":562},[284,1418,150],{"class":290},[284,1420,1421],{"class":558},"number",[284,1423,1237],{"class":562},[284,1425,150],{"class":290},[284,1427,1428],{"class":558},"default",[284,1430,563],{"class":562},[284,1432,1434],{"class":1433},"sbssI","0",[284,1436,871],{"class":562},[284,1438,591],{"class":290},[284,1440,1441,1444,1446,1448,1450,1452,1454,1456,1459,1461],{"class":286,"line":523},[284,1442,1443],{"class":294},"        birthDate",[284,1445,213],{"class":290},[284,1447,1211],{"class":562},[284,1449,150],{"class":290},[284,1451,1234],{"class":558},[284,1453,1237],{"class":562},[284,1455,150],{"class":290},[284,1457,1458],{"class":558},"date",[284,1460,1237],{"class":562},[284,1462,591],{"class":290},[284,1464,1465,1468,1470,1472,1474,1476,1478,1480,1483,1485],{"class":286,"line":530},[284,1466,1467],{"class":294},"        lastCommitAt",[284,1469,213],{"class":290},[284,1471,1211],{"class":562},[284,1473,150],{"class":290},[284,1475,1234],{"class":558},[284,1477,1237],{"class":562},[284,1479,150],{"class":290},[284,1481,1482],{"class":558},"datetime",[284,1484,1237],{"class":562},[284,1486,591],{"class":290},[284,1488,1489,1492,1494,1496,1498,1500,1502,1504,1506,1508],{"class":286,"line":555},[284,1490,1491],{"class":294},"        icon",[284,1493,213],{"class":290},[284,1495,1211],{"class":562},[284,1497,150],{"class":290},[284,1499,1234],{"class":558},[284,1501,1237],{"class":562},[284,1503,150],{"class":290},[284,1505,1276],{"class":558},[284,1507,563],{"class":562},[284,1509,566],{"class":290},[284,1511,1512,1515,1517,1519,1521,1523],{"class":286,"line":569},[284,1513,1514],{"class":294},"          input",[284,1516,213],{"class":290},[284,1518,602],{"class":290},[284,1520,365],{"class":320},[284,1522,608],{"class":290},[284,1524,591],{"class":290},[284,1526,1527,1530,1532,1534,1536,1539,1541],{"class":286,"line":580},[284,1528,1529],{"class":294},"          iconLibraries",[284,1531,213],{"class":290},[284,1533,905],{"class":562},[284,1535,608],{"class":290},[284,1537,1538],{"class":320},"lucide",[284,1540,608],{"class":290},[284,1542,1543],{"class":562},"]\n",[284,1545,1546,1548,1550],{"class":286,"line":594},[284,1547,1322],{"class":290},[284,1549,871],{"class":562},[284,1551,591],{"class":290},[284,1553,1554,1557,1559,1561,1563,1566,1568,1570,1572,1574,1576,1578],{"class":286,"line":613},[284,1555,1556],{"class":294},"        isOpenSourceLover",[284,1558,213],{"class":290},[284,1560,1211],{"class":562},[284,1562,150],{"class":290},[284,1564,1565],{"class":558},"boolean",[284,1567,1237],{"class":562},[284,1569,150],{"class":290},[284,1571,1428],{"class":558},[284,1573,563],{"class":562},[284,1575,154],{"class":792},[284,1577,871],{"class":562},[284,1579,591],{"class":290},[284,1581,1582,1585,1587,1589,1591,1594,1597,1599,1601,1604],{"class":286,"line":619},[284,1583,1584],{"class":294},"        modules",[284,1586,213],{"class":290},[284,1588,1211],{"class":562},[284,1590,150],{"class":290},[284,1592,1593],{"class":558},"array",[284,1595,1596],{"class":562},"(z",[284,1598,150],{"class":290},[284,1600,1234],{"class":558},[284,1602,1603],{"class":562},"())",[284,1605,591],{"class":290},[284,1607,1608,1611],{"class":286,"line":628},[284,1609,1610],{"class":290},"    }",[284,1612,625],{"class":562},[284,1614,1616],{"class":286,"line":1615},25,[284,1617,616],{"class":290},[284,1619,1621],{"class":286,"line":1620},26,[284,1622,1623],{"class":562},"})\n",[158,1625,1627],{"id":1626},"native-inputs-mapping",[95,1628,1629],{},"Native Inputs Mapping",[51,1631,1632],{},"Primitive Zod types are automatically mapped to appropriate form inputs in:",[55,1634,1635,1641,1647,1653,1659,1665,1671],{},[58,1636,1637,1640],{},[95,1638,1639],{},"String"," → Text input",[58,1642,1643,1646],{},[95,1644,1645],{},"Date"," → Date picker",[58,1648,1649,1652],{},[95,1650,1651],{},"Number"," → Number input",[58,1654,1655,1658],{},[95,1656,1657],{},"Boolean"," → Toggle switch",[58,1660,1661,1664],{},[95,1662,1663],{},"Enum"," → Select dropdown",[58,1666,1667,1670],{},[95,1668,1669],{},"Arrays of strings"," → List of badge inputs",[58,1672,1673,1676],{},[95,1674,1675],{},"Arrays of objects"," → Accordion of items with embedded form",[158,1678,1680],{"id":1679},"custom-inputs-mapping","Custom Inputs Mapping",[51,1682,1683,1684,1686],{},"Studio goes beyond primitive types. You can customise form fields using the ",[67,1685,1276],{}," method, which extends Zod types with metadata to empower editor interface.",[51,1688,1689],{},"This allows you to define custom inputs or hide fields.",[269,1691,1693],{"id":1692},"usage","Usage",[274,1695,1697],{"className":727,"code":1696,"filename":1131,"language":548,"meta":280,"style":280},"\u002F\u002F Override the auto-generated label\ntitle: property(z.string()).editor({ label: 'Page title' })\n\n\u002F\u002F Add helper text below the input\nslug: property(z.string()).editor({ description: 'Used in the URL, e.g. \u002Fblog\u002Fmy-post' })\n\n\u002F\u002F Add an info tooltip next to the label\nrole: z.enum(['admin', 'editor']).editor({ tooltip: 'Controls what the user can edit' })\n\n\u002F\u002F Icon picker with specific libraries\nicon: property(z.string()).editor({ input: 'icon', iconLibraries: ['lucide', 'simple-icons'] })\n\n\u002F\u002F Media picker\nimage: property(z.string()).editor({ input: 'media' })\n\n\u002F\u002F Textarea\ndescription: property(z.string()).editor({ input: 'textarea' })\n",[67,1698,1699,1704,1746,1750,1755,1796,1800,1805,1861,1865,1870,1935,1939,1944,1983,1987,1992],{"__ignoreMap":280},[284,1700,1701],{"class":286,"line":287},[284,1702,1703],{"class":781},"\u002F\u002F Override the auto-generated label\n",[284,1705,1706,1709,1711,1714,1716,1718,1720,1722,1724,1726,1728,1730,1733,1735,1737,1740,1742,1744],{"class":286,"line":301},[284,1707,439],{"class":1708},"sBMFI",[284,1710,213],{"class":290},[284,1712,1713],{"class":558}," property",[284,1715,1596],{"class":562},[284,1717,150],{"class":290},[284,1719,1234],{"class":558},[284,1721,1603],{"class":562},[284,1723,150],{"class":290},[284,1725,1276],{"class":558},[284,1727,563],{"class":562},[284,1729,1281],{"class":290},[284,1731,1732],{"class":294}," label",[284,1734,213],{"class":290},[284,1736,602],{"class":290},[284,1738,1739],{"class":320},"Page title",[284,1741,608],{"class":290},[284,1743,1296],{"class":290},[284,1745,625],{"class":562},[284,1747,1748],{"class":286,"line":328},[284,1749,527],{"emptyLinePlaceholder":526},[284,1751,1752],{"class":286,"line":349},[284,1753,1754],{"class":781},"\u002F\u002F Add helper text below the input\n",[284,1756,1757,1760,1762,1764,1766,1768,1770,1772,1774,1776,1778,1780,1783,1785,1787,1790,1792,1794],{"class":286,"line":373},[284,1758,1759],{"class":1708},"slug",[284,1761,213],{"class":290},[284,1763,1713],{"class":558},[284,1765,1596],{"class":562},[284,1767,150],{"class":290},[284,1769,1234],{"class":558},[284,1771,1603],{"class":562},[284,1773,150],{"class":290},[284,1775,1276],{"class":558},[284,1777,563],{"class":562},[284,1779,1281],{"class":290},[284,1781,1782],{"class":294}," description",[284,1784,213],{"class":290},[284,1786,602],{"class":290},[284,1788,1789],{"class":320},"Used in the URL, e.g. \u002Fblog\u002Fmy-post",[284,1791,608],{"class":290},[284,1793,1296],{"class":290},[284,1795,625],{"class":562},[284,1797,1798],{"class":286,"line":383},[284,1799,527],{"emptyLinePlaceholder":526},[284,1801,1802],{"class":286,"line":403},[284,1803,1804],{"class":781},"\u002F\u002F Add an info tooltip next to the label\n",[284,1806,1807,1810,1812,1814,1816,1818,1820,1822,1825,1827,1829,1831,1833,1835,1837,1839,1841,1843,1845,1848,1850,1852,1855,1857,1859],{"class":286,"line":423},[284,1808,1809],{"class":1708},"role",[284,1811,213],{"class":290},[284,1813,1211],{"class":562},[284,1815,150],{"class":290},[284,1817,1374],{"class":558},[284,1819,1377],{"class":562},[284,1821,608],{"class":290},[284,1823,1824],{"class":320},"admin",[284,1826,608],{"class":290},[284,1828,778],{"class":290},[284,1830,602],{"class":290},[284,1832,1276],{"class":320},[284,1834,608],{"class":290},[284,1836,1405],{"class":562},[284,1838,150],{"class":290},[284,1840,1276],{"class":558},[284,1842,563],{"class":562},[284,1844,1281],{"class":290},[284,1846,1847],{"class":294}," tooltip",[284,1849,213],{"class":290},[284,1851,602],{"class":290},[284,1853,1854],{"class":320},"Controls what the user can edit",[284,1856,608],{"class":290},[284,1858,1296],{"class":290},[284,1860,625],{"class":562},[284,1862,1863],{"class":286,"line":446},[284,1864,527],{"emptyLinePlaceholder":526},[284,1866,1867],{"class":286,"line":456},[284,1868,1869],{"class":781},"\u002F\u002F Icon picker with specific libraries\n",[284,1871,1872,1874,1876,1878,1880,1882,1884,1886,1888,1890,1892,1894,1896,1898,1900,1902,1904,1906,1909,1911,1913,1915,1917,1919,1921,1923,1926,1928,1931,1933],{"class":286,"line":465},[284,1873,365],{"class":1708},[284,1875,213],{"class":290},[284,1877,1713],{"class":558},[284,1879,1596],{"class":562},[284,1881,150],{"class":290},[284,1883,1234],{"class":558},[284,1885,1603],{"class":562},[284,1887,150],{"class":290},[284,1889,1276],{"class":558},[284,1891,563],{"class":562},[284,1893,1281],{"class":290},[284,1895,1284],{"class":294},[284,1897,213],{"class":290},[284,1899,602],{"class":290},[284,1901,365],{"class":320},[284,1903,608],{"class":290},[284,1905,778],{"class":290},[284,1907,1908],{"class":294}," iconLibraries",[284,1910,213],{"class":290},[284,1912,905],{"class":562},[284,1914,608],{"class":290},[284,1916,1538],{"class":320},[284,1918,608],{"class":290},[284,1920,778],{"class":290},[284,1922,602],{"class":290},[284,1924,1925],{"class":320},"simple-icons",[284,1927,608],{"class":290},[284,1929,1930],{"class":562},"] ",[284,1932,622],{"class":290},[284,1934,625],{"class":562},[284,1936,1937],{"class":286,"line":485},[284,1938,527],{"emptyLinePlaceholder":526},[284,1940,1941],{"class":286,"line":494},[284,1942,1943],{"class":781},"\u002F\u002F Media picker\n",[284,1945,1946,1949,1951,1953,1955,1957,1959,1961,1963,1965,1967,1969,1971,1973,1975,1977,1979,1981],{"class":286,"line":503},[284,1947,1948],{"class":1708},"image",[284,1950,213],{"class":290},[284,1952,1713],{"class":558},[284,1954,1596],{"class":562},[284,1956,150],{"class":290},[284,1958,1234],{"class":558},[284,1960,1603],{"class":562},[284,1962,150],{"class":290},[284,1964,1276],{"class":558},[284,1966,563],{"class":562},[284,1968,1281],{"class":290},[284,1970,1284],{"class":294},[284,1972,213],{"class":290},[284,1974,602],{"class":290},[284,1976,1291],{"class":320},[284,1978,608],{"class":290},[284,1980,1296],{"class":290},[284,1982,625],{"class":562},[284,1984,1985],{"class":286,"line":513},[284,1986,527],{"emptyLinePlaceholder":526},[284,1988,1989],{"class":286,"line":523},[284,1990,1991],{"class":781},"\u002F\u002F Textarea\n",[284,1993,1994,1996,1998,2000,2002,2004,2006,2008,2010,2012,2014,2016,2018,2020,2022,2025,2027,2029],{"class":286,"line":530},[284,1995,478],{"class":1708},[284,1997,213],{"class":290},[284,1999,1713],{"class":558},[284,2001,1596],{"class":562},[284,2003,150],{"class":290},[284,2005,1234],{"class":558},[284,2007,1603],{"class":562},[284,2009,150],{"class":290},[284,2011,1276],{"class":558},[284,2013,563],{"class":562},[284,2015,1281],{"class":290},[284,2017,1284],{"class":294},[284,2019,213],{"class":290},[284,2021,602],{"class":290},[284,2023,2024],{"class":320},"textarea",[284,2026,608],{"class":290},[284,2028,1296],{"class":290},[284,2030,625],{"class":562},[269,2032,2034],{"id":2033},"options","Options",[2036,2037,2039],"h5",{"id":2038},"input-media-icon-textarea",[67,2040,2041],{},"input: 'media' | 'icon' | 'textarea'",[51,2043,2044,2045,2047,2048,80,2050,2052],{},"You can set the editor input type. Currently ",[67,2046,365],{},", ",[67,2049,1291],{},[67,2051,2024],{}," are available.",[55,2054,2055,2060,2065],{},[58,2056,2057,2059],{},[67,2058,365],{}," - Opens an icon picker with searchable Iconify libraries",[58,2061,2062,2064],{},[67,2063,1291],{}," - Opens the media picker to select images from your library",[58,2066,2067,2069],{},[67,2068,2024],{}," - Renders a multi-line text input instead of a single-line text field",[2036,2071,2073],{"id":2072},"label-string",[67,2074,2075],{},"label: string",[51,2077,2078],{},"Overrides the auto-generated label derived from the field key. Useful when the key name is technical or abbreviated.",[2036,2080,2082],{"id":2081},"description-string",[67,2083,2084],{},"description: string",[51,2086,2087],{},"Shown as helper text below the input. Use it to clarify the field's purpose or expected format.",[2036,2089,2091],{"id":2090},"tooltip-string",[67,2092,2093],{},"tooltip: string",[51,2095,2096],{},"Shown as an info icon next to the label. On hover, it displays the provided text. Ideal for brief contextual hints that would clutter the description.",[2036,2098,2100],{"id":2099},"iconlibraries-arraystring",[67,2101,2102],{},"iconLibraries: Array\u003Cstring>",[51,2104,2105,2106,2111],{},"Specifies which ",[61,2107,2110],{"href":2108,"rel":2109},"https:\u002F\u002Ficones.js.org\u002F",[142],"Iconify"," libraries to display. Use this option to filter and limit the available icon sets.",[2036,2113,2115],{"id":2114},"hidden-boolean",[67,2116,2117],{},"hidden: boolean",[51,2119,2120],{},"Removes the field from the Studio editor entirely.",[2122,2123,2124,2125,2128],"warning",{},"When ",[67,2126,2127],{},"hidden"," is set, it ensures the field is removed if defined in file raw code (frontmatter or YAML\u002FJSON content).",[269,2130,2132],{"id":2131},"hints-example","Hints example",[1119,2134,2135,2147],{},[307,2136,2138],{"icon":1123,"label":2137},"Form with hints",[2139,2140],"img",{"alt":2141,"className":2142,"src":2146},"Form hints: label, description and tooltip",[2143,2144,2145],"rounded-lg","border","border-muted","\u002Fstudio\u002Fform-hints.png",[274,2148,2150],{"className":727,"code":2149,"filename":1131,"language":548,"meta":280,"style":280},"import { defineContentConfig, defineCollection, property } from '@nuxt\u002Fcontent'\nimport z from 'zod'\n\nexport default defineContentConfig({\n  collections: {\n    authors: defineCollection({\n      type: 'data',\n      source: 'authors\u002F**\u002F*',\n      schema: z.object({\n        name: property(z.string()).editor({\n          description: 'Full display name shown on the author page',\n          tooltip: 'Use your real name or well-known alias',\n        }),\n        avatar: z.object({\n          src: property(z.string()).editor({ input: 'media', label: 'Avatar image' }),\n          alt: property(z.string()).editor({ label: 'Alt text', tooltip: 'Keep it short: \"Jane Doe avatar\"' }),\n        }),\n        bio: property(z.string()).editor({\n          input: 'textarea',\n          label: 'Biography',\n          description: 'Short biography displayed on the author card. Aim for 1–2 sentences.',\n        }),\n        role: z.enum(['creator', 'maintainer', 'contributor']).editor({\n          tooltip: 'Controls what badge is shown on the author card',\n        }),\n      }),\n    }),\n  },\n})\n",[67,2151,2152,2183,2199,2203,2215,2223,2235,2249,2263,2279,2303,2319,2335,2343,2359,2412,2466,2474,2499,2513,2529,2544,2552,2598,2613,2621,2630,2639,2644],{"__ignoreMap":280},[284,2153,2154,2157,2160,2162,2164,2166,2168,2170,2172,2175,2177,2180],{"class":286,"line":287},[284,2155,2156],{"class":735},"import",[284,2158,2159],{"class":290}," {",[284,2161,1142],{"class":562},[284,2163,778],{"class":290},[284,2165,1165],{"class":562},[284,2167,778],{"class":290},[284,2169,1713],{"class":562},[284,2171,1296],{"class":290},[284,2173,2174],{"class":735}," from",[284,2176,602],{"class":290},[284,2178,2179],{"class":320},"@nuxt\u002Fcontent",[284,2181,2182],{"class":290},"'\n",[284,2184,2185,2187,2190,2193,2195,2197],{"class":286,"line":301},[284,2186,2156],{"class":735},[284,2188,2189],{"class":562}," z ",[284,2191,2192],{"class":735},"from",[284,2194,602],{"class":290},[284,2196,1106],{"class":320},[284,2198,2182],{"class":290},[284,2200,2201],{"class":286,"line":328},[284,2202,527],{"emptyLinePlaceholder":526},[284,2204,2205,2207,2209,2211,2213],{"class":286,"line":349},[284,2206,736],{"class":735},[284,2208,739],{"class":735},[284,2210,1142],{"class":558},[284,2212,563],{"class":562},[284,2214,566],{"class":290},[284,2216,2217,2219,2221],{"class":286,"line":373},[284,2218,1151],{"class":294},[284,2220,213],{"class":290},[284,2222,577],{"class":290},[284,2224,2225,2227,2229,2231,2233],{"class":286,"line":383},[284,2226,1160],{"class":294},[284,2228,213],{"class":290},[284,2230,1165],{"class":558},[284,2232,563],{"class":562},[284,2234,566],{"class":290},[284,2236,2237,2239,2241,2243,2245,2247],{"class":286,"line":403},[284,2238,1174],{"class":294},[284,2240,213],{"class":290},[284,2242,602],{"class":290},[284,2244,1181],{"class":320},[284,2246,608],{"class":290},[284,2248,591],{"class":290},[284,2250,2251,2253,2255,2257,2259,2261],{"class":286,"line":423},[284,2252,1190],{"class":294},[284,2254,213],{"class":290},[284,2256,602],{"class":290},[284,2258,1197],{"class":320},[284,2260,608],{"class":290},[284,2262,591],{"class":290},[284,2264,2265,2267,2269,2271,2273,2275,2277],{"class":286,"line":446},[284,2266,1206],{"class":294},[284,2268,213],{"class":290},[284,2270,1211],{"class":562},[284,2272,150],{"class":290},[284,2274,1216],{"class":558},[284,2276,563],{"class":562},[284,2278,566],{"class":290},[284,2280,2281,2283,2285,2287,2289,2291,2293,2295,2297,2299,2301],{"class":286,"line":456},[284,2282,1225],{"class":294},[284,2284,213],{"class":290},[284,2286,1713],{"class":558},[284,2288,1596],{"class":562},[284,2290,150],{"class":290},[284,2292,1234],{"class":558},[284,2294,1603],{"class":562},[284,2296,150],{"class":290},[284,2298,1276],{"class":558},[284,2300,563],{"class":562},[284,2302,566],{"class":290},[284,2304,2305,2308,2310,2312,2315,2317],{"class":286,"line":465},[284,2306,2307],{"class":294},"          description",[284,2309,213],{"class":290},[284,2311,602],{"class":290},[284,2313,2314],{"class":320},"Full display name shown on the author page",[284,2316,608],{"class":290},[284,2318,591],{"class":290},[284,2320,2321,2324,2326,2328,2331,2333],{"class":286,"line":485},[284,2322,2323],{"class":294},"          tooltip",[284,2325,213],{"class":290},[284,2327,602],{"class":290},[284,2329,2330],{"class":320},"Use your real name or well-known alias",[284,2332,608],{"class":290},[284,2334,591],{"class":290},[284,2336,2337,2339,2341],{"class":286,"line":494},[284,2338,1322],{"class":290},[284,2340,871],{"class":562},[284,2342,591],{"class":290},[284,2344,2345,2347,2349,2351,2353,2355,2357],{"class":286,"line":503},[284,2346,1244],{"class":294},[284,2348,213],{"class":290},[284,2350,1211],{"class":562},[284,2352,150],{"class":290},[284,2354,1216],{"class":558},[284,2356,563],{"class":562},[284,2358,566],{"class":290},[284,2360,2361,2363,2365,2367,2369,2371,2373,2375,2377,2379,2381,2383,2385,2387,2389,2391,2393,2395,2397,2399,2401,2404,2406,2408,2410],{"class":286,"line":513},[284,2362,1261],{"class":294},[284,2364,213],{"class":290},[284,2366,1713],{"class":558},[284,2368,1596],{"class":562},[284,2370,150],{"class":290},[284,2372,1234],{"class":558},[284,2374,1603],{"class":562},[284,2376,150],{"class":290},[284,2378,1276],{"class":558},[284,2380,563],{"class":562},[284,2382,1281],{"class":290},[284,2384,1284],{"class":294},[284,2386,213],{"class":290},[284,2388,602],{"class":290},[284,2390,1291],{"class":320},[284,2392,608],{"class":290},[284,2394,778],{"class":290},[284,2396,1732],{"class":294},[284,2398,213],{"class":290},[284,2400,602],{"class":290},[284,2402,2403],{"class":320},"Avatar image",[284,2405,608],{"class":290},[284,2407,1296],{"class":290},[284,2409,871],{"class":562},[284,2411,591],{"class":290},[284,2413,2414,2416,2418,2420,2422,2424,2426,2428,2430,2432,2434,2436,2438,2440,2442,2445,2447,2449,2451,2453,2455,2458,2460,2462,2464],{"class":286,"line":523},[284,2415,1305],{"class":294},[284,2417,213],{"class":290},[284,2419,1713],{"class":558},[284,2421,1596],{"class":562},[284,2423,150],{"class":290},[284,2425,1234],{"class":558},[284,2427,1603],{"class":562},[284,2429,150],{"class":290},[284,2431,1276],{"class":558},[284,2433,563],{"class":562},[284,2435,1281],{"class":290},[284,2437,1732],{"class":294},[284,2439,213],{"class":290},[284,2441,602],{"class":290},[284,2443,2444],{"class":320},"Alt text",[284,2446,608],{"class":290},[284,2448,778],{"class":290},[284,2450,1847],{"class":294},[284,2452,213],{"class":290},[284,2454,602],{"class":290},[284,2456,2457],{"class":320},"Keep it short: \"Jane Doe avatar\"",[284,2459,608],{"class":290},[284,2461,1296],{"class":290},[284,2463,871],{"class":562},[284,2465,591],{"class":290},[284,2467,2468,2470,2472],{"class":286,"line":530},[284,2469,1322],{"class":290},[284,2471,871],{"class":562},[284,2473,591],{"class":290},[284,2475,2476,2479,2481,2483,2485,2487,2489,2491,2493,2495,2497],{"class":286,"line":555},[284,2477,2478],{"class":294},"        bio",[284,2480,213],{"class":290},[284,2482,1713],{"class":558},[284,2484,1596],{"class":562},[284,2486,150],{"class":290},[284,2488,1234],{"class":558},[284,2490,1603],{"class":562},[284,2492,150],{"class":290},[284,2494,1276],{"class":558},[284,2496,563],{"class":562},[284,2498,566],{"class":290},[284,2500,2501,2503,2505,2507,2509,2511],{"class":286,"line":569},[284,2502,1514],{"class":294},[284,2504,213],{"class":290},[284,2506,602],{"class":290},[284,2508,2024],{"class":320},[284,2510,608],{"class":290},[284,2512,591],{"class":290},[284,2514,2515,2518,2520,2522,2525,2527],{"class":286,"line":580},[284,2516,2517],{"class":294},"          label",[284,2519,213],{"class":290},[284,2521,602],{"class":290},[284,2523,2524],{"class":320},"Biography",[284,2526,608],{"class":290},[284,2528,591],{"class":290},[284,2530,2531,2533,2535,2537,2540,2542],{"class":286,"line":594},[284,2532,2307],{"class":294},[284,2534,213],{"class":290},[284,2536,602],{"class":290},[284,2538,2539],{"class":320},"Short biography displayed on the author card. Aim for 1–2 sentences.",[284,2541,608],{"class":290},[284,2543,591],{"class":290},[284,2545,2546,2548,2550],{"class":286,"line":613},[284,2547,1322],{"class":290},[284,2549,871],{"class":562},[284,2551,591],{"class":290},[284,2553,2554,2556,2558,2560,2562,2564,2566,2568,2570,2572,2574,2576,2578,2580,2582,2584,2586,2588,2590,2592,2594,2596],{"class":286,"line":619},[284,2555,1365],{"class":294},[284,2557,213],{"class":290},[284,2559,1211],{"class":562},[284,2561,150],{"class":290},[284,2563,1374],{"class":558},[284,2565,1377],{"class":562},[284,2567,608],{"class":290},[284,2569,1382],{"class":320},[284,2571,608],{"class":290},[284,2573,778],{"class":290},[284,2575,602],{"class":290},[284,2577,1391],{"class":320},[284,2579,608],{"class":290},[284,2581,778],{"class":290},[284,2583,602],{"class":290},[284,2585,1400],{"class":320},[284,2587,608],{"class":290},[284,2589,1405],{"class":562},[284,2591,150],{"class":290},[284,2593,1276],{"class":558},[284,2595,563],{"class":562},[284,2597,566],{"class":290},[284,2599,2600,2602,2604,2606,2609,2611],{"class":286,"line":628},[284,2601,2323],{"class":294},[284,2603,213],{"class":290},[284,2605,602],{"class":290},[284,2607,2608],{"class":320},"Controls what badge is shown on the author card",[284,2610,608],{"class":290},[284,2612,591],{"class":290},[284,2614,2615,2617,2619],{"class":286,"line":1615},[284,2616,1322],{"class":290},[284,2618,871],{"class":562},[284,2620,591],{"class":290},[284,2622,2623,2626,2628],{"class":286,"line":1620},[284,2624,2625],{"class":290},"      }",[284,2627,871],{"class":562},[284,2629,591],{"class":290},[284,2631,2633,2635,2637],{"class":286,"line":2632},27,[284,2634,1610],{"class":290},[284,2636,871],{"class":562},[284,2638,591],{"class":290},[284,2640,2642],{"class":286,"line":2641},28,[284,2643,616],{"class":290},[284,2645,2647,2649],{"class":286,"line":2646},29,[284,2648,622],{"class":290},[284,2650,625],{"class":562},[1012,2652,2653],{"to":1014},"Studio inputs are fully extensible. We can create as many input as we want based on our users needs.",[100,2655,2657],{"id":2656},"code-editor","Code Editor",[51,2659,2660],{},"The Monaco code editor provides full control over your content, allowing you to write raw content directly:",[51,2662,2663,2664,2666,2667,2669,2670,2672],{},"MDC syntax for ",[67,2665,69],{}," files or ",[67,2668,83],{}," or ",[67,2671,79],{}," syntax for others.",[2674,2675,2676],"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 .sfazB, html code.shiki .sfazB{--shiki-light:#91B859;--shiki-default:#C3E88D;--shiki-dark:#C3E88D}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 .sfNiH, html code.shiki .sfNiH{--shiki-light:#FF5370;--shiki-default:#FF9CAC;--shiki-dark:#FF9CAC}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 .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}html pre.shiki code .sbssI, html code.shiki .sbssI{--shiki-light:#F76D47;--shiki-default:#F78C6C;--shiki-dark:#F78C6C}html pre.shiki code .sBMFI, html code.shiki .sBMFI{--shiki-light:#E2931D;--shiki-default:#FFCB6B;--shiki-dark:#FFCB6B}",{"title":280,"searchDepth":301,"depth":301,"links":2678},[2679,2680,2686,2692],{"id":102,"depth":301,"text":103},{"id":130,"depth":301,"text":2681,"children":2682},"TipTap Visual Editor (Markdown files)",[2683,2684,2685],{"id":160,"depth":328,"text":161},{"id":253,"depth":328,"text":254},{"id":1025,"depth":328,"text":1026},{"id":1065,"depth":301,"text":1066,"children":2687},[2688,2690,2691],{"id":1099,"depth":328,"text":2689},"Defining your form with zod Schema",{"id":1626,"depth":328,"text":1629},{"id":1679,"depth":328,"text":1680},{"id":2656,"depth":301,"text":2657},"Discover and select your favorite way to manage your content between the visual or the code editor.","md",null,{},{"title":25,"icon":28},{"title":2699,"description":2700},"Edit your Nuxt Content website with our editors","Overview of our different Studio CMS editors to manage your content and your medias. Choose between our visual editors and our code editor.","bl0M9rxGtx0SSgt2UHsCtHrNGFLLfgoUaGEm-VpYC3I",[2703,2705],{"title":20,"path":21,"stem":22,"description":2704,"icon":23,"children":-1},"Configure authentication providers to control access to Nuxt Studio.",{"title":30,"path":31,"stem":32,"description":2706,"icon":33,"children":-1},"Explore how to browse and manage media files, including external storage with NuxtHub blob storage, and integrate them into your projects.",1783066514372]