[{"data":1,"prerenderedAt":823},["ShallowReactive",2],{"msfe-doc:\u002Fen\u002Ffeatures\u002Fcatalog":3},{"id":4,"title":5,"body":6,"description":809,"extension":810,"keywords":811,"locale":815,"meta":816,"navigation":817,"order":53,"path":818,"section":819,"seo":820,"stem":821,"__hash__":822},"docs\u002Ffeatures\u002Fcatalog.en.md","Features and installation",{"type":7,"value":8,"toc":801},"minimark",[9,14,22,80,83,87,212,219,223,295,308,312,319,554,714,721,735,739,757,760,764,775,797],[10,11,13],"h2",{"id":12},"base-composition","Base composition",[15,16,17,21],"p",{},[18,19,20],"code",{},"@quirekit\u002Fmsfe-core"," provides editor and extension contracts. StarterKit groups common Markdown behavior. Vue \u002F React adapters retain the application's Provider tree. Pin compatible package versions together; the public API remains experimental.",[23,24,29],"pre",{"className":25,"code":26,"language":27,"meta":28,"style":28},"language-ts shiki shiki-themes github-light github-light github-dark","import { StarterKit } from '@quirekit\u002Fmsfe-starter-kit'\nimport { CustomContainer, Footnotes, Math, Mermaid } from '@quirekit\u002Fmsfe-markdown-extras'\nconst extensions = [StarterKit, CustomContainer, Footnotes, Math, Mermaid]\n","ts","",[18,30,31,51,64],{"__ignoreMap":28},[32,33,36,40,44,47],"span",{"class":34,"line":35},"line",1,[32,37,39],{"class":38},"sDD9d","import",[32,41,43],{"class":42},"sVPnS"," { StarterKit } ",[32,45,46],{"class":38},"from",[32,48,50],{"class":49},"s-HEn"," '@quirekit\u002Fmsfe-starter-kit'\n",[32,52,54,56,59,61],{"class":34,"line":53},2,[32,55,39],{"class":38},[32,57,58],{"class":42}," { CustomContainer, Footnotes, Math, Mermaid } ",[32,60,46],{"class":38},[32,62,63],{"class":49}," '@quirekit\u002Fmsfe-markdown-extras'\n",[32,65,67,70,74,77],{"class":34,"line":66},3,[32,68,69],{"class":38},"const",[32,71,73],{"class":72},"sUNQB"," extensions",[32,75,76],{"class":38}," =",[32,78,79],{"class":42}," [StarterKit, CustomContainer, Footnotes, Math, Mermaid]\n",[15,81,82],{},"Configure themes, UI and language support through the relevant guides. You do not need every optional package to start.",[10,84,86],{"id":85},"starterkit-features","StarterKit features",[88,89,90,106],"table",{},[91,92,93],"thead",{},[94,95,96,100,103],"tr",{},[97,98,99],"th",{},"Feature",[97,101,102],{},"Source forms",[97,104,105],{},"Editing entry",[107,108,109,123,143,154,165,176,190,201],"tbody",{},[94,110,111,115,118],{},[112,113,114],"td",{},"Headings",[112,116,117],{},"ATX \u002F Setext",[112,119,120],{},[18,121,122],{},"setHeading(level)",[94,124,125,128,140],{},[112,126,127],{},"Bold, emphasis, strikethrough",[112,129,130,133,134,133,137],{},[18,131,132],{},"**bold**",", ",[18,135,136],{},"*em*",[18,138,139],{},"~~del~~",[112,141,142],{},"Corresponding toggle commands",[94,144,145,148,151],{},[112,146,147],{},"Inline and block code",[112,149,150],{},"Spans, fences, indented code",[112,152,153],{},"Language command and native source editing",[94,155,156,159,162],{},[112,157,158],{},"Links and images",[112,160,161],{},"Inline \u002F resolved references",[112,163,164],{},"Insert commands and supported field patches",[94,166,167,170,173],{},[112,168,169],{},"Lists and tasks",[112,171,172],{},"Ordered, unordered, task syntax",[112,174,175],{},"Indent, outdent, continue and task controls",[94,177,178,181,187],{},[112,179,180],{},"Quotes and thematic rules",[112,182,183,186],{},[18,184,185],{},">"," and separators",[112,188,189],{},"Native source and presentation",[94,191,192,195,198],{},[112,193,194],{},"GFM tables",[112,196,197],{},"Pipe tables",[112,199,200],{},"Row\u002Fcolumn commands and native cell text",[94,202,203,206,209],{},[112,204,205],{},"Literals",[112,207,208],{},"Escapes, entities, breaks",[112,210,211],{},"Source-neutral presentation",[15,213,214,215,218],{},"Readable or renderable forms do not all support identical field writes. Check ",[18,216,217],{},"can()",", semantic queries and codec support before calling arbitrary attribute updates.",[10,220,222],{"id":221},"table-and-list-commands","Table and list commands",[23,224,226],{"className":25,"code":225,"language":27,"meta":28,"style":28},"editor.commands.insertTableRow('after')\neditor.commands.insertTableColumn('before')\neditor.commands.moveTableCell(1)\neditor.commands.deleteTableRow()\neditor.commands.indentList()\n",[18,227,228,246,260,274,285],{"__ignoreMap":28},[32,229,230,233,237,240,243],{"class":34,"line":35},[32,231,232],{"class":42},"editor.commands.",[32,234,236],{"class":235},"sgQzM","insertTableRow",[32,238,239],{"class":42},"(",[32,241,242],{"class":49},"'after'",[32,244,245],{"class":42},")\n",[32,247,248,250,253,255,258],{"class":34,"line":53},[32,249,232],{"class":42},[32,251,252],{"class":235},"insertTableColumn",[32,254,239],{"class":42},[32,256,257],{"class":49},"'before'",[32,259,245],{"class":42},[32,261,262,264,267,269,272],{"class":34,"line":66},[32,263,232],{"class":42},[32,265,266],{"class":235},"moveTableCell",[32,268,239],{"class":42},[32,270,271],{"class":72},"1",[32,273,245],{"class":42},[32,275,277,279,282],{"class":34,"line":276},4,[32,278,232],{"class":42},[32,280,281],{"class":235},"deleteTableRow",[32,283,284],{"class":42},"()\n",[32,286,288,290,293],{"class":34,"line":287},5,[32,289,232],{"class":42},[32,291,292],{"class":235},"indentList",[32,294,284],{"class":42},[15,296,297,298,301,302,307],{},"Related ",[18,299,300],{},"@quirekit\u002Fmsfe-prose"," features install these commands. Selection must identify an applicable structure; deleting the last row or column has constraints. Tables remain GFM source, not arbitrary rich-text block containers. See ",[303,304,306],"a",{"href":305},"\u002Fen\u002Fguide\u002Fcommands","Commands",".",[10,309,311],{"id":310},"optional-markdown-features","Optional Markdown features",[15,313,314,315,318],{},"These exports come from ",[18,316,317],{},"@quirekit\u002Fmsfe-markdown-extras"," and are not all included in StarterKit.",[88,320,321,334],{},[91,322,323],{},[94,324,325,328,331],{},[97,326,327],{},"Extension",[97,329,330],{},"Syntax",[97,332,333],{},"Boundary",[107,335,336,349,364,386,407,423,439,454,467,480,496,515,534],{},[94,337,338,343,346],{},[112,339,340],{},[18,341,342],{},"Frontmatter",[112,344,345],{},"Leading YAML fence",[112,347,348],{},"Source presentation, not a business configuration form",[94,350,351,356,361],{},[112,352,353],{},[18,354,355],{},"DocumentProperties",[112,357,358,359],{},"Optional YAML property table, requires ",[18,360,342],{},[112,362,363],{},"Explicit installation; source mode preserves the header; can be disabled on the same instance",[94,365,366,375,383],{},[112,367,368,371,372],{},[18,369,370],{},"Subscript"," \u002F ",[18,373,374],{},"Superscript",[112,376,377,371,380],{},[18,378,379],{},"H~2~O",[18,381,382],{},"x^2^",[112,384,385],{},"Distinct from strikethrough; unconfirmed forms retain source",[94,387,388,396,404],{},[112,389,390,371,393],{},[18,391,392],{},"InsertedText",[18,394,395],{},"Highlight",[112,397,398,371,401],{},[18,399,400],{},"++added++",[18,402,403],{},"==marked==",[112,405,406],{},"Supply corresponding theme styles",[94,408,409,414,420],{},[112,410,411],{},[18,412,413],{},"Emoji",[112,415,416,419],{},[18,417,418],{},":smile:"," \u002F optional emoticons",[112,421,422],{},"Unicode output; configurable definitions",[94,424,425,430,436],{},[112,426,427],{},[18,428,429],{},"DefinitionList",[112,431,432,433],{},"Term followed by ",[18,434,435],{},": definition",[112,437,438],{},"Markdown owns the body",[94,440,441,446,451],{},[112,442,443],{},[18,444,445],{},"Abbreviations",[112,447,448],{},[18,449,450],{},"*[HTML]: Hyper Text Markup Language",[112,452,453],{},"Source and lookup index stay separate",[94,455,456,461,464],{},[112,457,458],{},[18,459,460],{},"Footnotes",[112,462,463],{},"References, definitions, inline notes",[112,465,466],{},"Source-derived numbering, query and navigation",[94,468,469,474,477],{},[112,470,471],{},[18,472,473],{},"Typographer",[112,475,476],{},"Quote and punctuation display",[112,478,479],{},"Source-neutral; configurable quotes and work bounds",[94,481,482,487,493],{},[112,483,484],{},[18,485,486],{},"Callout",[112,488,489,490],{},"Quote with ",[18,491,492],{},"[!NOTE]",[112,494,495],{},"Role styling, distinct from colon containers",[94,497,498,503,508],{},[112,499,500],{},[18,501,502],{},"CustomContainer",[112,504,505],{},[18,506,507],{},"::: warning",[112,509,510,511],{},"Registered types, nesting and disclosure; see ",[303,512,514],{"href":513},"\u002Fen\u002Fextensions\u002Fcontainers","Containers",[94,516,517,522,531],{},[112,518,519],{},[18,520,521],{},"Math",[112,523,524,527,528],{},[18,525,526],{},"$...$"," and ",[18,529,530],{},"$$...$$",[112,532,533],{},"KaTeX preview with source fallback; no structured math commands",[94,535,536,541,547],{},[112,537,538],{},[18,539,540],{},"Mermaid",[112,542,543,546],{},[18,544,545],{},"mermaid"," fences",[112,548,549,550],{},"Optional asynchronous preview; see ",[303,551,553],{"href":552},"\u002Fen\u002Fextensions\u002Fdiagrams","Diagrams",[23,555,557],{"className":25,"code":556,"language":27,"meta":28,"style":28},"import { Emoji, Typographer, Footnotes } from '@quirekit\u002Fmsfe-markdown-extras'\nconst emoji = Emoji.configure({ definitions: { ship: '🚢' }, emoticons: false })\nconst typography = Typographer.configure({ smartQuotes: true, quotes: ['“', '”', '‘', '’'] })\nconst footnotes = Footnotes.configure({\n  referenceLabel: number => `Footnote ${number}`,\n  definitionLabel: number => `Back to footnote ${number}`,\n})\n",[18,558,559,570,600,644,661,687,708],{"__ignoreMap":28},[32,560,561,563,566,568],{"class":34,"line":35},[32,562,39],{"class":38},[32,564,565],{"class":42}," { Emoji, Typographer, Footnotes } ",[32,567,46],{"class":38},[32,569,63],{"class":49},[32,571,572,574,577,579,582,585,588,591,594,597],{"class":34,"line":53},[32,573,69],{"class":38},[32,575,576],{"class":72}," emoji",[32,578,76],{"class":38},[32,580,581],{"class":42}," Emoji.",[32,583,584],{"class":235},"configure",[32,586,587],{"class":42},"({ definitions: { ship: ",[32,589,590],{"class":49},"'🚢'",[32,592,593],{"class":42}," }, emoticons: ",[32,595,596],{"class":72},"false",[32,598,599],{"class":42}," })\n",[32,601,602,604,607,609,612,614,617,620,623,626,628,631,633,636,638,641],{"class":34,"line":66},[32,603,69],{"class":38},[32,605,606],{"class":72}," typography",[32,608,76],{"class":38},[32,610,611],{"class":42}," Typographer.",[32,613,584],{"class":235},[32,615,616],{"class":42},"({ smartQuotes: ",[32,618,619],{"class":72},"true",[32,621,622],{"class":42},", quotes: [",[32,624,625],{"class":49},"'“'",[32,627,133],{"class":42},[32,629,630],{"class":49},"'”'",[32,632,133],{"class":42},[32,634,635],{"class":49},"'‘'",[32,637,133],{"class":42},[32,639,640],{"class":49},"'’'",[32,642,643],{"class":42},"] })\n",[32,645,646,648,651,653,656,658],{"class":34,"line":276},[32,647,69],{"class":38},[32,649,650],{"class":72}," footnotes",[32,652,76],{"class":38},[32,654,655],{"class":42}," Footnotes.",[32,657,584],{"class":235},[32,659,660],{"class":42},"({\n",[32,662,663,666,669,673,676,679,681,684],{"class":34,"line":287},[32,664,665],{"class":235},"  referenceLabel",[32,667,668],{"class":42},": ",[32,670,672],{"class":671},"sde8i","number",[32,674,675],{"class":38}," =>",[32,677,678],{"class":49}," `Footnote ${",[32,680,672],{"class":42},[32,682,683],{"class":49},"}`",[32,685,686],{"class":42},",\n",[32,688,690,693,695,697,699,702,704,706],{"class":34,"line":689},6,[32,691,692],{"class":235},"  definitionLabel",[32,694,668],{"class":42},[32,696,672],{"class":671},[32,698,675],{"class":38},[32,700,701],{"class":49}," `Back to footnote ${",[32,703,672],{"class":42},[32,705,683],{"class":49},[32,707,686],{"class":42},[32,709,711],{"class":34,"line":710},7,[32,712,713],{"class":42},"})\n",[15,715,716,717,720],{},"Load KaTeX CSS, for example ",[18,718,719],{},"katex\u002Fdist\u002Fkatex.min.css",", from the host's global CSS entry. Math and Mermaid accept host preview controls.",[15,722,723,724,527,727,730,731,734],{},"Advanced footnote access uses ",[18,725,726],{},"queryFootnotes()",[18,728,729],{},"navigateFootnote()","; abbreviations use ",[18,732,733],{},"queryAbbreviations()",". Queries may be pending. Reuse their indexes and never treat display numbers as permanent IDs.",[10,736,738],{"id":737},"html-is-separate","HTML is separate",[15,740,741,744,745,748,749,752,753,756],{},[18,742,743],{},"@quirekit\u002Fmsfe-html"," exports ",[18,746,747],{},"Html",", defaulting to source. ",[18,750,751],{},"Html.configure({ rendering: 'safe' })"," enables restricted sanitized presentation. Image loading additionally needs explicit ",[18,754,755],{},"allowImage",". Scripts, arbitrary HTML editing and unrestricted embedded\u002Fbrowser HTML layout are outside its promise.",[15,758,759],{},"Adjust the preference through the package's public functions without rewriting Markdown. Unsupported structures retain source.",[10,761,763],{"id":762},"host-responsibilities","Host responsibilities",[15,765,766,767,770,771,307],{},"Storage, files, uploads, routing, permissions, navigation, HTML\u002FPDF export and Yjs integration belong to the host. ",[18,768,769],{},"applyChanges"," validates revisions but is not a collaboration adapter. markdown-it, ProseMirror and Tiptap plugins cannot install directly; see ",[303,772,774],{"href":773},"\u002Fen\u002Fextensions\u002Fmarkdown-plugins","Markdown plugins",[15,776,777,778,133,782,133,785,133,788,792,793,307],{},"Continue with ",[303,779,781],{"href":780},"\u002Fen\u002Fextensions\u002Fcustom-node","nodes",[303,783,784],{"href":513},"containers",[303,786,787],{"href":552},"diagrams",[303,789,791],{"href":790},"\u002Fen\u002Fcustomization\u002Ftheme","themes"," or ",[303,794,796],{"href":795},"\u002Fen\u002Fguide\u002Fsaving","saving",[798,799,800],"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 .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 .sgQzM, html code.shiki .sgQzM{--shiki-default:#6F42C1;--shiki-light:#6F42C1;--shiki-dark:#B392F0}html pre.shiki code .sde8i, html code.shiki .sde8i{--shiki-default:#E36209;--shiki-light:#E36209;--shiki-dark:#FFAB70}",{"title":28,"searchDepth":53,"depth":53,"links":802},[803,804,805,806,807,808],{"id":12,"depth":53,"text":13},{"id":85,"depth":53,"text":86},{"id":221,"depth":53,"text":222},{"id":310,"depth":53,"text":311},{"id":737,"depth":53,"text":738},{"id":762,"depth":53,"text":763},"Choose built-in packages, optional syntax, editing commands and host responsibilities.","md",[812,460,521,413,813,814],"StarterKit","HTML","packages","en",{},true,"\u002Fen\u002Ffeatures\u002Fcatalog","Getting started",{"title":5,"description":809},"features\u002Fcatalog.en","b5zrmSyVOBtZKD3J6GWVNlANhkAWwB65gZBZ-zgpsU8",1793046311992]