[{"data":1,"prerenderedAt":944},["ShallowReactive",2],{"msfe-doc:\u002Fen\u002Fguide\u002Fselection":3,"msfe-source:recipes\u002Fintent.ts":350,"mdc--y5fzrg-key":351},{"id":4,"title":5,"body":6,"description":335,"extension":336,"keywords":337,"locale":342,"meta":343,"navigation":75,"order":344,"path":345,"section":346,"seo":347,"stem":348,"__hash__":349},"docs\u002Fguide\u002Fselection.en.md","Selection and captured intent",{"type":7,"value":8,"toc":328},"minimark",[9,14,23,41,135,153,157,240,243,247,253,257,268,272,291,300,304,311,324],[10,11,13],"h2",{"id":12},"coordinates-belong-to-source","Coordinates belong to source",[15,16,17,18,22],"p",{},"MSFE uses UTF-16 offsets in CodeMirror's logical text and half-open ",[19,20,21],"code",{},"[from, to)"," ranges. A preview has no independent coordinate system. An image or task control still owns a source range. Emoji may occupy two UTF-16 units; character counts and DOM offsets are not substitutes.",[15,24,25,28,29,32,33,36,37,40],{},[19,26,27],{},"getMarkdown()"," may restore file line endings. Calculate edits against ",[19,30,31],{},"editor.state.doc",", not byte offsets in serialized CRLF output. ",[19,34,35],{},"selection.main.from\u002Fto"," orders endpoints; ",[19,38,39],{},"anchor\u002Fhead"," preserves direction.",[42,43,48],"pre",{"className":44,"code":45,"language":46,"meta":47,"style":47},"language-ts shiki shiki-themes github-light github-light github-dark","import { EditorSelection } from '@quirekit\u002Fcm-state'\n\neditor.setSelection(EditorSelection.single(10, 18))\neditor.scrollTo(10)\neditor.focus()\n","ts","",[19,49,50,70,77,109,124],{"__ignoreMap":47},[51,52,55,59,63,66],"span",{"class":53,"line":54},"line",1,[51,56,58],{"class":57},"sDD9d","import",[51,60,62],{"class":61},"sVPnS"," { EditorSelection } ",[51,64,65],{"class":57},"from",[51,67,69],{"class":68},"s-HEn"," '@quirekit\u002Fcm-state'\n",[51,71,73],{"class":53,"line":72},2,[51,74,76],{"emptyLinePlaceholder":75},true,"\n",[51,78,80,83,87,90,93,96,100,103,106],{"class":53,"line":79},3,[51,81,82],{"class":61},"editor.",[51,84,86],{"class":85},"sgQzM","setSelection",[51,88,89],{"class":61},"(EditorSelection.",[51,91,92],{"class":85},"single",[51,94,95],{"class":61},"(",[51,97,99],{"class":98},"sUNQB","10",[51,101,102],{"class":61},", ",[51,104,105],{"class":98},"18",[51,107,108],{"class":61},"))\n",[51,110,112,114,117,119,121],{"class":53,"line":111},4,[51,113,82],{"class":61},[51,115,116],{"class":85},"scrollTo",[51,118,95],{"class":61},[51,120,99],{"class":98},[51,122,123],{"class":61},")\n",[51,125,127,129,132],{"class":53,"line":126},5,[51,128,82],{"class":61},[51,130,131],{"class":85},"focus",[51,133,134],{"class":61},"()\n",[15,136,137,140,141,144,145,148,149,152],{},[19,138,139],{},"EditorSelection.cursor()"," returns one range, while ",[19,142,143],{},"setSelection()"," expects a complete selection. Use ",[19,146,147],{},"single()"," or ",[19,150,151],{},"create()",". Define whether a command supports every selection or rejects multiple ranges; never silently modify only the first.",[10,154,156],{"id":155},"short-menus-capture-an-exact-target","Short menus: capture an exact target",[42,158,160],{"className":44,"code":159,"language":46,"meta":47,"style":47},"const target = editor.captureTarget()\n\u002F\u002F The host displays a menu; source may change before the user confirms.\nconst applied = editor.chain(target).insertText('approved').run()\nif (!applied) console.warn(editor.lastCommandResult)\n",[19,161,162,181,187,220],{"__ignoreMap":47},[51,163,164,167,170,173,176,179],{"class":53,"line":54},[51,165,166],{"class":57},"const",[51,168,169],{"class":98}," target",[51,171,172],{"class":57}," =",[51,174,175],{"class":61}," editor.",[51,177,178],{"class":85},"captureTarget",[51,180,134],{"class":61},[51,182,183],{"class":53,"line":72},[51,184,186],{"class":185},"sqmzS","\u002F\u002F The host displays a menu; source may change before the user confirms.\n",[51,188,189,191,194,196,198,201,204,207,209,212,215,218],{"class":53,"line":79},[51,190,166],{"class":57},[51,192,193],{"class":98}," applied",[51,195,172],{"class":57},[51,197,175],{"class":61},[51,199,200],{"class":85},"chain",[51,202,203],{"class":61},"(target).",[51,205,206],{"class":85},"insertText",[51,208,95],{"class":61},[51,210,211],{"class":68},"'approved'",[51,213,214],{"class":61},").",[51,216,217],{"class":85},"run",[51,219,134],{"class":61},[51,221,222,225,228,231,234,237],{"class":53,"line":111},[51,223,224],{"class":57},"if",[51,226,227],{"class":61}," (",[51,229,230],{"class":57},"!",[51,232,233],{"class":61},"applied) console.",[51,235,236],{"class":85},"warn",[51,238,239],{"class":61},"(editor.lastCommandResult)\n",[15,241,242],{},"Targets include instance, document, revision and directed selection. Source changes may invalidate them. Retrying without the target after failure would redirect the action to a different selection.",[10,244,246],{"id":245},"dialogs-map-the-original-range","Dialogs: map the original range",[15,248,249,252],{},[19,250,251],{},"captureAnchor()"," maps across unrelated edits while verifying that the captured text remains unchanged. This complete helper suits asset or text selection dialogs. The host dialog must honor cancellation.",[254,255],"msfe-recipe",{"name":256},"recipes\u002Fintent",[15,258,259,260,263,264,267],{},"Changing or deleting captured content, replacing the document or releasing the anchor invalidates its target. Document replacement invalidates old anchors even if the host reuses ",[19,261,262],{},"documentId",". On ",[19,265,266],{},"false",", ask the user to select again rather than forcing old offsets.",[10,269,271],{"id":270},"mapping-policy","Mapping policy",[15,273,274,275,278,279,282,283,286,287,290],{},"By default, ",[19,276,277],{},"inclusiveStart"," and ",[19,280,281],{},"inclusiveEnd"," are false, excluding insertions exactly at either boundary. ",[19,284,285],{},"onDelete: 'drop'"," removes a fully deleted range; ",[19,288,289],{},"keep"," can retain metadata as a point. Comments, decorations and insertion intents may require different policies.",[15,292,293,296,297,299],{},[19,294,295],{},"SourceRangeSet"," suits larger collections of range metadata. Prefer ",[19,298,251],{}," for one asynchronous user intent instead of rebuilding mapping infrastructure.",[10,301,303],{"id":302},"reveal-search-and-readonly","Reveal, search and readonly",[15,305,306,307,310],{},"A native selection entering an ordinary replacement reveals source. A diagram's edit action therefore selects the appropriate source position. Atomic disclosure needs explicit state and ",[19,308,309],{},"interaction: 'atomic'","; it must not permanently hide searchable content.",[15,312,313,314,278,319,323],{},"Readonly still permits selection and copying. Commands perform the final permission check: capturing an anchor never grants write permission. See ",[315,316,318],"a",{"href":317},"\u002Fen\u002Fapi\u002Fcommands","Command API",[315,320,322],{"href":321},"\u002Fen\u002Fapi\u002Frendering","Rendering API",".",[325,326,327],"style",{},"html pre.shiki code .sDD9d, html code.shiki .sDD9d{--shiki-default:#D73A49;--shiki-light:#D73A49;--shiki-dark:#F97583}html pre.shiki code .sVPnS, html code.shiki .sVPnS{--shiki-default:#24292E;--shiki-light:#24292E;--shiki-dark:#E1E4E8}html pre.shiki code .s-HEn, html code.shiki .s-HEn{--shiki-default:#032F62;--shiki-light:#032F62;--shiki-dark:#9ECBFF}html pre.shiki code .sgQzM, html code.shiki .sgQzM{--shiki-default:#6F42C1;--shiki-light:#6F42C1;--shiki-dark:#B392F0}html pre.shiki code .sUNQB, html code.shiki .sUNQB{--shiki-default:#005CC5;--shiki-light:#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 .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 .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 .sqmzS, html code.shiki .sqmzS{--shiki-default:#6A737D;--shiki-light:#6A737D;--shiki-dark:#6A737D}",{"title":47,"searchDepth":72,"depth":72,"links":329},[330,331,332,333,334],{"id":12,"depth":72,"text":13},{"id":155,"depth":72,"text":156},{"id":245,"depth":72,"text":246},{"id":270,"depth":72,"text":271},{"id":302,"depth":72,"text":303},"Use logical source coordinates and prevent asynchronous actions from writing to stale ranges.","md",[178,338,339,340,341],"captureAnchor","UTF-16","selection","stale-target","en",{},7,"\u002Fen\u002Fguide\u002Fselection","Integration",{"title":5,"description":335},"guide\u002Fselection.en","Y-RSGhKqRTuSAXkXdjk8PDm76eGCXQ_TXjB43cByeQc","import type { MsfeEditor } from \"@quirekit\u002Fmsfe-core\";\n\u002F** @param editor - Current document. @param choose - Host dialog, observing cancellation. @returns Whether a still-current range was updated. *\u002F\nexport async function replaceSelectionFromDialog(editor: MsfeEditor, choose: (signal: AbortSignal) => Promise\u003Cstring | null>): Promise\u003Cboolean> {\n  const range = editor.state.selection.main;\n  const scope = editor.documentScope.fork();\n  const anchor = editor.captureAnchor({ from: range.from, to: range.to });\n  scope.own(() => anchor.release());\n  try {\n    const value = await choose(scope.signal);\n    if (scope.disposed || value === null) return false;\n    const target = anchor.target();\n    \u002F\u002F Unrelated edits may move the interval; changes to its own text invalidate it.\n    return target ? editor.chain(target).insertText(value).run() : false;\n  } finally { scope.dispose(); }\n}\n",{"data":352,"body":353},{},{"type":354,"children":355},"root",[356,939],{"type":357,"tag":42,"props":358,"children":360},"element",{"className":44,"code":359,"language":46,"meta":47,"style":47},"import type { MsfeEditor } from \"@quirekit\u002Fmsfe-core\";\n\u002F** @param editor - Current document. @param choose - Host dialog, observing cancellation. @returns Whether a still-current range was updated. *\u002F\nexport async function replaceSelectionFromDialog(editor: MsfeEditor, choose: (signal: AbortSignal) => Promise\u003Cstring | null>): Promise\u003Cboolean> {\n  const range = editor.state.selection.main;\n  const scope = editor.documentScope.fork();\n  const anchor = editor.captureAnchor({ from: range.from, to: range.to });\n  scope.own(() => anchor.release());\n  try {\n    const value = await choose(scope.signal);\n    if (scope.disposed || value === null) return false;\n    const target = anchor.target();\n    \u002F\u002F Unrelated edits may move the interval; changes to its own text invalidate it.\n    return target ? editor.chain(target).insertText(value).run() : false;\n  } finally { scope.dispose(); }\n}\n\n",[361],{"type":357,"tag":19,"props":362,"children":363},{"__ignoreMap":47},[364,399,447,585,607,638,668,705,719,751,802,831,840,901,930],{"type":357,"tag":51,"props":365,"children":366},{"class":53,"line":54},[367,373,378,384,388,394],{"type":357,"tag":51,"props":368,"children":370},{"style":369},"--shiki-default:#D73A49;--shiki-light:#D73A49;--shiki-dark:#F97583",[371],{"type":372,"value":58},"text",{"type":357,"tag":51,"props":374,"children":375},{"style":369},[376],{"type":372,"value":377}," type",{"type":357,"tag":51,"props":379,"children":381},{"style":380},"--shiki-default:#24292E;--shiki-light:#24292E;--shiki-dark:#E1E4E8",[382],{"type":372,"value":383}," { MsfeEditor } ",{"type":357,"tag":51,"props":385,"children":386},{"style":369},[387],{"type":372,"value":65},{"type":357,"tag":51,"props":389,"children":391},{"style":390},"--shiki-default:#032F62;--shiki-light:#032F62;--shiki-dark:#9ECBFF",[392],{"type":372,"value":393}," \"@quirekit\u002Fmsfe-core\"",{"type":357,"tag":51,"props":395,"children":396},{"style":380},[397],{"type":372,"value":398},";\n",{"type":357,"tag":51,"props":400,"children":401},{"class":53,"line":72},[402,408,413,418,423,427,432,437,442],{"type":357,"tag":51,"props":403,"children":405},{"style":404},"--shiki-default:#6A737D;--shiki-light:#6A737D;--shiki-dark:#6A737D",[406],{"type":372,"value":407},"\u002F** ",{"type":357,"tag":51,"props":409,"children":410},{"style":369},[411],{"type":372,"value":412},"@param",{"type":357,"tag":51,"props":414,"children":415},{"style":380},[416],{"type":372,"value":417}," editor",{"type":357,"tag":51,"props":419,"children":420},{"style":404},[421],{"type":372,"value":422}," - Current document. ",{"type":357,"tag":51,"props":424,"children":425},{"style":369},[426],{"type":372,"value":412},{"type":357,"tag":51,"props":428,"children":429},{"style":380},[430],{"type":372,"value":431}," choose",{"type":357,"tag":51,"props":433,"children":434},{"style":404},[435],{"type":372,"value":436}," - Host dialog, observing cancellation. ",{"type":357,"tag":51,"props":438,"children":439},{"style":369},[440],{"type":372,"value":441},"@returns",{"type":357,"tag":51,"props":443,"children":444},{"style":404},[445],{"type":372,"value":446}," Whether a still-current range was updated. *\u002F\n",{"type":357,"tag":51,"props":448,"children":449},{"class":53,"line":79},[450,455,460,465,471,475,481,486,491,495,500,504,508,513,517,522,527,532,537,542,548,553,558,563,567,571,575,580],{"type":357,"tag":51,"props":451,"children":452},{"style":369},[453],{"type":372,"value":454},"export",{"type":357,"tag":51,"props":456,"children":457},{"style":369},[458],{"type":372,"value":459}," async",{"type":357,"tag":51,"props":461,"children":462},{"style":369},[463],{"type":372,"value":464}," function",{"type":357,"tag":51,"props":466,"children":468},{"style":467},"--shiki-default:#6F42C1;--shiki-light:#6F42C1;--shiki-dark:#B392F0",[469],{"type":372,"value":470}," replaceSelectionFromDialog",{"type":357,"tag":51,"props":472,"children":473},{"style":380},[474],{"type":372,"value":95},{"type":357,"tag":51,"props":476,"children":478},{"style":477},"--shiki-default:#E36209;--shiki-light:#E36209;--shiki-dark:#FFAB70",[479],{"type":372,"value":480},"editor",{"type":357,"tag":51,"props":482,"children":483},{"style":369},[484],{"type":372,"value":485},":",{"type":357,"tag":51,"props":487,"children":488},{"style":467},[489],{"type":372,"value":490}," MsfeEditor",{"type":357,"tag":51,"props":492,"children":493},{"style":380},[494],{"type":372,"value":102},{"type":357,"tag":51,"props":496,"children":497},{"style":467},[498],{"type":372,"value":499},"choose",{"type":357,"tag":51,"props":501,"children":502},{"style":369},[503],{"type":372,"value":485},{"type":357,"tag":51,"props":505,"children":506},{"style":380},[507],{"type":372,"value":227},{"type":357,"tag":51,"props":509,"children":510},{"style":477},[511],{"type":372,"value":512},"signal",{"type":357,"tag":51,"props":514,"children":515},{"style":369},[516],{"type":372,"value":485},{"type":357,"tag":51,"props":518,"children":519},{"style":467},[520],{"type":372,"value":521}," AbortSignal",{"type":357,"tag":51,"props":523,"children":524},{"style":380},[525],{"type":372,"value":526},") ",{"type":357,"tag":51,"props":528,"children":529},{"style":369},[530],{"type":372,"value":531},"=>",{"type":357,"tag":51,"props":533,"children":534},{"style":467},[535],{"type":372,"value":536}," Promise",{"type":357,"tag":51,"props":538,"children":539},{"style":380},[540],{"type":372,"value":541},"\u003C",{"type":357,"tag":51,"props":543,"children":545},{"style":544},"--shiki-default:#005CC5;--shiki-light:#005CC5;--shiki-dark:#79B8FF",[546],{"type":372,"value":547},"string",{"type":357,"tag":51,"props":549,"children":550},{"style":369},[551],{"type":372,"value":552}," |",{"type":357,"tag":51,"props":554,"children":555},{"style":544},[556],{"type":372,"value":557}," null",{"type":357,"tag":51,"props":559,"children":560},{"style":380},[561],{"type":372,"value":562},">)",{"type":357,"tag":51,"props":564,"children":565},{"style":369},[566],{"type":372,"value":485},{"type":357,"tag":51,"props":568,"children":569},{"style":467},[570],{"type":372,"value":536},{"type":357,"tag":51,"props":572,"children":573},{"style":380},[574],{"type":372,"value":541},{"type":357,"tag":51,"props":576,"children":577},{"style":544},[578],{"type":372,"value":579},"boolean",{"type":357,"tag":51,"props":581,"children":582},{"style":380},[583],{"type":372,"value":584},"> {\n",{"type":357,"tag":51,"props":586,"children":587},{"class":53,"line":111},[588,593,598,602],{"type":357,"tag":51,"props":589,"children":590},{"style":369},[591],{"type":372,"value":592},"  const",{"type":357,"tag":51,"props":594,"children":595},{"style":544},[596],{"type":372,"value":597}," range",{"type":357,"tag":51,"props":599,"children":600},{"style":369},[601],{"type":372,"value":172},{"type":357,"tag":51,"props":603,"children":604},{"style":380},[605],{"type":372,"value":606}," editor.state.selection.main;\n",{"type":357,"tag":51,"props":608,"children":609},{"class":53,"line":126},[610,614,619,623,628,633],{"type":357,"tag":51,"props":611,"children":612},{"style":369},[613],{"type":372,"value":592},{"type":357,"tag":51,"props":615,"children":616},{"style":544},[617],{"type":372,"value":618}," scope",{"type":357,"tag":51,"props":620,"children":621},{"style":369},[622],{"type":372,"value":172},{"type":357,"tag":51,"props":624,"children":625},{"style":380},[626],{"type":372,"value":627}," editor.documentScope.",{"type":357,"tag":51,"props":629,"children":630},{"style":467},[631],{"type":372,"value":632},"fork",{"type":357,"tag":51,"props":634,"children":635},{"style":380},[636],{"type":372,"value":637},"();\n",{"type":357,"tag":51,"props":639,"children":641},{"class":53,"line":640},6,[642,646,651,655,659,663],{"type":357,"tag":51,"props":643,"children":644},{"style":369},[645],{"type":372,"value":592},{"type":357,"tag":51,"props":647,"children":648},{"style":544},[649],{"type":372,"value":650}," anchor",{"type":357,"tag":51,"props":652,"children":653},{"style":369},[654],{"type":372,"value":172},{"type":357,"tag":51,"props":656,"children":657},{"style":380},[658],{"type":372,"value":175},{"type":357,"tag":51,"props":660,"children":661},{"style":467},[662],{"type":372,"value":338},{"type":357,"tag":51,"props":664,"children":665},{"style":380},[666],{"type":372,"value":667},"({ from: range.from, to: range.to });\n",{"type":357,"tag":51,"props":669,"children":670},{"class":53,"line":344},[671,676,681,686,690,695,700],{"type":357,"tag":51,"props":672,"children":673},{"style":380},[674],{"type":372,"value":675},"  scope.",{"type":357,"tag":51,"props":677,"children":678},{"style":467},[679],{"type":372,"value":680},"own",{"type":357,"tag":51,"props":682,"children":683},{"style":380},[684],{"type":372,"value":685},"(() ",{"type":357,"tag":51,"props":687,"children":688},{"style":369},[689],{"type":372,"value":531},{"type":357,"tag":51,"props":691,"children":692},{"style":380},[693],{"type":372,"value":694}," anchor.",{"type":357,"tag":51,"props":696,"children":697},{"style":467},[698],{"type":372,"value":699},"release",{"type":357,"tag":51,"props":701,"children":702},{"style":380},[703],{"type":372,"value":704},"());\n",{"type":357,"tag":51,"props":706,"children":708},{"class":53,"line":707},8,[709,714],{"type":357,"tag":51,"props":710,"children":711},{"style":369},[712],{"type":372,"value":713},"  try",{"type":357,"tag":51,"props":715,"children":716},{"style":380},[717],{"type":372,"value":718}," {\n",{"type":357,"tag":51,"props":720,"children":722},{"class":53,"line":721},9,[723,728,733,737,742,746],{"type":357,"tag":51,"props":724,"children":725},{"style":369},[726],{"type":372,"value":727},"    const",{"type":357,"tag":51,"props":729,"children":730},{"style":544},[731],{"type":372,"value":732}," value",{"type":357,"tag":51,"props":734,"children":735},{"style":369},[736],{"type":372,"value":172},{"type":357,"tag":51,"props":738,"children":739},{"style":369},[740],{"type":372,"value":741}," await",{"type":357,"tag":51,"props":743,"children":744},{"style":467},[745],{"type":372,"value":431},{"type":357,"tag":51,"props":747,"children":748},{"style":380},[749],{"type":372,"value":750},"(scope.signal);\n",{"type":357,"tag":51,"props":752,"children":754},{"class":53,"line":753},10,[755,760,765,770,775,780,784,788,793,798],{"type":357,"tag":51,"props":756,"children":757},{"style":369},[758],{"type":372,"value":759},"    if",{"type":357,"tag":51,"props":761,"children":762},{"style":380},[763],{"type":372,"value":764}," (scope.disposed ",{"type":357,"tag":51,"props":766,"children":767},{"style":369},[768],{"type":372,"value":769},"||",{"type":357,"tag":51,"props":771,"children":772},{"style":380},[773],{"type":372,"value":774}," value ",{"type":357,"tag":51,"props":776,"children":777},{"style":369},[778],{"type":372,"value":779},"===",{"type":357,"tag":51,"props":781,"children":782},{"style":544},[783],{"type":372,"value":557},{"type":357,"tag":51,"props":785,"children":786},{"style":380},[787],{"type":372,"value":526},{"type":357,"tag":51,"props":789,"children":790},{"style":369},[791],{"type":372,"value":792},"return",{"type":357,"tag":51,"props":794,"children":795},{"style":544},[796],{"type":372,"value":797}," false",{"type":357,"tag":51,"props":799,"children":800},{"style":380},[801],{"type":372,"value":398},{"type":357,"tag":51,"props":803,"children":805},{"class":53,"line":804},11,[806,810,814,818,822,827],{"type":357,"tag":51,"props":807,"children":808},{"style":369},[809],{"type":372,"value":727},{"type":357,"tag":51,"props":811,"children":812},{"style":544},[813],{"type":372,"value":169},{"type":357,"tag":51,"props":815,"children":816},{"style":369},[817],{"type":372,"value":172},{"type":357,"tag":51,"props":819,"children":820},{"style":380},[821],{"type":372,"value":694},{"type":357,"tag":51,"props":823,"children":824},{"style":467},[825],{"type":372,"value":826},"target",{"type":357,"tag":51,"props":828,"children":829},{"style":380},[830],{"type":372,"value":637},{"type":357,"tag":51,"props":832,"children":834},{"class":53,"line":833},12,[835],{"type":357,"tag":51,"props":836,"children":837},{"style":404},[838],{"type":372,"value":839},"    \u002F\u002F Unrelated edits may move the interval; changes to its own text invalidate it.\n",{"type":357,"tag":51,"props":841,"children":843},{"class":53,"line":842},13,[844,849,854,859,863,867,871,875,880,884,889,893,897],{"type":357,"tag":51,"props":845,"children":846},{"style":369},[847],{"type":372,"value":848},"    return",{"type":357,"tag":51,"props":850,"children":851},{"style":380},[852],{"type":372,"value":853}," target ",{"type":357,"tag":51,"props":855,"children":856},{"style":369},[857],{"type":372,"value":858},"?",{"type":357,"tag":51,"props":860,"children":861},{"style":380},[862],{"type":372,"value":175},{"type":357,"tag":51,"props":864,"children":865},{"style":467},[866],{"type":372,"value":200},{"type":357,"tag":51,"props":868,"children":869},{"style":380},[870],{"type":372,"value":203},{"type":357,"tag":51,"props":872,"children":873},{"style":467},[874],{"type":372,"value":206},{"type":357,"tag":51,"props":876,"children":877},{"style":380},[878],{"type":372,"value":879},"(value).",{"type":357,"tag":51,"props":881,"children":882},{"style":467},[883],{"type":372,"value":217},{"type":357,"tag":51,"props":885,"children":886},{"style":380},[887],{"type":372,"value":888},"() ",{"type":357,"tag":51,"props":890,"children":891},{"style":369},[892],{"type":372,"value":485},{"type":357,"tag":51,"props":894,"children":895},{"style":544},[896],{"type":372,"value":797},{"type":357,"tag":51,"props":898,"children":899},{"style":380},[900],{"type":372,"value":398},{"type":357,"tag":51,"props":902,"children":904},{"class":53,"line":903},14,[905,910,915,920,925],{"type":357,"tag":51,"props":906,"children":907},{"style":380},[908],{"type":372,"value":909},"  } ",{"type":357,"tag":51,"props":911,"children":912},{"style":369},[913],{"type":372,"value":914},"finally",{"type":357,"tag":51,"props":916,"children":917},{"style":380},[918],{"type":372,"value":919}," { scope.",{"type":357,"tag":51,"props":921,"children":922},{"style":467},[923],{"type":372,"value":924},"dispose",{"type":357,"tag":51,"props":926,"children":927},{"style":380},[928],{"type":372,"value":929},"(); }\n",{"type":357,"tag":51,"props":931,"children":933},{"class":53,"line":932},15,[934],{"type":357,"tag":51,"props":935,"children":936},{"style":380},[937],{"type":372,"value":938},"}\n",{"type":357,"tag":325,"props":940,"children":941},{},[942],{"type":372,"value":943},"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 .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 .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);}",1793046311993]