[{"data":1,"prerenderedAt":3589},["ShallowReactive",2],{"navigation_docs":3,"-guides-router":101,"-guides-router-surround":3584},[4,55,73,91],{"title":5,"icon":6,"path":7,"stem":8,"children":9,"page":54},"Guides","i-lucide-book-open","\u002Fguides","1.guides",[10,14,18,22,26,30,34,38,42,46,50],{"title":11,"path":12,"stem":13},"Introduction","\u002Fguides\u002Fintroduction","1.guides\u002F0.introduction",{"title":15,"path":16,"stem":17},"Data","\u002Fguides\u002Fdata","1.guides\u002F1.data",{"title":19,"path":20,"stem":21},"Forms","\u002Fguides\u002Fform","1.guides\u002F2.form",{"title":23,"path":24,"stem":25},"List","\u002Fguides\u002Flist","1.guides\u002F3.list",{"title":27,"path":28,"stem":29},"Authentication","\u002Fguides\u002Fauthentication","1.guides\u002F4.authentication",{"title":31,"path":32,"stem":33},"Authorization","\u002Fguides\u002Fauthorization","1.guides\u002F5.authorization",{"title":35,"path":36,"stem":37},"Notifications","\u002Fguides\u002Fnotifications","1.guides\u002F6.notifications",{"title":39,"path":40,"stem":41},"Realtime","\u002Fguides\u002Frealtime","1.guides\u002F7.realtime",{"title":43,"path":44,"stem":45},"Router","\u002Fguides\u002Frouter","1.guides\u002F8.router",{"title":47,"path":48,"stem":49},"I18n","\u002Fguides\u002Fi18n","1.guides\u002F9.i18n",{"title":51,"path":52,"stem":53},"Resources","\u002Fguides\u002Fresources","1.guides\u002F99.resources",false,{"title":56,"icon":57,"path":58,"stem":59,"children":60,"page":54},"Integrations","i-lucide-blocks","\u002Fintegrations","2.integrations",[61,65,69],{"title":62,"path":63,"stem":64},"Vue","\u002Fintegrations\u002Fvue","2.integrations\u002F0.vue",{"title":66,"path":67,"stem":68},"Nuxt","\u002Fintegrations\u002Fnuxt","2.integrations\u002F1.nuxt",{"title":70,"path":71,"stem":72},"Svelte","\u002Fintegrations\u002Fsvelte","2.integrations\u002F2.svelte",{"title":74,"icon":75,"path":76,"stem":77,"children":78,"page":54},"Backend","i-lucide-server","\u002Fbackend","3.backend",[79,83,87],{"title":80,"path":81,"stem":82},"Directus","\u002Fbackend\u002Fdirectus","3.backend\u002F0.directus",{"title":84,"path":85,"stem":86},"Supabase","\u002Fbackend\u002Fsupabase","3.backend\u002F1.supabase",{"title":88,"path":89,"stem":90},"RESTful API","\u002Fbackend\u002Frest-api","3.backend\u002F9.rest-api",{"title":92,"icon":93,"path":94,"stem":95,"children":96,"page":54},"AI","i-lucide-sparkles","\u002Fai","4.ai",[97],{"title":98,"path":99,"stem":100},"Agent Skills","\u002Fai\u002Fskills","4.ai\u002F0.skills",{"id":102,"title":43,"body":103,"description":3578,"extension":3579,"links":3580,"meta":3581,"navigation":474,"path":44,"seo":3582,"stem":45,"__hash__":3583},"docs\u002F1.guides\u002F8.router.md",{"type":104,"value":105,"toc":3566},"minimark",[106,110,113,118,121,126,310,314,384,500,504,510,517,520,667,762,768,776,1303,1307,1316,1319,1321,1574,1578,1584,1591,1708,1766,2238,2242,2248,2254,2261,2854,2862,2866,2872,2877,2947,2954,3533,3536,3540,3543,3562],[107,108,109],"p",{},"Ginjou can work with any router tool.",[107,111,112],{},"This layer gives Ginjou one shared router contract for navigation, path resolution, and current location state.",[114,115,117],"h2",{"id":116},"router-context","Router Context",[107,119,120],{},"Router context is the shared entry point for navigation and route state.",[122,123,125],"h3",{"id":124},"interface","Interface",[127,128,129],"code-group",{},[130,131,136],"pre",{"className":132,"code":133,"filename":43,"language":134,"meta":135,"style":135},"language-ts shiki shiki-themes material-theme-lighter github-light github-dark monokai","interface Router {\n    go: (params: RouterGoParams\u003Cany>) => void\n    back: () => void\n    resolve: (params: RouterGoParams\u003Cany>) => string\n    getLocation: () => RouterLocation\u003Cany>\n    onChangeLocation: (handler: (location: RouterLocation\u003Cany>) => void) => () => void\n}\n","ts","",[137,138,139,155,194,209,236,258,304],"code",{"__ignoreMap":135},[140,141,144,147,151],"span",{"class":142,"line":143},"line",1,[140,145,124],{"class":146},"srJo8",[140,148,150],{"class":149},"sKvfc"," Router",[140,152,154],{"class":153},"swvn1"," {\n",[140,156,158,162,166,169,173,175,178,181,185,188,191],{"class":142,"line":157},2,[140,159,161],{"class":160},"sY_X6","    go",[140,163,165],{"class":164},"sGXK2",":",[140,167,168],{"class":153}," (",[140,170,172],{"class":171},"sQgqH","params",[140,174,165],{"class":164},[140,176,177],{"class":149}," RouterGoParams",[140,179,180],{"class":153},"\u003C",[140,182,184],{"class":183},"s_MOj","any",[140,186,187],{"class":153},">)",[140,189,190],{"class":146}," =>",[140,192,193],{"class":183}," void\n",[140,195,197,200,202,205,207],{"class":142,"line":196},3,[140,198,199],{"class":160},"    back",[140,201,165],{"class":164},[140,203,204],{"class":153}," ()",[140,206,190],{"class":146},[140,208,193],{"class":183},[140,210,212,215,217,219,221,223,225,227,229,231,233],{"class":142,"line":211},4,[140,213,214],{"class":160},"    resolve",[140,216,165],{"class":164},[140,218,168],{"class":153},[140,220,172],{"class":171},[140,222,165],{"class":164},[140,224,177],{"class":149},[140,226,180],{"class":153},[140,228,184],{"class":183},[140,230,187],{"class":153},[140,232,190],{"class":146},[140,234,235],{"class":183}," string\n",[140,237,239,242,244,246,248,251,253,255],{"class":142,"line":238},5,[140,240,241],{"class":160},"    getLocation",[140,243,165],{"class":164},[140,245,204],{"class":153},[140,247,190],{"class":146},[140,249,250],{"class":149}," RouterLocation",[140,252,180],{"class":153},[140,254,184],{"class":183},[140,256,257],{"class":153},">\n",[140,259,261,264,266,268,271,273,275,278,280,282,284,286,288,290,293,296,298,300,302],{"class":142,"line":260},6,[140,262,263],{"class":160},"    onChangeLocation",[140,265,165],{"class":164},[140,267,168],{"class":153},[140,269,270],{"class":160},"handler",[140,272,165],{"class":164},[140,274,168],{"class":153},[140,276,277],{"class":171},"location",[140,279,165],{"class":164},[140,281,250],{"class":149},[140,283,180],{"class":153},[140,285,184],{"class":183},[140,287,187],{"class":153},[140,289,190],{"class":146},[140,291,292],{"class":183}," void",[140,294,295],{"class":153},")",[140,297,190],{"class":146},[140,299,204],{"class":153},[140,301,190],{"class":146},[140,303,193],{"class":183},[140,305,307],{"class":142,"line":306},7,[140,308,309],{"class":153},"}\n",[122,311,313],{"id":312},"methods","Methods",[315,316,317,330],"table",{},[318,319,320],"thead",{},[321,322,323,327],"tr",{},[324,325,326],"th",{},"Method",[324,328,329],{},"What it does",[331,332,333,344,354,364,374],"tbody",{},[321,334,335,341],{},[336,337,338],"td",{},[137,339,340],{},"go",[336,342,343],{},"Navigate to the next location.",[321,345,346,351],{},[336,347,348],{},[137,349,350],{},"back",[336,352,353],{},"Move one step backward in router history.",[321,355,356,361],{},[336,357,358],{},[137,359,360],{},"resolve",[336,362,363],{},"Convert route params into a final path string or href.",[321,365,366,371],{},[336,367,368],{},[137,369,370],{},"getLocation",[336,372,373],{},"Return the current location snapshot.",[321,375,376,381],{},[336,377,378],{},[137,379,380],{},"onChangeLocation",[336,382,383],{},"Subscribe to location changes and return a cleanup function.",[127,385,386],{},[130,387,391],{"className":388,"code":389,"filename":62,"language":390,"meta":135,"style":135},"language-vue shiki shiki-themes material-theme-lighter github-light github-dark monokai","\u003Cscript setup lang=\"ts\">\nimport { defineRouterContext } from '@ginjou\u002Fvue'\nimport { createRouter } from '@ginjou\u002Fwith-vue-router'\n\ndefineRouterContext(createRouter())\n\u003C\u002Fscript>\n","vue",[137,392,393,422,450,470,476,491],{"__ignoreMap":135},[140,394,395,397,401,405,408,411,415,418,420],{"class":142,"line":143},[140,396,180],{"class":153},[140,398,400],{"class":399},"sHsBP","script",[140,402,404],{"class":403},"s_lYk"," setup",[140,406,407],{"class":403}," lang",[140,409,410],{"class":153},"=",[140,412,414],{"class":413},"siCPE","\"",[140,416,134],{"class":417},"sLACW",[140,419,414],{"class":413},[140,421,257],{"class":153},[140,423,424,428,431,435,438,441,444,447],{"class":142,"line":157},[140,425,427],{"class":426},"sRxSC","import",[140,429,430],{"class":153}," {",[140,432,434],{"class":433},"ss--_"," defineRouterContext",[140,436,437],{"class":153}," }",[140,439,440],{"class":426}," from",[140,442,443],{"class":413}," '",[140,445,446],{"class":417},"@ginjou\u002Fvue",[140,448,449],{"class":413},"'\n",[140,451,452,454,456,459,461,463,465,468],{"class":142,"line":196},[140,453,427],{"class":426},[140,455,430],{"class":153},[140,457,458],{"class":433}," createRouter",[140,460,437],{"class":153},[140,462,440],{"class":426},[140,464,443],{"class":413},[140,466,467],{"class":417},"@ginjou\u002Fwith-vue-router",[140,469,449],{"class":413},[140,471,472],{"class":142,"line":211},[140,473,475],{"emptyLinePlaceholder":474},true,"\n",[140,477,478,482,485,488],{"class":142,"line":238},[140,479,481],{"class":480},"sD0ED","defineRouterContext",[140,483,484],{"class":433},"(",[140,486,487],{"class":480},"createRouter",[140,489,490],{"class":433},"())\n",[140,492,493,496,498],{"class":142,"line":260},[140,494,495],{"class":153},"\u003C\u002F",[140,497,400],{"class":399},[140,499,257],{"class":153},[114,501,503],{"id":502},"navigate","Navigate",[107,505,506,509],{},[137,507,508],{},"useGo()"," is the low-level navigation helper.",[107,511,512,513,516],{},"It forwards one ",[137,514,515],{},"RouterGoParams"," object to the current router context.",[107,518,519],{},"If no router context exists, the helper becomes a safe no-op.",[127,521,522],{},[130,523,525],{"className":132,"code":524,"filename":515,"language":134,"meta":135,"style":135},"interface RouterGoParams\u003CTMeta = unknown> {\n    to?: string\n    type?: 'push' | 'replace'\n    query?: Record\u003Cstring, string | number | null | undefined>\n    hash?: string\n    keepHash?: boolean\n    keepQuery?: boolean\n    meta?: TMeta\n}\n",[137,526,527,549,560,585,623,632,642,651,662],{"__ignoreMap":135},[140,528,529,531,533,535,538,541,544,547],{"class":142,"line":143},[140,530,124],{"class":146},[140,532,177],{"class":149},[140,534,180],{"class":153},[140,536,537],{"class":149},"TMeta",[140,539,540],{"class":164}," =",[140,542,543],{"class":183}," unknown",[140,545,546],{"class":153},">",[140,548,154],{"class":153},[140,550,551,555,558],{"class":142,"line":157},[140,552,554],{"class":553},"sIDdj","    to",[140,556,557],{"class":164},"?:",[140,559,235],{"class":183},[140,561,562,565,567,569,572,575,578,580,583],{"class":142,"line":196},[140,563,564],{"class":553},"    type",[140,566,557],{"class":164},[140,568,443],{"class":413},[140,570,571],{"class":417},"push",[140,573,574],{"class":413},"'",[140,576,577],{"class":164}," |",[140,579,443],{"class":413},[140,581,582],{"class":417},"replace",[140,584,449],{"class":413},[140,586,587,590,592,595,597,600,603,606,608,611,613,616,618,621],{"class":142,"line":211},[140,588,589],{"class":553},"    query",[140,591,557],{"class":164},[140,593,594],{"class":149}," Record",[140,596,180],{"class":153},[140,598,599],{"class":183},"string",[140,601,602],{"class":153},",",[140,604,605],{"class":183}," string",[140,607,577],{"class":164},[140,609,610],{"class":183}," number",[140,612,577],{"class":164},[140,614,615],{"class":183}," null",[140,617,577],{"class":164},[140,619,620],{"class":183}," undefined",[140,622,257],{"class":153},[140,624,625,628,630],{"class":142,"line":238},[140,626,627],{"class":553},"    hash",[140,629,557],{"class":164},[140,631,235],{"class":183},[140,633,634,637,639],{"class":142,"line":260},[140,635,636],{"class":553},"    keepHash",[140,638,557],{"class":164},[140,640,641],{"class":183}," boolean\n",[140,643,644,647,649],{"class":142,"line":306},[140,645,646],{"class":553},"    keepQuery",[140,648,557],{"class":164},[140,650,641],{"class":183},[140,652,654,657,659],{"class":142,"line":653},8,[140,655,656],{"class":553},"    meta",[140,658,557],{"class":164},[140,660,661],{"class":149}," TMeta\n",[140,663,665],{"class":142,"line":664},9,[140,666,309],{"class":153},[315,668,669,679],{},[318,670,671],{},[321,672,673,676],{},[324,674,675],{},"Property",[324,677,678],{},"Meaning",[331,680,681,691,707,717,727,740,752],{},[321,682,683,688],{},[336,684,685],{},[137,686,687],{},"to",[336,689,690],{},"The target path when you navigate by raw path.",[321,692,693,698],{},[336,694,695],{},[137,696,697],{},"type",[336,699,700,701,703,704,706],{},"Choose ",[137,702,571],{}," or ",[137,705,582],{},".",[321,708,709,714],{},[336,710,711],{},[137,712,713],{},"query",[336,715,716],{},"Query values for the next location.",[321,718,719,724],{},[336,720,721],{},[137,722,723],{},"hash",[336,725,726],{},"Hash value for the next location.",[321,728,729,734],{},[336,730,731],{},[137,732,733],{},"keepHash",[336,735,736,737,739],{},"Reuse the current hash when ",[137,738,723],{}," is not passed.",[321,741,742,747],{},[336,743,744],{},[137,745,746],{},"keepQuery",[336,748,749,750,706],{},"Merge the current query into the next query before applying ",[137,751,713],{},[321,753,754,759],{},[336,755,756],{},[137,757,758],{},"meta",[336,760,761],{},"Adapter-specific navigation options.",[107,763,764,765,767],{},"With the official vue-router bridge, ",[137,766,758],{}," can carry vue-router route options such as named-route params.",[107,769,770,772,773,775],{},[137,771,746],{}," and ",[137,774,733],{}," reuse values from the current location. They do not create a second navigation step.",[127,777,779,1065],{"sync":778},"guide-example",[130,780,782],{"className":388,"code":781,"filename":62,"language":390,"meta":135,"style":135},"\u003Cscript setup lang=\"ts\">\nimport { useGo } from '@ginjou\u002Fvue'\n\nconst go = useGo()\n\nfunction openPosts() {\n    go({\n        to: '\u002Fposts',\n        query: {\n            page: 2,\n            status: 'published',\n        },\n        keepHash: true,\n    })\n}\n\nfunction openPost(id: number) {\n    go({\n        meta: {\n            name: 'post-show',\n            params: { id },\n        },\n    })\n}\n\u003C\u002Fscript>\n",[137,783,784,804,823,827,843,847,860,870,887,896,910,927,933,947,956,961,966,987,996,1006,1023,1039,1044,1051,1056],{"__ignoreMap":135},[140,785,786,788,790,792,794,796,798,800,802],{"class":142,"line":143},[140,787,180],{"class":153},[140,789,400],{"class":399},[140,791,404],{"class":403},[140,793,407],{"class":403},[140,795,410],{"class":153},[140,797,414],{"class":413},[140,799,134],{"class":417},[140,801,414],{"class":413},[140,803,257],{"class":153},[140,805,806,808,810,813,815,817,819,821],{"class":142,"line":157},[140,807,427],{"class":426},[140,809,430],{"class":153},[140,811,812],{"class":433}," useGo",[140,814,437],{"class":153},[140,816,440],{"class":426},[140,818,443],{"class":413},[140,820,446],{"class":417},[140,822,449],{"class":413},[140,824,825],{"class":142,"line":196},[140,826,475],{"emptyLinePlaceholder":474},[140,828,829,832,836,838,840],{"class":142,"line":211},[140,830,831],{"class":146},"const",[140,833,835],{"class":834},"s91G_"," go",[140,837,540],{"class":164},[140,839,812],{"class":480},[140,841,842],{"class":433},"()\n",[140,844,845],{"class":142,"line":238},[140,846,475],{"emptyLinePlaceholder":474},[140,848,849,852,855,858],{"class":142,"line":260},[140,850,851],{"class":146},"function",[140,853,854],{"class":480}," openPosts",[140,856,857],{"class":153},"()",[140,859,154],{"class":153},[140,861,862,864,867],{"class":142,"line":306},[140,863,161],{"class":480},[140,865,484],{"class":866},"squCx",[140,868,869],{"class":153},"{\n",[140,871,872,875,877,879,882,884],{"class":142,"line":653},[140,873,874],{"class":866},"        to",[140,876,165],{"class":153},[140,878,443],{"class":413},[140,880,881],{"class":417},"\u002Fposts",[140,883,574],{"class":413},[140,885,886],{"class":153},",\n",[140,888,889,892,894],{"class":142,"line":664},[140,890,891],{"class":866},"        query",[140,893,165],{"class":153},[140,895,154],{"class":153},[140,897,899,902,904,908],{"class":142,"line":898},10,[140,900,901],{"class":866},"            page",[140,903,165],{"class":153},[140,905,907],{"class":906},"sYThS"," 2",[140,909,886],{"class":153},[140,911,913,916,918,920,923,925],{"class":142,"line":912},11,[140,914,915],{"class":866},"            status",[140,917,165],{"class":153},[140,919,443],{"class":413},[140,921,922],{"class":417},"published",[140,924,574],{"class":413},[140,926,886],{"class":153},[140,928,930],{"class":142,"line":929},12,[140,931,932],{"class":153},"        },\n",[140,934,936,939,941,945],{"class":142,"line":935},13,[140,937,938],{"class":866},"        keepHash",[140,940,165],{"class":153},[140,942,944],{"class":943},"s8HiA"," true",[140,946,886],{"class":153},[140,948,950,953],{"class":142,"line":949},14,[140,951,952],{"class":153},"    }",[140,954,955],{"class":866},")\n",[140,957,959],{"class":142,"line":958},15,[140,960,309],{"class":153},[140,962,964],{"class":142,"line":963},16,[140,965,475],{"emptyLinePlaceholder":474},[140,967,969,971,974,976,979,981,983,985],{"class":142,"line":968},17,[140,970,851],{"class":146},[140,972,973],{"class":480}," openPost",[140,975,484],{"class":153},[140,977,978],{"class":171},"id",[140,980,165],{"class":164},[140,982,610],{"class":183},[140,984,295],{"class":153},[140,986,154],{"class":153},[140,988,990,992,994],{"class":142,"line":989},18,[140,991,161],{"class":480},[140,993,484],{"class":866},[140,995,869],{"class":153},[140,997,999,1002,1004],{"class":142,"line":998},19,[140,1000,1001],{"class":866},"        meta",[140,1003,165],{"class":153},[140,1005,154],{"class":153},[140,1007,1009,1012,1014,1016,1019,1021],{"class":142,"line":1008},20,[140,1010,1011],{"class":866},"            name",[140,1013,165],{"class":153},[140,1015,443],{"class":413},[140,1017,1018],{"class":417},"post-show",[140,1020,574],{"class":413},[140,1022,886],{"class":153},[140,1024,1026,1029,1031,1033,1036],{"class":142,"line":1025},21,[140,1027,1028],{"class":866},"            params",[140,1030,165],{"class":153},[140,1032,430],{"class":153},[140,1034,1035],{"class":433}," id",[140,1037,1038],{"class":153}," },\n",[140,1040,1042],{"class":142,"line":1041},22,[140,1043,932],{"class":153},[140,1045,1047,1049],{"class":142,"line":1046},23,[140,1048,952],{"class":153},[140,1050,955],{"class":866},[140,1052,1054],{"class":142,"line":1053},24,[140,1055,309],{"class":153},[140,1057,1059,1061,1063],{"class":142,"line":1058},25,[140,1060,495],{"class":153},[140,1062,400],{"class":399},[140,1064,257],{"class":153},[130,1066,1070],{"className":1067,"code":1068,"filename":70,"language":1069,"meta":135,"style":135},"language-svelte shiki shiki-themes material-theme-lighter github-light github-dark monokai","\u003Cscript lang=\"ts\">\nimport { useGo } from '@ginjou\u002Fsvelte'\n\nconst go = useGo()\n\nfunction openPosts() {\n    go({\n        to: '\u002Fposts',\n        query: {\n            page: 2,\n            status: 'published',\n        },\n        keepHash: true,\n    })\n}\n\nfunction openPost(id: number) {\n    go({\n        meta: {\n            name: 'post-show',\n            params: { id },\n        },\n    })\n}\n\u003C\u002Fscript>\n","svelte",[137,1071,1072,1090,1109,1113,1125,1129,1139,1147,1161,1169,1179,1193,1197,1207,1213,1217,1221,1239,1247,1255,1269,1281,1285,1291,1295],{"__ignoreMap":135},[140,1073,1074,1076,1078,1080,1082,1084,1086,1088],{"class":142,"line":143},[140,1075,180],{"class":153},[140,1077,400],{"class":399},[140,1079,407],{"class":403},[140,1081,410],{"class":153},[140,1083,414],{"class":413},[140,1085,134],{"class":417},[140,1087,414],{"class":413},[140,1089,257],{"class":153},[140,1091,1092,1094,1096,1098,1100,1102,1104,1107],{"class":142,"line":157},[140,1093,427],{"class":426},[140,1095,430],{"class":153},[140,1097,812],{"class":433},[140,1099,437],{"class":153},[140,1101,440],{"class":426},[140,1103,443],{"class":413},[140,1105,1106],{"class":417},"@ginjou\u002Fsvelte",[140,1108,449],{"class":413},[140,1110,1111],{"class":142,"line":196},[140,1112,475],{"emptyLinePlaceholder":474},[140,1114,1115,1117,1119,1121,1123],{"class":142,"line":211},[140,1116,831],{"class":146},[140,1118,835],{"class":834},[140,1120,540],{"class":164},[140,1122,812],{"class":480},[140,1124,842],{"class":433},[140,1126,1127],{"class":142,"line":238},[140,1128,475],{"emptyLinePlaceholder":474},[140,1130,1131,1133,1135,1137],{"class":142,"line":260},[140,1132,851],{"class":146},[140,1134,854],{"class":480},[140,1136,857],{"class":153},[140,1138,154],{"class":153},[140,1140,1141,1143,1145],{"class":142,"line":306},[140,1142,161],{"class":480},[140,1144,484],{"class":866},[140,1146,869],{"class":153},[140,1148,1149,1151,1153,1155,1157,1159],{"class":142,"line":653},[140,1150,874],{"class":866},[140,1152,165],{"class":153},[140,1154,443],{"class":413},[140,1156,881],{"class":417},[140,1158,574],{"class":413},[140,1160,886],{"class":153},[140,1162,1163,1165,1167],{"class":142,"line":664},[140,1164,891],{"class":866},[140,1166,165],{"class":153},[140,1168,154],{"class":153},[140,1170,1171,1173,1175,1177],{"class":142,"line":898},[140,1172,901],{"class":866},[140,1174,165],{"class":153},[140,1176,907],{"class":906},[140,1178,886],{"class":153},[140,1180,1181,1183,1185,1187,1189,1191],{"class":142,"line":912},[140,1182,915],{"class":866},[140,1184,165],{"class":153},[140,1186,443],{"class":413},[140,1188,922],{"class":417},[140,1190,574],{"class":413},[140,1192,886],{"class":153},[140,1194,1195],{"class":142,"line":929},[140,1196,932],{"class":153},[140,1198,1199,1201,1203,1205],{"class":142,"line":935},[140,1200,938],{"class":866},[140,1202,165],{"class":153},[140,1204,944],{"class":943},[140,1206,886],{"class":153},[140,1208,1209,1211],{"class":142,"line":949},[140,1210,952],{"class":153},[140,1212,955],{"class":866},[140,1214,1215],{"class":142,"line":958},[140,1216,309],{"class":153},[140,1218,1219],{"class":142,"line":963},[140,1220,475],{"emptyLinePlaceholder":474},[140,1222,1223,1225,1227,1229,1231,1233,1235,1237],{"class":142,"line":968},[140,1224,851],{"class":146},[140,1226,973],{"class":480},[140,1228,484],{"class":153},[140,1230,978],{"class":171},[140,1232,165],{"class":164},[140,1234,610],{"class":183},[140,1236,295],{"class":153},[140,1238,154],{"class":153},[140,1240,1241,1243,1245],{"class":142,"line":989},[140,1242,161],{"class":480},[140,1244,484],{"class":866},[140,1246,869],{"class":153},[140,1248,1249,1251,1253],{"class":142,"line":998},[140,1250,1001],{"class":866},[140,1252,165],{"class":153},[140,1254,154],{"class":153},[140,1256,1257,1259,1261,1263,1265,1267],{"class":142,"line":1008},[140,1258,1011],{"class":866},[140,1260,165],{"class":153},[140,1262,443],{"class":413},[140,1264,1018],{"class":417},[140,1266,574],{"class":413},[140,1268,886],{"class":153},[140,1270,1271,1273,1275,1277,1279],{"class":142,"line":1025},[140,1272,1028],{"class":866},[140,1274,165],{"class":153},[140,1276,430],{"class":153},[140,1278,1035],{"class":433},[140,1280,1038],{"class":153},[140,1282,1283],{"class":142,"line":1041},[140,1284,932],{"class":153},[140,1286,1287,1289],{"class":142,"line":1046},[140,1288,952],{"class":153},[140,1290,955],{"class":866},[140,1292,1293],{"class":142,"line":1053},[140,1294,309],{"class":153},[140,1296,1297,1299,1301],{"class":142,"line":1058},[140,1298,495],{"class":153},[140,1300,400],{"class":399},[140,1302,257],{"class":153},[114,1304,1306],{"id":1305},"go-back","Go Back",[107,1308,1309,1312,1313,706],{},[137,1310,1311],{},"useBack()"," maps to ",[137,1314,1315],{},"router.back()",[107,1317,1318],{},"Use it when the page should follow the router history instead of targeting a new path.",[107,1320,519],{},[127,1322,1323,1460],{"sync":778},[130,1324,1326],{"className":388,"code":1325,"filename":62,"language":390,"meta":135,"style":135},"\u003Cscript setup lang=\"ts\">\nimport { useBack } from '@ginjou\u002Fvue'\n\nconst back = useBack()\n\u003C\u002Fscript>\n\n\u003Ctemplate>\n    \u003Cbutton type=\"button\" @click=\"back()\">\n        Back\n    \u003C\u002Fbutton>\n\u003C\u002Ftemplate>\n",[137,1327,1328,1348,1367,1371,1384,1392,1396,1405,1438,1443,1452],{"__ignoreMap":135},[140,1329,1330,1332,1334,1336,1338,1340,1342,1344,1346],{"class":142,"line":143},[140,1331,180],{"class":153},[140,1333,400],{"class":399},[140,1335,404],{"class":403},[140,1337,407],{"class":403},[140,1339,410],{"class":153},[140,1341,414],{"class":413},[140,1343,134],{"class":417},[140,1345,414],{"class":413},[140,1347,257],{"class":153},[140,1349,1350,1352,1354,1357,1359,1361,1363,1365],{"class":142,"line":157},[140,1351,427],{"class":426},[140,1353,430],{"class":153},[140,1355,1356],{"class":433}," useBack",[140,1358,437],{"class":153},[140,1360,440],{"class":426},[140,1362,443],{"class":413},[140,1364,446],{"class":417},[140,1366,449],{"class":413},[140,1368,1369],{"class":142,"line":196},[140,1370,475],{"emptyLinePlaceholder":474},[140,1372,1373,1375,1378,1380,1382],{"class":142,"line":211},[140,1374,831],{"class":146},[140,1376,1377],{"class":834}," back",[140,1379,540],{"class":164},[140,1381,1356],{"class":480},[140,1383,842],{"class":433},[140,1385,1386,1388,1390],{"class":142,"line":238},[140,1387,495],{"class":153},[140,1389,400],{"class":399},[140,1391,257],{"class":153},[140,1393,1394],{"class":142,"line":260},[140,1395,475],{"emptyLinePlaceholder":474},[140,1397,1398,1400,1403],{"class":142,"line":306},[140,1399,180],{"class":153},[140,1401,1402],{"class":399},"template",[140,1404,257],{"class":153},[140,1406,1407,1410,1413,1416,1418,1420,1422,1424,1427,1429,1431,1434,1436],{"class":142,"line":653},[140,1408,1409],{"class":153},"    \u003C",[140,1411,1412],{"class":399},"button",[140,1414,1415],{"class":403}," type",[140,1417,410],{"class":153},[140,1419,414],{"class":413},[140,1421,1412],{"class":417},[140,1423,414],{"class":413},[140,1425,1426],{"class":403}," @click",[140,1428,410],{"class":153},[140,1430,414],{"class":413},[140,1432,1433],{"class":417},"back()",[140,1435,414],{"class":413},[140,1437,257],{"class":153},[140,1439,1440],{"class":142,"line":664},[140,1441,1442],{"class":433},"        Back\n",[140,1444,1445,1448,1450],{"class":142,"line":898},[140,1446,1447],{"class":153},"    \u003C\u002F",[140,1449,1412],{"class":399},[140,1451,257],{"class":153},[140,1453,1454,1456,1458],{"class":142,"line":912},[140,1455,495],{"class":153},[140,1457,1402],{"class":399},[140,1459,257],{"class":153},[130,1461,1463],{"className":1067,"code":1462,"filename":70,"language":1069,"meta":135,"style":135},"\u003Cscript lang=\"ts\">\nimport { useBack } from '@ginjou\u002Fsvelte'\n\nconst back = useBack()\n\u003C\u002Fscript>\n\n\u003Cbutton type=\"button\" onclick={back}>\n    Back\n\u003C\u002Fbutton>\n",[137,1464,1465,1483,1501,1505,1517,1525,1529,1561,1566],{"__ignoreMap":135},[140,1466,1467,1469,1471,1473,1475,1477,1479,1481],{"class":142,"line":143},[140,1468,180],{"class":153},[140,1470,400],{"class":399},[140,1472,407],{"class":403},[140,1474,410],{"class":153},[140,1476,414],{"class":413},[140,1478,134],{"class":417},[140,1480,414],{"class":413},[140,1482,257],{"class":153},[140,1484,1485,1487,1489,1491,1493,1495,1497,1499],{"class":142,"line":157},[140,1486,427],{"class":426},[140,1488,430],{"class":153},[140,1490,1356],{"class":433},[140,1492,437],{"class":153},[140,1494,440],{"class":426},[140,1496,443],{"class":413},[140,1498,1106],{"class":417},[140,1500,449],{"class":413},[140,1502,1503],{"class":142,"line":196},[140,1504,475],{"emptyLinePlaceholder":474},[140,1506,1507,1509,1511,1513,1515],{"class":142,"line":211},[140,1508,831],{"class":146},[140,1510,1377],{"class":834},[140,1512,540],{"class":164},[140,1514,1356],{"class":480},[140,1516,842],{"class":433},[140,1518,1519,1521,1523],{"class":142,"line":238},[140,1520,495],{"class":153},[140,1522,400],{"class":399},[140,1524,257],{"class":153},[140,1526,1527],{"class":142,"line":260},[140,1528,475],{"emptyLinePlaceholder":474},[140,1530,1531,1533,1535,1537,1539,1541,1543,1545,1548,1550,1554,1556,1559],{"class":142,"line":306},[140,1532,180],{"class":153},[140,1534,1412],{"class":399},[140,1536,1415],{"class":403},[140,1538,410],{"class":153},[140,1540,414],{"class":413},[140,1542,1412],{"class":417},[140,1544,414],{"class":413},[140,1546,1547],{"class":403}," onclick",[140,1549,410],{"class":153},[140,1551,1553],{"class":1552},"sW3yT","{",[140,1555,350],{"class":433},[140,1557,1558],{"class":1552},"}",[140,1560,257],{"class":153},[140,1562,1563],{"class":142,"line":653},[140,1564,1565],{"class":433},"    Back\n",[140,1567,1568,1570,1572],{"class":142,"line":664},[140,1569,495],{"class":153},[140,1571,1412],{"class":399},[140,1573,257],{"class":153},[114,1575,1577],{"id":1576},"current-location","Current Location",[107,1579,1580,1583],{},[137,1581,1582],{},"useLocation()"," returns the current location as a reactive ref.",[107,1585,1586,1587,1590],{},"It starts from ",[137,1588,1589],{},"router.getLocation()"," and updates when the router context emits location changes.",[127,1592,1593],{},[130,1594,1597],{"className":132,"code":1595,"filename":1596,"language":134,"meta":135,"style":135},"interface RouterLocation\u003CTMeta = unknown> {\n    path: string\n    params?: Record\u003Cstring, string | string[]>\n    query?: Record\u003Cstring, string | null | Array\u003Cstring | null>>\n    hash?: string\n    meta?: TMeta\n}\n","RouterLocation",[137,1598,1599,1617,1626,1652,1688,1696,1704],{"__ignoreMap":135},[140,1600,1601,1603,1605,1607,1609,1611,1613,1615],{"class":142,"line":143},[140,1602,124],{"class":146},[140,1604,250],{"class":149},[140,1606,180],{"class":153},[140,1608,537],{"class":149},[140,1610,540],{"class":164},[140,1612,543],{"class":183},[140,1614,546],{"class":153},[140,1616,154],{"class":153},[140,1618,1619,1622,1624],{"class":142,"line":157},[140,1620,1621],{"class":553},"    path",[140,1623,165],{"class":164},[140,1625,235],{"class":183},[140,1627,1628,1631,1633,1635,1637,1639,1641,1643,1645,1647,1650],{"class":142,"line":196},[140,1629,1630],{"class":553},"    params",[140,1632,557],{"class":164},[140,1634,594],{"class":149},[140,1636,180],{"class":153},[140,1638,599],{"class":183},[140,1640,602],{"class":153},[140,1642,605],{"class":183},[140,1644,577],{"class":164},[140,1646,605],{"class":183},[140,1648,1649],{"class":433},"[]",[140,1651,257],{"class":153},[140,1653,1654,1656,1658,1660,1662,1664,1666,1668,1670,1672,1674,1677,1679,1681,1683,1685],{"class":142,"line":211},[140,1655,589],{"class":553},[140,1657,557],{"class":164},[140,1659,594],{"class":149},[140,1661,180],{"class":153},[140,1663,599],{"class":183},[140,1665,602],{"class":153},[140,1667,605],{"class":183},[140,1669,577],{"class":164},[140,1671,615],{"class":183},[140,1673,577],{"class":164},[140,1675,1676],{"class":149}," Array",[140,1678,180],{"class":153},[140,1680,599],{"class":183},[140,1682,577],{"class":164},[140,1684,615],{"class":183},[140,1686,1687],{"class":153},">>\n",[140,1689,1690,1692,1694],{"class":142,"line":238},[140,1691,627],{"class":553},[140,1693,557],{"class":164},[140,1695,235],{"class":183},[140,1697,1698,1700,1702],{"class":142,"line":260},[140,1699,656],{"class":553},[140,1701,557],{"class":164},[140,1703,661],{"class":149},[140,1705,1706],{"class":142,"line":306},[140,1707,309],{"class":153},[315,1709,1710,1718],{},[318,1711,1712],{},[321,1713,1714,1716],{},[324,1715,675],{},[324,1717,678],{},[331,1719,1720,1730,1739,1748,1757],{},[321,1721,1722,1727],{},[336,1723,1724],{},[137,1725,1726],{},"path",[336,1728,1729],{},"The current pathname.",[321,1731,1732,1736],{},[336,1733,1734],{},[137,1735,172],{},[336,1737,1738],{},"Decoded params extracted from the current path.",[321,1740,1741,1745],{},[336,1742,1743],{},[137,1744,713],{},[336,1746,1747],{},"The current query object.",[321,1749,1750,1754],{},[336,1751,1752],{},[137,1753,723],{},[336,1755,1756],{},"The current hash value.",[321,1758,1759,1763],{},[336,1760,1761],{},[137,1762,758],{},[336,1764,1765],{},"Adapter-specific parsed location metadata.",[127,1767,1768,2015],{"sync":778},[130,1769,1771],{"className":388,"code":1770,"filename":62,"language":390,"meta":135,"style":135},"\u003Cscript setup lang=\"ts\">\nimport { useLocation } from '@ginjou\u002Fvue'\nimport { computed } from 'vue'\n\nconst location = useLocation()\n\nconst currentPage = computed(() => location.value?.query?.page)\nconst currentId = computed(() => location.value?.params?.id)\n\u003C\u002Fscript>\n\n\u003Ctemplate>\n    \u003Cdiv>\n        \u003Cp>Path: {{ location?.path }}\u003C\u002Fp>\n        \u003Cp>Page: {{ currentPage }}\u003C\u002Fp>\n        \u003Cp>ID: {{ currentId }}\u003C\u002Fp>\n    \u003C\u002Fdiv>\n\u003C\u002Ftemplate>\n",[137,1772,1773,1793,1812,1831,1835,1848,1852,1886,1918,1926,1930,1938,1947,1965,1982,1999,2007],{"__ignoreMap":135},[140,1774,1775,1777,1779,1781,1783,1785,1787,1789,1791],{"class":142,"line":143},[140,1776,180],{"class":153},[140,1778,400],{"class":399},[140,1780,404],{"class":403},[140,1782,407],{"class":403},[140,1784,410],{"class":153},[140,1786,414],{"class":413},[140,1788,134],{"class":417},[140,1790,414],{"class":413},[140,1792,257],{"class":153},[140,1794,1795,1797,1799,1802,1804,1806,1808,1810],{"class":142,"line":157},[140,1796,427],{"class":426},[140,1798,430],{"class":153},[140,1800,1801],{"class":433}," useLocation",[140,1803,437],{"class":153},[140,1805,440],{"class":426},[140,1807,443],{"class":413},[140,1809,446],{"class":417},[140,1811,449],{"class":413},[140,1813,1814,1816,1818,1821,1823,1825,1827,1829],{"class":142,"line":196},[140,1815,427],{"class":426},[140,1817,430],{"class":153},[140,1819,1820],{"class":433}," computed",[140,1822,437],{"class":153},[140,1824,440],{"class":426},[140,1826,443],{"class":413},[140,1828,390],{"class":417},[140,1830,449],{"class":413},[140,1832,1833],{"class":142,"line":211},[140,1834,475],{"emptyLinePlaceholder":474},[140,1836,1837,1839,1842,1844,1846],{"class":142,"line":238},[140,1838,831],{"class":146},[140,1840,1841],{"class":834}," location",[140,1843,540],{"class":164},[140,1845,1801],{"class":480},[140,1847,842],{"class":433},[140,1849,1850],{"class":142,"line":260},[140,1851,475],{"emptyLinePlaceholder":474},[140,1853,1854,1856,1859,1861,1863,1865,1867,1869,1871,1873,1876,1879,1881,1883],{"class":142,"line":306},[140,1855,831],{"class":146},[140,1857,1858],{"class":834}," currentPage",[140,1860,540],{"class":164},[140,1862,1820],{"class":480},[140,1864,484],{"class":433},[140,1866,857],{"class":153},[140,1868,190],{"class":146},[140,1870,1841],{"class":433},[140,1872,706],{"class":153},[140,1874,1875],{"class":433},"value",[140,1877,1878],{"class":153},"?.",[140,1880,713],{"class":433},[140,1882,1878],{"class":153},[140,1884,1885],{"class":433},"page)\n",[140,1887,1888,1890,1893,1895,1897,1899,1901,1903,1905,1907,1909,1911,1913,1915],{"class":142,"line":653},[140,1889,831],{"class":146},[140,1891,1892],{"class":834}," currentId",[140,1894,540],{"class":164},[140,1896,1820],{"class":480},[140,1898,484],{"class":433},[140,1900,857],{"class":153},[140,1902,190],{"class":146},[140,1904,1841],{"class":433},[140,1906,706],{"class":153},[140,1908,1875],{"class":433},[140,1910,1878],{"class":153},[140,1912,172],{"class":433},[140,1914,1878],{"class":153},[140,1916,1917],{"class":433},"id)\n",[140,1919,1920,1922,1924],{"class":142,"line":664},[140,1921,495],{"class":153},[140,1923,400],{"class":399},[140,1925,257],{"class":153},[140,1927,1928],{"class":142,"line":898},[140,1929,475],{"emptyLinePlaceholder":474},[140,1931,1932,1934,1936],{"class":142,"line":912},[140,1933,180],{"class":153},[140,1935,1402],{"class":399},[140,1937,257],{"class":153},[140,1939,1940,1942,1945],{"class":142,"line":929},[140,1941,1409],{"class":153},[140,1943,1944],{"class":399},"div",[140,1946,257],{"class":153},[140,1948,1949,1952,1954,1956,1959,1961,1963],{"class":142,"line":935},[140,1950,1951],{"class":153},"        \u003C",[140,1953,107],{"class":399},[140,1955,546],{"class":153},[140,1957,1958],{"class":433},"Path: {{ location?.path }}",[140,1960,495],{"class":153},[140,1962,107],{"class":399},[140,1964,257],{"class":153},[140,1966,1967,1969,1971,1973,1976,1978,1980],{"class":142,"line":949},[140,1968,1951],{"class":153},[140,1970,107],{"class":399},[140,1972,546],{"class":153},[140,1974,1975],{"class":433},"Page: {{ currentPage }}",[140,1977,495],{"class":153},[140,1979,107],{"class":399},[140,1981,257],{"class":153},[140,1983,1984,1986,1988,1990,1993,1995,1997],{"class":142,"line":958},[140,1985,1951],{"class":153},[140,1987,107],{"class":399},[140,1989,546],{"class":153},[140,1991,1992],{"class":433},"ID: {{ currentId }}",[140,1994,495],{"class":153},[140,1996,107],{"class":399},[140,1998,257],{"class":153},[140,2000,2001,2003,2005],{"class":142,"line":963},[140,2002,1447],{"class":153},[140,2004,1944],{"class":399},[140,2006,257],{"class":153},[140,2008,2009,2011,2013],{"class":142,"line":968},[140,2010,495],{"class":153},[140,2012,1402],{"class":399},[140,2014,257],{"class":153},[130,2016,2018],{"className":1067,"code":2017,"filename":70,"language":1069,"meta":135,"style":135},"\u003Cscript lang=\"ts\">\nimport { useLocation } from '@ginjou\u002Fsvelte'\n\nconst location = useLocation()\n\nconst currentPage = $derived(location.value?.query?.page)\nconst currentId = $derived(location.value?.params?.id)\n\u003C\u002Fscript>\n\n\u003Cdiv>\n    \u003Cp>Path: {location.value?.path}\u003C\u002Fp>\n    \u003Cp>Page: {currentPage}\u003C\u002Fp>\n    \u003Cp>ID: {currentId}\u003C\u002Fp>\n\u003C\u002Fdiv>\n",[137,2019,2020,2038,2056,2060,2072,2076,2105,2131,2139,2143,2151,2182,2206,2230],{"__ignoreMap":135},[140,2021,2022,2024,2026,2028,2030,2032,2034,2036],{"class":142,"line":143},[140,2023,180],{"class":153},[140,2025,400],{"class":399},[140,2027,407],{"class":403},[140,2029,410],{"class":153},[140,2031,414],{"class":413},[140,2033,134],{"class":417},[140,2035,414],{"class":413},[140,2037,257],{"class":153},[140,2039,2040,2042,2044,2046,2048,2050,2052,2054],{"class":142,"line":157},[140,2041,427],{"class":426},[140,2043,430],{"class":153},[140,2045,1801],{"class":433},[140,2047,437],{"class":153},[140,2049,440],{"class":426},[140,2051,443],{"class":413},[140,2053,1106],{"class":417},[140,2055,449],{"class":413},[140,2057,2058],{"class":142,"line":196},[140,2059,475],{"emptyLinePlaceholder":474},[140,2061,2062,2064,2066,2068,2070],{"class":142,"line":211},[140,2063,831],{"class":146},[140,2065,1841],{"class":834},[140,2067,540],{"class":164},[140,2069,1801],{"class":480},[140,2071,842],{"class":433},[140,2073,2074],{"class":142,"line":238},[140,2075,475],{"emptyLinePlaceholder":474},[140,2077,2078,2080,2082,2084,2087,2090,2093,2095,2097,2099,2101,2103],{"class":142,"line":260},[140,2079,831],{"class":146},[140,2081,1858],{"class":834},[140,2083,540],{"class":164},[140,2085,2086],{"class":153}," $",[140,2088,2089],{"class":480},"derived",[140,2091,2092],{"class":433},"(location",[140,2094,706],{"class":153},[140,2096,1875],{"class":433},[140,2098,1878],{"class":153},[140,2100,713],{"class":433},[140,2102,1878],{"class":153},[140,2104,1885],{"class":433},[140,2106,2107,2109,2111,2113,2115,2117,2119,2121,2123,2125,2127,2129],{"class":142,"line":306},[140,2108,831],{"class":146},[140,2110,1892],{"class":834},[140,2112,540],{"class":164},[140,2114,2086],{"class":153},[140,2116,2089],{"class":480},[140,2118,2092],{"class":433},[140,2120,706],{"class":153},[140,2122,1875],{"class":433},[140,2124,1878],{"class":153},[140,2126,172],{"class":433},[140,2128,1878],{"class":153},[140,2130,1917],{"class":433},[140,2132,2133,2135,2137],{"class":142,"line":653},[140,2134,495],{"class":153},[140,2136,400],{"class":399},[140,2138,257],{"class":153},[140,2140,2141],{"class":142,"line":664},[140,2142,475],{"emptyLinePlaceholder":474},[140,2144,2145,2147,2149],{"class":142,"line":898},[140,2146,180],{"class":153},[140,2148,1944],{"class":399},[140,2150,257],{"class":153},[140,2152,2153,2155,2157,2159,2162,2164,2166,2168,2170,2172,2174,2176,2178,2180],{"class":142,"line":912},[140,2154,1409],{"class":153},[140,2156,107],{"class":399},[140,2158,546],{"class":153},[140,2160,2161],{"class":433},"Path: ",[140,2163,1553],{"class":1552},[140,2165,277],{"class":433},[140,2167,706],{"class":153},[140,2169,1875],{"class":433},[140,2171,1878],{"class":153},[140,2173,1726],{"class":433},[140,2175,1558],{"class":1552},[140,2177,495],{"class":153},[140,2179,107],{"class":399},[140,2181,257],{"class":153},[140,2183,2184,2186,2188,2190,2193,2195,2198,2200,2202,2204],{"class":142,"line":929},[140,2185,1409],{"class":153},[140,2187,107],{"class":399},[140,2189,546],{"class":153},[140,2191,2192],{"class":433},"Page: ",[140,2194,1553],{"class":1552},[140,2196,2197],{"class":433},"currentPage",[140,2199,1558],{"class":1552},[140,2201,495],{"class":153},[140,2203,107],{"class":399},[140,2205,257],{"class":153},[140,2207,2208,2210,2212,2214,2217,2219,2222,2224,2226,2228],{"class":142,"line":935},[140,2209,1409],{"class":153},[140,2211,107],{"class":399},[140,2213,546],{"class":153},[140,2215,2216],{"class":433},"ID: ",[140,2218,1553],{"class":1552},[140,2220,2221],{"class":433},"currentId",[140,2223,1558],{"class":1552},[140,2225,495],{"class":153},[140,2227,107],{"class":399},[140,2229,257],{"class":153},[140,2231,2232,2234,2236],{"class":142,"line":949},[140,2233,495],{"class":153},[140,2235,1944],{"class":399},[140,2237,257],{"class":153},[114,2239,2241],{"id":2240},"resolve-paths","Resolve Paths",[107,2243,2244,2247],{},[137,2245,2246],{},"useResolvePath()"," turns router params into a final path string.",[107,2249,2250,2251,2253],{},"It uses the same input shape as ",[137,2252,508],{},", but returns the resolved path instead of navigating.",[107,2255,2256,2257,2260],{},"This is useful for ",[137,2258,2259],{},"href"," values, custom links, previews, or anywhere else you need the final string before navigation.",[127,2262,2263,2587],{"sync":778},[130,2264,2266],{"className":388,"code":2265,"filename":62,"language":390,"meta":135,"style":135},"\u003Cscript setup lang=\"ts\">\nimport { useResolvePath } from '@ginjou\u002Fvue'\nimport { computed } from 'vue'\n\nconst resolvePath = useResolvePath()\n\nconst postsHref = computed(() => resolvePath({\n    to: '\u002Fposts',\n    query: {\n        page: 2,\n    },\n}))\n\nconst showHref = computed(() => resolvePath({\n    meta: {\n        name: 'post-show',\n        params: {\n            id: 42,\n        },\n    },\n}))\n\u003C\u002Fscript>\n\n\u003Ctemplate>\n    \u003Ca :href=\"postsHref\">Posts\u003C\u002Fa>\n    \u003Ca :href=\"showHref\">Open Post\u003C\u002Fa>\n\u003C\u002Ftemplate>\n",[137,2267,2268,2288,2307,2325,2329,2342,2346,2369,2383,2391,2402,2407,2414,2418,2441,2449,2464,2473,2485,2489,2493,2499,2507,2511,2519,2549,2578],{"__ignoreMap":135},[140,2269,2270,2272,2274,2276,2278,2280,2282,2284,2286],{"class":142,"line":143},[140,2271,180],{"class":153},[140,2273,400],{"class":399},[140,2275,404],{"class":403},[140,2277,407],{"class":403},[140,2279,410],{"class":153},[140,2281,414],{"class":413},[140,2283,134],{"class":417},[140,2285,414],{"class":413},[140,2287,257],{"class":153},[140,2289,2290,2292,2294,2297,2299,2301,2303,2305],{"class":142,"line":157},[140,2291,427],{"class":426},[140,2293,430],{"class":153},[140,2295,2296],{"class":433}," useResolvePath",[140,2298,437],{"class":153},[140,2300,440],{"class":426},[140,2302,443],{"class":413},[140,2304,446],{"class":417},[140,2306,449],{"class":413},[140,2308,2309,2311,2313,2315,2317,2319,2321,2323],{"class":142,"line":196},[140,2310,427],{"class":426},[140,2312,430],{"class":153},[140,2314,1820],{"class":433},[140,2316,437],{"class":153},[140,2318,440],{"class":426},[140,2320,443],{"class":413},[140,2322,390],{"class":417},[140,2324,449],{"class":413},[140,2326,2327],{"class":142,"line":211},[140,2328,475],{"emptyLinePlaceholder":474},[140,2330,2331,2333,2336,2338,2340],{"class":142,"line":238},[140,2332,831],{"class":146},[140,2334,2335],{"class":834}," resolvePath",[140,2337,540],{"class":164},[140,2339,2296],{"class":480},[140,2341,842],{"class":433},[140,2343,2344],{"class":142,"line":260},[140,2345,475],{"emptyLinePlaceholder":474},[140,2347,2348,2350,2353,2355,2357,2359,2361,2363,2365,2367],{"class":142,"line":306},[140,2349,831],{"class":146},[140,2351,2352],{"class":834}," postsHref",[140,2354,540],{"class":164},[140,2356,1820],{"class":480},[140,2358,484],{"class":433},[140,2360,857],{"class":153},[140,2362,190],{"class":146},[140,2364,2335],{"class":480},[140,2366,484],{"class":433},[140,2368,869],{"class":153},[140,2370,2371,2373,2375,2377,2379,2381],{"class":142,"line":653},[140,2372,554],{"class":866},[140,2374,165],{"class":153},[140,2376,443],{"class":413},[140,2378,881],{"class":417},[140,2380,574],{"class":413},[140,2382,886],{"class":153},[140,2384,2385,2387,2389],{"class":142,"line":664},[140,2386,589],{"class":866},[140,2388,165],{"class":153},[140,2390,154],{"class":153},[140,2392,2393,2396,2398,2400],{"class":142,"line":898},[140,2394,2395],{"class":866},"        page",[140,2397,165],{"class":153},[140,2399,907],{"class":906},[140,2401,886],{"class":153},[140,2403,2404],{"class":142,"line":912},[140,2405,2406],{"class":153},"    },\n",[140,2408,2409,2411],{"class":142,"line":929},[140,2410,1558],{"class":153},[140,2412,2413],{"class":433},"))\n",[140,2415,2416],{"class":142,"line":935},[140,2417,475],{"emptyLinePlaceholder":474},[140,2419,2420,2422,2425,2427,2429,2431,2433,2435,2437,2439],{"class":142,"line":949},[140,2421,831],{"class":146},[140,2423,2424],{"class":834}," showHref",[140,2426,540],{"class":164},[140,2428,1820],{"class":480},[140,2430,484],{"class":433},[140,2432,857],{"class":153},[140,2434,190],{"class":146},[140,2436,2335],{"class":480},[140,2438,484],{"class":433},[140,2440,869],{"class":153},[140,2442,2443,2445,2447],{"class":142,"line":958},[140,2444,656],{"class":866},[140,2446,165],{"class":153},[140,2448,154],{"class":153},[140,2450,2451,2454,2456,2458,2460,2462],{"class":142,"line":963},[140,2452,2453],{"class":866},"        name",[140,2455,165],{"class":153},[140,2457,443],{"class":413},[140,2459,1018],{"class":417},[140,2461,574],{"class":413},[140,2463,886],{"class":153},[140,2465,2466,2469,2471],{"class":142,"line":968},[140,2467,2468],{"class":866},"        params",[140,2470,165],{"class":153},[140,2472,154],{"class":153},[140,2474,2475,2478,2480,2483],{"class":142,"line":989},[140,2476,2477],{"class":866},"            id",[140,2479,165],{"class":153},[140,2481,2482],{"class":906}," 42",[140,2484,886],{"class":153},[140,2486,2487],{"class":142,"line":998},[140,2488,932],{"class":153},[140,2490,2491],{"class":142,"line":1008},[140,2492,2406],{"class":153},[140,2494,2495,2497],{"class":142,"line":1025},[140,2496,1558],{"class":153},[140,2498,2413],{"class":433},[140,2500,2501,2503,2505],{"class":142,"line":1041},[140,2502,495],{"class":153},[140,2504,400],{"class":399},[140,2506,257],{"class":153},[140,2508,2509],{"class":142,"line":1046},[140,2510,475],{"emptyLinePlaceholder":474},[140,2512,2513,2515,2517],{"class":142,"line":1053},[140,2514,180],{"class":153},[140,2516,1402],{"class":399},[140,2518,257],{"class":153},[140,2520,2521,2523,2526,2529,2531,2533,2536,2538,2540,2543,2545,2547],{"class":142,"line":1058},[140,2522,1409],{"class":153},[140,2524,2525],{"class":399},"a",[140,2527,2528],{"class":403}," :href",[140,2530,410],{"class":153},[140,2532,414],{"class":413},[140,2534,2535],{"class":417},"postsHref",[140,2537,414],{"class":413},[140,2539,546],{"class":153},[140,2541,2542],{"class":433},"Posts",[140,2544,495],{"class":153},[140,2546,2525],{"class":399},[140,2548,257],{"class":153},[140,2550,2552,2554,2556,2558,2560,2562,2565,2567,2569,2572,2574,2576],{"class":142,"line":2551},26,[140,2553,1409],{"class":153},[140,2555,2525],{"class":399},[140,2557,2528],{"class":403},[140,2559,410],{"class":153},[140,2561,414],{"class":413},[140,2563,2564],{"class":417},"showHref",[140,2566,414],{"class":413},[140,2568,546],{"class":153},[140,2570,2571],{"class":433},"Open Post",[140,2573,495],{"class":153},[140,2575,2525],{"class":399},[140,2577,257],{"class":153},[140,2579,2581,2583,2585],{"class":142,"line":2580},27,[140,2582,495],{"class":153},[140,2584,1402],{"class":399},[140,2586,257],{"class":153},[130,2588,2590],{"className":1067,"code":2589,"filename":70,"language":1069,"meta":135,"style":135},"\u003Cscript lang=\"ts\">\nimport { useResolvePath } from '@ginjou\u002Fsvelte'\n\nconst resolvePath = useResolvePath()\n\nconst postsHref = $derived(resolvePath({\n    to: '\u002Fposts',\n    query: {\n        page: 2,\n    },\n}))\n\nconst showHref = $derived(resolvePath({\n    meta: {\n        name: 'post-show',\n        params: {\n            id: 42,\n        },\n    },\n}))\n\u003C\u002Fscript>\n\n\u003Ca href={postsHref}>Posts\u003C\u002Fa>\n\u003Ca href={showHref}>Open Post\u003C\u002Fa>\n",[137,2591,2592,2610,2628,2632,2644,2648,2669,2683,2691,2701,2705,2711,2715,2735,2743,2757,2765,2775,2779,2783,2789,2797,2801,2828],{"__ignoreMap":135},[140,2593,2594,2596,2598,2600,2602,2604,2606,2608],{"class":142,"line":143},[140,2595,180],{"class":153},[140,2597,400],{"class":399},[140,2599,407],{"class":403},[140,2601,410],{"class":153},[140,2603,414],{"class":413},[140,2605,134],{"class":417},[140,2607,414],{"class":413},[140,2609,257],{"class":153},[140,2611,2612,2614,2616,2618,2620,2622,2624,2626],{"class":142,"line":157},[140,2613,427],{"class":426},[140,2615,430],{"class":153},[140,2617,2296],{"class":433},[140,2619,437],{"class":153},[140,2621,440],{"class":426},[140,2623,443],{"class":413},[140,2625,1106],{"class":417},[140,2627,449],{"class":413},[140,2629,2630],{"class":142,"line":196},[140,2631,475],{"emptyLinePlaceholder":474},[140,2633,2634,2636,2638,2640,2642],{"class":142,"line":211},[140,2635,831],{"class":146},[140,2637,2335],{"class":834},[140,2639,540],{"class":164},[140,2641,2296],{"class":480},[140,2643,842],{"class":433},[140,2645,2646],{"class":142,"line":238},[140,2647,475],{"emptyLinePlaceholder":474},[140,2649,2650,2652,2654,2656,2658,2660,2662,2665,2667],{"class":142,"line":260},[140,2651,831],{"class":146},[140,2653,2352],{"class":834},[140,2655,540],{"class":164},[140,2657,2086],{"class":153},[140,2659,2089],{"class":480},[140,2661,484],{"class":433},[140,2663,2664],{"class":480},"resolvePath",[140,2666,484],{"class":433},[140,2668,869],{"class":153},[140,2670,2671,2673,2675,2677,2679,2681],{"class":142,"line":306},[140,2672,554],{"class":866},[140,2674,165],{"class":153},[140,2676,443],{"class":413},[140,2678,881],{"class":417},[140,2680,574],{"class":413},[140,2682,886],{"class":153},[140,2684,2685,2687,2689],{"class":142,"line":653},[140,2686,589],{"class":866},[140,2688,165],{"class":153},[140,2690,154],{"class":153},[140,2692,2693,2695,2697,2699],{"class":142,"line":664},[140,2694,2395],{"class":866},[140,2696,165],{"class":153},[140,2698,907],{"class":906},[140,2700,886],{"class":153},[140,2702,2703],{"class":142,"line":898},[140,2704,2406],{"class":153},[140,2706,2707,2709],{"class":142,"line":912},[140,2708,1558],{"class":153},[140,2710,2413],{"class":433},[140,2712,2713],{"class":142,"line":929},[140,2714,475],{"emptyLinePlaceholder":474},[140,2716,2717,2719,2721,2723,2725,2727,2729,2731,2733],{"class":142,"line":935},[140,2718,831],{"class":146},[140,2720,2424],{"class":834},[140,2722,540],{"class":164},[140,2724,2086],{"class":153},[140,2726,2089],{"class":480},[140,2728,484],{"class":433},[140,2730,2664],{"class":480},[140,2732,484],{"class":433},[140,2734,869],{"class":153},[140,2736,2737,2739,2741],{"class":142,"line":949},[140,2738,656],{"class":866},[140,2740,165],{"class":153},[140,2742,154],{"class":153},[140,2744,2745,2747,2749,2751,2753,2755],{"class":142,"line":958},[140,2746,2453],{"class":866},[140,2748,165],{"class":153},[140,2750,443],{"class":413},[140,2752,1018],{"class":417},[140,2754,574],{"class":413},[140,2756,886],{"class":153},[140,2758,2759,2761,2763],{"class":142,"line":963},[140,2760,2468],{"class":866},[140,2762,165],{"class":153},[140,2764,154],{"class":153},[140,2766,2767,2769,2771,2773],{"class":142,"line":968},[140,2768,2477],{"class":866},[140,2770,165],{"class":153},[140,2772,2482],{"class":906},[140,2774,886],{"class":153},[140,2776,2777],{"class":142,"line":989},[140,2778,932],{"class":153},[140,2780,2781],{"class":142,"line":998},[140,2782,2406],{"class":153},[140,2784,2785,2787],{"class":142,"line":1008},[140,2786,1558],{"class":153},[140,2788,2413],{"class":433},[140,2790,2791,2793,2795],{"class":142,"line":1025},[140,2792,495],{"class":153},[140,2794,400],{"class":399},[140,2796,257],{"class":153},[140,2798,2799],{"class":142,"line":1041},[140,2800,475],{"emptyLinePlaceholder":474},[140,2802,2803,2805,2807,2810,2812,2814,2816,2818,2820,2822,2824,2826],{"class":142,"line":1046},[140,2804,180],{"class":153},[140,2806,2525],{"class":399},[140,2808,2809],{"class":403}," href",[140,2811,410],{"class":153},[140,2813,1553],{"class":1552},[140,2815,2535],{"class":433},[140,2817,1558],{"class":1552},[140,2819,546],{"class":153},[140,2821,2542],{"class":433},[140,2823,495],{"class":153},[140,2825,2525],{"class":399},[140,2827,257],{"class":153},[140,2829,2830,2832,2834,2836,2838,2840,2842,2844,2846,2848,2850,2852],{"class":142,"line":1053},[140,2831,180],{"class":153},[140,2833,2525],{"class":399},[140,2835,2809],{"class":403},[140,2837,410],{"class":153},[140,2839,1553],{"class":1552},[140,2841,2564],{"class":433},[140,2843,1558],{"class":1552},[140,2845,546],{"class":153},[140,2847,2571],{"class":433},[140,2849,495],{"class":153},[140,2851,2525],{"class":399},[140,2853,257],{"class":153},[107,2855,2856,2857,772,2859,2861],{},"Unlike ",[137,2858,508],{},[137,2860,1311],{},", this helper throws when no router context is available.",[114,2863,2865],{"id":2864},"navigate-by-resource-intent","Navigate by Resource Intent",[107,2867,2868,2871],{},[137,2869,2870],{},"useNavigateTo()"," combines router context with resource context.",[107,2873,2874,2875,706],{},"Instead of passing a raw path every time, you can navigate by resource action and record id. If you pass plain router params, it falls back to the same low-level navigation flow as ",[137,2876,508],{},[315,2878,2879,2888],{},[318,2880,2881],{},[321,2882,2883,2886],{},[324,2884,2885],{},"Input",[324,2887,678],{},[331,2889,2890,2899,2909,2918,2928,2937],{},[321,2891,2892,2896],{},[336,2893,2894],{},[137,2895,515],{},[336,2897,2898],{},"Delegate directly to low-level router navigation.",[321,2900,2901,2906],{},[336,2902,2903],{},[137,2904,2905],{},"{ action: 'list', resource?, params? }",[336,2907,2908],{},"Build a resource path that does not need an id.",[321,2910,2911,2916],{},[336,2912,2913],{},[137,2914,2915],{},"{ action: 'create', resource?, params? }",[336,2917,2908],{},[321,2919,2920,2925],{},[336,2921,2922],{},[137,2923,2924],{},"{ action: 'show', resource?, id, params? }",[336,2926,2927],{},"Build a resource path that needs an id.",[321,2929,2930,2935],{},[336,2931,2932],{},[137,2933,2934],{},"{ action: 'edit', resource?, id, params? }",[336,2936,2927],{},[321,2938,2939,2944],{},[336,2940,2941],{},[137,2942,2943],{},"false",[336,2945,2946],{},"Do nothing.",[107,2948,2949,2950,2953],{},"When you create the helper with ",[137,2951,2952],{},"resource",", later calls can omit the resource name.",[127,2955,2956,3254],{"sync":778},[130,2957,2959],{"className":388,"code":2958,"filename":62,"language":390,"meta":135,"style":135},"\u003Cscript setup lang=\"ts\">\nimport { ResourceActionType } from '@ginjou\u002Fcore'\nimport { useNavigateTo } from '@ginjou\u002Fvue'\n\nconst navigateTo = useNavigateTo({\n    resource: 'posts',\n})\n\nfunction openCreate() {\n    navigateTo({\n        action: ResourceActionType.Create,\n    })\n}\n\nfunction openPost(id: number) {\n    navigateTo({\n        action: ResourceActionType.Show,\n        id,\n    })\n}\n\nfunction cancel() {\n    navigateTo({\n        action: ResourceActionType.List,\n        params: {\n            page: 1,\n        },\n    })\n}\n\u003C\u002Fscript>\n",[137,2960,2961,2981,3001,3020,3024,3039,3055,3061,3065,3076,3085,3101,3107,3111,3115,3133,3141,3156,3163,3169,3173,3177,3188,3196,3210,3218,3229,3233,3240,3245],{"__ignoreMap":135},[140,2962,2963,2965,2967,2969,2971,2973,2975,2977,2979],{"class":142,"line":143},[140,2964,180],{"class":153},[140,2966,400],{"class":399},[140,2968,404],{"class":403},[140,2970,407],{"class":403},[140,2972,410],{"class":153},[140,2974,414],{"class":413},[140,2976,134],{"class":417},[140,2978,414],{"class":413},[140,2980,257],{"class":153},[140,2982,2983,2985,2987,2990,2992,2994,2996,2999],{"class":142,"line":157},[140,2984,427],{"class":426},[140,2986,430],{"class":153},[140,2988,2989],{"class":433}," ResourceActionType",[140,2991,437],{"class":153},[140,2993,440],{"class":426},[140,2995,443],{"class":413},[140,2997,2998],{"class":417},"@ginjou\u002Fcore",[140,3000,449],{"class":413},[140,3002,3003,3005,3007,3010,3012,3014,3016,3018],{"class":142,"line":196},[140,3004,427],{"class":426},[140,3006,430],{"class":153},[140,3008,3009],{"class":433}," useNavigateTo",[140,3011,437],{"class":153},[140,3013,440],{"class":426},[140,3015,443],{"class":413},[140,3017,446],{"class":417},[140,3019,449],{"class":413},[140,3021,3022],{"class":142,"line":211},[140,3023,475],{"emptyLinePlaceholder":474},[140,3025,3026,3028,3031,3033,3035,3037],{"class":142,"line":238},[140,3027,831],{"class":146},[140,3029,3030],{"class":834}," navigateTo",[140,3032,540],{"class":164},[140,3034,3009],{"class":480},[140,3036,484],{"class":433},[140,3038,869],{"class":153},[140,3040,3041,3044,3046,3048,3051,3053],{"class":142,"line":260},[140,3042,3043],{"class":866},"    resource",[140,3045,165],{"class":153},[140,3047,443],{"class":413},[140,3049,3050],{"class":417},"posts",[140,3052,574],{"class":413},[140,3054,886],{"class":153},[140,3056,3057,3059],{"class":142,"line":306},[140,3058,1558],{"class":153},[140,3060,955],{"class":433},[140,3062,3063],{"class":142,"line":653},[140,3064,475],{"emptyLinePlaceholder":474},[140,3066,3067,3069,3072,3074],{"class":142,"line":664},[140,3068,851],{"class":146},[140,3070,3071],{"class":480}," openCreate",[140,3073,857],{"class":153},[140,3075,154],{"class":153},[140,3077,3078,3081,3083],{"class":142,"line":898},[140,3079,3080],{"class":480},"    navigateTo",[140,3082,484],{"class":866},[140,3084,869],{"class":153},[140,3086,3087,3090,3092,3094,3096,3099],{"class":142,"line":912},[140,3088,3089],{"class":866},"        action",[140,3091,165],{"class":153},[140,3093,2989],{"class":433},[140,3095,706],{"class":153},[140,3097,3098],{"class":433},"Create",[140,3100,886],{"class":153},[140,3102,3103,3105],{"class":142,"line":929},[140,3104,952],{"class":153},[140,3106,955],{"class":866},[140,3108,3109],{"class":142,"line":935},[140,3110,309],{"class":153},[140,3112,3113],{"class":142,"line":949},[140,3114,475],{"emptyLinePlaceholder":474},[140,3116,3117,3119,3121,3123,3125,3127,3129,3131],{"class":142,"line":958},[140,3118,851],{"class":146},[140,3120,973],{"class":480},[140,3122,484],{"class":153},[140,3124,978],{"class":171},[140,3126,165],{"class":164},[140,3128,610],{"class":183},[140,3130,295],{"class":153},[140,3132,154],{"class":153},[140,3134,3135,3137,3139],{"class":142,"line":963},[140,3136,3080],{"class":480},[140,3138,484],{"class":866},[140,3140,869],{"class":153},[140,3142,3143,3145,3147,3149,3151,3154],{"class":142,"line":968},[140,3144,3089],{"class":866},[140,3146,165],{"class":153},[140,3148,2989],{"class":433},[140,3150,706],{"class":153},[140,3152,3153],{"class":433},"Show",[140,3155,886],{"class":153},[140,3157,3158,3161],{"class":142,"line":989},[140,3159,3160],{"class":433},"        id",[140,3162,886],{"class":153},[140,3164,3165,3167],{"class":142,"line":998},[140,3166,952],{"class":153},[140,3168,955],{"class":866},[140,3170,3171],{"class":142,"line":1008},[140,3172,309],{"class":153},[140,3174,3175],{"class":142,"line":1025},[140,3176,475],{"emptyLinePlaceholder":474},[140,3178,3179,3181,3184,3186],{"class":142,"line":1041},[140,3180,851],{"class":146},[140,3182,3183],{"class":480}," cancel",[140,3185,857],{"class":153},[140,3187,154],{"class":153},[140,3189,3190,3192,3194],{"class":142,"line":1046},[140,3191,3080],{"class":480},[140,3193,484],{"class":866},[140,3195,869],{"class":153},[140,3197,3198,3200,3202,3204,3206,3208],{"class":142,"line":1053},[140,3199,3089],{"class":866},[140,3201,165],{"class":153},[140,3203,2989],{"class":433},[140,3205,706],{"class":153},[140,3207,23],{"class":433},[140,3209,886],{"class":153},[140,3211,3212,3214,3216],{"class":142,"line":1058},[140,3213,2468],{"class":866},[140,3215,165],{"class":153},[140,3217,154],{"class":153},[140,3219,3220,3222,3224,3227],{"class":142,"line":2551},[140,3221,901],{"class":866},[140,3223,165],{"class":153},[140,3225,3226],{"class":906}," 1",[140,3228,886],{"class":153},[140,3230,3231],{"class":142,"line":2580},[140,3232,932],{"class":153},[140,3234,3236,3238],{"class":142,"line":3235},28,[140,3237,952],{"class":153},[140,3239,955],{"class":866},[140,3241,3243],{"class":142,"line":3242},29,[140,3244,309],{"class":153},[140,3246,3248,3250,3252],{"class":142,"line":3247},30,[140,3249,495],{"class":153},[140,3251,400],{"class":399},[140,3253,257],{"class":153},[130,3255,3257],{"className":1067,"code":3256,"filename":70,"language":1069,"meta":135,"style":135},"\u003Cscript lang=\"ts\">\nimport { ResourceActionType } from '@ginjou\u002Fcore'\nimport { useNavigateTo } from '@ginjou\u002Fsvelte'\n\nconst navigateTo = useNavigateTo({\n    resource: 'posts',\n})\n\nfunction openCreate() {\n    navigateTo({\n        action: ResourceActionType.Create,\n    })\n}\n\nfunction openPost(id: number) {\n    navigateTo({\n        action: ResourceActionType.Show,\n        id,\n    })\n}\n\nfunction cancel() {\n    navigateTo({\n        action: ResourceActionType.List,\n        params: {\n            page: 1,\n        },\n    })\n}\n\u003C\u002Fscript>\n",[137,3258,3259,3277,3295,3313,3317,3331,3345,3351,3355,3365,3373,3387,3393,3397,3401,3419,3427,3441,3447,3453,3457,3461,3471,3479,3493,3501,3511,3515,3521,3525],{"__ignoreMap":135},[140,3260,3261,3263,3265,3267,3269,3271,3273,3275],{"class":142,"line":143},[140,3262,180],{"class":153},[140,3264,400],{"class":399},[140,3266,407],{"class":403},[140,3268,410],{"class":153},[140,3270,414],{"class":413},[140,3272,134],{"class":417},[140,3274,414],{"class":413},[140,3276,257],{"class":153},[140,3278,3279,3281,3283,3285,3287,3289,3291,3293],{"class":142,"line":157},[140,3280,427],{"class":426},[140,3282,430],{"class":153},[140,3284,2989],{"class":433},[140,3286,437],{"class":153},[140,3288,440],{"class":426},[140,3290,443],{"class":413},[140,3292,2998],{"class":417},[140,3294,449],{"class":413},[140,3296,3297,3299,3301,3303,3305,3307,3309,3311],{"class":142,"line":196},[140,3298,427],{"class":426},[140,3300,430],{"class":153},[140,3302,3009],{"class":433},[140,3304,437],{"class":153},[140,3306,440],{"class":426},[140,3308,443],{"class":413},[140,3310,1106],{"class":417},[140,3312,449],{"class":413},[140,3314,3315],{"class":142,"line":211},[140,3316,475],{"emptyLinePlaceholder":474},[140,3318,3319,3321,3323,3325,3327,3329],{"class":142,"line":238},[140,3320,831],{"class":146},[140,3322,3030],{"class":834},[140,3324,540],{"class":164},[140,3326,3009],{"class":480},[140,3328,484],{"class":433},[140,3330,869],{"class":153},[140,3332,3333,3335,3337,3339,3341,3343],{"class":142,"line":260},[140,3334,3043],{"class":866},[140,3336,165],{"class":153},[140,3338,443],{"class":413},[140,3340,3050],{"class":417},[140,3342,574],{"class":413},[140,3344,886],{"class":153},[140,3346,3347,3349],{"class":142,"line":306},[140,3348,1558],{"class":153},[140,3350,955],{"class":433},[140,3352,3353],{"class":142,"line":653},[140,3354,475],{"emptyLinePlaceholder":474},[140,3356,3357,3359,3361,3363],{"class":142,"line":664},[140,3358,851],{"class":146},[140,3360,3071],{"class":480},[140,3362,857],{"class":153},[140,3364,154],{"class":153},[140,3366,3367,3369,3371],{"class":142,"line":898},[140,3368,3080],{"class":480},[140,3370,484],{"class":866},[140,3372,869],{"class":153},[140,3374,3375,3377,3379,3381,3383,3385],{"class":142,"line":912},[140,3376,3089],{"class":866},[140,3378,165],{"class":153},[140,3380,2989],{"class":433},[140,3382,706],{"class":153},[140,3384,3098],{"class":433},[140,3386,886],{"class":153},[140,3388,3389,3391],{"class":142,"line":929},[140,3390,952],{"class":153},[140,3392,955],{"class":866},[140,3394,3395],{"class":142,"line":935},[140,3396,309],{"class":153},[140,3398,3399],{"class":142,"line":949},[140,3400,475],{"emptyLinePlaceholder":474},[140,3402,3403,3405,3407,3409,3411,3413,3415,3417],{"class":142,"line":958},[140,3404,851],{"class":146},[140,3406,973],{"class":480},[140,3408,484],{"class":153},[140,3410,978],{"class":171},[140,3412,165],{"class":164},[140,3414,610],{"class":183},[140,3416,295],{"class":153},[140,3418,154],{"class":153},[140,3420,3421,3423,3425],{"class":142,"line":963},[140,3422,3080],{"class":480},[140,3424,484],{"class":866},[140,3426,869],{"class":153},[140,3428,3429,3431,3433,3435,3437,3439],{"class":142,"line":968},[140,3430,3089],{"class":866},[140,3432,165],{"class":153},[140,3434,2989],{"class":433},[140,3436,706],{"class":153},[140,3438,3153],{"class":433},[140,3440,886],{"class":153},[140,3442,3443,3445],{"class":142,"line":989},[140,3444,3160],{"class":433},[140,3446,886],{"class":153},[140,3448,3449,3451],{"class":142,"line":998},[140,3450,952],{"class":153},[140,3452,955],{"class":866},[140,3454,3455],{"class":142,"line":1008},[140,3456,309],{"class":153},[140,3458,3459],{"class":142,"line":1025},[140,3460,475],{"emptyLinePlaceholder":474},[140,3462,3463,3465,3467,3469],{"class":142,"line":1041},[140,3464,851],{"class":146},[140,3466,3183],{"class":480},[140,3468,857],{"class":153},[140,3470,154],{"class":153},[140,3472,3473,3475,3477],{"class":142,"line":1046},[140,3474,3080],{"class":480},[140,3476,484],{"class":866},[140,3478,869],{"class":153},[140,3480,3481,3483,3485,3487,3489,3491],{"class":142,"line":1053},[140,3482,3089],{"class":866},[140,3484,165],{"class":153},[140,3486,2989],{"class":433},[140,3488,706],{"class":153},[140,3490,23],{"class":433},[140,3492,886],{"class":153},[140,3494,3495,3497,3499],{"class":142,"line":1058},[140,3496,2468],{"class":866},[140,3498,165],{"class":153},[140,3500,154],{"class":153},[140,3502,3503,3505,3507,3509],{"class":142,"line":2551},[140,3504,901],{"class":866},[140,3506,165],{"class":153},[140,3508,3226],{"class":906},[140,3510,886],{"class":153},[140,3512,3513],{"class":142,"line":2580},[140,3514,932],{"class":153},[140,3516,3517,3519],{"class":142,"line":3235},[140,3518,952],{"class":153},[140,3520,955],{"class":866},[140,3522,3523],{"class":142,"line":3242},[140,3524,309],{"class":153},[140,3526,3527,3529,3531],{"class":142,"line":3247},[140,3528,495],{"class":153},[140,3530,400],{"class":399},[140,3532,257],{"class":153},[107,3534,3535],{},"This helper is useful for redirects and controller-driven flows because it stays aligned with the resource definitions from the resource context.",[114,3537,3539],{"id":3538},"official-adapter","Official Adapter",[107,3541,3542],{},"The repo currently includes two official router adapters.",[3544,3545,3546,3554],"card-group",{},[3547,3548,3551,3553],"card",{"icon":3549,"title":3550,"to":63},"i-logos-vue","Vue Router",[137,3552,467],{}," connects Vue Router to Ginjou's router contract.",[3547,3555,3558,3561],{"icon":3556,"title":3557,"to":71},"i-logos-svelte-icon","svelte-spa-router",[137,3559,3560],{},"@ginjou\u002Fwith-svelte-spa-router"," connects svelte-spa-router to Ginjou's router contract.",[3563,3564,3565],"style",{},"html pre.shiki code .srJo8, html code.shiki .srJo8{--shiki-light:#9C3EDA;--shiki-light-font-style:inherit;--shiki-default:#D73A49;--shiki-default-font-style:inherit;--shiki-dark:#F97583;--shiki-dark-font-style:inherit;--shiki-sepia:#66D9EF;--shiki-sepia-font-style:italic}html pre.shiki code .sKvfc, html code.shiki .sKvfc{--shiki-light:#E2931D;--shiki-light-text-decoration:inherit;--shiki-default:#6F42C1;--shiki-default-text-decoration:inherit;--shiki-dark:#B392F0;--shiki-dark-text-decoration:inherit;--shiki-sepia:#A6E22E;--shiki-sepia-text-decoration:underline}html pre.shiki code .swvn1, html code.shiki .swvn1{--shiki-light:#39ADB5;--shiki-default:#24292E;--shiki-dark:#E1E4E8;--shiki-sepia:#F8F8F2}html pre.shiki code .sY_X6, html code.shiki .sY_X6{--shiki-light:#E53935;--shiki-default:#6F42C1;--shiki-dark:#B392F0;--shiki-sepia:#A6E22E}html pre.shiki code .sGXK2, html code.shiki .sGXK2{--shiki-light:#39ADB5;--shiki-default:#D73A49;--shiki-dark:#F97583;--shiki-sepia:#F92672}html pre.shiki code .sQgqH, html code.shiki .sQgqH{--shiki-light:#90A4AE;--shiki-light-font-style:italic;--shiki-default:#E36209;--shiki-default-font-style:inherit;--shiki-dark:#FFAB70;--shiki-dark-font-style:inherit;--shiki-sepia:#FD971F;--shiki-sepia-font-style:italic}html pre.shiki code .s_MOj, html code.shiki .s_MOj{--shiki-light:#E2931D;--shiki-light-font-style:inherit;--shiki-default:#005CC5;--shiki-default-font-style:inherit;--shiki-dark:#79B8FF;--shiki-dark-font-style:inherit;--shiki-sepia:#66D9EF;--shiki-sepia-font-style:italic}html .light .shiki span {color: var(--shiki-light);background: var(--shiki-light-bg);font-style: var(--shiki-light-font-style);font-weight: var(--shiki-light-font-weight);text-decoration: var(--shiki-light-text-decoration);}html.light .shiki span {color: var(--shiki-light);background: var(--shiki-light-bg);font-style: var(--shiki-light-font-style);font-weight: var(--shiki-light-font-weight);text-decoration: var(--shiki-light-text-decoration);}html .default .shiki span {color: var(--shiki-default);background: var(--shiki-default-bg);font-style: var(--shiki-default-font-style);font-weight: var(--shiki-default-font-weight);text-decoration: var(--shiki-default-text-decoration);}html .shiki span {color: var(--shiki-default);background: var(--shiki-default-bg);font-style: var(--shiki-default-font-style);font-weight: var(--shiki-default-font-weight);text-decoration: var(--shiki-default-text-decoration);}html .dark .shiki span {color: var(--shiki-dark);background: var(--shiki-dark-bg);font-style: var(--shiki-dark-font-style);font-weight: var(--shiki-dark-font-weight);text-decoration: var(--shiki-dark-text-decoration);}html.dark .shiki span {color: var(--shiki-dark);background: var(--shiki-dark-bg);font-style: var(--shiki-dark-font-style);font-weight: var(--shiki-dark-font-weight);text-decoration: var(--shiki-dark-text-decoration);}html .sepia .shiki span {color: var(--shiki-sepia);background: var(--shiki-sepia-bg);font-style: var(--shiki-sepia-font-style);font-weight: var(--shiki-sepia-font-weight);text-decoration: var(--shiki-sepia-text-decoration);}html.sepia .shiki span {color: var(--shiki-sepia);background: var(--shiki-sepia-bg);font-style: var(--shiki-sepia-font-style);font-weight: var(--shiki-sepia-font-weight);text-decoration: var(--shiki-sepia-text-decoration);}html pre.shiki code .sHsBP, html code.shiki .sHsBP{--shiki-light:#E53935;--shiki-default:#22863A;--shiki-dark:#85E89D;--shiki-sepia:#F92672}html pre.shiki code .s_lYk, html code.shiki .s_lYk{--shiki-light:#9C3EDA;--shiki-default:#6F42C1;--shiki-dark:#B392F0;--shiki-sepia:#A6E22E}html pre.shiki code .siCPE, html code.shiki .siCPE{--shiki-light:#39ADB5;--shiki-default:#032F62;--shiki-dark:#9ECBFF;--shiki-sepia:#E6DB74}html pre.shiki code .sLACW, html code.shiki .sLACW{--shiki-light:#91B859;--shiki-default:#032F62;--shiki-dark:#9ECBFF;--shiki-sepia:#E6DB74}html pre.shiki code .sRxSC, html code.shiki .sRxSC{--shiki-light:#39ADB5;--shiki-light-font-style:italic;--shiki-default:#D73A49;--shiki-default-font-style:inherit;--shiki-dark:#F97583;--shiki-dark-font-style:inherit;--shiki-sepia:#F92672;--shiki-sepia-font-style:inherit}html pre.shiki code .ss--_, html code.shiki .ss--_{--shiki-light:#90A4AE;--shiki-default:#24292E;--shiki-dark:#E1E4E8;--shiki-sepia:#F8F8F2}html pre.shiki code .sD0ED, html code.shiki .sD0ED{--shiki-light:#6182B8;--shiki-default:#6F42C1;--shiki-dark:#B392F0;--shiki-sepia:#A6E22E}html pre.shiki code .sIDdj, html code.shiki .sIDdj{--shiki-light:#E53935;--shiki-default:#E36209;--shiki-dark:#FFAB70;--shiki-sepia:#F8F8F2}html pre.shiki code .s91G_, html code.shiki .s91G_{--shiki-light:#90A4AE;--shiki-default:#005CC5;--shiki-dark:#79B8FF;--shiki-sepia:#F8F8F2}html pre.shiki code .squCx, html code.shiki .squCx{--shiki-light:#E53935;--shiki-default:#24292E;--shiki-dark:#E1E4E8;--shiki-sepia:#F8F8F2}html pre.shiki code .sYThS, html code.shiki .sYThS{--shiki-light:#F76D47;--shiki-default:#005CC5;--shiki-dark:#79B8FF;--shiki-sepia:#AE81FF}html pre.shiki code .s8HiA, html code.shiki .s8HiA{--shiki-light:#FF5370;--shiki-default:#005CC5;--shiki-dark:#79B8FF;--shiki-sepia:#AE81FF}html pre.shiki code .sW3yT, html code.shiki .sW3yT{--shiki-light:#39ADB5;--shiki-default:#24292E;--shiki-dark:#E1E4E8;--shiki-sepia:#F92672}",{"title":135,"searchDepth":157,"depth":157,"links":3567},[3568,3572,3573,3574,3575,3576,3577],{"id":116,"depth":157,"text":117,"children":3569},[3570,3571],{"id":124,"depth":196,"text":125},{"id":312,"depth":196,"text":313},{"id":502,"depth":157,"text":503},{"id":1305,"depth":157,"text":1306},{"id":1576,"depth":157,"text":1577},{"id":2240,"depth":157,"text":2241},{"id":2864,"depth":157,"text":2865},{"id":3538,"depth":157,"text":3539},"Explain the router contract, path resolution, and route-aware navigation helpers.","md",null,{},{"title":43,"description":3578},"i3h1_zPDUH1PXK6m4go9Edl1jVHPWUj8KjutWNnGgpQ",[3585,3587],{"title":39,"path":40,"stem":41,"description":3586,"children":-1},"Explain the realtime contract, subscribe and publish flow, and query integration.",{"title":47,"path":48,"stem":49,"description":3588,"children":-1},"Explain the i18n contract, locale state, and translation composables.",1778513971989]