[{"data":1,"prerenderedAt":1293},["ShallowReactive",2],{"blog:2024:generated-excerpts-for-nuxt3-content":3,"blogMore-Development":1279,"comments-generated-excerpts-for-nuxt3-content":1292},{"_path":4,"_dir":5,"_draft":6,"_partial":6,"_locale":7,"title":8,"description":9,"date":10,"category":11,"tags":12,"excerpt":15,"body":39,"_type":1270,"_id":1271,"_source":1272,"_file":1273,"_stem":1274,"_extension":1275,"url":1276,"wordCount":1277,"minutes":157,"commentCount":1278},"/blog/2024/generated-excerpts-for-nuxt3-content","2024",false,"en","Generated Excerpts for Nuxt3 Content","Nuxt3 has been my stack of choice for a while now and it was time to port my site over from Nuxt2 - an exercise in itself I should blog about - but more concretely is the idea of excerpts.","2024-08-01T00:00:00-00:00","Development",[13,14],"Nuxt","webdev",{"type":16,"children":17},"root",[18,25],{"type":19,"tag":20,"props":21,"children":22},"element","p",{},[23],{"type":24,"value":9},"text",{"type":19,"tag":20,"props":26,"children":27},{},[28,30,37],{"type":24,"value":29},"Basically when you have a list of articles you want to show a short snippet of the article to entice the reader to click on it. This can either be the description if it's a simple one-liner used in a card for example, or it can be the start of the article itself. Nuxt's Content v2 supports generating excerpts for you by taking the content up to the ",{"type":19,"tag":31,"props":32,"children":34},"code",{"className":33},[],[35],{"type":24,"value":36},"\u003C!--more-->",{"type":24,"value":38}," marker in the text as the excerpt.",{"type":16,"children":40,"toc":1268},[41,45,55,60,98,1262],{"type":19,"tag":20,"props":42,"children":43},{},[44],{"type":24,"value":9},{"type":19,"tag":20,"props":46,"children":47},{},[48,49,54],{"type":24,"value":29},{"type":19,"tag":31,"props":50,"children":52},{"className":51},[],[53],{"type":24,"value":36},{"type":24,"value":38},{"type":19,"tag":20,"props":56,"children":57},{},[58],{"type":24,"value":59},"This is great if you've done it but if you haven't you get absolutely nothing!",{"type":19,"tag":20,"props":61,"children":62},{},[63,65,71,73,80,82,88,90,96],{"type":24,"value":64},"We can address that with a short snippet of code and the trusty ",{"type":19,"tag":31,"props":66,"children":68},{"className":67},[],[69],{"type":24,"value":70},"content:file:afterParse",{"type":24,"value":72}," hook in much the same way as we did for the ",{"type":19,"tag":74,"props":75,"children":77},"a",{"href":76},"/blog/2023/reading-time-with-nuxt3-content",[78],{"type":24,"value":79},"reading time",{"type":24,"value":81}," plugin. Create a new file (e.g. ",{"type":19,"tag":31,"props":83,"children":85},{"className":84},[],[86],{"type":24,"value":87},"content-excerpts.ts",{"type":24,"value":89}," in your ",{"type":19,"tag":31,"props":91,"children":93},{"className":92},[],[94],{"type":24,"value":95},"server\\plugins",{"type":24,"value":97}," with the following contents:",{"type":19,"tag":99,"props":100,"children":105},"pre",{"className":101,"code":102,"language":103,"meta":104,"style":104},"language-typescript shiki shiki-themes everforest-light dracula","import type { MarkdownNode, MarkdownRoot, ParsedContent } from \"@nuxt/content\"\n\nexport default defineNitroPlugin((nitroApp) => {\n  nitroApp.hooks.hook(\"content:file:afterParse\", (file) => {\n    if (file._id.endsWith(\".md\") && file.body) {\n        addExcerpt(file)\n      }\n    }\n  })\n})\n\nconst addExcerpt = (file: ParsedContent) => {\n  if (file.excerpt) return\n\n  const excerpt: MarkdownRoot = { type: \"root\", children: [] }\n  let paragraphsToInclude = 2\n\n  visit(file.body!.children, (n) => {\n    if (paragraphsToInclude == 0) return\n    if (n?.tag == \"p\") {\n      paragraphsToInclude--\n      excerpt.children.push(withRemovedLinks(n))\n    }\n  })\n\n  file.excerpt = excerpt\n}\n\nconst withRemovedLinks = (n: MarkdownNode): MarkdownNode => {\n  const node: MarkdownNode = {\n    type: n.type,\n    value: n.value,\n    tag: n.tag,\n    props: n.props,\n    attributes: n.attributes,\n    children: [] as MarkdownNode[],\n  }\n\n  visit(n.children!, (c) => {\n    if (c.tag != \"a\") {\n      node.children?.push(c)\n    }\n  })\n\n  return node\n}\n","typescript","",[106],{"type":19,"tag":31,"props":107,"children":108},{"__ignoreMap":104},[109,155,165,212,281,353,367,376,385,394,403,411,463,490,498,560,585,593,647,678,712,726,767,775,783,791,818,827,835,891,920,947,973,999,1025,1051,1083,1092,1100,1146,1189,1216,1224,1232,1240,1254],{"type":19,"tag":110,"props":111,"children":114},"span",{"class":112,"line":113},"line",1,[115,121,127,133,138,144,150],{"type":19,"tag":110,"props":116,"children":118},{"style":117},"--shiki-default:#DF69BA;--shiki-dark:#FF79C6",[119],{"type":24,"value":120},"import",{"type":19,"tag":110,"props":122,"children":124},{"style":123},"--shiki-default:#F85552;--shiki-dark:#FF79C6",[125],{"type":24,"value":126}," type",{"type":19,"tag":110,"props":128,"children":130},{"style":129},"--shiki-default:#5C6A72;--shiki-dark:#F8F8F2",[131],{"type":24,"value":132}," { MarkdownNode, MarkdownRoot, ParsedContent } ",{"type":19,"tag":110,"props":134,"children":135},{"style":123},[136],{"type":24,"value":137},"from",{"type":19,"tag":110,"props":139,"children":141},{"style":140},"--shiki-default:#DFA000;--shiki-dark:#E9F284",[142],{"type":24,"value":143}," \"",{"type":19,"tag":110,"props":145,"children":147},{"style":146},"--shiki-default:#DFA000;--shiki-dark:#F1FA8C",[148],{"type":24,"value":149},"@nuxt/content",{"type":19,"tag":110,"props":151,"children":152},{"style":140},[153],{"type":24,"value":154},"\"\n",{"type":19,"tag":110,"props":156,"children":158},{"class":112,"line":157},2,[159],{"type":19,"tag":110,"props":160,"children":162},{"emptyLinePlaceholder":161},true,[163],{"type":24,"value":164},"\n",{"type":19,"tag":110,"props":166,"children":168},{"class":112,"line":167},3,[169,174,179,185,190,196,201,207],{"type":19,"tag":110,"props":170,"children":171},{"style":117},[172],{"type":24,"value":173},"export",{"type":19,"tag":110,"props":175,"children":176},{"style":123},[177],{"type":24,"value":178}," default",{"type":19,"tag":110,"props":180,"children":182},{"style":181},"--shiki-default:#8DA101;--shiki-dark:#50FA7B",[183],{"type":24,"value":184}," defineNitroPlugin",{"type":19,"tag":110,"props":186,"children":187},{"style":129},[188],{"type":24,"value":189},"((",{"type":19,"tag":110,"props":191,"children":193},{"style":192},"--shiki-default:#5C6A72;--shiki-default-font-style:inherit;--shiki-dark:#FFB86C;--shiki-dark-font-style:italic",[194],{"type":24,"value":195},"nitroApp",{"type":19,"tag":110,"props":197,"children":198},{"style":129},[199],{"type":24,"value":200},") ",{"type":19,"tag":110,"props":202,"children":204},{"style":203},"--shiki-default:#F57D26;--shiki-dark:#FF79C6",[205],{"type":24,"value":206},"=>",{"type":19,"tag":110,"props":208,"children":209},{"style":129},[210],{"type":24,"value":211}," {\n",{"type":19,"tag":110,"props":213,"children":215},{"class":112,"line":214},4,[216,221,227,232,236,241,246,251,255,259,264,269,273,277],{"type":19,"tag":110,"props":217,"children":218},{"style":129},[219],{"type":24,"value":220},"  nitroApp",{"type":19,"tag":110,"props":222,"children":224},{"style":223},"--shiki-default:#939F91;--shiki-dark:#F8F8F2",[225],{"type":24,"value":226},".",{"type":19,"tag":110,"props":228,"children":229},{"style":129},[230],{"type":24,"value":231},"hooks",{"type":19,"tag":110,"props":233,"children":234},{"style":223},[235],{"type":24,"value":226},{"type":19,"tag":110,"props":237,"children":238},{"style":181},[239],{"type":24,"value":240},"hook",{"type":19,"tag":110,"props":242,"children":243},{"style":129},[244],{"type":24,"value":245},"(",{"type":19,"tag":110,"props":247,"children":248},{"style":140},[249],{"type":24,"value":250},"\"",{"type":19,"tag":110,"props":252,"children":253},{"style":146},[254],{"type":24,"value":70},{"type":19,"tag":110,"props":256,"children":257},{"style":140},[258],{"type":24,"value":250},{"type":19,"tag":110,"props":260,"children":261},{"style":129},[262],{"type":24,"value":263},", (",{"type":19,"tag":110,"props":265,"children":266},{"style":192},[267],{"type":24,"value":268},"file",{"type":19,"tag":110,"props":270,"children":271},{"style":129},[272],{"type":24,"value":200},{"type":19,"tag":110,"props":274,"children":275},{"style":203},[276],{"type":24,"value":206},{"type":19,"tag":110,"props":278,"children":279},{"style":129},[280],{"type":24,"value":211},{"type":19,"tag":110,"props":282,"children":284},{"class":112,"line":283},5,[285,290,295,299,304,308,313,317,321,326,330,334,339,344,348],{"type":19,"tag":110,"props":286,"children":287},{"style":123},[288],{"type":24,"value":289},"    if",{"type":19,"tag":110,"props":291,"children":292},{"style":129},[293],{"type":24,"value":294}," (file",{"type":19,"tag":110,"props":296,"children":297},{"style":223},[298],{"type":24,"value":226},{"type":19,"tag":110,"props":300,"children":301},{"style":129},[302],{"type":24,"value":303},"_id",{"type":19,"tag":110,"props":305,"children":306},{"style":223},[307],{"type":24,"value":226},{"type":19,"tag":110,"props":309,"children":310},{"style":181},[311],{"type":24,"value":312},"endsWith",{"type":19,"tag":110,"props":314,"children":315},{"style":129},[316],{"type":24,"value":245},{"type":19,"tag":110,"props":318,"children":319},{"style":140},[320],{"type":24,"value":250},{"type":19,"tag":110,"props":322,"children":323},{"style":146},[324],{"type":24,"value":325},".md",{"type":19,"tag":110,"props":327,"children":328},{"style":140},[329],{"type":24,"value":250},{"type":19,"tag":110,"props":331,"children":332},{"style":129},[333],{"type":24,"value":200},{"type":19,"tag":110,"props":335,"children":336},{"style":203},[337],{"type":24,"value":338},"&&",{"type":19,"tag":110,"props":340,"children":341},{"style":129},[342],{"type":24,"value":343}," file",{"type":19,"tag":110,"props":345,"children":346},{"style":223},[347],{"type":24,"value":226},{"type":19,"tag":110,"props":349,"children":350},{"style":129},[351],{"type":24,"value":352},"body) {\n",{"type":19,"tag":110,"props":354,"children":356},{"class":112,"line":355},6,[357,362],{"type":19,"tag":110,"props":358,"children":359},{"style":181},[360],{"type":24,"value":361},"        addExcerpt",{"type":19,"tag":110,"props":363,"children":364},{"style":129},[365],{"type":24,"value":366},"(file)\n",{"type":19,"tag":110,"props":368,"children":370},{"class":112,"line":369},7,[371],{"type":19,"tag":110,"props":372,"children":373},{"style":129},[374],{"type":24,"value":375},"      }\n",{"type":19,"tag":110,"props":377,"children":379},{"class":112,"line":378},8,[380],{"type":19,"tag":110,"props":381,"children":382},{"style":129},[383],{"type":24,"value":384},"    }\n",{"type":19,"tag":110,"props":386,"children":388},{"class":112,"line":387},9,[389],{"type":19,"tag":110,"props":390,"children":391},{"style":129},[392],{"type":24,"value":393},"  })\n",{"type":19,"tag":110,"props":395,"children":397},{"class":112,"line":396},10,[398],{"type":19,"tag":110,"props":399,"children":400},{"style":129},[401],{"type":24,"value":402},"})\n",{"type":19,"tag":110,"props":404,"children":406},{"class":112,"line":405},11,[407],{"type":19,"tag":110,"props":408,"children":409},{"emptyLinePlaceholder":161},[410],{"type":24,"value":164},{"type":19,"tag":110,"props":412,"children":414},{"class":112,"line":413},12,[415,420,425,430,435,439,445,451,455,459],{"type":19,"tag":110,"props":416,"children":417},{"style":203},[418],{"type":24,"value":419},"const",{"type":19,"tag":110,"props":421,"children":422},{"style":181},[423],{"type":24,"value":424}," addExcerpt",{"type":19,"tag":110,"props":426,"children":427},{"style":203},[428],{"type":24,"value":429}," =",{"type":19,"tag":110,"props":431,"children":432},{"style":129},[433],{"type":24,"value":434}," (",{"type":19,"tag":110,"props":436,"children":437},{"style":192},[438],{"type":24,"value":268},{"type":19,"tag":110,"props":440,"children":442},{"style":441},"--shiki-default:#939F91;--shiki-dark:#FF79C6",[443],{"type":24,"value":444},":",{"type":19,"tag":110,"props":446,"children":448},{"style":447},"--shiki-default:#35A77C;--shiki-default-font-style:inherit;--shiki-dark:#8BE9FD;--shiki-dark-font-style:italic",[449],{"type":24,"value":450}," ParsedContent",{"type":19,"tag":110,"props":452,"children":453},{"style":129},[454],{"type":24,"value":200},{"type":19,"tag":110,"props":456,"children":457},{"style":203},[458],{"type":24,"value":206},{"type":19,"tag":110,"props":460,"children":461},{"style":129},[462],{"type":24,"value":211},{"type":19,"tag":110,"props":464,"children":466},{"class":112,"line":465},13,[467,472,476,480,485],{"type":19,"tag":110,"props":468,"children":469},{"style":123},[470],{"type":24,"value":471},"  if",{"type":19,"tag":110,"props":473,"children":474},{"style":129},[475],{"type":24,"value":294},{"type":19,"tag":110,"props":477,"children":478},{"style":223},[479],{"type":24,"value":226},{"type":19,"tag":110,"props":481,"children":482},{"style":129},[483],{"type":24,"value":484},"excerpt) ",{"type":19,"tag":110,"props":486,"children":487},{"style":123},[488],{"type":24,"value":489},"return\n",{"type":19,"tag":110,"props":491,"children":493},{"class":112,"line":492},14,[494],{"type":19,"tag":110,"props":495,"children":496},{"emptyLinePlaceholder":161},[497],{"type":24,"value":164},{"type":19,"tag":110,"props":499,"children":501},{"class":112,"line":500},15,[502,507,512,516,521,525,530,534,538,542,546,551,555],{"type":19,"tag":110,"props":503,"children":504},{"style":203},[505],{"type":24,"value":506},"  const",{"type":19,"tag":110,"props":508,"children":509},{"style":129},[510],{"type":24,"value":511}," excerpt",{"type":19,"tag":110,"props":513,"children":514},{"style":441},[515],{"type":24,"value":444},{"type":19,"tag":110,"props":517,"children":518},{"style":447},[519],{"type":24,"value":520}," MarkdownRoot",{"type":19,"tag":110,"props":522,"children":523},{"style":203},[524],{"type":24,"value":429},{"type":19,"tag":110,"props":526,"children":527},{"style":129},[528],{"type":24,"value":529}," { type",{"type":19,"tag":110,"props":531,"children":532},{"style":441},[533],{"type":24,"value":444},{"type":19,"tag":110,"props":535,"children":536},{"style":140},[537],{"type":24,"value":143},{"type":19,"tag":110,"props":539,"children":540},{"style":146},[541],{"type":24,"value":16},{"type":19,"tag":110,"props":543,"children":544},{"style":140},[545],{"type":24,"value":250},{"type":19,"tag":110,"props":547,"children":548},{"style":129},[549],{"type":24,"value":550},", children",{"type":19,"tag":110,"props":552,"children":553},{"style":441},[554],{"type":24,"value":444},{"type":19,"tag":110,"props":556,"children":557},{"style":129},[558],{"type":24,"value":559}," [] }\n",{"type":19,"tag":110,"props":561,"children":563},{"class":112,"line":562},16,[564,569,574,579],{"type":19,"tag":110,"props":565,"children":566},{"style":203},[567],{"type":24,"value":568},"  let",{"type":19,"tag":110,"props":570,"children":571},{"style":129},[572],{"type":24,"value":573}," paragraphsToInclude ",{"type":19,"tag":110,"props":575,"children":576},{"style":203},[577],{"type":24,"value":578},"=",{"type":19,"tag":110,"props":580,"children":582},{"style":581},"--shiki-default:#DF69BA;--shiki-dark:#BD93F9",[583],{"type":24,"value":584}," 2\n",{"type":19,"tag":110,"props":586,"children":588},{"class":112,"line":587},17,[589],{"type":19,"tag":110,"props":590,"children":591},{"emptyLinePlaceholder":161},[592],{"type":24,"value":164},{"type":19,"tag":110,"props":594,"children":596},{"class":112,"line":595},18,[597,602,607,611,616,621,625,630,635,639,643],{"type":19,"tag":110,"props":598,"children":599},{"style":181},[600],{"type":24,"value":601},"  visit",{"type":19,"tag":110,"props":603,"children":604},{"style":129},[605],{"type":24,"value":606},"(file",{"type":19,"tag":110,"props":608,"children":609},{"style":223},[610],{"type":24,"value":226},{"type":19,"tag":110,"props":612,"children":613},{"style":129},[614],{"type":24,"value":615},"body",{"type":19,"tag":110,"props":617,"children":618},{"style":203},[619],{"type":24,"value":620},"!",{"type":19,"tag":110,"props":622,"children":623},{"style":223},[624],{"type":24,"value":226},{"type":19,"tag":110,"props":626,"children":627},{"style":129},[628],{"type":24,"value":629},"children, (",{"type":19,"tag":110,"props":631,"children":632},{"style":192},[633],{"type":24,"value":634},"n",{"type":19,"tag":110,"props":636,"children":637},{"style":129},[638],{"type":24,"value":200},{"type":19,"tag":110,"props":640,"children":641},{"style":203},[642],{"type":24,"value":206},{"type":19,"tag":110,"props":644,"children":645},{"style":129},[646],{"type":24,"value":211},{"type":19,"tag":110,"props":648,"children":650},{"class":112,"line":649},19,[651,655,660,665,670,674],{"type":19,"tag":110,"props":652,"children":653},{"style":123},[654],{"type":24,"value":289},{"type":19,"tag":110,"props":656,"children":657},{"style":129},[658],{"type":24,"value":659}," (paragraphsToInclude ",{"type":19,"tag":110,"props":661,"children":662},{"style":203},[663],{"type":24,"value":664},"==",{"type":19,"tag":110,"props":666,"children":667},{"style":581},[668],{"type":24,"value":669}," 0",{"type":19,"tag":110,"props":671,"children":672},{"style":129},[673],{"type":24,"value":200},{"type":19,"tag":110,"props":675,"children":676},{"style":123},[677],{"type":24,"value":489},{"type":19,"tag":110,"props":679,"children":681},{"class":112,"line":680},20,[682,686,691,695,699,703,707],{"type":19,"tag":110,"props":683,"children":684},{"style":123},[685],{"type":24,"value":289},{"type":19,"tag":110,"props":687,"children":688},{"style":129},[689],{"type":24,"value":690}," (n?.tag ",{"type":19,"tag":110,"props":692,"children":693},{"style":203},[694],{"type":24,"value":664},{"type":19,"tag":110,"props":696,"children":697},{"style":140},[698],{"type":24,"value":143},{"type":19,"tag":110,"props":700,"children":701},{"style":146},[702],{"type":24,"value":20},{"type":19,"tag":110,"props":704,"children":705},{"style":140},[706],{"type":24,"value":250},{"type":19,"tag":110,"props":708,"children":709},{"style":129},[710],{"type":24,"value":711},") {\n",{"type":19,"tag":110,"props":713,"children":715},{"class":112,"line":714},21,[716,721],{"type":19,"tag":110,"props":717,"children":718},{"style":129},[719],{"type":24,"value":720},"      paragraphsToInclude",{"type":19,"tag":110,"props":722,"children":723},{"style":203},[724],{"type":24,"value":725},"--\n",{"type":19,"tag":110,"props":727,"children":729},{"class":112,"line":728},22,[730,735,739,744,748,753,757,762],{"type":19,"tag":110,"props":731,"children":732},{"style":129},[733],{"type":24,"value":734},"      excerpt",{"type":19,"tag":110,"props":736,"children":737},{"style":223},[738],{"type":24,"value":226},{"type":19,"tag":110,"props":740,"children":741},{"style":129},[742],{"type":24,"value":743},"children",{"type":19,"tag":110,"props":745,"children":746},{"style":223},[747],{"type":24,"value":226},{"type":19,"tag":110,"props":749,"children":750},{"style":181},[751],{"type":24,"value":752},"push",{"type":19,"tag":110,"props":754,"children":755},{"style":129},[756],{"type":24,"value":245},{"type":19,"tag":110,"props":758,"children":759},{"style":181},[760],{"type":24,"value":761},"withRemovedLinks",{"type":19,"tag":110,"props":763,"children":764},{"style":129},[765],{"type":24,"value":766},"(n))\n",{"type":19,"tag":110,"props":768,"children":770},{"class":112,"line":769},23,[771],{"type":19,"tag":110,"props":772,"children":773},{"style":129},[774],{"type":24,"value":384},{"type":19,"tag":110,"props":776,"children":778},{"class":112,"line":777},24,[779],{"type":19,"tag":110,"props":780,"children":781},{"style":129},[782],{"type":24,"value":393},{"type":19,"tag":110,"props":784,"children":786},{"class":112,"line":785},25,[787],{"type":19,"tag":110,"props":788,"children":789},{"emptyLinePlaceholder":161},[790],{"type":24,"value":164},{"type":19,"tag":110,"props":792,"children":794},{"class":112,"line":793},26,[795,800,804,809,813],{"type":19,"tag":110,"props":796,"children":797},{"style":129},[798],{"type":24,"value":799},"  file",{"type":19,"tag":110,"props":801,"children":802},{"style":223},[803],{"type":24,"value":226},{"type":19,"tag":110,"props":805,"children":806},{"style":129},[807],{"type":24,"value":808},"excerpt ",{"type":19,"tag":110,"props":810,"children":811},{"style":203},[812],{"type":24,"value":578},{"type":19,"tag":110,"props":814,"children":815},{"style":129},[816],{"type":24,"value":817}," excerpt\n",{"type":19,"tag":110,"props":819,"children":821},{"class":112,"line":820},27,[822],{"type":19,"tag":110,"props":823,"children":824},{"style":129},[825],{"type":24,"value":826},"}\n",{"type":19,"tag":110,"props":828,"children":830},{"class":112,"line":829},28,[831],{"type":19,"tag":110,"props":832,"children":833},{"emptyLinePlaceholder":161},[834],{"type":24,"value":164},{"type":19,"tag":110,"props":836,"children":838},{"class":112,"line":837},29,[839,843,848,852,856,860,864,869,874,878,882,887],{"type":19,"tag":110,"props":840,"children":841},{"style":203},[842],{"type":24,"value":419},{"type":19,"tag":110,"props":844,"children":845},{"style":181},[846],{"type":24,"value":847}," withRemovedLinks",{"type":19,"tag":110,"props":849,"children":850},{"style":203},[851],{"type":24,"value":429},{"type":19,"tag":110,"props":853,"children":854},{"style":129},[855],{"type":24,"value":434},{"type":19,"tag":110,"props":857,"children":858},{"style":192},[859],{"type":24,"value":634},{"type":19,"tag":110,"props":861,"children":862},{"style":441},[863],{"type":24,"value":444},{"type":19,"tag":110,"props":865,"children":866},{"style":447},[867],{"type":24,"value":868}," MarkdownNode",{"type":19,"tag":110,"props":870,"children":871},{"style":129},[872],{"type":24,"value":873},")",{"type":19,"tag":110,"props":875,"children":876},{"style":441},[877],{"type":24,"value":444},{"type":19,"tag":110,"props":879,"children":880},{"style":447},[881],{"type":24,"value":868},{"type":19,"tag":110,"props":883,"children":884},{"style":203},[885],{"type":24,"value":886}," =>",{"type":19,"tag":110,"props":888,"children":889},{"style":129},[890],{"type":24,"value":211},{"type":19,"tag":110,"props":892,"children":894},{"class":112,"line":893},30,[895,899,904,908,912,916],{"type":19,"tag":110,"props":896,"children":897},{"style":203},[898],{"type":24,"value":506},{"type":19,"tag":110,"props":900,"children":901},{"style":129},[902],{"type":24,"value":903}," node",{"type":19,"tag":110,"props":905,"children":906},{"style":441},[907],{"type":24,"value":444},{"type":19,"tag":110,"props":909,"children":910},{"style":447},[911],{"type":24,"value":868},{"type":19,"tag":110,"props":913,"children":914},{"style":203},[915],{"type":24,"value":429},{"type":19,"tag":110,"props":917,"children":918},{"style":129},[919],{"type":24,"value":211},{"type":19,"tag":110,"props":921,"children":923},{"class":112,"line":922},31,[924,929,933,938,942],{"type":19,"tag":110,"props":925,"children":926},{"style":129},[927],{"type":24,"value":928},"    type",{"type":19,"tag":110,"props":930,"children":931},{"style":441},[932],{"type":24,"value":444},{"type":19,"tag":110,"props":934,"children":935},{"style":129},[936],{"type":24,"value":937}," n",{"type":19,"tag":110,"props":939,"children":940},{"style":223},[941],{"type":24,"value":226},{"type":19,"tag":110,"props":943,"children":944},{"style":129},[945],{"type":24,"value":946},"type,\n",{"type":19,"tag":110,"props":948,"children":950},{"class":112,"line":949},32,[951,956,960,964,968],{"type":19,"tag":110,"props":952,"children":953},{"style":129},[954],{"type":24,"value":955},"    value",{"type":19,"tag":110,"props":957,"children":958},{"style":441},[959],{"type":24,"value":444},{"type":19,"tag":110,"props":961,"children":962},{"style":129},[963],{"type":24,"value":937},{"type":19,"tag":110,"props":965,"children":966},{"style":223},[967],{"type":24,"value":226},{"type":19,"tag":110,"props":969,"children":970},{"style":129},[971],{"type":24,"value":972},"value,\n",{"type":19,"tag":110,"props":974,"children":976},{"class":112,"line":975},33,[977,982,986,990,994],{"type":19,"tag":110,"props":978,"children":979},{"style":129},[980],{"type":24,"value":981},"    tag",{"type":19,"tag":110,"props":983,"children":984},{"style":441},[985],{"type":24,"value":444},{"type":19,"tag":110,"props":987,"children":988},{"style":129},[989],{"type":24,"value":937},{"type":19,"tag":110,"props":991,"children":992},{"style":223},[993],{"type":24,"value":226},{"type":19,"tag":110,"props":995,"children":996},{"style":129},[997],{"type":24,"value":998},"tag,\n",{"type":19,"tag":110,"props":1000,"children":1002},{"class":112,"line":1001},34,[1003,1008,1012,1016,1020],{"type":19,"tag":110,"props":1004,"children":1005},{"style":129},[1006],{"type":24,"value":1007},"    props",{"type":19,"tag":110,"props":1009,"children":1010},{"style":441},[1011],{"type":24,"value":444},{"type":19,"tag":110,"props":1013,"children":1014},{"style":129},[1015],{"type":24,"value":937},{"type":19,"tag":110,"props":1017,"children":1018},{"style":223},[1019],{"type":24,"value":226},{"type":19,"tag":110,"props":1021,"children":1022},{"style":129},[1023],{"type":24,"value":1024},"props,\n",{"type":19,"tag":110,"props":1026,"children":1028},{"class":112,"line":1027},35,[1029,1034,1038,1042,1046],{"type":19,"tag":110,"props":1030,"children":1031},{"style":129},[1032],{"type":24,"value":1033},"    attributes",{"type":19,"tag":110,"props":1035,"children":1036},{"style":441},[1037],{"type":24,"value":444},{"type":19,"tag":110,"props":1039,"children":1040},{"style":129},[1041],{"type":24,"value":937},{"type":19,"tag":110,"props":1043,"children":1044},{"style":223},[1045],{"type":24,"value":226},{"type":19,"tag":110,"props":1047,"children":1048},{"style":129},[1049],{"type":24,"value":1050},"attributes,\n",{"type":19,"tag":110,"props":1052,"children":1054},{"class":112,"line":1053},36,[1055,1060,1064,1069,1074,1078],{"type":19,"tag":110,"props":1056,"children":1057},{"style":129},[1058],{"type":24,"value":1059},"    children",{"type":19,"tag":110,"props":1061,"children":1062},{"style":441},[1063],{"type":24,"value":444},{"type":19,"tag":110,"props":1065,"children":1066},{"style":129},[1067],{"type":24,"value":1068}," [] ",{"type":19,"tag":110,"props":1070,"children":1071},{"style":123},[1072],{"type":24,"value":1073},"as",{"type":19,"tag":110,"props":1075,"children":1076},{"style":447},[1077],{"type":24,"value":868},{"type":19,"tag":110,"props":1079,"children":1080},{"style":129},[1081],{"type":24,"value":1082},"[],\n",{"type":19,"tag":110,"props":1084,"children":1086},{"class":112,"line":1085},37,[1087],{"type":19,"tag":110,"props":1088,"children":1089},{"style":129},[1090],{"type":24,"value":1091},"  }\n",{"type":19,"tag":110,"props":1093,"children":1095},{"class":112,"line":1094},38,[1096],{"type":19,"tag":110,"props":1097,"children":1098},{"emptyLinePlaceholder":161},[1099],{"type":24,"value":164},{"type":19,"tag":110,"props":1101,"children":1103},{"class":112,"line":1102},39,[1104,1108,1113,1117,1121,1125,1129,1134,1138,1142],{"type":19,"tag":110,"props":1105,"children":1106},{"style":181},[1107],{"type":24,"value":601},{"type":19,"tag":110,"props":1109,"children":1110},{"style":129},[1111],{"type":24,"value":1112},"(n",{"type":19,"tag":110,"props":1114,"children":1115},{"style":223},[1116],{"type":24,"value":226},{"type":19,"tag":110,"props":1118,"children":1119},{"style":129},[1120],{"type":24,"value":743},{"type":19,"tag":110,"props":1122,"children":1123},{"style":203},[1124],{"type":24,"value":620},{"type":19,"tag":110,"props":1126,"children":1127},{"style":129},[1128],{"type":24,"value":263},{"type":19,"tag":110,"props":1130,"children":1131},{"style":192},[1132],{"type":24,"value":1133},"c",{"type":19,"tag":110,"props":1135,"children":1136},{"style":129},[1137],{"type":24,"value":200},{"type":19,"tag":110,"props":1139,"children":1140},{"style":203},[1141],{"type":24,"value":206},{"type":19,"tag":110,"props":1143,"children":1144},{"style":129},[1145],{"type":24,"value":211},{"type":19,"tag":110,"props":1147,"children":1149},{"class":112,"line":1148},40,[1150,1154,1159,1163,1168,1173,1177,1181,1185],{"type":19,"tag":110,"props":1151,"children":1152},{"style":123},[1153],{"type":24,"value":289},{"type":19,"tag":110,"props":1155,"children":1156},{"style":129},[1157],{"type":24,"value":1158}," (c",{"type":19,"tag":110,"props":1160,"children":1161},{"style":223},[1162],{"type":24,"value":226},{"type":19,"tag":110,"props":1164,"children":1165},{"style":129},[1166],{"type":24,"value":1167},"tag ",{"type":19,"tag":110,"props":1169,"children":1170},{"style":203},[1171],{"type":24,"value":1172},"!=",{"type":19,"tag":110,"props":1174,"children":1175},{"style":140},[1176],{"type":24,"value":143},{"type":19,"tag":110,"props":1178,"children":1179},{"style":146},[1180],{"type":24,"value":74},{"type":19,"tag":110,"props":1182,"children":1183},{"style":140},[1184],{"type":24,"value":250},{"type":19,"tag":110,"props":1186,"children":1187},{"style":129},[1188],{"type":24,"value":711},{"type":19,"tag":110,"props":1190,"children":1192},{"class":112,"line":1191},41,[1193,1198,1202,1207,1211],{"type":19,"tag":110,"props":1194,"children":1195},{"style":129},[1196],{"type":24,"value":1197},"      node",{"type":19,"tag":110,"props":1199,"children":1200},{"style":223},[1201],{"type":24,"value":226},{"type":19,"tag":110,"props":1203,"children":1204},{"style":129},[1205],{"type":24,"value":1206},"children?.",{"type":19,"tag":110,"props":1208,"children":1209},{"style":181},[1210],{"type":24,"value":752},{"type":19,"tag":110,"props":1212,"children":1213},{"style":129},[1214],{"type":24,"value":1215},"(c)\n",{"type":19,"tag":110,"props":1217,"children":1219},{"class":112,"line":1218},42,[1220],{"type":19,"tag":110,"props":1221,"children":1222},{"style":129},[1223],{"type":24,"value":384},{"type":19,"tag":110,"props":1225,"children":1227},{"class":112,"line":1226},43,[1228],{"type":19,"tag":110,"props":1229,"children":1230},{"style":129},[1231],{"type":24,"value":393},{"type":19,"tag":110,"props":1233,"children":1235},{"class":112,"line":1234},44,[1236],{"type":19,"tag":110,"props":1237,"children":1238},{"emptyLinePlaceholder":161},[1239],{"type":24,"value":164},{"type":19,"tag":110,"props":1241,"children":1243},{"class":112,"line":1242},45,[1244,1249],{"type":19,"tag":110,"props":1245,"children":1246},{"style":123},[1247],{"type":24,"value":1248},"  return",{"type":19,"tag":110,"props":1250,"children":1251},{"style":129},[1252],{"type":24,"value":1253}," node\n",{"type":19,"tag":110,"props":1255,"children":1257},{"class":112,"line":1256},46,[1258],{"type":19,"tag":110,"props":1259,"children":1260},{"style":129},[1261],{"type":24,"value":826},{"type":19,"tag":1263,"props":1264,"children":1265},"style",{},[1266],{"type":24,"value":1267},"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);}",{"title":104,"searchDepth":157,"depth":157,"links":1269},[],"markdown","content:blog:2024:generated-excerpts-for-nuxt3-content.md","content","blog/2024/generated-excerpts-for-nuxt3-content.md","blog/2024/generated-excerpts-for-nuxt3-content","md","/blog/2024/generated-excerpts-for-nuxt3-content/",431,0,[1280,1284,1288],{"title":1281,"date":1282,"url":1283},"HTML5 Video Cheatsheet: Optimizing videos for the web","2025-12-05T00:00:00Z","/blog/2025/html5-video-cheatsheet/",{"title":1285,"date":1286,"url":1287},"Transactions in the MongoDB EF Core Provider","2025-10-25","/blog/2025/mongodb-explicit-transactions/",{"title":1289,"date":1290,"url":1291},"Queryable Encryption with the MongoDB EF Core Provider","2025-09-22","/blog/2025/mongodb-queryable-encryption/",[],1779224630482]