[{"data":1,"prerenderedAt":1625},["ShallowReactive",2],{"quirekit-doc:\u002Fen\u002Fbuild\u002Fproduct-plugin":3,"quirekit-source:product\u002Fplugin\u002Fnotebook.ts":222,"mdc--4wxwvu-key":223},{"id":4,"title":5,"body":6,"description":210,"extension":211,"keywords":212,"locale":213,"meta":214,"navigation":215,"order":216,"path":217,"section":218,"seo":219,"stem":220,"__hash__":221},"docs\u002Fbuild\u002Fproduct-plugin.en.md","Add product features to Classic",{"type":7,"value":8,"toc":201},"minimark",[9,13,21,26,29,33,37,51,69,72,76,97,100,104,115,118,122,179,183],[10,11,12],"p",{},"The note group changes document content. Toolbars, sidebars and file menus belong to product plugins. This chapter reuses Classic's interface and adds “My product” and a product inspector.",[10,14,15,16,20],{},"A custom workspace can compose its own components. Classic plugin declarations require a Classic instance; putting them into Core's ",[17,18,19],"code",{},"extensions"," does not create a toolbar.",[22,23,25],"h2",{"id":24},"try-the-feature","Try the feature",[10,27,28],{},"Find “My product” on the Home ribbon. Insert a note and observe the content change. Open the inspector to read product state; closing it does not change content.",[30,31],"docs-demo",{"name":32},"product\u002Fplugin\u002Feditor",[22,34,36],{"id":35},"_1-declare-actions","1. Declare actions",[10,38,39,42,43,46,47,50],{},[17,40,41],{},"plugin\u002Fnotebook.ts"," defines the plugin, ribbon group and actions. The group's ",[17,44,45],{},"tabId"," chooses an existing tab; each action's ",[17,48,49],{},"groupId"," chooses its group.",[10,52,53,54,57,58,61,62,65,66,68],{},"Actions receive the current ",[17,55,56],{},"editor",", product ",[17,59,60],{},"instance"," and ",[17,63,64],{},"ui",". Use Core commands to change content and ",[17,67,64],{}," to open panels. The same action can be placed elsewhere without another content command system.",[10,70,71],{},"Availability, executability, active state and disabled reasons are separate queries. Classic uses them to refresh controls when selection or read-only state changes.",[22,73,75],{"id":74},"_2-create-and-update-a-sidebar","2. Create and update a sidebar",[10,77,78,81,82,85,86,89,90,61,93,96],{},[17,79,80],{},"plugin\u002Fpanel.ts"," connects Classic to Vue; ",[17,83,84],{},"plugin\u002Fpanel.vue"," renders the inspector. Mounting returns ",[17,87,88],{},"element",", ",[17,91,92],{},"update",[17,94,95],{},"destroy"," for DOM, context refresh and cleanup.",[10,98,99],{},"Create the Vue root on open, update it when locale or selection changes, and release it on close. Do not recreate subscriptions on every plugin update.",[22,101,103],{"id":102},"_3-register-a-file-service","3. Register a file service",[10,105,106,107,110,111,114],{},"The example registers ",[17,108,109],{},"notebook-backup",". The download action calls ",[17,112,113],{},"instance.exportDocument('notebook-backup')",", then hands its data, filename and MIME to the browser.",[10,116,117],{},"Services own conversion. File-menu placement is declared separately, allowing the same service with different menu layouts.",[22,119,121],{"id":120},"file-responsibilities","File responsibilities",[123,124,125,138],"table",{},[126,127,128],"thead",{},[129,130,131,135],"tr",{},[132,133,134],"th",{},"File",[132,136,137],{},"Purpose",[139,140,141,151,160,169],"tbody",{},[129,142,143,148],{},[144,145,146],"td",{},[17,147,41],{},[144,149,150],{},"Plugin, groups, actions and file service",[129,152,153,157],{},[144,154,155],{},[17,156,80],{},[144,158,159],{},"Connect sidebar lifecycle to Vue",[129,161,162,166],{},[144,163,164],{},[17,165,84],{},[144,167,168],{},"Inspector interface",[129,170,171,176],{},[144,172,173],{},[17,174,175],{},"plugin\u002Feditor.vue",[144,177,178],{},"Create Classic and install the plugin",[180,181],"docs-recipe",{"name":182},"product\u002Fplugin\u002Fnotebook",[10,184,185,186,61,191,195,196,200],{},"See ",[187,188,190],"a",{"href":189},"\u002Fen\u002Fclassic\u002Fplugins","Classic plugins",[187,192,194],{"href":193},"\u002Fen\u002Fclassic\u002Fapi","Classic API",". For failures and asynchronous loading, continue with ",[187,197,199],{"href":198},"\u002Fen\u002Fbuild\u002Ffiles","files",".",{"title":202,"searchDepth":203,"depth":203,"links":204},"",2,[205,206,207,208,209],{"id":24,"depth":203,"text":25},{"id":35,"depth":203,"text":36},{"id":74,"depth":203,"text":75},{"id":102,"depth":203,"text":103},{"id":120,"depth":203,"text":121},"Distinguish content extensions from interface plugins, then add actions, sidebars and file services.","md",null,"en",{},true,6,"\u002Fen\u002Fbuild\u002Fproduct-plugin","Build a product",{"title":5,"description":210},"build\u002Fproduct-plugin.en","uG05GaEUUmzb1bnU6fsnP_uRVxl0HqP5wYvpLj_NhIo","import { defineClassicEditorPlugin, createClassicEditorRibbonAction, type ClassicEditorActionDefinition } from \"@quirekit\u002Fclassic-editor\u002Fvue\";\nimport { readBackup, createBackup } from \"..\u002Ffiles\u002Fbackup\";\nimport { renderNotebookPanel } from \".\u002Fpanel\";\n\n\u002F**\n * Builds a fresh product plugin with a ribbon group, typed action, panel and backup service.\n * @returns Declarations consumed by Classic's registry; they do not replace Core mutation semantics.\n *\u002F\nexport function createNotebookPlugin() {\n  const open: ClassicEditorActionDefinition = {\n    id: \"notebook.inspect\", label: { \"zh-CN\": \"产品检查器\", en: \"Product inspector\" }, order: 10,\n    run(context) { context.ui.openSidebarPanel(\"right\", \"notebook.panel\"); return true; },\n    isActive(context) { return context.ui.state.rightSidebar.visible && context.ui.state.rightSidebar.activePanelId === \"notebook.panel\"; },\n  };\n  const insert: ClassicEditorActionDefinition = {\n    id: \"notebook.insert\", label: { \"zh-CN\": \"插入说明\", en: \"Insert note text\" }, order: 20,\n    canExecute(context) { return context.editor.isEditable && context.editor.can().insertContent({ type: \"paragraph\" }); },\n    run(context) { return context.editor.chain().focus().insertContent({ type: \"paragraph\", content: [{ type: \"text\",\n      text: context.locale === \"en\" ? \"Inserted by a product plugin.\" : \"由产品插件插入的说明。\" }] }).run(); },\n  };\n  return defineClassicEditorPlugin({ id: \"notebook\",\n    contributions: [\n      { kind: \"ribbon-group\", id: \"notebook.group\", tabId: \"home\", label: { \"zh-CN\": \"我的产品\", en: \"My product\" }, order: 1 },\n      createClassicEditorRibbonAction(\"notebook.inspect.control\", \"notebook.group\", open),\n      createClassicEditorRibbonAction(\"notebook.insert.control\", \"notebook.group\", insert),\n    ],\n    sidebarPanels: [{ kind: \"sidebar-panel\", id: \"notebook.panel\", side: \"right\", label: { \"zh-CN\": \"产品检查器\", en: \"Product inspector\" }, order: 10, render: renderNotebookPanel }],\n    services: [{ id: \"notebook-backup\", label: { \"zh-CN\": \"产品备份\", en: \"Product backup\" },\n      format: { id: \"notebook-json\", extensions: [\".json\"], mimeTypes: [\"application\u002Fjson\"] },\n      export(context) { return { data: JSON.stringify(createBackup(context.editor, \"word-v1\")), fileName: \"notebook.json\", mimeType: \"application\u002Fjson\" }; },\n      import(context, input) {\n        if (!context.editor.isEditable) throw new Error(\"The product is read only\");\n        const source = typeof input.data === \"string\" ? input.data : new TextDecoder().decode(input.data);\n        const document = readBackup(source, \"word-v1\", context.editor.schema);\n        context.commit(() => context.editor.commands.replaceDocument(document, { errorOnInvalidContent: true }));\n      },\n    }],\n  });\n}\n",{"data":224,"body":225},{},{"type":226,"children":227},"root",[228,1619],{"type":88,"tag":229,"props":230,"children":234},"pre",{"className":231,"code":232,"language":233,"meta":202,"style":202},"language-ts shiki shiki-themes github-light github-light github-dark","import { defineClassicEditorPlugin, createClassicEditorRibbonAction, type ClassicEditorActionDefinition } from \"@quirekit\u002Fclassic-editor\u002Fvue\";\nimport { readBackup, createBackup } from \"..\u002Ffiles\u002Fbackup\";\nimport { renderNotebookPanel } from \".\u002Fpanel\";\n\n\u002F**\n * Builds a fresh product plugin with a ribbon group, typed action, panel and backup service.\n * @returns Declarations consumed by Classic's registry; they do not replace Core mutation semantics.\n *\u002F\nexport function createNotebookPlugin() {\n  const open: ClassicEditorActionDefinition = {\n    id: \"notebook.inspect\", label: { \"zh-CN\": \"产品检查器\", en: \"Product inspector\" }, order: 10,\n    run(context) { context.ui.openSidebarPanel(\"right\", \"notebook.panel\"); return true; },\n    isActive(context) { return context.ui.state.rightSidebar.visible && context.ui.state.rightSidebar.activePanelId === \"notebook.panel\"; },\n  };\n  const insert: ClassicEditorActionDefinition = {\n    id: \"notebook.insert\", label: { \"zh-CN\": \"插入说明\", en: \"Insert note text\" }, order: 20,\n    canExecute(context) { return context.editor.isEditable && context.editor.can().insertContent({ type: \"paragraph\" }); },\n    run(context) { return context.editor.chain().focus().insertContent({ type: \"paragraph\", content: [{ type: \"text\",\n      text: context.locale === \"en\" ? \"Inserted by a product plugin.\" : \"由产品插件插入的说明。\" }] }).run(); },\n  };\n  return defineClassicEditorPlugin({ id: \"notebook\",\n    contributions: [\n      { kind: \"ribbon-group\", id: \"notebook.group\", tabId: \"home\", label: { \"zh-CN\": \"我的产品\", en: \"My product\" }, order: 1 },\n      createClassicEditorRibbonAction(\"notebook.inspect.control\", \"notebook.group\", open),\n      createClassicEditorRibbonAction(\"notebook.insert.control\", \"notebook.group\", insert),\n    ],\n    sidebarPanels: [{ kind: \"sidebar-panel\", id: \"notebook.panel\", side: \"right\", label: { \"zh-CN\": \"产品检查器\", en: \"Product inspector\" }, order: 10, render: renderNotebookPanel }],\n    services: [{ id: \"notebook-backup\", label: { \"zh-CN\": \"产品备份\", en: \"Product backup\" },\n      format: { id: \"notebook-json\", extensions: [\".json\"], mimeTypes: [\"application\u002Fjson\"] },\n      export(context) { return { data: JSON.stringify(createBackup(context.editor, \"word-v1\")), fileName: \"notebook.json\", mimeType: \"application\u002Fjson\" }; },\n      import(context, input) {\n        if (!context.editor.isEditable) throw new Error(\"The product is read only\");\n        const source = typeof input.data === \"string\" ? input.data : new TextDecoder().decode(input.data);\n        const document = readBackup(source, \"word-v1\", context.editor.schema);\n        context.commit(() => context.editor.commands.replaceDocument(document, { errorOnInvalidContent: true }));\n      },\n    }],\n  });\n}\n\n","ts",[235],{"type":88,"tag":17,"props":236,"children":237},{"__ignoreMap":202},[238,283,308,334,343,353,361,380,389,414,449,508,576,631,640,669,721,790,862,915,923,951,960,1034,1065,1095,1104,1172,1216,1255,1342,1373,1426,1498,1534,1583,1592,1601,1610],{"type":88,"tag":239,"props":240,"children":243},"span",{"class":241,"line":242},"line",1,[244,251,257,262,267,272,278],{"type":88,"tag":239,"props":245,"children":247},{"style":246},"--shiki-default:#D73A49;--shiki-light:#D73A49;--shiki-dark:#F97583",[248],{"type":249,"value":250},"text","import",{"type":88,"tag":239,"props":252,"children":254},{"style":253},"--shiki-default:#24292E;--shiki-light:#24292E;--shiki-dark:#E1E4E8",[255],{"type":249,"value":256}," { defineClassicEditorPlugin, createClassicEditorRibbonAction, ",{"type":88,"tag":239,"props":258,"children":259},{"style":246},[260],{"type":249,"value":261},"type",{"type":88,"tag":239,"props":263,"children":264},{"style":253},[265],{"type":249,"value":266}," ClassicEditorActionDefinition } ",{"type":88,"tag":239,"props":268,"children":269},{"style":246},[270],{"type":249,"value":271},"from",{"type":88,"tag":239,"props":273,"children":275},{"style":274},"--shiki-default:#032F62;--shiki-light:#032F62;--shiki-dark:#9ECBFF",[276],{"type":249,"value":277}," \"@quirekit\u002Fclassic-editor\u002Fvue\"",{"type":88,"tag":239,"props":279,"children":280},{"style":253},[281],{"type":249,"value":282},";\n",{"type":88,"tag":239,"props":284,"children":285},{"class":241,"line":203},[286,290,295,299,304],{"type":88,"tag":239,"props":287,"children":288},{"style":246},[289],{"type":249,"value":250},{"type":88,"tag":239,"props":291,"children":292},{"style":253},[293],{"type":249,"value":294}," { readBackup, createBackup } ",{"type":88,"tag":239,"props":296,"children":297},{"style":246},[298],{"type":249,"value":271},{"type":88,"tag":239,"props":300,"children":301},{"style":274},[302],{"type":249,"value":303}," \"..\u002Ffiles\u002Fbackup\"",{"type":88,"tag":239,"props":305,"children":306},{"style":253},[307],{"type":249,"value":282},{"type":88,"tag":239,"props":309,"children":311},{"class":241,"line":310},3,[312,316,321,325,330],{"type":88,"tag":239,"props":313,"children":314},{"style":246},[315],{"type":249,"value":250},{"type":88,"tag":239,"props":317,"children":318},{"style":253},[319],{"type":249,"value":320}," { renderNotebookPanel } ",{"type":88,"tag":239,"props":322,"children":323},{"style":246},[324],{"type":249,"value":271},{"type":88,"tag":239,"props":326,"children":327},{"style":274},[328],{"type":249,"value":329}," \".\u002Fpanel\"",{"type":88,"tag":239,"props":331,"children":332},{"style":253},[333],{"type":249,"value":282},{"type":88,"tag":239,"props":335,"children":337},{"class":241,"line":336},4,[338],{"type":88,"tag":239,"props":339,"children":340},{"emptyLinePlaceholder":215},[341],{"type":249,"value":342},"\n",{"type":88,"tag":239,"props":344,"children":346},{"class":241,"line":345},5,[347],{"type":88,"tag":239,"props":348,"children":350},{"style":349},"--shiki-default:#6A737D;--shiki-light:#6A737D;--shiki-dark:#6A737D",[351],{"type":249,"value":352},"\u002F**\n",{"type":88,"tag":239,"props":354,"children":355},{"class":241,"line":216},[356],{"type":88,"tag":239,"props":357,"children":358},{"style":349},[359],{"type":249,"value":360}," * Builds a fresh product plugin with a ribbon group, typed action, panel and backup service.\n",{"type":88,"tag":239,"props":362,"children":364},{"class":241,"line":363},7,[365,370,375],{"type":88,"tag":239,"props":366,"children":367},{"style":349},[368],{"type":249,"value":369}," * ",{"type":88,"tag":239,"props":371,"children":372},{"style":246},[373],{"type":249,"value":374},"@returns",{"type":88,"tag":239,"props":376,"children":377},{"style":349},[378],{"type":249,"value":379}," Declarations consumed by Classic's registry; they do not replace Core mutation semantics.\n",{"type":88,"tag":239,"props":381,"children":383},{"class":241,"line":382},8,[384],{"type":88,"tag":239,"props":385,"children":386},{"style":349},[387],{"type":249,"value":388}," *\u002F\n",{"type":88,"tag":239,"props":390,"children":392},{"class":241,"line":391},9,[393,398,403,409],{"type":88,"tag":239,"props":394,"children":395},{"style":246},[396],{"type":249,"value":397},"export",{"type":88,"tag":239,"props":399,"children":400},{"style":246},[401],{"type":249,"value":402}," function",{"type":88,"tag":239,"props":404,"children":406},{"style":405},"--shiki-default:#6F42C1;--shiki-light:#6F42C1;--shiki-dark:#B392F0",[407],{"type":249,"value":408}," createNotebookPlugin",{"type":88,"tag":239,"props":410,"children":411},{"style":253},[412],{"type":249,"value":413},"() {\n",{"type":88,"tag":239,"props":415,"children":417},{"class":241,"line":416},10,[418,423,429,434,439,444],{"type":88,"tag":239,"props":419,"children":420},{"style":246},[421],{"type":249,"value":422},"  const",{"type":88,"tag":239,"props":424,"children":426},{"style":425},"--shiki-default:#005CC5;--shiki-light:#005CC5;--shiki-dark:#79B8FF",[427],{"type":249,"value":428}," open",{"type":88,"tag":239,"props":430,"children":431},{"style":246},[432],{"type":249,"value":433},":",{"type":88,"tag":239,"props":435,"children":436},{"style":405},[437],{"type":249,"value":438}," ClassicEditorActionDefinition",{"type":88,"tag":239,"props":440,"children":441},{"style":246},[442],{"type":249,"value":443}," =",{"type":88,"tag":239,"props":445,"children":446},{"style":253},[447],{"type":249,"value":448}," {\n",{"type":88,"tag":239,"props":450,"children":452},{"class":241,"line":451},11,[453,458,463,468,473,478,483,488,493,498,503],{"type":88,"tag":239,"props":454,"children":455},{"style":253},[456],{"type":249,"value":457},"    id: ",{"type":88,"tag":239,"props":459,"children":460},{"style":274},[461],{"type":249,"value":462},"\"notebook.inspect\"",{"type":88,"tag":239,"props":464,"children":465},{"style":253},[466],{"type":249,"value":467},", label: { ",{"type":88,"tag":239,"props":469,"children":470},{"style":274},[471],{"type":249,"value":472},"\"zh-CN\"",{"type":88,"tag":239,"props":474,"children":475},{"style":253},[476],{"type":249,"value":477},": ",{"type":88,"tag":239,"props":479,"children":480},{"style":274},[481],{"type":249,"value":482},"\"产品检查器\"",{"type":88,"tag":239,"props":484,"children":485},{"style":253},[486],{"type":249,"value":487},", en: ",{"type":88,"tag":239,"props":489,"children":490},{"style":274},[491],{"type":249,"value":492},"\"Product inspector\"",{"type":88,"tag":239,"props":494,"children":495},{"style":253},[496],{"type":249,"value":497}," }, order: ",{"type":88,"tag":239,"props":499,"children":500},{"style":425},[501],{"type":249,"value":502},"10",{"type":88,"tag":239,"props":504,"children":505},{"style":253},[506],{"type":249,"value":507},",\n",{"type":88,"tag":239,"props":509,"children":511},{"class":241,"line":510},12,[512,517,522,528,533,538,542,547,551,556,561,566,571],{"type":88,"tag":239,"props":513,"children":514},{"style":405},[515],{"type":249,"value":516},"    run",{"type":88,"tag":239,"props":518,"children":519},{"style":253},[520],{"type":249,"value":521},"(",{"type":88,"tag":239,"props":523,"children":525},{"style":524},"--shiki-default:#E36209;--shiki-light:#E36209;--shiki-dark:#FFAB70",[526],{"type":249,"value":527},"context",{"type":88,"tag":239,"props":529,"children":530},{"style":253},[531],{"type":249,"value":532},") { context.ui.",{"type":88,"tag":239,"props":534,"children":535},{"style":405},[536],{"type":249,"value":537},"openSidebarPanel",{"type":88,"tag":239,"props":539,"children":540},{"style":253},[541],{"type":249,"value":521},{"type":88,"tag":239,"props":543,"children":544},{"style":274},[545],{"type":249,"value":546},"\"right\"",{"type":88,"tag":239,"props":548,"children":549},{"style":253},[550],{"type":249,"value":89},{"type":88,"tag":239,"props":552,"children":553},{"style":274},[554],{"type":249,"value":555},"\"notebook.panel\"",{"type":88,"tag":239,"props":557,"children":558},{"style":253},[559],{"type":249,"value":560},"); ",{"type":88,"tag":239,"props":562,"children":563},{"style":246},[564],{"type":249,"value":565},"return",{"type":88,"tag":239,"props":567,"children":568},{"style":425},[569],{"type":249,"value":570}," true",{"type":88,"tag":239,"props":572,"children":573},{"style":253},[574],{"type":249,"value":575},"; },\n",{"type":88,"tag":239,"props":577,"children":579},{"class":241,"line":578},13,[580,585,589,593,598,602,607,612,617,622,627],{"type":88,"tag":239,"props":581,"children":582},{"style":405},[583],{"type":249,"value":584},"    isActive",{"type":88,"tag":239,"props":586,"children":587},{"style":253},[588],{"type":249,"value":521},{"type":88,"tag":239,"props":590,"children":591},{"style":524},[592],{"type":249,"value":527},{"type":88,"tag":239,"props":594,"children":595},{"style":253},[596],{"type":249,"value":597},") { ",{"type":88,"tag":239,"props":599,"children":600},{"style":246},[601],{"type":249,"value":565},{"type":88,"tag":239,"props":603,"children":604},{"style":253},[605],{"type":249,"value":606}," context.ui.state.rightSidebar.visible ",{"type":88,"tag":239,"props":608,"children":609},{"style":246},[610],{"type":249,"value":611},"&&",{"type":88,"tag":239,"props":613,"children":614},{"style":253},[615],{"type":249,"value":616}," context.ui.state.rightSidebar.activePanelId ",{"type":88,"tag":239,"props":618,"children":619},{"style":246},[620],{"type":249,"value":621},"===",{"type":88,"tag":239,"props":623,"children":624},{"style":274},[625],{"type":249,"value":626}," \"notebook.panel\"",{"type":88,"tag":239,"props":628,"children":629},{"style":253},[630],{"type":249,"value":575},{"type":88,"tag":239,"props":632,"children":634},{"class":241,"line":633},14,[635],{"type":88,"tag":239,"props":636,"children":637},{"style":253},[638],{"type":249,"value":639},"  };\n",{"type":88,"tag":239,"props":641,"children":643},{"class":241,"line":642},15,[644,648,653,657,661,665],{"type":88,"tag":239,"props":645,"children":646},{"style":246},[647],{"type":249,"value":422},{"type":88,"tag":239,"props":649,"children":650},{"style":425},[651],{"type":249,"value":652}," insert",{"type":88,"tag":239,"props":654,"children":655},{"style":246},[656],{"type":249,"value":433},{"type":88,"tag":239,"props":658,"children":659},{"style":405},[660],{"type":249,"value":438},{"type":88,"tag":239,"props":662,"children":663},{"style":246},[664],{"type":249,"value":443},{"type":88,"tag":239,"props":666,"children":667},{"style":253},[668],{"type":249,"value":448},{"type":88,"tag":239,"props":670,"children":672},{"class":241,"line":671},16,[673,677,682,686,690,694,699,703,708,712,717],{"type":88,"tag":239,"props":674,"children":675},{"style":253},[676],{"type":249,"value":457},{"type":88,"tag":239,"props":678,"children":679},{"style":274},[680],{"type":249,"value":681},"\"notebook.insert\"",{"type":88,"tag":239,"props":683,"children":684},{"style":253},[685],{"type":249,"value":467},{"type":88,"tag":239,"props":687,"children":688},{"style":274},[689],{"type":249,"value":472},{"type":88,"tag":239,"props":691,"children":692},{"style":253},[693],{"type":249,"value":477},{"type":88,"tag":239,"props":695,"children":696},{"style":274},[697],{"type":249,"value":698},"\"插入说明\"",{"type":88,"tag":239,"props":700,"children":701},{"style":253},[702],{"type":249,"value":487},{"type":88,"tag":239,"props":704,"children":705},{"style":274},[706],{"type":249,"value":707},"\"Insert note text\"",{"type":88,"tag":239,"props":709,"children":710},{"style":253},[711],{"type":249,"value":497},{"type":88,"tag":239,"props":713,"children":714},{"style":425},[715],{"type":249,"value":716},"20",{"type":88,"tag":239,"props":718,"children":719},{"style":253},[720],{"type":249,"value":507},{"type":88,"tag":239,"props":722,"children":724},{"class":241,"line":723},17,[725,730,734,738,742,746,751,755,760,765,770,775,780,785],{"type":88,"tag":239,"props":726,"children":727},{"style":405},[728],{"type":249,"value":729},"    canExecute",{"type":88,"tag":239,"props":731,"children":732},{"style":253},[733],{"type":249,"value":521},{"type":88,"tag":239,"props":735,"children":736},{"style":524},[737],{"type":249,"value":527},{"type":88,"tag":239,"props":739,"children":740},{"style":253},[741],{"type":249,"value":597},{"type":88,"tag":239,"props":743,"children":744},{"style":246},[745],{"type":249,"value":565},{"type":88,"tag":239,"props":747,"children":748},{"style":253},[749],{"type":249,"value":750}," context.editor.isEditable ",{"type":88,"tag":239,"props":752,"children":753},{"style":246},[754],{"type":249,"value":611},{"type":88,"tag":239,"props":756,"children":757},{"style":253},[758],{"type":249,"value":759}," context.editor.",{"type":88,"tag":239,"props":761,"children":762},{"style":405},[763],{"type":249,"value":764},"can",{"type":88,"tag":239,"props":766,"children":767},{"style":253},[768],{"type":249,"value":769},"().",{"type":88,"tag":239,"props":771,"children":772},{"style":405},[773],{"type":249,"value":774},"insertContent",{"type":88,"tag":239,"props":776,"children":777},{"style":253},[778],{"type":249,"value":779},"({ type: ",{"type":88,"tag":239,"props":781,"children":782},{"style":274},[783],{"type":249,"value":784},"\"paragraph\"",{"type":88,"tag":239,"props":786,"children":787},{"style":253},[788],{"type":249,"value":789}," }); },\n",{"type":88,"tag":239,"props":791,"children":793},{"class":241,"line":792},18,[794,798,802,806,810,814,818,823,827,832,836,840,844,848,853,858],{"type":88,"tag":239,"props":795,"children":796},{"style":405},[797],{"type":249,"value":516},{"type":88,"tag":239,"props":799,"children":800},{"style":253},[801],{"type":249,"value":521},{"type":88,"tag":239,"props":803,"children":804},{"style":524},[805],{"type":249,"value":527},{"type":88,"tag":239,"props":807,"children":808},{"style":253},[809],{"type":249,"value":597},{"type":88,"tag":239,"props":811,"children":812},{"style":246},[813],{"type":249,"value":565},{"type":88,"tag":239,"props":815,"children":816},{"style":253},[817],{"type":249,"value":759},{"type":88,"tag":239,"props":819,"children":820},{"style":405},[821],{"type":249,"value":822},"chain",{"type":88,"tag":239,"props":824,"children":825},{"style":253},[826],{"type":249,"value":769},{"type":88,"tag":239,"props":828,"children":829},{"style":405},[830],{"type":249,"value":831},"focus",{"type":88,"tag":239,"props":833,"children":834},{"style":253},[835],{"type":249,"value":769},{"type":88,"tag":239,"props":837,"children":838},{"style":405},[839],{"type":249,"value":774},{"type":88,"tag":239,"props":841,"children":842},{"style":253},[843],{"type":249,"value":779},{"type":88,"tag":239,"props":845,"children":846},{"style":274},[847],{"type":249,"value":784},{"type":88,"tag":239,"props":849,"children":850},{"style":253},[851],{"type":249,"value":852},", content: [{ type: ",{"type":88,"tag":239,"props":854,"children":855},{"style":274},[856],{"type":249,"value":857},"\"text\"",{"type":88,"tag":239,"props":859,"children":860},{"style":253},[861],{"type":249,"value":507},{"type":88,"tag":239,"props":863,"children":865},{"class":241,"line":864},19,[866,871,875,880,885,890,895,900,905,910],{"type":88,"tag":239,"props":867,"children":868},{"style":253},[869],{"type":249,"value":870},"      text: context.locale ",{"type":88,"tag":239,"props":872,"children":873},{"style":246},[874],{"type":249,"value":621},{"type":88,"tag":239,"props":876,"children":877},{"style":274},[878],{"type":249,"value":879}," \"en\"",{"type":88,"tag":239,"props":881,"children":882},{"style":246},[883],{"type":249,"value":884}," ?",{"type":88,"tag":239,"props":886,"children":887},{"style":274},[888],{"type":249,"value":889}," \"Inserted by a product plugin.\"",{"type":88,"tag":239,"props":891,"children":892},{"style":246},[893],{"type":249,"value":894}," :",{"type":88,"tag":239,"props":896,"children":897},{"style":274},[898],{"type":249,"value":899}," \"由产品插件插入的说明。\"",{"type":88,"tag":239,"props":901,"children":902},{"style":253},[903],{"type":249,"value":904}," }] }).",{"type":88,"tag":239,"props":906,"children":907},{"style":405},[908],{"type":249,"value":909},"run",{"type":88,"tag":239,"props":911,"children":912},{"style":253},[913],{"type":249,"value":914},"(); },\n",{"type":88,"tag":239,"props":916,"children":918},{"class":241,"line":917},20,[919],{"type":88,"tag":239,"props":920,"children":921},{"style":253},[922],{"type":249,"value":639},{"type":88,"tag":239,"props":924,"children":926},{"class":241,"line":925},21,[927,932,937,942,947],{"type":88,"tag":239,"props":928,"children":929},{"style":246},[930],{"type":249,"value":931},"  return",{"type":88,"tag":239,"props":933,"children":934},{"style":405},[935],{"type":249,"value":936}," defineClassicEditorPlugin",{"type":88,"tag":239,"props":938,"children":939},{"style":253},[940],{"type":249,"value":941},"({ id: ",{"type":88,"tag":239,"props":943,"children":944},{"style":274},[945],{"type":249,"value":946},"\"notebook\"",{"type":88,"tag":239,"props":948,"children":949},{"style":253},[950],{"type":249,"value":507},{"type":88,"tag":239,"props":952,"children":954},{"class":241,"line":953},22,[955],{"type":88,"tag":239,"props":956,"children":957},{"style":253},[958],{"type":249,"value":959},"    contributions: [\n",{"type":88,"tag":239,"props":961,"children":963},{"class":241,"line":962},23,[964,969,974,979,984,989,994,998,1002,1006,1011,1015,1020,1024,1029],{"type":88,"tag":239,"props":965,"children":966},{"style":253},[967],{"type":249,"value":968},"      { kind: ",{"type":88,"tag":239,"props":970,"children":971},{"style":274},[972],{"type":249,"value":973},"\"ribbon-group\"",{"type":88,"tag":239,"props":975,"children":976},{"style":253},[977],{"type":249,"value":978},", id: ",{"type":88,"tag":239,"props":980,"children":981},{"style":274},[982],{"type":249,"value":983},"\"notebook.group\"",{"type":88,"tag":239,"props":985,"children":986},{"style":253},[987],{"type":249,"value":988},", tabId: ",{"type":88,"tag":239,"props":990,"children":991},{"style":274},[992],{"type":249,"value":993},"\"home\"",{"type":88,"tag":239,"props":995,"children":996},{"style":253},[997],{"type":249,"value":467},{"type":88,"tag":239,"props":999,"children":1000},{"style":274},[1001],{"type":249,"value":472},{"type":88,"tag":239,"props":1003,"children":1004},{"style":253},[1005],{"type":249,"value":477},{"type":88,"tag":239,"props":1007,"children":1008},{"style":274},[1009],{"type":249,"value":1010},"\"我的产品\"",{"type":88,"tag":239,"props":1012,"children":1013},{"style":253},[1014],{"type":249,"value":487},{"type":88,"tag":239,"props":1016,"children":1017},{"style":274},[1018],{"type":249,"value":1019},"\"My product\"",{"type":88,"tag":239,"props":1021,"children":1022},{"style":253},[1023],{"type":249,"value":497},{"type":88,"tag":239,"props":1025,"children":1026},{"style":425},[1027],{"type":249,"value":1028},"1",{"type":88,"tag":239,"props":1030,"children":1031},{"style":253},[1032],{"type":249,"value":1033}," },\n",{"type":88,"tag":239,"props":1035,"children":1037},{"class":241,"line":1036},24,[1038,1043,1047,1052,1056,1060],{"type":88,"tag":239,"props":1039,"children":1040},{"style":405},[1041],{"type":249,"value":1042},"      createClassicEditorRibbonAction",{"type":88,"tag":239,"props":1044,"children":1045},{"style":253},[1046],{"type":249,"value":521},{"type":88,"tag":239,"props":1048,"children":1049},{"style":274},[1050],{"type":249,"value":1051},"\"notebook.inspect.control\"",{"type":88,"tag":239,"props":1053,"children":1054},{"style":253},[1055],{"type":249,"value":89},{"type":88,"tag":239,"props":1057,"children":1058},{"style":274},[1059],{"type":249,"value":983},{"type":88,"tag":239,"props":1061,"children":1062},{"style":253},[1063],{"type":249,"value":1064},", open),\n",{"type":88,"tag":239,"props":1066,"children":1068},{"class":241,"line":1067},25,[1069,1073,1077,1082,1086,1090],{"type":88,"tag":239,"props":1070,"children":1071},{"style":405},[1072],{"type":249,"value":1042},{"type":88,"tag":239,"props":1074,"children":1075},{"style":253},[1076],{"type":249,"value":521},{"type":88,"tag":239,"props":1078,"children":1079},{"style":274},[1080],{"type":249,"value":1081},"\"notebook.insert.control\"",{"type":88,"tag":239,"props":1083,"children":1084},{"style":253},[1085],{"type":249,"value":89},{"type":88,"tag":239,"props":1087,"children":1088},{"style":274},[1089],{"type":249,"value":983},{"type":88,"tag":239,"props":1091,"children":1092},{"style":253},[1093],{"type":249,"value":1094},", insert),\n",{"type":88,"tag":239,"props":1096,"children":1098},{"class":241,"line":1097},26,[1099],{"type":88,"tag":239,"props":1100,"children":1101},{"style":253},[1102],{"type":249,"value":1103},"    ],\n",{"type":88,"tag":239,"props":1105,"children":1107},{"class":241,"line":1106},27,[1108,1113,1118,1122,1126,1131,1135,1139,1143,1147,1151,1155,1159,1163,1167],{"type":88,"tag":239,"props":1109,"children":1110},{"style":253},[1111],{"type":249,"value":1112},"    sidebarPanels: [{ kind: ",{"type":88,"tag":239,"props":1114,"children":1115},{"style":274},[1116],{"type":249,"value":1117},"\"sidebar-panel\"",{"type":88,"tag":239,"props":1119,"children":1120},{"style":253},[1121],{"type":249,"value":978},{"type":88,"tag":239,"props":1123,"children":1124},{"style":274},[1125],{"type":249,"value":555},{"type":88,"tag":239,"props":1127,"children":1128},{"style":253},[1129],{"type":249,"value":1130},", side: ",{"type":88,"tag":239,"props":1132,"children":1133},{"style":274},[1134],{"type":249,"value":546},{"type":88,"tag":239,"props":1136,"children":1137},{"style":253},[1138],{"type":249,"value":467},{"type":88,"tag":239,"props":1140,"children":1141},{"style":274},[1142],{"type":249,"value":472},{"type":88,"tag":239,"props":1144,"children":1145},{"style":253},[1146],{"type":249,"value":477},{"type":88,"tag":239,"props":1148,"children":1149},{"style":274},[1150],{"type":249,"value":482},{"type":88,"tag":239,"props":1152,"children":1153},{"style":253},[1154],{"type":249,"value":487},{"type":88,"tag":239,"props":1156,"children":1157},{"style":274},[1158],{"type":249,"value":492},{"type":88,"tag":239,"props":1160,"children":1161},{"style":253},[1162],{"type":249,"value":497},{"type":88,"tag":239,"props":1164,"children":1165},{"style":425},[1166],{"type":249,"value":502},{"type":88,"tag":239,"props":1168,"children":1169},{"style":253},[1170],{"type":249,"value":1171},", render: renderNotebookPanel }],\n",{"type":88,"tag":239,"props":1173,"children":1175},{"class":241,"line":1174},28,[1176,1181,1186,1190,1194,1198,1203,1207,1212],{"type":88,"tag":239,"props":1177,"children":1178},{"style":253},[1179],{"type":249,"value":1180},"    services: [{ id: ",{"type":88,"tag":239,"props":1182,"children":1183},{"style":274},[1184],{"type":249,"value":1185},"\"notebook-backup\"",{"type":88,"tag":239,"props":1187,"children":1188},{"style":253},[1189],{"type":249,"value":467},{"type":88,"tag":239,"props":1191,"children":1192},{"style":274},[1193],{"type":249,"value":472},{"type":88,"tag":239,"props":1195,"children":1196},{"style":253},[1197],{"type":249,"value":477},{"type":88,"tag":239,"props":1199,"children":1200},{"style":274},[1201],{"type":249,"value":1202},"\"产品备份\"",{"type":88,"tag":239,"props":1204,"children":1205},{"style":253},[1206],{"type":249,"value":487},{"type":88,"tag":239,"props":1208,"children":1209},{"style":274},[1210],{"type":249,"value":1211},"\"Product backup\"",{"type":88,"tag":239,"props":1213,"children":1214},{"style":253},[1215],{"type":249,"value":1033},{"type":88,"tag":239,"props":1217,"children":1219},{"class":241,"line":1218},29,[1220,1225,1230,1235,1240,1245,1250],{"type":88,"tag":239,"props":1221,"children":1222},{"style":253},[1223],{"type":249,"value":1224},"      format: { id: ",{"type":88,"tag":239,"props":1226,"children":1227},{"style":274},[1228],{"type":249,"value":1229},"\"notebook-json\"",{"type":88,"tag":239,"props":1231,"children":1232},{"style":253},[1233],{"type":249,"value":1234},", extensions: [",{"type":88,"tag":239,"props":1236,"children":1237},{"style":274},[1238],{"type":249,"value":1239},"\".json\"",{"type":88,"tag":239,"props":1241,"children":1242},{"style":253},[1243],{"type":249,"value":1244},"], mimeTypes: [",{"type":88,"tag":239,"props":1246,"children":1247},{"style":274},[1248],{"type":249,"value":1249},"\"application\u002Fjson\"",{"type":88,"tag":239,"props":1251,"children":1252},{"style":253},[1253],{"type":249,"value":1254},"] },\n",{"type":88,"tag":239,"props":1256,"children":1258},{"class":241,"line":1257},30,[1259,1264,1268,1272,1276,1280,1285,1290,1294,1299,1303,1308,1313,1318,1323,1328,1333,1337],{"type":88,"tag":239,"props":1260,"children":1261},{"style":405},[1262],{"type":249,"value":1263},"      export",{"type":88,"tag":239,"props":1265,"children":1266},{"style":253},[1267],{"type":249,"value":521},{"type":88,"tag":239,"props":1269,"children":1270},{"style":524},[1271],{"type":249,"value":527},{"type":88,"tag":239,"props":1273,"children":1274},{"style":253},[1275],{"type":249,"value":597},{"type":88,"tag":239,"props":1277,"children":1278},{"style":246},[1279],{"type":249,"value":565},{"type":88,"tag":239,"props":1281,"children":1282},{"style":253},[1283],{"type":249,"value":1284}," { data: ",{"type":88,"tag":239,"props":1286,"children":1287},{"style":425},[1288],{"type":249,"value":1289},"JSON",{"type":88,"tag":239,"props":1291,"children":1292},{"style":253},[1293],{"type":249,"value":200},{"type":88,"tag":239,"props":1295,"children":1296},{"style":405},[1297],{"type":249,"value":1298},"stringify",{"type":88,"tag":239,"props":1300,"children":1301},{"style":253},[1302],{"type":249,"value":521},{"type":88,"tag":239,"props":1304,"children":1305},{"style":405},[1306],{"type":249,"value":1307},"createBackup",{"type":88,"tag":239,"props":1309,"children":1310},{"style":253},[1311],{"type":249,"value":1312},"(context.editor, ",{"type":88,"tag":239,"props":1314,"children":1315},{"style":274},[1316],{"type":249,"value":1317},"\"word-v1\"",{"type":88,"tag":239,"props":1319,"children":1320},{"style":253},[1321],{"type":249,"value":1322},")), fileName: ",{"type":88,"tag":239,"props":1324,"children":1325},{"style":274},[1326],{"type":249,"value":1327},"\"notebook.json\"",{"type":88,"tag":239,"props":1329,"children":1330},{"style":253},[1331],{"type":249,"value":1332},", mimeType: ",{"type":88,"tag":239,"props":1334,"children":1335},{"style":274},[1336],{"type":249,"value":1249},{"type":88,"tag":239,"props":1338,"children":1339},{"style":253},[1340],{"type":249,"value":1341}," }; },\n",{"type":88,"tag":239,"props":1343,"children":1345},{"class":241,"line":1344},31,[1346,1351,1355,1359,1363,1368],{"type":88,"tag":239,"props":1347,"children":1348},{"style":405},[1349],{"type":249,"value":1350},"      import",{"type":88,"tag":239,"props":1352,"children":1353},{"style":253},[1354],{"type":249,"value":521},{"type":88,"tag":239,"props":1356,"children":1357},{"style":524},[1358],{"type":249,"value":527},{"type":88,"tag":239,"props":1360,"children":1361},{"style":253},[1362],{"type":249,"value":89},{"type":88,"tag":239,"props":1364,"children":1365},{"style":524},[1366],{"type":249,"value":1367},"input",{"type":88,"tag":239,"props":1369,"children":1370},{"style":253},[1371],{"type":249,"value":1372},") {\n",{"type":88,"tag":239,"props":1374,"children":1376},{"class":241,"line":1375},32,[1377,1382,1387,1392,1397,1402,1407,1412,1416,1421],{"type":88,"tag":239,"props":1378,"children":1379},{"style":246},[1380],{"type":249,"value":1381},"        if",{"type":88,"tag":239,"props":1383,"children":1384},{"style":253},[1385],{"type":249,"value":1386}," (",{"type":88,"tag":239,"props":1388,"children":1389},{"style":246},[1390],{"type":249,"value":1391},"!",{"type":88,"tag":239,"props":1393,"children":1394},{"style":253},[1395],{"type":249,"value":1396},"context.editor.isEditable) ",{"type":88,"tag":239,"props":1398,"children":1399},{"style":246},[1400],{"type":249,"value":1401},"throw",{"type":88,"tag":239,"props":1403,"children":1404},{"style":246},[1405],{"type":249,"value":1406}," new",{"type":88,"tag":239,"props":1408,"children":1409},{"style":405},[1410],{"type":249,"value":1411}," Error",{"type":88,"tag":239,"props":1413,"children":1414},{"style":253},[1415],{"type":249,"value":521},{"type":88,"tag":239,"props":1417,"children":1418},{"style":274},[1419],{"type":249,"value":1420},"\"The product is read only\"",{"type":88,"tag":239,"props":1422,"children":1423},{"style":253},[1424],{"type":249,"value":1425},");\n",{"type":88,"tag":239,"props":1427,"children":1429},{"class":241,"line":1428},33,[1430,1435,1440,1444,1449,1454,1458,1463,1467,1471,1475,1479,1484,1488,1493],{"type":88,"tag":239,"props":1431,"children":1432},{"style":246},[1433],{"type":249,"value":1434},"        const",{"type":88,"tag":239,"props":1436,"children":1437},{"style":425},[1438],{"type":249,"value":1439}," source",{"type":88,"tag":239,"props":1441,"children":1442},{"style":246},[1443],{"type":249,"value":443},{"type":88,"tag":239,"props":1445,"children":1446},{"style":246},[1447],{"type":249,"value":1448}," typeof",{"type":88,"tag":239,"props":1450,"children":1451},{"style":253},[1452],{"type":249,"value":1453}," input.data ",{"type":88,"tag":239,"props":1455,"children":1456},{"style":246},[1457],{"type":249,"value":621},{"type":88,"tag":239,"props":1459,"children":1460},{"style":274},[1461],{"type":249,"value":1462}," \"string\"",{"type":88,"tag":239,"props":1464,"children":1465},{"style":246},[1466],{"type":249,"value":884},{"type":88,"tag":239,"props":1468,"children":1469},{"style":253},[1470],{"type":249,"value":1453},{"type":88,"tag":239,"props":1472,"children":1473},{"style":246},[1474],{"type":249,"value":433},{"type":88,"tag":239,"props":1476,"children":1477},{"style":246},[1478],{"type":249,"value":1406},{"type":88,"tag":239,"props":1480,"children":1481},{"style":405},[1482],{"type":249,"value":1483}," TextDecoder",{"type":88,"tag":239,"props":1485,"children":1486},{"style":253},[1487],{"type":249,"value":769},{"type":88,"tag":239,"props":1489,"children":1490},{"style":405},[1491],{"type":249,"value":1492},"decode",{"type":88,"tag":239,"props":1494,"children":1495},{"style":253},[1496],{"type":249,"value":1497},"(input.data);\n",{"type":88,"tag":239,"props":1499,"children":1501},{"class":241,"line":1500},34,[1502,1506,1511,1515,1520,1525,1529],{"type":88,"tag":239,"props":1503,"children":1504},{"style":246},[1505],{"type":249,"value":1434},{"type":88,"tag":239,"props":1507,"children":1508},{"style":425},[1509],{"type":249,"value":1510}," document",{"type":88,"tag":239,"props":1512,"children":1513},{"style":246},[1514],{"type":249,"value":443},{"type":88,"tag":239,"props":1516,"children":1517},{"style":405},[1518],{"type":249,"value":1519}," readBackup",{"type":88,"tag":239,"props":1521,"children":1522},{"style":253},[1523],{"type":249,"value":1524},"(source, ",{"type":88,"tag":239,"props":1526,"children":1527},{"style":274},[1528],{"type":249,"value":1317},{"type":88,"tag":239,"props":1530,"children":1531},{"style":253},[1532],{"type":249,"value":1533},", context.editor.schema);\n",{"type":88,"tag":239,"props":1535,"children":1537},{"class":241,"line":1536},35,[1538,1543,1548,1553,1558,1563,1568,1573,1578],{"type":88,"tag":239,"props":1539,"children":1540},{"style":253},[1541],{"type":249,"value":1542},"        context.",{"type":88,"tag":239,"props":1544,"children":1545},{"style":405},[1546],{"type":249,"value":1547},"commit",{"type":88,"tag":239,"props":1549,"children":1550},{"style":253},[1551],{"type":249,"value":1552},"(() ",{"type":88,"tag":239,"props":1554,"children":1555},{"style":246},[1556],{"type":249,"value":1557},"=>",{"type":88,"tag":239,"props":1559,"children":1560},{"style":253},[1561],{"type":249,"value":1562}," context.editor.commands.",{"type":88,"tag":239,"props":1564,"children":1565},{"style":405},[1566],{"type":249,"value":1567},"replaceDocument",{"type":88,"tag":239,"props":1569,"children":1570},{"style":253},[1571],{"type":249,"value":1572},"(document, { errorOnInvalidContent: ",{"type":88,"tag":239,"props":1574,"children":1575},{"style":425},[1576],{"type":249,"value":1577},"true",{"type":88,"tag":239,"props":1579,"children":1580},{"style":253},[1581],{"type":249,"value":1582}," }));\n",{"type":88,"tag":239,"props":1584,"children":1586},{"class":241,"line":1585},36,[1587],{"type":88,"tag":239,"props":1588,"children":1589},{"style":253},[1590],{"type":249,"value":1591},"      },\n",{"type":88,"tag":239,"props":1593,"children":1595},{"class":241,"line":1594},37,[1596],{"type":88,"tag":239,"props":1597,"children":1598},{"style":253},[1599],{"type":249,"value":1600},"    }],\n",{"type":88,"tag":239,"props":1602,"children":1604},{"class":241,"line":1603},38,[1605],{"type":88,"tag":239,"props":1606,"children":1607},{"style":253},[1608],{"type":249,"value":1609},"  });\n",{"type":88,"tag":239,"props":1611,"children":1613},{"class":241,"line":1612},39,[1614],{"type":88,"tag":239,"props":1615,"children":1616},{"style":253},[1617],{"type":249,"value":1618},"}\n",{"type":88,"tag":1620,"props":1621,"children":1622},"style",{},[1623],{"type":249,"value":1624},"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);}",1793045210288]