[{"data":1,"prerenderedAt":99243},["ShallowReactive",2],{"app-menu-posts":3,"blog-vue-lifecycle-ssr-serverprefetch.en-en":51920,"blog-slug-sidebar-posts":53328},[4,1674,3171,5161,7503,9077,10659,11926,13085,15707,17778,20597,21896,24577,25859,28119,30953,33984,36972,40329,42202,45599,46397,48352,49020,49892,50878,51078,51736],{"id":5,"title":6,"body":7,"cover":1623,"coverAlt":1624,"date":1625,"description":1626,"draft":1627,"extension":1628,"head":1629,"locale":1641,"meta":1642,"navigation":327,"path":1648,"schemaOrg":1649,"seo":1652,"series":1653,"seriesDescription":1654,"seriesOrder":391,"seriesTitle":1655,"slug":1656,"stem":1657,"tags":1658,"__hash__":1673},"blog/blog/vue-lifecycle-ssr-serverprefetch.es.md","Ciclos de vida en Vue: renderizado del lado del servidor (serverPrefetch)",{"type":8,"value":9,"toc":1609},"minimark",[10,20,24,29,34,37,53,58,62,76,79,93,96,123,126,130,135,146,153,157,160,163,181,187,191,196,205,215,219,237,241,244,249,253,259,262,266,968,1581,1587,1593,1597,1602,1605],[11,12,14,15,19],"h1",{"id":13},"ciclos-de-vida-en-vue-renderizado-del-lado-del-servidor-serverprefetch","Ciclos de vida en Vue: renderizado del lado del servidor (",[16,17,18],"code",{},"serverPrefetch",")",[21,22,23],"p",{},"Cuando una aplicación usa SSR (Server-Side Rendering), el primer render ya no ocurre únicamente en el navegador. El servidor genera el HTML antes de enviarlo y, si los datos importantes llegan tarde, el usuario recibe una página incompleta o poco útil hasta que el cliente vuelve a solicitarlos.",[21,25,26,28],{},[16,27,18],{}," existe precisamente para resolver ese momento. Permite esperar datos asíncronos antes de renderizar el componente en el servidor, de modo que el HTML inicial ya incluya contenido real y no dependa de esqueletos o placeholders que cambian durante la hidratación.",[30,31,33],"h2",{"id":32},"por-qué-esto-importa","Por qué esto importa",[21,35,36],{},"En SSR, la primera impresión depende del HTML generado en el servidor. Si un producto, un artículo o un resumen de dashboard se cargan solo después de montar el componente en el cliente, se pierden varias ventajas:",[38,39,40,44,47,50],"ul",{},[41,42,43],"li",{},"El usuario ve menos contenido útil en el primer paint.",[41,45,46],{},"El SEO recibe un documento más pobre.",[41,48,49],{},"La hidratación puede sentirse inconsistente.",[41,51,52],{},"Se duplica trabajo entre servidor y cliente.",[21,54,55,57],{},[16,56,18],{}," ayuda a que los datos críticos estén disponibles a tiempo para el render inicial. No sustituye toda la estrategia de obtención de datos, pero cubre muy bien la fase previa al render del servidor.",[30,59,61],{"id":60},"concepto-clave","Concepto clave",[21,63,64,66,67,70,71,75],{},[16,65,18],{}," (Options API) y ",[16,68,69],{},"onServerPrefetch()"," (Composition API) permiten registrar una función asíncrona que Vue resuelve ",[72,73,74],"strong",{},"antes"," de renderizar el componente en el servidor.",[21,77,78],{},"Flujo simplificado:",[38,80,81,84,87,90],{},[41,82,83],{},"El componente entra en el árbol SSR.",[41,85,86],{},"Vue ejecuta el hook.",[41,88,89],{},"Si el hook devuelve una promesa, el renderer espera.",[41,91,92],{},"Cuando la promesa se resuelve, Vue genera el HTML con los datos disponibles.",[21,94,95],{},"Matices importantes:",[38,97,98,105,108],{},[41,99,100,101,104],{},"Solo se ejecuta durante ",[72,102,103],{},"server-side rendering",".",[41,106,107],{},"No reemplaza la carga en cliente cuando el componente aparece fuera del render inicial.",[41,109,110,111,114,115,118,119,122],{},"En ",[72,112,113],{},"Nuxt",", suele ser preferible usar ",[16,116,117],{},"useAsyncData()"," o ",[16,120,121],{},"useFetch()",", ya que integran serialización, caché e hidratación automáticamente.",[21,124,125],{},"Puedes pensar en este hook como una herramienta de bajo nivel para SSR: útil cuando necesitas control fino dentro de un componente renderizado en servidor.",[30,127,129],{"id":128},"cuándo-usarlo","Cuándo usarlo",[21,131,132,134],{},[16,133,18],{}," es adecuado cuando el contenido del HTML inicial es crítico:",[38,136,137,140,143],{},[41,138,139],{},"Páginas de producto con nombre, precio y disponibilidad.",[41,141,142],{},"Artículos o contenido público que debe ser indexable y visible desde el inicio.",[41,144,145],{},"Componentes que dependen del request actual antes de renderizar.",[21,147,148,149,152],{},"Regla práctica: si el dato debe existir ",[72,150,151],{},"antes del render del servidor",", este hook es una buena opción.",[30,154,156],{"id":155},"cuándo-evitarlo","Cuándo evitarlo",[21,158,159],{},"No es recomendable usarlo como solución genérica para cualquier fetch.",[21,161,162],{},"Evítalo cuando:",[38,164,165,168,171,178],{},[41,166,167],{},"El componente solo se renderiza en cliente.",[41,169,170],{},"La información no es crítica para el HTML inicial.",[41,172,173,174,118,176,104],{},"Ya usas Nuxt y el caso encaja mejor en ",[16,175,117],{},[16,177,121],{},[41,179,180],{},"El fetch depende de API exclusivas del navegador.",[21,182,183,184,186],{},"Además, evita operaciones costosas o innecesarias: todo lo que ejecutes en ",[16,185,18],{}," impacta directamente en el tiempo de respuesta del servidor.",[30,188,190],{"id":189},"errores-comunes","Errores comunes",[192,193,195],"h3",{"id":194},"_1-asumir-que-también-se-ejecuta-en-navegación-cliente","1. Asumir que también se ejecuta en navegación cliente",[21,197,198,200,201,204],{},[16,199,18],{}," no sustituye ",[16,202,203],{},"mounted"," ni una estrategia completa de carga de datos. Si el componente se renderiza solo en cliente, este hook no se ejecuta.",[21,206,207,208,118,211,214],{},"Solución: añadir un fallback en ",[16,209,210],{},"onMounted()",[16,212,213],{},"mounted()"," cuando los datos no estén disponibles.",[192,216,218],{"id":217},"_2-usar-api-del-navegador","2. Usar API del navegador",[21,220,221,222,225,226,229,230,233,234,236],{},"Durante SSR no existen ",[16,223,224],{},"window",", ",[16,227,228],{},"document"," ni ",[16,231,232],{},"localStorage",". El código dentro de ",[16,235,18],{}," debe ser seguro para ejecutarse en servidor.",[192,238,240],{"id":239},"_3-duplicar-el-fetch-innecesariamente","3. Duplicar el fetch innecesariamente",[21,242,243],{},"Si el servidor ya obtuvo los datos, no tiene sentido repetir la petición en cliente.",[21,245,246,247,104],{},"Solución: comprobar si el estado ya existe antes de hacer el fetch en ",[16,248,203],{},[192,250,252],{"id":251},"_4-sobrecargar-componentes-profundos","4. Sobrecargar componentes profundos",[21,254,255,256,258],{},"Multiplicar ",[16,257,18],{}," en muchos componentes puede aumentar el tiempo de respuesta y dificultar el flujo de datos.",[21,260,261],{},"Distribuye responsabilidades: página, layout y componentes deben tener roles claros.",[30,263,265],{"id":264},"ejemplo-práctico","Ejemplo práctico",[267,268,274],"pre",{"className":269,"code":270,"filename":271,"language":272,"meta":273,"style":273},"language-vue shiki shiki-themes github-light github-dark","\u003Cscript setup lang=\"ts\">\nimport { onMounted, onServerPrefetch, ref } from 'vue'\n\ntype Product = {\n  id: number\n  name: string\n  price: number\n  stock: number\n}\n\nconst product = ref\u003CProduct | null>(null)\nconst errorMessage = ref('')\n\nasync function fetchProduct() {\n  const response = await fetch('https://api.example.com/products/42')\n\n  if (!response.ok) {\n    throw new Error('No fue posible cargar el producto.')\n  }\n\n  product.value = (await response.json()) as Product\n}\n\nonServerPrefetch(async () => {\n  try {\n    await fetchProduct()\n  } catch (error) {\n    errorMessage.value =\n      error instanceof Error ? error.message : 'Error inesperado en SSR.'\n  }\n})\n\nonMounted(async () => {\n  if (product.value || errorMessage.value) return\n\n  try {\n    await fetchProduct()\n  } catch (error) {\n    errorMessage.value =\n      error instanceof Error ? error.message : 'Error inesperado en cliente.'\n  }\n})\n\u003C/script>\n\n\u003Ctemplate>\n  \u003Carticle class=\"product-card\">\n    \u003Cp v-if=\"errorMessage\">{{ errorMessage }}\u003C/p>\n\n    \u003Ctemplate v-else-if=\"product\">\n      \u003Ch1>{{ product.name }}\u003C/h1>\n      \u003Cp>Precio: {{ product.price }} USD\u003C/p>\n      \u003Cp>Stock: {{ product.stock }}\u003C/p>\n    \u003C/template>\n\n    \u003Cp v-else>Cargando producto...\u003C/p>\n  \u003C/article>\n\u003C/template>\n","Composition API","vue","",[16,275,276,306,322,329,344,358,369,379,389,395,400,434,454,459,474,498,503,518,537,543,548,576,581,586,604,612,623,635,644,666,671,677,682,698,715,720,727,736,745,752,770,775,780,790,795,805,824,847,852,874,889,903,917,927,932,949,959],{"__ignoreMap":273},[277,278,281,285,289,293,296,299,303],"span",{"class":279,"line":280},"line",1,[277,282,284],{"class":283},"sVt8B","\u003C",[277,286,288],{"class":287},"s9eBZ","script",[277,290,292],{"class":291},"sScJk"," setup",[277,294,295],{"class":291}," lang",[277,297,298],{"class":283},"=",[277,300,302],{"class":301},"sZZnC","\"ts\"",[277,304,305],{"class":283},">\n",[277,307,309,313,316,319],{"class":279,"line":308},2,[277,310,312],{"class":311},"szBVR","import",[277,314,315],{"class":283}," { onMounted, onServerPrefetch, ref } ",[277,317,318],{"class":311},"from",[277,320,321],{"class":301}," 'vue'\n",[277,323,325],{"class":279,"line":324},3,[277,326,328],{"emptyLinePlaceholder":327},true,"\n",[277,330,332,335,338,341],{"class":279,"line":331},4,[277,333,334],{"class":311},"type",[277,336,337],{"class":291}," Product",[277,339,340],{"class":311}," =",[277,342,343],{"class":283}," {\n",[277,345,347,351,354],{"class":279,"line":346},5,[277,348,350],{"class":349},"s4XuR","  id",[277,352,353],{"class":311},":",[277,355,357],{"class":356},"sj4cs"," number\n",[277,359,361,364,366],{"class":279,"line":360},6,[277,362,363],{"class":349},"  name",[277,365,353],{"class":311},[277,367,368],{"class":356}," string\n",[277,370,372,375,377],{"class":279,"line":371},7,[277,373,374],{"class":349},"  price",[277,376,353],{"class":311},[277,378,357],{"class":356},[277,380,382,385,387],{"class":279,"line":381},8,[277,383,384],{"class":349},"  stock",[277,386,353],{"class":311},[277,388,357],{"class":356},[277,390,392],{"class":279,"line":391},9,[277,393,394],{"class":283},"}\n",[277,396,398],{"class":279,"line":397},10,[277,399,328],{"emptyLinePlaceholder":327},[277,401,403,406,409,411,414,416,419,422,425,428,431],{"class":279,"line":402},11,[277,404,405],{"class":311},"const",[277,407,408],{"class":356}," product",[277,410,340],{"class":311},[277,412,413],{"class":291}," ref",[277,415,284],{"class":283},[277,417,418],{"class":291},"Product",[277,420,421],{"class":311}," |",[277,423,424],{"class":356}," null",[277,426,427],{"class":283},">(",[277,429,430],{"class":356},"null",[277,432,433],{"class":283},")\n",[277,435,437,439,442,444,446,449,452],{"class":279,"line":436},12,[277,438,405],{"class":311},[277,440,441],{"class":356}," errorMessage",[277,443,340],{"class":311},[277,445,413],{"class":291},[277,447,448],{"class":283},"(",[277,450,451],{"class":301},"''",[277,453,433],{"class":283},[277,455,457],{"class":279,"line":456},13,[277,458,328],{"emptyLinePlaceholder":327},[277,460,462,465,468,471],{"class":279,"line":461},14,[277,463,464],{"class":311},"async",[277,466,467],{"class":311}," function",[277,469,470],{"class":291}," fetchProduct",[277,472,473],{"class":283},"() {\n",[277,475,477,480,483,485,488,491,493,496],{"class":279,"line":476},15,[277,478,479],{"class":311},"  const",[277,481,482],{"class":356}," response",[277,484,340],{"class":311},[277,486,487],{"class":311}," await",[277,489,490],{"class":291}," fetch",[277,492,448],{"class":283},[277,494,495],{"class":301},"'https://api.example.com/products/42'",[277,497,433],{"class":283},[277,499,501],{"class":279,"line":500},16,[277,502,328],{"emptyLinePlaceholder":327},[277,504,506,509,512,515],{"class":279,"line":505},17,[277,507,508],{"class":311},"  if",[277,510,511],{"class":283}," (",[277,513,514],{"class":311},"!",[277,516,517],{"class":283},"response.ok) {\n",[277,519,521,524,527,530,532,535],{"class":279,"line":520},18,[277,522,523],{"class":311},"    throw",[277,525,526],{"class":311}," new",[277,528,529],{"class":291}," Error",[277,531,448],{"class":283},[277,533,534],{"class":301},"'No fue posible cargar el producto.'",[277,536,433],{"class":283},[277,538,540],{"class":279,"line":539},19,[277,541,542],{"class":283},"  }\n",[277,544,546],{"class":279,"line":545},20,[277,547,328],{"emptyLinePlaceholder":327},[277,549,551,554,556,558,561,564,567,570,573],{"class":279,"line":550},21,[277,552,553],{"class":283},"  product.value ",[277,555,298],{"class":311},[277,557,511],{"class":283},[277,559,560],{"class":311},"await",[277,562,563],{"class":283}," response.",[277,565,566],{"class":291},"json",[277,568,569],{"class":283},"()) ",[277,571,572],{"class":311},"as",[277,574,575],{"class":291}," Product\n",[277,577,579],{"class":279,"line":578},22,[277,580,394],{"class":283},[277,582,584],{"class":279,"line":583},23,[277,585,328],{"emptyLinePlaceholder":327},[277,587,589,592,594,596,599,602],{"class":279,"line":588},24,[277,590,591],{"class":291},"onServerPrefetch",[277,593,448],{"class":283},[277,595,464],{"class":311},[277,597,598],{"class":283}," () ",[277,600,601],{"class":311},"=>",[277,603,343],{"class":283},[277,605,607,610],{"class":279,"line":606},25,[277,608,609],{"class":311},"  try",[277,611,343],{"class":283},[277,613,615,618,620],{"class":279,"line":614},26,[277,616,617],{"class":311},"    await",[277,619,470],{"class":291},[277,621,622],{"class":283},"()\n",[277,624,626,629,632],{"class":279,"line":625},27,[277,627,628],{"class":283},"  } ",[277,630,631],{"class":311},"catch",[277,633,634],{"class":283}," (error) {\n",[277,636,638,641],{"class":279,"line":637},28,[277,639,640],{"class":283},"    errorMessage.value ",[277,642,643],{"class":311},"=\n",[277,645,647,650,653,655,658,661,663],{"class":279,"line":646},29,[277,648,649],{"class":283},"      error ",[277,651,652],{"class":311},"instanceof",[277,654,529],{"class":291},[277,656,657],{"class":311}," ?",[277,659,660],{"class":283}," error.message ",[277,662,353],{"class":311},[277,664,665],{"class":301}," 'Error inesperado en SSR.'\n",[277,667,669],{"class":279,"line":668},30,[277,670,542],{"class":283},[277,672,674],{"class":279,"line":673},31,[277,675,676],{"class":283},"})\n",[277,678,680],{"class":279,"line":679},32,[277,681,328],{"emptyLinePlaceholder":327},[277,683,685,688,690,692,694,696],{"class":279,"line":684},33,[277,686,687],{"class":291},"onMounted",[277,689,448],{"class":283},[277,691,464],{"class":311},[277,693,598],{"class":283},[277,695,601],{"class":311},[277,697,343],{"class":283},[277,699,701,703,706,709,712],{"class":279,"line":700},34,[277,702,508],{"class":311},[277,704,705],{"class":283}," (product.value ",[277,707,708],{"class":311},"||",[277,710,711],{"class":283}," errorMessage.value) ",[277,713,714],{"class":311},"return\n",[277,716,718],{"class":279,"line":717},35,[277,719,328],{"emptyLinePlaceholder":327},[277,721,723,725],{"class":279,"line":722},36,[277,724,609],{"class":311},[277,726,343],{"class":283},[277,728,730,732,734],{"class":279,"line":729},37,[277,731,617],{"class":311},[277,733,470],{"class":291},[277,735,622],{"class":283},[277,737,739,741,743],{"class":279,"line":738},38,[277,740,628],{"class":283},[277,742,631],{"class":311},[277,744,634],{"class":283},[277,746,748,750],{"class":279,"line":747},39,[277,749,640],{"class":283},[277,751,643],{"class":311},[277,753,755,757,759,761,763,765,767],{"class":279,"line":754},40,[277,756,649],{"class":283},[277,758,652],{"class":311},[277,760,529],{"class":291},[277,762,657],{"class":311},[277,764,660],{"class":283},[277,766,353],{"class":311},[277,768,769],{"class":301}," 'Error inesperado en cliente.'\n",[277,771,773],{"class":279,"line":772},41,[277,774,542],{"class":283},[277,776,778],{"class":279,"line":777},42,[277,779,676],{"class":283},[277,781,783,786,788],{"class":279,"line":782},43,[277,784,785],{"class":283},"\u003C/",[277,787,288],{"class":287},[277,789,305],{"class":283},[277,791,793],{"class":279,"line":792},44,[277,794,328],{"emptyLinePlaceholder":327},[277,796,798,800,803],{"class":279,"line":797},45,[277,799,284],{"class":283},[277,801,802],{"class":287},"template",[277,804,305],{"class":283},[277,806,808,811,814,817,819,822],{"class":279,"line":807},46,[277,809,810],{"class":283},"  \u003C",[277,812,813],{"class":287},"article",[277,815,816],{"class":291}," class",[277,818,298],{"class":283},[277,820,821],{"class":301},"\"product-card\"",[277,823,305],{"class":283},[277,825,827,830,832,835,837,840,843,845],{"class":279,"line":826},47,[277,828,829],{"class":283},"    \u003C",[277,831,21],{"class":287},[277,833,834],{"class":291}," v-if",[277,836,298],{"class":283},[277,838,839],{"class":301},"\"errorMessage\"",[277,841,842],{"class":283},">{{ errorMessage }}\u003C/",[277,844,21],{"class":287},[277,846,305],{"class":283},[277,848,850],{"class":279,"line":849},48,[277,851,328],{"emptyLinePlaceholder":327},[277,853,855,857,859,862,864,867,870,872],{"class":279,"line":854},49,[277,856,829],{"class":283},[277,858,802],{"class":287},[277,860,861],{"class":311}," v-else-if",[277,863,298],{"class":283},[277,865,866],{"class":301},"\"",[277,868,869],{"class":283},"product",[277,871,866],{"class":301},[277,873,305],{"class":283},[277,875,877,880,882,885,887],{"class":279,"line":876},50,[277,878,879],{"class":283},"      \u003C",[277,881,11],{"class":287},[277,883,884],{"class":283},">{{ product.name }}\u003C/",[277,886,11],{"class":287},[277,888,305],{"class":283},[277,890,892,894,896,899,901],{"class":279,"line":891},51,[277,893,879],{"class":283},[277,895,21],{"class":287},[277,897,898],{"class":283},">Precio: {{ product.price }} USD\u003C/",[277,900,21],{"class":287},[277,902,305],{"class":283},[277,904,906,908,910,913,915],{"class":279,"line":905},52,[277,907,879],{"class":283},[277,909,21],{"class":287},[277,911,912],{"class":283},">Stock: {{ product.stock }}\u003C/",[277,914,21],{"class":287},[277,916,305],{"class":283},[277,918,920,923,925],{"class":279,"line":919},53,[277,921,922],{"class":283},"    \u003C/",[277,924,802],{"class":287},[277,926,305],{"class":283},[277,928,930],{"class":279,"line":929},54,[277,931,328],{"emptyLinePlaceholder":327},[277,933,935,937,939,942,945,947],{"class":279,"line":934},55,[277,936,829],{"class":283},[277,938,21],{"class":287},[277,940,941],{"class":291}," v-else",[277,943,944],{"class":283},">Cargando producto...\u003C/",[277,946,21],{"class":287},[277,948,305],{"class":283},[277,950,952,955,957],{"class":279,"line":951},56,[277,953,954],{"class":283},"  \u003C/",[277,956,813],{"class":287},[277,958,305],{"class":283},[277,960,962,964,966],{"class":279,"line":961},57,[277,963,785],{"class":283},[277,965,802],{"class":287},[277,967,305],{"class":283},[267,969,972],{"className":269,"code":970,"filename":971,"language":272,"meta":273,"style":273},"\u003Cscript lang=\"ts\">\nimport { defineComponent } from 'vue'\n\ntype Product = {\n  id: number\n  name: string\n  price: number\n  stock: number\n}\n\nexport default defineComponent({\n  name: 'ProductCardSsr',\n\n  data() {\n    return {\n      product: null as Product | null,\n      errorMessage: ''\n    }\n  },\n\n  methods: {\n    async fetchProduct() {\n      const response = await fetch('https://api.example.com/products/42')\n\n      if (!response.ok) {\n        throw new Error('No fue posible cargar el producto.')\n      }\n\n      this.product = (await response.json()) as Product\n    }\n  },\n\n  async serverPrefetch() {\n    try {\n      await this.fetchProduct()\n    } catch (error) {\n      this.errorMessage =\n        error instanceof Error ? error.message : 'Error inesperado en SSR.'\n    }\n  },\n\n  async mounted() {\n    if (this.product || this.errorMessage) return\n\n    try {\n      await this.fetchProduct()\n    } catch (error) {\n      this.errorMessage =\n        error instanceof Error ? error.message : 'Error inesperado en cliente.'\n    }\n  }\n})\n\u003C/script>\n\n\u003Ctemplate>\n  \u003Carticle class=\"product-card\">\n    \u003Cp v-if=\"errorMessage\">{{ errorMessage }}\u003C/p>\n\n    \u003Ctemplate v-else-if=\"product\">\n      \u003Ch1>{{ product.name }}\u003C/h1>\n      \u003Cp>Precio: {{ product.price }} USD\u003C/p>\n      \u003Cp>Stock: {{ product.stock }}\u003C/p>\n    \u003C/template>\n\n    \u003Cp v-else>Cargando producto...\u003C/p>\n  \u003C/article>\n\u003C/template>\n","Options API",[16,973,974,988,999,1003,1013,1021,1029,1037,1045,1049,1053,1067,1078,1082,1089,1096,1114,1122,1127,1132,1136,1141,1150,1169,1173,1184,1199,1204,1208,1232,1236,1240,1244,1254,1261,1276,1285,1294,1311,1315,1319,1323,1332,1353,1357,1363,1375,1383,1391,1407,1411,1415,1419,1427,1431,1439,1453,1471,1476,1495,1508,1521,1534,1543,1548,1563,1572],{"__ignoreMap":273},[277,975,976,978,980,982,984,986],{"class":279,"line":280},[277,977,284],{"class":283},[277,979,288],{"class":287},[277,981,295],{"class":291},[277,983,298],{"class":283},[277,985,302],{"class":301},[277,987,305],{"class":283},[277,989,990,992,995,997],{"class":279,"line":308},[277,991,312],{"class":311},[277,993,994],{"class":283}," { defineComponent } ",[277,996,318],{"class":311},[277,998,321],{"class":301},[277,1000,1001],{"class":279,"line":324},[277,1002,328],{"emptyLinePlaceholder":327},[277,1004,1005,1007,1009,1011],{"class":279,"line":331},[277,1006,334],{"class":311},[277,1008,337],{"class":291},[277,1010,340],{"class":311},[277,1012,343],{"class":283},[277,1014,1015,1017,1019],{"class":279,"line":346},[277,1016,350],{"class":349},[277,1018,353],{"class":311},[277,1020,357],{"class":356},[277,1022,1023,1025,1027],{"class":279,"line":360},[277,1024,363],{"class":349},[277,1026,353],{"class":311},[277,1028,368],{"class":356},[277,1030,1031,1033,1035],{"class":279,"line":371},[277,1032,374],{"class":349},[277,1034,353],{"class":311},[277,1036,357],{"class":356},[277,1038,1039,1041,1043],{"class":279,"line":381},[277,1040,384],{"class":349},[277,1042,353],{"class":311},[277,1044,357],{"class":356},[277,1046,1047],{"class":279,"line":391},[277,1048,394],{"class":283},[277,1050,1051],{"class":279,"line":397},[277,1052,328],{"emptyLinePlaceholder":327},[277,1054,1055,1058,1061,1064],{"class":279,"line":402},[277,1056,1057],{"class":311},"export",[277,1059,1060],{"class":311}," default",[277,1062,1063],{"class":291}," defineComponent",[277,1065,1066],{"class":283},"({\n",[277,1068,1069,1072,1075],{"class":279,"line":436},[277,1070,1071],{"class":283},"  name: ",[277,1073,1074],{"class":301},"'ProductCardSsr'",[277,1076,1077],{"class":283},",\n",[277,1079,1080],{"class":279,"line":456},[277,1081,328],{"emptyLinePlaceholder":327},[277,1083,1084,1087],{"class":279,"line":461},[277,1085,1086],{"class":291},"  data",[277,1088,473],{"class":283},[277,1090,1091,1094],{"class":279,"line":476},[277,1092,1093],{"class":311},"    return",[277,1095,343],{"class":283},[277,1097,1098,1101,1103,1106,1108,1110,1112],{"class":279,"line":500},[277,1099,1100],{"class":283},"      product: ",[277,1102,430],{"class":356},[277,1104,1105],{"class":311}," as",[277,1107,337],{"class":291},[277,1109,421],{"class":311},[277,1111,424],{"class":356},[277,1113,1077],{"class":283},[277,1115,1116,1119],{"class":279,"line":505},[277,1117,1118],{"class":283},"      errorMessage: ",[277,1120,1121],{"class":301},"''\n",[277,1123,1124],{"class":279,"line":520},[277,1125,1126],{"class":283},"    }\n",[277,1128,1129],{"class":279,"line":539},[277,1130,1131],{"class":283},"  },\n",[277,1133,1134],{"class":279,"line":545},[277,1135,328],{"emptyLinePlaceholder":327},[277,1137,1138],{"class":279,"line":550},[277,1139,1140],{"class":283},"  methods: {\n",[277,1142,1143,1146,1148],{"class":279,"line":578},[277,1144,1145],{"class":311},"    async",[277,1147,470],{"class":291},[277,1149,473],{"class":283},[277,1151,1152,1155,1157,1159,1161,1163,1165,1167],{"class":279,"line":583},[277,1153,1154],{"class":311},"      const",[277,1156,482],{"class":356},[277,1158,340],{"class":311},[277,1160,487],{"class":311},[277,1162,490],{"class":291},[277,1164,448],{"class":283},[277,1166,495],{"class":301},[277,1168,433],{"class":283},[277,1170,1171],{"class":279,"line":588},[277,1172,328],{"emptyLinePlaceholder":327},[277,1174,1175,1178,1180,1182],{"class":279,"line":606},[277,1176,1177],{"class":311},"      if",[277,1179,511],{"class":283},[277,1181,514],{"class":311},[277,1183,517],{"class":283},[277,1185,1186,1189,1191,1193,1195,1197],{"class":279,"line":614},[277,1187,1188],{"class":311},"        throw",[277,1190,526],{"class":311},[277,1192,529],{"class":291},[277,1194,448],{"class":283},[277,1196,534],{"class":301},[277,1198,433],{"class":283},[277,1200,1201],{"class":279,"line":625},[277,1202,1203],{"class":283},"      }\n",[277,1205,1206],{"class":279,"line":637},[277,1207,328],{"emptyLinePlaceholder":327},[277,1209,1210,1213,1216,1218,1220,1222,1224,1226,1228,1230],{"class":279,"line":646},[277,1211,1212],{"class":356},"      this",[277,1214,1215],{"class":283},".product ",[277,1217,298],{"class":311},[277,1219,511],{"class":283},[277,1221,560],{"class":311},[277,1223,563],{"class":283},[277,1225,566],{"class":291},[277,1227,569],{"class":283},[277,1229,572],{"class":311},[277,1231,575],{"class":291},[277,1233,1234],{"class":279,"line":668},[277,1235,1126],{"class":283},[277,1237,1238],{"class":279,"line":673},[277,1239,1131],{"class":283},[277,1241,1242],{"class":279,"line":679},[277,1243,328],{"emptyLinePlaceholder":327},[277,1245,1246,1249,1252],{"class":279,"line":684},[277,1247,1248],{"class":311},"  async",[277,1250,1251],{"class":291}," serverPrefetch",[277,1253,473],{"class":283},[277,1255,1256,1259],{"class":279,"line":700},[277,1257,1258],{"class":311},"    try",[277,1260,343],{"class":283},[277,1262,1263,1266,1269,1271,1274],{"class":279,"line":717},[277,1264,1265],{"class":311},"      await",[277,1267,1268],{"class":356}," this",[277,1270,104],{"class":283},[277,1272,1273],{"class":291},"fetchProduct",[277,1275,622],{"class":283},[277,1277,1278,1281,1283],{"class":279,"line":722},[277,1279,1280],{"class":283},"    } ",[277,1282,631],{"class":311},[277,1284,634],{"class":283},[277,1286,1287,1289,1292],{"class":279,"line":729},[277,1288,1212],{"class":356},[277,1290,1291],{"class":283},".errorMessage ",[277,1293,643],{"class":311},[277,1295,1296,1299,1301,1303,1305,1307,1309],{"class":279,"line":738},[277,1297,1298],{"class":283},"        error ",[277,1300,652],{"class":311},[277,1302,529],{"class":291},[277,1304,657],{"class":311},[277,1306,660],{"class":283},[277,1308,353],{"class":311},[277,1310,665],{"class":301},[277,1312,1313],{"class":279,"line":747},[277,1314,1126],{"class":283},[277,1316,1317],{"class":279,"line":754},[277,1318,1131],{"class":283},[277,1320,1321],{"class":279,"line":772},[277,1322,328],{"emptyLinePlaceholder":327},[277,1324,1325,1327,1330],{"class":279,"line":777},[277,1326,1248],{"class":311},[277,1328,1329],{"class":291}," mounted",[277,1331,473],{"class":283},[277,1333,1334,1337,1339,1342,1344,1346,1348,1351],{"class":279,"line":782},[277,1335,1336],{"class":311},"    if",[277,1338,511],{"class":283},[277,1340,1341],{"class":356},"this",[277,1343,1215],{"class":283},[277,1345,708],{"class":311},[277,1347,1268],{"class":356},[277,1349,1350],{"class":283},".errorMessage) ",[277,1352,714],{"class":311},[277,1354,1355],{"class":279,"line":792},[277,1356,328],{"emptyLinePlaceholder":327},[277,1358,1359,1361],{"class":279,"line":797},[277,1360,1258],{"class":311},[277,1362,343],{"class":283},[277,1364,1365,1367,1369,1371,1373],{"class":279,"line":807},[277,1366,1265],{"class":311},[277,1368,1268],{"class":356},[277,1370,104],{"class":283},[277,1372,1273],{"class":291},[277,1374,622],{"class":283},[277,1376,1377,1379,1381],{"class":279,"line":826},[277,1378,1280],{"class":283},[277,1380,631],{"class":311},[277,1382,634],{"class":283},[277,1384,1385,1387,1389],{"class":279,"line":849},[277,1386,1212],{"class":356},[277,1388,1291],{"class":283},[277,1390,643],{"class":311},[277,1392,1393,1395,1397,1399,1401,1403,1405],{"class":279,"line":854},[277,1394,1298],{"class":283},[277,1396,652],{"class":311},[277,1398,529],{"class":291},[277,1400,657],{"class":311},[277,1402,660],{"class":283},[277,1404,353],{"class":311},[277,1406,769],{"class":301},[277,1408,1409],{"class":279,"line":876},[277,1410,1126],{"class":283},[277,1412,1413],{"class":279,"line":891},[277,1414,542],{"class":283},[277,1416,1417],{"class":279,"line":905},[277,1418,676],{"class":283},[277,1420,1421,1423,1425],{"class":279,"line":919},[277,1422,785],{"class":283},[277,1424,288],{"class":287},[277,1426,305],{"class":283},[277,1428,1429],{"class":279,"line":929},[277,1430,328],{"emptyLinePlaceholder":327},[277,1432,1433,1435,1437],{"class":279,"line":934},[277,1434,284],{"class":283},[277,1436,802],{"class":287},[277,1438,305],{"class":283},[277,1440,1441,1443,1445,1447,1449,1451],{"class":279,"line":951},[277,1442,810],{"class":283},[277,1444,813],{"class":287},[277,1446,816],{"class":291},[277,1448,298],{"class":283},[277,1450,821],{"class":301},[277,1452,305],{"class":283},[277,1454,1455,1457,1459,1461,1463,1465,1467,1469],{"class":279,"line":961},[277,1456,829],{"class":283},[277,1458,21],{"class":287},[277,1460,834],{"class":291},[277,1462,298],{"class":283},[277,1464,839],{"class":301},[277,1466,842],{"class":283},[277,1468,21],{"class":287},[277,1470,305],{"class":283},[277,1472,1474],{"class":279,"line":1473},58,[277,1475,328],{"emptyLinePlaceholder":327},[277,1477,1479,1481,1483,1485,1487,1489,1491,1493],{"class":279,"line":1478},59,[277,1480,829],{"class":283},[277,1482,802],{"class":287},[277,1484,861],{"class":311},[277,1486,298],{"class":283},[277,1488,866],{"class":301},[277,1490,869],{"class":283},[277,1492,866],{"class":301},[277,1494,305],{"class":283},[277,1496,1498,1500,1502,1504,1506],{"class":279,"line":1497},60,[277,1499,879],{"class":283},[277,1501,11],{"class":287},[277,1503,884],{"class":283},[277,1505,11],{"class":287},[277,1507,305],{"class":283},[277,1509,1511,1513,1515,1517,1519],{"class":279,"line":1510},61,[277,1512,879],{"class":283},[277,1514,21],{"class":287},[277,1516,898],{"class":283},[277,1518,21],{"class":287},[277,1520,305],{"class":283},[277,1522,1524,1526,1528,1530,1532],{"class":279,"line":1523},62,[277,1525,879],{"class":283},[277,1527,21],{"class":287},[277,1529,912],{"class":283},[277,1531,21],{"class":287},[277,1533,305],{"class":283},[277,1535,1537,1539,1541],{"class":279,"line":1536},63,[277,1538,922],{"class":283},[277,1540,802],{"class":287},[277,1542,305],{"class":283},[277,1544,1546],{"class":279,"line":1545},64,[277,1547,328],{"emptyLinePlaceholder":327},[277,1549,1551,1553,1555,1557,1559,1561],{"class":279,"line":1550},65,[277,1552,829],{"class":283},[277,1554,21],{"class":287},[277,1556,941],{"class":291},[277,1558,944],{"class":283},[277,1560,21],{"class":287},[277,1562,305],{"class":283},[277,1564,1566,1568,1570],{"class":279,"line":1565},66,[277,1567,954],{"class":283},[277,1569,813],{"class":287},[277,1571,305],{"class":283},[277,1573,1575,1577,1579],{"class":279,"line":1574},67,[277,1576,785],{"class":283},[277,1578,802],{"class":287},[277,1580,305],{"class":283},[21,1582,1583,1584,1586],{},"Este patrón permite que el servidor entregue el contenido resuelto en la primera carga. Si el componente se renderiza posteriormente en una navegación cliente, ",[16,1585,210],{}," actúa como fallback sin duplicar la petición.",[21,1588,1589,1590,1592],{},"Esta versión mantiene la misma intención: resolver los datos antes del render SSR y usar ",[16,1591,203],{}," como respaldo en escenarios donde no hay estado previo.",[30,1594,1596],{"id":1595},"resumen","Resumen",[21,1598,1599,1601],{},[16,1600,18],{}," permite adelantar datos críticos al render del servidor y generar HTML útil desde la primera respuesta. Su valor está en mejorar el primer render, no en reemplazar toda la estrategia de fetching.",[21,1603,1604],{},"En Vue SSR “manual”, es una herramienta precisa y potente. En Nuxt, suele ser preferible usar utilidades de más alto nivel. En ambos casos, la idea clave es la misma: el contenido importante debe estar listo antes de renderizar la página inicial.",[1606,1607,1608],"style",{},"html pre.shiki code .sVt8B, html code.shiki .sVt8B{--shiki-default:#24292E;--shiki-dark:#E1E4E8}html pre.shiki code .s9eBZ, html code.shiki .s9eBZ{--shiki-default:#22863A;--shiki-dark:#85E89D}html pre.shiki code .sScJk, html code.shiki .sScJk{--shiki-default:#6F42C1;--shiki-dark:#B392F0}html pre.shiki code .sZZnC, html code.shiki .sZZnC{--shiki-default:#032F62;--shiki-dark:#9ECBFF}html pre.shiki code .szBVR, html code.shiki .szBVR{--shiki-default:#D73A49;--shiki-dark:#F97583}html pre.shiki code .s4XuR, html code.shiki .s4XuR{--shiki-default:#E36209;--shiki-dark:#FFAB70}html pre.shiki code .sj4cs, html code.shiki .sj4cs{--shiki-default:#005CC5;--shiki-dark:#79B8FF}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":273,"searchDepth":308,"depth":308,"links":1610},[1611,1612,1613,1614,1615,1621,1622],{"id":32,"depth":308,"text":33},{"id":60,"depth":308,"text":61},{"id":128,"depth":308,"text":129},{"id":155,"depth":308,"text":156},{"id":189,"depth":308,"text":190,"children":1616},[1617,1618,1619,1620],{"id":194,"depth":324,"text":195},{"id":217,"depth":324,"text":218},{"id":239,"depth":324,"text":240},{"id":251,"depth":324,"text":252},{"id":264,"depth":308,"text":265},{"id":1595,"depth":308,"text":1596},"https://res.cloudinary.com/denj4fg7f/image/upload/v1774051488/vue-lifecycle-ssr-serverprefetch_averlr.png","Ilustración de un servidor entregando HTML con datos ya resueltos, mientras un cliente hidrata sin necesidad de fetch adicional.","2026-03-21","Cómo usar serverPrefetch y onServerPrefetch para cargar datos antes del render SSR, evitar HTML incompleto y coordinar el primer render del servidor con la hidratación del cliente.",false,"md",{"script":1630},[1631],{"type":1632,"key":1633,"data-nuxt-schema-org":327,"nodes":1634},"application/ld+json","schema-org-graph",[1635],{"headline":6,"author":1636,"datePublished":1639,"@type":1640},{"name":1637,"@type":1638},"TODOvue","Person","2026-03-20T20:00:00-05:00","BlogPosting","es",{"updatedAt":1639,"readingTime":381,"coverCaption":1643,"author":1637,"keywords":1644},"Con `serverPrefetch`, el servidor puede entregar HTML ya completo, mejorando la experiencia y el SEO desde el primer render.",[1645,18,591,1646,1647],"Vue.js","SSR","hidratación","/blog/vue-lifecycle-ssr-serverprefetch.es",[1650],{"headline":6,"author":1651,"datePublished":1639,"@type":1640},{"name":1637,"@type":1638},{"title":6,"description":1626},"vue-lifecycle-hooks","Serie práctica para dominar cada hook del ciclo de vida de Vue, desde los básicos hasta los avanzados.","Ciclos de vida en Vue",null,"blog/vue-lifecycle-ssr-serverprefetch.es",[1659,1662,1664,1667,1670],{"tag":1660,"color":1661},"Ciclo de Vida","#FF6B6B",{"tag":1646,"color":1663},"#0E9AA7",{"tag":1665,"color":1666},"Arquitectura","#4CAF50",{"tag":1668,"color":1669},"Componentes","#41B883",{"tag":1671,"color":1672},"Avanzado","#F54927","tpgaAKmBLuwPw3oOB-InpdMHcLIbw1mTRb9pTmHPJuI",{"id":1675,"title":1676,"body":1677,"cover":3138,"coverAlt":3139,"date":3140,"description":3141,"draft":1627,"extension":1628,"head":3142,"locale":1641,"meta":3149,"navigation":327,"path":3152,"schemaOrg":3153,"seo":3156,"series":1653,"seriesDescription":1654,"seriesOrder":381,"seriesTitle":1655,"slug":1656,"stem":3157,"tags":3158,"__hash__":3170},"blog/blog/vue-lifecycle-render-debug-rendertracked-rendertriggered.es.md","Ciclos de vida en Vue: depuración del render (renderTracked, renderTriggered)",{"type":8,"value":1678,"toc":3119},[1679,1689,1692,1701,1704,1712,1714,1717,1737,1745,1747,1753,1756,1774,1777,1818,1821,1836,1839,1841,1844,1847,1864,1867,1869,1872,1875,1902,1905,1907,1911,1918,1922,1929,1933,1936,1940,1943,1947,1951,1957,1961,1966,1970,1973,1977,2552,3071,3074,3085,3087,3094,3097,3110,3116],[11,1680,1682,1683,225,1686,19],{"id":1681},"ciclos-de-vida-en-vue-depuración-del-render-rendertracked-rendertriggered","Ciclos de vida en Vue: depuración del render (",[16,1684,1685],{},"renderTracked",[16,1687,1688],{},"renderTriggered",[21,1690,1691],{},"Hay bugs que no están en la lógica de negocio ni en una API externa. Están en otro nivel: un componente que se vuelve a renderizar demasiadas veces, una lista que recalcula de más o una vista que depende de un estado reactivo que ni siquiera sabías que estaba leyendo.",[21,1693,1694,1695,1697,1698,1700],{},"Este tipo de problema suele ser difícil de detectar porque Vue abstrae muy bien el sistema reactivo. Actualiza cuando corresponde y, desde fuera, parece magia. Precisamente por eso existen ",[16,1696,1685],{}," y ",[16,1699,1688],{},": para abrir esa “caja negra” y entender qué está ocurriendo dentro del ciclo de render.",[21,1702,1703],{},"No son hooks para lógica de aplicación. Son herramientas de diagnóstico. Cuando un componente se actualiza “sin razón aparente”, ayudan a responder dos preguntas clave:",[38,1705,1706,1709],{},[41,1707,1708],{},"¿Qué dependencias reactivas se registraron durante el render?",[41,1710,1711],{},"¿Qué cambio concreto disparó el siguiente render?",[30,1713,33],{"id":32},[21,1715,1716],{},"A medida que una interfaz crece, el coste de renderizar “un poco de más” deja de ser invisible. Empiezan a aparecer síntomas claros:",[38,1718,1719,1722,1725,1728],{},[41,1720,1721],{},"Inputs que se sienten lentos.",[41,1723,1724],{},"Tablas que se recalculan o reordenan innecesariamente.",[41,1726,1727],{},"Componentes hijos que se actualizan por cambios irrelevantes.",[41,1729,1730,1697,1733,1736],{},[16,1731,1732],{},"computed",[16,1734,1735],{},"watch"," que parecen correctos, pero participan en renders excesivos.",[21,1738,1739,1740,1697,1742,1744],{},"En estos casos, leer únicamente el template no es suficiente. Necesitas entender la relación entre el render y el sistema reactivo. Aquí es donde ",[16,1741,1685],{},[16,1743,1688],{}," aportan valor: muestran qué dependencias se registraron y qué mutaciones provocaron nuevas actualizaciones.",[30,1746,61],{"id":60},[21,1748,1749,1750,1752],{},"Vue registra dependencias reactivas mientras renderiza un componente. Si durante ese proceso el template, un ",[16,1751,1732],{}," o cualquier expresión reactiva accede a una propiedad, Vue la asocia al efecto de render.",[21,1754,1755],{},"Los hooks de depuración permiten observar este proceso:",[38,1757,1758,1766],{},[41,1759,1760,66,1762,1765],{},[16,1761,1685],{},[16,1763,1764],{},"onRenderTracked()"," (Composition API) se ejecutan cuando una dependencia se registra durante el render.",[41,1767,1768,66,1770,1773],{},[16,1769,1688],{},[16,1771,1772],{},"onRenderTriggered()"," (Composition API) se ejecutan cuando una de esas dependencias cambia y provoca un nuevo render.",[21,1775,1776],{},"Ambos reciben un objeto de depuración con información como:",[38,1778,1779,1785,1791,1809],{},[41,1780,1781,1784],{},[16,1782,1783],{},"target",": el objeto reactivo implicado.",[41,1786,1787,1790],{},[16,1788,1789],{},"key",": la propiedad accedida o modificada.",[41,1792,1793,1795,1796,225,1799,225,1802,225,1805,1808],{},[16,1794,334],{},": el tipo de operación (",[16,1797,1798],{},"get",[16,1800,1801],{},"set",[16,1803,1804],{},"add",[16,1806,1807],{},"delete",", etc.).",[41,1810,1811,1697,1814,1817],{},[16,1812,1813],{},"newValue",[16,1815,1816],{},"oldValue",", cuando aplica.",[21,1819,1820],{},"Dos matices importantes:",[38,1822,1823,1826],{},[41,1824,1825],{},"Son hooks pensados para desarrollo. No deben formar parte de la lógica de negocio.",[41,1827,1828,1829,118,1832,1835],{},"Su uso típico es con ",[16,1830,1831],{},"console.log()",[16,1833,1834],{},"debugger",", no mutando estado reactivo.",[21,1837,1838],{},"Intentar integrarlos en la lógica de la aplicación suele generar más problemas de los que resuelve.",[30,1840,129],{"id":128},[21,1842,1843],{},"Estos hooks tienen sentido cuando necesitas entender por qué un componente renderiza (o re-renderiza).",[21,1845,1846],{},"Casos comunes:",[38,1848,1849,1852,1855,1858],{},[41,1850,1851],{},"Un componente cambia de forma inesperada al modificar un estado aparentemente no relacionado.",[41,1853,1854],{},"Una vista compleja se actualiza demasiadas veces.",[41,1856,1857],{},"Estás optimizando rendimiento y sospechas dependencias innecesarias.",[41,1859,1860,1861,1863],{},"Un ",[16,1862,1732],{}," aparentemente simple provoca renders amplios.",[21,1865,1866],{},"Regla práctica: si la pregunta es “¿por qué este componente se está renderizando?”, estos hooks encajan perfectamente.",[30,1868,156],{"id":155},[21,1870,1871],{},"No son una herramienta permanente ni sustituyen una arquitectura clara.",[21,1873,1874],{},"Evítalos cuando:",[38,1876,1877,1890,1896,1899],{},[41,1878,1879,1880,225,1883,225,1886,118,1888,104],{},"El problema se entiende mejor revisando ",[16,1881,1882],{},"props",[16,1884,1885],{},"emits",[16,1887,1732],{},[16,1889,1735],{},[41,1891,1892,1893,1895],{},"Solo necesitas reaccionar a cambios específicos (usa ",[16,1894,1735],{},").",[41,1897,1898],{},"Pretendes almacenar trazas en estado reactivo del mismo componente.",[41,1900,1901],{},"Quieres usarlos como telemetría en producción.",[21,1903,1904],{},"También evita dejarlos en el código una vez terminado el debugging: generan ruido innecesario.",[30,1906,190],{"id":189},[192,1908,1910],{"id":1909},"_1-usarlos-para-lógica-de-negocio","1. Usarlos para lógica de negocio",[21,1912,1913,1914,118,1916,104],{},"No están diseñados para disparar efectos funcionales. Si necesitas reaccionar a datos, usa ",[16,1915,1735],{},[16,1917,1732],{},[192,1919,1921],{"id":1920},"_2-mutar-estado-dentro-del-hook","2. Mutar estado dentro del hook",[21,1923,1924,1925,1928],{},"Guardar eventos en un ",[16,1926,1927],{},"ref"," puede introducir renders adicionales y contaminar la depuración.",[192,1930,1932],{"id":1931},"_3-culpar-a-vue-en-lugar-del-alcance-reactivo","3. Culpar a Vue en lugar del alcance reactivo",[21,1934,1935],{},"Si el template accede a un objeto grande, Vue hará lo correcto: suscribirse a todo lo que se use.",[192,1937,1939],{"id":1938},"_4-asumir-comportamiento-estable-en-producción","4. Asumir comportamiento estable en producción",[21,1941,1942],{},"Son herramientas de debugging, no API para comportamiento funcional.",[30,1944,1946],{"id":1945},"ejemplos-prácticos","Ejemplos prácticos",[192,1948,1950],{"id":1949},"detectar-dependencias-accidentales","Detectar dependencias accidentales",[21,1952,1953,1954,1956],{},"Una tabla puede estar leyendo más estado del necesario (filtros, flags, metadatos). ",[16,1955,1685],{}," permite verlo claramente.",[192,1958,1960],{"id":1959},"identificar-qué-dispara-un-render","Identificar qué dispara un render",[21,1962,1963,1965],{},[16,1964,1688],{}," muestra la clave exacta que provocó la actualización, eliminando suposiciones.",[192,1967,1969],{"id":1968},"optimizar-componentes-conectados-a-stores","Optimizar componentes conectados a stores",[21,1971,1972],{},"Permite validar si el componente depende solo de lo necesario o si está sobre-suscrito a estado global.",[30,1974,1976],{"id":1975},"ejemplo-completo","Ejemplo completo",[267,1978,1980],{"className":269,"code":1979,"filename":271,"language":272,"meta":273,"style":273},"\u003Cscript setup lang=\"ts\">\nimport { computed, onRenderTracked, onRenderTriggered, reactive, ref } from 'vue'\n\nconst filters = reactive({\n  search: '',\n  showOnlyOpen: false\n})\n\nconst ui = reactive({\n  selectedId: 1,\n  panelOpen: true\n})\n\nconst tasks = ref([\n  { id: 1, title: 'Revisar PR', done: false, owner: 'Ana' },\n  { id: 2, title: 'Actualizar dependencias', done: true, owner: 'Luis' },\n  { id: 3, title: 'Documentar composable', done: false, owner: 'Ana' }\n])\n\nconst visibleTasks = computed(() => {\n  return tasks.value.filter(task => {\n    const matchesSearch = task.title\n      .toLowerCase()\n      .includes(filters.search.toLowerCase())\n\n    const matchesStatus = filters.showOnlyOpen ? !task.done : true\n\n    return matchesSearch && matchesStatus\n  })\n})\n\nonRenderTracked((event) => {\n  console.log('[renderTracked]', {\n    type: event.type,\n    key: String(event.key),\n    target: event.target\n  })\n})\n\nonRenderTriggered((event) => {\n  console.log('[renderTriggered]', {\n    type: event.type,\n    key: String(event.key),\n    oldValue: event.oldValue,\n    newValue: event.newValue\n  })\n})\n\nfunction toggleTask(taskId: number) {\n  const task = tasks.value.find(item => item.id === taskId)\n\n  if (!task) return\n\n  task.done = !task.done\n}\n\u003C/script>\n",[16,1981,1982,1998,2009,2013,2027,2036,2044,2048,2052,2065,2075,2083,2087,2091,2105,2133,2157,2180,2185,2189,2208,2229,2242,2252,2267,2271,2297,2301,2314,2319,2323,2327,2345,2361,2366,2377,2382,2386,2390,2394,2409,2422,2426,2434,2439,2444,2448,2452,2456,2477,2507,2511,2524,2528,2540,2544],{"__ignoreMap":273},[277,1983,1984,1986,1988,1990,1992,1994,1996],{"class":279,"line":280},[277,1985,284],{"class":283},[277,1987,288],{"class":287},[277,1989,292],{"class":291},[277,1991,295],{"class":291},[277,1993,298],{"class":283},[277,1995,302],{"class":301},[277,1997,305],{"class":283},[277,1999,2000,2002,2005,2007],{"class":279,"line":308},[277,2001,312],{"class":311},[277,2003,2004],{"class":283}," { computed, onRenderTracked, onRenderTriggered, reactive, ref } ",[277,2006,318],{"class":311},[277,2008,321],{"class":301},[277,2010,2011],{"class":279,"line":324},[277,2012,328],{"emptyLinePlaceholder":327},[277,2014,2015,2017,2020,2022,2025],{"class":279,"line":331},[277,2016,405],{"class":311},[277,2018,2019],{"class":356}," filters",[277,2021,340],{"class":311},[277,2023,2024],{"class":291}," reactive",[277,2026,1066],{"class":283},[277,2028,2029,2032,2034],{"class":279,"line":346},[277,2030,2031],{"class":283},"  search: ",[277,2033,451],{"class":301},[277,2035,1077],{"class":283},[277,2037,2038,2041],{"class":279,"line":360},[277,2039,2040],{"class":283},"  showOnlyOpen: ",[277,2042,2043],{"class":356},"false\n",[277,2045,2046],{"class":279,"line":371},[277,2047,676],{"class":283},[277,2049,2050],{"class":279,"line":381},[277,2051,328],{"emptyLinePlaceholder":327},[277,2053,2054,2056,2059,2061,2063],{"class":279,"line":391},[277,2055,405],{"class":311},[277,2057,2058],{"class":356}," ui",[277,2060,340],{"class":311},[277,2062,2024],{"class":291},[277,2064,1066],{"class":283},[277,2066,2067,2070,2073],{"class":279,"line":397},[277,2068,2069],{"class":283},"  selectedId: ",[277,2071,2072],{"class":356},"1",[277,2074,1077],{"class":283},[277,2076,2077,2080],{"class":279,"line":402},[277,2078,2079],{"class":283},"  panelOpen: ",[277,2081,2082],{"class":356},"true\n",[277,2084,2085],{"class":279,"line":436},[277,2086,676],{"class":283},[277,2088,2089],{"class":279,"line":456},[277,2090,328],{"emptyLinePlaceholder":327},[277,2092,2093,2095,2098,2100,2102],{"class":279,"line":461},[277,2094,405],{"class":311},[277,2096,2097],{"class":356}," tasks",[277,2099,340],{"class":311},[277,2101,413],{"class":291},[277,2103,2104],{"class":283},"([\n",[277,2106,2107,2110,2112,2115,2118,2121,2124,2127,2130],{"class":279,"line":476},[277,2108,2109],{"class":283},"  { id: ",[277,2111,2072],{"class":356},[277,2113,2114],{"class":283},", title: ",[277,2116,2117],{"class":301},"'Revisar PR'",[277,2119,2120],{"class":283},", done: ",[277,2122,2123],{"class":356},"false",[277,2125,2126],{"class":283},", owner: ",[277,2128,2129],{"class":301},"'Ana'",[277,2131,2132],{"class":283}," },\n",[277,2134,2135,2137,2140,2142,2145,2147,2150,2152,2155],{"class":279,"line":500},[277,2136,2109],{"class":283},[277,2138,2139],{"class":356},"2",[277,2141,2114],{"class":283},[277,2143,2144],{"class":301},"'Actualizar dependencias'",[277,2146,2120],{"class":283},[277,2148,2149],{"class":356},"true",[277,2151,2126],{"class":283},[277,2153,2154],{"class":301},"'Luis'",[277,2156,2132],{"class":283},[277,2158,2159,2161,2164,2166,2169,2171,2173,2175,2177],{"class":279,"line":505},[277,2160,2109],{"class":283},[277,2162,2163],{"class":356},"3",[277,2165,2114],{"class":283},[277,2167,2168],{"class":301},"'Documentar composable'",[277,2170,2120],{"class":283},[277,2172,2123],{"class":356},[277,2174,2126],{"class":283},[277,2176,2129],{"class":301},[277,2178,2179],{"class":283}," }\n",[277,2181,2182],{"class":279,"line":520},[277,2183,2184],{"class":283},"])\n",[277,2186,2187],{"class":279,"line":539},[277,2188,328],{"emptyLinePlaceholder":327},[277,2190,2191,2193,2196,2198,2201,2204,2206],{"class":279,"line":545},[277,2192,405],{"class":311},[277,2194,2195],{"class":356}," visibleTasks",[277,2197,340],{"class":311},[277,2199,2200],{"class":291}," computed",[277,2202,2203],{"class":283},"(() ",[277,2205,601],{"class":311},[277,2207,343],{"class":283},[277,2209,2210,2213,2216,2219,2221,2224,2227],{"class":279,"line":550},[277,2211,2212],{"class":311},"  return",[277,2214,2215],{"class":283}," tasks.value.",[277,2217,2218],{"class":291},"filter",[277,2220,448],{"class":283},[277,2222,2223],{"class":349},"task",[277,2225,2226],{"class":311}," =>",[277,2228,343],{"class":283},[277,2230,2231,2234,2237,2239],{"class":279,"line":578},[277,2232,2233],{"class":311},"    const",[277,2235,2236],{"class":356}," matchesSearch",[277,2238,340],{"class":311},[277,2240,2241],{"class":283}," task.title\n",[277,2243,2244,2247,2250],{"class":279,"line":583},[277,2245,2246],{"class":283},"      .",[277,2248,2249],{"class":291},"toLowerCase",[277,2251,622],{"class":283},[277,2253,2254,2256,2259,2262,2264],{"class":279,"line":588},[277,2255,2246],{"class":283},[277,2257,2258],{"class":291},"includes",[277,2260,2261],{"class":283},"(filters.search.",[277,2263,2249],{"class":291},[277,2265,2266],{"class":283},"())\n",[277,2268,2269],{"class":279,"line":606},[277,2270,328],{"emptyLinePlaceholder":327},[277,2272,2273,2275,2278,2280,2283,2286,2289,2292,2294],{"class":279,"line":614},[277,2274,2233],{"class":311},[277,2276,2277],{"class":356}," matchesStatus",[277,2279,340],{"class":311},[277,2281,2282],{"class":283}," filters.showOnlyOpen ",[277,2284,2285],{"class":311},"?",[277,2287,2288],{"class":311}," !",[277,2290,2291],{"class":283},"task.done ",[277,2293,353],{"class":311},[277,2295,2296],{"class":356}," true\n",[277,2298,2299],{"class":279,"line":625},[277,2300,328],{"emptyLinePlaceholder":327},[277,2302,2303,2305,2308,2311],{"class":279,"line":637},[277,2304,1093],{"class":311},[277,2306,2307],{"class":283}," matchesSearch ",[277,2309,2310],{"class":311},"&&",[277,2312,2313],{"class":283}," matchesStatus\n",[277,2315,2316],{"class":279,"line":646},[277,2317,2318],{"class":283},"  })\n",[277,2320,2321],{"class":279,"line":668},[277,2322,676],{"class":283},[277,2324,2325],{"class":279,"line":673},[277,2326,328],{"emptyLinePlaceholder":327},[277,2328,2329,2332,2335,2338,2341,2343],{"class":279,"line":679},[277,2330,2331],{"class":291},"onRenderTracked",[277,2333,2334],{"class":283},"((",[277,2336,2337],{"class":349},"event",[277,2339,2340],{"class":283},") ",[277,2342,601],{"class":311},[277,2344,343],{"class":283},[277,2346,2347,2350,2353,2355,2358],{"class":279,"line":684},[277,2348,2349],{"class":283},"  console.",[277,2351,2352],{"class":291},"log",[277,2354,448],{"class":283},[277,2356,2357],{"class":301},"'[renderTracked]'",[277,2359,2360],{"class":283},", {\n",[277,2362,2363],{"class":279,"line":700},[277,2364,2365],{"class":283},"    type: event.type,\n",[277,2367,2368,2371,2374],{"class":279,"line":717},[277,2369,2370],{"class":283},"    key: ",[277,2372,2373],{"class":291},"String",[277,2375,2376],{"class":283},"(event.key),\n",[277,2378,2379],{"class":279,"line":722},[277,2380,2381],{"class":283},"    target: event.target\n",[277,2383,2384],{"class":279,"line":729},[277,2385,2318],{"class":283},[277,2387,2388],{"class":279,"line":738},[277,2389,676],{"class":283},[277,2391,2392],{"class":279,"line":747},[277,2393,328],{"emptyLinePlaceholder":327},[277,2395,2396,2399,2401,2403,2405,2407],{"class":279,"line":754},[277,2397,2398],{"class":291},"onRenderTriggered",[277,2400,2334],{"class":283},[277,2402,2337],{"class":349},[277,2404,2340],{"class":283},[277,2406,601],{"class":311},[277,2408,343],{"class":283},[277,2410,2411,2413,2415,2417,2420],{"class":279,"line":772},[277,2412,2349],{"class":283},[277,2414,2352],{"class":291},[277,2416,448],{"class":283},[277,2418,2419],{"class":301},"'[renderTriggered]'",[277,2421,2360],{"class":283},[277,2423,2424],{"class":279,"line":777},[277,2425,2365],{"class":283},[277,2427,2428,2430,2432],{"class":279,"line":782},[277,2429,2370],{"class":283},[277,2431,2373],{"class":291},[277,2433,2376],{"class":283},[277,2435,2436],{"class":279,"line":792},[277,2437,2438],{"class":283},"    oldValue: event.oldValue,\n",[277,2440,2441],{"class":279,"line":797},[277,2442,2443],{"class":283},"    newValue: event.newValue\n",[277,2445,2446],{"class":279,"line":807},[277,2447,2318],{"class":283},[277,2449,2450],{"class":279,"line":826},[277,2451,676],{"class":283},[277,2453,2454],{"class":279,"line":849},[277,2455,328],{"emptyLinePlaceholder":327},[277,2457,2458,2461,2464,2466,2469,2471,2474],{"class":279,"line":854},[277,2459,2460],{"class":311},"function",[277,2462,2463],{"class":291}," toggleTask",[277,2465,448],{"class":283},[277,2467,2468],{"class":349},"taskId",[277,2470,353],{"class":311},[277,2472,2473],{"class":356}," number",[277,2475,2476],{"class":283},") {\n",[277,2478,2479,2481,2484,2486,2488,2491,2493,2496,2498,2501,2504],{"class":279,"line":876},[277,2480,479],{"class":311},[277,2482,2483],{"class":356}," task",[277,2485,340],{"class":311},[277,2487,2215],{"class":283},[277,2489,2490],{"class":291},"find",[277,2492,448],{"class":283},[277,2494,2495],{"class":349},"item",[277,2497,2226],{"class":311},[277,2499,2500],{"class":283}," item.id ",[277,2502,2503],{"class":311},"===",[277,2505,2506],{"class":283}," taskId)\n",[277,2508,2509],{"class":279,"line":891},[277,2510,328],{"emptyLinePlaceholder":327},[277,2512,2513,2515,2517,2519,2522],{"class":279,"line":905},[277,2514,508],{"class":311},[277,2516,511],{"class":283},[277,2518,514],{"class":311},[277,2520,2521],{"class":283},"task) ",[277,2523,714],{"class":311},[277,2525,2526],{"class":279,"line":919},[277,2527,328],{"emptyLinePlaceholder":327},[277,2529,2530,2533,2535,2537],{"class":279,"line":929},[277,2531,2532],{"class":283},"  task.done ",[277,2534,298],{"class":311},[277,2536,2288],{"class":311},[277,2538,2539],{"class":283},"task.done\n",[277,2541,2542],{"class":279,"line":934},[277,2543,394],{"class":283},[277,2545,2546,2548,2550],{"class":279,"line":951},[277,2547,785],{"class":283},[277,2549,288],{"class":287},[277,2551,305],{"class":283},[267,2553,2555],{"className":269,"code":2554,"filename":971,"language":272,"meta":273,"style":273},"\u003Cscript lang=\"ts\">\nexport default {\n  name: 'TaskRenderDebugger',\n\n  data() {\n    return {\n      filters: {\n        search: '',\n        showOnlyOpen: false\n      },\n      ui: {\n        selectedId: 1,\n        panelOpen: true\n      },\n      tasks: [\n        { id: 1, title: 'Revisar PR', done: false, owner: 'Ana' },\n        { id: 2, title: 'Actualizar dependencias', done: true, owner: 'Luis' },\n        { id: 3, title: 'Documentar composable', done: false, owner: 'Ana' }\n      ]\n    }\n  },\n\n  computed: {\n    visibleTasks() {\n      return this.tasks.filter(task => {\n        const matchesSearch = task.title\n          .toLowerCase()\n          .includes(this.filters.search.toLowerCase())\n\n        const matchesStatus = this.filters.showOnlyOpen ? !task.done : true\n\n        return matchesSearch && matchesStatus\n      })\n    }\n  },\n\n  renderTracked(event) {\n    console.log('[renderTracked]', {\n      type: event.type,\n      key: String(event.key),\n      target: event.target\n    })\n  },\n\n  renderTriggered(event) {\n    console.log('[renderTriggered]', {\n      type: event.type,\n      key: String(event.key),\n      oldValue: event.oldValue,\n      newValue: event.newValue\n    })\n  },\n\n  methods: {\n    toggleTask(taskId) {\n      const task = this.tasks.find(item => item.id === taskId)\n\n      if (!task) return\n\n      task.done = !task.done\n    }\n  }\n}\n\u003C/script>\n",[16,2556,2557,2571,2579,2588,2592,2598,2604,2609,2618,2625,2630,2635,2644,2651,2655,2660,2681,2701,2721,2726,2730,2734,2738,2743,2750,2770,2781,2790,2807,2811,2834,2838,2849,2854,2858,2862,2866,2877,2890,2895,2904,2909,2914,2918,2922,2933,2945,2949,2957,2962,2967,2971,2975,2979,2983,2994,3020,3024,3036,3040,3051,3055,3059,3063],{"__ignoreMap":273},[277,2558,2559,2561,2563,2565,2567,2569],{"class":279,"line":280},[277,2560,284],{"class":283},[277,2562,288],{"class":287},[277,2564,295],{"class":291},[277,2566,298],{"class":283},[277,2568,302],{"class":301},[277,2570,305],{"class":283},[277,2572,2573,2575,2577],{"class":279,"line":308},[277,2574,1057],{"class":311},[277,2576,1060],{"class":311},[277,2578,343],{"class":283},[277,2580,2581,2583,2586],{"class":279,"line":324},[277,2582,1071],{"class":283},[277,2584,2585],{"class":301},"'TaskRenderDebugger'",[277,2587,1077],{"class":283},[277,2589,2590],{"class":279,"line":331},[277,2591,328],{"emptyLinePlaceholder":327},[277,2593,2594,2596],{"class":279,"line":346},[277,2595,1086],{"class":291},[277,2597,473],{"class":283},[277,2599,2600,2602],{"class":279,"line":360},[277,2601,1093],{"class":311},[277,2603,343],{"class":283},[277,2605,2606],{"class":279,"line":371},[277,2607,2608],{"class":283},"      filters: {\n",[277,2610,2611,2614,2616],{"class":279,"line":381},[277,2612,2613],{"class":283},"        search: ",[277,2615,451],{"class":301},[277,2617,1077],{"class":283},[277,2619,2620,2623],{"class":279,"line":391},[277,2621,2622],{"class":283},"        showOnlyOpen: ",[277,2624,2043],{"class":356},[277,2626,2627],{"class":279,"line":397},[277,2628,2629],{"class":283},"      },\n",[277,2631,2632],{"class":279,"line":402},[277,2633,2634],{"class":283},"      ui: {\n",[277,2636,2637,2640,2642],{"class":279,"line":436},[277,2638,2639],{"class":283},"        selectedId: ",[277,2641,2072],{"class":356},[277,2643,1077],{"class":283},[277,2645,2646,2649],{"class":279,"line":456},[277,2647,2648],{"class":283},"        panelOpen: ",[277,2650,2082],{"class":356},[277,2652,2653],{"class":279,"line":461},[277,2654,2629],{"class":283},[277,2656,2657],{"class":279,"line":476},[277,2658,2659],{"class":283},"      tasks: [\n",[277,2661,2662,2665,2667,2669,2671,2673,2675,2677,2679],{"class":279,"line":500},[277,2663,2664],{"class":283},"        { id: ",[277,2666,2072],{"class":356},[277,2668,2114],{"class":283},[277,2670,2117],{"class":301},[277,2672,2120],{"class":283},[277,2674,2123],{"class":356},[277,2676,2126],{"class":283},[277,2678,2129],{"class":301},[277,2680,2132],{"class":283},[277,2682,2683,2685,2687,2689,2691,2693,2695,2697,2699],{"class":279,"line":505},[277,2684,2664],{"class":283},[277,2686,2139],{"class":356},[277,2688,2114],{"class":283},[277,2690,2144],{"class":301},[277,2692,2120],{"class":283},[277,2694,2149],{"class":356},[277,2696,2126],{"class":283},[277,2698,2154],{"class":301},[277,2700,2132],{"class":283},[277,2702,2703,2705,2707,2709,2711,2713,2715,2717,2719],{"class":279,"line":520},[277,2704,2664],{"class":283},[277,2706,2163],{"class":356},[277,2708,2114],{"class":283},[277,2710,2168],{"class":301},[277,2712,2120],{"class":283},[277,2714,2123],{"class":356},[277,2716,2126],{"class":283},[277,2718,2129],{"class":301},[277,2720,2179],{"class":283},[277,2722,2723],{"class":279,"line":539},[277,2724,2725],{"class":283},"      ]\n",[277,2727,2728],{"class":279,"line":545},[277,2729,1126],{"class":283},[277,2731,2732],{"class":279,"line":550},[277,2733,1131],{"class":283},[277,2735,2736],{"class":279,"line":578},[277,2737,328],{"emptyLinePlaceholder":327},[277,2739,2740],{"class":279,"line":583},[277,2741,2742],{"class":283},"  computed: {\n",[277,2744,2745,2748],{"class":279,"line":588},[277,2746,2747],{"class":291},"    visibleTasks",[277,2749,473],{"class":283},[277,2751,2752,2755,2757,2760,2762,2764,2766,2768],{"class":279,"line":606},[277,2753,2754],{"class":311},"      return",[277,2756,1268],{"class":356},[277,2758,2759],{"class":283},".tasks.",[277,2761,2218],{"class":291},[277,2763,448],{"class":283},[277,2765,2223],{"class":349},[277,2767,2226],{"class":311},[277,2769,343],{"class":283},[277,2771,2772,2775,2777,2779],{"class":279,"line":614},[277,2773,2774],{"class":311},"        const",[277,2776,2236],{"class":356},[277,2778,340],{"class":311},[277,2780,2241],{"class":283},[277,2782,2783,2786,2788],{"class":279,"line":625},[277,2784,2785],{"class":283},"          .",[277,2787,2249],{"class":291},[277,2789,622],{"class":283},[277,2791,2792,2794,2796,2798,2800,2803,2805],{"class":279,"line":637},[277,2793,2785],{"class":283},[277,2795,2258],{"class":291},[277,2797,448],{"class":283},[277,2799,1341],{"class":356},[277,2801,2802],{"class":283},".filters.search.",[277,2804,2249],{"class":291},[277,2806,2266],{"class":283},[277,2808,2809],{"class":279,"line":646},[277,2810,328],{"emptyLinePlaceholder":327},[277,2812,2813,2815,2817,2819,2821,2824,2826,2828,2830,2832],{"class":279,"line":668},[277,2814,2774],{"class":311},[277,2816,2277],{"class":356},[277,2818,340],{"class":311},[277,2820,1268],{"class":356},[277,2822,2823],{"class":283},".filters.showOnlyOpen ",[277,2825,2285],{"class":311},[277,2827,2288],{"class":311},[277,2829,2291],{"class":283},[277,2831,353],{"class":311},[277,2833,2296],{"class":356},[277,2835,2836],{"class":279,"line":673},[277,2837,328],{"emptyLinePlaceholder":327},[277,2839,2840,2843,2845,2847],{"class":279,"line":679},[277,2841,2842],{"class":311},"        return",[277,2844,2307],{"class":283},[277,2846,2310],{"class":311},[277,2848,2313],{"class":283},[277,2850,2851],{"class":279,"line":684},[277,2852,2853],{"class":283},"      })\n",[277,2855,2856],{"class":279,"line":700},[277,2857,1126],{"class":283},[277,2859,2860],{"class":279,"line":717},[277,2861,1131],{"class":283},[277,2863,2864],{"class":279,"line":722},[277,2865,328],{"emptyLinePlaceholder":327},[277,2867,2868,2871,2873,2875],{"class":279,"line":729},[277,2869,2870],{"class":291},"  renderTracked",[277,2872,448],{"class":283},[277,2874,2337],{"class":349},[277,2876,2476],{"class":283},[277,2878,2879,2882,2884,2886,2888],{"class":279,"line":738},[277,2880,2881],{"class":283},"    console.",[277,2883,2352],{"class":291},[277,2885,448],{"class":283},[277,2887,2357],{"class":301},[277,2889,2360],{"class":283},[277,2891,2892],{"class":279,"line":747},[277,2893,2894],{"class":283},"      type: event.type,\n",[277,2896,2897,2900,2902],{"class":279,"line":754},[277,2898,2899],{"class":283},"      key: ",[277,2901,2373],{"class":291},[277,2903,2376],{"class":283},[277,2905,2906],{"class":279,"line":772},[277,2907,2908],{"class":283},"      target: event.target\n",[277,2910,2911],{"class":279,"line":777},[277,2912,2913],{"class":283},"    })\n",[277,2915,2916],{"class":279,"line":782},[277,2917,1131],{"class":283},[277,2919,2920],{"class":279,"line":792},[277,2921,328],{"emptyLinePlaceholder":327},[277,2923,2924,2927,2929,2931],{"class":279,"line":797},[277,2925,2926],{"class":291},"  renderTriggered",[277,2928,448],{"class":283},[277,2930,2337],{"class":349},[277,2932,2476],{"class":283},[277,2934,2935,2937,2939,2941,2943],{"class":279,"line":807},[277,2936,2881],{"class":283},[277,2938,2352],{"class":291},[277,2940,448],{"class":283},[277,2942,2419],{"class":301},[277,2944,2360],{"class":283},[277,2946,2947],{"class":279,"line":826},[277,2948,2894],{"class":283},[277,2950,2951,2953,2955],{"class":279,"line":849},[277,2952,2899],{"class":283},[277,2954,2373],{"class":291},[277,2956,2376],{"class":283},[277,2958,2959],{"class":279,"line":854},[277,2960,2961],{"class":283},"      oldValue: event.oldValue,\n",[277,2963,2964],{"class":279,"line":876},[277,2965,2966],{"class":283},"      newValue: event.newValue\n",[277,2968,2969],{"class":279,"line":891},[277,2970,2913],{"class":283},[277,2972,2973],{"class":279,"line":905},[277,2974,1131],{"class":283},[277,2976,2977],{"class":279,"line":919},[277,2978,328],{"emptyLinePlaceholder":327},[277,2980,2981],{"class":279,"line":929},[277,2982,1140],{"class":283},[277,2984,2985,2988,2990,2992],{"class":279,"line":934},[277,2986,2987],{"class":291},"    toggleTask",[277,2989,448],{"class":283},[277,2991,2468],{"class":349},[277,2993,2476],{"class":283},[277,2995,2996,2998,3000,3002,3004,3006,3008,3010,3012,3014,3016,3018],{"class":279,"line":951},[277,2997,1154],{"class":311},[277,2999,2483],{"class":356},[277,3001,340],{"class":311},[277,3003,1268],{"class":356},[277,3005,2759],{"class":283},[277,3007,2490],{"class":291},[277,3009,448],{"class":283},[277,3011,2495],{"class":349},[277,3013,2226],{"class":311},[277,3015,2500],{"class":283},[277,3017,2503],{"class":311},[277,3019,2506],{"class":283},[277,3021,3022],{"class":279,"line":961},[277,3023,328],{"emptyLinePlaceholder":327},[277,3025,3026,3028,3030,3032,3034],{"class":279,"line":1473},[277,3027,1177],{"class":311},[277,3029,511],{"class":283},[277,3031,514],{"class":311},[277,3033,2521],{"class":283},[277,3035,714],{"class":311},[277,3037,3038],{"class":279,"line":1478},[277,3039,328],{"emptyLinePlaceholder":327},[277,3041,3042,3045,3047,3049],{"class":279,"line":1497},[277,3043,3044],{"class":283},"      task.done ",[277,3046,298],{"class":311},[277,3048,2288],{"class":311},[277,3050,2539],{"class":283},[277,3052,3053],{"class":279,"line":1510},[277,3054,1126],{"class":283},[277,3056,3057],{"class":279,"line":1523},[277,3058,542],{"class":283},[277,3060,3061],{"class":279,"line":1536},[277,3062,394],{"class":283},[277,3064,3065,3067,3069],{"class":279,"line":1545},[277,3066,785],{"class":283},[277,3068,288],{"class":287},[277,3070,305],{"class":283},[21,3072,3073],{},"Este ejemplo permite observar claramente:",[38,3075,3076,3079,3082],{},[41,3077,3078],{},"Qué dependencias se registran al renderizar.",[41,3080,3081],{},"Qué cambios provocan nuevas actualizaciones.",[41,3083,3084],{},"Cómo el alcance del componente afecta su reactividad.",[30,3086,1596],{"id":1595},[21,3088,3089,1697,3091,3093],{},[16,3090,1685],{},[16,3092,1688],{}," no son herramientas decorativas ni de observabilidad general. Son instrumentos de diagnóstico para entender el render desde dentro.",[21,3095,3096],{},"Bien utilizados, permiten:",[38,3098,3099,3102,3105],{},[41,3100,3101],{},"Detectar dependencias accidentales.",[41,3103,3104],{},"Reducir renders innecesarios.",[41,3106,3107,3108,104],{},"Comprender mejor la relación entre template, estado reactivo y ",[16,3109,1732],{},[3111,3112,3113],"blockquote",{},[21,3114,3115],{},"Antes de optimizar a ciegas, observa qué dependencias se registran y qué cambios están disparando el render.",[1606,3117,3118],{},"html pre.shiki code .sVt8B, html code.shiki .sVt8B{--shiki-default:#24292E;--shiki-dark:#E1E4E8}html pre.shiki code .s9eBZ, html code.shiki .s9eBZ{--shiki-default:#22863A;--shiki-dark:#85E89D}html pre.shiki code .sScJk, html code.shiki .sScJk{--shiki-default:#6F42C1;--shiki-dark:#B392F0}html pre.shiki code .sZZnC, html code.shiki .sZZnC{--shiki-default:#032F62;--shiki-dark:#9ECBFF}html pre.shiki code .szBVR, html code.shiki .szBVR{--shiki-default:#D73A49;--shiki-dark:#F97583}html pre.shiki code .sj4cs, html code.shiki .sj4cs{--shiki-default:#005CC5;--shiki-dark:#79B8FF}html pre.shiki code .s4XuR, html code.shiki .s4XuR{--shiki-default:#E36209;--shiki-dark:#FFAB70}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":273,"searchDepth":308,"depth":308,"links":3120},[3121,3122,3123,3124,3125,3131,3136,3137],{"id":32,"depth":308,"text":33},{"id":60,"depth":308,"text":61},{"id":128,"depth":308,"text":129},{"id":155,"depth":308,"text":156},{"id":189,"depth":308,"text":190,"children":3126},[3127,3128,3129,3130],{"id":1909,"depth":324,"text":1910},{"id":1920,"depth":324,"text":1921},{"id":1931,"depth":324,"text":1932},{"id":1938,"depth":324,"text":1939},{"id":1945,"depth":308,"text":1946,"children":3132},[3133,3134,3135],{"id":1949,"depth":324,"text":1950},{"id":1959,"depth":324,"text":1960},{"id":1968,"depth":324,"text":1969},{"id":1975,"depth":308,"text":1976},{"id":1595,"depth":308,"text":1596},"https://res.cloudinary.com/denj4fg7f/image/upload/v1773802976/vue-lifecycle-render-debug-rendertracked-rendertriggered_ekkgg1.png","Ilustración de depuración del render en Vue con renderTracked y renderTriggered","2026-03-18","Cómo usar renderTracked, renderTriggered, onRenderTracked y onRenderTriggered para entender qué dependencias entran en un render y qué cambios están forzando nuevas actualizaciones.",{"script":3143},[3144],{"type":1632,"key":1633,"data-nuxt-schema-org":327,"nodes":3145},[3146],{"headline":1676,"author":3147,"datePublished":3148,"@type":1640},{"name":1637,"@type":1638},"2026-03-17T22:00:00-05:00",{"updatedAt":3148,"coverCaption":3150,"author":1637,"keywords":3151},"renderTracked y renderTriggered ayudan a ver qué dependencia entra al render y cuál lo vuelve a disparar.",[1645,1685,1688,2331,2398],"/blog/vue-lifecycle-render-debug-rendertracked-rendertriggered.es",[3154],{"headline":1676,"author":3155,"datePublished":3148,"@type":1640},{"name":1637,"@type":1638},{"title":1676,"description":3141},"blog/vue-lifecycle-render-debug-rendertracked-rendertriggered.es",[3159,3160,3163,3166,3169],{"tag":1660,"color":1661},{"tag":3161,"color":3162},"Depuración","#C44569",{"tag":3164,"color":3165},"Renderizado","#E17055",{"tag":3167,"color":3168},"Reactividad","#1D5BA1",{"tag":1671,"color":1672},"rCB_-d6-qlXT75rsym26zI8eV4iC-ZDlsiiGD7tMvKw",{"id":3172,"title":3173,"body":3174,"cover":5131,"coverAlt":5132,"date":5133,"description":5134,"draft":1627,"extension":1628,"head":5135,"locale":1641,"meta":5142,"navigation":327,"path":5147,"schemaOrg":5148,"seo":5151,"series":1653,"seriesDescription":1654,"seriesOrder":371,"seriesTitle":1655,"slug":1656,"stem":5152,"tags":5153,"__hash__":5160},"blog/blog/vue-lifecycle-error-handling-errorcaptured.es.md","Ciclos de vida en Vue: manejo de errores con errorCaptured",{"type":8,"value":3175,"toc":5111},[3176,3183,3186,3192,3194,3197,3203,3205,3218,3221,3245,3248,3268,3271,3288,3296,3298,3303,3306,3320,3326,3328,3334,3336,3363,3368,3370,3374,3377,3380,3387,3393,3396,3400,3403,3406,3410,3416,3418,3422,3425,3429,3432,3436,3439,3441,4344,5091,5094,5099,5101,5106,5109],[11,3177,3179,3180],{"id":3178},"ciclos-de-vida-en-vue-manejo-de-errores-con-errorcaptured","Ciclos de vida en Vue: manejo de errores con ",[16,3181,3182],{},"errorCaptured",[21,3184,3185],{},"Los errores en la interfaz rara vez avisan. Un widget deja de renderizar, una dependencia de terceros lanza una excepción o una vista hija falla durante una actualización, y de pronto el usuario se queda con un bloque en blanco o una pantalla incompleta.",[21,3187,3188,3189,3191],{},"Ahí es donde ",[16,3190,3182],{}," cobra valor. No evita que ocurran errores, pero te permite contenerlos en el lugar adecuado, registrar contexto útil y ofrecer una salida digna sin comprometer toda la UI.",[30,3193,33],{"id":32},[21,3195,3196],{},"A medida que una aplicación crece, no todos los componentes tienen el mismo nivel de confianza. Hay piezas muy estables y otras más frágiles: integraciones con librerías externas, widgets complejos, paneles que dependen de datos cambiantes o componentes en evolución constante.",[21,3198,3199,3200,3202],{},"Si los fallos se propagan sin control, el impacto suele ser desproporcionado. Un error en una tarjeta secundaria puede terminar afectando toda una pantalla. ",[16,3201,3182],{}," permite establecer límites: este bloque puede fallar, pero el resto de la página debe seguir funcionando.",[30,3204,61],{"id":60},[21,3206,3207,3209,3210,3213,3214,3217],{},[16,3208,3182],{}," es un hook de la Options API, y ",[16,3211,3212],{},"onErrorCaptured()"," es su equivalente en Composition API. Ambos permiten interceptar errores que ocurren en ",[72,3215,3216],{},"componentes descendientes"," del componente actual.",[21,3219,3220],{},"Esto incluye errores originados en partes habituales del flujo de Vue, como:",[38,3222,3223,3225,3228,3231,3236,3239,3242],{},[41,3224,3164],{},[41,3226,3227],{},"Event handlers",[41,3229,3230],{},"Hooks del ciclo de vida",[41,3232,3233],{},[16,3234,3235],{},"setup()",[41,3237,3238],{},"Watchers",[41,3240,3241],{},"Directivas personalizadas",[41,3243,3244],{},"Hooks de transición",[21,3246,3247],{},"El hook recibe tres argumentos:",[38,3249,3250,3256,3262],{},[41,3251,3252,3255],{},[16,3253,3254],{},"err",": el error capturado",[41,3257,3258,3261],{},[16,3259,3260],{},"instance",": la instancia del componente que lanzó el error",[41,3263,3264,3267],{},[16,3265,3266],{},"info",": una pista sobre el origen (por ejemplo, si ocurrió en render o en un evento)",[21,3269,3270],{},"Hay dos aspectos clave a tener en cuenta:",[38,3272,3273,3276],{},[41,3274,3275],{},"Solo captura errores de componentes hijos (y descendientes). No intercepta errores del mismo componente donde se declara.",[41,3277,3278,3279,3281,3282,3284,3285,104],{},"Si devuelve ",[16,3280,2123],{},", detiene la propagación del error hacia otros hooks ",[16,3283,3182],{}," superiores y hacia ",[16,3286,3287],{},"app.config.errorHandler",[21,3289,3290,3291,3295],{},"En la práctica, funciona como un ",[3292,3293,3294],"em",{},"error boundary"," local. Lo habitual es usarlo para tres objetivos simultáneos: registrar el error, mostrar un fallback y evitar que una parte aislada de la interfaz derribe el resto.",[30,3297,129],{"id":128},[21,3299,3300,3302],{},[16,3301,3182],{}," encaja bien cuando necesitas aislar fallos en una zona concreta de la UI.",[21,3304,3305],{},"Casos típicos:",[38,3307,3308,3311,3314,3317],{},[41,3309,3310],{},"Un dashboard con widgets independientes donde una tarjeta puede fallar sin romper toda la vista.",[41,3312,3313],{},"Un editor, gráfico o componente de terceros que conviene encapsular detrás de un fallback.",[41,3315,3316],{},"Un área de administración donde ciertos módulos se cargan de forma condicional y no deberían comprometer la navegación principal.",[41,3318,3319],{},"Un layout con bloques reutilizables donde quieres centralizar logging y mostrar mensajes útiles al usuario.",[21,3321,3322,3323,3325],{},"Regla práctica: si un componente hijo puede fallar y quieres contener el impacto, ",[16,3324,3182],{}," es una buena solución.",[30,3327,156],{"id":155},[21,3329,3330,3331,3333],{},"No conviene usar ",[16,3332,3182],{}," como solución universal.",[21,3335,162],{},[38,3337,3338,3350,3357,3360],{},[41,3339,3340,3341,225,3344,225,3347,1895],{},"El problema es un error esperado de negocio; en ese caso es mejor modelarlo como estado (",[16,3342,3343],{},"loading",[16,3345,3346],{},"empty",[16,3348,3349],{},"error",[41,3351,3352,3353,3356],{},"Solo necesitas manejar errores de una operación concreta; un ",[16,3354,3355],{},"try/catch"," suele ser más claro.",[41,3358,3359],{},"Se utiliza para ocultar errores sin registrarlos ni corregir su causa.",[41,3361,3362],{},"La recuperación depende de reiniciar toda la vista; probablemente el boundary está mal ubicado.",[21,3364,3365,3367],{},[16,3366,3182],{}," no reemplaza una estrategia de manejo de errores: la complementa.",[30,3369,190],{"id":189},[192,3371,3373],{"id":3372},"_1-esperar-que-capture-errores-del-mismo-componente","1. Esperar que capture errores del mismo componente",[21,3375,3376],{},"Este hook está diseñado para descendientes. Si el error ocurre en el mismo componente donde se declara, no será interceptado.",[21,3378,3379],{},"La solución es mover el boundary un nivel superior o encapsular la parte frágil en un componente hijo.",[192,3381,3383,3384,3386],{"id":3382},"_2-devolver-false-siempre","2. Devolver ",[16,3385,2123],{}," siempre",[21,3388,3389,3390,3392],{},"Devolver ",[16,3391,2123],{}," detiene la propagación. Puede ser útil si el error ya fue manejado, pero hacerlo sin criterio puede impedir el monitoreo global.",[21,3394,3395],{},"Devuélvelo solo cuando realmente hayas absorbido el error y registrado lo necesario.",[192,3397,3399],{"id":3398},"_3-mostrar-fallback-sin-ofrecer-salida","3. Mostrar fallback sin ofrecer salida",[21,3401,3402],{},"Un mensaje como “algo salió mal” no es suficiente si el usuario no puede actuar.",[21,3404,3405],{},"Siempre que tenga sentido, añade opciones como reintentar, recargar o volver a un estado válido.",[192,3407,3409],{"id":3408},"_4-usarlo-para-ocultar-código-frágil","4. Usarlo para ocultar código frágil",[21,3411,3412,3413,3415],{},"Si un componente falla con frecuencia, ",[16,3414,3182],{}," no debería convertirse en una solución permanente. Sirve para mitigar impacto, no para normalizar problemas estructurales.",[30,3417,1946],{"id":1945},[192,3419,3421],{"id":3420},"dashboard-con-tarjetas-independientes","Dashboard con tarjetas independientes",[21,3423,3424],{},"Si una tarjeta falla, puedes reemplazar solo ese bloque y mantener funcional el resto del tablero.",[192,3426,3428],{"id":3427},"componentes-de-terceros","Componentes de terceros",[21,3430,3431],{},"Algunas librerías no fallan de forma controlada. Encapsularlas en un boundary permite evitar que rompan toda la vista.",[192,3433,3435],{"id":3434},"módulos-opcionales","Módulos opcionales",[21,3437,3438],{},"En paneles complejos, ciertos módulos no son críticos. Es preferible degradar esa sección sin afectar la navegación principal.",[30,3440,1976],{"id":1975},[267,3442,3444],{"className":269,"code":3443,"filename":271,"language":272,"meta":273,"style":273},"\u003Cscript setup lang=\"ts\">\nimport { computed, defineComponent, h, onErrorCaptured, ref } from 'vue'\n\nconst hasError = ref(false)\nconst errorMessage = ref('')\nconst errorSource = ref('')\nconst retryKey = ref(0)\n\nconst RiskyStatsPanel = defineComponent({\n  name: 'RiskyStatsPanel',\n  setup() {\n    const shouldFail = ref(false)\n\n    const stats = computed(() => {\n      if (shouldFail.value) {\n        throw new Error('No fue posible calcular las métricas del tablero.')\n      }\n\n      return [\n        { label: 'Pendientes', value: 14 },\n        { label: 'Completadas', value: 29 },\n        { label: 'Bloqueadas', value: 3 }\n      ]\n    })\n\n    return () =>\n      h('section', { class: 'stats-panel' }, [\n        h('h3', 'Resumen de tareas'),\n        h(\n          'button',\n          {\n            type: 'button',\n            onClick: () => {\n              shouldFail.value = true\n            }\n          },\n          'Simular fallo del widget'\n        ),\n        h(\n          'ul',\n          stats.value.map(stat =>\n            h('li', { key: stat.label }, `${stat.label}: ${stat.value}`)\n          )\n        )\n      ])\n  }\n})\n\nonErrorCaptured((error, instance, info) => {\n  hasError.value = true\n  errorMessage.value =\n    error instanceof Error ? error.message : 'Ocurrió un error inesperado.'\n  errorSource.value = info\n\n  console.error('Widget capturado por el boundary del dashboard', {\n    error,\n    component: instance?.type,\n    info\n  })\n\n  return false\n})\n\nfunction retry() {\n  hasError.value = false\n  errorMessage.value = ''\n  errorSource.value = ''\n  retryKey.value += 1\n}\n\u003C/script>\n\n\u003Ctemplate>\n  \u003Csection class=\"dashboard-card\">\n    \u003Cheader>\n      \u003Ch2>Estado del dashboard\u003C/h2>\n      \u003Cp>\n        Si un widget falla, el resto de la pantalla puede seguir funcionando.\n      \u003C/p>\n    \u003C/header>\n\n    \u003Cdiv v-if=\"hasError\" class=\"error-box\">\n      \u003Cstrong>Este bloque no pudo renderizarse.\u003C/strong>\n      \u003Cp>{{ errorMessage }}\u003C/p>\n      \u003Csmall>Origen: {{ errorSource }}\u003C/small>\n      \u003Cbutton type=\"button\" @click=\"retry\">Reintentar\u003C/button>\n    \u003C/div>\n\n    \u003CRiskyStatsPanel v-else :key=\"retryKey\" />\n  \u003C/section>\n\u003C/template>\n",[16,3445,3446,3462,3473,3477,3494,3510,3527,3545,3549,3562,3571,3578,3595,3599,3616,3623,3638,3642,3646,3653,3669,3683,3696,3700,3704,3708,3717,3736,3754,3761,3768,3773,3783,3795,3804,3809,3814,3819,3824,3830,3837,3853,3891,3896,3901,3906,3910,3914,3918,3941,3950,3957,3975,3985,3989,4002,4007,4012,4017,4021,4025,4032,4036,4040,4049,4057,4066,4074,4086,4091,4100,4105,4114,4131,4141,4155,4164,4170,4180,4189,4194,4218,4232,4245,4260,4291,4300,4305,4326,4335],{"__ignoreMap":273},[277,3447,3448,3450,3452,3454,3456,3458,3460],{"class":279,"line":280},[277,3449,284],{"class":283},[277,3451,288],{"class":287},[277,3453,292],{"class":291},[277,3455,295],{"class":291},[277,3457,298],{"class":283},[277,3459,302],{"class":301},[277,3461,305],{"class":283},[277,3463,3464,3466,3469,3471],{"class":279,"line":308},[277,3465,312],{"class":311},[277,3467,3468],{"class":283}," { computed, defineComponent, h, onErrorCaptured, ref } ",[277,3470,318],{"class":311},[277,3472,321],{"class":301},[277,3474,3475],{"class":279,"line":324},[277,3476,328],{"emptyLinePlaceholder":327},[277,3478,3479,3481,3484,3486,3488,3490,3492],{"class":279,"line":331},[277,3480,405],{"class":311},[277,3482,3483],{"class":356}," hasError",[277,3485,340],{"class":311},[277,3487,413],{"class":291},[277,3489,448],{"class":283},[277,3491,2123],{"class":356},[277,3493,433],{"class":283},[277,3495,3496,3498,3500,3502,3504,3506,3508],{"class":279,"line":346},[277,3497,405],{"class":311},[277,3499,441],{"class":356},[277,3501,340],{"class":311},[277,3503,413],{"class":291},[277,3505,448],{"class":283},[277,3507,451],{"class":301},[277,3509,433],{"class":283},[277,3511,3512,3514,3517,3519,3521,3523,3525],{"class":279,"line":360},[277,3513,405],{"class":311},[277,3515,3516],{"class":356}," errorSource",[277,3518,340],{"class":311},[277,3520,413],{"class":291},[277,3522,448],{"class":283},[277,3524,451],{"class":301},[277,3526,433],{"class":283},[277,3528,3529,3531,3534,3536,3538,3540,3543],{"class":279,"line":371},[277,3530,405],{"class":311},[277,3532,3533],{"class":356}," retryKey",[277,3535,340],{"class":311},[277,3537,413],{"class":291},[277,3539,448],{"class":283},[277,3541,3542],{"class":356},"0",[277,3544,433],{"class":283},[277,3546,3547],{"class":279,"line":381},[277,3548,328],{"emptyLinePlaceholder":327},[277,3550,3551,3553,3556,3558,3560],{"class":279,"line":391},[277,3552,405],{"class":311},[277,3554,3555],{"class":356}," RiskyStatsPanel",[277,3557,340],{"class":311},[277,3559,1063],{"class":291},[277,3561,1066],{"class":283},[277,3563,3564,3566,3569],{"class":279,"line":397},[277,3565,1071],{"class":283},[277,3567,3568],{"class":301},"'RiskyStatsPanel'",[277,3570,1077],{"class":283},[277,3572,3573,3576],{"class":279,"line":402},[277,3574,3575],{"class":291},"  setup",[277,3577,473],{"class":283},[277,3579,3580,3582,3585,3587,3589,3591,3593],{"class":279,"line":436},[277,3581,2233],{"class":311},[277,3583,3584],{"class":356}," shouldFail",[277,3586,340],{"class":311},[277,3588,413],{"class":291},[277,3590,448],{"class":283},[277,3592,2123],{"class":356},[277,3594,433],{"class":283},[277,3596,3597],{"class":279,"line":456},[277,3598,328],{"emptyLinePlaceholder":327},[277,3600,3601,3603,3606,3608,3610,3612,3614],{"class":279,"line":461},[277,3602,2233],{"class":311},[277,3604,3605],{"class":356}," stats",[277,3607,340],{"class":311},[277,3609,2200],{"class":291},[277,3611,2203],{"class":283},[277,3613,601],{"class":311},[277,3615,343],{"class":283},[277,3617,3618,3620],{"class":279,"line":476},[277,3619,1177],{"class":311},[277,3621,3622],{"class":283}," (shouldFail.value) {\n",[277,3624,3625,3627,3629,3631,3633,3636],{"class":279,"line":500},[277,3626,1188],{"class":311},[277,3628,526],{"class":311},[277,3630,529],{"class":291},[277,3632,448],{"class":283},[277,3634,3635],{"class":301},"'No fue posible calcular las métricas del tablero.'",[277,3637,433],{"class":283},[277,3639,3640],{"class":279,"line":505},[277,3641,1203],{"class":283},[277,3643,3644],{"class":279,"line":520},[277,3645,328],{"emptyLinePlaceholder":327},[277,3647,3648,3650],{"class":279,"line":539},[277,3649,2754],{"class":311},[277,3651,3652],{"class":283}," [\n",[277,3654,3655,3658,3661,3664,3667],{"class":279,"line":545},[277,3656,3657],{"class":283},"        { label: ",[277,3659,3660],{"class":301},"'Pendientes'",[277,3662,3663],{"class":283},", value: ",[277,3665,3666],{"class":356},"14",[277,3668,2132],{"class":283},[277,3670,3671,3673,3676,3678,3681],{"class":279,"line":550},[277,3672,3657],{"class":283},[277,3674,3675],{"class":301},"'Completadas'",[277,3677,3663],{"class":283},[277,3679,3680],{"class":356},"29",[277,3682,2132],{"class":283},[277,3684,3685,3687,3690,3692,3694],{"class":279,"line":578},[277,3686,3657],{"class":283},[277,3688,3689],{"class":301},"'Bloqueadas'",[277,3691,3663],{"class":283},[277,3693,2163],{"class":356},[277,3695,2179],{"class":283},[277,3697,3698],{"class":279,"line":583},[277,3699,2725],{"class":283},[277,3701,3702],{"class":279,"line":588},[277,3703,2913],{"class":283},[277,3705,3706],{"class":279,"line":606},[277,3707,328],{"emptyLinePlaceholder":327},[277,3709,3710,3712,3714],{"class":279,"line":614},[277,3711,1093],{"class":311},[277,3713,598],{"class":283},[277,3715,3716],{"class":311},"=>\n",[277,3718,3719,3722,3724,3727,3730,3733],{"class":279,"line":625},[277,3720,3721],{"class":291},"      h",[277,3723,448],{"class":283},[277,3725,3726],{"class":301},"'section'",[277,3728,3729],{"class":283},", { class: ",[277,3731,3732],{"class":301},"'stats-panel'",[277,3734,3735],{"class":283}," }, [\n",[277,3737,3738,3741,3743,3746,3748,3751],{"class":279,"line":637},[277,3739,3740],{"class":291},"        h",[277,3742,448],{"class":283},[277,3744,3745],{"class":301},"'h3'",[277,3747,225],{"class":283},[277,3749,3750],{"class":301},"'Resumen de tareas'",[277,3752,3753],{"class":283},"),\n",[277,3755,3756,3758],{"class":279,"line":646},[277,3757,3740],{"class":291},[277,3759,3760],{"class":283},"(\n",[277,3762,3763,3766],{"class":279,"line":668},[277,3764,3765],{"class":301},"          'button'",[277,3767,1077],{"class":283},[277,3769,3770],{"class":279,"line":673},[277,3771,3772],{"class":283},"          {\n",[277,3774,3775,3778,3781],{"class":279,"line":679},[277,3776,3777],{"class":283},"            type: ",[277,3779,3780],{"class":301},"'button'",[277,3782,1077],{"class":283},[277,3784,3785,3788,3791,3793],{"class":279,"line":684},[277,3786,3787],{"class":291},"            onClick",[277,3789,3790],{"class":283},": () ",[277,3792,601],{"class":311},[277,3794,343],{"class":283},[277,3796,3797,3800,3802],{"class":279,"line":700},[277,3798,3799],{"class":283},"              shouldFail.value ",[277,3801,298],{"class":311},[277,3803,2296],{"class":356},[277,3805,3806],{"class":279,"line":717},[277,3807,3808],{"class":283},"            }\n",[277,3810,3811],{"class":279,"line":722},[277,3812,3813],{"class":283},"          },\n",[277,3815,3816],{"class":279,"line":729},[277,3817,3818],{"class":301},"          'Simular fallo del widget'\n",[277,3820,3821],{"class":279,"line":738},[277,3822,3823],{"class":283},"        ),\n",[277,3825,3826,3828],{"class":279,"line":747},[277,3827,3740],{"class":291},[277,3829,3760],{"class":283},[277,3831,3832,3835],{"class":279,"line":754},[277,3833,3834],{"class":301},"          'ul'",[277,3836,1077],{"class":283},[277,3838,3839,3842,3845,3847,3850],{"class":279,"line":772},[277,3840,3841],{"class":283},"          stats.value.",[277,3843,3844],{"class":291},"map",[277,3846,448],{"class":283},[277,3848,3849],{"class":349},"stat",[277,3851,3852],{"class":311}," =>\n",[277,3854,3855,3858,3860,3863,3866,3869,3871,3873,3876,3879,3881,3883,3886,3889],{"class":279,"line":777},[277,3856,3857],{"class":291},"            h",[277,3859,448],{"class":283},[277,3861,3862],{"class":301},"'li'",[277,3864,3865],{"class":283},", { key: stat.label }, ",[277,3867,3868],{"class":301},"`${",[277,3870,3849],{"class":283},[277,3872,104],{"class":301},[277,3874,3875],{"class":283},"label",[277,3877,3878],{"class":301},"}: ${",[277,3880,3849],{"class":283},[277,3882,104],{"class":301},[277,3884,3885],{"class":283},"value",[277,3887,3888],{"class":301},"}`",[277,3890,433],{"class":283},[277,3892,3893],{"class":279,"line":782},[277,3894,3895],{"class":283},"          )\n",[277,3897,3898],{"class":279,"line":792},[277,3899,3900],{"class":283},"        )\n",[277,3902,3903],{"class":279,"line":797},[277,3904,3905],{"class":283},"      ])\n",[277,3907,3908],{"class":279,"line":807},[277,3909,542],{"class":283},[277,3911,3912],{"class":279,"line":826},[277,3913,676],{"class":283},[277,3915,3916],{"class":279,"line":849},[277,3917,328],{"emptyLinePlaceholder":327},[277,3919,3920,3923,3925,3927,3929,3931,3933,3935,3937,3939],{"class":279,"line":854},[277,3921,3922],{"class":291},"onErrorCaptured",[277,3924,2334],{"class":283},[277,3926,3349],{"class":349},[277,3928,225],{"class":283},[277,3930,3260],{"class":349},[277,3932,225],{"class":283},[277,3934,3266],{"class":349},[277,3936,2340],{"class":283},[277,3938,601],{"class":311},[277,3940,343],{"class":283},[277,3942,3943,3946,3948],{"class":279,"line":876},[277,3944,3945],{"class":283},"  hasError.value ",[277,3947,298],{"class":311},[277,3949,2296],{"class":356},[277,3951,3952,3955],{"class":279,"line":891},[277,3953,3954],{"class":283},"  errorMessage.value ",[277,3956,643],{"class":311},[277,3958,3959,3962,3964,3966,3968,3970,3972],{"class":279,"line":905},[277,3960,3961],{"class":283},"    error ",[277,3963,652],{"class":311},[277,3965,529],{"class":291},[277,3967,657],{"class":311},[277,3969,660],{"class":283},[277,3971,353],{"class":311},[277,3973,3974],{"class":301}," 'Ocurrió un error inesperado.'\n",[277,3976,3977,3980,3982],{"class":279,"line":919},[277,3978,3979],{"class":283},"  errorSource.value ",[277,3981,298],{"class":311},[277,3983,3984],{"class":283}," info\n",[277,3986,3987],{"class":279,"line":929},[277,3988,328],{"emptyLinePlaceholder":327},[277,3990,3991,3993,3995,3997,4000],{"class":279,"line":934},[277,3992,2349],{"class":283},[277,3994,3349],{"class":291},[277,3996,448],{"class":283},[277,3998,3999],{"class":301},"'Widget capturado por el boundary del dashboard'",[277,4001,2360],{"class":283},[277,4003,4004],{"class":279,"line":951},[277,4005,4006],{"class":283},"    error,\n",[277,4008,4009],{"class":279,"line":961},[277,4010,4011],{"class":283},"    component: instance?.type,\n",[277,4013,4014],{"class":279,"line":1473},[277,4015,4016],{"class":283},"    info\n",[277,4018,4019],{"class":279,"line":1478},[277,4020,2318],{"class":283},[277,4022,4023],{"class":279,"line":1497},[277,4024,328],{"emptyLinePlaceholder":327},[277,4026,4027,4029],{"class":279,"line":1510},[277,4028,2212],{"class":311},[277,4030,4031],{"class":356}," false\n",[277,4033,4034],{"class":279,"line":1523},[277,4035,676],{"class":283},[277,4037,4038],{"class":279,"line":1536},[277,4039,328],{"emptyLinePlaceholder":327},[277,4041,4042,4044,4047],{"class":279,"line":1545},[277,4043,2460],{"class":311},[277,4045,4046],{"class":291}," retry",[277,4048,473],{"class":283},[277,4050,4051,4053,4055],{"class":279,"line":1550},[277,4052,3945],{"class":283},[277,4054,298],{"class":311},[277,4056,4031],{"class":356},[277,4058,4059,4061,4063],{"class":279,"line":1565},[277,4060,3954],{"class":283},[277,4062,298],{"class":311},[277,4064,4065],{"class":301}," ''\n",[277,4067,4068,4070,4072],{"class":279,"line":1574},[277,4069,3979],{"class":283},[277,4071,298],{"class":311},[277,4073,4065],{"class":301},[277,4075,4077,4080,4083],{"class":279,"line":4076},68,[277,4078,4079],{"class":283},"  retryKey.value ",[277,4081,4082],{"class":311},"+=",[277,4084,4085],{"class":356}," 1\n",[277,4087,4089],{"class":279,"line":4088},69,[277,4090,394],{"class":283},[277,4092,4094,4096,4098],{"class":279,"line":4093},70,[277,4095,785],{"class":283},[277,4097,288],{"class":287},[277,4099,305],{"class":283},[277,4101,4103],{"class":279,"line":4102},71,[277,4104,328],{"emptyLinePlaceholder":327},[277,4106,4108,4110,4112],{"class":279,"line":4107},72,[277,4109,284],{"class":283},[277,4111,802],{"class":287},[277,4113,305],{"class":283},[277,4115,4117,4119,4122,4124,4126,4129],{"class":279,"line":4116},73,[277,4118,810],{"class":283},[277,4120,4121],{"class":287},"section",[277,4123,816],{"class":291},[277,4125,298],{"class":283},[277,4127,4128],{"class":301},"\"dashboard-card\"",[277,4130,305],{"class":283},[277,4132,4134,4136,4139],{"class":279,"line":4133},74,[277,4135,829],{"class":283},[277,4137,4138],{"class":287},"header",[277,4140,305],{"class":283},[277,4142,4144,4146,4148,4151,4153],{"class":279,"line":4143},75,[277,4145,879],{"class":283},[277,4147,30],{"class":287},[277,4149,4150],{"class":283},">Estado del dashboard\u003C/",[277,4152,30],{"class":287},[277,4154,305],{"class":283},[277,4156,4158,4160,4162],{"class":279,"line":4157},76,[277,4159,879],{"class":283},[277,4161,21],{"class":287},[277,4163,305],{"class":283},[277,4165,4167],{"class":279,"line":4166},77,[277,4168,4169],{"class":283},"        Si un widget falla, el resto de la pantalla puede seguir funcionando.\n",[277,4171,4173,4176,4178],{"class":279,"line":4172},78,[277,4174,4175],{"class":283},"      \u003C/",[277,4177,21],{"class":287},[277,4179,305],{"class":283},[277,4181,4183,4185,4187],{"class":279,"line":4182},79,[277,4184,922],{"class":283},[277,4186,4138],{"class":287},[277,4188,305],{"class":283},[277,4190,4192],{"class":279,"line":4191},80,[277,4193,328],{"emptyLinePlaceholder":327},[277,4195,4197,4199,4202,4204,4206,4209,4211,4213,4216],{"class":279,"line":4196},81,[277,4198,829],{"class":283},[277,4200,4201],{"class":287},"div",[277,4203,834],{"class":291},[277,4205,298],{"class":283},[277,4207,4208],{"class":301},"\"hasError\"",[277,4210,816],{"class":291},[277,4212,298],{"class":283},[277,4214,4215],{"class":301},"\"error-box\"",[277,4217,305],{"class":283},[277,4219,4221,4223,4225,4228,4230],{"class":279,"line":4220},82,[277,4222,879],{"class":283},[277,4224,72],{"class":287},[277,4226,4227],{"class":283},">Este bloque no pudo renderizarse.\u003C/",[277,4229,72],{"class":287},[277,4231,305],{"class":283},[277,4233,4235,4237,4239,4241,4243],{"class":279,"line":4234},83,[277,4236,879],{"class":283},[277,4238,21],{"class":287},[277,4240,842],{"class":283},[277,4242,21],{"class":287},[277,4244,305],{"class":283},[277,4246,4248,4250,4253,4256,4258],{"class":279,"line":4247},84,[277,4249,879],{"class":283},[277,4251,4252],{"class":287},"small",[277,4254,4255],{"class":283},">Origen: {{ errorSource }}\u003C/",[277,4257,4252],{"class":287},[277,4259,305],{"class":283},[277,4261,4263,4265,4268,4271,4273,4276,4279,4281,4284,4287,4289],{"class":279,"line":4262},85,[277,4264,879],{"class":283},[277,4266,4267],{"class":287},"button",[277,4269,4270],{"class":291}," type",[277,4272,298],{"class":283},[277,4274,4275],{"class":301},"\"button\"",[277,4277,4278],{"class":291}," @click",[277,4280,298],{"class":283},[277,4282,4283],{"class":301},"\"retry\"",[277,4285,4286],{"class":283},">Reintentar\u003C/",[277,4288,4267],{"class":287},[277,4290,305],{"class":283},[277,4292,4294,4296,4298],{"class":279,"line":4293},86,[277,4295,922],{"class":283},[277,4297,4201],{"class":287},[277,4299,305],{"class":283},[277,4301,4303],{"class":279,"line":4302},87,[277,4304,328],{"emptyLinePlaceholder":327},[277,4306,4308,4310,4313,4315,4318,4320,4323],{"class":279,"line":4307},88,[277,4309,829],{"class":283},[277,4311,4312],{"class":287},"RiskyStatsPanel",[277,4314,941],{"class":291},[277,4316,4317],{"class":291}," :key",[277,4319,298],{"class":283},[277,4321,4322],{"class":301},"\"retryKey\"",[277,4324,4325],{"class":283}," />\n",[277,4327,4329,4331,4333],{"class":279,"line":4328},89,[277,4330,954],{"class":283},[277,4332,4121],{"class":287},[277,4334,305],{"class":283},[277,4336,4338,4340,4342],{"class":279,"line":4337},90,[277,4339,785],{"class":283},[277,4341,802],{"class":287},[277,4343,305],{"class":283},[267,4345,4347],{"className":269,"code":4346,"filename":971,"language":272,"meta":273,"style":273},"\u003Cscript lang=\"ts\">\nconst RiskyStatsPanel = {\n  name: 'RiskyStatsPanel',\n  data() {\n    return {\n      shouldFail: false\n    }\n  },\n  computed: {\n    stats() {\n      if (this.shouldFail) {\n        throw new Error('No fue posible calcular las métricas del tablero.')\n      }\n\n      return [\n        { label: 'Pendientes', value: 14 },\n        { label: 'Completadas', value: 29 },\n        { label: 'Bloqueadas', value: 3 }\n      ]\n    }\n  },\n  template: `\n    \u003Csection class=\"stats-panel\">\n      \u003Ch3>Resumen de tareas\u003C/h3>\n      \u003Cbutton\n        type=\"button\"\n        @click=\"shouldFail = true\"\n      >\n        Simular fallo del widget\n      \u003C/button>\n\n      \u003Cul>\n        \u003Cli\n          v-for=\"stat in stats\"\n          :key=\"stat.label\"\n        >\n          {{ stat.label }}: {{ stat.value }}\n        \u003C/li>\n      \u003C/ul>\n    \u003C/section>\n  `\n}\n\nexport default {\n  name: 'DashboardErrorBoundary',\n  components: {\n    RiskyStatsPanel\n  },\n  data() {\n    return {\n      hasError: false,\n      errorMessage: '',\n      errorSource: '',\n      retryKey: 0\n    }\n  },\n  errorCaptured(error, instance, info) {\n    this.hasError = true\n    this.errorMessage =\n      error instanceof Error ? error.message : 'Ocurrió un error inesperado.'\n    this.errorSource = info\n\n    console.error('Widget capturado por el boundary del dashboard', {\n      error,\n      component: instance?.type,\n      info\n    })\n\n    return false\n  },\n  methods: {\n    retry() {\n      this.hasError = false\n      this.errorMessage = ''\n      this.errorSource = ''\n      this.retryKey += 1\n    }\n  }\n}\n\u003C/script>\n\n\u003Ctemplate>\n  \u003Csection class=\"dashboard-card\">\n    \u003Cheader>\n      \u003Ch2>Estado del dashboard\u003C/h2>\n      \u003Cp>Si un widget falla, el resto de la pantalla puede seguir funcionando.\u003C/p>\n    \u003C/header>\n\n    \u003Cdiv v-if=\"hasError\" class=\"error-box\">\n      \u003Cstrong>Este bloque no pudo renderizarse.\u003C/strong>\n      \u003Cp>{{ errorMessage }}\u003C/p>\n      \u003Csmall>Origen: {{ errorSource }}\u003C/small>\n      \u003Cbutton type=\"button\" @click=\"retry\">Reintentar\u003C/button>\n    \u003C/div>\n\n    \u003CRiskyStatsPanel v-else :key=\"retryKey\" />\n  \u003C/section>\n\u003C/template>\n",[16,4348,4349,4363,4373,4381,4387,4393,4400,4404,4408,4412,4419,4430,4444,4448,4452,4458,4470,4482,4494,4498,4502,4506,4514,4519,4524,4529,4534,4539,4544,4549,4554,4558,4563,4568,4573,4578,4583,4588,4593,4598,4603,4608,4612,4616,4624,4633,4638,4643,4647,4653,4659,4668,4676,4685,4693,4697,4701,4720,4732,4740,4756,4767,4771,4783,4788,4793,4798,4802,4806,4812,4816,4820,4827,4837,4847,4857,4868,4872,4876,4880,4888,4892,4900,4914,4922,4934,4947,4955,4959,4979,4991,5004,5017,5042,5051,5056,5073,5082],{"__ignoreMap":273},[277,4350,4351,4353,4355,4357,4359,4361],{"class":279,"line":280},[277,4352,284],{"class":283},[277,4354,288],{"class":287},[277,4356,295],{"class":291},[277,4358,298],{"class":283},[277,4360,302],{"class":301},[277,4362,305],{"class":283},[277,4364,4365,4367,4369,4371],{"class":279,"line":308},[277,4366,405],{"class":311},[277,4368,3555],{"class":356},[277,4370,340],{"class":311},[277,4372,343],{"class":283},[277,4374,4375,4377,4379],{"class":279,"line":324},[277,4376,1071],{"class":283},[277,4378,3568],{"class":301},[277,4380,1077],{"class":283},[277,4382,4383,4385],{"class":279,"line":331},[277,4384,1086],{"class":291},[277,4386,473],{"class":283},[277,4388,4389,4391],{"class":279,"line":346},[277,4390,1093],{"class":311},[277,4392,343],{"class":283},[277,4394,4395,4398],{"class":279,"line":360},[277,4396,4397],{"class":283},"      shouldFail: ",[277,4399,2043],{"class":356},[277,4401,4402],{"class":279,"line":371},[277,4403,1126],{"class":283},[277,4405,4406],{"class":279,"line":381},[277,4407,1131],{"class":283},[277,4409,4410],{"class":279,"line":391},[277,4411,2742],{"class":283},[277,4413,4414,4417],{"class":279,"line":397},[277,4415,4416],{"class":291},"    stats",[277,4418,473],{"class":283},[277,4420,4421,4423,4425,4427],{"class":279,"line":402},[277,4422,1177],{"class":311},[277,4424,511],{"class":283},[277,4426,1341],{"class":356},[277,4428,4429],{"class":283},".shouldFail) {\n",[277,4431,4432,4434,4436,4438,4440,4442],{"class":279,"line":436},[277,4433,1188],{"class":311},[277,4435,526],{"class":311},[277,4437,529],{"class":291},[277,4439,448],{"class":283},[277,4441,3635],{"class":301},[277,4443,433],{"class":283},[277,4445,4446],{"class":279,"line":456},[277,4447,1203],{"class":283},[277,4449,4450],{"class":279,"line":461},[277,4451,328],{"emptyLinePlaceholder":327},[277,4453,4454,4456],{"class":279,"line":476},[277,4455,2754],{"class":311},[277,4457,3652],{"class":283},[277,4459,4460,4462,4464,4466,4468],{"class":279,"line":500},[277,4461,3657],{"class":283},[277,4463,3660],{"class":301},[277,4465,3663],{"class":283},[277,4467,3666],{"class":356},[277,4469,2132],{"class":283},[277,4471,4472,4474,4476,4478,4480],{"class":279,"line":505},[277,4473,3657],{"class":283},[277,4475,3675],{"class":301},[277,4477,3663],{"class":283},[277,4479,3680],{"class":356},[277,4481,2132],{"class":283},[277,4483,4484,4486,4488,4490,4492],{"class":279,"line":520},[277,4485,3657],{"class":283},[277,4487,3689],{"class":301},[277,4489,3663],{"class":283},[277,4491,2163],{"class":356},[277,4493,2179],{"class":283},[277,4495,4496],{"class":279,"line":539},[277,4497,2725],{"class":283},[277,4499,4500],{"class":279,"line":545},[277,4501,1126],{"class":283},[277,4503,4504],{"class":279,"line":550},[277,4505,1131],{"class":283},[277,4507,4508,4511],{"class":279,"line":578},[277,4509,4510],{"class":283},"  template: ",[277,4512,4513],{"class":301},"`\n",[277,4515,4516],{"class":279,"line":583},[277,4517,4518],{"class":301},"    \u003Csection class=\"stats-panel\">\n",[277,4520,4521],{"class":279,"line":588},[277,4522,4523],{"class":301},"      \u003Ch3>Resumen de tareas\u003C/h3>\n",[277,4525,4526],{"class":279,"line":606},[277,4527,4528],{"class":301},"      \u003Cbutton\n",[277,4530,4531],{"class":279,"line":614},[277,4532,4533],{"class":301},"        type=\"button\"\n",[277,4535,4536],{"class":279,"line":625},[277,4537,4538],{"class":301},"        @click=\"shouldFail = true\"\n",[277,4540,4541],{"class":279,"line":637},[277,4542,4543],{"class":301},"      >\n",[277,4545,4546],{"class":279,"line":646},[277,4547,4548],{"class":301},"        Simular fallo del widget\n",[277,4550,4551],{"class":279,"line":668},[277,4552,4553],{"class":301},"      \u003C/button>\n",[277,4555,4556],{"class":279,"line":673},[277,4557,328],{"emptyLinePlaceholder":327},[277,4559,4560],{"class":279,"line":679},[277,4561,4562],{"class":301},"      \u003Cul>\n",[277,4564,4565],{"class":279,"line":684},[277,4566,4567],{"class":301},"        \u003Cli\n",[277,4569,4570],{"class":279,"line":700},[277,4571,4572],{"class":301},"          v-for=\"stat in stats\"\n",[277,4574,4575],{"class":279,"line":717},[277,4576,4577],{"class":301},"          :key=\"stat.label\"\n",[277,4579,4580],{"class":279,"line":722},[277,4581,4582],{"class":301},"        >\n",[277,4584,4585],{"class":279,"line":729},[277,4586,4587],{"class":301},"          {{ stat.label }}: {{ stat.value }}\n",[277,4589,4590],{"class":279,"line":738},[277,4591,4592],{"class":301},"        \u003C/li>\n",[277,4594,4595],{"class":279,"line":747},[277,4596,4597],{"class":301},"      \u003C/ul>\n",[277,4599,4600],{"class":279,"line":754},[277,4601,4602],{"class":301},"    \u003C/section>\n",[277,4604,4605],{"class":279,"line":772},[277,4606,4607],{"class":301},"  `\n",[277,4609,4610],{"class":279,"line":777},[277,4611,394],{"class":283},[277,4613,4614],{"class":279,"line":782},[277,4615,328],{"emptyLinePlaceholder":327},[277,4617,4618,4620,4622],{"class":279,"line":792},[277,4619,1057],{"class":311},[277,4621,1060],{"class":311},[277,4623,343],{"class":283},[277,4625,4626,4628,4631],{"class":279,"line":797},[277,4627,1071],{"class":283},[277,4629,4630],{"class":301},"'DashboardErrorBoundary'",[277,4632,1077],{"class":283},[277,4634,4635],{"class":279,"line":807},[277,4636,4637],{"class":283},"  components: {\n",[277,4639,4640],{"class":279,"line":826},[277,4641,4642],{"class":283},"    RiskyStatsPanel\n",[277,4644,4645],{"class":279,"line":849},[277,4646,1131],{"class":283},[277,4648,4649,4651],{"class":279,"line":854},[277,4650,1086],{"class":291},[277,4652,473],{"class":283},[277,4654,4655,4657],{"class":279,"line":876},[277,4656,1093],{"class":311},[277,4658,343],{"class":283},[277,4660,4661,4664,4666],{"class":279,"line":891},[277,4662,4663],{"class":283},"      hasError: ",[277,4665,2123],{"class":356},[277,4667,1077],{"class":283},[277,4669,4670,4672,4674],{"class":279,"line":905},[277,4671,1118],{"class":283},[277,4673,451],{"class":301},[277,4675,1077],{"class":283},[277,4677,4678,4681,4683],{"class":279,"line":919},[277,4679,4680],{"class":283},"      errorSource: ",[277,4682,451],{"class":301},[277,4684,1077],{"class":283},[277,4686,4687,4690],{"class":279,"line":929},[277,4688,4689],{"class":283},"      retryKey: ",[277,4691,4692],{"class":356},"0\n",[277,4694,4695],{"class":279,"line":934},[277,4696,1126],{"class":283},[277,4698,4699],{"class":279,"line":951},[277,4700,1131],{"class":283},[277,4702,4703,4706,4708,4710,4712,4714,4716,4718],{"class":279,"line":961},[277,4704,4705],{"class":291},"  errorCaptured",[277,4707,448],{"class":283},[277,4709,3349],{"class":349},[277,4711,225],{"class":283},[277,4713,3260],{"class":349},[277,4715,225],{"class":283},[277,4717,3266],{"class":349},[277,4719,2476],{"class":283},[277,4721,4722,4725,4728,4730],{"class":279,"line":1473},[277,4723,4724],{"class":356},"    this",[277,4726,4727],{"class":283},".hasError ",[277,4729,298],{"class":311},[277,4731,2296],{"class":356},[277,4733,4734,4736,4738],{"class":279,"line":1478},[277,4735,4724],{"class":356},[277,4737,1291],{"class":283},[277,4739,643],{"class":311},[277,4741,4742,4744,4746,4748,4750,4752,4754],{"class":279,"line":1497},[277,4743,649],{"class":283},[277,4745,652],{"class":311},[277,4747,529],{"class":291},[277,4749,657],{"class":311},[277,4751,660],{"class":283},[277,4753,353],{"class":311},[277,4755,3974],{"class":301},[277,4757,4758,4760,4763,4765],{"class":279,"line":1510},[277,4759,4724],{"class":356},[277,4761,4762],{"class":283},".errorSource ",[277,4764,298],{"class":311},[277,4766,3984],{"class":283},[277,4768,4769],{"class":279,"line":1523},[277,4770,328],{"emptyLinePlaceholder":327},[277,4772,4773,4775,4777,4779,4781],{"class":279,"line":1536},[277,4774,2881],{"class":283},[277,4776,3349],{"class":291},[277,4778,448],{"class":283},[277,4780,3999],{"class":301},[277,4782,2360],{"class":283},[277,4784,4785],{"class":279,"line":1545},[277,4786,4787],{"class":283},"      error,\n",[277,4789,4790],{"class":279,"line":1550},[277,4791,4792],{"class":283},"      component: instance?.type,\n",[277,4794,4795],{"class":279,"line":1565},[277,4796,4797],{"class":283},"      info\n",[277,4799,4800],{"class":279,"line":1574},[277,4801,2913],{"class":283},[277,4803,4804],{"class":279,"line":4076},[277,4805,328],{"emptyLinePlaceholder":327},[277,4807,4808,4810],{"class":279,"line":4088},[277,4809,1093],{"class":311},[277,4811,4031],{"class":356},[277,4813,4814],{"class":279,"line":4093},[277,4815,1131],{"class":283},[277,4817,4818],{"class":279,"line":4102},[277,4819,1140],{"class":283},[277,4821,4822,4825],{"class":279,"line":4107},[277,4823,4824],{"class":291},"    retry",[277,4826,473],{"class":283},[277,4828,4829,4831,4833,4835],{"class":279,"line":4116},[277,4830,1212],{"class":356},[277,4832,4727],{"class":283},[277,4834,298],{"class":311},[277,4836,4031],{"class":356},[277,4838,4839,4841,4843,4845],{"class":279,"line":4133},[277,4840,1212],{"class":356},[277,4842,1291],{"class":283},[277,4844,298],{"class":311},[277,4846,4065],{"class":301},[277,4848,4849,4851,4853,4855],{"class":279,"line":4143},[277,4850,1212],{"class":356},[277,4852,4762],{"class":283},[277,4854,298],{"class":311},[277,4856,4065],{"class":301},[277,4858,4859,4861,4864,4866],{"class":279,"line":4157},[277,4860,1212],{"class":356},[277,4862,4863],{"class":283},".retryKey ",[277,4865,4082],{"class":311},[277,4867,4085],{"class":356},[277,4869,4870],{"class":279,"line":4166},[277,4871,1126],{"class":283},[277,4873,4874],{"class":279,"line":4172},[277,4875,542],{"class":283},[277,4877,4878],{"class":279,"line":4182},[277,4879,394],{"class":283},[277,4881,4882,4884,4886],{"class":279,"line":4191},[277,4883,785],{"class":283},[277,4885,288],{"class":287},[277,4887,305],{"class":283},[277,4889,4890],{"class":279,"line":4196},[277,4891,328],{"emptyLinePlaceholder":327},[277,4893,4894,4896,4898],{"class":279,"line":4220},[277,4895,284],{"class":283},[277,4897,802],{"class":287},[277,4899,305],{"class":283},[277,4901,4902,4904,4906,4908,4910,4912],{"class":279,"line":4234},[277,4903,810],{"class":283},[277,4905,4121],{"class":287},[277,4907,816],{"class":291},[277,4909,298],{"class":283},[277,4911,4128],{"class":301},[277,4913,305],{"class":283},[277,4915,4916,4918,4920],{"class":279,"line":4247},[277,4917,829],{"class":283},[277,4919,4138],{"class":287},[277,4921,305],{"class":283},[277,4923,4924,4926,4928,4930,4932],{"class":279,"line":4262},[277,4925,879],{"class":283},[277,4927,30],{"class":287},[277,4929,4150],{"class":283},[277,4931,30],{"class":287},[277,4933,305],{"class":283},[277,4935,4936,4938,4940,4943,4945],{"class":279,"line":4293},[277,4937,879],{"class":283},[277,4939,21],{"class":287},[277,4941,4942],{"class":283},">Si un widget falla, el resto de la pantalla puede seguir funcionando.\u003C/",[277,4944,21],{"class":287},[277,4946,305],{"class":283},[277,4948,4949,4951,4953],{"class":279,"line":4302},[277,4950,922],{"class":283},[277,4952,4138],{"class":287},[277,4954,305],{"class":283},[277,4956,4957],{"class":279,"line":4307},[277,4958,328],{"emptyLinePlaceholder":327},[277,4960,4961,4963,4965,4967,4969,4971,4973,4975,4977],{"class":279,"line":4328},[277,4962,829],{"class":283},[277,4964,4201],{"class":287},[277,4966,834],{"class":291},[277,4968,298],{"class":283},[277,4970,4208],{"class":301},[277,4972,816],{"class":291},[277,4974,298],{"class":283},[277,4976,4215],{"class":301},[277,4978,305],{"class":283},[277,4980,4981,4983,4985,4987,4989],{"class":279,"line":4337},[277,4982,879],{"class":283},[277,4984,72],{"class":287},[277,4986,4227],{"class":283},[277,4988,72],{"class":287},[277,4990,305],{"class":283},[277,4992,4994,4996,4998,5000,5002],{"class":279,"line":4993},91,[277,4995,879],{"class":283},[277,4997,21],{"class":287},[277,4999,842],{"class":283},[277,5001,21],{"class":287},[277,5003,305],{"class":283},[277,5005,5007,5009,5011,5013,5015],{"class":279,"line":5006},92,[277,5008,879],{"class":283},[277,5010,4252],{"class":287},[277,5012,4255],{"class":283},[277,5014,4252],{"class":287},[277,5016,305],{"class":283},[277,5018,5020,5022,5024,5026,5028,5030,5032,5034,5036,5038,5040],{"class":279,"line":5019},93,[277,5021,879],{"class":283},[277,5023,4267],{"class":287},[277,5025,4270],{"class":291},[277,5027,298],{"class":283},[277,5029,4275],{"class":301},[277,5031,4278],{"class":291},[277,5033,298],{"class":283},[277,5035,4283],{"class":301},[277,5037,4286],{"class":283},[277,5039,4267],{"class":287},[277,5041,305],{"class":283},[277,5043,5045,5047,5049],{"class":279,"line":5044},94,[277,5046,922],{"class":283},[277,5048,4201],{"class":287},[277,5050,305],{"class":283},[277,5052,5054],{"class":279,"line":5053},95,[277,5055,328],{"emptyLinePlaceholder":327},[277,5057,5059,5061,5063,5065,5067,5069,5071],{"class":279,"line":5058},96,[277,5060,829],{"class":283},[277,5062,4312],{"class":287},[277,5064,941],{"class":291},[277,5066,4317],{"class":291},[277,5068,298],{"class":283},[277,5070,4322],{"class":301},[277,5072,4325],{"class":283},[277,5074,5076,5078,5080],{"class":279,"line":5075},97,[277,5077,954],{"class":283},[277,5079,4121],{"class":287},[277,5081,305],{"class":283},[277,5083,5085,5087,5089],{"class":279,"line":5084},98,[277,5086,785],{"class":283},[277,5088,802],{"class":287},[277,5090,305],{"class":283},[21,5092,5093],{},"El patrón clave es claro: el error ocurre en el hijo, el padre lo captura, registra contexto y cambia a un estado de respaldo sin afectar el resto del árbol.",[3111,5095,5096],{},[21,5097,5098],{},"En ambos enfoques, la responsabilidad es la misma: el componente padre delimita la zona de riesgo y decide cómo degradar la experiencia si algo falla en su árbol descendiente.",[30,5100,1596],{"id":1595},[21,5102,5103,5105],{},[16,5104,3182],{}," no existe para ocultar excepciones, sino para gestionar mejor su impacto. Bien utilizado, permite construir interfaces más resilientes: una parte puede fallar sin comprometer todo el flujo.",[21,5107,5108],{},"La idea clave: captura localmente, registra con contexto y ofrece una salida clara al usuario.",[1606,5110,3118],{},{"title":273,"searchDepth":308,"depth":308,"links":5112},[5113,5114,5115,5116,5117,5124,5129,5130],{"id":32,"depth":308,"text":33},{"id":60,"depth":308,"text":61},{"id":128,"depth":308,"text":129},{"id":155,"depth":308,"text":156},{"id":189,"depth":308,"text":190,"children":5118},[5119,5120,5122,5123],{"id":3372,"depth":324,"text":3373},{"id":3382,"depth":324,"text":5121},"2. Devolver false siempre",{"id":3398,"depth":324,"text":3399},{"id":3408,"depth":324,"text":3409},{"id":1945,"depth":308,"text":1946,"children":5125},[5126,5127,5128],{"id":3420,"depth":324,"text":3421},{"id":3427,"depth":324,"text":3428},{"id":3434,"depth":324,"text":3435},{"id":1975,"depth":308,"text":1976},{"id":1595,"depth":308,"text":1596},"https://res.cloudinary.com/denj4fg7f/image/upload/v1773714502/vue-lifecycle-error-handling-errorcaptured_mn62y7.png","Ilustración de un componente de Vue con un escudo de protección, simbolizando el manejo de errores con errorCaptured.","2026-03-17","Cómo usar errorCaptured y onErrorCaptured para aislar fallos en componentes hijos, mostrar estados de respaldo y registrar errores sin romper toda la interfaz.",{"script":5136},[5137],{"type":1632,"key":1633,"data-nuxt-schema-org":327,"nodes":5138},[5139],{"headline":3173,"author":5140,"datePublished":5141,"@type":1640},{"name":1637,"@type":1638},"2026-03-16T22:00:00-05:00",{"updatedAt":5141,"coverCaption":5143,"author":1637,"keywords":5144},"Con errorCaptured, puedes proteger partes específicas de tu UI sin comprometer toda la experiencia.",[1645,3182,3922,5145,5146],"manejo de errores","error boundaries","/blog/vue-lifecycle-error-handling-errorcaptured.es",[5149],{"headline":3173,"author":5150,"datePublished":5141,"@type":1640},{"name":1637,"@type":1638},{"title":3173,"description":5134},"blog/vue-lifecycle-error-handling-errorcaptured.es",[5154,5155,5158,5159],{"tag":1660,"color":1661},{"tag":5156,"color":5157},"Manejo de Errores","#E55039",{"tag":1668,"color":1669},{"tag":1671,"color":1672},"BCWq1lHHFKBU99kU2vFPdOHI4b6qargKJRuj-Ntfuw4",{"id":5162,"title":5163,"body":5164,"cover":7474,"coverAlt":7475,"date":7476,"description":7477,"draft":1627,"extension":1628,"head":7478,"locale":1641,"meta":7485,"navigation":327,"path":7490,"schemaOrg":7491,"seo":7494,"series":1653,"seriesDescription":1654,"seriesOrder":360,"seriesTitle":1655,"slug":1656,"stem":7495,"tags":7496,"__hash__":7502},"blog/blog/vue-lifecycle-keepalive-activated-deactivated.es.md","Ciclos de vida en Vue: componentes cacheados con \u003CKeepAlive> (activated, deactivated)",{"type":8,"value":5165,"toc":7453},[5166,5170,5183,5189,5192,5200,5202,5207,5210,5221,5224,5235,5238,5255,5258,5270,5273,5296,5298,5305,5307,5321,5324,5336,5338,5344,5347,5361,5364,5387,5391,5477,5480,5482,5488,5494,5499,5503,5510,5519,5526,5532,5538,5542,5547,5550,5552,5556,5565,5569,5575,5579,5588,6568,7406,7426,7428,7451],[30,5167,5169],{"id":5168},"texto-refinado-completo","Texto refinado completo",[11,5171,5173,5174,511,5177,225,5180,19],{"id":5172},"ciclos-de-vida-en-vue-componentes-cacheados-con-keepalive-activated-deactivated","Ciclos de vida en Vue: componentes cacheados con ",[16,5175,5176],{},"\u003CKeepAlive>",[16,5178,5179],{},"activated",[16,5181,5182],{},"deactivated",[21,5184,5185,5186,5188],{},"No todos los componentes desaparecen realmente cuando dejan de verse. En Vue, un componente envuelto en ",[16,5187,5176],{}," puede salir del DOM activo y, aun así, seguir vivo en memoria. Ese detalle cambia por completo la forma de entender su ciclo de vida.",[21,5190,5191],{},"Si tratas un componente cacheado como si siempre se montara desde cero, es fácil terminar recargando datos sin necesidad, dejando timers o polling corriendo cuando la vista ya no está visible, o mostrando información obsoleta al volver a una pestaña.",[21,5193,5194,5195,1697,5197,5199],{},"Los hooks ",[16,5196,5179],{},[16,5198,5182],{}," existen precisamente para ese escenario: componentes que entran y salen de pantalla sin destruirse en cada cambio.",[30,5201,61],{"id":60},[21,5203,5204,5206],{},[16,5205,5176],{}," cachea instancias de componentes dinámicos para preservar su estado entre cambios. En lugar de desmontar el componente cuando deja de mostrarse, Vue lo mueve a un estado desactivado.",[21,5208,5209],{},"Eso significa que el flujo ya no es solo:",[38,5211,5212,5215,5218],{},[41,5213,5214],{},"Montar",[41,5216,5217],{},"Actualizar",[41,5219,5220],{},"Desmontar",[21,5222,5223],{},"Ahora también aparece un estado intermedio muy importante:",[38,5225,5226,5229,5232],{},[41,5227,5228],{},"Activar",[41,5230,5231],{},"Desactivar",[41,5233,5234],{},"Volver a activar",[21,5236,5237],{},"Los hooks implicados son:",[38,5239,5240,5248],{},[41,5241,5242,5245,5246],{},[16,5243,5244],{},"onActivated()"," / ",[16,5247,5179],{},[41,5249,5250,5245,5253],{},[16,5251,5252],{},"onDeactivated()",[16,5254,5182],{},[21,5256,5257],{},"Hay dos matices clave que conviene tener claros:",[38,5259,5260,5265],{},[41,5261,5262,5264],{},[16,5263,5179],{}," también se ejecuta en el montaje inicial del componente cacheado.",[41,5266,5267,5269],{},[16,5268,5182],{}," se ejecuta cuando el componente sale del DOM activo hacia la caché y también cuando finalmente se desmonta.",[21,5271,5272],{},"En términos prácticos:",[38,5274,5275,5280,5285,5290],{},[41,5276,5277,5279],{},[16,5278,203],{}," sirve para inicialización única.",[41,5281,5282,5284],{},[16,5283,5179],{}," sirve para cada momento en que la vista vuelve a estar activa.",[41,5286,5287,5289],{},[16,5288,5182],{}," sirve para pausar, guardar o limpiar trabajo mientras la instancia queda en segundo plano.",[41,5291,5292,5295],{},[16,5293,5294],{},"unmounted"," solo entra en juego cuando la instancia realmente deja de existir.",[30,5297,129],{"id":128},[21,5299,5300,1697,5302,5304],{},[16,5301,5179],{},[16,5303,5182],{}," encajan bien cuando el componente debe comportarse de forma distinta según esté visible o solo cacheado.",[21,5306,3305],{},[38,5308,5309,5312,5315,5318],{},[41,5310,5311],{},"Revalidar datos al volver a una pestaña sin perder el estado local de formularios o filtros.",[41,5313,5314],{},"Pausar polling, listeners u observadores cuando la vista deja de estar activa.",[41,5316,5317],{},"Retomar scroll, foco o sincronización con librerías externas cuando el componente reaparece.",[41,5319,5320],{},"Mantener una navegación fluida entre tabs, dashboards o vistas dinámicas sin reinstanciar todo desde cero.",[21,5322,5323],{},"La regla práctica es simple:",[38,5325,5326,5331],{},[41,5327,5328,5329,104],{},"Si necesitas reaccionar al regreso del componente, piensa en ",[16,5330,5179],{},[41,5332,5333,5334,104],{},"Si necesitas detener trabajo mientras la instancia queda cacheada, piensa en ",[16,5335,5182],{},[30,5337,156],{"id":155},[21,5339,5340,5341,5343],{},"No todo componente necesita ",[16,5342,5176],{}," ni estos hooks.",[21,5345,5346],{},"Conviene evitarlos cuando:",[38,5348,5349,5352,5355,5358],{},[41,5350,5351],{},"El componente debería reiniciarse limpio en cada visita y no conservar estado.",[41,5353,5354],{},"La lógica encaja mejor en estado global o en datos derivados, sin cachear la vista completa.",[41,5356,5357],{},"El problema real es un flujo de navegación confuso, no la pérdida de estado.",[41,5359,5360],{},"Quieres forzar un refresco completo en cada visita; en ese caso, la caché puede jugar en contra.",[21,5362,5363],{},"También conviene no meter aquí lógica que pertenece a otro sitio:",[38,5365,5366,5373,5381],{},[41,5367,5368,5369,5372],{},"Si dependes de un dato concreto, un ",[16,5370,5371],{},"watch()"," suele expresar mejor la intención.",[41,5374,5375,5376,118,5378,5380],{},"Si solo necesitas inicializar una vez, ",[16,5377,203],{},[16,5379,3235],{}," suelen ser suficientes.",[41,5382,5383,5384,5386],{},"Si el componente no está dentro de ",[16,5385,5176],{},", estos hooks no se dispararán.",[30,5388,5390],{"id":5389},"comparación-rápida","Comparación rápida",[5392,5393,5394,5413],"table",{},[5395,5396,5397],"thead",{},[5398,5399,5400,5404,5407,5410],"tr",{},[5401,5402,5403],"th",{},"Hook",[5401,5405,5406],{},"Cuándo se dispara",[5401,5408,5409],{},"Para qué encaja mejor",[5401,5411,5412],{},"Error habitual",[5414,5415,5416,5432,5447,5462],"tbody",{},[5398,5417,5418,5423,5426,5429],{},[5419,5420,5421],"td",{},[16,5422,203],{},[5419,5424,5425],{},"Cuando la instancia se monta por primera vez",[5419,5427,5428],{},"Inicialización única",[5419,5430,5431],{},"Poner aquí lógica que debería ejecutarse cada vez que la vista regresa",[5398,5433,5434,5438,5441,5444],{},[5419,5435,5436],{},[16,5437,5179],{},[5419,5439,5440],{},"En el montaje inicial y en cada reactivación desde caché",[5419,5442,5443],{},"Refrescar, resincronizar o retomar trabajo visible",[5419,5445,5446],{},"Asumir que el componente vuelve desde estado limpio",[5398,5448,5449,5453,5456,5459],{},[5419,5450,5451],{},[16,5452,5182],{},[5419,5454,5455],{},"Cuando sale del DOM activo hacia caché y también al desmontarse",[5419,5457,5458],{},"Pausar polling, timers, observers o persistir estado temporal",[5419,5460,5461],{},"Tratarlo como si equivaliera a destrucción completa",[5398,5463,5464,5468,5471,5474],{},[5419,5465,5466],{},[16,5467,5294],{},[5419,5469,5470],{},"Cuando la instancia realmente se destruye",[5419,5472,5473],{},"Limpieza final",[5419,5475,5476],{},"Esperar que ocurra en cada cambio entre vistas cacheadas",[21,5478,5479],{},"La diferencia decisiva es esta: un componente cacheado no muere cuando deja de verse. Simplemente queda en pausa.",[30,5481,190],{"id":189},[192,5483,5485,5486],{"id":5484},"_1-cargar-datos-solo-en-mounted","1. Cargar datos solo en ",[16,5487,203],{},[21,5489,5490,5491,5493],{},"Funciona la primera vez, pero suele fallar cuando el usuario sale y vuelve a la vista. Como el componente sigue cacheado, ",[16,5492,203],{}," no vuelve a ejecutarse y puedes terminar mostrando datos obsoletos.",[21,5495,5496,5497,104],{},"La corrección habitual es mover la revalidación ligera a ",[16,5498,5179],{},[192,5500,5502],{"id":5501},"_2-dejar-polling-o-timers-activos-mientras-la-vista-está-oculta","2. Dejar polling o timers activos mientras la vista está oculta",[21,5504,5505,5506,5509],{},"Un componente desactivado sigue existiendo en memoria. Si no detienes ",[16,5507,5508],{},"setInterval",", sockets o listeners, el trabajo continúa aunque la pantalla ya no esté visible.",[21,5511,5512,5513,5515,5516,5518],{},"La solución es pausar en ",[16,5514,5182],{}," y reanudar en ",[16,5517,5179],{}," cuando corresponda.",[192,5520,5522,5523,5525],{"id":5521},"_3-esperar-unmounted-al-cambiar-entre-tabs-cacheadas","3. Esperar ",[16,5524,5294],{}," al cambiar entre tabs cacheadas",[21,5527,5528,5529,5531],{},"Cuando cambias entre componentes dentro de ",[16,5530,5176],{},", muchas veces no hay desmontaje inmediato. Lo que ocurre es una desactivación.",[21,5533,5534,5535,5537],{},"Si toda tu limpieza depende de ",[16,5536,5294],{},", llegará tarde o no ocurrirá cuando esperabas.",[192,5539,5541],{"id":5540},"_4-confundir-conservar-estado-con-conservar-frescura","4. Confundir conservar estado con conservar frescura",[21,5543,5544,5546],{},[16,5545,5176],{}," conserva estado local, pero no garantiza que los datos sigan actualizados. Puedes volver a un formulario con sus valores intactos y, al mismo tiempo, a una lista basada en datos viejos.",[21,5548,5549],{},"Cachear la instancia no reemplaza una estrategia de refresco.",[30,5551,1946],{"id":1945},[192,5553,5555],{"id":5554},"volver-a-una-pestaña-sin-perder-filtros","Volver a una pestaña sin perder filtros",[21,5557,5558,5559,5561,5562,5564],{},"Imagina una vista de reportes con filtros, orden y scroll interno. Sin ",[16,5560,5176],{},", cada cambio de tab puede destruir la instancia y obligar al usuario a empezar otra vez. Con caché, mantienes la experiencia. Con ",[16,5563,5179],{},", además, puedes refrescar solo el resumen o la fecha de última sincronización.",[192,5566,5568],{"id":5567},"pausar-trabajo-en-segundo-plano","Pausar trabajo en segundo plano",[21,5570,5571,5572,5574],{},"Si una vista consulta métrica cada 30 segundos, no conviene que siga haciéndolo cuando el usuario ya se movió a otra sección, pero la instancia quedó cacheada. ",[16,5573,5182],{}," es el lugar natural para detener ese trabajo.",[192,5576,5578],{"id":5577},"retomar-sincronización-visual","Retomar sincronización visual",[21,5580,5581,5582,5584,5585,5587],{},"Algunas vistas necesitan recalcular tamaños, gráficos o paneles cuando reaparecen. Como el componente no se recrea, ",[16,5583,203],{}," ya quedó atrás. Ahí ",[16,5586,5179],{}," es el punto correcto para resincronizar la UI.",[267,5589,5591],{"className":269,"code":5590,"filename":271,"language":272,"meta":273,"style":273},"\u003Cscript setup lang=\"ts\">\nimport { computed, onActivated, onDeactivated, onMounted, ref } from 'vue'\n\ntype Task = {\n  id: number\n  title: string\n  done: boolean\n}\n\nconst tasks = ref\u003CTask[]>([])\nconst filter = ref\u003C'all' | 'pending' | 'done'>('all')\nconst status = ref('Esperando carga...')\nconst lastSync = ref\u003Cstring | null>(null)\nconst poller = ref\u003CReturnType\u003Ctypeof setInterval> | null>(null)\nconst initialized = ref(false)\n\nconst visibleTasks = computed(() => {\n  if (filter.value === 'pending') {\n    return tasks.value.filter(task => !task.done)\n  }\n\n  if (filter.value === 'done') {\n    return tasks.value.filter(task => task.done)\n  }\n\n  return tasks.value\n})\n\nasync function fetchTasks() {\n  status.value = 'Sincronizando...'\n\n  const response = await fetch('/api/tasks')\n  const data = (await response.json()) as { tasks: Task[] }\n\n  tasks.value = data.tasks\n  lastSync.value = new Date().toLocaleTimeString('es-CO')\n  status.value = 'Datos actualizados'\n}\n\nfunction startPolling() {\n  if (poller.value !== null) return\n\n  poller.value = setInterval(() => {\n    void fetchTasks()\n  }, 30000)\n}\n\nfunction stopPolling() {\n  if (poller.value === null) return\n\n  clearInterval(poller.value)\n  poller.value = null\n}\n\nonMounted(() => {\n  initialized.value = true\n})\n\nonActivated(async () => {\n  status.value = initialized.value ? 'Vista reactivada' : 'Cargando vista...'\n  await fetchTasks()\n  startPolling()\n})\n\nonDeactivated(() => {\n  status.value = 'Vista en pausa'\n  stopPolling()\n})\n\u003C/script>\n\n\u003Ctemplate>\n  \u003Csection class=\"task-report\">\n    \u003Cheader>\n      \u003Ch2>Reporte de tareas\u003C/h2>\n      \u003Cp>{{ status }}\u003C/p>\n      \u003Cp v-if=\"lastSync\">Última sincronización: {{ lastSync }}\u003C/p>\n    \u003C/header>\n\n    \u003Cnav class=\"filters\">\n      \u003Cbutton @click=\"filter = 'all'\">Todas\u003C/button>\n      \u003Cbutton @click=\"filter = 'pending'\">Pendientes\u003C/button>\n      \u003Cbutton @click=\"filter = 'done'\">Completadas\u003C/button>\n    \u003C/nav>\n\n    \u003Cul>\n      \u003Cli\n        v-for=\"task in visibleTasks\"\n        :key=\"task.id\"\n      >\n        {{ task.title }}\n      \u003C/li>\n    \u003C/ul>\n  \u003C/section>\n\u003C/template>\n",[16,5592,5593,5609,5620,5624,5635,5643,5652,5662,5666,5670,5688,5720,5738,5764,5799,5816,5820,5836,5849,5868,5872,5876,5888,5905,5909,5913,5920,5924,5928,5939,5949,5953,5972,6006,6010,6020,6045,6054,6058,6062,6071,6087,6091,6107,6116,6126,6130,6134,6143,6157,6161,6169,6178,6182,6186,6196,6205,6209,6213,6228,6248,6257,6264,6268,6272,6283,6292,6299,6303,6311,6315,6323,6338,6346,6359,6372,6392,6400,6404,6420,6440,6460,6480,6488,6492,6500,6507,6517,6527,6531,6536,6544,6552,6560],{"__ignoreMap":273},[277,5594,5595,5597,5599,5601,5603,5605,5607],{"class":279,"line":280},[277,5596,284],{"class":283},[277,5598,288],{"class":287},[277,5600,292],{"class":291},[277,5602,295],{"class":291},[277,5604,298],{"class":283},[277,5606,302],{"class":301},[277,5608,305],{"class":283},[277,5610,5611,5613,5616,5618],{"class":279,"line":308},[277,5612,312],{"class":311},[277,5614,5615],{"class":283}," { computed, onActivated, onDeactivated, onMounted, ref } ",[277,5617,318],{"class":311},[277,5619,321],{"class":301},[277,5621,5622],{"class":279,"line":324},[277,5623,328],{"emptyLinePlaceholder":327},[277,5625,5626,5628,5631,5633],{"class":279,"line":331},[277,5627,334],{"class":311},[277,5629,5630],{"class":291}," Task",[277,5632,340],{"class":311},[277,5634,343],{"class":283},[277,5636,5637,5639,5641],{"class":279,"line":346},[277,5638,350],{"class":349},[277,5640,353],{"class":311},[277,5642,357],{"class":356},[277,5644,5645,5648,5650],{"class":279,"line":360},[277,5646,5647],{"class":349},"  title",[277,5649,353],{"class":311},[277,5651,368],{"class":356},[277,5653,5654,5657,5659],{"class":279,"line":371},[277,5655,5656],{"class":349},"  done",[277,5658,353],{"class":311},[277,5660,5661],{"class":356}," boolean\n",[277,5663,5664],{"class":279,"line":381},[277,5665,394],{"class":283},[277,5667,5668],{"class":279,"line":391},[277,5669,328],{"emptyLinePlaceholder":327},[277,5671,5672,5674,5676,5678,5680,5682,5685],{"class":279,"line":397},[277,5673,405],{"class":311},[277,5675,2097],{"class":356},[277,5677,340],{"class":311},[277,5679,413],{"class":291},[277,5681,284],{"class":283},[277,5683,5684],{"class":291},"Task",[277,5686,5687],{"class":283},"[]>([])\n",[277,5689,5690,5692,5695,5697,5699,5701,5704,5706,5709,5711,5714,5716,5718],{"class":279,"line":402},[277,5691,405],{"class":311},[277,5693,5694],{"class":356}," filter",[277,5696,340],{"class":311},[277,5698,413],{"class":291},[277,5700,284],{"class":283},[277,5702,5703],{"class":301},"'all'",[277,5705,421],{"class":311},[277,5707,5708],{"class":301}," 'pending'",[277,5710,421],{"class":311},[277,5712,5713],{"class":301}," 'done'",[277,5715,427],{"class":283},[277,5717,5703],{"class":301},[277,5719,433],{"class":283},[277,5721,5722,5724,5727,5729,5731,5733,5736],{"class":279,"line":436},[277,5723,405],{"class":311},[277,5725,5726],{"class":356}," status",[277,5728,340],{"class":311},[277,5730,413],{"class":291},[277,5732,448],{"class":283},[277,5734,5735],{"class":301},"'Esperando carga...'",[277,5737,433],{"class":283},[277,5739,5740,5742,5745,5747,5749,5751,5754,5756,5758,5760,5762],{"class":279,"line":456},[277,5741,405],{"class":311},[277,5743,5744],{"class":356}," lastSync",[277,5746,340],{"class":311},[277,5748,413],{"class":291},[277,5750,284],{"class":283},[277,5752,5753],{"class":356},"string",[277,5755,421],{"class":311},[277,5757,424],{"class":356},[277,5759,427],{"class":283},[277,5761,430],{"class":356},[277,5763,433],{"class":283},[277,5765,5766,5768,5771,5773,5775,5777,5780,5782,5785,5788,5791,5793,5795,5797],{"class":279,"line":461},[277,5767,405],{"class":311},[277,5769,5770],{"class":356}," poller",[277,5772,340],{"class":311},[277,5774,413],{"class":291},[277,5776,284],{"class":283},[277,5778,5779],{"class":291},"ReturnType",[277,5781,284],{"class":283},[277,5783,5784],{"class":311},"typeof",[277,5786,5787],{"class":283}," setInterval> ",[277,5789,5790],{"class":311},"|",[277,5792,424],{"class":356},[277,5794,427],{"class":283},[277,5796,430],{"class":356},[277,5798,433],{"class":283},[277,5800,5801,5803,5806,5808,5810,5812,5814],{"class":279,"line":476},[277,5802,405],{"class":311},[277,5804,5805],{"class":356}," initialized",[277,5807,340],{"class":311},[277,5809,413],{"class":291},[277,5811,448],{"class":283},[277,5813,2123],{"class":356},[277,5815,433],{"class":283},[277,5817,5818],{"class":279,"line":500},[277,5819,328],{"emptyLinePlaceholder":327},[277,5821,5822,5824,5826,5828,5830,5832,5834],{"class":279,"line":505},[277,5823,405],{"class":311},[277,5825,2195],{"class":356},[277,5827,340],{"class":311},[277,5829,2200],{"class":291},[277,5831,2203],{"class":283},[277,5833,601],{"class":311},[277,5835,343],{"class":283},[277,5837,5838,5840,5843,5845,5847],{"class":279,"line":520},[277,5839,508],{"class":311},[277,5841,5842],{"class":283}," (filter.value ",[277,5844,2503],{"class":311},[277,5846,5708],{"class":301},[277,5848,2476],{"class":283},[277,5850,5851,5853,5855,5857,5859,5861,5863,5865],{"class":279,"line":539},[277,5852,1093],{"class":311},[277,5854,2215],{"class":283},[277,5856,2218],{"class":291},[277,5858,448],{"class":283},[277,5860,2223],{"class":349},[277,5862,2226],{"class":311},[277,5864,2288],{"class":311},[277,5866,5867],{"class":283},"task.done)\n",[277,5869,5870],{"class":279,"line":545},[277,5871,542],{"class":283},[277,5873,5874],{"class":279,"line":550},[277,5875,328],{"emptyLinePlaceholder":327},[277,5877,5878,5880,5882,5884,5886],{"class":279,"line":578},[277,5879,508],{"class":311},[277,5881,5842],{"class":283},[277,5883,2503],{"class":311},[277,5885,5713],{"class":301},[277,5887,2476],{"class":283},[277,5889,5890,5892,5894,5896,5898,5900,5902],{"class":279,"line":583},[277,5891,1093],{"class":311},[277,5893,2215],{"class":283},[277,5895,2218],{"class":291},[277,5897,448],{"class":283},[277,5899,2223],{"class":349},[277,5901,2226],{"class":311},[277,5903,5904],{"class":283}," task.done)\n",[277,5906,5907],{"class":279,"line":588},[277,5908,542],{"class":283},[277,5910,5911],{"class":279,"line":606},[277,5912,328],{"emptyLinePlaceholder":327},[277,5914,5915,5917],{"class":279,"line":614},[277,5916,2212],{"class":311},[277,5918,5919],{"class":283}," tasks.value\n",[277,5921,5922],{"class":279,"line":625},[277,5923,676],{"class":283},[277,5925,5926],{"class":279,"line":637},[277,5927,328],{"emptyLinePlaceholder":327},[277,5929,5930,5932,5934,5937],{"class":279,"line":646},[277,5931,464],{"class":311},[277,5933,467],{"class":311},[277,5935,5936],{"class":291}," fetchTasks",[277,5938,473],{"class":283},[277,5940,5941,5944,5946],{"class":279,"line":668},[277,5942,5943],{"class":283},"  status.value ",[277,5945,298],{"class":311},[277,5947,5948],{"class":301}," 'Sincronizando...'\n",[277,5950,5951],{"class":279,"line":673},[277,5952,328],{"emptyLinePlaceholder":327},[277,5954,5955,5957,5959,5961,5963,5965,5967,5970],{"class":279,"line":679},[277,5956,479],{"class":311},[277,5958,482],{"class":356},[277,5960,340],{"class":311},[277,5962,487],{"class":311},[277,5964,490],{"class":291},[277,5966,448],{"class":283},[277,5968,5969],{"class":301},"'/api/tasks'",[277,5971,433],{"class":283},[277,5973,5974,5976,5979,5981,5983,5985,5987,5989,5991,5993,5996,5999,6001,6003],{"class":279,"line":684},[277,5975,479],{"class":311},[277,5977,5978],{"class":356}," data",[277,5980,340],{"class":311},[277,5982,511],{"class":283},[277,5984,560],{"class":311},[277,5986,563],{"class":283},[277,5988,566],{"class":291},[277,5990,569],{"class":283},[277,5992,572],{"class":311},[277,5994,5995],{"class":283}," { ",[277,5997,5998],{"class":349},"tasks",[277,6000,353],{"class":311},[277,6002,5630],{"class":291},[277,6004,6005],{"class":283},"[] }\n",[277,6007,6008],{"class":279,"line":700},[277,6009,328],{"emptyLinePlaceholder":327},[277,6011,6012,6015,6017],{"class":279,"line":717},[277,6013,6014],{"class":283},"  tasks.value ",[277,6016,298],{"class":311},[277,6018,6019],{"class":283}," data.tasks\n",[277,6021,6022,6025,6027,6029,6032,6035,6038,6040,6043],{"class":279,"line":722},[277,6023,6024],{"class":283},"  lastSync.value ",[277,6026,298],{"class":311},[277,6028,526],{"class":311},[277,6030,6031],{"class":291}," Date",[277,6033,6034],{"class":283},"().",[277,6036,6037],{"class":291},"toLocaleTimeString",[277,6039,448],{"class":283},[277,6041,6042],{"class":301},"'es-CO'",[277,6044,433],{"class":283},[277,6046,6047,6049,6051],{"class":279,"line":729},[277,6048,5943],{"class":283},[277,6050,298],{"class":311},[277,6052,6053],{"class":301}," 'Datos actualizados'\n",[277,6055,6056],{"class":279,"line":738},[277,6057,394],{"class":283},[277,6059,6060],{"class":279,"line":747},[277,6061,328],{"emptyLinePlaceholder":327},[277,6063,6064,6066,6069],{"class":279,"line":754},[277,6065,2460],{"class":311},[277,6067,6068],{"class":291}," startPolling",[277,6070,473],{"class":283},[277,6072,6073,6075,6078,6081,6083,6085],{"class":279,"line":772},[277,6074,508],{"class":311},[277,6076,6077],{"class":283}," (poller.value ",[277,6079,6080],{"class":311},"!==",[277,6082,424],{"class":356},[277,6084,2340],{"class":283},[277,6086,714],{"class":311},[277,6088,6089],{"class":279,"line":777},[277,6090,328],{"emptyLinePlaceholder":327},[277,6092,6093,6096,6098,6101,6103,6105],{"class":279,"line":782},[277,6094,6095],{"class":283},"  poller.value ",[277,6097,298],{"class":311},[277,6099,6100],{"class":291}," setInterval",[277,6102,2203],{"class":283},[277,6104,601],{"class":311},[277,6106,343],{"class":283},[277,6108,6109,6112,6114],{"class":279,"line":792},[277,6110,6111],{"class":311},"    void",[277,6113,5936],{"class":291},[277,6115,622],{"class":283},[277,6117,6118,6121,6124],{"class":279,"line":797},[277,6119,6120],{"class":283},"  }, ",[277,6122,6123],{"class":356},"30000",[277,6125,433],{"class":283},[277,6127,6128],{"class":279,"line":807},[277,6129,394],{"class":283},[277,6131,6132],{"class":279,"line":826},[277,6133,328],{"emptyLinePlaceholder":327},[277,6135,6136,6138,6141],{"class":279,"line":849},[277,6137,2460],{"class":311},[277,6139,6140],{"class":291}," stopPolling",[277,6142,473],{"class":283},[277,6144,6145,6147,6149,6151,6153,6155],{"class":279,"line":854},[277,6146,508],{"class":311},[277,6148,6077],{"class":283},[277,6150,2503],{"class":311},[277,6152,424],{"class":356},[277,6154,2340],{"class":283},[277,6156,714],{"class":311},[277,6158,6159],{"class":279,"line":876},[277,6160,328],{"emptyLinePlaceholder":327},[277,6162,6163,6166],{"class":279,"line":891},[277,6164,6165],{"class":291},"  clearInterval",[277,6167,6168],{"class":283},"(poller.value)\n",[277,6170,6171,6173,6175],{"class":279,"line":905},[277,6172,6095],{"class":283},[277,6174,298],{"class":311},[277,6176,6177],{"class":356}," null\n",[277,6179,6180],{"class":279,"line":919},[277,6181,394],{"class":283},[277,6183,6184],{"class":279,"line":929},[277,6185,328],{"emptyLinePlaceholder":327},[277,6187,6188,6190,6192,6194],{"class":279,"line":934},[277,6189,687],{"class":291},[277,6191,2203],{"class":283},[277,6193,601],{"class":311},[277,6195,343],{"class":283},[277,6197,6198,6201,6203],{"class":279,"line":951},[277,6199,6200],{"class":283},"  initialized.value ",[277,6202,298],{"class":311},[277,6204,2296],{"class":356},[277,6206,6207],{"class":279,"line":961},[277,6208,676],{"class":283},[277,6210,6211],{"class":279,"line":1473},[277,6212,328],{"emptyLinePlaceholder":327},[277,6214,6215,6218,6220,6222,6224,6226],{"class":279,"line":1478},[277,6216,6217],{"class":291},"onActivated",[277,6219,448],{"class":283},[277,6221,464],{"class":311},[277,6223,598],{"class":283},[277,6225,601],{"class":311},[277,6227,343],{"class":283},[277,6229,6230,6232,6234,6237,6239,6242,6245],{"class":279,"line":1497},[277,6231,5943],{"class":283},[277,6233,298],{"class":311},[277,6235,6236],{"class":283}," initialized.value ",[277,6238,2285],{"class":311},[277,6240,6241],{"class":301}," 'Vista reactivada'",[277,6243,6244],{"class":311}," :",[277,6246,6247],{"class":301}," 'Cargando vista...'\n",[277,6249,6250,6253,6255],{"class":279,"line":1510},[277,6251,6252],{"class":311},"  await",[277,6254,5936],{"class":291},[277,6256,622],{"class":283},[277,6258,6259,6262],{"class":279,"line":1523},[277,6260,6261],{"class":291},"  startPolling",[277,6263,622],{"class":283},[277,6265,6266],{"class":279,"line":1536},[277,6267,676],{"class":283},[277,6269,6270],{"class":279,"line":1545},[277,6271,328],{"emptyLinePlaceholder":327},[277,6273,6274,6277,6279,6281],{"class":279,"line":1550},[277,6275,6276],{"class":291},"onDeactivated",[277,6278,2203],{"class":283},[277,6280,601],{"class":311},[277,6282,343],{"class":283},[277,6284,6285,6287,6289],{"class":279,"line":1565},[277,6286,5943],{"class":283},[277,6288,298],{"class":311},[277,6290,6291],{"class":301}," 'Vista en pausa'\n",[277,6293,6294,6297],{"class":279,"line":1574},[277,6295,6296],{"class":291},"  stopPolling",[277,6298,622],{"class":283},[277,6300,6301],{"class":279,"line":4076},[277,6302,676],{"class":283},[277,6304,6305,6307,6309],{"class":279,"line":4088},[277,6306,785],{"class":283},[277,6308,288],{"class":287},[277,6310,305],{"class":283},[277,6312,6313],{"class":279,"line":4093},[277,6314,328],{"emptyLinePlaceholder":327},[277,6316,6317,6319,6321],{"class":279,"line":4102},[277,6318,284],{"class":283},[277,6320,802],{"class":287},[277,6322,305],{"class":283},[277,6324,6325,6327,6329,6331,6333,6336],{"class":279,"line":4107},[277,6326,810],{"class":283},[277,6328,4121],{"class":287},[277,6330,816],{"class":291},[277,6332,298],{"class":283},[277,6334,6335],{"class":301},"\"task-report\"",[277,6337,305],{"class":283},[277,6339,6340,6342,6344],{"class":279,"line":4116},[277,6341,829],{"class":283},[277,6343,4138],{"class":287},[277,6345,305],{"class":283},[277,6347,6348,6350,6352,6355,6357],{"class":279,"line":4133},[277,6349,879],{"class":283},[277,6351,30],{"class":287},[277,6353,6354],{"class":283},">Reporte de tareas\u003C/",[277,6356,30],{"class":287},[277,6358,305],{"class":283},[277,6360,6361,6363,6365,6368,6370],{"class":279,"line":4143},[277,6362,879],{"class":283},[277,6364,21],{"class":287},[277,6366,6367],{"class":283},">{{ status }}\u003C/",[277,6369,21],{"class":287},[277,6371,305],{"class":283},[277,6373,6374,6376,6378,6380,6382,6385,6388,6390],{"class":279,"line":4157},[277,6375,879],{"class":283},[277,6377,21],{"class":287},[277,6379,834],{"class":291},[277,6381,298],{"class":283},[277,6383,6384],{"class":301},"\"lastSync\"",[277,6386,6387],{"class":283},">Última sincronización: {{ lastSync }}\u003C/",[277,6389,21],{"class":287},[277,6391,305],{"class":283},[277,6393,6394,6396,6398],{"class":279,"line":4166},[277,6395,922],{"class":283},[277,6397,4138],{"class":287},[277,6399,305],{"class":283},[277,6401,6402],{"class":279,"line":4172},[277,6403,328],{"emptyLinePlaceholder":327},[277,6405,6406,6408,6411,6413,6415,6418],{"class":279,"line":4182},[277,6407,829],{"class":283},[277,6409,6410],{"class":287},"nav",[277,6412,816],{"class":291},[277,6414,298],{"class":283},[277,6416,6417],{"class":301},"\"filters\"",[277,6419,305],{"class":283},[277,6421,6422,6424,6426,6428,6430,6433,6436,6438],{"class":279,"line":4191},[277,6423,879],{"class":283},[277,6425,4267],{"class":287},[277,6427,4278],{"class":291},[277,6429,298],{"class":283},[277,6431,6432],{"class":301},"\"filter = 'all'\"",[277,6434,6435],{"class":283},">Todas\u003C/",[277,6437,4267],{"class":287},[277,6439,305],{"class":283},[277,6441,6442,6444,6446,6448,6450,6453,6456,6458],{"class":279,"line":4196},[277,6443,879],{"class":283},[277,6445,4267],{"class":287},[277,6447,4278],{"class":291},[277,6449,298],{"class":283},[277,6451,6452],{"class":301},"\"filter = 'pending'\"",[277,6454,6455],{"class":283},">Pendientes\u003C/",[277,6457,4267],{"class":287},[277,6459,305],{"class":283},[277,6461,6462,6464,6466,6468,6470,6473,6476,6478],{"class":279,"line":4220},[277,6463,879],{"class":283},[277,6465,4267],{"class":287},[277,6467,4278],{"class":291},[277,6469,298],{"class":283},[277,6471,6472],{"class":301},"\"filter = 'done'\"",[277,6474,6475],{"class":283},">Completadas\u003C/",[277,6477,4267],{"class":287},[277,6479,305],{"class":283},[277,6481,6482,6484,6486],{"class":279,"line":4234},[277,6483,922],{"class":283},[277,6485,6410],{"class":287},[277,6487,305],{"class":283},[277,6489,6490],{"class":279,"line":4247},[277,6491,328],{"emptyLinePlaceholder":327},[277,6493,6494,6496,6498],{"class":279,"line":4262},[277,6495,829],{"class":283},[277,6497,38],{"class":287},[277,6499,305],{"class":283},[277,6501,6502,6504],{"class":279,"line":4293},[277,6503,879],{"class":283},[277,6505,6506],{"class":287},"li\n",[277,6508,6509,6512,6514],{"class":279,"line":4302},[277,6510,6511],{"class":291},"        v-for",[277,6513,298],{"class":283},[277,6515,6516],{"class":301},"\"task in visibleTasks\"\n",[277,6518,6519,6522,6524],{"class":279,"line":4307},[277,6520,6521],{"class":291},"        :key",[277,6523,298],{"class":283},[277,6525,6526],{"class":301},"\"task.id\"\n",[277,6528,6529],{"class":279,"line":4328},[277,6530,4543],{"class":283},[277,6532,6533],{"class":279,"line":4337},[277,6534,6535],{"class":283},"        {{ task.title }}\n",[277,6537,6538,6540,6542],{"class":279,"line":4993},[277,6539,4175],{"class":283},[277,6541,41],{"class":287},[277,6543,305],{"class":283},[277,6545,6546,6548,6550],{"class":279,"line":5006},[277,6547,922],{"class":283},[277,6549,38],{"class":287},[277,6551,305],{"class":283},[277,6553,6554,6556,6558],{"class":279,"line":5019},[277,6555,954],{"class":283},[277,6557,4121],{"class":287},[277,6559,305],{"class":283},[277,6561,6562,6564,6566],{"class":279,"line":5044},[277,6563,785],{"class":283},[277,6565,802],{"class":287},[277,6567,305],{"class":283},[267,6569,6572],{"className":269,"code":6570,"filename":6571,"language":272,"meta":273,"style":273},"\u003Cscript>\nexport default {\n  data() {\n    return {\n      tasks: [],\n      filter: 'all',\n      status: 'Esperando carga...',\n      lastSync: null,\n      poller: null,\n      initialized: false\n    }\n  },\n\n  computed: {\n    visibleTasks() {\n      if (this.filter === 'pending') {\n        return this.tasks.filter(task => !task.done)\n      }\n\n      if (this.filter === 'done') {\n        return this.tasks.filter(task => task.done)\n      }\n\n      return this.tasks\n    }\n  },\n\n  mounted() {\n    this.initialized = true\n  },\n\n  async activated() {\n    this.status = this.initialized ? 'Vista reactivada' : 'Cargando vista...'\n    await this.fetchTasks()\n    this.startPolling()\n  },\n\n  deactivated() {\n    this.status = 'Vista en pausa'\n    this.stopPolling()\n  },\n\n  methods: {\n    async fetchTasks() {\n      this.status = 'Sincronizando...'\n\n      const response = await fetch('/api/tasks')\n      const data = await response.json()\n\n      this.tasks = data.tasks\n      this.lastSync = new Date().toLocaleTimeString('es-CO')\n      this.status = 'Datos actualizados'\n    },\n\n    startPolling() {\n      if (this.poller !== null) return\n\n      this.poller = setInterval(() => {\n        void this.fetchTasks()\n      }, 30000)\n    },\n\n    stopPolling() {\n      if (this.poller === null) return\n\n      clearInterval(this.poller)\n      this.poller = null\n    }\n  }\n}\n\u003C/script>\n\n\u003Ctemplate>\n  \u003Csection class=\"task-report\">\n    \u003Cheader>\n      \u003Ch2>Reporte de tareas\u003C/h2>\n      \u003Cp>{{ status }}\u003C/p>\n      \u003Cp v-if=\"lastSync\">Última sincronización: {{ lastSync }}\u003C/p>\n    \u003C/header>\n\n    \u003Cnav class=\"filters\">\n      \u003Cbutton @click=\"filter = 'all'\">Todas\u003C/button>\n      \u003Cbutton @click=\"filter = 'pending'\">Pendientes\u003C/button>\n      \u003Cbutton @click=\"filter = 'done'\">Completadas\u003C/button>\n    \u003C/nav>\n\n    \u003Cul>\n      \u003Cli\n        v-for=\"task in visibleTasks\"\n        :key=\"task.id\"\n      >\n        {{ task.title }}\n      \u003C/li>\n    \u003C/ul>\n  \u003C/section>\n\u003C/template>\n","Options Api",[16,6573,6574,6582,6590,6596,6602,6607,6616,6625,6634,6643,6650,6654,6658,6662,6666,6672,6689,6709,6713,6717,6733,6751,6755,6759,6768,6772,6776,6780,6787,6798,6802,6806,6815,6836,6849,6860,6864,6868,6875,6885,6896,6900,6904,6908,6916,6926,6930,6948,6964,6968,6979,7002,7012,7017,7021,7028,7047,7051,7067,7080,7089,7093,7097,7104,7122,7126,7138,7148,7152,7156,7160,7168,7172,7180,7194,7202,7214,7226,7244,7252,7256,7270,7288,7306,7324,7332,7336,7344,7350,7358,7366,7370,7374,7382,7390,7398],{"__ignoreMap":273},[277,6575,6576,6578,6580],{"class":279,"line":280},[277,6577,284],{"class":283},[277,6579,288],{"class":287},[277,6581,305],{"class":283},[277,6583,6584,6586,6588],{"class":279,"line":308},[277,6585,1057],{"class":311},[277,6587,1060],{"class":311},[277,6589,343],{"class":283},[277,6591,6592,6594],{"class":279,"line":324},[277,6593,1086],{"class":291},[277,6595,473],{"class":283},[277,6597,6598,6600],{"class":279,"line":331},[277,6599,1093],{"class":311},[277,6601,343],{"class":283},[277,6603,6604],{"class":279,"line":346},[277,6605,6606],{"class":283},"      tasks: [],\n",[277,6608,6609,6612,6614],{"class":279,"line":360},[277,6610,6611],{"class":283},"      filter: ",[277,6613,5703],{"class":301},[277,6615,1077],{"class":283},[277,6617,6618,6621,6623],{"class":279,"line":371},[277,6619,6620],{"class":283},"      status: ",[277,6622,5735],{"class":301},[277,6624,1077],{"class":283},[277,6626,6627,6630,6632],{"class":279,"line":381},[277,6628,6629],{"class":283},"      lastSync: ",[277,6631,430],{"class":356},[277,6633,1077],{"class":283},[277,6635,6636,6639,6641],{"class":279,"line":391},[277,6637,6638],{"class":283},"      poller: ",[277,6640,430],{"class":356},[277,6642,1077],{"class":283},[277,6644,6645,6648],{"class":279,"line":397},[277,6646,6647],{"class":283},"      initialized: ",[277,6649,2043],{"class":356},[277,6651,6652],{"class":279,"line":402},[277,6653,1126],{"class":283},[277,6655,6656],{"class":279,"line":436},[277,6657,1131],{"class":283},[277,6659,6660],{"class":279,"line":456},[277,6661,328],{"emptyLinePlaceholder":327},[277,6663,6664],{"class":279,"line":461},[277,6665,2742],{"class":283},[277,6667,6668,6670],{"class":279,"line":476},[277,6669,2747],{"class":291},[277,6671,473],{"class":283},[277,6673,6674,6676,6678,6680,6683,6685,6687],{"class":279,"line":500},[277,6675,1177],{"class":311},[277,6677,511],{"class":283},[277,6679,1341],{"class":356},[277,6681,6682],{"class":283},".filter ",[277,6684,2503],{"class":311},[277,6686,5708],{"class":301},[277,6688,2476],{"class":283},[277,6690,6691,6693,6695,6697,6699,6701,6703,6705,6707],{"class":279,"line":505},[277,6692,2842],{"class":311},[277,6694,1268],{"class":356},[277,6696,2759],{"class":283},[277,6698,2218],{"class":291},[277,6700,448],{"class":283},[277,6702,2223],{"class":349},[277,6704,2226],{"class":311},[277,6706,2288],{"class":311},[277,6708,5867],{"class":283},[277,6710,6711],{"class":279,"line":520},[277,6712,1203],{"class":283},[277,6714,6715],{"class":279,"line":539},[277,6716,328],{"emptyLinePlaceholder":327},[277,6718,6719,6721,6723,6725,6727,6729,6731],{"class":279,"line":545},[277,6720,1177],{"class":311},[277,6722,511],{"class":283},[277,6724,1341],{"class":356},[277,6726,6682],{"class":283},[277,6728,2503],{"class":311},[277,6730,5713],{"class":301},[277,6732,2476],{"class":283},[277,6734,6735,6737,6739,6741,6743,6745,6747,6749],{"class":279,"line":550},[277,6736,2842],{"class":311},[277,6738,1268],{"class":356},[277,6740,2759],{"class":283},[277,6742,2218],{"class":291},[277,6744,448],{"class":283},[277,6746,2223],{"class":349},[277,6748,2226],{"class":311},[277,6750,5904],{"class":283},[277,6752,6753],{"class":279,"line":578},[277,6754,1203],{"class":283},[277,6756,6757],{"class":279,"line":583},[277,6758,328],{"emptyLinePlaceholder":327},[277,6760,6761,6763,6765],{"class":279,"line":588},[277,6762,2754],{"class":311},[277,6764,1268],{"class":356},[277,6766,6767],{"class":283},".tasks\n",[277,6769,6770],{"class":279,"line":606},[277,6771,1126],{"class":283},[277,6773,6774],{"class":279,"line":614},[277,6775,1131],{"class":283},[277,6777,6778],{"class":279,"line":625},[277,6779,328],{"emptyLinePlaceholder":327},[277,6781,6782,6785],{"class":279,"line":637},[277,6783,6784],{"class":291},"  mounted",[277,6786,473],{"class":283},[277,6788,6789,6791,6794,6796],{"class":279,"line":646},[277,6790,4724],{"class":356},[277,6792,6793],{"class":283},".initialized ",[277,6795,298],{"class":311},[277,6797,2296],{"class":356},[277,6799,6800],{"class":279,"line":668},[277,6801,1131],{"class":283},[277,6803,6804],{"class":279,"line":673},[277,6805,328],{"emptyLinePlaceholder":327},[277,6807,6808,6810,6813],{"class":279,"line":679},[277,6809,1248],{"class":311},[277,6811,6812],{"class":291}," activated",[277,6814,473],{"class":283},[277,6816,6817,6819,6822,6824,6826,6828,6830,6832,6834],{"class":279,"line":684},[277,6818,4724],{"class":356},[277,6820,6821],{"class":283},".status ",[277,6823,298],{"class":311},[277,6825,1268],{"class":356},[277,6827,6793],{"class":283},[277,6829,2285],{"class":311},[277,6831,6241],{"class":301},[277,6833,6244],{"class":311},[277,6835,6247],{"class":301},[277,6837,6838,6840,6842,6844,6847],{"class":279,"line":700},[277,6839,617],{"class":311},[277,6841,1268],{"class":356},[277,6843,104],{"class":283},[277,6845,6846],{"class":291},"fetchTasks",[277,6848,622],{"class":283},[277,6850,6851,6853,6855,6858],{"class":279,"line":717},[277,6852,4724],{"class":356},[277,6854,104],{"class":283},[277,6856,6857],{"class":291},"startPolling",[277,6859,622],{"class":283},[277,6861,6862],{"class":279,"line":722},[277,6863,1131],{"class":283},[277,6865,6866],{"class":279,"line":729},[277,6867,328],{"emptyLinePlaceholder":327},[277,6869,6870,6873],{"class":279,"line":738},[277,6871,6872],{"class":291},"  deactivated",[277,6874,473],{"class":283},[277,6876,6877,6879,6881,6883],{"class":279,"line":747},[277,6878,4724],{"class":356},[277,6880,6821],{"class":283},[277,6882,298],{"class":311},[277,6884,6291],{"class":301},[277,6886,6887,6889,6891,6894],{"class":279,"line":754},[277,6888,4724],{"class":356},[277,6890,104],{"class":283},[277,6892,6893],{"class":291},"stopPolling",[277,6895,622],{"class":283},[277,6897,6898],{"class":279,"line":772},[277,6899,1131],{"class":283},[277,6901,6902],{"class":279,"line":777},[277,6903,328],{"emptyLinePlaceholder":327},[277,6905,6906],{"class":279,"line":782},[277,6907,1140],{"class":283},[277,6909,6910,6912,6914],{"class":279,"line":792},[277,6911,1145],{"class":311},[277,6913,5936],{"class":291},[277,6915,473],{"class":283},[277,6917,6918,6920,6922,6924],{"class":279,"line":797},[277,6919,1212],{"class":356},[277,6921,6821],{"class":283},[277,6923,298],{"class":311},[277,6925,5948],{"class":301},[277,6927,6928],{"class":279,"line":807},[277,6929,328],{"emptyLinePlaceholder":327},[277,6931,6932,6934,6936,6938,6940,6942,6944,6946],{"class":279,"line":826},[277,6933,1154],{"class":311},[277,6935,482],{"class":356},[277,6937,340],{"class":311},[277,6939,487],{"class":311},[277,6941,490],{"class":291},[277,6943,448],{"class":283},[277,6945,5969],{"class":301},[277,6947,433],{"class":283},[277,6949,6950,6952,6954,6956,6958,6960,6962],{"class":279,"line":849},[277,6951,1154],{"class":311},[277,6953,5978],{"class":356},[277,6955,340],{"class":311},[277,6957,487],{"class":311},[277,6959,563],{"class":283},[277,6961,566],{"class":291},[277,6963,622],{"class":283},[277,6965,6966],{"class":279,"line":854},[277,6967,328],{"emptyLinePlaceholder":327},[277,6969,6970,6972,6975,6977],{"class":279,"line":876},[277,6971,1212],{"class":356},[277,6973,6974],{"class":283},".tasks ",[277,6976,298],{"class":311},[277,6978,6019],{"class":283},[277,6980,6981,6983,6986,6988,6990,6992,6994,6996,6998,7000],{"class":279,"line":891},[277,6982,1212],{"class":356},[277,6984,6985],{"class":283},".lastSync ",[277,6987,298],{"class":311},[277,6989,526],{"class":311},[277,6991,6031],{"class":291},[277,6993,6034],{"class":283},[277,6995,6037],{"class":291},[277,6997,448],{"class":283},[277,6999,6042],{"class":301},[277,7001,433],{"class":283},[277,7003,7004,7006,7008,7010],{"class":279,"line":905},[277,7005,1212],{"class":356},[277,7007,6821],{"class":283},[277,7009,298],{"class":311},[277,7011,6053],{"class":301},[277,7013,7014],{"class":279,"line":919},[277,7015,7016],{"class":283},"    },\n",[277,7018,7019],{"class":279,"line":929},[277,7020,328],{"emptyLinePlaceholder":327},[277,7022,7023,7026],{"class":279,"line":934},[277,7024,7025],{"class":291},"    startPolling",[277,7027,473],{"class":283},[277,7029,7030,7032,7034,7036,7039,7041,7043,7045],{"class":279,"line":951},[277,7031,1177],{"class":311},[277,7033,511],{"class":283},[277,7035,1341],{"class":356},[277,7037,7038],{"class":283},".poller ",[277,7040,6080],{"class":311},[277,7042,424],{"class":356},[277,7044,2340],{"class":283},[277,7046,714],{"class":311},[277,7048,7049],{"class":279,"line":961},[277,7050,328],{"emptyLinePlaceholder":327},[277,7052,7053,7055,7057,7059,7061,7063,7065],{"class":279,"line":1473},[277,7054,1212],{"class":356},[277,7056,7038],{"class":283},[277,7058,298],{"class":311},[277,7060,6100],{"class":291},[277,7062,2203],{"class":283},[277,7064,601],{"class":311},[277,7066,343],{"class":283},[277,7068,7069,7072,7074,7076,7078],{"class":279,"line":1478},[277,7070,7071],{"class":311},"        void",[277,7073,1268],{"class":356},[277,7075,104],{"class":283},[277,7077,6846],{"class":291},[277,7079,622],{"class":283},[277,7081,7082,7085,7087],{"class":279,"line":1497},[277,7083,7084],{"class":283},"      }, ",[277,7086,6123],{"class":356},[277,7088,433],{"class":283},[277,7090,7091],{"class":279,"line":1510},[277,7092,7016],{"class":283},[277,7094,7095],{"class":279,"line":1523},[277,7096,328],{"emptyLinePlaceholder":327},[277,7098,7099,7102],{"class":279,"line":1536},[277,7100,7101],{"class":291},"    stopPolling",[277,7103,473],{"class":283},[277,7105,7106,7108,7110,7112,7114,7116,7118,7120],{"class":279,"line":1545},[277,7107,1177],{"class":311},[277,7109,511],{"class":283},[277,7111,1341],{"class":356},[277,7113,7038],{"class":283},[277,7115,2503],{"class":311},[277,7117,424],{"class":356},[277,7119,2340],{"class":283},[277,7121,714],{"class":311},[277,7123,7124],{"class":279,"line":1550},[277,7125,328],{"emptyLinePlaceholder":327},[277,7127,7128,7131,7133,7135],{"class":279,"line":1565},[277,7129,7130],{"class":291},"      clearInterval",[277,7132,448],{"class":283},[277,7134,1341],{"class":356},[277,7136,7137],{"class":283},".poller)\n",[277,7139,7140,7142,7144,7146],{"class":279,"line":1574},[277,7141,1212],{"class":356},[277,7143,7038],{"class":283},[277,7145,298],{"class":311},[277,7147,6177],{"class":356},[277,7149,7150],{"class":279,"line":4076},[277,7151,1126],{"class":283},[277,7153,7154],{"class":279,"line":4088},[277,7155,542],{"class":283},[277,7157,7158],{"class":279,"line":4093},[277,7159,394],{"class":283},[277,7161,7162,7164,7166],{"class":279,"line":4102},[277,7163,785],{"class":283},[277,7165,288],{"class":287},[277,7167,305],{"class":283},[277,7169,7170],{"class":279,"line":4107},[277,7171,328],{"emptyLinePlaceholder":327},[277,7173,7174,7176,7178],{"class":279,"line":4116},[277,7175,284],{"class":283},[277,7177,802],{"class":287},[277,7179,305],{"class":283},[277,7181,7182,7184,7186,7188,7190,7192],{"class":279,"line":4133},[277,7183,810],{"class":283},[277,7185,4121],{"class":287},[277,7187,816],{"class":291},[277,7189,298],{"class":283},[277,7191,6335],{"class":301},[277,7193,305],{"class":283},[277,7195,7196,7198,7200],{"class":279,"line":4143},[277,7197,829],{"class":283},[277,7199,4138],{"class":287},[277,7201,305],{"class":283},[277,7203,7204,7206,7208,7210,7212],{"class":279,"line":4157},[277,7205,879],{"class":283},[277,7207,30],{"class":287},[277,7209,6354],{"class":283},[277,7211,30],{"class":287},[277,7213,305],{"class":283},[277,7215,7216,7218,7220,7222,7224],{"class":279,"line":4166},[277,7217,879],{"class":283},[277,7219,21],{"class":287},[277,7221,6367],{"class":283},[277,7223,21],{"class":287},[277,7225,305],{"class":283},[277,7227,7228,7230,7232,7234,7236,7238,7240,7242],{"class":279,"line":4172},[277,7229,879],{"class":283},[277,7231,21],{"class":287},[277,7233,834],{"class":291},[277,7235,298],{"class":283},[277,7237,6384],{"class":301},[277,7239,6387],{"class":283},[277,7241,21],{"class":287},[277,7243,305],{"class":283},[277,7245,7246,7248,7250],{"class":279,"line":4182},[277,7247,922],{"class":283},[277,7249,4138],{"class":287},[277,7251,305],{"class":283},[277,7253,7254],{"class":279,"line":4191},[277,7255,328],{"emptyLinePlaceholder":327},[277,7257,7258,7260,7262,7264,7266,7268],{"class":279,"line":4196},[277,7259,829],{"class":283},[277,7261,6410],{"class":287},[277,7263,816],{"class":291},[277,7265,298],{"class":283},[277,7267,6417],{"class":301},[277,7269,305],{"class":283},[277,7271,7272,7274,7276,7278,7280,7282,7284,7286],{"class":279,"line":4220},[277,7273,879],{"class":283},[277,7275,4267],{"class":287},[277,7277,4278],{"class":291},[277,7279,298],{"class":283},[277,7281,6432],{"class":301},[277,7283,6435],{"class":283},[277,7285,4267],{"class":287},[277,7287,305],{"class":283},[277,7289,7290,7292,7294,7296,7298,7300,7302,7304],{"class":279,"line":4234},[277,7291,879],{"class":283},[277,7293,4267],{"class":287},[277,7295,4278],{"class":291},[277,7297,298],{"class":283},[277,7299,6452],{"class":301},[277,7301,6455],{"class":283},[277,7303,4267],{"class":287},[277,7305,305],{"class":283},[277,7307,7308,7310,7312,7314,7316,7318,7320,7322],{"class":279,"line":4247},[277,7309,879],{"class":283},[277,7311,4267],{"class":287},[277,7313,4278],{"class":291},[277,7315,298],{"class":283},[277,7317,6472],{"class":301},[277,7319,6475],{"class":283},[277,7321,4267],{"class":287},[277,7323,305],{"class":283},[277,7325,7326,7328,7330],{"class":279,"line":4262},[277,7327,922],{"class":283},[277,7329,6410],{"class":287},[277,7331,305],{"class":283},[277,7333,7334],{"class":279,"line":4293},[277,7335,328],{"emptyLinePlaceholder":327},[277,7337,7338,7340,7342],{"class":279,"line":4302},[277,7339,829],{"class":283},[277,7341,38],{"class":287},[277,7343,305],{"class":283},[277,7345,7346,7348],{"class":279,"line":4307},[277,7347,879],{"class":283},[277,7349,6506],{"class":287},[277,7351,7352,7354,7356],{"class":279,"line":4328},[277,7353,6511],{"class":291},[277,7355,298],{"class":283},[277,7357,6516],{"class":301},[277,7359,7360,7362,7364],{"class":279,"line":4337},[277,7361,6521],{"class":291},[277,7363,298],{"class":283},[277,7365,6526],{"class":301},[277,7367,7368],{"class":279,"line":4993},[277,7369,4543],{"class":283},[277,7371,7372],{"class":279,"line":5006},[277,7373,6535],{"class":283},[277,7375,7376,7378,7380],{"class":279,"line":5019},[277,7377,4175],{"class":283},[277,7379,41],{"class":287},[277,7381,305],{"class":283},[277,7383,7384,7386,7388],{"class":279,"line":5044},[277,7385,922],{"class":283},[277,7387,38],{"class":287},[277,7389,305],{"class":283},[277,7391,7392,7394,7396],{"class":279,"line":5053},[277,7393,954],{"class":283},[277,7395,4121],{"class":287},[277,7397,305],{"class":283},[277,7399,7400,7402,7404],{"class":279,"line":5058},[277,7401,785],{"class":283},[277,7403,802],{"class":287},[277,7405,305],{"class":283},[38,7407,7408,7413,7418,7421],{},[41,7409,7410,7412],{},[16,7411,5244],{}," cubre tanto la primera activación como cada regreso desde caché.",[41,7414,7415,7417],{},[16,7416,5252],{}," pausa el polling para no seguir consumiendo recursos fuera de pantalla.",[41,7419,7420],{},"El filtro local se conserva porque la instancia no se destruye.",[41,7422,7423,7425],{},[16,7424,210],{}," queda reservado para trabajo realmente inicial; aquí solo marca que la instancia ya pasó por su montaje inicial.",[30,7427,1596],{"id":1595},[38,7429,7430,7435,7440,7445,7448],{},[41,7431,7432,7434],{},[16,7433,5176],{}," conserva la instancia y su estado local entre cambios de vista.",[41,7436,7437,7439],{},[16,7438,5179],{}," no significa “montar otra vez”, sino “volver a estar activo”.",[41,7441,7442,7444],{},[16,7443,5182],{}," es el hook adecuado para pausar trabajo cuando la instancia queda cacheada.",[41,7446,7447],{},"Conservar estado no evita que tengas que revalidar datos cuando la vista regresa.",[41,7449,7450],{},"Si el componente debe reiniciarse siempre desde cero, probablemente no deberías cachearlo.",[1606,7452,1608],{},{"title":273,"searchDepth":308,"depth":308,"links":7454},[7455,7456,7457,7458,7459,7460,7468,7473],{"id":5168,"depth":308,"text":5169},{"id":60,"depth":308,"text":61},{"id":128,"depth":308,"text":129},{"id":155,"depth":308,"text":156},{"id":5389,"depth":308,"text":5390},{"id":189,"depth":308,"text":190,"children":7461},[7462,7464,7465,7467],{"id":5484,"depth":324,"text":7463},"1. Cargar datos solo en mounted",{"id":5501,"depth":324,"text":5502},{"id":5521,"depth":324,"text":7466},"3. Esperar unmounted al cambiar entre tabs cacheadas",{"id":5540,"depth":324,"text":5541},{"id":1945,"depth":308,"text":1946,"children":7469},[7470,7471,7472],{"id":5554,"depth":324,"text":5555},{"id":5567,"depth":324,"text":5568},{"id":5577,"depth":324,"text":5578},{"id":1595,"depth":308,"text":1596},"https://res.cloudinary.com/denj4fg7f/image/upload/v1773371011/vue-lifecycle-keepalive-activated-deactivated_abjmwe.png","Ilustración de componentes cacheados con KeepAlive en Vue usando activated y deactivated","2026-03-13","Cómo funcionan activated y deactivated en componentes cacheados con \u003CKeepAlive>, cuándo usarlos y cómo evitar datos obsoletos, timers activos y lógica mal ubicada.",{"script":7479},[7480],{"type":1632,"key":1633,"data-nuxt-schema-org":327,"nodes":7481},[7482],{"headline":5163,"author":7483,"datePublished":7484,"@type":1640},{"name":1637,"@type":1638},"2026-03-12T23:00:00-05:00",{"updatedAt":7484,"coverCaption":7486,"author":1637,"keywords":7487},"KeepAlive permite desactivar y reactivar componentes sin destruir su estado local",[1645,7488,5179,5182,7489],"KeepAlive","cache de componentes","/blog/vue-lifecycle-keepalive-activated-deactivated.es",[7492],{"headline":5163,"author":7493,"datePublished":7484,"@type":1640},{"name":1637,"@type":1638},{"title":5163,"description":7477},"blog/vue-lifecycle-keepalive-activated-deactivated.es",[7497,7498,7500,7501],{"tag":1660,"color":1661},{"tag":7488,"color":7499},"#27AE60",{"tag":1668,"color":1669},{"tag":1671,"color":1672},"cC6EGrWzdGX1S3I2vyv_xoYWKc_TvnTepGzaJn-MNeg",{"id":7504,"title":7505,"body":7506,"cover":9049,"coverAlt":9050,"date":9051,"description":9052,"draft":1627,"extension":1628,"head":9053,"locale":1641,"meta":9060,"navigation":327,"path":9064,"schemaOrg":9065,"seo":9068,"series":1653,"seriesDescription":1654,"seriesOrder":346,"seriesTitle":1655,"slug":1656,"stem":9069,"tags":9070,"__hash__":9076},"blog/blog/vue-lifecycle-unmounting-phase-beforeunmount-unmounted.es.md","Ciclos de vida en Vue: fase de desmontaje (beforeUnmount, unmounted)",{"type":8,"value":7507,"toc":9029},[7508,7517,7523,7531,7533,7543,7546,7563,7566,7578,7581,7593,7598,7600,7603,7605,7635,7638,7657,7659,7662,7670,7687,7690,7709,7712,7716,7765,7772,7774,7781,7784,7787,7811,7814,7820,7828,7834,7838,7847,7855,7858,7862,7868,7871,7873,7877,7880,7884,7890,7894,7903,8464,8990,9007,9009,9027],[11,7509,7511,7512,225,7515,19],{"id":7510},"ciclos-de-vida-en-vue-fase-de-desmontaje-beforeunmount-unmounted","Ciclos de vida en Vue: fase de desmontaje (",[16,7513,7514],{},"beforeUnmount",[16,7516,5294],{},[21,7518,7519,7520,7522],{},"Muchos bugs no nacen cuando un componente aparece, sino cuando desaparece. Un listener global que quedó activo, un ",[16,7521,5508],{}," que nunca se limpió o una petición que sigue en curso cuando el usuario ya cambió de vista suelen empezar ahí.",[21,7524,7525,7526,1697,7528,7530],{},"La fase de desmontaje sirve para cerrar correctamente esa historia. No se trata solo de “borrar cosas”, sino de dejar el componente en orden cuando Vue lo retira del árbol. Si entiendes bien la diferencia entre ",[16,7527,7514],{},[16,7529,5294],{},", puedes evitar fugas de memoria, efectos duplicados y componentes que siguen haciendo trabajo cuando ya no existen en pantalla.",[30,7532,61],{"id":60},[21,7534,7535,7536,7539,7540,7542],{},"El desmontaje ocurre cuando Vue decide retirar un componente del árbol activo. Esto puede pasar, por ejemplo, si un ",[16,7537,7538],{},"v-if"," cambia a ",[16,7541,2123],{},", si cambias de ruta o si un componente dinámico deja de renderizarse.",[21,7544,7545],{},"En esa fase aparecen dos hooks:",[38,7547,7548,7556],{},[41,7549,7550,7552,7553,104],{},[16,7551,7514],{},": se ejecuta ",[72,7554,7555],{},"justo antes de que Vue desmonte el componente",[41,7557,7558,7552,7560,104],{},[16,7559,5294],{},[72,7561,7562],{},"cuando el componente ya fue desmontado",[21,7564,7565],{},"En Composition API, los equivalentes son:",[38,7567,7568,7573],{},[41,7569,7570],{},[16,7571,7572],{},"onBeforeUnmount()",[41,7574,7575],{},[16,7576,7577],{},"onUnmounted()",[21,7579,7580],{},"La diferencia importante es esta:",[38,7582,7583,7588],{},[41,7584,110,7585,7587],{},[16,7586,7514],{}," la instancia todavía existe y puedes acceder a su estado, refs y recursos activos para limpiarlos.",[41,7589,110,7590,7592],{},[16,7591,5294],{}," Vue ya terminó el desmontaje y ya detuvo los efectos reactivos del componente. Ese punto sirve más para confirmaciones finales, trazas o integraciones muy concretas.",[21,7594,7595,7596,104],{},"En la práctica, casi toda la limpieza útil ocurre en ",[16,7597,7514],{},[30,7599,129],{"id":128},[21,7601,7602],{},"La fase de desmontaje tiene sentido cuando el componente abrió recursos que no deben seguir vivos después.",[21,7604,3305],{},[38,7606,7607,7615,7629,7632],{},[41,7608,7609,7610,225,7612,7614],{},"Quitar listeners registrados sobre ",[16,7611,224],{},[16,7613,228],{}," o cualquier objeto externo.",[41,7616,7617,7618,225,7620,225,7623,118,7626,104],{},"Limpiar ",[16,7619,5508],{},[16,7621,7622],{},"setTimeout",[16,7624,7625],{},"requestAnimationFrame",[16,7627,7628],{},"ResizeObserver",[41,7630,7631],{},"Cerrar sockets, desconectar observers o abortar peticiones pendientes.",[41,7633,7634],{},"Guardar una última traza de depuración o telemetría cuando el componente ya terminó de salir.",[21,7636,7637],{},"Una regla sencilla:",[38,7639,7640,7649],{},[41,7641,7642,7643,7646,7647,104],{},"Si necesitas ",[72,7644,7645],{},"desconectar o cancelar algo",", piensa primero en ",[16,7648,7514],{},[41,7650,7642,7651,7654,7655,104],{},[72,7652,7653],{},"saber que el componente ya terminó de salir",", piensa en ",[16,7656,5294],{},[30,7658,156],{"id":155},[21,7660,7661],{},"No todo debe ir en estos hooks.",[21,7663,7664,7665,1697,7667,7669],{},"Evita ",[16,7666,7514],{},[16,7668,5294],{}," cuando:",[38,7671,7672,7678,7681,7684],{},[41,7673,7674,7675,104],{},"La lógica puede quedar encapsulada en un composable usando ",[16,7676,7677],{},"onScopeDispose",[41,7679,7680],{},"El recurso ya se limpia automáticamente y no requiere intervención manual.",[41,7682,7683],{},"Estás usando el hook para corregir un problema que en realidad viene de una mala estructura del componente.",[41,7685,7686],{},"El componente no se desmonta realmente, sino que solo se oculta.",[21,7688,7689],{},"Ese último punto importa mucho:",[38,7691,7692,7697,7703],{},[41,7693,7694,7696],{},[16,7695,7538],{}," puede desmontar un componente.",[41,7698,7699,7702],{},[16,7700,7701],{},"v-show"," solo lo oculta.",[41,7704,7705,7706,7708],{},"Un componente cacheado con ",[16,7707,5176],{}," puede desactivarse sin desmontarse.",[21,7710,7711],{},"Si confundes esos casos, esperarás un hook que nunca se ejecutará.",[30,7713,7715],{"id":7714},"comparación","Comparación",[5392,7717,7718,7733],{},[5395,7719,7720],{},[5398,7721,7722,7724,7727,7730],{},[5401,7723,5403],{},[5401,7725,7726],{},"Qué sigue disponible",[5401,7728,7729],{},"Uso natural",[5401,7731,7732],{},"Riesgo habitual",[5414,7734,7735,7750],{},[5398,7736,7737,7741,7744,7747],{},[5419,7738,7739],{},[16,7740,7514],{},[5419,7742,7743],{},"Instancia, refs, estado y recursos activos",[5419,7745,7746],{},"Limpiar listeners, timers, observers o abortar peticiones",[5419,7748,7749],{},"Dejar demasiado trabajo para después",[5398,7751,7752,7756,7759,7762],{},[5419,7753,7754],{},[16,7755,5294],{},[5419,7757,7758],{},"El componente ya salió del árbol y sus efectos fueron detenidos",[5419,7760,7761],{},"Trazas finales o integraciones puntuales",[5419,7763,7764],{},"Intentar hacer limpieza que dependía de la instancia viva",[21,7766,7767,7769,7770,104],{},[16,7768,5294],{}," existe, pero eso no significa que deba cargar con toda la responsabilidad del cierre. Si necesitas tocar algo que el componente abrió, normalmente llegaste tarde si esperas a ",[16,7771,5294],{},[30,7773,190],{"id":189},[192,7775,7777,7778,7780],{"id":7776},"_1-registrar-recursos-en-mounted-y-olvidarse-del-cierre","1. Registrar recursos en ",[16,7779,203],{}," y olvidarse del cierre",[21,7782,7783],{},"Es el error más común. El componente se monta correctamente, funciona durante un tiempo y luego empieza a comportarse de forma extraña porque un listener antiguo sigue respondiendo aunque la vista ya cambió.",[21,7785,7786],{},"Esto suele pasar con:",[38,7788,7789,7794,7799,7804,7808],{},[41,7790,7791],{},[16,7792,7793],{},"window.addEventListener()",[41,7795,7796],{},[16,7797,7798],{},"setInterval()",[41,7800,7801],{},[16,7802,7803],{},"IntersectionObserver",[41,7805,7806],{},[16,7807,7628],{},[41,7809,7810],{},"websockets o suscripciones externas",[21,7812,7813],{},"Si lo abriste manualmente, debes asumir que también te corresponde cerrarlo.",[192,7815,7817,7818],{"id":7816},"_2-dejar-toda-la-limpieza-en-unmounted","2. Dejar toda la limpieza en ",[16,7819,5294],{},[21,7821,7822,7824,7825,7827],{},[16,7823,5294],{}," no es el lugar ideal para todo. Si necesitas abortar una petición, desconectar un observer o retirar listeners mientras la instancia todavía es accesible, ",[16,7826,7514],{}," es más claro y más seguro.",[21,7829,7830,7831,7833],{},"Piensa en ",[16,7832,7514],{}," como el momento de desmontar la mesa antes de sacarla del salón.",[192,7835,7837],{"id":7836},"_3-confundir-ocultar-con-desmontar","3. Confundir ocultar con desmontar",[21,7839,7840,7841,7843,7844,7846],{},"Muchos desarrolladores esperan que ",[16,7842,7514],{}," se ejecute cuando un panel deja de verse. Pero si ese panel usa ",[16,7845,7701],{},", el componente sigue vivo.",[21,7848,7849,7850,7852,7853,104],{},"También ocurre con ",[16,7851,5176],{},": al cambiar de vista, el componente puede quedar desactivado y luego reactivarse sin pasar por ",[16,7854,5294],{},[21,7856,7857],{},"Si el problema es de activación o desactivación, los hooks correctos pueden ser otros.",[192,7859,7861],{"id":7860},"_4-lanzar-trabajo-nuevo-cuando-el-componente-ya-se-está-yendo","4. Lanzar trabajo nuevo cuando el componente ya se está yendo",[21,7863,7864,7865,7867],{},"No conviene iniciar nuevas tareas pesadas durante el desmontaje. Si en ",[16,7866,7514],{}," abres otra petición o empiezas otra suscripción, estás complicando justo el momento en que Vue intenta cerrar el componente.",[21,7869,7870],{},"La fase de desmontaje debería reducir trabajo, no crear más.",[30,7872,1946],{"id":1945},[192,7874,7876],{"id":7875},"limpiar-listeners-globales-al-salir-de-una-vista","Limpiar listeners globales al salir de una vista",[21,7878,7879],{},"Si una vista escucha eventos del navegador, esos listeners deben desaparecer cuando la ruta cambia. De lo contrario, terminarás reaccionando dos veces al mismo evento cuando el usuario vuelva.",[192,7881,7883],{"id":7882},"abortar-una-petición-pendiente","Abortar una petición pendiente",[21,7885,7886,7887,7889],{},"En componentes con navegación rápida, es normal que una solicitud siga en curso mientras el usuario ya abandonó la página. Cancelarla en ",[16,7888,7514],{}," evita trabajo innecesario y estados inconsistentes.",[192,7891,7893],{"id":7892},"dejar-una-traza-final-de-depuración","Dejar una traza final de depuración",[21,7895,7896,7898,7899,7902],{},[16,7897,5294],{}," puede ser útil para confirmar que el componente sí salió cuando estás investigando ",[3292,7900,7901],{},"remounts"," inesperados, cacheo o renders condicionales.",[267,7904,7906],{"className":269,"code":7905,"filename":271,"language":272,"meta":273,"style":273},"\u003Cscript setup lang=\"ts\">\nimport { onBeforeUnmount, onMounted, onUnmounted, ref } from 'vue'\n\nconst status = ref('Cargando estado...')\nconst totalTasks = ref\u003Cnumber | null>(null)\n\nlet controller: AbortController | null = null\n\nfunction syncOnlineStatus() {\n  status.value = navigator.onLine ? 'En línea' : 'Sin conexión'\n}\n\nasync function loadSummary() {\n  controller = new AbortController()\n\n  try {\n    const response = await fetch('/api/tasks/summary', {\n      signal: controller.signal\n    })\n\n    const data = await response.json() as { total: number }\n    totalTasks.value = data.total\n  }\n  catch (error) {\n    if (error instanceof DOMException && error.name === 'AbortError') {\n      return\n    }\n\n    console.error('No se pudo cargar el resumen', error)\n  }\n}\n\nonMounted(() => {\n  syncOnlineStatus()\n  window.addEventListener('online', syncOnlineStatus)\n  window.addEventListener('offline', syncOnlineStatus)\n  void loadSummary()\n})\n\nonBeforeUnmount(() => {\n  window.removeEventListener('online', syncOnlineStatus)\n  window.removeEventListener('offline', syncOnlineStatus)\n  controller?.abort()\n})\n\nonUnmounted(() => {\n  console.info('TaskSummary ya salió del árbol')\n})\n\u003C/script>\n\n\u003Ctemplate>\n  \u003Csection class=\"task-summary\">\n    \u003Cp>{{ status }}\u003C/p>\n    \u003Cp v-if=\"totalTasks !== null\">\n      Tareas registradas: {{ totalTasks }}\n    \u003C/p>\n  \u003C/section>\n\u003C/template>\n",[16,7907,7908,7924,7935,7939,7956,7982,7986,8007,8011,8020,8039,8043,8047,8058,8071,8075,8081,8100,8105,8109,8113,8143,8153,8157,8164,8189,8194,8198,8202,8216,8220,8224,8228,8238,8245,8261,8274,8283,8287,8291,8302,8315,8327,8337,8341,8345,8356,8369,8373,8381,8385,8393,8408,8420,8435,8440,8448,8456],{"__ignoreMap":273},[277,7909,7910,7912,7914,7916,7918,7920,7922],{"class":279,"line":280},[277,7911,284],{"class":283},[277,7913,288],{"class":287},[277,7915,292],{"class":291},[277,7917,295],{"class":291},[277,7919,298],{"class":283},[277,7921,302],{"class":301},[277,7923,305],{"class":283},[277,7925,7926,7928,7931,7933],{"class":279,"line":308},[277,7927,312],{"class":311},[277,7929,7930],{"class":283}," { onBeforeUnmount, onMounted, onUnmounted, ref } ",[277,7932,318],{"class":311},[277,7934,321],{"class":301},[277,7936,7937],{"class":279,"line":324},[277,7938,328],{"emptyLinePlaceholder":327},[277,7940,7941,7943,7945,7947,7949,7951,7954],{"class":279,"line":331},[277,7942,405],{"class":311},[277,7944,5726],{"class":356},[277,7946,340],{"class":311},[277,7948,413],{"class":291},[277,7950,448],{"class":283},[277,7952,7953],{"class":301},"'Cargando estado...'",[277,7955,433],{"class":283},[277,7957,7958,7960,7963,7965,7967,7969,7972,7974,7976,7978,7980],{"class":279,"line":346},[277,7959,405],{"class":311},[277,7961,7962],{"class":356}," totalTasks",[277,7964,340],{"class":311},[277,7966,413],{"class":291},[277,7968,284],{"class":283},[277,7970,7971],{"class":356},"number",[277,7973,421],{"class":311},[277,7975,424],{"class":356},[277,7977,427],{"class":283},[277,7979,430],{"class":356},[277,7981,433],{"class":283},[277,7983,7984],{"class":279,"line":360},[277,7985,328],{"emptyLinePlaceholder":327},[277,7987,7988,7991,7994,7996,7999,8001,8003,8005],{"class":279,"line":371},[277,7989,7990],{"class":311},"let",[277,7992,7993],{"class":283}," controller",[277,7995,353],{"class":311},[277,7997,7998],{"class":291}," AbortController",[277,8000,421],{"class":311},[277,8002,424],{"class":356},[277,8004,340],{"class":311},[277,8006,6177],{"class":356},[277,8008,8009],{"class":279,"line":381},[277,8010,328],{"emptyLinePlaceholder":327},[277,8012,8013,8015,8018],{"class":279,"line":391},[277,8014,2460],{"class":311},[277,8016,8017],{"class":291}," syncOnlineStatus",[277,8019,473],{"class":283},[277,8021,8022,8024,8026,8029,8031,8034,8036],{"class":279,"line":397},[277,8023,5943],{"class":283},[277,8025,298],{"class":311},[277,8027,8028],{"class":283}," navigator.onLine ",[277,8030,2285],{"class":311},[277,8032,8033],{"class":301}," 'En línea'",[277,8035,6244],{"class":311},[277,8037,8038],{"class":301}," 'Sin conexión'\n",[277,8040,8041],{"class":279,"line":402},[277,8042,394],{"class":283},[277,8044,8045],{"class":279,"line":436},[277,8046,328],{"emptyLinePlaceholder":327},[277,8048,8049,8051,8053,8056],{"class":279,"line":456},[277,8050,464],{"class":311},[277,8052,467],{"class":311},[277,8054,8055],{"class":291}," loadSummary",[277,8057,473],{"class":283},[277,8059,8060,8063,8065,8067,8069],{"class":279,"line":461},[277,8061,8062],{"class":283},"  controller ",[277,8064,298],{"class":311},[277,8066,526],{"class":311},[277,8068,7998],{"class":291},[277,8070,622],{"class":283},[277,8072,8073],{"class":279,"line":476},[277,8074,328],{"emptyLinePlaceholder":327},[277,8076,8077,8079],{"class":279,"line":500},[277,8078,609],{"class":311},[277,8080,343],{"class":283},[277,8082,8083,8085,8087,8089,8091,8093,8095,8098],{"class":279,"line":505},[277,8084,2233],{"class":311},[277,8086,482],{"class":356},[277,8088,340],{"class":311},[277,8090,487],{"class":311},[277,8092,490],{"class":291},[277,8094,448],{"class":283},[277,8096,8097],{"class":301},"'/api/tasks/summary'",[277,8099,2360],{"class":283},[277,8101,8102],{"class":279,"line":520},[277,8103,8104],{"class":283},"      signal: controller.signal\n",[277,8106,8107],{"class":279,"line":539},[277,8108,2913],{"class":283},[277,8110,8111],{"class":279,"line":545},[277,8112,328],{"emptyLinePlaceholder":327},[277,8114,8115,8117,8119,8121,8123,8125,8127,8130,8132,8134,8137,8139,8141],{"class":279,"line":550},[277,8116,2233],{"class":311},[277,8118,5978],{"class":356},[277,8120,340],{"class":311},[277,8122,487],{"class":311},[277,8124,563],{"class":283},[277,8126,566],{"class":291},[277,8128,8129],{"class":283},"() ",[277,8131,572],{"class":311},[277,8133,5995],{"class":283},[277,8135,8136],{"class":349},"total",[277,8138,353],{"class":311},[277,8140,2473],{"class":356},[277,8142,2179],{"class":283},[277,8144,8145,8148,8150],{"class":279,"line":578},[277,8146,8147],{"class":283},"    totalTasks.value ",[277,8149,298],{"class":311},[277,8151,8152],{"class":283}," data.total\n",[277,8154,8155],{"class":279,"line":583},[277,8156,542],{"class":283},[277,8158,8159,8162],{"class":279,"line":588},[277,8160,8161],{"class":311},"  catch",[277,8163,634],{"class":283},[277,8165,8166,8168,8171,8173,8176,8179,8182,8184,8187],{"class":279,"line":606},[277,8167,1336],{"class":311},[277,8169,8170],{"class":283}," (error ",[277,8172,652],{"class":311},[277,8174,8175],{"class":291}," DOMException",[277,8177,8178],{"class":311}," &&",[277,8180,8181],{"class":283}," error.name ",[277,8183,2503],{"class":311},[277,8185,8186],{"class":301}," 'AbortError'",[277,8188,2476],{"class":283},[277,8190,8191],{"class":279,"line":614},[277,8192,8193],{"class":311},"      return\n",[277,8195,8196],{"class":279,"line":625},[277,8197,1126],{"class":283},[277,8199,8200],{"class":279,"line":637},[277,8201,328],{"emptyLinePlaceholder":327},[277,8203,8204,8206,8208,8210,8213],{"class":279,"line":646},[277,8205,2881],{"class":283},[277,8207,3349],{"class":291},[277,8209,448],{"class":283},[277,8211,8212],{"class":301},"'No se pudo cargar el resumen'",[277,8214,8215],{"class":283},", error)\n",[277,8217,8218],{"class":279,"line":668},[277,8219,542],{"class":283},[277,8221,8222],{"class":279,"line":673},[277,8223,394],{"class":283},[277,8225,8226],{"class":279,"line":679},[277,8227,328],{"emptyLinePlaceholder":327},[277,8229,8230,8232,8234,8236],{"class":279,"line":684},[277,8231,687],{"class":291},[277,8233,2203],{"class":283},[277,8235,601],{"class":311},[277,8237,343],{"class":283},[277,8239,8240,8243],{"class":279,"line":700},[277,8241,8242],{"class":291},"  syncOnlineStatus",[277,8244,622],{"class":283},[277,8246,8247,8250,8253,8255,8258],{"class":279,"line":717},[277,8248,8249],{"class":283},"  window.",[277,8251,8252],{"class":291},"addEventListener",[277,8254,448],{"class":283},[277,8256,8257],{"class":301},"'online'",[277,8259,8260],{"class":283},", syncOnlineStatus)\n",[277,8262,8263,8265,8267,8269,8272],{"class":279,"line":722},[277,8264,8249],{"class":283},[277,8266,8252],{"class":291},[277,8268,448],{"class":283},[277,8270,8271],{"class":301},"'offline'",[277,8273,8260],{"class":283},[277,8275,8276,8279,8281],{"class":279,"line":729},[277,8277,8278],{"class":311},"  void",[277,8280,8055],{"class":291},[277,8282,622],{"class":283},[277,8284,8285],{"class":279,"line":738},[277,8286,676],{"class":283},[277,8288,8289],{"class":279,"line":747},[277,8290,328],{"emptyLinePlaceholder":327},[277,8292,8293,8296,8298,8300],{"class":279,"line":754},[277,8294,8295],{"class":291},"onBeforeUnmount",[277,8297,2203],{"class":283},[277,8299,601],{"class":311},[277,8301,343],{"class":283},[277,8303,8304,8306,8309,8311,8313],{"class":279,"line":772},[277,8305,8249],{"class":283},[277,8307,8308],{"class":291},"removeEventListener",[277,8310,448],{"class":283},[277,8312,8257],{"class":301},[277,8314,8260],{"class":283},[277,8316,8317,8319,8321,8323,8325],{"class":279,"line":777},[277,8318,8249],{"class":283},[277,8320,8308],{"class":291},[277,8322,448],{"class":283},[277,8324,8271],{"class":301},[277,8326,8260],{"class":283},[277,8328,8329,8332,8335],{"class":279,"line":782},[277,8330,8331],{"class":283},"  controller?.",[277,8333,8334],{"class":291},"abort",[277,8336,622],{"class":283},[277,8338,8339],{"class":279,"line":792},[277,8340,676],{"class":283},[277,8342,8343],{"class":279,"line":797},[277,8344,328],{"emptyLinePlaceholder":327},[277,8346,8347,8350,8352,8354],{"class":279,"line":807},[277,8348,8349],{"class":291},"onUnmounted",[277,8351,2203],{"class":283},[277,8353,601],{"class":311},[277,8355,343],{"class":283},[277,8357,8358,8360,8362,8364,8367],{"class":279,"line":826},[277,8359,2349],{"class":283},[277,8361,3266],{"class":291},[277,8363,448],{"class":283},[277,8365,8366],{"class":301},"'TaskSummary ya salió del árbol'",[277,8368,433],{"class":283},[277,8370,8371],{"class":279,"line":849},[277,8372,676],{"class":283},[277,8374,8375,8377,8379],{"class":279,"line":854},[277,8376,785],{"class":283},[277,8378,288],{"class":287},[277,8380,305],{"class":283},[277,8382,8383],{"class":279,"line":876},[277,8384,328],{"emptyLinePlaceholder":327},[277,8386,8387,8389,8391],{"class":279,"line":891},[277,8388,284],{"class":283},[277,8390,802],{"class":287},[277,8392,305],{"class":283},[277,8394,8395,8397,8399,8401,8403,8406],{"class":279,"line":905},[277,8396,810],{"class":283},[277,8398,4121],{"class":287},[277,8400,816],{"class":291},[277,8402,298],{"class":283},[277,8404,8405],{"class":301},"\"task-summary\"",[277,8407,305],{"class":283},[277,8409,8410,8412,8414,8416,8418],{"class":279,"line":919},[277,8411,829],{"class":283},[277,8413,21],{"class":287},[277,8415,6367],{"class":283},[277,8417,21],{"class":287},[277,8419,305],{"class":283},[277,8421,8422,8424,8426,8428,8430,8433],{"class":279,"line":929},[277,8423,829],{"class":283},[277,8425,21],{"class":287},[277,8427,834],{"class":291},[277,8429,298],{"class":283},[277,8431,8432],{"class":301},"\"totalTasks !== null\"",[277,8434,305],{"class":283},[277,8436,8437],{"class":279,"line":934},[277,8438,8439],{"class":283},"      Tareas registradas: {{ totalTasks }}\n",[277,8441,8442,8444,8446],{"class":279,"line":951},[277,8443,922],{"class":283},[277,8445,21],{"class":287},[277,8447,305],{"class":283},[277,8449,8450,8452,8454],{"class":279,"line":961},[277,8451,954],{"class":283},[277,8453,4121],{"class":287},[277,8455,305],{"class":283},[277,8457,8458,8460,8462],{"class":279,"line":1473},[277,8459,785],{"class":283},[277,8461,802],{"class":287},[277,8463,305],{"class":283},[267,8465,8467],{"className":269,"code":8466,"filename":971,"language":272,"meta":273,"style":273},"\u003Cscript>\nexport default {\n  data() {\n    return {\n      status: 'Cargando estado...',\n      totalTasks: null,\n      controller: null\n    }\n  },\n\n  mounted() {\n    this.syncOnlineStatus()\n    window.addEventListener('online', this.syncOnlineStatus)\n    window.addEventListener('offline', this.syncOnlineStatus)\n    void this.loadSummary()\n  },\n\n  beforeUnmount() {\n    window.removeEventListener('online', this.syncOnlineStatus)\n    window.removeEventListener('offline', this.syncOnlineStatus)\n    this.controller?.abort()\n  },\n\n  unmounted() {\n    console.info('TaskSummary ya salió del árbol')\n  },\n\n  methods: {\n    syncOnlineStatus() {\n      this.status = navigator.onLine ? 'En línea' : 'Sin conexión'\n    },\n\n    async loadSummary() {\n      this.controller = new AbortController()\n\n      try {\n        const response = await fetch('/api/tasks/summary', {\n          signal: this.controller.signal\n        })\n\n        const data = await response.json()\n        this.totalTasks = data.total\n      }\n      catch (error) {\n        if (error instanceof DOMException && error.name === 'AbortError') {\n          return\n        }\n\n        console.error('No se pudo cargar el resumen', error)\n      }\n    }\n  }\n}\n\u003C/script>\n\n\u003Ctemplate>\n  \u003Csection class=\"task-summary\">\n    \u003Cp>{{ status }}\u003C/p>\n    \u003Cp v-if=\"totalTasks !== null\">\n      Tareas registradas: {{ totalTasks }}\n    \u003C/p>\n  \u003C/section>\n\u003C/template>\n",[16,8468,8469,8477,8485,8491,8497,8505,8514,8522,8526,8530,8534,8540,8551,8569,8585,8598,8602,8606,8613,8629,8645,8656,8660,8664,8671,8683,8687,8691,8695,8702,8720,8724,8728,8736,8751,8755,8762,8780,8790,8795,8799,8815,8827,8831,8838,8859,8864,8869,8873,8886,8890,8894,8898,8902,8910,8914,8922,8936,8948,8962,8966,8974,8982],{"__ignoreMap":273},[277,8470,8471,8473,8475],{"class":279,"line":280},[277,8472,284],{"class":283},[277,8474,288],{"class":287},[277,8476,305],{"class":283},[277,8478,8479,8481,8483],{"class":279,"line":308},[277,8480,1057],{"class":311},[277,8482,1060],{"class":311},[277,8484,343],{"class":283},[277,8486,8487,8489],{"class":279,"line":324},[277,8488,1086],{"class":291},[277,8490,473],{"class":283},[277,8492,8493,8495],{"class":279,"line":331},[277,8494,1093],{"class":311},[277,8496,343],{"class":283},[277,8498,8499,8501,8503],{"class":279,"line":346},[277,8500,6620],{"class":283},[277,8502,7953],{"class":301},[277,8504,1077],{"class":283},[277,8506,8507,8510,8512],{"class":279,"line":360},[277,8508,8509],{"class":283},"      totalTasks: ",[277,8511,430],{"class":356},[277,8513,1077],{"class":283},[277,8515,8516,8519],{"class":279,"line":371},[277,8517,8518],{"class":283},"      controller: ",[277,8520,8521],{"class":356},"null\n",[277,8523,8524],{"class":279,"line":381},[277,8525,1126],{"class":283},[277,8527,8528],{"class":279,"line":391},[277,8529,1131],{"class":283},[277,8531,8532],{"class":279,"line":397},[277,8533,328],{"emptyLinePlaceholder":327},[277,8535,8536,8538],{"class":279,"line":402},[277,8537,6784],{"class":291},[277,8539,473],{"class":283},[277,8541,8542,8544,8546,8549],{"class":279,"line":436},[277,8543,4724],{"class":356},[277,8545,104],{"class":283},[277,8547,8548],{"class":291},"syncOnlineStatus",[277,8550,622],{"class":283},[277,8552,8553,8556,8558,8560,8562,8564,8566],{"class":279,"line":456},[277,8554,8555],{"class":283},"    window.",[277,8557,8252],{"class":291},[277,8559,448],{"class":283},[277,8561,8257],{"class":301},[277,8563,225],{"class":283},[277,8565,1341],{"class":356},[277,8567,8568],{"class":283},".syncOnlineStatus)\n",[277,8570,8571,8573,8575,8577,8579,8581,8583],{"class":279,"line":461},[277,8572,8555],{"class":283},[277,8574,8252],{"class":291},[277,8576,448],{"class":283},[277,8578,8271],{"class":301},[277,8580,225],{"class":283},[277,8582,1341],{"class":356},[277,8584,8568],{"class":283},[277,8586,8587,8589,8591,8593,8596],{"class":279,"line":476},[277,8588,6111],{"class":311},[277,8590,1268],{"class":356},[277,8592,104],{"class":283},[277,8594,8595],{"class":291},"loadSummary",[277,8597,622],{"class":283},[277,8599,8600],{"class":279,"line":500},[277,8601,1131],{"class":283},[277,8603,8604],{"class":279,"line":505},[277,8605,328],{"emptyLinePlaceholder":327},[277,8607,8608,8611],{"class":279,"line":520},[277,8609,8610],{"class":291},"  beforeUnmount",[277,8612,473],{"class":283},[277,8614,8615,8617,8619,8621,8623,8625,8627],{"class":279,"line":539},[277,8616,8555],{"class":283},[277,8618,8308],{"class":291},[277,8620,448],{"class":283},[277,8622,8257],{"class":301},[277,8624,225],{"class":283},[277,8626,1341],{"class":356},[277,8628,8568],{"class":283},[277,8630,8631,8633,8635,8637,8639,8641,8643],{"class":279,"line":545},[277,8632,8555],{"class":283},[277,8634,8308],{"class":291},[277,8636,448],{"class":283},[277,8638,8271],{"class":301},[277,8640,225],{"class":283},[277,8642,1341],{"class":356},[277,8644,8568],{"class":283},[277,8646,8647,8649,8652,8654],{"class":279,"line":550},[277,8648,4724],{"class":356},[277,8650,8651],{"class":283},".controller?.",[277,8653,8334],{"class":291},[277,8655,622],{"class":283},[277,8657,8658],{"class":279,"line":578},[277,8659,1131],{"class":283},[277,8661,8662],{"class":279,"line":583},[277,8663,328],{"emptyLinePlaceholder":327},[277,8665,8666,8669],{"class":279,"line":588},[277,8667,8668],{"class":291},"  unmounted",[277,8670,473],{"class":283},[277,8672,8673,8675,8677,8679,8681],{"class":279,"line":606},[277,8674,2881],{"class":283},[277,8676,3266],{"class":291},[277,8678,448],{"class":283},[277,8680,8366],{"class":301},[277,8682,433],{"class":283},[277,8684,8685],{"class":279,"line":614},[277,8686,1131],{"class":283},[277,8688,8689],{"class":279,"line":625},[277,8690,328],{"emptyLinePlaceholder":327},[277,8692,8693],{"class":279,"line":637},[277,8694,1140],{"class":283},[277,8696,8697,8700],{"class":279,"line":646},[277,8698,8699],{"class":291},"    syncOnlineStatus",[277,8701,473],{"class":283},[277,8703,8704,8706,8708,8710,8712,8714,8716,8718],{"class":279,"line":668},[277,8705,1212],{"class":356},[277,8707,6821],{"class":283},[277,8709,298],{"class":311},[277,8711,8028],{"class":283},[277,8713,2285],{"class":311},[277,8715,8033],{"class":301},[277,8717,6244],{"class":311},[277,8719,8038],{"class":301},[277,8721,8722],{"class":279,"line":673},[277,8723,7016],{"class":283},[277,8725,8726],{"class":279,"line":679},[277,8727,328],{"emptyLinePlaceholder":327},[277,8729,8730,8732,8734],{"class":279,"line":684},[277,8731,1145],{"class":311},[277,8733,8055],{"class":291},[277,8735,473],{"class":283},[277,8737,8738,8740,8743,8745,8747,8749],{"class":279,"line":700},[277,8739,1212],{"class":356},[277,8741,8742],{"class":283},".controller ",[277,8744,298],{"class":311},[277,8746,526],{"class":311},[277,8748,7998],{"class":291},[277,8750,622],{"class":283},[277,8752,8753],{"class":279,"line":717},[277,8754,328],{"emptyLinePlaceholder":327},[277,8756,8757,8760],{"class":279,"line":722},[277,8758,8759],{"class":311},"      try",[277,8761,343],{"class":283},[277,8763,8764,8766,8768,8770,8772,8774,8776,8778],{"class":279,"line":729},[277,8765,2774],{"class":311},[277,8767,482],{"class":356},[277,8769,340],{"class":311},[277,8771,487],{"class":311},[277,8773,490],{"class":291},[277,8775,448],{"class":283},[277,8777,8097],{"class":301},[277,8779,2360],{"class":283},[277,8781,8782,8785,8787],{"class":279,"line":738},[277,8783,8784],{"class":283},"          signal: ",[277,8786,1341],{"class":356},[277,8788,8789],{"class":283},".controller.signal\n",[277,8791,8792],{"class":279,"line":747},[277,8793,8794],{"class":283},"        })\n",[277,8796,8797],{"class":279,"line":754},[277,8798,328],{"emptyLinePlaceholder":327},[277,8800,8801,8803,8805,8807,8809,8811,8813],{"class":279,"line":772},[277,8802,2774],{"class":311},[277,8804,5978],{"class":356},[277,8806,340],{"class":311},[277,8808,487],{"class":311},[277,8810,563],{"class":283},[277,8812,566],{"class":291},[277,8814,622],{"class":283},[277,8816,8817,8820,8823,8825],{"class":279,"line":777},[277,8818,8819],{"class":356},"        this",[277,8821,8822],{"class":283},".totalTasks ",[277,8824,298],{"class":311},[277,8826,8152],{"class":283},[277,8828,8829],{"class":279,"line":782},[277,8830,1203],{"class":283},[277,8832,8833,8836],{"class":279,"line":792},[277,8834,8835],{"class":311},"      catch",[277,8837,634],{"class":283},[277,8839,8840,8843,8845,8847,8849,8851,8853,8855,8857],{"class":279,"line":797},[277,8841,8842],{"class":311},"        if",[277,8844,8170],{"class":283},[277,8846,652],{"class":311},[277,8848,8175],{"class":291},[277,8850,8178],{"class":311},[277,8852,8181],{"class":283},[277,8854,2503],{"class":311},[277,8856,8186],{"class":301},[277,8858,2476],{"class":283},[277,8860,8861],{"class":279,"line":807},[277,8862,8863],{"class":311},"          return\n",[277,8865,8866],{"class":279,"line":826},[277,8867,8868],{"class":283},"        }\n",[277,8870,8871],{"class":279,"line":849},[277,8872,328],{"emptyLinePlaceholder":327},[277,8874,8875,8878,8880,8882,8884],{"class":279,"line":854},[277,8876,8877],{"class":283},"        console.",[277,8879,3349],{"class":291},[277,8881,448],{"class":283},[277,8883,8212],{"class":301},[277,8885,8215],{"class":283},[277,8887,8888],{"class":279,"line":876},[277,8889,1203],{"class":283},[277,8891,8892],{"class":279,"line":891},[277,8893,1126],{"class":283},[277,8895,8896],{"class":279,"line":905},[277,8897,542],{"class":283},[277,8899,8900],{"class":279,"line":919},[277,8901,394],{"class":283},[277,8903,8904,8906,8908],{"class":279,"line":929},[277,8905,785],{"class":283},[277,8907,288],{"class":287},[277,8909,305],{"class":283},[277,8911,8912],{"class":279,"line":934},[277,8913,328],{"emptyLinePlaceholder":327},[277,8915,8916,8918,8920],{"class":279,"line":951},[277,8917,284],{"class":283},[277,8919,802],{"class":287},[277,8921,305],{"class":283},[277,8923,8924,8926,8928,8930,8932,8934],{"class":279,"line":961},[277,8925,810],{"class":283},[277,8927,4121],{"class":287},[277,8929,816],{"class":291},[277,8931,298],{"class":283},[277,8933,8405],{"class":301},[277,8935,305],{"class":283},[277,8937,8938,8940,8942,8944,8946],{"class":279,"line":1473},[277,8939,829],{"class":283},[277,8941,21],{"class":287},[277,8943,6367],{"class":283},[277,8945,21],{"class":287},[277,8947,305],{"class":283},[277,8949,8950,8952,8954,8956,8958,8960],{"class":279,"line":1478},[277,8951,829],{"class":283},[277,8953,21],{"class":287},[277,8955,834],{"class":291},[277,8957,298],{"class":283},[277,8959,8432],{"class":301},[277,8961,305],{"class":283},[277,8963,8964],{"class":279,"line":1497},[277,8965,8439],{"class":283},[277,8967,8968,8970,8972],{"class":279,"line":1510},[277,8969,922],{"class":283},[277,8971,21],{"class":287},[277,8973,305],{"class":283},[277,8975,8976,8978,8980],{"class":279,"line":1523},[277,8977,954],{"class":283},[277,8979,4121],{"class":287},[277,8981,305],{"class":283},[277,8983,8984,8986,8988],{"class":279,"line":1536},[277,8985,785],{"class":283},[277,8987,802],{"class":287},[277,8989,305],{"class":283},[38,8991,8992,8997,9002],{},[41,8993,8994,8996],{},[16,8995,210],{}," abre recursos externos.",[41,8998,8999,9001],{},[16,9000,7572],{}," realiza la limpieza real.",[41,9003,9004,9006],{},[16,9005,7577],{}," deja una confirmación final de que el componente ya terminó de salir.",[30,9008,1596],{"id":1595},[38,9010,9011,9016,9021,9024],{},[41,9012,9013,9015],{},[16,9014,7514],{}," es el hook principal para limpiar lo que el componente abrió.",[41,9017,9018,9020],{},[16,9019,5294],{}," confirma que el desmontaje ya terminó.",[41,9022,9023],{},"Si el componente solo se oculta o queda cacheado, estos hooks pueden no ejecutarse.",[41,9025,9026],{},"El criterio más útil es simple: si registraste listeners, timers, observers o peticiones manuales, define también su cierre.",[1606,9028,3118],{},{"title":273,"searchDepth":308,"depth":308,"links":9030},[9031,9032,9033,9034,9035,9043,9048],{"id":60,"depth":308,"text":61},{"id":128,"depth":308,"text":129},{"id":155,"depth":308,"text":156},{"id":7714,"depth":308,"text":7715},{"id":189,"depth":308,"text":190,"children":9036},[9037,9039,9041,9042],{"id":7776,"depth":324,"text":9038},"1. Registrar recursos en mounted y olvidarse del cierre",{"id":7816,"depth":324,"text":9040},"2. Dejar toda la limpieza en unmounted",{"id":7836,"depth":324,"text":7837},{"id":7860,"depth":324,"text":7861},{"id":1945,"depth":308,"text":1946,"children":9044},[9045,9046,9047],{"id":7875,"depth":324,"text":7876},{"id":7882,"depth":324,"text":7883},{"id":7892,"depth":324,"text":7893},{"id":1595,"depth":308,"text":1596},"https://res.cloudinary.com/denj4fg7f/image/upload/v1773284773/vue-lifecycle-unmounting-phase-beforeunmount-unmounted_f9gqy0.png","Ilustración de la fase de desmontaje del ciclo de vida de Vue con beforeUnmount y unmounted","2026-03-12","Qué ocurre cuando un componente sale de pantalla y cómo usar beforeUnmount y unmounted para limpiar listeners, timers y efectos sin dejar fugas ni comportamientos extraños.",{"script":9054},[9055],{"type":1632,"key":1633,"data-nuxt-schema-org":327,"nodes":9056},[9057],{"headline":7505,"author":9058,"datePublished":9059,"@type":1640},{"name":1637,"@type":1638},"2026-03-11T22:00:00-05:00",{"updatedAt":9059,"coverCaption":9061,"author":1637,"keywords":9062},"La fase de desmontaje ocurre cuando Vue retira un componente del árbol activo",[1645,7514,5294,8295,9063],"cleanup","/blog/vue-lifecycle-unmounting-phase-beforeunmount-unmounted.es",[9066],{"headline":7505,"author":9067,"datePublished":9059,"@type":1640},{"name":1637,"@type":1638},{"title":7505,"description":9052},"blog/vue-lifecycle-unmounting-phase-beforeunmount-unmounted.es",[9071,9072,9073],{"tag":1660,"color":1661},{"tag":1668,"color":1669},{"tag":9074,"color":9075},"Básico","#B173BF","u3uA2hwr6vij4bD_x4aML_Z12BWGhGUVDPdFltud6TU",{"id":9078,"title":9079,"body":9080,"cover":10631,"coverAlt":10632,"date":10633,"description":10634,"draft":1627,"extension":1628,"head":10635,"locale":1641,"meta":10642,"navigation":327,"path":10646,"schemaOrg":10647,"seo":10650,"series":1653,"seriesDescription":1654,"seriesOrder":331,"seriesTitle":1655,"slug":1656,"stem":10651,"tags":10652,"__hash__":10658},"blog/blog/vue-lifecycle-update-phase-beforeupdate-updated.es.md","Ciclos de vida en Vue: fase de actualización (beforeUpdate, updated)",{"type":8,"value":9081,"toc":10619},[9082,9092,9098,9105,9108,9110,9113,9116,9132,9137,9149,9152,9182,9193,9198,9203,9205,9211,9213,9230,9238,9247,9249,9252,9258,9277,9287,9289,9298,9301,9310,9326,9333,9336,9428,9431,9438,9451,9457,9465,9468,9473,9477,9483,9486,9497,9500,9509,9511,9515,9518,9521,9524,9528,9535,9540,9544,9547,9630,9633,10108,10559,10571,10573,10616],[11,9083,9085,9086,225,9089,19],{"id":9084},"ciclos-de-vida-en-vue-fase-de-actualización-beforeupdate-updated","Ciclos de vida en Vue: fase de actualización (",[16,9087,9088],{},"beforeUpdate",[16,9090,9091],{},"updated",[21,9093,9094,9095,9097],{},"Muchos componentes no fallan al crearse ni al montarse. Fallan después, cuando el estado cambia y la interfaz empieza a re-renderizarse varias veces. Ahí aparecen mediciones incorrectas, efectos duplicados o hooks usados como si fueran un ",[16,9096,1735],{}," global.",[21,9099,9100,9101,9104],{},"La fase de actualización existe precisamente para entender ese momento: ",[72,9102,9103],{},"cuándo Vue todavía no ha reflejado el cambio en el DOM y cuándo ya terminó de hacerlo",". Si manejas bien esa diferencia, evitas código reactivo confuso y componentes que se vuelven difíciles de mantener.",[21,9106,9107],{},"En aplicaciones reales, muchos problemas de UI —scroll roto, mediciones incorrectas o integraciones con librerías externas que se desincronizan— aparecen justo en este punto del ciclo de vida.",[11,9109,61],{"id":60},[21,9111,9112],{},"Cada vez que una dependencia reactiva usada por el componente cambia, Vue programa una nueva renderización.",[21,9114,9115],{},"Durante ese proceso aparecen dos hooks:",[38,9117,9118,9125],{},[41,9119,9120,7552,9122,104],{},[16,9121,9088],{},[72,9123,9124],{},"después de que el estado cambió, pero antes de que Vue actualice el DOM",[41,9126,9127,7552,9129,104],{},[16,9128,9091],{},[72,9130,9131],{},"después de que Vue ya aplicó los cambios al DOM",[21,9133,110,9134,9136],{},[72,9135,271],{},", los equivalentes son:",[38,9138,9139,9144],{},[41,9140,9141],{},[16,9142,9143],{},"onBeforeUpdate()",[41,9145,9146],{},[16,9147,9148],{},"onUpdated()",[21,9150,9151],{},"La idea práctica es bastante simple:",[38,9153,9154,9162,9169],{},[41,9155,7642,9156,225,9159,9161],{},[72,9157,9158],{},"ver el estado anterior del DOM antes de que cambie",[16,9160,9088],{}," es el momento.",[41,9163,7642,9164,225,9167,9161],{},[72,9165,9166],{},"leer o manipular el DOM ya actualizado",[16,9168,9091],{},[41,9170,9171,9172,9175,9176,9178,9179,9181],{},"Si lo que quieres es ",[72,9173,9174],{},"reaccionar a un dato concreto",", normalmente un ",[16,9177,1735],{}," o un ",[16,9180,1732],{}," será más claro que cualquiera de estos hooks.",[21,9183,9184,9185,9188,9189,9192],{},"También conviene recordar algo importante: ",[72,9186,9187],{},"Vue agrupa cambios reactivos y actualizaciones del DOM",". Esto significa que estos hooks no expresan ",[3292,9190,9191],{},"\"cambió esta variable\"",", sino algo más amplio:",[3111,9194,9195],{},[21,9196,9197],{},"\"El componente está entrando o saliendo de un ciclo completo de actualización.\"",[21,9199,9200,9201,104],{},"Por eso no son buenos sustitutos de ",[16,9202,1735],{},[11,9204,129],{"id":128},[21,9206,9207,9208,104],{},"La fase de actualización encaja bien cuando tu lógica depende del ",[72,9209,9210],{},"paso entre un render y el siguiente",[21,9212,3305],{},[38,9214,9215,9218,9221,9224,9227],{},[41,9216,9217],{},"Comparar el DOM visible antes y después de una actualización.",[41,9219,9220],{},"Ajustar scroll o foco después de que cambió una lista renderizada.",[41,9222,9223],{},"Recalcular una integración con una librería externa cuando el marcado ya está actualizado.",[41,9225,9226],{},"Sincronizar layouts dinámicos.",[41,9228,9229],{},"Depurar renderizados excesivos o entender por qué una vista se está refrescando.",[21,9231,9232,9234,9235,104],{},[16,9233,9088],{}," suele ser útil cuando quieres ",[72,9236,9237],{},"leer o limpiar algo del DOM anterior antes de que Vue lo reemplace",[21,9239,9240,9242,9243,9246],{},[16,9241,9091],{}," tiene sentido cuando necesitas ",[72,9244,9245],{},"confirmar que el HTML ya refleja el nuevo estado"," y solo entonces medir, desplazar o sincronizar una librería.",[11,9248,156],{"id":155},[21,9250,9251],{},"No todo cambio reactivo necesita estos hooks.",[21,9253,7664,9254,1697,9256,7669],{},[16,9255,9088],{},[16,9257,9091],{},[38,9259,9260,9263,9268,9271],{},[41,9261,9262],{},"Solo quieres reaccionar a una propiedad concreta.",[41,9264,9265,9266,104],{},"Puedes resolver el problema con ",[16,9267,1732],{},[41,9269,9270],{},"La lógica no depende del DOM.",[41,9272,9273,9274,9276],{},"Estás pensando en ",[16,9275,9091],{}," para disparar más cambios de estado sin una condición clara.",[21,9278,9279,9280,9282,9283,9286],{},"En especial, ",[16,9281,9091],{}," puede volverse peligroso si dentro cambias el mismo estado que provocó el render. Ahí es donde nacen los ",[72,9284,9285],{},"bucles de actualización"," o los renders innecesarios.",[11,9288,190],{"id":189},[30,9290,9292,9293,9295,9296],{"id":9291},"usar-updated-como-reemplazo-de-watch","Usar ",[16,9294,9091],{}," como reemplazo de ",[16,9297,1735],{},[21,9299,9300],{},"Es un error muy frecuente.",[21,9302,9303,9305,9306,9309],{},[16,9304,9091],{}," se ejecuta ",[72,9307,9308],{},"cuando el componente ya se volvió a renderizar",", no cuando una variable específica cambió con intención semántica.",[21,9311,9312,9313,225,9316,225,9319,9322,9323,9325],{},"Si necesitas reaccionar a ",[16,9314,9315],{},"search",[16,9317,9318],{},"page",[16,9320,9321],{},"filters"," o cualquier dato concreto, un ",[16,9324,1735],{}," comunica mejor el objetivo y reduce trabajo innecesario.",[30,9327,9329,9330,9332],{"id":9328},"modificar-estado-dentro-de-updated-sin-control","Modificar estado dentro de ",[16,9331,9091],{}," sin control",[21,9334,9335],{},"Este es el camino clásico hacia un bucle:",[267,9337,9341],{"className":269,"code":9338,"filename":9339,"highlights":9340,"language":272,"meta":273,"style":273},"\u003Cscript setup lang=\"ts\">\nimport { onUpdated, ref } from 'vue'\n\nconst count = ref(0)\n\nonUpdated(() => {\n  count.value++\n})\n\u003C/script>\n","App.vue",[360],[16,9342,9343,9359,9370,9374,9391,9395,9408,9416,9420],{"__ignoreMap":273},[277,9344,9345,9347,9349,9351,9353,9355,9357],{"class":279,"line":280},[277,9346,284],{"class":283},[277,9348,288],{"class":287},[277,9350,292],{"class":291},[277,9352,295],{"class":291},[277,9354,298],{"class":283},[277,9356,302],{"class":301},[277,9358,305],{"class":283},[277,9360,9361,9363,9366,9368],{"class":279,"line":308},[277,9362,312],{"class":311},[277,9364,9365],{"class":283}," { onUpdated, ref } ",[277,9367,318],{"class":311},[277,9369,321],{"class":301},[277,9371,9372],{"class":279,"line":324},[277,9373,328],{"emptyLinePlaceholder":327},[277,9375,9376,9378,9381,9383,9385,9387,9389],{"class":279,"line":331},[277,9377,405],{"class":311},[277,9379,9380],{"class":356}," count",[277,9382,340],{"class":311},[277,9384,413],{"class":291},[277,9386,448],{"class":283},[277,9388,3542],{"class":356},[277,9390,433],{"class":283},[277,9392,9393],{"class":279,"line":346},[277,9394,328],{"emptyLinePlaceholder":327},[277,9396,9399,9402,9404,9406],{"class":9397,"line":360},[279,9398],"highlight",[277,9400,9401],{"class":291},"onUpdated",[277,9403,2203],{"class":283},[277,9405,601],{"class":311},[277,9407,343],{"class":283},[277,9409,9410,9413],{"class":279,"line":371},[277,9411,9412],{"class":283},"  count.value",[277,9414,9415],{"class":311},"++\n",[277,9417,9418],{"class":279,"line":381},[277,9419,676],{"class":283},[277,9421,9422,9424,9426],{"class":279,"line":391},[277,9423,785],{"class":283},[277,9425,288],{"class":287},[277,9427,305],{"class":283},[21,9429,9430],{},"Cada actualización provoca otra actualización.",[21,9432,9433,9434,9437],{},"Si necesitas corregir estado, hazlo con una ",[72,9435,9436],{},"condición muy clara"," o mueve esa lógica a:",[38,9439,9440,9444,9448],{},[41,9441,9442],{},[16,9443,1735],{},[41,9445,9446],{},[16,9447,1732],{},[41,9449,9450],{},"la acción que origina el cambio",[30,9452,9454,9455],{"id":9453},"leer-el-dom-nuevo-en-beforeupdate","Leer el DOM nuevo en ",[16,9456,9088],{},[21,9458,110,9459,9461,9462,104],{},[16,9460,9088],{}," el DOM visible todavía representa el ",[72,9463,9464],{},"render anterior",[21,9466,9467],{},"Si mides ahí esperando el nuevo tamaño, el dato será viejo.",[21,9469,9470,9471,104],{},"Para leer el resultado final del render, usa ",[16,9472,9091],{},[30,9474,9476],{"id":9475},"meter-lógica-pesada-en-cada-actualización","Meter lógica pesada en cada actualización",[21,9478,9479,9480,104],{},"Estos hooks pueden dispararse ",[72,9481,9482],{},"muchas veces",[21,9484,9485],{},"Si dentro colocas:",[38,9487,9488,9491,9494],{},[41,9489,9490],{},"Cálculos costosos",[41,9492,9493],{},"Integraciones pesadas",[41,9495,9496],{},"Consultas repetidas al DOM",[21,9498,9499],{},"El componente se degradará rápido.",[3111,9501,9502],{},[21,9503,9504,9505,9508],{},"Si una tarea no necesita ejecutarse en ",[72,9506,9507],{},"cada render",", probablemente no debería vivir aquí.",[11,9510,1946],{"id":1945},[30,9512,9514],{"id":9513},"mantener-el-scroll-pegado-al-final-en-un-chat","Mantener el scroll pegado al final en un chat",[21,9516,9517],{},"Cuando llega un mensaje nuevo, el array cambia primero y el DOM se actualiza después.",[21,9519,9520],{},"Si haces scroll demasiado pronto, todavía no existe la nueva altura del contenedor.",[21,9522,9523],{},"La solución es esperar al momento en que el DOM ya fue actualizado.",[30,9525,9527],{"id":9526},"recalcular-una-librería-visual-después-de-actualizar-una-lista","Recalcular una librería visual después de actualizar una lista",[21,9529,9530,9531,9534],{},"Algunas librerías (diagramas, grids, tooltips o librerías de layout) necesitan que ",[72,9532,9533],{},"el markup ya esté en pantalla"," antes de recalcular posiciones o tamaños.",[21,9536,9537,9539],{},[16,9538,9091],{}," permite ejecutar esa sincronización justo después del render.",[30,9541,9543],{"id":9542},"detectar-renderizados-repetidos-durante-depuración","Detectar renderizados repetidos durante depuración",[21,9545,9546],{},"Estos hooks también sirven para entender si un componente se actualiza más de lo esperado.",[267,9548,9551],{"className":269,"code":9549,"filename":9339,"highlights":9550,"language":272,"meta":273,"style":273},"\u003Cscript>\nonBeforeUpdate(() => {\n  console.log('El componente está a punto de actualizarse')\n})\n\nonUpdated(() => {\n  console.log('El componente terminó de actualizarse')\n})\n\u003C/script>\n",[308,360],[16,9552,9553,9561,9573,9586,9590,9594,9605,9618,9622],{"__ignoreMap":273},[277,9554,9555,9557,9559],{"class":279,"line":280},[277,9556,284],{"class":283},[277,9558,288],{"class":287},[277,9560,305],{"class":283},[277,9562,9564,9567,9569,9571],{"class":9563,"line":308},[279,9398],[277,9565,9566],{"class":291},"onBeforeUpdate",[277,9568,2203],{"class":283},[277,9570,601],{"class":311},[277,9572,343],{"class":283},[277,9574,9575,9577,9579,9581,9584],{"class":279,"line":324},[277,9576,2349],{"class":283},[277,9578,2352],{"class":291},[277,9580,448],{"class":283},[277,9582,9583],{"class":301},"'El componente está a punto de actualizarse'",[277,9585,433],{"class":283},[277,9587,9588],{"class":279,"line":331},[277,9589,676],{"class":283},[277,9591,9592],{"class":279,"line":346},[277,9593,328],{"emptyLinePlaceholder":327},[277,9595,9597,9599,9601,9603],{"class":9596,"line":360},[279,9398],[277,9598,9401],{"class":291},[277,9600,2203],{"class":283},[277,9602,601],{"class":311},[277,9604,343],{"class":283},[277,9606,9607,9609,9611,9613,9616],{"class":279,"line":371},[277,9608,2349],{"class":283},[277,9610,2352],{"class":291},[277,9612,448],{"class":283},[277,9614,9615],{"class":301},"'El componente terminó de actualizarse'",[277,9617,433],{"class":283},[277,9619,9620],{"class":279,"line":381},[277,9621,676],{"class":283},[277,9623,9624,9626,9628],{"class":279,"line":391},[277,9625,785],{"class":283},[277,9627,288],{"class":287},[277,9629,305],{"class":283},[21,9631,9632],{},"Esto ayuda a detectar dependencias reactivas que provocan renders innecesarios.",[267,9634,9636],{"className":269,"code":9635,"filename":271,"language":272,"meta":273,"style":273},"\u003Cscript setup lang=\"ts\">\nimport { onBeforeUpdate, onUpdated, ref } from 'vue'\n\nconst messages = ref([\n  { id: 1, text: 'Primer mensaje' },\n  { id: 2, text: 'Segundo mensaje' }\n])\n\nconst listRef = ref\u003CHTMLOListElement | null>(null)\nconst previousHeight = ref(0)\n\nfunction addMessage() {\n  messages.value.push({\n    id: Date.now(),\n    text: `Mensaje ${messages.value.length + 1}`\n  })\n}\n\nonBeforeUpdate(() => {\n  previousHeight.value = listRef.value?.scrollHeight ?? 0\n})\n\nonUpdated(() => {\n  if (!listRef.value) return\n\n  const nextHeight = listRef.value.scrollHeight\n\n  if (nextHeight > previousHeight.value) {\n    listRef.value.scrollTop = nextHeight\n  }\n})\n\u003C/script>\n\n\u003Ctemplate>\n  \u003Csection class=\"chat-panel\">\n    \u003Cbutton @click=\"addMessage\">\n      Agregar mensaje\n    \u003C/button>\n\n    \u003Col\n      ref=\"listRef\"\n      class=\"messages\"\n    >\n      \u003Cli\n        v-for=\"message in messages\"\n        :key=\"message.id\"\n      >\n        {{ message.text }}\n      \u003C/li>\n    \u003C/ol>\n  \u003C/section>\n\u003C/template>\n",[16,9637,9638,9654,9665,9669,9682,9696,9709,9713,9717,9743,9760,9764,9773,9783,9794,9823,9827,9831,9835,9845,9861,9865,9869,9879,9892,9896,9908,9912,9925,9935,9939,9943,9951,9955,9963,9978,9993,9998,10006,10010,10017,10027,10037,10042,10048,10057,10066,10070,10075,10083,10092,10100],{"__ignoreMap":273},[277,9639,9640,9642,9644,9646,9648,9650,9652],{"class":279,"line":280},[277,9641,284],{"class":283},[277,9643,288],{"class":287},[277,9645,292],{"class":291},[277,9647,295],{"class":291},[277,9649,298],{"class":283},[277,9651,302],{"class":301},[277,9653,305],{"class":283},[277,9655,9656,9658,9661,9663],{"class":279,"line":308},[277,9657,312],{"class":311},[277,9659,9660],{"class":283}," { onBeforeUpdate, onUpdated, ref } ",[277,9662,318],{"class":311},[277,9664,321],{"class":301},[277,9666,9667],{"class":279,"line":324},[277,9668,328],{"emptyLinePlaceholder":327},[277,9670,9671,9673,9676,9678,9680],{"class":279,"line":331},[277,9672,405],{"class":311},[277,9674,9675],{"class":356}," messages",[277,9677,340],{"class":311},[277,9679,413],{"class":291},[277,9681,2104],{"class":283},[277,9683,9684,9686,9688,9691,9694],{"class":279,"line":346},[277,9685,2109],{"class":283},[277,9687,2072],{"class":356},[277,9689,9690],{"class":283},", text: ",[277,9692,9693],{"class":301},"'Primer mensaje'",[277,9695,2132],{"class":283},[277,9697,9698,9700,9702,9704,9707],{"class":279,"line":360},[277,9699,2109],{"class":283},[277,9701,2139],{"class":356},[277,9703,9690],{"class":283},[277,9705,9706],{"class":301},"'Segundo mensaje'",[277,9708,2179],{"class":283},[277,9710,9711],{"class":279,"line":371},[277,9712,2184],{"class":283},[277,9714,9715],{"class":279,"line":381},[277,9716,328],{"emptyLinePlaceholder":327},[277,9718,9719,9721,9724,9726,9728,9730,9733,9735,9737,9739,9741],{"class":279,"line":391},[277,9720,405],{"class":311},[277,9722,9723],{"class":356}," listRef",[277,9725,340],{"class":311},[277,9727,413],{"class":291},[277,9729,284],{"class":283},[277,9731,9732],{"class":291},"HTMLOListElement",[277,9734,421],{"class":311},[277,9736,424],{"class":356},[277,9738,427],{"class":283},[277,9740,430],{"class":356},[277,9742,433],{"class":283},[277,9744,9745,9747,9750,9752,9754,9756,9758],{"class":279,"line":397},[277,9746,405],{"class":311},[277,9748,9749],{"class":356}," previousHeight",[277,9751,340],{"class":311},[277,9753,413],{"class":291},[277,9755,448],{"class":283},[277,9757,3542],{"class":356},[277,9759,433],{"class":283},[277,9761,9762],{"class":279,"line":402},[277,9763,328],{"emptyLinePlaceholder":327},[277,9765,9766,9768,9771],{"class":279,"line":436},[277,9767,2460],{"class":311},[277,9769,9770],{"class":291}," addMessage",[277,9772,473],{"class":283},[277,9774,9775,9778,9781],{"class":279,"line":456},[277,9776,9777],{"class":283},"  messages.value.",[277,9779,9780],{"class":291},"push",[277,9782,1066],{"class":283},[277,9784,9785,9788,9791],{"class":279,"line":461},[277,9786,9787],{"class":283},"    id: Date.",[277,9789,9790],{"class":291},"now",[277,9792,9793],{"class":283},"(),\n",[277,9795,9796,9799,9802,9805,9807,9809,9811,9814,9817,9820],{"class":279,"line":476},[277,9797,9798],{"class":283},"    text: ",[277,9800,9801],{"class":301},"`Mensaje ${",[277,9803,9804],{"class":283},"messages",[277,9806,104],{"class":301},[277,9808,3885],{"class":283},[277,9810,104],{"class":301},[277,9812,9813],{"class":356},"length",[277,9815,9816],{"class":311}," +",[277,9818,9819],{"class":356}," 1",[277,9821,9822],{"class":301},"}`\n",[277,9824,9825],{"class":279,"line":500},[277,9826,2318],{"class":283},[277,9828,9829],{"class":279,"line":505},[277,9830,394],{"class":283},[277,9832,9833],{"class":279,"line":520},[277,9834,328],{"emptyLinePlaceholder":327},[277,9836,9837,9839,9841,9843],{"class":279,"line":539},[277,9838,9566],{"class":291},[277,9840,2203],{"class":283},[277,9842,601],{"class":311},[277,9844,343],{"class":283},[277,9846,9847,9850,9852,9855,9858],{"class":279,"line":545},[277,9848,9849],{"class":283},"  previousHeight.value ",[277,9851,298],{"class":311},[277,9853,9854],{"class":283}," listRef.value?.scrollHeight ",[277,9856,9857],{"class":311},"??",[277,9859,9860],{"class":356}," 0\n",[277,9862,9863],{"class":279,"line":550},[277,9864,676],{"class":283},[277,9866,9867],{"class":279,"line":578},[277,9868,328],{"emptyLinePlaceholder":327},[277,9870,9871,9873,9875,9877],{"class":279,"line":583},[277,9872,9401],{"class":291},[277,9874,2203],{"class":283},[277,9876,601],{"class":311},[277,9878,343],{"class":283},[277,9880,9881,9883,9885,9887,9890],{"class":279,"line":588},[277,9882,508],{"class":311},[277,9884,511],{"class":283},[277,9886,514],{"class":311},[277,9888,9889],{"class":283},"listRef.value) ",[277,9891,714],{"class":311},[277,9893,9894],{"class":279,"line":606},[277,9895,328],{"emptyLinePlaceholder":327},[277,9897,9898,9900,9903,9905],{"class":279,"line":614},[277,9899,479],{"class":311},[277,9901,9902],{"class":356}," nextHeight",[277,9904,340],{"class":311},[277,9906,9907],{"class":283}," listRef.value.scrollHeight\n",[277,9909,9910],{"class":279,"line":625},[277,9911,328],{"emptyLinePlaceholder":327},[277,9913,9914,9916,9919,9922],{"class":279,"line":637},[277,9915,508],{"class":311},[277,9917,9918],{"class":283}," (nextHeight ",[277,9920,9921],{"class":311},">",[277,9923,9924],{"class":283}," previousHeight.value) {\n",[277,9926,9927,9930,9932],{"class":279,"line":646},[277,9928,9929],{"class":283},"    listRef.value.scrollTop ",[277,9931,298],{"class":311},[277,9933,9934],{"class":283}," nextHeight\n",[277,9936,9937],{"class":279,"line":668},[277,9938,542],{"class":283},[277,9940,9941],{"class":279,"line":673},[277,9942,676],{"class":283},[277,9944,9945,9947,9949],{"class":279,"line":679},[277,9946,785],{"class":283},[277,9948,288],{"class":287},[277,9950,305],{"class":283},[277,9952,9953],{"class":279,"line":684},[277,9954,328],{"emptyLinePlaceholder":327},[277,9956,9957,9959,9961],{"class":279,"line":700},[277,9958,284],{"class":283},[277,9960,802],{"class":287},[277,9962,305],{"class":283},[277,9964,9965,9967,9969,9971,9973,9976],{"class":279,"line":717},[277,9966,810],{"class":283},[277,9968,4121],{"class":287},[277,9970,816],{"class":291},[277,9972,298],{"class":283},[277,9974,9975],{"class":301},"\"chat-panel\"",[277,9977,305],{"class":283},[277,9979,9980,9982,9984,9986,9988,9991],{"class":279,"line":722},[277,9981,829],{"class":283},[277,9983,4267],{"class":287},[277,9985,4278],{"class":291},[277,9987,298],{"class":283},[277,9989,9990],{"class":301},"\"addMessage\"",[277,9992,305],{"class":283},[277,9994,9995],{"class":279,"line":729},[277,9996,9997],{"class":283},"      Agregar mensaje\n",[277,9999,10000,10002,10004],{"class":279,"line":738},[277,10001,922],{"class":283},[277,10003,4267],{"class":287},[277,10005,305],{"class":283},[277,10007,10008],{"class":279,"line":747},[277,10009,328],{"emptyLinePlaceholder":327},[277,10011,10012,10014],{"class":279,"line":754},[277,10013,829],{"class":283},[277,10015,10016],{"class":287},"ol\n",[277,10018,10019,10022,10024],{"class":279,"line":772},[277,10020,10021],{"class":291},"      ref",[277,10023,298],{"class":283},[277,10025,10026],{"class":301},"\"listRef\"\n",[277,10028,10029,10032,10034],{"class":279,"line":777},[277,10030,10031],{"class":291},"      class",[277,10033,298],{"class":283},[277,10035,10036],{"class":301},"\"messages\"\n",[277,10038,10039],{"class":279,"line":782},[277,10040,10041],{"class":283},"    >\n",[277,10043,10044,10046],{"class":279,"line":792},[277,10045,879],{"class":283},[277,10047,6506],{"class":287},[277,10049,10050,10052,10054],{"class":279,"line":797},[277,10051,6511],{"class":291},[277,10053,298],{"class":283},[277,10055,10056],{"class":301},"\"message in messages\"\n",[277,10058,10059,10061,10063],{"class":279,"line":807},[277,10060,6521],{"class":291},[277,10062,298],{"class":283},[277,10064,10065],{"class":301},"\"message.id\"\n",[277,10067,10068],{"class":279,"line":826},[277,10069,4543],{"class":283},[277,10071,10072],{"class":279,"line":849},[277,10073,10074],{"class":283},"        {{ message.text }}\n",[277,10076,10077,10079,10081],{"class":279,"line":854},[277,10078,4175],{"class":283},[277,10080,41],{"class":287},[277,10082,305],{"class":283},[277,10084,10085,10087,10090],{"class":279,"line":876},[277,10086,922],{"class":283},[277,10088,10089],{"class":287},"ol",[277,10091,305],{"class":283},[277,10093,10094,10096,10098],{"class":279,"line":891},[277,10095,954],{"class":283},[277,10097,4121],{"class":287},[277,10099,305],{"class":283},[277,10101,10102,10104,10106],{"class":279,"line":905},[277,10103,785],{"class":283},[277,10105,802],{"class":287},[277,10107,305],{"class":283},[267,10109,10111],{"className":269,"code":10110,"filename":6571,"language":272,"meta":273,"style":273},"\u003Cscript>\nexport default {\n  data() {\n    return {\n      messages: [\n        { id: 1, text: 'Primer mensaje' },\n        { id: 2, text: 'Segundo mensaje' }\n      ],\n      previousHeight: 0\n    }\n  },\n\n  methods: {\n    addMessage() {\n      this.messages.push({\n        id: Date.now(),\n        text: `Mensaje ${this.messages.length + 1}`\n      })\n    }\n  },\n\n  beforeUpdate() {\n    if (this.$refs.listRef instanceof HTMLOListElement) {\n      this.previousHeight = this.$refs.listRef.scrollHeight\n    }\n  },\n\n  updated() {\n    if (!(this.$refs.listRef instanceof HTMLOListElement)) {\n      return\n    }\n\n    const nextHeight = this.$refs.listRef.scrollHeight\n\n    if (nextHeight > this.previousHeight) {\n      this.$refs.listRef.scrollTop = nextHeight\n    }\n  }\n}\n\u003C/script>\n\n\u003Ctemplate>\n  \u003Csection class=\"chat-panel\">\n    \u003Cbutton @click=\"addMessage\">\n      Agregar mensaje\n    \u003C/button>\n\n    \u003Col\n      ref=\"listRef\"\n      class=\"messages\"\n    >\n      \u003Cli\n        v-for=\"message in messages\"\n        :key=\"message.id\"\n      >\n        {{ message.text }}\n      \u003C/li>\n    \u003C/ol>\n  \u003C/section>\n\u003C/template>\n",[16,10112,10113,10121,10129,10135,10141,10146,10158,10170,10175,10182,10186,10190,10194,10198,10205,10216,10225,10248,10252,10256,10260,10264,10271,10289,10303,10307,10311,10315,10322,10343,10347,10351,10355,10367,10371,10384,10395,10399,10403,10407,10415,10419,10427,10441,10455,10459,10467,10471,10477,10485,10493,10497,10503,10511,10519,10523,10527,10535,10543,10551],{"__ignoreMap":273},[277,10114,10115,10117,10119],{"class":279,"line":280},[277,10116,284],{"class":283},[277,10118,288],{"class":287},[277,10120,305],{"class":283},[277,10122,10123,10125,10127],{"class":279,"line":308},[277,10124,1057],{"class":311},[277,10126,1060],{"class":311},[277,10128,343],{"class":283},[277,10130,10131,10133],{"class":279,"line":324},[277,10132,1086],{"class":291},[277,10134,473],{"class":283},[277,10136,10137,10139],{"class":279,"line":331},[277,10138,1093],{"class":311},[277,10140,343],{"class":283},[277,10142,10143],{"class":279,"line":346},[277,10144,10145],{"class":283},"      messages: [\n",[277,10147,10148,10150,10152,10154,10156],{"class":279,"line":360},[277,10149,2664],{"class":283},[277,10151,2072],{"class":356},[277,10153,9690],{"class":283},[277,10155,9693],{"class":301},[277,10157,2132],{"class":283},[277,10159,10160,10162,10164,10166,10168],{"class":279,"line":371},[277,10161,2664],{"class":283},[277,10163,2139],{"class":356},[277,10165,9690],{"class":283},[277,10167,9706],{"class":301},[277,10169,2179],{"class":283},[277,10171,10172],{"class":279,"line":381},[277,10173,10174],{"class":283},"      ],\n",[277,10176,10177,10180],{"class":279,"line":391},[277,10178,10179],{"class":283},"      previousHeight: ",[277,10181,4692],{"class":356},[277,10183,10184],{"class":279,"line":397},[277,10185,1126],{"class":283},[277,10187,10188],{"class":279,"line":402},[277,10189,1131],{"class":283},[277,10191,10192],{"class":279,"line":436},[277,10193,328],{"emptyLinePlaceholder":327},[277,10195,10196],{"class":279,"line":456},[277,10197,1140],{"class":283},[277,10199,10200,10203],{"class":279,"line":461},[277,10201,10202],{"class":291},"    addMessage",[277,10204,473],{"class":283},[277,10206,10207,10209,10212,10214],{"class":279,"line":476},[277,10208,1212],{"class":356},[277,10210,10211],{"class":283},".messages.",[277,10213,9780],{"class":291},[277,10215,1066],{"class":283},[277,10217,10218,10221,10223],{"class":279,"line":500},[277,10219,10220],{"class":283},"        id: Date.",[277,10222,9790],{"class":291},[277,10224,9793],{"class":283},[277,10226,10227,10230,10232,10234,10236,10238,10240,10242,10244,10246],{"class":279,"line":505},[277,10228,10229],{"class":283},"        text: ",[277,10231,9801],{"class":301},[277,10233,1341],{"class":356},[277,10235,104],{"class":301},[277,10237,9804],{"class":283},[277,10239,104],{"class":301},[277,10241,9813],{"class":356},[277,10243,9816],{"class":311},[277,10245,9819],{"class":356},[277,10247,9822],{"class":301},[277,10249,10250],{"class":279,"line":520},[277,10251,2853],{"class":283},[277,10253,10254],{"class":279,"line":539},[277,10255,1126],{"class":283},[277,10257,10258],{"class":279,"line":545},[277,10259,1131],{"class":283},[277,10261,10262],{"class":279,"line":550},[277,10263,328],{"emptyLinePlaceholder":327},[277,10265,10266,10269],{"class":279,"line":578},[277,10267,10268],{"class":291},"  beforeUpdate",[277,10270,473],{"class":283},[277,10272,10273,10275,10277,10279,10282,10284,10287],{"class":279,"line":583},[277,10274,1336],{"class":311},[277,10276,511],{"class":283},[277,10278,1341],{"class":356},[277,10280,10281],{"class":283},".$refs.listRef ",[277,10283,652],{"class":311},[277,10285,10286],{"class":291}," HTMLOListElement",[277,10288,2476],{"class":283},[277,10290,10291,10293,10296,10298,10300],{"class":279,"line":588},[277,10292,1212],{"class":356},[277,10294,10295],{"class":283},".previousHeight ",[277,10297,298],{"class":311},[277,10299,1268],{"class":356},[277,10301,10302],{"class":283},".$refs.listRef.scrollHeight\n",[277,10304,10305],{"class":279,"line":606},[277,10306,1126],{"class":283},[277,10308,10309],{"class":279,"line":614},[277,10310,1131],{"class":283},[277,10312,10313],{"class":279,"line":625},[277,10314,328],{"emptyLinePlaceholder":327},[277,10316,10317,10320],{"class":279,"line":637},[277,10318,10319],{"class":291},"  updated",[277,10321,473],{"class":283},[277,10323,10324,10326,10328,10330,10332,10334,10336,10338,10340],{"class":279,"line":646},[277,10325,1336],{"class":311},[277,10327,511],{"class":283},[277,10329,514],{"class":311},[277,10331,448],{"class":283},[277,10333,1341],{"class":356},[277,10335,10281],{"class":283},[277,10337,652],{"class":311},[277,10339,10286],{"class":291},[277,10341,10342],{"class":283},")) {\n",[277,10344,10345],{"class":279,"line":668},[277,10346,8193],{"class":311},[277,10348,10349],{"class":279,"line":673},[277,10350,1126],{"class":283},[277,10352,10353],{"class":279,"line":679},[277,10354,328],{"emptyLinePlaceholder":327},[277,10356,10357,10359,10361,10363,10365],{"class":279,"line":684},[277,10358,2233],{"class":311},[277,10360,9902],{"class":356},[277,10362,340],{"class":311},[277,10364,1268],{"class":356},[277,10366,10302],{"class":283},[277,10368,10369],{"class":279,"line":700},[277,10370,328],{"emptyLinePlaceholder":327},[277,10372,10373,10375,10377,10379,10381],{"class":279,"line":717},[277,10374,1336],{"class":311},[277,10376,9918],{"class":283},[277,10378,9921],{"class":311},[277,10380,1268],{"class":356},[277,10382,10383],{"class":283},".previousHeight) {\n",[277,10385,10386,10388,10391,10393],{"class":279,"line":722},[277,10387,1212],{"class":356},[277,10389,10390],{"class":283},".$refs.listRef.scrollTop ",[277,10392,298],{"class":311},[277,10394,9934],{"class":283},[277,10396,10397],{"class":279,"line":729},[277,10398,1126],{"class":283},[277,10400,10401],{"class":279,"line":738},[277,10402,542],{"class":283},[277,10404,10405],{"class":279,"line":747},[277,10406,394],{"class":283},[277,10408,10409,10411,10413],{"class":279,"line":754},[277,10410,785],{"class":283},[277,10412,288],{"class":287},[277,10414,305],{"class":283},[277,10416,10417],{"class":279,"line":772},[277,10418,328],{"emptyLinePlaceholder":327},[277,10420,10421,10423,10425],{"class":279,"line":777},[277,10422,284],{"class":283},[277,10424,802],{"class":287},[277,10426,305],{"class":283},[277,10428,10429,10431,10433,10435,10437,10439],{"class":279,"line":782},[277,10430,810],{"class":283},[277,10432,4121],{"class":287},[277,10434,816],{"class":291},[277,10436,298],{"class":283},[277,10438,9975],{"class":301},[277,10440,305],{"class":283},[277,10442,10443,10445,10447,10449,10451,10453],{"class":279,"line":792},[277,10444,829],{"class":283},[277,10446,4267],{"class":287},[277,10448,4278],{"class":291},[277,10450,298],{"class":283},[277,10452,9990],{"class":301},[277,10454,305],{"class":283},[277,10456,10457],{"class":279,"line":797},[277,10458,9997],{"class":283},[277,10460,10461,10463,10465],{"class":279,"line":807},[277,10462,922],{"class":283},[277,10464,4267],{"class":287},[277,10466,305],{"class":283},[277,10468,10469],{"class":279,"line":826},[277,10470,328],{"emptyLinePlaceholder":327},[277,10472,10473,10475],{"class":279,"line":849},[277,10474,829],{"class":283},[277,10476,10016],{"class":287},[277,10478,10479,10481,10483],{"class":279,"line":854},[277,10480,10021],{"class":291},[277,10482,298],{"class":283},[277,10484,10026],{"class":301},[277,10486,10487,10489,10491],{"class":279,"line":876},[277,10488,10031],{"class":291},[277,10490,298],{"class":283},[277,10492,10036],{"class":301},[277,10494,10495],{"class":279,"line":891},[277,10496,10041],{"class":283},[277,10498,10499,10501],{"class":279,"line":905},[277,10500,879],{"class":283},[277,10502,6506],{"class":287},[277,10504,10505,10507,10509],{"class":279,"line":919},[277,10506,6511],{"class":291},[277,10508,298],{"class":283},[277,10510,10056],{"class":301},[277,10512,10513,10515,10517],{"class":279,"line":929},[277,10514,6521],{"class":291},[277,10516,298],{"class":283},[277,10518,10065],{"class":301},[277,10520,10521],{"class":279,"line":934},[277,10522,4543],{"class":283},[277,10524,10525],{"class":279,"line":951},[277,10526,10074],{"class":283},[277,10528,10529,10531,10533],{"class":279,"line":961},[277,10530,4175],{"class":283},[277,10532,41],{"class":287},[277,10534,305],{"class":283},[277,10536,10537,10539,10541],{"class":279,"line":1473},[277,10538,922],{"class":283},[277,10540,10089],{"class":287},[277,10542,305],{"class":283},[277,10544,10545,10547,10549],{"class":279,"line":1478},[277,10546,954],{"class":283},[277,10548,4121],{"class":287},[277,10550,305],{"class":283},[277,10552,10553,10555,10557],{"class":279,"line":1497},[277,10554,785],{"class":283},[277,10556,802],{"class":287},[277,10558,305],{"class":283},[38,10560,10561,10566],{},[41,10562,10563,10565],{},[16,10564,9143],{}," guarda la altura del render anterior.",[41,10567,10568,10570],{},[16,10569,9148],{}," decide si debe ajustar el scroll una vez que el nuevo mensaje ya existe en el DOM.",[11,10572,1596],{"id":1595},[38,10574,10575,10583,10592,10600,10607],{},[41,10576,10577,10579,10580,104],{},[16,10578,9088],{}," te permite observar ",[72,10581,10582],{},"el punto justo antes del parche del DOM",[41,10584,10585,10587,10588,10591],{},[16,10586,9091],{}," sirve cuando ",[72,10589,10590],{},"la interfaz ya refleja el nuevo estado"," y necesitas actuar sobre ese resultado.",[41,10593,10594,10595,104],{},"Si el problema gira alrededor de un dato específico, ",[72,10596,10597,10599],{},[16,10598,1735],{}," suele ser más expresivo",[41,10601,10602,10603,10606],{},"Estos hooks describen ",[72,10604,10605],{},"el ciclo de actualización del componente",", no el cambio de una variable concreta.",[41,10608,10609,10610],{},"La regla más importante es esta: ",[72,10611,10612,10613,10615],{},"no conviertas ",[16,10614,9091],{}," en una máquina de mutar estado después de cada render.",[1606,10617,10618],{},"html pre.shiki code .sVt8B, html code.shiki .sVt8B{--shiki-default:#24292E;--shiki-dark:#E1E4E8}html pre.shiki code .s9eBZ, html code.shiki .s9eBZ{--shiki-default:#22863A;--shiki-dark:#85E89D}html pre.shiki code .sScJk, html code.shiki .sScJk{--shiki-default:#6F42C1;--shiki-dark:#B392F0}html pre.shiki code .sZZnC, html code.shiki .sZZnC{--shiki-default:#032F62;--shiki-dark:#9ECBFF}html pre.shiki code .szBVR, html code.shiki .szBVR{--shiki-default:#D73A49;--shiki-dark:#F97583}html pre.shiki code .sj4cs, html code.shiki .sj4cs{--shiki-default:#005CC5;--shiki-dark:#79B8FF}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":273,"searchDepth":308,"depth":308,"links":10620},[10621,10623,10625,10627,10628,10629,10630],{"id":9291,"depth":308,"text":10622},"Usar updated como reemplazo de watch",{"id":9328,"depth":308,"text":10624},"Modificar estado dentro de updated sin control",{"id":9453,"depth":308,"text":10626},"Leer el DOM nuevo en beforeUpdate",{"id":9475,"depth":308,"text":9476},{"id":9513,"depth":308,"text":9514},{"id":9526,"depth":308,"text":9527},{"id":9542,"depth":308,"text":9543},"https://res.cloudinary.com/denj4fg7f/image/upload/v1773284616/vue-lifecycle-update-phase-beforeupdate-updated_qql7os.png","Ilustración de la fase de actualización del ciclo de vida de Vue con beforeUpdate y updated","2026-03-11","Qué ocurre cuando Vue vuelve a renderizar un componente y cómo usar beforeUpdate y updated sin convertirlos en sustitutos de watch o computed.",{"script":10636},[10637],{"type":1632,"key":1633,"data-nuxt-schema-org":327,"nodes":10638},[10639],{"headline":9079,"author":10640,"datePublished":10641,"@type":1640},{"name":1637,"@type":1638},"2026-03-10T22:00:00-05:00",{"updatedAt":10641,"coverCaption":10643,"author":1637,"keywords":10644},"La fase de actualización ocurre cuando un cambio reactivo obliga a Vue a volver a renderizar el componente.",[1645,9088,9091,9401,10645],"renderizado","/blog/vue-lifecycle-update-phase-beforeupdate-updated.es",[10648],{"headline":9079,"author":10649,"datePublished":10641,"@type":1640},{"name":1637,"@type":1638},{"title":9079,"description":10634},"blog/vue-lifecycle-update-phase-beforeupdate-updated.es",[10653,10654,10655,10656,10657],{"tag":1660,"color":1661},{"tag":1668,"color":1669},{"tag":3164,"color":3165},{"tag":3167,"color":3168},{"tag":9074,"color":9075},"BvSqXgOtDk7Jc9IM_x1t20CsQnfFvA3bvtSIuI7nRx4",{"id":10660,"title":10661,"body":10662,"cover":11899,"coverAlt":11900,"date":11901,"description":11902,"draft":1627,"extension":1628,"head":11903,"locale":1641,"meta":11910,"navigation":327,"path":11914,"schemaOrg":11915,"seo":11918,"series":1653,"seriesDescription":1654,"seriesOrder":324,"seriesTitle":1655,"slug":1656,"stem":11919,"tags":11920,"__hash__":11925},"blog/blog/vue-lifecycle-mounting-phase-beforemount-mounted.es.md","Ciclos de vida en Vue: fase de montaje (beforeMount, mounted)",{"type":8,"value":10663,"toc":11878},[10664,10673,10679,10682,10684,10690,10693,10705,10708,10719,10722,10750,10762,10764,10767,10769,10783,10788,10799,10801,10804,10810,10842,10845,10847,10896,10911,10913,10919,10925,10928,10943,10948,10955,10965,10974,10979,11103,11110,11117,11120,11123,11140,11150,11288,11296,11300,11306,11315,11321,11323,11327,11332,11336,11341,11345,11348,11599,11838,11852,11854,11876],[11,10665,10667,10668,225,10671,19],{"id":10666},"ciclos-de-vida-en-vue-fase-de-montaje-beforemount-mounted","Ciclos de vida en Vue: fase de montaje (",[16,10669,10670],{},"beforeMount",[16,10672,203],{},[21,10674,10675,10676,10678],{},"Muchos problemas cotidianos en Vue tienen el mismo origen: intentar interactuar con el DOM demasiado pronto o concentrar en ",[16,10677,203],{}," lógica que en realidad podría ejecutarse antes.",[21,10680,10681],{},"La fase de montaje marca justamente esa frontera. Es el momento en el que Vue deja de preparar el componente “por dentro” y finalmente lo inserta en la página. Entender bien esa transición te ayuda a decidir cuándo enfocar un input, cuándo inicializar una librería externa y cuándo, simplemente, no necesitas ningún hook.",[30,10683,61],{"id":60},[21,10685,10686,10687,104],{},"Durante la fase de montaje, Vue ya tiene lista la reactividad del componente: props, estado, watchers y el árbol de renderizado ya están preparados. Lo que cambia en esta etapa es que ",[72,10688,10689],{},"el DOM real pasa a existir",[21,10691,10692],{},"Aquí aparecen dos hooks clásicos del ciclo de vida:",[38,10694,10695,10700],{},[41,10696,10697,10699],{},[16,10698,10670],{},": se ejecuta cuando Vue está a punto de montar el componente, pero el DOM real todavía no ha sido insertado.",[41,10701,10702,10704],{},[16,10703,203],{},": se ejecuta cuando el componente ya fue montado y puedes interactuar con nodos reales del DOM.",[21,10706,10707],{},"Si trabajas con Composition API, los equivalentes son:",[38,10709,10710,10715],{},[41,10711,10712],{},[16,10713,10714],{},"onBeforeMount()",[41,10716,10717],{},[16,10718,210],{},[21,10720,10721],{},"Una forma práctica de orientarse:",[38,10723,10724,10734,10742],{},[41,10725,10726,10727,10730,10731,104],{},"Si necesitas preparar ",[72,10728,10729],{},"estado o lógica que no depende del DOM",", normalmente eso pertenece a ",[16,10732,10733],{},"setup",[41,10735,7642,10736,10739,10740,104],{},[72,10737,10738],{},"interactuar con elementos reales de la interfaz",", el punto natural suele ser ",[16,10741,203],{},[41,10743,10744,10745,10747,10748,104],{},"Si estás considerando ",[16,10746,10670],{},", conviene revisar primero si ese código no encaja mejor antes, por ejemplo dentro de ",[16,10749,10733],{},[21,10751,10752,10753,10761],{},"Además, en aplicaciones con SSR, ",[72,10754,10755,10756,229,10758,10760],{},"ni ",[16,10757,10670],{},[16,10759,203],{}," se ejecutan en el servidor",". Son hooks que solo existen en el cliente.",[30,10763,129],{"id":128},[21,10765,10766],{},"La fase de montaje tiene sentido cuando el componente necesita cruzar la frontera entre el estado reactivo y el navegador real.",[21,10768,3305],{},[38,10770,10771,10774,10777,10780],{},[41,10772,10773],{},"Enfocar un campo de búsqueda cuando aparece la vista.",[41,10775,10776],{},"Inicializar una librería externa que necesita un contenedor del DOM (por ejemplo, un gráfico o un editor).",[41,10778,10779],{},"Medir tamaños, posiciones o scroll después del primer render.",[41,10781,10782],{},"Registrar integraciones con API del navegador que dependen de nodos reales.",[21,10784,10785,10787],{},[16,10786,10670],{}," tiene menos uso en la práctica, pero puede servir para:",[38,10789,10790,10793,10796],{},[41,10791,10792],{},"Dejar trazas o marcas de depuración antes del montaje.",[41,10794,10795],{},"Ajustar algún estado justo antes de que ocurra el primer render en el navegador.",[41,10797,10798],{},"Preparar integraciones que necesitan saber que el montaje es inminente, aunque todavía no interactúen con el DOM.",[30,10800,156],{"id":155},[21,10802,10803],{},"No todo debe resolverse en esta fase.",[21,10805,7664,10806,1697,10808,7669],{},[16,10807,10670],{},[16,10809,203],{},[38,10811,10812,10818,10830,10836],{},[41,10813,10814,10815,104],{},"Solo estás cargando datos que ",[72,10816,10817],{},"no dependen del DOM",[41,10819,10820,10821,10823,10824,10826,10827,104],{},"La lógica pertenece a un ",[16,10822,1735],{},", un ",[16,10825,1732],{}," o a un ",[72,10828,10829],{},"composable",[41,10831,10832,10833,10835],{},"Estás usando ",[16,10834,203],{}," como un cajón de sastre para “todo lo que faltó”.",[41,10837,10838,10839,104],{},"Necesitas lógica compatible con ",[72,10840,10841],{},"SSR desde el primer render",[21,10843,10844],{},"En especial, si el trabajo puede hacerse antes del montaje, suele ser mejor hacerlo antes. Así el componente llega más limpio a la pantalla y el primer render no carga con tareas innecesarias.",[30,10846,7715],{"id":7714},[5392,10848,10849,10864],{},[5395,10850,10851],{},[5398,10852,10853,10855,10858,10861],{},[5401,10854,5403],{},[5401,10856,10857],{},"Qué ya existe",[5401,10859,10860],{},"Qué todavía no deberías asumir",[5401,10862,10863],{},"Uso típico",[5414,10865,10866,10881],{},[5398,10867,10868,10872,10875,10878],{},[5419,10869,10870],{},[16,10871,10670],{},[5419,10873,10874],{},"Estado reactivo, props, métodos y render preparado",[5419,10876,10877],{},"DOM real disponible",[5419,10879,10880],{},"Lógica puntual previa al montaje",[5398,10882,10883,10887,10890,10893],{},[5419,10884,10885],{},[16,10886,203],{},[5419,10888,10889],{},"Componente insertado en el DOM",[5419,10891,10892],{},"Que librerías externas o procesos asíncronos ya hayan terminado",[5419,10894,10895],{},"Enfocar, medir, integrar APIs del navegador",[21,10897,10898,10899,10901,10902,10904,10905,10907,10908,104],{},"En la mayoría de proyectos modernos, ",[16,10900,203],{}," aparece con frecuencia y ",[16,10903,10670],{}," muy poco. Eso no significa que ",[16,10906,10670],{}," esté mal, sino que ",[72,10909,10910],{},"casi siempre existe un lugar mejor para esa lógica",[30,10912,190],{"id":189},[192,10914,10916,10917],{"id":10915},"_1-intentar-leer-o-modificar-el-dom-en-beforemount","1. Intentar leer o modificar el DOM en ",[16,10918,10670],{},[21,10920,10921,10922,10924],{},"Es un error clásico. En ",[16,10923,10670],{}," Vue está a punto de montar el componente, pero los nodos reales todavía no existen.",[21,10926,10927],{},"Si necesitas hacer algo como:",[38,10929,10930,10935,10940],{},[41,10931,10932],{},[16,10933,10934],{},"focus()",[41,10936,10937],{},[16,10938,10939],{},"getBoundingClientRect()",[41,10941,10942],{},"inicializar una librería sobre un contenedor",[21,10944,10945,10946,104],{},"Entonces debes esperar a ",[16,10947,203],{},[192,10949,10951,10952,10954],{"id":10950},"_2-mandar-a-mounted-cualquier-carga-inicial-por-costumbre","2. Mandar a ",[16,10953,203],{}," cualquier carga inicial por costumbre",[21,10956,10957,10958,10961,10962,10964],{},"No todo ",[16,10959,10960],{},"fetch"," debería vivir en ",[16,10963,203],{},". Si la petición no depende del DOM, puedes iniciarla antes y evitar retrasar la experiencia visual por una convención innecesaria.",[21,10966,10967,10969,10970,10973],{},[16,10968,203],{}," ",[72,10971,10972],{},"no es el hook principal",". Es simplemente el hook correcto cuando el navegador real entra en la conversación.",[21,10975,10976,10977,353],{},"Por ejemplo, este tipo de lógica no necesita ",[16,10978,203],{},[267,10980,10982],{"className":269,"code":10981,"filename":9339,"language":272,"meta":273,"style":273},"\u003Cscript setup lang=\"ts\">\nimport { ref } from 'vue'\n\nconst users = ref([])\n\nasync function loadUsers() {\n  const res = await fetch('/api/users')\n  users.value = await res.json()\n}\n\nloadUsers()\n\u003C/script>\n",[16,10983,10984,11000,11011,11015,11029,11033,11044,11064,11080,11084,11088,11095],{"__ignoreMap":273},[277,10985,10986,10988,10990,10992,10994,10996,10998],{"class":279,"line":280},[277,10987,284],{"class":283},[277,10989,288],{"class":287},[277,10991,292],{"class":291},[277,10993,295],{"class":291},[277,10995,298],{"class":283},[277,10997,302],{"class":301},[277,10999,305],{"class":283},[277,11001,11002,11004,11007,11009],{"class":279,"line":308},[277,11003,312],{"class":311},[277,11005,11006],{"class":283}," { ref } ",[277,11008,318],{"class":311},[277,11010,321],{"class":301},[277,11012,11013],{"class":279,"line":324},[277,11014,328],{"emptyLinePlaceholder":327},[277,11016,11017,11019,11022,11024,11026],{"class":279,"line":331},[277,11018,405],{"class":311},[277,11020,11021],{"class":356}," users",[277,11023,340],{"class":311},[277,11025,413],{"class":291},[277,11027,11028],{"class":283},"([])\n",[277,11030,11031],{"class":279,"line":346},[277,11032,328],{"emptyLinePlaceholder":327},[277,11034,11035,11037,11039,11042],{"class":279,"line":360},[277,11036,464],{"class":311},[277,11038,467],{"class":311},[277,11040,11041],{"class":291}," loadUsers",[277,11043,473],{"class":283},[277,11045,11046,11048,11051,11053,11055,11057,11059,11062],{"class":279,"line":371},[277,11047,479],{"class":311},[277,11049,11050],{"class":356}," res",[277,11052,340],{"class":311},[277,11054,487],{"class":311},[277,11056,490],{"class":291},[277,11058,448],{"class":283},[277,11060,11061],{"class":301},"'/api/users'",[277,11063,433],{"class":283},[277,11065,11066,11069,11071,11073,11076,11078],{"class":279,"line":381},[277,11067,11068],{"class":283},"  users.value ",[277,11070,298],{"class":311},[277,11072,487],{"class":311},[277,11074,11075],{"class":283}," res.",[277,11077,566],{"class":291},[277,11079,622],{"class":283},[277,11081,11082],{"class":279,"line":391},[277,11083,394],{"class":283},[277,11085,11086],{"class":279,"line":397},[277,11087,328],{"emptyLinePlaceholder":327},[277,11089,11090,11093],{"class":279,"line":402},[277,11091,11092],{"class":291},"loadUsers",[277,11094,622],{"class":283},[277,11096,11097,11099,11101],{"class":279,"line":436},[277,11098,785],{"class":283},[277,11100,288],{"class":287},[277,11102,305],{"class":283},[3111,11104,11105],{},[21,11106,11107,11108,104],{},"Aquí la carga puede empezar directamente en ",[16,11109,10733],{},[192,11111,11113,11114,11116],{"id":11112},"_3-crear-listeners-o-timers-en-mounted-y-olvidarse-de-limpiarlos","3. Crear listeners o timers en ",[16,11115,203],{}," y olvidarse de limpiarlos",[21,11118,11119],{},"Este error no se nota en el montaje, pero aparece después.",[21,11121,11122],{},"Si registras:",[38,11124,11125,11128,11132,11136],{},[41,11126,11127],{},"eventos globales",[41,11129,11130],{},[16,11131,5508],{},[41,11133,11134],{},[16,11135,7628],{},[41,11137,11138],{},[16,11139,7803],{},[21,11141,11142,11143,11145,11146,118,11148,104],{},"en ",[16,11144,203],{},", deberías limpiarlos en ",[16,11147,7514],{},[16,11149,8295],{},[267,11151,11153],{"className":269,"code":11152,"filename":9339,"language":272,"meta":273,"style":273},"\u003Cscript setup lang=\"ts\">\nimport { onMounted, onBeforeUnmount } from 'vue'\n\nlet interval: number\n\nonMounted(() => {\n  interval = window.setInterval(() => {\n    console.log('tick')\n  }, 1000)\n})\n\nonBeforeUnmount(() => {\n  clearInterval(interval)\n})\n\u003C/script>\n",[16,11154,11155,11171,11182,11186,11197,11201,11211,11229,11242,11251,11255,11259,11269,11276,11280],{"__ignoreMap":273},[277,11156,11157,11159,11161,11163,11165,11167,11169],{"class":279,"line":280},[277,11158,284],{"class":283},[277,11160,288],{"class":287},[277,11162,292],{"class":291},[277,11164,295],{"class":291},[277,11166,298],{"class":283},[277,11168,302],{"class":301},[277,11170,305],{"class":283},[277,11172,11173,11175,11178,11180],{"class":279,"line":308},[277,11174,312],{"class":311},[277,11176,11177],{"class":283}," { onMounted, onBeforeUnmount } ",[277,11179,318],{"class":311},[277,11181,321],{"class":301},[277,11183,11184],{"class":279,"line":324},[277,11185,328],{"emptyLinePlaceholder":327},[277,11187,11188,11190,11193,11195],{"class":279,"line":331},[277,11189,7990],{"class":311},[277,11191,11192],{"class":283}," interval",[277,11194,353],{"class":311},[277,11196,357],{"class":356},[277,11198,11199],{"class":279,"line":346},[277,11200,328],{"emptyLinePlaceholder":327},[277,11202,11203,11205,11207,11209],{"class":279,"line":360},[277,11204,687],{"class":291},[277,11206,2203],{"class":283},[277,11208,601],{"class":311},[277,11210,343],{"class":283},[277,11212,11213,11216,11218,11221,11223,11225,11227],{"class":279,"line":371},[277,11214,11215],{"class":283},"  interval ",[277,11217,298],{"class":311},[277,11219,11220],{"class":283}," window.",[277,11222,5508],{"class":291},[277,11224,2203],{"class":283},[277,11226,601],{"class":311},[277,11228,343],{"class":283},[277,11230,11231,11233,11235,11237,11240],{"class":279,"line":381},[277,11232,2881],{"class":283},[277,11234,2352],{"class":291},[277,11236,448],{"class":283},[277,11238,11239],{"class":301},"'tick'",[277,11241,433],{"class":283},[277,11243,11244,11246,11249],{"class":279,"line":391},[277,11245,6120],{"class":283},[277,11247,11248],{"class":356},"1000",[277,11250,433],{"class":283},[277,11252,11253],{"class":279,"line":397},[277,11254,676],{"class":283},[277,11256,11257],{"class":279,"line":402},[277,11258,328],{"emptyLinePlaceholder":327},[277,11260,11261,11263,11265,11267],{"class":279,"line":436},[277,11262,8295],{"class":291},[277,11264,2203],{"class":283},[277,11266,601],{"class":311},[277,11268,343],{"class":283},[277,11270,11271,11273],{"class":279,"line":456},[277,11272,6165],{"class":291},[277,11274,11275],{"class":283},"(interval)\n",[277,11277,11278],{"class":279,"line":461},[277,11279,676],{"class":283},[277,11281,11282,11284,11286],{"class":279,"line":476},[277,11283,785],{"class":283},[277,11285,288],{"class":287},[277,11287,305],{"class":283},[3111,11289,11290],{},[21,11291,11292,11293,104],{},"Montar bien también implica ",[72,11294,11295],{},"dejar preparado el desmontaje",[192,11297,11299],{"id":11298},"_4-asumir-que-estos-hooks-también-corren-en-ssr","4. Asumir que estos hooks también corren en SSR",[21,11301,11302,11303,104],{},"En Nuxt o en cualquier flujo con renderizado del lado del servidor, estos hooks ",[72,11304,11305],{},"solo se ejecutan en el cliente",[21,11307,11308,11309,11311,11312,104],{},"Si colocas lógica crítica del HTML inicial dentro de ",[16,11310,203],{},", esa lógica ",[72,11313,11314],{},"no formará parte del primer render del servidor",[21,11316,11317,11318,104],{},"En Nuxt, por ejemplo, las cargas de datos iniciales suelen vivir en composables o utilidades como ",[16,11319,11320],{},"useAsyncData",[30,11322,1946],{"id":1945},[192,11324,11326],{"id":11325},"enfocar-un-input-al-entrar-en-la-vista","Enfocar un input al entrar en la vista",[21,11328,11329,11330,104],{},"Es uno de los ejemplos más simples y útiles: necesitas que el elemento exista antes de llamar a ",[16,11331,10934],{},[192,11333,11335],{"id":11334},"inicializar-una-librería-de-terceros","Inicializar una librería de terceros",[21,11337,11338,11339,104],{},"Si usas un gráfico, un calendario o un editor enriquecido, la librería normalmente requiere un contenedor del DOM. Ese momento natural es ",[16,11340,203],{},[192,11342,11344],{"id":11343},"medir-un-bloque-después-del-primer-render","Medir un bloque después del primer render",[21,11346,11347],{},"Algunos componentes necesitan conocer su alto o ancho para decidir animaciones, layout o comportamiento de scroll. Esa medición también pertenece a la fase de montaje.",[267,11349,11351],{"className":269,"code":11350,"filename":271,"language":272,"meta":273,"style":273},"\u003Cscript setup lang=\"ts\">\nimport { onBeforeMount, onMounted, ref } from 'vue'\n\nconst searchInput = ref\u003CHTMLInputElement | null>(null)\nconst status = ref('Preparando componente...')\n\nonBeforeMount(() => {\n  status.value = 'Vue ya preparó la instancia, pero el input todavía no existe en el DOM.'\n})\n\nonMounted(() => {\n  searchInput.value?.focus()\n  status.value = 'Componente montado. El input ya puede recibir foco.'\n})\n\u003C/script>\n\n\u003Ctemplate>\n  \u003Csection class=\"search-panel\">\n    \u003Cp>{{ status }}\u003C/p>\n\n    \u003Cinput\n      ref=\"searchInput\"\n      type=\"search\"\n      placeholder=\"Buscar tareas\"\n    >\n  \u003C/section>\n\u003C/template>\n",[16,11352,11353,11369,11380,11384,11410,11427,11431,11442,11451,11455,11459,11469,11479,11488,11492,11500,11504,11512,11527,11539,11543,11550,11559,11569,11579,11583,11591],{"__ignoreMap":273},[277,11354,11355,11357,11359,11361,11363,11365,11367],{"class":279,"line":280},[277,11356,284],{"class":283},[277,11358,288],{"class":287},[277,11360,292],{"class":291},[277,11362,295],{"class":291},[277,11364,298],{"class":283},[277,11366,302],{"class":301},[277,11368,305],{"class":283},[277,11370,11371,11373,11376,11378],{"class":279,"line":308},[277,11372,312],{"class":311},[277,11374,11375],{"class":283}," { onBeforeMount, onMounted, ref } ",[277,11377,318],{"class":311},[277,11379,321],{"class":301},[277,11381,11382],{"class":279,"line":324},[277,11383,328],{"emptyLinePlaceholder":327},[277,11385,11386,11388,11391,11393,11395,11397,11400,11402,11404,11406,11408],{"class":279,"line":331},[277,11387,405],{"class":311},[277,11389,11390],{"class":356}," searchInput",[277,11392,340],{"class":311},[277,11394,413],{"class":291},[277,11396,284],{"class":283},[277,11398,11399],{"class":291},"HTMLInputElement",[277,11401,421],{"class":311},[277,11403,424],{"class":356},[277,11405,427],{"class":283},[277,11407,430],{"class":356},[277,11409,433],{"class":283},[277,11411,11412,11414,11416,11418,11420,11422,11425],{"class":279,"line":346},[277,11413,405],{"class":311},[277,11415,5726],{"class":356},[277,11417,340],{"class":311},[277,11419,413],{"class":291},[277,11421,448],{"class":283},[277,11423,11424],{"class":301},"'Preparando componente...'",[277,11426,433],{"class":283},[277,11428,11429],{"class":279,"line":360},[277,11430,328],{"emptyLinePlaceholder":327},[277,11432,11433,11436,11438,11440],{"class":279,"line":371},[277,11434,11435],{"class":291},"onBeforeMount",[277,11437,2203],{"class":283},[277,11439,601],{"class":311},[277,11441,343],{"class":283},[277,11443,11444,11446,11448],{"class":279,"line":381},[277,11445,5943],{"class":283},[277,11447,298],{"class":311},[277,11449,11450],{"class":301}," 'Vue ya preparó la instancia, pero el input todavía no existe en el DOM.'\n",[277,11452,11453],{"class":279,"line":391},[277,11454,676],{"class":283},[277,11456,11457],{"class":279,"line":397},[277,11458,328],{"emptyLinePlaceholder":327},[277,11460,11461,11463,11465,11467],{"class":279,"line":402},[277,11462,687],{"class":291},[277,11464,2203],{"class":283},[277,11466,601],{"class":311},[277,11468,343],{"class":283},[277,11470,11471,11474,11477],{"class":279,"line":436},[277,11472,11473],{"class":283},"  searchInput.value?.",[277,11475,11476],{"class":291},"focus",[277,11478,622],{"class":283},[277,11480,11481,11483,11485],{"class":279,"line":456},[277,11482,5943],{"class":283},[277,11484,298],{"class":311},[277,11486,11487],{"class":301}," 'Componente montado. El input ya puede recibir foco.'\n",[277,11489,11490],{"class":279,"line":461},[277,11491,676],{"class":283},[277,11493,11494,11496,11498],{"class":279,"line":476},[277,11495,785],{"class":283},[277,11497,288],{"class":287},[277,11499,305],{"class":283},[277,11501,11502],{"class":279,"line":500},[277,11503,328],{"emptyLinePlaceholder":327},[277,11505,11506,11508,11510],{"class":279,"line":505},[277,11507,284],{"class":283},[277,11509,802],{"class":287},[277,11511,305],{"class":283},[277,11513,11514,11516,11518,11520,11522,11525],{"class":279,"line":520},[277,11515,810],{"class":283},[277,11517,4121],{"class":287},[277,11519,816],{"class":291},[277,11521,298],{"class":283},[277,11523,11524],{"class":301},"\"search-panel\"",[277,11526,305],{"class":283},[277,11528,11529,11531,11533,11535,11537],{"class":279,"line":539},[277,11530,829],{"class":283},[277,11532,21],{"class":287},[277,11534,6367],{"class":283},[277,11536,21],{"class":287},[277,11538,305],{"class":283},[277,11540,11541],{"class":279,"line":545},[277,11542,328],{"emptyLinePlaceholder":327},[277,11544,11545,11547],{"class":279,"line":550},[277,11546,829],{"class":283},[277,11548,11549],{"class":287},"input\n",[277,11551,11552,11554,11556],{"class":279,"line":578},[277,11553,10021],{"class":291},[277,11555,298],{"class":283},[277,11557,11558],{"class":301},"\"searchInput\"\n",[277,11560,11561,11564,11566],{"class":279,"line":583},[277,11562,11563],{"class":291},"      type",[277,11565,298],{"class":283},[277,11567,11568],{"class":301},"\"search\"\n",[277,11570,11571,11574,11576],{"class":279,"line":588},[277,11572,11573],{"class":291},"      placeholder",[277,11575,298],{"class":283},[277,11577,11578],{"class":301},"\"Buscar tareas\"\n",[277,11580,11581],{"class":279,"line":606},[277,11582,10041],{"class":283},[277,11584,11585,11587,11589],{"class":279,"line":614},[277,11586,954],{"class":283},[277,11588,4121],{"class":287},[277,11590,305],{"class":283},[277,11592,11593,11595,11597],{"class":279,"line":625},[277,11594,785],{"class":283},[277,11596,802],{"class":287},[277,11598,305],{"class":283},[267,11600,11602],{"className":269,"code":11601,"filename":971,"language":272,"meta":273,"style":273},"\u003Cscript>\nexport default {\n  data() {\n    return {\n      status: 'Preparando componente...'\n    }\n  },\n\n  beforeMount() {\n    this.status = 'Vue está a punto de insertar el DOM del componente.'\n  },\n\n  mounted() {\n    this.status = 'Componente montado. El input ya puede recibir foco.'\n\n    if (this.$refs.searchInput instanceof HTMLInputElement) {\n      this.$refs.searchInput.focus()\n    }\n  }\n}\n\u003C/script>\n\n\u003Ctemplate>\n  \u003Csection class=\"search-panel\">\n    \u003Cp>{{ status }}\u003C/p>\n\n    \u003Cinput\n      ref=\"searchInput\"\n      type=\"search\"\n      placeholder=\"Buscar tareas\"\n    >\n  \u003C/section>\n\u003C/template>\n",[16,11603,11604,11612,11620,11626,11632,11639,11643,11647,11651,11658,11669,11673,11677,11683,11693,11697,11715,11726,11730,11734,11738,11746,11750,11758,11772,11784,11788,11794,11802,11810,11818,11822,11830],{"__ignoreMap":273},[277,11605,11606,11608,11610],{"class":279,"line":280},[277,11607,284],{"class":283},[277,11609,288],{"class":287},[277,11611,305],{"class":283},[277,11613,11614,11616,11618],{"class":279,"line":308},[277,11615,1057],{"class":311},[277,11617,1060],{"class":311},[277,11619,343],{"class":283},[277,11621,11622,11624],{"class":279,"line":324},[277,11623,1086],{"class":291},[277,11625,473],{"class":283},[277,11627,11628,11630],{"class":279,"line":331},[277,11629,1093],{"class":311},[277,11631,343],{"class":283},[277,11633,11634,11636],{"class":279,"line":346},[277,11635,6620],{"class":283},[277,11637,11638],{"class":301},"'Preparando componente...'\n",[277,11640,11641],{"class":279,"line":360},[277,11642,1126],{"class":283},[277,11644,11645],{"class":279,"line":371},[277,11646,1131],{"class":283},[277,11648,11649],{"class":279,"line":381},[277,11650,328],{"emptyLinePlaceholder":327},[277,11652,11653,11656],{"class":279,"line":391},[277,11654,11655],{"class":291},"  beforeMount",[277,11657,473],{"class":283},[277,11659,11660,11662,11664,11666],{"class":279,"line":397},[277,11661,4724],{"class":356},[277,11663,6821],{"class":283},[277,11665,298],{"class":311},[277,11667,11668],{"class":301}," 'Vue está a punto de insertar el DOM del componente.'\n",[277,11670,11671],{"class":279,"line":402},[277,11672,1131],{"class":283},[277,11674,11675],{"class":279,"line":436},[277,11676,328],{"emptyLinePlaceholder":327},[277,11678,11679,11681],{"class":279,"line":456},[277,11680,6784],{"class":291},[277,11682,473],{"class":283},[277,11684,11685,11687,11689,11691],{"class":279,"line":461},[277,11686,4724],{"class":356},[277,11688,6821],{"class":283},[277,11690,298],{"class":311},[277,11692,11487],{"class":301},[277,11694,11695],{"class":279,"line":476},[277,11696,328],{"emptyLinePlaceholder":327},[277,11698,11699,11701,11703,11705,11708,11710,11713],{"class":279,"line":500},[277,11700,1336],{"class":311},[277,11702,511],{"class":283},[277,11704,1341],{"class":356},[277,11706,11707],{"class":283},".$refs.searchInput ",[277,11709,652],{"class":311},[277,11711,11712],{"class":291}," HTMLInputElement",[277,11714,2476],{"class":283},[277,11716,11717,11719,11722,11724],{"class":279,"line":505},[277,11718,1212],{"class":356},[277,11720,11721],{"class":283},".$refs.searchInput.",[277,11723,11476],{"class":291},[277,11725,622],{"class":283},[277,11727,11728],{"class":279,"line":520},[277,11729,1126],{"class":283},[277,11731,11732],{"class":279,"line":539},[277,11733,542],{"class":283},[277,11735,11736],{"class":279,"line":545},[277,11737,394],{"class":283},[277,11739,11740,11742,11744],{"class":279,"line":550},[277,11741,785],{"class":283},[277,11743,288],{"class":287},[277,11745,305],{"class":283},[277,11747,11748],{"class":279,"line":578},[277,11749,328],{"emptyLinePlaceholder":327},[277,11751,11752,11754,11756],{"class":279,"line":583},[277,11753,284],{"class":283},[277,11755,802],{"class":287},[277,11757,305],{"class":283},[277,11759,11760,11762,11764,11766,11768,11770],{"class":279,"line":588},[277,11761,810],{"class":283},[277,11763,4121],{"class":287},[277,11765,816],{"class":291},[277,11767,298],{"class":283},[277,11769,11524],{"class":301},[277,11771,305],{"class":283},[277,11773,11774,11776,11778,11780,11782],{"class":279,"line":606},[277,11775,829],{"class":283},[277,11777,21],{"class":287},[277,11779,6367],{"class":283},[277,11781,21],{"class":287},[277,11783,305],{"class":283},[277,11785,11786],{"class":279,"line":614},[277,11787,328],{"emptyLinePlaceholder":327},[277,11789,11790,11792],{"class":279,"line":625},[277,11791,829],{"class":283},[277,11793,11549],{"class":287},[277,11795,11796,11798,11800],{"class":279,"line":637},[277,11797,10021],{"class":291},[277,11799,298],{"class":283},[277,11801,11558],{"class":301},[277,11803,11804,11806,11808],{"class":279,"line":646},[277,11805,11563],{"class":291},[277,11807,298],{"class":283},[277,11809,11568],{"class":301},[277,11811,11812,11814,11816],{"class":279,"line":668},[277,11813,11573],{"class":291},[277,11815,298],{"class":283},[277,11817,11578],{"class":301},[277,11819,11820],{"class":279,"line":673},[277,11821,10041],{"class":283},[277,11823,11824,11826,11828],{"class":279,"line":679},[277,11825,954],{"class":283},[277,11827,4121],{"class":287},[277,11829,305],{"class":283},[277,11831,11832,11834,11836],{"class":279,"line":684},[277,11833,785],{"class":283},[277,11835,802],{"class":287},[277,11837,305],{"class":283},[3111,11839,11840],{},[21,11841,11842,11843,11845,11846,11848,11849,11851],{},"Aquí ",[16,11844,10714],{}," solo actualiza un estado informativo. En cambio, ",[16,11847,10934],{}," queda en ",[16,11850,210],{}," porque necesita un nodo real del DOM.",[30,11853,1596],{"id":1595},[38,11855,11856,11861,11870],{},[41,11857,11858,11860],{},[16,11859,10670],{}," existe, pero en la mayoría de componentes no será tu herramienta principal. Si no necesitas el DOM, casi siempre conviene resolver la lógica antes.",[41,11862,11863,11865,11866,11869],{},[16,11864,203],{},", en cambio, tiene un papel muy claro: ",[72,11867,11868],{},"es el hook donde el componente se encuentra con el navegador real",". Inputs, mediciones, gráficos, observers y librerías de terceros suelen empezar ahí.",[41,11871,11872,11873,104],{},"La mejor forma de usar esta fase no es meter más cosas en ella, sino ",[72,11874,11875],{},"reservarla únicamente para lo que realmente depende del DOM",[1606,11877,10618],{},{"title":273,"searchDepth":308,"depth":308,"links":11879},[11880,11881,11882,11883,11884,11893,11898],{"id":60,"depth":308,"text":61},{"id":128,"depth":308,"text":129},{"id":155,"depth":308,"text":156},{"id":7714,"depth":308,"text":7715},{"id":189,"depth":308,"text":190,"children":11885},[11886,11888,11890,11892],{"id":10915,"depth":324,"text":11887},"1. Intentar leer o modificar el DOM en beforeMount",{"id":10950,"depth":324,"text":11889},"2. Mandar a mounted cualquier carga inicial por costumbre",{"id":11112,"depth":324,"text":11891},"3. Crear listeners o timers en mounted y olvidarse de limpiarlos",{"id":11298,"depth":324,"text":11299},{"id":1945,"depth":308,"text":1946,"children":11894},[11895,11896,11897],{"id":11325,"depth":324,"text":11326},{"id":11334,"depth":324,"text":11335},{"id":11343,"depth":324,"text":11344},{"id":1595,"depth":308,"text":1596},"https://res.cloudinary.com/denj4fg7f/image/upload/v1773284431/vue-lifecycle-mounting-phase-beforemount-mounted_wkrzal.png","Ilustración del ciclo de vida de un componente Vue enfocada en la fase de montaje del DOM","2026-03-10","Qué ocurre justo antes y justo después de que Vue inserte un componente en el DOM, y cómo usar beforeMount y mounted sin meter lógica donde no corresponde.",{"script":11904},[11905],{"type":1632,"key":1633,"data-nuxt-schema-org":327,"nodes":11906},[11907],{"headline":10661,"author":11908,"datePublished":11909,"@type":1640},{"name":1637,"@type":1638},"2026-03-09T22:00:00-05:00",{"updatedAt":11909,"coverCaption":11911,"author":1637,"keywords":11912},"La fase de montaje es el momento en el que Vue crea e inserta el DOM del componente en la página.",[1645,10670,203,687,11913],"DOM","/blog/vue-lifecycle-mounting-phase-beforemount-mounted.es",[11916],{"headline":10661,"author":11917,"datePublished":11909,"@type":1640},{"name":1637,"@type":1638},{"title":10661,"description":11902},"blog/vue-lifecycle-mounting-phase-beforemount-mounted.es",[11921,11922,11923,11924],{"tag":1660,"color":1661},{"tag":1668,"color":1669},{"tag":3164,"color":3165},{"tag":9074,"color":9075},"bwpNhnjdtWOZH2a_xkHZPvHQFsRsg-ty6bmYqDJ-NuU",{"id":11927,"title":11928,"body":11929,"cover":13059,"coverAlt":13060,"date":13061,"description":13062,"draft":1627,"extension":1628,"head":13063,"locale":1641,"meta":13070,"navigation":327,"path":13073,"schemaOrg":13074,"seo":13077,"series":1653,"seriesDescription":1654,"seriesOrder":308,"seriesTitle":1655,"slug":1656,"stem":13078,"tags":13079,"__hash__":13084},"blog/blog/vue-lifecycle-creation-phase-beforecreate-created-setup.es.md","Ciclos de vida en Vue: fase de creación (beforeCreate, created, setup)",{"type":8,"value":11930,"toc":13039},[11931,11943,11949,11957,11967,11971,11977,11994,12011,12014,12037,12043,12050,12053,12069,12076,12082,12143,12149,12162,12165,12176,12289,12295,12303,12309,12331,12340,12488,12499,12563,12567,12576,12585,12588,12600,12607,12620,12624,12631,12635,12642,12829,13000,13004,13036],[11,11932,11934,11935,225,11938,225,11941,19],{"id":11933},"ciclos-de-vida-en-vue-fase-de-creación-beforecreate-created-setup","Ciclos de vida en Vue: fase de creación (",[16,11936,11937],{},"beforeCreate",[16,11939,11940],{},"created",[16,11942,10733],{},[21,11944,11945,11946],{},"Cuando empiezas a escribir un componente en Vue, una de las preguntas más comunes es: ",[72,11947,11948],{},"¿dónde debería colocar la lógica inicial?",[21,11950,11951,11952,11954,11955,104],{},"La respuesta depende principalmente de si estás trabajando con ",[72,11953,971],{}," o con ",[72,11956,271],{},[21,11958,11959,11960,11963,11964,104],{},"La ",[72,11961,11962],{},"fase de creación"," es el momento en el que Vue construye la instancia del componente, inicializa su sistema de reactividad y prepara su estado interno. En esta etapa, el componente todavía ",[72,11965,11966],{},"no ha sido montado en el DOM",[30,11968,11970],{"id":11969},"qué-ocurre-en-esta-fase","Qué ocurre en esta fase",[21,11972,11973,11974,11976],{},"En términos prácticos, el orden clásico del ciclo de vida con ",[72,11975,971],{}," es:",[10089,11978,11979,11983,11987],{},[41,11980,11981],{},[16,11982,11937],{},[41,11984,11985],{},[16,11986,11940],{},[41,11988,11989,11990,5245,11992,19],{},"montaje (",[16,11991,10670],{},[16,11993,203],{},[21,11995,11996,11997,11999,12000,12002,12003,12006,12007,1697,12009,104],{},"Con ",[72,11998,271],{},", el punto de entrada es ",[16,12001,3235],{},", que se ejecuta ",[72,12004,12005],{},"antes de los hooks de ciclo de vida de Options API",", incluidos ",[16,12008,11937],{},[16,12010,11940],{},[21,12012,12013],{},"Si quieres quedarte con una idea simple:",[38,12015,12016,12023,12030],{},[41,12017,12018,12022],{},[72,12019,12020],{},[16,12021,11937],{}," → punto extremadamente temprano; rara vez necesario hoy.",[41,12024,12025,12029],{},[72,12026,12027],{},[16,12028,11940],{}," → estado reactivo disponible en Options API.",[41,12031,12032,12036],{},[72,12033,12034],{},[16,12035,10733],{}," → punto de arranque principal en Composition API.",[30,12038,12040,12042],{"id":12039},"beforecreate-cuándo-aparece-y-por-qué-casi-no-se-usa",[16,12041,11937],{},": cuándo aparece y por qué casi no se usa",[21,12044,12045,9305,12047,104],{},[16,12046,11937],{},[72,12048,12049],{},"antes de que Vue termine de inicializar el estado reactivo y las opciones de la instancia",[21,12051,12052],{},"En este punto:",[38,12054,12055,12060,12064],{},[41,12056,12057],{},[16,12058,12059],{},"data",[41,12061,12062],{},[16,12063,1732],{},[41,12065,12066],{},[16,12067,12068],{},"methods",[21,12070,12071,12072,12075],{},"Todavía ",[72,12073,12074],{},"no están inicializados",", por lo que el acceso a la instancia es muy limitado.",[21,12077,12078,12079,104],{},"Por esta razón, en proyectos modernos con Vue 3 este hook rara vez se utiliza. En la mayoría de casos aparece únicamente en ",[72,12080,12081],{},"código legado o escenarios muy específicos relacionados con plugins o extensiones del framework",[267,12083,12086],{"className":269,"code":12084,"filename":9339,"highlights":12085,"language":272,"meta":273,"style":273},"\u003Cscript>\nexport default {\n  beforeCreate() {\n    console.log('El componente está arrancando')\n  }\n}\n\u003C/script>\n",[324,331,346],[16,12087,12088,12096,12104,12112,12126,12131,12135],{"__ignoreMap":273},[277,12089,12090,12092,12094],{"class":279,"line":280},[277,12091,284],{"class":283},[277,12093,288],{"class":287},[277,12095,305],{"class":283},[277,12097,12098,12100,12102],{"class":279,"line":308},[277,12099,1057],{"class":311},[277,12101,1060],{"class":311},[277,12103,343],{"class":283},[277,12105,12107,12110],{"class":12106,"line":324},[279,9398],[277,12108,12109],{"class":291},"  beforeCreate",[277,12111,473],{"class":283},[277,12113,12115,12117,12119,12121,12124],{"class":12114,"line":331},[279,9398],[277,12116,2881],{"class":283},[277,12118,2352],{"class":291},[277,12120,448],{"class":283},[277,12122,12123],{"class":301},"'El componente está arrancando'",[277,12125,433],{"class":283},[277,12127,12129],{"class":12128,"line":346},[279,9398],[277,12130,542],{"class":283},[277,12132,12133],{"class":279,"line":360},[277,12134,394],{"class":283},[277,12136,12137,12139,12141],{"class":279,"line":371},[277,12138,785],{"class":283},[277,12140,288],{"class":287},[277,12142,305],{"class":283},[30,12144,12146,12148],{"id":12145},"created-el-punto-útil-en-options-api",[16,12147,11940],{},": el punto útil en Options API",[21,12150,12151,12152,12154,12155,12158,12159,104],{},"En el hook ",[16,12153,11940],{},", la instancia del componente ya está completamente inicializada en términos de ",[72,12156,12157],{},"estado reactivo y métodos",", aunque el ",[72,12160,12161],{},"DOM todavía no ha sido renderizado",[21,12163,12164],{},"Esto lo convierte en un buen lugar para:",[38,12166,12167,12170,12173],{},[41,12168,12169],{},"Inicializar estado derivado de configuración.",[41,12171,12172],{},"Cargar datos de forma temprana.",[41,12174,12175],{},"Preparar timers o listeners que no dependan del DOM.",[267,12177,12180],{"className":269,"code":12178,"filename":9339,"highlights":12179,"language":272,"meta":273,"style":273},"\u003Cscript>\nexport default {\n  data() {\n    return {\n      users: []\n    }\n  },\n  async created() {\n    this.users = await fetch('/api/users').then((r) => r.json())\n  }\n}\n\u003C/script>\n",[381,391,397],[16,12181,12182,12190,12198,12204,12210,12215,12219,12223,12233,12272,12277,12281],{"__ignoreMap":273},[277,12183,12184,12186,12188],{"class":279,"line":280},[277,12185,284],{"class":283},[277,12187,288],{"class":287},[277,12189,305],{"class":283},[277,12191,12192,12194,12196],{"class":279,"line":308},[277,12193,1057],{"class":311},[277,12195,1060],{"class":311},[277,12197,343],{"class":283},[277,12199,12200,12202],{"class":279,"line":324},[277,12201,1086],{"class":291},[277,12203,473],{"class":283},[277,12205,12206,12208],{"class":279,"line":331},[277,12207,1093],{"class":311},[277,12209,343],{"class":283},[277,12211,12212],{"class":279,"line":346},[277,12213,12214],{"class":283},"      users: []\n",[277,12216,12217],{"class":279,"line":360},[277,12218,1126],{"class":283},[277,12220,12221],{"class":279,"line":371},[277,12222,1131],{"class":283},[277,12224,12226,12228,12231],{"class":12225,"line":381},[279,9398],[277,12227,1248],{"class":311},[277,12229,12230],{"class":291}," created",[277,12232,473],{"class":283},[277,12234,12236,12238,12241,12243,12245,12247,12249,12251,12253,12256,12258,12261,12263,12265,12268,12270],{"class":12235,"line":391},[279,9398],[277,12237,4724],{"class":356},[277,12239,12240],{"class":283},".users ",[277,12242,298],{"class":311},[277,12244,487],{"class":311},[277,12246,490],{"class":291},[277,12248,448],{"class":283},[277,12250,11061],{"class":301},[277,12252,1895],{"class":283},[277,12254,12255],{"class":291},"then",[277,12257,2334],{"class":283},[277,12259,12260],{"class":349},"r",[277,12262,2340],{"class":283},[277,12264,601],{"class":311},[277,12266,12267],{"class":283}," r.",[277,12269,566],{"class":291},[277,12271,2266],{"class":283},[277,12273,12275],{"class":12274,"line":397},[279,9398],[277,12276,542],{"class":283},[277,12278,12279],{"class":279,"line":402},[277,12280,394],{"class":283},[277,12282,12283,12285,12287],{"class":279,"line":436},[277,12284,785],{"class":283},[277,12286,288],{"class":287},[277,12288,305],{"class":283},[30,12290,12292,12294],{"id":12291},"setup-el-arranque-natural-en-vue-3",[16,12293,10733],{},": el arranque natural en Vue 3",[21,12296,12297,12298,225,12300,12302],{},"Cuando trabajas con ",[72,12299,271],{},[16,12301,3235],{}," es el verdadero punto de entrada del componente.",[21,12304,12305,12306,12308],{},"Dentro de ",[16,12307,10733],{}," defines:",[38,12310,12311,12315,12320,12324,12328],{},[41,12312,12313],{},[16,12314,1927],{},[41,12316,12317],{},[16,12318,12319],{},"reactive",[41,12321,12322],{},[16,12323,1732],{},[41,12325,12326],{},[16,12327,1735],{},[41,12329,12330],{},"composables",[21,12332,12333,12334,9305,12336,12339],{},"Además, ",[16,12335,10733],{},[72,12337,12338],{},"antes de que el componente sea montado",", por lo que permite preparar todo el estado que la vista necesitará en su primer render.",[267,12341,12344],{"className":269,"code":12342,"filename":9339,"highlights":12343,"language":272,"meta":273,"style":273},"\u003Cscript setup>\nimport { ref, computed } from 'vue'\n\nconst count = ref(0)\nconst double = computed(() => count.value * 2)\n\nconsole.log('setup ejecutado')\n\u003C/script>\n\n\u003Ctemplate>\n  \u003Cbutton @click=\"count++\">\n    count: {{ count }} / double: {{ double }}\n  \u003C/button>\n\u003C/template>\n",[371],[16,12345,12346,12356,12367,12371,12387,12413,12417,12432,12440,12444,12452,12467,12472,12480],{"__ignoreMap":273},[277,12347,12348,12350,12352,12354],{"class":279,"line":280},[277,12349,284],{"class":283},[277,12351,288],{"class":287},[277,12353,292],{"class":291},[277,12355,305],{"class":283},[277,12357,12358,12360,12363,12365],{"class":279,"line":308},[277,12359,312],{"class":311},[277,12361,12362],{"class":283}," { ref, computed } ",[277,12364,318],{"class":311},[277,12366,321],{"class":301},[277,12368,12369],{"class":279,"line":324},[277,12370,328],{"emptyLinePlaceholder":327},[277,12372,12373,12375,12377,12379,12381,12383,12385],{"class":279,"line":331},[277,12374,405],{"class":311},[277,12376,9380],{"class":356},[277,12378,340],{"class":311},[277,12380,413],{"class":291},[277,12382,448],{"class":283},[277,12384,3542],{"class":356},[277,12386,433],{"class":283},[277,12388,12389,12391,12394,12396,12398,12400,12402,12405,12408,12411],{"class":279,"line":346},[277,12390,405],{"class":311},[277,12392,12393],{"class":356}," double",[277,12395,340],{"class":311},[277,12397,2200],{"class":291},[277,12399,2203],{"class":283},[277,12401,601],{"class":311},[277,12403,12404],{"class":283}," count.value ",[277,12406,12407],{"class":311},"*",[277,12409,12410],{"class":356}," 2",[277,12412,433],{"class":283},[277,12414,12415],{"class":279,"line":360},[277,12416,328],{"emptyLinePlaceholder":327},[277,12418,12420,12423,12425,12427,12430],{"class":12419,"line":371},[279,9398],[277,12421,12422],{"class":283},"console.",[277,12424,2352],{"class":291},[277,12426,448],{"class":283},[277,12428,12429],{"class":301},"'setup ejecutado'",[277,12431,433],{"class":283},[277,12433,12434,12436,12438],{"class":279,"line":381},[277,12435,785],{"class":283},[277,12437,288],{"class":287},[277,12439,305],{"class":283},[277,12441,12442],{"class":279,"line":391},[277,12443,328],{"emptyLinePlaceholder":327},[277,12445,12446,12448,12450],{"class":279,"line":397},[277,12447,284],{"class":283},[277,12449,802],{"class":287},[277,12451,305],{"class":283},[277,12453,12454,12456,12458,12460,12462,12465],{"class":279,"line":402},[277,12455,810],{"class":283},[277,12457,4267],{"class":287},[277,12459,4278],{"class":291},[277,12461,298],{"class":283},[277,12463,12464],{"class":301},"\"count++\"",[277,12466,305],{"class":283},[277,12468,12469],{"class":279,"line":436},[277,12470,12471],{"class":283},"    count: {{ count }} / double: {{ double }}\n",[277,12473,12474,12476,12478],{"class":279,"line":456},[277,12475,954],{"class":283},[277,12477,4267],{"class":287},[277,12479,305],{"class":283},[277,12481,12482,12484,12486],{"class":279,"line":461},[277,12483,785],{"class":283},[277,12485,802],{"class":287},[277,12487,305],{"class":283},[30,12489,12491,12492,12494,12495,12494,12497],{"id":12490},"comparación-rápida-beforecreate-vs-created-vs-setup","Comparación rápida: ",[16,12493,11937],{}," vs ",[16,12496,11940],{},[16,12498,10733],{},[5392,12500,12501,12517],{},[5395,12502,12503],{},[5398,12504,12505,12508,12511,12514],{},[5401,12506,12507],{},"Punto",[5401,12509,12510],{},"API",[5401,12512,12513],{},"Qué ya tienes disponible",[5401,12515,12516],{},"Cuándo elegirlo",[5414,12518,12519,12534,12548],{},[5398,12520,12521,12525,12528,12531],{},[5419,12522,12523],{},[16,12524,11937],{},[5419,12526,12527],{},"Options",[5419,12529,12530],{},"Instancia en arranque temprano",[5419,12532,12533],{},"Casos muy puntuales o código legado",[5398,12535,12536,12540,12542,12545],{},[5419,12537,12538],{},[16,12539,11940],{},[5419,12541,12527],{},[5419,12543,12544],{},"Estado y métodos disponibles, sin DOM",[5419,12546,12547],{},"Inicialización de datos o lógica sin DOM",[5398,12549,12550,12554,12557,12560],{},[5419,12551,12552],{},[16,12553,10733],{},[5419,12555,12556],{},"Composition",[5419,12558,12559],{},"Reactividad y composables desde el inicio",[5419,12561,12562],{},"Opción principal en Vue 3 moderno",[30,12564,12566],{"id":12565},"errores-que-se-repiten-con-frecuencia","Errores que se repiten con frecuencia",[192,12568,12570,12571,12573,12574],{"id":12569},"_1-intentar-manipular-el-dom-en-created-o-al-inicio-de-setup","1) Intentar manipular el DOM en ",[16,12572,11940],{}," o al inicio de ",[16,12575,10733],{},[21,12577,12578,12579,12581,12582,12584],{},"Ni ",[16,12580,11940],{}," ni el inicio de ",[16,12583,10733],{}," garantizan que el DOM exista.",[21,12586,12587],{},"Si necesitas interactuar con elementos reales del DOM, debes usar:",[38,12589,12590,12595],{},[41,12591,12592,12594],{},[16,12593,203],{}," (Options API)",[41,12596,12597,12599],{},[16,12598,687],{}," (Composition API)",[192,12601,12603,12604,12606],{"id":12602},"_2-usar-beforecreate-por-costumbre","2) Usar ",[16,12605,11937],{}," por costumbre",[21,12608,12609,12610,12613,12614,12616,12617,12619],{},"Muchos ejemplos antiguos de Vue lo utilizan, pero en Vue 3 ",[72,12611,12612],{},"rara vez aporta ventajas reales"," frente a ",[16,12615,10733],{}," (Composition API) o ",[16,12618,11940],{}," (Options API).",[192,12621,12623],{"id":12622},"_3-mezclar-mentalmente-options-api-y-composition-api","3) Mezclar mentalmente Options API y Composition API",[21,12625,12626,12627,12630],{},"Vue permite combinar ambas API en un proyecto, pero dentro de un componente conviene ",[72,12628,12629],{},"tener claro cuál es el punto de entrada principal",". Mezclar ambas sin un criterio claro puede terminar duplicando lógica de inicialización.",[30,12632,12634],{"id":12633},"un-ejemplo-equivalente-en-ambos-estilos","Un ejemplo equivalente en ambos estilos",[21,12636,12637,12638,12641],{},"Supongamos que queremos ",[72,12639,12640],{},"cargar usuarios cuando se crea el componente",", sin depender del DOM.",[267,12643,12645],{"className":269,"code":12644,"filename":271,"language":272,"meta":273,"style":273},"\u003Cscript setup>\nimport { ref } from 'vue'\n\nconst users = ref([])\n\nasync function loadUsers() {\n  users.value = await fetch('/api/users').then((r) => r.json())\n}\n\n// Se ejecuta durante setup (fase de creación)\nloadUsers()\n\u003C/script>\n\n\u003Ctemplate>\n  \u003Cul>\n    \u003Cli v-for=\"user in users\" :key=\"user.id\">\n      {{ user.name }}\n    \u003C/li>\n  \u003C/ul>\n\u003C/template>\n",[16,12646,12647,12657,12667,12671,12683,12687,12697,12729,12733,12737,12743,12749,12757,12761,12769,12777,12800,12805,12813,12821],{"__ignoreMap":273},[277,12648,12649,12651,12653,12655],{"class":279,"line":280},[277,12650,284],{"class":283},[277,12652,288],{"class":287},[277,12654,292],{"class":291},[277,12656,305],{"class":283},[277,12658,12659,12661,12663,12665],{"class":279,"line":308},[277,12660,312],{"class":311},[277,12662,11006],{"class":283},[277,12664,318],{"class":311},[277,12666,321],{"class":301},[277,12668,12669],{"class":279,"line":324},[277,12670,328],{"emptyLinePlaceholder":327},[277,12672,12673,12675,12677,12679,12681],{"class":279,"line":331},[277,12674,405],{"class":311},[277,12676,11021],{"class":356},[277,12678,340],{"class":311},[277,12680,413],{"class":291},[277,12682,11028],{"class":283},[277,12684,12685],{"class":279,"line":346},[277,12686,328],{"emptyLinePlaceholder":327},[277,12688,12689,12691,12693,12695],{"class":279,"line":360},[277,12690,464],{"class":311},[277,12692,467],{"class":311},[277,12694,11041],{"class":291},[277,12696,473],{"class":283},[277,12698,12699,12701,12703,12705,12707,12709,12711,12713,12715,12717,12719,12721,12723,12725,12727],{"class":279,"line":371},[277,12700,11068],{"class":283},[277,12702,298],{"class":311},[277,12704,487],{"class":311},[277,12706,490],{"class":291},[277,12708,448],{"class":283},[277,12710,11061],{"class":301},[277,12712,1895],{"class":283},[277,12714,12255],{"class":291},[277,12716,2334],{"class":283},[277,12718,12260],{"class":349},[277,12720,2340],{"class":283},[277,12722,601],{"class":311},[277,12724,12267],{"class":283},[277,12726,566],{"class":291},[277,12728,2266],{"class":283},[277,12730,12731],{"class":279,"line":381},[277,12732,394],{"class":283},[277,12734,12735],{"class":279,"line":391},[277,12736,328],{"emptyLinePlaceholder":327},[277,12738,12739],{"class":279,"line":397},[277,12740,12742],{"class":12741},"sJ8bj","// Se ejecuta durante setup (fase de creación)\n",[277,12744,12745,12747],{"class":279,"line":402},[277,12746,11092],{"class":291},[277,12748,622],{"class":283},[277,12750,12751,12753,12755],{"class":279,"line":436},[277,12752,785],{"class":283},[277,12754,288],{"class":287},[277,12756,305],{"class":283},[277,12758,12759],{"class":279,"line":456},[277,12760,328],{"emptyLinePlaceholder":327},[277,12762,12763,12765,12767],{"class":279,"line":461},[277,12764,284],{"class":283},[277,12766,802],{"class":287},[277,12768,305],{"class":283},[277,12770,12771,12773,12775],{"class":279,"line":476},[277,12772,810],{"class":283},[277,12774,38],{"class":287},[277,12776,305],{"class":283},[277,12778,12779,12781,12783,12786,12788,12791,12793,12795,12798],{"class":279,"line":500},[277,12780,829],{"class":283},[277,12782,41],{"class":287},[277,12784,12785],{"class":291}," v-for",[277,12787,298],{"class":283},[277,12789,12790],{"class":301},"\"user in users\"",[277,12792,4317],{"class":291},[277,12794,298],{"class":283},[277,12796,12797],{"class":301},"\"user.id\"",[277,12799,305],{"class":283},[277,12801,12802],{"class":279,"line":505},[277,12803,12804],{"class":283},"      {{ user.name }}\n",[277,12806,12807,12809,12811],{"class":279,"line":520},[277,12808,922],{"class":283},[277,12810,41],{"class":287},[277,12812,305],{"class":283},[277,12814,12815,12817,12819],{"class":279,"line":539},[277,12816,954],{"class":283},[277,12818,38],{"class":287},[277,12820,305],{"class":283},[277,12822,12823,12825,12827],{"class":279,"line":545},[277,12824,785],{"class":283},[277,12826,802],{"class":287},[277,12828,305],{"class":283},[267,12830,12832],{"className":269,"code":12831,"filename":971,"language":272,"meta":273,"style":273},"\u003Cscript>\nexport default {\n  data() {\n    return {\n      users: []\n    }\n  },\n  async created() {\n    this.users = await fetch('/api/users').then((r) => r.json())\n  }\n}\n\u003C/script>\n\n\u003Ctemplate>\n  \u003Cul>\n    \u003Cli v-for=\"user in users\" :key=\"user.id\">\n      {{ user.name }}\n    \u003C/li>\n  \u003C/ul>\n\u003C/template>\n",[16,12833,12834,12842,12850,12856,12862,12866,12870,12874,12882,12916,12920,12924,12932,12936,12944,12952,12972,12976,12984,12992],{"__ignoreMap":273},[277,12835,12836,12838,12840],{"class":279,"line":280},[277,12837,284],{"class":283},[277,12839,288],{"class":287},[277,12841,305],{"class":283},[277,12843,12844,12846,12848],{"class":279,"line":308},[277,12845,1057],{"class":311},[277,12847,1060],{"class":311},[277,12849,343],{"class":283},[277,12851,12852,12854],{"class":279,"line":324},[277,12853,1086],{"class":291},[277,12855,473],{"class":283},[277,12857,12858,12860],{"class":279,"line":331},[277,12859,1093],{"class":311},[277,12861,343],{"class":283},[277,12863,12864],{"class":279,"line":346},[277,12865,12214],{"class":283},[277,12867,12868],{"class":279,"line":360},[277,12869,1126],{"class":283},[277,12871,12872],{"class":279,"line":371},[277,12873,1131],{"class":283},[277,12875,12876,12878,12880],{"class":279,"line":381},[277,12877,1248],{"class":311},[277,12879,12230],{"class":291},[277,12881,473],{"class":283},[277,12883,12884,12886,12888,12890,12892,12894,12896,12898,12900,12902,12904,12906,12908,12910,12912,12914],{"class":279,"line":391},[277,12885,4724],{"class":356},[277,12887,12240],{"class":283},[277,12889,298],{"class":311},[277,12891,487],{"class":311},[277,12893,490],{"class":291},[277,12895,448],{"class":283},[277,12897,11061],{"class":301},[277,12899,1895],{"class":283},[277,12901,12255],{"class":291},[277,12903,2334],{"class":283},[277,12905,12260],{"class":349},[277,12907,2340],{"class":283},[277,12909,601],{"class":311},[277,12911,12267],{"class":283},[277,12913,566],{"class":291},[277,12915,2266],{"class":283},[277,12917,12918],{"class":279,"line":397},[277,12919,542],{"class":283},[277,12921,12922],{"class":279,"line":402},[277,12923,394],{"class":283},[277,12925,12926,12928,12930],{"class":279,"line":436},[277,12927,785],{"class":283},[277,12929,288],{"class":287},[277,12931,305],{"class":283},[277,12933,12934],{"class":279,"line":456},[277,12935,328],{"emptyLinePlaceholder":327},[277,12937,12938,12940,12942],{"class":279,"line":461},[277,12939,284],{"class":283},[277,12941,802],{"class":287},[277,12943,305],{"class":283},[277,12945,12946,12948,12950],{"class":279,"line":476},[277,12947,810],{"class":283},[277,12949,38],{"class":287},[277,12951,305],{"class":283},[277,12953,12954,12956,12958,12960,12962,12964,12966,12968,12970],{"class":279,"line":500},[277,12955,829],{"class":283},[277,12957,41],{"class":287},[277,12959,12785],{"class":291},[277,12961,298],{"class":283},[277,12963,12790],{"class":301},[277,12965,4317],{"class":291},[277,12967,298],{"class":283},[277,12969,12797],{"class":301},[277,12971,305],{"class":283},[277,12973,12974],{"class":279,"line":505},[277,12975,12804],{"class":283},[277,12977,12978,12980,12982],{"class":279,"line":520},[277,12979,922],{"class":283},[277,12981,41],{"class":287},[277,12983,305],{"class":283},[277,12985,12986,12988,12990],{"class":279,"line":539},[277,12987,954],{"class":283},[277,12989,38],{"class":287},[277,12991,305],{"class":283},[277,12993,12994,12996,12998],{"class":279,"line":545},[277,12995,785],{"class":283},[277,12997,802],{"class":287},[277,12999,305],{"class":283},[30,13001,13003],{"id":13002},"cierre","Cierre",[38,13005,13006,13015,13027],{},[41,13007,13008,13009,13014],{},"En componentes modernos basados en Vue 3, ",[72,13010,13011,13013],{},[16,13012,10733],{}," suele ser el punto de entrada más claro y consistente"," para inicializar estado y lógica.",[41,13016,13017,13018,13020,13021,13026],{},"Si trabajas en componentes escritos con ",[72,13019,971],{},", el hook ",[72,13022,13023,13025],{},[16,13024,11940],{}," sigue siendo completamente válido"," para inicialización que no depende del DOM.",[41,13028,13029,13030,13035],{},"En cambio, ",[72,13031,13032,13034],{},[16,13033,11937],{}," ha quedado como una pieza más histórica que práctica"," en la mayoría de proyectos actuales.",[1606,13037,13038],{},"html pre.shiki code .sVt8B, html code.shiki .sVt8B{--shiki-default:#24292E;--shiki-dark:#E1E4E8}html pre.shiki code .s9eBZ, html code.shiki .s9eBZ{--shiki-default:#22863A;--shiki-dark:#85E89D}html pre.shiki code .szBVR, html code.shiki .szBVR{--shiki-default:#D73A49;--shiki-dark:#F97583}html pre.shiki code .sScJk, html code.shiki .sScJk{--shiki-default:#6F42C1;--shiki-dark:#B392F0}html pre.shiki code .sZZnC, html code.shiki .sZZnC{--shiki-default:#032F62;--shiki-dark:#9ECBFF}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 .sj4cs, html code.shiki .sj4cs{--shiki-default:#005CC5;--shiki-dark:#79B8FF}html pre.shiki code .s4XuR, html code.shiki .s4XuR{--shiki-default:#E36209;--shiki-dark:#FFAB70}html pre.shiki code .sJ8bj, html code.shiki .sJ8bj{--shiki-default:#6A737D;--shiki-dark:#6A737D}",{"title":273,"searchDepth":308,"depth":308,"links":13040},[13041,13042,13044,13046,13048,13050,13057,13058],{"id":11969,"depth":308,"text":11970},{"id":12039,"depth":308,"text":13043},"beforeCreate: cuándo aparece y por qué casi no se usa",{"id":12145,"depth":308,"text":13045},"created: el punto útil en Options API",{"id":12291,"depth":308,"text":13047},"setup: el arranque natural en Vue 3",{"id":12490,"depth":308,"text":13049},"Comparación rápida: beforeCreate vs created vs setup",{"id":12565,"depth":308,"text":12566,"children":13051},[13052,13054,13056],{"id":12569,"depth":324,"text":13053},"1) Intentar manipular el DOM en created o al inicio de setup",{"id":12602,"depth":324,"text":13055},"2) Usar beforeCreate por costumbre",{"id":12622,"depth":324,"text":12623},{"id":12633,"depth":308,"text":12634},{"id":13002,"depth":308,"text":13003},"https://res.cloudinary.com/denj4fg7f/image/upload/v1773284254/vue-lifecycle-creation-phase-beforecreate-created-setup_fkkyiw.png","Ilustración de un ciclo de vida de un componente Vue, destacando la fase de creación con beforeCreate, created y setup","2026-03-07","Qué pasa realmente en la fase de creación de un componente Vue y cómo decidir entre beforeCreate, created y setup.",{"script":13064},[13065],{"type":1632,"key":1633,"data-nuxt-schema-org":327,"nodes":13066},[13067],{"headline":11928,"author":13068,"datePublished":13069,"@type":1640},{"name":1637,"@type":1638},"2026-03-06T20:00:00-05:00",{"updatedAt":13069,"coverCaption":13071,"author":1637,"keywords":13072},"En esta imagen se muestra el ciclo de vida de un componente Vue, con énfasis en la fase de creación donde se ejecutan los hooks beforeCreate, created y setup.",[1645,11937,11940,10733,271],"/blog/vue-lifecycle-creation-phase-beforecreate-created-setup.es",[13075],{"headline":11928,"author":13076,"datePublished":13069,"@type":1640},{"name":1637,"@type":1638},{"title":11928,"description":13062},"blog/vue-lifecycle-creation-phase-beforecreate-created-setup.es",[13080,13081,13082,13083],{"tag":1660,"color":1661},{"tag":1668,"color":1669},{"tag":3167,"color":3168},{"tag":9074,"color":9075},"ZdX1djV5w8iKoO8nPR8TFAm9qctWBqZcMnsng5v4Qa0",{"id":13086,"title":13087,"body":13088,"cover":15680,"coverAlt":13087,"date":15681,"description":15682,"draft":1627,"extension":1628,"head":15683,"locale":1641,"meta":15690,"navigation":327,"path":15695,"schemaOrg":15696,"seo":15699,"series":1653,"seriesDescription":1654,"seriesOrder":280,"seriesTitle":1655,"slug":1656,"stem":15700,"tags":15701,"__hash__":15706},"blog/blog/vue-lifecycle-hooks-overview.es.md","Ciclos de vida en Vue: Una visión general",{"type":8,"value":13089,"toc":15649},[13090,13094,13096,13107,13109,13116,13138,13141,13159,13166,13170,13173,13217,13221,13231,13234,13239,13245,13303,13314,13318,13324,13327,13338,13441,13449,13453,13459,13462,13475,13547,13554,13558,13563,13566,13577,13584,13589,13592,13659,13717,13724,13729,13735,13738,13752,13819,13877,13881,13887,13890,13897,13902,13905,13972,14030,14037,14042,14045,14052,14119,14177,14181,14184,14190,14197,14202,14269,14327,14334,14339,14342,14353,14479,14586,14592,14601,14608,14614,14681,14739,14746,14751,14818,14875,14878,14885,14891,14968,15035,15039,15045,15048,15053,15059,15132,15193,15198,15204,15275,15336,15340,15347,15353,15356,15427,15486,15490,15494,15525,15528,15550,15557,15559,15565,15638,15646],[11,13091,13093],{"id":13092},"ciclos-de-vida-en-vue-guía-práctica-y-cuándo-usar-cada-hook","Ciclos de vida en Vue: guía práctica y cuándo usar cada hook",[30,13095,33],{"id":32},[21,13097,13098,13099,13102,13103,13106],{},"Entender el ",[72,13100,13101],{},"ciclo de vida de un componente"," te permite saber exactamente ",[72,13104,13105],{},"cuándo ejecutar cada tipo de lógica",": inicialización, acceso al DOM, sincronización con API, limpieza de efectos secundarios o depuración.",[11,13108,61],{"id":60},[21,13110,13111,13112,13115],{},"Un componente en ",[72,13113,13114],{},"Vue 3"," atraviesa varias fases:",[10089,13117,13118,13123,13128,13133],{},[41,13119,13120],{},[72,13121,13122],{},"Creación",[41,13124,13125],{},[72,13126,13127],{},"Montaje",[41,13129,13130],{},[72,13131,13132],{},"Actualización",[41,13134,13135],{},[72,13136,13137],{},"Desmontaje",[21,13139,13140],{},"Además, existen hooks especiales para:",[38,13142,13143,13148,13151,13154],{},[41,13144,13145,13146],{},"Componentes cacheados con ",[16,13147,5176],{},[41,13149,13150],{},"Manejo de errores",[41,13152,13153],{},"Depuración del sistema reactivo",[41,13155,13156],{},[72,13157,13158],{},"SSR (Server-Side Rendering)",[21,13160,13161,13162,13165],{},"En las siguientes secciones veremos ",[72,13163,13164],{},"cuándo se ejecuta cada hook y para qué sirve",", con ejemplos.",[30,13167,13169],{"id":13168},"mapa-de-la-serie","Mapa de la serie",[21,13171,13172],{},"Si quieres profundizar en cada grupo de hooks, aquí tienes la ruta completa de esta serie:",[38,13174,13175,13181,13186,13191,13196,13202,13207,13212],{},[41,13176,13177],{},[13178,13179,11928],"a",{"href":13180},"/blog/vue-lifecycle-creation-phase-beforecreate-created-setup.es/",[41,13182,13183],{},[13178,13184,10661],{"href":13185},"/blog/vue-lifecycle-mounting-phase-beforemount-mounted.es/",[41,13187,13188],{},[13178,13189,9079],{"href":13190},"/blog/vue-lifecycle-update-phase-beforeupdate-updated.es/",[41,13192,13193],{},[13178,13194,7505],{"href":13195},"/blog/vue-lifecycle-unmounting-phase-beforeunmount-unmounted.es/",[41,13197,13198],{},[13178,13199,13201],{"href":13200},"/blog/vue-lifecycle-keepalive-activated-deactivated.es/","Ciclos de vida en Vue: componentes cacheados con KeepAlive (activated, deactivated)",[41,13203,13204],{},[13178,13205,3173],{"href":13206},"/blog/vue-lifecycle-error-handling-errorcaptured.es/",[41,13208,13209],{},[13178,13210,1676],{"href":13211},"/blog/vue-lifecycle-render-debug-rendertracked-rendertriggered.es/",[41,13213,13214],{},[13178,13215,6],{"href":13216},"/blog/vue-lifecycle-ssr-serverprefetch.es/",[11,13218,13220],{"id":13219},"creación-del-componente","Creación del componente",[21,13222,13223,13224,13227,13228,104],{},"En esta fase Vue ",[72,13225,13226],{},"crea la instancia del componente y configura la reactividad",", pero ",[72,13229,13230],{},"todavía no existe el DOM",[21,13232,13233],{},"Aquí normalmente se inicializa estado, configuración o llamadas iniciales.",[30,13235,13237],{"id":13236},"beforecreate",[16,13238,11937],{},[21,13240,13241,13242,104],{},"Se ejecuta ",[72,13243,13244],{},"antes de que Vue configure la reactividad",[267,13246,13249],{"className":269,"code":13247,"filename":9339,"highlights":13248,"language":272,"meta":273,"style":273},"\u003Cscript>\nexport default {\n  beforeCreate() {\n    console.log('El componente está iniciando')\n  }\n}\n\u003C/script>\n",[324],[16,13250,13251,13259,13267,13274,13287,13291,13295],{"__ignoreMap":273},[277,13252,13253,13255,13257],{"class":279,"line":280},[277,13254,284],{"class":283},[277,13256,288],{"class":287},[277,13258,305],{"class":283},[277,13260,13261,13263,13265],{"class":279,"line":308},[277,13262,1057],{"class":311},[277,13264,1060],{"class":311},[277,13266,343],{"class":283},[277,13268,13270,13272],{"class":13269,"line":324},[279,9398],[277,13271,12109],{"class":291},[277,13273,473],{"class":283},[277,13275,13276,13278,13280,13282,13285],{"class":279,"line":331},[277,13277,2881],{"class":283},[277,13279,2352],{"class":291},[277,13281,448],{"class":283},[277,13283,13284],{"class":301},"'El componente está iniciando'",[277,13286,433],{"class":283},[277,13288,13289],{"class":279,"line":346},[277,13290,542],{"class":283},[277,13292,13293],{"class":279,"line":360},[277,13294,394],{"class":283},[277,13296,13297,13299,13301],{"class":279,"line":371},[277,13298,785],{"class":283},[277,13300,288],{"class":287},[277,13302,305],{"class":283},[3111,13304,13305],{},[21,13306,13307,13308,13310,13311,13313],{},"No es posible usar ",[16,13309,11937],{}," en Composition API, ya que ",[16,13312,3235],{}," se ejecuta antes de cualquier otro hook.",[30,13315,13316],{"id":11940},[16,13317,11940],{},[21,13319,13320,13321,104],{},"El estado reactivo ya está disponible, pero ",[72,13322,13323],{},"el DOM aún no existe",[21,13325,13326],{},"Se suele usar para:",[38,13328,13329,13332,13335],{},[41,13330,13331],{},"Llamadas HTTP",[41,13333,13334],{},"Inicializar estado",[41,13336,13337],{},"Preparar lógica de negocio",[267,13339,13342],{"className":269,"code":13340,"filename":9339,"highlights":13341,"language":272,"meta":273,"style":273},"\u003Cscript>\nexport default {\n  data() {\n    return {\n      users: []\n    }\n  },\n  async created() {\n    this.users = await fetch('/api/users').then(r => r.json())\n  }\n}\n\u003C/script>\n",[381],[16,13343,13344,13352,13360,13366,13372,13376,13380,13384,13393,13425,13429,13433],{"__ignoreMap":273},[277,13345,13346,13348,13350],{"class":279,"line":280},[277,13347,284],{"class":283},[277,13349,288],{"class":287},[277,13351,305],{"class":283},[277,13353,13354,13356,13358],{"class":279,"line":308},[277,13355,1057],{"class":311},[277,13357,1060],{"class":311},[277,13359,343],{"class":283},[277,13361,13362,13364],{"class":279,"line":324},[277,13363,1086],{"class":291},[277,13365,473],{"class":283},[277,13367,13368,13370],{"class":279,"line":331},[277,13369,1093],{"class":311},[277,13371,343],{"class":283},[277,13373,13374],{"class":279,"line":346},[277,13375,12214],{"class":283},[277,13377,13378],{"class":279,"line":360},[277,13379,1126],{"class":283},[277,13381,13382],{"class":279,"line":371},[277,13383,1131],{"class":283},[277,13385,13387,13389,13391],{"class":13386,"line":381},[279,9398],[277,13388,1248],{"class":311},[277,13390,12230],{"class":291},[277,13392,473],{"class":283},[277,13394,13395,13397,13399,13401,13403,13405,13407,13409,13411,13413,13415,13417,13419,13421,13423],{"class":279,"line":391},[277,13396,4724],{"class":356},[277,13398,12240],{"class":283},[277,13400,298],{"class":311},[277,13402,487],{"class":311},[277,13404,490],{"class":291},[277,13406,448],{"class":283},[277,13408,11061],{"class":301},[277,13410,1895],{"class":283},[277,13412,12255],{"class":291},[277,13414,448],{"class":283},[277,13416,12260],{"class":349},[277,13418,2226],{"class":311},[277,13420,12267],{"class":283},[277,13422,566],{"class":291},[277,13424,2266],{"class":283},[277,13426,13427],{"class":279,"line":397},[277,13428,542],{"class":283},[277,13430,13431],{"class":279,"line":402},[277,13432,394],{"class":283},[277,13434,13435,13437,13439],{"class":279,"line":436},[277,13436,785],{"class":283},[277,13438,288],{"class":287},[277,13440,305],{"class":283},[3111,13442,13443],{},[21,13444,13307,13445,13310,13447,13313],{},[16,13446,11940],{},[16,13448,3235],{},[30,13450,13451],{"id":10733},[16,13452,3235],{},[21,13454,13455,13456,104],{},"Es el ",[72,13457,13458],{},"punto de entrada principal en Composition API",[21,13460,13461],{},"Aquí se define:",[38,13463,13464,13467,13470,13472],{},[41,13465,13466],{},"Estado reactivo",[41,13468,13469],{},"Composables",[41,13471,3238],{},[41,13473,13474],{},"Lógica inicial del componente",[267,13476,13479],{"className":269,"code":13477,"filename":9339,"highlights":13478,"language":272,"meta":273,"style":273},"\u003Cscript setup>\nimport { ref } from 'vue'\n\nconst count = ref(0)\n\nconsole.log('Setup ejecutado')\n\u003C/script>\n",[280],[16,13480,13481,13492,13502,13506,13522,13526,13539],{"__ignoreMap":273},[277,13482,13484,13486,13488,13490],{"class":13483,"line":280},[279,9398],[277,13485,284],{"class":283},[277,13487,288],{"class":287},[277,13489,292],{"class":291},[277,13491,305],{"class":283},[277,13493,13494,13496,13498,13500],{"class":279,"line":308},[277,13495,312],{"class":311},[277,13497,11006],{"class":283},[277,13499,318],{"class":311},[277,13501,321],{"class":301},[277,13503,13504],{"class":279,"line":324},[277,13505,328],{"emptyLinePlaceholder":327},[277,13507,13508,13510,13512,13514,13516,13518,13520],{"class":279,"line":331},[277,13509,405],{"class":311},[277,13511,9380],{"class":356},[277,13513,340],{"class":311},[277,13515,413],{"class":291},[277,13517,448],{"class":283},[277,13519,3542],{"class":356},[277,13521,433],{"class":283},[277,13523,13524],{"class":279,"line":346},[277,13525,328],{"emptyLinePlaceholder":327},[277,13527,13528,13530,13532,13534,13537],{"class":279,"line":360},[277,13529,12422],{"class":283},[277,13531,2352],{"class":291},[277,13533,448],{"class":283},[277,13535,13536],{"class":301},"'Setup ejecutado'",[277,13538,433],{"class":283},[277,13540,13541,13543,13545],{"class":279,"line":371},[277,13542,785],{"class":283},[277,13544,288],{"class":287},[277,13546,305],{"class":283},[3111,13548,13549],{},[21,13550,13307,13551,13553],{},[16,13552,3235],{}," en Options API, ya que es exclusivo de Composition API.",[11,13555,13557],{"id":13556},"montaje-del-componente","Montaje del componente",[21,13559,13223,13560,104],{},[72,13561,13562],{},"crea e inserta el DOM del componente",[21,13564,13565],{},"Aquí ya es seguro usar:",[38,13567,13568,13571,13574],{},[41,13569,13570],{},"API del navegador",[41,13572,13573],{},"Librerías externas",[41,13575,13576],{},"Manipulación del DOM",[30,13578,13580,5245,13582],{"id":13579},"onbeforemount-beforemount",[16,13581,11435],{},[16,13583,10670],{},[21,13585,13241,13586,104],{},[72,13587,13588],{},"justo antes de insertar el DOM en la página",[21,13590,13591],{},"No es muy común usarlo, pero puede servir para lógica previa al render final.",[267,13593,13596],{"className":269,"code":13594,"filename":271,"highlights":13595,"language":272,"meta":273,"style":273},"\u003Cscript setup>\nimport { onBeforeMount } from 'vue'\n\nonBeforeMount(() => {\n  console.log('El componente está por montarse')\n})\n\u003C/script>\n",[331],[16,13597,13598,13608,13619,13623,13634,13647,13651],{"__ignoreMap":273},[277,13599,13600,13602,13604,13606],{"class":279,"line":280},[277,13601,284],{"class":283},[277,13603,288],{"class":287},[277,13605,292],{"class":291},[277,13607,305],{"class":283},[277,13609,13610,13612,13615,13617],{"class":279,"line":308},[277,13611,312],{"class":311},[277,13613,13614],{"class":283}," { onBeforeMount } ",[277,13616,318],{"class":311},[277,13618,321],{"class":301},[277,13620,13621],{"class":279,"line":324},[277,13622,328],{"emptyLinePlaceholder":327},[277,13624,13626,13628,13630,13632],{"class":13625,"line":331},[279,9398],[277,13627,11435],{"class":291},[277,13629,2203],{"class":283},[277,13631,601],{"class":311},[277,13633,343],{"class":283},[277,13635,13636,13638,13640,13642,13645],{"class":279,"line":346},[277,13637,2349],{"class":283},[277,13639,2352],{"class":291},[277,13641,448],{"class":283},[277,13643,13644],{"class":301},"'El componente está por montarse'",[277,13646,433],{"class":283},[277,13648,13649],{"class":279,"line":360},[277,13650,676],{"class":283},[277,13652,13653,13655,13657],{"class":279,"line":371},[277,13654,785],{"class":283},[277,13656,288],{"class":287},[277,13658,305],{"class":283},[267,13660,13663],{"className":269,"code":13661,"filename":971,"highlights":13662,"language":272,"meta":273,"style":273},"\u003Cscript>\nexport default {\n  beforeMount() {\n    console.log('Antes de montar el componente')\n  }\n}\n\u003C/script>\n",[324],[16,13664,13665,13673,13681,13688,13701,13705,13709],{"__ignoreMap":273},[277,13666,13667,13669,13671],{"class":279,"line":280},[277,13668,284],{"class":283},[277,13670,288],{"class":287},[277,13672,305],{"class":283},[277,13674,13675,13677,13679],{"class":279,"line":308},[277,13676,1057],{"class":311},[277,13678,1060],{"class":311},[277,13680,343],{"class":283},[277,13682,13684,13686],{"class":13683,"line":324},[279,9398],[277,13685,11655],{"class":291},[277,13687,473],{"class":283},[277,13689,13690,13692,13694,13696,13699],{"class":279,"line":331},[277,13691,2881],{"class":283},[277,13693,2352],{"class":291},[277,13695,448],{"class":283},[277,13697,13698],{"class":301},"'Antes de montar el componente'",[277,13700,433],{"class":283},[277,13702,13703],{"class":279,"line":346},[277,13704,542],{"class":283},[277,13706,13707],{"class":279,"line":360},[277,13708,394],{"class":283},[277,13710,13711,13713,13715],{"class":279,"line":371},[277,13712,785],{"class":283},[277,13714,288],{"class":287},[277,13716,305],{"class":283},[30,13718,13720,5245,13722],{"id":13719},"onmounted-mounted",[16,13721,687],{},[16,13723,203],{},[21,13725,13241,13726,104],{},[72,13727,13728],{},"después de que el componente fue insertado en el DOM",[21,13730,13731,13732,104],{},"Este es uno de los hooks ",[72,13733,13734],{},"más usados",[21,13736,13737],{},"Usos típicos:",[38,13739,13740,13743,13746,13749],{},[41,13741,13742],{},"Inicializar charts",[41,13744,13745],{},"Registrar listeners",[41,13747,13748],{},"Enfocar inputs",[41,13750,13751],{},"Integrar librerías externas",[267,13753,13756],{"className":269,"code":13754,"filename":271,"highlights":13755,"language":272,"meta":273,"style":273},"\u003Cscript setup>\nimport { onMounted } from 'vue'\n\nonMounted(() => {\n  console.log('Componente montado en el DOM')\n})\n\u003C/script>\n",[331],[16,13757,13758,13768,13779,13783,13794,13807,13811],{"__ignoreMap":273},[277,13759,13760,13762,13764,13766],{"class":279,"line":280},[277,13761,284],{"class":283},[277,13763,288],{"class":287},[277,13765,292],{"class":291},[277,13767,305],{"class":283},[277,13769,13770,13772,13775,13777],{"class":279,"line":308},[277,13771,312],{"class":311},[277,13773,13774],{"class":283}," { onMounted } ",[277,13776,318],{"class":311},[277,13778,321],{"class":301},[277,13780,13781],{"class":279,"line":324},[277,13782,328],{"emptyLinePlaceholder":327},[277,13784,13786,13788,13790,13792],{"class":13785,"line":331},[279,9398],[277,13787,687],{"class":291},[277,13789,2203],{"class":283},[277,13791,601],{"class":311},[277,13793,343],{"class":283},[277,13795,13796,13798,13800,13802,13805],{"class":279,"line":346},[277,13797,2349],{"class":283},[277,13799,2352],{"class":291},[277,13801,448],{"class":283},[277,13803,13804],{"class":301},"'Componente montado en el DOM'",[277,13806,433],{"class":283},[277,13808,13809],{"class":279,"line":360},[277,13810,676],{"class":283},[277,13812,13813,13815,13817],{"class":279,"line":371},[277,13814,785],{"class":283},[277,13816,288],{"class":287},[277,13818,305],{"class":283},[267,13820,13823],{"className":269,"code":13821,"filename":971,"highlights":13822,"language":272,"meta":273,"style":273},"\u003Cscript>\nexport default {\n  mounted() {\n    console.log('Componente montado')\n  }\n}\n\u003C/script>\n",[324],[16,13824,13825,13833,13841,13848,13861,13865,13869],{"__ignoreMap":273},[277,13826,13827,13829,13831],{"class":279,"line":280},[277,13828,284],{"class":283},[277,13830,288],{"class":287},[277,13832,305],{"class":283},[277,13834,13835,13837,13839],{"class":279,"line":308},[277,13836,1057],{"class":311},[277,13838,1060],{"class":311},[277,13840,343],{"class":283},[277,13842,13844,13846],{"class":13843,"line":324},[279,9398],[277,13845,6784],{"class":291},[277,13847,473],{"class":283},[277,13849,13850,13852,13854,13856,13859],{"class":279,"line":331},[277,13851,2881],{"class":283},[277,13853,2352],{"class":291},[277,13855,448],{"class":283},[277,13857,13858],{"class":301},"'Componente montado'",[277,13860,433],{"class":283},[277,13862,13863],{"class":279,"line":346},[277,13864,542],{"class":283},[277,13866,13867],{"class":279,"line":360},[277,13868,394],{"class":283},[277,13870,13871,13873,13875],{"class":279,"line":371},[277,13872,785],{"class":283},[277,13874,288],{"class":287},[277,13876,305],{"class":283},[11,13878,13880],{"id":13879},"actualización-del-componente","Actualización del componente",[21,13882,13883,13884,104],{},"Cuando cambia el estado reactivo, Vue ",[72,13885,13886],{},"vuelve a renderizar el componente",[21,13888,13889],{},"Estos hooks permiten reaccionar antes o después de que el DOM cambie.",[30,13891,13893,5245,13895],{"id":13892},"onbeforeupdate-beforeupdate",[16,13894,9566],{},[16,13896,9088],{},[21,13898,13241,13899,104],{},[72,13900,13901],{},"antes de que Vue actualice el DOM",[21,13903,13904],{},"Puede usarse para inspeccionar el estado previo.",[267,13906,13909],{"className":269,"code":13907,"filename":271,"highlights":13908,"language":272,"meta":273,"style":273},"\u003Cscript setup>\nimport { onBeforeUpdate } from 'vue'\n\nonBeforeUpdate(() => {\n  console.log('Antes de actualizar el DOM')\n})\n\u003C/script>\n",[331],[16,13910,13911,13921,13932,13936,13947,13960,13964],{"__ignoreMap":273},[277,13912,13913,13915,13917,13919],{"class":279,"line":280},[277,13914,284],{"class":283},[277,13916,288],{"class":287},[277,13918,292],{"class":291},[277,13920,305],{"class":283},[277,13922,13923,13925,13928,13930],{"class":279,"line":308},[277,13924,312],{"class":311},[277,13926,13927],{"class":283}," { onBeforeUpdate } ",[277,13929,318],{"class":311},[277,13931,321],{"class":301},[277,13933,13934],{"class":279,"line":324},[277,13935,328],{"emptyLinePlaceholder":327},[277,13937,13939,13941,13943,13945],{"class":13938,"line":331},[279,9398],[277,13940,9566],{"class":291},[277,13942,2203],{"class":283},[277,13944,601],{"class":311},[277,13946,343],{"class":283},[277,13948,13949,13951,13953,13955,13958],{"class":279,"line":346},[277,13950,2349],{"class":283},[277,13952,2352],{"class":291},[277,13954,448],{"class":283},[277,13956,13957],{"class":301},"'Antes de actualizar el DOM'",[277,13959,433],{"class":283},[277,13961,13962],{"class":279,"line":360},[277,13963,676],{"class":283},[277,13965,13966,13968,13970],{"class":279,"line":371},[277,13967,785],{"class":283},[277,13969,288],{"class":287},[277,13971,305],{"class":283},[267,13973,13976],{"className":269,"code":13974,"filename":971,"highlights":13975,"language":272,"meta":273,"style":273},"\u003Cscript>\nexport default {\n  beforeUpdate() {\n    console.log('Antes del update')\n  }\n}\n\u003C/script>\n",[324],[16,13977,13978,13986,13994,14001,14014,14018,14022],{"__ignoreMap":273},[277,13979,13980,13982,13984],{"class":279,"line":280},[277,13981,284],{"class":283},[277,13983,288],{"class":287},[277,13985,305],{"class":283},[277,13987,13988,13990,13992],{"class":279,"line":308},[277,13989,1057],{"class":311},[277,13991,1060],{"class":311},[277,13993,343],{"class":283},[277,13995,13997,13999],{"class":13996,"line":324},[279,9398],[277,13998,10268],{"class":291},[277,14000,473],{"class":283},[277,14002,14003,14005,14007,14009,14012],{"class":279,"line":331},[277,14004,2881],{"class":283},[277,14006,2352],{"class":291},[277,14008,448],{"class":283},[277,14010,14011],{"class":301},"'Antes del update'",[277,14013,433],{"class":283},[277,14015,14016],{"class":279,"line":346},[277,14017,542],{"class":283},[277,14019,14020],{"class":279,"line":360},[277,14021,394],{"class":283},[277,14023,14024,14026,14028],{"class":279,"line":371},[277,14025,785],{"class":283},[277,14027,288],{"class":287},[277,14029,305],{"class":283},[30,14031,14033,5245,14035],{"id":14032},"onupdated-updated",[16,14034,9401],{},[16,14036,9091],{},[21,14038,13241,14039,104],{},[72,14040,14041],{},"después de que Vue actualiza el DOM",[21,14043,14044],{},"Útil cuando necesitas medir o interactuar con el DOM actualizado.",[3111,14046,14047],{},[21,14048,14049,14050,104],{},"⚠️ No debe usarse como reemplazo de ",[16,14051,1735],{},[267,14053,14056],{"className":269,"code":14054,"filename":271,"highlights":14055,"language":272,"meta":273,"style":273},"\u003Cscript setup>\nimport { onUpdated } from 'vue'\n\nonUpdated(() => {\n  console.log('El DOM ya fue actualizado')\n})\n\u003C/script>\n",[331],[16,14057,14058,14068,14079,14083,14094,14107,14111],{"__ignoreMap":273},[277,14059,14060,14062,14064,14066],{"class":279,"line":280},[277,14061,284],{"class":283},[277,14063,288],{"class":287},[277,14065,292],{"class":291},[277,14067,305],{"class":283},[277,14069,14070,14072,14075,14077],{"class":279,"line":308},[277,14071,312],{"class":311},[277,14073,14074],{"class":283}," { onUpdated } ",[277,14076,318],{"class":311},[277,14078,321],{"class":301},[277,14080,14081],{"class":279,"line":324},[277,14082,328],{"emptyLinePlaceholder":327},[277,14084,14086,14088,14090,14092],{"class":14085,"line":331},[279,9398],[277,14087,9401],{"class":291},[277,14089,2203],{"class":283},[277,14091,601],{"class":311},[277,14093,343],{"class":283},[277,14095,14096,14098,14100,14102,14105],{"class":279,"line":346},[277,14097,2349],{"class":283},[277,14099,2352],{"class":291},[277,14101,448],{"class":283},[277,14103,14104],{"class":301},"'El DOM ya fue actualizado'",[277,14106,433],{"class":283},[277,14108,14109],{"class":279,"line":360},[277,14110,676],{"class":283},[277,14112,14113,14115,14117],{"class":279,"line":371},[277,14114,785],{"class":283},[277,14116,288],{"class":287},[277,14118,305],{"class":283},[267,14120,14123],{"className":269,"code":14121,"filename":971,"highlights":14122,"language":272,"meta":273,"style":273},"\u003Cscript>\nexport default {\n  updated() {\n    console.log('DOM actualizado')\n  }\n}\n\u003C/script>\n",[324],[16,14124,14125,14133,14141,14148,14161,14165,14169],{"__ignoreMap":273},[277,14126,14127,14129,14131],{"class":279,"line":280},[277,14128,284],{"class":283},[277,14130,288],{"class":287},[277,14132,305],{"class":283},[277,14134,14135,14137,14139],{"class":279,"line":308},[277,14136,1057],{"class":311},[277,14138,1060],{"class":311},[277,14140,343],{"class":283},[277,14142,14144,14146],{"class":14143,"line":324},[279,9398],[277,14145,10319],{"class":291},[277,14147,473],{"class":283},[277,14149,14150,14152,14154,14156,14159],{"class":279,"line":331},[277,14151,2881],{"class":283},[277,14153,2352],{"class":291},[277,14155,448],{"class":283},[277,14157,14158],{"class":301},"'DOM actualizado'",[277,14160,433],{"class":283},[277,14162,14163],{"class":279,"line":346},[277,14164,542],{"class":283},[277,14166,14167],{"class":279,"line":360},[277,14168,394],{"class":283},[277,14170,14171,14173,14175],{"class":279,"line":371},[277,14172,785],{"class":283},[277,14174,288],{"class":287},[277,14176,305],{"class":283},[11,14178,14180],{"id":14179},"desmontaje-del-componente","Desmontaje del componente",[21,14182,14183],{},"Cuando un componente deja de existir, Vue ejecuta hooks de limpieza.",[21,14185,14186,14187,104],{},"Esto es ",[72,14188,14189],{},"clave para evitar fugas de memoria",[30,14191,14193,5245,14195],{"id":14192},"onbeforeunmount-beforeunmount",[16,14194,8295],{},[16,14196,7514],{},[21,14198,13241,14199,104],{},[72,14200,14201],{},"justo antes de destruir el componente",[267,14203,14206],{"className":269,"code":14204,"filename":271,"highlights":14205,"language":272,"meta":273,"style":273},"\u003Cscript setup>\nimport { onBeforeUnmount } from 'vue'\n\nonBeforeUnmount(() => {\n  console.log('El componente será destruido')\n})\n\u003C/script>\n",[331],[16,14207,14208,14218,14229,14233,14244,14257,14261],{"__ignoreMap":273},[277,14209,14210,14212,14214,14216],{"class":279,"line":280},[277,14211,284],{"class":283},[277,14213,288],{"class":287},[277,14215,292],{"class":291},[277,14217,305],{"class":283},[277,14219,14220,14222,14225,14227],{"class":279,"line":308},[277,14221,312],{"class":311},[277,14223,14224],{"class":283}," { onBeforeUnmount } ",[277,14226,318],{"class":311},[277,14228,321],{"class":301},[277,14230,14231],{"class":279,"line":324},[277,14232,328],{"emptyLinePlaceholder":327},[277,14234,14236,14238,14240,14242],{"class":14235,"line":331},[279,9398],[277,14237,8295],{"class":291},[277,14239,2203],{"class":283},[277,14241,601],{"class":311},[277,14243,343],{"class":283},[277,14245,14246,14248,14250,14252,14255],{"class":279,"line":346},[277,14247,2349],{"class":283},[277,14249,2352],{"class":291},[277,14251,448],{"class":283},[277,14253,14254],{"class":301},"'El componente será destruido'",[277,14256,433],{"class":283},[277,14258,14259],{"class":279,"line":360},[277,14260,676],{"class":283},[277,14262,14263,14265,14267],{"class":279,"line":371},[277,14264,785],{"class":283},[277,14266,288],{"class":287},[277,14268,305],{"class":283},[267,14270,14273],{"className":269,"code":14271,"filename":971,"highlights":14272,"language":272,"meta":273,"style":273},"\u003Cscript>\nexport default {\n  beforeUnmount() {\n    console.log('Antes de desmontar')\n  }\n}\n\u003C/script>\n",[324],[16,14274,14275,14283,14291,14298,14311,14315,14319],{"__ignoreMap":273},[277,14276,14277,14279,14281],{"class":279,"line":280},[277,14278,284],{"class":283},[277,14280,288],{"class":287},[277,14282,305],{"class":283},[277,14284,14285,14287,14289],{"class":279,"line":308},[277,14286,1057],{"class":311},[277,14288,1060],{"class":311},[277,14290,343],{"class":283},[277,14292,14294,14296],{"class":14293,"line":324},[279,9398],[277,14295,8610],{"class":291},[277,14297,473],{"class":283},[277,14299,14300,14302,14304,14306,14309],{"class":279,"line":331},[277,14301,2881],{"class":283},[277,14303,2352],{"class":291},[277,14305,448],{"class":283},[277,14307,14308],{"class":301},"'Antes de desmontar'",[277,14310,433],{"class":283},[277,14312,14313],{"class":279,"line":346},[277,14314,542],{"class":283},[277,14316,14317],{"class":279,"line":360},[277,14318,394],{"class":283},[277,14320,14321,14323,14325],{"class":279,"line":371},[277,14322,785],{"class":283},[277,14324,288],{"class":287},[277,14326,305],{"class":283},[30,14328,14330,5245,14332],{"id":14329},"onunmounted-unmounted",[16,14331,8349],{},[16,14333,5294],{},[21,14335,13241,14336,104],{},[72,14337,14338],{},"después de que el componente fue destruido",[21,14340,14341],{},"Ideal para limpiar:",[38,14343,14344,14347,14350],{},[41,14345,14346],{},"Timers",[41,14348,14349],{},"Sockets",[41,14351,14352],{},"Event listeners",[267,14354,14357],{"className":269,"code":14355,"filename":271,"highlights":14356,"language":272,"meta":273,"style":273},"\u003Cscript setup>\nimport { onMounted, onUnmounted } from 'vue'\n\nlet timer\n\nonMounted(() => {\n  timer = setInterval(() => {\n    console.log('tick')\n  }, 1000)\n})\n\nonUnmounted(() => {\n  clearInterval(timer)\n})\n\u003C/script>\n",[360,436],[16,14358,14359,14369,14380,14384,14391,14395,14406,14421,14433,14441,14445,14449,14460,14467,14471],{"__ignoreMap":273},[277,14360,14361,14363,14365,14367],{"class":279,"line":280},[277,14362,284],{"class":283},[277,14364,288],{"class":287},[277,14366,292],{"class":291},[277,14368,305],{"class":283},[277,14370,14371,14373,14376,14378],{"class":279,"line":308},[277,14372,312],{"class":311},[277,14374,14375],{"class":283}," { onMounted, onUnmounted } ",[277,14377,318],{"class":311},[277,14379,321],{"class":301},[277,14381,14382],{"class":279,"line":324},[277,14383,328],{"emptyLinePlaceholder":327},[277,14385,14386,14388],{"class":279,"line":331},[277,14387,7990],{"class":311},[277,14389,14390],{"class":283}," timer\n",[277,14392,14393],{"class":279,"line":346},[277,14394,328],{"emptyLinePlaceholder":327},[277,14396,14398,14400,14402,14404],{"class":14397,"line":360},[279,9398],[277,14399,687],{"class":291},[277,14401,2203],{"class":283},[277,14403,601],{"class":311},[277,14405,343],{"class":283},[277,14407,14408,14411,14413,14415,14417,14419],{"class":279,"line":371},[277,14409,14410],{"class":283},"  timer ",[277,14412,298],{"class":311},[277,14414,6100],{"class":291},[277,14416,2203],{"class":283},[277,14418,601],{"class":311},[277,14420,343],{"class":283},[277,14422,14423,14425,14427,14429,14431],{"class":279,"line":381},[277,14424,2881],{"class":283},[277,14426,2352],{"class":291},[277,14428,448],{"class":283},[277,14430,11239],{"class":301},[277,14432,433],{"class":283},[277,14434,14435,14437,14439],{"class":279,"line":391},[277,14436,6120],{"class":283},[277,14438,11248],{"class":356},[277,14440,433],{"class":283},[277,14442,14443],{"class":279,"line":397},[277,14444,676],{"class":283},[277,14446,14447],{"class":279,"line":402},[277,14448,328],{"emptyLinePlaceholder":327},[277,14450,14452,14454,14456,14458],{"class":14451,"line":436},[279,9398],[277,14453,8349],{"class":291},[277,14455,2203],{"class":283},[277,14457,601],{"class":311},[277,14459,343],{"class":283},[277,14461,14462,14464],{"class":279,"line":456},[277,14463,6165],{"class":291},[277,14465,14466],{"class":283},"(timer)\n",[277,14468,14469],{"class":279,"line":461},[277,14470,676],{"class":283},[277,14472,14473,14475,14477],{"class":279,"line":476},[277,14474,785],{"class":283},[277,14476,288],{"class":287},[277,14478,305],{"class":283},[267,14480,14483],{"className":269,"code":14481,"filename":971,"highlights":14482,"language":272,"meta":273,"style":273},"\u003Cscript>\nexport default {\n  mounted() {\n    this.timer = setInterval(() => {\n      console.log('tick')\n    }, 1000)\n  },\n  unmounted() {\n    clearInterval(this.timer)\n  }\n}\n\u003C/script>\n",[324,381],[16,14484,14485,14493,14501,14508,14525,14538,14547,14551,14558,14570,14574,14578],{"__ignoreMap":273},[277,14486,14487,14489,14491],{"class":279,"line":280},[277,14488,284],{"class":283},[277,14490,288],{"class":287},[277,14492,305],{"class":283},[277,14494,14495,14497,14499],{"class":279,"line":308},[277,14496,1057],{"class":311},[277,14498,1060],{"class":311},[277,14500,343],{"class":283},[277,14502,14504,14506],{"class":14503,"line":324},[279,9398],[277,14505,6784],{"class":291},[277,14507,473],{"class":283},[277,14509,14510,14512,14515,14517,14519,14521,14523],{"class":279,"line":331},[277,14511,4724],{"class":356},[277,14513,14514],{"class":283},".timer ",[277,14516,298],{"class":311},[277,14518,6100],{"class":291},[277,14520,2203],{"class":283},[277,14522,601],{"class":311},[277,14524,343],{"class":283},[277,14526,14527,14530,14532,14534,14536],{"class":279,"line":346},[277,14528,14529],{"class":283},"      console.",[277,14531,2352],{"class":291},[277,14533,448],{"class":283},[277,14535,11239],{"class":301},[277,14537,433],{"class":283},[277,14539,14540,14543,14545],{"class":279,"line":360},[277,14541,14542],{"class":283},"    }, ",[277,14544,11248],{"class":356},[277,14546,433],{"class":283},[277,14548,14549],{"class":279,"line":371},[277,14550,1131],{"class":283},[277,14552,14554,14556],{"class":14553,"line":381},[279,9398],[277,14555,8668],{"class":291},[277,14557,473],{"class":283},[277,14559,14560,14563,14565,14567],{"class":279,"line":391},[277,14561,14562],{"class":291},"    clearInterval",[277,14564,448],{"class":283},[277,14566,1341],{"class":356},[277,14568,14569],{"class":283},".timer)\n",[277,14571,14572],{"class":279,"line":397},[277,14573,542],{"class":283},[277,14575,14576],{"class":279,"line":402},[277,14577,394],{"class":283},[277,14579,14580,14582,14584],{"class":279,"line":436},[277,14581,785],{"class":283},[277,14583,288],{"class":287},[277,14585,305],{"class":283},[11,14587,14589,14590],{"id":14588},"hooks-de-keepalive","Hooks de ",[16,14591,5176],{},[21,14593,14594,14595,225,14597,14600],{},"Cuando un componente está dentro de ",[16,14596,5176],{},[72,14598,14599],{},"no se destruye",", solo se activa o desactiva.",[30,14602,14604,5245,14606],{"id":14603},"onactivated-activated",[16,14605,6217],{},[16,14607,5179],{},[21,14609,14610,14611,104],{},"Se ejecuta cuando el componente ",[72,14612,14613],{},"vuelve a mostrarse",[267,14615,14618],{"className":269,"code":14616,"filename":271,"highlights":14617,"language":272,"meta":273,"style":273},"\u003Cscript setup>\nimport { onActivated } from 'vue'\n\nonActivated(() => {\n  console.log('Componente reactivado')\n})\n\u003C/script>\n",[331],[16,14619,14620,14630,14641,14645,14656,14669,14673],{"__ignoreMap":273},[277,14621,14622,14624,14626,14628],{"class":279,"line":280},[277,14623,284],{"class":283},[277,14625,288],{"class":287},[277,14627,292],{"class":291},[277,14629,305],{"class":283},[277,14631,14632,14634,14637,14639],{"class":279,"line":308},[277,14633,312],{"class":311},[277,14635,14636],{"class":283}," { onActivated } ",[277,14638,318],{"class":311},[277,14640,321],{"class":301},[277,14642,14643],{"class":279,"line":324},[277,14644,328],{"emptyLinePlaceholder":327},[277,14646,14648,14650,14652,14654],{"class":14647,"line":331},[279,9398],[277,14649,6217],{"class":291},[277,14651,2203],{"class":283},[277,14653,601],{"class":311},[277,14655,343],{"class":283},[277,14657,14658,14660,14662,14664,14667],{"class":279,"line":346},[277,14659,2349],{"class":283},[277,14661,2352],{"class":291},[277,14663,448],{"class":283},[277,14665,14666],{"class":301},"'Componente reactivado'",[277,14668,433],{"class":283},[277,14670,14671],{"class":279,"line":360},[277,14672,676],{"class":283},[277,14674,14675,14677,14679],{"class":279,"line":371},[277,14676,785],{"class":283},[277,14678,288],{"class":287},[277,14680,305],{"class":283},[267,14682,14685],{"className":269,"code":14683,"filename":971,"highlights":14684,"language":272,"meta":273,"style":273},"\u003Cscript>\nexport default {\n  activated() {\n    console.log('Componente reactivado')\n  }\n}\n\u003C/script>\n",[324],[16,14686,14687,14695,14703,14711,14723,14727,14731],{"__ignoreMap":273},[277,14688,14689,14691,14693],{"class":279,"line":280},[277,14690,284],{"class":283},[277,14692,288],{"class":287},[277,14694,305],{"class":283},[277,14696,14697,14699,14701],{"class":279,"line":308},[277,14698,1057],{"class":311},[277,14700,1060],{"class":311},[277,14702,343],{"class":283},[277,14704,14706,14709],{"class":14705,"line":324},[279,9398],[277,14707,14708],{"class":291},"  activated",[277,14710,473],{"class":283},[277,14712,14713,14715,14717,14719,14721],{"class":279,"line":331},[277,14714,2881],{"class":283},[277,14716,2352],{"class":291},[277,14718,448],{"class":283},[277,14720,14666],{"class":301},[277,14722,433],{"class":283},[277,14724,14725],{"class":279,"line":346},[277,14726,542],{"class":283},[277,14728,14729],{"class":279,"line":360},[277,14730,394],{"class":283},[277,14732,14733,14735,14737],{"class":279,"line":371},[277,14734,785],{"class":283},[277,14736,288],{"class":287},[277,14738,305],{"class":283},[30,14740,14742,5245,14744],{"id":14741},"ondeactivated-deactivated",[16,14743,6276],{},[16,14745,5182],{},[21,14747,14610,14748,104],{},[72,14749,14750],{},"se oculta, pero sigue en memoria",[267,14752,14755],{"className":269,"code":14753,"filename":271,"highlights":14754,"language":272,"meta":273,"style":273},"\u003Cscript setup>\nimport { onDeactivated } from 'vue'\n\nonDeactivated(() => {\n  console.log('Componente desactivado')\n})\n\u003C/script>\n",[331],[16,14756,14757,14767,14778,14782,14793,14806,14810],{"__ignoreMap":273},[277,14758,14759,14761,14763,14765],{"class":279,"line":280},[277,14760,284],{"class":283},[277,14762,288],{"class":287},[277,14764,292],{"class":291},[277,14766,305],{"class":283},[277,14768,14769,14771,14774,14776],{"class":279,"line":308},[277,14770,312],{"class":311},[277,14772,14773],{"class":283}," { onDeactivated } ",[277,14775,318],{"class":311},[277,14777,321],{"class":301},[277,14779,14780],{"class":279,"line":324},[277,14781,328],{"emptyLinePlaceholder":327},[277,14783,14785,14787,14789,14791],{"class":14784,"line":331},[279,9398],[277,14786,6276],{"class":291},[277,14788,2203],{"class":283},[277,14790,601],{"class":311},[277,14792,343],{"class":283},[277,14794,14795,14797,14799,14801,14804],{"class":279,"line":346},[277,14796,2349],{"class":283},[277,14798,2352],{"class":291},[277,14800,448],{"class":283},[277,14802,14803],{"class":301},"'Componente desactivado'",[277,14805,433],{"class":283},[277,14807,14808],{"class":279,"line":360},[277,14809,676],{"class":283},[277,14811,14812,14814,14816],{"class":279,"line":371},[277,14813,785],{"class":283},[277,14815,288],{"class":287},[277,14817,305],{"class":283},[267,14819,14822],{"className":269,"code":14820,"filename":971,"highlights":14821,"language":272,"meta":273,"style":273},"\u003Cscript>\nexport default {\n  deactivated() {\n    console.log('Componente desactivado')\n  }\n}\n\u003C/script>\n",[324],[16,14823,14824,14832,14840,14847,14859,14863,14867],{"__ignoreMap":273},[277,14825,14826,14828,14830],{"class":279,"line":280},[277,14827,284],{"class":283},[277,14829,288],{"class":287},[277,14831,305],{"class":283},[277,14833,14834,14836,14838],{"class":279,"line":308},[277,14835,1057],{"class":311},[277,14837,1060],{"class":311},[277,14839,343],{"class":283},[277,14841,14843,14845],{"class":14842,"line":324},[279,9398],[277,14844,6872],{"class":291},[277,14846,473],{"class":283},[277,14848,14849,14851,14853,14855,14857],{"class":279,"line":331},[277,14850,2881],{"class":283},[277,14852,2352],{"class":291},[277,14854,448],{"class":283},[277,14856,14803],{"class":301},[277,14858,433],{"class":283},[277,14860,14861],{"class":279,"line":346},[277,14862,542],{"class":283},[277,14864,14865],{"class":279,"line":360},[277,14866,394],{"class":283},[277,14868,14869,14871,14873],{"class":279,"line":371},[277,14870,785],{"class":283},[277,14872,288],{"class":287},[277,14874,305],{"class":283},[11,14876,13150],{"id":14877},"manejo-de-errores",[30,14879,14881,5245,14883],{"id":14880},"onerrorcaptured-errorcaptured",[16,14882,3922],{},[16,14884,3182],{},[21,14886,14887,14888,104],{},"Permite capturar errores de ",[72,14889,14890],{},"componentes hijos",[267,14892,14895],{"className":269,"code":14893,"filename":271,"highlights":14894,"language":272,"meta":273,"style":273},"\u003Cscript setup>\nimport { onErrorCaptured } from 'vue'\n\nonErrorCaptured((error) => {\n  console.error('Error capturado:', error)\n  return false\n})\n\u003C/script>\n",[331],[16,14896,14897,14907,14918,14922,14937,14950,14956,14960],{"__ignoreMap":273},[277,14898,14899,14901,14903,14905],{"class":279,"line":280},[277,14900,284],{"class":283},[277,14902,288],{"class":287},[277,14904,292],{"class":291},[277,14906,305],{"class":283},[277,14908,14909,14911,14914,14916],{"class":279,"line":308},[277,14910,312],{"class":311},[277,14912,14913],{"class":283}," { onErrorCaptured } ",[277,14915,318],{"class":311},[277,14917,321],{"class":301},[277,14919,14920],{"class":279,"line":324},[277,14921,328],{"emptyLinePlaceholder":327},[277,14923,14925,14927,14929,14931,14933,14935],{"class":14924,"line":331},[279,9398],[277,14926,3922],{"class":291},[277,14928,2334],{"class":283},[277,14930,3349],{"class":349},[277,14932,2340],{"class":283},[277,14934,601],{"class":311},[277,14936,343],{"class":283},[277,14938,14939,14941,14943,14945,14948],{"class":279,"line":346},[277,14940,2349],{"class":283},[277,14942,3349],{"class":291},[277,14944,448],{"class":283},[277,14946,14947],{"class":301},"'Error capturado:'",[277,14949,8215],{"class":283},[277,14951,14952,14954],{"class":279,"line":360},[277,14953,2212],{"class":311},[277,14955,4031],{"class":356},[277,14957,14958],{"class":279,"line":371},[277,14959,676],{"class":283},[277,14961,14962,14964,14966],{"class":279,"line":381},[277,14963,785],{"class":283},[277,14965,288],{"class":287},[277,14967,305],{"class":283},[267,14969,14972],{"className":269,"code":14970,"filename":971,"highlights":14971,"language":272,"meta":273,"style":273},"\u003Cscript>\nexport default {\n  errorCaptured(error) {\n    console.error('Error capturado:', error)\n    return false\n  }\n}\n\u003C/script>\n",[324],[16,14973,14974,14982,14990,15001,15013,15019,15023,15027],{"__ignoreMap":273},[277,14975,14976,14978,14980],{"class":279,"line":280},[277,14977,284],{"class":283},[277,14979,288],{"class":287},[277,14981,305],{"class":283},[277,14983,14984,14986,14988],{"class":279,"line":308},[277,14985,1057],{"class":311},[277,14987,1060],{"class":311},[277,14989,343],{"class":283},[277,14991,14993,14995,14997,14999],{"class":14992,"line":324},[279,9398],[277,14994,4705],{"class":291},[277,14996,448],{"class":283},[277,14998,3349],{"class":349},[277,15000,2476],{"class":283},[277,15002,15003,15005,15007,15009,15011],{"class":279,"line":331},[277,15004,2881],{"class":283},[277,15006,3349],{"class":291},[277,15008,448],{"class":283},[277,15010,14947],{"class":301},[277,15012,8215],{"class":283},[277,15014,15015,15017],{"class":279,"line":346},[277,15016,1093],{"class":311},[277,15018,4031],{"class":356},[277,15020,15021],{"class":279,"line":360},[277,15022,542],{"class":283},[277,15024,15025],{"class":279,"line":371},[277,15026,394],{"class":283},[277,15028,15029,15031,15033],{"class":279,"line":381},[277,15030,785],{"class":283},[277,15032,288],{"class":287},[277,15034,305],{"class":283},[11,15036,15038],{"id":15037},"hooks-de-depuración-del-render","Hooks de depuración del render",[21,15040,15041,15042,104],{},"Estos hooks ayudan a entender ",[72,15043,15044],{},"por qué un componente se vuelve a renderizar",[21,15046,15047],{},"No deben usarse normalmente en producción.",[30,15049,15051],{"id":15050},"onrendertracked",[16,15052,2331],{},[21,15054,15055,15056,104],{},"Se ejecuta cuando Vue ",[72,15057,15058],{},"rastrea una dependencia reactiva durante el render",[267,15060,15063],{"className":269,"code":15061,"filename":271,"highlights":15062,"language":272,"meta":273,"style":273},"\u003Cscript setup>\nimport { onRenderTracked } from 'vue'\n\nonRenderTracked((event) => {\n  console.debug('Dependencia rastreada:', event.key)\n})\n\u003C/script>\n",[331],[16,15064,15065,15075,15086,15090,15105,15120,15124],{"__ignoreMap":273},[277,15066,15067,15069,15071,15073],{"class":279,"line":280},[277,15068,284],{"class":283},[277,15070,288],{"class":287},[277,15072,292],{"class":291},[277,15074,305],{"class":283},[277,15076,15077,15079,15082,15084],{"class":279,"line":308},[277,15078,312],{"class":311},[277,15080,15081],{"class":283}," { onRenderTracked } ",[277,15083,318],{"class":311},[277,15085,321],{"class":301},[277,15087,15088],{"class":279,"line":324},[277,15089,328],{"emptyLinePlaceholder":327},[277,15091,15093,15095,15097,15099,15101,15103],{"class":15092,"line":331},[279,9398],[277,15094,2331],{"class":291},[277,15096,2334],{"class":283},[277,15098,2337],{"class":349},[277,15100,2340],{"class":283},[277,15102,601],{"class":311},[277,15104,343],{"class":283},[277,15106,15107,15109,15112,15114,15117],{"class":279,"line":346},[277,15108,2349],{"class":283},[277,15110,15111],{"class":291},"debug",[277,15113,448],{"class":283},[277,15115,15116],{"class":301},"'Dependencia rastreada:'",[277,15118,15119],{"class":283},", event.key)\n",[277,15121,15122],{"class":279,"line":360},[277,15123,676],{"class":283},[277,15125,15126,15128,15130],{"class":279,"line":371},[277,15127,785],{"class":283},[277,15129,288],{"class":287},[277,15131,305],{"class":283},[267,15133,15136],{"className":269,"code":15134,"filename":971,"highlights":15135,"language":272,"meta":273,"style":273},"\u003Cscript>\nexport default {\n  renderTracked(event) {\n    console.debug('Dependencia rastreada:', event.key)\n  }\n}\n\u003C/script>\n",[324],[16,15137,15138,15146,15154,15165,15177,15181,15185],{"__ignoreMap":273},[277,15139,15140,15142,15144],{"class":279,"line":280},[277,15141,284],{"class":283},[277,15143,288],{"class":287},[277,15145,305],{"class":283},[277,15147,15148,15150,15152],{"class":279,"line":308},[277,15149,1057],{"class":311},[277,15151,1060],{"class":311},[277,15153,343],{"class":283},[277,15155,15157,15159,15161,15163],{"class":15156,"line":324},[279,9398],[277,15158,2870],{"class":291},[277,15160,448],{"class":283},[277,15162,2337],{"class":349},[277,15164,2476],{"class":283},[277,15166,15167,15169,15171,15173,15175],{"class":279,"line":331},[277,15168,2881],{"class":283},[277,15170,15111],{"class":291},[277,15172,448],{"class":283},[277,15174,15116],{"class":301},[277,15176,15119],{"class":283},[277,15178,15179],{"class":279,"line":346},[277,15180,542],{"class":283},[277,15182,15183],{"class":279,"line":360},[277,15184,394],{"class":283},[277,15186,15187,15189,15191],{"class":279,"line":371},[277,15188,785],{"class":283},[277,15190,288],{"class":287},[277,15192,305],{"class":283},[30,15194,15196],{"id":15195},"onrendertriggered",[16,15197,2398],{},[21,15199,15200,15201,104],{},"Se ejecuta cuando ",[72,15202,15203],{},"una dependencia dispara un re-render",[267,15205,15208],{"className":269,"code":15206,"filename":271,"highlights":15207,"language":272,"meta":273,"style":273},"\u003Cscript setup>\nimport { onRenderTriggered } from 'vue'\n\nonRenderTriggered((event) => {\n  console.debug('Re-render causado por:', event.key)\n})\n\u003C/script>\n",[331],[16,15209,15210,15220,15231,15235,15250,15263,15267],{"__ignoreMap":273},[277,15211,15212,15214,15216,15218],{"class":279,"line":280},[277,15213,284],{"class":283},[277,15215,288],{"class":287},[277,15217,292],{"class":291},[277,15219,305],{"class":283},[277,15221,15222,15224,15227,15229],{"class":279,"line":308},[277,15223,312],{"class":311},[277,15225,15226],{"class":283}," { onRenderTriggered } ",[277,15228,318],{"class":311},[277,15230,321],{"class":301},[277,15232,15233],{"class":279,"line":324},[277,15234,328],{"emptyLinePlaceholder":327},[277,15236,15238,15240,15242,15244,15246,15248],{"class":15237,"line":331},[279,9398],[277,15239,2398],{"class":291},[277,15241,2334],{"class":283},[277,15243,2337],{"class":349},[277,15245,2340],{"class":283},[277,15247,601],{"class":311},[277,15249,343],{"class":283},[277,15251,15252,15254,15256,15258,15261],{"class":279,"line":346},[277,15253,2349],{"class":283},[277,15255,15111],{"class":291},[277,15257,448],{"class":283},[277,15259,15260],{"class":301},"'Re-render causado por:'",[277,15262,15119],{"class":283},[277,15264,15265],{"class":279,"line":360},[277,15266,676],{"class":283},[277,15268,15269,15271,15273],{"class":279,"line":371},[277,15270,785],{"class":283},[277,15272,288],{"class":287},[277,15274,305],{"class":283},[267,15276,15279],{"className":269,"code":15277,"filename":971,"highlights":15278,"language":272,"meta":273,"style":273},"\u003Cscript>\nexport default {\n  renderTriggered(event) {\n    console.debug('Re-render causado por:', event.key)\n  }\n}\n\u003C/script>\n",[324],[16,15280,15281,15289,15297,15308,15320,15324,15328],{"__ignoreMap":273},[277,15282,15283,15285,15287],{"class":279,"line":280},[277,15284,284],{"class":283},[277,15286,288],{"class":287},[277,15288,305],{"class":283},[277,15290,15291,15293,15295],{"class":279,"line":308},[277,15292,1057],{"class":311},[277,15294,1060],{"class":311},[277,15296,343],{"class":283},[277,15298,15300,15302,15304,15306],{"class":15299,"line":324},[279,9398],[277,15301,2926],{"class":291},[277,15303,448],{"class":283},[277,15305,2337],{"class":349},[277,15307,2476],{"class":283},[277,15309,15310,15312,15314,15316,15318],{"class":279,"line":331},[277,15311,2881],{"class":283},[277,15313,15111],{"class":291},[277,15315,448],{"class":283},[277,15317,15260],{"class":301},[277,15319,15119],{"class":283},[277,15321,15322],{"class":279,"line":346},[277,15323,542],{"class":283},[277,15325,15326],{"class":279,"line":360},[277,15327,394],{"class":283},[277,15329,15330,15332,15334],{"class":279,"line":371},[277,15331,785],{"class":283},[277,15333,288],{"class":287},[277,15335,305],{"class":283},[11,15337,15339],{"id":15338},"ssr-server-side-rendering","SSR (Server Side Rendering)",[30,15341,15343,5245,15345],{"id":15342},"onserverprefetch-serverprefetch",[16,15344,591],{},[16,15346,18],{},[21,15348,15349,15350,104],{},"Permite ",[72,15351,15352],{},"cargar datos antes de renderizar el HTML en el servidor",[21,15354,15355],{},"Esto evita pantallas vacías durante el primer render.",[267,15357,15360],{"className":269,"code":15358,"filename":271,"highlights":15359,"language":272,"meta":273,"style":273},"\u003Cscript setup>\nimport { onServerPrefetch } from 'vue'\n\nonServerPrefetch(async () => {\n  await fetch('/api/data')\n})\n\u003C/script>\n",[331],[16,15361,15362,15372,15383,15387,15402,15415,15419],{"__ignoreMap":273},[277,15363,15364,15366,15368,15370],{"class":279,"line":280},[277,15365,284],{"class":283},[277,15367,288],{"class":287},[277,15369,292],{"class":291},[277,15371,305],{"class":283},[277,15373,15374,15376,15379,15381],{"class":279,"line":308},[277,15375,312],{"class":311},[277,15377,15378],{"class":283}," { onServerPrefetch } ",[277,15380,318],{"class":311},[277,15382,321],{"class":301},[277,15384,15385],{"class":279,"line":324},[277,15386,328],{"emptyLinePlaceholder":327},[277,15388,15390,15392,15394,15396,15398,15400],{"class":15389,"line":331},[279,9398],[277,15391,591],{"class":291},[277,15393,448],{"class":283},[277,15395,464],{"class":311},[277,15397,598],{"class":283},[277,15399,601],{"class":311},[277,15401,343],{"class":283},[277,15403,15404,15406,15408,15410,15413],{"class":279,"line":346},[277,15405,6252],{"class":311},[277,15407,490],{"class":291},[277,15409,448],{"class":283},[277,15411,15412],{"class":301},"'/api/data'",[277,15414,433],{"class":283},[277,15416,15417],{"class":279,"line":360},[277,15418,676],{"class":283},[277,15420,15421,15423,15425],{"class":279,"line":371},[277,15422,785],{"class":283},[277,15424,288],{"class":287},[277,15426,305],{"class":283},[267,15428,15431],{"className":269,"code":15429,"filename":971,"highlights":15430,"language":272,"meta":273,"style":273},"\u003Cscript>\nexport default {\n  async serverPrefetch() {\n    await fetch('/api/data')\n  }\n}\n\u003C/script>\n",[324],[16,15432,15433,15441,15449,15458,15470,15474,15478],{"__ignoreMap":273},[277,15434,15435,15437,15439],{"class":279,"line":280},[277,15436,284],{"class":283},[277,15438,288],{"class":287},[277,15440,305],{"class":283},[277,15442,15443,15445,15447],{"class":279,"line":308},[277,15444,1057],{"class":311},[277,15446,1060],{"class":311},[277,15448,343],{"class":283},[277,15450,15452,15454,15456],{"class":15451,"line":324},[279,9398],[277,15453,1248],{"class":311},[277,15455,1251],{"class":291},[277,15457,473],{"class":283},[277,15459,15460,15462,15464,15466,15468],{"class":279,"line":331},[277,15461,617],{"class":311},[277,15463,490],{"class":291},[277,15465,448],{"class":283},[277,15467,15412],{"class":301},[277,15469,433],{"class":283},[277,15471,15472],{"class":279,"line":346},[277,15473,542],{"class":283},[277,15475,15476],{"class":279,"line":360},[277,15477,394],{"class":283},[277,15479,15480,15482,15484],{"class":279,"line":371},[277,15481,785],{"class":283},[277,15483,288],{"class":287},[277,15485,305],{"class":283},[11,15487,15489],{"id":15488},"cuándo-usar-hooks-y-cuándo-no","Cuándo usar hooks (y cuándo no)",[30,15491,15493],{"id":15492},"úsalos-cuando","Úsalos cuando:",[38,15495,15496,15504,15512,15519],{},[41,15497,15498,15499,511,15502,19],{},"Necesitas ",[72,15500,15501],{},"acceder al DOM real",[16,15503,687],{},[41,15505,15506,15507,511,15510,19],{},"Haces ",[72,15508,15509],{},"limpieza de recursos",[16,15511,8349],{},[41,15513,15514,15515,511,15517,19],{},"Trabajas con ",[72,15516,1646],{},[16,15518,591],{},[41,15520,15521,15522],{},"Necesitas reaccionar a ",[72,15523,15524],{},"fases del ciclo del componente",[30,15526,1874],{"id":15527},"evítalos-cuando",[38,15529,15530,15537,15544],{},[41,15531,1860,15532,15536],{},[72,15533,15534],{},[16,15535,1732],{}," resuelve el problema",[41,15538,1860,15539,15543],{},[72,15540,15541],{},[16,15542,1735],{}," es suficiente",[41,15545,15546,15547],{},"Solo quieres reaccionar a ",[72,15548,15549],{},"cambios de estado específicos",[21,15551,15552,15553,15556],{},"Los hooks coordinan ",[72,15554,15555],{},"momentos del ciclo",", no deberían contener toda la lógica del componente.",[11,15558,1596],{"id":1595},[21,15560,15561,15562,353],{},"Los hooks del ciclo de vida permiten controlar ",[72,15563,15564],{},"momentos clave del componente",[5392,15566,15567,15577],{},[5395,15568,15569],{},[5398,15570,15571,15574],{},[5401,15572,15573],{},"Fase",[5401,15575,15576],{},"Hooks principales",[5414,15578,15579,15589,15599,15609,15619,15630],{},[5398,15580,15581,15583],{},[5419,15582,13122],{},[5419,15584,15585,225,15587],{},[16,15586,10733],{},[16,15588,11940],{},[5398,15590,15591,15593],{},[5419,15592,13127],{},[5419,15594,15595,225,15597],{},[16,15596,687],{},[16,15598,203],{},[5398,15600,15601,15603],{},[5419,15602,13132],{},[5419,15604,15605,225,15607],{},[16,15606,9401],{},[16,15608,9091],{},[5398,15610,15611,15613],{},[5419,15612,13137],{},[5419,15614,15615,225,15617],{},[16,15616,8349],{},[16,15618,5294],{},[5398,15620,15621,15624],{},[5419,15622,15623],{},"Cache",[5419,15625,15626,225,15628],{},[16,15627,6217],{},[16,15629,6276],{},[5398,15631,15632,15634],{},[5419,15633,1646],{},[5419,15635,15636],{},[16,15637,591],{},[3111,15639,15640],{},[21,15641,15642,15643],{},"Si dudas qué hook usar, pregúntate primero:\n",[72,15644,15645],{},"¿En qué momento de la vida del componente necesito ejecutar esta lógica?",[1606,15647,15648],{},"html pre.shiki code .sVt8B, html code.shiki .sVt8B{--shiki-default:#24292E;--shiki-dark:#E1E4E8}html pre.shiki code .s9eBZ, html code.shiki .s9eBZ{--shiki-default:#22863A;--shiki-dark:#85E89D}html pre.shiki code .szBVR, html code.shiki .szBVR{--shiki-default:#D73A49;--shiki-dark:#F97583}html pre.shiki code .sScJk, html code.shiki .sScJk{--shiki-default:#6F42C1;--shiki-dark:#B392F0}html pre.shiki code .sZZnC, html code.shiki .sZZnC{--shiki-default:#032F62;--shiki-dark:#9ECBFF}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 .sj4cs, html code.shiki .sj4cs{--shiki-default:#005CC5;--shiki-dark:#79B8FF}html pre.shiki code .s4XuR, html code.shiki .s4XuR{--shiki-default:#E36209;--shiki-dark:#FFAB70}",{"title":273,"searchDepth":308,"depth":308,"links":15650},[15651,15652,15653,15654,15655,15656,15658,15660,15662,15664,15666,15668,15670,15672,15674,15675,15676,15678,15679],{"id":32,"depth":308,"text":33},{"id":13168,"depth":308,"text":13169},{"id":13236,"depth":308,"text":11937},{"id":11940,"depth":308,"text":11940},{"id":10733,"depth":308,"text":3235},{"id":13579,"depth":308,"text":15657},"onBeforeMount / beforeMount",{"id":13719,"depth":308,"text":15659},"onMounted / mounted",{"id":13892,"depth":308,"text":15661},"onBeforeUpdate / beforeUpdate",{"id":14032,"depth":308,"text":15663},"onUpdated / updated",{"id":14192,"depth":308,"text":15665},"onBeforeUnmount / beforeUnmount",{"id":14329,"depth":308,"text":15667},"onUnmounted / unmounted",{"id":14603,"depth":308,"text":15669},"onActivated / activated",{"id":14741,"depth":308,"text":15671},"onDeactivated / deactivated",{"id":14880,"depth":308,"text":15673},"onErrorCaptured / errorCaptured",{"id":15050,"depth":308,"text":2331},{"id":15195,"depth":308,"text":2398},{"id":15342,"depth":308,"text":15677},"onServerPrefetch / serverPrefetch",{"id":15492,"depth":308,"text":15493},{"id":15527,"depth":308,"text":1874},"https://res.cloudinary.com/denj4fg7f/image/upload/v1772676391/vue-lifecycle-hooks-overview_ovnxzy.png","2026-03-05","Un mapa claro de todos los ciclos de vida de Vue 3 para entender cuándo usar cada hook.",{"script":15684},[15685],{"type":1632,"key":1633,"data-nuxt-schema-org":327,"nodes":15686},[15687],{"headline":13087,"author":15688,"datePublished":15689,"@type":1640},{"name":1637,"@type":1638},"2026-03-04T21:30:00-05:00",{"updatedAt":15689,"readingTime":381,"coverCaption":15691,"author":1637,"keywords":15692},"Panorama de los hooks del ciclo de vida en Vue 3.",[1645,15693,271,971,15694],"Ciclos de vida","Hooks","/blog/vue-lifecycle-hooks-overview.es",[15697],{"headline":13087,"author":15698,"datePublished":15689,"@type":1640},{"name":1637,"@type":1638},{"title":13087,"description":15682},"blog/vue-lifecycle-hooks-overview.es",[15702,15703,15704,15705],{"tag":1660,"color":1661},{"tag":1668,"color":1669},{"tag":3167,"color":3168},{"tag":9074,"color":9075},"nGcUFbUuOo6OTdj106zQl0xVAijCvTULdUPs-1CJRxw",{"id":15708,"title":15709,"body":15710,"cover":17748,"coverAlt":15709,"date":17749,"description":17750,"draft":1627,"extension":1628,"head":17751,"locale":1641,"meta":17758,"navigation":327,"path":17764,"schemaOrg":17765,"seo":17768,"series":1656,"seriesDescription":1656,"seriesOrder":1656,"seriesTitle":1656,"slug":1656,"stem":17769,"tags":17770,"__hash__":17777},"blog/blog/vue-3-reactivity-internals.es.md","Cómo funciona internamente el sistema de reactividad en Vue 3",{"type":8,"value":15711,"toc":17719},[15712,15715,15727,15731,15737,15748,15751,15760,15764,15768,15776,15788,15795,15799,15802,15826,15862,15865,15878,15885,15890,15893,15936,15942,15946,15955,15970,16857,16952,16956,17007,17010,17014,17022,17040,17065,17071,17077,17080,17212,17215,17229,17237,17245,17266,17269,17286,17290,17293,17304,17307,17464,17467,17469,17473,17515,17518,17530,17534,17545,17553,17561,17623,17626,17637,17641,17644,17668,17672,17675,17686,17689,17711,17716],[11,15713,15709],{"id":15714},"cómo-funciona-internamente-el-sistema-de-reactividad-en-vue-3",[21,15716,15717,15718,225,15720,225,15722,225,15724,15726],{},"Vue 3 introdujo un sistema de reactividad completamente rediseñado respecto a Vue 2, basado en Proxy y en un grafo dinámico de dependencias. Aunque la API pública (",[16,15719,1927],{},[16,15721,12319],{},[16,15723,1732],{},[16,15725,1735],{},") resulta simple, su funcionamiento interno responde a un modelo cuidadosamente optimizado para granularidad, rendimiento y previsibilidad. Entender este modelo no es opcional en aplicaciones grandes: es la diferencia entre depurar síntomas y resolver causas.",[30,15728,15730],{"id":15729},"introducción-basada-en-un-problema-real","Introducción basada en un problema real",[21,15732,15733,15734,15736],{},"En equipos que ya utilizan Vue 3 en producción, las dudas más costosas no suelen ser “cómo usar ",[16,15735,1927],{},"”, sino estas:",[38,15738,15739,15742,15745],{},[41,15740,15741],{},"¿Cómo sabe Vue exactamente qué actualizar y qué no tocar?",[41,15743,15744],{},"¿Por qué un cambio parece correcto, pero no re-renderiza?",[41,15746,15747],{},"¿Por qué una pantalla vuelve a renderizar demasiado y se vuelve lenta?",[21,15749,15750],{},"La respuesta no está en una API aislada. Está en el motor interno: cómo Vue registra dependencias al leer estado y cómo decide qué efectos ejecutar al escribir estado.",[21,15752,15753,15754,118,15756,15759],{},"Cuando este modelo mental no está claro, se depura a ciegas. Cuando sí lo está, se puede razonar sobre causa raíz, costo de render y comportamiento de ",[16,15755,1732],{},[16,15757,15758],{},"watchEffect"," con precisión.",[30,15761,15763],{"id":15762},"modelo-mental-simplificado","Modelo mental simplificado",[192,15765,15767],{"id":15766},"dependency-tracking-en-una-frase","Dependency tracking en una frase",[21,15769,15770,15771,225,15773,15775],{},"Cada vez que un efecto activo (render, ",[16,15772,1732],{},[16,15774,15758],{},") lee una propiedad reactiva, Vue registra una relación:",[267,15777,15782],{"className":15778,"code":15779,"filename":15780,"language":15781,"meta":273,"style":273},"language-txt shiki shiki-themes github-light github-dark","efecto X depende de target.key\n","dependency-rule.txt","txt",[16,15783,15784],{"__ignoreMap":273},[277,15785,15786],{"class":279,"line":280},[277,15787,15779],{},[21,15789,15790,15791,15794],{},"Luego, si ",[16,15792,15793],{},"target.key"," cambia, Vue solo notifica los efectos suscritos a esa clave.",[192,15796,15798],{"id":15797},"estructura-interna-weakmap-map-set","Estructura interna: WeakMap → Map → Set",[21,15800,15801],{},"Un modelo simplificado del almacenamiento de dependencias:",[38,15803,15804,15812,15820],{},[41,15805,15806,15809,15810,1895],{},[16,15807,15808],{},"WeakMap",": índice por objeto reactivo (",[16,15811,1783],{},[41,15813,15814,15817,15818,1895],{},[16,15815,15816],{},"Map",": índice por propiedad dentro de ese objeto (",[16,15819,1789],{},[41,15821,15822,15825],{},[16,15823,15824],{},"Set",": efectos que dependen de esa propiedad.",[267,15827,15830],{"className":15778,"code":15828,"filename":15829,"language":15781,"meta":273,"style":273},"bucket (WeakMap)\n  -> targetA (Map)\n       -> \"count\" (Set: effectRender, effectComputed)\n       -> \"ok\"    (Set: effectRender)\n  -> targetB (Map)\n       -> \"name\"  (Set: effectProfile)\n","dependency-graph.txt",[16,15831,15832,15837,15842,15847,15852,15857],{"__ignoreMap":273},[277,15833,15834],{"class":279,"line":280},[277,15835,15836],{},"bucket (WeakMap)\n",[277,15838,15839],{"class":279,"line":308},[277,15840,15841],{},"  -> targetA (Map)\n",[277,15843,15844],{"class":279,"line":324},[277,15845,15846],{},"       -> \"count\" (Set: effectRender, effectComputed)\n",[277,15848,15849],{"class":279,"line":331},[277,15850,15851],{},"       -> \"ok\"    (Set: effectRender)\n",[277,15853,15854],{"class":279,"line":346},[277,15855,15856],{},"  -> targetB (Map)\n",[277,15858,15859],{"class":279,"line":360},[277,15860,15861],{},"       -> \"name\"  (Set: effectProfile)\n",[21,15863,15864],{},"Esta estructura permite:",[38,15866,15867,15872,15875],{},[41,15868,15869,15870,1895],{},"Evitar memory leaks (gracias a ",[16,15871,15808],{},[41,15873,15874],{},"Tener granularidad por propiedad.",[41,15876,15877],{},"Ejecutar únicamente los efectos necesarios.",[192,15879,15881,15884],{"id":15880},"activeeffect-la-pieza-crítica",[16,15882,15883],{},"activeEffect",": la pieza crítica",[21,15886,15887,15888,104],{},"Vue mantiene una referencia global temporal al efecto que está ejecutándose: ",[16,15889,15883],{},[21,15891,15892],{},"Flujo:",[10089,15894,15895,15905,15914,15928],{},[41,15896,15897,15898,15901,15902,104],{},"Empieza ",[16,15899,15900],{},"effect(fn)"," → ",[16,15903,15904],{},"activeEffect = fn",[41,15906,12305,15907,15910,15911,104],{},[16,15908,15909],{},"fn",", una lectura reactiva ejecuta ",[16,15912,15913],{},"track(target, key)",[41,15915,15916,15919,15920,15922,15923,15925,15926,104],{},[16,15917,15918],{},"track"," asocia ",[16,15921,15883],{}," al ",[16,15924,15824],{}," de ",[16,15927,15793],{},[41,15929,15930,15931,225,15933,15935],{},"Al terminar ",[16,15932,15909],{},[16,15934,15883],{}," vuelve al anterior (stack de efectos anidados).",[21,15937,15938,15939,15941],{},"Sin ",[16,15940,15883],{},", no hay tracking.",[30,15943,15945],{"id":15944},"mini-implementación-desde-cero-en-javascript-puro","Mini implementación desde cero en JavaScript puro",[21,15947,15948,15949,15951,15952,15954],{},"La implementación real es más compleja (maneja tipos de operación, colecciones como ",[16,15950,15816],{},"/",[16,15953,15824],{},", flags internos, etc.), pero este modelo replica las piezas esenciales:",[38,15956,15957,15961,15966],{},[41,15958,15959],{},[16,15960,15913],{},[41,15962,15963],{},[16,15964,15965],{},"trigger(target, key)",[41,15967,15968],{},[16,15969,15900],{},[267,15971,15976],{"className":15972,"code":15973,"filename":15974,"language":15975,"meta":273,"style":273},"language-js shiki shiki-themes github-light github-dark","// Grafo global de dependencias.\nconst bucket = new WeakMap()\n\n// Effect activo y pila para efectos anidados.\nlet activeEffect = null\nconst effectStack = []\n\nfunction cleanup(effectFn) {\n  for (const deps of effectFn.deps) {\n    deps.delete(effectFn)\n  }\n  effectFn.deps.length = 0\n}\n\nfunction effect(fn, options = {}) {\n  const effectFn = () => {\n    cleanup(effectFn)\n    activeEffect = effectFn\n    effectStack.push(effectFn)\n    const result = fn()\n    effectStack.pop()\n    activeEffect = effectStack[effectStack.length - 1] ?? null\n    return result\n  }\n\n  effectFn.deps = []\n  effectFn.options = options\n\n  if (!options.lazy) {\n    effectFn()\n  }\n\n  return effectFn\n}\n\nfunction track(target, key) {\n  if (!activeEffect) return\n\n  let depsMap = bucket.get(target)\n  if (!depsMap) {\n    depsMap = new Map()\n    bucket.set(target, depsMap)\n  }\n\n  let deps = depsMap.get(key)\n  if (!deps) {\n    deps = new Set()\n    depsMap.set(key, deps)\n  }\n\n  if (!deps.has(activeEffect)) {\n    deps.add(activeEffect)\n    activeEffect.deps.push(deps)\n  }\n}\n\nfunction trigger(target, key) {\n  const depsMap = bucket.get(target)\n  if (!depsMap) return\n\n  const deps = depsMap.get(key)\n  if (!deps) return\n\n  const effectsToRun = new Set()\n  deps.forEach((effectFn) => {\n    if (effectFn !== activeEffect) effectsToRun.add(effectFn)\n  })\n\n  effectsToRun.forEach((effectFn) => {\n    if (effectFn.options.scheduler) {\n      effectFn.options.scheduler(effectFn)\n    } else {\n      effectFn()\n    }\n  })\n}\n\nfunction reactive(obj) {\n  return new Proxy(obj, {\n    get(target, key, receiver) {\n      track(target, key)\n      return Reflect.get(target, key, receiver)\n    },\n    set(target, key, value, receiver) {\n      const oldValue = target[key]\n      const result = Reflect.set(target, key, value, receiver)\n      if (!Object.is(oldValue, value)) {\n        trigger(target, key)\n      }\n      return result\n    }\n  })\n}\n","reactivity-core.js","js",[16,15977,15978,15983,15999,16003,16008,16019,16031,16035,16049,16067,16077,16081,16092,16096,16100,16121,16136,16143,16153,16162,16176,16185,16208,16215,16219,16223,16232,16242,16246,16257,16264,16268,16272,16278,16282,16286,16303,16316,16320,16338,16349,16363,16373,16377,16381,16398,16409,16423,16433,16437,16441,16458,16467,16477,16481,16485,16489,16506,16521,16534,16538,16552,16565,16569,16584,16602,16618,16622,16626,16643,16650,16660,16669,16676,16680,16684,16688,16692,16705,16717,16737,16745,16757,16761,16784,16796,16811,16828,16835,16839,16845,16849,16853],{"__ignoreMap":273},[277,15979,15980],{"class":279,"line":280},[277,15981,15982],{"class":12741},"// Grafo global de dependencias.\n",[277,15984,15985,15987,15990,15992,15994,15997],{"class":279,"line":308},[277,15986,405],{"class":311},[277,15988,15989],{"class":356}," bucket",[277,15991,340],{"class":311},[277,15993,526],{"class":311},[277,15995,15996],{"class":291}," WeakMap",[277,15998,622],{"class":283},[277,16000,16001],{"class":279,"line":324},[277,16002,328],{"emptyLinePlaceholder":327},[277,16004,16005],{"class":279,"line":331},[277,16006,16007],{"class":12741},"// Effect activo y pila para efectos anidados.\n",[277,16009,16010,16012,16015,16017],{"class":279,"line":346},[277,16011,7990],{"class":311},[277,16013,16014],{"class":283}," activeEffect ",[277,16016,298],{"class":311},[277,16018,6177],{"class":356},[277,16020,16021,16023,16026,16028],{"class":279,"line":360},[277,16022,405],{"class":311},[277,16024,16025],{"class":356}," effectStack",[277,16027,340],{"class":311},[277,16029,16030],{"class":283}," []\n",[277,16032,16033],{"class":279,"line":371},[277,16034,328],{"emptyLinePlaceholder":327},[277,16036,16037,16039,16042,16044,16047],{"class":279,"line":381},[277,16038,2460],{"class":311},[277,16040,16041],{"class":291}," cleanup",[277,16043,448],{"class":283},[277,16045,16046],{"class":349},"effectFn",[277,16048,2476],{"class":283},[277,16050,16051,16054,16056,16058,16061,16064],{"class":279,"line":391},[277,16052,16053],{"class":311},"  for",[277,16055,511],{"class":283},[277,16057,405],{"class":311},[277,16059,16060],{"class":356}," deps",[277,16062,16063],{"class":311}," of",[277,16065,16066],{"class":283}," effectFn.deps) {\n",[277,16068,16069,16072,16074],{"class":279,"line":397},[277,16070,16071],{"class":283},"    deps.",[277,16073,1807],{"class":291},[277,16075,16076],{"class":283},"(effectFn)\n",[277,16078,16079],{"class":279,"line":402},[277,16080,542],{"class":283},[277,16082,16083,16086,16088,16090],{"class":279,"line":436},[277,16084,16085],{"class":283},"  effectFn.deps.",[277,16087,9813],{"class":356},[277,16089,340],{"class":311},[277,16091,9860],{"class":356},[277,16093,16094],{"class":279,"line":456},[277,16095,394],{"class":283},[277,16097,16098],{"class":279,"line":461},[277,16099,328],{"emptyLinePlaceholder":327},[277,16101,16102,16104,16107,16109,16111,16113,16116,16118],{"class":279,"line":476},[277,16103,2460],{"class":311},[277,16105,16106],{"class":291}," effect",[277,16108,448],{"class":283},[277,16110,15909],{"class":349},[277,16112,225],{"class":283},[277,16114,16115],{"class":349},"options",[277,16117,340],{"class":311},[277,16119,16120],{"class":283}," {}) {\n",[277,16122,16123,16125,16128,16130,16132,16134],{"class":279,"line":500},[277,16124,479],{"class":311},[277,16126,16127],{"class":291}," effectFn",[277,16129,340],{"class":311},[277,16131,598],{"class":283},[277,16133,601],{"class":311},[277,16135,343],{"class":283},[277,16137,16138,16141],{"class":279,"line":505},[277,16139,16140],{"class":291},"    cleanup",[277,16142,16076],{"class":283},[277,16144,16145,16148,16150],{"class":279,"line":520},[277,16146,16147],{"class":283},"    activeEffect ",[277,16149,298],{"class":311},[277,16151,16152],{"class":283}," effectFn\n",[277,16154,16155,16158,16160],{"class":279,"line":539},[277,16156,16157],{"class":283},"    effectStack.",[277,16159,9780],{"class":291},[277,16161,16076],{"class":283},[277,16163,16164,16166,16169,16171,16174],{"class":279,"line":545},[277,16165,2233],{"class":311},[277,16167,16168],{"class":356}," result",[277,16170,340],{"class":311},[277,16172,16173],{"class":291}," fn",[277,16175,622],{"class":283},[277,16177,16178,16180,16183],{"class":279,"line":550},[277,16179,16157],{"class":283},[277,16181,16182],{"class":291},"pop",[277,16184,622],{"class":283},[277,16186,16187,16189,16191,16194,16196,16199,16201,16204,16206],{"class":279,"line":578},[277,16188,16147],{"class":283},[277,16190,298],{"class":311},[277,16192,16193],{"class":283}," effectStack[effectStack.",[277,16195,9813],{"class":356},[277,16197,16198],{"class":311}," -",[277,16200,9819],{"class":356},[277,16202,16203],{"class":283},"] ",[277,16205,9857],{"class":311},[277,16207,6177],{"class":356},[277,16209,16210,16212],{"class":279,"line":583},[277,16211,1093],{"class":311},[277,16213,16214],{"class":283}," result\n",[277,16216,16217],{"class":279,"line":588},[277,16218,542],{"class":283},[277,16220,16221],{"class":279,"line":606},[277,16222,328],{"emptyLinePlaceholder":327},[277,16224,16225,16228,16230],{"class":279,"line":614},[277,16226,16227],{"class":283},"  effectFn.deps ",[277,16229,298],{"class":311},[277,16231,16030],{"class":283},[277,16233,16234,16237,16239],{"class":279,"line":625},[277,16235,16236],{"class":283},"  effectFn.options ",[277,16238,298],{"class":311},[277,16240,16241],{"class":283}," options\n",[277,16243,16244],{"class":279,"line":637},[277,16245,328],{"emptyLinePlaceholder":327},[277,16247,16248,16250,16252,16254],{"class":279,"line":646},[277,16249,508],{"class":311},[277,16251,511],{"class":283},[277,16253,514],{"class":311},[277,16255,16256],{"class":283},"options.lazy) {\n",[277,16258,16259,16262],{"class":279,"line":668},[277,16260,16261],{"class":291},"    effectFn",[277,16263,622],{"class":283},[277,16265,16266],{"class":279,"line":673},[277,16267,542],{"class":283},[277,16269,16270],{"class":279,"line":679},[277,16271,328],{"emptyLinePlaceholder":327},[277,16273,16274,16276],{"class":279,"line":684},[277,16275,2212],{"class":311},[277,16277,16152],{"class":283},[277,16279,16280],{"class":279,"line":700},[277,16281,394],{"class":283},[277,16283,16284],{"class":279,"line":717},[277,16285,328],{"emptyLinePlaceholder":327},[277,16287,16288,16290,16293,16295,16297,16299,16301],{"class":279,"line":722},[277,16289,2460],{"class":311},[277,16291,16292],{"class":291}," track",[277,16294,448],{"class":283},[277,16296,1783],{"class":349},[277,16298,225],{"class":283},[277,16300,1789],{"class":349},[277,16302,2476],{"class":283},[277,16304,16305,16307,16309,16311,16314],{"class":279,"line":729},[277,16306,508],{"class":311},[277,16308,511],{"class":283},[277,16310,514],{"class":311},[277,16312,16313],{"class":283},"activeEffect) ",[277,16315,714],{"class":311},[277,16317,16318],{"class":279,"line":738},[277,16319,328],{"emptyLinePlaceholder":327},[277,16321,16322,16325,16328,16330,16333,16335],{"class":279,"line":747},[277,16323,16324],{"class":311},"  let",[277,16326,16327],{"class":283}," depsMap ",[277,16329,298],{"class":311},[277,16331,16332],{"class":283}," bucket.",[277,16334,1798],{"class":291},[277,16336,16337],{"class":283},"(target)\n",[277,16339,16340,16342,16344,16346],{"class":279,"line":754},[277,16341,508],{"class":311},[277,16343,511],{"class":283},[277,16345,514],{"class":311},[277,16347,16348],{"class":283},"depsMap) {\n",[277,16350,16351,16354,16356,16358,16361],{"class":279,"line":772},[277,16352,16353],{"class":283},"    depsMap ",[277,16355,298],{"class":311},[277,16357,526],{"class":311},[277,16359,16360],{"class":291}," Map",[277,16362,622],{"class":283},[277,16364,16365,16368,16370],{"class":279,"line":777},[277,16366,16367],{"class":283},"    bucket.",[277,16369,1801],{"class":291},[277,16371,16372],{"class":283},"(target, depsMap)\n",[277,16374,16375],{"class":279,"line":782},[277,16376,542],{"class":283},[277,16378,16379],{"class":279,"line":792},[277,16380,328],{"emptyLinePlaceholder":327},[277,16382,16383,16385,16388,16390,16393,16395],{"class":279,"line":797},[277,16384,16324],{"class":311},[277,16386,16387],{"class":283}," deps ",[277,16389,298],{"class":311},[277,16391,16392],{"class":283}," depsMap.",[277,16394,1798],{"class":291},[277,16396,16397],{"class":283},"(key)\n",[277,16399,16400,16402,16404,16406],{"class":279,"line":807},[277,16401,508],{"class":311},[277,16403,511],{"class":283},[277,16405,514],{"class":311},[277,16407,16408],{"class":283},"deps) {\n",[277,16410,16411,16414,16416,16418,16421],{"class":279,"line":826},[277,16412,16413],{"class":283},"    deps ",[277,16415,298],{"class":311},[277,16417,526],{"class":311},[277,16419,16420],{"class":291}," Set",[277,16422,622],{"class":283},[277,16424,16425,16428,16430],{"class":279,"line":849},[277,16426,16427],{"class":283},"    depsMap.",[277,16429,1801],{"class":291},[277,16431,16432],{"class":283},"(key, deps)\n",[277,16434,16435],{"class":279,"line":854},[277,16436,542],{"class":283},[277,16438,16439],{"class":279,"line":876},[277,16440,328],{"emptyLinePlaceholder":327},[277,16442,16443,16445,16447,16449,16452,16455],{"class":279,"line":891},[277,16444,508],{"class":311},[277,16446,511],{"class":283},[277,16448,514],{"class":311},[277,16450,16451],{"class":283},"deps.",[277,16453,16454],{"class":291},"has",[277,16456,16457],{"class":283},"(activeEffect)) {\n",[277,16459,16460,16462,16464],{"class":279,"line":905},[277,16461,16071],{"class":283},[277,16463,1804],{"class":291},[277,16465,16466],{"class":283},"(activeEffect)\n",[277,16468,16469,16472,16474],{"class":279,"line":919},[277,16470,16471],{"class":283},"    activeEffect.deps.",[277,16473,9780],{"class":291},[277,16475,16476],{"class":283},"(deps)\n",[277,16478,16479],{"class":279,"line":929},[277,16480,542],{"class":283},[277,16482,16483],{"class":279,"line":934},[277,16484,394],{"class":283},[277,16486,16487],{"class":279,"line":951},[277,16488,328],{"emptyLinePlaceholder":327},[277,16490,16491,16493,16496,16498,16500,16502,16504],{"class":279,"line":961},[277,16492,2460],{"class":311},[277,16494,16495],{"class":291}," trigger",[277,16497,448],{"class":283},[277,16499,1783],{"class":349},[277,16501,225],{"class":283},[277,16503,1789],{"class":349},[277,16505,2476],{"class":283},[277,16507,16508,16510,16513,16515,16517,16519],{"class":279,"line":1473},[277,16509,479],{"class":311},[277,16511,16512],{"class":356}," depsMap",[277,16514,340],{"class":311},[277,16516,16332],{"class":283},[277,16518,1798],{"class":291},[277,16520,16337],{"class":283},[277,16522,16523,16525,16527,16529,16532],{"class":279,"line":1478},[277,16524,508],{"class":311},[277,16526,511],{"class":283},[277,16528,514],{"class":311},[277,16530,16531],{"class":283},"depsMap) ",[277,16533,714],{"class":311},[277,16535,16536],{"class":279,"line":1497},[277,16537,328],{"emptyLinePlaceholder":327},[277,16539,16540,16542,16544,16546,16548,16550],{"class":279,"line":1510},[277,16541,479],{"class":311},[277,16543,16060],{"class":356},[277,16545,340],{"class":311},[277,16547,16392],{"class":283},[277,16549,1798],{"class":291},[277,16551,16397],{"class":283},[277,16553,16554,16556,16558,16560,16563],{"class":279,"line":1523},[277,16555,508],{"class":311},[277,16557,511],{"class":283},[277,16559,514],{"class":311},[277,16561,16562],{"class":283},"deps) ",[277,16564,714],{"class":311},[277,16566,16567],{"class":279,"line":1536},[277,16568,328],{"emptyLinePlaceholder":327},[277,16570,16571,16573,16576,16578,16580,16582],{"class":279,"line":1545},[277,16572,479],{"class":311},[277,16574,16575],{"class":356}," effectsToRun",[277,16577,340],{"class":311},[277,16579,526],{"class":311},[277,16581,16420],{"class":291},[277,16583,622],{"class":283},[277,16585,16586,16589,16592,16594,16596,16598,16600],{"class":279,"line":1550},[277,16587,16588],{"class":283},"  deps.",[277,16590,16591],{"class":291},"forEach",[277,16593,2334],{"class":283},[277,16595,16046],{"class":349},[277,16597,2340],{"class":283},[277,16599,601],{"class":311},[277,16601,343],{"class":283},[277,16603,16604,16606,16609,16611,16614,16616],{"class":279,"line":1565},[277,16605,1336],{"class":311},[277,16607,16608],{"class":283}," (effectFn ",[277,16610,6080],{"class":311},[277,16612,16613],{"class":283}," activeEffect) effectsToRun.",[277,16615,1804],{"class":291},[277,16617,16076],{"class":283},[277,16619,16620],{"class":279,"line":1574},[277,16621,2318],{"class":283},[277,16623,16624],{"class":279,"line":4076},[277,16625,328],{"emptyLinePlaceholder":327},[277,16627,16628,16631,16633,16635,16637,16639,16641],{"class":279,"line":4088},[277,16629,16630],{"class":283},"  effectsToRun.",[277,16632,16591],{"class":291},[277,16634,2334],{"class":283},[277,16636,16046],{"class":349},[277,16638,2340],{"class":283},[277,16640,601],{"class":311},[277,16642,343],{"class":283},[277,16644,16645,16647],{"class":279,"line":4093},[277,16646,1336],{"class":311},[277,16648,16649],{"class":283}," (effectFn.options.scheduler) {\n",[277,16651,16652,16655,16658],{"class":279,"line":4102},[277,16653,16654],{"class":283},"      effectFn.options.",[277,16656,16657],{"class":291},"scheduler",[277,16659,16076],{"class":283},[277,16661,16662,16664,16667],{"class":279,"line":4107},[277,16663,1280],{"class":283},[277,16665,16666],{"class":311},"else",[277,16668,343],{"class":283},[277,16670,16671,16674],{"class":279,"line":4116},[277,16672,16673],{"class":291},"      effectFn",[277,16675,622],{"class":283},[277,16677,16678],{"class":279,"line":4133},[277,16679,1126],{"class":283},[277,16681,16682],{"class":279,"line":4143},[277,16683,2318],{"class":283},[277,16685,16686],{"class":279,"line":4157},[277,16687,394],{"class":283},[277,16689,16690],{"class":279,"line":4166},[277,16691,328],{"emptyLinePlaceholder":327},[277,16693,16694,16696,16698,16700,16703],{"class":279,"line":4172},[277,16695,2460],{"class":311},[277,16697,2024],{"class":291},[277,16699,448],{"class":283},[277,16701,16702],{"class":349},"obj",[277,16704,2476],{"class":283},[277,16706,16707,16709,16711,16714],{"class":279,"line":4182},[277,16708,2212],{"class":311},[277,16710,526],{"class":311},[277,16712,16713],{"class":291}," Proxy",[277,16715,16716],{"class":283},"(obj, {\n",[277,16718,16719,16722,16724,16726,16728,16730,16732,16735],{"class":279,"line":4191},[277,16720,16721],{"class":291},"    get",[277,16723,448],{"class":283},[277,16725,1783],{"class":349},[277,16727,225],{"class":283},[277,16729,1789],{"class":349},[277,16731,225],{"class":283},[277,16733,16734],{"class":349},"receiver",[277,16736,2476],{"class":283},[277,16738,16739,16742],{"class":279,"line":4196},[277,16740,16741],{"class":291},"      track",[277,16743,16744],{"class":283},"(target, key)\n",[277,16746,16747,16749,16752,16754],{"class":279,"line":4220},[277,16748,2754],{"class":311},[277,16750,16751],{"class":283}," Reflect.",[277,16753,1798],{"class":291},[277,16755,16756],{"class":283},"(target, key, receiver)\n",[277,16758,16759],{"class":279,"line":4234},[277,16760,7016],{"class":283},[277,16762,16763,16766,16768,16770,16772,16774,16776,16778,16780,16782],{"class":279,"line":4247},[277,16764,16765],{"class":291},"    set",[277,16767,448],{"class":283},[277,16769,1783],{"class":349},[277,16771,225],{"class":283},[277,16773,1789],{"class":349},[277,16775,225],{"class":283},[277,16777,3885],{"class":349},[277,16779,225],{"class":283},[277,16781,16734],{"class":349},[277,16783,2476],{"class":283},[277,16785,16786,16788,16791,16793],{"class":279,"line":4262},[277,16787,1154],{"class":311},[277,16789,16790],{"class":356}," oldValue",[277,16792,340],{"class":311},[277,16794,16795],{"class":283}," target[key]\n",[277,16797,16798,16800,16802,16804,16806,16808],{"class":279,"line":4293},[277,16799,1154],{"class":311},[277,16801,16168],{"class":356},[277,16803,340],{"class":311},[277,16805,16751],{"class":283},[277,16807,1801],{"class":291},[277,16809,16810],{"class":283},"(target, key, value, receiver)\n",[277,16812,16813,16815,16817,16819,16822,16825],{"class":279,"line":4302},[277,16814,1177],{"class":311},[277,16816,511],{"class":283},[277,16818,514],{"class":311},[277,16820,16821],{"class":283},"Object.",[277,16823,16824],{"class":291},"is",[277,16826,16827],{"class":283},"(oldValue, value)) {\n",[277,16829,16830,16833],{"class":279,"line":4307},[277,16831,16832],{"class":291},"        trigger",[277,16834,16744],{"class":283},[277,16836,16837],{"class":279,"line":4328},[277,16838,1203],{"class":283},[277,16840,16841,16843],{"class":279,"line":4337},[277,16842,2754],{"class":311},[277,16844,16214],{"class":283},[277,16846,16847],{"class":279,"line":4993},[277,16848,1126],{"class":283},[277,16850,16851],{"class":279,"line":5006},[277,16852,2318],{"class":283},[277,16854,16855],{"class":279,"line":5019},[277,16856,394],{"class":283},[267,16858,16861],{"className":15972,"code":16859,"filename":16860,"language":15975,"meta":273,"style":273},"const state = reactive({ count: 0, ok: true })\n\neffect(() => {\n  console.log(\"render ->\", state.ok ? state.count : \"hidden\")\n})\n\nstate.count++\nstate.ok = false\n","demo.js",[16,16862,16863,16887,16891,16902,16928,16932,16936,16943],{"__ignoreMap":273},[277,16864,16865,16867,16870,16872,16874,16877,16879,16882,16884],{"class":279,"line":280},[277,16866,405],{"class":311},[277,16868,16869],{"class":356}," state",[277,16871,340],{"class":311},[277,16873,2024],{"class":291},[277,16875,16876],{"class":283},"({ count: ",[277,16878,3542],{"class":356},[277,16880,16881],{"class":283},", ok: ",[277,16883,2149],{"class":356},[277,16885,16886],{"class":283}," })\n",[277,16888,16889],{"class":279,"line":308},[277,16890,328],{"emptyLinePlaceholder":327},[277,16892,16893,16896,16898,16900],{"class":279,"line":324},[277,16894,16895],{"class":291},"effect",[277,16897,2203],{"class":283},[277,16899,601],{"class":311},[277,16901,343],{"class":283},[277,16903,16904,16906,16908,16910,16913,16916,16918,16921,16923,16926],{"class":279,"line":331},[277,16905,2349],{"class":283},[277,16907,2352],{"class":291},[277,16909,448],{"class":283},[277,16911,16912],{"class":301},"\"render ->\"",[277,16914,16915],{"class":283},", state.ok ",[277,16917,2285],{"class":311},[277,16919,16920],{"class":283}," state.count ",[277,16922,353],{"class":311},[277,16924,16925],{"class":301}," \"hidden\"",[277,16927,433],{"class":283},[277,16929,16930],{"class":279,"line":346},[277,16931,676],{"class":283},[277,16933,16934],{"class":279,"line":360},[277,16935,328],{"emptyLinePlaceholder":327},[277,16937,16938,16941],{"class":279,"line":371},[277,16939,16940],{"class":283},"state.count",[277,16942,9415],{"class":311},[277,16944,16945,16948,16950],{"class":279,"line":381},[277,16946,16947],{"class":283},"state.ok ",[277,16949,298],{"class":311},[277,16951,4031],{"class":356},[192,16953,16955],{"id":16954},"paso-a-paso-de-lo-que-ocurre","Paso a paso de lo que ocurre",[10089,16957,16958,16963,16981,16989,16999],{},[41,16959,16960,16962],{},[16,16961,16895],{}," ejecuta la función de render y la marca como activa.",[41,16964,16965,16966,1697,16969,16971,16972,16974,16975,16978,16979,104],{},"Al leer ",[16,16967,16968],{},"state.ok",[16,16970,16940],{},", el ",[16,16973,1798],{}," del ",[16,16976,16977],{},"Proxy"," dispara ",[16,16980,15918],{},[41,16982,16983,16985,16986,104],{},[16,16984,15918],{}," guarda dependencias en ",[16,16987,16988],{},"WeakMap → Map → Set",[41,16990,16991,16992,16971,16994,16978,16996,104],{},"Cuando cambias ",[16,16993,16940],{},[16,16995,1801],{},[16,16997,16998],{},"trigger",[41,17000,17001,17003,17004,17006],{},[16,17002,16998],{}," busca el ",[16,17005,15824],{}," de esa key y re-ejecuta solo los efectos dependientes.",[21,17008,17009],{},"Este patrón es exactamente el núcleo del sistema de reactividad de Vue 3.",[30,17011,17013],{"id":17012},"conexión-con-vue-real","Conexión con Vue real",[192,17015,17017,17019,17020],{"id":17016},"reactive-usa-proxy",[16,17018,12319],{}," usa ",[16,17021,16977],{},[21,17023,17024,17026,17027,17029,17030,225,17032,225,17034,225,17036,17039],{},[16,17025,12319],{}," no “magia” valores: crea un ",[16,17028,16977],{}," que intercepta operaciones (",[16,17031,1798],{},[16,17033,1801],{},[16,17035,16454],{},[16,17037,17038],{},"deleteProperty",", iteración, etc.).",[38,17041,17042,17047,17052],{},[41,17043,110,17044,17046],{},[16,17045,1798],{}," se hace tracking.",[41,17048,110,17049,17051],{},[16,17050,1801],{}," se hace trigger.",[41,17053,17054,17055,225,17057,225,17059,225,17061,17064],{},"Para arrays y colecciones (",[16,17056,15816],{},[16,17058,15824],{},[16,17060,15808],{},[16,17062,17063],{},"WeakSet",") existen manejadores específicos.",[192,17066,17068,17070],{"id":17067},"ref-envuelve-primitivos",[16,17069,1927],{}," envuelve primitivos",[21,17072,17073,17074,104],{},"Como un primitivo no puede proxificarse por propiedad, Vue usa un objeto contenedor con getter/setter en ",[16,17075,17076],{},".value",[21,17078,17079],{},"Simplificación conceptual:",[267,17081,17084],{"className":15972,"code":17082,"filename":17083,"language":15975,"meta":273,"style":273},"function ref(raw) {\n  const box = {\n    get value() {\n      track(box, \"value\")\n      return raw\n    },\n    set value(newValue) {\n      if (!Object.is(raw, newValue)) {\n        raw = newValue\n        trigger(box, \"value\")\n      }\n    }\n  }\n  return box\n}\n","ref.js",[16,17085,17086,17099,17110,17119,17131,17138,17142,17154,17169,17179,17189,17193,17197,17201,17208],{"__ignoreMap":273},[277,17087,17088,17090,17092,17094,17097],{"class":279,"line":280},[277,17089,2460],{"class":311},[277,17091,413],{"class":291},[277,17093,448],{"class":283},[277,17095,17096],{"class":349},"raw",[277,17098,2476],{"class":283},[277,17100,17101,17103,17106,17108],{"class":279,"line":308},[277,17102,479],{"class":311},[277,17104,17105],{"class":356}," box",[277,17107,340],{"class":311},[277,17109,343],{"class":283},[277,17111,17112,17114,17117],{"class":279,"line":324},[277,17113,16721],{"class":311},[277,17115,17116],{"class":291}," value",[277,17118,473],{"class":283},[277,17120,17121,17123,17126,17129],{"class":279,"line":331},[277,17122,16741],{"class":291},[277,17124,17125],{"class":283},"(box, ",[277,17127,17128],{"class":301},"\"value\"",[277,17130,433],{"class":283},[277,17132,17133,17135],{"class":279,"line":346},[277,17134,2754],{"class":311},[277,17136,17137],{"class":283}," raw\n",[277,17139,17140],{"class":279,"line":360},[277,17141,7016],{"class":283},[277,17143,17144,17146,17148,17150,17152],{"class":279,"line":371},[277,17145,16765],{"class":311},[277,17147,17116],{"class":291},[277,17149,448],{"class":283},[277,17151,1813],{"class":349},[277,17153,2476],{"class":283},[277,17155,17156,17158,17160,17162,17164,17166],{"class":279,"line":381},[277,17157,1177],{"class":311},[277,17159,511],{"class":283},[277,17161,514],{"class":311},[277,17163,16821],{"class":283},[277,17165,16824],{"class":291},[277,17167,17168],{"class":283},"(raw, newValue)) {\n",[277,17170,17171,17174,17176],{"class":279,"line":391},[277,17172,17173],{"class":283},"        raw ",[277,17175,298],{"class":311},[277,17177,17178],{"class":283}," newValue\n",[277,17180,17181,17183,17185,17187],{"class":279,"line":397},[277,17182,16832],{"class":291},[277,17184,17125],{"class":283},[277,17186,17128],{"class":301},[277,17188,433],{"class":283},[277,17190,17191],{"class":279,"line":402},[277,17192,1203],{"class":283},[277,17194,17195],{"class":279,"line":436},[277,17196,1126],{"class":283},[277,17198,17199],{"class":279,"line":456},[277,17200,542],{"class":283},[277,17202,17203,17205],{"class":279,"line":461},[277,17204,2212],{"class":311},[277,17206,17207],{"class":283}," box\n",[277,17209,17210],{"class":279,"line":476},[277,17211,394],{"class":283},[21,17213,17214],{},"En Vue real:",[38,17216,17217,17223],{},[41,17218,17219,17220,17222],{},"Los objetos pasados a ",[16,17221,1927],{}," se convierten internamente en reactivos.",[41,17224,17225,17226,17228],{},"En templates, ",[16,17227,17076],{}," se desempaqueta automáticamente (ref unwrapping).",[192,17230,17232,17234,17235],{"id":17231},"computed-se-construye-sobre-effect",[16,17233,1732],{}," se construye sobre ",[16,17236,16895],{},[21,17238,17239,17241,17242,17244],{},[16,17240,1732],{}," se implementa usando un ",[16,17243,16895],{}," lazy:",[10089,17246,17247,17252,17255,17258],{},[41,17248,17249,17250,104],{},"No se evalúa hasta que alguien lee ",[16,17251,17076],{},[41,17253,17254],{},"Cachea el resultado.",[41,17256,17257],{},"Se invalida cuando cambia una dependencia interna.",[41,17259,17260,17261,15951,17263,17265],{},"Expone su propio ",[16,17262,15918],{},[16,17264,16998],{}," para quienes dependen del computed.",[21,17267,17268],{},"Internamente, combina:",[38,17270,17271,17277,17283],{},[41,17272,17273,17274],{},"Un efecto con ",[16,17275,17276],{},"lazy: true",[41,17278,17279,17280],{},"Un flag ",[16,17281,17282],{},"dirty",[41,17284,17285],{},"Un scheduler que marca como inválido en lugar de recalcular inmediatamente",[192,17287,17289],{"id":17288},"scheduler-y-batching","Scheduler y batching",[21,17291,17292],{},"Vue evita trabajo redundante dentro del mismo tick:",[10089,17294,17295,17298,17301],{},[41,17296,17297],{},"En lugar de ejecutar cada efecto inmediatamente, puede encolarlo.",[41,17299,17300],{},"Deduplica jobs repetidos.",[41,17302,17303],{},"Hace flush en una microtask.",[21,17305,17306],{},"Mini scheduler conceptual:",[267,17308,17311],{"className":15972,"code":17309,"filename":17310,"language":15975,"meta":273,"style":273},"const queue = new Set()\nlet flushing = false\nconst p = Promise.resolve()\n\nfunction scheduler(job) {\n  queue.add(job)\n  if (flushing) return\n  flushing = true\n  p.then(() => {\n    queue.forEach((j) => j())\n    queue.clear()\n    flushing = false\n  })\n}\n","scheduler.js",[16,17312,17313,17328,17339,17358,17362,17376,17386,17395,17404,17417,17438,17447,17456,17460],{"__ignoreMap":273},[277,17314,17315,17317,17320,17322,17324,17326],{"class":279,"line":280},[277,17316,405],{"class":311},[277,17318,17319],{"class":356}," queue",[277,17321,340],{"class":311},[277,17323,526],{"class":311},[277,17325,16420],{"class":291},[277,17327,622],{"class":283},[277,17329,17330,17332,17335,17337],{"class":279,"line":308},[277,17331,7990],{"class":311},[277,17333,17334],{"class":283}," flushing ",[277,17336,298],{"class":311},[277,17338,4031],{"class":356},[277,17340,17341,17343,17346,17348,17351,17353,17356],{"class":279,"line":324},[277,17342,405],{"class":311},[277,17344,17345],{"class":356}," p",[277,17347,340],{"class":311},[277,17349,17350],{"class":356}," Promise",[277,17352,104],{"class":283},[277,17354,17355],{"class":291},"resolve",[277,17357,622],{"class":283},[277,17359,17360],{"class":279,"line":331},[277,17361,328],{"emptyLinePlaceholder":327},[277,17363,17364,17366,17369,17371,17374],{"class":279,"line":346},[277,17365,2460],{"class":311},[277,17367,17368],{"class":291}," scheduler",[277,17370,448],{"class":283},[277,17372,17373],{"class":349},"job",[277,17375,2476],{"class":283},[277,17377,17378,17381,17383],{"class":279,"line":360},[277,17379,17380],{"class":283},"  queue.",[277,17382,1804],{"class":291},[277,17384,17385],{"class":283},"(job)\n",[277,17387,17388,17390,17393],{"class":279,"line":371},[277,17389,508],{"class":311},[277,17391,17392],{"class":283}," (flushing) ",[277,17394,714],{"class":311},[277,17396,17397,17400,17402],{"class":279,"line":381},[277,17398,17399],{"class":283},"  flushing ",[277,17401,298],{"class":311},[277,17403,2296],{"class":356},[277,17405,17406,17409,17411,17413,17415],{"class":279,"line":391},[277,17407,17408],{"class":283},"  p.",[277,17410,12255],{"class":291},[277,17412,2203],{"class":283},[277,17414,601],{"class":311},[277,17416,343],{"class":283},[277,17418,17419,17422,17424,17426,17429,17431,17433,17436],{"class":279,"line":397},[277,17420,17421],{"class":283},"    queue.",[277,17423,16591],{"class":291},[277,17425,2334],{"class":283},[277,17427,17428],{"class":349},"j",[277,17430,2340],{"class":283},[277,17432,601],{"class":311},[277,17434,17435],{"class":291}," j",[277,17437,2266],{"class":283},[277,17439,17440,17442,17445],{"class":279,"line":402},[277,17441,17421],{"class":283},[277,17443,17444],{"class":291},"clear",[277,17446,622],{"class":283},[277,17448,17449,17452,17454],{"class":279,"line":436},[277,17450,17451],{"class":283},"    flushing ",[277,17453,298],{"class":311},[277,17455,4031],{"class":356},[277,17457,17458],{"class":279,"line":456},[277,17459,2318],{"class":283},[277,17461,17462],{"class":279,"line":461},[277,17463,394],{"class":283},[21,17465,17466],{},"Esto explica por qué 10 mutaciones síncronas pueden producir un único render final.",[30,17468,190],{"id":189},[192,17470,17472],{"id":17471},"la-desestructuración-rompe-la-reactividad","La desestructuración rompe la reactividad",[267,17474,17477],{"className":15972,"code":17475,"filename":17476,"language":15975,"meta":273,"style":273},"const state = reactive({ count: 0 })\nconst { count } = state // count deja de estar enlazado\n","destructuring-breaks-reactivity.js",[16,17478,17479,17495],{"__ignoreMap":273},[277,17480,17481,17483,17485,17487,17489,17491,17493],{"class":279,"line":280},[277,17482,405],{"class":311},[277,17484,16869],{"class":356},[277,17486,340],{"class":311},[277,17488,2024],{"class":291},[277,17490,16876],{"class":283},[277,17492,3542],{"class":356},[277,17494,16886],{"class":283},[277,17496,17497,17499,17501,17504,17507,17509,17512],{"class":279,"line":308},[277,17498,405],{"class":311},[277,17500,5995],{"class":283},[277,17502,17503],{"class":356},"count",[277,17505,17506],{"class":283}," } ",[277,17508,298],{"class":311},[277,17510,17511],{"class":283}," state ",[277,17513,17514],{"class":12741},"// count deja de estar enlazado\n",[21,17516,17517],{},"Corrección:",[38,17519,17520,17525],{},[41,17521,9292,17522],{},[16,17523,17524],{},"toRef(state, \"count\")",[41,17526,17527,17528,104],{},"Acceder como ",[16,17529,16940],{},[192,17531,17533],{"id":17532},"mutaciones-fuera-del-proxy","Mutaciones fuera del proxy",[21,17535,17536,17537,17539,17540,17542,17543,104],{},"Si mutas una referencia “raw” fuera del ",[16,17538,16977],{},", Vue no puede disparar ",[16,17541,16998],{},".\nTodo acceso/escritura que deba ser reactivo debe pasar por el proxy o por ",[16,17544,17076],{},[192,17546,17548,12494,17551],{"id":17547},"shallowref-vs-ref",[16,17549,17550],{},"shallowRef",[16,17552,1927],{},[21,17554,17555,17557,17558,17560],{},[16,17556,17550],{}," solo rastrea el reemplazo de ",[16,17559,17076],{},", no mutaciones profundas.",[267,17562,17565],{"className":15972,"code":17563,"filename":17564,"language":15975,"meta":273,"style":273},"const user = shallowRef({ name: \"Ana\" })\nuser.value.name = \"Eva\" // no dispara por sí solo\nuser.value = { ...user.value, name: \"Eva\" } // sí dispara\n","shallow-ref-example.js",[16,17566,17567,17587,17600],{"__ignoreMap":273},[277,17568,17569,17571,17574,17576,17579,17582,17585],{"class":279,"line":280},[277,17570,405],{"class":311},[277,17572,17573],{"class":356}," user",[277,17575,340],{"class":311},[277,17577,17578],{"class":291}," shallowRef",[277,17580,17581],{"class":283},"({ name: ",[277,17583,17584],{"class":301},"\"Ana\"",[277,17586,16886],{"class":283},[277,17588,17589,17592,17594,17597],{"class":279,"line":308},[277,17590,17591],{"class":283},"user.value.name ",[277,17593,298],{"class":311},[277,17595,17596],{"class":301}," \"Eva\"",[277,17598,17599],{"class":12741}," // no dispara por sí solo\n",[277,17601,17602,17605,17607,17609,17612,17615,17618,17620],{"class":279,"line":324},[277,17603,17604],{"class":283},"user.value ",[277,17606,298],{"class":311},[277,17608,5995],{"class":283},[277,17610,17611],{"class":311},"...",[277,17613,17614],{"class":283},"user.value, name: ",[277,17616,17617],{"class":301},"\"Eva\"",[277,17619,17506],{"class":283},[277,17621,17622],{"class":12741},"// sí dispara\n",[21,17624,17625],{},"Es útil cuando:",[38,17627,17628,17631,17634],{},[41,17629,17630],{},"Manejas estructuras grandes,",[41,17632,17633],{},"Trabajas con librerías externas,",[41,17635,17636],{},"Quieres controlar manualmente cuándo invalidar.",[192,17638,17640],{"id":17639},"effects-que-se-ejecutan-más-de-lo-esperado","Effects que se ejecutan más de lo esperado",[21,17642,17643],{},"Causas típicas:",[38,17645,17646,17652,17657,17665],{},[41,17647,17648,17649,17651],{},"Leer demasiadas fuentes dentro de un mismo ",[16,17650,15758],{},";",[41,17653,17654,17655,17651],{},"Crear objetos nuevos en cada evaluación de ",[16,17656,1732],{},[41,17658,9292,17659,17661,17662,17664],{},[16,17660,15758],{}," cuando ",[16,17663,1732],{}," era suficiente;",[41,17666,17667],{},"Mutar estado dentro de un efecto sin aislar dependencias.",[30,17669,17671],{"id":17670},"conclusión","Conclusión",[21,17673,17674],{},"Cuando entiendes el motor interno de Vue 3, cambia tu forma de construir UI:",[38,17676,17677,17680,17683],{},[41,17678,17679],{},"Pasas de ensayo-error a diagnóstico por dependencias;",[41,17681,17682],{},"Distingues entre problema de tracking y problema de rendering;",[41,17684,17685],{},"Diseñas estado para reducir renders y costo computacional.",[21,17687,17688],{},"En aplicaciones grandes, esto impacta directamente en:",[38,17690,17691,17694,17697],{},[41,17692,17693],{},"Rendimiento estable bajo carga;",[41,17695,17696],{},"Menos bugs intermitentes de sincronización;",[41,17698,17699,17700,225,17702,225,17704,225,17706,225,17708,17710],{},"Decisiones más finas sobre ",[16,17701,1927],{},[16,17703,12319],{},[16,17705,17550],{},[16,17707,1732],{},[16,17709,1735],{}," y scheduling.",[3111,17712,17713],{},[21,17714,17715],{},"La reactividad de Vue 3 no es magia. Es un grafo de dependencias bien diseñado y un scheduler eficiente. Entenderlo te permite escribir código más predecible, más performante y mucho más fácil de depurar.",[1606,17717,17718],{},"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 .sJ8bj, html code.shiki .sJ8bj{--shiki-default:#6A737D;--shiki-dark:#6A737D}html pre.shiki code .szBVR, html code.shiki .szBVR{--shiki-default:#D73A49;--shiki-dark:#F97583}html pre.shiki code .sj4cs, html code.shiki .sj4cs{--shiki-default:#005CC5;--shiki-dark:#79B8FF}html pre.shiki code .sScJk, html code.shiki .sScJk{--shiki-default:#6F42C1;--shiki-dark:#B392F0}html pre.shiki code .sVt8B, html code.shiki .sVt8B{--shiki-default:#24292E;--shiki-dark:#E1E4E8}html pre.shiki code .s4XuR, html code.shiki .s4XuR{--shiki-default:#E36209;--shiki-dark:#FFAB70}html pre.shiki code .sZZnC, html code.shiki .sZZnC{--shiki-default:#032F62;--shiki-dark:#9ECBFF}",{"title":273,"searchDepth":308,"depth":308,"links":17720},[17721,17722,17728,17731,17740,17747],{"id":15729,"depth":308,"text":15730},{"id":15762,"depth":308,"text":15763,"children":17723},[17724,17725,17726],{"id":15766,"depth":324,"text":15767},{"id":15797,"depth":324,"text":15798},{"id":15880,"depth":324,"text":17727},"activeEffect: la pieza crítica",{"id":15944,"depth":308,"text":15945,"children":17729},[17730],{"id":16954,"depth":324,"text":16955},{"id":17012,"depth":308,"text":17013,"children":17732},[17733,17735,17737,17739],{"id":17016,"depth":324,"text":17734},"reactive usa Proxy",{"id":17067,"depth":324,"text":17736},"ref envuelve primitivos",{"id":17231,"depth":324,"text":17738},"computed se construye sobre effect",{"id":17288,"depth":324,"text":17289},{"id":189,"depth":308,"text":190,"children":17741},[17742,17743,17744,17746],{"id":17471,"depth":324,"text":17472},{"id":17532,"depth":324,"text":17533},{"id":17547,"depth":324,"text":17745},"shallowRef vs ref",{"id":17639,"depth":324,"text":17640},{"id":17670,"depth":308,"text":17671},"https://res.cloudinary.com/denj4fg7f/image/upload/v1772497884/vue-3-reactivity-internals_hhru1s.png","2026-03-03","Disección técnica del motor reactivo de Vue 3: dependency tracking, estructura WeakMap->Map->Set, activeEffect, scheduler, batching y errores reales de arquitectura.",{"script":17752},[17753],{"type":1632,"key":1633,"data-nuxt-schema-org":327,"nodes":17754},[17755],{"headline":15709,"author":17756,"datePublished":17757,"@type":1640},{"name":1637,"@type":1638},"2026-03-02T20:00:00-05:00",{"updatedAt":17757,"coverCaption":17759,"author":1637,"keywords":17760},"Portada temporal: reemplazar por arte final de TODOvue",[13114,17761,17762,16657,17763,1732],"reactividad","dependency tracking","batching","/blog/vue-3-reactivity-internals.es",[17766],{"headline":15709,"author":17767,"datePublished":17757,"@type":1640},{"name":1637,"@type":1638},{"title":15709,"description":17750},"blog/vue-3-reactivity-internals.es",[17771,17772,17773,17776],{"tag":3167,"color":3168},{"tag":1665,"color":1666},{"tag":17774,"color":17775},"Rendimiento","#D4A017",{"tag":1671,"color":1672},"rieAB2eTR_0iNRyKJRK5bGzkl_fPF6WXGl4cA8zLqd8",{"id":17779,"title":17780,"body":17781,"cover":20561,"coverAlt":20562,"date":20563,"description":20564,"draft":1627,"extension":1628,"head":20565,"locale":1641,"meta":20572,"navigation":327,"path":20577,"schemaOrg":20578,"seo":20581,"series":20582,"seriesDescription":20583,"seriesOrder":402,"seriesTitle":20584,"slug":1656,"stem":20585,"tags":20586,"__hash__":20596},"blog/blog/directives-vue-custom-directives-guide.es.md","Directivas en Vue: Directivas personalizadas",{"type":8,"value":17782,"toc":20543},[17783,17787,17791,17798,17826,17836,17838,17844,17847,17864,17867,17877,17884,17923,17933,17937,17957,17961,17981,17983,18088,18090,18108,18114,18785,19244,19265,19269,19275,19435,19529,19564,19570,20065,20393,20488,20501,20503,20540],[11,17784,17786],{"id":17785},"directivas-personalizadas-en-vue-3","Directivas personalizadas en Vue 3",[30,17788,17790],{"id":17789},"por-qué-es-importante","Por qué es importante",[21,17792,17793,17794,17797],{},"Las directivas personalizadas te permiten encapsular ",[72,17795,17796],{},"manipulación imperativa de DOM"," que no encaja bien en un componente o en un composable “puro”. Son especialmente útiles para comportamientos de bajo nivel como:",[38,17799,17800,17806,17812,17818],{},[41,17801,17802,17803,19],{},"Foco automático (",[16,17804,17805],{},"v-autofocus",[41,17807,17808,17809,19],{},"Atajos de teclado (",[16,17810,17811],{},"v-hotkey",[41,17813,17814,17815,19],{},"Clic fuera para cerrar (",[16,17816,17817],{},"v-click-outside",[41,17819,17820,17821,225,17823,17825],{},"Integración con API del navegador o librerías no reactivas (por ejemplo, ",[16,17822,7803],{},[16,17824,7628],{},", tooltips)",[21,17827,17828,17829,225,17832,17835],{},"Si no las diseñas bien, es fácil terminar con ",[72,17830,17831],{},"listeners duplicados",[72,17833,17834],{},"fugas de memoria"," o lógica duplicada en múltiples vistas.",[30,17837,61],{"id":60},[21,17839,17840,17841,104],{},"Una directiva personalizada es un objeto (o una función abreviada) con hooks que Vue ejecuta sobre un ",[72,17842,17843],{},"elemento real del DOM",[21,17845,17846],{},"En Vue 3, una directiva puede exponer estos hooks (los más usados en la práctica):",[38,17848,17849,17854,17859],{},[41,17850,17851,17853],{},[16,17852,203],{},": El elemento ya está en el DOM (ideal para agregar listeners u observers).",[41,17855,17856,17858],{},[16,17857,9091],{},": El componente se actualizó y necesitas refrescar el comportamiento.",[41,17860,17861,17863],{},[16,17862,5294],{},": Limpieza de listeners, timers, observers, etc.",[21,17865,17866],{},"Y también existen hooks “before-*” que son útiles en algunos casos:",[38,17868,17869],{},[41,17870,17871,225,17873,225,17875],{},[16,17872,10670],{},[16,17874,9088],{},[16,17876,7514],{},[21,17878,17879,17880,17883],{},"El ",[16,17881,17882],{},"binding"," te da acceso al valor recibido, argumento y modificadores:",[38,17885,17886,17895,17905,17914],{},[41,17887,17888,17891,17892,1895],{},[16,17889,17890],{},"binding.value",": Valor actual (",[16,17893,17894],{},"v-mi-directiva=\"valor\"",[41,17896,17897,17900,17901,15951,17903,1895],{},[16,17898,17899],{},"binding.oldValue",": Valor anterior (solo disponible en ",[16,17902,9088],{},[16,17904,9091],{},[41,17906,17907,17910,17911,1895],{},[16,17908,17909],{},"binding.arg",": Argumento (",[16,17912,17913],{},"v-mi-directiva:delay=\"300\"",[41,17915,17916,17919,17920,1895],{},[16,17917,17918],{},"binding.modifiers",": Modificadores (",[16,17921,17922],{},"v-mi-directiva.once.capture",[21,17924,17925,17926,17929,17930,104],{},"Regla práctica: usa directivas para ",[72,17927,17928],{},"comportamiento del elemento",", no para ",[72,17931,17932],{},"estado de negocio",[30,17934,17936],{"id":17935},"cuándo-usar-directivas-personalizadas","Cuándo usar directivas personalizadas",[10089,17938,17939,17942,17950],{},[41,17940,17941],{},"Cuando necesitas lógica imperativa de DOM reutilizable en varios componentes.",[41,17943,17944,17945,225,17947,17949],{},"Cuando integras APIs no reactivas (",[16,17946,7803],{},[16,17948,7628],{},", tooltips de terceros).",[41,17951,17952,17953,225,17955,1895],{},"Cuando quieres un contrato declarativo en template para un comportamiento concreto (",[16,17954,17805],{},[16,17956,17817],{},[30,17958,17960],{"id":17959},"cuándo-evitarlas","Cuándo evitarlas",[10089,17962,17963,17966,17978],{},[41,17964,17965],{},"Cuando la solución real es un componente (estructura visual + estado + eventos).",[41,17967,17968,17969,225,17972,225,17975,1895],{},"Cuando la lógica se resuelve con bindings o directivas nativas (",[16,17970,17971],{},"v-model",[16,17973,17974],{},"v-bind",[16,17976,17977],{},"v-on",[41,17979,17980],{},"Cuando intentas usar una directiva para coordinar estado global o flujos de datos complejos.",[30,17982,190],{"id":189},[10089,17984,17985,18005,18026,18047,18068],{},[41,17986,17987,17992],{},[72,17988,17989,17990,104],{},"No limpiar recursos en ",[16,17991,5294],{},[38,17993,17994,18000],{},[41,17995,17996,17997,17999],{},"Por qué pasa: se agrega un listener en ",[16,17998,203],{}," y se olvida removerlo.",[41,18001,18002,18003,104],{},"Solución: guarda referencias (en el elemento o en un closure controlado) y limpia siempre en ",[16,18004,5294],{},[41,18006,18007,18010],{},[72,18008,18009],{},"Acoplar la directiva a un caso único.",[38,18011,18012,18015],{},[41,18013,18014],{},"Por qué pasa: nombres genéricos con lógica demasiado específica.",[41,18016,18017,18018,225,18020,1697,18023,104],{},"Solución: define un contrato claro con ",[16,18019,3885],{},[16,18021,18022],{},"arg",[16,18024,18025],{},"modifiers",[41,18027,18028,18031],{},[72,18029,18030],{},"Asumir que una directiva aplicada sobre un componente “siempre” afecta un único nodo DOM.",[38,18032,18033,18036],{},[41,18034,18035],{},"Por qué pasa: se presupone un único root estable o que el componente “forwardea” atributos/directivas como esperamos.",[41,18037,18038,18039,225,18042,225,18044,18046],{},"Solución: para comportamientos de bajo nivel, prioriza aplicarla a elementos HTML concretos (",[16,18040,18041],{},"input",[16,18043,4201],{},[16,18045,4267],{},"). Si la aplicas sobre un componente, asegúrate de que ese componente tenga un root claro y que no rompa el forwarding (casos como múltiples roots o ciertas configuraciones pueden sorprender).",[41,18048,18049,18052],{},[72,18050,18051],{},"Capturar un callback y no actualizarlo.",[38,18053,18054,18063],{},[41,18055,18056,18057,18059,18060,18062],{},"Por qué pasa: se registra un handler en ",[16,18058,203],{}," que cierra sobre ",[16,18061,17890],{}," inicial. Si el callback cambia, el listener sigue llamando al antiguo.",[41,18064,18065,18066,104],{},"Solución: guarda el callback “vigente” en el elemento y actualízalo en ",[16,18067,9091],{},[41,18069,18070,18075],{},[72,18071,18072,18073,104],{},"Ejecutar trabajo pesado en cada ",[16,18074,9091],{},[38,18076,18077,18080],{},[41,18078,18079],{},"Por qué pasa: falta comparación entre valor anterior y actual.",[41,18081,18082,18083,1697,18085,18087],{},"Solución: salir temprano cuando corresponda (por ejemplo, comparando ",[16,18084,17890],{},[16,18086,17899],{}," cuando aplique).",[30,18089,1946],{"id":1945},[38,18091,18092,18097,18102],{},[41,18093,18094,18096],{},[16,18095,17805],{},": enfoca un input al montar.",[41,18098,18099,18101],{},[16,18100,17817],{},": cierra menú o modal al hacer clic fuera.",[41,18103,18104,18107],{},[16,18105,18106],{},"v-intersect",": dispara callback cuando un bloque entra en el viewport.",[192,18109,18111,18113],{"id":18110},"v-click-outside-con-callback-actualizable",[16,18112,17817],{}," (con callback actualizable)",[267,18115,18117],{"className":269,"code":18116,"filename":271,"language":272,"meta":273,"style":273},"\u003Cscript setup lang=\"ts\">\nimport type { Directive } from \"vue\";\nimport { ref } from \"vue\";\n\ntype ClickOutsideHandler = (event: MouseEvent) => void;\n\ntype ElWithClickOutside = HTMLElement & {\n  __clickOutsideHandler__?: (event: MouseEvent) => void;\n  __clickOutsideCallback__?: ClickOutsideHandler;\n};\n\nconst isOpen = ref(false);\n\nconst vClickOutside: Directive\u003CElWithClickOutside, ClickOutsideHandler> = {\n  mounted(el, binding) {\n    if (typeof binding.value !== \"function\") return;\n\n    // Guardamos el callback vigente (importante si cambia con el tiempo)\n    el.__clickOutsideCallback__ = binding.value;\n\n    const handler = (event: MouseEvent) => {\n      const target = event.target as Node | null;\n      if (!target) return;\n\n      // Si el click es fuera del elemento, llamamos al callback actual\n      if (!el.contains(target)) {\n        el.__clickOutsideCallback__?.(event);\n      }\n    };\n\n    el.__clickOutsideHandler__ = handler;\n\n    // Capture ayuda con overlays / stopPropagation dentro del dropdown\n    document.addEventListener(\"click\", handler, true);\n  },\n\n  updated(el, binding) {\n    // Mantén el callback al día si cambió\n    if (typeof binding.value === \"function\") {\n      el.__clickOutsideCallback__ = binding.value;\n    }\n  },\n\n  unmounted(el) {\n    if (el.__clickOutsideHandler__) {\n      document.removeEventListener(\"click\", el.__clickOutsideHandler__, true);\n    }\n    delete el.__clickOutsideHandler__;\n    delete el.__clickOutsideCallback__;\n  },\n};\n\u003C/script>\n\n\u003Ctemplate>\n  \u003Csection class=\"dropdown-demo\">\n    \u003Cbutton type=\"button\" @click=\"isOpen = !isOpen\">Alternar menú\u003C/button>\n\n    \u003Cdiv v-if=\"isOpen\" v-click-outside=\"() => (isOpen = false)\">\n      \u003Cp>Panel abierto\u003C/p>\n      \u003Cp>Haz click fuera para cerrarlo.\u003C/p>\n    \u003C/div>\n  \u003C/section>\n\u003C/template>\n",[16,18118,18119,18135,18152,18164,18168,18195,18199,18216,18240,18251,18256,18260,18278,18282,18311,18326,18349,18353,18358,18368,18372,18395,18418,18433,18437,18442,18459,18470,18474,18479,18483,18493,18497,18502,18521,18525,18529,18543,18548,18564,18573,18577,18581,18585,18595,18602,18620,18624,18632,18639,18643,18647,18655,18659,18667,18682,18708,18712,18735,18748,18761,18769,18777],{"__ignoreMap":273},[277,18120,18121,18123,18125,18127,18129,18131,18133],{"class":279,"line":280},[277,18122,284],{"class":283},[277,18124,288],{"class":287},[277,18126,292],{"class":291},[277,18128,295],{"class":291},[277,18130,298],{"class":283},[277,18132,302],{"class":301},[277,18134,305],{"class":283},[277,18136,18137,18139,18141,18144,18146,18149],{"class":279,"line":308},[277,18138,312],{"class":311},[277,18140,4270],{"class":311},[277,18142,18143],{"class":283}," { Directive } ",[277,18145,318],{"class":311},[277,18147,18148],{"class":301}," \"vue\"",[277,18150,18151],{"class":283},";\n",[277,18153,18154,18156,18158,18160,18162],{"class":279,"line":324},[277,18155,312],{"class":311},[277,18157,11006],{"class":283},[277,18159,318],{"class":311},[277,18161,18148],{"class":301},[277,18163,18151],{"class":283},[277,18165,18166],{"class":279,"line":331},[277,18167,328],{"emptyLinePlaceholder":327},[277,18169,18170,18172,18175,18177,18179,18181,18183,18186,18188,18190,18193],{"class":279,"line":346},[277,18171,334],{"class":311},[277,18173,18174],{"class":291}," ClickOutsideHandler",[277,18176,340],{"class":311},[277,18178,511],{"class":283},[277,18180,2337],{"class":349},[277,18182,353],{"class":311},[277,18184,18185],{"class":291}," MouseEvent",[277,18187,2340],{"class":283},[277,18189,601],{"class":311},[277,18191,18192],{"class":356}," void",[277,18194,18151],{"class":283},[277,18196,18197],{"class":279,"line":360},[277,18198,328],{"emptyLinePlaceholder":327},[277,18200,18201,18203,18206,18208,18211,18214],{"class":279,"line":371},[277,18202,334],{"class":311},[277,18204,18205],{"class":291}," ElWithClickOutside",[277,18207,340],{"class":311},[277,18209,18210],{"class":291}," HTMLElement",[277,18212,18213],{"class":311}," &",[277,18215,343],{"class":283},[277,18217,18218,18221,18224,18226,18228,18230,18232,18234,18236,18238],{"class":279,"line":381},[277,18219,18220],{"class":291},"  __clickOutsideHandler__",[277,18222,18223],{"class":311},"?:",[277,18225,511],{"class":283},[277,18227,2337],{"class":349},[277,18229,353],{"class":311},[277,18231,18185],{"class":291},[277,18233,2340],{"class":283},[277,18235,601],{"class":311},[277,18237,18192],{"class":356},[277,18239,18151],{"class":283},[277,18241,18242,18245,18247,18249],{"class":279,"line":391},[277,18243,18244],{"class":349},"  __clickOutsideCallback__",[277,18246,18223],{"class":311},[277,18248,18174],{"class":291},[277,18250,18151],{"class":283},[277,18252,18253],{"class":279,"line":397},[277,18254,18255],{"class":283},"};\n",[277,18257,18258],{"class":279,"line":402},[277,18259,328],{"emptyLinePlaceholder":327},[277,18261,18262,18264,18267,18269,18271,18273,18275],{"class":279,"line":436},[277,18263,405],{"class":311},[277,18265,18266],{"class":356}," isOpen",[277,18268,340],{"class":311},[277,18270,413],{"class":291},[277,18272,448],{"class":283},[277,18274,2123],{"class":356},[277,18276,18277],{"class":283},");\n",[277,18279,18280],{"class":279,"line":456},[277,18281,328],{"emptyLinePlaceholder":327},[277,18283,18284,18286,18289,18291,18294,18296,18299,18301,18304,18307,18309],{"class":279,"line":461},[277,18285,405],{"class":311},[277,18287,18288],{"class":356}," vClickOutside",[277,18290,353],{"class":311},[277,18292,18293],{"class":291}," Directive",[277,18295,284],{"class":283},[277,18297,18298],{"class":291},"ElWithClickOutside",[277,18300,225],{"class":283},[277,18302,18303],{"class":291},"ClickOutsideHandler",[277,18305,18306],{"class":283},"> ",[277,18308,298],{"class":311},[277,18310,343],{"class":283},[277,18312,18313,18315,18317,18320,18322,18324],{"class":279,"line":476},[277,18314,6784],{"class":291},[277,18316,448],{"class":283},[277,18318,18319],{"class":349},"el",[277,18321,225],{"class":283},[277,18323,17882],{"class":349},[277,18325,2476],{"class":283},[277,18327,18328,18330,18332,18334,18337,18339,18342,18344,18347],{"class":279,"line":500},[277,18329,1336],{"class":311},[277,18331,511],{"class":283},[277,18333,5784],{"class":311},[277,18335,18336],{"class":283}," binding.value ",[277,18338,6080],{"class":311},[277,18340,18341],{"class":301}," \"function\"",[277,18343,2340],{"class":283},[277,18345,18346],{"class":311},"return",[277,18348,18151],{"class":283},[277,18350,18351],{"class":279,"line":505},[277,18352,328],{"emptyLinePlaceholder":327},[277,18354,18355],{"class":279,"line":520},[277,18356,18357],{"class":12741},"    // Guardamos el callback vigente (importante si cambia con el tiempo)\n",[277,18359,18360,18363,18365],{"class":279,"line":539},[277,18361,18362],{"class":283},"    el.__clickOutsideCallback__ ",[277,18364,298],{"class":311},[277,18366,18367],{"class":283}," binding.value;\n",[277,18369,18370],{"class":279,"line":545},[277,18371,328],{"emptyLinePlaceholder":327},[277,18373,18374,18376,18379,18381,18383,18385,18387,18389,18391,18393],{"class":279,"line":550},[277,18375,2233],{"class":311},[277,18377,18378],{"class":291}," handler",[277,18380,340],{"class":311},[277,18382,511],{"class":283},[277,18384,2337],{"class":349},[277,18386,353],{"class":311},[277,18388,18185],{"class":291},[277,18390,2340],{"class":283},[277,18392,601],{"class":311},[277,18394,343],{"class":283},[277,18396,18397,18399,18402,18404,18407,18409,18412,18414,18416],{"class":279,"line":578},[277,18398,1154],{"class":311},[277,18400,18401],{"class":356}," target",[277,18403,340],{"class":311},[277,18405,18406],{"class":283}," event.target ",[277,18408,572],{"class":311},[277,18410,18411],{"class":291}," Node",[277,18413,421],{"class":311},[277,18415,424],{"class":356},[277,18417,18151],{"class":283},[277,18419,18420,18422,18424,18426,18429,18431],{"class":279,"line":583},[277,18421,1177],{"class":311},[277,18423,511],{"class":283},[277,18425,514],{"class":311},[277,18427,18428],{"class":283},"target) ",[277,18430,18346],{"class":311},[277,18432,18151],{"class":283},[277,18434,18435],{"class":279,"line":588},[277,18436,328],{"emptyLinePlaceholder":327},[277,18438,18439],{"class":279,"line":606},[277,18440,18441],{"class":12741},"      // Si el click es fuera del elemento, llamamos al callback actual\n",[277,18443,18444,18446,18448,18450,18453,18456],{"class":279,"line":614},[277,18445,1177],{"class":311},[277,18447,511],{"class":283},[277,18449,514],{"class":311},[277,18451,18452],{"class":283},"el.",[277,18454,18455],{"class":291},"contains",[277,18457,18458],{"class":283},"(target)) {\n",[277,18460,18461,18464,18467],{"class":279,"line":625},[277,18462,18463],{"class":283},"        el.",[277,18465,18466],{"class":291},"__clickOutsideCallback__",[277,18468,18469],{"class":283},"?.(event);\n",[277,18471,18472],{"class":279,"line":637},[277,18473,1203],{"class":283},[277,18475,18476],{"class":279,"line":646},[277,18477,18478],{"class":283},"    };\n",[277,18480,18481],{"class":279,"line":668},[277,18482,328],{"emptyLinePlaceholder":327},[277,18484,18485,18488,18490],{"class":279,"line":673},[277,18486,18487],{"class":283},"    el.__clickOutsideHandler__ ",[277,18489,298],{"class":311},[277,18491,18492],{"class":283}," handler;\n",[277,18494,18495],{"class":279,"line":679},[277,18496,328],{"emptyLinePlaceholder":327},[277,18498,18499],{"class":279,"line":684},[277,18500,18501],{"class":12741},"    // Capture ayuda con overlays / stopPropagation dentro del dropdown\n",[277,18503,18504,18507,18509,18511,18514,18517,18519],{"class":279,"line":700},[277,18505,18506],{"class":283},"    document.",[277,18508,8252],{"class":291},[277,18510,448],{"class":283},[277,18512,18513],{"class":301},"\"click\"",[277,18515,18516],{"class":283},", handler, ",[277,18518,2149],{"class":356},[277,18520,18277],{"class":283},[277,18522,18523],{"class":279,"line":717},[277,18524,1131],{"class":283},[277,18526,18527],{"class":279,"line":722},[277,18528,328],{"emptyLinePlaceholder":327},[277,18530,18531,18533,18535,18537,18539,18541],{"class":279,"line":729},[277,18532,10319],{"class":291},[277,18534,448],{"class":283},[277,18536,18319],{"class":349},[277,18538,225],{"class":283},[277,18540,17882],{"class":349},[277,18542,2476],{"class":283},[277,18544,18545],{"class":279,"line":738},[277,18546,18547],{"class":12741},"    // Mantén el callback al día si cambió\n",[277,18549,18550,18552,18554,18556,18558,18560,18562],{"class":279,"line":747},[277,18551,1336],{"class":311},[277,18553,511],{"class":283},[277,18555,5784],{"class":311},[277,18557,18336],{"class":283},[277,18559,2503],{"class":311},[277,18561,18341],{"class":301},[277,18563,2476],{"class":283},[277,18565,18566,18569,18571],{"class":279,"line":754},[277,18567,18568],{"class":283},"      el.__clickOutsideCallback__ ",[277,18570,298],{"class":311},[277,18572,18367],{"class":283},[277,18574,18575],{"class":279,"line":772},[277,18576,1126],{"class":283},[277,18578,18579],{"class":279,"line":777},[277,18580,1131],{"class":283},[277,18582,18583],{"class":279,"line":782},[277,18584,328],{"emptyLinePlaceholder":327},[277,18586,18587,18589,18591,18593],{"class":279,"line":792},[277,18588,8668],{"class":291},[277,18590,448],{"class":283},[277,18592,18319],{"class":349},[277,18594,2476],{"class":283},[277,18596,18597,18599],{"class":279,"line":797},[277,18598,1336],{"class":311},[277,18600,18601],{"class":283}," (el.__clickOutsideHandler__) {\n",[277,18603,18604,18607,18609,18611,18613,18616,18618],{"class":279,"line":807},[277,18605,18606],{"class":283},"      document.",[277,18608,8308],{"class":291},[277,18610,448],{"class":283},[277,18612,18513],{"class":301},[277,18614,18615],{"class":283},", el.__clickOutsideHandler__, ",[277,18617,2149],{"class":356},[277,18619,18277],{"class":283},[277,18621,18622],{"class":279,"line":826},[277,18623,1126],{"class":283},[277,18625,18626,18629],{"class":279,"line":849},[277,18627,18628],{"class":311},"    delete",[277,18630,18631],{"class":283}," el.__clickOutsideHandler__;\n",[277,18633,18634,18636],{"class":279,"line":854},[277,18635,18628],{"class":311},[277,18637,18638],{"class":283}," el.__clickOutsideCallback__;\n",[277,18640,18641],{"class":279,"line":876},[277,18642,1131],{"class":283},[277,18644,18645],{"class":279,"line":891},[277,18646,18255],{"class":283},[277,18648,18649,18651,18653],{"class":279,"line":905},[277,18650,785],{"class":283},[277,18652,288],{"class":287},[277,18654,305],{"class":283},[277,18656,18657],{"class":279,"line":919},[277,18658,328],{"emptyLinePlaceholder":327},[277,18660,18661,18663,18665],{"class":279,"line":929},[277,18662,284],{"class":283},[277,18664,802],{"class":287},[277,18666,305],{"class":283},[277,18668,18669,18671,18673,18675,18677,18680],{"class":279,"line":934},[277,18670,810],{"class":283},[277,18672,4121],{"class":287},[277,18674,816],{"class":291},[277,18676,298],{"class":283},[277,18678,18679],{"class":301},"\"dropdown-demo\"",[277,18681,305],{"class":283},[277,18683,18684,18686,18688,18690,18692,18694,18696,18698,18701,18704,18706],{"class":279,"line":951},[277,18685,829],{"class":283},[277,18687,4267],{"class":287},[277,18689,4270],{"class":291},[277,18691,298],{"class":283},[277,18693,4275],{"class":301},[277,18695,4278],{"class":291},[277,18697,298],{"class":283},[277,18699,18700],{"class":301},"\"isOpen = !isOpen\"",[277,18702,18703],{"class":283},">Alternar menú\u003C/",[277,18705,4267],{"class":287},[277,18707,305],{"class":283},[277,18709,18710],{"class":279,"line":961},[277,18711,328],{"emptyLinePlaceholder":327},[277,18713,18714,18716,18718,18720,18722,18725,18728,18730,18733],{"class":279,"line":1473},[277,18715,829],{"class":283},[277,18717,4201],{"class":287},[277,18719,834],{"class":291},[277,18721,298],{"class":283},[277,18723,18724],{"class":301},"\"isOpen\"",[277,18726,18727],{"class":291}," v-click-outside",[277,18729,298],{"class":283},[277,18731,18732],{"class":301},"\"() => (isOpen = false)\"",[277,18734,305],{"class":283},[277,18736,18737,18739,18741,18744,18746],{"class":279,"line":1478},[277,18738,879],{"class":283},[277,18740,21],{"class":287},[277,18742,18743],{"class":283},">Panel abierto\u003C/",[277,18745,21],{"class":287},[277,18747,305],{"class":283},[277,18749,18750,18752,18754,18757,18759],{"class":279,"line":1497},[277,18751,879],{"class":283},[277,18753,21],{"class":287},[277,18755,18756],{"class":283},">Haz click fuera para cerrarlo.\u003C/",[277,18758,21],{"class":287},[277,18760,305],{"class":283},[277,18762,18763,18765,18767],{"class":279,"line":1510},[277,18764,922],{"class":283},[277,18766,4201],{"class":287},[277,18768,305],{"class":283},[277,18770,18771,18773,18775],{"class":279,"line":1523},[277,18772,954],{"class":283},[277,18774,4121],{"class":287},[277,18776,305],{"class":283},[277,18778,18779,18781,18783],{"class":279,"line":1536},[277,18780,785],{"class":283},[277,18782,802],{"class":287},[277,18784,305],{"class":283},[267,18786,18788],{"className":269,"code":18787,"filename":971,"language":272,"meta":273,"style":273},"\u003Cscript>\nexport default {\n  name: \"ClickOutsideExample\",\n  data() {\n    return {\n      isOpen: false,\n    };\n  },\n  directives: {\n    clickOutside: {\n      mounted(el, binding) {\n        if (typeof binding.value !== \"function\") return;\n\n        el.__clickOutsideCallback__ = binding.value;\n\n        el.__clickOutsideHandler__ = (event) => {\n          const target = event.target;\n          if (target && !el.contains(target)) {\n            el.__clickOutsideCallback__?.(event);\n          }\n        };\n\n        document.addEventListener(\"click\", el.__clickOutsideHandler__, true);\n      },\n      updated(el, binding) {\n        if (typeof binding.value === \"function\") {\n          el.__clickOutsideCallback__ = binding.value;\n        }\n      },\n      unmounted(el) {\n        if (el.__clickOutsideHandler__) {\n          document.removeEventListener(\"click\", el.__clickOutsideHandler__, true);\n        }\n        delete el.__clickOutsideHandler__;\n        delete el.__clickOutsideCallback__;\n      },\n    },\n  },\n};\n\u003C/script>\n\n\u003Ctemplate>\n  \u003Csection class=\"dropdown-demo\">\n    \u003Cbutton type=\"button\" @click=\"isOpen = !isOpen\">Alternar menú\u003C/button>\n\n    \u003Cdiv v-if=\"isOpen\" v-click-outside=\"() => (isOpen = false)\">\n      \u003Cp>Panel abierto\u003C/p>\n      \u003Cp>Haz click fuera para cerrarlo.\u003C/p>\n    \u003C/div>\n  \u003C/section>\n\u003C/template>\n",[16,18789,18790,18798,18806,18815,18821,18827,18836,18840,18844,18849,18854,18869,18889,18893,18902,18906,18925,18937,18955,18964,18969,18974,18978,18995,18999,19014,19030,19039,19043,19047,19058,19064,19081,19085,19092,19098,19102,19106,19110,19114,19122,19126,19134,19148,19172,19176,19196,19208,19220,19228,19236],{"__ignoreMap":273},[277,18791,18792,18794,18796],{"class":279,"line":280},[277,18793,284],{"class":283},[277,18795,288],{"class":287},[277,18797,305],{"class":283},[277,18799,18800,18802,18804],{"class":279,"line":308},[277,18801,1057],{"class":311},[277,18803,1060],{"class":311},[277,18805,343],{"class":283},[277,18807,18808,18810,18813],{"class":279,"line":324},[277,18809,1071],{"class":283},[277,18811,18812],{"class":301},"\"ClickOutsideExample\"",[277,18814,1077],{"class":283},[277,18816,18817,18819],{"class":279,"line":331},[277,18818,1086],{"class":291},[277,18820,473],{"class":283},[277,18822,18823,18825],{"class":279,"line":346},[277,18824,1093],{"class":311},[277,18826,343],{"class":283},[277,18828,18829,18832,18834],{"class":279,"line":360},[277,18830,18831],{"class":283},"      isOpen: ",[277,18833,2123],{"class":356},[277,18835,1077],{"class":283},[277,18837,18838],{"class":279,"line":371},[277,18839,18478],{"class":283},[277,18841,18842],{"class":279,"line":381},[277,18843,1131],{"class":283},[277,18845,18846],{"class":279,"line":391},[277,18847,18848],{"class":283},"  directives: {\n",[277,18850,18851],{"class":279,"line":397},[277,18852,18853],{"class":283},"    clickOutside: {\n",[277,18855,18856,18859,18861,18863,18865,18867],{"class":279,"line":402},[277,18857,18858],{"class":291},"      mounted",[277,18860,448],{"class":283},[277,18862,18319],{"class":349},[277,18864,225],{"class":283},[277,18866,17882],{"class":349},[277,18868,2476],{"class":283},[277,18870,18871,18873,18875,18877,18879,18881,18883,18885,18887],{"class":279,"line":436},[277,18872,8842],{"class":311},[277,18874,511],{"class":283},[277,18876,5784],{"class":311},[277,18878,18336],{"class":283},[277,18880,6080],{"class":311},[277,18882,18341],{"class":301},[277,18884,2340],{"class":283},[277,18886,18346],{"class":311},[277,18888,18151],{"class":283},[277,18890,18891],{"class":279,"line":456},[277,18892,328],{"emptyLinePlaceholder":327},[277,18894,18895,18898,18900],{"class":279,"line":461},[277,18896,18897],{"class":283},"        el.__clickOutsideCallback__ ",[277,18899,298],{"class":311},[277,18901,18367],{"class":283},[277,18903,18904],{"class":279,"line":476},[277,18905,328],{"emptyLinePlaceholder":327},[277,18907,18908,18910,18913,18915,18917,18919,18921,18923],{"class":279,"line":500},[277,18909,18463],{"class":283},[277,18911,18912],{"class":291},"__clickOutsideHandler__",[277,18914,340],{"class":311},[277,18916,511],{"class":283},[277,18918,2337],{"class":349},[277,18920,2340],{"class":283},[277,18922,601],{"class":311},[277,18924,343],{"class":283},[277,18926,18927,18930,18932,18934],{"class":279,"line":505},[277,18928,18929],{"class":311},"          const",[277,18931,18401],{"class":356},[277,18933,340],{"class":311},[277,18935,18936],{"class":283}," event.target;\n",[277,18938,18939,18942,18945,18947,18949,18951,18953],{"class":279,"line":520},[277,18940,18941],{"class":311},"          if",[277,18943,18944],{"class":283}," (target ",[277,18946,2310],{"class":311},[277,18948,2288],{"class":311},[277,18950,18452],{"class":283},[277,18952,18455],{"class":291},[277,18954,18458],{"class":283},[277,18956,18957,18960,18962],{"class":279,"line":539},[277,18958,18959],{"class":283},"            el.",[277,18961,18466],{"class":291},[277,18963,18469],{"class":283},[277,18965,18966],{"class":279,"line":545},[277,18967,18968],{"class":283},"          }\n",[277,18970,18971],{"class":279,"line":550},[277,18972,18973],{"class":283},"        };\n",[277,18975,18976],{"class":279,"line":578},[277,18977,328],{"emptyLinePlaceholder":327},[277,18979,18980,18983,18985,18987,18989,18991,18993],{"class":279,"line":583},[277,18981,18982],{"class":283},"        document.",[277,18984,8252],{"class":291},[277,18986,448],{"class":283},[277,18988,18513],{"class":301},[277,18990,18615],{"class":283},[277,18992,2149],{"class":356},[277,18994,18277],{"class":283},[277,18996,18997],{"class":279,"line":588},[277,18998,2629],{"class":283},[277,19000,19001,19004,19006,19008,19010,19012],{"class":279,"line":606},[277,19002,19003],{"class":291},"      updated",[277,19005,448],{"class":283},[277,19007,18319],{"class":349},[277,19009,225],{"class":283},[277,19011,17882],{"class":349},[277,19013,2476],{"class":283},[277,19015,19016,19018,19020,19022,19024,19026,19028],{"class":279,"line":614},[277,19017,8842],{"class":311},[277,19019,511],{"class":283},[277,19021,5784],{"class":311},[277,19023,18336],{"class":283},[277,19025,2503],{"class":311},[277,19027,18341],{"class":301},[277,19029,2476],{"class":283},[277,19031,19032,19035,19037],{"class":279,"line":625},[277,19033,19034],{"class":283},"          el.__clickOutsideCallback__ ",[277,19036,298],{"class":311},[277,19038,18367],{"class":283},[277,19040,19041],{"class":279,"line":637},[277,19042,8868],{"class":283},[277,19044,19045],{"class":279,"line":646},[277,19046,2629],{"class":283},[277,19048,19049,19052,19054,19056],{"class":279,"line":668},[277,19050,19051],{"class":291},"      unmounted",[277,19053,448],{"class":283},[277,19055,18319],{"class":349},[277,19057,2476],{"class":283},[277,19059,19060,19062],{"class":279,"line":673},[277,19061,8842],{"class":311},[277,19063,18601],{"class":283},[277,19065,19066,19069,19071,19073,19075,19077,19079],{"class":279,"line":679},[277,19067,19068],{"class":283},"          document.",[277,19070,8308],{"class":291},[277,19072,448],{"class":283},[277,19074,18513],{"class":301},[277,19076,18615],{"class":283},[277,19078,2149],{"class":356},[277,19080,18277],{"class":283},[277,19082,19083],{"class":279,"line":684},[277,19084,8868],{"class":283},[277,19086,19087,19090],{"class":279,"line":700},[277,19088,19089],{"class":311},"        delete",[277,19091,18631],{"class":283},[277,19093,19094,19096],{"class":279,"line":717},[277,19095,19089],{"class":311},[277,19097,18638],{"class":283},[277,19099,19100],{"class":279,"line":722},[277,19101,2629],{"class":283},[277,19103,19104],{"class":279,"line":729},[277,19105,7016],{"class":283},[277,19107,19108],{"class":279,"line":738},[277,19109,1131],{"class":283},[277,19111,19112],{"class":279,"line":747},[277,19113,18255],{"class":283},[277,19115,19116,19118,19120],{"class":279,"line":754},[277,19117,785],{"class":283},[277,19119,288],{"class":287},[277,19121,305],{"class":283},[277,19123,19124],{"class":279,"line":772},[277,19125,328],{"emptyLinePlaceholder":327},[277,19127,19128,19130,19132],{"class":279,"line":777},[277,19129,284],{"class":283},[277,19131,802],{"class":287},[277,19133,305],{"class":283},[277,19135,19136,19138,19140,19142,19144,19146],{"class":279,"line":782},[277,19137,810],{"class":283},[277,19139,4121],{"class":287},[277,19141,816],{"class":291},[277,19143,298],{"class":283},[277,19145,18679],{"class":301},[277,19147,305],{"class":283},[277,19149,19150,19152,19154,19156,19158,19160,19162,19164,19166,19168,19170],{"class":279,"line":792},[277,19151,829],{"class":283},[277,19153,4267],{"class":287},[277,19155,4270],{"class":291},[277,19157,298],{"class":283},[277,19159,4275],{"class":301},[277,19161,4278],{"class":291},[277,19163,298],{"class":283},[277,19165,18700],{"class":301},[277,19167,18703],{"class":283},[277,19169,4267],{"class":287},[277,19171,305],{"class":283},[277,19173,19174],{"class":279,"line":797},[277,19175,328],{"emptyLinePlaceholder":327},[277,19177,19178,19180,19182,19184,19186,19188,19190,19192,19194],{"class":279,"line":807},[277,19179,829],{"class":283},[277,19181,4201],{"class":287},[277,19183,834],{"class":291},[277,19185,298],{"class":283},[277,19187,18724],{"class":301},[277,19189,18727],{"class":291},[277,19191,298],{"class":283},[277,19193,18732],{"class":301},[277,19195,305],{"class":283},[277,19197,19198,19200,19202,19204,19206],{"class":279,"line":826},[277,19199,879],{"class":283},[277,19201,21],{"class":287},[277,19203,18743],{"class":283},[277,19205,21],{"class":287},[277,19207,305],{"class":283},[277,19209,19210,19212,19214,19216,19218],{"class":279,"line":849},[277,19211,879],{"class":283},[277,19213,21],{"class":287},[277,19215,18756],{"class":283},[277,19217,21],{"class":287},[277,19219,305],{"class":283},[277,19221,19222,19224,19226],{"class":279,"line":854},[277,19223,922],{"class":283},[277,19225,4201],{"class":287},[277,19227,305],{"class":283},[277,19229,19230,19232,19234],{"class":279,"line":876},[277,19231,954],{"class":283},[277,19233,4121],{"class":287},[277,19235,305],{"class":283},[277,19237,19238,19240,19242],{"class":279,"line":891},[277,19239,785],{"class":283},[277,19241,802],{"class":287},[277,19243,305],{"class":283},[3111,19245,19246],{},[21,19247,110,19248,19251,19252,19255,19256,19259,19260,15901,19263,1895],{},[16,19249,19250],{},"\u003Cscript setup>",", cualquier variable ",[72,19253,19254],{},"camelCase"," que empiece por ",[16,19257,19258],{},"v"," puede usarse como directiva (",[16,19261,19262],{},"vClickOutside",[16,19264,17817],{},[30,19266,19268],{"id":19267},"más-ejemplos-útiles","Más ejemplos útiles",[192,19270,19272,19274],{"id":19271},"v-autofocus-básico-y-práctico",[16,19273,17805],{}," (básico y práctico)",[267,19276,19281],{"className":19277,"code":19278,"filename":19279,"language":19280,"meta":273,"style":273},"language-ts shiki shiki-themes github-light github-dark","import type { Directive } from \"vue\";\n\nexport const vAutofocus: Directive\u003CHTMLElement, boolean | undefined> = {\n  mounted(el, binding) {\n    // v-autofocus=\"false\" desactiva el comportamiento\n    if (binding.value === false) return;\n\n    // En inputs/textarea suele ser lo esperado\n    if (typeof (el as any).focus === \"function\") {\n      (el as any).focus();\n    }\n  },\n};\n","main.ts","ts",[16,19282,19283,19297,19301,19336,19350,19355,19373,19377,19382,19407,19423,19427,19431],{"__ignoreMap":273},[277,19284,19285,19287,19289,19291,19293,19295],{"class":279,"line":280},[277,19286,312],{"class":311},[277,19288,4270],{"class":311},[277,19290,18143],{"class":283},[277,19292,318],{"class":311},[277,19294,18148],{"class":301},[277,19296,18151],{"class":283},[277,19298,19299],{"class":279,"line":308},[277,19300,328],{"emptyLinePlaceholder":327},[277,19302,19303,19305,19308,19311,19313,19315,19317,19320,19322,19325,19327,19330,19332,19334],{"class":279,"line":324},[277,19304,1057],{"class":311},[277,19306,19307],{"class":311}," const",[277,19309,19310],{"class":356}," vAutofocus",[277,19312,353],{"class":311},[277,19314,18293],{"class":291},[277,19316,284],{"class":283},[277,19318,19319],{"class":291},"HTMLElement",[277,19321,225],{"class":283},[277,19323,19324],{"class":356},"boolean",[277,19326,421],{"class":311},[277,19328,19329],{"class":356}," undefined",[277,19331,18306],{"class":283},[277,19333,298],{"class":311},[277,19335,343],{"class":283},[277,19337,19338,19340,19342,19344,19346,19348],{"class":279,"line":331},[277,19339,6784],{"class":291},[277,19341,448],{"class":283},[277,19343,18319],{"class":349},[277,19345,225],{"class":283},[277,19347,17882],{"class":349},[277,19349,2476],{"class":283},[277,19351,19352],{"class":279,"line":346},[277,19353,19354],{"class":12741},"    // v-autofocus=\"false\" desactiva el comportamiento\n",[277,19356,19357,19359,19362,19364,19367,19369,19371],{"class":279,"line":360},[277,19358,1336],{"class":311},[277,19360,19361],{"class":283}," (binding.value ",[277,19363,2503],{"class":311},[277,19365,19366],{"class":356}," false",[277,19368,2340],{"class":283},[277,19370,18346],{"class":311},[277,19372,18151],{"class":283},[277,19374,19375],{"class":279,"line":371},[277,19376,328],{"emptyLinePlaceholder":327},[277,19378,19379],{"class":279,"line":381},[277,19380,19381],{"class":12741},"    // En inputs/textarea suele ser lo esperado\n",[277,19383,19384,19386,19388,19390,19393,19395,19398,19401,19403,19405],{"class":279,"line":391},[277,19385,1336],{"class":311},[277,19387,511],{"class":283},[277,19389,5784],{"class":311},[277,19391,19392],{"class":283}," (el ",[277,19394,572],{"class":311},[277,19396,19397],{"class":356}," any",[277,19399,19400],{"class":283},").focus ",[277,19402,2503],{"class":311},[277,19404,18341],{"class":301},[277,19406,2476],{"class":283},[277,19408,19409,19412,19414,19416,19418,19420],{"class":279,"line":397},[277,19410,19411],{"class":283},"      (el ",[277,19413,572],{"class":311},[277,19415,19397],{"class":356},[277,19417,1895],{"class":283},[277,19419,11476],{"class":291},[277,19421,19422],{"class":283},"();\n",[277,19424,19425],{"class":279,"line":402},[277,19426,1126],{"class":283},[277,19428,19429],{"class":279,"line":436},[277,19430,1131],{"class":283},[277,19432,19433],{"class":279,"line":456},[277,19434,18255],{"class":283},[267,19436,19439],{"className":15972,"code":19437,"filename":19438,"language":15975,"meta":273,"style":273},"export const vAutofocus = {\n  mounted(el, binding) {\n    // v-autofocus=\"false\" desactiva el comportamiento\n    if (binding.value === false) return;\n    // En inputs/textarea suele ser lo esperado\n    if (typeof el.focus === \"function\") {\n      el.focus();\n    }\n  },\n};\n","main.js",[16,19440,19441,19453,19467,19471,19487,19491,19508,19517,19521,19525],{"__ignoreMap":273},[277,19442,19443,19445,19447,19449,19451],{"class":279,"line":280},[277,19444,1057],{"class":311},[277,19446,19307],{"class":311},[277,19448,19310],{"class":356},[277,19450,340],{"class":311},[277,19452,343],{"class":283},[277,19454,19455,19457,19459,19461,19463,19465],{"class":279,"line":308},[277,19456,6784],{"class":291},[277,19458,448],{"class":283},[277,19460,18319],{"class":349},[277,19462,225],{"class":283},[277,19464,17882],{"class":349},[277,19466,2476],{"class":283},[277,19468,19469],{"class":279,"line":324},[277,19470,19354],{"class":12741},[277,19472,19473,19475,19477,19479,19481,19483,19485],{"class":279,"line":331},[277,19474,1336],{"class":311},[277,19476,19361],{"class":283},[277,19478,2503],{"class":311},[277,19480,19366],{"class":356},[277,19482,2340],{"class":283},[277,19484,18346],{"class":311},[277,19486,18151],{"class":283},[277,19488,19489],{"class":279,"line":346},[277,19490,19381],{"class":12741},[277,19492,19493,19495,19497,19499,19502,19504,19506],{"class":279,"line":360},[277,19494,1336],{"class":311},[277,19496,511],{"class":283},[277,19498,5784],{"class":311},[277,19500,19501],{"class":283}," el.focus ",[277,19503,2503],{"class":311},[277,19505,18341],{"class":301},[277,19507,2476],{"class":283},[277,19509,19510,19513,19515],{"class":279,"line":371},[277,19511,19512],{"class":283},"      el.",[277,19514,11476],{"class":291},[277,19516,19422],{"class":283},[277,19518,19519],{"class":279,"line":381},[277,19520,1126],{"class":283},[277,19522,19523],{"class":279,"line":391},[277,19524,1131],{"class":283},[277,19526,19527],{"class":279,"line":397},[277,19528,18255],{"class":283},[267,19530,19532],{"className":269,"code":19531,"filename":9339,"language":272,"meta":273,"style":273},"\u003Cinput v-autofocus />\n\u003Cinput v-autofocus=\"isDesktop\" />\n",[16,19533,19534,19545],{"__ignoreMap":273},[277,19535,19536,19538,19540,19543],{"class":279,"line":280},[277,19537,284],{"class":283},[277,19539,18041],{"class":287},[277,19541,19542],{"class":291}," v-autofocus",[277,19544,4325],{"class":283},[277,19546,19547,19549,19551,19553,19555,19557,19560,19562],{"class":279,"line":308},[277,19548,284],{"class":283},[277,19550,18041],{"class":287},[277,19552,19542],{"class":291},[277,19554,298],{"class":283},[277,19556,866],{"class":301},[277,19558,19559],{"class":283},"isDesktop",[277,19561,866],{"class":301},[277,19563,4325],{"class":283},[192,19565,19567,19569],{"id":19566},"v-intersect-intersectionobserver",[16,19568,18106],{}," (IntersectionObserver)",[267,19571,19573],{"className":19277,"code":19572,"filename":19279,"language":19280,"meta":273,"style":273},"import type { Directive } from \"vue\";\n\ntype IntersectValue = {\n  onEnter?: (entry: IntersectionObserverEntry) => void;\n  onLeave?: (entry: IntersectionObserverEntry) => void;\n  options?: IntersectionObserverInit;\n};\n\ntype ElWithObserver = HTMLElement & { __io__?: IntersectionObserver };\n\nexport const vIntersect: Directive\u003CElWithObserver, IntersectValue> = {\n  mounted(el, binding) {\n    const { onEnter, onLeave, options } = binding.value ?? {};\n\n    const io = new IntersectionObserver((entries) => {\n      for (const entry of entries) {\n        if (entry.isIntersecting) onEnter?.(entry);\n        else onLeave?.(entry);\n      }\n    }, options);\n\n    io.observe(el);\n    el.__io__ = io;\n  },\n  updated(el, binding) {\n    // Si cambian options de forma dinámica, lo más seguro es recrear el observer\n    // (micro-optimización: solo recrear si realmente cambian)\n    // Aquí lo dejamos simple y explícito:\n    el.__io__?.disconnect();\n    delete el.__io__;\n    const { onEnter, onLeave, options } = binding.value ?? {};\n    const io = new IntersectionObserver((entries) => {\n      for (const entry of entries) {\n        if (entry.isIntersecting) onEnter?.(entry);\n        else onLeave?.(entry);\n      }\n    }, options);\n    io.observe(el);\n    el.__io__ = io;\n  },\n  unmounted(el) {\n    el.__io__?.disconnect();\n    delete el.__io__;\n  },\n};\n",[16,19574,19575,19589,19593,19604,19629,19652,19664,19668,19672,19698,19702,19731,19745,19774,19778,19802,19819,19831,19841,19845,19850,19854,19865,19875,19879,19893,19898,19903,19908,19918,19925,19951,19973,19987,19997,20005,20009,20013,20021,20029,20033,20043,20051,20057,20061],{"__ignoreMap":273},[277,19576,19577,19579,19581,19583,19585,19587],{"class":279,"line":280},[277,19578,312],{"class":311},[277,19580,4270],{"class":311},[277,19582,18143],{"class":283},[277,19584,318],{"class":311},[277,19586,18148],{"class":301},[277,19588,18151],{"class":283},[277,19590,19591],{"class":279,"line":308},[277,19592,328],{"emptyLinePlaceholder":327},[277,19594,19595,19597,19600,19602],{"class":279,"line":324},[277,19596,334],{"class":311},[277,19598,19599],{"class":291}," IntersectValue",[277,19601,340],{"class":311},[277,19603,343],{"class":283},[277,19605,19606,19609,19611,19613,19616,19618,19621,19623,19625,19627],{"class":279,"line":331},[277,19607,19608],{"class":291},"  onEnter",[277,19610,18223],{"class":311},[277,19612,511],{"class":283},[277,19614,19615],{"class":349},"entry",[277,19617,353],{"class":311},[277,19619,19620],{"class":291}," IntersectionObserverEntry",[277,19622,2340],{"class":283},[277,19624,601],{"class":311},[277,19626,18192],{"class":356},[277,19628,18151],{"class":283},[277,19630,19631,19634,19636,19638,19640,19642,19644,19646,19648,19650],{"class":279,"line":346},[277,19632,19633],{"class":291},"  onLeave",[277,19635,18223],{"class":311},[277,19637,511],{"class":283},[277,19639,19615],{"class":349},[277,19641,353],{"class":311},[277,19643,19620],{"class":291},[277,19645,2340],{"class":283},[277,19647,601],{"class":311},[277,19649,18192],{"class":356},[277,19651,18151],{"class":283},[277,19653,19654,19657,19659,19662],{"class":279,"line":360},[277,19655,19656],{"class":349},"  options",[277,19658,18223],{"class":311},[277,19660,19661],{"class":291}," IntersectionObserverInit",[277,19663,18151],{"class":283},[277,19665,19666],{"class":279,"line":371},[277,19667,18255],{"class":283},[277,19669,19670],{"class":279,"line":381},[277,19671,328],{"emptyLinePlaceholder":327},[277,19673,19674,19676,19679,19681,19683,19685,19687,19690,19692,19695],{"class":279,"line":391},[277,19675,334],{"class":311},[277,19677,19678],{"class":291}," ElWithObserver",[277,19680,340],{"class":311},[277,19682,18210],{"class":291},[277,19684,18213],{"class":311},[277,19686,5995],{"class":283},[277,19688,19689],{"class":349},"__io__",[277,19691,18223],{"class":311},[277,19693,19694],{"class":291}," IntersectionObserver",[277,19696,19697],{"class":283}," };\n",[277,19699,19700],{"class":279,"line":397},[277,19701,328],{"emptyLinePlaceholder":327},[277,19703,19704,19706,19708,19711,19713,19715,19717,19720,19722,19725,19727,19729],{"class":279,"line":402},[277,19705,1057],{"class":311},[277,19707,19307],{"class":311},[277,19709,19710],{"class":356}," vIntersect",[277,19712,353],{"class":311},[277,19714,18293],{"class":291},[277,19716,284],{"class":283},[277,19718,19719],{"class":291},"ElWithObserver",[277,19721,225],{"class":283},[277,19723,19724],{"class":291},"IntersectValue",[277,19726,18306],{"class":283},[277,19728,298],{"class":311},[277,19730,343],{"class":283},[277,19732,19733,19735,19737,19739,19741,19743],{"class":279,"line":436},[277,19734,6784],{"class":291},[277,19736,448],{"class":283},[277,19738,18319],{"class":349},[277,19740,225],{"class":283},[277,19742,17882],{"class":349},[277,19744,2476],{"class":283},[277,19746,19747,19749,19751,19754,19756,19759,19761,19763,19765,19767,19769,19771],{"class":279,"line":456},[277,19748,2233],{"class":311},[277,19750,5995],{"class":283},[277,19752,19753],{"class":356},"onEnter",[277,19755,225],{"class":283},[277,19757,19758],{"class":356},"onLeave",[277,19760,225],{"class":283},[277,19762,16115],{"class":356},[277,19764,17506],{"class":283},[277,19766,298],{"class":311},[277,19768,18336],{"class":283},[277,19770,9857],{"class":311},[277,19772,19773],{"class":283}," {};\n",[277,19775,19776],{"class":279,"line":461},[277,19777,328],{"emptyLinePlaceholder":327},[277,19779,19780,19782,19785,19787,19789,19791,19793,19796,19798,19800],{"class":279,"line":476},[277,19781,2233],{"class":311},[277,19783,19784],{"class":356}," io",[277,19786,340],{"class":311},[277,19788,526],{"class":311},[277,19790,19694],{"class":291},[277,19792,2334],{"class":283},[277,19794,19795],{"class":349},"entries",[277,19797,2340],{"class":283},[277,19799,601],{"class":311},[277,19801,343],{"class":283},[277,19803,19804,19807,19809,19811,19814,19816],{"class":279,"line":500},[277,19805,19806],{"class":311},"      for",[277,19808,511],{"class":283},[277,19810,405],{"class":311},[277,19812,19813],{"class":356}," entry",[277,19815,16063],{"class":311},[277,19817,19818],{"class":283}," entries) {\n",[277,19820,19821,19823,19826,19828],{"class":279,"line":505},[277,19822,8842],{"class":311},[277,19824,19825],{"class":283}," (entry.isIntersecting) ",[277,19827,19753],{"class":291},[277,19829,19830],{"class":283},"?.(entry);\n",[277,19832,19833,19836,19839],{"class":279,"line":520},[277,19834,19835],{"class":311},"        else",[277,19837,19838],{"class":291}," onLeave",[277,19840,19830],{"class":283},[277,19842,19843],{"class":279,"line":539},[277,19844,1203],{"class":283},[277,19846,19847],{"class":279,"line":545},[277,19848,19849],{"class":283},"    }, options);\n",[277,19851,19852],{"class":279,"line":550},[277,19853,328],{"emptyLinePlaceholder":327},[277,19855,19856,19859,19862],{"class":279,"line":578},[277,19857,19858],{"class":283},"    io.",[277,19860,19861],{"class":291},"observe",[277,19863,19864],{"class":283},"(el);\n",[277,19866,19867,19870,19872],{"class":279,"line":583},[277,19868,19869],{"class":283},"    el.__io__ ",[277,19871,298],{"class":311},[277,19873,19874],{"class":283}," io;\n",[277,19876,19877],{"class":279,"line":588},[277,19878,1131],{"class":283},[277,19880,19881,19883,19885,19887,19889,19891],{"class":279,"line":606},[277,19882,10319],{"class":291},[277,19884,448],{"class":283},[277,19886,18319],{"class":349},[277,19888,225],{"class":283},[277,19890,17882],{"class":349},[277,19892,2476],{"class":283},[277,19894,19895],{"class":279,"line":614},[277,19896,19897],{"class":12741},"    // Si cambian options de forma dinámica, lo más seguro es recrear el observer\n",[277,19899,19900],{"class":279,"line":625},[277,19901,19902],{"class":12741},"    // (micro-optimización: solo recrear si realmente cambian)\n",[277,19904,19905],{"class":279,"line":637},[277,19906,19907],{"class":12741},"    // Aquí lo dejamos simple y explícito:\n",[277,19909,19910,19913,19916],{"class":279,"line":646},[277,19911,19912],{"class":283},"    el.__io__?.",[277,19914,19915],{"class":291},"disconnect",[277,19917,19422],{"class":283},[277,19919,19920,19922],{"class":279,"line":668},[277,19921,18628],{"class":311},[277,19923,19924],{"class":283}," el.__io__;\n",[277,19926,19927,19929,19931,19933,19935,19937,19939,19941,19943,19945,19947,19949],{"class":279,"line":673},[277,19928,2233],{"class":311},[277,19930,5995],{"class":283},[277,19932,19753],{"class":356},[277,19934,225],{"class":283},[277,19936,19758],{"class":356},[277,19938,225],{"class":283},[277,19940,16115],{"class":356},[277,19942,17506],{"class":283},[277,19944,298],{"class":311},[277,19946,18336],{"class":283},[277,19948,9857],{"class":311},[277,19950,19773],{"class":283},[277,19952,19953,19955,19957,19959,19961,19963,19965,19967,19969,19971],{"class":279,"line":679},[277,19954,2233],{"class":311},[277,19956,19784],{"class":356},[277,19958,340],{"class":311},[277,19960,526],{"class":311},[277,19962,19694],{"class":291},[277,19964,2334],{"class":283},[277,19966,19795],{"class":349},[277,19968,2340],{"class":283},[277,19970,601],{"class":311},[277,19972,343],{"class":283},[277,19974,19975,19977,19979,19981,19983,19985],{"class":279,"line":684},[277,19976,19806],{"class":311},[277,19978,511],{"class":283},[277,19980,405],{"class":311},[277,19982,19813],{"class":356},[277,19984,16063],{"class":311},[277,19986,19818],{"class":283},[277,19988,19989,19991,19993,19995],{"class":279,"line":700},[277,19990,8842],{"class":311},[277,19992,19825],{"class":283},[277,19994,19753],{"class":291},[277,19996,19830],{"class":283},[277,19998,19999,20001,20003],{"class":279,"line":717},[277,20000,19835],{"class":311},[277,20002,19838],{"class":291},[277,20004,19830],{"class":283},[277,20006,20007],{"class":279,"line":722},[277,20008,1203],{"class":283},[277,20010,20011],{"class":279,"line":729},[277,20012,19849],{"class":283},[277,20014,20015,20017,20019],{"class":279,"line":738},[277,20016,19858],{"class":283},[277,20018,19861],{"class":291},[277,20020,19864],{"class":283},[277,20022,20023,20025,20027],{"class":279,"line":747},[277,20024,19869],{"class":283},[277,20026,298],{"class":311},[277,20028,19874],{"class":283},[277,20030,20031],{"class":279,"line":754},[277,20032,1131],{"class":283},[277,20034,20035,20037,20039,20041],{"class":279,"line":772},[277,20036,8668],{"class":291},[277,20038,448],{"class":283},[277,20040,18319],{"class":349},[277,20042,2476],{"class":283},[277,20044,20045,20047,20049],{"class":279,"line":777},[277,20046,19912],{"class":283},[277,20048,19915],{"class":291},[277,20050,19422],{"class":283},[277,20052,20053,20055],{"class":279,"line":782},[277,20054,18628],{"class":311},[277,20056,19924],{"class":283},[277,20058,20059],{"class":279,"line":792},[277,20060,1131],{"class":283},[277,20062,20063],{"class":279,"line":797},[277,20064,18255],{"class":283},[267,20066,20068],{"className":15972,"code":20067,"filename":19438,"language":15975,"meta":273,"style":273},"export const vIntersect = {\n  mounted(el, binding) {\n    const { onEnter, onLeave, options } = binding.value ?? {};\n\n    const io = new IntersectionObserver((entries) => {\n      for (const entry of entries) {\n        if (entry.isIntersecting) onEnter?.(entry);\n        else onLeave?.(entry);\n      }\n    }, options);\n    \n    io.observe(el);\n    el.__io__ = io;\n  },\n  updated(el, binding) {\n    // Si cambian options de forma dinámica, lo más seguro es recrear el observer\n    // (micro-optimización: solo recrear si realmente cambian)\n    // Aquí lo dejamos simple y explícito:\n    el.__io__?.disconnect();\n    delete el.__io__;\n    const { onEnter, onLeave, options } = binding.value ?? {};\n    const io = new IntersectionObserver((entries) => {\n      for (const entry of entries) {\n        if (entry.isIntersecting) onEnter?.(entry);\n        else onLeave?.(entry);\n      }\n    }, options);\n    io.observe(el);\n    el.__io__ = io;\n  },\n  unmounted(el) {\n    el.__io__?.disconnect();\n    delete el.__io__;\n  },\n};\n",[16,20069,20070,20082,20096,20122,20126,20148,20162,20172,20180,20184,20188,20193,20201,20209,20213,20227,20231,20235,20239,20247,20253,20279,20301,20315,20325,20333,20337,20341,20349,20357,20361,20371,20379,20385,20389],{"__ignoreMap":273},[277,20071,20072,20074,20076,20078,20080],{"class":279,"line":280},[277,20073,1057],{"class":311},[277,20075,19307],{"class":311},[277,20077,19710],{"class":356},[277,20079,340],{"class":311},[277,20081,343],{"class":283},[277,20083,20084,20086,20088,20090,20092,20094],{"class":279,"line":308},[277,20085,6784],{"class":291},[277,20087,448],{"class":283},[277,20089,18319],{"class":349},[277,20091,225],{"class":283},[277,20093,17882],{"class":349},[277,20095,2476],{"class":283},[277,20097,20098,20100,20102,20104,20106,20108,20110,20112,20114,20116,20118,20120],{"class":279,"line":324},[277,20099,2233],{"class":311},[277,20101,5995],{"class":283},[277,20103,19753],{"class":356},[277,20105,225],{"class":283},[277,20107,19758],{"class":356},[277,20109,225],{"class":283},[277,20111,16115],{"class":356},[277,20113,17506],{"class":283},[277,20115,298],{"class":311},[277,20117,18336],{"class":283},[277,20119,9857],{"class":311},[277,20121,19773],{"class":283},[277,20123,20124],{"class":279,"line":331},[277,20125,328],{"emptyLinePlaceholder":327},[277,20127,20128,20130,20132,20134,20136,20138,20140,20142,20144,20146],{"class":279,"line":346},[277,20129,2233],{"class":311},[277,20131,19784],{"class":356},[277,20133,340],{"class":311},[277,20135,526],{"class":311},[277,20137,19694],{"class":291},[277,20139,2334],{"class":283},[277,20141,19795],{"class":349},[277,20143,2340],{"class":283},[277,20145,601],{"class":311},[277,20147,343],{"class":283},[277,20149,20150,20152,20154,20156,20158,20160],{"class":279,"line":360},[277,20151,19806],{"class":311},[277,20153,511],{"class":283},[277,20155,405],{"class":311},[277,20157,19813],{"class":356},[277,20159,16063],{"class":311},[277,20161,19818],{"class":283},[277,20163,20164,20166,20168,20170],{"class":279,"line":371},[277,20165,8842],{"class":311},[277,20167,19825],{"class":283},[277,20169,19753],{"class":291},[277,20171,19830],{"class":283},[277,20173,20174,20176,20178],{"class":279,"line":381},[277,20175,19835],{"class":311},[277,20177,19838],{"class":291},[277,20179,19830],{"class":283},[277,20181,20182],{"class":279,"line":391},[277,20183,1203],{"class":283},[277,20185,20186],{"class":279,"line":397},[277,20187,19849],{"class":283},[277,20189,20190],{"class":279,"line":402},[277,20191,20192],{"class":283},"    \n",[277,20194,20195,20197,20199],{"class":279,"line":436},[277,20196,19858],{"class":283},[277,20198,19861],{"class":291},[277,20200,19864],{"class":283},[277,20202,20203,20205,20207],{"class":279,"line":456},[277,20204,19869],{"class":283},[277,20206,298],{"class":311},[277,20208,19874],{"class":283},[277,20210,20211],{"class":279,"line":461},[277,20212,1131],{"class":283},[277,20214,20215,20217,20219,20221,20223,20225],{"class":279,"line":476},[277,20216,10319],{"class":291},[277,20218,448],{"class":283},[277,20220,18319],{"class":349},[277,20222,225],{"class":283},[277,20224,17882],{"class":349},[277,20226,2476],{"class":283},[277,20228,20229],{"class":279,"line":500},[277,20230,19897],{"class":12741},[277,20232,20233],{"class":279,"line":505},[277,20234,19902],{"class":12741},[277,20236,20237],{"class":279,"line":520},[277,20238,19907],{"class":12741},[277,20240,20241,20243,20245],{"class":279,"line":539},[277,20242,19912],{"class":283},[277,20244,19915],{"class":291},[277,20246,19422],{"class":283},[277,20248,20249,20251],{"class":279,"line":545},[277,20250,18628],{"class":311},[277,20252,19924],{"class":283},[277,20254,20255,20257,20259,20261,20263,20265,20267,20269,20271,20273,20275,20277],{"class":279,"line":550},[277,20256,2233],{"class":311},[277,20258,5995],{"class":283},[277,20260,19753],{"class":356},[277,20262,225],{"class":283},[277,20264,19758],{"class":356},[277,20266,225],{"class":283},[277,20268,16115],{"class":356},[277,20270,17506],{"class":283},[277,20272,298],{"class":311},[277,20274,18336],{"class":283},[277,20276,9857],{"class":311},[277,20278,19773],{"class":283},[277,20280,20281,20283,20285,20287,20289,20291,20293,20295,20297,20299],{"class":279,"line":578},[277,20282,2233],{"class":311},[277,20284,19784],{"class":356},[277,20286,340],{"class":311},[277,20288,526],{"class":311},[277,20290,19694],{"class":291},[277,20292,2334],{"class":283},[277,20294,19795],{"class":349},[277,20296,2340],{"class":283},[277,20298,601],{"class":311},[277,20300,343],{"class":283},[277,20302,20303,20305,20307,20309,20311,20313],{"class":279,"line":583},[277,20304,19806],{"class":311},[277,20306,511],{"class":283},[277,20308,405],{"class":311},[277,20310,19813],{"class":356},[277,20312,16063],{"class":311},[277,20314,19818],{"class":283},[277,20316,20317,20319,20321,20323],{"class":279,"line":588},[277,20318,8842],{"class":311},[277,20320,19825],{"class":283},[277,20322,19753],{"class":291},[277,20324,19830],{"class":283},[277,20326,20327,20329,20331],{"class":279,"line":606},[277,20328,19835],{"class":311},[277,20330,19838],{"class":291},[277,20332,19830],{"class":283},[277,20334,20335],{"class":279,"line":614},[277,20336,1203],{"class":283},[277,20338,20339],{"class":279,"line":625},[277,20340,19849],{"class":283},[277,20342,20343,20345,20347],{"class":279,"line":637},[277,20344,19858],{"class":283},[277,20346,19861],{"class":291},[277,20348,19864],{"class":283},[277,20350,20351,20353,20355],{"class":279,"line":646},[277,20352,19869],{"class":283},[277,20354,298],{"class":311},[277,20356,19874],{"class":283},[277,20358,20359],{"class":279,"line":668},[277,20360,1131],{"class":283},[277,20362,20363,20365,20367,20369],{"class":279,"line":673},[277,20364,8668],{"class":291},[277,20366,448],{"class":283},[277,20368,18319],{"class":349},[277,20370,2476],{"class":283},[277,20372,20373,20375,20377],{"class":279,"line":679},[277,20374,19912],{"class":283},[277,20376,19915],{"class":291},[277,20378,19422],{"class":283},[277,20380,20381,20383],{"class":279,"line":684},[277,20382,18628],{"class":311},[277,20384,19924],{"class":283},[277,20386,20387],{"class":279,"line":700},[277,20388,1131],{"class":283},[277,20390,20391],{"class":279,"line":717},[277,20392,18255],{"class":283},[267,20394,20396],{"className":269,"code":20395,"filename":9339,"language":272,"meta":273,"style":273},"\u003Cdiv\n  v-intersect=\"{\n    onEnter: () => (visible = true),\n    onLeave: () => (visible = false),\n    options: { threshold: 0.2 }\n  }\"\n>\n  ...\n\u003C/div>\n",[16,20397,20398,20405,20417,20436,20453,20463,20471,20475,20480],{"__ignoreMap":273},[277,20399,20400,20402],{"class":279,"line":280},[277,20401,284],{"class":283},[277,20403,20404],{"class":287},"div\n",[277,20406,20407,20410,20412,20414],{"class":279,"line":308},[277,20408,20409],{"class":291},"  v-intersect",[277,20411,298],{"class":283},[277,20413,866],{"class":301},[277,20415,20416],{"class":283},"{\n",[277,20418,20419,20422,20424,20426,20429,20431,20434],{"class":279,"line":324},[277,20420,20421],{"class":291},"    onEnter",[277,20423,3790],{"class":283},[277,20425,601],{"class":311},[277,20427,20428],{"class":283}," (visible ",[277,20430,298],{"class":311},[277,20432,20433],{"class":356}," true",[277,20435,3753],{"class":283},[277,20437,20438,20441,20443,20445,20447,20449,20451],{"class":279,"line":331},[277,20439,20440],{"class":291},"    onLeave",[277,20442,3790],{"class":283},[277,20444,601],{"class":311},[277,20446,20428],{"class":283},[277,20448,298],{"class":311},[277,20450,19366],{"class":356},[277,20452,3753],{"class":283},[277,20454,20455,20458,20461],{"class":279,"line":346},[277,20456,20457],{"class":283},"    options: { threshold: ",[277,20459,20460],{"class":356},"0.2",[277,20462,2179],{"class":283},[277,20464,20465,20468],{"class":279,"line":360},[277,20466,20467],{"class":283},"  }",[277,20469,20470],{"class":301},"\"\n",[277,20472,20473],{"class":279,"line":371},[277,20474,305],{"class":283},[277,20476,20477],{"class":279,"line":381},[277,20478,20479],{"class":283},"  ...\n",[277,20481,20482,20484,20486],{"class":279,"line":391},[277,20483,785],{"class":283},[277,20485,4201],{"class":287},[277,20487,305],{"class":283},[3111,20489,20490],{},[21,20491,20492,20493,20495,20496,12494,20498,20500],{},"Si vas a recrear observers en ",[16,20494,9091],{},", intenta comparar ",[16,20497,17890],{},[16,20499,17899],{}," para evitar trabajo innecesario.",[30,20502,1596],{"id":1595},[38,20504,20505,20511,20517,20527,20537],{},[41,20506,20507,20508,104],{},"Las directivas personalizadas son ideales para encapsular ",[72,20509,20510],{},"comportamiento de DOM reutilizable",[41,20512,20513,20514,20516],{},"El hook ",[16,20515,5294],{}," es obligatorio para limpieza y evitar fugas.",[41,20518,20519,20520,225,20522,225,20524,20526],{},"Mantén un contrato simple (",[16,20521,3885],{},[16,20523,18022],{},[16,20525,18025],{},") y evita mezclar estado de negocio.",[41,20528,20529,20530,20533,20534,20536],{},"En Vue 3, ",[72,20531,20532],{},"si el callback puede cambiar",", actualízalo en ",[16,20535,9091],{}," para no quedarte con una referencia vieja.",[41,20538,20539],{},"Prioriza Composition API; usa Options API cuando lo necesites por compatibilidad incremental.",[1606,20541,20542],{},"html pre.shiki code .sVt8B, html code.shiki .sVt8B{--shiki-default:#24292E;--shiki-dark:#E1E4E8}html pre.shiki code .s9eBZ, html code.shiki .s9eBZ{--shiki-default:#22863A;--shiki-dark:#85E89D}html pre.shiki code .sScJk, html code.shiki .sScJk{--shiki-default:#6F42C1;--shiki-dark:#B392F0}html pre.shiki code .sZZnC, html code.shiki .sZZnC{--shiki-default:#032F62;--shiki-dark:#9ECBFF}html pre.shiki code .szBVR, html code.shiki .szBVR{--shiki-default:#D73A49;--shiki-dark:#F97583}html pre.shiki code .s4XuR, html code.shiki .s4XuR{--shiki-default:#E36209;--shiki-dark:#FFAB70}html pre.shiki code .sj4cs, html code.shiki .sj4cs{--shiki-default:#005CC5;--shiki-dark:#79B8FF}html pre.shiki code .sJ8bj, html code.shiki .sJ8bj{--shiki-default:#6A737D;--shiki-dark:#6A737D}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":273,"searchDepth":308,"depth":308,"links":20544},[20545,20546,20547,20548,20549,20550,20554,20560],{"id":17789,"depth":308,"text":17790},{"id":60,"depth":308,"text":61},{"id":17935,"depth":308,"text":17936},{"id":17959,"depth":308,"text":17960},{"id":189,"depth":308,"text":190},{"id":1945,"depth":308,"text":1946,"children":20551},[20552],{"id":18110,"depth":324,"text":20553},"v-click-outside (con callback actualizable)",{"id":19267,"depth":308,"text":19268,"children":20555},[20556,20558],{"id":19271,"depth":324,"text":20557},"v-autofocus (básico y práctico)",{"id":19566,"depth":324,"text":20559},"v-intersect (IntersectionObserver)",{"id":1595,"depth":308,"text":1596},"https://res.cloudinary.com/denj4fg7f/image/upload/v1772207944/directives-vue-custom-directives-guide_nwp7od.png","Ejemplo de directiva personalizada en Vue 3","2026-02-27","Aprende a crear directivas personalizadas en Vue 3 con casos reales, ciclo de vida, limpieza correcta y ejemplos equivalentes en Composition API y Options API.",{"script":20566},[20567],{"type":1632,"key":1633,"data-nuxt-schema-org":327,"nodes":20568},[20569],{"headline":17786,"author":20570,"datePublished":20571,"@type":1640},{"name":1637,"@type":1638},"2026-02-27T12:30:00-05:00",{"updatedAt":20571,"coverCaption":20562,"author":1637,"keywords":20573},[1645,20574,20575,20576,271,971],"directivas personalizadas","custom directives","ciclo de vida","/blog/directives-vue-custom-directives-guide.es",[20579],{"headline":17786,"author":20580,"datePublished":20571,"@type":1640},{"name":1637,"@type":1638},{"title":17780,"description":20564},"vue-directives","Ruta paso a paso para dominar las directivas principales de Vue.","Directivas en Vue","blog/directives-vue-custom-directives-guide.es",[20587,20590,20593,20594,20595],{"tag":20588,"color":20589},"Directivas","#6C5CE7",{"tag":20591,"color":20592},"Directivas Personalizadas","#7D5FFF",{"tag":1665,"color":1666},{"tag":3167,"color":3168},{"tag":1671,"color":1672},"SGkjZMQptKC1joRiUsXeHfyRHnMe3QE4zpX3YzXFBQU",{"id":20598,"title":20599,"body":20600,"cover":21866,"coverAlt":21867,"date":21868,"description":21869,"draft":1627,"extension":1628,"head":21870,"locale":1641,"meta":21878,"navigation":327,"path":21882,"schemaOrg":21883,"seo":21886,"series":20582,"seriesDescription":20583,"seriesOrder":397,"seriesTitle":20584,"slug":1656,"stem":21887,"tags":21888,"__hash__":21895},"blog/blog/directives-vue-v-cloak-guide.es.md","Directivas en Vue: v-cloak",{"type":8,"value":20601,"toc":21844},[20602,20609,20622,20626,20629,20634,20639,20654,20656,20664,20669,20674,20709,20722,20732,20736,20743,20746,20759,20762,20773,20775,20780,20791,20793,20795,20809,20816,20818,20825,20832,20839,20849,20853,20859,20863,20868,20870,20874,20902,20910,20914,21051,21189,21304,21308,21314,21318,21557,21787,21813,21815,21820,21825,21841],[11,20603,20605,20606],{"id":20604},"directivas-en-vue-v-cloak","Directivas en Vue: ",[16,20607,20608],{},"v-cloak",[21,20610,20611,20613,20614,20617,20618,20621],{},[16,20612,20608],{}," resuelve un problema visual clásico en aplicaciones con ",[72,20615,20616],{},"Vue",": el parpadeo de plantillas sin compilar (",[16,20619,20620],{},"{{ ... }}",") antes de que la instancia termine de montarse. Es una directiva simple, pero estratégica cuando te importa la percepción de calidad en la primera carga.",[30,20623,20625],{"id":20624},"por-qué-importa","Por qué importa",[21,20627,20628],{},"Si tu HTML inicial contiene expresiones de Vue, el navegador puede renderizarlas en crudo durante unos milisegundos, especialmente si el bundle aún no se ha descargado o ejecutado.\nEse “flash” degrada la experiencia y transmite sensación de inestabilidad.",[21,20630,20631,20633],{},[16,20632,20608],{}," evita ese estado intermedio ocultando el contenido hasta que Vue haya completado el montaje y compilado el template.",[21,20635,20636],{},[72,20637,20638],{},"Beneficios directos:",[38,20640,20641,20648,20651],{},[41,20642,20643,20644,20647],{},"El usuario no ve ",[16,20645,20646],{},"{{ message }}"," ni estructuras sin procesar.",[41,20649,20650],{},"La carga inicial se percibe más limpia y profesional.",[41,20652,20653],{},"Reduces ruido visual en landing pages, layouts estáticos o integraciones progresivas.",[30,20655,61],{"id":60},[21,20657,20658,20660,20661,20663],{},[16,20659,20608],{}," funciona en conjunto con CSS.\nVue elimina automáticamente el atributo ",[16,20662,20608],{}," del nodo cuando la instancia ha sido montada y el template compilado.",[21,20665,20666],{},[72,20667,20668],{},"Patrón típico:",[10089,20670,20671],{},[41,20672,20673],{},"Añades una regla CSS global:",[267,20675,20680],{"className":20676,"code":20677,"filename":20678,"language":20679,"meta":273,"style":273},"language-css shiki shiki-themes github-light github-dark","[v-cloak] {\n display: none;\n}\n","style.css","css",[16,20681,20682,20692,20705],{"__ignoreMap":273},[277,20683,20684,20687,20689],{"class":279,"line":280},[277,20685,20686],{"class":283},"[",[277,20688,20608],{"class":291},[277,20690,20691],{"class":283},"] {\n",[277,20693,20694,20697,20700,20703],{"class":279,"line":308},[277,20695,20696],{"class":356}," display",[277,20698,20699],{"class":283},": ",[277,20701,20702],{"class":356},"none",[277,20704,18151],{"class":283},[277,20706,20707],{"class":279,"line":324},[277,20708,394],{"class":283},[10089,20710,20711,20716,20719],{"start":308},[41,20712,20713,20714,104],{},"Marcas el contenedor raíz (o el fragmento necesario) con ",[16,20715,20608],{},[41,20717,20718],{},"Mientras Vue no monta, el bloque permanece oculto.",[41,20720,20721],{},"Cuando Vue monta, elimina el atributo y el contenido aparece ya procesado.",[3111,20723,20724],{},[21,20725,20726,20728,20729,1895],{},[16,20727,20608],{}," no transforma datos ni agrega reactividad. Solo controla la visibilidad durante la fase previa al montaje (",[16,20730,20731],{},"before mount",[30,20733,20735],{"id":20734},"consideraciones-en-vue-3-y-ssr","Consideraciones en Vue 3 y SSR",[21,20737,20738,20739,20742],{},"En aplicaciones con SSR (por ejemplo, usando ",[72,20740,20741],{},"Nuxt 4","), el HTML ya llega compilado desde el servidor, por lo que normalmente no existe riesgo de mostrar interpolaciones en crudo.",[21,20744,20745],{},"En esos casos:",[38,20747,20748,20753,20756],{},[41,20749,20750,20752],{},[16,20751,20608],{}," suele ser innecesario.",[41,20754,20755],{},"No corrige problemas de hydration mismatch.",[41,20757,20758],{},"No sustituye una estrategia adecuada de loading o streaming.",[21,20760,20761],{},"Su utilidad es mayor en:",[38,20763,20764,20767,20770],{},[41,20765,20766],{},"Integraciones progresivas sobre HTML existente.",[41,20768,20769],{},"Aplicaciones SPA donde el bundle puede tardar en ejecutarse.",[41,20771,20772],{},"Entornos donde el HTML inicial contiene marcadores Vue sin procesar.",[30,20774,129],{"id":128},[21,20776,20777,20778,7669],{},"Usa ",[16,20779,20608],{},[38,20781,20782,20785,20788],{},[41,20783,20784],{},"Sirves HTML inicial con plantillas Vue visibles (CMS, integración progresiva).",[41,20786,20787],{},"La app tarda perceptiblemente en montar por tamaño del bundle o red lenta.",[41,20789,20790],{},"Quieres blindar la primera impresión visual de componentes críticos (hero, login, pricing).",[30,20792,156],{"id":155},[21,20794,162],{},[38,20796,20797,20800,20803,20806],{},[41,20798,20799],{},"No existe riesgo real de mostrar interpolaciones.",[41,20801,20802],{},"Puedes resolver el estado inicial con skeletons o placeholders más ricos.",[41,20804,20805],{},"Ocultar el contenedor completo afecta accesibilidad o continuidad visual.",[41,20807,20808],{},"Estás en SSR donde el HTML ya llega procesado correctamente.",[3111,20810,20811],{},[21,20812,20813,20815],{},[16,20814,20608],{}," no es una estrategia de performance; es un ajuste de acabado visual.",[30,20817,190],{"id":189},[192,20819,20821,20822,20824],{"id":20820},"_1-usar-v-cloak-sin-css","1) Usar ",[16,20823,20608],{}," sin CSS",[21,20826,20827,20828,20831],{},"Si no defines ",[16,20829,20830],{},"[v-cloak] { display: none; }",", la directiva no tendrá efecto visible.",[192,20833,20835,20836],{"id":20834},"_2-declarar-la-regla-en-un-style-scoped","2) Declarar la regla en un ",[16,20837,20838],{},"\u003Cstyle scoped>",[21,20840,20841,20842,20844,20845,20848],{},"Si la regla vive en un ",[16,20843,20838],{}," de otro componente, no afectará al nodo marcado.\nDeclárala en estilos globales (por ejemplo, en ",[16,20846,20847],{},"main.css"," o en el layout raíz).",[192,20850,20852],{"id":20851},"_3-ocultar-demasiado-contenido","3) Ocultar demasiado contenido",[21,20854,20855,20856,20858],{},"Aplicar ",[16,20857,20608],{}," al wrapper completo puede dejar la pantalla vacía durante el arranque.\nEn vistas complejas, úsalo solo en fragmentos donde exista riesgo real de parpadeo.",[192,20860,20862],{"id":20861},"_4-esperar-que-resuelva-hydration-mismatches","4) Esperar que resuelva hydration mismatches",[21,20864,20865,20867],{},[16,20866,20608],{}," no corrige diferencias entre el HTML del servidor y el render del cliente.\nLos hydration mismatches deben resolverse alineando la lógica de renderizado entre servidor y cliente.",[30,20869,1946],{"id":1945},[192,20871,20873],{"id":20872},"_1-uso-mínimo-global","1) Uso mínimo global",[267,20875,20877],{"className":20676,"code":20876,"filename":20678,"language":20679,"meta":273,"style":273},"[v-cloak] {\n  display: none;\n}\n",[16,20878,20879,20887,20898],{"__ignoreMap":273},[277,20880,20881,20883,20885],{"class":279,"line":280},[277,20882,20686],{"class":283},[277,20884,20608],{"class":291},[277,20886,20691],{"class":283},[277,20888,20889,20892,20894,20896],{"class":279,"line":308},[277,20890,20891],{"class":356},"  display",[277,20893,20699],{"class":283},[277,20895,20702],{"class":356},[277,20897,18151],{"class":283},[277,20899,20900],{"class":279,"line":324},[277,20901,394],{"class":283},[3111,20903,20904],{},[21,20905,20906,20907,20909],{},"Con esa regla global, cualquier bloque marcado con ",[16,20908,20608],{}," permanecerá oculto hasta que Vue elimine el atributo tras el montaje.",[192,20911,20913],{"id":20912},"_2-hero-con-texto-reactivo","2) Hero con texto reactivo",[267,20915,20918],{"className":269,"code":20916,"filename":271,"highlights":20917,"language":272,"meta":273,"style":273},"\u003Cscript setup lang=\"ts\">\nimport { ref } from \"vue\";\n\nconst headline = ref(\"Aprende Vue sin fricción\");\n\u003C/script>\n\n\u003Ctemplate>\n  \u003Csection v-cloak class=\"hero\">\n    \u003Ch1>{{ headline }}\u003C/h1>\n    \u003Cp>Guías prácticas para equipos frontend.\u003C/p>\n  \u003C/section>\n\u003C/template>\n",[381],[16,20919,20920,20936,20948,20952,20970,20978,20982,20990,21009,21022,21035,21043],{"__ignoreMap":273},[277,20921,20922,20924,20926,20928,20930,20932,20934],{"class":279,"line":280},[277,20923,284],{"class":283},[277,20925,288],{"class":287},[277,20927,292],{"class":291},[277,20929,295],{"class":291},[277,20931,298],{"class":283},[277,20933,302],{"class":301},[277,20935,305],{"class":283},[277,20937,20938,20940,20942,20944,20946],{"class":279,"line":308},[277,20939,312],{"class":311},[277,20941,11006],{"class":283},[277,20943,318],{"class":311},[277,20945,18148],{"class":301},[277,20947,18151],{"class":283},[277,20949,20950],{"class":279,"line":324},[277,20951,328],{"emptyLinePlaceholder":327},[277,20953,20954,20956,20959,20961,20963,20965,20968],{"class":279,"line":331},[277,20955,405],{"class":311},[277,20957,20958],{"class":356}," headline",[277,20960,340],{"class":311},[277,20962,413],{"class":291},[277,20964,448],{"class":283},[277,20966,20967],{"class":301},"\"Aprende Vue sin fricción\"",[277,20969,18277],{"class":283},[277,20971,20972,20974,20976],{"class":279,"line":346},[277,20973,785],{"class":283},[277,20975,288],{"class":287},[277,20977,305],{"class":283},[277,20979,20980],{"class":279,"line":360},[277,20981,328],{"emptyLinePlaceholder":327},[277,20983,20984,20986,20988],{"class":279,"line":371},[277,20985,284],{"class":283},[277,20987,802],{"class":287},[277,20989,305],{"class":283},[277,20991,20993,20995,20997,21000,21002,21004,21007],{"class":20992,"line":381},[279,9398],[277,20994,810],{"class":283},[277,20996,4121],{"class":287},[277,20998,20999],{"class":291}," v-cloak",[277,21001,816],{"class":291},[277,21003,298],{"class":283},[277,21005,21006],{"class":301},"\"hero\"",[277,21008,305],{"class":283},[277,21010,21011,21013,21015,21018,21020],{"class":279,"line":391},[277,21012,829],{"class":283},[277,21014,11],{"class":287},[277,21016,21017],{"class":283},">{{ headline }}\u003C/",[277,21019,11],{"class":287},[277,21021,305],{"class":283},[277,21023,21024,21026,21028,21031,21033],{"class":279,"line":397},[277,21025,829],{"class":283},[277,21027,21],{"class":287},[277,21029,21030],{"class":283},">Guías prácticas para equipos frontend.\u003C/",[277,21032,21],{"class":287},[277,21034,305],{"class":283},[277,21036,21037,21039,21041],{"class":279,"line":402},[277,21038,954],{"class":283},[277,21040,4121],{"class":287},[277,21042,305],{"class":283},[277,21044,21045,21047,21049],{"class":279,"line":436},[277,21046,785],{"class":283},[277,21048,802],{"class":287},[277,21050,305],{"class":283},[267,21052,21055],{"className":269,"code":21053,"filename":971,"highlights":21054,"language":272,"meta":273,"style":273},"\u003Cscript lang=\"ts\">\nexport default {\n  data() {\n    return {\n      headline: \"Aprende Vue sin fricción\",\n    };\n  },\n};\n\u003C/script>\n\n\u003Ctemplate>\n  \u003Csection v-cloak class=\"hero\">\n    \u003Ch1>{{ headline }}\u003C/h1>\n    \u003Cp>Guías prácticas para equipos frontend.\u003C/p>\n  \u003C/section>\n\u003C/template>\n",[436],[16,21056,21057,21071,21079,21085,21091,21100,21104,21108,21112,21120,21124,21132,21149,21161,21173,21181],{"__ignoreMap":273},[277,21058,21059,21061,21063,21065,21067,21069],{"class":279,"line":280},[277,21060,284],{"class":283},[277,21062,288],{"class":287},[277,21064,295],{"class":291},[277,21066,298],{"class":283},[277,21068,302],{"class":301},[277,21070,305],{"class":283},[277,21072,21073,21075,21077],{"class":279,"line":308},[277,21074,1057],{"class":311},[277,21076,1060],{"class":311},[277,21078,343],{"class":283},[277,21080,21081,21083],{"class":279,"line":324},[277,21082,1086],{"class":291},[277,21084,473],{"class":283},[277,21086,21087,21089],{"class":279,"line":331},[277,21088,1093],{"class":311},[277,21090,343],{"class":283},[277,21092,21093,21096,21098],{"class":279,"line":346},[277,21094,21095],{"class":283},"      headline: ",[277,21097,20967],{"class":301},[277,21099,1077],{"class":283},[277,21101,21102],{"class":279,"line":360},[277,21103,18478],{"class":283},[277,21105,21106],{"class":279,"line":371},[277,21107,1131],{"class":283},[277,21109,21110],{"class":279,"line":381},[277,21111,18255],{"class":283},[277,21113,21114,21116,21118],{"class":279,"line":391},[277,21115,785],{"class":283},[277,21117,288],{"class":287},[277,21119,305],{"class":283},[277,21121,21122],{"class":279,"line":397},[277,21123,328],{"emptyLinePlaceholder":327},[277,21125,21126,21128,21130],{"class":279,"line":402},[277,21127,284],{"class":283},[277,21129,802],{"class":287},[277,21131,305],{"class":283},[277,21133,21135,21137,21139,21141,21143,21145,21147],{"class":21134,"line":436},[279,9398],[277,21136,810],{"class":283},[277,21138,4121],{"class":287},[277,21140,20999],{"class":291},[277,21142,816],{"class":291},[277,21144,298],{"class":283},[277,21146,21006],{"class":301},[277,21148,305],{"class":283},[277,21150,21151,21153,21155,21157,21159],{"class":279,"line":456},[277,21152,829],{"class":283},[277,21154,11],{"class":287},[277,21156,21017],{"class":283},[277,21158,11],{"class":287},[277,21160,305],{"class":283},[277,21162,21163,21165,21167,21169,21171],{"class":279,"line":461},[277,21164,829],{"class":283},[277,21166,21],{"class":287},[277,21168,21030],{"class":283},[277,21170,21],{"class":287},[277,21172,305],{"class":283},[277,21174,21175,21177,21179],{"class":279,"line":476},[277,21176,954],{"class":283},[277,21178,4121],{"class":287},[277,21180,305],{"class":283},[277,21182,21183,21185,21187],{"class":279,"line":500},[277,21184,785],{"class":283},[277,21186,802],{"class":287},[277,21188,305],{"class":283},[267,21190,21193],{"className":20676,"code":21191,"filename":20678,"highlights":21192,"language":20679,"meta":273,"style":273},"[v-cloak] {\n  display: none;\n}\n\n.hero {\n  background: linear-gradient(135deg, #6C5CE7, #B173BF);\n  color: white;\n  padding: 2rem;\n  border-radius: 8px;\n}\n",[280,308,324],[16,21194,21195,21204,21215,21220,21224,21231,21259,21271,21285,21300],{"__ignoreMap":273},[277,21196,21198,21200,21202],{"class":21197,"line":280},[279,9398],[277,21199,20686],{"class":283},[277,21201,20608],{"class":291},[277,21203,20691],{"class":283},[277,21205,21207,21209,21211,21213],{"class":21206,"line":308},[279,9398],[277,21208,20891],{"class":356},[277,21210,20699],{"class":283},[277,21212,20702],{"class":356},[277,21214,18151],{"class":283},[277,21216,21218],{"class":21217,"line":324},[279,9398],[277,21219,394],{"class":283},[277,21221,21222],{"class":279,"line":331},[277,21223,328],{"emptyLinePlaceholder":327},[277,21225,21226,21229],{"class":279,"line":346},[277,21227,21228],{"class":291},".hero",[277,21230,343],{"class":283},[277,21232,21233,21236,21238,21241,21243,21246,21249,21251,21253,21255,21257],{"class":279,"line":360},[277,21234,21235],{"class":356},"  background",[277,21237,20699],{"class":283},[277,21239,21240],{"class":356},"linear-gradient",[277,21242,448],{"class":283},[277,21244,21245],{"class":356},"135",[277,21247,21248],{"class":311},"deg",[277,21250,225],{"class":283},[277,21252,20589],{"class":356},[277,21254,225],{"class":283},[277,21256,9075],{"class":356},[277,21258,18277],{"class":283},[277,21260,21261,21264,21266,21269],{"class":279,"line":371},[277,21262,21263],{"class":356},"  color",[277,21265,20699],{"class":283},[277,21267,21268],{"class":356},"white",[277,21270,18151],{"class":283},[277,21272,21273,21276,21278,21280,21283],{"class":279,"line":381},[277,21274,21275],{"class":356},"  padding",[277,21277,20699],{"class":283},[277,21279,2139],{"class":356},[277,21281,21282],{"class":311},"rem",[277,21284,18151],{"class":283},[277,21286,21287,21290,21292,21295,21298],{"class":279,"line":391},[277,21288,21289],{"class":356},"  border-radius",[277,21291,20699],{"class":283},[277,21293,21294],{"class":356},"8",[277,21296,21297],{"class":311},"px",[277,21299,18151],{"class":283},[277,21301,21302],{"class":279,"line":397},[277,21303,394],{"class":283},[192,21305,21307],{"id":21306},"_3-integración-progresiva-en-html-existente","3) Integración progresiva en HTML existente",[21,21309,21310,21311,21313],{},"Cuando montas Vue en una sección específica de una página legacy (por ejemplo, un bloque de login o un widget interactivo), ",[16,21312,20608],{}," evita mostrar marcadores sin procesar durante el bootstrap inicial.",[192,21315,21317],{"id":21316},"_4-ejemplo-completo-con-estado-asíncrono","4) Ejemplo completo con estado asíncrono",[267,21319,21321],{"className":269,"code":21320,"filename":271,"language":272,"meta":273,"style":273},"\u003Cscript setup lang=\"ts\">\nimport { onMounted, ref } from \"vue\";\n\nconst user = ref\u003C{ name: string } | null>(null);\n\nonMounted(async () => {\n  await new Promise((resolve) => setTimeout(resolve, 350));\n  user.value = { name: \"Cristhian\" };\n});\n\u003C/script>\n\n\u003Ctemplate>\n  \u003Caside v-cloak class=\"welcome-card\">\n    \u003Ch2>Panel\u003C/h2>\n    \u003Cp v-if=\"user\">Hola, {{ user.name }}\u003C/p>\n    \u003Cp v-else>Cargando perfil...\u003C/p>\n  \u003C/aside>\n\u003C/template>\n",[16,21322,21323,21339,21352,21356,21389,21393,21407,21435,21450,21455,21463,21467,21475,21493,21506,21526,21541,21549],{"__ignoreMap":273},[277,21324,21325,21327,21329,21331,21333,21335,21337],{"class":279,"line":280},[277,21326,284],{"class":283},[277,21328,288],{"class":287},[277,21330,292],{"class":291},[277,21332,295],{"class":291},[277,21334,298],{"class":283},[277,21336,302],{"class":301},[277,21338,305],{"class":283},[277,21340,21341,21343,21346,21348,21350],{"class":279,"line":308},[277,21342,312],{"class":311},[277,21344,21345],{"class":283}," { onMounted, ref } ",[277,21347,318],{"class":311},[277,21349,18148],{"class":301},[277,21351,18151],{"class":283},[277,21353,21354],{"class":279,"line":324},[277,21355,328],{"emptyLinePlaceholder":327},[277,21357,21358,21360,21362,21364,21366,21369,21372,21374,21377,21379,21381,21383,21385,21387],{"class":279,"line":331},[277,21359,405],{"class":311},[277,21361,17573],{"class":356},[277,21363,340],{"class":311},[277,21365,413],{"class":291},[277,21367,21368],{"class":283},"\u003C{ ",[277,21370,21371],{"class":349},"name",[277,21373,353],{"class":311},[277,21375,21376],{"class":356}," string",[277,21378,17506],{"class":283},[277,21380,5790],{"class":311},[277,21382,424],{"class":356},[277,21384,427],{"class":283},[277,21386,430],{"class":356},[277,21388,18277],{"class":283},[277,21390,21391],{"class":279,"line":346},[277,21392,328],{"emptyLinePlaceholder":327},[277,21394,21395,21397,21399,21401,21403,21405],{"class":279,"line":360},[277,21396,687],{"class":291},[277,21398,448],{"class":283},[277,21400,464],{"class":311},[277,21402,598],{"class":283},[277,21404,601],{"class":311},[277,21406,343],{"class":283},[277,21408,21409,21411,21413,21415,21417,21419,21421,21423,21426,21429,21432],{"class":279,"line":371},[277,21410,6252],{"class":311},[277,21412,526],{"class":311},[277,21414,17350],{"class":356},[277,21416,2334],{"class":283},[277,21418,17355],{"class":349},[277,21420,2340],{"class":283},[277,21422,601],{"class":311},[277,21424,21425],{"class":291}," setTimeout",[277,21427,21428],{"class":283},"(resolve, ",[277,21430,21431],{"class":356},"350",[277,21433,21434],{"class":283},"));\n",[277,21436,21437,21440,21442,21445,21448],{"class":279,"line":381},[277,21438,21439],{"class":283},"  user.value ",[277,21441,298],{"class":311},[277,21443,21444],{"class":283}," { name: ",[277,21446,21447],{"class":301},"\"Cristhian\"",[277,21449,19697],{"class":283},[277,21451,21452],{"class":279,"line":391},[277,21453,21454],{"class":283},"});\n",[277,21456,21457,21459,21461],{"class":279,"line":397},[277,21458,785],{"class":283},[277,21460,288],{"class":287},[277,21462,305],{"class":283},[277,21464,21465],{"class":279,"line":402},[277,21466,328],{"emptyLinePlaceholder":327},[277,21468,21469,21471,21473],{"class":279,"line":436},[277,21470,284],{"class":283},[277,21472,802],{"class":287},[277,21474,305],{"class":283},[277,21476,21477,21479,21482,21484,21486,21488,21491],{"class":279,"line":456},[277,21478,810],{"class":283},[277,21480,21481],{"class":287},"aside",[277,21483,20999],{"class":291},[277,21485,816],{"class":291},[277,21487,298],{"class":283},[277,21489,21490],{"class":301},"\"welcome-card\"",[277,21492,305],{"class":283},[277,21494,21495,21497,21499,21502,21504],{"class":279,"line":461},[277,21496,829],{"class":283},[277,21498,30],{"class":287},[277,21500,21501],{"class":283},">Panel\u003C/",[277,21503,30],{"class":287},[277,21505,305],{"class":283},[277,21507,21508,21510,21512,21514,21516,21519,21522,21524],{"class":279,"line":476},[277,21509,829],{"class":283},[277,21511,21],{"class":287},[277,21513,834],{"class":291},[277,21515,298],{"class":283},[277,21517,21518],{"class":301},"\"user\"",[277,21520,21521],{"class":283},">Hola, {{ user.name }}\u003C/",[277,21523,21],{"class":287},[277,21525,305],{"class":283},[277,21527,21528,21530,21532,21534,21537,21539],{"class":279,"line":500},[277,21529,829],{"class":283},[277,21531,21],{"class":287},[277,21533,941],{"class":291},[277,21535,21536],{"class":283},">Cargando perfil...\u003C/",[277,21538,21],{"class":287},[277,21540,305],{"class":283},[277,21542,21543,21545,21547],{"class":279,"line":505},[277,21544,954],{"class":283},[277,21546,21481],{"class":287},[277,21548,305],{"class":283},[277,21550,21551,21553,21555],{"class":279,"line":520},[277,21552,785],{"class":283},[277,21554,802],{"class":287},[277,21556,305],{"class":283},[267,21558,21560],{"className":269,"code":21559,"filename":971,"language":272,"meta":273,"style":273},"\u003Cscript lang=\"ts\">\nexport default {\n  name: \"WelcomeCard\",\n  data() {\n    return {\n      user: null as null | { name: string },\n    };\n  },\n  async mounted() {\n    await new Promise((resolve) => setTimeout(resolve, 350));\n    this.user = { name: \"Cristhian\" };\n  },\n};\n\u003C/script>\n\n\u003Ctemplate>\n  \u003Caside v-cloak class=\"welcome-card\">\n    \u003Ch2>Panel\u003C/h2>\n    \u003Cp v-if=\"user\">Hola, {{ user.name }}\u003C/p>\n    \u003Cp v-else>Cargando perfil...\u003C/p>\n  \u003C/aside>\n\u003C/template>\n",[16,21561,21562,21576,21584,21593,21599,21605,21628,21632,21636,21644,21668,21683,21687,21691,21699,21703,21711,21727,21739,21757,21771,21779],{"__ignoreMap":273},[277,21563,21564,21566,21568,21570,21572,21574],{"class":279,"line":280},[277,21565,284],{"class":283},[277,21567,288],{"class":287},[277,21569,295],{"class":291},[277,21571,298],{"class":283},[277,21573,302],{"class":301},[277,21575,305],{"class":283},[277,21577,21578,21580,21582],{"class":279,"line":308},[277,21579,1057],{"class":311},[277,21581,1060],{"class":311},[277,21583,343],{"class":283},[277,21585,21586,21588,21591],{"class":279,"line":324},[277,21587,1071],{"class":283},[277,21589,21590],{"class":301},"\"WelcomeCard\"",[277,21592,1077],{"class":283},[277,21594,21595,21597],{"class":279,"line":331},[277,21596,1086],{"class":291},[277,21598,473],{"class":283},[277,21600,21601,21603],{"class":279,"line":346},[277,21602,1093],{"class":311},[277,21604,343],{"class":283},[277,21606,21607,21610,21612,21614,21616,21618,21620,21622,21624,21626],{"class":279,"line":360},[277,21608,21609],{"class":283},"      user: ",[277,21611,430],{"class":356},[277,21613,1105],{"class":311},[277,21615,424],{"class":356},[277,21617,421],{"class":311},[277,21619,5995],{"class":283},[277,21621,21371],{"class":349},[277,21623,353],{"class":311},[277,21625,21376],{"class":356},[277,21627,2132],{"class":283},[277,21629,21630],{"class":279,"line":371},[277,21631,18478],{"class":283},[277,21633,21634],{"class":279,"line":381},[277,21635,1131],{"class":283},[277,21637,21638,21640,21642],{"class":279,"line":391},[277,21639,1248],{"class":311},[277,21641,1329],{"class":291},[277,21643,473],{"class":283},[277,21645,21646,21648,21650,21652,21654,21656,21658,21660,21662,21664,21666],{"class":279,"line":397},[277,21647,617],{"class":311},[277,21649,526],{"class":311},[277,21651,17350],{"class":356},[277,21653,2334],{"class":283},[277,21655,17355],{"class":349},[277,21657,2340],{"class":283},[277,21659,601],{"class":311},[277,21661,21425],{"class":291},[277,21663,21428],{"class":283},[277,21665,21431],{"class":356},[277,21667,21434],{"class":283},[277,21669,21670,21672,21675,21677,21679,21681],{"class":279,"line":402},[277,21671,4724],{"class":356},[277,21673,21674],{"class":283},".user ",[277,21676,298],{"class":311},[277,21678,21444],{"class":283},[277,21680,21447],{"class":301},[277,21682,19697],{"class":283},[277,21684,21685],{"class":279,"line":436},[277,21686,1131],{"class":283},[277,21688,21689],{"class":279,"line":456},[277,21690,18255],{"class":283},[277,21692,21693,21695,21697],{"class":279,"line":461},[277,21694,785],{"class":283},[277,21696,288],{"class":287},[277,21698,305],{"class":283},[277,21700,21701],{"class":279,"line":476},[277,21702,328],{"emptyLinePlaceholder":327},[277,21704,21705,21707,21709],{"class":279,"line":500},[277,21706,284],{"class":283},[277,21708,802],{"class":287},[277,21710,305],{"class":283},[277,21712,21713,21715,21717,21719,21721,21723,21725],{"class":279,"line":505},[277,21714,810],{"class":283},[277,21716,21481],{"class":287},[277,21718,20999],{"class":291},[277,21720,816],{"class":291},[277,21722,298],{"class":283},[277,21724,21490],{"class":301},[277,21726,305],{"class":283},[277,21728,21729,21731,21733,21735,21737],{"class":279,"line":520},[277,21730,829],{"class":283},[277,21732,30],{"class":287},[277,21734,21501],{"class":283},[277,21736,30],{"class":287},[277,21738,305],{"class":283},[277,21740,21741,21743,21745,21747,21749,21751,21753,21755],{"class":279,"line":539},[277,21742,829],{"class":283},[277,21744,21],{"class":287},[277,21746,834],{"class":291},[277,21748,298],{"class":283},[277,21750,21518],{"class":301},[277,21752,21521],{"class":283},[277,21754,21],{"class":287},[277,21756,305],{"class":283},[277,21758,21759,21761,21763,21765,21767,21769],{"class":279,"line":545},[277,21760,829],{"class":283},[277,21762,21],{"class":287},[277,21764,941],{"class":291},[277,21766,21536],{"class":283},[277,21768,21],{"class":287},[277,21770,305],{"class":283},[277,21772,21773,21775,21777],{"class":279,"line":550},[277,21774,954],{"class":283},[277,21776,21481],{"class":287},[277,21778,305],{"class":283},[277,21780,21781,21783,21785],{"class":279,"line":578},[277,21782,785],{"class":283},[277,21784,802],{"class":287},[277,21786,305],{"class":283},[267,21788,21789],{"className":20676,"code":20876,"filename":20678,"language":20679,"meta":273,"style":273},[16,21790,21791,21799,21809],{"__ignoreMap":273},[277,21792,21793,21795,21797],{"class":279,"line":280},[277,21794,20686],{"class":283},[277,21796,20608],{"class":291},[277,21798,20691],{"class":283},[277,21800,21801,21803,21805,21807],{"class":279,"line":308},[277,21802,20891],{"class":356},[277,21804,20699],{"class":283},[277,21806,20702],{"class":356},[277,21808,18151],{"class":283},[277,21810,21811],{"class":279,"line":324},[277,21812,394],{"class":283},[30,21814,1596],{"id":1595},[21,21816,21817,21819],{},[16,21818,20608],{}," es una directiva de acabado visual: no modifica tu lógica ni tu modelo de reactividad, pero sí mejora la calidad percibida del render inicial en contextos donde el template puede mostrarse sin compilar.",[21,21821,21822],{},[72,21823,21824],{},"Puntos clave:",[38,21826,21827,21832,21835,21838],{},[41,21828,21829,21830,104],{},"Requiere una regla CSS global: ",[16,21831,20830],{},[41,21833,21834],{},"Previene el flash de interpolaciones sin procesar.",[41,21836,21837],{},"No sustituye optimización de rendimiento ni resuelve hydration mismatches.",[41,21839,21840],{},"Debe aplicarse de forma selectiva y consciente del contexto (SPA vs SSR).",[1606,21842,21843],{},"html pre.shiki code .sVt8B, html code.shiki .sVt8B{--shiki-default:#24292E;--shiki-dark:#E1E4E8}html pre.shiki code .sScJk, html code.shiki .sScJk{--shiki-default:#6F42C1;--shiki-dark:#B392F0}html pre.shiki code .sj4cs, html code.shiki .sj4cs{--shiki-default:#005CC5;--shiki-dark:#79B8FF}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 .s9eBZ, html code.shiki .s9eBZ{--shiki-default:#22863A;--shiki-dark:#85E89D}html pre.shiki code .sZZnC, html code.shiki .sZZnC{--shiki-default:#032F62;--shiki-dark:#9ECBFF}html pre.shiki code .szBVR, html code.shiki .szBVR{--shiki-default:#D73A49;--shiki-dark:#F97583}html pre.shiki code .s4XuR, html code.shiki .s4XuR{--shiki-default:#E36209;--shiki-dark:#FFAB70}",{"title":273,"searchDepth":308,"depth":308,"links":21845},[21846,21847,21848,21849,21850,21851,21859,21865],{"id":20624,"depth":308,"text":20625},{"id":60,"depth":308,"text":61},{"id":20734,"depth":308,"text":20735},{"id":128,"depth":308,"text":129},{"id":155,"depth":308,"text":156},{"id":189,"depth":308,"text":190,"children":21852},[21853,21855,21857,21858],{"id":20820,"depth":324,"text":21854},"1) Usar v-cloak sin CSS",{"id":20834,"depth":324,"text":21856},"2) Declarar la regla en un \u003Cstyle scoped>",{"id":20851,"depth":324,"text":20852},{"id":20861,"depth":324,"text":20862},{"id":1945,"depth":308,"text":1946,"children":21860},[21861,21862,21863,21864],{"id":20872,"depth":324,"text":20873},{"id":20912,"depth":324,"text":20913},{"id":21306,"depth":324,"text":21307},{"id":21316,"depth":324,"text":21317},{"id":1595,"depth":308,"text":1596},"https://res.cloudinary.com/denj4fg7f/image/upload/v1771976009/directives-vue-v-cloak-guide_vhkz2i.png","Portada temporal para el artículo sobre v-cloak en Vue","2026-02-25","Aprende a usar v-cloak en Vue 3 para evitar el parpadeo de plantillas sin compilar, con Composition API y Options API, casos reales, errores comunes y buenas prácticas.",{"script":21871},[21872],{"type":1632,"key":1633,"data-nuxt-schema-org":327,"nodes":21873},[21874],{"headline":21875,"author":21876,"datePublished":21877,"@type":1640},"Directiva v-cloak en Vue: evita parpadeos antes del montaje",{"name":1637,"@type":1638},"2026-02-25T12:30:00-05:00",{"updatedAt":21877,"coverCaption":17759,"author":1637,"keywords":21879},[1645,20608,21880,21881,271,971],"FOUC","hydration","/blog/directives-vue-v-cloak-guide.es",[21884],{"headline":21875,"author":21885,"datePublished":21877,"@type":1640},{"name":1637,"@type":1638},{"title":20599,"description":21869},"blog/directives-vue-v-cloak-guide.es",[21889,21890,21893,21894],{"tag":20588,"color":20589},{"tag":21891,"color":21892},"Templates","#00B894",{"tag":3164,"color":3165},{"tag":9074,"color":9075},"q8k5WK5ZcnemvDiMjFK2q-UhImDl_uR4ohH_nx_sNas",{"id":21897,"title":21898,"body":21899,"cover":24549,"coverAlt":24550,"date":24551,"description":24552,"draft":1627,"extension":1628,"head":24553,"locale":1641,"meta":24561,"navigation":327,"path":24564,"schemaOrg":24565,"seo":24568,"series":20582,"seriesDescription":20583,"seriesOrder":391,"seriesTitle":20584,"slug":1656,"stem":24569,"tags":24570,"__hash__":24576},"blog/blog/directives-vue-v-once-v-memo-v-pre-guide.es.md","Directivas en Vue: v-once / v-memo / v-pre",{"type":8,"value":21900,"toc":24519},[21901,21913,21926,21928,21931,21934,21951,21954,21956,21960,21963,21966,21970,21981,21990,21994,22004,22007,22009,22012,22032,22035,22050,22052,22055,22073,22076,22078,22095,22098,22115,22117,22124,22130,22139,22145,22148,22153,22160,22165,22172,22176,22179,22184,22186,22192,22330,22462,22474,22480,22833,23104,23120,23126,23224,23341,23345,23357,23963,24485,24487,24496,24513,24516],[11,21902,20605,21904,5245,21907,5245,21910],{"id":21903},"directivas-en-vue-v-once-v-memo-v-pre",[16,21905,21906],{},"v-once",[16,21908,21909],{},"v-memo",[16,21911,21912],{},"v-pre",[21,21914,21915,225,21917,1697,21919,21921,21922,21925],{},[16,21916,21906],{},[16,21918,21909],{},[16,21920,21912],{}," son directivas enfocadas en rendimiento y control de compilación/render. No son para “poner en todo”, pero en escenarios concretos reducen trabajo innecesario y evitan ",[3292,21923,21924],{},"re-renders"," costosos.",[30,21927,20625],{"id":20624},[21,21929,21930],{},"En apps grandes, muchos problemas de rendimiento no vienen de una sola operación pesada, sino de miles de renders pequeños que se repiten sin necesidad.",[21,21932,21933],{},"Estas directivas te permiten:",[38,21935,21936,21941,21946],{},[41,21937,21938,21939,1895],{},"Congelar fragmentos estáticos (",[16,21940,21906],{},[41,21942,21943,21944,1895],{},"Reutilizar subárboles cuando dependencias clave no cambian (",[16,21945,21909],{},[41,21947,21948,21949,1895],{},"Omitir compilación de expresiones para contenido literal (",[16,21950,21912],{},[21,21952,21953],{},"Usadas con criterio, mejoran la fluidez sin romper la legibilidad.",[30,21955,61],{"id":60},[192,21957,21958],{"id":21906},[16,21959,21906],{},[21,21961,21962],{},"Renderiza el nodo una sola vez. En actualizaciones posteriores, Vue reutiliza el resultado y no vuelve a evaluarlo.",[21,21964,21965],{},"Ideal para contenido realmente inmutable (versión de build, texto legal fijo, metadata de entorno, etc.).",[192,21967,21968],{"id":21909},[16,21969,21909],{},[21,21971,21972,21973,21976,21977,21980],{},"Memoiza (cachea) un subárbol del template con base en un ",[72,21974,21975],{},"arreglo de dependencias",". Si ninguna dependencia cambia, Vue omite el ",[3292,21978,21979],{},"patch"," de ese subárbol.",[21,21982,21983,21984,21986,21987,104],{},"Útil cuando una porción del template es costosa y depende de pocas señales estables. Nota importante: ",[16,21985,21909],{}," existe desde Vue ",[72,21988,21989],{},"3.2+",[192,21991,21992],{"id":21912},[16,21993,21912],{},[21,21995,21996,21997,22000,22001,22003],{},"Le dice a Vue que ",[72,21998,21999],{},"no compile"," ese bloque. Las interpolaciones ",[16,22002,20620],{}," se muestran como texto literal.",[21,22005,22006],{},"Es perfecto para ejemplos de código o snippets donde quieres imprimir sintaxis de Vue sin evaluarla.",[30,22008,129],{"id":128},[21,22010,22011],{},"Usa estas directivas cuando tengas una razón concreta y medible:",[38,22013,22014,22019,22027],{},[41,22015,22016,22018],{},[16,22017,21906],{},": bloques estáticos que no deben reaccionar a cambios.",[41,22020,22021,22023,22024,104],{},[16,22022,21909],{},": listas o tarjetas complejas con alto costo de render cuando conoces ",[72,22025,22026],{},"dependencias exactas",[41,22028,22029,22031],{},[16,22030,21912],{},": documentación, tutoriales o demos donde quieres mostrar moustaches literalmente.",[21,22033,22034],{},"Casos reales:",[38,22036,22037,22044,22047],{},[41,22038,22039,22040,22043],{},"Dashboard con cards densas que solo cambian por ",[16,22041,22042],{},"id"," y estado puntual.",[41,22045,22046],{},"Pantalla de onboarding con secciones 100% estáticas.",[41,22048,22049],{},"Vista de documentación dentro de tu app que muestra sintaxis de Vue “en crudo”.",[30,22051,156],{"id":155},[21,22053,22054],{},"Evítalas cuando solo intentas “optimizar por optimizar”:",[38,22056,22057,22063,22068],{},[41,22058,22059,22060,22062],{},"No uses ",[16,22061,21906],{}," en datos que luego deben actualizarse.",[41,22064,22059,22065,22067],{},[16,22066,21909],{}," sin entender bien sus dependencias; puede ocultar cambios esperados.",[41,22069,22059,22070,22072],{},[16,22071,21912],{}," en bloques que sí necesitan bindings o eventos.",[21,22074,22075],{},"Si no has detectado un problema real de render, primero mide con Vue Devtools antes de complejizar el template.",[30,22077,5390],{"id":5389},[38,22079,22080,22085,22090],{},[41,22081,22082,22084],{},[16,22083,21906],{},": congelado permanente después del primer render.",[41,22086,22087,22089],{},[16,22088,21909],{},": congelado condicional según dependencias.",[41,22091,22092,22094],{},[16,22093,21912],{},": sin compilación de plantilla; salida literal.",[21,22096,22097],{},"Regla rápida:",[38,22099,22100,22105,22110],{},[41,22101,22102,22103,104],{},"Quieres “no volver a actualizar nunca”: ",[16,22104,21906],{},[41,22106,22107,22108,104],{},"Quieres “actualizar solo si cambian X dependencias”: ",[16,22109,21909],{},[41,22111,22112,22113,104],{},"Quieres “mostrar template sin interpretar”: ",[16,22114,21912],{},[30,22116,190],{"id":189},[192,22118,22120,22121,22123],{"id":22119},"_1-aplicar-v-once-sobre-datos-que-sí-cambian","1) Aplicar ",[16,22122,21906],{}," sobre datos que sí cambian",[21,22125,22126,22127,22129],{},"Si la fuente cambia pero el nodo tiene ",[16,22128,21906],{},", la UI quedará desfasada.",[21,22131,22132,22135,22136,22138],{},[72,22133,22134],{},"Solución:"," limita ",[16,22137,21906],{}," a contenido estrictamente inmutable.",[192,22140,22142,22143],{"id":22141},"_2-definir-mal-dependencias-en-v-memo","2) Definir mal dependencias en ",[16,22144,21909],{},[21,22146,22147],{},"Si olvidas una dependencia relevante, Vue puede reutilizar un subárbol viejo.\nSi incluyes demasiadas dependencias, pierdes el beneficio.",[21,22149,22150,22152],{},[72,22151,22134],{}," declara solo señales que realmente afectan el HTML renderizado (y asegúrate de incluir todas).",[192,22154,22156,22157,22159],{"id":22155},"_3-esperar-que-v-pre-procese-directivas-o-interpolaciones","3) Esperar que ",[16,22158,21912],{}," procese directivas o interpolaciones",[21,22161,11996,22162,22164],{},[16,22163,21912],{},", Vue no interpreta nada dentro del bloque (ni moustaches, ni directivas anidadas).",[21,22166,22167,17019,22169,22171],{},[72,22168,22134],{},[16,22170,21912],{}," solo para salida literal/documentación.",[192,22173,22175],{"id":22174},"_4-usarlas-sin-validar-impacto","4) Usarlas sin validar impacto",[21,22177,22178],{},"Agregar estas directivas indiscriminadamente puede aumentar complejidad sin mejorar performance real.",[21,22180,22181,22183],{},[72,22182,22134],{}," perfila primero y optimiza donde el costo sea comprobable.",[30,22185,1946],{"id":1945},[192,22187,22189,22190],{"id":22188},"_1-bloque-estático-con-v-once","1) Bloque estático con ",[16,22191,21906],{},[267,22193,22196],{"className":269,"code":22194,"filename":271,"highlights":22195,"language":272,"meta":273,"style":273},"\u003Cscript setup lang=\"ts\">\nimport { ref } from \"vue\";\n\nconst counter = ref(0);\nconst buildVersion = \"2026.02.24\";\n\u003C/script>\n\n\u003Ctemplate>\n  \u003Cbutton @click=\"counter++\">Clicks: {{ counter }}\u003C/button>\n\n  \u003Cp v-once>Build: {{ buildVersion }}\u003C/p>\n\u003C/template>\n",[402],[16,22197,22198,22214,22226,22230,22247,22261,22269,22273,22281,22301,22305,22322],{"__ignoreMap":273},[277,22199,22200,22202,22204,22206,22208,22210,22212],{"class":279,"line":280},[277,22201,284],{"class":283},[277,22203,288],{"class":287},[277,22205,292],{"class":291},[277,22207,295],{"class":291},[277,22209,298],{"class":283},[277,22211,302],{"class":301},[277,22213,305],{"class":283},[277,22215,22216,22218,22220,22222,22224],{"class":279,"line":308},[277,22217,312],{"class":311},[277,22219,11006],{"class":283},[277,22221,318],{"class":311},[277,22223,18148],{"class":301},[277,22225,18151],{"class":283},[277,22227,22228],{"class":279,"line":324},[277,22229,328],{"emptyLinePlaceholder":327},[277,22231,22232,22234,22237,22239,22241,22243,22245],{"class":279,"line":331},[277,22233,405],{"class":311},[277,22235,22236],{"class":356}," counter",[277,22238,340],{"class":311},[277,22240,413],{"class":291},[277,22242,448],{"class":283},[277,22244,3542],{"class":356},[277,22246,18277],{"class":283},[277,22248,22249,22251,22254,22256,22259],{"class":279,"line":346},[277,22250,405],{"class":311},[277,22252,22253],{"class":356}," buildVersion",[277,22255,340],{"class":311},[277,22257,22258],{"class":301}," \"2026.02.24\"",[277,22260,18151],{"class":283},[277,22262,22263,22265,22267],{"class":279,"line":360},[277,22264,785],{"class":283},[277,22266,288],{"class":287},[277,22268,305],{"class":283},[277,22270,22271],{"class":279,"line":371},[277,22272,328],{"emptyLinePlaceholder":327},[277,22274,22275,22277,22279],{"class":279,"line":381},[277,22276,284],{"class":283},[277,22278,802],{"class":287},[277,22280,305],{"class":283},[277,22282,22283,22285,22287,22289,22291,22294,22297,22299],{"class":279,"line":391},[277,22284,810],{"class":283},[277,22286,4267],{"class":287},[277,22288,4278],{"class":291},[277,22290,298],{"class":283},[277,22292,22293],{"class":301},"\"counter++\"",[277,22295,22296],{"class":283},">Clicks: {{ counter }}\u003C/",[277,22298,4267],{"class":287},[277,22300,305],{"class":283},[277,22302,22303],{"class":279,"line":397},[277,22304,328],{"emptyLinePlaceholder":327},[277,22306,22308,22310,22312,22315,22318,22320],{"class":22307,"line":402},[279,9398],[277,22309,810],{"class":283},[277,22311,21],{"class":287},[277,22313,22314],{"class":291}," v-once",[277,22316,22317],{"class":283},">Build: {{ buildVersion }}\u003C/",[277,22319,21],{"class":287},[277,22321,305],{"class":283},[277,22323,22324,22326,22328],{"class":279,"line":436},[277,22325,785],{"class":283},[277,22327,802],{"class":287},[277,22329,305],{"class":283},[267,22331,22334],{"className":269,"code":22332,"filename":971,"highlights":22333,"language":272,"meta":273,"style":273},"\u003Cscript lang=\"ts\">\nexport default {\n  data() {\n    return {\n      counter: 0,\n      buildVersion: \"2026.02.24\",\n    };\n  },\n};\n\u003C/script>\n\n\u003Ctemplate>\n  \u003Cbutton @click=\"counter++\">Clicks: {{ counter }}\u003C/button>\n  \u003Cp v-once>Build: {{ buildVersion }}\u003C/p>\n\u003C/template>\n",[461],[16,22335,22336,22350,22358,22364,22370,22379,22389,22393,22397,22401,22409,22413,22421,22439,22454],{"__ignoreMap":273},[277,22337,22338,22340,22342,22344,22346,22348],{"class":279,"line":280},[277,22339,284],{"class":283},[277,22341,288],{"class":287},[277,22343,295],{"class":291},[277,22345,298],{"class":283},[277,22347,302],{"class":301},[277,22349,305],{"class":283},[277,22351,22352,22354,22356],{"class":279,"line":308},[277,22353,1057],{"class":311},[277,22355,1060],{"class":311},[277,22357,343],{"class":283},[277,22359,22360,22362],{"class":279,"line":324},[277,22361,1086],{"class":291},[277,22363,473],{"class":283},[277,22365,22366,22368],{"class":279,"line":331},[277,22367,1093],{"class":311},[277,22369,343],{"class":283},[277,22371,22372,22375,22377],{"class":279,"line":346},[277,22373,22374],{"class":283},"      counter: ",[277,22376,3542],{"class":356},[277,22378,1077],{"class":283},[277,22380,22381,22384,22387],{"class":279,"line":360},[277,22382,22383],{"class":283},"      buildVersion: ",[277,22385,22386],{"class":301},"\"2026.02.24\"",[277,22388,1077],{"class":283},[277,22390,22391],{"class":279,"line":371},[277,22392,18478],{"class":283},[277,22394,22395],{"class":279,"line":381},[277,22396,1131],{"class":283},[277,22398,22399],{"class":279,"line":391},[277,22400,18255],{"class":283},[277,22402,22403,22405,22407],{"class":279,"line":397},[277,22404,785],{"class":283},[277,22406,288],{"class":287},[277,22408,305],{"class":283},[277,22410,22411],{"class":279,"line":402},[277,22412,328],{"emptyLinePlaceholder":327},[277,22414,22415,22417,22419],{"class":279,"line":436},[277,22416,284],{"class":283},[277,22418,802],{"class":287},[277,22420,305],{"class":283},[277,22422,22423,22425,22427,22429,22431,22433,22435,22437],{"class":279,"line":456},[277,22424,810],{"class":283},[277,22426,4267],{"class":287},[277,22428,4278],{"class":291},[277,22430,298],{"class":283},[277,22432,22293],{"class":301},[277,22434,22296],{"class":283},[277,22436,4267],{"class":287},[277,22438,305],{"class":283},[277,22440,22442,22444,22446,22448,22450,22452],{"class":22441,"line":461},[279,9398],[277,22443,810],{"class":283},[277,22445,21],{"class":287},[277,22447,22314],{"class":291},[277,22449,22317],{"class":283},[277,22451,21],{"class":287},[277,22453,305],{"class":283},[277,22455,22456,22458,22460],{"class":279,"line":476},[277,22457,785],{"class":283},[277,22459,802],{"class":287},[277,22461,305],{"class":283},[3111,22463,22464],{},[21,22465,22466,22467,22470,22471,22473],{},"Nota: este ejemplo asume que ",[16,22468,22469],{},"buildVersion"," es inmutable. Si en tu app podría cambiar (p. ej., viene de una llamada async), ",[16,22472,21906],{}," no es lo correcto.",[192,22475,22477,22478],{"id":22476},"_2-segmento-pesado-con-v-memo","2) Segmento pesado con ",[16,22479,21909],{},[267,22481,22484],{"className":269,"code":22482,"filename":271,"highlights":22483,"language":272,"meta":273,"style":273},"\u003Cscript setup lang=\"ts\">\nimport { ref } from \"vue\";\n\ntype UserCard = { id: number; name: string; isOnline: boolean; score: number };\n\nconst selectedId = ref\u003Cnumber | null>(null);\nconst users = ref\u003CUserCard[]>([\n  { id: 1, name: \"Ana\", isOnline: true, score: 98 },\n  { id: 2, name: \"Luis\", isOnline: false, score: 77 },\n  { id: 3, name: \"Marta\", isOnline: true, score: 88 },\n]);\n\u003C/script>\n\n\u003Ctemplate>\n  \u003Carticle\n    v-for=\"user in users\"\n    :key=\"user.id\"\n    v-memo=\"[user.id, user.isOnline, selectedId === user.id]\"\n    class=\"card\"\n  >\n    \u003Ch3>{{ user.name }}\u003C/h3>\n    \u003Cp>Puntaje: {{ user.score }}\u003C/p>\n    \u003Cp>{{ user.isOnline ? \"En línea\" : \"Desconectado\" }}\u003C/p>\n    \u003Cbutton @click=\"selectedId = user.id\">Seleccionar\u003C/button>\n  \u003C/article>\n\u003C/template>\n",[520],[16,22485,22486,22502,22514,22518,22565,22569,22594,22612,22636,22658,22680,22685,22693,22697,22705,22712,22722,22732,22743,22753,22758,22771,22784,22797,22817,22825],{"__ignoreMap":273},[277,22487,22488,22490,22492,22494,22496,22498,22500],{"class":279,"line":280},[277,22489,284],{"class":283},[277,22491,288],{"class":287},[277,22493,292],{"class":291},[277,22495,295],{"class":291},[277,22497,298],{"class":283},[277,22499,302],{"class":301},[277,22501,305],{"class":283},[277,22503,22504,22506,22508,22510,22512],{"class":279,"line":308},[277,22505,312],{"class":311},[277,22507,11006],{"class":283},[277,22509,318],{"class":311},[277,22511,18148],{"class":301},[277,22513,18151],{"class":283},[277,22515,22516],{"class":279,"line":324},[277,22517,328],{"emptyLinePlaceholder":327},[277,22519,22520,22522,22525,22527,22529,22531,22533,22535,22538,22540,22542,22544,22546,22549,22551,22554,22556,22559,22561,22563],{"class":279,"line":331},[277,22521,334],{"class":311},[277,22523,22524],{"class":291}," UserCard",[277,22526,340],{"class":311},[277,22528,5995],{"class":283},[277,22530,22042],{"class":349},[277,22532,353],{"class":311},[277,22534,2473],{"class":356},[277,22536,22537],{"class":283},"; ",[277,22539,21371],{"class":349},[277,22541,353],{"class":311},[277,22543,21376],{"class":356},[277,22545,22537],{"class":283},[277,22547,22548],{"class":349},"isOnline",[277,22550,353],{"class":311},[277,22552,22553],{"class":356}," boolean",[277,22555,22537],{"class":283},[277,22557,22558],{"class":349},"score",[277,22560,353],{"class":311},[277,22562,2473],{"class":356},[277,22564,19697],{"class":283},[277,22566,22567],{"class":279,"line":346},[277,22568,328],{"emptyLinePlaceholder":327},[277,22570,22571,22573,22576,22578,22580,22582,22584,22586,22588,22590,22592],{"class":279,"line":360},[277,22572,405],{"class":311},[277,22574,22575],{"class":356}," selectedId",[277,22577,340],{"class":311},[277,22579,413],{"class":291},[277,22581,284],{"class":283},[277,22583,7971],{"class":356},[277,22585,421],{"class":311},[277,22587,424],{"class":356},[277,22589,427],{"class":283},[277,22591,430],{"class":356},[277,22593,18277],{"class":283},[277,22595,22596,22598,22600,22602,22604,22606,22609],{"class":279,"line":371},[277,22597,405],{"class":311},[277,22599,11021],{"class":356},[277,22601,340],{"class":311},[277,22603,413],{"class":291},[277,22605,284],{"class":283},[277,22607,22608],{"class":291},"UserCard",[277,22610,22611],{"class":283},"[]>([\n",[277,22613,22614,22616,22618,22621,22623,22626,22628,22631,22634],{"class":279,"line":381},[277,22615,2109],{"class":283},[277,22617,2072],{"class":356},[277,22619,22620],{"class":283},", name: ",[277,22622,17584],{"class":301},[277,22624,22625],{"class":283},", isOnline: ",[277,22627,2149],{"class":356},[277,22629,22630],{"class":283},", score: ",[277,22632,22633],{"class":356},"98",[277,22635,2132],{"class":283},[277,22637,22638,22640,22642,22644,22647,22649,22651,22653,22656],{"class":279,"line":391},[277,22639,2109],{"class":283},[277,22641,2139],{"class":356},[277,22643,22620],{"class":283},[277,22645,22646],{"class":301},"\"Luis\"",[277,22648,22625],{"class":283},[277,22650,2123],{"class":356},[277,22652,22630],{"class":283},[277,22654,22655],{"class":356},"77",[277,22657,2132],{"class":283},[277,22659,22660,22662,22664,22666,22669,22671,22673,22675,22678],{"class":279,"line":397},[277,22661,2109],{"class":283},[277,22663,2163],{"class":356},[277,22665,22620],{"class":283},[277,22667,22668],{"class":301},"\"Marta\"",[277,22670,22625],{"class":283},[277,22672,2149],{"class":356},[277,22674,22630],{"class":283},[277,22676,22677],{"class":356},"88",[277,22679,2132],{"class":283},[277,22681,22682],{"class":279,"line":402},[277,22683,22684],{"class":283},"]);\n",[277,22686,22687,22689,22691],{"class":279,"line":436},[277,22688,785],{"class":283},[277,22690,288],{"class":287},[277,22692,305],{"class":283},[277,22694,22695],{"class":279,"line":456},[277,22696,328],{"emptyLinePlaceholder":327},[277,22698,22699,22701,22703],{"class":279,"line":461},[277,22700,284],{"class":283},[277,22702,802],{"class":287},[277,22704,305],{"class":283},[277,22706,22707,22709],{"class":279,"line":476},[277,22708,810],{"class":283},[277,22710,22711],{"class":287},"article\n",[277,22713,22714,22717,22719],{"class":279,"line":500},[277,22715,22716],{"class":291},"    v-for",[277,22718,298],{"class":283},[277,22720,22721],{"class":301},"\"user in users\"\n",[277,22723,22724,22727,22729],{"class":279,"line":505},[277,22725,22726],{"class":291},"    :key",[277,22728,298],{"class":283},[277,22730,22731],{"class":301},"\"user.id\"\n",[277,22733,22735,22738,22740],{"class":22734,"line":520},[279,9398],[277,22736,22737],{"class":291},"    v-memo",[277,22739,298],{"class":283},[277,22741,22742],{"class":301},"\"[user.id, user.isOnline, selectedId === user.id]\"\n",[277,22744,22745,22748,22750],{"class":279,"line":539},[277,22746,22747],{"class":291},"    class",[277,22749,298],{"class":283},[277,22751,22752],{"class":301},"\"card\"\n",[277,22754,22755],{"class":279,"line":545},[277,22756,22757],{"class":283},"  >\n",[277,22759,22760,22762,22764,22767,22769],{"class":279,"line":550},[277,22761,829],{"class":283},[277,22763,192],{"class":287},[277,22765,22766],{"class":283},">{{ user.name }}\u003C/",[277,22768,192],{"class":287},[277,22770,305],{"class":283},[277,22772,22773,22775,22777,22780,22782],{"class":279,"line":578},[277,22774,829],{"class":283},[277,22776,21],{"class":287},[277,22778,22779],{"class":283},">Puntaje: {{ user.score }}\u003C/",[277,22781,21],{"class":287},[277,22783,305],{"class":283},[277,22785,22786,22788,22790,22793,22795],{"class":279,"line":583},[277,22787,829],{"class":283},[277,22789,21],{"class":287},[277,22791,22792],{"class":283},">{{ user.isOnline ? \"En línea\" : \"Desconectado\" }}\u003C/",[277,22794,21],{"class":287},[277,22796,305],{"class":283},[277,22798,22799,22801,22803,22805,22807,22810,22813,22815],{"class":279,"line":588},[277,22800,829],{"class":283},[277,22802,4267],{"class":287},[277,22804,4278],{"class":291},[277,22806,298],{"class":283},[277,22808,22809],{"class":301},"\"selectedId = user.id\"",[277,22811,22812],{"class":283},">Seleccionar\u003C/",[277,22814,4267],{"class":287},[277,22816,305],{"class":283},[277,22818,22819,22821,22823],{"class":279,"line":606},[277,22820,954],{"class":283},[277,22822,813],{"class":287},[277,22824,305],{"class":283},[277,22826,22827,22829,22831],{"class":279,"line":614},[277,22828,785],{"class":283},[277,22830,802],{"class":287},[277,22832,305],{"class":283},[267,22834,22837],{"className":269,"code":22835,"filename":971,"highlights":22836,"language":272,"meta":273,"style":273},"\u003Cscript lang=\"ts\">\nexport default {\n  data() {\n    return {\n      selectedId: null as number | null,\n      users: [\n        { id: 1, name: \"Ana\", isOnline: true, score: 98 },\n        { id: 2, name: \"Luis\", isOnline: false, score: 77 },\n        { id: 3, name: \"Marta\", isOnline: true, score: 88 },\n      ],\n    };\n  },\n};\n\u003C/script>\n\n\u003Ctemplate>\n  \u003Carticle\n    v-for=\"user in users\"\n    :key=\"user.id\"\n    v-memo=\"[user.id, user.isOnline, selectedId === user.id]\"\n    class=\"card\"\n  >\n    \u003Ch3>{{ user.name }}\u003C/h3>\n    \u003Cp>Puntaje: {{ user.score }}\u003C/p>\n    \u003Cp>{{ user.isOnline ? \"En línea\" : \"Desconectado\" }}\u003C/p>\n    \u003Cbutton @click=\"selectedId = user.id\">Seleccionar\u003C/button>\n  \u003C/article>\n\u003C/template>\n",[545],[16,22838,22839,22853,22861,22867,22873,22890,22895,22915,22935,22955,22959,22963,22967,22971,22979,22983,22991,22997,23005,23013,23022,23030,23034,23046,23058,23070,23088,23096],{"__ignoreMap":273},[277,22840,22841,22843,22845,22847,22849,22851],{"class":279,"line":280},[277,22842,284],{"class":283},[277,22844,288],{"class":287},[277,22846,295],{"class":291},[277,22848,298],{"class":283},[277,22850,302],{"class":301},[277,22852,305],{"class":283},[277,22854,22855,22857,22859],{"class":279,"line":308},[277,22856,1057],{"class":311},[277,22858,1060],{"class":311},[277,22860,343],{"class":283},[277,22862,22863,22865],{"class":279,"line":324},[277,22864,1086],{"class":291},[277,22866,473],{"class":283},[277,22868,22869,22871],{"class":279,"line":331},[277,22870,1093],{"class":311},[277,22872,343],{"class":283},[277,22874,22875,22878,22880,22882,22884,22886,22888],{"class":279,"line":346},[277,22876,22877],{"class":283},"      selectedId: ",[277,22879,430],{"class":356},[277,22881,1105],{"class":311},[277,22883,2473],{"class":356},[277,22885,421],{"class":311},[277,22887,424],{"class":356},[277,22889,1077],{"class":283},[277,22891,22892],{"class":279,"line":360},[277,22893,22894],{"class":283},"      users: [\n",[277,22896,22897,22899,22901,22903,22905,22907,22909,22911,22913],{"class":279,"line":371},[277,22898,2664],{"class":283},[277,22900,2072],{"class":356},[277,22902,22620],{"class":283},[277,22904,17584],{"class":301},[277,22906,22625],{"class":283},[277,22908,2149],{"class":356},[277,22910,22630],{"class":283},[277,22912,22633],{"class":356},[277,22914,2132],{"class":283},[277,22916,22917,22919,22921,22923,22925,22927,22929,22931,22933],{"class":279,"line":381},[277,22918,2664],{"class":283},[277,22920,2139],{"class":356},[277,22922,22620],{"class":283},[277,22924,22646],{"class":301},[277,22926,22625],{"class":283},[277,22928,2123],{"class":356},[277,22930,22630],{"class":283},[277,22932,22655],{"class":356},[277,22934,2132],{"class":283},[277,22936,22937,22939,22941,22943,22945,22947,22949,22951,22953],{"class":279,"line":391},[277,22938,2664],{"class":283},[277,22940,2163],{"class":356},[277,22942,22620],{"class":283},[277,22944,22668],{"class":301},[277,22946,22625],{"class":283},[277,22948,2149],{"class":356},[277,22950,22630],{"class":283},[277,22952,22677],{"class":356},[277,22954,2132],{"class":283},[277,22956,22957],{"class":279,"line":397},[277,22958,10174],{"class":283},[277,22960,22961],{"class":279,"line":402},[277,22962,18478],{"class":283},[277,22964,22965],{"class":279,"line":436},[277,22966,1131],{"class":283},[277,22968,22969],{"class":279,"line":456},[277,22970,18255],{"class":283},[277,22972,22973,22975,22977],{"class":279,"line":461},[277,22974,785],{"class":283},[277,22976,288],{"class":287},[277,22978,305],{"class":283},[277,22980,22981],{"class":279,"line":476},[277,22982,328],{"emptyLinePlaceholder":327},[277,22984,22985,22987,22989],{"class":279,"line":500},[277,22986,284],{"class":283},[277,22988,802],{"class":287},[277,22990,305],{"class":283},[277,22992,22993,22995],{"class":279,"line":505},[277,22994,810],{"class":283},[277,22996,22711],{"class":287},[277,22998,22999,23001,23003],{"class":279,"line":520},[277,23000,22716],{"class":291},[277,23002,298],{"class":283},[277,23004,22721],{"class":301},[277,23006,23007,23009,23011],{"class":279,"line":539},[277,23008,22726],{"class":291},[277,23010,298],{"class":283},[277,23012,22731],{"class":301},[277,23014,23016,23018,23020],{"class":23015,"line":545},[279,9398],[277,23017,22737],{"class":291},[277,23019,298],{"class":283},[277,23021,22742],{"class":301},[277,23023,23024,23026,23028],{"class":279,"line":550},[277,23025,22747],{"class":291},[277,23027,298],{"class":283},[277,23029,22752],{"class":301},[277,23031,23032],{"class":279,"line":578},[277,23033,22757],{"class":283},[277,23035,23036,23038,23040,23042,23044],{"class":279,"line":583},[277,23037,829],{"class":283},[277,23039,192],{"class":287},[277,23041,22766],{"class":283},[277,23043,192],{"class":287},[277,23045,305],{"class":283},[277,23047,23048,23050,23052,23054,23056],{"class":279,"line":588},[277,23049,829],{"class":283},[277,23051,21],{"class":287},[277,23053,22779],{"class":283},[277,23055,21],{"class":287},[277,23057,305],{"class":283},[277,23059,23060,23062,23064,23066,23068],{"class":279,"line":606},[277,23061,829],{"class":283},[277,23063,21],{"class":287},[277,23065,22792],{"class":283},[277,23067,21],{"class":287},[277,23069,305],{"class":283},[277,23071,23072,23074,23076,23078,23080,23082,23084,23086],{"class":279,"line":614},[277,23073,829],{"class":283},[277,23075,4267],{"class":287},[277,23077,4278],{"class":291},[277,23079,298],{"class":283},[277,23081,22809],{"class":301},[277,23083,22812],{"class":283},[277,23085,4267],{"class":287},[277,23087,305],{"class":283},[277,23089,23090,23092,23094],{"class":279,"line":625},[277,23091,954],{"class":283},[277,23093,813],{"class":287},[277,23095,305],{"class":283},[277,23097,23098,23100,23102],{"class":279,"line":637},[277,23099,785],{"class":283},[277,23101,802],{"class":287},[277,23103,305],{"class":283},[3111,23105,23106],{},[21,23107,23108,23109,23111,23112,23115,23116,23119],{},"Importante: el arreglo de ",[16,23110,21909],{}," debe incluir ",[72,23113,23114],{},"todo"," lo que afecte el HTML. Si ",[16,23117,23118],{},"user.score"," puede cambiar, también debería estar en dependencias (si no, el DOM podría quedarse con un puntaje viejo).",[192,23121,23123,23124],{"id":23122},"_3-bloque-literal-con-v-pre","3) Bloque literal con ",[16,23125,21912],{},[267,23127,23130],{"className":269,"code":23128,"filename":271,"highlights":23129,"language":272,"meta":273,"style":273},"\u003Cscript setup lang=\"ts\">\nconst message = \"No debe renderizarse dentro del bloque v-pre\";\n\u003C/script>\n\n\u003Ctemplate>\n  \u003Cp>{{ message }}\u003C/p>\n\n  \u003Cpre v-pre>{{ message }} + {{ 2 + 2 }}\u003C/pre>\n\u003C/template>\n",[381],[16,23131,23132,23148,23162,23170,23174,23182,23195,23199,23216],{"__ignoreMap":273},[277,23133,23134,23136,23138,23140,23142,23144,23146],{"class":279,"line":280},[277,23135,284],{"class":283},[277,23137,288],{"class":287},[277,23139,292],{"class":291},[277,23141,295],{"class":291},[277,23143,298],{"class":283},[277,23145,302],{"class":301},[277,23147,305],{"class":283},[277,23149,23150,23152,23155,23157,23160],{"class":279,"line":308},[277,23151,405],{"class":311},[277,23153,23154],{"class":356}," message",[277,23156,340],{"class":311},[277,23158,23159],{"class":301}," \"No debe renderizarse dentro del bloque v-pre\"",[277,23161,18151],{"class":283},[277,23163,23164,23166,23168],{"class":279,"line":324},[277,23165,785],{"class":283},[277,23167,288],{"class":287},[277,23169,305],{"class":283},[277,23171,23172],{"class":279,"line":331},[277,23173,328],{"emptyLinePlaceholder":327},[277,23175,23176,23178,23180],{"class":279,"line":346},[277,23177,284],{"class":283},[277,23179,802],{"class":287},[277,23181,305],{"class":283},[277,23183,23184,23186,23188,23191,23193],{"class":279,"line":360},[277,23185,810],{"class":283},[277,23187,21],{"class":287},[277,23189,23190],{"class":283},">{{ message }}\u003C/",[277,23192,21],{"class":287},[277,23194,305],{"class":283},[277,23196,23197],{"class":279,"line":371},[277,23198,328],{"emptyLinePlaceholder":327},[277,23200,23202,23204,23206,23209,23212,23214],{"class":23201,"line":381},[279,9398],[277,23203,810],{"class":283},[277,23205,267],{"class":287},[277,23207,23208],{"class":291}," v-pre",[277,23210,23211],{"class":283},">{{ message }} + {{ 2 + 2 }}\u003C/",[277,23213,267],{"class":287},[277,23215,305],{"class":283},[277,23217,23218,23220,23222],{"class":279,"line":391},[277,23219,785],{"class":283},[277,23221,802],{"class":287},[277,23223,305],{"class":283},[267,23225,23228],{"className":269,"code":23226,"filename":971,"highlights":23227,"language":272,"meta":273,"style":273},"\u003Cscript lang=\"ts\">\nexport default {\n  data() {\n    return {\n      message: \"No debe renderizarse dentro del bloque v-pre\",\n    };\n  },\n};\n\u003C/script>\n\n\u003Ctemplate>\n  \u003Cp>{{ message }}\u003C/p>\n  \u003Cpre v-pre>{{ message }} + {{ 2 + 2 }}\u003C/pre>\n\u003C/template>\n",[456],[16,23229,23230,23244,23252,23258,23264,23274,23278,23282,23286,23294,23298,23306,23318,23333],{"__ignoreMap":273},[277,23231,23232,23234,23236,23238,23240,23242],{"class":279,"line":280},[277,23233,284],{"class":283},[277,23235,288],{"class":287},[277,23237,295],{"class":291},[277,23239,298],{"class":283},[277,23241,302],{"class":301},[277,23243,305],{"class":283},[277,23245,23246,23248,23250],{"class":279,"line":308},[277,23247,1057],{"class":311},[277,23249,1060],{"class":311},[277,23251,343],{"class":283},[277,23253,23254,23256],{"class":279,"line":324},[277,23255,1086],{"class":291},[277,23257,473],{"class":283},[277,23259,23260,23262],{"class":279,"line":331},[277,23261,1093],{"class":311},[277,23263,343],{"class":283},[277,23265,23266,23269,23272],{"class":279,"line":346},[277,23267,23268],{"class":283},"      message: ",[277,23270,23271],{"class":301},"\"No debe renderizarse dentro del bloque v-pre\"",[277,23273,1077],{"class":283},[277,23275,23276],{"class":279,"line":360},[277,23277,18478],{"class":283},[277,23279,23280],{"class":279,"line":371},[277,23281,1131],{"class":283},[277,23283,23284],{"class":279,"line":381},[277,23285,18255],{"class":283},[277,23287,23288,23290,23292],{"class":279,"line":391},[277,23289,785],{"class":283},[277,23291,288],{"class":287},[277,23293,305],{"class":283},[277,23295,23296],{"class":279,"line":397},[277,23297,328],{"emptyLinePlaceholder":327},[277,23299,23300,23302,23304],{"class":279,"line":402},[277,23301,284],{"class":283},[277,23303,802],{"class":287},[277,23305,305],{"class":283},[277,23307,23308,23310,23312,23314,23316],{"class":279,"line":436},[277,23309,810],{"class":283},[277,23311,21],{"class":287},[277,23313,23190],{"class":283},[277,23315,21],{"class":287},[277,23317,305],{"class":283},[277,23319,23321,23323,23325,23327,23329,23331],{"class":23320,"line":456},[279,9398],[277,23322,810],{"class":283},[277,23324,267],{"class":287},[277,23326,23208],{"class":291},[277,23328,23211],{"class":283},[277,23330,267],{"class":287},[277,23332,305],{"class":283},[277,23334,23335,23337,23339],{"class":279,"line":461},[277,23336,785],{"class":283},[277,23338,802],{"class":287},[277,23340,305],{"class":283},[192,23342,23344],{"id":23343},"_4-ejemplo-completo","4) Ejemplo completo",[21,23346,23347,23348,23350,23351,23353,23354,23356],{},"Componente de lista con cabecera estática (",[16,23349,21906],{},"), tarjetas memoizadas (",[16,23352,21909],{},") y snippet literal (",[16,23355,21912],{},"):",[267,23358,23360],{"className":269,"code":23359,"filename":271,"language":272,"meta":273,"style":273},"\u003Cscript setup lang=\"ts\">\nimport { computed, ref } from \"vue\";\n\ntype Task = { id: number; title: string; done: boolean; owner: string };\n\nconst selectedOwner = ref\u003C\"all\" | string>(\"all\");\nconst tasks = ref\u003CTask[]>([\n  { id: 1, title: \"Configurar CI\", done: true, owner: \"Ana\" },\n  { id: 2, title: \"Refactor store\", done: false, owner: \"Luis\" },\n  { id: 3, title: \"Actualizar docs\", done: false, owner: \"Ana\" },\n]);\n\nconst owners = computed(() => [\"all\", ...new Set(tasks.value.map((t) => t.owner))]);\nconst visibleTasks = computed(() =>\n  selectedOwner.value === \"all\"\n    ? tasks.value\n    : tasks.value.filter((t) => t.owner === selectedOwner.value)\n);\n\u003C/script>\n\n\u003Ctemplate>\n  \u003Cheader v-once>\n    \u003Ch2>Panel de tareas del sprint\u003C/h2>\n    \u003Cp>Contenido institucional estático\u003C/p>\n  \u003C/header>\n\n  \u003Clabel>\n    Filtrar por owner\n    \u003Cselect v-model=\"selectedOwner\">\n      \u003Coption v-for=\"owner in owners\" :key=\"owner\" :value=\"owner\">{{ owner }}\u003C/option>\n    \u003C/select>\n  \u003C/label>\n\n  \u003Csection\n    v-for=\"task in visibleTasks\"\n    :key=\"task.id\"\n    v-memo=\"[task.id, task.title, task.owner, task.done, selectedOwner]\"\n    class=\"task-card\"\n  >\n    \u003Ch3>{{ task.title }}\u003C/h3>\n    \u003Cp>Owner: {{ task.owner }}\u003C/p>\n    \u003Cp>Estado: {{ task.done ? \"Completada\" : \"Pendiente\" }}\u003C/p>\n  \u003C/section>\n\n  \u003Caside>\n    \u003Ch4>Snippet para docs\u003C/h4>\n    \u003Ccode v-pre>{{ title }} - {{ owner }}\u003C/code>\n  \u003C/aside>\n\u003C/template>\n",[16,23361,23362,23378,23391,23395,23440,23444,23470,23486,23507,23528,23549,23553,23557,23601,23615,23625,23632,23657,23661,23669,23673,23681,23691,23704,23717,23725,23729,23737,23742,23759,23794,23802,23810,23814,23821,23829,23837,23846,23855,23859,23872,23885,23898,23906,23910,23918,23932,23947,23955],{"__ignoreMap":273},[277,23363,23364,23366,23368,23370,23372,23374,23376],{"class":279,"line":280},[277,23365,284],{"class":283},[277,23367,288],{"class":287},[277,23369,292],{"class":291},[277,23371,295],{"class":291},[277,23373,298],{"class":283},[277,23375,302],{"class":301},[277,23377,305],{"class":283},[277,23379,23380,23382,23385,23387,23389],{"class":279,"line":308},[277,23381,312],{"class":311},[277,23383,23384],{"class":283}," { computed, ref } ",[277,23386,318],{"class":311},[277,23388,18148],{"class":301},[277,23390,18151],{"class":283},[277,23392,23393],{"class":279,"line":324},[277,23394,328],{"emptyLinePlaceholder":327},[277,23396,23397,23399,23401,23403,23405,23407,23409,23411,23413,23416,23418,23420,23422,23425,23427,23429,23431,23434,23436,23438],{"class":279,"line":331},[277,23398,334],{"class":311},[277,23400,5630],{"class":291},[277,23402,340],{"class":311},[277,23404,5995],{"class":283},[277,23406,22042],{"class":349},[277,23408,353],{"class":311},[277,23410,2473],{"class":356},[277,23412,22537],{"class":283},[277,23414,23415],{"class":349},"title",[277,23417,353],{"class":311},[277,23419,21376],{"class":356},[277,23421,22537],{"class":283},[277,23423,23424],{"class":349},"done",[277,23426,353],{"class":311},[277,23428,22553],{"class":356},[277,23430,22537],{"class":283},[277,23432,23433],{"class":349},"owner",[277,23435,353],{"class":311},[277,23437,21376],{"class":356},[277,23439,19697],{"class":283},[277,23441,23442],{"class":279,"line":346},[277,23443,328],{"emptyLinePlaceholder":327},[277,23445,23446,23448,23451,23453,23455,23457,23460,23462,23464,23466,23468],{"class":279,"line":360},[277,23447,405],{"class":311},[277,23449,23450],{"class":356}," selectedOwner",[277,23452,340],{"class":311},[277,23454,413],{"class":291},[277,23456,284],{"class":283},[277,23458,23459],{"class":301},"\"all\"",[277,23461,421],{"class":311},[277,23463,21376],{"class":356},[277,23465,427],{"class":283},[277,23467,23459],{"class":301},[277,23469,18277],{"class":283},[277,23471,23472,23474,23476,23478,23480,23482,23484],{"class":279,"line":371},[277,23473,405],{"class":311},[277,23475,2097],{"class":356},[277,23477,340],{"class":311},[277,23479,413],{"class":291},[277,23481,284],{"class":283},[277,23483,5684],{"class":291},[277,23485,22611],{"class":283},[277,23487,23488,23490,23492,23494,23497,23499,23501,23503,23505],{"class":279,"line":381},[277,23489,2109],{"class":283},[277,23491,2072],{"class":356},[277,23493,2114],{"class":283},[277,23495,23496],{"class":301},"\"Configurar CI\"",[277,23498,2120],{"class":283},[277,23500,2149],{"class":356},[277,23502,2126],{"class":283},[277,23504,17584],{"class":301},[277,23506,2132],{"class":283},[277,23508,23509,23511,23513,23515,23518,23520,23522,23524,23526],{"class":279,"line":391},[277,23510,2109],{"class":283},[277,23512,2139],{"class":356},[277,23514,2114],{"class":283},[277,23516,23517],{"class":301},"\"Refactor store\"",[277,23519,2120],{"class":283},[277,23521,2123],{"class":356},[277,23523,2126],{"class":283},[277,23525,22646],{"class":301},[277,23527,2132],{"class":283},[277,23529,23530,23532,23534,23536,23539,23541,23543,23545,23547],{"class":279,"line":397},[277,23531,2109],{"class":283},[277,23533,2163],{"class":356},[277,23535,2114],{"class":283},[277,23537,23538],{"class":301},"\"Actualizar docs\"",[277,23540,2120],{"class":283},[277,23542,2123],{"class":356},[277,23544,2126],{"class":283},[277,23546,17584],{"class":301},[277,23548,2132],{"class":283},[277,23550,23551],{"class":279,"line":402},[277,23552,22684],{"class":283},[277,23554,23555],{"class":279,"line":436},[277,23556,328],{"emptyLinePlaceholder":327},[277,23558,23559,23561,23564,23566,23568,23570,23572,23575,23577,23579,23582,23584,23587,23589,23591,23594,23596,23598],{"class":279,"line":456},[277,23560,405],{"class":311},[277,23562,23563],{"class":356}," owners",[277,23565,340],{"class":311},[277,23567,2200],{"class":291},[277,23569,2203],{"class":283},[277,23571,601],{"class":311},[277,23573,23574],{"class":283}," [",[277,23576,23459],{"class":301},[277,23578,225],{"class":283},[277,23580,23581],{"class":311},"...new",[277,23583,16420],{"class":291},[277,23585,23586],{"class":283},"(tasks.value.",[277,23588,3844],{"class":291},[277,23590,2334],{"class":283},[277,23592,23593],{"class":349},"t",[277,23595,2340],{"class":283},[277,23597,601],{"class":311},[277,23599,23600],{"class":283}," t.owner))]);\n",[277,23602,23603,23605,23607,23609,23611,23613],{"class":279,"line":461},[277,23604,405],{"class":311},[277,23606,2195],{"class":356},[277,23608,340],{"class":311},[277,23610,2200],{"class":291},[277,23612,2203],{"class":283},[277,23614,3716],{"class":311},[277,23616,23617,23620,23622],{"class":279,"line":476},[277,23618,23619],{"class":283},"  selectedOwner.value ",[277,23621,2503],{"class":311},[277,23623,23624],{"class":301}," \"all\"\n",[277,23626,23627,23630],{"class":279,"line":500},[277,23628,23629],{"class":311},"    ?",[277,23631,5919],{"class":283},[277,23633,23634,23637,23639,23641,23643,23645,23647,23649,23652,23654],{"class":279,"line":505},[277,23635,23636],{"class":311},"    :",[277,23638,2215],{"class":283},[277,23640,2218],{"class":291},[277,23642,2334],{"class":283},[277,23644,23593],{"class":349},[277,23646,2340],{"class":283},[277,23648,601],{"class":311},[277,23650,23651],{"class":283}," t.owner ",[277,23653,2503],{"class":311},[277,23655,23656],{"class":283}," selectedOwner.value)\n",[277,23658,23659],{"class":279,"line":520},[277,23660,18277],{"class":283},[277,23662,23663,23665,23667],{"class":279,"line":539},[277,23664,785],{"class":283},[277,23666,288],{"class":287},[277,23668,305],{"class":283},[277,23670,23671],{"class":279,"line":545},[277,23672,328],{"emptyLinePlaceholder":327},[277,23674,23675,23677,23679],{"class":279,"line":550},[277,23676,284],{"class":283},[277,23678,802],{"class":287},[277,23680,305],{"class":283},[277,23682,23683,23685,23687,23689],{"class":279,"line":578},[277,23684,810],{"class":283},[277,23686,4138],{"class":287},[277,23688,22314],{"class":291},[277,23690,305],{"class":283},[277,23692,23693,23695,23697,23700,23702],{"class":279,"line":583},[277,23694,829],{"class":283},[277,23696,30],{"class":287},[277,23698,23699],{"class":283},">Panel de tareas del sprint\u003C/",[277,23701,30],{"class":287},[277,23703,305],{"class":283},[277,23705,23706,23708,23710,23713,23715],{"class":279,"line":588},[277,23707,829],{"class":283},[277,23709,21],{"class":287},[277,23711,23712],{"class":283},">Contenido institucional estático\u003C/",[277,23714,21],{"class":287},[277,23716,305],{"class":283},[277,23718,23719,23721,23723],{"class":279,"line":606},[277,23720,954],{"class":283},[277,23722,4138],{"class":287},[277,23724,305],{"class":283},[277,23726,23727],{"class":279,"line":614},[277,23728,328],{"emptyLinePlaceholder":327},[277,23730,23731,23733,23735],{"class":279,"line":625},[277,23732,810],{"class":283},[277,23734,3875],{"class":287},[277,23736,305],{"class":283},[277,23738,23739],{"class":279,"line":637},[277,23740,23741],{"class":283},"    Filtrar por owner\n",[277,23743,23744,23746,23749,23752,23754,23757],{"class":279,"line":646},[277,23745,829],{"class":283},[277,23747,23748],{"class":287},"select",[277,23750,23751],{"class":291}," v-model",[277,23753,298],{"class":283},[277,23755,23756],{"class":301},"\"selectedOwner\"",[277,23758,305],{"class":283},[277,23760,23761,23763,23766,23768,23770,23773,23775,23777,23780,23783,23785,23787,23790,23792],{"class":279,"line":668},[277,23762,879],{"class":283},[277,23764,23765],{"class":287},"option",[277,23767,12785],{"class":291},[277,23769,298],{"class":283},[277,23771,23772],{"class":301},"\"owner in owners\"",[277,23774,4317],{"class":291},[277,23776,298],{"class":283},[277,23778,23779],{"class":301},"\"owner\"",[277,23781,23782],{"class":291}," :value",[277,23784,298],{"class":283},[277,23786,23779],{"class":301},[277,23788,23789],{"class":283},">{{ owner }}\u003C/",[277,23791,23765],{"class":287},[277,23793,305],{"class":283},[277,23795,23796,23798,23800],{"class":279,"line":673},[277,23797,922],{"class":283},[277,23799,23748],{"class":287},[277,23801,305],{"class":283},[277,23803,23804,23806,23808],{"class":279,"line":679},[277,23805,954],{"class":283},[277,23807,3875],{"class":287},[277,23809,305],{"class":283},[277,23811,23812],{"class":279,"line":684},[277,23813,328],{"emptyLinePlaceholder":327},[277,23815,23816,23818],{"class":279,"line":700},[277,23817,810],{"class":283},[277,23819,23820],{"class":287},"section\n",[277,23822,23823,23825,23827],{"class":279,"line":717},[277,23824,22716],{"class":291},[277,23826,298],{"class":283},[277,23828,6516],{"class":301},[277,23830,23831,23833,23835],{"class":279,"line":722},[277,23832,22726],{"class":291},[277,23834,298],{"class":283},[277,23836,6526],{"class":301},[277,23838,23839,23841,23843],{"class":279,"line":729},[277,23840,22737],{"class":291},[277,23842,298],{"class":283},[277,23844,23845],{"class":301},"\"[task.id, task.title, task.owner, task.done, selectedOwner]\"\n",[277,23847,23848,23850,23852],{"class":279,"line":738},[277,23849,22747],{"class":291},[277,23851,298],{"class":283},[277,23853,23854],{"class":301},"\"task-card\"\n",[277,23856,23857],{"class":279,"line":747},[277,23858,22757],{"class":283},[277,23860,23861,23863,23865,23868,23870],{"class":279,"line":754},[277,23862,829],{"class":283},[277,23864,192],{"class":287},[277,23866,23867],{"class":283},">{{ task.title }}\u003C/",[277,23869,192],{"class":287},[277,23871,305],{"class":283},[277,23873,23874,23876,23878,23881,23883],{"class":279,"line":772},[277,23875,829],{"class":283},[277,23877,21],{"class":287},[277,23879,23880],{"class":283},">Owner: {{ task.owner }}\u003C/",[277,23882,21],{"class":287},[277,23884,305],{"class":283},[277,23886,23887,23889,23891,23894,23896],{"class":279,"line":777},[277,23888,829],{"class":283},[277,23890,21],{"class":287},[277,23892,23893],{"class":283},">Estado: {{ task.done ? \"Completada\" : \"Pendiente\" }}\u003C/",[277,23895,21],{"class":287},[277,23897,305],{"class":283},[277,23899,23900,23902,23904],{"class":279,"line":782},[277,23901,954],{"class":283},[277,23903,4121],{"class":287},[277,23905,305],{"class":283},[277,23907,23908],{"class":279,"line":792},[277,23909,328],{"emptyLinePlaceholder":327},[277,23911,23912,23914,23916],{"class":279,"line":797},[277,23913,810],{"class":283},[277,23915,21481],{"class":287},[277,23917,305],{"class":283},[277,23919,23920,23922,23925,23928,23930],{"class":279,"line":807},[277,23921,829],{"class":283},[277,23923,23924],{"class":287},"h4",[277,23926,23927],{"class":283},">Snippet para docs\u003C/",[277,23929,23924],{"class":287},[277,23931,305],{"class":283},[277,23933,23934,23936,23938,23940,23943,23945],{"class":279,"line":826},[277,23935,829],{"class":283},[277,23937,16],{"class":287},[277,23939,23208],{"class":291},[277,23941,23942],{"class":283},">{{ title }} - {{ owner }}\u003C/",[277,23944,16],{"class":287},[277,23946,305],{"class":283},[277,23948,23949,23951,23953],{"class":279,"line":849},[277,23950,954],{"class":283},[277,23952,21481],{"class":287},[277,23954,305],{"class":283},[277,23956,23957,23959,23961],{"class":279,"line":854},[277,23958,785],{"class":283},[277,23960,802],{"class":287},[277,23962,305],{"class":283},[267,23964,23966],{"className":269,"code":23965,"filename":971,"language":272,"meta":273,"style":273},"\u003Cscript lang=\"ts\">\nexport default {\n  data() {\n    return {\n      selectedOwner: \"all\",\n      tasks: [\n        { id: 1, title: \"Configurar CI\", done: true, owner: \"Ana\" },\n        { id: 2, title: \"Refactor store\", done: false, owner: \"Luis\" },\n        { id: 3, title: \"Actualizar docs\", done: false, owner: \"Ana\" },\n      ],\n    };\n  },\n  computed: {\n    owners() {\n      return [\"all\", ...new Set(this.tasks.map((t) => t.owner))];\n    },\n    visibleTasks() {\n      return this.selectedOwner === \"all\"\n        ? this.tasks\n        : this.tasks.filter((t) => t.owner === this.selectedOwner);\n    },\n  },\n};\n\u003C/script>\n\n\u003Ctemplate>\n  \u003Cheader v-once>\n    \u003Ch2>Panel de tareas del sprint\u003C/h2>\n    \u003Cp>Contenido institucional estático\u003C/p>\n  \u003C/header>\n\n  \u003Clabel>\n    Filtrar por owner\n    \u003Cselect v-model=\"selectedOwner\">\n      \u003Coption v-for=\"owner in owners\" :key=\"owner\" :value=\"owner\">{{ owner }}\u003C/option>\n    \u003C/select>\n  \u003C/label>\n\n  \u003Csection\n    v-for=\"task in visibleTasks\"\n    :key=\"task.id\"\n    v-memo=\"[task.id, task.title, task.owner, task.done, selectedOwner]\"\n    class=\"task-card\"\n  >\n    \u003Ch3>{{ task.title }}\u003C/h3>\n    \u003Cp>Owner: {{ task.owner }}\u003C/p>\n    \u003Cp>Estado: {{ task.done ? \"Completada\" : \"Pendiente\" }}\u003C/p>\n  \u003C/section>\n\n  \u003Caside>\n    \u003Ch4>Snippet para docs\u003C/h4>\n    \u003Ccode v-pre>{{ title }} - {{ owner }}\u003C/code>\n  \u003C/aside>\n\u003C/template>\n",[16,23967,23968,23982,23990,23996,24002,24011,24015,24035,24055,24075,24079,24083,24087,24091,24098,24131,24135,24141,24154,24163,24191,24195,24199,24203,24211,24215,24223,24233,24245,24257,24265,24269,24277,24281,24295,24325,24333,24341,24345,24351,24359,24367,24375,24383,24387,24399,24411,24423,24431,24435,24443,24455,24469,24477],{"__ignoreMap":273},[277,23969,23970,23972,23974,23976,23978,23980],{"class":279,"line":280},[277,23971,284],{"class":283},[277,23973,288],{"class":287},[277,23975,295],{"class":291},[277,23977,298],{"class":283},[277,23979,302],{"class":301},[277,23981,305],{"class":283},[277,23983,23984,23986,23988],{"class":279,"line":308},[277,23985,1057],{"class":311},[277,23987,1060],{"class":311},[277,23989,343],{"class":283},[277,23991,23992,23994],{"class":279,"line":324},[277,23993,1086],{"class":291},[277,23995,473],{"class":283},[277,23997,23998,24000],{"class":279,"line":331},[277,23999,1093],{"class":311},[277,24001,343],{"class":283},[277,24003,24004,24007,24009],{"class":279,"line":346},[277,24005,24006],{"class":283},"      selectedOwner: ",[277,24008,23459],{"class":301},[277,24010,1077],{"class":283},[277,24012,24013],{"class":279,"line":360},[277,24014,2659],{"class":283},[277,24016,24017,24019,24021,24023,24025,24027,24029,24031,24033],{"class":279,"line":371},[277,24018,2664],{"class":283},[277,24020,2072],{"class":356},[277,24022,2114],{"class":283},[277,24024,23496],{"class":301},[277,24026,2120],{"class":283},[277,24028,2149],{"class":356},[277,24030,2126],{"class":283},[277,24032,17584],{"class":301},[277,24034,2132],{"class":283},[277,24036,24037,24039,24041,24043,24045,24047,24049,24051,24053],{"class":279,"line":381},[277,24038,2664],{"class":283},[277,24040,2139],{"class":356},[277,24042,2114],{"class":283},[277,24044,23517],{"class":301},[277,24046,2120],{"class":283},[277,24048,2123],{"class":356},[277,24050,2126],{"class":283},[277,24052,22646],{"class":301},[277,24054,2132],{"class":283},[277,24056,24057,24059,24061,24063,24065,24067,24069,24071,24073],{"class":279,"line":391},[277,24058,2664],{"class":283},[277,24060,2163],{"class":356},[277,24062,2114],{"class":283},[277,24064,23538],{"class":301},[277,24066,2120],{"class":283},[277,24068,2123],{"class":356},[277,24070,2126],{"class":283},[277,24072,17584],{"class":301},[277,24074,2132],{"class":283},[277,24076,24077],{"class":279,"line":397},[277,24078,10174],{"class":283},[277,24080,24081],{"class":279,"line":402},[277,24082,18478],{"class":283},[277,24084,24085],{"class":279,"line":436},[277,24086,1131],{"class":283},[277,24088,24089],{"class":279,"line":456},[277,24090,2742],{"class":283},[277,24092,24093,24096],{"class":279,"line":461},[277,24094,24095],{"class":291},"    owners",[277,24097,473],{"class":283},[277,24099,24100,24102,24104,24106,24108,24110,24112,24114,24116,24118,24120,24122,24124,24126,24128],{"class":279,"line":476},[277,24101,2754],{"class":311},[277,24103,23574],{"class":283},[277,24105,23459],{"class":301},[277,24107,225],{"class":283},[277,24109,23581],{"class":311},[277,24111,16420],{"class":291},[277,24113,448],{"class":283},[277,24115,1341],{"class":356},[277,24117,2759],{"class":283},[277,24119,3844],{"class":291},[277,24121,2334],{"class":283},[277,24123,23593],{"class":349},[277,24125,2340],{"class":283},[277,24127,601],{"class":311},[277,24129,24130],{"class":283}," t.owner))];\n",[277,24132,24133],{"class":279,"line":500},[277,24134,7016],{"class":283},[277,24136,24137,24139],{"class":279,"line":505},[277,24138,2747],{"class":291},[277,24140,473],{"class":283},[277,24142,24143,24145,24147,24150,24152],{"class":279,"line":520},[277,24144,2754],{"class":311},[277,24146,1268],{"class":356},[277,24148,24149],{"class":283},".selectedOwner ",[277,24151,2503],{"class":311},[277,24153,23624],{"class":301},[277,24155,24156,24159,24161],{"class":279,"line":539},[277,24157,24158],{"class":311},"        ?",[277,24160,1268],{"class":356},[277,24162,6767],{"class":283},[277,24164,24165,24168,24170,24172,24174,24176,24178,24180,24182,24184,24186,24188],{"class":279,"line":545},[277,24166,24167],{"class":311},"        :",[277,24169,1268],{"class":356},[277,24171,2759],{"class":283},[277,24173,2218],{"class":291},[277,24175,2334],{"class":283},[277,24177,23593],{"class":349},[277,24179,2340],{"class":283},[277,24181,601],{"class":311},[277,24183,23651],{"class":283},[277,24185,2503],{"class":311},[277,24187,1268],{"class":356},[277,24189,24190],{"class":283},".selectedOwner);\n",[277,24192,24193],{"class":279,"line":550},[277,24194,7016],{"class":283},[277,24196,24197],{"class":279,"line":578},[277,24198,1131],{"class":283},[277,24200,24201],{"class":279,"line":583},[277,24202,18255],{"class":283},[277,24204,24205,24207,24209],{"class":279,"line":588},[277,24206,785],{"class":283},[277,24208,288],{"class":287},[277,24210,305],{"class":283},[277,24212,24213],{"class":279,"line":606},[277,24214,328],{"emptyLinePlaceholder":327},[277,24216,24217,24219,24221],{"class":279,"line":614},[277,24218,284],{"class":283},[277,24220,802],{"class":287},[277,24222,305],{"class":283},[277,24224,24225,24227,24229,24231],{"class":279,"line":625},[277,24226,810],{"class":283},[277,24228,4138],{"class":287},[277,24230,22314],{"class":291},[277,24232,305],{"class":283},[277,24234,24235,24237,24239,24241,24243],{"class":279,"line":637},[277,24236,829],{"class":283},[277,24238,30],{"class":287},[277,24240,23699],{"class":283},[277,24242,30],{"class":287},[277,24244,305],{"class":283},[277,24246,24247,24249,24251,24253,24255],{"class":279,"line":646},[277,24248,829],{"class":283},[277,24250,21],{"class":287},[277,24252,23712],{"class":283},[277,24254,21],{"class":287},[277,24256,305],{"class":283},[277,24258,24259,24261,24263],{"class":279,"line":668},[277,24260,954],{"class":283},[277,24262,4138],{"class":287},[277,24264,305],{"class":283},[277,24266,24267],{"class":279,"line":673},[277,24268,328],{"emptyLinePlaceholder":327},[277,24270,24271,24273,24275],{"class":279,"line":679},[277,24272,810],{"class":283},[277,24274,3875],{"class":287},[277,24276,305],{"class":283},[277,24278,24279],{"class":279,"line":684},[277,24280,23741],{"class":283},[277,24282,24283,24285,24287,24289,24291,24293],{"class":279,"line":700},[277,24284,829],{"class":283},[277,24286,23748],{"class":287},[277,24288,23751],{"class":291},[277,24290,298],{"class":283},[277,24292,23756],{"class":301},[277,24294,305],{"class":283},[277,24296,24297,24299,24301,24303,24305,24307,24309,24311,24313,24315,24317,24319,24321,24323],{"class":279,"line":717},[277,24298,879],{"class":283},[277,24300,23765],{"class":287},[277,24302,12785],{"class":291},[277,24304,298],{"class":283},[277,24306,23772],{"class":301},[277,24308,4317],{"class":291},[277,24310,298],{"class":283},[277,24312,23779],{"class":301},[277,24314,23782],{"class":291},[277,24316,298],{"class":283},[277,24318,23779],{"class":301},[277,24320,23789],{"class":283},[277,24322,23765],{"class":287},[277,24324,305],{"class":283},[277,24326,24327,24329,24331],{"class":279,"line":722},[277,24328,922],{"class":283},[277,24330,23748],{"class":287},[277,24332,305],{"class":283},[277,24334,24335,24337,24339],{"class":279,"line":729},[277,24336,954],{"class":283},[277,24338,3875],{"class":287},[277,24340,305],{"class":283},[277,24342,24343],{"class":279,"line":738},[277,24344,328],{"emptyLinePlaceholder":327},[277,24346,24347,24349],{"class":279,"line":747},[277,24348,810],{"class":283},[277,24350,23820],{"class":287},[277,24352,24353,24355,24357],{"class":279,"line":754},[277,24354,22716],{"class":291},[277,24356,298],{"class":283},[277,24358,6516],{"class":301},[277,24360,24361,24363,24365],{"class":279,"line":772},[277,24362,22726],{"class":291},[277,24364,298],{"class":283},[277,24366,6526],{"class":301},[277,24368,24369,24371,24373],{"class":279,"line":777},[277,24370,22737],{"class":291},[277,24372,298],{"class":283},[277,24374,23845],{"class":301},[277,24376,24377,24379,24381],{"class":279,"line":782},[277,24378,22747],{"class":291},[277,24380,298],{"class":283},[277,24382,23854],{"class":301},[277,24384,24385],{"class":279,"line":792},[277,24386,22757],{"class":283},[277,24388,24389,24391,24393,24395,24397],{"class":279,"line":797},[277,24390,829],{"class":283},[277,24392,192],{"class":287},[277,24394,23867],{"class":283},[277,24396,192],{"class":287},[277,24398,305],{"class":283},[277,24400,24401,24403,24405,24407,24409],{"class":279,"line":807},[277,24402,829],{"class":283},[277,24404,21],{"class":287},[277,24406,23880],{"class":283},[277,24408,21],{"class":287},[277,24410,305],{"class":283},[277,24412,24413,24415,24417,24419,24421],{"class":279,"line":826},[277,24414,829],{"class":283},[277,24416,21],{"class":287},[277,24418,23893],{"class":283},[277,24420,21],{"class":287},[277,24422,305],{"class":283},[277,24424,24425,24427,24429],{"class":279,"line":849},[277,24426,954],{"class":283},[277,24428,4121],{"class":287},[277,24430,305],{"class":283},[277,24432,24433],{"class":279,"line":854},[277,24434,328],{"emptyLinePlaceholder":327},[277,24436,24437,24439,24441],{"class":279,"line":876},[277,24438,810],{"class":283},[277,24440,21481],{"class":287},[277,24442,305],{"class":283},[277,24444,24445,24447,24449,24451,24453],{"class":279,"line":891},[277,24446,829],{"class":283},[277,24448,23924],{"class":287},[277,24450,23927],{"class":283},[277,24452,23924],{"class":287},[277,24454,305],{"class":283},[277,24456,24457,24459,24461,24463,24465,24467],{"class":279,"line":905},[277,24458,829],{"class":283},[277,24460,16],{"class":287},[277,24462,23208],{"class":291},[277,24464,23942],{"class":283},[277,24466,16],{"class":287},[277,24468,305],{"class":283},[277,24470,24471,24473,24475],{"class":279,"line":919},[277,24472,954],{"class":283},[277,24474,21481],{"class":287},[277,24476,305],{"class":283},[277,24478,24479,24481,24483],{"class":279,"line":929},[277,24480,785],{"class":283},[277,24482,802],{"class":287},[277,24484,305],{"class":283},[30,24486,1596],{"id":1595},[21,24488,24489,225,24491,1697,24493,24495],{},[16,24490,21906],{},[16,24492,21909],{},[16,24494,21912],{}," son herramientas de precisión:",[38,24497,24498,24503,24508],{},[41,24499,24500,24502],{},[16,24501,21906],{}," para congelar contenido inmutable.",[41,24504,24505,24507],{},[16,24506,21909],{}," para evitar renders cuando dependencias clave no cambian.",[41,24509,24510,24512],{},[16,24511,21912],{}," para mostrar template literal sin compilación.",[21,24514,24515],{},"La clave no es usarlas en todo, sino en puntos donde el costo de render sea real y el comportamiento esperado sea claro.",[1606,24517,24518],{},"html pre.shiki code .sVt8B, html code.shiki .sVt8B{--shiki-default:#24292E;--shiki-dark:#E1E4E8}html pre.shiki code .s9eBZ, html code.shiki .s9eBZ{--shiki-default:#22863A;--shiki-dark:#85E89D}html pre.shiki code .sScJk, html code.shiki .sScJk{--shiki-default:#6F42C1;--shiki-dark:#B392F0}html pre.shiki code .sZZnC, html code.shiki .sZZnC{--shiki-default:#032F62;--shiki-dark:#9ECBFF}html pre.shiki code .szBVR, html code.shiki .szBVR{--shiki-default:#D73A49;--shiki-dark:#F97583}html pre.shiki code .sj4cs, html code.shiki .sj4cs{--shiki-default:#005CC5;--shiki-dark:#79B8FF}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 .s4XuR, html code.shiki .s4XuR{--shiki-default:#E36209;--shiki-dark:#FFAB70}",{"title":273,"searchDepth":308,"depth":308,"links":24520},[24521,24522,24527,24528,24529,24530,24539,24548],{"id":20624,"depth":308,"text":20625},{"id":60,"depth":308,"text":61,"children":24523},[24524,24525,24526],{"id":21906,"depth":324,"text":21906},{"id":21909,"depth":324,"text":21909},{"id":21912,"depth":324,"text":21912},{"id":128,"depth":308,"text":129},{"id":155,"depth":308,"text":156},{"id":5389,"depth":308,"text":5390},{"id":189,"depth":308,"text":190,"children":24531},[24532,24534,24536,24538],{"id":22119,"depth":324,"text":24533},"1) Aplicar v-once sobre datos que sí cambian",{"id":22141,"depth":324,"text":24535},"2) Definir mal dependencias en v-memo",{"id":22155,"depth":324,"text":24537},"3) Esperar que v-pre procese directivas o interpolaciones",{"id":22174,"depth":324,"text":22175},{"id":1945,"depth":308,"text":1946,"children":24540},[24541,24543,24545,24547],{"id":22188,"depth":324,"text":24542},"1) Bloque estático con v-once",{"id":22476,"depth":324,"text":24544},"2) Segmento pesado con v-memo",{"id":23122,"depth":324,"text":24546},"3) Bloque literal con v-pre",{"id":23343,"depth":324,"text":23344},{"id":1595,"depth":308,"text":1596},"https://res.cloudinary.com/denj4fg7f/image/upload/v1771897190/directives-vue-v-once-v-memo-v-pre-guide_ljsdlv.png","Imagen temporal para portada del artículo sobre v-once, v-memo y v-pre en Vue","2026-02-24","Aprende cuándo usar v-once, v-memo y v-pre en Vue 3 para optimizar renderizado, evitar trabajo innecesario y mantener componentes claros.",{"script":24554},[24555],{"type":1632,"key":1633,"data-nuxt-schema-org":327,"nodes":24556},[24557],{"headline":24558,"author":24559,"datePublished":24560,"@type":1640},"Directivas en Vue: v-once, v-memo y v-pre para renderizado eficiente",{"name":1637,"@type":1638},"2026-02-23T21:00:00-05:00",{"updatedAt":24560,"coverCaption":17759,"author":1637,"keywords":24562},[1645,21906,21909,21912,24563],"optimización render","/blog/directives-vue-v-once-v-memo-v-pre-guide.es",[24566],{"headline":24558,"author":24567,"datePublished":24560,"@type":1640},{"name":1637,"@type":1638},{"title":21898,"description":24552},"blog/directives-vue-v-once-v-memo-v-pre-guide.es",[24571,24572,24573,24574,24575],{"tag":20588,"color":20589},{"tag":17774,"color":17775},{"tag":3164,"color":3165},{"tag":3167,"color":3168},{"tag":1671,"color":1672},"u7xDBS4OCgvFrVZ023tOXJV01IYSpQtqWv2fP6XZnHw",{"id":24578,"title":24579,"body":24580,"cover":25832,"coverAlt":25833,"date":25834,"description":25835,"draft":1627,"extension":1628,"head":25836,"locale":1656,"meta":25843,"navigation":327,"path":25847,"schemaOrg":25848,"seo":25851,"series":20582,"seriesDescription":20583,"seriesOrder":381,"seriesTitle":20584,"slug":1656,"stem":25852,"tags":25853,"__hash__":25858},"blog/blog/directives-vue-v-text-v-html-guide.es.md","Directivas en Vue: v-text y v-html",{"type":8,"value":24581,"toc":25795},[24582,24591,24599,24616,24621,24623,24631,24645,24650,24654,24658,24665,24695,24698,24715,24724,24728,24735,24764,24767,24791,24795,24800,24819,24824,24845,24849,24854,24859,24864,24882,24884,24890,24893,24921,24938,24945,24948,24965,24976,24983,24992,24996,24999,25001,25007,25042,25049,25084,25088,25151,25153,25461,25748,25750,25778,25792],[11,24583,20605,24585,12494,24588],{"id":24584},"directivas-en-vue-v-text-vs-v-html",[16,24586,24587],{},"v-text",[16,24589,24590],{},"v-html",[21,24592,24593,24594,1697,24596,24598],{},"En Vue, ",[16,24595,24587],{},[16,24597,24590],{}," permiten renderizar contenido dinámico en el DOM, pero no hacen lo mismo ni implican el mismo nivel de riesgo.",[38,24600,24601,24609],{},[41,24602,24603,24605,24606,104],{},[16,24604,24587],{}," inserta ",[72,24607,24608],{},"texto plano",[41,24610,24611,24605,24613,104],{},[16,24612,24590],{},[72,24614,24615],{},"HTML interpretado por el navegador",[3111,24617,24618],{},[21,24619,24620],{},"Entender esta diferencia es clave para evitar bugs de UI y, sobre todo, vulnerabilidades de seguridad como XSS.",[30,24622,20625],{"id":20624},[21,24624,24625,24626,1697,24628,24630],{},"En proyectos reales es habitual recibir contenido desde APIs, CMS o incluso formularios de usuario. Elegir incorrectamente entre ",[16,24627,24587],{},[16,24629,24590],{}," puede provocar:",[38,24632,24633,24636,24639,24642],{},[41,24634,24635],{},"Diseños rotos por etiquetas inesperadas.",[41,24637,24638],{},"Exposición a ataques XSS.",[41,24640,24641],{},"Lógica de sanitización duplicada en múltiples componentes.",[41,24643,24644],{},"Inconsistencias visuales difíciles de depurar.",[3111,24646,24647],{},[21,24648,24649],{},"Tomar la decisión correcta desde el inicio mejora la seguridad, el mantenimiento y la coherencia del código.",[30,24651,24653],{"id":24652},"concepto-base","Concepto base",[192,24655,24656],{"id":24587},[16,24657,24587],{},[21,24659,24660,24661,24664],{},"Renderiza el valor como contenido textual del nodo (",[16,24662,24663],{},"textContent",").\nSi el valor incluye etiquetas HTML, estas se muestran como texto literal, no se interpretan.",[267,24666,24668],{"className":269,"code":24667,"filename":9339,"language":272,"meta":273,"style":273},"\u003Cp v-text=\"message\">\u003C/p>\n",[16,24669,24670],{"__ignoreMap":273},[277,24671,24672,24674,24676,24679,24681,24683,24686,24688,24691,24693],{"class":279,"line":280},[277,24673,284],{"class":283},[277,24675,21],{"class":287},[277,24677,24678],{"class":291}," v-text",[277,24680,298],{"class":283},[277,24682,866],{"class":301},[277,24684,24685],{"class":283},"message",[277,24687,866],{"class":301},[277,24689,24690],{"class":283},">\u003C/",[277,24692,21],{"class":287},[277,24694,305],{"class":283},[21,24696,24697],{},"Es equivalente a la interpolación estándar:",[267,24699,24701],{"className":269,"code":24700,"filename":9339,"language":272,"meta":273,"style":273},"\u003Cp>{{ message }}\u003C/p>\n",[16,24702,24703],{"__ignoreMap":273},[277,24704,24705,24707,24709,24711,24713],{"class":279,"line":280},[277,24706,284],{"class":283},[277,24708,21],{"class":287},[277,24710,23190],{"class":283},[277,24712,21],{"class":287},[277,24714,305],{"class":283},[3111,24716,24717],{},[21,24718,24719,24720,24723],{},"En la práctica, la interpolación (",[16,24721,24722],{},"{{ }}",") es la forma más común y legible para texto dinámico.",[192,24725,24726],{"id":24590},[16,24727,24590],{},[21,24729,24730,24731,24734],{},"Renderiza el valor como HTML dentro del nodo (",[16,24732,24733],{},"innerHTML",").\nSi el string contiene etiquetas, el navegador las procesa como parte del DOM.",[267,24736,24738],{"className":269,"code":24737,"filename":9339,"language":272,"meta":273,"style":273},"\u003Cdiv v-html=\"htmlSnippet\">\u003C/div>\n",[16,24739,24740],{"__ignoreMap":273},[277,24741,24742,24744,24746,24749,24751,24753,24756,24758,24760,24762],{"class":279,"line":280},[277,24743,284],{"class":283},[277,24745,4201],{"class":287},[277,24747,24748],{"class":291}," v-html",[277,24750,298],{"class":283},[277,24752,866],{"class":301},[277,24754,24755],{"class":283},"htmlSnippet",[277,24757,866],{"class":301},[277,24759,24690],{"class":283},[277,24761,4201],{"class":287},[277,24763,305],{"class":283},[21,24765,24766],{},"Consideraciones importantes:",[38,24768,24769,24777,24785,24788],{},[41,24770,24771,10969,24773,24776],{},[16,24772,24590],{},[72,24774,24775],{},"no compila plantillas Vue"," dentro del contenido inyectado.",[41,24778,24779,24780,225,24782,1808],{},"No enlaza directivas (",[16,24781,7538],{},[16,24783,24784],{},"@click",[41,24786,24787],{},"No debe utilizarse con contenido no confiable.",[41,24789,24790],{},"El contenido inyectado queda fuera del scope del compilador de plantillas.",[30,24792,24794],{"id":24793},"cuándo-usar-cada-uno","Cuándo usar cada uno",[192,24796,20777,24798,7669],{"id":24797},"usa-v-text-cuando",[16,24799,24587],{},[38,24801,24802,24805,24813,24816],{},[41,24803,24804],{},"Renderizas texto dinámico simple y seguro.",[41,24806,24807,24808,118,24810,24812],{},"El contenido puede incluir ",[16,24809,284],{},[16,24811,9921],{}," y necesitas que se muestren literalmente.",[41,24814,24815],{},"No necesitas formato enriquecido.",[41,24817,24818],{},"Quieres la opción más segura por defecto.",[192,24820,20777,24822,7669],{"id":24821},"usa-v-html-cuando",[16,24823,24590],{},[38,24825,24826,24829,24832,24842],{},[41,24827,24828],{},"Renderizas contenido HTML previamente sanitizado.",[41,24830,24831],{},"El contenido proviene de un CMS controlado o backend confiable.",[41,24833,24834,24835,225,24838,24841],{},"Necesitas respetar formato enriquecido (",[16,24836,24837],{},"\u003Cstrong>",[16,24839,24840],{},"\u003Cem>",", listas, enlaces, etc.).",[41,24843,24844],{},"Existe una estrategia clara y centralizada de sanitización.",[30,24846,24848],{"id":24847},"cuándo-evitarlos","Cuándo evitarlos",[192,24850,7664,24852,7669],{"id":24851},"evita-v-text-cuando",[16,24853,24587],{},[38,24855,24856],{},[41,24857,24858],{},"Necesitas HTML real con formato enriquecido.",[192,24860,7664,24862,7669],{"id":24861},"evita-v-html-cuando",[16,24863,24590],{},[38,24865,24866,24869,24872,24875],{},[41,24867,24868],{},"El contenido proviene directamente de input de usuario sin sanitizar.",[41,24870,24871],{},"No tienes una estrategia centralizada de sanitización.",[41,24873,24874],{},"El mismo resultado puede lograrse con componentes explícitos (más seguro y mantenible).",[41,24876,24877,24878,24881],{},"Puedes modelar la estructura con datos y renderizarla con ",[16,24879,24880],{},"v-for"," y componentes en lugar de inyectar HTML crudo.",[30,24883,190],{"id":189},[192,24885,20821,24887,24889],{"id":24886},"_1-usar-v-html-con-contenido-no-confiable",[16,24888,24590],{}," con contenido no confiable",[21,24891,24892],{},"Incorrecto:",[267,24894,24896],{"className":269,"code":24895,"filename":9339,"language":272,"meta":273,"style":273},"\u003Cdiv v-html=\"userBio\">\u003C/div>\n",[16,24897,24898],{"__ignoreMap":273},[277,24899,24900,24902,24904,24906,24908,24910,24913,24915,24917,24919],{"class":279,"line":280},[277,24901,284],{"class":283},[277,24903,4201],{"class":287},[277,24905,24748],{"class":291},[277,24907,298],{"class":283},[277,24909,866],{"class":301},[277,24911,24912],{"class":283},"userBio",[277,24914,866],{"class":301},[277,24916,24690],{"class":283},[277,24918,4201],{"class":287},[277,24920,305],{"class":283},[21,24922,24923,24924,24926,24927,24930,24931,225,24934,24937],{},"Si ",[16,24925,24912],{}," no está sanitizado, puede inyectar ",[16,24928,24929],{},"\u003Cscript>",", atributos peligrosos (",[16,24932,24933],{},"onerror",[16,24935,24936],{},"onclick",") o URLs maliciosas.",[192,24939,24941,24942,24944],{"id":24940},"_2-esperar-que-v-html-procese-directivas-de-vue","2) Esperar que ",[16,24943,24590],{}," procese directivas de Vue",[21,24946,24947],{},"Esto no funciona:",[267,24949,24951],{"className":15972,"code":24950,"filename":19438,"language":15975,"meta":273,"style":273},"const html = '\u003Cbutton @click=\"save\">Guardar\u003C/button>'\n",[16,24952,24953],{"__ignoreMap":273},[277,24954,24955,24957,24960,24962],{"class":279,"line":280},[277,24956,405],{"class":311},[277,24958,24959],{"class":356}," html",[277,24961,340],{"class":311},[277,24963,24964],{"class":301}," '\u003Cbutton @click=\"save\">Guardar\u003C/button>'\n",[3111,24966,24967],{},[21,24968,24969,24970,10969,24972,24975],{},"Las directivas dentro de un string inyectado con ",[16,24971,24590],{},[72,24973,24974],{},"no se compilan ni se enlazan"," al contexto del componente.",[192,24977,24979,24980,24982],{"id":24978},"_3-usar-v-html-por-flexibilidad","3) Usar ",[16,24981,24590],{}," “por flexibilidad”",[21,24984,24985,24986,24988,24989,24991],{},"Si solo necesitas texto, usa interpolación (",[16,24987,24722],{},") o ",[16,24990,24587],{},".\nEs más simple, más legible y más seguro.",[192,24993,24995],{"id":24994},"_4-repetir-la-sanitización-en-cada-componente","4) Repetir la sanitización en cada componente",[21,24997,24998],{},"La sanitización debe vivir en una función, composable o utility centralizada.\nDuplicarla en cada vista aumenta el riesgo de inconsistencias y errores.",[30,25000,1946],{"id":1945},[192,25002,25004,25005,19],{"id":25003},"_1-mensaje-dinámico-seguro-v-text","1) Mensaje dinámico seguro (",[16,25006,24587],{},[267,25008,25010],{"className":269,"code":25009,"filename":9339,"language":272,"meta":273,"style":273},"\u003Cp class=\"status\" v-text=\"statusMessage\">\u003C/p>\n",[16,25011,25012],{"__ignoreMap":273},[277,25013,25014,25016,25018,25020,25022,25025,25027,25029,25031,25034,25036,25038,25040],{"class":279,"line":280},[277,25015,284],{"class":283},[277,25017,21],{"class":287},[277,25019,816],{"class":291},[277,25021,298],{"class":283},[277,25023,25024],{"class":301},"\"status\"",[277,25026,24678],{"class":291},[277,25028,298],{"class":283},[277,25030,866],{"class":301},[277,25032,25033],{"class":283},"statusMessage",[277,25035,866],{"class":301},[277,25037,24690],{"class":283},[277,25039,21],{"class":287},[277,25041,305],{"class":283},[192,25043,25045,25046,25048],{"id":25044},"_2-descripción-enriquecida-desde-un-cms-v-html-sanitización-previa","2) Descripción enriquecida desde un CMS (",[16,25047,24590],{}," + sanitización previa)",[267,25050,25052],{"className":269,"code":25051,"filename":9339,"language":272,"meta":273,"style":273},"\u003Carticle class=\"prose\" v-html=\"safeHtml\">\u003C/article>\n",[16,25053,25054],{"__ignoreMap":273},[277,25055,25056,25058,25060,25062,25064,25067,25069,25071,25073,25076,25078,25080,25082],{"class":279,"line":280},[277,25057,284],{"class":283},[277,25059,813],{"class":287},[277,25061,816],{"class":291},[277,25063,298],{"class":283},[277,25065,25066],{"class":301},"\"prose\"",[277,25068,24748],{"class":291},[277,25070,298],{"class":283},[277,25072,866],{"class":301},[277,25074,25075],{"class":283},"safeHtml",[277,25077,866],{"class":301},[277,25079,24690],{"class":283},[277,25081,813],{"class":287},[277,25083,305],{"class":283},[192,25085,25087],{"id":25086},"_3-fallback-entre-html-permitido-y-texto-plano","3) Fallback entre HTML permitido y texto plano",[267,25089,25091],{"className":269,"code":25090,"filename":9339,"language":272,"meta":273,"style":273},"\u003Cdiv v-if=\"allowRichText\" v-html=\"safeHtml\">\u003C/div>\n\u003Cp v-else v-text=\"plainText\">\u003C/p>\n",[16,25092,25093,25126],{"__ignoreMap":273},[277,25094,25095,25097,25099,25101,25103,25105,25108,25110,25112,25114,25116,25118,25120,25122,25124],{"class":279,"line":280},[277,25096,284],{"class":283},[277,25098,4201],{"class":287},[277,25100,834],{"class":311},[277,25102,298],{"class":283},[277,25104,866],{"class":301},[277,25106,25107],{"class":283},"allowRichText",[277,25109,866],{"class":301},[277,25111,24748],{"class":291},[277,25113,298],{"class":283},[277,25115,866],{"class":301},[277,25117,25075],{"class":283},[277,25119,866],{"class":301},[277,25121,24690],{"class":283},[277,25123,4201],{"class":287},[277,25125,305],{"class":283},[277,25127,25128,25130,25132,25134,25136,25138,25140,25143,25145,25147,25149],{"class":279,"line":308},[277,25129,284],{"class":283},[277,25131,21],{"class":287},[277,25133,941],{"class":311},[277,25135,24678],{"class":291},[277,25137,298],{"class":283},[277,25139,866],{"class":301},[277,25141,25142],{"class":283},"plainText",[277,25144,866],{"class":301},[277,25146,24690],{"class":283},[277,25148,21],{"class":287},[277,25150,305],{"class":283},[30,25152,1976],{"id":1975},[267,25154,25156],{"className":269,"code":25155,"filename":271,"language":272,"meta":273,"style":273},"\u003Cscript setup lang=\"ts\">\nimport { computed, ref } from \"vue\";\n\nconst allowRichText = ref(true);\nconst rawFromCms = ref(\"\u003Ch3>Novedades\u003C/h3>\u003Cp>\u003Cstrong>Vue 3\u003C/strong> mejora DX.\u003C/p>\");\nconst plainFallback = ref(\"Novedades: Vue 3 mejora DX.\");\n\nfunction sanitizeHtml(input: string) {\n  // Placeholder: en producción usa una librería robusta como DOMPurify.\n  return input.replace(/\u003Cscript.*?>.*?\u003C\\/script>/gi, \"\");\n}\n\nconst safeHtml = computed(() => sanitizeHtml(rawFromCms.value));\n\u003C/script>\n\n\u003Ctemplate>\n  \u003Csection>\n    \u003Ch2>Contenido editorial\u003C/h2>\n\n    \u003Cdiv v-if=\"allowRichText\" class=\"prose\" v-html=\"safeHtml\">\u003C/div>\n    \u003Cp v-else v-text=\"plainFallback\">\u003C/p>\n  \u003C/section>\n\u003C/template>\n",[16,25157,25158,25174,25186,25190,25207,25225,25243,25247,25264,25269,25319,25323,25327,25347,25355,25359,25367,25375,25388,25392,25424,25445,25453],{"__ignoreMap":273},[277,25159,25160,25162,25164,25166,25168,25170,25172],{"class":279,"line":280},[277,25161,284],{"class":283},[277,25163,288],{"class":287},[277,25165,292],{"class":291},[277,25167,295],{"class":291},[277,25169,298],{"class":283},[277,25171,302],{"class":301},[277,25173,305],{"class":283},[277,25175,25176,25178,25180,25182,25184],{"class":279,"line":308},[277,25177,312],{"class":311},[277,25179,23384],{"class":283},[277,25181,318],{"class":311},[277,25183,18148],{"class":301},[277,25185,18151],{"class":283},[277,25187,25188],{"class":279,"line":324},[277,25189,328],{"emptyLinePlaceholder":327},[277,25191,25192,25194,25197,25199,25201,25203,25205],{"class":279,"line":331},[277,25193,405],{"class":311},[277,25195,25196],{"class":356}," allowRichText",[277,25198,340],{"class":311},[277,25200,413],{"class":291},[277,25202,448],{"class":283},[277,25204,2149],{"class":356},[277,25206,18277],{"class":283},[277,25208,25209,25211,25214,25216,25218,25220,25223],{"class":279,"line":346},[277,25210,405],{"class":311},[277,25212,25213],{"class":356}," rawFromCms",[277,25215,340],{"class":311},[277,25217,413],{"class":291},[277,25219,448],{"class":283},[277,25221,25222],{"class":301},"\"\u003Ch3>Novedades\u003C/h3>\u003Cp>\u003Cstrong>Vue 3\u003C/strong> mejora DX.\u003C/p>\"",[277,25224,18277],{"class":283},[277,25226,25227,25229,25232,25234,25236,25238,25241],{"class":279,"line":360},[277,25228,405],{"class":311},[277,25230,25231],{"class":356}," plainFallback",[277,25233,340],{"class":311},[277,25235,413],{"class":291},[277,25237,448],{"class":283},[277,25239,25240],{"class":301},"\"Novedades: Vue 3 mejora DX.\"",[277,25242,18277],{"class":283},[277,25244,25245],{"class":279,"line":371},[277,25246,328],{"emptyLinePlaceholder":327},[277,25248,25249,25251,25254,25256,25258,25260,25262],{"class":279,"line":381},[277,25250,2460],{"class":311},[277,25252,25253],{"class":291}," sanitizeHtml",[277,25255,448],{"class":283},[277,25257,18041],{"class":349},[277,25259,353],{"class":311},[277,25261,21376],{"class":356},[277,25263,2476],{"class":283},[277,25265,25266],{"class":279,"line":391},[277,25267,25268],{"class":12741},"  // Placeholder: en producción usa una librería robusta como DOMPurify.\n",[277,25270,25271,25273,25276,25279,25281,25283,25287,25289,25292,25294,25296,25298,25300,25304,25307,25309,25312,25314,25317],{"class":279,"line":397},[277,25272,2212],{"class":311},[277,25274,25275],{"class":283}," input.",[277,25277,25278],{"class":291},"replace",[277,25280,448],{"class":283},[277,25282,15951],{"class":301},[277,25284,25286],{"class":25285},"sA_wV","\u003Cscript",[277,25288,104],{"class":356},[277,25290,25291],{"class":311},"*?",[277,25293,9921],{"class":25285},[277,25295,104],{"class":356},[277,25297,25291],{"class":311},[277,25299,284],{"class":25285},[277,25301,25303],{"class":25302},"snhLl","\\/",[277,25305,25306],{"class":25285},"script>",[277,25308,15951],{"class":301},[277,25310,25311],{"class":311},"gi",[277,25313,225],{"class":283},[277,25315,25316],{"class":301},"\"\"",[277,25318,18277],{"class":283},[277,25320,25321],{"class":279,"line":402},[277,25322,394],{"class":283},[277,25324,25325],{"class":279,"line":436},[277,25326,328],{"emptyLinePlaceholder":327},[277,25328,25329,25331,25334,25336,25338,25340,25342,25344],{"class":279,"line":456},[277,25330,405],{"class":311},[277,25332,25333],{"class":356}," safeHtml",[277,25335,340],{"class":311},[277,25337,2200],{"class":291},[277,25339,2203],{"class":283},[277,25341,601],{"class":311},[277,25343,25253],{"class":291},[277,25345,25346],{"class":283},"(rawFromCms.value));\n",[277,25348,25349,25351,25353],{"class":279,"line":461},[277,25350,785],{"class":283},[277,25352,288],{"class":287},[277,25354,305],{"class":283},[277,25356,25357],{"class":279,"line":476},[277,25358,328],{"emptyLinePlaceholder":327},[277,25360,25361,25363,25365],{"class":279,"line":500},[277,25362,284],{"class":283},[277,25364,802],{"class":287},[277,25366,305],{"class":283},[277,25368,25369,25371,25373],{"class":279,"line":505},[277,25370,810],{"class":283},[277,25372,4121],{"class":287},[277,25374,305],{"class":283},[277,25376,25377,25379,25381,25384,25386],{"class":279,"line":520},[277,25378,829],{"class":283},[277,25380,30],{"class":287},[277,25382,25383],{"class":283},">Contenido editorial\u003C/",[277,25385,30],{"class":287},[277,25387,305],{"class":283},[277,25389,25390],{"class":279,"line":539},[277,25391,328],{"emptyLinePlaceholder":327},[277,25393,25394,25396,25398,25400,25402,25405,25407,25409,25411,25413,25415,25418,25420,25422],{"class":279,"line":545},[277,25395,829],{"class":283},[277,25397,4201],{"class":287},[277,25399,834],{"class":291},[277,25401,298],{"class":283},[277,25403,25404],{"class":301},"\"allowRichText\"",[277,25406,816],{"class":291},[277,25408,298],{"class":283},[277,25410,25066],{"class":301},[277,25412,24748],{"class":291},[277,25414,298],{"class":283},[277,25416,25417],{"class":301},"\"safeHtml\"",[277,25419,24690],{"class":283},[277,25421,4201],{"class":287},[277,25423,305],{"class":283},[277,25425,25426,25428,25430,25432,25434,25436,25439,25441,25443],{"class":279,"line":550},[277,25427,829],{"class":283},[277,25429,21],{"class":287},[277,25431,941],{"class":291},[277,25433,24678],{"class":291},[277,25435,298],{"class":283},[277,25437,25438],{"class":301},"\"plainFallback\"",[277,25440,24690],{"class":283},[277,25442,21],{"class":287},[277,25444,305],{"class":283},[277,25446,25447,25449,25451],{"class":279,"line":578},[277,25448,954],{"class":283},[277,25450,4121],{"class":287},[277,25452,305],{"class":283},[277,25454,25455,25457,25459],{"class":279,"line":583},[277,25456,785],{"class":283},[277,25458,802],{"class":287},[277,25460,305],{"class":283},[267,25462,25464],{"className":269,"code":25463,"filename":971,"language":272,"meta":273,"style":273},"\u003Cscript>\nexport default {\n  data() {\n    return {\n      allowRichText: true,\n      rawFromCms: \"\u003Ch3>Novedades\u003C/h3>\u003Cp>\u003Cstrong>Vue 3\u003C/strong> mejora DX.\u003C/p>\",\n      plainFallback: \"Novedades: Vue 3 mejora DX.\",\n    };\n  },\n  computed: {\n    safeHtml() {\n      return this.sanitizeHtml(this.rawFromCms);\n    },\n  },\n  methods: {\n    sanitizeHtml(input) {\n      // Placeholder: en producción usa una librería robusta como DOMPurify.\n      return input.replace(/\u003Cscript.*?>.*?\u003C\\/script>/gi, \"\");\n    },\n  },\n};\n\u003C/script>\n\n\u003Ctemplate>\n  \u003Csection>\n    \u003Ch2>Contenido editorial\u003C/h2>\n\n    \u003Cdiv v-if=\"allowRichText\" class=\"prose\" v-html=\"safeHtml\">\u003C/div>\n    \u003Cp v-else v-text=\"plainFallback\">\u003C/p>\n  \u003C/section>\n\u003C/template>\n",[16,25465,25466,25474,25482,25488,25494,25503,25512,25521,25525,25529,25533,25540,25558,25562,25566,25570,25581,25586,25626,25630,25634,25638,25646,25650,25658,25666,25678,25682,25712,25732,25740],{"__ignoreMap":273},[277,25467,25468,25470,25472],{"class":279,"line":280},[277,25469,284],{"class":283},[277,25471,288],{"class":287},[277,25473,305],{"class":283},[277,25475,25476,25478,25480],{"class":279,"line":308},[277,25477,1057],{"class":311},[277,25479,1060],{"class":311},[277,25481,343],{"class":283},[277,25483,25484,25486],{"class":279,"line":324},[277,25485,1086],{"class":291},[277,25487,473],{"class":283},[277,25489,25490,25492],{"class":279,"line":331},[277,25491,1093],{"class":311},[277,25493,343],{"class":283},[277,25495,25496,25499,25501],{"class":279,"line":346},[277,25497,25498],{"class":283},"      allowRichText: ",[277,25500,2149],{"class":356},[277,25502,1077],{"class":283},[277,25504,25505,25508,25510],{"class":279,"line":360},[277,25506,25507],{"class":283},"      rawFromCms: ",[277,25509,25222],{"class":301},[277,25511,1077],{"class":283},[277,25513,25514,25517,25519],{"class":279,"line":371},[277,25515,25516],{"class":283},"      plainFallback: ",[277,25518,25240],{"class":301},[277,25520,1077],{"class":283},[277,25522,25523],{"class":279,"line":381},[277,25524,18478],{"class":283},[277,25526,25527],{"class":279,"line":391},[277,25528,1131],{"class":283},[277,25530,25531],{"class":279,"line":397},[277,25532,2742],{"class":283},[277,25534,25535,25538],{"class":279,"line":402},[277,25536,25537],{"class":291},"    safeHtml",[277,25539,473],{"class":283},[277,25541,25542,25544,25546,25548,25551,25553,25555],{"class":279,"line":436},[277,25543,2754],{"class":311},[277,25545,1268],{"class":356},[277,25547,104],{"class":283},[277,25549,25550],{"class":291},"sanitizeHtml",[277,25552,448],{"class":283},[277,25554,1341],{"class":356},[277,25556,25557],{"class":283},".rawFromCms);\n",[277,25559,25560],{"class":279,"line":456},[277,25561,7016],{"class":283},[277,25563,25564],{"class":279,"line":461},[277,25565,1131],{"class":283},[277,25567,25568],{"class":279,"line":476},[277,25569,1140],{"class":283},[277,25571,25572,25575,25577,25579],{"class":279,"line":500},[277,25573,25574],{"class":291},"    sanitizeHtml",[277,25576,448],{"class":283},[277,25578,18041],{"class":349},[277,25580,2476],{"class":283},[277,25582,25583],{"class":279,"line":505},[277,25584,25585],{"class":12741},"      // Placeholder: en producción usa una librería robusta como DOMPurify.\n",[277,25587,25588,25590,25592,25594,25596,25598,25600,25602,25604,25606,25608,25610,25612,25614,25616,25618,25620,25622,25624],{"class":279,"line":520},[277,25589,2754],{"class":311},[277,25591,25275],{"class":283},[277,25593,25278],{"class":291},[277,25595,448],{"class":283},[277,25597,15951],{"class":301},[277,25599,25286],{"class":25285},[277,25601,104],{"class":356},[277,25603,25291],{"class":311},[277,25605,9921],{"class":25285},[277,25607,104],{"class":356},[277,25609,25291],{"class":311},[277,25611,284],{"class":25285},[277,25613,25303],{"class":25302},[277,25615,25306],{"class":25285},[277,25617,15951],{"class":301},[277,25619,25311],{"class":311},[277,25621,225],{"class":283},[277,25623,25316],{"class":301},[277,25625,18277],{"class":283},[277,25627,25628],{"class":279,"line":539},[277,25629,7016],{"class":283},[277,25631,25632],{"class":279,"line":545},[277,25633,1131],{"class":283},[277,25635,25636],{"class":279,"line":550},[277,25637,18255],{"class":283},[277,25639,25640,25642,25644],{"class":279,"line":578},[277,25641,785],{"class":283},[277,25643,288],{"class":287},[277,25645,305],{"class":283},[277,25647,25648],{"class":279,"line":583},[277,25649,328],{"emptyLinePlaceholder":327},[277,25651,25652,25654,25656],{"class":279,"line":588},[277,25653,284],{"class":283},[277,25655,802],{"class":287},[277,25657,305],{"class":283},[277,25659,25660,25662,25664],{"class":279,"line":606},[277,25661,810],{"class":283},[277,25663,4121],{"class":287},[277,25665,305],{"class":283},[277,25667,25668,25670,25672,25674,25676],{"class":279,"line":614},[277,25669,829],{"class":283},[277,25671,30],{"class":287},[277,25673,25383],{"class":283},[277,25675,30],{"class":287},[277,25677,305],{"class":283},[277,25679,25680],{"class":279,"line":625},[277,25681,328],{"emptyLinePlaceholder":327},[277,25683,25684,25686,25688,25690,25692,25694,25696,25698,25700,25702,25704,25706,25708,25710],{"class":279,"line":637},[277,25685,829],{"class":283},[277,25687,4201],{"class":287},[277,25689,834],{"class":291},[277,25691,298],{"class":283},[277,25693,25404],{"class":301},[277,25695,816],{"class":291},[277,25697,298],{"class":283},[277,25699,25066],{"class":301},[277,25701,24748],{"class":291},[277,25703,298],{"class":283},[277,25705,25417],{"class":301},[277,25707,24690],{"class":283},[277,25709,4201],{"class":287},[277,25711,305],{"class":283},[277,25713,25714,25716,25718,25720,25722,25724,25726,25728,25730],{"class":279,"line":646},[277,25715,829],{"class":283},[277,25717,21],{"class":287},[277,25719,941],{"class":291},[277,25721,24678],{"class":291},[277,25723,298],{"class":283},[277,25725,25438],{"class":301},[277,25727,24690],{"class":283},[277,25729,21],{"class":287},[277,25731,305],{"class":283},[277,25733,25734,25736,25738],{"class":279,"line":668},[277,25735,954],{"class":283},[277,25737,4121],{"class":287},[277,25739,305],{"class":283},[277,25741,25742,25744,25746],{"class":279,"line":673},[277,25743,785],{"class":283},[277,25745,802],{"class":287},[277,25747,305],{"class":283},[30,25749,1596],{"id":1595},[38,25751,25752,25757,25765,25770,25775],{},[41,25753,25754,25756],{},[16,25755,24587],{}," es para texto plano y es la opción por defecto cuando no necesitas HTML.",[41,25758,25759,25760,25762,25763,104],{},"La interpolación (",[16,25761,24722],{},") suele ser más idiomática que ",[16,25764,24587],{},[41,25766,25767,25769],{},[16,25768,24590],{}," solo debe usarse con contenido confiable o previamente sanitizado.",[41,25771,25772,25774],{},[16,25773,24590],{}," no compila ni enlaza directivas Vue.",[41,25776,25777],{},"Centraliza la sanitización en una capa clara (utility/composable).",[3111,25779,25780],{},[21,25781,25782,25785,25786,25788,25789,25791],{},[72,25783,25784],{},"Regla práctica:"," si dudas, empieza con interpolación o ",[16,25787,24587],{},", y utiliza ",[16,25790,24590],{}," únicamente cuando el caso de uso lo justifique explícitamente.",[1606,25793,25794],{},"html pre.shiki code .sVt8B, html code.shiki .sVt8B{--shiki-default:#24292E;--shiki-dark:#E1E4E8}html pre.shiki code .s9eBZ, html code.shiki .s9eBZ{--shiki-default:#22863A;--shiki-dark:#85E89D}html pre.shiki code .sScJk, html code.shiki .sScJk{--shiki-default:#6F42C1;--shiki-dark:#B392F0}html pre.shiki code .sZZnC, html code.shiki .sZZnC{--shiki-default:#032F62;--shiki-dark:#9ECBFF}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 .szBVR, html code.shiki .szBVR{--shiki-default:#D73A49;--shiki-dark:#F97583}html pre.shiki code .sj4cs, html code.shiki .sj4cs{--shiki-default:#005CC5;--shiki-dark:#79B8FF}html pre.shiki code .s4XuR, html code.shiki .s4XuR{--shiki-default:#E36209;--shiki-dark:#FFAB70}html pre.shiki code .sJ8bj, html code.shiki .sJ8bj{--shiki-default:#6A737D;--shiki-dark:#6A737D}html pre.shiki code .sA_wV, html code.shiki .sA_wV{--shiki-default:#032F62;--shiki-dark:#DBEDFF}html pre.shiki code .snhLl, html code.shiki .snhLl{--shiki-default:#22863A;--shiki-default-font-weight:bold;--shiki-dark:#85E89D;--shiki-dark-font-weight:bold}",{"title":273,"searchDepth":308,"depth":308,"links":25796},[25797,25798,25802,25808,25814,25823,25830,25831],{"id":20624,"depth":308,"text":20625},{"id":24652,"depth":308,"text":24653,"children":25799},[25800,25801],{"id":24587,"depth":324,"text":24587},{"id":24590,"depth":324,"text":24590},{"id":24793,"depth":308,"text":24794,"children":25803},[25804,25806],{"id":24797,"depth":324,"text":25805},"Usa v-text cuando:",{"id":24821,"depth":324,"text":25807},"Usa v-html cuando:",{"id":24847,"depth":308,"text":24848,"children":25809},[25810,25812],{"id":24851,"depth":324,"text":25811},"Evita v-text cuando:",{"id":24861,"depth":324,"text":25813},"Evita v-html cuando:",{"id":189,"depth":308,"text":190,"children":25815},[25816,25818,25820,25822],{"id":24886,"depth":324,"text":25817},"1) Usar v-html con contenido no confiable",{"id":24940,"depth":324,"text":25819},"2) Esperar que v-html procese directivas de Vue",{"id":24978,"depth":324,"text":25821},"3) Usar v-html “por flexibilidad”",{"id":24994,"depth":324,"text":24995},{"id":1945,"depth":308,"text":1946,"children":25824},[25825,25827,25829],{"id":25003,"depth":324,"text":25826},"1) Mensaje dinámico seguro (v-text)",{"id":25044,"depth":324,"text":25828},"2) Descripción enriquecida desde un CMS (v-html + sanitización previa)",{"id":25086,"depth":324,"text":25087},{"id":1975,"depth":308,"text":1976},{"id":1595,"depth":308,"text":1596},"https://res.cloudinary.com/denj4fg7f/image/upload/v1771635700/directives-vue-v-text-v-html-guide_n0cemz.png","Ejemplo de uso de v-text y v-html en Vue.js","2026-02-21","Aprende cuándo usar v-text y v-html en Vue, diferencias clave, riesgos de seguridad, errores comunes y patrones recomendados con ejemplos en Composition API y Options API.",{"script":25837},[25838],{"type":1632,"key":1633,"data-nuxt-schema-org":327,"nodes":25839},[25840],{"headline":24579,"author":25841,"datePublished":25842,"@type":1640},{"name":1637,"@type":1638},"2026-02-20T20:00:00-05:00",{"updatedAt":25842,"coverCaption":25844,"keywords":25845},"Aprende a usar v-text y v-html de forma segura y efectiva en tus proyectos Vue",[1645,24587,24590,25846,10645,271,971],"XSS","/blog/directives-vue-v-text-v-html-guide.es",[25849],{"headline":24579,"author":25850,"datePublished":25842,"@type":1640},{"name":1637,"@type":1638},{"title":24579,"description":25835},"blog/directives-vue-v-text-v-html-guide.es",[25854,25855,25856,25857],{"tag":20588,"color":20589},{"tag":21891,"color":21892},{"tag":3164,"color":3165},{"tag":9074,"color":9075},"ETrb_1hy2LBFoBJtNI7Bdx3vS8ERBw0U59cL2Y3giRY",{"id":25860,"title":25861,"body":25862,"cover":28089,"coverAlt":28090,"date":28091,"description":28092,"draft":1627,"extension":1628,"head":28093,"locale":1641,"meta":28101,"navigation":327,"path":28106,"schemaOrg":28107,"seo":28110,"series":20582,"seriesDescription":20583,"seriesOrder":371,"seriesTitle":20584,"slug":1656,"stem":28111,"tags":28112,"__hash__":28118},"blog/blog/directives-vue-v-slot-guide.es.md","Directivas en Vue: v-slot",{"type":8,"value":25863,"toc":28068},[25864,25870,25875,25878,25880,25883,25894,25901,25903,25910,25970,26037,26040,26065,26068,26091,26102,26104,26108,26129,26131,26133,26144,26149,26151,26160,26165,26175,26211,26251,26255,26262,26316,26319,26323,26326,26328,26348,26353,26357,26360,26363,26389,26391,26395,26470,26474,26626,26630,26771,26778,26781,26854,26859,26863,26866,27192,27449,27453,27456,27779,28037,28039,28065],[11,25865,20605,25867],{"id":25866},"directivas-en-vue-v-slot",[16,25868,25869],{},"v-slot",[21,25871,25872,25874],{},[16,25873,25869],{}," permite decidir, desde el componente padre, qué contenido se renderizará dentro de zonas específicas definidas por el componente hijo.\nEn términos simples: el hijo define “huecos” y el padre decide qué colocar en ellos.",[21,25876,25877],{},"Es una de las herramientas más potentes de Vue 3 para construir componentes reutilizables sin perder control sobre el renderizado.",[30,25879,20625],{"id":20624},[21,25881,25882],{},"Sin slots, muchos componentes terminan siendo rígidos:",[38,25884,25885,25888,25891],{},[41,25886,25887],{},"Con textos y botones “quemados” dentro del hijo.",[41,25889,25890],{},"Con demasiadas props para cubrir casos muy específicos.",[41,25892,25893],{},"Difíciles de reutilizar en pantallas diferentes.",[3111,25895,25896],{},[21,25897,11996,25898,25900],{},[16,25899,25869],{},", puedes diseñar componentes base (cards, modals, tablas, layouts) que se adapten a distintos contextos sin duplicar lógica ni sacrificar claridad.",[30,25902,24653],{"id":24652},[21,25904,25905,25906,25909],{},"Un componente hijo define ",[16,25907,25908],{},"\u003Cslot />",", y el padre inyecta contenido:",[267,25911,25915],{"className":269,"code":25912,"filename":25913,"highlights":25914,"language":272,"meta":273,"style":273},"\u003Ctemplate>\n  \u003Csection class=\"card\">\n    \u003Cslot />\n  \u003C/section>\n\u003C/template>\n","BaseCard.vue",[324],[16,25916,25917,25925,25940,25954,25962],{"__ignoreMap":273},[277,25918,25919,25921,25923],{"class":279,"line":280},[277,25920,284],{"class":283},[277,25922,802],{"class":287},[277,25924,305],{"class":283},[277,25926,25927,25929,25931,25933,25935,25938],{"class":279,"line":308},[277,25928,810],{"class":283},[277,25930,4121],{"class":287},[277,25932,816],{"class":291},[277,25934,298],{"class":283},[277,25936,25937],{"class":301},"\"card\"",[277,25939,305],{"class":283},[277,25941,25943,25945,25948,25952],{"class":25942,"line":324},[279,9398],[277,25944,829],{"class":283},[277,25946,25947],{"class":287},"slot",[277,25949,25951],{"class":25950},"s7hpK"," /",[277,25953,305],{"class":283},[277,25955,25956,25958,25960],{"class":279,"line":331},[277,25957,954],{"class":283},[277,25959,4121],{"class":287},[277,25961,305],{"class":283},[277,25963,25964,25966,25968],{"class":279,"line":346},[277,25965,785],{"class":283},[277,25967,802],{"class":287},[277,25969,305],{"class":283},[267,25971,25974],{"className":269,"code":25972,"filename":9339,"highlights":25973,"language":272,"meta":273,"style":273},"\u003Ctemplate>\n  \u003CBaseCard>\n    \u003Ch2>Título dinámico\u003C/h2>\n    \u003Cp>Contenido personalizado desde el padre.\u003C/p>\n  \u003C/BaseCard>\n\u003C/template>\n",[308,346],[16,25975,25976,25984,25994,26007,26020,26029],{"__ignoreMap":273},[277,25977,25978,25980,25982],{"class":279,"line":280},[277,25979,284],{"class":283},[277,25981,802],{"class":287},[277,25983,305],{"class":283},[277,25985,25987,25989,25992],{"class":25986,"line":308},[279,9398],[277,25988,810],{"class":283},[277,25990,25991],{"class":287},"BaseCard",[277,25993,305],{"class":283},[277,25995,25996,25998,26000,26003,26005],{"class":279,"line":324},[277,25997,829],{"class":283},[277,25999,30],{"class":287},[277,26001,26002],{"class":283},">Título dinámico\u003C/",[277,26004,30],{"class":287},[277,26006,305],{"class":283},[277,26008,26009,26011,26013,26016,26018],{"class":279,"line":331},[277,26010,829],{"class":283},[277,26012,21],{"class":287},[277,26014,26015],{"class":283},">Contenido personalizado desde el padre.\u003C/",[277,26017,21],{"class":287},[277,26019,305],{"class":283},[277,26021,26023,26025,26027],{"class":26022,"line":346},[279,9398],[277,26024,954],{"class":283},[277,26026,25991],{"class":287},[277,26028,305],{"class":283},[277,26030,26031,26033,26035],{"class":279,"line":360},[277,26032,785],{"class":283},[277,26034,802],{"class":287},[277,26036,305],{"class":283},[21,26038,26039],{},"Tipos de slots:",[38,26041,26042,26049,26057],{},[41,26043,26044,20699,26047],{},[72,26045,26046],{},"Slot por defecto",[16,26048,25908],{},[41,26050,26051,20699,26054],{},[72,26052,26053],{},"Slots nombrados",[16,26055,26056],{},"\u003Cslot name=\"header\" />",[41,26058,26059,20699,26062],{},[72,26060,26061],{},"Slots con props (scoped slots)",[16,26063,26064],{},"\u003Cslot name=\"row\" :item=\"item\" />",[21,26066,26067],{},"Sintaxis común en el padre:",[38,26069,26070,26076,26085],{},[41,26071,26072,26075],{},[16,26073,26074],{},"#default"," para el slot por defecto.",[41,26077,26078,225,26081,26084],{},[16,26079,26080],{},"#header",[16,26082,26083],{},"#footer",", etc. para slots nombrados.",[41,26086,26087,26090],{},[16,26088,26089],{},"#row=\"{ item }\""," para recibir props desde el hijo.",[3111,26092,26093],{},[21,26094,26095,26098,26099,104],{},[16,26096,26097],{},"#"," es la forma abreviada de ",[16,26100,26101],{},"v-slot:",[30,26103,129],{"id":128},[21,26105,20777,26106,7669],{},[16,26107,25869],{},[38,26109,26110,26113,26119],{},[41,26111,26112],{},"Tienes un componente estructural (card, modal, layout) cuyo contenido cambia según la vista.",[41,26114,26115,26116,1895],{},"Necesitas exponer datos internos del hijo al padre para personalizar el render (",[16,26117,26118],{},"scoped slots",[41,26120,26121,26122,225,26125,26128],{},"Quieres una API flexible sin proliferar props booleanas como ",[16,26123,26124],{},"showHeader",[16,26126,26127],{},"showFooter",", etc.",[30,26130,156],{"id":155},[21,26132,162],{},[38,26134,26135,26138,26141],{},[41,26136,26137],{},"El componente tiene estructura y contenido completamente fijos.",[41,26139,26140],{},"Estás usando slots para esconder lógica que debería vivir en composables o en el store.",[41,26142,26143],{},"El template se vuelve excesivamente complejo por anidación profunda de slots.",[3111,26145,26146],{},[21,26147,26148],{},"En estos casos, menos flexibilidad suele traducirse en mayor mantenibilidad.",[30,26150,190],{"id":189},[192,26152,20821,26154,26156,26157],{"id":26153},"_1-usar-v-slot-en-un-elemento-que-no-es-componente-o-template",[16,26155,25869],{}," en un elemento que no es componente o ",[16,26158,26159],{},"\u003Ctemplate>",[21,26161,26162,26164],{},[16,26163,25869],{}," solo puede usarse en:",[38,26166,26167,26170],{},[41,26168,26169],{},"Un componente.",[41,26171,1860,26172,26174],{},[16,26173,26159],{}," que envuelve contenido para un slot específico.",[267,26176,26180],{"className":269,"code":26177,"filename":26178,"highlights":26179,"language":272,"meta":273,"style":273},"\u003Cdiv v-slot:header>\n  Título\n\u003C/div>\n","Incorrecto.vue",[280],[16,26181,26182,26198,26203],{"__ignoreMap":273},[277,26183,26185,26187,26189,26192,26194,26196],{"class":26184,"line":280},[279,9398],[277,26186,284],{"class":283},[277,26188,4201],{"class":287},[277,26190,26191],{"class":291}," v-slot",[277,26193,353],{"class":283},[277,26195,4138],{"class":291},[277,26197,305],{"class":283},[277,26199,26200],{"class":279,"line":308},[277,26201,26202],{"class":283},"  Título\n",[277,26204,26205,26207,26209],{"class":279,"line":324},[277,26206,785],{"class":283},[277,26208,4201],{"class":287},[277,26210,305],{"class":283},[267,26212,26216],{"className":269,"code":26213,"filename":26214,"highlights":26215,"language":272,"meta":273,"style":273},"\u003CBaseCard>\n  \u003Ctemplate #header>\n    Título\n  \u003C/template>\n\u003C/BaseCard>\n","Correcto.vue",[308,331],[16,26217,26218,26226,26232,26237,26243],{"__ignoreMap":273},[277,26219,26220,26222,26224],{"class":279,"line":280},[277,26221,284],{"class":283},[277,26223,25991],{"class":287},[277,26225,305],{"class":283},[277,26227,26229],{"class":26228,"line":308},[279,9398],[277,26230,26231],{"class":283},"  \u003Ctemplate #header>\n",[277,26233,26234],{"class":279,"line":324},[277,26235,26236],{"class":283},"    Título\n",[277,26238,26240],{"class":26239,"line":331},[279,9398],[277,26241,26242],{"class":283},"  \u003C/template>\n",[277,26244,26245,26247,26249],{"class":279,"line":346},[277,26246,785],{"class":283},[277,26248,25991],{"class":287},[277,26250,305],{"class":283},[192,26252,26254],{"id":26253},"_2-no-destructurar-las-props-de-un-scoped-slot","2) No destructurar las props de un scoped slot",[21,26256,26257,26258,26261],{},"Si el hijo expone ",[16,26259,26260],{},":item=\"row\"",", el padre debe capturar ese objeto correctamente:",[267,26263,26267],{"className":269,"code":26264,"filename":26265,"highlights":26266,"language":272,"meta":273,"style":273},"\u003CDataTable :rows=\"users\">\n  \u003Ctemplate #row=\"{ item }\">\n    \u003Cstrong>{{ item.name }}\u003C/strong>\n  \u003C/template>\n\u003C/DataTable>\n","DataTable.vue",[280,308],[16,26268,26269,26293,26299,26304,26308],{"__ignoreMap":273},[277,26270,26272,26274,26277,26279,26282,26284,26286,26289,26291],{"class":26271,"line":280},[279,9398],[277,26273,284],{"class":283},[277,26275,26276],{"class":287},"DataTable",[277,26278,6244],{"class":283},[277,26280,26281],{"class":291},"rows",[277,26283,298],{"class":283},[277,26285,866],{"class":301},[277,26287,26288],{"class":283},"users",[277,26290,866],{"class":301},[277,26292,305],{"class":283},[277,26294,26296],{"class":26295,"line":308},[279,9398],[277,26297,26298],{"class":283},"  \u003Ctemplate #row=\"{ item }\">\n",[277,26300,26301],{"class":279,"line":324},[277,26302,26303],{"class":283},"    \u003Cstrong>{{ item.name }}\u003C/strong>\n",[277,26305,26306],{"class":279,"line":331},[277,26307,26242],{"class":283},[277,26309,26310,26312,26314],{"class":279,"line":346},[277,26311,785],{"class":283},[277,26313,26276],{"class":287},[277,26315,305],{"class":283},[21,26317,26318],{},"Si no se destructura correctamente, perderás acceso explícito a las props del slot.",[192,26320,26322],{"id":26321},"_3-convertir-los-slots-en-prop-drilling-visual","3) Convertir los slots en “prop drilling visual”",[21,26324,26325],{},"Cuando todo pasa por slots y casi nada por props o eventos bien definidos, la API del componente se vuelve confusa.",[21,26327,25784],{},[38,26329,26330,26336,26342],{},[41,26331,26332,26335],{},[72,26333,26334],{},"Props"," → configuración.",[41,26337,26338,26341],{},[72,26339,26340],{},"Slots"," → estructura/contenido.",[41,26343,26344,26347],{},[72,26345,26346],{},"Emits"," → eventos.",[3111,26349,26350],{},[21,26351,26352],{},"Separar responsabilidades mantiene la API clara y predecible.",[192,26354,26356],{"id":26355},"_4-no-definir-fallback-en-el-hijo","4) No definir fallback en el hijo",[21,26358,26359],{},"Si el padre no provee contenido para un slot, puede quedar un espacio vacío inesperado.",[21,26361,26362],{},"Siempre que tenga sentido, define contenido por defecto:",[267,26364,26366],{"className":269,"code":26365,"filename":25913,"language":272,"meta":273,"style":273},"\u003Cslot>\n  Fallback por defecto\n\u003C/slot>\n",[16,26367,26368,26376,26381],{"__ignoreMap":273},[277,26369,26370,26372,26374],{"class":279,"line":280},[277,26371,284],{"class":283},[277,26373,25947],{"class":287},[277,26375,305],{"class":283},[277,26377,26378],{"class":279,"line":308},[277,26379,26380],{"class":283},"  Fallback por defecto\n",[277,26382,26383,26385,26387],{"class":279,"line":324},[277,26384,785],{"class":283},[277,26386,25947],{"class":287},[277,26388,305],{"class":283},[30,26390,1946],{"id":1945},[192,26392,26394],{"id":26393},"_1-slot-por-defecto-con-fallback","1) Slot por defecto con fallback",[267,26396,26399],{"className":269,"code":26397,"filename":25913,"highlights":26398,"language":272,"meta":273,"style":273},"\u003Ctemplate>\n  \u003Carticle class=\"card\">\n    \u003Cslot>\n      \u003Cp>Contenido por defecto de la tarjeta.\u003C/p>\n    \u003C/slot>\n  \u003C/article>\n\u003C/template>\n",[324,346],[16,26400,26401,26409,26423,26432,26445,26454,26462],{"__ignoreMap":273},[277,26402,26403,26405,26407],{"class":279,"line":280},[277,26404,284],{"class":283},[277,26406,802],{"class":287},[277,26408,305],{"class":283},[277,26410,26411,26413,26415,26417,26419,26421],{"class":279,"line":308},[277,26412,810],{"class":283},[277,26414,813],{"class":287},[277,26416,816],{"class":291},[277,26418,298],{"class":283},[277,26420,25937],{"class":301},[277,26422,305],{"class":283},[277,26424,26426,26428,26430],{"class":26425,"line":324},[279,9398],[277,26427,829],{"class":283},[277,26429,25947],{"class":287},[277,26431,305],{"class":283},[277,26433,26434,26436,26438,26441,26443],{"class":279,"line":331},[277,26435,879],{"class":283},[277,26437,21],{"class":287},[277,26439,26440],{"class":283},">Contenido por defecto de la tarjeta.\u003C/",[277,26442,21],{"class":287},[277,26444,305],{"class":283},[277,26446,26448,26450,26452],{"class":26447,"line":346},[279,9398],[277,26449,922],{"class":283},[277,26451,25947],{"class":287},[277,26453,305],{"class":283},[277,26455,26456,26458,26460],{"class":279,"line":360},[277,26457,954],{"class":283},[277,26459,813],{"class":287},[277,26461,305],{"class":283},[277,26463,26464,26466,26468],{"class":279,"line":371},[277,26465,785],{"class":283},[277,26467,802],{"class":287},[277,26469,305],{"class":283},[192,26471,26473],{"id":26472},"_2-slots-nombrados-para-estructurar-un-layout","2) Slots nombrados para estructurar un layout",[267,26475,26479],{"className":269,"code":26476,"filename":26477,"highlights":26478,"language":272,"meta":273,"style":273},"\u003Ctemplate>\n  \u003Csection class=\"layout\">\n    \u003Cheader>\n      \u003Cslot name=\"header\" />\n    \u003C/header>\n\n    \u003Cmain>\n      \u003Cslot />\n    \u003C/main>\n\n    \u003Cfooter>\n      \u003Cslot name=\"footer\" />\n    \u003C/footer>\n  \u003C/section>\n\u003C/template>\n","BaseLayout.vue",[331,381,436],[16,26480,26481,26489,26504,26512,26531,26539,26543,26552,26563,26571,26575,26584,26602,26610,26618],{"__ignoreMap":273},[277,26482,26483,26485,26487],{"class":279,"line":280},[277,26484,284],{"class":283},[277,26486,802],{"class":287},[277,26488,305],{"class":283},[277,26490,26491,26493,26495,26497,26499,26502],{"class":279,"line":308},[277,26492,810],{"class":283},[277,26494,4121],{"class":287},[277,26496,816],{"class":291},[277,26498,298],{"class":283},[277,26500,26501],{"class":301},"\"layout\"",[277,26503,305],{"class":283},[277,26505,26506,26508,26510],{"class":279,"line":324},[277,26507,829],{"class":283},[277,26509,4138],{"class":287},[277,26511,305],{"class":283},[277,26513,26515,26517,26519,26522,26524,26527,26529],{"class":26514,"line":331},[279,9398],[277,26516,879],{"class":283},[277,26518,25947],{"class":287},[277,26520,26521],{"class":291}," name",[277,26523,298],{"class":283},[277,26525,26526],{"class":301},"\"header\"",[277,26528,25951],{"class":25950},[277,26530,305],{"class":283},[277,26532,26533,26535,26537],{"class":279,"line":346},[277,26534,922],{"class":283},[277,26536,4138],{"class":287},[277,26538,305],{"class":283},[277,26540,26541],{"class":279,"line":360},[277,26542,328],{"emptyLinePlaceholder":327},[277,26544,26545,26547,26550],{"class":279,"line":371},[277,26546,829],{"class":283},[277,26548,26549],{"class":287},"main",[277,26551,305],{"class":283},[277,26553,26555,26557,26559,26561],{"class":26554,"line":381},[279,9398],[277,26556,879],{"class":283},[277,26558,25947],{"class":287},[277,26560,25951],{"class":25950},[277,26562,305],{"class":283},[277,26564,26565,26567,26569],{"class":279,"line":391},[277,26566,922],{"class":283},[277,26568,26549],{"class":287},[277,26570,305],{"class":283},[277,26572,26573],{"class":279,"line":397},[277,26574,328],{"emptyLinePlaceholder":327},[277,26576,26577,26579,26582],{"class":279,"line":402},[277,26578,829],{"class":283},[277,26580,26581],{"class":287},"footer",[277,26583,305],{"class":283},[277,26585,26587,26589,26591,26593,26595,26598,26600],{"class":26586,"line":436},[279,9398],[277,26588,879],{"class":283},[277,26590,25947],{"class":287},[277,26592,26521],{"class":291},[277,26594,298],{"class":283},[277,26596,26597],{"class":301},"\"footer\"",[277,26599,25951],{"class":25950},[277,26601,305],{"class":283},[277,26603,26604,26606,26608],{"class":279,"line":456},[277,26605,922],{"class":283},[277,26607,26581],{"class":287},[277,26609,305],{"class":283},[277,26611,26612,26614,26616],{"class":279,"line":461},[277,26613,954],{"class":283},[277,26615,4121],{"class":287},[277,26617,305],{"class":283},[277,26619,26620,26622,26624],{"class":279,"line":476},[277,26621,785],{"class":283},[277,26623,802],{"class":287},[277,26625,305],{"class":283},[192,26627,26629],{"id":26628},"_3-scoped-slot-para-personalizar-filas-de-una-tabla","3) Scoped slot para personalizar filas de una tabla",[267,26631,26634],{"className":269,"code":26632,"filename":26265,"highlights":26633,"language":272,"meta":273,"style":273},"\u003Ctemplate>\n  \u003Ctable>\n    \u003Ctbody>\n      \u003Ctr v-for=\"row in rows\" :key=\"row.id\">\n        \u003Ctd>\n          \u003Cslot name=\"row\" :item=\"row\">\n            {{ row.name }}\n          \u003C/slot>\n        \u003C/td>\n      \u003C/tr>\n    \u003C/tbody>\n  \u003C/table>\n\u003C/template>\n",[360,381],[16,26635,26636,26644,26652,26660,26682,26691,26715,26720,26730,26739,26747,26755,26763],{"__ignoreMap":273},[277,26637,26638,26640,26642],{"class":279,"line":280},[277,26639,284],{"class":283},[277,26641,802],{"class":287},[277,26643,305],{"class":283},[277,26645,26646,26648,26650],{"class":279,"line":308},[277,26647,810],{"class":283},[277,26649,5392],{"class":287},[277,26651,305],{"class":283},[277,26653,26654,26656,26658],{"class":279,"line":324},[277,26655,829],{"class":283},[277,26657,5414],{"class":287},[277,26659,305],{"class":283},[277,26661,26662,26664,26666,26668,26670,26673,26675,26677,26680],{"class":279,"line":331},[277,26663,879],{"class":283},[277,26665,5398],{"class":287},[277,26667,12785],{"class":291},[277,26669,298],{"class":283},[277,26671,26672],{"class":301},"\"row in rows\"",[277,26674,4317],{"class":291},[277,26676,298],{"class":283},[277,26678,26679],{"class":301},"\"row.id\"",[277,26681,305],{"class":283},[277,26683,26684,26687,26689],{"class":279,"line":346},[277,26685,26686],{"class":283},"        \u003C",[277,26688,5419],{"class":287},[277,26690,305],{"class":283},[277,26692,26694,26697,26699,26701,26703,26706,26709,26711,26713],{"class":26693,"line":360},[279,9398],[277,26695,26696],{"class":283},"          \u003C",[277,26698,25947],{"class":287},[277,26700,26521],{"class":291},[277,26702,298],{"class":283},[277,26704,26705],{"class":301},"\"row\"",[277,26707,26708],{"class":291}," :item",[277,26710,298],{"class":283},[277,26712,26705],{"class":301},[277,26714,305],{"class":283},[277,26716,26717],{"class":279,"line":371},[277,26718,26719],{"class":283},"            {{ row.name }}\n",[277,26721,26723,26726,26728],{"class":26722,"line":381},[279,9398],[277,26724,26725],{"class":283},"          \u003C/",[277,26727,25947],{"class":287},[277,26729,305],{"class":283},[277,26731,26732,26735,26737],{"class":279,"line":391},[277,26733,26734],{"class":283},"        \u003C/",[277,26736,5419],{"class":287},[277,26738,305],{"class":283},[277,26740,26741,26743,26745],{"class":279,"line":397},[277,26742,4175],{"class":283},[277,26744,5398],{"class":287},[277,26746,305],{"class":283},[277,26748,26749,26751,26753],{"class":279,"line":402},[277,26750,922],{"class":283},[277,26752,5414],{"class":287},[277,26754,305],{"class":283},[277,26756,26757,26759,26761],{"class":279,"line":436},[277,26758,954],{"class":283},[277,26760,5392],{"class":287},[277,26762,305],{"class":283},[277,26764,26765,26767,26769],{"class":279,"line":456},[277,26766,785],{"class":283},[277,26768,802],{"class":287},[277,26770,305],{"class":283},[192,26772,26774,26775,26777],{"id":26773},"_4-v-slot-con-argumento-dinámico","4) ",[16,26776,25869],{}," con argumento dinámico",[21,26779,26780],{},"Vue permite argumentos dinámicos usando la misma sintaxis que otras directivas dinámicas:",[267,26782,26786],{"className":269,"code":26783,"filename":26784,"highlights":26785,"language":272,"meta":273,"style":273},"\u003Ctemplate>\n  \u003CWidgetShell>\n    \u003Ctemplate v-slot:[zonaActiva]>\n      \u003Cp>Este bloque entra en una zona dinámica.\u003C/p>\n    \u003C/template>\n  \u003C/WidgetShell>\n\u003C/template>\n","Padre.vue",[324],[16,26787,26788,26796,26805,26817,26830,26838,26846],{"__ignoreMap":273},[277,26789,26790,26792,26794],{"class":279,"line":280},[277,26791,284],{"class":283},[277,26793,802],{"class":287},[277,26795,305],{"class":283},[277,26797,26798,26800,26803],{"class":279,"line":308},[277,26799,810],{"class":283},[277,26801,26802],{"class":287},"WidgetShell",[277,26804,305],{"class":283},[277,26806,26808,26810,26812,26814],{"class":26807,"line":324},[279,9398],[277,26809,829],{"class":283},[277,26811,802],{"class":287},[277,26813,26191],{"class":291},[277,26815,26816],{"class":283},":[zonaActiva]>\n",[277,26818,26819,26821,26823,26826,26828],{"class":279,"line":331},[277,26820,879],{"class":283},[277,26822,21],{"class":287},[277,26824,26825],{"class":283},">Este bloque entra en una zona dinámica.\u003C/",[277,26827,21],{"class":287},[277,26829,305],{"class":283},[277,26831,26832,26834,26836],{"class":279,"line":346},[277,26833,922],{"class":283},[277,26835,802],{"class":287},[277,26837,305],{"class":283},[277,26839,26840,26842,26844],{"class":279,"line":360},[277,26841,954],{"class":283},[277,26843,26802],{"class":287},[277,26845,305],{"class":283},[277,26847,26848,26850,26852],{"class":279,"line":371},[277,26849,785],{"class":283},[277,26851,802],{"class":287},[277,26853,305],{"class":283},[3111,26855,26856],{},[21,26857,26858],{},"Úsalo con moderación. Si existen muchas zonas dinámicas, probablemente la API del componente necesite simplificarse.",[11,26860,26862],{"id":26861},"ejemplo-con-composition-api","Ejemplo con Composition API",[21,26864,26865],{},"El hijo expone una tabla base y el padre decide cómo renderizar la celda de acciones.",[267,26867,26869],{"className":269,"code":26868,"filename":26265,"language":272,"meta":273,"style":273},"\u003Cscript setup>\ndefineProps({\n  rows: {\n    type: Array,\n    required: true,\n  },\n});\n\u003C/script>\n\n\u003Ctemplate>\n  \u003Ctable class=\"min-w-full border-collapse\">\n    \u003Cthead>\n      \u003Ctr>\n        \u003Cth class=\"text-left\">Nombre\u003C/th>\n        \u003Cth class=\"text-left\">Rol\u003C/th>\n        \u003Cth class=\"text-left\">Acciones\u003C/th>\n      \u003C/tr>\n    \u003C/thead>\n    \u003Ctbody>\n      \u003Ctr v-for=\"user in rows\" :key=\"user.id\">\n        \u003Ctd>{{ user.name }}\u003C/td>\n        \u003Ctd>{{ user.role }}\u003C/td>\n        \u003Ctd>\n          \u003Cslot name=\"actions\" :user=\"user\">\n            \u003Cbutton type=\"button\">Ver perfil\u003C/button>\n          \u003C/slot>\n        \u003C/td>\n      \u003C/tr>\n    \u003C/tbody>\n  \u003C/table>\n\u003C/template>\n",[16,26870,26871,26881,26888,26893,26898,26907,26911,26915,26923,26927,26935,26950,26958,26966,26986,27005,27024,27032,27040,27048,27069,27081,27094,27102,27124,27144,27152,27160,27168,27176,27184],{"__ignoreMap":273},[277,26872,26873,26875,26877,26879],{"class":279,"line":280},[277,26874,284],{"class":283},[277,26876,288],{"class":287},[277,26878,292],{"class":291},[277,26880,305],{"class":283},[277,26882,26883,26886],{"class":279,"line":308},[277,26884,26885],{"class":291},"defineProps",[277,26887,1066],{"class":283},[277,26889,26890],{"class":279,"line":324},[277,26891,26892],{"class":283},"  rows: {\n",[277,26894,26895],{"class":279,"line":331},[277,26896,26897],{"class":283},"    type: Array,\n",[277,26899,26900,26903,26905],{"class":279,"line":346},[277,26901,26902],{"class":283},"    required: ",[277,26904,2149],{"class":356},[277,26906,1077],{"class":283},[277,26908,26909],{"class":279,"line":360},[277,26910,1131],{"class":283},[277,26912,26913],{"class":279,"line":371},[277,26914,21454],{"class":283},[277,26916,26917,26919,26921],{"class":279,"line":381},[277,26918,785],{"class":283},[277,26920,288],{"class":287},[277,26922,305],{"class":283},[277,26924,26925],{"class":279,"line":391},[277,26926,328],{"emptyLinePlaceholder":327},[277,26928,26929,26931,26933],{"class":279,"line":397},[277,26930,284],{"class":283},[277,26932,802],{"class":287},[277,26934,305],{"class":283},[277,26936,26937,26939,26941,26943,26945,26948],{"class":279,"line":402},[277,26938,810],{"class":283},[277,26940,5392],{"class":287},[277,26942,816],{"class":291},[277,26944,298],{"class":283},[277,26946,26947],{"class":301},"\"min-w-full border-collapse\"",[277,26949,305],{"class":283},[277,26951,26952,26954,26956],{"class":279,"line":436},[277,26953,829],{"class":283},[277,26955,5395],{"class":287},[277,26957,305],{"class":283},[277,26959,26960,26962,26964],{"class":279,"line":456},[277,26961,879],{"class":283},[277,26963,5398],{"class":287},[277,26965,305],{"class":283},[277,26967,26968,26970,26972,26974,26976,26979,26982,26984],{"class":279,"line":461},[277,26969,26686],{"class":283},[277,26971,5401],{"class":287},[277,26973,816],{"class":291},[277,26975,298],{"class":283},[277,26977,26978],{"class":301},"\"text-left\"",[277,26980,26981],{"class":283},">Nombre\u003C/",[277,26983,5401],{"class":287},[277,26985,305],{"class":283},[277,26987,26988,26990,26992,26994,26996,26998,27001,27003],{"class":279,"line":476},[277,26989,26686],{"class":283},[277,26991,5401],{"class":287},[277,26993,816],{"class":291},[277,26995,298],{"class":283},[277,26997,26978],{"class":301},[277,26999,27000],{"class":283},">Rol\u003C/",[277,27002,5401],{"class":287},[277,27004,305],{"class":283},[277,27006,27007,27009,27011,27013,27015,27017,27020,27022],{"class":279,"line":500},[277,27008,26686],{"class":283},[277,27010,5401],{"class":287},[277,27012,816],{"class":291},[277,27014,298],{"class":283},[277,27016,26978],{"class":301},[277,27018,27019],{"class":283},">Acciones\u003C/",[277,27021,5401],{"class":287},[277,27023,305],{"class":283},[277,27025,27026,27028,27030],{"class":279,"line":505},[277,27027,4175],{"class":283},[277,27029,5398],{"class":287},[277,27031,305],{"class":283},[277,27033,27034,27036,27038],{"class":279,"line":520},[277,27035,922],{"class":283},[277,27037,5395],{"class":287},[277,27039,305],{"class":283},[277,27041,27042,27044,27046],{"class":279,"line":539},[277,27043,829],{"class":283},[277,27045,5414],{"class":287},[277,27047,305],{"class":283},[277,27049,27050,27052,27054,27056,27058,27061,27063,27065,27067],{"class":279,"line":545},[277,27051,879],{"class":283},[277,27053,5398],{"class":287},[277,27055,12785],{"class":291},[277,27057,298],{"class":283},[277,27059,27060],{"class":301},"\"user in rows\"",[277,27062,4317],{"class":291},[277,27064,298],{"class":283},[277,27066,12797],{"class":301},[277,27068,305],{"class":283},[277,27070,27071,27073,27075,27077,27079],{"class":279,"line":550},[277,27072,26686],{"class":283},[277,27074,5419],{"class":287},[277,27076,22766],{"class":283},[277,27078,5419],{"class":287},[277,27080,305],{"class":283},[277,27082,27083,27085,27087,27090,27092],{"class":279,"line":578},[277,27084,26686],{"class":283},[277,27086,5419],{"class":287},[277,27088,27089],{"class":283},">{{ user.role }}\u003C/",[277,27091,5419],{"class":287},[277,27093,305],{"class":283},[277,27095,27096,27098,27100],{"class":279,"line":583},[277,27097,26686],{"class":283},[277,27099,5419],{"class":287},[277,27101,305],{"class":283},[277,27103,27104,27106,27108,27110,27112,27115,27118,27120,27122],{"class":279,"line":588},[277,27105,26696],{"class":283},[277,27107,25947],{"class":287},[277,27109,26521],{"class":291},[277,27111,298],{"class":283},[277,27113,27114],{"class":301},"\"actions\"",[277,27116,27117],{"class":291}," :user",[277,27119,298],{"class":283},[277,27121,21518],{"class":301},[277,27123,305],{"class":283},[277,27125,27126,27129,27131,27133,27135,27137,27140,27142],{"class":279,"line":606},[277,27127,27128],{"class":283},"            \u003C",[277,27130,4267],{"class":287},[277,27132,4270],{"class":291},[277,27134,298],{"class":283},[277,27136,4275],{"class":301},[277,27138,27139],{"class":283},">Ver perfil\u003C/",[277,27141,4267],{"class":287},[277,27143,305],{"class":283},[277,27145,27146,27148,27150],{"class":279,"line":614},[277,27147,26725],{"class":283},[277,27149,25947],{"class":287},[277,27151,305],{"class":283},[277,27153,27154,27156,27158],{"class":279,"line":625},[277,27155,26734],{"class":283},[277,27157,5419],{"class":287},[277,27159,305],{"class":283},[277,27161,27162,27164,27166],{"class":279,"line":637},[277,27163,4175],{"class":283},[277,27165,5398],{"class":287},[277,27167,305],{"class":283},[277,27169,27170,27172,27174],{"class":279,"line":646},[277,27171,922],{"class":283},[277,27173,5414],{"class":287},[277,27175,305],{"class":283},[277,27177,27178,27180,27182],{"class":279,"line":668},[277,27179,954],{"class":283},[277,27181,5392],{"class":287},[277,27183,305],{"class":283},[277,27185,27186,27188,27190],{"class":279,"line":673},[277,27187,785],{"class":283},[277,27189,802],{"class":287},[277,27191,305],{"class":283},[267,27193,27196],{"className":269,"code":27194,"filename":27195,"language":272,"meta":273,"style":273},"\u003Cscript setup>\nimport { ref } from \"vue\";\nimport DataTable from \"./DataTable.vue\";\n\nconst users = ref([\n  { id: 1, name: \"Ana\", role: \"Admin\", active: true },\n  { id: 2, name: \"Luis\", role: \"Editor\", active: false },\n]);\n\nfunction toggleStatus(user) {\n  user.active = !user.active;\n}\n\u003C/script>\n\n\u003Ctemplate>\n  \u003CDataTable :rows=\"users\">\n    \u003Ctemplate #actions=\"{ user }\">\n      \u003Cbutton type=\"button\" @click=\"toggleStatus(user)\">\n        {{ user.active ? \"Desactivar\" : \"Activar\" }}\n      \u003C/button>\n    \u003C/template>\n  \u003C/DataTable>\n\u003C/template>\n","UsersView.vue",[16,27197,27198,27208,27220,27234,27238,27250,27273,27294,27298,27302,27316,27328,27332,27340,27344,27352,27368,27391,27412,27417,27425,27433,27441],{"__ignoreMap":273},[277,27199,27200,27202,27204,27206],{"class":279,"line":280},[277,27201,284],{"class":283},[277,27203,288],{"class":287},[277,27205,292],{"class":291},[277,27207,305],{"class":283},[277,27209,27210,27212,27214,27216,27218],{"class":279,"line":308},[277,27211,312],{"class":311},[277,27213,11006],{"class":283},[277,27215,318],{"class":311},[277,27217,18148],{"class":301},[277,27219,18151],{"class":283},[277,27221,27222,27224,27227,27229,27232],{"class":279,"line":324},[277,27223,312],{"class":311},[277,27225,27226],{"class":283}," DataTable ",[277,27228,318],{"class":311},[277,27230,27231],{"class":301}," \"./DataTable.vue\"",[277,27233,18151],{"class":283},[277,27235,27236],{"class":279,"line":331},[277,27237,328],{"emptyLinePlaceholder":327},[277,27239,27240,27242,27244,27246,27248],{"class":279,"line":346},[277,27241,405],{"class":311},[277,27243,11021],{"class":356},[277,27245,340],{"class":311},[277,27247,413],{"class":291},[277,27249,2104],{"class":283},[277,27251,27252,27254,27256,27258,27260,27263,27266,27269,27271],{"class":279,"line":360},[277,27253,2109],{"class":283},[277,27255,2072],{"class":356},[277,27257,22620],{"class":283},[277,27259,17584],{"class":301},[277,27261,27262],{"class":283},", role: ",[277,27264,27265],{"class":301},"\"Admin\"",[277,27267,27268],{"class":283},", active: ",[277,27270,2149],{"class":356},[277,27272,2132],{"class":283},[277,27274,27275,27277,27279,27281,27283,27285,27288,27290,27292],{"class":279,"line":371},[277,27276,2109],{"class":283},[277,27278,2139],{"class":356},[277,27280,22620],{"class":283},[277,27282,22646],{"class":301},[277,27284,27262],{"class":283},[277,27286,27287],{"class":301},"\"Editor\"",[277,27289,27268],{"class":283},[277,27291,2123],{"class":356},[277,27293,2132],{"class":283},[277,27295,27296],{"class":279,"line":381},[277,27297,22684],{"class":283},[277,27299,27300],{"class":279,"line":391},[277,27301,328],{"emptyLinePlaceholder":327},[277,27303,27304,27306,27309,27311,27314],{"class":279,"line":397},[277,27305,2460],{"class":311},[277,27307,27308],{"class":291}," toggleStatus",[277,27310,448],{"class":283},[277,27312,27313],{"class":349},"user",[277,27315,2476],{"class":283},[277,27317,27318,27321,27323,27325],{"class":279,"line":402},[277,27319,27320],{"class":283},"  user.active ",[277,27322,298],{"class":311},[277,27324,2288],{"class":311},[277,27326,27327],{"class":283},"user.active;\n",[277,27329,27330],{"class":279,"line":436},[277,27331,394],{"class":283},[277,27333,27334,27336,27338],{"class":279,"line":456},[277,27335,785],{"class":283},[277,27337,288],{"class":287},[277,27339,305],{"class":283},[277,27341,27342],{"class":279,"line":461},[277,27343,328],{"emptyLinePlaceholder":327},[277,27345,27346,27348,27350],{"class":279,"line":476},[277,27347,284],{"class":283},[277,27349,802],{"class":287},[277,27351,305],{"class":283},[277,27353,27354,27356,27358,27361,27363,27366],{"class":279,"line":500},[277,27355,810],{"class":283},[277,27357,26276],{"class":287},[277,27359,27360],{"class":291}," :rows",[277,27362,298],{"class":283},[277,27364,27365],{"class":301},"\"users\"",[277,27367,305],{"class":283},[277,27369,27370,27372,27374,27377,27380,27382,27384,27387,27389],{"class":279,"line":505},[277,27371,829],{"class":283},[277,27373,802],{"class":287},[277,27375,27376],{"class":283}," #",[277,27378,27379],{"class":291},"actions",[277,27381,298],{"class":283},[277,27383,866],{"class":301},[277,27385,27386],{"class":283},"{ user }",[277,27388,866],{"class":301},[277,27390,305],{"class":283},[277,27392,27393,27395,27397,27399,27401,27403,27405,27407,27410],{"class":279,"line":520},[277,27394,879],{"class":283},[277,27396,4267],{"class":287},[277,27398,4270],{"class":291},[277,27400,298],{"class":283},[277,27402,4275],{"class":301},[277,27404,4278],{"class":291},[277,27406,298],{"class":283},[277,27408,27409],{"class":301},"\"toggleStatus(user)\"",[277,27411,305],{"class":283},[277,27413,27414],{"class":279,"line":539},[277,27415,27416],{"class":283},"        {{ user.active ? \"Desactivar\" : \"Activar\" }}\n",[277,27418,27419,27421,27423],{"class":279,"line":545},[277,27420,4175],{"class":283},[277,27422,4267],{"class":287},[277,27424,305],{"class":283},[277,27426,27427,27429,27431],{"class":279,"line":550},[277,27428,922],{"class":283},[277,27430,802],{"class":287},[277,27432,305],{"class":283},[277,27434,27435,27437,27439],{"class":279,"line":578},[277,27436,954],{"class":283},[277,27438,26276],{"class":287},[277,27440,305],{"class":283},[277,27442,27443,27445,27447],{"class":279,"line":583},[277,27444,785],{"class":283},[277,27446,802],{"class":287},[277,27448,305],{"class":283},[11,27450,27452],{"id":27451},"ejemplo-con-options-api","Ejemplo con Options API",[21,27454,27455],{},"El mismo comportamiento, ahora utilizando Options API para mantener equivalencia conceptual.",[267,27457,27459],{"className":269,"code":27458,"filename":26265,"language":272,"meta":273,"style":273},"\u003Cscript>\nexport default {\n  props: {\n    rows: {\n      type: Array,\n      required: true,\n    },\n  },\n};\n\u003C/script>\n\n\u003Ctemplate>\n  \u003Ctable class=\"min-w-full border-collapse\">\n    \u003Cthead>\n      \u003Ctr>\n        \u003Cth class=\"text-left\">Nombre\u003C/th>\n        \u003Cth class=\"text-left\">Rol\u003C/th>\n        \u003Cth class=\"text-left\">Acciones\u003C/th>\n      \u003C/tr>\n    \u003C/thead>\n    \u003Ctbody>\n      \u003Ctr v-for=\"user in rows\" :key=\"user.id\">\n        \u003Ctd>{{ user.name }}\u003C/td>\n        \u003Ctd>{{ user.role }}\u003C/td>\n        \u003Ctd>\n          \u003Cslot name=\"actions\" :user=\"user\">\n            \u003Cbutton type=\"button\">Ver perfil\u003C/button>\n          \u003C/slot>\n        \u003C/td>\n      \u003C/tr>\n    \u003C/tbody>\n  \u003C/table>\n\u003C/template>\n",[16,27460,27461,27469,27477,27482,27487,27492,27501,27505,27509,27513,27521,27525,27533,27547,27555,27563,27581,27599,27617,27625,27633,27641,27661,27673,27685,27693,27713,27731,27739,27747,27755,27763,27771],{"__ignoreMap":273},[277,27462,27463,27465,27467],{"class":279,"line":280},[277,27464,284],{"class":283},[277,27466,288],{"class":287},[277,27468,305],{"class":283},[277,27470,27471,27473,27475],{"class":279,"line":308},[277,27472,1057],{"class":311},[277,27474,1060],{"class":311},[277,27476,343],{"class":283},[277,27478,27479],{"class":279,"line":324},[277,27480,27481],{"class":283},"  props: {\n",[277,27483,27484],{"class":279,"line":331},[277,27485,27486],{"class":283},"    rows: {\n",[277,27488,27489],{"class":279,"line":346},[277,27490,27491],{"class":283},"      type: Array,\n",[277,27493,27494,27497,27499],{"class":279,"line":360},[277,27495,27496],{"class":283},"      required: ",[277,27498,2149],{"class":356},[277,27500,1077],{"class":283},[277,27502,27503],{"class":279,"line":371},[277,27504,7016],{"class":283},[277,27506,27507],{"class":279,"line":381},[277,27508,1131],{"class":283},[277,27510,27511],{"class":279,"line":391},[277,27512,18255],{"class":283},[277,27514,27515,27517,27519],{"class":279,"line":397},[277,27516,785],{"class":283},[277,27518,288],{"class":287},[277,27520,305],{"class":283},[277,27522,27523],{"class":279,"line":402},[277,27524,328],{"emptyLinePlaceholder":327},[277,27526,27527,27529,27531],{"class":279,"line":436},[277,27528,284],{"class":283},[277,27530,802],{"class":287},[277,27532,305],{"class":283},[277,27534,27535,27537,27539,27541,27543,27545],{"class":279,"line":456},[277,27536,810],{"class":283},[277,27538,5392],{"class":287},[277,27540,816],{"class":291},[277,27542,298],{"class":283},[277,27544,26947],{"class":301},[277,27546,305],{"class":283},[277,27548,27549,27551,27553],{"class":279,"line":461},[277,27550,829],{"class":283},[277,27552,5395],{"class":287},[277,27554,305],{"class":283},[277,27556,27557,27559,27561],{"class":279,"line":476},[277,27558,879],{"class":283},[277,27560,5398],{"class":287},[277,27562,305],{"class":283},[277,27564,27565,27567,27569,27571,27573,27575,27577,27579],{"class":279,"line":500},[277,27566,26686],{"class":283},[277,27568,5401],{"class":287},[277,27570,816],{"class":291},[277,27572,298],{"class":283},[277,27574,26978],{"class":301},[277,27576,26981],{"class":283},[277,27578,5401],{"class":287},[277,27580,305],{"class":283},[277,27582,27583,27585,27587,27589,27591,27593,27595,27597],{"class":279,"line":505},[277,27584,26686],{"class":283},[277,27586,5401],{"class":287},[277,27588,816],{"class":291},[277,27590,298],{"class":283},[277,27592,26978],{"class":301},[277,27594,27000],{"class":283},[277,27596,5401],{"class":287},[277,27598,305],{"class":283},[277,27600,27601,27603,27605,27607,27609,27611,27613,27615],{"class":279,"line":520},[277,27602,26686],{"class":283},[277,27604,5401],{"class":287},[277,27606,816],{"class":291},[277,27608,298],{"class":283},[277,27610,26978],{"class":301},[277,27612,27019],{"class":283},[277,27614,5401],{"class":287},[277,27616,305],{"class":283},[277,27618,27619,27621,27623],{"class":279,"line":539},[277,27620,4175],{"class":283},[277,27622,5398],{"class":287},[277,27624,305],{"class":283},[277,27626,27627,27629,27631],{"class":279,"line":545},[277,27628,922],{"class":283},[277,27630,5395],{"class":287},[277,27632,305],{"class":283},[277,27634,27635,27637,27639],{"class":279,"line":550},[277,27636,829],{"class":283},[277,27638,5414],{"class":287},[277,27640,305],{"class":283},[277,27642,27643,27645,27647,27649,27651,27653,27655,27657,27659],{"class":279,"line":578},[277,27644,879],{"class":283},[277,27646,5398],{"class":287},[277,27648,12785],{"class":291},[277,27650,298],{"class":283},[277,27652,27060],{"class":301},[277,27654,4317],{"class":291},[277,27656,298],{"class":283},[277,27658,12797],{"class":301},[277,27660,305],{"class":283},[277,27662,27663,27665,27667,27669,27671],{"class":279,"line":583},[277,27664,26686],{"class":283},[277,27666,5419],{"class":287},[277,27668,22766],{"class":283},[277,27670,5419],{"class":287},[277,27672,305],{"class":283},[277,27674,27675,27677,27679,27681,27683],{"class":279,"line":588},[277,27676,26686],{"class":283},[277,27678,5419],{"class":287},[277,27680,27089],{"class":283},[277,27682,5419],{"class":287},[277,27684,305],{"class":283},[277,27686,27687,27689,27691],{"class":279,"line":606},[277,27688,26686],{"class":283},[277,27690,5419],{"class":287},[277,27692,305],{"class":283},[277,27694,27695,27697,27699,27701,27703,27705,27707,27709,27711],{"class":279,"line":614},[277,27696,26696],{"class":283},[277,27698,25947],{"class":287},[277,27700,26521],{"class":291},[277,27702,298],{"class":283},[277,27704,27114],{"class":301},[277,27706,27117],{"class":291},[277,27708,298],{"class":283},[277,27710,21518],{"class":301},[277,27712,305],{"class":283},[277,27714,27715,27717,27719,27721,27723,27725,27727,27729],{"class":279,"line":625},[277,27716,27128],{"class":283},[277,27718,4267],{"class":287},[277,27720,4270],{"class":291},[277,27722,298],{"class":283},[277,27724,4275],{"class":301},[277,27726,27139],{"class":283},[277,27728,4267],{"class":287},[277,27730,305],{"class":283},[277,27732,27733,27735,27737],{"class":279,"line":637},[277,27734,26725],{"class":283},[277,27736,25947],{"class":287},[277,27738,305],{"class":283},[277,27740,27741,27743,27745],{"class":279,"line":646},[277,27742,26734],{"class":283},[277,27744,5419],{"class":287},[277,27746,305],{"class":283},[277,27748,27749,27751,27753],{"class":279,"line":668},[277,27750,4175],{"class":283},[277,27752,5398],{"class":287},[277,27754,305],{"class":283},[277,27756,27757,27759,27761],{"class":279,"line":673},[277,27758,922],{"class":283},[277,27760,5414],{"class":287},[277,27762,305],{"class":283},[277,27764,27765,27767,27769],{"class":279,"line":679},[277,27766,954],{"class":283},[277,27768,5392],{"class":287},[277,27770,305],{"class":283},[277,27772,27773,27775,27777],{"class":279,"line":684},[277,27774,785],{"class":283},[277,27776,802],{"class":287},[277,27778,305],{"class":283},[267,27780,27782],{"className":269,"code":27781,"filename":27195,"language":272,"meta":273,"style":273},"\u003Cscript>\nimport DataTable from \"./DataTable.vue\";\n\nexport default {\n  components: { DataTable },\n  data() {\n    return {\n      users: [\n        { id: 1, name: \"Ana\", role: \"Admin\", active: true },\n        { id: 2, name: \"Luis\", role: \"Editor\", active: false },\n      ],\n    };\n  },\n  methods: {\n    toggleStatus(user) {\n      user.active = !user.active;\n    },\n  },\n};\n\u003C/script>\n\n\u003Ctemplate>\n  \u003CDataTable :rows=\"users\">\n    \u003Ctemplate #actions=\"{ user }\">\n      \u003Cbutton type=\"button\" @click=\"toggleStatus(user)\">\n        {{ user.active ? \"Desactivar\" : \"Activar\" }}\n      \u003C/button>\n    \u003C/template>\n  \u003C/DataTable>\n\u003C/template>\n",[16,27783,27784,27792,27804,27808,27816,27821,27827,27833,27837,27857,27877,27881,27885,27889,27893,27904,27915,27919,27923,27927,27935,27939,27947,27961,27981,28001,28005,28013,28021,28029],{"__ignoreMap":273},[277,27785,27786,27788,27790],{"class":279,"line":280},[277,27787,284],{"class":283},[277,27789,288],{"class":287},[277,27791,305],{"class":283},[277,27793,27794,27796,27798,27800,27802],{"class":279,"line":308},[277,27795,312],{"class":311},[277,27797,27226],{"class":283},[277,27799,318],{"class":311},[277,27801,27231],{"class":301},[277,27803,18151],{"class":283},[277,27805,27806],{"class":279,"line":324},[277,27807,328],{"emptyLinePlaceholder":327},[277,27809,27810,27812,27814],{"class":279,"line":331},[277,27811,1057],{"class":311},[277,27813,1060],{"class":311},[277,27815,343],{"class":283},[277,27817,27818],{"class":279,"line":346},[277,27819,27820],{"class":283},"  components: { DataTable },\n",[277,27822,27823,27825],{"class":279,"line":360},[277,27824,1086],{"class":291},[277,27826,473],{"class":283},[277,27828,27829,27831],{"class":279,"line":371},[277,27830,1093],{"class":311},[277,27832,343],{"class":283},[277,27834,27835],{"class":279,"line":381},[277,27836,22894],{"class":283},[277,27838,27839,27841,27843,27845,27847,27849,27851,27853,27855],{"class":279,"line":391},[277,27840,2664],{"class":283},[277,27842,2072],{"class":356},[277,27844,22620],{"class":283},[277,27846,17584],{"class":301},[277,27848,27262],{"class":283},[277,27850,27265],{"class":301},[277,27852,27268],{"class":283},[277,27854,2149],{"class":356},[277,27856,2132],{"class":283},[277,27858,27859,27861,27863,27865,27867,27869,27871,27873,27875],{"class":279,"line":397},[277,27860,2664],{"class":283},[277,27862,2139],{"class":356},[277,27864,22620],{"class":283},[277,27866,22646],{"class":301},[277,27868,27262],{"class":283},[277,27870,27287],{"class":301},[277,27872,27268],{"class":283},[277,27874,2123],{"class":356},[277,27876,2132],{"class":283},[277,27878,27879],{"class":279,"line":402},[277,27880,10174],{"class":283},[277,27882,27883],{"class":279,"line":436},[277,27884,18478],{"class":283},[277,27886,27887],{"class":279,"line":456},[277,27888,1131],{"class":283},[277,27890,27891],{"class":279,"line":461},[277,27892,1140],{"class":283},[277,27894,27895,27898,27900,27902],{"class":279,"line":476},[277,27896,27897],{"class":291},"    toggleStatus",[277,27899,448],{"class":283},[277,27901,27313],{"class":349},[277,27903,2476],{"class":283},[277,27905,27906,27909,27911,27913],{"class":279,"line":500},[277,27907,27908],{"class":283},"      user.active ",[277,27910,298],{"class":311},[277,27912,2288],{"class":311},[277,27914,27327],{"class":283},[277,27916,27917],{"class":279,"line":505},[277,27918,7016],{"class":283},[277,27920,27921],{"class":279,"line":520},[277,27922,1131],{"class":283},[277,27924,27925],{"class":279,"line":539},[277,27926,18255],{"class":283},[277,27928,27929,27931,27933],{"class":279,"line":545},[277,27930,785],{"class":283},[277,27932,288],{"class":287},[277,27934,305],{"class":283},[277,27936,27937],{"class":279,"line":550},[277,27938,328],{"emptyLinePlaceholder":327},[277,27940,27941,27943,27945],{"class":279,"line":578},[277,27942,284],{"class":283},[277,27944,802],{"class":287},[277,27946,305],{"class":283},[277,27948,27949,27951,27953,27955,27957,27959],{"class":279,"line":583},[277,27950,810],{"class":283},[277,27952,26276],{"class":287},[277,27954,27360],{"class":291},[277,27956,298],{"class":283},[277,27958,27365],{"class":301},[277,27960,305],{"class":283},[277,27962,27963,27965,27967,27969,27971,27973,27975,27977,27979],{"class":279,"line":588},[277,27964,829],{"class":283},[277,27966,802],{"class":287},[277,27968,27376],{"class":283},[277,27970,27379],{"class":291},[277,27972,298],{"class":283},[277,27974,866],{"class":301},[277,27976,27386],{"class":283},[277,27978,866],{"class":301},[277,27980,305],{"class":283},[277,27982,27983,27985,27987,27989,27991,27993,27995,27997,27999],{"class":279,"line":606},[277,27984,879],{"class":283},[277,27986,4267],{"class":287},[277,27988,4270],{"class":291},[277,27990,298],{"class":283},[277,27992,4275],{"class":301},[277,27994,4278],{"class":291},[277,27996,298],{"class":283},[277,27998,27409],{"class":301},[277,28000,305],{"class":283},[277,28002,28003],{"class":279,"line":614},[277,28004,27416],{"class":283},[277,28006,28007,28009,28011],{"class":279,"line":625},[277,28008,4175],{"class":283},[277,28010,4267],{"class":287},[277,28012,305],{"class":283},[277,28014,28015,28017,28019],{"class":279,"line":637},[277,28016,922],{"class":283},[277,28018,802],{"class":287},[277,28020,305],{"class":283},[277,28022,28023,28025,28027],{"class":279,"line":646},[277,28024,954],{"class":283},[277,28026,26276],{"class":287},[277,28028,305],{"class":283},[277,28030,28031,28033,28035],{"class":279,"line":668},[277,28032,785],{"class":283},[277,28034,802],{"class":287},[277,28036,305],{"class":283},[30,28038,1596],{"id":1595},[38,28040,28041,28046,28049,28056,28059,28062],{},[41,28042,28043,28045],{},[16,28044,25869],{}," transforma componentes rígidos en piezas reutilizables y expresivas.",[41,28047,28048],{},"Usa el slot por defecto para el contenido principal.",[41,28050,28051,28052,225,28054,1808],{},"Usa slots nombrados para estructura (",[16,28053,4138],{},[16,28055,26581],{},[41,28057,28058],{},"Usa scoped slots cuando el hijo deba compartir datos y el padre controlar el render.",[41,28060,28061],{},"Define fallback cuando tenga sentido para evitar huecos vacíos.",[41,28063,28064],{},"Mantén la API clara: props para configuración, slots para contenido y emits para eventos.",[1606,28066,28067],{},"html pre.shiki code .sVt8B, html code.shiki .sVt8B{--shiki-default:#24292E;--shiki-dark:#E1E4E8}html pre.shiki code .s9eBZ, html code.shiki .s9eBZ{--shiki-default:#22863A;--shiki-dark:#85E89D}html pre.shiki code .sScJk, html code.shiki .sScJk{--shiki-default:#6F42C1;--shiki-dark:#B392F0}html pre.shiki code .sZZnC, html code.shiki .sZZnC{--shiki-default:#032F62;--shiki-dark:#9ECBFF}html pre.shiki code .s7hpK, html code.shiki .s7hpK{--shiki-default:#B31D28;--shiki-default-font-style:italic;--shiki-dark:#FDAEB7;--shiki-dark-font-style:italic}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 .sj4cs, html code.shiki .sj4cs{--shiki-default:#005CC5;--shiki-dark:#79B8FF}html pre.shiki code .szBVR, html code.shiki .szBVR{--shiki-default:#D73A49;--shiki-dark:#F97583}html pre.shiki code .s4XuR, html code.shiki .s4XuR{--shiki-default:#E36209;--shiki-dark:#FFAB70}",{"title":273,"searchDepth":308,"depth":308,"links":28069},[28070,28071,28072,28073,28074,28081,28088],{"id":20624,"depth":308,"text":20625},{"id":24652,"depth":308,"text":24653},{"id":128,"depth":308,"text":129},{"id":155,"depth":308,"text":156},{"id":189,"depth":308,"text":190,"children":28075},[28076,28078,28079,28080],{"id":26153,"depth":324,"text":28077},"1) Usar v-slot en un elemento que no es componente o \u003Ctemplate>",{"id":26253,"depth":324,"text":26254},{"id":26321,"depth":324,"text":26322},{"id":26355,"depth":324,"text":26356},{"id":1945,"depth":308,"text":1946,"children":28082},[28083,28084,28085,28086],{"id":26393,"depth":324,"text":26394},{"id":26472,"depth":324,"text":26473},{"id":26628,"depth":324,"text":26629},{"id":26773,"depth":324,"text":28087},"4) v-slot con argumento dinámico",{"id":1595,"depth":308,"text":1596},"https://res.cloudinary.com/denj4fg7f/image/upload/v1771508914/directives-vue-v-slot-guide_wr2iyy.png","Portada del artículo Directivas en Vue: v-slot","2026-02-19","Aprende a dominar v-slot en Vue 3: slots por defecto, nombrados y con props (scoped slots), con ejemplos claros en Composition API y Options API.",{"script":28094},[28095],{"type":1632,"key":1633,"data-nuxt-schema-org":327,"nodes":28096},[28097],{"headline":28098,"author":28099,"datePublished":28100,"@type":1640},"Directivas en Vue: v-slot con ejemplos claros y prácticos",{"name":1637,"@type":1638},"2026-02-19T08:00:00-05:00",{"updatedAt":28100,"coverCaption":28102,"author":1637,"keywords":28103},"Usa v-slot para construir componentes más flexibles y reutilizables.",[1645,25869,28104,26118,28105,271,971],"slots","componentes reutilizables","/blog/directives-vue-v-slot-guide.es",[28108],{"headline":28098,"author":28109,"datePublished":28100,"@type":1640},{"name":1637,"@type":1638},{"title":25861,"description":28092},"blog/directives-vue-v-slot-guide.es",[28113,28114,28116,28117],{"tag":20588,"color":20589},{"tag":26340,"color":28115},"#8E44AD",{"tag":1668,"color":1669},{"tag":1671,"color":1672},"cKASG35D1sU2CI29oLKyyZGU4f14DyJd0bjZXfP3iac",{"id":28120,"title":28121,"body":28122,"cover":30923,"coverAlt":30924,"date":30925,"description":30926,"draft":1627,"extension":1628,"head":30927,"locale":1641,"meta":30935,"navigation":327,"path":30939,"schemaOrg":30940,"seo":30943,"series":20582,"seriesDescription":20583,"seriesOrder":360,"seriesTitle":20584,"slug":1656,"stem":30944,"tags":30945,"__hash__":30952},"blog/blog/directives-vue-v-model-guide.es.md","Directivas en Vue: v-model",{"type":8,"value":28123,"toc":30898},[28124,28129,28134,28136,28142,28147,28165,28167,28172,28176,28195,28217,28221,28224,28247,28250,28267,28277,28279,28284,28286,28310,28312,28316,28333,28335,28339,28341,28404,28413,28418,28425,28427,28457,28464,28467,28492,28496,28499,28521,28525,28531,28533,28537,28665,28795,28802,28946,29082,29086,29213,29343,29347,29349,29358,29501,30094,30096,30103,30285,30854,30856,30861,30864,30866,30896],[11,28125,20605,28127],{"id":28126},"directivas-en-vue-v-model",[16,28128,17971],{},[21,28130,28131,28133],{},[16,28132,17971],{}," reduce fricción en formularios porque sincroniza la UI y el estado con una sola declaración. Bien utilizado, hace que tus componentes sean más legibles y consistentes; mal aplicado, puede ocultar flujos de datos confusos y bugs sutiles.",[30,28135,20625],{"id":20624},[21,28137,28138,28139,28141],{},"En interfaces reales, gran parte de la experiencia depende de formularios y filtros.\n",[16,28140,17971],{}," te permite declarar la sincronización entre vista y estado sin manipular el DOM manualmente, manteniendo el código más predecible y fácil de mantener.",[21,28143,11996,28144,28146],{},[16,28145,17971],{}," puedes:",[38,28148,28149,28159,28162],{},[41,28150,28151,28152,28155,28156,104],{},"Evitar boilerplate repetitivo de ",[16,28153,28154],{},":value"," + ",[16,28157,28158],{},"@input",[41,28160,28161],{},"Mantener alineado lo que ve el usuario con el estado reactivo.",[41,28163,28164],{},"Estandarizar la API de componentes de formulario reutilizables.",[30,28166,61],{"id":60},[21,28168,20529,28169,28171],{},[16,28170,17971],{}," es azúcar sintáctica para enlazar un valor y escuchar su actualización.",[192,28173,28175],{"id":28174},"en-elementos-nativos","En elementos nativos",[38,28177,28178,28184],{},[41,28179,28180,28183],{},[16,28181,28182],{},"v-model=\"email\""," equivale a enlazar el valor y escuchar el evento correspondiente.",[41,28185,28186,28187,225,28189,225,28192,1808],{},"Vue adapta automáticamente la prop y el evento según el tipo de control (",[16,28188,18041],{},[16,28190,28191],{},"change",[16,28193,28194],{},"checkbox",[21,28196,28197,28198,28201,28202,28155,28204,28206,28207,28210,28211,28214,28215,104],{},"Por ejemplo, en un ",[16,28199,28200],{},"\u003Cinput type=\"text\">",", se traduce a ",[16,28203,28154],{},[16,28205,28158],{},".\nEn un ",[16,28208,28209],{},"\u003Cinput type=\"checkbox\">",", enlaza ",[16,28212,28213],{},"checked"," y escucha ",[16,28216,28191],{},[192,28218,28220],{"id":28219},"en-componentes","En componentes",[21,28222,28223],{},"En Vue 3:",[38,28225,28226,28232,28238],{},[41,28227,28228,28229,104],{},"Por defecto usa la prop ",[16,28230,28231],{},"modelValue",[41,28233,28234,28235,104],{},"Espera el evento ",[16,28236,28237],{},"update:modelValue",[41,28239,28240,28241,225,28244,104],{},"Puedes usar argumentos para modelos adicionales: ",[16,28242,28243],{},"v-model:title",[16,28245,28246],{},"v-model:filters",[21,28248,28249],{},"También soporta modificadores como:",[38,28251,28252,28257,28262],{},[41,28253,28254],{},[16,28255,28256],{},".trim",[41,28258,28259],{},[16,28260,28261],{},".number",[41,28263,28264],{},[16,28265,28266],{},".lazy",[21,28268,28269,28270,28273,28274,28276],{},"Desde Vue 3.3+, puedes usar ",[16,28271,28272],{},"defineModel()"," en ",[16,28275,19250],{}," para simplificar la definición del contrato del modelo en componentes.",[30,28278,129],{"id":128},[21,28280,20777,28281,28283],{},[16,28282,17971],{}," cuando el objetivo principal sea sincronizar datos de entrada con el estado de la aplicación.",[21,28285,3305],{},[38,28287,28288,28291,28294,28307],{},[41,28289,28290],{},"Formularios de registro, login o perfil.",[41,28292,28293],{},"Filtros de búsqueda en tiempo real.",[41,28295,28296,28297,225,28300,225,28303,28306],{},"Componentes de UI reutilizables (",[16,28298,28299],{},"TextInput",[16,28301,28302],{},"Toggle",[16,28304,28305],{},"Select",") con contrato consistente.",[41,28308,28309],{},"Configuraciones rápidas de interfaz (switches, sliders, preferencias).",[30,28311,156],{"id":155},[21,28313,7664,28314,7669],{},[16,28315,17971],{},[38,28317,28318,28324,28327,28330],{},[41,28319,28320,28321,28323],{},"El dato es de solo lectura o derivado (",[16,28322,1732],{}," sin setter).",[41,28325,28326],{},"Necesitas trazabilidad estricta de cada cambio por reglas de dominio complejas.",[41,28328,28329],{},"El procesamiento por pulsación es costoso y requiere un pipeline explícito (debounce, throttle, validaciones pesadas).",[41,28331,28332],{},"Quieres mantener un flujo explícito de eventos de negocio, no solo de UI.",[30,28334,190],{"id":189},[192,28336,28338],{"id":28337},"_1-mutar-props-directamente-en-el-hijo","1) Mutar props directamente en el hijo",[21,28340,24892],{},[267,28342,28345],{"className":269,"code":28343,"filename":28344,"language":272,"meta":273,"style":273},"\u003Cscript setup lang=\"ts\">\nconst props = defineProps\u003C{ modelValue: string }>()\nprops.modelValue = \"nuevo valor\"\n\u003C/script>\n","Evitar",[16,28346,28347,28363,28386,28396],{"__ignoreMap":273},[277,28348,28349,28351,28353,28355,28357,28359,28361],{"class":279,"line":280},[277,28350,284],{"class":283},[277,28352,288],{"class":287},[277,28354,292],{"class":291},[277,28356,295],{"class":291},[277,28358,298],{"class":283},[277,28360,302],{"class":301},[277,28362,305],{"class":283},[277,28364,28365,28367,28370,28372,28375,28377,28379,28381,28383],{"class":279,"line":308},[277,28366,405],{"class":311},[277,28368,28369],{"class":356}," props",[277,28371,340],{"class":311},[277,28373,28374],{"class":291}," defineProps",[277,28376,21368],{"class":283},[277,28378,28231],{"class":349},[277,28380,353],{"class":311},[277,28382,21376],{"class":356},[277,28384,28385],{"class":283}," }>()\n",[277,28387,28388,28391,28393],{"class":279,"line":324},[277,28389,28390],{"class":283},"props.modelValue ",[277,28392,298],{"class":311},[277,28394,28395],{"class":301}," \"nuevo valor\"\n",[277,28397,28398,28400,28402],{"class":279,"line":331},[277,28399,785],{"class":283},[277,28401,288],{"class":287},[277,28403,305],{"class":283},[21,28405,28406,28407,28409,28410,104],{},"Correcto: emite ",[16,28408,28237],{}," o usa ",[16,28411,28412],{},"defineModel",[3111,28414,28415],{},[21,28416,28417],{},"Las props son de solo lectura. Mutarlas rompe el flujo unidireccional de datos.",[192,28419,28421,28422,28424],{"id":28420},"_2-enlazar-v-model-a-expresiones-no-escribibles","2) Enlazar ",[16,28423,17971],{}," a expresiones no escribibles",[21,28426,24892],{},[267,28428,28430],{"className":269,"code":28429,"filename":28344,"language":272,"meta":273,"style":273},"\u003Cinput v-model=\"user.name.toUpperCase()\" />\n",[16,28431,28432],{"__ignoreMap":273},[277,28433,28434,28436,28438,28440,28442,28444,28447,28450,28453,28455],{"class":279,"line":280},[277,28435,284],{"class":283},[277,28437,18041],{"class":287},[277,28439,23751],{"class":291},[277,28441,298],{"class":283},[277,28443,866],{"class":301},[277,28445,28446],{"class":283},"user.name.",[277,28448,28449],{"class":291},"toUpperCase",[277,28451,28452],{"class":283},"()",[277,28454,866],{"class":301},[277,28456,4325],{"class":283},[3111,28458,28459],{},[21,28460,28461,28463],{},[16,28462,17971],{}," requiere una referencia escribible. Una expresión derivada no tiene setter.",[21,28465,28466],{},"Correcto:",[267,28468,28471],{"className":269,"code":28469,"filename":28470,"language":272,"meta":273,"style":273},"\u003Cinput v-model=\"user.name\" />\n","Recomendado",[16,28472,28473],{"__ignoreMap":273},[277,28474,28475,28477,28479,28481,28483,28485,28488,28490],{"class":279,"line":280},[277,28476,284],{"class":283},[277,28478,18041],{"class":287},[277,28480,23751],{"class":291},[277,28482,298],{"class":283},[277,28484,866],{"class":301},[277,28486,28487],{"class":283},"user.name",[277,28489,866],{"class":301},[277,28491,4325],{"class":283},[192,28493,28495],{"id":28494},"_3-no-usar-modificadores-donde-sí-aportan-valor","3) No usar modificadores donde sí aportan valor",[21,28497,28498],{},"Ejemplo:",[38,28500,28501,28506,28516],{},[41,28502,15938,28503,28505],{},[16,28504,28256],{},", guardas espacios innecesarios.",[41,28507,15938,28508,28510,28511,28513,28514,104],{},[16,28509,28261],{},", recibes ",[16,28512,5753],{}," cuando esperabas ",[16,28515,7971],{},[41,28517,15938,28518,28520],{},[16,28519,28266],{},", actualizas en cada pulsación cuando solo necesitabas al perder el foco.",[192,28522,28524],{"id":28523},"_4-meter-demasiada-lógica-en-el-setter-del-modelo","4) Meter demasiada lógica en el setter del modelo",[21,28526,28527,28528,28530],{},"Mantén el flujo de ",[16,28529,17971],{}," simple y mueve reglas complejas a funciones o composables.\nEl modelo debe sincronizar estado; la lógica de negocio no debería vivir en el setter.",[11,28532,1946],{"id":1945},[30,28534,28536],{"id":28535},"_1-input-de-texto-con-saneamiento-básico","1) Input de texto con saneamiento básico",[267,28538,28541],{"className":269,"code":28539,"filename":271,"highlights":28540,"language":272,"meta":273,"style":273},"\u003Cscript setup lang=\"ts\">\nimport { ref } from \"vue\";\n\nconst fullName = ref(\"\");\n\u003C/script>\n\n\u003Ctemplate>\n  \u003Clabel>\n    Nombre completo\n    \u003Cinput v-model.trim=\"fullName\" type=\"text\" />\n  \u003C/label>\n\u003C/template>\n",[397],[16,28542,28543,28559,28571,28575,28592,28600,28604,28612,28620,28625,28649,28657],{"__ignoreMap":273},[277,28544,28545,28547,28549,28551,28553,28555,28557],{"class":279,"line":280},[277,28546,284],{"class":283},[277,28548,288],{"class":287},[277,28550,292],{"class":291},[277,28552,295],{"class":291},[277,28554,298],{"class":283},[277,28556,302],{"class":301},[277,28558,305],{"class":283},[277,28560,28561,28563,28565,28567,28569],{"class":279,"line":308},[277,28562,312],{"class":311},[277,28564,11006],{"class":283},[277,28566,318],{"class":311},[277,28568,18148],{"class":301},[277,28570,18151],{"class":283},[277,28572,28573],{"class":279,"line":324},[277,28574,328],{"emptyLinePlaceholder":327},[277,28576,28577,28579,28582,28584,28586,28588,28590],{"class":279,"line":331},[277,28578,405],{"class":311},[277,28580,28581],{"class":356}," fullName",[277,28583,340],{"class":311},[277,28585,413],{"class":291},[277,28587,448],{"class":283},[277,28589,25316],{"class":301},[277,28591,18277],{"class":283},[277,28593,28594,28596,28598],{"class":279,"line":346},[277,28595,785],{"class":283},[277,28597,288],{"class":287},[277,28599,305],{"class":283},[277,28601,28602],{"class":279,"line":360},[277,28603,328],{"emptyLinePlaceholder":327},[277,28605,28606,28608,28610],{"class":279,"line":371},[277,28607,284],{"class":283},[277,28609,802],{"class":287},[277,28611,305],{"class":283},[277,28613,28614,28616,28618],{"class":279,"line":381},[277,28615,810],{"class":283},[277,28617,3875],{"class":287},[277,28619,305],{"class":283},[277,28621,28622],{"class":279,"line":391},[277,28623,28624],{"class":283},"    Nombre completo\n",[277,28626,28628,28630,28632,28635,28637,28640,28642,28644,28647],{"class":28627,"line":397},[279,9398],[277,28629,829],{"class":283},[277,28631,18041],{"class":287},[277,28633,28634],{"class":291}," v-model.trim",[277,28636,298],{"class":283},[277,28638,28639],{"class":301},"\"fullName\"",[277,28641,4270],{"class":291},[277,28643,298],{"class":283},[277,28645,28646],{"class":301},"\"text\"",[277,28648,4325],{"class":283},[277,28650,28651,28653,28655],{"class":279,"line":402},[277,28652,954],{"class":283},[277,28654,3875],{"class":287},[277,28656,305],{"class":283},[277,28658,28659,28661,28663],{"class":279,"line":436},[277,28660,785],{"class":283},[277,28662,802],{"class":287},[277,28664,305],{"class":283},[267,28666,28669],{"className":269,"code":28667,"filename":971,"highlights":28668,"language":272,"meta":273,"style":273},"\u003Cscript lang=\"ts\">\nexport default {\n  data() {\n    return {\n      fullName: \"\",\n    };\n  },\n};\n\u003C/script>\n\n\u003Ctemplate>\n  \u003Clabel>\n    Nombre completo\n    \u003Cinput v-model.trim=\"fullName\" type=\"text\" />\n  \u003C/label>\n\u003C/template>\n",[461],[16,28670,28671,28685,28693,28699,28705,28714,28718,28722,28726,28734,28738,28746,28754,28758,28779,28787],{"__ignoreMap":273},[277,28672,28673,28675,28677,28679,28681,28683],{"class":279,"line":280},[277,28674,284],{"class":283},[277,28676,288],{"class":287},[277,28678,295],{"class":291},[277,28680,298],{"class":283},[277,28682,302],{"class":301},[277,28684,305],{"class":283},[277,28686,28687,28689,28691],{"class":279,"line":308},[277,28688,1057],{"class":311},[277,28690,1060],{"class":311},[277,28692,343],{"class":283},[277,28694,28695,28697],{"class":279,"line":324},[277,28696,1086],{"class":291},[277,28698,473],{"class":283},[277,28700,28701,28703],{"class":279,"line":331},[277,28702,1093],{"class":311},[277,28704,343],{"class":283},[277,28706,28707,28710,28712],{"class":279,"line":346},[277,28708,28709],{"class":283},"      fullName: ",[277,28711,25316],{"class":301},[277,28713,1077],{"class":283},[277,28715,28716],{"class":279,"line":360},[277,28717,18478],{"class":283},[277,28719,28720],{"class":279,"line":371},[277,28721,1131],{"class":283},[277,28723,28724],{"class":279,"line":381},[277,28725,18255],{"class":283},[277,28727,28728,28730,28732],{"class":279,"line":391},[277,28729,785],{"class":283},[277,28731,288],{"class":287},[277,28733,305],{"class":283},[277,28735,28736],{"class":279,"line":397},[277,28737,328],{"emptyLinePlaceholder":327},[277,28739,28740,28742,28744],{"class":279,"line":402},[277,28741,284],{"class":283},[277,28743,802],{"class":287},[277,28745,305],{"class":283},[277,28747,28748,28750,28752],{"class":279,"line":436},[277,28749,810],{"class":283},[277,28751,3875],{"class":287},[277,28753,305],{"class":283},[277,28755,28756],{"class":279,"line":456},[277,28757,28624],{"class":283},[277,28759,28761,28763,28765,28767,28769,28771,28773,28775,28777],{"class":28760,"line":461},[279,9398],[277,28762,829],{"class":283},[277,28764,18041],{"class":287},[277,28766,28634],{"class":291},[277,28768,298],{"class":283},[277,28770,28639],{"class":301},[277,28772,4270],{"class":291},[277,28774,298],{"class":283},[277,28776,28646],{"class":301},[277,28778,4325],{"class":283},[277,28780,28781,28783,28785],{"class":279,"line":476},[277,28782,954],{"class":283},[277,28784,3875],{"class":287},[277,28786,305],{"class":283},[277,28788,28789,28791,28793],{"class":279,"line":500},[277,28790,785],{"class":283},[277,28792,802],{"class":287},[277,28794,305],{"class":283},[30,28796,28798,28799],{"id":28797},"_2-input-numérico-con-v-modelnumber","2) Input numérico con ",[16,28800,28801],{},"v-model.number",[267,28803,28806],{"className":269,"code":28804,"filename":271,"highlights":28805,"language":272,"meta":273,"style":273},"\u003Cscript setup lang=\"ts\">\nimport { ref } from \"vue\";\n\nconst age = ref\u003Cnumber | null>(null);\n\u003C/script>\n\n\u003Ctemplate>\n  \u003Clabel>\n    Edad\n    \u003Cinput v-model.number=\"age\" type=\"number\" min=\"0\" />\n  \u003C/label>\n\u003C/template>\n",[397],[16,28807,28808,28824,28836,28840,28865,28873,28877,28885,28893,28898,28930,28938],{"__ignoreMap":273},[277,28809,28810,28812,28814,28816,28818,28820,28822],{"class":279,"line":280},[277,28811,284],{"class":283},[277,28813,288],{"class":287},[277,28815,292],{"class":291},[277,28817,295],{"class":291},[277,28819,298],{"class":283},[277,28821,302],{"class":301},[277,28823,305],{"class":283},[277,28825,28826,28828,28830,28832,28834],{"class":279,"line":308},[277,28827,312],{"class":311},[277,28829,11006],{"class":283},[277,28831,318],{"class":311},[277,28833,18148],{"class":301},[277,28835,18151],{"class":283},[277,28837,28838],{"class":279,"line":324},[277,28839,328],{"emptyLinePlaceholder":327},[277,28841,28842,28844,28847,28849,28851,28853,28855,28857,28859,28861,28863],{"class":279,"line":331},[277,28843,405],{"class":311},[277,28845,28846],{"class":356}," age",[277,28848,340],{"class":311},[277,28850,413],{"class":291},[277,28852,284],{"class":283},[277,28854,7971],{"class":356},[277,28856,421],{"class":311},[277,28858,424],{"class":356},[277,28860,427],{"class":283},[277,28862,430],{"class":356},[277,28864,18277],{"class":283},[277,28866,28867,28869,28871],{"class":279,"line":346},[277,28868,785],{"class":283},[277,28870,288],{"class":287},[277,28872,305],{"class":283},[277,28874,28875],{"class":279,"line":360},[277,28876,328],{"emptyLinePlaceholder":327},[277,28878,28879,28881,28883],{"class":279,"line":371},[277,28880,284],{"class":283},[277,28882,802],{"class":287},[277,28884,305],{"class":283},[277,28886,28887,28889,28891],{"class":279,"line":381},[277,28888,810],{"class":283},[277,28890,3875],{"class":287},[277,28892,305],{"class":283},[277,28894,28895],{"class":279,"line":391},[277,28896,28897],{"class":283},"    Edad\n",[277,28899,28901,28903,28905,28908,28910,28913,28915,28917,28920,28923,28925,28928],{"class":28900,"line":397},[279,9398],[277,28902,829],{"class":283},[277,28904,18041],{"class":287},[277,28906,28907],{"class":291}," v-model.number",[277,28909,298],{"class":283},[277,28911,28912],{"class":301},"\"age\"",[277,28914,4270],{"class":291},[277,28916,298],{"class":283},[277,28918,28919],{"class":301},"\"number\"",[277,28921,28922],{"class":291}," min",[277,28924,298],{"class":283},[277,28926,28927],{"class":301},"\"0\"",[277,28929,4325],{"class":283},[277,28931,28932,28934,28936],{"class":279,"line":402},[277,28933,954],{"class":283},[277,28935,3875],{"class":287},[277,28937,305],{"class":283},[277,28939,28940,28942,28944],{"class":279,"line":436},[277,28941,785],{"class":283},[277,28943,802],{"class":287},[277,28945,305],{"class":283},[267,28947,28950],{"className":269,"code":28948,"filename":971,"highlights":28949,"language":272,"meta":273,"style":273},"\u003Cscript lang=\"ts\">\nexport default {\n  data() {\n    return {\n      age: null,\n    };\n  },\n};\n\u003C/script>\n\n\u003Ctemplate>\n  \u003Clabel>\n    Edad\n    \u003Cinput v-model.number=\"age\" type=\"number\" min=\"0\" />\n  \u003C/label>\n\u003C/template>\n",[461],[16,28951,28952,28966,28974,28980,28986,28995,28999,29003,29007,29015,29019,29027,29035,29039,29066,29074],{"__ignoreMap":273},[277,28953,28954,28956,28958,28960,28962,28964],{"class":279,"line":280},[277,28955,284],{"class":283},[277,28957,288],{"class":287},[277,28959,295],{"class":291},[277,28961,298],{"class":283},[277,28963,302],{"class":301},[277,28965,305],{"class":283},[277,28967,28968,28970,28972],{"class":279,"line":308},[277,28969,1057],{"class":311},[277,28971,1060],{"class":311},[277,28973,343],{"class":283},[277,28975,28976,28978],{"class":279,"line":324},[277,28977,1086],{"class":291},[277,28979,473],{"class":283},[277,28981,28982,28984],{"class":279,"line":331},[277,28983,1093],{"class":311},[277,28985,343],{"class":283},[277,28987,28988,28991,28993],{"class":279,"line":346},[277,28989,28990],{"class":283},"      age: ",[277,28992,430],{"class":356},[277,28994,1077],{"class":283},[277,28996,28997],{"class":279,"line":360},[277,28998,18478],{"class":283},[277,29000,29001],{"class":279,"line":371},[277,29002,1131],{"class":283},[277,29004,29005],{"class":279,"line":381},[277,29006,18255],{"class":283},[277,29008,29009,29011,29013],{"class":279,"line":391},[277,29010,785],{"class":283},[277,29012,288],{"class":287},[277,29014,305],{"class":283},[277,29016,29017],{"class":279,"line":397},[277,29018,328],{"emptyLinePlaceholder":327},[277,29020,29021,29023,29025],{"class":279,"line":402},[277,29022,284],{"class":283},[277,29024,802],{"class":287},[277,29026,305],{"class":283},[277,29028,29029,29031,29033],{"class":279,"line":436},[277,29030,810],{"class":283},[277,29032,3875],{"class":287},[277,29034,305],{"class":283},[277,29036,29037],{"class":279,"line":456},[277,29038,28897],{"class":283},[277,29040,29042,29044,29046,29048,29050,29052,29054,29056,29058,29060,29062,29064],{"class":29041,"line":461},[279,9398],[277,29043,829],{"class":283},[277,29045,18041],{"class":287},[277,29047,28907],{"class":291},[277,29049,298],{"class":283},[277,29051,28912],{"class":301},[277,29053,4270],{"class":291},[277,29055,298],{"class":283},[277,29057,28919],{"class":301},[277,29059,28922],{"class":291},[277,29061,298],{"class":283},[277,29063,28927],{"class":301},[277,29065,4325],{"class":283},[277,29067,29068,29070,29072],{"class":279,"line":476},[277,29069,954],{"class":283},[277,29071,3875],{"class":287},[277,29073,305],{"class":283},[277,29075,29076,29078,29080],{"class":279,"line":500},[277,29077,785],{"class":283},[277,29079,802],{"class":287},[277,29081,305],{"class":283},[30,29083,29085],{"id":29084},"_3-checkbox-para-estado-booleano","3) Checkbox para estado booleano",[267,29087,29090],{"className":269,"code":29088,"filename":271,"highlights":29089,"language":272,"meta":273,"style":273},"\u003Cscript setup lang=\"ts\">\nimport { ref } from \"vue\";\n\nconst acceptedTerms = ref(false);\n\u003C/script>\n\n\u003Ctemplate>\n  \u003Clabel>\n    \u003Cinput v-model=\"acceptedTerms\" type=\"checkbox\" />\n    Acepto términos y condiciones\n  \u003C/label>\n\u003C/template>\n",[391],[16,29091,29092,29108,29120,29124,29141,29149,29153,29161,29169,29192,29197,29205],{"__ignoreMap":273},[277,29093,29094,29096,29098,29100,29102,29104,29106],{"class":279,"line":280},[277,29095,284],{"class":283},[277,29097,288],{"class":287},[277,29099,292],{"class":291},[277,29101,295],{"class":291},[277,29103,298],{"class":283},[277,29105,302],{"class":301},[277,29107,305],{"class":283},[277,29109,29110,29112,29114,29116,29118],{"class":279,"line":308},[277,29111,312],{"class":311},[277,29113,11006],{"class":283},[277,29115,318],{"class":311},[277,29117,18148],{"class":301},[277,29119,18151],{"class":283},[277,29121,29122],{"class":279,"line":324},[277,29123,328],{"emptyLinePlaceholder":327},[277,29125,29126,29128,29131,29133,29135,29137,29139],{"class":279,"line":331},[277,29127,405],{"class":311},[277,29129,29130],{"class":356}," acceptedTerms",[277,29132,340],{"class":311},[277,29134,413],{"class":291},[277,29136,448],{"class":283},[277,29138,2123],{"class":356},[277,29140,18277],{"class":283},[277,29142,29143,29145,29147],{"class":279,"line":346},[277,29144,785],{"class":283},[277,29146,288],{"class":287},[277,29148,305],{"class":283},[277,29150,29151],{"class":279,"line":360},[277,29152,328],{"emptyLinePlaceholder":327},[277,29154,29155,29157,29159],{"class":279,"line":371},[277,29156,284],{"class":283},[277,29158,802],{"class":287},[277,29160,305],{"class":283},[277,29162,29163,29165,29167],{"class":279,"line":381},[277,29164,810],{"class":283},[277,29166,3875],{"class":287},[277,29168,305],{"class":283},[277,29170,29172,29174,29176,29178,29180,29183,29185,29187,29190],{"class":29171,"line":391},[279,9398],[277,29173,829],{"class":283},[277,29175,18041],{"class":287},[277,29177,23751],{"class":291},[277,29179,298],{"class":283},[277,29181,29182],{"class":301},"\"acceptedTerms\"",[277,29184,4270],{"class":291},[277,29186,298],{"class":283},[277,29188,29189],{"class":301},"\"checkbox\"",[277,29191,4325],{"class":283},[277,29193,29194],{"class":279,"line":397},[277,29195,29196],{"class":283},"    Acepto términos y condiciones\n",[277,29198,29199,29201,29203],{"class":279,"line":402},[277,29200,954],{"class":283},[277,29202,3875],{"class":287},[277,29204,305],{"class":283},[277,29206,29207,29209,29211],{"class":279,"line":436},[277,29208,785],{"class":283},[277,29210,802],{"class":287},[277,29212,305],{"class":283},[267,29214,29217],{"className":269,"code":29215,"filename":971,"highlights":29216,"language":272,"meta":273,"style":273},"\u003Cscript lang=\"ts\">\nexport default {\n  data() {\n    return {\n      acceptedTerms: false,\n    };\n  },\n};\n\u003C/script>\n\n\u003Ctemplate>\n  \u003Clabel>\n    \u003Cinput v-model=\"acceptedTerms\" type=\"checkbox\" />\n    Acepto términos y condiciones\n  \u003C/label>\n\u003C/template>\n",[456],[16,29218,29219,29233,29241,29247,29253,29262,29266,29270,29274,29282,29286,29294,29302,29323,29327,29335],{"__ignoreMap":273},[277,29220,29221,29223,29225,29227,29229,29231],{"class":279,"line":280},[277,29222,284],{"class":283},[277,29224,288],{"class":287},[277,29226,295],{"class":291},[277,29228,298],{"class":283},[277,29230,302],{"class":301},[277,29232,305],{"class":283},[277,29234,29235,29237,29239],{"class":279,"line":308},[277,29236,1057],{"class":311},[277,29238,1060],{"class":311},[277,29240,343],{"class":283},[277,29242,29243,29245],{"class":279,"line":324},[277,29244,1086],{"class":291},[277,29246,473],{"class":283},[277,29248,29249,29251],{"class":279,"line":331},[277,29250,1093],{"class":311},[277,29252,343],{"class":283},[277,29254,29255,29258,29260],{"class":279,"line":346},[277,29256,29257],{"class":283},"      acceptedTerms: ",[277,29259,2123],{"class":356},[277,29261,1077],{"class":283},[277,29263,29264],{"class":279,"line":360},[277,29265,18478],{"class":283},[277,29267,29268],{"class":279,"line":371},[277,29269,1131],{"class":283},[277,29271,29272],{"class":279,"line":381},[277,29273,18255],{"class":283},[277,29275,29276,29278,29280],{"class":279,"line":391},[277,29277,785],{"class":283},[277,29279,288],{"class":287},[277,29281,305],{"class":283},[277,29283,29284],{"class":279,"line":397},[277,29285,328],{"emptyLinePlaceholder":327},[277,29287,29288,29290,29292],{"class":279,"line":402},[277,29289,284],{"class":283},[277,29291,802],{"class":287},[277,29293,305],{"class":283},[277,29295,29296,29298,29300],{"class":279,"line":436},[277,29297,810],{"class":283},[277,29299,3875],{"class":287},[277,29301,305],{"class":283},[277,29303,29305,29307,29309,29311,29313,29315,29317,29319,29321],{"class":29304,"line":456},[279,9398],[277,29306,829],{"class":283},[277,29308,18041],{"class":287},[277,29310,23751],{"class":291},[277,29312,298],{"class":283},[277,29314,29182],{"class":301},[277,29316,4270],{"class":291},[277,29318,298],{"class":283},[277,29320,29189],{"class":301},[277,29322,4325],{"class":283},[277,29324,29325],{"class":279,"line":461},[277,29326,29196],{"class":283},[277,29328,29329,29331,29333],{"class":279,"line":476},[277,29330,954],{"class":283},[277,29332,3875],{"class":287},[277,29334,305],{"class":283},[277,29336,29337,29339,29341],{"class":279,"line":500},[277,29338,785],{"class":283},[277,29340,802],{"class":287},[277,29342,305],{"class":283},[30,29344,29346],{"id":29345},"_4-ejemplos-completos","4) Ejemplos completos",[192,29348,26862],{"id":26861},[21,29350,29351,29354,29355,29357],{},[16,29352,29353],{},"SearchInput"," reutilizable con ",[16,29356,28412],{}," + pantalla de filtros:",[267,29359,29363],{"className":269,"code":29360,"filename":29361,"highlights":29362,"language":272,"meta":273,"style":273},"\u003Cscript setup lang=\"ts\">\nconst model = defineModel\u003Cstring>({ default: \"\" });\n\u003C/script>\n\n\u003Ctemplate>\n  \u003Clabel class=\"field\">\n    Buscar\n    \u003Cinput\n      v-model.trim=\"model\"\n      type=\"text\"\n      placeholder=\"Escribe para filtrar...\"\n    />\n  \u003C/label>\n\u003C/template>\n","SearchInput.vue",[391],[16,29364,29365,29381,29405,29413,29417,29425,29440,29445,29451,29462,29471,29480,29485,29493],{"__ignoreMap":273},[277,29366,29367,29369,29371,29373,29375,29377,29379],{"class":279,"line":280},[277,29368,284],{"class":283},[277,29370,288],{"class":287},[277,29372,292],{"class":291},[277,29374,295],{"class":291},[277,29376,298],{"class":283},[277,29378,302],{"class":301},[277,29380,305],{"class":283},[277,29382,29383,29385,29388,29390,29393,29395,29397,29400,29402],{"class":279,"line":308},[277,29384,405],{"class":311},[277,29386,29387],{"class":356}," model",[277,29389,340],{"class":311},[277,29391,29392],{"class":291}," defineModel",[277,29394,284],{"class":283},[277,29396,5753],{"class":356},[277,29398,29399],{"class":283},">({ default: ",[277,29401,25316],{"class":301},[277,29403,29404],{"class":283}," });\n",[277,29406,29407,29409,29411],{"class":279,"line":324},[277,29408,785],{"class":283},[277,29410,288],{"class":287},[277,29412,305],{"class":283},[277,29414,29415],{"class":279,"line":331},[277,29416,328],{"emptyLinePlaceholder":327},[277,29418,29419,29421,29423],{"class":279,"line":346},[277,29420,284],{"class":283},[277,29422,802],{"class":287},[277,29424,305],{"class":283},[277,29426,29427,29429,29431,29433,29435,29438],{"class":279,"line":360},[277,29428,810],{"class":283},[277,29430,3875],{"class":287},[277,29432,816],{"class":291},[277,29434,298],{"class":283},[277,29436,29437],{"class":301},"\"field\"",[277,29439,305],{"class":283},[277,29441,29442],{"class":279,"line":371},[277,29443,29444],{"class":283},"    Buscar\n",[277,29446,29447,29449],{"class":279,"line":381},[277,29448,829],{"class":283},[277,29450,11549],{"class":287},[277,29452,29454,29457,29459],{"class":29453,"line":391},[279,9398],[277,29455,29456],{"class":291},"      v-model.trim",[277,29458,298],{"class":283},[277,29460,29461],{"class":301},"\"model\"\n",[277,29463,29464,29466,29468],{"class":279,"line":397},[277,29465,11563],{"class":291},[277,29467,298],{"class":283},[277,29469,29470],{"class":301},"\"text\"\n",[277,29472,29473,29475,29477],{"class":279,"line":402},[277,29474,11573],{"class":291},[277,29476,298],{"class":283},[277,29478,29479],{"class":301},"\"Escribe para filtrar...\"\n",[277,29481,29482],{"class":279,"line":436},[277,29483,29484],{"class":283},"    />\n",[277,29486,29487,29489,29491],{"class":279,"line":456},[277,29488,954],{"class":283},[277,29490,3875],{"class":287},[277,29492,305],{"class":283},[277,29494,29495,29497,29499],{"class":279,"line":461},[277,29496,785],{"class":283},[277,29498,802],{"class":287},[277,29500,305],{"class":283},[267,29502,29505],{"className":269,"code":29503,"filename":29504,"language":272,"meta":273,"style":273},"\u003Cscript setup lang=\"ts\">\nimport { computed, ref } from \"vue\";\nimport SearchInput from \"./SearchInput.vue\";\n\nconst query = ref(\"\");\nconst minPrice = ref\u003Cnumber | null>(null);\nconst onlyInStock = ref(false);\n\nconst products = ref([\n  { id: 1, name: \"Teclado mecánico\", price: 89, stock: true },\n  { id: 2, name: \"Mouse ergonómico\", price: 45, stock: false },\n  { id: 3, name: 'Monitor 27\"', price: 299, stock: true },\n]);\n\nconst filteredProducts = computed(() =>\n  products.value.filter((p) => {\n    const matchesQuery =\n      p.name.toLowerCase().includes(query.value.toLowerCase());\n    const matchesPrice =\n      minPrice.value == null || p.price >= minPrice.value;\n    const matchesStock = !onlyInStock.value || p.stock;\n\n    return matchesQuery && matchesPrice && matchesStock;\n  })\n);\n\u003C/script>\n\n\u003Ctemplate>\n  \u003Csection>\n    \u003Ch2>Filtros\u003C/h2>\n\n    \u003CSearchInput v-model=\"query\" />\n\n    \u003Clabel>\n      Precio mínimo\n      \u003Cinput v-model.number=\"minPrice\" type=\"number\" min=\"0\" />\n    \u003C/label>\n\n    \u003Clabel>\n      \u003Cinput v-model=\"onlyInStock\" type=\"checkbox\" />\n      Solo disponibles\n    \u003C/label>\n\n    \u003Cul>\n      \u003Cli v-for=\"item in filteredProducts\" :key=\"item.id\">\n        {{ item.name }} - ${{ item.price }}\n        \u003Cspan v-if=\"!item.stock\">(sin stock)\u003C/span>\n      \u003C/li>\n    \u003C/ul>\n  \u003C/section>\n\u003C/template>\n","ProductFilter.vue",[16,29506,29507,29523,29535,29549,29553,29570,29595,29612,29616,29629,29653,29675,29697,29701,29705,29720,29737,29747,29766,29775,29797,29816,29820,29837,29841,29845,29853,29857,29865,29873,29886,29890,29905,29909,29917,29922,29949,29957,29961,29969,29990,29995,30003,30007,30015,30037,30042,30062,30070,30078,30086],{"__ignoreMap":273},[277,29508,29509,29511,29513,29515,29517,29519,29521],{"class":279,"line":280},[277,29510,284],{"class":283},[277,29512,288],{"class":287},[277,29514,292],{"class":291},[277,29516,295],{"class":291},[277,29518,298],{"class":283},[277,29520,302],{"class":301},[277,29522,305],{"class":283},[277,29524,29525,29527,29529,29531,29533],{"class":279,"line":308},[277,29526,312],{"class":311},[277,29528,23384],{"class":283},[277,29530,318],{"class":311},[277,29532,18148],{"class":301},[277,29534,18151],{"class":283},[277,29536,29537,29539,29542,29544,29547],{"class":279,"line":324},[277,29538,312],{"class":311},[277,29540,29541],{"class":283}," SearchInput ",[277,29543,318],{"class":311},[277,29545,29546],{"class":301}," \"./SearchInput.vue\"",[277,29548,18151],{"class":283},[277,29550,29551],{"class":279,"line":331},[277,29552,328],{"emptyLinePlaceholder":327},[277,29554,29555,29557,29560,29562,29564,29566,29568],{"class":279,"line":346},[277,29556,405],{"class":311},[277,29558,29559],{"class":356}," query",[277,29561,340],{"class":311},[277,29563,413],{"class":291},[277,29565,448],{"class":283},[277,29567,25316],{"class":301},[277,29569,18277],{"class":283},[277,29571,29572,29574,29577,29579,29581,29583,29585,29587,29589,29591,29593],{"class":279,"line":360},[277,29573,405],{"class":311},[277,29575,29576],{"class":356}," minPrice",[277,29578,340],{"class":311},[277,29580,413],{"class":291},[277,29582,284],{"class":283},[277,29584,7971],{"class":356},[277,29586,421],{"class":311},[277,29588,424],{"class":356},[277,29590,427],{"class":283},[277,29592,430],{"class":356},[277,29594,18277],{"class":283},[277,29596,29597,29599,29602,29604,29606,29608,29610],{"class":279,"line":371},[277,29598,405],{"class":311},[277,29600,29601],{"class":356}," onlyInStock",[277,29603,340],{"class":311},[277,29605,413],{"class":291},[277,29607,448],{"class":283},[277,29609,2123],{"class":356},[277,29611,18277],{"class":283},[277,29613,29614],{"class":279,"line":381},[277,29615,328],{"emptyLinePlaceholder":327},[277,29617,29618,29620,29623,29625,29627],{"class":279,"line":391},[277,29619,405],{"class":311},[277,29621,29622],{"class":356}," products",[277,29624,340],{"class":311},[277,29626,413],{"class":291},[277,29628,2104],{"class":283},[277,29630,29631,29633,29635,29637,29640,29643,29646,29649,29651],{"class":279,"line":397},[277,29632,2109],{"class":283},[277,29634,2072],{"class":356},[277,29636,22620],{"class":283},[277,29638,29639],{"class":301},"\"Teclado mecánico\"",[277,29641,29642],{"class":283},", price: ",[277,29644,29645],{"class":356},"89",[277,29647,29648],{"class":283},", stock: ",[277,29650,2149],{"class":356},[277,29652,2132],{"class":283},[277,29654,29655,29657,29659,29661,29664,29666,29669,29671,29673],{"class":279,"line":402},[277,29656,2109],{"class":283},[277,29658,2139],{"class":356},[277,29660,22620],{"class":283},[277,29662,29663],{"class":301},"\"Mouse ergonómico\"",[277,29665,29642],{"class":283},[277,29667,29668],{"class":356},"45",[277,29670,29648],{"class":283},[277,29672,2123],{"class":356},[277,29674,2132],{"class":283},[277,29676,29677,29679,29681,29683,29686,29688,29691,29693,29695],{"class":279,"line":436},[277,29678,2109],{"class":283},[277,29680,2163],{"class":356},[277,29682,22620],{"class":283},[277,29684,29685],{"class":301},"'Monitor 27\"'",[277,29687,29642],{"class":283},[277,29689,29690],{"class":356},"299",[277,29692,29648],{"class":283},[277,29694,2149],{"class":356},[277,29696,2132],{"class":283},[277,29698,29699],{"class":279,"line":456},[277,29700,22684],{"class":283},[277,29702,29703],{"class":279,"line":461},[277,29704,328],{"emptyLinePlaceholder":327},[277,29706,29707,29709,29712,29714,29716,29718],{"class":279,"line":476},[277,29708,405],{"class":311},[277,29710,29711],{"class":356}," filteredProducts",[277,29713,340],{"class":311},[277,29715,2200],{"class":291},[277,29717,2203],{"class":283},[277,29719,3716],{"class":311},[277,29721,29722,29725,29727,29729,29731,29733,29735],{"class":279,"line":500},[277,29723,29724],{"class":283},"  products.value.",[277,29726,2218],{"class":291},[277,29728,2334],{"class":283},[277,29730,21],{"class":349},[277,29732,2340],{"class":283},[277,29734,601],{"class":311},[277,29736,343],{"class":283},[277,29738,29739,29741,29744],{"class":279,"line":505},[277,29740,2233],{"class":311},[277,29742,29743],{"class":356}," matchesQuery",[277,29745,29746],{"class":311}," =\n",[277,29748,29749,29752,29754,29756,29758,29761,29763],{"class":279,"line":520},[277,29750,29751],{"class":283},"      p.name.",[277,29753,2249],{"class":291},[277,29755,6034],{"class":283},[277,29757,2258],{"class":291},[277,29759,29760],{"class":283},"(query.value.",[277,29762,2249],{"class":291},[277,29764,29765],{"class":283},"());\n",[277,29767,29768,29770,29773],{"class":279,"line":539},[277,29769,2233],{"class":311},[277,29771,29772],{"class":356}," matchesPrice",[277,29774,29746],{"class":311},[277,29776,29777,29780,29783,29785,29788,29791,29794],{"class":279,"line":545},[277,29778,29779],{"class":283},"      minPrice.value ",[277,29781,29782],{"class":311},"==",[277,29784,424],{"class":356},[277,29786,29787],{"class":311}," ||",[277,29789,29790],{"class":283}," p.price ",[277,29792,29793],{"class":311},">=",[277,29795,29796],{"class":283}," minPrice.value;\n",[277,29798,29799,29801,29804,29806,29808,29811,29813],{"class":279,"line":550},[277,29800,2233],{"class":311},[277,29802,29803],{"class":356}," matchesStock",[277,29805,340],{"class":311},[277,29807,2288],{"class":311},[277,29809,29810],{"class":283},"onlyInStock.value ",[277,29812,708],{"class":311},[277,29814,29815],{"class":283}," p.stock;\n",[277,29817,29818],{"class":279,"line":578},[277,29819,328],{"emptyLinePlaceholder":327},[277,29821,29822,29824,29827,29829,29832,29834],{"class":279,"line":583},[277,29823,1093],{"class":311},[277,29825,29826],{"class":283}," matchesQuery ",[277,29828,2310],{"class":311},[277,29830,29831],{"class":283}," matchesPrice ",[277,29833,2310],{"class":311},[277,29835,29836],{"class":283}," matchesStock;\n",[277,29838,29839],{"class":279,"line":588},[277,29840,2318],{"class":283},[277,29842,29843],{"class":279,"line":606},[277,29844,18277],{"class":283},[277,29846,29847,29849,29851],{"class":279,"line":614},[277,29848,785],{"class":283},[277,29850,288],{"class":287},[277,29852,305],{"class":283},[277,29854,29855],{"class":279,"line":625},[277,29856,328],{"emptyLinePlaceholder":327},[277,29858,29859,29861,29863],{"class":279,"line":637},[277,29860,284],{"class":283},[277,29862,802],{"class":287},[277,29864,305],{"class":283},[277,29866,29867,29869,29871],{"class":279,"line":646},[277,29868,810],{"class":283},[277,29870,4121],{"class":287},[277,29872,305],{"class":283},[277,29874,29875,29877,29879,29882,29884],{"class":279,"line":668},[277,29876,829],{"class":283},[277,29878,30],{"class":287},[277,29880,29881],{"class":283},">Filtros\u003C/",[277,29883,30],{"class":287},[277,29885,305],{"class":283},[277,29887,29888],{"class":279,"line":673},[277,29889,328],{"emptyLinePlaceholder":327},[277,29891,29892,29894,29896,29898,29900,29903],{"class":279,"line":679},[277,29893,829],{"class":283},[277,29895,29353],{"class":287},[277,29897,23751],{"class":291},[277,29899,298],{"class":283},[277,29901,29902],{"class":301},"\"query\"",[277,29904,4325],{"class":283},[277,29906,29907],{"class":279,"line":684},[277,29908,328],{"emptyLinePlaceholder":327},[277,29910,29911,29913,29915],{"class":279,"line":700},[277,29912,829],{"class":283},[277,29914,3875],{"class":287},[277,29916,305],{"class":283},[277,29918,29919],{"class":279,"line":717},[277,29920,29921],{"class":283},"      Precio mínimo\n",[277,29923,29924,29926,29928,29930,29932,29935,29937,29939,29941,29943,29945,29947],{"class":279,"line":722},[277,29925,879],{"class":283},[277,29927,18041],{"class":287},[277,29929,28907],{"class":291},[277,29931,298],{"class":283},[277,29933,29934],{"class":301},"\"minPrice\"",[277,29936,4270],{"class":291},[277,29938,298],{"class":283},[277,29940,28919],{"class":301},[277,29942,28922],{"class":291},[277,29944,298],{"class":283},[277,29946,28927],{"class":301},[277,29948,4325],{"class":283},[277,29950,29951,29953,29955],{"class":279,"line":729},[277,29952,922],{"class":283},[277,29954,3875],{"class":287},[277,29956,305],{"class":283},[277,29958,29959],{"class":279,"line":738},[277,29960,328],{"emptyLinePlaceholder":327},[277,29962,29963,29965,29967],{"class":279,"line":747},[277,29964,829],{"class":283},[277,29966,3875],{"class":287},[277,29968,305],{"class":283},[277,29970,29971,29973,29975,29977,29979,29982,29984,29986,29988],{"class":279,"line":754},[277,29972,879],{"class":283},[277,29974,18041],{"class":287},[277,29976,23751],{"class":291},[277,29978,298],{"class":283},[277,29980,29981],{"class":301},"\"onlyInStock\"",[277,29983,4270],{"class":291},[277,29985,298],{"class":283},[277,29987,29189],{"class":301},[277,29989,4325],{"class":283},[277,29991,29992],{"class":279,"line":772},[277,29993,29994],{"class":283},"      Solo disponibles\n",[277,29996,29997,29999,30001],{"class":279,"line":777},[277,29998,922],{"class":283},[277,30000,3875],{"class":287},[277,30002,305],{"class":283},[277,30004,30005],{"class":279,"line":782},[277,30006,328],{"emptyLinePlaceholder":327},[277,30008,30009,30011,30013],{"class":279,"line":792},[277,30010,829],{"class":283},[277,30012,38],{"class":287},[277,30014,305],{"class":283},[277,30016,30017,30019,30021,30023,30025,30028,30030,30032,30035],{"class":279,"line":797},[277,30018,879],{"class":283},[277,30020,41],{"class":287},[277,30022,12785],{"class":291},[277,30024,298],{"class":283},[277,30026,30027],{"class":301},"\"item in filteredProducts\"",[277,30029,4317],{"class":291},[277,30031,298],{"class":283},[277,30033,30034],{"class":301},"\"item.id\"",[277,30036,305],{"class":283},[277,30038,30039],{"class":279,"line":807},[277,30040,30041],{"class":283},"        {{ item.name }} - ${{ item.price }}\n",[277,30043,30044,30046,30048,30050,30052,30055,30058,30060],{"class":279,"line":826},[277,30045,26686],{"class":283},[277,30047,277],{"class":287},[277,30049,834],{"class":291},[277,30051,298],{"class":283},[277,30053,30054],{"class":301},"\"!item.stock\"",[277,30056,30057],{"class":283},">(sin stock)\u003C/",[277,30059,277],{"class":287},[277,30061,305],{"class":283},[277,30063,30064,30066,30068],{"class":279,"line":849},[277,30065,4175],{"class":283},[277,30067,41],{"class":287},[277,30069,305],{"class":283},[277,30071,30072,30074,30076],{"class":279,"line":854},[277,30073,922],{"class":283},[277,30075,38],{"class":287},[277,30077,305],{"class":283},[277,30079,30080,30082,30084],{"class":279,"line":876},[277,30081,954],{"class":283},[277,30083,4121],{"class":287},[277,30085,305],{"class":283},[277,30087,30088,30090,30092],{"class":279,"line":891},[277,30089,785],{"class":283},[277,30091,802],{"class":287},[277,30093,305],{"class":283},[192,30095,27452],{"id":27451},[21,30097,30098,30099,1697,30101,353],{},"Mismo comportamiento usando ",[16,30100,28231],{},[16,30102,28237],{},[267,30104,30106],{"className":269,"code":30105,"filename":29361,"language":272,"meta":273,"style":273},"\u003Cscript lang=\"ts\">\nexport default {\n  name: \"SearchInput\",\n  props: {\n    modelValue: {\n      type: String,\n      default: \"\",\n    },\n  },\n  emits: [\"update:modelValue\"],\n};\n\u003C/script>\n\n\u003Ctemplate>\n  \u003Clabel class=\"field\">\n    Buscar\n    \u003Cinput\n      :value=\"modelValue\"\n      type=\"text\"\n      placeholder=\"Escribe para filtrar...\"\n      @input=\"$emit('update:modelValue', $event.target.value.trim())\"\n    />\n  \u003C/label>\n\u003C/template>\n",[16,30107,30108,30122,30130,30139,30143,30148,30153,30162,30166,30170,30181,30185,30193,30197,30205,30219,30223,30229,30239,30247,30255,30265,30269,30277],{"__ignoreMap":273},[277,30109,30110,30112,30114,30116,30118,30120],{"class":279,"line":280},[277,30111,284],{"class":283},[277,30113,288],{"class":287},[277,30115,295],{"class":291},[277,30117,298],{"class":283},[277,30119,302],{"class":301},[277,30121,305],{"class":283},[277,30123,30124,30126,30128],{"class":279,"line":308},[277,30125,1057],{"class":311},[277,30127,1060],{"class":311},[277,30129,343],{"class":283},[277,30131,30132,30134,30137],{"class":279,"line":324},[277,30133,1071],{"class":283},[277,30135,30136],{"class":301},"\"SearchInput\"",[277,30138,1077],{"class":283},[277,30140,30141],{"class":279,"line":331},[277,30142,27481],{"class":283},[277,30144,30145],{"class":279,"line":346},[277,30146,30147],{"class":283},"    modelValue: {\n",[277,30149,30150],{"class":279,"line":360},[277,30151,30152],{"class":283},"      type: String,\n",[277,30154,30155,30158,30160],{"class":279,"line":371},[277,30156,30157],{"class":283},"      default: ",[277,30159,25316],{"class":301},[277,30161,1077],{"class":283},[277,30163,30164],{"class":279,"line":381},[277,30165,7016],{"class":283},[277,30167,30168],{"class":279,"line":391},[277,30169,1131],{"class":283},[277,30171,30172,30175,30178],{"class":279,"line":397},[277,30173,30174],{"class":283},"  emits: [",[277,30176,30177],{"class":301},"\"update:modelValue\"",[277,30179,30180],{"class":283},"],\n",[277,30182,30183],{"class":279,"line":402},[277,30184,18255],{"class":283},[277,30186,30187,30189,30191],{"class":279,"line":436},[277,30188,785],{"class":283},[277,30190,288],{"class":287},[277,30192,305],{"class":283},[277,30194,30195],{"class":279,"line":456},[277,30196,328],{"emptyLinePlaceholder":327},[277,30198,30199,30201,30203],{"class":279,"line":461},[277,30200,284],{"class":283},[277,30202,802],{"class":287},[277,30204,305],{"class":283},[277,30206,30207,30209,30211,30213,30215,30217],{"class":279,"line":476},[277,30208,810],{"class":283},[277,30210,3875],{"class":287},[277,30212,816],{"class":291},[277,30214,298],{"class":283},[277,30216,29437],{"class":301},[277,30218,305],{"class":283},[277,30220,30221],{"class":279,"line":500},[277,30222,29444],{"class":283},[277,30224,30225,30227],{"class":279,"line":505},[277,30226,829],{"class":283},[277,30228,11549],{"class":287},[277,30230,30231,30234,30236],{"class":279,"line":520},[277,30232,30233],{"class":291},"      :value",[277,30235,298],{"class":283},[277,30237,30238],{"class":301},"\"modelValue\"\n",[277,30240,30241,30243,30245],{"class":279,"line":539},[277,30242,11563],{"class":291},[277,30244,298],{"class":283},[277,30246,29470],{"class":301},[277,30248,30249,30251,30253],{"class":279,"line":545},[277,30250,11573],{"class":291},[277,30252,298],{"class":283},[277,30254,29479],{"class":301},[277,30256,30257,30260,30262],{"class":279,"line":550},[277,30258,30259],{"class":291},"      @input",[277,30261,298],{"class":283},[277,30263,30264],{"class":301},"\"$emit('update:modelValue', $event.target.value.trim())\"\n",[277,30266,30267],{"class":279,"line":578},[277,30268,29484],{"class":283},[277,30270,30271,30273,30275],{"class":279,"line":583},[277,30272,954],{"class":283},[277,30274,3875],{"class":287},[277,30276,305],{"class":283},[277,30278,30279,30281,30283],{"class":279,"line":588},[277,30280,785],{"class":283},[277,30282,802],{"class":287},[277,30284,305],{"class":283},[267,30286,30288],{"className":269,"code":30287,"filename":29504,"language":272,"meta":273,"style":273},"\u003Cscript lang=\"ts\">\nimport SearchInput from \"./SearchInput.vue\";\n\nexport default {\n  name: \"ProductFilter\",\n  components: { SearchInput },\n  data() {\n    return {\n      query: \"\",\n      minPrice: null,\n      onlyInStock: false,\n      products: [\n        { id: 1, name: \"Teclado mecánico\", price: 89, stock: true },\n        { id: 2, name: \"Mouse ergonómico\", price: 45, stock: false },\n        { id: 3, name: 'Monitor 27\"', price: 299, stock: true },\n      ],\n    };\n  },\n  computed: {\n    filteredProducts() {\n      return this.products.filter((p) => {\n        const matchesQuery = p.name\n          .toLowerCase()\n          .includes(this.query.toLowerCase());\n        const matchesPrice =\n          this.minPrice == null || p.price >= Number(this.minPrice);\n        const matchesStock = !this.onlyInStock || p.stock;\n\n        return matchesQuery && matchesPrice && matchesStock;\n      });\n    },\n  },\n};\n\u003C/script>\n\n\u003Ctemplate>\n  \u003Csection>\n    \u003Ch2>Filtros\u003C/h2>\n\n    \u003CSearchInput v-model=\"query\" />\n\n    \u003Clabel>\n      Precio mínimo\n      \u003Cinput v-model.number=\"minPrice\" type=\"number\" min=\"0\" />\n    \u003C/label>\n\n    \u003Clabel>\n      \u003Cinput v-model=\"onlyInStock\" type=\"checkbox\" />\n      Solo disponibles\n    \u003C/label>\n\n    \u003Cul>\n      \u003Cli v-for=\"item in filteredProducts\" :key=\"item.id\">\n        {{ item.name }} - ${{ item.price }}\n        \u003Cspan v-if=\"!item.stock\">(sin stock)\u003C/span>\n      \u003C/li>\n    \u003C/ul>\n  \u003C/section>\n\u003C/template>\n",[16,30289,30290,30304,30316,30320,30328,30337,30342,30348,30354,30363,30372,30381,30386,30406,30426,30446,30450,30454,30458,30462,30469,30490,30501,30509,30526,30534,30562,30581,30585,30599,30604,30608,30612,30616,30624,30628,30636,30644,30656,30660,30674,30678,30686,30690,30716,30724,30728,30736,30756,30760,30768,30772,30780,30800,30804,30822,30830,30838,30846],{"__ignoreMap":273},[277,30291,30292,30294,30296,30298,30300,30302],{"class":279,"line":280},[277,30293,284],{"class":283},[277,30295,288],{"class":287},[277,30297,295],{"class":291},[277,30299,298],{"class":283},[277,30301,302],{"class":301},[277,30303,305],{"class":283},[277,30305,30306,30308,30310,30312,30314],{"class":279,"line":308},[277,30307,312],{"class":311},[277,30309,29541],{"class":283},[277,30311,318],{"class":311},[277,30313,29546],{"class":301},[277,30315,18151],{"class":283},[277,30317,30318],{"class":279,"line":324},[277,30319,328],{"emptyLinePlaceholder":327},[277,30321,30322,30324,30326],{"class":279,"line":331},[277,30323,1057],{"class":311},[277,30325,1060],{"class":311},[277,30327,343],{"class":283},[277,30329,30330,30332,30335],{"class":279,"line":346},[277,30331,1071],{"class":283},[277,30333,30334],{"class":301},"\"ProductFilter\"",[277,30336,1077],{"class":283},[277,30338,30339],{"class":279,"line":360},[277,30340,30341],{"class":283},"  components: { SearchInput },\n",[277,30343,30344,30346],{"class":279,"line":371},[277,30345,1086],{"class":291},[277,30347,473],{"class":283},[277,30349,30350,30352],{"class":279,"line":381},[277,30351,1093],{"class":311},[277,30353,343],{"class":283},[277,30355,30356,30359,30361],{"class":279,"line":391},[277,30357,30358],{"class":283},"      query: ",[277,30360,25316],{"class":301},[277,30362,1077],{"class":283},[277,30364,30365,30368,30370],{"class":279,"line":397},[277,30366,30367],{"class":283},"      minPrice: ",[277,30369,430],{"class":356},[277,30371,1077],{"class":283},[277,30373,30374,30377,30379],{"class":279,"line":402},[277,30375,30376],{"class":283},"      onlyInStock: ",[277,30378,2123],{"class":356},[277,30380,1077],{"class":283},[277,30382,30383],{"class":279,"line":436},[277,30384,30385],{"class":283},"      products: [\n",[277,30387,30388,30390,30392,30394,30396,30398,30400,30402,30404],{"class":279,"line":456},[277,30389,2664],{"class":283},[277,30391,2072],{"class":356},[277,30393,22620],{"class":283},[277,30395,29639],{"class":301},[277,30397,29642],{"class":283},[277,30399,29645],{"class":356},[277,30401,29648],{"class":283},[277,30403,2149],{"class":356},[277,30405,2132],{"class":283},[277,30407,30408,30410,30412,30414,30416,30418,30420,30422,30424],{"class":279,"line":461},[277,30409,2664],{"class":283},[277,30411,2139],{"class":356},[277,30413,22620],{"class":283},[277,30415,29663],{"class":301},[277,30417,29642],{"class":283},[277,30419,29668],{"class":356},[277,30421,29648],{"class":283},[277,30423,2123],{"class":356},[277,30425,2132],{"class":283},[277,30427,30428,30430,30432,30434,30436,30438,30440,30442,30444],{"class":279,"line":476},[277,30429,2664],{"class":283},[277,30431,2163],{"class":356},[277,30433,22620],{"class":283},[277,30435,29685],{"class":301},[277,30437,29642],{"class":283},[277,30439,29690],{"class":356},[277,30441,29648],{"class":283},[277,30443,2149],{"class":356},[277,30445,2132],{"class":283},[277,30447,30448],{"class":279,"line":500},[277,30449,10174],{"class":283},[277,30451,30452],{"class":279,"line":505},[277,30453,18478],{"class":283},[277,30455,30456],{"class":279,"line":520},[277,30457,1131],{"class":283},[277,30459,30460],{"class":279,"line":539},[277,30461,2742],{"class":283},[277,30463,30464,30467],{"class":279,"line":545},[277,30465,30466],{"class":291},"    filteredProducts",[277,30468,473],{"class":283},[277,30470,30471,30473,30475,30478,30480,30482,30484,30486,30488],{"class":279,"line":550},[277,30472,2754],{"class":311},[277,30474,1268],{"class":356},[277,30476,30477],{"class":283},".products.",[277,30479,2218],{"class":291},[277,30481,2334],{"class":283},[277,30483,21],{"class":349},[277,30485,2340],{"class":283},[277,30487,601],{"class":311},[277,30489,343],{"class":283},[277,30491,30492,30494,30496,30498],{"class":279,"line":578},[277,30493,2774],{"class":311},[277,30495,29743],{"class":356},[277,30497,340],{"class":311},[277,30499,30500],{"class":283}," p.name\n",[277,30502,30503,30505,30507],{"class":279,"line":583},[277,30504,2785],{"class":283},[277,30506,2249],{"class":291},[277,30508,622],{"class":283},[277,30510,30511,30513,30515,30517,30519,30522,30524],{"class":279,"line":588},[277,30512,2785],{"class":283},[277,30514,2258],{"class":291},[277,30516,448],{"class":283},[277,30518,1341],{"class":356},[277,30520,30521],{"class":283},".query.",[277,30523,2249],{"class":291},[277,30525,29765],{"class":283},[277,30527,30528,30530,30532],{"class":279,"line":606},[277,30529,2774],{"class":311},[277,30531,29772],{"class":356},[277,30533,29746],{"class":311},[277,30535,30536,30539,30542,30544,30546,30548,30550,30552,30555,30557,30559],{"class":279,"line":614},[277,30537,30538],{"class":356},"          this",[277,30540,30541],{"class":283},".minPrice ",[277,30543,29782],{"class":311},[277,30545,424],{"class":356},[277,30547,29787],{"class":311},[277,30549,29790],{"class":283},[277,30551,29793],{"class":311},[277,30553,30554],{"class":291}," Number",[277,30556,448],{"class":283},[277,30558,1341],{"class":356},[277,30560,30561],{"class":283},".minPrice);\n",[277,30563,30564,30566,30568,30570,30572,30574,30577,30579],{"class":279,"line":625},[277,30565,2774],{"class":311},[277,30567,29803],{"class":356},[277,30569,340],{"class":311},[277,30571,2288],{"class":311},[277,30573,1341],{"class":356},[277,30575,30576],{"class":283},".onlyInStock ",[277,30578,708],{"class":311},[277,30580,29815],{"class":283},[277,30582,30583],{"class":279,"line":637},[277,30584,328],{"emptyLinePlaceholder":327},[277,30586,30587,30589,30591,30593,30595,30597],{"class":279,"line":646},[277,30588,2842],{"class":311},[277,30590,29826],{"class":283},[277,30592,2310],{"class":311},[277,30594,29831],{"class":283},[277,30596,2310],{"class":311},[277,30598,29836],{"class":283},[277,30600,30601],{"class":279,"line":668},[277,30602,30603],{"class":283},"      });\n",[277,30605,30606],{"class":279,"line":673},[277,30607,7016],{"class":283},[277,30609,30610],{"class":279,"line":679},[277,30611,1131],{"class":283},[277,30613,30614],{"class":279,"line":684},[277,30615,18255],{"class":283},[277,30617,30618,30620,30622],{"class":279,"line":700},[277,30619,785],{"class":283},[277,30621,288],{"class":287},[277,30623,305],{"class":283},[277,30625,30626],{"class":279,"line":717},[277,30627,328],{"emptyLinePlaceholder":327},[277,30629,30630,30632,30634],{"class":279,"line":722},[277,30631,284],{"class":283},[277,30633,802],{"class":287},[277,30635,305],{"class":283},[277,30637,30638,30640,30642],{"class":279,"line":729},[277,30639,810],{"class":283},[277,30641,4121],{"class":287},[277,30643,305],{"class":283},[277,30645,30646,30648,30650,30652,30654],{"class":279,"line":738},[277,30647,829],{"class":283},[277,30649,30],{"class":287},[277,30651,29881],{"class":283},[277,30653,30],{"class":287},[277,30655,305],{"class":283},[277,30657,30658],{"class":279,"line":747},[277,30659,328],{"emptyLinePlaceholder":327},[277,30661,30662,30664,30666,30668,30670,30672],{"class":279,"line":754},[277,30663,829],{"class":283},[277,30665,29353],{"class":287},[277,30667,23751],{"class":291},[277,30669,298],{"class":283},[277,30671,29902],{"class":301},[277,30673,4325],{"class":283},[277,30675,30676],{"class":279,"line":772},[277,30677,328],{"emptyLinePlaceholder":327},[277,30679,30680,30682,30684],{"class":279,"line":777},[277,30681,829],{"class":283},[277,30683,3875],{"class":287},[277,30685,305],{"class":283},[277,30687,30688],{"class":279,"line":782},[277,30689,29921],{"class":283},[277,30691,30692,30694,30696,30698,30700,30702,30704,30706,30708,30710,30712,30714],{"class":279,"line":792},[277,30693,879],{"class":283},[277,30695,18041],{"class":287},[277,30697,28907],{"class":291},[277,30699,298],{"class":283},[277,30701,29934],{"class":301},[277,30703,4270],{"class":291},[277,30705,298],{"class":283},[277,30707,28919],{"class":301},[277,30709,28922],{"class":291},[277,30711,298],{"class":283},[277,30713,28927],{"class":301},[277,30715,4325],{"class":283},[277,30717,30718,30720,30722],{"class":279,"line":797},[277,30719,922],{"class":283},[277,30721,3875],{"class":287},[277,30723,305],{"class":283},[277,30725,30726],{"class":279,"line":807},[277,30727,328],{"emptyLinePlaceholder":327},[277,30729,30730,30732,30734],{"class":279,"line":826},[277,30731,829],{"class":283},[277,30733,3875],{"class":287},[277,30735,305],{"class":283},[277,30737,30738,30740,30742,30744,30746,30748,30750,30752,30754],{"class":279,"line":849},[277,30739,879],{"class":283},[277,30741,18041],{"class":287},[277,30743,23751],{"class":291},[277,30745,298],{"class":283},[277,30747,29981],{"class":301},[277,30749,4270],{"class":291},[277,30751,298],{"class":283},[277,30753,29189],{"class":301},[277,30755,4325],{"class":283},[277,30757,30758],{"class":279,"line":854},[277,30759,29994],{"class":283},[277,30761,30762,30764,30766],{"class":279,"line":876},[277,30763,922],{"class":283},[277,30765,3875],{"class":287},[277,30767,305],{"class":283},[277,30769,30770],{"class":279,"line":891},[277,30771,328],{"emptyLinePlaceholder":327},[277,30773,30774,30776,30778],{"class":279,"line":905},[277,30775,829],{"class":283},[277,30777,38],{"class":287},[277,30779,305],{"class":283},[277,30781,30782,30784,30786,30788,30790,30792,30794,30796,30798],{"class":279,"line":919},[277,30783,879],{"class":283},[277,30785,41],{"class":287},[277,30787,12785],{"class":291},[277,30789,298],{"class":283},[277,30791,30027],{"class":301},[277,30793,4317],{"class":291},[277,30795,298],{"class":283},[277,30797,30034],{"class":301},[277,30799,305],{"class":283},[277,30801,30802],{"class":279,"line":929},[277,30803,30041],{"class":283},[277,30805,30806,30808,30810,30812,30814,30816,30818,30820],{"class":279,"line":934},[277,30807,26686],{"class":283},[277,30809,277],{"class":287},[277,30811,834],{"class":291},[277,30813,298],{"class":283},[277,30815,30054],{"class":301},[277,30817,30057],{"class":283},[277,30819,277],{"class":287},[277,30821,305],{"class":283},[277,30823,30824,30826,30828],{"class":279,"line":951},[277,30825,4175],{"class":283},[277,30827,41],{"class":287},[277,30829,305],{"class":283},[277,30831,30832,30834,30836],{"class":279,"line":961},[277,30833,922],{"class":283},[277,30835,38],{"class":287},[277,30837,305],{"class":283},[277,30839,30840,30842,30844],{"class":279,"line":1473},[277,30841,954],{"class":283},[277,30843,4121],{"class":287},[277,30845,305],{"class":283},[277,30847,30848,30850,30852],{"class":279,"line":1478},[277,30849,785],{"class":283},[277,30851,802],{"class":287},[277,30853,305],{"class":283},[30,30855,1596],{"id":1595},[21,30857,30858,30860],{},[16,30859,17971],{}," es la forma idiomática en Vue 3 para sincronizar UI y estado en formularios y componentes.",[21,30862,30863],{},"Úsalo para reducir boilerplate y mantener consistencia, pero evita convertirlo en un atajo para lógica de negocio compleja.",[21,30865,21824],{},[38,30867,30868,30874,30883,30893],{},[41,30869,30870,30871,30873],{},"En inputs nativos, simplifica ",[16,30872,28154],{}," + eventos.",[41,30875,30876,30877,5245,30879,28409,30881,104],{},"En componentes, respeta ",[16,30878,28231],{},[16,30880,28237],{},[16,30882,28412],{},[41,30884,30885,30886,225,30888,225,30890,30892],{},"Aplica modificadores (",[16,30887,28256],{},[16,30889,28261],{},[16,30891,28266],{},") cuando mejoren la calidad de los datos o el rendimiento.",[41,30894,30895],{},"Mantén el flujo de datos claro y explícito cuando el dominio lo requiera.",[1606,30897,3118],{},{"title":273,"searchDepth":308,"depth":308,"links":30899},[30900,30901,30905,30906,30907,30914,30915,30917,30918,30922],{"id":20624,"depth":308,"text":20625},{"id":60,"depth":308,"text":61,"children":30902},[30903,30904],{"id":28174,"depth":324,"text":28175},{"id":28219,"depth":324,"text":28220},{"id":128,"depth":308,"text":129},{"id":155,"depth":308,"text":156},{"id":189,"depth":308,"text":190,"children":30908},[30909,30910,30912,30913],{"id":28337,"depth":324,"text":28338},{"id":28420,"depth":324,"text":30911},"2) Enlazar v-model a expresiones no escribibles",{"id":28494,"depth":324,"text":28495},{"id":28523,"depth":324,"text":28524},{"id":28535,"depth":308,"text":28536},{"id":28797,"depth":308,"text":30916},"2) Input numérico con v-model.number",{"id":29084,"depth":308,"text":29085},{"id":29345,"depth":308,"text":29346,"children":30919},[30920,30921],{"id":26861,"depth":324,"text":26862},{"id":27451,"depth":324,"text":27452},{"id":1595,"depth":308,"text":1596},"https://res.cloudinary.com/denj4fg7f/image/upload/v1771265788/directives-vue-v-model-guide_ticgya.png","Imagen temporal para portada del artículo sobre v-model en Vue","2026-02-16","Aprende a usar v-model en Vue 3 para formularios y componentes personalizados, con Composition API y Options API, casos reales, errores comunes y buenas practicas.",{"script":30928},[30929],{"type":1632,"key":1633,"data-nuxt-schema-org":327,"nodes":30930},[30931],{"headline":30932,"author":30933,"datePublished":30934,"@type":1640},"Directiva v-model en Vue: guía completa para formularios y componentes",{"name":1637,"@type":1638},"2026-02-16T13:30:00-05:00",{"updatedAt":30934,"coverCaption":17759,"author":1637,"keywords":30936},[1645,17971,30937,30938,271,971],"formularios","two-way binding","/blog/directives-vue-v-model-guide.es",[30941],{"headline":30932,"author":30942,"datePublished":30934,"@type":1640},{"name":1637,"@type":1638},{"title":28121,"description":30926},"blog/directives-vue-v-model-guide.es",[30946,30947,30950,30951],{"tag":20588,"color":20589},{"tag":30948,"color":30949},"Formularios","#E67E22",{"tag":3167,"color":3168},{"tag":9074,"color":9075},"AgIU1gU24ojbR94ulA9qthmIdF_QyUDb-9NFjzZ8Bck",{"id":30954,"title":30955,"body":30956,"cover":33955,"coverAlt":33956,"date":33957,"description":33958,"draft":1627,"extension":1628,"head":33959,"locale":1641,"meta":33967,"navigation":327,"path":33971,"schemaOrg":33972,"seo":33975,"series":20582,"seriesDescription":20583,"seriesOrder":346,"seriesTitle":20584,"slug":1656,"stem":33976,"tags":33977,"__hash__":33983},"blog/blog/directives-vue-v-on-guide.es.md","Directivas en Vue: v-on",{"type":8,"value":30957,"toc":33932},[30958,30963,30971,30973,30981,30992,30999,31001,31004,31039,31042,31072,31077,31132,31134,31139,31141,31172,31174,31179,31192,31197,31199,31203,31205,31238,31245,31274,31281,31283,31310,31312,31342,31349,31353,31356,31421,31424,31455,31458,31465,31467,31496,31498,31526,31532,31534,31538,31641,31750,31756,31964,32177,32181,32322,32470,32474,32597,32729,32731,32734,32753,33361,33893,33895,33900,33903,33929],[11,30959,20605,30961],{"id":30960},"directivas-en-vue-v-on",[16,30962,17977],{},[21,30964,30965,30967,30968,30970],{},[16,30966,17977],{}," conecta eventos del DOM o de componentes con funciones de tu app.\nCuando el usuario hace clic, escribe o pulsa una tecla, ",[16,30969,17977],{}," dispara la lógica que definiste.",[30,30972,20625],{"id":20624},[21,30974,15938,30975,30977,30978,30980],{},[16,30976,17977],{},", una interfaz no responde a la interacción del usuario.\nCon ",[16,30979,17977],{},", puedes:",[38,30982,30983,30986,30989],{},[41,30984,30985],{},"Capturar acciones del usuario sin manipular el DOM manualmente.",[41,30987,30988],{},"Mantener la interacción declarativa y legible en el template.",[41,30990,30991],{},"Separar estado, renderizado y comportamiento de forma consistente con Vue.",[3111,30993,30994],{},[21,30995,30996,30998],{},[16,30997,17977],{}," es la base de botones, formularios, atajos de teclado y comunicación entre componentes vía eventos.",[30,31000,24653],{"id":24652},[21,31002,31003],{},"La forma larga:",[267,31005,31007],{"className":269,"code":31006,"filename":9339,"language":272,"meta":273,"style":273},"\u003Cbutton v-on:click=\"increment\">Sumar\u003C/button>\n",[16,31008,31009],{"__ignoreMap":273},[277,31010,31011,31013,31015,31018,31020,31023,31025,31027,31030,31032,31035,31037],{"class":279,"line":280},[277,31012,284],{"class":283},[277,31014,4267],{"class":287},[277,31016,31017],{"class":291}," v-on",[277,31019,353],{"class":283},[277,31021,31022],{"class":291},"click",[277,31024,298],{"class":283},[277,31026,866],{"class":301},[277,31028,31029],{"class":283},"increment",[277,31031,866],{"class":301},[277,31033,31034],{"class":283},">Sumar\u003C/",[277,31036,4267],{"class":287},[277,31038,305],{"class":283},[21,31040,31041],{},"La forma corta recomendada:",[267,31043,31045],{"className":269,"code":31044,"filename":9339,"language":272,"meta":273,"style":273},"\u003Cbutton @click=\"increment\">Sumar\u003C/button>\n",[16,31046,31047],{"__ignoreMap":273},[277,31048,31049,31051,31053,31056,31058,31060,31062,31064,31066,31068,31070],{"class":279,"line":280},[277,31050,284],{"class":283},[277,31052,4267],{"class":287},[277,31054,31055],{"class":283}," @",[277,31057,31022],{"class":291},[277,31059,298],{"class":283},[277,31061,866],{"class":301},[277,31063,31029],{"class":283},[277,31065,866],{"class":301},[277,31067,31034],{"class":283},[277,31069,4267],{"class":287},[277,31071,305],{"class":283},[21,31073,31074,31076],{},[16,31075,17977],{}," admite:",[38,31078,31079,31092,31101,31116],{},[41,31080,31081,31082,225,31084,225,31086,225,31089,1895],{},"Eventos nativos (",[16,31083,31022],{},[16,31085,18041],{},[16,31087,31088],{},"submit",[16,31090,31091],{},"keydown",[41,31093,31094,31095,225,31098,1895],{},"Eventos emitidos por componentes (",[16,31096,31097],{},"@save",[16,31099,31100],{},"@close",[41,31102,31103,31104,225,31107,225,31110,225,31113,1895],{},"Modificadores de evento (",[16,31105,31106],{},".prevent",[16,31108,31109],{},".stop",[16,31111,31112],{},".once",[16,31114,31115],{},".self",[41,31117,31118,31119,225,31122,31125,31126,225,31129,1808],{},"Modificadores de teclado (",[16,31120,31121],{},".enter",[16,31123,31124],{},".esc",", combinaciones con ",[16,31127,31128],{},"ctrl",[16,31130,31131],{},"shift",[30,31133,129],{"id":128},[21,31135,20777,31136,31138],{},[16,31137,17977],{}," cuando necesites reaccionar a acciones del usuario o a eventos de componentes.",[21,31140,3305],{},[38,31142,31143,31149,31155,31161,31166],{},[41,31144,31145,31146,1895],{},"Botones de acción (",[16,31147,31148],{},"@click=\"createTask\"",[41,31150,31151,31152,1895],{},"Formularios (",[16,31153,31154],{},"@submit.prevent=\"submitForm\"",[41,31156,31157,31158,1895],{},"Inputs en tiempo real (",[16,31159,31160],{},"@input=\"handleSearch\"",[41,31162,17808,31163,1895],{},[16,31164,31165],{},"@keydown.ctrl.enter=\"publish\"",[41,31167,31168,31169,1895],{},"Eventos personalizados desde componentes hijos (",[16,31170,31171],{},"@save=\"persistTask\"",[30,31173,156],{"id":155},[21,31175,7664,31176,31178],{},[16,31177,17977],{}," en estos casos:",[38,31180,31181,31184,31189],{},[41,31182,31183],{},"Cuando no hay interacción real y el contenido es completamente estático.",[41,31185,31186,31187,104],{},"Cuando colocas demasiada lógica inline en el template; es mejor moverla a funciones o ",[16,31188,1732],{},[41,31190,31191],{},"Cuando intentas “resolver” seguridad con eventos del frontend: la validación real debe ocurrir en backend.",[3111,31193,31194],{},[21,31195,31196],{},"También evita encadenar muchos modificadores sin una intención clara, porque dificulta el mantenimiento.",[30,31198,190],{"id":189},[192,31200,31202],{"id":31201},"_1-ejecutar-la-función-en-vez-de-referenciarla","1) Ejecutar la función en vez de referenciarla",[21,31204,24892],{},[267,31206,31208],{"className":269,"code":31207,"filename":28344,"language":272,"meta":273,"style":273},"\u003Cbutton @click=\"saveTask()\">Guardar\u003C/button>\n",[16,31209,31210],{"__ignoreMap":273},[277,31211,31212,31214,31216,31218,31220,31222,31224,31227,31229,31231,31234,31236],{"class":279,"line":280},[277,31213,284],{"class":283},[277,31215,4267],{"class":287},[277,31217,31055],{"class":283},[277,31219,31022],{"class":291},[277,31221,298],{"class":283},[277,31223,866],{"class":301},[277,31225,31226],{"class":291},"saveTask",[277,31228,28452],{"class":283},[277,31230,866],{"class":301},[277,31232,31233],{"class":283},">Guardar\u003C/",[277,31235,4267],{"class":287},[277,31237,305],{"class":283},[21,31239,31240,31241,31244],{},"Esto ",[72,31242,31243],{},"es válido",", pero si no necesitas argumentos, suele ser más limpio:",[267,31246,31248],{"className":269,"code":31247,"filename":28470,"language":272,"meta":273,"style":273},"\u003Cbutton @click=\"saveTask\">Guardar\u003C/button>\n",[16,31249,31250],{"__ignoreMap":273},[277,31251,31252,31254,31256,31258,31260,31262,31264,31266,31268,31270,31272],{"class":279,"line":280},[277,31253,284],{"class":283},[277,31255,4267],{"class":287},[277,31257,31055],{"class":283},[277,31259,31022],{"class":291},[277,31261,298],{"class":283},[277,31263,866],{"class":301},[277,31265,31226],{"class":283},[277,31267,866],{"class":301},[277,31269,31233],{"class":283},[277,31271,4267],{"class":287},[277,31273,305],{"class":283},[192,31275,31277,31278,31280],{"id":31276},"_2-olvidar-prevent-en-formularios","2) Olvidar ",[16,31279,31106],{}," en formularios",[21,31282,24892],{},[267,31284,31286],{"className":269,"code":31285,"filename":28344,"language":272,"meta":273,"style":273},"\u003Cform @submit=\"submitForm\">\n",[16,31287,31288],{"__ignoreMap":273},[277,31289,31290,31292,31295,31297,31299,31301,31303,31306,31308],{"class":279,"line":280},[277,31291,284],{"class":283},[277,31293,31294],{"class":287},"form",[277,31296,31055],{"class":283},[277,31298,31088],{"class":291},[277,31300,298],{"class":283},[277,31302,866],{"class":301},[277,31304,31305],{"class":283},"submitForm",[277,31307,866],{"class":301},[277,31309,305],{"class":283},[21,31311,28466],{},[267,31313,31315],{"className":269,"code":31314,"filename":28470,"language":272,"meta":273,"style":273},"\u003Cform @submit.prevent=\"submitForm\">\n",[16,31316,31317],{"__ignoreMap":273},[277,31318,31319,31321,31323,31325,31327,31329,31332,31334,31336,31338,31340],{"class":279,"line":280},[277,31320,284],{"class":283},[277,31322,31294],{"class":287},[277,31324,31055],{"class":283},[277,31326,31088],{"class":291},[277,31328,104],{"class":283},[277,31330,31331],{"class":291},"prevent",[277,31333,298],{"class":283},[277,31335,866],{"class":301},[277,31337,31305],{"class":283},[277,31339,866],{"class":301},[277,31341,305],{"class":283},[3111,31343,31344],{},[21,31345,15938,31346,31348],{},[16,31347,31106],{},", el navegador recarga la página por defecto.",[192,31350,31352],{"id":31351},"_3-poner-demasiada-lógica-dentro-del-template","3) Poner demasiada lógica dentro del template",[21,31354,31355],{},"Evitar:",[267,31357,31359],{"className":269,"code":31358,"filename":28344,"language":272,"meta":273,"style":273},"\u003Cbutton @click=\"isAdmin && canEdit && !isLocked ? publishNow() : showWarning()\">\n  Publicar\n\u003C/button>\n",[16,31360,31361,31408,31413],{"__ignoreMap":273},[277,31362,31363,31365,31367,31369,31371,31373,31375,31378,31380,31383,31385,31387,31390,31392,31395,31397,31399,31402,31404,31406],{"class":279,"line":280},[277,31364,284],{"class":283},[277,31366,4267],{"class":287},[277,31368,31055],{"class":283},[277,31370,31022],{"class":291},[277,31372,298],{"class":283},[277,31374,866],{"class":301},[277,31376,31377],{"class":283},"isAdmin ",[277,31379,2310],{"class":311},[277,31381,31382],{"class":283}," canEdit ",[277,31384,2310],{"class":311},[277,31386,2288],{"class":311},[277,31388,31389],{"class":283},"isLocked ",[277,31391,2285],{"class":311},[277,31393,31394],{"class":291}," publishNow",[277,31396,8129],{"class":283},[277,31398,353],{"class":311},[277,31400,31401],{"class":291}," showWarning",[277,31403,28452],{"class":283},[277,31405,866],{"class":301},[277,31407,305],{"class":283},[277,31409,31410],{"class":279,"line":308},[277,31411,31412],{"class":283},"  Publicar\n",[277,31414,31415,31417,31419],{"class":279,"line":324},[277,31416,785],{"class":283},[277,31418,4267],{"class":287},[277,31420,305],{"class":283},[21,31422,31423],{},"Mejor:",[267,31425,31427],{"className":269,"code":31426,"filename":28470,"language":272,"meta":273,"style":273},"\u003Cbutton @click=\"handlePublishClick\">Publicar\u003C/button>\n",[16,31428,31429],{"__ignoreMap":273},[277,31430,31431,31433,31435,31437,31439,31441,31443,31446,31448,31451,31453],{"class":279,"line":280},[277,31432,284],{"class":283},[277,31434,4267],{"class":287},[277,31436,31055],{"class":283},[277,31438,31022],{"class":291},[277,31440,298],{"class":283},[277,31442,866],{"class":301},[277,31444,31445],{"class":283},"handlePublishClick",[277,31447,866],{"class":301},[277,31449,31450],{"class":283},">Publicar\u003C/",[277,31452,4267],{"class":287},[277,31454,305],{"class":283},[21,31456,31457],{},"Y mover la decisión a una función clara en el script.",[192,31459,31461,31462,31464],{"id":31460},"_4-usar-event-sin-declararlo","4) Usar ",[16,31463,2337],{}," sin declararlo",[21,31466,24892],{},[267,31468,31470],{"className":269,"code":31469,"filename":28344,"language":272,"meta":273,"style":273},"\u003Cinput @input=\"onInput(event)\" />\n",[16,31471,31472],{"__ignoreMap":273},[277,31473,31474,31476,31478,31480,31482,31484,31486,31489,31492,31494],{"class":279,"line":280},[277,31475,284],{"class":283},[277,31477,18041],{"class":287},[277,31479,31055],{"class":283},[277,31481,18041],{"class":291},[277,31483,298],{"class":283},[277,31485,866],{"class":301},[277,31487,31488],{"class":291},"onInput",[277,31490,31491],{"class":283},"(event)",[277,31493,866],{"class":301},[277,31495,4325],{"class":283},[21,31497,28466],{},[267,31499,31501],{"className":269,"code":31500,"filename":28470,"language":272,"meta":273,"style":273},"\u003Cinput @input=\"onInput($event)\" />\n",[16,31502,31503],{"__ignoreMap":273},[277,31504,31505,31507,31509,31511,31513,31515,31517,31519,31522,31524],{"class":279,"line":280},[277,31506,284],{"class":283},[277,31508,18041],{"class":287},[277,31510,31055],{"class":283},[277,31512,18041],{"class":291},[277,31514,298],{"class":283},[277,31516,866],{"class":301},[277,31518,31488],{"class":291},[277,31520,31521],{"class":283},"($event)",[277,31523,866],{"class":301},[277,31525,4325],{"class":283},[21,31527,31528,31529,31531],{},"O mejor aún, tipar el evento y leer ",[16,31530,1783],{}," de forma segura en TypeScript.",[30,31533,1946],{"id":1945},[192,31535,31537],{"id":31536},"_1-click-simple-para-actualizar-estado","1) Click simple para actualizar estado",[267,31539,31542],{"className":269,"code":31540,"filename":271,"highlights":31541,"language":272,"meta":273,"style":273},"\u003Cscript setup lang=\"ts\">\nimport { ref } from \"vue\";\n\nconst count = ref(0);\n\u003C/script>\n\n\u003Ctemplate>\n  \u003Cbutton @click=\"count++\">Clicks: {{ count }}\u003C/button>\n\u003C/template>\n",[331,381],[16,31543,31544,31560,31572,31576,31593,31601,31605,31613,31633],{"__ignoreMap":273},[277,31545,31546,31548,31550,31552,31554,31556,31558],{"class":279,"line":280},[277,31547,284],{"class":283},[277,31549,288],{"class":287},[277,31551,292],{"class":291},[277,31553,295],{"class":291},[277,31555,298],{"class":283},[277,31557,302],{"class":301},[277,31559,305],{"class":283},[277,31561,31562,31564,31566,31568,31570],{"class":279,"line":308},[277,31563,312],{"class":311},[277,31565,11006],{"class":283},[277,31567,318],{"class":311},[277,31569,18148],{"class":301},[277,31571,18151],{"class":283},[277,31573,31574],{"class":279,"line":324},[277,31575,328],{"emptyLinePlaceholder":327},[277,31577,31579,31581,31583,31585,31587,31589,31591],{"class":31578,"line":331},[279,9398],[277,31580,405],{"class":311},[277,31582,9380],{"class":356},[277,31584,340],{"class":311},[277,31586,413],{"class":291},[277,31588,448],{"class":283},[277,31590,3542],{"class":356},[277,31592,18277],{"class":283},[277,31594,31595,31597,31599],{"class":279,"line":346},[277,31596,785],{"class":283},[277,31598,288],{"class":287},[277,31600,305],{"class":283},[277,31602,31603],{"class":279,"line":360},[277,31604,328],{"emptyLinePlaceholder":327},[277,31606,31607,31609,31611],{"class":279,"line":371},[277,31608,284],{"class":283},[277,31610,802],{"class":287},[277,31612,305],{"class":283},[277,31614,31616,31618,31620,31622,31624,31626,31629,31631],{"class":31615,"line":381},[279,9398],[277,31617,810],{"class":283},[277,31619,4267],{"class":287},[277,31621,4278],{"class":291},[277,31623,298],{"class":283},[277,31625,12464],{"class":301},[277,31627,31628],{"class":283},">Clicks: {{ count }}\u003C/",[277,31630,4267],{"class":287},[277,31632,305],{"class":283},[277,31634,31635,31637,31639],{"class":279,"line":391},[277,31636,785],{"class":283},[277,31638,802],{"class":287},[277,31640,305],{"class":283},[267,31642,31645],{"className":269,"code":31643,"filename":971,"highlights":31644,"language":272,"meta":273,"style":273},"\u003Cscript lang=\"ts\">\nexport default {\n  data() {\n    return {\n      count: 0,\n    };\n  },\n};\n\u003C/script>\n\n\u003Ctemplate>\n  \u003Cbutton @click=\"count++\">Clicks: {{ count }}\u003C/button>\n\u003C/template>\n",[346,436],[16,31646,31647,31661,31669,31675,31681,31691,31695,31699,31703,31711,31715,31723,31742],{"__ignoreMap":273},[277,31648,31649,31651,31653,31655,31657,31659],{"class":279,"line":280},[277,31650,284],{"class":283},[277,31652,288],{"class":287},[277,31654,295],{"class":291},[277,31656,298],{"class":283},[277,31658,302],{"class":301},[277,31660,305],{"class":283},[277,31662,31663,31665,31667],{"class":279,"line":308},[277,31664,1057],{"class":311},[277,31666,1060],{"class":311},[277,31668,343],{"class":283},[277,31670,31671,31673],{"class":279,"line":324},[277,31672,1086],{"class":291},[277,31674,473],{"class":283},[277,31676,31677,31679],{"class":279,"line":331},[277,31678,1093],{"class":311},[277,31680,343],{"class":283},[277,31682,31684,31687,31689],{"class":31683,"line":346},[279,9398],[277,31685,31686],{"class":283},"      count: ",[277,31688,3542],{"class":356},[277,31690,1077],{"class":283},[277,31692,31693],{"class":279,"line":360},[277,31694,18478],{"class":283},[277,31696,31697],{"class":279,"line":371},[277,31698,1131],{"class":283},[277,31700,31701],{"class":279,"line":381},[277,31702,18255],{"class":283},[277,31704,31705,31707,31709],{"class":279,"line":391},[277,31706,785],{"class":283},[277,31708,288],{"class":287},[277,31710,305],{"class":283},[277,31712,31713],{"class":279,"line":397},[277,31714,328],{"emptyLinePlaceholder":327},[277,31716,31717,31719,31721],{"class":279,"line":402},[277,31718,284],{"class":283},[277,31720,802],{"class":287},[277,31722,305],{"class":283},[277,31724,31726,31728,31730,31732,31734,31736,31738,31740],{"class":31725,"line":436},[279,9398],[277,31727,810],{"class":283},[277,31729,4267],{"class":287},[277,31731,4278],{"class":291},[277,31733,298],{"class":283},[277,31735,12464],{"class":301},[277,31737,31628],{"class":283},[277,31739,4267],{"class":287},[277,31741,305],{"class":283},[277,31743,31744,31746,31748],{"class":279,"line":456},[277,31745,785],{"class":283},[277,31747,802],{"class":287},[277,31749,305],{"class":283},[192,31751,31753,31754],{"id":31752},"_2-submit-de-formulario-con-prevent","2) Submit de formulario con ",[16,31755,31106],{},[267,31757,31760],{"className":269,"code":31758,"filename":271,"highlights":31759,"language":272,"meta":273,"style":273},"\u003Cscript setup lang=\"ts\">\nimport { ref } from \"vue\";\n\nconst email = ref(\"\");\n\nfunction submitForm() {\n  if (!email.value.trim()) return;\n  console.log(\"Enviar:\", email.value);\n}\n\u003C/script>\n\n\u003Ctemplate>\n  \u003Cform @submit.prevent=\"submitForm\">\n    \u003Cinput v-model=\"email\" type=\"email\" placeholder=\"tu@email.com\" />\n    \u003Cbutton type=\"submit\">Enviar\u003C/button>\n  \u003C/form>\n\u003C/template>\n",[456],[16,31761,31762,31778,31790,31794,31811,31815,31824,31844,31858,31862,31870,31874,31882,31899,31928,31948,31956],{"__ignoreMap":273},[277,31763,31764,31766,31768,31770,31772,31774,31776],{"class":279,"line":280},[277,31765,284],{"class":283},[277,31767,288],{"class":287},[277,31769,292],{"class":291},[277,31771,295],{"class":291},[277,31773,298],{"class":283},[277,31775,302],{"class":301},[277,31777,305],{"class":283},[277,31779,31780,31782,31784,31786,31788],{"class":279,"line":308},[277,31781,312],{"class":311},[277,31783,11006],{"class":283},[277,31785,318],{"class":311},[277,31787,18148],{"class":301},[277,31789,18151],{"class":283},[277,31791,31792],{"class":279,"line":324},[277,31793,328],{"emptyLinePlaceholder":327},[277,31795,31796,31798,31801,31803,31805,31807,31809],{"class":279,"line":331},[277,31797,405],{"class":311},[277,31799,31800],{"class":356}," email",[277,31802,340],{"class":311},[277,31804,413],{"class":291},[277,31806,448],{"class":283},[277,31808,25316],{"class":301},[277,31810,18277],{"class":283},[277,31812,31813],{"class":279,"line":346},[277,31814,328],{"emptyLinePlaceholder":327},[277,31816,31817,31819,31822],{"class":279,"line":360},[277,31818,2460],{"class":311},[277,31820,31821],{"class":291}," submitForm",[277,31823,473],{"class":283},[277,31825,31826,31828,31830,31832,31835,31838,31840,31842],{"class":279,"line":371},[277,31827,508],{"class":311},[277,31829,511],{"class":283},[277,31831,514],{"class":311},[277,31833,31834],{"class":283},"email.value.",[277,31836,31837],{"class":291},"trim",[277,31839,569],{"class":283},[277,31841,18346],{"class":311},[277,31843,18151],{"class":283},[277,31845,31846,31848,31850,31852,31855],{"class":279,"line":381},[277,31847,2349],{"class":283},[277,31849,2352],{"class":291},[277,31851,448],{"class":283},[277,31853,31854],{"class":301},"\"Enviar:\"",[277,31856,31857],{"class":283},", email.value);\n",[277,31859,31860],{"class":279,"line":391},[277,31861,394],{"class":283},[277,31863,31864,31866,31868],{"class":279,"line":397},[277,31865,785],{"class":283},[277,31867,288],{"class":287},[277,31869,305],{"class":283},[277,31871,31872],{"class":279,"line":402},[277,31873,328],{"emptyLinePlaceholder":327},[277,31875,31876,31878,31880],{"class":279,"line":436},[277,31877,284],{"class":283},[277,31879,802],{"class":287},[277,31881,305],{"class":283},[277,31883,31885,31887,31889,31892,31894,31897],{"class":31884,"line":456},[279,9398],[277,31886,810],{"class":283},[277,31888,31294],{"class":287},[277,31890,31891],{"class":291}," @submit.prevent",[277,31893,298],{"class":283},[277,31895,31896],{"class":301},"\"submitForm\"",[277,31898,305],{"class":283},[277,31900,31901,31903,31905,31907,31909,31912,31914,31916,31918,31921,31923,31926],{"class":279,"line":461},[277,31902,829],{"class":283},[277,31904,18041],{"class":287},[277,31906,23751],{"class":291},[277,31908,298],{"class":283},[277,31910,31911],{"class":301},"\"email\"",[277,31913,4270],{"class":291},[277,31915,298],{"class":283},[277,31917,31911],{"class":301},[277,31919,31920],{"class":291}," placeholder",[277,31922,298],{"class":283},[277,31924,31925],{"class":301},"\"tu@email.com\"",[277,31927,4325],{"class":283},[277,31929,31930,31932,31934,31936,31938,31941,31944,31946],{"class":279,"line":476},[277,31931,829],{"class":283},[277,31933,4267],{"class":287},[277,31935,4270],{"class":291},[277,31937,298],{"class":283},[277,31939,31940],{"class":301},"\"submit\"",[277,31942,31943],{"class":283},">Enviar\u003C/",[277,31945,4267],{"class":287},[277,31947,305],{"class":283},[277,31949,31950,31952,31954],{"class":279,"line":500},[277,31951,954],{"class":283},[277,31953,31294],{"class":287},[277,31955,305],{"class":283},[277,31957,31958,31960,31962],{"class":279,"line":505},[277,31959,785],{"class":283},[277,31961,802],{"class":287},[277,31963,305],{"class":283},[267,31965,31968],{"className":269,"code":31966,"filename":971,"highlights":31967,"language":272,"meta":273,"style":273},"\u003Cscript lang=\"ts\">\nexport default {\n  data() {\n    return {\n      email: \"\",\n    };\n  },\n  methods: {\n    submitForm() {\n      if (!this.email.trim()) return;\n      console.log(\"Enviar:\", this.email);\n    },\n  },\n};\n\u003C/script>\n\n\u003Ctemplate>\n  \u003Cform @submit.prevent=\"submitForm\">\n    \u003Cinput v-model=\"email\" type=\"email\" placeholder=\"tu@email.com\" />\n    \u003Cbutton type=\"submit\">Enviar\u003C/button>\n  \u003C/form>\n\u003C/template>\n",[520],[16,31969,31970,31984,31992,31998,32004,32013,32017,32021,32025,32032,32053,32070,32074,32078,32082,32090,32094,32102,32117,32143,32161,32169],{"__ignoreMap":273},[277,31971,31972,31974,31976,31978,31980,31982],{"class":279,"line":280},[277,31973,284],{"class":283},[277,31975,288],{"class":287},[277,31977,295],{"class":291},[277,31979,298],{"class":283},[277,31981,302],{"class":301},[277,31983,305],{"class":283},[277,31985,31986,31988,31990],{"class":279,"line":308},[277,31987,1057],{"class":311},[277,31989,1060],{"class":311},[277,31991,343],{"class":283},[277,31993,31994,31996],{"class":279,"line":324},[277,31995,1086],{"class":291},[277,31997,473],{"class":283},[277,31999,32000,32002],{"class":279,"line":331},[277,32001,1093],{"class":311},[277,32003,343],{"class":283},[277,32005,32006,32009,32011],{"class":279,"line":346},[277,32007,32008],{"class":283},"      email: ",[277,32010,25316],{"class":301},[277,32012,1077],{"class":283},[277,32014,32015],{"class":279,"line":360},[277,32016,18478],{"class":283},[277,32018,32019],{"class":279,"line":371},[277,32020,1131],{"class":283},[277,32022,32023],{"class":279,"line":381},[277,32024,1140],{"class":283},[277,32026,32027,32030],{"class":279,"line":391},[277,32028,32029],{"class":291},"    submitForm",[277,32031,473],{"class":283},[277,32033,32034,32036,32038,32040,32042,32045,32047,32049,32051],{"class":279,"line":397},[277,32035,1177],{"class":311},[277,32037,511],{"class":283},[277,32039,514],{"class":311},[277,32041,1341],{"class":356},[277,32043,32044],{"class":283},".email.",[277,32046,31837],{"class":291},[277,32048,569],{"class":283},[277,32050,18346],{"class":311},[277,32052,18151],{"class":283},[277,32054,32055,32057,32059,32061,32063,32065,32067],{"class":279,"line":402},[277,32056,14529],{"class":283},[277,32058,2352],{"class":291},[277,32060,448],{"class":283},[277,32062,31854],{"class":301},[277,32064,225],{"class":283},[277,32066,1341],{"class":356},[277,32068,32069],{"class":283},".email);\n",[277,32071,32072],{"class":279,"line":436},[277,32073,7016],{"class":283},[277,32075,32076],{"class":279,"line":456},[277,32077,1131],{"class":283},[277,32079,32080],{"class":279,"line":461},[277,32081,18255],{"class":283},[277,32083,32084,32086,32088],{"class":279,"line":476},[277,32085,785],{"class":283},[277,32087,288],{"class":287},[277,32089,305],{"class":283},[277,32091,32092],{"class":279,"line":500},[277,32093,328],{"emptyLinePlaceholder":327},[277,32095,32096,32098,32100],{"class":279,"line":505},[277,32097,284],{"class":283},[277,32099,802],{"class":287},[277,32101,305],{"class":283},[277,32103,32105,32107,32109,32111,32113,32115],{"class":32104,"line":520},[279,9398],[277,32106,810],{"class":283},[277,32108,31294],{"class":287},[277,32110,31891],{"class":291},[277,32112,298],{"class":283},[277,32114,31896],{"class":301},[277,32116,305],{"class":283},[277,32118,32119,32121,32123,32125,32127,32129,32131,32133,32135,32137,32139,32141],{"class":279,"line":539},[277,32120,829],{"class":283},[277,32122,18041],{"class":287},[277,32124,23751],{"class":291},[277,32126,298],{"class":283},[277,32128,31911],{"class":301},[277,32130,4270],{"class":291},[277,32132,298],{"class":283},[277,32134,31911],{"class":301},[277,32136,31920],{"class":291},[277,32138,298],{"class":283},[277,32140,31925],{"class":301},[277,32142,4325],{"class":283},[277,32144,32145,32147,32149,32151,32153,32155,32157,32159],{"class":279,"line":545},[277,32146,829],{"class":283},[277,32148,4267],{"class":287},[277,32150,4270],{"class":291},[277,32152,298],{"class":283},[277,32154,31940],{"class":301},[277,32156,31943],{"class":283},[277,32158,4267],{"class":287},[277,32160,305],{"class":283},[277,32162,32163,32165,32167],{"class":279,"line":550},[277,32164,954],{"class":283},[277,32166,31294],{"class":287},[277,32168,305],{"class":283},[277,32170,32171,32173,32175],{"class":279,"line":578},[277,32172,785],{"class":283},[277,32174,802],{"class":287},[277,32176,305],{"class":283},[192,32178,32180],{"id":32179},"_3-atajo-de-teclado-con-modificadores","3) Atajo de teclado con modificadores",[267,32182,32185],{"className":269,"code":32183,"filename":271,"highlights":32184,"language":272,"meta":273,"style":273},"\u003Cscript setup lang=\"ts\">\nimport { ref } from \"vue\";\n\nconst note = ref(\"\");\n\nfunction saveDraft() {\n  console.log(\"Borrador guardado:\", note.value);\n}\n\u003C/script>\n\n\u003Ctemplate>\n  \u003Ctextarea v-model=\"note\" @keydown.ctrl.enter.prevent=\"saveDraft\" />\n\u003C/template>\n",[436],[16,32186,32187,32203,32215,32219,32236,32240,32249,32263,32267,32275,32279,32287,32314],{"__ignoreMap":273},[277,32188,32189,32191,32193,32195,32197,32199,32201],{"class":279,"line":280},[277,32190,284],{"class":283},[277,32192,288],{"class":287},[277,32194,292],{"class":291},[277,32196,295],{"class":291},[277,32198,298],{"class":283},[277,32200,302],{"class":301},[277,32202,305],{"class":283},[277,32204,32205,32207,32209,32211,32213],{"class":279,"line":308},[277,32206,312],{"class":311},[277,32208,11006],{"class":283},[277,32210,318],{"class":311},[277,32212,18148],{"class":301},[277,32214,18151],{"class":283},[277,32216,32217],{"class":279,"line":324},[277,32218,328],{"emptyLinePlaceholder":327},[277,32220,32221,32223,32226,32228,32230,32232,32234],{"class":279,"line":331},[277,32222,405],{"class":311},[277,32224,32225],{"class":356}," note",[277,32227,340],{"class":311},[277,32229,413],{"class":291},[277,32231,448],{"class":283},[277,32233,25316],{"class":301},[277,32235,18277],{"class":283},[277,32237,32238],{"class":279,"line":346},[277,32239,328],{"emptyLinePlaceholder":327},[277,32241,32242,32244,32247],{"class":279,"line":360},[277,32243,2460],{"class":311},[277,32245,32246],{"class":291}," saveDraft",[277,32248,473],{"class":283},[277,32250,32251,32253,32255,32257,32260],{"class":279,"line":371},[277,32252,2349],{"class":283},[277,32254,2352],{"class":291},[277,32256,448],{"class":283},[277,32258,32259],{"class":301},"\"Borrador guardado:\"",[277,32261,32262],{"class":283},", note.value);\n",[277,32264,32265],{"class":279,"line":381},[277,32266,394],{"class":283},[277,32268,32269,32271,32273],{"class":279,"line":391},[277,32270,785],{"class":283},[277,32272,288],{"class":287},[277,32274,305],{"class":283},[277,32276,32277],{"class":279,"line":397},[277,32278,328],{"emptyLinePlaceholder":327},[277,32280,32281,32283,32285],{"class":279,"line":402},[277,32282,284],{"class":283},[277,32284,802],{"class":287},[277,32286,305],{"class":283},[277,32288,32290,32292,32295,32297,32299,32302,32305,32307,32310,32312],{"class":32289,"line":436},[279,9398],[277,32291,810],{"class":283},[277,32293,32294],{"class":287},"textarea",[277,32296,23751],{"class":291},[277,32298,298],{"class":283},[277,32300,32301],{"class":301},"\"note\"",[277,32303,32304],{"class":291}," @keydown.ctrl.enter.prevent",[277,32306,298],{"class":283},[277,32308,32309],{"class":301},"\"saveDraft\"",[277,32311,25951],{"class":25950},[277,32313,305],{"class":283},[277,32315,32316,32318,32320],{"class":279,"line":456},[277,32317,785],{"class":283},[277,32319,802],{"class":287},[277,32321,305],{"class":283},[267,32323,32326],{"className":269,"code":32324,"filename":971,"highlights":32325,"language":272,"meta":273,"style":273},"\u003Cscript lang=\"ts\">\nexport default {\n  data() {\n    return {\n      note: \"\",\n    };\n  },\n  methods: {\n    saveDraft() {\n      console.log(\"Borrador guardado:\", this.note);\n    },\n  },\n};\n\u003C/script>\n\n\u003Ctemplate>\n  \u003Ctextarea v-model=\"note\" @keydown.ctrl.enter.prevent=\"saveDraft\" />\n\u003C/template>\n",[505],[16,32327,32328,32342,32350,32356,32362,32371,32375,32379,32383,32390,32407,32411,32415,32419,32427,32431,32439,32462],{"__ignoreMap":273},[277,32329,32330,32332,32334,32336,32338,32340],{"class":279,"line":280},[277,32331,284],{"class":283},[277,32333,288],{"class":287},[277,32335,295],{"class":291},[277,32337,298],{"class":283},[277,32339,302],{"class":301},[277,32341,305],{"class":283},[277,32343,32344,32346,32348],{"class":279,"line":308},[277,32345,1057],{"class":311},[277,32347,1060],{"class":311},[277,32349,343],{"class":283},[277,32351,32352,32354],{"class":279,"line":324},[277,32353,1086],{"class":291},[277,32355,473],{"class":283},[277,32357,32358,32360],{"class":279,"line":331},[277,32359,1093],{"class":311},[277,32361,343],{"class":283},[277,32363,32364,32367,32369],{"class":279,"line":346},[277,32365,32366],{"class":283},"      note: ",[277,32368,25316],{"class":301},[277,32370,1077],{"class":283},[277,32372,32373],{"class":279,"line":360},[277,32374,18478],{"class":283},[277,32376,32377],{"class":279,"line":371},[277,32378,1131],{"class":283},[277,32380,32381],{"class":279,"line":381},[277,32382,1140],{"class":283},[277,32384,32385,32388],{"class":279,"line":391},[277,32386,32387],{"class":291},"    saveDraft",[277,32389,473],{"class":283},[277,32391,32392,32394,32396,32398,32400,32402,32404],{"class":279,"line":397},[277,32393,14529],{"class":283},[277,32395,2352],{"class":291},[277,32397,448],{"class":283},[277,32399,32259],{"class":301},[277,32401,225],{"class":283},[277,32403,1341],{"class":356},[277,32405,32406],{"class":283},".note);\n",[277,32408,32409],{"class":279,"line":402},[277,32410,7016],{"class":283},[277,32412,32413],{"class":279,"line":436},[277,32414,1131],{"class":283},[277,32416,32417],{"class":279,"line":456},[277,32418,18255],{"class":283},[277,32420,32421,32423,32425],{"class":279,"line":461},[277,32422,785],{"class":283},[277,32424,288],{"class":287},[277,32426,305],{"class":283},[277,32428,32429],{"class":279,"line":476},[277,32430,328],{"emptyLinePlaceholder":327},[277,32432,32433,32435,32437],{"class":279,"line":500},[277,32434,284],{"class":283},[277,32436,802],{"class":287},[277,32438,305],{"class":283},[277,32440,32442,32444,32446,32448,32450,32452,32454,32456,32458,32460],{"class":32441,"line":505},[279,9398],[277,32443,810],{"class":283},[277,32445,32294],{"class":287},[277,32447,23751],{"class":291},[277,32449,298],{"class":283},[277,32451,32301],{"class":301},[277,32453,32304],{"class":291},[277,32455,298],{"class":283},[277,32457,32309],{"class":301},[277,32459,25951],{"class":25950},[277,32461,305],{"class":283},[277,32463,32464,32466,32468],{"class":279,"line":520},[277,32465,785],{"class":283},[277,32467,802],{"class":287},[277,32469,305],{"class":283},[192,32471,32473],{"id":32472},"_4-evento-personalizado-desde-un-componente-hijo","4) Evento personalizado desde un componente hijo",[267,32475,32478],{"className":269,"code":32476,"filename":271,"highlights":32477,"language":272,"meta":273,"style":273},"\u003Cscript setup lang=\"ts\">\nimport TaskForm from \"./TaskForm.vue\";\n\nfunction handleSave(taskTitle: string) {\n  console.log(\"Nueva tarea:\", taskTitle);\n}\n\u003C/script>\n\n\u003Ctemplate>\n  \u003CTaskForm @save=\"handleSave\" />\n\u003C/template>\n",[331,397],[16,32479,32480,32496,32510,32514,32533,32547,32551,32559,32563,32571,32589],{"__ignoreMap":273},[277,32481,32482,32484,32486,32488,32490,32492,32494],{"class":279,"line":280},[277,32483,284],{"class":283},[277,32485,288],{"class":287},[277,32487,292],{"class":291},[277,32489,295],{"class":291},[277,32491,298],{"class":283},[277,32493,302],{"class":301},[277,32495,305],{"class":283},[277,32497,32498,32500,32503,32505,32508],{"class":279,"line":308},[277,32499,312],{"class":311},[277,32501,32502],{"class":283}," TaskForm ",[277,32504,318],{"class":311},[277,32506,32507],{"class":301}," \"./TaskForm.vue\"",[277,32509,18151],{"class":283},[277,32511,32512],{"class":279,"line":324},[277,32513,328],{"emptyLinePlaceholder":327},[277,32515,32517,32519,32522,32524,32527,32529,32531],{"class":32516,"line":331},[279,9398],[277,32518,2460],{"class":311},[277,32520,32521],{"class":291}," handleSave",[277,32523,448],{"class":283},[277,32525,32526],{"class":349},"taskTitle",[277,32528,353],{"class":311},[277,32530,21376],{"class":356},[277,32532,2476],{"class":283},[277,32534,32535,32537,32539,32541,32544],{"class":279,"line":346},[277,32536,2349],{"class":283},[277,32538,2352],{"class":291},[277,32540,448],{"class":283},[277,32542,32543],{"class":301},"\"Nueva tarea:\"",[277,32545,32546],{"class":283},", taskTitle);\n",[277,32548,32549],{"class":279,"line":360},[277,32550,394],{"class":283},[277,32552,32553,32555,32557],{"class":279,"line":371},[277,32554,785],{"class":283},[277,32556,288],{"class":287},[277,32558,305],{"class":283},[277,32560,32561],{"class":279,"line":381},[277,32562,328],{"emptyLinePlaceholder":327},[277,32564,32565,32567,32569],{"class":279,"line":391},[277,32566,284],{"class":283},[277,32568,802],{"class":287},[277,32570,305],{"class":283},[277,32572,32574,32576,32579,32582,32584,32587],{"class":32573,"line":397},[279,9398],[277,32575,810],{"class":283},[277,32577,32578],{"class":287},"TaskForm",[277,32580,32581],{"class":291}," @save",[277,32583,298],{"class":283},[277,32585,32586],{"class":301},"\"handleSave\"",[277,32588,4325],{"class":283},[277,32590,32591,32593,32595],{"class":279,"line":402},[277,32592,785],{"class":283},[277,32594,802],{"class":287},[277,32596,305],{"class":283},[267,32598,32601],{"className":269,"code":32599,"filename":971,"highlights":32600,"language":272,"meta":273,"style":273},"\u003Cscript lang=\"ts\">\nimport TaskForm from \"./TaskForm.vue\";\n\nexport default {\n  components: { TaskForm },\n  methods: {\n    handleSave(taskTitle) {\n      console.log(\"Nueva tarea:\", taskTitle);\n    },\n  },\n};\n\u003C/script>\n\n\u003Ctemplate>\n  \u003CTaskForm @save=\"handleSave\" />\n\u003C/template>\n",[360,461],[16,32602,32603,32617,32629,32633,32641,32646,32651,32662,32674,32678,32682,32686,32694,32698,32707,32721],{"__ignoreMap":273},[277,32604,32605,32607,32609,32611,32613,32615],{"class":279,"line":280},[277,32606,284],{"class":283},[277,32608,288],{"class":287},[277,32610,295],{"class":291},[277,32612,298],{"class":283},[277,32614,302],{"class":301},[277,32616,305],{"class":283},[277,32618,32619,32621,32623,32625,32627],{"class":279,"line":308},[277,32620,312],{"class":311},[277,32622,32502],{"class":283},[277,32624,318],{"class":311},[277,32626,32507],{"class":301},[277,32628,18151],{"class":283},[277,32630,32631],{"class":279,"line":324},[277,32632,328],{"emptyLinePlaceholder":327},[277,32634,32635,32637,32639],{"class":279,"line":331},[277,32636,1057],{"class":311},[277,32638,1060],{"class":311},[277,32640,343],{"class":283},[277,32642,32643],{"class":279,"line":346},[277,32644,32645],{"class":283},"  components: { TaskForm },\n",[277,32647,32649],{"class":32648,"line":360},[279,9398],[277,32650,1140],{"class":283},[277,32652,32653,32656,32658,32660],{"class":279,"line":371},[277,32654,32655],{"class":291},"    handleSave",[277,32657,448],{"class":283},[277,32659,32526],{"class":349},[277,32661,2476],{"class":283},[277,32663,32664,32666,32668,32670,32672],{"class":279,"line":381},[277,32665,14529],{"class":283},[277,32667,2352],{"class":291},[277,32669,448],{"class":283},[277,32671,32543],{"class":301},[277,32673,32546],{"class":283},[277,32675,32676],{"class":279,"line":391},[277,32677,7016],{"class":283},[277,32679,32680],{"class":279,"line":397},[277,32681,1131],{"class":283},[277,32683,32684],{"class":279,"line":402},[277,32685,18255],{"class":283},[277,32687,32688,32690,32692],{"class":279,"line":436},[277,32689,785],{"class":283},[277,32691,288],{"class":287},[277,32693,305],{"class":283},[277,32695,32696],{"class":279,"line":456},[277,32697,328],{"emptyLinePlaceholder":327},[277,32699,32701,32703,32705],{"class":32700,"line":461},[279,9398],[277,32702,284],{"class":283},[277,32704,802],{"class":287},[277,32706,305],{"class":283},[277,32708,32709,32711,32713,32715,32717,32719],{"class":279,"line":476},[277,32710,810],{"class":283},[277,32712,32578],{"class":287},[277,32714,32581],{"class":291},[277,32716,298],{"class":283},[277,32718,32586],{"class":301},[277,32720,4325],{"class":283},[277,32722,32723,32725,32727],{"class":279,"line":500},[277,32724,785],{"class":283},[277,32726,802],{"class":287},[277,32728,305],{"class":283},[30,32730,1976],{"id":1975},[21,32732,32733],{},"Componente de lista de tareas con:",[38,32735,32736,32742,32747],{},[41,32737,32738,32741],{},[16,32739,32740],{},"@submit.prevent"," para crear tareas.",[41,32743,32744,32746],{},[16,32745,24784],{}," para marcar como completada.",[41,32748,32749,32752],{},[16,32750,32751],{},"@keydown.enter"," para envío rápido.",[267,32754,32756],{"className":269,"code":32755,"filename":271,"language":272,"meta":273,"style":273},"\u003Cscript setup lang=\"ts\">\nimport { computed, ref } from \"vue\";\n\ntype Task = {\n  id: number;\n  title: string;\n  done: boolean;\n};\n\nconst draft = ref(\"\");\nconst tasks = ref\u003CTask[]>([]);\n\nconst remaining = computed(() => tasks.value.filter((task) => !task.done).length);\n\nfunction addTask() {\n  const title = draft.value.trim();\n  if (!title) return;\n\n  tasks.value.push({\n    id: Date.now(),\n    title,\n    done: false,\n  });\n  draft.value = \"\";\n}\n\nfunction toggleTask(id: number) {\n  const task = tasks.value.find((item) => item.id === id);\n  if (!task) return;\n  task.done = !task.done;\n}\n\u003C/script>\n\n\u003Ctemplate>\n  \u003Csection>\n    \u003Ch2>Tareas\u003C/h2>\n    \u003Cp>Pendientes: {{ remaining }}\u003C/p>\n\n    \u003Cform @submit.prevent=\"addTask\">\n      \u003Cinput\n        v-model=\"draft\"\n        type=\"text\"\n        placeholder=\"Escribe una tarea y pulsa Enter\"\n        @keydown.enter.prevent=\"addTask\"\n      />\n      \u003Cbutton type=\"submit\">Agregar\u003C/button>\n    \u003C/form>\n\n    \u003Cul>\n      \u003Cli v-for=\"task in tasks\" :key=\"task.id\">\n        \u003Cbutton @click=\"toggleTask(task.id)\">\n          {{ task.done ? \"Reabrir\" : \"Completar\" }}\n        \u003C/button>\n        \u003Cspan :style=\"{ textDecoration: task.done ? 'line-through' : 'none' }\">\n          {{ task.title }}\n        \u003C/span>\n      \u003C/li>\n    \u003C/ul>\n  \u003C/section>\n\u003C/template>\n",[16,32757,32758,32774,32786,32790,32800,32810,32820,32830,32834,32838,32855,32872,32876,32912,32916,32925,32941,32956,32960,32969,32977,32982,32991,32996,33008,33012,33016,33032,33059,33073,33084,33088,33096,33100,33108,33116,33129,33142,33146,33161,33167,33177,33186,33196,33206,33211,33230,33238,33242,33250,33272,33287,33292,33300,33316,33321,33329,33337,33345,33353],{"__ignoreMap":273},[277,32759,32760,32762,32764,32766,32768,32770,32772],{"class":279,"line":280},[277,32761,284],{"class":283},[277,32763,288],{"class":287},[277,32765,292],{"class":291},[277,32767,295],{"class":291},[277,32769,298],{"class":283},[277,32771,302],{"class":301},[277,32773,305],{"class":283},[277,32775,32776,32778,32780,32782,32784],{"class":279,"line":308},[277,32777,312],{"class":311},[277,32779,23384],{"class":283},[277,32781,318],{"class":311},[277,32783,18148],{"class":301},[277,32785,18151],{"class":283},[277,32787,32788],{"class":279,"line":324},[277,32789,328],{"emptyLinePlaceholder":327},[277,32791,32792,32794,32796,32798],{"class":279,"line":331},[277,32793,334],{"class":311},[277,32795,5630],{"class":291},[277,32797,340],{"class":311},[277,32799,343],{"class":283},[277,32801,32802,32804,32806,32808],{"class":279,"line":346},[277,32803,350],{"class":349},[277,32805,353],{"class":311},[277,32807,2473],{"class":356},[277,32809,18151],{"class":283},[277,32811,32812,32814,32816,32818],{"class":279,"line":360},[277,32813,5647],{"class":349},[277,32815,353],{"class":311},[277,32817,21376],{"class":356},[277,32819,18151],{"class":283},[277,32821,32822,32824,32826,32828],{"class":279,"line":371},[277,32823,5656],{"class":349},[277,32825,353],{"class":311},[277,32827,22553],{"class":356},[277,32829,18151],{"class":283},[277,32831,32832],{"class":279,"line":381},[277,32833,18255],{"class":283},[277,32835,32836],{"class":279,"line":391},[277,32837,328],{"emptyLinePlaceholder":327},[277,32839,32840,32842,32845,32847,32849,32851,32853],{"class":279,"line":397},[277,32841,405],{"class":311},[277,32843,32844],{"class":356}," draft",[277,32846,340],{"class":311},[277,32848,413],{"class":291},[277,32850,448],{"class":283},[277,32852,25316],{"class":301},[277,32854,18277],{"class":283},[277,32856,32857,32859,32861,32863,32865,32867,32869],{"class":279,"line":402},[277,32858,405],{"class":311},[277,32860,2097],{"class":356},[277,32862,340],{"class":311},[277,32864,413],{"class":291},[277,32866,284],{"class":283},[277,32868,5684],{"class":291},[277,32870,32871],{"class":283},"[]>([]);\n",[277,32873,32874],{"class":279,"line":436},[277,32875,328],{"emptyLinePlaceholder":327},[277,32877,32878,32880,32883,32885,32887,32889,32891,32893,32895,32897,32899,32901,32903,32905,32908,32910],{"class":279,"line":456},[277,32879,405],{"class":311},[277,32881,32882],{"class":356}," remaining",[277,32884,340],{"class":311},[277,32886,2200],{"class":291},[277,32888,2203],{"class":283},[277,32890,601],{"class":311},[277,32892,2215],{"class":283},[277,32894,2218],{"class":291},[277,32896,2334],{"class":283},[277,32898,2223],{"class":349},[277,32900,2340],{"class":283},[277,32902,601],{"class":311},[277,32904,2288],{"class":311},[277,32906,32907],{"class":283},"task.done).",[277,32909,9813],{"class":356},[277,32911,18277],{"class":283},[277,32913,32914],{"class":279,"line":461},[277,32915,328],{"emptyLinePlaceholder":327},[277,32917,32918,32920,32923],{"class":279,"line":476},[277,32919,2460],{"class":311},[277,32921,32922],{"class":291}," addTask",[277,32924,473],{"class":283},[277,32926,32927,32929,32932,32934,32937,32939],{"class":279,"line":500},[277,32928,479],{"class":311},[277,32930,32931],{"class":356}," title",[277,32933,340],{"class":311},[277,32935,32936],{"class":283}," draft.value.",[277,32938,31837],{"class":291},[277,32940,19422],{"class":283},[277,32942,32943,32945,32947,32949,32952,32954],{"class":279,"line":505},[277,32944,508],{"class":311},[277,32946,511],{"class":283},[277,32948,514],{"class":311},[277,32950,32951],{"class":283},"title) ",[277,32953,18346],{"class":311},[277,32955,18151],{"class":283},[277,32957,32958],{"class":279,"line":520},[277,32959,328],{"emptyLinePlaceholder":327},[277,32961,32962,32965,32967],{"class":279,"line":539},[277,32963,32964],{"class":283},"  tasks.value.",[277,32966,9780],{"class":291},[277,32968,1066],{"class":283},[277,32970,32971,32973,32975],{"class":279,"line":545},[277,32972,9787],{"class":283},[277,32974,9790],{"class":291},[277,32976,9793],{"class":283},[277,32978,32979],{"class":279,"line":550},[277,32980,32981],{"class":283},"    title,\n",[277,32983,32984,32987,32989],{"class":279,"line":578},[277,32985,32986],{"class":283},"    done: ",[277,32988,2123],{"class":356},[277,32990,1077],{"class":283},[277,32992,32993],{"class":279,"line":583},[277,32994,32995],{"class":283},"  });\n",[277,32997,32998,33001,33003,33006],{"class":279,"line":588},[277,32999,33000],{"class":283},"  draft.value ",[277,33002,298],{"class":311},[277,33004,33005],{"class":301}," \"\"",[277,33007,18151],{"class":283},[277,33009,33010],{"class":279,"line":606},[277,33011,394],{"class":283},[277,33013,33014],{"class":279,"line":614},[277,33015,328],{"emptyLinePlaceholder":327},[277,33017,33018,33020,33022,33024,33026,33028,33030],{"class":279,"line":625},[277,33019,2460],{"class":311},[277,33021,2463],{"class":291},[277,33023,448],{"class":283},[277,33025,22042],{"class":349},[277,33027,353],{"class":311},[277,33029,2473],{"class":356},[277,33031,2476],{"class":283},[277,33033,33034,33036,33038,33040,33042,33044,33046,33048,33050,33052,33054,33056],{"class":279,"line":637},[277,33035,479],{"class":311},[277,33037,2483],{"class":356},[277,33039,340],{"class":311},[277,33041,2215],{"class":283},[277,33043,2490],{"class":291},[277,33045,2334],{"class":283},[277,33047,2495],{"class":349},[277,33049,2340],{"class":283},[277,33051,601],{"class":311},[277,33053,2500],{"class":283},[277,33055,2503],{"class":311},[277,33057,33058],{"class":283}," id);\n",[277,33060,33061,33063,33065,33067,33069,33071],{"class":279,"line":646},[277,33062,508],{"class":311},[277,33064,511],{"class":283},[277,33066,514],{"class":311},[277,33068,2521],{"class":283},[277,33070,18346],{"class":311},[277,33072,18151],{"class":283},[277,33074,33075,33077,33079,33081],{"class":279,"line":668},[277,33076,2532],{"class":283},[277,33078,298],{"class":311},[277,33080,2288],{"class":311},[277,33082,33083],{"class":283},"task.done;\n",[277,33085,33086],{"class":279,"line":673},[277,33087,394],{"class":283},[277,33089,33090,33092,33094],{"class":279,"line":679},[277,33091,785],{"class":283},[277,33093,288],{"class":287},[277,33095,305],{"class":283},[277,33097,33098],{"class":279,"line":684},[277,33099,328],{"emptyLinePlaceholder":327},[277,33101,33102,33104,33106],{"class":279,"line":700},[277,33103,284],{"class":283},[277,33105,802],{"class":287},[277,33107,305],{"class":283},[277,33109,33110,33112,33114],{"class":279,"line":717},[277,33111,810],{"class":283},[277,33113,4121],{"class":287},[277,33115,305],{"class":283},[277,33117,33118,33120,33122,33125,33127],{"class":279,"line":722},[277,33119,829],{"class":283},[277,33121,30],{"class":287},[277,33123,33124],{"class":283},">Tareas\u003C/",[277,33126,30],{"class":287},[277,33128,305],{"class":283},[277,33130,33131,33133,33135,33138,33140],{"class":279,"line":729},[277,33132,829],{"class":283},[277,33134,21],{"class":287},[277,33136,33137],{"class":283},">Pendientes: {{ remaining }}\u003C/",[277,33139,21],{"class":287},[277,33141,305],{"class":283},[277,33143,33144],{"class":279,"line":738},[277,33145,328],{"emptyLinePlaceholder":327},[277,33147,33148,33150,33152,33154,33156,33159],{"class":279,"line":747},[277,33149,829],{"class":283},[277,33151,31294],{"class":287},[277,33153,31891],{"class":291},[277,33155,298],{"class":283},[277,33157,33158],{"class":301},"\"addTask\"",[277,33160,305],{"class":283},[277,33162,33163,33165],{"class":279,"line":754},[277,33164,879],{"class":283},[277,33166,11549],{"class":287},[277,33168,33169,33172,33174],{"class":279,"line":772},[277,33170,33171],{"class":291},"        v-model",[277,33173,298],{"class":283},[277,33175,33176],{"class":301},"\"draft\"\n",[277,33178,33179,33182,33184],{"class":279,"line":777},[277,33180,33181],{"class":291},"        type",[277,33183,298],{"class":283},[277,33185,29470],{"class":301},[277,33187,33188,33191,33193],{"class":279,"line":782},[277,33189,33190],{"class":291},"        placeholder",[277,33192,298],{"class":283},[277,33194,33195],{"class":301},"\"Escribe una tarea y pulsa Enter\"\n",[277,33197,33198,33201,33203],{"class":279,"line":792},[277,33199,33200],{"class":291},"        @keydown.enter.prevent",[277,33202,298],{"class":283},[277,33204,33205],{"class":301},"\"addTask\"\n",[277,33207,33208],{"class":279,"line":797},[277,33209,33210],{"class":283},"      />\n",[277,33212,33213,33215,33217,33219,33221,33223,33226,33228],{"class":279,"line":807},[277,33214,879],{"class":283},[277,33216,4267],{"class":287},[277,33218,4270],{"class":291},[277,33220,298],{"class":283},[277,33222,31940],{"class":301},[277,33224,33225],{"class":283},">Agregar\u003C/",[277,33227,4267],{"class":287},[277,33229,305],{"class":283},[277,33231,33232,33234,33236],{"class":279,"line":826},[277,33233,922],{"class":283},[277,33235,31294],{"class":287},[277,33237,305],{"class":283},[277,33239,33240],{"class":279,"line":849},[277,33241,328],{"emptyLinePlaceholder":327},[277,33243,33244,33246,33248],{"class":279,"line":854},[277,33245,829],{"class":283},[277,33247,38],{"class":287},[277,33249,305],{"class":283},[277,33251,33252,33254,33256,33258,33260,33263,33265,33267,33270],{"class":279,"line":876},[277,33253,879],{"class":283},[277,33255,41],{"class":287},[277,33257,12785],{"class":291},[277,33259,298],{"class":283},[277,33261,33262],{"class":301},"\"task in tasks\"",[277,33264,4317],{"class":291},[277,33266,298],{"class":283},[277,33268,33269],{"class":301},"\"task.id\"",[277,33271,305],{"class":283},[277,33273,33274,33276,33278,33280,33282,33285],{"class":279,"line":891},[277,33275,26686],{"class":283},[277,33277,4267],{"class":287},[277,33279,4278],{"class":291},[277,33281,298],{"class":283},[277,33283,33284],{"class":301},"\"toggleTask(task.id)\"",[277,33286,305],{"class":283},[277,33288,33289],{"class":279,"line":905},[277,33290,33291],{"class":283},"          {{ task.done ? \"Reabrir\" : \"Completar\" }}\n",[277,33293,33294,33296,33298],{"class":279,"line":919},[277,33295,26734],{"class":283},[277,33297,4267],{"class":287},[277,33299,305],{"class":283},[277,33301,33302,33304,33306,33309,33311,33314],{"class":279,"line":929},[277,33303,26686],{"class":283},[277,33305,277],{"class":287},[277,33307,33308],{"class":291}," :style",[277,33310,298],{"class":283},[277,33312,33313],{"class":301},"\"{ textDecoration: task.done ? 'line-through' : 'none' }\"",[277,33315,305],{"class":283},[277,33317,33318],{"class":279,"line":934},[277,33319,33320],{"class":283},"          {{ task.title }}\n",[277,33322,33323,33325,33327],{"class":279,"line":951},[277,33324,26734],{"class":283},[277,33326,277],{"class":287},[277,33328,305],{"class":283},[277,33330,33331,33333,33335],{"class":279,"line":961},[277,33332,4175],{"class":283},[277,33334,41],{"class":287},[277,33336,305],{"class":283},[277,33338,33339,33341,33343],{"class":279,"line":1473},[277,33340,922],{"class":283},[277,33342,38],{"class":287},[277,33344,305],{"class":283},[277,33346,33347,33349,33351],{"class":279,"line":1478},[277,33348,954],{"class":283},[277,33350,4121],{"class":287},[277,33352,305],{"class":283},[277,33354,33355,33357,33359],{"class":279,"line":1497},[277,33356,785],{"class":283},[277,33358,802],{"class":287},[277,33360,305],{"class":283},[267,33362,33364],{"className":269,"code":33363,"filename":971,"language":272,"meta":273,"style":273},"\u003Cscript lang=\"ts\">\nexport default {\n  data() {\n    return {\n      draft: \"\",\n      tasks: [],\n    };\n  },\n  computed: {\n    remaining() {\n      return this.tasks.filter((task) => !task.done).length;\n    },\n  },\n  methods: {\n    addTask() {\n      const title = this.draft.trim();\n      if (!title) return;\n\n      this.tasks.push({\n        id: Date.now(),\n        title,\n        done: false,\n      });\n      this.draft = \"\";\n    },\n    toggleTask(id) {\n      const task = this.tasks.find((item) => item.id === id);\n      if (!task) return;\n      task.done = !task.done;\n    },\n  },\n};\n\u003C/script>\n\n\u003Ctemplate>\n  \u003Csection>\n    \u003Ch2>Tareas\u003C/h2>\n    \u003Cp>Pendientes: {{ remaining }}\u003C/p>\n\n    \u003Cform @submit.prevent=\"addTask\">\n      \u003Cinput\n        v-model=\"draft\"\n        type=\"text\"\n        placeholder=\"Escribe una tarea y pulsa Enter\"\n        @keydown.enter.prevent=\"addTask\"\n      />\n      \u003Cbutton type=\"submit\">Agregar\u003C/button>\n    \u003C/form>\n\n    \u003Cul>\n      \u003Cli v-for=\"task in tasks\" :key=\"task.id\">\n        \u003Cbutton @click=\"toggleTask(task.id)\">\n          {{ task.done ? \"Reabrir\" : \"Completar\" }}\n        \u003C/button>\n        \u003Cspan :style=\"{ textDecoration: task.done ? 'line-through' : 'none' }\">\n          {{ task.title }}\n        \u003C/span>\n      \u003C/li>\n    \u003C/ul>\n  \u003C/section>\n\u003C/template>\n",[16,33365,33366,33380,33388,33394,33400,33409,33413,33417,33421,33425,33432,33458,33462,33466,33470,33477,33494,33508,33512,33522,33530,33535,33544,33548,33561,33565,33575,33603,33617,33627,33631,33635,33639,33647,33651,33659,33667,33679,33691,33695,33709,33715,33723,33731,33739,33747,33751,33769,33777,33781,33789,33809,33823,33827,33835,33849,33853,33861,33869,33877,33885],{"__ignoreMap":273},[277,33367,33368,33370,33372,33374,33376,33378],{"class":279,"line":280},[277,33369,284],{"class":283},[277,33371,288],{"class":287},[277,33373,295],{"class":291},[277,33375,298],{"class":283},[277,33377,302],{"class":301},[277,33379,305],{"class":283},[277,33381,33382,33384,33386],{"class":279,"line":308},[277,33383,1057],{"class":311},[277,33385,1060],{"class":311},[277,33387,343],{"class":283},[277,33389,33390,33392],{"class":279,"line":324},[277,33391,1086],{"class":291},[277,33393,473],{"class":283},[277,33395,33396,33398],{"class":279,"line":331},[277,33397,1093],{"class":311},[277,33399,343],{"class":283},[277,33401,33402,33405,33407],{"class":279,"line":346},[277,33403,33404],{"class":283},"      draft: ",[277,33406,25316],{"class":301},[277,33408,1077],{"class":283},[277,33410,33411],{"class":279,"line":360},[277,33412,6606],{"class":283},[277,33414,33415],{"class":279,"line":371},[277,33416,18478],{"class":283},[277,33418,33419],{"class":279,"line":381},[277,33420,1131],{"class":283},[277,33422,33423],{"class":279,"line":391},[277,33424,2742],{"class":283},[277,33426,33427,33430],{"class":279,"line":397},[277,33428,33429],{"class":291},"    remaining",[277,33431,473],{"class":283},[277,33433,33434,33436,33438,33440,33442,33444,33446,33448,33450,33452,33454,33456],{"class":279,"line":402},[277,33435,2754],{"class":311},[277,33437,1268],{"class":356},[277,33439,2759],{"class":283},[277,33441,2218],{"class":291},[277,33443,2334],{"class":283},[277,33445,2223],{"class":349},[277,33447,2340],{"class":283},[277,33449,601],{"class":311},[277,33451,2288],{"class":311},[277,33453,32907],{"class":283},[277,33455,9813],{"class":356},[277,33457,18151],{"class":283},[277,33459,33460],{"class":279,"line":436},[277,33461,7016],{"class":283},[277,33463,33464],{"class":279,"line":456},[277,33465,1131],{"class":283},[277,33467,33468],{"class":279,"line":461},[277,33469,1140],{"class":283},[277,33471,33472,33475],{"class":279,"line":476},[277,33473,33474],{"class":291},"    addTask",[277,33476,473],{"class":283},[277,33478,33479,33481,33483,33485,33487,33490,33492],{"class":279,"line":500},[277,33480,1154],{"class":311},[277,33482,32931],{"class":356},[277,33484,340],{"class":311},[277,33486,1268],{"class":356},[277,33488,33489],{"class":283},".draft.",[277,33491,31837],{"class":291},[277,33493,19422],{"class":283},[277,33495,33496,33498,33500,33502,33504,33506],{"class":279,"line":505},[277,33497,1177],{"class":311},[277,33499,511],{"class":283},[277,33501,514],{"class":311},[277,33503,32951],{"class":283},[277,33505,18346],{"class":311},[277,33507,18151],{"class":283},[277,33509,33510],{"class":279,"line":520},[277,33511,328],{"emptyLinePlaceholder":327},[277,33513,33514,33516,33518,33520],{"class":279,"line":539},[277,33515,1212],{"class":356},[277,33517,2759],{"class":283},[277,33519,9780],{"class":291},[277,33521,1066],{"class":283},[277,33523,33524,33526,33528],{"class":279,"line":545},[277,33525,10220],{"class":283},[277,33527,9790],{"class":291},[277,33529,9793],{"class":283},[277,33531,33532],{"class":279,"line":550},[277,33533,33534],{"class":283},"        title,\n",[277,33536,33537,33540,33542],{"class":279,"line":578},[277,33538,33539],{"class":283},"        done: ",[277,33541,2123],{"class":356},[277,33543,1077],{"class":283},[277,33545,33546],{"class":279,"line":583},[277,33547,30603],{"class":283},[277,33549,33550,33552,33555,33557,33559],{"class":279,"line":588},[277,33551,1212],{"class":356},[277,33553,33554],{"class":283},".draft ",[277,33556,298],{"class":311},[277,33558,33005],{"class":301},[277,33560,18151],{"class":283},[277,33562,33563],{"class":279,"line":606},[277,33564,7016],{"class":283},[277,33566,33567,33569,33571,33573],{"class":279,"line":614},[277,33568,2987],{"class":291},[277,33570,448],{"class":283},[277,33572,22042],{"class":349},[277,33574,2476],{"class":283},[277,33576,33577,33579,33581,33583,33585,33587,33589,33591,33593,33595,33597,33599,33601],{"class":279,"line":625},[277,33578,1154],{"class":311},[277,33580,2483],{"class":356},[277,33582,340],{"class":311},[277,33584,1268],{"class":356},[277,33586,2759],{"class":283},[277,33588,2490],{"class":291},[277,33590,2334],{"class":283},[277,33592,2495],{"class":349},[277,33594,2340],{"class":283},[277,33596,601],{"class":311},[277,33598,2500],{"class":283},[277,33600,2503],{"class":311},[277,33602,33058],{"class":283},[277,33604,33605,33607,33609,33611,33613,33615],{"class":279,"line":637},[277,33606,1177],{"class":311},[277,33608,511],{"class":283},[277,33610,514],{"class":311},[277,33612,2521],{"class":283},[277,33614,18346],{"class":311},[277,33616,18151],{"class":283},[277,33618,33619,33621,33623,33625],{"class":279,"line":646},[277,33620,3044],{"class":283},[277,33622,298],{"class":311},[277,33624,2288],{"class":311},[277,33626,33083],{"class":283},[277,33628,33629],{"class":279,"line":668},[277,33630,7016],{"class":283},[277,33632,33633],{"class":279,"line":673},[277,33634,1131],{"class":283},[277,33636,33637],{"class":279,"line":679},[277,33638,18255],{"class":283},[277,33640,33641,33643,33645],{"class":279,"line":684},[277,33642,785],{"class":283},[277,33644,288],{"class":287},[277,33646,305],{"class":283},[277,33648,33649],{"class":279,"line":700},[277,33650,328],{"emptyLinePlaceholder":327},[277,33652,33653,33655,33657],{"class":279,"line":717},[277,33654,284],{"class":283},[277,33656,802],{"class":287},[277,33658,305],{"class":283},[277,33660,33661,33663,33665],{"class":279,"line":722},[277,33662,810],{"class":283},[277,33664,4121],{"class":287},[277,33666,305],{"class":283},[277,33668,33669,33671,33673,33675,33677],{"class":279,"line":729},[277,33670,829],{"class":283},[277,33672,30],{"class":287},[277,33674,33124],{"class":283},[277,33676,30],{"class":287},[277,33678,305],{"class":283},[277,33680,33681,33683,33685,33687,33689],{"class":279,"line":738},[277,33682,829],{"class":283},[277,33684,21],{"class":287},[277,33686,33137],{"class":283},[277,33688,21],{"class":287},[277,33690,305],{"class":283},[277,33692,33693],{"class":279,"line":747},[277,33694,328],{"emptyLinePlaceholder":327},[277,33696,33697,33699,33701,33703,33705,33707],{"class":279,"line":754},[277,33698,829],{"class":283},[277,33700,31294],{"class":287},[277,33702,31891],{"class":291},[277,33704,298],{"class":283},[277,33706,33158],{"class":301},[277,33708,305],{"class":283},[277,33710,33711,33713],{"class":279,"line":772},[277,33712,879],{"class":283},[277,33714,11549],{"class":287},[277,33716,33717,33719,33721],{"class":279,"line":777},[277,33718,33171],{"class":291},[277,33720,298],{"class":283},[277,33722,33176],{"class":301},[277,33724,33725,33727,33729],{"class":279,"line":782},[277,33726,33181],{"class":291},[277,33728,298],{"class":283},[277,33730,29470],{"class":301},[277,33732,33733,33735,33737],{"class":279,"line":792},[277,33734,33190],{"class":291},[277,33736,298],{"class":283},[277,33738,33195],{"class":301},[277,33740,33741,33743,33745],{"class":279,"line":797},[277,33742,33200],{"class":291},[277,33744,298],{"class":283},[277,33746,33205],{"class":301},[277,33748,33749],{"class":279,"line":807},[277,33750,33210],{"class":283},[277,33752,33753,33755,33757,33759,33761,33763,33765,33767],{"class":279,"line":826},[277,33754,879],{"class":283},[277,33756,4267],{"class":287},[277,33758,4270],{"class":291},[277,33760,298],{"class":283},[277,33762,31940],{"class":301},[277,33764,33225],{"class":283},[277,33766,4267],{"class":287},[277,33768,305],{"class":283},[277,33770,33771,33773,33775],{"class":279,"line":849},[277,33772,922],{"class":283},[277,33774,31294],{"class":287},[277,33776,305],{"class":283},[277,33778,33779],{"class":279,"line":854},[277,33780,328],{"emptyLinePlaceholder":327},[277,33782,33783,33785,33787],{"class":279,"line":876},[277,33784,829],{"class":283},[277,33786,38],{"class":287},[277,33788,305],{"class":283},[277,33790,33791,33793,33795,33797,33799,33801,33803,33805,33807],{"class":279,"line":891},[277,33792,879],{"class":283},[277,33794,41],{"class":287},[277,33796,12785],{"class":291},[277,33798,298],{"class":283},[277,33800,33262],{"class":301},[277,33802,4317],{"class":291},[277,33804,298],{"class":283},[277,33806,33269],{"class":301},[277,33808,305],{"class":283},[277,33810,33811,33813,33815,33817,33819,33821],{"class":279,"line":905},[277,33812,26686],{"class":283},[277,33814,4267],{"class":287},[277,33816,4278],{"class":291},[277,33818,298],{"class":283},[277,33820,33284],{"class":301},[277,33822,305],{"class":283},[277,33824,33825],{"class":279,"line":919},[277,33826,33291],{"class":283},[277,33828,33829,33831,33833],{"class":279,"line":929},[277,33830,26734],{"class":283},[277,33832,4267],{"class":287},[277,33834,305],{"class":283},[277,33836,33837,33839,33841,33843,33845,33847],{"class":279,"line":934},[277,33838,26686],{"class":283},[277,33840,277],{"class":287},[277,33842,33308],{"class":291},[277,33844,298],{"class":283},[277,33846,33313],{"class":301},[277,33848,305],{"class":283},[277,33850,33851],{"class":279,"line":951},[277,33852,33320],{"class":283},[277,33854,33855,33857,33859],{"class":279,"line":961},[277,33856,26734],{"class":283},[277,33858,277],{"class":287},[277,33860,305],{"class":283},[277,33862,33863,33865,33867],{"class":279,"line":1473},[277,33864,4175],{"class":283},[277,33866,41],{"class":287},[277,33868,305],{"class":283},[277,33870,33871,33873,33875],{"class":279,"line":1478},[277,33872,922],{"class":283},[277,33874,38],{"class":287},[277,33876,305],{"class":283},[277,33878,33879,33881,33883],{"class":279,"line":1497},[277,33880,954],{"class":283},[277,33882,4121],{"class":287},[277,33884,305],{"class":283},[277,33886,33887,33889,33891],{"class":279,"line":1510},[277,33888,785],{"class":283},[277,33890,802],{"class":287},[277,33892,305],{"class":283},[30,33894,1596],{"id":1595},[21,33896,33897,33899],{},[16,33898,17977],{}," es la directiva que convierte plantillas estáticas en interfaces interactivas.\nSi la usas con handlers claros y modificadores correctos, reduces bugs y mejoras legibilidad.",[21,33901,33902],{},"Puntos clave para recordar:",[38,33904,33905,33913,33916,33926],{},[41,33906,20777,33907,33910,33911,104],{},[16,33908,33909],{},"@"," como shorthand de ",[16,33912,17977],{},[41,33914,33915],{},"Prefiere funciones del script sobre expresiones complejas inline.",[41,33917,33918,33919,225,33921,225,33923,33925],{},"Aprovecha modificadores (",[16,33920,31106],{},[16,33922,31109],{},[16,33924,31112],{},") cuando sean necesarios.",[41,33927,33928],{},"Mantén consistencia entre Composition API y Options API para facilitar mantenimiento.",[1606,33930,33931],{},"html pre.shiki code .sVt8B, html code.shiki .sVt8B{--shiki-default:#24292E;--shiki-dark:#E1E4E8}html pre.shiki code .s9eBZ, html code.shiki .s9eBZ{--shiki-default:#22863A;--shiki-dark:#85E89D}html pre.shiki code .sScJk, html code.shiki .sScJk{--shiki-default:#6F42C1;--shiki-dark:#B392F0}html pre.shiki code .sZZnC, html code.shiki .sZZnC{--shiki-default:#032F62;--shiki-dark:#9ECBFF}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 .szBVR, html code.shiki .szBVR{--shiki-default:#D73A49;--shiki-dark:#F97583}html pre.shiki code .sj4cs, html code.shiki .sj4cs{--shiki-default:#005CC5;--shiki-dark:#79B8FF}html pre.shiki code .s7hpK, html code.shiki .s7hpK{--shiki-default:#B31D28;--shiki-default-font-style:italic;--shiki-dark:#FDAEB7;--shiki-dark-font-style:italic}html pre.shiki code .s4XuR, html code.shiki .s4XuR{--shiki-default:#E36209;--shiki-dark:#FFAB70}",{"title":273,"searchDepth":308,"depth":308,"links":33933},[33934,33935,33936,33937,33938,33946,33953,33954],{"id":20624,"depth":308,"text":20625},{"id":24652,"depth":308,"text":24653},{"id":128,"depth":308,"text":129},{"id":155,"depth":308,"text":156},{"id":189,"depth":308,"text":190,"children":33939},[33940,33941,33943,33944],{"id":31201,"depth":324,"text":31202},{"id":31276,"depth":324,"text":33942},"2) Olvidar .prevent en formularios",{"id":31351,"depth":324,"text":31352},{"id":31460,"depth":324,"text":33945},"4) Usar event sin declararlo",{"id":1945,"depth":308,"text":1946,"children":33947},[33948,33949,33951,33952],{"id":31536,"depth":324,"text":31537},{"id":31752,"depth":324,"text":33950},"2) Submit de formulario con .prevent",{"id":32179,"depth":324,"text":32180},{"id":32472,"depth":324,"text":32473},{"id":1975,"depth":308,"text":1976},{"id":1595,"depth":308,"text":1596},"https://res.cloudinary.com/denj4fg7f/image/upload/v1771022043/directives-vue-v-on-guide_hwtqel.png","Imagen temporal para portada del articulo sobre v-on en Vue","2026-02-13","Aprende a usar v-on en Vue con eventos del DOM, modificadores, atajos de teclado y buenas practicas para mantener componentes claros y mantenibles.",{"script":33960},[33961],{"type":1632,"key":1633,"data-nuxt-schema-org":327,"nodes":33962},[33963],{"headline":33964,"author":33965,"datePublished":33966,"@type":1640},"Directiva v-on en Vue: guia practica para manejar eventos",{"name":1637,"@type":1638},"2026-02-13T10:30:00-05:00",{"updatedAt":33966,"coverCaption":17759,"author":1637,"keywords":33968},[1645,17977,33969,33970,271,971],"eventos","event modifiers","/blog/directives-vue-v-on-guide.es",[33973],{"headline":33964,"author":33974,"datePublished":33966,"@type":1640},{"name":1637,"@type":1638},{"title":30955,"description":33958},"blog/directives-vue-v-on-guide.es",[33978,33979,33982],{"tag":20588,"color":20589},{"tag":33980,"color":33981},"Eventos","#2D98DA",{"tag":9074,"color":9075},"YWhmpR3FSyV0lOvzaHd-sKKK0-1vhXyd08KqQJW7u4w",{"id":33985,"title":33986,"body":33987,"cover":36943,"coverAlt":36944,"date":36945,"description":36946,"draft":1627,"extension":1628,"head":36947,"locale":1641,"meta":36955,"navigation":327,"path":36960,"schemaOrg":36961,"seo":36964,"series":20582,"seriesDescription":20583,"seriesOrder":331,"seriesTitle":20584,"slug":1656,"stem":36965,"tags":36966,"__hash__":36971},"blog/blog/directives-vue-v-bind-guide.es.md","Directivas en Vue: v-bind",{"type":8,"value":33988,"toc":36912},[33989,33994,33999,34004,34006,34011,34025,34030,34032,34035,34070,34073,34102,34107,34152,34154,34159,34177,34179,34181,34197,34199,34206,34208,34243,34245,34293,34300,34310,34312,34379,34384,34388,34393,34419,34429,34436,34441,34443,34449,34565,34680,34686,34794,34905,34913,35066,35209,35216,35343,35464,35470,35473,35593,35706,35714,35859,36009,36016,36020,36026,36447,36867,36869,36874,36877,36903,36909],[11,33990,20605,33992],{"id":33991},"directivas-en-vue-v-bind",[16,33993,17974],{},[21,33995,33996,33998],{},[16,33997,17974],{}," conecta atributos o props del template con datos reactivos.\nSi el estado cambia, el atributo también cambia.",[21,34000,24593,34001,34003],{},[16,34002,17974],{}," es una de las piezas más importantes porque te permite pasar de HTML estático a UI dinámica sin manipular el DOM manualmente.",[30,34005,20625],{"id":20624},[21,34007,15938,34008,34010],{},[16,34009,17974],{},", terminarías escribiendo lógica imperativa para:",[38,34012,34013,34016,34019,34022],{},[41,34014,34015],{},"Activar/desactivar botones.",[41,34017,34018],{},"Cambiar clases según estado.",[41,34020,34021],{},"Renderizar enlaces o imágenes dinámicas,",[41,34023,34024],{},"Pasar datos de un componente padre a uno hijo.",[21,34026,11996,34027,34029],{},[16,34028,17974],{},", todo eso se vuelve declarativo.\nDescribes la relación entre estado y UI, y Vue se encarga del resto.",[30,34031,24653],{"id":24652},[21,34033,34034],{},"La forma base es:",[267,34036,34038],{"className":269,"code":34037,"filename":9339,"language":272,"meta":273,"style":273},"\u003Ca v-bind:href=\"url\">Ir al sitio\u003C/a>\n",[16,34039,34040],{"__ignoreMap":273},[277,34041,34042,34044,34046,34049,34051,34054,34056,34058,34061,34063,34066,34068],{"class":279,"line":280},[277,34043,284],{"class":283},[277,34045,13178],{"class":287},[277,34047,34048],{"class":291}," v-bind",[277,34050,353],{"class":283},[277,34052,34053],{"class":291},"href",[277,34055,298],{"class":283},[277,34057,866],{"class":301},[277,34059,34060],{"class":283},"url",[277,34062,866],{"class":301},[277,34064,34065],{"class":283},">Ir al sitio\u003C/",[277,34067,13178],{"class":287},[277,34069,305],{"class":283},[21,34071,34072],{},"Shorthand recomendado:",[267,34074,34076],{"className":269,"code":34075,"filename":9339,"language":272,"meta":273,"style":273},"\u003Ca :href=\"url\">Ir al sitio\u003C/a>\n",[16,34077,34078],{"__ignoreMap":273},[277,34079,34080,34082,34084,34086,34088,34090,34092,34094,34096,34098,34100],{"class":279,"line":280},[277,34081,284],{"class":283},[277,34083,13178],{"class":287},[277,34085,6244],{"class":283},[277,34087,34053],{"class":291},[277,34089,298],{"class":283},[277,34091,866],{"class":301},[277,34093,34060],{"class":283},[277,34095,866],{"class":301},[277,34097,34065],{"class":283},[277,34099,13178],{"class":287},[277,34101,305],{"class":283},[21,34103,34104,34106],{},[16,34105,17974],{}," funciona con:",[38,34108,34109,34125,34131,34140,34146],{},[41,34110,34111,34112,225,34114,225,34117,225,34120,225,34122,34124],{},"Atributos HTML (",[16,34113,34053],{},[16,34115,34116],{},"src",[16,34118,34119],{},"disabled",[16,34121,22042],{},[16,34123,23415],{},"),",[41,34126,34127,34128,34124],{},"Props de componentes (",[16,34129,34130],{},":user=\"currentUser\"",[41,34132,34133,34134,1697,34137,34139],{},"Bindings especiales para ",[16,34135,34136],{},"class",[16,34138,1606],{},",",[41,34141,34142,34143,34124],{},"Argumentos dinámicos (",[16,34144,34145],{},":[attrName]=\"value\"",[41,34147,34148,34149,1895],{},"Spread-like bindings (",[16,34150,34151],{},"v-bind=\"attrsObject\"",[30,34153,129],{"id":128},[21,34155,20777,34156,34158],{},[16,34157,17974],{}," cuando necesites:",[38,34160,34161,34164,34171,34174],{},[41,34162,34163],{},"Valores dinámicos en atributos.",[41,34165,34166,34167,5245,34169,1895],{},"Cambiar presentación según estado (",[16,34168,34136],{},[16,34170,1606],{},[41,34172,34173],{},"Pasar datos reactivos a componentes hijos.",[41,34175,34176],{},"Construir componentes reutilizables con props configurables.",[30,34178,156],{"id":155},[21,34180,162],{},[38,34182,34183,34186,34191],{},[41,34184,34185],{},"El valor es fijo y nunca cambia (puedes dejar HTML estático).",[41,34187,34188,34189,1895],{},"Metes lógica compleja directamente en el template (mejor mover a ",[16,34190,1732],{},[41,34192,34193,34194,34196],{},"Usas ",[16,34195,17974],{}," como sustituto de validación o seguridad (eso no lo resuelve el template).",[30,34198,190],{"id":189},[192,34200,34202,34203,34205],{"id":34201},"_1-olvidar-que-v-bind-evalúa-javascript","1) Olvidar que ",[16,34204,17974],{}," evalúa JavaScript",[21,34207,24892],{},[267,34209,34212],{"className":269,"code":34210,"filename":34211,"language":272,"meta":273,"style":273},"\u003Cimg :src=\"/images/avatar.png\" />\n","Incorrecto",[16,34213,34214],{"__ignoreMap":273},[277,34215,34216,34218,34221,34223,34225,34227,34229,34231,34234,34236,34239,34241],{"class":279,"line":280},[277,34217,284],{"class":283},[277,34219,34220],{"class":287},"img",[277,34222,6244],{"class":283},[277,34224,34116],{"class":291},[277,34226,298],{"class":283},[277,34228,866],{"class":301},[277,34230,15951],{"class":311},[277,34232,34233],{"class":283},"images",[277,34235,15951],{"class":311},[277,34237,34238],{"class":283},"avatar.png",[277,34240,866],{"class":301},[277,34242,4325],{"class":283},[21,34244,28466],{},[267,34246,34249],{"className":269,"code":34247,"filename":34248,"language":272,"meta":273,"style":273},"\u003Cimg src=\"/images/avatar.png\" />\n\u003C!-- o -->\n\u003Cimg :src=\"avatarUrl\" />\n","Correcto",[16,34250,34251,34267,34272],{"__ignoreMap":273},[277,34252,34253,34255,34257,34260,34262,34265],{"class":279,"line":280},[277,34254,284],{"class":283},[277,34256,34220],{"class":287},[277,34258,34259],{"class":291}," src",[277,34261,298],{"class":283},[277,34263,34264],{"class":301},"\"/images/avatar.png\"",[277,34266,4325],{"class":283},[277,34268,34269],{"class":279,"line":308},[277,34270,34271],{"class":12741},"\u003C!-- o -->\n",[277,34273,34274,34276,34278,34280,34282,34284,34286,34289,34291],{"class":279,"line":324},[277,34275,284],{"class":283},[277,34277,34220],{"class":287},[277,34279,6244],{"class":283},[277,34281,34116],{"class":291},[277,34283,298],{"class":283},[277,34285,866],{"class":301},[277,34287,34288],{"class":283},"avatarUrl",[277,34290,866],{"class":301},[277,34292,4325],{"class":283},[21,34294,34295,34296,34299],{},"Si usas ",[16,34297,34298],{},":src",", Vue espera una expresión JS válida.",[192,34301,34303,34304,118,34307],{"id":34302},"_2-poner-demasiada-lógica-inline-en-class-o-style","2) Poner demasiada lógica inline en ",[16,34305,34306],{},":class",[16,34308,34309],{},":style",[21,34311,24892],{},[267,34313,34315],{"className":269,"code":34314,"filename":28344,"language":272,"meta":273,"style":273},"\u003Cbutton :class=\"isAdmin && isActive && !isLocked ? 'btn btn-primary' : isLocked ? 'btn btn-muted' : 'btn'\">\n  Guardar\n\u003C/button>\n",[16,34316,34317,34366,34371],{"__ignoreMap":273},[277,34318,34319,34321,34323,34325,34327,34329,34331,34333,34335,34338,34340,34342,34344,34346,34349,34351,34354,34356,34359,34361,34364],{"class":279,"line":280},[277,34320,284],{"class":283},[277,34322,4267],{"class":287},[277,34324,6244],{"class":283},[277,34326,34136],{"class":291},[277,34328,298],{"class":283},[277,34330,866],{"class":301},[277,34332,31377],{"class":283},[277,34334,2310],{"class":311},[277,34336,34337],{"class":283}," isActive ",[277,34339,2310],{"class":311},[277,34341,2288],{"class":311},[277,34343,31389],{"class":283},[277,34345,2285],{"class":311},[277,34347,34348],{"class":301}," 'btn btn-primary'",[277,34350,6244],{"class":311},[277,34352,34353],{"class":283}," isLocked ",[277,34355,2285],{"class":311},[277,34357,34358],{"class":301}," 'btn btn-muted'",[277,34360,6244],{"class":311},[277,34362,34363],{"class":301}," 'btn'\"",[277,34365,305],{"class":283},[277,34367,34368],{"class":279,"line":308},[277,34369,34370],{"class":283},"  Guardar\n",[277,34372,34373,34375,34377],{"class":279,"line":324},[277,34374,785],{"class":283},[277,34376,4267],{"class":287},[277,34378,305],{"class":283},[21,34380,34381,34382,104],{},"Mejor: extraer a ",[16,34383,1732],{},[192,34385,34387],{"id":34386},"_3-confundir-atributo-html-con-prop-de-componente","3) Confundir atributo HTML con prop de componente",[21,34389,34390,34392],{},[16,34391,17974],{}," sirve para ambos, pero en componentes debes pasar la prop exacta definida por el hijo:",[267,34394,34397],{"className":269,"code":34395,"filename":34396,"language":272,"meta":273,"style":273},"\u003CUserCard :user=\"user\" />\n","Padre",[16,34398,34399],{"__ignoreMap":273},[277,34400,34401,34403,34405,34407,34409,34411,34413,34415,34417],{"class":279,"line":280},[277,34402,284],{"class":283},[277,34404,22608],{"class":287},[277,34406,6244],{"class":283},[277,34408,27313],{"class":291},[277,34410,298],{"class":283},[277,34412,866],{"class":301},[277,34414,27313],{"class":283},[277,34416,866],{"class":301},[277,34418,4325],{"class":283},[21,34420,34421,34422,34425,34426,34428],{},"Si el hijo espera ",[16,34423,34424],{},"profile"," y tú pasas ",[16,34427,27313],{},", no llegará la data correcta.",[192,34430,34432,34433,34435],{"id":34431},"_4-creer-que-v-bind-protege-datos","4) Creer que ",[16,34434,17974],{}," \"protege\" datos",[21,34437,34438,34440],{},[16,34439,17974],{}," solo refleja estado en la UI.\nNo reemplaza validación del backend ni reglas de autorización.",[30,34442,1946],{"id":1945},[192,34444,34446,34447,19],{"id":34445},"_1-básico-enlace-dinámico-href","1) Básico: enlace dinámico (",[16,34448,34053],{},[267,34450,34453],{"className":269,"code":34451,"filename":271,"highlights":34452,"language":272,"meta":273,"style":273},"\u003Cscript setup>\nimport { ref } from \"vue\";\n\nconst docsUrl = ref(\"https://vuejs.org/\");\n\u003C/script>\n\n\u003Ctemplate>\n  \u003Ca :href=\"docsUrl\" target=\"_blank\" rel=\"noopener\">Documentación Vue\u003C/a>\n\u003C/template>\n",[331,381],[16,34454,34455,34465,34477,34481,34500,34508,34512,34520,34557],{"__ignoreMap":273},[277,34456,34457,34459,34461,34463],{"class":279,"line":280},[277,34458,284],{"class":283},[277,34460,288],{"class":287},[277,34462,292],{"class":291},[277,34464,305],{"class":283},[277,34466,34467,34469,34471,34473,34475],{"class":279,"line":308},[277,34468,312],{"class":311},[277,34470,11006],{"class":283},[277,34472,318],{"class":311},[277,34474,18148],{"class":301},[277,34476,18151],{"class":283},[277,34478,34479],{"class":279,"line":324},[277,34480,328],{"emptyLinePlaceholder":327},[277,34482,34484,34486,34489,34491,34493,34495,34498],{"class":34483,"line":331},[279,9398],[277,34485,405],{"class":311},[277,34487,34488],{"class":356}," docsUrl",[277,34490,340],{"class":311},[277,34492,413],{"class":291},[277,34494,448],{"class":283},[277,34496,34497],{"class":301},"\"https://vuejs.org/\"",[277,34499,18277],{"class":283},[277,34501,34502,34504,34506],{"class":279,"line":346},[277,34503,785],{"class":283},[277,34505,288],{"class":287},[277,34507,305],{"class":283},[277,34509,34510],{"class":279,"line":360},[277,34511,328],{"emptyLinePlaceholder":327},[277,34513,34514,34516,34518],{"class":279,"line":371},[277,34515,284],{"class":283},[277,34517,802],{"class":287},[277,34519,305],{"class":283},[277,34521,34523,34525,34527,34530,34532,34535,34537,34539,34542,34545,34547,34550,34553,34555],{"class":34522,"line":381},[279,9398],[277,34524,810],{"class":283},[277,34526,13178],{"class":287},[277,34528,34529],{"class":291}," :href",[277,34531,298],{"class":283},[277,34533,34534],{"class":301},"\"docsUrl\"",[277,34536,18401],{"class":291},[277,34538,298],{"class":283},[277,34540,34541],{"class":301},"\"_blank\"",[277,34543,34544],{"class":291}," rel",[277,34546,298],{"class":283},[277,34548,34549],{"class":301},"\"noopener\"",[277,34551,34552],{"class":283},">Documentación Vue\u003C/",[277,34554,13178],{"class":287},[277,34556,305],{"class":283},[277,34558,34559,34561,34563],{"class":279,"line":391},[277,34560,785],{"class":283},[277,34562,802],{"class":287},[277,34564,305],{"class":283},[267,34566,34569],{"className":269,"code":34567,"filename":971,"highlights":34568,"language":272,"meta":273,"style":273},"\u003Cscript>\nexport default {\n  data() {\n    return {\n      docsUrl: \"https://vuejs.org/\",\n    };\n  },\n};\n\u003C/script>\n\n\u003Ctemplate>\n  \u003Ca :href=\"docsUrl\" target=\"_blank\" rel=\"noopener\">Documentación Vue\u003C/a>\n\u003C/template>\n",[346,436],[16,34570,34571,34579,34587,34593,34599,34609,34613,34617,34621,34629,34633,34641,34672],{"__ignoreMap":273},[277,34572,34573,34575,34577],{"class":279,"line":280},[277,34574,284],{"class":283},[277,34576,288],{"class":287},[277,34578,305],{"class":283},[277,34580,34581,34583,34585],{"class":279,"line":308},[277,34582,1057],{"class":311},[277,34584,1060],{"class":311},[277,34586,343],{"class":283},[277,34588,34589,34591],{"class":279,"line":324},[277,34590,1086],{"class":291},[277,34592,473],{"class":283},[277,34594,34595,34597],{"class":279,"line":331},[277,34596,1093],{"class":311},[277,34598,343],{"class":283},[277,34600,34602,34605,34607],{"class":34601,"line":346},[279,9398],[277,34603,34604],{"class":283},"      docsUrl: ",[277,34606,34497],{"class":301},[277,34608,1077],{"class":283},[277,34610,34611],{"class":279,"line":360},[277,34612,18478],{"class":283},[277,34614,34615],{"class":279,"line":371},[277,34616,1131],{"class":283},[277,34618,34619],{"class":279,"line":381},[277,34620,18255],{"class":283},[277,34622,34623,34625,34627],{"class":279,"line":391},[277,34624,785],{"class":283},[277,34626,288],{"class":287},[277,34628,305],{"class":283},[277,34630,34631],{"class":279,"line":397},[277,34632,328],{"emptyLinePlaceholder":327},[277,34634,34635,34637,34639],{"class":279,"line":402},[277,34636,284],{"class":283},[277,34638,802],{"class":287},[277,34640,305],{"class":283},[277,34642,34644,34646,34648,34650,34652,34654,34656,34658,34660,34662,34664,34666,34668,34670],{"class":34643,"line":436},[279,9398],[277,34645,810],{"class":283},[277,34647,13178],{"class":287},[277,34649,34529],{"class":291},[277,34651,298],{"class":283},[277,34653,34534],{"class":301},[277,34655,18401],{"class":291},[277,34657,298],{"class":283},[277,34659,34541],{"class":301},[277,34661,34544],{"class":291},[277,34663,298],{"class":283},[277,34665,34549],{"class":301},[277,34667,34552],{"class":283},[277,34669,13178],{"class":287},[277,34671,305],{"class":283},[277,34673,34674,34676,34678],{"class":279,"line":456},[277,34675,785],{"class":283},[277,34677,802],{"class":287},[277,34679,305],{"class":283},[192,34681,34683,34684,19],{"id":34682},"_2-atributo-booleano-dinámico-disabled","2) Atributo booleano dinámico (",[16,34685,34119],{},[267,34687,34690],{"className":269,"code":34688,"filename":271,"highlights":34689,"language":272,"meta":273,"style":273},"\u003Cscript setup>\nimport { ref } from \"vue\";\n\nconst isSaving = ref(false);\n\u003C/script>\n\n\u003Ctemplate>\n  \u003Cbutton :disabled=\"isSaving\">\n    {{ isSaving ? \"Guardando...\" : \"Guardar cambios\" }}\n  \u003C/button>\n\u003C/template>\n",[331,381],[16,34691,34692,34702,34714,34718,34736,34744,34748,34756,34773,34778,34786],{"__ignoreMap":273},[277,34693,34694,34696,34698,34700],{"class":279,"line":280},[277,34695,284],{"class":283},[277,34697,288],{"class":287},[277,34699,292],{"class":291},[277,34701,305],{"class":283},[277,34703,34704,34706,34708,34710,34712],{"class":279,"line":308},[277,34705,312],{"class":311},[277,34707,11006],{"class":283},[277,34709,318],{"class":311},[277,34711,18148],{"class":301},[277,34713,18151],{"class":283},[277,34715,34716],{"class":279,"line":324},[277,34717,328],{"emptyLinePlaceholder":327},[277,34719,34721,34723,34726,34728,34730,34732,34734],{"class":34720,"line":331},[279,9398],[277,34722,405],{"class":311},[277,34724,34725],{"class":356}," isSaving",[277,34727,340],{"class":311},[277,34729,413],{"class":291},[277,34731,448],{"class":283},[277,34733,2123],{"class":356},[277,34735,18277],{"class":283},[277,34737,34738,34740,34742],{"class":279,"line":346},[277,34739,785],{"class":283},[277,34741,288],{"class":287},[277,34743,305],{"class":283},[277,34745,34746],{"class":279,"line":360},[277,34747,328],{"emptyLinePlaceholder":327},[277,34749,34750,34752,34754],{"class":279,"line":371},[277,34751,284],{"class":283},[277,34753,802],{"class":287},[277,34755,305],{"class":283},[277,34757,34759,34761,34763,34766,34768,34771],{"class":34758,"line":381},[279,9398],[277,34760,810],{"class":283},[277,34762,4267],{"class":287},[277,34764,34765],{"class":291}," :disabled",[277,34767,298],{"class":283},[277,34769,34770],{"class":301},"\"isSaving\"",[277,34772,305],{"class":283},[277,34774,34775],{"class":279,"line":391},[277,34776,34777],{"class":283},"    {{ isSaving ? \"Guardando...\" : \"Guardar cambios\" }}\n",[277,34779,34780,34782,34784],{"class":279,"line":397},[277,34781,954],{"class":283},[277,34783,4267],{"class":287},[277,34785,305],{"class":283},[277,34787,34788,34790,34792],{"class":279,"line":402},[277,34789,785],{"class":283},[277,34791,802],{"class":287},[277,34793,305],{"class":283},[267,34795,34798],{"className":269,"code":34796,"filename":971,"highlights":34797,"language":272,"meta":273,"style":273},"\u003Cscript>\nexport default {\n  data() {\n    return {\n      isSaving: false,\n    };\n  },\n};\n\u003C/script>\n\n\u003Ctemplate>\n  \u003Cbutton :disabled=\"isSaving\">\n    {{ isSaving ? \"Guardando...\" : \"Guardar cambios\" }}\n  \u003C/button>\n\u003C/template>\n",[346,436],[16,34799,34800,34808,34816,34822,34828,34838,34842,34846,34850,34858,34862,34870,34885,34889,34897],{"__ignoreMap":273},[277,34801,34802,34804,34806],{"class":279,"line":280},[277,34803,284],{"class":283},[277,34805,288],{"class":287},[277,34807,305],{"class":283},[277,34809,34810,34812,34814],{"class":279,"line":308},[277,34811,1057],{"class":311},[277,34813,1060],{"class":311},[277,34815,343],{"class":283},[277,34817,34818,34820],{"class":279,"line":324},[277,34819,1086],{"class":291},[277,34821,473],{"class":283},[277,34823,34824,34826],{"class":279,"line":331},[277,34825,1093],{"class":311},[277,34827,343],{"class":283},[277,34829,34831,34834,34836],{"class":34830,"line":346},[279,9398],[277,34832,34833],{"class":283},"      isSaving: ",[277,34835,2123],{"class":356},[277,34837,1077],{"class":283},[277,34839,34840],{"class":279,"line":360},[277,34841,18478],{"class":283},[277,34843,34844],{"class":279,"line":371},[277,34845,1131],{"class":283},[277,34847,34848],{"class":279,"line":381},[277,34849,18255],{"class":283},[277,34851,34852,34854,34856],{"class":279,"line":391},[277,34853,785],{"class":283},[277,34855,288],{"class":287},[277,34857,305],{"class":283},[277,34859,34860],{"class":279,"line":397},[277,34861,328],{"emptyLinePlaceholder":327},[277,34863,34864,34866,34868],{"class":279,"line":402},[277,34865,284],{"class":283},[277,34867,802],{"class":287},[277,34869,305],{"class":283},[277,34871,34873,34875,34877,34879,34881,34883],{"class":34872,"line":436},[279,9398],[277,34874,810],{"class":283},[277,34876,4267],{"class":287},[277,34878,34765],{"class":291},[277,34880,298],{"class":283},[277,34882,34770],{"class":301},[277,34884,305],{"class":283},[277,34886,34887],{"class":279,"line":456},[277,34888,34777],{"class":283},[277,34890,34891,34893,34895],{"class":279,"line":461},[277,34892,954],{"class":283},[277,34894,4267],{"class":287},[277,34896,305],{"class":283},[277,34898,34899,34901,34903],{"class":279,"line":476},[277,34900,785],{"class":283},[277,34902,802],{"class":287},[277,34904,305],{"class":283},[192,34906,34908,34909,34912],{"id":34907},"_3-v-bindclass-con-objeto-patrón-recomendado","3) ",[16,34910,34911],{},"v-bind:class"," con objeto (patrón recomendado)",[267,34914,34917],{"className":269,"code":34915,"filename":271,"highlights":34916,"language":272,"meta":273,"style":273},"\u003Cscript setup>\nimport { ref } from \"vue\";\n\nconst isActive = ref(true);\nconst hasError = ref(false);\n\u003C/script>\n\n\u003Ctemplate>\n  \u003Cp\n    :class=\"{\n      'text-success': isActive,\n      'text-danger': hasError,\n      'text-muted': !isActive && !hasError,\n    }\"\n  >\n    Estado del sistema\n  \u003C/p>\n\u003C/template>\n",[331,397,402,436,456,461],[16,34918,34919,34929,34941,34945,34963,34979,34987,34991,34999,35006,35017,35023,35029,35035,35041,35045,35050,35058],{"__ignoreMap":273},[277,34920,34921,34923,34925,34927],{"class":279,"line":280},[277,34922,284],{"class":283},[277,34924,288],{"class":287},[277,34926,292],{"class":291},[277,34928,305],{"class":283},[277,34930,34931,34933,34935,34937,34939],{"class":279,"line":308},[277,34932,312],{"class":311},[277,34934,11006],{"class":283},[277,34936,318],{"class":311},[277,34938,18148],{"class":301},[277,34940,18151],{"class":283},[277,34942,34943],{"class":279,"line":324},[277,34944,328],{"emptyLinePlaceholder":327},[277,34946,34948,34950,34953,34955,34957,34959,34961],{"class":34947,"line":331},[279,9398],[277,34949,405],{"class":311},[277,34951,34952],{"class":356}," isActive",[277,34954,340],{"class":311},[277,34956,413],{"class":291},[277,34958,448],{"class":283},[277,34960,2149],{"class":356},[277,34962,18277],{"class":283},[277,34964,34965,34967,34969,34971,34973,34975,34977],{"class":279,"line":346},[277,34966,405],{"class":311},[277,34968,3483],{"class":356},[277,34970,340],{"class":311},[277,34972,413],{"class":291},[277,34974,448],{"class":283},[277,34976,2123],{"class":356},[277,34978,18277],{"class":283},[277,34980,34981,34983,34985],{"class":279,"line":360},[277,34982,785],{"class":283},[277,34984,288],{"class":287},[277,34986,305],{"class":283},[277,34988,34989],{"class":279,"line":371},[277,34990,328],{"emptyLinePlaceholder":327},[277,34992,34993,34995,34997],{"class":279,"line":381},[277,34994,284],{"class":283},[277,34996,802],{"class":287},[277,34998,305],{"class":283},[277,35000,35001,35003],{"class":279,"line":391},[277,35002,810],{"class":283},[277,35004,35005],{"class":287},"p\n",[277,35007,35009,35012,35014],{"class":35008,"line":397},[279,9398],[277,35010,35011],{"class":291},"    :class",[277,35013,298],{"class":283},[277,35015,35016],{"class":301},"\"{\n",[277,35018,35020],{"class":35019,"line":402},[279,9398],[277,35021,35022],{"class":301},"      'text-success': isActive,\n",[277,35024,35026],{"class":35025,"line":436},[279,9398],[277,35027,35028],{"class":301},"      'text-danger': hasError,\n",[277,35030,35032],{"class":35031,"line":456},[279,9398],[277,35033,35034],{"class":301},"      'text-muted': !isActive && !hasError,\n",[277,35036,35038],{"class":35037,"line":461},[279,9398],[277,35039,35040],{"class":301},"    }\"\n",[277,35042,35043],{"class":279,"line":476},[277,35044,22757],{"class":283},[277,35046,35047],{"class":279,"line":500},[277,35048,35049],{"class":283},"    Estado del sistema\n",[277,35051,35052,35054,35056],{"class":279,"line":505},[277,35053,954],{"class":283},[277,35055,21],{"class":287},[277,35057,305],{"class":283},[277,35059,35060,35062,35064],{"class":279,"line":520},[277,35061,785],{"class":283},[277,35063,802],{"class":287},[277,35065,305],{"class":283},[267,35067,35070],{"className":269,"code":35068,"filename":971,"highlights":35069,"language":272,"meta":273,"style":273},"\u003Cscript>\nexport default {\n  data() {\n    return {\n      isActive: true,\n      hasError: false,\n    };\n  },\n};\n\u003C/script>\n\n\u003Ctemplate>\n  \u003Cp\n    :class=\"{\n      'text-success': isActive,\n      'text-danger': hasError,\n      'text-muted': !isActive && !hasError,\n    }\"\n  >\n    Estado del sistema\n  \u003C/p>\n\u003C/template>\n",[346,456,461,476,500,505],[16,35071,35072,35080,35088,35094,35100,35110,35118,35122,35126,35130,35138,35142,35150,35157,35166,35171,35176,35181,35185,35189,35193,35201],{"__ignoreMap":273},[277,35073,35074,35076,35078],{"class":279,"line":280},[277,35075,284],{"class":283},[277,35077,288],{"class":287},[277,35079,305],{"class":283},[277,35081,35082,35084,35086],{"class":279,"line":308},[277,35083,1057],{"class":311},[277,35085,1060],{"class":311},[277,35087,343],{"class":283},[277,35089,35090,35092],{"class":279,"line":324},[277,35091,1086],{"class":291},[277,35093,473],{"class":283},[277,35095,35096,35098],{"class":279,"line":331},[277,35097,1093],{"class":311},[277,35099,343],{"class":283},[277,35101,35103,35106,35108],{"class":35102,"line":346},[279,9398],[277,35104,35105],{"class":283},"      isActive: ",[277,35107,2149],{"class":356},[277,35109,1077],{"class":283},[277,35111,35112,35114,35116],{"class":279,"line":360},[277,35113,4663],{"class":283},[277,35115,2123],{"class":356},[277,35117,1077],{"class":283},[277,35119,35120],{"class":279,"line":371},[277,35121,18478],{"class":283},[277,35123,35124],{"class":279,"line":381},[277,35125,1131],{"class":283},[277,35127,35128],{"class":279,"line":391},[277,35129,18255],{"class":283},[277,35131,35132,35134,35136],{"class":279,"line":397},[277,35133,785],{"class":283},[277,35135,288],{"class":287},[277,35137,305],{"class":283},[277,35139,35140],{"class":279,"line":402},[277,35141,328],{"emptyLinePlaceholder":327},[277,35143,35144,35146,35148],{"class":279,"line":436},[277,35145,284],{"class":283},[277,35147,802],{"class":287},[277,35149,305],{"class":283},[277,35151,35153,35155],{"class":35152,"line":456},[279,9398],[277,35154,810],{"class":283},[277,35156,35005],{"class":287},[277,35158,35160,35162,35164],{"class":35159,"line":461},[279,9398],[277,35161,35011],{"class":291},[277,35163,298],{"class":283},[277,35165,35016],{"class":301},[277,35167,35169],{"class":35168,"line":476},[279,9398],[277,35170,35022],{"class":301},[277,35172,35174],{"class":35173,"line":500},[279,9398],[277,35175,35028],{"class":301},[277,35177,35179],{"class":35178,"line":505},[279,9398],[277,35180,35034],{"class":301},[277,35182,35183],{"class":279,"line":520},[277,35184,35040],{"class":301},[277,35186,35187],{"class":279,"line":539},[277,35188,22757],{"class":283},[277,35190,35191],{"class":279,"line":545},[277,35192,35049],{"class":283},[277,35194,35195,35197,35199],{"class":279,"line":550},[277,35196,954],{"class":283},[277,35198,21],{"class":287},[277,35200,305],{"class":283},[277,35202,35203,35205,35207],{"class":279,"line":578},[277,35204,785],{"class":283},[277,35206,802],{"class":287},[277,35208,305],{"class":283},[192,35210,26774,35212,35215],{"id":35211},"_4-v-bindstyle-dinámico-con-objeto",[16,35213,35214],{},"v-bind:style"," dinámico con objeto",[267,35217,35220],{"className":269,"code":35218,"filename":271,"highlights":35219,"language":272,"meta":273,"style":273},"\u003Cscript setup>\nimport { ref } from \"vue\";\n\nconst fontSize = ref(16);\nconst textColor = ref(\"#1D5BA1\");\n\u003C/script>\n\n\u003Ctemplate>\n  \u003Cp :style=\"{ fontSize: `${fontSize}px`, color: textColor }\">\n    Texto con estilo reactivo\n  \u003C/p>\n\u003C/template>\n",[331,346,391],[16,35221,35222,35232,35244,35248,35267,35286,35294,35298,35306,35322,35327,35335],{"__ignoreMap":273},[277,35223,35224,35226,35228,35230],{"class":279,"line":280},[277,35225,284],{"class":283},[277,35227,288],{"class":287},[277,35229,292],{"class":291},[277,35231,305],{"class":283},[277,35233,35234,35236,35238,35240,35242],{"class":279,"line":308},[277,35235,312],{"class":311},[277,35237,11006],{"class":283},[277,35239,318],{"class":311},[277,35241,18148],{"class":301},[277,35243,18151],{"class":283},[277,35245,35246],{"class":279,"line":324},[277,35247,328],{"emptyLinePlaceholder":327},[277,35249,35251,35253,35256,35258,35260,35262,35265],{"class":35250,"line":331},[279,9398],[277,35252,405],{"class":311},[277,35254,35255],{"class":356}," fontSize",[277,35257,340],{"class":311},[277,35259,413],{"class":291},[277,35261,448],{"class":283},[277,35263,35264],{"class":356},"16",[277,35266,18277],{"class":283},[277,35268,35270,35272,35275,35277,35279,35281,35284],{"class":35269,"line":346},[279,9398],[277,35271,405],{"class":311},[277,35273,35274],{"class":356}," textColor",[277,35276,340],{"class":311},[277,35278,413],{"class":291},[277,35280,448],{"class":283},[277,35282,35283],{"class":301},"\"#1D5BA1\"",[277,35285,18277],{"class":283},[277,35287,35288,35290,35292],{"class":279,"line":360},[277,35289,785],{"class":283},[277,35291,288],{"class":287},[277,35293,305],{"class":283},[277,35295,35296],{"class":279,"line":371},[277,35297,328],{"emptyLinePlaceholder":327},[277,35299,35300,35302,35304],{"class":279,"line":381},[277,35301,284],{"class":283},[277,35303,802],{"class":287},[277,35305,305],{"class":283},[277,35307,35309,35311,35313,35315,35317,35320],{"class":35308,"line":391},[279,9398],[277,35310,810],{"class":283},[277,35312,21],{"class":287},[277,35314,33308],{"class":291},[277,35316,298],{"class":283},[277,35318,35319],{"class":301},"\"{ fontSize: `${fontSize}px`, color: textColor }\"",[277,35321,305],{"class":283},[277,35323,35324],{"class":279,"line":397},[277,35325,35326],{"class":283},"    Texto con estilo reactivo\n",[277,35328,35329,35331,35333],{"class":279,"line":402},[277,35330,954],{"class":283},[277,35332,21],{"class":287},[277,35334,305],{"class":283},[277,35336,35337,35339,35341],{"class":279,"line":436},[277,35338,785],{"class":283},[277,35340,802],{"class":287},[277,35342,305],{"class":283},[267,35344,35347],{"className":269,"code":35345,"filename":971,"highlights":35346,"language":272,"meta":273,"style":273},"\u003Cscript>\nexport default {\n  data() {\n    return {\n      fontSize: 16,\n      textColor: \"#1D5BA1\",\n    };\n  },\n};\n\u003C/script>\n\n\u003Ctemplate>\n  \u003Cp :style=\"{ fontSize: `${fontSize}px`, color: textColor }\">\n    Texto con estilo reactivo\n  \u003C/p>\n\u003C/template>\n",[346,360,456],[16,35348,35349,35357,35365,35371,35377,35387,35397,35401,35405,35409,35417,35421,35429,35444,35448,35456],{"__ignoreMap":273},[277,35350,35351,35353,35355],{"class":279,"line":280},[277,35352,284],{"class":283},[277,35354,288],{"class":287},[277,35356,305],{"class":283},[277,35358,35359,35361,35363],{"class":279,"line":308},[277,35360,1057],{"class":311},[277,35362,1060],{"class":311},[277,35364,343],{"class":283},[277,35366,35367,35369],{"class":279,"line":324},[277,35368,1086],{"class":291},[277,35370,473],{"class":283},[277,35372,35373,35375],{"class":279,"line":331},[277,35374,1093],{"class":311},[277,35376,343],{"class":283},[277,35378,35380,35383,35385],{"class":35379,"line":346},[279,9398],[277,35381,35382],{"class":283},"      fontSize: ",[277,35384,35264],{"class":356},[277,35386,1077],{"class":283},[277,35388,35390,35393,35395],{"class":35389,"line":360},[279,9398],[277,35391,35392],{"class":283},"      textColor: ",[277,35394,35283],{"class":301},[277,35396,1077],{"class":283},[277,35398,35399],{"class":279,"line":371},[277,35400,18478],{"class":283},[277,35402,35403],{"class":279,"line":381},[277,35404,1131],{"class":283},[277,35406,35407],{"class":279,"line":391},[277,35408,18255],{"class":283},[277,35410,35411,35413,35415],{"class":279,"line":397},[277,35412,785],{"class":283},[277,35414,288],{"class":287},[277,35416,305],{"class":283},[277,35418,35419],{"class":279,"line":402},[277,35420,328],{"emptyLinePlaceholder":327},[277,35422,35423,35425,35427],{"class":279,"line":436},[277,35424,284],{"class":283},[277,35426,802],{"class":287},[277,35428,305],{"class":283},[277,35430,35432,35434,35436,35438,35440,35442],{"class":35431,"line":456},[279,9398],[277,35433,810],{"class":283},[277,35435,21],{"class":287},[277,35437,33308],{"class":291},[277,35439,298],{"class":283},[277,35441,35319],{"class":301},[277,35443,305],{"class":283},[277,35445,35446],{"class":279,"line":461},[277,35447,35326],{"class":283},[277,35449,35450,35452,35454],{"class":279,"line":476},[277,35451,954],{"class":283},[277,35453,21],{"class":287},[277,35455,305],{"class":283},[277,35457,35458,35460,35462],{"class":279,"line":500},[277,35459,785],{"class":283},[277,35461,802],{"class":287},[277,35463,305],{"class":283},[192,35465,35467,35468],{"id":35466},"_5-argumento-dinámico-attrnamevalue","5) Argumento dinámico: ",[16,35469,34145],{},[21,35471,35472],{},"Útil cuando el nombre del atributo también depende del estado.",[267,35474,35477],{"className":269,"code":35475,"filename":271,"highlights":35476,"language":272,"meta":273,"style":273},"\u003Cscript setup>\nimport { ref } from \"vue\";\n\nconst attrName = ref(\"title\");\nconst attrValue = ref(\"Tooltip dinámico\");\n\u003C/script>\n\n\u003Ctemplate>\n  \u003Cbutton :[attrName]=\"attrValue\">Hover me\u003C/button>\n\u003C/template>\n",[331,346,391],[16,35478,35479,35489,35501,35505,35524,35543,35551,35555,35563,35585],{"__ignoreMap":273},[277,35480,35481,35483,35485,35487],{"class":279,"line":280},[277,35482,284],{"class":283},[277,35484,288],{"class":287},[277,35486,292],{"class":291},[277,35488,305],{"class":283},[277,35490,35491,35493,35495,35497,35499],{"class":279,"line":308},[277,35492,312],{"class":311},[277,35494,11006],{"class":283},[277,35496,318],{"class":311},[277,35498,18148],{"class":301},[277,35500,18151],{"class":283},[277,35502,35503],{"class":279,"line":324},[277,35504,328],{"emptyLinePlaceholder":327},[277,35506,35508,35510,35513,35515,35517,35519,35522],{"class":35507,"line":331},[279,9398],[277,35509,405],{"class":311},[277,35511,35512],{"class":356}," attrName",[277,35514,340],{"class":311},[277,35516,413],{"class":291},[277,35518,448],{"class":283},[277,35520,35521],{"class":301},"\"title\"",[277,35523,18277],{"class":283},[277,35525,35527,35529,35532,35534,35536,35538,35541],{"class":35526,"line":346},[279,9398],[277,35528,405],{"class":311},[277,35530,35531],{"class":356}," attrValue",[277,35533,340],{"class":311},[277,35535,413],{"class":291},[277,35537,448],{"class":283},[277,35539,35540],{"class":301},"\"Tooltip dinámico\"",[277,35542,18277],{"class":283},[277,35544,35545,35547,35549],{"class":279,"line":360},[277,35546,785],{"class":283},[277,35548,288],{"class":287},[277,35550,305],{"class":283},[277,35552,35553],{"class":279,"line":371},[277,35554,328],{"emptyLinePlaceholder":327},[277,35556,35557,35559,35561],{"class":279,"line":381},[277,35558,284],{"class":283},[277,35560,802],{"class":287},[277,35562,305],{"class":283},[277,35564,35566,35568,35570,35573,35575,35578,35581,35583],{"class":35565,"line":391},[279,9398],[277,35567,810],{"class":283},[277,35569,4267],{"class":287},[277,35571,35572],{"class":291}," :[attrName]",[277,35574,298],{"class":283},[277,35576,35577],{"class":301},"\"attrValue\"",[277,35579,35580],{"class":283},">Hover me\u003C/",[277,35582,4267],{"class":287},[277,35584,305],{"class":283},[277,35586,35587,35589,35591],{"class":279,"line":397},[277,35588,785],{"class":283},[277,35590,802],{"class":287},[277,35592,305],{"class":283},[267,35594,35597],{"className":269,"code":35595,"filename":971,"highlights":35596,"language":272,"meta":273,"style":273},"\u003Cscript>\nexport default {\n  data() {\n    return {\n      attrName: \"title\",\n      attrValue: \"Tooltip dinámico\",\n    };\n  },\n};\n\u003C/script>\n\n\u003Ctemplate>\n  \u003Cbutton :[attrName]=\"attrValue\">Hover me\u003C/button>\n\u003C/template>\n",[346,360,456],[16,35598,35599,35607,35615,35621,35627,35637,35647,35651,35655,35659,35667,35671,35679,35698],{"__ignoreMap":273},[277,35600,35601,35603,35605],{"class":279,"line":280},[277,35602,284],{"class":283},[277,35604,288],{"class":287},[277,35606,305],{"class":283},[277,35608,35609,35611,35613],{"class":279,"line":308},[277,35610,1057],{"class":311},[277,35612,1060],{"class":311},[277,35614,343],{"class":283},[277,35616,35617,35619],{"class":279,"line":324},[277,35618,1086],{"class":291},[277,35620,473],{"class":283},[277,35622,35623,35625],{"class":279,"line":331},[277,35624,1093],{"class":311},[277,35626,343],{"class":283},[277,35628,35630,35633,35635],{"class":35629,"line":346},[279,9398],[277,35631,35632],{"class":283},"      attrName: ",[277,35634,35521],{"class":301},[277,35636,1077],{"class":283},[277,35638,35640,35643,35645],{"class":35639,"line":360},[279,9398],[277,35641,35642],{"class":283},"      attrValue: ",[277,35644,35540],{"class":301},[277,35646,1077],{"class":283},[277,35648,35649],{"class":279,"line":371},[277,35650,18478],{"class":283},[277,35652,35653],{"class":279,"line":381},[277,35654,1131],{"class":283},[277,35656,35657],{"class":279,"line":391},[277,35658,18255],{"class":283},[277,35660,35661,35663,35665],{"class":279,"line":397},[277,35662,785],{"class":283},[277,35664,288],{"class":287},[277,35666,305],{"class":283},[277,35668,35669],{"class":279,"line":402},[277,35670,328],{"emptyLinePlaceholder":327},[277,35672,35673,35675,35677],{"class":279,"line":436},[277,35674,284],{"class":283},[277,35676,802],{"class":287},[277,35678,305],{"class":283},[277,35680,35682,35684,35686,35688,35690,35692,35694,35696],{"class":35681,"line":456},[279,9398],[277,35683,810],{"class":283},[277,35685,4267],{"class":287},[277,35687,35572],{"class":291},[277,35689,298],{"class":283},[277,35691,35577],{"class":301},[277,35693,35580],{"class":283},[277,35695,4267],{"class":287},[277,35697,305],{"class":283},[277,35699,35700,35702,35704],{"class":279,"line":461},[277,35701,785],{"class":283},[277,35703,802],{"class":287},[277,35705,305],{"class":283},[192,35707,35709,35710,35713],{"id":35708},"_6-v-bindobj-para-pasar-múltiples-atributos-o-props","6) ",[16,35711,35712],{},"v-bind=\"obj\""," para pasar múltiples atributos o props",[267,35715,35718],{"className":269,"code":35716,"filename":271,"highlights":35717,"language":272,"meta":273,"style":273},"\u003Cscript setup>\nimport { ref } from \"vue\";\n\nconst inputAttrs = ref({\n  id: \"email\",\n  type: \"email\",\n  placeholder: \"tu@email.com\",\n  autocomplete: \"email\",\n  required: true,\n});\n\u003C/script>\n\n\u003Ctemplate>\n  \u003Cinput v-bind=\"inputAttrs\" />\n\u003C/template>\n",[331,346,360,371,381,391,397,461],[16,35719,35720,35730,35742,35746,35760,35770,35780,35790,35800,35810,35815,35823,35827,35835,35851],{"__ignoreMap":273},[277,35721,35722,35724,35726,35728],{"class":279,"line":280},[277,35723,284],{"class":283},[277,35725,288],{"class":287},[277,35727,292],{"class":291},[277,35729,305],{"class":283},[277,35731,35732,35734,35736,35738,35740],{"class":279,"line":308},[277,35733,312],{"class":311},[277,35735,11006],{"class":283},[277,35737,318],{"class":311},[277,35739,18148],{"class":301},[277,35741,18151],{"class":283},[277,35743,35744],{"class":279,"line":324},[277,35745,328],{"emptyLinePlaceholder":327},[277,35747,35749,35751,35754,35756,35758],{"class":35748,"line":331},[279,9398],[277,35750,405],{"class":311},[277,35752,35753],{"class":356}," inputAttrs",[277,35755,340],{"class":311},[277,35757,413],{"class":291},[277,35759,1066],{"class":283},[277,35761,35763,35766,35768],{"class":35762,"line":346},[279,9398],[277,35764,35765],{"class":283},"  id: ",[277,35767,31911],{"class":301},[277,35769,1077],{"class":283},[277,35771,35773,35776,35778],{"class":35772,"line":360},[279,9398],[277,35774,35775],{"class":283},"  type: ",[277,35777,31911],{"class":301},[277,35779,1077],{"class":283},[277,35781,35783,35786,35788],{"class":35782,"line":371},[279,9398],[277,35784,35785],{"class":283},"  placeholder: ",[277,35787,31925],{"class":301},[277,35789,1077],{"class":283},[277,35791,35793,35796,35798],{"class":35792,"line":381},[279,9398],[277,35794,35795],{"class":283},"  autocomplete: ",[277,35797,31911],{"class":301},[277,35799,1077],{"class":283},[277,35801,35803,35806,35808],{"class":35802,"line":391},[279,9398],[277,35804,35805],{"class":283},"  required: ",[277,35807,2149],{"class":356},[277,35809,1077],{"class":283},[277,35811,35813],{"class":35812,"line":397},[279,9398],[277,35814,21454],{"class":283},[277,35816,35817,35819,35821],{"class":279,"line":402},[277,35818,785],{"class":283},[277,35820,288],{"class":287},[277,35822,305],{"class":283},[277,35824,35825],{"class":279,"line":436},[277,35826,328],{"emptyLinePlaceholder":327},[277,35828,35829,35831,35833],{"class":279,"line":456},[277,35830,284],{"class":283},[277,35832,802],{"class":287},[277,35834,305],{"class":283},[277,35836,35838,35840,35842,35844,35846,35849],{"class":35837,"line":461},[279,9398],[277,35839,810],{"class":283},[277,35841,18041],{"class":287},[277,35843,34048],{"class":291},[277,35845,298],{"class":283},[277,35847,35848],{"class":301},"\"inputAttrs\"",[277,35850,4325],{"class":283},[277,35852,35853,35855,35857],{"class":279,"line":476},[277,35854,785],{"class":283},[277,35856,802],{"class":287},[277,35858,305],{"class":283},[267,35860,35863],{"className":269,"code":35861,"filename":971,"highlights":35862,"language":272,"meta":273,"style":273},"\u003Cscript>\nexport default {\n  data() {\n    return {\n      inputAttrs: {\n        id: \"email\",\n        type: \"email\",\n        placeholder: \"tu@email.com\",\n        autocomplete: \"email\",\n        required: true,\n      },\n    };\n  },\n};\n\u003C/script>\n\n\u003Ctemplate>\n  \u003Cinput v-bind=\"inputAttrs\" />\n\u003C/template>\n",[346,360,371,381,391,397,402,520],[16,35864,35865,35873,35881,35887,35893,35899,35909,35919,35929,35939,35949,35954,35958,35962,35966,35974,35978,35986,36001],{"__ignoreMap":273},[277,35866,35867,35869,35871],{"class":279,"line":280},[277,35868,284],{"class":283},[277,35870,288],{"class":287},[277,35872,305],{"class":283},[277,35874,35875,35877,35879],{"class":279,"line":308},[277,35876,1057],{"class":311},[277,35878,1060],{"class":311},[277,35880,343],{"class":283},[277,35882,35883,35885],{"class":279,"line":324},[277,35884,1086],{"class":291},[277,35886,473],{"class":283},[277,35888,35889,35891],{"class":279,"line":331},[277,35890,1093],{"class":311},[277,35892,343],{"class":283},[277,35894,35896],{"class":35895,"line":346},[279,9398],[277,35897,35898],{"class":283},"      inputAttrs: {\n",[277,35900,35902,35905,35907],{"class":35901,"line":360},[279,9398],[277,35903,35904],{"class":283},"        id: ",[277,35906,31911],{"class":301},[277,35908,1077],{"class":283},[277,35910,35912,35915,35917],{"class":35911,"line":371},[279,9398],[277,35913,35914],{"class":283},"        type: ",[277,35916,31911],{"class":301},[277,35918,1077],{"class":283},[277,35920,35922,35925,35927],{"class":35921,"line":381},[279,9398],[277,35923,35924],{"class":283},"        placeholder: ",[277,35926,31925],{"class":301},[277,35928,1077],{"class":283},[277,35930,35932,35935,35937],{"class":35931,"line":391},[279,9398],[277,35933,35934],{"class":283},"        autocomplete: ",[277,35936,31911],{"class":301},[277,35938,1077],{"class":283},[277,35940,35942,35945,35947],{"class":35941,"line":397},[279,9398],[277,35943,35944],{"class":283},"        required: ",[277,35946,2149],{"class":356},[277,35948,1077],{"class":283},[277,35950,35952],{"class":35951,"line":402},[279,9398],[277,35953,2629],{"class":283},[277,35955,35956],{"class":279,"line":436},[277,35957,18478],{"class":283},[277,35959,35960],{"class":279,"line":456},[277,35961,1131],{"class":283},[277,35963,35964],{"class":279,"line":461},[277,35965,18255],{"class":283},[277,35967,35968,35970,35972],{"class":279,"line":476},[277,35969,785],{"class":283},[277,35971,288],{"class":287},[277,35973,305],{"class":283},[277,35975,35976],{"class":279,"line":500},[277,35977,328],{"emptyLinePlaceholder":327},[277,35979,35980,35982,35984],{"class":279,"line":505},[277,35981,284],{"class":283},[277,35983,802],{"class":287},[277,35985,305],{"class":283},[277,35987,35989,35991,35993,35995,35997,35999],{"class":35988,"line":520},[279,9398],[277,35990,810],{"class":283},[277,35992,18041],{"class":287},[277,35994,34048],{"class":291},[277,35996,298],{"class":283},[277,35998,35848],{"class":301},[277,36000,4325],{"class":283},[277,36002,36003,36005,36007],{"class":279,"line":539},[277,36004,785],{"class":283},[277,36006,802],{"class":287},[277,36008,305],{"class":283},[3111,36010,36011],{},[21,36012,36013,36015],{},[16,36014,35712],{}," también es común para forwarding de props en componentes base.",[30,36017,36019],{"id":36018},"ejemplo-integrado","Ejemplo integrado",[21,36021,36022,36023,36025],{},"Formulario simple con ",[16,36024,17974],{}," para atributos, clases y estado.",[267,36027,36029],{"className":269,"code":36028,"filename":271,"language":272,"meta":273,"style":273},"\u003Cscript setup>\nimport { computed, ref } from \"vue\";\n\nconst email = ref(\"\");\nconst isSubmitting = ref(false);\nconst hasError = ref(false);\n\nconst inputAttrs = computed(() => ({\n  type: \"email\",\n  placeholder: \"Ingresa tu correo\",\n  autocomplete: \"email\",\n  required: true,\n}));\n\nconst buttonClass = computed(() => ({\n  \"btn-primary\": !isSubmitting.value,\n  \"btn-disabled\": isSubmitting.value,\n}));\n\nfunction submit() {\n  hasError.value = email.value.trim() === \"\";\n  if (hasError.value) return;\n  isSubmitting.value = true;\n  setTimeout(() => {\n    isSubmitting.value = false;\n  }, 1000);\n}\n\u003C/script>\n\n\u003Ctemplate>\n  \u003Cform @submit.prevent=\"submit\">\n    \u003Cinput v-bind=\"inputAttrs\" v-model=\"email\" :class=\"{ 'input-error': hasError }\" />\n\n    \u003Cbutton :disabled=\"isSubmitting\" :class=\"buttonClass\">\n      {{ isSubmitting ? \"Enviando...\" : \"Enviar\" }}\n    \u003C/button>\n\n    \u003Cp :style=\"{ color: hasError ? '#E74C3C' : '#2ECC71' }\">\n      {{ hasError ? \"El correo es obligatorio.\" : \"Listo para enviar.\" }}\n    \u003C/p>\n  \u003C/form>\n\u003C/template>\n",[16,36030,36031,36041,36053,36057,36073,36090,36106,36110,36127,36135,36144,36152,36160,36165,36169,36186,36198,36206,36210,36214,36223,36242,36253,36264,36275,36286,36294,36298,36306,36310,36318,36332,36360,36364,36386,36391,36399,36403,36418,36423,36431,36439],{"__ignoreMap":273},[277,36032,36033,36035,36037,36039],{"class":279,"line":280},[277,36034,284],{"class":283},[277,36036,288],{"class":287},[277,36038,292],{"class":291},[277,36040,305],{"class":283},[277,36042,36043,36045,36047,36049,36051],{"class":279,"line":308},[277,36044,312],{"class":311},[277,36046,23384],{"class":283},[277,36048,318],{"class":311},[277,36050,18148],{"class":301},[277,36052,18151],{"class":283},[277,36054,36055],{"class":279,"line":324},[277,36056,328],{"emptyLinePlaceholder":327},[277,36058,36059,36061,36063,36065,36067,36069,36071],{"class":279,"line":331},[277,36060,405],{"class":311},[277,36062,31800],{"class":356},[277,36064,340],{"class":311},[277,36066,413],{"class":291},[277,36068,448],{"class":283},[277,36070,25316],{"class":301},[277,36072,18277],{"class":283},[277,36074,36075,36077,36080,36082,36084,36086,36088],{"class":279,"line":346},[277,36076,405],{"class":311},[277,36078,36079],{"class":356}," isSubmitting",[277,36081,340],{"class":311},[277,36083,413],{"class":291},[277,36085,448],{"class":283},[277,36087,2123],{"class":356},[277,36089,18277],{"class":283},[277,36091,36092,36094,36096,36098,36100,36102,36104],{"class":279,"line":360},[277,36093,405],{"class":311},[277,36095,3483],{"class":356},[277,36097,340],{"class":311},[277,36099,413],{"class":291},[277,36101,448],{"class":283},[277,36103,2123],{"class":356},[277,36105,18277],{"class":283},[277,36107,36108],{"class":279,"line":371},[277,36109,328],{"emptyLinePlaceholder":327},[277,36111,36112,36114,36116,36118,36120,36122,36124],{"class":279,"line":381},[277,36113,405],{"class":311},[277,36115,35753],{"class":356},[277,36117,340],{"class":311},[277,36119,2200],{"class":291},[277,36121,2203],{"class":283},[277,36123,601],{"class":311},[277,36125,36126],{"class":283}," ({\n",[277,36128,36129,36131,36133],{"class":279,"line":391},[277,36130,35775],{"class":283},[277,36132,31911],{"class":301},[277,36134,1077],{"class":283},[277,36136,36137,36139,36142],{"class":279,"line":397},[277,36138,35785],{"class":283},[277,36140,36141],{"class":301},"\"Ingresa tu correo\"",[277,36143,1077],{"class":283},[277,36145,36146,36148,36150],{"class":279,"line":402},[277,36147,35795],{"class":283},[277,36149,31911],{"class":301},[277,36151,1077],{"class":283},[277,36153,36154,36156,36158],{"class":279,"line":436},[277,36155,35805],{"class":283},[277,36157,2149],{"class":356},[277,36159,1077],{"class":283},[277,36161,36162],{"class":279,"line":456},[277,36163,36164],{"class":283},"}));\n",[277,36166,36167],{"class":279,"line":461},[277,36168,328],{"emptyLinePlaceholder":327},[277,36170,36171,36173,36176,36178,36180,36182,36184],{"class":279,"line":476},[277,36172,405],{"class":311},[277,36174,36175],{"class":356}," buttonClass",[277,36177,340],{"class":311},[277,36179,2200],{"class":291},[277,36181,2203],{"class":283},[277,36183,601],{"class":311},[277,36185,36126],{"class":283},[277,36187,36188,36191,36193,36195],{"class":279,"line":500},[277,36189,36190],{"class":301},"  \"btn-primary\"",[277,36192,20699],{"class":283},[277,36194,514],{"class":311},[277,36196,36197],{"class":283},"isSubmitting.value,\n",[277,36199,36200,36203],{"class":279,"line":505},[277,36201,36202],{"class":301},"  \"btn-disabled\"",[277,36204,36205],{"class":283},": isSubmitting.value,\n",[277,36207,36208],{"class":279,"line":520},[277,36209,36164],{"class":283},[277,36211,36212],{"class":279,"line":539},[277,36213,328],{"emptyLinePlaceholder":327},[277,36215,36216,36218,36221],{"class":279,"line":545},[277,36217,2460],{"class":311},[277,36219,36220],{"class":291}," submit",[277,36222,473],{"class":283},[277,36224,36225,36227,36229,36232,36234,36236,36238,36240],{"class":279,"line":550},[277,36226,3945],{"class":283},[277,36228,298],{"class":311},[277,36230,36231],{"class":283}," email.value.",[277,36233,31837],{"class":291},[277,36235,8129],{"class":283},[277,36237,2503],{"class":311},[277,36239,33005],{"class":301},[277,36241,18151],{"class":283},[277,36243,36244,36246,36249,36251],{"class":279,"line":578},[277,36245,508],{"class":311},[277,36247,36248],{"class":283}," (hasError.value) ",[277,36250,18346],{"class":311},[277,36252,18151],{"class":283},[277,36254,36255,36258,36260,36262],{"class":279,"line":583},[277,36256,36257],{"class":283},"  isSubmitting.value ",[277,36259,298],{"class":311},[277,36261,20433],{"class":356},[277,36263,18151],{"class":283},[277,36265,36266,36269,36271,36273],{"class":279,"line":588},[277,36267,36268],{"class":291},"  setTimeout",[277,36270,2203],{"class":283},[277,36272,601],{"class":311},[277,36274,343],{"class":283},[277,36276,36277,36280,36282,36284],{"class":279,"line":606},[277,36278,36279],{"class":283},"    isSubmitting.value ",[277,36281,298],{"class":311},[277,36283,19366],{"class":356},[277,36285,18151],{"class":283},[277,36287,36288,36290,36292],{"class":279,"line":614},[277,36289,6120],{"class":283},[277,36291,11248],{"class":356},[277,36293,18277],{"class":283},[277,36295,36296],{"class":279,"line":625},[277,36297,394],{"class":283},[277,36299,36300,36302,36304],{"class":279,"line":637},[277,36301,785],{"class":283},[277,36303,288],{"class":287},[277,36305,305],{"class":283},[277,36307,36308],{"class":279,"line":646},[277,36309,328],{"emptyLinePlaceholder":327},[277,36311,36312,36314,36316],{"class":279,"line":668},[277,36313,284],{"class":283},[277,36315,802],{"class":287},[277,36317,305],{"class":283},[277,36319,36320,36322,36324,36326,36328,36330],{"class":279,"line":673},[277,36321,810],{"class":283},[277,36323,31294],{"class":287},[277,36325,31891],{"class":291},[277,36327,298],{"class":283},[277,36329,31940],{"class":301},[277,36331,305],{"class":283},[277,36333,36334,36336,36338,36340,36342,36344,36346,36348,36350,36353,36355,36358],{"class":279,"line":679},[277,36335,829],{"class":283},[277,36337,18041],{"class":287},[277,36339,34048],{"class":291},[277,36341,298],{"class":283},[277,36343,35848],{"class":301},[277,36345,23751],{"class":291},[277,36347,298],{"class":283},[277,36349,31911],{"class":301},[277,36351,36352],{"class":291}," :class",[277,36354,298],{"class":283},[277,36356,36357],{"class":301},"\"{ 'input-error': hasError }\"",[277,36359,4325],{"class":283},[277,36361,36362],{"class":279,"line":684},[277,36363,328],{"emptyLinePlaceholder":327},[277,36365,36366,36368,36370,36372,36374,36377,36379,36381,36384],{"class":279,"line":700},[277,36367,829],{"class":283},[277,36369,4267],{"class":287},[277,36371,34765],{"class":291},[277,36373,298],{"class":283},[277,36375,36376],{"class":301},"\"isSubmitting\"",[277,36378,36352],{"class":291},[277,36380,298],{"class":283},[277,36382,36383],{"class":301},"\"buttonClass\"",[277,36385,305],{"class":283},[277,36387,36388],{"class":279,"line":717},[277,36389,36390],{"class":283},"      {{ isSubmitting ? \"Enviando...\" : \"Enviar\" }}\n",[277,36392,36393,36395,36397],{"class":279,"line":722},[277,36394,922],{"class":283},[277,36396,4267],{"class":287},[277,36398,305],{"class":283},[277,36400,36401],{"class":279,"line":729},[277,36402,328],{"emptyLinePlaceholder":327},[277,36404,36405,36407,36409,36411,36413,36416],{"class":279,"line":738},[277,36406,829],{"class":283},[277,36408,21],{"class":287},[277,36410,33308],{"class":291},[277,36412,298],{"class":283},[277,36414,36415],{"class":301},"\"{ color: hasError ? '#E74C3C' : '#2ECC71' }\"",[277,36417,305],{"class":283},[277,36419,36420],{"class":279,"line":747},[277,36421,36422],{"class":283},"      {{ hasError ? \"El correo es obligatorio.\" : \"Listo para enviar.\" }}\n",[277,36424,36425,36427,36429],{"class":279,"line":754},[277,36426,922],{"class":283},[277,36428,21],{"class":287},[277,36430,305],{"class":283},[277,36432,36433,36435,36437],{"class":279,"line":772},[277,36434,954],{"class":283},[277,36436,31294],{"class":287},[277,36438,305],{"class":283},[277,36440,36441,36443,36445],{"class":279,"line":777},[277,36442,785],{"class":283},[277,36444,802],{"class":287},[277,36446,305],{"class":283},[267,36448,36450],{"className":269,"code":36449,"filename":971,"language":272,"meta":273,"style":273},"\u003Cscript>\nexport default {\n  data() {\n    return {\n      email: \"\",\n      isSubmitting: false,\n      hasError: false,\n    };\n  },\n  computed: {\n    inputAttrs() {\n      return {\n        type: \"email\",\n        placeholder: \"Ingresa tu correo\",\n        autocomplete: \"email\",\n        required: true,\n      };\n    },\n    buttonClass() {\n      return {\n        \"btn-primary\": !this.isSubmitting,\n        \"btn-disabled\": this.isSubmitting,\n      };\n    },\n  },\n  methods: {\n    submit() {\n      this.hasError = this.email.trim() === \"\";\n      if (this.hasError) return;\n      this.isSubmitting = true;\n      setTimeout(() => {\n        this.isSubmitting = false;\n      }, 1000);\n    },\n  },\n};\n\u003C/script>\n\n\u003Ctemplate>\n  \u003Cform @submit.prevent=\"submit\">\n    \u003Cinput v-bind=\"inputAttrs\" v-model=\"email\" :class=\"{ 'input-error': hasError }\" />\n\n    \u003Cbutton :disabled=\"isSubmitting\" :class=\"buttonClass\">\n      {{ isSubmitting ? \"Enviando...\" : \"Enviar\" }}\n    \u003C/button>\n\n    \u003Cp :style=\"{ color: hasError ? '#E74C3C' : '#2ECC71' }\">\n      {{ hasError ? \"El correo es obligatorio.\" : \"Listo para enviar.\" }}\n    \u003C/p>\n  \u003C/form>\n\u003C/template>\n",[16,36451,36452,36460,36468,36474,36480,36488,36497,36505,36509,36513,36517,36524,36530,36538,36546,36554,36562,36567,36571,36578,36584,36598,36609,36613,36617,36621,36625,36632,36654,36669,36682,36693,36705,36713,36717,36721,36725,36733,36737,36745,36759,36785,36789,36809,36813,36821,36825,36839,36843,36851,36859],{"__ignoreMap":273},[277,36453,36454,36456,36458],{"class":279,"line":280},[277,36455,284],{"class":283},[277,36457,288],{"class":287},[277,36459,305],{"class":283},[277,36461,36462,36464,36466],{"class":279,"line":308},[277,36463,1057],{"class":311},[277,36465,1060],{"class":311},[277,36467,343],{"class":283},[277,36469,36470,36472],{"class":279,"line":324},[277,36471,1086],{"class":291},[277,36473,473],{"class":283},[277,36475,36476,36478],{"class":279,"line":331},[277,36477,1093],{"class":311},[277,36479,343],{"class":283},[277,36481,36482,36484,36486],{"class":279,"line":346},[277,36483,32008],{"class":283},[277,36485,25316],{"class":301},[277,36487,1077],{"class":283},[277,36489,36490,36493,36495],{"class":279,"line":360},[277,36491,36492],{"class":283},"      isSubmitting: ",[277,36494,2123],{"class":356},[277,36496,1077],{"class":283},[277,36498,36499,36501,36503],{"class":279,"line":371},[277,36500,4663],{"class":283},[277,36502,2123],{"class":356},[277,36504,1077],{"class":283},[277,36506,36507],{"class":279,"line":381},[277,36508,18478],{"class":283},[277,36510,36511],{"class":279,"line":391},[277,36512,1131],{"class":283},[277,36514,36515],{"class":279,"line":397},[277,36516,2742],{"class":283},[277,36518,36519,36522],{"class":279,"line":402},[277,36520,36521],{"class":291},"    inputAttrs",[277,36523,473],{"class":283},[277,36525,36526,36528],{"class":279,"line":436},[277,36527,2754],{"class":311},[277,36529,343],{"class":283},[277,36531,36532,36534,36536],{"class":279,"line":456},[277,36533,35914],{"class":283},[277,36535,31911],{"class":301},[277,36537,1077],{"class":283},[277,36539,36540,36542,36544],{"class":279,"line":461},[277,36541,35924],{"class":283},[277,36543,36141],{"class":301},[277,36545,1077],{"class":283},[277,36547,36548,36550,36552],{"class":279,"line":476},[277,36549,35934],{"class":283},[277,36551,31911],{"class":301},[277,36553,1077],{"class":283},[277,36555,36556,36558,36560],{"class":279,"line":500},[277,36557,35944],{"class":283},[277,36559,2149],{"class":356},[277,36561,1077],{"class":283},[277,36563,36564],{"class":279,"line":505},[277,36565,36566],{"class":283},"      };\n",[277,36568,36569],{"class":279,"line":520},[277,36570,7016],{"class":283},[277,36572,36573,36576],{"class":279,"line":539},[277,36574,36575],{"class":291},"    buttonClass",[277,36577,473],{"class":283},[277,36579,36580,36582],{"class":279,"line":545},[277,36581,2754],{"class":311},[277,36583,343],{"class":283},[277,36585,36586,36589,36591,36593,36595],{"class":279,"line":550},[277,36587,36588],{"class":301},"        \"btn-primary\"",[277,36590,20699],{"class":283},[277,36592,514],{"class":311},[277,36594,1341],{"class":356},[277,36596,36597],{"class":283},".isSubmitting,\n",[277,36599,36600,36603,36605,36607],{"class":279,"line":578},[277,36601,36602],{"class":301},"        \"btn-disabled\"",[277,36604,20699],{"class":283},[277,36606,1341],{"class":356},[277,36608,36597],{"class":283},[277,36610,36611],{"class":279,"line":583},[277,36612,36566],{"class":283},[277,36614,36615],{"class":279,"line":588},[277,36616,7016],{"class":283},[277,36618,36619],{"class":279,"line":606},[277,36620,1131],{"class":283},[277,36622,36623],{"class":279,"line":614},[277,36624,1140],{"class":283},[277,36626,36627,36630],{"class":279,"line":625},[277,36628,36629],{"class":291},"    submit",[277,36631,473],{"class":283},[277,36633,36634,36636,36638,36640,36642,36644,36646,36648,36650,36652],{"class":279,"line":637},[277,36635,1212],{"class":356},[277,36637,4727],{"class":283},[277,36639,298],{"class":311},[277,36641,1268],{"class":356},[277,36643,32044],{"class":283},[277,36645,31837],{"class":291},[277,36647,8129],{"class":283},[277,36649,2503],{"class":311},[277,36651,33005],{"class":301},[277,36653,18151],{"class":283},[277,36655,36656,36658,36660,36662,36665,36667],{"class":279,"line":646},[277,36657,1177],{"class":311},[277,36659,511],{"class":283},[277,36661,1341],{"class":356},[277,36663,36664],{"class":283},".hasError) ",[277,36666,18346],{"class":311},[277,36668,18151],{"class":283},[277,36670,36671,36673,36676,36678,36680],{"class":279,"line":668},[277,36672,1212],{"class":356},[277,36674,36675],{"class":283},".isSubmitting ",[277,36677,298],{"class":311},[277,36679,20433],{"class":356},[277,36681,18151],{"class":283},[277,36683,36684,36687,36689,36691],{"class":279,"line":673},[277,36685,36686],{"class":291},"      setTimeout",[277,36688,2203],{"class":283},[277,36690,601],{"class":311},[277,36692,343],{"class":283},[277,36694,36695,36697,36699,36701,36703],{"class":279,"line":679},[277,36696,8819],{"class":356},[277,36698,36675],{"class":283},[277,36700,298],{"class":311},[277,36702,19366],{"class":356},[277,36704,18151],{"class":283},[277,36706,36707,36709,36711],{"class":279,"line":684},[277,36708,7084],{"class":283},[277,36710,11248],{"class":356},[277,36712,18277],{"class":283},[277,36714,36715],{"class":279,"line":700},[277,36716,7016],{"class":283},[277,36718,36719],{"class":279,"line":717},[277,36720,1131],{"class":283},[277,36722,36723],{"class":279,"line":722},[277,36724,18255],{"class":283},[277,36726,36727,36729,36731],{"class":279,"line":729},[277,36728,785],{"class":283},[277,36730,288],{"class":287},[277,36732,305],{"class":283},[277,36734,36735],{"class":279,"line":738},[277,36736,328],{"emptyLinePlaceholder":327},[277,36738,36739,36741,36743],{"class":279,"line":747},[277,36740,284],{"class":283},[277,36742,802],{"class":287},[277,36744,305],{"class":283},[277,36746,36747,36749,36751,36753,36755,36757],{"class":279,"line":754},[277,36748,810],{"class":283},[277,36750,31294],{"class":287},[277,36752,31891],{"class":291},[277,36754,298],{"class":283},[277,36756,31940],{"class":301},[277,36758,305],{"class":283},[277,36760,36761,36763,36765,36767,36769,36771,36773,36775,36777,36779,36781,36783],{"class":279,"line":772},[277,36762,829],{"class":283},[277,36764,18041],{"class":287},[277,36766,34048],{"class":291},[277,36768,298],{"class":283},[277,36770,35848],{"class":301},[277,36772,23751],{"class":291},[277,36774,298],{"class":283},[277,36776,31911],{"class":301},[277,36778,36352],{"class":291},[277,36780,298],{"class":283},[277,36782,36357],{"class":301},[277,36784,4325],{"class":283},[277,36786,36787],{"class":279,"line":777},[277,36788,328],{"emptyLinePlaceholder":327},[277,36790,36791,36793,36795,36797,36799,36801,36803,36805,36807],{"class":279,"line":782},[277,36792,829],{"class":283},[277,36794,4267],{"class":287},[277,36796,34765],{"class":291},[277,36798,298],{"class":283},[277,36800,36376],{"class":301},[277,36802,36352],{"class":291},[277,36804,298],{"class":283},[277,36806,36383],{"class":301},[277,36808,305],{"class":283},[277,36810,36811],{"class":279,"line":792},[277,36812,36390],{"class":283},[277,36814,36815,36817,36819],{"class":279,"line":797},[277,36816,922],{"class":283},[277,36818,4267],{"class":287},[277,36820,305],{"class":283},[277,36822,36823],{"class":279,"line":807},[277,36824,328],{"emptyLinePlaceholder":327},[277,36826,36827,36829,36831,36833,36835,36837],{"class":279,"line":826},[277,36828,829],{"class":283},[277,36830,21],{"class":287},[277,36832,33308],{"class":291},[277,36834,298],{"class":283},[277,36836,36415],{"class":301},[277,36838,305],{"class":283},[277,36840,36841],{"class":279,"line":849},[277,36842,36422],{"class":283},[277,36844,36845,36847,36849],{"class":279,"line":854},[277,36846,922],{"class":283},[277,36848,21],{"class":287},[277,36850,305],{"class":283},[277,36852,36853,36855,36857],{"class":279,"line":876},[277,36854,954],{"class":283},[277,36856,31294],{"class":287},[277,36858,305],{"class":283},[277,36860,36861,36863,36865],{"class":279,"line":891},[277,36862,785],{"class":283},[277,36864,802],{"class":287},[277,36866,305],{"class":283},[30,36868,1596],{"id":1595},[21,36870,36871,36873],{},[16,36872,17974],{}," es la forma declarativa de conectar estado y atributos en Vue.\nDominarlo te permite construir interfaces dinámicas de manera limpia y mantenible.",[21,36875,36876],{},"Qué recordar:",[38,36878,36879,36886,36893,36898],{},[41,36880,36881,36883,36884,104],{},[16,36882,353],{}," es shorthand de ",[16,36885,17974],{},[41,36887,36888,36889,1697,36891,104],{},"Úsalo para atributos, props, ",[16,36890,34136],{},[16,36892,1606],{},[41,36894,36895,36896,104],{},"Evita lógica compleja inline: mueve reglas a ",[16,36897,1732],{},[41,36899,36900,36902],{},[16,36901,35712],{}," es ideal para agrupar atributos/props.",[21,36904,36905,36906,36908],{},"Si entiendes bien ",[16,36907,17974],{},", entiendes una parte central de cómo Vue traduce reactividad en UI real.",[1606,36910,36911],{},"html pre.shiki code .sVt8B, html code.shiki .sVt8B{--shiki-default:#24292E;--shiki-dark:#E1E4E8}html pre.shiki code .s9eBZ, html code.shiki .s9eBZ{--shiki-default:#22863A;--shiki-dark:#85E89D}html pre.shiki code .sScJk, html code.shiki .sScJk{--shiki-default:#6F42C1;--shiki-dark:#B392F0}html pre.shiki code .sZZnC, html code.shiki .sZZnC{--shiki-default:#032F62;--shiki-dark:#9ECBFF}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 .szBVR, html code.shiki .szBVR{--shiki-default:#D73A49;--shiki-dark:#F97583}html pre.shiki code .sJ8bj, html code.shiki .sJ8bj{--shiki-default:#6A737D;--shiki-dark:#6A737D}html pre.shiki code .sj4cs, html code.shiki .sj4cs{--shiki-default:#005CC5;--shiki-dark:#79B8FF}",{"title":273,"searchDepth":308,"depth":308,"links":36913},[36914,36915,36916,36917,36918,36927,36941,36942],{"id":20624,"depth":308,"text":20625},{"id":24652,"depth":308,"text":24653},{"id":128,"depth":308,"text":129},{"id":155,"depth":308,"text":156},{"id":189,"depth":308,"text":190,"children":36919},[36920,36922,36924,36925],{"id":34201,"depth":324,"text":36921},"1) Olvidar que v-bind evalúa JavaScript",{"id":34302,"depth":324,"text":36923},"2) Poner demasiada lógica inline en :class o :style",{"id":34386,"depth":324,"text":34387},{"id":34431,"depth":324,"text":36926},"4) Creer que v-bind \"protege\" datos",{"id":1945,"depth":308,"text":1946,"children":36928},[36929,36931,36933,36935,36937,36939],{"id":34445,"depth":324,"text":36930},"1) Básico: enlace dinámico (href)",{"id":34682,"depth":324,"text":36932},"2) Atributo booleano dinámico (disabled)",{"id":34907,"depth":324,"text":36934},"3) v-bind:class con objeto (patrón recomendado)",{"id":35211,"depth":324,"text":36936},"4) v-bind:style dinámico con objeto",{"id":35466,"depth":324,"text":36938},"5) Argumento dinámico: :[attrName]=\"value\"",{"id":35708,"depth":324,"text":36940},"6) v-bind=\"obj\" para pasar múltiples atributos o props",{"id":36018,"depth":308,"text":36019},{"id":1595,"depth":308,"text":1596},"https://res.cloudinary.com/denj4fg7f/image/upload/v1770849828/directives-vue-v-bind-guide_gqrgyj.png","Imagen temporal para portada del artículo sobre v-bind en Vue","2026-02-11","Aprende a usar v-bind en Vue desde lo más básico hasta patrones avanzados: atributos dinámicos, class/style reactivos, props en componentes y errores comunes.",{"script":36948},[36949],{"type":1632,"key":1633,"data-nuxt-schema-org":327,"nodes":36950},[36951],{"headline":36952,"author":36953,"datePublished":36954,"@type":1640},"Directiva v-bind en Vue: guía de básico a avanzado",{"name":1637,"@type":1638},"2026-02-11T18:00:00-05:00",{"updatedAt":36954,"coverCaption":17759,"author":1637,"keywords":36956},[1645,17974,36957,36958,36959,271,971],"atributos dinámicos","class binding","style binding","/blog/directives-vue-v-bind-guide.es",[36962],{"headline":36952,"author":36963,"datePublished":36954,"@type":1640},{"name":1637,"@type":1638},{"title":33986,"description":36946},"blog/directives-vue-v-bind-guide.es",[36967,36968,36969,36970],{"tag":20588,"color":20589},{"tag":21891,"color":21892},{"tag":3167,"color":3168},{"tag":9074,"color":9075},"7FeTPe6HFMnbuZRGNOIulmDkWQFSNvI3bgVet7-64c0",{"id":36973,"title":36974,"body":36975,"cover":40301,"coverAlt":40302,"date":40303,"description":40304,"draft":1627,"extension":1628,"head":40305,"locale":1641,"meta":40313,"navigation":327,"path":40316,"schemaOrg":40317,"seo":40320,"series":20582,"seriesDescription":20583,"seriesOrder":324,"seriesTitle":20584,"slug":1656,"stem":40321,"tags":40322,"__hash__":40328},"blog/blog/directives-vue-v-for-guide.es.md","Directivas en Vue: v-for",{"type":8,"value":36976,"toc":40265},[36977,36984,36989,36992,37005,37008,37010,37013,37030,37036,37047,37053,37056,37067,37069,37075,37099,37103,37226,37351,37355,37358,37564,37771,37778,37784,37787,37905,38029,38033,38171,38312,38318,38511,38701,38705,38711,38719,38996,39260,39266,39415,39575,39579,39800,40019,40025,40033,40088,40091,40099,40108,40175,40183,40189,40192,40198,40204,40208,40234,40236,40241,40244,40259,40262],[11,36978,36980,36981,36983],{"id":36979},"directiva-v-for-en-vue-de-lo-básico-a-lo-avanzado","Directiva ",[16,36982,24880],{}," en Vue: de lo básico a lo avanzado",[21,36985,36986,36988],{},[16,36987,24880],{}," es la directiva de Vue para renderizar listas.\nParece simple, pero usarla bien marca una diferencia enorme en rendimiento, estabilidad visual y legibilidad del código.",[21,36990,36991],{},"La idea clave es esta:",[38,36993,36994,36999],{},[41,36995,36996,36998],{},[16,36997,24880],{}," describe cómo repetir estructura en el template.",[41,37000,37001,37004],{},[16,37002,37003],{},":key"," le dice a Vue cómo identificar cada nodo de forma estable.",[21,37006,37007],{},"Si dominas ese par, evitas la mayoría de bugs en listas dinámicas.",[30,37009,20625],{"id":20624},[21,37011,37012],{},"En aplicaciones reales siempre renderizas listas:",[38,37014,37015,37018,37021,37024,37027],{},[41,37016,37017],{},"Tareas",[41,37019,37020],{},"Productos",[41,37022,37023],{},"Comentarios",[41,37025,37026],{},"Notificaciones",[41,37028,37029],{},"Filas de tablas",[21,37031,37032,37033,37035],{},"Cuando la lista cambia (insertar, borrar, reordenar), Vue necesita saber qué item es cuál.\nSi la clave (",[16,37034,1789],{},") no es estable, aparecen errores como:",[38,37037,37038,37041,37044],{},[41,37039,37040],{},"Estados internos mezclados entre filas",[41,37042,37043],{},"Animaciones raras",[41,37045,37046],{},"Inputs que \"saltan\" de elemento",[30,37048,37050,37051],{"id":37049},"cuándo-usar-v-for","Cuándo usar ",[16,37052,24880],{},[21,37054,37055],{},"Úsalo cuando necesitas:",[38,37057,37058,37061,37064],{},[41,37059,37060],{},"Renderizar arrays u objetos reactivos",[41,37062,37063],{},"Repetir componentes con distintos datos",[41,37065,37066],{},"Mostrar estructuras anidadas (ej: categorías y productos)",[30,37068,156],{"id":155},[21,37070,37071,37072,37074],{},"Evita usar ",[16,37073,24880],{}," para:",[38,37076,37077,37080,37090],{},[41,37078,37079],{},"Hacer filtrado complejo directamente en el template",[41,37081,37082,37083,1697,37085,37087,37088],{},"Combinar ",[16,37084,7538],{},[16,37086,24880],{}," en el mismo nodo si puedes prefiltrar con ",[16,37089,1732],{},[41,37091,9292,37092,37095,37096,37098],{},[16,37093,37094],{},"index"," como ",[16,37097,1789],{}," en listas que cambian de orden",[30,37100,37102],{"id":37101},"sintaxis-base","Sintaxis base",[267,37104,37107],{"className":269,"code":37105,"filename":271,"highlights":37106,"language":272,"meta":273,"style":273},"\u003Cscript setup>\nimport { ref } from 'vue'\n\nconst frameworks = ref(['Vue', 'React', 'Svelte'])\n\u003C/script>\n\n\u003Ctemplate>\n  \u003Cli v-for=\"framework in frameworks\" :key=\"framework\">\n    {{ framework }}\n  \u003C/li>\n\u003C/template>\n",[381],[16,37108,37109,37119,37129,37133,37162,37170,37174,37182,37205,37210,37218],{"__ignoreMap":273},[277,37110,37111,37113,37115,37117],{"class":279,"line":280},[277,37112,284],{"class":283},[277,37114,288],{"class":287},[277,37116,292],{"class":291},[277,37118,305],{"class":283},[277,37120,37121,37123,37125,37127],{"class":279,"line":308},[277,37122,312],{"class":311},[277,37124,11006],{"class":283},[277,37126,318],{"class":311},[277,37128,321],{"class":301},[277,37130,37131],{"class":279,"line":324},[277,37132,328],{"emptyLinePlaceholder":327},[277,37134,37135,37137,37140,37142,37144,37147,37150,37152,37155,37157,37160],{"class":279,"line":331},[277,37136,405],{"class":311},[277,37138,37139],{"class":356}," frameworks",[277,37141,340],{"class":311},[277,37143,413],{"class":291},[277,37145,37146],{"class":283},"([",[277,37148,37149],{"class":301},"'Vue'",[277,37151,225],{"class":283},[277,37153,37154],{"class":301},"'React'",[277,37156,225],{"class":283},[277,37158,37159],{"class":301},"'Svelte'",[277,37161,2184],{"class":283},[277,37163,37164,37166,37168],{"class":279,"line":346},[277,37165,785],{"class":283},[277,37167,288],{"class":287},[277,37169,305],{"class":283},[277,37171,37172],{"class":279,"line":360},[277,37173,328],{"emptyLinePlaceholder":327},[277,37175,37176,37178,37180],{"class":279,"line":371},[277,37177,284],{"class":283},[277,37179,802],{"class":287},[277,37181,305],{"class":283},[277,37183,37185,37187,37189,37191,37193,37196,37198,37200,37203],{"class":37184,"line":381},[279,9398],[277,37186,810],{"class":283},[277,37188,41],{"class":287},[277,37190,12785],{"class":291},[277,37192,298],{"class":283},[277,37194,37195],{"class":301},"\"framework in frameworks\"",[277,37197,4317],{"class":291},[277,37199,298],{"class":283},[277,37201,37202],{"class":301},"\"framework\"",[277,37204,305],{"class":283},[277,37206,37207],{"class":279,"line":391},[277,37208,37209],{"class":283},"    {{ framework }}\n",[277,37211,37212,37214,37216],{"class":279,"line":397},[277,37213,954],{"class":283},[277,37215,41],{"class":287},[277,37217,305],{"class":283},[277,37219,37220,37222,37224],{"class":279,"line":402},[277,37221,785],{"class":283},[277,37223,802],{"class":287},[277,37225,305],{"class":283},[267,37227,37230],{"className":269,"code":37228,"filename":971,"highlights":37229,"language":272,"meta":273,"style":273},"\u003Cscript>\nexport default {\n  data() {\n    return {\n      frameworks: ['Vue', 'React', 'Svelte']\n    }\n  }\n}\n\u003C/script>\n\n\u003Ctemplate>\n  \u003Cli v-for=\"framework in frameworks\" :key=\"framework\">\n    {{ framework }}\n  \u003C/li>\n\u003C/template>\n",[436],[16,37231,37232,37240,37248,37254,37260,37278,37282,37286,37290,37298,37302,37310,37331,37335,37343],{"__ignoreMap":273},[277,37233,37234,37236,37238],{"class":279,"line":280},[277,37235,284],{"class":283},[277,37237,288],{"class":287},[277,37239,305],{"class":283},[277,37241,37242,37244,37246],{"class":279,"line":308},[277,37243,1057],{"class":311},[277,37245,1060],{"class":311},[277,37247,343],{"class":283},[277,37249,37250,37252],{"class":279,"line":324},[277,37251,1086],{"class":291},[277,37253,473],{"class":283},[277,37255,37256,37258],{"class":279,"line":331},[277,37257,1093],{"class":311},[277,37259,343],{"class":283},[277,37261,37262,37265,37267,37269,37271,37273,37275],{"class":279,"line":346},[277,37263,37264],{"class":283},"      frameworks: [",[277,37266,37149],{"class":301},[277,37268,225],{"class":283},[277,37270,37154],{"class":301},[277,37272,225],{"class":283},[277,37274,37159],{"class":301},[277,37276,37277],{"class":283},"]\n",[277,37279,37280],{"class":279,"line":360},[277,37281,1126],{"class":283},[277,37283,37284],{"class":279,"line":371},[277,37285,542],{"class":283},[277,37287,37288],{"class":279,"line":381},[277,37289,394],{"class":283},[277,37291,37292,37294,37296],{"class":279,"line":391},[277,37293,785],{"class":283},[277,37295,288],{"class":287},[277,37297,305],{"class":283},[277,37299,37300],{"class":279,"line":397},[277,37301,328],{"emptyLinePlaceholder":327},[277,37303,37304,37306,37308],{"class":279,"line":402},[277,37305,284],{"class":283},[277,37307,802],{"class":287},[277,37309,305],{"class":283},[277,37311,37313,37315,37317,37319,37321,37323,37325,37327,37329],{"class":37312,"line":436},[279,9398],[277,37314,810],{"class":283},[277,37316,41],{"class":287},[277,37318,12785],{"class":291},[277,37320,298],{"class":283},[277,37322,37195],{"class":301},[277,37324,4317],{"class":291},[277,37326,298],{"class":283},[277,37328,37202],{"class":301},[277,37330,305],{"class":283},[277,37332,37333],{"class":279,"line":456},[277,37334,37209],{"class":283},[277,37336,37337,37339,37341],{"class":279,"line":461},[277,37338,954],{"class":283},[277,37340,41],{"class":287},[277,37342,305],{"class":283},[277,37344,37345,37347,37349],{"class":279,"line":476},[277,37346,785],{"class":283},[277,37348,802],{"class":287},[277,37350,305],{"class":283},[30,37352,37354],{"id":37353},"ejemplo-básico-lista-de-tareas","Ejemplo básico: lista de tareas",[21,37356,37357],{},"Este es el patrón más común y correcto para empezar.",[267,37359,37362],{"className":269,"code":37360,"filename":271,"highlights":37361,"language":272,"meta":273,"style":273},"\u003Cscript setup>\nimport { ref } from 'vue'\n\nconst todos = ref([\n  { id: 1, text: 'Aprender v-for', done: true },\n  { id: 2, text: 'Practicar key estable', done: false },\n  { id: 3, text: 'Evitar index como key', done: false }\n])\n\u003C/script>\n\n\u003Ctemplate>\n  \u003Cul>\n    \u003Cli v-for=\"todo in todos\" :key=\"todo.id\">\n      \u003Cspan :style=\"{ textDecoration: todo.done ? 'line-through' : 'none' }\">\n        {{ todo.text }}\n      \u003C/span>\n    \u003C/li>\n  \u003C/ul>\n\u003C/template>\n",[331,346,360,371,381,456],[16,37363,37364,37374,37384,37388,37402,37420,37438,37456,37461,37469,37473,37481,37489,37512,37527,37532,37540,37548,37556],{"__ignoreMap":273},[277,37365,37366,37368,37370,37372],{"class":279,"line":280},[277,37367,284],{"class":283},[277,37369,288],{"class":287},[277,37371,292],{"class":291},[277,37373,305],{"class":283},[277,37375,37376,37378,37380,37382],{"class":279,"line":308},[277,37377,312],{"class":311},[277,37379,11006],{"class":283},[277,37381,318],{"class":311},[277,37383,321],{"class":301},[277,37385,37386],{"class":279,"line":324},[277,37387,328],{"emptyLinePlaceholder":327},[277,37389,37391,37393,37396,37398,37400],{"class":37390,"line":331},[279,9398],[277,37392,405],{"class":311},[277,37394,37395],{"class":356}," todos",[277,37397,340],{"class":311},[277,37399,413],{"class":291},[277,37401,2104],{"class":283},[277,37403,37405,37407,37409,37411,37414,37416,37418],{"class":37404,"line":346},[279,9398],[277,37406,2109],{"class":283},[277,37408,2072],{"class":356},[277,37410,9690],{"class":283},[277,37412,37413],{"class":301},"'Aprender v-for'",[277,37415,2120],{"class":283},[277,37417,2149],{"class":356},[277,37419,2132],{"class":283},[277,37421,37423,37425,37427,37429,37432,37434,37436],{"class":37422,"line":360},[279,9398],[277,37424,2109],{"class":283},[277,37426,2139],{"class":356},[277,37428,9690],{"class":283},[277,37430,37431],{"class":301},"'Practicar key estable'",[277,37433,2120],{"class":283},[277,37435,2123],{"class":356},[277,37437,2132],{"class":283},[277,37439,37441,37443,37445,37447,37450,37452,37454],{"class":37440,"line":371},[279,9398],[277,37442,2109],{"class":283},[277,37444,2163],{"class":356},[277,37446,9690],{"class":283},[277,37448,37449],{"class":301},"'Evitar index como key'",[277,37451,2120],{"class":283},[277,37453,2123],{"class":356},[277,37455,2179],{"class":283},[277,37457,37459],{"class":37458,"line":381},[279,9398],[277,37460,2184],{"class":283},[277,37462,37463,37465,37467],{"class":279,"line":391},[277,37464,785],{"class":283},[277,37466,288],{"class":287},[277,37468,305],{"class":283},[277,37470,37471],{"class":279,"line":397},[277,37472,328],{"emptyLinePlaceholder":327},[277,37474,37475,37477,37479],{"class":279,"line":402},[277,37476,284],{"class":283},[277,37478,802],{"class":287},[277,37480,305],{"class":283},[277,37482,37483,37485,37487],{"class":279,"line":436},[277,37484,810],{"class":283},[277,37486,38],{"class":287},[277,37488,305],{"class":283},[277,37490,37492,37494,37496,37498,37500,37503,37505,37507,37510],{"class":37491,"line":456},[279,9398],[277,37493,829],{"class":283},[277,37495,41],{"class":287},[277,37497,12785],{"class":291},[277,37499,298],{"class":283},[277,37501,37502],{"class":301},"\"todo in todos\"",[277,37504,4317],{"class":291},[277,37506,298],{"class":283},[277,37508,37509],{"class":301},"\"todo.id\"",[277,37511,305],{"class":283},[277,37513,37514,37516,37518,37520,37522,37525],{"class":279,"line":461},[277,37515,879],{"class":283},[277,37517,277],{"class":287},[277,37519,33308],{"class":291},[277,37521,298],{"class":283},[277,37523,37524],{"class":301},"\"{ textDecoration: todo.done ? 'line-through' : 'none' }\"",[277,37526,305],{"class":283},[277,37528,37529],{"class":279,"line":476},[277,37530,37531],{"class":283},"        {{ todo.text }}\n",[277,37533,37534,37536,37538],{"class":279,"line":500},[277,37535,4175],{"class":283},[277,37537,277],{"class":287},[277,37539,305],{"class":283},[277,37541,37542,37544,37546],{"class":279,"line":505},[277,37543,922],{"class":283},[277,37545,41],{"class":287},[277,37547,305],{"class":283},[277,37549,37550,37552,37554],{"class":279,"line":520},[277,37551,954],{"class":283},[277,37553,38],{"class":287},[277,37555,305],{"class":283},[277,37557,37558,37560,37562],{"class":279,"line":539},[277,37559,785],{"class":283},[277,37561,802],{"class":287},[277,37563,305],{"class":283},[267,37565,37568],{"className":269,"code":37566,"filename":971,"highlights":37567,"language":272,"meta":273,"style":273},"\u003Cscript>\nexport default {\n  data() {\n    return {\n      todos: [\n        { id: 1, text: 'Aprender v-for', done: true },\n        { id: 2, text: 'Practicar key estable', done: false },\n        { id: 3, text: 'Evitar index como key', done: false }\n      ]\n    }\n  }\n}\n\u003C/script>\n\n\u003Ctemplate>\n  \u003Cul>\n    \u003Cli v-for=\"todo in todos\" :key=\"todo.id\">\n      \u003Cspan :style=\"{ textDecoration: todo.done ? 'line-through' : 'none' }\">\n        {{ todo.text }}\n      \u003C/span>\n    \u003C/li>\n  \u003C/ul>\n\u003C/template>\n",[346,360,371,381,391,505],[16,37569,37570,37578,37586,37592,37598,37604,37621,37638,37655,37660,37664,37668,37672,37680,37684,37692,37700,37721,37735,37739,37747,37755,37763],{"__ignoreMap":273},[277,37571,37572,37574,37576],{"class":279,"line":280},[277,37573,284],{"class":283},[277,37575,288],{"class":287},[277,37577,305],{"class":283},[277,37579,37580,37582,37584],{"class":279,"line":308},[277,37581,1057],{"class":311},[277,37583,1060],{"class":311},[277,37585,343],{"class":283},[277,37587,37588,37590],{"class":279,"line":324},[277,37589,1086],{"class":291},[277,37591,473],{"class":283},[277,37593,37594,37596],{"class":279,"line":331},[277,37595,1093],{"class":311},[277,37597,343],{"class":283},[277,37599,37601],{"class":37600,"line":346},[279,9398],[277,37602,37603],{"class":283},"      todos: [\n",[277,37605,37607,37609,37611,37613,37615,37617,37619],{"class":37606,"line":360},[279,9398],[277,37608,2664],{"class":283},[277,37610,2072],{"class":356},[277,37612,9690],{"class":283},[277,37614,37413],{"class":301},[277,37616,2120],{"class":283},[277,37618,2149],{"class":356},[277,37620,2132],{"class":283},[277,37622,37624,37626,37628,37630,37632,37634,37636],{"class":37623,"line":371},[279,9398],[277,37625,2664],{"class":283},[277,37627,2139],{"class":356},[277,37629,9690],{"class":283},[277,37631,37431],{"class":301},[277,37633,2120],{"class":283},[277,37635,2123],{"class":356},[277,37637,2132],{"class":283},[277,37639,37641,37643,37645,37647,37649,37651,37653],{"class":37640,"line":381},[279,9398],[277,37642,2664],{"class":283},[277,37644,2163],{"class":356},[277,37646,9690],{"class":283},[277,37648,37449],{"class":301},[277,37650,2120],{"class":283},[277,37652,2123],{"class":356},[277,37654,2179],{"class":283},[277,37656,37658],{"class":37657,"line":391},[279,9398],[277,37659,2725],{"class":283},[277,37661,37662],{"class":279,"line":397},[277,37663,1126],{"class":283},[277,37665,37666],{"class":279,"line":402},[277,37667,542],{"class":283},[277,37669,37670],{"class":279,"line":436},[277,37671,394],{"class":283},[277,37673,37674,37676,37678],{"class":279,"line":456},[277,37675,785],{"class":283},[277,37677,288],{"class":287},[277,37679,305],{"class":283},[277,37681,37682],{"class":279,"line":461},[277,37683,328],{"emptyLinePlaceholder":327},[277,37685,37686,37688,37690],{"class":279,"line":476},[277,37687,284],{"class":283},[277,37689,802],{"class":287},[277,37691,305],{"class":283},[277,37693,37694,37696,37698],{"class":279,"line":500},[277,37695,810],{"class":283},[277,37697,38],{"class":287},[277,37699,305],{"class":283},[277,37701,37703,37705,37707,37709,37711,37713,37715,37717,37719],{"class":37702,"line":505},[279,9398],[277,37704,829],{"class":283},[277,37706,41],{"class":287},[277,37708,12785],{"class":291},[277,37710,298],{"class":283},[277,37712,37502],{"class":301},[277,37714,4317],{"class":291},[277,37716,298],{"class":283},[277,37718,37509],{"class":301},[277,37720,305],{"class":283},[277,37722,37723,37725,37727,37729,37731,37733],{"class":279,"line":520},[277,37724,879],{"class":283},[277,37726,277],{"class":287},[277,37728,33308],{"class":291},[277,37730,298],{"class":283},[277,37732,37524],{"class":301},[277,37734,305],{"class":283},[277,37736,37737],{"class":279,"line":539},[277,37738,37531],{"class":283},[277,37740,37741,37743,37745],{"class":279,"line":545},[277,37742,4175],{"class":283},[277,37744,277],{"class":287},[277,37746,305],{"class":283},[277,37748,37749,37751,37753],{"class":279,"line":550},[277,37750,922],{"class":283},[277,37752,41],{"class":287},[277,37754,305],{"class":283},[277,37756,37757,37759,37761],{"class":279,"line":578},[277,37758,954],{"class":283},[277,37760,38],{"class":287},[277,37762,305],{"class":283},[277,37764,37765,37767,37769],{"class":279,"line":583},[277,37766,785],{"class":283},[277,37768,802],{"class":287},[277,37770,305],{"class":283},[30,37772,37774,37775],{"id":37773},"nivel-intermedio-índice-objetos-y-template-v-for","Nivel intermedio: índice, objetos y ",[16,37776,37777],{},"template v-for",[192,37779,37781,37782],{"id":37780},"_1-índice-en-v-for","1) Índice en ",[16,37783,24880],{},[21,37785,37786],{},"Puedes obtener índice cuando realmente lo necesitas:",[267,37788,37791],{"className":269,"code":37789,"filename":271,"highlights":37790,"language":272,"meta":273,"style":273},"\u003Cscript setup>\nimport { ref } from 'vue'\n\nconst users = ref(['Ana', 'Luis', 'Marta'])\n\u003C/script>\n\n\u003Ctemplate>\n  \u003Cp v-for=\"(user, index) in users\" :key=\"user\">\n    #{{ index + 1 }} - {{ user }}\n  \u003C/p>\n\u003C/template>\n",[381],[16,37792,37793,37803,37813,37817,37842,37850,37854,37862,37884,37889,37897],{"__ignoreMap":273},[277,37794,37795,37797,37799,37801],{"class":279,"line":280},[277,37796,284],{"class":283},[277,37798,288],{"class":287},[277,37800,292],{"class":291},[277,37802,305],{"class":283},[277,37804,37805,37807,37809,37811],{"class":279,"line":308},[277,37806,312],{"class":311},[277,37808,11006],{"class":283},[277,37810,318],{"class":311},[277,37812,321],{"class":301},[277,37814,37815],{"class":279,"line":324},[277,37816,328],{"emptyLinePlaceholder":327},[277,37818,37819,37821,37823,37825,37827,37829,37831,37833,37835,37837,37840],{"class":279,"line":331},[277,37820,405],{"class":311},[277,37822,11021],{"class":356},[277,37824,340],{"class":311},[277,37826,413],{"class":291},[277,37828,37146],{"class":283},[277,37830,2129],{"class":301},[277,37832,225],{"class":283},[277,37834,2154],{"class":301},[277,37836,225],{"class":283},[277,37838,37839],{"class":301},"'Marta'",[277,37841,2184],{"class":283},[277,37843,37844,37846,37848],{"class":279,"line":346},[277,37845,785],{"class":283},[277,37847,288],{"class":287},[277,37849,305],{"class":283},[277,37851,37852],{"class":279,"line":360},[277,37853,328],{"emptyLinePlaceholder":327},[277,37855,37856,37858,37860],{"class":279,"line":371},[277,37857,284],{"class":283},[277,37859,802],{"class":287},[277,37861,305],{"class":283},[277,37863,37865,37867,37869,37871,37873,37876,37878,37880,37882],{"class":37864,"line":381},[279,9398],[277,37866,810],{"class":283},[277,37868,21],{"class":287},[277,37870,12785],{"class":291},[277,37872,298],{"class":283},[277,37874,37875],{"class":301},"\"(user, index) in users\"",[277,37877,4317],{"class":291},[277,37879,298],{"class":283},[277,37881,21518],{"class":301},[277,37883,305],{"class":283},[277,37885,37886],{"class":279,"line":391},[277,37887,37888],{"class":283},"    #{{ index + 1 }} - {{ user }}\n",[277,37890,37891,37893,37895],{"class":279,"line":397},[277,37892,954],{"class":283},[277,37894,21],{"class":287},[277,37896,305],{"class":283},[277,37898,37899,37901,37903],{"class":279,"line":402},[277,37900,785],{"class":283},[277,37902,802],{"class":287},[277,37904,305],{"class":283},[267,37906,37909],{"className":269,"code":37907,"filename":971,"highlights":37908,"language":272,"meta":273,"style":273},"\u003Cscript>\nexport default {\n  data() {\n    return {\n      users: ['Ana', 'Luis', 'Marta']\n    }\n  }\n}\n\u003C/script>\n\n\u003Ctemplate>\n  \u003Cp v-for=\"(user, index) in users\" :key=\"user\">\n    #{{ index + 1 }} - {{ user }}\n  \u003C/p>\n\u003C/template>\n",[436],[16,37910,37911,37919,37927,37933,37939,37956,37960,37964,37968,37976,37980,37988,38009,38013,38021],{"__ignoreMap":273},[277,37912,37913,37915,37917],{"class":279,"line":280},[277,37914,284],{"class":283},[277,37916,288],{"class":287},[277,37918,305],{"class":283},[277,37920,37921,37923,37925],{"class":279,"line":308},[277,37922,1057],{"class":311},[277,37924,1060],{"class":311},[277,37926,343],{"class":283},[277,37928,37929,37931],{"class":279,"line":324},[277,37930,1086],{"class":291},[277,37932,473],{"class":283},[277,37934,37935,37937],{"class":279,"line":331},[277,37936,1093],{"class":311},[277,37938,343],{"class":283},[277,37940,37941,37944,37946,37948,37950,37952,37954],{"class":279,"line":346},[277,37942,37943],{"class":283},"      users: [",[277,37945,2129],{"class":301},[277,37947,225],{"class":283},[277,37949,2154],{"class":301},[277,37951,225],{"class":283},[277,37953,37839],{"class":301},[277,37955,37277],{"class":283},[277,37957,37958],{"class":279,"line":360},[277,37959,1126],{"class":283},[277,37961,37962],{"class":279,"line":371},[277,37963,542],{"class":283},[277,37965,37966],{"class":279,"line":381},[277,37967,394],{"class":283},[277,37969,37970,37972,37974],{"class":279,"line":391},[277,37971,785],{"class":283},[277,37973,288],{"class":287},[277,37975,305],{"class":283},[277,37977,37978],{"class":279,"line":397},[277,37979,328],{"emptyLinePlaceholder":327},[277,37981,37982,37984,37986],{"class":279,"line":402},[277,37983,284],{"class":283},[277,37985,802],{"class":287},[277,37987,305],{"class":283},[277,37989,37991,37993,37995,37997,37999,38001,38003,38005,38007],{"class":37990,"line":436},[279,9398],[277,37992,810],{"class":283},[277,37994,21],{"class":287},[277,37996,12785],{"class":291},[277,37998,298],{"class":283},[277,38000,37875],{"class":301},[277,38002,4317],{"class":291},[277,38004,298],{"class":283},[277,38006,21518],{"class":301},[277,38008,305],{"class":283},[277,38010,38011],{"class":279,"line":456},[277,38012,37888],{"class":283},[277,38014,38015,38017,38019],{"class":279,"line":461},[277,38016,954],{"class":283},[277,38018,21],{"class":287},[277,38020,305],{"class":283},[277,38022,38023,38025,38027],{"class":279,"line":476},[277,38024,785],{"class":283},[277,38026,802],{"class":287},[277,38028,305],{"class":283},[192,38030,38032],{"id":38031},"_2-iterar-un-objeto","2) Iterar un objeto",[267,38034,38037],{"className":269,"code":38035,"filename":271,"highlights":38036,"language":272,"meta":273,"style":273},"\u003Cscript setup>\nimport { ref } from 'vue'\n\nconst profile = ref({\n  name: 'Cristian',\n  role: 'Frontend Dev',\n  country: 'Colombia'\n})\n\u003C/script>\n\n\u003Ctemplate>\n  \u003Cli v-for=\"(value, key) in profile\" :key=\"key\">\n    {{ key }}: {{ value }}\n  \u003C/li>\n\u003C/template>\n",[436],[16,38038,38039,38049,38059,38063,38076,38085,38095,38103,38107,38115,38119,38127,38150,38155,38163],{"__ignoreMap":273},[277,38040,38041,38043,38045,38047],{"class":279,"line":280},[277,38042,284],{"class":283},[277,38044,288],{"class":287},[277,38046,292],{"class":291},[277,38048,305],{"class":283},[277,38050,38051,38053,38055,38057],{"class":279,"line":308},[277,38052,312],{"class":311},[277,38054,11006],{"class":283},[277,38056,318],{"class":311},[277,38058,321],{"class":301},[277,38060,38061],{"class":279,"line":324},[277,38062,328],{"emptyLinePlaceholder":327},[277,38064,38065,38067,38070,38072,38074],{"class":279,"line":331},[277,38066,405],{"class":311},[277,38068,38069],{"class":356}," profile",[277,38071,340],{"class":311},[277,38073,413],{"class":291},[277,38075,1066],{"class":283},[277,38077,38078,38080,38083],{"class":279,"line":346},[277,38079,1071],{"class":283},[277,38081,38082],{"class":301},"'Cristian'",[277,38084,1077],{"class":283},[277,38086,38087,38090,38093],{"class":279,"line":360},[277,38088,38089],{"class":283},"  role: ",[277,38091,38092],{"class":301},"'Frontend Dev'",[277,38094,1077],{"class":283},[277,38096,38097,38100],{"class":279,"line":371},[277,38098,38099],{"class":283},"  country: ",[277,38101,38102],{"class":301},"'Colombia'\n",[277,38104,38105],{"class":279,"line":381},[277,38106,676],{"class":283},[277,38108,38109,38111,38113],{"class":279,"line":391},[277,38110,785],{"class":283},[277,38112,288],{"class":287},[277,38114,305],{"class":283},[277,38116,38117],{"class":279,"line":397},[277,38118,328],{"emptyLinePlaceholder":327},[277,38120,38121,38123,38125],{"class":279,"line":402},[277,38122,284],{"class":283},[277,38124,802],{"class":287},[277,38126,305],{"class":283},[277,38128,38130,38132,38134,38136,38138,38141,38143,38145,38148],{"class":38129,"line":436},[279,9398],[277,38131,810],{"class":283},[277,38133,41],{"class":287},[277,38135,12785],{"class":291},[277,38137,298],{"class":283},[277,38139,38140],{"class":301},"\"(value, key) in profile\"",[277,38142,4317],{"class":291},[277,38144,298],{"class":283},[277,38146,38147],{"class":301},"\"key\"",[277,38149,305],{"class":283},[277,38151,38152],{"class":279,"line":456},[277,38153,38154],{"class":283},"    {{ key }}: {{ value }}\n",[277,38156,38157,38159,38161],{"class":279,"line":461},[277,38158,954],{"class":283},[277,38160,41],{"class":287},[277,38162,305],{"class":283},[277,38164,38165,38167,38169],{"class":279,"line":476},[277,38166,785],{"class":283},[277,38168,802],{"class":287},[277,38170,305],{"class":283},[267,38172,38175],{"className":269,"code":38173,"filename":971,"highlights":38174,"language":272,"meta":273,"style":273},"\u003Cscript>\nexport default {\n  data() {\n    return {\n      profile: {\n        name: 'Cristian',\n        role: 'Frontend Dev',\n        country: 'Colombia'\n      }\n    }\n  }\n}\n\u003C/script>\n\n\u003Ctemplate>\n  \u003Cli v-for=\"(value, key) in profile\" :key=\"key\">\n    {{ key }}: {{ value }}\n  \u003C/li>\n\u003C/template>\n",[500],[16,38176,38177,38185,38193,38199,38205,38210,38219,38228,38235,38239,38243,38247,38251,38259,38263,38271,38292,38296,38304],{"__ignoreMap":273},[277,38178,38179,38181,38183],{"class":279,"line":280},[277,38180,284],{"class":283},[277,38182,288],{"class":287},[277,38184,305],{"class":283},[277,38186,38187,38189,38191],{"class":279,"line":308},[277,38188,1057],{"class":311},[277,38190,1060],{"class":311},[277,38192,343],{"class":283},[277,38194,38195,38197],{"class":279,"line":324},[277,38196,1086],{"class":291},[277,38198,473],{"class":283},[277,38200,38201,38203],{"class":279,"line":331},[277,38202,1093],{"class":311},[277,38204,343],{"class":283},[277,38206,38207],{"class":279,"line":346},[277,38208,38209],{"class":283},"      profile: {\n",[277,38211,38212,38215,38217],{"class":279,"line":360},[277,38213,38214],{"class":283},"        name: ",[277,38216,38082],{"class":301},[277,38218,1077],{"class":283},[277,38220,38221,38224,38226],{"class":279,"line":371},[277,38222,38223],{"class":283},"        role: ",[277,38225,38092],{"class":301},[277,38227,1077],{"class":283},[277,38229,38230,38233],{"class":279,"line":381},[277,38231,38232],{"class":283},"        country: ",[277,38234,38102],{"class":301},[277,38236,38237],{"class":279,"line":391},[277,38238,1203],{"class":283},[277,38240,38241],{"class":279,"line":397},[277,38242,1126],{"class":283},[277,38244,38245],{"class":279,"line":402},[277,38246,542],{"class":283},[277,38248,38249],{"class":279,"line":436},[277,38250,394],{"class":283},[277,38252,38253,38255,38257],{"class":279,"line":456},[277,38254,785],{"class":283},[277,38256,288],{"class":287},[277,38258,305],{"class":283},[277,38260,38261],{"class":279,"line":461},[277,38262,328],{"emptyLinePlaceholder":327},[277,38264,38265,38267,38269],{"class":279,"line":476},[277,38266,284],{"class":283},[277,38268,802],{"class":287},[277,38270,305],{"class":283},[277,38272,38274,38276,38278,38280,38282,38284,38286,38288,38290],{"class":38273,"line":500},[279,9398],[277,38275,810],{"class":283},[277,38277,41],{"class":287},[277,38279,12785],{"class":291},[277,38281,298],{"class":283},[277,38283,38140],{"class":301},[277,38285,4317],{"class":291},[277,38287,298],{"class":283},[277,38289,38147],{"class":301},[277,38291,305],{"class":283},[277,38293,38294],{"class":279,"line":505},[277,38295,38154],{"class":283},[277,38297,38298,38300,38302],{"class":279,"line":520},[277,38299,954],{"class":283},[277,38301,41],{"class":287},[277,38303,305],{"class":283},[277,38305,38306,38308,38310],{"class":279,"line":539},[277,38307,785],{"class":283},[277,38309,802],{"class":287},[277,38311,305],{"class":283},[192,38313,38315,38316],{"id":38314},"_3-repetir-varios-nodos-con-template","3) Repetir varios nodos con ",[16,38317,802],{},[267,38319,38322],{"className":269,"code":38320,"filename":271,"highlights":38321,"language":272,"meta":273,"style":273},"\u003Cscript setup>\nimport { ref } from 'vue'\n\nconst items = ref([\n  { id: 1, title: 'Vue 3', description: 'Framework progresivo' },\n  { id: 2, title: 'Pinia', description: 'Estado global moderno' }\n])\n\u003C/script>\n\n\u003Ctemplate>\n  \u003Ctemplate v-for=\"item in items\" :key=\"item.id\">\n    \u003Ch3>{{ item.title }}\u003C/h3>\n    \u003Cp>{{ item.description }}\u003C/p>\n    \u003Chr />\n  \u003C/template>\n\u003C/template>\n",[402],[16,38323,38324,38334,38344,38348,38361,38380,38398,38402,38410,38414,38422,38460,38473,38486,38495,38503],{"__ignoreMap":273},[277,38325,38326,38328,38330,38332],{"class":279,"line":280},[277,38327,284],{"class":283},[277,38329,288],{"class":287},[277,38331,292],{"class":291},[277,38333,305],{"class":283},[277,38335,38336,38338,38340,38342],{"class":279,"line":308},[277,38337,312],{"class":311},[277,38339,11006],{"class":283},[277,38341,318],{"class":311},[277,38343,321],{"class":301},[277,38345,38346],{"class":279,"line":324},[277,38347,328],{"emptyLinePlaceholder":327},[277,38349,38350,38352,38355,38357,38359],{"class":279,"line":331},[277,38351,405],{"class":311},[277,38353,38354],{"class":356}," items",[277,38356,340],{"class":311},[277,38358,413],{"class":291},[277,38360,2104],{"class":283},[277,38362,38363,38365,38367,38369,38372,38375,38378],{"class":279,"line":346},[277,38364,2109],{"class":283},[277,38366,2072],{"class":356},[277,38368,2114],{"class":283},[277,38370,38371],{"class":301},"'Vue 3'",[277,38373,38374],{"class":283},", description: ",[277,38376,38377],{"class":301},"'Framework progresivo'",[277,38379,2132],{"class":283},[277,38381,38382,38384,38386,38388,38391,38393,38396],{"class":279,"line":360},[277,38383,2109],{"class":283},[277,38385,2139],{"class":356},[277,38387,2114],{"class":283},[277,38389,38390],{"class":301},"'Pinia'",[277,38392,38374],{"class":283},[277,38394,38395],{"class":301},"'Estado global moderno'",[277,38397,2179],{"class":283},[277,38399,38400],{"class":279,"line":371},[277,38401,2184],{"class":283},[277,38403,38404,38406,38408],{"class":279,"line":381},[277,38405,785],{"class":283},[277,38407,288],{"class":287},[277,38409,305],{"class":283},[277,38411,38412],{"class":279,"line":391},[277,38413,328],{"emptyLinePlaceholder":327},[277,38415,38416,38418,38420],{"class":279,"line":397},[277,38417,284],{"class":283},[277,38419,802],{"class":287},[277,38421,305],{"class":283},[277,38423,38425,38427,38429,38431,38433,38435,38438,38441,38443,38445,38447,38449,38451,38453,38456,38458],{"class":38424,"line":402},[279,9398],[277,38426,810],{"class":283},[277,38428,802],{"class":287},[277,38430,12785],{"class":311},[277,38432,298],{"class":283},[277,38434,866],{"class":301},[277,38436,38437],{"class":283},"item ",[277,38439,38440],{"class":311},"in",[277,38442,38354],{"class":283},[277,38444,866],{"class":301},[277,38446,6244],{"class":283},[277,38448,1789],{"class":291},[277,38450,298],{"class":283},[277,38452,866],{"class":301},[277,38454,38455],{"class":283},"item.id",[277,38457,866],{"class":301},[277,38459,305],{"class":283},[277,38461,38462,38464,38466,38469,38471],{"class":279,"line":436},[277,38463,829],{"class":283},[277,38465,192],{"class":287},[277,38467,38468],{"class":283},">{{ item.title }}\u003C/",[277,38470,192],{"class":287},[277,38472,305],{"class":283},[277,38474,38475,38477,38479,38482,38484],{"class":279,"line":456},[277,38476,829],{"class":283},[277,38478,21],{"class":287},[277,38480,38481],{"class":283},">{{ item.description }}\u003C/",[277,38483,21],{"class":287},[277,38485,305],{"class":283},[277,38487,38488,38490,38493],{"class":279,"line":461},[277,38489,829],{"class":283},[277,38491,38492],{"class":287},"hr",[277,38494,4325],{"class":283},[277,38496,38497,38499,38501],{"class":279,"line":476},[277,38498,954],{"class":283},[277,38500,802],{"class":287},[277,38502,305],{"class":283},[277,38504,38505,38507,38509],{"class":279,"line":500},[277,38506,785],{"class":283},[277,38508,802],{"class":287},[277,38510,305],{"class":283},[267,38512,38515],{"className":269,"code":38513,"filename":971,"highlights":38514,"language":272,"meta":273,"style":273},"\u003Cscript>\nexport default {\n  data() {\n    return {\n      items: [\n        { id: 1, title: 'Vue 3', description: 'Framework progresivo' },\n        { id: 2, title: 'Pinia', description: 'Estado global moderno' }\n      ]\n    }\n  }\n}\n\u003C/script>\n\n\u003Ctemplate>\n  \u003Ctemplate v-for=\"item in items\" :key=\"item.id\">\n    \u003Ch3>{{ item.title }}\u003C/h3>\n    \u003Cp>{{ item.description }}\u003C/p>\n    \u003Chr />\n  \u003C/template>\n\u003C/template>\n",[476],[16,38516,38517,38525,38533,38539,38545,38550,38566,38582,38586,38590,38594,38598,38606,38610,38618,38653,38665,38677,38685,38693],{"__ignoreMap":273},[277,38518,38519,38521,38523],{"class":279,"line":280},[277,38520,284],{"class":283},[277,38522,288],{"class":287},[277,38524,305],{"class":283},[277,38526,38527,38529,38531],{"class":279,"line":308},[277,38528,1057],{"class":311},[277,38530,1060],{"class":311},[277,38532,343],{"class":283},[277,38534,38535,38537],{"class":279,"line":324},[277,38536,1086],{"class":291},[277,38538,473],{"class":283},[277,38540,38541,38543],{"class":279,"line":331},[277,38542,1093],{"class":311},[277,38544,343],{"class":283},[277,38546,38547],{"class":279,"line":346},[277,38548,38549],{"class":283},"      items: [\n",[277,38551,38552,38554,38556,38558,38560,38562,38564],{"class":279,"line":360},[277,38553,2664],{"class":283},[277,38555,2072],{"class":356},[277,38557,2114],{"class":283},[277,38559,38371],{"class":301},[277,38561,38374],{"class":283},[277,38563,38377],{"class":301},[277,38565,2132],{"class":283},[277,38567,38568,38570,38572,38574,38576,38578,38580],{"class":279,"line":371},[277,38569,2664],{"class":283},[277,38571,2139],{"class":356},[277,38573,2114],{"class":283},[277,38575,38390],{"class":301},[277,38577,38374],{"class":283},[277,38579,38395],{"class":301},[277,38581,2179],{"class":283},[277,38583,38584],{"class":279,"line":381},[277,38585,2725],{"class":283},[277,38587,38588],{"class":279,"line":391},[277,38589,1126],{"class":283},[277,38591,38592],{"class":279,"line":397},[277,38593,542],{"class":283},[277,38595,38596],{"class":279,"line":402},[277,38597,394],{"class":283},[277,38599,38600,38602,38604],{"class":279,"line":436},[277,38601,785],{"class":283},[277,38603,288],{"class":287},[277,38605,305],{"class":283},[277,38607,38608],{"class":279,"line":456},[277,38609,328],{"emptyLinePlaceholder":327},[277,38611,38612,38614,38616],{"class":279,"line":461},[277,38613,284],{"class":283},[277,38615,802],{"class":287},[277,38617,305],{"class":283},[277,38619,38621,38623,38625,38627,38629,38631,38633,38635,38637,38639,38641,38643,38645,38647,38649,38651],{"class":38620,"line":476},[279,9398],[277,38622,810],{"class":283},[277,38624,802],{"class":287},[277,38626,12785],{"class":311},[277,38628,298],{"class":283},[277,38630,866],{"class":301},[277,38632,38437],{"class":283},[277,38634,38440],{"class":311},[277,38636,38354],{"class":283},[277,38638,866],{"class":301},[277,38640,6244],{"class":283},[277,38642,1789],{"class":291},[277,38644,298],{"class":283},[277,38646,866],{"class":301},[277,38648,38455],{"class":283},[277,38650,866],{"class":301},[277,38652,305],{"class":283},[277,38654,38655,38657,38659,38661,38663],{"class":279,"line":500},[277,38656,829],{"class":283},[277,38658,192],{"class":287},[277,38660,38468],{"class":283},[277,38662,192],{"class":287},[277,38664,305],{"class":283},[277,38666,38667,38669,38671,38673,38675],{"class":279,"line":505},[277,38668,829],{"class":283},[277,38670,21],{"class":287},[277,38672,38481],{"class":283},[277,38674,21],{"class":287},[277,38676,305],{"class":283},[277,38678,38679,38681,38683],{"class":279,"line":520},[277,38680,829],{"class":283},[277,38682,38492],{"class":287},[277,38684,4325],{"class":283},[277,38686,38687,38689,38691],{"class":279,"line":539},[277,38688,954],{"class":283},[277,38690,802],{"class":287},[277,38692,305],{"class":283},[277,38694,38695,38697,38699],{"class":279,"line":545},[277,38696,785],{"class":283},[277,38698,802],{"class":287},[277,38700,305],{"class":283},[30,38702,38704],{"id":38703},"nivel-avanzado-listas-derivadas-componentes-y-anidación","Nivel avanzado: listas derivadas, componentes y anidación",[192,38706,38708,38709],{"id":38707},"_1-prefiltrar-y-ordenar-con-computed","1) Prefiltrar y ordenar con ",[16,38710,1732],{},[21,38712,38713,38714,38716,38717,104],{},"No hagas lógica pesada dentro del ",[16,38715,24880],{},".\nDeriva la lista antes, con ",[16,38718,1732],{},[267,38720,38723],{"className":269,"code":38721,"filename":271,"highlights":38722,"language":272,"meta":273,"style":273},"\u003Cscript setup>\nimport { computed, ref } from 'vue'\n\nconst products = ref([\n  { id: 1, name: 'Laptop', price: 1200, stock: 5 },\n  { id: 2, name: 'Mouse', price: 25, stock: 0 },\n  { id: 3, name: 'Keyboard', price: 80, stock: 12 }\n])\n\nconst inStockSorted = computed(() => {\n  return products.value\n    .filter(product => product.stock > 0)\n    .slice()\n    .sort((a, b) => a.price - b.price)\n})\n\u003C/script>\n\n\u003Ctemplate>\n  \u003Cli v-for=\"product in inStockSorted\" :key=\"product.id\">\n    {{ product.name }} - ${{ product.price }}\n  \u003C/li>\n\u003C/template>\n",[397,402,436,456,461,476,539],[16,38724,38725,38735,38745,38749,38761,38784,38806,38829,38833,38837,38855,38863,38887,38897,38927,38932,38940,38944,38952,38975,38980,38988],{"__ignoreMap":273},[277,38726,38727,38729,38731,38733],{"class":279,"line":280},[277,38728,284],{"class":283},[277,38730,288],{"class":287},[277,38732,292],{"class":291},[277,38734,305],{"class":283},[277,38736,38737,38739,38741,38743],{"class":279,"line":308},[277,38738,312],{"class":311},[277,38740,23384],{"class":283},[277,38742,318],{"class":311},[277,38744,321],{"class":301},[277,38746,38747],{"class":279,"line":324},[277,38748,328],{"emptyLinePlaceholder":327},[277,38750,38751,38753,38755,38757,38759],{"class":279,"line":331},[277,38752,405],{"class":311},[277,38754,29622],{"class":356},[277,38756,340],{"class":311},[277,38758,413],{"class":291},[277,38760,2104],{"class":283},[277,38762,38763,38765,38767,38769,38772,38774,38777,38779,38782],{"class":279,"line":346},[277,38764,2109],{"class":283},[277,38766,2072],{"class":356},[277,38768,22620],{"class":283},[277,38770,38771],{"class":301},"'Laptop'",[277,38773,29642],{"class":283},[277,38775,38776],{"class":356},"1200",[277,38778,29648],{"class":283},[277,38780,38781],{"class":356},"5",[277,38783,2132],{"class":283},[277,38785,38786,38788,38790,38792,38795,38797,38800,38802,38804],{"class":279,"line":360},[277,38787,2109],{"class":283},[277,38789,2139],{"class":356},[277,38791,22620],{"class":283},[277,38793,38794],{"class":301},"'Mouse'",[277,38796,29642],{"class":283},[277,38798,38799],{"class":356},"25",[277,38801,29648],{"class":283},[277,38803,3542],{"class":356},[277,38805,2132],{"class":283},[277,38807,38808,38810,38812,38814,38817,38819,38822,38824,38827],{"class":279,"line":371},[277,38809,2109],{"class":283},[277,38811,2163],{"class":356},[277,38813,22620],{"class":283},[277,38815,38816],{"class":301},"'Keyboard'",[277,38818,29642],{"class":283},[277,38820,38821],{"class":356},"80",[277,38823,29648],{"class":283},[277,38825,38826],{"class":356},"12",[277,38828,2179],{"class":283},[277,38830,38831],{"class":279,"line":381},[277,38832,2184],{"class":283},[277,38834,38835],{"class":279,"line":391},[277,38836,328],{"emptyLinePlaceholder":327},[277,38838,38840,38842,38845,38847,38849,38851,38853],{"class":38839,"line":397},[279,9398],[277,38841,405],{"class":311},[277,38843,38844],{"class":356}," inStockSorted",[277,38846,340],{"class":311},[277,38848,2200],{"class":291},[277,38850,2203],{"class":283},[277,38852,601],{"class":311},[277,38854,343],{"class":283},[277,38856,38858,38860],{"class":38857,"line":402},[279,9398],[277,38859,2212],{"class":311},[277,38861,38862],{"class":283}," products.value\n",[277,38864,38866,38869,38871,38873,38875,38877,38880,38882,38885],{"class":38865,"line":436},[279,9398],[277,38867,38868],{"class":283},"    .",[277,38870,2218],{"class":291},[277,38872,448],{"class":283},[277,38874,869],{"class":349},[277,38876,2226],{"class":311},[277,38878,38879],{"class":283}," product.stock ",[277,38881,9921],{"class":311},[277,38883,38884],{"class":356}," 0",[277,38886,433],{"class":283},[277,38888,38890,38892,38895],{"class":38889,"line":456},[279,9398],[277,38891,38868],{"class":283},[277,38893,38894],{"class":291},"slice",[277,38896,622],{"class":283},[277,38898,38900,38902,38905,38907,38909,38911,38914,38916,38918,38921,38924],{"class":38899,"line":461},[279,9398],[277,38901,38868],{"class":283},[277,38903,38904],{"class":291},"sort",[277,38906,2334],{"class":283},[277,38908,13178],{"class":349},[277,38910,225],{"class":283},[277,38912,38913],{"class":349},"b",[277,38915,2340],{"class":283},[277,38917,601],{"class":311},[277,38919,38920],{"class":283}," a.price ",[277,38922,38923],{"class":311},"-",[277,38925,38926],{"class":283}," b.price)\n",[277,38928,38930],{"class":38929,"line":476},[279,9398],[277,38931,676],{"class":283},[277,38933,38934,38936,38938],{"class":279,"line":500},[277,38935,785],{"class":283},[277,38937,288],{"class":287},[277,38939,305],{"class":283},[277,38941,38942],{"class":279,"line":505},[277,38943,328],{"emptyLinePlaceholder":327},[277,38945,38946,38948,38950],{"class":279,"line":520},[277,38947,284],{"class":283},[277,38949,802],{"class":287},[277,38951,305],{"class":283},[277,38953,38955,38957,38959,38961,38963,38966,38968,38970,38973],{"class":38954,"line":539},[279,9398],[277,38956,810],{"class":283},[277,38958,41],{"class":287},[277,38960,12785],{"class":291},[277,38962,298],{"class":283},[277,38964,38965],{"class":301},"\"product in inStockSorted\"",[277,38967,4317],{"class":291},[277,38969,298],{"class":283},[277,38971,38972],{"class":301},"\"product.id\"",[277,38974,305],{"class":283},[277,38976,38977],{"class":279,"line":545},[277,38978,38979],{"class":283},"    {{ product.name }} - ${{ product.price }}\n",[277,38981,38982,38984,38986],{"class":279,"line":550},[277,38983,954],{"class":283},[277,38985,41],{"class":287},[277,38987,305],{"class":283},[277,38989,38990,38992,38994],{"class":279,"line":578},[277,38991,785],{"class":283},[277,38993,802],{"class":287},[277,38995,305],{"class":283},[267,38997,39000],{"className":269,"code":38998,"filename":971,"highlights":38999,"language":272,"meta":273,"style":273},"\u003Cscript>\nexport default {\n  data() {\n    return {\n      products: [\n        { id: 1, name: 'Laptop', price: 1200, stock: 5 },\n        { id: 2, name: 'Mouse', price: 25, stock: 0 },\n        { id: 3, name: 'Keyboard', price: 80, stock: 12 }\n      ]\n    }\n  },\n  computed: {\n    inStockSorted() {\n      return this.products\n        .filter(product => product.stock > 0)\n        .slice()\n        .sort((a, b) => a.price - b.price)\n    }\n  }\n}\n\u003C/script>\n\n\u003Ctemplate>\n  \u003Cli v-for=\"product in inStockSorted\" :key=\"product.id\">\n    {{ product.name }} - ${{ product.price }}\n  \u003C/li>\n\u003C/template>\n",[436,456,461,476,500,505,520,539,588],[16,39001,39002,39010,39018,39024,39030,39034,39054,39074,39094,39098,39102,39106,39111,39119,39129,39151,39160,39185,39190,39195,39199,39207,39211,39219,39240,39244,39252],{"__ignoreMap":273},[277,39003,39004,39006,39008],{"class":279,"line":280},[277,39005,284],{"class":283},[277,39007,288],{"class":287},[277,39009,305],{"class":283},[277,39011,39012,39014,39016],{"class":279,"line":308},[277,39013,1057],{"class":311},[277,39015,1060],{"class":311},[277,39017,343],{"class":283},[277,39019,39020,39022],{"class":279,"line":324},[277,39021,1086],{"class":291},[277,39023,473],{"class":283},[277,39025,39026,39028],{"class":279,"line":331},[277,39027,1093],{"class":311},[277,39029,343],{"class":283},[277,39031,39032],{"class":279,"line":346},[277,39033,30385],{"class":283},[277,39035,39036,39038,39040,39042,39044,39046,39048,39050,39052],{"class":279,"line":360},[277,39037,2664],{"class":283},[277,39039,2072],{"class":356},[277,39041,22620],{"class":283},[277,39043,38771],{"class":301},[277,39045,29642],{"class":283},[277,39047,38776],{"class":356},[277,39049,29648],{"class":283},[277,39051,38781],{"class":356},[277,39053,2132],{"class":283},[277,39055,39056,39058,39060,39062,39064,39066,39068,39070,39072],{"class":279,"line":371},[277,39057,2664],{"class":283},[277,39059,2139],{"class":356},[277,39061,22620],{"class":283},[277,39063,38794],{"class":301},[277,39065,29642],{"class":283},[277,39067,38799],{"class":356},[277,39069,29648],{"class":283},[277,39071,3542],{"class":356},[277,39073,2132],{"class":283},[277,39075,39076,39078,39080,39082,39084,39086,39088,39090,39092],{"class":279,"line":381},[277,39077,2664],{"class":283},[277,39079,2163],{"class":356},[277,39081,22620],{"class":283},[277,39083,38816],{"class":301},[277,39085,29642],{"class":283},[277,39087,38821],{"class":356},[277,39089,29648],{"class":283},[277,39091,38826],{"class":356},[277,39093,2179],{"class":283},[277,39095,39096],{"class":279,"line":391},[277,39097,2725],{"class":283},[277,39099,39100],{"class":279,"line":397},[277,39101,1126],{"class":283},[277,39103,39104],{"class":279,"line":402},[277,39105,1131],{"class":283},[277,39107,39109],{"class":39108,"line":436},[279,9398],[277,39110,2742],{"class":283},[277,39112,39114,39117],{"class":39113,"line":456},[279,9398],[277,39115,39116],{"class":291},"    inStockSorted",[277,39118,473],{"class":283},[277,39120,39122,39124,39126],{"class":39121,"line":461},[279,9398],[277,39123,2754],{"class":311},[277,39125,1268],{"class":356},[277,39127,39128],{"class":283},".products\n",[277,39130,39132,39135,39137,39139,39141,39143,39145,39147,39149],{"class":39131,"line":476},[279,9398],[277,39133,39134],{"class":283},"        .",[277,39136,2218],{"class":291},[277,39138,448],{"class":283},[277,39140,869],{"class":349},[277,39142,2226],{"class":311},[277,39144,38879],{"class":283},[277,39146,9921],{"class":311},[277,39148,38884],{"class":356},[277,39150,433],{"class":283},[277,39152,39154,39156,39158],{"class":39153,"line":500},[279,9398],[277,39155,39134],{"class":283},[277,39157,38894],{"class":291},[277,39159,622],{"class":283},[277,39161,39163,39165,39167,39169,39171,39173,39175,39177,39179,39181,39183],{"class":39162,"line":505},[279,9398],[277,39164,39134],{"class":283},[277,39166,38904],{"class":291},[277,39168,2334],{"class":283},[277,39170,13178],{"class":349},[277,39172,225],{"class":283},[277,39174,38913],{"class":349},[277,39176,2340],{"class":283},[277,39178,601],{"class":311},[277,39180,38920],{"class":283},[277,39182,38923],{"class":311},[277,39184,38926],{"class":283},[277,39186,39188],{"class":39187,"line":520},[279,9398],[277,39189,1126],{"class":283},[277,39191,39193],{"class":39192,"line":539},[279,9398],[277,39194,542],{"class":283},[277,39196,39197],{"class":279,"line":545},[277,39198,394],{"class":283},[277,39200,39201,39203,39205],{"class":279,"line":550},[277,39202,785],{"class":283},[277,39204,288],{"class":287},[277,39206,305],{"class":283},[277,39208,39209],{"class":279,"line":578},[277,39210,328],{"emptyLinePlaceholder":327},[277,39212,39213,39215,39217],{"class":279,"line":583},[277,39214,284],{"class":283},[277,39216,802],{"class":287},[277,39218,305],{"class":283},[277,39220,39222,39224,39226,39228,39230,39232,39234,39236,39238],{"class":39221,"line":588},[279,9398],[277,39223,810],{"class":283},[277,39225,41],{"class":287},[277,39227,12785],{"class":291},[277,39229,298],{"class":283},[277,39231,38965],{"class":301},[277,39233,4317],{"class":291},[277,39235,298],{"class":283},[277,39237,38972],{"class":301},[277,39239,305],{"class":283},[277,39241,39242],{"class":279,"line":606},[277,39243,38979],{"class":283},[277,39245,39246,39248,39250],{"class":279,"line":614},[277,39247,954],{"class":283},[277,39249,41],{"class":287},[277,39251,305],{"class":283},[277,39253,39254,39256,39258],{"class":279,"line":625},[277,39255,785],{"class":283},[277,39257,802],{"class":287},[277,39259,305],{"class":283},[192,39261,39263,39264],{"id":39262},"_2-renderizar-componentes-con-v-for","2) Renderizar componentes con ",[16,39265,24880],{},[267,39267,39270],{"className":269,"code":39268,"filename":271,"highlights":39269,"language":272,"meta":273,"style":273},"\u003Cscript setup>\nimport { ref } from 'vue'\nimport UserCard from '~/components/UserCard.vue'\n\nconst users = ref([\n  { id: 'u1', name: 'Ana', role: 'Admin' },\n  { id: 'u2', name: 'Luis', role: 'Editor' }\n])\n\u003C/script>\n\n\u003Ctemplate>\n  \u003CUserCard v-for=\"user in users\" :key=\"user.id\" :user=\"user\" />\n\u003C/template>\n",[436],[16,39271,39272,39282,39292,39304,39308,39320,39338,39356,39360,39368,39372,39380,39407],{"__ignoreMap":273},[277,39273,39274,39276,39278,39280],{"class":279,"line":280},[277,39275,284],{"class":283},[277,39277,288],{"class":287},[277,39279,292],{"class":291},[277,39281,305],{"class":283},[277,39283,39284,39286,39288,39290],{"class":279,"line":308},[277,39285,312],{"class":311},[277,39287,11006],{"class":283},[277,39289,318],{"class":311},[277,39291,321],{"class":301},[277,39293,39294,39296,39299,39301],{"class":279,"line":324},[277,39295,312],{"class":311},[277,39297,39298],{"class":283}," UserCard ",[277,39300,318],{"class":311},[277,39302,39303],{"class":301}," '~/components/UserCard.vue'\n",[277,39305,39306],{"class":279,"line":331},[277,39307,328],{"emptyLinePlaceholder":327},[277,39309,39310,39312,39314,39316,39318],{"class":279,"line":346},[277,39311,405],{"class":311},[277,39313,11021],{"class":356},[277,39315,340],{"class":311},[277,39317,413],{"class":291},[277,39319,2104],{"class":283},[277,39321,39322,39324,39327,39329,39331,39333,39336],{"class":279,"line":360},[277,39323,2109],{"class":283},[277,39325,39326],{"class":301},"'u1'",[277,39328,22620],{"class":283},[277,39330,2129],{"class":301},[277,39332,27262],{"class":283},[277,39334,39335],{"class":301},"'Admin'",[277,39337,2132],{"class":283},[277,39339,39340,39342,39345,39347,39349,39351,39354],{"class":279,"line":371},[277,39341,2109],{"class":283},[277,39343,39344],{"class":301},"'u2'",[277,39346,22620],{"class":283},[277,39348,2154],{"class":301},[277,39350,27262],{"class":283},[277,39352,39353],{"class":301},"'Editor'",[277,39355,2179],{"class":283},[277,39357,39358],{"class":279,"line":381},[277,39359,2184],{"class":283},[277,39361,39362,39364,39366],{"class":279,"line":391},[277,39363,785],{"class":283},[277,39365,288],{"class":287},[277,39367,305],{"class":283},[277,39369,39370],{"class":279,"line":397},[277,39371,328],{"emptyLinePlaceholder":327},[277,39373,39374,39376,39378],{"class":279,"line":402},[277,39375,284],{"class":283},[277,39377,802],{"class":287},[277,39379,305],{"class":283},[277,39381,39383,39385,39387,39389,39391,39393,39395,39397,39399,39401,39403,39405],{"class":39382,"line":436},[279,9398],[277,39384,810],{"class":283},[277,39386,22608],{"class":287},[277,39388,12785],{"class":291},[277,39390,298],{"class":283},[277,39392,12790],{"class":301},[277,39394,4317],{"class":291},[277,39396,298],{"class":283},[277,39398,12797],{"class":301},[277,39400,27117],{"class":291},[277,39402,298],{"class":283},[277,39404,21518],{"class":301},[277,39406,4325],{"class":283},[277,39408,39409,39411,39413],{"class":279,"line":456},[277,39410,785],{"class":283},[277,39412,802],{"class":287},[277,39414,305],{"class":283},[267,39416,39419],{"className":269,"code":39417,"filename":971,"highlights":39418,"language":272,"meta":273,"style":273},"\u003Cscript>\nimport UserCard from '~/components/UserCard.vue'\n\nexport default {\n  components: { UserCard },\n  data() {\n    return {\n      users: [\n        { id: 'u1', name: 'Ana', role: 'Admin' },\n        { id: 'u2', name: 'Luis', role: 'Editor' }\n      ]\n    }\n  }\n}\n\u003C/script>\n\n\u003Ctemplate>\n  \u003CUserCard v-for=\"user in users\" :key=\"user.id\" :user=\"user\" />\n\u003C/template>\n",[520],[16,39420,39421,39429,39439,39443,39451,39456,39462,39468,39472,39488,39504,39508,39512,39516,39520,39528,39532,39540,39567],{"__ignoreMap":273},[277,39422,39423,39425,39427],{"class":279,"line":280},[277,39424,284],{"class":283},[277,39426,288],{"class":287},[277,39428,305],{"class":283},[277,39430,39431,39433,39435,39437],{"class":279,"line":308},[277,39432,312],{"class":311},[277,39434,39298],{"class":283},[277,39436,318],{"class":311},[277,39438,39303],{"class":301},[277,39440,39441],{"class":279,"line":324},[277,39442,328],{"emptyLinePlaceholder":327},[277,39444,39445,39447,39449],{"class":279,"line":331},[277,39446,1057],{"class":311},[277,39448,1060],{"class":311},[277,39450,343],{"class":283},[277,39452,39453],{"class":279,"line":346},[277,39454,39455],{"class":283},"  components: { UserCard },\n",[277,39457,39458,39460],{"class":279,"line":360},[277,39459,1086],{"class":291},[277,39461,473],{"class":283},[277,39463,39464,39466],{"class":279,"line":371},[277,39465,1093],{"class":311},[277,39467,343],{"class":283},[277,39469,39470],{"class":279,"line":381},[277,39471,22894],{"class":283},[277,39473,39474,39476,39478,39480,39482,39484,39486],{"class":279,"line":391},[277,39475,2664],{"class":283},[277,39477,39326],{"class":301},[277,39479,22620],{"class":283},[277,39481,2129],{"class":301},[277,39483,27262],{"class":283},[277,39485,39335],{"class":301},[277,39487,2132],{"class":283},[277,39489,39490,39492,39494,39496,39498,39500,39502],{"class":279,"line":397},[277,39491,2664],{"class":283},[277,39493,39344],{"class":301},[277,39495,22620],{"class":283},[277,39497,2154],{"class":301},[277,39499,27262],{"class":283},[277,39501,39353],{"class":301},[277,39503,2179],{"class":283},[277,39505,39506],{"class":279,"line":402},[277,39507,2725],{"class":283},[277,39509,39510],{"class":279,"line":436},[277,39511,1126],{"class":283},[277,39513,39514],{"class":279,"line":456},[277,39515,542],{"class":283},[277,39517,39518],{"class":279,"line":461},[277,39519,394],{"class":283},[277,39521,39522,39524,39526],{"class":279,"line":476},[277,39523,785],{"class":283},[277,39525,288],{"class":287},[277,39527,305],{"class":283},[277,39529,39530],{"class":279,"line":500},[277,39531,328],{"emptyLinePlaceholder":327},[277,39533,39534,39536,39538],{"class":279,"line":505},[277,39535,284],{"class":283},[277,39537,802],{"class":287},[277,39539,305],{"class":283},[277,39541,39543,39545,39547,39549,39551,39553,39555,39557,39559,39561,39563,39565],{"class":39542,"line":520},[279,9398],[277,39544,810],{"class":283},[277,39546,22608],{"class":287},[277,39548,12785],{"class":291},[277,39550,298],{"class":283},[277,39552,12790],{"class":301},[277,39554,4317],{"class":291},[277,39556,298],{"class":283},[277,39558,12797],{"class":301},[277,39560,27117],{"class":291},[277,39562,298],{"class":283},[277,39564,21518],{"class":301},[277,39566,4325],{"class":283},[277,39568,39569,39571,39573],{"class":279,"line":539},[277,39570,785],{"class":283},[277,39572,802],{"class":287},[277,39574,305],{"class":283},[192,39576,39578],{"id":39577},"_3-listas-anidadas-categorías-y-productos","3) Listas anidadas (categorías y productos)",[267,39580,39583],{"className":269,"code":39581,"filename":271,"highlights":39582,"language":272,"meta":273,"style":273},"\u003Cscript setup>\nimport { ref } from 'vue'\n\nconst categories = ref([\n  {\n    id: 'c1',\n    name: 'Periféricos',\n    products: [\n      { id: 'p1', name: 'Mouse' },\n      { id: 'p2', name: 'Teclado' }\n    ]\n  }\n])\n\u003C/script>\n\n\u003Ctemplate>\n  \u003Csection v-for=\"category in categories\" :key=\"category.id\">\n    \u003Ch3>{{ category.name }}\u003C/h3>\n    \u003Cli v-for=\"product in category.products\" :key=\"product.id\">\n      {{ product.name }}\n    \u003C/li>\n  \u003C/section>\n\u003C/template>\n",[505,539],[16,39584,39585,39595,39605,39609,39622,39627,39637,39647,39652,39666,39680,39685,39689,39693,39701,39705,39713,39736,39749,39771,39776,39784,39792],{"__ignoreMap":273},[277,39586,39587,39589,39591,39593],{"class":279,"line":280},[277,39588,284],{"class":283},[277,39590,288],{"class":287},[277,39592,292],{"class":291},[277,39594,305],{"class":283},[277,39596,39597,39599,39601,39603],{"class":279,"line":308},[277,39598,312],{"class":311},[277,39600,11006],{"class":283},[277,39602,318],{"class":311},[277,39604,321],{"class":301},[277,39606,39607],{"class":279,"line":324},[277,39608,328],{"emptyLinePlaceholder":327},[277,39610,39611,39613,39616,39618,39620],{"class":279,"line":331},[277,39612,405],{"class":311},[277,39614,39615],{"class":356}," categories",[277,39617,340],{"class":311},[277,39619,413],{"class":291},[277,39621,2104],{"class":283},[277,39623,39624],{"class":279,"line":346},[277,39625,39626],{"class":283},"  {\n",[277,39628,39629,39632,39635],{"class":279,"line":360},[277,39630,39631],{"class":283},"    id: ",[277,39633,39634],{"class":301},"'c1'",[277,39636,1077],{"class":283},[277,39638,39639,39642,39645],{"class":279,"line":371},[277,39640,39641],{"class":283},"    name: ",[277,39643,39644],{"class":301},"'Periféricos'",[277,39646,1077],{"class":283},[277,39648,39649],{"class":279,"line":381},[277,39650,39651],{"class":283},"    products: [\n",[277,39653,39654,39657,39660,39662,39664],{"class":279,"line":391},[277,39655,39656],{"class":283},"      { id: ",[277,39658,39659],{"class":301},"'p1'",[277,39661,22620],{"class":283},[277,39663,38794],{"class":301},[277,39665,2132],{"class":283},[277,39667,39668,39670,39673,39675,39678],{"class":279,"line":397},[277,39669,39656],{"class":283},[277,39671,39672],{"class":301},"'p2'",[277,39674,22620],{"class":283},[277,39676,39677],{"class":301},"'Teclado'",[277,39679,2179],{"class":283},[277,39681,39682],{"class":279,"line":402},[277,39683,39684],{"class":283},"    ]\n",[277,39686,39687],{"class":279,"line":436},[277,39688,542],{"class":283},[277,39690,39691],{"class":279,"line":456},[277,39692,2184],{"class":283},[277,39694,39695,39697,39699],{"class":279,"line":461},[277,39696,785],{"class":283},[277,39698,288],{"class":287},[277,39700,305],{"class":283},[277,39702,39703],{"class":279,"line":476},[277,39704,328],{"emptyLinePlaceholder":327},[277,39706,39707,39709,39711],{"class":279,"line":500},[277,39708,284],{"class":283},[277,39710,802],{"class":287},[277,39712,305],{"class":283},[277,39714,39716,39718,39720,39722,39724,39727,39729,39731,39734],{"class":39715,"line":505},[279,9398],[277,39717,810],{"class":283},[277,39719,4121],{"class":287},[277,39721,12785],{"class":291},[277,39723,298],{"class":283},[277,39725,39726],{"class":301},"\"category in categories\"",[277,39728,4317],{"class":291},[277,39730,298],{"class":283},[277,39732,39733],{"class":301},"\"category.id\"",[277,39735,305],{"class":283},[277,39737,39738,39740,39742,39745,39747],{"class":279,"line":520},[277,39739,829],{"class":283},[277,39741,192],{"class":287},[277,39743,39744],{"class":283},">{{ category.name }}\u003C/",[277,39746,192],{"class":287},[277,39748,305],{"class":283},[277,39750,39752,39754,39756,39758,39760,39763,39765,39767,39769],{"class":39751,"line":539},[279,9398],[277,39753,829],{"class":283},[277,39755,41],{"class":287},[277,39757,12785],{"class":291},[277,39759,298],{"class":283},[277,39761,39762],{"class":301},"\"product in category.products\"",[277,39764,4317],{"class":291},[277,39766,298],{"class":283},[277,39768,38972],{"class":301},[277,39770,305],{"class":283},[277,39772,39773],{"class":279,"line":545},[277,39774,39775],{"class":283},"      {{ product.name }}\n",[277,39777,39778,39780,39782],{"class":279,"line":550},[277,39779,922],{"class":283},[277,39781,41],{"class":287},[277,39783,305],{"class":283},[277,39785,39786,39788,39790],{"class":279,"line":578},[277,39787,954],{"class":283},[277,39789,4121],{"class":287},[277,39791,305],{"class":283},[277,39793,39794,39796,39798],{"class":279,"line":583},[277,39795,785],{"class":283},[277,39797,802],{"class":287},[277,39799,305],{"class":283},[267,39801,39804],{"className":269,"code":39802,"filename":971,"highlights":39803,"language":272,"meta":273,"style":273},"\u003Cscript>\nexport default {\n  data() {\n    return {\n      categories: [\n        {\n          id: 'c1',\n          name: 'Periféricos',\n          products: [\n            { id: 'p1', name: 'Mouse' },\n            { id: 'p2', name: 'Teclado' }\n          ]\n        }\n      ]\n    }\n  }\n}\n\u003C/script>\n\n\u003Ctemplate>\n  \u003Csection v-for=\"category in categories\" :key=\"category.id\">\n    \u003Ch3>{{ category.name }}\u003C/h3>\n    \u003Cli v-for=\"product in category.products\" :key=\"product.id\">\n      {{ product.name }}\n    \u003C/li>\n  \u003C/section>\n\u003C/template>\n",[550,583],[16,39805,39806,39814,39822,39828,39834,39839,39844,39853,39862,39867,39880,39892,39897,39901,39905,39909,39913,39917,39925,39929,39937,39958,39970,39991,39995,40003,40011],{"__ignoreMap":273},[277,39807,39808,39810,39812],{"class":279,"line":280},[277,39809,284],{"class":283},[277,39811,288],{"class":287},[277,39813,305],{"class":283},[277,39815,39816,39818,39820],{"class":279,"line":308},[277,39817,1057],{"class":311},[277,39819,1060],{"class":311},[277,39821,343],{"class":283},[277,39823,39824,39826],{"class":279,"line":324},[277,39825,1086],{"class":291},[277,39827,473],{"class":283},[277,39829,39830,39832],{"class":279,"line":331},[277,39831,1093],{"class":311},[277,39833,343],{"class":283},[277,39835,39836],{"class":279,"line":346},[277,39837,39838],{"class":283},"      categories: [\n",[277,39840,39841],{"class":279,"line":360},[277,39842,39843],{"class":283},"        {\n",[277,39845,39846,39849,39851],{"class":279,"line":371},[277,39847,39848],{"class":283},"          id: ",[277,39850,39634],{"class":301},[277,39852,1077],{"class":283},[277,39854,39855,39858,39860],{"class":279,"line":381},[277,39856,39857],{"class":283},"          name: ",[277,39859,39644],{"class":301},[277,39861,1077],{"class":283},[277,39863,39864],{"class":279,"line":391},[277,39865,39866],{"class":283},"          products: [\n",[277,39868,39869,39872,39874,39876,39878],{"class":279,"line":397},[277,39870,39871],{"class":283},"            { id: ",[277,39873,39659],{"class":301},[277,39875,22620],{"class":283},[277,39877,38794],{"class":301},[277,39879,2132],{"class":283},[277,39881,39882,39884,39886,39888,39890],{"class":279,"line":402},[277,39883,39871],{"class":283},[277,39885,39672],{"class":301},[277,39887,22620],{"class":283},[277,39889,39677],{"class":301},[277,39891,2179],{"class":283},[277,39893,39894],{"class":279,"line":436},[277,39895,39896],{"class":283},"          ]\n",[277,39898,39899],{"class":279,"line":456},[277,39900,8868],{"class":283},[277,39902,39903],{"class":279,"line":461},[277,39904,2725],{"class":283},[277,39906,39907],{"class":279,"line":476},[277,39908,1126],{"class":283},[277,39910,39911],{"class":279,"line":500},[277,39912,542],{"class":283},[277,39914,39915],{"class":279,"line":505},[277,39916,394],{"class":283},[277,39918,39919,39921,39923],{"class":279,"line":520},[277,39920,785],{"class":283},[277,39922,288],{"class":287},[277,39924,305],{"class":283},[277,39926,39927],{"class":279,"line":539},[277,39928,328],{"emptyLinePlaceholder":327},[277,39930,39931,39933,39935],{"class":279,"line":545},[277,39932,284],{"class":283},[277,39934,802],{"class":287},[277,39936,305],{"class":283},[277,39938,39940,39942,39944,39946,39948,39950,39952,39954,39956],{"class":39939,"line":550},[279,9398],[277,39941,810],{"class":283},[277,39943,4121],{"class":287},[277,39945,12785],{"class":291},[277,39947,298],{"class":283},[277,39949,39726],{"class":301},[277,39951,4317],{"class":291},[277,39953,298],{"class":283},[277,39955,39733],{"class":301},[277,39957,305],{"class":283},[277,39959,39960,39962,39964,39966,39968],{"class":279,"line":578},[277,39961,829],{"class":283},[277,39963,192],{"class":287},[277,39965,39744],{"class":283},[277,39967,192],{"class":287},[277,39969,305],{"class":283},[277,39971,39973,39975,39977,39979,39981,39983,39985,39987,39989],{"class":39972,"line":583},[279,9398],[277,39974,829],{"class":283},[277,39976,41],{"class":287},[277,39978,12785],{"class":291},[277,39980,298],{"class":283},[277,39982,39762],{"class":301},[277,39984,4317],{"class":291},[277,39986,298],{"class":283},[277,39988,38972],{"class":301},[277,39990,305],{"class":283},[277,39992,39993],{"class":279,"line":588},[277,39994,39775],{"class":283},[277,39996,39997,39999,40001],{"class":279,"line":606},[277,39998,922],{"class":283},[277,40000,41],{"class":287},[277,40002,305],{"class":283},[277,40004,40005,40007,40009],{"class":279,"line":614},[277,40006,954],{"class":283},[277,40008,4121],{"class":287},[277,40010,305],{"class":283},[277,40012,40013,40015,40017],{"class":279,"line":625},[277,40014,785],{"class":283},[277,40016,802],{"class":287},[277,40018,305],{"class":283},[30,40020,40022,40023],{"id":40021},"errores-comunes-con-v-for","Errores comunes con ",[16,40024,24880],{},[192,40026,20821,40028,37095,40030,40032],{"id":40027},"_1-usar-index-como-key-en-listas-mutables",[16,40029,37094],{},[16,40031,1789],{}," en listas mutables",[267,40034,40037],{"className":269,"code":40035,"filename":34211,"highlights":40036,"language":272,"meta":273,"style":273},"\u003Cli v-for=\"(item, index) in items\" :key=\"index\">\n  {{ item.name }}\n\u003C/li>\n",[280],[16,40038,40039,40075,40080],{"__ignoreMap":273},[277,40040,40042,40044,40046,40048,40050,40052,40055,40057,40059,40061,40063,40065,40067,40069,40071,40073],{"class":40041,"line":280},[279,9398],[277,40043,284],{"class":283},[277,40045,41],{"class":287},[277,40047,12785],{"class":311},[277,40049,298],{"class":283},[277,40051,866],{"class":301},[277,40053,40054],{"class":283},"(item, index) ",[277,40056,38440],{"class":311},[277,40058,38354],{"class":283},[277,40060,866],{"class":301},[277,40062,6244],{"class":283},[277,40064,1789],{"class":291},[277,40066,298],{"class":283},[277,40068,866],{"class":301},[277,40070,37094],{"class":283},[277,40072,866],{"class":301},[277,40074,305],{"class":283},[277,40076,40077],{"class":279,"line":308},[277,40078,40079],{"class":283},"  {{ item.name }}\n",[277,40081,40082,40084,40086],{"class":279,"line":324},[277,40083,785],{"class":283},[277,40085,41],{"class":287},[277,40087,305],{"class":283},[21,40089,40090],{},"Esto puede romper el estado de cada fila al reordenar o insertar elementos.",[3111,40092,40093],{},[21,40094,40095,40096,40098],{},"Usa una clave estable (",[16,40097,38455],{},") cuando exista.",[192,40100,40102,40103,1697,40105,40107],{"id":40101},"_2-mezclar-v-if-y-v-for-en-el-mismo-nodo","2) Mezclar ",[16,40104,7538],{},[16,40106,24880],{}," en el mismo nodo",[267,40109,40112],{"className":269,"code":40110,"filename":28344,"highlights":40111,"language":272,"meta":273,"style":273},"\u003Cli v-for=\"user in users\" v-if=\"user.active\" :key=\"user.id\">\n  {{ user.name }}\n\u003C/li>\n",[280],[16,40113,40114,40162,40167],{"__ignoreMap":273},[277,40115,40117,40119,40121,40123,40125,40127,40130,40132,40134,40136,40138,40140,40142,40145,40147,40149,40151,40153,40155,40158,40160],{"class":40116,"line":280},[279,9398],[277,40118,284],{"class":283},[277,40120,41],{"class":287},[277,40122,12785],{"class":311},[277,40124,298],{"class":283},[277,40126,866],{"class":301},[277,40128,40129],{"class":283},"user ",[277,40131,38440],{"class":311},[277,40133,11021],{"class":283},[277,40135,866],{"class":301},[277,40137,834],{"class":311},[277,40139,298],{"class":283},[277,40141,866],{"class":301},[277,40143,40144],{"class":283},"user.active",[277,40146,866],{"class":301},[277,40148,6244],{"class":283},[277,40150,1789],{"class":291},[277,40152,298],{"class":283},[277,40154,866],{"class":301},[277,40156,40157],{"class":283},"user.id",[277,40159,866],{"class":301},[277,40161,305],{"class":283},[277,40163,40164],{"class":279,"line":308},[277,40165,40166],{"class":283},"  {{ user.name }}\n",[277,40168,40169,40171,40173],{"class":279,"line":324},[277,40170,785],{"class":283},[277,40172,41],{"class":287},[277,40174,305],{"class":283},[3111,40176,40177],{},[21,40178,40179,40180,40182],{},"Crea una lista ",[16,40181,1732],{}," filtrada e itera esa lista.",[192,40184,40186,40187],{"id":40185},"_3-mutar-directamente-el-resultado-de-un-computed","3) Mutar directamente el resultado de un ",[16,40188,1732],{},[21,40190,40191],{},"Si derives una lista ordenada/filtrada, no la mutas directamente.\nLa fuente de verdad debe seguir siendo el estado original.",[192,40193,26774,40195,40197],{"id":40194},"_4-key-duplicadas",[16,40196,1789],{}," duplicadas",[21,40199,40200,40201,40203],{},"Si dos elementos comparten la misma ",[16,40202,1789],{},", Vue no puede hacer diff correctamente.\nResultado: renders inconsistentes y bugs visuales difíciles de depurar.",[30,40205,40207],{"id":40206},"buenas-prácticas-rápidas","Buenas prácticas rápidas",[38,40209,40210,40217,40222,40225,40231],{},[41,40211,20777,40212,40214,40215,104],{},[16,40213,22042],{}," estable para ",[16,40216,37003],{},[41,40218,40219,40220,104],{},"Prefiltra y ordena con ",[16,40221,1732],{},[41,40223,40224],{},"Evita lógica compleja en el template.",[41,40226,40227,40228,40230],{},"Mantén los bloques ",[16,40229,24880],{}," pequeños y legibles.",[41,40232,40233],{},"En listas grandes, considera paginación o virtualización.",[30,40235,17671],{"id":17670},[21,40237,40238,40240],{},[16,40239,24880],{}," no es solo \"pintar arrays\".\nEs una pieza central del renderizado declarativo en Vue.",[21,40242,40243],{},"Si aplicas estas reglas:",[38,40245,40246,40251,40256],{},[41,40247,40248,40250],{},[16,40249,1789],{}," estable",[41,40252,40253,40254],{},"Listas derivadas con ",[16,40255,1732],{},[41,40257,40258],{},"Estructura limpia del template",[21,40260,40261],{},"Vas a tener componentes más predecibles, más performantes y mucho más fáciles de mantener.",[1606,40263,40264],{},"html pre.shiki code .sVt8B, html code.shiki .sVt8B{--shiki-default:#24292E;--shiki-dark:#E1E4E8}html pre.shiki code .s9eBZ, html code.shiki .s9eBZ{--shiki-default:#22863A;--shiki-dark:#85E89D}html pre.shiki code .sScJk, html code.shiki .sScJk{--shiki-default:#6F42C1;--shiki-dark:#B392F0}html pre.shiki code .szBVR, html code.shiki .szBVR{--shiki-default:#D73A49;--shiki-dark:#F97583}html pre.shiki code .sZZnC, html code.shiki .sZZnC{--shiki-default:#032F62;--shiki-dark:#9ECBFF}html pre.shiki code .sj4cs, html code.shiki .sj4cs{--shiki-default:#005CC5;--shiki-dark:#79B8FF}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 .s4XuR, html code.shiki .s4XuR{--shiki-default:#E36209;--shiki-dark:#FFAB70}",{"title":273,"searchDepth":308,"depth":308,"links":40266},[40267,40268,40270,40271,40272,40273,40281,40288,40299,40300],{"id":20624,"depth":308,"text":20625},{"id":37049,"depth":308,"text":40269},"Cuándo usar v-for",{"id":155,"depth":308,"text":156},{"id":37101,"depth":308,"text":37102},{"id":37353,"depth":308,"text":37354},{"id":37773,"depth":308,"text":40274,"children":40275},"Nivel intermedio: índice, objetos y template v-for",[40276,40278,40279],{"id":37780,"depth":324,"text":40277},"1) Índice en v-for",{"id":38031,"depth":324,"text":38032},{"id":38314,"depth":324,"text":40280},"3) Repetir varios nodos con template",{"id":38703,"depth":308,"text":38704,"children":40282},[40283,40285,40287],{"id":38707,"depth":324,"text":40284},"1) Prefiltrar y ordenar con computed",{"id":39262,"depth":324,"text":40286},"2) Renderizar componentes con v-for",{"id":39577,"depth":324,"text":39578},{"id":40021,"depth":308,"text":40289,"children":40290},"Errores comunes con v-for",[40291,40293,40295,40297],{"id":40027,"depth":324,"text":40292},"1) Usar index como key en listas mutables",{"id":40101,"depth":324,"text":40294},"2) Mezclar v-if y v-for en el mismo nodo",{"id":40185,"depth":324,"text":40296},"3) Mutar directamente el resultado de un computed",{"id":40194,"depth":324,"text":40298},"4) key duplicadas",{"id":40206,"depth":308,"text":40207},{"id":17670,"depth":308,"text":17671},"https://res.cloudinary.com/denj4fg7f/image/upload/v1770690176/directives-vue-v-for-guide_itbdds.png","Imagen temporal para portada del artículo sobre v-for en Vue","2026-02-10","Aprende a dominar v-for en Vue con ejemplos prácticos desde lo más básico hasta patrones avanzados, uso correcto de key, errores comunes y buenas prácticas en Composition API y Options API.",{"script":40306},[40307],{"type":1632,"key":1633,"data-nuxt-schema-org":327,"nodes":40308},[40309],{"headline":40310,"author":40311,"datePublished":40312,"@type":1640},"Directiva v-for en Vue: guía completa de básico a avanzado",{"name":1637,"@type":1638},"2026-02-09T21:30:00-05:00",{"updatedAt":40312,"coverCaption":17759,"author":1637,"keywords":40314},[1645,24880,40315,1789,271,971,10645],"listas","/blog/directives-vue-v-for-guide.es",[40318],{"headline":40310,"author":40319,"datePublished":40312,"@type":1640},{"name":1637,"@type":1638},{"title":36974,"description":40304},"blog/directives-vue-v-for-guide.es",[40323,40324,40326,40327],{"tag":20588,"color":20589},{"tag":40325,"color":3168},"Listas",{"tag":21891,"color":21892},{"tag":9074,"color":9075},"XUaxKVi8KzZe0IYaQ4SYj_q5sPhfP5avdlXkrHvmKjc",{"id":40330,"title":40331,"body":40332,"cover":42171,"coverAlt":42172,"date":42173,"description":42174,"draft":1627,"extension":1628,"head":42175,"locale":1641,"meta":42183,"navigation":327,"path":42188,"schemaOrg":42189,"seo":42192,"series":20582,"seriesDescription":20583,"seriesOrder":308,"seriesTitle":20584,"slug":1656,"stem":42193,"tags":42194,"__hash__":42201},"blog/blog/directives-vue-v-if-v-else-v-show-guide.es.md","Directivas en Vue: v-if, v-else y v-show",{"type":8,"value":40333,"toc":42145},[40334,40345,40359,40386,40396,40400,40404,40420,40425,40436,40447,40455,40466,40469,40484,40488,40495,40499,40507,40519,40523,40558,40566,40569,40807,41050,41070,41076,41084,41270,41458,41462,41469,41480,41489,41499,41509,41754,41987,41989,41998,42000,42051,42063,42069,42084,42091,42104,42106,42134,42142],[11,40335,40337,225,40339,1697,40342,40344],{"id":40336},"v-if-v-else-y-v-show-en-vue-cuándo-usar-cada-una",[16,40338,7538],{},[16,40340,40341],{},"v-else",[16,40343,7701],{}," en Vue: cuándo usar cada una",[21,40346,40347,40348,225,40350,1697,40352,40354,40355,40358],{},"Las directivas ",[16,40349,7538],{},[16,40351,40341],{},[16,40353,7701],{}," sirven para ",[72,40356,40357],{},"mostrar u ocultar contenido"," en función de una condición reactiva.\nLa diferencia clave —la que evita bugs sutiles y problemas de rendimiento— es esta:",[38,40360,40361,40373],{},[41,40362,40363,20699,40369,40372],{},[72,40364,40365,5245,40367],{},[16,40366,7538],{},[16,40368,40341],{},[3292,40370,40371],{},"crean o destruyen"," elementos del DOM.",[41,40374,40375,20699,40379,40382,40383,104],{},[72,40376,40377],{},[16,40378,7701],{},[3292,40380,40381],{},"no destruye nada","; solo alterna ",[16,40384,40385],{},"display: none",[21,40387,40388,40389,12494,40392,40395],{},"Si lo piensas como ",[72,40390,40391],{},"“¿Esto existe?”",[72,40393,40394],{},"“¿Esto se ve?”",", ya vas por buen camino.",[30,40397,40399],{"id":40398},"qué-hace-cada-una","Qué hace cada una",[192,40401,40402],{"id":7538},[16,40403,7538],{},[21,40405,40406,40407,40410,40411,40413,40414,40416,40417,104],{},"Renderiza el elemento ",[72,40408,40409],{},"solo si"," la condición es ",[16,40412,2149],{},".\nSi es ",[16,40415,2123],{},", el elemento ",[72,40418,40419],{},"no existe en el DOM",[21,40421,40422],{},[72,40423,40424],{},"Útil cuando:",[38,40426,40427,40430,40433],{},[41,40428,40429],{},"El contenido es pesado (componentes grandes, listas, gráficos)",[41,40431,40432],{},"No debería existir si no se cumple la condición (permisos de UI, flujos sensibles)",[41,40434,40435],{},"Se muestra pocas veces u ocasionalmente",[3111,40437,40438],{},[21,40439,40440,40442,40443,40446],{},[16,40441,7538],{}," tiene un costo mayor al alternar, porque implica ",[72,40444,40445],{},"montaje y desmontaje"," del árbol de componentes.",[192,40448,40450,1697,40452],{"id":40449},"v-else-y-v-else-if",[16,40451,40341],{},[16,40453,40454],{},"v-else-if",[21,40456,40457,40458,40461,40462,118,40464,104],{},"Se usan ",[72,40459,40460],{},"inmediatamente después"," de un ",[16,40463,7538],{},[16,40465,40454],{},[21,40467,40468],{},"Reglas importantes:",[38,40470,40471,40478],{},[41,40472,40473,40474,40477],{},"Deben estar ",[72,40475,40476],{},"adyacentes"," (sin nodos intermedios).",[41,40479,40480,40481,104],{},"Vue los interpreta como ",[72,40482,40483],{},"un único bloque condicional",[192,40485,40486],{"id":7701},[16,40487,7701],{},[21,40489,40490,40491,40494],{},"El elemento ",[72,40492,40493],{},"siempre se renderiza"," (existe en el DOM), pero se muestra u oculta con CSS.",[21,40496,40497],{},[72,40498,40424],{},[38,40500,40501,40504],{},[41,40502,40503],{},"La visibilidad cambia con frecuencia (toggles, menús, paneles)",[41,40505,40506],{},"Quieres evitar el costo de montar/desmontar",[3111,40508,40509],{},[21,40510,40511,10969,40513,40518],{},[16,40512,7701],{},[72,40514,40515,40516],{},"no funciona con ",[16,40517,26159],{},", porque no es un elemento real.\nEl contenido sigue en el DOM: foco, tab order y accesibilidad pueden verse afectados si no se gestiona bien.",[30,40520,40522],{"id":40521},"resumen-rápido-cuál-usar","Resumen rápido: cuál usar",[38,40524,40525,40536,40549],{},[41,40526,20777,40527,40531,40532,40535],{},[72,40528,40529],{},[16,40530,7538],{}," cuando el contenido ",[72,40533,40534],{},"no debe existir"," si la condición no se cumple.",[41,40537,20777,40538,40531,40542,40545,40546,104],{},[72,40539,40540],{},[16,40541,7701],{},[72,40543,40544],{},"solo debe ocultarse"," y el toggle será ",[72,40547,40548],{},"frecuente",[41,40550,20777,40551,40555,40556,104],{},[72,40552,40553],{},[16,40554,40341],{}," para el caso alternativo inmediato de un ",[16,40557,7538],{},[30,40559,40561,40562,28155,40564,19],{"id":40560},"ejemplo-1-login-v-if-v-else","Ejemplo 1: Login (",[16,40563,7538],{},[16,40565,40341],{},[21,40567,40568],{},"Cuando una persona está autenticada, muestras el panel; si no, un CTA para iniciar sesión.",[267,40570,40573],{"className":269,"code":40571,"filename":271,"highlights":40572,"language":272,"meta":273,"style":273},"\u003Cscript setup>\nimport { ref } from \"vue\";\n\nconst isLoggedIn = ref(false);\n\nfunction toggleLogin() {\n  isLoggedIn.value = !isLoggedIn.value;\n}\n\u003C/script>\n\n\u003Ctemplate>\n  \u003Cbutton @click=\"toggleLogin\">\n    {{ isLoggedIn ? \"Log out\" : \"Log in\" }}\n  \u003C/button>\n\n  \u003Csection v-if=\"isLoggedIn\">\n    \u003Ch2>Welcome back\u003C/h2>\n    \u003Cp>You have access to your dashboard.\u003C/p>\n  \u003C/section>\n\n  \u003Csection v-else>\n    \u003Ch2>Please log in\u003C/h2>\n    \u003Cp>You need an account to continue.\u003C/p>\n  \u003C/section>\n\u003C/template>\n",[371,500,550],[16,40574,40575,40585,40597,40601,40618,40622,40631,40644,40648,40656,40660,40668,40683,40688,40696,40700,40716,40729,40742,40750,40754,40765,40778,40791,40799],{"__ignoreMap":273},[277,40576,40577,40579,40581,40583],{"class":279,"line":280},[277,40578,284],{"class":283},[277,40580,288],{"class":287},[277,40582,292],{"class":291},[277,40584,305],{"class":283},[277,40586,40587,40589,40591,40593,40595],{"class":279,"line":308},[277,40588,312],{"class":311},[277,40590,11006],{"class":283},[277,40592,318],{"class":311},[277,40594,18148],{"class":301},[277,40596,18151],{"class":283},[277,40598,40599],{"class":279,"line":324},[277,40600,328],{"emptyLinePlaceholder":327},[277,40602,40603,40605,40608,40610,40612,40614,40616],{"class":279,"line":331},[277,40604,405],{"class":311},[277,40606,40607],{"class":356}," isLoggedIn",[277,40609,340],{"class":311},[277,40611,413],{"class":291},[277,40613,448],{"class":283},[277,40615,2123],{"class":356},[277,40617,18277],{"class":283},[277,40619,40620],{"class":279,"line":346},[277,40621,328],{"emptyLinePlaceholder":327},[277,40623,40624,40626,40629],{"class":279,"line":360},[277,40625,2460],{"class":311},[277,40627,40628],{"class":291}," toggleLogin",[277,40630,473],{"class":283},[277,40632,40634,40637,40639,40641],{"class":40633,"line":371},[279,9398],[277,40635,40636],{"class":283},"  isLoggedIn.value ",[277,40638,298],{"class":311},[277,40640,2288],{"class":311},[277,40642,40643],{"class":283},"isLoggedIn.value;\n",[277,40645,40646],{"class":279,"line":381},[277,40647,394],{"class":283},[277,40649,40650,40652,40654],{"class":279,"line":391},[277,40651,785],{"class":283},[277,40653,288],{"class":287},[277,40655,305],{"class":283},[277,40657,40658],{"class":279,"line":397},[277,40659,328],{"emptyLinePlaceholder":327},[277,40661,40662,40664,40666],{"class":279,"line":402},[277,40663,284],{"class":283},[277,40665,802],{"class":287},[277,40667,305],{"class":283},[277,40669,40670,40672,40674,40676,40678,40681],{"class":279,"line":436},[277,40671,810],{"class":283},[277,40673,4267],{"class":287},[277,40675,4278],{"class":291},[277,40677,298],{"class":283},[277,40679,40680],{"class":301},"\"toggleLogin\"",[277,40682,305],{"class":283},[277,40684,40685],{"class":279,"line":456},[277,40686,40687],{"class":283},"    {{ isLoggedIn ? \"Log out\" : \"Log in\" }}\n",[277,40689,40690,40692,40694],{"class":279,"line":461},[277,40691,954],{"class":283},[277,40693,4267],{"class":287},[277,40695,305],{"class":283},[277,40697,40698],{"class":279,"line":476},[277,40699,328],{"emptyLinePlaceholder":327},[277,40701,40703,40705,40707,40709,40711,40714],{"class":40702,"line":500},[279,9398],[277,40704,810],{"class":283},[277,40706,4121],{"class":287},[277,40708,834],{"class":291},[277,40710,298],{"class":283},[277,40712,40713],{"class":301},"\"isLoggedIn\"",[277,40715,305],{"class":283},[277,40717,40718,40720,40722,40725,40727],{"class":279,"line":505},[277,40719,829],{"class":283},[277,40721,30],{"class":287},[277,40723,40724],{"class":283},">Welcome back\u003C/",[277,40726,30],{"class":287},[277,40728,305],{"class":283},[277,40730,40731,40733,40735,40738,40740],{"class":279,"line":520},[277,40732,829],{"class":283},[277,40734,21],{"class":287},[277,40736,40737],{"class":283},">You have access to your dashboard.\u003C/",[277,40739,21],{"class":287},[277,40741,305],{"class":283},[277,40743,40744,40746,40748],{"class":279,"line":539},[277,40745,954],{"class":283},[277,40747,4121],{"class":287},[277,40749,305],{"class":283},[277,40751,40752],{"class":279,"line":545},[277,40753,328],{"emptyLinePlaceholder":327},[277,40755,40757,40759,40761,40763],{"class":40756,"line":550},[279,9398],[277,40758,810],{"class":283},[277,40760,4121],{"class":287},[277,40762,941],{"class":291},[277,40764,305],{"class":283},[277,40766,40767,40769,40771,40774,40776],{"class":279,"line":578},[277,40768,829],{"class":283},[277,40770,30],{"class":287},[277,40772,40773],{"class":283},">Please log in\u003C/",[277,40775,30],{"class":287},[277,40777,305],{"class":283},[277,40779,40780,40782,40784,40787,40789],{"class":279,"line":583},[277,40781,829],{"class":283},[277,40783,21],{"class":287},[277,40785,40786],{"class":283},">You need an account to continue.\u003C/",[277,40788,21],{"class":287},[277,40790,305],{"class":283},[277,40792,40793,40795,40797],{"class":279,"line":588},[277,40794,954],{"class":283},[277,40796,4121],{"class":287},[277,40798,305],{"class":283},[277,40800,40801,40803,40805],{"class":279,"line":606},[277,40802,785],{"class":283},[277,40804,802],{"class":287},[277,40806,305],{"class":283},[267,40808,40811],{"className":269,"code":40809,"filename":971,"highlights":40810,"language":272,"meta":273,"style":273},"\u003Cscript>\nexport default {\n  data() {\n    return {\n      isLoggedIn: false,\n    };\n  },\n  methods: {\n    toggleLogin() {\n      this.isLoggedIn = !this.isLoggedIn;\n    },\n  },\n};\n\u003C/script>\n\n\u003Ctemplate>\n  \u003Cbutton @click=\"toggleLogin\">\n    {{ isLoggedIn ? \"Log out\" : \"Log in\" }}\n  \u003C/button>\n\n  \u003Csection v-if=\"isLoggedIn\">\n    \u003Ch2>Welcome back\u003C/h2>\n    \u003Cp>You have access to your dashboard.\u003C/p>\n  \u003C/section>\n\n  \u003Csection v-else>\n    \u003Ch2>Please log in\u003C/h2>\n    \u003Cp>You need an account to continue.\u003C/p>\n  \u003C/section>\n\u003C/template>\n",[397,550,614],[16,40812,40813,40821,40829,40835,40841,40850,40854,40858,40862,40869,40886,40890,40894,40898,40906,40910,40918,40932,40936,40944,40948,40963,40975,40987,40995,40999,41010,41022,41034,41042],{"__ignoreMap":273},[277,40814,40815,40817,40819],{"class":279,"line":280},[277,40816,284],{"class":283},[277,40818,288],{"class":287},[277,40820,305],{"class":283},[277,40822,40823,40825,40827],{"class":279,"line":308},[277,40824,1057],{"class":311},[277,40826,1060],{"class":311},[277,40828,343],{"class":283},[277,40830,40831,40833],{"class":279,"line":324},[277,40832,1086],{"class":291},[277,40834,473],{"class":283},[277,40836,40837,40839],{"class":279,"line":331},[277,40838,1093],{"class":311},[277,40840,343],{"class":283},[277,40842,40843,40846,40848],{"class":279,"line":346},[277,40844,40845],{"class":283},"      isLoggedIn: ",[277,40847,2123],{"class":356},[277,40849,1077],{"class":283},[277,40851,40852],{"class":279,"line":360},[277,40853,18478],{"class":283},[277,40855,40856],{"class":279,"line":371},[277,40857,1131],{"class":283},[277,40859,40860],{"class":279,"line":381},[277,40861,1140],{"class":283},[277,40863,40864,40867],{"class":279,"line":391},[277,40865,40866],{"class":291},"    toggleLogin",[277,40868,473],{"class":283},[277,40870,40872,40874,40877,40879,40881,40883],{"class":40871,"line":397},[279,9398],[277,40873,1212],{"class":356},[277,40875,40876],{"class":283},".isLoggedIn ",[277,40878,298],{"class":311},[277,40880,2288],{"class":311},[277,40882,1341],{"class":356},[277,40884,40885],{"class":283},".isLoggedIn;\n",[277,40887,40888],{"class":279,"line":402},[277,40889,7016],{"class":283},[277,40891,40892],{"class":279,"line":436},[277,40893,1131],{"class":283},[277,40895,40896],{"class":279,"line":456},[277,40897,18255],{"class":283},[277,40899,40900,40902,40904],{"class":279,"line":461},[277,40901,785],{"class":283},[277,40903,288],{"class":287},[277,40905,305],{"class":283},[277,40907,40908],{"class":279,"line":476},[277,40909,328],{"emptyLinePlaceholder":327},[277,40911,40912,40914,40916],{"class":279,"line":500},[277,40913,284],{"class":283},[277,40915,802],{"class":287},[277,40917,305],{"class":283},[277,40919,40920,40922,40924,40926,40928,40930],{"class":279,"line":505},[277,40921,810],{"class":283},[277,40923,4267],{"class":287},[277,40925,4278],{"class":291},[277,40927,298],{"class":283},[277,40929,40680],{"class":301},[277,40931,305],{"class":283},[277,40933,40934],{"class":279,"line":520},[277,40935,40687],{"class":283},[277,40937,40938,40940,40942],{"class":279,"line":539},[277,40939,954],{"class":283},[277,40941,4267],{"class":287},[277,40943,305],{"class":283},[277,40945,40946],{"class":279,"line":545},[277,40947,328],{"emptyLinePlaceholder":327},[277,40949,40951,40953,40955,40957,40959,40961],{"class":40950,"line":550},[279,9398],[277,40952,810],{"class":283},[277,40954,4121],{"class":287},[277,40956,834],{"class":291},[277,40958,298],{"class":283},[277,40960,40713],{"class":301},[277,40962,305],{"class":283},[277,40964,40965,40967,40969,40971,40973],{"class":279,"line":578},[277,40966,829],{"class":283},[277,40968,30],{"class":287},[277,40970,40724],{"class":283},[277,40972,30],{"class":287},[277,40974,305],{"class":283},[277,40976,40977,40979,40981,40983,40985],{"class":279,"line":583},[277,40978,829],{"class":283},[277,40980,21],{"class":287},[277,40982,40737],{"class":283},[277,40984,21],{"class":287},[277,40986,305],{"class":283},[277,40988,40989,40991,40993],{"class":279,"line":588},[277,40990,954],{"class":283},[277,40992,4121],{"class":287},[277,40994,305],{"class":283},[277,40996,40997],{"class":279,"line":606},[277,40998,328],{"emptyLinePlaceholder":327},[277,41000,41002,41004,41006,41008],{"class":41001,"line":614},[279,9398],[277,41003,810],{"class":283},[277,41005,4121],{"class":287},[277,41007,941],{"class":291},[277,41009,305],{"class":283},[277,41011,41012,41014,41016,41018,41020],{"class":279,"line":625},[277,41013,829],{"class":283},[277,41015,30],{"class":287},[277,41017,40773],{"class":283},[277,41019,30],{"class":287},[277,41021,305],{"class":283},[277,41023,41024,41026,41028,41030,41032],{"class":279,"line":637},[277,41025,829],{"class":283},[277,41027,21],{"class":287},[277,41029,40786],{"class":283},[277,41031,21],{"class":287},[277,41033,305],{"class":283},[277,41035,41036,41038,41040],{"class":279,"line":646},[277,41037,954],{"class":283},[277,41039,4121],{"class":287},[277,41041,305],{"class":283},[277,41043,41044,41046,41048],{"class":279,"line":668},[277,41045,785],{"class":283},[277,41047,802],{"class":287},[277,41049,305],{"class":283},[3111,41051,41052],{},[21,41053,17879,41054,41057,41058,16974,41061,41063,41064,41067,41068,104],{},[16,41055,41056],{},"\u003Csection v-else>"," debe ir ",[72,41059,41060],{},"justo después",[16,41062,7538],{},".\nSi intercalas un comentario, un ",[16,41065,41066],{},"\u003Cdiv>"," u otro nodo, Vue deja de asociarlo como ",[16,41069,16666],{},[30,41071,41073,41074,19],{"id":41072},"ejemplo-2-tabs-o-panel-que-se-abre-y-cierra-v-show","Ejemplo 2: Tabs o panel que se abre y cierra (",[16,41075,7701],{},[21,41077,41078,41079,41083],{},"Un panel de filtros que el usuario abre y cierra constantemente. Aquí ",[72,41080,41081],{},[16,41082,7701],{}," es ideal.",[267,41085,41088],{"className":269,"code":41086,"filename":271,"highlights":41087,"language":272,"meta":273,"style":273},"\u003Cscript setup>\nimport { ref } from \"vue\";\n\nconst isOpen = ref(false);\n\u003C/script>\n\n\u003Ctemplate>\n  \u003Cbutton @click=\"isOpen = !isOpen\">\n    {{ isOpen ? \"Hide filters\" : \"Show filters\" }}\n  \u003C/button>\n\n  \u003Caside v-show=\"isOpen\" class=\"filters\">\n    \u003Ch3>Filters\u003C/h3>\n    \u003Clabel>\n      \u003Cinput type=\"checkbox\" />\n      Only available items\n    \u003C/label>\n  \u003C/aside>\n\u003C/template>\n",[331,436],[16,41089,41090,41100,41112,41116,41133,41141,41145,41153,41167,41172,41180,41184,41206,41219,41227,41241,41246,41254,41262],{"__ignoreMap":273},[277,41091,41092,41094,41096,41098],{"class":279,"line":280},[277,41093,284],{"class":283},[277,41095,288],{"class":287},[277,41097,292],{"class":291},[277,41099,305],{"class":283},[277,41101,41102,41104,41106,41108,41110],{"class":279,"line":308},[277,41103,312],{"class":311},[277,41105,11006],{"class":283},[277,41107,318],{"class":311},[277,41109,18148],{"class":301},[277,41111,18151],{"class":283},[277,41113,41114],{"class":279,"line":324},[277,41115,328],{"emptyLinePlaceholder":327},[277,41117,41119,41121,41123,41125,41127,41129,41131],{"class":41118,"line":331},[279,9398],[277,41120,405],{"class":311},[277,41122,18266],{"class":356},[277,41124,340],{"class":311},[277,41126,413],{"class":291},[277,41128,448],{"class":283},[277,41130,2123],{"class":356},[277,41132,18277],{"class":283},[277,41134,41135,41137,41139],{"class":279,"line":346},[277,41136,785],{"class":283},[277,41138,288],{"class":287},[277,41140,305],{"class":283},[277,41142,41143],{"class":279,"line":360},[277,41144,328],{"emptyLinePlaceholder":327},[277,41146,41147,41149,41151],{"class":279,"line":371},[277,41148,284],{"class":283},[277,41150,802],{"class":287},[277,41152,305],{"class":283},[277,41154,41155,41157,41159,41161,41163,41165],{"class":279,"line":381},[277,41156,810],{"class":283},[277,41158,4267],{"class":287},[277,41160,4278],{"class":291},[277,41162,298],{"class":283},[277,41164,18700],{"class":301},[277,41166,305],{"class":283},[277,41168,41169],{"class":279,"line":391},[277,41170,41171],{"class":283},"    {{ isOpen ? \"Hide filters\" : \"Show filters\" }}\n",[277,41173,41174,41176,41178],{"class":279,"line":397},[277,41175,954],{"class":283},[277,41177,4267],{"class":287},[277,41179,305],{"class":283},[277,41181,41182],{"class":279,"line":402},[277,41183,328],{"emptyLinePlaceholder":327},[277,41185,41187,41189,41191,41194,41196,41198,41200,41202,41204],{"class":41186,"line":436},[279,9398],[277,41188,810],{"class":283},[277,41190,21481],{"class":287},[277,41192,41193],{"class":291}," v-show",[277,41195,298],{"class":283},[277,41197,18724],{"class":301},[277,41199,816],{"class":291},[277,41201,298],{"class":283},[277,41203,6417],{"class":301},[277,41205,305],{"class":283},[277,41207,41208,41210,41212,41215,41217],{"class":279,"line":456},[277,41209,829],{"class":283},[277,41211,192],{"class":287},[277,41213,41214],{"class":283},">Filters\u003C/",[277,41216,192],{"class":287},[277,41218,305],{"class":283},[277,41220,41221,41223,41225],{"class":279,"line":461},[277,41222,829],{"class":283},[277,41224,3875],{"class":287},[277,41226,305],{"class":283},[277,41228,41229,41231,41233,41235,41237,41239],{"class":279,"line":476},[277,41230,879],{"class":283},[277,41232,18041],{"class":287},[277,41234,4270],{"class":291},[277,41236,298],{"class":283},[277,41238,29189],{"class":301},[277,41240,4325],{"class":283},[277,41242,41243],{"class":279,"line":500},[277,41244,41245],{"class":283},"      Only available items\n",[277,41247,41248,41250,41252],{"class":279,"line":505},[277,41249,922],{"class":283},[277,41251,3875],{"class":287},[277,41253,305],{"class":283},[277,41255,41256,41258,41260],{"class":279,"line":520},[277,41257,954],{"class":283},[277,41259,21481],{"class":287},[277,41261,305],{"class":283},[277,41263,41264,41266,41268],{"class":279,"line":539},[277,41265,785],{"class":283},[277,41267,802],{"class":287},[277,41269,305],{"class":283},[267,41271,41274],{"className":269,"code":41272,"filename":971,"highlights":41273,"language":272,"meta":273,"style":273},"\u003Cscript>\nexport default {\n  data() {\n    return {\n      isOpen: false,\n    };\n  },\n};\n\u003C/script>\n\n\u003Ctemplate>\n  \u003Cbutton @click=\"isOpen = !isOpen\">\n    {{ isOpen ? \"Hide filters\" : \"Show filters\" }}\n  \u003C/button>\n\n  \u003Caside v-show=\"isOpen\" class=\"filters\">\n    \u003Ch3>Filters\u003C/h3>\n    \u003Clabel>\n      \u003Cinput type=\"checkbox\" />\n      Only available items\n    \u003C/label>\n  \u003C/aside>\n\u003C/template>\n",[346,500],[16,41275,41276,41284,41292,41298,41304,41313,41317,41321,41325,41333,41337,41345,41359,41363,41371,41375,41396,41408,41416,41430,41434,41442,41450],{"__ignoreMap":273},[277,41277,41278,41280,41282],{"class":279,"line":280},[277,41279,284],{"class":283},[277,41281,288],{"class":287},[277,41283,305],{"class":283},[277,41285,41286,41288,41290],{"class":279,"line":308},[277,41287,1057],{"class":311},[277,41289,1060],{"class":311},[277,41291,343],{"class":283},[277,41293,41294,41296],{"class":279,"line":324},[277,41295,1086],{"class":291},[277,41297,473],{"class":283},[277,41299,41300,41302],{"class":279,"line":331},[277,41301,1093],{"class":311},[277,41303,343],{"class":283},[277,41305,41307,41309,41311],{"class":41306,"line":346},[279,9398],[277,41308,18831],{"class":283},[277,41310,2123],{"class":356},[277,41312,1077],{"class":283},[277,41314,41315],{"class":279,"line":360},[277,41316,18478],{"class":283},[277,41318,41319],{"class":279,"line":371},[277,41320,1131],{"class":283},[277,41322,41323],{"class":279,"line":381},[277,41324,18255],{"class":283},[277,41326,41327,41329,41331],{"class":279,"line":391},[277,41328,785],{"class":283},[277,41330,288],{"class":287},[277,41332,305],{"class":283},[277,41334,41335],{"class":279,"line":397},[277,41336,328],{"emptyLinePlaceholder":327},[277,41338,41339,41341,41343],{"class":279,"line":402},[277,41340,284],{"class":283},[277,41342,802],{"class":287},[277,41344,305],{"class":283},[277,41346,41347,41349,41351,41353,41355,41357],{"class":279,"line":436},[277,41348,810],{"class":283},[277,41350,4267],{"class":287},[277,41352,4278],{"class":291},[277,41354,298],{"class":283},[277,41356,18700],{"class":301},[277,41358,305],{"class":283},[277,41360,41361],{"class":279,"line":456},[277,41362,41171],{"class":283},[277,41364,41365,41367,41369],{"class":279,"line":461},[277,41366,954],{"class":283},[277,41368,4267],{"class":287},[277,41370,305],{"class":283},[277,41372,41373],{"class":279,"line":476},[277,41374,328],{"emptyLinePlaceholder":327},[277,41376,41378,41380,41382,41384,41386,41388,41390,41392,41394],{"class":41377,"line":500},[279,9398],[277,41379,810],{"class":283},[277,41381,21481],{"class":287},[277,41383,41193],{"class":291},[277,41385,298],{"class":283},[277,41387,18724],{"class":301},[277,41389,816],{"class":291},[277,41391,298],{"class":283},[277,41393,6417],{"class":301},[277,41395,305],{"class":283},[277,41397,41398,41400,41402,41404,41406],{"class":279,"line":505},[277,41399,829],{"class":283},[277,41401,192],{"class":287},[277,41403,41214],{"class":283},[277,41405,192],{"class":287},[277,41407,305],{"class":283},[277,41409,41410,41412,41414],{"class":279,"line":520},[277,41411,829],{"class":283},[277,41413,3875],{"class":287},[277,41415,305],{"class":283},[277,41417,41418,41420,41422,41424,41426,41428],{"class":279,"line":539},[277,41419,879],{"class":283},[277,41421,18041],{"class":287},[277,41423,4270],{"class":291},[277,41425,298],{"class":283},[277,41427,29189],{"class":301},[277,41429,4325],{"class":283},[277,41431,41432],{"class":279,"line":545},[277,41433,41245],{"class":283},[277,41435,41436,41438,41440],{"class":279,"line":550},[277,41437,922],{"class":283},[277,41439,3875],{"class":287},[277,41441,305],{"class":283},[277,41443,41444,41446,41448],{"class":279,"line":578},[277,41445,954],{"class":283},[277,41447,21481],{"class":287},[277,41449,305],{"class":283},[277,41451,41452,41454,41456],{"class":279,"line":583},[277,41453,785],{"class":283},[277,41455,802],{"class":287},[277,41457,305],{"class":283},[192,41459,41461],{"id":41460},"nota-de-ux-y-accesibilidad","Nota de UX y accesibilidad",[21,41463,41464,41465,41468],{},"Como el panel ",[72,41466,41467],{},"sigue existiendo",", sus elementos interactivos pueden:",[38,41470,41471,41474,41477],{},[41,41472,41473],{},"Conservar estado",[41,41475,41476],{},"Conservar foco (a veces deseable, a veces no)",[41,41478,41479],{},"Seguir siendo accesibles para lectores de pantalla si no se manejan roles/ARIA",[21,41481,41482,41483,41486,41487,104],{},"Si el contenido ",[72,41484,41485],{},"no debería existir"," en absoluto, usa ",[16,41488,7538],{},[30,41490,41492,41494,41495,41498],{"id":41491},"v-else-if-múltiples-estados-sin-anidar-if-innecesarios",[16,41493,40454],{},": múltiples estados (sin anidar ",[16,41496,41497],{},"if"," innecesarios)",[21,41500,41501,41502,225,41504,1697,41506,104],{},"Un patrón común: ",[3292,41503,3343],{},[3292,41505,3349],{},[3292,41507,41508],{},"success",[267,41510,41513],{"className":269,"code":41511,"filename":271,"highlights":41512,"language":272,"meta":273,"style":273},"\u003Cscript setup>\nimport { ref } from \"vue\";\n\nconst status = ref(\"idle\"); // \"idle\" | \"loading\" | \"error\" | \"success\"\n\u003C/script>\n\n\u003Ctemplate>\n  \u003Cbutton @click=\"status = 'loading'\">Simulate loading\u003C/button>\n  \u003Cbutton @click=\"status = 'error'\">Simulate error\u003C/button>\n  \u003Cbutton @click=\"status = 'success'\">Simulate success\u003C/button>\n  \u003Cbutton @click=\"status = 'idle'\">Reset\u003C/button>\n\n  \u003Cp v-if=\"status === 'loading'\">Loading...\u003C/p>\n  \u003Cp v-else-if=\"status === 'error'\">Something went wrong.\u003C/p>\n  \u003Cp v-else-if=\"status === 'success'\">Done!\u003C/p>\n  \u003Cp v-else>Idle. Click a button.\u003C/p>\n\u003C/template>\n",[331,456,461,476,500],[16,41514,41515,41525,41537,41541,41563,41571,41575,41583,41603,41623,41643,41663,41667,41688,41709,41730,41746],{"__ignoreMap":273},[277,41516,41517,41519,41521,41523],{"class":279,"line":280},[277,41518,284],{"class":283},[277,41520,288],{"class":287},[277,41522,292],{"class":291},[277,41524,305],{"class":283},[277,41526,41527,41529,41531,41533,41535],{"class":279,"line":308},[277,41528,312],{"class":311},[277,41530,11006],{"class":283},[277,41532,318],{"class":311},[277,41534,18148],{"class":301},[277,41536,18151],{"class":283},[277,41538,41539],{"class":279,"line":324},[277,41540,328],{"emptyLinePlaceholder":327},[277,41542,41544,41546,41548,41550,41552,41554,41557,41560],{"class":41543,"line":331},[279,9398],[277,41545,405],{"class":311},[277,41547,5726],{"class":356},[277,41549,340],{"class":311},[277,41551,413],{"class":291},[277,41553,448],{"class":283},[277,41555,41556],{"class":301},"\"idle\"",[277,41558,41559],{"class":283},"); ",[277,41561,41562],{"class":12741},"// \"idle\" | \"loading\" | \"error\" | \"success\"\n",[277,41564,41565,41567,41569],{"class":279,"line":346},[277,41566,785],{"class":283},[277,41568,288],{"class":287},[277,41570,305],{"class":283},[277,41572,41573],{"class":279,"line":360},[277,41574,328],{"emptyLinePlaceholder":327},[277,41576,41577,41579,41581],{"class":279,"line":371},[277,41578,284],{"class":283},[277,41580,802],{"class":287},[277,41582,305],{"class":283},[277,41584,41585,41587,41589,41591,41593,41596,41599,41601],{"class":279,"line":381},[277,41586,810],{"class":283},[277,41588,4267],{"class":287},[277,41590,4278],{"class":291},[277,41592,298],{"class":283},[277,41594,41595],{"class":301},"\"status = 'loading'\"",[277,41597,41598],{"class":283},">Simulate loading\u003C/",[277,41600,4267],{"class":287},[277,41602,305],{"class":283},[277,41604,41605,41607,41609,41611,41613,41616,41619,41621],{"class":279,"line":391},[277,41606,810],{"class":283},[277,41608,4267],{"class":287},[277,41610,4278],{"class":291},[277,41612,298],{"class":283},[277,41614,41615],{"class":301},"\"status = 'error'\"",[277,41617,41618],{"class":283},">Simulate error\u003C/",[277,41620,4267],{"class":287},[277,41622,305],{"class":283},[277,41624,41625,41627,41629,41631,41633,41636,41639,41641],{"class":279,"line":397},[277,41626,810],{"class":283},[277,41628,4267],{"class":287},[277,41630,4278],{"class":291},[277,41632,298],{"class":283},[277,41634,41635],{"class":301},"\"status = 'success'\"",[277,41637,41638],{"class":283},">Simulate success\u003C/",[277,41640,4267],{"class":287},[277,41642,305],{"class":283},[277,41644,41645,41647,41649,41651,41653,41656,41659,41661],{"class":279,"line":402},[277,41646,810],{"class":283},[277,41648,4267],{"class":287},[277,41650,4278],{"class":291},[277,41652,298],{"class":283},[277,41654,41655],{"class":301},"\"status = 'idle'\"",[277,41657,41658],{"class":283},">Reset\u003C/",[277,41660,4267],{"class":287},[277,41662,305],{"class":283},[277,41664,41665],{"class":279,"line":436},[277,41666,328],{"emptyLinePlaceholder":327},[277,41668,41670,41672,41674,41676,41678,41681,41684,41686],{"class":41669,"line":456},[279,9398],[277,41671,810],{"class":283},[277,41673,21],{"class":287},[277,41675,834],{"class":291},[277,41677,298],{"class":283},[277,41679,41680],{"class":301},"\"status === 'loading'\"",[277,41682,41683],{"class":283},">Loading...\u003C/",[277,41685,21],{"class":287},[277,41687,305],{"class":283},[277,41689,41691,41693,41695,41697,41699,41702,41705,41707],{"class":41690,"line":461},[279,9398],[277,41692,810],{"class":283},[277,41694,21],{"class":287},[277,41696,861],{"class":291},[277,41698,298],{"class":283},[277,41700,41701],{"class":301},"\"status === 'error'\"",[277,41703,41704],{"class":283},">Something went wrong.\u003C/",[277,41706,21],{"class":287},[277,41708,305],{"class":283},[277,41710,41712,41714,41716,41718,41720,41723,41726,41728],{"class":41711,"line":476},[279,9398],[277,41713,810],{"class":283},[277,41715,21],{"class":287},[277,41717,861],{"class":291},[277,41719,298],{"class":283},[277,41721,41722],{"class":301},"\"status === 'success'\"",[277,41724,41725],{"class":283},">Done!\u003C/",[277,41727,21],{"class":287},[277,41729,305],{"class":283},[277,41731,41733,41735,41737,41739,41742,41744],{"class":41732,"line":500},[279,9398],[277,41734,810],{"class":283},[277,41736,21],{"class":287},[277,41738,941],{"class":291},[277,41740,41741],{"class":283},">Idle. Click a button.\u003C/",[277,41743,21],{"class":287},[277,41745,305],{"class":283},[277,41747,41748,41750,41752],{"class":279,"line":505},[277,41749,785],{"class":283},[277,41751,802],{"class":287},[277,41753,305],{"class":283},[267,41755,41758],{"className":269,"code":41756,"filename":971,"highlights":41757,"language":272,"meta":273,"style":273},"\u003Cscript>\nexport default {\n  data() {\n    return {\n      status: \"idle\", // \"idle\" | \"loading\" | \"error\" | \"success\"\n    };\n  },\n};\n\u003C/script>\n\n\u003Ctemplate>\n  \u003Cbutton @click=\"status = 'loading'\">Simulate loading\u003C/button>\n  \u003Cbutton @click=\"status = 'error'\">Simulate error\u003C/button>\n  \u003Cbutton @click=\"status = 'success'\">Simulate success\u003C/button>\n  \u003Cbutton @click=\"status = 'idle'\">Reset\u003C/button>\n\n  \u003Cp v-if=\"status === 'loading'\">Loading...\u003C/p>\n  \u003Cp v-else-if=\"status === 'error'\">Something went wrong.\u003C/p>\n  \u003Cp v-else-if=\"status === 'success'\">Done!\u003C/p>\n  \u003Cp v-else>Idle. Click a button.\u003C/p>\n\u003C/template>\n",[346,505,520,539,545],[16,41759,41760,41768,41776,41782,41788,41799,41803,41807,41811,41819,41823,41831,41849,41867,41885,41903,41907,41926,41945,41964,41979],{"__ignoreMap":273},[277,41761,41762,41764,41766],{"class":279,"line":280},[277,41763,284],{"class":283},[277,41765,288],{"class":287},[277,41767,305],{"class":283},[277,41769,41770,41772,41774],{"class":279,"line":308},[277,41771,1057],{"class":311},[277,41773,1060],{"class":311},[277,41775,343],{"class":283},[277,41777,41778,41780],{"class":279,"line":324},[277,41779,1086],{"class":291},[277,41781,473],{"class":283},[277,41783,41784,41786],{"class":279,"line":331},[277,41785,1093],{"class":311},[277,41787,343],{"class":283},[277,41789,41791,41793,41795,41797],{"class":41790,"line":346},[279,9398],[277,41792,6620],{"class":283},[277,41794,41556],{"class":301},[277,41796,225],{"class":283},[277,41798,41562],{"class":12741},[277,41800,41801],{"class":279,"line":360},[277,41802,18478],{"class":283},[277,41804,41805],{"class":279,"line":371},[277,41806,1131],{"class":283},[277,41808,41809],{"class":279,"line":381},[277,41810,18255],{"class":283},[277,41812,41813,41815,41817],{"class":279,"line":391},[277,41814,785],{"class":283},[277,41816,288],{"class":287},[277,41818,305],{"class":283},[277,41820,41821],{"class":279,"line":397},[277,41822,328],{"emptyLinePlaceholder":327},[277,41824,41825,41827,41829],{"class":279,"line":402},[277,41826,284],{"class":283},[277,41828,802],{"class":287},[277,41830,305],{"class":283},[277,41832,41833,41835,41837,41839,41841,41843,41845,41847],{"class":279,"line":436},[277,41834,810],{"class":283},[277,41836,4267],{"class":287},[277,41838,4278],{"class":291},[277,41840,298],{"class":283},[277,41842,41595],{"class":301},[277,41844,41598],{"class":283},[277,41846,4267],{"class":287},[277,41848,305],{"class":283},[277,41850,41851,41853,41855,41857,41859,41861,41863,41865],{"class":279,"line":456},[277,41852,810],{"class":283},[277,41854,4267],{"class":287},[277,41856,4278],{"class":291},[277,41858,298],{"class":283},[277,41860,41615],{"class":301},[277,41862,41618],{"class":283},[277,41864,4267],{"class":287},[277,41866,305],{"class":283},[277,41868,41869,41871,41873,41875,41877,41879,41881,41883],{"class":279,"line":461},[277,41870,810],{"class":283},[277,41872,4267],{"class":287},[277,41874,4278],{"class":291},[277,41876,298],{"class":283},[277,41878,41635],{"class":301},[277,41880,41638],{"class":283},[277,41882,4267],{"class":287},[277,41884,305],{"class":283},[277,41886,41887,41889,41891,41893,41895,41897,41899,41901],{"class":279,"line":476},[277,41888,810],{"class":283},[277,41890,4267],{"class":287},[277,41892,4278],{"class":291},[277,41894,298],{"class":283},[277,41896,41655],{"class":301},[277,41898,41658],{"class":283},[277,41900,4267],{"class":287},[277,41902,305],{"class":283},[277,41904,41905],{"class":279,"line":500},[277,41906,328],{"emptyLinePlaceholder":327},[277,41908,41910,41912,41914,41916,41918,41920,41922,41924],{"class":41909,"line":505},[279,9398],[277,41911,810],{"class":283},[277,41913,21],{"class":287},[277,41915,834],{"class":291},[277,41917,298],{"class":283},[277,41919,41680],{"class":301},[277,41921,41683],{"class":283},[277,41923,21],{"class":287},[277,41925,305],{"class":283},[277,41927,41929,41931,41933,41935,41937,41939,41941,41943],{"class":41928,"line":520},[279,9398],[277,41930,810],{"class":283},[277,41932,21],{"class":287},[277,41934,861],{"class":291},[277,41936,298],{"class":283},[277,41938,41701],{"class":301},[277,41940,41704],{"class":283},[277,41942,21],{"class":287},[277,41944,305],{"class":283},[277,41946,41948,41950,41952,41954,41956,41958,41960,41962],{"class":41947,"line":539},[279,9398],[277,41949,810],{"class":283},[277,41951,21],{"class":287},[277,41953,861],{"class":291},[277,41955,298],{"class":283},[277,41957,41722],{"class":301},[277,41959,41725],{"class":283},[277,41961,21],{"class":287},[277,41963,305],{"class":283},[277,41965,41967,41969,41971,41973,41975,41977],{"class":41966,"line":545},[279,9398],[277,41968,810],{"class":283},[277,41970,21],{"class":287},[277,41972,941],{"class":291},[277,41974,41741],{"class":283},[277,41976,21],{"class":287},[277,41978,305],{"class":283},[277,41980,41981,41983,41985],{"class":279,"line":550},[277,41982,785],{"class":283},[277,41984,802],{"class":287},[277,41986,305],{"class":283},[30,41988,190],{"id":189},[192,41990,41992,41993,41995,41996],{"id":41991},"_1-v-else-separado-del-v-if","1) ",[16,41994,40341],{}," separado del ",[16,41997,7538],{},[21,41999,24892],{},[267,42001,42004],{"className":269,"code":42002,"filename":9339,"highlights":42003,"language":272,"meta":273,"style":273},"\u003Cdiv v-if=\"ok\">Ok\u003C/div>\n\u003C!-- comentario o nodo -->\n\u003Cdiv v-else>No ok\u003C/div>\n",[308],[16,42005,42006,42030,42036],{"__ignoreMap":273},[277,42007,42008,42010,42012,42014,42016,42018,42021,42023,42026,42028],{"class":279,"line":280},[277,42009,284],{"class":283},[277,42011,4201],{"class":287},[277,42013,834],{"class":311},[277,42015,298],{"class":283},[277,42017,866],{"class":301},[277,42019,42020],{"class":283},"ok",[277,42022,866],{"class":301},[277,42024,42025],{"class":283},">Ok\u003C/",[277,42027,4201],{"class":287},[277,42029,305],{"class":283},[277,42031,42033],{"class":42032,"line":308},[279,9398],[277,42034,42035],{"class":12741},"\u003C!-- comentario o nodo -->\n",[277,42037,42038,42040,42042,42044,42047,42049],{"class":279,"line":324},[277,42039,284],{"class":283},[277,42041,4201],{"class":287},[277,42043,941],{"class":311},[277,42045,42046],{"class":283},">No ok\u003C/",[277,42048,4201],{"class":287},[277,42050,305],{"class":283},[3111,42052,42053],{},[21,42054,17879,42055,41057,42057,42060,42061,104],{},[16,42056,40341],{},[72,42058,42059],{},"inmediatamente"," después del ",[16,42062,7538],{},[192,42064,12603,42066,42068],{"id":42065},"_2-usar-v-show-para-contenido-que-no-debería-existir",[16,42067,7701],{}," para contenido que no debería existir",[21,42070,42071,42072,42074,42075,225,42078,42081,42082,104],{},"Si ocultas con ",[16,42073,7701],{}," algo como un ",[3292,42076,42077],{},"admin panel",[72,42079,42080],{},"sigue en el DOM",".\nNo es seguridad; es solo presentación. La seguridad va en el backend, pero en la UI al menos usa ",[16,42083,7538],{},[192,42085,42087,42088,42090],{"id":42086},"_3-pensar-que-v-if-es-gratis","3) Pensar que ",[16,42089,7538],{}," es “gratis”",[21,42092,42093,42094,42096,42097,42100,42101,42103],{},"Alternar ",[16,42095,7538],{}," muchas veces implica ",[72,42098,42099],{},"montajes y desmontajes repetidos",".\nSi el usuario va a abrir y cerrar algo constantemente, ",[16,42102,7701],{}," suele ser mejor opción.",[30,42105,17671],{"id":17670},[38,42107,42108,42119,42127],{},[41,42109,42110,42114,42115,42118],{},[72,42111,42112],{},[16,42113,7538],{},": controla la ",[72,42116,42117],{},"existencia real"," del elemento.",[41,42120,42121,42126],{},[72,42122,42123],{},[16,42124,42125],{},"v-else / v-else-if",": ramas alternativas del mismo bloque condicional.",[41,42128,42129,42133],{},[72,42130,42131],{},[16,42132,7701],{},": ocultar/mostrar rápido con CSS, sin destruir el DOM.",[3111,42135,42136],{},[21,42137,42138,42139],{},"Una UI se vuelve más clara cuando decides conscientemente:\n",[72,42140,42141],{},"¿Quiero que esto exista o solo que se vea?",[1606,42143,42144],{},"html pre.shiki code .sVt8B, html code.shiki .sVt8B{--shiki-default:#24292E;--shiki-dark:#E1E4E8}html pre.shiki code .s9eBZ, html code.shiki .s9eBZ{--shiki-default:#22863A;--shiki-dark:#85E89D}html pre.shiki code .sScJk, html code.shiki .sScJk{--shiki-default:#6F42C1;--shiki-dark:#B392F0}html pre.shiki code .szBVR, html code.shiki .szBVR{--shiki-default:#D73A49;--shiki-dark:#F97583}html pre.shiki code .sZZnC, html code.shiki .sZZnC{--shiki-default:#032F62;--shiki-dark:#9ECBFF}html pre.shiki code .sj4cs, html code.shiki .sj4cs{--shiki-default:#005CC5;--shiki-dark:#79B8FF}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 .sJ8bj, html code.shiki .sJ8bj{--shiki-default:#6A737D;--shiki-dark:#6A737D}",{"title":273,"searchDepth":308,"depth":308,"links":42146},[42147,42153,42154,42156,42160,42162,42170],{"id":40398,"depth":308,"text":40399,"children":42148},[42149,42150,42152],{"id":7538,"depth":324,"text":7538},{"id":40449,"depth":324,"text":42151},"v-else y v-else-if",{"id":7701,"depth":324,"text":7701},{"id":40521,"depth":308,"text":40522},{"id":40560,"depth":308,"text":42155},"Ejemplo 1: Login (v-if + v-else)",{"id":41072,"depth":308,"text":42157,"children":42158},"Ejemplo 2: Tabs o panel que se abre y cierra (v-show)",[42159],{"id":41460,"depth":324,"text":41461},{"id":41491,"depth":308,"text":42161},"v-else-if: múltiples estados (sin anidar if innecesarios)",{"id":189,"depth":308,"text":190,"children":42163},[42164,42166,42168],{"id":41991,"depth":324,"text":42165},"1) v-else separado del v-if",{"id":42065,"depth":324,"text":42167},"2) Usar v-show para contenido que no debería existir",{"id":42086,"depth":324,"text":42169},"3) Pensar que v-if es “gratis”",{"id":17670,"depth":308,"text":17671},"https://res.cloudinary.com/denj4fg7f/image/upload/v1771265982/directives-vue-v-if-v-else-v-show-guide_qmtjik.png","Ilustración conceptual del renderizado condicional en Vue.js","2026-02-05","Aprende a usar v-if, v-else y v-show en Vue con ejemplos claros, buenas prácticas y notas clave para elegir correctamente entre renderizado condicional y visibilidad.",{"script":42176},[42177],{"type":1632,"key":1633,"data-nuxt-schema-org":327,"nodes":42178},[42179],{"headline":42180,"author":42181,"datePublished":42182,"@type":1640},"v-if, v-else y v-show en Vue: cuándo usar cada uno",{"name":1637,"@type":1638},"2026-02-05T12:30:00-05:00",{"updatedAt":42182,"coverCaption":42184,"author":1637,"keywords":42185},"Renderizado condicional en Vue.js ilustrado por TODOvue",[1645,7538,40341,7701,42186,42187,271,971],"conditional rendering","directives","/blog/directives-vue-v-if-v-else-v-show-guide.es",[42190],{"headline":42180,"author":42191,"datePublished":42182,"@type":1640},{"name":1637,"@type":1638},{"title":40331,"description":42174},"blog/directives-vue-v-if-v-else-v-show-guide.es",[42195,42196,42199,42200],{"tag":20588,"color":20589},{"tag":42197,"color":42198},"Renderizado Condicional","#E056FD",{"tag":21891,"color":21892},{"tag":9074,"color":9075},"TkJqW4T4cLFojTQtYJ-K1AYGAxTaIfMdcflMpUaN50U",{"id":42203,"title":42204,"body":42205,"cover":45570,"coverAlt":42204,"date":45571,"description":45572,"draft":1627,"extension":1628,"head":45573,"locale":1641,"meta":45580,"navigation":327,"path":45585,"schemaOrg":45586,"seo":45589,"series":20582,"seriesDescription":20583,"seriesOrder":280,"seriesTitle":20584,"slug":1656,"stem":45590,"tags":45591,"__hash__":45598},"blog/blog/vue-directives-overview.es.md","Directivas en Vue: Una Visión General",{"type":8,"value":42206,"toc":45551},[42207,42211,42226,42237,42239,42242,42294,42303,42312,42315,42326,42438,42553,42557,42566,42568,42576,42673,42773,42777,42780,42783,42794,42929,43070,43078,43082,43085,43090,43095,43196,43312,43316,43323,43326,43336,43447,43561,43569,43573,43576,43697,43838,43851,43855,43858,43953,44053,44056,44060,44063,44159,44260,44269,44273,44276,44422,44579,44585,44589,44596,44705,44818,44821,44825,44828,44958,45077,45084,45088,45091,45159,45233,45236,45240,45243,45311,45384,45387,45390,45393,45484,45518,45521,45523,45529,45532,45542,45549],[11,42208,42210],{"id":42209},"directivas-en-vue-3-guía-completa-para-entenderlas-bien","Directivas en Vue 3: guía completa para entenderlas bien",[21,42212,42213,42214,42217,42218,42221,42222,42225],{},"Las directivas en Vue son ",[72,42215,42216],{},"atributos especiales"," que permiten aplicar lógica reactiva directamente sobre el DOM.\nTodas comienzan con ",[16,42219,42220],{},"v-"," y existen para ",[72,42223,42224],{},"reducir código imperativo"," y hacer que el template sea más expresivo y declarativo.",[21,42227,42228,42229,42232,42233,42236],{},"Esta entrada es un ",[72,42230,42231],{},"mapa general",": no profundiza al extremo, pero te deja claro ",[72,42234,42235],{},"qué hace cada directiva, cuándo usarla y qué problema resuelve",".\nCada una tendrá luego su artículo dedicado.",[30,42238,13169],{"id":13168},[21,42240,42241],{},"Si quieres profundizar en cada directiva, aquí tienes la ruta completa de esta serie:",[38,42243,42244,42249,42254,42259,42264,42269,42274,42279,42284,42289],{},[41,42245,42246],{},[13178,42247,40331],{"href":42248},"/blog/directives-vue-v-if-v-else-v-show-guide.es/",[41,42250,42251],{},[13178,42252,36974],{"href":42253},"/blog/directives-vue-v-for-guide.es/",[41,42255,42256],{},[13178,42257,33986],{"href":42258},"/blog/directives-vue-v-bind-guide.es/",[41,42260,42261],{},[13178,42262,28121],{"href":42263},"/blog/directives-vue-v-model-guide.es/",[41,42265,42266],{},[13178,42267,30955],{"href":42268},"/blog/directives-vue-v-on-guide.es/",[41,42270,42271],{},[13178,42272,24579],{"href":42273},"/blog/directives-vue-v-text-v-html-guide.es/",[41,42275,42276],{},[13178,42277,25861],{"href":42278},"/blog/directives-vue-v-slot-guide.es/",[41,42280,42281],{},[13178,42282,21898],{"href":42283},"/blog/directives-vue-v-once-v-memo-v-pre-guide.es/",[41,42285,42286],{},[13178,42287,20599],{"href":42288},"/blog/directives-vue-v-cloak-guide.es/",[41,42290,42291],{},[13178,42292,17780],{"href":42293},"/blog/directives-vue-custom-directives-guide.es/",[30,42295,42297,225,42299,225,42301],{"id":42296},"v-if-v-else-if-v-else",[16,42298,7538],{},[16,42300,40454],{},[16,42302,40341],{},[21,42304,42305,42306,42309,42310,104],{},"Sirven para ",[72,42307,42308],{},"renderizar o eliminar elementos del DOM"," según una condición reactiva.\nSi la condición es falsa, el elemento ",[72,42311,40419],{},[21,42313,42314],{},"Úsala cuando:",[38,42316,42317,42320,42323],{},[41,42318,42319],{},"El contenido es pesado",[41,42321,42322],{},"No siempre debe existir",[41,42324,42325],{},"Depende de permisos o estados críticos",[267,42327,42330],{"className":269,"code":42328,"filename":271,"highlights":42329,"language":272,"meta":273,"style":273},"\u003Cscript setup>\nimport { ref } from 'vue'\n\nconst isLogged = ref(true)\n\u003C/script>\n\n\u003Ctemplate>\n  \u003Cp v-if=\"isLogged\">Bienvenido\u003C/p>\n  \u003Cp v-else>No has iniciado sesión\u003C/p>\n\u003C/template>\n",[381,391],[16,42331,42332,42342,42352,42356,42373,42381,42385,42393,42414,42430],{"__ignoreMap":273},[277,42333,42334,42336,42338,42340],{"class":279,"line":280},[277,42335,284],{"class":283},[277,42337,288],{"class":287},[277,42339,292],{"class":291},[277,42341,305],{"class":283},[277,42343,42344,42346,42348,42350],{"class":279,"line":308},[277,42345,312],{"class":311},[277,42347,11006],{"class":283},[277,42349,318],{"class":311},[277,42351,321],{"class":301},[277,42353,42354],{"class":279,"line":324},[277,42355,328],{"emptyLinePlaceholder":327},[277,42357,42358,42360,42363,42365,42367,42369,42371],{"class":279,"line":331},[277,42359,405],{"class":311},[277,42361,42362],{"class":356}," isLogged",[277,42364,340],{"class":311},[277,42366,413],{"class":291},[277,42368,448],{"class":283},[277,42370,2149],{"class":356},[277,42372,433],{"class":283},[277,42374,42375,42377,42379],{"class":279,"line":346},[277,42376,785],{"class":283},[277,42378,288],{"class":287},[277,42380,305],{"class":283},[277,42382,42383],{"class":279,"line":360},[277,42384,328],{"emptyLinePlaceholder":327},[277,42386,42387,42389,42391],{"class":279,"line":371},[277,42388,284],{"class":283},[277,42390,802],{"class":287},[277,42392,305],{"class":283},[277,42394,42396,42398,42400,42402,42404,42407,42410,42412],{"class":42395,"line":381},[279,9398],[277,42397,810],{"class":283},[277,42399,21],{"class":287},[277,42401,834],{"class":291},[277,42403,298],{"class":283},[277,42405,42406],{"class":301},"\"isLogged\"",[277,42408,42409],{"class":283},">Bienvenido\u003C/",[277,42411,21],{"class":287},[277,42413,305],{"class":283},[277,42415,42417,42419,42421,42423,42426,42428],{"class":42416,"line":391},[279,9398],[277,42418,810],{"class":283},[277,42420,21],{"class":287},[277,42422,941],{"class":291},[277,42424,42425],{"class":283},">No has iniciado sesión\u003C/",[277,42427,21],{"class":287},[277,42429,305],{"class":283},[277,42431,42432,42434,42436],{"class":279,"line":397},[277,42433,785],{"class":283},[277,42435,802],{"class":287},[277,42437,305],{"class":283},[267,42439,42442],{"className":269,"code":42440,"filename":971,"highlights":42441,"language":272,"meta":273,"style":273},"\u003Cscript>\nexport default {\n  data() {\n    return {\n      isLogged: true\n    }\n  }\n}\n\u003C/script>\n\n\u003Ctemplate>\n  \u003Cp v-if=\"isLogged\">Bienvenido\u003C/p>\n  \u003Cp v-else>No has iniciado sesión\u003C/p>\n\u003C/template>\n",[436,456],[16,42443,42444,42452,42460,42466,42472,42479,42483,42487,42491,42499,42503,42511,42530,42545],{"__ignoreMap":273},[277,42445,42446,42448,42450],{"class":279,"line":280},[277,42447,284],{"class":283},[277,42449,288],{"class":287},[277,42451,305],{"class":283},[277,42453,42454,42456,42458],{"class":279,"line":308},[277,42455,1057],{"class":311},[277,42457,1060],{"class":311},[277,42459,343],{"class":283},[277,42461,42462,42464],{"class":279,"line":324},[277,42463,1086],{"class":291},[277,42465,473],{"class":283},[277,42467,42468,42470],{"class":279,"line":331},[277,42469,1093],{"class":311},[277,42471,343],{"class":283},[277,42473,42474,42477],{"class":279,"line":346},[277,42475,42476],{"class":283},"      isLogged: ",[277,42478,2082],{"class":356},[277,42480,42481],{"class":279,"line":360},[277,42482,1126],{"class":283},[277,42484,42485],{"class":279,"line":371},[277,42486,542],{"class":283},[277,42488,42489],{"class":279,"line":381},[277,42490,394],{"class":283},[277,42492,42493,42495,42497],{"class":279,"line":391},[277,42494,785],{"class":283},[277,42496,288],{"class":287},[277,42498,305],{"class":283},[277,42500,42501],{"class":279,"line":397},[277,42502,328],{"emptyLinePlaceholder":327},[277,42504,42505,42507,42509],{"class":279,"line":402},[277,42506,284],{"class":283},[277,42508,802],{"class":287},[277,42510,305],{"class":283},[277,42512,42514,42516,42518,42520,42522,42524,42526,42528],{"class":42513,"line":436},[279,9398],[277,42515,810],{"class":283},[277,42517,21],{"class":287},[277,42519,834],{"class":291},[277,42521,298],{"class":283},[277,42523,42406],{"class":301},[277,42525,42409],{"class":283},[277,42527,21],{"class":287},[277,42529,305],{"class":283},[277,42531,42533,42535,42537,42539,42541,42543],{"class":42532,"line":456},[279,9398],[277,42534,810],{"class":283},[277,42536,21],{"class":287},[277,42538,941],{"class":291},[277,42540,42425],{"class":283},[277,42542,21],{"class":287},[277,42544,305],{"class":283},[277,42546,42547,42549,42551],{"class":279,"line":461},[277,42548,785],{"class":283},[277,42550,802],{"class":287},[277,42552,305],{"class":283},[30,42554,42555],{"id":7701},[16,42556,7701],{},[21,42558,42559,42560,42562,42563,104],{},"Controla la visibilidad usando CSS (",[16,42561,40385],{},"), pero ",[72,42564,42565],{},"el elemento siempre existe en el DOM",[21,42567,42314],{},[38,42569,42570,42573],{},[41,42571,42572],{},"El elemento se muestra y oculta con frecuencia",[41,42574,42575],{},"No quieres pagar el costo de montar y desmontar el nodo",[267,42577,42580],{"className":269,"code":42578,"filename":271,"highlights":42579,"language":272,"meta":273,"style":273},"\u003Cscript setup>\nimport { ref } from 'vue'\n  \nconst isVisible = ref(true)\n\u003C/script>\n\n\u003Ctemplate>\n  \u003Cp v-show=\"isVisible\">Contenido visible\u003C/p>\n\u003C/template>\n",[381],[16,42581,42582,42592,42602,42607,42624,42632,42636,42644,42665],{"__ignoreMap":273},[277,42583,42584,42586,42588,42590],{"class":279,"line":280},[277,42585,284],{"class":283},[277,42587,288],{"class":287},[277,42589,292],{"class":291},[277,42591,305],{"class":283},[277,42593,42594,42596,42598,42600],{"class":279,"line":308},[277,42595,312],{"class":311},[277,42597,11006],{"class":283},[277,42599,318],{"class":311},[277,42601,321],{"class":301},[277,42603,42604],{"class":279,"line":324},[277,42605,42606],{"class":283},"  \n",[277,42608,42609,42611,42614,42616,42618,42620,42622],{"class":279,"line":331},[277,42610,405],{"class":311},[277,42612,42613],{"class":356}," isVisible",[277,42615,340],{"class":311},[277,42617,413],{"class":291},[277,42619,448],{"class":283},[277,42621,2149],{"class":356},[277,42623,433],{"class":283},[277,42625,42626,42628,42630],{"class":279,"line":346},[277,42627,785],{"class":283},[277,42629,288],{"class":287},[277,42631,305],{"class":283},[277,42633,42634],{"class":279,"line":360},[277,42635,328],{"emptyLinePlaceholder":327},[277,42637,42638,42640,42642],{"class":279,"line":371},[277,42639,284],{"class":283},[277,42641,802],{"class":287},[277,42643,305],{"class":283},[277,42645,42647,42649,42651,42653,42655,42658,42661,42663],{"class":42646,"line":381},[279,9398],[277,42648,810],{"class":283},[277,42650,21],{"class":287},[277,42652,41193],{"class":291},[277,42654,298],{"class":283},[277,42656,42657],{"class":301},"\"isVisible\"",[277,42659,42660],{"class":283},">Contenido visible\u003C/",[277,42662,21],{"class":287},[277,42664,305],{"class":283},[277,42666,42667,42669,42671],{"class":279,"line":391},[277,42668,785],{"class":283},[277,42670,802],{"class":287},[277,42672,305],{"class":283},[267,42674,42677],{"className":269,"code":42675,"filename":971,"highlights":42676,"language":272,"meta":273,"style":273},"\u003Cscript>\nexport default {\n  data() {\n    return {\n      isVisible: true\n    }\n  }\n}\n\u003C/script>\n\n\u003Ctemplate>\n  \u003Cp v-show=\"isVisible\">Contenido visible\u003C/p>\n\u003C/template>\n",[436],[16,42678,42679,42687,42695,42701,42707,42714,42718,42722,42726,42734,42738,42746,42765],{"__ignoreMap":273},[277,42680,42681,42683,42685],{"class":279,"line":280},[277,42682,284],{"class":283},[277,42684,288],{"class":287},[277,42686,305],{"class":283},[277,42688,42689,42691,42693],{"class":279,"line":308},[277,42690,1057],{"class":311},[277,42692,1060],{"class":311},[277,42694,343],{"class":283},[277,42696,42697,42699],{"class":279,"line":324},[277,42698,1086],{"class":291},[277,42700,473],{"class":283},[277,42702,42703,42705],{"class":279,"line":331},[277,42704,1093],{"class":311},[277,42706,343],{"class":283},[277,42708,42709,42712],{"class":279,"line":346},[277,42710,42711],{"class":283},"      isVisible: ",[277,42713,2082],{"class":356},[277,42715,42716],{"class":279,"line":360},[277,42717,1126],{"class":283},[277,42719,42720],{"class":279,"line":371},[277,42721,542],{"class":283},[277,42723,42724],{"class":279,"line":381},[277,42725,394],{"class":283},[277,42727,42728,42730,42732],{"class":279,"line":391},[277,42729,785],{"class":283},[277,42731,288],{"class":287},[277,42733,305],{"class":283},[277,42735,42736],{"class":279,"line":397},[277,42737,328],{"emptyLinePlaceholder":327},[277,42739,42740,42742,42744],{"class":279,"line":402},[277,42741,284],{"class":283},[277,42743,802],{"class":287},[277,42745,305],{"class":283},[277,42747,42749,42751,42753,42755,42757,42759,42761,42763],{"class":42748,"line":436},[279,9398],[277,42750,810],{"class":283},[277,42752,21],{"class":287},[277,42754,41193],{"class":291},[277,42756,298],{"class":283},[277,42758,42657],{"class":301},[277,42760,42660],{"class":283},[277,42762,21],{"class":287},[277,42764,305],{"class":283},[277,42766,42767,42769,42771],{"class":279,"line":456},[277,42768,785],{"class":283},[277,42770,802],{"class":287},[277,42772,305],{"class":283},[30,42774,42775],{"id":24880},[16,42776,24880],{},[21,42778,42779],{},"Permite renderizar listas a partir de arreglos u objetos reactivos.",[21,42781,42782],{},"Clave mental:",[3111,42784,42785],{},[21,42786,42787,42789,42790,42793],{},[16,42788,24880],{}," describe ",[72,42791,42792],{},"estructura",", no lógica.",[267,42795,42798],{"className":269,"code":42796,"filename":271,"highlights":42797,"language":272,"meta":273,"style":273},"\u003Cscript setup>\nimport { ref } from 'vue'\n  \nconst items = ref([\n  { id: 1, name: 'Vue' },\n  { id: 2, name: 'React' }\n])\n\u003C/script>\n\n\u003Ctemplate>\n  \u003Cli v-for=\"item in items\" :key=\"item.id\">\n    {{ item.name }}\n  \u003C/li>\n\u003C/template>\n",[402,436,456],[16,42799,42800,42810,42820,42824,42836,42848,42860,42864,42872,42876,42884,42906,42912,42921],{"__ignoreMap":273},[277,42801,42802,42804,42806,42808],{"class":279,"line":280},[277,42803,284],{"class":283},[277,42805,288],{"class":287},[277,42807,292],{"class":291},[277,42809,305],{"class":283},[277,42811,42812,42814,42816,42818],{"class":279,"line":308},[277,42813,312],{"class":311},[277,42815,11006],{"class":283},[277,42817,318],{"class":311},[277,42819,321],{"class":301},[277,42821,42822],{"class":279,"line":324},[277,42823,42606],{"class":283},[277,42825,42826,42828,42830,42832,42834],{"class":279,"line":331},[277,42827,405],{"class":311},[277,42829,38354],{"class":356},[277,42831,340],{"class":311},[277,42833,413],{"class":291},[277,42835,2104],{"class":283},[277,42837,42838,42840,42842,42844,42846],{"class":279,"line":346},[277,42839,2109],{"class":283},[277,42841,2072],{"class":356},[277,42843,22620],{"class":283},[277,42845,37149],{"class":301},[277,42847,2132],{"class":283},[277,42849,42850,42852,42854,42856,42858],{"class":279,"line":360},[277,42851,2109],{"class":283},[277,42853,2139],{"class":356},[277,42855,22620],{"class":283},[277,42857,37154],{"class":301},[277,42859,2179],{"class":283},[277,42861,42862],{"class":279,"line":371},[277,42863,2184],{"class":283},[277,42865,42866,42868,42870],{"class":279,"line":381},[277,42867,785],{"class":283},[277,42869,288],{"class":287},[277,42871,305],{"class":283},[277,42873,42874],{"class":279,"line":391},[277,42875,328],{"emptyLinePlaceholder":327},[277,42877,42878,42880,42882],{"class":279,"line":397},[277,42879,284],{"class":283},[277,42881,802],{"class":287},[277,42883,305],{"class":283},[277,42885,42887,42889,42891,42893,42895,42898,42900,42902,42904],{"class":42886,"line":402},[279,9398],[277,42888,810],{"class":283},[277,42890,41],{"class":287},[277,42892,12785],{"class":291},[277,42894,298],{"class":283},[277,42896,42897],{"class":301},"\"item in items\"",[277,42899,4317],{"class":291},[277,42901,298],{"class":283},[277,42903,30034],{"class":301},[277,42905,305],{"class":283},[277,42907,42909],{"class":42908,"line":436},[279,9398],[277,42910,42911],{"class":283},"    {{ item.name }}\n",[277,42913,42915,42917,42919],{"class":42914,"line":456},[279,9398],[277,42916,954],{"class":283},[277,42918,41],{"class":287},[277,42920,305],{"class":283},[277,42922,42923,42925,42927],{"class":279,"line":461},[277,42924,785],{"class":283},[277,42926,802],{"class":287},[277,42928,305],{"class":283},[267,42930,42933],{"className":269,"code":42931,"filename":971,"highlights":42932,"language":272,"meta":273,"style":273},"\u003Cscript>\nexport default {\n  data() {\n    return {\n      items: [\n        { id: 1, name: 'Vue' },\n        { id: 2, name: 'React' }\n      ]\n    }\n  }\n}\n\u003C/script>\n\n\u003Ctemplate>\n  \u003Cli v-for=\"item in items\" :key=\"item.id\">\n    {{ item.name }}\n  \u003C/li>\n\u003C/template>\n",[476,500,505],[16,42934,42935,42943,42951,42957,42963,42967,42979,42991,42995,42999,43003,43007,43015,43019,43027,43048,43053,43062],{"__ignoreMap":273},[277,42936,42937,42939,42941],{"class":279,"line":280},[277,42938,284],{"class":283},[277,42940,288],{"class":287},[277,42942,305],{"class":283},[277,42944,42945,42947,42949],{"class":279,"line":308},[277,42946,1057],{"class":311},[277,42948,1060],{"class":311},[277,42950,343],{"class":283},[277,42952,42953,42955],{"class":279,"line":324},[277,42954,1086],{"class":291},[277,42956,473],{"class":283},[277,42958,42959,42961],{"class":279,"line":331},[277,42960,1093],{"class":311},[277,42962,343],{"class":283},[277,42964,42965],{"class":279,"line":346},[277,42966,38549],{"class":283},[277,42968,42969,42971,42973,42975,42977],{"class":279,"line":360},[277,42970,2664],{"class":283},[277,42972,2072],{"class":356},[277,42974,22620],{"class":283},[277,42976,37149],{"class":301},[277,42978,2132],{"class":283},[277,42980,42981,42983,42985,42987,42989],{"class":279,"line":371},[277,42982,2664],{"class":283},[277,42984,2139],{"class":356},[277,42986,22620],{"class":283},[277,42988,37154],{"class":301},[277,42990,2179],{"class":283},[277,42992,42993],{"class":279,"line":381},[277,42994,2725],{"class":283},[277,42996,42997],{"class":279,"line":391},[277,42998,1126],{"class":283},[277,43000,43001],{"class":279,"line":397},[277,43002,542],{"class":283},[277,43004,43005],{"class":279,"line":402},[277,43006,394],{"class":283},[277,43008,43009,43011,43013],{"class":279,"line":436},[277,43010,785],{"class":283},[277,43012,288],{"class":287},[277,43014,305],{"class":283},[277,43016,43017],{"class":279,"line":456},[277,43018,328],{"emptyLinePlaceholder":327},[277,43020,43021,43023,43025],{"class":279,"line":461},[277,43022,284],{"class":283},[277,43024,802],{"class":287},[277,43026,305],{"class":283},[277,43028,43030,43032,43034,43036,43038,43040,43042,43044,43046],{"class":43029,"line":476},[279,9398],[277,43031,810],{"class":283},[277,43033,41],{"class":287},[277,43035,12785],{"class":291},[277,43037,298],{"class":283},[277,43039,42897],{"class":301},[277,43041,4317],{"class":291},[277,43043,298],{"class":283},[277,43045,30034],{"class":301},[277,43047,305],{"class":283},[277,43049,43051],{"class":43050,"line":500},[279,9398],[277,43052,42911],{"class":283},[277,43054,43056,43058,43060],{"class":43055,"line":505},[279,9398],[277,43057,954],{"class":283},[277,43059,41],{"class":287},[277,43061,305],{"class":283},[277,43063,43064,43066,43068],{"class":279,"line":520},[277,43065,785],{"class":283},[277,43067,802],{"class":287},[277,43069,305],{"class":283},[21,43071,43072,10969,43074,43077],{},[16,43073,1789],{},[72,43075,43076],{},"no es opcional",". Nunca lo fue.\nEs esencial para que Vue pueda optimizar correctamente el renderizado.",[30,43079,43080],{"id":17974},[16,43081,17974],{},[21,43083,43084],{},"Vincula dinámicamente atributos HTML o props de componentes.",[21,43086,7830,43087,43089],{},[16,43088,17974],{}," como:",[3111,43091,43092],{},[21,43093,43094],{},"“Este atributo depende del estado”",[267,43096,43099],{"className":269,"code":43097,"filename":271,"highlights":43098,"language":272,"meta":273,"style":273},"\u003Cscript setup>\nimport { ref } from 'vue'\n\nconst imageUrl = ref('https://example.com/image.jpg')\n\u003C/script>\n\n\u003Ctemplate>\n  \u003Cimg v-bind:src=\"imageUrl\" alt=\"Imagen dinámica\" />\n\u003C/template>\n",[381],[16,43100,43101,43111,43121,43125,43143,43151,43155,43163,43188],{"__ignoreMap":273},[277,43102,43103,43105,43107,43109],{"class":279,"line":280},[277,43104,284],{"class":283},[277,43106,288],{"class":287},[277,43108,292],{"class":291},[277,43110,305],{"class":283},[277,43112,43113,43115,43117,43119],{"class":279,"line":308},[277,43114,312],{"class":311},[277,43116,11006],{"class":283},[277,43118,318],{"class":311},[277,43120,321],{"class":301},[277,43122,43123],{"class":279,"line":324},[277,43124,328],{"emptyLinePlaceholder":327},[277,43126,43127,43129,43132,43134,43136,43138,43141],{"class":279,"line":331},[277,43128,405],{"class":311},[277,43130,43131],{"class":356}," imageUrl",[277,43133,340],{"class":311},[277,43135,413],{"class":291},[277,43137,448],{"class":283},[277,43139,43140],{"class":301},"'https://example.com/image.jpg'",[277,43142,433],{"class":283},[277,43144,43145,43147,43149],{"class":279,"line":346},[277,43146,785],{"class":283},[277,43148,288],{"class":287},[277,43150,305],{"class":283},[277,43152,43153],{"class":279,"line":360},[277,43154,328],{"emptyLinePlaceholder":327},[277,43156,43157,43159,43161],{"class":279,"line":371},[277,43158,284],{"class":283},[277,43160,802],{"class":287},[277,43162,305],{"class":283},[277,43164,43166,43168,43170,43173,43175,43178,43181,43183,43186],{"class":43165,"line":381},[279,9398],[277,43167,810],{"class":283},[277,43169,34220],{"class":287},[277,43171,43172],{"class":291}," v-bind:src",[277,43174,298],{"class":283},[277,43176,43177],{"class":301},"\"imageUrl\"",[277,43179,43180],{"class":291}," alt",[277,43182,298],{"class":283},[277,43184,43185],{"class":301},"\"Imagen dinámica\"",[277,43187,4325],{"class":283},[277,43189,43190,43192,43194],{"class":279,"line":391},[277,43191,785],{"class":283},[277,43193,802],{"class":287},[277,43195,305],{"class":283},[267,43197,43200],{"className":269,"code":43198,"filename":971,"highlights":43199,"language":272,"meta":273,"style":273},"\u003Cscript>\nexport default {\n  data() {\n    return {\n      imageUrl: '/logo.png',\n      description: 'Logo'\n    }\n  }\n}\n\u003C/script>\n\n\u003Ctemplate>\n  \u003Cimg :src=\"imageUrl\" :alt=\"description\" />\n\u003C/template>\n",[456],[16,43201,43202,43210,43218,43224,43230,43240,43248,43252,43256,43260,43268,43272,43280,43304],{"__ignoreMap":273},[277,43203,43204,43206,43208],{"class":279,"line":280},[277,43205,284],{"class":283},[277,43207,288],{"class":287},[277,43209,305],{"class":283},[277,43211,43212,43214,43216],{"class":279,"line":308},[277,43213,1057],{"class":311},[277,43215,1060],{"class":311},[277,43217,343],{"class":283},[277,43219,43220,43222],{"class":279,"line":324},[277,43221,1086],{"class":291},[277,43223,473],{"class":283},[277,43225,43226,43228],{"class":279,"line":331},[277,43227,1093],{"class":311},[277,43229,343],{"class":283},[277,43231,43232,43235,43238],{"class":279,"line":346},[277,43233,43234],{"class":283},"      imageUrl: ",[277,43236,43237],{"class":301},"'/logo.png'",[277,43239,1077],{"class":283},[277,43241,43242,43245],{"class":279,"line":360},[277,43243,43244],{"class":283},"      description: ",[277,43246,43247],{"class":301},"'Logo'\n",[277,43249,43250],{"class":279,"line":371},[277,43251,1126],{"class":283},[277,43253,43254],{"class":279,"line":381},[277,43255,542],{"class":283},[277,43257,43258],{"class":279,"line":391},[277,43259,394],{"class":283},[277,43261,43262,43264,43266],{"class":279,"line":397},[277,43263,785],{"class":283},[277,43265,288],{"class":287},[277,43267,305],{"class":283},[277,43269,43270],{"class":279,"line":402},[277,43271,328],{"emptyLinePlaceholder":327},[277,43273,43274,43276,43278],{"class":279,"line":436},[277,43275,284],{"class":283},[277,43277,802],{"class":287},[277,43279,305],{"class":283},[277,43281,43283,43285,43287,43290,43292,43294,43297,43299,43302],{"class":43282,"line":456},[279,9398],[277,43284,810],{"class":283},[277,43286,34220],{"class":287},[277,43288,43289],{"class":291}," :src",[277,43291,298],{"class":283},[277,43293,43177],{"class":301},[277,43295,43296],{"class":291}," :alt",[277,43298,298],{"class":283},[277,43300,43301],{"class":301},"\"description\"",[277,43303,4325],{"class":283},[277,43305,43306,43308,43310],{"class":279,"line":461},[277,43307,785],{"class":283},[277,43309,802],{"class":287},[277,43311,305],{"class":283},[30,43313,43314],{"id":17971},[16,43315,17971],{},[21,43317,43318,43319,43322],{},"Crea una ",[72,43320,43321],{},"sincronización bidireccional"," entre el estado y un input o componente.",[21,43324,43325],{},"Es ideal para:",[38,43327,43328,43330,43333],{},[41,43329,30948],{},[41,43331,43332],{},"Inputs controlados",[41,43334,43335],{},"Componentes reutilizables",[267,43337,43340],{"className":269,"code":43338,"filename":271,"highlights":43339,"language":272,"meta":273,"style":273},"\u003Cscript setup>\nimport { ref } from 'vue'\n\nconst username = ref('')\n\u003C/script>\n\n\u003Ctemplate>\n  \u003Cinput v-model=\"username\" placeholder=\"Ingresa tu nombre de usuario\" />\n  \u003Cp>Hola, {{ username }}!\u003C/p>\n\u003C/template>\n",[381],[16,43341,43342,43352,43362,43366,43383,43391,43395,43403,43426,43439],{"__ignoreMap":273},[277,43343,43344,43346,43348,43350],{"class":279,"line":280},[277,43345,284],{"class":283},[277,43347,288],{"class":287},[277,43349,292],{"class":291},[277,43351,305],{"class":283},[277,43353,43354,43356,43358,43360],{"class":279,"line":308},[277,43355,312],{"class":311},[277,43357,11006],{"class":283},[277,43359,318],{"class":311},[277,43361,321],{"class":301},[277,43363,43364],{"class":279,"line":324},[277,43365,328],{"emptyLinePlaceholder":327},[277,43367,43368,43370,43373,43375,43377,43379,43381],{"class":279,"line":331},[277,43369,405],{"class":311},[277,43371,43372],{"class":356}," username",[277,43374,340],{"class":311},[277,43376,413],{"class":291},[277,43378,448],{"class":283},[277,43380,451],{"class":301},[277,43382,433],{"class":283},[277,43384,43385,43387,43389],{"class":279,"line":346},[277,43386,785],{"class":283},[277,43388,288],{"class":287},[277,43390,305],{"class":283},[277,43392,43393],{"class":279,"line":360},[277,43394,328],{"emptyLinePlaceholder":327},[277,43396,43397,43399,43401],{"class":279,"line":371},[277,43398,284],{"class":283},[277,43400,802],{"class":287},[277,43402,305],{"class":283},[277,43404,43406,43408,43410,43412,43414,43417,43419,43421,43424],{"class":43405,"line":381},[279,9398],[277,43407,810],{"class":283},[277,43409,18041],{"class":287},[277,43411,23751],{"class":291},[277,43413,298],{"class":283},[277,43415,43416],{"class":301},"\"username\"",[277,43418,31920],{"class":291},[277,43420,298],{"class":283},[277,43422,43423],{"class":301},"\"Ingresa tu nombre de usuario\"",[277,43425,4325],{"class":283},[277,43427,43428,43430,43432,43435,43437],{"class":279,"line":391},[277,43429,810],{"class":283},[277,43431,21],{"class":287},[277,43433,43434],{"class":283},">Hola, {{ username }}!\u003C/",[277,43436,21],{"class":287},[277,43438,305],{"class":283},[277,43440,43441,43443,43445],{"class":279,"line":397},[277,43442,785],{"class":283},[277,43444,802],{"class":287},[277,43446,305],{"class":283},[267,43448,43451],{"className":269,"code":43449,"filename":971,"highlights":43450,"language":272,"meta":273,"style":273},"\u003Cscript>\nexport default {\n  data() {\n    return {\n      username: ''\n    }\n  }\n}\n\u003C/script>\n\n\u003Ctemplate>\n  \u003Cinput v-model=\"username\" placeholder=\"Ingresa tu nombre de usuario\" />\n  \u003Cp>Hola, {{ username }}!\u003C/p>\n\u003C/template>\n",[436],[16,43452,43453,43461,43469,43475,43481,43488,43492,43496,43500,43508,43512,43520,43541,43553],{"__ignoreMap":273},[277,43454,43455,43457,43459],{"class":279,"line":280},[277,43456,284],{"class":283},[277,43458,288],{"class":287},[277,43460,305],{"class":283},[277,43462,43463,43465,43467],{"class":279,"line":308},[277,43464,1057],{"class":311},[277,43466,1060],{"class":311},[277,43468,343],{"class":283},[277,43470,43471,43473],{"class":279,"line":324},[277,43472,1086],{"class":291},[277,43474,473],{"class":283},[277,43476,43477,43479],{"class":279,"line":331},[277,43478,1093],{"class":311},[277,43480,343],{"class":283},[277,43482,43483,43486],{"class":279,"line":346},[277,43484,43485],{"class":283},"      username: ",[277,43487,1121],{"class":301},[277,43489,43490],{"class":279,"line":360},[277,43491,1126],{"class":283},[277,43493,43494],{"class":279,"line":371},[277,43495,542],{"class":283},[277,43497,43498],{"class":279,"line":381},[277,43499,394],{"class":283},[277,43501,43502,43504,43506],{"class":279,"line":391},[277,43503,785],{"class":283},[277,43505,288],{"class":287},[277,43507,305],{"class":283},[277,43509,43510],{"class":279,"line":397},[277,43511,328],{"emptyLinePlaceholder":327},[277,43513,43514,43516,43518],{"class":279,"line":402},[277,43515,284],{"class":283},[277,43517,802],{"class":287},[277,43519,305],{"class":283},[277,43521,43523,43525,43527,43529,43531,43533,43535,43537,43539],{"class":43522,"line":436},[279,9398],[277,43524,810],{"class":283},[277,43526,18041],{"class":287},[277,43528,23751],{"class":291},[277,43530,298],{"class":283},[277,43532,43416],{"class":301},[277,43534,31920],{"class":291},[277,43536,298],{"class":283},[277,43538,43423],{"class":301},[277,43540,4325],{"class":283},[277,43542,43543,43545,43547,43549,43551],{"class":279,"line":456},[277,43544,810],{"class":283},[277,43546,21],{"class":287},[277,43548,43434],{"class":283},[277,43550,21],{"class":287},[277,43552,305],{"class":283},[277,43554,43555,43557,43559],{"class":279,"line":461},[277,43556,785],{"class":283},[277,43558,802],{"class":287},[277,43560,305],{"class":283},[21,43562,43563,43564,28155,43566,43568],{},"Internamente, combina props y eventos (",[16,43565,28231],{},[16,43567,28237],{},").\nNo es magia, pero se le parece bastante.",[30,43570,43571],{"id":17977},[16,43572,17977],{},[21,43574,43575],{},"Escucha eventos del DOM y ejecuta lógica reactiva.",[267,43577,43580],{"className":269,"code":43578,"filename":271,"highlights":43579,"language":272,"meta":273,"style":273},"\u003Cscript setup>\nimport { ref } from 'vue'\n\nconst count = ref(0)\nconst increment = () => {\n  count.value++\n}\n\u003C/script>\n\n\u003Ctemplate>\n  \u003Cbutton v-on:click=\"increment\">Has hecho clic {{ count }} veces\u003C/button>\n\u003C/template>\n",[402],[16,43581,43582,43592,43602,43606,43622,43637,43643,43647,43655,43659,43667,43689],{"__ignoreMap":273},[277,43583,43584,43586,43588,43590],{"class":279,"line":280},[277,43585,284],{"class":283},[277,43587,288],{"class":287},[277,43589,292],{"class":291},[277,43591,305],{"class":283},[277,43593,43594,43596,43598,43600],{"class":279,"line":308},[277,43595,312],{"class":311},[277,43597,11006],{"class":283},[277,43599,318],{"class":311},[277,43601,321],{"class":301},[277,43603,43604],{"class":279,"line":324},[277,43605,328],{"emptyLinePlaceholder":327},[277,43607,43608,43610,43612,43614,43616,43618,43620],{"class":279,"line":331},[277,43609,405],{"class":311},[277,43611,9380],{"class":356},[277,43613,340],{"class":311},[277,43615,413],{"class":291},[277,43617,448],{"class":283},[277,43619,3542],{"class":356},[277,43621,433],{"class":283},[277,43623,43624,43626,43629,43631,43633,43635],{"class":279,"line":346},[277,43625,405],{"class":311},[277,43627,43628],{"class":291}," increment",[277,43630,340],{"class":311},[277,43632,598],{"class":283},[277,43634,601],{"class":311},[277,43636,343],{"class":283},[277,43638,43639,43641],{"class":279,"line":360},[277,43640,9412],{"class":283},[277,43642,9415],{"class":311},[277,43644,43645],{"class":279,"line":371},[277,43646,394],{"class":283},[277,43648,43649,43651,43653],{"class":279,"line":381},[277,43650,785],{"class":283},[277,43652,288],{"class":287},[277,43654,305],{"class":283},[277,43656,43657],{"class":279,"line":391},[277,43658,328],{"emptyLinePlaceholder":327},[277,43660,43661,43663,43665],{"class":279,"line":397},[277,43662,284],{"class":283},[277,43664,802],{"class":287},[277,43666,305],{"class":283},[277,43668,43670,43672,43674,43677,43679,43682,43685,43687],{"class":43669,"line":402},[279,9398],[277,43671,810],{"class":283},[277,43673,4267],{"class":287},[277,43675,43676],{"class":291}," v-on:click",[277,43678,298],{"class":283},[277,43680,43681],{"class":301},"\"increment\"",[277,43683,43684],{"class":283},">Has hecho clic {{ count }} veces\u003C/",[277,43686,4267],{"class":287},[277,43688,305],{"class":283},[277,43690,43691,43693,43695],{"class":279,"line":436},[277,43692,785],{"class":283},[277,43694,802],{"class":287},[277,43696,305],{"class":283},[267,43698,43701],{"className":269,"code":43699,"filename":971,"highlights":43700,"language":272,"meta":273,"style":273},"\u003Cscript>\nexport default {\n  data() {\n    return {\n      count: 0\n    }\n  },\n  methods: {\n    increment() {\n      this.count++\n    }\n  }\n}\n\u003C/script>\n\n\u003Ctemplate>\n  \u003Cbutton v-on:click=\"increment\">Clickeame\u003C/button>\n  \u003Cp>Has clickeado {{ count }} veces.\u003C/p>\n\u003C/template>\n",[505],[16,43702,43703,43711,43719,43725,43731,43737,43741,43745,43749,43756,43765,43769,43773,43777,43785,43789,43797,43817,43830],{"__ignoreMap":273},[277,43704,43705,43707,43709],{"class":279,"line":280},[277,43706,284],{"class":283},[277,43708,288],{"class":287},[277,43710,305],{"class":283},[277,43712,43713,43715,43717],{"class":279,"line":308},[277,43714,1057],{"class":311},[277,43716,1060],{"class":311},[277,43718,343],{"class":283},[277,43720,43721,43723],{"class":279,"line":324},[277,43722,1086],{"class":291},[277,43724,473],{"class":283},[277,43726,43727,43729],{"class":279,"line":331},[277,43728,1093],{"class":311},[277,43730,343],{"class":283},[277,43732,43733,43735],{"class":279,"line":346},[277,43734,31686],{"class":283},[277,43736,4692],{"class":356},[277,43738,43739],{"class":279,"line":360},[277,43740,1126],{"class":283},[277,43742,43743],{"class":279,"line":371},[277,43744,1131],{"class":283},[277,43746,43747],{"class":279,"line":381},[277,43748,1140],{"class":283},[277,43750,43751,43754],{"class":279,"line":391},[277,43752,43753],{"class":291},"    increment",[277,43755,473],{"class":283},[277,43757,43758,43760,43763],{"class":279,"line":397},[277,43759,1212],{"class":356},[277,43761,43762],{"class":283},".count",[277,43764,9415],{"class":311},[277,43766,43767],{"class":279,"line":402},[277,43768,1126],{"class":283},[277,43770,43771],{"class":279,"line":436},[277,43772,542],{"class":283},[277,43774,43775],{"class":279,"line":456},[277,43776,394],{"class":283},[277,43778,43779,43781,43783],{"class":279,"line":461},[277,43780,785],{"class":283},[277,43782,288],{"class":287},[277,43784,305],{"class":283},[277,43786,43787],{"class":279,"line":476},[277,43788,328],{"emptyLinePlaceholder":327},[277,43790,43791,43793,43795],{"class":279,"line":500},[277,43792,284],{"class":283},[277,43794,802],{"class":287},[277,43796,305],{"class":283},[277,43798,43800,43802,43804,43806,43808,43810,43813,43815],{"class":43799,"line":505},[279,9398],[277,43801,810],{"class":283},[277,43803,4267],{"class":287},[277,43805,43676],{"class":291},[277,43807,298],{"class":283},[277,43809,43681],{"class":301},[277,43811,43812],{"class":283},">Clickeame\u003C/",[277,43814,4267],{"class":287},[277,43816,305],{"class":283},[277,43818,43819,43821,43823,43826,43828],{"class":279,"line":520},[277,43820,810],{"class":283},[277,43822,21],{"class":287},[277,43824,43825],{"class":283},">Has clickeado {{ count }} veces.\u003C/",[277,43827,21],{"class":287},[277,43829,305],{"class":283},[277,43831,43832,43834,43836],{"class":279,"line":539},[277,43833,785],{"class":283},[277,43835,802],{"class":287},[277,43837,305],{"class":283},[21,43839,43840,43841,511,43844,225,43846,225,43848,43850],{},"Soporta ",[72,43842,43843],{},"modificadores",[16,43845,31109],{},[16,43847,31106],{},[16,43849,31112],{},", etc.) que evitan código innecesario.",[30,43852,43853],{"id":24587},[16,43854,24587],{},[21,43856,43857],{},"Inserta texto plano en un elemento, reemplazando su contenido.",[267,43859,43862],{"className":269,"code":43860,"filename":271,"highlights":43861,"language":272,"meta":273,"style":273},"\u003Cscript setup>\nimport { ref } from 'vue'\n\nconst message = ref('Hola Mundo')\n\u003C/script>\n\n\u003Ctemplate>\n  \u003Cdiv v-text=\"message\">\u003C/div>\n\u003C/template>\n",[381],[16,43863,43864,43874,43884,43888,43905,43913,43917,43925,43945],{"__ignoreMap":273},[277,43865,43866,43868,43870,43872],{"class":279,"line":280},[277,43867,284],{"class":283},[277,43869,288],{"class":287},[277,43871,292],{"class":291},[277,43873,305],{"class":283},[277,43875,43876,43878,43880,43882],{"class":279,"line":308},[277,43877,312],{"class":311},[277,43879,11006],{"class":283},[277,43881,318],{"class":311},[277,43883,321],{"class":301},[277,43885,43886],{"class":279,"line":324},[277,43887,328],{"emptyLinePlaceholder":327},[277,43889,43890,43892,43894,43896,43898,43900,43903],{"class":279,"line":331},[277,43891,405],{"class":311},[277,43893,23154],{"class":356},[277,43895,340],{"class":311},[277,43897,413],{"class":291},[277,43899,448],{"class":283},[277,43901,43902],{"class":301},"'Hola Mundo'",[277,43904,433],{"class":283},[277,43906,43907,43909,43911],{"class":279,"line":346},[277,43908,785],{"class":283},[277,43910,288],{"class":287},[277,43912,305],{"class":283},[277,43914,43915],{"class":279,"line":360},[277,43916,328],{"emptyLinePlaceholder":327},[277,43918,43919,43921,43923],{"class":279,"line":371},[277,43920,284],{"class":283},[277,43922,802],{"class":287},[277,43924,305],{"class":283},[277,43926,43928,43930,43932,43934,43936,43939,43941,43943],{"class":43927,"line":381},[279,9398],[277,43929,810],{"class":283},[277,43931,4201],{"class":287},[277,43933,24678],{"class":291},[277,43935,298],{"class":283},[277,43937,43938],{"class":301},"\"message\"",[277,43940,24690],{"class":283},[277,43942,4201],{"class":287},[277,43944,305],{"class":283},[277,43946,43947,43949,43951],{"class":279,"line":391},[277,43948,785],{"class":283},[277,43950,802],{"class":287},[277,43952,305],{"class":283},[267,43954,43957],{"className":269,"code":43955,"filename":971,"highlights":43956,"language":272,"meta":273,"style":273},"\u003Cscript>\nexport default {\n  data() {\n    return {\n      message: 'Hola Vue'\n    }\n  }\n}\n\u003C/script>\n\n\u003Ctemplate>\n  \u003Cdiv v-text=\"message\">\u003C/div>\n\u003C/template>\n",[436],[16,43958,43959,43967,43975,43981,43987,43994,43998,44002,44006,44014,44018,44026,44045],{"__ignoreMap":273},[277,43960,43961,43963,43965],{"class":279,"line":280},[277,43962,284],{"class":283},[277,43964,288],{"class":287},[277,43966,305],{"class":283},[277,43968,43969,43971,43973],{"class":279,"line":308},[277,43970,1057],{"class":311},[277,43972,1060],{"class":311},[277,43974,343],{"class":283},[277,43976,43977,43979],{"class":279,"line":324},[277,43978,1086],{"class":291},[277,43980,473],{"class":283},[277,43982,43983,43985],{"class":279,"line":331},[277,43984,1093],{"class":311},[277,43986,343],{"class":283},[277,43988,43989,43991],{"class":279,"line":346},[277,43990,23268],{"class":283},[277,43992,43993],{"class":301},"'Hola Vue'\n",[277,43995,43996],{"class":279,"line":360},[277,43997,1126],{"class":283},[277,43999,44000],{"class":279,"line":371},[277,44001,542],{"class":283},[277,44003,44004],{"class":279,"line":381},[277,44005,394],{"class":283},[277,44007,44008,44010,44012],{"class":279,"line":391},[277,44009,785],{"class":283},[277,44011,288],{"class":287},[277,44013,305],{"class":283},[277,44015,44016],{"class":279,"line":397},[277,44017,328],{"emptyLinePlaceholder":327},[277,44019,44020,44022,44024],{"class":279,"line":402},[277,44021,284],{"class":283},[277,44023,802],{"class":287},[277,44025,305],{"class":283},[277,44027,44029,44031,44033,44035,44037,44039,44041,44043],{"class":44028,"line":436},[279,9398],[277,44030,810],{"class":283},[277,44032,4201],{"class":287},[277,44034,24678],{"class":291},[277,44036,298],{"class":283},[277,44038,43938],{"class":301},[277,44040,24690],{"class":283},[277,44042,4201],{"class":287},[277,44044,305],{"class":283},[277,44046,44047,44049,44051],{"class":279,"line":456},[277,44048,785],{"class":283},[277,44050,802],{"class":287},[277,44052,305],{"class":283},[21,44054,44055],{},"No se usa mucho, pero existe para casos muy específicos donde no quieres interpolaciones.",[30,44057,44058],{"id":24590},[16,44059,24590],{},[21,44061,44062],{},"Inserta HTML sin escapar.",[267,44064,44067],{"className":269,"code":44065,"filename":271,"highlights":44066,"language":272,"meta":273,"style":273},"\u003Cscript setup>\nimport { ref } from 'vue'\n\nconst rawHtml = ref('\u003Cstrong>Texto en negrita\u003C/strong>')\n\u003C/script>\n\n\u003Ctemplate>\n  \u003Cdiv v-html=\"rawHtml\">\u003C/div>\n\u003C/template>\n",[381],[16,44068,44069,44079,44089,44093,44111,44119,44123,44131,44151],{"__ignoreMap":273},[277,44070,44071,44073,44075,44077],{"class":279,"line":280},[277,44072,284],{"class":283},[277,44074,288],{"class":287},[277,44076,292],{"class":291},[277,44078,305],{"class":283},[277,44080,44081,44083,44085,44087],{"class":279,"line":308},[277,44082,312],{"class":311},[277,44084,11006],{"class":283},[277,44086,318],{"class":311},[277,44088,321],{"class":301},[277,44090,44091],{"class":279,"line":324},[277,44092,328],{"emptyLinePlaceholder":327},[277,44094,44095,44097,44100,44102,44104,44106,44109],{"class":279,"line":331},[277,44096,405],{"class":311},[277,44098,44099],{"class":356}," rawHtml",[277,44101,340],{"class":311},[277,44103,413],{"class":291},[277,44105,448],{"class":283},[277,44107,44108],{"class":301},"'\u003Cstrong>Texto en negrita\u003C/strong>'",[277,44110,433],{"class":283},[277,44112,44113,44115,44117],{"class":279,"line":346},[277,44114,785],{"class":283},[277,44116,288],{"class":287},[277,44118,305],{"class":283},[277,44120,44121],{"class":279,"line":360},[277,44122,328],{"emptyLinePlaceholder":327},[277,44124,44125,44127,44129],{"class":279,"line":371},[277,44126,284],{"class":283},[277,44128,802],{"class":287},[277,44130,305],{"class":283},[277,44132,44134,44136,44138,44140,44142,44145,44147,44149],{"class":44133,"line":381},[279,9398],[277,44135,810],{"class":283},[277,44137,4201],{"class":287},[277,44139,24748],{"class":291},[277,44141,298],{"class":283},[277,44143,44144],{"class":301},"\"rawHtml\"",[277,44146,24690],{"class":283},[277,44148,4201],{"class":287},[277,44150,305],{"class":283},[277,44152,44153,44155,44157],{"class":279,"line":391},[277,44154,785],{"class":283},[277,44156,802],{"class":287},[277,44158,305],{"class":283},[267,44160,44163],{"className":269,"code":44161,"filename":971,"highlights":44162,"language":272,"meta":273,"style":273},"\u003Cscript>\nexport default {\n  data() {\n    return {\n      rawHtml: '\u003Cstrong>HTML dinámico\u003C/strong>'\n    }\n  }\n}\n\u003C/script>\n\n\u003Ctemplate>\n  \u003Cdiv v-html=\"rawHtml\">\u003C/div>\n\u003C/template>\n",[436],[16,44164,44165,44173,44181,44187,44193,44201,44205,44209,44213,44221,44225,44233,44252],{"__ignoreMap":273},[277,44166,44167,44169,44171],{"class":279,"line":280},[277,44168,284],{"class":283},[277,44170,288],{"class":287},[277,44172,305],{"class":283},[277,44174,44175,44177,44179],{"class":279,"line":308},[277,44176,1057],{"class":311},[277,44178,1060],{"class":311},[277,44180,343],{"class":283},[277,44182,44183,44185],{"class":279,"line":324},[277,44184,1086],{"class":291},[277,44186,473],{"class":283},[277,44188,44189,44191],{"class":279,"line":331},[277,44190,1093],{"class":311},[277,44192,343],{"class":283},[277,44194,44195,44198],{"class":279,"line":346},[277,44196,44197],{"class":283},"      rawHtml: ",[277,44199,44200],{"class":301},"'\u003Cstrong>HTML dinámico\u003C/strong>'\n",[277,44202,44203],{"class":279,"line":360},[277,44204,1126],{"class":283},[277,44206,44207],{"class":279,"line":371},[277,44208,542],{"class":283},[277,44210,44211],{"class":279,"line":381},[277,44212,394],{"class":283},[277,44214,44215,44217,44219],{"class":279,"line":391},[277,44216,785],{"class":283},[277,44218,288],{"class":287},[277,44220,305],{"class":283},[277,44222,44223],{"class":279,"line":397},[277,44224,328],{"emptyLinePlaceholder":327},[277,44226,44227,44229,44231],{"class":279,"line":402},[277,44228,284],{"class":283},[277,44230,802],{"class":287},[277,44232,305],{"class":283},[277,44234,44236,44238,44240,44242,44244,44246,44248,44250],{"class":44235,"line":436},[279,9398],[277,44237,810],{"class":283},[277,44239,4201],{"class":287},[277,44241,24748],{"class":291},[277,44243,298],{"class":283},[277,44245,44144],{"class":301},[277,44247,24690],{"class":283},[277,44249,4201],{"class":287},[277,44251,305],{"class":283},[277,44253,44254,44256,44258],{"class":279,"line":456},[277,44255,785],{"class":283},[277,44257,802],{"class":287},[277,44259,305],{"class":283},[3111,44261,44262],{},[21,44263,44264,44265,44268],{},"⚠️ ",[72,44266,44267],{},"Nunca lo uses con contenido no confiable",".\nEs una puerta directa a XSS si no sabes exactamente lo que estás renderizando.",[30,44270,44271],{"id":25869},[16,44272,25869],{},[21,44274,44275],{},"Permite definir contenido dinámico dentro de componentes mediante slots.",[267,44277,44280],{"className":269,"code":44278,"filename":271,"highlights":44279,"language":272,"meta":273,"style":273},"\u003Cscript setup>\n\u003C/script>\n\n\u003Ctemplate>\n  \u003CMyCard>\n    \u003Ctemplate v-slot:header>\n      \u003Ch1>Encabezado Personalizado\u003C/h1>\n    \u003C/template>\n    \u003Cp>Contenido del cuerpo de la tarjeta.\u003C/p>\n    \u003Ctemplate v-slot:footer>\n      \u003Cbutton>Acción\u003C/button>\n    \u003C/template>\n  \u003C/MyCard>\n\u003C/template>\n",[360,397],[16,44281,44282,44292,44300,44304,44312,44321,44336,44349,44357,44370,44385,44398,44406,44414],{"__ignoreMap":273},[277,44283,44284,44286,44288,44290],{"class":279,"line":280},[277,44285,284],{"class":283},[277,44287,288],{"class":287},[277,44289,292],{"class":291},[277,44291,305],{"class":283},[277,44293,44294,44296,44298],{"class":279,"line":308},[277,44295,785],{"class":283},[277,44297,288],{"class":287},[277,44299,305],{"class":283},[277,44301,44302],{"class":279,"line":324},[277,44303,328],{"emptyLinePlaceholder":327},[277,44305,44306,44308,44310],{"class":279,"line":331},[277,44307,284],{"class":283},[277,44309,802],{"class":287},[277,44311,305],{"class":283},[277,44313,44314,44316,44319],{"class":279,"line":346},[277,44315,810],{"class":283},[277,44317,44318],{"class":287},"MyCard",[277,44320,305],{"class":283},[277,44322,44324,44326,44328,44330,44332,44334],{"class":44323,"line":360},[279,9398],[277,44325,829],{"class":283},[277,44327,802],{"class":287},[277,44329,26191],{"class":291},[277,44331,353],{"class":283},[277,44333,4138],{"class":291},[277,44335,305],{"class":283},[277,44337,44338,44340,44342,44345,44347],{"class":279,"line":371},[277,44339,879],{"class":283},[277,44341,11],{"class":287},[277,44343,44344],{"class":283},">Encabezado Personalizado\u003C/",[277,44346,11],{"class":287},[277,44348,305],{"class":283},[277,44350,44351,44353,44355],{"class":279,"line":381},[277,44352,922],{"class":283},[277,44354,802],{"class":287},[277,44356,305],{"class":283},[277,44358,44359,44361,44363,44366,44368],{"class":279,"line":391},[277,44360,829],{"class":283},[277,44362,21],{"class":287},[277,44364,44365],{"class":283},">Contenido del cuerpo de la tarjeta.\u003C/",[277,44367,21],{"class":287},[277,44369,305],{"class":283},[277,44371,44373,44375,44377,44379,44381,44383],{"class":44372,"line":397},[279,9398],[277,44374,829],{"class":283},[277,44376,802],{"class":287},[277,44378,26191],{"class":291},[277,44380,353],{"class":283},[277,44382,26581],{"class":291},[277,44384,305],{"class":283},[277,44386,44387,44389,44391,44394,44396],{"class":279,"line":402},[277,44388,879],{"class":283},[277,44390,4267],{"class":287},[277,44392,44393],{"class":283},">Acción\u003C/",[277,44395,4267],{"class":287},[277,44397,305],{"class":283},[277,44399,44400,44402,44404],{"class":279,"line":436},[277,44401,922],{"class":283},[277,44403,802],{"class":287},[277,44405,305],{"class":283},[277,44407,44408,44410,44412],{"class":279,"line":456},[277,44409,954],{"class":283},[277,44411,44318],{"class":287},[277,44413,305],{"class":283},[277,44415,44416,44418,44420],{"class":279,"line":461},[277,44417,785],{"class":283},[277,44419,802],{"class":287},[277,44421,305],{"class":283},[267,44423,44426],{"className":269,"code":44424,"filename":971,"highlights":44425,"language":272,"meta":273,"style":273},"\u003Cscript>\nexport default {\n  components: { MyCard }\n}\n\u003C/script>\n\n\u003Ctemplate>\n  \u003CMyCard>\n    \u003Ctemplate v-slot:header>\n      \u003Ch1>Encabezado Personalizado\u003C/h1>\n    \u003C/template>\n    \u003Cp>Contenido del cuerpo de la tarjeta.\u003C/p>\n    \u003Ctemplate v-slot:footer>\n      \u003Cbutton>Acción\u003C/button>\n    \u003C/template>\n  \u003C/MyCard>\n\u003C/template>\n",[391,456],[16,44427,44428,44436,44444,44449,44453,44461,44465,44473,44481,44496,44508,44516,44528,44543,44555,44563,44571],{"__ignoreMap":273},[277,44429,44430,44432,44434],{"class":279,"line":280},[277,44431,284],{"class":283},[277,44433,288],{"class":287},[277,44435,305],{"class":283},[277,44437,44438,44440,44442],{"class":279,"line":308},[277,44439,1057],{"class":311},[277,44441,1060],{"class":311},[277,44443,343],{"class":283},[277,44445,44446],{"class":279,"line":324},[277,44447,44448],{"class":283},"  components: { MyCard }\n",[277,44450,44451],{"class":279,"line":331},[277,44452,394],{"class":283},[277,44454,44455,44457,44459],{"class":279,"line":346},[277,44456,785],{"class":283},[277,44458,288],{"class":287},[277,44460,305],{"class":283},[277,44462,44463],{"class":279,"line":360},[277,44464,328],{"emptyLinePlaceholder":327},[277,44466,44467,44469,44471],{"class":279,"line":371},[277,44468,284],{"class":283},[277,44470,802],{"class":287},[277,44472,305],{"class":283},[277,44474,44475,44477,44479],{"class":279,"line":381},[277,44476,810],{"class":283},[277,44478,44318],{"class":287},[277,44480,305],{"class":283},[277,44482,44484,44486,44488,44490,44492,44494],{"class":44483,"line":391},[279,9398],[277,44485,829],{"class":283},[277,44487,802],{"class":287},[277,44489,26191],{"class":291},[277,44491,353],{"class":283},[277,44493,4138],{"class":291},[277,44495,305],{"class":283},[277,44497,44498,44500,44502,44504,44506],{"class":279,"line":397},[277,44499,879],{"class":283},[277,44501,11],{"class":287},[277,44503,44344],{"class":283},[277,44505,11],{"class":287},[277,44507,305],{"class":283},[277,44509,44510,44512,44514],{"class":279,"line":402},[277,44511,922],{"class":283},[277,44513,802],{"class":287},[277,44515,305],{"class":283},[277,44517,44518,44520,44522,44524,44526],{"class":279,"line":436},[277,44519,829],{"class":283},[277,44521,21],{"class":287},[277,44523,44365],{"class":283},[277,44525,21],{"class":287},[277,44527,305],{"class":283},[277,44529,44531,44533,44535,44537,44539,44541],{"class":44530,"line":456},[279,9398],[277,44532,829],{"class":283},[277,44534,802],{"class":287},[277,44536,26191],{"class":291},[277,44538,353],{"class":283},[277,44540,26581],{"class":291},[277,44542,305],{"class":283},[277,44544,44545,44547,44549,44551,44553],{"class":279,"line":461},[277,44546,879],{"class":283},[277,44548,4267],{"class":287},[277,44550,44393],{"class":283},[277,44552,4267],{"class":287},[277,44554,305],{"class":283},[277,44556,44557,44559,44561],{"class":279,"line":476},[277,44558,922],{"class":283},[277,44560,802],{"class":287},[277,44562,305],{"class":283},[277,44564,44565,44567,44569],{"class":279,"line":500},[277,44566,954],{"class":283},[277,44568,44318],{"class":287},[277,44570,305],{"class":283},[277,44572,44573,44575,44577],{"class":279,"line":505},[277,44574,785],{"class":283},[277,44576,802],{"class":287},[277,44578,305],{"class":283},[21,44580,44581,44582,104],{},"Es clave para crear componentes ",[72,44583,44584],{},"flexibles, composables y reutilizables",[30,44586,44587],{"id":21906},[16,44588,21906],{},[21,44590,44591,44592,44595],{},"Renderiza el contenido ",[72,44593,44594],{},"una sola vez"," y lo excluye del sistema reactivo.",[267,44597,44600],{"className":269,"code":44598,"filename":271,"highlights":44599,"language":272,"meta":273,"style":273},"\u003Cscript setup>\nimport { ref } from 'vue'\n  \nconst count = ref(0)\n\u003C/script>\n\n\u003Ctemplate>\n  \u003Cp v-once>Este texto no cambiará: {{ count }}\u003C/p>\n  \u003Cbutton @click=\"count++\">Incrementar\u003C/button>\n\u003C/template>\n",[381],[16,44601,44602,44612,44622,44626,44642,44650,44654,44662,44678,44697],{"__ignoreMap":273},[277,44603,44604,44606,44608,44610],{"class":279,"line":280},[277,44605,284],{"class":283},[277,44607,288],{"class":287},[277,44609,292],{"class":291},[277,44611,305],{"class":283},[277,44613,44614,44616,44618,44620],{"class":279,"line":308},[277,44615,312],{"class":311},[277,44617,11006],{"class":283},[277,44619,318],{"class":311},[277,44621,321],{"class":301},[277,44623,44624],{"class":279,"line":324},[277,44625,42606],{"class":283},[277,44627,44628,44630,44632,44634,44636,44638,44640],{"class":279,"line":331},[277,44629,405],{"class":311},[277,44631,9380],{"class":356},[277,44633,340],{"class":311},[277,44635,413],{"class":291},[277,44637,448],{"class":283},[277,44639,3542],{"class":356},[277,44641,433],{"class":283},[277,44643,44644,44646,44648],{"class":279,"line":346},[277,44645,785],{"class":283},[277,44647,288],{"class":287},[277,44649,305],{"class":283},[277,44651,44652],{"class":279,"line":360},[277,44653,328],{"emptyLinePlaceholder":327},[277,44655,44656,44658,44660],{"class":279,"line":371},[277,44657,284],{"class":283},[277,44659,802],{"class":287},[277,44661,305],{"class":283},[277,44663,44665,44667,44669,44671,44674,44676],{"class":44664,"line":381},[279,9398],[277,44666,810],{"class":283},[277,44668,21],{"class":287},[277,44670,22314],{"class":291},[277,44672,44673],{"class":283},">Este texto no cambiará: {{ count }}\u003C/",[277,44675,21],{"class":287},[277,44677,305],{"class":283},[277,44679,44680,44682,44684,44686,44688,44690,44693,44695],{"class":279,"line":391},[277,44681,810],{"class":283},[277,44683,4267],{"class":287},[277,44685,4278],{"class":291},[277,44687,298],{"class":283},[277,44689,12464],{"class":301},[277,44691,44692],{"class":283},">Incrementar\u003C/",[277,44694,4267],{"class":287},[277,44696,305],{"class":283},[277,44698,44699,44701,44703],{"class":279,"line":397},[277,44700,785],{"class":283},[277,44702,802],{"class":287},[277,44704,305],{"class":283},[267,44706,44709],{"className":269,"code":44707,"filename":971,"highlights":44708,"language":272,"meta":273,"style":273},"\u003Cscript>\nexport default {\n  data() {\n    return {\n      count: 0\n    }\n  }\n}\n\u003C/script>\n\n\u003Ctemplate>\n  \u003Cp v-once>Este texto no cambiará: {{ count }}\u003C/p>\n  \u003Cbutton @click=\"count++\">Incrementar\u003C/button>\n\u003C/template>\n",[436],[16,44710,44711,44719,44727,44733,44739,44745,44749,44753,44757,44765,44769,44777,44792,44810],{"__ignoreMap":273},[277,44712,44713,44715,44717],{"class":279,"line":280},[277,44714,284],{"class":283},[277,44716,288],{"class":287},[277,44718,305],{"class":283},[277,44720,44721,44723,44725],{"class":279,"line":308},[277,44722,1057],{"class":311},[277,44724,1060],{"class":311},[277,44726,343],{"class":283},[277,44728,44729,44731],{"class":279,"line":324},[277,44730,1086],{"class":291},[277,44732,473],{"class":283},[277,44734,44735,44737],{"class":279,"line":331},[277,44736,1093],{"class":311},[277,44738,343],{"class":283},[277,44740,44741,44743],{"class":279,"line":346},[277,44742,31686],{"class":283},[277,44744,4692],{"class":356},[277,44746,44747],{"class":279,"line":360},[277,44748,1126],{"class":283},[277,44750,44751],{"class":279,"line":371},[277,44752,542],{"class":283},[277,44754,44755],{"class":279,"line":381},[277,44756,394],{"class":283},[277,44758,44759,44761,44763],{"class":279,"line":391},[277,44760,785],{"class":283},[277,44762,288],{"class":287},[277,44764,305],{"class":283},[277,44766,44767],{"class":279,"line":397},[277,44768,328],{"emptyLinePlaceholder":327},[277,44770,44771,44773,44775],{"class":279,"line":402},[277,44772,284],{"class":283},[277,44774,802],{"class":287},[277,44776,305],{"class":283},[277,44778,44780,44782,44784,44786,44788,44790],{"class":44779,"line":436},[279,9398],[277,44781,810],{"class":283},[277,44783,21],{"class":287},[277,44785,22314],{"class":291},[277,44787,44673],{"class":283},[277,44789,21],{"class":287},[277,44791,305],{"class":283},[277,44793,44794,44796,44798,44800,44802,44804,44806,44808],{"class":279,"line":456},[277,44795,810],{"class":283},[277,44797,4267],{"class":287},[277,44799,4278],{"class":291},[277,44801,298],{"class":283},[277,44803,12464],{"class":301},[277,44805,44692],{"class":283},[277,44807,4267],{"class":287},[277,44809,305],{"class":283},[277,44811,44812,44814,44816],{"class":279,"line":461},[277,44813,785],{"class":283},[277,44815,802],{"class":287},[277,44817,305],{"class":283},[21,44819,44820],{},"Útil cuando el contenido no debe actualizarse jamás, incluso si el estado cambia.",[30,44822,44823],{"id":21909},[16,44824,21909],{},[21,44826,44827],{},"Evita renderizados innecesarios cuando las dependencias no cambian.",[267,44829,44832],{"className":269,"code":44830,"filename":271,"highlights":44831,"language":272,"meta":273,"style":273},"\u003Cscript setup>\nimport { ref } from 'vue'\n\nconst count = ref(0)\n\u003C/script>\n\n\u003Ctemplate>\n  \u003Cdiv v-memo=\"[count]\">\n    \u003Cp>Este bloque solo se re-renderiza si 'count' cambia: {{ count }}\u003C/p>\n  \u003C/div>\n  \u003Cbutton @click=\"count++\">Incrementar\u003C/button>\n\u003C/template>\n",[381],[16,44833,44834,44844,44854,44858,44874,44882,44886,44894,44911,44924,44932,44950],{"__ignoreMap":273},[277,44835,44836,44838,44840,44842],{"class":279,"line":280},[277,44837,284],{"class":283},[277,44839,288],{"class":287},[277,44841,292],{"class":291},[277,44843,305],{"class":283},[277,44845,44846,44848,44850,44852],{"class":279,"line":308},[277,44847,312],{"class":311},[277,44849,11006],{"class":283},[277,44851,318],{"class":311},[277,44853,321],{"class":301},[277,44855,44856],{"class":279,"line":324},[277,44857,328],{"emptyLinePlaceholder":327},[277,44859,44860,44862,44864,44866,44868,44870,44872],{"class":279,"line":331},[277,44861,405],{"class":311},[277,44863,9380],{"class":356},[277,44865,340],{"class":311},[277,44867,413],{"class":291},[277,44869,448],{"class":283},[277,44871,3542],{"class":356},[277,44873,433],{"class":283},[277,44875,44876,44878,44880],{"class":279,"line":346},[277,44877,785],{"class":283},[277,44879,288],{"class":287},[277,44881,305],{"class":283},[277,44883,44884],{"class":279,"line":360},[277,44885,328],{"emptyLinePlaceholder":327},[277,44887,44888,44890,44892],{"class":279,"line":371},[277,44889,284],{"class":283},[277,44891,802],{"class":287},[277,44893,305],{"class":283},[277,44895,44897,44899,44901,44904,44906,44909],{"class":44896,"line":381},[279,9398],[277,44898,810],{"class":283},[277,44900,4201],{"class":287},[277,44902,44903],{"class":291}," v-memo",[277,44905,298],{"class":283},[277,44907,44908],{"class":301},"\"[count]\"",[277,44910,305],{"class":283},[277,44912,44913,44915,44917,44920,44922],{"class":279,"line":391},[277,44914,829],{"class":283},[277,44916,21],{"class":287},[277,44918,44919],{"class":283},">Este bloque solo se re-renderiza si 'count' cambia: {{ count }}\u003C/",[277,44921,21],{"class":287},[277,44923,305],{"class":283},[277,44925,44926,44928,44930],{"class":279,"line":397},[277,44927,954],{"class":283},[277,44929,4201],{"class":287},[277,44931,305],{"class":283},[277,44933,44934,44936,44938,44940,44942,44944,44946,44948],{"class":279,"line":402},[277,44935,810],{"class":283},[277,44937,4267],{"class":287},[277,44939,4278],{"class":291},[277,44941,298],{"class":283},[277,44943,12464],{"class":301},[277,44945,44692],{"class":283},[277,44947,4267],{"class":287},[277,44949,305],{"class":283},[277,44951,44952,44954,44956],{"class":279,"line":436},[277,44953,785],{"class":283},[277,44955,802],{"class":287},[277,44957,305],{"class":283},[267,44959,44962],{"className":269,"code":44960,"filename":971,"highlights":44961,"language":272,"meta":273,"style":273},"\u003Cscript>\nexport default {\n  data() {\n    return {\n      value: 10\n    }\n  }\n}\n\u003C/script>\n\n\u003Ctemplate>\n  \u003Cdiv v-memo=\"[value]\">\n    \u003Cp>El valor es: {{ value }}\u003C/p>\n  \u003C/div>\n\u003C/template>\n",[436],[16,44963,44964,44972,44980,44986,44992,45000,45004,45008,45012,45020,45024,45032,45048,45061,45069],{"__ignoreMap":273},[277,44965,44966,44968,44970],{"class":279,"line":280},[277,44967,284],{"class":283},[277,44969,288],{"class":287},[277,44971,305],{"class":283},[277,44973,44974,44976,44978],{"class":279,"line":308},[277,44975,1057],{"class":311},[277,44977,1060],{"class":311},[277,44979,343],{"class":283},[277,44981,44982,44984],{"class":279,"line":324},[277,44983,1086],{"class":291},[277,44985,473],{"class":283},[277,44987,44988,44990],{"class":279,"line":331},[277,44989,1093],{"class":311},[277,44991,343],{"class":283},[277,44993,44994,44997],{"class":279,"line":346},[277,44995,44996],{"class":283},"      value: ",[277,44998,44999],{"class":356},"10\n",[277,45001,45002],{"class":279,"line":360},[277,45003,1126],{"class":283},[277,45005,45006],{"class":279,"line":371},[277,45007,542],{"class":283},[277,45009,45010],{"class":279,"line":381},[277,45011,394],{"class":283},[277,45013,45014,45016,45018],{"class":279,"line":391},[277,45015,785],{"class":283},[277,45017,288],{"class":287},[277,45019,305],{"class":283},[277,45021,45022],{"class":279,"line":397},[277,45023,328],{"emptyLinePlaceholder":327},[277,45025,45026,45028,45030],{"class":279,"line":402},[277,45027,284],{"class":283},[277,45029,802],{"class":287},[277,45031,305],{"class":283},[277,45033,45035,45037,45039,45041,45043,45046],{"class":45034,"line":436},[279,9398],[277,45036,810],{"class":283},[277,45038,4201],{"class":287},[277,45040,44903],{"class":291},[277,45042,298],{"class":283},[277,45044,45045],{"class":301},"\"[value]\"",[277,45047,305],{"class":283},[277,45049,45050,45052,45054,45057,45059],{"class":279,"line":456},[277,45051,829],{"class":283},[277,45053,21],{"class":287},[277,45055,45056],{"class":283},">El valor es: {{ value }}\u003C/",[277,45058,21],{"class":287},[277,45060,305],{"class":283},[277,45062,45063,45065,45067],{"class":279,"line":461},[277,45064,954],{"class":283},[277,45066,4201],{"class":287},[277,45068,305],{"class":283},[277,45070,45071,45073,45075],{"class":279,"line":476},[277,45072,785],{"class":283},[277,45074,802],{"class":287},[277,45076,305],{"class":283},[21,45078,45079,45080,45083],{},"Es una ",[72,45081,45082],{},"optimización avanzada",".\nNo está pensada para usarse “porque sí”, sino en cuellos de botella reales.",[30,45085,45086],{"id":21912},[16,45087,21912],{},[21,45089,45090],{},"Evita que Vue compile el contenido del nodo.",[267,45092,45095],{"className":269,"code":45093,"filename":271,"highlights":45094,"language":272,"meta":273,"style":273},"\u003Cscript setup>\n\u003C/script>\n\n\u003Ctemplate>\n  \u003Cdiv v-pre>\n    {{ esto_no_se_evaluará }}\n  \u003C/div>\n\u003C/template>\n",[346],[16,45096,45097,45107,45115,45119,45127,45138,45143,45151],{"__ignoreMap":273},[277,45098,45099,45101,45103,45105],{"class":279,"line":280},[277,45100,284],{"class":283},[277,45102,288],{"class":287},[277,45104,292],{"class":291},[277,45106,305],{"class":283},[277,45108,45109,45111,45113],{"class":279,"line":308},[277,45110,785],{"class":283},[277,45112,288],{"class":287},[277,45114,305],{"class":283},[277,45116,45117],{"class":279,"line":324},[277,45118,328],{"emptyLinePlaceholder":327},[277,45120,45121,45123,45125],{"class":279,"line":331},[277,45122,284],{"class":283},[277,45124,802],{"class":287},[277,45126,305],{"class":283},[277,45128,45130,45132,45134,45136],{"class":45129,"line":346},[279,9398],[277,45131,810],{"class":283},[277,45133,4201],{"class":287},[277,45135,23208],{"class":291},[277,45137,305],{"class":283},[277,45139,45140],{"class":279,"line":360},[277,45141,45142],{"class":283},"    {{ esto_no_se_evaluará }}\n",[277,45144,45145,45147,45149],{"class":279,"line":371},[277,45146,954],{"class":283},[277,45148,4201],{"class":287},[277,45150,305],{"class":283},[277,45152,45153,45155,45157],{"class":279,"line":381},[277,45154,785],{"class":283},[277,45156,802],{"class":287},[277,45158,305],{"class":283},[267,45160,45163],{"className":269,"code":45161,"filename":971,"highlights":45162,"language":272,"meta":273,"style":273},"\u003Cscript>\nexport default {}\n\u003C/script>\n\n\u003Ctemplate>\n  \u003Cdiv v-pre>\n    {{ esto_no_se_evaluará }}\n  \u003C/div>\n\u003C/template>\n",[360],[16,45164,45165,45173,45182,45190,45194,45202,45213,45217,45225],{"__ignoreMap":273},[277,45166,45167,45169,45171],{"class":279,"line":280},[277,45168,284],{"class":283},[277,45170,288],{"class":287},[277,45172,305],{"class":283},[277,45174,45175,45177,45179],{"class":279,"line":308},[277,45176,1057],{"class":311},[277,45178,1060],{"class":311},[277,45180,45181],{"class":283}," {}\n",[277,45183,45184,45186,45188],{"class":279,"line":324},[277,45185,785],{"class":283},[277,45187,288],{"class":287},[277,45189,305],{"class":283},[277,45191,45192],{"class":279,"line":331},[277,45193,328],{"emptyLinePlaceholder":327},[277,45195,45196,45198,45200],{"class":279,"line":346},[277,45197,284],{"class":283},[277,45199,802],{"class":287},[277,45201,305],{"class":283},[277,45203,45205,45207,45209,45211],{"class":45204,"line":360},[279,9398],[277,45206,810],{"class":283},[277,45208,4201],{"class":287},[277,45210,23208],{"class":291},[277,45212,305],{"class":283},[277,45214,45215],{"class":279,"line":371},[277,45216,45142],{"class":283},[277,45218,45219,45221,45223],{"class":279,"line":381},[277,45220,954],{"class":283},[277,45222,4201],{"class":287},[277,45224,305],{"class":283},[277,45226,45227,45229,45231],{"class":279,"line":391},[277,45228,785],{"class":283},[277,45230,802],{"class":287},[277,45232,305],{"class":283},[21,45234,45235],{},"Perfecta para mostrar snippets, ejemplos literales o templates de demostración.",[30,45237,45238],{"id":20608},[16,45239,20608],{},[21,45241,45242],{},"Oculta el template hasta que Vue termine de montar la aplicación.",[267,45244,45247],{"className":269,"code":45245,"filename":271,"highlights":45246,"language":272,"meta":273,"style":273},"\u003Cscript setup>\n\u003C/script>\n\n\u003Ctemplate>\n  \u003Cdiv v-cloak>\n    {{ mensaje }}\n  \u003C/div>\n\u003C/template>\n",[346],[16,45248,45249,45259,45267,45271,45279,45290,45295,45303],{"__ignoreMap":273},[277,45250,45251,45253,45255,45257],{"class":279,"line":280},[277,45252,284],{"class":283},[277,45254,288],{"class":287},[277,45256,292],{"class":291},[277,45258,305],{"class":283},[277,45260,45261,45263,45265],{"class":279,"line":308},[277,45262,785],{"class":283},[277,45264,288],{"class":287},[277,45266,305],{"class":283},[277,45268,45269],{"class":279,"line":324},[277,45270,328],{"emptyLinePlaceholder":327},[277,45272,45273,45275,45277],{"class":279,"line":331},[277,45274,284],{"class":283},[277,45276,802],{"class":287},[277,45278,305],{"class":283},[277,45280,45282,45284,45286,45288],{"class":45281,"line":346},[279,9398],[277,45283,810],{"class":283},[277,45285,4201],{"class":287},[277,45287,20999],{"class":291},[277,45289,305],{"class":283},[277,45291,45292],{"class":279,"line":360},[277,45293,45294],{"class":283},"    {{ mensaje }}\n",[277,45296,45297,45299,45301],{"class":279,"line":371},[277,45298,954],{"class":283},[277,45300,4201],{"class":287},[277,45302,305],{"class":283},[277,45304,45305,45307,45309],{"class":279,"line":381},[277,45306,785],{"class":283},[277,45308,802],{"class":287},[277,45310,305],{"class":283},[267,45312,45315],{"className":269,"code":45313,"filename":971,"highlights":45314,"language":272,"meta":273,"style":273},"\u003Cscript>\nexport default {}\n\u003C/script>\n\n\u003Ctemplate>\n  \u003Cdiv v-cloak>\n    {{ mensaje }}\n  \u003C/div>\n\u003C/template>\n",[360],[16,45316,45317,45325,45333,45341,45345,45353,45364,45368,45376],{"__ignoreMap":273},[277,45318,45319,45321,45323],{"class":279,"line":280},[277,45320,284],{"class":283},[277,45322,288],{"class":287},[277,45324,305],{"class":283},[277,45326,45327,45329,45331],{"class":279,"line":308},[277,45328,1057],{"class":311},[277,45330,1060],{"class":311},[277,45332,45181],{"class":283},[277,45334,45335,45337,45339],{"class":279,"line":324},[277,45336,785],{"class":283},[277,45338,288],{"class":287},[277,45340,305],{"class":283},[277,45342,45343],{"class":279,"line":331},[277,45344,328],{"emptyLinePlaceholder":327},[277,45346,45347,45349,45351],{"class":279,"line":346},[277,45348,284],{"class":283},[277,45350,802],{"class":287},[277,45352,305],{"class":283},[277,45354,45356,45358,45360,45362],{"class":45355,"line":360},[279,9398],[277,45357,810],{"class":283},[277,45359,4201],{"class":287},[277,45361,20999],{"class":291},[277,45363,305],{"class":283},[277,45365,45366],{"class":279,"line":371},[277,45367,45294],{"class":283},[277,45369,45370,45372,45374],{"class":279,"line":381},[277,45371,954],{"class":283},[277,45373,4201],{"class":287},[277,45375,305],{"class":283},[277,45377,45378,45380,45382],{"class":279,"line":391},[277,45379,785],{"class":283},[277,45381,802],{"class":287},[277,45383,305],{"class":283},[21,45385,45386],{},"Evita el parpadeo inicial en aplicaciones renderizadas del lado del cliente.",[30,45388,3241],{"id":45389},"directivas-personalizadas",[21,45391,45392],{},"Permiten extender Vue para manipular directamente el DOM cuando no hay otra opción más declarativa.",[267,45394,45397],{"className":15972,"code":45395,"filename":19438,"highlights":45396,"language":15975,"meta":273,"style":273},"import { createApp } from 'vue'\nimport App from './App.vue'\nconst app = createApp(App)\napp.directive('focus', {\n  mounted(el) {\n    el.focus()\n  }\n})\n",[331,346,360,371,381],[16,45398,45399,45410,45422,45437,45453,45464,45474,45479],{"__ignoreMap":273},[277,45400,45401,45403,45406,45408],{"class":279,"line":280},[277,45402,312],{"class":311},[277,45404,45405],{"class":283}," { createApp } ",[277,45407,318],{"class":311},[277,45409,321],{"class":301},[277,45411,45412,45414,45417,45419],{"class":279,"line":308},[277,45413,312],{"class":311},[277,45415,45416],{"class":283}," App ",[277,45418,318],{"class":311},[277,45420,45421],{"class":301}," './App.vue'\n",[277,45423,45424,45426,45429,45431,45434],{"class":279,"line":324},[277,45425,405],{"class":311},[277,45427,45428],{"class":356}," app",[277,45430,340],{"class":311},[277,45432,45433],{"class":291}," createApp",[277,45435,45436],{"class":283},"(App)\n",[277,45438,45440,45443,45446,45448,45451],{"class":45439,"line":331},[279,9398],[277,45441,45442],{"class":283},"app.",[277,45444,45445],{"class":291},"directive",[277,45447,448],{"class":283},[277,45449,45450],{"class":301},"'focus'",[277,45452,2360],{"class":283},[277,45454,45456,45458,45460,45462],{"class":45455,"line":346},[279,9398],[277,45457,6784],{"class":291},[277,45459,448],{"class":283},[277,45461,18319],{"class":349},[277,45463,2476],{"class":283},[277,45465,45467,45470,45472],{"class":45466,"line":360},[279,9398],[277,45468,45469],{"class":283},"    el.",[277,45471,11476],{"class":291},[277,45473,622],{"class":283},[277,45475,45477],{"class":45476,"line":371},[279,9398],[277,45478,542],{"class":283},[277,45480,45482],{"class":45481,"line":381},[279,9398],[277,45483,676],{"class":283},[267,45485,45488],{"className":269,"code":45486,"filename":9339,"highlights":45487,"language":272,"meta":273,"style":273},"\u003Ctemplate>\n  \u003Cinput v-focus />\n\u003C/template>\n",[308],[16,45489,45490,45498,45510],{"__ignoreMap":273},[277,45491,45492,45494,45496],{"class":279,"line":280},[277,45493,284],{"class":283},[277,45495,802],{"class":287},[277,45497,305],{"class":283},[277,45499,45501,45503,45505,45508],{"class":45500,"line":308},[279,9398],[277,45502,810],{"class":283},[277,45504,18041],{"class":287},[277,45506,45507],{"class":291}," v-focus",[277,45509,4325],{"class":283},[277,45511,45512,45514,45516],{"class":279,"line":324},[277,45513,785],{"class":283},[277,45515,802],{"class":287},[277,45517,305],{"class":283},[21,45519,45520],{},"Son poderosas, pero deben usarse con cuidado:\nsi abusas de ellas, probablemente estás rompiendo el modelo mental de Vue.",[30,45522,17671],{"id":17670},[21,45524,45525,45526,104],{},"Las directivas no son solo sintaxis bonita.\nSon ",[72,45527,45528],{},"contratos claros entre el estado y el DOM",[21,45530,45531],{},"Este artículo es el punto de partida.\nCada directiva tendrá su entrada individual, con:",[38,45533,45534,45537,45539],{},[41,45535,45536],{},"Casos reales",[41,45538,190],{},[41,45540,45541],{},"Buenas y malas prácticas",[21,45543,45544,45545,45548],{},"Este mapa ya te permite ",[72,45546,45547],{},"leer código Vue con criterio",".\nLo demás es profundidad, no confusión.",[1606,45550,40264],{},{"title":273,"searchDepth":308,"depth":308,"links":45552},[45553,45554,45556,45557,45558,45559,45560,45561,45562,45563,45564,45565,45566,45567,45568,45569],{"id":13168,"depth":308,"text":13169},{"id":42296,"depth":308,"text":45555},"v-if, v-else-if, v-else",{"id":7701,"depth":308,"text":7701},{"id":24880,"depth":308,"text":24880},{"id":17974,"depth":308,"text":17974},{"id":17971,"depth":308,"text":17971},{"id":17977,"depth":308,"text":17977},{"id":24587,"depth":308,"text":24587},{"id":24590,"depth":308,"text":24590},{"id":25869,"depth":308,"text":25869},{"id":21906,"depth":308,"text":21906},{"id":21909,"depth":308,"text":21909},{"id":21912,"depth":308,"text":21912},{"id":20608,"depth":308,"text":20608},{"id":45389,"depth":308,"text":3241},{"id":17670,"depth":308,"text":17671},"https://res.cloudinary.com/denj4fg7f/image/upload/v1770161262/vue-directives-overview_qyrngz.png","2026-02-04","Explora las directivas esenciales de Vue.js, su sintaxis y casos de uso comunes.",{"script":45574},[45575],{"type":1632,"key":1633,"data-nuxt-schema-org":327,"nodes":45576},[45577],{"headline":42204,"author":45578,"datePublished":45579,"@type":1640},{"name":1637,"@type":1638},"2026-02-03T20:00:00-05:00",{"updatedAt":28100,"readingTime":360,"coverCaption":45581,"author":1637,"keywords":45582},"Imagen destacada que representa las directivas en Vue.js.",[1645,20588,45583,45584],"Desarrollo Frontend","Buenas Prácticas","/blog/vue-directives-overview.es",[45587],{"headline":42204,"author":45588,"datePublished":45579,"@type":1640},{"name":1637,"@type":1638},{"title":42204,"description":45572},"blog/vue-directives-overview.es",[45592,45593,45594,45595,45596,45597],{"tag":20588,"color":20589},{"tag":21891,"color":21892},{"tag":42197,"color":42198},{"tag":40325,"color":3168},{"tag":3167,"color":3168},{"tag":9074,"color":9075},"_TiH5SZfhuhLltkiEIYgNLFFzrrnC62SUz0UvHozHoI",{"id":45600,"title":45601,"body":45602,"cover":46365,"coverAlt":45601,"date":46366,"description":46367,"draft":1627,"extension":1628,"head":46368,"locale":1641,"meta":46375,"navigation":327,"path":46381,"schemaOrg":46382,"seo":46385,"series":1656,"seriesDescription":1656,"seriesOrder":1656,"seriesTitle":1656,"slug":1656,"stem":46386,"tags":46387,"__hash__":46396},"blog/blog/mastering-renderless-components-vue-3.es.md","Patrones Avanzados en Vue 3: El Poder de los Renderless Components",{"type":8,"value":45603,"toc":46354},[45604,45608,45619,45623,45630,45637,45641,45655,45659,45662,45814,45967,45973,46085,46092,46112,46203,46206,46210,46220,46299,46311,46315,46338,46342,46351],[11,45605,45607],{"id":45606},"el-patrón-renderless-en-vue-3-arquitectura-y-separación-de-responsabilidades","El Patrón Renderless en Vue 3: Arquitectura y Separación de Responsabilidades",[21,45609,45610,45611,45614,45615,45618],{},"En el ecosistema de Vue 3, la reutilización de código ha evolucionado significativamente gracias a la Composition API. Sin embargo, persiste un desafío recurrente: ",[72,45612,45613],{},"¿Cómo compartir una lógica de interfaz compleja sin imponer un diseño o una estructura HTML específicos?"," Aquí es donde el patrón de ",[72,45616,45617],{},"Renderless Components"," se consolida como una herramienta indispensable para la arquitectura de software.",[30,45620,45622],{"id":45621},"qué-es-un-renderless-component","¿Qué es un Renderless Component?",[21,45624,45625,45626,45629],{},"Un componente ",[3292,45627,45628],{},"renderless"," (sin renderizado) es aquel que no genera ningún marcado propio ni estilos CSS. Su única responsabilidad es encapsular el estado y la lógica de comportamiento para exponer estos datos al componente padre. El padre, a su vez, decide exactamente qué elementos del DOM utilizar y cómo estilizarlos.",[21,45631,45632,45633,45636],{},"Este patrón es la columna vertebral de las ",[72,45634,45635],{},"bibliotecas \"Headless UI\"",", permitiendo que la lógica de un componente —como la gestión de un modal, un desplegable o un formulario— sea universal, mientras que el diseño permanece 100% personalizable.",[30,45638,45640],{"id":45639},"el-motor-scoped-slots","El Motor: Scoped Slots",[21,45642,45643,45644,45647,45648,45650,45651,45654],{},"La implementación de este patrón se apoya en los ",[72,45645,45646],{},"Scoped Slots",". A diferencia de un ",[3292,45649,25947],{}," convencional, un ",[3292,45652,45653],{},"scoped slot"," permite al componente hijo enviar datos \"hacia arriba\" a la plantilla del padre en el momento de la ejecución.",[192,45656,45658],{"id":45657},"ejemplo-práctico-un-controlador-de-visibilidad","Ejemplo Práctico: Un Controlador de Visibilidad",[21,45660,45661],{},"Imagina un componente que gestiona el estado de \"abierto/cerrado\", algo esencial en menús y modales.",[267,45663,45667],{"className":269,"code":45664,"filename":45665,"highlights":45666,"language":272,"meta":273,"style":273},"\u003Cscript setup>\n  import { ref } from 'vue';\n\n  const isOpen = ref(false);\n  const toggle = () => {\n    isOpen.value = !isOpen.value;\n  };\n\n  // Exponemos el estado y el método al slot\n\u003C/script>\n\n\u003Ctemplate>\n  \u003Cslot :isOpen=\"isOpen\" :toggle=\"toggle\">\u003C/slot>\n\u003C/template>\n","LogicToggle.vue - Composition API",[331,346,360,371,456],[16,45668,45669,45679,45693,45697,45714,45730,45743,45749,45753,45758,45766,45770,45778,45806],{"__ignoreMap":273},[277,45670,45671,45673,45675,45677],{"class":279,"line":280},[277,45672,284],{"class":283},[277,45674,288],{"class":287},[277,45676,292],{"class":291},[277,45678,305],{"class":283},[277,45680,45681,45684,45686,45688,45691],{"class":279,"line":308},[277,45682,45683],{"class":311},"  import",[277,45685,11006],{"class":283},[277,45687,318],{"class":311},[277,45689,45690],{"class":301}," 'vue'",[277,45692,18151],{"class":283},[277,45694,45695],{"class":279,"line":324},[277,45696,328],{"emptyLinePlaceholder":327},[277,45698,45700,45702,45704,45706,45708,45710,45712],{"class":45699,"line":331},[279,9398],[277,45701,479],{"class":311},[277,45703,18266],{"class":356},[277,45705,340],{"class":311},[277,45707,413],{"class":291},[277,45709,448],{"class":283},[277,45711,2123],{"class":356},[277,45713,18277],{"class":283},[277,45715,45717,45719,45722,45724,45726,45728],{"class":45716,"line":346},[279,9398],[277,45718,479],{"class":311},[277,45720,45721],{"class":291}," toggle",[277,45723,340],{"class":311},[277,45725,598],{"class":283},[277,45727,601],{"class":311},[277,45729,343],{"class":283},[277,45731,45733,45736,45738,45740],{"class":45732,"line":360},[279,9398],[277,45734,45735],{"class":283},"    isOpen.value ",[277,45737,298],{"class":311},[277,45739,2288],{"class":311},[277,45741,45742],{"class":283},"isOpen.value;\n",[277,45744,45746],{"class":45745,"line":371},[279,9398],[277,45747,45748],{"class":283},"  };\n",[277,45750,45751],{"class":279,"line":381},[277,45752,328],{"emptyLinePlaceholder":327},[277,45754,45755],{"class":279,"line":391},[277,45756,45757],{"class":12741},"  // Exponemos el estado y el método al slot\n",[277,45759,45760,45762,45764],{"class":279,"line":397},[277,45761,785],{"class":283},[277,45763,288],{"class":287},[277,45765,305],{"class":283},[277,45767,45768],{"class":279,"line":402},[277,45769,328],{"emptyLinePlaceholder":327},[277,45771,45772,45774,45776],{"class":279,"line":436},[277,45773,284],{"class":283},[277,45775,802],{"class":287},[277,45777,305],{"class":283},[277,45779,45781,45783,45785,45788,45790,45792,45795,45797,45800,45802,45804],{"class":45780,"line":456},[279,9398],[277,45782,810],{"class":283},[277,45784,25947],{"class":287},[277,45786,45787],{"class":291}," :isOpen",[277,45789,298],{"class":283},[277,45791,18724],{"class":301},[277,45793,45794],{"class":291}," :toggle",[277,45796,298],{"class":283},[277,45798,45799],{"class":301},"\"toggle\"",[277,45801,24690],{"class":283},[277,45803,25947],{"class":287},[277,45805,305],{"class":283},[277,45807,45808,45810,45812],{"class":279,"line":461},[277,45809,785],{"class":283},[277,45811,802],{"class":287},[277,45813,305],{"class":283},[267,45815,45819],{"className":269,"code":45816,"filename":45817,"highlights":45818,"language":272,"meta":273,"style":273},"\u003Cscript>\n  export default {\n    data() {\n      return {\n        isOpen: false\n      };\n    },\n    methods: {\n      toggle() {\n        this.isOpen = !this.isOpen;\n      }\n    }\n  };\n  // Exponemos el estado y el método al slot\n\u003C/script>\n\n\u003Ctemplate>\n  \u003Cslot :isOpen=\"isOpen\" :toggle=\"toggle\">\u003C/slot>\n\u003C/template>\n","LogicToggle.vue - Options API",[346,391,397,402,520],[16,45820,45821,45829,45838,45845,45851,45859,45863,45867,45872,45880,45897,45902,45906,45910,45914,45922,45926,45934,45959],{"__ignoreMap":273},[277,45822,45823,45825,45827],{"class":279,"line":280},[277,45824,284],{"class":283},[277,45826,288],{"class":287},[277,45828,305],{"class":283},[277,45830,45831,45834,45836],{"class":279,"line":308},[277,45832,45833],{"class":311},"  export",[277,45835,1060],{"class":311},[277,45837,343],{"class":283},[277,45839,45840,45843],{"class":279,"line":324},[277,45841,45842],{"class":291},"    data",[277,45844,473],{"class":283},[277,45846,45847,45849],{"class":279,"line":331},[277,45848,2754],{"class":311},[277,45850,343],{"class":283},[277,45852,45854,45857],{"class":45853,"line":346},[279,9398],[277,45855,45856],{"class":283},"        isOpen: ",[277,45858,2043],{"class":356},[277,45860,45861],{"class":279,"line":360},[277,45862,36566],{"class":283},[277,45864,45865],{"class":279,"line":371},[277,45866,7016],{"class":283},[277,45868,45869],{"class":279,"line":381},[277,45870,45871],{"class":283},"    methods: {\n",[277,45873,45875,45878],{"class":45874,"line":391},[279,9398],[277,45876,45877],{"class":291},"      toggle",[277,45879,473],{"class":283},[277,45881,45883,45885,45888,45890,45892,45894],{"class":45882,"line":397},[279,9398],[277,45884,8819],{"class":356},[277,45886,45887],{"class":283},".isOpen ",[277,45889,298],{"class":311},[277,45891,2288],{"class":311},[277,45893,1341],{"class":356},[277,45895,45896],{"class":283},".isOpen;\n",[277,45898,45900],{"class":45899,"line":402},[279,9398],[277,45901,1203],{"class":283},[277,45903,45904],{"class":279,"line":436},[277,45905,1126],{"class":283},[277,45907,45908],{"class":279,"line":456},[277,45909,45748],{"class":283},[277,45911,45912],{"class":279,"line":461},[277,45913,45757],{"class":12741},[277,45915,45916,45918,45920],{"class":279,"line":476},[277,45917,785],{"class":283},[277,45919,288],{"class":287},[277,45921,305],{"class":283},[277,45923,45924],{"class":279,"line":500},[277,45925,328],{"emptyLinePlaceholder":327},[277,45927,45928,45930,45932],{"class":279,"line":505},[277,45929,284],{"class":283},[277,45931,802],{"class":287},[277,45933,305],{"class":283},[277,45935,45937,45939,45941,45943,45945,45947,45949,45951,45953,45955,45957],{"class":45936,"line":520},[279,9398],[277,45938,810],{"class":283},[277,45940,25947],{"class":287},[277,45942,45787],{"class":291},[277,45944,298],{"class":283},[277,45946,18724],{"class":301},[277,45948,45794],{"class":291},[277,45950,298],{"class":283},[277,45952,45799],{"class":301},[277,45954,24690],{"class":283},[277,45956,25947],{"class":287},[277,45958,305],{"class":283},[277,45960,45961,45963,45965],{"class":279,"line":539},[277,45962,785],{"class":283},[277,45964,802],{"class":287},[277,45966,305],{"class":283},[21,45968,45969,45972],{},[72,45970,45971],{},"Implementación en el Padre","\nAl consumir este componente, gozas de total libertad creativa:",[267,45974,45978],{"className":269,"code":45975,"filename":45976,"highlights":45977,"language":272,"meta":273,"style":273},"\u003Ctemplate>\n  \u003CLogicToggle v-slot=\"{ isOpen, toggle }\">\n    \u003Cbutton @click=\"toggle\">\n      {{ isOpen ? 'Cerrar Menú' : 'Abrir Menú' }}\n    \u003C/button>\n    \u003Cdiv v-if=\"isOpen\" class=\"custom-dropdown\">\n      Contenido dinámico aquí\n    \u003C/div>\n  \u003C/LogicToggle>\n\u003C/template>\n","ParentComponent.vue",[308,324,331,360],[16,45979,45980,45988,46005,46020,46026,46034,46056,46061,46069,46077],{"__ignoreMap":273},[277,45981,45982,45984,45986],{"class":279,"line":280},[277,45983,284],{"class":283},[277,45985,802],{"class":287},[277,45987,305],{"class":283},[277,45989,45991,45993,45996,45998,46000,46003],{"class":45990,"line":308},[279,9398],[277,45992,810],{"class":283},[277,45994,45995],{"class":287},"LogicToggle",[277,45997,26191],{"class":291},[277,45999,298],{"class":283},[277,46001,46002],{"class":301},"\"{ isOpen, toggle }\"",[277,46004,305],{"class":283},[277,46006,46008,46010,46012,46014,46016,46018],{"class":46007,"line":324},[279,9398],[277,46009,829],{"class":283},[277,46011,4267],{"class":287},[277,46013,4278],{"class":291},[277,46015,298],{"class":283},[277,46017,45799],{"class":301},[277,46019,305],{"class":283},[277,46021,46023],{"class":46022,"line":331},[279,9398],[277,46024,46025],{"class":283},"      {{ isOpen ? 'Cerrar Menú' : 'Abrir Menú' }}\n",[277,46027,46028,46030,46032],{"class":279,"line":346},[277,46029,922],{"class":283},[277,46031,4267],{"class":287},[277,46033,305],{"class":283},[277,46035,46037,46039,46041,46043,46045,46047,46049,46051,46054],{"class":46036,"line":360},[279,9398],[277,46038,829],{"class":283},[277,46040,4201],{"class":287},[277,46042,834],{"class":291},[277,46044,298],{"class":283},[277,46046,18724],{"class":301},[277,46048,816],{"class":291},[277,46050,298],{"class":283},[277,46052,46053],{"class":301},"\"custom-dropdown\"",[277,46055,305],{"class":283},[277,46057,46058],{"class":279,"line":371},[277,46059,46060],{"class":283},"      Contenido dinámico aquí\n",[277,46062,46063,46065,46067],{"class":279,"line":381},[277,46064,922],{"class":283},[277,46066,4201],{"class":287},[277,46068,305],{"class":283},[277,46070,46071,46073,46075],{"class":279,"line":391},[277,46072,954],{"class":283},[277,46074,45995],{"class":287},[277,46076,305],{"class":283},[277,46078,46079,46081,46083],{"class":279,"line":397},[277,46080,785],{"class":283},[277,46082,802],{"class":287},[277,46084,305],{"class":283},[30,46086,46088,46089,19],{"id":46087},"optimización-senior-render-functions-h","Optimización Senior: Render Functions (",[16,46090,46091],{},"h",[21,46093,46094,46095,46097,46098,46101,46102,511,46104,46107,46108,46111],{},"Para alcanzar un nivel de producción profesional, especialmente en bibliotecas distribuidas vía NPM, es recomendable prescindir del bloque ",[16,46096,26159],{},". Al utilizar la función ",[16,46099,46100],{},"render"," y el método ",[16,46103,46091],{},[3292,46105,46106],{},"hyperscript","), eliminamos la ",[72,46109,46110],{},"sobrecarga"," de la compilación de plantillas y evitamos la creación de nodos adicionales innecesarios en el DOM.",[267,46113,46119],{"className":46114,"code":46115,"filename":46116,"highlights":46117,"language":46118,"meta":273,"style":273},"language-javascript shiki shiki-themes github-light github-dark","import { ref, h } from 'vue';\n\nexport default {\n  setup(props, { slots }) {\n    const isOpen = ref(false);\n    const toggle = () => (isOpen.value = !isOpen.value);\n\n    return () => {\n      // Retornamos el slot por defecto pasando el estado\n      return slots.default ? slots.default({\n        isOpen: isOpen.value,\n        toggle\n      }) : null;\n    };\n  }\n};\n","LogicToggle.js",[331,346,360,397,402,436,456],"javascript",[16,46120,46121,46126,46130,46135,46141,46147,46153,46157,46162,46167,46173,46179,46185,46191,46195,46199],{"__ignoreMap":273},[277,46122,46123],{"class":279,"line":280},[277,46124,46125],{},"import { ref, h } from 'vue';\n",[277,46127,46128],{"class":279,"line":308},[277,46129,328],{"emptyLinePlaceholder":327},[277,46131,46132],{"class":279,"line":324},[277,46133,46134],{},"export default {\n",[277,46136,46138],{"class":46137,"line":331},[279,9398],[277,46139,46140],{},"  setup(props, { slots }) {\n",[277,46142,46144],{"class":46143,"line":346},[279,9398],[277,46145,46146],{},"    const isOpen = ref(false);\n",[277,46148,46150],{"class":46149,"line":360},[279,9398],[277,46151,46152],{},"    const toggle = () => (isOpen.value = !isOpen.value);\n",[277,46154,46155],{"class":279,"line":371},[277,46156,328],{"emptyLinePlaceholder":327},[277,46158,46159],{"class":279,"line":381},[277,46160,46161],{},"    return () => {\n",[277,46163,46164],{"class":279,"line":391},[277,46165,46166],{},"      // Retornamos el slot por defecto pasando el estado\n",[277,46168,46170],{"class":46169,"line":397},[279,9398],[277,46171,46172],{},"      return slots.default ? slots.default({\n",[277,46174,46176],{"class":46175,"line":402},[279,9398],[277,46177,46178],{},"        isOpen: isOpen.value,\n",[277,46180,46182],{"class":46181,"line":436},[279,9398],[277,46183,46184],{},"        toggle\n",[277,46186,46188],{"class":46187,"line":456},[279,9398],[277,46189,46190],{},"      }) : null;\n",[277,46192,46193],{"class":279,"line":461},[277,46194,18478],{},[277,46196,46197],{"class":279,"line":476},[277,46198,542],{},[277,46200,46201],{"class":279,"line":500},[277,46202,18255],{},[21,46204,46205],{},"Esta aproximación permite que el componente actúe como un \"pasamanos\" puro de datos, manteniendo el Virtual DOM limpio y eficiente.",[30,46207,46209],{"id":46208},"renderless-components-vs-composables","Renderless Components vs. Composables",[21,46211,46212,46213,511,46216,46219],{},"Una duda frecuente es por qué no utilizar simplemente un ",[3292,46214,46215],{},"Composable",[16,46217,46218],{},"useToggle","). La elección depende del contexto:",[5392,46221,46222,46233],{},[5395,46223,46224],{},[5398,46225,46226,46229,46231],{},[5401,46227,46228],{},"Característica",[5401,46230,13469],{},[5401,46232,45617],{},[5414,46234,46235,46248,46261,46274,46286],{},[5398,46236,46237,46242,46245],{},[5419,46238,46239],{},[72,46240,46241],{},"Encapsulación",[5419,46243,46244],{},"Lógica pura de JavaScript.",[5419,46246,46247],{},"Lógica ligada al ciclo de vida del componente.",[5398,46249,46250,46255,46258],{},[5419,46251,46252],{},[72,46253,46254],{},"Plantilla",[5419,46256,46257],{},"Se importa en el script.",[5419,46259,46260],{},"Se define de forma declarativa en la plantilla.",[5398,46262,46263,46268,46271],{},[5419,46264,46265],{},[72,46266,46267],{},"Ámbito",[5419,46269,46270],{},"Ideal para lógica global o de negocio.",[5419,46272,46273],{},"Ideal para patrones de UI (accesibilidad, eventos).",[5398,46275,46276,46280,46283],{},[5419,46277,46278],{},[72,46279,26340],{},[5419,46281,46282],{},"No tiene acceso a slots.",[5419,46284,46285],{},"Puede orquestar múltiples subcomponentes.",[5398,46287,46288,46293,46296],{},[5419,46289,46290],{},[72,46291,46292],{},"Curva de aprendizaje",[5419,46294,46295],{},"Requiere entender reactividad pura.",[5419,46297,46298],{},"Más intuitivo para desarrolladores de plantillas.",[21,46300,46301,46302,46304,46305,46307,46308,1895],{},"Los ",[3292,46303,45617],{}," brillan cuando la lógica requiere interactuar con el ciclo de vida (como ",[16,46306,687],{},") o cuando deseas crear una jerarquía de componentes que compartan un estado implícito (",[3292,46309,46310],{},"Compound Components",[30,46312,46314],{"id":46313},"ventajas-competitivas-del-patrón","Ventajas Competitivas del Patrón",[10089,46316,46317,46326,46332],{},[41,46318,46319,46322,46323,46325],{},[72,46320,46321],{},"Mantenibilidad:"," Si la lógica de validación cambia, solo modificas el componente ",[3292,46324,45628],{},". La interfaz permanece intacta.",[41,46327,46328,46331],{},[72,46329,46330],{},"Testabilidad:"," Facilita las pruebas unitarias sobre la lógica de estado sin lidiar con selectores de CSS o colisiones de estilos.",[41,46333,46334,46337],{},[72,46335,46336],{},"Extensibilidad:"," Permite crear múltiples versiones visuales de una misma funcionalidad sin duplicar código lógico.",[30,46339,46341],{"id":46340},"consideraciones-finales","Consideraciones Finales",[21,46343,46344,46345,46347,46348,46350],{},"Si bien este patrón ofrece una flexibilidad inigualable, debe usarse con criterio. En plantillas muy extensas, el uso excesivo de ",[16,46346,25869],{}," puede dificultar la lectura del código. Sin embargo, para el desarrollo de sistemas de diseño y bibliotecas de componentes, los ",[72,46349,45617],{}," representan el estándar de oro en la arquitectura de Vue 3.",[1606,46352,46353],{},"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 .sVt8B, html code.shiki .sVt8B{--shiki-default:#24292E;--shiki-dark:#E1E4E8}html pre.shiki code .s9eBZ, html code.shiki .s9eBZ{--shiki-default:#22863A;--shiki-dark:#85E89D}html pre.shiki code .sScJk, html code.shiki .sScJk{--shiki-default:#6F42C1;--shiki-dark:#B392F0}html pre.shiki code .szBVR, html code.shiki .szBVR{--shiki-default:#D73A49;--shiki-dark:#F97583}html pre.shiki code .sZZnC, html code.shiki .sZZnC{--shiki-default:#032F62;--shiki-dark:#9ECBFF}html pre.shiki code .sj4cs, html code.shiki .sj4cs{--shiki-default:#005CC5;--shiki-dark:#79B8FF}html pre.shiki code .sJ8bj, html code.shiki .sJ8bj{--shiki-default:#6A737D;--shiki-dark:#6A737D}",{"title":273,"searchDepth":308,"depth":308,"links":46355},[46356,46357,46360,46362,46363,46364],{"id":45621,"depth":308,"text":45622},{"id":45639,"depth":308,"text":45640,"children":46358},[46359],{"id":45657,"depth":324,"text":45658},{"id":46087,"depth":308,"text":46361},"Optimización Senior: Render Functions (h)",{"id":46208,"depth":308,"text":46209},{"id":46313,"depth":308,"text":46314},{"id":46340,"depth":308,"text":46341},"https://res.cloudinary.com/denj4fg7f/image/upload/v1769789805/mastering-renderless-components-vue-3_f5mqbs.png","2026-01-30","Explora cómo los Renderless Components en Vue 3 pueden mejorar la reutilización de código y la separación de lógica y presentación en tus aplicaciones.",{"script":46369},[46370],{"type":1632,"key":1633,"data-nuxt-schema-org":327,"nodes":46371},[46372],{"headline":45601,"author":46373,"datePublished":46374,"@type":1640},{"name":1637,"@type":1638},"2026-01-30T17:00:00-05:00",{"updatedAt":46376,"coverCaption":46377,"author":1637,"keywords":46378},"2026-02-11T00:00:00-05:00","Imagen destacada que representa el concepto de Renderless Components en Vue 3.",[13114,45617,46379,46380,45583],"Reutilización de Código","Patrones de Diseño","/blog/mastering-renderless-components-vue-3.es",[46383],{"headline":45601,"author":46384,"datePublished":46374,"@type":1640},{"name":1637,"@type":1638},{"title":45601,"description":46367},"blog/mastering-renderless-components-vue-3.es",[46388,46389,46391,46392,46393,46394],{"tag":1665,"color":1666},{"tag":46380,"color":46390},"#9C27B0",{"tag":1668,"color":1669},{"tag":3167,"color":3168},{"tag":1671,"color":1672},{"tag":45584,"color":46395},"#2196F3","wkBzCTrYSVlz1Kd-5Eu3wdkl3Wa1TA2xf4r2o20kVNU",{"id":46398,"title":46399,"body":46400,"cover":48321,"coverAlt":46399,"date":48322,"description":48323,"draft":1627,"extension":1628,"head":48324,"locale":1641,"meta":48331,"navigation":327,"path":48334,"schemaOrg":48335,"seo":48338,"series":1656,"seriesDescription":1656,"seriesOrder":1656,"seriesTitle":1656,"slug":1656,"stem":48339,"tags":48340,"__hash__":48351},"blog/blog/vue-provide-inject-avoid-prop-drilling.es.md","Provide e Inject en Vue 3: Guía definitiva para eliminar el Prop Drilling",{"type":8,"value":46401,"toc":48306},[46402,46406,46413,46423,46427,46454,46461,46464,46478,46482,46485,46491,46613,46693,46699,46795,46872,46876,46889,46910,46920,46938,46945,46950,47082,47273,47278,47412,47641,47645,47652,47694,47698,47701,47712,47718,47880,47886,48092,48096,48107,48118,48122,48133,48155,48158,48162,48236,48240,48260,48262,48272,48300,48303],[11,46403,46405],{"id":46404},"provide-e-inject-cómo-evitar-el-prop-drilling-en-vuejs","Provide e Inject: Cómo evitar el Prop Drilling en Vue.js",[21,46407,46408,46409,46412],{},"Imagina que en tu proyecto tienes un componente \"Abuelo\" que debe enviar un dato a un componente \"Nieto\". Tradicionalmente, tendrías que pasar ese dato a través del componente \"Padre\", aunque este último no lo utilice para nada. A este fenómeno se le conoce como ",[72,46410,46411],{},"Prop Drilling",", y es una de las principales causas de que el código se vuelva complejo y difícil de mantener.",[21,46414,46415,46418,46419,46422],{},[16,46416,46417],{},"Provide"," e ",[16,46420,46421],{},"Inject"," permiten que un componente ancestro exponga un dato para que cualquier descendiente lo \"atrape\" directamente, sin necesidad de pasarlo manualmente por cada nivel de la jerarquía.",[30,46424,46426],{"id":46425},"problemas-comunes-del-prop-drilling","Problemas comunes del Prop Drilling",[10089,46428,46429,46439,46445],{},[41,46430,46431,46434,46435,46438],{},[72,46432,46433],{},"Mantenimiento costoso:"," Si decides renombrar una ",[16,46436,46437],{},"prop"," o modificar su estructura, debes actualizar cada componente intermedio, incluso si no consumen el dato.",[41,46440,46441,46444],{},[72,46442,46443],{},"Fragilidad:"," Al depender de múltiples niveles de anidamiento, es más fácil romper la cadena de datos por un error en un componente intermedio.",[41,46446,46447,46450,46451,46453],{},[72,46448,46449],{},"Baja Reutilización:"," Los componentes intermedios pierden versatilidad, ya que quedan obligados a recibir y transmitir ",[16,46452,1882],{}," que no pertenecen a su lógica interna.",[30,46455,46457,46458],{"id":46456},"la-solución-nativa-provide-e-inject","La solución nativa: ",[72,46459,46460],{},"Provide e Inject",[21,46462,46463],{},"Vue nos ofrece una solución integrada sin necesidad de recurrir a librerías externas de gestión de estado (como Pinia):",[38,46465,46466,46472],{},[41,46467,46468,46471],{},[72,46469,46470],{},"Provide:"," El componente ancestro define y \"provee\" el dato al árbol de componentes.",[41,46473,46474,46477],{},[72,46475,46476],{},"Inject:"," Cualquier componente descendiente, sin importar su profundidad, \"inyecta\" y consume ese dato.",[30,46479,46481],{"id":46480},"implementación-en-vue-3-composition-api-y-options-api","Implementación en Vue 3 (Composition API y Options API)",[21,46483,46484],{},"Para implementar esta comunicación, seguimos una estructura de clave y valor.",[23924,46486,46488],{"id":46487},"componente-emisor-abuelo",[72,46489,46490],{},"Componente Emisor (Abuelo):",[267,46492,46495],{"className":269,"code":46493,"filename":271,"highlights":46494,"language":272,"meta":273,"style":273},"\u003Cscript setup>\nimport { ref, provide } from 'vue'\nimport Hijo from './Hijo.vue'\n\nconst nombreApp = ref('TODOvue')\n\n// Provee el dato usando una \"clave\" única\nprovide('app-name-key', nombreApp)\n\u003C/script>\n\n\u003Ctemplate>\n  \u003CHijo />\n\u003C/template>\n",[308,381],[16,46496,46497,46507,46519,46531,46535,46553,46557,46562,46576,46584,46588,46596,46605],{"__ignoreMap":273},[277,46498,46499,46501,46503,46505],{"class":279,"line":280},[277,46500,284],{"class":283},[277,46502,288],{"class":287},[277,46504,292],{"class":291},[277,46506,305],{"class":283},[277,46508,46510,46512,46515,46517],{"class":46509,"line":308},[279,9398],[277,46511,312],{"class":311},[277,46513,46514],{"class":283}," { ref, provide } ",[277,46516,318],{"class":311},[277,46518,321],{"class":301},[277,46520,46521,46523,46526,46528],{"class":279,"line":324},[277,46522,312],{"class":311},[277,46524,46525],{"class":283}," Hijo ",[277,46527,318],{"class":311},[277,46529,46530],{"class":301}," './Hijo.vue'\n",[277,46532,46533],{"class":279,"line":331},[277,46534,328],{"emptyLinePlaceholder":327},[277,46536,46537,46539,46542,46544,46546,46548,46551],{"class":279,"line":346},[277,46538,405],{"class":311},[277,46540,46541],{"class":356}," nombreApp",[277,46543,340],{"class":311},[277,46545,413],{"class":291},[277,46547,448],{"class":283},[277,46549,46550],{"class":301},"'TODOvue'",[277,46552,433],{"class":283},[277,46554,46555],{"class":279,"line":360},[277,46556,328],{"emptyLinePlaceholder":327},[277,46558,46559],{"class":279,"line":371},[277,46560,46561],{"class":12741},"// Provee el dato usando una \"clave\" única\n",[277,46563,46565,46568,46570,46573],{"class":46564,"line":381},[279,9398],[277,46566,46567],{"class":291},"provide",[277,46569,448],{"class":283},[277,46571,46572],{"class":301},"'app-name-key'",[277,46574,46575],{"class":283},", nombreApp)\n",[277,46577,46578,46580,46582],{"class":279,"line":391},[277,46579,785],{"class":283},[277,46581,288],{"class":287},[277,46583,305],{"class":283},[277,46585,46586],{"class":279,"line":397},[277,46587,328],{"emptyLinePlaceholder":327},[277,46589,46590,46592,46594],{"class":279,"line":402},[277,46591,284],{"class":283},[277,46593,802],{"class":287},[277,46595,305],{"class":283},[277,46597,46598,46600,46603],{"class":279,"line":436},[277,46599,810],{"class":283},[277,46601,46602],{"class":287},"Hijo",[277,46604,4325],{"class":283},[277,46606,46607,46609,46611],{"class":279,"line":456},[277,46608,785],{"class":283},[277,46610,802],{"class":287},[277,46612,305],{"class":283},[267,46614,46617],{"className":269,"code":46615,"filename":971,"highlights":46616,"language":272,"meta":273,"style":273},"\u003Cscript>\nexport default {\n  provide: {\n    nombreApp : 'TODOvue'\n  }\n}\n\u003C/script>\n\n\u003Ctemplate>\n  \u003CHijo />\n\u003C/template>\n",[324],[16,46618,46619,46627,46635,46641,46649,46653,46657,46665,46669,46677,46685],{"__ignoreMap":273},[277,46620,46621,46623,46625],{"class":279,"line":280},[277,46622,284],{"class":283},[277,46624,288],{"class":287},[277,46626,305],{"class":283},[277,46628,46629,46631,46633],{"class":279,"line":308},[277,46630,1057],{"class":311},[277,46632,1060],{"class":311},[277,46634,343],{"class":283},[277,46636,46638],{"class":46637,"line":324},[279,9398],[277,46639,46640],{"class":283},"  provide: {\n",[277,46642,46643,46646],{"class":279,"line":331},[277,46644,46645],{"class":283},"    nombreApp : ",[277,46647,46648],{"class":301},"'TODOvue'\n",[277,46650,46651],{"class":279,"line":346},[277,46652,542],{"class":283},[277,46654,46655],{"class":279,"line":360},[277,46656,394],{"class":283},[277,46658,46659,46661,46663],{"class":279,"line":371},[277,46660,785],{"class":283},[277,46662,288],{"class":287},[277,46664,305],{"class":283},[277,46666,46667],{"class":279,"line":381},[277,46668,328],{"emptyLinePlaceholder":327},[277,46670,46671,46673,46675],{"class":279,"line":391},[277,46672,284],{"class":283},[277,46674,802],{"class":287},[277,46676,305],{"class":283},[277,46678,46679,46681,46683],{"class":279,"line":397},[277,46680,810],{"class":283},[277,46682,46602],{"class":287},[277,46684,4325],{"class":283},[277,46686,46687,46689,46691],{"class":279,"line":402},[277,46688,785],{"class":283},[277,46690,802],{"class":287},[277,46692,305],{"class":283},[23924,46694,46696],{"id":46695},"componente-receptor-nieto",[72,46697,46698],{},"Componente Receptor (Nieto):",[267,46700,46703],{"className":269,"code":46701,"filename":271,"highlights":46702,"language":272,"meta":273,"style":273},"\u003Cscript setup>\nimport { inject } from 'vue'\n\n// \"Atrapa\" el dato usando la misma clave definida en el ancestro\nconst nombreApp = inject('app-name-key')\n\u003C/script>\n\n\u003Ctemplate>\n  \u003Ch1>{{ nombreApp }}\u003C/h1>\n\u003C/template>\n",[308,346],[16,46704,46705,46715,46727,46731,46736,46754,46762,46766,46774,46787],{"__ignoreMap":273},[277,46706,46707,46709,46711,46713],{"class":279,"line":280},[277,46708,284],{"class":283},[277,46710,288],{"class":287},[277,46712,292],{"class":291},[277,46714,305],{"class":283},[277,46716,46718,46720,46723,46725],{"class":46717,"line":308},[279,9398],[277,46719,312],{"class":311},[277,46721,46722],{"class":283}," { inject } ",[277,46724,318],{"class":311},[277,46726,321],{"class":301},[277,46728,46729],{"class":279,"line":324},[277,46730,328],{"emptyLinePlaceholder":327},[277,46732,46733],{"class":279,"line":331},[277,46734,46735],{"class":12741},"// \"Atrapa\" el dato usando la misma clave definida en el ancestro\n",[277,46737,46739,46741,46743,46745,46748,46750,46752],{"class":46738,"line":346},[279,9398],[277,46740,405],{"class":311},[277,46742,46541],{"class":356},[277,46744,340],{"class":311},[277,46746,46747],{"class":291}," inject",[277,46749,448],{"class":283},[277,46751,46572],{"class":301},[277,46753,433],{"class":283},[277,46755,46756,46758,46760],{"class":279,"line":360},[277,46757,785],{"class":283},[277,46759,288],{"class":287},[277,46761,305],{"class":283},[277,46763,46764],{"class":279,"line":371},[277,46765,328],{"emptyLinePlaceholder":327},[277,46767,46768,46770,46772],{"class":279,"line":381},[277,46769,284],{"class":283},[277,46771,802],{"class":287},[277,46773,305],{"class":283},[277,46775,46776,46778,46780,46783,46785],{"class":279,"line":391},[277,46777,810],{"class":283},[277,46779,11],{"class":287},[277,46781,46782],{"class":283},">{{ nombreApp }}\u003C/",[277,46784,11],{"class":287},[277,46786,305],{"class":283},[277,46788,46789,46791,46793],{"class":279,"line":397},[277,46790,785],{"class":283},[277,46792,802],{"class":287},[277,46794,305],{"class":283},[267,46796,46799],{"className":269,"code":46797,"filename":971,"highlights":46798,"language":272,"meta":273,"style":273},"\u003Cscript>\nexport default {\n  inject: ['nombreApp'],\n}\n\u003C/script>\n\n\u003Ctemplate>\n  \u003Ch1>{{ nombreApp }}\u003C/h1>\n\u003C/template>\n",[324],[16,46800,46801,46809,46817,46828,46832,46840,46844,46852,46864],{"__ignoreMap":273},[277,46802,46803,46805,46807],{"class":279,"line":280},[277,46804,284],{"class":283},[277,46806,288],{"class":287},[277,46808,305],{"class":283},[277,46810,46811,46813,46815],{"class":279,"line":308},[277,46812,1057],{"class":311},[277,46814,1060],{"class":311},[277,46816,343],{"class":283},[277,46818,46820,46823,46826],{"class":46819,"line":324},[279,9398],[277,46821,46822],{"class":283},"  inject: [",[277,46824,46825],{"class":301},"'nombreApp'",[277,46827,30180],{"class":283},[277,46829,46830],{"class":279,"line":331},[277,46831,394],{"class":283},[277,46833,46834,46836,46838],{"class":279,"line":346},[277,46835,785],{"class":283},[277,46837,288],{"class":287},[277,46839,305],{"class":283},[277,46841,46842],{"class":279,"line":360},[277,46843,328],{"emptyLinePlaceholder":327},[277,46845,46846,46848,46850],{"class":279,"line":371},[277,46847,284],{"class":283},[277,46849,802],{"class":287},[277,46851,305],{"class":283},[277,46853,46854,46856,46858,46860,46862],{"class":279,"line":381},[277,46855,810],{"class":283},[277,46857,11],{"class":287},[277,46859,46782],{"class":283},[277,46861,11],{"class":287},[277,46863,305],{"class":283},[277,46865,46866,46868,46870],{"class":279,"line":391},[277,46867,785],{"class":283},[277,46869,802],{"class":287},[277,46871,305],{"class":283},[30,46873,46875],{"id":46874},"el-reto-de-la-reactividad-y-la-seguridad","El reto de la reactividad y la seguridad",[21,46877,46878,46879,9178,46881,46883,46884,46888],{},"Para que los cambios en el dato fluyan correctamente, debemos pasar un ",[16,46880,1927],{},[16,46882,12319],{},". Si quieres profundizar más sobre cómo funciona la reactividad en Vue 3, puedes consultar nuestra entrada ",[13178,46885,46887],{"href":46886},"/blog/vue-reactivity-explained.es/","¿Qué es la reactividad? La magia detrás de Vue.js explicada con claridad",". Sin embargo, esto introduce un riesgo: un componente hijo podría intentar modificar el valor directamente.",[267,46890,46893],{"className":46114,"code":46891,"filename":46892,"language":46118,"meta":273,"style":273},"// ¡Peligro! Modificar el estado desde un hijo dificulta la depuración\nidioma.value = 'en'\n","inject-example.js",[16,46894,46895,46900],{"__ignoreMap":273},[277,46896,46897],{"class":279,"line":280},[277,46898,46899],{"class":12741},"// ¡Peligro! Modificar el estado desde un hijo dificulta la depuración\n",[277,46901,46902,46905,46907],{"class":279,"line":308},[277,46903,46904],{"class":283},"idioma.value ",[277,46906,298],{"class":311},[277,46908,46909],{"class":301}," 'en'\n",[21,46911,46912,46913,46916,46917,353],{},"Si cualquier componente puede alterar el estado inyectado, perdemos el rastro de ",[72,46914,46915],{},"quién, cuándo y por qué"," cambió el dato. Para solucionar esto, aplicamos el patrón de ",[72,46918,46919],{},"Inyección de Solo Lectura",[10089,46921,46922,46932],{},[41,46923,46924,46927,46928,46931],{},[72,46925,46926],{},"El dato:"," Se protege con ",[16,46929,46930],{},"readonly()"," para evitar modificaciones accidentales.",[41,46933,46934,46937],{},[72,46935,46936],{},"La función:"," Se provee una función específica para realizar el cambio, centralizando la lógica en el ancestro.",[30,46939,46941,46942],{"id":46940},"ejemplo-de-uso-correcto-con-readonly","Ejemplo de uso correcto con ",[16,46943,46944],{},"readonly",[23924,46946,46948],{"id":46947},"componente-emisor-abuelo-1",[72,46949,46490],{},[267,46951,46954],{"className":269,"code":46952,"filename":271,"highlights":46953,"language":272,"meta":273,"style":273},"\u003Cscript setup>\nimport { ref, provide, readonly } from 'vue'\n\nconst idioma = ref('es')\nconst cambiarIdioma = (nuevo) => {\n  idioma.value = nuevo\n}\n\nprovide('config-idioma', {\n  idioma: readonly(idioma), // Protegemos el estado\n  cambiarIdioma             // Exponemos la vía de modificación\n})\n\u003C/script>\n",[397],[16,46955,46956,46966,46977,46981,46999,47019,47029,47033,47037,47048,47062,47070,47074],{"__ignoreMap":273},[277,46957,46958,46960,46962,46964],{"class":279,"line":280},[277,46959,284],{"class":283},[277,46961,288],{"class":287},[277,46963,292],{"class":291},[277,46965,305],{"class":283},[277,46967,46968,46970,46973,46975],{"class":279,"line":308},[277,46969,312],{"class":311},[277,46971,46972],{"class":283}," { ref, provide, readonly } ",[277,46974,318],{"class":311},[277,46976,321],{"class":301},[277,46978,46979],{"class":279,"line":324},[277,46980,328],{"emptyLinePlaceholder":327},[277,46982,46983,46985,46988,46990,46992,46994,46997],{"class":279,"line":331},[277,46984,405],{"class":311},[277,46986,46987],{"class":356}," idioma",[277,46989,340],{"class":311},[277,46991,413],{"class":291},[277,46993,448],{"class":283},[277,46995,46996],{"class":301},"'es'",[277,46998,433],{"class":283},[277,47000,47001,47003,47006,47008,47010,47013,47015,47017],{"class":279,"line":346},[277,47002,405],{"class":311},[277,47004,47005],{"class":291}," cambiarIdioma",[277,47007,340],{"class":311},[277,47009,511],{"class":283},[277,47011,47012],{"class":349},"nuevo",[277,47014,2340],{"class":283},[277,47016,601],{"class":311},[277,47018,343],{"class":283},[277,47020,47021,47024,47026],{"class":279,"line":360},[277,47022,47023],{"class":283},"  idioma.value ",[277,47025,298],{"class":311},[277,47027,47028],{"class":283}," nuevo\n",[277,47030,47031],{"class":279,"line":371},[277,47032,394],{"class":283},[277,47034,47035],{"class":279,"line":381},[277,47036,328],{"emptyLinePlaceholder":327},[277,47038,47039,47041,47043,47046],{"class":279,"line":391},[277,47040,46567],{"class":291},[277,47042,448],{"class":283},[277,47044,47045],{"class":301},"'config-idioma'",[277,47047,2360],{"class":283},[277,47049,47051,47054,47056,47059],{"class":47050,"line":397},[279,9398],[277,47052,47053],{"class":283},"  idioma: ",[277,47055,46944],{"class":291},[277,47057,47058],{"class":283},"(idioma), ",[277,47060,47061],{"class":12741},"// Protegemos el estado\n",[277,47063,47064,47067],{"class":279,"line":402},[277,47065,47066],{"class":283},"  cambiarIdioma             ",[277,47068,47069],{"class":12741},"// Exponemos la vía de modificación\n",[277,47071,47072],{"class":279,"line":436},[277,47073,676],{"class":283},[277,47075,47076,47078,47080],{"class":279,"line":456},[277,47077,785],{"class":283},[277,47079,288],{"class":287},[277,47081,305],{"class":283},[267,47083,47086],{"className":269,"code":47084,"filename":971,"highlights":47085,"language":272,"meta":273,"style":273},"\u003Cscript>\nimport { computed } from 'vue'\n\nexport default {\n  data() {\n    return {\n      idioma: 'es'\n    }\n  },\n    methods: {\n      cambiarIdioma(nuevo) {\n        this.idioma = nuevo\n      }\n  },\n  provide() {\n    return {\n      // IMPORTANTE: En Options API, 'provide' se evalúa una sola vez.\n      // Para mantener reactividad, envolvemos el valor con computed()\n      // que crea una función getter que Vue reevalúa automáticamente\n      'config-idioma': {\n        // Usamos computed para que el hijo vea los cambios de this.idioma\n        idioma: computed(() => this.idioma),\n        cambiarIdioma: this.cambiarIdioma\n      }\n    }\n  }\n}\n\u003C/script>\n",[583],[16,47087,47088,47096,47107,47111,47119,47125,47131,47139,47143,47147,47151,47162,47173,47177,47181,47188,47194,47199,47204,47209,47217,47222,47238,47249,47253,47257,47261,47265],{"__ignoreMap":273},[277,47089,47090,47092,47094],{"class":279,"line":280},[277,47091,284],{"class":283},[277,47093,288],{"class":287},[277,47095,305],{"class":283},[277,47097,47098,47100,47103,47105],{"class":279,"line":308},[277,47099,312],{"class":311},[277,47101,47102],{"class":283}," { computed } ",[277,47104,318],{"class":311},[277,47106,321],{"class":301},[277,47108,47109],{"class":279,"line":324},[277,47110,328],{"emptyLinePlaceholder":327},[277,47112,47113,47115,47117],{"class":279,"line":331},[277,47114,1057],{"class":311},[277,47116,1060],{"class":311},[277,47118,343],{"class":283},[277,47120,47121,47123],{"class":279,"line":346},[277,47122,1086],{"class":291},[277,47124,473],{"class":283},[277,47126,47127,47129],{"class":279,"line":360},[277,47128,1093],{"class":311},[277,47130,343],{"class":283},[277,47132,47133,47136],{"class":279,"line":371},[277,47134,47135],{"class":283},"      idioma: ",[277,47137,47138],{"class":301},"'es'\n",[277,47140,47141],{"class":279,"line":381},[277,47142,1126],{"class":283},[277,47144,47145],{"class":279,"line":391},[277,47146,1131],{"class":283},[277,47148,47149],{"class":279,"line":397},[277,47150,45871],{"class":283},[277,47152,47153,47156,47158,47160],{"class":279,"line":402},[277,47154,47155],{"class":291},"      cambiarIdioma",[277,47157,448],{"class":283},[277,47159,47012],{"class":349},[277,47161,2476],{"class":283},[277,47163,47164,47166,47169,47171],{"class":279,"line":436},[277,47165,8819],{"class":356},[277,47167,47168],{"class":283},".idioma ",[277,47170,298],{"class":311},[277,47172,47028],{"class":283},[277,47174,47175],{"class":279,"line":456},[277,47176,1203],{"class":283},[277,47178,47179],{"class":279,"line":461},[277,47180,1131],{"class":283},[277,47182,47183,47186],{"class":279,"line":476},[277,47184,47185],{"class":291},"  provide",[277,47187,473],{"class":283},[277,47189,47190,47192],{"class":279,"line":500},[277,47191,1093],{"class":311},[277,47193,343],{"class":283},[277,47195,47196],{"class":279,"line":505},[277,47197,47198],{"class":12741},"      // IMPORTANTE: En Options API, 'provide' se evalúa una sola vez.\n",[277,47200,47201],{"class":279,"line":520},[277,47202,47203],{"class":12741},"      // Para mantener reactividad, envolvemos el valor con computed()\n",[277,47205,47206],{"class":279,"line":539},[277,47207,47208],{"class":12741},"      // que crea una función getter que Vue reevalúa automáticamente\n",[277,47210,47211,47214],{"class":279,"line":545},[277,47212,47213],{"class":301},"      'config-idioma'",[277,47215,47216],{"class":283},": {\n",[277,47218,47219],{"class":279,"line":550},[277,47220,47221],{"class":12741},"        // Usamos computed para que el hijo vea los cambios de this.idioma\n",[277,47223,47224,47227,47229,47231,47233,47235],{"class":279,"line":578},[277,47225,47226],{"class":283},"        idioma: ",[277,47228,1732],{"class":291},[277,47230,2203],{"class":283},[277,47232,601],{"class":311},[277,47234,1268],{"class":356},[277,47236,47237],{"class":283},".idioma),\n",[277,47239,47241,47244,47246],{"class":47240,"line":583},[279,9398],[277,47242,47243],{"class":283},"        cambiarIdioma: ",[277,47245,1341],{"class":356},[277,47247,47248],{"class":283},".cambiarIdioma\n",[277,47250,47251],{"class":279,"line":588},[277,47252,1203],{"class":283},[277,47254,47255],{"class":279,"line":606},[277,47256,1126],{"class":283},[277,47258,47259],{"class":279,"line":614},[277,47260,542],{"class":283},[277,47262,47263],{"class":279,"line":625},[277,47264,394],{"class":283},[277,47266,47267,47269,47271],{"class":279,"line":637},[277,47268,785],{"class":283},[277,47270,288],{"class":287},[277,47272,305],{"class":283},[23924,47274,47276],{"id":47275},"componente-receptor-nieto-1",[72,47277,46698],{},[267,47279,47282],{"className":269,"code":47280,"filename":271,"highlights":47281,"language":272,"meta":273,"style":273},"\u003Cscript setup>\nimport { inject } from 'vue'\n\nconst { idioma, cambiarIdioma } = inject('config-idioma')\n\u003C/script>\n\n\u003Ctemplate>\n  \u003Cdiv>\n    \u003Cp>Idioma actual: {{ idioma }}\u003C/p>\n    \u003Cbutton @click=\"cambiarIdioma('en')\">Cambiar a Inglés\u003C/button>\n  \u003C/div>\n\u003C/template>\n",[331],[16,47283,47284,47294,47304,47308,47335,47343,47347,47355,47363,47376,47396,47404],{"__ignoreMap":273},[277,47285,47286,47288,47290,47292],{"class":279,"line":280},[277,47287,284],{"class":283},[277,47289,288],{"class":287},[277,47291,292],{"class":291},[277,47293,305],{"class":283},[277,47295,47296,47298,47300,47302],{"class":279,"line":308},[277,47297,312],{"class":311},[277,47299,46722],{"class":283},[277,47301,318],{"class":311},[277,47303,321],{"class":301},[277,47305,47306],{"class":279,"line":324},[277,47307,328],{"emptyLinePlaceholder":327},[277,47309,47311,47313,47315,47318,47320,47323,47325,47327,47329,47331,47333],{"class":47310,"line":331},[279,9398],[277,47312,405],{"class":311},[277,47314,5995],{"class":283},[277,47316,47317],{"class":356},"idioma",[277,47319,225],{"class":283},[277,47321,47322],{"class":356},"cambiarIdioma",[277,47324,17506],{"class":283},[277,47326,298],{"class":311},[277,47328,46747],{"class":291},[277,47330,448],{"class":283},[277,47332,47045],{"class":301},[277,47334,433],{"class":283},[277,47336,47337,47339,47341],{"class":279,"line":346},[277,47338,785],{"class":283},[277,47340,288],{"class":287},[277,47342,305],{"class":283},[277,47344,47345],{"class":279,"line":360},[277,47346,328],{"emptyLinePlaceholder":327},[277,47348,47349,47351,47353],{"class":279,"line":371},[277,47350,284],{"class":283},[277,47352,802],{"class":287},[277,47354,305],{"class":283},[277,47356,47357,47359,47361],{"class":279,"line":381},[277,47358,810],{"class":283},[277,47360,4201],{"class":287},[277,47362,305],{"class":283},[277,47364,47365,47367,47369,47372,47374],{"class":279,"line":391},[277,47366,829],{"class":283},[277,47368,21],{"class":287},[277,47370,47371],{"class":283},">Idioma actual: {{ idioma }}\u003C/",[277,47373,21],{"class":287},[277,47375,305],{"class":283},[277,47377,47378,47380,47382,47384,47386,47389,47392,47394],{"class":279,"line":397},[277,47379,829],{"class":283},[277,47381,4267],{"class":287},[277,47383,4278],{"class":291},[277,47385,298],{"class":283},[277,47387,47388],{"class":301},"\"cambiarIdioma('en')\"",[277,47390,47391],{"class":283},">Cambiar a Inglés\u003C/",[277,47393,4267],{"class":287},[277,47395,305],{"class":283},[277,47397,47398,47400,47402],{"class":279,"line":402},[277,47399,954],{"class":283},[277,47401,4201],{"class":287},[277,47403,305],{"class":283},[277,47405,47406,47408,47410],{"class":279,"line":436},[277,47407,785],{"class":283},[277,47409,802],{"class":287},[277,47411,305],{"class":283},[267,47413,47416],{"className":269,"code":47414,"filename":971,"highlights":47415,"language":272,"meta":273,"style":273},"\u003Cscript>\nexport default {\n  inject: {\n    configIdioma: {\n      from: 'config-idioma',\n      default: () => ({\n        idioma: { value: 'es' },\n        cambiarIdioma: () => {}\n      })\n    }\n  },\n  computed: {\n    idiomaActual() {\n      return this.configIdioma.idioma.value\n    }\n  },\n  methods: {\n    cambiarAIngles() {\n      this.configIdioma.cambiarIdioma('en')\n    }\n  }\n}\n\u003C/script>\n\n\u003Ctemplate>\n  \u003Cdiv>\n    \u003Cp>Idioma actual: {{ idiomaActual }}\u003C/p>\n    \u003Cbutton @click=\"cambiarAIngles\">Cambiar a Inglés\u003C/button>\n  \u003C/div>\n\u003C/template>\n",[371,461],[16,47417,47418,47426,47434,47439,47444,47453,47464,47474,47485,47489,47493,47497,47501,47508,47518,47522,47526,47530,47537,47553,47557,47561,47565,47573,47577,47585,47593,47606,47625,47633],{"__ignoreMap":273},[277,47419,47420,47422,47424],{"class":279,"line":280},[277,47421,284],{"class":283},[277,47423,288],{"class":287},[277,47425,305],{"class":283},[277,47427,47428,47430,47432],{"class":279,"line":308},[277,47429,1057],{"class":311},[277,47431,1060],{"class":311},[277,47433,343],{"class":283},[277,47435,47436],{"class":279,"line":324},[277,47437,47438],{"class":283},"  inject: {\n",[277,47440,47441],{"class":279,"line":331},[277,47442,47443],{"class":283},"    configIdioma: {\n",[277,47445,47446,47449,47451],{"class":279,"line":346},[277,47447,47448],{"class":283},"      from: ",[277,47450,47045],{"class":301},[277,47452,1077],{"class":283},[277,47454,47455,47458,47460,47462],{"class":279,"line":360},[277,47456,47457],{"class":291},"      default",[277,47459,3790],{"class":283},[277,47461,601],{"class":311},[277,47463,36126],{"class":283},[277,47465,47467,47470,47472],{"class":47466,"line":371},[279,9398],[277,47468,47469],{"class":283},"        idioma: { value: ",[277,47471,46996],{"class":301},[277,47473,2132],{"class":283},[277,47475,47476,47479,47481,47483],{"class":279,"line":381},[277,47477,47478],{"class":291},"        cambiarIdioma",[277,47480,3790],{"class":283},[277,47482,601],{"class":311},[277,47484,45181],{"class":283},[277,47486,47487],{"class":279,"line":391},[277,47488,2853],{"class":283},[277,47490,47491],{"class":279,"line":397},[277,47492,1126],{"class":283},[277,47494,47495],{"class":279,"line":402},[277,47496,1131],{"class":283},[277,47498,47499],{"class":279,"line":436},[277,47500,2742],{"class":283},[277,47502,47503,47506],{"class":279,"line":456},[277,47504,47505],{"class":291},"    idiomaActual",[277,47507,473],{"class":283},[277,47509,47511,47513,47515],{"class":47510,"line":461},[279,9398],[277,47512,2754],{"class":311},[277,47514,1268],{"class":356},[277,47516,47517],{"class":283},".configIdioma.idioma.value\n",[277,47519,47520],{"class":279,"line":476},[277,47521,1126],{"class":283},[277,47523,47524],{"class":279,"line":500},[277,47525,1131],{"class":283},[277,47527,47528],{"class":279,"line":505},[277,47529,1140],{"class":283},[277,47531,47532,47535],{"class":279,"line":520},[277,47533,47534],{"class":291},"    cambiarAIngles",[277,47536,473],{"class":283},[277,47538,47539,47541,47544,47546,47548,47551],{"class":279,"line":539},[277,47540,1212],{"class":356},[277,47542,47543],{"class":283},".configIdioma.",[277,47545,47322],{"class":291},[277,47547,448],{"class":283},[277,47549,47550],{"class":301},"'en'",[277,47552,433],{"class":283},[277,47554,47555],{"class":279,"line":545},[277,47556,1126],{"class":283},[277,47558,47559],{"class":279,"line":550},[277,47560,542],{"class":283},[277,47562,47563],{"class":279,"line":578},[277,47564,394],{"class":283},[277,47566,47567,47569,47571],{"class":279,"line":583},[277,47568,785],{"class":283},[277,47570,288],{"class":287},[277,47572,305],{"class":283},[277,47574,47575],{"class":279,"line":588},[277,47576,328],{"emptyLinePlaceholder":327},[277,47578,47579,47581,47583],{"class":279,"line":606},[277,47580,284],{"class":283},[277,47582,802],{"class":287},[277,47584,305],{"class":283},[277,47586,47587,47589,47591],{"class":279,"line":614},[277,47588,810],{"class":283},[277,47590,4201],{"class":287},[277,47592,305],{"class":283},[277,47594,47595,47597,47599,47602,47604],{"class":279,"line":625},[277,47596,829],{"class":283},[277,47598,21],{"class":287},[277,47600,47601],{"class":283},">Idioma actual: {{ idiomaActual }}\u003C/",[277,47603,21],{"class":287},[277,47605,305],{"class":283},[277,47607,47608,47610,47612,47614,47616,47619,47621,47623],{"class":279,"line":637},[277,47609,829],{"class":283},[277,47611,4267],{"class":287},[277,47613,4278],{"class":291},[277,47615,298],{"class":283},[277,47617,47618],{"class":301},"\"cambiarAIngles\"",[277,47620,47391],{"class":283},[277,47622,4267],{"class":287},[277,47624,305],{"class":283},[277,47626,47627,47629,47631],{"class":279,"line":646},[277,47628,954],{"class":283},[277,47630,4201],{"class":287},[277,47632,305],{"class":283},[277,47634,47635,47637,47639],{"class":279,"line":668},[277,47636,785],{"class":283},[277,47638,802],{"class":287},[277,47640,305],{"class":283},[30,47642,47644],{"id":47643},"manejo-de-valores-por-defecto","Manejo de valores por defecto",[21,47646,47647,47648,47651],{},"Para hacer tus componentes más robustos, puedes definir un valor por defecto en el ",[16,47649,47650],{},"inject",". Si el componente se usa fuera de un árbol que provea la clave, evitarás errores de ejecución:",[267,47653,47657],{"className":46114,"code":47654,"filename":47655,"highlights":47656,"language":46118,"meta":273,"style":273},"// Si no encuentra 'user-data', usará el objeto por defecto\nconst usuario = inject('user-data', { nombre: 'Invitado', premium: false })\n","inject-default.js",[308],[16,47658,47659,47664],{"__ignoreMap":273},[277,47660,47661],{"class":279,"line":280},[277,47662,47663],{"class":12741},"// Si no encuentra 'user-data', usará el objeto por defecto\n",[277,47665,47667,47669,47672,47674,47676,47678,47681,47684,47687,47690,47692],{"class":47666,"line":308},[279,9398],[277,47668,405],{"class":311},[277,47670,47671],{"class":356}," usuario",[277,47673,340],{"class":311},[277,47675,46747],{"class":291},[277,47677,448],{"class":283},[277,47679,47680],{"class":301},"'user-data'",[277,47682,47683],{"class":283},", { nombre: ",[277,47685,47686],{"class":301},"'Invitado'",[277,47688,47689],{"class":283},", premium: ",[277,47691,2123],{"class":356},[277,47693,16886],{"class":283},[30,47695,47697],{"id":47696},"provideinject-a-nivel-de-aplicación","Provide/Inject a nivel de aplicación",[21,47699,47700],{},"Además de usarlo entre componentes, puedes definir valores globales directamente en la instancia de la aplicación. Esto es útil para:",[38,47702,47703,47706,47709],{},[41,47704,47705],{},"Configuración de la aplicación (URL de API, claves de servicios)",[41,47707,47708],{},"Temas o preferencias globales",[41,47710,47711],{},"Plugins o utilidades compartidas",[23924,47713,47715],{"id":47714},"implementación",[72,47716,47717],{},"Implementación:",[267,47719,47722],{"className":46114,"code":47720,"filename":19438,"highlights":47721,"language":46118,"meta":273,"style":273},"import { createApp } from 'vue'\nimport App from './App.vue'\n\nconst app = createApp(App)\n\n// Provee valores globales disponibles en toda la aplicación\napp.provide('api-url', 'https://api.ejemplo.com')\napp.provide('theme', 'dark')\napp.provide('analytics', {\n  trackEvent: (eventName) => {\n    console.log(`Evento: ${eventName}`)\n  }\n})\n\napp.mount('#app')\n",[371,381],[16,47723,47724,47734,47744,47748,47760,47764,47769,47788,47807,47820,47837,47854,47858,47862,47866],{"__ignoreMap":273},[277,47725,47726,47728,47730,47732],{"class":279,"line":280},[277,47727,312],{"class":311},[277,47729,45405],{"class":283},[277,47731,318],{"class":311},[277,47733,321],{"class":301},[277,47735,47736,47738,47740,47742],{"class":279,"line":308},[277,47737,312],{"class":311},[277,47739,45416],{"class":283},[277,47741,318],{"class":311},[277,47743,45421],{"class":301},[277,47745,47746],{"class":279,"line":324},[277,47747,328],{"emptyLinePlaceholder":327},[277,47749,47750,47752,47754,47756,47758],{"class":279,"line":331},[277,47751,405],{"class":311},[277,47753,45428],{"class":356},[277,47755,340],{"class":311},[277,47757,45433],{"class":291},[277,47759,45436],{"class":283},[277,47761,47762],{"class":279,"line":346},[277,47763,328],{"emptyLinePlaceholder":327},[277,47765,47766],{"class":279,"line":360},[277,47767,47768],{"class":12741},"// Provee valores globales disponibles en toda la aplicación\n",[277,47770,47772,47774,47776,47778,47781,47783,47786],{"class":47771,"line":371},[279,9398],[277,47773,45442],{"class":283},[277,47775,46567],{"class":291},[277,47777,448],{"class":283},[277,47779,47780],{"class":301},"'api-url'",[277,47782,225],{"class":283},[277,47784,47785],{"class":301},"'https://api.ejemplo.com'",[277,47787,433],{"class":283},[277,47789,47791,47793,47795,47797,47800,47802,47805],{"class":47790,"line":381},[279,9398],[277,47792,45442],{"class":283},[277,47794,46567],{"class":291},[277,47796,448],{"class":283},[277,47798,47799],{"class":301},"'theme'",[277,47801,225],{"class":283},[277,47803,47804],{"class":301},"'dark'",[277,47806,433],{"class":283},[277,47808,47809,47811,47813,47815,47818],{"class":279,"line":391},[277,47810,45442],{"class":283},[277,47812,46567],{"class":291},[277,47814,448],{"class":283},[277,47816,47817],{"class":301},"'analytics'",[277,47819,2360],{"class":283},[277,47821,47822,47825,47828,47831,47833,47835],{"class":279,"line":397},[277,47823,47824],{"class":291},"  trackEvent",[277,47826,47827],{"class":283},": (",[277,47829,47830],{"class":349},"eventName",[277,47832,2340],{"class":283},[277,47834,601],{"class":311},[277,47836,343],{"class":283},[277,47838,47839,47841,47843,47845,47848,47850,47852],{"class":279,"line":402},[277,47840,2881],{"class":283},[277,47842,2352],{"class":291},[277,47844,448],{"class":283},[277,47846,47847],{"class":301},"`Evento: ${",[277,47849,47830],{"class":283},[277,47851,3888],{"class":301},[277,47853,433],{"class":283},[277,47855,47856],{"class":279,"line":436},[277,47857,542],{"class":283},[277,47859,47860],{"class":279,"line":456},[277,47861,676],{"class":283},[277,47863,47864],{"class":279,"line":461},[277,47865,328],{"emptyLinePlaceholder":327},[277,47867,47868,47870,47873,47875,47878],{"class":279,"line":476},[277,47869,45442],{"class":283},[277,47871,47872],{"class":291},"mount",[277,47874,448],{"class":283},[277,47876,47877],{"class":301},"'#app'",[277,47879,433],{"class":283},[23924,47881,47883],{"id":47882},"consumiendo-en-cualquier-componente",[72,47884,47885],{},"Consumiendo en cualquier componente:",[267,47887,47891],{"className":269,"code":47888,"filename":47889,"highlights":47890,"language":272,"meta":273,"style":273},"\u003Cscript setup>\nimport { inject } from 'vue'\n\nconst apiUrl = inject('api-url')\nconst theme = inject('theme')\nconst analytics = inject('analytics')\n\nconst handleClick = () => {\n  analytics.trackEvent('button-click')\n}\n\u003C/script>\n\n\u003Ctemplate>\n  \u003Cdiv :class=\"`theme-${theme}`\">\n    \u003Cp>API Base: {{ apiUrl }}\u003C/p>\n    \u003Cbutton @click=\"handleClick\">Hacer clic\u003C/button>\n  \u003C/div>\n\u003C/template>\n","SomeComponent.vue",[331,346],[16,47892,47893,47903,47913,47917,47935,47953,47970,47974,47989,48004,48008,48016,48020,48028,48043,48056,48076,48084],{"__ignoreMap":273},[277,47894,47895,47897,47899,47901],{"class":279,"line":280},[277,47896,284],{"class":283},[277,47898,288],{"class":287},[277,47900,292],{"class":291},[277,47902,305],{"class":283},[277,47904,47905,47907,47909,47911],{"class":279,"line":308},[277,47906,312],{"class":311},[277,47908,46722],{"class":283},[277,47910,318],{"class":311},[277,47912,321],{"class":301},[277,47914,47915],{"class":279,"line":324},[277,47916,328],{"emptyLinePlaceholder":327},[277,47918,47920,47922,47925,47927,47929,47931,47933],{"class":47919,"line":331},[279,9398],[277,47921,405],{"class":311},[277,47923,47924],{"class":356}," apiUrl",[277,47926,340],{"class":311},[277,47928,46747],{"class":291},[277,47930,448],{"class":283},[277,47932,47780],{"class":301},[277,47934,433],{"class":283},[277,47936,47938,47940,47943,47945,47947,47949,47951],{"class":47937,"line":346},[279,9398],[277,47939,405],{"class":311},[277,47941,47942],{"class":356}," theme",[277,47944,340],{"class":311},[277,47946,46747],{"class":291},[277,47948,448],{"class":283},[277,47950,47799],{"class":301},[277,47952,433],{"class":283},[277,47954,47955,47957,47960,47962,47964,47966,47968],{"class":279,"line":360},[277,47956,405],{"class":311},[277,47958,47959],{"class":356}," analytics",[277,47961,340],{"class":311},[277,47963,46747],{"class":291},[277,47965,448],{"class":283},[277,47967,47817],{"class":301},[277,47969,433],{"class":283},[277,47971,47972],{"class":279,"line":371},[277,47973,328],{"emptyLinePlaceholder":327},[277,47975,47976,47978,47981,47983,47985,47987],{"class":279,"line":381},[277,47977,405],{"class":311},[277,47979,47980],{"class":291}," handleClick",[277,47982,340],{"class":311},[277,47984,598],{"class":283},[277,47986,601],{"class":311},[277,47988,343],{"class":283},[277,47990,47991,47994,47997,47999,48002],{"class":279,"line":391},[277,47992,47993],{"class":283},"  analytics.",[277,47995,47996],{"class":291},"trackEvent",[277,47998,448],{"class":283},[277,48000,48001],{"class":301},"'button-click'",[277,48003,433],{"class":283},[277,48005,48006],{"class":279,"line":397},[277,48007,394],{"class":283},[277,48009,48010,48012,48014],{"class":279,"line":402},[277,48011,785],{"class":283},[277,48013,288],{"class":287},[277,48015,305],{"class":283},[277,48017,48018],{"class":279,"line":436},[277,48019,328],{"emptyLinePlaceholder":327},[277,48021,48022,48024,48026],{"class":279,"line":456},[277,48023,284],{"class":283},[277,48025,802],{"class":287},[277,48027,305],{"class":283},[277,48029,48030,48032,48034,48036,48038,48041],{"class":279,"line":461},[277,48031,810],{"class":283},[277,48033,4201],{"class":287},[277,48035,36352],{"class":291},[277,48037,298],{"class":283},[277,48039,48040],{"class":301},"\"`theme-${theme}`\"",[277,48042,305],{"class":283},[277,48044,48045,48047,48049,48052,48054],{"class":279,"line":476},[277,48046,829],{"class":283},[277,48048,21],{"class":287},[277,48050,48051],{"class":283},">API Base: {{ apiUrl }}\u003C/",[277,48053,21],{"class":287},[277,48055,305],{"class":283},[277,48057,48058,48060,48062,48064,48066,48069,48072,48074],{"class":279,"line":500},[277,48059,829],{"class":283},[277,48061,4267],{"class":287},[277,48063,4278],{"class":291},[277,48065,298],{"class":283},[277,48067,48068],{"class":301},"\"handleClick\"",[277,48070,48071],{"class":283},">Hacer clic\u003C/",[277,48073,4267],{"class":287},[277,48075,305],{"class":283},[277,48077,48078,48080,48082],{"class":279,"line":505},[277,48079,954],{"class":283},[277,48081,4201],{"class":287},[277,48083,305],{"class":283},[277,48085,48086,48088,48090],{"class":279,"line":520},[277,48087,785],{"class":283},[277,48089,802],{"class":287},[277,48091,305],{"class":283},[23924,48093,48095],{"id":48094},"ventajas","Ventajas",[38,48097,48098,48101,48104],{},[41,48099,48100],{},"No necesitas crear un componente raíz solo para proveer valores",[41,48102,48103],{},"Ideal para configuraciones que no cambian durante la vida de la aplicación",[41,48105,48106],{},"Simplifica el testing al poder sobrescribir estos valores fácilmente",[3111,48108,48109],{},[21,48110,48111,48114,48115,104],{},[72,48112,48113],{},"Nota:"," Para valores reactivos a nivel de aplicación que cambien frecuentemente, considera usar Pinia en lugar de ",[16,48116,48117],{},"app.provide()",[30,48119,48121],{"id":48120},"bajo-el-capó-cómo-funciona","Bajo el capó: ¿Cómo funciona?",[21,48123,48124,48125,48128,48129,48132],{},"La eficiencia de ",[16,48126,48127],{},"provide/inject"," radica en que utiliza la ",[72,48130,48131],{},"cadena de prototipos"," de JavaScript.",[10089,48134,48135,48150],{},[41,48136,48137,48139,48140,48143,48144,48146,48147,104],{},[72,48138,46470],{}," Cuando un componente provee algo, Vue crea un nuevo objeto ",[16,48141,48142],{},"provides"," para ese componente que hereda del objeto ",[16,48145,48142],{}," de su padre mediante ",[16,48148,48149],{},"Object.create()",[41,48151,48152,48154],{},[72,48153,46476],{}," Vue simplemente busca la clave en el objeto. Si no está en el padre inmediato, el motor de JavaScript sube por la cadena de prototipos hasta encontrarlo o llegar al final.",[21,48156,48157],{},"Esta arquitectura permite que un hijo \"sobrescriba\" un valor para sus propios descendientes sin afectar a sus hermanos o ancestros, garantizando un aislamiento total.",[30,48159,48161],{"id":48160},"resumen-de-capacidades","Resumen de capacidades",[5392,48163,48164,48176],{},[5395,48165,48166],{},[5398,48167,48168,48170,48173],{},[5401,48169,46228],{},[5401,48171,48172],{},"Nivel Básico",[5401,48174,48175],{},"Nivel Profesional",[5414,48177,48178,48191,48207,48220],{},[5398,48179,48180,48185,48188],{},[5419,48181,48182],{},[72,48183,48184],{},"Flujo",[5419,48186,48187],{},"Pasar datos de A a B",[5419,48189,48190],{},"Arquitectura de estado jerárquico",[5398,48192,48193,48198,48201],{},[5419,48194,48195],{},[72,48196,48197],{},"Seguridad",[5419,48199,48200],{},"Datos mutables (riesgoso)",[5419,48202,48203,48204,48206],{},"Uso de ",[16,48205,46930],{}," para proteger el estado",[5398,48208,48209,48214,48217],{},[5419,48210,48211],{},[72,48212,48213],{},"Robustez",[5419,48215,48216],{},"Puede fallar si falta la clave",[5419,48218,48219],{},"Uso de valores por defecto",[5398,48221,48222,48227,48230],{},[5419,48223,48224],{},[72,48225,48226],{},"Alcance",[5419,48228,48229],{},"Entre componentes locales",[5419,48231,48232,48233],{},"Configuración global a nivel de ",[16,48234,48235],{},"app",[30,48237,48239],{"id":48238},"cuándo-no-usar-provideinject","Cuándo NO usar Provide/Inject",[38,48241,48242,48248,48254],{},[41,48243,48244,48247],{},[72,48245,48246],{},"Para estado global complejo:"," Usa Pinia o Vuex",[41,48249,48250,48253],{},[72,48251,48252],{},"Para comunicación entre hermanos:"," Usa composables o el patrón Event Bus",[41,48255,48256,48259],{},[72,48257,48258],{},"Para estado simple de 2 niveles:"," Las props son más explícitas y fáciles de seguir",[30,48261,17671],{"id":17670},[21,48263,48264,46418,48266,48268,48269,48271],{},[16,48265,46417],{},[16,48267,47650],{}," son herramientas poderosas que, usadas correctamente, eliminan el ",[72,48270,46411],{}," sin comprometer la mantenibilidad del código. La clave está en:",[10089,48273,48274,48282,48288,48294],{},[41,48275,48276,48279,48280],{},[72,48277,48278],{},"Proteger el estado"," con ",[16,48281,46930],{},[41,48283,48284,48287],{},[72,48285,48286],{},"Proveer funciones"," para modificarlo de forma controlada",[41,48289,48290,48293],{},[72,48291,48292],{},"Definir valores por defecto"," para mayor robustez",[41,48295,48296,48299],{},[72,48297,48298],{},"Usarlo en el nivel adecuado:"," componentes para estado jerárquico, Pinia para estado global complejo",[21,48301,48302],{},"Dominar este patrón te permitirá construir aplicaciones Vue más escalables y fáciles de mantener.",[1606,48304,48305],{},"html pre.shiki code .sVt8B, html code.shiki .sVt8B{--shiki-default:#24292E;--shiki-dark:#E1E4E8}html pre.shiki code .s9eBZ, html code.shiki .s9eBZ{--shiki-default:#22863A;--shiki-dark:#85E89D}html pre.shiki code .sScJk, html code.shiki .sScJk{--shiki-default:#6F42C1;--shiki-dark:#B392F0}html pre.shiki code .szBVR, html code.shiki .szBVR{--shiki-default:#D73A49;--shiki-dark:#F97583}html pre.shiki code .sZZnC, html code.shiki .sZZnC{--shiki-default:#032F62;--shiki-dark:#9ECBFF}html pre.shiki code .sj4cs, html code.shiki .sj4cs{--shiki-default:#005CC5;--shiki-dark:#79B8FF}html pre.shiki code .sJ8bj, html code.shiki .sJ8bj{--shiki-default:#6A737D;--shiki-dark:#6A737D}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 .s4XuR, html code.shiki .s4XuR{--shiki-default:#E36209;--shiki-dark:#FFAB70}",{"title":273,"searchDepth":308,"depth":308,"links":48307},[48308,48309,48311,48312,48313,48315,48316,48317,48318,48319,48320],{"id":46425,"depth":308,"text":46426},{"id":46456,"depth":308,"text":48310},"La solución nativa: Provide e Inject",{"id":46480,"depth":308,"text":46481},{"id":46874,"depth":308,"text":46875},{"id":46940,"depth":308,"text":48314},"Ejemplo de uso correcto con readonly",{"id":47643,"depth":308,"text":47644},{"id":47696,"depth":308,"text":47697},{"id":48120,"depth":308,"text":48121},{"id":48160,"depth":308,"text":48161},{"id":48238,"depth":308,"text":48239},{"id":17670,"depth":308,"text":17671},"https://res.cloudinary.com/denj4fg7f/image/upload/v1769126104/vue-provide-inject-avoid-prop-drilling_pkd9s1.png","2026-01-23","Aprende a usar provide e inject en Vue.js para eliminar el Prop Drilling, gestionar la reactividad de forma segura con readonly y mejorar la arquitectura de tus componentes.",{"script":48325},[48326],{"type":1632,"key":1633,"data-nuxt-schema-org":327,"nodes":48327},[48328],{"headline":46399,"author":48329,"datePublished":48330,"@type":1640},{"name":1637,"@type":1638},"2026-01-22T23:30:00-05:00",{"updatedAt":46376,"coverCaption":48332,"author":1637,"keywords":48333},"Provide e Inject en Vue 3 por TODOvue",[1645,46417,46421,46411,271,17761],"/blog/vue-provide-inject-avoid-prop-drilling.es",[48336],{"headline":46399,"author":48337,"datePublished":48330,"@type":1640},{"name":1637,"@type":1638},{"title":46399,"description":48323},"blog/vue-provide-inject-avoid-prop-drilling.es",[48341,48344,48347,48348,48349,48350],{"tag":48342,"color":48343},"Inyección de Dependencias","#2E86DE",{"tag":48345,"color":48346},"Gestión de Estado","#FF9800",{"tag":1665,"color":1666},{"tag":46380,"color":46390},{"tag":1668,"color":1669},{"tag":45584,"color":46395},"FT4c-BeVz5R6eLwab6zTqdL2OAkKfUL-giyeASVBMeE",{"id":48353,"title":46887,"body":48354,"cover":48992,"coverAlt":48993,"date":48994,"description":48995,"draft":1627,"extension":1628,"head":48996,"locale":1641,"meta":49004,"navigation":327,"path":49007,"schemaOrg":49008,"seo":49011,"series":1656,"seriesDescription":1656,"seriesOrder":1656,"seriesTitle":1656,"slug":1656,"stem":49012,"tags":49013,"__hash__":49019},"blog/blog/vue-reactivity-explained.es.md",{"type":8,"value":48355,"toc":48978},[48356,48359,48362,48365,48369,48372,48393,48396,48404,48408,48411,48418,48430,48445,48451,48457,48460,48468,48478,48481,48544,48552,48556,48559,48579,48582,48586,48589,48607,48632,48635,48693,48697,48834,48972,48975],[11,48357,46887],{"id":48358},"qué-es-la-reactividad-la-magia-detrás-de-vuejs-explicada-con-claridad",[21,48360,48361],{},"La reactividad es el corazón de Vue.js. Es lo que hace que la interfaz no sea un adorno bonito, sino un sistema vivo que responde a los cambios de estado sin que tú tengas que perseguir el DOM como si fuera 2012.",[21,48363,48364],{},"En este artículo vamos a desmontar el concepto sin misticismo innecesario: primero con una analogía simple, luego con lo que realmente ocurre a nivel técnico, y finalmente con buenas prácticas que te ahorrarán bugs y problemas de rendimiento.",[30,48366,48368],{"id":48367},"la-analogía-el-efecto-excel","La analogía: el efecto Excel",[21,48370,48371],{},"No necesitas un doctorado en ciencias de la computación para entender la reactividad. Basta con haber usado Excel sin romper nada.",[21,48373,48374,48375,48378,48379,48382,48383,48385,48386,118,48389,48392],{},"Si en una celda ",[72,48376,48377],{},"C1"," escribes la fórmula ",[16,48380,48381],{},"=A1 + B1",", el valor de ",[72,48384,48377],{}," se actualiza automáticamente cuando cambian ",[72,48387,48388],{},"A1",[72,48390,48391],{},"B1",". No haces clic en “refrescar”, no vuelves a escribir la fórmula. Simplemente ocurre.",[21,48394,48395],{},"Eso es reactividad: una relación automática entre datos y resultados.",[3111,48397,48398],{},[21,48399,48400,48403],{},[72,48401,48402],{},"Analogía del mundo real:"," imagina una cafetera inteligente. En el momento en que detecta que hay una taza colocada, el botón de iniciar se activa. No porque alguien lo programe cada vez, sino porque el sistema está atento al estado.",[30,48405,48407],{"id":48406},"la-evolución-técnica-de-vue-2-a-vue-3","La evolución técnica: de Vue 2 a Vue 3",[21,48409,48410],{},"Vue no siempre tuvo el sistema de reactividad elegante que conocemos hoy. Entender su evolución ayuda a escribir mejor código y a no pelearse con el framework.",[192,48412,48414,48415],{"id":48413},"vue-2-objectdefineproperty","Vue 2: ",[16,48416,48417],{},"Object.defineProperty",[21,48419,48420,48421,1697,48424,48427,48428,104],{},"En Vue 2, cada propiedad reactiva se convertía en un par de ",[3292,48422,48423],{},"getters",[3292,48425,48426],{},"setters"," usando ",[16,48429,48417],{},[38,48431,48432],{},[41,48433,48434,48437,48438,48441,48442,104],{},[72,48435,48436],{},"La limitación:"," Vue tenía que recorrer el objeto completo al inicializarlo. Si añadías una propiedad nueva o modificabas un índice de un array directamente (",[16,48439,48440],{},"arr[0] = x","), Vue no se enteraba. Por eso existían soluciones como ",[16,48443,48444],{},"Vue.set()",[192,48446,48448,48449],{"id":48447},"vue-3-el-poder-de-proxy","Vue 3: el poder de ",[16,48450,16977],{},[21,48452,48453,48454,48132],{},"Vue 3 cambió completamente el enfoque usando ",[72,48455,48456],{},"Proxies",[21,48458,48459],{},"Un Proxy envuelve un objeto y puede interceptar prácticamente cualquier operación: leer, escribir, borrar o añadir propiedades.",[38,48461,48462],{},[41,48463,48464,48467],{},[72,48465,48466],{},"La ventaja:"," no importa cuándo ni cómo cambie el objeto. Vue puede detectarlo. El resultado es una reactividad más profunda, más predecible y con mejor rendimiento.",[30,48469,48471,48472,12494,48475],{"id":48470},"los-dos-pilares-ref-vs-reactive","Los dos pilares: ",[16,48473,48474],{},"ref()",[16,48476,48477],{},"reactive()",[21,48479,48480],{},"Si usas la Composition API, esta duda aparece antes de que termines tu primer café.",[5392,48482,48483,48497],{},[5395,48484,48485],{},[5398,48486,48487,48489,48493],{},[5401,48488,46228],{},[5401,48490,48491],{},[16,48492,48474],{},[5401,48494,48495],{},[16,48496,48477],{},[5414,48498,48499,48510,48522,48533],{},[5398,48500,48501,48504,48507],{},[5419,48502,48503],{},"Tipo de dato",[5419,48505,48506],{},"Primitivos y objetos",[5419,48508,48509],{},"Solo objetos y colecciones",[5398,48511,48512,48515,48519],{},[5419,48513,48514],{},"Acceso en JS",[5419,48516,48517],{},[16,48518,17076],{},[5419,48520,48521],{},"Acceso directo",[5398,48523,48524,48528,48531],{},[5419,48525,110,48526],{},[16,48527,26159],{},[5419,48529,48530],{},"Auto-desempaquetado",[5419,48532,48521],{},[5398,48534,48535,48538,48541],{},[5419,48536,48537],{},"Uso ideal",[5419,48539,48540],{},"Estados simples y aislados",[5419,48542,48543],{},"Estados complejos o anidados",[21,48545,48546,48547,48549,48550,104],{},"Regla mental rápida: si es una sola cosa, ",[16,48548,1927],{},". Si es una estructura, ",[16,48551,12319],{},[30,48553,48555],{"id":48554},"el-ciclo-interno-track-y-trigger","El ciclo interno: track y trigger",[21,48557,48558],{},"El motor de reactividad de Vue funciona con un sistema sorprendentemente elegante:",[10089,48560,48561,48567,48573],{},[41,48562,48563,48566],{},[72,48564,48565],{},"Track:"," cuando una función lee una variable reactiva, Vue registra esa relación.",[41,48568,48569,48572],{},[72,48570,48571],{},"Trigger:"," cuando el valor cambia, Vue notifica a todas las funciones que dependen de él.",[41,48574,48575,48578],{},[72,48576,48577],{},"Update:"," el componente se vuelve a renderizar. El Virtual DOM se encarga de actualizar solo lo necesario.",[21,48580,48581],{},"Tú cambias datos. Vue decide qué tocar en el DOM. Separación de responsabilidades en su máxima expresión.",[30,48583,48585],{"id":48584},"consejos-de-rendimiento-nivel-2026","Consejos de rendimiento (nivel 2026)",[21,48587,48588],{},"Si tu aplicación empieza a crecer, estas decisiones importan más de lo que parece.",[38,48590,48591,48601],{},[41,48592,48593,48600],{},[72,48594,48595,1697,48597,353],{},[16,48596,17550],{},[16,48598,48599],{},"shallowReactive"," útiles cuando trabajas con objetos grandes que no necesitan reactividad profunda.",[41,48602,48603,48606],{},[72,48604,48605],{},"Cuidado al desestructurar:"," hacer esto rompe la reactividad:",[267,48608,48611],{"className":46114,"code":48609,"filename":48610,"language":46118,"meta":273,"style":273},"const { nombre } = estadoReactivo; // mal\n","index.js",[16,48612,48613],{"__ignoreMap":273},[277,48614,48615,48617,48619,48622,48624,48626,48629],{"class":279,"line":280},[277,48616,405],{"class":311},[277,48618,5995],{"class":283},[277,48620,48621],{"class":356},"nombre",[277,48623,17506],{"class":283},[277,48625,298],{"class":311},[277,48627,48628],{"class":283}," estadoReactivo; ",[277,48630,48631],{"class":12741},"// mal\n",[21,48633,48634],{},"La forma correcta es:",[267,48636,48638],{"className":46114,"code":48637,"filename":48610,"language":46118,"meta":273,"style":273},"import { reactive, toRefs } from 'vue';\n\nconst estado = reactive({ nombre: 'Vue' });\nconst { nombre } = toRefs(estado);\n",[16,48639,48640,48653,48657,48675],{"__ignoreMap":273},[277,48641,48642,48644,48647,48649,48651],{"class":279,"line":280},[277,48643,312],{"class":311},[277,48645,48646],{"class":283}," { reactive, toRefs } ",[277,48648,318],{"class":311},[277,48650,45690],{"class":301},[277,48652,18151],{"class":283},[277,48654,48655],{"class":279,"line":308},[277,48656,328],{"emptyLinePlaceholder":327},[277,48658,48659,48661,48664,48666,48668,48671,48673],{"class":279,"line":324},[277,48660,405],{"class":311},[277,48662,48663],{"class":356}," estado",[277,48665,340],{"class":311},[277,48667,2024],{"class":291},[277,48669,48670],{"class":283},"({ nombre: ",[277,48672,37149],{"class":301},[277,48674,29404],{"class":283},[277,48676,48677,48679,48681,48683,48685,48687,48690],{"class":279,"line":331},[277,48678,405],{"class":311},[277,48680,5995],{"class":283},[277,48682,48621],{"class":356},[277,48684,17506],{"class":283},[277,48686,298],{"class":311},[277,48688,48689],{"class":291}," toRefs",[277,48691,48692],{"class":283},"(estado);\n",[30,48694,48696],{"id":48695},"ejemplo-práctico-el-contador-más-honesto-del-mundo","Ejemplo práctico: el contador más honesto del mundo",[267,48698,48700],{"className":269,"code":48699,"filename":271,"language":272,"meta":273,"style":273},"\u003Cscript setup>\nimport { ref } from 'vue';\n\nconst tazasDeCafe = ref(0);\n\nconst incrementar = () => {\n  tazasDeCafe.value++;\n};\n\u003C/script>\n\n\u003Ctemplate>\n  \u003Cbutton @click=\"incrementar\">\n    Tazas consumidas: {{ tazasDeCafe }}\n  \u003C/button>\n\u003C/template>\n",[16,48701,48702,48712,48724,48728,48745,48749,48764,48774,48778,48786,48790,48798,48813,48818,48826],{"__ignoreMap":273},[277,48703,48704,48706,48708,48710],{"class":279,"line":280},[277,48705,284],{"class":283},[277,48707,288],{"class":287},[277,48709,292],{"class":291},[277,48711,305],{"class":283},[277,48713,48714,48716,48718,48720,48722],{"class":279,"line":308},[277,48715,312],{"class":311},[277,48717,11006],{"class":283},[277,48719,318],{"class":311},[277,48721,45690],{"class":301},[277,48723,18151],{"class":283},[277,48725,48726],{"class":279,"line":324},[277,48727,328],{"emptyLinePlaceholder":327},[277,48729,48730,48732,48735,48737,48739,48741,48743],{"class":279,"line":331},[277,48731,405],{"class":311},[277,48733,48734],{"class":356}," tazasDeCafe",[277,48736,340],{"class":311},[277,48738,413],{"class":291},[277,48740,448],{"class":283},[277,48742,3542],{"class":356},[277,48744,18277],{"class":283},[277,48746,48747],{"class":279,"line":346},[277,48748,328],{"emptyLinePlaceholder":327},[277,48750,48751,48753,48756,48758,48760,48762],{"class":279,"line":360},[277,48752,405],{"class":311},[277,48754,48755],{"class":291}," incrementar",[277,48757,340],{"class":311},[277,48759,598],{"class":283},[277,48761,601],{"class":311},[277,48763,343],{"class":283},[277,48765,48766,48769,48772],{"class":279,"line":371},[277,48767,48768],{"class":283},"  tazasDeCafe.value",[277,48770,48771],{"class":311},"++",[277,48773,18151],{"class":283},[277,48775,48776],{"class":279,"line":381},[277,48777,18255],{"class":283},[277,48779,48780,48782,48784],{"class":279,"line":391},[277,48781,785],{"class":283},[277,48783,288],{"class":287},[277,48785,305],{"class":283},[277,48787,48788],{"class":279,"line":397},[277,48789,328],{"emptyLinePlaceholder":327},[277,48791,48792,48794,48796],{"class":279,"line":402},[277,48793,284],{"class":283},[277,48795,802],{"class":287},[277,48797,305],{"class":283},[277,48799,48800,48802,48804,48806,48808,48811],{"class":279,"line":436},[277,48801,810],{"class":283},[277,48803,4267],{"class":287},[277,48805,4278],{"class":291},[277,48807,298],{"class":283},[277,48809,48810],{"class":301},"\"incrementar\"",[277,48812,305],{"class":283},[277,48814,48815],{"class":279,"line":456},[277,48816,48817],{"class":283},"    Tazas consumidas: {{ tazasDeCafe }}\n",[277,48819,48820,48822,48824],{"class":279,"line":461},[277,48821,954],{"class":283},[277,48823,4267],{"class":287},[277,48825,305],{"class":283},[277,48827,48828,48830,48832],{"class":279,"line":476},[277,48829,785],{"class":283},[277,48831,802],{"class":287},[277,48833,305],{"class":283},[267,48835,48837],{"className":269,"code":48836,"filename":971,"language":272,"meta":273,"style":273},"\u003Cscript>\nexport default {\n  data() {\n    return {\n      tazasDeCafe: 0,\n    };\n  },\n  methods: {\n    incrementar() {\n      this.tazasDeCafe++;\n    },\n  },\n};\n\u003C/script>\n\n\u003Ctemplate>\n  \u003Cbutton @click=\"incrementar\">\n    Tazas consumidas: {{ tazasDeCafe }}\n  \u003C/button>\n\u003C/template>\n",[16,48838,48839,48847,48855,48861,48867,48876,48880,48884,48888,48895,48906,48910,48914,48918,48926,48930,48938,48952,48956,48964],{"__ignoreMap":273},[277,48840,48841,48843,48845],{"class":279,"line":280},[277,48842,284],{"class":283},[277,48844,288],{"class":287},[277,48846,305],{"class":283},[277,48848,48849,48851,48853],{"class":279,"line":308},[277,48850,1057],{"class":311},[277,48852,1060],{"class":311},[277,48854,343],{"class":283},[277,48856,48857,48859],{"class":279,"line":324},[277,48858,1086],{"class":291},[277,48860,473],{"class":283},[277,48862,48863,48865],{"class":279,"line":331},[277,48864,1093],{"class":311},[277,48866,343],{"class":283},[277,48868,48869,48872,48874],{"class":279,"line":346},[277,48870,48871],{"class":283},"      tazasDeCafe: ",[277,48873,3542],{"class":356},[277,48875,1077],{"class":283},[277,48877,48878],{"class":279,"line":360},[277,48879,18478],{"class":283},[277,48881,48882],{"class":279,"line":371},[277,48883,1131],{"class":283},[277,48885,48886],{"class":279,"line":381},[277,48887,1140],{"class":283},[277,48889,48890,48893],{"class":279,"line":391},[277,48891,48892],{"class":291},"    incrementar",[277,48894,473],{"class":283},[277,48896,48897,48899,48902,48904],{"class":279,"line":397},[277,48898,1212],{"class":356},[277,48900,48901],{"class":283},".tazasDeCafe",[277,48903,48771],{"class":311},[277,48905,18151],{"class":283},[277,48907,48908],{"class":279,"line":402},[277,48909,7016],{"class":283},[277,48911,48912],{"class":279,"line":436},[277,48913,1131],{"class":283},[277,48915,48916],{"class":279,"line":456},[277,48917,18255],{"class":283},[277,48919,48920,48922,48924],{"class":279,"line":461},[277,48921,785],{"class":283},[277,48923,288],{"class":287},[277,48925,305],{"class":283},[277,48927,48928],{"class":279,"line":476},[277,48929,328],{"emptyLinePlaceholder":327},[277,48931,48932,48934,48936],{"class":279,"line":500},[277,48933,284],{"class":283},[277,48935,802],{"class":287},[277,48937,305],{"class":283},[277,48939,48940,48942,48944,48946,48948,48950],{"class":279,"line":505},[277,48941,810],{"class":283},[277,48943,4267],{"class":287},[277,48945,4278],{"class":291},[277,48947,298],{"class":283},[277,48949,48810],{"class":301},[277,48951,305],{"class":283},[277,48953,48954],{"class":279,"line":520},[277,48955,48817],{"class":283},[277,48957,48958,48960,48962],{"class":279,"line":539},[277,48959,954],{"class":283},[277,48961,4267],{"class":287},[277,48963,305],{"class":283},[277,48965,48966,48968,48970],{"class":279,"line":545},[277,48967,785],{"class":283},[277,48969,802],{"class":287},[277,48971,305],{"class":283},[21,48973,48974],{},"Cada clic actualiza el estado. Vue detecta el cambio, vuelve a renderizar lo necesario y tú no tocas el DOM en ningún momento. Eso es la reactividad bien entendida: menos código imperativo, menos errores mentales y una interfaz que hace exactamente lo que debería.",[1606,48976,48977],{},"html pre.shiki code .szBVR, html code.shiki .szBVR{--shiki-default:#D73A49;--shiki-dark:#F97583}html pre.shiki code .sVt8B, html code.shiki .sVt8B{--shiki-default:#24292E;--shiki-dark:#E1E4E8}html pre.shiki code .sj4cs, html code.shiki .sj4cs{--shiki-default:#005CC5;--shiki-dark:#79B8FF}html pre.shiki code .sJ8bj, html code.shiki .sJ8bj{--shiki-default:#6A737D;--shiki-dark:#6A737D}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 .sZZnC, html code.shiki .sZZnC{--shiki-default:#032F62;--shiki-dark:#9ECBFF}html pre.shiki code .sScJk, html code.shiki .sScJk{--shiki-default:#6F42C1;--shiki-dark:#B392F0}html pre.shiki code .s9eBZ, html code.shiki .s9eBZ{--shiki-default:#22863A;--shiki-dark:#85E89D}",{"title":273,"searchDepth":308,"depth":308,"links":48979},[48980,48981,48987,48989,48990,48991],{"id":48367,"depth":308,"text":48368},{"id":48406,"depth":308,"text":48407,"children":48982},[48983,48985],{"id":48413,"depth":324,"text":48984},"Vue 2: Object.defineProperty",{"id":48447,"depth":324,"text":48986},"Vue 3: el poder de Proxy",{"id":48470,"depth":308,"text":48988},"Los dos pilares: ref() vs reactive()",{"id":48554,"depth":308,"text":48555},{"id":48584,"depth":308,"text":48585},{"id":48695,"depth":308,"text":48696},"https://res.cloudinary.com/denj4fg7f/image/upload/v1767664201/magical_vue_coding_laboratory_p1incq.jpg","Ilustración de un laboratorio de codificación mágica de Vue.js","2026-01-06","Explora el sistema de reactividad de Vue.js, desde analogías simples hasta su implementación técnica con Proxies, y aprende a optimizar tus aplicaciones.",{"script":48997},[48998],{"type":1632,"key":1633,"data-nuxt-schema-org":327,"nodes":48999},[49000],{"headline":49001,"author":49002,"datePublished":49003,"@type":1640},"Vue 3.6 Beta: La Revolución de Vapor Mode y el Nuevo Motor de Reactividad",{"name":1637,"@type":1638},"2026-01-05T22:00:00-05:00",{"updatedAt":46376,"coverCaption":49005,"author":1637,"keywords":49006},"Ilustración de un laboratorio de codificación mágica de Vue.js por TODOvue",[1645,3167,48456,271,1927,12319],"/blog/vue-reactivity-explained.es",[49009],{"headline":49001,"author":49010,"datePublished":49003,"@type":1640},{"name":1637,"@type":1638},{"title":46887,"description":48995},"blog/vue-reactivity-explained.es",[49014,49015,49016],{"tag":3167,"color":3168},{"tag":9074,"color":9075},{"tag":49017,"color":49018},"Historia","#F27E68","kA0PMDINVoB0Dsgq3xyYI2bGeetWqOo0cgy2htftkyY",{"id":49021,"title":49001,"body":49022,"cover":49860,"coverAlt":49861,"date":49862,"description":49863,"draft":1627,"extension":1628,"head":49864,"locale":1641,"meta":49871,"navigation":327,"path":49874,"schemaOrg":49875,"seo":49878,"series":1656,"seriesDescription":1656,"seriesOrder":1656,"seriesTitle":1656,"slug":1656,"stem":49879,"tags":49880,"__hash__":49891},"blog/blog/vue-beta-vapor-mode-revealed.es.md",{"type":8,"value":49023,"toc":49839},[49024,49027,49038,49044,49048,49058,49062,49069,49072,49115,49123,49131,49137,49141,49150,49157,49162,49186,49191,49218,49222,49225,49229,49317,49326,49330,49343,49347,49350,49513,49519,49523,49615,49619,49622,49626,49644,49659,49673,49687,49691,49698,49780,49784,49790,49824,49826,49836],[11,49025,49001],{"id":49026},"vue-36-beta-la-revolución-de-vapor-mode-y-el-nuevo-motor-de-reactividad",[21,49028,49029,49030,49033,49034,49037],{},"El ecosistema de Vue ha alcanzado un punto de inflexión con el lanzamiento de la ",[72,49031,49032],{},"versión 3.6.0-beta.1",".\nEsta actualización no es un paso incremental; es una reingeniería profunda que prepara a Vue para un futuro donde el ",[72,49035,49036],{},"Virtual DOM (VDOM)"," deja de ser el protagonista absoluto.",[21,49039,49040,49041,104],{},"En este artículo, desglosamos los dos pilares de esta beta: la llegada de la \"Paridad Funcional\" en Vapor Mode y el nuevo motor de señales inspirado en ",[16,49042,49043],{},"alien-signals",[30,49045,49047],{"id":49046},"vapor-mode-alcanzando-la-paridad-funcional","Vapor Mode: Alcanzando la \"Paridad Funcional\"",[21,49049,49050,49051,49054,49055,104],{},"Hasta hace poco, ",[72,49052,49053],{},"Vapor Mode"," era un experimento prometedor pero limitado.\nCon la versión 3.6, el equipo core anuncia que se ha alcanzado la ",[72,49056,49057],{},"Paridad Funcional",[192,49059,49061],{"id":49060},"qué-significa-paridad-funcional-exactamente","¿Qué significa \"Paridad Funcional\" exactamente?",[21,49063,49064,49065,49068],{},"En el desarrollo de software, este término significa que una nueva implementación (en este caso, el compilador Vapor) ya es capaz de hacer ",[72,49066,49067],{},"exactamente lo mismo"," que la implementación original (el compilador de VDOM estándar).",[21,49070,49071],{},"Para nosotros los desarrolladores, esto implica que Vapor ya no es solo para \"componentes simples\". Ahora soporta:",[38,49073,49074,49087,49102],{},[41,49075,49076,49079,49080,225,49082,49084,49085,104],{},[72,49077,49078],{},"Directivas de control total:"," Manejo complejo de ",[16,49081,7538],{},[16,49083,24880],{}," (con algoritmos de movimiento de nodos optimizados) y ",[16,49086,17971],{},[41,49088,49089,49092,49093,49095,49096,49099,49100,104],{},[72,49090,49091],{},"Arquitectura de Componentes:"," Soporte para ",[3292,49094,45646],{},", componentes dinámicos (",[16,49097,49098],{},"\u003Ccomponent :is=\"...\">",") y ",[16,49101,7488],{},[41,49103,49104,49107,49108,49111,49112,104],{},[72,49105,49106],{},"Funciones integradas:"," Soporte nativo para ",[16,49109,49110],{},"\u003CTeleport>"," y el sistema de ",[16,49113,49114],{},"\u003CTransition>",[3111,49116,49117],{},[21,49118,49119,49122],{},[72,49120,49121],{},"En resumen:"," La paridad funcional permite que un componente complejo de producción pueda ser compilado en modo Vapor sin perder ninguna característica de Vue, pero ganando una velocidad de ejecución sin precedentes.",[30,49124,49126,49127,49130],{"id":49125},"refactorización-de-vuereactivity-el-efecto-alien","Refactorización de ",[16,49128,49129],{},"@vue/reactivity",": El efecto \"Alien\"",[21,49132,49133,49134,49136],{},"La gran sorpresa técnica de Vue 3.6 es la integración de los conceptos de ",[72,49135,49043],{}," (una librería de señales ultrarrápida creada por Johnson Chu, miembro del core team) dentro del núcleo de Vue.",[192,49138,49140],{"id":49139},"por-qué-cambiar-el-motor-de-señales","¿Por qué cambiar el motor de señales?",[21,49142,49143,49144,49146,49147,49149],{},"El sistema de reactividad de Vue 3 basado en ",[16,49145,16977],{}," era excelente, pero sufría en dos puntos: el uso de memoria y la limpieza de dependencias.\nLa adopción del modelo de ",[16,49148,49043],{}," resuelve esto cambiando la estructura de datos interna.",[23924,49151,49153,49154,49156],{"id":49152},"el-cambio-técnico-de-set-a-listas-enlazadas","El cambio técnico: De ",[16,49155,15824],{}," a Listas Enlazadas",[21,49158,49159,49160,104],{},"Tradicionalmente, Vue guardaba los \"suscriptores\" (los efectos que deben ejecutarse cuando un dato cambia) en objetos tipo ",[16,49161,15824],{},[38,49163,49164,49176],{},[41,49165,49166,49169,49170,49172,49173,1895],{},[72,49167,49168],{},"El Problema:"," Crear miles de ",[16,49171,15824],{}," consume mucha memoria y estresa al recolector de basura (",[3292,49174,49175],{},"Garbage Collector",[41,49177,49178,49181,49182,49185],{},[72,49179,49180],{},"La Solución:"," El nuevo motor usa una ",[72,49183,49184],{},"Lista Doblemente Enlazada",". Las suscripciones se conectan entre sí como eslabones de una cadena.",[21,49187,49188],{},[72,49189,49190],{},"Los beneficios reales son impactantes:",[10089,49192,49193,49203,49209],{},[41,49194,49195,49198,49199,49202],{},[72,49196,49197],{},"Reducción de Memoria:"," Hasta un ",[72,49200,49201],{},"14% - 20% menos de consumo"," en aplicaciones con alta densidad de estados.",[41,49204,49205,49208],{},[72,49206,49207],{},"Operaciones O(1):"," Añadir o eliminar una suscripción reactiva ahora tiene un coste constante, sin importar cuántas dependencias existan.",[41,49210,49211,49214,49215,49217],{},[72,49212,49213],{},"Computadas Inteligentes:"," Se ha refinado el algoritmo de \"limpieza\" (cleanup), evitando que las propiedades ",[16,49216,1732],{}," se recalculen innecesariamente cuando las dependencias no han cambiado realmente.",[30,49219,49221],{"id":49220},"comparativa-vnode-vs-vapor-mode","Comparativa: VNode vs. Vapor Mode",[21,49223,49224],{},"Para entender por qué esto es una revolución, comparemos qué sucede \"bajo el capó\" con un componente básico.",[192,49226,49228],{"id":49227},"código-fuente","Código Fuente",[267,49230,49232],{"className":269,"code":49231,"filename":271,"language":272,"meta":273,"style":273},"\u003Cscript setup>\nimport { ref } from 'vue'\nconst count = ref(0)\n\u003C/script>\n\n\u003Ctemplate>\n  \u003Cbutton @click=\"count++\">Contador: {{ count }}\u003C/button>\n\u003C/template>\n",[16,49233,49234,49244,49254,49270,49278,49282,49290,49309],{"__ignoreMap":273},[277,49235,49236,49238,49240,49242],{"class":279,"line":280},[277,49237,284],{"class":283},[277,49239,288],{"class":287},[277,49241,292],{"class":291},[277,49243,305],{"class":283},[277,49245,49246,49248,49250,49252],{"class":279,"line":308},[277,49247,312],{"class":311},[277,49249,11006],{"class":283},[277,49251,318],{"class":311},[277,49253,321],{"class":301},[277,49255,49256,49258,49260,49262,49264,49266,49268],{"class":279,"line":324},[277,49257,405],{"class":311},[277,49259,9380],{"class":356},[277,49261,340],{"class":311},[277,49263,413],{"class":291},[277,49265,448],{"class":283},[277,49267,3542],{"class":356},[277,49269,433],{"class":283},[277,49271,49272,49274,49276],{"class":279,"line":331},[277,49273,785],{"class":283},[277,49275,288],{"class":287},[277,49277,305],{"class":283},[277,49279,49280],{"class":279,"line":346},[277,49281,328],{"emptyLinePlaceholder":327},[277,49283,49284,49286,49288],{"class":279,"line":360},[277,49285,284],{"class":283},[277,49287,802],{"class":287},[277,49289,305],{"class":283},[277,49291,49292,49294,49296,49298,49300,49302,49305,49307],{"class":279,"line":371},[277,49293,810],{"class":283},[277,49295,4267],{"class":287},[277,49297,4278],{"class":291},[277,49299,298],{"class":283},[277,49301,12464],{"class":301},[277,49303,49304],{"class":283},">Contador: {{ count }}\u003C/",[277,49306,4267],{"class":287},[277,49308,305],{"class":283},[277,49310,49311,49313,49315],{"class":279,"line":381},[277,49312,785],{"class":283},[277,49314,802],{"class":287},[277,49316,305],{"class":283},[267,49318,49320],{"className":269,"code":49319,"filename":971,"language":272,"meta":273,"style":273},"// Vapor Mode es exclusivo de Composition API. No hay soporte disponible para Options API.\n",[16,49321,49322],{"__ignoreMap":273},[277,49323,49324],{"class":279,"line":280},[277,49325,49319],{"class":283},[192,49327,49329],{"id":49328},"el-enfoque-tradicional-virtual-dom","El enfoque tradicional (Virtual DOM)",[21,49331,49332,49333,49335,49336,49338,49339,49342],{},"Vue crea un objeto de JavaScript (VNode) que representa el botón. Cuando ",[16,49334,17503],{}," cambia, Vue crea un ",[72,49337,47012],{}," VNode, compara ambos (",[3292,49340,49341],{},"diffing",") y decide qué parte del DOM real actualizar. Esto ocurre en milisegundos, pero tiene un costo de CPU y memoria.",[192,49344,49346],{"id":49345},"el-enfoque-vapor-directo-al-grano","El enfoque Vapor (Directo al grano)",[21,49348,49349],{},"El compilador de Vapor genera código que \"apunta\" directamente al nodo de texto del botón.",[267,49351,49354],{"className":46114,"code":49352,"filename":49353,"language":46118,"meta":273,"style":273},"import { delegateEvents, t, setInterpolation, renderEffect } from '@vue/runtime-vapor'\n\nconst t0 = t('\u003Cbutton>\u003C/button>') // Plantilla estática\n\nexport function render(_ctx) {\n  const el0 = t0() \n  delegateEvents(el0, 'click', () => _ctx.count++)\n  \n  // No hay comparación de árboles. Hay un \"vínculo\" directo.\n  renderEffect(() => {\n    setInterpolation(el0, () => `Contador: ${_ctx.count}`)\n  })\n  \n  return el0\n}\n","Counter.vapor.compiled.js",[16,49355,49356,49368,49372,49394,49398,49414,49428,49451,49455,49460,49471,49494,49498,49502,49509],{"__ignoreMap":273},[277,49357,49358,49360,49363,49365],{"class":279,"line":280},[277,49359,312],{"class":311},[277,49361,49362],{"class":283}," { delegateEvents, t, setInterpolation, renderEffect } ",[277,49364,318],{"class":311},[277,49366,49367],{"class":301}," '@vue/runtime-vapor'\n",[277,49369,49370],{"class":279,"line":308},[277,49371,328],{"emptyLinePlaceholder":327},[277,49373,49374,49376,49379,49381,49384,49386,49389,49391],{"class":279,"line":324},[277,49375,405],{"class":311},[277,49377,49378],{"class":356}," t0",[277,49380,340],{"class":311},[277,49382,49383],{"class":291}," t",[277,49385,448],{"class":283},[277,49387,49388],{"class":301},"'\u003Cbutton>\u003C/button>'",[277,49390,2340],{"class":283},[277,49392,49393],{"class":12741},"// Plantilla estática\n",[277,49395,49396],{"class":279,"line":331},[277,49397,328],{"emptyLinePlaceholder":327},[277,49399,49400,49402,49404,49407,49409,49412],{"class":279,"line":346},[277,49401,1057],{"class":311},[277,49403,467],{"class":311},[277,49405,49406],{"class":291}," render",[277,49408,448],{"class":283},[277,49410,49411],{"class":349},"_ctx",[277,49413,2476],{"class":283},[277,49415,49416,49418,49421,49423,49425],{"class":279,"line":360},[277,49417,479],{"class":311},[277,49419,49420],{"class":356}," el0",[277,49422,340],{"class":311},[277,49424,49378],{"class":291},[277,49426,49427],{"class":283},"() \n",[277,49429,49430,49433,49436,49439,49442,49444,49447,49449],{"class":279,"line":371},[277,49431,49432],{"class":291},"  delegateEvents",[277,49434,49435],{"class":283},"(el0, ",[277,49437,49438],{"class":301},"'click'",[277,49440,49441],{"class":283},", () ",[277,49443,601],{"class":311},[277,49445,49446],{"class":283}," _ctx.count",[277,49448,48771],{"class":311},[277,49450,433],{"class":283},[277,49452,49453],{"class":279,"line":381},[277,49454,42606],{"class":283},[277,49456,49457],{"class":279,"line":391},[277,49458,49459],{"class":12741},"  // No hay comparación de árboles. Hay un \"vínculo\" directo.\n",[277,49461,49462,49465,49467,49469],{"class":279,"line":397},[277,49463,49464],{"class":291},"  renderEffect",[277,49466,2203],{"class":283},[277,49468,601],{"class":311},[277,49470,343],{"class":283},[277,49472,49473,49476,49479,49481,49484,49486,49488,49490,49492],{"class":279,"line":402},[277,49474,49475],{"class":291},"    setInterpolation",[277,49477,49478],{"class":283},"(el0, () ",[277,49480,601],{"class":311},[277,49482,49483],{"class":301}," `Contador: ${",[277,49485,49411],{"class":283},[277,49487,104],{"class":301},[277,49489,17503],{"class":283},[277,49491,3888],{"class":301},[277,49493,433],{"class":283},[277,49495,49496],{"class":279,"line":436},[277,49497,2318],{"class":283},[277,49499,49500],{"class":279,"line":456},[277,49501,42606],{"class":283},[277,49503,49504,49506],{"class":279,"line":461},[277,49505,2212],{"class":311},[277,49507,49508],{"class":283}," el0\n",[277,49510,49511],{"class":279,"line":476},[277,49512,394],{"class":283},[21,49514,49515,49518],{},[72,49516,49517],{},"Resultado:"," Cero Virtual DOM, cero algoritmos de comparación, solo manipulación directa del DOM con la máxima eficiencia posible.",[30,49520,49522],{"id":49521},"tabla-de-rendimiento-y-capacidades","Tabla de Rendimiento y Capacidades",[5392,49524,49525,49537],{},[5395,49526,49527],{},[5398,49528,49529,49531,49534],{},[5401,49530,46228],{},[5401,49532,49533],{},"Vue 3.5 (Standard)",[5401,49535,49536],{},"Vue 3.6 (Vapor Mode)",[5414,49538,49539,49553,49569,49584,49600],{},[5398,49540,49541,49546,49548],{},[5419,49542,49543],{},[72,49544,49545],{},"Estructura Interna",[5419,49547,49036],{},[5419,49549,49550],{},[72,49551,49552],{},"VDOM-less (Directo)",[5398,49554,49555,49560,49565],{},[5419,49556,49557],{},[72,49558,49559],{},"Motor de Señales",[5419,49561,49562,49563],{},"Basado en ",[16,49564,15824],{},[5419,49566,49567],{},[72,49568,49184],{},[5398,49570,49571,49576,49579],{},[5419,49572,49573],{},[72,49574,49575],{},"Consumo de Memoria",[5419,49577,49578],{},"Base estándar",[5419,49580,49581],{},[72,49582,49583],{},"~14% menor",[5398,49585,49586,49591,49594],{},[5419,49587,49588],{},[72,49589,49590],{},"Interoperabilidad",[5419,49592,49593],{},"Completa",[5419,49595,49596,49597,19],{},"Alta (vía ",[16,49598,49599],{},"vaporInterop",[5398,49601,49602,49607,49610],{},[5419,49603,49604],{},[72,49605,49606],{},"Recomendado para",[5419,49608,49609],{},"Apps generales, SSR masivo",[5419,49611,49612],{},[72,49613,49614],{},"Dispositivos IoT, Dashboards pesados, Web Components",[30,49616,49618],{"id":49617},"cómo-empezar-a-probarlo","¿Cómo empezar a probarlo?",[21,49620,49621],{},"Para experimentar con estas mejoras, debes usar la versión beta y configurar tu entorno de Vite para reconocer el modo Vapor.",[192,49623,49625],{"id":49624},"paso-1-instalación","Paso 1: Instalación",[267,49627,49632],{"className":49628,"code":49629,"filename":49630,"language":49631,"meta":273,"style":273},"language-bash shiki shiki-themes github-light github-dark","npm install vue@3.6.0-beta.1\n","npm","bash",[16,49633,49634],{"__ignoreMap":273},[277,49635,49636,49638,49641],{"class":279,"line":280},[277,49637,49630],{"class":291},[277,49639,49640],{"class":301}," install",[277,49642,49643],{"class":301}," vue@3.6.0-beta.1\n",[267,49645,49648],{"className":49628,"code":49646,"filename":49647,"language":49631,"meta":273,"style":273},"pnpm add vue@3.6.0-beta.1\n","pnpm",[16,49649,49650],{"__ignoreMap":273},[277,49651,49652,49654,49657],{"class":279,"line":280},[277,49653,49647],{"class":291},[277,49655,49656],{"class":301}," add",[277,49658,49643],{"class":301},[267,49660,49663],{"className":49628,"code":49661,"filename":49662,"language":49631,"meta":273,"style":273},"yarn add vue@3.6.0-beta.1\n","yarn",[16,49664,49665],{"__ignoreMap":273},[277,49666,49667,49669,49671],{"class":279,"line":280},[277,49668,49662],{"class":291},[277,49670,49656],{"class":301},[277,49672,49643],{"class":301},[267,49674,49677],{"className":49628,"code":49675,"filename":49676,"language":49631,"meta":273,"style":273},"bun add vue@3.6.0-beta.1\n","bun",[16,49678,49679],{"__ignoreMap":273},[277,49680,49681,49683,49685],{"class":279,"line":280},[277,49682,49676],{"class":291},[277,49684,49656],{"class":301},[277,49686,49643],{"class":301},[192,49688,49690],{"id":49689},"paso-2-configuración-de-vite","Paso 2: Configuración de Vite",[21,49692,49693,49694,49697],{},"Activa el soporte para archivos ",[16,49695,49696],{},".vapor.vue"," (la convención recomendada para diferenciar componentes):",[267,49699,49703],{"className":46114,"code":49700,"filename":49701,"highlights":49702,"language":46118,"meta":273,"style":273},"import { defineConfig } from 'vite'\nimport vue from '@vitejs/plugin-vue'\n\nexport default defineConfig({\n  plugins: [\n    vue({\n      vapor: true // Activa el compilador de Vapor\n    })\n  ]\n})\n","vite.config.js",[371],[16,49704,49705,49717,49729,49733,49744,49749,49756,49767,49771,49776],{"__ignoreMap":273},[277,49706,49707,49709,49712,49714],{"class":279,"line":280},[277,49708,312],{"class":311},[277,49710,49711],{"class":283}," { defineConfig } ",[277,49713,318],{"class":311},[277,49715,49716],{"class":301}," 'vite'\n",[277,49718,49719,49721,49724,49726],{"class":279,"line":308},[277,49720,312],{"class":311},[277,49722,49723],{"class":283}," vue ",[277,49725,318],{"class":311},[277,49727,49728],{"class":301}," '@vitejs/plugin-vue'\n",[277,49730,49731],{"class":279,"line":324},[277,49732,328],{"emptyLinePlaceholder":327},[277,49734,49735,49737,49739,49742],{"class":279,"line":331},[277,49736,1057],{"class":311},[277,49738,1060],{"class":311},[277,49740,49741],{"class":291}," defineConfig",[277,49743,1066],{"class":283},[277,49745,49746],{"class":279,"line":346},[277,49747,49748],{"class":283},"  plugins: [\n",[277,49750,49751,49754],{"class":279,"line":360},[277,49752,49753],{"class":291},"    vue",[277,49755,1066],{"class":283},[277,49757,49759,49762,49764],{"class":49758,"line":371},[279,9398],[277,49760,49761],{"class":283},"      vapor: ",[277,49763,2149],{"class":356},[277,49765,49766],{"class":12741}," // Activa el compilador de Vapor\n",[277,49768,49769],{"class":279,"line":381},[277,49770,2913],{"class":283},[277,49772,49773],{"class":279,"line":391},[277,49774,49775],{"class":283},"  ]\n",[277,49777,49778],{"class":279,"line":397},[277,49779,676],{"class":283},[192,49781,49783],{"id":49782},"paso-3-uso-de-componentes","Paso 3: Uso de componentes",[21,49785,49786,49787,49789],{},"Puedes mezclar componentes estándar y Vapor. Para forzar a un componente a usar el nuevo motor, usa la extensión ",[16,49788,49696],{}," o define el bloque script:",[267,49791,49795],{"className":269,"code":49792,"filename":49793,"highlights":49794,"language":272,"meta":273,"style":273},"\u003Cscript setup vapor>\n// Este componente se compilará sin Virtual DOM\n\u003C/script>\n","Index.vue",[280],[16,49796,49797,49811,49816],{"__ignoreMap":273},[277,49798,49800,49802,49804,49806,49809],{"class":49799,"line":280},[279,9398],[277,49801,284],{"class":283},[277,49803,288],{"class":287},[277,49805,292],{"class":291},[277,49807,49808],{"class":291}," vapor",[277,49810,305],{"class":283},[277,49812,49813],{"class":279,"line":308},[277,49814,49815],{"class":12741},"// Este componente se compilará sin Virtual DOM\n",[277,49817,49818,49820,49822],{"class":279,"line":324},[277,49819,785],{"class":283},[277,49821,288],{"class":287},[277,49823,305],{"class":283},[30,49825,17671],{"id":17670},[21,49827,49828,49829,49832,49833,49835],{},"Vue 3.6 no es solo una actualización; es un mensaje claro a la comunidad: ",[72,49830,49831],{},"Vue puede ser tan rápido y ligero como el que más, sin sacrificar su amada sintaxis."," Al integrar la eficiencia de ",[16,49834,49043],{}," y alcanzar la paridad funcional con Vapor, Vue se posiciona como el framework más flexible y potente para la próxima década del desarrollo web.",[1606,49837,49838],{},"html pre.shiki code .sVt8B, html code.shiki .sVt8B{--shiki-default:#24292E;--shiki-dark:#E1E4E8}html pre.shiki code .s9eBZ, html code.shiki .s9eBZ{--shiki-default:#22863A;--shiki-dark:#85E89D}html pre.shiki code .sScJk, html code.shiki .sScJk{--shiki-default:#6F42C1;--shiki-dark:#B392F0}html pre.shiki code .szBVR, html code.shiki .szBVR{--shiki-default:#D73A49;--shiki-dark:#F97583}html pre.shiki code .sZZnC, html code.shiki .sZZnC{--shiki-default:#032F62;--shiki-dark:#9ECBFF}html pre.shiki code .sj4cs, html code.shiki .sj4cs{--shiki-default:#005CC5;--shiki-dark:#79B8FF}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 .sJ8bj, html code.shiki .sJ8bj{--shiki-default:#6A737D;--shiki-dark:#6A737D}html pre.shiki code .s4XuR, html code.shiki .s4XuR{--shiki-default:#E36209;--shiki-dark:#FFAB70}",{"title":273,"searchDepth":308,"depth":308,"links":49840},[49841,49844,49848,49853,49854,49859],{"id":49046,"depth":308,"text":49047,"children":49842},[49843],{"id":49060,"depth":324,"text":49061},{"id":49125,"depth":308,"text":49845,"children":49846},"Refactorización de @vue/reactivity: El efecto \"Alien\"",[49847],{"id":49139,"depth":324,"text":49140},{"id":49220,"depth":308,"text":49221,"children":49849},[49850,49851,49852],{"id":49227,"depth":324,"text":49228},{"id":49328,"depth":324,"text":49329},{"id":49345,"depth":324,"text":49346},{"id":49521,"depth":308,"text":49522},{"id":49617,"depth":308,"text":49618,"children":49855},[49856,49857,49858],{"id":49624,"depth":324,"text":49625},{"id":49689,"depth":324,"text":49690},{"id":49782,"depth":324,"text":49783},{"id":17670,"depth":308,"text":17671},"https://res.cloudinary.com/denj4fg7f/image/upload/v1766870280/vue-beta-vapor-mode-revealed_snvcqg.png","Logo de Vue.js sobre un fondo de código fuente","2025-12-27","Explora las novedades de Vue 3.6 Beta, incluyendo Vapor Mode y la integración de alien-signals para una reactividad más eficiente.",{"script":49865},[49866],{"type":1632,"key":1633,"data-nuxt-schema-org":327,"nodes":49867},[49868],{"headline":49001,"author":49869,"datePublished":49870,"@type":1640},{"name":1637,"@type":1638},"2025-12-27T00:00:00-05",{"updatedAt":46376,"coverCaption":49872,"author":1637,"keywords":49873},"Descubre las innovaciones de Vue 3.6 Beta: Vapor Mode y un motor de reactividad renovado","vue 3.6, vapor mode, alien-signals, reactividad, javascript, framework, frontend, beta","/blog/vue-beta-vapor-mode-revealed.es",[49876],{"headline":49001,"author":49877,"datePublished":49870,"@type":1640},{"name":1637,"@type":1638},{"title":49001,"description":49863},"blog/vue-beta-vapor-mode-revealed.es",[49881,49884,49886,49887,49890],{"tag":49882,"color":49883},"Beta","#42B883",{"tag":49053,"color":49885},"#41B2A6",{"tag":3167,"color":3168},{"tag":49888,"color":49889},"Ecosistema","#68D4F2",{"tag":1671,"color":1672},"A6Q1HoZGN7cVXgiqEGeT2SrCupp9KD1iIJTRYwsxnyY",{"id":49893,"title":49894,"body":49895,"cover":50853,"coverAlt":50854,"date":50855,"description":50856,"draft":1627,"extension":1628,"head":50857,"locale":1641,"meta":50864,"navigation":327,"path":50866,"schemaOrg":50867,"seo":50870,"series":1656,"seriesDescription":1656,"seriesOrder":1656,"seriesTitle":1656,"slug":1656,"stem":50871,"tags":50872,"__hash__":50877},"blog/blog/setting-up-vue-with-vite.es.md","¿Cómo crear tu primer proyecto con Vue usando Vite?",{"type":8,"value":49896,"toc":50841},[49897,49901,49908,49912,49915,49951,49955,49962,49975,49979,49982,50000,50016,50031,50046,50056,50060,50063,50087,50091,50094,50097,50109,50112,50124,50135,50146,50157,50164,50168,50171,50186,50197,50208,50221,50228,50232,50235,50276,50280,50286,50549,50801,50805,50838],[11,49898,49900],{"id":49899},"guía-creando-tu-primer-proyecto-con-vue-y-vite","Guía: Creando tu primer proyecto con Vue y Vite",[21,49902,49903,49904,49907],{},"En esta guía aprenderás a configurar un entorno de desarrollo moderno. ",[72,49905,49906],{},"Vite"," es una herramienta que reemplaza al antiguo Vue CLI, ofreciendo una velocidad de carga casi instantánea durante el desarrollo.",[30,49909,49911],{"id":49910},"resumen-de-la-solución","Resumen de la solución",[21,49913,49914],{},"Para completar este proyecto, seguiremos estos pasos:",[10089,49916,49917,49923,49933,49939,49945],{},[41,49918,49919,49922],{},[72,49920,49921],{},"Preparación",": Verificación de herramientas necesarias (Node.js).",[41,49924,49925,49928,49929,49932],{},[72,49926,49927],{},"Andamiaje",": Uso del comando ",[16,49930,49931],{},"npm create vite"," para generar la estructura.",[41,49934,49935,49938],{},[72,49936,49937],{},"Instalación",": Configuración de las dependencias del proyecto.",[41,49940,49941,49944],{},[72,49942,49943],{},"Ejecución",": Lanzamiento del servidor de desarrollo local.",[41,49946,49947,49950],{},[72,49948,49949],{},"Exploración",": Breve explicación de la estructura de archivos generada.",[30,49952,49954],{"id":49953},"requisitos-previos","Requisitos previos",[21,49956,49957,49958,49961],{},"Antes de empezar, asegúrate de tener instalado ",[72,49959,49960],{},"Node.js"," (versión 18 o superior). Puedes verificarlo abriendo una terminal y escribiendo:",[267,49963,49965],{"className":49628,"code":49964,"filename":49631,"language":49631,"meta":273,"style":273},"node -v\n",[16,49966,49967],{"__ignoreMap":273},[277,49968,49969,49972],{"class":279,"line":280},[277,49970,49971],{"class":291},"node",[277,49973,49974],{"class":356}," -v\n",[30,49976,49978],{"id":49977},"paso-1-inicializar-el-proyecto","Paso 1: Inicializar el proyecto",[21,49980,49981],{},"Abre tu terminal en la carpeta donde quieras guardar tu proyecto y ejecuta el siguiente comando:",[267,49983,49985],{"className":49628,"code":49984,"filename":49630,"language":49631,"meta":273,"style":273},"npm create vite@latest mi-primer-proyecto-vue\n",[16,49986,49987],{"__ignoreMap":273},[277,49988,49989,49991,49994,49997],{"class":279,"line":280},[277,49990,49630],{"class":291},[277,49992,49993],{"class":301}," create",[277,49995,49996],{"class":301}," vite@latest",[277,49998,49999],{"class":301}," mi-primer-proyecto-vue\n",[267,50001,50003],{"className":49628,"code":50002,"filename":49647,"language":49631,"meta":273,"style":273},"pnpm create vite mi-primer-proyecto-vue\n",[16,50004,50005],{"__ignoreMap":273},[277,50006,50007,50009,50011,50014],{"class":279,"line":280},[277,50008,49647],{"class":291},[277,50010,49993],{"class":301},[277,50012,50013],{"class":301}," vite",[277,50015,49999],{"class":301},[267,50017,50019],{"className":49628,"code":50018,"filename":49662,"language":49631,"meta":273,"style":273},"yarn create vite mi-primer-proyecto-vue\n",[16,50020,50021],{"__ignoreMap":273},[277,50022,50023,50025,50027,50029],{"class":279,"line":280},[277,50024,49662],{"class":291},[277,50026,49993],{"class":301},[277,50028,50013],{"class":301},[277,50030,49999],{"class":301},[267,50032,50034],{"className":49628,"code":50033,"filename":49676,"language":49631,"meta":273,"style":273},"bun create vite mi-primer-proyecto-vue\n",[16,50035,50036],{"__ignoreMap":273},[277,50037,50038,50040,50042,50044],{"class":279,"line":280},[277,50039,49676],{"class":291},[277,50041,49993],{"class":301},[277,50043,50013],{"class":301},[277,50045,49999],{"class":301},[3111,50047,50048],{},[21,50049,50050,10969,50052,50055],{},[72,50051,48113],{},[16,50053,50054],{},"mi-primer-proyecto-vue"," es el nombre de la carpeta que se creará. Puedes cambiarlo por el que prefieras.",[30,50057,50059],{"id":50058},"paso-2-configuración-del-asistente","Paso 2: Configuración del asistente",[21,50061,50062],{},"Una vez ejecutado el comando, la terminal te hará unas preguntas interactivas. Sigue estas opciones para un proyecto estándar:",[10089,50064,50065,50073],{},[41,50066,50067,50070,50071,104],{},[72,50068,50069],{},"Select a framework:"," Usa las flechas del teclado para seleccionar ",[16,50072,20616],{},[41,50074,50075,50078,50079,50082,50083,50086],{},[72,50076,50077],{},"Select a variant:"," Selecciona ",[16,50080,50081],{},"JavaScript"," (o ",[16,50084,50085],{},"TypeScript"," si prefieres tipado fuerte, pero para empezar recomendamos JavaScript).",[30,50088,50090],{"id":50089},"paso-3-instalación-de-dependencias","Paso 3: Instalación de dependencias",[21,50092,50093],{},"Vite crea la estructura de archivos, pero no instala las librerías automáticamente para ahorrar tiempo. Debes entrar a la carpeta e instalarlas manualmente:",[21,50095,50096],{},"Entra a la carpeta del proyecto",[267,50098,50100],{"className":49628,"code":50099,"filename":49631,"language":49631,"meta":273,"style":273},"cd mi-primer-proyecto-vue\n",[16,50101,50102],{"__ignoreMap":273},[277,50103,50104,50107],{"class":279,"line":280},[277,50105,50106],{"class":356},"cd",[277,50108,49999],{"class":301},[21,50110,50111],{},"Instala todas las librerías necesarias",[267,50113,50115],{"className":49628,"code":50114,"filename":49630,"language":49631,"meta":273,"style":273},"npm install\n",[16,50116,50117],{"__ignoreMap":273},[277,50118,50119,50121],{"class":279,"line":280},[277,50120,49630],{"class":291},[277,50122,50123],{"class":301}," install\n",[267,50125,50127],{"className":49628,"code":50126,"filename":49647,"language":49631,"meta":273,"style":273},"pnpm install\n",[16,50128,50129],{"__ignoreMap":273},[277,50130,50131,50133],{"class":279,"line":280},[277,50132,49647],{"class":291},[277,50134,50123],{"class":301},[267,50136,50138],{"className":49628,"code":50137,"filename":49662,"language":49631,"meta":273,"style":273},"yarn install\n",[16,50139,50140],{"__ignoreMap":273},[277,50141,50142,50144],{"class":279,"line":280},[277,50143,49662],{"class":291},[277,50145,50123],{"class":301},[267,50147,50149],{"className":49628,"code":50148,"filename":49676,"language":49631,"meta":273,"style":273},"bun install\n",[16,50150,50151],{"__ignoreMap":273},[277,50152,50153,50155],{"class":279,"line":280},[277,50154,49676],{"class":291},[277,50156,50123],{"class":301},[21,50158,50159,50160,50163],{},"Este proceso creará la carpeta ",[16,50161,50162],{},"node_modules",", que contiene todo el código necesario para que Vue funcione.",[30,50165,50167],{"id":50166},"paso-4-ejecutar-el-servidor-de-desarrollo","Paso 4: Ejecutar el servidor de desarrollo",[21,50169,50170],{},"¡Ya estás listo! Ahora inicia el servidor para ver tu aplicación en el navegador:",[267,50172,50174],{"className":49628,"code":50173,"filename":49630,"language":49631,"meta":273,"style":273},"npm run dev\n",[16,50175,50176],{"__ignoreMap":273},[277,50177,50178,50180,50183],{"class":279,"line":280},[277,50179,49630],{"class":291},[277,50181,50182],{"class":301}," run",[277,50184,50185],{"class":301}," dev\n",[267,50187,50189],{"className":49628,"code":50188,"filename":49647,"language":49631,"meta":273,"style":273},"pnpm dev\n",[16,50190,50191],{"__ignoreMap":273},[277,50192,50193,50195],{"class":279,"line":280},[277,50194,49647],{"class":291},[277,50196,50185],{"class":301},[267,50198,50200],{"className":49628,"code":50199,"filename":49662,"language":49631,"meta":273,"style":273},"yarn dev\n",[16,50201,50202],{"__ignoreMap":273},[277,50203,50204,50206],{"class":279,"line":280},[277,50205,49662],{"class":291},[277,50207,50185],{"class":301},[267,50209,50211],{"className":49628,"code":50210,"filename":49676,"language":49631,"meta":273,"style":273},"bun run dev\n",[16,50212,50213],{"__ignoreMap":273},[277,50214,50215,50217,50219],{"class":279,"line":280},[277,50216,49676],{"class":291},[277,50218,50182],{"class":301},[277,50220,50185],{"class":301},[21,50222,50223,50224,50227],{},"La terminal te mostrará una URL (normalmente ",[16,50225,50226],{},"http://localhost:5173/","). Abre ese enlace en tu navegador y verás la página de bienvenida de Vue.",[30,50229,50231],{"id":50230},"paso-5-estructura-del-proyecto","Paso 5: Estructura del proyecto",[21,50233,50234],{},"Aquí tienes una descripción de los archivos más importantes que verás en tu editor de código:",[38,50236,50237,50245,50253,50261,50269],{},[41,50238,50239,50244],{},[72,50240,50241],{},[16,50242,50243],{},"index.html",": El punto de entrada principal. Vite lo usa para montar la aplicación.",[41,50246,50247,50252],{},[72,50248,50249],{},[16,50250,50251],{},"src/main.js",": El archivo JavaScript que inicializa la instancia de Vue y la conecta con el HTML.",[41,50254,50255,50260],{},[72,50256,50257],{},[16,50258,50259],{},"src/App.vue",": El componente raíz de tu aplicación. Todo lo que escribas aquí se verá en pantalla.",[41,50262,50263,50268],{},[72,50264,50265],{},[16,50266,50267],{},"src/components/",": Carpeta donde guardarás tus propios componentes reutilizables.",[41,50270,50271,50275],{},[72,50272,50273],{},[16,50274,49701],{},": Archivo de configuración de Vite.",[30,50277,50279],{"id":50278},"ejemplo-de-un-componente-básico","Ejemplo de un componente básico",[21,50281,50282,50283,50285],{},"Para empezar a programar, puedes abrir el archivo ",[16,50284,50259],{}," y reemplazar su contenido con este código sencillo para entender cómo funciona la reactividad:",[267,50287,50289],{"className":269,"code":50288,"filename":271,"language":272,"meta":273,"style":273},"\u003Ctemplate>\n  \u003Cdiv>\n    \u003Ch1>{{ mensaje }}\u003C/h1>\n    \u003Cbutton @click=\"incrementar\">Contador: {{ contador }}\u003C/button>\n  \u003C/div>\n\u003C/template>\n\n\u003Cscript setup>\nimport { ref } from 'vue';\n\n// Definimos una variable reactiva\nconst mensaje = \"¡Hola desde mi app con Vite!\";\nconst contador = ref(0);\n\n// Función para cambiar el estado\nconst incrementar = () => {\n  contador.value++;\n};\n\u003C/script>\n\n\u003Cstyle scoped>\nh1 {\n  color: #42b983;\n}\nbutton {\n  padding: 10px 20px;\n  cursor: pointer;\n}\n\u003C/style>\n",[16,50290,50291,50299,50307,50320,50339,50347,50355,50359,50369,50381,50385,50390,50404,50421,50425,50430,50444,50453,50457,50465,50469,50480,50486,50497,50501,50507,50525,50537,50541],{"__ignoreMap":273},[277,50292,50293,50295,50297],{"class":279,"line":280},[277,50294,284],{"class":283},[277,50296,802],{"class":287},[277,50298,305],{"class":283},[277,50300,50301,50303,50305],{"class":279,"line":308},[277,50302,810],{"class":283},[277,50304,4201],{"class":287},[277,50306,305],{"class":283},[277,50308,50309,50311,50313,50316,50318],{"class":279,"line":324},[277,50310,829],{"class":283},[277,50312,11],{"class":287},[277,50314,50315],{"class":283},">{{ mensaje }}\u003C/",[277,50317,11],{"class":287},[277,50319,305],{"class":283},[277,50321,50322,50324,50326,50328,50330,50332,50335,50337],{"class":279,"line":331},[277,50323,829],{"class":283},[277,50325,4267],{"class":287},[277,50327,4278],{"class":291},[277,50329,298],{"class":283},[277,50331,48810],{"class":301},[277,50333,50334],{"class":283},">Contador: {{ contador }}\u003C/",[277,50336,4267],{"class":287},[277,50338,305],{"class":283},[277,50340,50341,50343,50345],{"class":279,"line":346},[277,50342,954],{"class":283},[277,50344,4201],{"class":287},[277,50346,305],{"class":283},[277,50348,50349,50351,50353],{"class":279,"line":360},[277,50350,785],{"class":283},[277,50352,802],{"class":287},[277,50354,305],{"class":283},[277,50356,50357],{"class":279,"line":371},[277,50358,328],{"emptyLinePlaceholder":327},[277,50360,50361,50363,50365,50367],{"class":279,"line":381},[277,50362,284],{"class":283},[277,50364,288],{"class":287},[277,50366,292],{"class":291},[277,50368,305],{"class":283},[277,50370,50371,50373,50375,50377,50379],{"class":279,"line":391},[277,50372,312],{"class":311},[277,50374,11006],{"class":283},[277,50376,318],{"class":311},[277,50378,45690],{"class":301},[277,50380,18151],{"class":283},[277,50382,50383],{"class":279,"line":397},[277,50384,328],{"emptyLinePlaceholder":327},[277,50386,50387],{"class":279,"line":402},[277,50388,50389],{"class":12741},"// Definimos una variable reactiva\n",[277,50391,50392,50394,50397,50399,50402],{"class":279,"line":436},[277,50393,405],{"class":311},[277,50395,50396],{"class":356}," mensaje",[277,50398,340],{"class":311},[277,50400,50401],{"class":301}," \"¡Hola desde mi app con Vite!\"",[277,50403,18151],{"class":283},[277,50405,50406,50408,50411,50413,50415,50417,50419],{"class":279,"line":456},[277,50407,405],{"class":311},[277,50409,50410],{"class":356}," contador",[277,50412,340],{"class":311},[277,50414,413],{"class":291},[277,50416,448],{"class":283},[277,50418,3542],{"class":356},[277,50420,18277],{"class":283},[277,50422,50423],{"class":279,"line":461},[277,50424,328],{"emptyLinePlaceholder":327},[277,50426,50427],{"class":279,"line":476},[277,50428,50429],{"class":12741},"// Función para cambiar el estado\n",[277,50431,50432,50434,50436,50438,50440,50442],{"class":279,"line":500},[277,50433,405],{"class":311},[277,50435,48755],{"class":291},[277,50437,340],{"class":311},[277,50439,598],{"class":283},[277,50441,601],{"class":311},[277,50443,343],{"class":283},[277,50445,50446,50449,50451],{"class":279,"line":505},[277,50447,50448],{"class":283},"  contador.value",[277,50450,48771],{"class":311},[277,50452,18151],{"class":283},[277,50454,50455],{"class":279,"line":520},[277,50456,18255],{"class":283},[277,50458,50459,50461,50463],{"class":279,"line":539},[277,50460,785],{"class":283},[277,50462,288],{"class":287},[277,50464,305],{"class":283},[277,50466,50467],{"class":279,"line":545},[277,50468,328],{"emptyLinePlaceholder":327},[277,50470,50471,50473,50475,50478],{"class":279,"line":550},[277,50472,284],{"class":283},[277,50474,1606],{"class":287},[277,50476,50477],{"class":291}," scoped",[277,50479,305],{"class":283},[277,50481,50482,50484],{"class":279,"line":578},[277,50483,11],{"class":287},[277,50485,343],{"class":283},[277,50487,50488,50490,50492,50495],{"class":279,"line":583},[277,50489,21263],{"class":356},[277,50491,20699],{"class":283},[277,50493,50494],{"class":356},"#42b983",[277,50496,18151],{"class":283},[277,50498,50499],{"class":279,"line":588},[277,50500,394],{"class":283},[277,50502,50503,50505],{"class":279,"line":606},[277,50504,4267],{"class":287},[277,50506,343],{"class":283},[277,50508,50509,50511,50513,50516,50518,50521,50523],{"class":279,"line":614},[277,50510,21275],{"class":356},[277,50512,20699],{"class":283},[277,50514,50515],{"class":356},"10",[277,50517,21297],{"class":311},[277,50519,50520],{"class":356}," 20",[277,50522,21297],{"class":311},[277,50524,18151],{"class":283},[277,50526,50527,50530,50532,50535],{"class":279,"line":625},[277,50528,50529],{"class":356},"  cursor",[277,50531,20699],{"class":283},[277,50533,50534],{"class":356},"pointer",[277,50536,18151],{"class":283},[277,50538,50539],{"class":279,"line":637},[277,50540,394],{"class":283},[277,50542,50543,50545,50547],{"class":279,"line":646},[277,50544,785],{"class":283},[277,50546,1606],{"class":287},[277,50548,305],{"class":283},[267,50550,50552],{"className":269,"code":50551,"filename":971,"language":272,"meta":273,"style":273},"\u003Ctemplate>\n  \u003Cdiv>\n    \u003Ch1>{{ mensaje }}\u003C/h1>\n    \u003Cbutton @click=\"incrementar\">Contador: {{ contador }}\u003C/button>\n  \u003C/div>\n\u003C/template>\n\n\u003Cscript>\nexport default {\n  name: 'App',\n  data() {\n    return {\n      mensaje: '¡Hola desde mi app con Vite!',\n      contador: 0\n    };\n  },\n  methods: {\n    incrementar() {\n      this.contador++;\n    }\n  }\n};\n\u003C/script>\n\n\u003Cstyle scoped>\nh1 {\n  color: #42b983;\n}\nbutton {\n  padding: 10px 20px;\n  cursor: pointer;\n}\n\u003C/style>\n",[16,50553,50554,50562,50570,50582,50600,50608,50616,50620,50628,50636,50645,50651,50657,50667,50674,50678,50682,50686,50692,50703,50707,50711,50715,50723,50727,50737,50743,50753,50757,50763,50779,50789,50793],{"__ignoreMap":273},[277,50555,50556,50558,50560],{"class":279,"line":280},[277,50557,284],{"class":283},[277,50559,802],{"class":287},[277,50561,305],{"class":283},[277,50563,50564,50566,50568],{"class":279,"line":308},[277,50565,810],{"class":283},[277,50567,4201],{"class":287},[277,50569,305],{"class":283},[277,50571,50572,50574,50576,50578,50580],{"class":279,"line":324},[277,50573,829],{"class":283},[277,50575,11],{"class":287},[277,50577,50315],{"class":283},[277,50579,11],{"class":287},[277,50581,305],{"class":283},[277,50583,50584,50586,50588,50590,50592,50594,50596,50598],{"class":279,"line":331},[277,50585,829],{"class":283},[277,50587,4267],{"class":287},[277,50589,4278],{"class":291},[277,50591,298],{"class":283},[277,50593,48810],{"class":301},[277,50595,50334],{"class":283},[277,50597,4267],{"class":287},[277,50599,305],{"class":283},[277,50601,50602,50604,50606],{"class":279,"line":346},[277,50603,954],{"class":283},[277,50605,4201],{"class":287},[277,50607,305],{"class":283},[277,50609,50610,50612,50614],{"class":279,"line":360},[277,50611,785],{"class":283},[277,50613,802],{"class":287},[277,50615,305],{"class":283},[277,50617,50618],{"class":279,"line":371},[277,50619,328],{"emptyLinePlaceholder":327},[277,50621,50622,50624,50626],{"class":279,"line":381},[277,50623,284],{"class":283},[277,50625,288],{"class":287},[277,50627,305],{"class":283},[277,50629,50630,50632,50634],{"class":279,"line":391},[277,50631,1057],{"class":311},[277,50633,1060],{"class":311},[277,50635,343],{"class":283},[277,50637,50638,50640,50643],{"class":279,"line":397},[277,50639,1071],{"class":283},[277,50641,50642],{"class":301},"'App'",[277,50644,1077],{"class":283},[277,50646,50647,50649],{"class":279,"line":402},[277,50648,1086],{"class":291},[277,50650,473],{"class":283},[277,50652,50653,50655],{"class":279,"line":436},[277,50654,1093],{"class":311},[277,50656,343],{"class":283},[277,50658,50659,50662,50665],{"class":279,"line":456},[277,50660,50661],{"class":283},"      mensaje: ",[277,50663,50664],{"class":301},"'¡Hola desde mi app con Vite!'",[277,50666,1077],{"class":283},[277,50668,50669,50672],{"class":279,"line":461},[277,50670,50671],{"class":283},"      contador: ",[277,50673,4692],{"class":356},[277,50675,50676],{"class":279,"line":476},[277,50677,18478],{"class":283},[277,50679,50680],{"class":279,"line":500},[277,50681,1131],{"class":283},[277,50683,50684],{"class":279,"line":505},[277,50685,1140],{"class":283},[277,50687,50688,50690],{"class":279,"line":520},[277,50689,48892],{"class":291},[277,50691,473],{"class":283},[277,50693,50694,50696,50699,50701],{"class":279,"line":539},[277,50695,1212],{"class":356},[277,50697,50698],{"class":283},".contador",[277,50700,48771],{"class":311},[277,50702,18151],{"class":283},[277,50704,50705],{"class":279,"line":545},[277,50706,1126],{"class":283},[277,50708,50709],{"class":279,"line":550},[277,50710,542],{"class":283},[277,50712,50713],{"class":279,"line":578},[277,50714,18255],{"class":283},[277,50716,50717,50719,50721],{"class":279,"line":583},[277,50718,785],{"class":283},[277,50720,288],{"class":287},[277,50722,305],{"class":283},[277,50724,50725],{"class":279,"line":588},[277,50726,328],{"emptyLinePlaceholder":327},[277,50728,50729,50731,50733,50735],{"class":279,"line":606},[277,50730,284],{"class":283},[277,50732,1606],{"class":287},[277,50734,50477],{"class":291},[277,50736,305],{"class":283},[277,50738,50739,50741],{"class":279,"line":614},[277,50740,11],{"class":287},[277,50742,343],{"class":283},[277,50744,50745,50747,50749,50751],{"class":279,"line":625},[277,50746,21263],{"class":356},[277,50748,20699],{"class":283},[277,50750,50494],{"class":356},[277,50752,18151],{"class":283},[277,50754,50755],{"class":279,"line":637},[277,50756,394],{"class":283},[277,50758,50759,50761],{"class":279,"line":646},[277,50760,4267],{"class":287},[277,50762,343],{"class":283},[277,50764,50765,50767,50769,50771,50773,50775,50777],{"class":279,"line":668},[277,50766,21275],{"class":356},[277,50768,20699],{"class":283},[277,50770,50515],{"class":356},[277,50772,21297],{"class":311},[277,50774,50520],{"class":356},[277,50776,21297],{"class":311},[277,50778,18151],{"class":283},[277,50780,50781,50783,50785,50787],{"class":279,"line":673},[277,50782,50529],{"class":356},[277,50784,20699],{"class":283},[277,50786,50534],{"class":356},[277,50788,18151],{"class":283},[277,50790,50791],{"class":279,"line":679},[277,50792,394],{"class":283},[277,50794,50795,50797,50799],{"class":279,"line":684},[277,50796,785],{"class":283},[277,50798,1606],{"class":287},[277,50800,305],{"class":283},[192,50802,50804],{"id":50803},"explicación-del-código","Explicación del código:",[38,50806,50807,50817,50827],{},[41,50808,50809,50813,50814,50816],{},[72,50810,50811],{},[16,50812,26159],{},": Contiene el HTML. Usamos ",[16,50815,24722],{}," para mostrar variables.",[41,50818,50819,50823,50824,50826],{},[72,50820,50821],{},[16,50822,19250],{},": Es la forma moderna de escribir lógica en Vue 3. Usamos ",[16,50825,1927],{}," para que Vue sepa que cuando el valor cambie, debe actualizar la pantalla.",[41,50828,50829,50833,50834,50837],{},[72,50830,50831],{},[16,50832,20838],{},": Aquí va el CSS, y el atributo ",[16,50835,50836],{},"scoped"," asegura que los estilos solo afecten a este componente.",[1606,50839,50840],{},"html pre.shiki code .sScJk, html code.shiki .sScJk{--shiki-default:#6F42C1;--shiki-dark:#B392F0}html pre.shiki code .sj4cs, html code.shiki .sj4cs{--shiki-default:#005CC5;--shiki-dark:#79B8FF}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 .sZZnC, html code.shiki .sZZnC{--shiki-default:#032F62;--shiki-dark:#9ECBFF}html pre.shiki code .sVt8B, html code.shiki .sVt8B{--shiki-default:#24292E;--shiki-dark:#E1E4E8}html pre.shiki code .s9eBZ, html code.shiki .s9eBZ{--shiki-default:#22863A;--shiki-dark:#85E89D}html pre.shiki code .szBVR, html code.shiki .szBVR{--shiki-default:#D73A49;--shiki-dark:#F97583}html pre.shiki code .sJ8bj, html code.shiki .sJ8bj{--shiki-default:#6A737D;--shiki-dark:#6A737D}",{"title":273,"searchDepth":308,"depth":308,"links":50842},[50843,50844,50845,50846,50847,50848,50849,50850],{"id":49910,"depth":308,"text":49911},{"id":49953,"depth":308,"text":49954},{"id":49977,"depth":308,"text":49978},{"id":50058,"depth":308,"text":50059},{"id":50089,"depth":308,"text":50090},{"id":50166,"depth":308,"text":50167},{"id":50230,"depth":308,"text":50231},{"id":50278,"depth":308,"text":50279,"children":50851},[50852],{"id":50803,"depth":324,"text":50804},"https://res.cloudinary.com/denj4fg7f/image/upload/v1766607505/setting_up_vue_with_vite_crikmp.png","Logo de Vue.js con el logo de Vite de fondo","2025-12-24","Una guía paso a paso para configurar un entorno de desarrollo moderno con Vue.js y Vite.",{"script":50858},[50859],{"type":1632,"key":1633,"data-nuxt-schema-org":327,"nodes":50860},[50861],{"headline":49894,"author":50862,"datePublished":50863,"@type":1640},{"name":1637,"@type":1638},"2025-12-24T00:00:00-05",{"updatedAt":46376,"coverCaption":50865},"Configura tu entorno de desarrollo con Vue y Vite en minutos","/blog/setting-up-vue-with-vite.es",[50868],{"headline":49894,"author":50869,"datePublished":50863,"@type":1640},{"name":1637,"@type":1638},{"title":49894,"description":50856},"blog/setting-up-vue-with-vite.es",[50873,50875,50876],{"tag":49906,"color":50874},"#646CFF",{"tag":49888,"color":49889},{"tag":9074,"color":9075},"nisSD7gx7iXbl0uktGTbkKJM-KnfAw_jtFWm-ZmgpK8",{"id":50879,"title":50880,"body":50881,"cover":51055,"coverAlt":51056,"date":51057,"description":51058,"draft":1627,"extension":1628,"head":51059,"locale":1641,"meta":51066,"navigation":327,"path":51068,"schemaOrg":51069,"seo":51072,"series":1656,"seriesDescription":1656,"seriesOrder":1656,"seriesTitle":1656,"slug":1656,"stem":51073,"tags":51074,"__hash__":51077},"blog/blog/history-evolution-philosophy-vue-progressive-framework.es.md","Historia y Evolución de Vue.js: El Framework Progresivo",{"type":8,"value":50882,"toc":51046},[50883,50887,50893,50897,50908,50914,50918,50925,50965,50975,50979,50983,50997,51001,51004,51029,51033],[11,50884,50886],{"id":50885},"vuejs-la-evolución-del-framework-progresivo","Vue.js: La Evolución del Framework Progresivo",[21,50888,50889,50890,50892],{},"Desde su humilde comienzo como un proyecto paralelo en Google hasta convertirse en uno de los pilares del desarrollo web moderno, ",[72,50891,1645],{}," ha mantenido una filosofía única: ser el framework que crece contigo. En este artículo, exploraremos cómo su historia y diseño técnico han redefinido la experiencia de desarrollo (DX).",[30,50894,50896],{"id":50895},"el-origen-la-visión-de-evan-you","El Origen: La Visión de Evan You",[21,50898,50899,50900,50903,50904,50907],{},"La historia de Vue comienza en 2013, dentro de las oficinas de Google Creative Lab. ",[72,50901,50902],{},"Evan You",", trabajando con AngularJS, sintió que podía extraer lo mejor de ese mundo (el enlace de datos o ",[3292,50905,50906],{},"data binding",") y combinarlo con una estructura mucho más ligera y menos restrictiva.",[21,50909,110,50910,50913],{},[72,50911,50912],{},"febrero de 2014",", se lanzó oficialmente la versión 1.0. A diferencia de sus competidores, Vue no nació bajo el ala de una gran corporación (como React con Facebook o Angular con Google), sino como un proyecto independiente impulsado por la comunidad y el feedback directo de los desarrolladores.",[30,50915,50917],{"id":50916},"la-filosofía-del-framework-progresivo","La Filosofía del \"Framework Progresivo\"",[21,50919,50920,50921,50924],{},"¿Qué significa realmente que Vue sea ",[72,50922,50923],{},"progresivo","? A diferencia de los frameworks monolíticos, Vue se divide en capas que puedes adoptar según tus necesidades:",[10089,50926,50927,50933,50939,50948,50957],{},[41,50928,50929,50932],{},[72,50930,50931],{},"Declarative Rendering:"," Puedes usarlo solo para manejar el DOM.",[41,50934,50935,50938],{},[72,50936,50937],{},"Component System:"," Para crear interfaces modulares.",[41,50940,50941,50944,50945,104],{},[72,50942,50943],{},"Client-Side Routing:"," Mediante ",[3292,50946,50947],{},"Vue Router",[41,50949,50950,50944,50953,50956],{},[72,50951,50952],{},"State Management:",[3292,50954,50955],{},"Pinia"," (anteriormente Vuex).",[41,50958,50959,50962,50963,104],{},[72,50960,50961],{},"Build System:"," Optimizado actualmente por ",[3292,50964,49906],{},[21,50966,50967,50968,50970,50971,50974],{},"Esta escalabilidad permite que un desarrollador integre Vue en una página legacy mediante un simple ",[16,50969,19250],{}," de CDN, o construya una ",[72,50972,50973],{},"Single Page Application (SPA)"," compleja con millones de usuarios.",[30,50976,50978],{"id":50977},"evolución-técnica-de-la-v1-a-la-v3","Evolución Técnica: De la V1 a la V3",[192,50980,50982],{"id":50981},"vue-2-la-consolidación","Vue 2: La Consolidación",[21,50984,50985,50986,50989,50990,50993,50994,50996],{},"Lanzado en 2016, introdujo el ",[72,50987,50988],{},"Virtual DOM",", mejorando drásticamente el rendimiento. Fue la era donde el ecosistema explotó, popularizando los ",[72,50991,50992],{},"Single File Components (SFC)"," y el uso de ",[16,50995,48417],{}," para su sistema de reactividad.",[192,50998,51000],{"id":50999},"vue-3-el-gran-salto-one-piece","Vue 3: El Gran Salto (One Piece)",[21,51002,51003],{},"En septiembre de 2020, Vue 3 trajo una reescritura completa del núcleo. Los cambios clave fueron:",[38,51005,51006,51017,51023],{},[41,51007,51008,51011,51012,51014,51015,1895],{},[72,51009,51010],{},"Composition API:"," Una alternativa superior a la ",[3292,51013,971],{}," para organizar la lógica de componentes complejos y mejorar la reutilización de código (",[3292,51016,12330],{},[41,51018,51019,51022],{},[72,51020,51021],{},"Reactividad basada en Proxies:"," Superando las limitaciones de Vue 2, permitiendo detectar cambios en propiedades nuevas y arreglos de forma nativa.",[41,51024,51025,51028],{},[72,51026,51027],{},"Soporte de TypeScript de primer nivel:"," El framework ahora está escrito en TS, facilitando el tipado estático.",[30,51030,51032],{"id":51031},"el-futuro-y-el-ecosistema-actual","El Futuro y el Ecosistema Actual",[21,51034,51035,51036,51038,51039,51042,51043,51045],{},"Hoy, Vue no es solo una librería; es un estándar de rendimiento gracias a ",[72,51037,49906],{},", el motor de bundling creado por el propio equipo de Vue que ha revolucionado la industria. Con el auge de ",[72,51040,51041],{},"Nuxt 3"," para aplicaciones SSR (Server Side Rendering) y la transición oficial a ",[72,51044,50955],{}," como gestor de estado, el ecosistema es más robusto y maduro que nunca.",{"title":273,"searchDepth":308,"depth":308,"links":51047},[51048,51049,51050,51054],{"id":50895,"depth":308,"text":50896},{"id":50916,"depth":308,"text":50917},{"id":50977,"depth":308,"text":50978,"children":51051},[51052,51053],{"id":50981,"depth":324,"text":50982},{"id":50999,"depth":324,"text":51000},{"id":51031,"depth":308,"text":51032},"https://res.cloudinary.com/denj4fg7f/image/upload/v1766105778/historia_de_vue_wbwv72.png","Logo de Vue.js con fondo de código fuente","2025-12-19","Desde sus inicios como un proyecto paralelo en Google hasta convertirse en uno de los pilares del desarrollo web moderno, exploramos la evolución y filosofía de Vue.js.",{"script":51060},[51061],{"type":1632,"key":1633,"data-nuxt-schema-org":327,"nodes":51062},[51063],{"headline":50880,"author":51064,"datePublished":51065,"@type":1640},{"name":1637,"@type":1638},"2025-12-19T00:00:00-05",{"updatedAt":46376,"coverCaption":51067},"Explorando la evolución de Vue.js desde sus inicios hasta la actualidad","/blog/history-evolution-philosophy-vue-progressive-framework.es",[51070],{"headline":50880,"author":51071,"datePublished":51065,"@type":1640},{"name":1637,"@type":1638},{"title":50880,"description":51058},"blog/history-evolution-philosophy-vue-progressive-framework.es",[51075,51076],{"tag":49017,"color":49018},{"tag":49888,"color":49889},"za74lWir7bqMzxflbMIiTVoDNp7ZkaBvQ9_9paq4BFo",{"id":51079,"title":51080,"body":51081,"cover":51712,"coverAlt":49861,"date":51713,"description":51714,"draft":1627,"extension":1628,"head":51715,"locale":1641,"meta":51722,"navigation":327,"path":51725,"schemaOrg":51726,"seo":51729,"series":1656,"seriesDescription":1656,"seriesOrder":1656,"seriesTitle":1656,"slug":1656,"stem":51730,"tags":51731,"__hash__":51735},"blog/blog/what-is-vue-js-and-why-you-should-use-it.es.md","¿Qué es Vue.js y por qué deberías usarlo?",{"type":8,"value":51082,"toc":51694},[51083,51087,51093,51099,51102,51106,51112,51118,51123,51129,51140,51144,51150,51365,51574,51585,51589,51592,51598,51610,51615,51625,51629,51635,51640,51646,51661,51667,51672,51678,51683,51685,51688,51691],[11,51084,51086],{"id":51085},"vuejs-el-framework-progresivo-para-la-web-moderna","Vue.js: El Framework Progresivo para la Web Moderna",[21,51088,51089,51090,51092],{},"En el saturado ecosistema de JavaScript, elegir una herramienta para el frontend puede sentirse como intentar dar a un blanco móvil. Sin embargo, ",[72,51091,1645],{}," ha logrado posicionarse no solo como una alternativa a gigantes como React o Angular, sino como la opción preferida para quienes buscan un equilibrio entre potencia, simplicidad y rendimiento.",[21,51094,51095,51098],{},[72,51096,51097],{},"Vue.js es un framework JavaScript de código abierto"," creado por Evan You en 2014, diseñado específicamente para construir interfaces de usuario interactivas y aplicaciones de una sola página (SPA). Su filosofía se centra en ser accesible, versátil y eficiente, priorizando la experiencia del desarrollador sin comprometer el rendimiento.",[21,51100,51101],{},"Pero, ¿qué es exactamente lo que hace a Vue especial y por qué deberías considerarlo para tu próximo proyecto en 2025?",[30,51103,51105],{"id":51104},"el-concepto-de-framework-progresivo","El Concepto de \"Framework Progresivo\"",[21,51107,51108,51109,51111],{},"A diferencia de otros frameworks monolíticos que te obligan a adoptar toda su estructura desde el día uno, Vue se define como ",[72,51110,50923],{},". Esto significa que su complejidad escala según tus necesidades:",[192,51113,51115],{"id":51114},"uso-como-librería",[72,51116,51117],{},"Uso como librería:",[38,51119,51120],{},[41,51121,51122],{},"Puedes integrar Vue en una página existente mediante un simple CDN para manejar widgets pequeños o añadir interactividad ligera sin reescribir todo tu backend.",[192,51124,51126],{"id":51125},"uso-como-framework-spa",[72,51127,51128],{},"Uso como Framework (SPA):",[38,51130,51131],{},[41,51132,51133,51134,51136,51137,51139],{},"Puedes construir aplicaciones robustas de una sola página (Single Page Applications) utilizando su ecosistema oficial completo: ",[72,51135,50947],{}," para la navegación y ",[72,51138,50955],{}," para la gestión del estado global.",[30,51141,51143],{"id":51142},"reactividad-transparente-y-eficiente","Reactividad Transparente y Eficiente",[21,51145,51146,51147,51149],{},"El corazón de Vue es su sistema de reactividad. En su versión 3, Vue utiliza los ",[16,51148,16977],{}," nativos de JavaScript para interceptar cambios en los datos. Esto permite que el framework sepa exactamente qué parte del DOM debe actualizarse, evitando renderizados innecesarios y procesos pesados de comparación de nodos.",[267,51151,51153],{"className":269,"code":51152,"filename":271,"language":272,"meta":273,"style":273},"\u003Cscript setup>\nimport { ref, computed } from 'vue';\n\n// Estado reactivo simple\nconst contador = ref(0);\n\n// Propiedad computada: se recalcula solo cuando cambia 'contador'\nconst esPar = computed(() => contador.value % 2 === 0);\n\nconst incrementar = () => {\n  contador.value++;\n};\n\u003C/script>\n\n\u003Ctemplate>\n  \u003Cdiv class=\"contador\">\n    \u003Ch3>Contador: {{ contador }}\u003C/h3>\n    \u003Cp>El número es: {{ esPar ? 'Par' : 'Impar' }}\u003C/p>\n    \u003Cbutton @click=\"incrementar\">Incrementar\u003C/button>\n  \u003C/div>\n\u003C/template>\n",[16,51154,51155,51165,51177,51181,51186,51202,51206,51211,51241,51245,51259,51267,51271,51279,51283,51291,51306,51318,51331,51349,51357],{"__ignoreMap":273},[277,51156,51157,51159,51161,51163],{"class":279,"line":280},[277,51158,284],{"class":283},[277,51160,288],{"class":287},[277,51162,292],{"class":291},[277,51164,305],{"class":283},[277,51166,51167,51169,51171,51173,51175],{"class":279,"line":308},[277,51168,312],{"class":311},[277,51170,12362],{"class":283},[277,51172,318],{"class":311},[277,51174,45690],{"class":301},[277,51176,18151],{"class":283},[277,51178,51179],{"class":279,"line":324},[277,51180,328],{"emptyLinePlaceholder":327},[277,51182,51183],{"class":279,"line":331},[277,51184,51185],{"class":12741},"// Estado reactivo simple\n",[277,51187,51188,51190,51192,51194,51196,51198,51200],{"class":279,"line":346},[277,51189,405],{"class":311},[277,51191,50410],{"class":356},[277,51193,340],{"class":311},[277,51195,413],{"class":291},[277,51197,448],{"class":283},[277,51199,3542],{"class":356},[277,51201,18277],{"class":283},[277,51203,51204],{"class":279,"line":360},[277,51205,328],{"emptyLinePlaceholder":327},[277,51207,51208],{"class":279,"line":371},[277,51209,51210],{"class":12741},"// Propiedad computada: se recalcula solo cuando cambia 'contador'\n",[277,51212,51213,51215,51218,51220,51222,51224,51226,51229,51232,51234,51237,51239],{"class":279,"line":381},[277,51214,405],{"class":311},[277,51216,51217],{"class":356}," esPar",[277,51219,340],{"class":311},[277,51221,2200],{"class":291},[277,51223,2203],{"class":283},[277,51225,601],{"class":311},[277,51227,51228],{"class":283}," contador.value ",[277,51230,51231],{"class":311},"%",[277,51233,12410],{"class":356},[277,51235,51236],{"class":311}," ===",[277,51238,38884],{"class":356},[277,51240,18277],{"class":283},[277,51242,51243],{"class":279,"line":391},[277,51244,328],{"emptyLinePlaceholder":327},[277,51246,51247,51249,51251,51253,51255,51257],{"class":279,"line":397},[277,51248,405],{"class":311},[277,51250,48755],{"class":291},[277,51252,340],{"class":311},[277,51254,598],{"class":283},[277,51256,601],{"class":311},[277,51258,343],{"class":283},[277,51260,51261,51263,51265],{"class":279,"line":402},[277,51262,50448],{"class":283},[277,51264,48771],{"class":311},[277,51266,18151],{"class":283},[277,51268,51269],{"class":279,"line":436},[277,51270,18255],{"class":283},[277,51272,51273,51275,51277],{"class":279,"line":456},[277,51274,785],{"class":283},[277,51276,288],{"class":287},[277,51278,305],{"class":283},[277,51280,51281],{"class":279,"line":461},[277,51282,328],{"emptyLinePlaceholder":327},[277,51284,51285,51287,51289],{"class":279,"line":476},[277,51286,284],{"class":283},[277,51288,802],{"class":287},[277,51290,305],{"class":283},[277,51292,51293,51295,51297,51299,51301,51304],{"class":279,"line":500},[277,51294,810],{"class":283},[277,51296,4201],{"class":287},[277,51298,816],{"class":291},[277,51300,298],{"class":283},[277,51302,51303],{"class":301},"\"contador\"",[277,51305,305],{"class":283},[277,51307,51308,51310,51312,51314,51316],{"class":279,"line":505},[277,51309,829],{"class":283},[277,51311,192],{"class":287},[277,51313,50334],{"class":283},[277,51315,192],{"class":287},[277,51317,305],{"class":283},[277,51319,51320,51322,51324,51327,51329],{"class":279,"line":520},[277,51321,829],{"class":283},[277,51323,21],{"class":287},[277,51325,51326],{"class":283},">El número es: {{ esPar ? 'Par' : 'Impar' }}\u003C/",[277,51328,21],{"class":287},[277,51330,305],{"class":283},[277,51332,51333,51335,51337,51339,51341,51343,51345,51347],{"class":279,"line":539},[277,51334,829],{"class":283},[277,51336,4267],{"class":287},[277,51338,4278],{"class":291},[277,51340,298],{"class":283},[277,51342,48810],{"class":301},[277,51344,44692],{"class":283},[277,51346,4267],{"class":287},[277,51348,305],{"class":283},[277,51350,51351,51353,51355],{"class":279,"line":545},[277,51352,954],{"class":283},[277,51354,4201],{"class":287},[277,51356,305],{"class":283},[277,51358,51359,51361,51363],{"class":279,"line":550},[277,51360,785],{"class":283},[277,51362,802],{"class":287},[277,51364,305],{"class":283},[267,51366,51368],{"className":269,"code":51367,"filename":971,"language":272,"meta":273,"style":273},"\u003Cscript>\nexport default {\n  data() {\n    return {\n      contador: 0\n    };\n  },\n  computed: {\n    esPar() {\n      return this.contador % 2 === 0;\n    }\n  },\n  methods: {\n    incrementar() {\n      this.contador++;\n    }\n  }\n};\n\u003C/script>\n\n\u003Ctemplate>\n  \u003Cdiv class=\"contador\">\n    \u003Ch3>Contador: {{ contador }}\u003C/h3>\n    \u003Cp>El número es: {{ esPar ? 'Par' : 'Impar' }}\u003C/p>\n    \u003Cbutton @click=\"incrementar\">Incrementar\u003C/button>\n  \u003C/div>\n\u003C/template>\n",[16,51369,51370,51378,51386,51392,51398,51404,51408,51412,51416,51423,51442,51446,51450,51454,51460,51470,51474,51478,51482,51490,51494,51502,51516,51528,51540,51558,51566],{"__ignoreMap":273},[277,51371,51372,51374,51376],{"class":279,"line":280},[277,51373,284],{"class":283},[277,51375,288],{"class":287},[277,51377,305],{"class":283},[277,51379,51380,51382,51384],{"class":279,"line":308},[277,51381,1057],{"class":311},[277,51383,1060],{"class":311},[277,51385,343],{"class":283},[277,51387,51388,51390],{"class":279,"line":324},[277,51389,1086],{"class":291},[277,51391,473],{"class":283},[277,51393,51394,51396],{"class":279,"line":331},[277,51395,1093],{"class":311},[277,51397,343],{"class":283},[277,51399,51400,51402],{"class":279,"line":346},[277,51401,50671],{"class":283},[277,51403,4692],{"class":356},[277,51405,51406],{"class":279,"line":360},[277,51407,18478],{"class":283},[277,51409,51410],{"class":279,"line":371},[277,51411,1131],{"class":283},[277,51413,51414],{"class":279,"line":381},[277,51415,2742],{"class":283},[277,51417,51418,51421],{"class":279,"line":391},[277,51419,51420],{"class":291},"    esPar",[277,51422,473],{"class":283},[277,51424,51425,51427,51429,51432,51434,51436,51438,51440],{"class":279,"line":397},[277,51426,2754],{"class":311},[277,51428,1268],{"class":356},[277,51430,51431],{"class":283},".contador ",[277,51433,51231],{"class":311},[277,51435,12410],{"class":356},[277,51437,51236],{"class":311},[277,51439,38884],{"class":356},[277,51441,18151],{"class":283},[277,51443,51444],{"class":279,"line":402},[277,51445,1126],{"class":283},[277,51447,51448],{"class":279,"line":436},[277,51449,1131],{"class":283},[277,51451,51452],{"class":279,"line":456},[277,51453,1140],{"class":283},[277,51455,51456,51458],{"class":279,"line":461},[277,51457,48892],{"class":291},[277,51459,473],{"class":283},[277,51461,51462,51464,51466,51468],{"class":279,"line":476},[277,51463,1212],{"class":356},[277,51465,50698],{"class":283},[277,51467,48771],{"class":311},[277,51469,18151],{"class":283},[277,51471,51472],{"class":279,"line":500},[277,51473,1126],{"class":283},[277,51475,51476],{"class":279,"line":505},[277,51477,542],{"class":283},[277,51479,51480],{"class":279,"line":520},[277,51481,18255],{"class":283},[277,51483,51484,51486,51488],{"class":279,"line":539},[277,51485,785],{"class":283},[277,51487,288],{"class":287},[277,51489,305],{"class":283},[277,51491,51492],{"class":279,"line":545},[277,51493,328],{"emptyLinePlaceholder":327},[277,51495,51496,51498,51500],{"class":279,"line":550},[277,51497,284],{"class":283},[277,51499,802],{"class":287},[277,51501,305],{"class":283},[277,51503,51504,51506,51508,51510,51512,51514],{"class":279,"line":578},[277,51505,810],{"class":283},[277,51507,4201],{"class":287},[277,51509,816],{"class":291},[277,51511,298],{"class":283},[277,51513,51303],{"class":301},[277,51515,305],{"class":283},[277,51517,51518,51520,51522,51524,51526],{"class":279,"line":583},[277,51519,829],{"class":283},[277,51521,192],{"class":287},[277,51523,50334],{"class":283},[277,51525,192],{"class":287},[277,51527,305],{"class":283},[277,51529,51530,51532,51534,51536,51538],{"class":279,"line":588},[277,51531,829],{"class":283},[277,51533,21],{"class":287},[277,51535,51326],{"class":283},[277,51537,21],{"class":287},[277,51539,305],{"class":283},[277,51541,51542,51544,51546,51548,51550,51552,51554,51556],{"class":279,"line":606},[277,51543,829],{"class":283},[277,51545,4267],{"class":287},[277,51547,4278],{"class":291},[277,51549,298],{"class":283},[277,51551,48810],{"class":301},[277,51553,44692],{"class":283},[277,51555,4267],{"class":287},[277,51557,305],{"class":283},[277,51559,51560,51562,51564],{"class":279,"line":614},[277,51561,954],{"class":283},[277,51563,4201],{"class":287},[277,51565,305],{"class":283},[277,51567,51568,51570,51572],{"class":279,"line":625},[277,51569,785],{"class":283},[277,51571,802],{"class":287},[277,51573,305],{"class":283},[21,51575,51576,51577,51580,51581,51584],{},"Este simple ejemplo demuestra cómo Vue rastrea automáticamente las dependencias: cuando ",[16,51578,51579],{},"contador"," cambia, tanto la visualización del número como la propiedad computada ",[16,51582,51583],{},"esPar"," se actualizan sin intervención manual.",[30,51586,51588],{"id":51587},"versatilidad-de-apis-options-vs-composition","Versatilidad de APIs: Options vs. Composition",[21,51590,51591],{},"Una de las mayores fortalezas de Vue es su dualidad, adaptándose al nivel de experiencia del equipo y a la escala del problema:",[192,51593,51595],{"id":51594},"options-api",[72,51596,51597],{},"Options API:",[38,51599,51600],{},[41,51601,51602,51603,225,51605,225,51607,51609],{},"La forma clásica. Organiza el código por \"opciones\" (",[16,51604,12059],{},[16,51606,12068],{},[16,51608,1732],{},"). Es extremadamente legible y recomendada para quienes están haciendo la transición desde HTML/JS básico o jQuery.",[192,51611,51613],{"id":51612},"composition-api",[72,51614,51010],{},[38,51616,51617],{},[41,51618,51619,51620,51622,51623,104],{},"Introducida en Vue 3, permite agrupar la lógica por funcionalidades en lugar de por tipos de opción. Es la herramienta definitiva para proyectos grandes, ya que facilita la creación de lógica reutilizable (",[72,51621,13469],{},") y ofrece una integración nativa y robusta con ",[72,51624,50085],{},[30,51626,51628],{"id":51627},"por-qué-elegir-vuejs-hoy","¿Por qué elegir Vue.js hoy?",[192,51630,51632],{"id":51631},"curva-de-aprendizaje-amable",[72,51633,51634],{},"Curva de aprendizaje amable:",[38,51636,51637],{},[41,51638,51639],{},"Si dominas los fundamentos de la web (HTML, CSS y JS), serás productivo en Vue en cuestión de horas. Su sintaxis de plantillas (Templates) es familiar y reduce la carga cognitiva.",[192,51641,51643],{"id":51642},"ecosistema-unificado",[72,51644,51645],{},"Ecosistema Unificado:",[38,51647,51648],{},[41,51649,51650,51651,51653,51654,51656,51657,51660],{},"El equipo oficial de Vue mantiene las herramientas críticas: ",[72,51652,49906],{}," (el bundler más rápido del mercado), ",[72,51655,50955],{}," (estado) y ",[72,51658,51659],{},"Router",". Esto garantiza que todas las piezas encajen perfectamente tras cada actualización.",[192,51662,51664],{"id":51663},"rendimiento-de-élite",[72,51665,51666],{},"Rendimiento de Élite:",[38,51668,51669],{},[41,51670,51671],{},"Gracias a un compilador inteligente que optimiza las plantillas en tiempo de construcción, Vue genera un código de ejecución ligero que suele superar en velocidad a frameworks con mayor cuota de mercado.",[192,51673,51675],{"id":51674},"documentación-de-referencia",[72,51676,51677],{},"Documentación de referencia:",[38,51679,51680],{},[41,51681,51682],{},"Es ampliamente considerada como el estándar de oro en la industria por ser clara, estar siempre actualizada y ofrecer ejemplos que funcionan \"a la primera\".",[30,51684,17671],{"id":17670},[21,51686,51687],{},"Vue.js no intenta reinventar la web, sino hacer que trabajar en ella sea más placentero y eficiente. Es la elección lógica si buscas un framework que crezca con tu proyecto, ofreciendo la flexibilidad de una pequeña librería con la potencia de un entorno empresarial de alto nivel.",[21,51689,51690],{},"Ya sea que estés construyendo tu primera aplicación web o migrando un proyecto legacy, Vue te acompaña en cada etapa sin imponerte decisiones arquitectónicas prematuras. Su comunidad activa, el soporte corporativo de empresas como Alibaba y la constante innovación del equipo core garantizan que Vue seguirá siendo relevante en los años venideros.",[1606,51692,51693],{},"html pre.shiki code .sVt8B, html code.shiki .sVt8B{--shiki-default:#24292E;--shiki-dark:#E1E4E8}html pre.shiki code .s9eBZ, html code.shiki .s9eBZ{--shiki-default:#22863A;--shiki-dark:#85E89D}html pre.shiki code .sScJk, html code.shiki .sScJk{--shiki-default:#6F42C1;--shiki-dark:#B392F0}html pre.shiki code .szBVR, html code.shiki .szBVR{--shiki-default:#D73A49;--shiki-dark:#F97583}html pre.shiki code .sZZnC, html code.shiki .sZZnC{--shiki-default:#032F62;--shiki-dark:#9ECBFF}html pre.shiki code .sJ8bj, html code.shiki .sJ8bj{--shiki-default:#6A737D;--shiki-dark:#6A737D}html pre.shiki code .sj4cs, html code.shiki .sj4cs{--shiki-default:#005CC5;--shiki-dark:#79B8FF}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":273,"searchDepth":308,"depth":308,"links":51695},[51696,51700,51701,51705,51711],{"id":51104,"depth":308,"text":51105,"children":51697},[51698,51699],{"id":51114,"depth":324,"text":51117},{"id":51125,"depth":324,"text":51128},{"id":51142,"depth":308,"text":51143},{"id":51587,"depth":308,"text":51588,"children":51702},[51703,51704],{"id":51594,"depth":324,"text":51597},{"id":51612,"depth":324,"text":51010},{"id":51627,"depth":308,"text":51628,"children":51706},[51707,51708,51709,51710],{"id":51631,"depth":324,"text":51634},{"id":51642,"depth":324,"text":51645},{"id":51663,"depth":324,"text":51666},{"id":51674,"depth":324,"text":51677},{"id":17670,"depth":308,"text":17671},"https://res.cloudinary.com/denj4fg7f/image/upload/v1766098457/Que_es_Vue_y_por_que_deberias_usarlo_tmowoz.png","2025-12-18","Descubre Vue.js, un framework progresivo de JavaScript, y aprende por qué es una excelente opción para desarrollar aplicaciones web modernas y reactivas.",{"script":51716},[51717],{"type":1632,"key":1633,"data-nuxt-schema-org":327,"nodes":51718},[51719],{"headline":51080,"author":51720,"datePublished":51721,"@type":1640},{"name":1637,"@type":1638},"2025-12-18T00:00:00-05",{"updatedAt":46376,"coverCaption":51723,"author":1637,"keywords":51724},"Explorando Vue.js: El framework progresivo para la web moderna","vue.js, javascript, framework, frontend, spa, reactividad, composition api, vue 3","/blog/what-is-vue-js-and-why-you-should-use-it.es",[51727],{"headline":51080,"author":51728,"datePublished":51721,"@type":1640},{"name":1637,"@type":1638},{"title":51080,"description":51714},"blog/what-is-vue-js-and-why-you-should-use-it.es",[51732,51733,51734],{"tag":49888,"color":49889},{"tag":9074,"color":9075},{"tag":49017,"color":49018},"dlcnS8xScY4fwq-IMUdSPpUBggTkLlzZ3njwEGhyCv8",{"id":51737,"title":51738,"body":51739,"cover":51894,"coverAlt":51895,"date":51896,"description":51897,"draft":1627,"extension":1628,"head":51898,"locale":1641,"meta":51905,"navigation":327,"path":51907,"schemaOrg":51908,"seo":51911,"series":1656,"seriesDescription":1656,"seriesOrder":1656,"seriesTitle":1656,"slug":1656,"stem":51912,"tags":51913,"__hash__":51919},"blog/blog/welcome-to-todovue.es.md","TODOvue: Un espacio dedicado al ecosistema de Vue.js",{"type":8,"value":51740,"toc":51888},[51741,51747,51753,51763,51767,51770,51821,51825,51831,51838,51845,51849,51863,51867,51873,51876,51878],[11,51742,51744,51745,514],{"id":51743},"bienvenidos-a-todovue","¡Bienvenidos a ",[72,51746,1637],{},[21,51748,51749,51750,51752],{},"Este espacio nace de una necesidad clara: establecer un punto de encuentro para desarrolladores que, al igual que yo, encuentran en el ecosistema de ",[72,51751,1645],{}," una de las herramientas más potentes, elegantes y eficientes para construir la web moderna.",[21,51754,51755,51757,51758,225,51760,51762],{},[72,51756,1637],{}," no es solo un blog; es un proyecto técnico dedicado a desglosar cada rincón de ",[72,51759,13114],{},[72,51761,113],{}," y el abanico de librerías que optimizan nuestro flujo de trabajo diario.",[30,51764,51766],{"id":51765},"qué-esperar-de-este-blog","¿Qué esperar de este blog?",[21,51768,51769],{},"Nuestro objetivo es trascender los tutoriales introductorios. En TODOvue profundizaremos en pilares fundamentales para el desarrollo profesional:",[38,51771,51772,51783,51798,51808],{},[41,51773,51774,51777,51778,51780,51781,104],{},[72,51775,51776],{},"Patrones de Diseño y Composición",": Uso avanzado de la ",[72,51779,271],{},", patrones de reusabilidad y diseño de ",[3292,51782,12330],{},[41,51784,51785,51788,51789,225,51791,225,51794,51797],{},[72,51786,51787],{},"Ecosistema Nuxt",": Estrategias de renderizado avanzado (",[72,51790,1646],{},[72,51792,51793],{},"SSG",[72,51795,51796],{},"Hybrid Rendering / ISR","), gestión de módulos y despliegue optimizado.",[41,51799,51800,51803,51804,51807],{},[72,51801,51802],{},"Rendimiento y Optimización",": Técnicas de ",[3292,51805,51806],{},"code-splitting",", optimización de bundles y estrategias para alcanzar la máxima velocidad en el lado del cliente.",[41,51809,51810,51813,51814,225,51816,225,51818,51820],{},[72,51811,51812],{},"Herramientas y Librerías",": Análisis profundo de ",[72,51815,50955],{},[72,51817,50947],{},[72,51819,49906],{}," y las propuestas emergentes más disruptivas de la comunidad.",[30,51822,51824],{"id":51823},"dogfooding-construido-con-lo-que-enseñamos","\"Dogfooding\": Construido con lo que enseñamos",[21,51826,51827,51828,104],{},"Un aspecto diferencial de este blog es su propia arquitectura. Todo lo que interactúa en esta plataforma ha sido desarrollado bajo los principios de ",[72,51829,51830],{},"Atomic Design",[21,51832,51833,51834,51837],{},"He decidido que cada pieza de TODOvue —desde los átomos (botones) hasta el motor de renderizado de artículos— funcione como un componente independiente publicado en ",[72,51835,51836],{},"NPM",". Aunque el foco principal es el contenido educativo, la infraestructura es totalmente transparente y abierta para quienes deseen integrarla en sus propios proyectos.",[21,51839,51840,51841,51844],{},"Creemos en el ",[72,51842,51843],{},"Open Source"," no solo como una filosofía, sino como una práctica de ingeniería. Si un componente es lo suficientemente robusto para dar vida a este blog, debe estar disponible para la comunidad en el registro de NPM.",[30,51846,51848],{"id":51847},"por-qué-ahora","¿Por qué ahora?",[21,51850,51851,51852,51854,51855,51858,51859,51862],{},"Vue 3 ha alcanzado un estado de madurez excepcional. Gracias a la adopción de ",[16,51853,19250],{},", la estabilidad de Nuxt 3 y la velocidad de Vite, el desarrollo ",[3292,51856,51857],{},"frontend"," nunca ha sido tan gratificante. Sin embargo, la evolución es constante: surgen nuevos retos, ",[3292,51860,51861],{},"breaking changes"," y patrones de arquitectura que merecen ser documentados y analizados con rigor técnico.",[30,51864,51866],{"id":51865},"únete-a-la-conversación","Únete a la conversación",[21,51868,51869,51870,51872],{},"Este es el inicio de un camino de aprendizaje continuo. ",[72,51871,1637],{}," aspira a ser una fuente de consulta confiable y un espacio de intercambio de conocimientos.",[21,51874,51875],{},"Te invito a explorar el contenido, experimentar con los componentes que alimentan este sitio y, sobre todo, a mantener la curiosidad por este framework que nos apasiona.",[38492,51877],{},[21,51879,51880,51883,51884],{},[72,51881,51882],{},"¿Hay algún tema específico de Vue o Nuxt que te gustaría que tratáramos primero?","\n¡Contáctame! ",[13178,51885,51887],{"href":51886},"mailto:blog@todovue.blog","blog@todovue.blog",{"title":273,"searchDepth":308,"depth":308,"links":51889},[51890,51891,51892,51893],{"id":51765,"depth":308,"text":51766},{"id":51823,"depth":308,"text":51824},{"id":51847,"depth":308,"text":51848},{"id":51865,"depth":308,"text":51866},"https://res.cloudinary.com/denj4fg7f/image/upload/v1766098456/TODOvue_idegxt.png","Logo de TODOvue con código fuente de fondo","2025-12-17","Bienvenidos a TODOvue. Un blog técnico diseñado por y para desarrolladores, donde exploramos a fondo Vue 3, Nuxt y la arquitectura de componentes moderna.",{"script":51899},[51900],{"type":1632,"key":1633,"data-nuxt-schema-org":327,"nodes":51901},[51902],{"headline":51738,"author":51903,"datePublished":51904,"@type":1640},{"name":1637,"@type":1638},"2025-12-17T00:00:00-05:00",{"updatedAt":46376,"coverCaption":51906},"Explorando el universo de Vue.js de principio a fin","/blog/welcome-to-todovue.es",[51909],{"headline":51738,"author":51910,"datePublished":51904,"@type":1640},{"name":1637,"@type":1638},{"title":51738,"description":51897},"blog/welcome-to-todovue.es",[51914,51915,51918],{"tag":1637,"color":49883},{"tag":51916,"color":51917},"Offtopic","#605AD1",{"tag":49888,"color":49889},"BCmOBO-2soGuV9x4K2M7CuS5RcLjexaIWQo_apfWI2k",{"id":51921,"title":51922,"body":51923,"cover":1623,"coverAlt":53296,"date":1625,"description":53297,"draft":1627,"extension":1628,"head":53298,"locale":53305,"meta":53306,"navigation":327,"path":53309,"schemaOrg":53310,"seo":53313,"series":1653,"seriesDescription":53314,"seriesOrder":391,"seriesTitle":53315,"slug":1656,"stem":53316,"tags":53317,"__hash__":53327},"blog/blog/vue-lifecycle-ssr-serverprefetch.en.md","Vue Lifecycle: server-side rendering with serverPrefetch",{"type":8,"value":51924,"toc":53282},[51925,51931,51934,51939,51943,51946,51960,51965,51969,51981,51984,51998,52001,52023,52026,52030,52035,52038,52049,52056,52060,52063,52066,52084,52090,52094,52098,52106,52114,52118,52132,52136,52139,52144,52148,52154,52157,52161,52691,53256,53262,53268,53272,53277,53280],[11,51926,51928,51929],{"id":51927},"vue-lifecycle-server-side-rendering-with-serverprefetch","Vue Lifecycle: server-side rendering with ",[16,51930,18],{},[21,51932,51933],{},"When an application uses SSR (Server-Side Rendering), the first render no longer happens only in the browser. The server generates the HTML before sending it, and if important data arrives too late, the user gets a page that feels incomplete or not especially useful until the client requests that data again.",[21,51935,51936,51938],{},[16,51937,18],{}," exists to solve exactly that moment. It lets Vue wait for asynchronous data before rendering the component on the server, so the initial HTML already includes real content instead of depending on skeletons or placeholders that change during hydration.",[30,51940,51942],{"id":51941},"why-this-matters","Why This Matters",[21,51944,51945],{},"With SSR, the first impression depends on the HTML generated on the server. If a product, an article, or a dashboard summary loads only after the component mounts in the client, several advantages are lost at once:",[38,51947,51948,51951,51954,51957],{},[41,51949,51950],{},"The user sees less useful content on the first paint.",[41,51952,51953],{},"SEO gets a weaker document.",[41,51955,51956],{},"Hydration can feel inconsistent.",[41,51958,51959],{},"Work is duplicated between server and client.",[21,51961,51962,51964],{},[16,51963,18],{}," helps make sure critical data is available in time for the initial render. It does not replace your entire data-fetching strategy, but it fits very well in the phase before the server render happens.",[30,51966,51968],{"id":51967},"core-concept","Core Concept",[21,51970,51971,51973,51974,51976,51977,51980],{},[16,51972,18],{}," in the Options API and ",[16,51975,69],{}," in the Composition API let you register an asynchronous function that Vue resolves ",[72,51978,51979],{},"before"," rendering the component on the server.",[21,51982,51983],{},"Simplified flow:",[38,51985,51986,51989,51992,51995],{},[41,51987,51988],{},"The component enters the SSR tree.",[41,51990,51991],{},"Vue runs the hook.",[41,51993,51994],{},"If the hook returns a promise, the renderer waits.",[41,51996,51997],{},"Once the promise resolves, Vue generates the HTML with the data already available.",[21,51999,52000],{},"Important details:",[38,52002,52003,52008,52011],{},[41,52004,52005,52006,104],{},"It only runs during ",[72,52007,103],{},[41,52009,52010],{},"It does not replace client-side loading when the component appears outside the initial render.",[41,52012,52013,52014,52016,52017,52019,52020,52022],{},"In ",[72,52015,113],{},", it is usually better to use ",[16,52018,117],{}," or ",[16,52021,121],{},", since those utilities integrate serialization, caching, and hydration automatically.",[21,52024,52025],{},"You can think of this hook as a lower-level SSR tool: useful when you need fine-grained control inside a component rendered on the server.",[30,52027,52029],{"id":52028},"when-to-use","When To Use",[21,52031,52032,52034],{},[16,52033,18],{}," makes sense when the initial HTML is important enough that the data should already be there.",[21,52036,52037],{},"Typical cases:",[38,52039,52040,52043,52046],{},[41,52041,52042],{},"Product pages that need name, price, and availability in the first response.",[41,52044,52045],{},"Articles or public content that should be indexable and visible from the start.",[41,52047,52048],{},"Components that depend on the current request before rendering.",[21,52050,52051,52052,52055],{},"Practical rule: if the data must exist ",[72,52053,52054],{},"before the server render",", this hook is a strong option.",[30,52057,52059],{"id":52058},"when-to-avoid","When To Avoid",[21,52061,52062],{},"It should not become a generic answer for every fetch.",[21,52064,52065],{},"Avoid it when:",[38,52067,52068,52071,52074,52081],{},[41,52069,52070],{},"The component only renders on the client.",[41,52072,52073],{},"The information is not critical for the initial HTML.",[41,52075,52076,52077,52019,52079,104],{},"You are already using Nuxt and the case fits better in ",[16,52078,117],{},[16,52080,121],{},[41,52082,52083],{},"The fetch depends on browser-only APIs.",[21,52085,52086,52087,52089],{},"Also avoid expensive or unnecessary work here: everything you run inside ",[16,52088,18],{}," directly affects the server response time.",[30,52091,52093],{"id":52092},"common-mistakes","Common Mistakes",[192,52095,52097],{"id":52096},"_1-assuming-it-also-runs-during-client-navigation","1. Assuming it also runs during client navigation",[21,52099,52100,52102,52103,52105],{},[16,52101,18],{}," does not replace ",[16,52104,203],{},", nor does it cover an entire loading strategy by itself. If the component only renders on the client, this hook will not run.",[21,52107,52108,52109,52019,52111,52113],{},"Fix: add a fallback in ",[16,52110,210],{},[16,52112,213],{}," when the data is still missing.",[192,52115,52117],{"id":52116},"_2-using-browser-apis-inside-the-hook","2. Using browser APIs inside the hook",[21,52119,52120,52121,225,52123,52125,52126,52128,52129,52131],{},"During SSR, there is no ",[16,52122,224],{},[16,52124,228],{},", or ",[16,52127,232],{},". Code inside ",[16,52130,18],{}," must be safe to run on the server.",[192,52133,52135],{"id":52134},"_3-repeating-the-fetch-unnecessarily","3. Repeating the fetch unnecessarily",[21,52137,52138],{},"If the server already fetched the data, there is no reason to request it again on the client.",[21,52140,52141,52142,104],{},"Fix: check whether the state already exists before fetching in ",[16,52143,203],{},[192,52145,52147],{"id":52146},"_4-overloading-deep-components","4. Overloading deep components",[21,52149,52150,52151,52153],{},"Using ",[16,52152,18],{}," across too many components can increase response time and make the data flow harder to reason about.",[21,52155,52156],{},"Distribute responsibilities carefully: the page, layout, and inner components should each have a clear role.",[30,52158,52160],{"id":52159},"practical-example","Practical Example",[267,52162,52164],{"className":269,"code":52163,"filename":271,"language":272,"meta":273,"style":273},"\u003Cscript setup lang=\"ts\">\nimport { onMounted, onServerPrefetch, ref } from 'vue'\n\ntype Product = {\n  id: number\n  name: string\n  price: number\n  stock: number\n}\n\nconst product = ref\u003CProduct | null>(null)\nconst errorMessage = ref('')\n\nasync function fetchProduct() {\n  const response = await fetch('https://api.example.com/products/42')\n\n  if (!response.ok) {\n    throw new Error('The product could not be loaded.')\n  }\n\n  product.value = (await response.json()) as Product\n}\n\nonServerPrefetch(async () => {\n  try {\n    await fetchProduct()\n  } catch (error) {\n    errorMessage.value =\n      error instanceof Error ? error.message : 'Unexpected SSR error.'\n  }\n})\n\nonMounted(async () => {\n  if (product.value || errorMessage.value) return\n\n  try {\n    await fetchProduct()\n  } catch (error) {\n    errorMessage.value =\n      error instanceof Error ? error.message : 'Unexpected client error.'\n  }\n})\n\u003C/script>\n\n\u003Ctemplate>\n  \u003Carticle class=\"product-card\">\n    \u003Cp v-if=\"errorMessage\">{{ errorMessage }}\u003C/p>\n\n    \u003Ctemplate v-else-if=\"product\">\n      \u003Ch1>{{ product.name }}\u003C/h1>\n      \u003Cp>Price: {{ product.price }} USD\u003C/p>\n      \u003Cp>Stock: {{ product.stock }}\u003C/p>\n    \u003C/template>\n\n    \u003Cp v-else>Loading product...\u003C/p>\n  \u003C/article>\n\u003C/template>\n",[16,52165,52166,52182,52192,52196,52206,52214,52222,52230,52238,52242,52246,52270,52286,52290,52300,52318,52322,52332,52347,52351,52355,52375,52379,52383,52397,52403,52411,52419,52425,52442,52446,52450,52454,52468,52480,52484,52490,52498,52506,52512,52529,52533,52537,52545,52549,52557,52571,52589,52593,52611,52623,52636,52648,52656,52660,52675,52683],{"__ignoreMap":273},[277,52167,52168,52170,52172,52174,52176,52178,52180],{"class":279,"line":280},[277,52169,284],{"class":283},[277,52171,288],{"class":287},[277,52173,292],{"class":291},[277,52175,295],{"class":291},[277,52177,298],{"class":283},[277,52179,302],{"class":301},[277,52181,305],{"class":283},[277,52183,52184,52186,52188,52190],{"class":279,"line":308},[277,52185,312],{"class":311},[277,52187,315],{"class":283},[277,52189,318],{"class":311},[277,52191,321],{"class":301},[277,52193,52194],{"class":279,"line":324},[277,52195,328],{"emptyLinePlaceholder":327},[277,52197,52198,52200,52202,52204],{"class":279,"line":331},[277,52199,334],{"class":311},[277,52201,337],{"class":291},[277,52203,340],{"class":311},[277,52205,343],{"class":283},[277,52207,52208,52210,52212],{"class":279,"line":346},[277,52209,350],{"class":349},[277,52211,353],{"class":311},[277,52213,357],{"class":356},[277,52215,52216,52218,52220],{"class":279,"line":360},[277,52217,363],{"class":349},[277,52219,353],{"class":311},[277,52221,368],{"class":356},[277,52223,52224,52226,52228],{"class":279,"line":371},[277,52225,374],{"class":349},[277,52227,353],{"class":311},[277,52229,357],{"class":356},[277,52231,52232,52234,52236],{"class":279,"line":381},[277,52233,384],{"class":349},[277,52235,353],{"class":311},[277,52237,357],{"class":356},[277,52239,52240],{"class":279,"line":391},[277,52241,394],{"class":283},[277,52243,52244],{"class":279,"line":397},[277,52245,328],{"emptyLinePlaceholder":327},[277,52247,52248,52250,52252,52254,52256,52258,52260,52262,52264,52266,52268],{"class":279,"line":402},[277,52249,405],{"class":311},[277,52251,408],{"class":356},[277,52253,340],{"class":311},[277,52255,413],{"class":291},[277,52257,284],{"class":283},[277,52259,418],{"class":291},[277,52261,421],{"class":311},[277,52263,424],{"class":356},[277,52265,427],{"class":283},[277,52267,430],{"class":356},[277,52269,433],{"class":283},[277,52271,52272,52274,52276,52278,52280,52282,52284],{"class":279,"line":436},[277,52273,405],{"class":311},[277,52275,441],{"class":356},[277,52277,340],{"class":311},[277,52279,413],{"class":291},[277,52281,448],{"class":283},[277,52283,451],{"class":301},[277,52285,433],{"class":283},[277,52287,52288],{"class":279,"line":456},[277,52289,328],{"emptyLinePlaceholder":327},[277,52291,52292,52294,52296,52298],{"class":279,"line":461},[277,52293,464],{"class":311},[277,52295,467],{"class":311},[277,52297,470],{"class":291},[277,52299,473],{"class":283},[277,52301,52302,52304,52306,52308,52310,52312,52314,52316],{"class":279,"line":476},[277,52303,479],{"class":311},[277,52305,482],{"class":356},[277,52307,340],{"class":311},[277,52309,487],{"class":311},[277,52311,490],{"class":291},[277,52313,448],{"class":283},[277,52315,495],{"class":301},[277,52317,433],{"class":283},[277,52319,52320],{"class":279,"line":500},[277,52321,328],{"emptyLinePlaceholder":327},[277,52323,52324,52326,52328,52330],{"class":279,"line":505},[277,52325,508],{"class":311},[277,52327,511],{"class":283},[277,52329,514],{"class":311},[277,52331,517],{"class":283},[277,52333,52334,52336,52338,52340,52342,52345],{"class":279,"line":520},[277,52335,523],{"class":311},[277,52337,526],{"class":311},[277,52339,529],{"class":291},[277,52341,448],{"class":283},[277,52343,52344],{"class":301},"'The product could not be loaded.'",[277,52346,433],{"class":283},[277,52348,52349],{"class":279,"line":539},[277,52350,542],{"class":283},[277,52352,52353],{"class":279,"line":545},[277,52354,328],{"emptyLinePlaceholder":327},[277,52356,52357,52359,52361,52363,52365,52367,52369,52371,52373],{"class":279,"line":550},[277,52358,553],{"class":283},[277,52360,298],{"class":311},[277,52362,511],{"class":283},[277,52364,560],{"class":311},[277,52366,563],{"class":283},[277,52368,566],{"class":291},[277,52370,569],{"class":283},[277,52372,572],{"class":311},[277,52374,575],{"class":291},[277,52376,52377],{"class":279,"line":578},[277,52378,394],{"class":283},[277,52380,52381],{"class":279,"line":583},[277,52382,328],{"emptyLinePlaceholder":327},[277,52384,52385,52387,52389,52391,52393,52395],{"class":279,"line":588},[277,52386,591],{"class":291},[277,52388,448],{"class":283},[277,52390,464],{"class":311},[277,52392,598],{"class":283},[277,52394,601],{"class":311},[277,52396,343],{"class":283},[277,52398,52399,52401],{"class":279,"line":606},[277,52400,609],{"class":311},[277,52402,343],{"class":283},[277,52404,52405,52407,52409],{"class":279,"line":614},[277,52406,617],{"class":311},[277,52408,470],{"class":291},[277,52410,622],{"class":283},[277,52412,52413,52415,52417],{"class":279,"line":625},[277,52414,628],{"class":283},[277,52416,631],{"class":311},[277,52418,634],{"class":283},[277,52420,52421,52423],{"class":279,"line":637},[277,52422,640],{"class":283},[277,52424,643],{"class":311},[277,52426,52427,52429,52431,52433,52435,52437,52439],{"class":279,"line":646},[277,52428,649],{"class":283},[277,52430,652],{"class":311},[277,52432,529],{"class":291},[277,52434,657],{"class":311},[277,52436,660],{"class":283},[277,52438,353],{"class":311},[277,52440,52441],{"class":301}," 'Unexpected SSR error.'\n",[277,52443,52444],{"class":279,"line":668},[277,52445,542],{"class":283},[277,52447,52448],{"class":279,"line":673},[277,52449,676],{"class":283},[277,52451,52452],{"class":279,"line":679},[277,52453,328],{"emptyLinePlaceholder":327},[277,52455,52456,52458,52460,52462,52464,52466],{"class":279,"line":684},[277,52457,687],{"class":291},[277,52459,448],{"class":283},[277,52461,464],{"class":311},[277,52463,598],{"class":283},[277,52465,601],{"class":311},[277,52467,343],{"class":283},[277,52469,52470,52472,52474,52476,52478],{"class":279,"line":700},[277,52471,508],{"class":311},[277,52473,705],{"class":283},[277,52475,708],{"class":311},[277,52477,711],{"class":283},[277,52479,714],{"class":311},[277,52481,52482],{"class":279,"line":717},[277,52483,328],{"emptyLinePlaceholder":327},[277,52485,52486,52488],{"class":279,"line":722},[277,52487,609],{"class":311},[277,52489,343],{"class":283},[277,52491,52492,52494,52496],{"class":279,"line":729},[277,52493,617],{"class":311},[277,52495,470],{"class":291},[277,52497,622],{"class":283},[277,52499,52500,52502,52504],{"class":279,"line":738},[277,52501,628],{"class":283},[277,52503,631],{"class":311},[277,52505,634],{"class":283},[277,52507,52508,52510],{"class":279,"line":747},[277,52509,640],{"class":283},[277,52511,643],{"class":311},[277,52513,52514,52516,52518,52520,52522,52524,52526],{"class":279,"line":754},[277,52515,649],{"class":283},[277,52517,652],{"class":311},[277,52519,529],{"class":291},[277,52521,657],{"class":311},[277,52523,660],{"class":283},[277,52525,353],{"class":311},[277,52527,52528],{"class":301}," 'Unexpected client error.'\n",[277,52530,52531],{"class":279,"line":772},[277,52532,542],{"class":283},[277,52534,52535],{"class":279,"line":777},[277,52536,676],{"class":283},[277,52538,52539,52541,52543],{"class":279,"line":782},[277,52540,785],{"class":283},[277,52542,288],{"class":287},[277,52544,305],{"class":283},[277,52546,52547],{"class":279,"line":792},[277,52548,328],{"emptyLinePlaceholder":327},[277,52550,52551,52553,52555],{"class":279,"line":797},[277,52552,284],{"class":283},[277,52554,802],{"class":287},[277,52556,305],{"class":283},[277,52558,52559,52561,52563,52565,52567,52569],{"class":279,"line":807},[277,52560,810],{"class":283},[277,52562,813],{"class":287},[277,52564,816],{"class":291},[277,52566,298],{"class":283},[277,52568,821],{"class":301},[277,52570,305],{"class":283},[277,52572,52573,52575,52577,52579,52581,52583,52585,52587],{"class":279,"line":826},[277,52574,829],{"class":283},[277,52576,21],{"class":287},[277,52578,834],{"class":291},[277,52580,298],{"class":283},[277,52582,839],{"class":301},[277,52584,842],{"class":283},[277,52586,21],{"class":287},[277,52588,305],{"class":283},[277,52590,52591],{"class":279,"line":849},[277,52592,328],{"emptyLinePlaceholder":327},[277,52594,52595,52597,52599,52601,52603,52605,52607,52609],{"class":279,"line":854},[277,52596,829],{"class":283},[277,52598,802],{"class":287},[277,52600,861],{"class":311},[277,52602,298],{"class":283},[277,52604,866],{"class":301},[277,52606,869],{"class":283},[277,52608,866],{"class":301},[277,52610,305],{"class":283},[277,52612,52613,52615,52617,52619,52621],{"class":279,"line":876},[277,52614,879],{"class":283},[277,52616,11],{"class":287},[277,52618,884],{"class":283},[277,52620,11],{"class":287},[277,52622,305],{"class":283},[277,52624,52625,52627,52629,52632,52634],{"class":279,"line":891},[277,52626,879],{"class":283},[277,52628,21],{"class":287},[277,52630,52631],{"class":283},">Price: {{ product.price }} USD\u003C/",[277,52633,21],{"class":287},[277,52635,305],{"class":283},[277,52637,52638,52640,52642,52644,52646],{"class":279,"line":905},[277,52639,879],{"class":283},[277,52641,21],{"class":287},[277,52643,912],{"class":283},[277,52645,21],{"class":287},[277,52647,305],{"class":283},[277,52649,52650,52652,52654],{"class":279,"line":919},[277,52651,922],{"class":283},[277,52653,802],{"class":287},[277,52655,305],{"class":283},[277,52657,52658],{"class":279,"line":929},[277,52659,328],{"emptyLinePlaceholder":327},[277,52661,52662,52664,52666,52668,52671,52673],{"class":279,"line":934},[277,52663,829],{"class":283},[277,52665,21],{"class":287},[277,52667,941],{"class":291},[277,52669,52670],{"class":283},">Loading product...\u003C/",[277,52672,21],{"class":287},[277,52674,305],{"class":283},[277,52676,52677,52679,52681],{"class":279,"line":951},[277,52678,954],{"class":283},[277,52680,813],{"class":287},[277,52682,305],{"class":283},[277,52684,52685,52687,52689],{"class":279,"line":961},[277,52686,785],{"class":283},[277,52688,802],{"class":287},[277,52690,305],{"class":283},[267,52692,52694],{"className":269,"code":52693,"filename":971,"language":272,"meta":273,"style":273},"\u003Cscript lang=\"ts\">\nimport { defineComponent } from 'vue'\n\ntype Product = {\n  id: number\n  name: string\n  price: number\n  stock: number\n}\n\nexport default defineComponent({\n  name: 'ProductCardSsr',\n\n  data() {\n    return {\n      product: null as Product | null,\n      errorMessage: ''\n    }\n  },\n\n  methods: {\n    async fetchProduct() {\n      const response = await fetch('https://api.example.com/products/42')\n\n      if (!response.ok) {\n        throw new Error('The product could not be loaded.')\n      }\n\n      this.product = (await response.json()) as Product\n    }\n  },\n\n  async serverPrefetch() {\n    try {\n      await this.fetchProduct()\n    } catch (error) {\n      this.errorMessage =\n        error instanceof Error ? error.message : 'Unexpected SSR error.'\n    }\n  },\n\n  async mounted() {\n    if (this.product || this.errorMessage) return\n\n    try {\n      await this.fetchProduct()\n    } catch (error) {\n      this.errorMessage =\n        error instanceof Error ? error.message : 'Unexpected client error.'\n    }\n  }\n})\n\u003C/script>\n\n\u003Ctemplate>\n  \u003Carticle class=\"product-card\">\n    \u003Cp v-if=\"errorMessage\">{{ errorMessage }}\u003C/p>\n\n    \u003Ctemplate v-else-if=\"product\">\n      \u003Ch1>{{ product.name }}\u003C/h1>\n      \u003Cp>Price: {{ product.price }} USD\u003C/p>\n      \u003Cp>Stock: {{ product.stock }}\u003C/p>\n    \u003C/template>\n\n    \u003Cp v-else>Loading product...\u003C/p>\n  \u003C/article>\n\u003C/template>\n",[16,52695,52696,52710,52720,52724,52734,52742,52750,52758,52766,52770,52774,52784,52792,52796,52802,52808,52824,52830,52834,52838,52842,52846,52854,52872,52876,52886,52900,52904,52908,52930,52934,52938,52942,52950,52956,52968,52976,52984,53000,53004,53008,53012,53020,53038,53042,53048,53060,53068,53076,53092,53096,53100,53104,53112,53116,53124,53138,53156,53160,53178,53190,53202,53214,53222,53226,53240,53248],{"__ignoreMap":273},[277,52697,52698,52700,52702,52704,52706,52708],{"class":279,"line":280},[277,52699,284],{"class":283},[277,52701,288],{"class":287},[277,52703,295],{"class":291},[277,52705,298],{"class":283},[277,52707,302],{"class":301},[277,52709,305],{"class":283},[277,52711,52712,52714,52716,52718],{"class":279,"line":308},[277,52713,312],{"class":311},[277,52715,994],{"class":283},[277,52717,318],{"class":311},[277,52719,321],{"class":301},[277,52721,52722],{"class":279,"line":324},[277,52723,328],{"emptyLinePlaceholder":327},[277,52725,52726,52728,52730,52732],{"class":279,"line":331},[277,52727,334],{"class":311},[277,52729,337],{"class":291},[277,52731,340],{"class":311},[277,52733,343],{"class":283},[277,52735,52736,52738,52740],{"class":279,"line":346},[277,52737,350],{"class":349},[277,52739,353],{"class":311},[277,52741,357],{"class":356},[277,52743,52744,52746,52748],{"class":279,"line":360},[277,52745,363],{"class":349},[277,52747,353],{"class":311},[277,52749,368],{"class":356},[277,52751,52752,52754,52756],{"class":279,"line":371},[277,52753,374],{"class":349},[277,52755,353],{"class":311},[277,52757,357],{"class":356},[277,52759,52760,52762,52764],{"class":279,"line":381},[277,52761,384],{"class":349},[277,52763,353],{"class":311},[277,52765,357],{"class":356},[277,52767,52768],{"class":279,"line":391},[277,52769,394],{"class":283},[277,52771,52772],{"class":279,"line":397},[277,52773,328],{"emptyLinePlaceholder":327},[277,52775,52776,52778,52780,52782],{"class":279,"line":402},[277,52777,1057],{"class":311},[277,52779,1060],{"class":311},[277,52781,1063],{"class":291},[277,52783,1066],{"class":283},[277,52785,52786,52788,52790],{"class":279,"line":436},[277,52787,1071],{"class":283},[277,52789,1074],{"class":301},[277,52791,1077],{"class":283},[277,52793,52794],{"class":279,"line":456},[277,52795,328],{"emptyLinePlaceholder":327},[277,52797,52798,52800],{"class":279,"line":461},[277,52799,1086],{"class":291},[277,52801,473],{"class":283},[277,52803,52804,52806],{"class":279,"line":476},[277,52805,1093],{"class":311},[277,52807,343],{"class":283},[277,52809,52810,52812,52814,52816,52818,52820,52822],{"class":279,"line":500},[277,52811,1100],{"class":283},[277,52813,430],{"class":356},[277,52815,1105],{"class":311},[277,52817,337],{"class":291},[277,52819,421],{"class":311},[277,52821,424],{"class":356},[277,52823,1077],{"class":283},[277,52825,52826,52828],{"class":279,"line":505},[277,52827,1118],{"class":283},[277,52829,1121],{"class":301},[277,52831,52832],{"class":279,"line":520},[277,52833,1126],{"class":283},[277,52835,52836],{"class":279,"line":539},[277,52837,1131],{"class":283},[277,52839,52840],{"class":279,"line":545},[277,52841,328],{"emptyLinePlaceholder":327},[277,52843,52844],{"class":279,"line":550},[277,52845,1140],{"class":283},[277,52847,52848,52850,52852],{"class":279,"line":578},[277,52849,1145],{"class":311},[277,52851,470],{"class":291},[277,52853,473],{"class":283},[277,52855,52856,52858,52860,52862,52864,52866,52868,52870],{"class":279,"line":583},[277,52857,1154],{"class":311},[277,52859,482],{"class":356},[277,52861,340],{"class":311},[277,52863,487],{"class":311},[277,52865,490],{"class":291},[277,52867,448],{"class":283},[277,52869,495],{"class":301},[277,52871,433],{"class":283},[277,52873,52874],{"class":279,"line":588},[277,52875,328],{"emptyLinePlaceholder":327},[277,52877,52878,52880,52882,52884],{"class":279,"line":606},[277,52879,1177],{"class":311},[277,52881,511],{"class":283},[277,52883,514],{"class":311},[277,52885,517],{"class":283},[277,52887,52888,52890,52892,52894,52896,52898],{"class":279,"line":614},[277,52889,1188],{"class":311},[277,52891,526],{"class":311},[277,52893,529],{"class":291},[277,52895,448],{"class":283},[277,52897,52344],{"class":301},[277,52899,433],{"class":283},[277,52901,52902],{"class":279,"line":625},[277,52903,1203],{"class":283},[277,52905,52906],{"class":279,"line":637},[277,52907,328],{"emptyLinePlaceholder":327},[277,52909,52910,52912,52914,52916,52918,52920,52922,52924,52926,52928],{"class":279,"line":646},[277,52911,1212],{"class":356},[277,52913,1215],{"class":283},[277,52915,298],{"class":311},[277,52917,511],{"class":283},[277,52919,560],{"class":311},[277,52921,563],{"class":283},[277,52923,566],{"class":291},[277,52925,569],{"class":283},[277,52927,572],{"class":311},[277,52929,575],{"class":291},[277,52931,52932],{"class":279,"line":668},[277,52933,1126],{"class":283},[277,52935,52936],{"class":279,"line":673},[277,52937,1131],{"class":283},[277,52939,52940],{"class":279,"line":679},[277,52941,328],{"emptyLinePlaceholder":327},[277,52943,52944,52946,52948],{"class":279,"line":684},[277,52945,1248],{"class":311},[277,52947,1251],{"class":291},[277,52949,473],{"class":283},[277,52951,52952,52954],{"class":279,"line":700},[277,52953,1258],{"class":311},[277,52955,343],{"class":283},[277,52957,52958,52960,52962,52964,52966],{"class":279,"line":717},[277,52959,1265],{"class":311},[277,52961,1268],{"class":356},[277,52963,104],{"class":283},[277,52965,1273],{"class":291},[277,52967,622],{"class":283},[277,52969,52970,52972,52974],{"class":279,"line":722},[277,52971,1280],{"class":283},[277,52973,631],{"class":311},[277,52975,634],{"class":283},[277,52977,52978,52980,52982],{"class":279,"line":729},[277,52979,1212],{"class":356},[277,52981,1291],{"class":283},[277,52983,643],{"class":311},[277,52985,52986,52988,52990,52992,52994,52996,52998],{"class":279,"line":738},[277,52987,1298],{"class":283},[277,52989,652],{"class":311},[277,52991,529],{"class":291},[277,52993,657],{"class":311},[277,52995,660],{"class":283},[277,52997,353],{"class":311},[277,52999,52441],{"class":301},[277,53001,53002],{"class":279,"line":747},[277,53003,1126],{"class":283},[277,53005,53006],{"class":279,"line":754},[277,53007,1131],{"class":283},[277,53009,53010],{"class":279,"line":772},[277,53011,328],{"emptyLinePlaceholder":327},[277,53013,53014,53016,53018],{"class":279,"line":777},[277,53015,1248],{"class":311},[277,53017,1329],{"class":291},[277,53019,473],{"class":283},[277,53021,53022,53024,53026,53028,53030,53032,53034,53036],{"class":279,"line":782},[277,53023,1336],{"class":311},[277,53025,511],{"class":283},[277,53027,1341],{"class":356},[277,53029,1215],{"class":283},[277,53031,708],{"class":311},[277,53033,1268],{"class":356},[277,53035,1350],{"class":283},[277,53037,714],{"class":311},[277,53039,53040],{"class":279,"line":792},[277,53041,328],{"emptyLinePlaceholder":327},[277,53043,53044,53046],{"class":279,"line":797},[277,53045,1258],{"class":311},[277,53047,343],{"class":283},[277,53049,53050,53052,53054,53056,53058],{"class":279,"line":807},[277,53051,1265],{"class":311},[277,53053,1268],{"class":356},[277,53055,104],{"class":283},[277,53057,1273],{"class":291},[277,53059,622],{"class":283},[277,53061,53062,53064,53066],{"class":279,"line":826},[277,53063,1280],{"class":283},[277,53065,631],{"class":311},[277,53067,634],{"class":283},[277,53069,53070,53072,53074],{"class":279,"line":849},[277,53071,1212],{"class":356},[277,53073,1291],{"class":283},[277,53075,643],{"class":311},[277,53077,53078,53080,53082,53084,53086,53088,53090],{"class":279,"line":854},[277,53079,1298],{"class":283},[277,53081,652],{"class":311},[277,53083,529],{"class":291},[277,53085,657],{"class":311},[277,53087,660],{"class":283},[277,53089,353],{"class":311},[277,53091,52528],{"class":301},[277,53093,53094],{"class":279,"line":876},[277,53095,1126],{"class":283},[277,53097,53098],{"class":279,"line":891},[277,53099,542],{"class":283},[277,53101,53102],{"class":279,"line":905},[277,53103,676],{"class":283},[277,53105,53106,53108,53110],{"class":279,"line":919},[277,53107,785],{"class":283},[277,53109,288],{"class":287},[277,53111,305],{"class":283},[277,53113,53114],{"class":279,"line":929},[277,53115,328],{"emptyLinePlaceholder":327},[277,53117,53118,53120,53122],{"class":279,"line":934},[277,53119,284],{"class":283},[277,53121,802],{"class":287},[277,53123,305],{"class":283},[277,53125,53126,53128,53130,53132,53134,53136],{"class":279,"line":951},[277,53127,810],{"class":283},[277,53129,813],{"class":287},[277,53131,816],{"class":291},[277,53133,298],{"class":283},[277,53135,821],{"class":301},[277,53137,305],{"class":283},[277,53139,53140,53142,53144,53146,53148,53150,53152,53154],{"class":279,"line":961},[277,53141,829],{"class":283},[277,53143,21],{"class":287},[277,53145,834],{"class":291},[277,53147,298],{"class":283},[277,53149,839],{"class":301},[277,53151,842],{"class":283},[277,53153,21],{"class":287},[277,53155,305],{"class":283},[277,53157,53158],{"class":279,"line":1473},[277,53159,328],{"emptyLinePlaceholder":327},[277,53161,53162,53164,53166,53168,53170,53172,53174,53176],{"class":279,"line":1478},[277,53163,829],{"class":283},[277,53165,802],{"class":287},[277,53167,861],{"class":311},[277,53169,298],{"class":283},[277,53171,866],{"class":301},[277,53173,869],{"class":283},[277,53175,866],{"class":301},[277,53177,305],{"class":283},[277,53179,53180,53182,53184,53186,53188],{"class":279,"line":1497},[277,53181,879],{"class":283},[277,53183,11],{"class":287},[277,53185,884],{"class":283},[277,53187,11],{"class":287},[277,53189,305],{"class":283},[277,53191,53192,53194,53196,53198,53200],{"class":279,"line":1510},[277,53193,879],{"class":283},[277,53195,21],{"class":287},[277,53197,52631],{"class":283},[277,53199,21],{"class":287},[277,53201,305],{"class":283},[277,53203,53204,53206,53208,53210,53212],{"class":279,"line":1523},[277,53205,879],{"class":283},[277,53207,21],{"class":287},[277,53209,912],{"class":283},[277,53211,21],{"class":287},[277,53213,305],{"class":283},[277,53215,53216,53218,53220],{"class":279,"line":1536},[277,53217,922],{"class":283},[277,53219,802],{"class":287},[277,53221,305],{"class":283},[277,53223,53224],{"class":279,"line":1545},[277,53225,328],{"emptyLinePlaceholder":327},[277,53227,53228,53230,53232,53234,53236,53238],{"class":279,"line":1550},[277,53229,829],{"class":283},[277,53231,21],{"class":287},[277,53233,941],{"class":291},[277,53235,52670],{"class":283},[277,53237,21],{"class":287},[277,53239,305],{"class":283},[277,53241,53242,53244,53246],{"class":279,"line":1565},[277,53243,954],{"class":283},[277,53245,813],{"class":287},[277,53247,305],{"class":283},[277,53249,53250,53252,53254],{"class":279,"line":1574},[277,53251,785],{"class":283},[277,53253,802],{"class":287},[277,53255,305],{"class":283},[21,53257,53258,53259,53261],{},"This pattern lets the server deliver resolved content on the first load. If the component later renders during a client-side navigation, ",[16,53260,210],{}," works as a fallback without duplicating the request.",[21,53263,53264,53265,53267],{},"This version keeps the same intent: resolve the data before the SSR render and use ",[16,53266,203],{}," as a backup when no previous state is available.",[30,53269,53271],{"id":53270},"summary","Summary",[21,53273,53274,53276],{},[16,53275,18],{}," lets you move critical data earlier into the server render and produce useful HTML from the very first response. Its value is in improving the first render, not in replacing your entire fetching strategy.",[21,53278,53279],{},"In manual Vue SSR, it is a precise and powerful tool. In Nuxt, higher-level utilities are usually the better fit. In both cases, the key idea is the same: important content should be ready before the initial page is rendered.",[1606,53281,1608],{},{"title":273,"searchDepth":308,"depth":308,"links":53283},[53284,53285,53286,53287,53288,53294,53295],{"id":51941,"depth":308,"text":51942},{"id":51967,"depth":308,"text":51968},{"id":52028,"depth":308,"text":52029},{"id":52058,"depth":308,"text":52059},{"id":52092,"depth":308,"text":52093,"children":53289},[53290,53291,53292,53293],{"id":52096,"depth":324,"text":52097},{"id":52116,"depth":324,"text":52117},{"id":52134,"depth":324,"text":52135},{"id":52146,"depth":324,"text":52147},{"id":52159,"depth":308,"text":52160},{"id":53270,"depth":308,"text":53271},"Illustration of a server delivering HTML with resolved data while a client hydrates without needing an extra fetch.","How to use serverPrefetch and onServerPrefetch to load data before SSR rendering, avoid incomplete HTML, and coordinate the server's first render with client hydration.",{"script":53299},[53300],{"type":1632,"key":1633,"data-nuxt-schema-org":327,"nodes":53301},[53302],{"headline":51922,"author":53303,"datePublished":53304,"@type":1640},{"name":1637,"@type":1638},"2026-03-20T19:15:00-05:00","en",{"updatedAt":53304,"readingTime":381,"coverCaption":53307,"author":1637,"keywords":53308},"With `serverPrefetch`, the server can deliver complete HTML, improving both experience and SEO from the very first render.",[1645,18,591,1646,21881],"/blog/vue-lifecycle-ssr-serverprefetch.en",[53311],{"headline":51922,"author":53312,"datePublished":53304,"@type":1640},{"name":1637,"@type":1638},{"title":51922,"description":53297},"A practical series to master every Vue lifecycle hook, from basics to advanced use cases.","Vue Lifecycle Hooks","blog/vue-lifecycle-ssr-serverprefetch.en",[53318,53320,53321,53323,53325],{"tag":53319,"color":1661},"Lifecycle",{"tag":1646,"color":1663},{"tag":53322,"color":1666},"Architecture",{"tag":53324,"color":1669},"Components",{"tag":53326,"color":1672},"Advanced","oVrRND11RnkOx7FAU-x0cfIumYTtRaMsi_M1U6Dt8co",[53329,54628,55882,57597,59682,61059,62424,63514,64512,66881,68595,71113,72251,74706,75806,77862,80449,83252,86002,89113,90798,93988,94647,96341,96893,97571,98419,98547,99123],{"id":5,"title":6,"body":53330,"cover":1623,"coverAlt":1624,"date":1625,"description":1626,"draft":1627,"extension":1628,"head":54610,"locale":1641,"meta":54616,"navigation":327,"path":1648,"schemaOrg":54618,"seo":54621,"series":1653,"seriesDescription":1654,"seriesOrder":391,"seriesTitle":1655,"slug":1656,"stem":1657,"tags":54622,"__hash__":1673},{"type":8,"value":53331,"toc":54596},[53332,53336,53338,53342,53344,53346,53356,53360,53362,53370,53372,53382,53384,53400,53402,53404,53408,53416,53420,53422,53424,53426,53440,53444,53446,53448,53454,53460,53462,53472,53474,53476,53480,53482,53486,53488,53490,54014,54578,54582,54586,54588,54592,54594],[11,53333,14,53334,19],{"id":13},[16,53335,18],{},[21,53337,23],{},[21,53339,53340,28],{},[16,53341,18],{},[30,53343,33],{"id":32},[21,53345,36],{},[38,53347,53348,53350,53352,53354],{},[41,53349,43],{},[41,53351,46],{},[41,53353,49],{},[41,53355,52],{},[21,53357,53358,57],{},[16,53359,18],{},[30,53361,61],{"id":60},[21,53363,53364,66,53366,70,53368,75],{},[16,53365,18],{},[16,53367,69],{},[72,53369,74],{},[21,53371,78],{},[38,53373,53374,53376,53378,53380],{},[41,53375,83],{},[41,53377,86],{},[41,53379,89],{},[41,53381,92],{},[21,53383,95],{},[38,53385,53386,53390,53392],{},[41,53387,100,53388,104],{},[72,53389,103],{},[41,53391,107],{},[41,53393,110,53394,114,53396,118,53398,122],{},[72,53395,113],{},[16,53397,117],{},[16,53399,121],{},[21,53401,125],{},[30,53403,129],{"id":128},[21,53405,53406,134],{},[16,53407,18],{},[38,53409,53410,53412,53414],{},[41,53411,139],{},[41,53413,142],{},[41,53415,145],{},[21,53417,148,53418,152],{},[72,53419,151],{},[30,53421,156],{"id":155},[21,53423,159],{},[21,53425,162],{},[38,53427,53428,53430,53432,53438],{},[41,53429,167],{},[41,53431,170],{},[41,53433,173,53434,118,53436,104],{},[16,53435,117],{},[16,53437,121],{},[41,53439,180],{},[21,53441,183,53442,186],{},[16,53443,18],{},[30,53445,190],{"id":189},[192,53447,195],{"id":194},[21,53449,53450,200,53452,204],{},[16,53451,18],{},[16,53453,203],{},[21,53455,207,53456,118,53458,214],{},[16,53457,210],{},[16,53459,213],{},[192,53461,218],{"id":217},[21,53463,221,53464,225,53466,229,53468,233,53470,236],{},[16,53465,224],{},[16,53467,228],{},[16,53469,232],{},[16,53471,18],{},[192,53473,240],{"id":239},[21,53475,243],{},[21,53477,246,53478,104],{},[16,53479,203],{},[192,53481,252],{"id":251},[21,53483,255,53484,258],{},[16,53485,18],{},[21,53487,261],{},[30,53489,265],{"id":264},[267,53491,53492],{"className":269,"code":270,"filename":271,"language":272,"meta":273,"style":273},[16,53493,53494,53510,53520,53524,53534,53542,53550,53558,53566,53570,53574,53598,53614,53618,53628,53646,53650,53660,53674,53678,53682,53702,53706,53710,53724,53730,53738,53746,53752,53768,53772,53776,53780,53794,53806,53810,53816,53824,53832,53838,53854,53858,53862,53870,53874,53882,53896,53914,53918,53936,53948,53960,53972,53980,53984,53998,54006],{"__ignoreMap":273},[277,53495,53496,53498,53500,53502,53504,53506,53508],{"class":279,"line":280},[277,53497,284],{"class":283},[277,53499,288],{"class":287},[277,53501,292],{"class":291},[277,53503,295],{"class":291},[277,53505,298],{"class":283},[277,53507,302],{"class":301},[277,53509,305],{"class":283},[277,53511,53512,53514,53516,53518],{"class":279,"line":308},[277,53513,312],{"class":311},[277,53515,315],{"class":283},[277,53517,318],{"class":311},[277,53519,321],{"class":301},[277,53521,53522],{"class":279,"line":324},[277,53523,328],{"emptyLinePlaceholder":327},[277,53525,53526,53528,53530,53532],{"class":279,"line":331},[277,53527,334],{"class":311},[277,53529,337],{"class":291},[277,53531,340],{"class":311},[277,53533,343],{"class":283},[277,53535,53536,53538,53540],{"class":279,"line":346},[277,53537,350],{"class":349},[277,53539,353],{"class":311},[277,53541,357],{"class":356},[277,53543,53544,53546,53548],{"class":279,"line":360},[277,53545,363],{"class":349},[277,53547,353],{"class":311},[277,53549,368],{"class":356},[277,53551,53552,53554,53556],{"class":279,"line":371},[277,53553,374],{"class":349},[277,53555,353],{"class":311},[277,53557,357],{"class":356},[277,53559,53560,53562,53564],{"class":279,"line":381},[277,53561,384],{"class":349},[277,53563,353],{"class":311},[277,53565,357],{"class":356},[277,53567,53568],{"class":279,"line":391},[277,53569,394],{"class":283},[277,53571,53572],{"class":279,"line":397},[277,53573,328],{"emptyLinePlaceholder":327},[277,53575,53576,53578,53580,53582,53584,53586,53588,53590,53592,53594,53596],{"class":279,"line":402},[277,53577,405],{"class":311},[277,53579,408],{"class":356},[277,53581,340],{"class":311},[277,53583,413],{"class":291},[277,53585,284],{"class":283},[277,53587,418],{"class":291},[277,53589,421],{"class":311},[277,53591,424],{"class":356},[277,53593,427],{"class":283},[277,53595,430],{"class":356},[277,53597,433],{"class":283},[277,53599,53600,53602,53604,53606,53608,53610,53612],{"class":279,"line":436},[277,53601,405],{"class":311},[277,53603,441],{"class":356},[277,53605,340],{"class":311},[277,53607,413],{"class":291},[277,53609,448],{"class":283},[277,53611,451],{"class":301},[277,53613,433],{"class":283},[277,53615,53616],{"class":279,"line":456},[277,53617,328],{"emptyLinePlaceholder":327},[277,53619,53620,53622,53624,53626],{"class":279,"line":461},[277,53621,464],{"class":311},[277,53623,467],{"class":311},[277,53625,470],{"class":291},[277,53627,473],{"class":283},[277,53629,53630,53632,53634,53636,53638,53640,53642,53644],{"class":279,"line":476},[277,53631,479],{"class":311},[277,53633,482],{"class":356},[277,53635,340],{"class":311},[277,53637,487],{"class":311},[277,53639,490],{"class":291},[277,53641,448],{"class":283},[277,53643,495],{"class":301},[277,53645,433],{"class":283},[277,53647,53648],{"class":279,"line":500},[277,53649,328],{"emptyLinePlaceholder":327},[277,53651,53652,53654,53656,53658],{"class":279,"line":505},[277,53653,508],{"class":311},[277,53655,511],{"class":283},[277,53657,514],{"class":311},[277,53659,517],{"class":283},[277,53661,53662,53664,53666,53668,53670,53672],{"class":279,"line":520},[277,53663,523],{"class":311},[277,53665,526],{"class":311},[277,53667,529],{"class":291},[277,53669,448],{"class":283},[277,53671,534],{"class":301},[277,53673,433],{"class":283},[277,53675,53676],{"class":279,"line":539},[277,53677,542],{"class":283},[277,53679,53680],{"class":279,"line":545},[277,53681,328],{"emptyLinePlaceholder":327},[277,53683,53684,53686,53688,53690,53692,53694,53696,53698,53700],{"class":279,"line":550},[277,53685,553],{"class":283},[277,53687,298],{"class":311},[277,53689,511],{"class":283},[277,53691,560],{"class":311},[277,53693,563],{"class":283},[277,53695,566],{"class":291},[277,53697,569],{"class":283},[277,53699,572],{"class":311},[277,53701,575],{"class":291},[277,53703,53704],{"class":279,"line":578},[277,53705,394],{"class":283},[277,53707,53708],{"class":279,"line":583},[277,53709,328],{"emptyLinePlaceholder":327},[277,53711,53712,53714,53716,53718,53720,53722],{"class":279,"line":588},[277,53713,591],{"class":291},[277,53715,448],{"class":283},[277,53717,464],{"class":311},[277,53719,598],{"class":283},[277,53721,601],{"class":311},[277,53723,343],{"class":283},[277,53725,53726,53728],{"class":279,"line":606},[277,53727,609],{"class":311},[277,53729,343],{"class":283},[277,53731,53732,53734,53736],{"class":279,"line":614},[277,53733,617],{"class":311},[277,53735,470],{"class":291},[277,53737,622],{"class":283},[277,53739,53740,53742,53744],{"class":279,"line":625},[277,53741,628],{"class":283},[277,53743,631],{"class":311},[277,53745,634],{"class":283},[277,53747,53748,53750],{"class":279,"line":637},[277,53749,640],{"class":283},[277,53751,643],{"class":311},[277,53753,53754,53756,53758,53760,53762,53764,53766],{"class":279,"line":646},[277,53755,649],{"class":283},[277,53757,652],{"class":311},[277,53759,529],{"class":291},[277,53761,657],{"class":311},[277,53763,660],{"class":283},[277,53765,353],{"class":311},[277,53767,665],{"class":301},[277,53769,53770],{"class":279,"line":668},[277,53771,542],{"class":283},[277,53773,53774],{"class":279,"line":673},[277,53775,676],{"class":283},[277,53777,53778],{"class":279,"line":679},[277,53779,328],{"emptyLinePlaceholder":327},[277,53781,53782,53784,53786,53788,53790,53792],{"class":279,"line":684},[277,53783,687],{"class":291},[277,53785,448],{"class":283},[277,53787,464],{"class":311},[277,53789,598],{"class":283},[277,53791,601],{"class":311},[277,53793,343],{"class":283},[277,53795,53796,53798,53800,53802,53804],{"class":279,"line":700},[277,53797,508],{"class":311},[277,53799,705],{"class":283},[277,53801,708],{"class":311},[277,53803,711],{"class":283},[277,53805,714],{"class":311},[277,53807,53808],{"class":279,"line":717},[277,53809,328],{"emptyLinePlaceholder":327},[277,53811,53812,53814],{"class":279,"line":722},[277,53813,609],{"class":311},[277,53815,343],{"class":283},[277,53817,53818,53820,53822],{"class":279,"line":729},[277,53819,617],{"class":311},[277,53821,470],{"class":291},[277,53823,622],{"class":283},[277,53825,53826,53828,53830],{"class":279,"line":738},[277,53827,628],{"class":283},[277,53829,631],{"class":311},[277,53831,634],{"class":283},[277,53833,53834,53836],{"class":279,"line":747},[277,53835,640],{"class":283},[277,53837,643],{"class":311},[277,53839,53840,53842,53844,53846,53848,53850,53852],{"class":279,"line":754},[277,53841,649],{"class":283},[277,53843,652],{"class":311},[277,53845,529],{"class":291},[277,53847,657],{"class":311},[277,53849,660],{"class":283},[277,53851,353],{"class":311},[277,53853,769],{"class":301},[277,53855,53856],{"class":279,"line":772},[277,53857,542],{"class":283},[277,53859,53860],{"class":279,"line":777},[277,53861,676],{"class":283},[277,53863,53864,53866,53868],{"class":279,"line":782},[277,53865,785],{"class":283},[277,53867,288],{"class":287},[277,53869,305],{"class":283},[277,53871,53872],{"class":279,"line":792},[277,53873,328],{"emptyLinePlaceholder":327},[277,53875,53876,53878,53880],{"class":279,"line":797},[277,53877,284],{"class":283},[277,53879,802],{"class":287},[277,53881,305],{"class":283},[277,53883,53884,53886,53888,53890,53892,53894],{"class":279,"line":807},[277,53885,810],{"class":283},[277,53887,813],{"class":287},[277,53889,816],{"class":291},[277,53891,298],{"class":283},[277,53893,821],{"class":301},[277,53895,305],{"class":283},[277,53897,53898,53900,53902,53904,53906,53908,53910,53912],{"class":279,"line":826},[277,53899,829],{"class":283},[277,53901,21],{"class":287},[277,53903,834],{"class":291},[277,53905,298],{"class":283},[277,53907,839],{"class":301},[277,53909,842],{"class":283},[277,53911,21],{"class":287},[277,53913,305],{"class":283},[277,53915,53916],{"class":279,"line":849},[277,53917,328],{"emptyLinePlaceholder":327},[277,53919,53920,53922,53924,53926,53928,53930,53932,53934],{"class":279,"line":854},[277,53921,829],{"class":283},[277,53923,802],{"class":287},[277,53925,861],{"class":311},[277,53927,298],{"class":283},[277,53929,866],{"class":301},[277,53931,869],{"class":283},[277,53933,866],{"class":301},[277,53935,305],{"class":283},[277,53937,53938,53940,53942,53944,53946],{"class":279,"line":876},[277,53939,879],{"class":283},[277,53941,11],{"class":287},[277,53943,884],{"class":283},[277,53945,11],{"class":287},[277,53947,305],{"class":283},[277,53949,53950,53952,53954,53956,53958],{"class":279,"line":891},[277,53951,879],{"class":283},[277,53953,21],{"class":287},[277,53955,898],{"class":283},[277,53957,21],{"class":287},[277,53959,305],{"class":283},[277,53961,53962,53964,53966,53968,53970],{"class":279,"line":905},[277,53963,879],{"class":283},[277,53965,21],{"class":287},[277,53967,912],{"class":283},[277,53969,21],{"class":287},[277,53971,305],{"class":283},[277,53973,53974,53976,53978],{"class":279,"line":919},[277,53975,922],{"class":283},[277,53977,802],{"class":287},[277,53979,305],{"class":283},[277,53981,53982],{"class":279,"line":929},[277,53983,328],{"emptyLinePlaceholder":327},[277,53985,53986,53988,53990,53992,53994,53996],{"class":279,"line":934},[277,53987,829],{"class":283},[277,53989,21],{"class":287},[277,53991,941],{"class":291},[277,53993,944],{"class":283},[277,53995,21],{"class":287},[277,53997,305],{"class":283},[277,53999,54000,54002,54004],{"class":279,"line":951},[277,54001,954],{"class":283},[277,54003,813],{"class":287},[277,54005,305],{"class":283},[277,54007,54008,54010,54012],{"class":279,"line":961},[277,54009,785],{"class":283},[277,54011,802],{"class":287},[277,54013,305],{"class":283},[267,54015,54016],{"className":269,"code":970,"filename":971,"language":272,"meta":273,"style":273},[16,54017,54018,54032,54042,54046,54056,54064,54072,54080,54088,54092,54096,54106,54114,54118,54124,54130,54146,54152,54156,54160,54164,54168,54176,54194,54198,54208,54222,54226,54230,54252,54256,54260,54264,54272,54278,54290,54298,54306,54322,54326,54330,54334,54342,54360,54364,54370,54382,54390,54398,54414,54418,54422,54426,54434,54438,54446,54460,54478,54482,54500,54512,54524,54536,54544,54548,54562,54570],{"__ignoreMap":273},[277,54019,54020,54022,54024,54026,54028,54030],{"class":279,"line":280},[277,54021,284],{"class":283},[277,54023,288],{"class":287},[277,54025,295],{"class":291},[277,54027,298],{"class":283},[277,54029,302],{"class":301},[277,54031,305],{"class":283},[277,54033,54034,54036,54038,54040],{"class":279,"line":308},[277,54035,312],{"class":311},[277,54037,994],{"class":283},[277,54039,318],{"class":311},[277,54041,321],{"class":301},[277,54043,54044],{"class":279,"line":324},[277,54045,328],{"emptyLinePlaceholder":327},[277,54047,54048,54050,54052,54054],{"class":279,"line":331},[277,54049,334],{"class":311},[277,54051,337],{"class":291},[277,54053,340],{"class":311},[277,54055,343],{"class":283},[277,54057,54058,54060,54062],{"class":279,"line":346},[277,54059,350],{"class":349},[277,54061,353],{"class":311},[277,54063,357],{"class":356},[277,54065,54066,54068,54070],{"class":279,"line":360},[277,54067,363],{"class":349},[277,54069,353],{"class":311},[277,54071,368],{"class":356},[277,54073,54074,54076,54078],{"class":279,"line":371},[277,54075,374],{"class":349},[277,54077,353],{"class":311},[277,54079,357],{"class":356},[277,54081,54082,54084,54086],{"class":279,"line":381},[277,54083,384],{"class":349},[277,54085,353],{"class":311},[277,54087,357],{"class":356},[277,54089,54090],{"class":279,"line":391},[277,54091,394],{"class":283},[277,54093,54094],{"class":279,"line":397},[277,54095,328],{"emptyLinePlaceholder":327},[277,54097,54098,54100,54102,54104],{"class":279,"line":402},[277,54099,1057],{"class":311},[277,54101,1060],{"class":311},[277,54103,1063],{"class":291},[277,54105,1066],{"class":283},[277,54107,54108,54110,54112],{"class":279,"line":436},[277,54109,1071],{"class":283},[277,54111,1074],{"class":301},[277,54113,1077],{"class":283},[277,54115,54116],{"class":279,"line":456},[277,54117,328],{"emptyLinePlaceholder":327},[277,54119,54120,54122],{"class":279,"line":461},[277,54121,1086],{"class":291},[277,54123,473],{"class":283},[277,54125,54126,54128],{"class":279,"line":476},[277,54127,1093],{"class":311},[277,54129,343],{"class":283},[277,54131,54132,54134,54136,54138,54140,54142,54144],{"class":279,"line":500},[277,54133,1100],{"class":283},[277,54135,430],{"class":356},[277,54137,1105],{"class":311},[277,54139,337],{"class":291},[277,54141,421],{"class":311},[277,54143,424],{"class":356},[277,54145,1077],{"class":283},[277,54147,54148,54150],{"class":279,"line":505},[277,54149,1118],{"class":283},[277,54151,1121],{"class":301},[277,54153,54154],{"class":279,"line":520},[277,54155,1126],{"class":283},[277,54157,54158],{"class":279,"line":539},[277,54159,1131],{"class":283},[277,54161,54162],{"class":279,"line":545},[277,54163,328],{"emptyLinePlaceholder":327},[277,54165,54166],{"class":279,"line":550},[277,54167,1140],{"class":283},[277,54169,54170,54172,54174],{"class":279,"line":578},[277,54171,1145],{"class":311},[277,54173,470],{"class":291},[277,54175,473],{"class":283},[277,54177,54178,54180,54182,54184,54186,54188,54190,54192],{"class":279,"line":583},[277,54179,1154],{"class":311},[277,54181,482],{"class":356},[277,54183,340],{"class":311},[277,54185,487],{"class":311},[277,54187,490],{"class":291},[277,54189,448],{"class":283},[277,54191,495],{"class":301},[277,54193,433],{"class":283},[277,54195,54196],{"class":279,"line":588},[277,54197,328],{"emptyLinePlaceholder":327},[277,54199,54200,54202,54204,54206],{"class":279,"line":606},[277,54201,1177],{"class":311},[277,54203,511],{"class":283},[277,54205,514],{"class":311},[277,54207,517],{"class":283},[277,54209,54210,54212,54214,54216,54218,54220],{"class":279,"line":614},[277,54211,1188],{"class":311},[277,54213,526],{"class":311},[277,54215,529],{"class":291},[277,54217,448],{"class":283},[277,54219,534],{"class":301},[277,54221,433],{"class":283},[277,54223,54224],{"class":279,"line":625},[277,54225,1203],{"class":283},[277,54227,54228],{"class":279,"line":637},[277,54229,328],{"emptyLinePlaceholder":327},[277,54231,54232,54234,54236,54238,54240,54242,54244,54246,54248,54250],{"class":279,"line":646},[277,54233,1212],{"class":356},[277,54235,1215],{"class":283},[277,54237,298],{"class":311},[277,54239,511],{"class":283},[277,54241,560],{"class":311},[277,54243,563],{"class":283},[277,54245,566],{"class":291},[277,54247,569],{"class":283},[277,54249,572],{"class":311},[277,54251,575],{"class":291},[277,54253,54254],{"class":279,"line":668},[277,54255,1126],{"class":283},[277,54257,54258],{"class":279,"line":673},[277,54259,1131],{"class":283},[277,54261,54262],{"class":279,"line":679},[277,54263,328],{"emptyLinePlaceholder":327},[277,54265,54266,54268,54270],{"class":279,"line":684},[277,54267,1248],{"class":311},[277,54269,1251],{"class":291},[277,54271,473],{"class":283},[277,54273,54274,54276],{"class":279,"line":700},[277,54275,1258],{"class":311},[277,54277,343],{"class":283},[277,54279,54280,54282,54284,54286,54288],{"class":279,"line":717},[277,54281,1265],{"class":311},[277,54283,1268],{"class":356},[277,54285,104],{"class":283},[277,54287,1273],{"class":291},[277,54289,622],{"class":283},[277,54291,54292,54294,54296],{"class":279,"line":722},[277,54293,1280],{"class":283},[277,54295,631],{"class":311},[277,54297,634],{"class":283},[277,54299,54300,54302,54304],{"class":279,"line":729},[277,54301,1212],{"class":356},[277,54303,1291],{"class":283},[277,54305,643],{"class":311},[277,54307,54308,54310,54312,54314,54316,54318,54320],{"class":279,"line":738},[277,54309,1298],{"class":283},[277,54311,652],{"class":311},[277,54313,529],{"class":291},[277,54315,657],{"class":311},[277,54317,660],{"class":283},[277,54319,353],{"class":311},[277,54321,665],{"class":301},[277,54323,54324],{"class":279,"line":747},[277,54325,1126],{"class":283},[277,54327,54328],{"class":279,"line":754},[277,54329,1131],{"class":283},[277,54331,54332],{"class":279,"line":772},[277,54333,328],{"emptyLinePlaceholder":327},[277,54335,54336,54338,54340],{"class":279,"line":777},[277,54337,1248],{"class":311},[277,54339,1329],{"class":291},[277,54341,473],{"class":283},[277,54343,54344,54346,54348,54350,54352,54354,54356,54358],{"class":279,"line":782},[277,54345,1336],{"class":311},[277,54347,511],{"class":283},[277,54349,1341],{"class":356},[277,54351,1215],{"class":283},[277,54353,708],{"class":311},[277,54355,1268],{"class":356},[277,54357,1350],{"class":283},[277,54359,714],{"class":311},[277,54361,54362],{"class":279,"line":792},[277,54363,328],{"emptyLinePlaceholder":327},[277,54365,54366,54368],{"class":279,"line":797},[277,54367,1258],{"class":311},[277,54369,343],{"class":283},[277,54371,54372,54374,54376,54378,54380],{"class":279,"line":807},[277,54373,1265],{"class":311},[277,54375,1268],{"class":356},[277,54377,104],{"class":283},[277,54379,1273],{"class":291},[277,54381,622],{"class":283},[277,54383,54384,54386,54388],{"class":279,"line":826},[277,54385,1280],{"class":283},[277,54387,631],{"class":311},[277,54389,634],{"class":283},[277,54391,54392,54394,54396],{"class":279,"line":849},[277,54393,1212],{"class":356},[277,54395,1291],{"class":283},[277,54397,643],{"class":311},[277,54399,54400,54402,54404,54406,54408,54410,54412],{"class":279,"line":854},[277,54401,1298],{"class":283},[277,54403,652],{"class":311},[277,54405,529],{"class":291},[277,54407,657],{"class":311},[277,54409,660],{"class":283},[277,54411,353],{"class":311},[277,54413,769],{"class":301},[277,54415,54416],{"class":279,"line":876},[277,54417,1126],{"class":283},[277,54419,54420],{"class":279,"line":891},[277,54421,542],{"class":283},[277,54423,54424],{"class":279,"line":905},[277,54425,676],{"class":283},[277,54427,54428,54430,54432],{"class":279,"line":919},[277,54429,785],{"class":283},[277,54431,288],{"class":287},[277,54433,305],{"class":283},[277,54435,54436],{"class":279,"line":929},[277,54437,328],{"emptyLinePlaceholder":327},[277,54439,54440,54442,54444],{"class":279,"line":934},[277,54441,284],{"class":283},[277,54443,802],{"class":287},[277,54445,305],{"class":283},[277,54447,54448,54450,54452,54454,54456,54458],{"class":279,"line":951},[277,54449,810],{"class":283},[277,54451,813],{"class":287},[277,54453,816],{"class":291},[277,54455,298],{"class":283},[277,54457,821],{"class":301},[277,54459,305],{"class":283},[277,54461,54462,54464,54466,54468,54470,54472,54474,54476],{"class":279,"line":961},[277,54463,829],{"class":283},[277,54465,21],{"class":287},[277,54467,834],{"class":291},[277,54469,298],{"class":283},[277,54471,839],{"class":301},[277,54473,842],{"class":283},[277,54475,21],{"class":287},[277,54477,305],{"class":283},[277,54479,54480],{"class":279,"line":1473},[277,54481,328],{"emptyLinePlaceholder":327},[277,54483,54484,54486,54488,54490,54492,54494,54496,54498],{"class":279,"line":1478},[277,54485,829],{"class":283},[277,54487,802],{"class":287},[277,54489,861],{"class":311},[277,54491,298],{"class":283},[277,54493,866],{"class":301},[277,54495,869],{"class":283},[277,54497,866],{"class":301},[277,54499,305],{"class":283},[277,54501,54502,54504,54506,54508,54510],{"class":279,"line":1497},[277,54503,879],{"class":283},[277,54505,11],{"class":287},[277,54507,884],{"class":283},[277,54509,11],{"class":287},[277,54511,305],{"class":283},[277,54513,54514,54516,54518,54520,54522],{"class":279,"line":1510},[277,54515,879],{"class":283},[277,54517,21],{"class":287},[277,54519,898],{"class":283},[277,54521,21],{"class":287},[277,54523,305],{"class":283},[277,54525,54526,54528,54530,54532,54534],{"class":279,"line":1523},[277,54527,879],{"class":283},[277,54529,21],{"class":287},[277,54531,912],{"class":283},[277,54533,21],{"class":287},[277,54535,305],{"class":283},[277,54537,54538,54540,54542],{"class":279,"line":1536},[277,54539,922],{"class":283},[277,54541,802],{"class":287},[277,54543,305],{"class":283},[277,54545,54546],{"class":279,"line":1545},[277,54547,328],{"emptyLinePlaceholder":327},[277,54549,54550,54552,54554,54556,54558,54560],{"class":279,"line":1550},[277,54551,829],{"class":283},[277,54553,21],{"class":287},[277,54555,941],{"class":291},[277,54557,944],{"class":283},[277,54559,21],{"class":287},[277,54561,305],{"class":283},[277,54563,54564,54566,54568],{"class":279,"line":1565},[277,54565,954],{"class":283},[277,54567,813],{"class":287},[277,54569,305],{"class":283},[277,54571,54572,54574,54576],{"class":279,"line":1574},[277,54573,785],{"class":283},[277,54575,802],{"class":287},[277,54577,305],{"class":283},[21,54579,1583,54580,1586],{},[16,54581,210],{},[21,54583,1589,54584,1592],{},[16,54585,203],{},[30,54587,1596],{"id":1595},[21,54589,54590,1601],{},[16,54591,18],{},[21,54593,1604],{},[1606,54595,1608],{},{"title":273,"searchDepth":308,"depth":308,"links":54597},[54598,54599,54600,54601,54602,54608,54609],{"id":32,"depth":308,"text":33},{"id":60,"depth":308,"text":61},{"id":128,"depth":308,"text":129},{"id":155,"depth":308,"text":156},{"id":189,"depth":308,"text":190,"children":54603},[54604,54605,54606,54607],{"id":194,"depth":324,"text":195},{"id":217,"depth":324,"text":218},{"id":239,"depth":324,"text":240},{"id":251,"depth":324,"text":252},{"id":264,"depth":308,"text":265},{"id":1595,"depth":308,"text":1596},{"script":54611},[54612],{"type":1632,"key":1633,"data-nuxt-schema-org":327,"nodes":54613},[54614],{"headline":6,"author":54615,"datePublished":1639,"@type":1640},{"name":1637,"@type":1638},{"updatedAt":1639,"readingTime":381,"coverCaption":1643,"author":1637,"keywords":54617},[1645,18,591,1646,1647],[54619],{"headline":6,"author":54620,"datePublished":1639,"@type":1640},{"name":1637,"@type":1638},{"title":6,"description":1626},[54623,54624,54625,54626,54627],{"tag":1660,"color":1661},{"tag":1646,"color":1663},{"tag":1665,"color":1666},{"tag":1668,"color":1669},{"tag":1671,"color":1672},{"id":1675,"title":1676,"body":54629,"cover":3138,"coverAlt":3139,"date":3140,"description":3141,"draft":1627,"extension":1628,"head":55864,"locale":1641,"meta":55870,"navigation":327,"path":3152,"schemaOrg":55872,"seo":55875,"series":1653,"seriesDescription":1654,"seriesOrder":381,"seriesTitle":1655,"slug":1656,"stem":3157,"tags":55876,"__hash__":3170},{"type":8,"value":54630,"toc":55845},[54631,54637,54639,54645,54647,54653,54655,54657,54671,54677,54679,54683,54685,54699,54701,54729,54731,54741,54743,54745,54747,54749,54761,54763,54765,54767,54769,54789,54791,54793,54795,54801,54803,54807,54809,54811,54813,54815,54817,54819,54823,54825,54829,54831,54833,54835,55323,55809,55811,55819,55821,55827,55829,55839,55843],[11,54632,1682,54633,225,54635,19],{"id":1681},[16,54634,1685],{},[16,54636,1688],{},[21,54638,1691],{},[21,54640,1694,54641,1697,54643,1700],{},[16,54642,1685],{},[16,54644,1688],{},[21,54646,1703],{},[38,54648,54649,54651],{},[41,54650,1708],{},[41,54652,1711],{},[30,54654,33],{"id":32},[21,54656,1716],{},[38,54658,54659,54661,54663,54665],{},[41,54660,1721],{},[41,54662,1724],{},[41,54664,1727],{},[41,54666,54667,1697,54669,1736],{},[16,54668,1732],{},[16,54670,1735],{},[21,54672,1739,54673,1697,54675,1744],{},[16,54674,1685],{},[16,54676,1688],{},[30,54678,61],{"id":60},[21,54680,1749,54681,1752],{},[16,54682,1732],{},[21,54684,1755],{},[38,54686,54687,54693],{},[41,54688,54689,66,54691,1765],{},[16,54690,1685],{},[16,54692,1764],{},[41,54694,54695,66,54697,1773],{},[16,54696,1688],{},[16,54698,1772],{},[21,54700,1776],{},[38,54702,54703,54707,54711,54723],{},[41,54704,54705,1784],{},[16,54706,1783],{},[41,54708,54709,1790],{},[16,54710,1789],{},[41,54712,54713,1795,54715,225,54717,225,54719,225,54721,1808],{},[16,54714,334],{},[16,54716,1798],{},[16,54718,1801],{},[16,54720,1804],{},[16,54722,1807],{},[41,54724,54725,1697,54727,1817],{},[16,54726,1813],{},[16,54728,1816],{},[21,54730,1820],{},[38,54732,54733,54735],{},[41,54734,1825],{},[41,54736,1828,54737,118,54739,1835],{},[16,54738,1831],{},[16,54740,1834],{},[21,54742,1838],{},[30,54744,129],{"id":128},[21,54746,1843],{},[21,54748,1846],{},[38,54750,54751,54753,54755,54757],{},[41,54752,1851],{},[41,54754,1854],{},[41,54756,1857],{},[41,54758,1860,54759,1863],{},[16,54760,1732],{},[21,54762,1866],{},[30,54764,156],{"id":155},[21,54766,1871],{},[21,54768,1874],{},[38,54770,54771,54781,54785,54787],{},[41,54772,1879,54773,225,54775,225,54777,118,54779,104],{},[16,54774,1882],{},[16,54776,1885],{},[16,54778,1732],{},[16,54780,1735],{},[41,54782,1892,54783,1895],{},[16,54784,1735],{},[41,54786,1898],{},[41,54788,1901],{},[21,54790,1904],{},[30,54792,190],{"id":189},[192,54794,1910],{"id":1909},[21,54796,1913,54797,118,54799,104],{},[16,54798,1735],{},[16,54800,1732],{},[192,54802,1921],{"id":1920},[21,54804,1924,54805,1928],{},[16,54806,1927],{},[192,54808,1932],{"id":1931},[21,54810,1935],{},[192,54812,1939],{"id":1938},[21,54814,1942],{},[30,54816,1946],{"id":1945},[192,54818,1950],{"id":1949},[21,54820,1953,54821,1956],{},[16,54822,1685],{},[192,54824,1960],{"id":1959},[21,54826,54827,1965],{},[16,54828,1688],{},[192,54830,1969],{"id":1968},[21,54832,1972],{},[30,54834,1976],{"id":1975},[267,54836,54837],{"className":269,"code":1979,"filename":271,"language":272,"meta":273,"style":273},[16,54838,54839,54855,54865,54869,54881,54889,54895,54899,54903,54915,54923,54929,54933,54937,54949,54969,54989,55009,55013,55017,55033,55049,55059,55067,55079,55083,55103,55107,55117,55121,55125,55129,55143,55155,55159,55167,55171,55175,55179,55183,55197,55209,55213,55221,55225,55229,55233,55237,55241,55257,55281,55285,55297,55301,55311,55315],{"__ignoreMap":273},[277,54840,54841,54843,54845,54847,54849,54851,54853],{"class":279,"line":280},[277,54842,284],{"class":283},[277,54844,288],{"class":287},[277,54846,292],{"class":291},[277,54848,295],{"class":291},[277,54850,298],{"class":283},[277,54852,302],{"class":301},[277,54854,305],{"class":283},[277,54856,54857,54859,54861,54863],{"class":279,"line":308},[277,54858,312],{"class":311},[277,54860,2004],{"class":283},[277,54862,318],{"class":311},[277,54864,321],{"class":301},[277,54866,54867],{"class":279,"line":324},[277,54868,328],{"emptyLinePlaceholder":327},[277,54870,54871,54873,54875,54877,54879],{"class":279,"line":331},[277,54872,405],{"class":311},[277,54874,2019],{"class":356},[277,54876,340],{"class":311},[277,54878,2024],{"class":291},[277,54880,1066],{"class":283},[277,54882,54883,54885,54887],{"class":279,"line":346},[277,54884,2031],{"class":283},[277,54886,451],{"class":301},[277,54888,1077],{"class":283},[277,54890,54891,54893],{"class":279,"line":360},[277,54892,2040],{"class":283},[277,54894,2043],{"class":356},[277,54896,54897],{"class":279,"line":371},[277,54898,676],{"class":283},[277,54900,54901],{"class":279,"line":381},[277,54902,328],{"emptyLinePlaceholder":327},[277,54904,54905,54907,54909,54911,54913],{"class":279,"line":391},[277,54906,405],{"class":311},[277,54908,2058],{"class":356},[277,54910,340],{"class":311},[277,54912,2024],{"class":291},[277,54914,1066],{"class":283},[277,54916,54917,54919,54921],{"class":279,"line":397},[277,54918,2069],{"class":283},[277,54920,2072],{"class":356},[277,54922,1077],{"class":283},[277,54924,54925,54927],{"class":279,"line":402},[277,54926,2079],{"class":283},[277,54928,2082],{"class":356},[277,54930,54931],{"class":279,"line":436},[277,54932,676],{"class":283},[277,54934,54935],{"class":279,"line":456},[277,54936,328],{"emptyLinePlaceholder":327},[277,54938,54939,54941,54943,54945,54947],{"class":279,"line":461},[277,54940,405],{"class":311},[277,54942,2097],{"class":356},[277,54944,340],{"class":311},[277,54946,413],{"class":291},[277,54948,2104],{"class":283},[277,54950,54951,54953,54955,54957,54959,54961,54963,54965,54967],{"class":279,"line":476},[277,54952,2109],{"class":283},[277,54954,2072],{"class":356},[277,54956,2114],{"class":283},[277,54958,2117],{"class":301},[277,54960,2120],{"class":283},[277,54962,2123],{"class":356},[277,54964,2126],{"class":283},[277,54966,2129],{"class":301},[277,54968,2132],{"class":283},[277,54970,54971,54973,54975,54977,54979,54981,54983,54985,54987],{"class":279,"line":500},[277,54972,2109],{"class":283},[277,54974,2139],{"class":356},[277,54976,2114],{"class":283},[277,54978,2144],{"class":301},[277,54980,2120],{"class":283},[277,54982,2149],{"class":356},[277,54984,2126],{"class":283},[277,54986,2154],{"class":301},[277,54988,2132],{"class":283},[277,54990,54991,54993,54995,54997,54999,55001,55003,55005,55007],{"class":279,"line":505},[277,54992,2109],{"class":283},[277,54994,2163],{"class":356},[277,54996,2114],{"class":283},[277,54998,2168],{"class":301},[277,55000,2120],{"class":283},[277,55002,2123],{"class":356},[277,55004,2126],{"class":283},[277,55006,2129],{"class":301},[277,55008,2179],{"class":283},[277,55010,55011],{"class":279,"line":520},[277,55012,2184],{"class":283},[277,55014,55015],{"class":279,"line":539},[277,55016,328],{"emptyLinePlaceholder":327},[277,55018,55019,55021,55023,55025,55027,55029,55031],{"class":279,"line":545},[277,55020,405],{"class":311},[277,55022,2195],{"class":356},[277,55024,340],{"class":311},[277,55026,2200],{"class":291},[277,55028,2203],{"class":283},[277,55030,601],{"class":311},[277,55032,343],{"class":283},[277,55034,55035,55037,55039,55041,55043,55045,55047],{"class":279,"line":550},[277,55036,2212],{"class":311},[277,55038,2215],{"class":283},[277,55040,2218],{"class":291},[277,55042,448],{"class":283},[277,55044,2223],{"class":349},[277,55046,2226],{"class":311},[277,55048,343],{"class":283},[277,55050,55051,55053,55055,55057],{"class":279,"line":578},[277,55052,2233],{"class":311},[277,55054,2236],{"class":356},[277,55056,340],{"class":311},[277,55058,2241],{"class":283},[277,55060,55061,55063,55065],{"class":279,"line":583},[277,55062,2246],{"class":283},[277,55064,2249],{"class":291},[277,55066,622],{"class":283},[277,55068,55069,55071,55073,55075,55077],{"class":279,"line":588},[277,55070,2246],{"class":283},[277,55072,2258],{"class":291},[277,55074,2261],{"class":283},[277,55076,2249],{"class":291},[277,55078,2266],{"class":283},[277,55080,55081],{"class":279,"line":606},[277,55082,328],{"emptyLinePlaceholder":327},[277,55084,55085,55087,55089,55091,55093,55095,55097,55099,55101],{"class":279,"line":614},[277,55086,2233],{"class":311},[277,55088,2277],{"class":356},[277,55090,340],{"class":311},[277,55092,2282],{"class":283},[277,55094,2285],{"class":311},[277,55096,2288],{"class":311},[277,55098,2291],{"class":283},[277,55100,353],{"class":311},[277,55102,2296],{"class":356},[277,55104,55105],{"class":279,"line":625},[277,55106,328],{"emptyLinePlaceholder":327},[277,55108,55109,55111,55113,55115],{"class":279,"line":637},[277,55110,1093],{"class":311},[277,55112,2307],{"class":283},[277,55114,2310],{"class":311},[277,55116,2313],{"class":283},[277,55118,55119],{"class":279,"line":646},[277,55120,2318],{"class":283},[277,55122,55123],{"class":279,"line":668},[277,55124,676],{"class":283},[277,55126,55127],{"class":279,"line":673},[277,55128,328],{"emptyLinePlaceholder":327},[277,55130,55131,55133,55135,55137,55139,55141],{"class":279,"line":679},[277,55132,2331],{"class":291},[277,55134,2334],{"class":283},[277,55136,2337],{"class":349},[277,55138,2340],{"class":283},[277,55140,601],{"class":311},[277,55142,343],{"class":283},[277,55144,55145,55147,55149,55151,55153],{"class":279,"line":684},[277,55146,2349],{"class":283},[277,55148,2352],{"class":291},[277,55150,448],{"class":283},[277,55152,2357],{"class":301},[277,55154,2360],{"class":283},[277,55156,55157],{"class":279,"line":700},[277,55158,2365],{"class":283},[277,55160,55161,55163,55165],{"class":279,"line":717},[277,55162,2370],{"class":283},[277,55164,2373],{"class":291},[277,55166,2376],{"class":283},[277,55168,55169],{"class":279,"line":722},[277,55170,2381],{"class":283},[277,55172,55173],{"class":279,"line":729},[277,55174,2318],{"class":283},[277,55176,55177],{"class":279,"line":738},[277,55178,676],{"class":283},[277,55180,55181],{"class":279,"line":747},[277,55182,328],{"emptyLinePlaceholder":327},[277,55184,55185,55187,55189,55191,55193,55195],{"class":279,"line":754},[277,55186,2398],{"class":291},[277,55188,2334],{"class":283},[277,55190,2337],{"class":349},[277,55192,2340],{"class":283},[277,55194,601],{"class":311},[277,55196,343],{"class":283},[277,55198,55199,55201,55203,55205,55207],{"class":279,"line":772},[277,55200,2349],{"class":283},[277,55202,2352],{"class":291},[277,55204,448],{"class":283},[277,55206,2419],{"class":301},[277,55208,2360],{"class":283},[277,55210,55211],{"class":279,"line":777},[277,55212,2365],{"class":283},[277,55214,55215,55217,55219],{"class":279,"line":782},[277,55216,2370],{"class":283},[277,55218,2373],{"class":291},[277,55220,2376],{"class":283},[277,55222,55223],{"class":279,"line":792},[277,55224,2438],{"class":283},[277,55226,55227],{"class":279,"line":797},[277,55228,2443],{"class":283},[277,55230,55231],{"class":279,"line":807},[277,55232,2318],{"class":283},[277,55234,55235],{"class":279,"line":826},[277,55236,676],{"class":283},[277,55238,55239],{"class":279,"line":849},[277,55240,328],{"emptyLinePlaceholder":327},[277,55242,55243,55245,55247,55249,55251,55253,55255],{"class":279,"line":854},[277,55244,2460],{"class":311},[277,55246,2463],{"class":291},[277,55248,448],{"class":283},[277,55250,2468],{"class":349},[277,55252,353],{"class":311},[277,55254,2473],{"class":356},[277,55256,2476],{"class":283},[277,55258,55259,55261,55263,55265,55267,55269,55271,55273,55275,55277,55279],{"class":279,"line":876},[277,55260,479],{"class":311},[277,55262,2483],{"class":356},[277,55264,340],{"class":311},[277,55266,2215],{"class":283},[277,55268,2490],{"class":291},[277,55270,448],{"class":283},[277,55272,2495],{"class":349},[277,55274,2226],{"class":311},[277,55276,2500],{"class":283},[277,55278,2503],{"class":311},[277,55280,2506],{"class":283},[277,55282,55283],{"class":279,"line":891},[277,55284,328],{"emptyLinePlaceholder":327},[277,55286,55287,55289,55291,55293,55295],{"class":279,"line":905},[277,55288,508],{"class":311},[277,55290,511],{"class":283},[277,55292,514],{"class":311},[277,55294,2521],{"class":283},[277,55296,714],{"class":311},[277,55298,55299],{"class":279,"line":919},[277,55300,328],{"emptyLinePlaceholder":327},[277,55302,55303,55305,55307,55309],{"class":279,"line":929},[277,55304,2532],{"class":283},[277,55306,298],{"class":311},[277,55308,2288],{"class":311},[277,55310,2539],{"class":283},[277,55312,55313],{"class":279,"line":934},[277,55314,394],{"class":283},[277,55316,55317,55319,55321],{"class":279,"line":951},[277,55318,785],{"class":283},[277,55320,288],{"class":287},[277,55322,305],{"class":283},[267,55324,55325],{"className":269,"code":2554,"filename":971,"language":272,"meta":273,"style":273},[16,55326,55327,55341,55349,55357,55361,55367,55373,55377,55385,55391,55395,55399,55407,55413,55417,55421,55441,55461,55481,55485,55489,55493,55497,55501,55507,55525,55535,55543,55559,55563,55585,55589,55599,55603,55607,55611,55615,55625,55637,55641,55649,55653,55657,55661,55665,55675,55687,55691,55699,55703,55707,55711,55715,55719,55723,55733,55759,55763,55775,55779,55789,55793,55797,55801],{"__ignoreMap":273},[277,55328,55329,55331,55333,55335,55337,55339],{"class":279,"line":280},[277,55330,284],{"class":283},[277,55332,288],{"class":287},[277,55334,295],{"class":291},[277,55336,298],{"class":283},[277,55338,302],{"class":301},[277,55340,305],{"class":283},[277,55342,55343,55345,55347],{"class":279,"line":308},[277,55344,1057],{"class":311},[277,55346,1060],{"class":311},[277,55348,343],{"class":283},[277,55350,55351,55353,55355],{"class":279,"line":324},[277,55352,1071],{"class":283},[277,55354,2585],{"class":301},[277,55356,1077],{"class":283},[277,55358,55359],{"class":279,"line":331},[277,55360,328],{"emptyLinePlaceholder":327},[277,55362,55363,55365],{"class":279,"line":346},[277,55364,1086],{"class":291},[277,55366,473],{"class":283},[277,55368,55369,55371],{"class":279,"line":360},[277,55370,1093],{"class":311},[277,55372,343],{"class":283},[277,55374,55375],{"class":279,"line":371},[277,55376,2608],{"class":283},[277,55378,55379,55381,55383],{"class":279,"line":381},[277,55380,2613],{"class":283},[277,55382,451],{"class":301},[277,55384,1077],{"class":283},[277,55386,55387,55389],{"class":279,"line":391},[277,55388,2622],{"class":283},[277,55390,2043],{"class":356},[277,55392,55393],{"class":279,"line":397},[277,55394,2629],{"class":283},[277,55396,55397],{"class":279,"line":402},[277,55398,2634],{"class":283},[277,55400,55401,55403,55405],{"class":279,"line":436},[277,55402,2639],{"class":283},[277,55404,2072],{"class":356},[277,55406,1077],{"class":283},[277,55408,55409,55411],{"class":279,"line":456},[277,55410,2648],{"class":283},[277,55412,2082],{"class":356},[277,55414,55415],{"class":279,"line":461},[277,55416,2629],{"class":283},[277,55418,55419],{"class":279,"line":476},[277,55420,2659],{"class":283},[277,55422,55423,55425,55427,55429,55431,55433,55435,55437,55439],{"class":279,"line":500},[277,55424,2664],{"class":283},[277,55426,2072],{"class":356},[277,55428,2114],{"class":283},[277,55430,2117],{"class":301},[277,55432,2120],{"class":283},[277,55434,2123],{"class":356},[277,55436,2126],{"class":283},[277,55438,2129],{"class":301},[277,55440,2132],{"class":283},[277,55442,55443,55445,55447,55449,55451,55453,55455,55457,55459],{"class":279,"line":505},[277,55444,2664],{"class":283},[277,55446,2139],{"class":356},[277,55448,2114],{"class":283},[277,55450,2144],{"class":301},[277,55452,2120],{"class":283},[277,55454,2149],{"class":356},[277,55456,2126],{"class":283},[277,55458,2154],{"class":301},[277,55460,2132],{"class":283},[277,55462,55463,55465,55467,55469,55471,55473,55475,55477,55479],{"class":279,"line":520},[277,55464,2664],{"class":283},[277,55466,2163],{"class":356},[277,55468,2114],{"class":283},[277,55470,2168],{"class":301},[277,55472,2120],{"class":283},[277,55474,2123],{"class":356},[277,55476,2126],{"class":283},[277,55478,2129],{"class":301},[277,55480,2179],{"class":283},[277,55482,55483],{"class":279,"line":539},[277,55484,2725],{"class":283},[277,55486,55487],{"class":279,"line":545},[277,55488,1126],{"class":283},[277,55490,55491],{"class":279,"line":550},[277,55492,1131],{"class":283},[277,55494,55495],{"class":279,"line":578},[277,55496,328],{"emptyLinePlaceholder":327},[277,55498,55499],{"class":279,"line":583},[277,55500,2742],{"class":283},[277,55502,55503,55505],{"class":279,"line":588},[277,55504,2747],{"class":291},[277,55506,473],{"class":283},[277,55508,55509,55511,55513,55515,55517,55519,55521,55523],{"class":279,"line":606},[277,55510,2754],{"class":311},[277,55512,1268],{"class":356},[277,55514,2759],{"class":283},[277,55516,2218],{"class":291},[277,55518,448],{"class":283},[277,55520,2223],{"class":349},[277,55522,2226],{"class":311},[277,55524,343],{"class":283},[277,55526,55527,55529,55531,55533],{"class":279,"line":614},[277,55528,2774],{"class":311},[277,55530,2236],{"class":356},[277,55532,340],{"class":311},[277,55534,2241],{"class":283},[277,55536,55537,55539,55541],{"class":279,"line":625},[277,55538,2785],{"class":283},[277,55540,2249],{"class":291},[277,55542,622],{"class":283},[277,55544,55545,55547,55549,55551,55553,55555,55557],{"class":279,"line":637},[277,55546,2785],{"class":283},[277,55548,2258],{"class":291},[277,55550,448],{"class":283},[277,55552,1341],{"class":356},[277,55554,2802],{"class":283},[277,55556,2249],{"class":291},[277,55558,2266],{"class":283},[277,55560,55561],{"class":279,"line":646},[277,55562,328],{"emptyLinePlaceholder":327},[277,55564,55565,55567,55569,55571,55573,55575,55577,55579,55581,55583],{"class":279,"line":668},[277,55566,2774],{"class":311},[277,55568,2277],{"class":356},[277,55570,340],{"class":311},[277,55572,1268],{"class":356},[277,55574,2823],{"class":283},[277,55576,2285],{"class":311},[277,55578,2288],{"class":311},[277,55580,2291],{"class":283},[277,55582,353],{"class":311},[277,55584,2296],{"class":356},[277,55586,55587],{"class":279,"line":673},[277,55588,328],{"emptyLinePlaceholder":327},[277,55590,55591,55593,55595,55597],{"class":279,"line":679},[277,55592,2842],{"class":311},[277,55594,2307],{"class":283},[277,55596,2310],{"class":311},[277,55598,2313],{"class":283},[277,55600,55601],{"class":279,"line":684},[277,55602,2853],{"class":283},[277,55604,55605],{"class":279,"line":700},[277,55606,1126],{"class":283},[277,55608,55609],{"class":279,"line":717},[277,55610,1131],{"class":283},[277,55612,55613],{"class":279,"line":722},[277,55614,328],{"emptyLinePlaceholder":327},[277,55616,55617,55619,55621,55623],{"class":279,"line":729},[277,55618,2870],{"class":291},[277,55620,448],{"class":283},[277,55622,2337],{"class":349},[277,55624,2476],{"class":283},[277,55626,55627,55629,55631,55633,55635],{"class":279,"line":738},[277,55628,2881],{"class":283},[277,55630,2352],{"class":291},[277,55632,448],{"class":283},[277,55634,2357],{"class":301},[277,55636,2360],{"class":283},[277,55638,55639],{"class":279,"line":747},[277,55640,2894],{"class":283},[277,55642,55643,55645,55647],{"class":279,"line":754},[277,55644,2899],{"class":283},[277,55646,2373],{"class":291},[277,55648,2376],{"class":283},[277,55650,55651],{"class":279,"line":772},[277,55652,2908],{"class":283},[277,55654,55655],{"class":279,"line":777},[277,55656,2913],{"class":283},[277,55658,55659],{"class":279,"line":782},[277,55660,1131],{"class":283},[277,55662,55663],{"class":279,"line":792},[277,55664,328],{"emptyLinePlaceholder":327},[277,55666,55667,55669,55671,55673],{"class":279,"line":797},[277,55668,2926],{"class":291},[277,55670,448],{"class":283},[277,55672,2337],{"class":349},[277,55674,2476],{"class":283},[277,55676,55677,55679,55681,55683,55685],{"class":279,"line":807},[277,55678,2881],{"class":283},[277,55680,2352],{"class":291},[277,55682,448],{"class":283},[277,55684,2419],{"class":301},[277,55686,2360],{"class":283},[277,55688,55689],{"class":279,"line":826},[277,55690,2894],{"class":283},[277,55692,55693,55695,55697],{"class":279,"line":849},[277,55694,2899],{"class":283},[277,55696,2373],{"class":291},[277,55698,2376],{"class":283},[277,55700,55701],{"class":279,"line":854},[277,55702,2961],{"class":283},[277,55704,55705],{"class":279,"line":876},[277,55706,2966],{"class":283},[277,55708,55709],{"class":279,"line":891},[277,55710,2913],{"class":283},[277,55712,55713],{"class":279,"line":905},[277,55714,1131],{"class":283},[277,55716,55717],{"class":279,"line":919},[277,55718,328],{"emptyLinePlaceholder":327},[277,55720,55721],{"class":279,"line":929},[277,55722,1140],{"class":283},[277,55724,55725,55727,55729,55731],{"class":279,"line":934},[277,55726,2987],{"class":291},[277,55728,448],{"class":283},[277,55730,2468],{"class":349},[277,55732,2476],{"class":283},[277,55734,55735,55737,55739,55741,55743,55745,55747,55749,55751,55753,55755,55757],{"class":279,"line":951},[277,55736,1154],{"class":311},[277,55738,2483],{"class":356},[277,55740,340],{"class":311},[277,55742,1268],{"class":356},[277,55744,2759],{"class":283},[277,55746,2490],{"class":291},[277,55748,448],{"class":283},[277,55750,2495],{"class":349},[277,55752,2226],{"class":311},[277,55754,2500],{"class":283},[277,55756,2503],{"class":311},[277,55758,2506],{"class":283},[277,55760,55761],{"class":279,"line":961},[277,55762,328],{"emptyLinePlaceholder":327},[277,55764,55765,55767,55769,55771,55773],{"class":279,"line":1473},[277,55766,1177],{"class":311},[277,55768,511],{"class":283},[277,55770,514],{"class":311},[277,55772,2521],{"class":283},[277,55774,714],{"class":311},[277,55776,55777],{"class":279,"line":1478},[277,55778,328],{"emptyLinePlaceholder":327},[277,55780,55781,55783,55785,55787],{"class":279,"line":1497},[277,55782,3044],{"class":283},[277,55784,298],{"class":311},[277,55786,2288],{"class":311},[277,55788,2539],{"class":283},[277,55790,55791],{"class":279,"line":1510},[277,55792,1126],{"class":283},[277,55794,55795],{"class":279,"line":1523},[277,55796,542],{"class":283},[277,55798,55799],{"class":279,"line":1536},[277,55800,394],{"class":283},[277,55802,55803,55805,55807],{"class":279,"line":1545},[277,55804,785],{"class":283},[277,55806,288],{"class":287},[277,55808,305],{"class":283},[21,55810,3073],{},[38,55812,55813,55815,55817],{},[41,55814,3078],{},[41,55816,3081],{},[41,55818,3084],{},[30,55820,1596],{"id":1595},[21,55822,55823,1697,55825,3093],{},[16,55824,1685],{},[16,55826,1688],{},[21,55828,3096],{},[38,55830,55831,55833,55835],{},[41,55832,3101],{},[41,55834,3104],{},[41,55836,3107,55837,104],{},[16,55838,1732],{},[3111,55840,55841],{},[21,55842,3115],{},[1606,55844,3118],{},{"title":273,"searchDepth":308,"depth":308,"links":55846},[55847,55848,55849,55850,55851,55857,55862,55863],{"id":32,"depth":308,"text":33},{"id":60,"depth":308,"text":61},{"id":128,"depth":308,"text":129},{"id":155,"depth":308,"text":156},{"id":189,"depth":308,"text":190,"children":55852},[55853,55854,55855,55856],{"id":1909,"depth":324,"text":1910},{"id":1920,"depth":324,"text":1921},{"id":1931,"depth":324,"text":1932},{"id":1938,"depth":324,"text":1939},{"id":1945,"depth":308,"text":1946,"children":55858},[55859,55860,55861],{"id":1949,"depth":324,"text":1950},{"id":1959,"depth":324,"text":1960},{"id":1968,"depth":324,"text":1969},{"id":1975,"depth":308,"text":1976},{"id":1595,"depth":308,"text":1596},{"script":55865},[55866],{"type":1632,"key":1633,"data-nuxt-schema-org":327,"nodes":55867},[55868],{"headline":1676,"author":55869,"datePublished":3148,"@type":1640},{"name":1637,"@type":1638},{"updatedAt":3148,"coverCaption":3150,"author":1637,"keywords":55871},[1645,1685,1688,2331,2398],[55873],{"headline":1676,"author":55874,"datePublished":3148,"@type":1640},{"name":1637,"@type":1638},{"title":1676,"description":3141},[55877,55878,55879,55880,55881],{"tag":1660,"color":1661},{"tag":3161,"color":3162},{"tag":3164,"color":3165},{"tag":3167,"color":3168},{"tag":1671,"color":1672},{"id":3172,"title":3173,"body":55883,"cover":5131,"coverAlt":5132,"date":5133,"description":5134,"draft":1627,"extension":1628,"head":57580,"locale":1641,"meta":57586,"navigation":327,"path":5147,"schemaOrg":57588,"seo":57591,"series":1653,"seriesDescription":1654,"seriesOrder":371,"seriesTitle":1655,"slug":1656,"stem":5152,"tags":57592,"__hash__":5160},{"type":8,"value":55884,"toc":57561},[55885,55889,55891,55895,55897,55899,55903,55905,55913,55915,55933,55935,55949,55951,55963,55967,55969,55973,55975,55985,55989,55991,55995,55997,56015,56019,56021,56023,56025,56027,56031,56035,56037,56039,56041,56043,56045,56049,56051,56053,56055,56057,56059,56061,56063,56065,56847,57545,57547,57551,57553,57557,57559],[11,55886,3179,55887],{"id":3178},[16,55888,3182],{},[21,55890,3185],{},[21,55892,3188,55893,3191],{},[16,55894,3182],{},[30,55896,33],{"id":32},[21,55898,3196],{},[21,55900,3199,55901,3202],{},[16,55902,3182],{},[30,55904,61],{"id":60},[21,55906,55907,3209,55909,3213,55911,3217],{},[16,55908,3182],{},[16,55910,3212],{},[72,55912,3216],{},[21,55914,3220],{},[38,55916,55917,55919,55921,55923,55927,55929,55931],{},[41,55918,3164],{},[41,55920,3227],{},[41,55922,3230],{},[41,55924,55925],{},[16,55926,3235],{},[41,55928,3238],{},[41,55930,3241],{},[41,55932,3244],{},[21,55934,3247],{},[38,55936,55937,55941,55945],{},[41,55938,55939,3255],{},[16,55940,3254],{},[41,55942,55943,3261],{},[16,55944,3260],{},[41,55946,55947,3267],{},[16,55948,3266],{},[21,55950,3270],{},[38,55952,55953,55955],{},[41,55954,3275],{},[41,55956,3278,55957,3281,55959,3284,55961,104],{},[16,55958,2123],{},[16,55960,3182],{},[16,55962,3287],{},[21,55964,3290,55965,3295],{},[3292,55966,3294],{},[30,55968,129],{"id":128},[21,55970,55971,3302],{},[16,55972,3182],{},[21,55974,3305],{},[38,55976,55977,55979,55981,55983],{},[41,55978,3310],{},[41,55980,3313],{},[41,55982,3316],{},[41,55984,3319],{},[21,55986,3322,55987,3325],{},[16,55988,3182],{},[30,55990,156],{"id":155},[21,55992,3330,55993,3333],{},[16,55994,3182],{},[21,55996,162],{},[38,55998,55999,56007,56011,56013],{},[41,56000,3340,56001,225,56003,225,56005,1895],{},[16,56002,3343],{},[16,56004,3346],{},[16,56006,3349],{},[41,56008,3352,56009,3356],{},[16,56010,3355],{},[41,56012,3359],{},[41,56014,3362],{},[21,56016,56017,3367],{},[16,56018,3182],{},[30,56020,190],{"id":189},[192,56022,3373],{"id":3372},[21,56024,3376],{},[21,56026,3379],{},[192,56028,3383,56029,3386],{"id":3382},[16,56030,2123],{},[21,56032,3389,56033,3392],{},[16,56034,2123],{},[21,56036,3395],{},[192,56038,3399],{"id":3398},[21,56040,3402],{},[21,56042,3405],{},[192,56044,3409],{"id":3408},[21,56046,3412,56047,3415],{},[16,56048,3182],{},[30,56050,1946],{"id":1945},[192,56052,3421],{"id":3420},[21,56054,3424],{},[192,56056,3428],{"id":3427},[21,56058,3431],{},[192,56060,3435],{"id":3434},[21,56062,3438],{},[30,56064,1976],{"id":1975},[267,56066,56067],{"className":269,"code":3443,"filename":271,"language":272,"meta":273,"style":273},[16,56068,56069,56085,56095,56099,56115,56131,56147,56163,56167,56179,56187,56193,56209,56213,56229,56235,56249,56253,56257,56263,56275,56287,56299,56303,56307,56311,56319,56333,56347,56353,56359,56363,56371,56381,56389,56393,56397,56401,56405,56411,56417,56429,56459,56463,56467,56471,56475,56479,56483,56505,56513,56519,56535,56543,56547,56559,56563,56567,56571,56575,56579,56585,56589,56593,56601,56609,56617,56625,56633,56637,56645,56649,56657,56671,56679,56691,56699,56703,56711,56719,56723,56743,56755,56767,56779,56803,56811,56815,56831,56839],{"__ignoreMap":273},[277,56070,56071,56073,56075,56077,56079,56081,56083],{"class":279,"line":280},[277,56072,284],{"class":283},[277,56074,288],{"class":287},[277,56076,292],{"class":291},[277,56078,295],{"class":291},[277,56080,298],{"class":283},[277,56082,302],{"class":301},[277,56084,305],{"class":283},[277,56086,56087,56089,56091,56093],{"class":279,"line":308},[277,56088,312],{"class":311},[277,56090,3468],{"class":283},[277,56092,318],{"class":311},[277,56094,321],{"class":301},[277,56096,56097],{"class":279,"line":324},[277,56098,328],{"emptyLinePlaceholder":327},[277,56100,56101,56103,56105,56107,56109,56111,56113],{"class":279,"line":331},[277,56102,405],{"class":311},[277,56104,3483],{"class":356},[277,56106,340],{"class":311},[277,56108,413],{"class":291},[277,56110,448],{"class":283},[277,56112,2123],{"class":356},[277,56114,433],{"class":283},[277,56116,56117,56119,56121,56123,56125,56127,56129],{"class":279,"line":346},[277,56118,405],{"class":311},[277,56120,441],{"class":356},[277,56122,340],{"class":311},[277,56124,413],{"class":291},[277,56126,448],{"class":283},[277,56128,451],{"class":301},[277,56130,433],{"class":283},[277,56132,56133,56135,56137,56139,56141,56143,56145],{"class":279,"line":360},[277,56134,405],{"class":311},[277,56136,3516],{"class":356},[277,56138,340],{"class":311},[277,56140,413],{"class":291},[277,56142,448],{"class":283},[277,56144,451],{"class":301},[277,56146,433],{"class":283},[277,56148,56149,56151,56153,56155,56157,56159,56161],{"class":279,"line":371},[277,56150,405],{"class":311},[277,56152,3533],{"class":356},[277,56154,340],{"class":311},[277,56156,413],{"class":291},[277,56158,448],{"class":283},[277,56160,3542],{"class":356},[277,56162,433],{"class":283},[277,56164,56165],{"class":279,"line":381},[277,56166,328],{"emptyLinePlaceholder":327},[277,56168,56169,56171,56173,56175,56177],{"class":279,"line":391},[277,56170,405],{"class":311},[277,56172,3555],{"class":356},[277,56174,340],{"class":311},[277,56176,1063],{"class":291},[277,56178,1066],{"class":283},[277,56180,56181,56183,56185],{"class":279,"line":397},[277,56182,1071],{"class":283},[277,56184,3568],{"class":301},[277,56186,1077],{"class":283},[277,56188,56189,56191],{"class":279,"line":402},[277,56190,3575],{"class":291},[277,56192,473],{"class":283},[277,56194,56195,56197,56199,56201,56203,56205,56207],{"class":279,"line":436},[277,56196,2233],{"class":311},[277,56198,3584],{"class":356},[277,56200,340],{"class":311},[277,56202,413],{"class":291},[277,56204,448],{"class":283},[277,56206,2123],{"class":356},[277,56208,433],{"class":283},[277,56210,56211],{"class":279,"line":456},[277,56212,328],{"emptyLinePlaceholder":327},[277,56214,56215,56217,56219,56221,56223,56225,56227],{"class":279,"line":461},[277,56216,2233],{"class":311},[277,56218,3605],{"class":356},[277,56220,340],{"class":311},[277,56222,2200],{"class":291},[277,56224,2203],{"class":283},[277,56226,601],{"class":311},[277,56228,343],{"class":283},[277,56230,56231,56233],{"class":279,"line":476},[277,56232,1177],{"class":311},[277,56234,3622],{"class":283},[277,56236,56237,56239,56241,56243,56245,56247],{"class":279,"line":500},[277,56238,1188],{"class":311},[277,56240,526],{"class":311},[277,56242,529],{"class":291},[277,56244,448],{"class":283},[277,56246,3635],{"class":301},[277,56248,433],{"class":283},[277,56250,56251],{"class":279,"line":505},[277,56252,1203],{"class":283},[277,56254,56255],{"class":279,"line":520},[277,56256,328],{"emptyLinePlaceholder":327},[277,56258,56259,56261],{"class":279,"line":539},[277,56260,2754],{"class":311},[277,56262,3652],{"class":283},[277,56264,56265,56267,56269,56271,56273],{"class":279,"line":545},[277,56266,3657],{"class":283},[277,56268,3660],{"class":301},[277,56270,3663],{"class":283},[277,56272,3666],{"class":356},[277,56274,2132],{"class":283},[277,56276,56277,56279,56281,56283,56285],{"class":279,"line":550},[277,56278,3657],{"class":283},[277,56280,3675],{"class":301},[277,56282,3663],{"class":283},[277,56284,3680],{"class":356},[277,56286,2132],{"class":283},[277,56288,56289,56291,56293,56295,56297],{"class":279,"line":578},[277,56290,3657],{"class":283},[277,56292,3689],{"class":301},[277,56294,3663],{"class":283},[277,56296,2163],{"class":356},[277,56298,2179],{"class":283},[277,56300,56301],{"class":279,"line":583},[277,56302,2725],{"class":283},[277,56304,56305],{"class":279,"line":588},[277,56306,2913],{"class":283},[277,56308,56309],{"class":279,"line":606},[277,56310,328],{"emptyLinePlaceholder":327},[277,56312,56313,56315,56317],{"class":279,"line":614},[277,56314,1093],{"class":311},[277,56316,598],{"class":283},[277,56318,3716],{"class":311},[277,56320,56321,56323,56325,56327,56329,56331],{"class":279,"line":625},[277,56322,3721],{"class":291},[277,56324,448],{"class":283},[277,56326,3726],{"class":301},[277,56328,3729],{"class":283},[277,56330,3732],{"class":301},[277,56332,3735],{"class":283},[277,56334,56335,56337,56339,56341,56343,56345],{"class":279,"line":637},[277,56336,3740],{"class":291},[277,56338,448],{"class":283},[277,56340,3745],{"class":301},[277,56342,225],{"class":283},[277,56344,3750],{"class":301},[277,56346,3753],{"class":283},[277,56348,56349,56351],{"class":279,"line":646},[277,56350,3740],{"class":291},[277,56352,3760],{"class":283},[277,56354,56355,56357],{"class":279,"line":668},[277,56356,3765],{"class":301},[277,56358,1077],{"class":283},[277,56360,56361],{"class":279,"line":673},[277,56362,3772],{"class":283},[277,56364,56365,56367,56369],{"class":279,"line":679},[277,56366,3777],{"class":283},[277,56368,3780],{"class":301},[277,56370,1077],{"class":283},[277,56372,56373,56375,56377,56379],{"class":279,"line":684},[277,56374,3787],{"class":291},[277,56376,3790],{"class":283},[277,56378,601],{"class":311},[277,56380,343],{"class":283},[277,56382,56383,56385,56387],{"class":279,"line":700},[277,56384,3799],{"class":283},[277,56386,298],{"class":311},[277,56388,2296],{"class":356},[277,56390,56391],{"class":279,"line":717},[277,56392,3808],{"class":283},[277,56394,56395],{"class":279,"line":722},[277,56396,3813],{"class":283},[277,56398,56399],{"class":279,"line":729},[277,56400,3818],{"class":301},[277,56402,56403],{"class":279,"line":738},[277,56404,3823],{"class":283},[277,56406,56407,56409],{"class":279,"line":747},[277,56408,3740],{"class":291},[277,56410,3760],{"class":283},[277,56412,56413,56415],{"class":279,"line":754},[277,56414,3834],{"class":301},[277,56416,1077],{"class":283},[277,56418,56419,56421,56423,56425,56427],{"class":279,"line":772},[277,56420,3841],{"class":283},[277,56422,3844],{"class":291},[277,56424,448],{"class":283},[277,56426,3849],{"class":349},[277,56428,3852],{"class":311},[277,56430,56431,56433,56435,56437,56439,56441,56443,56445,56447,56449,56451,56453,56455,56457],{"class":279,"line":777},[277,56432,3857],{"class":291},[277,56434,448],{"class":283},[277,56436,3862],{"class":301},[277,56438,3865],{"class":283},[277,56440,3868],{"class":301},[277,56442,3849],{"class":283},[277,56444,104],{"class":301},[277,56446,3875],{"class":283},[277,56448,3878],{"class":301},[277,56450,3849],{"class":283},[277,56452,104],{"class":301},[277,56454,3885],{"class":283},[277,56456,3888],{"class":301},[277,56458,433],{"class":283},[277,56460,56461],{"class":279,"line":782},[277,56462,3895],{"class":283},[277,56464,56465],{"class":279,"line":792},[277,56466,3900],{"class":283},[277,56468,56469],{"class":279,"line":797},[277,56470,3905],{"class":283},[277,56472,56473],{"class":279,"line":807},[277,56474,542],{"class":283},[277,56476,56477],{"class":279,"line":826},[277,56478,676],{"class":283},[277,56480,56481],{"class":279,"line":849},[277,56482,328],{"emptyLinePlaceholder":327},[277,56484,56485,56487,56489,56491,56493,56495,56497,56499,56501,56503],{"class":279,"line":854},[277,56486,3922],{"class":291},[277,56488,2334],{"class":283},[277,56490,3349],{"class":349},[277,56492,225],{"class":283},[277,56494,3260],{"class":349},[277,56496,225],{"class":283},[277,56498,3266],{"class":349},[277,56500,2340],{"class":283},[277,56502,601],{"class":311},[277,56504,343],{"class":283},[277,56506,56507,56509,56511],{"class":279,"line":876},[277,56508,3945],{"class":283},[277,56510,298],{"class":311},[277,56512,2296],{"class":356},[277,56514,56515,56517],{"class":279,"line":891},[277,56516,3954],{"class":283},[277,56518,643],{"class":311},[277,56520,56521,56523,56525,56527,56529,56531,56533],{"class":279,"line":905},[277,56522,3961],{"class":283},[277,56524,652],{"class":311},[277,56526,529],{"class":291},[277,56528,657],{"class":311},[277,56530,660],{"class":283},[277,56532,353],{"class":311},[277,56534,3974],{"class":301},[277,56536,56537,56539,56541],{"class":279,"line":919},[277,56538,3979],{"class":283},[277,56540,298],{"class":311},[277,56542,3984],{"class":283},[277,56544,56545],{"class":279,"line":929},[277,56546,328],{"emptyLinePlaceholder":327},[277,56548,56549,56551,56553,56555,56557],{"class":279,"line":934},[277,56550,2349],{"class":283},[277,56552,3349],{"class":291},[277,56554,448],{"class":283},[277,56556,3999],{"class":301},[277,56558,2360],{"class":283},[277,56560,56561],{"class":279,"line":951},[277,56562,4006],{"class":283},[277,56564,56565],{"class":279,"line":961},[277,56566,4011],{"class":283},[277,56568,56569],{"class":279,"line":1473},[277,56570,4016],{"class":283},[277,56572,56573],{"class":279,"line":1478},[277,56574,2318],{"class":283},[277,56576,56577],{"class":279,"line":1497},[277,56578,328],{"emptyLinePlaceholder":327},[277,56580,56581,56583],{"class":279,"line":1510},[277,56582,2212],{"class":311},[277,56584,4031],{"class":356},[277,56586,56587],{"class":279,"line":1523},[277,56588,676],{"class":283},[277,56590,56591],{"class":279,"line":1536},[277,56592,328],{"emptyLinePlaceholder":327},[277,56594,56595,56597,56599],{"class":279,"line":1545},[277,56596,2460],{"class":311},[277,56598,4046],{"class":291},[277,56600,473],{"class":283},[277,56602,56603,56605,56607],{"class":279,"line":1550},[277,56604,3945],{"class":283},[277,56606,298],{"class":311},[277,56608,4031],{"class":356},[277,56610,56611,56613,56615],{"class":279,"line":1565},[277,56612,3954],{"class":283},[277,56614,298],{"class":311},[277,56616,4065],{"class":301},[277,56618,56619,56621,56623],{"class":279,"line":1574},[277,56620,3979],{"class":283},[277,56622,298],{"class":311},[277,56624,4065],{"class":301},[277,56626,56627,56629,56631],{"class":279,"line":4076},[277,56628,4079],{"class":283},[277,56630,4082],{"class":311},[277,56632,4085],{"class":356},[277,56634,56635],{"class":279,"line":4088},[277,56636,394],{"class":283},[277,56638,56639,56641,56643],{"class":279,"line":4093},[277,56640,785],{"class":283},[277,56642,288],{"class":287},[277,56644,305],{"class":283},[277,56646,56647],{"class":279,"line":4102},[277,56648,328],{"emptyLinePlaceholder":327},[277,56650,56651,56653,56655],{"class":279,"line":4107},[277,56652,284],{"class":283},[277,56654,802],{"class":287},[277,56656,305],{"class":283},[277,56658,56659,56661,56663,56665,56667,56669],{"class":279,"line":4116},[277,56660,810],{"class":283},[277,56662,4121],{"class":287},[277,56664,816],{"class":291},[277,56666,298],{"class":283},[277,56668,4128],{"class":301},[277,56670,305],{"class":283},[277,56672,56673,56675,56677],{"class":279,"line":4133},[277,56674,829],{"class":283},[277,56676,4138],{"class":287},[277,56678,305],{"class":283},[277,56680,56681,56683,56685,56687,56689],{"class":279,"line":4143},[277,56682,879],{"class":283},[277,56684,30],{"class":287},[277,56686,4150],{"class":283},[277,56688,30],{"class":287},[277,56690,305],{"class":283},[277,56692,56693,56695,56697],{"class":279,"line":4157},[277,56694,879],{"class":283},[277,56696,21],{"class":287},[277,56698,305],{"class":283},[277,56700,56701],{"class":279,"line":4166},[277,56702,4169],{"class":283},[277,56704,56705,56707,56709],{"class":279,"line":4172},[277,56706,4175],{"class":283},[277,56708,21],{"class":287},[277,56710,305],{"class":283},[277,56712,56713,56715,56717],{"class":279,"line":4182},[277,56714,922],{"class":283},[277,56716,4138],{"class":287},[277,56718,305],{"class":283},[277,56720,56721],{"class":279,"line":4191},[277,56722,328],{"emptyLinePlaceholder":327},[277,56724,56725,56727,56729,56731,56733,56735,56737,56739,56741],{"class":279,"line":4196},[277,56726,829],{"class":283},[277,56728,4201],{"class":287},[277,56730,834],{"class":291},[277,56732,298],{"class":283},[277,56734,4208],{"class":301},[277,56736,816],{"class":291},[277,56738,298],{"class":283},[277,56740,4215],{"class":301},[277,56742,305],{"class":283},[277,56744,56745,56747,56749,56751,56753],{"class":279,"line":4220},[277,56746,879],{"class":283},[277,56748,72],{"class":287},[277,56750,4227],{"class":283},[277,56752,72],{"class":287},[277,56754,305],{"class":283},[277,56756,56757,56759,56761,56763,56765],{"class":279,"line":4234},[277,56758,879],{"class":283},[277,56760,21],{"class":287},[277,56762,842],{"class":283},[277,56764,21],{"class":287},[277,56766,305],{"class":283},[277,56768,56769,56771,56773,56775,56777],{"class":279,"line":4247},[277,56770,879],{"class":283},[277,56772,4252],{"class":287},[277,56774,4255],{"class":283},[277,56776,4252],{"class":287},[277,56778,305],{"class":283},[277,56780,56781,56783,56785,56787,56789,56791,56793,56795,56797,56799,56801],{"class":279,"line":4262},[277,56782,879],{"class":283},[277,56784,4267],{"class":287},[277,56786,4270],{"class":291},[277,56788,298],{"class":283},[277,56790,4275],{"class":301},[277,56792,4278],{"class":291},[277,56794,298],{"class":283},[277,56796,4283],{"class":301},[277,56798,4286],{"class":283},[277,56800,4267],{"class":287},[277,56802,305],{"class":283},[277,56804,56805,56807,56809],{"class":279,"line":4293},[277,56806,922],{"class":283},[277,56808,4201],{"class":287},[277,56810,305],{"class":283},[277,56812,56813],{"class":279,"line":4302},[277,56814,328],{"emptyLinePlaceholder":327},[277,56816,56817,56819,56821,56823,56825,56827,56829],{"class":279,"line":4307},[277,56818,829],{"class":283},[277,56820,4312],{"class":287},[277,56822,941],{"class":291},[277,56824,4317],{"class":291},[277,56826,298],{"class":283},[277,56828,4322],{"class":301},[277,56830,4325],{"class":283},[277,56832,56833,56835,56837],{"class":279,"line":4328},[277,56834,954],{"class":283},[277,56836,4121],{"class":287},[277,56838,305],{"class":283},[277,56840,56841,56843,56845],{"class":279,"line":4337},[277,56842,785],{"class":283},[277,56844,802],{"class":287},[277,56846,305],{"class":283},[267,56848,56849],{"className":269,"code":4346,"filename":971,"language":272,"meta":273,"style":273},[16,56850,56851,56865,56875,56883,56889,56895,56901,56905,56909,56913,56919,56929,56943,56947,56951,56957,56969,56981,56993,56997,57001,57005,57011,57015,57019,57023,57027,57031,57035,57039,57043,57047,57051,57055,57059,57063,57067,57071,57075,57079,57083,57087,57091,57095,57103,57111,57115,57119,57123,57129,57135,57143,57151,57159,57165,57169,57173,57191,57201,57209,57225,57235,57239,57251,57255,57259,57263,57267,57271,57277,57281,57285,57291,57301,57311,57321,57331,57335,57339,57343,57351,57355,57363,57377,57385,57397,57409,57417,57421,57441,57453,57465,57477,57501,57509,57513,57529,57537],{"__ignoreMap":273},[277,56852,56853,56855,56857,56859,56861,56863],{"class":279,"line":280},[277,56854,284],{"class":283},[277,56856,288],{"class":287},[277,56858,295],{"class":291},[277,56860,298],{"class":283},[277,56862,302],{"class":301},[277,56864,305],{"class":283},[277,56866,56867,56869,56871,56873],{"class":279,"line":308},[277,56868,405],{"class":311},[277,56870,3555],{"class":356},[277,56872,340],{"class":311},[277,56874,343],{"class":283},[277,56876,56877,56879,56881],{"class":279,"line":324},[277,56878,1071],{"class":283},[277,56880,3568],{"class":301},[277,56882,1077],{"class":283},[277,56884,56885,56887],{"class":279,"line":331},[277,56886,1086],{"class":291},[277,56888,473],{"class":283},[277,56890,56891,56893],{"class":279,"line":346},[277,56892,1093],{"class":311},[277,56894,343],{"class":283},[277,56896,56897,56899],{"class":279,"line":360},[277,56898,4397],{"class":283},[277,56900,2043],{"class":356},[277,56902,56903],{"class":279,"line":371},[277,56904,1126],{"class":283},[277,56906,56907],{"class":279,"line":381},[277,56908,1131],{"class":283},[277,56910,56911],{"class":279,"line":391},[277,56912,2742],{"class":283},[277,56914,56915,56917],{"class":279,"line":397},[277,56916,4416],{"class":291},[277,56918,473],{"class":283},[277,56920,56921,56923,56925,56927],{"class":279,"line":402},[277,56922,1177],{"class":311},[277,56924,511],{"class":283},[277,56926,1341],{"class":356},[277,56928,4429],{"class":283},[277,56930,56931,56933,56935,56937,56939,56941],{"class":279,"line":436},[277,56932,1188],{"class":311},[277,56934,526],{"class":311},[277,56936,529],{"class":291},[277,56938,448],{"class":283},[277,56940,3635],{"class":301},[277,56942,433],{"class":283},[277,56944,56945],{"class":279,"line":456},[277,56946,1203],{"class":283},[277,56948,56949],{"class":279,"line":461},[277,56950,328],{"emptyLinePlaceholder":327},[277,56952,56953,56955],{"class":279,"line":476},[277,56954,2754],{"class":311},[277,56956,3652],{"class":283},[277,56958,56959,56961,56963,56965,56967],{"class":279,"line":500},[277,56960,3657],{"class":283},[277,56962,3660],{"class":301},[277,56964,3663],{"class":283},[277,56966,3666],{"class":356},[277,56968,2132],{"class":283},[277,56970,56971,56973,56975,56977,56979],{"class":279,"line":505},[277,56972,3657],{"class":283},[277,56974,3675],{"class":301},[277,56976,3663],{"class":283},[277,56978,3680],{"class":356},[277,56980,2132],{"class":283},[277,56982,56983,56985,56987,56989,56991],{"class":279,"line":520},[277,56984,3657],{"class":283},[277,56986,3689],{"class":301},[277,56988,3663],{"class":283},[277,56990,2163],{"class":356},[277,56992,2179],{"class":283},[277,56994,56995],{"class":279,"line":539},[277,56996,2725],{"class":283},[277,56998,56999],{"class":279,"line":545},[277,57000,1126],{"class":283},[277,57002,57003],{"class":279,"line":550},[277,57004,1131],{"class":283},[277,57006,57007,57009],{"class":279,"line":578},[277,57008,4510],{"class":283},[277,57010,4513],{"class":301},[277,57012,57013],{"class":279,"line":583},[277,57014,4518],{"class":301},[277,57016,57017],{"class":279,"line":588},[277,57018,4523],{"class":301},[277,57020,57021],{"class":279,"line":606},[277,57022,4528],{"class":301},[277,57024,57025],{"class":279,"line":614},[277,57026,4533],{"class":301},[277,57028,57029],{"class":279,"line":625},[277,57030,4538],{"class":301},[277,57032,57033],{"class":279,"line":637},[277,57034,4543],{"class":301},[277,57036,57037],{"class":279,"line":646},[277,57038,4548],{"class":301},[277,57040,57041],{"class":279,"line":668},[277,57042,4553],{"class":301},[277,57044,57045],{"class":279,"line":673},[277,57046,328],{"emptyLinePlaceholder":327},[277,57048,57049],{"class":279,"line":679},[277,57050,4562],{"class":301},[277,57052,57053],{"class":279,"line":684},[277,57054,4567],{"class":301},[277,57056,57057],{"class":279,"line":700},[277,57058,4572],{"class":301},[277,57060,57061],{"class":279,"line":717},[277,57062,4577],{"class":301},[277,57064,57065],{"class":279,"line":722},[277,57066,4582],{"class":301},[277,57068,57069],{"class":279,"line":729},[277,57070,4587],{"class":301},[277,57072,57073],{"class":279,"line":738},[277,57074,4592],{"class":301},[277,57076,57077],{"class":279,"line":747},[277,57078,4597],{"class":301},[277,57080,57081],{"class":279,"line":754},[277,57082,4602],{"class":301},[277,57084,57085],{"class":279,"line":772},[277,57086,4607],{"class":301},[277,57088,57089],{"class":279,"line":777},[277,57090,394],{"class":283},[277,57092,57093],{"class":279,"line":782},[277,57094,328],{"emptyLinePlaceholder":327},[277,57096,57097,57099,57101],{"class":279,"line":792},[277,57098,1057],{"class":311},[277,57100,1060],{"class":311},[277,57102,343],{"class":283},[277,57104,57105,57107,57109],{"class":279,"line":797},[277,57106,1071],{"class":283},[277,57108,4630],{"class":301},[277,57110,1077],{"class":283},[277,57112,57113],{"class":279,"line":807},[277,57114,4637],{"class":283},[277,57116,57117],{"class":279,"line":826},[277,57118,4642],{"class":283},[277,57120,57121],{"class":279,"line":849},[277,57122,1131],{"class":283},[277,57124,57125,57127],{"class":279,"line":854},[277,57126,1086],{"class":291},[277,57128,473],{"class":283},[277,57130,57131,57133],{"class":279,"line":876},[277,57132,1093],{"class":311},[277,57134,343],{"class":283},[277,57136,57137,57139,57141],{"class":279,"line":891},[277,57138,4663],{"class":283},[277,57140,2123],{"class":356},[277,57142,1077],{"class":283},[277,57144,57145,57147,57149],{"class":279,"line":905},[277,57146,1118],{"class":283},[277,57148,451],{"class":301},[277,57150,1077],{"class":283},[277,57152,57153,57155,57157],{"class":279,"line":919},[277,57154,4680],{"class":283},[277,57156,451],{"class":301},[277,57158,1077],{"class":283},[277,57160,57161,57163],{"class":279,"line":929},[277,57162,4689],{"class":283},[277,57164,4692],{"class":356},[277,57166,57167],{"class":279,"line":934},[277,57168,1126],{"class":283},[277,57170,57171],{"class":279,"line":951},[277,57172,1131],{"class":283},[277,57174,57175,57177,57179,57181,57183,57185,57187,57189],{"class":279,"line":961},[277,57176,4705],{"class":291},[277,57178,448],{"class":283},[277,57180,3349],{"class":349},[277,57182,225],{"class":283},[277,57184,3260],{"class":349},[277,57186,225],{"class":283},[277,57188,3266],{"class":349},[277,57190,2476],{"class":283},[277,57192,57193,57195,57197,57199],{"class":279,"line":1473},[277,57194,4724],{"class":356},[277,57196,4727],{"class":283},[277,57198,298],{"class":311},[277,57200,2296],{"class":356},[277,57202,57203,57205,57207],{"class":279,"line":1478},[277,57204,4724],{"class":356},[277,57206,1291],{"class":283},[277,57208,643],{"class":311},[277,57210,57211,57213,57215,57217,57219,57221,57223],{"class":279,"line":1497},[277,57212,649],{"class":283},[277,57214,652],{"class":311},[277,57216,529],{"class":291},[277,57218,657],{"class":311},[277,57220,660],{"class":283},[277,57222,353],{"class":311},[277,57224,3974],{"class":301},[277,57226,57227,57229,57231,57233],{"class":279,"line":1510},[277,57228,4724],{"class":356},[277,57230,4762],{"class":283},[277,57232,298],{"class":311},[277,57234,3984],{"class":283},[277,57236,57237],{"class":279,"line":1523},[277,57238,328],{"emptyLinePlaceholder":327},[277,57240,57241,57243,57245,57247,57249],{"class":279,"line":1536},[277,57242,2881],{"class":283},[277,57244,3349],{"class":291},[277,57246,448],{"class":283},[277,57248,3999],{"class":301},[277,57250,2360],{"class":283},[277,57252,57253],{"class":279,"line":1545},[277,57254,4787],{"class":283},[277,57256,57257],{"class":279,"line":1550},[277,57258,4792],{"class":283},[277,57260,57261],{"class":279,"line":1565},[277,57262,4797],{"class":283},[277,57264,57265],{"class":279,"line":1574},[277,57266,2913],{"class":283},[277,57268,57269],{"class":279,"line":4076},[277,57270,328],{"emptyLinePlaceholder":327},[277,57272,57273,57275],{"class":279,"line":4088},[277,57274,1093],{"class":311},[277,57276,4031],{"class":356},[277,57278,57279],{"class":279,"line":4093},[277,57280,1131],{"class":283},[277,57282,57283],{"class":279,"line":4102},[277,57284,1140],{"class":283},[277,57286,57287,57289],{"class":279,"line":4107},[277,57288,4824],{"class":291},[277,57290,473],{"class":283},[277,57292,57293,57295,57297,57299],{"class":279,"line":4116},[277,57294,1212],{"class":356},[277,57296,4727],{"class":283},[277,57298,298],{"class":311},[277,57300,4031],{"class":356},[277,57302,57303,57305,57307,57309],{"class":279,"line":4133},[277,57304,1212],{"class":356},[277,57306,1291],{"class":283},[277,57308,298],{"class":311},[277,57310,4065],{"class":301},[277,57312,57313,57315,57317,57319],{"class":279,"line":4143},[277,57314,1212],{"class":356},[277,57316,4762],{"class":283},[277,57318,298],{"class":311},[277,57320,4065],{"class":301},[277,57322,57323,57325,57327,57329],{"class":279,"line":4157},[277,57324,1212],{"class":356},[277,57326,4863],{"class":283},[277,57328,4082],{"class":311},[277,57330,4085],{"class":356},[277,57332,57333],{"class":279,"line":4166},[277,57334,1126],{"class":283},[277,57336,57337],{"class":279,"line":4172},[277,57338,542],{"class":283},[277,57340,57341],{"class":279,"line":4182},[277,57342,394],{"class":283},[277,57344,57345,57347,57349],{"class":279,"line":4191},[277,57346,785],{"class":283},[277,57348,288],{"class":287},[277,57350,305],{"class":283},[277,57352,57353],{"class":279,"line":4196},[277,57354,328],{"emptyLinePlaceholder":327},[277,57356,57357,57359,57361],{"class":279,"line":4220},[277,57358,284],{"class":283},[277,57360,802],{"class":287},[277,57362,305],{"class":283},[277,57364,57365,57367,57369,57371,57373,57375],{"class":279,"line":4234},[277,57366,810],{"class":283},[277,57368,4121],{"class":287},[277,57370,816],{"class":291},[277,57372,298],{"class":283},[277,57374,4128],{"class":301},[277,57376,305],{"class":283},[277,57378,57379,57381,57383],{"class":279,"line":4247},[277,57380,829],{"class":283},[277,57382,4138],{"class":287},[277,57384,305],{"class":283},[277,57386,57387,57389,57391,57393,57395],{"class":279,"line":4262},[277,57388,879],{"class":283},[277,57390,30],{"class":287},[277,57392,4150],{"class":283},[277,57394,30],{"class":287},[277,57396,305],{"class":283},[277,57398,57399,57401,57403,57405,57407],{"class":279,"line":4293},[277,57400,879],{"class":283},[277,57402,21],{"class":287},[277,57404,4942],{"class":283},[277,57406,21],{"class":287},[277,57408,305],{"class":283},[277,57410,57411,57413,57415],{"class":279,"line":4302},[277,57412,922],{"class":283},[277,57414,4138],{"class":287},[277,57416,305],{"class":283},[277,57418,57419],{"class":279,"line":4307},[277,57420,328],{"emptyLinePlaceholder":327},[277,57422,57423,57425,57427,57429,57431,57433,57435,57437,57439],{"class":279,"line":4328},[277,57424,829],{"class":283},[277,57426,4201],{"class":287},[277,57428,834],{"class":291},[277,57430,298],{"class":283},[277,57432,4208],{"class":301},[277,57434,816],{"class":291},[277,57436,298],{"class":283},[277,57438,4215],{"class":301},[277,57440,305],{"class":283},[277,57442,57443,57445,57447,57449,57451],{"class":279,"line":4337},[277,57444,879],{"class":283},[277,57446,72],{"class":287},[277,57448,4227],{"class":283},[277,57450,72],{"class":287},[277,57452,305],{"class":283},[277,57454,57455,57457,57459,57461,57463],{"class":279,"line":4993},[277,57456,879],{"class":283},[277,57458,21],{"class":287},[277,57460,842],{"class":283},[277,57462,21],{"class":287},[277,57464,305],{"class":283},[277,57466,57467,57469,57471,57473,57475],{"class":279,"line":5006},[277,57468,879],{"class":283},[277,57470,4252],{"class":287},[277,57472,4255],{"class":283},[277,57474,4252],{"class":287},[277,57476,305],{"class":283},[277,57478,57479,57481,57483,57485,57487,57489,57491,57493,57495,57497,57499],{"class":279,"line":5019},[277,57480,879],{"class":283},[277,57482,4267],{"class":287},[277,57484,4270],{"class":291},[277,57486,298],{"class":283},[277,57488,4275],{"class":301},[277,57490,4278],{"class":291},[277,57492,298],{"class":283},[277,57494,4283],{"class":301},[277,57496,4286],{"class":283},[277,57498,4267],{"class":287},[277,57500,305],{"class":283},[277,57502,57503,57505,57507],{"class":279,"line":5044},[277,57504,922],{"class":283},[277,57506,4201],{"class":287},[277,57508,305],{"class":283},[277,57510,57511],{"class":279,"line":5053},[277,57512,328],{"emptyLinePlaceholder":327},[277,57514,57515,57517,57519,57521,57523,57525,57527],{"class":279,"line":5058},[277,57516,829],{"class":283},[277,57518,4312],{"class":287},[277,57520,941],{"class":291},[277,57522,4317],{"class":291},[277,57524,298],{"class":283},[277,57526,4322],{"class":301},[277,57528,4325],{"class":283},[277,57530,57531,57533,57535],{"class":279,"line":5075},[277,57532,954],{"class":283},[277,57534,4121],{"class":287},[277,57536,305],{"class":283},[277,57538,57539,57541,57543],{"class":279,"line":5084},[277,57540,785],{"class":283},[277,57542,802],{"class":287},[277,57544,305],{"class":283},[21,57546,5093],{},[3111,57548,57549],{},[21,57550,5098],{},[30,57552,1596],{"id":1595},[21,57554,57555,5105],{},[16,57556,3182],{},[21,57558,5108],{},[1606,57560,3118],{},{"title":273,"searchDepth":308,"depth":308,"links":57562},[57563,57564,57565,57566,57567,57573,57578,57579],{"id":32,"depth":308,"text":33},{"id":60,"depth":308,"text":61},{"id":128,"depth":308,"text":129},{"id":155,"depth":308,"text":156},{"id":189,"depth":308,"text":190,"children":57568},[57569,57570,57571,57572],{"id":3372,"depth":324,"text":3373},{"id":3382,"depth":324,"text":5121},{"id":3398,"depth":324,"text":3399},{"id":3408,"depth":324,"text":3409},{"id":1945,"depth":308,"text":1946,"children":57574},[57575,57576,57577],{"id":3420,"depth":324,"text":3421},{"id":3427,"depth":324,"text":3428},{"id":3434,"depth":324,"text":3435},{"id":1975,"depth":308,"text":1976},{"id":1595,"depth":308,"text":1596},{"script":57581},[57582],{"type":1632,"key":1633,"data-nuxt-schema-org":327,"nodes":57583},[57584],{"headline":3173,"author":57585,"datePublished":5141,"@type":1640},{"name":1637,"@type":1638},{"updatedAt":5141,"coverCaption":5143,"author":1637,"keywords":57587},[1645,3182,3922,5145,5146],[57589],{"headline":3173,"author":57590,"datePublished":5141,"@type":1640},{"name":1637,"@type":1638},{"title":3173,"description":5134},[57593,57594,57595,57596],{"tag":1660,"color":1661},{"tag":5156,"color":5157},{"tag":1668,"color":1669},{"tag":1671,"color":1672},{"id":5162,"title":5163,"body":57598,"cover":7474,"coverAlt":7475,"date":7476,"description":7477,"draft":1627,"extension":1628,"head":59665,"locale":1641,"meta":59671,"navigation":327,"path":7490,"schemaOrg":59673,"seo":59676,"series":1653,"seriesDescription":1654,"seriesOrder":360,"seriesTitle":1655,"slug":1656,"stem":7495,"tags":59677,"__hash__":7502},{"type":8,"value":57599,"toc":59646},[57600,57602,57610,57614,57616,57622,57624,57628,57630,57638,57640,57648,57650,57664,57666,57676,57678,57696,57698,57704,57706,57716,57718,57728,57730,57734,57736,57746,57748,57764,57766,57830,57832,57834,57838,57842,57846,57848,57852,57858,57862,57866,57870,57872,57876,57878,57880,57882,57888,57890,57894,57896,57902,58798,59608,59624,59626,59644],[30,57601,5169],{"id":5168},[11,57603,5173,57604,511,57606,225,57608,19],{"id":5172},[16,57605,5176],{},[16,57607,5179],{},[16,57609,5182],{},[21,57611,5185,57612,5188],{},[16,57613,5176],{},[21,57615,5191],{},[21,57617,5194,57618,1697,57620,5199],{},[16,57619,5179],{},[16,57621,5182],{},[30,57623,61],{"id":60},[21,57625,57626,5206],{},[16,57627,5176],{},[21,57629,5209],{},[38,57631,57632,57634,57636],{},[41,57633,5214],{},[41,57635,5217],{},[41,57637,5220],{},[21,57639,5223],{},[38,57641,57642,57644,57646],{},[41,57643,5228],{},[41,57645,5231],{},[41,57647,5234],{},[21,57649,5237],{},[38,57651,57652,57658],{},[41,57653,57654,5245,57656],{},[16,57655,5244],{},[16,57657,5179],{},[41,57659,57660,5245,57662],{},[16,57661,5252],{},[16,57663,5182],{},[21,57665,5257],{},[38,57667,57668,57672],{},[41,57669,57670,5264],{},[16,57671,5179],{},[41,57673,57674,5269],{},[16,57675,5182],{},[21,57677,5272],{},[38,57679,57680,57684,57688,57692],{},[41,57681,57682,5279],{},[16,57683,203],{},[41,57685,57686,5284],{},[16,57687,5179],{},[41,57689,57690,5289],{},[16,57691,5182],{},[41,57693,57694,5295],{},[16,57695,5294],{},[30,57697,129],{"id":128},[21,57699,57700,1697,57702,5304],{},[16,57701,5179],{},[16,57703,5182],{},[21,57705,3305],{},[38,57707,57708,57710,57712,57714],{},[41,57709,5311],{},[41,57711,5314],{},[41,57713,5317],{},[41,57715,5320],{},[21,57717,5323],{},[38,57719,57720,57724],{},[41,57721,5328,57722,104],{},[16,57723,5179],{},[41,57725,5333,57726,104],{},[16,57727,5182],{},[30,57729,156],{"id":155},[21,57731,5340,57732,5343],{},[16,57733,5176],{},[21,57735,5346],{},[38,57737,57738,57740,57742,57744],{},[41,57739,5351],{},[41,57741,5354],{},[41,57743,5357],{},[41,57745,5360],{},[21,57747,5363],{},[38,57749,57750,57754,57760],{},[41,57751,5368,57752,5372],{},[16,57753,5371],{},[41,57755,5375,57756,118,57758,5380],{},[16,57757,203],{},[16,57759,3235],{},[41,57761,5383,57762,5386],{},[16,57763,5176],{},[30,57765,5390],{"id":5389},[5392,57767,57768,57780],{},[5395,57769,57770],{},[5398,57771,57772,57774,57776,57778],{},[5401,57773,5403],{},[5401,57775,5406],{},[5401,57777,5409],{},[5401,57779,5412],{},[5414,57781,57782,57794,57806,57818],{},[5398,57783,57784,57788,57790,57792],{},[5419,57785,57786],{},[16,57787,203],{},[5419,57789,5425],{},[5419,57791,5428],{},[5419,57793,5431],{},[5398,57795,57796,57800,57802,57804],{},[5419,57797,57798],{},[16,57799,5179],{},[5419,57801,5440],{},[5419,57803,5443],{},[5419,57805,5446],{},[5398,57807,57808,57812,57814,57816],{},[5419,57809,57810],{},[16,57811,5182],{},[5419,57813,5455],{},[5419,57815,5458],{},[5419,57817,5461],{},[5398,57819,57820,57824,57826,57828],{},[5419,57821,57822],{},[16,57823,5294],{},[5419,57825,5470],{},[5419,57827,5473],{},[5419,57829,5476],{},[21,57831,5479],{},[30,57833,190],{"id":189},[192,57835,5485,57836],{"id":5484},[16,57837,203],{},[21,57839,5490,57840,5493],{},[16,57841,203],{},[21,57843,5496,57844,104],{},[16,57845,5179],{},[192,57847,5502],{"id":5501},[21,57849,5505,57850,5509],{},[16,57851,5508],{},[21,57853,5512,57854,5515,57856,5518],{},[16,57855,5182],{},[16,57857,5179],{},[192,57859,5522,57860,5525],{"id":5521},[16,57861,5294],{},[21,57863,5528,57864,5531],{},[16,57865,5176],{},[21,57867,5534,57868,5537],{},[16,57869,5294],{},[192,57871,5541],{"id":5540},[21,57873,57874,5546],{},[16,57875,5176],{},[21,57877,5549],{},[30,57879,1946],{"id":1945},[192,57881,5555],{"id":5554},[21,57883,5558,57884,5561,57886,5564],{},[16,57885,5176],{},[16,57887,5179],{},[192,57889,5568],{"id":5567},[21,57891,5571,57892,5574],{},[16,57893,5182],{},[192,57895,5578],{"id":5577},[21,57897,5581,57898,5584,57900,5587],{},[16,57899,203],{},[16,57901,5179],{},[267,57903,57904],{"className":269,"code":5590,"filename":271,"language":272,"meta":273,"style":273},[16,57905,57906,57922,57932,57936,57946,57954,57962,57970,57974,57978,57994,58022,58038,58062,58092,58108,58112,58128,58140,58158,58162,58166,58178,58194,58198,58202,58208,58212,58216,58226,58234,58238,58256,58286,58290,58298,58318,58326,58330,58334,58342,58356,58360,58374,58382,58390,58394,58398,58406,58420,58424,58430,58438,58442,58446,58456,58464,58468,58472,58486,58502,58510,58516,58520,58524,58534,58542,58548,58552,58560,58564,58572,58586,58594,58606,58618,58636,58644,58648,58662,58680,58698,58716,58724,58728,58736,58742,58750,58758,58762,58766,58774,58782,58790],{"__ignoreMap":273},[277,57907,57908,57910,57912,57914,57916,57918,57920],{"class":279,"line":280},[277,57909,284],{"class":283},[277,57911,288],{"class":287},[277,57913,292],{"class":291},[277,57915,295],{"class":291},[277,57917,298],{"class":283},[277,57919,302],{"class":301},[277,57921,305],{"class":283},[277,57923,57924,57926,57928,57930],{"class":279,"line":308},[277,57925,312],{"class":311},[277,57927,5615],{"class":283},[277,57929,318],{"class":311},[277,57931,321],{"class":301},[277,57933,57934],{"class":279,"line":324},[277,57935,328],{"emptyLinePlaceholder":327},[277,57937,57938,57940,57942,57944],{"class":279,"line":331},[277,57939,334],{"class":311},[277,57941,5630],{"class":291},[277,57943,340],{"class":311},[277,57945,343],{"class":283},[277,57947,57948,57950,57952],{"class":279,"line":346},[277,57949,350],{"class":349},[277,57951,353],{"class":311},[277,57953,357],{"class":356},[277,57955,57956,57958,57960],{"class":279,"line":360},[277,57957,5647],{"class":349},[277,57959,353],{"class":311},[277,57961,368],{"class":356},[277,57963,57964,57966,57968],{"class":279,"line":371},[277,57965,5656],{"class":349},[277,57967,353],{"class":311},[277,57969,5661],{"class":356},[277,57971,57972],{"class":279,"line":381},[277,57973,394],{"class":283},[277,57975,57976],{"class":279,"line":391},[277,57977,328],{"emptyLinePlaceholder":327},[277,57979,57980,57982,57984,57986,57988,57990,57992],{"class":279,"line":397},[277,57981,405],{"class":311},[277,57983,2097],{"class":356},[277,57985,340],{"class":311},[277,57987,413],{"class":291},[277,57989,284],{"class":283},[277,57991,5684],{"class":291},[277,57993,5687],{"class":283},[277,57995,57996,57998,58000,58002,58004,58006,58008,58010,58012,58014,58016,58018,58020],{"class":279,"line":402},[277,57997,405],{"class":311},[277,57999,5694],{"class":356},[277,58001,340],{"class":311},[277,58003,413],{"class":291},[277,58005,284],{"class":283},[277,58007,5703],{"class":301},[277,58009,421],{"class":311},[277,58011,5708],{"class":301},[277,58013,421],{"class":311},[277,58015,5713],{"class":301},[277,58017,427],{"class":283},[277,58019,5703],{"class":301},[277,58021,433],{"class":283},[277,58023,58024,58026,58028,58030,58032,58034,58036],{"class":279,"line":436},[277,58025,405],{"class":311},[277,58027,5726],{"class":356},[277,58029,340],{"class":311},[277,58031,413],{"class":291},[277,58033,448],{"class":283},[277,58035,5735],{"class":301},[277,58037,433],{"class":283},[277,58039,58040,58042,58044,58046,58048,58050,58052,58054,58056,58058,58060],{"class":279,"line":456},[277,58041,405],{"class":311},[277,58043,5744],{"class":356},[277,58045,340],{"class":311},[277,58047,413],{"class":291},[277,58049,284],{"class":283},[277,58051,5753],{"class":356},[277,58053,421],{"class":311},[277,58055,424],{"class":356},[277,58057,427],{"class":283},[277,58059,430],{"class":356},[277,58061,433],{"class":283},[277,58063,58064,58066,58068,58070,58072,58074,58076,58078,58080,58082,58084,58086,58088,58090],{"class":279,"line":461},[277,58065,405],{"class":311},[277,58067,5770],{"class":356},[277,58069,340],{"class":311},[277,58071,413],{"class":291},[277,58073,284],{"class":283},[277,58075,5779],{"class":291},[277,58077,284],{"class":283},[277,58079,5784],{"class":311},[277,58081,5787],{"class":283},[277,58083,5790],{"class":311},[277,58085,424],{"class":356},[277,58087,427],{"class":283},[277,58089,430],{"class":356},[277,58091,433],{"class":283},[277,58093,58094,58096,58098,58100,58102,58104,58106],{"class":279,"line":476},[277,58095,405],{"class":311},[277,58097,5805],{"class":356},[277,58099,340],{"class":311},[277,58101,413],{"class":291},[277,58103,448],{"class":283},[277,58105,2123],{"class":356},[277,58107,433],{"class":283},[277,58109,58110],{"class":279,"line":500},[277,58111,328],{"emptyLinePlaceholder":327},[277,58113,58114,58116,58118,58120,58122,58124,58126],{"class":279,"line":505},[277,58115,405],{"class":311},[277,58117,2195],{"class":356},[277,58119,340],{"class":311},[277,58121,2200],{"class":291},[277,58123,2203],{"class":283},[277,58125,601],{"class":311},[277,58127,343],{"class":283},[277,58129,58130,58132,58134,58136,58138],{"class":279,"line":520},[277,58131,508],{"class":311},[277,58133,5842],{"class":283},[277,58135,2503],{"class":311},[277,58137,5708],{"class":301},[277,58139,2476],{"class":283},[277,58141,58142,58144,58146,58148,58150,58152,58154,58156],{"class":279,"line":539},[277,58143,1093],{"class":311},[277,58145,2215],{"class":283},[277,58147,2218],{"class":291},[277,58149,448],{"class":283},[277,58151,2223],{"class":349},[277,58153,2226],{"class":311},[277,58155,2288],{"class":311},[277,58157,5867],{"class":283},[277,58159,58160],{"class":279,"line":545},[277,58161,542],{"class":283},[277,58163,58164],{"class":279,"line":550},[277,58165,328],{"emptyLinePlaceholder":327},[277,58167,58168,58170,58172,58174,58176],{"class":279,"line":578},[277,58169,508],{"class":311},[277,58171,5842],{"class":283},[277,58173,2503],{"class":311},[277,58175,5713],{"class":301},[277,58177,2476],{"class":283},[277,58179,58180,58182,58184,58186,58188,58190,58192],{"class":279,"line":583},[277,58181,1093],{"class":311},[277,58183,2215],{"class":283},[277,58185,2218],{"class":291},[277,58187,448],{"class":283},[277,58189,2223],{"class":349},[277,58191,2226],{"class":311},[277,58193,5904],{"class":283},[277,58195,58196],{"class":279,"line":588},[277,58197,542],{"class":283},[277,58199,58200],{"class":279,"line":606},[277,58201,328],{"emptyLinePlaceholder":327},[277,58203,58204,58206],{"class":279,"line":614},[277,58205,2212],{"class":311},[277,58207,5919],{"class":283},[277,58209,58210],{"class":279,"line":625},[277,58211,676],{"class":283},[277,58213,58214],{"class":279,"line":637},[277,58215,328],{"emptyLinePlaceholder":327},[277,58217,58218,58220,58222,58224],{"class":279,"line":646},[277,58219,464],{"class":311},[277,58221,467],{"class":311},[277,58223,5936],{"class":291},[277,58225,473],{"class":283},[277,58227,58228,58230,58232],{"class":279,"line":668},[277,58229,5943],{"class":283},[277,58231,298],{"class":311},[277,58233,5948],{"class":301},[277,58235,58236],{"class":279,"line":673},[277,58237,328],{"emptyLinePlaceholder":327},[277,58239,58240,58242,58244,58246,58248,58250,58252,58254],{"class":279,"line":679},[277,58241,479],{"class":311},[277,58243,482],{"class":356},[277,58245,340],{"class":311},[277,58247,487],{"class":311},[277,58249,490],{"class":291},[277,58251,448],{"class":283},[277,58253,5969],{"class":301},[277,58255,433],{"class":283},[277,58257,58258,58260,58262,58264,58266,58268,58270,58272,58274,58276,58278,58280,58282,58284],{"class":279,"line":684},[277,58259,479],{"class":311},[277,58261,5978],{"class":356},[277,58263,340],{"class":311},[277,58265,511],{"class":283},[277,58267,560],{"class":311},[277,58269,563],{"class":283},[277,58271,566],{"class":291},[277,58273,569],{"class":283},[277,58275,572],{"class":311},[277,58277,5995],{"class":283},[277,58279,5998],{"class":349},[277,58281,353],{"class":311},[277,58283,5630],{"class":291},[277,58285,6005],{"class":283},[277,58287,58288],{"class":279,"line":700},[277,58289,328],{"emptyLinePlaceholder":327},[277,58291,58292,58294,58296],{"class":279,"line":717},[277,58293,6014],{"class":283},[277,58295,298],{"class":311},[277,58297,6019],{"class":283},[277,58299,58300,58302,58304,58306,58308,58310,58312,58314,58316],{"class":279,"line":722},[277,58301,6024],{"class":283},[277,58303,298],{"class":311},[277,58305,526],{"class":311},[277,58307,6031],{"class":291},[277,58309,6034],{"class":283},[277,58311,6037],{"class":291},[277,58313,448],{"class":283},[277,58315,6042],{"class":301},[277,58317,433],{"class":283},[277,58319,58320,58322,58324],{"class":279,"line":729},[277,58321,5943],{"class":283},[277,58323,298],{"class":311},[277,58325,6053],{"class":301},[277,58327,58328],{"class":279,"line":738},[277,58329,394],{"class":283},[277,58331,58332],{"class":279,"line":747},[277,58333,328],{"emptyLinePlaceholder":327},[277,58335,58336,58338,58340],{"class":279,"line":754},[277,58337,2460],{"class":311},[277,58339,6068],{"class":291},[277,58341,473],{"class":283},[277,58343,58344,58346,58348,58350,58352,58354],{"class":279,"line":772},[277,58345,508],{"class":311},[277,58347,6077],{"class":283},[277,58349,6080],{"class":311},[277,58351,424],{"class":356},[277,58353,2340],{"class":283},[277,58355,714],{"class":311},[277,58357,58358],{"class":279,"line":777},[277,58359,328],{"emptyLinePlaceholder":327},[277,58361,58362,58364,58366,58368,58370,58372],{"class":279,"line":782},[277,58363,6095],{"class":283},[277,58365,298],{"class":311},[277,58367,6100],{"class":291},[277,58369,2203],{"class":283},[277,58371,601],{"class":311},[277,58373,343],{"class":283},[277,58375,58376,58378,58380],{"class":279,"line":792},[277,58377,6111],{"class":311},[277,58379,5936],{"class":291},[277,58381,622],{"class":283},[277,58383,58384,58386,58388],{"class":279,"line":797},[277,58385,6120],{"class":283},[277,58387,6123],{"class":356},[277,58389,433],{"class":283},[277,58391,58392],{"class":279,"line":807},[277,58393,394],{"class":283},[277,58395,58396],{"class":279,"line":826},[277,58397,328],{"emptyLinePlaceholder":327},[277,58399,58400,58402,58404],{"class":279,"line":849},[277,58401,2460],{"class":311},[277,58403,6140],{"class":291},[277,58405,473],{"class":283},[277,58407,58408,58410,58412,58414,58416,58418],{"class":279,"line":854},[277,58409,508],{"class":311},[277,58411,6077],{"class":283},[277,58413,2503],{"class":311},[277,58415,424],{"class":356},[277,58417,2340],{"class":283},[277,58419,714],{"class":311},[277,58421,58422],{"class":279,"line":876},[277,58423,328],{"emptyLinePlaceholder":327},[277,58425,58426,58428],{"class":279,"line":891},[277,58427,6165],{"class":291},[277,58429,6168],{"class":283},[277,58431,58432,58434,58436],{"class":279,"line":905},[277,58433,6095],{"class":283},[277,58435,298],{"class":311},[277,58437,6177],{"class":356},[277,58439,58440],{"class":279,"line":919},[277,58441,394],{"class":283},[277,58443,58444],{"class":279,"line":929},[277,58445,328],{"emptyLinePlaceholder":327},[277,58447,58448,58450,58452,58454],{"class":279,"line":934},[277,58449,687],{"class":291},[277,58451,2203],{"class":283},[277,58453,601],{"class":311},[277,58455,343],{"class":283},[277,58457,58458,58460,58462],{"class":279,"line":951},[277,58459,6200],{"class":283},[277,58461,298],{"class":311},[277,58463,2296],{"class":356},[277,58465,58466],{"class":279,"line":961},[277,58467,676],{"class":283},[277,58469,58470],{"class":279,"line":1473},[277,58471,328],{"emptyLinePlaceholder":327},[277,58473,58474,58476,58478,58480,58482,58484],{"class":279,"line":1478},[277,58475,6217],{"class":291},[277,58477,448],{"class":283},[277,58479,464],{"class":311},[277,58481,598],{"class":283},[277,58483,601],{"class":311},[277,58485,343],{"class":283},[277,58487,58488,58490,58492,58494,58496,58498,58500],{"class":279,"line":1497},[277,58489,5943],{"class":283},[277,58491,298],{"class":311},[277,58493,6236],{"class":283},[277,58495,2285],{"class":311},[277,58497,6241],{"class":301},[277,58499,6244],{"class":311},[277,58501,6247],{"class":301},[277,58503,58504,58506,58508],{"class":279,"line":1510},[277,58505,6252],{"class":311},[277,58507,5936],{"class":291},[277,58509,622],{"class":283},[277,58511,58512,58514],{"class":279,"line":1523},[277,58513,6261],{"class":291},[277,58515,622],{"class":283},[277,58517,58518],{"class":279,"line":1536},[277,58519,676],{"class":283},[277,58521,58522],{"class":279,"line":1545},[277,58523,328],{"emptyLinePlaceholder":327},[277,58525,58526,58528,58530,58532],{"class":279,"line":1550},[277,58527,6276],{"class":291},[277,58529,2203],{"class":283},[277,58531,601],{"class":311},[277,58533,343],{"class":283},[277,58535,58536,58538,58540],{"class":279,"line":1565},[277,58537,5943],{"class":283},[277,58539,298],{"class":311},[277,58541,6291],{"class":301},[277,58543,58544,58546],{"class":279,"line":1574},[277,58545,6296],{"class":291},[277,58547,622],{"class":283},[277,58549,58550],{"class":279,"line":4076},[277,58551,676],{"class":283},[277,58553,58554,58556,58558],{"class":279,"line":4088},[277,58555,785],{"class":283},[277,58557,288],{"class":287},[277,58559,305],{"class":283},[277,58561,58562],{"class":279,"line":4093},[277,58563,328],{"emptyLinePlaceholder":327},[277,58565,58566,58568,58570],{"class":279,"line":4102},[277,58567,284],{"class":283},[277,58569,802],{"class":287},[277,58571,305],{"class":283},[277,58573,58574,58576,58578,58580,58582,58584],{"class":279,"line":4107},[277,58575,810],{"class":283},[277,58577,4121],{"class":287},[277,58579,816],{"class":291},[277,58581,298],{"class":283},[277,58583,6335],{"class":301},[277,58585,305],{"class":283},[277,58587,58588,58590,58592],{"class":279,"line":4116},[277,58589,829],{"class":283},[277,58591,4138],{"class":287},[277,58593,305],{"class":283},[277,58595,58596,58598,58600,58602,58604],{"class":279,"line":4133},[277,58597,879],{"class":283},[277,58599,30],{"class":287},[277,58601,6354],{"class":283},[277,58603,30],{"class":287},[277,58605,305],{"class":283},[277,58607,58608,58610,58612,58614,58616],{"class":279,"line":4143},[277,58609,879],{"class":283},[277,58611,21],{"class":287},[277,58613,6367],{"class":283},[277,58615,21],{"class":287},[277,58617,305],{"class":283},[277,58619,58620,58622,58624,58626,58628,58630,58632,58634],{"class":279,"line":4157},[277,58621,879],{"class":283},[277,58623,21],{"class":287},[277,58625,834],{"class":291},[277,58627,298],{"class":283},[277,58629,6384],{"class":301},[277,58631,6387],{"class":283},[277,58633,21],{"class":287},[277,58635,305],{"class":283},[277,58637,58638,58640,58642],{"class":279,"line":4166},[277,58639,922],{"class":283},[277,58641,4138],{"class":287},[277,58643,305],{"class":283},[277,58645,58646],{"class":279,"line":4172},[277,58647,328],{"emptyLinePlaceholder":327},[277,58649,58650,58652,58654,58656,58658,58660],{"class":279,"line":4182},[277,58651,829],{"class":283},[277,58653,6410],{"class":287},[277,58655,816],{"class":291},[277,58657,298],{"class":283},[277,58659,6417],{"class":301},[277,58661,305],{"class":283},[277,58663,58664,58666,58668,58670,58672,58674,58676,58678],{"class":279,"line":4191},[277,58665,879],{"class":283},[277,58667,4267],{"class":287},[277,58669,4278],{"class":291},[277,58671,298],{"class":283},[277,58673,6432],{"class":301},[277,58675,6435],{"class":283},[277,58677,4267],{"class":287},[277,58679,305],{"class":283},[277,58681,58682,58684,58686,58688,58690,58692,58694,58696],{"class":279,"line":4196},[277,58683,879],{"class":283},[277,58685,4267],{"class":287},[277,58687,4278],{"class":291},[277,58689,298],{"class":283},[277,58691,6452],{"class":301},[277,58693,6455],{"class":283},[277,58695,4267],{"class":287},[277,58697,305],{"class":283},[277,58699,58700,58702,58704,58706,58708,58710,58712,58714],{"class":279,"line":4220},[277,58701,879],{"class":283},[277,58703,4267],{"class":287},[277,58705,4278],{"class":291},[277,58707,298],{"class":283},[277,58709,6472],{"class":301},[277,58711,6475],{"class":283},[277,58713,4267],{"class":287},[277,58715,305],{"class":283},[277,58717,58718,58720,58722],{"class":279,"line":4234},[277,58719,922],{"class":283},[277,58721,6410],{"class":287},[277,58723,305],{"class":283},[277,58725,58726],{"class":279,"line":4247},[277,58727,328],{"emptyLinePlaceholder":327},[277,58729,58730,58732,58734],{"class":279,"line":4262},[277,58731,829],{"class":283},[277,58733,38],{"class":287},[277,58735,305],{"class":283},[277,58737,58738,58740],{"class":279,"line":4293},[277,58739,879],{"class":283},[277,58741,6506],{"class":287},[277,58743,58744,58746,58748],{"class":279,"line":4302},[277,58745,6511],{"class":291},[277,58747,298],{"class":283},[277,58749,6516],{"class":301},[277,58751,58752,58754,58756],{"class":279,"line":4307},[277,58753,6521],{"class":291},[277,58755,298],{"class":283},[277,58757,6526],{"class":301},[277,58759,58760],{"class":279,"line":4328},[277,58761,4543],{"class":283},[277,58763,58764],{"class":279,"line":4337},[277,58765,6535],{"class":283},[277,58767,58768,58770,58772],{"class":279,"line":4993},[277,58769,4175],{"class":283},[277,58771,41],{"class":287},[277,58773,305],{"class":283},[277,58775,58776,58778,58780],{"class":279,"line":5006},[277,58777,922],{"class":283},[277,58779,38],{"class":287},[277,58781,305],{"class":283},[277,58783,58784,58786,58788],{"class":279,"line":5019},[277,58785,954],{"class":283},[277,58787,4121],{"class":287},[277,58789,305],{"class":283},[277,58791,58792,58794,58796],{"class":279,"line":5044},[277,58793,785],{"class":283},[277,58795,802],{"class":287},[277,58797,305],{"class":283},[267,58799,58800],{"className":269,"code":6570,"filename":6571,"language":272,"meta":273,"style":273},[16,58801,58802,58810,58818,58824,58830,58834,58842,58850,58858,58866,58872,58876,58880,58884,58888,58894,58910,58930,58934,58938,58954,58972,58976,58980,58988,58992,58996,59000,59006,59016,59020,59024,59032,59052,59064,59074,59078,59082,59088,59098,59108,59112,59116,59120,59128,59138,59142,59160,59176,59180,59190,59212,59222,59226,59230,59236,59254,59258,59274,59286,59294,59298,59302,59308,59326,59330,59340,59350,59354,59358,59362,59370,59374,59382,59396,59404,59416,59428,59446,59454,59458,59472,59490,59508,59526,59534,59538,59546,59552,59560,59568,59572,59576,59584,59592,59600],{"__ignoreMap":273},[277,58803,58804,58806,58808],{"class":279,"line":280},[277,58805,284],{"class":283},[277,58807,288],{"class":287},[277,58809,305],{"class":283},[277,58811,58812,58814,58816],{"class":279,"line":308},[277,58813,1057],{"class":311},[277,58815,1060],{"class":311},[277,58817,343],{"class":283},[277,58819,58820,58822],{"class":279,"line":324},[277,58821,1086],{"class":291},[277,58823,473],{"class":283},[277,58825,58826,58828],{"class":279,"line":331},[277,58827,1093],{"class":311},[277,58829,343],{"class":283},[277,58831,58832],{"class":279,"line":346},[277,58833,6606],{"class":283},[277,58835,58836,58838,58840],{"class":279,"line":360},[277,58837,6611],{"class":283},[277,58839,5703],{"class":301},[277,58841,1077],{"class":283},[277,58843,58844,58846,58848],{"class":279,"line":371},[277,58845,6620],{"class":283},[277,58847,5735],{"class":301},[277,58849,1077],{"class":283},[277,58851,58852,58854,58856],{"class":279,"line":381},[277,58853,6629],{"class":283},[277,58855,430],{"class":356},[277,58857,1077],{"class":283},[277,58859,58860,58862,58864],{"class":279,"line":391},[277,58861,6638],{"class":283},[277,58863,430],{"class":356},[277,58865,1077],{"class":283},[277,58867,58868,58870],{"class":279,"line":397},[277,58869,6647],{"class":283},[277,58871,2043],{"class":356},[277,58873,58874],{"class":279,"line":402},[277,58875,1126],{"class":283},[277,58877,58878],{"class":279,"line":436},[277,58879,1131],{"class":283},[277,58881,58882],{"class":279,"line":456},[277,58883,328],{"emptyLinePlaceholder":327},[277,58885,58886],{"class":279,"line":461},[277,58887,2742],{"class":283},[277,58889,58890,58892],{"class":279,"line":476},[277,58891,2747],{"class":291},[277,58893,473],{"class":283},[277,58895,58896,58898,58900,58902,58904,58906,58908],{"class":279,"line":500},[277,58897,1177],{"class":311},[277,58899,511],{"class":283},[277,58901,1341],{"class":356},[277,58903,6682],{"class":283},[277,58905,2503],{"class":311},[277,58907,5708],{"class":301},[277,58909,2476],{"class":283},[277,58911,58912,58914,58916,58918,58920,58922,58924,58926,58928],{"class":279,"line":505},[277,58913,2842],{"class":311},[277,58915,1268],{"class":356},[277,58917,2759],{"class":283},[277,58919,2218],{"class":291},[277,58921,448],{"class":283},[277,58923,2223],{"class":349},[277,58925,2226],{"class":311},[277,58927,2288],{"class":311},[277,58929,5867],{"class":283},[277,58931,58932],{"class":279,"line":520},[277,58933,1203],{"class":283},[277,58935,58936],{"class":279,"line":539},[277,58937,328],{"emptyLinePlaceholder":327},[277,58939,58940,58942,58944,58946,58948,58950,58952],{"class":279,"line":545},[277,58941,1177],{"class":311},[277,58943,511],{"class":283},[277,58945,1341],{"class":356},[277,58947,6682],{"class":283},[277,58949,2503],{"class":311},[277,58951,5713],{"class":301},[277,58953,2476],{"class":283},[277,58955,58956,58958,58960,58962,58964,58966,58968,58970],{"class":279,"line":550},[277,58957,2842],{"class":311},[277,58959,1268],{"class":356},[277,58961,2759],{"class":283},[277,58963,2218],{"class":291},[277,58965,448],{"class":283},[277,58967,2223],{"class":349},[277,58969,2226],{"class":311},[277,58971,5904],{"class":283},[277,58973,58974],{"class":279,"line":578},[277,58975,1203],{"class":283},[277,58977,58978],{"class":279,"line":583},[277,58979,328],{"emptyLinePlaceholder":327},[277,58981,58982,58984,58986],{"class":279,"line":588},[277,58983,2754],{"class":311},[277,58985,1268],{"class":356},[277,58987,6767],{"class":283},[277,58989,58990],{"class":279,"line":606},[277,58991,1126],{"class":283},[277,58993,58994],{"class":279,"line":614},[277,58995,1131],{"class":283},[277,58997,58998],{"class":279,"line":625},[277,58999,328],{"emptyLinePlaceholder":327},[277,59001,59002,59004],{"class":279,"line":637},[277,59003,6784],{"class":291},[277,59005,473],{"class":283},[277,59007,59008,59010,59012,59014],{"class":279,"line":646},[277,59009,4724],{"class":356},[277,59011,6793],{"class":283},[277,59013,298],{"class":311},[277,59015,2296],{"class":356},[277,59017,59018],{"class":279,"line":668},[277,59019,1131],{"class":283},[277,59021,59022],{"class":279,"line":673},[277,59023,328],{"emptyLinePlaceholder":327},[277,59025,59026,59028,59030],{"class":279,"line":679},[277,59027,1248],{"class":311},[277,59029,6812],{"class":291},[277,59031,473],{"class":283},[277,59033,59034,59036,59038,59040,59042,59044,59046,59048,59050],{"class":279,"line":684},[277,59035,4724],{"class":356},[277,59037,6821],{"class":283},[277,59039,298],{"class":311},[277,59041,1268],{"class":356},[277,59043,6793],{"class":283},[277,59045,2285],{"class":311},[277,59047,6241],{"class":301},[277,59049,6244],{"class":311},[277,59051,6247],{"class":301},[277,59053,59054,59056,59058,59060,59062],{"class":279,"line":700},[277,59055,617],{"class":311},[277,59057,1268],{"class":356},[277,59059,104],{"class":283},[277,59061,6846],{"class":291},[277,59063,622],{"class":283},[277,59065,59066,59068,59070,59072],{"class":279,"line":717},[277,59067,4724],{"class":356},[277,59069,104],{"class":283},[277,59071,6857],{"class":291},[277,59073,622],{"class":283},[277,59075,59076],{"class":279,"line":722},[277,59077,1131],{"class":283},[277,59079,59080],{"class":279,"line":729},[277,59081,328],{"emptyLinePlaceholder":327},[277,59083,59084,59086],{"class":279,"line":738},[277,59085,6872],{"class":291},[277,59087,473],{"class":283},[277,59089,59090,59092,59094,59096],{"class":279,"line":747},[277,59091,4724],{"class":356},[277,59093,6821],{"class":283},[277,59095,298],{"class":311},[277,59097,6291],{"class":301},[277,59099,59100,59102,59104,59106],{"class":279,"line":754},[277,59101,4724],{"class":356},[277,59103,104],{"class":283},[277,59105,6893],{"class":291},[277,59107,622],{"class":283},[277,59109,59110],{"class":279,"line":772},[277,59111,1131],{"class":283},[277,59113,59114],{"class":279,"line":777},[277,59115,328],{"emptyLinePlaceholder":327},[277,59117,59118],{"class":279,"line":782},[277,59119,1140],{"class":283},[277,59121,59122,59124,59126],{"class":279,"line":792},[277,59123,1145],{"class":311},[277,59125,5936],{"class":291},[277,59127,473],{"class":283},[277,59129,59130,59132,59134,59136],{"class":279,"line":797},[277,59131,1212],{"class":356},[277,59133,6821],{"class":283},[277,59135,298],{"class":311},[277,59137,5948],{"class":301},[277,59139,59140],{"class":279,"line":807},[277,59141,328],{"emptyLinePlaceholder":327},[277,59143,59144,59146,59148,59150,59152,59154,59156,59158],{"class":279,"line":826},[277,59145,1154],{"class":311},[277,59147,482],{"class":356},[277,59149,340],{"class":311},[277,59151,487],{"class":311},[277,59153,490],{"class":291},[277,59155,448],{"class":283},[277,59157,5969],{"class":301},[277,59159,433],{"class":283},[277,59161,59162,59164,59166,59168,59170,59172,59174],{"class":279,"line":849},[277,59163,1154],{"class":311},[277,59165,5978],{"class":356},[277,59167,340],{"class":311},[277,59169,487],{"class":311},[277,59171,563],{"class":283},[277,59173,566],{"class":291},[277,59175,622],{"class":283},[277,59177,59178],{"class":279,"line":854},[277,59179,328],{"emptyLinePlaceholder":327},[277,59181,59182,59184,59186,59188],{"class":279,"line":876},[277,59183,1212],{"class":356},[277,59185,6974],{"class":283},[277,59187,298],{"class":311},[277,59189,6019],{"class":283},[277,59191,59192,59194,59196,59198,59200,59202,59204,59206,59208,59210],{"class":279,"line":891},[277,59193,1212],{"class":356},[277,59195,6985],{"class":283},[277,59197,298],{"class":311},[277,59199,526],{"class":311},[277,59201,6031],{"class":291},[277,59203,6034],{"class":283},[277,59205,6037],{"class":291},[277,59207,448],{"class":283},[277,59209,6042],{"class":301},[277,59211,433],{"class":283},[277,59213,59214,59216,59218,59220],{"class":279,"line":905},[277,59215,1212],{"class":356},[277,59217,6821],{"class":283},[277,59219,298],{"class":311},[277,59221,6053],{"class":301},[277,59223,59224],{"class":279,"line":919},[277,59225,7016],{"class":283},[277,59227,59228],{"class":279,"line":929},[277,59229,328],{"emptyLinePlaceholder":327},[277,59231,59232,59234],{"class":279,"line":934},[277,59233,7025],{"class":291},[277,59235,473],{"class":283},[277,59237,59238,59240,59242,59244,59246,59248,59250,59252],{"class":279,"line":951},[277,59239,1177],{"class":311},[277,59241,511],{"class":283},[277,59243,1341],{"class":356},[277,59245,7038],{"class":283},[277,59247,6080],{"class":311},[277,59249,424],{"class":356},[277,59251,2340],{"class":283},[277,59253,714],{"class":311},[277,59255,59256],{"class":279,"line":961},[277,59257,328],{"emptyLinePlaceholder":327},[277,59259,59260,59262,59264,59266,59268,59270,59272],{"class":279,"line":1473},[277,59261,1212],{"class":356},[277,59263,7038],{"class":283},[277,59265,298],{"class":311},[277,59267,6100],{"class":291},[277,59269,2203],{"class":283},[277,59271,601],{"class":311},[277,59273,343],{"class":283},[277,59275,59276,59278,59280,59282,59284],{"class":279,"line":1478},[277,59277,7071],{"class":311},[277,59279,1268],{"class":356},[277,59281,104],{"class":283},[277,59283,6846],{"class":291},[277,59285,622],{"class":283},[277,59287,59288,59290,59292],{"class":279,"line":1497},[277,59289,7084],{"class":283},[277,59291,6123],{"class":356},[277,59293,433],{"class":283},[277,59295,59296],{"class":279,"line":1510},[277,59297,7016],{"class":283},[277,59299,59300],{"class":279,"line":1523},[277,59301,328],{"emptyLinePlaceholder":327},[277,59303,59304,59306],{"class":279,"line":1536},[277,59305,7101],{"class":291},[277,59307,473],{"class":283},[277,59309,59310,59312,59314,59316,59318,59320,59322,59324],{"class":279,"line":1545},[277,59311,1177],{"class":311},[277,59313,511],{"class":283},[277,59315,1341],{"class":356},[277,59317,7038],{"class":283},[277,59319,2503],{"class":311},[277,59321,424],{"class":356},[277,59323,2340],{"class":283},[277,59325,714],{"class":311},[277,59327,59328],{"class":279,"line":1550},[277,59329,328],{"emptyLinePlaceholder":327},[277,59331,59332,59334,59336,59338],{"class":279,"line":1565},[277,59333,7130],{"class":291},[277,59335,448],{"class":283},[277,59337,1341],{"class":356},[277,59339,7137],{"class":283},[277,59341,59342,59344,59346,59348],{"class":279,"line":1574},[277,59343,1212],{"class":356},[277,59345,7038],{"class":283},[277,59347,298],{"class":311},[277,59349,6177],{"class":356},[277,59351,59352],{"class":279,"line":4076},[277,59353,1126],{"class":283},[277,59355,59356],{"class":279,"line":4088},[277,59357,542],{"class":283},[277,59359,59360],{"class":279,"line":4093},[277,59361,394],{"class":283},[277,59363,59364,59366,59368],{"class":279,"line":4102},[277,59365,785],{"class":283},[277,59367,288],{"class":287},[277,59369,305],{"class":283},[277,59371,59372],{"class":279,"line":4107},[277,59373,328],{"emptyLinePlaceholder":327},[277,59375,59376,59378,59380],{"class":279,"line":4116},[277,59377,284],{"class":283},[277,59379,802],{"class":287},[277,59381,305],{"class":283},[277,59383,59384,59386,59388,59390,59392,59394],{"class":279,"line":4133},[277,59385,810],{"class":283},[277,59387,4121],{"class":287},[277,59389,816],{"class":291},[277,59391,298],{"class":283},[277,59393,6335],{"class":301},[277,59395,305],{"class":283},[277,59397,59398,59400,59402],{"class":279,"line":4143},[277,59399,829],{"class":283},[277,59401,4138],{"class":287},[277,59403,305],{"class":283},[277,59405,59406,59408,59410,59412,59414],{"class":279,"line":4157},[277,59407,879],{"class":283},[277,59409,30],{"class":287},[277,59411,6354],{"class":283},[277,59413,30],{"class":287},[277,59415,305],{"class":283},[277,59417,59418,59420,59422,59424,59426],{"class":279,"line":4166},[277,59419,879],{"class":283},[277,59421,21],{"class":287},[277,59423,6367],{"class":283},[277,59425,21],{"class":287},[277,59427,305],{"class":283},[277,59429,59430,59432,59434,59436,59438,59440,59442,59444],{"class":279,"line":4172},[277,59431,879],{"class":283},[277,59433,21],{"class":287},[277,59435,834],{"class":291},[277,59437,298],{"class":283},[277,59439,6384],{"class":301},[277,59441,6387],{"class":283},[277,59443,21],{"class":287},[277,59445,305],{"class":283},[277,59447,59448,59450,59452],{"class":279,"line":4182},[277,59449,922],{"class":283},[277,59451,4138],{"class":287},[277,59453,305],{"class":283},[277,59455,59456],{"class":279,"line":4191},[277,59457,328],{"emptyLinePlaceholder":327},[277,59459,59460,59462,59464,59466,59468,59470],{"class":279,"line":4196},[277,59461,829],{"class":283},[277,59463,6410],{"class":287},[277,59465,816],{"class":291},[277,59467,298],{"class":283},[277,59469,6417],{"class":301},[277,59471,305],{"class":283},[277,59473,59474,59476,59478,59480,59482,59484,59486,59488],{"class":279,"line":4220},[277,59475,879],{"class":283},[277,59477,4267],{"class":287},[277,59479,4278],{"class":291},[277,59481,298],{"class":283},[277,59483,6432],{"class":301},[277,59485,6435],{"class":283},[277,59487,4267],{"class":287},[277,59489,305],{"class":283},[277,59491,59492,59494,59496,59498,59500,59502,59504,59506],{"class":279,"line":4234},[277,59493,879],{"class":283},[277,59495,4267],{"class":287},[277,59497,4278],{"class":291},[277,59499,298],{"class":283},[277,59501,6452],{"class":301},[277,59503,6455],{"class":283},[277,59505,4267],{"class":287},[277,59507,305],{"class":283},[277,59509,59510,59512,59514,59516,59518,59520,59522,59524],{"class":279,"line":4247},[277,59511,879],{"class":283},[277,59513,4267],{"class":287},[277,59515,4278],{"class":291},[277,59517,298],{"class":283},[277,59519,6472],{"class":301},[277,59521,6475],{"class":283},[277,59523,4267],{"class":287},[277,59525,305],{"class":283},[277,59527,59528,59530,59532],{"class":279,"line":4262},[277,59529,922],{"class":283},[277,59531,6410],{"class":287},[277,59533,305],{"class":283},[277,59535,59536],{"class":279,"line":4293},[277,59537,328],{"emptyLinePlaceholder":327},[277,59539,59540,59542,59544],{"class":279,"line":4302},[277,59541,829],{"class":283},[277,59543,38],{"class":287},[277,59545,305],{"class":283},[277,59547,59548,59550],{"class":279,"line":4307},[277,59549,879],{"class":283},[277,59551,6506],{"class":287},[277,59553,59554,59556,59558],{"class":279,"line":4328},[277,59555,6511],{"class":291},[277,59557,298],{"class":283},[277,59559,6516],{"class":301},[277,59561,59562,59564,59566],{"class":279,"line":4337},[277,59563,6521],{"class":291},[277,59565,298],{"class":283},[277,59567,6526],{"class":301},[277,59569,59570],{"class":279,"line":4993},[277,59571,4543],{"class":283},[277,59573,59574],{"class":279,"line":5006},[277,59575,6535],{"class":283},[277,59577,59578,59580,59582],{"class":279,"line":5019},[277,59579,4175],{"class":283},[277,59581,41],{"class":287},[277,59583,305],{"class":283},[277,59585,59586,59588,59590],{"class":279,"line":5044},[277,59587,922],{"class":283},[277,59589,38],{"class":287},[277,59591,305],{"class":283},[277,59593,59594,59596,59598],{"class":279,"line":5053},[277,59595,954],{"class":283},[277,59597,4121],{"class":287},[277,59599,305],{"class":283},[277,59601,59602,59604,59606],{"class":279,"line":5058},[277,59603,785],{"class":283},[277,59605,802],{"class":287},[277,59607,305],{"class":283},[38,59609,59610,59614,59618,59620],{},[41,59611,59612,7412],{},[16,59613,5244],{},[41,59615,59616,7417],{},[16,59617,5252],{},[41,59619,7420],{},[41,59621,59622,7425],{},[16,59623,210],{},[30,59625,1596],{"id":1595},[38,59627,59628,59632,59636,59640,59642],{},[41,59629,59630,7434],{},[16,59631,5176],{},[41,59633,59634,7439],{},[16,59635,5179],{},[41,59637,59638,7444],{},[16,59639,5182],{},[41,59641,7447],{},[41,59643,7450],{},[1606,59645,1608],{},{"title":273,"searchDepth":308,"depth":308,"links":59647},[59648,59649,59650,59651,59652,59653,59659,59664],{"id":5168,"depth":308,"text":5169},{"id":60,"depth":308,"text":61},{"id":128,"depth":308,"text":129},{"id":155,"depth":308,"text":156},{"id":5389,"depth":308,"text":5390},{"id":189,"depth":308,"text":190,"children":59654},[59655,59656,59657,59658],{"id":5484,"depth":324,"text":7463},{"id":5501,"depth":324,"text":5502},{"id":5521,"depth":324,"text":7466},{"id":5540,"depth":324,"text":5541},{"id":1945,"depth":308,"text":1946,"children":59660},[59661,59662,59663],{"id":5554,"depth":324,"text":5555},{"id":5567,"depth":324,"text":5568},{"id":5577,"depth":324,"text":5578},{"id":1595,"depth":308,"text":1596},{"script":59666},[59667],{"type":1632,"key":1633,"data-nuxt-schema-org":327,"nodes":59668},[59669],{"headline":5163,"author":59670,"datePublished":7484,"@type":1640},{"name":1637,"@type":1638},{"updatedAt":7484,"coverCaption":7486,"author":1637,"keywords":59672},[1645,7488,5179,5182,7489],[59674],{"headline":5163,"author":59675,"datePublished":7484,"@type":1640},{"name":1637,"@type":1638},{"title":5163,"description":7477},[59678,59679,59680,59681],{"tag":1660,"color":1661},{"tag":7488,"color":7499},{"tag":1668,"color":1669},{"tag":1671,"color":1672},{"id":7504,"title":7505,"body":59683,"cover":9049,"coverAlt":9050,"date":9051,"description":9052,"draft":1627,"extension":1628,"head":61043,"locale":1641,"meta":61049,"navigation":327,"path":9064,"schemaOrg":61051,"seo":61054,"series":1653,"seriesDescription":1654,"seriesOrder":346,"seriesTitle":1655,"slug":1656,"stem":9069,"tags":61055,"__hash__":9076},{"type":8,"value":59684,"toc":61025},[59685,59691,59695,59701,59703,59709,59711,59725,59727,59737,59739,59749,59753,59755,59757,59759,59781,59783,59797,59799,59801,59807,59819,59821,59835,59837,59839,59879,59885,59887,59891,59893,59895,59915,59917,59921,59927,59931,59933,59939,59945,59947,59949,59953,59955,59957,59959,59961,59963,59967,59969,59975,60491,60993,61007,61009,61023],[11,59686,7511,59687,225,59689,19],{"id":7510},[16,59688,7514],{},[16,59690,5294],{},[21,59692,7519,59693,7522],{},[16,59694,5508],{},[21,59696,7525,59697,1697,59699,7530],{},[16,59698,7514],{},[16,59700,5294],{},[30,59702,61],{"id":60},[21,59704,7535,59705,7539,59707,7542],{},[16,59706,7538],{},[16,59708,2123],{},[21,59710,7545],{},[38,59712,59713,59719],{},[41,59714,59715,7552,59717,104],{},[16,59716,7514],{},[72,59718,7555],{},[41,59720,59721,7552,59723,104],{},[16,59722,5294],{},[72,59724,7562],{},[21,59726,7565],{},[38,59728,59729,59733],{},[41,59730,59731],{},[16,59732,7572],{},[41,59734,59735],{},[16,59736,7577],{},[21,59738,7580],{},[38,59740,59741,59745],{},[41,59742,110,59743,7587],{},[16,59744,7514],{},[41,59746,110,59747,7592],{},[16,59748,5294],{},[21,59750,7595,59751,104],{},[16,59752,7514],{},[30,59754,129],{"id":128},[21,59756,7602],{},[21,59758,3305],{},[38,59760,59761,59767,59777,59779],{},[41,59762,7609,59763,225,59765,7614],{},[16,59764,224],{},[16,59766,228],{},[41,59768,7617,59769,225,59771,225,59773,118,59775,104],{},[16,59770,5508],{},[16,59772,7622],{},[16,59774,7625],{},[16,59776,7628],{},[41,59778,7631],{},[41,59780,7634],{},[21,59782,7637],{},[38,59784,59785,59791],{},[41,59786,7642,59787,7646,59789,104],{},[72,59788,7645],{},[16,59790,7514],{},[41,59792,7642,59793,7654,59795,104],{},[72,59794,7653],{},[16,59796,5294],{},[30,59798,156],{"id":155},[21,59800,7661],{},[21,59802,7664,59803,1697,59805,7669],{},[16,59804,7514],{},[16,59806,5294],{},[38,59808,59809,59813,59815,59817],{},[41,59810,7674,59811,104],{},[16,59812,7677],{},[41,59814,7680],{},[41,59816,7683],{},[41,59818,7686],{},[21,59820,7689],{},[38,59822,59823,59827,59831],{},[41,59824,59825,7696],{},[16,59826,7538],{},[41,59828,59829,7702],{},[16,59830,7701],{},[41,59832,7705,59833,7708],{},[16,59834,5176],{},[21,59836,7711],{},[30,59838,7715],{"id":7714},[5392,59840,59841,59853],{},[5395,59842,59843],{},[5398,59844,59845,59847,59849,59851],{},[5401,59846,5403],{},[5401,59848,7726],{},[5401,59850,7729],{},[5401,59852,7732],{},[5414,59854,59855,59867],{},[5398,59856,59857,59861,59863,59865],{},[5419,59858,59859],{},[16,59860,7514],{},[5419,59862,7743],{},[5419,59864,7746],{},[5419,59866,7749],{},[5398,59868,59869,59873,59875,59877],{},[5419,59870,59871],{},[16,59872,5294],{},[5419,59874,7758],{},[5419,59876,7761],{},[5419,59878,7764],{},[21,59880,59881,7769,59883,104],{},[16,59882,5294],{},[16,59884,5294],{},[30,59886,190],{"id":189},[192,59888,7777,59889,7780],{"id":7776},[16,59890,203],{},[21,59892,7783],{},[21,59894,7786],{},[38,59896,59897,59901,59905,59909,59913],{},[41,59898,59899],{},[16,59900,7793],{},[41,59902,59903],{},[16,59904,7798],{},[41,59906,59907],{},[16,59908,7803],{},[41,59910,59911],{},[16,59912,7628],{},[41,59914,7810],{},[21,59916,7813],{},[192,59918,7817,59919],{"id":7816},[16,59920,5294],{},[21,59922,59923,7824,59925,7827],{},[16,59924,5294],{},[16,59926,7514],{},[21,59928,7830,59929,7833],{},[16,59930,7514],{},[192,59932,7837],{"id":7836},[21,59934,7840,59935,7843,59937,7846],{},[16,59936,7514],{},[16,59938,7701],{},[21,59940,7849,59941,7852,59943,104],{},[16,59942,5176],{},[16,59944,5294],{},[21,59946,7857],{},[192,59948,7861],{"id":7860},[21,59950,7864,59951,7867],{},[16,59952,7514],{},[21,59954,7870],{},[30,59956,1946],{"id":1945},[192,59958,7876],{"id":7875},[21,59960,7879],{},[192,59962,7883],{"id":7882},[21,59964,7886,59965,7889],{},[16,59966,7514],{},[192,59968,7893],{"id":7892},[21,59970,59971,7898,59973,7902],{},[16,59972,5294],{},[3292,59974,7901],{},[267,59976,59977],{"className":269,"code":7905,"filename":271,"language":272,"meta":273,"style":273},[16,59978,59979,59995,60005,60009,60025,60049,60053,60071,60075,60083,60099,60103,60107,60117,60129,60133,60139,60157,60161,60165,60169,60197,60205,60209,60215,60235,60239,60243,60247,60259,60263,60267,60271,60281,60287,60299,60311,60319,60323,60327,60337,60349,60361,60369,60373,60377,60387,60399,60403,60411,60415,60423,60437,60449,60463,60467,60475,60483],{"__ignoreMap":273},[277,59980,59981,59983,59985,59987,59989,59991,59993],{"class":279,"line":280},[277,59982,284],{"class":283},[277,59984,288],{"class":287},[277,59986,292],{"class":291},[277,59988,295],{"class":291},[277,59990,298],{"class":283},[277,59992,302],{"class":301},[277,59994,305],{"class":283},[277,59996,59997,59999,60001,60003],{"class":279,"line":308},[277,59998,312],{"class":311},[277,60000,7930],{"class":283},[277,60002,318],{"class":311},[277,60004,321],{"class":301},[277,60006,60007],{"class":279,"line":324},[277,60008,328],{"emptyLinePlaceholder":327},[277,60010,60011,60013,60015,60017,60019,60021,60023],{"class":279,"line":331},[277,60012,405],{"class":311},[277,60014,5726],{"class":356},[277,60016,340],{"class":311},[277,60018,413],{"class":291},[277,60020,448],{"class":283},[277,60022,7953],{"class":301},[277,60024,433],{"class":283},[277,60026,60027,60029,60031,60033,60035,60037,60039,60041,60043,60045,60047],{"class":279,"line":346},[277,60028,405],{"class":311},[277,60030,7962],{"class":356},[277,60032,340],{"class":311},[277,60034,413],{"class":291},[277,60036,284],{"class":283},[277,60038,7971],{"class":356},[277,60040,421],{"class":311},[277,60042,424],{"class":356},[277,60044,427],{"class":283},[277,60046,430],{"class":356},[277,60048,433],{"class":283},[277,60050,60051],{"class":279,"line":360},[277,60052,328],{"emptyLinePlaceholder":327},[277,60054,60055,60057,60059,60061,60063,60065,60067,60069],{"class":279,"line":371},[277,60056,7990],{"class":311},[277,60058,7993],{"class":283},[277,60060,353],{"class":311},[277,60062,7998],{"class":291},[277,60064,421],{"class":311},[277,60066,424],{"class":356},[277,60068,340],{"class":311},[277,60070,6177],{"class":356},[277,60072,60073],{"class":279,"line":381},[277,60074,328],{"emptyLinePlaceholder":327},[277,60076,60077,60079,60081],{"class":279,"line":391},[277,60078,2460],{"class":311},[277,60080,8017],{"class":291},[277,60082,473],{"class":283},[277,60084,60085,60087,60089,60091,60093,60095,60097],{"class":279,"line":397},[277,60086,5943],{"class":283},[277,60088,298],{"class":311},[277,60090,8028],{"class":283},[277,60092,2285],{"class":311},[277,60094,8033],{"class":301},[277,60096,6244],{"class":311},[277,60098,8038],{"class":301},[277,60100,60101],{"class":279,"line":402},[277,60102,394],{"class":283},[277,60104,60105],{"class":279,"line":436},[277,60106,328],{"emptyLinePlaceholder":327},[277,60108,60109,60111,60113,60115],{"class":279,"line":456},[277,60110,464],{"class":311},[277,60112,467],{"class":311},[277,60114,8055],{"class":291},[277,60116,473],{"class":283},[277,60118,60119,60121,60123,60125,60127],{"class":279,"line":461},[277,60120,8062],{"class":283},[277,60122,298],{"class":311},[277,60124,526],{"class":311},[277,60126,7998],{"class":291},[277,60128,622],{"class":283},[277,60130,60131],{"class":279,"line":476},[277,60132,328],{"emptyLinePlaceholder":327},[277,60134,60135,60137],{"class":279,"line":500},[277,60136,609],{"class":311},[277,60138,343],{"class":283},[277,60140,60141,60143,60145,60147,60149,60151,60153,60155],{"class":279,"line":505},[277,60142,2233],{"class":311},[277,60144,482],{"class":356},[277,60146,340],{"class":311},[277,60148,487],{"class":311},[277,60150,490],{"class":291},[277,60152,448],{"class":283},[277,60154,8097],{"class":301},[277,60156,2360],{"class":283},[277,60158,60159],{"class":279,"line":520},[277,60160,8104],{"class":283},[277,60162,60163],{"class":279,"line":539},[277,60164,2913],{"class":283},[277,60166,60167],{"class":279,"line":545},[277,60168,328],{"emptyLinePlaceholder":327},[277,60170,60171,60173,60175,60177,60179,60181,60183,60185,60187,60189,60191,60193,60195],{"class":279,"line":550},[277,60172,2233],{"class":311},[277,60174,5978],{"class":356},[277,60176,340],{"class":311},[277,60178,487],{"class":311},[277,60180,563],{"class":283},[277,60182,566],{"class":291},[277,60184,8129],{"class":283},[277,60186,572],{"class":311},[277,60188,5995],{"class":283},[277,60190,8136],{"class":349},[277,60192,353],{"class":311},[277,60194,2473],{"class":356},[277,60196,2179],{"class":283},[277,60198,60199,60201,60203],{"class":279,"line":578},[277,60200,8147],{"class":283},[277,60202,298],{"class":311},[277,60204,8152],{"class":283},[277,60206,60207],{"class":279,"line":583},[277,60208,542],{"class":283},[277,60210,60211,60213],{"class":279,"line":588},[277,60212,8161],{"class":311},[277,60214,634],{"class":283},[277,60216,60217,60219,60221,60223,60225,60227,60229,60231,60233],{"class":279,"line":606},[277,60218,1336],{"class":311},[277,60220,8170],{"class":283},[277,60222,652],{"class":311},[277,60224,8175],{"class":291},[277,60226,8178],{"class":311},[277,60228,8181],{"class":283},[277,60230,2503],{"class":311},[277,60232,8186],{"class":301},[277,60234,2476],{"class":283},[277,60236,60237],{"class":279,"line":614},[277,60238,8193],{"class":311},[277,60240,60241],{"class":279,"line":625},[277,60242,1126],{"class":283},[277,60244,60245],{"class":279,"line":637},[277,60246,328],{"emptyLinePlaceholder":327},[277,60248,60249,60251,60253,60255,60257],{"class":279,"line":646},[277,60250,2881],{"class":283},[277,60252,3349],{"class":291},[277,60254,448],{"class":283},[277,60256,8212],{"class":301},[277,60258,8215],{"class":283},[277,60260,60261],{"class":279,"line":668},[277,60262,542],{"class":283},[277,60264,60265],{"class":279,"line":673},[277,60266,394],{"class":283},[277,60268,60269],{"class":279,"line":679},[277,60270,328],{"emptyLinePlaceholder":327},[277,60272,60273,60275,60277,60279],{"class":279,"line":684},[277,60274,687],{"class":291},[277,60276,2203],{"class":283},[277,60278,601],{"class":311},[277,60280,343],{"class":283},[277,60282,60283,60285],{"class":279,"line":700},[277,60284,8242],{"class":291},[277,60286,622],{"class":283},[277,60288,60289,60291,60293,60295,60297],{"class":279,"line":717},[277,60290,8249],{"class":283},[277,60292,8252],{"class":291},[277,60294,448],{"class":283},[277,60296,8257],{"class":301},[277,60298,8260],{"class":283},[277,60300,60301,60303,60305,60307,60309],{"class":279,"line":722},[277,60302,8249],{"class":283},[277,60304,8252],{"class":291},[277,60306,448],{"class":283},[277,60308,8271],{"class":301},[277,60310,8260],{"class":283},[277,60312,60313,60315,60317],{"class":279,"line":729},[277,60314,8278],{"class":311},[277,60316,8055],{"class":291},[277,60318,622],{"class":283},[277,60320,60321],{"class":279,"line":738},[277,60322,676],{"class":283},[277,60324,60325],{"class":279,"line":747},[277,60326,328],{"emptyLinePlaceholder":327},[277,60328,60329,60331,60333,60335],{"class":279,"line":754},[277,60330,8295],{"class":291},[277,60332,2203],{"class":283},[277,60334,601],{"class":311},[277,60336,343],{"class":283},[277,60338,60339,60341,60343,60345,60347],{"class":279,"line":772},[277,60340,8249],{"class":283},[277,60342,8308],{"class":291},[277,60344,448],{"class":283},[277,60346,8257],{"class":301},[277,60348,8260],{"class":283},[277,60350,60351,60353,60355,60357,60359],{"class":279,"line":777},[277,60352,8249],{"class":283},[277,60354,8308],{"class":291},[277,60356,448],{"class":283},[277,60358,8271],{"class":301},[277,60360,8260],{"class":283},[277,60362,60363,60365,60367],{"class":279,"line":782},[277,60364,8331],{"class":283},[277,60366,8334],{"class":291},[277,60368,622],{"class":283},[277,60370,60371],{"class":279,"line":792},[277,60372,676],{"class":283},[277,60374,60375],{"class":279,"line":797},[277,60376,328],{"emptyLinePlaceholder":327},[277,60378,60379,60381,60383,60385],{"class":279,"line":807},[277,60380,8349],{"class":291},[277,60382,2203],{"class":283},[277,60384,601],{"class":311},[277,60386,343],{"class":283},[277,60388,60389,60391,60393,60395,60397],{"class":279,"line":826},[277,60390,2349],{"class":283},[277,60392,3266],{"class":291},[277,60394,448],{"class":283},[277,60396,8366],{"class":301},[277,60398,433],{"class":283},[277,60400,60401],{"class":279,"line":849},[277,60402,676],{"class":283},[277,60404,60405,60407,60409],{"class":279,"line":854},[277,60406,785],{"class":283},[277,60408,288],{"class":287},[277,60410,305],{"class":283},[277,60412,60413],{"class":279,"line":876},[277,60414,328],{"emptyLinePlaceholder":327},[277,60416,60417,60419,60421],{"class":279,"line":891},[277,60418,284],{"class":283},[277,60420,802],{"class":287},[277,60422,305],{"class":283},[277,60424,60425,60427,60429,60431,60433,60435],{"class":279,"line":905},[277,60426,810],{"class":283},[277,60428,4121],{"class":287},[277,60430,816],{"class":291},[277,60432,298],{"class":283},[277,60434,8405],{"class":301},[277,60436,305],{"class":283},[277,60438,60439,60441,60443,60445,60447],{"class":279,"line":919},[277,60440,829],{"class":283},[277,60442,21],{"class":287},[277,60444,6367],{"class":283},[277,60446,21],{"class":287},[277,60448,305],{"class":283},[277,60450,60451,60453,60455,60457,60459,60461],{"class":279,"line":929},[277,60452,829],{"class":283},[277,60454,21],{"class":287},[277,60456,834],{"class":291},[277,60458,298],{"class":283},[277,60460,8432],{"class":301},[277,60462,305],{"class":283},[277,60464,60465],{"class":279,"line":934},[277,60466,8439],{"class":283},[277,60468,60469,60471,60473],{"class":279,"line":951},[277,60470,922],{"class":283},[277,60472,21],{"class":287},[277,60474,305],{"class":283},[277,60476,60477,60479,60481],{"class":279,"line":961},[277,60478,954],{"class":283},[277,60480,4121],{"class":287},[277,60482,305],{"class":283},[277,60484,60485,60487,60489],{"class":279,"line":1473},[277,60486,785],{"class":283},[277,60488,802],{"class":287},[277,60490,305],{"class":283},[267,60492,60493],{"className":269,"code":8466,"filename":971,"language":272,"meta":273,"style":273},[16,60494,60495,60503,60511,60517,60523,60531,60539,60545,60549,60553,60557,60563,60573,60589,60605,60617,60621,60625,60631,60647,60663,60673,60677,60681,60687,60699,60703,60707,60711,60717,60735,60739,60743,60751,60765,60769,60775,60793,60801,60805,60809,60825,60835,60839,60845,60865,60869,60873,60877,60889,60893,60897,60901,60905,60913,60917,60925,60939,60951,60965,60969,60977,60985],{"__ignoreMap":273},[277,60496,60497,60499,60501],{"class":279,"line":280},[277,60498,284],{"class":283},[277,60500,288],{"class":287},[277,60502,305],{"class":283},[277,60504,60505,60507,60509],{"class":279,"line":308},[277,60506,1057],{"class":311},[277,60508,1060],{"class":311},[277,60510,343],{"class":283},[277,60512,60513,60515],{"class":279,"line":324},[277,60514,1086],{"class":291},[277,60516,473],{"class":283},[277,60518,60519,60521],{"class":279,"line":331},[277,60520,1093],{"class":311},[277,60522,343],{"class":283},[277,60524,60525,60527,60529],{"class":279,"line":346},[277,60526,6620],{"class":283},[277,60528,7953],{"class":301},[277,60530,1077],{"class":283},[277,60532,60533,60535,60537],{"class":279,"line":360},[277,60534,8509],{"class":283},[277,60536,430],{"class":356},[277,60538,1077],{"class":283},[277,60540,60541,60543],{"class":279,"line":371},[277,60542,8518],{"class":283},[277,60544,8521],{"class":356},[277,60546,60547],{"class":279,"line":381},[277,60548,1126],{"class":283},[277,60550,60551],{"class":279,"line":391},[277,60552,1131],{"class":283},[277,60554,60555],{"class":279,"line":397},[277,60556,328],{"emptyLinePlaceholder":327},[277,60558,60559,60561],{"class":279,"line":402},[277,60560,6784],{"class":291},[277,60562,473],{"class":283},[277,60564,60565,60567,60569,60571],{"class":279,"line":436},[277,60566,4724],{"class":356},[277,60568,104],{"class":283},[277,60570,8548],{"class":291},[277,60572,622],{"class":283},[277,60574,60575,60577,60579,60581,60583,60585,60587],{"class":279,"line":456},[277,60576,8555],{"class":283},[277,60578,8252],{"class":291},[277,60580,448],{"class":283},[277,60582,8257],{"class":301},[277,60584,225],{"class":283},[277,60586,1341],{"class":356},[277,60588,8568],{"class":283},[277,60590,60591,60593,60595,60597,60599,60601,60603],{"class":279,"line":461},[277,60592,8555],{"class":283},[277,60594,8252],{"class":291},[277,60596,448],{"class":283},[277,60598,8271],{"class":301},[277,60600,225],{"class":283},[277,60602,1341],{"class":356},[277,60604,8568],{"class":283},[277,60606,60607,60609,60611,60613,60615],{"class":279,"line":476},[277,60608,6111],{"class":311},[277,60610,1268],{"class":356},[277,60612,104],{"class":283},[277,60614,8595],{"class":291},[277,60616,622],{"class":283},[277,60618,60619],{"class":279,"line":500},[277,60620,1131],{"class":283},[277,60622,60623],{"class":279,"line":505},[277,60624,328],{"emptyLinePlaceholder":327},[277,60626,60627,60629],{"class":279,"line":520},[277,60628,8610],{"class":291},[277,60630,473],{"class":283},[277,60632,60633,60635,60637,60639,60641,60643,60645],{"class":279,"line":539},[277,60634,8555],{"class":283},[277,60636,8308],{"class":291},[277,60638,448],{"class":283},[277,60640,8257],{"class":301},[277,60642,225],{"class":283},[277,60644,1341],{"class":356},[277,60646,8568],{"class":283},[277,60648,60649,60651,60653,60655,60657,60659,60661],{"class":279,"line":545},[277,60650,8555],{"class":283},[277,60652,8308],{"class":291},[277,60654,448],{"class":283},[277,60656,8271],{"class":301},[277,60658,225],{"class":283},[277,60660,1341],{"class":356},[277,60662,8568],{"class":283},[277,60664,60665,60667,60669,60671],{"class":279,"line":550},[277,60666,4724],{"class":356},[277,60668,8651],{"class":283},[277,60670,8334],{"class":291},[277,60672,622],{"class":283},[277,60674,60675],{"class":279,"line":578},[277,60676,1131],{"class":283},[277,60678,60679],{"class":279,"line":583},[277,60680,328],{"emptyLinePlaceholder":327},[277,60682,60683,60685],{"class":279,"line":588},[277,60684,8668],{"class":291},[277,60686,473],{"class":283},[277,60688,60689,60691,60693,60695,60697],{"class":279,"line":606},[277,60690,2881],{"class":283},[277,60692,3266],{"class":291},[277,60694,448],{"class":283},[277,60696,8366],{"class":301},[277,60698,433],{"class":283},[277,60700,60701],{"class":279,"line":614},[277,60702,1131],{"class":283},[277,60704,60705],{"class":279,"line":625},[277,60706,328],{"emptyLinePlaceholder":327},[277,60708,60709],{"class":279,"line":637},[277,60710,1140],{"class":283},[277,60712,60713,60715],{"class":279,"line":646},[277,60714,8699],{"class":291},[277,60716,473],{"class":283},[277,60718,60719,60721,60723,60725,60727,60729,60731,60733],{"class":279,"line":668},[277,60720,1212],{"class":356},[277,60722,6821],{"class":283},[277,60724,298],{"class":311},[277,60726,8028],{"class":283},[277,60728,2285],{"class":311},[277,60730,8033],{"class":301},[277,60732,6244],{"class":311},[277,60734,8038],{"class":301},[277,60736,60737],{"class":279,"line":673},[277,60738,7016],{"class":283},[277,60740,60741],{"class":279,"line":679},[277,60742,328],{"emptyLinePlaceholder":327},[277,60744,60745,60747,60749],{"class":279,"line":684},[277,60746,1145],{"class":311},[277,60748,8055],{"class":291},[277,60750,473],{"class":283},[277,60752,60753,60755,60757,60759,60761,60763],{"class":279,"line":700},[277,60754,1212],{"class":356},[277,60756,8742],{"class":283},[277,60758,298],{"class":311},[277,60760,526],{"class":311},[277,60762,7998],{"class":291},[277,60764,622],{"class":283},[277,60766,60767],{"class":279,"line":717},[277,60768,328],{"emptyLinePlaceholder":327},[277,60770,60771,60773],{"class":279,"line":722},[277,60772,8759],{"class":311},[277,60774,343],{"class":283},[277,60776,60777,60779,60781,60783,60785,60787,60789,60791],{"class":279,"line":729},[277,60778,2774],{"class":311},[277,60780,482],{"class":356},[277,60782,340],{"class":311},[277,60784,487],{"class":311},[277,60786,490],{"class":291},[277,60788,448],{"class":283},[277,60790,8097],{"class":301},[277,60792,2360],{"class":283},[277,60794,60795,60797,60799],{"class":279,"line":738},[277,60796,8784],{"class":283},[277,60798,1341],{"class":356},[277,60800,8789],{"class":283},[277,60802,60803],{"class":279,"line":747},[277,60804,8794],{"class":283},[277,60806,60807],{"class":279,"line":754},[277,60808,328],{"emptyLinePlaceholder":327},[277,60810,60811,60813,60815,60817,60819,60821,60823],{"class":279,"line":772},[277,60812,2774],{"class":311},[277,60814,5978],{"class":356},[277,60816,340],{"class":311},[277,60818,487],{"class":311},[277,60820,563],{"class":283},[277,60822,566],{"class":291},[277,60824,622],{"class":283},[277,60826,60827,60829,60831,60833],{"class":279,"line":777},[277,60828,8819],{"class":356},[277,60830,8822],{"class":283},[277,60832,298],{"class":311},[277,60834,8152],{"class":283},[277,60836,60837],{"class":279,"line":782},[277,60838,1203],{"class":283},[277,60840,60841,60843],{"class":279,"line":792},[277,60842,8835],{"class":311},[277,60844,634],{"class":283},[277,60846,60847,60849,60851,60853,60855,60857,60859,60861,60863],{"class":279,"line":797},[277,60848,8842],{"class":311},[277,60850,8170],{"class":283},[277,60852,652],{"class":311},[277,60854,8175],{"class":291},[277,60856,8178],{"class":311},[277,60858,8181],{"class":283},[277,60860,2503],{"class":311},[277,60862,8186],{"class":301},[277,60864,2476],{"class":283},[277,60866,60867],{"class":279,"line":807},[277,60868,8863],{"class":311},[277,60870,60871],{"class":279,"line":826},[277,60872,8868],{"class":283},[277,60874,60875],{"class":279,"line":849},[277,60876,328],{"emptyLinePlaceholder":327},[277,60878,60879,60881,60883,60885,60887],{"class":279,"line":854},[277,60880,8877],{"class":283},[277,60882,3349],{"class":291},[277,60884,448],{"class":283},[277,60886,8212],{"class":301},[277,60888,8215],{"class":283},[277,60890,60891],{"class":279,"line":876},[277,60892,1203],{"class":283},[277,60894,60895],{"class":279,"line":891},[277,60896,1126],{"class":283},[277,60898,60899],{"class":279,"line":905},[277,60900,542],{"class":283},[277,60902,60903],{"class":279,"line":919},[277,60904,394],{"class":283},[277,60906,60907,60909,60911],{"class":279,"line":929},[277,60908,785],{"class":283},[277,60910,288],{"class":287},[277,60912,305],{"class":283},[277,60914,60915],{"class":279,"line":934},[277,60916,328],{"emptyLinePlaceholder":327},[277,60918,60919,60921,60923],{"class":279,"line":951},[277,60920,284],{"class":283},[277,60922,802],{"class":287},[277,60924,305],{"class":283},[277,60926,60927,60929,60931,60933,60935,60937],{"class":279,"line":961},[277,60928,810],{"class":283},[277,60930,4121],{"class":287},[277,60932,816],{"class":291},[277,60934,298],{"class":283},[277,60936,8405],{"class":301},[277,60938,305],{"class":283},[277,60940,60941,60943,60945,60947,60949],{"class":279,"line":1473},[277,60942,829],{"class":283},[277,60944,21],{"class":287},[277,60946,6367],{"class":283},[277,60948,21],{"class":287},[277,60950,305],{"class":283},[277,60952,60953,60955,60957,60959,60961,60963],{"class":279,"line":1478},[277,60954,829],{"class":283},[277,60956,21],{"class":287},[277,60958,834],{"class":291},[277,60960,298],{"class":283},[277,60962,8432],{"class":301},[277,60964,305],{"class":283},[277,60966,60967],{"class":279,"line":1497},[277,60968,8439],{"class":283},[277,60970,60971,60973,60975],{"class":279,"line":1510},[277,60972,922],{"class":283},[277,60974,21],{"class":287},[277,60976,305],{"class":283},[277,60978,60979,60981,60983],{"class":279,"line":1523},[277,60980,954],{"class":283},[277,60982,4121],{"class":287},[277,60984,305],{"class":283},[277,60986,60987,60989,60991],{"class":279,"line":1536},[277,60988,785],{"class":283},[277,60990,802],{"class":287},[277,60992,305],{"class":283},[38,60994,60995,60999,61003],{},[41,60996,60997,8996],{},[16,60998,210],{},[41,61000,61001,9001],{},[16,61002,7572],{},[41,61004,61005,9006],{},[16,61006,7577],{},[30,61008,1596],{"id":1595},[38,61010,61011,61015,61019,61021],{},[41,61012,61013,9015],{},[16,61014,7514],{},[41,61016,61017,9020],{},[16,61018,5294],{},[41,61020,9023],{},[41,61022,9026],{},[1606,61024,3118],{},{"title":273,"searchDepth":308,"depth":308,"links":61026},[61027,61028,61029,61030,61031,61037,61042],{"id":60,"depth":308,"text":61},{"id":128,"depth":308,"text":129},{"id":155,"depth":308,"text":156},{"id":7714,"depth":308,"text":7715},{"id":189,"depth":308,"text":190,"children":61032},[61033,61034,61035,61036],{"id":7776,"depth":324,"text":9038},{"id":7816,"depth":324,"text":9040},{"id":7836,"depth":324,"text":7837},{"id":7860,"depth":324,"text":7861},{"id":1945,"depth":308,"text":1946,"children":61038},[61039,61040,61041],{"id":7875,"depth":324,"text":7876},{"id":7882,"depth":324,"text":7883},{"id":7892,"depth":324,"text":7893},{"id":1595,"depth":308,"text":1596},{"script":61044},[61045],{"type":1632,"key":1633,"data-nuxt-schema-org":327,"nodes":61046},[61047],{"headline":7505,"author":61048,"datePublished":9059,"@type":1640},{"name":1637,"@type":1638},{"updatedAt":9059,"coverCaption":9061,"author":1637,"keywords":61050},[1645,7514,5294,8295,9063],[61052],{"headline":7505,"author":61053,"datePublished":9059,"@type":1640},{"name":1637,"@type":1638},{"title":7505,"description":9052},[61056,61057,61058],{"tag":1660,"color":1661},{"tag":1668,"color":1669},{"tag":9074,"color":9075},{"id":9078,"title":9079,"body":61060,"cover":10631,"coverAlt":10632,"date":10633,"description":10634,"draft":1627,"extension":1628,"head":62406,"locale":1641,"meta":62412,"navigation":327,"path":10646,"schemaOrg":62414,"seo":62417,"series":1653,"seriesDescription":1654,"seriesOrder":331,"seriesTitle":1655,"slug":1656,"stem":10651,"tags":62418,"__hash__":10658},{"type":8,"value":61061,"toc":62397},[61062,61068,61072,61076,61078,61080,61082,61084,61098,61102,61112,61114,61136,61142,61146,61150,61152,61156,61158,61170,61176,61182,61184,61186,61192,61206,61212,61214,61220,61222,61228,61238,61242,61244,61328,61330,61334,61346,61350,61356,61358,61362,61364,61368,61370,61378,61380,61386,61388,61390,61392,61394,61396,61398,61402,61406,61408,61410,61489,61491,61919,62353,62363,62365,62395],[11,61063,9085,61064,225,61066,19],{"id":9084},[16,61065,9088],{},[16,61067,9091],{},[21,61069,9094,61070,9097],{},[16,61071,1735],{},[21,61073,9100,61074,9104],{},[72,61075,9103],{},[21,61077,9107],{},[11,61079,61],{"id":60},[21,61081,9112],{},[21,61083,9115],{},[38,61085,61086,61092],{},[41,61087,61088,7552,61090,104],{},[16,61089,9088],{},[72,61091,9124],{},[41,61093,61094,7552,61096,104],{},[16,61095,9091],{},[72,61097,9131],{},[21,61099,110,61100,9136],{},[72,61101,271],{},[38,61103,61104,61108],{},[41,61105,61106],{},[16,61107,9143],{},[41,61109,61110],{},[16,61111,9148],{},[21,61113,9151],{},[38,61115,61116,61122,61128],{},[41,61117,7642,61118,225,61120,9161],{},[72,61119,9158],{},[16,61121,9088],{},[41,61123,7642,61124,225,61126,9161],{},[72,61125,9166],{},[16,61127,9091],{},[41,61129,9171,61130,9175,61132,9178,61134,9181],{},[72,61131,9174],{},[16,61133,1735],{},[16,61135,1732],{},[21,61137,9184,61138,9188,61140,9192],{},[72,61139,9187],{},[3292,61141,9191],{},[3111,61143,61144],{},[21,61145,9197],{},[21,61147,9200,61148,104],{},[16,61149,1735],{},[11,61151,129],{"id":128},[21,61153,9207,61154,104],{},[72,61155,9210],{},[21,61157,3305],{},[38,61159,61160,61162,61164,61166,61168],{},[41,61161,9217],{},[41,61163,9220],{},[41,61165,9223],{},[41,61167,9226],{},[41,61169,9229],{},[21,61171,61172,9234,61174,104],{},[16,61173,9088],{},[72,61175,9237],{},[21,61177,61178,9242,61180,9246],{},[16,61179,9091],{},[72,61181,9245],{},[11,61183,156],{"id":155},[21,61185,9251],{},[21,61187,7664,61188,1697,61190,7669],{},[16,61189,9088],{},[16,61191,9091],{},[38,61193,61194,61196,61200,61202],{},[41,61195,9262],{},[41,61197,9265,61198,104],{},[16,61199,1732],{},[41,61201,9270],{},[41,61203,9273,61204,9276],{},[16,61205,9091],{},[21,61207,9279,61208,9282,61210,9286],{},[16,61209,9091],{},[72,61211,9285],{},[11,61213,190],{"id":189},[30,61215,9292,61216,9295,61218],{"id":9291},[16,61217,9091],{},[16,61219,1735],{},[21,61221,9300],{},[21,61223,61224,9305,61226,9309],{},[16,61225,9091],{},[72,61227,9308],{},[21,61229,9312,61230,225,61232,225,61234,9322,61236,9325],{},[16,61231,9315],{},[16,61233,9318],{},[16,61235,9321],{},[16,61237,1735],{},[30,61239,9329,61240,9332],{"id":9328},[16,61241,9091],{},[21,61243,9335],{},[267,61245,61247],{"className":269,"code":9338,"filename":9339,"highlights":61246,"language":272,"meta":273,"style":273},[360],[16,61248,61249,61265,61275,61279,61295,61299,61310,61316,61320],{"__ignoreMap":273},[277,61250,61251,61253,61255,61257,61259,61261,61263],{"class":279,"line":280},[277,61252,284],{"class":283},[277,61254,288],{"class":287},[277,61256,292],{"class":291},[277,61258,295],{"class":291},[277,61260,298],{"class":283},[277,61262,302],{"class":301},[277,61264,305],{"class":283},[277,61266,61267,61269,61271,61273],{"class":279,"line":308},[277,61268,312],{"class":311},[277,61270,9365],{"class":283},[277,61272,318],{"class":311},[277,61274,321],{"class":301},[277,61276,61277],{"class":279,"line":324},[277,61278,328],{"emptyLinePlaceholder":327},[277,61280,61281,61283,61285,61287,61289,61291,61293],{"class":279,"line":331},[277,61282,405],{"class":311},[277,61284,9380],{"class":356},[277,61286,340],{"class":311},[277,61288,413],{"class":291},[277,61290,448],{"class":283},[277,61292,3542],{"class":356},[277,61294,433],{"class":283},[277,61296,61297],{"class":279,"line":346},[277,61298,328],{"emptyLinePlaceholder":327},[277,61300,61302,61304,61306,61308],{"class":61301,"line":360},[279,9398],[277,61303,9401],{"class":291},[277,61305,2203],{"class":283},[277,61307,601],{"class":311},[277,61309,343],{"class":283},[277,61311,61312,61314],{"class":279,"line":371},[277,61313,9412],{"class":283},[277,61315,9415],{"class":311},[277,61317,61318],{"class":279,"line":381},[277,61319,676],{"class":283},[277,61321,61322,61324,61326],{"class":279,"line":391},[277,61323,785],{"class":283},[277,61325,288],{"class":287},[277,61327,305],{"class":283},[21,61329,9430],{},[21,61331,9433,61332,9437],{},[72,61333,9436],{},[38,61335,61336,61340,61344],{},[41,61337,61338],{},[16,61339,1735],{},[41,61341,61342],{},[16,61343,1732],{},[41,61345,9450],{},[30,61347,9454,61348],{"id":9453},[16,61349,9088],{},[21,61351,110,61352,9461,61354,104],{},[16,61353,9088],{},[72,61355,9464],{},[21,61357,9467],{},[21,61359,9470,61360,104],{},[16,61361,9091],{},[30,61363,9476],{"id":9475},[21,61365,9479,61366,104],{},[72,61367,9482],{},[21,61369,9485],{},[38,61371,61372,61374,61376],{},[41,61373,9490],{},[41,61375,9493],{},[41,61377,9496],{},[21,61379,9499],{},[3111,61381,61382],{},[21,61383,9504,61384,9508],{},[72,61385,9507],{},[11,61387,1946],{"id":1945},[30,61389,9514],{"id":9513},[21,61391,9517],{},[21,61393,9520],{},[21,61395,9523],{},[30,61397,9527],{"id":9526},[21,61399,9530,61400,9534],{},[72,61401,9533],{},[21,61403,61404,9539],{},[16,61405,9091],{},[30,61407,9543],{"id":9542},[21,61409,9546],{},[267,61411,61413],{"className":269,"code":9549,"filename":9339,"highlights":61412,"language":272,"meta":273,"style":273},[308,360],[16,61414,61415,61423,61434,61446,61450,61454,61465,61477,61481],{"__ignoreMap":273},[277,61416,61417,61419,61421],{"class":279,"line":280},[277,61418,284],{"class":283},[277,61420,288],{"class":287},[277,61422,305],{"class":283},[277,61424,61426,61428,61430,61432],{"class":61425,"line":308},[279,9398],[277,61427,9566],{"class":291},[277,61429,2203],{"class":283},[277,61431,601],{"class":311},[277,61433,343],{"class":283},[277,61435,61436,61438,61440,61442,61444],{"class":279,"line":324},[277,61437,2349],{"class":283},[277,61439,2352],{"class":291},[277,61441,448],{"class":283},[277,61443,9583],{"class":301},[277,61445,433],{"class":283},[277,61447,61448],{"class":279,"line":331},[277,61449,676],{"class":283},[277,61451,61452],{"class":279,"line":346},[277,61453,328],{"emptyLinePlaceholder":327},[277,61455,61457,61459,61461,61463],{"class":61456,"line":360},[279,9398],[277,61458,9401],{"class":291},[277,61460,2203],{"class":283},[277,61462,601],{"class":311},[277,61464,343],{"class":283},[277,61466,61467,61469,61471,61473,61475],{"class":279,"line":371},[277,61468,2349],{"class":283},[277,61470,2352],{"class":291},[277,61472,448],{"class":283},[277,61474,9615],{"class":301},[277,61476,433],{"class":283},[277,61478,61479],{"class":279,"line":381},[277,61480,676],{"class":283},[277,61482,61483,61485,61487],{"class":279,"line":391},[277,61484,785],{"class":283},[277,61486,288],{"class":287},[277,61488,305],{"class":283},[21,61490,9632],{},[267,61492,61493],{"className":269,"code":9635,"filename":271,"language":272,"meta":273,"style":273},[16,61494,61495,61511,61521,61525,61537,61549,61561,61565,61569,61593,61609,61613,61621,61629,61637,61659,61663,61667,61671,61681,61693,61697,61701,61711,61723,61727,61737,61741,61751,61759,61763,61767,61775,61779,61787,61801,61815,61819,61827,61831,61837,61845,61853,61857,61863,61871,61879,61883,61887,61895,61903,61911],{"__ignoreMap":273},[277,61496,61497,61499,61501,61503,61505,61507,61509],{"class":279,"line":280},[277,61498,284],{"class":283},[277,61500,288],{"class":287},[277,61502,292],{"class":291},[277,61504,295],{"class":291},[277,61506,298],{"class":283},[277,61508,302],{"class":301},[277,61510,305],{"class":283},[277,61512,61513,61515,61517,61519],{"class":279,"line":308},[277,61514,312],{"class":311},[277,61516,9660],{"class":283},[277,61518,318],{"class":311},[277,61520,321],{"class":301},[277,61522,61523],{"class":279,"line":324},[277,61524,328],{"emptyLinePlaceholder":327},[277,61526,61527,61529,61531,61533,61535],{"class":279,"line":331},[277,61528,405],{"class":311},[277,61530,9675],{"class":356},[277,61532,340],{"class":311},[277,61534,413],{"class":291},[277,61536,2104],{"class":283},[277,61538,61539,61541,61543,61545,61547],{"class":279,"line":346},[277,61540,2109],{"class":283},[277,61542,2072],{"class":356},[277,61544,9690],{"class":283},[277,61546,9693],{"class":301},[277,61548,2132],{"class":283},[277,61550,61551,61553,61555,61557,61559],{"class":279,"line":360},[277,61552,2109],{"class":283},[277,61554,2139],{"class":356},[277,61556,9690],{"class":283},[277,61558,9706],{"class":301},[277,61560,2179],{"class":283},[277,61562,61563],{"class":279,"line":371},[277,61564,2184],{"class":283},[277,61566,61567],{"class":279,"line":381},[277,61568,328],{"emptyLinePlaceholder":327},[277,61570,61571,61573,61575,61577,61579,61581,61583,61585,61587,61589,61591],{"class":279,"line":391},[277,61572,405],{"class":311},[277,61574,9723],{"class":356},[277,61576,340],{"class":311},[277,61578,413],{"class":291},[277,61580,284],{"class":283},[277,61582,9732],{"class":291},[277,61584,421],{"class":311},[277,61586,424],{"class":356},[277,61588,427],{"class":283},[277,61590,430],{"class":356},[277,61592,433],{"class":283},[277,61594,61595,61597,61599,61601,61603,61605,61607],{"class":279,"line":397},[277,61596,405],{"class":311},[277,61598,9749],{"class":356},[277,61600,340],{"class":311},[277,61602,413],{"class":291},[277,61604,448],{"class":283},[277,61606,3542],{"class":356},[277,61608,433],{"class":283},[277,61610,61611],{"class":279,"line":402},[277,61612,328],{"emptyLinePlaceholder":327},[277,61614,61615,61617,61619],{"class":279,"line":436},[277,61616,2460],{"class":311},[277,61618,9770],{"class":291},[277,61620,473],{"class":283},[277,61622,61623,61625,61627],{"class":279,"line":456},[277,61624,9777],{"class":283},[277,61626,9780],{"class":291},[277,61628,1066],{"class":283},[277,61630,61631,61633,61635],{"class":279,"line":461},[277,61632,9787],{"class":283},[277,61634,9790],{"class":291},[277,61636,9793],{"class":283},[277,61638,61639,61641,61643,61645,61647,61649,61651,61653,61655,61657],{"class":279,"line":476},[277,61640,9798],{"class":283},[277,61642,9801],{"class":301},[277,61644,9804],{"class":283},[277,61646,104],{"class":301},[277,61648,3885],{"class":283},[277,61650,104],{"class":301},[277,61652,9813],{"class":356},[277,61654,9816],{"class":311},[277,61656,9819],{"class":356},[277,61658,9822],{"class":301},[277,61660,61661],{"class":279,"line":500},[277,61662,2318],{"class":283},[277,61664,61665],{"class":279,"line":505},[277,61666,394],{"class":283},[277,61668,61669],{"class":279,"line":520},[277,61670,328],{"emptyLinePlaceholder":327},[277,61672,61673,61675,61677,61679],{"class":279,"line":539},[277,61674,9566],{"class":291},[277,61676,2203],{"class":283},[277,61678,601],{"class":311},[277,61680,343],{"class":283},[277,61682,61683,61685,61687,61689,61691],{"class":279,"line":545},[277,61684,9849],{"class":283},[277,61686,298],{"class":311},[277,61688,9854],{"class":283},[277,61690,9857],{"class":311},[277,61692,9860],{"class":356},[277,61694,61695],{"class":279,"line":550},[277,61696,676],{"class":283},[277,61698,61699],{"class":279,"line":578},[277,61700,328],{"emptyLinePlaceholder":327},[277,61702,61703,61705,61707,61709],{"class":279,"line":583},[277,61704,9401],{"class":291},[277,61706,2203],{"class":283},[277,61708,601],{"class":311},[277,61710,343],{"class":283},[277,61712,61713,61715,61717,61719,61721],{"class":279,"line":588},[277,61714,508],{"class":311},[277,61716,511],{"class":283},[277,61718,514],{"class":311},[277,61720,9889],{"class":283},[277,61722,714],{"class":311},[277,61724,61725],{"class":279,"line":606},[277,61726,328],{"emptyLinePlaceholder":327},[277,61728,61729,61731,61733,61735],{"class":279,"line":614},[277,61730,479],{"class":311},[277,61732,9902],{"class":356},[277,61734,340],{"class":311},[277,61736,9907],{"class":283},[277,61738,61739],{"class":279,"line":625},[277,61740,328],{"emptyLinePlaceholder":327},[277,61742,61743,61745,61747,61749],{"class":279,"line":637},[277,61744,508],{"class":311},[277,61746,9918],{"class":283},[277,61748,9921],{"class":311},[277,61750,9924],{"class":283},[277,61752,61753,61755,61757],{"class":279,"line":646},[277,61754,9929],{"class":283},[277,61756,298],{"class":311},[277,61758,9934],{"class":283},[277,61760,61761],{"class":279,"line":668},[277,61762,542],{"class":283},[277,61764,61765],{"class":279,"line":673},[277,61766,676],{"class":283},[277,61768,61769,61771,61773],{"class":279,"line":679},[277,61770,785],{"class":283},[277,61772,288],{"class":287},[277,61774,305],{"class":283},[277,61776,61777],{"class":279,"line":684},[277,61778,328],{"emptyLinePlaceholder":327},[277,61780,61781,61783,61785],{"class":279,"line":700},[277,61782,284],{"class":283},[277,61784,802],{"class":287},[277,61786,305],{"class":283},[277,61788,61789,61791,61793,61795,61797,61799],{"class":279,"line":717},[277,61790,810],{"class":283},[277,61792,4121],{"class":287},[277,61794,816],{"class":291},[277,61796,298],{"class":283},[277,61798,9975],{"class":301},[277,61800,305],{"class":283},[277,61802,61803,61805,61807,61809,61811,61813],{"class":279,"line":722},[277,61804,829],{"class":283},[277,61806,4267],{"class":287},[277,61808,4278],{"class":291},[277,61810,298],{"class":283},[277,61812,9990],{"class":301},[277,61814,305],{"class":283},[277,61816,61817],{"class":279,"line":729},[277,61818,9997],{"class":283},[277,61820,61821,61823,61825],{"class":279,"line":738},[277,61822,922],{"class":283},[277,61824,4267],{"class":287},[277,61826,305],{"class":283},[277,61828,61829],{"class":279,"line":747},[277,61830,328],{"emptyLinePlaceholder":327},[277,61832,61833,61835],{"class":279,"line":754},[277,61834,829],{"class":283},[277,61836,10016],{"class":287},[277,61838,61839,61841,61843],{"class":279,"line":772},[277,61840,10021],{"class":291},[277,61842,298],{"class":283},[277,61844,10026],{"class":301},[277,61846,61847,61849,61851],{"class":279,"line":777},[277,61848,10031],{"class":291},[277,61850,298],{"class":283},[277,61852,10036],{"class":301},[277,61854,61855],{"class":279,"line":782},[277,61856,10041],{"class":283},[277,61858,61859,61861],{"class":279,"line":792},[277,61860,879],{"class":283},[277,61862,6506],{"class":287},[277,61864,61865,61867,61869],{"class":279,"line":797},[277,61866,6511],{"class":291},[277,61868,298],{"class":283},[277,61870,10056],{"class":301},[277,61872,61873,61875,61877],{"class":279,"line":807},[277,61874,6521],{"class":291},[277,61876,298],{"class":283},[277,61878,10065],{"class":301},[277,61880,61881],{"class":279,"line":826},[277,61882,4543],{"class":283},[277,61884,61885],{"class":279,"line":849},[277,61886,10074],{"class":283},[277,61888,61889,61891,61893],{"class":279,"line":854},[277,61890,4175],{"class":283},[277,61892,41],{"class":287},[277,61894,305],{"class":283},[277,61896,61897,61899,61901],{"class":279,"line":876},[277,61898,922],{"class":283},[277,61900,10089],{"class":287},[277,61902,305],{"class":283},[277,61904,61905,61907,61909],{"class":279,"line":891},[277,61906,954],{"class":283},[277,61908,4121],{"class":287},[277,61910,305],{"class":283},[277,61912,61913,61915,61917],{"class":279,"line":905},[277,61914,785],{"class":283},[277,61916,802],{"class":287},[277,61918,305],{"class":283},[267,61920,61921],{"className":269,"code":10110,"filename":6571,"language":272,"meta":273,"style":273},[16,61922,61923,61931,61939,61945,61951,61955,61967,61979,61983,61989,61993,61997,62001,62005,62011,62021,62029,62051,62055,62059,62063,62067,62073,62089,62101,62105,62109,62113,62119,62139,62143,62147,62151,62163,62167,62179,62189,62193,62197,62201,62209,62213,62221,62235,62249,62253,62261,62265,62271,62279,62287,62291,62297,62305,62313,62317,62321,62329,62337,62345],{"__ignoreMap":273},[277,61924,61925,61927,61929],{"class":279,"line":280},[277,61926,284],{"class":283},[277,61928,288],{"class":287},[277,61930,305],{"class":283},[277,61932,61933,61935,61937],{"class":279,"line":308},[277,61934,1057],{"class":311},[277,61936,1060],{"class":311},[277,61938,343],{"class":283},[277,61940,61941,61943],{"class":279,"line":324},[277,61942,1086],{"class":291},[277,61944,473],{"class":283},[277,61946,61947,61949],{"class":279,"line":331},[277,61948,1093],{"class":311},[277,61950,343],{"class":283},[277,61952,61953],{"class":279,"line":346},[277,61954,10145],{"class":283},[277,61956,61957,61959,61961,61963,61965],{"class":279,"line":360},[277,61958,2664],{"class":283},[277,61960,2072],{"class":356},[277,61962,9690],{"class":283},[277,61964,9693],{"class":301},[277,61966,2132],{"class":283},[277,61968,61969,61971,61973,61975,61977],{"class":279,"line":371},[277,61970,2664],{"class":283},[277,61972,2139],{"class":356},[277,61974,9690],{"class":283},[277,61976,9706],{"class":301},[277,61978,2179],{"class":283},[277,61980,61981],{"class":279,"line":381},[277,61982,10174],{"class":283},[277,61984,61985,61987],{"class":279,"line":391},[277,61986,10179],{"class":283},[277,61988,4692],{"class":356},[277,61990,61991],{"class":279,"line":397},[277,61992,1126],{"class":283},[277,61994,61995],{"class":279,"line":402},[277,61996,1131],{"class":283},[277,61998,61999],{"class":279,"line":436},[277,62000,328],{"emptyLinePlaceholder":327},[277,62002,62003],{"class":279,"line":456},[277,62004,1140],{"class":283},[277,62006,62007,62009],{"class":279,"line":461},[277,62008,10202],{"class":291},[277,62010,473],{"class":283},[277,62012,62013,62015,62017,62019],{"class":279,"line":476},[277,62014,1212],{"class":356},[277,62016,10211],{"class":283},[277,62018,9780],{"class":291},[277,62020,1066],{"class":283},[277,62022,62023,62025,62027],{"class":279,"line":500},[277,62024,10220],{"class":283},[277,62026,9790],{"class":291},[277,62028,9793],{"class":283},[277,62030,62031,62033,62035,62037,62039,62041,62043,62045,62047,62049],{"class":279,"line":505},[277,62032,10229],{"class":283},[277,62034,9801],{"class":301},[277,62036,1341],{"class":356},[277,62038,104],{"class":301},[277,62040,9804],{"class":283},[277,62042,104],{"class":301},[277,62044,9813],{"class":356},[277,62046,9816],{"class":311},[277,62048,9819],{"class":356},[277,62050,9822],{"class":301},[277,62052,62053],{"class":279,"line":520},[277,62054,2853],{"class":283},[277,62056,62057],{"class":279,"line":539},[277,62058,1126],{"class":283},[277,62060,62061],{"class":279,"line":545},[277,62062,1131],{"class":283},[277,62064,62065],{"class":279,"line":550},[277,62066,328],{"emptyLinePlaceholder":327},[277,62068,62069,62071],{"class":279,"line":578},[277,62070,10268],{"class":291},[277,62072,473],{"class":283},[277,62074,62075,62077,62079,62081,62083,62085,62087],{"class":279,"line":583},[277,62076,1336],{"class":311},[277,62078,511],{"class":283},[277,62080,1341],{"class":356},[277,62082,10281],{"class":283},[277,62084,652],{"class":311},[277,62086,10286],{"class":291},[277,62088,2476],{"class":283},[277,62090,62091,62093,62095,62097,62099],{"class":279,"line":588},[277,62092,1212],{"class":356},[277,62094,10295],{"class":283},[277,62096,298],{"class":311},[277,62098,1268],{"class":356},[277,62100,10302],{"class":283},[277,62102,62103],{"class":279,"line":606},[277,62104,1126],{"class":283},[277,62106,62107],{"class":279,"line":614},[277,62108,1131],{"class":283},[277,62110,62111],{"class":279,"line":625},[277,62112,328],{"emptyLinePlaceholder":327},[277,62114,62115,62117],{"class":279,"line":637},[277,62116,10319],{"class":291},[277,62118,473],{"class":283},[277,62120,62121,62123,62125,62127,62129,62131,62133,62135,62137],{"class":279,"line":646},[277,62122,1336],{"class":311},[277,62124,511],{"class":283},[277,62126,514],{"class":311},[277,62128,448],{"class":283},[277,62130,1341],{"class":356},[277,62132,10281],{"class":283},[277,62134,652],{"class":311},[277,62136,10286],{"class":291},[277,62138,10342],{"class":283},[277,62140,62141],{"class":279,"line":668},[277,62142,8193],{"class":311},[277,62144,62145],{"class":279,"line":673},[277,62146,1126],{"class":283},[277,62148,62149],{"class":279,"line":679},[277,62150,328],{"emptyLinePlaceholder":327},[277,62152,62153,62155,62157,62159,62161],{"class":279,"line":684},[277,62154,2233],{"class":311},[277,62156,9902],{"class":356},[277,62158,340],{"class":311},[277,62160,1268],{"class":356},[277,62162,10302],{"class":283},[277,62164,62165],{"class":279,"line":700},[277,62166,328],{"emptyLinePlaceholder":327},[277,62168,62169,62171,62173,62175,62177],{"class":279,"line":717},[277,62170,1336],{"class":311},[277,62172,9918],{"class":283},[277,62174,9921],{"class":311},[277,62176,1268],{"class":356},[277,62178,10383],{"class":283},[277,62180,62181,62183,62185,62187],{"class":279,"line":722},[277,62182,1212],{"class":356},[277,62184,10390],{"class":283},[277,62186,298],{"class":311},[277,62188,9934],{"class":283},[277,62190,62191],{"class":279,"line":729},[277,62192,1126],{"class":283},[277,62194,62195],{"class":279,"line":738},[277,62196,542],{"class":283},[277,62198,62199],{"class":279,"line":747},[277,62200,394],{"class":283},[277,62202,62203,62205,62207],{"class":279,"line":754},[277,62204,785],{"class":283},[277,62206,288],{"class":287},[277,62208,305],{"class":283},[277,62210,62211],{"class":279,"line":772},[277,62212,328],{"emptyLinePlaceholder":327},[277,62214,62215,62217,62219],{"class":279,"line":777},[277,62216,284],{"class":283},[277,62218,802],{"class":287},[277,62220,305],{"class":283},[277,62222,62223,62225,62227,62229,62231,62233],{"class":279,"line":782},[277,62224,810],{"class":283},[277,62226,4121],{"class":287},[277,62228,816],{"class":291},[277,62230,298],{"class":283},[277,62232,9975],{"class":301},[277,62234,305],{"class":283},[277,62236,62237,62239,62241,62243,62245,62247],{"class":279,"line":792},[277,62238,829],{"class":283},[277,62240,4267],{"class":287},[277,62242,4278],{"class":291},[277,62244,298],{"class":283},[277,62246,9990],{"class":301},[277,62248,305],{"class":283},[277,62250,62251],{"class":279,"line":797},[277,62252,9997],{"class":283},[277,62254,62255,62257,62259],{"class":279,"line":807},[277,62256,922],{"class":283},[277,62258,4267],{"class":287},[277,62260,305],{"class":283},[277,62262,62263],{"class":279,"line":826},[277,62264,328],{"emptyLinePlaceholder":327},[277,62266,62267,62269],{"class":279,"line":849},[277,62268,829],{"class":283},[277,62270,10016],{"class":287},[277,62272,62273,62275,62277],{"class":279,"line":854},[277,62274,10021],{"class":291},[277,62276,298],{"class":283},[277,62278,10026],{"class":301},[277,62280,62281,62283,62285],{"class":279,"line":876},[277,62282,10031],{"class":291},[277,62284,298],{"class":283},[277,62286,10036],{"class":301},[277,62288,62289],{"class":279,"line":891},[277,62290,10041],{"class":283},[277,62292,62293,62295],{"class":279,"line":905},[277,62294,879],{"class":283},[277,62296,6506],{"class":287},[277,62298,62299,62301,62303],{"class":279,"line":919},[277,62300,6511],{"class":291},[277,62302,298],{"class":283},[277,62304,10056],{"class":301},[277,62306,62307,62309,62311],{"class":279,"line":929},[277,62308,6521],{"class":291},[277,62310,298],{"class":283},[277,62312,10065],{"class":301},[277,62314,62315],{"class":279,"line":934},[277,62316,4543],{"class":283},[277,62318,62319],{"class":279,"line":951},[277,62320,10074],{"class":283},[277,62322,62323,62325,62327],{"class":279,"line":961},[277,62324,4175],{"class":283},[277,62326,41],{"class":287},[277,62328,305],{"class":283},[277,62330,62331,62333,62335],{"class":279,"line":1473},[277,62332,922],{"class":283},[277,62334,10089],{"class":287},[277,62336,305],{"class":283},[277,62338,62339,62341,62343],{"class":279,"line":1478},[277,62340,954],{"class":283},[277,62342,4121],{"class":287},[277,62344,305],{"class":283},[277,62346,62347,62349,62351],{"class":279,"line":1497},[277,62348,785],{"class":283},[277,62350,802],{"class":287},[277,62352,305],{"class":283},[38,62354,62355,62359],{},[41,62356,62357,10565],{},[16,62358,9143],{},[41,62360,62361,10570],{},[16,62362,9148],{},[11,62364,1596],{"id":1595},[38,62366,62367,62373,62379,62385,62389],{},[41,62368,62369,10579,62371,104],{},[16,62370,9088],{},[72,62372,10582],{},[41,62374,62375,10587,62377,10591],{},[16,62376,9091],{},[72,62378,10590],{},[41,62380,10594,62381,104],{},[72,62382,62383,10599],{},[16,62384,1735],{},[41,62386,10602,62387,10606],{},[72,62388,10605],{},[41,62390,10609,62391],{},[72,62392,10612,62393,10615],{},[16,62394,9091],{},[1606,62396,10618],{},{"title":273,"searchDepth":308,"depth":308,"links":62398},[62399,62400,62401,62402,62403,62404,62405],{"id":9291,"depth":308,"text":10622},{"id":9328,"depth":308,"text":10624},{"id":9453,"depth":308,"text":10626},{"id":9475,"depth":308,"text":9476},{"id":9513,"depth":308,"text":9514},{"id":9526,"depth":308,"text":9527},{"id":9542,"depth":308,"text":9543},{"script":62407},[62408],{"type":1632,"key":1633,"data-nuxt-schema-org":327,"nodes":62409},[62410],{"headline":9079,"author":62411,"datePublished":10641,"@type":1640},{"name":1637,"@type":1638},{"updatedAt":10641,"coverCaption":10643,"author":1637,"keywords":62413},[1645,9088,9091,9401,10645],[62415],{"headline":9079,"author":62416,"datePublished":10641,"@type":1640},{"name":1637,"@type":1638},{"title":9079,"description":10634},[62419,62420,62421,62422,62423],{"tag":1660,"color":1661},{"tag":1668,"color":1669},{"tag":3164,"color":3165},{"tag":3167,"color":3168},{"tag":9074,"color":9075},{"id":10660,"title":10661,"body":62425,"cover":11899,"coverAlt":11900,"date":11901,"description":11902,"draft":1627,"extension":1628,"head":63497,"locale":1641,"meta":63503,"navigation":327,"path":11914,"schemaOrg":63505,"seo":63508,"series":1653,"seriesDescription":1654,"seriesOrder":324,"seriesTitle":1655,"slug":1656,"stem":11919,"tags":63509,"__hash__":11925},{"type":8,"value":62426,"toc":63479},[62427,62433,62437,62439,62441,62445,62447,62457,62459,62469,62471,62491,62499,62501,62503,62505,62515,62519,62527,62529,62531,62537,62559,62561,62563,62603,62613,62615,62619,62623,62625,62637,62641,62645,62651,62657,62661,62775,62781,62785,62787,62789,62805,62813,62943,62949,62951,62955,62961,62965,62967,62969,62973,62975,62979,62981,62983,63217,63449,63459,63461,63477],[11,62428,10667,62429,225,62431,19],{"id":10666},[16,62430,10670],{},[16,62432,203],{},[21,62434,10675,62435,10678],{},[16,62436,203],{},[21,62438,10681],{},[30,62440,61],{"id":60},[21,62442,10686,62443,104],{},[72,62444,10689],{},[21,62446,10692],{},[38,62448,62449,62453],{},[41,62450,62451,10699],{},[16,62452,10670],{},[41,62454,62455,10704],{},[16,62456,203],{},[21,62458,10707],{},[38,62460,62461,62465],{},[41,62462,62463],{},[16,62464,10714],{},[41,62466,62467],{},[16,62468,210],{},[21,62470,10721],{},[38,62472,62473,62479,62485],{},[41,62474,10726,62475,10730,62477,104],{},[72,62476,10729],{},[16,62478,10733],{},[41,62480,7642,62481,10739,62483,104],{},[72,62482,10738],{},[16,62484,203],{},[41,62486,10744,62487,10747,62489,104],{},[16,62488,10670],{},[16,62490,10733],{},[21,62492,10752,62493,10761],{},[72,62494,10755,62495,229,62497,10760],{},[16,62496,10670],{},[16,62498,203],{},[30,62500,129],{"id":128},[21,62502,10766],{},[21,62504,3305],{},[38,62506,62507,62509,62511,62513],{},[41,62508,10773],{},[41,62510,10776],{},[41,62512,10779],{},[41,62514,10782],{},[21,62516,62517,10787],{},[16,62518,10670],{},[38,62520,62521,62523,62525],{},[41,62522,10792],{},[41,62524,10795],{},[41,62526,10798],{},[30,62528,156],{"id":155},[21,62530,10803],{},[21,62532,7664,62533,1697,62535,7669],{},[16,62534,10670],{},[16,62536,203],{},[38,62538,62539,62543,62551,62555],{},[41,62540,10814,62541,104],{},[72,62542,10817],{},[41,62544,10820,62545,10823,62547,10826,62549,104],{},[16,62546,1735],{},[16,62548,1732],{},[72,62550,10829],{},[41,62552,10832,62553,10835],{},[16,62554,203],{},[41,62556,10838,62557,104],{},[72,62558,10841],{},[21,62560,10844],{},[30,62562,7715],{"id":7714},[5392,62564,62565,62577],{},[5395,62566,62567],{},[5398,62568,62569,62571,62573,62575],{},[5401,62570,5403],{},[5401,62572,10857],{},[5401,62574,10860],{},[5401,62576,10863],{},[5414,62578,62579,62591],{},[5398,62580,62581,62585,62587,62589],{},[5419,62582,62583],{},[16,62584,10670],{},[5419,62586,10874],{},[5419,62588,10877],{},[5419,62590,10880],{},[5398,62592,62593,62597,62599,62601],{},[5419,62594,62595],{},[16,62596,203],{},[5419,62598,10889],{},[5419,62600,10892],{},[5419,62602,10895],{},[21,62604,10898,62605,10901,62607,10904,62609,10907,62611,104],{},[16,62606,203],{},[16,62608,10670],{},[16,62610,10670],{},[72,62612,10910],{},[30,62614,190],{"id":189},[192,62616,10916,62617],{"id":10915},[16,62618,10670],{},[21,62620,10921,62621,10924],{},[16,62622,10670],{},[21,62624,10927],{},[38,62626,62627,62631,62635],{},[41,62628,62629],{},[16,62630,10934],{},[41,62632,62633],{},[16,62634,10939],{},[41,62636,10942],{},[21,62638,10945,62639,104],{},[16,62640,203],{},[192,62642,10951,62643,10954],{"id":10950},[16,62644,203],{},[21,62646,10957,62647,10961,62649,10964],{},[16,62648,10960],{},[16,62650,203],{},[21,62652,62653,10969,62655,10973],{},[16,62654,203],{},[72,62656,10972],{},[21,62658,10976,62659,353],{},[16,62660,203],{},[267,62662,62663],{"className":269,"code":10981,"filename":9339,"language":272,"meta":273,"style":273},[16,62664,62665,62681,62691,62695,62707,62711,62721,62739,62753,62757,62761,62767],{"__ignoreMap":273},[277,62666,62667,62669,62671,62673,62675,62677,62679],{"class":279,"line":280},[277,62668,284],{"class":283},[277,62670,288],{"class":287},[277,62672,292],{"class":291},[277,62674,295],{"class":291},[277,62676,298],{"class":283},[277,62678,302],{"class":301},[277,62680,305],{"class":283},[277,62682,62683,62685,62687,62689],{"class":279,"line":308},[277,62684,312],{"class":311},[277,62686,11006],{"class":283},[277,62688,318],{"class":311},[277,62690,321],{"class":301},[277,62692,62693],{"class":279,"line":324},[277,62694,328],{"emptyLinePlaceholder":327},[277,62696,62697,62699,62701,62703,62705],{"class":279,"line":331},[277,62698,405],{"class":311},[277,62700,11021],{"class":356},[277,62702,340],{"class":311},[277,62704,413],{"class":291},[277,62706,11028],{"class":283},[277,62708,62709],{"class":279,"line":346},[277,62710,328],{"emptyLinePlaceholder":327},[277,62712,62713,62715,62717,62719],{"class":279,"line":360},[277,62714,464],{"class":311},[277,62716,467],{"class":311},[277,62718,11041],{"class":291},[277,62720,473],{"class":283},[277,62722,62723,62725,62727,62729,62731,62733,62735,62737],{"class":279,"line":371},[277,62724,479],{"class":311},[277,62726,11050],{"class":356},[277,62728,340],{"class":311},[277,62730,487],{"class":311},[277,62732,490],{"class":291},[277,62734,448],{"class":283},[277,62736,11061],{"class":301},[277,62738,433],{"class":283},[277,62740,62741,62743,62745,62747,62749,62751],{"class":279,"line":381},[277,62742,11068],{"class":283},[277,62744,298],{"class":311},[277,62746,487],{"class":311},[277,62748,11075],{"class":283},[277,62750,566],{"class":291},[277,62752,622],{"class":283},[277,62754,62755],{"class":279,"line":391},[277,62756,394],{"class":283},[277,62758,62759],{"class":279,"line":397},[277,62760,328],{"emptyLinePlaceholder":327},[277,62762,62763,62765],{"class":279,"line":402},[277,62764,11092],{"class":291},[277,62766,622],{"class":283},[277,62768,62769,62771,62773],{"class":279,"line":436},[277,62770,785],{"class":283},[277,62772,288],{"class":287},[277,62774,305],{"class":283},[3111,62776,62777],{},[21,62778,11107,62779,104],{},[16,62780,10733],{},[192,62782,11113,62783,11116],{"id":11112},[16,62784,203],{},[21,62786,11119],{},[21,62788,11122],{},[38,62790,62791,62793,62797,62801],{},[41,62792,11127],{},[41,62794,62795],{},[16,62796,5508],{},[41,62798,62799],{},[16,62800,7628],{},[41,62802,62803],{},[16,62804,7803],{},[21,62806,11142,62807,11145,62809,118,62811,104],{},[16,62808,203],{},[16,62810,7514],{},[16,62812,8295],{},[267,62814,62815],{"className":269,"code":11152,"filename":9339,"language":272,"meta":273,"style":273},[16,62816,62817,62833,62843,62847,62857,62861,62871,62887,62899,62907,62911,62915,62925,62931,62935],{"__ignoreMap":273},[277,62818,62819,62821,62823,62825,62827,62829,62831],{"class":279,"line":280},[277,62820,284],{"class":283},[277,62822,288],{"class":287},[277,62824,292],{"class":291},[277,62826,295],{"class":291},[277,62828,298],{"class":283},[277,62830,302],{"class":301},[277,62832,305],{"class":283},[277,62834,62835,62837,62839,62841],{"class":279,"line":308},[277,62836,312],{"class":311},[277,62838,11177],{"class":283},[277,62840,318],{"class":311},[277,62842,321],{"class":301},[277,62844,62845],{"class":279,"line":324},[277,62846,328],{"emptyLinePlaceholder":327},[277,62848,62849,62851,62853,62855],{"class":279,"line":331},[277,62850,7990],{"class":311},[277,62852,11192],{"class":283},[277,62854,353],{"class":311},[277,62856,357],{"class":356},[277,62858,62859],{"class":279,"line":346},[277,62860,328],{"emptyLinePlaceholder":327},[277,62862,62863,62865,62867,62869],{"class":279,"line":360},[277,62864,687],{"class":291},[277,62866,2203],{"class":283},[277,62868,601],{"class":311},[277,62870,343],{"class":283},[277,62872,62873,62875,62877,62879,62881,62883,62885],{"class":279,"line":371},[277,62874,11215],{"class":283},[277,62876,298],{"class":311},[277,62878,11220],{"class":283},[277,62880,5508],{"class":291},[277,62882,2203],{"class":283},[277,62884,601],{"class":311},[277,62886,343],{"class":283},[277,62888,62889,62891,62893,62895,62897],{"class":279,"line":381},[277,62890,2881],{"class":283},[277,62892,2352],{"class":291},[277,62894,448],{"class":283},[277,62896,11239],{"class":301},[277,62898,433],{"class":283},[277,62900,62901,62903,62905],{"class":279,"line":391},[277,62902,6120],{"class":283},[277,62904,11248],{"class":356},[277,62906,433],{"class":283},[277,62908,62909],{"class":279,"line":397},[277,62910,676],{"class":283},[277,62912,62913],{"class":279,"line":402},[277,62914,328],{"emptyLinePlaceholder":327},[277,62916,62917,62919,62921,62923],{"class":279,"line":436},[277,62918,8295],{"class":291},[277,62920,2203],{"class":283},[277,62922,601],{"class":311},[277,62924,343],{"class":283},[277,62926,62927,62929],{"class":279,"line":456},[277,62928,6165],{"class":291},[277,62930,11275],{"class":283},[277,62932,62933],{"class":279,"line":461},[277,62934,676],{"class":283},[277,62936,62937,62939,62941],{"class":279,"line":476},[277,62938,785],{"class":283},[277,62940,288],{"class":287},[277,62942,305],{"class":283},[3111,62944,62945],{},[21,62946,11292,62947,104],{},[72,62948,11295],{},[192,62950,11299],{"id":11298},[21,62952,11302,62953,104],{},[72,62954,11305],{},[21,62956,11308,62957,11311,62959,104],{},[16,62958,203],{},[72,62960,11314],{},[21,62962,11317,62963,104],{},[16,62964,11320],{},[30,62966,1946],{"id":1945},[192,62968,11326],{"id":11325},[21,62970,11329,62971,104],{},[16,62972,10934],{},[192,62974,11335],{"id":11334},[21,62976,11338,62977,104],{},[16,62978,203],{},[192,62980,11344],{"id":11343},[21,62982,11347],{},[267,62984,62985],{"className":269,"code":11350,"filename":271,"language":272,"meta":273,"style":273},[16,62986,62987,63003,63013,63017,63041,63057,63061,63071,63079,63083,63087,63097,63105,63113,63117,63125,63129,63137,63151,63163,63167,63173,63181,63189,63197,63201,63209],{"__ignoreMap":273},[277,62988,62989,62991,62993,62995,62997,62999,63001],{"class":279,"line":280},[277,62990,284],{"class":283},[277,62992,288],{"class":287},[277,62994,292],{"class":291},[277,62996,295],{"class":291},[277,62998,298],{"class":283},[277,63000,302],{"class":301},[277,63002,305],{"class":283},[277,63004,63005,63007,63009,63011],{"class":279,"line":308},[277,63006,312],{"class":311},[277,63008,11375],{"class":283},[277,63010,318],{"class":311},[277,63012,321],{"class":301},[277,63014,63015],{"class":279,"line":324},[277,63016,328],{"emptyLinePlaceholder":327},[277,63018,63019,63021,63023,63025,63027,63029,63031,63033,63035,63037,63039],{"class":279,"line":331},[277,63020,405],{"class":311},[277,63022,11390],{"class":356},[277,63024,340],{"class":311},[277,63026,413],{"class":291},[277,63028,284],{"class":283},[277,63030,11399],{"class":291},[277,63032,421],{"class":311},[277,63034,424],{"class":356},[277,63036,427],{"class":283},[277,63038,430],{"class":356},[277,63040,433],{"class":283},[277,63042,63043,63045,63047,63049,63051,63053,63055],{"class":279,"line":346},[277,63044,405],{"class":311},[277,63046,5726],{"class":356},[277,63048,340],{"class":311},[277,63050,413],{"class":291},[277,63052,448],{"class":283},[277,63054,11424],{"class":301},[277,63056,433],{"class":283},[277,63058,63059],{"class":279,"line":360},[277,63060,328],{"emptyLinePlaceholder":327},[277,63062,63063,63065,63067,63069],{"class":279,"line":371},[277,63064,11435],{"class":291},[277,63066,2203],{"class":283},[277,63068,601],{"class":311},[277,63070,343],{"class":283},[277,63072,63073,63075,63077],{"class":279,"line":381},[277,63074,5943],{"class":283},[277,63076,298],{"class":311},[277,63078,11450],{"class":301},[277,63080,63081],{"class":279,"line":391},[277,63082,676],{"class":283},[277,63084,63085],{"class":279,"line":397},[277,63086,328],{"emptyLinePlaceholder":327},[277,63088,63089,63091,63093,63095],{"class":279,"line":402},[277,63090,687],{"class":291},[277,63092,2203],{"class":283},[277,63094,601],{"class":311},[277,63096,343],{"class":283},[277,63098,63099,63101,63103],{"class":279,"line":436},[277,63100,11473],{"class":283},[277,63102,11476],{"class":291},[277,63104,622],{"class":283},[277,63106,63107,63109,63111],{"class":279,"line":456},[277,63108,5943],{"class":283},[277,63110,298],{"class":311},[277,63112,11487],{"class":301},[277,63114,63115],{"class":279,"line":461},[277,63116,676],{"class":283},[277,63118,63119,63121,63123],{"class":279,"line":476},[277,63120,785],{"class":283},[277,63122,288],{"class":287},[277,63124,305],{"class":283},[277,63126,63127],{"class":279,"line":500},[277,63128,328],{"emptyLinePlaceholder":327},[277,63130,63131,63133,63135],{"class":279,"line":505},[277,63132,284],{"class":283},[277,63134,802],{"class":287},[277,63136,305],{"class":283},[277,63138,63139,63141,63143,63145,63147,63149],{"class":279,"line":520},[277,63140,810],{"class":283},[277,63142,4121],{"class":287},[277,63144,816],{"class":291},[277,63146,298],{"class":283},[277,63148,11524],{"class":301},[277,63150,305],{"class":283},[277,63152,63153,63155,63157,63159,63161],{"class":279,"line":539},[277,63154,829],{"class":283},[277,63156,21],{"class":287},[277,63158,6367],{"class":283},[277,63160,21],{"class":287},[277,63162,305],{"class":283},[277,63164,63165],{"class":279,"line":545},[277,63166,328],{"emptyLinePlaceholder":327},[277,63168,63169,63171],{"class":279,"line":550},[277,63170,829],{"class":283},[277,63172,11549],{"class":287},[277,63174,63175,63177,63179],{"class":279,"line":578},[277,63176,10021],{"class":291},[277,63178,298],{"class":283},[277,63180,11558],{"class":301},[277,63182,63183,63185,63187],{"class":279,"line":583},[277,63184,11563],{"class":291},[277,63186,298],{"class":283},[277,63188,11568],{"class":301},[277,63190,63191,63193,63195],{"class":279,"line":588},[277,63192,11573],{"class":291},[277,63194,298],{"class":283},[277,63196,11578],{"class":301},[277,63198,63199],{"class":279,"line":606},[277,63200,10041],{"class":283},[277,63202,63203,63205,63207],{"class":279,"line":614},[277,63204,954],{"class":283},[277,63206,4121],{"class":287},[277,63208,305],{"class":283},[277,63210,63211,63213,63215],{"class":279,"line":625},[277,63212,785],{"class":283},[277,63214,802],{"class":287},[277,63216,305],{"class":283},[267,63218,63219],{"className":269,"code":11601,"filename":971,"language":272,"meta":273,"style":273},[16,63220,63221,63229,63237,63243,63249,63255,63259,63263,63267,63273,63283,63287,63291,63297,63307,63311,63327,63337,63341,63345,63349,63357,63361,63369,63383,63395,63399,63405,63413,63421,63429,63433,63441],{"__ignoreMap":273},[277,63222,63223,63225,63227],{"class":279,"line":280},[277,63224,284],{"class":283},[277,63226,288],{"class":287},[277,63228,305],{"class":283},[277,63230,63231,63233,63235],{"class":279,"line":308},[277,63232,1057],{"class":311},[277,63234,1060],{"class":311},[277,63236,343],{"class":283},[277,63238,63239,63241],{"class":279,"line":324},[277,63240,1086],{"class":291},[277,63242,473],{"class":283},[277,63244,63245,63247],{"class":279,"line":331},[277,63246,1093],{"class":311},[277,63248,343],{"class":283},[277,63250,63251,63253],{"class":279,"line":346},[277,63252,6620],{"class":283},[277,63254,11638],{"class":301},[277,63256,63257],{"class":279,"line":360},[277,63258,1126],{"class":283},[277,63260,63261],{"class":279,"line":371},[277,63262,1131],{"class":283},[277,63264,63265],{"class":279,"line":381},[277,63266,328],{"emptyLinePlaceholder":327},[277,63268,63269,63271],{"class":279,"line":391},[277,63270,11655],{"class":291},[277,63272,473],{"class":283},[277,63274,63275,63277,63279,63281],{"class":279,"line":397},[277,63276,4724],{"class":356},[277,63278,6821],{"class":283},[277,63280,298],{"class":311},[277,63282,11668],{"class":301},[277,63284,63285],{"class":279,"line":402},[277,63286,1131],{"class":283},[277,63288,63289],{"class":279,"line":436},[277,63290,328],{"emptyLinePlaceholder":327},[277,63292,63293,63295],{"class":279,"line":456},[277,63294,6784],{"class":291},[277,63296,473],{"class":283},[277,63298,63299,63301,63303,63305],{"class":279,"line":461},[277,63300,4724],{"class":356},[277,63302,6821],{"class":283},[277,63304,298],{"class":311},[277,63306,11487],{"class":301},[277,63308,63309],{"class":279,"line":476},[277,63310,328],{"emptyLinePlaceholder":327},[277,63312,63313,63315,63317,63319,63321,63323,63325],{"class":279,"line":500},[277,63314,1336],{"class":311},[277,63316,511],{"class":283},[277,63318,1341],{"class":356},[277,63320,11707],{"class":283},[277,63322,652],{"class":311},[277,63324,11712],{"class":291},[277,63326,2476],{"class":283},[277,63328,63329,63331,63333,63335],{"class":279,"line":505},[277,63330,1212],{"class":356},[277,63332,11721],{"class":283},[277,63334,11476],{"class":291},[277,63336,622],{"class":283},[277,63338,63339],{"class":279,"line":520},[277,63340,1126],{"class":283},[277,63342,63343],{"class":279,"line":539},[277,63344,542],{"class":283},[277,63346,63347],{"class":279,"line":545},[277,63348,394],{"class":283},[277,63350,63351,63353,63355],{"class":279,"line":550},[277,63352,785],{"class":283},[277,63354,288],{"class":287},[277,63356,305],{"class":283},[277,63358,63359],{"class":279,"line":578},[277,63360,328],{"emptyLinePlaceholder":327},[277,63362,63363,63365,63367],{"class":279,"line":583},[277,63364,284],{"class":283},[277,63366,802],{"class":287},[277,63368,305],{"class":283},[277,63370,63371,63373,63375,63377,63379,63381],{"class":279,"line":588},[277,63372,810],{"class":283},[277,63374,4121],{"class":287},[277,63376,816],{"class":291},[277,63378,298],{"class":283},[277,63380,11524],{"class":301},[277,63382,305],{"class":283},[277,63384,63385,63387,63389,63391,63393],{"class":279,"line":606},[277,63386,829],{"class":283},[277,63388,21],{"class":287},[277,63390,6367],{"class":283},[277,63392,21],{"class":287},[277,63394,305],{"class":283},[277,63396,63397],{"class":279,"line":614},[277,63398,328],{"emptyLinePlaceholder":327},[277,63400,63401,63403],{"class":279,"line":625},[277,63402,829],{"class":283},[277,63404,11549],{"class":287},[277,63406,63407,63409,63411],{"class":279,"line":637},[277,63408,10021],{"class":291},[277,63410,298],{"class":283},[277,63412,11558],{"class":301},[277,63414,63415,63417,63419],{"class":279,"line":646},[277,63416,11563],{"class":291},[277,63418,298],{"class":283},[277,63420,11568],{"class":301},[277,63422,63423,63425,63427],{"class":279,"line":668},[277,63424,11573],{"class":291},[277,63426,298],{"class":283},[277,63428,11578],{"class":301},[277,63430,63431],{"class":279,"line":673},[277,63432,10041],{"class":283},[277,63434,63435,63437,63439],{"class":279,"line":679},[277,63436,954],{"class":283},[277,63438,4121],{"class":287},[277,63440,305],{"class":283},[277,63442,63443,63445,63447],{"class":279,"line":684},[277,63444,785],{"class":283},[277,63446,802],{"class":287},[277,63448,305],{"class":283},[3111,63450,63451],{},[21,63452,11842,63453,11845,63455,11848,63457,11851],{},[16,63454,10714],{},[16,63456,10934],{},[16,63458,210],{},[30,63460,1596],{"id":1595},[38,63462,63463,63467,63473],{},[41,63464,63465,11860],{},[16,63466,10670],{},[41,63468,63469,11865,63471,11869],{},[16,63470,203],{},[72,63472,11868],{},[41,63474,11872,63475,104],{},[72,63476,11875],{},[1606,63478,10618],{},{"title":273,"searchDepth":308,"depth":308,"links":63480},[63481,63482,63483,63484,63485,63491,63496],{"id":60,"depth":308,"text":61},{"id":128,"depth":308,"text":129},{"id":155,"depth":308,"text":156},{"id":7714,"depth":308,"text":7715},{"id":189,"depth":308,"text":190,"children":63486},[63487,63488,63489,63490],{"id":10915,"depth":324,"text":11887},{"id":10950,"depth":324,"text":11889},{"id":11112,"depth":324,"text":11891},{"id":11298,"depth":324,"text":11299},{"id":1945,"depth":308,"text":1946,"children":63492},[63493,63494,63495],{"id":11325,"depth":324,"text":11326},{"id":11334,"depth":324,"text":11335},{"id":11343,"depth":324,"text":11344},{"id":1595,"depth":308,"text":1596},{"script":63498},[63499],{"type":1632,"key":1633,"data-nuxt-schema-org":327,"nodes":63500},[63501],{"headline":10661,"author":63502,"datePublished":11909,"@type":1640},{"name":1637,"@type":1638},{"updatedAt":11909,"coverCaption":11911,"author":1637,"keywords":63504},[1645,10670,203,687,11913],[63506],{"headline":10661,"author":63507,"datePublished":11909,"@type":1640},{"name":1637,"@type":1638},{"title":10661,"description":11902},[63510,63511,63512,63513],{"tag":1660,"color":1661},{"tag":1668,"color":1669},{"tag":3164,"color":3165},{"tag":9074,"color":9075},{"id":11927,"title":11928,"body":63515,"cover":13059,"coverAlt":13060,"date":13061,"description":13062,"draft":1627,"extension":1628,"head":64495,"locale":1641,"meta":64501,"navigation":327,"path":13073,"schemaOrg":64503,"seo":64506,"series":1653,"seriesDescription":1654,"seriesOrder":308,"seriesTitle":1655,"slug":1656,"stem":13078,"tags":64507,"__hash__":13084},{"type":8,"value":63516,"toc":64481},[63517,63525,63529,63535,63541,63543,63547,63563,63575,63577,63597,63601,63607,63609,63623,63627,63631,63689,63693,63701,63703,63711,63817,63821,63827,63831,63851,63857,63995,64003,64055,64057,64063,64069,64071,64081,64085,64093,64095,64099,64101,64105,64285,64455,64457,64479],[11,63518,11934,63519,225,63521,225,63523,19],{"id":11933},[16,63520,11937],{},[16,63522,11940],{},[16,63524,10733],{},[21,63526,11945,63527],{},[72,63528,11948],{},[21,63530,11951,63531,11954,63533,104],{},[72,63532,971],{},[72,63534,271],{},[21,63536,11959,63537,11963,63539,104],{},[72,63538,11962],{},[72,63540,11966],{},[30,63542,11970],{"id":11969},[21,63544,11973,63545,11976],{},[72,63546,971],{},[10089,63548,63549,63553,63557],{},[41,63550,63551],{},[16,63552,11937],{},[41,63554,63555],{},[16,63556,11940],{},[41,63558,11989,63559,5245,63561,19],{},[16,63560,10670],{},[16,63562,203],{},[21,63564,11996,63565,11999,63567,12002,63569,12006,63571,1697,63573,104],{},[72,63566,271],{},[16,63568,3235],{},[72,63570,12005],{},[16,63572,11937],{},[16,63574,11940],{},[21,63576,12013],{},[38,63578,63579,63585,63591],{},[41,63580,63581,12022],{},[72,63582,63583],{},[16,63584,11937],{},[41,63586,63587,12029],{},[72,63588,63589],{},[16,63590,11940],{},[41,63592,63593,12036],{},[72,63594,63595],{},[16,63596,10733],{},[30,63598,63599,12042],{"id":12039},[16,63600,11937],{},[21,63602,63603,9305,63605,104],{},[16,63604,11937],{},[72,63606,12049],{},[21,63608,12052],{},[38,63610,63611,63615,63619],{},[41,63612,63613],{},[16,63614,12059],{},[41,63616,63617],{},[16,63618,1732],{},[41,63620,63621],{},[16,63622,12068],{},[21,63624,12071,63625,12075],{},[72,63626,12074],{},[21,63628,12078,63629,104],{},[72,63630,12081],{},[267,63632,63634],{"className":269,"code":12084,"filename":9339,"highlights":63633,"language":272,"meta":273,"style":273},[324,331,346],[16,63635,63636,63644,63652,63659,63672,63677,63681],{"__ignoreMap":273},[277,63637,63638,63640,63642],{"class":279,"line":280},[277,63639,284],{"class":283},[277,63641,288],{"class":287},[277,63643,305],{"class":283},[277,63645,63646,63648,63650],{"class":279,"line":308},[277,63647,1057],{"class":311},[277,63649,1060],{"class":311},[277,63651,343],{"class":283},[277,63653,63655,63657],{"class":63654,"line":324},[279,9398],[277,63656,12109],{"class":291},[277,63658,473],{"class":283},[277,63660,63662,63664,63666,63668,63670],{"class":63661,"line":331},[279,9398],[277,63663,2881],{"class":283},[277,63665,2352],{"class":291},[277,63667,448],{"class":283},[277,63669,12123],{"class":301},[277,63671,433],{"class":283},[277,63673,63675],{"class":63674,"line":346},[279,9398],[277,63676,542],{"class":283},[277,63678,63679],{"class":279,"line":360},[277,63680,394],{"class":283},[277,63682,63683,63685,63687],{"class":279,"line":371},[277,63684,785],{"class":283},[277,63686,288],{"class":287},[277,63688,305],{"class":283},[30,63690,63691,12148],{"id":12145},[16,63692,11940],{},[21,63694,12151,63695,12154,63697,12158,63699,104],{},[16,63696,11940],{},[72,63698,12157],{},[72,63700,12161],{},[21,63702,12164],{},[38,63704,63705,63707,63709],{},[41,63706,12169],{},[41,63708,12172],{},[41,63710,12175],{},[267,63712,63714],{"className":269,"code":12178,"filename":9339,"highlights":63713,"language":272,"meta":273,"style":273},[381,391,397],[16,63715,63716,63724,63732,63738,63744,63748,63752,63756,63765,63800,63805,63809],{"__ignoreMap":273},[277,63717,63718,63720,63722],{"class":279,"line":280},[277,63719,284],{"class":283},[277,63721,288],{"class":287},[277,63723,305],{"class":283},[277,63725,63726,63728,63730],{"class":279,"line":308},[277,63727,1057],{"class":311},[277,63729,1060],{"class":311},[277,63731,343],{"class":283},[277,63733,63734,63736],{"class":279,"line":324},[277,63735,1086],{"class":291},[277,63737,473],{"class":283},[277,63739,63740,63742],{"class":279,"line":331},[277,63741,1093],{"class":311},[277,63743,343],{"class":283},[277,63745,63746],{"class":279,"line":346},[277,63747,12214],{"class":283},[277,63749,63750],{"class":279,"line":360},[277,63751,1126],{"class":283},[277,63753,63754],{"class":279,"line":371},[277,63755,1131],{"class":283},[277,63757,63759,63761,63763],{"class":63758,"line":381},[279,9398],[277,63760,1248],{"class":311},[277,63762,12230],{"class":291},[277,63764,473],{"class":283},[277,63766,63768,63770,63772,63774,63776,63778,63780,63782,63784,63786,63788,63790,63792,63794,63796,63798],{"class":63767,"line":391},[279,9398],[277,63769,4724],{"class":356},[277,63771,12240],{"class":283},[277,63773,298],{"class":311},[277,63775,487],{"class":311},[277,63777,490],{"class":291},[277,63779,448],{"class":283},[277,63781,11061],{"class":301},[277,63783,1895],{"class":283},[277,63785,12255],{"class":291},[277,63787,2334],{"class":283},[277,63789,12260],{"class":349},[277,63791,2340],{"class":283},[277,63793,601],{"class":311},[277,63795,12267],{"class":283},[277,63797,566],{"class":291},[277,63799,2266],{"class":283},[277,63801,63803],{"class":63802,"line":397},[279,9398],[277,63804,542],{"class":283},[277,63806,63807],{"class":279,"line":402},[277,63808,394],{"class":283},[277,63810,63811,63813,63815],{"class":279,"line":436},[277,63812,785],{"class":283},[277,63814,288],{"class":287},[277,63816,305],{"class":283},[30,63818,63819,12294],{"id":12291},[16,63820,10733],{},[21,63822,12297,63823,225,63825,12302],{},[72,63824,271],{},[16,63826,3235],{},[21,63828,12305,63829,12308],{},[16,63830,10733],{},[38,63832,63833,63837,63841,63845,63849],{},[41,63834,63835],{},[16,63836,1927],{},[41,63838,63839],{},[16,63840,12319],{},[41,63842,63843],{},[16,63844,1732],{},[41,63846,63847],{},[16,63848,1735],{},[41,63850,12330],{},[21,63852,12333,63853,9305,63855,12339],{},[16,63854,10733],{},[72,63856,12338],{},[267,63858,63860],{"className":269,"code":12342,"filename":9339,"highlights":63859,"language":272,"meta":273,"style":273},[371],[16,63861,63862,63872,63882,63886,63902,63924,63928,63941,63949,63953,63961,63975,63979,63987],{"__ignoreMap":273},[277,63863,63864,63866,63868,63870],{"class":279,"line":280},[277,63865,284],{"class":283},[277,63867,288],{"class":287},[277,63869,292],{"class":291},[277,63871,305],{"class":283},[277,63873,63874,63876,63878,63880],{"class":279,"line":308},[277,63875,312],{"class":311},[277,63877,12362],{"class":283},[277,63879,318],{"class":311},[277,63881,321],{"class":301},[277,63883,63884],{"class":279,"line":324},[277,63885,328],{"emptyLinePlaceholder":327},[277,63887,63888,63890,63892,63894,63896,63898,63900],{"class":279,"line":331},[277,63889,405],{"class":311},[277,63891,9380],{"class":356},[277,63893,340],{"class":311},[277,63895,413],{"class":291},[277,63897,448],{"class":283},[277,63899,3542],{"class":356},[277,63901,433],{"class":283},[277,63903,63904,63906,63908,63910,63912,63914,63916,63918,63920,63922],{"class":279,"line":346},[277,63905,405],{"class":311},[277,63907,12393],{"class":356},[277,63909,340],{"class":311},[277,63911,2200],{"class":291},[277,63913,2203],{"class":283},[277,63915,601],{"class":311},[277,63917,12404],{"class":283},[277,63919,12407],{"class":311},[277,63921,12410],{"class":356},[277,63923,433],{"class":283},[277,63925,63926],{"class":279,"line":360},[277,63927,328],{"emptyLinePlaceholder":327},[277,63929,63931,63933,63935,63937,63939],{"class":63930,"line":371},[279,9398],[277,63932,12422],{"class":283},[277,63934,2352],{"class":291},[277,63936,448],{"class":283},[277,63938,12429],{"class":301},[277,63940,433],{"class":283},[277,63942,63943,63945,63947],{"class":279,"line":381},[277,63944,785],{"class":283},[277,63946,288],{"class":287},[277,63948,305],{"class":283},[277,63950,63951],{"class":279,"line":391},[277,63952,328],{"emptyLinePlaceholder":327},[277,63954,63955,63957,63959],{"class":279,"line":397},[277,63956,284],{"class":283},[277,63958,802],{"class":287},[277,63960,305],{"class":283},[277,63962,63963,63965,63967,63969,63971,63973],{"class":279,"line":402},[277,63964,810],{"class":283},[277,63966,4267],{"class":287},[277,63968,4278],{"class":291},[277,63970,298],{"class":283},[277,63972,12464],{"class":301},[277,63974,305],{"class":283},[277,63976,63977],{"class":279,"line":436},[277,63978,12471],{"class":283},[277,63980,63981,63983,63985],{"class":279,"line":456},[277,63982,954],{"class":283},[277,63984,4267],{"class":287},[277,63986,305],{"class":283},[277,63988,63989,63991,63993],{"class":279,"line":461},[277,63990,785],{"class":283},[277,63992,802],{"class":287},[277,63994,305],{"class":283},[30,63996,12491,63997,12494,63999,12494,64001],{"id":12490},[16,63998,11937],{},[16,64000,11940],{},[16,64002,10733],{},[5392,64004,64005,64017],{},[5395,64006,64007],{},[5398,64008,64009,64011,64013,64015],{},[5401,64010,12507],{},[5401,64012,12510],{},[5401,64014,12513],{},[5401,64016,12516],{},[5414,64018,64019,64031,64043],{},[5398,64020,64021,64025,64027,64029],{},[5419,64022,64023],{},[16,64024,11937],{},[5419,64026,12527],{},[5419,64028,12530],{},[5419,64030,12533],{},[5398,64032,64033,64037,64039,64041],{},[5419,64034,64035],{},[16,64036,11940],{},[5419,64038,12527],{},[5419,64040,12544],{},[5419,64042,12547],{},[5398,64044,64045,64049,64051,64053],{},[5419,64046,64047],{},[16,64048,10733],{},[5419,64050,12556],{},[5419,64052,12559],{},[5419,64054,12562],{},[30,64056,12566],{"id":12565},[192,64058,12570,64059,12573,64061],{"id":12569},[16,64060,11940],{},[16,64062,10733],{},[21,64064,12578,64065,12581,64067,12584],{},[16,64066,11940],{},[16,64068,10733],{},[21,64070,12587],{},[38,64072,64073,64077],{},[41,64074,64075,12594],{},[16,64076,203],{},[41,64078,64079,12599],{},[16,64080,687],{},[192,64082,12603,64083,12606],{"id":12602},[16,64084,11937],{},[21,64086,12609,64087,12613,64089,12616,64091,12619],{},[72,64088,12612],{},[16,64090,10733],{},[16,64092,11940],{},[192,64094,12623],{"id":12622},[21,64096,12626,64097,12630],{},[72,64098,12629],{},[30,64100,12634],{"id":12633},[21,64102,12637,64103,12641],{},[72,64104,12640],{},[267,64106,64107],{"className":269,"code":12644,"filename":271,"language":272,"meta":273,"style":273},[16,64108,64109,64119,64129,64133,64145,64149,64159,64191,64195,64199,64203,64209,64217,64221,64229,64237,64257,64261,64269,64277],{"__ignoreMap":273},[277,64110,64111,64113,64115,64117],{"class":279,"line":280},[277,64112,284],{"class":283},[277,64114,288],{"class":287},[277,64116,292],{"class":291},[277,64118,305],{"class":283},[277,64120,64121,64123,64125,64127],{"class":279,"line":308},[277,64122,312],{"class":311},[277,64124,11006],{"class":283},[277,64126,318],{"class":311},[277,64128,321],{"class":301},[277,64130,64131],{"class":279,"line":324},[277,64132,328],{"emptyLinePlaceholder":327},[277,64134,64135,64137,64139,64141,64143],{"class":279,"line":331},[277,64136,405],{"class":311},[277,64138,11021],{"class":356},[277,64140,340],{"class":311},[277,64142,413],{"class":291},[277,64144,11028],{"class":283},[277,64146,64147],{"class":279,"line":346},[277,64148,328],{"emptyLinePlaceholder":327},[277,64150,64151,64153,64155,64157],{"class":279,"line":360},[277,64152,464],{"class":311},[277,64154,467],{"class":311},[277,64156,11041],{"class":291},[277,64158,473],{"class":283},[277,64160,64161,64163,64165,64167,64169,64171,64173,64175,64177,64179,64181,64183,64185,64187,64189],{"class":279,"line":371},[277,64162,11068],{"class":283},[277,64164,298],{"class":311},[277,64166,487],{"class":311},[277,64168,490],{"class":291},[277,64170,448],{"class":283},[277,64172,11061],{"class":301},[277,64174,1895],{"class":283},[277,64176,12255],{"class":291},[277,64178,2334],{"class":283},[277,64180,12260],{"class":349},[277,64182,2340],{"class":283},[277,64184,601],{"class":311},[277,64186,12267],{"class":283},[277,64188,566],{"class":291},[277,64190,2266],{"class":283},[277,64192,64193],{"class":279,"line":381},[277,64194,394],{"class":283},[277,64196,64197],{"class":279,"line":391},[277,64198,328],{"emptyLinePlaceholder":327},[277,64200,64201],{"class":279,"line":397},[277,64202,12742],{"class":12741},[277,64204,64205,64207],{"class":279,"line":402},[277,64206,11092],{"class":291},[277,64208,622],{"class":283},[277,64210,64211,64213,64215],{"class":279,"line":436},[277,64212,785],{"class":283},[277,64214,288],{"class":287},[277,64216,305],{"class":283},[277,64218,64219],{"class":279,"line":456},[277,64220,328],{"emptyLinePlaceholder":327},[277,64222,64223,64225,64227],{"class":279,"line":461},[277,64224,284],{"class":283},[277,64226,802],{"class":287},[277,64228,305],{"class":283},[277,64230,64231,64233,64235],{"class":279,"line":476},[277,64232,810],{"class":283},[277,64234,38],{"class":287},[277,64236,305],{"class":283},[277,64238,64239,64241,64243,64245,64247,64249,64251,64253,64255],{"class":279,"line":500},[277,64240,829],{"class":283},[277,64242,41],{"class":287},[277,64244,12785],{"class":291},[277,64246,298],{"class":283},[277,64248,12790],{"class":301},[277,64250,4317],{"class":291},[277,64252,298],{"class":283},[277,64254,12797],{"class":301},[277,64256,305],{"class":283},[277,64258,64259],{"class":279,"line":505},[277,64260,12804],{"class":283},[277,64262,64263,64265,64267],{"class":279,"line":520},[277,64264,922],{"class":283},[277,64266,41],{"class":287},[277,64268,305],{"class":283},[277,64270,64271,64273,64275],{"class":279,"line":539},[277,64272,954],{"class":283},[277,64274,38],{"class":287},[277,64276,305],{"class":283},[277,64278,64279,64281,64283],{"class":279,"line":545},[277,64280,785],{"class":283},[277,64282,802],{"class":287},[277,64284,305],{"class":283},[267,64286,64287],{"className":269,"code":12831,"filename":971,"language":272,"meta":273,"style":273},[16,64288,64289,64297,64305,64311,64317,64321,64325,64329,64337,64371,64375,64379,64387,64391,64399,64407,64427,64431,64439,64447],{"__ignoreMap":273},[277,64290,64291,64293,64295],{"class":279,"line":280},[277,64292,284],{"class":283},[277,64294,288],{"class":287},[277,64296,305],{"class":283},[277,64298,64299,64301,64303],{"class":279,"line":308},[277,64300,1057],{"class":311},[277,64302,1060],{"class":311},[277,64304,343],{"class":283},[277,64306,64307,64309],{"class":279,"line":324},[277,64308,1086],{"class":291},[277,64310,473],{"class":283},[277,64312,64313,64315],{"class":279,"line":331},[277,64314,1093],{"class":311},[277,64316,343],{"class":283},[277,64318,64319],{"class":279,"line":346},[277,64320,12214],{"class":283},[277,64322,64323],{"class":279,"line":360},[277,64324,1126],{"class":283},[277,64326,64327],{"class":279,"line":371},[277,64328,1131],{"class":283},[277,64330,64331,64333,64335],{"class":279,"line":381},[277,64332,1248],{"class":311},[277,64334,12230],{"class":291},[277,64336,473],{"class":283},[277,64338,64339,64341,64343,64345,64347,64349,64351,64353,64355,64357,64359,64361,64363,64365,64367,64369],{"class":279,"line":391},[277,64340,4724],{"class":356},[277,64342,12240],{"class":283},[277,64344,298],{"class":311},[277,64346,487],{"class":311},[277,64348,490],{"class":291},[277,64350,448],{"class":283},[277,64352,11061],{"class":301},[277,64354,1895],{"class":283},[277,64356,12255],{"class":291},[277,64358,2334],{"class":283},[277,64360,12260],{"class":349},[277,64362,2340],{"class":283},[277,64364,601],{"class":311},[277,64366,12267],{"class":283},[277,64368,566],{"class":291},[277,64370,2266],{"class":283},[277,64372,64373],{"class":279,"line":397},[277,64374,542],{"class":283},[277,64376,64377],{"class":279,"line":402},[277,64378,394],{"class":283},[277,64380,64381,64383,64385],{"class":279,"line":436},[277,64382,785],{"class":283},[277,64384,288],{"class":287},[277,64386,305],{"class":283},[277,64388,64389],{"class":279,"line":456},[277,64390,328],{"emptyLinePlaceholder":327},[277,64392,64393,64395,64397],{"class":279,"line":461},[277,64394,284],{"class":283},[277,64396,802],{"class":287},[277,64398,305],{"class":283},[277,64400,64401,64403,64405],{"class":279,"line":476},[277,64402,810],{"class":283},[277,64404,38],{"class":287},[277,64406,305],{"class":283},[277,64408,64409,64411,64413,64415,64417,64419,64421,64423,64425],{"class":279,"line":500},[277,64410,829],{"class":283},[277,64412,41],{"class":287},[277,64414,12785],{"class":291},[277,64416,298],{"class":283},[277,64418,12790],{"class":301},[277,64420,4317],{"class":291},[277,64422,298],{"class":283},[277,64424,12797],{"class":301},[277,64426,305],{"class":283},[277,64428,64429],{"class":279,"line":505},[277,64430,12804],{"class":283},[277,64432,64433,64435,64437],{"class":279,"line":520},[277,64434,922],{"class":283},[277,64436,41],{"class":287},[277,64438,305],{"class":283},[277,64440,64441,64443,64445],{"class":279,"line":539},[277,64442,954],{"class":283},[277,64444,38],{"class":287},[277,64446,305],{"class":283},[277,64448,64449,64451,64453],{"class":279,"line":545},[277,64450,785],{"class":283},[277,64452,802],{"class":287},[277,64454,305],{"class":283},[30,64456,13003],{"id":13002},[38,64458,64459,64465,64473],{},[41,64460,13008,64461,13014],{},[72,64462,64463,13013],{},[16,64464,10733],{},[41,64466,13017,64467,13020,64469,13026],{},[72,64468,971],{},[72,64470,64471,13025],{},[16,64472,11940],{},[41,64474,13029,64475,13035],{},[72,64476,64477,13034],{},[16,64478,11937],{},[1606,64480,13038],{},{"title":273,"searchDepth":308,"depth":308,"links":64482},[64483,64484,64485,64486,64487,64488,64493,64494],{"id":11969,"depth":308,"text":11970},{"id":12039,"depth":308,"text":13043},{"id":12145,"depth":308,"text":13045},{"id":12291,"depth":308,"text":13047},{"id":12490,"depth":308,"text":13049},{"id":12565,"depth":308,"text":12566,"children":64489},[64490,64491,64492],{"id":12569,"depth":324,"text":13053},{"id":12602,"depth":324,"text":13055},{"id":12622,"depth":324,"text":12623},{"id":12633,"depth":308,"text":12634},{"id":13002,"depth":308,"text":13003},{"script":64496},[64497],{"type":1632,"key":1633,"data-nuxt-schema-org":327,"nodes":64498},[64499],{"headline":11928,"author":64500,"datePublished":13069,"@type":1640},{"name":1637,"@type":1638},{"updatedAt":13069,"coverCaption":13071,"author":1637,"keywords":64502},[1645,11937,11940,10733,271],[64504],{"headline":11928,"author":64505,"datePublished":13069,"@type":1640},{"name":1637,"@type":1638},{"title":11928,"description":13062},[64508,64509,64510,64511],{"tag":1660,"color":1661},{"tag":1668,"color":1669},{"tag":3167,"color":3168},{"tag":9074,"color":9075},{"id":13086,"title":13087,"body":64513,"cover":15680,"coverAlt":13087,"date":15681,"description":15682,"draft":1627,"extension":1628,"head":66864,"locale":1641,"meta":66870,"navigation":327,"path":15695,"schemaOrg":66872,"seo":66875,"series":1653,"seriesDescription":1654,"seriesOrder":280,"seriesTitle":1655,"slug":1656,"stem":15700,"tags":66876,"__hash__":15706},{"type":8,"value":64514,"toc":66843},[64515,64517,64519,64525,64527,64531,64549,64551,64565,64569,64571,64573,64607,64609,64615,64617,64621,64625,64681,64689,64693,64697,64699,64707,64809,64817,64821,64825,64827,64837,64907,64913,64915,64919,64921,64929,64935,64939,64941,65005,65061,65067,65071,65075,65077,65087,65151,65207,65209,65213,65215,65221,65225,65227,65291,65347,65353,65357,65359,65365,65429,65485,65487,65489,65493,65499,65503,65567,65623,65629,65633,65635,65643,65764,65865,65869,65875,65881,65885,65949,66005,66011,66015,66079,66135,66137,66143,66147,66221,66287,66289,66293,66295,66299,66303,66371,66431,66435,66439,66507,66567,66569,66575,66579,66581,66649,66707,66709,66711,66735,66737,66755,66759,66761,66765,66835,66841],[11,64516,13093],{"id":13092},[30,64518,33],{"id":32},[21,64520,13098,64521,13102,64523,13106],{},[72,64522,13101],{},[72,64524,13105],{},[11,64526,61],{"id":60},[21,64528,13111,64529,13115],{},[72,64530,13114],{},[10089,64532,64533,64537,64541,64545],{},[41,64534,64535],{},[72,64536,13122],{},[41,64538,64539],{},[72,64540,13127],{},[41,64542,64543],{},[72,64544,13132],{},[41,64546,64547],{},[72,64548,13137],{},[21,64550,13140],{},[38,64552,64553,64557,64559,64561],{},[41,64554,13145,64555],{},[16,64556,5176],{},[41,64558,13150],{},[41,64560,13153],{},[41,64562,64563],{},[72,64564,13158],{},[21,64566,13161,64567,13165],{},[72,64568,13164],{},[30,64570,13169],{"id":13168},[21,64572,13172],{},[38,64574,64575,64579,64583,64587,64591,64595,64599,64603],{},[41,64576,64577],{},[13178,64578,11928],{"href":13180},[41,64580,64581],{},[13178,64582,10661],{"href":13185},[41,64584,64585],{},[13178,64586,9079],{"href":13190},[41,64588,64589],{},[13178,64590,7505],{"href":13195},[41,64592,64593],{},[13178,64594,13201],{"href":13200},[41,64596,64597],{},[13178,64598,3173],{"href":13206},[41,64600,64601],{},[13178,64602,1676],{"href":13211},[41,64604,64605],{},[13178,64606,6],{"href":13216},[11,64608,13220],{"id":13219},[21,64610,13223,64611,13227,64613,104],{},[72,64612,13226],{},[72,64614,13230],{},[21,64616,13233],{},[30,64618,64619],{"id":13236},[16,64620,11937],{},[21,64622,13241,64623,104],{},[72,64624,13244],{},[267,64626,64628],{"className":269,"code":13247,"filename":9339,"highlights":64627,"language":272,"meta":273,"style":273},[324],[16,64629,64630,64638,64646,64653,64665,64669,64673],{"__ignoreMap":273},[277,64631,64632,64634,64636],{"class":279,"line":280},[277,64633,284],{"class":283},[277,64635,288],{"class":287},[277,64637,305],{"class":283},[277,64639,64640,64642,64644],{"class":279,"line":308},[277,64641,1057],{"class":311},[277,64643,1060],{"class":311},[277,64645,343],{"class":283},[277,64647,64649,64651],{"class":64648,"line":324},[279,9398],[277,64650,12109],{"class":291},[277,64652,473],{"class":283},[277,64654,64655,64657,64659,64661,64663],{"class":279,"line":331},[277,64656,2881],{"class":283},[277,64658,2352],{"class":291},[277,64660,448],{"class":283},[277,64662,13284],{"class":301},[277,64664,433],{"class":283},[277,64666,64667],{"class":279,"line":346},[277,64668,542],{"class":283},[277,64670,64671],{"class":279,"line":360},[277,64672,394],{"class":283},[277,64674,64675,64677,64679],{"class":279,"line":371},[277,64676,785],{"class":283},[277,64678,288],{"class":287},[277,64680,305],{"class":283},[3111,64682,64683],{},[21,64684,13307,64685,13310,64687,13313],{},[16,64686,11937],{},[16,64688,3235],{},[30,64690,64691],{"id":11940},[16,64692,11940],{},[21,64694,13320,64695,104],{},[72,64696,13323],{},[21,64698,13326],{},[38,64700,64701,64703,64705],{},[41,64702,13331],{},[41,64704,13334],{},[41,64706,13337],{},[267,64708,64710],{"className":269,"code":13340,"filename":9339,"highlights":64709,"language":272,"meta":273,"style":273},[381],[16,64711,64712,64720,64728,64734,64740,64744,64748,64752,64761,64793,64797,64801],{"__ignoreMap":273},[277,64713,64714,64716,64718],{"class":279,"line":280},[277,64715,284],{"class":283},[277,64717,288],{"class":287},[277,64719,305],{"class":283},[277,64721,64722,64724,64726],{"class":279,"line":308},[277,64723,1057],{"class":311},[277,64725,1060],{"class":311},[277,64727,343],{"class":283},[277,64729,64730,64732],{"class":279,"line":324},[277,64731,1086],{"class":291},[277,64733,473],{"class":283},[277,64735,64736,64738],{"class":279,"line":331},[277,64737,1093],{"class":311},[277,64739,343],{"class":283},[277,64741,64742],{"class":279,"line":346},[277,64743,12214],{"class":283},[277,64745,64746],{"class":279,"line":360},[277,64747,1126],{"class":283},[277,64749,64750],{"class":279,"line":371},[277,64751,1131],{"class":283},[277,64753,64755,64757,64759],{"class":64754,"line":381},[279,9398],[277,64756,1248],{"class":311},[277,64758,12230],{"class":291},[277,64760,473],{"class":283},[277,64762,64763,64765,64767,64769,64771,64773,64775,64777,64779,64781,64783,64785,64787,64789,64791],{"class":279,"line":391},[277,64764,4724],{"class":356},[277,64766,12240],{"class":283},[277,64768,298],{"class":311},[277,64770,487],{"class":311},[277,64772,490],{"class":291},[277,64774,448],{"class":283},[277,64776,11061],{"class":301},[277,64778,1895],{"class":283},[277,64780,12255],{"class":291},[277,64782,448],{"class":283},[277,64784,12260],{"class":349},[277,64786,2226],{"class":311},[277,64788,12267],{"class":283},[277,64790,566],{"class":291},[277,64792,2266],{"class":283},[277,64794,64795],{"class":279,"line":397},[277,64796,542],{"class":283},[277,64798,64799],{"class":279,"line":402},[277,64800,394],{"class":283},[277,64802,64803,64805,64807],{"class":279,"line":436},[277,64804,785],{"class":283},[277,64806,288],{"class":287},[277,64808,305],{"class":283},[3111,64810,64811],{},[21,64812,13307,64813,13310,64815,13313],{},[16,64814,11940],{},[16,64816,3235],{},[30,64818,64819],{"id":10733},[16,64820,3235],{},[21,64822,13455,64823,104],{},[72,64824,13458],{},[21,64826,13461],{},[38,64828,64829,64831,64833,64835],{},[41,64830,13466],{},[41,64832,13469],{},[41,64834,3238],{},[41,64836,13474],{},[267,64838,64840],{"className":269,"code":13477,"filename":9339,"highlights":64839,"language":272,"meta":273,"style":273},[280],[16,64841,64842,64853,64863,64867,64883,64887,64899],{"__ignoreMap":273},[277,64843,64845,64847,64849,64851],{"class":64844,"line":280},[279,9398],[277,64846,284],{"class":283},[277,64848,288],{"class":287},[277,64850,292],{"class":291},[277,64852,305],{"class":283},[277,64854,64855,64857,64859,64861],{"class":279,"line":308},[277,64856,312],{"class":311},[277,64858,11006],{"class":283},[277,64860,318],{"class":311},[277,64862,321],{"class":301},[277,64864,64865],{"class":279,"line":324},[277,64866,328],{"emptyLinePlaceholder":327},[277,64868,64869,64871,64873,64875,64877,64879,64881],{"class":279,"line":331},[277,64870,405],{"class":311},[277,64872,9380],{"class":356},[277,64874,340],{"class":311},[277,64876,413],{"class":291},[277,64878,448],{"class":283},[277,64880,3542],{"class":356},[277,64882,433],{"class":283},[277,64884,64885],{"class":279,"line":346},[277,64886,328],{"emptyLinePlaceholder":327},[277,64888,64889,64891,64893,64895,64897],{"class":279,"line":360},[277,64890,12422],{"class":283},[277,64892,2352],{"class":291},[277,64894,448],{"class":283},[277,64896,13536],{"class":301},[277,64898,433],{"class":283},[277,64900,64901,64903,64905],{"class":279,"line":371},[277,64902,785],{"class":283},[277,64904,288],{"class":287},[277,64906,305],{"class":283},[3111,64908,64909],{},[21,64910,13307,64911,13553],{},[16,64912,3235],{},[11,64914,13557],{"id":13556},[21,64916,13223,64917,104],{},[72,64918,13562],{},[21,64920,13565],{},[38,64922,64923,64925,64927],{},[41,64924,13570],{},[41,64926,13573],{},[41,64928,13576],{},[30,64930,64931,5245,64933],{"id":13579},[16,64932,11435],{},[16,64934,10670],{},[21,64936,13241,64937,104],{},[72,64938,13588],{},[21,64940,13591],{},[267,64942,64944],{"className":269,"code":13594,"filename":271,"highlights":64943,"language":272,"meta":273,"style":273},[331],[16,64945,64946,64956,64966,64970,64981,64993,64997],{"__ignoreMap":273},[277,64947,64948,64950,64952,64954],{"class":279,"line":280},[277,64949,284],{"class":283},[277,64951,288],{"class":287},[277,64953,292],{"class":291},[277,64955,305],{"class":283},[277,64957,64958,64960,64962,64964],{"class":279,"line":308},[277,64959,312],{"class":311},[277,64961,13614],{"class":283},[277,64963,318],{"class":311},[277,64965,321],{"class":301},[277,64967,64968],{"class":279,"line":324},[277,64969,328],{"emptyLinePlaceholder":327},[277,64971,64973,64975,64977,64979],{"class":64972,"line":331},[279,9398],[277,64974,11435],{"class":291},[277,64976,2203],{"class":283},[277,64978,601],{"class":311},[277,64980,343],{"class":283},[277,64982,64983,64985,64987,64989,64991],{"class":279,"line":346},[277,64984,2349],{"class":283},[277,64986,2352],{"class":291},[277,64988,448],{"class":283},[277,64990,13644],{"class":301},[277,64992,433],{"class":283},[277,64994,64995],{"class":279,"line":360},[277,64996,676],{"class":283},[277,64998,64999,65001,65003],{"class":279,"line":371},[277,65000,785],{"class":283},[277,65002,288],{"class":287},[277,65004,305],{"class":283},[267,65006,65008],{"className":269,"code":13661,"filename":971,"highlights":65007,"language":272,"meta":273,"style":273},[324],[16,65009,65010,65018,65026,65033,65045,65049,65053],{"__ignoreMap":273},[277,65011,65012,65014,65016],{"class":279,"line":280},[277,65013,284],{"class":283},[277,65015,288],{"class":287},[277,65017,305],{"class":283},[277,65019,65020,65022,65024],{"class":279,"line":308},[277,65021,1057],{"class":311},[277,65023,1060],{"class":311},[277,65025,343],{"class":283},[277,65027,65029,65031],{"class":65028,"line":324},[279,9398],[277,65030,11655],{"class":291},[277,65032,473],{"class":283},[277,65034,65035,65037,65039,65041,65043],{"class":279,"line":331},[277,65036,2881],{"class":283},[277,65038,2352],{"class":291},[277,65040,448],{"class":283},[277,65042,13698],{"class":301},[277,65044,433],{"class":283},[277,65046,65047],{"class":279,"line":346},[277,65048,542],{"class":283},[277,65050,65051],{"class":279,"line":360},[277,65052,394],{"class":283},[277,65054,65055,65057,65059],{"class":279,"line":371},[277,65056,785],{"class":283},[277,65058,288],{"class":287},[277,65060,305],{"class":283},[30,65062,65063,5245,65065],{"id":13719},[16,65064,687],{},[16,65066,203],{},[21,65068,13241,65069,104],{},[72,65070,13728],{},[21,65072,13731,65073,104],{},[72,65074,13734],{},[21,65076,13737],{},[38,65078,65079,65081,65083,65085],{},[41,65080,13742],{},[41,65082,13745],{},[41,65084,13748],{},[41,65086,13751],{},[267,65088,65090],{"className":269,"code":13754,"filename":271,"highlights":65089,"language":272,"meta":273,"style":273},[331],[16,65091,65092,65102,65112,65116,65127,65139,65143],{"__ignoreMap":273},[277,65093,65094,65096,65098,65100],{"class":279,"line":280},[277,65095,284],{"class":283},[277,65097,288],{"class":287},[277,65099,292],{"class":291},[277,65101,305],{"class":283},[277,65103,65104,65106,65108,65110],{"class":279,"line":308},[277,65105,312],{"class":311},[277,65107,13774],{"class":283},[277,65109,318],{"class":311},[277,65111,321],{"class":301},[277,65113,65114],{"class":279,"line":324},[277,65115,328],{"emptyLinePlaceholder":327},[277,65117,65119,65121,65123,65125],{"class":65118,"line":331},[279,9398],[277,65120,687],{"class":291},[277,65122,2203],{"class":283},[277,65124,601],{"class":311},[277,65126,343],{"class":283},[277,65128,65129,65131,65133,65135,65137],{"class":279,"line":346},[277,65130,2349],{"class":283},[277,65132,2352],{"class":291},[277,65134,448],{"class":283},[277,65136,13804],{"class":301},[277,65138,433],{"class":283},[277,65140,65141],{"class":279,"line":360},[277,65142,676],{"class":283},[277,65144,65145,65147,65149],{"class":279,"line":371},[277,65146,785],{"class":283},[277,65148,288],{"class":287},[277,65150,305],{"class":283},[267,65152,65154],{"className":269,"code":13821,"filename":971,"highlights":65153,"language":272,"meta":273,"style":273},[324],[16,65155,65156,65164,65172,65179,65191,65195,65199],{"__ignoreMap":273},[277,65157,65158,65160,65162],{"class":279,"line":280},[277,65159,284],{"class":283},[277,65161,288],{"class":287},[277,65163,305],{"class":283},[277,65165,65166,65168,65170],{"class":279,"line":308},[277,65167,1057],{"class":311},[277,65169,1060],{"class":311},[277,65171,343],{"class":283},[277,65173,65175,65177],{"class":65174,"line":324},[279,9398],[277,65176,6784],{"class":291},[277,65178,473],{"class":283},[277,65180,65181,65183,65185,65187,65189],{"class":279,"line":331},[277,65182,2881],{"class":283},[277,65184,2352],{"class":291},[277,65186,448],{"class":283},[277,65188,13858],{"class":301},[277,65190,433],{"class":283},[277,65192,65193],{"class":279,"line":346},[277,65194,542],{"class":283},[277,65196,65197],{"class":279,"line":360},[277,65198,394],{"class":283},[277,65200,65201,65203,65205],{"class":279,"line":371},[277,65202,785],{"class":283},[277,65204,288],{"class":287},[277,65206,305],{"class":283},[11,65208,13880],{"id":13879},[21,65210,13883,65211,104],{},[72,65212,13886],{},[21,65214,13889],{},[30,65216,65217,5245,65219],{"id":13892},[16,65218,9566],{},[16,65220,9088],{},[21,65222,13241,65223,104],{},[72,65224,13901],{},[21,65226,13904],{},[267,65228,65230],{"className":269,"code":13907,"filename":271,"highlights":65229,"language":272,"meta":273,"style":273},[331],[16,65231,65232,65242,65252,65256,65267,65279,65283],{"__ignoreMap":273},[277,65233,65234,65236,65238,65240],{"class":279,"line":280},[277,65235,284],{"class":283},[277,65237,288],{"class":287},[277,65239,292],{"class":291},[277,65241,305],{"class":283},[277,65243,65244,65246,65248,65250],{"class":279,"line":308},[277,65245,312],{"class":311},[277,65247,13927],{"class":283},[277,65249,318],{"class":311},[277,65251,321],{"class":301},[277,65253,65254],{"class":279,"line":324},[277,65255,328],{"emptyLinePlaceholder":327},[277,65257,65259,65261,65263,65265],{"class":65258,"line":331},[279,9398],[277,65260,9566],{"class":291},[277,65262,2203],{"class":283},[277,65264,601],{"class":311},[277,65266,343],{"class":283},[277,65268,65269,65271,65273,65275,65277],{"class":279,"line":346},[277,65270,2349],{"class":283},[277,65272,2352],{"class":291},[277,65274,448],{"class":283},[277,65276,13957],{"class":301},[277,65278,433],{"class":283},[277,65280,65281],{"class":279,"line":360},[277,65282,676],{"class":283},[277,65284,65285,65287,65289],{"class":279,"line":371},[277,65286,785],{"class":283},[277,65288,288],{"class":287},[277,65290,305],{"class":283},[267,65292,65294],{"className":269,"code":13974,"filename":971,"highlights":65293,"language":272,"meta":273,"style":273},[324],[16,65295,65296,65304,65312,65319,65331,65335,65339],{"__ignoreMap":273},[277,65297,65298,65300,65302],{"class":279,"line":280},[277,65299,284],{"class":283},[277,65301,288],{"class":287},[277,65303,305],{"class":283},[277,65305,65306,65308,65310],{"class":279,"line":308},[277,65307,1057],{"class":311},[277,65309,1060],{"class":311},[277,65311,343],{"class":283},[277,65313,65315,65317],{"class":65314,"line":324},[279,9398],[277,65316,10268],{"class":291},[277,65318,473],{"class":283},[277,65320,65321,65323,65325,65327,65329],{"class":279,"line":331},[277,65322,2881],{"class":283},[277,65324,2352],{"class":291},[277,65326,448],{"class":283},[277,65328,14011],{"class":301},[277,65330,433],{"class":283},[277,65332,65333],{"class":279,"line":346},[277,65334,542],{"class":283},[277,65336,65337],{"class":279,"line":360},[277,65338,394],{"class":283},[277,65340,65341,65343,65345],{"class":279,"line":371},[277,65342,785],{"class":283},[277,65344,288],{"class":287},[277,65346,305],{"class":283},[30,65348,65349,5245,65351],{"id":14032},[16,65350,9401],{},[16,65352,9091],{},[21,65354,13241,65355,104],{},[72,65356,14041],{},[21,65358,14044],{},[3111,65360,65361],{},[21,65362,14049,65363,104],{},[16,65364,1735],{},[267,65366,65368],{"className":269,"code":14054,"filename":271,"highlights":65367,"language":272,"meta":273,"style":273},[331],[16,65369,65370,65380,65390,65394,65405,65417,65421],{"__ignoreMap":273},[277,65371,65372,65374,65376,65378],{"class":279,"line":280},[277,65373,284],{"class":283},[277,65375,288],{"class":287},[277,65377,292],{"class":291},[277,65379,305],{"class":283},[277,65381,65382,65384,65386,65388],{"class":279,"line":308},[277,65383,312],{"class":311},[277,65385,14074],{"class":283},[277,65387,318],{"class":311},[277,65389,321],{"class":301},[277,65391,65392],{"class":279,"line":324},[277,65393,328],{"emptyLinePlaceholder":327},[277,65395,65397,65399,65401,65403],{"class":65396,"line":331},[279,9398],[277,65398,9401],{"class":291},[277,65400,2203],{"class":283},[277,65402,601],{"class":311},[277,65404,343],{"class":283},[277,65406,65407,65409,65411,65413,65415],{"class":279,"line":346},[277,65408,2349],{"class":283},[277,65410,2352],{"class":291},[277,65412,448],{"class":283},[277,65414,14104],{"class":301},[277,65416,433],{"class":283},[277,65418,65419],{"class":279,"line":360},[277,65420,676],{"class":283},[277,65422,65423,65425,65427],{"class":279,"line":371},[277,65424,785],{"class":283},[277,65426,288],{"class":287},[277,65428,305],{"class":283},[267,65430,65432],{"className":269,"code":14121,"filename":971,"highlights":65431,"language":272,"meta":273,"style":273},[324],[16,65433,65434,65442,65450,65457,65469,65473,65477],{"__ignoreMap":273},[277,65435,65436,65438,65440],{"class":279,"line":280},[277,65437,284],{"class":283},[277,65439,288],{"class":287},[277,65441,305],{"class":283},[277,65443,65444,65446,65448],{"class":279,"line":308},[277,65445,1057],{"class":311},[277,65447,1060],{"class":311},[277,65449,343],{"class":283},[277,65451,65453,65455],{"class":65452,"line":324},[279,9398],[277,65454,10319],{"class":291},[277,65456,473],{"class":283},[277,65458,65459,65461,65463,65465,65467],{"class":279,"line":331},[277,65460,2881],{"class":283},[277,65462,2352],{"class":291},[277,65464,448],{"class":283},[277,65466,14158],{"class":301},[277,65468,433],{"class":283},[277,65470,65471],{"class":279,"line":346},[277,65472,542],{"class":283},[277,65474,65475],{"class":279,"line":360},[277,65476,394],{"class":283},[277,65478,65479,65481,65483],{"class":279,"line":371},[277,65480,785],{"class":283},[277,65482,288],{"class":287},[277,65484,305],{"class":283},[11,65486,14180],{"id":14179},[21,65488,14183],{},[21,65490,14186,65491,104],{},[72,65492,14189],{},[30,65494,65495,5245,65497],{"id":14192},[16,65496,8295],{},[16,65498,7514],{},[21,65500,13241,65501,104],{},[72,65502,14201],{},[267,65504,65506],{"className":269,"code":14204,"filename":271,"highlights":65505,"language":272,"meta":273,"style":273},[331],[16,65507,65508,65518,65528,65532,65543,65555,65559],{"__ignoreMap":273},[277,65509,65510,65512,65514,65516],{"class":279,"line":280},[277,65511,284],{"class":283},[277,65513,288],{"class":287},[277,65515,292],{"class":291},[277,65517,305],{"class":283},[277,65519,65520,65522,65524,65526],{"class":279,"line":308},[277,65521,312],{"class":311},[277,65523,14224],{"class":283},[277,65525,318],{"class":311},[277,65527,321],{"class":301},[277,65529,65530],{"class":279,"line":324},[277,65531,328],{"emptyLinePlaceholder":327},[277,65533,65535,65537,65539,65541],{"class":65534,"line":331},[279,9398],[277,65536,8295],{"class":291},[277,65538,2203],{"class":283},[277,65540,601],{"class":311},[277,65542,343],{"class":283},[277,65544,65545,65547,65549,65551,65553],{"class":279,"line":346},[277,65546,2349],{"class":283},[277,65548,2352],{"class":291},[277,65550,448],{"class":283},[277,65552,14254],{"class":301},[277,65554,433],{"class":283},[277,65556,65557],{"class":279,"line":360},[277,65558,676],{"class":283},[277,65560,65561,65563,65565],{"class":279,"line":371},[277,65562,785],{"class":283},[277,65564,288],{"class":287},[277,65566,305],{"class":283},[267,65568,65570],{"className":269,"code":14271,"filename":971,"highlights":65569,"language":272,"meta":273,"style":273},[324],[16,65571,65572,65580,65588,65595,65607,65611,65615],{"__ignoreMap":273},[277,65573,65574,65576,65578],{"class":279,"line":280},[277,65575,284],{"class":283},[277,65577,288],{"class":287},[277,65579,305],{"class":283},[277,65581,65582,65584,65586],{"class":279,"line":308},[277,65583,1057],{"class":311},[277,65585,1060],{"class":311},[277,65587,343],{"class":283},[277,65589,65591,65593],{"class":65590,"line":324},[279,9398],[277,65592,8610],{"class":291},[277,65594,473],{"class":283},[277,65596,65597,65599,65601,65603,65605],{"class":279,"line":331},[277,65598,2881],{"class":283},[277,65600,2352],{"class":291},[277,65602,448],{"class":283},[277,65604,14308],{"class":301},[277,65606,433],{"class":283},[277,65608,65609],{"class":279,"line":346},[277,65610,542],{"class":283},[277,65612,65613],{"class":279,"line":360},[277,65614,394],{"class":283},[277,65616,65617,65619,65621],{"class":279,"line":371},[277,65618,785],{"class":283},[277,65620,288],{"class":287},[277,65622,305],{"class":283},[30,65624,65625,5245,65627],{"id":14329},[16,65626,8349],{},[16,65628,5294],{},[21,65630,13241,65631,104],{},[72,65632,14338],{},[21,65634,14341],{},[38,65636,65637,65639,65641],{},[41,65638,14346],{},[41,65640,14349],{},[41,65642,14352],{},[267,65644,65646],{"className":269,"code":14355,"filename":271,"highlights":65645,"language":272,"meta":273,"style":273},[360,436],[16,65647,65648,65658,65668,65672,65678,65682,65693,65707,65719,65727,65731,65735,65746,65752,65756],{"__ignoreMap":273},[277,65649,65650,65652,65654,65656],{"class":279,"line":280},[277,65651,284],{"class":283},[277,65653,288],{"class":287},[277,65655,292],{"class":291},[277,65657,305],{"class":283},[277,65659,65660,65662,65664,65666],{"class":279,"line":308},[277,65661,312],{"class":311},[277,65663,14375],{"class":283},[277,65665,318],{"class":311},[277,65667,321],{"class":301},[277,65669,65670],{"class":279,"line":324},[277,65671,328],{"emptyLinePlaceholder":327},[277,65673,65674,65676],{"class":279,"line":331},[277,65675,7990],{"class":311},[277,65677,14390],{"class":283},[277,65679,65680],{"class":279,"line":346},[277,65681,328],{"emptyLinePlaceholder":327},[277,65683,65685,65687,65689,65691],{"class":65684,"line":360},[279,9398],[277,65686,687],{"class":291},[277,65688,2203],{"class":283},[277,65690,601],{"class":311},[277,65692,343],{"class":283},[277,65694,65695,65697,65699,65701,65703,65705],{"class":279,"line":371},[277,65696,14410],{"class":283},[277,65698,298],{"class":311},[277,65700,6100],{"class":291},[277,65702,2203],{"class":283},[277,65704,601],{"class":311},[277,65706,343],{"class":283},[277,65708,65709,65711,65713,65715,65717],{"class":279,"line":381},[277,65710,2881],{"class":283},[277,65712,2352],{"class":291},[277,65714,448],{"class":283},[277,65716,11239],{"class":301},[277,65718,433],{"class":283},[277,65720,65721,65723,65725],{"class":279,"line":391},[277,65722,6120],{"class":283},[277,65724,11248],{"class":356},[277,65726,433],{"class":283},[277,65728,65729],{"class":279,"line":397},[277,65730,676],{"class":283},[277,65732,65733],{"class":279,"line":402},[277,65734,328],{"emptyLinePlaceholder":327},[277,65736,65738,65740,65742,65744],{"class":65737,"line":436},[279,9398],[277,65739,8349],{"class":291},[277,65741,2203],{"class":283},[277,65743,601],{"class":311},[277,65745,343],{"class":283},[277,65747,65748,65750],{"class":279,"line":456},[277,65749,6165],{"class":291},[277,65751,14466],{"class":283},[277,65753,65754],{"class":279,"line":461},[277,65755,676],{"class":283},[277,65757,65758,65760,65762],{"class":279,"line":476},[277,65759,785],{"class":283},[277,65761,288],{"class":287},[277,65763,305],{"class":283},[267,65765,65767],{"className":269,"code":14481,"filename":971,"highlights":65766,"language":272,"meta":273,"style":273},[324,381],[16,65768,65769,65777,65785,65792,65808,65820,65828,65832,65839,65849,65853,65857],{"__ignoreMap":273},[277,65770,65771,65773,65775],{"class":279,"line":280},[277,65772,284],{"class":283},[277,65774,288],{"class":287},[277,65776,305],{"class":283},[277,65778,65779,65781,65783],{"class":279,"line":308},[277,65780,1057],{"class":311},[277,65782,1060],{"class":311},[277,65784,343],{"class":283},[277,65786,65788,65790],{"class":65787,"line":324},[279,9398],[277,65789,6784],{"class":291},[277,65791,473],{"class":283},[277,65793,65794,65796,65798,65800,65802,65804,65806],{"class":279,"line":331},[277,65795,4724],{"class":356},[277,65797,14514],{"class":283},[277,65799,298],{"class":311},[277,65801,6100],{"class":291},[277,65803,2203],{"class":283},[277,65805,601],{"class":311},[277,65807,343],{"class":283},[277,65809,65810,65812,65814,65816,65818],{"class":279,"line":346},[277,65811,14529],{"class":283},[277,65813,2352],{"class":291},[277,65815,448],{"class":283},[277,65817,11239],{"class":301},[277,65819,433],{"class":283},[277,65821,65822,65824,65826],{"class":279,"line":360},[277,65823,14542],{"class":283},[277,65825,11248],{"class":356},[277,65827,433],{"class":283},[277,65829,65830],{"class":279,"line":371},[277,65831,1131],{"class":283},[277,65833,65835,65837],{"class":65834,"line":381},[279,9398],[277,65836,8668],{"class":291},[277,65838,473],{"class":283},[277,65840,65841,65843,65845,65847],{"class":279,"line":391},[277,65842,14562],{"class":291},[277,65844,448],{"class":283},[277,65846,1341],{"class":356},[277,65848,14569],{"class":283},[277,65850,65851],{"class":279,"line":397},[277,65852,542],{"class":283},[277,65854,65855],{"class":279,"line":402},[277,65856,394],{"class":283},[277,65858,65859,65861,65863],{"class":279,"line":436},[277,65860,785],{"class":283},[277,65862,288],{"class":287},[277,65864,305],{"class":283},[11,65866,14589,65867],{"id":14588},[16,65868,5176],{},[21,65870,14594,65871,225,65873,14600],{},[16,65872,5176],{},[72,65874,14599],{},[30,65876,65877,5245,65879],{"id":14603},[16,65878,6217],{},[16,65880,5179],{},[21,65882,14610,65883,104],{},[72,65884,14613],{},[267,65886,65888],{"className":269,"code":14616,"filename":271,"highlights":65887,"language":272,"meta":273,"style":273},[331],[16,65889,65890,65900,65910,65914,65925,65937,65941],{"__ignoreMap":273},[277,65891,65892,65894,65896,65898],{"class":279,"line":280},[277,65893,284],{"class":283},[277,65895,288],{"class":287},[277,65897,292],{"class":291},[277,65899,305],{"class":283},[277,65901,65902,65904,65906,65908],{"class":279,"line":308},[277,65903,312],{"class":311},[277,65905,14636],{"class":283},[277,65907,318],{"class":311},[277,65909,321],{"class":301},[277,65911,65912],{"class":279,"line":324},[277,65913,328],{"emptyLinePlaceholder":327},[277,65915,65917,65919,65921,65923],{"class":65916,"line":331},[279,9398],[277,65918,6217],{"class":291},[277,65920,2203],{"class":283},[277,65922,601],{"class":311},[277,65924,343],{"class":283},[277,65926,65927,65929,65931,65933,65935],{"class":279,"line":346},[277,65928,2349],{"class":283},[277,65930,2352],{"class":291},[277,65932,448],{"class":283},[277,65934,14666],{"class":301},[277,65936,433],{"class":283},[277,65938,65939],{"class":279,"line":360},[277,65940,676],{"class":283},[277,65942,65943,65945,65947],{"class":279,"line":371},[277,65944,785],{"class":283},[277,65946,288],{"class":287},[277,65948,305],{"class":283},[267,65950,65952],{"className":269,"code":14683,"filename":971,"highlights":65951,"language":272,"meta":273,"style":273},[324],[16,65953,65954,65962,65970,65977,65989,65993,65997],{"__ignoreMap":273},[277,65955,65956,65958,65960],{"class":279,"line":280},[277,65957,284],{"class":283},[277,65959,288],{"class":287},[277,65961,305],{"class":283},[277,65963,65964,65966,65968],{"class":279,"line":308},[277,65965,1057],{"class":311},[277,65967,1060],{"class":311},[277,65969,343],{"class":283},[277,65971,65973,65975],{"class":65972,"line":324},[279,9398],[277,65974,14708],{"class":291},[277,65976,473],{"class":283},[277,65978,65979,65981,65983,65985,65987],{"class":279,"line":331},[277,65980,2881],{"class":283},[277,65982,2352],{"class":291},[277,65984,448],{"class":283},[277,65986,14666],{"class":301},[277,65988,433],{"class":283},[277,65990,65991],{"class":279,"line":346},[277,65992,542],{"class":283},[277,65994,65995],{"class":279,"line":360},[277,65996,394],{"class":283},[277,65998,65999,66001,66003],{"class":279,"line":371},[277,66000,785],{"class":283},[277,66002,288],{"class":287},[277,66004,305],{"class":283},[30,66006,66007,5245,66009],{"id":14741},[16,66008,6276],{},[16,66010,5182],{},[21,66012,14610,66013,104],{},[72,66014,14750],{},[267,66016,66018],{"className":269,"code":14753,"filename":271,"highlights":66017,"language":272,"meta":273,"style":273},[331],[16,66019,66020,66030,66040,66044,66055,66067,66071],{"__ignoreMap":273},[277,66021,66022,66024,66026,66028],{"class":279,"line":280},[277,66023,284],{"class":283},[277,66025,288],{"class":287},[277,66027,292],{"class":291},[277,66029,305],{"class":283},[277,66031,66032,66034,66036,66038],{"class":279,"line":308},[277,66033,312],{"class":311},[277,66035,14773],{"class":283},[277,66037,318],{"class":311},[277,66039,321],{"class":301},[277,66041,66042],{"class":279,"line":324},[277,66043,328],{"emptyLinePlaceholder":327},[277,66045,66047,66049,66051,66053],{"class":66046,"line":331},[279,9398],[277,66048,6276],{"class":291},[277,66050,2203],{"class":283},[277,66052,601],{"class":311},[277,66054,343],{"class":283},[277,66056,66057,66059,66061,66063,66065],{"class":279,"line":346},[277,66058,2349],{"class":283},[277,66060,2352],{"class":291},[277,66062,448],{"class":283},[277,66064,14803],{"class":301},[277,66066,433],{"class":283},[277,66068,66069],{"class":279,"line":360},[277,66070,676],{"class":283},[277,66072,66073,66075,66077],{"class":279,"line":371},[277,66074,785],{"class":283},[277,66076,288],{"class":287},[277,66078,305],{"class":283},[267,66080,66082],{"className":269,"code":14820,"filename":971,"highlights":66081,"language":272,"meta":273,"style":273},[324],[16,66083,66084,66092,66100,66107,66119,66123,66127],{"__ignoreMap":273},[277,66085,66086,66088,66090],{"class":279,"line":280},[277,66087,284],{"class":283},[277,66089,288],{"class":287},[277,66091,305],{"class":283},[277,66093,66094,66096,66098],{"class":279,"line":308},[277,66095,1057],{"class":311},[277,66097,1060],{"class":311},[277,66099,343],{"class":283},[277,66101,66103,66105],{"class":66102,"line":324},[279,9398],[277,66104,6872],{"class":291},[277,66106,473],{"class":283},[277,66108,66109,66111,66113,66115,66117],{"class":279,"line":331},[277,66110,2881],{"class":283},[277,66112,2352],{"class":291},[277,66114,448],{"class":283},[277,66116,14803],{"class":301},[277,66118,433],{"class":283},[277,66120,66121],{"class":279,"line":346},[277,66122,542],{"class":283},[277,66124,66125],{"class":279,"line":360},[277,66126,394],{"class":283},[277,66128,66129,66131,66133],{"class":279,"line":371},[277,66130,785],{"class":283},[277,66132,288],{"class":287},[277,66134,305],{"class":283},[11,66136,13150],{"id":14877},[30,66138,66139,5245,66141],{"id":14880},[16,66140,3922],{},[16,66142,3182],{},[21,66144,14887,66145,104],{},[72,66146,14890],{},[267,66148,66150],{"className":269,"code":14893,"filename":271,"highlights":66149,"language":272,"meta":273,"style":273},[331],[16,66151,66152,66162,66172,66176,66191,66203,66209,66213],{"__ignoreMap":273},[277,66153,66154,66156,66158,66160],{"class":279,"line":280},[277,66155,284],{"class":283},[277,66157,288],{"class":287},[277,66159,292],{"class":291},[277,66161,305],{"class":283},[277,66163,66164,66166,66168,66170],{"class":279,"line":308},[277,66165,312],{"class":311},[277,66167,14913],{"class":283},[277,66169,318],{"class":311},[277,66171,321],{"class":301},[277,66173,66174],{"class":279,"line":324},[277,66175,328],{"emptyLinePlaceholder":327},[277,66177,66179,66181,66183,66185,66187,66189],{"class":66178,"line":331},[279,9398],[277,66180,3922],{"class":291},[277,66182,2334],{"class":283},[277,66184,3349],{"class":349},[277,66186,2340],{"class":283},[277,66188,601],{"class":311},[277,66190,343],{"class":283},[277,66192,66193,66195,66197,66199,66201],{"class":279,"line":346},[277,66194,2349],{"class":283},[277,66196,3349],{"class":291},[277,66198,448],{"class":283},[277,66200,14947],{"class":301},[277,66202,8215],{"class":283},[277,66204,66205,66207],{"class":279,"line":360},[277,66206,2212],{"class":311},[277,66208,4031],{"class":356},[277,66210,66211],{"class":279,"line":371},[277,66212,676],{"class":283},[277,66214,66215,66217,66219],{"class":279,"line":381},[277,66216,785],{"class":283},[277,66218,288],{"class":287},[277,66220,305],{"class":283},[267,66222,66224],{"className":269,"code":14970,"filename":971,"highlights":66223,"language":272,"meta":273,"style":273},[324],[16,66225,66226,66234,66242,66253,66265,66271,66275,66279],{"__ignoreMap":273},[277,66227,66228,66230,66232],{"class":279,"line":280},[277,66229,284],{"class":283},[277,66231,288],{"class":287},[277,66233,305],{"class":283},[277,66235,66236,66238,66240],{"class":279,"line":308},[277,66237,1057],{"class":311},[277,66239,1060],{"class":311},[277,66241,343],{"class":283},[277,66243,66245,66247,66249,66251],{"class":66244,"line":324},[279,9398],[277,66246,4705],{"class":291},[277,66248,448],{"class":283},[277,66250,3349],{"class":349},[277,66252,2476],{"class":283},[277,66254,66255,66257,66259,66261,66263],{"class":279,"line":331},[277,66256,2881],{"class":283},[277,66258,3349],{"class":291},[277,66260,448],{"class":283},[277,66262,14947],{"class":301},[277,66264,8215],{"class":283},[277,66266,66267,66269],{"class":279,"line":346},[277,66268,1093],{"class":311},[277,66270,4031],{"class":356},[277,66272,66273],{"class":279,"line":360},[277,66274,542],{"class":283},[277,66276,66277],{"class":279,"line":371},[277,66278,394],{"class":283},[277,66280,66281,66283,66285],{"class":279,"line":381},[277,66282,785],{"class":283},[277,66284,288],{"class":287},[277,66286,305],{"class":283},[11,66288,15038],{"id":15037},[21,66290,15041,66291,104],{},[72,66292,15044],{},[21,66294,15047],{},[30,66296,66297],{"id":15050},[16,66298,2331],{},[21,66300,15055,66301,104],{},[72,66302,15058],{},[267,66304,66306],{"className":269,"code":15061,"filename":271,"highlights":66305,"language":272,"meta":273,"style":273},[331],[16,66307,66308,66318,66328,66332,66347,66359,66363],{"__ignoreMap":273},[277,66309,66310,66312,66314,66316],{"class":279,"line":280},[277,66311,284],{"class":283},[277,66313,288],{"class":287},[277,66315,292],{"class":291},[277,66317,305],{"class":283},[277,66319,66320,66322,66324,66326],{"class":279,"line":308},[277,66321,312],{"class":311},[277,66323,15081],{"class":283},[277,66325,318],{"class":311},[277,66327,321],{"class":301},[277,66329,66330],{"class":279,"line":324},[277,66331,328],{"emptyLinePlaceholder":327},[277,66333,66335,66337,66339,66341,66343,66345],{"class":66334,"line":331},[279,9398],[277,66336,2331],{"class":291},[277,66338,2334],{"class":283},[277,66340,2337],{"class":349},[277,66342,2340],{"class":283},[277,66344,601],{"class":311},[277,66346,343],{"class":283},[277,66348,66349,66351,66353,66355,66357],{"class":279,"line":346},[277,66350,2349],{"class":283},[277,66352,15111],{"class":291},[277,66354,448],{"class":283},[277,66356,15116],{"class":301},[277,66358,15119],{"class":283},[277,66360,66361],{"class":279,"line":360},[277,66362,676],{"class":283},[277,66364,66365,66367,66369],{"class":279,"line":371},[277,66366,785],{"class":283},[277,66368,288],{"class":287},[277,66370,305],{"class":283},[267,66372,66374],{"className":269,"code":15134,"filename":971,"highlights":66373,"language":272,"meta":273,"style":273},[324],[16,66375,66376,66384,66392,66403,66415,66419,66423],{"__ignoreMap":273},[277,66377,66378,66380,66382],{"class":279,"line":280},[277,66379,284],{"class":283},[277,66381,288],{"class":287},[277,66383,305],{"class":283},[277,66385,66386,66388,66390],{"class":279,"line":308},[277,66387,1057],{"class":311},[277,66389,1060],{"class":311},[277,66391,343],{"class":283},[277,66393,66395,66397,66399,66401],{"class":66394,"line":324},[279,9398],[277,66396,2870],{"class":291},[277,66398,448],{"class":283},[277,66400,2337],{"class":349},[277,66402,2476],{"class":283},[277,66404,66405,66407,66409,66411,66413],{"class":279,"line":331},[277,66406,2881],{"class":283},[277,66408,15111],{"class":291},[277,66410,448],{"class":283},[277,66412,15116],{"class":301},[277,66414,15119],{"class":283},[277,66416,66417],{"class":279,"line":346},[277,66418,542],{"class":283},[277,66420,66421],{"class":279,"line":360},[277,66422,394],{"class":283},[277,66424,66425,66427,66429],{"class":279,"line":371},[277,66426,785],{"class":283},[277,66428,288],{"class":287},[277,66430,305],{"class":283},[30,66432,66433],{"id":15195},[16,66434,2398],{},[21,66436,15200,66437,104],{},[72,66438,15203],{},[267,66440,66442],{"className":269,"code":15206,"filename":271,"highlights":66441,"language":272,"meta":273,"style":273},[331],[16,66443,66444,66454,66464,66468,66483,66495,66499],{"__ignoreMap":273},[277,66445,66446,66448,66450,66452],{"class":279,"line":280},[277,66447,284],{"class":283},[277,66449,288],{"class":287},[277,66451,292],{"class":291},[277,66453,305],{"class":283},[277,66455,66456,66458,66460,66462],{"class":279,"line":308},[277,66457,312],{"class":311},[277,66459,15226],{"class":283},[277,66461,318],{"class":311},[277,66463,321],{"class":301},[277,66465,66466],{"class":279,"line":324},[277,66467,328],{"emptyLinePlaceholder":327},[277,66469,66471,66473,66475,66477,66479,66481],{"class":66470,"line":331},[279,9398],[277,66472,2398],{"class":291},[277,66474,2334],{"class":283},[277,66476,2337],{"class":349},[277,66478,2340],{"class":283},[277,66480,601],{"class":311},[277,66482,343],{"class":283},[277,66484,66485,66487,66489,66491,66493],{"class":279,"line":346},[277,66486,2349],{"class":283},[277,66488,15111],{"class":291},[277,66490,448],{"class":283},[277,66492,15260],{"class":301},[277,66494,15119],{"class":283},[277,66496,66497],{"class":279,"line":360},[277,66498,676],{"class":283},[277,66500,66501,66503,66505],{"class":279,"line":371},[277,66502,785],{"class":283},[277,66504,288],{"class":287},[277,66506,305],{"class":283},[267,66508,66510],{"className":269,"code":15277,"filename":971,"highlights":66509,"language":272,"meta":273,"style":273},[324],[16,66511,66512,66520,66528,66539,66551,66555,66559],{"__ignoreMap":273},[277,66513,66514,66516,66518],{"class":279,"line":280},[277,66515,284],{"class":283},[277,66517,288],{"class":287},[277,66519,305],{"class":283},[277,66521,66522,66524,66526],{"class":279,"line":308},[277,66523,1057],{"class":311},[277,66525,1060],{"class":311},[277,66527,343],{"class":283},[277,66529,66531,66533,66535,66537],{"class":66530,"line":324},[279,9398],[277,66532,2926],{"class":291},[277,66534,448],{"class":283},[277,66536,2337],{"class":349},[277,66538,2476],{"class":283},[277,66540,66541,66543,66545,66547,66549],{"class":279,"line":331},[277,66542,2881],{"class":283},[277,66544,15111],{"class":291},[277,66546,448],{"class":283},[277,66548,15260],{"class":301},[277,66550,15119],{"class":283},[277,66552,66553],{"class":279,"line":346},[277,66554,542],{"class":283},[277,66556,66557],{"class":279,"line":360},[277,66558,394],{"class":283},[277,66560,66561,66563,66565],{"class":279,"line":371},[277,66562,785],{"class":283},[277,66564,288],{"class":287},[277,66566,305],{"class":283},[11,66568,15339],{"id":15338},[30,66570,66571,5245,66573],{"id":15342},[16,66572,591],{},[16,66574,18],{},[21,66576,15349,66577,104],{},[72,66578,15352],{},[21,66580,15355],{},[267,66582,66584],{"className":269,"code":15358,"filename":271,"highlights":66583,"language":272,"meta":273,"style":273},[331],[16,66585,66586,66596,66606,66610,66625,66637,66641],{"__ignoreMap":273},[277,66587,66588,66590,66592,66594],{"class":279,"line":280},[277,66589,284],{"class":283},[277,66591,288],{"class":287},[277,66593,292],{"class":291},[277,66595,305],{"class":283},[277,66597,66598,66600,66602,66604],{"class":279,"line":308},[277,66599,312],{"class":311},[277,66601,15378],{"class":283},[277,66603,318],{"class":311},[277,66605,321],{"class":301},[277,66607,66608],{"class":279,"line":324},[277,66609,328],{"emptyLinePlaceholder":327},[277,66611,66613,66615,66617,66619,66621,66623],{"class":66612,"line":331},[279,9398],[277,66614,591],{"class":291},[277,66616,448],{"class":283},[277,66618,464],{"class":311},[277,66620,598],{"class":283},[277,66622,601],{"class":311},[277,66624,343],{"class":283},[277,66626,66627,66629,66631,66633,66635],{"class":279,"line":346},[277,66628,6252],{"class":311},[277,66630,490],{"class":291},[277,66632,448],{"class":283},[277,66634,15412],{"class":301},[277,66636,433],{"class":283},[277,66638,66639],{"class":279,"line":360},[277,66640,676],{"class":283},[277,66642,66643,66645,66647],{"class":279,"line":371},[277,66644,785],{"class":283},[277,66646,288],{"class":287},[277,66648,305],{"class":283},[267,66650,66652],{"className":269,"code":15429,"filename":971,"highlights":66651,"language":272,"meta":273,"style":273},[324],[16,66653,66654,66662,66670,66679,66691,66695,66699],{"__ignoreMap":273},[277,66655,66656,66658,66660],{"class":279,"line":280},[277,66657,284],{"class":283},[277,66659,288],{"class":287},[277,66661,305],{"class":283},[277,66663,66664,66666,66668],{"class":279,"line":308},[277,66665,1057],{"class":311},[277,66667,1060],{"class":311},[277,66669,343],{"class":283},[277,66671,66673,66675,66677],{"class":66672,"line":324},[279,9398],[277,66674,1248],{"class":311},[277,66676,1251],{"class":291},[277,66678,473],{"class":283},[277,66680,66681,66683,66685,66687,66689],{"class":279,"line":331},[277,66682,617],{"class":311},[277,66684,490],{"class":291},[277,66686,448],{"class":283},[277,66688,15412],{"class":301},[277,66690,433],{"class":283},[277,66692,66693],{"class":279,"line":346},[277,66694,542],{"class":283},[277,66696,66697],{"class":279,"line":360},[277,66698,394],{"class":283},[277,66700,66701,66703,66705],{"class":279,"line":371},[277,66702,785],{"class":283},[277,66704,288],{"class":287},[277,66706,305],{"class":283},[11,66708,15489],{"id":15488},[30,66710,15493],{"id":15492},[38,66712,66713,66719,66725,66731],{},[41,66714,15498,66715,511,66717,19],{},[72,66716,15501],{},[16,66718,687],{},[41,66720,15506,66721,511,66723,19],{},[72,66722,15509],{},[16,66724,8349],{},[41,66726,15514,66727,511,66729,19],{},[72,66728,1646],{},[16,66730,591],{},[41,66732,15521,66733],{},[72,66734,15524],{},[30,66736,1874],{"id":15527},[38,66738,66739,66745,66751],{},[41,66740,1860,66741,15536],{},[72,66742,66743],{},[16,66744,1732],{},[41,66746,1860,66747,15543],{},[72,66748,66749],{},[16,66750,1735],{},[41,66752,15546,66753],{},[72,66754,15549],{},[21,66756,15552,66757,15556],{},[72,66758,15555],{},[11,66760,1596],{"id":1595},[21,66762,15561,66763,353],{},[72,66764,15564],{},[5392,66766,66767,66775],{},[5395,66768,66769],{},[5398,66770,66771,66773],{},[5401,66772,15573],{},[5401,66774,15576],{},[5414,66776,66777,66787,66797,66807,66817,66827],{},[5398,66778,66779,66781],{},[5419,66780,13122],{},[5419,66782,66783,225,66785],{},[16,66784,10733],{},[16,66786,11940],{},[5398,66788,66789,66791],{},[5419,66790,13127],{},[5419,66792,66793,225,66795],{},[16,66794,687],{},[16,66796,203],{},[5398,66798,66799,66801],{},[5419,66800,13132],{},[5419,66802,66803,225,66805],{},[16,66804,9401],{},[16,66806,9091],{},[5398,66808,66809,66811],{},[5419,66810,13137],{},[5419,66812,66813,225,66815],{},[16,66814,8349],{},[16,66816,5294],{},[5398,66818,66819,66821],{},[5419,66820,15623],{},[5419,66822,66823,225,66825],{},[16,66824,6217],{},[16,66826,6276],{},[5398,66828,66829,66831],{},[5419,66830,1646],{},[5419,66832,66833],{},[16,66834,591],{},[3111,66836,66837],{},[21,66838,15642,66839],{},[72,66840,15645],{},[1606,66842,15648],{},{"title":273,"searchDepth":308,"depth":308,"links":66844},[66845,66846,66847,66848,66849,66850,66851,66852,66853,66854,66855,66856,66857,66858,66859,66860,66861,66862,66863],{"id":32,"depth":308,"text":33},{"id":13168,"depth":308,"text":13169},{"id":13236,"depth":308,"text":11937},{"id":11940,"depth":308,"text":11940},{"id":10733,"depth":308,"text":3235},{"id":13579,"depth":308,"text":15657},{"id":13719,"depth":308,"text":15659},{"id":13892,"depth":308,"text":15661},{"id":14032,"depth":308,"text":15663},{"id":14192,"depth":308,"text":15665},{"id":14329,"depth":308,"text":15667},{"id":14603,"depth":308,"text":15669},{"id":14741,"depth":308,"text":15671},{"id":14880,"depth":308,"text":15673},{"id":15050,"depth":308,"text":2331},{"id":15195,"depth":308,"text":2398},{"id":15342,"depth":308,"text":15677},{"id":15492,"depth":308,"text":15493},{"id":15527,"depth":308,"text":1874},{"script":66865},[66866],{"type":1632,"key":1633,"data-nuxt-schema-org":327,"nodes":66867},[66868],{"headline":13087,"author":66869,"datePublished":15689,"@type":1640},{"name":1637,"@type":1638},{"updatedAt":15689,"readingTime":381,"coverCaption":15691,"author":1637,"keywords":66871},[1645,15693,271,971,15694],[66873],{"headline":13087,"author":66874,"datePublished":15689,"@type":1640},{"name":1637,"@type":1638},{"title":13087,"description":15682},[66877,66878,66879,66880],{"tag":1660,"color":1661},{"tag":1668,"color":1669},{"tag":3167,"color":3168},{"tag":9074,"color":9075},{"id":15708,"title":15709,"body":66882,"cover":17748,"coverAlt":15709,"date":17749,"description":17750,"draft":1627,"extension":1628,"head":68578,"locale":1641,"meta":68584,"navigation":327,"path":17764,"schemaOrg":68586,"seo":68589,"series":1656,"seriesDescription":1656,"seriesOrder":1656,"seriesTitle":1656,"slug":1656,"stem":17769,"tags":68590,"__hash__":17777},{"type":8,"value":66883,"toc":68554},[66884,66886,66896,66898,66902,66910,66912,66918,66920,66922,66928,66936,66940,66942,66944,66962,66990,66992,67002,67006,67010,67012,67042,67046,67048,67054,67068,67858,67940,67942,67980,67982,67984,67990,68004,68024,68028,68032,68034,68154,68156,68166,68172,68178,68194,68196,68208,68210,68212,68220,68222,68360,68362,68364,68366,68402,68404,68414,68416,68424,68430,68436,68484,68486,68494,68496,68498,68516,68518,68520,68528,68530,68548,68552],[11,66885,15709],{"id":15714},[21,66887,15717,66888,225,66890,225,66892,225,66894,15726],{},[16,66889,1927],{},[16,66891,12319],{},[16,66893,1732],{},[16,66895,1735],{},[30,66897,15730],{"id":15729},[21,66899,15733,66900,15736],{},[16,66901,1927],{},[38,66903,66904,66906,66908],{},[41,66905,15741],{},[41,66907,15744],{},[41,66909,15747],{},[21,66911,15750],{},[21,66913,15753,66914,118,66916,15759],{},[16,66915,1732],{},[16,66917,15758],{},[30,66919,15763],{"id":15762},[192,66921,15767],{"id":15766},[21,66923,15770,66924,225,66926,15775],{},[16,66925,1732],{},[16,66927,15758],{},[267,66929,66930],{"className":15778,"code":15779,"filename":15780,"language":15781,"meta":273,"style":273},[16,66931,66932],{"__ignoreMap":273},[277,66933,66934],{"class":279,"line":280},[277,66935,15779],{},[21,66937,15790,66938,15794],{},[16,66939,15793],{},[192,66941,15798],{"id":15797},[21,66943,15801],{},[38,66945,66946,66952,66958],{},[41,66947,66948,15809,66950,1895],{},[16,66949,15808],{},[16,66951,1783],{},[41,66953,66954,15817,66956,1895],{},[16,66955,15816],{},[16,66957,1789],{},[41,66959,66960,15825],{},[16,66961,15824],{},[267,66963,66964],{"className":15778,"code":15828,"filename":15829,"language":15781,"meta":273,"style":273},[16,66965,66966,66970,66974,66978,66982,66986],{"__ignoreMap":273},[277,66967,66968],{"class":279,"line":280},[277,66969,15836],{},[277,66971,66972],{"class":279,"line":308},[277,66973,15841],{},[277,66975,66976],{"class":279,"line":324},[277,66977,15846],{},[277,66979,66980],{"class":279,"line":331},[277,66981,15851],{},[277,66983,66984],{"class":279,"line":346},[277,66985,15856],{},[277,66987,66988],{"class":279,"line":360},[277,66989,15861],{},[21,66991,15864],{},[38,66993,66994,66998,67000],{},[41,66995,15869,66996,1895],{},[16,66997,15808],{},[41,66999,15874],{},[41,67001,15877],{},[192,67003,67004,15884],{"id":15880},[16,67005,15883],{},[21,67007,15887,67008,104],{},[16,67009,15883],{},[21,67011,15892],{},[10089,67013,67014,67020,67026,67036],{},[41,67015,15897,67016,15901,67018,104],{},[16,67017,15900],{},[16,67019,15904],{},[41,67021,12305,67022,15910,67024,104],{},[16,67023,15909],{},[16,67025,15913],{},[41,67027,67028,15919,67030,15922,67032,15925,67034,104],{},[16,67029,15918],{},[16,67031,15883],{},[16,67033,15824],{},[16,67035,15793],{},[41,67037,15930,67038,225,67040,15935],{},[16,67039,15909],{},[16,67041,15883],{},[21,67043,15938,67044,15941],{},[16,67045,15883],{},[30,67047,15945],{"id":15944},[21,67049,15948,67050,15951,67052,15954],{},[16,67051,15816],{},[16,67053,15824],{},[38,67055,67056,67060,67064],{},[41,67057,67058],{},[16,67059,15913],{},[41,67061,67062],{},[16,67063,15965],{},[41,67065,67066],{},[16,67067,15900],{},[267,67069,67070],{"className":15972,"code":15973,"filename":15974,"language":15975,"meta":273,"style":273},[16,67071,67072,67076,67090,67094,67098,67108,67118,67122,67134,67148,67156,67160,67170,67174,67178,67196,67210,67216,67224,67232,67244,67252,67272,67278,67282,67286,67294,67302,67306,67316,67322,67326,67330,67336,67340,67344,67360,67372,67376,67390,67400,67412,67420,67424,67428,67442,67452,67464,67472,67476,67480,67494,67502,67510,67514,67518,67522,67538,67552,67564,67568,67582,67594,67598,67612,67628,67642,67646,67650,67666,67672,67680,67688,67694,67698,67702,67706,67710,67722,67732,67750,67756,67766,67770,67792,67802,67816,67830,67836,67840,67846,67850,67854],{"__ignoreMap":273},[277,67073,67074],{"class":279,"line":280},[277,67075,15982],{"class":12741},[277,67077,67078,67080,67082,67084,67086,67088],{"class":279,"line":308},[277,67079,405],{"class":311},[277,67081,15989],{"class":356},[277,67083,340],{"class":311},[277,67085,526],{"class":311},[277,67087,15996],{"class":291},[277,67089,622],{"class":283},[277,67091,67092],{"class":279,"line":324},[277,67093,328],{"emptyLinePlaceholder":327},[277,67095,67096],{"class":279,"line":331},[277,67097,16007],{"class":12741},[277,67099,67100,67102,67104,67106],{"class":279,"line":346},[277,67101,7990],{"class":311},[277,67103,16014],{"class":283},[277,67105,298],{"class":311},[277,67107,6177],{"class":356},[277,67109,67110,67112,67114,67116],{"class":279,"line":360},[277,67111,405],{"class":311},[277,67113,16025],{"class":356},[277,67115,340],{"class":311},[277,67117,16030],{"class":283},[277,67119,67120],{"class":279,"line":371},[277,67121,328],{"emptyLinePlaceholder":327},[277,67123,67124,67126,67128,67130,67132],{"class":279,"line":381},[277,67125,2460],{"class":311},[277,67127,16041],{"class":291},[277,67129,448],{"class":283},[277,67131,16046],{"class":349},[277,67133,2476],{"class":283},[277,67135,67136,67138,67140,67142,67144,67146],{"class":279,"line":391},[277,67137,16053],{"class":311},[277,67139,511],{"class":283},[277,67141,405],{"class":311},[277,67143,16060],{"class":356},[277,67145,16063],{"class":311},[277,67147,16066],{"class":283},[277,67149,67150,67152,67154],{"class":279,"line":397},[277,67151,16071],{"class":283},[277,67153,1807],{"class":291},[277,67155,16076],{"class":283},[277,67157,67158],{"class":279,"line":402},[277,67159,542],{"class":283},[277,67161,67162,67164,67166,67168],{"class":279,"line":436},[277,67163,16085],{"class":283},[277,67165,9813],{"class":356},[277,67167,340],{"class":311},[277,67169,9860],{"class":356},[277,67171,67172],{"class":279,"line":456},[277,67173,394],{"class":283},[277,67175,67176],{"class":279,"line":461},[277,67177,328],{"emptyLinePlaceholder":327},[277,67179,67180,67182,67184,67186,67188,67190,67192,67194],{"class":279,"line":476},[277,67181,2460],{"class":311},[277,67183,16106],{"class":291},[277,67185,448],{"class":283},[277,67187,15909],{"class":349},[277,67189,225],{"class":283},[277,67191,16115],{"class":349},[277,67193,340],{"class":311},[277,67195,16120],{"class":283},[277,67197,67198,67200,67202,67204,67206,67208],{"class":279,"line":500},[277,67199,479],{"class":311},[277,67201,16127],{"class":291},[277,67203,340],{"class":311},[277,67205,598],{"class":283},[277,67207,601],{"class":311},[277,67209,343],{"class":283},[277,67211,67212,67214],{"class":279,"line":505},[277,67213,16140],{"class":291},[277,67215,16076],{"class":283},[277,67217,67218,67220,67222],{"class":279,"line":520},[277,67219,16147],{"class":283},[277,67221,298],{"class":311},[277,67223,16152],{"class":283},[277,67225,67226,67228,67230],{"class":279,"line":539},[277,67227,16157],{"class":283},[277,67229,9780],{"class":291},[277,67231,16076],{"class":283},[277,67233,67234,67236,67238,67240,67242],{"class":279,"line":545},[277,67235,2233],{"class":311},[277,67237,16168],{"class":356},[277,67239,340],{"class":311},[277,67241,16173],{"class":291},[277,67243,622],{"class":283},[277,67245,67246,67248,67250],{"class":279,"line":550},[277,67247,16157],{"class":283},[277,67249,16182],{"class":291},[277,67251,622],{"class":283},[277,67253,67254,67256,67258,67260,67262,67264,67266,67268,67270],{"class":279,"line":578},[277,67255,16147],{"class":283},[277,67257,298],{"class":311},[277,67259,16193],{"class":283},[277,67261,9813],{"class":356},[277,67263,16198],{"class":311},[277,67265,9819],{"class":356},[277,67267,16203],{"class":283},[277,67269,9857],{"class":311},[277,67271,6177],{"class":356},[277,67273,67274,67276],{"class":279,"line":583},[277,67275,1093],{"class":311},[277,67277,16214],{"class":283},[277,67279,67280],{"class":279,"line":588},[277,67281,542],{"class":283},[277,67283,67284],{"class":279,"line":606},[277,67285,328],{"emptyLinePlaceholder":327},[277,67287,67288,67290,67292],{"class":279,"line":614},[277,67289,16227],{"class":283},[277,67291,298],{"class":311},[277,67293,16030],{"class":283},[277,67295,67296,67298,67300],{"class":279,"line":625},[277,67297,16236],{"class":283},[277,67299,298],{"class":311},[277,67301,16241],{"class":283},[277,67303,67304],{"class":279,"line":637},[277,67305,328],{"emptyLinePlaceholder":327},[277,67307,67308,67310,67312,67314],{"class":279,"line":646},[277,67309,508],{"class":311},[277,67311,511],{"class":283},[277,67313,514],{"class":311},[277,67315,16256],{"class":283},[277,67317,67318,67320],{"class":279,"line":668},[277,67319,16261],{"class":291},[277,67321,622],{"class":283},[277,67323,67324],{"class":279,"line":673},[277,67325,542],{"class":283},[277,67327,67328],{"class":279,"line":679},[277,67329,328],{"emptyLinePlaceholder":327},[277,67331,67332,67334],{"class":279,"line":684},[277,67333,2212],{"class":311},[277,67335,16152],{"class":283},[277,67337,67338],{"class":279,"line":700},[277,67339,394],{"class":283},[277,67341,67342],{"class":279,"line":717},[277,67343,328],{"emptyLinePlaceholder":327},[277,67345,67346,67348,67350,67352,67354,67356,67358],{"class":279,"line":722},[277,67347,2460],{"class":311},[277,67349,16292],{"class":291},[277,67351,448],{"class":283},[277,67353,1783],{"class":349},[277,67355,225],{"class":283},[277,67357,1789],{"class":349},[277,67359,2476],{"class":283},[277,67361,67362,67364,67366,67368,67370],{"class":279,"line":729},[277,67363,508],{"class":311},[277,67365,511],{"class":283},[277,67367,514],{"class":311},[277,67369,16313],{"class":283},[277,67371,714],{"class":311},[277,67373,67374],{"class":279,"line":738},[277,67375,328],{"emptyLinePlaceholder":327},[277,67377,67378,67380,67382,67384,67386,67388],{"class":279,"line":747},[277,67379,16324],{"class":311},[277,67381,16327],{"class":283},[277,67383,298],{"class":311},[277,67385,16332],{"class":283},[277,67387,1798],{"class":291},[277,67389,16337],{"class":283},[277,67391,67392,67394,67396,67398],{"class":279,"line":754},[277,67393,508],{"class":311},[277,67395,511],{"class":283},[277,67397,514],{"class":311},[277,67399,16348],{"class":283},[277,67401,67402,67404,67406,67408,67410],{"class":279,"line":772},[277,67403,16353],{"class":283},[277,67405,298],{"class":311},[277,67407,526],{"class":311},[277,67409,16360],{"class":291},[277,67411,622],{"class":283},[277,67413,67414,67416,67418],{"class":279,"line":777},[277,67415,16367],{"class":283},[277,67417,1801],{"class":291},[277,67419,16372],{"class":283},[277,67421,67422],{"class":279,"line":782},[277,67423,542],{"class":283},[277,67425,67426],{"class":279,"line":792},[277,67427,328],{"emptyLinePlaceholder":327},[277,67429,67430,67432,67434,67436,67438,67440],{"class":279,"line":797},[277,67431,16324],{"class":311},[277,67433,16387],{"class":283},[277,67435,298],{"class":311},[277,67437,16392],{"class":283},[277,67439,1798],{"class":291},[277,67441,16397],{"class":283},[277,67443,67444,67446,67448,67450],{"class":279,"line":807},[277,67445,508],{"class":311},[277,67447,511],{"class":283},[277,67449,514],{"class":311},[277,67451,16408],{"class":283},[277,67453,67454,67456,67458,67460,67462],{"class":279,"line":826},[277,67455,16413],{"class":283},[277,67457,298],{"class":311},[277,67459,526],{"class":311},[277,67461,16420],{"class":291},[277,67463,622],{"class":283},[277,67465,67466,67468,67470],{"class":279,"line":849},[277,67467,16427],{"class":283},[277,67469,1801],{"class":291},[277,67471,16432],{"class":283},[277,67473,67474],{"class":279,"line":854},[277,67475,542],{"class":283},[277,67477,67478],{"class":279,"line":876},[277,67479,328],{"emptyLinePlaceholder":327},[277,67481,67482,67484,67486,67488,67490,67492],{"class":279,"line":891},[277,67483,508],{"class":311},[277,67485,511],{"class":283},[277,67487,514],{"class":311},[277,67489,16451],{"class":283},[277,67491,16454],{"class":291},[277,67493,16457],{"class":283},[277,67495,67496,67498,67500],{"class":279,"line":905},[277,67497,16071],{"class":283},[277,67499,1804],{"class":291},[277,67501,16466],{"class":283},[277,67503,67504,67506,67508],{"class":279,"line":919},[277,67505,16471],{"class":283},[277,67507,9780],{"class":291},[277,67509,16476],{"class":283},[277,67511,67512],{"class":279,"line":929},[277,67513,542],{"class":283},[277,67515,67516],{"class":279,"line":934},[277,67517,394],{"class":283},[277,67519,67520],{"class":279,"line":951},[277,67521,328],{"emptyLinePlaceholder":327},[277,67523,67524,67526,67528,67530,67532,67534,67536],{"class":279,"line":961},[277,67525,2460],{"class":311},[277,67527,16495],{"class":291},[277,67529,448],{"class":283},[277,67531,1783],{"class":349},[277,67533,225],{"class":283},[277,67535,1789],{"class":349},[277,67537,2476],{"class":283},[277,67539,67540,67542,67544,67546,67548,67550],{"class":279,"line":1473},[277,67541,479],{"class":311},[277,67543,16512],{"class":356},[277,67545,340],{"class":311},[277,67547,16332],{"class":283},[277,67549,1798],{"class":291},[277,67551,16337],{"class":283},[277,67553,67554,67556,67558,67560,67562],{"class":279,"line":1478},[277,67555,508],{"class":311},[277,67557,511],{"class":283},[277,67559,514],{"class":311},[277,67561,16531],{"class":283},[277,67563,714],{"class":311},[277,67565,67566],{"class":279,"line":1497},[277,67567,328],{"emptyLinePlaceholder":327},[277,67569,67570,67572,67574,67576,67578,67580],{"class":279,"line":1510},[277,67571,479],{"class":311},[277,67573,16060],{"class":356},[277,67575,340],{"class":311},[277,67577,16392],{"class":283},[277,67579,1798],{"class":291},[277,67581,16397],{"class":283},[277,67583,67584,67586,67588,67590,67592],{"class":279,"line":1523},[277,67585,508],{"class":311},[277,67587,511],{"class":283},[277,67589,514],{"class":311},[277,67591,16562],{"class":283},[277,67593,714],{"class":311},[277,67595,67596],{"class":279,"line":1536},[277,67597,328],{"emptyLinePlaceholder":327},[277,67599,67600,67602,67604,67606,67608,67610],{"class":279,"line":1545},[277,67601,479],{"class":311},[277,67603,16575],{"class":356},[277,67605,340],{"class":311},[277,67607,526],{"class":311},[277,67609,16420],{"class":291},[277,67611,622],{"class":283},[277,67613,67614,67616,67618,67620,67622,67624,67626],{"class":279,"line":1550},[277,67615,16588],{"class":283},[277,67617,16591],{"class":291},[277,67619,2334],{"class":283},[277,67621,16046],{"class":349},[277,67623,2340],{"class":283},[277,67625,601],{"class":311},[277,67627,343],{"class":283},[277,67629,67630,67632,67634,67636,67638,67640],{"class":279,"line":1565},[277,67631,1336],{"class":311},[277,67633,16608],{"class":283},[277,67635,6080],{"class":311},[277,67637,16613],{"class":283},[277,67639,1804],{"class":291},[277,67641,16076],{"class":283},[277,67643,67644],{"class":279,"line":1574},[277,67645,2318],{"class":283},[277,67647,67648],{"class":279,"line":4076},[277,67649,328],{"emptyLinePlaceholder":327},[277,67651,67652,67654,67656,67658,67660,67662,67664],{"class":279,"line":4088},[277,67653,16630],{"class":283},[277,67655,16591],{"class":291},[277,67657,2334],{"class":283},[277,67659,16046],{"class":349},[277,67661,2340],{"class":283},[277,67663,601],{"class":311},[277,67665,343],{"class":283},[277,67667,67668,67670],{"class":279,"line":4093},[277,67669,1336],{"class":311},[277,67671,16649],{"class":283},[277,67673,67674,67676,67678],{"class":279,"line":4102},[277,67675,16654],{"class":283},[277,67677,16657],{"class":291},[277,67679,16076],{"class":283},[277,67681,67682,67684,67686],{"class":279,"line":4107},[277,67683,1280],{"class":283},[277,67685,16666],{"class":311},[277,67687,343],{"class":283},[277,67689,67690,67692],{"class":279,"line":4116},[277,67691,16673],{"class":291},[277,67693,622],{"class":283},[277,67695,67696],{"class":279,"line":4133},[277,67697,1126],{"class":283},[277,67699,67700],{"class":279,"line":4143},[277,67701,2318],{"class":283},[277,67703,67704],{"class":279,"line":4157},[277,67705,394],{"class":283},[277,67707,67708],{"class":279,"line":4166},[277,67709,328],{"emptyLinePlaceholder":327},[277,67711,67712,67714,67716,67718,67720],{"class":279,"line":4172},[277,67713,2460],{"class":311},[277,67715,2024],{"class":291},[277,67717,448],{"class":283},[277,67719,16702],{"class":349},[277,67721,2476],{"class":283},[277,67723,67724,67726,67728,67730],{"class":279,"line":4182},[277,67725,2212],{"class":311},[277,67727,526],{"class":311},[277,67729,16713],{"class":291},[277,67731,16716],{"class":283},[277,67733,67734,67736,67738,67740,67742,67744,67746,67748],{"class":279,"line":4191},[277,67735,16721],{"class":291},[277,67737,448],{"class":283},[277,67739,1783],{"class":349},[277,67741,225],{"class":283},[277,67743,1789],{"class":349},[277,67745,225],{"class":283},[277,67747,16734],{"class":349},[277,67749,2476],{"class":283},[277,67751,67752,67754],{"class":279,"line":4196},[277,67753,16741],{"class":291},[277,67755,16744],{"class":283},[277,67757,67758,67760,67762,67764],{"class":279,"line":4220},[277,67759,2754],{"class":311},[277,67761,16751],{"class":283},[277,67763,1798],{"class":291},[277,67765,16756],{"class":283},[277,67767,67768],{"class":279,"line":4234},[277,67769,7016],{"class":283},[277,67771,67772,67774,67776,67778,67780,67782,67784,67786,67788,67790],{"class":279,"line":4247},[277,67773,16765],{"class":291},[277,67775,448],{"class":283},[277,67777,1783],{"class":349},[277,67779,225],{"class":283},[277,67781,1789],{"class":349},[277,67783,225],{"class":283},[277,67785,3885],{"class":349},[277,67787,225],{"class":283},[277,67789,16734],{"class":349},[277,67791,2476],{"class":283},[277,67793,67794,67796,67798,67800],{"class":279,"line":4262},[277,67795,1154],{"class":311},[277,67797,16790],{"class":356},[277,67799,340],{"class":311},[277,67801,16795],{"class":283},[277,67803,67804,67806,67808,67810,67812,67814],{"class":279,"line":4293},[277,67805,1154],{"class":311},[277,67807,16168],{"class":356},[277,67809,340],{"class":311},[277,67811,16751],{"class":283},[277,67813,1801],{"class":291},[277,67815,16810],{"class":283},[277,67817,67818,67820,67822,67824,67826,67828],{"class":279,"line":4302},[277,67819,1177],{"class":311},[277,67821,511],{"class":283},[277,67823,514],{"class":311},[277,67825,16821],{"class":283},[277,67827,16824],{"class":291},[277,67829,16827],{"class":283},[277,67831,67832,67834],{"class":279,"line":4307},[277,67833,16832],{"class":291},[277,67835,16744],{"class":283},[277,67837,67838],{"class":279,"line":4328},[277,67839,1203],{"class":283},[277,67841,67842,67844],{"class":279,"line":4337},[277,67843,2754],{"class":311},[277,67845,16214],{"class":283},[277,67847,67848],{"class":279,"line":4993},[277,67849,1126],{"class":283},[277,67851,67852],{"class":279,"line":5006},[277,67853,2318],{"class":283},[277,67855,67856],{"class":279,"line":5019},[277,67857,394],{"class":283},[267,67859,67860],{"className":15972,"code":16859,"filename":16860,"language":15975,"meta":273,"style":273},[16,67861,67862,67882,67886,67896,67918,67922,67926,67932],{"__ignoreMap":273},[277,67863,67864,67866,67868,67870,67872,67874,67876,67878,67880],{"class":279,"line":280},[277,67865,405],{"class":311},[277,67867,16869],{"class":356},[277,67869,340],{"class":311},[277,67871,2024],{"class":291},[277,67873,16876],{"class":283},[277,67875,3542],{"class":356},[277,67877,16881],{"class":283},[277,67879,2149],{"class":356},[277,67881,16886],{"class":283},[277,67883,67884],{"class":279,"line":308},[277,67885,328],{"emptyLinePlaceholder":327},[277,67887,67888,67890,67892,67894],{"class":279,"line":324},[277,67889,16895],{"class":291},[277,67891,2203],{"class":283},[277,67893,601],{"class":311},[277,67895,343],{"class":283},[277,67897,67898,67900,67902,67904,67906,67908,67910,67912,67914,67916],{"class":279,"line":331},[277,67899,2349],{"class":283},[277,67901,2352],{"class":291},[277,67903,448],{"class":283},[277,67905,16912],{"class":301},[277,67907,16915],{"class":283},[277,67909,2285],{"class":311},[277,67911,16920],{"class":283},[277,67913,353],{"class":311},[277,67915,16925],{"class":301},[277,67917,433],{"class":283},[277,67919,67920],{"class":279,"line":346},[277,67921,676],{"class":283},[277,67923,67924],{"class":279,"line":360},[277,67925,328],{"emptyLinePlaceholder":327},[277,67927,67928,67930],{"class":279,"line":371},[277,67929,16940],{"class":283},[277,67931,9415],{"class":311},[277,67933,67934,67936,67938],{"class":279,"line":381},[277,67935,16947],{"class":283},[277,67937,298],{"class":311},[277,67939,4031],{"class":356},[192,67941,16955],{"id":16954},[10089,67943,67944,67948,67960,67966,67974],{},[41,67945,67946,16962],{},[16,67947,16895],{},[41,67949,16965,67950,1697,67952,16971,67954,16974,67956,16978,67958,104],{},[16,67951,16968],{},[16,67953,16940],{},[16,67955,1798],{},[16,67957,16977],{},[16,67959,15918],{},[41,67961,67962,16985,67964,104],{},[16,67963,15918],{},[16,67965,16988],{},[41,67967,16991,67968,16971,67970,16978,67972,104],{},[16,67969,16940],{},[16,67971,1801],{},[16,67973,16998],{},[41,67975,67976,17003,67978,17006],{},[16,67977,16998],{},[16,67979,15824],{},[21,67981,17009],{},[30,67983,17013],{"id":17012},[192,67985,67986,17019,67988],{"id":17016},[16,67987,12319],{},[16,67989,16977],{},[21,67991,67992,17026,67994,17029,67996,225,67998,225,68000,225,68002,17039],{},[16,67993,12319],{},[16,67995,16977],{},[16,67997,1798],{},[16,67999,1801],{},[16,68001,16454],{},[16,68003,17038],{},[38,68005,68006,68010,68014],{},[41,68007,110,68008,17046],{},[16,68009,1798],{},[41,68011,110,68012,17051],{},[16,68013,1801],{},[41,68015,17054,68016,225,68018,225,68020,225,68022,17064],{},[16,68017,15816],{},[16,68019,15824],{},[16,68021,15808],{},[16,68023,17063],{},[192,68025,68026,17070],{"id":17067},[16,68027,1927],{},[21,68029,17073,68030,104],{},[16,68031,17076],{},[21,68033,17079],{},[267,68035,68036],{"className":15972,"code":17082,"filename":17083,"language":15975,"meta":273,"style":273},[16,68037,68038,68050,68060,68068,68078,68084,68088,68100,68114,68122,68132,68136,68140,68144,68150],{"__ignoreMap":273},[277,68039,68040,68042,68044,68046,68048],{"class":279,"line":280},[277,68041,2460],{"class":311},[277,68043,413],{"class":291},[277,68045,448],{"class":283},[277,68047,17096],{"class":349},[277,68049,2476],{"class":283},[277,68051,68052,68054,68056,68058],{"class":279,"line":308},[277,68053,479],{"class":311},[277,68055,17105],{"class":356},[277,68057,340],{"class":311},[277,68059,343],{"class":283},[277,68061,68062,68064,68066],{"class":279,"line":324},[277,68063,16721],{"class":311},[277,68065,17116],{"class":291},[277,68067,473],{"class":283},[277,68069,68070,68072,68074,68076],{"class":279,"line":331},[277,68071,16741],{"class":291},[277,68073,17125],{"class":283},[277,68075,17128],{"class":301},[277,68077,433],{"class":283},[277,68079,68080,68082],{"class":279,"line":346},[277,68081,2754],{"class":311},[277,68083,17137],{"class":283},[277,68085,68086],{"class":279,"line":360},[277,68087,7016],{"class":283},[277,68089,68090,68092,68094,68096,68098],{"class":279,"line":371},[277,68091,16765],{"class":311},[277,68093,17116],{"class":291},[277,68095,448],{"class":283},[277,68097,1813],{"class":349},[277,68099,2476],{"class":283},[277,68101,68102,68104,68106,68108,68110,68112],{"class":279,"line":381},[277,68103,1177],{"class":311},[277,68105,511],{"class":283},[277,68107,514],{"class":311},[277,68109,16821],{"class":283},[277,68111,16824],{"class":291},[277,68113,17168],{"class":283},[277,68115,68116,68118,68120],{"class":279,"line":391},[277,68117,17173],{"class":283},[277,68119,298],{"class":311},[277,68121,17178],{"class":283},[277,68123,68124,68126,68128,68130],{"class":279,"line":397},[277,68125,16832],{"class":291},[277,68127,17125],{"class":283},[277,68129,17128],{"class":301},[277,68131,433],{"class":283},[277,68133,68134],{"class":279,"line":402},[277,68135,1203],{"class":283},[277,68137,68138],{"class":279,"line":436},[277,68139,1126],{"class":283},[277,68141,68142],{"class":279,"line":456},[277,68143,542],{"class":283},[277,68145,68146,68148],{"class":279,"line":461},[277,68147,2212],{"class":311},[277,68149,17207],{"class":283},[277,68151,68152],{"class":279,"line":476},[277,68153,394],{"class":283},[21,68155,17214],{},[38,68157,68158,68162],{},[41,68159,17219,68160,17222],{},[16,68161,1927],{},[41,68163,17225,68164,17228],{},[16,68165,17076],{},[192,68167,68168,17234,68170],{"id":17231},[16,68169,1732],{},[16,68171,16895],{},[21,68173,68174,17241,68176,17244],{},[16,68175,1732],{},[16,68177,16895],{},[10089,68179,68180,68184,68186,68188],{},[41,68181,17249,68182,104],{},[16,68183,17076],{},[41,68185,17254],{},[41,68187,17257],{},[41,68189,17260,68190,15951,68192,17265],{},[16,68191,15918],{},[16,68193,16998],{},[21,68195,17268],{},[38,68197,68198,68202,68206],{},[41,68199,17273,68200],{},[16,68201,17276],{},[41,68203,17279,68204],{},[16,68205,17282],{},[41,68207,17285],{},[192,68209,17289],{"id":17288},[21,68211,17292],{},[10089,68213,68214,68216,68218],{},[41,68215,17297],{},[41,68217,17300],{},[41,68219,17303],{},[21,68221,17306],{},[267,68223,68224],{"className":15972,"code":17309,"filename":17310,"language":15975,"meta":273,"style":273},[16,68225,68226,68240,68250,68266,68270,68282,68290,68298,68306,68318,68336,68344,68352,68356],{"__ignoreMap":273},[277,68227,68228,68230,68232,68234,68236,68238],{"class":279,"line":280},[277,68229,405],{"class":311},[277,68231,17319],{"class":356},[277,68233,340],{"class":311},[277,68235,526],{"class":311},[277,68237,16420],{"class":291},[277,68239,622],{"class":283},[277,68241,68242,68244,68246,68248],{"class":279,"line":308},[277,68243,7990],{"class":311},[277,68245,17334],{"class":283},[277,68247,298],{"class":311},[277,68249,4031],{"class":356},[277,68251,68252,68254,68256,68258,68260,68262,68264],{"class":279,"line":324},[277,68253,405],{"class":311},[277,68255,17345],{"class":356},[277,68257,340],{"class":311},[277,68259,17350],{"class":356},[277,68261,104],{"class":283},[277,68263,17355],{"class":291},[277,68265,622],{"class":283},[277,68267,68268],{"class":279,"line":331},[277,68269,328],{"emptyLinePlaceholder":327},[277,68271,68272,68274,68276,68278,68280],{"class":279,"line":346},[277,68273,2460],{"class":311},[277,68275,17368],{"class":291},[277,68277,448],{"class":283},[277,68279,17373],{"class":349},[277,68281,2476],{"class":283},[277,68283,68284,68286,68288],{"class":279,"line":360},[277,68285,17380],{"class":283},[277,68287,1804],{"class":291},[277,68289,17385],{"class":283},[277,68291,68292,68294,68296],{"class":279,"line":371},[277,68293,508],{"class":311},[277,68295,17392],{"class":283},[277,68297,714],{"class":311},[277,68299,68300,68302,68304],{"class":279,"line":381},[277,68301,17399],{"class":283},[277,68303,298],{"class":311},[277,68305,2296],{"class":356},[277,68307,68308,68310,68312,68314,68316],{"class":279,"line":391},[277,68309,17408],{"class":283},[277,68311,12255],{"class":291},[277,68313,2203],{"class":283},[277,68315,601],{"class":311},[277,68317,343],{"class":283},[277,68319,68320,68322,68324,68326,68328,68330,68332,68334],{"class":279,"line":397},[277,68321,17421],{"class":283},[277,68323,16591],{"class":291},[277,68325,2334],{"class":283},[277,68327,17428],{"class":349},[277,68329,2340],{"class":283},[277,68331,601],{"class":311},[277,68333,17435],{"class":291},[277,68335,2266],{"class":283},[277,68337,68338,68340,68342],{"class":279,"line":402},[277,68339,17421],{"class":283},[277,68341,17444],{"class":291},[277,68343,622],{"class":283},[277,68345,68346,68348,68350],{"class":279,"line":436},[277,68347,17451],{"class":283},[277,68349,298],{"class":311},[277,68351,4031],{"class":356},[277,68353,68354],{"class":279,"line":456},[277,68355,2318],{"class":283},[277,68357,68358],{"class":279,"line":461},[277,68359,394],{"class":283},[21,68361,17466],{},[30,68363,190],{"id":189},[192,68365,17472],{"id":17471},[267,68367,68368],{"className":15972,"code":17475,"filename":17476,"language":15975,"meta":273,"style":273},[16,68369,68370,68386],{"__ignoreMap":273},[277,68371,68372,68374,68376,68378,68380,68382,68384],{"class":279,"line":280},[277,68373,405],{"class":311},[277,68375,16869],{"class":356},[277,68377,340],{"class":311},[277,68379,2024],{"class":291},[277,68381,16876],{"class":283},[277,68383,3542],{"class":356},[277,68385,16886],{"class":283},[277,68387,68388,68390,68392,68394,68396,68398,68400],{"class":279,"line":308},[277,68389,405],{"class":311},[277,68391,5995],{"class":283},[277,68393,17503],{"class":356},[277,68395,17506],{"class":283},[277,68397,298],{"class":311},[277,68399,17511],{"class":283},[277,68401,17514],{"class":12741},[21,68403,17517],{},[38,68405,68406,68410],{},[41,68407,9292,68408],{},[16,68409,17524],{},[41,68411,17527,68412,104],{},[16,68413,16940],{},[192,68415,17533],{"id":17532},[21,68417,17536,68418,17539,68420,17542,68422,104],{},[16,68419,16977],{},[16,68421,16998],{},[16,68423,17076],{},[192,68425,68426,12494,68428],{"id":17547},[16,68427,17550],{},[16,68429,1927],{},[21,68431,68432,17557,68434,17560],{},[16,68433,17550],{},[16,68435,17076],{},[267,68437,68438],{"className":15972,"code":17563,"filename":17564,"language":15975,"meta":273,"style":273},[16,68439,68440,68456,68466],{"__ignoreMap":273},[277,68441,68442,68444,68446,68448,68450,68452,68454],{"class":279,"line":280},[277,68443,405],{"class":311},[277,68445,17573],{"class":356},[277,68447,340],{"class":311},[277,68449,17578],{"class":291},[277,68451,17581],{"class":283},[277,68453,17584],{"class":301},[277,68455,16886],{"class":283},[277,68457,68458,68460,68462,68464],{"class":279,"line":308},[277,68459,17591],{"class":283},[277,68461,298],{"class":311},[277,68463,17596],{"class":301},[277,68465,17599],{"class":12741},[277,68467,68468,68470,68472,68474,68476,68478,68480,68482],{"class":279,"line":324},[277,68469,17604],{"class":283},[277,68471,298],{"class":311},[277,68473,5995],{"class":283},[277,68475,17611],{"class":311},[277,68477,17614],{"class":283},[277,68479,17617],{"class":301},[277,68481,17506],{"class":283},[277,68483,17622],{"class":12741},[21,68485,17625],{},[38,68487,68488,68490,68492],{},[41,68489,17630],{},[41,68491,17633],{},[41,68493,17636],{},[192,68495,17640],{"id":17639},[21,68497,17643],{},[38,68499,68500,68504,68508,68514],{},[41,68501,17648,68502,17651],{},[16,68503,15758],{},[41,68505,17654,68506,17651],{},[16,68507,1732],{},[41,68509,9292,68510,17661,68512,17664],{},[16,68511,15758],{},[16,68513,1732],{},[41,68515,17667],{},[30,68517,17671],{"id":17670},[21,68519,17674],{},[38,68521,68522,68524,68526],{},[41,68523,17679],{},[41,68525,17682],{},[41,68527,17685],{},[21,68529,17688],{},[38,68531,68532,68534,68536],{},[41,68533,17693],{},[41,68535,17696],{},[41,68537,17699,68538,225,68540,225,68542,225,68544,225,68546,17710],{},[16,68539,1927],{},[16,68541,12319],{},[16,68543,17550],{},[16,68545,1732],{},[16,68547,1735],{},[3111,68549,68550],{},[21,68551,17715],{},[1606,68553,17718],{},{"title":273,"searchDepth":308,"depth":308,"links":68555},[68556,68557,68562,68565,68571,68577],{"id":15729,"depth":308,"text":15730},{"id":15762,"depth":308,"text":15763,"children":68558},[68559,68560,68561],{"id":15766,"depth":324,"text":15767},{"id":15797,"depth":324,"text":15798},{"id":15880,"depth":324,"text":17727},{"id":15944,"depth":308,"text":15945,"children":68563},[68564],{"id":16954,"depth":324,"text":16955},{"id":17012,"depth":308,"text":17013,"children":68566},[68567,68568,68569,68570],{"id":17016,"depth":324,"text":17734},{"id":17067,"depth":324,"text":17736},{"id":17231,"depth":324,"text":17738},{"id":17288,"depth":324,"text":17289},{"id":189,"depth":308,"text":190,"children":68572},[68573,68574,68575,68576],{"id":17471,"depth":324,"text":17472},{"id":17532,"depth":324,"text":17533},{"id":17547,"depth":324,"text":17745},{"id":17639,"depth":324,"text":17640},{"id":17670,"depth":308,"text":17671},{"script":68579},[68580],{"type":1632,"key":1633,"data-nuxt-schema-org":327,"nodes":68581},[68582],{"headline":15709,"author":68583,"datePublished":17757,"@type":1640},{"name":1637,"@type":1638},{"updatedAt":17757,"coverCaption":17759,"author":1637,"keywords":68585},[13114,17761,17762,16657,17763,1732],[68587],{"headline":15709,"author":68588,"datePublished":17757,"@type":1640},{"name":1637,"@type":1638},{"title":15709,"description":17750},[68591,68592,68593,68594],{"tag":3167,"color":3168},{"tag":1665,"color":1666},{"tag":17774,"color":17775},{"tag":1671,"color":1672},{"id":17779,"title":17780,"body":68596,"cover":20561,"coverAlt":20562,"date":20563,"description":20564,"draft":1627,"extension":1628,"head":71095,"locale":1641,"meta":71101,"navigation":327,"path":20577,"schemaOrg":71103,"seo":71106,"series":20582,"seriesDescription":20583,"seriesOrder":402,"seriesTitle":20584,"slug":1656,"stem":20585,"tags":71107,"__hash__":20596},{"type":8,"value":68597,"toc":71080},[68598,68600,68602,68606,68626,68632,68634,68638,68640,68654,68656,68666,68670,68698,68704,68706,68722,68724,68738,68740,68822,68824,68838,68842,69450,69888,69902,69904,69908,70050,70140,70172,70176,70632,70958,71040,71050,71052,71078],[11,68599,17786],{"id":17785},[30,68601,17790],{"id":17789},[21,68603,17793,68604,17797],{},[72,68605,17796],{},[38,68607,68608,68612,68616,68620],{},[41,68609,17802,68610,19],{},[16,68611,17805],{},[41,68613,17808,68614,19],{},[16,68615,17811],{},[41,68617,17814,68618,19],{},[16,68619,17817],{},[41,68621,17820,68622,225,68624,17825],{},[16,68623,7803],{},[16,68625,7628],{},[21,68627,17828,68628,225,68630,17835],{},[72,68629,17831],{},[72,68631,17834],{},[30,68633,61],{"id":60},[21,68635,17840,68636,104],{},[72,68637,17843],{},[21,68639,17846],{},[38,68641,68642,68646,68650],{},[41,68643,68644,17853],{},[16,68645,203],{},[41,68647,68648,17858],{},[16,68649,9091],{},[41,68651,68652,17863],{},[16,68653,5294],{},[21,68655,17866],{},[38,68657,68658],{},[41,68659,68660,225,68662,225,68664],{},[16,68661,10670],{},[16,68663,9088],{},[16,68665,7514],{},[21,68667,17879,68668,17883],{},[16,68669,17882],{},[38,68671,68672,68678,68686,68692],{},[41,68673,68674,17891,68676,1895],{},[16,68675,17890],{},[16,68677,17894],{},[41,68679,68680,17900,68682,15951,68684,1895],{},[16,68681,17899],{},[16,68683,9088],{},[16,68685,9091],{},[41,68687,68688,17910,68690,1895],{},[16,68689,17909],{},[16,68691,17913],{},[41,68693,68694,17919,68696,1895],{},[16,68695,17918],{},[16,68697,17922],{},[21,68699,17925,68700,17929,68702,104],{},[72,68701,17928],{},[72,68703,17932],{},[30,68705,17936],{"id":17935},[10089,68707,68708,68710,68716],{},[41,68709,17941],{},[41,68711,17944,68712,225,68714,17949],{},[16,68713,7803],{},[16,68715,7628],{},[41,68717,17952,68718,225,68720,1895],{},[16,68719,17805],{},[16,68721,17817],{},[30,68723,17960],{"id":17959},[10089,68725,68726,68728,68736],{},[41,68727,17965],{},[41,68729,17968,68730,225,68732,225,68734,1895],{},[16,68731,17971],{},[16,68733,17974],{},[16,68735,17977],{},[41,68737,17980],{},[30,68739,190],{"id":189},[10089,68741,68742,68758,68774,68790,68806],{},[41,68743,68744,68748],{},[72,68745,17989,68746,104],{},[16,68747,5294],{},[38,68749,68750,68754],{},[41,68751,17996,68752,17999],{},[16,68753,203],{},[41,68755,18002,68756,104],{},[16,68757,5294],{},[41,68759,68760,68762],{},[72,68761,18009],{},[38,68763,68764,68766],{},[41,68765,18014],{},[41,68767,18017,68768,225,68770,1697,68772,104],{},[16,68769,3885],{},[16,68771,18022],{},[16,68773,18025],{},[41,68775,68776,68778],{},[72,68777,18030],{},[38,68779,68780,68782],{},[41,68781,18035],{},[41,68783,18038,68784,225,68786,225,68788,18046],{},[16,68785,18041],{},[16,68787,4201],{},[16,68789,4267],{},[41,68791,68792,68794],{},[72,68793,18051],{},[38,68795,68796,68802],{},[41,68797,18056,68798,18059,68800,18062],{},[16,68799,203],{},[16,68801,17890],{},[41,68803,18065,68804,104],{},[16,68805,9091],{},[41,68807,68808,68812],{},[72,68809,18072,68810,104],{},[16,68811,9091],{},[38,68813,68814,68816],{},[41,68815,18079],{},[41,68817,18082,68818,1697,68820,18087],{},[16,68819,17890],{},[16,68821,17899],{},[30,68823,1946],{"id":1945},[38,68825,68826,68830,68834],{},[41,68827,68828,18096],{},[16,68829,17805],{},[41,68831,68832,18101],{},[16,68833,17817],{},[41,68835,68836,18107],{},[16,68837,18106],{},[192,68839,68840,18113],{"id":18110},[16,68841,17817],{},[267,68843,68844],{"className":269,"code":18116,"filename":271,"language":272,"meta":273,"style":273},[16,68845,68846,68862,68876,68888,68892,68916,68920,68934,68956,68966,68970,68974,68990,68994,69018,69032,69052,69056,69060,69068,69072,69094,69114,69128,69132,69136,69150,69158,69162,69166,69170,69178,69182,69186,69202,69206,69210,69224,69228,69244,69252,69256,69260,69264,69274,69280,69296,69300,69306,69312,69316,69320,69328,69332,69340,69354,69378,69382,69402,69414,69426,69434,69442],{"__ignoreMap":273},[277,68847,68848,68850,68852,68854,68856,68858,68860],{"class":279,"line":280},[277,68849,284],{"class":283},[277,68851,288],{"class":287},[277,68853,292],{"class":291},[277,68855,295],{"class":291},[277,68857,298],{"class":283},[277,68859,302],{"class":301},[277,68861,305],{"class":283},[277,68863,68864,68866,68868,68870,68872,68874],{"class":279,"line":308},[277,68865,312],{"class":311},[277,68867,4270],{"class":311},[277,68869,18143],{"class":283},[277,68871,318],{"class":311},[277,68873,18148],{"class":301},[277,68875,18151],{"class":283},[277,68877,68878,68880,68882,68884,68886],{"class":279,"line":324},[277,68879,312],{"class":311},[277,68881,11006],{"class":283},[277,68883,318],{"class":311},[277,68885,18148],{"class":301},[277,68887,18151],{"class":283},[277,68889,68890],{"class":279,"line":331},[277,68891,328],{"emptyLinePlaceholder":327},[277,68893,68894,68896,68898,68900,68902,68904,68906,68908,68910,68912,68914],{"class":279,"line":346},[277,68895,334],{"class":311},[277,68897,18174],{"class":291},[277,68899,340],{"class":311},[277,68901,511],{"class":283},[277,68903,2337],{"class":349},[277,68905,353],{"class":311},[277,68907,18185],{"class":291},[277,68909,2340],{"class":283},[277,68911,601],{"class":311},[277,68913,18192],{"class":356},[277,68915,18151],{"class":283},[277,68917,68918],{"class":279,"line":360},[277,68919,328],{"emptyLinePlaceholder":327},[277,68921,68922,68924,68926,68928,68930,68932],{"class":279,"line":371},[277,68923,334],{"class":311},[277,68925,18205],{"class":291},[277,68927,340],{"class":311},[277,68929,18210],{"class":291},[277,68931,18213],{"class":311},[277,68933,343],{"class":283},[277,68935,68936,68938,68940,68942,68944,68946,68948,68950,68952,68954],{"class":279,"line":381},[277,68937,18220],{"class":291},[277,68939,18223],{"class":311},[277,68941,511],{"class":283},[277,68943,2337],{"class":349},[277,68945,353],{"class":311},[277,68947,18185],{"class":291},[277,68949,2340],{"class":283},[277,68951,601],{"class":311},[277,68953,18192],{"class":356},[277,68955,18151],{"class":283},[277,68957,68958,68960,68962,68964],{"class":279,"line":391},[277,68959,18244],{"class":349},[277,68961,18223],{"class":311},[277,68963,18174],{"class":291},[277,68965,18151],{"class":283},[277,68967,68968],{"class":279,"line":397},[277,68969,18255],{"class":283},[277,68971,68972],{"class":279,"line":402},[277,68973,328],{"emptyLinePlaceholder":327},[277,68975,68976,68978,68980,68982,68984,68986,68988],{"class":279,"line":436},[277,68977,405],{"class":311},[277,68979,18266],{"class":356},[277,68981,340],{"class":311},[277,68983,413],{"class":291},[277,68985,448],{"class":283},[277,68987,2123],{"class":356},[277,68989,18277],{"class":283},[277,68991,68992],{"class":279,"line":456},[277,68993,328],{"emptyLinePlaceholder":327},[277,68995,68996,68998,69000,69002,69004,69006,69008,69010,69012,69014,69016],{"class":279,"line":461},[277,68997,405],{"class":311},[277,68999,18288],{"class":356},[277,69001,353],{"class":311},[277,69003,18293],{"class":291},[277,69005,284],{"class":283},[277,69007,18298],{"class":291},[277,69009,225],{"class":283},[277,69011,18303],{"class":291},[277,69013,18306],{"class":283},[277,69015,298],{"class":311},[277,69017,343],{"class":283},[277,69019,69020,69022,69024,69026,69028,69030],{"class":279,"line":476},[277,69021,6784],{"class":291},[277,69023,448],{"class":283},[277,69025,18319],{"class":349},[277,69027,225],{"class":283},[277,69029,17882],{"class":349},[277,69031,2476],{"class":283},[277,69033,69034,69036,69038,69040,69042,69044,69046,69048,69050],{"class":279,"line":500},[277,69035,1336],{"class":311},[277,69037,511],{"class":283},[277,69039,5784],{"class":311},[277,69041,18336],{"class":283},[277,69043,6080],{"class":311},[277,69045,18341],{"class":301},[277,69047,2340],{"class":283},[277,69049,18346],{"class":311},[277,69051,18151],{"class":283},[277,69053,69054],{"class":279,"line":505},[277,69055,328],{"emptyLinePlaceholder":327},[277,69057,69058],{"class":279,"line":520},[277,69059,18357],{"class":12741},[277,69061,69062,69064,69066],{"class":279,"line":539},[277,69063,18362],{"class":283},[277,69065,298],{"class":311},[277,69067,18367],{"class":283},[277,69069,69070],{"class":279,"line":545},[277,69071,328],{"emptyLinePlaceholder":327},[277,69073,69074,69076,69078,69080,69082,69084,69086,69088,69090,69092],{"class":279,"line":550},[277,69075,2233],{"class":311},[277,69077,18378],{"class":291},[277,69079,340],{"class":311},[277,69081,511],{"class":283},[277,69083,2337],{"class":349},[277,69085,353],{"class":311},[277,69087,18185],{"class":291},[277,69089,2340],{"class":283},[277,69091,601],{"class":311},[277,69093,343],{"class":283},[277,69095,69096,69098,69100,69102,69104,69106,69108,69110,69112],{"class":279,"line":578},[277,69097,1154],{"class":311},[277,69099,18401],{"class":356},[277,69101,340],{"class":311},[277,69103,18406],{"class":283},[277,69105,572],{"class":311},[277,69107,18411],{"class":291},[277,69109,421],{"class":311},[277,69111,424],{"class":356},[277,69113,18151],{"class":283},[277,69115,69116,69118,69120,69122,69124,69126],{"class":279,"line":583},[277,69117,1177],{"class":311},[277,69119,511],{"class":283},[277,69121,514],{"class":311},[277,69123,18428],{"class":283},[277,69125,18346],{"class":311},[277,69127,18151],{"class":283},[277,69129,69130],{"class":279,"line":588},[277,69131,328],{"emptyLinePlaceholder":327},[277,69133,69134],{"class":279,"line":606},[277,69135,18441],{"class":12741},[277,69137,69138,69140,69142,69144,69146,69148],{"class":279,"line":614},[277,69139,1177],{"class":311},[277,69141,511],{"class":283},[277,69143,514],{"class":311},[277,69145,18452],{"class":283},[277,69147,18455],{"class":291},[277,69149,18458],{"class":283},[277,69151,69152,69154,69156],{"class":279,"line":625},[277,69153,18463],{"class":283},[277,69155,18466],{"class":291},[277,69157,18469],{"class":283},[277,69159,69160],{"class":279,"line":637},[277,69161,1203],{"class":283},[277,69163,69164],{"class":279,"line":646},[277,69165,18478],{"class":283},[277,69167,69168],{"class":279,"line":668},[277,69169,328],{"emptyLinePlaceholder":327},[277,69171,69172,69174,69176],{"class":279,"line":673},[277,69173,18487],{"class":283},[277,69175,298],{"class":311},[277,69177,18492],{"class":283},[277,69179,69180],{"class":279,"line":679},[277,69181,328],{"emptyLinePlaceholder":327},[277,69183,69184],{"class":279,"line":684},[277,69185,18501],{"class":12741},[277,69187,69188,69190,69192,69194,69196,69198,69200],{"class":279,"line":700},[277,69189,18506],{"class":283},[277,69191,8252],{"class":291},[277,69193,448],{"class":283},[277,69195,18513],{"class":301},[277,69197,18516],{"class":283},[277,69199,2149],{"class":356},[277,69201,18277],{"class":283},[277,69203,69204],{"class":279,"line":717},[277,69205,1131],{"class":283},[277,69207,69208],{"class":279,"line":722},[277,69209,328],{"emptyLinePlaceholder":327},[277,69211,69212,69214,69216,69218,69220,69222],{"class":279,"line":729},[277,69213,10319],{"class":291},[277,69215,448],{"class":283},[277,69217,18319],{"class":349},[277,69219,225],{"class":283},[277,69221,17882],{"class":349},[277,69223,2476],{"class":283},[277,69225,69226],{"class":279,"line":738},[277,69227,18547],{"class":12741},[277,69229,69230,69232,69234,69236,69238,69240,69242],{"class":279,"line":747},[277,69231,1336],{"class":311},[277,69233,511],{"class":283},[277,69235,5784],{"class":311},[277,69237,18336],{"class":283},[277,69239,2503],{"class":311},[277,69241,18341],{"class":301},[277,69243,2476],{"class":283},[277,69245,69246,69248,69250],{"class":279,"line":754},[277,69247,18568],{"class":283},[277,69249,298],{"class":311},[277,69251,18367],{"class":283},[277,69253,69254],{"class":279,"line":772},[277,69255,1126],{"class":283},[277,69257,69258],{"class":279,"line":777},[277,69259,1131],{"class":283},[277,69261,69262],{"class":279,"line":782},[277,69263,328],{"emptyLinePlaceholder":327},[277,69265,69266,69268,69270,69272],{"class":279,"line":792},[277,69267,8668],{"class":291},[277,69269,448],{"class":283},[277,69271,18319],{"class":349},[277,69273,2476],{"class":283},[277,69275,69276,69278],{"class":279,"line":797},[277,69277,1336],{"class":311},[277,69279,18601],{"class":283},[277,69281,69282,69284,69286,69288,69290,69292,69294],{"class":279,"line":807},[277,69283,18606],{"class":283},[277,69285,8308],{"class":291},[277,69287,448],{"class":283},[277,69289,18513],{"class":301},[277,69291,18615],{"class":283},[277,69293,2149],{"class":356},[277,69295,18277],{"class":283},[277,69297,69298],{"class":279,"line":826},[277,69299,1126],{"class":283},[277,69301,69302,69304],{"class":279,"line":849},[277,69303,18628],{"class":311},[277,69305,18631],{"class":283},[277,69307,69308,69310],{"class":279,"line":854},[277,69309,18628],{"class":311},[277,69311,18638],{"class":283},[277,69313,69314],{"class":279,"line":876},[277,69315,1131],{"class":283},[277,69317,69318],{"class":279,"line":891},[277,69319,18255],{"class":283},[277,69321,69322,69324,69326],{"class":279,"line":905},[277,69323,785],{"class":283},[277,69325,288],{"class":287},[277,69327,305],{"class":283},[277,69329,69330],{"class":279,"line":919},[277,69331,328],{"emptyLinePlaceholder":327},[277,69333,69334,69336,69338],{"class":279,"line":929},[277,69335,284],{"class":283},[277,69337,802],{"class":287},[277,69339,305],{"class":283},[277,69341,69342,69344,69346,69348,69350,69352],{"class":279,"line":934},[277,69343,810],{"class":283},[277,69345,4121],{"class":287},[277,69347,816],{"class":291},[277,69349,298],{"class":283},[277,69351,18679],{"class":301},[277,69353,305],{"class":283},[277,69355,69356,69358,69360,69362,69364,69366,69368,69370,69372,69374,69376],{"class":279,"line":951},[277,69357,829],{"class":283},[277,69359,4267],{"class":287},[277,69361,4270],{"class":291},[277,69363,298],{"class":283},[277,69365,4275],{"class":301},[277,69367,4278],{"class":291},[277,69369,298],{"class":283},[277,69371,18700],{"class":301},[277,69373,18703],{"class":283},[277,69375,4267],{"class":287},[277,69377,305],{"class":283},[277,69379,69380],{"class":279,"line":961},[277,69381,328],{"emptyLinePlaceholder":327},[277,69383,69384,69386,69388,69390,69392,69394,69396,69398,69400],{"class":279,"line":1473},[277,69385,829],{"class":283},[277,69387,4201],{"class":287},[277,69389,834],{"class":291},[277,69391,298],{"class":283},[277,69393,18724],{"class":301},[277,69395,18727],{"class":291},[277,69397,298],{"class":283},[277,69399,18732],{"class":301},[277,69401,305],{"class":283},[277,69403,69404,69406,69408,69410,69412],{"class":279,"line":1478},[277,69405,879],{"class":283},[277,69407,21],{"class":287},[277,69409,18743],{"class":283},[277,69411,21],{"class":287},[277,69413,305],{"class":283},[277,69415,69416,69418,69420,69422,69424],{"class":279,"line":1497},[277,69417,879],{"class":283},[277,69419,21],{"class":287},[277,69421,18756],{"class":283},[277,69423,21],{"class":287},[277,69425,305],{"class":283},[277,69427,69428,69430,69432],{"class":279,"line":1510},[277,69429,922],{"class":283},[277,69431,4201],{"class":287},[277,69433,305],{"class":283},[277,69435,69436,69438,69440],{"class":279,"line":1523},[277,69437,954],{"class":283},[277,69439,4121],{"class":287},[277,69441,305],{"class":283},[277,69443,69444,69446,69448],{"class":279,"line":1536},[277,69445,785],{"class":283},[277,69447,802],{"class":287},[277,69449,305],{"class":283},[267,69451,69452],{"className":269,"code":18787,"filename":971,"language":272,"meta":273,"style":273},[16,69453,69454,69462,69470,69478,69484,69490,69498,69502,69506,69510,69514,69528,69548,69552,69560,69564,69582,69592,69608,69616,69620,69624,69628,69644,69648,69662,69678,69686,69690,69694,69704,69710,69726,69730,69736,69742,69746,69750,69754,69758,69766,69770,69778,69792,69816,69820,69840,69852,69864,69872,69880],{"__ignoreMap":273},[277,69455,69456,69458,69460],{"class":279,"line":280},[277,69457,284],{"class":283},[277,69459,288],{"class":287},[277,69461,305],{"class":283},[277,69463,69464,69466,69468],{"class":279,"line":308},[277,69465,1057],{"class":311},[277,69467,1060],{"class":311},[277,69469,343],{"class":283},[277,69471,69472,69474,69476],{"class":279,"line":324},[277,69473,1071],{"class":283},[277,69475,18812],{"class":301},[277,69477,1077],{"class":283},[277,69479,69480,69482],{"class":279,"line":331},[277,69481,1086],{"class":291},[277,69483,473],{"class":283},[277,69485,69486,69488],{"class":279,"line":346},[277,69487,1093],{"class":311},[277,69489,343],{"class":283},[277,69491,69492,69494,69496],{"class":279,"line":360},[277,69493,18831],{"class":283},[277,69495,2123],{"class":356},[277,69497,1077],{"class":283},[277,69499,69500],{"class":279,"line":371},[277,69501,18478],{"class":283},[277,69503,69504],{"class":279,"line":381},[277,69505,1131],{"class":283},[277,69507,69508],{"class":279,"line":391},[277,69509,18848],{"class":283},[277,69511,69512],{"class":279,"line":397},[277,69513,18853],{"class":283},[277,69515,69516,69518,69520,69522,69524,69526],{"class":279,"line":402},[277,69517,18858],{"class":291},[277,69519,448],{"class":283},[277,69521,18319],{"class":349},[277,69523,225],{"class":283},[277,69525,17882],{"class":349},[277,69527,2476],{"class":283},[277,69529,69530,69532,69534,69536,69538,69540,69542,69544,69546],{"class":279,"line":436},[277,69531,8842],{"class":311},[277,69533,511],{"class":283},[277,69535,5784],{"class":311},[277,69537,18336],{"class":283},[277,69539,6080],{"class":311},[277,69541,18341],{"class":301},[277,69543,2340],{"class":283},[277,69545,18346],{"class":311},[277,69547,18151],{"class":283},[277,69549,69550],{"class":279,"line":456},[277,69551,328],{"emptyLinePlaceholder":327},[277,69553,69554,69556,69558],{"class":279,"line":461},[277,69555,18897],{"class":283},[277,69557,298],{"class":311},[277,69559,18367],{"class":283},[277,69561,69562],{"class":279,"line":476},[277,69563,328],{"emptyLinePlaceholder":327},[277,69565,69566,69568,69570,69572,69574,69576,69578,69580],{"class":279,"line":500},[277,69567,18463],{"class":283},[277,69569,18912],{"class":291},[277,69571,340],{"class":311},[277,69573,511],{"class":283},[277,69575,2337],{"class":349},[277,69577,2340],{"class":283},[277,69579,601],{"class":311},[277,69581,343],{"class":283},[277,69583,69584,69586,69588,69590],{"class":279,"line":505},[277,69585,18929],{"class":311},[277,69587,18401],{"class":356},[277,69589,340],{"class":311},[277,69591,18936],{"class":283},[277,69593,69594,69596,69598,69600,69602,69604,69606],{"class":279,"line":520},[277,69595,18941],{"class":311},[277,69597,18944],{"class":283},[277,69599,2310],{"class":311},[277,69601,2288],{"class":311},[277,69603,18452],{"class":283},[277,69605,18455],{"class":291},[277,69607,18458],{"class":283},[277,69609,69610,69612,69614],{"class":279,"line":539},[277,69611,18959],{"class":283},[277,69613,18466],{"class":291},[277,69615,18469],{"class":283},[277,69617,69618],{"class":279,"line":545},[277,69619,18968],{"class":283},[277,69621,69622],{"class":279,"line":550},[277,69623,18973],{"class":283},[277,69625,69626],{"class":279,"line":578},[277,69627,328],{"emptyLinePlaceholder":327},[277,69629,69630,69632,69634,69636,69638,69640,69642],{"class":279,"line":583},[277,69631,18982],{"class":283},[277,69633,8252],{"class":291},[277,69635,448],{"class":283},[277,69637,18513],{"class":301},[277,69639,18615],{"class":283},[277,69641,2149],{"class":356},[277,69643,18277],{"class":283},[277,69645,69646],{"class":279,"line":588},[277,69647,2629],{"class":283},[277,69649,69650,69652,69654,69656,69658,69660],{"class":279,"line":606},[277,69651,19003],{"class":291},[277,69653,448],{"class":283},[277,69655,18319],{"class":349},[277,69657,225],{"class":283},[277,69659,17882],{"class":349},[277,69661,2476],{"class":283},[277,69663,69664,69666,69668,69670,69672,69674,69676],{"class":279,"line":614},[277,69665,8842],{"class":311},[277,69667,511],{"class":283},[277,69669,5784],{"class":311},[277,69671,18336],{"class":283},[277,69673,2503],{"class":311},[277,69675,18341],{"class":301},[277,69677,2476],{"class":283},[277,69679,69680,69682,69684],{"class":279,"line":625},[277,69681,19034],{"class":283},[277,69683,298],{"class":311},[277,69685,18367],{"class":283},[277,69687,69688],{"class":279,"line":637},[277,69689,8868],{"class":283},[277,69691,69692],{"class":279,"line":646},[277,69693,2629],{"class":283},[277,69695,69696,69698,69700,69702],{"class":279,"line":668},[277,69697,19051],{"class":291},[277,69699,448],{"class":283},[277,69701,18319],{"class":349},[277,69703,2476],{"class":283},[277,69705,69706,69708],{"class":279,"line":673},[277,69707,8842],{"class":311},[277,69709,18601],{"class":283},[277,69711,69712,69714,69716,69718,69720,69722,69724],{"class":279,"line":679},[277,69713,19068],{"class":283},[277,69715,8308],{"class":291},[277,69717,448],{"class":283},[277,69719,18513],{"class":301},[277,69721,18615],{"class":283},[277,69723,2149],{"class":356},[277,69725,18277],{"class":283},[277,69727,69728],{"class":279,"line":684},[277,69729,8868],{"class":283},[277,69731,69732,69734],{"class":279,"line":700},[277,69733,19089],{"class":311},[277,69735,18631],{"class":283},[277,69737,69738,69740],{"class":279,"line":717},[277,69739,19089],{"class":311},[277,69741,18638],{"class":283},[277,69743,69744],{"class":279,"line":722},[277,69745,2629],{"class":283},[277,69747,69748],{"class":279,"line":729},[277,69749,7016],{"class":283},[277,69751,69752],{"class":279,"line":738},[277,69753,1131],{"class":283},[277,69755,69756],{"class":279,"line":747},[277,69757,18255],{"class":283},[277,69759,69760,69762,69764],{"class":279,"line":754},[277,69761,785],{"class":283},[277,69763,288],{"class":287},[277,69765,305],{"class":283},[277,69767,69768],{"class":279,"line":772},[277,69769,328],{"emptyLinePlaceholder":327},[277,69771,69772,69774,69776],{"class":279,"line":777},[277,69773,284],{"class":283},[277,69775,802],{"class":287},[277,69777,305],{"class":283},[277,69779,69780,69782,69784,69786,69788,69790],{"class":279,"line":782},[277,69781,810],{"class":283},[277,69783,4121],{"class":287},[277,69785,816],{"class":291},[277,69787,298],{"class":283},[277,69789,18679],{"class":301},[277,69791,305],{"class":283},[277,69793,69794,69796,69798,69800,69802,69804,69806,69808,69810,69812,69814],{"class":279,"line":792},[277,69795,829],{"class":283},[277,69797,4267],{"class":287},[277,69799,4270],{"class":291},[277,69801,298],{"class":283},[277,69803,4275],{"class":301},[277,69805,4278],{"class":291},[277,69807,298],{"class":283},[277,69809,18700],{"class":301},[277,69811,18703],{"class":283},[277,69813,4267],{"class":287},[277,69815,305],{"class":283},[277,69817,69818],{"class":279,"line":797},[277,69819,328],{"emptyLinePlaceholder":327},[277,69821,69822,69824,69826,69828,69830,69832,69834,69836,69838],{"class":279,"line":807},[277,69823,829],{"class":283},[277,69825,4201],{"class":287},[277,69827,834],{"class":291},[277,69829,298],{"class":283},[277,69831,18724],{"class":301},[277,69833,18727],{"class":291},[277,69835,298],{"class":283},[277,69837,18732],{"class":301},[277,69839,305],{"class":283},[277,69841,69842,69844,69846,69848,69850],{"class":279,"line":826},[277,69843,879],{"class":283},[277,69845,21],{"class":287},[277,69847,18743],{"class":283},[277,69849,21],{"class":287},[277,69851,305],{"class":283},[277,69853,69854,69856,69858,69860,69862],{"class":279,"line":849},[277,69855,879],{"class":283},[277,69857,21],{"class":287},[277,69859,18756],{"class":283},[277,69861,21],{"class":287},[277,69863,305],{"class":283},[277,69865,69866,69868,69870],{"class":279,"line":854},[277,69867,922],{"class":283},[277,69869,4201],{"class":287},[277,69871,305],{"class":283},[277,69873,69874,69876,69878],{"class":279,"line":876},[277,69875,954],{"class":283},[277,69877,4121],{"class":287},[277,69879,305],{"class":283},[277,69881,69882,69884,69886],{"class":279,"line":891},[277,69883,785],{"class":283},[277,69885,802],{"class":287},[277,69887,305],{"class":283},[3111,69889,69890],{},[21,69891,110,69892,19251,69894,19255,69896,19259,69898,15901,69900,1895],{},[16,69893,19250],{},[72,69895,19254],{},[16,69897,19258],{},[16,69899,19262],{},[16,69901,17817],{},[30,69903,19268],{"id":19267},[192,69905,69906,19274],{"id":19271},[16,69907,17805],{},[267,69909,69910],{"className":19277,"code":19278,"filename":19279,"language":19280,"meta":273,"style":273},[16,69911,69912,69926,69930,69960,69974,69978,69994,69998,70002,70024,70038,70042,70046],{"__ignoreMap":273},[277,69913,69914,69916,69918,69920,69922,69924],{"class":279,"line":280},[277,69915,312],{"class":311},[277,69917,4270],{"class":311},[277,69919,18143],{"class":283},[277,69921,318],{"class":311},[277,69923,18148],{"class":301},[277,69925,18151],{"class":283},[277,69927,69928],{"class":279,"line":308},[277,69929,328],{"emptyLinePlaceholder":327},[277,69931,69932,69934,69936,69938,69940,69942,69944,69946,69948,69950,69952,69954,69956,69958],{"class":279,"line":324},[277,69933,1057],{"class":311},[277,69935,19307],{"class":311},[277,69937,19310],{"class":356},[277,69939,353],{"class":311},[277,69941,18293],{"class":291},[277,69943,284],{"class":283},[277,69945,19319],{"class":291},[277,69947,225],{"class":283},[277,69949,19324],{"class":356},[277,69951,421],{"class":311},[277,69953,19329],{"class":356},[277,69955,18306],{"class":283},[277,69957,298],{"class":311},[277,69959,343],{"class":283},[277,69961,69962,69964,69966,69968,69970,69972],{"class":279,"line":331},[277,69963,6784],{"class":291},[277,69965,448],{"class":283},[277,69967,18319],{"class":349},[277,69969,225],{"class":283},[277,69971,17882],{"class":349},[277,69973,2476],{"class":283},[277,69975,69976],{"class":279,"line":346},[277,69977,19354],{"class":12741},[277,69979,69980,69982,69984,69986,69988,69990,69992],{"class":279,"line":360},[277,69981,1336],{"class":311},[277,69983,19361],{"class":283},[277,69985,2503],{"class":311},[277,69987,19366],{"class":356},[277,69989,2340],{"class":283},[277,69991,18346],{"class":311},[277,69993,18151],{"class":283},[277,69995,69996],{"class":279,"line":371},[277,69997,328],{"emptyLinePlaceholder":327},[277,69999,70000],{"class":279,"line":381},[277,70001,19381],{"class":12741},[277,70003,70004,70006,70008,70010,70012,70014,70016,70018,70020,70022],{"class":279,"line":391},[277,70005,1336],{"class":311},[277,70007,511],{"class":283},[277,70009,5784],{"class":311},[277,70011,19392],{"class":283},[277,70013,572],{"class":311},[277,70015,19397],{"class":356},[277,70017,19400],{"class":283},[277,70019,2503],{"class":311},[277,70021,18341],{"class":301},[277,70023,2476],{"class":283},[277,70025,70026,70028,70030,70032,70034,70036],{"class":279,"line":397},[277,70027,19411],{"class":283},[277,70029,572],{"class":311},[277,70031,19397],{"class":356},[277,70033,1895],{"class":283},[277,70035,11476],{"class":291},[277,70037,19422],{"class":283},[277,70039,70040],{"class":279,"line":402},[277,70041,1126],{"class":283},[277,70043,70044],{"class":279,"line":436},[277,70045,1131],{"class":283},[277,70047,70048],{"class":279,"line":456},[277,70049,18255],{"class":283},[267,70051,70052],{"className":15972,"code":19437,"filename":19438,"language":15975,"meta":273,"style":273},[16,70053,70054,70066,70080,70084,70100,70104,70120,70128,70132,70136],{"__ignoreMap":273},[277,70055,70056,70058,70060,70062,70064],{"class":279,"line":280},[277,70057,1057],{"class":311},[277,70059,19307],{"class":311},[277,70061,19310],{"class":356},[277,70063,340],{"class":311},[277,70065,343],{"class":283},[277,70067,70068,70070,70072,70074,70076,70078],{"class":279,"line":308},[277,70069,6784],{"class":291},[277,70071,448],{"class":283},[277,70073,18319],{"class":349},[277,70075,225],{"class":283},[277,70077,17882],{"class":349},[277,70079,2476],{"class":283},[277,70081,70082],{"class":279,"line":324},[277,70083,19354],{"class":12741},[277,70085,70086,70088,70090,70092,70094,70096,70098],{"class":279,"line":331},[277,70087,1336],{"class":311},[277,70089,19361],{"class":283},[277,70091,2503],{"class":311},[277,70093,19366],{"class":356},[277,70095,2340],{"class":283},[277,70097,18346],{"class":311},[277,70099,18151],{"class":283},[277,70101,70102],{"class":279,"line":346},[277,70103,19381],{"class":12741},[277,70105,70106,70108,70110,70112,70114,70116,70118],{"class":279,"line":360},[277,70107,1336],{"class":311},[277,70109,511],{"class":283},[277,70111,5784],{"class":311},[277,70113,19501],{"class":283},[277,70115,2503],{"class":311},[277,70117,18341],{"class":301},[277,70119,2476],{"class":283},[277,70121,70122,70124,70126],{"class":279,"line":371},[277,70123,19512],{"class":283},[277,70125,11476],{"class":291},[277,70127,19422],{"class":283},[277,70129,70130],{"class":279,"line":381},[277,70131,1126],{"class":283},[277,70133,70134],{"class":279,"line":391},[277,70135,1131],{"class":283},[277,70137,70138],{"class":279,"line":397},[277,70139,18255],{"class":283},[267,70141,70142],{"className":269,"code":19531,"filename":9339,"language":272,"meta":273,"style":273},[16,70143,70144,70154],{"__ignoreMap":273},[277,70145,70146,70148,70150,70152],{"class":279,"line":280},[277,70147,284],{"class":283},[277,70149,18041],{"class":287},[277,70151,19542],{"class":291},[277,70153,4325],{"class":283},[277,70155,70156,70158,70160,70162,70164,70166,70168,70170],{"class":279,"line":308},[277,70157,284],{"class":283},[277,70159,18041],{"class":287},[277,70161,19542],{"class":291},[277,70163,298],{"class":283},[277,70165,866],{"class":301},[277,70167,19559],{"class":283},[277,70169,866],{"class":301},[277,70171,4325],{"class":283},[192,70173,70174,19569],{"id":19566},[16,70175,18106],{},[267,70177,70178],{"className":19277,"code":19572,"filename":19279,"language":19280,"meta":273,"style":273},[16,70179,70180,70194,70198,70208,70230,70252,70262,70266,70270,70292,70296,70322,70336,70362,70366,70388,70402,70412,70420,70424,70428,70432,70440,70448,70452,70466,70470,70474,70478,70486,70492,70518,70540,70554,70564,70572,70576,70580,70588,70596,70600,70610,70618,70624,70628],{"__ignoreMap":273},[277,70181,70182,70184,70186,70188,70190,70192],{"class":279,"line":280},[277,70183,312],{"class":311},[277,70185,4270],{"class":311},[277,70187,18143],{"class":283},[277,70189,318],{"class":311},[277,70191,18148],{"class":301},[277,70193,18151],{"class":283},[277,70195,70196],{"class":279,"line":308},[277,70197,328],{"emptyLinePlaceholder":327},[277,70199,70200,70202,70204,70206],{"class":279,"line":324},[277,70201,334],{"class":311},[277,70203,19599],{"class":291},[277,70205,340],{"class":311},[277,70207,343],{"class":283},[277,70209,70210,70212,70214,70216,70218,70220,70222,70224,70226,70228],{"class":279,"line":331},[277,70211,19608],{"class":291},[277,70213,18223],{"class":311},[277,70215,511],{"class":283},[277,70217,19615],{"class":349},[277,70219,353],{"class":311},[277,70221,19620],{"class":291},[277,70223,2340],{"class":283},[277,70225,601],{"class":311},[277,70227,18192],{"class":356},[277,70229,18151],{"class":283},[277,70231,70232,70234,70236,70238,70240,70242,70244,70246,70248,70250],{"class":279,"line":346},[277,70233,19633],{"class":291},[277,70235,18223],{"class":311},[277,70237,511],{"class":283},[277,70239,19615],{"class":349},[277,70241,353],{"class":311},[277,70243,19620],{"class":291},[277,70245,2340],{"class":283},[277,70247,601],{"class":311},[277,70249,18192],{"class":356},[277,70251,18151],{"class":283},[277,70253,70254,70256,70258,70260],{"class":279,"line":360},[277,70255,19656],{"class":349},[277,70257,18223],{"class":311},[277,70259,19661],{"class":291},[277,70261,18151],{"class":283},[277,70263,70264],{"class":279,"line":371},[277,70265,18255],{"class":283},[277,70267,70268],{"class":279,"line":381},[277,70269,328],{"emptyLinePlaceholder":327},[277,70271,70272,70274,70276,70278,70280,70282,70284,70286,70288,70290],{"class":279,"line":391},[277,70273,334],{"class":311},[277,70275,19678],{"class":291},[277,70277,340],{"class":311},[277,70279,18210],{"class":291},[277,70281,18213],{"class":311},[277,70283,5995],{"class":283},[277,70285,19689],{"class":349},[277,70287,18223],{"class":311},[277,70289,19694],{"class":291},[277,70291,19697],{"class":283},[277,70293,70294],{"class":279,"line":397},[277,70295,328],{"emptyLinePlaceholder":327},[277,70297,70298,70300,70302,70304,70306,70308,70310,70312,70314,70316,70318,70320],{"class":279,"line":402},[277,70299,1057],{"class":311},[277,70301,19307],{"class":311},[277,70303,19710],{"class":356},[277,70305,353],{"class":311},[277,70307,18293],{"class":291},[277,70309,284],{"class":283},[277,70311,19719],{"class":291},[277,70313,225],{"class":283},[277,70315,19724],{"class":291},[277,70317,18306],{"class":283},[277,70319,298],{"class":311},[277,70321,343],{"class":283},[277,70323,70324,70326,70328,70330,70332,70334],{"class":279,"line":436},[277,70325,6784],{"class":291},[277,70327,448],{"class":283},[277,70329,18319],{"class":349},[277,70331,225],{"class":283},[277,70333,17882],{"class":349},[277,70335,2476],{"class":283},[277,70337,70338,70340,70342,70344,70346,70348,70350,70352,70354,70356,70358,70360],{"class":279,"line":456},[277,70339,2233],{"class":311},[277,70341,5995],{"class":283},[277,70343,19753],{"class":356},[277,70345,225],{"class":283},[277,70347,19758],{"class":356},[277,70349,225],{"class":283},[277,70351,16115],{"class":356},[277,70353,17506],{"class":283},[277,70355,298],{"class":311},[277,70357,18336],{"class":283},[277,70359,9857],{"class":311},[277,70361,19773],{"class":283},[277,70363,70364],{"class":279,"line":461},[277,70365,328],{"emptyLinePlaceholder":327},[277,70367,70368,70370,70372,70374,70376,70378,70380,70382,70384,70386],{"class":279,"line":476},[277,70369,2233],{"class":311},[277,70371,19784],{"class":356},[277,70373,340],{"class":311},[277,70375,526],{"class":311},[277,70377,19694],{"class":291},[277,70379,2334],{"class":283},[277,70381,19795],{"class":349},[277,70383,2340],{"class":283},[277,70385,601],{"class":311},[277,70387,343],{"class":283},[277,70389,70390,70392,70394,70396,70398,70400],{"class":279,"line":500},[277,70391,19806],{"class":311},[277,70393,511],{"class":283},[277,70395,405],{"class":311},[277,70397,19813],{"class":356},[277,70399,16063],{"class":311},[277,70401,19818],{"class":283},[277,70403,70404,70406,70408,70410],{"class":279,"line":505},[277,70405,8842],{"class":311},[277,70407,19825],{"class":283},[277,70409,19753],{"class":291},[277,70411,19830],{"class":283},[277,70413,70414,70416,70418],{"class":279,"line":520},[277,70415,19835],{"class":311},[277,70417,19838],{"class":291},[277,70419,19830],{"class":283},[277,70421,70422],{"class":279,"line":539},[277,70423,1203],{"class":283},[277,70425,70426],{"class":279,"line":545},[277,70427,19849],{"class":283},[277,70429,70430],{"class":279,"line":550},[277,70431,328],{"emptyLinePlaceholder":327},[277,70433,70434,70436,70438],{"class":279,"line":578},[277,70435,19858],{"class":283},[277,70437,19861],{"class":291},[277,70439,19864],{"class":283},[277,70441,70442,70444,70446],{"class":279,"line":583},[277,70443,19869],{"class":283},[277,70445,298],{"class":311},[277,70447,19874],{"class":283},[277,70449,70450],{"class":279,"line":588},[277,70451,1131],{"class":283},[277,70453,70454,70456,70458,70460,70462,70464],{"class":279,"line":606},[277,70455,10319],{"class":291},[277,70457,448],{"class":283},[277,70459,18319],{"class":349},[277,70461,225],{"class":283},[277,70463,17882],{"class":349},[277,70465,2476],{"class":283},[277,70467,70468],{"class":279,"line":614},[277,70469,19897],{"class":12741},[277,70471,70472],{"class":279,"line":625},[277,70473,19902],{"class":12741},[277,70475,70476],{"class":279,"line":637},[277,70477,19907],{"class":12741},[277,70479,70480,70482,70484],{"class":279,"line":646},[277,70481,19912],{"class":283},[277,70483,19915],{"class":291},[277,70485,19422],{"class":283},[277,70487,70488,70490],{"class":279,"line":668},[277,70489,18628],{"class":311},[277,70491,19924],{"class":283},[277,70493,70494,70496,70498,70500,70502,70504,70506,70508,70510,70512,70514,70516],{"class":279,"line":673},[277,70495,2233],{"class":311},[277,70497,5995],{"class":283},[277,70499,19753],{"class":356},[277,70501,225],{"class":283},[277,70503,19758],{"class":356},[277,70505,225],{"class":283},[277,70507,16115],{"class":356},[277,70509,17506],{"class":283},[277,70511,298],{"class":311},[277,70513,18336],{"class":283},[277,70515,9857],{"class":311},[277,70517,19773],{"class":283},[277,70519,70520,70522,70524,70526,70528,70530,70532,70534,70536,70538],{"class":279,"line":679},[277,70521,2233],{"class":311},[277,70523,19784],{"class":356},[277,70525,340],{"class":311},[277,70527,526],{"class":311},[277,70529,19694],{"class":291},[277,70531,2334],{"class":283},[277,70533,19795],{"class":349},[277,70535,2340],{"class":283},[277,70537,601],{"class":311},[277,70539,343],{"class":283},[277,70541,70542,70544,70546,70548,70550,70552],{"class":279,"line":684},[277,70543,19806],{"class":311},[277,70545,511],{"class":283},[277,70547,405],{"class":311},[277,70549,19813],{"class":356},[277,70551,16063],{"class":311},[277,70553,19818],{"class":283},[277,70555,70556,70558,70560,70562],{"class":279,"line":700},[277,70557,8842],{"class":311},[277,70559,19825],{"class":283},[277,70561,19753],{"class":291},[277,70563,19830],{"class":283},[277,70565,70566,70568,70570],{"class":279,"line":717},[277,70567,19835],{"class":311},[277,70569,19838],{"class":291},[277,70571,19830],{"class":283},[277,70573,70574],{"class":279,"line":722},[277,70575,1203],{"class":283},[277,70577,70578],{"class":279,"line":729},[277,70579,19849],{"class":283},[277,70581,70582,70584,70586],{"class":279,"line":738},[277,70583,19858],{"class":283},[277,70585,19861],{"class":291},[277,70587,19864],{"class":283},[277,70589,70590,70592,70594],{"class":279,"line":747},[277,70591,19869],{"class":283},[277,70593,298],{"class":311},[277,70595,19874],{"class":283},[277,70597,70598],{"class":279,"line":754},[277,70599,1131],{"class":283},[277,70601,70602,70604,70606,70608],{"class":279,"line":772},[277,70603,8668],{"class":291},[277,70605,448],{"class":283},[277,70607,18319],{"class":349},[277,70609,2476],{"class":283},[277,70611,70612,70614,70616],{"class":279,"line":777},[277,70613,19912],{"class":283},[277,70615,19915],{"class":291},[277,70617,19422],{"class":283},[277,70619,70620,70622],{"class":279,"line":782},[277,70621,18628],{"class":311},[277,70623,19924],{"class":283},[277,70625,70626],{"class":279,"line":792},[277,70627,1131],{"class":283},[277,70629,70630],{"class":279,"line":797},[277,70631,18255],{"class":283},[267,70633,70634],{"className":15972,"code":20067,"filename":19438,"language":15975,"meta":273,"style":273},[16,70635,70636,70648,70662,70688,70692,70714,70728,70738,70746,70750,70754,70758,70766,70774,70778,70792,70796,70800,70804,70812,70818,70844,70866,70880,70890,70898,70902,70906,70914,70922,70926,70936,70944,70950,70954],{"__ignoreMap":273},[277,70637,70638,70640,70642,70644,70646],{"class":279,"line":280},[277,70639,1057],{"class":311},[277,70641,19307],{"class":311},[277,70643,19710],{"class":356},[277,70645,340],{"class":311},[277,70647,343],{"class":283},[277,70649,70650,70652,70654,70656,70658,70660],{"class":279,"line":308},[277,70651,6784],{"class":291},[277,70653,448],{"class":283},[277,70655,18319],{"class":349},[277,70657,225],{"class":283},[277,70659,17882],{"class":349},[277,70661,2476],{"class":283},[277,70663,70664,70666,70668,70670,70672,70674,70676,70678,70680,70682,70684,70686],{"class":279,"line":324},[277,70665,2233],{"class":311},[277,70667,5995],{"class":283},[277,70669,19753],{"class":356},[277,70671,225],{"class":283},[277,70673,19758],{"class":356},[277,70675,225],{"class":283},[277,70677,16115],{"class":356},[277,70679,17506],{"class":283},[277,70681,298],{"class":311},[277,70683,18336],{"class":283},[277,70685,9857],{"class":311},[277,70687,19773],{"class":283},[277,70689,70690],{"class":279,"line":331},[277,70691,328],{"emptyLinePlaceholder":327},[277,70693,70694,70696,70698,70700,70702,70704,70706,70708,70710,70712],{"class":279,"line":346},[277,70695,2233],{"class":311},[277,70697,19784],{"class":356},[277,70699,340],{"class":311},[277,70701,526],{"class":311},[277,70703,19694],{"class":291},[277,70705,2334],{"class":283},[277,70707,19795],{"class":349},[277,70709,2340],{"class":283},[277,70711,601],{"class":311},[277,70713,343],{"class":283},[277,70715,70716,70718,70720,70722,70724,70726],{"class":279,"line":360},[277,70717,19806],{"class":311},[277,70719,511],{"class":283},[277,70721,405],{"class":311},[277,70723,19813],{"class":356},[277,70725,16063],{"class":311},[277,70727,19818],{"class":283},[277,70729,70730,70732,70734,70736],{"class":279,"line":371},[277,70731,8842],{"class":311},[277,70733,19825],{"class":283},[277,70735,19753],{"class":291},[277,70737,19830],{"class":283},[277,70739,70740,70742,70744],{"class":279,"line":381},[277,70741,19835],{"class":311},[277,70743,19838],{"class":291},[277,70745,19830],{"class":283},[277,70747,70748],{"class":279,"line":391},[277,70749,1203],{"class":283},[277,70751,70752],{"class":279,"line":397},[277,70753,19849],{"class":283},[277,70755,70756],{"class":279,"line":402},[277,70757,20192],{"class":283},[277,70759,70760,70762,70764],{"class":279,"line":436},[277,70761,19858],{"class":283},[277,70763,19861],{"class":291},[277,70765,19864],{"class":283},[277,70767,70768,70770,70772],{"class":279,"line":456},[277,70769,19869],{"class":283},[277,70771,298],{"class":311},[277,70773,19874],{"class":283},[277,70775,70776],{"class":279,"line":461},[277,70777,1131],{"class":283},[277,70779,70780,70782,70784,70786,70788,70790],{"class":279,"line":476},[277,70781,10319],{"class":291},[277,70783,448],{"class":283},[277,70785,18319],{"class":349},[277,70787,225],{"class":283},[277,70789,17882],{"class":349},[277,70791,2476],{"class":283},[277,70793,70794],{"class":279,"line":500},[277,70795,19897],{"class":12741},[277,70797,70798],{"class":279,"line":505},[277,70799,19902],{"class":12741},[277,70801,70802],{"class":279,"line":520},[277,70803,19907],{"class":12741},[277,70805,70806,70808,70810],{"class":279,"line":539},[277,70807,19912],{"class":283},[277,70809,19915],{"class":291},[277,70811,19422],{"class":283},[277,70813,70814,70816],{"class":279,"line":545},[277,70815,18628],{"class":311},[277,70817,19924],{"class":283},[277,70819,70820,70822,70824,70826,70828,70830,70832,70834,70836,70838,70840,70842],{"class":279,"line":550},[277,70821,2233],{"class":311},[277,70823,5995],{"class":283},[277,70825,19753],{"class":356},[277,70827,225],{"class":283},[277,70829,19758],{"class":356},[277,70831,225],{"class":283},[277,70833,16115],{"class":356},[277,70835,17506],{"class":283},[277,70837,298],{"class":311},[277,70839,18336],{"class":283},[277,70841,9857],{"class":311},[277,70843,19773],{"class":283},[277,70845,70846,70848,70850,70852,70854,70856,70858,70860,70862,70864],{"class":279,"line":578},[277,70847,2233],{"class":311},[277,70849,19784],{"class":356},[277,70851,340],{"class":311},[277,70853,526],{"class":311},[277,70855,19694],{"class":291},[277,70857,2334],{"class":283},[277,70859,19795],{"class":349},[277,70861,2340],{"class":283},[277,70863,601],{"class":311},[277,70865,343],{"class":283},[277,70867,70868,70870,70872,70874,70876,70878],{"class":279,"line":583},[277,70869,19806],{"class":311},[277,70871,511],{"class":283},[277,70873,405],{"class":311},[277,70875,19813],{"class":356},[277,70877,16063],{"class":311},[277,70879,19818],{"class":283},[277,70881,70882,70884,70886,70888],{"class":279,"line":588},[277,70883,8842],{"class":311},[277,70885,19825],{"class":283},[277,70887,19753],{"class":291},[277,70889,19830],{"class":283},[277,70891,70892,70894,70896],{"class":279,"line":606},[277,70893,19835],{"class":311},[277,70895,19838],{"class":291},[277,70897,19830],{"class":283},[277,70899,70900],{"class":279,"line":614},[277,70901,1203],{"class":283},[277,70903,70904],{"class":279,"line":625},[277,70905,19849],{"class":283},[277,70907,70908,70910,70912],{"class":279,"line":637},[277,70909,19858],{"class":283},[277,70911,19861],{"class":291},[277,70913,19864],{"class":283},[277,70915,70916,70918,70920],{"class":279,"line":646},[277,70917,19869],{"class":283},[277,70919,298],{"class":311},[277,70921,19874],{"class":283},[277,70923,70924],{"class":279,"line":668},[277,70925,1131],{"class":283},[277,70927,70928,70930,70932,70934],{"class":279,"line":673},[277,70929,8668],{"class":291},[277,70931,448],{"class":283},[277,70933,18319],{"class":349},[277,70935,2476],{"class":283},[277,70937,70938,70940,70942],{"class":279,"line":679},[277,70939,19912],{"class":283},[277,70941,19915],{"class":291},[277,70943,19422],{"class":283},[277,70945,70946,70948],{"class":279,"line":684},[277,70947,18628],{"class":311},[277,70949,19924],{"class":283},[277,70951,70952],{"class":279,"line":700},[277,70953,1131],{"class":283},[277,70955,70956],{"class":279,"line":717},[277,70957,18255],{"class":283},[267,70959,70960],{"className":269,"code":20395,"filename":9339,"language":272,"meta":273,"style":273},[16,70961,70962,70968,70978,70994,71010,71018,71024,71028,71032],{"__ignoreMap":273},[277,70963,70964,70966],{"class":279,"line":280},[277,70965,284],{"class":283},[277,70967,20404],{"class":287},[277,70969,70970,70972,70974,70976],{"class":279,"line":308},[277,70971,20409],{"class":291},[277,70973,298],{"class":283},[277,70975,866],{"class":301},[277,70977,20416],{"class":283},[277,70979,70980,70982,70984,70986,70988,70990,70992],{"class":279,"line":324},[277,70981,20421],{"class":291},[277,70983,3790],{"class":283},[277,70985,601],{"class":311},[277,70987,20428],{"class":283},[277,70989,298],{"class":311},[277,70991,20433],{"class":356},[277,70993,3753],{"class":283},[277,70995,70996,70998,71000,71002,71004,71006,71008],{"class":279,"line":331},[277,70997,20440],{"class":291},[277,70999,3790],{"class":283},[277,71001,601],{"class":311},[277,71003,20428],{"class":283},[277,71005,298],{"class":311},[277,71007,19366],{"class":356},[277,71009,3753],{"class":283},[277,71011,71012,71014,71016],{"class":279,"line":346},[277,71013,20457],{"class":283},[277,71015,20460],{"class":356},[277,71017,2179],{"class":283},[277,71019,71020,71022],{"class":279,"line":360},[277,71021,20467],{"class":283},[277,71023,20470],{"class":301},[277,71025,71026],{"class":279,"line":371},[277,71027,305],{"class":283},[277,71029,71030],{"class":279,"line":381},[277,71031,20479],{"class":283},[277,71033,71034,71036,71038],{"class":279,"line":391},[277,71035,785],{"class":283},[277,71037,4201],{"class":287},[277,71039,305],{"class":283},[3111,71041,71042],{},[21,71043,20492,71044,20495,71046,12494,71048,20500],{},[16,71045,9091],{},[16,71047,17890],{},[16,71049,17899],{},[30,71051,1596],{"id":1595},[38,71053,71054,71058,71062,71070,71076],{},[41,71055,20507,71056,104],{},[72,71057,20510],{},[41,71059,20513,71060,20516],{},[16,71061,5294],{},[41,71063,20519,71064,225,71066,225,71068,20526],{},[16,71065,3885],{},[16,71067,18022],{},[16,71069,18025],{},[41,71071,20529,71072,20533,71074,20536],{},[72,71073,20532],{},[16,71075,9091],{},[41,71077,20539],{},[1606,71079,20542],{},{"title":273,"searchDepth":308,"depth":308,"links":71081},[71082,71083,71084,71085,71086,71087,71090,71094],{"id":17789,"depth":308,"text":17790},{"id":60,"depth":308,"text":61},{"id":17935,"depth":308,"text":17936},{"id":17959,"depth":308,"text":17960},{"id":189,"depth":308,"text":190},{"id":1945,"depth":308,"text":1946,"children":71088},[71089],{"id":18110,"depth":324,"text":20553},{"id":19267,"depth":308,"text":19268,"children":71091},[71092,71093],{"id":19271,"depth":324,"text":20557},{"id":19566,"depth":324,"text":20559},{"id":1595,"depth":308,"text":1596},{"script":71096},[71097],{"type":1632,"key":1633,"data-nuxt-schema-org":327,"nodes":71098},[71099],{"headline":17786,"author":71100,"datePublished":20571,"@type":1640},{"name":1637,"@type":1638},{"updatedAt":20571,"coverCaption":20562,"author":1637,"keywords":71102},[1645,20574,20575,20576,271,971],[71104],{"headline":17786,"author":71105,"datePublished":20571,"@type":1640},{"name":1637,"@type":1638},{"title":17780,"description":20564},[71108,71109,71110,71111,71112],{"tag":20588,"color":20589},{"tag":20591,"color":20592},{"tag":1665,"color":1666},{"tag":3167,"color":3168},{"tag":1671,"color":1672},{"id":20598,"title":20599,"body":71114,"cover":21866,"coverAlt":21867,"date":21868,"description":21869,"draft":1627,"extension":1628,"head":72234,"locale":1641,"meta":72240,"navigation":327,"path":21882,"schemaOrg":72242,"seo":72245,"series":20582,"seriesDescription":20583,"seriesOrder":397,"seriesTitle":20584,"slug":1656,"stem":21887,"tags":72246,"__hash__":21895},{"type":8,"value":71115,"toc":72214},[71116,71120,71128,71130,71132,71136,71140,71150,71152,71158,71162,71166,71192,71202,71210,71212,71216,71218,71228,71230,71238,71240,71244,71252,71254,71256,71266,71272,71274,71278,71282,71286,71292,71294,71298,71300,71304,71306,71308,71334,71340,71342,71472,71608,71710,71712,71716,71718,71938,72164,72190,72192,72196,72200,72212],[11,71117,20605,71118],{"id":20604},[16,71119,20608],{},[21,71121,71122,20613,71124,20617,71126,20621],{},[16,71123,20608],{},[72,71125,20616],{},[16,71127,20620],{},[30,71129,20625],{"id":20624},[21,71131,20628],{},[21,71133,71134,20633],{},[16,71135,20608],{},[21,71137,71138],{},[72,71139,20638],{},[38,71141,71142,71146,71148],{},[41,71143,20643,71144,20647],{},[16,71145,20646],{},[41,71147,20650],{},[41,71149,20653],{},[30,71151,61],{"id":60},[21,71153,71154,20660,71156,20663],{},[16,71155,20608],{},[16,71157,20608],{},[21,71159,71160],{},[72,71161,20668],{},[10089,71163,71164],{},[41,71165,20673],{},[267,71167,71168],{"className":20676,"code":20677,"filename":20678,"language":20679,"meta":273,"style":273},[16,71169,71170,71178,71188],{"__ignoreMap":273},[277,71171,71172,71174,71176],{"class":279,"line":280},[277,71173,20686],{"class":283},[277,71175,20608],{"class":291},[277,71177,20691],{"class":283},[277,71179,71180,71182,71184,71186],{"class":279,"line":308},[277,71181,20696],{"class":356},[277,71183,20699],{"class":283},[277,71185,20702],{"class":356},[277,71187,18151],{"class":283},[277,71189,71190],{"class":279,"line":324},[277,71191,394],{"class":283},[10089,71193,71194,71198,71200],{"start":308},[41,71195,20713,71196,104],{},[16,71197,20608],{},[41,71199,20718],{},[41,71201,20721],{},[3111,71203,71204],{},[21,71205,71206,20728,71208,1895],{},[16,71207,20608],{},[16,71209,20731],{},[30,71211,20735],{"id":20734},[21,71213,20738,71214,20742],{},[72,71215,20741],{},[21,71217,20745],{},[38,71219,71220,71224,71226],{},[41,71221,71222,20752],{},[16,71223,20608],{},[41,71225,20755],{},[41,71227,20758],{},[21,71229,20761],{},[38,71231,71232,71234,71236],{},[41,71233,20766],{},[41,71235,20769],{},[41,71237,20772],{},[30,71239,129],{"id":128},[21,71241,20777,71242,7669],{},[16,71243,20608],{},[38,71245,71246,71248,71250],{},[41,71247,20784],{},[41,71249,20787],{},[41,71251,20790],{},[30,71253,156],{"id":155},[21,71255,162],{},[38,71257,71258,71260,71262,71264],{},[41,71259,20799],{},[41,71261,20802],{},[41,71263,20805],{},[41,71265,20808],{},[3111,71267,71268],{},[21,71269,71270,20815],{},[16,71271,20608],{},[30,71273,190],{"id":189},[192,71275,20821,71276,20824],{"id":20820},[16,71277,20608],{},[21,71279,20827,71280,20831],{},[16,71281,20830],{},[192,71283,20835,71284],{"id":20834},[16,71285,20838],{},[21,71287,20841,71288,20844,71290,20848],{},[16,71289,20838],{},[16,71291,20847],{},[192,71293,20852],{"id":20851},[21,71295,20855,71296,20858],{},[16,71297,20608],{},[192,71299,20862],{"id":20861},[21,71301,71302,20867],{},[16,71303,20608],{},[30,71305,1946],{"id":1945},[192,71307,20873],{"id":20872},[267,71309,71310],{"className":20676,"code":20876,"filename":20678,"language":20679,"meta":273,"style":273},[16,71311,71312,71320,71330],{"__ignoreMap":273},[277,71313,71314,71316,71318],{"class":279,"line":280},[277,71315,20686],{"class":283},[277,71317,20608],{"class":291},[277,71319,20691],{"class":283},[277,71321,71322,71324,71326,71328],{"class":279,"line":308},[277,71323,20891],{"class":356},[277,71325,20699],{"class":283},[277,71327,20702],{"class":356},[277,71329,18151],{"class":283},[277,71331,71332],{"class":279,"line":324},[277,71333,394],{"class":283},[3111,71335,71336],{},[21,71337,20906,71338,20909],{},[16,71339,20608],{},[192,71341,20913],{"id":20912},[267,71343,71345],{"className":269,"code":20916,"filename":271,"highlights":71344,"language":272,"meta":273,"style":273},[381],[16,71346,71347,71363,71375,71379,71395,71403,71407,71415,71432,71444,71456,71464],{"__ignoreMap":273},[277,71348,71349,71351,71353,71355,71357,71359,71361],{"class":279,"line":280},[277,71350,284],{"class":283},[277,71352,288],{"class":287},[277,71354,292],{"class":291},[277,71356,295],{"class":291},[277,71358,298],{"class":283},[277,71360,302],{"class":301},[277,71362,305],{"class":283},[277,71364,71365,71367,71369,71371,71373],{"class":279,"line":308},[277,71366,312],{"class":311},[277,71368,11006],{"class":283},[277,71370,318],{"class":311},[277,71372,18148],{"class":301},[277,71374,18151],{"class":283},[277,71376,71377],{"class":279,"line":324},[277,71378,328],{"emptyLinePlaceholder":327},[277,71380,71381,71383,71385,71387,71389,71391,71393],{"class":279,"line":331},[277,71382,405],{"class":311},[277,71384,20958],{"class":356},[277,71386,340],{"class":311},[277,71388,413],{"class":291},[277,71390,448],{"class":283},[277,71392,20967],{"class":301},[277,71394,18277],{"class":283},[277,71396,71397,71399,71401],{"class":279,"line":346},[277,71398,785],{"class":283},[277,71400,288],{"class":287},[277,71402,305],{"class":283},[277,71404,71405],{"class":279,"line":360},[277,71406,328],{"emptyLinePlaceholder":327},[277,71408,71409,71411,71413],{"class":279,"line":371},[277,71410,284],{"class":283},[277,71412,802],{"class":287},[277,71414,305],{"class":283},[277,71416,71418,71420,71422,71424,71426,71428,71430],{"class":71417,"line":381},[279,9398],[277,71419,810],{"class":283},[277,71421,4121],{"class":287},[277,71423,20999],{"class":291},[277,71425,816],{"class":291},[277,71427,298],{"class":283},[277,71429,21006],{"class":301},[277,71431,305],{"class":283},[277,71433,71434,71436,71438,71440,71442],{"class":279,"line":391},[277,71435,829],{"class":283},[277,71437,11],{"class":287},[277,71439,21017],{"class":283},[277,71441,11],{"class":287},[277,71443,305],{"class":283},[277,71445,71446,71448,71450,71452,71454],{"class":279,"line":397},[277,71447,829],{"class":283},[277,71449,21],{"class":287},[277,71451,21030],{"class":283},[277,71453,21],{"class":287},[277,71455,305],{"class":283},[277,71457,71458,71460,71462],{"class":279,"line":402},[277,71459,954],{"class":283},[277,71461,4121],{"class":287},[277,71463,305],{"class":283},[277,71465,71466,71468,71470],{"class":279,"line":436},[277,71467,785],{"class":283},[277,71469,802],{"class":287},[277,71471,305],{"class":283},[267,71473,71475],{"className":269,"code":21053,"filename":971,"highlights":71474,"language":272,"meta":273,"style":273},[436],[16,71476,71477,71491,71499,71505,71511,71519,71523,71527,71531,71539,71543,71551,71568,71580,71592,71600],{"__ignoreMap":273},[277,71478,71479,71481,71483,71485,71487,71489],{"class":279,"line":280},[277,71480,284],{"class":283},[277,71482,288],{"class":287},[277,71484,295],{"class":291},[277,71486,298],{"class":283},[277,71488,302],{"class":301},[277,71490,305],{"class":283},[277,71492,71493,71495,71497],{"class":279,"line":308},[277,71494,1057],{"class":311},[277,71496,1060],{"class":311},[277,71498,343],{"class":283},[277,71500,71501,71503],{"class":279,"line":324},[277,71502,1086],{"class":291},[277,71504,473],{"class":283},[277,71506,71507,71509],{"class":279,"line":331},[277,71508,1093],{"class":311},[277,71510,343],{"class":283},[277,71512,71513,71515,71517],{"class":279,"line":346},[277,71514,21095],{"class":283},[277,71516,20967],{"class":301},[277,71518,1077],{"class":283},[277,71520,71521],{"class":279,"line":360},[277,71522,18478],{"class":283},[277,71524,71525],{"class":279,"line":371},[277,71526,1131],{"class":283},[277,71528,71529],{"class":279,"line":381},[277,71530,18255],{"class":283},[277,71532,71533,71535,71537],{"class":279,"line":391},[277,71534,785],{"class":283},[277,71536,288],{"class":287},[277,71538,305],{"class":283},[277,71540,71541],{"class":279,"line":397},[277,71542,328],{"emptyLinePlaceholder":327},[277,71544,71545,71547,71549],{"class":279,"line":402},[277,71546,284],{"class":283},[277,71548,802],{"class":287},[277,71550,305],{"class":283},[277,71552,71554,71556,71558,71560,71562,71564,71566],{"class":71553,"line":436},[279,9398],[277,71555,810],{"class":283},[277,71557,4121],{"class":287},[277,71559,20999],{"class":291},[277,71561,816],{"class":291},[277,71563,298],{"class":283},[277,71565,21006],{"class":301},[277,71567,305],{"class":283},[277,71569,71570,71572,71574,71576,71578],{"class":279,"line":456},[277,71571,829],{"class":283},[277,71573,11],{"class":287},[277,71575,21017],{"class":283},[277,71577,11],{"class":287},[277,71579,305],{"class":283},[277,71581,71582,71584,71586,71588,71590],{"class":279,"line":461},[277,71583,829],{"class":283},[277,71585,21],{"class":287},[277,71587,21030],{"class":283},[277,71589,21],{"class":287},[277,71591,305],{"class":283},[277,71593,71594,71596,71598],{"class":279,"line":476},[277,71595,954],{"class":283},[277,71597,4121],{"class":287},[277,71599,305],{"class":283},[277,71601,71602,71604,71606],{"class":279,"line":500},[277,71603,785],{"class":283},[277,71605,802],{"class":287},[277,71607,305],{"class":283},[267,71609,71611],{"className":20676,"code":21191,"filename":20678,"highlights":71610,"language":20679,"meta":273,"style":273},[280,308,324],[16,71612,71613,71622,71633,71638,71642,71648,71672,71682,71694,71706],{"__ignoreMap":273},[277,71614,71616,71618,71620],{"class":71615,"line":280},[279,9398],[277,71617,20686],{"class":283},[277,71619,20608],{"class":291},[277,71621,20691],{"class":283},[277,71623,71625,71627,71629,71631],{"class":71624,"line":308},[279,9398],[277,71626,20891],{"class":356},[277,71628,20699],{"class":283},[277,71630,20702],{"class":356},[277,71632,18151],{"class":283},[277,71634,71636],{"class":71635,"line":324},[279,9398],[277,71637,394],{"class":283},[277,71639,71640],{"class":279,"line":331},[277,71641,328],{"emptyLinePlaceholder":327},[277,71643,71644,71646],{"class":279,"line":346},[277,71645,21228],{"class":291},[277,71647,343],{"class":283},[277,71649,71650,71652,71654,71656,71658,71660,71662,71664,71666,71668,71670],{"class":279,"line":360},[277,71651,21235],{"class":356},[277,71653,20699],{"class":283},[277,71655,21240],{"class":356},[277,71657,448],{"class":283},[277,71659,21245],{"class":356},[277,71661,21248],{"class":311},[277,71663,225],{"class":283},[277,71665,20589],{"class":356},[277,71667,225],{"class":283},[277,71669,9075],{"class":356},[277,71671,18277],{"class":283},[277,71673,71674,71676,71678,71680],{"class":279,"line":371},[277,71675,21263],{"class":356},[277,71677,20699],{"class":283},[277,71679,21268],{"class":356},[277,71681,18151],{"class":283},[277,71683,71684,71686,71688,71690,71692],{"class":279,"line":381},[277,71685,21275],{"class":356},[277,71687,20699],{"class":283},[277,71689,2139],{"class":356},[277,71691,21282],{"class":311},[277,71693,18151],{"class":283},[277,71695,71696,71698,71700,71702,71704],{"class":279,"line":391},[277,71697,21289],{"class":356},[277,71699,20699],{"class":283},[277,71701,21294],{"class":356},[277,71703,21297],{"class":311},[277,71705,18151],{"class":283},[277,71707,71708],{"class":279,"line":397},[277,71709,394],{"class":283},[192,71711,21307],{"id":21306},[21,71713,21310,71714,21313],{},[16,71715,20608],{},[192,71717,21317],{"id":21316},[267,71719,71720],{"className":269,"code":21320,"filename":271,"language":272,"meta":273,"style":273},[16,71721,71722,71738,71750,71754,71784,71788,71802,71826,71838,71842,71850,71854,71862,71878,71890,71908,71922,71930],{"__ignoreMap":273},[277,71723,71724,71726,71728,71730,71732,71734,71736],{"class":279,"line":280},[277,71725,284],{"class":283},[277,71727,288],{"class":287},[277,71729,292],{"class":291},[277,71731,295],{"class":291},[277,71733,298],{"class":283},[277,71735,302],{"class":301},[277,71737,305],{"class":283},[277,71739,71740,71742,71744,71746,71748],{"class":279,"line":308},[277,71741,312],{"class":311},[277,71743,21345],{"class":283},[277,71745,318],{"class":311},[277,71747,18148],{"class":301},[277,71749,18151],{"class":283},[277,71751,71752],{"class":279,"line":324},[277,71753,328],{"emptyLinePlaceholder":327},[277,71755,71756,71758,71760,71762,71764,71766,71768,71770,71772,71774,71776,71778,71780,71782],{"class":279,"line":331},[277,71757,405],{"class":311},[277,71759,17573],{"class":356},[277,71761,340],{"class":311},[277,71763,413],{"class":291},[277,71765,21368],{"class":283},[277,71767,21371],{"class":349},[277,71769,353],{"class":311},[277,71771,21376],{"class":356},[277,71773,17506],{"class":283},[277,71775,5790],{"class":311},[277,71777,424],{"class":356},[277,71779,427],{"class":283},[277,71781,430],{"class":356},[277,71783,18277],{"class":283},[277,71785,71786],{"class":279,"line":346},[277,71787,328],{"emptyLinePlaceholder":327},[277,71789,71790,71792,71794,71796,71798,71800],{"class":279,"line":360},[277,71791,687],{"class":291},[277,71793,448],{"class":283},[277,71795,464],{"class":311},[277,71797,598],{"class":283},[277,71799,601],{"class":311},[277,71801,343],{"class":283},[277,71803,71804,71806,71808,71810,71812,71814,71816,71818,71820,71822,71824],{"class":279,"line":371},[277,71805,6252],{"class":311},[277,71807,526],{"class":311},[277,71809,17350],{"class":356},[277,71811,2334],{"class":283},[277,71813,17355],{"class":349},[277,71815,2340],{"class":283},[277,71817,601],{"class":311},[277,71819,21425],{"class":291},[277,71821,21428],{"class":283},[277,71823,21431],{"class":356},[277,71825,21434],{"class":283},[277,71827,71828,71830,71832,71834,71836],{"class":279,"line":381},[277,71829,21439],{"class":283},[277,71831,298],{"class":311},[277,71833,21444],{"class":283},[277,71835,21447],{"class":301},[277,71837,19697],{"class":283},[277,71839,71840],{"class":279,"line":391},[277,71841,21454],{"class":283},[277,71843,71844,71846,71848],{"class":279,"line":397},[277,71845,785],{"class":283},[277,71847,288],{"class":287},[277,71849,305],{"class":283},[277,71851,71852],{"class":279,"line":402},[277,71853,328],{"emptyLinePlaceholder":327},[277,71855,71856,71858,71860],{"class":279,"line":436},[277,71857,284],{"class":283},[277,71859,802],{"class":287},[277,71861,305],{"class":283},[277,71863,71864,71866,71868,71870,71872,71874,71876],{"class":279,"line":456},[277,71865,810],{"class":283},[277,71867,21481],{"class":287},[277,71869,20999],{"class":291},[277,71871,816],{"class":291},[277,71873,298],{"class":283},[277,71875,21490],{"class":301},[277,71877,305],{"class":283},[277,71879,71880,71882,71884,71886,71888],{"class":279,"line":461},[277,71881,829],{"class":283},[277,71883,30],{"class":287},[277,71885,21501],{"class":283},[277,71887,30],{"class":287},[277,71889,305],{"class":283},[277,71891,71892,71894,71896,71898,71900,71902,71904,71906],{"class":279,"line":476},[277,71893,829],{"class":283},[277,71895,21],{"class":287},[277,71897,834],{"class":291},[277,71899,298],{"class":283},[277,71901,21518],{"class":301},[277,71903,21521],{"class":283},[277,71905,21],{"class":287},[277,71907,305],{"class":283},[277,71909,71910,71912,71914,71916,71918,71920],{"class":279,"line":500},[277,71911,829],{"class":283},[277,71913,21],{"class":287},[277,71915,941],{"class":291},[277,71917,21536],{"class":283},[277,71919,21],{"class":287},[277,71921,305],{"class":283},[277,71923,71924,71926,71928],{"class":279,"line":505},[277,71925,954],{"class":283},[277,71927,21481],{"class":287},[277,71929,305],{"class":283},[277,71931,71932,71934,71936],{"class":279,"line":520},[277,71933,785],{"class":283},[277,71935,802],{"class":287},[277,71937,305],{"class":283},[267,71939,71940],{"className":269,"code":21559,"filename":971,"language":272,"meta":273,"style":273},[16,71941,71942,71956,71964,71972,71978,71984,72006,72010,72014,72022,72046,72060,72064,72068,72076,72080,72088,72104,72116,72134,72148,72156],{"__ignoreMap":273},[277,71943,71944,71946,71948,71950,71952,71954],{"class":279,"line":280},[277,71945,284],{"class":283},[277,71947,288],{"class":287},[277,71949,295],{"class":291},[277,71951,298],{"class":283},[277,71953,302],{"class":301},[277,71955,305],{"class":283},[277,71957,71958,71960,71962],{"class":279,"line":308},[277,71959,1057],{"class":311},[277,71961,1060],{"class":311},[277,71963,343],{"class":283},[277,71965,71966,71968,71970],{"class":279,"line":324},[277,71967,1071],{"class":283},[277,71969,21590],{"class":301},[277,71971,1077],{"class":283},[277,71973,71974,71976],{"class":279,"line":331},[277,71975,1086],{"class":291},[277,71977,473],{"class":283},[277,71979,71980,71982],{"class":279,"line":346},[277,71981,1093],{"class":311},[277,71983,343],{"class":283},[277,71985,71986,71988,71990,71992,71994,71996,71998,72000,72002,72004],{"class":279,"line":360},[277,71987,21609],{"class":283},[277,71989,430],{"class":356},[277,71991,1105],{"class":311},[277,71993,424],{"class":356},[277,71995,421],{"class":311},[277,71997,5995],{"class":283},[277,71999,21371],{"class":349},[277,72001,353],{"class":311},[277,72003,21376],{"class":356},[277,72005,2132],{"class":283},[277,72007,72008],{"class":279,"line":371},[277,72009,18478],{"class":283},[277,72011,72012],{"class":279,"line":381},[277,72013,1131],{"class":283},[277,72015,72016,72018,72020],{"class":279,"line":391},[277,72017,1248],{"class":311},[277,72019,1329],{"class":291},[277,72021,473],{"class":283},[277,72023,72024,72026,72028,72030,72032,72034,72036,72038,72040,72042,72044],{"class":279,"line":397},[277,72025,617],{"class":311},[277,72027,526],{"class":311},[277,72029,17350],{"class":356},[277,72031,2334],{"class":283},[277,72033,17355],{"class":349},[277,72035,2340],{"class":283},[277,72037,601],{"class":311},[277,72039,21425],{"class":291},[277,72041,21428],{"class":283},[277,72043,21431],{"class":356},[277,72045,21434],{"class":283},[277,72047,72048,72050,72052,72054,72056,72058],{"class":279,"line":402},[277,72049,4724],{"class":356},[277,72051,21674],{"class":283},[277,72053,298],{"class":311},[277,72055,21444],{"class":283},[277,72057,21447],{"class":301},[277,72059,19697],{"class":283},[277,72061,72062],{"class":279,"line":436},[277,72063,1131],{"class":283},[277,72065,72066],{"class":279,"line":456},[277,72067,18255],{"class":283},[277,72069,72070,72072,72074],{"class":279,"line":461},[277,72071,785],{"class":283},[277,72073,288],{"class":287},[277,72075,305],{"class":283},[277,72077,72078],{"class":279,"line":476},[277,72079,328],{"emptyLinePlaceholder":327},[277,72081,72082,72084,72086],{"class":279,"line":500},[277,72083,284],{"class":283},[277,72085,802],{"class":287},[277,72087,305],{"class":283},[277,72089,72090,72092,72094,72096,72098,72100,72102],{"class":279,"line":505},[277,72091,810],{"class":283},[277,72093,21481],{"class":287},[277,72095,20999],{"class":291},[277,72097,816],{"class":291},[277,72099,298],{"class":283},[277,72101,21490],{"class":301},[277,72103,305],{"class":283},[277,72105,72106,72108,72110,72112,72114],{"class":279,"line":520},[277,72107,829],{"class":283},[277,72109,30],{"class":287},[277,72111,21501],{"class":283},[277,72113,30],{"class":287},[277,72115,305],{"class":283},[277,72117,72118,72120,72122,72124,72126,72128,72130,72132],{"class":279,"line":539},[277,72119,829],{"class":283},[277,72121,21],{"class":287},[277,72123,834],{"class":291},[277,72125,298],{"class":283},[277,72127,21518],{"class":301},[277,72129,21521],{"class":283},[277,72131,21],{"class":287},[277,72133,305],{"class":283},[277,72135,72136,72138,72140,72142,72144,72146],{"class":279,"line":545},[277,72137,829],{"class":283},[277,72139,21],{"class":287},[277,72141,941],{"class":291},[277,72143,21536],{"class":283},[277,72145,21],{"class":287},[277,72147,305],{"class":283},[277,72149,72150,72152,72154],{"class":279,"line":550},[277,72151,954],{"class":283},[277,72153,21481],{"class":287},[277,72155,305],{"class":283},[277,72157,72158,72160,72162],{"class":279,"line":578},[277,72159,785],{"class":283},[277,72161,802],{"class":287},[277,72163,305],{"class":283},[267,72165,72166],{"className":20676,"code":20876,"filename":20678,"language":20679,"meta":273,"style":273},[16,72167,72168,72176,72186],{"__ignoreMap":273},[277,72169,72170,72172,72174],{"class":279,"line":280},[277,72171,20686],{"class":283},[277,72173,20608],{"class":291},[277,72175,20691],{"class":283},[277,72177,72178,72180,72182,72184],{"class":279,"line":308},[277,72179,20891],{"class":356},[277,72181,20699],{"class":283},[277,72183,20702],{"class":356},[277,72185,18151],{"class":283},[277,72187,72188],{"class":279,"line":324},[277,72189,394],{"class":283},[30,72191,1596],{"id":1595},[21,72193,72194,21819],{},[16,72195,20608],{},[21,72197,72198],{},[72,72199,21824],{},[38,72201,72202,72206,72208,72210],{},[41,72203,21829,72204,104],{},[16,72205,20830],{},[41,72207,21834],{},[41,72209,21837],{},[41,72211,21840],{},[1606,72213,21843],{},{"title":273,"searchDepth":308,"depth":308,"links":72215},[72216,72217,72218,72219,72220,72221,72227,72233],{"id":20624,"depth":308,"text":20625},{"id":60,"depth":308,"text":61},{"id":20734,"depth":308,"text":20735},{"id":128,"depth":308,"text":129},{"id":155,"depth":308,"text":156},{"id":189,"depth":308,"text":190,"children":72222},[72223,72224,72225,72226],{"id":20820,"depth":324,"text":21854},{"id":20834,"depth":324,"text":21856},{"id":20851,"depth":324,"text":20852},{"id":20861,"depth":324,"text":20862},{"id":1945,"depth":308,"text":1946,"children":72228},[72229,72230,72231,72232],{"id":20872,"depth":324,"text":20873},{"id":20912,"depth":324,"text":20913},{"id":21306,"depth":324,"text":21307},{"id":21316,"depth":324,"text":21317},{"id":1595,"depth":308,"text":1596},{"script":72235},[72236],{"type":1632,"key":1633,"data-nuxt-schema-org":327,"nodes":72237},[72238],{"headline":21875,"author":72239,"datePublished":21877,"@type":1640},{"name":1637,"@type":1638},{"updatedAt":21877,"coverCaption":17759,"author":1637,"keywords":72241},[1645,20608,21880,21881,271,971],[72243],{"headline":21875,"author":72244,"datePublished":21877,"@type":1640},{"name":1637,"@type":1638},{"title":20599,"description":21869},[72247,72248,72249,72250],{"tag":20588,"color":20589},{"tag":21891,"color":21892},{"tag":3164,"color":3165},{"tag":9074,"color":9075},{"id":21897,"title":21898,"body":72252,"cover":24549,"coverAlt":24550,"date":24551,"description":24552,"draft":1627,"extension":1628,"head":74688,"locale":1641,"meta":74694,"navigation":327,"path":24564,"schemaOrg":74696,"seo":74699,"series":20582,"seriesDescription":20583,"seriesOrder":391,"seriesTitle":20584,"slug":1656,"stem":24569,"tags":74700,"__hash__":24576},{"type":8,"value":72253,"toc":74664},[72254,72262,72272,72274,72276,72278,72292,72294,72296,72300,72302,72304,72308,72314,72320,72324,72330,72332,72334,72336,72352,72354,72364,72366,72368,72382,72384,72386,72400,72402,72416,72418,72422,72426,72432,72436,72438,72442,72446,72450,72456,72458,72460,72464,72466,72470,72600,72728,72736,72740,73060,73328,73338,73342,73434,73548,73550,73558,74122,74636,74638,74646,74660,74662],[11,72255,20605,72256,5245,72258,5245,72260],{"id":21903},[16,72257,21906],{},[16,72259,21909],{},[16,72261,21912],{},[21,72263,72264,225,72266,1697,72268,21921,72270,21925],{},[16,72265,21906],{},[16,72267,21909],{},[16,72269,21912],{},[3292,72271,21924],{},[30,72273,20625],{"id":20624},[21,72275,21930],{},[21,72277,21933],{},[38,72279,72280,72284,72288],{},[41,72281,21938,72282,1895],{},[16,72283,21906],{},[41,72285,21943,72286,1895],{},[16,72287,21909],{},[41,72289,21948,72290,1895],{},[16,72291,21912],{},[21,72293,21953],{},[30,72295,61],{"id":60},[192,72297,72298],{"id":21906},[16,72299,21906],{},[21,72301,21962],{},[21,72303,21965],{},[192,72305,72306],{"id":21909},[16,72307,21909],{},[21,72309,21972,72310,21976,72312,21980],{},[72,72311,21975],{},[3292,72313,21979],{},[21,72315,21983,72316,21986,72318,104],{},[16,72317,21909],{},[72,72319,21989],{},[192,72321,72322],{"id":21912},[16,72323,21912],{},[21,72325,21996,72326,22000,72328,22003],{},[72,72327,21999],{},[16,72329,20620],{},[21,72331,22006],{},[30,72333,129],{"id":128},[21,72335,22011],{},[38,72337,72338,72342,72348],{},[41,72339,72340,22018],{},[16,72341,21906],{},[41,72343,72344,22023,72346,104],{},[16,72345,21909],{},[72,72347,22026],{},[41,72349,72350,22031],{},[16,72351,21912],{},[21,72353,22034],{},[38,72355,72356,72360,72362],{},[41,72357,22039,72358,22043],{},[16,72359,22042],{},[41,72361,22046],{},[41,72363,22049],{},[30,72365,156],{"id":155},[21,72367,22054],{},[38,72369,72370,72374,72378],{},[41,72371,22059,72372,22062],{},[16,72373,21906],{},[41,72375,22059,72376,22067],{},[16,72377,21909],{},[41,72379,22059,72380,22072],{},[16,72381,21912],{},[21,72383,22075],{},[30,72385,5390],{"id":5389},[38,72387,72388,72392,72396],{},[41,72389,72390,22084],{},[16,72391,21906],{},[41,72393,72394,22089],{},[16,72395,21909],{},[41,72397,72398,22094],{},[16,72399,21912],{},[21,72401,22097],{},[38,72403,72404,72408,72412],{},[41,72405,22102,72406,104],{},[16,72407,21906],{},[41,72409,22107,72410,104],{},[16,72411,21909],{},[41,72413,22112,72414,104],{},[16,72415,21912],{},[30,72417,190],{"id":189},[192,72419,22120,72420,22123],{"id":22119},[16,72421,21906],{},[21,72423,22126,72424,22129],{},[16,72425,21906],{},[21,72427,72428,22135,72430,22138],{},[72,72429,22134],{},[16,72431,21906],{},[192,72433,22142,72434],{"id":22141},[16,72435,21909],{},[21,72437,22147],{},[21,72439,72440,22152],{},[72,72441,22134],{},[192,72443,22156,72444,22159],{"id":22155},[16,72445,21912],{},[21,72447,11996,72448,22164],{},[16,72449,21912],{},[21,72451,72452,17019,72454,22171],{},[72,72453,22134],{},[16,72455,21912],{},[192,72457,22175],{"id":22174},[21,72459,22178],{},[21,72461,72462,22183],{},[72,72463,22134],{},[30,72465,1946],{"id":1945},[192,72467,22189,72468],{"id":22188},[16,72469,21906],{},[267,72471,72473],{"className":269,"code":22194,"filename":271,"highlights":72472,"language":272,"meta":273,"style":273},[402],[16,72474,72475,72491,72503,72507,72523,72535,72543,72547,72555,72573,72577,72592],{"__ignoreMap":273},[277,72476,72477,72479,72481,72483,72485,72487,72489],{"class":279,"line":280},[277,72478,284],{"class":283},[277,72480,288],{"class":287},[277,72482,292],{"class":291},[277,72484,295],{"class":291},[277,72486,298],{"class":283},[277,72488,302],{"class":301},[277,72490,305],{"class":283},[277,72492,72493,72495,72497,72499,72501],{"class":279,"line":308},[277,72494,312],{"class":311},[277,72496,11006],{"class":283},[277,72498,318],{"class":311},[277,72500,18148],{"class":301},[277,72502,18151],{"class":283},[277,72504,72505],{"class":279,"line":324},[277,72506,328],{"emptyLinePlaceholder":327},[277,72508,72509,72511,72513,72515,72517,72519,72521],{"class":279,"line":331},[277,72510,405],{"class":311},[277,72512,22236],{"class":356},[277,72514,340],{"class":311},[277,72516,413],{"class":291},[277,72518,448],{"class":283},[277,72520,3542],{"class":356},[277,72522,18277],{"class":283},[277,72524,72525,72527,72529,72531,72533],{"class":279,"line":346},[277,72526,405],{"class":311},[277,72528,22253],{"class":356},[277,72530,340],{"class":311},[277,72532,22258],{"class":301},[277,72534,18151],{"class":283},[277,72536,72537,72539,72541],{"class":279,"line":360},[277,72538,785],{"class":283},[277,72540,288],{"class":287},[277,72542,305],{"class":283},[277,72544,72545],{"class":279,"line":371},[277,72546,328],{"emptyLinePlaceholder":327},[277,72548,72549,72551,72553],{"class":279,"line":381},[277,72550,284],{"class":283},[277,72552,802],{"class":287},[277,72554,305],{"class":283},[277,72556,72557,72559,72561,72563,72565,72567,72569,72571],{"class":279,"line":391},[277,72558,810],{"class":283},[277,72560,4267],{"class":287},[277,72562,4278],{"class":291},[277,72564,298],{"class":283},[277,72566,22293],{"class":301},[277,72568,22296],{"class":283},[277,72570,4267],{"class":287},[277,72572,305],{"class":283},[277,72574,72575],{"class":279,"line":397},[277,72576,328],{"emptyLinePlaceholder":327},[277,72578,72580,72582,72584,72586,72588,72590],{"class":72579,"line":402},[279,9398],[277,72581,810],{"class":283},[277,72583,21],{"class":287},[277,72585,22314],{"class":291},[277,72587,22317],{"class":283},[277,72589,21],{"class":287},[277,72591,305],{"class":283},[277,72593,72594,72596,72598],{"class":279,"line":436},[277,72595,785],{"class":283},[277,72597,802],{"class":287},[277,72599,305],{"class":283},[267,72601,72603],{"className":269,"code":22332,"filename":971,"highlights":72602,"language":272,"meta":273,"style":273},[461],[16,72604,72605,72619,72627,72633,72639,72647,72655,72659,72663,72667,72675,72679,72687,72705,72720],{"__ignoreMap":273},[277,72606,72607,72609,72611,72613,72615,72617],{"class":279,"line":280},[277,72608,284],{"class":283},[277,72610,288],{"class":287},[277,72612,295],{"class":291},[277,72614,298],{"class":283},[277,72616,302],{"class":301},[277,72618,305],{"class":283},[277,72620,72621,72623,72625],{"class":279,"line":308},[277,72622,1057],{"class":311},[277,72624,1060],{"class":311},[277,72626,343],{"class":283},[277,72628,72629,72631],{"class":279,"line":324},[277,72630,1086],{"class":291},[277,72632,473],{"class":283},[277,72634,72635,72637],{"class":279,"line":331},[277,72636,1093],{"class":311},[277,72638,343],{"class":283},[277,72640,72641,72643,72645],{"class":279,"line":346},[277,72642,22374],{"class":283},[277,72644,3542],{"class":356},[277,72646,1077],{"class":283},[277,72648,72649,72651,72653],{"class":279,"line":360},[277,72650,22383],{"class":283},[277,72652,22386],{"class":301},[277,72654,1077],{"class":283},[277,72656,72657],{"class":279,"line":371},[277,72658,18478],{"class":283},[277,72660,72661],{"class":279,"line":381},[277,72662,1131],{"class":283},[277,72664,72665],{"class":279,"line":391},[277,72666,18255],{"class":283},[277,72668,72669,72671,72673],{"class":279,"line":397},[277,72670,785],{"class":283},[277,72672,288],{"class":287},[277,72674,305],{"class":283},[277,72676,72677],{"class":279,"line":402},[277,72678,328],{"emptyLinePlaceholder":327},[277,72680,72681,72683,72685],{"class":279,"line":436},[277,72682,284],{"class":283},[277,72684,802],{"class":287},[277,72686,305],{"class":283},[277,72688,72689,72691,72693,72695,72697,72699,72701,72703],{"class":279,"line":456},[277,72690,810],{"class":283},[277,72692,4267],{"class":287},[277,72694,4278],{"class":291},[277,72696,298],{"class":283},[277,72698,22293],{"class":301},[277,72700,22296],{"class":283},[277,72702,4267],{"class":287},[277,72704,305],{"class":283},[277,72706,72708,72710,72712,72714,72716,72718],{"class":72707,"line":461},[279,9398],[277,72709,810],{"class":283},[277,72711,21],{"class":287},[277,72713,22314],{"class":291},[277,72715,22317],{"class":283},[277,72717,21],{"class":287},[277,72719,305],{"class":283},[277,72721,72722,72724,72726],{"class":279,"line":476},[277,72723,785],{"class":283},[277,72725,802],{"class":287},[277,72727,305],{"class":283},[3111,72729,72730],{},[21,72731,22466,72732,22470,72734,22473],{},[16,72733,22469],{},[16,72735,21906],{},[192,72737,22477,72738],{"id":22476},[16,72739,21909],{},[267,72741,72743],{"className":269,"code":22482,"filename":271,"highlights":72742,"language":272,"meta":273,"style":273},[520],[16,72744,72745,72761,72773,72777,72819,72823,72847,72863,72883,72903,72923,72927,72935,72939,72947,72953,72961,72969,72978,72986,72990,73002,73014,73026,73044,73052],{"__ignoreMap":273},[277,72746,72747,72749,72751,72753,72755,72757,72759],{"class":279,"line":280},[277,72748,284],{"class":283},[277,72750,288],{"class":287},[277,72752,292],{"class":291},[277,72754,295],{"class":291},[277,72756,298],{"class":283},[277,72758,302],{"class":301},[277,72760,305],{"class":283},[277,72762,72763,72765,72767,72769,72771],{"class":279,"line":308},[277,72764,312],{"class":311},[277,72766,11006],{"class":283},[277,72768,318],{"class":311},[277,72770,18148],{"class":301},[277,72772,18151],{"class":283},[277,72774,72775],{"class":279,"line":324},[277,72776,328],{"emptyLinePlaceholder":327},[277,72778,72779,72781,72783,72785,72787,72789,72791,72793,72795,72797,72799,72801,72803,72805,72807,72809,72811,72813,72815,72817],{"class":279,"line":331},[277,72780,334],{"class":311},[277,72782,22524],{"class":291},[277,72784,340],{"class":311},[277,72786,5995],{"class":283},[277,72788,22042],{"class":349},[277,72790,353],{"class":311},[277,72792,2473],{"class":356},[277,72794,22537],{"class":283},[277,72796,21371],{"class":349},[277,72798,353],{"class":311},[277,72800,21376],{"class":356},[277,72802,22537],{"class":283},[277,72804,22548],{"class":349},[277,72806,353],{"class":311},[277,72808,22553],{"class":356},[277,72810,22537],{"class":283},[277,72812,22558],{"class":349},[277,72814,353],{"class":311},[277,72816,2473],{"class":356},[277,72818,19697],{"class":283},[277,72820,72821],{"class":279,"line":346},[277,72822,328],{"emptyLinePlaceholder":327},[277,72824,72825,72827,72829,72831,72833,72835,72837,72839,72841,72843,72845],{"class":279,"line":360},[277,72826,405],{"class":311},[277,72828,22575],{"class":356},[277,72830,340],{"class":311},[277,72832,413],{"class":291},[277,72834,284],{"class":283},[277,72836,7971],{"class":356},[277,72838,421],{"class":311},[277,72840,424],{"class":356},[277,72842,427],{"class":283},[277,72844,430],{"class":356},[277,72846,18277],{"class":283},[277,72848,72849,72851,72853,72855,72857,72859,72861],{"class":279,"line":371},[277,72850,405],{"class":311},[277,72852,11021],{"class":356},[277,72854,340],{"class":311},[277,72856,413],{"class":291},[277,72858,284],{"class":283},[277,72860,22608],{"class":291},[277,72862,22611],{"class":283},[277,72864,72865,72867,72869,72871,72873,72875,72877,72879,72881],{"class":279,"line":381},[277,72866,2109],{"class":283},[277,72868,2072],{"class":356},[277,72870,22620],{"class":283},[277,72872,17584],{"class":301},[277,72874,22625],{"class":283},[277,72876,2149],{"class":356},[277,72878,22630],{"class":283},[277,72880,22633],{"class":356},[277,72882,2132],{"class":283},[277,72884,72885,72887,72889,72891,72893,72895,72897,72899,72901],{"class":279,"line":391},[277,72886,2109],{"class":283},[277,72888,2139],{"class":356},[277,72890,22620],{"class":283},[277,72892,22646],{"class":301},[277,72894,22625],{"class":283},[277,72896,2123],{"class":356},[277,72898,22630],{"class":283},[277,72900,22655],{"class":356},[277,72902,2132],{"class":283},[277,72904,72905,72907,72909,72911,72913,72915,72917,72919,72921],{"class":279,"line":397},[277,72906,2109],{"class":283},[277,72908,2163],{"class":356},[277,72910,22620],{"class":283},[277,72912,22668],{"class":301},[277,72914,22625],{"class":283},[277,72916,2149],{"class":356},[277,72918,22630],{"class":283},[277,72920,22677],{"class":356},[277,72922,2132],{"class":283},[277,72924,72925],{"class":279,"line":402},[277,72926,22684],{"class":283},[277,72928,72929,72931,72933],{"class":279,"line":436},[277,72930,785],{"class":283},[277,72932,288],{"class":287},[277,72934,305],{"class":283},[277,72936,72937],{"class":279,"line":456},[277,72938,328],{"emptyLinePlaceholder":327},[277,72940,72941,72943,72945],{"class":279,"line":461},[277,72942,284],{"class":283},[277,72944,802],{"class":287},[277,72946,305],{"class":283},[277,72948,72949,72951],{"class":279,"line":476},[277,72950,810],{"class":283},[277,72952,22711],{"class":287},[277,72954,72955,72957,72959],{"class":279,"line":500},[277,72956,22716],{"class":291},[277,72958,298],{"class":283},[277,72960,22721],{"class":301},[277,72962,72963,72965,72967],{"class":279,"line":505},[277,72964,22726],{"class":291},[277,72966,298],{"class":283},[277,72968,22731],{"class":301},[277,72970,72972,72974,72976],{"class":72971,"line":520},[279,9398],[277,72973,22737],{"class":291},[277,72975,298],{"class":283},[277,72977,22742],{"class":301},[277,72979,72980,72982,72984],{"class":279,"line":539},[277,72981,22747],{"class":291},[277,72983,298],{"class":283},[277,72985,22752],{"class":301},[277,72987,72988],{"class":279,"line":545},[277,72989,22757],{"class":283},[277,72991,72992,72994,72996,72998,73000],{"class":279,"line":550},[277,72993,829],{"class":283},[277,72995,192],{"class":287},[277,72997,22766],{"class":283},[277,72999,192],{"class":287},[277,73001,305],{"class":283},[277,73003,73004,73006,73008,73010,73012],{"class":279,"line":578},[277,73005,829],{"class":283},[277,73007,21],{"class":287},[277,73009,22779],{"class":283},[277,73011,21],{"class":287},[277,73013,305],{"class":283},[277,73015,73016,73018,73020,73022,73024],{"class":279,"line":583},[277,73017,829],{"class":283},[277,73019,21],{"class":287},[277,73021,22792],{"class":283},[277,73023,21],{"class":287},[277,73025,305],{"class":283},[277,73027,73028,73030,73032,73034,73036,73038,73040,73042],{"class":279,"line":588},[277,73029,829],{"class":283},[277,73031,4267],{"class":287},[277,73033,4278],{"class":291},[277,73035,298],{"class":283},[277,73037,22809],{"class":301},[277,73039,22812],{"class":283},[277,73041,4267],{"class":287},[277,73043,305],{"class":283},[277,73045,73046,73048,73050],{"class":279,"line":606},[277,73047,954],{"class":283},[277,73049,813],{"class":287},[277,73051,305],{"class":283},[277,73053,73054,73056,73058],{"class":279,"line":614},[277,73055,785],{"class":283},[277,73057,802],{"class":287},[277,73059,305],{"class":283},[267,73061,73063],{"className":269,"code":22835,"filename":971,"highlights":73062,"language":272,"meta":273,"style":273},[545],[16,73064,73065,73079,73087,73093,73099,73115,73119,73139,73159,73179,73183,73187,73191,73195,73203,73207,73215,73221,73229,73237,73246,73254,73258,73270,73282,73294,73312,73320],{"__ignoreMap":273},[277,73066,73067,73069,73071,73073,73075,73077],{"class":279,"line":280},[277,73068,284],{"class":283},[277,73070,288],{"class":287},[277,73072,295],{"class":291},[277,73074,298],{"class":283},[277,73076,302],{"class":301},[277,73078,305],{"class":283},[277,73080,73081,73083,73085],{"class":279,"line":308},[277,73082,1057],{"class":311},[277,73084,1060],{"class":311},[277,73086,343],{"class":283},[277,73088,73089,73091],{"class":279,"line":324},[277,73090,1086],{"class":291},[277,73092,473],{"class":283},[277,73094,73095,73097],{"class":279,"line":331},[277,73096,1093],{"class":311},[277,73098,343],{"class":283},[277,73100,73101,73103,73105,73107,73109,73111,73113],{"class":279,"line":346},[277,73102,22877],{"class":283},[277,73104,430],{"class":356},[277,73106,1105],{"class":311},[277,73108,2473],{"class":356},[277,73110,421],{"class":311},[277,73112,424],{"class":356},[277,73114,1077],{"class":283},[277,73116,73117],{"class":279,"line":360},[277,73118,22894],{"class":283},[277,73120,73121,73123,73125,73127,73129,73131,73133,73135,73137],{"class":279,"line":371},[277,73122,2664],{"class":283},[277,73124,2072],{"class":356},[277,73126,22620],{"class":283},[277,73128,17584],{"class":301},[277,73130,22625],{"class":283},[277,73132,2149],{"class":356},[277,73134,22630],{"class":283},[277,73136,22633],{"class":356},[277,73138,2132],{"class":283},[277,73140,73141,73143,73145,73147,73149,73151,73153,73155,73157],{"class":279,"line":381},[277,73142,2664],{"class":283},[277,73144,2139],{"class":356},[277,73146,22620],{"class":283},[277,73148,22646],{"class":301},[277,73150,22625],{"class":283},[277,73152,2123],{"class":356},[277,73154,22630],{"class":283},[277,73156,22655],{"class":356},[277,73158,2132],{"class":283},[277,73160,73161,73163,73165,73167,73169,73171,73173,73175,73177],{"class":279,"line":391},[277,73162,2664],{"class":283},[277,73164,2163],{"class":356},[277,73166,22620],{"class":283},[277,73168,22668],{"class":301},[277,73170,22625],{"class":283},[277,73172,2149],{"class":356},[277,73174,22630],{"class":283},[277,73176,22677],{"class":356},[277,73178,2132],{"class":283},[277,73180,73181],{"class":279,"line":397},[277,73182,10174],{"class":283},[277,73184,73185],{"class":279,"line":402},[277,73186,18478],{"class":283},[277,73188,73189],{"class":279,"line":436},[277,73190,1131],{"class":283},[277,73192,73193],{"class":279,"line":456},[277,73194,18255],{"class":283},[277,73196,73197,73199,73201],{"class":279,"line":461},[277,73198,785],{"class":283},[277,73200,288],{"class":287},[277,73202,305],{"class":283},[277,73204,73205],{"class":279,"line":476},[277,73206,328],{"emptyLinePlaceholder":327},[277,73208,73209,73211,73213],{"class":279,"line":500},[277,73210,284],{"class":283},[277,73212,802],{"class":287},[277,73214,305],{"class":283},[277,73216,73217,73219],{"class":279,"line":505},[277,73218,810],{"class":283},[277,73220,22711],{"class":287},[277,73222,73223,73225,73227],{"class":279,"line":520},[277,73224,22716],{"class":291},[277,73226,298],{"class":283},[277,73228,22721],{"class":301},[277,73230,73231,73233,73235],{"class":279,"line":539},[277,73232,22726],{"class":291},[277,73234,298],{"class":283},[277,73236,22731],{"class":301},[277,73238,73240,73242,73244],{"class":73239,"line":545},[279,9398],[277,73241,22737],{"class":291},[277,73243,298],{"class":283},[277,73245,22742],{"class":301},[277,73247,73248,73250,73252],{"class":279,"line":550},[277,73249,22747],{"class":291},[277,73251,298],{"class":283},[277,73253,22752],{"class":301},[277,73255,73256],{"class":279,"line":578},[277,73257,22757],{"class":283},[277,73259,73260,73262,73264,73266,73268],{"class":279,"line":583},[277,73261,829],{"class":283},[277,73263,192],{"class":287},[277,73265,22766],{"class":283},[277,73267,192],{"class":287},[277,73269,305],{"class":283},[277,73271,73272,73274,73276,73278,73280],{"class":279,"line":588},[277,73273,829],{"class":283},[277,73275,21],{"class":287},[277,73277,22779],{"class":283},[277,73279,21],{"class":287},[277,73281,305],{"class":283},[277,73283,73284,73286,73288,73290,73292],{"class":279,"line":606},[277,73285,829],{"class":283},[277,73287,21],{"class":287},[277,73289,22792],{"class":283},[277,73291,21],{"class":287},[277,73293,305],{"class":283},[277,73295,73296,73298,73300,73302,73304,73306,73308,73310],{"class":279,"line":614},[277,73297,829],{"class":283},[277,73299,4267],{"class":287},[277,73301,4278],{"class":291},[277,73303,298],{"class":283},[277,73305,22809],{"class":301},[277,73307,22812],{"class":283},[277,73309,4267],{"class":287},[277,73311,305],{"class":283},[277,73313,73314,73316,73318],{"class":279,"line":625},[277,73315,954],{"class":283},[277,73317,813],{"class":287},[277,73319,305],{"class":283},[277,73321,73322,73324,73326],{"class":279,"line":637},[277,73323,785],{"class":283},[277,73325,802],{"class":287},[277,73327,305],{"class":283},[3111,73329,73330],{},[21,73331,23108,73332,23111,73334,23115,73336,23119],{},[16,73333,21909],{},[72,73335,23114],{},[16,73337,23118],{},[192,73339,23123,73340],{"id":23122},[16,73341,21912],{},[267,73343,73345],{"className":269,"code":23128,"filename":271,"highlights":73344,"language":272,"meta":273,"style":273},[381],[16,73346,73347,73363,73375,73383,73387,73395,73407,73411,73426],{"__ignoreMap":273},[277,73348,73349,73351,73353,73355,73357,73359,73361],{"class":279,"line":280},[277,73350,284],{"class":283},[277,73352,288],{"class":287},[277,73354,292],{"class":291},[277,73356,295],{"class":291},[277,73358,298],{"class":283},[277,73360,302],{"class":301},[277,73362,305],{"class":283},[277,73364,73365,73367,73369,73371,73373],{"class":279,"line":308},[277,73366,405],{"class":311},[277,73368,23154],{"class":356},[277,73370,340],{"class":311},[277,73372,23159],{"class":301},[277,73374,18151],{"class":283},[277,73376,73377,73379,73381],{"class":279,"line":324},[277,73378,785],{"class":283},[277,73380,288],{"class":287},[277,73382,305],{"class":283},[277,73384,73385],{"class":279,"line":331},[277,73386,328],{"emptyLinePlaceholder":327},[277,73388,73389,73391,73393],{"class":279,"line":346},[277,73390,284],{"class":283},[277,73392,802],{"class":287},[277,73394,305],{"class":283},[277,73396,73397,73399,73401,73403,73405],{"class":279,"line":360},[277,73398,810],{"class":283},[277,73400,21],{"class":287},[277,73402,23190],{"class":283},[277,73404,21],{"class":287},[277,73406,305],{"class":283},[277,73408,73409],{"class":279,"line":371},[277,73410,328],{"emptyLinePlaceholder":327},[277,73412,73414,73416,73418,73420,73422,73424],{"class":73413,"line":381},[279,9398],[277,73415,810],{"class":283},[277,73417,267],{"class":287},[277,73419,23208],{"class":291},[277,73421,23211],{"class":283},[277,73423,267],{"class":287},[277,73425,305],{"class":283},[277,73427,73428,73430,73432],{"class":279,"line":391},[277,73429,785],{"class":283},[277,73431,802],{"class":287},[277,73433,305],{"class":283},[267,73435,73437],{"className":269,"code":23226,"filename":971,"highlights":73436,"language":272,"meta":273,"style":273},[456],[16,73438,73439,73453,73461,73467,73473,73481,73485,73489,73493,73501,73505,73513,73525,73540],{"__ignoreMap":273},[277,73440,73441,73443,73445,73447,73449,73451],{"class":279,"line":280},[277,73442,284],{"class":283},[277,73444,288],{"class":287},[277,73446,295],{"class":291},[277,73448,298],{"class":283},[277,73450,302],{"class":301},[277,73452,305],{"class":283},[277,73454,73455,73457,73459],{"class":279,"line":308},[277,73456,1057],{"class":311},[277,73458,1060],{"class":311},[277,73460,343],{"class":283},[277,73462,73463,73465],{"class":279,"line":324},[277,73464,1086],{"class":291},[277,73466,473],{"class":283},[277,73468,73469,73471],{"class":279,"line":331},[277,73470,1093],{"class":311},[277,73472,343],{"class":283},[277,73474,73475,73477,73479],{"class":279,"line":346},[277,73476,23268],{"class":283},[277,73478,23271],{"class":301},[277,73480,1077],{"class":283},[277,73482,73483],{"class":279,"line":360},[277,73484,18478],{"class":283},[277,73486,73487],{"class":279,"line":371},[277,73488,1131],{"class":283},[277,73490,73491],{"class":279,"line":381},[277,73492,18255],{"class":283},[277,73494,73495,73497,73499],{"class":279,"line":391},[277,73496,785],{"class":283},[277,73498,288],{"class":287},[277,73500,305],{"class":283},[277,73502,73503],{"class":279,"line":397},[277,73504,328],{"emptyLinePlaceholder":327},[277,73506,73507,73509,73511],{"class":279,"line":402},[277,73508,284],{"class":283},[277,73510,802],{"class":287},[277,73512,305],{"class":283},[277,73514,73515,73517,73519,73521,73523],{"class":279,"line":436},[277,73516,810],{"class":283},[277,73518,21],{"class":287},[277,73520,23190],{"class":283},[277,73522,21],{"class":287},[277,73524,305],{"class":283},[277,73526,73528,73530,73532,73534,73536,73538],{"class":73527,"line":456},[279,9398],[277,73529,810],{"class":283},[277,73531,267],{"class":287},[277,73533,23208],{"class":291},[277,73535,23211],{"class":283},[277,73537,267],{"class":287},[277,73539,305],{"class":283},[277,73541,73542,73544,73546],{"class":279,"line":461},[277,73543,785],{"class":283},[277,73545,802],{"class":287},[277,73547,305],{"class":283},[192,73549,23344],{"id":23343},[21,73551,23347,73552,23350,73554,23353,73556,23356],{},[16,73553,21906],{},[16,73555,21909],{},[16,73557,21912],{},[267,73559,73560],{"className":269,"code":23359,"filename":271,"language":272,"meta":273,"style":273},[16,73561,73562,73578,73590,73594,73636,73640,73664,73680,73700,73720,73740,73744,73748,73786,73800,73808,73814,73836,73840,73848,73852,73860,73870,73882,73894,73902,73906,73914,73918,73932,73962,73970,73978,73982,73988,73996,74004,74012,74020,74024,74036,74048,74060,74068,74072,74080,74092,74106,74114],{"__ignoreMap":273},[277,73563,73564,73566,73568,73570,73572,73574,73576],{"class":279,"line":280},[277,73565,284],{"class":283},[277,73567,288],{"class":287},[277,73569,292],{"class":291},[277,73571,295],{"class":291},[277,73573,298],{"class":283},[277,73575,302],{"class":301},[277,73577,305],{"class":283},[277,73579,73580,73582,73584,73586,73588],{"class":279,"line":308},[277,73581,312],{"class":311},[277,73583,23384],{"class":283},[277,73585,318],{"class":311},[277,73587,18148],{"class":301},[277,73589,18151],{"class":283},[277,73591,73592],{"class":279,"line":324},[277,73593,328],{"emptyLinePlaceholder":327},[277,73595,73596,73598,73600,73602,73604,73606,73608,73610,73612,73614,73616,73618,73620,73622,73624,73626,73628,73630,73632,73634],{"class":279,"line":331},[277,73597,334],{"class":311},[277,73599,5630],{"class":291},[277,73601,340],{"class":311},[277,73603,5995],{"class":283},[277,73605,22042],{"class":349},[277,73607,353],{"class":311},[277,73609,2473],{"class":356},[277,73611,22537],{"class":283},[277,73613,23415],{"class":349},[277,73615,353],{"class":311},[277,73617,21376],{"class":356},[277,73619,22537],{"class":283},[277,73621,23424],{"class":349},[277,73623,353],{"class":311},[277,73625,22553],{"class":356},[277,73627,22537],{"class":283},[277,73629,23433],{"class":349},[277,73631,353],{"class":311},[277,73633,21376],{"class":356},[277,73635,19697],{"class":283},[277,73637,73638],{"class":279,"line":346},[277,73639,328],{"emptyLinePlaceholder":327},[277,73641,73642,73644,73646,73648,73650,73652,73654,73656,73658,73660,73662],{"class":279,"line":360},[277,73643,405],{"class":311},[277,73645,23450],{"class":356},[277,73647,340],{"class":311},[277,73649,413],{"class":291},[277,73651,284],{"class":283},[277,73653,23459],{"class":301},[277,73655,421],{"class":311},[277,73657,21376],{"class":356},[277,73659,427],{"class":283},[277,73661,23459],{"class":301},[277,73663,18277],{"class":283},[277,73665,73666,73668,73670,73672,73674,73676,73678],{"class":279,"line":371},[277,73667,405],{"class":311},[277,73669,2097],{"class":356},[277,73671,340],{"class":311},[277,73673,413],{"class":291},[277,73675,284],{"class":283},[277,73677,5684],{"class":291},[277,73679,22611],{"class":283},[277,73681,73682,73684,73686,73688,73690,73692,73694,73696,73698],{"class":279,"line":381},[277,73683,2109],{"class":283},[277,73685,2072],{"class":356},[277,73687,2114],{"class":283},[277,73689,23496],{"class":301},[277,73691,2120],{"class":283},[277,73693,2149],{"class":356},[277,73695,2126],{"class":283},[277,73697,17584],{"class":301},[277,73699,2132],{"class":283},[277,73701,73702,73704,73706,73708,73710,73712,73714,73716,73718],{"class":279,"line":391},[277,73703,2109],{"class":283},[277,73705,2139],{"class":356},[277,73707,2114],{"class":283},[277,73709,23517],{"class":301},[277,73711,2120],{"class":283},[277,73713,2123],{"class":356},[277,73715,2126],{"class":283},[277,73717,22646],{"class":301},[277,73719,2132],{"class":283},[277,73721,73722,73724,73726,73728,73730,73732,73734,73736,73738],{"class":279,"line":397},[277,73723,2109],{"class":283},[277,73725,2163],{"class":356},[277,73727,2114],{"class":283},[277,73729,23538],{"class":301},[277,73731,2120],{"class":283},[277,73733,2123],{"class":356},[277,73735,2126],{"class":283},[277,73737,17584],{"class":301},[277,73739,2132],{"class":283},[277,73741,73742],{"class":279,"line":402},[277,73743,22684],{"class":283},[277,73745,73746],{"class":279,"line":436},[277,73747,328],{"emptyLinePlaceholder":327},[277,73749,73750,73752,73754,73756,73758,73760,73762,73764,73766,73768,73770,73772,73774,73776,73778,73780,73782,73784],{"class":279,"line":456},[277,73751,405],{"class":311},[277,73753,23563],{"class":356},[277,73755,340],{"class":311},[277,73757,2200],{"class":291},[277,73759,2203],{"class":283},[277,73761,601],{"class":311},[277,73763,23574],{"class":283},[277,73765,23459],{"class":301},[277,73767,225],{"class":283},[277,73769,23581],{"class":311},[277,73771,16420],{"class":291},[277,73773,23586],{"class":283},[277,73775,3844],{"class":291},[277,73777,2334],{"class":283},[277,73779,23593],{"class":349},[277,73781,2340],{"class":283},[277,73783,601],{"class":311},[277,73785,23600],{"class":283},[277,73787,73788,73790,73792,73794,73796,73798],{"class":279,"line":461},[277,73789,405],{"class":311},[277,73791,2195],{"class":356},[277,73793,340],{"class":311},[277,73795,2200],{"class":291},[277,73797,2203],{"class":283},[277,73799,3716],{"class":311},[277,73801,73802,73804,73806],{"class":279,"line":476},[277,73803,23619],{"class":283},[277,73805,2503],{"class":311},[277,73807,23624],{"class":301},[277,73809,73810,73812],{"class":279,"line":500},[277,73811,23629],{"class":311},[277,73813,5919],{"class":283},[277,73815,73816,73818,73820,73822,73824,73826,73828,73830,73832,73834],{"class":279,"line":505},[277,73817,23636],{"class":311},[277,73819,2215],{"class":283},[277,73821,2218],{"class":291},[277,73823,2334],{"class":283},[277,73825,23593],{"class":349},[277,73827,2340],{"class":283},[277,73829,601],{"class":311},[277,73831,23651],{"class":283},[277,73833,2503],{"class":311},[277,73835,23656],{"class":283},[277,73837,73838],{"class":279,"line":520},[277,73839,18277],{"class":283},[277,73841,73842,73844,73846],{"class":279,"line":539},[277,73843,785],{"class":283},[277,73845,288],{"class":287},[277,73847,305],{"class":283},[277,73849,73850],{"class":279,"line":545},[277,73851,328],{"emptyLinePlaceholder":327},[277,73853,73854,73856,73858],{"class":279,"line":550},[277,73855,284],{"class":283},[277,73857,802],{"class":287},[277,73859,305],{"class":283},[277,73861,73862,73864,73866,73868],{"class":279,"line":578},[277,73863,810],{"class":283},[277,73865,4138],{"class":287},[277,73867,22314],{"class":291},[277,73869,305],{"class":283},[277,73871,73872,73874,73876,73878,73880],{"class":279,"line":583},[277,73873,829],{"class":283},[277,73875,30],{"class":287},[277,73877,23699],{"class":283},[277,73879,30],{"class":287},[277,73881,305],{"class":283},[277,73883,73884,73886,73888,73890,73892],{"class":279,"line":588},[277,73885,829],{"class":283},[277,73887,21],{"class":287},[277,73889,23712],{"class":283},[277,73891,21],{"class":287},[277,73893,305],{"class":283},[277,73895,73896,73898,73900],{"class":279,"line":606},[277,73897,954],{"class":283},[277,73899,4138],{"class":287},[277,73901,305],{"class":283},[277,73903,73904],{"class":279,"line":614},[277,73905,328],{"emptyLinePlaceholder":327},[277,73907,73908,73910,73912],{"class":279,"line":625},[277,73909,810],{"class":283},[277,73911,3875],{"class":287},[277,73913,305],{"class":283},[277,73915,73916],{"class":279,"line":637},[277,73917,23741],{"class":283},[277,73919,73920,73922,73924,73926,73928,73930],{"class":279,"line":646},[277,73921,829],{"class":283},[277,73923,23748],{"class":287},[277,73925,23751],{"class":291},[277,73927,298],{"class":283},[277,73929,23756],{"class":301},[277,73931,305],{"class":283},[277,73933,73934,73936,73938,73940,73942,73944,73946,73948,73950,73952,73954,73956,73958,73960],{"class":279,"line":668},[277,73935,879],{"class":283},[277,73937,23765],{"class":287},[277,73939,12785],{"class":291},[277,73941,298],{"class":283},[277,73943,23772],{"class":301},[277,73945,4317],{"class":291},[277,73947,298],{"class":283},[277,73949,23779],{"class":301},[277,73951,23782],{"class":291},[277,73953,298],{"class":283},[277,73955,23779],{"class":301},[277,73957,23789],{"class":283},[277,73959,23765],{"class":287},[277,73961,305],{"class":283},[277,73963,73964,73966,73968],{"class":279,"line":673},[277,73965,922],{"class":283},[277,73967,23748],{"class":287},[277,73969,305],{"class":283},[277,73971,73972,73974,73976],{"class":279,"line":679},[277,73973,954],{"class":283},[277,73975,3875],{"class":287},[277,73977,305],{"class":283},[277,73979,73980],{"class":279,"line":684},[277,73981,328],{"emptyLinePlaceholder":327},[277,73983,73984,73986],{"class":279,"line":700},[277,73985,810],{"class":283},[277,73987,23820],{"class":287},[277,73989,73990,73992,73994],{"class":279,"line":717},[277,73991,22716],{"class":291},[277,73993,298],{"class":283},[277,73995,6516],{"class":301},[277,73997,73998,74000,74002],{"class":279,"line":722},[277,73999,22726],{"class":291},[277,74001,298],{"class":283},[277,74003,6526],{"class":301},[277,74005,74006,74008,74010],{"class":279,"line":729},[277,74007,22737],{"class":291},[277,74009,298],{"class":283},[277,74011,23845],{"class":301},[277,74013,74014,74016,74018],{"class":279,"line":738},[277,74015,22747],{"class":291},[277,74017,298],{"class":283},[277,74019,23854],{"class":301},[277,74021,74022],{"class":279,"line":747},[277,74023,22757],{"class":283},[277,74025,74026,74028,74030,74032,74034],{"class":279,"line":754},[277,74027,829],{"class":283},[277,74029,192],{"class":287},[277,74031,23867],{"class":283},[277,74033,192],{"class":287},[277,74035,305],{"class":283},[277,74037,74038,74040,74042,74044,74046],{"class":279,"line":772},[277,74039,829],{"class":283},[277,74041,21],{"class":287},[277,74043,23880],{"class":283},[277,74045,21],{"class":287},[277,74047,305],{"class":283},[277,74049,74050,74052,74054,74056,74058],{"class":279,"line":777},[277,74051,829],{"class":283},[277,74053,21],{"class":287},[277,74055,23893],{"class":283},[277,74057,21],{"class":287},[277,74059,305],{"class":283},[277,74061,74062,74064,74066],{"class":279,"line":782},[277,74063,954],{"class":283},[277,74065,4121],{"class":287},[277,74067,305],{"class":283},[277,74069,74070],{"class":279,"line":792},[277,74071,328],{"emptyLinePlaceholder":327},[277,74073,74074,74076,74078],{"class":279,"line":797},[277,74075,810],{"class":283},[277,74077,21481],{"class":287},[277,74079,305],{"class":283},[277,74081,74082,74084,74086,74088,74090],{"class":279,"line":807},[277,74083,829],{"class":283},[277,74085,23924],{"class":287},[277,74087,23927],{"class":283},[277,74089,23924],{"class":287},[277,74091,305],{"class":283},[277,74093,74094,74096,74098,74100,74102,74104],{"class":279,"line":826},[277,74095,829],{"class":283},[277,74097,16],{"class":287},[277,74099,23208],{"class":291},[277,74101,23942],{"class":283},[277,74103,16],{"class":287},[277,74105,305],{"class":283},[277,74107,74108,74110,74112],{"class":279,"line":849},[277,74109,954],{"class":283},[277,74111,21481],{"class":287},[277,74113,305],{"class":283},[277,74115,74116,74118,74120],{"class":279,"line":854},[277,74117,785],{"class":283},[277,74119,802],{"class":287},[277,74121,305],{"class":283},[267,74123,74124],{"className":269,"code":23965,"filename":971,"language":272,"meta":273,"style":273},[16,74125,74126,74140,74148,74154,74160,74168,74172,74192,74212,74232,74236,74240,74244,74248,74254,74286,74290,74296,74308,74316,74342,74346,74350,74354,74362,74366,74374,74384,74396,74408,74416,74420,74428,74432,74446,74476,74484,74492,74496,74502,74510,74518,74526,74534,74538,74550,74562,74574,74582,74586,74594,74606,74620,74628],{"__ignoreMap":273},[277,74127,74128,74130,74132,74134,74136,74138],{"class":279,"line":280},[277,74129,284],{"class":283},[277,74131,288],{"class":287},[277,74133,295],{"class":291},[277,74135,298],{"class":283},[277,74137,302],{"class":301},[277,74139,305],{"class":283},[277,74141,74142,74144,74146],{"class":279,"line":308},[277,74143,1057],{"class":311},[277,74145,1060],{"class":311},[277,74147,343],{"class":283},[277,74149,74150,74152],{"class":279,"line":324},[277,74151,1086],{"class":291},[277,74153,473],{"class":283},[277,74155,74156,74158],{"class":279,"line":331},[277,74157,1093],{"class":311},[277,74159,343],{"class":283},[277,74161,74162,74164,74166],{"class":279,"line":346},[277,74163,24006],{"class":283},[277,74165,23459],{"class":301},[277,74167,1077],{"class":283},[277,74169,74170],{"class":279,"line":360},[277,74171,2659],{"class":283},[277,74173,74174,74176,74178,74180,74182,74184,74186,74188,74190],{"class":279,"line":371},[277,74175,2664],{"class":283},[277,74177,2072],{"class":356},[277,74179,2114],{"class":283},[277,74181,23496],{"class":301},[277,74183,2120],{"class":283},[277,74185,2149],{"class":356},[277,74187,2126],{"class":283},[277,74189,17584],{"class":301},[277,74191,2132],{"class":283},[277,74193,74194,74196,74198,74200,74202,74204,74206,74208,74210],{"class":279,"line":381},[277,74195,2664],{"class":283},[277,74197,2139],{"class":356},[277,74199,2114],{"class":283},[277,74201,23517],{"class":301},[277,74203,2120],{"class":283},[277,74205,2123],{"class":356},[277,74207,2126],{"class":283},[277,74209,22646],{"class":301},[277,74211,2132],{"class":283},[277,74213,74214,74216,74218,74220,74222,74224,74226,74228,74230],{"class":279,"line":391},[277,74215,2664],{"class":283},[277,74217,2163],{"class":356},[277,74219,2114],{"class":283},[277,74221,23538],{"class":301},[277,74223,2120],{"class":283},[277,74225,2123],{"class":356},[277,74227,2126],{"class":283},[277,74229,17584],{"class":301},[277,74231,2132],{"class":283},[277,74233,74234],{"class":279,"line":397},[277,74235,10174],{"class":283},[277,74237,74238],{"class":279,"line":402},[277,74239,18478],{"class":283},[277,74241,74242],{"class":279,"line":436},[277,74243,1131],{"class":283},[277,74245,74246],{"class":279,"line":456},[277,74247,2742],{"class":283},[277,74249,74250,74252],{"class":279,"line":461},[277,74251,24095],{"class":291},[277,74253,473],{"class":283},[277,74255,74256,74258,74260,74262,74264,74266,74268,74270,74272,74274,74276,74278,74280,74282,74284],{"class":279,"line":476},[277,74257,2754],{"class":311},[277,74259,23574],{"class":283},[277,74261,23459],{"class":301},[277,74263,225],{"class":283},[277,74265,23581],{"class":311},[277,74267,16420],{"class":291},[277,74269,448],{"class":283},[277,74271,1341],{"class":356},[277,74273,2759],{"class":283},[277,74275,3844],{"class":291},[277,74277,2334],{"class":283},[277,74279,23593],{"class":349},[277,74281,2340],{"class":283},[277,74283,601],{"class":311},[277,74285,24130],{"class":283},[277,74287,74288],{"class":279,"line":500},[277,74289,7016],{"class":283},[277,74291,74292,74294],{"class":279,"line":505},[277,74293,2747],{"class":291},[277,74295,473],{"class":283},[277,74297,74298,74300,74302,74304,74306],{"class":279,"line":520},[277,74299,2754],{"class":311},[277,74301,1268],{"class":356},[277,74303,24149],{"class":283},[277,74305,2503],{"class":311},[277,74307,23624],{"class":301},[277,74309,74310,74312,74314],{"class":279,"line":539},[277,74311,24158],{"class":311},[277,74313,1268],{"class":356},[277,74315,6767],{"class":283},[277,74317,74318,74320,74322,74324,74326,74328,74330,74332,74334,74336,74338,74340],{"class":279,"line":545},[277,74319,24167],{"class":311},[277,74321,1268],{"class":356},[277,74323,2759],{"class":283},[277,74325,2218],{"class":291},[277,74327,2334],{"class":283},[277,74329,23593],{"class":349},[277,74331,2340],{"class":283},[277,74333,601],{"class":311},[277,74335,23651],{"class":283},[277,74337,2503],{"class":311},[277,74339,1268],{"class":356},[277,74341,24190],{"class":283},[277,74343,74344],{"class":279,"line":550},[277,74345,7016],{"class":283},[277,74347,74348],{"class":279,"line":578},[277,74349,1131],{"class":283},[277,74351,74352],{"class":279,"line":583},[277,74353,18255],{"class":283},[277,74355,74356,74358,74360],{"class":279,"line":588},[277,74357,785],{"class":283},[277,74359,288],{"class":287},[277,74361,305],{"class":283},[277,74363,74364],{"class":279,"line":606},[277,74365,328],{"emptyLinePlaceholder":327},[277,74367,74368,74370,74372],{"class":279,"line":614},[277,74369,284],{"class":283},[277,74371,802],{"class":287},[277,74373,305],{"class":283},[277,74375,74376,74378,74380,74382],{"class":279,"line":625},[277,74377,810],{"class":283},[277,74379,4138],{"class":287},[277,74381,22314],{"class":291},[277,74383,305],{"class":283},[277,74385,74386,74388,74390,74392,74394],{"class":279,"line":637},[277,74387,829],{"class":283},[277,74389,30],{"class":287},[277,74391,23699],{"class":283},[277,74393,30],{"class":287},[277,74395,305],{"class":283},[277,74397,74398,74400,74402,74404,74406],{"class":279,"line":646},[277,74399,829],{"class":283},[277,74401,21],{"class":287},[277,74403,23712],{"class":283},[277,74405,21],{"class":287},[277,74407,305],{"class":283},[277,74409,74410,74412,74414],{"class":279,"line":668},[277,74411,954],{"class":283},[277,74413,4138],{"class":287},[277,74415,305],{"class":283},[277,74417,74418],{"class":279,"line":673},[277,74419,328],{"emptyLinePlaceholder":327},[277,74421,74422,74424,74426],{"class":279,"line":679},[277,74423,810],{"class":283},[277,74425,3875],{"class":287},[277,74427,305],{"class":283},[277,74429,74430],{"class":279,"line":684},[277,74431,23741],{"class":283},[277,74433,74434,74436,74438,74440,74442,74444],{"class":279,"line":700},[277,74435,829],{"class":283},[277,74437,23748],{"class":287},[277,74439,23751],{"class":291},[277,74441,298],{"class":283},[277,74443,23756],{"class":301},[277,74445,305],{"class":283},[277,74447,74448,74450,74452,74454,74456,74458,74460,74462,74464,74466,74468,74470,74472,74474],{"class":279,"line":717},[277,74449,879],{"class":283},[277,74451,23765],{"class":287},[277,74453,12785],{"class":291},[277,74455,298],{"class":283},[277,74457,23772],{"class":301},[277,74459,4317],{"class":291},[277,74461,298],{"class":283},[277,74463,23779],{"class":301},[277,74465,23782],{"class":291},[277,74467,298],{"class":283},[277,74469,23779],{"class":301},[277,74471,23789],{"class":283},[277,74473,23765],{"class":287},[277,74475,305],{"class":283},[277,74477,74478,74480,74482],{"class":279,"line":722},[277,74479,922],{"class":283},[277,74481,23748],{"class":287},[277,74483,305],{"class":283},[277,74485,74486,74488,74490],{"class":279,"line":729},[277,74487,954],{"class":283},[277,74489,3875],{"class":287},[277,74491,305],{"class":283},[277,74493,74494],{"class":279,"line":738},[277,74495,328],{"emptyLinePlaceholder":327},[277,74497,74498,74500],{"class":279,"line":747},[277,74499,810],{"class":283},[277,74501,23820],{"class":287},[277,74503,74504,74506,74508],{"class":279,"line":754},[277,74505,22716],{"class":291},[277,74507,298],{"class":283},[277,74509,6516],{"class":301},[277,74511,74512,74514,74516],{"class":279,"line":772},[277,74513,22726],{"class":291},[277,74515,298],{"class":283},[277,74517,6526],{"class":301},[277,74519,74520,74522,74524],{"class":279,"line":777},[277,74521,22737],{"class":291},[277,74523,298],{"class":283},[277,74525,23845],{"class":301},[277,74527,74528,74530,74532],{"class":279,"line":782},[277,74529,22747],{"class":291},[277,74531,298],{"class":283},[277,74533,23854],{"class":301},[277,74535,74536],{"class":279,"line":792},[277,74537,22757],{"class":283},[277,74539,74540,74542,74544,74546,74548],{"class":279,"line":797},[277,74541,829],{"class":283},[277,74543,192],{"class":287},[277,74545,23867],{"class":283},[277,74547,192],{"class":287},[277,74549,305],{"class":283},[277,74551,74552,74554,74556,74558,74560],{"class":279,"line":807},[277,74553,829],{"class":283},[277,74555,21],{"class":287},[277,74557,23880],{"class":283},[277,74559,21],{"class":287},[277,74561,305],{"class":283},[277,74563,74564,74566,74568,74570,74572],{"class":279,"line":826},[277,74565,829],{"class":283},[277,74567,21],{"class":287},[277,74569,23893],{"class":283},[277,74571,21],{"class":287},[277,74573,305],{"class":283},[277,74575,74576,74578,74580],{"class":279,"line":849},[277,74577,954],{"class":283},[277,74579,4121],{"class":287},[277,74581,305],{"class":283},[277,74583,74584],{"class":279,"line":854},[277,74585,328],{"emptyLinePlaceholder":327},[277,74587,74588,74590,74592],{"class":279,"line":876},[277,74589,810],{"class":283},[277,74591,21481],{"class":287},[277,74593,305],{"class":283},[277,74595,74596,74598,74600,74602,74604],{"class":279,"line":891},[277,74597,829],{"class":283},[277,74599,23924],{"class":287},[277,74601,23927],{"class":283},[277,74603,23924],{"class":287},[277,74605,305],{"class":283},[277,74607,74608,74610,74612,74614,74616,74618],{"class":279,"line":905},[277,74609,829],{"class":283},[277,74611,16],{"class":287},[277,74613,23208],{"class":291},[277,74615,23942],{"class":283},[277,74617,16],{"class":287},[277,74619,305],{"class":283},[277,74621,74622,74624,74626],{"class":279,"line":919},[277,74623,954],{"class":283},[277,74625,21481],{"class":287},[277,74627,305],{"class":283},[277,74629,74630,74632,74634],{"class":279,"line":929},[277,74631,785],{"class":283},[277,74633,802],{"class":287},[277,74635,305],{"class":283},[30,74637,1596],{"id":1595},[21,74639,74640,225,74642,1697,74644,24495],{},[16,74641,21906],{},[16,74643,21909],{},[16,74645,21912],{},[38,74647,74648,74652,74656],{},[41,74649,74650,24502],{},[16,74651,21906],{},[41,74653,74654,24507],{},[16,74655,21909],{},[41,74657,74658,24512],{},[16,74659,21912],{},[21,74661,24515],{},[1606,74663,24518],{},{"title":273,"searchDepth":308,"depth":308,"links":74665},[74666,74667,74672,74673,74674,74675,74681,74687],{"id":20624,"depth":308,"text":20625},{"id":60,"depth":308,"text":61,"children":74668},[74669,74670,74671],{"id":21906,"depth":324,"text":21906},{"id":21909,"depth":324,"text":21909},{"id":21912,"depth":324,"text":21912},{"id":128,"depth":308,"text":129},{"id":155,"depth":308,"text":156},{"id":5389,"depth":308,"text":5390},{"id":189,"depth":308,"text":190,"children":74676},[74677,74678,74679,74680],{"id":22119,"depth":324,"text":24533},{"id":22141,"depth":324,"text":24535},{"id":22155,"depth":324,"text":24537},{"id":22174,"depth":324,"text":22175},{"id":1945,"depth":308,"text":1946,"children":74682},[74683,74684,74685,74686],{"id":22188,"depth":324,"text":24542},{"id":22476,"depth":324,"text":24544},{"id":23122,"depth":324,"text":24546},{"id":23343,"depth":324,"text":23344},{"id":1595,"depth":308,"text":1596},{"script":74689},[74690],{"type":1632,"key":1633,"data-nuxt-schema-org":327,"nodes":74691},[74692],{"headline":24558,"author":74693,"datePublished":24560,"@type":1640},{"name":1637,"@type":1638},{"updatedAt":24560,"coverCaption":17759,"author":1637,"keywords":74695},[1645,21906,21909,21912,24563],[74697],{"headline":24558,"author":74698,"datePublished":24560,"@type":1640},{"name":1637,"@type":1638},{"title":21898,"description":24552},[74701,74702,74703,74704,74705],{"tag":20588,"color":20589},{"tag":17774,"color":17775},{"tag":3164,"color":3165},{"tag":3167,"color":3168},{"tag":1671,"color":1672},{"id":24578,"title":24579,"body":74707,"cover":25832,"coverAlt":25833,"date":25834,"description":25835,"draft":1627,"extension":1628,"head":75789,"locale":1656,"meta":75795,"navigation":327,"path":25847,"schemaOrg":75797,"seo":75800,"series":20582,"seriesDescription":20583,"seriesOrder":381,"seriesTitle":20584,"slug":1656,"stem":25852,"tags":75801,"__hash__":25858},{"type":8,"value":74708,"toc":75761},[74709,74715,74721,74735,74739,74741,74747,74757,74761,74763,74767,74771,74797,74799,74815,74821,74825,74829,74855,74857,74875,74877,74881,74895,74899,74913,74915,74919,74923,74927,74939,74941,74945,74947,74973,74983,74987,74989,75003,75011,75015,75021,75023,75025,75027,75031,75063,75067,75099,75101,75161,75163,75447,75725,75727,75749,75759],[11,74710,20605,74711,12494,74713],{"id":24584},[16,74712,24587],{},[16,74714,24590],{},[21,74716,24593,74717,1697,74719,24598],{},[16,74718,24587],{},[16,74720,24590],{},[38,74722,74723,74729],{},[41,74724,74725,24605,74727,104],{},[16,74726,24587],{},[72,74728,24608],{},[41,74730,74731,24605,74733,104],{},[16,74732,24590],{},[72,74734,24615],{},[3111,74736,74737],{},[21,74738,24620],{},[30,74740,20625],{"id":20624},[21,74742,24625,74743,1697,74745,24630],{},[16,74744,24587],{},[16,74746,24590],{},[38,74748,74749,74751,74753,74755],{},[41,74750,24635],{},[41,74752,24638],{},[41,74754,24641],{},[41,74756,24644],{},[3111,74758,74759],{},[21,74760,24649],{},[30,74762,24653],{"id":24652},[192,74764,74765],{"id":24587},[16,74766,24587],{},[21,74768,24660,74769,24664],{},[16,74770,24663],{},[267,74772,74773],{"className":269,"code":24667,"filename":9339,"language":272,"meta":273,"style":273},[16,74774,74775],{"__ignoreMap":273},[277,74776,74777,74779,74781,74783,74785,74787,74789,74791,74793,74795],{"class":279,"line":280},[277,74778,284],{"class":283},[277,74780,21],{"class":287},[277,74782,24678],{"class":291},[277,74784,298],{"class":283},[277,74786,866],{"class":301},[277,74788,24685],{"class":283},[277,74790,866],{"class":301},[277,74792,24690],{"class":283},[277,74794,21],{"class":287},[277,74796,305],{"class":283},[21,74798,24697],{},[267,74800,74801],{"className":269,"code":24700,"filename":9339,"language":272,"meta":273,"style":273},[16,74802,74803],{"__ignoreMap":273},[277,74804,74805,74807,74809,74811,74813],{"class":279,"line":280},[277,74806,284],{"class":283},[277,74808,21],{"class":287},[277,74810,23190],{"class":283},[277,74812,21],{"class":287},[277,74814,305],{"class":283},[3111,74816,74817],{},[21,74818,24719,74819,24723],{},[16,74820,24722],{},[192,74822,74823],{"id":24590},[16,74824,24590],{},[21,74826,24730,74827,24734],{},[16,74828,24733],{},[267,74830,74831],{"className":269,"code":24737,"filename":9339,"language":272,"meta":273,"style":273},[16,74832,74833],{"__ignoreMap":273},[277,74834,74835,74837,74839,74841,74843,74845,74847,74849,74851,74853],{"class":279,"line":280},[277,74836,284],{"class":283},[277,74838,4201],{"class":287},[277,74840,24748],{"class":291},[277,74842,298],{"class":283},[277,74844,866],{"class":301},[277,74846,24755],{"class":283},[277,74848,866],{"class":301},[277,74850,24690],{"class":283},[277,74852,4201],{"class":287},[277,74854,305],{"class":283},[21,74856,24766],{},[38,74858,74859,74865,74871,74873],{},[41,74860,74861,10969,74863,24776],{},[16,74862,24590],{},[72,74864,24775],{},[41,74866,24779,74867,225,74869,1808],{},[16,74868,7538],{},[16,74870,24784],{},[41,74872,24787],{},[41,74874,24790],{},[30,74876,24794],{"id":24793},[192,74878,20777,74879,7669],{"id":24797},[16,74880,24587],{},[38,74882,74883,74885,74891,74893],{},[41,74884,24804],{},[41,74886,24807,74887,118,74889,24812],{},[16,74888,284],{},[16,74890,9921],{},[41,74892,24815],{},[41,74894,24818],{},[192,74896,20777,74897,7669],{"id":24821},[16,74898,24590],{},[38,74900,74901,74903,74905,74911],{},[41,74902,24828],{},[41,74904,24831],{},[41,74906,24834,74907,225,74909,24841],{},[16,74908,24837],{},[16,74910,24840],{},[41,74912,24844],{},[30,74914,24848],{"id":24847},[192,74916,7664,74917,7669],{"id":24851},[16,74918,24587],{},[38,74920,74921],{},[41,74922,24858],{},[192,74924,7664,74925,7669],{"id":24861},[16,74926,24590],{},[38,74928,74929,74931,74933,74935],{},[41,74930,24868],{},[41,74932,24871],{},[41,74934,24874],{},[41,74936,24877,74937,24881],{},[16,74938,24880],{},[30,74940,190],{"id":189},[192,74942,20821,74943,24889],{"id":24886},[16,74944,24590],{},[21,74946,24892],{},[267,74948,74949],{"className":269,"code":24895,"filename":9339,"language":272,"meta":273,"style":273},[16,74950,74951],{"__ignoreMap":273},[277,74952,74953,74955,74957,74959,74961,74963,74965,74967,74969,74971],{"class":279,"line":280},[277,74954,284],{"class":283},[277,74956,4201],{"class":287},[277,74958,24748],{"class":291},[277,74960,298],{"class":283},[277,74962,866],{"class":301},[277,74964,24912],{"class":283},[277,74966,866],{"class":301},[277,74968,24690],{"class":283},[277,74970,4201],{"class":287},[277,74972,305],{"class":283},[21,74974,24923,74975,24926,74977,24930,74979,225,74981,24937],{},[16,74976,24912],{},[16,74978,24929],{},[16,74980,24933],{},[16,74982,24936],{},[192,74984,24941,74985,24944],{"id":24940},[16,74986,24590],{},[21,74988,24947],{},[267,74990,74991],{"className":15972,"code":24950,"filename":19438,"language":15975,"meta":273,"style":273},[16,74992,74993],{"__ignoreMap":273},[277,74994,74995,74997,74999,75001],{"class":279,"line":280},[277,74996,405],{"class":311},[277,74998,24959],{"class":356},[277,75000,340],{"class":311},[277,75002,24964],{"class":301},[3111,75004,75005],{},[21,75006,24969,75007,10969,75009,24975],{},[16,75008,24590],{},[72,75010,24974],{},[192,75012,24979,75013,24982],{"id":24978},[16,75014,24590],{},[21,75016,24985,75017,24988,75019,24991],{},[16,75018,24722],{},[16,75020,24587],{},[192,75022,24995],{"id":24994},[21,75024,24998],{},[30,75026,1946],{"id":1945},[192,75028,25004,75029,19],{"id":25003},[16,75030,24587],{},[267,75032,75033],{"className":269,"code":25009,"filename":9339,"language":272,"meta":273,"style":273},[16,75034,75035],{"__ignoreMap":273},[277,75036,75037,75039,75041,75043,75045,75047,75049,75051,75053,75055,75057,75059,75061],{"class":279,"line":280},[277,75038,284],{"class":283},[277,75040,21],{"class":287},[277,75042,816],{"class":291},[277,75044,298],{"class":283},[277,75046,25024],{"class":301},[277,75048,24678],{"class":291},[277,75050,298],{"class":283},[277,75052,866],{"class":301},[277,75054,25033],{"class":283},[277,75056,866],{"class":301},[277,75058,24690],{"class":283},[277,75060,21],{"class":287},[277,75062,305],{"class":283},[192,75064,25045,75065,25048],{"id":25044},[16,75066,24590],{},[267,75068,75069],{"className":269,"code":25051,"filename":9339,"language":272,"meta":273,"style":273},[16,75070,75071],{"__ignoreMap":273},[277,75072,75073,75075,75077,75079,75081,75083,75085,75087,75089,75091,75093,75095,75097],{"class":279,"line":280},[277,75074,284],{"class":283},[277,75076,813],{"class":287},[277,75078,816],{"class":291},[277,75080,298],{"class":283},[277,75082,25066],{"class":301},[277,75084,24748],{"class":291},[277,75086,298],{"class":283},[277,75088,866],{"class":301},[277,75090,25075],{"class":283},[277,75092,866],{"class":301},[277,75094,24690],{"class":283},[277,75096,813],{"class":287},[277,75098,305],{"class":283},[192,75100,25087],{"id":25086},[267,75102,75103],{"className":269,"code":25090,"filename":9339,"language":272,"meta":273,"style":273},[16,75104,75105,75137],{"__ignoreMap":273},[277,75106,75107,75109,75111,75113,75115,75117,75119,75121,75123,75125,75127,75129,75131,75133,75135],{"class":279,"line":280},[277,75108,284],{"class":283},[277,75110,4201],{"class":287},[277,75112,834],{"class":311},[277,75114,298],{"class":283},[277,75116,866],{"class":301},[277,75118,25107],{"class":283},[277,75120,866],{"class":301},[277,75122,24748],{"class":291},[277,75124,298],{"class":283},[277,75126,866],{"class":301},[277,75128,25075],{"class":283},[277,75130,866],{"class":301},[277,75132,24690],{"class":283},[277,75134,4201],{"class":287},[277,75136,305],{"class":283},[277,75138,75139,75141,75143,75145,75147,75149,75151,75153,75155,75157,75159],{"class":279,"line":308},[277,75140,284],{"class":283},[277,75142,21],{"class":287},[277,75144,941],{"class":311},[277,75146,24678],{"class":291},[277,75148,298],{"class":283},[277,75150,866],{"class":301},[277,75152,25142],{"class":283},[277,75154,866],{"class":301},[277,75156,24690],{"class":283},[277,75158,21],{"class":287},[277,75160,305],{"class":283},[30,75162,1976],{"id":1975},[267,75164,75165],{"className":269,"code":25155,"filename":271,"language":272,"meta":273,"style":273},[16,75166,75167,75183,75195,75199,75215,75231,75247,75251,75267,75271,75311,75315,75319,75337,75345,75349,75357,75365,75377,75381,75411,75431,75439],{"__ignoreMap":273},[277,75168,75169,75171,75173,75175,75177,75179,75181],{"class":279,"line":280},[277,75170,284],{"class":283},[277,75172,288],{"class":287},[277,75174,292],{"class":291},[277,75176,295],{"class":291},[277,75178,298],{"class":283},[277,75180,302],{"class":301},[277,75182,305],{"class":283},[277,75184,75185,75187,75189,75191,75193],{"class":279,"line":308},[277,75186,312],{"class":311},[277,75188,23384],{"class":283},[277,75190,318],{"class":311},[277,75192,18148],{"class":301},[277,75194,18151],{"class":283},[277,75196,75197],{"class":279,"line":324},[277,75198,328],{"emptyLinePlaceholder":327},[277,75200,75201,75203,75205,75207,75209,75211,75213],{"class":279,"line":331},[277,75202,405],{"class":311},[277,75204,25196],{"class":356},[277,75206,340],{"class":311},[277,75208,413],{"class":291},[277,75210,448],{"class":283},[277,75212,2149],{"class":356},[277,75214,18277],{"class":283},[277,75216,75217,75219,75221,75223,75225,75227,75229],{"class":279,"line":346},[277,75218,405],{"class":311},[277,75220,25213],{"class":356},[277,75222,340],{"class":311},[277,75224,413],{"class":291},[277,75226,448],{"class":283},[277,75228,25222],{"class":301},[277,75230,18277],{"class":283},[277,75232,75233,75235,75237,75239,75241,75243,75245],{"class":279,"line":360},[277,75234,405],{"class":311},[277,75236,25231],{"class":356},[277,75238,340],{"class":311},[277,75240,413],{"class":291},[277,75242,448],{"class":283},[277,75244,25240],{"class":301},[277,75246,18277],{"class":283},[277,75248,75249],{"class":279,"line":371},[277,75250,328],{"emptyLinePlaceholder":327},[277,75252,75253,75255,75257,75259,75261,75263,75265],{"class":279,"line":381},[277,75254,2460],{"class":311},[277,75256,25253],{"class":291},[277,75258,448],{"class":283},[277,75260,18041],{"class":349},[277,75262,353],{"class":311},[277,75264,21376],{"class":356},[277,75266,2476],{"class":283},[277,75268,75269],{"class":279,"line":391},[277,75270,25268],{"class":12741},[277,75272,75273,75275,75277,75279,75281,75283,75285,75287,75289,75291,75293,75295,75297,75299,75301,75303,75305,75307,75309],{"class":279,"line":397},[277,75274,2212],{"class":311},[277,75276,25275],{"class":283},[277,75278,25278],{"class":291},[277,75280,448],{"class":283},[277,75282,15951],{"class":301},[277,75284,25286],{"class":25285},[277,75286,104],{"class":356},[277,75288,25291],{"class":311},[277,75290,9921],{"class":25285},[277,75292,104],{"class":356},[277,75294,25291],{"class":311},[277,75296,284],{"class":25285},[277,75298,25303],{"class":25302},[277,75300,25306],{"class":25285},[277,75302,15951],{"class":301},[277,75304,25311],{"class":311},[277,75306,225],{"class":283},[277,75308,25316],{"class":301},[277,75310,18277],{"class":283},[277,75312,75313],{"class":279,"line":402},[277,75314,394],{"class":283},[277,75316,75317],{"class":279,"line":436},[277,75318,328],{"emptyLinePlaceholder":327},[277,75320,75321,75323,75325,75327,75329,75331,75333,75335],{"class":279,"line":456},[277,75322,405],{"class":311},[277,75324,25333],{"class":356},[277,75326,340],{"class":311},[277,75328,2200],{"class":291},[277,75330,2203],{"class":283},[277,75332,601],{"class":311},[277,75334,25253],{"class":291},[277,75336,25346],{"class":283},[277,75338,75339,75341,75343],{"class":279,"line":461},[277,75340,785],{"class":283},[277,75342,288],{"class":287},[277,75344,305],{"class":283},[277,75346,75347],{"class":279,"line":476},[277,75348,328],{"emptyLinePlaceholder":327},[277,75350,75351,75353,75355],{"class":279,"line":500},[277,75352,284],{"class":283},[277,75354,802],{"class":287},[277,75356,305],{"class":283},[277,75358,75359,75361,75363],{"class":279,"line":505},[277,75360,810],{"class":283},[277,75362,4121],{"class":287},[277,75364,305],{"class":283},[277,75366,75367,75369,75371,75373,75375],{"class":279,"line":520},[277,75368,829],{"class":283},[277,75370,30],{"class":287},[277,75372,25383],{"class":283},[277,75374,30],{"class":287},[277,75376,305],{"class":283},[277,75378,75379],{"class":279,"line":539},[277,75380,328],{"emptyLinePlaceholder":327},[277,75382,75383,75385,75387,75389,75391,75393,75395,75397,75399,75401,75403,75405,75407,75409],{"class":279,"line":545},[277,75384,829],{"class":283},[277,75386,4201],{"class":287},[277,75388,834],{"class":291},[277,75390,298],{"class":283},[277,75392,25404],{"class":301},[277,75394,816],{"class":291},[277,75396,298],{"class":283},[277,75398,25066],{"class":301},[277,75400,24748],{"class":291},[277,75402,298],{"class":283},[277,75404,25417],{"class":301},[277,75406,24690],{"class":283},[277,75408,4201],{"class":287},[277,75410,305],{"class":283},[277,75412,75413,75415,75417,75419,75421,75423,75425,75427,75429],{"class":279,"line":550},[277,75414,829],{"class":283},[277,75416,21],{"class":287},[277,75418,941],{"class":291},[277,75420,24678],{"class":291},[277,75422,298],{"class":283},[277,75424,25438],{"class":301},[277,75426,24690],{"class":283},[277,75428,21],{"class":287},[277,75430,305],{"class":283},[277,75432,75433,75435,75437],{"class":279,"line":578},[277,75434,954],{"class":283},[277,75436,4121],{"class":287},[277,75438,305],{"class":283},[277,75440,75441,75443,75445],{"class":279,"line":583},[277,75442,785],{"class":283},[277,75444,802],{"class":287},[277,75446,305],{"class":283},[267,75448,75449],{"className":269,"code":25463,"filename":971,"language":272,"meta":273,"style":273},[16,75450,75451,75459,75467,75473,75479,75487,75495,75503,75507,75511,75515,75521,75537,75541,75545,75549,75559,75563,75603,75607,75611,75615,75623,75627,75635,75643,75655,75659,75689,75709,75717],{"__ignoreMap":273},[277,75452,75453,75455,75457],{"class":279,"line":280},[277,75454,284],{"class":283},[277,75456,288],{"class":287},[277,75458,305],{"class":283},[277,75460,75461,75463,75465],{"class":279,"line":308},[277,75462,1057],{"class":311},[277,75464,1060],{"class":311},[277,75466,343],{"class":283},[277,75468,75469,75471],{"class":279,"line":324},[277,75470,1086],{"class":291},[277,75472,473],{"class":283},[277,75474,75475,75477],{"class":279,"line":331},[277,75476,1093],{"class":311},[277,75478,343],{"class":283},[277,75480,75481,75483,75485],{"class":279,"line":346},[277,75482,25498],{"class":283},[277,75484,2149],{"class":356},[277,75486,1077],{"class":283},[277,75488,75489,75491,75493],{"class":279,"line":360},[277,75490,25507],{"class":283},[277,75492,25222],{"class":301},[277,75494,1077],{"class":283},[277,75496,75497,75499,75501],{"class":279,"line":371},[277,75498,25516],{"class":283},[277,75500,25240],{"class":301},[277,75502,1077],{"class":283},[277,75504,75505],{"class":279,"line":381},[277,75506,18478],{"class":283},[277,75508,75509],{"class":279,"line":391},[277,75510,1131],{"class":283},[277,75512,75513],{"class":279,"line":397},[277,75514,2742],{"class":283},[277,75516,75517,75519],{"class":279,"line":402},[277,75518,25537],{"class":291},[277,75520,473],{"class":283},[277,75522,75523,75525,75527,75529,75531,75533,75535],{"class":279,"line":436},[277,75524,2754],{"class":311},[277,75526,1268],{"class":356},[277,75528,104],{"class":283},[277,75530,25550],{"class":291},[277,75532,448],{"class":283},[277,75534,1341],{"class":356},[277,75536,25557],{"class":283},[277,75538,75539],{"class":279,"line":456},[277,75540,7016],{"class":283},[277,75542,75543],{"class":279,"line":461},[277,75544,1131],{"class":283},[277,75546,75547],{"class":279,"line":476},[277,75548,1140],{"class":283},[277,75550,75551,75553,75555,75557],{"class":279,"line":500},[277,75552,25574],{"class":291},[277,75554,448],{"class":283},[277,75556,18041],{"class":349},[277,75558,2476],{"class":283},[277,75560,75561],{"class":279,"line":505},[277,75562,25585],{"class":12741},[277,75564,75565,75567,75569,75571,75573,75575,75577,75579,75581,75583,75585,75587,75589,75591,75593,75595,75597,75599,75601],{"class":279,"line":520},[277,75566,2754],{"class":311},[277,75568,25275],{"class":283},[277,75570,25278],{"class":291},[277,75572,448],{"class":283},[277,75574,15951],{"class":301},[277,75576,25286],{"class":25285},[277,75578,104],{"class":356},[277,75580,25291],{"class":311},[277,75582,9921],{"class":25285},[277,75584,104],{"class":356},[277,75586,25291],{"class":311},[277,75588,284],{"class":25285},[277,75590,25303],{"class":25302},[277,75592,25306],{"class":25285},[277,75594,15951],{"class":301},[277,75596,25311],{"class":311},[277,75598,225],{"class":283},[277,75600,25316],{"class":301},[277,75602,18277],{"class":283},[277,75604,75605],{"class":279,"line":539},[277,75606,7016],{"class":283},[277,75608,75609],{"class":279,"line":545},[277,75610,1131],{"class":283},[277,75612,75613],{"class":279,"line":550},[277,75614,18255],{"class":283},[277,75616,75617,75619,75621],{"class":279,"line":578},[277,75618,785],{"class":283},[277,75620,288],{"class":287},[277,75622,305],{"class":283},[277,75624,75625],{"class":279,"line":583},[277,75626,328],{"emptyLinePlaceholder":327},[277,75628,75629,75631,75633],{"class":279,"line":588},[277,75630,284],{"class":283},[277,75632,802],{"class":287},[277,75634,305],{"class":283},[277,75636,75637,75639,75641],{"class":279,"line":606},[277,75638,810],{"class":283},[277,75640,4121],{"class":287},[277,75642,305],{"class":283},[277,75644,75645,75647,75649,75651,75653],{"class":279,"line":614},[277,75646,829],{"class":283},[277,75648,30],{"class":287},[277,75650,25383],{"class":283},[277,75652,30],{"class":287},[277,75654,305],{"class":283},[277,75656,75657],{"class":279,"line":625},[277,75658,328],{"emptyLinePlaceholder":327},[277,75660,75661,75663,75665,75667,75669,75671,75673,75675,75677,75679,75681,75683,75685,75687],{"class":279,"line":637},[277,75662,829],{"class":283},[277,75664,4201],{"class":287},[277,75666,834],{"class":291},[277,75668,298],{"class":283},[277,75670,25404],{"class":301},[277,75672,816],{"class":291},[277,75674,298],{"class":283},[277,75676,25066],{"class":301},[277,75678,24748],{"class":291},[277,75680,298],{"class":283},[277,75682,25417],{"class":301},[277,75684,24690],{"class":283},[277,75686,4201],{"class":287},[277,75688,305],{"class":283},[277,75690,75691,75693,75695,75697,75699,75701,75703,75705,75707],{"class":279,"line":646},[277,75692,829],{"class":283},[277,75694,21],{"class":287},[277,75696,941],{"class":291},[277,75698,24678],{"class":291},[277,75700,298],{"class":283},[277,75702,25438],{"class":301},[277,75704,24690],{"class":283},[277,75706,21],{"class":287},[277,75708,305],{"class":283},[277,75710,75711,75713,75715],{"class":279,"line":668},[277,75712,954],{"class":283},[277,75714,4121],{"class":287},[277,75716,305],{"class":283},[277,75718,75719,75721,75723],{"class":279,"line":673},[277,75720,785],{"class":283},[277,75722,802],{"class":287},[277,75724,305],{"class":283},[30,75726,1596],{"id":1595},[38,75728,75729,75733,75739,75743,75747],{},[41,75730,75731,25756],{},[16,75732,24587],{},[41,75734,25759,75735,25762,75737,104],{},[16,75736,24722],{},[16,75738,24587],{},[41,75740,75741,25769],{},[16,75742,24590],{},[41,75744,75745,25774],{},[16,75746,24590],{},[41,75748,25777],{},[3111,75750,75751],{},[21,75752,75753,25785,75755,25788,75757,25791],{},[72,75754,25784],{},[16,75756,24587],{},[16,75758,24590],{},[1606,75760,25794],{},{"title":273,"searchDepth":308,"depth":308,"links":75762},[75763,75764,75768,75772,75776,75782,75787,75788],{"id":20624,"depth":308,"text":20625},{"id":24652,"depth":308,"text":24653,"children":75765},[75766,75767],{"id":24587,"depth":324,"text":24587},{"id":24590,"depth":324,"text":24590},{"id":24793,"depth":308,"text":24794,"children":75769},[75770,75771],{"id":24797,"depth":324,"text":25805},{"id":24821,"depth":324,"text":25807},{"id":24847,"depth":308,"text":24848,"children":75773},[75774,75775],{"id":24851,"depth":324,"text":25811},{"id":24861,"depth":324,"text":25813},{"id":189,"depth":308,"text":190,"children":75777},[75778,75779,75780,75781],{"id":24886,"depth":324,"text":25817},{"id":24940,"depth":324,"text":25819},{"id":24978,"depth":324,"text":25821},{"id":24994,"depth":324,"text":24995},{"id":1945,"depth":308,"text":1946,"children":75783},[75784,75785,75786],{"id":25003,"depth":324,"text":25826},{"id":25044,"depth":324,"text":25828},{"id":25086,"depth":324,"text":25087},{"id":1975,"depth":308,"text":1976},{"id":1595,"depth":308,"text":1596},{"script":75790},[75791],{"type":1632,"key":1633,"data-nuxt-schema-org":327,"nodes":75792},[75793],{"headline":24579,"author":75794,"datePublished":25842,"@type":1640},{"name":1637,"@type":1638},{"updatedAt":25842,"coverCaption":25844,"keywords":75796},[1645,24587,24590,25846,10645,271,971],[75798],{"headline":24579,"author":75799,"datePublished":25842,"@type":1640},{"name":1637,"@type":1638},{"title":24579,"description":25835},[75802,75803,75804,75805],{"tag":20588,"color":20589},{"tag":21891,"color":21892},{"tag":3164,"color":3165},{"tag":9074,"color":9075},{"id":25860,"title":25861,"body":75807,"cover":28089,"coverAlt":28090,"date":28091,"description":28092,"draft":1627,"extension":1628,"head":77845,"locale":1641,"meta":77851,"navigation":327,"path":28106,"schemaOrg":77853,"seo":77856,"series":20582,"seriesDescription":20583,"seriesOrder":371,"seriesTitle":20584,"slug":1656,"stem":28111,"tags":77857,"__hash__":28118},{"type":8,"value":75808,"toc":77826},[75809,75813,75817,75819,75821,75823,75831,75837,75839,75843,75897,75960,75962,75982,75984,76000,76008,76010,76014,76028,76030,76032,76040,76044,76046,76052,76056,76064,76096,76131,76133,76137,76184,76186,76188,76190,76192,76206,76210,76212,76214,76216,76240,76242,76244,76317,76319,76463,76465,76596,76600,76602,76670,76674,76676,76678,76988,77226,77228,77230,77548,77802,77804,77824],[11,75810,20605,75811],{"id":25866},[16,75812,25869],{},[21,75814,75815,25874],{},[16,75816,25869],{},[21,75818,25877],{},[30,75820,20625],{"id":20624},[21,75822,25882],{},[38,75824,75825,75827,75829],{},[41,75826,25887],{},[41,75828,25890],{},[41,75830,25893],{},[3111,75832,75833],{},[21,75834,11996,75835,25900],{},[16,75836,25869],{},[30,75838,24653],{"id":24652},[21,75840,25905,75841,25909],{},[16,75842,25908],{},[267,75844,75846],{"className":269,"code":25912,"filename":25913,"highlights":75845,"language":272,"meta":273,"style":273},[324],[16,75847,75848,75856,75870,75881,75889],{"__ignoreMap":273},[277,75849,75850,75852,75854],{"class":279,"line":280},[277,75851,284],{"class":283},[277,75853,802],{"class":287},[277,75855,305],{"class":283},[277,75857,75858,75860,75862,75864,75866,75868],{"class":279,"line":308},[277,75859,810],{"class":283},[277,75861,4121],{"class":287},[277,75863,816],{"class":291},[277,75865,298],{"class":283},[277,75867,25937],{"class":301},[277,75869,305],{"class":283},[277,75871,75873,75875,75877,75879],{"class":75872,"line":324},[279,9398],[277,75874,829],{"class":283},[277,75876,25947],{"class":287},[277,75878,25951],{"class":25950},[277,75880,305],{"class":283},[277,75882,75883,75885,75887],{"class":279,"line":331},[277,75884,954],{"class":283},[277,75886,4121],{"class":287},[277,75888,305],{"class":283},[277,75890,75891,75893,75895],{"class":279,"line":346},[277,75892,785],{"class":283},[277,75894,802],{"class":287},[277,75896,305],{"class":283},[267,75898,75900],{"className":269,"code":25972,"filename":9339,"highlights":75899,"language":272,"meta":273,"style":273},[308,346],[16,75901,75902,75910,75919,75931,75943,75952],{"__ignoreMap":273},[277,75903,75904,75906,75908],{"class":279,"line":280},[277,75905,284],{"class":283},[277,75907,802],{"class":287},[277,75909,305],{"class":283},[277,75911,75913,75915,75917],{"class":75912,"line":308},[279,9398],[277,75914,810],{"class":283},[277,75916,25991],{"class":287},[277,75918,305],{"class":283},[277,75920,75921,75923,75925,75927,75929],{"class":279,"line":324},[277,75922,829],{"class":283},[277,75924,30],{"class":287},[277,75926,26002],{"class":283},[277,75928,30],{"class":287},[277,75930,305],{"class":283},[277,75932,75933,75935,75937,75939,75941],{"class":279,"line":331},[277,75934,829],{"class":283},[277,75936,21],{"class":287},[277,75938,26015],{"class":283},[277,75940,21],{"class":287},[277,75942,305],{"class":283},[277,75944,75946,75948,75950],{"class":75945,"line":346},[279,9398],[277,75947,954],{"class":283},[277,75949,25991],{"class":287},[277,75951,305],{"class":283},[277,75953,75954,75956,75958],{"class":279,"line":360},[277,75955,785],{"class":283},[277,75957,802],{"class":287},[277,75959,305],{"class":283},[21,75961,26039],{},[38,75963,75964,75970,75976],{},[41,75965,75966,20699,75968],{},[72,75967,26046],{},[16,75969,25908],{},[41,75971,75972,20699,75974],{},[72,75973,26053],{},[16,75975,26056],{},[41,75977,75978,20699,75980],{},[72,75979,26061],{},[16,75981,26064],{},[21,75983,26067],{},[38,75985,75986,75990,75996],{},[41,75987,75988,26075],{},[16,75989,26074],{},[41,75991,75992,225,75994,26084],{},[16,75993,26080],{},[16,75995,26083],{},[41,75997,75998,26090],{},[16,75999,26089],{},[3111,76001,76002],{},[21,76003,76004,26098,76006,104],{},[16,76005,26097],{},[16,76007,26101],{},[30,76009,129],{"id":128},[21,76011,20777,76012,7669],{},[16,76013,25869],{},[38,76015,76016,76018,76022],{},[41,76017,26112],{},[41,76019,26115,76020,1895],{},[16,76021,26118],{},[41,76023,26121,76024,225,76026,26128],{},[16,76025,26124],{},[16,76027,26127],{},[30,76029,156],{"id":155},[21,76031,162],{},[38,76033,76034,76036,76038],{},[41,76035,26137],{},[41,76037,26140],{},[41,76039,26143],{},[3111,76041,76042],{},[21,76043,26148],{},[30,76045,190],{"id":189},[192,76047,20821,76048,26156,76050],{"id":26153},[16,76049,25869],{},[16,76051,26159],{},[21,76053,76054,26164],{},[16,76055,25869],{},[38,76057,76058,76060],{},[41,76059,26169],{},[41,76061,1860,76062,26174],{},[16,76063,26159],{},[267,76065,76067],{"className":269,"code":26177,"filename":26178,"highlights":76066,"language":272,"meta":273,"style":273},[280],[16,76068,76069,76084,76088],{"__ignoreMap":273},[277,76070,76072,76074,76076,76078,76080,76082],{"class":76071,"line":280},[279,9398],[277,76073,284],{"class":283},[277,76075,4201],{"class":287},[277,76077,26191],{"class":291},[277,76079,353],{"class":283},[277,76081,4138],{"class":291},[277,76083,305],{"class":283},[277,76085,76086],{"class":279,"line":308},[277,76087,26202],{"class":283},[277,76089,76090,76092,76094],{"class":279,"line":324},[277,76091,785],{"class":283},[277,76093,4201],{"class":287},[277,76095,305],{"class":283},[267,76097,76099],{"className":269,"code":26213,"filename":26214,"highlights":76098,"language":272,"meta":273,"style":273},[308,331],[16,76100,76101,76109,76114,76118,76123],{"__ignoreMap":273},[277,76102,76103,76105,76107],{"class":279,"line":280},[277,76104,284],{"class":283},[277,76106,25991],{"class":287},[277,76108,305],{"class":283},[277,76110,76112],{"class":76111,"line":308},[279,9398],[277,76113,26231],{"class":283},[277,76115,76116],{"class":279,"line":324},[277,76117,26236],{"class":283},[277,76119,76121],{"class":76120,"line":331},[279,9398],[277,76122,26242],{"class":283},[277,76124,76125,76127,76129],{"class":279,"line":346},[277,76126,785],{"class":283},[277,76128,25991],{"class":287},[277,76130,305],{"class":283},[192,76132,26254],{"id":26253},[21,76134,26257,76135,26261],{},[16,76136,26260],{},[267,76138,76140],{"className":269,"code":26264,"filename":26265,"highlights":76139,"language":272,"meta":273,"style":273},[280,308],[16,76141,76142,76163,76168,76172,76176],{"__ignoreMap":273},[277,76143,76145,76147,76149,76151,76153,76155,76157,76159,76161],{"class":76144,"line":280},[279,9398],[277,76146,284],{"class":283},[277,76148,26276],{"class":287},[277,76150,6244],{"class":283},[277,76152,26281],{"class":291},[277,76154,298],{"class":283},[277,76156,866],{"class":301},[277,76158,26288],{"class":283},[277,76160,866],{"class":301},[277,76162,305],{"class":283},[277,76164,76166],{"class":76165,"line":308},[279,9398],[277,76167,26298],{"class":283},[277,76169,76170],{"class":279,"line":324},[277,76171,26303],{"class":283},[277,76173,76174],{"class":279,"line":331},[277,76175,26242],{"class":283},[277,76177,76178,76180,76182],{"class":279,"line":346},[277,76179,785],{"class":283},[277,76181,26276],{"class":287},[277,76183,305],{"class":283},[21,76185,26318],{},[192,76187,26322],{"id":26321},[21,76189,26325],{},[21,76191,25784],{},[38,76193,76194,76198,76202],{},[41,76195,76196,26335],{},[72,76197,26334],{},[41,76199,76200,26341],{},[72,76201,26340],{},[41,76203,76204,26347],{},[72,76205,26346],{},[3111,76207,76208],{},[21,76209,26352],{},[192,76211,26356],{"id":26355},[21,76213,26359],{},[21,76215,26362],{},[267,76217,76218],{"className":269,"code":26365,"filename":25913,"language":272,"meta":273,"style":273},[16,76219,76220,76228,76232],{"__ignoreMap":273},[277,76221,76222,76224,76226],{"class":279,"line":280},[277,76223,284],{"class":283},[277,76225,25947],{"class":287},[277,76227,305],{"class":283},[277,76229,76230],{"class":279,"line":308},[277,76231,26380],{"class":283},[277,76233,76234,76236,76238],{"class":279,"line":324},[277,76235,785],{"class":283},[277,76237,25947],{"class":287},[277,76239,305],{"class":283},[30,76241,1946],{"id":1945},[192,76243,26394],{"id":26393},[267,76245,76247],{"className":269,"code":26397,"filename":25913,"highlights":76246,"language":272,"meta":273,"style":273},[324,346],[16,76248,76249,76257,76271,76280,76292,76301,76309],{"__ignoreMap":273},[277,76250,76251,76253,76255],{"class":279,"line":280},[277,76252,284],{"class":283},[277,76254,802],{"class":287},[277,76256,305],{"class":283},[277,76258,76259,76261,76263,76265,76267,76269],{"class":279,"line":308},[277,76260,810],{"class":283},[277,76262,813],{"class":287},[277,76264,816],{"class":291},[277,76266,298],{"class":283},[277,76268,25937],{"class":301},[277,76270,305],{"class":283},[277,76272,76274,76276,76278],{"class":76273,"line":324},[279,9398],[277,76275,829],{"class":283},[277,76277,25947],{"class":287},[277,76279,305],{"class":283},[277,76281,76282,76284,76286,76288,76290],{"class":279,"line":331},[277,76283,879],{"class":283},[277,76285,21],{"class":287},[277,76287,26440],{"class":283},[277,76289,21],{"class":287},[277,76291,305],{"class":283},[277,76293,76295,76297,76299],{"class":76294,"line":346},[279,9398],[277,76296,922],{"class":283},[277,76298,25947],{"class":287},[277,76300,305],{"class":283},[277,76302,76303,76305,76307],{"class":279,"line":360},[277,76304,954],{"class":283},[277,76306,813],{"class":287},[277,76308,305],{"class":283},[277,76310,76311,76313,76315],{"class":279,"line":371},[277,76312,785],{"class":283},[277,76314,802],{"class":287},[277,76316,305],{"class":283},[192,76318,26473],{"id":26472},[267,76320,76322],{"className":269,"code":26476,"filename":26477,"highlights":76321,"language":272,"meta":273,"style":273},[331,381,436],[16,76323,76324,76332,76346,76354,76371,76379,76383,76391,76402,76410,76414,76422,76439,76447,76455],{"__ignoreMap":273},[277,76325,76326,76328,76330],{"class":279,"line":280},[277,76327,284],{"class":283},[277,76329,802],{"class":287},[277,76331,305],{"class":283},[277,76333,76334,76336,76338,76340,76342,76344],{"class":279,"line":308},[277,76335,810],{"class":283},[277,76337,4121],{"class":287},[277,76339,816],{"class":291},[277,76341,298],{"class":283},[277,76343,26501],{"class":301},[277,76345,305],{"class":283},[277,76347,76348,76350,76352],{"class":279,"line":324},[277,76349,829],{"class":283},[277,76351,4138],{"class":287},[277,76353,305],{"class":283},[277,76355,76357,76359,76361,76363,76365,76367,76369],{"class":76356,"line":331},[279,9398],[277,76358,879],{"class":283},[277,76360,25947],{"class":287},[277,76362,26521],{"class":291},[277,76364,298],{"class":283},[277,76366,26526],{"class":301},[277,76368,25951],{"class":25950},[277,76370,305],{"class":283},[277,76372,76373,76375,76377],{"class":279,"line":346},[277,76374,922],{"class":283},[277,76376,4138],{"class":287},[277,76378,305],{"class":283},[277,76380,76381],{"class":279,"line":360},[277,76382,328],{"emptyLinePlaceholder":327},[277,76384,76385,76387,76389],{"class":279,"line":371},[277,76386,829],{"class":283},[277,76388,26549],{"class":287},[277,76390,305],{"class":283},[277,76392,76394,76396,76398,76400],{"class":76393,"line":381},[279,9398],[277,76395,879],{"class":283},[277,76397,25947],{"class":287},[277,76399,25951],{"class":25950},[277,76401,305],{"class":283},[277,76403,76404,76406,76408],{"class":279,"line":391},[277,76405,922],{"class":283},[277,76407,26549],{"class":287},[277,76409,305],{"class":283},[277,76411,76412],{"class":279,"line":397},[277,76413,328],{"emptyLinePlaceholder":327},[277,76415,76416,76418,76420],{"class":279,"line":402},[277,76417,829],{"class":283},[277,76419,26581],{"class":287},[277,76421,305],{"class":283},[277,76423,76425,76427,76429,76431,76433,76435,76437],{"class":76424,"line":436},[279,9398],[277,76426,879],{"class":283},[277,76428,25947],{"class":287},[277,76430,26521],{"class":291},[277,76432,298],{"class":283},[277,76434,26597],{"class":301},[277,76436,25951],{"class":25950},[277,76438,305],{"class":283},[277,76440,76441,76443,76445],{"class":279,"line":456},[277,76442,922],{"class":283},[277,76444,26581],{"class":287},[277,76446,305],{"class":283},[277,76448,76449,76451,76453],{"class":279,"line":461},[277,76450,954],{"class":283},[277,76452,4121],{"class":287},[277,76454,305],{"class":283},[277,76456,76457,76459,76461],{"class":279,"line":476},[277,76458,785],{"class":283},[277,76460,802],{"class":287},[277,76462,305],{"class":283},[192,76464,26629],{"id":26628},[267,76466,76468],{"className":269,"code":26632,"filename":26265,"highlights":76467,"language":272,"meta":273,"style":273},[360,381],[16,76469,76470,76478,76486,76494,76514,76522,76543,76547,76556,76564,76572,76580,76588],{"__ignoreMap":273},[277,76471,76472,76474,76476],{"class":279,"line":280},[277,76473,284],{"class":283},[277,76475,802],{"class":287},[277,76477,305],{"class":283},[277,76479,76480,76482,76484],{"class":279,"line":308},[277,76481,810],{"class":283},[277,76483,5392],{"class":287},[277,76485,305],{"class":283},[277,76487,76488,76490,76492],{"class":279,"line":324},[277,76489,829],{"class":283},[277,76491,5414],{"class":287},[277,76493,305],{"class":283},[277,76495,76496,76498,76500,76502,76504,76506,76508,76510,76512],{"class":279,"line":331},[277,76497,879],{"class":283},[277,76499,5398],{"class":287},[277,76501,12785],{"class":291},[277,76503,298],{"class":283},[277,76505,26672],{"class":301},[277,76507,4317],{"class":291},[277,76509,298],{"class":283},[277,76511,26679],{"class":301},[277,76513,305],{"class":283},[277,76515,76516,76518,76520],{"class":279,"line":346},[277,76517,26686],{"class":283},[277,76519,5419],{"class":287},[277,76521,305],{"class":283},[277,76523,76525,76527,76529,76531,76533,76535,76537,76539,76541],{"class":76524,"line":360},[279,9398],[277,76526,26696],{"class":283},[277,76528,25947],{"class":287},[277,76530,26521],{"class":291},[277,76532,298],{"class":283},[277,76534,26705],{"class":301},[277,76536,26708],{"class":291},[277,76538,298],{"class":283},[277,76540,26705],{"class":301},[277,76542,305],{"class":283},[277,76544,76545],{"class":279,"line":371},[277,76546,26719],{"class":283},[277,76548,76550,76552,76554],{"class":76549,"line":381},[279,9398],[277,76551,26725],{"class":283},[277,76553,25947],{"class":287},[277,76555,305],{"class":283},[277,76557,76558,76560,76562],{"class":279,"line":391},[277,76559,26734],{"class":283},[277,76561,5419],{"class":287},[277,76563,305],{"class":283},[277,76565,76566,76568,76570],{"class":279,"line":397},[277,76567,4175],{"class":283},[277,76569,5398],{"class":287},[277,76571,305],{"class":283},[277,76573,76574,76576,76578],{"class":279,"line":402},[277,76575,922],{"class":283},[277,76577,5414],{"class":287},[277,76579,305],{"class":283},[277,76581,76582,76584,76586],{"class":279,"line":436},[277,76583,954],{"class":283},[277,76585,5392],{"class":287},[277,76587,305],{"class":283},[277,76589,76590,76592,76594],{"class":279,"line":456},[277,76591,785],{"class":283},[277,76593,802],{"class":287},[277,76595,305],{"class":283},[192,76597,26774,76598,26777],{"id":26773},[16,76599,25869],{},[21,76601,26780],{},[267,76603,76605],{"className":269,"code":26783,"filename":26784,"highlights":76604,"language":272,"meta":273,"style":273},[324],[16,76606,76607,76615,76623,76634,76646,76654,76662],{"__ignoreMap":273},[277,76608,76609,76611,76613],{"class":279,"line":280},[277,76610,284],{"class":283},[277,76612,802],{"class":287},[277,76614,305],{"class":283},[277,76616,76617,76619,76621],{"class":279,"line":308},[277,76618,810],{"class":283},[277,76620,26802],{"class":287},[277,76622,305],{"class":283},[277,76624,76626,76628,76630,76632],{"class":76625,"line":324},[279,9398],[277,76627,829],{"class":283},[277,76629,802],{"class":287},[277,76631,26191],{"class":291},[277,76633,26816],{"class":283},[277,76635,76636,76638,76640,76642,76644],{"class":279,"line":331},[277,76637,879],{"class":283},[277,76639,21],{"class":287},[277,76641,26825],{"class":283},[277,76643,21],{"class":287},[277,76645,305],{"class":283},[277,76647,76648,76650,76652],{"class":279,"line":346},[277,76649,922],{"class":283},[277,76651,802],{"class":287},[277,76653,305],{"class":283},[277,76655,76656,76658,76660],{"class":279,"line":360},[277,76657,954],{"class":283},[277,76659,26802],{"class":287},[277,76661,305],{"class":283},[277,76663,76664,76666,76668],{"class":279,"line":371},[277,76665,785],{"class":283},[277,76667,802],{"class":287},[277,76669,305],{"class":283},[3111,76671,76672],{},[21,76673,26858],{},[11,76675,26862],{"id":26861},[21,76677,26865],{},[267,76679,76680],{"className":269,"code":26868,"filename":26265,"language":272,"meta":273,"style":273},[16,76681,76682,76692,76698,76702,76706,76714,76718,76722,76730,76734,76742,76756,76764,76772,76790,76808,76826,76834,76842,76850,76870,76882,76894,76902,76922,76940,76948,76956,76964,76972,76980],{"__ignoreMap":273},[277,76683,76684,76686,76688,76690],{"class":279,"line":280},[277,76685,284],{"class":283},[277,76687,288],{"class":287},[277,76689,292],{"class":291},[277,76691,305],{"class":283},[277,76693,76694,76696],{"class":279,"line":308},[277,76695,26885],{"class":291},[277,76697,1066],{"class":283},[277,76699,76700],{"class":279,"line":324},[277,76701,26892],{"class":283},[277,76703,76704],{"class":279,"line":331},[277,76705,26897],{"class":283},[277,76707,76708,76710,76712],{"class":279,"line":346},[277,76709,26902],{"class":283},[277,76711,2149],{"class":356},[277,76713,1077],{"class":283},[277,76715,76716],{"class":279,"line":360},[277,76717,1131],{"class":283},[277,76719,76720],{"class":279,"line":371},[277,76721,21454],{"class":283},[277,76723,76724,76726,76728],{"class":279,"line":381},[277,76725,785],{"class":283},[277,76727,288],{"class":287},[277,76729,305],{"class":283},[277,76731,76732],{"class":279,"line":391},[277,76733,328],{"emptyLinePlaceholder":327},[277,76735,76736,76738,76740],{"class":279,"line":397},[277,76737,284],{"class":283},[277,76739,802],{"class":287},[277,76741,305],{"class":283},[277,76743,76744,76746,76748,76750,76752,76754],{"class":279,"line":402},[277,76745,810],{"class":283},[277,76747,5392],{"class":287},[277,76749,816],{"class":291},[277,76751,298],{"class":283},[277,76753,26947],{"class":301},[277,76755,305],{"class":283},[277,76757,76758,76760,76762],{"class":279,"line":436},[277,76759,829],{"class":283},[277,76761,5395],{"class":287},[277,76763,305],{"class":283},[277,76765,76766,76768,76770],{"class":279,"line":456},[277,76767,879],{"class":283},[277,76769,5398],{"class":287},[277,76771,305],{"class":283},[277,76773,76774,76776,76778,76780,76782,76784,76786,76788],{"class":279,"line":461},[277,76775,26686],{"class":283},[277,76777,5401],{"class":287},[277,76779,816],{"class":291},[277,76781,298],{"class":283},[277,76783,26978],{"class":301},[277,76785,26981],{"class":283},[277,76787,5401],{"class":287},[277,76789,305],{"class":283},[277,76791,76792,76794,76796,76798,76800,76802,76804,76806],{"class":279,"line":476},[277,76793,26686],{"class":283},[277,76795,5401],{"class":287},[277,76797,816],{"class":291},[277,76799,298],{"class":283},[277,76801,26978],{"class":301},[277,76803,27000],{"class":283},[277,76805,5401],{"class":287},[277,76807,305],{"class":283},[277,76809,76810,76812,76814,76816,76818,76820,76822,76824],{"class":279,"line":500},[277,76811,26686],{"class":283},[277,76813,5401],{"class":287},[277,76815,816],{"class":291},[277,76817,298],{"class":283},[277,76819,26978],{"class":301},[277,76821,27019],{"class":283},[277,76823,5401],{"class":287},[277,76825,305],{"class":283},[277,76827,76828,76830,76832],{"class":279,"line":505},[277,76829,4175],{"class":283},[277,76831,5398],{"class":287},[277,76833,305],{"class":283},[277,76835,76836,76838,76840],{"class":279,"line":520},[277,76837,922],{"class":283},[277,76839,5395],{"class":287},[277,76841,305],{"class":283},[277,76843,76844,76846,76848],{"class":279,"line":539},[277,76845,829],{"class":283},[277,76847,5414],{"class":287},[277,76849,305],{"class":283},[277,76851,76852,76854,76856,76858,76860,76862,76864,76866,76868],{"class":279,"line":545},[277,76853,879],{"class":283},[277,76855,5398],{"class":287},[277,76857,12785],{"class":291},[277,76859,298],{"class":283},[277,76861,27060],{"class":301},[277,76863,4317],{"class":291},[277,76865,298],{"class":283},[277,76867,12797],{"class":301},[277,76869,305],{"class":283},[277,76871,76872,76874,76876,76878,76880],{"class":279,"line":550},[277,76873,26686],{"class":283},[277,76875,5419],{"class":287},[277,76877,22766],{"class":283},[277,76879,5419],{"class":287},[277,76881,305],{"class":283},[277,76883,76884,76886,76888,76890,76892],{"class":279,"line":578},[277,76885,26686],{"class":283},[277,76887,5419],{"class":287},[277,76889,27089],{"class":283},[277,76891,5419],{"class":287},[277,76893,305],{"class":283},[277,76895,76896,76898,76900],{"class":279,"line":583},[277,76897,26686],{"class":283},[277,76899,5419],{"class":287},[277,76901,305],{"class":283},[277,76903,76904,76906,76908,76910,76912,76914,76916,76918,76920],{"class":279,"line":588},[277,76905,26696],{"class":283},[277,76907,25947],{"class":287},[277,76909,26521],{"class":291},[277,76911,298],{"class":283},[277,76913,27114],{"class":301},[277,76915,27117],{"class":291},[277,76917,298],{"class":283},[277,76919,21518],{"class":301},[277,76921,305],{"class":283},[277,76923,76924,76926,76928,76930,76932,76934,76936,76938],{"class":279,"line":606},[277,76925,27128],{"class":283},[277,76927,4267],{"class":287},[277,76929,4270],{"class":291},[277,76931,298],{"class":283},[277,76933,4275],{"class":301},[277,76935,27139],{"class":283},[277,76937,4267],{"class":287},[277,76939,305],{"class":283},[277,76941,76942,76944,76946],{"class":279,"line":614},[277,76943,26725],{"class":283},[277,76945,25947],{"class":287},[277,76947,305],{"class":283},[277,76949,76950,76952,76954],{"class":279,"line":625},[277,76951,26734],{"class":283},[277,76953,5419],{"class":287},[277,76955,305],{"class":283},[277,76957,76958,76960,76962],{"class":279,"line":637},[277,76959,4175],{"class":283},[277,76961,5398],{"class":287},[277,76963,305],{"class":283},[277,76965,76966,76968,76970],{"class":279,"line":646},[277,76967,922],{"class":283},[277,76969,5414],{"class":287},[277,76971,305],{"class":283},[277,76973,76974,76976,76978],{"class":279,"line":668},[277,76975,954],{"class":283},[277,76977,5392],{"class":287},[277,76979,305],{"class":283},[277,76981,76982,76984,76986],{"class":279,"line":673},[277,76983,785],{"class":283},[277,76985,802],{"class":287},[277,76987,305],{"class":283},[267,76989,76990],{"className":269,"code":27194,"filename":27195,"language":272,"meta":273,"style":273},[16,76991,76992,77002,77014,77026,77030,77042,77062,77082,77086,77090,77102,77112,77116,77124,77128,77136,77150,77170,77190,77194,77202,77210,77218],{"__ignoreMap":273},[277,76993,76994,76996,76998,77000],{"class":279,"line":280},[277,76995,284],{"class":283},[277,76997,288],{"class":287},[277,76999,292],{"class":291},[277,77001,305],{"class":283},[277,77003,77004,77006,77008,77010,77012],{"class":279,"line":308},[277,77005,312],{"class":311},[277,77007,11006],{"class":283},[277,77009,318],{"class":311},[277,77011,18148],{"class":301},[277,77013,18151],{"class":283},[277,77015,77016,77018,77020,77022,77024],{"class":279,"line":324},[277,77017,312],{"class":311},[277,77019,27226],{"class":283},[277,77021,318],{"class":311},[277,77023,27231],{"class":301},[277,77025,18151],{"class":283},[277,77027,77028],{"class":279,"line":331},[277,77029,328],{"emptyLinePlaceholder":327},[277,77031,77032,77034,77036,77038,77040],{"class":279,"line":346},[277,77033,405],{"class":311},[277,77035,11021],{"class":356},[277,77037,340],{"class":311},[277,77039,413],{"class":291},[277,77041,2104],{"class":283},[277,77043,77044,77046,77048,77050,77052,77054,77056,77058,77060],{"class":279,"line":360},[277,77045,2109],{"class":283},[277,77047,2072],{"class":356},[277,77049,22620],{"class":283},[277,77051,17584],{"class":301},[277,77053,27262],{"class":283},[277,77055,27265],{"class":301},[277,77057,27268],{"class":283},[277,77059,2149],{"class":356},[277,77061,2132],{"class":283},[277,77063,77064,77066,77068,77070,77072,77074,77076,77078,77080],{"class":279,"line":371},[277,77065,2109],{"class":283},[277,77067,2139],{"class":356},[277,77069,22620],{"class":283},[277,77071,22646],{"class":301},[277,77073,27262],{"class":283},[277,77075,27287],{"class":301},[277,77077,27268],{"class":283},[277,77079,2123],{"class":356},[277,77081,2132],{"class":283},[277,77083,77084],{"class":279,"line":381},[277,77085,22684],{"class":283},[277,77087,77088],{"class":279,"line":391},[277,77089,328],{"emptyLinePlaceholder":327},[277,77091,77092,77094,77096,77098,77100],{"class":279,"line":397},[277,77093,2460],{"class":311},[277,77095,27308],{"class":291},[277,77097,448],{"class":283},[277,77099,27313],{"class":349},[277,77101,2476],{"class":283},[277,77103,77104,77106,77108,77110],{"class":279,"line":402},[277,77105,27320],{"class":283},[277,77107,298],{"class":311},[277,77109,2288],{"class":311},[277,77111,27327],{"class":283},[277,77113,77114],{"class":279,"line":436},[277,77115,394],{"class":283},[277,77117,77118,77120,77122],{"class":279,"line":456},[277,77119,785],{"class":283},[277,77121,288],{"class":287},[277,77123,305],{"class":283},[277,77125,77126],{"class":279,"line":461},[277,77127,328],{"emptyLinePlaceholder":327},[277,77129,77130,77132,77134],{"class":279,"line":476},[277,77131,284],{"class":283},[277,77133,802],{"class":287},[277,77135,305],{"class":283},[277,77137,77138,77140,77142,77144,77146,77148],{"class":279,"line":500},[277,77139,810],{"class":283},[277,77141,26276],{"class":287},[277,77143,27360],{"class":291},[277,77145,298],{"class":283},[277,77147,27365],{"class":301},[277,77149,305],{"class":283},[277,77151,77152,77154,77156,77158,77160,77162,77164,77166,77168],{"class":279,"line":505},[277,77153,829],{"class":283},[277,77155,802],{"class":287},[277,77157,27376],{"class":283},[277,77159,27379],{"class":291},[277,77161,298],{"class":283},[277,77163,866],{"class":301},[277,77165,27386],{"class":283},[277,77167,866],{"class":301},[277,77169,305],{"class":283},[277,77171,77172,77174,77176,77178,77180,77182,77184,77186,77188],{"class":279,"line":520},[277,77173,879],{"class":283},[277,77175,4267],{"class":287},[277,77177,4270],{"class":291},[277,77179,298],{"class":283},[277,77181,4275],{"class":301},[277,77183,4278],{"class":291},[277,77185,298],{"class":283},[277,77187,27409],{"class":301},[277,77189,305],{"class":283},[277,77191,77192],{"class":279,"line":539},[277,77193,27416],{"class":283},[277,77195,77196,77198,77200],{"class":279,"line":545},[277,77197,4175],{"class":283},[277,77199,4267],{"class":287},[277,77201,305],{"class":283},[277,77203,77204,77206,77208],{"class":279,"line":550},[277,77205,922],{"class":283},[277,77207,802],{"class":287},[277,77209,305],{"class":283},[277,77211,77212,77214,77216],{"class":279,"line":578},[277,77213,954],{"class":283},[277,77215,26276],{"class":287},[277,77217,305],{"class":283},[277,77219,77220,77222,77224],{"class":279,"line":583},[277,77221,785],{"class":283},[277,77223,802],{"class":287},[277,77225,305],{"class":283},[11,77227,27452],{"id":27451},[21,77229,27455],{},[267,77231,77232],{"className":269,"code":27458,"filename":26265,"language":272,"meta":273,"style":273},[16,77233,77234,77242,77250,77254,77258,77262,77270,77274,77278,77282,77290,77294,77302,77316,77324,77332,77350,77368,77386,77394,77402,77410,77430,77442,77454,77462,77482,77500,77508,77516,77524,77532,77540],{"__ignoreMap":273},[277,77235,77236,77238,77240],{"class":279,"line":280},[277,77237,284],{"class":283},[277,77239,288],{"class":287},[277,77241,305],{"class":283},[277,77243,77244,77246,77248],{"class":279,"line":308},[277,77245,1057],{"class":311},[277,77247,1060],{"class":311},[277,77249,343],{"class":283},[277,77251,77252],{"class":279,"line":324},[277,77253,27481],{"class":283},[277,77255,77256],{"class":279,"line":331},[277,77257,27486],{"class":283},[277,77259,77260],{"class":279,"line":346},[277,77261,27491],{"class":283},[277,77263,77264,77266,77268],{"class":279,"line":360},[277,77265,27496],{"class":283},[277,77267,2149],{"class":356},[277,77269,1077],{"class":283},[277,77271,77272],{"class":279,"line":371},[277,77273,7016],{"class":283},[277,77275,77276],{"class":279,"line":381},[277,77277,1131],{"class":283},[277,77279,77280],{"class":279,"line":391},[277,77281,18255],{"class":283},[277,77283,77284,77286,77288],{"class":279,"line":397},[277,77285,785],{"class":283},[277,77287,288],{"class":287},[277,77289,305],{"class":283},[277,77291,77292],{"class":279,"line":402},[277,77293,328],{"emptyLinePlaceholder":327},[277,77295,77296,77298,77300],{"class":279,"line":436},[277,77297,284],{"class":283},[277,77299,802],{"class":287},[277,77301,305],{"class":283},[277,77303,77304,77306,77308,77310,77312,77314],{"class":279,"line":456},[277,77305,810],{"class":283},[277,77307,5392],{"class":287},[277,77309,816],{"class":291},[277,77311,298],{"class":283},[277,77313,26947],{"class":301},[277,77315,305],{"class":283},[277,77317,77318,77320,77322],{"class":279,"line":461},[277,77319,829],{"class":283},[277,77321,5395],{"class":287},[277,77323,305],{"class":283},[277,77325,77326,77328,77330],{"class":279,"line":476},[277,77327,879],{"class":283},[277,77329,5398],{"class":287},[277,77331,305],{"class":283},[277,77333,77334,77336,77338,77340,77342,77344,77346,77348],{"class":279,"line":500},[277,77335,26686],{"class":283},[277,77337,5401],{"class":287},[277,77339,816],{"class":291},[277,77341,298],{"class":283},[277,77343,26978],{"class":301},[277,77345,26981],{"class":283},[277,77347,5401],{"class":287},[277,77349,305],{"class":283},[277,77351,77352,77354,77356,77358,77360,77362,77364,77366],{"class":279,"line":505},[277,77353,26686],{"class":283},[277,77355,5401],{"class":287},[277,77357,816],{"class":291},[277,77359,298],{"class":283},[277,77361,26978],{"class":301},[277,77363,27000],{"class":283},[277,77365,5401],{"class":287},[277,77367,305],{"class":283},[277,77369,77370,77372,77374,77376,77378,77380,77382,77384],{"class":279,"line":520},[277,77371,26686],{"class":283},[277,77373,5401],{"class":287},[277,77375,816],{"class":291},[277,77377,298],{"class":283},[277,77379,26978],{"class":301},[277,77381,27019],{"class":283},[277,77383,5401],{"class":287},[277,77385,305],{"class":283},[277,77387,77388,77390,77392],{"class":279,"line":539},[277,77389,4175],{"class":283},[277,77391,5398],{"class":287},[277,77393,305],{"class":283},[277,77395,77396,77398,77400],{"class":279,"line":545},[277,77397,922],{"class":283},[277,77399,5395],{"class":287},[277,77401,305],{"class":283},[277,77403,77404,77406,77408],{"class":279,"line":550},[277,77405,829],{"class":283},[277,77407,5414],{"class":287},[277,77409,305],{"class":283},[277,77411,77412,77414,77416,77418,77420,77422,77424,77426,77428],{"class":279,"line":578},[277,77413,879],{"class":283},[277,77415,5398],{"class":287},[277,77417,12785],{"class":291},[277,77419,298],{"class":283},[277,77421,27060],{"class":301},[277,77423,4317],{"class":291},[277,77425,298],{"class":283},[277,77427,12797],{"class":301},[277,77429,305],{"class":283},[277,77431,77432,77434,77436,77438,77440],{"class":279,"line":583},[277,77433,26686],{"class":283},[277,77435,5419],{"class":287},[277,77437,22766],{"class":283},[277,77439,5419],{"class":287},[277,77441,305],{"class":283},[277,77443,77444,77446,77448,77450,77452],{"class":279,"line":588},[277,77445,26686],{"class":283},[277,77447,5419],{"class":287},[277,77449,27089],{"class":283},[277,77451,5419],{"class":287},[277,77453,305],{"class":283},[277,77455,77456,77458,77460],{"class":279,"line":606},[277,77457,26686],{"class":283},[277,77459,5419],{"class":287},[277,77461,305],{"class":283},[277,77463,77464,77466,77468,77470,77472,77474,77476,77478,77480],{"class":279,"line":614},[277,77465,26696],{"class":283},[277,77467,25947],{"class":287},[277,77469,26521],{"class":291},[277,77471,298],{"class":283},[277,77473,27114],{"class":301},[277,77475,27117],{"class":291},[277,77477,298],{"class":283},[277,77479,21518],{"class":301},[277,77481,305],{"class":283},[277,77483,77484,77486,77488,77490,77492,77494,77496,77498],{"class":279,"line":625},[277,77485,27128],{"class":283},[277,77487,4267],{"class":287},[277,77489,4270],{"class":291},[277,77491,298],{"class":283},[277,77493,4275],{"class":301},[277,77495,27139],{"class":283},[277,77497,4267],{"class":287},[277,77499,305],{"class":283},[277,77501,77502,77504,77506],{"class":279,"line":637},[277,77503,26725],{"class":283},[277,77505,25947],{"class":287},[277,77507,305],{"class":283},[277,77509,77510,77512,77514],{"class":279,"line":646},[277,77511,26734],{"class":283},[277,77513,5419],{"class":287},[277,77515,305],{"class":283},[277,77517,77518,77520,77522],{"class":279,"line":668},[277,77519,4175],{"class":283},[277,77521,5398],{"class":287},[277,77523,305],{"class":283},[277,77525,77526,77528,77530],{"class":279,"line":673},[277,77527,922],{"class":283},[277,77529,5414],{"class":287},[277,77531,305],{"class":283},[277,77533,77534,77536,77538],{"class":279,"line":679},[277,77535,954],{"class":283},[277,77537,5392],{"class":287},[277,77539,305],{"class":283},[277,77541,77542,77544,77546],{"class":279,"line":684},[277,77543,785],{"class":283},[277,77545,802],{"class":287},[277,77547,305],{"class":283},[267,77549,77550],{"className":269,"code":27781,"filename":27195,"language":272,"meta":273,"style":273},[16,77551,77552,77560,77572,77576,77584,77588,77594,77600,77604,77624,77644,77648,77652,77656,77660,77670,77680,77684,77688,77692,77700,77704,77712,77726,77746,77766,77770,77778,77786,77794],{"__ignoreMap":273},[277,77553,77554,77556,77558],{"class":279,"line":280},[277,77555,284],{"class":283},[277,77557,288],{"class":287},[277,77559,305],{"class":283},[277,77561,77562,77564,77566,77568,77570],{"class":279,"line":308},[277,77563,312],{"class":311},[277,77565,27226],{"class":283},[277,77567,318],{"class":311},[277,77569,27231],{"class":301},[277,77571,18151],{"class":283},[277,77573,77574],{"class":279,"line":324},[277,77575,328],{"emptyLinePlaceholder":327},[277,77577,77578,77580,77582],{"class":279,"line":331},[277,77579,1057],{"class":311},[277,77581,1060],{"class":311},[277,77583,343],{"class":283},[277,77585,77586],{"class":279,"line":346},[277,77587,27820],{"class":283},[277,77589,77590,77592],{"class":279,"line":360},[277,77591,1086],{"class":291},[277,77593,473],{"class":283},[277,77595,77596,77598],{"class":279,"line":371},[277,77597,1093],{"class":311},[277,77599,343],{"class":283},[277,77601,77602],{"class":279,"line":381},[277,77603,22894],{"class":283},[277,77605,77606,77608,77610,77612,77614,77616,77618,77620,77622],{"class":279,"line":391},[277,77607,2664],{"class":283},[277,77609,2072],{"class":356},[277,77611,22620],{"class":283},[277,77613,17584],{"class":301},[277,77615,27262],{"class":283},[277,77617,27265],{"class":301},[277,77619,27268],{"class":283},[277,77621,2149],{"class":356},[277,77623,2132],{"class":283},[277,77625,77626,77628,77630,77632,77634,77636,77638,77640,77642],{"class":279,"line":397},[277,77627,2664],{"class":283},[277,77629,2139],{"class":356},[277,77631,22620],{"class":283},[277,77633,22646],{"class":301},[277,77635,27262],{"class":283},[277,77637,27287],{"class":301},[277,77639,27268],{"class":283},[277,77641,2123],{"class":356},[277,77643,2132],{"class":283},[277,77645,77646],{"class":279,"line":402},[277,77647,10174],{"class":283},[277,77649,77650],{"class":279,"line":436},[277,77651,18478],{"class":283},[277,77653,77654],{"class":279,"line":456},[277,77655,1131],{"class":283},[277,77657,77658],{"class":279,"line":461},[277,77659,1140],{"class":283},[277,77661,77662,77664,77666,77668],{"class":279,"line":476},[277,77663,27897],{"class":291},[277,77665,448],{"class":283},[277,77667,27313],{"class":349},[277,77669,2476],{"class":283},[277,77671,77672,77674,77676,77678],{"class":279,"line":500},[277,77673,27908],{"class":283},[277,77675,298],{"class":311},[277,77677,2288],{"class":311},[277,77679,27327],{"class":283},[277,77681,77682],{"class":279,"line":505},[277,77683,7016],{"class":283},[277,77685,77686],{"class":279,"line":520},[277,77687,1131],{"class":283},[277,77689,77690],{"class":279,"line":539},[277,77691,18255],{"class":283},[277,77693,77694,77696,77698],{"class":279,"line":545},[277,77695,785],{"class":283},[277,77697,288],{"class":287},[277,77699,305],{"class":283},[277,77701,77702],{"class":279,"line":550},[277,77703,328],{"emptyLinePlaceholder":327},[277,77705,77706,77708,77710],{"class":279,"line":578},[277,77707,284],{"class":283},[277,77709,802],{"class":287},[277,77711,305],{"class":283},[277,77713,77714,77716,77718,77720,77722,77724],{"class":279,"line":583},[277,77715,810],{"class":283},[277,77717,26276],{"class":287},[277,77719,27360],{"class":291},[277,77721,298],{"class":283},[277,77723,27365],{"class":301},[277,77725,305],{"class":283},[277,77727,77728,77730,77732,77734,77736,77738,77740,77742,77744],{"class":279,"line":588},[277,77729,829],{"class":283},[277,77731,802],{"class":287},[277,77733,27376],{"class":283},[277,77735,27379],{"class":291},[277,77737,298],{"class":283},[277,77739,866],{"class":301},[277,77741,27386],{"class":283},[277,77743,866],{"class":301},[277,77745,305],{"class":283},[277,77747,77748,77750,77752,77754,77756,77758,77760,77762,77764],{"class":279,"line":606},[277,77749,879],{"class":283},[277,77751,4267],{"class":287},[277,77753,4270],{"class":291},[277,77755,298],{"class":283},[277,77757,4275],{"class":301},[277,77759,4278],{"class":291},[277,77761,298],{"class":283},[277,77763,27409],{"class":301},[277,77765,305],{"class":283},[277,77767,77768],{"class":279,"line":614},[277,77769,27416],{"class":283},[277,77771,77772,77774,77776],{"class":279,"line":625},[277,77773,4175],{"class":283},[277,77775,4267],{"class":287},[277,77777,305],{"class":283},[277,77779,77780,77782,77784],{"class":279,"line":637},[277,77781,922],{"class":283},[277,77783,802],{"class":287},[277,77785,305],{"class":283},[277,77787,77788,77790,77792],{"class":279,"line":646},[277,77789,954],{"class":283},[277,77791,26276],{"class":287},[277,77793,305],{"class":283},[277,77795,77796,77798,77800],{"class":279,"line":668},[277,77797,785],{"class":283},[277,77799,802],{"class":287},[277,77801,305],{"class":283},[30,77803,1596],{"id":1595},[38,77805,77806,77810,77812,77818,77820,77822],{},[41,77807,77808,28045],{},[16,77809,25869],{},[41,77811,28048],{},[41,77813,28051,77814,225,77816,1808],{},[16,77815,4138],{},[16,77817,26581],{},[41,77819,28058],{},[41,77821,28061],{},[41,77823,28064],{},[1606,77825,28067],{},{"title":273,"searchDepth":308,"depth":308,"links":77827},[77828,77829,77830,77831,77832,77838,77844],{"id":20624,"depth":308,"text":20625},{"id":24652,"depth":308,"text":24653},{"id":128,"depth":308,"text":129},{"id":155,"depth":308,"text":156},{"id":189,"depth":308,"text":190,"children":77833},[77834,77835,77836,77837],{"id":26153,"depth":324,"text":28077},{"id":26253,"depth":324,"text":26254},{"id":26321,"depth":324,"text":26322},{"id":26355,"depth":324,"text":26356},{"id":1945,"depth":308,"text":1946,"children":77839},[77840,77841,77842,77843],{"id":26393,"depth":324,"text":26394},{"id":26472,"depth":324,"text":26473},{"id":26628,"depth":324,"text":26629},{"id":26773,"depth":324,"text":28087},{"id":1595,"depth":308,"text":1596},{"script":77846},[77847],{"type":1632,"key":1633,"data-nuxt-schema-org":327,"nodes":77848},[77849],{"headline":28098,"author":77850,"datePublished":28100,"@type":1640},{"name":1637,"@type":1638},{"updatedAt":28100,"coverCaption":28102,"author":1637,"keywords":77852},[1645,25869,28104,26118,28105,271,971],[77854],{"headline":28098,"author":77855,"datePublished":28100,"@type":1640},{"name":1637,"@type":1638},{"title":25861,"description":28092},[77858,77859,77860,77861],{"tag":20588,"color":20589},{"tag":26340,"color":28115},{"tag":1668,"color":1669},{"tag":1671,"color":1672},{"id":28120,"title":28121,"body":77863,"cover":30923,"coverAlt":30924,"date":30925,"description":30926,"draft":1627,"extension":1628,"head":80432,"locale":1641,"meta":80438,"navigation":327,"path":30939,"schemaOrg":80440,"seo":80443,"series":20582,"seriesDescription":20583,"seriesOrder":360,"seriesTitle":20584,"slug":1656,"stem":30944,"tags":80444,"__hash__":30952},{"type":8,"value":77864,"toc":80409},[77865,77869,77873,77875,77879,77883,77895,77897,77901,77903,77917,77931,77933,77935,77951,77953,77967,77973,77975,77979,77981,77997,77999,78003,78015,78017,78019,78021,78077,78083,78087,78091,78093,78119,78125,78127,78149,78151,78153,78171,78173,78177,78179,78181,78303,78431,78435,78571,78705,78707,78829,78957,78959,78961,78967,79097,79643,79645,79651,79821,80373,80375,80379,80381,80383,80407],[11,77866,20605,77867],{"id":28126},[16,77868,17971],{},[21,77870,77871,28133],{},[16,77872,17971],{},[30,77874,20625],{"id":20624},[21,77876,28138,77877,28141],{},[16,77878,17971],{},[21,77880,11996,77881,28146],{},[16,77882,17971],{},[38,77884,77885,77891,77893],{},[41,77886,28151,77887,28155,77889,104],{},[16,77888,28154],{},[16,77890,28158],{},[41,77892,28161],{},[41,77894,28164],{},[30,77896,61],{"id":60},[21,77898,20529,77899,28171],{},[16,77900,17971],{},[192,77902,28175],{"id":28174},[38,77904,77905,77909],{},[41,77906,77907,28183],{},[16,77908,28182],{},[41,77910,28186,77911,225,77913,225,77915,1808],{},[16,77912,18041],{},[16,77914,28191],{},[16,77916,28194],{},[21,77918,28197,77919,28201,77921,28155,77923,28206,77925,28210,77927,28214,77929,104],{},[16,77920,28200],{},[16,77922,28154],{},[16,77924,28158],{},[16,77926,28209],{},[16,77928,28213],{},[16,77930,28191],{},[192,77932,28220],{"id":28219},[21,77934,28223],{},[38,77936,77937,77941,77945],{},[41,77938,28228,77939,104],{},[16,77940,28231],{},[41,77942,28234,77943,104],{},[16,77944,28237],{},[41,77946,28240,77947,225,77949,104],{},[16,77948,28243],{},[16,77950,28246],{},[21,77952,28249],{},[38,77954,77955,77959,77963],{},[41,77956,77957],{},[16,77958,28256],{},[41,77960,77961],{},[16,77962,28261],{},[41,77964,77965],{},[16,77966,28266],{},[21,77968,28269,77969,28273,77971,28276],{},[16,77970,28272],{},[16,77972,19250],{},[30,77974,129],{"id":128},[21,77976,20777,77977,28283],{},[16,77978,17971],{},[21,77980,3305],{},[38,77982,77983,77985,77987,77995],{},[41,77984,28290],{},[41,77986,28293],{},[41,77988,28296,77989,225,77991,225,77993,28306],{},[16,77990,28299],{},[16,77992,28302],{},[16,77994,28305],{},[41,77996,28309],{},[30,77998,156],{"id":155},[21,78000,7664,78001,7669],{},[16,78002,17971],{},[38,78004,78005,78009,78011,78013],{},[41,78006,28320,78007,28323],{},[16,78008,1732],{},[41,78010,28326],{},[41,78012,28329],{},[41,78014,28332],{},[30,78016,190],{"id":189},[192,78018,28338],{"id":28337},[21,78020,24892],{},[267,78022,78023],{"className":269,"code":28343,"filename":28344,"language":272,"meta":273,"style":273},[16,78024,78025,78041,78061,78069],{"__ignoreMap":273},[277,78026,78027,78029,78031,78033,78035,78037,78039],{"class":279,"line":280},[277,78028,284],{"class":283},[277,78030,288],{"class":287},[277,78032,292],{"class":291},[277,78034,295],{"class":291},[277,78036,298],{"class":283},[277,78038,302],{"class":301},[277,78040,305],{"class":283},[277,78042,78043,78045,78047,78049,78051,78053,78055,78057,78059],{"class":279,"line":308},[277,78044,405],{"class":311},[277,78046,28369],{"class":356},[277,78048,340],{"class":311},[277,78050,28374],{"class":291},[277,78052,21368],{"class":283},[277,78054,28231],{"class":349},[277,78056,353],{"class":311},[277,78058,21376],{"class":356},[277,78060,28385],{"class":283},[277,78062,78063,78065,78067],{"class":279,"line":324},[277,78064,28390],{"class":283},[277,78066,298],{"class":311},[277,78068,28395],{"class":301},[277,78070,78071,78073,78075],{"class":279,"line":331},[277,78072,785],{"class":283},[277,78074,288],{"class":287},[277,78076,305],{"class":283},[21,78078,28406,78079,28409,78081,104],{},[16,78080,28237],{},[16,78082,28412],{},[3111,78084,78085],{},[21,78086,28417],{},[192,78088,28421,78089,28424],{"id":28420},[16,78090,17971],{},[21,78092,24892],{},[267,78094,78095],{"className":269,"code":28429,"filename":28344,"language":272,"meta":273,"style":273},[16,78096,78097],{"__ignoreMap":273},[277,78098,78099,78101,78103,78105,78107,78109,78111,78113,78115,78117],{"class":279,"line":280},[277,78100,284],{"class":283},[277,78102,18041],{"class":287},[277,78104,23751],{"class":291},[277,78106,298],{"class":283},[277,78108,866],{"class":301},[277,78110,28446],{"class":283},[277,78112,28449],{"class":291},[277,78114,28452],{"class":283},[277,78116,866],{"class":301},[277,78118,4325],{"class":283},[3111,78120,78121],{},[21,78122,78123,28463],{},[16,78124,17971],{},[21,78126,28466],{},[267,78128,78129],{"className":269,"code":28469,"filename":28470,"language":272,"meta":273,"style":273},[16,78130,78131],{"__ignoreMap":273},[277,78132,78133,78135,78137,78139,78141,78143,78145,78147],{"class":279,"line":280},[277,78134,284],{"class":283},[277,78136,18041],{"class":287},[277,78138,23751],{"class":291},[277,78140,298],{"class":283},[277,78142,866],{"class":301},[277,78144,28487],{"class":283},[277,78146,866],{"class":301},[277,78148,4325],{"class":283},[192,78150,28495],{"id":28494},[21,78152,28498],{},[38,78154,78155,78159,78167],{},[41,78156,15938,78157,28505],{},[16,78158,28256],{},[41,78160,15938,78161,28510,78163,28513,78165,104],{},[16,78162,28261],{},[16,78164,5753],{},[16,78166,7971],{},[41,78168,15938,78169,28520],{},[16,78170,28266],{},[192,78172,28524],{"id":28523},[21,78174,28527,78175,28530],{},[16,78176,17971],{},[11,78178,1946],{"id":1945},[30,78180,28536],{"id":28535},[267,78182,78184],{"className":269,"code":28539,"filename":271,"highlights":78183,"language":272,"meta":273,"style":273},[397],[16,78185,78186,78202,78214,78218,78234,78242,78246,78254,78262,78266,78287,78295],{"__ignoreMap":273},[277,78187,78188,78190,78192,78194,78196,78198,78200],{"class":279,"line":280},[277,78189,284],{"class":283},[277,78191,288],{"class":287},[277,78193,292],{"class":291},[277,78195,295],{"class":291},[277,78197,298],{"class":283},[277,78199,302],{"class":301},[277,78201,305],{"class":283},[277,78203,78204,78206,78208,78210,78212],{"class":279,"line":308},[277,78205,312],{"class":311},[277,78207,11006],{"class":283},[277,78209,318],{"class":311},[277,78211,18148],{"class":301},[277,78213,18151],{"class":283},[277,78215,78216],{"class":279,"line":324},[277,78217,328],{"emptyLinePlaceholder":327},[277,78219,78220,78222,78224,78226,78228,78230,78232],{"class":279,"line":331},[277,78221,405],{"class":311},[277,78223,28581],{"class":356},[277,78225,340],{"class":311},[277,78227,413],{"class":291},[277,78229,448],{"class":283},[277,78231,25316],{"class":301},[277,78233,18277],{"class":283},[277,78235,78236,78238,78240],{"class":279,"line":346},[277,78237,785],{"class":283},[277,78239,288],{"class":287},[277,78241,305],{"class":283},[277,78243,78244],{"class":279,"line":360},[277,78245,328],{"emptyLinePlaceholder":327},[277,78247,78248,78250,78252],{"class":279,"line":371},[277,78249,284],{"class":283},[277,78251,802],{"class":287},[277,78253,305],{"class":283},[277,78255,78256,78258,78260],{"class":279,"line":381},[277,78257,810],{"class":283},[277,78259,3875],{"class":287},[277,78261,305],{"class":283},[277,78263,78264],{"class":279,"line":391},[277,78265,28624],{"class":283},[277,78267,78269,78271,78273,78275,78277,78279,78281,78283,78285],{"class":78268,"line":397},[279,9398],[277,78270,829],{"class":283},[277,78272,18041],{"class":287},[277,78274,28634],{"class":291},[277,78276,298],{"class":283},[277,78278,28639],{"class":301},[277,78280,4270],{"class":291},[277,78282,298],{"class":283},[277,78284,28646],{"class":301},[277,78286,4325],{"class":283},[277,78288,78289,78291,78293],{"class":279,"line":402},[277,78290,954],{"class":283},[277,78292,3875],{"class":287},[277,78294,305],{"class":283},[277,78296,78297,78299,78301],{"class":279,"line":436},[277,78298,785],{"class":283},[277,78300,802],{"class":287},[277,78302,305],{"class":283},[267,78304,78306],{"className":269,"code":28667,"filename":971,"highlights":78305,"language":272,"meta":273,"style":273},[461],[16,78307,78308,78322,78330,78336,78342,78350,78354,78358,78362,78370,78374,78382,78390,78394,78415,78423],{"__ignoreMap":273},[277,78309,78310,78312,78314,78316,78318,78320],{"class":279,"line":280},[277,78311,284],{"class":283},[277,78313,288],{"class":287},[277,78315,295],{"class":291},[277,78317,298],{"class":283},[277,78319,302],{"class":301},[277,78321,305],{"class":283},[277,78323,78324,78326,78328],{"class":279,"line":308},[277,78325,1057],{"class":311},[277,78327,1060],{"class":311},[277,78329,343],{"class":283},[277,78331,78332,78334],{"class":279,"line":324},[277,78333,1086],{"class":291},[277,78335,473],{"class":283},[277,78337,78338,78340],{"class":279,"line":331},[277,78339,1093],{"class":311},[277,78341,343],{"class":283},[277,78343,78344,78346,78348],{"class":279,"line":346},[277,78345,28709],{"class":283},[277,78347,25316],{"class":301},[277,78349,1077],{"class":283},[277,78351,78352],{"class":279,"line":360},[277,78353,18478],{"class":283},[277,78355,78356],{"class":279,"line":371},[277,78357,1131],{"class":283},[277,78359,78360],{"class":279,"line":381},[277,78361,18255],{"class":283},[277,78363,78364,78366,78368],{"class":279,"line":391},[277,78365,785],{"class":283},[277,78367,288],{"class":287},[277,78369,305],{"class":283},[277,78371,78372],{"class":279,"line":397},[277,78373,328],{"emptyLinePlaceholder":327},[277,78375,78376,78378,78380],{"class":279,"line":402},[277,78377,284],{"class":283},[277,78379,802],{"class":287},[277,78381,305],{"class":283},[277,78383,78384,78386,78388],{"class":279,"line":436},[277,78385,810],{"class":283},[277,78387,3875],{"class":287},[277,78389,305],{"class":283},[277,78391,78392],{"class":279,"line":456},[277,78393,28624],{"class":283},[277,78395,78397,78399,78401,78403,78405,78407,78409,78411,78413],{"class":78396,"line":461},[279,9398],[277,78398,829],{"class":283},[277,78400,18041],{"class":287},[277,78402,28634],{"class":291},[277,78404,298],{"class":283},[277,78406,28639],{"class":301},[277,78408,4270],{"class":291},[277,78410,298],{"class":283},[277,78412,28646],{"class":301},[277,78414,4325],{"class":283},[277,78416,78417,78419,78421],{"class":279,"line":476},[277,78418,954],{"class":283},[277,78420,3875],{"class":287},[277,78422,305],{"class":283},[277,78424,78425,78427,78429],{"class":279,"line":500},[277,78426,785],{"class":283},[277,78428,802],{"class":287},[277,78430,305],{"class":283},[30,78432,28798,78433],{"id":28797},[16,78434,28801],{},[267,78436,78438],{"className":269,"code":28804,"filename":271,"highlights":78437,"language":272,"meta":273,"style":273},[397],[16,78439,78440,78456,78468,78472,78496,78504,78508,78516,78524,78528,78555,78563],{"__ignoreMap":273},[277,78441,78442,78444,78446,78448,78450,78452,78454],{"class":279,"line":280},[277,78443,284],{"class":283},[277,78445,288],{"class":287},[277,78447,292],{"class":291},[277,78449,295],{"class":291},[277,78451,298],{"class":283},[277,78453,302],{"class":301},[277,78455,305],{"class":283},[277,78457,78458,78460,78462,78464,78466],{"class":279,"line":308},[277,78459,312],{"class":311},[277,78461,11006],{"class":283},[277,78463,318],{"class":311},[277,78465,18148],{"class":301},[277,78467,18151],{"class":283},[277,78469,78470],{"class":279,"line":324},[277,78471,328],{"emptyLinePlaceholder":327},[277,78473,78474,78476,78478,78480,78482,78484,78486,78488,78490,78492,78494],{"class":279,"line":331},[277,78475,405],{"class":311},[277,78477,28846],{"class":356},[277,78479,340],{"class":311},[277,78481,413],{"class":291},[277,78483,284],{"class":283},[277,78485,7971],{"class":356},[277,78487,421],{"class":311},[277,78489,424],{"class":356},[277,78491,427],{"class":283},[277,78493,430],{"class":356},[277,78495,18277],{"class":283},[277,78497,78498,78500,78502],{"class":279,"line":346},[277,78499,785],{"class":283},[277,78501,288],{"class":287},[277,78503,305],{"class":283},[277,78505,78506],{"class":279,"line":360},[277,78507,328],{"emptyLinePlaceholder":327},[277,78509,78510,78512,78514],{"class":279,"line":371},[277,78511,284],{"class":283},[277,78513,802],{"class":287},[277,78515,305],{"class":283},[277,78517,78518,78520,78522],{"class":279,"line":381},[277,78519,810],{"class":283},[277,78521,3875],{"class":287},[277,78523,305],{"class":283},[277,78525,78526],{"class":279,"line":391},[277,78527,28897],{"class":283},[277,78529,78531,78533,78535,78537,78539,78541,78543,78545,78547,78549,78551,78553],{"class":78530,"line":397},[279,9398],[277,78532,829],{"class":283},[277,78534,18041],{"class":287},[277,78536,28907],{"class":291},[277,78538,298],{"class":283},[277,78540,28912],{"class":301},[277,78542,4270],{"class":291},[277,78544,298],{"class":283},[277,78546,28919],{"class":301},[277,78548,28922],{"class":291},[277,78550,298],{"class":283},[277,78552,28927],{"class":301},[277,78554,4325],{"class":283},[277,78556,78557,78559,78561],{"class":279,"line":402},[277,78558,954],{"class":283},[277,78560,3875],{"class":287},[277,78562,305],{"class":283},[277,78564,78565,78567,78569],{"class":279,"line":436},[277,78566,785],{"class":283},[277,78568,802],{"class":287},[277,78570,305],{"class":283},[267,78572,78574],{"className":269,"code":28948,"filename":971,"highlights":78573,"language":272,"meta":273,"style":273},[461],[16,78575,78576,78590,78598,78604,78610,78618,78622,78626,78630,78638,78642,78650,78658,78662,78689,78697],{"__ignoreMap":273},[277,78577,78578,78580,78582,78584,78586,78588],{"class":279,"line":280},[277,78579,284],{"class":283},[277,78581,288],{"class":287},[277,78583,295],{"class":291},[277,78585,298],{"class":283},[277,78587,302],{"class":301},[277,78589,305],{"class":283},[277,78591,78592,78594,78596],{"class":279,"line":308},[277,78593,1057],{"class":311},[277,78595,1060],{"class":311},[277,78597,343],{"class":283},[277,78599,78600,78602],{"class":279,"line":324},[277,78601,1086],{"class":291},[277,78603,473],{"class":283},[277,78605,78606,78608],{"class":279,"line":331},[277,78607,1093],{"class":311},[277,78609,343],{"class":283},[277,78611,78612,78614,78616],{"class":279,"line":346},[277,78613,28990],{"class":283},[277,78615,430],{"class":356},[277,78617,1077],{"class":283},[277,78619,78620],{"class":279,"line":360},[277,78621,18478],{"class":283},[277,78623,78624],{"class":279,"line":371},[277,78625,1131],{"class":283},[277,78627,78628],{"class":279,"line":381},[277,78629,18255],{"class":283},[277,78631,78632,78634,78636],{"class":279,"line":391},[277,78633,785],{"class":283},[277,78635,288],{"class":287},[277,78637,305],{"class":283},[277,78639,78640],{"class":279,"line":397},[277,78641,328],{"emptyLinePlaceholder":327},[277,78643,78644,78646,78648],{"class":279,"line":402},[277,78645,284],{"class":283},[277,78647,802],{"class":287},[277,78649,305],{"class":283},[277,78651,78652,78654,78656],{"class":279,"line":436},[277,78653,810],{"class":283},[277,78655,3875],{"class":287},[277,78657,305],{"class":283},[277,78659,78660],{"class":279,"line":456},[277,78661,28897],{"class":283},[277,78663,78665,78667,78669,78671,78673,78675,78677,78679,78681,78683,78685,78687],{"class":78664,"line":461},[279,9398],[277,78666,829],{"class":283},[277,78668,18041],{"class":287},[277,78670,28907],{"class":291},[277,78672,298],{"class":283},[277,78674,28912],{"class":301},[277,78676,4270],{"class":291},[277,78678,298],{"class":283},[277,78680,28919],{"class":301},[277,78682,28922],{"class":291},[277,78684,298],{"class":283},[277,78686,28927],{"class":301},[277,78688,4325],{"class":283},[277,78690,78691,78693,78695],{"class":279,"line":476},[277,78692,954],{"class":283},[277,78694,3875],{"class":287},[277,78696,305],{"class":283},[277,78698,78699,78701,78703],{"class":279,"line":500},[277,78700,785],{"class":283},[277,78702,802],{"class":287},[277,78704,305],{"class":283},[30,78706,29085],{"id":29084},[267,78708,78710],{"className":269,"code":29088,"filename":271,"highlights":78709,"language":272,"meta":273,"style":273},[391],[16,78711,78712,78728,78740,78744,78760,78768,78772,78780,78788,78809,78813,78821],{"__ignoreMap":273},[277,78713,78714,78716,78718,78720,78722,78724,78726],{"class":279,"line":280},[277,78715,284],{"class":283},[277,78717,288],{"class":287},[277,78719,292],{"class":291},[277,78721,295],{"class":291},[277,78723,298],{"class":283},[277,78725,302],{"class":301},[277,78727,305],{"class":283},[277,78729,78730,78732,78734,78736,78738],{"class":279,"line":308},[277,78731,312],{"class":311},[277,78733,11006],{"class":283},[277,78735,318],{"class":311},[277,78737,18148],{"class":301},[277,78739,18151],{"class":283},[277,78741,78742],{"class":279,"line":324},[277,78743,328],{"emptyLinePlaceholder":327},[277,78745,78746,78748,78750,78752,78754,78756,78758],{"class":279,"line":331},[277,78747,405],{"class":311},[277,78749,29130],{"class":356},[277,78751,340],{"class":311},[277,78753,413],{"class":291},[277,78755,448],{"class":283},[277,78757,2123],{"class":356},[277,78759,18277],{"class":283},[277,78761,78762,78764,78766],{"class":279,"line":346},[277,78763,785],{"class":283},[277,78765,288],{"class":287},[277,78767,305],{"class":283},[277,78769,78770],{"class":279,"line":360},[277,78771,328],{"emptyLinePlaceholder":327},[277,78773,78774,78776,78778],{"class":279,"line":371},[277,78775,284],{"class":283},[277,78777,802],{"class":287},[277,78779,305],{"class":283},[277,78781,78782,78784,78786],{"class":279,"line":381},[277,78783,810],{"class":283},[277,78785,3875],{"class":287},[277,78787,305],{"class":283},[277,78789,78791,78793,78795,78797,78799,78801,78803,78805,78807],{"class":78790,"line":391},[279,9398],[277,78792,829],{"class":283},[277,78794,18041],{"class":287},[277,78796,23751],{"class":291},[277,78798,298],{"class":283},[277,78800,29182],{"class":301},[277,78802,4270],{"class":291},[277,78804,298],{"class":283},[277,78806,29189],{"class":301},[277,78808,4325],{"class":283},[277,78810,78811],{"class":279,"line":397},[277,78812,29196],{"class":283},[277,78814,78815,78817,78819],{"class":279,"line":402},[277,78816,954],{"class":283},[277,78818,3875],{"class":287},[277,78820,305],{"class":283},[277,78822,78823,78825,78827],{"class":279,"line":436},[277,78824,785],{"class":283},[277,78826,802],{"class":287},[277,78828,305],{"class":283},[267,78830,78832],{"className":269,"code":29215,"filename":971,"highlights":78831,"language":272,"meta":273,"style":273},[456],[16,78833,78834,78848,78856,78862,78868,78876,78880,78884,78888,78896,78900,78908,78916,78937,78941,78949],{"__ignoreMap":273},[277,78835,78836,78838,78840,78842,78844,78846],{"class":279,"line":280},[277,78837,284],{"class":283},[277,78839,288],{"class":287},[277,78841,295],{"class":291},[277,78843,298],{"class":283},[277,78845,302],{"class":301},[277,78847,305],{"class":283},[277,78849,78850,78852,78854],{"class":279,"line":308},[277,78851,1057],{"class":311},[277,78853,1060],{"class":311},[277,78855,343],{"class":283},[277,78857,78858,78860],{"class":279,"line":324},[277,78859,1086],{"class":291},[277,78861,473],{"class":283},[277,78863,78864,78866],{"class":279,"line":331},[277,78865,1093],{"class":311},[277,78867,343],{"class":283},[277,78869,78870,78872,78874],{"class":279,"line":346},[277,78871,29257],{"class":283},[277,78873,2123],{"class":356},[277,78875,1077],{"class":283},[277,78877,78878],{"class":279,"line":360},[277,78879,18478],{"class":283},[277,78881,78882],{"class":279,"line":371},[277,78883,1131],{"class":283},[277,78885,78886],{"class":279,"line":381},[277,78887,18255],{"class":283},[277,78889,78890,78892,78894],{"class":279,"line":391},[277,78891,785],{"class":283},[277,78893,288],{"class":287},[277,78895,305],{"class":283},[277,78897,78898],{"class":279,"line":397},[277,78899,328],{"emptyLinePlaceholder":327},[277,78901,78902,78904,78906],{"class":279,"line":402},[277,78903,284],{"class":283},[277,78905,802],{"class":287},[277,78907,305],{"class":283},[277,78909,78910,78912,78914],{"class":279,"line":436},[277,78911,810],{"class":283},[277,78913,3875],{"class":287},[277,78915,305],{"class":283},[277,78917,78919,78921,78923,78925,78927,78929,78931,78933,78935],{"class":78918,"line":456},[279,9398],[277,78920,829],{"class":283},[277,78922,18041],{"class":287},[277,78924,23751],{"class":291},[277,78926,298],{"class":283},[277,78928,29182],{"class":301},[277,78930,4270],{"class":291},[277,78932,298],{"class":283},[277,78934,29189],{"class":301},[277,78936,4325],{"class":283},[277,78938,78939],{"class":279,"line":461},[277,78940,29196],{"class":283},[277,78942,78943,78945,78947],{"class":279,"line":476},[277,78944,954],{"class":283},[277,78946,3875],{"class":287},[277,78948,305],{"class":283},[277,78950,78951,78953,78955],{"class":279,"line":500},[277,78952,785],{"class":283},[277,78954,802],{"class":287},[277,78956,305],{"class":283},[30,78958,29346],{"id":29345},[192,78960,26862],{"id":26861},[21,78962,78963,29354,78965,29357],{},[16,78964,29353],{},[16,78966,28412],{},[267,78968,78970],{"className":269,"code":29360,"filename":29361,"highlights":78969,"language":272,"meta":273,"style":273},[391],[16,78971,78972,78988,79008,79016,79020,79028,79042,79046,79052,79061,79069,79077,79081,79089],{"__ignoreMap":273},[277,78973,78974,78976,78978,78980,78982,78984,78986],{"class":279,"line":280},[277,78975,284],{"class":283},[277,78977,288],{"class":287},[277,78979,292],{"class":291},[277,78981,295],{"class":291},[277,78983,298],{"class":283},[277,78985,302],{"class":301},[277,78987,305],{"class":283},[277,78989,78990,78992,78994,78996,78998,79000,79002,79004,79006],{"class":279,"line":308},[277,78991,405],{"class":311},[277,78993,29387],{"class":356},[277,78995,340],{"class":311},[277,78997,29392],{"class":291},[277,78999,284],{"class":283},[277,79001,5753],{"class":356},[277,79003,29399],{"class":283},[277,79005,25316],{"class":301},[277,79007,29404],{"class":283},[277,79009,79010,79012,79014],{"class":279,"line":324},[277,79011,785],{"class":283},[277,79013,288],{"class":287},[277,79015,305],{"class":283},[277,79017,79018],{"class":279,"line":331},[277,79019,328],{"emptyLinePlaceholder":327},[277,79021,79022,79024,79026],{"class":279,"line":346},[277,79023,284],{"class":283},[277,79025,802],{"class":287},[277,79027,305],{"class":283},[277,79029,79030,79032,79034,79036,79038,79040],{"class":279,"line":360},[277,79031,810],{"class":283},[277,79033,3875],{"class":287},[277,79035,816],{"class":291},[277,79037,298],{"class":283},[277,79039,29437],{"class":301},[277,79041,305],{"class":283},[277,79043,79044],{"class":279,"line":371},[277,79045,29444],{"class":283},[277,79047,79048,79050],{"class":279,"line":381},[277,79049,829],{"class":283},[277,79051,11549],{"class":287},[277,79053,79055,79057,79059],{"class":79054,"line":391},[279,9398],[277,79056,29456],{"class":291},[277,79058,298],{"class":283},[277,79060,29461],{"class":301},[277,79062,79063,79065,79067],{"class":279,"line":397},[277,79064,11563],{"class":291},[277,79066,298],{"class":283},[277,79068,29470],{"class":301},[277,79070,79071,79073,79075],{"class":279,"line":402},[277,79072,11573],{"class":291},[277,79074,298],{"class":283},[277,79076,29479],{"class":301},[277,79078,79079],{"class":279,"line":436},[277,79080,29484],{"class":283},[277,79082,79083,79085,79087],{"class":279,"line":456},[277,79084,954],{"class":283},[277,79086,3875],{"class":287},[277,79088,305],{"class":283},[277,79090,79091,79093,79095],{"class":279,"line":461},[277,79092,785],{"class":283},[277,79094,802],{"class":287},[277,79096,305],{"class":283},[267,79098,79099],{"className":269,"code":29503,"filename":29504,"language":272,"meta":273,"style":273},[16,79100,79101,79117,79129,79141,79145,79161,79185,79201,79205,79217,79237,79257,79277,79281,79285,79299,79315,79323,79339,79347,79363,79379,79383,79397,79401,79405,79413,79417,79425,79433,79445,79449,79463,79467,79475,79479,79505,79513,79517,79525,79545,79549,79557,79561,79569,79589,79593,79611,79619,79627,79635],{"__ignoreMap":273},[277,79102,79103,79105,79107,79109,79111,79113,79115],{"class":279,"line":280},[277,79104,284],{"class":283},[277,79106,288],{"class":287},[277,79108,292],{"class":291},[277,79110,295],{"class":291},[277,79112,298],{"class":283},[277,79114,302],{"class":301},[277,79116,305],{"class":283},[277,79118,79119,79121,79123,79125,79127],{"class":279,"line":308},[277,79120,312],{"class":311},[277,79122,23384],{"class":283},[277,79124,318],{"class":311},[277,79126,18148],{"class":301},[277,79128,18151],{"class":283},[277,79130,79131,79133,79135,79137,79139],{"class":279,"line":324},[277,79132,312],{"class":311},[277,79134,29541],{"class":283},[277,79136,318],{"class":311},[277,79138,29546],{"class":301},[277,79140,18151],{"class":283},[277,79142,79143],{"class":279,"line":331},[277,79144,328],{"emptyLinePlaceholder":327},[277,79146,79147,79149,79151,79153,79155,79157,79159],{"class":279,"line":346},[277,79148,405],{"class":311},[277,79150,29559],{"class":356},[277,79152,340],{"class":311},[277,79154,413],{"class":291},[277,79156,448],{"class":283},[277,79158,25316],{"class":301},[277,79160,18277],{"class":283},[277,79162,79163,79165,79167,79169,79171,79173,79175,79177,79179,79181,79183],{"class":279,"line":360},[277,79164,405],{"class":311},[277,79166,29576],{"class":356},[277,79168,340],{"class":311},[277,79170,413],{"class":291},[277,79172,284],{"class":283},[277,79174,7971],{"class":356},[277,79176,421],{"class":311},[277,79178,424],{"class":356},[277,79180,427],{"class":283},[277,79182,430],{"class":356},[277,79184,18277],{"class":283},[277,79186,79187,79189,79191,79193,79195,79197,79199],{"class":279,"line":371},[277,79188,405],{"class":311},[277,79190,29601],{"class":356},[277,79192,340],{"class":311},[277,79194,413],{"class":291},[277,79196,448],{"class":283},[277,79198,2123],{"class":356},[277,79200,18277],{"class":283},[277,79202,79203],{"class":279,"line":381},[277,79204,328],{"emptyLinePlaceholder":327},[277,79206,79207,79209,79211,79213,79215],{"class":279,"line":391},[277,79208,405],{"class":311},[277,79210,29622],{"class":356},[277,79212,340],{"class":311},[277,79214,413],{"class":291},[277,79216,2104],{"class":283},[277,79218,79219,79221,79223,79225,79227,79229,79231,79233,79235],{"class":279,"line":397},[277,79220,2109],{"class":283},[277,79222,2072],{"class":356},[277,79224,22620],{"class":283},[277,79226,29639],{"class":301},[277,79228,29642],{"class":283},[277,79230,29645],{"class":356},[277,79232,29648],{"class":283},[277,79234,2149],{"class":356},[277,79236,2132],{"class":283},[277,79238,79239,79241,79243,79245,79247,79249,79251,79253,79255],{"class":279,"line":402},[277,79240,2109],{"class":283},[277,79242,2139],{"class":356},[277,79244,22620],{"class":283},[277,79246,29663],{"class":301},[277,79248,29642],{"class":283},[277,79250,29668],{"class":356},[277,79252,29648],{"class":283},[277,79254,2123],{"class":356},[277,79256,2132],{"class":283},[277,79258,79259,79261,79263,79265,79267,79269,79271,79273,79275],{"class":279,"line":436},[277,79260,2109],{"class":283},[277,79262,2163],{"class":356},[277,79264,22620],{"class":283},[277,79266,29685],{"class":301},[277,79268,29642],{"class":283},[277,79270,29690],{"class":356},[277,79272,29648],{"class":283},[277,79274,2149],{"class":356},[277,79276,2132],{"class":283},[277,79278,79279],{"class":279,"line":456},[277,79280,22684],{"class":283},[277,79282,79283],{"class":279,"line":461},[277,79284,328],{"emptyLinePlaceholder":327},[277,79286,79287,79289,79291,79293,79295,79297],{"class":279,"line":476},[277,79288,405],{"class":311},[277,79290,29711],{"class":356},[277,79292,340],{"class":311},[277,79294,2200],{"class":291},[277,79296,2203],{"class":283},[277,79298,3716],{"class":311},[277,79300,79301,79303,79305,79307,79309,79311,79313],{"class":279,"line":500},[277,79302,29724],{"class":283},[277,79304,2218],{"class":291},[277,79306,2334],{"class":283},[277,79308,21],{"class":349},[277,79310,2340],{"class":283},[277,79312,601],{"class":311},[277,79314,343],{"class":283},[277,79316,79317,79319,79321],{"class":279,"line":505},[277,79318,2233],{"class":311},[277,79320,29743],{"class":356},[277,79322,29746],{"class":311},[277,79324,79325,79327,79329,79331,79333,79335,79337],{"class":279,"line":520},[277,79326,29751],{"class":283},[277,79328,2249],{"class":291},[277,79330,6034],{"class":283},[277,79332,2258],{"class":291},[277,79334,29760],{"class":283},[277,79336,2249],{"class":291},[277,79338,29765],{"class":283},[277,79340,79341,79343,79345],{"class":279,"line":539},[277,79342,2233],{"class":311},[277,79344,29772],{"class":356},[277,79346,29746],{"class":311},[277,79348,79349,79351,79353,79355,79357,79359,79361],{"class":279,"line":545},[277,79350,29779],{"class":283},[277,79352,29782],{"class":311},[277,79354,424],{"class":356},[277,79356,29787],{"class":311},[277,79358,29790],{"class":283},[277,79360,29793],{"class":311},[277,79362,29796],{"class":283},[277,79364,79365,79367,79369,79371,79373,79375,79377],{"class":279,"line":550},[277,79366,2233],{"class":311},[277,79368,29803],{"class":356},[277,79370,340],{"class":311},[277,79372,2288],{"class":311},[277,79374,29810],{"class":283},[277,79376,708],{"class":311},[277,79378,29815],{"class":283},[277,79380,79381],{"class":279,"line":578},[277,79382,328],{"emptyLinePlaceholder":327},[277,79384,79385,79387,79389,79391,79393,79395],{"class":279,"line":583},[277,79386,1093],{"class":311},[277,79388,29826],{"class":283},[277,79390,2310],{"class":311},[277,79392,29831],{"class":283},[277,79394,2310],{"class":311},[277,79396,29836],{"class":283},[277,79398,79399],{"class":279,"line":588},[277,79400,2318],{"class":283},[277,79402,79403],{"class":279,"line":606},[277,79404,18277],{"class":283},[277,79406,79407,79409,79411],{"class":279,"line":614},[277,79408,785],{"class":283},[277,79410,288],{"class":287},[277,79412,305],{"class":283},[277,79414,79415],{"class":279,"line":625},[277,79416,328],{"emptyLinePlaceholder":327},[277,79418,79419,79421,79423],{"class":279,"line":637},[277,79420,284],{"class":283},[277,79422,802],{"class":287},[277,79424,305],{"class":283},[277,79426,79427,79429,79431],{"class":279,"line":646},[277,79428,810],{"class":283},[277,79430,4121],{"class":287},[277,79432,305],{"class":283},[277,79434,79435,79437,79439,79441,79443],{"class":279,"line":668},[277,79436,829],{"class":283},[277,79438,30],{"class":287},[277,79440,29881],{"class":283},[277,79442,30],{"class":287},[277,79444,305],{"class":283},[277,79446,79447],{"class":279,"line":673},[277,79448,328],{"emptyLinePlaceholder":327},[277,79450,79451,79453,79455,79457,79459,79461],{"class":279,"line":679},[277,79452,829],{"class":283},[277,79454,29353],{"class":287},[277,79456,23751],{"class":291},[277,79458,298],{"class":283},[277,79460,29902],{"class":301},[277,79462,4325],{"class":283},[277,79464,79465],{"class":279,"line":684},[277,79466,328],{"emptyLinePlaceholder":327},[277,79468,79469,79471,79473],{"class":279,"line":700},[277,79470,829],{"class":283},[277,79472,3875],{"class":287},[277,79474,305],{"class":283},[277,79476,79477],{"class":279,"line":717},[277,79478,29921],{"class":283},[277,79480,79481,79483,79485,79487,79489,79491,79493,79495,79497,79499,79501,79503],{"class":279,"line":722},[277,79482,879],{"class":283},[277,79484,18041],{"class":287},[277,79486,28907],{"class":291},[277,79488,298],{"class":283},[277,79490,29934],{"class":301},[277,79492,4270],{"class":291},[277,79494,298],{"class":283},[277,79496,28919],{"class":301},[277,79498,28922],{"class":291},[277,79500,298],{"class":283},[277,79502,28927],{"class":301},[277,79504,4325],{"class":283},[277,79506,79507,79509,79511],{"class":279,"line":729},[277,79508,922],{"class":283},[277,79510,3875],{"class":287},[277,79512,305],{"class":283},[277,79514,79515],{"class":279,"line":738},[277,79516,328],{"emptyLinePlaceholder":327},[277,79518,79519,79521,79523],{"class":279,"line":747},[277,79520,829],{"class":283},[277,79522,3875],{"class":287},[277,79524,305],{"class":283},[277,79526,79527,79529,79531,79533,79535,79537,79539,79541,79543],{"class":279,"line":754},[277,79528,879],{"class":283},[277,79530,18041],{"class":287},[277,79532,23751],{"class":291},[277,79534,298],{"class":283},[277,79536,29981],{"class":301},[277,79538,4270],{"class":291},[277,79540,298],{"class":283},[277,79542,29189],{"class":301},[277,79544,4325],{"class":283},[277,79546,79547],{"class":279,"line":772},[277,79548,29994],{"class":283},[277,79550,79551,79553,79555],{"class":279,"line":777},[277,79552,922],{"class":283},[277,79554,3875],{"class":287},[277,79556,305],{"class":283},[277,79558,79559],{"class":279,"line":782},[277,79560,328],{"emptyLinePlaceholder":327},[277,79562,79563,79565,79567],{"class":279,"line":792},[277,79564,829],{"class":283},[277,79566,38],{"class":287},[277,79568,305],{"class":283},[277,79570,79571,79573,79575,79577,79579,79581,79583,79585,79587],{"class":279,"line":797},[277,79572,879],{"class":283},[277,79574,41],{"class":287},[277,79576,12785],{"class":291},[277,79578,298],{"class":283},[277,79580,30027],{"class":301},[277,79582,4317],{"class":291},[277,79584,298],{"class":283},[277,79586,30034],{"class":301},[277,79588,305],{"class":283},[277,79590,79591],{"class":279,"line":807},[277,79592,30041],{"class":283},[277,79594,79595,79597,79599,79601,79603,79605,79607,79609],{"class":279,"line":826},[277,79596,26686],{"class":283},[277,79598,277],{"class":287},[277,79600,834],{"class":291},[277,79602,298],{"class":283},[277,79604,30054],{"class":301},[277,79606,30057],{"class":283},[277,79608,277],{"class":287},[277,79610,305],{"class":283},[277,79612,79613,79615,79617],{"class":279,"line":849},[277,79614,4175],{"class":283},[277,79616,41],{"class":287},[277,79618,305],{"class":283},[277,79620,79621,79623,79625],{"class":279,"line":854},[277,79622,922],{"class":283},[277,79624,38],{"class":287},[277,79626,305],{"class":283},[277,79628,79629,79631,79633],{"class":279,"line":876},[277,79630,954],{"class":283},[277,79632,4121],{"class":287},[277,79634,305],{"class":283},[277,79636,79637,79639,79641],{"class":279,"line":891},[277,79638,785],{"class":283},[277,79640,802],{"class":287},[277,79642,305],{"class":283},[192,79644,27452],{"id":27451},[21,79646,30098,79647,1697,79649,353],{},[16,79648,28231],{},[16,79650,28237],{},[267,79652,79653],{"className":269,"code":30105,"filename":29361,"language":272,"meta":273,"style":273},[16,79654,79655,79669,79677,79685,79689,79693,79697,79705,79709,79713,79721,79725,79733,79737,79745,79759,79763,79769,79777,79785,79793,79801,79805,79813],{"__ignoreMap":273},[277,79656,79657,79659,79661,79663,79665,79667],{"class":279,"line":280},[277,79658,284],{"class":283},[277,79660,288],{"class":287},[277,79662,295],{"class":291},[277,79664,298],{"class":283},[277,79666,302],{"class":301},[277,79668,305],{"class":283},[277,79670,79671,79673,79675],{"class":279,"line":308},[277,79672,1057],{"class":311},[277,79674,1060],{"class":311},[277,79676,343],{"class":283},[277,79678,79679,79681,79683],{"class":279,"line":324},[277,79680,1071],{"class":283},[277,79682,30136],{"class":301},[277,79684,1077],{"class":283},[277,79686,79687],{"class":279,"line":331},[277,79688,27481],{"class":283},[277,79690,79691],{"class":279,"line":346},[277,79692,30147],{"class":283},[277,79694,79695],{"class":279,"line":360},[277,79696,30152],{"class":283},[277,79698,79699,79701,79703],{"class":279,"line":371},[277,79700,30157],{"class":283},[277,79702,25316],{"class":301},[277,79704,1077],{"class":283},[277,79706,79707],{"class":279,"line":381},[277,79708,7016],{"class":283},[277,79710,79711],{"class":279,"line":391},[277,79712,1131],{"class":283},[277,79714,79715,79717,79719],{"class":279,"line":397},[277,79716,30174],{"class":283},[277,79718,30177],{"class":301},[277,79720,30180],{"class":283},[277,79722,79723],{"class":279,"line":402},[277,79724,18255],{"class":283},[277,79726,79727,79729,79731],{"class":279,"line":436},[277,79728,785],{"class":283},[277,79730,288],{"class":287},[277,79732,305],{"class":283},[277,79734,79735],{"class":279,"line":456},[277,79736,328],{"emptyLinePlaceholder":327},[277,79738,79739,79741,79743],{"class":279,"line":461},[277,79740,284],{"class":283},[277,79742,802],{"class":287},[277,79744,305],{"class":283},[277,79746,79747,79749,79751,79753,79755,79757],{"class":279,"line":476},[277,79748,810],{"class":283},[277,79750,3875],{"class":287},[277,79752,816],{"class":291},[277,79754,298],{"class":283},[277,79756,29437],{"class":301},[277,79758,305],{"class":283},[277,79760,79761],{"class":279,"line":500},[277,79762,29444],{"class":283},[277,79764,79765,79767],{"class":279,"line":505},[277,79766,829],{"class":283},[277,79768,11549],{"class":287},[277,79770,79771,79773,79775],{"class":279,"line":520},[277,79772,30233],{"class":291},[277,79774,298],{"class":283},[277,79776,30238],{"class":301},[277,79778,79779,79781,79783],{"class":279,"line":539},[277,79780,11563],{"class":291},[277,79782,298],{"class":283},[277,79784,29470],{"class":301},[277,79786,79787,79789,79791],{"class":279,"line":545},[277,79788,11573],{"class":291},[277,79790,298],{"class":283},[277,79792,29479],{"class":301},[277,79794,79795,79797,79799],{"class":279,"line":550},[277,79796,30259],{"class":291},[277,79798,298],{"class":283},[277,79800,30264],{"class":301},[277,79802,79803],{"class":279,"line":578},[277,79804,29484],{"class":283},[277,79806,79807,79809,79811],{"class":279,"line":583},[277,79808,954],{"class":283},[277,79810,3875],{"class":287},[277,79812,305],{"class":283},[277,79814,79815,79817,79819],{"class":279,"line":588},[277,79816,785],{"class":283},[277,79818,802],{"class":287},[277,79820,305],{"class":283},[267,79822,79823],{"className":269,"code":30287,"filename":29504,"language":272,"meta":273,"style":273},[16,79824,79825,79839,79851,79855,79863,79871,79875,79881,79887,79895,79903,79911,79915,79935,79955,79975,79979,79983,79987,79991,79997,80017,80027,80035,80051,80059,80083,80101,80105,80119,80123,80127,80131,80135,80143,80147,80155,80163,80175,80179,80193,80197,80205,80209,80235,80243,80247,80255,80275,80279,80287,80291,80299,80319,80323,80341,80349,80357,80365],{"__ignoreMap":273},[277,79826,79827,79829,79831,79833,79835,79837],{"class":279,"line":280},[277,79828,284],{"class":283},[277,79830,288],{"class":287},[277,79832,295],{"class":291},[277,79834,298],{"class":283},[277,79836,302],{"class":301},[277,79838,305],{"class":283},[277,79840,79841,79843,79845,79847,79849],{"class":279,"line":308},[277,79842,312],{"class":311},[277,79844,29541],{"class":283},[277,79846,318],{"class":311},[277,79848,29546],{"class":301},[277,79850,18151],{"class":283},[277,79852,79853],{"class":279,"line":324},[277,79854,328],{"emptyLinePlaceholder":327},[277,79856,79857,79859,79861],{"class":279,"line":331},[277,79858,1057],{"class":311},[277,79860,1060],{"class":311},[277,79862,343],{"class":283},[277,79864,79865,79867,79869],{"class":279,"line":346},[277,79866,1071],{"class":283},[277,79868,30334],{"class":301},[277,79870,1077],{"class":283},[277,79872,79873],{"class":279,"line":360},[277,79874,30341],{"class":283},[277,79876,79877,79879],{"class":279,"line":371},[277,79878,1086],{"class":291},[277,79880,473],{"class":283},[277,79882,79883,79885],{"class":279,"line":381},[277,79884,1093],{"class":311},[277,79886,343],{"class":283},[277,79888,79889,79891,79893],{"class":279,"line":391},[277,79890,30358],{"class":283},[277,79892,25316],{"class":301},[277,79894,1077],{"class":283},[277,79896,79897,79899,79901],{"class":279,"line":397},[277,79898,30367],{"class":283},[277,79900,430],{"class":356},[277,79902,1077],{"class":283},[277,79904,79905,79907,79909],{"class":279,"line":402},[277,79906,30376],{"class":283},[277,79908,2123],{"class":356},[277,79910,1077],{"class":283},[277,79912,79913],{"class":279,"line":436},[277,79914,30385],{"class":283},[277,79916,79917,79919,79921,79923,79925,79927,79929,79931,79933],{"class":279,"line":456},[277,79918,2664],{"class":283},[277,79920,2072],{"class":356},[277,79922,22620],{"class":283},[277,79924,29639],{"class":301},[277,79926,29642],{"class":283},[277,79928,29645],{"class":356},[277,79930,29648],{"class":283},[277,79932,2149],{"class":356},[277,79934,2132],{"class":283},[277,79936,79937,79939,79941,79943,79945,79947,79949,79951,79953],{"class":279,"line":461},[277,79938,2664],{"class":283},[277,79940,2139],{"class":356},[277,79942,22620],{"class":283},[277,79944,29663],{"class":301},[277,79946,29642],{"class":283},[277,79948,29668],{"class":356},[277,79950,29648],{"class":283},[277,79952,2123],{"class":356},[277,79954,2132],{"class":283},[277,79956,79957,79959,79961,79963,79965,79967,79969,79971,79973],{"class":279,"line":476},[277,79958,2664],{"class":283},[277,79960,2163],{"class":356},[277,79962,22620],{"class":283},[277,79964,29685],{"class":301},[277,79966,29642],{"class":283},[277,79968,29690],{"class":356},[277,79970,29648],{"class":283},[277,79972,2149],{"class":356},[277,79974,2132],{"class":283},[277,79976,79977],{"class":279,"line":500},[277,79978,10174],{"class":283},[277,79980,79981],{"class":279,"line":505},[277,79982,18478],{"class":283},[277,79984,79985],{"class":279,"line":520},[277,79986,1131],{"class":283},[277,79988,79989],{"class":279,"line":539},[277,79990,2742],{"class":283},[277,79992,79993,79995],{"class":279,"line":545},[277,79994,30466],{"class":291},[277,79996,473],{"class":283},[277,79998,79999,80001,80003,80005,80007,80009,80011,80013,80015],{"class":279,"line":550},[277,80000,2754],{"class":311},[277,80002,1268],{"class":356},[277,80004,30477],{"class":283},[277,80006,2218],{"class":291},[277,80008,2334],{"class":283},[277,80010,21],{"class":349},[277,80012,2340],{"class":283},[277,80014,601],{"class":311},[277,80016,343],{"class":283},[277,80018,80019,80021,80023,80025],{"class":279,"line":578},[277,80020,2774],{"class":311},[277,80022,29743],{"class":356},[277,80024,340],{"class":311},[277,80026,30500],{"class":283},[277,80028,80029,80031,80033],{"class":279,"line":583},[277,80030,2785],{"class":283},[277,80032,2249],{"class":291},[277,80034,622],{"class":283},[277,80036,80037,80039,80041,80043,80045,80047,80049],{"class":279,"line":588},[277,80038,2785],{"class":283},[277,80040,2258],{"class":291},[277,80042,448],{"class":283},[277,80044,1341],{"class":356},[277,80046,30521],{"class":283},[277,80048,2249],{"class":291},[277,80050,29765],{"class":283},[277,80052,80053,80055,80057],{"class":279,"line":606},[277,80054,2774],{"class":311},[277,80056,29772],{"class":356},[277,80058,29746],{"class":311},[277,80060,80061,80063,80065,80067,80069,80071,80073,80075,80077,80079,80081],{"class":279,"line":614},[277,80062,30538],{"class":356},[277,80064,30541],{"class":283},[277,80066,29782],{"class":311},[277,80068,424],{"class":356},[277,80070,29787],{"class":311},[277,80072,29790],{"class":283},[277,80074,29793],{"class":311},[277,80076,30554],{"class":291},[277,80078,448],{"class":283},[277,80080,1341],{"class":356},[277,80082,30561],{"class":283},[277,80084,80085,80087,80089,80091,80093,80095,80097,80099],{"class":279,"line":625},[277,80086,2774],{"class":311},[277,80088,29803],{"class":356},[277,80090,340],{"class":311},[277,80092,2288],{"class":311},[277,80094,1341],{"class":356},[277,80096,30576],{"class":283},[277,80098,708],{"class":311},[277,80100,29815],{"class":283},[277,80102,80103],{"class":279,"line":637},[277,80104,328],{"emptyLinePlaceholder":327},[277,80106,80107,80109,80111,80113,80115,80117],{"class":279,"line":646},[277,80108,2842],{"class":311},[277,80110,29826],{"class":283},[277,80112,2310],{"class":311},[277,80114,29831],{"class":283},[277,80116,2310],{"class":311},[277,80118,29836],{"class":283},[277,80120,80121],{"class":279,"line":668},[277,80122,30603],{"class":283},[277,80124,80125],{"class":279,"line":673},[277,80126,7016],{"class":283},[277,80128,80129],{"class":279,"line":679},[277,80130,1131],{"class":283},[277,80132,80133],{"class":279,"line":684},[277,80134,18255],{"class":283},[277,80136,80137,80139,80141],{"class":279,"line":700},[277,80138,785],{"class":283},[277,80140,288],{"class":287},[277,80142,305],{"class":283},[277,80144,80145],{"class":279,"line":717},[277,80146,328],{"emptyLinePlaceholder":327},[277,80148,80149,80151,80153],{"class":279,"line":722},[277,80150,284],{"class":283},[277,80152,802],{"class":287},[277,80154,305],{"class":283},[277,80156,80157,80159,80161],{"class":279,"line":729},[277,80158,810],{"class":283},[277,80160,4121],{"class":287},[277,80162,305],{"class":283},[277,80164,80165,80167,80169,80171,80173],{"class":279,"line":738},[277,80166,829],{"class":283},[277,80168,30],{"class":287},[277,80170,29881],{"class":283},[277,80172,30],{"class":287},[277,80174,305],{"class":283},[277,80176,80177],{"class":279,"line":747},[277,80178,328],{"emptyLinePlaceholder":327},[277,80180,80181,80183,80185,80187,80189,80191],{"class":279,"line":754},[277,80182,829],{"class":283},[277,80184,29353],{"class":287},[277,80186,23751],{"class":291},[277,80188,298],{"class":283},[277,80190,29902],{"class":301},[277,80192,4325],{"class":283},[277,80194,80195],{"class":279,"line":772},[277,80196,328],{"emptyLinePlaceholder":327},[277,80198,80199,80201,80203],{"class":279,"line":777},[277,80200,829],{"class":283},[277,80202,3875],{"class":287},[277,80204,305],{"class":283},[277,80206,80207],{"class":279,"line":782},[277,80208,29921],{"class":283},[277,80210,80211,80213,80215,80217,80219,80221,80223,80225,80227,80229,80231,80233],{"class":279,"line":792},[277,80212,879],{"class":283},[277,80214,18041],{"class":287},[277,80216,28907],{"class":291},[277,80218,298],{"class":283},[277,80220,29934],{"class":301},[277,80222,4270],{"class":291},[277,80224,298],{"class":283},[277,80226,28919],{"class":301},[277,80228,28922],{"class":291},[277,80230,298],{"class":283},[277,80232,28927],{"class":301},[277,80234,4325],{"class":283},[277,80236,80237,80239,80241],{"class":279,"line":797},[277,80238,922],{"class":283},[277,80240,3875],{"class":287},[277,80242,305],{"class":283},[277,80244,80245],{"class":279,"line":807},[277,80246,328],{"emptyLinePlaceholder":327},[277,80248,80249,80251,80253],{"class":279,"line":826},[277,80250,829],{"class":283},[277,80252,3875],{"class":287},[277,80254,305],{"class":283},[277,80256,80257,80259,80261,80263,80265,80267,80269,80271,80273],{"class":279,"line":849},[277,80258,879],{"class":283},[277,80260,18041],{"class":287},[277,80262,23751],{"class":291},[277,80264,298],{"class":283},[277,80266,29981],{"class":301},[277,80268,4270],{"class":291},[277,80270,298],{"class":283},[277,80272,29189],{"class":301},[277,80274,4325],{"class":283},[277,80276,80277],{"class":279,"line":854},[277,80278,29994],{"class":283},[277,80280,80281,80283,80285],{"class":279,"line":876},[277,80282,922],{"class":283},[277,80284,3875],{"class":287},[277,80286,305],{"class":283},[277,80288,80289],{"class":279,"line":891},[277,80290,328],{"emptyLinePlaceholder":327},[277,80292,80293,80295,80297],{"class":279,"line":905},[277,80294,829],{"class":283},[277,80296,38],{"class":287},[277,80298,305],{"class":283},[277,80300,80301,80303,80305,80307,80309,80311,80313,80315,80317],{"class":279,"line":919},[277,80302,879],{"class":283},[277,80304,41],{"class":287},[277,80306,12785],{"class":291},[277,80308,298],{"class":283},[277,80310,30027],{"class":301},[277,80312,4317],{"class":291},[277,80314,298],{"class":283},[277,80316,30034],{"class":301},[277,80318,305],{"class":283},[277,80320,80321],{"class":279,"line":929},[277,80322,30041],{"class":283},[277,80324,80325,80327,80329,80331,80333,80335,80337,80339],{"class":279,"line":934},[277,80326,26686],{"class":283},[277,80328,277],{"class":287},[277,80330,834],{"class":291},[277,80332,298],{"class":283},[277,80334,30054],{"class":301},[277,80336,30057],{"class":283},[277,80338,277],{"class":287},[277,80340,305],{"class":283},[277,80342,80343,80345,80347],{"class":279,"line":951},[277,80344,4175],{"class":283},[277,80346,41],{"class":287},[277,80348,305],{"class":283},[277,80350,80351,80353,80355],{"class":279,"line":961},[277,80352,922],{"class":283},[277,80354,38],{"class":287},[277,80356,305],{"class":283},[277,80358,80359,80361,80363],{"class":279,"line":1473},[277,80360,954],{"class":283},[277,80362,4121],{"class":287},[277,80364,305],{"class":283},[277,80366,80367,80369,80371],{"class":279,"line":1478},[277,80368,785],{"class":283},[277,80370,802],{"class":287},[277,80372,305],{"class":283},[30,80374,1596],{"id":1595},[21,80376,80377,30860],{},[16,80378,17971],{},[21,80380,30863],{},[21,80382,21824],{},[38,80384,80385,80389,80397,80405],{},[41,80386,30870,80387,30873],{},[16,80388,28154],{},[41,80390,30876,80391,5245,80393,28409,80395,104],{},[16,80392,28231],{},[16,80394,28237],{},[16,80396,28412],{},[41,80398,30885,80399,225,80401,225,80403,30892],{},[16,80400,28256],{},[16,80402,28261],{},[16,80404,28266],{},[41,80406,30895],{},[1606,80408,3118],{},{"title":273,"searchDepth":308,"depth":308,"links":80410},[80411,80412,80416,80417,80418,80424,80425,80426,80427,80431],{"id":20624,"depth":308,"text":20625},{"id":60,"depth":308,"text":61,"children":80413},[80414,80415],{"id":28174,"depth":324,"text":28175},{"id":28219,"depth":324,"text":28220},{"id":128,"depth":308,"text":129},{"id":155,"depth":308,"text":156},{"id":189,"depth":308,"text":190,"children":80419},[80420,80421,80422,80423],{"id":28337,"depth":324,"text":28338},{"id":28420,"depth":324,"text":30911},{"id":28494,"depth":324,"text":28495},{"id":28523,"depth":324,"text":28524},{"id":28535,"depth":308,"text":28536},{"id":28797,"depth":308,"text":30916},{"id":29084,"depth":308,"text":29085},{"id":29345,"depth":308,"text":29346,"children":80428},[80429,80430],{"id":26861,"depth":324,"text":26862},{"id":27451,"depth":324,"text":27452},{"id":1595,"depth":308,"text":1596},{"script":80433},[80434],{"type":1632,"key":1633,"data-nuxt-schema-org":327,"nodes":80435},[80436],{"headline":30932,"author":80437,"datePublished":30934,"@type":1640},{"name":1637,"@type":1638},{"updatedAt":30934,"coverCaption":17759,"author":1637,"keywords":80439},[1645,17971,30937,30938,271,971],[80441],{"headline":30932,"author":80442,"datePublished":30934,"@type":1640},{"name":1637,"@type":1638},{"title":28121,"description":30926},[80445,80446,80447,80448],{"tag":20588,"color":20589},{"tag":30948,"color":30949},{"tag":3167,"color":3168},{"tag":9074,"color":9075},{"id":30954,"title":30955,"body":80450,"cover":33955,"coverAlt":33956,"date":33957,"description":33958,"draft":1627,"extension":1628,"head":83236,"locale":1641,"meta":83242,"navigation":327,"path":33971,"schemaOrg":83244,"seo":83247,"series":20582,"seriesDescription":20583,"seriesOrder":346,"seriesTitle":20584,"slug":1656,"stem":33976,"tags":83248,"__hash__":33983},{"type":8,"value":80451,"toc":83216},[80452,80456,80462,80464,80470,80478,80484,80486,80488,80518,80520,80548,80552,80590,80592,80596,80598,80620,80622,80626,80636,80640,80642,80644,80646,80676,80680,80708,80712,80714,80738,80740,80768,80774,80776,80778,80836,80838,80866,80868,80872,80874,80900,80902,80928,80932,80934,80936,81037,81144,81148,81342,81550,81552,81684,81828,81830,81943,82072,82074,82076,82090,82662,83186,83188,83192,83194,83214],[11,80453,20605,80454],{"id":30960},[16,80455,17977],{},[21,80457,80458,30967,80460,30970],{},[16,80459,17977],{},[16,80461,17977],{},[30,80463,20625],{"id":20624},[21,80465,15938,80466,30977,80468,30980],{},[16,80467,17977],{},[16,80469,17977],{},[38,80471,80472,80474,80476],{},[41,80473,30985],{},[41,80475,30988],{},[41,80477,30991],{},[3111,80479,80480],{},[21,80481,80482,30998],{},[16,80483,17977],{},[30,80485,24653],{"id":24652},[21,80487,31003],{},[267,80489,80490],{"className":269,"code":31006,"filename":9339,"language":272,"meta":273,"style":273},[16,80491,80492],{"__ignoreMap":273},[277,80493,80494,80496,80498,80500,80502,80504,80506,80508,80510,80512,80514,80516],{"class":279,"line":280},[277,80495,284],{"class":283},[277,80497,4267],{"class":287},[277,80499,31017],{"class":291},[277,80501,353],{"class":283},[277,80503,31022],{"class":291},[277,80505,298],{"class":283},[277,80507,866],{"class":301},[277,80509,31029],{"class":283},[277,80511,866],{"class":301},[277,80513,31034],{"class":283},[277,80515,4267],{"class":287},[277,80517,305],{"class":283},[21,80519,31041],{},[267,80521,80522],{"className":269,"code":31044,"filename":9339,"language":272,"meta":273,"style":273},[16,80523,80524],{"__ignoreMap":273},[277,80525,80526,80528,80530,80532,80534,80536,80538,80540,80542,80544,80546],{"class":279,"line":280},[277,80527,284],{"class":283},[277,80529,4267],{"class":287},[277,80531,31055],{"class":283},[277,80533,31022],{"class":291},[277,80535,298],{"class":283},[277,80537,866],{"class":301},[277,80539,31029],{"class":283},[277,80541,866],{"class":301},[277,80543,31034],{"class":283},[277,80545,4267],{"class":287},[277,80547,305],{"class":283},[21,80549,80550,31076],{},[16,80551,17977],{},[38,80553,80554,80564,80570,80580],{},[41,80555,31081,80556,225,80558,225,80560,225,80562,1895],{},[16,80557,31022],{},[16,80559,18041],{},[16,80561,31088],{},[16,80563,31091],{},[41,80565,31094,80566,225,80568,1895],{},[16,80567,31097],{},[16,80569,31100],{},[41,80571,31103,80572,225,80574,225,80576,225,80578,1895],{},[16,80573,31106],{},[16,80575,31109],{},[16,80577,31112],{},[16,80579,31115],{},[41,80581,31118,80582,225,80584,31125,80586,225,80588,1808],{},[16,80583,31121],{},[16,80585,31124],{},[16,80587,31128],{},[16,80589,31131],{},[30,80591,129],{"id":128},[21,80593,20777,80594,31138],{},[16,80595,17977],{},[21,80597,3305],{},[38,80599,80600,80604,80608,80612,80616],{},[41,80601,31145,80602,1895],{},[16,80603,31148],{},[41,80605,31151,80606,1895],{},[16,80607,31154],{},[41,80609,31157,80610,1895],{},[16,80611,31160],{},[41,80613,17808,80614,1895],{},[16,80615,31165],{},[41,80617,31168,80618,1895],{},[16,80619,31171],{},[30,80621,156],{"id":155},[21,80623,7664,80624,31178],{},[16,80625,17977],{},[38,80627,80628,80630,80634],{},[41,80629,31183],{},[41,80631,31186,80632,104],{},[16,80633,1732],{},[41,80635,31191],{},[3111,80637,80638],{},[21,80639,31196],{},[30,80641,190],{"id":189},[192,80643,31202],{"id":31201},[21,80645,24892],{},[267,80647,80648],{"className":269,"code":31207,"filename":28344,"language":272,"meta":273,"style":273},[16,80649,80650],{"__ignoreMap":273},[277,80651,80652,80654,80656,80658,80660,80662,80664,80666,80668,80670,80672,80674],{"class":279,"line":280},[277,80653,284],{"class":283},[277,80655,4267],{"class":287},[277,80657,31055],{"class":283},[277,80659,31022],{"class":291},[277,80661,298],{"class":283},[277,80663,866],{"class":301},[277,80665,31226],{"class":291},[277,80667,28452],{"class":283},[277,80669,866],{"class":301},[277,80671,31233],{"class":283},[277,80673,4267],{"class":287},[277,80675,305],{"class":283},[21,80677,31240,80678,31244],{},[72,80679,31243],{},[267,80681,80682],{"className":269,"code":31247,"filename":28470,"language":272,"meta":273,"style":273},[16,80683,80684],{"__ignoreMap":273},[277,80685,80686,80688,80690,80692,80694,80696,80698,80700,80702,80704,80706],{"class":279,"line":280},[277,80687,284],{"class":283},[277,80689,4267],{"class":287},[277,80691,31055],{"class":283},[277,80693,31022],{"class":291},[277,80695,298],{"class":283},[277,80697,866],{"class":301},[277,80699,31226],{"class":283},[277,80701,866],{"class":301},[277,80703,31233],{"class":283},[277,80705,4267],{"class":287},[277,80707,305],{"class":283},[192,80709,31277,80710,31280],{"id":31276},[16,80711,31106],{},[21,80713,24892],{},[267,80715,80716],{"className":269,"code":31285,"filename":28344,"language":272,"meta":273,"style":273},[16,80717,80718],{"__ignoreMap":273},[277,80719,80720,80722,80724,80726,80728,80730,80732,80734,80736],{"class":279,"line":280},[277,80721,284],{"class":283},[277,80723,31294],{"class":287},[277,80725,31055],{"class":283},[277,80727,31088],{"class":291},[277,80729,298],{"class":283},[277,80731,866],{"class":301},[277,80733,31305],{"class":283},[277,80735,866],{"class":301},[277,80737,305],{"class":283},[21,80739,28466],{},[267,80741,80742],{"className":269,"code":31314,"filename":28470,"language":272,"meta":273,"style":273},[16,80743,80744],{"__ignoreMap":273},[277,80745,80746,80748,80750,80752,80754,80756,80758,80760,80762,80764,80766],{"class":279,"line":280},[277,80747,284],{"class":283},[277,80749,31294],{"class":287},[277,80751,31055],{"class":283},[277,80753,31088],{"class":291},[277,80755,104],{"class":283},[277,80757,31331],{"class":291},[277,80759,298],{"class":283},[277,80761,866],{"class":301},[277,80763,31305],{"class":283},[277,80765,866],{"class":301},[277,80767,305],{"class":283},[3111,80769,80770],{},[21,80771,15938,80772,31348],{},[16,80773,31106],{},[192,80775,31352],{"id":31351},[21,80777,31355],{},[267,80779,80780],{"className":269,"code":31358,"filename":28344,"language":272,"meta":273,"style":273},[16,80781,80782,80824,80828],{"__ignoreMap":273},[277,80783,80784,80786,80788,80790,80792,80794,80796,80798,80800,80802,80804,80806,80808,80810,80812,80814,80816,80818,80820,80822],{"class":279,"line":280},[277,80785,284],{"class":283},[277,80787,4267],{"class":287},[277,80789,31055],{"class":283},[277,80791,31022],{"class":291},[277,80793,298],{"class":283},[277,80795,866],{"class":301},[277,80797,31377],{"class":283},[277,80799,2310],{"class":311},[277,80801,31382],{"class":283},[277,80803,2310],{"class":311},[277,80805,2288],{"class":311},[277,80807,31389],{"class":283},[277,80809,2285],{"class":311},[277,80811,31394],{"class":291},[277,80813,8129],{"class":283},[277,80815,353],{"class":311},[277,80817,31401],{"class":291},[277,80819,28452],{"class":283},[277,80821,866],{"class":301},[277,80823,305],{"class":283},[277,80825,80826],{"class":279,"line":308},[277,80827,31412],{"class":283},[277,80829,80830,80832,80834],{"class":279,"line":324},[277,80831,785],{"class":283},[277,80833,4267],{"class":287},[277,80835,305],{"class":283},[21,80837,31423],{},[267,80839,80840],{"className":269,"code":31426,"filename":28470,"language":272,"meta":273,"style":273},[16,80841,80842],{"__ignoreMap":273},[277,80843,80844,80846,80848,80850,80852,80854,80856,80858,80860,80862,80864],{"class":279,"line":280},[277,80845,284],{"class":283},[277,80847,4267],{"class":287},[277,80849,31055],{"class":283},[277,80851,31022],{"class":291},[277,80853,298],{"class":283},[277,80855,866],{"class":301},[277,80857,31445],{"class":283},[277,80859,866],{"class":301},[277,80861,31450],{"class":283},[277,80863,4267],{"class":287},[277,80865,305],{"class":283},[21,80867,31457],{},[192,80869,31461,80870,31464],{"id":31460},[16,80871,2337],{},[21,80873,24892],{},[267,80875,80876],{"className":269,"code":31469,"filename":28344,"language":272,"meta":273,"style":273},[16,80877,80878],{"__ignoreMap":273},[277,80879,80880,80882,80884,80886,80888,80890,80892,80894,80896,80898],{"class":279,"line":280},[277,80881,284],{"class":283},[277,80883,18041],{"class":287},[277,80885,31055],{"class":283},[277,80887,18041],{"class":291},[277,80889,298],{"class":283},[277,80891,866],{"class":301},[277,80893,31488],{"class":291},[277,80895,31491],{"class":283},[277,80897,866],{"class":301},[277,80899,4325],{"class":283},[21,80901,28466],{},[267,80903,80904],{"className":269,"code":31500,"filename":28470,"language":272,"meta":273,"style":273},[16,80905,80906],{"__ignoreMap":273},[277,80907,80908,80910,80912,80914,80916,80918,80920,80922,80924,80926],{"class":279,"line":280},[277,80909,284],{"class":283},[277,80911,18041],{"class":287},[277,80913,31055],{"class":283},[277,80915,18041],{"class":291},[277,80917,298],{"class":283},[277,80919,866],{"class":301},[277,80921,31488],{"class":291},[277,80923,31521],{"class":283},[277,80925,866],{"class":301},[277,80927,4325],{"class":283},[21,80929,31528,80930,31531],{},[16,80931,1783],{},[30,80933,1946],{"id":1945},[192,80935,31537],{"id":31536},[267,80937,80939],{"className":269,"code":31540,"filename":271,"highlights":80938,"language":272,"meta":273,"style":273},[331,381],[16,80940,80941,80957,80969,80973,80990,80998,81002,81010,81029],{"__ignoreMap":273},[277,80942,80943,80945,80947,80949,80951,80953,80955],{"class":279,"line":280},[277,80944,284],{"class":283},[277,80946,288],{"class":287},[277,80948,292],{"class":291},[277,80950,295],{"class":291},[277,80952,298],{"class":283},[277,80954,302],{"class":301},[277,80956,305],{"class":283},[277,80958,80959,80961,80963,80965,80967],{"class":279,"line":308},[277,80960,312],{"class":311},[277,80962,11006],{"class":283},[277,80964,318],{"class":311},[277,80966,18148],{"class":301},[277,80968,18151],{"class":283},[277,80970,80971],{"class":279,"line":324},[277,80972,328],{"emptyLinePlaceholder":327},[277,80974,80976,80978,80980,80982,80984,80986,80988],{"class":80975,"line":331},[279,9398],[277,80977,405],{"class":311},[277,80979,9380],{"class":356},[277,80981,340],{"class":311},[277,80983,413],{"class":291},[277,80985,448],{"class":283},[277,80987,3542],{"class":356},[277,80989,18277],{"class":283},[277,80991,80992,80994,80996],{"class":279,"line":346},[277,80993,785],{"class":283},[277,80995,288],{"class":287},[277,80997,305],{"class":283},[277,80999,81000],{"class":279,"line":360},[277,81001,328],{"emptyLinePlaceholder":327},[277,81003,81004,81006,81008],{"class":279,"line":371},[277,81005,284],{"class":283},[277,81007,802],{"class":287},[277,81009,305],{"class":283},[277,81011,81013,81015,81017,81019,81021,81023,81025,81027],{"class":81012,"line":381},[279,9398],[277,81014,810],{"class":283},[277,81016,4267],{"class":287},[277,81018,4278],{"class":291},[277,81020,298],{"class":283},[277,81022,12464],{"class":301},[277,81024,31628],{"class":283},[277,81026,4267],{"class":287},[277,81028,305],{"class":283},[277,81030,81031,81033,81035],{"class":279,"line":391},[277,81032,785],{"class":283},[277,81034,802],{"class":287},[277,81036,305],{"class":283},[267,81038,81040],{"className":269,"code":31643,"filename":971,"highlights":81039,"language":272,"meta":273,"style":273},[346,436],[16,81041,81042,81056,81064,81070,81076,81085,81089,81093,81097,81105,81109,81117,81136],{"__ignoreMap":273},[277,81043,81044,81046,81048,81050,81052,81054],{"class":279,"line":280},[277,81045,284],{"class":283},[277,81047,288],{"class":287},[277,81049,295],{"class":291},[277,81051,298],{"class":283},[277,81053,302],{"class":301},[277,81055,305],{"class":283},[277,81057,81058,81060,81062],{"class":279,"line":308},[277,81059,1057],{"class":311},[277,81061,1060],{"class":311},[277,81063,343],{"class":283},[277,81065,81066,81068],{"class":279,"line":324},[277,81067,1086],{"class":291},[277,81069,473],{"class":283},[277,81071,81072,81074],{"class":279,"line":331},[277,81073,1093],{"class":311},[277,81075,343],{"class":283},[277,81077,81079,81081,81083],{"class":81078,"line":346},[279,9398],[277,81080,31686],{"class":283},[277,81082,3542],{"class":356},[277,81084,1077],{"class":283},[277,81086,81087],{"class":279,"line":360},[277,81088,18478],{"class":283},[277,81090,81091],{"class":279,"line":371},[277,81092,1131],{"class":283},[277,81094,81095],{"class":279,"line":381},[277,81096,18255],{"class":283},[277,81098,81099,81101,81103],{"class":279,"line":391},[277,81100,785],{"class":283},[277,81102,288],{"class":287},[277,81104,305],{"class":283},[277,81106,81107],{"class":279,"line":397},[277,81108,328],{"emptyLinePlaceholder":327},[277,81110,81111,81113,81115],{"class":279,"line":402},[277,81112,284],{"class":283},[277,81114,802],{"class":287},[277,81116,305],{"class":283},[277,81118,81120,81122,81124,81126,81128,81130,81132,81134],{"class":81119,"line":436},[279,9398],[277,81121,810],{"class":283},[277,81123,4267],{"class":287},[277,81125,4278],{"class":291},[277,81127,298],{"class":283},[277,81129,12464],{"class":301},[277,81131,31628],{"class":283},[277,81133,4267],{"class":287},[277,81135,305],{"class":283},[277,81137,81138,81140,81142],{"class":279,"line":456},[277,81139,785],{"class":283},[277,81141,802],{"class":287},[277,81143,305],{"class":283},[192,81145,31753,81146],{"id":31752},[16,81147,31106],{},[267,81149,81151],{"className":269,"code":31758,"filename":271,"highlights":81150,"language":272,"meta":273,"style":273},[456],[16,81152,81153,81169,81181,81185,81201,81205,81213,81231,81243,81247,81255,81259,81267,81282,81308,81326,81334],{"__ignoreMap":273},[277,81154,81155,81157,81159,81161,81163,81165,81167],{"class":279,"line":280},[277,81156,284],{"class":283},[277,81158,288],{"class":287},[277,81160,292],{"class":291},[277,81162,295],{"class":291},[277,81164,298],{"class":283},[277,81166,302],{"class":301},[277,81168,305],{"class":283},[277,81170,81171,81173,81175,81177,81179],{"class":279,"line":308},[277,81172,312],{"class":311},[277,81174,11006],{"class":283},[277,81176,318],{"class":311},[277,81178,18148],{"class":301},[277,81180,18151],{"class":283},[277,81182,81183],{"class":279,"line":324},[277,81184,328],{"emptyLinePlaceholder":327},[277,81186,81187,81189,81191,81193,81195,81197,81199],{"class":279,"line":331},[277,81188,405],{"class":311},[277,81190,31800],{"class":356},[277,81192,340],{"class":311},[277,81194,413],{"class":291},[277,81196,448],{"class":283},[277,81198,25316],{"class":301},[277,81200,18277],{"class":283},[277,81202,81203],{"class":279,"line":346},[277,81204,328],{"emptyLinePlaceholder":327},[277,81206,81207,81209,81211],{"class":279,"line":360},[277,81208,2460],{"class":311},[277,81210,31821],{"class":291},[277,81212,473],{"class":283},[277,81214,81215,81217,81219,81221,81223,81225,81227,81229],{"class":279,"line":371},[277,81216,508],{"class":311},[277,81218,511],{"class":283},[277,81220,514],{"class":311},[277,81222,31834],{"class":283},[277,81224,31837],{"class":291},[277,81226,569],{"class":283},[277,81228,18346],{"class":311},[277,81230,18151],{"class":283},[277,81232,81233,81235,81237,81239,81241],{"class":279,"line":381},[277,81234,2349],{"class":283},[277,81236,2352],{"class":291},[277,81238,448],{"class":283},[277,81240,31854],{"class":301},[277,81242,31857],{"class":283},[277,81244,81245],{"class":279,"line":391},[277,81246,394],{"class":283},[277,81248,81249,81251,81253],{"class":279,"line":397},[277,81250,785],{"class":283},[277,81252,288],{"class":287},[277,81254,305],{"class":283},[277,81256,81257],{"class":279,"line":402},[277,81258,328],{"emptyLinePlaceholder":327},[277,81260,81261,81263,81265],{"class":279,"line":436},[277,81262,284],{"class":283},[277,81264,802],{"class":287},[277,81266,305],{"class":283},[277,81268,81270,81272,81274,81276,81278,81280],{"class":81269,"line":456},[279,9398],[277,81271,810],{"class":283},[277,81273,31294],{"class":287},[277,81275,31891],{"class":291},[277,81277,298],{"class":283},[277,81279,31896],{"class":301},[277,81281,305],{"class":283},[277,81283,81284,81286,81288,81290,81292,81294,81296,81298,81300,81302,81304,81306],{"class":279,"line":461},[277,81285,829],{"class":283},[277,81287,18041],{"class":287},[277,81289,23751],{"class":291},[277,81291,298],{"class":283},[277,81293,31911],{"class":301},[277,81295,4270],{"class":291},[277,81297,298],{"class":283},[277,81299,31911],{"class":301},[277,81301,31920],{"class":291},[277,81303,298],{"class":283},[277,81305,31925],{"class":301},[277,81307,4325],{"class":283},[277,81309,81310,81312,81314,81316,81318,81320,81322,81324],{"class":279,"line":476},[277,81311,829],{"class":283},[277,81313,4267],{"class":287},[277,81315,4270],{"class":291},[277,81317,298],{"class":283},[277,81319,31940],{"class":301},[277,81321,31943],{"class":283},[277,81323,4267],{"class":287},[277,81325,305],{"class":283},[277,81327,81328,81330,81332],{"class":279,"line":500},[277,81329,954],{"class":283},[277,81331,31294],{"class":287},[277,81333,305],{"class":283},[277,81335,81336,81338,81340],{"class":279,"line":505},[277,81337,785],{"class":283},[277,81339,802],{"class":287},[277,81341,305],{"class":283},[267,81343,81345],{"className":269,"code":31966,"filename":971,"highlights":81344,"language":272,"meta":273,"style":273},[520],[16,81346,81347,81361,81369,81375,81381,81389,81393,81397,81401,81407,81427,81443,81447,81451,81455,81463,81467,81475,81490,81516,81534,81542],{"__ignoreMap":273},[277,81348,81349,81351,81353,81355,81357,81359],{"class":279,"line":280},[277,81350,284],{"class":283},[277,81352,288],{"class":287},[277,81354,295],{"class":291},[277,81356,298],{"class":283},[277,81358,302],{"class":301},[277,81360,305],{"class":283},[277,81362,81363,81365,81367],{"class":279,"line":308},[277,81364,1057],{"class":311},[277,81366,1060],{"class":311},[277,81368,343],{"class":283},[277,81370,81371,81373],{"class":279,"line":324},[277,81372,1086],{"class":291},[277,81374,473],{"class":283},[277,81376,81377,81379],{"class":279,"line":331},[277,81378,1093],{"class":311},[277,81380,343],{"class":283},[277,81382,81383,81385,81387],{"class":279,"line":346},[277,81384,32008],{"class":283},[277,81386,25316],{"class":301},[277,81388,1077],{"class":283},[277,81390,81391],{"class":279,"line":360},[277,81392,18478],{"class":283},[277,81394,81395],{"class":279,"line":371},[277,81396,1131],{"class":283},[277,81398,81399],{"class":279,"line":381},[277,81400,1140],{"class":283},[277,81402,81403,81405],{"class":279,"line":391},[277,81404,32029],{"class":291},[277,81406,473],{"class":283},[277,81408,81409,81411,81413,81415,81417,81419,81421,81423,81425],{"class":279,"line":397},[277,81410,1177],{"class":311},[277,81412,511],{"class":283},[277,81414,514],{"class":311},[277,81416,1341],{"class":356},[277,81418,32044],{"class":283},[277,81420,31837],{"class":291},[277,81422,569],{"class":283},[277,81424,18346],{"class":311},[277,81426,18151],{"class":283},[277,81428,81429,81431,81433,81435,81437,81439,81441],{"class":279,"line":402},[277,81430,14529],{"class":283},[277,81432,2352],{"class":291},[277,81434,448],{"class":283},[277,81436,31854],{"class":301},[277,81438,225],{"class":283},[277,81440,1341],{"class":356},[277,81442,32069],{"class":283},[277,81444,81445],{"class":279,"line":436},[277,81446,7016],{"class":283},[277,81448,81449],{"class":279,"line":456},[277,81450,1131],{"class":283},[277,81452,81453],{"class":279,"line":461},[277,81454,18255],{"class":283},[277,81456,81457,81459,81461],{"class":279,"line":476},[277,81458,785],{"class":283},[277,81460,288],{"class":287},[277,81462,305],{"class":283},[277,81464,81465],{"class":279,"line":500},[277,81466,328],{"emptyLinePlaceholder":327},[277,81468,81469,81471,81473],{"class":279,"line":505},[277,81470,284],{"class":283},[277,81472,802],{"class":287},[277,81474,305],{"class":283},[277,81476,81478,81480,81482,81484,81486,81488],{"class":81477,"line":520},[279,9398],[277,81479,810],{"class":283},[277,81481,31294],{"class":287},[277,81483,31891],{"class":291},[277,81485,298],{"class":283},[277,81487,31896],{"class":301},[277,81489,305],{"class":283},[277,81491,81492,81494,81496,81498,81500,81502,81504,81506,81508,81510,81512,81514],{"class":279,"line":539},[277,81493,829],{"class":283},[277,81495,18041],{"class":287},[277,81497,23751],{"class":291},[277,81499,298],{"class":283},[277,81501,31911],{"class":301},[277,81503,4270],{"class":291},[277,81505,298],{"class":283},[277,81507,31911],{"class":301},[277,81509,31920],{"class":291},[277,81511,298],{"class":283},[277,81513,31925],{"class":301},[277,81515,4325],{"class":283},[277,81517,81518,81520,81522,81524,81526,81528,81530,81532],{"class":279,"line":545},[277,81519,829],{"class":283},[277,81521,4267],{"class":287},[277,81523,4270],{"class":291},[277,81525,298],{"class":283},[277,81527,31940],{"class":301},[277,81529,31943],{"class":283},[277,81531,4267],{"class":287},[277,81533,305],{"class":283},[277,81535,81536,81538,81540],{"class":279,"line":550},[277,81537,954],{"class":283},[277,81539,31294],{"class":287},[277,81541,305],{"class":283},[277,81543,81544,81546,81548],{"class":279,"line":578},[277,81545,785],{"class":283},[277,81547,802],{"class":287},[277,81549,305],{"class":283},[192,81551,32180],{"id":32179},[267,81553,81555],{"className":269,"code":32183,"filename":271,"highlights":81554,"language":272,"meta":273,"style":273},[436],[16,81556,81557,81573,81585,81589,81605,81609,81617,81629,81633,81641,81645,81653,81676],{"__ignoreMap":273},[277,81558,81559,81561,81563,81565,81567,81569,81571],{"class":279,"line":280},[277,81560,284],{"class":283},[277,81562,288],{"class":287},[277,81564,292],{"class":291},[277,81566,295],{"class":291},[277,81568,298],{"class":283},[277,81570,302],{"class":301},[277,81572,305],{"class":283},[277,81574,81575,81577,81579,81581,81583],{"class":279,"line":308},[277,81576,312],{"class":311},[277,81578,11006],{"class":283},[277,81580,318],{"class":311},[277,81582,18148],{"class":301},[277,81584,18151],{"class":283},[277,81586,81587],{"class":279,"line":324},[277,81588,328],{"emptyLinePlaceholder":327},[277,81590,81591,81593,81595,81597,81599,81601,81603],{"class":279,"line":331},[277,81592,405],{"class":311},[277,81594,32225],{"class":356},[277,81596,340],{"class":311},[277,81598,413],{"class":291},[277,81600,448],{"class":283},[277,81602,25316],{"class":301},[277,81604,18277],{"class":283},[277,81606,81607],{"class":279,"line":346},[277,81608,328],{"emptyLinePlaceholder":327},[277,81610,81611,81613,81615],{"class":279,"line":360},[277,81612,2460],{"class":311},[277,81614,32246],{"class":291},[277,81616,473],{"class":283},[277,81618,81619,81621,81623,81625,81627],{"class":279,"line":371},[277,81620,2349],{"class":283},[277,81622,2352],{"class":291},[277,81624,448],{"class":283},[277,81626,32259],{"class":301},[277,81628,32262],{"class":283},[277,81630,81631],{"class":279,"line":381},[277,81632,394],{"class":283},[277,81634,81635,81637,81639],{"class":279,"line":391},[277,81636,785],{"class":283},[277,81638,288],{"class":287},[277,81640,305],{"class":283},[277,81642,81643],{"class":279,"line":397},[277,81644,328],{"emptyLinePlaceholder":327},[277,81646,81647,81649,81651],{"class":279,"line":402},[277,81648,284],{"class":283},[277,81650,802],{"class":287},[277,81652,305],{"class":283},[277,81654,81656,81658,81660,81662,81664,81666,81668,81670,81672,81674],{"class":81655,"line":436},[279,9398],[277,81657,810],{"class":283},[277,81659,32294],{"class":287},[277,81661,23751],{"class":291},[277,81663,298],{"class":283},[277,81665,32301],{"class":301},[277,81667,32304],{"class":291},[277,81669,298],{"class":283},[277,81671,32309],{"class":301},[277,81673,25951],{"class":25950},[277,81675,305],{"class":283},[277,81677,81678,81680,81682],{"class":279,"line":456},[277,81679,785],{"class":283},[277,81681,802],{"class":287},[277,81683,305],{"class":283},[267,81685,81687],{"className":269,"code":32324,"filename":971,"highlights":81686,"language":272,"meta":273,"style":273},[505],[16,81688,81689,81703,81711,81717,81723,81731,81735,81739,81743,81749,81765,81769,81773,81777,81785,81789,81797,81820],{"__ignoreMap":273},[277,81690,81691,81693,81695,81697,81699,81701],{"class":279,"line":280},[277,81692,284],{"class":283},[277,81694,288],{"class":287},[277,81696,295],{"class":291},[277,81698,298],{"class":283},[277,81700,302],{"class":301},[277,81702,305],{"class":283},[277,81704,81705,81707,81709],{"class":279,"line":308},[277,81706,1057],{"class":311},[277,81708,1060],{"class":311},[277,81710,343],{"class":283},[277,81712,81713,81715],{"class":279,"line":324},[277,81714,1086],{"class":291},[277,81716,473],{"class":283},[277,81718,81719,81721],{"class":279,"line":331},[277,81720,1093],{"class":311},[277,81722,343],{"class":283},[277,81724,81725,81727,81729],{"class":279,"line":346},[277,81726,32366],{"class":283},[277,81728,25316],{"class":301},[277,81730,1077],{"class":283},[277,81732,81733],{"class":279,"line":360},[277,81734,18478],{"class":283},[277,81736,81737],{"class":279,"line":371},[277,81738,1131],{"class":283},[277,81740,81741],{"class":279,"line":381},[277,81742,1140],{"class":283},[277,81744,81745,81747],{"class":279,"line":391},[277,81746,32387],{"class":291},[277,81748,473],{"class":283},[277,81750,81751,81753,81755,81757,81759,81761,81763],{"class":279,"line":397},[277,81752,14529],{"class":283},[277,81754,2352],{"class":291},[277,81756,448],{"class":283},[277,81758,32259],{"class":301},[277,81760,225],{"class":283},[277,81762,1341],{"class":356},[277,81764,32406],{"class":283},[277,81766,81767],{"class":279,"line":402},[277,81768,7016],{"class":283},[277,81770,81771],{"class":279,"line":436},[277,81772,1131],{"class":283},[277,81774,81775],{"class":279,"line":456},[277,81776,18255],{"class":283},[277,81778,81779,81781,81783],{"class":279,"line":461},[277,81780,785],{"class":283},[277,81782,288],{"class":287},[277,81784,305],{"class":283},[277,81786,81787],{"class":279,"line":476},[277,81788,328],{"emptyLinePlaceholder":327},[277,81790,81791,81793,81795],{"class":279,"line":500},[277,81792,284],{"class":283},[277,81794,802],{"class":287},[277,81796,305],{"class":283},[277,81798,81800,81802,81804,81806,81808,81810,81812,81814,81816,81818],{"class":81799,"line":505},[279,9398],[277,81801,810],{"class":283},[277,81803,32294],{"class":287},[277,81805,23751],{"class":291},[277,81807,298],{"class":283},[277,81809,32301],{"class":301},[277,81811,32304],{"class":291},[277,81813,298],{"class":283},[277,81815,32309],{"class":301},[277,81817,25951],{"class":25950},[277,81819,305],{"class":283},[277,81821,81822,81824,81826],{"class":279,"line":520},[277,81823,785],{"class":283},[277,81825,802],{"class":287},[277,81827,305],{"class":283},[192,81829,32473],{"id":32472},[267,81831,81833],{"className":269,"code":32476,"filename":271,"highlights":81832,"language":272,"meta":273,"style":273},[331,397],[16,81834,81835,81851,81863,81867,81884,81896,81900,81908,81912,81920,81935],{"__ignoreMap":273},[277,81836,81837,81839,81841,81843,81845,81847,81849],{"class":279,"line":280},[277,81838,284],{"class":283},[277,81840,288],{"class":287},[277,81842,292],{"class":291},[277,81844,295],{"class":291},[277,81846,298],{"class":283},[277,81848,302],{"class":301},[277,81850,305],{"class":283},[277,81852,81853,81855,81857,81859,81861],{"class":279,"line":308},[277,81854,312],{"class":311},[277,81856,32502],{"class":283},[277,81858,318],{"class":311},[277,81860,32507],{"class":301},[277,81862,18151],{"class":283},[277,81864,81865],{"class":279,"line":324},[277,81866,328],{"emptyLinePlaceholder":327},[277,81868,81870,81872,81874,81876,81878,81880,81882],{"class":81869,"line":331},[279,9398],[277,81871,2460],{"class":311},[277,81873,32521],{"class":291},[277,81875,448],{"class":283},[277,81877,32526],{"class":349},[277,81879,353],{"class":311},[277,81881,21376],{"class":356},[277,81883,2476],{"class":283},[277,81885,81886,81888,81890,81892,81894],{"class":279,"line":346},[277,81887,2349],{"class":283},[277,81889,2352],{"class":291},[277,81891,448],{"class":283},[277,81893,32543],{"class":301},[277,81895,32546],{"class":283},[277,81897,81898],{"class":279,"line":360},[277,81899,394],{"class":283},[277,81901,81902,81904,81906],{"class":279,"line":371},[277,81903,785],{"class":283},[277,81905,288],{"class":287},[277,81907,305],{"class":283},[277,81909,81910],{"class":279,"line":381},[277,81911,328],{"emptyLinePlaceholder":327},[277,81913,81914,81916,81918],{"class":279,"line":391},[277,81915,284],{"class":283},[277,81917,802],{"class":287},[277,81919,305],{"class":283},[277,81921,81923,81925,81927,81929,81931,81933],{"class":81922,"line":397},[279,9398],[277,81924,810],{"class":283},[277,81926,32578],{"class":287},[277,81928,32581],{"class":291},[277,81930,298],{"class":283},[277,81932,32586],{"class":301},[277,81934,4325],{"class":283},[277,81936,81937,81939,81941],{"class":279,"line":402},[277,81938,785],{"class":283},[277,81940,802],{"class":287},[277,81942,305],{"class":283},[267,81944,81946],{"className":269,"code":32599,"filename":971,"highlights":81945,"language":272,"meta":273,"style":273},[360,461],[16,81947,81948,81962,81974,81978,81986,81990,81995,82005,82017,82021,82025,82029,82037,82041,82050,82064],{"__ignoreMap":273},[277,81949,81950,81952,81954,81956,81958,81960],{"class":279,"line":280},[277,81951,284],{"class":283},[277,81953,288],{"class":287},[277,81955,295],{"class":291},[277,81957,298],{"class":283},[277,81959,302],{"class":301},[277,81961,305],{"class":283},[277,81963,81964,81966,81968,81970,81972],{"class":279,"line":308},[277,81965,312],{"class":311},[277,81967,32502],{"class":283},[277,81969,318],{"class":311},[277,81971,32507],{"class":301},[277,81973,18151],{"class":283},[277,81975,81976],{"class":279,"line":324},[277,81977,328],{"emptyLinePlaceholder":327},[277,81979,81980,81982,81984],{"class":279,"line":331},[277,81981,1057],{"class":311},[277,81983,1060],{"class":311},[277,81985,343],{"class":283},[277,81987,81988],{"class":279,"line":346},[277,81989,32645],{"class":283},[277,81991,81993],{"class":81992,"line":360},[279,9398],[277,81994,1140],{"class":283},[277,81996,81997,81999,82001,82003],{"class":279,"line":371},[277,81998,32655],{"class":291},[277,82000,448],{"class":283},[277,82002,32526],{"class":349},[277,82004,2476],{"class":283},[277,82006,82007,82009,82011,82013,82015],{"class":279,"line":381},[277,82008,14529],{"class":283},[277,82010,2352],{"class":291},[277,82012,448],{"class":283},[277,82014,32543],{"class":301},[277,82016,32546],{"class":283},[277,82018,82019],{"class":279,"line":391},[277,82020,7016],{"class":283},[277,82022,82023],{"class":279,"line":397},[277,82024,1131],{"class":283},[277,82026,82027],{"class":279,"line":402},[277,82028,18255],{"class":283},[277,82030,82031,82033,82035],{"class":279,"line":436},[277,82032,785],{"class":283},[277,82034,288],{"class":287},[277,82036,305],{"class":283},[277,82038,82039],{"class":279,"line":456},[277,82040,328],{"emptyLinePlaceholder":327},[277,82042,82044,82046,82048],{"class":82043,"line":461},[279,9398],[277,82045,284],{"class":283},[277,82047,802],{"class":287},[277,82049,305],{"class":283},[277,82051,82052,82054,82056,82058,82060,82062],{"class":279,"line":476},[277,82053,810],{"class":283},[277,82055,32578],{"class":287},[277,82057,32581],{"class":291},[277,82059,298],{"class":283},[277,82061,32586],{"class":301},[277,82063,4325],{"class":283},[277,82065,82066,82068,82070],{"class":279,"line":500},[277,82067,785],{"class":283},[277,82069,802],{"class":287},[277,82071,305],{"class":283},[30,82073,1976],{"id":1975},[21,82075,32733],{},[38,82077,82078,82082,82086],{},[41,82079,82080,32741],{},[16,82081,32740],{},[41,82083,82084,32746],{},[16,82085,24784],{},[41,82087,82088,32752],{},[16,82089,32751],{},[267,82091,82092],{"className":269,"code":32755,"filename":271,"language":272,"meta":273,"style":273},[16,82093,82094,82110,82122,82126,82136,82146,82156,82166,82170,82174,82190,82206,82210,82244,82248,82256,82270,82284,82288,82296,82304,82308,82316,82320,82330,82334,82338,82354,82380,82394,82404,82408,82416,82420,82428,82436,82448,82460,82464,82478,82484,82492,82500,82508,82516,82520,82538,82546,82550,82558,82578,82592,82596,82604,82618,82622,82630,82638,82646,82654],{"__ignoreMap":273},[277,82095,82096,82098,82100,82102,82104,82106,82108],{"class":279,"line":280},[277,82097,284],{"class":283},[277,82099,288],{"class":287},[277,82101,292],{"class":291},[277,82103,295],{"class":291},[277,82105,298],{"class":283},[277,82107,302],{"class":301},[277,82109,305],{"class":283},[277,82111,82112,82114,82116,82118,82120],{"class":279,"line":308},[277,82113,312],{"class":311},[277,82115,23384],{"class":283},[277,82117,318],{"class":311},[277,82119,18148],{"class":301},[277,82121,18151],{"class":283},[277,82123,82124],{"class":279,"line":324},[277,82125,328],{"emptyLinePlaceholder":327},[277,82127,82128,82130,82132,82134],{"class":279,"line":331},[277,82129,334],{"class":311},[277,82131,5630],{"class":291},[277,82133,340],{"class":311},[277,82135,343],{"class":283},[277,82137,82138,82140,82142,82144],{"class":279,"line":346},[277,82139,350],{"class":349},[277,82141,353],{"class":311},[277,82143,2473],{"class":356},[277,82145,18151],{"class":283},[277,82147,82148,82150,82152,82154],{"class":279,"line":360},[277,82149,5647],{"class":349},[277,82151,353],{"class":311},[277,82153,21376],{"class":356},[277,82155,18151],{"class":283},[277,82157,82158,82160,82162,82164],{"class":279,"line":371},[277,82159,5656],{"class":349},[277,82161,353],{"class":311},[277,82163,22553],{"class":356},[277,82165,18151],{"class":283},[277,82167,82168],{"class":279,"line":381},[277,82169,18255],{"class":283},[277,82171,82172],{"class":279,"line":391},[277,82173,328],{"emptyLinePlaceholder":327},[277,82175,82176,82178,82180,82182,82184,82186,82188],{"class":279,"line":397},[277,82177,405],{"class":311},[277,82179,32844],{"class":356},[277,82181,340],{"class":311},[277,82183,413],{"class":291},[277,82185,448],{"class":283},[277,82187,25316],{"class":301},[277,82189,18277],{"class":283},[277,82191,82192,82194,82196,82198,82200,82202,82204],{"class":279,"line":402},[277,82193,405],{"class":311},[277,82195,2097],{"class":356},[277,82197,340],{"class":311},[277,82199,413],{"class":291},[277,82201,284],{"class":283},[277,82203,5684],{"class":291},[277,82205,32871],{"class":283},[277,82207,82208],{"class":279,"line":436},[277,82209,328],{"emptyLinePlaceholder":327},[277,82211,82212,82214,82216,82218,82220,82222,82224,82226,82228,82230,82232,82234,82236,82238,82240,82242],{"class":279,"line":456},[277,82213,405],{"class":311},[277,82215,32882],{"class":356},[277,82217,340],{"class":311},[277,82219,2200],{"class":291},[277,82221,2203],{"class":283},[277,82223,601],{"class":311},[277,82225,2215],{"class":283},[277,82227,2218],{"class":291},[277,82229,2334],{"class":283},[277,82231,2223],{"class":349},[277,82233,2340],{"class":283},[277,82235,601],{"class":311},[277,82237,2288],{"class":311},[277,82239,32907],{"class":283},[277,82241,9813],{"class":356},[277,82243,18277],{"class":283},[277,82245,82246],{"class":279,"line":461},[277,82247,328],{"emptyLinePlaceholder":327},[277,82249,82250,82252,82254],{"class":279,"line":476},[277,82251,2460],{"class":311},[277,82253,32922],{"class":291},[277,82255,473],{"class":283},[277,82257,82258,82260,82262,82264,82266,82268],{"class":279,"line":500},[277,82259,479],{"class":311},[277,82261,32931],{"class":356},[277,82263,340],{"class":311},[277,82265,32936],{"class":283},[277,82267,31837],{"class":291},[277,82269,19422],{"class":283},[277,82271,82272,82274,82276,82278,82280,82282],{"class":279,"line":505},[277,82273,508],{"class":311},[277,82275,511],{"class":283},[277,82277,514],{"class":311},[277,82279,32951],{"class":283},[277,82281,18346],{"class":311},[277,82283,18151],{"class":283},[277,82285,82286],{"class":279,"line":520},[277,82287,328],{"emptyLinePlaceholder":327},[277,82289,82290,82292,82294],{"class":279,"line":539},[277,82291,32964],{"class":283},[277,82293,9780],{"class":291},[277,82295,1066],{"class":283},[277,82297,82298,82300,82302],{"class":279,"line":545},[277,82299,9787],{"class":283},[277,82301,9790],{"class":291},[277,82303,9793],{"class":283},[277,82305,82306],{"class":279,"line":550},[277,82307,32981],{"class":283},[277,82309,82310,82312,82314],{"class":279,"line":578},[277,82311,32986],{"class":283},[277,82313,2123],{"class":356},[277,82315,1077],{"class":283},[277,82317,82318],{"class":279,"line":583},[277,82319,32995],{"class":283},[277,82321,82322,82324,82326,82328],{"class":279,"line":588},[277,82323,33000],{"class":283},[277,82325,298],{"class":311},[277,82327,33005],{"class":301},[277,82329,18151],{"class":283},[277,82331,82332],{"class":279,"line":606},[277,82333,394],{"class":283},[277,82335,82336],{"class":279,"line":614},[277,82337,328],{"emptyLinePlaceholder":327},[277,82339,82340,82342,82344,82346,82348,82350,82352],{"class":279,"line":625},[277,82341,2460],{"class":311},[277,82343,2463],{"class":291},[277,82345,448],{"class":283},[277,82347,22042],{"class":349},[277,82349,353],{"class":311},[277,82351,2473],{"class":356},[277,82353,2476],{"class":283},[277,82355,82356,82358,82360,82362,82364,82366,82368,82370,82372,82374,82376,82378],{"class":279,"line":637},[277,82357,479],{"class":311},[277,82359,2483],{"class":356},[277,82361,340],{"class":311},[277,82363,2215],{"class":283},[277,82365,2490],{"class":291},[277,82367,2334],{"class":283},[277,82369,2495],{"class":349},[277,82371,2340],{"class":283},[277,82373,601],{"class":311},[277,82375,2500],{"class":283},[277,82377,2503],{"class":311},[277,82379,33058],{"class":283},[277,82381,82382,82384,82386,82388,82390,82392],{"class":279,"line":646},[277,82383,508],{"class":311},[277,82385,511],{"class":283},[277,82387,514],{"class":311},[277,82389,2521],{"class":283},[277,82391,18346],{"class":311},[277,82393,18151],{"class":283},[277,82395,82396,82398,82400,82402],{"class":279,"line":668},[277,82397,2532],{"class":283},[277,82399,298],{"class":311},[277,82401,2288],{"class":311},[277,82403,33083],{"class":283},[277,82405,82406],{"class":279,"line":673},[277,82407,394],{"class":283},[277,82409,82410,82412,82414],{"class":279,"line":679},[277,82411,785],{"class":283},[277,82413,288],{"class":287},[277,82415,305],{"class":283},[277,82417,82418],{"class":279,"line":684},[277,82419,328],{"emptyLinePlaceholder":327},[277,82421,82422,82424,82426],{"class":279,"line":700},[277,82423,284],{"class":283},[277,82425,802],{"class":287},[277,82427,305],{"class":283},[277,82429,82430,82432,82434],{"class":279,"line":717},[277,82431,810],{"class":283},[277,82433,4121],{"class":287},[277,82435,305],{"class":283},[277,82437,82438,82440,82442,82444,82446],{"class":279,"line":722},[277,82439,829],{"class":283},[277,82441,30],{"class":287},[277,82443,33124],{"class":283},[277,82445,30],{"class":287},[277,82447,305],{"class":283},[277,82449,82450,82452,82454,82456,82458],{"class":279,"line":729},[277,82451,829],{"class":283},[277,82453,21],{"class":287},[277,82455,33137],{"class":283},[277,82457,21],{"class":287},[277,82459,305],{"class":283},[277,82461,82462],{"class":279,"line":738},[277,82463,328],{"emptyLinePlaceholder":327},[277,82465,82466,82468,82470,82472,82474,82476],{"class":279,"line":747},[277,82467,829],{"class":283},[277,82469,31294],{"class":287},[277,82471,31891],{"class":291},[277,82473,298],{"class":283},[277,82475,33158],{"class":301},[277,82477,305],{"class":283},[277,82479,82480,82482],{"class":279,"line":754},[277,82481,879],{"class":283},[277,82483,11549],{"class":287},[277,82485,82486,82488,82490],{"class":279,"line":772},[277,82487,33171],{"class":291},[277,82489,298],{"class":283},[277,82491,33176],{"class":301},[277,82493,82494,82496,82498],{"class":279,"line":777},[277,82495,33181],{"class":291},[277,82497,298],{"class":283},[277,82499,29470],{"class":301},[277,82501,82502,82504,82506],{"class":279,"line":782},[277,82503,33190],{"class":291},[277,82505,298],{"class":283},[277,82507,33195],{"class":301},[277,82509,82510,82512,82514],{"class":279,"line":792},[277,82511,33200],{"class":291},[277,82513,298],{"class":283},[277,82515,33205],{"class":301},[277,82517,82518],{"class":279,"line":797},[277,82519,33210],{"class":283},[277,82521,82522,82524,82526,82528,82530,82532,82534,82536],{"class":279,"line":807},[277,82523,879],{"class":283},[277,82525,4267],{"class":287},[277,82527,4270],{"class":291},[277,82529,298],{"class":283},[277,82531,31940],{"class":301},[277,82533,33225],{"class":283},[277,82535,4267],{"class":287},[277,82537,305],{"class":283},[277,82539,82540,82542,82544],{"class":279,"line":826},[277,82541,922],{"class":283},[277,82543,31294],{"class":287},[277,82545,305],{"class":283},[277,82547,82548],{"class":279,"line":849},[277,82549,328],{"emptyLinePlaceholder":327},[277,82551,82552,82554,82556],{"class":279,"line":854},[277,82553,829],{"class":283},[277,82555,38],{"class":287},[277,82557,305],{"class":283},[277,82559,82560,82562,82564,82566,82568,82570,82572,82574,82576],{"class":279,"line":876},[277,82561,879],{"class":283},[277,82563,41],{"class":287},[277,82565,12785],{"class":291},[277,82567,298],{"class":283},[277,82569,33262],{"class":301},[277,82571,4317],{"class":291},[277,82573,298],{"class":283},[277,82575,33269],{"class":301},[277,82577,305],{"class":283},[277,82579,82580,82582,82584,82586,82588,82590],{"class":279,"line":891},[277,82581,26686],{"class":283},[277,82583,4267],{"class":287},[277,82585,4278],{"class":291},[277,82587,298],{"class":283},[277,82589,33284],{"class":301},[277,82591,305],{"class":283},[277,82593,82594],{"class":279,"line":905},[277,82595,33291],{"class":283},[277,82597,82598,82600,82602],{"class":279,"line":919},[277,82599,26734],{"class":283},[277,82601,4267],{"class":287},[277,82603,305],{"class":283},[277,82605,82606,82608,82610,82612,82614,82616],{"class":279,"line":929},[277,82607,26686],{"class":283},[277,82609,277],{"class":287},[277,82611,33308],{"class":291},[277,82613,298],{"class":283},[277,82615,33313],{"class":301},[277,82617,305],{"class":283},[277,82619,82620],{"class":279,"line":934},[277,82621,33320],{"class":283},[277,82623,82624,82626,82628],{"class":279,"line":951},[277,82625,26734],{"class":283},[277,82627,277],{"class":287},[277,82629,305],{"class":283},[277,82631,82632,82634,82636],{"class":279,"line":961},[277,82633,4175],{"class":283},[277,82635,41],{"class":287},[277,82637,305],{"class":283},[277,82639,82640,82642,82644],{"class":279,"line":1473},[277,82641,922],{"class":283},[277,82643,38],{"class":287},[277,82645,305],{"class":283},[277,82647,82648,82650,82652],{"class":279,"line":1478},[277,82649,954],{"class":283},[277,82651,4121],{"class":287},[277,82653,305],{"class":283},[277,82655,82656,82658,82660],{"class":279,"line":1497},[277,82657,785],{"class":283},[277,82659,802],{"class":287},[277,82661,305],{"class":283},[267,82663,82664],{"className":269,"code":33363,"filename":971,"language":272,"meta":273,"style":273},[16,82665,82666,82680,82688,82694,82700,82708,82712,82716,82720,82724,82730,82756,82760,82764,82768,82774,82790,82804,82808,82818,82826,82830,82838,82842,82854,82858,82868,82896,82910,82920,82924,82928,82932,82940,82944,82952,82960,82972,82984,82988,83002,83008,83016,83024,83032,83040,83044,83062,83070,83074,83082,83102,83116,83120,83128,83142,83146,83154,83162,83170,83178],{"__ignoreMap":273},[277,82667,82668,82670,82672,82674,82676,82678],{"class":279,"line":280},[277,82669,284],{"class":283},[277,82671,288],{"class":287},[277,82673,295],{"class":291},[277,82675,298],{"class":283},[277,82677,302],{"class":301},[277,82679,305],{"class":283},[277,82681,82682,82684,82686],{"class":279,"line":308},[277,82683,1057],{"class":311},[277,82685,1060],{"class":311},[277,82687,343],{"class":283},[277,82689,82690,82692],{"class":279,"line":324},[277,82691,1086],{"class":291},[277,82693,473],{"class":283},[277,82695,82696,82698],{"class":279,"line":331},[277,82697,1093],{"class":311},[277,82699,343],{"class":283},[277,82701,82702,82704,82706],{"class":279,"line":346},[277,82703,33404],{"class":283},[277,82705,25316],{"class":301},[277,82707,1077],{"class":283},[277,82709,82710],{"class":279,"line":360},[277,82711,6606],{"class":283},[277,82713,82714],{"class":279,"line":371},[277,82715,18478],{"class":283},[277,82717,82718],{"class":279,"line":381},[277,82719,1131],{"class":283},[277,82721,82722],{"class":279,"line":391},[277,82723,2742],{"class":283},[277,82725,82726,82728],{"class":279,"line":397},[277,82727,33429],{"class":291},[277,82729,473],{"class":283},[277,82731,82732,82734,82736,82738,82740,82742,82744,82746,82748,82750,82752,82754],{"class":279,"line":402},[277,82733,2754],{"class":311},[277,82735,1268],{"class":356},[277,82737,2759],{"class":283},[277,82739,2218],{"class":291},[277,82741,2334],{"class":283},[277,82743,2223],{"class":349},[277,82745,2340],{"class":283},[277,82747,601],{"class":311},[277,82749,2288],{"class":311},[277,82751,32907],{"class":283},[277,82753,9813],{"class":356},[277,82755,18151],{"class":283},[277,82757,82758],{"class":279,"line":436},[277,82759,7016],{"class":283},[277,82761,82762],{"class":279,"line":456},[277,82763,1131],{"class":283},[277,82765,82766],{"class":279,"line":461},[277,82767,1140],{"class":283},[277,82769,82770,82772],{"class":279,"line":476},[277,82771,33474],{"class":291},[277,82773,473],{"class":283},[277,82775,82776,82778,82780,82782,82784,82786,82788],{"class":279,"line":500},[277,82777,1154],{"class":311},[277,82779,32931],{"class":356},[277,82781,340],{"class":311},[277,82783,1268],{"class":356},[277,82785,33489],{"class":283},[277,82787,31837],{"class":291},[277,82789,19422],{"class":283},[277,82791,82792,82794,82796,82798,82800,82802],{"class":279,"line":505},[277,82793,1177],{"class":311},[277,82795,511],{"class":283},[277,82797,514],{"class":311},[277,82799,32951],{"class":283},[277,82801,18346],{"class":311},[277,82803,18151],{"class":283},[277,82805,82806],{"class":279,"line":520},[277,82807,328],{"emptyLinePlaceholder":327},[277,82809,82810,82812,82814,82816],{"class":279,"line":539},[277,82811,1212],{"class":356},[277,82813,2759],{"class":283},[277,82815,9780],{"class":291},[277,82817,1066],{"class":283},[277,82819,82820,82822,82824],{"class":279,"line":545},[277,82821,10220],{"class":283},[277,82823,9790],{"class":291},[277,82825,9793],{"class":283},[277,82827,82828],{"class":279,"line":550},[277,82829,33534],{"class":283},[277,82831,82832,82834,82836],{"class":279,"line":578},[277,82833,33539],{"class":283},[277,82835,2123],{"class":356},[277,82837,1077],{"class":283},[277,82839,82840],{"class":279,"line":583},[277,82841,30603],{"class":283},[277,82843,82844,82846,82848,82850,82852],{"class":279,"line":588},[277,82845,1212],{"class":356},[277,82847,33554],{"class":283},[277,82849,298],{"class":311},[277,82851,33005],{"class":301},[277,82853,18151],{"class":283},[277,82855,82856],{"class":279,"line":606},[277,82857,7016],{"class":283},[277,82859,82860,82862,82864,82866],{"class":279,"line":614},[277,82861,2987],{"class":291},[277,82863,448],{"class":283},[277,82865,22042],{"class":349},[277,82867,2476],{"class":283},[277,82869,82870,82872,82874,82876,82878,82880,82882,82884,82886,82888,82890,82892,82894],{"class":279,"line":625},[277,82871,1154],{"class":311},[277,82873,2483],{"class":356},[277,82875,340],{"class":311},[277,82877,1268],{"class":356},[277,82879,2759],{"class":283},[277,82881,2490],{"class":291},[277,82883,2334],{"class":283},[277,82885,2495],{"class":349},[277,82887,2340],{"class":283},[277,82889,601],{"class":311},[277,82891,2500],{"class":283},[277,82893,2503],{"class":311},[277,82895,33058],{"class":283},[277,82897,82898,82900,82902,82904,82906,82908],{"class":279,"line":637},[277,82899,1177],{"class":311},[277,82901,511],{"class":283},[277,82903,514],{"class":311},[277,82905,2521],{"class":283},[277,82907,18346],{"class":311},[277,82909,18151],{"class":283},[277,82911,82912,82914,82916,82918],{"class":279,"line":646},[277,82913,3044],{"class":283},[277,82915,298],{"class":311},[277,82917,2288],{"class":311},[277,82919,33083],{"class":283},[277,82921,82922],{"class":279,"line":668},[277,82923,7016],{"class":283},[277,82925,82926],{"class":279,"line":673},[277,82927,1131],{"class":283},[277,82929,82930],{"class":279,"line":679},[277,82931,18255],{"class":283},[277,82933,82934,82936,82938],{"class":279,"line":684},[277,82935,785],{"class":283},[277,82937,288],{"class":287},[277,82939,305],{"class":283},[277,82941,82942],{"class":279,"line":700},[277,82943,328],{"emptyLinePlaceholder":327},[277,82945,82946,82948,82950],{"class":279,"line":717},[277,82947,284],{"class":283},[277,82949,802],{"class":287},[277,82951,305],{"class":283},[277,82953,82954,82956,82958],{"class":279,"line":722},[277,82955,810],{"class":283},[277,82957,4121],{"class":287},[277,82959,305],{"class":283},[277,82961,82962,82964,82966,82968,82970],{"class":279,"line":729},[277,82963,829],{"class":283},[277,82965,30],{"class":287},[277,82967,33124],{"class":283},[277,82969,30],{"class":287},[277,82971,305],{"class":283},[277,82973,82974,82976,82978,82980,82982],{"class":279,"line":738},[277,82975,829],{"class":283},[277,82977,21],{"class":287},[277,82979,33137],{"class":283},[277,82981,21],{"class":287},[277,82983,305],{"class":283},[277,82985,82986],{"class":279,"line":747},[277,82987,328],{"emptyLinePlaceholder":327},[277,82989,82990,82992,82994,82996,82998,83000],{"class":279,"line":754},[277,82991,829],{"class":283},[277,82993,31294],{"class":287},[277,82995,31891],{"class":291},[277,82997,298],{"class":283},[277,82999,33158],{"class":301},[277,83001,305],{"class":283},[277,83003,83004,83006],{"class":279,"line":772},[277,83005,879],{"class":283},[277,83007,11549],{"class":287},[277,83009,83010,83012,83014],{"class":279,"line":777},[277,83011,33171],{"class":291},[277,83013,298],{"class":283},[277,83015,33176],{"class":301},[277,83017,83018,83020,83022],{"class":279,"line":782},[277,83019,33181],{"class":291},[277,83021,298],{"class":283},[277,83023,29470],{"class":301},[277,83025,83026,83028,83030],{"class":279,"line":792},[277,83027,33190],{"class":291},[277,83029,298],{"class":283},[277,83031,33195],{"class":301},[277,83033,83034,83036,83038],{"class":279,"line":797},[277,83035,33200],{"class":291},[277,83037,298],{"class":283},[277,83039,33205],{"class":301},[277,83041,83042],{"class":279,"line":807},[277,83043,33210],{"class":283},[277,83045,83046,83048,83050,83052,83054,83056,83058,83060],{"class":279,"line":826},[277,83047,879],{"class":283},[277,83049,4267],{"class":287},[277,83051,4270],{"class":291},[277,83053,298],{"class":283},[277,83055,31940],{"class":301},[277,83057,33225],{"class":283},[277,83059,4267],{"class":287},[277,83061,305],{"class":283},[277,83063,83064,83066,83068],{"class":279,"line":849},[277,83065,922],{"class":283},[277,83067,31294],{"class":287},[277,83069,305],{"class":283},[277,83071,83072],{"class":279,"line":854},[277,83073,328],{"emptyLinePlaceholder":327},[277,83075,83076,83078,83080],{"class":279,"line":876},[277,83077,829],{"class":283},[277,83079,38],{"class":287},[277,83081,305],{"class":283},[277,83083,83084,83086,83088,83090,83092,83094,83096,83098,83100],{"class":279,"line":891},[277,83085,879],{"class":283},[277,83087,41],{"class":287},[277,83089,12785],{"class":291},[277,83091,298],{"class":283},[277,83093,33262],{"class":301},[277,83095,4317],{"class":291},[277,83097,298],{"class":283},[277,83099,33269],{"class":301},[277,83101,305],{"class":283},[277,83103,83104,83106,83108,83110,83112,83114],{"class":279,"line":905},[277,83105,26686],{"class":283},[277,83107,4267],{"class":287},[277,83109,4278],{"class":291},[277,83111,298],{"class":283},[277,83113,33284],{"class":301},[277,83115,305],{"class":283},[277,83117,83118],{"class":279,"line":919},[277,83119,33291],{"class":283},[277,83121,83122,83124,83126],{"class":279,"line":929},[277,83123,26734],{"class":283},[277,83125,4267],{"class":287},[277,83127,305],{"class":283},[277,83129,83130,83132,83134,83136,83138,83140],{"class":279,"line":934},[277,83131,26686],{"class":283},[277,83133,277],{"class":287},[277,83135,33308],{"class":291},[277,83137,298],{"class":283},[277,83139,33313],{"class":301},[277,83141,305],{"class":283},[277,83143,83144],{"class":279,"line":951},[277,83145,33320],{"class":283},[277,83147,83148,83150,83152],{"class":279,"line":961},[277,83149,26734],{"class":283},[277,83151,277],{"class":287},[277,83153,305],{"class":283},[277,83155,83156,83158,83160],{"class":279,"line":1473},[277,83157,4175],{"class":283},[277,83159,41],{"class":287},[277,83161,305],{"class":283},[277,83163,83164,83166,83168],{"class":279,"line":1478},[277,83165,922],{"class":283},[277,83167,38],{"class":287},[277,83169,305],{"class":283},[277,83171,83172,83174,83176],{"class":279,"line":1497},[277,83173,954],{"class":283},[277,83175,4121],{"class":287},[277,83177,305],{"class":283},[277,83179,83180,83182,83184],{"class":279,"line":1510},[277,83181,785],{"class":283},[277,83183,802],{"class":287},[277,83185,305],{"class":283},[30,83187,1596],{"id":1595},[21,83189,83190,33899],{},[16,83191,17977],{},[21,83193,33902],{},[38,83195,83196,83202,83204,83212],{},[41,83197,20777,83198,33910,83200,104],{},[16,83199,33909],{},[16,83201,17977],{},[41,83203,33915],{},[41,83205,33918,83206,225,83208,225,83210,33925],{},[16,83207,31106],{},[16,83209,31109],{},[16,83211,31112],{},[41,83213,33928],{},[1606,83215,33931],{},{"title":273,"searchDepth":308,"depth":308,"links":83217},[83218,83219,83220,83221,83222,83228,83234,83235],{"id":20624,"depth":308,"text":20625},{"id":24652,"depth":308,"text":24653},{"id":128,"depth":308,"text":129},{"id":155,"depth":308,"text":156},{"id":189,"depth":308,"text":190,"children":83223},[83224,83225,83226,83227],{"id":31201,"depth":324,"text":31202},{"id":31276,"depth":324,"text":33942},{"id":31351,"depth":324,"text":31352},{"id":31460,"depth":324,"text":33945},{"id":1945,"depth":308,"text":1946,"children":83229},[83230,83231,83232,83233],{"id":31536,"depth":324,"text":31537},{"id":31752,"depth":324,"text":33950},{"id":32179,"depth":324,"text":32180},{"id":32472,"depth":324,"text":32473},{"id":1975,"depth":308,"text":1976},{"id":1595,"depth":308,"text":1596},{"script":83237},[83238],{"type":1632,"key":1633,"data-nuxt-schema-org":327,"nodes":83239},[83240],{"headline":33964,"author":83241,"datePublished":33966,"@type":1640},{"name":1637,"@type":1638},{"updatedAt":33966,"coverCaption":17759,"author":1637,"keywords":83243},[1645,17977,33969,33970,271,971],[83245],{"headline":33964,"author":83246,"datePublished":33966,"@type":1640},{"name":1637,"@type":1638},{"title":30955,"description":33958},[83249,83250,83251],{"tag":20588,"color":20589},{"tag":33980,"color":33981},{"tag":9074,"color":9075},{"id":33985,"title":33986,"body":83253,"cover":36943,"coverAlt":36944,"date":36945,"description":36946,"draft":1627,"extension":1628,"head":85985,"locale":1641,"meta":85991,"navigation":327,"path":36960,"schemaOrg":85993,"seo":85996,"series":20582,"seriesDescription":20583,"seriesOrder":331,"seriesTitle":20584,"slug":1656,"stem":36965,"tags":85997,"__hash__":36971},{"type":8,"value":83254,"toc":85963},[83255,83259,83263,83267,83269,83273,83283,83287,83289,83291,83321,83323,83351,83355,83387,83389,83393,83407,83409,83411,83423,83425,83429,83431,83461,83463,83505,83509,83515,83517,83577,83581,83583,83587,83611,83617,83621,83625,83627,83631,83738,83851,83855,83958,84067,84071,84214,84355,84359,84479,84597,84601,84603,84715,84825,84829,84966,85109,85115,85117,85121,85519,85927,85929,85933,85935,85957,85961],[11,83256,20605,83257],{"id":33991},[16,83258,17974],{},[21,83260,83261,33998],{},[16,83262,17974],{},[21,83264,24593,83265,34003],{},[16,83266,17974],{},[30,83268,20625],{"id":20624},[21,83270,15938,83271,34010],{},[16,83272,17974],{},[38,83274,83275,83277,83279,83281],{},[41,83276,34015],{},[41,83278,34018],{},[41,83280,34021],{},[41,83282,34024],{},[21,83284,11996,83285,34029],{},[16,83286,17974],{},[30,83288,24653],{"id":24652},[21,83290,34034],{},[267,83292,83293],{"className":269,"code":34037,"filename":9339,"language":272,"meta":273,"style":273},[16,83294,83295],{"__ignoreMap":273},[277,83296,83297,83299,83301,83303,83305,83307,83309,83311,83313,83315,83317,83319],{"class":279,"line":280},[277,83298,284],{"class":283},[277,83300,13178],{"class":287},[277,83302,34048],{"class":291},[277,83304,353],{"class":283},[277,83306,34053],{"class":291},[277,83308,298],{"class":283},[277,83310,866],{"class":301},[277,83312,34060],{"class":283},[277,83314,866],{"class":301},[277,83316,34065],{"class":283},[277,83318,13178],{"class":287},[277,83320,305],{"class":283},[21,83322,34072],{},[267,83324,83325],{"className":269,"code":34075,"filename":9339,"language":272,"meta":273,"style":273},[16,83326,83327],{"__ignoreMap":273},[277,83328,83329,83331,83333,83335,83337,83339,83341,83343,83345,83347,83349],{"class":279,"line":280},[277,83330,284],{"class":283},[277,83332,13178],{"class":287},[277,83334,6244],{"class":283},[277,83336,34053],{"class":291},[277,83338,298],{"class":283},[277,83340,866],{"class":301},[277,83342,34060],{"class":283},[277,83344,866],{"class":301},[277,83346,34065],{"class":283},[277,83348,13178],{"class":287},[277,83350,305],{"class":283},[21,83352,83353,34106],{},[16,83354,17974],{},[38,83356,83357,83369,83373,83379,83383],{},[41,83358,34111,83359,225,83361,225,83363,225,83365,225,83367,34124],{},[16,83360,34053],{},[16,83362,34116],{},[16,83364,34119],{},[16,83366,22042],{},[16,83368,23415],{},[41,83370,34127,83371,34124],{},[16,83372,34130],{},[41,83374,34133,83375,1697,83377,34139],{},[16,83376,34136],{},[16,83378,1606],{},[41,83380,34142,83381,34124],{},[16,83382,34145],{},[41,83384,34148,83385,1895],{},[16,83386,34151],{},[30,83388,129],{"id":128},[21,83390,20777,83391,34158],{},[16,83392,17974],{},[38,83394,83395,83397,83403,83405],{},[41,83396,34163],{},[41,83398,34166,83399,5245,83401,1895],{},[16,83400,34136],{},[16,83402,1606],{},[41,83404,34173],{},[41,83406,34176],{},[30,83408,156],{"id":155},[21,83410,162],{},[38,83412,83413,83415,83419],{},[41,83414,34185],{},[41,83416,34188,83417,1895],{},[16,83418,1732],{},[41,83420,34193,83421,34196],{},[16,83422,17974],{},[30,83424,190],{"id":189},[192,83426,34202,83427,34205],{"id":34201},[16,83428,17974],{},[21,83430,24892],{},[267,83432,83433],{"className":269,"code":34210,"filename":34211,"language":272,"meta":273,"style":273},[16,83434,83435],{"__ignoreMap":273},[277,83436,83437,83439,83441,83443,83445,83447,83449,83451,83453,83455,83457,83459],{"class":279,"line":280},[277,83438,284],{"class":283},[277,83440,34220],{"class":287},[277,83442,6244],{"class":283},[277,83444,34116],{"class":291},[277,83446,298],{"class":283},[277,83448,866],{"class":301},[277,83450,15951],{"class":311},[277,83452,34233],{"class":283},[277,83454,15951],{"class":311},[277,83456,34238],{"class":283},[277,83458,866],{"class":301},[277,83460,4325],{"class":283},[21,83462,28466],{},[267,83464,83465],{"className":269,"code":34247,"filename":34248,"language":272,"meta":273,"style":273},[16,83466,83467,83481,83485],{"__ignoreMap":273},[277,83468,83469,83471,83473,83475,83477,83479],{"class":279,"line":280},[277,83470,284],{"class":283},[277,83472,34220],{"class":287},[277,83474,34259],{"class":291},[277,83476,298],{"class":283},[277,83478,34264],{"class":301},[277,83480,4325],{"class":283},[277,83482,83483],{"class":279,"line":308},[277,83484,34271],{"class":12741},[277,83486,83487,83489,83491,83493,83495,83497,83499,83501,83503],{"class":279,"line":324},[277,83488,284],{"class":283},[277,83490,34220],{"class":287},[277,83492,6244],{"class":283},[277,83494,34116],{"class":291},[277,83496,298],{"class":283},[277,83498,866],{"class":301},[277,83500,34288],{"class":283},[277,83502,866],{"class":301},[277,83504,4325],{"class":283},[21,83506,34295,83507,34299],{},[16,83508,34298],{},[192,83510,34303,83511,118,83513],{"id":34302},[16,83512,34306],{},[16,83514,34309],{},[21,83516,24892],{},[267,83518,83519],{"className":269,"code":34314,"filename":28344,"language":272,"meta":273,"style":273},[16,83520,83521,83565,83569],{"__ignoreMap":273},[277,83522,83523,83525,83527,83529,83531,83533,83535,83537,83539,83541,83543,83545,83547,83549,83551,83553,83555,83557,83559,83561,83563],{"class":279,"line":280},[277,83524,284],{"class":283},[277,83526,4267],{"class":287},[277,83528,6244],{"class":283},[277,83530,34136],{"class":291},[277,83532,298],{"class":283},[277,83534,866],{"class":301},[277,83536,31377],{"class":283},[277,83538,2310],{"class":311},[277,83540,34337],{"class":283},[277,83542,2310],{"class":311},[277,83544,2288],{"class":311},[277,83546,31389],{"class":283},[277,83548,2285],{"class":311},[277,83550,34348],{"class":301},[277,83552,6244],{"class":311},[277,83554,34353],{"class":283},[277,83556,2285],{"class":311},[277,83558,34358],{"class":301},[277,83560,6244],{"class":311},[277,83562,34363],{"class":301},[277,83564,305],{"class":283},[277,83566,83567],{"class":279,"line":308},[277,83568,34370],{"class":283},[277,83570,83571,83573,83575],{"class":279,"line":324},[277,83572,785],{"class":283},[277,83574,4267],{"class":287},[277,83576,305],{"class":283},[21,83578,34381,83579,104],{},[16,83580,1732],{},[192,83582,34387],{"id":34386},[21,83584,83585,34392],{},[16,83586,17974],{},[267,83588,83589],{"className":269,"code":34395,"filename":34396,"language":272,"meta":273,"style":273},[16,83590,83591],{"__ignoreMap":273},[277,83592,83593,83595,83597,83599,83601,83603,83605,83607,83609],{"class":279,"line":280},[277,83594,284],{"class":283},[277,83596,22608],{"class":287},[277,83598,6244],{"class":283},[277,83600,27313],{"class":291},[277,83602,298],{"class":283},[277,83604,866],{"class":301},[277,83606,27313],{"class":283},[277,83608,866],{"class":301},[277,83610,4325],{"class":283},[21,83612,34421,83613,34425,83615,34428],{},[16,83614,34424],{},[16,83616,27313],{},[192,83618,34432,83619,34435],{"id":34431},[16,83620,17974],{},[21,83622,83623,34440],{},[16,83624,17974],{},[30,83626,1946],{"id":1945},[192,83628,34446,83629,19],{"id":34445},[16,83630,34053],{},[267,83632,83634],{"className":269,"code":34451,"filename":271,"highlights":83633,"language":272,"meta":273,"style":273},[331,381],[16,83635,83636,83646,83658,83662,83679,83687,83691,83699,83730],{"__ignoreMap":273},[277,83637,83638,83640,83642,83644],{"class":279,"line":280},[277,83639,284],{"class":283},[277,83641,288],{"class":287},[277,83643,292],{"class":291},[277,83645,305],{"class":283},[277,83647,83648,83650,83652,83654,83656],{"class":279,"line":308},[277,83649,312],{"class":311},[277,83651,11006],{"class":283},[277,83653,318],{"class":311},[277,83655,18148],{"class":301},[277,83657,18151],{"class":283},[277,83659,83660],{"class":279,"line":324},[277,83661,328],{"emptyLinePlaceholder":327},[277,83663,83665,83667,83669,83671,83673,83675,83677],{"class":83664,"line":331},[279,9398],[277,83666,405],{"class":311},[277,83668,34488],{"class":356},[277,83670,340],{"class":311},[277,83672,413],{"class":291},[277,83674,448],{"class":283},[277,83676,34497],{"class":301},[277,83678,18277],{"class":283},[277,83680,83681,83683,83685],{"class":279,"line":346},[277,83682,785],{"class":283},[277,83684,288],{"class":287},[277,83686,305],{"class":283},[277,83688,83689],{"class":279,"line":360},[277,83690,328],{"emptyLinePlaceholder":327},[277,83692,83693,83695,83697],{"class":279,"line":371},[277,83694,284],{"class":283},[277,83696,802],{"class":287},[277,83698,305],{"class":283},[277,83700,83702,83704,83706,83708,83710,83712,83714,83716,83718,83720,83722,83724,83726,83728],{"class":83701,"line":381},[279,9398],[277,83703,810],{"class":283},[277,83705,13178],{"class":287},[277,83707,34529],{"class":291},[277,83709,298],{"class":283},[277,83711,34534],{"class":301},[277,83713,18401],{"class":291},[277,83715,298],{"class":283},[277,83717,34541],{"class":301},[277,83719,34544],{"class":291},[277,83721,298],{"class":283},[277,83723,34549],{"class":301},[277,83725,34552],{"class":283},[277,83727,13178],{"class":287},[277,83729,305],{"class":283},[277,83731,83732,83734,83736],{"class":279,"line":391},[277,83733,785],{"class":283},[277,83735,802],{"class":287},[277,83737,305],{"class":283},[267,83739,83741],{"className":269,"code":34567,"filename":971,"highlights":83740,"language":272,"meta":273,"style":273},[346,436],[16,83742,83743,83751,83759,83765,83771,83780,83784,83788,83792,83800,83804,83812,83843],{"__ignoreMap":273},[277,83744,83745,83747,83749],{"class":279,"line":280},[277,83746,284],{"class":283},[277,83748,288],{"class":287},[277,83750,305],{"class":283},[277,83752,83753,83755,83757],{"class":279,"line":308},[277,83754,1057],{"class":311},[277,83756,1060],{"class":311},[277,83758,343],{"class":283},[277,83760,83761,83763],{"class":279,"line":324},[277,83762,1086],{"class":291},[277,83764,473],{"class":283},[277,83766,83767,83769],{"class":279,"line":331},[277,83768,1093],{"class":311},[277,83770,343],{"class":283},[277,83772,83774,83776,83778],{"class":83773,"line":346},[279,9398],[277,83775,34604],{"class":283},[277,83777,34497],{"class":301},[277,83779,1077],{"class":283},[277,83781,83782],{"class":279,"line":360},[277,83783,18478],{"class":283},[277,83785,83786],{"class":279,"line":371},[277,83787,1131],{"class":283},[277,83789,83790],{"class":279,"line":381},[277,83791,18255],{"class":283},[277,83793,83794,83796,83798],{"class":279,"line":391},[277,83795,785],{"class":283},[277,83797,288],{"class":287},[277,83799,305],{"class":283},[277,83801,83802],{"class":279,"line":397},[277,83803,328],{"emptyLinePlaceholder":327},[277,83805,83806,83808,83810],{"class":279,"line":402},[277,83807,284],{"class":283},[277,83809,802],{"class":287},[277,83811,305],{"class":283},[277,83813,83815,83817,83819,83821,83823,83825,83827,83829,83831,83833,83835,83837,83839,83841],{"class":83814,"line":436},[279,9398],[277,83816,810],{"class":283},[277,83818,13178],{"class":287},[277,83820,34529],{"class":291},[277,83822,298],{"class":283},[277,83824,34534],{"class":301},[277,83826,18401],{"class":291},[277,83828,298],{"class":283},[277,83830,34541],{"class":301},[277,83832,34544],{"class":291},[277,83834,298],{"class":283},[277,83836,34549],{"class":301},[277,83838,34552],{"class":283},[277,83840,13178],{"class":287},[277,83842,305],{"class":283},[277,83844,83845,83847,83849],{"class":279,"line":456},[277,83846,785],{"class":283},[277,83848,802],{"class":287},[277,83850,305],{"class":283},[192,83852,34683,83853,19],{"id":34682},[16,83854,34119],{},[267,83856,83858],{"className":269,"code":34688,"filename":271,"highlights":83857,"language":272,"meta":273,"style":273},[331,381],[16,83859,83860,83870,83882,83886,83903,83911,83915,83923,83938,83942,83950],{"__ignoreMap":273},[277,83861,83862,83864,83866,83868],{"class":279,"line":280},[277,83863,284],{"class":283},[277,83865,288],{"class":287},[277,83867,292],{"class":291},[277,83869,305],{"class":283},[277,83871,83872,83874,83876,83878,83880],{"class":279,"line":308},[277,83873,312],{"class":311},[277,83875,11006],{"class":283},[277,83877,318],{"class":311},[277,83879,18148],{"class":301},[277,83881,18151],{"class":283},[277,83883,83884],{"class":279,"line":324},[277,83885,328],{"emptyLinePlaceholder":327},[277,83887,83889,83891,83893,83895,83897,83899,83901],{"class":83888,"line":331},[279,9398],[277,83890,405],{"class":311},[277,83892,34725],{"class":356},[277,83894,340],{"class":311},[277,83896,413],{"class":291},[277,83898,448],{"class":283},[277,83900,2123],{"class":356},[277,83902,18277],{"class":283},[277,83904,83905,83907,83909],{"class":279,"line":346},[277,83906,785],{"class":283},[277,83908,288],{"class":287},[277,83910,305],{"class":283},[277,83912,83913],{"class":279,"line":360},[277,83914,328],{"emptyLinePlaceholder":327},[277,83916,83917,83919,83921],{"class":279,"line":371},[277,83918,284],{"class":283},[277,83920,802],{"class":287},[277,83922,305],{"class":283},[277,83924,83926,83928,83930,83932,83934,83936],{"class":83925,"line":381},[279,9398],[277,83927,810],{"class":283},[277,83929,4267],{"class":287},[277,83931,34765],{"class":291},[277,83933,298],{"class":283},[277,83935,34770],{"class":301},[277,83937,305],{"class":283},[277,83939,83940],{"class":279,"line":391},[277,83941,34777],{"class":283},[277,83943,83944,83946,83948],{"class":279,"line":397},[277,83945,954],{"class":283},[277,83947,4267],{"class":287},[277,83949,305],{"class":283},[277,83951,83952,83954,83956],{"class":279,"line":402},[277,83953,785],{"class":283},[277,83955,802],{"class":287},[277,83957,305],{"class":283},[267,83959,83961],{"className":269,"code":34796,"filename":971,"highlights":83960,"language":272,"meta":273,"style":273},[346,436],[16,83962,83963,83971,83979,83985,83991,84000,84004,84008,84012,84020,84024,84032,84047,84051,84059],{"__ignoreMap":273},[277,83964,83965,83967,83969],{"class":279,"line":280},[277,83966,284],{"class":283},[277,83968,288],{"class":287},[277,83970,305],{"class":283},[277,83972,83973,83975,83977],{"class":279,"line":308},[277,83974,1057],{"class":311},[277,83976,1060],{"class":311},[277,83978,343],{"class":283},[277,83980,83981,83983],{"class":279,"line":324},[277,83982,1086],{"class":291},[277,83984,473],{"class":283},[277,83986,83987,83989],{"class":279,"line":331},[277,83988,1093],{"class":311},[277,83990,343],{"class":283},[277,83992,83994,83996,83998],{"class":83993,"line":346},[279,9398],[277,83995,34833],{"class":283},[277,83997,2123],{"class":356},[277,83999,1077],{"class":283},[277,84001,84002],{"class":279,"line":360},[277,84003,18478],{"class":283},[277,84005,84006],{"class":279,"line":371},[277,84007,1131],{"class":283},[277,84009,84010],{"class":279,"line":381},[277,84011,18255],{"class":283},[277,84013,84014,84016,84018],{"class":279,"line":391},[277,84015,785],{"class":283},[277,84017,288],{"class":287},[277,84019,305],{"class":283},[277,84021,84022],{"class":279,"line":397},[277,84023,328],{"emptyLinePlaceholder":327},[277,84025,84026,84028,84030],{"class":279,"line":402},[277,84027,284],{"class":283},[277,84029,802],{"class":287},[277,84031,305],{"class":283},[277,84033,84035,84037,84039,84041,84043,84045],{"class":84034,"line":436},[279,9398],[277,84036,810],{"class":283},[277,84038,4267],{"class":287},[277,84040,34765],{"class":291},[277,84042,298],{"class":283},[277,84044,34770],{"class":301},[277,84046,305],{"class":283},[277,84048,84049],{"class":279,"line":456},[277,84050,34777],{"class":283},[277,84052,84053,84055,84057],{"class":279,"line":461},[277,84054,954],{"class":283},[277,84056,4267],{"class":287},[277,84058,305],{"class":283},[277,84060,84061,84063,84065],{"class":279,"line":476},[277,84062,785],{"class":283},[277,84064,802],{"class":287},[277,84066,305],{"class":283},[192,84068,34908,84069,34912],{"id":34907},[16,84070,34911],{},[267,84072,84074],{"className":269,"code":34915,"filename":271,"highlights":84073,"language":272,"meta":273,"style":273},[331,397,402,436,456,461],[16,84075,84076,84086,84098,84102,84119,84135,84143,84147,84155,84161,84170,84175,84180,84185,84190,84194,84198,84206],{"__ignoreMap":273},[277,84077,84078,84080,84082,84084],{"class":279,"line":280},[277,84079,284],{"class":283},[277,84081,288],{"class":287},[277,84083,292],{"class":291},[277,84085,305],{"class":283},[277,84087,84088,84090,84092,84094,84096],{"class":279,"line":308},[277,84089,312],{"class":311},[277,84091,11006],{"class":283},[277,84093,318],{"class":311},[277,84095,18148],{"class":301},[277,84097,18151],{"class":283},[277,84099,84100],{"class":279,"line":324},[277,84101,328],{"emptyLinePlaceholder":327},[277,84103,84105,84107,84109,84111,84113,84115,84117],{"class":84104,"line":331},[279,9398],[277,84106,405],{"class":311},[277,84108,34952],{"class":356},[277,84110,340],{"class":311},[277,84112,413],{"class":291},[277,84114,448],{"class":283},[277,84116,2149],{"class":356},[277,84118,18277],{"class":283},[277,84120,84121,84123,84125,84127,84129,84131,84133],{"class":279,"line":346},[277,84122,405],{"class":311},[277,84124,3483],{"class":356},[277,84126,340],{"class":311},[277,84128,413],{"class":291},[277,84130,448],{"class":283},[277,84132,2123],{"class":356},[277,84134,18277],{"class":283},[277,84136,84137,84139,84141],{"class":279,"line":360},[277,84138,785],{"class":283},[277,84140,288],{"class":287},[277,84142,305],{"class":283},[277,84144,84145],{"class":279,"line":371},[277,84146,328],{"emptyLinePlaceholder":327},[277,84148,84149,84151,84153],{"class":279,"line":381},[277,84150,284],{"class":283},[277,84152,802],{"class":287},[277,84154,305],{"class":283},[277,84156,84157,84159],{"class":279,"line":391},[277,84158,810],{"class":283},[277,84160,35005],{"class":287},[277,84162,84164,84166,84168],{"class":84163,"line":397},[279,9398],[277,84165,35011],{"class":291},[277,84167,298],{"class":283},[277,84169,35016],{"class":301},[277,84171,84173],{"class":84172,"line":402},[279,9398],[277,84174,35022],{"class":301},[277,84176,84178],{"class":84177,"line":436},[279,9398],[277,84179,35028],{"class":301},[277,84181,84183],{"class":84182,"line":456},[279,9398],[277,84184,35034],{"class":301},[277,84186,84188],{"class":84187,"line":461},[279,9398],[277,84189,35040],{"class":301},[277,84191,84192],{"class":279,"line":476},[277,84193,22757],{"class":283},[277,84195,84196],{"class":279,"line":500},[277,84197,35049],{"class":283},[277,84199,84200,84202,84204],{"class":279,"line":505},[277,84201,954],{"class":283},[277,84203,21],{"class":287},[277,84205,305],{"class":283},[277,84207,84208,84210,84212],{"class":279,"line":520},[277,84209,785],{"class":283},[277,84211,802],{"class":287},[277,84213,305],{"class":283},[267,84215,84217],{"className":269,"code":35068,"filename":971,"highlights":84216,"language":272,"meta":273,"style":273},[346,456,461,476,500,505],[16,84218,84219,84227,84235,84241,84247,84256,84264,84268,84272,84276,84284,84288,84296,84303,84312,84317,84322,84327,84331,84335,84339,84347],{"__ignoreMap":273},[277,84220,84221,84223,84225],{"class":279,"line":280},[277,84222,284],{"class":283},[277,84224,288],{"class":287},[277,84226,305],{"class":283},[277,84228,84229,84231,84233],{"class":279,"line":308},[277,84230,1057],{"class":311},[277,84232,1060],{"class":311},[277,84234,343],{"class":283},[277,84236,84237,84239],{"class":279,"line":324},[277,84238,1086],{"class":291},[277,84240,473],{"class":283},[277,84242,84243,84245],{"class":279,"line":331},[277,84244,1093],{"class":311},[277,84246,343],{"class":283},[277,84248,84250,84252,84254],{"class":84249,"line":346},[279,9398],[277,84251,35105],{"class":283},[277,84253,2149],{"class":356},[277,84255,1077],{"class":283},[277,84257,84258,84260,84262],{"class":279,"line":360},[277,84259,4663],{"class":283},[277,84261,2123],{"class":356},[277,84263,1077],{"class":283},[277,84265,84266],{"class":279,"line":371},[277,84267,18478],{"class":283},[277,84269,84270],{"class":279,"line":381},[277,84271,1131],{"class":283},[277,84273,84274],{"class":279,"line":391},[277,84275,18255],{"class":283},[277,84277,84278,84280,84282],{"class":279,"line":397},[277,84279,785],{"class":283},[277,84281,288],{"class":287},[277,84283,305],{"class":283},[277,84285,84286],{"class":279,"line":402},[277,84287,328],{"emptyLinePlaceholder":327},[277,84289,84290,84292,84294],{"class":279,"line":436},[277,84291,284],{"class":283},[277,84293,802],{"class":287},[277,84295,305],{"class":283},[277,84297,84299,84301],{"class":84298,"line":456},[279,9398],[277,84300,810],{"class":283},[277,84302,35005],{"class":287},[277,84304,84306,84308,84310],{"class":84305,"line":461},[279,9398],[277,84307,35011],{"class":291},[277,84309,298],{"class":283},[277,84311,35016],{"class":301},[277,84313,84315],{"class":84314,"line":476},[279,9398],[277,84316,35022],{"class":301},[277,84318,84320],{"class":84319,"line":500},[279,9398],[277,84321,35028],{"class":301},[277,84323,84325],{"class":84324,"line":505},[279,9398],[277,84326,35034],{"class":301},[277,84328,84329],{"class":279,"line":520},[277,84330,35040],{"class":301},[277,84332,84333],{"class":279,"line":539},[277,84334,22757],{"class":283},[277,84336,84337],{"class":279,"line":545},[277,84338,35049],{"class":283},[277,84340,84341,84343,84345],{"class":279,"line":550},[277,84342,954],{"class":283},[277,84344,21],{"class":287},[277,84346,305],{"class":283},[277,84348,84349,84351,84353],{"class":279,"line":578},[277,84350,785],{"class":283},[277,84352,802],{"class":287},[277,84354,305],{"class":283},[192,84356,26774,84357,35215],{"id":35211},[16,84358,35214],{},[267,84360,84362],{"className":269,"code":35218,"filename":271,"highlights":84361,"language":272,"meta":273,"style":273},[331,346,391],[16,84363,84364,84374,84386,84390,84407,84424,84432,84436,84444,84459,84463,84471],{"__ignoreMap":273},[277,84365,84366,84368,84370,84372],{"class":279,"line":280},[277,84367,284],{"class":283},[277,84369,288],{"class":287},[277,84371,292],{"class":291},[277,84373,305],{"class":283},[277,84375,84376,84378,84380,84382,84384],{"class":279,"line":308},[277,84377,312],{"class":311},[277,84379,11006],{"class":283},[277,84381,318],{"class":311},[277,84383,18148],{"class":301},[277,84385,18151],{"class":283},[277,84387,84388],{"class":279,"line":324},[277,84389,328],{"emptyLinePlaceholder":327},[277,84391,84393,84395,84397,84399,84401,84403,84405],{"class":84392,"line":331},[279,9398],[277,84394,405],{"class":311},[277,84396,35255],{"class":356},[277,84398,340],{"class":311},[277,84400,413],{"class":291},[277,84402,448],{"class":283},[277,84404,35264],{"class":356},[277,84406,18277],{"class":283},[277,84408,84410,84412,84414,84416,84418,84420,84422],{"class":84409,"line":346},[279,9398],[277,84411,405],{"class":311},[277,84413,35274],{"class":356},[277,84415,340],{"class":311},[277,84417,413],{"class":291},[277,84419,448],{"class":283},[277,84421,35283],{"class":301},[277,84423,18277],{"class":283},[277,84425,84426,84428,84430],{"class":279,"line":360},[277,84427,785],{"class":283},[277,84429,288],{"class":287},[277,84431,305],{"class":283},[277,84433,84434],{"class":279,"line":371},[277,84435,328],{"emptyLinePlaceholder":327},[277,84437,84438,84440,84442],{"class":279,"line":381},[277,84439,284],{"class":283},[277,84441,802],{"class":287},[277,84443,305],{"class":283},[277,84445,84447,84449,84451,84453,84455,84457],{"class":84446,"line":391},[279,9398],[277,84448,810],{"class":283},[277,84450,21],{"class":287},[277,84452,33308],{"class":291},[277,84454,298],{"class":283},[277,84456,35319],{"class":301},[277,84458,305],{"class":283},[277,84460,84461],{"class":279,"line":397},[277,84462,35326],{"class":283},[277,84464,84465,84467,84469],{"class":279,"line":402},[277,84466,954],{"class":283},[277,84468,21],{"class":287},[277,84470,305],{"class":283},[277,84472,84473,84475,84477],{"class":279,"line":436},[277,84474,785],{"class":283},[277,84476,802],{"class":287},[277,84478,305],{"class":283},[267,84480,84482],{"className":269,"code":35345,"filename":971,"highlights":84481,"language":272,"meta":273,"style":273},[346,360,456],[16,84483,84484,84492,84500,84506,84512,84521,84530,84534,84538,84542,84550,84554,84562,84577,84581,84589],{"__ignoreMap":273},[277,84485,84486,84488,84490],{"class":279,"line":280},[277,84487,284],{"class":283},[277,84489,288],{"class":287},[277,84491,305],{"class":283},[277,84493,84494,84496,84498],{"class":279,"line":308},[277,84495,1057],{"class":311},[277,84497,1060],{"class":311},[277,84499,343],{"class":283},[277,84501,84502,84504],{"class":279,"line":324},[277,84503,1086],{"class":291},[277,84505,473],{"class":283},[277,84507,84508,84510],{"class":279,"line":331},[277,84509,1093],{"class":311},[277,84511,343],{"class":283},[277,84513,84515,84517,84519],{"class":84514,"line":346},[279,9398],[277,84516,35382],{"class":283},[277,84518,35264],{"class":356},[277,84520,1077],{"class":283},[277,84522,84524,84526,84528],{"class":84523,"line":360},[279,9398],[277,84525,35392],{"class":283},[277,84527,35283],{"class":301},[277,84529,1077],{"class":283},[277,84531,84532],{"class":279,"line":371},[277,84533,18478],{"class":283},[277,84535,84536],{"class":279,"line":381},[277,84537,1131],{"class":283},[277,84539,84540],{"class":279,"line":391},[277,84541,18255],{"class":283},[277,84543,84544,84546,84548],{"class":279,"line":397},[277,84545,785],{"class":283},[277,84547,288],{"class":287},[277,84549,305],{"class":283},[277,84551,84552],{"class":279,"line":402},[277,84553,328],{"emptyLinePlaceholder":327},[277,84555,84556,84558,84560],{"class":279,"line":436},[277,84557,284],{"class":283},[277,84559,802],{"class":287},[277,84561,305],{"class":283},[277,84563,84565,84567,84569,84571,84573,84575],{"class":84564,"line":456},[279,9398],[277,84566,810],{"class":283},[277,84568,21],{"class":287},[277,84570,33308],{"class":291},[277,84572,298],{"class":283},[277,84574,35319],{"class":301},[277,84576,305],{"class":283},[277,84578,84579],{"class":279,"line":461},[277,84580,35326],{"class":283},[277,84582,84583,84585,84587],{"class":279,"line":476},[277,84584,954],{"class":283},[277,84586,21],{"class":287},[277,84588,305],{"class":283},[277,84590,84591,84593,84595],{"class":279,"line":500},[277,84592,785],{"class":283},[277,84594,802],{"class":287},[277,84596,305],{"class":283},[192,84598,35467,84599],{"id":35466},[16,84600,34145],{},[21,84602,35472],{},[267,84604,84606],{"className":269,"code":35475,"filename":271,"highlights":84605,"language":272,"meta":273,"style":273},[331,346,391],[16,84607,84608,84618,84630,84634,84651,84668,84676,84680,84688,84707],{"__ignoreMap":273},[277,84609,84610,84612,84614,84616],{"class":279,"line":280},[277,84611,284],{"class":283},[277,84613,288],{"class":287},[277,84615,292],{"class":291},[277,84617,305],{"class":283},[277,84619,84620,84622,84624,84626,84628],{"class":279,"line":308},[277,84621,312],{"class":311},[277,84623,11006],{"class":283},[277,84625,318],{"class":311},[277,84627,18148],{"class":301},[277,84629,18151],{"class":283},[277,84631,84632],{"class":279,"line":324},[277,84633,328],{"emptyLinePlaceholder":327},[277,84635,84637,84639,84641,84643,84645,84647,84649],{"class":84636,"line":331},[279,9398],[277,84638,405],{"class":311},[277,84640,35512],{"class":356},[277,84642,340],{"class":311},[277,84644,413],{"class":291},[277,84646,448],{"class":283},[277,84648,35521],{"class":301},[277,84650,18277],{"class":283},[277,84652,84654,84656,84658,84660,84662,84664,84666],{"class":84653,"line":346},[279,9398],[277,84655,405],{"class":311},[277,84657,35531],{"class":356},[277,84659,340],{"class":311},[277,84661,413],{"class":291},[277,84663,448],{"class":283},[277,84665,35540],{"class":301},[277,84667,18277],{"class":283},[277,84669,84670,84672,84674],{"class":279,"line":360},[277,84671,785],{"class":283},[277,84673,288],{"class":287},[277,84675,305],{"class":283},[277,84677,84678],{"class":279,"line":371},[277,84679,328],{"emptyLinePlaceholder":327},[277,84681,84682,84684,84686],{"class":279,"line":381},[277,84683,284],{"class":283},[277,84685,802],{"class":287},[277,84687,305],{"class":283},[277,84689,84691,84693,84695,84697,84699,84701,84703,84705],{"class":84690,"line":391},[279,9398],[277,84692,810],{"class":283},[277,84694,4267],{"class":287},[277,84696,35572],{"class":291},[277,84698,298],{"class":283},[277,84700,35577],{"class":301},[277,84702,35580],{"class":283},[277,84704,4267],{"class":287},[277,84706,305],{"class":283},[277,84708,84709,84711,84713],{"class":279,"line":397},[277,84710,785],{"class":283},[277,84712,802],{"class":287},[277,84714,305],{"class":283},[267,84716,84718],{"className":269,"code":35595,"filename":971,"highlights":84717,"language":272,"meta":273,"style":273},[346,360,456],[16,84719,84720,84728,84736,84742,84748,84757,84766,84770,84774,84778,84786,84790,84798,84817],{"__ignoreMap":273},[277,84721,84722,84724,84726],{"class":279,"line":280},[277,84723,284],{"class":283},[277,84725,288],{"class":287},[277,84727,305],{"class":283},[277,84729,84730,84732,84734],{"class":279,"line":308},[277,84731,1057],{"class":311},[277,84733,1060],{"class":311},[277,84735,343],{"class":283},[277,84737,84738,84740],{"class":279,"line":324},[277,84739,1086],{"class":291},[277,84741,473],{"class":283},[277,84743,84744,84746],{"class":279,"line":331},[277,84745,1093],{"class":311},[277,84747,343],{"class":283},[277,84749,84751,84753,84755],{"class":84750,"line":346},[279,9398],[277,84752,35632],{"class":283},[277,84754,35521],{"class":301},[277,84756,1077],{"class":283},[277,84758,84760,84762,84764],{"class":84759,"line":360},[279,9398],[277,84761,35642],{"class":283},[277,84763,35540],{"class":301},[277,84765,1077],{"class":283},[277,84767,84768],{"class":279,"line":371},[277,84769,18478],{"class":283},[277,84771,84772],{"class":279,"line":381},[277,84773,1131],{"class":283},[277,84775,84776],{"class":279,"line":391},[277,84777,18255],{"class":283},[277,84779,84780,84782,84784],{"class":279,"line":397},[277,84781,785],{"class":283},[277,84783,288],{"class":287},[277,84785,305],{"class":283},[277,84787,84788],{"class":279,"line":402},[277,84789,328],{"emptyLinePlaceholder":327},[277,84791,84792,84794,84796],{"class":279,"line":436},[277,84793,284],{"class":283},[277,84795,802],{"class":287},[277,84797,305],{"class":283},[277,84799,84801,84803,84805,84807,84809,84811,84813,84815],{"class":84800,"line":456},[279,9398],[277,84802,810],{"class":283},[277,84804,4267],{"class":287},[277,84806,35572],{"class":291},[277,84808,298],{"class":283},[277,84810,35577],{"class":301},[277,84812,35580],{"class":283},[277,84814,4267],{"class":287},[277,84816,305],{"class":283},[277,84818,84819,84821,84823],{"class":279,"line":461},[277,84820,785],{"class":283},[277,84822,802],{"class":287},[277,84824,305],{"class":283},[192,84826,35709,84827,35713],{"id":35708},[16,84828,35712],{},[267,84830,84832],{"className":269,"code":35716,"filename":271,"highlights":84831,"language":272,"meta":273,"style":273},[331,346,360,371,381,391,397,461],[16,84833,84834,84844,84856,84860,84873,84882,84891,84900,84909,84918,84923,84931,84935,84943,84958],{"__ignoreMap":273},[277,84835,84836,84838,84840,84842],{"class":279,"line":280},[277,84837,284],{"class":283},[277,84839,288],{"class":287},[277,84841,292],{"class":291},[277,84843,305],{"class":283},[277,84845,84846,84848,84850,84852,84854],{"class":279,"line":308},[277,84847,312],{"class":311},[277,84849,11006],{"class":283},[277,84851,318],{"class":311},[277,84853,18148],{"class":301},[277,84855,18151],{"class":283},[277,84857,84858],{"class":279,"line":324},[277,84859,328],{"emptyLinePlaceholder":327},[277,84861,84863,84865,84867,84869,84871],{"class":84862,"line":331},[279,9398],[277,84864,405],{"class":311},[277,84866,35753],{"class":356},[277,84868,340],{"class":311},[277,84870,413],{"class":291},[277,84872,1066],{"class":283},[277,84874,84876,84878,84880],{"class":84875,"line":346},[279,9398],[277,84877,35765],{"class":283},[277,84879,31911],{"class":301},[277,84881,1077],{"class":283},[277,84883,84885,84887,84889],{"class":84884,"line":360},[279,9398],[277,84886,35775],{"class":283},[277,84888,31911],{"class":301},[277,84890,1077],{"class":283},[277,84892,84894,84896,84898],{"class":84893,"line":371},[279,9398],[277,84895,35785],{"class":283},[277,84897,31925],{"class":301},[277,84899,1077],{"class":283},[277,84901,84903,84905,84907],{"class":84902,"line":381},[279,9398],[277,84904,35795],{"class":283},[277,84906,31911],{"class":301},[277,84908,1077],{"class":283},[277,84910,84912,84914,84916],{"class":84911,"line":391},[279,9398],[277,84913,35805],{"class":283},[277,84915,2149],{"class":356},[277,84917,1077],{"class":283},[277,84919,84921],{"class":84920,"line":397},[279,9398],[277,84922,21454],{"class":283},[277,84924,84925,84927,84929],{"class":279,"line":402},[277,84926,785],{"class":283},[277,84928,288],{"class":287},[277,84930,305],{"class":283},[277,84932,84933],{"class":279,"line":436},[277,84934,328],{"emptyLinePlaceholder":327},[277,84936,84937,84939,84941],{"class":279,"line":456},[277,84938,284],{"class":283},[277,84940,802],{"class":287},[277,84942,305],{"class":283},[277,84944,84946,84948,84950,84952,84954,84956],{"class":84945,"line":461},[279,9398],[277,84947,810],{"class":283},[277,84949,18041],{"class":287},[277,84951,34048],{"class":291},[277,84953,298],{"class":283},[277,84955,35848],{"class":301},[277,84957,4325],{"class":283},[277,84959,84960,84962,84964],{"class":279,"line":476},[277,84961,785],{"class":283},[277,84963,802],{"class":287},[277,84965,305],{"class":283},[267,84967,84969],{"className":269,"code":35861,"filename":971,"highlights":84968,"language":272,"meta":273,"style":273},[346,360,371,381,391,397,402,520],[16,84970,84971,84979,84987,84993,84999,85004,85013,85022,85031,85040,85049,85054,85058,85062,85066,85074,85078,85086,85101],{"__ignoreMap":273},[277,84972,84973,84975,84977],{"class":279,"line":280},[277,84974,284],{"class":283},[277,84976,288],{"class":287},[277,84978,305],{"class":283},[277,84980,84981,84983,84985],{"class":279,"line":308},[277,84982,1057],{"class":311},[277,84984,1060],{"class":311},[277,84986,343],{"class":283},[277,84988,84989,84991],{"class":279,"line":324},[277,84990,1086],{"class":291},[277,84992,473],{"class":283},[277,84994,84995,84997],{"class":279,"line":331},[277,84996,1093],{"class":311},[277,84998,343],{"class":283},[277,85000,85002],{"class":85001,"line":346},[279,9398],[277,85003,35898],{"class":283},[277,85005,85007,85009,85011],{"class":85006,"line":360},[279,9398],[277,85008,35904],{"class":283},[277,85010,31911],{"class":301},[277,85012,1077],{"class":283},[277,85014,85016,85018,85020],{"class":85015,"line":371},[279,9398],[277,85017,35914],{"class":283},[277,85019,31911],{"class":301},[277,85021,1077],{"class":283},[277,85023,85025,85027,85029],{"class":85024,"line":381},[279,9398],[277,85026,35924],{"class":283},[277,85028,31925],{"class":301},[277,85030,1077],{"class":283},[277,85032,85034,85036,85038],{"class":85033,"line":391},[279,9398],[277,85035,35934],{"class":283},[277,85037,31911],{"class":301},[277,85039,1077],{"class":283},[277,85041,85043,85045,85047],{"class":85042,"line":397},[279,9398],[277,85044,35944],{"class":283},[277,85046,2149],{"class":356},[277,85048,1077],{"class":283},[277,85050,85052],{"class":85051,"line":402},[279,9398],[277,85053,2629],{"class":283},[277,85055,85056],{"class":279,"line":436},[277,85057,18478],{"class":283},[277,85059,85060],{"class":279,"line":456},[277,85061,1131],{"class":283},[277,85063,85064],{"class":279,"line":461},[277,85065,18255],{"class":283},[277,85067,85068,85070,85072],{"class":279,"line":476},[277,85069,785],{"class":283},[277,85071,288],{"class":287},[277,85073,305],{"class":283},[277,85075,85076],{"class":279,"line":500},[277,85077,328],{"emptyLinePlaceholder":327},[277,85079,85080,85082,85084],{"class":279,"line":505},[277,85081,284],{"class":283},[277,85083,802],{"class":287},[277,85085,305],{"class":283},[277,85087,85089,85091,85093,85095,85097,85099],{"class":85088,"line":520},[279,9398],[277,85090,810],{"class":283},[277,85092,18041],{"class":287},[277,85094,34048],{"class":291},[277,85096,298],{"class":283},[277,85098,35848],{"class":301},[277,85100,4325],{"class":283},[277,85102,85103,85105,85107],{"class":279,"line":539},[277,85104,785],{"class":283},[277,85106,802],{"class":287},[277,85108,305],{"class":283},[3111,85110,85111],{},[21,85112,85113,36015],{},[16,85114,35712],{},[30,85116,36019],{"id":36018},[21,85118,36022,85119,36025],{},[16,85120,17974],{},[267,85122,85123],{"className":269,"code":36028,"filename":271,"language":272,"meta":273,"style":273},[16,85124,85125,85135,85147,85151,85167,85183,85199,85203,85219,85227,85235,85243,85251,85255,85259,85275,85285,85291,85295,85299,85307,85325,85335,85345,85355,85365,85373,85377,85385,85389,85397,85411,85437,85441,85461,85465,85473,85477,85491,85495,85503,85511],{"__ignoreMap":273},[277,85126,85127,85129,85131,85133],{"class":279,"line":280},[277,85128,284],{"class":283},[277,85130,288],{"class":287},[277,85132,292],{"class":291},[277,85134,305],{"class":283},[277,85136,85137,85139,85141,85143,85145],{"class":279,"line":308},[277,85138,312],{"class":311},[277,85140,23384],{"class":283},[277,85142,318],{"class":311},[277,85144,18148],{"class":301},[277,85146,18151],{"class":283},[277,85148,85149],{"class":279,"line":324},[277,85150,328],{"emptyLinePlaceholder":327},[277,85152,85153,85155,85157,85159,85161,85163,85165],{"class":279,"line":331},[277,85154,405],{"class":311},[277,85156,31800],{"class":356},[277,85158,340],{"class":311},[277,85160,413],{"class":291},[277,85162,448],{"class":283},[277,85164,25316],{"class":301},[277,85166,18277],{"class":283},[277,85168,85169,85171,85173,85175,85177,85179,85181],{"class":279,"line":346},[277,85170,405],{"class":311},[277,85172,36079],{"class":356},[277,85174,340],{"class":311},[277,85176,413],{"class":291},[277,85178,448],{"class":283},[277,85180,2123],{"class":356},[277,85182,18277],{"class":283},[277,85184,85185,85187,85189,85191,85193,85195,85197],{"class":279,"line":360},[277,85186,405],{"class":311},[277,85188,3483],{"class":356},[277,85190,340],{"class":311},[277,85192,413],{"class":291},[277,85194,448],{"class":283},[277,85196,2123],{"class":356},[277,85198,18277],{"class":283},[277,85200,85201],{"class":279,"line":371},[277,85202,328],{"emptyLinePlaceholder":327},[277,85204,85205,85207,85209,85211,85213,85215,85217],{"class":279,"line":381},[277,85206,405],{"class":311},[277,85208,35753],{"class":356},[277,85210,340],{"class":311},[277,85212,2200],{"class":291},[277,85214,2203],{"class":283},[277,85216,601],{"class":311},[277,85218,36126],{"class":283},[277,85220,85221,85223,85225],{"class":279,"line":391},[277,85222,35775],{"class":283},[277,85224,31911],{"class":301},[277,85226,1077],{"class":283},[277,85228,85229,85231,85233],{"class":279,"line":397},[277,85230,35785],{"class":283},[277,85232,36141],{"class":301},[277,85234,1077],{"class":283},[277,85236,85237,85239,85241],{"class":279,"line":402},[277,85238,35795],{"class":283},[277,85240,31911],{"class":301},[277,85242,1077],{"class":283},[277,85244,85245,85247,85249],{"class":279,"line":436},[277,85246,35805],{"class":283},[277,85248,2149],{"class":356},[277,85250,1077],{"class":283},[277,85252,85253],{"class":279,"line":456},[277,85254,36164],{"class":283},[277,85256,85257],{"class":279,"line":461},[277,85258,328],{"emptyLinePlaceholder":327},[277,85260,85261,85263,85265,85267,85269,85271,85273],{"class":279,"line":476},[277,85262,405],{"class":311},[277,85264,36175],{"class":356},[277,85266,340],{"class":311},[277,85268,2200],{"class":291},[277,85270,2203],{"class":283},[277,85272,601],{"class":311},[277,85274,36126],{"class":283},[277,85276,85277,85279,85281,85283],{"class":279,"line":500},[277,85278,36190],{"class":301},[277,85280,20699],{"class":283},[277,85282,514],{"class":311},[277,85284,36197],{"class":283},[277,85286,85287,85289],{"class":279,"line":505},[277,85288,36202],{"class":301},[277,85290,36205],{"class":283},[277,85292,85293],{"class":279,"line":520},[277,85294,36164],{"class":283},[277,85296,85297],{"class":279,"line":539},[277,85298,328],{"emptyLinePlaceholder":327},[277,85300,85301,85303,85305],{"class":279,"line":545},[277,85302,2460],{"class":311},[277,85304,36220],{"class":291},[277,85306,473],{"class":283},[277,85308,85309,85311,85313,85315,85317,85319,85321,85323],{"class":279,"line":550},[277,85310,3945],{"class":283},[277,85312,298],{"class":311},[277,85314,36231],{"class":283},[277,85316,31837],{"class":291},[277,85318,8129],{"class":283},[277,85320,2503],{"class":311},[277,85322,33005],{"class":301},[277,85324,18151],{"class":283},[277,85326,85327,85329,85331,85333],{"class":279,"line":578},[277,85328,508],{"class":311},[277,85330,36248],{"class":283},[277,85332,18346],{"class":311},[277,85334,18151],{"class":283},[277,85336,85337,85339,85341,85343],{"class":279,"line":583},[277,85338,36257],{"class":283},[277,85340,298],{"class":311},[277,85342,20433],{"class":356},[277,85344,18151],{"class":283},[277,85346,85347,85349,85351,85353],{"class":279,"line":588},[277,85348,36268],{"class":291},[277,85350,2203],{"class":283},[277,85352,601],{"class":311},[277,85354,343],{"class":283},[277,85356,85357,85359,85361,85363],{"class":279,"line":606},[277,85358,36279],{"class":283},[277,85360,298],{"class":311},[277,85362,19366],{"class":356},[277,85364,18151],{"class":283},[277,85366,85367,85369,85371],{"class":279,"line":614},[277,85368,6120],{"class":283},[277,85370,11248],{"class":356},[277,85372,18277],{"class":283},[277,85374,85375],{"class":279,"line":625},[277,85376,394],{"class":283},[277,85378,85379,85381,85383],{"class":279,"line":637},[277,85380,785],{"class":283},[277,85382,288],{"class":287},[277,85384,305],{"class":283},[277,85386,85387],{"class":279,"line":646},[277,85388,328],{"emptyLinePlaceholder":327},[277,85390,85391,85393,85395],{"class":279,"line":668},[277,85392,284],{"class":283},[277,85394,802],{"class":287},[277,85396,305],{"class":283},[277,85398,85399,85401,85403,85405,85407,85409],{"class":279,"line":673},[277,85400,810],{"class":283},[277,85402,31294],{"class":287},[277,85404,31891],{"class":291},[277,85406,298],{"class":283},[277,85408,31940],{"class":301},[277,85410,305],{"class":283},[277,85412,85413,85415,85417,85419,85421,85423,85425,85427,85429,85431,85433,85435],{"class":279,"line":679},[277,85414,829],{"class":283},[277,85416,18041],{"class":287},[277,85418,34048],{"class":291},[277,85420,298],{"class":283},[277,85422,35848],{"class":301},[277,85424,23751],{"class":291},[277,85426,298],{"class":283},[277,85428,31911],{"class":301},[277,85430,36352],{"class":291},[277,85432,298],{"class":283},[277,85434,36357],{"class":301},[277,85436,4325],{"class":283},[277,85438,85439],{"class":279,"line":684},[277,85440,328],{"emptyLinePlaceholder":327},[277,85442,85443,85445,85447,85449,85451,85453,85455,85457,85459],{"class":279,"line":700},[277,85444,829],{"class":283},[277,85446,4267],{"class":287},[277,85448,34765],{"class":291},[277,85450,298],{"class":283},[277,85452,36376],{"class":301},[277,85454,36352],{"class":291},[277,85456,298],{"class":283},[277,85458,36383],{"class":301},[277,85460,305],{"class":283},[277,85462,85463],{"class":279,"line":717},[277,85464,36390],{"class":283},[277,85466,85467,85469,85471],{"class":279,"line":722},[277,85468,922],{"class":283},[277,85470,4267],{"class":287},[277,85472,305],{"class":283},[277,85474,85475],{"class":279,"line":729},[277,85476,328],{"emptyLinePlaceholder":327},[277,85478,85479,85481,85483,85485,85487,85489],{"class":279,"line":738},[277,85480,829],{"class":283},[277,85482,21],{"class":287},[277,85484,33308],{"class":291},[277,85486,298],{"class":283},[277,85488,36415],{"class":301},[277,85490,305],{"class":283},[277,85492,85493],{"class":279,"line":747},[277,85494,36422],{"class":283},[277,85496,85497,85499,85501],{"class":279,"line":754},[277,85498,922],{"class":283},[277,85500,21],{"class":287},[277,85502,305],{"class":283},[277,85504,85505,85507,85509],{"class":279,"line":772},[277,85506,954],{"class":283},[277,85508,31294],{"class":287},[277,85510,305],{"class":283},[277,85512,85513,85515,85517],{"class":279,"line":777},[277,85514,785],{"class":283},[277,85516,802],{"class":287},[277,85518,305],{"class":283},[267,85520,85521],{"className":269,"code":36449,"filename":971,"language":272,"meta":273,"style":273},[16,85522,85523,85531,85539,85545,85551,85559,85567,85575,85579,85583,85587,85593,85599,85607,85615,85623,85631,85635,85639,85645,85651,85663,85673,85677,85681,85685,85689,85695,85717,85731,85743,85753,85765,85773,85777,85781,85785,85793,85797,85805,85819,85845,85849,85869,85873,85881,85885,85899,85903,85911,85919],{"__ignoreMap":273},[277,85524,85525,85527,85529],{"class":279,"line":280},[277,85526,284],{"class":283},[277,85528,288],{"class":287},[277,85530,305],{"class":283},[277,85532,85533,85535,85537],{"class":279,"line":308},[277,85534,1057],{"class":311},[277,85536,1060],{"class":311},[277,85538,343],{"class":283},[277,85540,85541,85543],{"class":279,"line":324},[277,85542,1086],{"class":291},[277,85544,473],{"class":283},[277,85546,85547,85549],{"class":279,"line":331},[277,85548,1093],{"class":311},[277,85550,343],{"class":283},[277,85552,85553,85555,85557],{"class":279,"line":346},[277,85554,32008],{"class":283},[277,85556,25316],{"class":301},[277,85558,1077],{"class":283},[277,85560,85561,85563,85565],{"class":279,"line":360},[277,85562,36492],{"class":283},[277,85564,2123],{"class":356},[277,85566,1077],{"class":283},[277,85568,85569,85571,85573],{"class":279,"line":371},[277,85570,4663],{"class":283},[277,85572,2123],{"class":356},[277,85574,1077],{"class":283},[277,85576,85577],{"class":279,"line":381},[277,85578,18478],{"class":283},[277,85580,85581],{"class":279,"line":391},[277,85582,1131],{"class":283},[277,85584,85585],{"class":279,"line":397},[277,85586,2742],{"class":283},[277,85588,85589,85591],{"class":279,"line":402},[277,85590,36521],{"class":291},[277,85592,473],{"class":283},[277,85594,85595,85597],{"class":279,"line":436},[277,85596,2754],{"class":311},[277,85598,343],{"class":283},[277,85600,85601,85603,85605],{"class":279,"line":456},[277,85602,35914],{"class":283},[277,85604,31911],{"class":301},[277,85606,1077],{"class":283},[277,85608,85609,85611,85613],{"class":279,"line":461},[277,85610,35924],{"class":283},[277,85612,36141],{"class":301},[277,85614,1077],{"class":283},[277,85616,85617,85619,85621],{"class":279,"line":476},[277,85618,35934],{"class":283},[277,85620,31911],{"class":301},[277,85622,1077],{"class":283},[277,85624,85625,85627,85629],{"class":279,"line":500},[277,85626,35944],{"class":283},[277,85628,2149],{"class":356},[277,85630,1077],{"class":283},[277,85632,85633],{"class":279,"line":505},[277,85634,36566],{"class":283},[277,85636,85637],{"class":279,"line":520},[277,85638,7016],{"class":283},[277,85640,85641,85643],{"class":279,"line":539},[277,85642,36575],{"class":291},[277,85644,473],{"class":283},[277,85646,85647,85649],{"class":279,"line":545},[277,85648,2754],{"class":311},[277,85650,343],{"class":283},[277,85652,85653,85655,85657,85659,85661],{"class":279,"line":550},[277,85654,36588],{"class":301},[277,85656,20699],{"class":283},[277,85658,514],{"class":311},[277,85660,1341],{"class":356},[277,85662,36597],{"class":283},[277,85664,85665,85667,85669,85671],{"class":279,"line":578},[277,85666,36602],{"class":301},[277,85668,20699],{"class":283},[277,85670,1341],{"class":356},[277,85672,36597],{"class":283},[277,85674,85675],{"class":279,"line":583},[277,85676,36566],{"class":283},[277,85678,85679],{"class":279,"line":588},[277,85680,7016],{"class":283},[277,85682,85683],{"class":279,"line":606},[277,85684,1131],{"class":283},[277,85686,85687],{"class":279,"line":614},[277,85688,1140],{"class":283},[277,85690,85691,85693],{"class":279,"line":625},[277,85692,36629],{"class":291},[277,85694,473],{"class":283},[277,85696,85697,85699,85701,85703,85705,85707,85709,85711,85713,85715],{"class":279,"line":637},[277,85698,1212],{"class":356},[277,85700,4727],{"class":283},[277,85702,298],{"class":311},[277,85704,1268],{"class":356},[277,85706,32044],{"class":283},[277,85708,31837],{"class":291},[277,85710,8129],{"class":283},[277,85712,2503],{"class":311},[277,85714,33005],{"class":301},[277,85716,18151],{"class":283},[277,85718,85719,85721,85723,85725,85727,85729],{"class":279,"line":646},[277,85720,1177],{"class":311},[277,85722,511],{"class":283},[277,85724,1341],{"class":356},[277,85726,36664],{"class":283},[277,85728,18346],{"class":311},[277,85730,18151],{"class":283},[277,85732,85733,85735,85737,85739,85741],{"class":279,"line":668},[277,85734,1212],{"class":356},[277,85736,36675],{"class":283},[277,85738,298],{"class":311},[277,85740,20433],{"class":356},[277,85742,18151],{"class":283},[277,85744,85745,85747,85749,85751],{"class":279,"line":673},[277,85746,36686],{"class":291},[277,85748,2203],{"class":283},[277,85750,601],{"class":311},[277,85752,343],{"class":283},[277,85754,85755,85757,85759,85761,85763],{"class":279,"line":679},[277,85756,8819],{"class":356},[277,85758,36675],{"class":283},[277,85760,298],{"class":311},[277,85762,19366],{"class":356},[277,85764,18151],{"class":283},[277,85766,85767,85769,85771],{"class":279,"line":684},[277,85768,7084],{"class":283},[277,85770,11248],{"class":356},[277,85772,18277],{"class":283},[277,85774,85775],{"class":279,"line":700},[277,85776,7016],{"class":283},[277,85778,85779],{"class":279,"line":717},[277,85780,1131],{"class":283},[277,85782,85783],{"class":279,"line":722},[277,85784,18255],{"class":283},[277,85786,85787,85789,85791],{"class":279,"line":729},[277,85788,785],{"class":283},[277,85790,288],{"class":287},[277,85792,305],{"class":283},[277,85794,85795],{"class":279,"line":738},[277,85796,328],{"emptyLinePlaceholder":327},[277,85798,85799,85801,85803],{"class":279,"line":747},[277,85800,284],{"class":283},[277,85802,802],{"class":287},[277,85804,305],{"class":283},[277,85806,85807,85809,85811,85813,85815,85817],{"class":279,"line":754},[277,85808,810],{"class":283},[277,85810,31294],{"class":287},[277,85812,31891],{"class":291},[277,85814,298],{"class":283},[277,85816,31940],{"class":301},[277,85818,305],{"class":283},[277,85820,85821,85823,85825,85827,85829,85831,85833,85835,85837,85839,85841,85843],{"class":279,"line":772},[277,85822,829],{"class":283},[277,85824,18041],{"class":287},[277,85826,34048],{"class":291},[277,85828,298],{"class":283},[277,85830,35848],{"class":301},[277,85832,23751],{"class":291},[277,85834,298],{"class":283},[277,85836,31911],{"class":301},[277,85838,36352],{"class":291},[277,85840,298],{"class":283},[277,85842,36357],{"class":301},[277,85844,4325],{"class":283},[277,85846,85847],{"class":279,"line":777},[277,85848,328],{"emptyLinePlaceholder":327},[277,85850,85851,85853,85855,85857,85859,85861,85863,85865,85867],{"class":279,"line":782},[277,85852,829],{"class":283},[277,85854,4267],{"class":287},[277,85856,34765],{"class":291},[277,85858,298],{"class":283},[277,85860,36376],{"class":301},[277,85862,36352],{"class":291},[277,85864,298],{"class":283},[277,85866,36383],{"class":301},[277,85868,305],{"class":283},[277,85870,85871],{"class":279,"line":792},[277,85872,36390],{"class":283},[277,85874,85875,85877,85879],{"class":279,"line":797},[277,85876,922],{"class":283},[277,85878,4267],{"class":287},[277,85880,305],{"class":283},[277,85882,85883],{"class":279,"line":807},[277,85884,328],{"emptyLinePlaceholder":327},[277,85886,85887,85889,85891,85893,85895,85897],{"class":279,"line":826},[277,85888,829],{"class":283},[277,85890,21],{"class":287},[277,85892,33308],{"class":291},[277,85894,298],{"class":283},[277,85896,36415],{"class":301},[277,85898,305],{"class":283},[277,85900,85901],{"class":279,"line":849},[277,85902,36422],{"class":283},[277,85904,85905,85907,85909],{"class":279,"line":854},[277,85906,922],{"class":283},[277,85908,21],{"class":287},[277,85910,305],{"class":283},[277,85912,85913,85915,85917],{"class":279,"line":876},[277,85914,954],{"class":283},[277,85916,31294],{"class":287},[277,85918,305],{"class":283},[277,85920,85921,85923,85925],{"class":279,"line":891},[277,85922,785],{"class":283},[277,85924,802],{"class":287},[277,85926,305],{"class":283},[30,85928,1596],{"id":1595},[21,85930,85931,36873],{},[16,85932,17974],{},[21,85934,36876],{},[38,85936,85937,85943,85949,85953],{},[41,85938,85939,36883,85941,104],{},[16,85940,353],{},[16,85942,17974],{},[41,85944,36888,85945,1697,85947,104],{},[16,85946,34136],{},[16,85948,1606],{},[41,85950,36895,85951,104],{},[16,85952,1732],{},[41,85954,85955,36902],{},[16,85956,35712],{},[21,85958,36905,85959,36908],{},[16,85960,17974],{},[1606,85962,36911],{},{"title":273,"searchDepth":308,"depth":308,"links":85964},[85965,85966,85967,85968,85969,85975,85983,85984],{"id":20624,"depth":308,"text":20625},{"id":24652,"depth":308,"text":24653},{"id":128,"depth":308,"text":129},{"id":155,"depth":308,"text":156},{"id":189,"depth":308,"text":190,"children":85970},[85971,85972,85973,85974],{"id":34201,"depth":324,"text":36921},{"id":34302,"depth":324,"text":36923},{"id":34386,"depth":324,"text":34387},{"id":34431,"depth":324,"text":36926},{"id":1945,"depth":308,"text":1946,"children":85976},[85977,85978,85979,85980,85981,85982],{"id":34445,"depth":324,"text":36930},{"id":34682,"depth":324,"text":36932},{"id":34907,"depth":324,"text":36934},{"id":35211,"depth":324,"text":36936},{"id":35466,"depth":324,"text":36938},{"id":35708,"depth":324,"text":36940},{"id":36018,"depth":308,"text":36019},{"id":1595,"depth":308,"text":1596},{"script":85986},[85987],{"type":1632,"key":1633,"data-nuxt-schema-org":327,"nodes":85988},[85989],{"headline":36952,"author":85990,"datePublished":36954,"@type":1640},{"name":1637,"@type":1638},{"updatedAt":36954,"coverCaption":17759,"author":1637,"keywords":85992},[1645,17974,36957,36958,36959,271,971],[85994],{"headline":36952,"author":85995,"datePublished":36954,"@type":1640},{"name":1637,"@type":1638},{"title":33986,"description":36946},[85998,85999,86000,86001],{"tag":20588,"color":20589},{"tag":21891,"color":21892},{"tag":3167,"color":3168},{"tag":9074,"color":9075},{"id":36973,"title":36974,"body":86003,"cover":40301,"coverAlt":40302,"date":40303,"description":40304,"draft":1627,"extension":1628,"head":89096,"locale":1641,"meta":89102,"navigation":327,"path":40316,"schemaOrg":89104,"seo":89107,"series":20582,"seriesDescription":20583,"seriesOrder":324,"seriesTitle":20584,"slug":1656,"stem":40321,"tags":89108,"__hash__":40328},{"type":8,"value":86004,"toc":89071},[86005,86009,86013,86015,86025,86027,86029,86031,86043,86047,86055,86059,86061,86069,86071,86075,86093,86095,86209,86331,86333,86335,86532,86737,86741,86745,86747,86861,86983,86985,87113,87249,87253,87433,87621,87623,87627,87633,87887,88147,88151,88293,88451,88453,88656,88867,88871,88877,88929,88931,88937,88943,89005,89011,89015,89017,89021,89025,89027,89047,89049,89053,89055,89067,89069],[11,86006,36980,86007,36983],{"id":36979},[16,86008,24880],{},[21,86010,86011,36988],{},[16,86012,24880],{},[21,86014,36991],{},[38,86016,86017,86021],{},[41,86018,86019,36998],{},[16,86020,24880],{},[41,86022,86023,37004],{},[16,86024,37003],{},[21,86026,37007],{},[30,86028,20625],{"id":20624},[21,86030,37012],{},[38,86032,86033,86035,86037,86039,86041],{},[41,86034,37017],{},[41,86036,37020],{},[41,86038,37023],{},[41,86040,37026],{},[41,86042,37029],{},[21,86044,37032,86045,37035],{},[16,86046,1789],{},[38,86048,86049,86051,86053],{},[41,86050,37040],{},[41,86052,37043],{},[41,86054,37046],{},[30,86056,37050,86057],{"id":37049},[16,86058,24880],{},[21,86060,37055],{},[38,86062,86063,86065,86067],{},[41,86064,37060],{},[41,86066,37063],{},[41,86068,37066],{},[30,86070,156],{"id":155},[21,86072,37071,86073,37074],{},[16,86074,24880],{},[38,86076,86077,86079,86087],{},[41,86078,37079],{},[41,86080,37082,86081,1697,86083,37087,86085],{},[16,86082,7538],{},[16,86084,24880],{},[16,86086,1732],{},[41,86088,9292,86089,37095,86091,37098],{},[16,86090,37094],{},[16,86092,1789],{},[30,86094,37102],{"id":37101},[267,86096,86098],{"className":269,"code":37105,"filename":271,"highlights":86097,"language":272,"meta":273,"style":273},[381],[16,86099,86100,86110,86120,86124,86148,86156,86160,86168,86189,86193,86201],{"__ignoreMap":273},[277,86101,86102,86104,86106,86108],{"class":279,"line":280},[277,86103,284],{"class":283},[277,86105,288],{"class":287},[277,86107,292],{"class":291},[277,86109,305],{"class":283},[277,86111,86112,86114,86116,86118],{"class":279,"line":308},[277,86113,312],{"class":311},[277,86115,11006],{"class":283},[277,86117,318],{"class":311},[277,86119,321],{"class":301},[277,86121,86122],{"class":279,"line":324},[277,86123,328],{"emptyLinePlaceholder":327},[277,86125,86126,86128,86130,86132,86134,86136,86138,86140,86142,86144,86146],{"class":279,"line":331},[277,86127,405],{"class":311},[277,86129,37139],{"class":356},[277,86131,340],{"class":311},[277,86133,413],{"class":291},[277,86135,37146],{"class":283},[277,86137,37149],{"class":301},[277,86139,225],{"class":283},[277,86141,37154],{"class":301},[277,86143,225],{"class":283},[277,86145,37159],{"class":301},[277,86147,2184],{"class":283},[277,86149,86150,86152,86154],{"class":279,"line":346},[277,86151,785],{"class":283},[277,86153,288],{"class":287},[277,86155,305],{"class":283},[277,86157,86158],{"class":279,"line":360},[277,86159,328],{"emptyLinePlaceholder":327},[277,86161,86162,86164,86166],{"class":279,"line":371},[277,86163,284],{"class":283},[277,86165,802],{"class":287},[277,86167,305],{"class":283},[277,86169,86171,86173,86175,86177,86179,86181,86183,86185,86187],{"class":86170,"line":381},[279,9398],[277,86172,810],{"class":283},[277,86174,41],{"class":287},[277,86176,12785],{"class":291},[277,86178,298],{"class":283},[277,86180,37195],{"class":301},[277,86182,4317],{"class":291},[277,86184,298],{"class":283},[277,86186,37202],{"class":301},[277,86188,305],{"class":283},[277,86190,86191],{"class":279,"line":391},[277,86192,37209],{"class":283},[277,86194,86195,86197,86199],{"class":279,"line":397},[277,86196,954],{"class":283},[277,86198,41],{"class":287},[277,86200,305],{"class":283},[277,86202,86203,86205,86207],{"class":279,"line":402},[277,86204,785],{"class":283},[277,86206,802],{"class":287},[277,86208,305],{"class":283},[267,86210,86212],{"className":269,"code":37228,"filename":971,"highlights":86211,"language":272,"meta":273,"style":273},[436],[16,86213,86214,86222,86230,86236,86242,86258,86262,86266,86270,86278,86282,86290,86311,86315,86323],{"__ignoreMap":273},[277,86215,86216,86218,86220],{"class":279,"line":280},[277,86217,284],{"class":283},[277,86219,288],{"class":287},[277,86221,305],{"class":283},[277,86223,86224,86226,86228],{"class":279,"line":308},[277,86225,1057],{"class":311},[277,86227,1060],{"class":311},[277,86229,343],{"class":283},[277,86231,86232,86234],{"class":279,"line":324},[277,86233,1086],{"class":291},[277,86235,473],{"class":283},[277,86237,86238,86240],{"class":279,"line":331},[277,86239,1093],{"class":311},[277,86241,343],{"class":283},[277,86243,86244,86246,86248,86250,86252,86254,86256],{"class":279,"line":346},[277,86245,37264],{"class":283},[277,86247,37149],{"class":301},[277,86249,225],{"class":283},[277,86251,37154],{"class":301},[277,86253,225],{"class":283},[277,86255,37159],{"class":301},[277,86257,37277],{"class":283},[277,86259,86260],{"class":279,"line":360},[277,86261,1126],{"class":283},[277,86263,86264],{"class":279,"line":371},[277,86265,542],{"class":283},[277,86267,86268],{"class":279,"line":381},[277,86269,394],{"class":283},[277,86271,86272,86274,86276],{"class":279,"line":391},[277,86273,785],{"class":283},[277,86275,288],{"class":287},[277,86277,305],{"class":283},[277,86279,86280],{"class":279,"line":397},[277,86281,328],{"emptyLinePlaceholder":327},[277,86283,86284,86286,86288],{"class":279,"line":402},[277,86285,284],{"class":283},[277,86287,802],{"class":287},[277,86289,305],{"class":283},[277,86291,86293,86295,86297,86299,86301,86303,86305,86307,86309],{"class":86292,"line":436},[279,9398],[277,86294,810],{"class":283},[277,86296,41],{"class":287},[277,86298,12785],{"class":291},[277,86300,298],{"class":283},[277,86302,37195],{"class":301},[277,86304,4317],{"class":291},[277,86306,298],{"class":283},[277,86308,37202],{"class":301},[277,86310,305],{"class":283},[277,86312,86313],{"class":279,"line":456},[277,86314,37209],{"class":283},[277,86316,86317,86319,86321],{"class":279,"line":461},[277,86318,954],{"class":283},[277,86320,41],{"class":287},[277,86322,305],{"class":283},[277,86324,86325,86327,86329],{"class":279,"line":476},[277,86326,785],{"class":283},[277,86328,802],{"class":287},[277,86330,305],{"class":283},[30,86332,37354],{"id":37353},[21,86334,37357],{},[267,86336,86338],{"className":269,"code":37360,"filename":271,"highlights":86337,"language":272,"meta":273,"style":273},[331,346,360,371,381,456],[16,86339,86340,86350,86360,86364,86377,86394,86411,86428,86433,86441,86445,86453,86461,86482,86496,86500,86508,86516,86524],{"__ignoreMap":273},[277,86341,86342,86344,86346,86348],{"class":279,"line":280},[277,86343,284],{"class":283},[277,86345,288],{"class":287},[277,86347,292],{"class":291},[277,86349,305],{"class":283},[277,86351,86352,86354,86356,86358],{"class":279,"line":308},[277,86353,312],{"class":311},[277,86355,11006],{"class":283},[277,86357,318],{"class":311},[277,86359,321],{"class":301},[277,86361,86362],{"class":279,"line":324},[277,86363,328],{"emptyLinePlaceholder":327},[277,86365,86367,86369,86371,86373,86375],{"class":86366,"line":331},[279,9398],[277,86368,405],{"class":311},[277,86370,37395],{"class":356},[277,86372,340],{"class":311},[277,86374,413],{"class":291},[277,86376,2104],{"class":283},[277,86378,86380,86382,86384,86386,86388,86390,86392],{"class":86379,"line":346},[279,9398],[277,86381,2109],{"class":283},[277,86383,2072],{"class":356},[277,86385,9690],{"class":283},[277,86387,37413],{"class":301},[277,86389,2120],{"class":283},[277,86391,2149],{"class":356},[277,86393,2132],{"class":283},[277,86395,86397,86399,86401,86403,86405,86407,86409],{"class":86396,"line":360},[279,9398],[277,86398,2109],{"class":283},[277,86400,2139],{"class":356},[277,86402,9690],{"class":283},[277,86404,37431],{"class":301},[277,86406,2120],{"class":283},[277,86408,2123],{"class":356},[277,86410,2132],{"class":283},[277,86412,86414,86416,86418,86420,86422,86424,86426],{"class":86413,"line":371},[279,9398],[277,86415,2109],{"class":283},[277,86417,2163],{"class":356},[277,86419,9690],{"class":283},[277,86421,37449],{"class":301},[277,86423,2120],{"class":283},[277,86425,2123],{"class":356},[277,86427,2179],{"class":283},[277,86429,86431],{"class":86430,"line":381},[279,9398],[277,86432,2184],{"class":283},[277,86434,86435,86437,86439],{"class":279,"line":391},[277,86436,785],{"class":283},[277,86438,288],{"class":287},[277,86440,305],{"class":283},[277,86442,86443],{"class":279,"line":397},[277,86444,328],{"emptyLinePlaceholder":327},[277,86446,86447,86449,86451],{"class":279,"line":402},[277,86448,284],{"class":283},[277,86450,802],{"class":287},[277,86452,305],{"class":283},[277,86454,86455,86457,86459],{"class":279,"line":436},[277,86456,810],{"class":283},[277,86458,38],{"class":287},[277,86460,305],{"class":283},[277,86462,86464,86466,86468,86470,86472,86474,86476,86478,86480],{"class":86463,"line":456},[279,9398],[277,86465,829],{"class":283},[277,86467,41],{"class":287},[277,86469,12785],{"class":291},[277,86471,298],{"class":283},[277,86473,37502],{"class":301},[277,86475,4317],{"class":291},[277,86477,298],{"class":283},[277,86479,37509],{"class":301},[277,86481,305],{"class":283},[277,86483,86484,86486,86488,86490,86492,86494],{"class":279,"line":461},[277,86485,879],{"class":283},[277,86487,277],{"class":287},[277,86489,33308],{"class":291},[277,86491,298],{"class":283},[277,86493,37524],{"class":301},[277,86495,305],{"class":283},[277,86497,86498],{"class":279,"line":476},[277,86499,37531],{"class":283},[277,86501,86502,86504,86506],{"class":279,"line":500},[277,86503,4175],{"class":283},[277,86505,277],{"class":287},[277,86507,305],{"class":283},[277,86509,86510,86512,86514],{"class":279,"line":505},[277,86511,922],{"class":283},[277,86513,41],{"class":287},[277,86515,305],{"class":283},[277,86517,86518,86520,86522],{"class":279,"line":520},[277,86519,954],{"class":283},[277,86521,38],{"class":287},[277,86523,305],{"class":283},[277,86525,86526,86528,86530],{"class":279,"line":539},[277,86527,785],{"class":283},[277,86529,802],{"class":287},[277,86531,305],{"class":283},[267,86533,86535],{"className":269,"code":37566,"filename":971,"highlights":86534,"language":272,"meta":273,"style":273},[346,360,371,381,391,505],[16,86536,86537,86545,86553,86559,86565,86570,86587,86604,86621,86626,86630,86634,86638,86646,86650,86658,86666,86687,86701,86705,86713,86721,86729],{"__ignoreMap":273},[277,86538,86539,86541,86543],{"class":279,"line":280},[277,86540,284],{"class":283},[277,86542,288],{"class":287},[277,86544,305],{"class":283},[277,86546,86547,86549,86551],{"class":279,"line":308},[277,86548,1057],{"class":311},[277,86550,1060],{"class":311},[277,86552,343],{"class":283},[277,86554,86555,86557],{"class":279,"line":324},[277,86556,1086],{"class":291},[277,86558,473],{"class":283},[277,86560,86561,86563],{"class":279,"line":331},[277,86562,1093],{"class":311},[277,86564,343],{"class":283},[277,86566,86568],{"class":86567,"line":346},[279,9398],[277,86569,37603],{"class":283},[277,86571,86573,86575,86577,86579,86581,86583,86585],{"class":86572,"line":360},[279,9398],[277,86574,2664],{"class":283},[277,86576,2072],{"class":356},[277,86578,9690],{"class":283},[277,86580,37413],{"class":301},[277,86582,2120],{"class":283},[277,86584,2149],{"class":356},[277,86586,2132],{"class":283},[277,86588,86590,86592,86594,86596,86598,86600,86602],{"class":86589,"line":371},[279,9398],[277,86591,2664],{"class":283},[277,86593,2139],{"class":356},[277,86595,9690],{"class":283},[277,86597,37431],{"class":301},[277,86599,2120],{"class":283},[277,86601,2123],{"class":356},[277,86603,2132],{"class":283},[277,86605,86607,86609,86611,86613,86615,86617,86619],{"class":86606,"line":381},[279,9398],[277,86608,2664],{"class":283},[277,86610,2163],{"class":356},[277,86612,9690],{"class":283},[277,86614,37449],{"class":301},[277,86616,2120],{"class":283},[277,86618,2123],{"class":356},[277,86620,2179],{"class":283},[277,86622,86624],{"class":86623,"line":391},[279,9398],[277,86625,2725],{"class":283},[277,86627,86628],{"class":279,"line":397},[277,86629,1126],{"class":283},[277,86631,86632],{"class":279,"line":402},[277,86633,542],{"class":283},[277,86635,86636],{"class":279,"line":436},[277,86637,394],{"class":283},[277,86639,86640,86642,86644],{"class":279,"line":456},[277,86641,785],{"class":283},[277,86643,288],{"class":287},[277,86645,305],{"class":283},[277,86647,86648],{"class":279,"line":461},[277,86649,328],{"emptyLinePlaceholder":327},[277,86651,86652,86654,86656],{"class":279,"line":476},[277,86653,284],{"class":283},[277,86655,802],{"class":287},[277,86657,305],{"class":283},[277,86659,86660,86662,86664],{"class":279,"line":500},[277,86661,810],{"class":283},[277,86663,38],{"class":287},[277,86665,305],{"class":283},[277,86667,86669,86671,86673,86675,86677,86679,86681,86683,86685],{"class":86668,"line":505},[279,9398],[277,86670,829],{"class":283},[277,86672,41],{"class":287},[277,86674,12785],{"class":291},[277,86676,298],{"class":283},[277,86678,37502],{"class":301},[277,86680,4317],{"class":291},[277,86682,298],{"class":283},[277,86684,37509],{"class":301},[277,86686,305],{"class":283},[277,86688,86689,86691,86693,86695,86697,86699],{"class":279,"line":520},[277,86690,879],{"class":283},[277,86692,277],{"class":287},[277,86694,33308],{"class":291},[277,86696,298],{"class":283},[277,86698,37524],{"class":301},[277,86700,305],{"class":283},[277,86702,86703],{"class":279,"line":539},[277,86704,37531],{"class":283},[277,86706,86707,86709,86711],{"class":279,"line":545},[277,86708,4175],{"class":283},[277,86710,277],{"class":287},[277,86712,305],{"class":283},[277,86714,86715,86717,86719],{"class":279,"line":550},[277,86716,922],{"class":283},[277,86718,41],{"class":287},[277,86720,305],{"class":283},[277,86722,86723,86725,86727],{"class":279,"line":578},[277,86724,954],{"class":283},[277,86726,38],{"class":287},[277,86728,305],{"class":283},[277,86730,86731,86733,86735],{"class":279,"line":583},[277,86732,785],{"class":283},[277,86734,802],{"class":287},[277,86736,305],{"class":283},[30,86738,37774,86739],{"id":37773},[16,86740,37777],{},[192,86742,37781,86743],{"id":37780},[16,86744,24880],{},[21,86746,37786],{},[267,86748,86750],{"className":269,"code":37789,"filename":271,"highlights":86749,"language":272,"meta":273,"style":273},[381],[16,86751,86752,86762,86772,86776,86800,86808,86812,86820,86841,86845,86853],{"__ignoreMap":273},[277,86753,86754,86756,86758,86760],{"class":279,"line":280},[277,86755,284],{"class":283},[277,86757,288],{"class":287},[277,86759,292],{"class":291},[277,86761,305],{"class":283},[277,86763,86764,86766,86768,86770],{"class":279,"line":308},[277,86765,312],{"class":311},[277,86767,11006],{"class":283},[277,86769,318],{"class":311},[277,86771,321],{"class":301},[277,86773,86774],{"class":279,"line":324},[277,86775,328],{"emptyLinePlaceholder":327},[277,86777,86778,86780,86782,86784,86786,86788,86790,86792,86794,86796,86798],{"class":279,"line":331},[277,86779,405],{"class":311},[277,86781,11021],{"class":356},[277,86783,340],{"class":311},[277,86785,413],{"class":291},[277,86787,37146],{"class":283},[277,86789,2129],{"class":301},[277,86791,225],{"class":283},[277,86793,2154],{"class":301},[277,86795,225],{"class":283},[277,86797,37839],{"class":301},[277,86799,2184],{"class":283},[277,86801,86802,86804,86806],{"class":279,"line":346},[277,86803,785],{"class":283},[277,86805,288],{"class":287},[277,86807,305],{"class":283},[277,86809,86810],{"class":279,"line":360},[277,86811,328],{"emptyLinePlaceholder":327},[277,86813,86814,86816,86818],{"class":279,"line":371},[277,86815,284],{"class":283},[277,86817,802],{"class":287},[277,86819,305],{"class":283},[277,86821,86823,86825,86827,86829,86831,86833,86835,86837,86839],{"class":86822,"line":381},[279,9398],[277,86824,810],{"class":283},[277,86826,21],{"class":287},[277,86828,12785],{"class":291},[277,86830,298],{"class":283},[277,86832,37875],{"class":301},[277,86834,4317],{"class":291},[277,86836,298],{"class":283},[277,86838,21518],{"class":301},[277,86840,305],{"class":283},[277,86842,86843],{"class":279,"line":391},[277,86844,37888],{"class":283},[277,86846,86847,86849,86851],{"class":279,"line":397},[277,86848,954],{"class":283},[277,86850,21],{"class":287},[277,86852,305],{"class":283},[277,86854,86855,86857,86859],{"class":279,"line":402},[277,86856,785],{"class":283},[277,86858,802],{"class":287},[277,86860,305],{"class":283},[267,86862,86864],{"className":269,"code":37907,"filename":971,"highlights":86863,"language":272,"meta":273,"style":273},[436],[16,86865,86866,86874,86882,86888,86894,86910,86914,86918,86922,86930,86934,86942,86963,86967,86975],{"__ignoreMap":273},[277,86867,86868,86870,86872],{"class":279,"line":280},[277,86869,284],{"class":283},[277,86871,288],{"class":287},[277,86873,305],{"class":283},[277,86875,86876,86878,86880],{"class":279,"line":308},[277,86877,1057],{"class":311},[277,86879,1060],{"class":311},[277,86881,343],{"class":283},[277,86883,86884,86886],{"class":279,"line":324},[277,86885,1086],{"class":291},[277,86887,473],{"class":283},[277,86889,86890,86892],{"class":279,"line":331},[277,86891,1093],{"class":311},[277,86893,343],{"class":283},[277,86895,86896,86898,86900,86902,86904,86906,86908],{"class":279,"line":346},[277,86897,37943],{"class":283},[277,86899,2129],{"class":301},[277,86901,225],{"class":283},[277,86903,2154],{"class":301},[277,86905,225],{"class":283},[277,86907,37839],{"class":301},[277,86909,37277],{"class":283},[277,86911,86912],{"class":279,"line":360},[277,86913,1126],{"class":283},[277,86915,86916],{"class":279,"line":371},[277,86917,542],{"class":283},[277,86919,86920],{"class":279,"line":381},[277,86921,394],{"class":283},[277,86923,86924,86926,86928],{"class":279,"line":391},[277,86925,785],{"class":283},[277,86927,288],{"class":287},[277,86929,305],{"class":283},[277,86931,86932],{"class":279,"line":397},[277,86933,328],{"emptyLinePlaceholder":327},[277,86935,86936,86938,86940],{"class":279,"line":402},[277,86937,284],{"class":283},[277,86939,802],{"class":287},[277,86941,305],{"class":283},[277,86943,86945,86947,86949,86951,86953,86955,86957,86959,86961],{"class":86944,"line":436},[279,9398],[277,86946,810],{"class":283},[277,86948,21],{"class":287},[277,86950,12785],{"class":291},[277,86952,298],{"class":283},[277,86954,37875],{"class":301},[277,86956,4317],{"class":291},[277,86958,298],{"class":283},[277,86960,21518],{"class":301},[277,86962,305],{"class":283},[277,86964,86965],{"class":279,"line":456},[277,86966,37888],{"class":283},[277,86968,86969,86971,86973],{"class":279,"line":461},[277,86970,954],{"class":283},[277,86972,21],{"class":287},[277,86974,305],{"class":283},[277,86976,86977,86979,86981],{"class":279,"line":476},[277,86978,785],{"class":283},[277,86980,802],{"class":287},[277,86982,305],{"class":283},[192,86984,38032],{"id":38031},[267,86986,86988],{"className":269,"code":38035,"filename":271,"highlights":86987,"language":272,"meta":273,"style":273},[436],[16,86989,86990,87000,87010,87014,87026,87034,87042,87048,87052,87060,87064,87072,87093,87097,87105],{"__ignoreMap":273},[277,86991,86992,86994,86996,86998],{"class":279,"line":280},[277,86993,284],{"class":283},[277,86995,288],{"class":287},[277,86997,292],{"class":291},[277,86999,305],{"class":283},[277,87001,87002,87004,87006,87008],{"class":279,"line":308},[277,87003,312],{"class":311},[277,87005,11006],{"class":283},[277,87007,318],{"class":311},[277,87009,321],{"class":301},[277,87011,87012],{"class":279,"line":324},[277,87013,328],{"emptyLinePlaceholder":327},[277,87015,87016,87018,87020,87022,87024],{"class":279,"line":331},[277,87017,405],{"class":311},[277,87019,38069],{"class":356},[277,87021,340],{"class":311},[277,87023,413],{"class":291},[277,87025,1066],{"class":283},[277,87027,87028,87030,87032],{"class":279,"line":346},[277,87029,1071],{"class":283},[277,87031,38082],{"class":301},[277,87033,1077],{"class":283},[277,87035,87036,87038,87040],{"class":279,"line":360},[277,87037,38089],{"class":283},[277,87039,38092],{"class":301},[277,87041,1077],{"class":283},[277,87043,87044,87046],{"class":279,"line":371},[277,87045,38099],{"class":283},[277,87047,38102],{"class":301},[277,87049,87050],{"class":279,"line":381},[277,87051,676],{"class":283},[277,87053,87054,87056,87058],{"class":279,"line":391},[277,87055,785],{"class":283},[277,87057,288],{"class":287},[277,87059,305],{"class":283},[277,87061,87062],{"class":279,"line":397},[277,87063,328],{"emptyLinePlaceholder":327},[277,87065,87066,87068,87070],{"class":279,"line":402},[277,87067,284],{"class":283},[277,87069,802],{"class":287},[277,87071,305],{"class":283},[277,87073,87075,87077,87079,87081,87083,87085,87087,87089,87091],{"class":87074,"line":436},[279,9398],[277,87076,810],{"class":283},[277,87078,41],{"class":287},[277,87080,12785],{"class":291},[277,87082,298],{"class":283},[277,87084,38140],{"class":301},[277,87086,4317],{"class":291},[277,87088,298],{"class":283},[277,87090,38147],{"class":301},[277,87092,305],{"class":283},[277,87094,87095],{"class":279,"line":456},[277,87096,38154],{"class":283},[277,87098,87099,87101,87103],{"class":279,"line":461},[277,87100,954],{"class":283},[277,87102,41],{"class":287},[277,87104,305],{"class":283},[277,87106,87107,87109,87111],{"class":279,"line":476},[277,87108,785],{"class":283},[277,87110,802],{"class":287},[277,87112,305],{"class":283},[267,87114,87116],{"className":269,"code":38173,"filename":971,"highlights":87115,"language":272,"meta":273,"style":273},[500],[16,87117,87118,87126,87134,87140,87146,87150,87158,87166,87172,87176,87180,87184,87188,87196,87200,87208,87229,87233,87241],{"__ignoreMap":273},[277,87119,87120,87122,87124],{"class":279,"line":280},[277,87121,284],{"class":283},[277,87123,288],{"class":287},[277,87125,305],{"class":283},[277,87127,87128,87130,87132],{"class":279,"line":308},[277,87129,1057],{"class":311},[277,87131,1060],{"class":311},[277,87133,343],{"class":283},[277,87135,87136,87138],{"class":279,"line":324},[277,87137,1086],{"class":291},[277,87139,473],{"class":283},[277,87141,87142,87144],{"class":279,"line":331},[277,87143,1093],{"class":311},[277,87145,343],{"class":283},[277,87147,87148],{"class":279,"line":346},[277,87149,38209],{"class":283},[277,87151,87152,87154,87156],{"class":279,"line":360},[277,87153,38214],{"class":283},[277,87155,38082],{"class":301},[277,87157,1077],{"class":283},[277,87159,87160,87162,87164],{"class":279,"line":371},[277,87161,38223],{"class":283},[277,87163,38092],{"class":301},[277,87165,1077],{"class":283},[277,87167,87168,87170],{"class":279,"line":381},[277,87169,38232],{"class":283},[277,87171,38102],{"class":301},[277,87173,87174],{"class":279,"line":391},[277,87175,1203],{"class":283},[277,87177,87178],{"class":279,"line":397},[277,87179,1126],{"class":283},[277,87181,87182],{"class":279,"line":402},[277,87183,542],{"class":283},[277,87185,87186],{"class":279,"line":436},[277,87187,394],{"class":283},[277,87189,87190,87192,87194],{"class":279,"line":456},[277,87191,785],{"class":283},[277,87193,288],{"class":287},[277,87195,305],{"class":283},[277,87197,87198],{"class":279,"line":461},[277,87199,328],{"emptyLinePlaceholder":327},[277,87201,87202,87204,87206],{"class":279,"line":476},[277,87203,284],{"class":283},[277,87205,802],{"class":287},[277,87207,305],{"class":283},[277,87209,87211,87213,87215,87217,87219,87221,87223,87225,87227],{"class":87210,"line":500},[279,9398],[277,87212,810],{"class":283},[277,87214,41],{"class":287},[277,87216,12785],{"class":291},[277,87218,298],{"class":283},[277,87220,38140],{"class":301},[277,87222,4317],{"class":291},[277,87224,298],{"class":283},[277,87226,38147],{"class":301},[277,87228,305],{"class":283},[277,87230,87231],{"class":279,"line":505},[277,87232,38154],{"class":283},[277,87234,87235,87237,87239],{"class":279,"line":520},[277,87236,954],{"class":283},[277,87238,41],{"class":287},[277,87240,305],{"class":283},[277,87242,87243,87245,87247],{"class":279,"line":539},[277,87244,785],{"class":283},[277,87246,802],{"class":287},[277,87248,305],{"class":283},[192,87250,38315,87251],{"id":38314},[16,87252,802],{},[267,87254,87256],{"className":269,"code":38320,"filename":271,"highlights":87255,"language":272,"meta":273,"style":273},[402],[16,87257,87258,87268,87278,87282,87294,87310,87326,87330,87338,87342,87350,87385,87397,87409,87417,87425],{"__ignoreMap":273},[277,87259,87260,87262,87264,87266],{"class":279,"line":280},[277,87261,284],{"class":283},[277,87263,288],{"class":287},[277,87265,292],{"class":291},[277,87267,305],{"class":283},[277,87269,87270,87272,87274,87276],{"class":279,"line":308},[277,87271,312],{"class":311},[277,87273,11006],{"class":283},[277,87275,318],{"class":311},[277,87277,321],{"class":301},[277,87279,87280],{"class":279,"line":324},[277,87281,328],{"emptyLinePlaceholder":327},[277,87283,87284,87286,87288,87290,87292],{"class":279,"line":331},[277,87285,405],{"class":311},[277,87287,38354],{"class":356},[277,87289,340],{"class":311},[277,87291,413],{"class":291},[277,87293,2104],{"class":283},[277,87295,87296,87298,87300,87302,87304,87306,87308],{"class":279,"line":346},[277,87297,2109],{"class":283},[277,87299,2072],{"class":356},[277,87301,2114],{"class":283},[277,87303,38371],{"class":301},[277,87305,38374],{"class":283},[277,87307,38377],{"class":301},[277,87309,2132],{"class":283},[277,87311,87312,87314,87316,87318,87320,87322,87324],{"class":279,"line":360},[277,87313,2109],{"class":283},[277,87315,2139],{"class":356},[277,87317,2114],{"class":283},[277,87319,38390],{"class":301},[277,87321,38374],{"class":283},[277,87323,38395],{"class":301},[277,87325,2179],{"class":283},[277,87327,87328],{"class":279,"line":371},[277,87329,2184],{"class":283},[277,87331,87332,87334,87336],{"class":279,"line":381},[277,87333,785],{"class":283},[277,87335,288],{"class":287},[277,87337,305],{"class":283},[277,87339,87340],{"class":279,"line":391},[277,87341,328],{"emptyLinePlaceholder":327},[277,87343,87344,87346,87348],{"class":279,"line":397},[277,87345,284],{"class":283},[277,87347,802],{"class":287},[277,87349,305],{"class":283},[277,87351,87353,87355,87357,87359,87361,87363,87365,87367,87369,87371,87373,87375,87377,87379,87381,87383],{"class":87352,"line":402},[279,9398],[277,87354,810],{"class":283},[277,87356,802],{"class":287},[277,87358,12785],{"class":311},[277,87360,298],{"class":283},[277,87362,866],{"class":301},[277,87364,38437],{"class":283},[277,87366,38440],{"class":311},[277,87368,38354],{"class":283},[277,87370,866],{"class":301},[277,87372,6244],{"class":283},[277,87374,1789],{"class":291},[277,87376,298],{"class":283},[277,87378,866],{"class":301},[277,87380,38455],{"class":283},[277,87382,866],{"class":301},[277,87384,305],{"class":283},[277,87386,87387,87389,87391,87393,87395],{"class":279,"line":436},[277,87388,829],{"class":283},[277,87390,192],{"class":287},[277,87392,38468],{"class":283},[277,87394,192],{"class":287},[277,87396,305],{"class":283},[277,87398,87399,87401,87403,87405,87407],{"class":279,"line":456},[277,87400,829],{"class":283},[277,87402,21],{"class":287},[277,87404,38481],{"class":283},[277,87406,21],{"class":287},[277,87408,305],{"class":283},[277,87410,87411,87413,87415],{"class":279,"line":461},[277,87412,829],{"class":283},[277,87414,38492],{"class":287},[277,87416,4325],{"class":283},[277,87418,87419,87421,87423],{"class":279,"line":476},[277,87420,954],{"class":283},[277,87422,802],{"class":287},[277,87424,305],{"class":283},[277,87426,87427,87429,87431],{"class":279,"line":500},[277,87428,785],{"class":283},[277,87430,802],{"class":287},[277,87432,305],{"class":283},[267,87434,87436],{"className":269,"code":38513,"filename":971,"highlights":87435,"language":272,"meta":273,"style":273},[476],[16,87437,87438,87446,87454,87460,87466,87470,87486,87502,87506,87510,87514,87518,87526,87530,87538,87573,87585,87597,87605,87613],{"__ignoreMap":273},[277,87439,87440,87442,87444],{"class":279,"line":280},[277,87441,284],{"class":283},[277,87443,288],{"class":287},[277,87445,305],{"class":283},[277,87447,87448,87450,87452],{"class":279,"line":308},[277,87449,1057],{"class":311},[277,87451,1060],{"class":311},[277,87453,343],{"class":283},[277,87455,87456,87458],{"class":279,"line":324},[277,87457,1086],{"class":291},[277,87459,473],{"class":283},[277,87461,87462,87464],{"class":279,"line":331},[277,87463,1093],{"class":311},[277,87465,343],{"class":283},[277,87467,87468],{"class":279,"line":346},[277,87469,38549],{"class":283},[277,87471,87472,87474,87476,87478,87480,87482,87484],{"class":279,"line":360},[277,87473,2664],{"class":283},[277,87475,2072],{"class":356},[277,87477,2114],{"class":283},[277,87479,38371],{"class":301},[277,87481,38374],{"class":283},[277,87483,38377],{"class":301},[277,87485,2132],{"class":283},[277,87487,87488,87490,87492,87494,87496,87498,87500],{"class":279,"line":371},[277,87489,2664],{"class":283},[277,87491,2139],{"class":356},[277,87493,2114],{"class":283},[277,87495,38390],{"class":301},[277,87497,38374],{"class":283},[277,87499,38395],{"class":301},[277,87501,2179],{"class":283},[277,87503,87504],{"class":279,"line":381},[277,87505,2725],{"class":283},[277,87507,87508],{"class":279,"line":391},[277,87509,1126],{"class":283},[277,87511,87512],{"class":279,"line":397},[277,87513,542],{"class":283},[277,87515,87516],{"class":279,"line":402},[277,87517,394],{"class":283},[277,87519,87520,87522,87524],{"class":279,"line":436},[277,87521,785],{"class":283},[277,87523,288],{"class":287},[277,87525,305],{"class":283},[277,87527,87528],{"class":279,"line":456},[277,87529,328],{"emptyLinePlaceholder":327},[277,87531,87532,87534,87536],{"class":279,"line":461},[277,87533,284],{"class":283},[277,87535,802],{"class":287},[277,87537,305],{"class":283},[277,87539,87541,87543,87545,87547,87549,87551,87553,87555,87557,87559,87561,87563,87565,87567,87569,87571],{"class":87540,"line":476},[279,9398],[277,87542,810],{"class":283},[277,87544,802],{"class":287},[277,87546,12785],{"class":311},[277,87548,298],{"class":283},[277,87550,866],{"class":301},[277,87552,38437],{"class":283},[277,87554,38440],{"class":311},[277,87556,38354],{"class":283},[277,87558,866],{"class":301},[277,87560,6244],{"class":283},[277,87562,1789],{"class":291},[277,87564,298],{"class":283},[277,87566,866],{"class":301},[277,87568,38455],{"class":283},[277,87570,866],{"class":301},[277,87572,305],{"class":283},[277,87574,87575,87577,87579,87581,87583],{"class":279,"line":500},[277,87576,829],{"class":283},[277,87578,192],{"class":287},[277,87580,38468],{"class":283},[277,87582,192],{"class":287},[277,87584,305],{"class":283},[277,87586,87587,87589,87591,87593,87595],{"class":279,"line":505},[277,87588,829],{"class":283},[277,87590,21],{"class":287},[277,87592,38481],{"class":283},[277,87594,21],{"class":287},[277,87596,305],{"class":283},[277,87598,87599,87601,87603],{"class":279,"line":520},[277,87600,829],{"class":283},[277,87602,38492],{"class":287},[277,87604,4325],{"class":283},[277,87606,87607,87609,87611],{"class":279,"line":539},[277,87608,954],{"class":283},[277,87610,802],{"class":287},[277,87612,305],{"class":283},[277,87614,87615,87617,87619],{"class":279,"line":545},[277,87616,785],{"class":283},[277,87618,802],{"class":287},[277,87620,305],{"class":283},[30,87622,38704],{"id":38703},[192,87624,38708,87625],{"id":38707},[16,87626,1732],{},[21,87628,38713,87629,38716,87631,104],{},[16,87630,24880],{},[16,87632,1732],{},[267,87634,87636],{"className":269,"code":38721,"filename":271,"highlights":87635,"language":272,"meta":273,"style":273},[397,402,436,456,461,476,539],[16,87637,87638,87648,87658,87662,87674,87694,87714,87734,87738,87742,87759,87766,87787,87796,87821,87826,87834,87838,87846,87867,87871,87879],{"__ignoreMap":273},[277,87639,87640,87642,87644,87646],{"class":279,"line":280},[277,87641,284],{"class":283},[277,87643,288],{"class":287},[277,87645,292],{"class":291},[277,87647,305],{"class":283},[277,87649,87650,87652,87654,87656],{"class":279,"line":308},[277,87651,312],{"class":311},[277,87653,23384],{"class":283},[277,87655,318],{"class":311},[277,87657,321],{"class":301},[277,87659,87660],{"class":279,"line":324},[277,87661,328],{"emptyLinePlaceholder":327},[277,87663,87664,87666,87668,87670,87672],{"class":279,"line":331},[277,87665,405],{"class":311},[277,87667,29622],{"class":356},[277,87669,340],{"class":311},[277,87671,413],{"class":291},[277,87673,2104],{"class":283},[277,87675,87676,87678,87680,87682,87684,87686,87688,87690,87692],{"class":279,"line":346},[277,87677,2109],{"class":283},[277,87679,2072],{"class":356},[277,87681,22620],{"class":283},[277,87683,38771],{"class":301},[277,87685,29642],{"class":283},[277,87687,38776],{"class":356},[277,87689,29648],{"class":283},[277,87691,38781],{"class":356},[277,87693,2132],{"class":283},[277,87695,87696,87698,87700,87702,87704,87706,87708,87710,87712],{"class":279,"line":360},[277,87697,2109],{"class":283},[277,87699,2139],{"class":356},[277,87701,22620],{"class":283},[277,87703,38794],{"class":301},[277,87705,29642],{"class":283},[277,87707,38799],{"class":356},[277,87709,29648],{"class":283},[277,87711,3542],{"class":356},[277,87713,2132],{"class":283},[277,87715,87716,87718,87720,87722,87724,87726,87728,87730,87732],{"class":279,"line":371},[277,87717,2109],{"class":283},[277,87719,2163],{"class":356},[277,87721,22620],{"class":283},[277,87723,38816],{"class":301},[277,87725,29642],{"class":283},[277,87727,38821],{"class":356},[277,87729,29648],{"class":283},[277,87731,38826],{"class":356},[277,87733,2179],{"class":283},[277,87735,87736],{"class":279,"line":381},[277,87737,2184],{"class":283},[277,87739,87740],{"class":279,"line":391},[277,87741,328],{"emptyLinePlaceholder":327},[277,87743,87745,87747,87749,87751,87753,87755,87757],{"class":87744,"line":397},[279,9398],[277,87746,405],{"class":311},[277,87748,38844],{"class":356},[277,87750,340],{"class":311},[277,87752,2200],{"class":291},[277,87754,2203],{"class":283},[277,87756,601],{"class":311},[277,87758,343],{"class":283},[277,87760,87762,87764],{"class":87761,"line":402},[279,9398],[277,87763,2212],{"class":311},[277,87765,38862],{"class":283},[277,87767,87769,87771,87773,87775,87777,87779,87781,87783,87785],{"class":87768,"line":436},[279,9398],[277,87770,38868],{"class":283},[277,87772,2218],{"class":291},[277,87774,448],{"class":283},[277,87776,869],{"class":349},[277,87778,2226],{"class":311},[277,87780,38879],{"class":283},[277,87782,9921],{"class":311},[277,87784,38884],{"class":356},[277,87786,433],{"class":283},[277,87788,87790,87792,87794],{"class":87789,"line":456},[279,9398],[277,87791,38868],{"class":283},[277,87793,38894],{"class":291},[277,87795,622],{"class":283},[277,87797,87799,87801,87803,87805,87807,87809,87811,87813,87815,87817,87819],{"class":87798,"line":461},[279,9398],[277,87800,38868],{"class":283},[277,87802,38904],{"class":291},[277,87804,2334],{"class":283},[277,87806,13178],{"class":349},[277,87808,225],{"class":283},[277,87810,38913],{"class":349},[277,87812,2340],{"class":283},[277,87814,601],{"class":311},[277,87816,38920],{"class":283},[277,87818,38923],{"class":311},[277,87820,38926],{"class":283},[277,87822,87824],{"class":87823,"line":476},[279,9398],[277,87825,676],{"class":283},[277,87827,87828,87830,87832],{"class":279,"line":500},[277,87829,785],{"class":283},[277,87831,288],{"class":287},[277,87833,305],{"class":283},[277,87835,87836],{"class":279,"line":505},[277,87837,328],{"emptyLinePlaceholder":327},[277,87839,87840,87842,87844],{"class":279,"line":520},[277,87841,284],{"class":283},[277,87843,802],{"class":287},[277,87845,305],{"class":283},[277,87847,87849,87851,87853,87855,87857,87859,87861,87863,87865],{"class":87848,"line":539},[279,9398],[277,87850,810],{"class":283},[277,87852,41],{"class":287},[277,87854,12785],{"class":291},[277,87856,298],{"class":283},[277,87858,38965],{"class":301},[277,87860,4317],{"class":291},[277,87862,298],{"class":283},[277,87864,38972],{"class":301},[277,87866,305],{"class":283},[277,87868,87869],{"class":279,"line":545},[277,87870,38979],{"class":283},[277,87872,87873,87875,87877],{"class":279,"line":550},[277,87874,954],{"class":283},[277,87876,41],{"class":287},[277,87878,305],{"class":283},[277,87880,87881,87883,87885],{"class":279,"line":578},[277,87882,785],{"class":283},[277,87884,802],{"class":287},[277,87886,305],{"class":283},[267,87888,87890],{"className":269,"code":38998,"filename":971,"highlights":87889,"language":272,"meta":273,"style":273},[436,456,461,476,500,505,520,539,588],[16,87891,87892,87900,87908,87914,87920,87924,87944,87964,87984,87988,87992,87996,88001,88008,88017,88038,88047,88072,88077,88082,88086,88094,88098,88106,88127,88131,88139],{"__ignoreMap":273},[277,87893,87894,87896,87898],{"class":279,"line":280},[277,87895,284],{"class":283},[277,87897,288],{"class":287},[277,87899,305],{"class":283},[277,87901,87902,87904,87906],{"class":279,"line":308},[277,87903,1057],{"class":311},[277,87905,1060],{"class":311},[277,87907,343],{"class":283},[277,87909,87910,87912],{"class":279,"line":324},[277,87911,1086],{"class":291},[277,87913,473],{"class":283},[277,87915,87916,87918],{"class":279,"line":331},[277,87917,1093],{"class":311},[277,87919,343],{"class":283},[277,87921,87922],{"class":279,"line":346},[277,87923,30385],{"class":283},[277,87925,87926,87928,87930,87932,87934,87936,87938,87940,87942],{"class":279,"line":360},[277,87927,2664],{"class":283},[277,87929,2072],{"class":356},[277,87931,22620],{"class":283},[277,87933,38771],{"class":301},[277,87935,29642],{"class":283},[277,87937,38776],{"class":356},[277,87939,29648],{"class":283},[277,87941,38781],{"class":356},[277,87943,2132],{"class":283},[277,87945,87946,87948,87950,87952,87954,87956,87958,87960,87962],{"class":279,"line":371},[277,87947,2664],{"class":283},[277,87949,2139],{"class":356},[277,87951,22620],{"class":283},[277,87953,38794],{"class":301},[277,87955,29642],{"class":283},[277,87957,38799],{"class":356},[277,87959,29648],{"class":283},[277,87961,3542],{"class":356},[277,87963,2132],{"class":283},[277,87965,87966,87968,87970,87972,87974,87976,87978,87980,87982],{"class":279,"line":381},[277,87967,2664],{"class":283},[277,87969,2163],{"class":356},[277,87971,22620],{"class":283},[277,87973,38816],{"class":301},[277,87975,29642],{"class":283},[277,87977,38821],{"class":356},[277,87979,29648],{"class":283},[277,87981,38826],{"class":356},[277,87983,2179],{"class":283},[277,87985,87986],{"class":279,"line":391},[277,87987,2725],{"class":283},[277,87989,87990],{"class":279,"line":397},[277,87991,1126],{"class":283},[277,87993,87994],{"class":279,"line":402},[277,87995,1131],{"class":283},[277,87997,87999],{"class":87998,"line":436},[279,9398],[277,88000,2742],{"class":283},[277,88002,88004,88006],{"class":88003,"line":456},[279,9398],[277,88005,39116],{"class":291},[277,88007,473],{"class":283},[277,88009,88011,88013,88015],{"class":88010,"line":461},[279,9398],[277,88012,2754],{"class":311},[277,88014,1268],{"class":356},[277,88016,39128],{"class":283},[277,88018,88020,88022,88024,88026,88028,88030,88032,88034,88036],{"class":88019,"line":476},[279,9398],[277,88021,39134],{"class":283},[277,88023,2218],{"class":291},[277,88025,448],{"class":283},[277,88027,869],{"class":349},[277,88029,2226],{"class":311},[277,88031,38879],{"class":283},[277,88033,9921],{"class":311},[277,88035,38884],{"class":356},[277,88037,433],{"class":283},[277,88039,88041,88043,88045],{"class":88040,"line":500},[279,9398],[277,88042,39134],{"class":283},[277,88044,38894],{"class":291},[277,88046,622],{"class":283},[277,88048,88050,88052,88054,88056,88058,88060,88062,88064,88066,88068,88070],{"class":88049,"line":505},[279,9398],[277,88051,39134],{"class":283},[277,88053,38904],{"class":291},[277,88055,2334],{"class":283},[277,88057,13178],{"class":349},[277,88059,225],{"class":283},[277,88061,38913],{"class":349},[277,88063,2340],{"class":283},[277,88065,601],{"class":311},[277,88067,38920],{"class":283},[277,88069,38923],{"class":311},[277,88071,38926],{"class":283},[277,88073,88075],{"class":88074,"line":520},[279,9398],[277,88076,1126],{"class":283},[277,88078,88080],{"class":88079,"line":539},[279,9398],[277,88081,542],{"class":283},[277,88083,88084],{"class":279,"line":545},[277,88085,394],{"class":283},[277,88087,88088,88090,88092],{"class":279,"line":550},[277,88089,785],{"class":283},[277,88091,288],{"class":287},[277,88093,305],{"class":283},[277,88095,88096],{"class":279,"line":578},[277,88097,328],{"emptyLinePlaceholder":327},[277,88099,88100,88102,88104],{"class":279,"line":583},[277,88101,284],{"class":283},[277,88103,802],{"class":287},[277,88105,305],{"class":283},[277,88107,88109,88111,88113,88115,88117,88119,88121,88123,88125],{"class":88108,"line":588},[279,9398],[277,88110,810],{"class":283},[277,88112,41],{"class":287},[277,88114,12785],{"class":291},[277,88116,298],{"class":283},[277,88118,38965],{"class":301},[277,88120,4317],{"class":291},[277,88122,298],{"class":283},[277,88124,38972],{"class":301},[277,88126,305],{"class":283},[277,88128,88129],{"class":279,"line":606},[277,88130,38979],{"class":283},[277,88132,88133,88135,88137],{"class":279,"line":614},[277,88134,954],{"class":283},[277,88136,41],{"class":287},[277,88138,305],{"class":283},[277,88140,88141,88143,88145],{"class":279,"line":625},[277,88142,785],{"class":283},[277,88144,802],{"class":287},[277,88146,305],{"class":283},[192,88148,39263,88149],{"id":39262},[16,88150,24880],{},[267,88152,88154],{"className":269,"code":39268,"filename":271,"highlights":88153,"language":272,"meta":273,"style":273},[436],[16,88155,88156,88166,88176,88186,88190,88202,88218,88234,88238,88246,88250,88258,88285],{"__ignoreMap":273},[277,88157,88158,88160,88162,88164],{"class":279,"line":280},[277,88159,284],{"class":283},[277,88161,288],{"class":287},[277,88163,292],{"class":291},[277,88165,305],{"class":283},[277,88167,88168,88170,88172,88174],{"class":279,"line":308},[277,88169,312],{"class":311},[277,88171,11006],{"class":283},[277,88173,318],{"class":311},[277,88175,321],{"class":301},[277,88177,88178,88180,88182,88184],{"class":279,"line":324},[277,88179,312],{"class":311},[277,88181,39298],{"class":283},[277,88183,318],{"class":311},[277,88185,39303],{"class":301},[277,88187,88188],{"class":279,"line":331},[277,88189,328],{"emptyLinePlaceholder":327},[277,88191,88192,88194,88196,88198,88200],{"class":279,"line":346},[277,88193,405],{"class":311},[277,88195,11021],{"class":356},[277,88197,340],{"class":311},[277,88199,413],{"class":291},[277,88201,2104],{"class":283},[277,88203,88204,88206,88208,88210,88212,88214,88216],{"class":279,"line":360},[277,88205,2109],{"class":283},[277,88207,39326],{"class":301},[277,88209,22620],{"class":283},[277,88211,2129],{"class":301},[277,88213,27262],{"class":283},[277,88215,39335],{"class":301},[277,88217,2132],{"class":283},[277,88219,88220,88222,88224,88226,88228,88230,88232],{"class":279,"line":371},[277,88221,2109],{"class":283},[277,88223,39344],{"class":301},[277,88225,22620],{"class":283},[277,88227,2154],{"class":301},[277,88229,27262],{"class":283},[277,88231,39353],{"class":301},[277,88233,2179],{"class":283},[277,88235,88236],{"class":279,"line":381},[277,88237,2184],{"class":283},[277,88239,88240,88242,88244],{"class":279,"line":391},[277,88241,785],{"class":283},[277,88243,288],{"class":287},[277,88245,305],{"class":283},[277,88247,88248],{"class":279,"line":397},[277,88249,328],{"emptyLinePlaceholder":327},[277,88251,88252,88254,88256],{"class":279,"line":402},[277,88253,284],{"class":283},[277,88255,802],{"class":287},[277,88257,305],{"class":283},[277,88259,88261,88263,88265,88267,88269,88271,88273,88275,88277,88279,88281,88283],{"class":88260,"line":436},[279,9398],[277,88262,810],{"class":283},[277,88264,22608],{"class":287},[277,88266,12785],{"class":291},[277,88268,298],{"class":283},[277,88270,12790],{"class":301},[277,88272,4317],{"class":291},[277,88274,298],{"class":283},[277,88276,12797],{"class":301},[277,88278,27117],{"class":291},[277,88280,298],{"class":283},[277,88282,21518],{"class":301},[277,88284,4325],{"class":283},[277,88286,88287,88289,88291],{"class":279,"line":456},[277,88288,785],{"class":283},[277,88290,802],{"class":287},[277,88292,305],{"class":283},[267,88294,88296],{"className":269,"code":39417,"filename":971,"highlights":88295,"language":272,"meta":273,"style":273},[520],[16,88297,88298,88306,88316,88320,88328,88332,88338,88344,88348,88364,88380,88384,88388,88392,88396,88404,88408,88416,88443],{"__ignoreMap":273},[277,88299,88300,88302,88304],{"class":279,"line":280},[277,88301,284],{"class":283},[277,88303,288],{"class":287},[277,88305,305],{"class":283},[277,88307,88308,88310,88312,88314],{"class":279,"line":308},[277,88309,312],{"class":311},[277,88311,39298],{"class":283},[277,88313,318],{"class":311},[277,88315,39303],{"class":301},[277,88317,88318],{"class":279,"line":324},[277,88319,328],{"emptyLinePlaceholder":327},[277,88321,88322,88324,88326],{"class":279,"line":331},[277,88323,1057],{"class":311},[277,88325,1060],{"class":311},[277,88327,343],{"class":283},[277,88329,88330],{"class":279,"line":346},[277,88331,39455],{"class":283},[277,88333,88334,88336],{"class":279,"line":360},[277,88335,1086],{"class":291},[277,88337,473],{"class":283},[277,88339,88340,88342],{"class":279,"line":371},[277,88341,1093],{"class":311},[277,88343,343],{"class":283},[277,88345,88346],{"class":279,"line":381},[277,88347,22894],{"class":283},[277,88349,88350,88352,88354,88356,88358,88360,88362],{"class":279,"line":391},[277,88351,2664],{"class":283},[277,88353,39326],{"class":301},[277,88355,22620],{"class":283},[277,88357,2129],{"class":301},[277,88359,27262],{"class":283},[277,88361,39335],{"class":301},[277,88363,2132],{"class":283},[277,88365,88366,88368,88370,88372,88374,88376,88378],{"class":279,"line":397},[277,88367,2664],{"class":283},[277,88369,39344],{"class":301},[277,88371,22620],{"class":283},[277,88373,2154],{"class":301},[277,88375,27262],{"class":283},[277,88377,39353],{"class":301},[277,88379,2179],{"class":283},[277,88381,88382],{"class":279,"line":402},[277,88383,2725],{"class":283},[277,88385,88386],{"class":279,"line":436},[277,88387,1126],{"class":283},[277,88389,88390],{"class":279,"line":456},[277,88391,542],{"class":283},[277,88393,88394],{"class":279,"line":461},[277,88395,394],{"class":283},[277,88397,88398,88400,88402],{"class":279,"line":476},[277,88399,785],{"class":283},[277,88401,288],{"class":287},[277,88403,305],{"class":283},[277,88405,88406],{"class":279,"line":500},[277,88407,328],{"emptyLinePlaceholder":327},[277,88409,88410,88412,88414],{"class":279,"line":505},[277,88411,284],{"class":283},[277,88413,802],{"class":287},[277,88415,305],{"class":283},[277,88417,88419,88421,88423,88425,88427,88429,88431,88433,88435,88437,88439,88441],{"class":88418,"line":520},[279,9398],[277,88420,810],{"class":283},[277,88422,22608],{"class":287},[277,88424,12785],{"class":291},[277,88426,298],{"class":283},[277,88428,12790],{"class":301},[277,88430,4317],{"class":291},[277,88432,298],{"class":283},[277,88434,12797],{"class":301},[277,88436,27117],{"class":291},[277,88438,298],{"class":283},[277,88440,21518],{"class":301},[277,88442,4325],{"class":283},[277,88444,88445,88447,88449],{"class":279,"line":539},[277,88446,785],{"class":283},[277,88448,802],{"class":287},[277,88450,305],{"class":283},[192,88452,39578],{"id":39577},[267,88454,88456],{"className":269,"code":39581,"filename":271,"highlights":88455,"language":272,"meta":273,"style":273},[505,539],[16,88457,88458,88468,88478,88482,88494,88498,88506,88514,88518,88530,88542,88546,88550,88554,88562,88566,88574,88595,88607,88628,88632,88640,88648],{"__ignoreMap":273},[277,88459,88460,88462,88464,88466],{"class":279,"line":280},[277,88461,284],{"class":283},[277,88463,288],{"class":287},[277,88465,292],{"class":291},[277,88467,305],{"class":283},[277,88469,88470,88472,88474,88476],{"class":279,"line":308},[277,88471,312],{"class":311},[277,88473,11006],{"class":283},[277,88475,318],{"class":311},[277,88477,321],{"class":301},[277,88479,88480],{"class":279,"line":324},[277,88481,328],{"emptyLinePlaceholder":327},[277,88483,88484,88486,88488,88490,88492],{"class":279,"line":331},[277,88485,405],{"class":311},[277,88487,39615],{"class":356},[277,88489,340],{"class":311},[277,88491,413],{"class":291},[277,88493,2104],{"class":283},[277,88495,88496],{"class":279,"line":346},[277,88497,39626],{"class":283},[277,88499,88500,88502,88504],{"class":279,"line":360},[277,88501,39631],{"class":283},[277,88503,39634],{"class":301},[277,88505,1077],{"class":283},[277,88507,88508,88510,88512],{"class":279,"line":371},[277,88509,39641],{"class":283},[277,88511,39644],{"class":301},[277,88513,1077],{"class":283},[277,88515,88516],{"class":279,"line":381},[277,88517,39651],{"class":283},[277,88519,88520,88522,88524,88526,88528],{"class":279,"line":391},[277,88521,39656],{"class":283},[277,88523,39659],{"class":301},[277,88525,22620],{"class":283},[277,88527,38794],{"class":301},[277,88529,2132],{"class":283},[277,88531,88532,88534,88536,88538,88540],{"class":279,"line":397},[277,88533,39656],{"class":283},[277,88535,39672],{"class":301},[277,88537,22620],{"class":283},[277,88539,39677],{"class":301},[277,88541,2179],{"class":283},[277,88543,88544],{"class":279,"line":402},[277,88545,39684],{"class":283},[277,88547,88548],{"class":279,"line":436},[277,88549,542],{"class":283},[277,88551,88552],{"class":279,"line":456},[277,88553,2184],{"class":283},[277,88555,88556,88558,88560],{"class":279,"line":461},[277,88557,785],{"class":283},[277,88559,288],{"class":287},[277,88561,305],{"class":283},[277,88563,88564],{"class":279,"line":476},[277,88565,328],{"emptyLinePlaceholder":327},[277,88567,88568,88570,88572],{"class":279,"line":500},[277,88569,284],{"class":283},[277,88571,802],{"class":287},[277,88573,305],{"class":283},[277,88575,88577,88579,88581,88583,88585,88587,88589,88591,88593],{"class":88576,"line":505},[279,9398],[277,88578,810],{"class":283},[277,88580,4121],{"class":287},[277,88582,12785],{"class":291},[277,88584,298],{"class":283},[277,88586,39726],{"class":301},[277,88588,4317],{"class":291},[277,88590,298],{"class":283},[277,88592,39733],{"class":301},[277,88594,305],{"class":283},[277,88596,88597,88599,88601,88603,88605],{"class":279,"line":520},[277,88598,829],{"class":283},[277,88600,192],{"class":287},[277,88602,39744],{"class":283},[277,88604,192],{"class":287},[277,88606,305],{"class":283},[277,88608,88610,88612,88614,88616,88618,88620,88622,88624,88626],{"class":88609,"line":539},[279,9398],[277,88611,829],{"class":283},[277,88613,41],{"class":287},[277,88615,12785],{"class":291},[277,88617,298],{"class":283},[277,88619,39762],{"class":301},[277,88621,4317],{"class":291},[277,88623,298],{"class":283},[277,88625,38972],{"class":301},[277,88627,305],{"class":283},[277,88629,88630],{"class":279,"line":545},[277,88631,39775],{"class":283},[277,88633,88634,88636,88638],{"class":279,"line":550},[277,88635,922],{"class":283},[277,88637,41],{"class":287},[277,88639,305],{"class":283},[277,88641,88642,88644,88646],{"class":279,"line":578},[277,88643,954],{"class":283},[277,88645,4121],{"class":287},[277,88647,305],{"class":283},[277,88649,88650,88652,88654],{"class":279,"line":583},[277,88651,785],{"class":283},[277,88653,802],{"class":287},[277,88655,305],{"class":283},[267,88657,88659],{"className":269,"code":39802,"filename":971,"highlights":88658,"language":272,"meta":273,"style":273},[550,583],[16,88660,88661,88669,88677,88683,88689,88693,88697,88705,88713,88717,88729,88741,88745,88749,88753,88757,88761,88765,88773,88777,88785,88806,88818,88839,88843,88851,88859],{"__ignoreMap":273},[277,88662,88663,88665,88667],{"class":279,"line":280},[277,88664,284],{"class":283},[277,88666,288],{"class":287},[277,88668,305],{"class":283},[277,88670,88671,88673,88675],{"class":279,"line":308},[277,88672,1057],{"class":311},[277,88674,1060],{"class":311},[277,88676,343],{"class":283},[277,88678,88679,88681],{"class":279,"line":324},[277,88680,1086],{"class":291},[277,88682,473],{"class":283},[277,88684,88685,88687],{"class":279,"line":331},[277,88686,1093],{"class":311},[277,88688,343],{"class":283},[277,88690,88691],{"class":279,"line":346},[277,88692,39838],{"class":283},[277,88694,88695],{"class":279,"line":360},[277,88696,39843],{"class":283},[277,88698,88699,88701,88703],{"class":279,"line":371},[277,88700,39848],{"class":283},[277,88702,39634],{"class":301},[277,88704,1077],{"class":283},[277,88706,88707,88709,88711],{"class":279,"line":381},[277,88708,39857],{"class":283},[277,88710,39644],{"class":301},[277,88712,1077],{"class":283},[277,88714,88715],{"class":279,"line":391},[277,88716,39866],{"class":283},[277,88718,88719,88721,88723,88725,88727],{"class":279,"line":397},[277,88720,39871],{"class":283},[277,88722,39659],{"class":301},[277,88724,22620],{"class":283},[277,88726,38794],{"class":301},[277,88728,2132],{"class":283},[277,88730,88731,88733,88735,88737,88739],{"class":279,"line":402},[277,88732,39871],{"class":283},[277,88734,39672],{"class":301},[277,88736,22620],{"class":283},[277,88738,39677],{"class":301},[277,88740,2179],{"class":283},[277,88742,88743],{"class":279,"line":436},[277,88744,39896],{"class":283},[277,88746,88747],{"class":279,"line":456},[277,88748,8868],{"class":283},[277,88750,88751],{"class":279,"line":461},[277,88752,2725],{"class":283},[277,88754,88755],{"class":279,"line":476},[277,88756,1126],{"class":283},[277,88758,88759],{"class":279,"line":500},[277,88760,542],{"class":283},[277,88762,88763],{"class":279,"line":505},[277,88764,394],{"class":283},[277,88766,88767,88769,88771],{"class":279,"line":520},[277,88768,785],{"class":283},[277,88770,288],{"class":287},[277,88772,305],{"class":283},[277,88774,88775],{"class":279,"line":539},[277,88776,328],{"emptyLinePlaceholder":327},[277,88778,88779,88781,88783],{"class":279,"line":545},[277,88780,284],{"class":283},[277,88782,802],{"class":287},[277,88784,305],{"class":283},[277,88786,88788,88790,88792,88794,88796,88798,88800,88802,88804],{"class":88787,"line":550},[279,9398],[277,88789,810],{"class":283},[277,88791,4121],{"class":287},[277,88793,12785],{"class":291},[277,88795,298],{"class":283},[277,88797,39726],{"class":301},[277,88799,4317],{"class":291},[277,88801,298],{"class":283},[277,88803,39733],{"class":301},[277,88805,305],{"class":283},[277,88807,88808,88810,88812,88814,88816],{"class":279,"line":578},[277,88809,829],{"class":283},[277,88811,192],{"class":287},[277,88813,39744],{"class":283},[277,88815,192],{"class":287},[277,88817,305],{"class":283},[277,88819,88821,88823,88825,88827,88829,88831,88833,88835,88837],{"class":88820,"line":583},[279,9398],[277,88822,829],{"class":283},[277,88824,41],{"class":287},[277,88826,12785],{"class":291},[277,88828,298],{"class":283},[277,88830,39762],{"class":301},[277,88832,4317],{"class":291},[277,88834,298],{"class":283},[277,88836,38972],{"class":301},[277,88838,305],{"class":283},[277,88840,88841],{"class":279,"line":588},[277,88842,39775],{"class":283},[277,88844,88845,88847,88849],{"class":279,"line":606},[277,88846,922],{"class":283},[277,88848,41],{"class":287},[277,88850,305],{"class":283},[277,88852,88853,88855,88857],{"class":279,"line":614},[277,88854,954],{"class":283},[277,88856,4121],{"class":287},[277,88858,305],{"class":283},[277,88860,88861,88863,88865],{"class":279,"line":625},[277,88862,785],{"class":283},[277,88864,802],{"class":287},[277,88866,305],{"class":283},[30,88868,40022,88869],{"id":40021},[16,88870,24880],{},[192,88872,20821,88873,37095,88875,40032],{"id":40027},[16,88874,37094],{},[16,88876,1789],{},[267,88878,88880],{"className":269,"code":40035,"filename":34211,"highlights":88879,"language":272,"meta":273,"style":273},[280],[16,88881,88882,88917,88921],{"__ignoreMap":273},[277,88883,88885,88887,88889,88891,88893,88895,88897,88899,88901,88903,88905,88907,88909,88911,88913,88915],{"class":88884,"line":280},[279,9398],[277,88886,284],{"class":283},[277,88888,41],{"class":287},[277,88890,12785],{"class":311},[277,88892,298],{"class":283},[277,88894,866],{"class":301},[277,88896,40054],{"class":283},[277,88898,38440],{"class":311},[277,88900,38354],{"class":283},[277,88902,866],{"class":301},[277,88904,6244],{"class":283},[277,88906,1789],{"class":291},[277,88908,298],{"class":283},[277,88910,866],{"class":301},[277,88912,37094],{"class":283},[277,88914,866],{"class":301},[277,88916,305],{"class":283},[277,88918,88919],{"class":279,"line":308},[277,88920,40079],{"class":283},[277,88922,88923,88925,88927],{"class":279,"line":324},[277,88924,785],{"class":283},[277,88926,41],{"class":287},[277,88928,305],{"class":283},[21,88930,40090],{},[3111,88932,88933],{},[21,88934,40095,88935,40098],{},[16,88936,38455],{},[192,88938,40102,88939,1697,88941,40107],{"id":40101},[16,88940,7538],{},[16,88942,24880],{},[267,88944,88946],{"className":269,"code":40110,"filename":28344,"highlights":88945,"language":272,"meta":273,"style":273},[280],[16,88947,88948,88993,88997],{"__ignoreMap":273},[277,88949,88951,88953,88955,88957,88959,88961,88963,88965,88967,88969,88971,88973,88975,88977,88979,88981,88983,88985,88987,88989,88991],{"class":88950,"line":280},[279,9398],[277,88952,284],{"class":283},[277,88954,41],{"class":287},[277,88956,12785],{"class":311},[277,88958,298],{"class":283},[277,88960,866],{"class":301},[277,88962,40129],{"class":283},[277,88964,38440],{"class":311},[277,88966,11021],{"class":283},[277,88968,866],{"class":301},[277,88970,834],{"class":311},[277,88972,298],{"class":283},[277,88974,866],{"class":301},[277,88976,40144],{"class":283},[277,88978,866],{"class":301},[277,88980,6244],{"class":283},[277,88982,1789],{"class":291},[277,88984,298],{"class":283},[277,88986,866],{"class":301},[277,88988,40157],{"class":283},[277,88990,866],{"class":301},[277,88992,305],{"class":283},[277,88994,88995],{"class":279,"line":308},[277,88996,40166],{"class":283},[277,88998,88999,89001,89003],{"class":279,"line":324},[277,89000,785],{"class":283},[277,89002,41],{"class":287},[277,89004,305],{"class":283},[3111,89006,89007],{},[21,89008,40179,89009,40182],{},[16,89010,1732],{},[192,89012,40186,89013],{"id":40185},[16,89014,1732],{},[21,89016,40191],{},[192,89018,26774,89019,40197],{"id":40194},[16,89020,1789],{},[21,89022,40200,89023,40203],{},[16,89024,1789],{},[30,89026,40207],{"id":40206},[38,89028,89029,89035,89039,89041,89045],{},[41,89030,20777,89031,40214,89033,104],{},[16,89032,22042],{},[16,89034,37003],{},[41,89036,40219,89037,104],{},[16,89038,1732],{},[41,89040,40224],{},[41,89042,40227,89043,40230],{},[16,89044,24880],{},[41,89046,40233],{},[30,89048,17671],{"id":17670},[21,89050,89051,40240],{},[16,89052,24880],{},[21,89054,40243],{},[38,89056,89057,89061,89065],{},[41,89058,89059,40250],{},[16,89060,1789],{},[41,89062,40253,89063],{},[16,89064,1732],{},[41,89066,40258],{},[21,89068,40261],{},[1606,89070,40264],{},{"title":273,"searchDepth":308,"depth":308,"links":89072},[89073,89074,89075,89076,89077,89078,89083,89088,89094,89095],{"id":20624,"depth":308,"text":20625},{"id":37049,"depth":308,"text":40269},{"id":155,"depth":308,"text":156},{"id":37101,"depth":308,"text":37102},{"id":37353,"depth":308,"text":37354},{"id":37773,"depth":308,"text":40274,"children":89079},[89080,89081,89082],{"id":37780,"depth":324,"text":40277},{"id":38031,"depth":324,"text":38032},{"id":38314,"depth":324,"text":40280},{"id":38703,"depth":308,"text":38704,"children":89084},[89085,89086,89087],{"id":38707,"depth":324,"text":40284},{"id":39262,"depth":324,"text":40286},{"id":39577,"depth":324,"text":39578},{"id":40021,"depth":308,"text":40289,"children":89089},[89090,89091,89092,89093],{"id":40027,"depth":324,"text":40292},{"id":40101,"depth":324,"text":40294},{"id":40185,"depth":324,"text":40296},{"id":40194,"depth":324,"text":40298},{"id":40206,"depth":308,"text":40207},{"id":17670,"depth":308,"text":17671},{"script":89097},[89098],{"type":1632,"key":1633,"data-nuxt-schema-org":327,"nodes":89099},[89100],{"headline":40310,"author":89101,"datePublished":40312,"@type":1640},{"name":1637,"@type":1638},{"updatedAt":40312,"coverCaption":17759,"author":1637,"keywords":89103},[1645,24880,40315,1789,271,971,10645],[89105],{"headline":40310,"author":89106,"datePublished":40312,"@type":1640},{"name":1637,"@type":1638},{"title":36974,"description":40304},[89109,89110,89111,89112],{"tag":20588,"color":20589},{"tag":40325,"color":3168},{"tag":21891,"color":21892},{"tag":9074,"color":9075},{"id":40330,"title":40331,"body":89114,"cover":42171,"coverAlt":42172,"date":42173,"description":42174,"draft":1627,"extension":1628,"head":90781,"locale":1641,"meta":90787,"navigation":327,"path":42188,"schemaOrg":90789,"seo":90792,"series":20582,"seriesDescription":20583,"seriesOrder":308,"seriesTitle":20584,"slug":1656,"stem":42193,"tags":90793,"__hash__":42201},{"type":8,"value":89115,"toc":90762},[89116,89124,89134,89156,89162,89164,89168,89178,89182,89190,89198,89204,89212,89214,89224,89228,89232,89236,89242,89252,89254,89282,89288,89290,89516,89754,89768,89772,89778,89959,90146,90148,90152,90160,90166,90172,90180,90406,90638,90640,90646,90648,90694,90704,90708,90718,90722,90730,90732,90754,90760],[11,89117,89118,225,89120,1697,89122,40344],{"id":40336},[16,89119,7538],{},[16,89121,40341],{},[16,89123,7701],{},[21,89125,40347,89126,225,89128,1697,89130,40354,89132,40358],{},[16,89127,7538],{},[16,89129,40341],{},[16,89131,7701],{},[72,89133,40357],{},[38,89135,89136,89146],{},[41,89137,89138,20699,89144,40372],{},[72,89139,89140,5245,89142],{},[16,89141,7538],{},[16,89143,40341],{},[3292,89145,40371],{},[41,89147,89148,20699,89152,40382,89154,104],{},[72,89149,89150],{},[16,89151,7701],{},[3292,89153,40381],{},[16,89155,40385],{},[21,89157,40388,89158,12494,89160,40395],{},[72,89159,40391],{},[72,89161,40394],{},[30,89163,40399],{"id":40398},[192,89165,89166],{"id":7538},[16,89167,7538],{},[21,89169,40406,89170,40410,89172,40413,89174,40416,89176,104],{},[72,89171,40409],{},[16,89173,2149],{},[16,89175,2123],{},[72,89177,40419],{},[21,89179,89180],{},[72,89181,40424],{},[38,89183,89184,89186,89188],{},[41,89185,40429],{},[41,89187,40432],{},[41,89189,40435],{},[3111,89191,89192],{},[21,89193,89194,40442,89196,40446],{},[16,89195,7538],{},[72,89197,40445],{},[192,89199,89200,1697,89202],{"id":40449},[16,89201,40341],{},[16,89203,40454],{},[21,89205,40457,89206,40461,89208,118,89210,104],{},[72,89207,40460],{},[16,89209,7538],{},[16,89211,40454],{},[21,89213,40468],{},[38,89215,89216,89220],{},[41,89217,40473,89218,40477],{},[72,89219,40476],{},[41,89221,40480,89222,104],{},[72,89223,40483],{},[192,89225,89226],{"id":7701},[16,89227,7701],{},[21,89229,40490,89230,40494],{},[72,89231,40493],{},[21,89233,89234],{},[72,89235,40424],{},[38,89237,89238,89240],{},[41,89239,40503],{},[41,89241,40506],{},[3111,89243,89244],{},[21,89245,89246,10969,89248,40518],{},[16,89247,7701],{},[72,89249,40515,89250],{},[16,89251,26159],{},[30,89253,40522],{"id":40521},[38,89255,89256,89264,89274],{},[41,89257,20777,89258,40531,89262,40535],{},[72,89259,89260],{},[16,89261,7538],{},[72,89263,40534],{},[41,89265,20777,89266,40531,89270,40545,89272,104],{},[72,89267,89268],{},[16,89269,7701],{},[72,89271,40544],{},[72,89273,40548],{},[41,89275,20777,89276,40555,89280,104],{},[72,89277,89278],{},[16,89279,40341],{},[16,89281,7538],{},[30,89283,40561,89284,28155,89286,19],{"id":40560},[16,89285,7538],{},[16,89287,40341],{},[21,89289,40568],{},[267,89291,89293],{"className":269,"code":40571,"filename":271,"highlights":89292,"language":272,"meta":273,"style":273},[371,500,550],[16,89294,89295,89305,89317,89321,89337,89341,89349,89360,89364,89372,89376,89384,89398,89402,89410,89414,89429,89441,89453,89461,89465,89476,89488,89500,89508],{"__ignoreMap":273},[277,89296,89297,89299,89301,89303],{"class":279,"line":280},[277,89298,284],{"class":283},[277,89300,288],{"class":287},[277,89302,292],{"class":291},[277,89304,305],{"class":283},[277,89306,89307,89309,89311,89313,89315],{"class":279,"line":308},[277,89308,312],{"class":311},[277,89310,11006],{"class":283},[277,89312,318],{"class":311},[277,89314,18148],{"class":301},[277,89316,18151],{"class":283},[277,89318,89319],{"class":279,"line":324},[277,89320,328],{"emptyLinePlaceholder":327},[277,89322,89323,89325,89327,89329,89331,89333,89335],{"class":279,"line":331},[277,89324,405],{"class":311},[277,89326,40607],{"class":356},[277,89328,340],{"class":311},[277,89330,413],{"class":291},[277,89332,448],{"class":283},[277,89334,2123],{"class":356},[277,89336,18277],{"class":283},[277,89338,89339],{"class":279,"line":346},[277,89340,328],{"emptyLinePlaceholder":327},[277,89342,89343,89345,89347],{"class":279,"line":360},[277,89344,2460],{"class":311},[277,89346,40628],{"class":291},[277,89348,473],{"class":283},[277,89350,89352,89354,89356,89358],{"class":89351,"line":371},[279,9398],[277,89353,40636],{"class":283},[277,89355,298],{"class":311},[277,89357,2288],{"class":311},[277,89359,40643],{"class":283},[277,89361,89362],{"class":279,"line":381},[277,89363,394],{"class":283},[277,89365,89366,89368,89370],{"class":279,"line":391},[277,89367,785],{"class":283},[277,89369,288],{"class":287},[277,89371,305],{"class":283},[277,89373,89374],{"class":279,"line":397},[277,89375,328],{"emptyLinePlaceholder":327},[277,89377,89378,89380,89382],{"class":279,"line":402},[277,89379,284],{"class":283},[277,89381,802],{"class":287},[277,89383,305],{"class":283},[277,89385,89386,89388,89390,89392,89394,89396],{"class":279,"line":436},[277,89387,810],{"class":283},[277,89389,4267],{"class":287},[277,89391,4278],{"class":291},[277,89393,298],{"class":283},[277,89395,40680],{"class":301},[277,89397,305],{"class":283},[277,89399,89400],{"class":279,"line":456},[277,89401,40687],{"class":283},[277,89403,89404,89406,89408],{"class":279,"line":461},[277,89405,954],{"class":283},[277,89407,4267],{"class":287},[277,89409,305],{"class":283},[277,89411,89412],{"class":279,"line":476},[277,89413,328],{"emptyLinePlaceholder":327},[277,89415,89417,89419,89421,89423,89425,89427],{"class":89416,"line":500},[279,9398],[277,89418,810],{"class":283},[277,89420,4121],{"class":287},[277,89422,834],{"class":291},[277,89424,298],{"class":283},[277,89426,40713],{"class":301},[277,89428,305],{"class":283},[277,89430,89431,89433,89435,89437,89439],{"class":279,"line":505},[277,89432,829],{"class":283},[277,89434,30],{"class":287},[277,89436,40724],{"class":283},[277,89438,30],{"class":287},[277,89440,305],{"class":283},[277,89442,89443,89445,89447,89449,89451],{"class":279,"line":520},[277,89444,829],{"class":283},[277,89446,21],{"class":287},[277,89448,40737],{"class":283},[277,89450,21],{"class":287},[277,89452,305],{"class":283},[277,89454,89455,89457,89459],{"class":279,"line":539},[277,89456,954],{"class":283},[277,89458,4121],{"class":287},[277,89460,305],{"class":283},[277,89462,89463],{"class":279,"line":545},[277,89464,328],{"emptyLinePlaceholder":327},[277,89466,89468,89470,89472,89474],{"class":89467,"line":550},[279,9398],[277,89469,810],{"class":283},[277,89471,4121],{"class":287},[277,89473,941],{"class":291},[277,89475,305],{"class":283},[277,89477,89478,89480,89482,89484,89486],{"class":279,"line":578},[277,89479,829],{"class":283},[277,89481,30],{"class":287},[277,89483,40773],{"class":283},[277,89485,30],{"class":287},[277,89487,305],{"class":283},[277,89489,89490,89492,89494,89496,89498],{"class":279,"line":583},[277,89491,829],{"class":283},[277,89493,21],{"class":287},[277,89495,40786],{"class":283},[277,89497,21],{"class":287},[277,89499,305],{"class":283},[277,89501,89502,89504,89506],{"class":279,"line":588},[277,89503,954],{"class":283},[277,89505,4121],{"class":287},[277,89507,305],{"class":283},[277,89509,89510,89512,89514],{"class":279,"line":606},[277,89511,785],{"class":283},[277,89513,802],{"class":287},[277,89515,305],{"class":283},[267,89517,89519],{"className":269,"code":40809,"filename":971,"highlights":89518,"language":272,"meta":273,"style":273},[397,550,614],[16,89520,89521,89529,89537,89543,89549,89557,89561,89565,89569,89575,89590,89594,89598,89602,89610,89614,89622,89636,89640,89648,89652,89667,89679,89691,89699,89703,89714,89726,89738,89746],{"__ignoreMap":273},[277,89522,89523,89525,89527],{"class":279,"line":280},[277,89524,284],{"class":283},[277,89526,288],{"class":287},[277,89528,305],{"class":283},[277,89530,89531,89533,89535],{"class":279,"line":308},[277,89532,1057],{"class":311},[277,89534,1060],{"class":311},[277,89536,343],{"class":283},[277,89538,89539,89541],{"class":279,"line":324},[277,89540,1086],{"class":291},[277,89542,473],{"class":283},[277,89544,89545,89547],{"class":279,"line":331},[277,89546,1093],{"class":311},[277,89548,343],{"class":283},[277,89550,89551,89553,89555],{"class":279,"line":346},[277,89552,40845],{"class":283},[277,89554,2123],{"class":356},[277,89556,1077],{"class":283},[277,89558,89559],{"class":279,"line":360},[277,89560,18478],{"class":283},[277,89562,89563],{"class":279,"line":371},[277,89564,1131],{"class":283},[277,89566,89567],{"class":279,"line":381},[277,89568,1140],{"class":283},[277,89570,89571,89573],{"class":279,"line":391},[277,89572,40866],{"class":291},[277,89574,473],{"class":283},[277,89576,89578,89580,89582,89584,89586,89588],{"class":89577,"line":397},[279,9398],[277,89579,1212],{"class":356},[277,89581,40876],{"class":283},[277,89583,298],{"class":311},[277,89585,2288],{"class":311},[277,89587,1341],{"class":356},[277,89589,40885],{"class":283},[277,89591,89592],{"class":279,"line":402},[277,89593,7016],{"class":283},[277,89595,89596],{"class":279,"line":436},[277,89597,1131],{"class":283},[277,89599,89600],{"class":279,"line":456},[277,89601,18255],{"class":283},[277,89603,89604,89606,89608],{"class":279,"line":461},[277,89605,785],{"class":283},[277,89607,288],{"class":287},[277,89609,305],{"class":283},[277,89611,89612],{"class":279,"line":476},[277,89613,328],{"emptyLinePlaceholder":327},[277,89615,89616,89618,89620],{"class":279,"line":500},[277,89617,284],{"class":283},[277,89619,802],{"class":287},[277,89621,305],{"class":283},[277,89623,89624,89626,89628,89630,89632,89634],{"class":279,"line":505},[277,89625,810],{"class":283},[277,89627,4267],{"class":287},[277,89629,4278],{"class":291},[277,89631,298],{"class":283},[277,89633,40680],{"class":301},[277,89635,305],{"class":283},[277,89637,89638],{"class":279,"line":520},[277,89639,40687],{"class":283},[277,89641,89642,89644,89646],{"class":279,"line":539},[277,89643,954],{"class":283},[277,89645,4267],{"class":287},[277,89647,305],{"class":283},[277,89649,89650],{"class":279,"line":545},[277,89651,328],{"emptyLinePlaceholder":327},[277,89653,89655,89657,89659,89661,89663,89665],{"class":89654,"line":550},[279,9398],[277,89656,810],{"class":283},[277,89658,4121],{"class":287},[277,89660,834],{"class":291},[277,89662,298],{"class":283},[277,89664,40713],{"class":301},[277,89666,305],{"class":283},[277,89668,89669,89671,89673,89675,89677],{"class":279,"line":578},[277,89670,829],{"class":283},[277,89672,30],{"class":287},[277,89674,40724],{"class":283},[277,89676,30],{"class":287},[277,89678,305],{"class":283},[277,89680,89681,89683,89685,89687,89689],{"class":279,"line":583},[277,89682,829],{"class":283},[277,89684,21],{"class":287},[277,89686,40737],{"class":283},[277,89688,21],{"class":287},[277,89690,305],{"class":283},[277,89692,89693,89695,89697],{"class":279,"line":588},[277,89694,954],{"class":283},[277,89696,4121],{"class":287},[277,89698,305],{"class":283},[277,89700,89701],{"class":279,"line":606},[277,89702,328],{"emptyLinePlaceholder":327},[277,89704,89706,89708,89710,89712],{"class":89705,"line":614},[279,9398],[277,89707,810],{"class":283},[277,89709,4121],{"class":287},[277,89711,941],{"class":291},[277,89713,305],{"class":283},[277,89715,89716,89718,89720,89722,89724],{"class":279,"line":625},[277,89717,829],{"class":283},[277,89719,30],{"class":287},[277,89721,40773],{"class":283},[277,89723,30],{"class":287},[277,89725,305],{"class":283},[277,89727,89728,89730,89732,89734,89736],{"class":279,"line":637},[277,89729,829],{"class":283},[277,89731,21],{"class":287},[277,89733,40786],{"class":283},[277,89735,21],{"class":287},[277,89737,305],{"class":283},[277,89739,89740,89742,89744],{"class":279,"line":646},[277,89741,954],{"class":283},[277,89743,4121],{"class":287},[277,89745,305],{"class":283},[277,89747,89748,89750,89752],{"class":279,"line":668},[277,89749,785],{"class":283},[277,89751,802],{"class":287},[277,89753,305],{"class":283},[3111,89755,89756],{},[21,89757,17879,89758,41057,89760,16974,89762,41063,89764,41067,89766,104],{},[16,89759,41056],{},[72,89761,41060],{},[16,89763,7538],{},[16,89765,41066],{},[16,89767,16666],{},[30,89769,41073,89770,19],{"id":41072},[16,89771,7701],{},[21,89773,41078,89774,41083],{},[72,89775,89776],{},[16,89777,7701],{},[267,89779,89781],{"className":269,"code":41086,"filename":271,"highlights":89780,"language":272,"meta":273,"style":273},[331,436],[16,89782,89783,89793,89805,89809,89826,89834,89838,89846,89860,89864,89872,89876,89897,89909,89917,89931,89935,89943,89951],{"__ignoreMap":273},[277,89784,89785,89787,89789,89791],{"class":279,"line":280},[277,89786,284],{"class":283},[277,89788,288],{"class":287},[277,89790,292],{"class":291},[277,89792,305],{"class":283},[277,89794,89795,89797,89799,89801,89803],{"class":279,"line":308},[277,89796,312],{"class":311},[277,89798,11006],{"class":283},[277,89800,318],{"class":311},[277,89802,18148],{"class":301},[277,89804,18151],{"class":283},[277,89806,89807],{"class":279,"line":324},[277,89808,328],{"emptyLinePlaceholder":327},[277,89810,89812,89814,89816,89818,89820,89822,89824],{"class":89811,"line":331},[279,9398],[277,89813,405],{"class":311},[277,89815,18266],{"class":356},[277,89817,340],{"class":311},[277,89819,413],{"class":291},[277,89821,448],{"class":283},[277,89823,2123],{"class":356},[277,89825,18277],{"class":283},[277,89827,89828,89830,89832],{"class":279,"line":346},[277,89829,785],{"class":283},[277,89831,288],{"class":287},[277,89833,305],{"class":283},[277,89835,89836],{"class":279,"line":360},[277,89837,328],{"emptyLinePlaceholder":327},[277,89839,89840,89842,89844],{"class":279,"line":371},[277,89841,284],{"class":283},[277,89843,802],{"class":287},[277,89845,305],{"class":283},[277,89847,89848,89850,89852,89854,89856,89858],{"class":279,"line":381},[277,89849,810],{"class":283},[277,89851,4267],{"class":287},[277,89853,4278],{"class":291},[277,89855,298],{"class":283},[277,89857,18700],{"class":301},[277,89859,305],{"class":283},[277,89861,89862],{"class":279,"line":391},[277,89863,41171],{"class":283},[277,89865,89866,89868,89870],{"class":279,"line":397},[277,89867,954],{"class":283},[277,89869,4267],{"class":287},[277,89871,305],{"class":283},[277,89873,89874],{"class":279,"line":402},[277,89875,328],{"emptyLinePlaceholder":327},[277,89877,89879,89881,89883,89885,89887,89889,89891,89893,89895],{"class":89878,"line":436},[279,9398],[277,89880,810],{"class":283},[277,89882,21481],{"class":287},[277,89884,41193],{"class":291},[277,89886,298],{"class":283},[277,89888,18724],{"class":301},[277,89890,816],{"class":291},[277,89892,298],{"class":283},[277,89894,6417],{"class":301},[277,89896,305],{"class":283},[277,89898,89899,89901,89903,89905,89907],{"class":279,"line":456},[277,89900,829],{"class":283},[277,89902,192],{"class":287},[277,89904,41214],{"class":283},[277,89906,192],{"class":287},[277,89908,305],{"class":283},[277,89910,89911,89913,89915],{"class":279,"line":461},[277,89912,829],{"class":283},[277,89914,3875],{"class":287},[277,89916,305],{"class":283},[277,89918,89919,89921,89923,89925,89927,89929],{"class":279,"line":476},[277,89920,879],{"class":283},[277,89922,18041],{"class":287},[277,89924,4270],{"class":291},[277,89926,298],{"class":283},[277,89928,29189],{"class":301},[277,89930,4325],{"class":283},[277,89932,89933],{"class":279,"line":500},[277,89934,41245],{"class":283},[277,89936,89937,89939,89941],{"class":279,"line":505},[277,89938,922],{"class":283},[277,89940,3875],{"class":287},[277,89942,305],{"class":283},[277,89944,89945,89947,89949],{"class":279,"line":520},[277,89946,954],{"class":283},[277,89948,21481],{"class":287},[277,89950,305],{"class":283},[277,89952,89953,89955,89957],{"class":279,"line":539},[277,89954,785],{"class":283},[277,89956,802],{"class":287},[277,89958,305],{"class":283},[267,89960,89962],{"className":269,"code":41272,"filename":971,"highlights":89961,"language":272,"meta":273,"style":273},[346,500],[16,89963,89964,89972,89980,89986,89992,90001,90005,90009,90013,90021,90025,90033,90047,90051,90059,90063,90084,90096,90104,90118,90122,90130,90138],{"__ignoreMap":273},[277,89965,89966,89968,89970],{"class":279,"line":280},[277,89967,284],{"class":283},[277,89969,288],{"class":287},[277,89971,305],{"class":283},[277,89973,89974,89976,89978],{"class":279,"line":308},[277,89975,1057],{"class":311},[277,89977,1060],{"class":311},[277,89979,343],{"class":283},[277,89981,89982,89984],{"class":279,"line":324},[277,89983,1086],{"class":291},[277,89985,473],{"class":283},[277,89987,89988,89990],{"class":279,"line":331},[277,89989,1093],{"class":311},[277,89991,343],{"class":283},[277,89993,89995,89997,89999],{"class":89994,"line":346},[279,9398],[277,89996,18831],{"class":283},[277,89998,2123],{"class":356},[277,90000,1077],{"class":283},[277,90002,90003],{"class":279,"line":360},[277,90004,18478],{"class":283},[277,90006,90007],{"class":279,"line":371},[277,90008,1131],{"class":283},[277,90010,90011],{"class":279,"line":381},[277,90012,18255],{"class":283},[277,90014,90015,90017,90019],{"class":279,"line":391},[277,90016,785],{"class":283},[277,90018,288],{"class":287},[277,90020,305],{"class":283},[277,90022,90023],{"class":279,"line":397},[277,90024,328],{"emptyLinePlaceholder":327},[277,90026,90027,90029,90031],{"class":279,"line":402},[277,90028,284],{"class":283},[277,90030,802],{"class":287},[277,90032,305],{"class":283},[277,90034,90035,90037,90039,90041,90043,90045],{"class":279,"line":436},[277,90036,810],{"class":283},[277,90038,4267],{"class":287},[277,90040,4278],{"class":291},[277,90042,298],{"class":283},[277,90044,18700],{"class":301},[277,90046,305],{"class":283},[277,90048,90049],{"class":279,"line":456},[277,90050,41171],{"class":283},[277,90052,90053,90055,90057],{"class":279,"line":461},[277,90054,954],{"class":283},[277,90056,4267],{"class":287},[277,90058,305],{"class":283},[277,90060,90061],{"class":279,"line":476},[277,90062,328],{"emptyLinePlaceholder":327},[277,90064,90066,90068,90070,90072,90074,90076,90078,90080,90082],{"class":90065,"line":500},[279,9398],[277,90067,810],{"class":283},[277,90069,21481],{"class":287},[277,90071,41193],{"class":291},[277,90073,298],{"class":283},[277,90075,18724],{"class":301},[277,90077,816],{"class":291},[277,90079,298],{"class":283},[277,90081,6417],{"class":301},[277,90083,305],{"class":283},[277,90085,90086,90088,90090,90092,90094],{"class":279,"line":505},[277,90087,829],{"class":283},[277,90089,192],{"class":287},[277,90091,41214],{"class":283},[277,90093,192],{"class":287},[277,90095,305],{"class":283},[277,90097,90098,90100,90102],{"class":279,"line":520},[277,90099,829],{"class":283},[277,90101,3875],{"class":287},[277,90103,305],{"class":283},[277,90105,90106,90108,90110,90112,90114,90116],{"class":279,"line":539},[277,90107,879],{"class":283},[277,90109,18041],{"class":287},[277,90111,4270],{"class":291},[277,90113,298],{"class":283},[277,90115,29189],{"class":301},[277,90117,4325],{"class":283},[277,90119,90120],{"class":279,"line":545},[277,90121,41245],{"class":283},[277,90123,90124,90126,90128],{"class":279,"line":550},[277,90125,922],{"class":283},[277,90127,3875],{"class":287},[277,90129,305],{"class":283},[277,90131,90132,90134,90136],{"class":279,"line":578},[277,90133,954],{"class":283},[277,90135,21481],{"class":287},[277,90137,305],{"class":283},[277,90139,90140,90142,90144],{"class":279,"line":583},[277,90141,785],{"class":283},[277,90143,802],{"class":287},[277,90145,305],{"class":283},[192,90147,41461],{"id":41460},[21,90149,41464,90150,41468],{},[72,90151,41467],{},[38,90153,90154,90156,90158],{},[41,90155,41473],{},[41,90157,41476],{},[41,90159,41479],{},[21,90161,41482,90162,41486,90164,104],{},[72,90163,41485],{},[16,90165,7538],{},[30,90167,90168,41494,90170,41498],{"id":41491},[16,90169,40454],{},[16,90171,41497],{},[21,90173,41501,90174,225,90176,1697,90178,104],{},[3292,90175,3343],{},[3292,90177,3349],{},[3292,90179,41508],{},[267,90181,90183],{"className":269,"code":41511,"filename":271,"highlights":90182,"language":272,"meta":273,"style":273},[331,456,461,476,500],[16,90184,90185,90195,90207,90211,90230,90238,90242,90250,90268,90286,90304,90322,90326,90345,90364,90383,90398],{"__ignoreMap":273},[277,90186,90187,90189,90191,90193],{"class":279,"line":280},[277,90188,284],{"class":283},[277,90190,288],{"class":287},[277,90192,292],{"class":291},[277,90194,305],{"class":283},[277,90196,90197,90199,90201,90203,90205],{"class":279,"line":308},[277,90198,312],{"class":311},[277,90200,11006],{"class":283},[277,90202,318],{"class":311},[277,90204,18148],{"class":301},[277,90206,18151],{"class":283},[277,90208,90209],{"class":279,"line":324},[277,90210,328],{"emptyLinePlaceholder":327},[277,90212,90214,90216,90218,90220,90222,90224,90226,90228],{"class":90213,"line":331},[279,9398],[277,90215,405],{"class":311},[277,90217,5726],{"class":356},[277,90219,340],{"class":311},[277,90221,413],{"class":291},[277,90223,448],{"class":283},[277,90225,41556],{"class":301},[277,90227,41559],{"class":283},[277,90229,41562],{"class":12741},[277,90231,90232,90234,90236],{"class":279,"line":346},[277,90233,785],{"class":283},[277,90235,288],{"class":287},[277,90237,305],{"class":283},[277,90239,90240],{"class":279,"line":360},[277,90241,328],{"emptyLinePlaceholder":327},[277,90243,90244,90246,90248],{"class":279,"line":371},[277,90245,284],{"class":283},[277,90247,802],{"class":287},[277,90249,305],{"class":283},[277,90251,90252,90254,90256,90258,90260,90262,90264,90266],{"class":279,"line":381},[277,90253,810],{"class":283},[277,90255,4267],{"class":287},[277,90257,4278],{"class":291},[277,90259,298],{"class":283},[277,90261,41595],{"class":301},[277,90263,41598],{"class":283},[277,90265,4267],{"class":287},[277,90267,305],{"class":283},[277,90269,90270,90272,90274,90276,90278,90280,90282,90284],{"class":279,"line":391},[277,90271,810],{"class":283},[277,90273,4267],{"class":287},[277,90275,4278],{"class":291},[277,90277,298],{"class":283},[277,90279,41615],{"class":301},[277,90281,41618],{"class":283},[277,90283,4267],{"class":287},[277,90285,305],{"class":283},[277,90287,90288,90290,90292,90294,90296,90298,90300,90302],{"class":279,"line":397},[277,90289,810],{"class":283},[277,90291,4267],{"class":287},[277,90293,4278],{"class":291},[277,90295,298],{"class":283},[277,90297,41635],{"class":301},[277,90299,41638],{"class":283},[277,90301,4267],{"class":287},[277,90303,305],{"class":283},[277,90305,90306,90308,90310,90312,90314,90316,90318,90320],{"class":279,"line":402},[277,90307,810],{"class":283},[277,90309,4267],{"class":287},[277,90311,4278],{"class":291},[277,90313,298],{"class":283},[277,90315,41655],{"class":301},[277,90317,41658],{"class":283},[277,90319,4267],{"class":287},[277,90321,305],{"class":283},[277,90323,90324],{"class":279,"line":436},[277,90325,328],{"emptyLinePlaceholder":327},[277,90327,90329,90331,90333,90335,90337,90339,90341,90343],{"class":90328,"line":456},[279,9398],[277,90330,810],{"class":283},[277,90332,21],{"class":287},[277,90334,834],{"class":291},[277,90336,298],{"class":283},[277,90338,41680],{"class":301},[277,90340,41683],{"class":283},[277,90342,21],{"class":287},[277,90344,305],{"class":283},[277,90346,90348,90350,90352,90354,90356,90358,90360,90362],{"class":90347,"line":461},[279,9398],[277,90349,810],{"class":283},[277,90351,21],{"class":287},[277,90353,861],{"class":291},[277,90355,298],{"class":283},[277,90357,41701],{"class":301},[277,90359,41704],{"class":283},[277,90361,21],{"class":287},[277,90363,305],{"class":283},[277,90365,90367,90369,90371,90373,90375,90377,90379,90381],{"class":90366,"line":476},[279,9398],[277,90368,810],{"class":283},[277,90370,21],{"class":287},[277,90372,861],{"class":291},[277,90374,298],{"class":283},[277,90376,41722],{"class":301},[277,90378,41725],{"class":283},[277,90380,21],{"class":287},[277,90382,305],{"class":283},[277,90384,90386,90388,90390,90392,90394,90396],{"class":90385,"line":500},[279,9398],[277,90387,810],{"class":283},[277,90389,21],{"class":287},[277,90391,941],{"class":291},[277,90393,41741],{"class":283},[277,90395,21],{"class":287},[277,90397,305],{"class":283},[277,90399,90400,90402,90404],{"class":279,"line":505},[277,90401,785],{"class":283},[277,90403,802],{"class":287},[277,90405,305],{"class":283},[267,90407,90409],{"className":269,"code":41756,"filename":971,"highlights":90408,"language":272,"meta":273,"style":273},[346,505,520,539,545],[16,90410,90411,90419,90427,90433,90439,90450,90454,90458,90462,90470,90474,90482,90500,90518,90536,90554,90558,90577,90596,90615,90630],{"__ignoreMap":273},[277,90412,90413,90415,90417],{"class":279,"line":280},[277,90414,284],{"class":283},[277,90416,288],{"class":287},[277,90418,305],{"class":283},[277,90420,90421,90423,90425],{"class":279,"line":308},[277,90422,1057],{"class":311},[277,90424,1060],{"class":311},[277,90426,343],{"class":283},[277,90428,90429,90431],{"class":279,"line":324},[277,90430,1086],{"class":291},[277,90432,473],{"class":283},[277,90434,90435,90437],{"class":279,"line":331},[277,90436,1093],{"class":311},[277,90438,343],{"class":283},[277,90440,90442,90444,90446,90448],{"class":90441,"line":346},[279,9398],[277,90443,6620],{"class":283},[277,90445,41556],{"class":301},[277,90447,225],{"class":283},[277,90449,41562],{"class":12741},[277,90451,90452],{"class":279,"line":360},[277,90453,18478],{"class":283},[277,90455,90456],{"class":279,"line":371},[277,90457,1131],{"class":283},[277,90459,90460],{"class":279,"line":381},[277,90461,18255],{"class":283},[277,90463,90464,90466,90468],{"class":279,"line":391},[277,90465,785],{"class":283},[277,90467,288],{"class":287},[277,90469,305],{"class":283},[277,90471,90472],{"class":279,"line":397},[277,90473,328],{"emptyLinePlaceholder":327},[277,90475,90476,90478,90480],{"class":279,"line":402},[277,90477,284],{"class":283},[277,90479,802],{"class":287},[277,90481,305],{"class":283},[277,90483,90484,90486,90488,90490,90492,90494,90496,90498],{"class":279,"line":436},[277,90485,810],{"class":283},[277,90487,4267],{"class":287},[277,90489,4278],{"class":291},[277,90491,298],{"class":283},[277,90493,41595],{"class":301},[277,90495,41598],{"class":283},[277,90497,4267],{"class":287},[277,90499,305],{"class":283},[277,90501,90502,90504,90506,90508,90510,90512,90514,90516],{"class":279,"line":456},[277,90503,810],{"class":283},[277,90505,4267],{"class":287},[277,90507,4278],{"class":291},[277,90509,298],{"class":283},[277,90511,41615],{"class":301},[277,90513,41618],{"class":283},[277,90515,4267],{"class":287},[277,90517,305],{"class":283},[277,90519,90520,90522,90524,90526,90528,90530,90532,90534],{"class":279,"line":461},[277,90521,810],{"class":283},[277,90523,4267],{"class":287},[277,90525,4278],{"class":291},[277,90527,298],{"class":283},[277,90529,41635],{"class":301},[277,90531,41638],{"class":283},[277,90533,4267],{"class":287},[277,90535,305],{"class":283},[277,90537,90538,90540,90542,90544,90546,90548,90550,90552],{"class":279,"line":476},[277,90539,810],{"class":283},[277,90541,4267],{"class":287},[277,90543,4278],{"class":291},[277,90545,298],{"class":283},[277,90547,41655],{"class":301},[277,90549,41658],{"class":283},[277,90551,4267],{"class":287},[277,90553,305],{"class":283},[277,90555,90556],{"class":279,"line":500},[277,90557,328],{"emptyLinePlaceholder":327},[277,90559,90561,90563,90565,90567,90569,90571,90573,90575],{"class":90560,"line":505},[279,9398],[277,90562,810],{"class":283},[277,90564,21],{"class":287},[277,90566,834],{"class":291},[277,90568,298],{"class":283},[277,90570,41680],{"class":301},[277,90572,41683],{"class":283},[277,90574,21],{"class":287},[277,90576,305],{"class":283},[277,90578,90580,90582,90584,90586,90588,90590,90592,90594],{"class":90579,"line":520},[279,9398],[277,90581,810],{"class":283},[277,90583,21],{"class":287},[277,90585,861],{"class":291},[277,90587,298],{"class":283},[277,90589,41701],{"class":301},[277,90591,41704],{"class":283},[277,90593,21],{"class":287},[277,90595,305],{"class":283},[277,90597,90599,90601,90603,90605,90607,90609,90611,90613],{"class":90598,"line":539},[279,9398],[277,90600,810],{"class":283},[277,90602,21],{"class":287},[277,90604,861],{"class":291},[277,90606,298],{"class":283},[277,90608,41722],{"class":301},[277,90610,41725],{"class":283},[277,90612,21],{"class":287},[277,90614,305],{"class":283},[277,90616,90618,90620,90622,90624,90626,90628],{"class":90617,"line":545},[279,9398],[277,90619,810],{"class":283},[277,90621,21],{"class":287},[277,90623,941],{"class":291},[277,90625,41741],{"class":283},[277,90627,21],{"class":287},[277,90629,305],{"class":283},[277,90631,90632,90634,90636],{"class":279,"line":550},[277,90633,785],{"class":283},[277,90635,802],{"class":287},[277,90637,305],{"class":283},[30,90639,190],{"id":189},[192,90641,41992,90642,41995,90644],{"id":41991},[16,90643,40341],{},[16,90645,7538],{},[21,90647,24892],{},[267,90649,90651],{"className":269,"code":42002,"filename":9339,"highlights":90650,"language":272,"meta":273,"style":273},[308],[16,90652,90653,90675,90680],{"__ignoreMap":273},[277,90654,90655,90657,90659,90661,90663,90665,90667,90669,90671,90673],{"class":279,"line":280},[277,90656,284],{"class":283},[277,90658,4201],{"class":287},[277,90660,834],{"class":311},[277,90662,298],{"class":283},[277,90664,866],{"class":301},[277,90666,42020],{"class":283},[277,90668,866],{"class":301},[277,90670,42025],{"class":283},[277,90672,4201],{"class":287},[277,90674,305],{"class":283},[277,90676,90678],{"class":90677,"line":308},[279,9398],[277,90679,42035],{"class":12741},[277,90681,90682,90684,90686,90688,90690,90692],{"class":279,"line":324},[277,90683,284],{"class":283},[277,90685,4201],{"class":287},[277,90687,941],{"class":311},[277,90689,42046],{"class":283},[277,90691,4201],{"class":287},[277,90693,305],{"class":283},[3111,90695,90696],{},[21,90697,17879,90698,41057,90700,42060,90702,104],{},[16,90699,40341],{},[72,90701,42059],{},[16,90703,7538],{},[192,90705,12603,90706,42068],{"id":42065},[16,90707,7701],{},[21,90709,42071,90710,42074,90712,225,90714,42081,90716,104],{},[16,90711,7701],{},[3292,90713,42077],{},[72,90715,42080],{},[16,90717,7538],{},[192,90719,42087,90720,42090],{"id":42086},[16,90721,7538],{},[21,90723,42093,90724,42096,90726,42100,90728,42103],{},[16,90725,7538],{},[72,90727,42099],{},[16,90729,7701],{},[30,90731,17671],{"id":17670},[38,90733,90734,90742,90748],{},[41,90735,90736,42114,90740,42118],{},[72,90737,90738],{},[16,90739,7538],{},[72,90741,42117],{},[41,90743,90744,42126],{},[72,90745,90746],{},[16,90747,42125],{},[41,90749,90750,42133],{},[72,90751,90752],{},[16,90753,7701],{},[3111,90755,90756],{},[21,90757,42138,90758],{},[72,90759,42141],{},[1606,90761,42144],{},{"title":273,"searchDepth":308,"depth":308,"links":90763},[90764,90769,90770,90771,90774,90775,90780],{"id":40398,"depth":308,"text":40399,"children":90765},[90766,90767,90768],{"id":7538,"depth":324,"text":7538},{"id":40449,"depth":324,"text":42151},{"id":7701,"depth":324,"text":7701},{"id":40521,"depth":308,"text":40522},{"id":40560,"depth":308,"text":42155},{"id":41072,"depth":308,"text":42157,"children":90772},[90773],{"id":41460,"depth":324,"text":41461},{"id":41491,"depth":308,"text":42161},{"id":189,"depth":308,"text":190,"children":90776},[90777,90778,90779],{"id":41991,"depth":324,"text":42165},{"id":42065,"depth":324,"text":42167},{"id":42086,"depth":324,"text":42169},{"id":17670,"depth":308,"text":17671},{"script":90782},[90783],{"type":1632,"key":1633,"data-nuxt-schema-org":327,"nodes":90784},[90785],{"headline":42180,"author":90786,"datePublished":42182,"@type":1640},{"name":1637,"@type":1638},{"updatedAt":42182,"coverCaption":42184,"author":1637,"keywords":90788},[1645,7538,40341,7701,42186,42187,271,971],[90790],{"headline":42180,"author":90791,"datePublished":42182,"@type":1640},{"name":1637,"@type":1638},{"title":40331,"description":42174},[90794,90795,90796,90797],{"tag":20588,"color":20589},{"tag":42197,"color":42198},{"tag":21891,"color":21892},{"tag":9074,"color":9075},{"id":42203,"title":42204,"body":90799,"cover":45570,"coverAlt":42204,"date":45571,"description":45572,"draft":1627,"extension":1628,"head":93969,"locale":1641,"meta":93975,"navigation":327,"path":45585,"schemaOrg":93977,"seo":93980,"series":20582,"seriesDescription":20583,"seriesOrder":280,"seriesTitle":20584,"slug":1656,"stem":45590,"tags":93981,"__hash__":45598},{"type":8,"value":90800,"toc":93951},[90801,90803,90811,90817,90819,90821,90863,90871,90877,90879,90887,90994,91107,91111,91117,91119,91125,91217,91315,91319,91321,91323,91331,91463,91603,91609,91613,91615,91619,91623,91717,91825,91829,91833,91835,91843,91949,92061,92067,92071,92073,92189,92325,92335,92339,92341,92433,92531,92533,92537,92539,92631,92729,92735,92739,92741,92882,93037,93041,93045,93049,93155,93267,93269,93273,93275,93401,93515,93519,93523,93525,93591,93663,93665,93669,93671,93737,93809,93811,93813,93815,93895,93927,93929,93931,93935,93937,93945,93949],[11,90802,42210],{"id":42209},[21,90804,42213,90805,42217,90807,42221,90809,42225],{},[72,90806,42216],{},[16,90808,42220],{},[72,90810,42224],{},[21,90812,42228,90813,42232,90815,42236],{},[72,90814,42231],{},[72,90816,42235],{},[30,90818,13169],{"id":13168},[21,90820,42241],{},[38,90822,90823,90827,90831,90835,90839,90843,90847,90851,90855,90859],{},[41,90824,90825],{},[13178,90826,40331],{"href":42248},[41,90828,90829],{},[13178,90830,36974],{"href":42253},[41,90832,90833],{},[13178,90834,33986],{"href":42258},[41,90836,90837],{},[13178,90838,28121],{"href":42263},[41,90840,90841],{},[13178,90842,30955],{"href":42268},[41,90844,90845],{},[13178,90846,24579],{"href":42273},[41,90848,90849],{},[13178,90850,25861],{"href":42278},[41,90852,90853],{},[13178,90854,21898],{"href":42283},[41,90856,90857],{},[13178,90858,20599],{"href":42288},[41,90860,90861],{},[13178,90862,17780],{"href":42293},[30,90864,90865,225,90867,225,90869],{"id":42296},[16,90866,7538],{},[16,90868,40454],{},[16,90870,40341],{},[21,90872,42305,90873,42309,90875,104],{},[72,90874,42308],{},[72,90876,40419],{},[21,90878,42314],{},[38,90880,90881,90883,90885],{},[41,90882,42319],{},[41,90884,42322],{},[41,90886,42325],{},[267,90888,90890],{"className":269,"code":42328,"filename":271,"highlights":90889,"language":272,"meta":273,"style":273},[381,391],[16,90891,90892,90902,90912,90916,90932,90940,90944,90952,90971,90986],{"__ignoreMap":273},[277,90893,90894,90896,90898,90900],{"class":279,"line":280},[277,90895,284],{"class":283},[277,90897,288],{"class":287},[277,90899,292],{"class":291},[277,90901,305],{"class":283},[277,90903,90904,90906,90908,90910],{"class":279,"line":308},[277,90905,312],{"class":311},[277,90907,11006],{"class":283},[277,90909,318],{"class":311},[277,90911,321],{"class":301},[277,90913,90914],{"class":279,"line":324},[277,90915,328],{"emptyLinePlaceholder":327},[277,90917,90918,90920,90922,90924,90926,90928,90930],{"class":279,"line":331},[277,90919,405],{"class":311},[277,90921,42362],{"class":356},[277,90923,340],{"class":311},[277,90925,413],{"class":291},[277,90927,448],{"class":283},[277,90929,2149],{"class":356},[277,90931,433],{"class":283},[277,90933,90934,90936,90938],{"class":279,"line":346},[277,90935,785],{"class":283},[277,90937,288],{"class":287},[277,90939,305],{"class":283},[277,90941,90942],{"class":279,"line":360},[277,90943,328],{"emptyLinePlaceholder":327},[277,90945,90946,90948,90950],{"class":279,"line":371},[277,90947,284],{"class":283},[277,90949,802],{"class":287},[277,90951,305],{"class":283},[277,90953,90955,90957,90959,90961,90963,90965,90967,90969],{"class":90954,"line":381},[279,9398],[277,90956,810],{"class":283},[277,90958,21],{"class":287},[277,90960,834],{"class":291},[277,90962,298],{"class":283},[277,90964,42406],{"class":301},[277,90966,42409],{"class":283},[277,90968,21],{"class":287},[277,90970,305],{"class":283},[277,90972,90974,90976,90978,90980,90982,90984],{"class":90973,"line":391},[279,9398],[277,90975,810],{"class":283},[277,90977,21],{"class":287},[277,90979,941],{"class":291},[277,90981,42425],{"class":283},[277,90983,21],{"class":287},[277,90985,305],{"class":283},[277,90987,90988,90990,90992],{"class":279,"line":397},[277,90989,785],{"class":283},[277,90991,802],{"class":287},[277,90993,305],{"class":283},[267,90995,90997],{"className":269,"code":42440,"filename":971,"highlights":90996,"language":272,"meta":273,"style":273},[436,456],[16,90998,90999,91007,91015,91021,91027,91033,91037,91041,91045,91053,91057,91065,91084,91099],{"__ignoreMap":273},[277,91000,91001,91003,91005],{"class":279,"line":280},[277,91002,284],{"class":283},[277,91004,288],{"class":287},[277,91006,305],{"class":283},[277,91008,91009,91011,91013],{"class":279,"line":308},[277,91010,1057],{"class":311},[277,91012,1060],{"class":311},[277,91014,343],{"class":283},[277,91016,91017,91019],{"class":279,"line":324},[277,91018,1086],{"class":291},[277,91020,473],{"class":283},[277,91022,91023,91025],{"class":279,"line":331},[277,91024,1093],{"class":311},[277,91026,343],{"class":283},[277,91028,91029,91031],{"class":279,"line":346},[277,91030,42476],{"class":283},[277,91032,2082],{"class":356},[277,91034,91035],{"class":279,"line":360},[277,91036,1126],{"class":283},[277,91038,91039],{"class":279,"line":371},[277,91040,542],{"class":283},[277,91042,91043],{"class":279,"line":381},[277,91044,394],{"class":283},[277,91046,91047,91049,91051],{"class":279,"line":391},[277,91048,785],{"class":283},[277,91050,288],{"class":287},[277,91052,305],{"class":283},[277,91054,91055],{"class":279,"line":397},[277,91056,328],{"emptyLinePlaceholder":327},[277,91058,91059,91061,91063],{"class":279,"line":402},[277,91060,284],{"class":283},[277,91062,802],{"class":287},[277,91064,305],{"class":283},[277,91066,91068,91070,91072,91074,91076,91078,91080,91082],{"class":91067,"line":436},[279,9398],[277,91069,810],{"class":283},[277,91071,21],{"class":287},[277,91073,834],{"class":291},[277,91075,298],{"class":283},[277,91077,42406],{"class":301},[277,91079,42409],{"class":283},[277,91081,21],{"class":287},[277,91083,305],{"class":283},[277,91085,91087,91089,91091,91093,91095,91097],{"class":91086,"line":456},[279,9398],[277,91088,810],{"class":283},[277,91090,21],{"class":287},[277,91092,941],{"class":291},[277,91094,42425],{"class":283},[277,91096,21],{"class":287},[277,91098,305],{"class":283},[277,91100,91101,91103,91105],{"class":279,"line":461},[277,91102,785],{"class":283},[277,91104,802],{"class":287},[277,91106,305],{"class":283},[30,91108,91109],{"id":7701},[16,91110,7701],{},[21,91112,42559,91113,42562,91115,104],{},[16,91114,40385],{},[72,91116,42565],{},[21,91118,42314],{},[38,91120,91121,91123],{},[41,91122,42572],{},[41,91124,42575],{},[267,91126,91128],{"className":269,"code":42578,"filename":271,"highlights":91127,"language":272,"meta":273,"style":273},[381],[16,91129,91130,91140,91150,91154,91170,91178,91182,91190,91209],{"__ignoreMap":273},[277,91131,91132,91134,91136,91138],{"class":279,"line":280},[277,91133,284],{"class":283},[277,91135,288],{"class":287},[277,91137,292],{"class":291},[277,91139,305],{"class":283},[277,91141,91142,91144,91146,91148],{"class":279,"line":308},[277,91143,312],{"class":311},[277,91145,11006],{"class":283},[277,91147,318],{"class":311},[277,91149,321],{"class":301},[277,91151,91152],{"class":279,"line":324},[277,91153,42606],{"class":283},[277,91155,91156,91158,91160,91162,91164,91166,91168],{"class":279,"line":331},[277,91157,405],{"class":311},[277,91159,42613],{"class":356},[277,91161,340],{"class":311},[277,91163,413],{"class":291},[277,91165,448],{"class":283},[277,91167,2149],{"class":356},[277,91169,433],{"class":283},[277,91171,91172,91174,91176],{"class":279,"line":346},[277,91173,785],{"class":283},[277,91175,288],{"class":287},[277,91177,305],{"class":283},[277,91179,91180],{"class":279,"line":360},[277,91181,328],{"emptyLinePlaceholder":327},[277,91183,91184,91186,91188],{"class":279,"line":371},[277,91185,284],{"class":283},[277,91187,802],{"class":287},[277,91189,305],{"class":283},[277,91191,91193,91195,91197,91199,91201,91203,91205,91207],{"class":91192,"line":381},[279,9398],[277,91194,810],{"class":283},[277,91196,21],{"class":287},[277,91198,41193],{"class":291},[277,91200,298],{"class":283},[277,91202,42657],{"class":301},[277,91204,42660],{"class":283},[277,91206,21],{"class":287},[277,91208,305],{"class":283},[277,91210,91211,91213,91215],{"class":279,"line":391},[277,91212,785],{"class":283},[277,91214,802],{"class":287},[277,91216,305],{"class":283},[267,91218,91220],{"className":269,"code":42675,"filename":971,"highlights":91219,"language":272,"meta":273,"style":273},[436],[16,91221,91222,91230,91238,91244,91250,91256,91260,91264,91268,91276,91280,91288,91307],{"__ignoreMap":273},[277,91223,91224,91226,91228],{"class":279,"line":280},[277,91225,284],{"class":283},[277,91227,288],{"class":287},[277,91229,305],{"class":283},[277,91231,91232,91234,91236],{"class":279,"line":308},[277,91233,1057],{"class":311},[277,91235,1060],{"class":311},[277,91237,343],{"class":283},[277,91239,91240,91242],{"class":279,"line":324},[277,91241,1086],{"class":291},[277,91243,473],{"class":283},[277,91245,91246,91248],{"class":279,"line":331},[277,91247,1093],{"class":311},[277,91249,343],{"class":283},[277,91251,91252,91254],{"class":279,"line":346},[277,91253,42711],{"class":283},[277,91255,2082],{"class":356},[277,91257,91258],{"class":279,"line":360},[277,91259,1126],{"class":283},[277,91261,91262],{"class":279,"line":371},[277,91263,542],{"class":283},[277,91265,91266],{"class":279,"line":381},[277,91267,394],{"class":283},[277,91269,91270,91272,91274],{"class":279,"line":391},[277,91271,785],{"class":283},[277,91273,288],{"class":287},[277,91275,305],{"class":283},[277,91277,91278],{"class":279,"line":397},[277,91279,328],{"emptyLinePlaceholder":327},[277,91281,91282,91284,91286],{"class":279,"line":402},[277,91283,284],{"class":283},[277,91285,802],{"class":287},[277,91287,305],{"class":283},[277,91289,91291,91293,91295,91297,91299,91301,91303,91305],{"class":91290,"line":436},[279,9398],[277,91292,810],{"class":283},[277,91294,21],{"class":287},[277,91296,41193],{"class":291},[277,91298,298],{"class":283},[277,91300,42657],{"class":301},[277,91302,42660],{"class":283},[277,91304,21],{"class":287},[277,91306,305],{"class":283},[277,91308,91309,91311,91313],{"class":279,"line":456},[277,91310,785],{"class":283},[277,91312,802],{"class":287},[277,91314,305],{"class":283},[30,91316,91317],{"id":24880},[16,91318,24880],{},[21,91320,42779],{},[21,91322,42782],{},[3111,91324,91325],{},[21,91326,91327,42789,91329,42793],{},[16,91328,24880],{},[72,91330,42792],{},[267,91332,91334],{"className":269,"code":42796,"filename":271,"highlights":91333,"language":272,"meta":273,"style":273},[402,436,456],[16,91335,91336,91346,91356,91360,91372,91384,91396,91400,91408,91412,91420,91441,91446,91455],{"__ignoreMap":273},[277,91337,91338,91340,91342,91344],{"class":279,"line":280},[277,91339,284],{"class":283},[277,91341,288],{"class":287},[277,91343,292],{"class":291},[277,91345,305],{"class":283},[277,91347,91348,91350,91352,91354],{"class":279,"line":308},[277,91349,312],{"class":311},[277,91351,11006],{"class":283},[277,91353,318],{"class":311},[277,91355,321],{"class":301},[277,91357,91358],{"class":279,"line":324},[277,91359,42606],{"class":283},[277,91361,91362,91364,91366,91368,91370],{"class":279,"line":331},[277,91363,405],{"class":311},[277,91365,38354],{"class":356},[277,91367,340],{"class":311},[277,91369,413],{"class":291},[277,91371,2104],{"class":283},[277,91373,91374,91376,91378,91380,91382],{"class":279,"line":346},[277,91375,2109],{"class":283},[277,91377,2072],{"class":356},[277,91379,22620],{"class":283},[277,91381,37149],{"class":301},[277,91383,2132],{"class":283},[277,91385,91386,91388,91390,91392,91394],{"class":279,"line":360},[277,91387,2109],{"class":283},[277,91389,2139],{"class":356},[277,91391,22620],{"class":283},[277,91393,37154],{"class":301},[277,91395,2179],{"class":283},[277,91397,91398],{"class":279,"line":371},[277,91399,2184],{"class":283},[277,91401,91402,91404,91406],{"class":279,"line":381},[277,91403,785],{"class":283},[277,91405,288],{"class":287},[277,91407,305],{"class":283},[277,91409,91410],{"class":279,"line":391},[277,91411,328],{"emptyLinePlaceholder":327},[277,91413,91414,91416,91418],{"class":279,"line":397},[277,91415,284],{"class":283},[277,91417,802],{"class":287},[277,91419,305],{"class":283},[277,91421,91423,91425,91427,91429,91431,91433,91435,91437,91439],{"class":91422,"line":402},[279,9398],[277,91424,810],{"class":283},[277,91426,41],{"class":287},[277,91428,12785],{"class":291},[277,91430,298],{"class":283},[277,91432,42897],{"class":301},[277,91434,4317],{"class":291},[277,91436,298],{"class":283},[277,91438,30034],{"class":301},[277,91440,305],{"class":283},[277,91442,91444],{"class":91443,"line":436},[279,9398],[277,91445,42911],{"class":283},[277,91447,91449,91451,91453],{"class":91448,"line":456},[279,9398],[277,91450,954],{"class":283},[277,91452,41],{"class":287},[277,91454,305],{"class":283},[277,91456,91457,91459,91461],{"class":279,"line":461},[277,91458,785],{"class":283},[277,91460,802],{"class":287},[277,91462,305],{"class":283},[267,91464,91466],{"className":269,"code":42931,"filename":971,"highlights":91465,"language":272,"meta":273,"style":273},[476,500,505],[16,91467,91468,91476,91484,91490,91496,91500,91512,91524,91528,91532,91536,91540,91548,91552,91560,91581,91586,91595],{"__ignoreMap":273},[277,91469,91470,91472,91474],{"class":279,"line":280},[277,91471,284],{"class":283},[277,91473,288],{"class":287},[277,91475,305],{"class":283},[277,91477,91478,91480,91482],{"class":279,"line":308},[277,91479,1057],{"class":311},[277,91481,1060],{"class":311},[277,91483,343],{"class":283},[277,91485,91486,91488],{"class":279,"line":324},[277,91487,1086],{"class":291},[277,91489,473],{"class":283},[277,91491,91492,91494],{"class":279,"line":331},[277,91493,1093],{"class":311},[277,91495,343],{"class":283},[277,91497,91498],{"class":279,"line":346},[277,91499,38549],{"class":283},[277,91501,91502,91504,91506,91508,91510],{"class":279,"line":360},[277,91503,2664],{"class":283},[277,91505,2072],{"class":356},[277,91507,22620],{"class":283},[277,91509,37149],{"class":301},[277,91511,2132],{"class":283},[277,91513,91514,91516,91518,91520,91522],{"class":279,"line":371},[277,91515,2664],{"class":283},[277,91517,2139],{"class":356},[277,91519,22620],{"class":283},[277,91521,37154],{"class":301},[277,91523,2179],{"class":283},[277,91525,91526],{"class":279,"line":381},[277,91527,2725],{"class":283},[277,91529,91530],{"class":279,"line":391},[277,91531,1126],{"class":283},[277,91533,91534],{"class":279,"line":397},[277,91535,542],{"class":283},[277,91537,91538],{"class":279,"line":402},[277,91539,394],{"class":283},[277,91541,91542,91544,91546],{"class":279,"line":436},[277,91543,785],{"class":283},[277,91545,288],{"class":287},[277,91547,305],{"class":283},[277,91549,91550],{"class":279,"line":456},[277,91551,328],{"emptyLinePlaceholder":327},[277,91553,91554,91556,91558],{"class":279,"line":461},[277,91555,284],{"class":283},[277,91557,802],{"class":287},[277,91559,305],{"class":283},[277,91561,91563,91565,91567,91569,91571,91573,91575,91577,91579],{"class":91562,"line":476},[279,9398],[277,91564,810],{"class":283},[277,91566,41],{"class":287},[277,91568,12785],{"class":291},[277,91570,298],{"class":283},[277,91572,42897],{"class":301},[277,91574,4317],{"class":291},[277,91576,298],{"class":283},[277,91578,30034],{"class":301},[277,91580,305],{"class":283},[277,91582,91584],{"class":91583,"line":500},[279,9398],[277,91585,42911],{"class":283},[277,91587,91589,91591,91593],{"class":91588,"line":505},[279,9398],[277,91590,954],{"class":283},[277,91592,41],{"class":287},[277,91594,305],{"class":283},[277,91596,91597,91599,91601],{"class":279,"line":520},[277,91598,785],{"class":283},[277,91600,802],{"class":287},[277,91602,305],{"class":283},[21,91604,91605,10969,91607,43077],{},[16,91606,1789],{},[72,91608,43076],{},[30,91610,91611],{"id":17974},[16,91612,17974],{},[21,91614,43084],{},[21,91616,7830,91617,43089],{},[16,91618,17974],{},[3111,91620,91621],{},[21,91622,43094],{},[267,91624,91626],{"className":269,"code":43097,"filename":271,"highlights":91625,"language":272,"meta":273,"style":273},[381],[16,91627,91628,91638,91648,91652,91668,91676,91680,91688,91709],{"__ignoreMap":273},[277,91629,91630,91632,91634,91636],{"class":279,"line":280},[277,91631,284],{"class":283},[277,91633,288],{"class":287},[277,91635,292],{"class":291},[277,91637,305],{"class":283},[277,91639,91640,91642,91644,91646],{"class":279,"line":308},[277,91641,312],{"class":311},[277,91643,11006],{"class":283},[277,91645,318],{"class":311},[277,91647,321],{"class":301},[277,91649,91650],{"class":279,"line":324},[277,91651,328],{"emptyLinePlaceholder":327},[277,91653,91654,91656,91658,91660,91662,91664,91666],{"class":279,"line":331},[277,91655,405],{"class":311},[277,91657,43131],{"class":356},[277,91659,340],{"class":311},[277,91661,413],{"class":291},[277,91663,448],{"class":283},[277,91665,43140],{"class":301},[277,91667,433],{"class":283},[277,91669,91670,91672,91674],{"class":279,"line":346},[277,91671,785],{"class":283},[277,91673,288],{"class":287},[277,91675,305],{"class":283},[277,91677,91678],{"class":279,"line":360},[277,91679,328],{"emptyLinePlaceholder":327},[277,91681,91682,91684,91686],{"class":279,"line":371},[277,91683,284],{"class":283},[277,91685,802],{"class":287},[277,91687,305],{"class":283},[277,91689,91691,91693,91695,91697,91699,91701,91703,91705,91707],{"class":91690,"line":381},[279,9398],[277,91692,810],{"class":283},[277,91694,34220],{"class":287},[277,91696,43172],{"class":291},[277,91698,298],{"class":283},[277,91700,43177],{"class":301},[277,91702,43180],{"class":291},[277,91704,298],{"class":283},[277,91706,43185],{"class":301},[277,91708,4325],{"class":283},[277,91710,91711,91713,91715],{"class":279,"line":391},[277,91712,785],{"class":283},[277,91714,802],{"class":287},[277,91716,305],{"class":283},[267,91718,91720],{"className":269,"code":43198,"filename":971,"highlights":91719,"language":272,"meta":273,"style":273},[456],[16,91721,91722,91730,91738,91744,91750,91758,91764,91768,91772,91776,91784,91788,91796,91817],{"__ignoreMap":273},[277,91723,91724,91726,91728],{"class":279,"line":280},[277,91725,284],{"class":283},[277,91727,288],{"class":287},[277,91729,305],{"class":283},[277,91731,91732,91734,91736],{"class":279,"line":308},[277,91733,1057],{"class":311},[277,91735,1060],{"class":311},[277,91737,343],{"class":283},[277,91739,91740,91742],{"class":279,"line":324},[277,91741,1086],{"class":291},[277,91743,473],{"class":283},[277,91745,91746,91748],{"class":279,"line":331},[277,91747,1093],{"class":311},[277,91749,343],{"class":283},[277,91751,91752,91754,91756],{"class":279,"line":346},[277,91753,43234],{"class":283},[277,91755,43237],{"class":301},[277,91757,1077],{"class":283},[277,91759,91760,91762],{"class":279,"line":360},[277,91761,43244],{"class":283},[277,91763,43247],{"class":301},[277,91765,91766],{"class":279,"line":371},[277,91767,1126],{"class":283},[277,91769,91770],{"class":279,"line":381},[277,91771,542],{"class":283},[277,91773,91774],{"class":279,"line":391},[277,91775,394],{"class":283},[277,91777,91778,91780,91782],{"class":279,"line":397},[277,91779,785],{"class":283},[277,91781,288],{"class":287},[277,91783,305],{"class":283},[277,91785,91786],{"class":279,"line":402},[277,91787,328],{"emptyLinePlaceholder":327},[277,91789,91790,91792,91794],{"class":279,"line":436},[277,91791,284],{"class":283},[277,91793,802],{"class":287},[277,91795,305],{"class":283},[277,91797,91799,91801,91803,91805,91807,91809,91811,91813,91815],{"class":91798,"line":456},[279,9398],[277,91800,810],{"class":283},[277,91802,34220],{"class":287},[277,91804,43289],{"class":291},[277,91806,298],{"class":283},[277,91808,43177],{"class":301},[277,91810,43296],{"class":291},[277,91812,298],{"class":283},[277,91814,43301],{"class":301},[277,91816,4325],{"class":283},[277,91818,91819,91821,91823],{"class":279,"line":461},[277,91820,785],{"class":283},[277,91822,802],{"class":287},[277,91824,305],{"class":283},[30,91826,91827],{"id":17971},[16,91828,17971],{},[21,91830,43318,91831,43322],{},[72,91832,43321],{},[21,91834,43325],{},[38,91836,91837,91839,91841],{},[41,91838,30948],{},[41,91840,43332],{},[41,91842,43335],{},[267,91844,91846],{"className":269,"code":43338,"filename":271,"highlights":91845,"language":272,"meta":273,"style":273},[381],[16,91847,91848,91858,91868,91872,91888,91896,91900,91908,91929,91941],{"__ignoreMap":273},[277,91849,91850,91852,91854,91856],{"class":279,"line":280},[277,91851,284],{"class":283},[277,91853,288],{"class":287},[277,91855,292],{"class":291},[277,91857,305],{"class":283},[277,91859,91860,91862,91864,91866],{"class":279,"line":308},[277,91861,312],{"class":311},[277,91863,11006],{"class":283},[277,91865,318],{"class":311},[277,91867,321],{"class":301},[277,91869,91870],{"class":279,"line":324},[277,91871,328],{"emptyLinePlaceholder":327},[277,91873,91874,91876,91878,91880,91882,91884,91886],{"class":279,"line":331},[277,91875,405],{"class":311},[277,91877,43372],{"class":356},[277,91879,340],{"class":311},[277,91881,413],{"class":291},[277,91883,448],{"class":283},[277,91885,451],{"class":301},[277,91887,433],{"class":283},[277,91889,91890,91892,91894],{"class":279,"line":346},[277,91891,785],{"class":283},[277,91893,288],{"class":287},[277,91895,305],{"class":283},[277,91897,91898],{"class":279,"line":360},[277,91899,328],{"emptyLinePlaceholder":327},[277,91901,91902,91904,91906],{"class":279,"line":371},[277,91903,284],{"class":283},[277,91905,802],{"class":287},[277,91907,305],{"class":283},[277,91909,91911,91913,91915,91917,91919,91921,91923,91925,91927],{"class":91910,"line":381},[279,9398],[277,91912,810],{"class":283},[277,91914,18041],{"class":287},[277,91916,23751],{"class":291},[277,91918,298],{"class":283},[277,91920,43416],{"class":301},[277,91922,31920],{"class":291},[277,91924,298],{"class":283},[277,91926,43423],{"class":301},[277,91928,4325],{"class":283},[277,91930,91931,91933,91935,91937,91939],{"class":279,"line":391},[277,91932,810],{"class":283},[277,91934,21],{"class":287},[277,91936,43434],{"class":283},[277,91938,21],{"class":287},[277,91940,305],{"class":283},[277,91942,91943,91945,91947],{"class":279,"line":397},[277,91944,785],{"class":283},[277,91946,802],{"class":287},[277,91948,305],{"class":283},[267,91950,91952],{"className":269,"code":43449,"filename":971,"highlights":91951,"language":272,"meta":273,"style":273},[436],[16,91953,91954,91962,91970,91976,91982,91988,91992,91996,92000,92008,92012,92020,92041,92053],{"__ignoreMap":273},[277,91955,91956,91958,91960],{"class":279,"line":280},[277,91957,284],{"class":283},[277,91959,288],{"class":287},[277,91961,305],{"class":283},[277,91963,91964,91966,91968],{"class":279,"line":308},[277,91965,1057],{"class":311},[277,91967,1060],{"class":311},[277,91969,343],{"class":283},[277,91971,91972,91974],{"class":279,"line":324},[277,91973,1086],{"class":291},[277,91975,473],{"class":283},[277,91977,91978,91980],{"class":279,"line":331},[277,91979,1093],{"class":311},[277,91981,343],{"class":283},[277,91983,91984,91986],{"class":279,"line":346},[277,91985,43485],{"class":283},[277,91987,1121],{"class":301},[277,91989,91990],{"class":279,"line":360},[277,91991,1126],{"class":283},[277,91993,91994],{"class":279,"line":371},[277,91995,542],{"class":283},[277,91997,91998],{"class":279,"line":381},[277,91999,394],{"class":283},[277,92001,92002,92004,92006],{"class":279,"line":391},[277,92003,785],{"class":283},[277,92005,288],{"class":287},[277,92007,305],{"class":283},[277,92009,92010],{"class":279,"line":397},[277,92011,328],{"emptyLinePlaceholder":327},[277,92013,92014,92016,92018],{"class":279,"line":402},[277,92015,284],{"class":283},[277,92017,802],{"class":287},[277,92019,305],{"class":283},[277,92021,92023,92025,92027,92029,92031,92033,92035,92037,92039],{"class":92022,"line":436},[279,9398],[277,92024,810],{"class":283},[277,92026,18041],{"class":287},[277,92028,23751],{"class":291},[277,92030,298],{"class":283},[277,92032,43416],{"class":301},[277,92034,31920],{"class":291},[277,92036,298],{"class":283},[277,92038,43423],{"class":301},[277,92040,4325],{"class":283},[277,92042,92043,92045,92047,92049,92051],{"class":279,"line":456},[277,92044,810],{"class":283},[277,92046,21],{"class":287},[277,92048,43434],{"class":283},[277,92050,21],{"class":287},[277,92052,305],{"class":283},[277,92054,92055,92057,92059],{"class":279,"line":461},[277,92056,785],{"class":283},[277,92058,802],{"class":287},[277,92060,305],{"class":283},[21,92062,43563,92063,28155,92065,43568],{},[16,92064,28231],{},[16,92066,28237],{},[30,92068,92069],{"id":17977},[16,92070,17977],{},[21,92072,43575],{},[267,92074,92076],{"className":269,"code":43578,"filename":271,"highlights":92075,"language":272,"meta":273,"style":273},[402],[16,92077,92078,92088,92098,92102,92118,92132,92138,92142,92150,92154,92162,92181],{"__ignoreMap":273},[277,92079,92080,92082,92084,92086],{"class":279,"line":280},[277,92081,284],{"class":283},[277,92083,288],{"class":287},[277,92085,292],{"class":291},[277,92087,305],{"class":283},[277,92089,92090,92092,92094,92096],{"class":279,"line":308},[277,92091,312],{"class":311},[277,92093,11006],{"class":283},[277,92095,318],{"class":311},[277,92097,321],{"class":301},[277,92099,92100],{"class":279,"line":324},[277,92101,328],{"emptyLinePlaceholder":327},[277,92103,92104,92106,92108,92110,92112,92114,92116],{"class":279,"line":331},[277,92105,405],{"class":311},[277,92107,9380],{"class":356},[277,92109,340],{"class":311},[277,92111,413],{"class":291},[277,92113,448],{"class":283},[277,92115,3542],{"class":356},[277,92117,433],{"class":283},[277,92119,92120,92122,92124,92126,92128,92130],{"class":279,"line":346},[277,92121,405],{"class":311},[277,92123,43628],{"class":291},[277,92125,340],{"class":311},[277,92127,598],{"class":283},[277,92129,601],{"class":311},[277,92131,343],{"class":283},[277,92133,92134,92136],{"class":279,"line":360},[277,92135,9412],{"class":283},[277,92137,9415],{"class":311},[277,92139,92140],{"class":279,"line":371},[277,92141,394],{"class":283},[277,92143,92144,92146,92148],{"class":279,"line":381},[277,92145,785],{"class":283},[277,92147,288],{"class":287},[277,92149,305],{"class":283},[277,92151,92152],{"class":279,"line":391},[277,92153,328],{"emptyLinePlaceholder":327},[277,92155,92156,92158,92160],{"class":279,"line":397},[277,92157,284],{"class":283},[277,92159,802],{"class":287},[277,92161,305],{"class":283},[277,92163,92165,92167,92169,92171,92173,92175,92177,92179],{"class":92164,"line":402},[279,9398],[277,92166,810],{"class":283},[277,92168,4267],{"class":287},[277,92170,43676],{"class":291},[277,92172,298],{"class":283},[277,92174,43681],{"class":301},[277,92176,43684],{"class":283},[277,92178,4267],{"class":287},[277,92180,305],{"class":283},[277,92182,92183,92185,92187],{"class":279,"line":436},[277,92184,785],{"class":283},[277,92186,802],{"class":287},[277,92188,305],{"class":283},[267,92190,92192],{"className":269,"code":43699,"filename":971,"highlights":92191,"language":272,"meta":273,"style":273},[505],[16,92193,92194,92202,92210,92216,92222,92228,92232,92236,92240,92246,92254,92258,92262,92266,92274,92278,92286,92305,92317],{"__ignoreMap":273},[277,92195,92196,92198,92200],{"class":279,"line":280},[277,92197,284],{"class":283},[277,92199,288],{"class":287},[277,92201,305],{"class":283},[277,92203,92204,92206,92208],{"class":279,"line":308},[277,92205,1057],{"class":311},[277,92207,1060],{"class":311},[277,92209,343],{"class":283},[277,92211,92212,92214],{"class":279,"line":324},[277,92213,1086],{"class":291},[277,92215,473],{"class":283},[277,92217,92218,92220],{"class":279,"line":331},[277,92219,1093],{"class":311},[277,92221,343],{"class":283},[277,92223,92224,92226],{"class":279,"line":346},[277,92225,31686],{"class":283},[277,92227,4692],{"class":356},[277,92229,92230],{"class":279,"line":360},[277,92231,1126],{"class":283},[277,92233,92234],{"class":279,"line":371},[277,92235,1131],{"class":283},[277,92237,92238],{"class":279,"line":381},[277,92239,1140],{"class":283},[277,92241,92242,92244],{"class":279,"line":391},[277,92243,43753],{"class":291},[277,92245,473],{"class":283},[277,92247,92248,92250,92252],{"class":279,"line":397},[277,92249,1212],{"class":356},[277,92251,43762],{"class":283},[277,92253,9415],{"class":311},[277,92255,92256],{"class":279,"line":402},[277,92257,1126],{"class":283},[277,92259,92260],{"class":279,"line":436},[277,92261,542],{"class":283},[277,92263,92264],{"class":279,"line":456},[277,92265,394],{"class":283},[277,92267,92268,92270,92272],{"class":279,"line":461},[277,92269,785],{"class":283},[277,92271,288],{"class":287},[277,92273,305],{"class":283},[277,92275,92276],{"class":279,"line":476},[277,92277,328],{"emptyLinePlaceholder":327},[277,92279,92280,92282,92284],{"class":279,"line":500},[277,92281,284],{"class":283},[277,92283,802],{"class":287},[277,92285,305],{"class":283},[277,92287,92289,92291,92293,92295,92297,92299,92301,92303],{"class":92288,"line":505},[279,9398],[277,92290,810],{"class":283},[277,92292,4267],{"class":287},[277,92294,43676],{"class":291},[277,92296,298],{"class":283},[277,92298,43681],{"class":301},[277,92300,43812],{"class":283},[277,92302,4267],{"class":287},[277,92304,305],{"class":283},[277,92306,92307,92309,92311,92313,92315],{"class":279,"line":520},[277,92308,810],{"class":283},[277,92310,21],{"class":287},[277,92312,43825],{"class":283},[277,92314,21],{"class":287},[277,92316,305],{"class":283},[277,92318,92319,92321,92323],{"class":279,"line":539},[277,92320,785],{"class":283},[277,92322,802],{"class":287},[277,92324,305],{"class":283},[21,92326,43840,92327,511,92329,225,92331,225,92333,43850],{},[72,92328,43843],{},[16,92330,31109],{},[16,92332,31106],{},[16,92334,31112],{},[30,92336,92337],{"id":24587},[16,92338,24587],{},[21,92340,43857],{},[267,92342,92344],{"className":269,"code":43860,"filename":271,"highlights":92343,"language":272,"meta":273,"style":273},[381],[16,92345,92346,92356,92366,92370,92386,92394,92398,92406,92425],{"__ignoreMap":273},[277,92347,92348,92350,92352,92354],{"class":279,"line":280},[277,92349,284],{"class":283},[277,92351,288],{"class":287},[277,92353,292],{"class":291},[277,92355,305],{"class":283},[277,92357,92358,92360,92362,92364],{"class":279,"line":308},[277,92359,312],{"class":311},[277,92361,11006],{"class":283},[277,92363,318],{"class":311},[277,92365,321],{"class":301},[277,92367,92368],{"class":279,"line":324},[277,92369,328],{"emptyLinePlaceholder":327},[277,92371,92372,92374,92376,92378,92380,92382,92384],{"class":279,"line":331},[277,92373,405],{"class":311},[277,92375,23154],{"class":356},[277,92377,340],{"class":311},[277,92379,413],{"class":291},[277,92381,448],{"class":283},[277,92383,43902],{"class":301},[277,92385,433],{"class":283},[277,92387,92388,92390,92392],{"class":279,"line":346},[277,92389,785],{"class":283},[277,92391,288],{"class":287},[277,92393,305],{"class":283},[277,92395,92396],{"class":279,"line":360},[277,92397,328],{"emptyLinePlaceholder":327},[277,92399,92400,92402,92404],{"class":279,"line":371},[277,92401,284],{"class":283},[277,92403,802],{"class":287},[277,92405,305],{"class":283},[277,92407,92409,92411,92413,92415,92417,92419,92421,92423],{"class":92408,"line":381},[279,9398],[277,92410,810],{"class":283},[277,92412,4201],{"class":287},[277,92414,24678],{"class":291},[277,92416,298],{"class":283},[277,92418,43938],{"class":301},[277,92420,24690],{"class":283},[277,92422,4201],{"class":287},[277,92424,305],{"class":283},[277,92426,92427,92429,92431],{"class":279,"line":391},[277,92428,785],{"class":283},[277,92430,802],{"class":287},[277,92432,305],{"class":283},[267,92434,92436],{"className":269,"code":43955,"filename":971,"highlights":92435,"language":272,"meta":273,"style":273},[436],[16,92437,92438,92446,92454,92460,92466,92472,92476,92480,92484,92492,92496,92504,92523],{"__ignoreMap":273},[277,92439,92440,92442,92444],{"class":279,"line":280},[277,92441,284],{"class":283},[277,92443,288],{"class":287},[277,92445,305],{"class":283},[277,92447,92448,92450,92452],{"class":279,"line":308},[277,92449,1057],{"class":311},[277,92451,1060],{"class":311},[277,92453,343],{"class":283},[277,92455,92456,92458],{"class":279,"line":324},[277,92457,1086],{"class":291},[277,92459,473],{"class":283},[277,92461,92462,92464],{"class":279,"line":331},[277,92463,1093],{"class":311},[277,92465,343],{"class":283},[277,92467,92468,92470],{"class":279,"line":346},[277,92469,23268],{"class":283},[277,92471,43993],{"class":301},[277,92473,92474],{"class":279,"line":360},[277,92475,1126],{"class":283},[277,92477,92478],{"class":279,"line":371},[277,92479,542],{"class":283},[277,92481,92482],{"class":279,"line":381},[277,92483,394],{"class":283},[277,92485,92486,92488,92490],{"class":279,"line":391},[277,92487,785],{"class":283},[277,92489,288],{"class":287},[277,92491,305],{"class":283},[277,92493,92494],{"class":279,"line":397},[277,92495,328],{"emptyLinePlaceholder":327},[277,92497,92498,92500,92502],{"class":279,"line":402},[277,92499,284],{"class":283},[277,92501,802],{"class":287},[277,92503,305],{"class":283},[277,92505,92507,92509,92511,92513,92515,92517,92519,92521],{"class":92506,"line":436},[279,9398],[277,92508,810],{"class":283},[277,92510,4201],{"class":287},[277,92512,24678],{"class":291},[277,92514,298],{"class":283},[277,92516,43938],{"class":301},[277,92518,24690],{"class":283},[277,92520,4201],{"class":287},[277,92522,305],{"class":283},[277,92524,92525,92527,92529],{"class":279,"line":456},[277,92526,785],{"class":283},[277,92528,802],{"class":287},[277,92530,305],{"class":283},[21,92532,44055],{},[30,92534,92535],{"id":24590},[16,92536,24590],{},[21,92538,44062],{},[267,92540,92542],{"className":269,"code":44065,"filename":271,"highlights":92541,"language":272,"meta":273,"style":273},[381],[16,92543,92544,92554,92564,92568,92584,92592,92596,92604,92623],{"__ignoreMap":273},[277,92545,92546,92548,92550,92552],{"class":279,"line":280},[277,92547,284],{"class":283},[277,92549,288],{"class":287},[277,92551,292],{"class":291},[277,92553,305],{"class":283},[277,92555,92556,92558,92560,92562],{"class":279,"line":308},[277,92557,312],{"class":311},[277,92559,11006],{"class":283},[277,92561,318],{"class":311},[277,92563,321],{"class":301},[277,92565,92566],{"class":279,"line":324},[277,92567,328],{"emptyLinePlaceholder":327},[277,92569,92570,92572,92574,92576,92578,92580,92582],{"class":279,"line":331},[277,92571,405],{"class":311},[277,92573,44099],{"class":356},[277,92575,340],{"class":311},[277,92577,413],{"class":291},[277,92579,448],{"class":283},[277,92581,44108],{"class":301},[277,92583,433],{"class":283},[277,92585,92586,92588,92590],{"class":279,"line":346},[277,92587,785],{"class":283},[277,92589,288],{"class":287},[277,92591,305],{"class":283},[277,92593,92594],{"class":279,"line":360},[277,92595,328],{"emptyLinePlaceholder":327},[277,92597,92598,92600,92602],{"class":279,"line":371},[277,92599,284],{"class":283},[277,92601,802],{"class":287},[277,92603,305],{"class":283},[277,92605,92607,92609,92611,92613,92615,92617,92619,92621],{"class":92606,"line":381},[279,9398],[277,92608,810],{"class":283},[277,92610,4201],{"class":287},[277,92612,24748],{"class":291},[277,92614,298],{"class":283},[277,92616,44144],{"class":301},[277,92618,24690],{"class":283},[277,92620,4201],{"class":287},[277,92622,305],{"class":283},[277,92624,92625,92627,92629],{"class":279,"line":391},[277,92626,785],{"class":283},[277,92628,802],{"class":287},[277,92630,305],{"class":283},[267,92632,92634],{"className":269,"code":44161,"filename":971,"highlights":92633,"language":272,"meta":273,"style":273},[436],[16,92635,92636,92644,92652,92658,92664,92670,92674,92678,92682,92690,92694,92702,92721],{"__ignoreMap":273},[277,92637,92638,92640,92642],{"class":279,"line":280},[277,92639,284],{"class":283},[277,92641,288],{"class":287},[277,92643,305],{"class":283},[277,92645,92646,92648,92650],{"class":279,"line":308},[277,92647,1057],{"class":311},[277,92649,1060],{"class":311},[277,92651,343],{"class":283},[277,92653,92654,92656],{"class":279,"line":324},[277,92655,1086],{"class":291},[277,92657,473],{"class":283},[277,92659,92660,92662],{"class":279,"line":331},[277,92661,1093],{"class":311},[277,92663,343],{"class":283},[277,92665,92666,92668],{"class":279,"line":346},[277,92667,44197],{"class":283},[277,92669,44200],{"class":301},[277,92671,92672],{"class":279,"line":360},[277,92673,1126],{"class":283},[277,92675,92676],{"class":279,"line":371},[277,92677,542],{"class":283},[277,92679,92680],{"class":279,"line":381},[277,92681,394],{"class":283},[277,92683,92684,92686,92688],{"class":279,"line":391},[277,92685,785],{"class":283},[277,92687,288],{"class":287},[277,92689,305],{"class":283},[277,92691,92692],{"class":279,"line":397},[277,92693,328],{"emptyLinePlaceholder":327},[277,92695,92696,92698,92700],{"class":279,"line":402},[277,92697,284],{"class":283},[277,92699,802],{"class":287},[277,92701,305],{"class":283},[277,92703,92705,92707,92709,92711,92713,92715,92717,92719],{"class":92704,"line":436},[279,9398],[277,92706,810],{"class":283},[277,92708,4201],{"class":287},[277,92710,24748],{"class":291},[277,92712,298],{"class":283},[277,92714,44144],{"class":301},[277,92716,24690],{"class":283},[277,92718,4201],{"class":287},[277,92720,305],{"class":283},[277,92722,92723,92725,92727],{"class":279,"line":456},[277,92724,785],{"class":283},[277,92726,802],{"class":287},[277,92728,305],{"class":283},[3111,92730,92731],{},[21,92732,44264,92733,44268],{},[72,92734,44267],{},[30,92736,92737],{"id":25869},[16,92738,25869],{},[21,92740,44275],{},[267,92742,92744],{"className":269,"code":44278,"filename":271,"highlights":92743,"language":272,"meta":273,"style":273},[360,397],[16,92745,92746,92756,92764,92768,92776,92784,92799,92811,92819,92831,92846,92858,92866,92874],{"__ignoreMap":273},[277,92747,92748,92750,92752,92754],{"class":279,"line":280},[277,92749,284],{"class":283},[277,92751,288],{"class":287},[277,92753,292],{"class":291},[277,92755,305],{"class":283},[277,92757,92758,92760,92762],{"class":279,"line":308},[277,92759,785],{"class":283},[277,92761,288],{"class":287},[277,92763,305],{"class":283},[277,92765,92766],{"class":279,"line":324},[277,92767,328],{"emptyLinePlaceholder":327},[277,92769,92770,92772,92774],{"class":279,"line":331},[277,92771,284],{"class":283},[277,92773,802],{"class":287},[277,92775,305],{"class":283},[277,92777,92778,92780,92782],{"class":279,"line":346},[277,92779,810],{"class":283},[277,92781,44318],{"class":287},[277,92783,305],{"class":283},[277,92785,92787,92789,92791,92793,92795,92797],{"class":92786,"line":360},[279,9398],[277,92788,829],{"class":283},[277,92790,802],{"class":287},[277,92792,26191],{"class":291},[277,92794,353],{"class":283},[277,92796,4138],{"class":291},[277,92798,305],{"class":283},[277,92800,92801,92803,92805,92807,92809],{"class":279,"line":371},[277,92802,879],{"class":283},[277,92804,11],{"class":287},[277,92806,44344],{"class":283},[277,92808,11],{"class":287},[277,92810,305],{"class":283},[277,92812,92813,92815,92817],{"class":279,"line":381},[277,92814,922],{"class":283},[277,92816,802],{"class":287},[277,92818,305],{"class":283},[277,92820,92821,92823,92825,92827,92829],{"class":279,"line":391},[277,92822,829],{"class":283},[277,92824,21],{"class":287},[277,92826,44365],{"class":283},[277,92828,21],{"class":287},[277,92830,305],{"class":283},[277,92832,92834,92836,92838,92840,92842,92844],{"class":92833,"line":397},[279,9398],[277,92835,829],{"class":283},[277,92837,802],{"class":287},[277,92839,26191],{"class":291},[277,92841,353],{"class":283},[277,92843,26581],{"class":291},[277,92845,305],{"class":283},[277,92847,92848,92850,92852,92854,92856],{"class":279,"line":402},[277,92849,879],{"class":283},[277,92851,4267],{"class":287},[277,92853,44393],{"class":283},[277,92855,4267],{"class":287},[277,92857,305],{"class":283},[277,92859,92860,92862,92864],{"class":279,"line":436},[277,92861,922],{"class":283},[277,92863,802],{"class":287},[277,92865,305],{"class":283},[277,92867,92868,92870,92872],{"class":279,"line":456},[277,92869,954],{"class":283},[277,92871,44318],{"class":287},[277,92873,305],{"class":283},[277,92875,92876,92878,92880],{"class":279,"line":461},[277,92877,785],{"class":283},[277,92879,802],{"class":287},[277,92881,305],{"class":283},[267,92883,92885],{"className":269,"code":44424,"filename":971,"highlights":92884,"language":272,"meta":273,"style":273},[391,456],[16,92886,92887,92895,92903,92907,92911,92919,92923,92931,92939,92954,92966,92974,92986,93001,93013,93021,93029],{"__ignoreMap":273},[277,92888,92889,92891,92893],{"class":279,"line":280},[277,92890,284],{"class":283},[277,92892,288],{"class":287},[277,92894,305],{"class":283},[277,92896,92897,92899,92901],{"class":279,"line":308},[277,92898,1057],{"class":311},[277,92900,1060],{"class":311},[277,92902,343],{"class":283},[277,92904,92905],{"class":279,"line":324},[277,92906,44448],{"class":283},[277,92908,92909],{"class":279,"line":331},[277,92910,394],{"class":283},[277,92912,92913,92915,92917],{"class":279,"line":346},[277,92914,785],{"class":283},[277,92916,288],{"class":287},[277,92918,305],{"class":283},[277,92920,92921],{"class":279,"line":360},[277,92922,328],{"emptyLinePlaceholder":327},[277,92924,92925,92927,92929],{"class":279,"line":371},[277,92926,284],{"class":283},[277,92928,802],{"class":287},[277,92930,305],{"class":283},[277,92932,92933,92935,92937],{"class":279,"line":381},[277,92934,810],{"class":283},[277,92936,44318],{"class":287},[277,92938,305],{"class":283},[277,92940,92942,92944,92946,92948,92950,92952],{"class":92941,"line":391},[279,9398],[277,92943,829],{"class":283},[277,92945,802],{"class":287},[277,92947,26191],{"class":291},[277,92949,353],{"class":283},[277,92951,4138],{"class":291},[277,92953,305],{"class":283},[277,92955,92956,92958,92960,92962,92964],{"class":279,"line":397},[277,92957,879],{"class":283},[277,92959,11],{"class":287},[277,92961,44344],{"class":283},[277,92963,11],{"class":287},[277,92965,305],{"class":283},[277,92967,92968,92970,92972],{"class":279,"line":402},[277,92969,922],{"class":283},[277,92971,802],{"class":287},[277,92973,305],{"class":283},[277,92975,92976,92978,92980,92982,92984],{"class":279,"line":436},[277,92977,829],{"class":283},[277,92979,21],{"class":287},[277,92981,44365],{"class":283},[277,92983,21],{"class":287},[277,92985,305],{"class":283},[277,92987,92989,92991,92993,92995,92997,92999],{"class":92988,"line":456},[279,9398],[277,92990,829],{"class":283},[277,92992,802],{"class":287},[277,92994,26191],{"class":291},[277,92996,353],{"class":283},[277,92998,26581],{"class":291},[277,93000,305],{"class":283},[277,93002,93003,93005,93007,93009,93011],{"class":279,"line":461},[277,93004,879],{"class":283},[277,93006,4267],{"class":287},[277,93008,44393],{"class":283},[277,93010,4267],{"class":287},[277,93012,305],{"class":283},[277,93014,93015,93017,93019],{"class":279,"line":476},[277,93016,922],{"class":283},[277,93018,802],{"class":287},[277,93020,305],{"class":283},[277,93022,93023,93025,93027],{"class":279,"line":500},[277,93024,954],{"class":283},[277,93026,44318],{"class":287},[277,93028,305],{"class":283},[277,93030,93031,93033,93035],{"class":279,"line":505},[277,93032,785],{"class":283},[277,93034,802],{"class":287},[277,93036,305],{"class":283},[21,93038,44581,93039,104],{},[72,93040,44584],{},[30,93042,93043],{"id":21906},[16,93044,21906],{},[21,93046,44591,93047,44595],{},[72,93048,44594],{},[267,93050,93052],{"className":269,"code":44598,"filename":271,"highlights":93051,"language":272,"meta":273,"style":273},[381],[16,93053,93054,93064,93074,93078,93094,93102,93106,93114,93129,93147],{"__ignoreMap":273},[277,93055,93056,93058,93060,93062],{"class":279,"line":280},[277,93057,284],{"class":283},[277,93059,288],{"class":287},[277,93061,292],{"class":291},[277,93063,305],{"class":283},[277,93065,93066,93068,93070,93072],{"class":279,"line":308},[277,93067,312],{"class":311},[277,93069,11006],{"class":283},[277,93071,318],{"class":311},[277,93073,321],{"class":301},[277,93075,93076],{"class":279,"line":324},[277,93077,42606],{"class":283},[277,93079,93080,93082,93084,93086,93088,93090,93092],{"class":279,"line":331},[277,93081,405],{"class":311},[277,93083,9380],{"class":356},[277,93085,340],{"class":311},[277,93087,413],{"class":291},[277,93089,448],{"class":283},[277,93091,3542],{"class":356},[277,93093,433],{"class":283},[277,93095,93096,93098,93100],{"class":279,"line":346},[277,93097,785],{"class":283},[277,93099,288],{"class":287},[277,93101,305],{"class":283},[277,93103,93104],{"class":279,"line":360},[277,93105,328],{"emptyLinePlaceholder":327},[277,93107,93108,93110,93112],{"class":279,"line":371},[277,93109,284],{"class":283},[277,93111,802],{"class":287},[277,93113,305],{"class":283},[277,93115,93117,93119,93121,93123,93125,93127],{"class":93116,"line":381},[279,9398],[277,93118,810],{"class":283},[277,93120,21],{"class":287},[277,93122,22314],{"class":291},[277,93124,44673],{"class":283},[277,93126,21],{"class":287},[277,93128,305],{"class":283},[277,93130,93131,93133,93135,93137,93139,93141,93143,93145],{"class":279,"line":391},[277,93132,810],{"class":283},[277,93134,4267],{"class":287},[277,93136,4278],{"class":291},[277,93138,298],{"class":283},[277,93140,12464],{"class":301},[277,93142,44692],{"class":283},[277,93144,4267],{"class":287},[277,93146,305],{"class":283},[277,93148,93149,93151,93153],{"class":279,"line":397},[277,93150,785],{"class":283},[277,93152,802],{"class":287},[277,93154,305],{"class":283},[267,93156,93158],{"className":269,"code":44707,"filename":971,"highlights":93157,"language":272,"meta":273,"style":273},[436],[16,93159,93160,93168,93176,93182,93188,93194,93198,93202,93206,93214,93218,93226,93241,93259],{"__ignoreMap":273},[277,93161,93162,93164,93166],{"class":279,"line":280},[277,93163,284],{"class":283},[277,93165,288],{"class":287},[277,93167,305],{"class":283},[277,93169,93170,93172,93174],{"class":279,"line":308},[277,93171,1057],{"class":311},[277,93173,1060],{"class":311},[277,93175,343],{"class":283},[277,93177,93178,93180],{"class":279,"line":324},[277,93179,1086],{"class":291},[277,93181,473],{"class":283},[277,93183,93184,93186],{"class":279,"line":331},[277,93185,1093],{"class":311},[277,93187,343],{"class":283},[277,93189,93190,93192],{"class":279,"line":346},[277,93191,31686],{"class":283},[277,93193,4692],{"class":356},[277,93195,93196],{"class":279,"line":360},[277,93197,1126],{"class":283},[277,93199,93200],{"class":279,"line":371},[277,93201,542],{"class":283},[277,93203,93204],{"class":279,"line":381},[277,93205,394],{"class":283},[277,93207,93208,93210,93212],{"class":279,"line":391},[277,93209,785],{"class":283},[277,93211,288],{"class":287},[277,93213,305],{"class":283},[277,93215,93216],{"class":279,"line":397},[277,93217,328],{"emptyLinePlaceholder":327},[277,93219,93220,93222,93224],{"class":279,"line":402},[277,93221,284],{"class":283},[277,93223,802],{"class":287},[277,93225,305],{"class":283},[277,93227,93229,93231,93233,93235,93237,93239],{"class":93228,"line":436},[279,9398],[277,93230,810],{"class":283},[277,93232,21],{"class":287},[277,93234,22314],{"class":291},[277,93236,44673],{"class":283},[277,93238,21],{"class":287},[277,93240,305],{"class":283},[277,93242,93243,93245,93247,93249,93251,93253,93255,93257],{"class":279,"line":456},[277,93244,810],{"class":283},[277,93246,4267],{"class":287},[277,93248,4278],{"class":291},[277,93250,298],{"class":283},[277,93252,12464],{"class":301},[277,93254,44692],{"class":283},[277,93256,4267],{"class":287},[277,93258,305],{"class":283},[277,93260,93261,93263,93265],{"class":279,"line":461},[277,93262,785],{"class":283},[277,93264,802],{"class":287},[277,93266,305],{"class":283},[21,93268,44820],{},[30,93270,93271],{"id":21909},[16,93272,21909],{},[21,93274,44827],{},[267,93276,93278],{"className":269,"code":44830,"filename":271,"highlights":93277,"language":272,"meta":273,"style":273},[381],[16,93279,93280,93290,93300,93304,93320,93328,93332,93340,93355,93367,93375,93393],{"__ignoreMap":273},[277,93281,93282,93284,93286,93288],{"class":279,"line":280},[277,93283,284],{"class":283},[277,93285,288],{"class":287},[277,93287,292],{"class":291},[277,93289,305],{"class":283},[277,93291,93292,93294,93296,93298],{"class":279,"line":308},[277,93293,312],{"class":311},[277,93295,11006],{"class":283},[277,93297,318],{"class":311},[277,93299,321],{"class":301},[277,93301,93302],{"class":279,"line":324},[277,93303,328],{"emptyLinePlaceholder":327},[277,93305,93306,93308,93310,93312,93314,93316,93318],{"class":279,"line":331},[277,93307,405],{"class":311},[277,93309,9380],{"class":356},[277,93311,340],{"class":311},[277,93313,413],{"class":291},[277,93315,448],{"class":283},[277,93317,3542],{"class":356},[277,93319,433],{"class":283},[277,93321,93322,93324,93326],{"class":279,"line":346},[277,93323,785],{"class":283},[277,93325,288],{"class":287},[277,93327,305],{"class":283},[277,93329,93330],{"class":279,"line":360},[277,93331,328],{"emptyLinePlaceholder":327},[277,93333,93334,93336,93338],{"class":279,"line":371},[277,93335,284],{"class":283},[277,93337,802],{"class":287},[277,93339,305],{"class":283},[277,93341,93343,93345,93347,93349,93351,93353],{"class":93342,"line":381},[279,9398],[277,93344,810],{"class":283},[277,93346,4201],{"class":287},[277,93348,44903],{"class":291},[277,93350,298],{"class":283},[277,93352,44908],{"class":301},[277,93354,305],{"class":283},[277,93356,93357,93359,93361,93363,93365],{"class":279,"line":391},[277,93358,829],{"class":283},[277,93360,21],{"class":287},[277,93362,44919],{"class":283},[277,93364,21],{"class":287},[277,93366,305],{"class":283},[277,93368,93369,93371,93373],{"class":279,"line":397},[277,93370,954],{"class":283},[277,93372,4201],{"class":287},[277,93374,305],{"class":283},[277,93376,93377,93379,93381,93383,93385,93387,93389,93391],{"class":279,"line":402},[277,93378,810],{"class":283},[277,93380,4267],{"class":287},[277,93382,4278],{"class":291},[277,93384,298],{"class":283},[277,93386,12464],{"class":301},[277,93388,44692],{"class":283},[277,93390,4267],{"class":287},[277,93392,305],{"class":283},[277,93394,93395,93397,93399],{"class":279,"line":436},[277,93396,785],{"class":283},[277,93398,802],{"class":287},[277,93400,305],{"class":283},[267,93402,93404],{"className":269,"code":44960,"filename":971,"highlights":93403,"language":272,"meta":273,"style":273},[436],[16,93405,93406,93414,93422,93428,93434,93440,93444,93448,93452,93460,93464,93472,93487,93499,93507],{"__ignoreMap":273},[277,93407,93408,93410,93412],{"class":279,"line":280},[277,93409,284],{"class":283},[277,93411,288],{"class":287},[277,93413,305],{"class":283},[277,93415,93416,93418,93420],{"class":279,"line":308},[277,93417,1057],{"class":311},[277,93419,1060],{"class":311},[277,93421,343],{"class":283},[277,93423,93424,93426],{"class":279,"line":324},[277,93425,1086],{"class":291},[277,93427,473],{"class":283},[277,93429,93430,93432],{"class":279,"line":331},[277,93431,1093],{"class":311},[277,93433,343],{"class":283},[277,93435,93436,93438],{"class":279,"line":346},[277,93437,44996],{"class":283},[277,93439,44999],{"class":356},[277,93441,93442],{"class":279,"line":360},[277,93443,1126],{"class":283},[277,93445,93446],{"class":279,"line":371},[277,93447,542],{"class":283},[277,93449,93450],{"class":279,"line":381},[277,93451,394],{"class":283},[277,93453,93454,93456,93458],{"class":279,"line":391},[277,93455,785],{"class":283},[277,93457,288],{"class":287},[277,93459,305],{"class":283},[277,93461,93462],{"class":279,"line":397},[277,93463,328],{"emptyLinePlaceholder":327},[277,93465,93466,93468,93470],{"class":279,"line":402},[277,93467,284],{"class":283},[277,93469,802],{"class":287},[277,93471,305],{"class":283},[277,93473,93475,93477,93479,93481,93483,93485],{"class":93474,"line":436},[279,9398],[277,93476,810],{"class":283},[277,93478,4201],{"class":287},[277,93480,44903],{"class":291},[277,93482,298],{"class":283},[277,93484,45045],{"class":301},[277,93486,305],{"class":283},[277,93488,93489,93491,93493,93495,93497],{"class":279,"line":456},[277,93490,829],{"class":283},[277,93492,21],{"class":287},[277,93494,45056],{"class":283},[277,93496,21],{"class":287},[277,93498,305],{"class":283},[277,93500,93501,93503,93505],{"class":279,"line":461},[277,93502,954],{"class":283},[277,93504,4201],{"class":287},[277,93506,305],{"class":283},[277,93508,93509,93511,93513],{"class":279,"line":476},[277,93510,785],{"class":283},[277,93512,802],{"class":287},[277,93514,305],{"class":283},[21,93516,45079,93517,45083],{},[72,93518,45082],{},[30,93520,93521],{"id":21912},[16,93522,21912],{},[21,93524,45090],{},[267,93526,93528],{"className":269,"code":45093,"filename":271,"highlights":93527,"language":272,"meta":273,"style":273},[346],[16,93529,93530,93540,93548,93552,93560,93571,93575,93583],{"__ignoreMap":273},[277,93531,93532,93534,93536,93538],{"class":279,"line":280},[277,93533,284],{"class":283},[277,93535,288],{"class":287},[277,93537,292],{"class":291},[277,93539,305],{"class":283},[277,93541,93542,93544,93546],{"class":279,"line":308},[277,93543,785],{"class":283},[277,93545,288],{"class":287},[277,93547,305],{"class":283},[277,93549,93550],{"class":279,"line":324},[277,93551,328],{"emptyLinePlaceholder":327},[277,93553,93554,93556,93558],{"class":279,"line":331},[277,93555,284],{"class":283},[277,93557,802],{"class":287},[277,93559,305],{"class":283},[277,93561,93563,93565,93567,93569],{"class":93562,"line":346},[279,9398],[277,93564,810],{"class":283},[277,93566,4201],{"class":287},[277,93568,23208],{"class":291},[277,93570,305],{"class":283},[277,93572,93573],{"class":279,"line":360},[277,93574,45142],{"class":283},[277,93576,93577,93579,93581],{"class":279,"line":371},[277,93578,954],{"class":283},[277,93580,4201],{"class":287},[277,93582,305],{"class":283},[277,93584,93585,93587,93589],{"class":279,"line":381},[277,93586,785],{"class":283},[277,93588,802],{"class":287},[277,93590,305],{"class":283},[267,93592,93594],{"className":269,"code":45161,"filename":971,"highlights":93593,"language":272,"meta":273,"style":273},[360],[16,93595,93596,93604,93612,93620,93624,93632,93643,93647,93655],{"__ignoreMap":273},[277,93597,93598,93600,93602],{"class":279,"line":280},[277,93599,284],{"class":283},[277,93601,288],{"class":287},[277,93603,305],{"class":283},[277,93605,93606,93608,93610],{"class":279,"line":308},[277,93607,1057],{"class":311},[277,93609,1060],{"class":311},[277,93611,45181],{"class":283},[277,93613,93614,93616,93618],{"class":279,"line":324},[277,93615,785],{"class":283},[277,93617,288],{"class":287},[277,93619,305],{"class":283},[277,93621,93622],{"class":279,"line":331},[277,93623,328],{"emptyLinePlaceholder":327},[277,93625,93626,93628,93630],{"class":279,"line":346},[277,93627,284],{"class":283},[277,93629,802],{"class":287},[277,93631,305],{"class":283},[277,93633,93635,93637,93639,93641],{"class":93634,"line":360},[279,9398],[277,93636,810],{"class":283},[277,93638,4201],{"class":287},[277,93640,23208],{"class":291},[277,93642,305],{"class":283},[277,93644,93645],{"class":279,"line":371},[277,93646,45142],{"class":283},[277,93648,93649,93651,93653],{"class":279,"line":381},[277,93650,954],{"class":283},[277,93652,4201],{"class":287},[277,93654,305],{"class":283},[277,93656,93657,93659,93661],{"class":279,"line":391},[277,93658,785],{"class":283},[277,93660,802],{"class":287},[277,93662,305],{"class":283},[21,93664,45235],{},[30,93666,93667],{"id":20608},[16,93668,20608],{},[21,93670,45242],{},[267,93672,93674],{"className":269,"code":45245,"filename":271,"highlights":93673,"language":272,"meta":273,"style":273},[346],[16,93675,93676,93686,93694,93698,93706,93717,93721,93729],{"__ignoreMap":273},[277,93677,93678,93680,93682,93684],{"class":279,"line":280},[277,93679,284],{"class":283},[277,93681,288],{"class":287},[277,93683,292],{"class":291},[277,93685,305],{"class":283},[277,93687,93688,93690,93692],{"class":279,"line":308},[277,93689,785],{"class":283},[277,93691,288],{"class":287},[277,93693,305],{"class":283},[277,93695,93696],{"class":279,"line":324},[277,93697,328],{"emptyLinePlaceholder":327},[277,93699,93700,93702,93704],{"class":279,"line":331},[277,93701,284],{"class":283},[277,93703,802],{"class":287},[277,93705,305],{"class":283},[277,93707,93709,93711,93713,93715],{"class":93708,"line":346},[279,9398],[277,93710,810],{"class":283},[277,93712,4201],{"class":287},[277,93714,20999],{"class":291},[277,93716,305],{"class":283},[277,93718,93719],{"class":279,"line":360},[277,93720,45294],{"class":283},[277,93722,93723,93725,93727],{"class":279,"line":371},[277,93724,954],{"class":283},[277,93726,4201],{"class":287},[277,93728,305],{"class":283},[277,93730,93731,93733,93735],{"class":279,"line":381},[277,93732,785],{"class":283},[277,93734,802],{"class":287},[277,93736,305],{"class":283},[267,93738,93740],{"className":269,"code":45313,"filename":971,"highlights":93739,"language":272,"meta":273,"style":273},[360],[16,93741,93742,93750,93758,93766,93770,93778,93789,93793,93801],{"__ignoreMap":273},[277,93743,93744,93746,93748],{"class":279,"line":280},[277,93745,284],{"class":283},[277,93747,288],{"class":287},[277,93749,305],{"class":283},[277,93751,93752,93754,93756],{"class":279,"line":308},[277,93753,1057],{"class":311},[277,93755,1060],{"class":311},[277,93757,45181],{"class":283},[277,93759,93760,93762,93764],{"class":279,"line":324},[277,93761,785],{"class":283},[277,93763,288],{"class":287},[277,93765,305],{"class":283},[277,93767,93768],{"class":279,"line":331},[277,93769,328],{"emptyLinePlaceholder":327},[277,93771,93772,93774,93776],{"class":279,"line":346},[277,93773,284],{"class":283},[277,93775,802],{"class":287},[277,93777,305],{"class":283},[277,93779,93781,93783,93785,93787],{"class":93780,"line":360},[279,9398],[277,93782,810],{"class":283},[277,93784,4201],{"class":287},[277,93786,20999],{"class":291},[277,93788,305],{"class":283},[277,93790,93791],{"class":279,"line":371},[277,93792,45294],{"class":283},[277,93794,93795,93797,93799],{"class":279,"line":381},[277,93796,954],{"class":283},[277,93798,4201],{"class":287},[277,93800,305],{"class":283},[277,93802,93803,93805,93807],{"class":279,"line":391},[277,93804,785],{"class":283},[277,93806,802],{"class":287},[277,93808,305],{"class":283},[21,93810,45386],{},[30,93812,3241],{"id":45389},[21,93814,45392],{},[267,93816,93818],{"className":15972,"code":45395,"filename":19438,"highlights":93817,"language":15975,"meta":273,"style":273},[331,346,360,371,381],[16,93819,93820,93830,93840,93852,93865,93876,93885,93890],{"__ignoreMap":273},[277,93821,93822,93824,93826,93828],{"class":279,"line":280},[277,93823,312],{"class":311},[277,93825,45405],{"class":283},[277,93827,318],{"class":311},[277,93829,321],{"class":301},[277,93831,93832,93834,93836,93838],{"class":279,"line":308},[277,93833,312],{"class":311},[277,93835,45416],{"class":283},[277,93837,318],{"class":311},[277,93839,45421],{"class":301},[277,93841,93842,93844,93846,93848,93850],{"class":279,"line":324},[277,93843,405],{"class":311},[277,93845,45428],{"class":356},[277,93847,340],{"class":311},[277,93849,45433],{"class":291},[277,93851,45436],{"class":283},[277,93853,93855,93857,93859,93861,93863],{"class":93854,"line":331},[279,9398],[277,93856,45442],{"class":283},[277,93858,45445],{"class":291},[277,93860,448],{"class":283},[277,93862,45450],{"class":301},[277,93864,2360],{"class":283},[277,93866,93868,93870,93872,93874],{"class":93867,"line":346},[279,9398],[277,93869,6784],{"class":291},[277,93871,448],{"class":283},[277,93873,18319],{"class":349},[277,93875,2476],{"class":283},[277,93877,93879,93881,93883],{"class":93878,"line":360},[279,9398],[277,93880,45469],{"class":283},[277,93882,11476],{"class":291},[277,93884,622],{"class":283},[277,93886,93888],{"class":93887,"line":371},[279,9398],[277,93889,542],{"class":283},[277,93891,93893],{"class":93892,"line":381},[279,9398],[277,93894,676],{"class":283},[267,93896,93898],{"className":269,"code":45486,"filename":9339,"highlights":93897,"language":272,"meta":273,"style":273},[308],[16,93899,93900,93908,93919],{"__ignoreMap":273},[277,93901,93902,93904,93906],{"class":279,"line":280},[277,93903,284],{"class":283},[277,93905,802],{"class":287},[277,93907,305],{"class":283},[277,93909,93911,93913,93915,93917],{"class":93910,"line":308},[279,9398],[277,93912,810],{"class":283},[277,93914,18041],{"class":287},[277,93916,45507],{"class":291},[277,93918,4325],{"class":283},[277,93920,93921,93923,93925],{"class":279,"line":324},[277,93922,785],{"class":283},[277,93924,802],{"class":287},[277,93926,305],{"class":283},[21,93928,45520],{},[30,93930,17671],{"id":17670},[21,93932,45525,93933,104],{},[72,93934,45528],{},[21,93936,45531],{},[38,93938,93939,93941,93943],{},[41,93940,45536],{},[41,93942,190],{},[41,93944,45541],{},[21,93946,45544,93947,45548],{},[72,93948,45547],{},[1606,93950,40264],{},{"title":273,"searchDepth":308,"depth":308,"links":93952},[93953,93954,93955,93956,93957,93958,93959,93960,93961,93962,93963,93964,93965,93966,93967,93968],{"id":13168,"depth":308,"text":13169},{"id":42296,"depth":308,"text":45555},{"id":7701,"depth":308,"text":7701},{"id":24880,"depth":308,"text":24880},{"id":17974,"depth":308,"text":17974},{"id":17971,"depth":308,"text":17971},{"id":17977,"depth":308,"text":17977},{"id":24587,"depth":308,"text":24587},{"id":24590,"depth":308,"text":24590},{"id":25869,"depth":308,"text":25869},{"id":21906,"depth":308,"text":21906},{"id":21909,"depth":308,"text":21909},{"id":21912,"depth":308,"text":21912},{"id":20608,"depth":308,"text":20608},{"id":45389,"depth":308,"text":3241},{"id":17670,"depth":308,"text":17671},{"script":93970},[93971],{"type":1632,"key":1633,"data-nuxt-schema-org":327,"nodes":93972},[93973],{"headline":42204,"author":93974,"datePublished":45579,"@type":1640},{"name":1637,"@type":1638},{"updatedAt":28100,"readingTime":360,"coverCaption":45581,"author":1637,"keywords":93976},[1645,20588,45583,45584],[93978],{"headline":42204,"author":93979,"datePublished":45579,"@type":1640},{"name":1637,"@type":1638},{"title":42204,"description":45572},[93982,93983,93984,93985,93986,93987],{"tag":20588,"color":20589},{"tag":21891,"color":21892},{"tag":42197,"color":42198},{"tag":40325,"color":3168},{"tag":3167,"color":3168},{"tag":9074,"color":9075},{"id":45600,"title":45601,"body":93989,"cover":46365,"coverAlt":45601,"date":46366,"description":46367,"draft":1627,"extension":1628,"head":94628,"locale":1641,"meta":94634,"navigation":327,"path":46381,"schemaOrg":94636,"seo":94639,"series":1656,"seriesDescription":1656,"seriesOrder":1656,"seriesTitle":1656,"slug":1656,"stem":46386,"tags":94640,"__hash__":46396},{"type":8,"value":93990,"toc":94618},[93991,93993,93999,94001,94005,94009,94011,94019,94021,94023,94163,94307,94311,94416,94420,94432,94508,94510,94512,94518,94582,94590,94592,94608,94610,94616],[11,93992,45607],{"id":45606},[21,93994,45610,93995,45614,93997,45618],{},[72,93996,45613],{},[72,93998,45617],{},[30,94000,45622],{"id":45621},[21,94002,45625,94003,45629],{},[3292,94004,45628],{},[21,94006,45632,94007,45636],{},[72,94008,45635],{},[30,94010,45640],{"id":45639},[21,94012,45643,94013,45647,94015,45650,94017,45654],{},[72,94014,45646],{},[3292,94016,25947],{},[3292,94018,45653],{},[192,94020,45658],{"id":45657},[21,94022,45661],{},[267,94024,94026],{"className":269,"code":45664,"filename":45665,"highlights":94025,"language":272,"meta":273,"style":273},[331,346,360,371,456],[16,94027,94028,94038,94050,94054,94071,94086,94097,94102,94106,94110,94118,94122,94130,94155],{"__ignoreMap":273},[277,94029,94030,94032,94034,94036],{"class":279,"line":280},[277,94031,284],{"class":283},[277,94033,288],{"class":287},[277,94035,292],{"class":291},[277,94037,305],{"class":283},[277,94039,94040,94042,94044,94046,94048],{"class":279,"line":308},[277,94041,45683],{"class":311},[277,94043,11006],{"class":283},[277,94045,318],{"class":311},[277,94047,45690],{"class":301},[277,94049,18151],{"class":283},[277,94051,94052],{"class":279,"line":324},[277,94053,328],{"emptyLinePlaceholder":327},[277,94055,94057,94059,94061,94063,94065,94067,94069],{"class":94056,"line":331},[279,9398],[277,94058,479],{"class":311},[277,94060,18266],{"class":356},[277,94062,340],{"class":311},[277,94064,413],{"class":291},[277,94066,448],{"class":283},[277,94068,2123],{"class":356},[277,94070,18277],{"class":283},[277,94072,94074,94076,94078,94080,94082,94084],{"class":94073,"line":346},[279,9398],[277,94075,479],{"class":311},[277,94077,45721],{"class":291},[277,94079,340],{"class":311},[277,94081,598],{"class":283},[277,94083,601],{"class":311},[277,94085,343],{"class":283},[277,94087,94089,94091,94093,94095],{"class":94088,"line":360},[279,9398],[277,94090,45735],{"class":283},[277,94092,298],{"class":311},[277,94094,2288],{"class":311},[277,94096,45742],{"class":283},[277,94098,94100],{"class":94099,"line":371},[279,9398],[277,94101,45748],{"class":283},[277,94103,94104],{"class":279,"line":381},[277,94105,328],{"emptyLinePlaceholder":327},[277,94107,94108],{"class":279,"line":391},[277,94109,45757],{"class":12741},[277,94111,94112,94114,94116],{"class":279,"line":397},[277,94113,785],{"class":283},[277,94115,288],{"class":287},[277,94117,305],{"class":283},[277,94119,94120],{"class":279,"line":402},[277,94121,328],{"emptyLinePlaceholder":327},[277,94123,94124,94126,94128],{"class":279,"line":436},[277,94125,284],{"class":283},[277,94127,802],{"class":287},[277,94129,305],{"class":283},[277,94131,94133,94135,94137,94139,94141,94143,94145,94147,94149,94151,94153],{"class":94132,"line":456},[279,9398],[277,94134,810],{"class":283},[277,94136,25947],{"class":287},[277,94138,45787],{"class":291},[277,94140,298],{"class":283},[277,94142,18724],{"class":301},[277,94144,45794],{"class":291},[277,94146,298],{"class":283},[277,94148,45799],{"class":301},[277,94150,24690],{"class":283},[277,94152,25947],{"class":287},[277,94154,305],{"class":283},[277,94156,94157,94159,94161],{"class":279,"line":461},[277,94158,785],{"class":283},[277,94160,802],{"class":287},[277,94162,305],{"class":283},[267,94164,94166],{"className":269,"code":45816,"filename":45817,"highlights":94165,"language":272,"meta":273,"style":273},[346,391,397,402,520],[16,94167,94168,94176,94184,94190,94196,94203,94207,94211,94215,94222,94237,94242,94246,94250,94254,94262,94266,94274,94299],{"__ignoreMap":273},[277,94169,94170,94172,94174],{"class":279,"line":280},[277,94171,284],{"class":283},[277,94173,288],{"class":287},[277,94175,305],{"class":283},[277,94177,94178,94180,94182],{"class":279,"line":308},[277,94179,45833],{"class":311},[277,94181,1060],{"class":311},[277,94183,343],{"class":283},[277,94185,94186,94188],{"class":279,"line":324},[277,94187,45842],{"class":291},[277,94189,473],{"class":283},[277,94191,94192,94194],{"class":279,"line":331},[277,94193,2754],{"class":311},[277,94195,343],{"class":283},[277,94197,94199,94201],{"class":94198,"line":346},[279,9398],[277,94200,45856],{"class":283},[277,94202,2043],{"class":356},[277,94204,94205],{"class":279,"line":360},[277,94206,36566],{"class":283},[277,94208,94209],{"class":279,"line":371},[277,94210,7016],{"class":283},[277,94212,94213],{"class":279,"line":381},[277,94214,45871],{"class":283},[277,94216,94218,94220],{"class":94217,"line":391},[279,9398],[277,94219,45877],{"class":291},[277,94221,473],{"class":283},[277,94223,94225,94227,94229,94231,94233,94235],{"class":94224,"line":397},[279,9398],[277,94226,8819],{"class":356},[277,94228,45887],{"class":283},[277,94230,298],{"class":311},[277,94232,2288],{"class":311},[277,94234,1341],{"class":356},[277,94236,45896],{"class":283},[277,94238,94240],{"class":94239,"line":402},[279,9398],[277,94241,1203],{"class":283},[277,94243,94244],{"class":279,"line":436},[277,94245,1126],{"class":283},[277,94247,94248],{"class":279,"line":456},[277,94249,45748],{"class":283},[277,94251,94252],{"class":279,"line":461},[277,94253,45757],{"class":12741},[277,94255,94256,94258,94260],{"class":279,"line":476},[277,94257,785],{"class":283},[277,94259,288],{"class":287},[277,94261,305],{"class":283},[277,94263,94264],{"class":279,"line":500},[277,94265,328],{"emptyLinePlaceholder":327},[277,94267,94268,94270,94272],{"class":279,"line":505},[277,94269,284],{"class":283},[277,94271,802],{"class":287},[277,94273,305],{"class":283},[277,94275,94277,94279,94281,94283,94285,94287,94289,94291,94293,94295,94297],{"class":94276,"line":520},[279,9398],[277,94278,810],{"class":283},[277,94280,25947],{"class":287},[277,94282,45787],{"class":291},[277,94284,298],{"class":283},[277,94286,18724],{"class":301},[277,94288,45794],{"class":291},[277,94290,298],{"class":283},[277,94292,45799],{"class":301},[277,94294,24690],{"class":283},[277,94296,25947],{"class":287},[277,94298,305],{"class":283},[277,94300,94301,94303,94305],{"class":279,"line":539},[277,94302,785],{"class":283},[277,94304,802],{"class":287},[277,94306,305],{"class":283},[21,94308,94309,45972],{},[72,94310,45971],{},[267,94312,94314],{"className":269,"code":45975,"filename":45976,"highlights":94313,"language":272,"meta":273,"style":273},[308,324,331,360],[16,94315,94316,94324,94339,94354,94359,94367,94388,94392,94400,94408],{"__ignoreMap":273},[277,94317,94318,94320,94322],{"class":279,"line":280},[277,94319,284],{"class":283},[277,94321,802],{"class":287},[277,94323,305],{"class":283},[277,94325,94327,94329,94331,94333,94335,94337],{"class":94326,"line":308},[279,9398],[277,94328,810],{"class":283},[277,94330,45995],{"class":287},[277,94332,26191],{"class":291},[277,94334,298],{"class":283},[277,94336,46002],{"class":301},[277,94338,305],{"class":283},[277,94340,94342,94344,94346,94348,94350,94352],{"class":94341,"line":324},[279,9398],[277,94343,829],{"class":283},[277,94345,4267],{"class":287},[277,94347,4278],{"class":291},[277,94349,298],{"class":283},[277,94351,45799],{"class":301},[277,94353,305],{"class":283},[277,94355,94357],{"class":94356,"line":331},[279,9398],[277,94358,46025],{"class":283},[277,94360,94361,94363,94365],{"class":279,"line":346},[277,94362,922],{"class":283},[277,94364,4267],{"class":287},[277,94366,305],{"class":283},[277,94368,94370,94372,94374,94376,94378,94380,94382,94384,94386],{"class":94369,"line":360},[279,9398],[277,94371,829],{"class":283},[277,94373,4201],{"class":287},[277,94375,834],{"class":291},[277,94377,298],{"class":283},[277,94379,18724],{"class":301},[277,94381,816],{"class":291},[277,94383,298],{"class":283},[277,94385,46053],{"class":301},[277,94387,305],{"class":283},[277,94389,94390],{"class":279,"line":371},[277,94391,46060],{"class":283},[277,94393,94394,94396,94398],{"class":279,"line":381},[277,94395,922],{"class":283},[277,94397,4201],{"class":287},[277,94399,305],{"class":283},[277,94401,94402,94404,94406],{"class":279,"line":391},[277,94403,954],{"class":283},[277,94405,45995],{"class":287},[277,94407,305],{"class":283},[277,94409,94410,94412,94414],{"class":279,"line":397},[277,94411,785],{"class":283},[277,94413,802],{"class":287},[277,94415,305],{"class":283},[30,94417,46088,94418,19],{"id":46087},[16,94419,46091],{},[21,94421,46094,94422,46097,94424,46101,94426,511,94428,46107,94430,46111],{},[16,94423,26159],{},[16,94425,46100],{},[16,94427,46091],{},[3292,94429,46106],{},[72,94431,46110],{},[267,94433,94435],{"className":46114,"code":46115,"filename":46116,"highlights":94434,"language":46118,"meta":273,"style":273},[331,346,360,397,402,436,456],[16,94436,94437,94441,94445,94449,94454,94459,94464,94468,94472,94476,94481,94486,94491,94496,94500,94504],{"__ignoreMap":273},[277,94438,94439],{"class":279,"line":280},[277,94440,46125],{},[277,94442,94443],{"class":279,"line":308},[277,94444,328],{"emptyLinePlaceholder":327},[277,94446,94447],{"class":279,"line":324},[277,94448,46134],{},[277,94450,94452],{"class":94451,"line":331},[279,9398],[277,94453,46140],{},[277,94455,94457],{"class":94456,"line":346},[279,9398],[277,94458,46146],{},[277,94460,94462],{"class":94461,"line":360},[279,9398],[277,94463,46152],{},[277,94465,94466],{"class":279,"line":371},[277,94467,328],{"emptyLinePlaceholder":327},[277,94469,94470],{"class":279,"line":381},[277,94471,46161],{},[277,94473,94474],{"class":279,"line":391},[277,94475,46166],{},[277,94477,94479],{"class":94478,"line":397},[279,9398],[277,94480,46172],{},[277,94482,94484],{"class":94483,"line":402},[279,9398],[277,94485,46178],{},[277,94487,94489],{"class":94488,"line":436},[279,9398],[277,94490,46184],{},[277,94492,94494],{"class":94493,"line":456},[279,9398],[277,94495,46190],{},[277,94497,94498],{"class":279,"line":461},[277,94499,18478],{},[277,94501,94502],{"class":279,"line":476},[277,94503,542],{},[277,94505,94506],{"class":279,"line":500},[277,94507,18255],{},[21,94509,46205],{},[30,94511,46209],{"id":46208},[21,94513,46212,94514,511,94516,46219],{},[3292,94515,46215],{},[16,94517,46218],{},[5392,94519,94520,94530],{},[5395,94521,94522],{},[5398,94523,94524,94526,94528],{},[5401,94525,46228],{},[5401,94527,13469],{},[5401,94529,45617],{},[5414,94531,94532,94542,94552,94562,94572],{},[5398,94533,94534,94538,94540],{},[5419,94535,94536],{},[72,94537,46241],{},[5419,94539,46244],{},[5419,94541,46247],{},[5398,94543,94544,94548,94550],{},[5419,94545,94546],{},[72,94547,46254],{},[5419,94549,46257],{},[5419,94551,46260],{},[5398,94553,94554,94558,94560],{},[5419,94555,94556],{},[72,94557,46267],{},[5419,94559,46270],{},[5419,94561,46273],{},[5398,94563,94564,94568,94570],{},[5419,94565,94566],{},[72,94567,26340],{},[5419,94569,46282],{},[5419,94571,46285],{},[5398,94573,94574,94578,94580],{},[5419,94575,94576],{},[72,94577,46292],{},[5419,94579,46295],{},[5419,94581,46298],{},[21,94583,46301,94584,46304,94586,46307,94588,1895],{},[3292,94585,45617],{},[16,94587,687],{},[3292,94589,46310],{},[30,94591,46314],{"id":46313},[10089,94593,94594,94600,94604],{},[41,94595,94596,46322,94598,46325],{},[72,94597,46321],{},[3292,94599,45628],{},[41,94601,94602,46331],{},[72,94603,46330],{},[41,94605,94606,46337],{},[72,94607,46336],{},[30,94609,46341],{"id":46340},[21,94611,46344,94612,46347,94614,46350],{},[16,94613,25869],{},[72,94615,45617],{},[1606,94617,46353],{},{"title":273,"searchDepth":308,"depth":308,"links":94619},[94620,94621,94624,94625,94626,94627],{"id":45621,"depth":308,"text":45622},{"id":45639,"depth":308,"text":45640,"children":94622},[94623],{"id":45657,"depth":324,"text":45658},{"id":46087,"depth":308,"text":46361},{"id":46208,"depth":308,"text":46209},{"id":46313,"depth":308,"text":46314},{"id":46340,"depth":308,"text":46341},{"script":94629},[94630],{"type":1632,"key":1633,"data-nuxt-schema-org":327,"nodes":94631},[94632],{"headline":45601,"author":94633,"datePublished":46374,"@type":1640},{"name":1637,"@type":1638},{"updatedAt":46376,"coverCaption":46377,"author":1637,"keywords":94635},[13114,45617,46379,46380,45583],[94637],{"headline":45601,"author":94638,"datePublished":46374,"@type":1640},{"name":1637,"@type":1638},{"title":45601,"description":46367},[94641,94642,94643,94644,94645,94646],{"tag":1665,"color":1666},{"tag":46380,"color":46390},{"tag":1668,"color":1669},{"tag":3167,"color":3168},{"tag":1671,"color":1672},{"tag":45584,"color":46395},{"id":46398,"title":46399,"body":94648,"cover":48321,"coverAlt":46399,"date":48322,"description":48323,"draft":1627,"extension":1628,"head":96322,"locale":1641,"meta":96328,"navigation":327,"path":48334,"schemaOrg":96330,"seo":96333,"series":1656,"seriesDescription":1656,"seriesOrder":1656,"seriesTitle":1656,"slug":1656,"stem":48339,"tags":96334,"__hash__":48351},{"type":8,"value":94649,"toc":96309},[94650,94652,94656,94662,94664,94682,94686,94688,94698,94700,94702,94706,94817,94893,94897,94988,95062,95064,95072,95088,95094,95106,95110,95114,95232,95406,95410,95538,95753,95755,95759,95793,95795,95797,95805,95809,95958,95962,96155,96157,96165,96173,96175,96181,96197,96199,96201,96259,96261,96275,96277,96285,96305,96307],[11,94651,46405],{"id":46404},[21,94653,46408,94654,46412],{},[72,94655,46411],{},[21,94657,94658,46418,94660,46422],{},[16,94659,46417],{},[16,94661,46421],{},[30,94663,46426],{"id":46425},[10089,94665,94666,94672,94676],{},[41,94667,94668,46434,94670,46438],{},[72,94669,46433],{},[16,94671,46437],{},[41,94673,94674,46444],{},[72,94675,46443],{},[41,94677,94678,46450,94680,46453],{},[72,94679,46449],{},[16,94681,1882],{},[30,94683,46457,94684],{"id":46456},[72,94685,46460],{},[21,94687,46463],{},[38,94689,94690,94694],{},[41,94691,94692,46471],{},[72,94693,46470],{},[41,94695,94696,46477],{},[72,94697,46476],{},[30,94699,46481],{"id":46480},[21,94701,46484],{},[23924,94703,94704],{"id":46487},[72,94705,46490],{},[267,94707,94709],{"className":269,"code":46493,"filename":271,"highlights":94708,"language":272,"meta":273,"style":273},[308,381],[16,94710,94711,94721,94732,94742,94746,94762,94766,94770,94781,94789,94793,94801,94809],{"__ignoreMap":273},[277,94712,94713,94715,94717,94719],{"class":279,"line":280},[277,94714,284],{"class":283},[277,94716,288],{"class":287},[277,94718,292],{"class":291},[277,94720,305],{"class":283},[277,94722,94724,94726,94728,94730],{"class":94723,"line":308},[279,9398],[277,94725,312],{"class":311},[277,94727,46514],{"class":283},[277,94729,318],{"class":311},[277,94731,321],{"class":301},[277,94733,94734,94736,94738,94740],{"class":279,"line":324},[277,94735,312],{"class":311},[277,94737,46525],{"class":283},[277,94739,318],{"class":311},[277,94741,46530],{"class":301},[277,94743,94744],{"class":279,"line":331},[277,94745,328],{"emptyLinePlaceholder":327},[277,94747,94748,94750,94752,94754,94756,94758,94760],{"class":279,"line":346},[277,94749,405],{"class":311},[277,94751,46541],{"class":356},[277,94753,340],{"class":311},[277,94755,413],{"class":291},[277,94757,448],{"class":283},[277,94759,46550],{"class":301},[277,94761,433],{"class":283},[277,94763,94764],{"class":279,"line":360},[277,94765,328],{"emptyLinePlaceholder":327},[277,94767,94768],{"class":279,"line":371},[277,94769,46561],{"class":12741},[277,94771,94773,94775,94777,94779],{"class":94772,"line":381},[279,9398],[277,94774,46567],{"class":291},[277,94776,448],{"class":283},[277,94778,46572],{"class":301},[277,94780,46575],{"class":283},[277,94782,94783,94785,94787],{"class":279,"line":391},[277,94784,785],{"class":283},[277,94786,288],{"class":287},[277,94788,305],{"class":283},[277,94790,94791],{"class":279,"line":397},[277,94792,328],{"emptyLinePlaceholder":327},[277,94794,94795,94797,94799],{"class":279,"line":402},[277,94796,284],{"class":283},[277,94798,802],{"class":287},[277,94800,305],{"class":283},[277,94802,94803,94805,94807],{"class":279,"line":436},[277,94804,810],{"class":283},[277,94806,46602],{"class":287},[277,94808,4325],{"class":283},[277,94810,94811,94813,94815],{"class":279,"line":456},[277,94812,785],{"class":283},[277,94814,802],{"class":287},[277,94816,305],{"class":283},[267,94818,94820],{"className":269,"code":46615,"filename":971,"highlights":94819,"language":272,"meta":273,"style":273},[324],[16,94821,94822,94830,94838,94843,94849,94853,94857,94865,94869,94877,94885],{"__ignoreMap":273},[277,94823,94824,94826,94828],{"class":279,"line":280},[277,94825,284],{"class":283},[277,94827,288],{"class":287},[277,94829,305],{"class":283},[277,94831,94832,94834,94836],{"class":279,"line":308},[277,94833,1057],{"class":311},[277,94835,1060],{"class":311},[277,94837,343],{"class":283},[277,94839,94841],{"class":94840,"line":324},[279,9398],[277,94842,46640],{"class":283},[277,94844,94845,94847],{"class":279,"line":331},[277,94846,46645],{"class":283},[277,94848,46648],{"class":301},[277,94850,94851],{"class":279,"line":346},[277,94852,542],{"class":283},[277,94854,94855],{"class":279,"line":360},[277,94856,394],{"class":283},[277,94858,94859,94861,94863],{"class":279,"line":371},[277,94860,785],{"class":283},[277,94862,288],{"class":287},[277,94864,305],{"class":283},[277,94866,94867],{"class":279,"line":381},[277,94868,328],{"emptyLinePlaceholder":327},[277,94870,94871,94873,94875],{"class":279,"line":391},[277,94872,284],{"class":283},[277,94874,802],{"class":287},[277,94876,305],{"class":283},[277,94878,94879,94881,94883],{"class":279,"line":397},[277,94880,810],{"class":283},[277,94882,46602],{"class":287},[277,94884,4325],{"class":283},[277,94886,94887,94889,94891],{"class":279,"line":402},[277,94888,785],{"class":283},[277,94890,802],{"class":287},[277,94892,305],{"class":283},[23924,94894,94895],{"id":46695},[72,94896,46698],{},[267,94898,94900],{"className":269,"code":46701,"filename":271,"highlights":94899,"language":272,"meta":273,"style":273},[308,346],[16,94901,94902,94912,94923,94927,94931,94948,94956,94960,94968,94980],{"__ignoreMap":273},[277,94903,94904,94906,94908,94910],{"class":279,"line":280},[277,94905,284],{"class":283},[277,94907,288],{"class":287},[277,94909,292],{"class":291},[277,94911,305],{"class":283},[277,94913,94915,94917,94919,94921],{"class":94914,"line":308},[279,9398],[277,94916,312],{"class":311},[277,94918,46722],{"class":283},[277,94920,318],{"class":311},[277,94922,321],{"class":301},[277,94924,94925],{"class":279,"line":324},[277,94926,328],{"emptyLinePlaceholder":327},[277,94928,94929],{"class":279,"line":331},[277,94930,46735],{"class":12741},[277,94932,94934,94936,94938,94940,94942,94944,94946],{"class":94933,"line":346},[279,9398],[277,94935,405],{"class":311},[277,94937,46541],{"class":356},[277,94939,340],{"class":311},[277,94941,46747],{"class":291},[277,94943,448],{"class":283},[277,94945,46572],{"class":301},[277,94947,433],{"class":283},[277,94949,94950,94952,94954],{"class":279,"line":360},[277,94951,785],{"class":283},[277,94953,288],{"class":287},[277,94955,305],{"class":283},[277,94957,94958],{"class":279,"line":371},[277,94959,328],{"emptyLinePlaceholder":327},[277,94961,94962,94964,94966],{"class":279,"line":381},[277,94963,284],{"class":283},[277,94965,802],{"class":287},[277,94967,305],{"class":283},[277,94969,94970,94972,94974,94976,94978],{"class":279,"line":391},[277,94971,810],{"class":283},[277,94973,11],{"class":287},[277,94975,46782],{"class":283},[277,94977,11],{"class":287},[277,94979,305],{"class":283},[277,94981,94982,94984,94986],{"class":279,"line":397},[277,94983,785],{"class":283},[277,94985,802],{"class":287},[277,94987,305],{"class":283},[267,94989,94991],{"className":269,"code":46797,"filename":971,"highlights":94990,"language":272,"meta":273,"style":273},[324],[16,94992,94993,95001,95009,95018,95022,95030,95034,95042,95054],{"__ignoreMap":273},[277,94994,94995,94997,94999],{"class":279,"line":280},[277,94996,284],{"class":283},[277,94998,288],{"class":287},[277,95000,305],{"class":283},[277,95002,95003,95005,95007],{"class":279,"line":308},[277,95004,1057],{"class":311},[277,95006,1060],{"class":311},[277,95008,343],{"class":283},[277,95010,95012,95014,95016],{"class":95011,"line":324},[279,9398],[277,95013,46822],{"class":283},[277,95015,46825],{"class":301},[277,95017,30180],{"class":283},[277,95019,95020],{"class":279,"line":331},[277,95021,394],{"class":283},[277,95023,95024,95026,95028],{"class":279,"line":346},[277,95025,785],{"class":283},[277,95027,288],{"class":287},[277,95029,305],{"class":283},[277,95031,95032],{"class":279,"line":360},[277,95033,328],{"emptyLinePlaceholder":327},[277,95035,95036,95038,95040],{"class":279,"line":371},[277,95037,284],{"class":283},[277,95039,802],{"class":287},[277,95041,305],{"class":283},[277,95043,95044,95046,95048,95050,95052],{"class":279,"line":381},[277,95045,810],{"class":283},[277,95047,11],{"class":287},[277,95049,46782],{"class":283},[277,95051,11],{"class":287},[277,95053,305],{"class":283},[277,95055,95056,95058,95060],{"class":279,"line":391},[277,95057,785],{"class":283},[277,95059,802],{"class":287},[277,95061,305],{"class":283},[30,95063,46875],{"id":46874},[21,95065,46878,95066,9178,95068,46883,95070,46888],{},[16,95067,1927],{},[16,95069,12319],{},[13178,95071,46887],{"href":46886},[267,95073,95074],{"className":46114,"code":46891,"filename":46892,"language":46118,"meta":273,"style":273},[16,95075,95076,95080],{"__ignoreMap":273},[277,95077,95078],{"class":279,"line":280},[277,95079,46899],{"class":12741},[277,95081,95082,95084,95086],{"class":279,"line":308},[277,95083,46904],{"class":283},[277,95085,298],{"class":311},[277,95087,46909],{"class":301},[21,95089,46912,95090,46916,95092,353],{},[72,95091,46915],{},[72,95093,46919],{},[10089,95095,95096,95102],{},[41,95097,95098,46927,95100,46931],{},[72,95099,46926],{},[16,95101,46930],{},[41,95103,95104,46937],{},[72,95105,46936],{},[30,95107,46941,95108],{"id":46940},[16,95109,46944],{},[23924,95111,95112],{"id":46947},[72,95113,46490],{},[267,95115,95117],{"className":269,"code":46952,"filename":271,"highlights":95116,"language":272,"meta":273,"style":273},[397],[16,95118,95119,95129,95139,95143,95159,95177,95185,95189,95193,95203,95214,95220,95224],{"__ignoreMap":273},[277,95120,95121,95123,95125,95127],{"class":279,"line":280},[277,95122,284],{"class":283},[277,95124,288],{"class":287},[277,95126,292],{"class":291},[277,95128,305],{"class":283},[277,95130,95131,95133,95135,95137],{"class":279,"line":308},[277,95132,312],{"class":311},[277,95134,46972],{"class":283},[277,95136,318],{"class":311},[277,95138,321],{"class":301},[277,95140,95141],{"class":279,"line":324},[277,95142,328],{"emptyLinePlaceholder":327},[277,95144,95145,95147,95149,95151,95153,95155,95157],{"class":279,"line":331},[277,95146,405],{"class":311},[277,95148,46987],{"class":356},[277,95150,340],{"class":311},[277,95152,413],{"class":291},[277,95154,448],{"class":283},[277,95156,46996],{"class":301},[277,95158,433],{"class":283},[277,95160,95161,95163,95165,95167,95169,95171,95173,95175],{"class":279,"line":346},[277,95162,405],{"class":311},[277,95164,47005],{"class":291},[277,95166,340],{"class":311},[277,95168,511],{"class":283},[277,95170,47012],{"class":349},[277,95172,2340],{"class":283},[277,95174,601],{"class":311},[277,95176,343],{"class":283},[277,95178,95179,95181,95183],{"class":279,"line":360},[277,95180,47023],{"class":283},[277,95182,298],{"class":311},[277,95184,47028],{"class":283},[277,95186,95187],{"class":279,"line":371},[277,95188,394],{"class":283},[277,95190,95191],{"class":279,"line":381},[277,95192,328],{"emptyLinePlaceholder":327},[277,95194,95195,95197,95199,95201],{"class":279,"line":391},[277,95196,46567],{"class":291},[277,95198,448],{"class":283},[277,95200,47045],{"class":301},[277,95202,2360],{"class":283},[277,95204,95206,95208,95210,95212],{"class":95205,"line":397},[279,9398],[277,95207,47053],{"class":283},[277,95209,46944],{"class":291},[277,95211,47058],{"class":283},[277,95213,47061],{"class":12741},[277,95215,95216,95218],{"class":279,"line":402},[277,95217,47066],{"class":283},[277,95219,47069],{"class":12741},[277,95221,95222],{"class":279,"line":436},[277,95223,676],{"class":283},[277,95225,95226,95228,95230],{"class":279,"line":456},[277,95227,785],{"class":283},[277,95229,288],{"class":287},[277,95231,305],{"class":283},[267,95233,95235],{"className":269,"code":47084,"filename":971,"highlights":95234,"language":272,"meta":273,"style":273},[583],[16,95236,95237,95245,95255,95259,95267,95273,95279,95285,95289,95293,95297,95307,95317,95321,95325,95331,95337,95341,95345,95349,95355,95359,95373,95382,95386,95390,95394,95398],{"__ignoreMap":273},[277,95238,95239,95241,95243],{"class":279,"line":280},[277,95240,284],{"class":283},[277,95242,288],{"class":287},[277,95244,305],{"class":283},[277,95246,95247,95249,95251,95253],{"class":279,"line":308},[277,95248,312],{"class":311},[277,95250,47102],{"class":283},[277,95252,318],{"class":311},[277,95254,321],{"class":301},[277,95256,95257],{"class":279,"line":324},[277,95258,328],{"emptyLinePlaceholder":327},[277,95260,95261,95263,95265],{"class":279,"line":331},[277,95262,1057],{"class":311},[277,95264,1060],{"class":311},[277,95266,343],{"class":283},[277,95268,95269,95271],{"class":279,"line":346},[277,95270,1086],{"class":291},[277,95272,473],{"class":283},[277,95274,95275,95277],{"class":279,"line":360},[277,95276,1093],{"class":311},[277,95278,343],{"class":283},[277,95280,95281,95283],{"class":279,"line":371},[277,95282,47135],{"class":283},[277,95284,47138],{"class":301},[277,95286,95287],{"class":279,"line":381},[277,95288,1126],{"class":283},[277,95290,95291],{"class":279,"line":391},[277,95292,1131],{"class":283},[277,95294,95295],{"class":279,"line":397},[277,95296,45871],{"class":283},[277,95298,95299,95301,95303,95305],{"class":279,"line":402},[277,95300,47155],{"class":291},[277,95302,448],{"class":283},[277,95304,47012],{"class":349},[277,95306,2476],{"class":283},[277,95308,95309,95311,95313,95315],{"class":279,"line":436},[277,95310,8819],{"class":356},[277,95312,47168],{"class":283},[277,95314,298],{"class":311},[277,95316,47028],{"class":283},[277,95318,95319],{"class":279,"line":456},[277,95320,1203],{"class":283},[277,95322,95323],{"class":279,"line":461},[277,95324,1131],{"class":283},[277,95326,95327,95329],{"class":279,"line":476},[277,95328,47185],{"class":291},[277,95330,473],{"class":283},[277,95332,95333,95335],{"class":279,"line":500},[277,95334,1093],{"class":311},[277,95336,343],{"class":283},[277,95338,95339],{"class":279,"line":505},[277,95340,47198],{"class":12741},[277,95342,95343],{"class":279,"line":520},[277,95344,47203],{"class":12741},[277,95346,95347],{"class":279,"line":539},[277,95348,47208],{"class":12741},[277,95350,95351,95353],{"class":279,"line":545},[277,95352,47213],{"class":301},[277,95354,47216],{"class":283},[277,95356,95357],{"class":279,"line":550},[277,95358,47221],{"class":12741},[277,95360,95361,95363,95365,95367,95369,95371],{"class":279,"line":578},[277,95362,47226],{"class":283},[277,95364,1732],{"class":291},[277,95366,2203],{"class":283},[277,95368,601],{"class":311},[277,95370,1268],{"class":356},[277,95372,47237],{"class":283},[277,95374,95376,95378,95380],{"class":95375,"line":583},[279,9398],[277,95377,47243],{"class":283},[277,95379,1341],{"class":356},[277,95381,47248],{"class":283},[277,95383,95384],{"class":279,"line":588},[277,95385,1203],{"class":283},[277,95387,95388],{"class":279,"line":606},[277,95389,1126],{"class":283},[277,95391,95392],{"class":279,"line":614},[277,95393,542],{"class":283},[277,95395,95396],{"class":279,"line":625},[277,95397,394],{"class":283},[277,95399,95400,95402,95404],{"class":279,"line":637},[277,95401,785],{"class":283},[277,95403,288],{"class":287},[277,95405,305],{"class":283},[23924,95407,95408],{"id":47275},[72,95409,46698],{},[267,95411,95413],{"className":269,"code":47280,"filename":271,"highlights":95412,"language":272,"meta":273,"style":273},[331],[16,95414,95415,95425,95435,95439,95464,95472,95476,95484,95492,95504,95522,95530],{"__ignoreMap":273},[277,95416,95417,95419,95421,95423],{"class":279,"line":280},[277,95418,284],{"class":283},[277,95420,288],{"class":287},[277,95422,292],{"class":291},[277,95424,305],{"class":283},[277,95426,95427,95429,95431,95433],{"class":279,"line":308},[277,95428,312],{"class":311},[277,95430,46722],{"class":283},[277,95432,318],{"class":311},[277,95434,321],{"class":301},[277,95436,95437],{"class":279,"line":324},[277,95438,328],{"emptyLinePlaceholder":327},[277,95440,95442,95444,95446,95448,95450,95452,95454,95456,95458,95460,95462],{"class":95441,"line":331},[279,9398],[277,95443,405],{"class":311},[277,95445,5995],{"class":283},[277,95447,47317],{"class":356},[277,95449,225],{"class":283},[277,95451,47322],{"class":356},[277,95453,17506],{"class":283},[277,95455,298],{"class":311},[277,95457,46747],{"class":291},[277,95459,448],{"class":283},[277,95461,47045],{"class":301},[277,95463,433],{"class":283},[277,95465,95466,95468,95470],{"class":279,"line":346},[277,95467,785],{"class":283},[277,95469,288],{"class":287},[277,95471,305],{"class":283},[277,95473,95474],{"class":279,"line":360},[277,95475,328],{"emptyLinePlaceholder":327},[277,95477,95478,95480,95482],{"class":279,"line":371},[277,95479,284],{"class":283},[277,95481,802],{"class":287},[277,95483,305],{"class":283},[277,95485,95486,95488,95490],{"class":279,"line":381},[277,95487,810],{"class":283},[277,95489,4201],{"class":287},[277,95491,305],{"class":283},[277,95493,95494,95496,95498,95500,95502],{"class":279,"line":391},[277,95495,829],{"class":283},[277,95497,21],{"class":287},[277,95499,47371],{"class":283},[277,95501,21],{"class":287},[277,95503,305],{"class":283},[277,95505,95506,95508,95510,95512,95514,95516,95518,95520],{"class":279,"line":397},[277,95507,829],{"class":283},[277,95509,4267],{"class":287},[277,95511,4278],{"class":291},[277,95513,298],{"class":283},[277,95515,47388],{"class":301},[277,95517,47391],{"class":283},[277,95519,4267],{"class":287},[277,95521,305],{"class":283},[277,95523,95524,95526,95528],{"class":279,"line":402},[277,95525,954],{"class":283},[277,95527,4201],{"class":287},[277,95529,305],{"class":283},[277,95531,95532,95534,95536],{"class":279,"line":436},[277,95533,785],{"class":283},[277,95535,802],{"class":287},[277,95537,305],{"class":283},[267,95539,95541],{"className":269,"code":47414,"filename":971,"highlights":95540,"language":272,"meta":273,"style":273},[371,461],[16,95542,95543,95551,95559,95563,95567,95575,95585,95594,95604,95608,95612,95616,95620,95626,95635,95639,95643,95647,95653,95667,95671,95675,95679,95687,95691,95699,95707,95719,95737,95745],{"__ignoreMap":273},[277,95544,95545,95547,95549],{"class":279,"line":280},[277,95546,284],{"class":283},[277,95548,288],{"class":287},[277,95550,305],{"class":283},[277,95552,95553,95555,95557],{"class":279,"line":308},[277,95554,1057],{"class":311},[277,95556,1060],{"class":311},[277,95558,343],{"class":283},[277,95560,95561],{"class":279,"line":324},[277,95562,47438],{"class":283},[277,95564,95565],{"class":279,"line":331},[277,95566,47443],{"class":283},[277,95568,95569,95571,95573],{"class":279,"line":346},[277,95570,47448],{"class":283},[277,95572,47045],{"class":301},[277,95574,1077],{"class":283},[277,95576,95577,95579,95581,95583],{"class":279,"line":360},[277,95578,47457],{"class":291},[277,95580,3790],{"class":283},[277,95582,601],{"class":311},[277,95584,36126],{"class":283},[277,95586,95588,95590,95592],{"class":95587,"line":371},[279,9398],[277,95589,47469],{"class":283},[277,95591,46996],{"class":301},[277,95593,2132],{"class":283},[277,95595,95596,95598,95600,95602],{"class":279,"line":381},[277,95597,47478],{"class":291},[277,95599,3790],{"class":283},[277,95601,601],{"class":311},[277,95603,45181],{"class":283},[277,95605,95606],{"class":279,"line":391},[277,95607,2853],{"class":283},[277,95609,95610],{"class":279,"line":397},[277,95611,1126],{"class":283},[277,95613,95614],{"class":279,"line":402},[277,95615,1131],{"class":283},[277,95617,95618],{"class":279,"line":436},[277,95619,2742],{"class":283},[277,95621,95622,95624],{"class":279,"line":456},[277,95623,47505],{"class":291},[277,95625,473],{"class":283},[277,95627,95629,95631,95633],{"class":95628,"line":461},[279,9398],[277,95630,2754],{"class":311},[277,95632,1268],{"class":356},[277,95634,47517],{"class":283},[277,95636,95637],{"class":279,"line":476},[277,95638,1126],{"class":283},[277,95640,95641],{"class":279,"line":500},[277,95642,1131],{"class":283},[277,95644,95645],{"class":279,"line":505},[277,95646,1140],{"class":283},[277,95648,95649,95651],{"class":279,"line":520},[277,95650,47534],{"class":291},[277,95652,473],{"class":283},[277,95654,95655,95657,95659,95661,95663,95665],{"class":279,"line":539},[277,95656,1212],{"class":356},[277,95658,47543],{"class":283},[277,95660,47322],{"class":291},[277,95662,448],{"class":283},[277,95664,47550],{"class":301},[277,95666,433],{"class":283},[277,95668,95669],{"class":279,"line":545},[277,95670,1126],{"class":283},[277,95672,95673],{"class":279,"line":550},[277,95674,542],{"class":283},[277,95676,95677],{"class":279,"line":578},[277,95678,394],{"class":283},[277,95680,95681,95683,95685],{"class":279,"line":583},[277,95682,785],{"class":283},[277,95684,288],{"class":287},[277,95686,305],{"class":283},[277,95688,95689],{"class":279,"line":588},[277,95690,328],{"emptyLinePlaceholder":327},[277,95692,95693,95695,95697],{"class":279,"line":606},[277,95694,284],{"class":283},[277,95696,802],{"class":287},[277,95698,305],{"class":283},[277,95700,95701,95703,95705],{"class":279,"line":614},[277,95702,810],{"class":283},[277,95704,4201],{"class":287},[277,95706,305],{"class":283},[277,95708,95709,95711,95713,95715,95717],{"class":279,"line":625},[277,95710,829],{"class":283},[277,95712,21],{"class":287},[277,95714,47601],{"class":283},[277,95716,21],{"class":287},[277,95718,305],{"class":283},[277,95720,95721,95723,95725,95727,95729,95731,95733,95735],{"class":279,"line":637},[277,95722,829],{"class":283},[277,95724,4267],{"class":287},[277,95726,4278],{"class":291},[277,95728,298],{"class":283},[277,95730,47618],{"class":301},[277,95732,47391],{"class":283},[277,95734,4267],{"class":287},[277,95736,305],{"class":283},[277,95738,95739,95741,95743],{"class":279,"line":646},[277,95740,954],{"class":283},[277,95742,4201],{"class":287},[277,95744,305],{"class":283},[277,95746,95747,95749,95751],{"class":279,"line":668},[277,95748,785],{"class":283},[277,95750,802],{"class":287},[277,95752,305],{"class":283},[30,95754,47644],{"id":47643},[21,95756,47647,95757,47651],{},[16,95758,47650],{},[267,95760,95762],{"className":46114,"code":47654,"filename":47655,"highlights":95761,"language":46118,"meta":273,"style":273},[308],[16,95763,95764,95768],{"__ignoreMap":273},[277,95765,95766],{"class":279,"line":280},[277,95767,47663],{"class":12741},[277,95769,95771,95773,95775,95777,95779,95781,95783,95785,95787,95789,95791],{"class":95770,"line":308},[279,9398],[277,95772,405],{"class":311},[277,95774,47671],{"class":356},[277,95776,340],{"class":311},[277,95778,46747],{"class":291},[277,95780,448],{"class":283},[277,95782,47680],{"class":301},[277,95784,47683],{"class":283},[277,95786,47686],{"class":301},[277,95788,47689],{"class":283},[277,95790,2123],{"class":356},[277,95792,16886],{"class":283},[30,95794,47697],{"id":47696},[21,95796,47700],{},[38,95798,95799,95801,95803],{},[41,95800,47705],{},[41,95802,47708],{},[41,95804,47711],{},[23924,95806,95807],{"id":47714},[72,95808,47717],{},[267,95810,95812],{"className":46114,"code":47720,"filename":19438,"highlights":95811,"language":46118,"meta":273,"style":273},[371,381],[16,95813,95814,95824,95834,95838,95850,95854,95858,95875,95892,95904,95918,95934,95938,95942,95946],{"__ignoreMap":273},[277,95815,95816,95818,95820,95822],{"class":279,"line":280},[277,95817,312],{"class":311},[277,95819,45405],{"class":283},[277,95821,318],{"class":311},[277,95823,321],{"class":301},[277,95825,95826,95828,95830,95832],{"class":279,"line":308},[277,95827,312],{"class":311},[277,95829,45416],{"class":283},[277,95831,318],{"class":311},[277,95833,45421],{"class":301},[277,95835,95836],{"class":279,"line":324},[277,95837,328],{"emptyLinePlaceholder":327},[277,95839,95840,95842,95844,95846,95848],{"class":279,"line":331},[277,95841,405],{"class":311},[277,95843,45428],{"class":356},[277,95845,340],{"class":311},[277,95847,45433],{"class":291},[277,95849,45436],{"class":283},[277,95851,95852],{"class":279,"line":346},[277,95853,328],{"emptyLinePlaceholder":327},[277,95855,95856],{"class":279,"line":360},[277,95857,47768],{"class":12741},[277,95859,95861,95863,95865,95867,95869,95871,95873],{"class":95860,"line":371},[279,9398],[277,95862,45442],{"class":283},[277,95864,46567],{"class":291},[277,95866,448],{"class":283},[277,95868,47780],{"class":301},[277,95870,225],{"class":283},[277,95872,47785],{"class":301},[277,95874,433],{"class":283},[277,95876,95878,95880,95882,95884,95886,95888,95890],{"class":95877,"line":381},[279,9398],[277,95879,45442],{"class":283},[277,95881,46567],{"class":291},[277,95883,448],{"class":283},[277,95885,47799],{"class":301},[277,95887,225],{"class":283},[277,95889,47804],{"class":301},[277,95891,433],{"class":283},[277,95893,95894,95896,95898,95900,95902],{"class":279,"line":391},[277,95895,45442],{"class":283},[277,95897,46567],{"class":291},[277,95899,448],{"class":283},[277,95901,47817],{"class":301},[277,95903,2360],{"class":283},[277,95905,95906,95908,95910,95912,95914,95916],{"class":279,"line":397},[277,95907,47824],{"class":291},[277,95909,47827],{"class":283},[277,95911,47830],{"class":349},[277,95913,2340],{"class":283},[277,95915,601],{"class":311},[277,95917,343],{"class":283},[277,95919,95920,95922,95924,95926,95928,95930,95932],{"class":279,"line":402},[277,95921,2881],{"class":283},[277,95923,2352],{"class":291},[277,95925,448],{"class":283},[277,95927,47847],{"class":301},[277,95929,47830],{"class":283},[277,95931,3888],{"class":301},[277,95933,433],{"class":283},[277,95935,95936],{"class":279,"line":436},[277,95937,542],{"class":283},[277,95939,95940],{"class":279,"line":456},[277,95941,676],{"class":283},[277,95943,95944],{"class":279,"line":461},[277,95945,328],{"emptyLinePlaceholder":327},[277,95947,95948,95950,95952,95954,95956],{"class":279,"line":476},[277,95949,45442],{"class":283},[277,95951,47872],{"class":291},[277,95953,448],{"class":283},[277,95955,47877],{"class":301},[277,95957,433],{"class":283},[23924,95959,95960],{"id":47882},[72,95961,47885],{},[267,95963,95965],{"className":269,"code":47888,"filename":47889,"highlights":95964,"language":272,"meta":273,"style":273},[331,346],[16,95966,95967,95977,95987,95991,96008,96025,96041,96045,96059,96071,96075,96083,96087,96095,96109,96121,96139,96147],{"__ignoreMap":273},[277,95968,95969,95971,95973,95975],{"class":279,"line":280},[277,95970,284],{"class":283},[277,95972,288],{"class":287},[277,95974,292],{"class":291},[277,95976,305],{"class":283},[277,95978,95979,95981,95983,95985],{"class":279,"line":308},[277,95980,312],{"class":311},[277,95982,46722],{"class":283},[277,95984,318],{"class":311},[277,95986,321],{"class":301},[277,95988,95989],{"class":279,"line":324},[277,95990,328],{"emptyLinePlaceholder":327},[277,95992,95994,95996,95998,96000,96002,96004,96006],{"class":95993,"line":331},[279,9398],[277,95995,405],{"class":311},[277,95997,47924],{"class":356},[277,95999,340],{"class":311},[277,96001,46747],{"class":291},[277,96003,448],{"class":283},[277,96005,47780],{"class":301},[277,96007,433],{"class":283},[277,96009,96011,96013,96015,96017,96019,96021,96023],{"class":96010,"line":346},[279,9398],[277,96012,405],{"class":311},[277,96014,47942],{"class":356},[277,96016,340],{"class":311},[277,96018,46747],{"class":291},[277,96020,448],{"class":283},[277,96022,47799],{"class":301},[277,96024,433],{"class":283},[277,96026,96027,96029,96031,96033,96035,96037,96039],{"class":279,"line":360},[277,96028,405],{"class":311},[277,96030,47959],{"class":356},[277,96032,340],{"class":311},[277,96034,46747],{"class":291},[277,96036,448],{"class":283},[277,96038,47817],{"class":301},[277,96040,433],{"class":283},[277,96042,96043],{"class":279,"line":371},[277,96044,328],{"emptyLinePlaceholder":327},[277,96046,96047,96049,96051,96053,96055,96057],{"class":279,"line":381},[277,96048,405],{"class":311},[277,96050,47980],{"class":291},[277,96052,340],{"class":311},[277,96054,598],{"class":283},[277,96056,601],{"class":311},[277,96058,343],{"class":283},[277,96060,96061,96063,96065,96067,96069],{"class":279,"line":391},[277,96062,47993],{"class":283},[277,96064,47996],{"class":291},[277,96066,448],{"class":283},[277,96068,48001],{"class":301},[277,96070,433],{"class":283},[277,96072,96073],{"class":279,"line":397},[277,96074,394],{"class":283},[277,96076,96077,96079,96081],{"class":279,"line":402},[277,96078,785],{"class":283},[277,96080,288],{"class":287},[277,96082,305],{"class":283},[277,96084,96085],{"class":279,"line":436},[277,96086,328],{"emptyLinePlaceholder":327},[277,96088,96089,96091,96093],{"class":279,"line":456},[277,96090,284],{"class":283},[277,96092,802],{"class":287},[277,96094,305],{"class":283},[277,96096,96097,96099,96101,96103,96105,96107],{"class":279,"line":461},[277,96098,810],{"class":283},[277,96100,4201],{"class":287},[277,96102,36352],{"class":291},[277,96104,298],{"class":283},[277,96106,48040],{"class":301},[277,96108,305],{"class":283},[277,96110,96111,96113,96115,96117,96119],{"class":279,"line":476},[277,96112,829],{"class":283},[277,96114,21],{"class":287},[277,96116,48051],{"class":283},[277,96118,21],{"class":287},[277,96120,305],{"class":283},[277,96122,96123,96125,96127,96129,96131,96133,96135,96137],{"class":279,"line":500},[277,96124,829],{"class":283},[277,96126,4267],{"class":287},[277,96128,4278],{"class":291},[277,96130,298],{"class":283},[277,96132,48068],{"class":301},[277,96134,48071],{"class":283},[277,96136,4267],{"class":287},[277,96138,305],{"class":283},[277,96140,96141,96143,96145],{"class":279,"line":505},[277,96142,954],{"class":283},[277,96144,4201],{"class":287},[277,96146,305],{"class":283},[277,96148,96149,96151,96153],{"class":279,"line":520},[277,96150,785],{"class":283},[277,96152,802],{"class":287},[277,96154,305],{"class":283},[23924,96156,48095],{"id":48094},[38,96158,96159,96161,96163],{},[41,96160,48100],{},[41,96162,48103],{},[41,96164,48106],{},[3111,96166,96167],{},[21,96168,96169,48114,96171,104],{},[72,96170,48113],{},[16,96172,48117],{},[30,96174,48121],{"id":48120},[21,96176,48124,96177,48128,96179,48132],{},[16,96178,48127],{},[72,96180,48131],{},[10089,96182,96183,96193],{},[41,96184,96185,48139,96187,48143,96189,48146,96191,104],{},[72,96186,46470],{},[16,96188,48142],{},[16,96190,48142],{},[16,96192,48149],{},[41,96194,96195,48154],{},[72,96196,46476],{},[21,96198,48157],{},[30,96200,48161],{"id":48160},[5392,96202,96203,96213],{},[5395,96204,96205],{},[5398,96206,96207,96209,96211],{},[5401,96208,46228],{},[5401,96210,48172],{},[5401,96212,48175],{},[5414,96214,96215,96225,96237,96247],{},[5398,96216,96217,96221,96223],{},[5419,96218,96219],{},[72,96220,48184],{},[5419,96222,48187],{},[5419,96224,48190],{},[5398,96226,96227,96231,96233],{},[5419,96228,96229],{},[72,96230,48197],{},[5419,96232,48200],{},[5419,96234,48203,96235,48206],{},[16,96236,46930],{},[5398,96238,96239,96243,96245],{},[5419,96240,96241],{},[72,96242,48213],{},[5419,96244,48216],{},[5419,96246,48219],{},[5398,96248,96249,96253,96255],{},[5419,96250,96251],{},[72,96252,48226],{},[5419,96254,48229],{},[5419,96256,48232,96257],{},[16,96258,48235],{},[30,96260,48239],{"id":48238},[38,96262,96263,96267,96271],{},[41,96264,96265,48247],{},[72,96266,48246],{},[41,96268,96269,48253],{},[72,96270,48252],{},[41,96272,96273,48259],{},[72,96274,48258],{},[30,96276,17671],{"id":17670},[21,96278,96279,46418,96281,48268,96283,48271],{},[16,96280,46417],{},[16,96282,47650],{},[72,96284,46411],{},[10089,96286,96287,96293,96297,96301],{},[41,96288,96289,48279,96291],{},[72,96290,48278],{},[16,96292,46930],{},[41,96294,96295,48287],{},[72,96296,48286],{},[41,96298,96299,48293],{},[72,96300,48292],{},[41,96302,96303,48299],{},[72,96304,48298],{},[21,96306,48302],{},[1606,96308,48305],{},{"title":273,"searchDepth":308,"depth":308,"links":96310},[96311,96312,96313,96314,96315,96316,96317,96318,96319,96320,96321],{"id":46425,"depth":308,"text":46426},{"id":46456,"depth":308,"text":48310},{"id":46480,"depth":308,"text":46481},{"id":46874,"depth":308,"text":46875},{"id":46940,"depth":308,"text":48314},{"id":47643,"depth":308,"text":47644},{"id":47696,"depth":308,"text":47697},{"id":48120,"depth":308,"text":48121},{"id":48160,"depth":308,"text":48161},{"id":48238,"depth":308,"text":48239},{"id":17670,"depth":308,"text":17671},{"script":96323},[96324],{"type":1632,"key":1633,"data-nuxt-schema-org":327,"nodes":96325},[96326],{"headline":46399,"author":96327,"datePublished":48330,"@type":1640},{"name":1637,"@type":1638},{"updatedAt":46376,"coverCaption":48332,"author":1637,"keywords":96329},[1645,46417,46421,46411,271,17761],[96331],{"headline":46399,"author":96332,"datePublished":48330,"@type":1640},{"name":1637,"@type":1638},{"title":46399,"description":48323},[96335,96336,96337,96338,96339,96340],{"tag":48342,"color":48343},{"tag":48345,"color":48346},{"tag":1665,"color":1666},{"tag":46380,"color":46390},{"tag":1668,"color":1669},{"tag":45584,"color":46395},{"id":48353,"title":46887,"body":96342,"cover":48992,"coverAlt":48993,"date":48994,"description":48995,"draft":1627,"extension":1628,"head":96877,"locale":1641,"meta":96883,"navigation":327,"path":49007,"schemaOrg":96885,"seo":96888,"series":1656,"seriesDescription":1656,"seriesOrder":1656,"seriesTitle":1656,"slug":1656,"stem":49012,"tags":96889,"__hash__":49019},{"type":8,"value":96343,"toc":96866},[96344,96346,96348,96350,96352,96354,96366,96368,96374,96376,96378,96382,96390,96400,96404,96408,96410,96416,96422,96424,96478,96484,96486,96488,96502,96504,96506,96508,96522,96542,96544,96596,96598,96728,96862,96864],[11,96345,46887],{"id":48358},[21,96347,48361],{},[21,96349,48364],{},[30,96351,48368],{"id":48367},[21,96353,48371],{},[21,96355,48374,96356,48378,96358,48382,96360,48385,96362,118,96364,48392],{},[72,96357,48377],{},[16,96359,48381],{},[72,96361,48377],{},[72,96363,48388],{},[72,96365,48391],{},[21,96367,48395],{},[3111,96369,96370],{},[21,96371,96372,48403],{},[72,96373,48402],{},[30,96375,48407],{"id":48406},[21,96377,48410],{},[192,96379,48414,96380],{"id":48413},[16,96381,48417],{},[21,96383,48420,96384,1697,96386,48427,96388,104],{},[3292,96385,48423],{},[3292,96387,48426],{},[16,96389,48417],{},[38,96391,96392],{},[41,96393,96394,48437,96396,48441,96398,104],{},[72,96395,48436],{},[16,96397,48440],{},[16,96399,48444],{},[192,96401,48448,96402],{"id":48447},[16,96403,16977],{},[21,96405,48453,96406,48132],{},[72,96407,48456],{},[21,96409,48459],{},[38,96411,96412],{},[41,96413,96414,48467],{},[72,96415,48466],{},[30,96417,48471,96418,12494,96420],{"id":48470},[16,96419,48474],{},[16,96421,48477],{},[21,96423,48480],{},[5392,96425,96426,96440],{},[5395,96427,96428],{},[5398,96429,96430,96432,96436],{},[5401,96431,46228],{},[5401,96433,96434],{},[16,96435,48474],{},[5401,96437,96438],{},[16,96439,48477],{},[5414,96441,96442,96450,96460,96470],{},[5398,96443,96444,96446,96448],{},[5419,96445,48503],{},[5419,96447,48506],{},[5419,96449,48509],{},[5398,96451,96452,96454,96458],{},[5419,96453,48514],{},[5419,96455,96456],{},[16,96457,17076],{},[5419,96459,48521],{},[5398,96461,96462,96466,96468],{},[5419,96463,110,96464],{},[16,96465,26159],{},[5419,96467,48530],{},[5419,96469,48521],{},[5398,96471,96472,96474,96476],{},[5419,96473,48537],{},[5419,96475,48540],{},[5419,96477,48543],{},[21,96479,48546,96480,48549,96482,104],{},[16,96481,1927],{},[16,96483,12319],{},[30,96485,48555],{"id":48554},[21,96487,48558],{},[10089,96489,96490,96494,96498],{},[41,96491,96492,48566],{},[72,96493,48565],{},[41,96495,96496,48572],{},[72,96497,48571],{},[41,96499,96500,48578],{},[72,96501,48577],{},[21,96503,48581],{},[30,96505,48585],{"id":48584},[21,96507,48588],{},[38,96509,96510,96518],{},[41,96511,96512,48600],{},[72,96513,96514,1697,96516,353],{},[16,96515,17550],{},[16,96517,48599],{},[41,96519,96520,48606],{},[72,96521,48605],{},[267,96523,96524],{"className":46114,"code":48609,"filename":48610,"language":46118,"meta":273,"style":273},[16,96525,96526],{"__ignoreMap":273},[277,96527,96528,96530,96532,96534,96536,96538,96540],{"class":279,"line":280},[277,96529,405],{"class":311},[277,96531,5995],{"class":283},[277,96533,48621],{"class":356},[277,96535,17506],{"class":283},[277,96537,298],{"class":311},[277,96539,48628],{"class":283},[277,96541,48631],{"class":12741},[21,96543,48634],{},[267,96545,96546],{"className":46114,"code":48637,"filename":48610,"language":46118,"meta":273,"style":273},[16,96547,96548,96560,96564,96580],{"__ignoreMap":273},[277,96549,96550,96552,96554,96556,96558],{"class":279,"line":280},[277,96551,312],{"class":311},[277,96553,48646],{"class":283},[277,96555,318],{"class":311},[277,96557,45690],{"class":301},[277,96559,18151],{"class":283},[277,96561,96562],{"class":279,"line":308},[277,96563,328],{"emptyLinePlaceholder":327},[277,96565,96566,96568,96570,96572,96574,96576,96578],{"class":279,"line":324},[277,96567,405],{"class":311},[277,96569,48663],{"class":356},[277,96571,340],{"class":311},[277,96573,2024],{"class":291},[277,96575,48670],{"class":283},[277,96577,37149],{"class":301},[277,96579,29404],{"class":283},[277,96581,96582,96584,96586,96588,96590,96592,96594],{"class":279,"line":331},[277,96583,405],{"class":311},[277,96585,5995],{"class":283},[277,96587,48621],{"class":356},[277,96589,17506],{"class":283},[277,96591,298],{"class":311},[277,96593,48689],{"class":291},[277,96595,48692],{"class":283},[30,96597,48696],{"id":48695},[267,96599,96600],{"className":269,"code":48699,"filename":271,"language":272,"meta":273,"style":273},[16,96601,96602,96612,96624,96628,96644,96648,96662,96670,96674,96682,96686,96694,96708,96712,96720],{"__ignoreMap":273},[277,96603,96604,96606,96608,96610],{"class":279,"line":280},[277,96605,284],{"class":283},[277,96607,288],{"class":287},[277,96609,292],{"class":291},[277,96611,305],{"class":283},[277,96613,96614,96616,96618,96620,96622],{"class":279,"line":308},[277,96615,312],{"class":311},[277,96617,11006],{"class":283},[277,96619,318],{"class":311},[277,96621,45690],{"class":301},[277,96623,18151],{"class":283},[277,96625,96626],{"class":279,"line":324},[277,96627,328],{"emptyLinePlaceholder":327},[277,96629,96630,96632,96634,96636,96638,96640,96642],{"class":279,"line":331},[277,96631,405],{"class":311},[277,96633,48734],{"class":356},[277,96635,340],{"class":311},[277,96637,413],{"class":291},[277,96639,448],{"class":283},[277,96641,3542],{"class":356},[277,96643,18277],{"class":283},[277,96645,96646],{"class":279,"line":346},[277,96647,328],{"emptyLinePlaceholder":327},[277,96649,96650,96652,96654,96656,96658,96660],{"class":279,"line":360},[277,96651,405],{"class":311},[277,96653,48755],{"class":291},[277,96655,340],{"class":311},[277,96657,598],{"class":283},[277,96659,601],{"class":311},[277,96661,343],{"class":283},[277,96663,96664,96666,96668],{"class":279,"line":371},[277,96665,48768],{"class":283},[277,96667,48771],{"class":311},[277,96669,18151],{"class":283},[277,96671,96672],{"class":279,"line":381},[277,96673,18255],{"class":283},[277,96675,96676,96678,96680],{"class":279,"line":391},[277,96677,785],{"class":283},[277,96679,288],{"class":287},[277,96681,305],{"class":283},[277,96683,96684],{"class":279,"line":397},[277,96685,328],{"emptyLinePlaceholder":327},[277,96687,96688,96690,96692],{"class":279,"line":402},[277,96689,284],{"class":283},[277,96691,802],{"class":287},[277,96693,305],{"class":283},[277,96695,96696,96698,96700,96702,96704,96706],{"class":279,"line":436},[277,96697,810],{"class":283},[277,96699,4267],{"class":287},[277,96701,4278],{"class":291},[277,96703,298],{"class":283},[277,96705,48810],{"class":301},[277,96707,305],{"class":283},[277,96709,96710],{"class":279,"line":456},[277,96711,48817],{"class":283},[277,96713,96714,96716,96718],{"class":279,"line":461},[277,96715,954],{"class":283},[277,96717,4267],{"class":287},[277,96719,305],{"class":283},[277,96721,96722,96724,96726],{"class":279,"line":476},[277,96723,785],{"class":283},[277,96725,802],{"class":287},[277,96727,305],{"class":283},[267,96729,96730],{"className":269,"code":48836,"filename":971,"language":272,"meta":273,"style":273},[16,96731,96732,96740,96748,96754,96760,96768,96772,96776,96780,96786,96796,96800,96804,96808,96816,96820,96828,96842,96846,96854],{"__ignoreMap":273},[277,96733,96734,96736,96738],{"class":279,"line":280},[277,96735,284],{"class":283},[277,96737,288],{"class":287},[277,96739,305],{"class":283},[277,96741,96742,96744,96746],{"class":279,"line":308},[277,96743,1057],{"class":311},[277,96745,1060],{"class":311},[277,96747,343],{"class":283},[277,96749,96750,96752],{"class":279,"line":324},[277,96751,1086],{"class":291},[277,96753,473],{"class":283},[277,96755,96756,96758],{"class":279,"line":331},[277,96757,1093],{"class":311},[277,96759,343],{"class":283},[277,96761,96762,96764,96766],{"class":279,"line":346},[277,96763,48871],{"class":283},[277,96765,3542],{"class":356},[277,96767,1077],{"class":283},[277,96769,96770],{"class":279,"line":360},[277,96771,18478],{"class":283},[277,96773,96774],{"class":279,"line":371},[277,96775,1131],{"class":283},[277,96777,96778],{"class":279,"line":381},[277,96779,1140],{"class":283},[277,96781,96782,96784],{"class":279,"line":391},[277,96783,48892],{"class":291},[277,96785,473],{"class":283},[277,96787,96788,96790,96792,96794],{"class":279,"line":397},[277,96789,1212],{"class":356},[277,96791,48901],{"class":283},[277,96793,48771],{"class":311},[277,96795,18151],{"class":283},[277,96797,96798],{"class":279,"line":402},[277,96799,7016],{"class":283},[277,96801,96802],{"class":279,"line":436},[277,96803,1131],{"class":283},[277,96805,96806],{"class":279,"line":456},[277,96807,18255],{"class":283},[277,96809,96810,96812,96814],{"class":279,"line":461},[277,96811,785],{"class":283},[277,96813,288],{"class":287},[277,96815,305],{"class":283},[277,96817,96818],{"class":279,"line":476},[277,96819,328],{"emptyLinePlaceholder":327},[277,96821,96822,96824,96826],{"class":279,"line":500},[277,96823,284],{"class":283},[277,96825,802],{"class":287},[277,96827,305],{"class":283},[277,96829,96830,96832,96834,96836,96838,96840],{"class":279,"line":505},[277,96831,810],{"class":283},[277,96833,4267],{"class":287},[277,96835,4278],{"class":291},[277,96837,298],{"class":283},[277,96839,48810],{"class":301},[277,96841,305],{"class":283},[277,96843,96844],{"class":279,"line":520},[277,96845,48817],{"class":283},[277,96847,96848,96850,96852],{"class":279,"line":539},[277,96849,954],{"class":283},[277,96851,4267],{"class":287},[277,96853,305],{"class":283},[277,96855,96856,96858,96860],{"class":279,"line":545},[277,96857,785],{"class":283},[277,96859,802],{"class":287},[277,96861,305],{"class":283},[21,96863,48974],{},[1606,96865,48977],{},{"title":273,"searchDepth":308,"depth":308,"links":96867},[96868,96869,96873,96874,96875,96876],{"id":48367,"depth":308,"text":48368},{"id":48406,"depth":308,"text":48407,"children":96870},[96871,96872],{"id":48413,"depth":324,"text":48984},{"id":48447,"depth":324,"text":48986},{"id":48470,"depth":308,"text":48988},{"id":48554,"depth":308,"text":48555},{"id":48584,"depth":308,"text":48585},{"id":48695,"depth":308,"text":48696},{"script":96878},[96879],{"type":1632,"key":1633,"data-nuxt-schema-org":327,"nodes":96880},[96881],{"headline":49001,"author":96882,"datePublished":49003,"@type":1640},{"name":1637,"@type":1638},{"updatedAt":46376,"coverCaption":49005,"author":1637,"keywords":96884},[1645,3167,48456,271,1927,12319],[96886],{"headline":49001,"author":96887,"datePublished":49003,"@type":1640},{"name":1637,"@type":1638},{"title":46887,"description":48995},[96890,96891,96892],{"tag":3167,"color":3168},{"tag":9074,"color":9075},{"tag":49017,"color":49018},{"id":49021,"title":49001,"body":96894,"cover":49860,"coverAlt":49861,"date":49862,"description":49863,"draft":1627,"extension":1628,"head":97554,"locale":1641,"meta":97560,"navigation":327,"path":49874,"schemaOrg":97561,"seo":97564,"series":1656,"seriesDescription":1656,"seriesOrder":1656,"seriesTitle":1656,"slug":1656,"stem":49879,"tags":97565,"__hash__":49891},{"type":8,"value":96895,"toc":97534},[96896,96898,96904,96908,96910,96916,96918,96922,96924,96954,96960,96964,96968,96970,96976,96980,96984,97000,97004,97022,97024,97026,97028,97114,97122,97124,97132,97134,97136,97276,97280,97282,97358,97360,97362,97364,97376,97388,97400,97412,97414,97418,97488,97490,97494,97524,97526,97532],[11,96897,49001],{"id":49026},[21,96899,49029,96900,49033,96902,49037],{},[72,96901,49032],{},[72,96903,49036],{},[21,96905,49040,96906,104],{},[16,96907,49043],{},[30,96909,49047],{"id":49046},[21,96911,49050,96912,49054,96914,104],{},[72,96913,49053],{},[72,96915,49057],{},[192,96917,49061],{"id":49060},[21,96919,49064,96920,49068],{},[72,96921,49067],{},[21,96923,49071],{},[38,96925,96926,96936,96946],{},[41,96927,96928,49079,96930,225,96932,49084,96934,104],{},[72,96929,49078],{},[16,96931,7538],{},[16,96933,24880],{},[16,96935,17971],{},[41,96937,96938,49092,96940,49095,96942,49099,96944,104],{},[72,96939,49091],{},[3292,96941,45646],{},[16,96943,49098],{},[16,96945,7488],{},[41,96947,96948,49107,96950,49111,96952,104],{},[72,96949,49106],{},[16,96951,49110],{},[16,96953,49114],{},[3111,96955,96956],{},[21,96957,96958,49122],{},[72,96959,49121],{},[30,96961,49126,96962,49130],{"id":49125},[16,96963,49129],{},[21,96965,49133,96966,49136],{},[72,96967,49043],{},[192,96969,49140],{"id":49139},[21,96971,49143,96972,49146,96974,49149],{},[16,96973,16977],{},[16,96975,49043],{},[23924,96977,49153,96978,49156],{"id":49152},[16,96979,15824],{},[21,96981,49159,96982,104],{},[16,96983,15824],{},[38,96985,96986,96994],{},[41,96987,96988,49169,96990,49172,96992,1895],{},[72,96989,49168],{},[16,96991,15824],{},[3292,96993,49175],{},[41,96995,96996,49181,96998,49185],{},[72,96997,49180],{},[72,96999,49184],{},[21,97001,97002],{},[72,97003,49190],{},[10089,97005,97006,97012,97016],{},[41,97007,97008,49198,97010,49202],{},[72,97009,49197],{},[72,97011,49201],{},[41,97013,97014,49208],{},[72,97015,49207],{},[41,97017,97018,49214,97020,49217],{},[72,97019,49213],{},[16,97021,1732],{},[30,97023,49221],{"id":49220},[21,97025,49224],{},[192,97027,49228],{"id":49227},[267,97029,97030],{"className":269,"code":49231,"filename":271,"language":272,"meta":273,"style":273},[16,97031,97032,97042,97052,97068,97076,97080,97088,97106],{"__ignoreMap":273},[277,97033,97034,97036,97038,97040],{"class":279,"line":280},[277,97035,284],{"class":283},[277,97037,288],{"class":287},[277,97039,292],{"class":291},[277,97041,305],{"class":283},[277,97043,97044,97046,97048,97050],{"class":279,"line":308},[277,97045,312],{"class":311},[277,97047,11006],{"class":283},[277,97049,318],{"class":311},[277,97051,321],{"class":301},[277,97053,97054,97056,97058,97060,97062,97064,97066],{"class":279,"line":324},[277,97055,405],{"class":311},[277,97057,9380],{"class":356},[277,97059,340],{"class":311},[277,97061,413],{"class":291},[277,97063,448],{"class":283},[277,97065,3542],{"class":356},[277,97067,433],{"class":283},[277,97069,97070,97072,97074],{"class":279,"line":331},[277,97071,785],{"class":283},[277,97073,288],{"class":287},[277,97075,305],{"class":283},[277,97077,97078],{"class":279,"line":346},[277,97079,328],{"emptyLinePlaceholder":327},[277,97081,97082,97084,97086],{"class":279,"line":360},[277,97083,284],{"class":283},[277,97085,802],{"class":287},[277,97087,305],{"class":283},[277,97089,97090,97092,97094,97096,97098,97100,97102,97104],{"class":279,"line":371},[277,97091,810],{"class":283},[277,97093,4267],{"class":287},[277,97095,4278],{"class":291},[277,97097,298],{"class":283},[277,97099,12464],{"class":301},[277,97101,49304],{"class":283},[277,97103,4267],{"class":287},[277,97105,305],{"class":283},[277,97107,97108,97110,97112],{"class":279,"line":381},[277,97109,785],{"class":283},[277,97111,802],{"class":287},[277,97113,305],{"class":283},[267,97115,97116],{"className":269,"code":49319,"filename":971,"language":272,"meta":273,"style":273},[16,97117,97118],{"__ignoreMap":273},[277,97119,97120],{"class":279,"line":280},[277,97121,49319],{"class":283},[192,97123,49329],{"id":49328},[21,97125,49332,97126,49335,97128,49338,97130,49342],{},[16,97127,17503],{},[72,97129,47012],{},[3292,97131,49341],{},[192,97133,49346],{"id":49345},[21,97135,49349],{},[267,97137,97138],{"className":46114,"code":49352,"filename":49353,"language":46118,"meta":273,"style":273},[16,97139,97140,97150,97154,97172,97176,97190,97202,97220,97224,97228,97238,97258,97262,97266,97272],{"__ignoreMap":273},[277,97141,97142,97144,97146,97148],{"class":279,"line":280},[277,97143,312],{"class":311},[277,97145,49362],{"class":283},[277,97147,318],{"class":311},[277,97149,49367],{"class":301},[277,97151,97152],{"class":279,"line":308},[277,97153,328],{"emptyLinePlaceholder":327},[277,97155,97156,97158,97160,97162,97164,97166,97168,97170],{"class":279,"line":324},[277,97157,405],{"class":311},[277,97159,49378],{"class":356},[277,97161,340],{"class":311},[277,97163,49383],{"class":291},[277,97165,448],{"class":283},[277,97167,49388],{"class":301},[277,97169,2340],{"class":283},[277,97171,49393],{"class":12741},[277,97173,97174],{"class":279,"line":331},[277,97175,328],{"emptyLinePlaceholder":327},[277,97177,97178,97180,97182,97184,97186,97188],{"class":279,"line":346},[277,97179,1057],{"class":311},[277,97181,467],{"class":311},[277,97183,49406],{"class":291},[277,97185,448],{"class":283},[277,97187,49411],{"class":349},[277,97189,2476],{"class":283},[277,97191,97192,97194,97196,97198,97200],{"class":279,"line":360},[277,97193,479],{"class":311},[277,97195,49420],{"class":356},[277,97197,340],{"class":311},[277,97199,49378],{"class":291},[277,97201,49427],{"class":283},[277,97203,97204,97206,97208,97210,97212,97214,97216,97218],{"class":279,"line":371},[277,97205,49432],{"class":291},[277,97207,49435],{"class":283},[277,97209,49438],{"class":301},[277,97211,49441],{"class":283},[277,97213,601],{"class":311},[277,97215,49446],{"class":283},[277,97217,48771],{"class":311},[277,97219,433],{"class":283},[277,97221,97222],{"class":279,"line":381},[277,97223,42606],{"class":283},[277,97225,97226],{"class":279,"line":391},[277,97227,49459],{"class":12741},[277,97229,97230,97232,97234,97236],{"class":279,"line":397},[277,97231,49464],{"class":291},[277,97233,2203],{"class":283},[277,97235,601],{"class":311},[277,97237,343],{"class":283},[277,97239,97240,97242,97244,97246,97248,97250,97252,97254,97256],{"class":279,"line":402},[277,97241,49475],{"class":291},[277,97243,49478],{"class":283},[277,97245,601],{"class":311},[277,97247,49483],{"class":301},[277,97249,49411],{"class":283},[277,97251,104],{"class":301},[277,97253,17503],{"class":283},[277,97255,3888],{"class":301},[277,97257,433],{"class":283},[277,97259,97260],{"class":279,"line":436},[277,97261,2318],{"class":283},[277,97263,97264],{"class":279,"line":456},[277,97265,42606],{"class":283},[277,97267,97268,97270],{"class":279,"line":461},[277,97269,2212],{"class":311},[277,97271,49508],{"class":283},[277,97273,97274],{"class":279,"line":476},[277,97275,394],{"class":283},[21,97277,97278,49518],{},[72,97279,49517],{},[30,97281,49522],{"id":49521},[5392,97283,97284,97294],{},[5395,97285,97286],{},[5398,97287,97288,97290,97292],{},[5401,97289,46228],{},[5401,97291,49533],{},[5401,97293,49536],{},[5414,97295,97296,97308,97322,97334,97346],{},[5398,97297,97298,97302,97304],{},[5419,97299,97300],{},[72,97301,49545],{},[5419,97303,49036],{},[5419,97305,97306],{},[72,97307,49552],{},[5398,97309,97310,97314,97318],{},[5419,97311,97312],{},[72,97313,49559],{},[5419,97315,49562,97316],{},[16,97317,15824],{},[5419,97319,97320],{},[72,97321,49184],{},[5398,97323,97324,97328,97330],{},[5419,97325,97326],{},[72,97327,49575],{},[5419,97329,49578],{},[5419,97331,97332],{},[72,97333,49583],{},[5398,97335,97336,97340,97342],{},[5419,97337,97338],{},[72,97339,49590],{},[5419,97341,49593],{},[5419,97343,49596,97344,19],{},[16,97345,49599],{},[5398,97347,97348,97352,97354],{},[5419,97349,97350],{},[72,97351,49606],{},[5419,97353,49609],{},[5419,97355,97356],{},[72,97357,49614],{},[30,97359,49618],{"id":49617},[21,97361,49621],{},[192,97363,49625],{"id":49624},[267,97365,97366],{"className":49628,"code":49629,"filename":49630,"language":49631,"meta":273,"style":273},[16,97367,97368],{"__ignoreMap":273},[277,97369,97370,97372,97374],{"class":279,"line":280},[277,97371,49630],{"class":291},[277,97373,49640],{"class":301},[277,97375,49643],{"class":301},[267,97377,97378],{"className":49628,"code":49646,"filename":49647,"language":49631,"meta":273,"style":273},[16,97379,97380],{"__ignoreMap":273},[277,97381,97382,97384,97386],{"class":279,"line":280},[277,97383,49647],{"class":291},[277,97385,49656],{"class":301},[277,97387,49643],{"class":301},[267,97389,97390],{"className":49628,"code":49661,"filename":49662,"language":49631,"meta":273,"style":273},[16,97391,97392],{"__ignoreMap":273},[277,97393,97394,97396,97398],{"class":279,"line":280},[277,97395,49662],{"class":291},[277,97397,49656],{"class":301},[277,97399,49643],{"class":301},[267,97401,97402],{"className":49628,"code":49675,"filename":49676,"language":49631,"meta":273,"style":273},[16,97403,97404],{"__ignoreMap":273},[277,97405,97406,97408,97410],{"class":279,"line":280},[277,97407,49676],{"class":291},[277,97409,49656],{"class":301},[277,97411,49643],{"class":301},[192,97413,49690],{"id":49689},[21,97415,49693,97416,49697],{},[16,97417,49696],{},[267,97419,97421],{"className":46114,"code":49700,"filename":49701,"highlights":97420,"language":46118,"meta":273,"style":273},[371],[16,97422,97423,97433,97443,97447,97457,97461,97467,97476,97480,97484],{"__ignoreMap":273},[277,97424,97425,97427,97429,97431],{"class":279,"line":280},[277,97426,312],{"class":311},[277,97428,49711],{"class":283},[277,97430,318],{"class":311},[277,97432,49716],{"class":301},[277,97434,97435,97437,97439,97441],{"class":279,"line":308},[277,97436,312],{"class":311},[277,97438,49723],{"class":283},[277,97440,318],{"class":311},[277,97442,49728],{"class":301},[277,97444,97445],{"class":279,"line":324},[277,97446,328],{"emptyLinePlaceholder":327},[277,97448,97449,97451,97453,97455],{"class":279,"line":331},[277,97450,1057],{"class":311},[277,97452,1060],{"class":311},[277,97454,49741],{"class":291},[277,97456,1066],{"class":283},[277,97458,97459],{"class":279,"line":346},[277,97460,49748],{"class":283},[277,97462,97463,97465],{"class":279,"line":360},[277,97464,49753],{"class":291},[277,97466,1066],{"class":283},[277,97468,97470,97472,97474],{"class":97469,"line":371},[279,9398],[277,97471,49761],{"class":283},[277,97473,2149],{"class":356},[277,97475,49766],{"class":12741},[277,97477,97478],{"class":279,"line":381},[277,97479,2913],{"class":283},[277,97481,97482],{"class":279,"line":391},[277,97483,49775],{"class":283},[277,97485,97486],{"class":279,"line":397},[277,97487,676],{"class":283},[192,97489,49783],{"id":49782},[21,97491,49786,97492,49789],{},[16,97493,49696],{},[267,97495,97497],{"className":269,"code":49792,"filename":49793,"highlights":97496,"language":272,"meta":273,"style":273},[280],[16,97498,97499,97512,97516],{"__ignoreMap":273},[277,97500,97502,97504,97506,97508,97510],{"class":97501,"line":280},[279,9398],[277,97503,284],{"class":283},[277,97505,288],{"class":287},[277,97507,292],{"class":291},[277,97509,49808],{"class":291},[277,97511,305],{"class":283},[277,97513,97514],{"class":279,"line":308},[277,97515,49815],{"class":12741},[277,97517,97518,97520,97522],{"class":279,"line":324},[277,97519,785],{"class":283},[277,97521,288],{"class":287},[277,97523,305],{"class":283},[30,97525,17671],{"id":17670},[21,97527,49828,97528,49832,97530,49835],{},[72,97529,49831],{},[16,97531,49043],{},[1606,97533,49838],{},{"title":273,"searchDepth":308,"depth":308,"links":97535},[97536,97539,97542,97547,97548,97553],{"id":49046,"depth":308,"text":49047,"children":97537},[97538],{"id":49060,"depth":324,"text":49061},{"id":49125,"depth":308,"text":49845,"children":97540},[97541],{"id":49139,"depth":324,"text":49140},{"id":49220,"depth":308,"text":49221,"children":97543},[97544,97545,97546],{"id":49227,"depth":324,"text":49228},{"id":49328,"depth":324,"text":49329},{"id":49345,"depth":324,"text":49346},{"id":49521,"depth":308,"text":49522},{"id":49617,"depth":308,"text":49618,"children":97549},[97550,97551,97552],{"id":49624,"depth":324,"text":49625},{"id":49689,"depth":324,"text":49690},{"id":49782,"depth":324,"text":49783},{"id":17670,"depth":308,"text":17671},{"script":97555},[97556],{"type":1632,"key":1633,"data-nuxt-schema-org":327,"nodes":97557},[97558],{"headline":49001,"author":97559,"datePublished":49870,"@type":1640},{"name":1637,"@type":1638},{"updatedAt":46376,"coverCaption":49872,"author":1637,"keywords":49873},[97562],{"headline":49001,"author":97563,"datePublished":49870,"@type":1640},{"name":1637,"@type":1638},{"title":49001,"description":49863},[97566,97567,97568,97569,97570],{"tag":49882,"color":49883},{"tag":49053,"color":49885},{"tag":3167,"color":3168},{"tag":49888,"color":49889},{"tag":1671,"color":1672},{"id":49893,"title":49894,"body":97572,"cover":50853,"coverAlt":50854,"date":50855,"description":50856,"draft":1627,"extension":1628,"head":98404,"locale":1641,"meta":98410,"navigation":327,"path":50866,"schemaOrg":98411,"seo":98414,"series":1656,"seriesDescription":1656,"seriesOrder":1656,"seriesTitle":1656,"slug":1656,"stem":50871,"tags":98415,"__hash__":50877},{"type":8,"value":97573,"toc":98392},[97574,97576,97580,97582,97584,97608,97610,97614,97624,97626,97628,97642,97656,97670,97684,97692,97694,97696,97712,97714,97716,97718,97728,97730,97740,97750,97760,97770,97774,97776,97778,97790,97800,97810,97822,97826,97828,97830,97862,97864,97868,98116,98362,98364,98390],[11,97575,49900],{"id":49899},[21,97577,49903,97578,49907],{},[72,97579,49906],{},[30,97581,49911],{"id":49910},[21,97583,49914],{},[10089,97585,97586,97590,97596,97600,97604],{},[41,97587,97588,49922],{},[72,97589,49921],{},[41,97591,97592,49928,97594,49932],{},[72,97593,49927],{},[16,97595,49931],{},[41,97597,97598,49938],{},[72,97599,49937],{},[41,97601,97602,49944],{},[72,97603,49943],{},[41,97605,97606,49950],{},[72,97607,49949],{},[30,97609,49954],{"id":49953},[21,97611,49957,97612,49961],{},[72,97613,49960],{},[267,97615,97616],{"className":49628,"code":49964,"filename":49631,"language":49631,"meta":273,"style":273},[16,97617,97618],{"__ignoreMap":273},[277,97619,97620,97622],{"class":279,"line":280},[277,97621,49971],{"class":291},[277,97623,49974],{"class":356},[30,97625,49978],{"id":49977},[21,97627,49981],{},[267,97629,97630],{"className":49628,"code":49984,"filename":49630,"language":49631,"meta":273,"style":273},[16,97631,97632],{"__ignoreMap":273},[277,97633,97634,97636,97638,97640],{"class":279,"line":280},[277,97635,49630],{"class":291},[277,97637,49993],{"class":301},[277,97639,49996],{"class":301},[277,97641,49999],{"class":301},[267,97643,97644],{"className":49628,"code":50002,"filename":49647,"language":49631,"meta":273,"style":273},[16,97645,97646],{"__ignoreMap":273},[277,97647,97648,97650,97652,97654],{"class":279,"line":280},[277,97649,49647],{"class":291},[277,97651,49993],{"class":301},[277,97653,50013],{"class":301},[277,97655,49999],{"class":301},[267,97657,97658],{"className":49628,"code":50018,"filename":49662,"language":49631,"meta":273,"style":273},[16,97659,97660],{"__ignoreMap":273},[277,97661,97662,97664,97666,97668],{"class":279,"line":280},[277,97663,49662],{"class":291},[277,97665,49993],{"class":301},[277,97667,50013],{"class":301},[277,97669,49999],{"class":301},[267,97671,97672],{"className":49628,"code":50033,"filename":49676,"language":49631,"meta":273,"style":273},[16,97673,97674],{"__ignoreMap":273},[277,97675,97676,97678,97680,97682],{"class":279,"line":280},[277,97677,49676],{"class":291},[277,97679,49993],{"class":301},[277,97681,50013],{"class":301},[277,97683,49999],{"class":301},[3111,97685,97686],{},[21,97687,97688,10969,97690,50055],{},[72,97689,48113],{},[16,97691,50054],{},[30,97693,50059],{"id":50058},[21,97695,50062],{},[10089,97697,97698,97704],{},[41,97699,97700,50070,97702,104],{},[72,97701,50069],{},[16,97703,20616],{},[41,97705,97706,50078,97708,50082,97710,50086],{},[72,97707,50077],{},[16,97709,50081],{},[16,97711,50085],{},[30,97713,50090],{"id":50089},[21,97715,50093],{},[21,97717,50096],{},[267,97719,97720],{"className":49628,"code":50099,"filename":49631,"language":49631,"meta":273,"style":273},[16,97721,97722],{"__ignoreMap":273},[277,97723,97724,97726],{"class":279,"line":280},[277,97725,50106],{"class":356},[277,97727,49999],{"class":301},[21,97729,50111],{},[267,97731,97732],{"className":49628,"code":50114,"filename":49630,"language":49631,"meta":273,"style":273},[16,97733,97734],{"__ignoreMap":273},[277,97735,97736,97738],{"class":279,"line":280},[277,97737,49630],{"class":291},[277,97739,50123],{"class":301},[267,97741,97742],{"className":49628,"code":50126,"filename":49647,"language":49631,"meta":273,"style":273},[16,97743,97744],{"__ignoreMap":273},[277,97745,97746,97748],{"class":279,"line":280},[277,97747,49647],{"class":291},[277,97749,50123],{"class":301},[267,97751,97752],{"className":49628,"code":50137,"filename":49662,"language":49631,"meta":273,"style":273},[16,97753,97754],{"__ignoreMap":273},[277,97755,97756,97758],{"class":279,"line":280},[277,97757,49662],{"class":291},[277,97759,50123],{"class":301},[267,97761,97762],{"className":49628,"code":50148,"filename":49676,"language":49631,"meta":273,"style":273},[16,97763,97764],{"__ignoreMap":273},[277,97765,97766,97768],{"class":279,"line":280},[277,97767,49676],{"class":291},[277,97769,50123],{"class":301},[21,97771,50159,97772,50163],{},[16,97773,50162],{},[30,97775,50167],{"id":50166},[21,97777,50170],{},[267,97779,97780],{"className":49628,"code":50173,"filename":49630,"language":49631,"meta":273,"style":273},[16,97781,97782],{"__ignoreMap":273},[277,97783,97784,97786,97788],{"class":279,"line":280},[277,97785,49630],{"class":291},[277,97787,50182],{"class":301},[277,97789,50185],{"class":301},[267,97791,97792],{"className":49628,"code":50188,"filename":49647,"language":49631,"meta":273,"style":273},[16,97793,97794],{"__ignoreMap":273},[277,97795,97796,97798],{"class":279,"line":280},[277,97797,49647],{"class":291},[277,97799,50185],{"class":301},[267,97801,97802],{"className":49628,"code":50199,"filename":49662,"language":49631,"meta":273,"style":273},[16,97803,97804],{"__ignoreMap":273},[277,97805,97806,97808],{"class":279,"line":280},[277,97807,49662],{"class":291},[277,97809,50185],{"class":301},[267,97811,97812],{"className":49628,"code":50210,"filename":49676,"language":49631,"meta":273,"style":273},[16,97813,97814],{"__ignoreMap":273},[277,97815,97816,97818,97820],{"class":279,"line":280},[277,97817,49676],{"class":291},[277,97819,50182],{"class":301},[277,97821,50185],{"class":301},[21,97823,50223,97824,50227],{},[16,97825,50226],{},[30,97827,50231],{"id":50230},[21,97829,50234],{},[38,97831,97832,97838,97844,97850,97856],{},[41,97833,97834,50244],{},[72,97835,97836],{},[16,97837,50243],{},[41,97839,97840,50252],{},[72,97841,97842],{},[16,97843,50251],{},[41,97845,97846,50260],{},[72,97847,97848],{},[16,97849,50259],{},[41,97851,97852,50268],{},[72,97853,97854],{},[16,97855,50267],{},[41,97857,97858,50275],{},[72,97859,97860],{},[16,97861,49701],{},[30,97863,50279],{"id":50278},[21,97865,50282,97866,50285],{},[16,97867,50259],{},[267,97869,97870],{"className":269,"code":50288,"filename":271,"language":272,"meta":273,"style":273},[16,97871,97872,97880,97888,97900,97918,97926,97934,97938,97948,97960,97964,97968,97980,97996,98000,98004,98018,98026,98030,98038,98042,98052,98058,98068,98072,98078,98094,98104,98108],{"__ignoreMap":273},[277,97873,97874,97876,97878],{"class":279,"line":280},[277,97875,284],{"class":283},[277,97877,802],{"class":287},[277,97879,305],{"class":283},[277,97881,97882,97884,97886],{"class":279,"line":308},[277,97883,810],{"class":283},[277,97885,4201],{"class":287},[277,97887,305],{"class":283},[277,97889,97890,97892,97894,97896,97898],{"class":279,"line":324},[277,97891,829],{"class":283},[277,97893,11],{"class":287},[277,97895,50315],{"class":283},[277,97897,11],{"class":287},[277,97899,305],{"class":283},[277,97901,97902,97904,97906,97908,97910,97912,97914,97916],{"class":279,"line":331},[277,97903,829],{"class":283},[277,97905,4267],{"class":287},[277,97907,4278],{"class":291},[277,97909,298],{"class":283},[277,97911,48810],{"class":301},[277,97913,50334],{"class":283},[277,97915,4267],{"class":287},[277,97917,305],{"class":283},[277,97919,97920,97922,97924],{"class":279,"line":346},[277,97921,954],{"class":283},[277,97923,4201],{"class":287},[277,97925,305],{"class":283},[277,97927,97928,97930,97932],{"class":279,"line":360},[277,97929,785],{"class":283},[277,97931,802],{"class":287},[277,97933,305],{"class":283},[277,97935,97936],{"class":279,"line":371},[277,97937,328],{"emptyLinePlaceholder":327},[277,97939,97940,97942,97944,97946],{"class":279,"line":381},[277,97941,284],{"class":283},[277,97943,288],{"class":287},[277,97945,292],{"class":291},[277,97947,305],{"class":283},[277,97949,97950,97952,97954,97956,97958],{"class":279,"line":391},[277,97951,312],{"class":311},[277,97953,11006],{"class":283},[277,97955,318],{"class":311},[277,97957,45690],{"class":301},[277,97959,18151],{"class":283},[277,97961,97962],{"class":279,"line":397},[277,97963,328],{"emptyLinePlaceholder":327},[277,97965,97966],{"class":279,"line":402},[277,97967,50389],{"class":12741},[277,97969,97970,97972,97974,97976,97978],{"class":279,"line":436},[277,97971,405],{"class":311},[277,97973,50396],{"class":356},[277,97975,340],{"class":311},[277,97977,50401],{"class":301},[277,97979,18151],{"class":283},[277,97981,97982,97984,97986,97988,97990,97992,97994],{"class":279,"line":456},[277,97983,405],{"class":311},[277,97985,50410],{"class":356},[277,97987,340],{"class":311},[277,97989,413],{"class":291},[277,97991,448],{"class":283},[277,97993,3542],{"class":356},[277,97995,18277],{"class":283},[277,97997,97998],{"class":279,"line":461},[277,97999,328],{"emptyLinePlaceholder":327},[277,98001,98002],{"class":279,"line":476},[277,98003,50429],{"class":12741},[277,98005,98006,98008,98010,98012,98014,98016],{"class":279,"line":500},[277,98007,405],{"class":311},[277,98009,48755],{"class":291},[277,98011,340],{"class":311},[277,98013,598],{"class":283},[277,98015,601],{"class":311},[277,98017,343],{"class":283},[277,98019,98020,98022,98024],{"class":279,"line":505},[277,98021,50448],{"class":283},[277,98023,48771],{"class":311},[277,98025,18151],{"class":283},[277,98027,98028],{"class":279,"line":520},[277,98029,18255],{"class":283},[277,98031,98032,98034,98036],{"class":279,"line":539},[277,98033,785],{"class":283},[277,98035,288],{"class":287},[277,98037,305],{"class":283},[277,98039,98040],{"class":279,"line":545},[277,98041,328],{"emptyLinePlaceholder":327},[277,98043,98044,98046,98048,98050],{"class":279,"line":550},[277,98045,284],{"class":283},[277,98047,1606],{"class":287},[277,98049,50477],{"class":291},[277,98051,305],{"class":283},[277,98053,98054,98056],{"class":279,"line":578},[277,98055,11],{"class":287},[277,98057,343],{"class":283},[277,98059,98060,98062,98064,98066],{"class":279,"line":583},[277,98061,21263],{"class":356},[277,98063,20699],{"class":283},[277,98065,50494],{"class":356},[277,98067,18151],{"class":283},[277,98069,98070],{"class":279,"line":588},[277,98071,394],{"class":283},[277,98073,98074,98076],{"class":279,"line":606},[277,98075,4267],{"class":287},[277,98077,343],{"class":283},[277,98079,98080,98082,98084,98086,98088,98090,98092],{"class":279,"line":614},[277,98081,21275],{"class":356},[277,98083,20699],{"class":283},[277,98085,50515],{"class":356},[277,98087,21297],{"class":311},[277,98089,50520],{"class":356},[277,98091,21297],{"class":311},[277,98093,18151],{"class":283},[277,98095,98096,98098,98100,98102],{"class":279,"line":625},[277,98097,50529],{"class":356},[277,98099,20699],{"class":283},[277,98101,50534],{"class":356},[277,98103,18151],{"class":283},[277,98105,98106],{"class":279,"line":637},[277,98107,394],{"class":283},[277,98109,98110,98112,98114],{"class":279,"line":646},[277,98111,785],{"class":283},[277,98113,1606],{"class":287},[277,98115,305],{"class":283},[267,98117,98118],{"className":269,"code":50551,"filename":971,"language":272,"meta":273,"style":273},[16,98119,98120,98128,98136,98148,98166,98174,98182,98186,98194,98202,98210,98216,98222,98230,98236,98240,98244,98248,98254,98264,98268,98272,98276,98284,98288,98298,98304,98314,98318,98324,98340,98350,98354],{"__ignoreMap":273},[277,98121,98122,98124,98126],{"class":279,"line":280},[277,98123,284],{"class":283},[277,98125,802],{"class":287},[277,98127,305],{"class":283},[277,98129,98130,98132,98134],{"class":279,"line":308},[277,98131,810],{"class":283},[277,98133,4201],{"class":287},[277,98135,305],{"class":283},[277,98137,98138,98140,98142,98144,98146],{"class":279,"line":324},[277,98139,829],{"class":283},[277,98141,11],{"class":287},[277,98143,50315],{"class":283},[277,98145,11],{"class":287},[277,98147,305],{"class":283},[277,98149,98150,98152,98154,98156,98158,98160,98162,98164],{"class":279,"line":331},[277,98151,829],{"class":283},[277,98153,4267],{"class":287},[277,98155,4278],{"class":291},[277,98157,298],{"class":283},[277,98159,48810],{"class":301},[277,98161,50334],{"class":283},[277,98163,4267],{"class":287},[277,98165,305],{"class":283},[277,98167,98168,98170,98172],{"class":279,"line":346},[277,98169,954],{"class":283},[277,98171,4201],{"class":287},[277,98173,305],{"class":283},[277,98175,98176,98178,98180],{"class":279,"line":360},[277,98177,785],{"class":283},[277,98179,802],{"class":287},[277,98181,305],{"class":283},[277,98183,98184],{"class":279,"line":371},[277,98185,328],{"emptyLinePlaceholder":327},[277,98187,98188,98190,98192],{"class":279,"line":381},[277,98189,284],{"class":283},[277,98191,288],{"class":287},[277,98193,305],{"class":283},[277,98195,98196,98198,98200],{"class":279,"line":391},[277,98197,1057],{"class":311},[277,98199,1060],{"class":311},[277,98201,343],{"class":283},[277,98203,98204,98206,98208],{"class":279,"line":397},[277,98205,1071],{"class":283},[277,98207,50642],{"class":301},[277,98209,1077],{"class":283},[277,98211,98212,98214],{"class":279,"line":402},[277,98213,1086],{"class":291},[277,98215,473],{"class":283},[277,98217,98218,98220],{"class":279,"line":436},[277,98219,1093],{"class":311},[277,98221,343],{"class":283},[277,98223,98224,98226,98228],{"class":279,"line":456},[277,98225,50661],{"class":283},[277,98227,50664],{"class":301},[277,98229,1077],{"class":283},[277,98231,98232,98234],{"class":279,"line":461},[277,98233,50671],{"class":283},[277,98235,4692],{"class":356},[277,98237,98238],{"class":279,"line":476},[277,98239,18478],{"class":283},[277,98241,98242],{"class":279,"line":500},[277,98243,1131],{"class":283},[277,98245,98246],{"class":279,"line":505},[277,98247,1140],{"class":283},[277,98249,98250,98252],{"class":279,"line":520},[277,98251,48892],{"class":291},[277,98253,473],{"class":283},[277,98255,98256,98258,98260,98262],{"class":279,"line":539},[277,98257,1212],{"class":356},[277,98259,50698],{"class":283},[277,98261,48771],{"class":311},[277,98263,18151],{"class":283},[277,98265,98266],{"class":279,"line":545},[277,98267,1126],{"class":283},[277,98269,98270],{"class":279,"line":550},[277,98271,542],{"class":283},[277,98273,98274],{"class":279,"line":578},[277,98275,18255],{"class":283},[277,98277,98278,98280,98282],{"class":279,"line":583},[277,98279,785],{"class":283},[277,98281,288],{"class":287},[277,98283,305],{"class":283},[277,98285,98286],{"class":279,"line":588},[277,98287,328],{"emptyLinePlaceholder":327},[277,98289,98290,98292,98294,98296],{"class":279,"line":606},[277,98291,284],{"class":283},[277,98293,1606],{"class":287},[277,98295,50477],{"class":291},[277,98297,305],{"class":283},[277,98299,98300,98302],{"class":279,"line":614},[277,98301,11],{"class":287},[277,98303,343],{"class":283},[277,98305,98306,98308,98310,98312],{"class":279,"line":625},[277,98307,21263],{"class":356},[277,98309,20699],{"class":283},[277,98311,50494],{"class":356},[277,98313,18151],{"class":283},[277,98315,98316],{"class":279,"line":637},[277,98317,394],{"class":283},[277,98319,98320,98322],{"class":279,"line":646},[277,98321,4267],{"class":287},[277,98323,343],{"class":283},[277,98325,98326,98328,98330,98332,98334,98336,98338],{"class":279,"line":668},[277,98327,21275],{"class":356},[277,98329,20699],{"class":283},[277,98331,50515],{"class":356},[277,98333,21297],{"class":311},[277,98335,50520],{"class":356},[277,98337,21297],{"class":311},[277,98339,18151],{"class":283},[277,98341,98342,98344,98346,98348],{"class":279,"line":673},[277,98343,50529],{"class":356},[277,98345,20699],{"class":283},[277,98347,50534],{"class":356},[277,98349,18151],{"class":283},[277,98351,98352],{"class":279,"line":679},[277,98353,394],{"class":283},[277,98355,98356,98358,98360],{"class":279,"line":684},[277,98357,785],{"class":283},[277,98359,1606],{"class":287},[277,98361,305],{"class":283},[192,98363,50804],{"id":50803},[38,98365,98366,98374,98382],{},[41,98367,98368,50813,98372,50816],{},[72,98369,98370],{},[16,98371,26159],{},[16,98373,24722],{},[41,98375,98376,50823,98380,50826],{},[72,98377,98378],{},[16,98379,19250],{},[16,98381,1927],{},[41,98383,98384,50833,98388,50837],{},[72,98385,98386],{},[16,98387,20838],{},[16,98389,50836],{},[1606,98391,50840],{},{"title":273,"searchDepth":308,"depth":308,"links":98393},[98394,98395,98396,98397,98398,98399,98400,98401],{"id":49910,"depth":308,"text":49911},{"id":49953,"depth":308,"text":49954},{"id":49977,"depth":308,"text":49978},{"id":50058,"depth":308,"text":50059},{"id":50089,"depth":308,"text":50090},{"id":50166,"depth":308,"text":50167},{"id":50230,"depth":308,"text":50231},{"id":50278,"depth":308,"text":50279,"children":98402},[98403],{"id":50803,"depth":324,"text":50804},{"script":98405},[98406],{"type":1632,"key":1633,"data-nuxt-schema-org":327,"nodes":98407},[98408],{"headline":49894,"author":98409,"datePublished":50863,"@type":1640},{"name":1637,"@type":1638},{"updatedAt":46376,"coverCaption":50865},[98412],{"headline":49894,"author":98413,"datePublished":50863,"@type":1640},{"name":1637,"@type":1638},{"title":49894,"description":50856},[98416,98417,98418],{"tag":49906,"color":50874},{"tag":49888,"color":49889},{"tag":9074,"color":9075},{"id":50879,"title":50880,"body":98420,"cover":51055,"coverAlt":51056,"date":51057,"description":51058,"draft":1627,"extension":1628,"head":98533,"locale":1641,"meta":98539,"navigation":327,"path":51068,"schemaOrg":98540,"seo":98543,"series":1656,"seriesDescription":1656,"seriesOrder":1656,"seriesTitle":1656,"slug":1656,"stem":51073,"tags":98544,"__hash__":51077},{"type":8,"value":98421,"toc":98524},[98422,98424,98428,98430,98436,98440,98442,98446,98474,98480,98482,98484,98492,98494,98496,98514,98516],[11,98423,50886],{"id":50885},[21,98425,50889,98426,50892],{},[72,98427,1645],{},[30,98429,50896],{"id":50895},[21,98431,50899,98432,50903,98434,50907],{},[72,98433,50902],{},[3292,98435,50906],{},[21,98437,110,98438,50913],{},[72,98439,50912],{},[30,98441,50917],{"id":50916},[21,98443,50920,98444,50924],{},[72,98445,50923],{},[10089,98447,98448,98452,98456,98462,98468],{},[41,98449,98450,50932],{},[72,98451,50931],{},[41,98453,98454,50938],{},[72,98455,50937],{},[41,98457,98458,50944,98460,104],{},[72,98459,50943],{},[3292,98461,50947],{},[41,98463,98464,50944,98466,50956],{},[72,98465,50952],{},[3292,98467,50955],{},[41,98469,98470,50962,98472,104],{},[72,98471,50961],{},[3292,98473,49906],{},[21,98475,50967,98476,50970,98478,50974],{},[16,98477,19250],{},[72,98479,50973],{},[30,98481,50978],{"id":50977},[192,98483,50982],{"id":50981},[21,98485,50985,98486,50989,98488,50993,98490,50996],{},[72,98487,50988],{},[72,98489,50992],{},[16,98491,48417],{},[192,98493,51000],{"id":50999},[21,98495,51003],{},[38,98497,98498,98506,98510],{},[41,98499,98500,51011,98502,51014,98504,1895],{},[72,98501,51010],{},[3292,98503,971],{},[3292,98505,12330],{},[41,98507,98508,51022],{},[72,98509,51021],{},[41,98511,98512,51028],{},[72,98513,51027],{},[30,98515,51032],{"id":51031},[21,98517,51035,98518,51038,98520,51042,98522,51045],{},[72,98519,49906],{},[72,98521,51041],{},[72,98523,50955],{},{"title":273,"searchDepth":308,"depth":308,"links":98525},[98526,98527,98528,98532],{"id":50895,"depth":308,"text":50896},{"id":50916,"depth":308,"text":50917},{"id":50977,"depth":308,"text":50978,"children":98529},[98530,98531],{"id":50981,"depth":324,"text":50982},{"id":50999,"depth":324,"text":51000},{"id":51031,"depth":308,"text":51032},{"script":98534},[98535],{"type":1632,"key":1633,"data-nuxt-schema-org":327,"nodes":98536},[98537],{"headline":50880,"author":98538,"datePublished":51065,"@type":1640},{"name":1637,"@type":1638},{"updatedAt":46376,"coverCaption":51067},[98541],{"headline":50880,"author":98542,"datePublished":51065,"@type":1640},{"name":1637,"@type":1638},{"title":50880,"description":51058},[98545,98546],{"tag":49017,"color":49018},{"tag":49888,"color":49889},{"id":51079,"title":51080,"body":98548,"cover":51712,"coverAlt":49861,"date":51713,"description":51714,"draft":1627,"extension":1628,"head":99108,"locale":1641,"meta":99114,"navigation":327,"path":51725,"schemaOrg":99115,"seo":99118,"series":1656,"seriesDescription":1656,"seriesOrder":1656,"seriesTitle":1656,"slug":1656,"stem":51730,"tags":99119,"__hash__":51735},{"type":8,"value":98549,"toc":99090},[98550,98552,98556,98560,98562,98564,98568,98572,98576,98580,98588,98590,98594,98800,99006,99012,99014,99016,99020,99030,99034,99042,99044,99048,99052,99056,99066,99070,99074,99078,99082,99084,99086,99088],[11,98551,51086],{"id":51085},[21,98553,51089,98554,51092],{},[72,98555,1645],{},[21,98557,98558,51098],{},[72,98559,51097],{},[21,98561,51101],{},[30,98563,51105],{"id":51104},[21,98565,51108,98566,51111],{},[72,98567,50923],{},[192,98569,98570],{"id":51114},[72,98571,51117],{},[38,98573,98574],{},[41,98575,51122],{},[192,98577,98578],{"id":51125},[72,98579,51128],{},[38,98581,98582],{},[41,98583,51133,98584,51136,98586,51139],{},[72,98585,50947],{},[72,98587,50955],{},[30,98589,51143],{"id":51142},[21,98591,51146,98592,51149],{},[16,98593,16977],{},[267,98595,98596],{"className":269,"code":51152,"filename":271,"language":272,"meta":273,"style":273},[16,98597,98598,98608,98620,98624,98628,98644,98648,98652,98678,98682,98696,98704,98708,98716,98720,98728,98742,98754,98766,98784,98792],{"__ignoreMap":273},[277,98599,98600,98602,98604,98606],{"class":279,"line":280},[277,98601,284],{"class":283},[277,98603,288],{"class":287},[277,98605,292],{"class":291},[277,98607,305],{"class":283},[277,98609,98610,98612,98614,98616,98618],{"class":279,"line":308},[277,98611,312],{"class":311},[277,98613,12362],{"class":283},[277,98615,318],{"class":311},[277,98617,45690],{"class":301},[277,98619,18151],{"class":283},[277,98621,98622],{"class":279,"line":324},[277,98623,328],{"emptyLinePlaceholder":327},[277,98625,98626],{"class":279,"line":331},[277,98627,51185],{"class":12741},[277,98629,98630,98632,98634,98636,98638,98640,98642],{"class":279,"line":346},[277,98631,405],{"class":311},[277,98633,50410],{"class":356},[277,98635,340],{"class":311},[277,98637,413],{"class":291},[277,98639,448],{"class":283},[277,98641,3542],{"class":356},[277,98643,18277],{"class":283},[277,98645,98646],{"class":279,"line":360},[277,98647,328],{"emptyLinePlaceholder":327},[277,98649,98650],{"class":279,"line":371},[277,98651,51210],{"class":12741},[277,98653,98654,98656,98658,98660,98662,98664,98666,98668,98670,98672,98674,98676],{"class":279,"line":381},[277,98655,405],{"class":311},[277,98657,51217],{"class":356},[277,98659,340],{"class":311},[277,98661,2200],{"class":291},[277,98663,2203],{"class":283},[277,98665,601],{"class":311},[277,98667,51228],{"class":283},[277,98669,51231],{"class":311},[277,98671,12410],{"class":356},[277,98673,51236],{"class":311},[277,98675,38884],{"class":356},[277,98677,18277],{"class":283},[277,98679,98680],{"class":279,"line":391},[277,98681,328],{"emptyLinePlaceholder":327},[277,98683,98684,98686,98688,98690,98692,98694],{"class":279,"line":397},[277,98685,405],{"class":311},[277,98687,48755],{"class":291},[277,98689,340],{"class":311},[277,98691,598],{"class":283},[277,98693,601],{"class":311},[277,98695,343],{"class":283},[277,98697,98698,98700,98702],{"class":279,"line":402},[277,98699,50448],{"class":283},[277,98701,48771],{"class":311},[277,98703,18151],{"class":283},[277,98705,98706],{"class":279,"line":436},[277,98707,18255],{"class":283},[277,98709,98710,98712,98714],{"class":279,"line":456},[277,98711,785],{"class":283},[277,98713,288],{"class":287},[277,98715,305],{"class":283},[277,98717,98718],{"class":279,"line":461},[277,98719,328],{"emptyLinePlaceholder":327},[277,98721,98722,98724,98726],{"class":279,"line":476},[277,98723,284],{"class":283},[277,98725,802],{"class":287},[277,98727,305],{"class":283},[277,98729,98730,98732,98734,98736,98738,98740],{"class":279,"line":500},[277,98731,810],{"class":283},[277,98733,4201],{"class":287},[277,98735,816],{"class":291},[277,98737,298],{"class":283},[277,98739,51303],{"class":301},[277,98741,305],{"class":283},[277,98743,98744,98746,98748,98750,98752],{"class":279,"line":505},[277,98745,829],{"class":283},[277,98747,192],{"class":287},[277,98749,50334],{"class":283},[277,98751,192],{"class":287},[277,98753,305],{"class":283},[277,98755,98756,98758,98760,98762,98764],{"class":279,"line":520},[277,98757,829],{"class":283},[277,98759,21],{"class":287},[277,98761,51326],{"class":283},[277,98763,21],{"class":287},[277,98765,305],{"class":283},[277,98767,98768,98770,98772,98774,98776,98778,98780,98782],{"class":279,"line":539},[277,98769,829],{"class":283},[277,98771,4267],{"class":287},[277,98773,4278],{"class":291},[277,98775,298],{"class":283},[277,98777,48810],{"class":301},[277,98779,44692],{"class":283},[277,98781,4267],{"class":287},[277,98783,305],{"class":283},[277,98785,98786,98788,98790],{"class":279,"line":545},[277,98787,954],{"class":283},[277,98789,4201],{"class":287},[277,98791,305],{"class":283},[277,98793,98794,98796,98798],{"class":279,"line":550},[277,98795,785],{"class":283},[277,98797,802],{"class":287},[277,98799,305],{"class":283},[267,98801,98802],{"className":269,"code":51367,"filename":971,"language":272,"meta":273,"style":273},[16,98803,98804,98812,98820,98826,98832,98838,98842,98846,98850,98856,98874,98878,98882,98886,98892,98902,98906,98910,98914,98922,98926,98934,98948,98960,98972,98990,98998],{"__ignoreMap":273},[277,98805,98806,98808,98810],{"class":279,"line":280},[277,98807,284],{"class":283},[277,98809,288],{"class":287},[277,98811,305],{"class":283},[277,98813,98814,98816,98818],{"class":279,"line":308},[277,98815,1057],{"class":311},[277,98817,1060],{"class":311},[277,98819,343],{"class":283},[277,98821,98822,98824],{"class":279,"line":324},[277,98823,1086],{"class":291},[277,98825,473],{"class":283},[277,98827,98828,98830],{"class":279,"line":331},[277,98829,1093],{"class":311},[277,98831,343],{"class":283},[277,98833,98834,98836],{"class":279,"line":346},[277,98835,50671],{"class":283},[277,98837,4692],{"class":356},[277,98839,98840],{"class":279,"line":360},[277,98841,18478],{"class":283},[277,98843,98844],{"class":279,"line":371},[277,98845,1131],{"class":283},[277,98847,98848],{"class":279,"line":381},[277,98849,2742],{"class":283},[277,98851,98852,98854],{"class":279,"line":391},[277,98853,51420],{"class":291},[277,98855,473],{"class":283},[277,98857,98858,98860,98862,98864,98866,98868,98870,98872],{"class":279,"line":397},[277,98859,2754],{"class":311},[277,98861,1268],{"class":356},[277,98863,51431],{"class":283},[277,98865,51231],{"class":311},[277,98867,12410],{"class":356},[277,98869,51236],{"class":311},[277,98871,38884],{"class":356},[277,98873,18151],{"class":283},[277,98875,98876],{"class":279,"line":402},[277,98877,1126],{"class":283},[277,98879,98880],{"class":279,"line":436},[277,98881,1131],{"class":283},[277,98883,98884],{"class":279,"line":456},[277,98885,1140],{"class":283},[277,98887,98888,98890],{"class":279,"line":461},[277,98889,48892],{"class":291},[277,98891,473],{"class":283},[277,98893,98894,98896,98898,98900],{"class":279,"line":476},[277,98895,1212],{"class":356},[277,98897,50698],{"class":283},[277,98899,48771],{"class":311},[277,98901,18151],{"class":283},[277,98903,98904],{"class":279,"line":500},[277,98905,1126],{"class":283},[277,98907,98908],{"class":279,"line":505},[277,98909,542],{"class":283},[277,98911,98912],{"class":279,"line":520},[277,98913,18255],{"class":283},[277,98915,98916,98918,98920],{"class":279,"line":539},[277,98917,785],{"class":283},[277,98919,288],{"class":287},[277,98921,305],{"class":283},[277,98923,98924],{"class":279,"line":545},[277,98925,328],{"emptyLinePlaceholder":327},[277,98927,98928,98930,98932],{"class":279,"line":550},[277,98929,284],{"class":283},[277,98931,802],{"class":287},[277,98933,305],{"class":283},[277,98935,98936,98938,98940,98942,98944,98946],{"class":279,"line":578},[277,98937,810],{"class":283},[277,98939,4201],{"class":287},[277,98941,816],{"class":291},[277,98943,298],{"class":283},[277,98945,51303],{"class":301},[277,98947,305],{"class":283},[277,98949,98950,98952,98954,98956,98958],{"class":279,"line":583},[277,98951,829],{"class":283},[277,98953,192],{"class":287},[277,98955,50334],{"class":283},[277,98957,192],{"class":287},[277,98959,305],{"class":283},[277,98961,98962,98964,98966,98968,98970],{"class":279,"line":588},[277,98963,829],{"class":283},[277,98965,21],{"class":287},[277,98967,51326],{"class":283},[277,98969,21],{"class":287},[277,98971,305],{"class":283},[277,98973,98974,98976,98978,98980,98982,98984,98986,98988],{"class":279,"line":606},[277,98975,829],{"class":283},[277,98977,4267],{"class":287},[277,98979,4278],{"class":291},[277,98981,298],{"class":283},[277,98983,48810],{"class":301},[277,98985,44692],{"class":283},[277,98987,4267],{"class":287},[277,98989,305],{"class":283},[277,98991,98992,98994,98996],{"class":279,"line":614},[277,98993,954],{"class":283},[277,98995,4201],{"class":287},[277,98997,305],{"class":283},[277,98999,99000,99002,99004],{"class":279,"line":625},[277,99001,785],{"class":283},[277,99003,802],{"class":287},[277,99005,305],{"class":283},[21,99007,51576,99008,51580,99010,51584],{},[16,99009,51579],{},[16,99011,51583],{},[30,99013,51588],{"id":51587},[21,99015,51591],{},[192,99017,99018],{"id":51594},[72,99019,51597],{},[38,99021,99022],{},[41,99023,51602,99024,225,99026,225,99028,51609],{},[16,99025,12059],{},[16,99027,12068],{},[16,99029,1732],{},[192,99031,99032],{"id":51612},[72,99033,51010],{},[38,99035,99036],{},[41,99037,51619,99038,51622,99040,104],{},[72,99039,13469],{},[72,99041,50085],{},[30,99043,51628],{"id":51627},[192,99045,99046],{"id":51631},[72,99047,51634],{},[38,99049,99050],{},[41,99051,51639],{},[192,99053,99054],{"id":51642},[72,99055,51645],{},[38,99057,99058],{},[41,99059,51650,99060,51653,99062,51656,99064,51660],{},[72,99061,49906],{},[72,99063,50955],{},[72,99065,51659],{},[192,99067,99068],{"id":51663},[72,99069,51666],{},[38,99071,99072],{},[41,99073,51671],{},[192,99075,99076],{"id":51674},[72,99077,51677],{},[38,99079,99080],{},[41,99081,51682],{},[30,99083,17671],{"id":17670},[21,99085,51687],{},[21,99087,51690],{},[1606,99089,51693],{},{"title":273,"searchDepth":308,"depth":308,"links":99091},[99092,99096,99097,99101,99107],{"id":51104,"depth":308,"text":51105,"children":99093},[99094,99095],{"id":51114,"depth":324,"text":51117},{"id":51125,"depth":324,"text":51128},{"id":51142,"depth":308,"text":51143},{"id":51587,"depth":308,"text":51588,"children":99098},[99099,99100],{"id":51594,"depth":324,"text":51597},{"id":51612,"depth":324,"text":51010},{"id":51627,"depth":308,"text":51628,"children":99102},[99103,99104,99105,99106],{"id":51631,"depth":324,"text":51634},{"id":51642,"depth":324,"text":51645},{"id":51663,"depth":324,"text":51666},{"id":51674,"depth":324,"text":51677},{"id":17670,"depth":308,"text":17671},{"script":99109},[99110],{"type":1632,"key":1633,"data-nuxt-schema-org":327,"nodes":99111},[99112],{"headline":51080,"author":99113,"datePublished":51721,"@type":1640},{"name":1637,"@type":1638},{"updatedAt":46376,"coverCaption":51723,"author":1637,"keywords":51724},[99116],{"headline":51080,"author":99117,"datePublished":51721,"@type":1640},{"name":1637,"@type":1638},{"title":51080,"description":51714},[99120,99121,99122],{"tag":49888,"color":49889},{"tag":9074,"color":9075},{"tag":49017,"color":49018},{"id":51737,"title":51738,"body":99124,"cover":51894,"coverAlt":51895,"date":51896,"description":51897,"draft":1627,"extension":1628,"head":99228,"locale":1641,"meta":99234,"navigation":327,"path":51907,"schemaOrg":99235,"seo":99238,"series":1656,"seriesDescription":1656,"seriesOrder":1656,"seriesTitle":1656,"slug":1656,"stem":51912,"tags":99239,"__hash__":51919},{"type":8,"value":99125,"toc":99222},[99126,99130,99134,99142,99144,99146,99182,99184,99188,99192,99196,99198,99206,99208,99212,99214,99216],[11,99127,51744,99128,514],{"id":51743},[72,99129,1637],{},[21,99131,51749,99132,51752],{},[72,99133,1645],{},[21,99135,99136,51757,99138,225,99140,51762],{},[72,99137,1637],{},[72,99139,13114],{},[72,99141,113],{},[30,99143,51766],{"id":51765},[21,99145,51769],{},[38,99147,99148,99156,99166,99172],{},[41,99149,99150,51777,99152,51780,99154,104],{},[72,99151,51776],{},[72,99153,271],{},[3292,99155,12330],{},[41,99157,99158,51788,99160,225,99162,225,99164,51797],{},[72,99159,51787],{},[72,99161,1646],{},[72,99163,51793],{},[72,99165,51796],{},[41,99167,99168,51803,99170,51807],{},[72,99169,51802],{},[3292,99171,51806],{},[41,99173,99174,51813,99176,225,99178,225,99180,51820],{},[72,99175,51812],{},[72,99177,50955],{},[72,99179,50947],{},[72,99181,49906],{},[30,99183,51824],{"id":51823},[21,99185,51827,99186,104],{},[72,99187,51830],{},[21,99189,51833,99190,51837],{},[72,99191,51836],{},[21,99193,51840,99194,51844],{},[72,99195,51843],{},[30,99197,51848],{"id":51847},[21,99199,51851,99200,51854,99202,51858,99204,51862],{},[16,99201,19250],{},[3292,99203,51857],{},[3292,99205,51861],{},[30,99207,51866],{"id":51865},[21,99209,51869,99210,51872],{},[72,99211,1637],{},[21,99213,51875],{},[38492,99215],{},[21,99217,99218,51883,99220],{},[72,99219,51882],{},[13178,99221,51887],{"href":51886},{"title":273,"searchDepth":308,"depth":308,"links":99223},[99224,99225,99226,99227],{"id":51765,"depth":308,"text":51766},{"id":51823,"depth":308,"text":51824},{"id":51847,"depth":308,"text":51848},{"id":51865,"depth":308,"text":51866},{"script":99229},[99230],{"type":1632,"key":1633,"data-nuxt-schema-org":327,"nodes":99231},[99232],{"headline":51738,"author":99233,"datePublished":51904,"@type":1640},{"name":1637,"@type":1638},{"updatedAt":46376,"coverCaption":51906},[99236],{"headline":51738,"author":99237,"datePublished":51904,"@type":1640},{"name":1637,"@type":1638},{"title":51738,"description":51897},[99240,99241,99242],{"tag":1637,"color":49883},{"tag":51916,"color":51917},{"tag":49888,"color":49889},1774057121905]