[{"data":1,"prerenderedAt":46369},["ShallowReactive",2],{"navigation":3,"i-lucide:gitlab":522,"i-lucide:menu":527,"docs-index":529,"i-lucide:folder":46359,"i-lucide:file-code":46361,"i-lucide:rocket":46363,"i-lucide:shield":46365,"i-lucide:arrow-right":46367},[4],{"title":5,"path":6,"stem":7,"children":8,"page":18},"Docs","\u002Fdocs","docs",[9,173,190,383,497],{"title":10,"path":11,"stem":12,"children":13,"page":18},"Admin","\u002Fdocs\u002Fadmin","docs\u002Fadmin",[14,20,24,28,32,36,40,44,48,52,56,60,64,68,72,76,80,84,88,92,96,100,104,108,112,116,120,124,128,132,136,140,144,148,152,156,160,164,168],{"title":15,"path":16,"stem":17,"new":18,"wrapperKind":19},"Alert Dialog","\u002Fdocs\u002Fadmin\u002Falert-dialog","docs\u002Fadmin\u002Falert-dialog",false,null,{"title":21,"path":22,"stem":23,"new":18,"wrapperKind":19},"Audio Player","\u002Fdocs\u002Fadmin\u002Faudio-player","docs\u002Fadmin\u002Faudio-player",{"title":25,"path":26,"stem":27,"new":18,"wrapperKind":19},"Avatar","\u002Fdocs\u002Fadmin\u002Favatar","docs\u002Fadmin\u002Favatar",{"title":29,"path":30,"stem":31,"new":18,"wrapperKind":19},"Badge","\u002Fdocs\u002Fadmin\u002Fbadge","docs\u002Fadmin\u002Fbadge",{"title":33,"path":34,"stem":35,"new":18,"wrapperKind":19},"Breadcrumb","\u002Fdocs\u002Fadmin\u002Fbreadcrumb","docs\u002Fadmin\u002Fbreadcrumb",{"title":37,"path":38,"stem":39,"new":18,"wrapperKind":19},"Button","\u002Fdocs\u002Fadmin\u002Fbutton","docs\u002Fadmin\u002Fbutton",{"title":41,"path":42,"stem":43,"new":18,"wrapperKind":19},"Checkbox","\u002Fdocs\u002Fadmin\u002Fcheckbox","docs\u002Fadmin\u002Fcheckbox",{"title":45,"path":46,"stem":47,"new":18,"wrapperKind":19},"Color Picker","\u002Fdocs\u002Fadmin\u002Fcolor-picker","docs\u002Fadmin\u002Fcolor-picker",{"title":49,"path":50,"stem":51,"new":18,"wrapperKind":19},"Cropper","\u002Fdocs\u002Fadmin\u002Fcropper","docs\u002Fadmin\u002Fcropper",{"title":53,"path":54,"stem":55,"new":18,"wrapperKind":19},"Date Picker","\u002Fdocs\u002Fadmin\u002Fdate-picker","docs\u002Fadmin\u002Fdate-picker",{"title":57,"path":58,"stem":59,"new":18,"wrapperKind":19},"Dialog","\u002Fdocs\u002Fadmin\u002Fdialog","docs\u002Fadmin\u002Fdialog",{"title":61,"path":62,"stem":63,"new":18,"wrapperKind":19},"Divider","\u002Fdocs\u002Fadmin\u002Fdivider","docs\u002Fadmin\u002Fdivider",{"title":65,"path":66,"stem":67,"new":18,"wrapperKind":19},"Dropdown Menu","\u002Fdocs\u002Fadmin\u002Fdropdown-menu","docs\u002Fadmin\u002Fdropdown-menu",{"title":69,"path":70,"stem":71,"new":18,"wrapperKind":19},"Field","\u002Fdocs\u002Fadmin\u002Ffield","docs\u002Fadmin\u002Ffield",{"title":73,"path":74,"stem":75,"new":18,"wrapperKind":19},"File Upload","\u002Fdocs\u002Fadmin\u002Ffile-upload","docs\u002Fadmin\u002Ffile-upload",{"title":77,"path":78,"stem":79,"new":18,"wrapperKind":19},"Image","\u002Fdocs\u002Fadmin\u002Fimage","docs\u002Fadmin\u002Fimage",{"title":81,"path":82,"stem":83,"new":18,"wrapperKind":19},"Image Upload","\u002Fdocs\u002Fadmin\u002Fimage-upload","docs\u002Fadmin\u002Fimage-upload",{"title":85,"path":86,"stem":87,"new":18,"wrapperKind":19},"Input","\u002Fdocs\u002Fadmin\u002Finput","docs\u002Fadmin\u002Finput",{"title":89,"path":90,"stem":91,"new":18,"wrapperKind":19},"Loading","\u002Fdocs\u002Fadmin\u002Floading","docs\u002Fadmin\u002Floading",{"title":93,"path":94,"stem":95,"new":18,"wrapperKind":19},"Notification","\u002Fdocs\u002Fadmin\u002Fnotification","docs\u002Fadmin\u002Fnotification",{"title":97,"path":98,"stem":99,"new":18,"wrapperKind":19},"Number Field","\u002Fdocs\u002Fadmin\u002Fnumber-field","docs\u002Fadmin\u002Fnumber-field",{"title":101,"path":102,"stem":103,"new":18,"wrapperKind":19},"Overlay","\u002Fdocs\u002Fadmin\u002Foverlay","docs\u002Fadmin\u002Foverlay",{"title":105,"path":106,"stem":107,"new":18,"wrapperKind":19},"Pagination","\u002Fdocs\u002Fadmin\u002Fpagination","docs\u002Fadmin\u002Fpagination",{"title":109,"path":110,"stem":111,"new":18,"wrapperKind":19},"Pdf Viewer","\u002Fdocs\u002Fadmin\u002Fpdf-viewer","docs\u002Fadmin\u002Fpdf-viewer",{"title":113,"path":114,"stem":115,"new":18,"wrapperKind":19},"Progress","\u002Fdocs\u002Fadmin\u002Fprogress","docs\u002Fadmin\u002Fprogress",{"title":117,"path":118,"stem":119,"new":18,"wrapperKind":19},"Radio Group","\u002Fdocs\u002Fadmin\u002Fradio-group","docs\u002Fadmin\u002Fradio-group",{"title":121,"path":122,"stem":123,"new":18,"wrapperKind":19},"Scroll Area","\u002Fdocs\u002Fadmin\u002Fscroll-area","docs\u002Fadmin\u002Fscroll-area",{"title":125,"path":126,"stem":127,"new":18,"wrapperKind":19},"Select","\u002Fdocs\u002Fadmin\u002Fselect","docs\u002Fadmin\u002Fselect",{"title":129,"path":130,"stem":131,"new":18,"wrapperKind":19},"Side Menu","\u002Fdocs\u002Fadmin\u002Fside-menu","docs\u002Fadmin\u002Fside-menu",{"title":133,"path":134,"stem":135,"new":18,"wrapperKind":19},"Stepper","\u002Fdocs\u002Fadmin\u002Fstepper","docs\u002Fadmin\u002Fstepper",{"title":137,"path":138,"stem":139,"new":18,"wrapperKind":19},"Switch","\u002Fdocs\u002Fadmin\u002Fswitch","docs\u002Fadmin\u002Fswitch",{"title":141,"path":142,"stem":143,"new":18,"wrapperKind":19},"Tabs","\u002Fdocs\u002Fadmin\u002Ftabs","docs\u002Fadmin\u002Ftabs",{"title":145,"path":146,"stem":147,"new":18,"wrapperKind":19},"Tag","\u002Fdocs\u002Fadmin\u002Ftag","docs\u002Fadmin\u002Ftag",{"title":149,"path":150,"stem":151,"new":18,"wrapperKind":19},"Textarea","\u002Fdocs\u002Fadmin\u002Ftextarea","docs\u002Fadmin\u002Ftextarea",{"title":153,"path":154,"stem":155,"new":18,"wrapperKind":19},"Timeline","\u002Fdocs\u002Fadmin\u002Ftimeline","docs\u002Fadmin\u002Ftimeline",{"title":157,"path":158,"stem":159,"new":18,"wrapperKind":19},"Tooltip","\u002Fdocs\u002Fadmin\u002Ftooltip","docs\u002Fadmin\u002Ftooltip",{"title":161,"path":162,"stem":163,"new":18,"wrapperKind":19},"Tree","\u002Fdocs\u002Fadmin\u002Ftree","docs\u002Fadmin\u002Ftree",{"title":165,"path":166,"stem":167,"new":18,"wrapperKind":19},"Video Player","\u002Fdocs\u002Fadmin\u002Fvideo-player","docs\u002Fadmin\u002Fvideo-player",{"title":169,"path":170,"stem":171,"new":18,"wrapperKind":172},"Vxe Table","\u002Fdocs\u002Fadmin\u002Fvxe-table","docs\u002Fadmin\u002Fvxe-table","vendor-headed",{"title":174,"path":175,"stem":176,"children":177,"page":18},"Ai","\u002Fdocs\u002Fai","docs\u002Fai",[178,182,186],{"title":179,"path":180,"stem":181,"new":18,"wrapperKind":19},"llms.txt","\u002Fdocs\u002Fai\u002Fllms-txt","docs\u002Fai\u002F1.llms-txt",{"title":183,"path":184,"stem":185,"new":18,"wrapperKind":19},"MCP","\u002Fdocs\u002Fai\u002Fmcp","docs\u002Fai\u002F2.mcp",{"title":187,"path":188,"stem":189,"new":18,"wrapperKind":19},"Agent skill","\u002Fdocs\u002Fai\u002Fskills","docs\u002Fai\u002F3.skills",{"title":191,"path":192,"stem":193,"children":194,"page":18},"Aio Editor","\u002Fdocs\u002Faio-editor","docs\u002Faio-editor",[195,199,203],{"title":196,"path":197,"stem":198,"new":18,"wrapperKind":19},"AIO 編輯器總覽","\u002Fdocs\u002Faio-editor\u002Foverview","docs\u002Faio-editor\u002F1.overview",{"title":200,"path":201,"stem":202,"new":18,"wrapperKind":19},"AioEditor","\u002Fdocs\u002Faio-editor\u002Feditor","docs\u002Faio-editor\u002F2.editor",{"title":204,"path":205,"stem":206,"children":207,"page":18},"Extensions","\u002Fdocs\u002Faio-editor\u002Fextensions","docs\u002Faio-editor\u002F3.extensions",[208,212,216,220,224,228,232,236,240,244,248,252,256,260,264,268,272,276,280,284,288,292,296,300,304,308,312,316,320,324,328,332,335,339,343,347,351,355,359,363,367,371,375,379],{"title":209,"path":210,"stem":211,"new":18,"wrapperKind":19},"Extensions 總覽","\u002Fdocs\u002Faio-editor\u002Fextensions\u002Foverview","docs\u002Faio-editor\u002F3.extensions\u002F1.overview",{"title":213,"path":214,"stem":215,"new":18,"wrapperKind":19},"Subscript","\u002Fdocs\u002Faio-editor\u002Fextensions\u002Fsubscript","docs\u002Faio-editor\u002F3.extensions\u002F10.subscript",{"title":217,"path":218,"stem":219,"new":18,"wrapperKind":19},"Superscript","\u002Fdocs\u002Faio-editor\u002Fextensions\u002Fsuperscript","docs\u002Faio-editor\u002F3.extensions\u002F11.superscript",{"title":221,"path":222,"stem":223,"new":18,"wrapperKind":19},"Document \u002F Text \u002F Gapcursor","\u002Fdocs\u002Faio-editor\u002Fextensions\u002Fschema-base","docs\u002Faio-editor\u002F3.extensions\u002F12.schema-base",{"title":225,"path":226,"stem":227,"new":18,"wrapperKind":19},"Paragraph","\u002Fdocs\u002Faio-editor\u002Fextensions\u002Fparagraph","docs\u002Faio-editor\u002F3.extensions\u002F13.paragraph",{"title":229,"path":230,"stem":231,"new":18,"wrapperKind":19},"Heading","\u002Fdocs\u002Faio-editor\u002Fextensions\u002Fheading","docs\u002Faio-editor\u002F3.extensions\u002F14.heading",{"title":233,"path":234,"stem":235,"new":18,"wrapperKind":19},"Blockquote","\u002Fdocs\u002Faio-editor\u002Fextensions\u002Fblockquote","docs\u002Faio-editor\u002F3.extensions\u002F15.blockquote",{"title":237,"path":238,"stem":239,"new":18,"wrapperKind":19},"HorizontalRule","\u002Fdocs\u002Faio-editor\u002Fextensions\u002Fhorizontal-rule","docs\u002Faio-editor\u002F3.extensions\u002F16.horizontal-rule",{"title":241,"path":242,"stem":243,"new":18,"wrapperKind":19},"HardBreak","\u002Fdocs\u002Faio-editor\u002Fextensions\u002Fhard-break","docs\u002Faio-editor\u002F3.extensions\u002F17.hard-break",{"title":245,"path":246,"stem":247,"new":18,"wrapperKind":19},"CodeBlock","\u002Fdocs\u002Faio-editor\u002Fextensions\u002Fcode-block","docs\u002Faio-editor\u002F3.extensions\u002F18.code-block",{"title":249,"path":250,"stem":251,"new":18,"wrapperKind":19},"BulletList","\u002Fdocs\u002Faio-editor\u002Fextensions\u002Fbullet-list","docs\u002Faio-editor\u002F3.extensions\u002F19.bullet-list",{"title":253,"path":254,"stem":255,"new":18,"wrapperKind":19},"Bold","\u002Fdocs\u002Faio-editor\u002Fextensions\u002Fbold","docs\u002Faio-editor\u002F3.extensions\u002F2.bold",{"title":257,"path":258,"stem":259,"new":18,"wrapperKind":19},"OrderedList","\u002Fdocs\u002Faio-editor\u002Fextensions\u002Fordered-list","docs\u002Faio-editor\u002F3.extensions\u002F20.ordered-list",{"title":261,"path":262,"stem":263,"new":18,"wrapperKind":19},"ListItem","\u002Fdocs\u002Faio-editor\u002Fextensions\u002Flist-item","docs\u002Faio-editor\u002F3.extensions\u002F21.list-item",{"title":265,"path":266,"stem":267,"new":18,"wrapperKind":19},"TaskList","\u002Fdocs\u002Faio-editor\u002Fextensions\u002Ftask-list","docs\u002Faio-editor\u002F3.extensions\u002F22.task-list",{"title":269,"path":270,"stem":271,"new":18,"wrapperKind":19},"TaskItem","\u002Fdocs\u002Faio-editor\u002Fextensions\u002Ftask-item","docs\u002Faio-editor\u002F3.extensions\u002F23.task-item",{"title":273,"path":274,"stem":275,"new":18,"wrapperKind":19},"ListKeyMap","\u002Fdocs\u002Faio-editor\u002Fextensions\u002Flist-keymap","docs\u002Faio-editor\u002F3.extensions\u002F24.list-keymap",{"title":277,"path":278,"stem":279,"new":18,"wrapperKind":19},"TextAlign","\u002Fdocs\u002Faio-editor\u002Fextensions\u002Ftext-align","docs\u002Faio-editor\u002F3.extensions\u002F25.text-align",{"title":281,"path":282,"stem":283,"new":18,"wrapperKind":19},"Indent","\u002Fdocs\u002Faio-editor\u002Fextensions\u002Findent","docs\u002Faio-editor\u002F3.extensions\u002F26.indent",{"title":285,"path":286,"stem":287,"new":18,"wrapperKind":19},"LineHeight","\u002Fdocs\u002Faio-editor\u002Fextensions\u002Fline-height","docs\u002Faio-editor\u002F3.extensions\u002F27.line-height",{"title":289,"path":290,"stem":291,"new":18,"wrapperKind":19},"FontFamily","\u002Fdocs\u002Faio-editor\u002Fextensions\u002Ffont-family","docs\u002Faio-editor\u002F3.extensions\u002F28.font-family",{"title":293,"path":294,"stem":295,"new":18,"wrapperKind":19},"FontSize","\u002Fdocs\u002Faio-editor\u002Fextensions\u002Ffont-size","docs\u002Faio-editor\u002F3.extensions\u002F29.font-size",{"title":297,"path":298,"stem":299,"new":18,"wrapperKind":19},"Italic","\u002Fdocs\u002Faio-editor\u002Fextensions\u002Fitalic","docs\u002Faio-editor\u002F3.extensions\u002F3.italic",{"title":301,"path":302,"stem":303,"new":18,"wrapperKind":19},"UndoRedo","\u002Fdocs\u002Faio-editor\u002Fextensions\u002Fundo-redo","docs\u002Faio-editor\u002F3.extensions\u002F30.undo-redo",{"title":305,"path":306,"stem":307,"new":18,"wrapperKind":19},"Dropcursor","\u002Fdocs\u002Faio-editor\u002Fextensions\u002Fdropcursor","docs\u002Faio-editor\u002F3.extensions\u002F31.dropcursor",{"title":309,"path":310,"stem":311,"new":18,"wrapperKind":19},"Placeholder","\u002Fdocs\u002Faio-editor\u002Fextensions\u002Fplaceholder","docs\u002Faio-editor\u002F3.extensions\u002F32.placeholder",{"title":313,"path":314,"stem":315,"new":18,"wrapperKind":19},"CharacterCount","\u002Fdocs\u002Faio-editor\u002Fextensions\u002Fcharacter-count","docs\u002Faio-editor\u002F3.extensions\u002F33.character-count",{"title":317,"path":318,"stem":319,"new":18,"wrapperKind":19},"KeydownHandler","\u002Fdocs\u002Faio-editor\u002Fextensions\u002Fkeydown-handler","docs\u002Faio-editor\u002F3.extensions\u002F34.keydown-handler",{"title":321,"path":322,"stem":323,"new":18,"wrapperKind":19},"AutoJoiner","\u002Fdocs\u002Faio-editor\u002Fextensions\u002Fauto-joiner","docs\u002Faio-editor\u002F3.extensions\u002F35.auto-joiner",{"title":325,"path":326,"stem":327,"new":18,"wrapperKind":19},"CopyData","\u002Fdocs\u002Faio-editor\u002Fextensions\u002Fcopy-data","docs\u002Faio-editor\u002F3.extensions\u002F36.copy-data",{"title":329,"path":330,"stem":331,"new":18,"wrapperKind":19},"Link","\u002Fdocs\u002Faio-editor\u002Fextensions\u002Flink","docs\u002Faio-editor\u002F3.extensions\u002F37.link",{"title":77,"path":333,"stem":334,"new":18,"wrapperKind":19},"\u002Fdocs\u002Faio-editor\u002Fextensions\u002Fimage","docs\u002Faio-editor\u002F3.extensions\u002F38.image",{"title":336,"path":337,"stem":338,"new":18,"wrapperKind":19},"Video","\u002Fdocs\u002Faio-editor\u002Fextensions\u002Fvideo","docs\u002Faio-editor\u002F3.extensions\u002F39.video",{"title":340,"path":341,"stem":342,"new":18,"wrapperKind":19},"Strike","\u002Fdocs\u002Faio-editor\u002Fextensions\u002Fstrike","docs\u002Faio-editor\u002F3.extensions\u002F4.strike",{"title":344,"path":345,"stem":346,"new":18,"wrapperKind":19},"TableKit","\u002Fdocs\u002Faio-editor\u002Fextensions\u002Ftable-kit","docs\u002Faio-editor\u002F3.extensions\u002F40.table-kit",{"title":348,"path":349,"stem":350,"new":18,"wrapperKind":19},"Mention","\u002Fdocs\u002Faio-editor\u002Fextensions\u002Fmention","docs\u002Faio-editor\u002F3.extensions\u002F41.mention",{"title":352,"path":353,"stem":354,"new":18,"wrapperKind":19},"HashTag","\u002Fdocs\u002Faio-editor\u002Fextensions\u002Fhash-tag","docs\u002Faio-editor\u002F3.extensions\u002F42.hash-tag",{"title":356,"path":357,"stem":358,"new":18,"wrapperKind":19},"Bubble Menu","\u002Fdocs\u002Faio-editor\u002Fextensions\u002Fbubble-menu","docs\u002Faio-editor\u002F3.extensions\u002F43.bubble-menu",{"title":360,"path":361,"stem":362,"new":18,"wrapperKind":19},"Drag Handle","\u002Fdocs\u002Faio-editor\u002Fextensions\u002Fdrag-handle","docs\u002Faio-editor\u002F3.extensions\u002F44.drag-handle",{"title":364,"path":365,"stem":366,"new":18,"wrapperKind":19},"Underline","\u002Fdocs\u002Faio-editor\u002Fextensions\u002Funderline","docs\u002Faio-editor\u002F3.extensions\u002F5.underline",{"title":368,"path":369,"stem":370,"new":18,"wrapperKind":19},"Code","\u002Fdocs\u002Faio-editor\u002Fextensions\u002Fcode","docs\u002Faio-editor\u002F3.extensions\u002F6.code",{"title":372,"path":373,"stem":374,"new":18,"wrapperKind":19},"TextStyle","\u002Fdocs\u002Faio-editor\u002Fextensions\u002Ftext-style","docs\u002Faio-editor\u002F3.extensions\u002F7.text-style",{"title":376,"path":377,"stem":378,"new":18,"wrapperKind":19},"Color","\u002Fdocs\u002Faio-editor\u002Fextensions\u002Fcolor","docs\u002Faio-editor\u002F3.extensions\u002F8.color",{"title":380,"path":381,"stem":382,"new":18,"wrapperKind":19},"Highlight","\u002Fdocs\u002Faio-editor\u002Fextensions\u002Fhighlight","docs\u002Faio-editor\u002F3.extensions\u002F9.highlight",{"title":384,"path":385,"stem":386,"children":387,"page":18},"Editor","\u002Fdocs\u002Feditor","docs\u002Feditor",[388,392,396,412],{"title":389,"path":390,"stem":391,"new":18,"wrapperKind":19},"編輯器總覽","\u002Fdocs\u002Feditor\u002Foverview","docs\u002Feditor\u002F1.overview",{"title":393,"path":394,"stem":395,"new":18,"wrapperKind":19},"自訂指南","\u002Fdocs\u002Feditor\u002Fcustomization","docs\u002Feditor\u002F2.customization",{"title":397,"path":398,"stem":399,"children":400,"page":18},"Core","\u002Fdocs\u002Feditor\u002Fcore","docs\u002Feditor\u002F3.core",[401,404,408],{"title":384,"path":402,"stem":403,"new":18,"wrapperKind":19},"\u002Fdocs\u002Feditor\u002Fcore\u002Feditor","docs\u002Feditor\u002F3.core\u002F1.editor",{"title":405,"path":406,"stem":407,"new":18,"wrapperKind":19},"Rich Editor","\u002Fdocs\u002Feditor\u002Fcore\u002Frich-editor","docs\u002Feditor\u002F3.core\u002F2.rich-editor",{"title":409,"path":410,"stem":411,"new":18,"wrapperKind":19},"Editor Toolbar","\u002Fdocs\u002Feditor\u002Fcore\u002Ftoolbar","docs\u002Feditor\u002F3.core\u002F3.toolbar",{"title":413,"path":414,"stem":415,"children":416,"page":18},"Addons","\u002Fdocs\u002Feditor\u002Faddons","docs\u002Feditor\u002F4.addons",[417,421,425,429,433,437,441,445,449,453,457,461,465,469,473,477,481,485,489,493],{"title":418,"path":419,"stem":420,"new":18,"wrapperKind":19},"Editor Image","\u002Fdocs\u002Feditor\u002Faddons\u002Fimage","docs\u002Feditor\u002F4.addons\u002F1.image",{"title":422,"path":423,"stem":424,"new":18,"wrapperKind":19},"Editor Emoji Menu","\u002Fdocs\u002Feditor\u002Faddons\u002Femoji","docs\u002Feditor\u002F4.addons\u002F10.emoji",{"title":426,"path":427,"stem":428,"new":18,"wrapperKind":19},"Editor Suggestion Menu","\u002Fdocs\u002Feditor\u002Faddons\u002Fsuggestion","docs\u002Feditor\u002F4.addons\u002F11.suggestion",{"title":430,"path":431,"stem":432,"new":18,"wrapperKind":19},"Editor Link Bubble","\u002Fdocs\u002Feditor\u002Faddons\u002Flink-bubble","docs\u002Feditor\u002F4.addons\u002F12.link-bubble",{"title":434,"path":435,"stem":436,"new":18,"wrapperKind":19},"Editor List Trash","\u002Fdocs\u002Feditor\u002Faddons\u002Flist-trash","docs\u002Feditor\u002F4.addons\u002F13.list-trash",{"title":438,"path":439,"stem":440,"new":18,"wrapperKind":19},"Editor Drag Handle","\u002Fdocs\u002Feditor\u002Faddons\u002Fdrag-handle","docs\u002Feditor\u002F4.addons\u002F14.drag-handle",{"title":442,"path":443,"stem":444,"new":18,"wrapperKind":19},"Editor Table","\u002Fdocs\u002Feditor\u002Faddons\u002Ftable","docs\u002Feditor\u002F4.addons\u002F15.table",{"title":446,"path":447,"stem":448,"new":18,"wrapperKind":19},"Editor Superscript \u002F Subscript","\u002Fdocs\u002Feditor\u002Faddons\u002Fsuperscript-subscript","docs\u002Feditor\u002F4.addons\u002F16.superscript-subscript",{"title":450,"path":451,"stem":452,"new":18,"wrapperKind":19},"Editor Video","\u002Fdocs\u002Feditor\u002Faddons\u002Fvideo","docs\u002Feditor\u002F4.addons\u002F17.video",{"title":454,"path":455,"stem":456,"new":18,"wrapperKind":19},"Editor YouTube","\u002Fdocs\u002Feditor\u002Faddons\u002Fyoutube","docs\u002Feditor\u002F4.addons\u002F18.youtube",{"title":458,"path":459,"stem":460,"new":18,"wrapperKind":19},"Editor Font Size","\u002Fdocs\u002Feditor\u002Faddons\u002Ffont-size","docs\u002Feditor\u002F4.addons\u002F19.font-size",{"title":462,"path":463,"stem":464,"new":18,"wrapperKind":19},"Editor Markdown","\u002Fdocs\u002Feditor\u002Faddons\u002Fmarkdown","docs\u002Feditor\u002F4.addons\u002F2.markdown",{"title":466,"path":467,"stem":468,"new":18,"wrapperKind":19},"Editor Code Block","\u002Fdocs\u002Feditor\u002Faddons\u002Fcode-block","docs\u002Feditor\u002F4.addons\u002F20.code-block",{"title":470,"path":471,"stem":472,"new":18,"wrapperKind":19},"Editor Text Color","\u002Fdocs\u002Feditor\u002Faddons\u002Ftext-color","docs\u002Feditor\u002F4.addons\u002F3.text-color",{"title":474,"path":475,"stem":476,"new":18,"wrapperKind":19},"Editor Highlight","\u002Fdocs\u002Feditor\u002Faddons\u002Fhighlight","docs\u002Feditor\u002F4.addons\u002F4.highlight",{"title":478,"path":479,"stem":480,"new":18,"wrapperKind":19},"Editor TextAlign","\u002Fdocs\u002Feditor\u002Faddons\u002Ftext-align","docs\u002Feditor\u002F4.addons\u002F5.text-align",{"title":482,"path":483,"stem":484,"new":18,"wrapperKind":19},"Editor Placeholder","\u002Fdocs\u002Feditor\u002Faddons\u002Fplaceholder","docs\u002Feditor\u002F4.addons\u002F6.placeholder",{"title":486,"path":487,"stem":488,"new":18,"wrapperKind":19},"Editor TaskList","\u002Fdocs\u002Feditor\u002Faddons\u002Ftask-list","docs\u002Feditor\u002F4.addons\u002F7.task-list",{"title":490,"path":491,"stem":492,"new":18,"wrapperKind":19},"Editor Indent","\u002Fdocs\u002Feditor\u002Faddons\u002Findent","docs\u002Feditor\u002F4.addons\u002F8.indent",{"title":494,"path":495,"stem":496,"new":18,"wrapperKind":19},"Editor Mention Menu","\u002Fdocs\u002Feditor\u002Faddons\u002Fmention","docs\u002Feditor\u002F4.addons\u002F9.mention",{"title":498,"path":499,"stem":500,"children":501,"page":18},"Get Started","\u002Fdocs\u002Fget-started","docs\u002Fget-started",[502,506,510,514,518],{"title":503,"path":504,"stem":505,"new":18,"wrapperKind":19},"介紹","\u002Fdocs\u002Fget-started\u002Fintroduction","docs\u002Fget-started\u002F1.introduction",{"title":507,"path":508,"stem":509,"new":18,"wrapperKind":19},"安裝","\u002Fdocs\u002Fget-started\u002Finstallation","docs\u002Fget-started\u002F2.installation",{"title":511,"path":512,"stem":513,"new":18,"wrapperKind":19},"主題","\u002Fdocs\u002Fget-started\u002Ftheming","docs\u002Fget-started\u002F3.theming",{"title":515,"path":516,"stem":517,"new":18,"wrapperKind":19},"Type-safe","\u002Fdocs\u002Fget-started\u002Ftype-safe","docs\u002Fget-started\u002F4.type-safe",{"title":519,"path":520,"stem":521,"new":18,"wrapperKind":19},"Headed UI","\u002Fdocs\u002Fget-started\u002Fheaded-ui","docs\u002Fget-started\u002F5.headed-ui",{"left":523,"top":523,"width":524,"height":524,"rotate":523,"vFlip":18,"hFlip":18,"body":525,"hidden":526},0,24,"\u003Cpath fill=\"none\" stroke=\"currentColor\" stroke-linecap=\"round\" stroke-linejoin=\"round\" stroke-width=\"2\" d=\"m22 13.29l-3.33-10a.4.4 0 0 0-.14-.18a.38.38 0 0 0-.22-.11a.4.4 0 0 0-.23.07a.4.4 0 0 0-.14.18l-2.26 6.67H8.32L6.1 3.26a.4.4 0 0 0-.1-.18a.38.38 0 0 0-.26-.08a.4.4 0 0 0-.23.07a.4.4 0 0 0-.14.18L2 13.29a.74.74 0 0 0 .27.83L12 21l9.69-6.88a.71.71 0 0 0 .31-.83\"\u002F>",true,{"left":523,"top":523,"width":524,"height":524,"rotate":523,"vFlip":18,"hFlip":18,"body":528},"\u003Cpath fill=\"none\" stroke=\"currentColor\" stroke-linecap=\"round\" stroke-linejoin=\"round\" stroke-width=\"2\" d=\"M4 5h16M4 12h16M4 19h16\"\u002F>",[530,1022,1668,1879,2039,2391,2622,3102,3767,4683,5023,5450,5576,6378,7138,7680,7974,8466,8803,9298,9479,9738,10261,10664,10999,11168,11472,11623,12452,13102,13556,13697,14097,14236,14442,14905,15143,15403,16085,16974,17182,17516,17657,18076,18610,19507,19662,19801,19863,19982,20216,20359,20459,20606,20965,21150,21367,21539,21690,21826,21961,22145,22357,22636,22886,22998,23188,23332,23501,23606,23841,24047,24199,24268,24339,24688,25061,25214,25355,25691,26077,26214,26738,27018,27153,27299,27419,27595,27764,28026,29709,29820,31663,32037,32780,33571,34113,34461,34814,35191,36006,36664,37282,38121,39029,39495,40131,40792,41416,42144,42500,43141,43789,45120,45205,46039,46116,46244],{"id":531,"title":15,"body":532,"component":526,"description":1014,"extension":1015,"links":1016,"meta":1019,"navigation":526,"new":18,"path":16,"seo":1020,"stem":17,"wrapperKind":19,"__hash__":1021},"docs\u002Fdocs\u002Fadmin\u002Falert-dialog.md",{"type":533,"value":534,"toc":993},"minimark",[535,538,572,681,684,688,691,704,714,717,721,724,937,939,943,945,948,950,953,955,958,960,963,965,968,970,973,975,978,980,983,986,989],[536,537,507],"h2",{"id":507},[539,540,547],"pre",{"className":541,"code":542,"filename":543,"language":544,"meta":545,"style":546},"language-bash shiki shiki-themes material-theme-lighter material-theme material-theme-palenight","pnpm dlx shadcn-vue add @admin\u002Falert-dialog\n","Terminal","bash","icon=i-lucide-terminal","",[548,549,550],"code",{"__ignoreMap":546},[551,552,555,559,563,566,569],"span",{"class":553,"line":554},"line",1,[551,556,558],{"class":557},"sBMFI","pnpm",[551,560,562],{"class":561},"sfazB"," dlx",[551,564,565],{"class":561}," shadcn-vue",[551,567,568],{"class":561}," add",[551,570,571],{"class":561}," @admin\u002Falert-dialog\n",[539,573,577],{"className":574,"code":575,"language":576,"meta":546,"style":546},"language-ts shiki shiki-themes material-theme-lighter material-theme material-theme-palenight","import {\n  AdminAlertDialog,\n  AdminAlertDialogAction,\n  AdminAlertDialogCancel,\n  AdminAlertDialogContent,\n  AdminAlertDialogDescription,\n  AdminAlertDialogFooter,\n  AdminAlertDialogHeader,\n  AdminAlertDialogTitle,\n  AdminAlertDialogTrigger,\n} from '@\u002Fcomponents\u002Fadmin\u002Falert-dialog'\n","ts",[548,578,579,589,599,607,615,623,631,639,647,655,663],{"__ignoreMap":546},[551,580,581,585],{"class":553,"line":554},[551,582,584],{"class":583},"s7zQu","import",[551,586,588],{"class":587},"sMK4o"," {\n",[551,590,592,596],{"class":553,"line":591},2,[551,593,595],{"class":594},"sTEyZ","  AdminAlertDialog",[551,597,598],{"class":587},",\n",[551,600,602,605],{"class":553,"line":601},3,[551,603,604],{"class":594},"  AdminAlertDialogAction",[551,606,598],{"class":587},[551,608,610,613],{"class":553,"line":609},4,[551,611,612],{"class":594},"  AdminAlertDialogCancel",[551,614,598],{"class":587},[551,616,618,621],{"class":553,"line":617},5,[551,619,620],{"class":594},"  AdminAlertDialogContent",[551,622,598],{"class":587},[551,624,626,629],{"class":553,"line":625},6,[551,627,628],{"class":594},"  AdminAlertDialogDescription",[551,630,598],{"class":587},[551,632,634,637],{"class":553,"line":633},7,[551,635,636],{"class":594},"  AdminAlertDialogFooter",[551,638,598],{"class":587},[551,640,642,645],{"class":553,"line":641},8,[551,643,644],{"class":594},"  AdminAlertDialogHeader",[551,646,598],{"class":587},[551,648,650,653],{"class":553,"line":649},9,[551,651,652],{"class":594},"  AdminAlertDialogTitle",[551,654,598],{"class":587},[551,656,658,661],{"class":553,"line":657},10,[551,659,660],{"class":594},"  AdminAlertDialogTrigger",[551,662,598],{"class":587},[551,664,666,669,672,675,678],{"class":553,"line":665},11,[551,667,668],{"class":587},"}",[551,670,671],{"class":583}," from",[551,673,674],{"class":587}," '",[551,676,677],{"class":561},"@\u002Fcomponents\u002Fadmin\u002Falert-dialog",[551,679,680],{"class":587},"'\n",[536,682,683],{"id":683},"用法",[685,686],"component-preview",{"name":687},"AlertDialogDemo",[536,689,690],{"id":690},"場景",[692,693,695,696,703],"h3",{"id":694},"以-overlay-命令式開啟","以 overlay ",[697,698,702],"a",{"href":699,"rel":700},"https:\u002F\u002Fui.nuxt.com\u002Fdocs\u002Fcomposables\u002Fuse-overlay",[701],"nofollow","命令式","開啟",[705,706,707,708,713],"p",{},"需要由 composable 驅動時，搭配 ",[697,709,710],{"href":102},[548,711,712],{},"useOverlay()","。",[685,715],{"name":716},"AlertDialogOverlayDemo",[536,718,720],{"id":719},"api-參考","API 參考",[692,722,723],{"id":723},"組成",[539,725,729],{"className":726,"code":727,"language":728,"meta":546,"style":546},"language-vue shiki shiki-themes material-theme-lighter material-theme material-theme-palenight","\u003Ctemplate>\n  \u003Cadmin-alert-dialog v-model:open=\"isOpen\">\n    \u003Cadmin-alert-dialog-trigger>觸發\u003C\u002Fadmin-alert-dialog-trigger>\n    \u003Cadmin-alert-dialog-content>\n      \u003Cadmin-alert-dialog-header>\n        \u003Cadmin-alert-dialog-title>標題\u003C\u002Fadmin-alert-dialog-title>\n        \u003Cadmin-alert-dialog-description>說明文字\u003C\u002Fadmin-alert-dialog-description>\n      \u003C\u002Fadmin-alert-dialog-header>\n      \u003Cadmin-alert-dialog-footer>\n        \u003Cadmin-alert-dialog-cancel>取消\u003C\u002Fadmin-alert-dialog-cancel>\n        \u003Cadmin-alert-dialog-action>確認\u003C\u002Fadmin-alert-dialog-action>\n      \u003C\u002Fadmin-alert-dialog-footer>\n    \u003C\u002Fadmin-alert-dialog-content>\n  \u003C\u002Fadmin-alert-dialog>\n\u003C\u002Ftemplate>\n","vue",[548,730,731,743,768,789,798,808,827,845,854,863,881,899,908,918,928],{"__ignoreMap":546},[551,732,733,736,740],{"class":553,"line":554},[551,734,735],{"class":587},"\u003C",[551,737,739],{"class":738},"swJcz","template",[551,741,742],{"class":587},">\n",[551,744,745,748,751,755,758,761,764,766],{"class":553,"line":591},[551,746,747],{"class":587},"  \u003C",[551,749,750],{"class":738},"admin-alert-dialog",[551,752,754],{"class":753},"spNyl"," v-model:open",[551,756,757],{"class":587},"=",[551,759,760],{"class":587},"\"",[551,762,763],{"class":561},"isOpen",[551,765,760],{"class":587},[551,767,742],{"class":587},[551,769,770,773,776,779,782,785,787],{"class":553,"line":601},[551,771,772],{"class":587},"    \u003C",[551,774,775],{"class":738},"admin-alert-dialog-trigger",[551,777,778],{"class":587},">",[551,780,781],{"class":594},"觸發",[551,783,784],{"class":587},"\u003C\u002F",[551,786,775],{"class":738},[551,788,742],{"class":587},[551,790,791,793,796],{"class":553,"line":609},[551,792,772],{"class":587},[551,794,795],{"class":738},"admin-alert-dialog-content",[551,797,742],{"class":587},[551,799,800,803,806],{"class":553,"line":617},[551,801,802],{"class":587},"      \u003C",[551,804,805],{"class":738},"admin-alert-dialog-header",[551,807,742],{"class":587},[551,809,810,813,816,818,821,823,825],{"class":553,"line":625},[551,811,812],{"class":587},"        \u003C",[551,814,815],{"class":738},"admin-alert-dialog-title",[551,817,778],{"class":587},[551,819,820],{"class":594},"標題",[551,822,784],{"class":587},[551,824,815],{"class":738},[551,826,742],{"class":587},[551,828,829,831,834,836,839,841,843],{"class":553,"line":633},[551,830,812],{"class":587},[551,832,833],{"class":738},"admin-alert-dialog-description",[551,835,778],{"class":587},[551,837,838],{"class":594},"說明文字",[551,840,784],{"class":587},[551,842,833],{"class":738},[551,844,742],{"class":587},[551,846,847,850,852],{"class":553,"line":641},[551,848,849],{"class":587},"      \u003C\u002F",[551,851,805],{"class":738},[551,853,742],{"class":587},[551,855,856,858,861],{"class":553,"line":649},[551,857,802],{"class":587},[551,859,860],{"class":738},"admin-alert-dialog-footer",[551,862,742],{"class":587},[551,864,865,867,870,872,875,877,879],{"class":553,"line":657},[551,866,812],{"class":587},[551,868,869],{"class":738},"admin-alert-dialog-cancel",[551,871,778],{"class":587},[551,873,874],{"class":594},"取消",[551,876,784],{"class":587},[551,878,869],{"class":738},[551,880,742],{"class":587},[551,882,883,885,888,890,893,895,897],{"class":553,"line":665},[551,884,812],{"class":587},[551,886,887],{"class":738},"admin-alert-dialog-action",[551,889,778],{"class":587},[551,891,892],{"class":594},"確認",[551,894,784],{"class":587},[551,896,887],{"class":738},[551,898,742],{"class":587},[551,900,902,904,906],{"class":553,"line":901},12,[551,903,849],{"class":587},[551,905,860],{"class":738},[551,907,742],{"class":587},[551,909,911,914,916],{"class":553,"line":910},13,[551,912,913],{"class":587},"    \u003C\u002F",[551,915,795],{"class":738},[551,917,742],{"class":587},[551,919,921,924,926],{"class":553,"line":920},14,[551,922,923],{"class":587},"  \u003C\u002F",[551,925,750],{"class":738},[551,927,742],{"class":587},[551,929,931,933,935],{"class":553,"line":930},15,[551,932,784],{"class":587},[551,934,739],{"class":738},[551,936,742],{"class":587},[692,938,750],{"id":750},[940,941],"admin-api-table",{"component":942},"AdminAlertDialog",[692,944,795],{"id":795},[940,946],{"component":947},"AdminAlertDialogContent",[692,949,887],{"id":887},[940,951],{"component":952},"AdminAlertDialogAction",[692,954,869],{"id":869},[940,956],{"component":957},"AdminAlertDialogCancel",[692,959,833],{"id":833},[940,961],{"component":962},"AdminAlertDialogDescription",[692,964,860],{"id":860},[940,966],{"component":967},"AdminAlertDialogFooter",[692,969,805],{"id":805},[940,971],{"component":972},"AdminAlertDialogHeader",[692,974,815],{"id":815},[940,976],{"component":977},"AdminAlertDialogTitle",[692,979,775],{"id":775},[940,981],{"component":982},"AdminAlertDialogTrigger",[536,984,985],{"id":985},"更新紀錄",[987,988],"admin-changelog",{"component":942},[990,991,992],"style",{},"html pre.shiki code .sBMFI, html code.shiki .sBMFI{--shiki-light:#E2931D;--shiki-default:#FFCB6B;--shiki-dark:#FFCB6B}html pre.shiki code .sfazB, html code.shiki .sfazB{--shiki-light:#91B859;--shiki-default:#C3E88D;--shiki-dark:#C3E88D}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 pre.shiki code .s7zQu, html code.shiki .s7zQu{--shiki-light:#39ADB5;--shiki-light-font-style:italic;--shiki-default:#89DDFF;--shiki-default-font-style:italic;--shiki-dark:#89DDFF;--shiki-dark-font-style:italic}html pre.shiki code .sMK4o, html code.shiki .sMK4o{--shiki-light:#39ADB5;--shiki-default:#89DDFF;--shiki-dark:#89DDFF}html pre.shiki code .sTEyZ, html code.shiki .sTEyZ{--shiki-light:#90A4AE;--shiki-default:#EEFFFF;--shiki-dark:#BABED8}html pre.shiki code .swJcz, html code.shiki .swJcz{--shiki-light:#E53935;--shiki-default:#F07178;--shiki-dark:#F07178}html pre.shiki code .spNyl, html code.shiki .spNyl{--shiki-light:#9C3EDA;--shiki-default:#C792EA;--shiki-dark:#C792EA}",{"title":546,"searchDepth":601,"depth":601,"links":994},[995,996,997,1001,1013],{"id":507,"depth":591,"text":507},{"id":683,"depth":591,"text":683},{"id":690,"depth":591,"text":690,"children":998},[999],{"id":694,"depth":601,"text":1000},"以 overlay 命令式開啟",{"id":719,"depth":591,"text":720,"children":1002},[1003,1004,1005,1006,1007,1008,1009,1010,1011,1012],{"id":723,"depth":601,"text":723},{"id":750,"depth":601,"text":750},{"id":795,"depth":601,"text":795},{"id":887,"depth":601,"text":887},{"id":869,"depth":601,"text":869},{"id":833,"depth":601,"text":833},{"id":860,"depth":601,"text":860},{"id":805,"depth":601,"text":805},{"id":815,"depth":601,"text":815},{"id":775,"depth":601,"text":775},{"id":985,"depth":591,"text":985},"高風險操作確認用的強制對話框；需明確回應後才能關閉。","md",{"doc":1017,"api":1018},"https:\u002F\u002Freka-ui.com\u002Fdocs\u002Fcomponents\u002Falert-dialog","https:\u002F\u002Freka-ui.com\u002Fdocs\u002Fcomponents\u002Falert-dialog#api-reference",{},{"title":15,"description":1014},"vLhxbLg7e6-ZwSqkjoOq0SvMYxDo8NgfNy5mFsYrXRM",{"id":1023,"title":21,"body":1024,"component":526,"description":1662,"extension":1015,"links":1663,"meta":1665,"navigation":526,"new":18,"path":22,"seo":1666,"stem":23,"wrapperKind":19,"__hash__":1667},"docs\u002Fdocs\u002Fadmin\u002Faudio-player.md",{"type":533,"value":1025,"toc":1646},[1026,1028,1046,1117,1132,1138,1239,1244,1402,1404,1411,1414,1416,1418,1519,1521,1524,1526,1529,1531,1534,1536,1539,1541,1544,1546,1549,1551,1554,1557,1639,1641,1643],[536,1027,507],{"id":507},[539,1029,1031],{"className":541,"code":1030,"filename":543,"language":544,"meta":545,"style":546},"pnpm dlx shadcn-vue add @admin\u002Faudio-player\n",[548,1032,1033],{"__ignoreMap":546},[551,1034,1035,1037,1039,1041,1043],{"class":553,"line":554},[551,1036,558],{"class":557},[551,1038,562],{"class":561},[551,1040,565],{"class":561},[551,1042,568],{"class":561},[551,1044,1045],{"class":561}," @admin\u002Faudio-player\n",[539,1047,1049],{"className":574,"code":1048,"language":576,"meta":546,"style":546},"import {\n  AdminAudioPlayer,\n  AdminAudioPlayerControls,\n  AdminAudioPlayerProgress,\n  AdminAudioPlayerSettings,\n  AdminAudioPlayerTime,\n  AdminAudioPlayerToolbar,\n  AdminAudioPlayerVolume\n} from '@\u002Fcomponents\u002Fadmin\u002Faudio-player'\n",[548,1050,1051,1057,1064,1071,1078,1085,1092,1099,1104],{"__ignoreMap":546},[551,1052,1053,1055],{"class":553,"line":554},[551,1054,584],{"class":583},[551,1056,588],{"class":587},[551,1058,1059,1062],{"class":553,"line":591},[551,1060,1061],{"class":594},"  AdminAudioPlayer",[551,1063,598],{"class":587},[551,1065,1066,1069],{"class":553,"line":601},[551,1067,1068],{"class":594},"  AdminAudioPlayerControls",[551,1070,598],{"class":587},[551,1072,1073,1076],{"class":553,"line":609},[551,1074,1075],{"class":594},"  AdminAudioPlayerProgress",[551,1077,598],{"class":587},[551,1079,1080,1083],{"class":553,"line":617},[551,1081,1082],{"class":594},"  AdminAudioPlayerSettings",[551,1084,598],{"class":587},[551,1086,1087,1090],{"class":553,"line":625},[551,1088,1089],{"class":594},"  AdminAudioPlayerTime",[551,1091,598],{"class":587},[551,1093,1094,1097],{"class":553,"line":633},[551,1095,1096],{"class":594},"  AdminAudioPlayerToolbar",[551,1098,598],{"class":587},[551,1100,1101],{"class":553,"line":641},[551,1102,1103],{"class":594},"  AdminAudioPlayerVolume\n",[551,1105,1106,1108,1110,1112,1115],{"class":553,"line":649},[551,1107,668],{"class":587},[551,1109,671],{"class":583},[551,1111,674],{"class":587},[551,1113,1114],{"class":561},"@\u002Fcomponents\u002Fadmin\u002Faudio-player",[551,1116,680],{"class":587},[705,1118,1119,1120,1123,1124,1127,1128,1131],{},"vidstack 是一組 web components（",[548,1121,1122],{},"\u003Cmedia-player>"," \u002F ",[548,1125,1126],{},"\u003Cmedia-provider>"," \u002F …），需要告訴 Vue 編譯器把它們當成 native custom element，否則 dev console 會出現 ",[548,1129,1130],{},"[Vue warn]: Failed to resolve component: media-*"," 警告。",[705,1133,1134],{},[1135,1136,1137],"strong",{},"Nuxt 3 \u002F 4",[539,1139,1142],{"className":574,"code":1140,"filename":1141,"language":576,"meta":546,"style":546},"export default defineNuxtConfig({\n  vue: {\n    compilerOptions: {\n      isCustomElement: (tag) => tag.startsWith('media-')\n    }\n  }\n})\n","nuxt.config.ts",[548,1143,1144,1162,1172,1181,1223,1228,1233],{"__ignoreMap":546},[551,1145,1146,1149,1152,1156,1159],{"class":553,"line":554},[551,1147,1148],{"class":583},"export",[551,1150,1151],{"class":583}," default",[551,1153,1155],{"class":1154},"s2Zo4"," defineNuxtConfig",[551,1157,1158],{"class":594},"(",[551,1160,1161],{"class":587},"{\n",[551,1163,1164,1167,1170],{"class":553,"line":591},[551,1165,1166],{"class":738},"  vue",[551,1168,1169],{"class":587},":",[551,1171,588],{"class":587},[551,1173,1174,1177,1179],{"class":553,"line":601},[551,1175,1176],{"class":738},"    compilerOptions",[551,1178,1169],{"class":587},[551,1180,588],{"class":587},[551,1182,1183,1186,1188,1191,1195,1198,1201,1204,1207,1210,1212,1215,1218,1220],{"class":553,"line":609},[551,1184,1185],{"class":1154},"      isCustomElement",[551,1187,1169],{"class":587},[551,1189,1190],{"class":587}," (",[551,1192,1194],{"class":1193},"sHdIc","tag",[551,1196,1197],{"class":587},")",[551,1199,1200],{"class":753}," =>",[551,1202,1203],{"class":594}," tag",[551,1205,1206],{"class":587},".",[551,1208,1209],{"class":1154},"startsWith",[551,1211,1158],{"class":594},[551,1213,1214],{"class":587},"'",[551,1216,1217],{"class":561},"media-",[551,1219,1214],{"class":587},[551,1221,1222],{"class":594},")\n",[551,1224,1225],{"class":553,"line":617},[551,1226,1227],{"class":587},"    }\n",[551,1229,1230],{"class":553,"line":625},[551,1231,1232],{"class":587},"  }\n",[551,1234,1235,1237],{"class":553,"line":633},[551,1236,668],{"class":587},[551,1238,1222],{"class":594},[705,1240,1241],{},[1135,1242,1243],{},"Vue 3 + Vite",[539,1245,1248],{"className":574,"code":1246,"filename":1247,"language":576,"meta":546,"style":546},"import vue from '@vitejs\u002Fplugin-vue'\nimport { defineConfig } from 'vite'\n\nexport default defineConfig({\n  plugins: [\n    vue({\n      template: {\n        compilerOptions: {\n          isCustomElement: (tag) => tag.startsWith('media-')\n        }\n      }\n    })\n  ]\n})\n","vite.config.ts",[548,1249,1250,1267,1289,1294,1306,1316,1325,1334,1343,1374,1379,1384,1391,1396],{"__ignoreMap":546},[551,1251,1252,1254,1257,1260,1262,1265],{"class":553,"line":554},[551,1253,584],{"class":583},[551,1255,1256],{"class":594}," vue ",[551,1258,1259],{"class":583},"from",[551,1261,674],{"class":587},[551,1263,1264],{"class":561},"@vitejs\u002Fplugin-vue",[551,1266,680],{"class":587},[551,1268,1269,1271,1274,1277,1280,1282,1284,1287],{"class":553,"line":591},[551,1270,584],{"class":583},[551,1272,1273],{"class":587}," {",[551,1275,1276],{"class":594}," defineConfig",[551,1278,1279],{"class":587}," }",[551,1281,671],{"class":583},[551,1283,674],{"class":587},[551,1285,1286],{"class":561},"vite",[551,1288,680],{"class":587},[551,1290,1291],{"class":553,"line":601},[551,1292,1293],{"emptyLinePlaceholder":526},"\n",[551,1295,1296,1298,1300,1302,1304],{"class":553,"line":609},[551,1297,1148],{"class":583},[551,1299,1151],{"class":583},[551,1301,1276],{"class":1154},[551,1303,1158],{"class":594},[551,1305,1161],{"class":587},[551,1307,1308,1311,1313],{"class":553,"line":617},[551,1309,1310],{"class":738},"  plugins",[551,1312,1169],{"class":587},[551,1314,1315],{"class":594}," [\n",[551,1317,1318,1321,1323],{"class":553,"line":625},[551,1319,1320],{"class":1154},"    vue",[551,1322,1158],{"class":594},[551,1324,1161],{"class":587},[551,1326,1327,1330,1332],{"class":553,"line":633},[551,1328,1329],{"class":738},"      template",[551,1331,1169],{"class":587},[551,1333,588],{"class":587},[551,1335,1336,1339,1341],{"class":553,"line":641},[551,1337,1338],{"class":738},"        compilerOptions",[551,1340,1169],{"class":587},[551,1342,588],{"class":587},[551,1344,1345,1348,1350,1352,1354,1356,1358,1360,1362,1364,1366,1368,1370,1372],{"class":553,"line":649},[551,1346,1347],{"class":1154},"          isCustomElement",[551,1349,1169],{"class":587},[551,1351,1190],{"class":587},[551,1353,1194],{"class":1193},[551,1355,1197],{"class":587},[551,1357,1200],{"class":753},[551,1359,1203],{"class":594},[551,1361,1206],{"class":587},[551,1363,1209],{"class":1154},[551,1365,1158],{"class":594},[551,1367,1214],{"class":587},[551,1369,1217],{"class":561},[551,1371,1214],{"class":587},[551,1373,1222],{"class":594},[551,1375,1376],{"class":553,"line":657},[551,1377,1378],{"class":587},"        }\n",[551,1380,1381],{"class":553,"line":665},[551,1382,1383],{"class":587},"      }\n",[551,1385,1386,1389],{"class":553,"line":901},[551,1387,1388],{"class":587},"    }",[551,1390,1222],{"class":594},[551,1392,1393],{"class":553,"line":910},[551,1394,1395],{"class":594},"  ]\n",[551,1397,1398,1400],{"class":553,"line":920},[551,1399,668],{"class":587},[551,1401,1222],{"class":594},[536,1403,683],{"id":683},[705,1405,1406,1407,1410],{},"傳入 ",[548,1408,1409],{},"src"," 即可播放音檔，預設組裝包含進度條、時間顯示、播放控制（播放、快退 10 秒、快進 10 秒）、設定（播放速度）與音量。",[685,1412],{"name":1413},"AudioPlayerBasicDemo",[536,1415,720],{"id":719},[692,1417,723],{"id":723},[539,1419,1421],{"className":726,"code":1420,"language":728,"meta":546,"style":546},"\u003Ctemplate>\n  \u003Cadmin-audio-player>\n    \u003Cadmin-audio-player-progress \u002F>\n    \u003Cadmin-audio-player-toolbar>\n      \u003Cadmin-audio-player-time \u002F>\n      \u003Cadmin-audio-player-controls \u002F>\n      \u003Cadmin-audio-player-settings \u002F>\n      \u003Cadmin-audio-player-volume \u002F>\n    \u003C\u002Fadmin-audio-player-toolbar>\n  \u003C\u002Fadmin-audio-player>\n\u003C\u002Ftemplate>\n",[548,1422,1423,1431,1440,1450,1459,1468,1477,1486,1495,1503,1511],{"__ignoreMap":546},[551,1424,1425,1427,1429],{"class":553,"line":554},[551,1426,735],{"class":587},[551,1428,739],{"class":738},[551,1430,742],{"class":587},[551,1432,1433,1435,1438],{"class":553,"line":591},[551,1434,747],{"class":587},[551,1436,1437],{"class":738},"admin-audio-player",[551,1439,742],{"class":587},[551,1441,1442,1444,1447],{"class":553,"line":601},[551,1443,772],{"class":587},[551,1445,1446],{"class":738},"admin-audio-player-progress",[551,1448,1449],{"class":587}," \u002F>\n",[551,1451,1452,1454,1457],{"class":553,"line":609},[551,1453,772],{"class":587},[551,1455,1456],{"class":738},"admin-audio-player-toolbar",[551,1458,742],{"class":587},[551,1460,1461,1463,1466],{"class":553,"line":617},[551,1462,802],{"class":587},[551,1464,1465],{"class":738},"admin-audio-player-time",[551,1467,1449],{"class":587},[551,1469,1470,1472,1475],{"class":553,"line":625},[551,1471,802],{"class":587},[551,1473,1474],{"class":738},"admin-audio-player-controls",[551,1476,1449],{"class":587},[551,1478,1479,1481,1484],{"class":553,"line":633},[551,1480,802],{"class":587},[551,1482,1483],{"class":738},"admin-audio-player-settings",[551,1485,1449],{"class":587},[551,1487,1488,1490,1493],{"class":553,"line":641},[551,1489,802],{"class":587},[551,1491,1492],{"class":738},"admin-audio-player-volume",[551,1494,1449],{"class":587},[551,1496,1497,1499,1501],{"class":553,"line":649},[551,1498,913],{"class":587},[551,1500,1456],{"class":738},[551,1502,742],{"class":587},[551,1504,1505,1507,1509],{"class":553,"line":657},[551,1506,923],{"class":587},[551,1508,1437],{"class":738},[551,1510,742],{"class":587},[551,1512,1513,1515,1517],{"class":553,"line":665},[551,1514,784],{"class":587},[551,1516,739],{"class":738},[551,1518,742],{"class":587},[692,1520,1437],{"id":1437},[940,1522],{"component":1523},"AdminAudioPlayer",[692,1525,1474],{"id":1474},[940,1527],{"component":1528},"AdminAudioPlayerControls",[692,1530,1446],{"id":1446},[940,1532],{"component":1533},"AdminAudioPlayerProgress",[692,1535,1483],{"id":1483},[940,1537],{"component":1538},"AdminAudioPlayerSettings",[692,1540,1465],{"id":1465},[940,1542],{"component":1543},"AdminAudioPlayerTime",[692,1545,1456],{"id":1456},[940,1547],{"component":1548},"AdminAudioPlayerToolbar",[692,1550,1492],{"id":1492},[940,1552],{"component":1553},"AdminAudioPlayerVolume",[536,1555,1556],{"id":1556},"注意事項",[1558,1559,1560,1583,1604,1629],"ul",{},[1561,1562,1563,1570,1571,1574,1575,1578,1579,1582],"li",{},[1135,1564,1565,1566,1569],{},"必須加 ",[548,1567,1568],{},"isCustomElement"," 設定","：未加上 ",[548,1572,1573],{},"vue.compilerOptions.isCustomElement"," 規則時，dev console 會對每個 ",[548,1576,1577],{},"\u003Cmedia-*>"," 元素噴 ",[548,1580,1581],{},"Failed to resolve component"," 警告。詳細寫法見上方「安裝」章節。",[1561,1584,1585,1588,1589,1592,1593,1596,1597,1599,1600,713],{},[1135,1586,1587],{},"不支援 SSR","：vidstack 為 browser-only；元件殼不含 ",[548,1590,1591],{},"\u003CClientOnly>","（engine 仍以 ",[548,1594,1595],{},"defineAsyncComponent"," 拆 chunk）。Nuxt 請自行以 ",[548,1598,1591],{}," 包覆；純 CSR 不需處理。見 ",[697,1601,1603],{"href":1602},"\u002Fdocs\u002Fget-started\u002Finstallation#ssr-nuxt","安裝 · SSR",[1561,1605,1606,1609,1610,1613,1614,1617,1618,1621,1622,1123,1625,1628],{},[1135,1607,1608],{},"音量設定跨實例共享","：所有 ",[548,1611,1612],{},"\u003CAdminAudioPlayer>"," 與 ",[548,1615,1616],{},"\u003CAdminVideoPlayer>"," 實例共用同一組 ",[548,1619,1620],{},"localStorage"," key（",[548,1623,1624],{},"admin:player:volume",[548,1626,1627],{},"admin:player:muted","）；多個分頁同時開啟時不會即時同步，避免使用者剛調整的音量被其他分頁覆蓋掉。",[1561,1630,1631,1634,1635,1638],{},[1135,1632,1633],{},"播放速度不記憶","：每次元件 mount 都重設為 ",[548,1636,1637],{},"1","；如需專案級記憶請消費端自行包裝。",[536,1640,985],{"id":985},[987,1642],{"component":1523},[990,1644,1645],{},"html pre.shiki code .sBMFI, html code.shiki .sBMFI{--shiki-light:#E2931D;--shiki-default:#FFCB6B;--shiki-dark:#FFCB6B}html pre.shiki code .sfazB, html code.shiki .sfazB{--shiki-light:#91B859;--shiki-default:#C3E88D;--shiki-dark:#C3E88D}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 pre.shiki code .s7zQu, html code.shiki .s7zQu{--shiki-light:#39ADB5;--shiki-light-font-style:italic;--shiki-default:#89DDFF;--shiki-default-font-style:italic;--shiki-dark:#89DDFF;--shiki-dark-font-style:italic}html pre.shiki code .sMK4o, html code.shiki .sMK4o{--shiki-light:#39ADB5;--shiki-default:#89DDFF;--shiki-dark:#89DDFF}html pre.shiki code .sTEyZ, html code.shiki .sTEyZ{--shiki-light:#90A4AE;--shiki-default:#EEFFFF;--shiki-dark:#BABED8}html pre.shiki code .s2Zo4, html code.shiki .s2Zo4{--shiki-light:#6182B8;--shiki-default:#82AAFF;--shiki-dark:#82AAFF}html pre.shiki code .swJcz, html code.shiki .swJcz{--shiki-light:#E53935;--shiki-default:#F07178;--shiki-dark:#F07178}html pre.shiki code .sHdIc, html code.shiki .sHdIc{--shiki-light:#90A4AE;--shiki-light-font-style:italic;--shiki-default:#EEFFFF;--shiki-default-font-style:italic;--shiki-dark:#BABED8;--shiki-dark-font-style:italic}html pre.shiki code .spNyl, html code.shiki .spNyl{--shiki-light:#9C3EDA;--shiki-default:#C792EA;--shiki-dark:#C792EA}",{"title":546,"searchDepth":601,"depth":601,"links":1647},[1648,1649,1650,1660,1661],{"id":507,"depth":591,"text":507},{"id":683,"depth":591,"text":683},{"id":719,"depth":591,"text":720,"children":1651},[1652,1653,1654,1655,1656,1657,1658,1659],{"id":723,"depth":601,"text":723},{"id":1437,"depth":601,"text":1437},{"id":1474,"depth":601,"text":1474},{"id":1446,"depth":601,"text":1446},{"id":1483,"depth":601,"text":1483},{"id":1465,"depth":601,"text":1465},{"id":1456,"depth":601,"text":1456},{"id":1492,"depth":601,"text":1492},{"id":1556,"depth":591,"text":1556},{"id":985,"depth":591,"text":985},"音訊播放器（vidstack）。播放、快進快退、音量、播放速度、時間顯示。",{"doc":1664},"https:\u002F\u002Fvidstack.io\u002Fdocs\u002Fplayer",{},{"title":21,"description":1662},"OQjjtYaGznSHZwiHqo1eDUDp4NIQkPvZfwPD1LG_Zlg",{"id":1669,"title":25,"body":1670,"component":526,"description":1872,"extension":1015,"links":1873,"meta":1876,"navigation":526,"new":18,"path":26,"seo":1877,"stem":27,"wrapperKind":19,"__hash__":1878},"docs\u002Fdocs\u002Fadmin\u002Favatar.md",{"type":533,"value":1671,"toc":1858},[1672,1674,1692,1737,1739,1742,1744,1748,1754,1757,1759,1761,1837,1839,1842,1844,1847,1849,1852,1854,1856],[536,1673,507],{"id":507},[539,1675,1677],{"className":541,"code":1676,"filename":543,"language":544,"meta":545,"style":546},"pnpm dlx shadcn-vue add @admin\u002Favatar\n",[548,1678,1679],{"__ignoreMap":546},[551,1680,1681,1683,1685,1687,1689],{"class":553,"line":554},[551,1682,558],{"class":557},[551,1684,562],{"class":561},[551,1686,565],{"class":561},[551,1688,568],{"class":561},[551,1690,1691],{"class":561}," @admin\u002Favatar\n",[539,1693,1695],{"className":574,"code":1694,"language":576,"meta":546,"style":546},"import {\n  AdminAvatar,\n  AdminAvatarFallback,\n  AdminAvatarImage,\n} from '@\u002Fcomponents\u002Fadmin\u002Favatar'\n",[548,1696,1697,1703,1710,1717,1724],{"__ignoreMap":546},[551,1698,1699,1701],{"class":553,"line":554},[551,1700,584],{"class":583},[551,1702,588],{"class":587},[551,1704,1705,1708],{"class":553,"line":591},[551,1706,1707],{"class":594},"  AdminAvatar",[551,1709,598],{"class":587},[551,1711,1712,1715],{"class":553,"line":601},[551,1713,1714],{"class":594},"  AdminAvatarFallback",[551,1716,598],{"class":587},[551,1718,1719,1722],{"class":553,"line":609},[551,1720,1721],{"class":594},"  AdminAvatarImage",[551,1723,598],{"class":587},[551,1725,1726,1728,1730,1732,1735],{"class":553,"line":617},[551,1727,668],{"class":587},[551,1729,671],{"class":583},[551,1731,674],{"class":587},[551,1733,1734],{"class":561},"@\u002Fcomponents\u002Fadmin\u002Favatar",[551,1736,680],{"class":587},[536,1738,683],{"id":683},[685,1740],{"name":1741},"AvatarDemo",[536,1743,690],{"id":690},[692,1745,1747],{"id":1746},"fallback-圖示-縮寫","Fallback 圖示 \u002F 縮寫",[705,1749,1750,1751,713],{},"載入失敗時回退到 ",[548,1752,1753],{},"admin-avatar-fallback",[685,1755],{"name":1756},"AvatarFallbackDemo",[536,1758,720],{"id":719},[692,1760,723],{"id":723},[539,1762,1764],{"className":726,"code":1763,"language":728,"meta":546,"style":546},"\u003Ctemplate>\n  \u003Cadmin-avatar>\n    \u003Cadmin-avatar-image src=\"...\" \u002F>\n    \u003Cadmin-avatar-fallback>FB\u003C\u002Fadmin-avatar-fallback>\n  \u003C\u002Fadmin-avatar>\n\u003C\u002Ftemplate>\n",[548,1765,1766,1774,1783,1804,1821,1829],{"__ignoreMap":546},[551,1767,1768,1770,1772],{"class":553,"line":554},[551,1769,735],{"class":587},[551,1771,739],{"class":738},[551,1773,742],{"class":587},[551,1775,1776,1778,1781],{"class":553,"line":591},[551,1777,747],{"class":587},[551,1779,1780],{"class":738},"admin-avatar",[551,1782,742],{"class":587},[551,1784,1785,1787,1790,1793,1795,1797,1800,1802],{"class":553,"line":601},[551,1786,772],{"class":587},[551,1788,1789],{"class":738},"admin-avatar-image",[551,1791,1792],{"class":753}," src",[551,1794,757],{"class":587},[551,1796,760],{"class":587},[551,1798,1799],{"class":561},"...",[551,1801,760],{"class":587},[551,1803,1449],{"class":587},[551,1805,1806,1808,1810,1812,1815,1817,1819],{"class":553,"line":609},[551,1807,772],{"class":587},[551,1809,1753],{"class":738},[551,1811,778],{"class":587},[551,1813,1814],{"class":594},"FB",[551,1816,784],{"class":587},[551,1818,1753],{"class":738},[551,1820,742],{"class":587},[551,1822,1823,1825,1827],{"class":553,"line":617},[551,1824,923],{"class":587},[551,1826,1780],{"class":738},[551,1828,742],{"class":587},[551,1830,1831,1833,1835],{"class":553,"line":625},[551,1832,784],{"class":587},[551,1834,739],{"class":738},[551,1836,742],{"class":587},[692,1838,1780],{"id":1780},[940,1840],{"component":1841},"AdminAvatar",[692,1843,1789],{"id":1789},[940,1845],{"component":1846},"AdminAvatarImage",[692,1848,1753],{"id":1753},[940,1850],{"component":1851},"AdminAvatarFallback",[536,1853,985],{"id":985},[987,1855],{"component":1841},[990,1857,992],{},{"title":546,"searchDepth":601,"depth":601,"links":1859},[1860,1861,1862,1865,1871],{"id":507,"depth":591,"text":507},{"id":683,"depth":591,"text":683},{"id":690,"depth":591,"text":690,"children":1863},[1864],{"id":1746,"depth":601,"text":1747},{"id":719,"depth":591,"text":720,"children":1866},[1867,1868,1869,1870],{"id":723,"depth":601,"text":723},{"id":1780,"depth":601,"text":1780},{"id":1789,"depth":601,"text":1789},{"id":1753,"depth":601,"text":1753},{"id":985,"depth":591,"text":985},"圓形頭像。縮圖或替代文字。",{"doc":1874,"api":1875},"https:\u002F\u002Freka-ui.com\u002Fdocs\u002Fcomponents\u002Favatar","https:\u002F\u002Freka-ui.com\u002Fdocs\u002Fcomponents\u002Favatar#api-reference",{},{"title":25,"description":1872},"ya7NQrcIHYXtWZnHbrg5_q9bnDoj37v7KArlWQhW-nY",{"id":1880,"title":29,"body":1881,"component":526,"description":2033,"extension":1015,"links":2034,"meta":2036,"navigation":526,"new":18,"path":30,"seo":2037,"stem":31,"wrapperKind":19,"__hash__":2038},"docs\u002Fdocs\u002Fadmin\u002Fbadge.md",{"type":533,"value":1882,"toc":2020},[1883,1885,1903,1928,1930,1933,1935,1938,1953,1956,1959,1962,1965,1967,1969,2008,2010,2013,2015,2017],[536,1884,507],{"id":507},[539,1886,1888],{"className":541,"code":1887,"filename":543,"language":544,"meta":545,"style":546},"pnpm dlx shadcn-vue add @admin\u002Fbadge\n",[548,1889,1890],{"__ignoreMap":546},[551,1891,1892,1894,1896,1898,1900],{"class":553,"line":554},[551,1893,558],{"class":557},[551,1895,562],{"class":561},[551,1897,565],{"class":561},[551,1899,568],{"class":561},[551,1901,1902],{"class":561}," @admin\u002Fbadge\n",[539,1904,1906],{"className":574,"code":1905,"language":576,"meta":546,"style":546},"import { AdminBadge } from '@\u002Fcomponents\u002Fadmin\u002Fbadge'\n",[548,1907,1908],{"__ignoreMap":546},[551,1909,1910,1912,1914,1917,1919,1921,1923,1926],{"class":553,"line":554},[551,1911,584],{"class":583},[551,1913,1273],{"class":587},[551,1915,1916],{"class":594}," AdminBadge",[551,1918,1279],{"class":587},[551,1920,671],{"class":583},[551,1922,674],{"class":587},[551,1924,1925],{"class":561},"@\u002Fcomponents\u002Fadmin\u002Fbadge",[551,1927,680],{"class":587},[536,1929,683],{"id":683},[685,1931],{"name":1932},"BadgeDemo",[536,1934,690],{"id":690},[692,1936,1937],{"id":1937},"尺寸",[705,1939,1940,1941,1944,1945,1948,1949,1952],{},"尺寸：",[548,1942,1943],{},"small","（圓點）、",[548,1946,1947],{},"medium","（預設）、",[548,1950,1951],{},"large","（可塞多字）。",[685,1954],{"name":1955},"BadgeSizesDemo",[692,1957,1958],{"id":1958},"附掛在圖示上",[705,1960,1961],{},"以絕對定位疊在 icon 右上角，做未讀數 \u002F 新訊息提示。",[685,1963],{"name":1964},"BadgeOnIconDemo",[536,1966,720],{"id":719},[692,1968,723],{"id":723},[539,1970,1972],{"className":726,"code":1971,"language":728,"meta":546,"style":546},"\u003Ctemplate>\n  \u003Cadmin-badge>內容\u003C\u002Fadmin-badge>\n\u003C\u002Ftemplate>\n",[548,1973,1974,1982,2000],{"__ignoreMap":546},[551,1975,1976,1978,1980],{"class":553,"line":554},[551,1977,735],{"class":587},[551,1979,739],{"class":738},[551,1981,742],{"class":587},[551,1983,1984,1986,1989,1991,1994,1996,1998],{"class":553,"line":591},[551,1985,747],{"class":587},[551,1987,1988],{"class":738},"admin-badge",[551,1990,778],{"class":587},[551,1992,1993],{"class":594},"內容",[551,1995,784],{"class":587},[551,1997,1988],{"class":738},[551,1999,742],{"class":587},[551,2001,2002,2004,2006],{"class":553,"line":601},[551,2003,784],{"class":587},[551,2005,739],{"class":738},[551,2007,742],{"class":587},[692,2009,1988],{"id":1988},[940,2011],{"component":2012},"AdminBadge",[536,2014,985],{"id":985},[987,2016],{"component":2012},[990,2018,2019],{},"html pre.shiki code .sBMFI, html code.shiki .sBMFI{--shiki-light:#E2931D;--shiki-default:#FFCB6B;--shiki-dark:#FFCB6B}html pre.shiki code .sfazB, html code.shiki .sfazB{--shiki-light:#91B859;--shiki-default:#C3E88D;--shiki-dark:#C3E88D}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 pre.shiki code .s7zQu, html code.shiki .s7zQu{--shiki-light:#39ADB5;--shiki-light-font-style:italic;--shiki-default:#89DDFF;--shiki-default-font-style:italic;--shiki-dark:#89DDFF;--shiki-dark-font-style:italic}html pre.shiki code .sMK4o, html code.shiki .sMK4o{--shiki-light:#39ADB5;--shiki-default:#89DDFF;--shiki-dark:#89DDFF}html pre.shiki code .sTEyZ, html code.shiki .sTEyZ{--shiki-light:#90A4AE;--shiki-default:#EEFFFF;--shiki-dark:#BABED8}html pre.shiki code .swJcz, html code.shiki .swJcz{--shiki-light:#E53935;--shiki-default:#F07178;--shiki-dark:#F07178}",{"title":546,"searchDepth":601,"depth":601,"links":2021},[2022,2023,2024,2028,2032],{"id":507,"depth":591,"text":507},{"id":683,"depth":591,"text":683},{"id":690,"depth":591,"text":690,"children":2025},[2026,2027],{"id":1937,"depth":601,"text":1937},{"id":1958,"depth":601,"text":1958},{"id":719,"depth":591,"text":720,"children":2029},[2030,2031],{"id":723,"depth":601,"text":723},{"id":1988,"depth":601,"text":1988},{"id":985,"depth":591,"text":985},"狀態或數量的小型標籤。尺寸 small／medium／large。",{"doc":2035},"https:\u002F\u002Fwww.shadcn-vue.com\u002Fdocs\u002Fcomponents\u002Fbadge",{},{"title":29,"description":2033},"I5JssGh5SJTPQuFZJmqnsQYccV-gf8qQlNyMVidTtu0",{"id":2040,"title":33,"body":2041,"component":526,"description":2385,"extension":1015,"links":2386,"meta":2388,"navigation":526,"new":18,"path":34,"seo":2389,"stem":35,"wrapperKind":19,"__hash__":2390},"docs\u002Fdocs\u002Fadmin\u002Fbreadcrumb.md",{"type":533,"value":2042,"toc":2367},[2043,2045,2063,2129,2131,2134,2136,2139,2150,2153,2157,2170,2173,2175,2177,2331,2333,2336,2338,2341,2343,2346,2348,2351,2353,2356,2358,2361,2363,2365],[536,2044,507],{"id":507},[539,2046,2048],{"className":541,"code":2047,"filename":543,"language":544,"meta":545,"style":546},"pnpm dlx shadcn-vue add @admin\u002Fbreadcrumb\n",[548,2049,2050],{"__ignoreMap":546},[551,2051,2052,2054,2056,2058,2060],{"class":553,"line":554},[551,2053,558],{"class":557},[551,2055,562],{"class":561},[551,2057,565],{"class":561},[551,2059,568],{"class":561},[551,2061,2062],{"class":561}," @admin\u002Fbreadcrumb\n",[539,2064,2066],{"className":574,"code":2065,"language":576,"meta":546,"style":546},"import {\n  AdminBreadcrumb,\n  AdminBreadcrumbItem,\n  AdminBreadcrumbLink,\n  AdminBreadcrumbList,\n  AdminBreadcrumbPage,\n  AdminBreadcrumbSeparator,\n} from '@\u002Fcomponents\u002Fadmin\u002Fbreadcrumb'\n",[548,2067,2068,2074,2081,2088,2095,2102,2109,2116],{"__ignoreMap":546},[551,2069,2070,2072],{"class":553,"line":554},[551,2071,584],{"class":583},[551,2073,588],{"class":587},[551,2075,2076,2079],{"class":553,"line":591},[551,2077,2078],{"class":594},"  AdminBreadcrumb",[551,2080,598],{"class":587},[551,2082,2083,2086],{"class":553,"line":601},[551,2084,2085],{"class":594},"  AdminBreadcrumbItem",[551,2087,598],{"class":587},[551,2089,2090,2093],{"class":553,"line":609},[551,2091,2092],{"class":594},"  AdminBreadcrumbLink",[551,2094,598],{"class":587},[551,2096,2097,2100],{"class":553,"line":617},[551,2098,2099],{"class":594},"  AdminBreadcrumbList",[551,2101,598],{"class":587},[551,2103,2104,2107],{"class":553,"line":625},[551,2105,2106],{"class":594},"  AdminBreadcrumbPage",[551,2108,598],{"class":587},[551,2110,2111,2114],{"class":553,"line":633},[551,2112,2113],{"class":594},"  AdminBreadcrumbSeparator",[551,2115,598],{"class":587},[551,2117,2118,2120,2122,2124,2127],{"class":553,"line":641},[551,2119,668],{"class":587},[551,2121,671],{"class":583},[551,2123,674],{"class":587},[551,2125,2126],{"class":561},"@\u002Fcomponents\u002Fadmin\u002Fbreadcrumb",[551,2128,680],{"class":587},[536,2130,683],{"id":683},[685,2132],{"name":2133},"BreadcrumbDemo",[536,2135,690],{"id":690},[692,2137,2138],{"id":2138},"多層階層",[705,2140,2141,2142,2145,2146,2149],{},"以 ",[548,2143,2144],{},"admin-breadcrumb-link"," 連接每一層，最後一層用 ",[548,2147,2148],{},"admin-breadcrumb-page"," 標記當前頁。",[685,2151],{"name":2152},"BreadcrumbDeepDemo",[692,2154,2156],{"id":2155},"theme-變體","Theme 變體",[705,2158,2159,2162,2163,1123,2166,2169],{},[548,2160,2161],{},"theme"," prop 切換 ",[548,2164,2165],{},"primary",[548,2167,2168],{},"secondary","，當前頁文字會套用對應色系。",[685,2171],{"name":2172},"BreadcrumbThemeDemo",[536,2174,720],{"id":719},[692,2176,723],{"id":723},[539,2178,2180],{"className":726,"code":2179,"language":728,"meta":546,"style":546},"\u003Ctemplate>\n  \u003Cadmin-breadcrumb theme=\"primary\">\n    \u003Cadmin-breadcrumb-list>\n      \u003Cadmin-breadcrumb-item>\n        \u003Cadmin-breadcrumb-link href=\"\u002F\">Home\u003C\u002Fadmin-breadcrumb-link>\n      \u003C\u002Fadmin-breadcrumb-item>\n      \u003Cadmin-breadcrumb-separator \u002F>\n      \u003Cadmin-breadcrumb-item>\n        \u003Cadmin-breadcrumb-page>Current\u003C\u002Fadmin-breadcrumb-page>\n      \u003C\u002Fadmin-breadcrumb-item>\n    \u003C\u002Fadmin-breadcrumb-list>\n  \u003C\u002Fadmin-breadcrumb>\n\u003C\u002Ftemplate>\n",[548,2181,2182,2190,2210,2219,2228,2257,2265,2274,2282,2299,2307,2315,2323],{"__ignoreMap":546},[551,2183,2184,2186,2188],{"class":553,"line":554},[551,2185,735],{"class":587},[551,2187,739],{"class":738},[551,2189,742],{"class":587},[551,2191,2192,2194,2197,2200,2202,2204,2206,2208],{"class":553,"line":591},[551,2193,747],{"class":587},[551,2195,2196],{"class":738},"admin-breadcrumb",[551,2198,2199],{"class":753}," theme",[551,2201,757],{"class":587},[551,2203,760],{"class":587},[551,2205,2165],{"class":561},[551,2207,760],{"class":587},[551,2209,742],{"class":587},[551,2211,2212,2214,2217],{"class":553,"line":601},[551,2213,772],{"class":587},[551,2215,2216],{"class":738},"admin-breadcrumb-list",[551,2218,742],{"class":587},[551,2220,2221,2223,2226],{"class":553,"line":609},[551,2222,802],{"class":587},[551,2224,2225],{"class":738},"admin-breadcrumb-item",[551,2227,742],{"class":587},[551,2229,2230,2232,2234,2237,2239,2241,2244,2246,2248,2251,2253,2255],{"class":553,"line":617},[551,2231,812],{"class":587},[551,2233,2144],{"class":738},[551,2235,2236],{"class":753}," href",[551,2238,757],{"class":587},[551,2240,760],{"class":587},[551,2242,2243],{"class":561},"\u002F",[551,2245,760],{"class":587},[551,2247,778],{"class":587},[551,2249,2250],{"class":594},"Home",[551,2252,784],{"class":587},[551,2254,2144],{"class":738},[551,2256,742],{"class":587},[551,2258,2259,2261,2263],{"class":553,"line":625},[551,2260,849],{"class":587},[551,2262,2225],{"class":738},[551,2264,742],{"class":587},[551,2266,2267,2269,2272],{"class":553,"line":633},[551,2268,802],{"class":587},[551,2270,2271],{"class":738},"admin-breadcrumb-separator",[551,2273,1449],{"class":587},[551,2275,2276,2278,2280],{"class":553,"line":641},[551,2277,802],{"class":587},[551,2279,2225],{"class":738},[551,2281,742],{"class":587},[551,2283,2284,2286,2288,2290,2293,2295,2297],{"class":553,"line":649},[551,2285,812],{"class":587},[551,2287,2148],{"class":738},[551,2289,778],{"class":587},[551,2291,2292],{"class":594},"Current",[551,2294,784],{"class":587},[551,2296,2148],{"class":738},[551,2298,742],{"class":587},[551,2300,2301,2303,2305],{"class":553,"line":657},[551,2302,849],{"class":587},[551,2304,2225],{"class":738},[551,2306,742],{"class":587},[551,2308,2309,2311,2313],{"class":553,"line":665},[551,2310,913],{"class":587},[551,2312,2216],{"class":738},[551,2314,742],{"class":587},[551,2316,2317,2319,2321],{"class":553,"line":901},[551,2318,923],{"class":587},[551,2320,2196],{"class":738},[551,2322,742],{"class":587},[551,2324,2325,2327,2329],{"class":553,"line":910},[551,2326,784],{"class":587},[551,2328,739],{"class":738},[551,2330,742],{"class":587},[692,2332,2196],{"id":2196},[940,2334],{"component":2335},"AdminBreadcrumb",[692,2337,2216],{"id":2216},[940,2339],{"component":2340},"AdminBreadcrumbList",[692,2342,2225],{"id":2225},[940,2344],{"component":2345},"AdminBreadcrumbItem",[692,2347,2144],{"id":2144},[940,2349],{"component":2350},"AdminBreadcrumbLink",[692,2352,2148],{"id":2148},[940,2354],{"component":2355},"AdminBreadcrumbPage",[692,2357,2271],{"id":2271},[940,2359],{"component":2360},"AdminBreadcrumbSeparator",[536,2362,985],{"id":985},[987,2364],{"component":2335},[990,2366,992],{},{"title":546,"searchDepth":601,"depth":601,"links":2368},[2369,2370,2371,2375,2384],{"id":507,"depth":591,"text":507},{"id":683,"depth":591,"text":683},{"id":690,"depth":591,"text":690,"children":2372},[2373,2374],{"id":2138,"depth":601,"text":2138},{"id":2155,"depth":601,"text":2156},{"id":719,"depth":591,"text":720,"children":2376},[2377,2378,2379,2380,2381,2382,2383],{"id":723,"depth":601,"text":723},{"id":2196,"depth":601,"text":2196},{"id":2216,"depth":601,"text":2216},{"id":2225,"depth":601,"text":2225},{"id":2144,"depth":601,"text":2144},{"id":2148,"depth":601,"text":2148},{"id":2271,"depth":601,"text":2271},{"id":985,"depth":591,"text":985},"目前頁面在網站階層中的位置。",{"doc":2387},"https:\u002F\u002Fwww.shadcn-vue.com\u002Fdocs\u002Fcomponents\u002Fbreadcrumb",{},{"title":33,"description":2385},"akpCHye8z-oIW8N_s0IwoNTbza-epoe4KmlBZH2VXiU",{"id":2392,"title":37,"body":2393,"component":526,"description":2616,"extension":1015,"links":2617,"meta":2619,"navigation":526,"new":18,"path":38,"seo":2620,"stem":39,"wrapperKind":19,"__hash__":2621},"docs\u002Fdocs\u002Fadmin\u002Fbutton.md",{"type":533,"value":2394,"toc":2601},[2395,2397,2415,2440,2442,2445,2447,2449,2455,2458,2461,2482,2485,2488,2498,2501,2503,2505,2544,2546,2549,2551,2595,2597,2599],[536,2396,507],{"id":507},[539,2398,2400],{"className":541,"code":2399,"filename":543,"language":544,"meta":545,"style":546},"pnpm dlx shadcn-vue add @admin\u002Fbutton\n",[548,2401,2402],{"__ignoreMap":546},[551,2403,2404,2406,2408,2410,2412],{"class":553,"line":554},[551,2405,558],{"class":557},[551,2407,562],{"class":561},[551,2409,565],{"class":561},[551,2411,568],{"class":561},[551,2413,2414],{"class":561}," @admin\u002Fbutton\n",[539,2416,2418],{"className":574,"code":2417,"language":576,"meta":546,"style":546},"import { AdminButton } from '@\u002Fcomponents\u002Fadmin\u002Fbutton'\n",[548,2419,2420],{"__ignoreMap":546},[551,2421,2422,2424,2426,2429,2431,2433,2435,2438],{"class":553,"line":554},[551,2423,584],{"class":583},[551,2425,1273],{"class":587},[551,2427,2428],{"class":594}," AdminButton",[551,2430,1279],{"class":587},[551,2432,671],{"class":583},[551,2434,674],{"class":587},[551,2436,2437],{"class":561},"@\u002Fcomponents\u002Fadmin\u002Fbutton",[551,2439,680],{"class":587},[536,2441,683],{"id":683},[685,2443],{"name":2444},"ButtonDemo",[536,2446,690],{"id":690},[692,2448,1937],{"id":1937},[705,2450,1940,2451,1948,2453,713],{},[548,2452,1947],{},[548,2454,1943],{},[685,2456],{"name":2457},"ButtonSizesDemo",[692,2459,2460],{"id":2460},"樣式",[705,2462,2463,2466,2467,2470,2471,2470,2474,2477,2478,2481],{},[548,2464,2465],{},"variant","：",[548,2468,2469],{},"filled","／",[548,2472,2473],{},"outline",[548,2475,2476],{},"ghost","；",[548,2479,2480],{},"disabled"," 為停用。",[685,2483],{"name":2484},"ButtonVariantsDemo",[692,2486,2487],{"id":2487},"顏色",[705,2489,2490,2466,2493,1948,2495,2497],{},[548,2491,2492],{},"color",[548,2494,2165],{},[548,2496,2168],{},"；可與任一 variant 組合。",[685,2499],{"name":2500},"ButtonColorsDemo",[536,2502,720],{"id":719},[692,2504,723],{"id":723},[539,2506,2508],{"className":726,"code":2507,"language":728,"meta":546,"style":546},"\u003Ctemplate>\n  \u003Cadmin-button>按鈕文字\u003C\u002Fadmin-button>\n\u003C\u002Ftemplate>\n",[548,2509,2510,2518,2536],{"__ignoreMap":546},[551,2511,2512,2514,2516],{"class":553,"line":554},[551,2513,735],{"class":587},[551,2515,739],{"class":738},[551,2517,742],{"class":587},[551,2519,2520,2522,2525,2527,2530,2532,2534],{"class":553,"line":591},[551,2521,747],{"class":587},[551,2523,2524],{"class":738},"admin-button",[551,2526,778],{"class":587},[551,2528,2529],{"class":594},"按鈕文字",[551,2531,784],{"class":587},[551,2533,2524],{"class":738},[551,2535,742],{"class":587},[551,2537,2538,2540,2542],{"class":553,"line":601},[551,2539,784],{"class":587},[551,2541,739],{"class":738},[551,2543,742],{"class":587},[692,2545,2524],{"id":2524},[940,2547],{"component":2548},"AdminButton",[536,2550,1556],{"id":1556},[1558,2552,2553,2574],{},[1561,2554,2555,2466,2561,2564,2565,2568,2569,2470,2571,2573],{},[1135,2556,2557,2560],{},[548,2558,2559],{},"color=\"text\""," 為 ghost 專屬",[548,2562,2563],{},"text"," 色階僅在 ",[548,2566,2567],{},"variant=\"ghost\""," 下有對應樣式（toolbar \u002F dropdown trigger 等次要 icon-only action 場景）；搭配 ",[548,2570,2469],{},[548,2572,2473],{}," 時無效果，渲染同該 variant 預設色。",[1561,2575,2576,2582,2583,2586,2587,2590,2591,2594],{},[1135,2577,2578,2579],{},"表單內請設 ",[548,2580,2581],{},"type=\"button\"","：原生 ",[548,2584,2585],{},"type"," 未指定時瀏覽器預設為 ",[548,2588,2589],{},"submit","，放在 ",[548,2592,2593],{},"\u003Cform>"," 內的工具按鈕會觸發表單送出。",[536,2596,985],{"id":985},[987,2598],{"component":2548},[990,2600,2019],{},{"title":546,"searchDepth":601,"depth":601,"links":2602},[2603,2604,2605,2610,2614,2615],{"id":507,"depth":591,"text":507},{"id":683,"depth":591,"text":683},{"id":690,"depth":591,"text":690,"children":2606},[2607,2608,2609],{"id":1937,"depth":601,"text":1937},{"id":2460,"depth":601,"text":2460},{"id":2487,"depth":601,"text":2487},{"id":719,"depth":591,"text":720,"children":2611},[2612,2613],{"id":723,"depth":601,"text":723},{"id":2524,"depth":601,"text":2524},{"id":1556,"depth":591,"text":1556},{"id":985,"depth":591,"text":985},"觸發動作的按鈕。尺寸 medium／small；樣式 filled／outline／ghost。",{"doc":2618},"https:\u002F\u002Fwww.shadcn-vue.com\u002Fdocs\u002Fcomponents\u002Fbutton",{},{"title":37,"description":2616},"7WeWq1CqCbUmdN4eaDuW6X5GEt69Opdk-PbjqHfAl2E",{"id":2623,"title":41,"body":2624,"component":526,"description":3095,"extension":1015,"links":3096,"meta":3099,"navigation":526,"new":18,"path":42,"seo":3100,"stem":43,"wrapperKind":19,"__hash__":3101},"docs\u002Fdocs\u002Fadmin\u002Fcheckbox.md",{"type":533,"value":2625,"toc":3077},[2626,2628,2646,2698,2700,2703,2705,2708,2730,2733,2737,2750,2753,2756,2759,2763,2787,2805,2811,2816,2839,2842,2844,2846,2973,2979,3052,3054,3057,3059,3061,3063,3066,3068,3071,3073,3075],[536,2627,507],{"id":507},[539,2629,2631],{"className":541,"code":2630,"filename":543,"language":544,"meta":545,"style":546},"pnpm dlx shadcn-vue add @admin\u002Fcheckbox\n",[548,2632,2633],{"__ignoreMap":546},[551,2634,2635,2637,2639,2641,2643],{"class":553,"line":554},[551,2636,558],{"class":557},[551,2638,562],{"class":561},[551,2640,565],{"class":561},[551,2642,568],{"class":561},[551,2644,2645],{"class":561}," @admin\u002Fcheckbox\n",[539,2647,2649],{"className":574,"code":2648,"language":576,"meta":546,"style":546},"import {\n  AdminCheckbox,\n  AdminCheckboxGroup,\n  AdminCheckboxInput,\n  AdminCheckboxLabel,\n} from '@\u002Fcomponents\u002Fadmin\u002Fcheckbox'\n",[548,2650,2651,2657,2664,2671,2678,2685],{"__ignoreMap":546},[551,2652,2653,2655],{"class":553,"line":554},[551,2654,584],{"class":583},[551,2656,588],{"class":587},[551,2658,2659,2662],{"class":553,"line":591},[551,2660,2661],{"class":594},"  AdminCheckbox",[551,2663,598],{"class":587},[551,2665,2666,2669],{"class":553,"line":601},[551,2667,2668],{"class":594},"  AdminCheckboxGroup",[551,2670,598],{"class":587},[551,2672,2673,2676],{"class":553,"line":609},[551,2674,2675],{"class":594},"  AdminCheckboxInput",[551,2677,598],{"class":587},[551,2679,2680,2683],{"class":553,"line":617},[551,2681,2682],{"class":594},"  AdminCheckboxLabel",[551,2684,598],{"class":587},[551,2686,2687,2689,2691,2693,2696],{"class":553,"line":625},[551,2688,668],{"class":587},[551,2690,671],{"class":583},[551,2692,674],{"class":587},[551,2694,2695],{"class":561},"@\u002Fcomponents\u002Fadmin\u002Fcheckbox",[551,2697,680],{"class":587},[536,2699,683],{"id":683},[685,2701],{"name":2702},"CheckboxDemo",[536,2704,690],{"id":690},[692,2706,2707],{"id":2707},"多選群組",[705,2709,2141,2710,2713,2714,2717,2718,2721,2722,2725,2726,2729],{},[548,2711,2712],{},"admin-checkbox-group"," 包住多個 ",[548,2715,2716],{},"admin-checkbox","（各 input 帶 ",[548,2719,2720],{},"value","），",[548,2723,2724],{},"v-model"," 以陣列承接被選中的 value，勾選同步由底層 ",[548,2727,2728],{},"CheckboxGroupRoot"," 處理。",[685,2731],{"name":2732},"CheckboxGroupDemo",[692,2734,2736],{"id":2735},"indeterminate不定態","Indeterminate（不定態）",[705,2738,2739,2740,1123,2743,1123,2746,2749],{},"父層 checkbox 依子項目狀態在 ",[548,2741,2742],{},"true",[548,2744,2745],{},"false",[548,2747,2748],{},"'indeterminate'"," 三態間切換。",[685,2751],{"name":2752},"CheckboxIndeterminateDemo",[692,2754,2755],{"id":2755},"錯誤狀態",[685,2757],{"name":2758},"CheckboxErrorDemo",[536,2760,2762],{"id":2761},"type-safe-封裝","Type-safe 封裝",[705,2764,2765,2768,2769,2772,2773,2775,2776,2779,2780,2783,2784,2786],{},[548,2766,2767],{},"AdminCheckboxGroup"," 已是 generic（",[548,2770,2771],{},"T extends AcceptableValue","），以較嚴的 ref 綁定 ",[548,2774,2724],{}," 即可收斂為選項 value 的 literal union 陣列。若要讓 value 與清單對齊，可自行封裝：傳入 ",[548,2777,2778],{},"options","（建議加 ",[548,2781,2782],{},"as const","），由封裝元件以 ",[548,2785,2778],{}," 為單一事實來源渲染各選項。",[705,2788,2789,2790,2792,2793,2795,2796,1613,2798,2801,2802,2804],{},"如此 ",[548,2791,2778],{}," 即聯集來源，各選項的 ",[548,2794,2720],{}," 結構上不可能越界；型別安全落在 ",[548,2797,2724],{},[548,2799,2800],{},"defaultValue"," 必須對齊 ",[548,2803,2778],{}," 的 value union（元素型別）。",[2806,2807,2808],"blockquote",{},[705,2809,2810],{},"此食譜刻意精簡；需要時可自行 fork 擴充。封裝元件僅為文件示範，不屬 registry 安裝產物。",[2812,2813],"component-source",{"name":2814,"title":2815},"TypedAdminCheckboxGroupDemo","TypedAdminCheckboxGroup.vue",[2817,2818,2821],"alert",{"title":2819,"type":2820},"需開啟 strictVModel","info",[705,2822,2823,2824,2827,2828,2831,2832,2834,2835,2838],{},"型別檢查需開啟 ",[548,2825,2826],{},"strictVModel","（若已開啟 ",[548,2829,2830],{},"strictTemplates"," 則已包含）。設定見 ",[697,2833,515],{"href":516},"。下列同時含合法綁定與刻意錯誤綁定；錯誤處以 ",[548,2836,2837],{},"@vue-expect-error"," 標示。",[2812,2840],{"name":2841},"CheckboxGroupTypeSafeDemo",[536,2843,720],{"id":719},[692,2845,723],{"id":723},[539,2847,2849],{"className":726,"code":2848,"language":728,"meta":546,"style":546},"\u003Ctemplate>\n  \u003Cadmin-checkbox-group v-model=\"selected\">\n    \u003Cadmin-checkbox v-for=\"opt in options\" :key=\"opt.value\">\n      \u003Cadmin-checkbox-input :value=\"opt.value\" \u002F>\n      \u003Cadmin-checkbox-label>{{ opt.label }}\u003C\u002Fadmin-checkbox-label>\n    \u003C\u002Fadmin-checkbox>\n  \u003C\u002Fadmin-checkbox-group>\n\u003C\u002Ftemplate>\n",[548,2850,2851,2859,2879,2911,2931,2949,2957,2965],{"__ignoreMap":546},[551,2852,2853,2855,2857],{"class":553,"line":554},[551,2854,735],{"class":587},[551,2856,739],{"class":738},[551,2858,742],{"class":587},[551,2860,2861,2863,2865,2868,2870,2872,2875,2877],{"class":553,"line":591},[551,2862,747],{"class":587},[551,2864,2712],{"class":738},[551,2866,2867],{"class":753}," v-model",[551,2869,757],{"class":587},[551,2871,760],{"class":587},[551,2873,2874],{"class":561},"selected",[551,2876,760],{"class":587},[551,2878,742],{"class":587},[551,2880,2881,2883,2885,2888,2890,2892,2895,2897,2900,2902,2904,2907,2909],{"class":553,"line":601},[551,2882,772],{"class":587},[551,2884,2716],{"class":738},[551,2886,2887],{"class":753}," v-for",[551,2889,757],{"class":587},[551,2891,760],{"class":587},[551,2893,2894],{"class":561},"opt in options",[551,2896,760],{"class":587},[551,2898,2899],{"class":753}," :key",[551,2901,757],{"class":587},[551,2903,760],{"class":587},[551,2905,2906],{"class":561},"opt.value",[551,2908,760],{"class":587},[551,2910,742],{"class":587},[551,2912,2913,2915,2918,2921,2923,2925,2927,2929],{"class":553,"line":609},[551,2914,802],{"class":587},[551,2916,2917],{"class":738},"admin-checkbox-input",[551,2919,2920],{"class":753}," :value",[551,2922,757],{"class":587},[551,2924,760],{"class":587},[551,2926,2906],{"class":561},[551,2928,760],{"class":587},[551,2930,1449],{"class":587},[551,2932,2933,2935,2938,2940,2943,2945,2947],{"class":553,"line":617},[551,2934,802],{"class":587},[551,2936,2937],{"class":738},"admin-checkbox-label",[551,2939,778],{"class":587},[551,2941,2942],{"class":594},"{{ opt.label }}",[551,2944,784],{"class":587},[551,2946,2937],{"class":738},[551,2948,742],{"class":587},[551,2950,2951,2953,2955],{"class":553,"line":625},[551,2952,913],{"class":587},[551,2954,2716],{"class":738},[551,2956,742],{"class":587},[551,2958,2959,2961,2963],{"class":553,"line":633},[551,2960,923],{"class":587},[551,2962,2712],{"class":738},[551,2964,742],{"class":587},[551,2966,2967,2969,2971],{"class":553,"line":641},[551,2968,784],{"class":587},[551,2970,739],{"class":738},[551,2972,742],{"class":587},[705,2974,2975,2976,2978],{},"單顆 checkbox 不需群組時，直接以 ",[548,2977,2724],{}," 綁定 input：",[539,2980,2982],{"className":726,"code":2981,"language":728,"meta":546,"style":546},"\u003Ctemplate>\n  \u003Cadmin-checkbox>\n    \u003Cadmin-checkbox-input v-model=\"checked\" \u002F>\n    \u003Cadmin-checkbox-label>標籤文字\u003C\u002Fadmin-checkbox-label>\n  \u003C\u002Fadmin-checkbox>\n\u003C\u002Ftemplate>\n",[548,2983,2984,2992,3000,3019,3036,3044],{"__ignoreMap":546},[551,2985,2986,2988,2990],{"class":553,"line":554},[551,2987,735],{"class":587},[551,2989,739],{"class":738},[551,2991,742],{"class":587},[551,2993,2994,2996,2998],{"class":553,"line":591},[551,2995,747],{"class":587},[551,2997,2716],{"class":738},[551,2999,742],{"class":587},[551,3001,3002,3004,3006,3008,3010,3012,3015,3017],{"class":553,"line":601},[551,3003,772],{"class":587},[551,3005,2917],{"class":738},[551,3007,2867],{"class":753},[551,3009,757],{"class":587},[551,3011,760],{"class":587},[551,3013,3014],{"class":561},"checked",[551,3016,760],{"class":587},[551,3018,1449],{"class":587},[551,3020,3021,3023,3025,3027,3030,3032,3034],{"class":553,"line":609},[551,3022,772],{"class":587},[551,3024,2937],{"class":738},[551,3026,778],{"class":587},[551,3028,3029],{"class":594},"標籤文字",[551,3031,784],{"class":587},[551,3033,2937],{"class":738},[551,3035,742],{"class":587},[551,3037,3038,3040,3042],{"class":553,"line":617},[551,3039,923],{"class":587},[551,3041,2716],{"class":738},[551,3043,742],{"class":587},[551,3045,3046,3048,3050],{"class":553,"line":625},[551,3047,784],{"class":587},[551,3049,739],{"class":738},[551,3051,742],{"class":587},[692,3053,2716],{"id":2716},[940,3055],{"component":3056},"AdminCheckbox",[692,3058,2712],{"id":2712},[940,3060],{"component":2767},[692,3062,2917],{"id":2917},[940,3064],{"component":3065},"AdminCheckboxInput",[692,3067,2937],{"id":2937},[940,3069],{"component":3070},"AdminCheckboxLabel",[536,3072,985],{"id":985},[987,3074],{"component":3056},[990,3076,992],{},{"title":546,"searchDepth":601,"depth":601,"links":3078},[3079,3080,3081,3086,3087,3094],{"id":507,"depth":591,"text":507},{"id":683,"depth":591,"text":683},{"id":690,"depth":591,"text":690,"children":3082},[3083,3084,3085],{"id":2707,"depth":601,"text":2707},{"id":2735,"depth":601,"text":2736},{"id":2755,"depth":601,"text":2755},{"id":2761,"depth":591,"text":2762},{"id":719,"depth":591,"text":720,"children":3088},[3089,3090,3091,3092,3093],{"id":723,"depth":601,"text":723},{"id":2716,"depth":601,"text":2716},{"id":2712,"depth":601,"text":2712},{"id":2917,"depth":601,"text":2917},{"id":2937,"depth":601,"text":2937},{"id":985,"depth":591,"text":985},"核取方塊。單選、多選、不定態（indeterminate）。",{"doc":3097,"api":3098},"https:\u002F\u002Freka-ui.com\u002Fdocs\u002Fcomponents\u002Fcheckbox","https:\u002F\u002Freka-ui.com\u002Fdocs\u002Fcomponents\u002Fcheckbox#api-reference",{},{"title":41,"description":3095},"YiOE25J9p3H0zYRZDLfjmWxcNGLwLm9yFvHASCBO-IU",{"id":3103,"title":45,"body":3104,"component":526,"description":3760,"extension":1015,"links":3761,"meta":3764,"navigation":526,"new":18,"path":46,"seo":3765,"stem":47,"wrapperKind":19,"__hash__":3766},"docs\u002Fdocs\u002Fadmin\u002Fcolor-picker.md",{"type":533,"value":3105,"toc":3745},[3106,3108,3126,3193,3195,3198,3200,3203,3206,3210,3217,3220,3222,3237,3263,3265,3543,3546,3724,3726,3729,3731,3734,3736,3738,3740,3742],[536,3107,507],{"id":507},[539,3109,3111],{"className":541,"code":3110,"filename":543,"language":544,"meta":545,"style":546},"pnpm dlx shadcn-vue add @admin\u002Fcolor-picker\n",[548,3112,3113],{"__ignoreMap":546},[551,3114,3115,3117,3119,3121,3123],{"class":553,"line":554},[551,3116,558],{"class":557},[551,3118,562],{"class":561},[551,3120,565],{"class":561},[551,3122,568],{"class":561},[551,3124,3125],{"class":561}," @admin\u002Fcolor-picker\n",[539,3127,3129],{"className":574,"code":3128,"language":576,"meta":546,"style":546},"import type { ColorPickerSwatch } from '@\u002Fcomponents\u002Fadmin\u002Fcolor-picker'\nimport {\n  AdminColorPicker,\n  AdminColorPickerContent,\n  AdminColorPickerTrigger,\n} from '@\u002Fcomponents\u002Fadmin\u002Fcolor-picker'\n",[548,3130,3131,3154,3160,3167,3174,3181],{"__ignoreMap":546},[551,3132,3133,3135,3138,3140,3143,3145,3147,3149,3152],{"class":553,"line":554},[551,3134,584],{"class":583},[551,3136,3137],{"class":583}," type",[551,3139,1273],{"class":587},[551,3141,3142],{"class":594}," ColorPickerSwatch",[551,3144,1279],{"class":587},[551,3146,671],{"class":583},[551,3148,674],{"class":587},[551,3150,3151],{"class":561},"@\u002Fcomponents\u002Fadmin\u002Fcolor-picker",[551,3153,680],{"class":587},[551,3155,3156,3158],{"class":553,"line":591},[551,3157,584],{"class":583},[551,3159,588],{"class":587},[551,3161,3162,3165],{"class":553,"line":601},[551,3163,3164],{"class":594},"  AdminColorPicker",[551,3166,598],{"class":587},[551,3168,3169,3172],{"class":553,"line":609},[551,3170,3171],{"class":594},"  AdminColorPickerContent",[551,3173,598],{"class":587},[551,3175,3176,3179],{"class":553,"line":617},[551,3177,3178],{"class":594},"  AdminColorPickerTrigger",[551,3180,598],{"class":587},[551,3182,3183,3185,3187,3189,3191],{"class":553,"line":625},[551,3184,668],{"class":587},[551,3186,671],{"class":583},[551,3188,674],{"class":587},[551,3190,3151],{"class":561},[551,3192,680],{"class":587},[536,3194,683],{"id":683},[685,3196],{"name":3197},"ColorPickerBasicDemo",[536,3199,690],{"id":690},[692,3201,3202],{"id":3202},"停用狀態",[685,3204],{"name":3205},"ColorPickerDisabledDemo",[692,3207,3209],{"id":3208},"自訂-trigger","自訂 trigger",[705,3211,3212,3213,3216],{},"當預設 trigger 樣式不符需求，透過 ",[548,3214,3215],{},"AdminColorPickerTrigger"," 的 default slot 自行渲染觸發器；slot 內第一個元素會直接成為觸發 DOM。",[685,3218],{"name":3219},"ColorPickerCustomTriggerDemo",[536,3221,720],{"id":719},[705,3223,3224,3227,3228,3230,3231,3233,3234,3236],{},[548,3225,3226],{},"swatches"," 中每個 ",[548,3229,2720],{}," 須唯一，且 ",[548,3232,2724],{}," 綁定值須為其中某個 ",[548,3235,2720],{},"；若綁定值不在清單內，trigger 會顯示為未選狀態。",[705,3238,2141,3239,3242,3243,3245,3246,3249,3250,3252,3253,3255,3256,3258,3259,3262],{},[548,3240,3241],{},"as const satisfies readonly ColorPickerSwatch[]"," 宣告 ",[548,3244,3226],{},"，",[548,3247,3248],{},"modelValue"," 會收斂成各 ",[548,3251,2720],{}," 的 literal union，綁定清單外的字串即觸發 TypeScript 型別錯誤；未加 ",[548,3254,2782],{}," 時 ",[548,3257,3248],{}," 退回 ",[548,3260,3261],{},"string","，維持向後相容。",[692,3264,723],{"id":723},[539,3266,3268],{"className":726,"code":3267,"language":728,"meta":546,"style":546},"\u003Cscript setup lang=\"ts\">\nimport type { ColorPickerSwatch } from '@\u002Fcomponents\u002Fadmin\u002Fcolor-picker'\n\nconst swatches = [\n  { value: 'red', color: '#e1615e' },\n  { value: 'blue', color: '#4567f3' },\n] as const satisfies readonly ColorPickerSwatch[]\nconst value = ref\u003C(typeof swatches)[number]['value']>()\n\u003C\u002Fscript>\n\n\u003Ctemplate>\n  \u003Cadmin-color-picker v-model=\"value\" :swatches=\"swatches\">\n    \u003Cadmin-color-picker-trigger \u002F>\n    \u003Cadmin-color-picker-content \u002F>\n  \u003C\u002Fadmin-color-picker>\n\u003C\u002Ftemplate>\n",[548,3269,3270,3293,3313,3317,3329,3364,3394,3416,3458,3466,3470,3478,3508,3517,3526,3534],{"__ignoreMap":546},[551,3271,3272,3274,3277,3280,3283,3285,3287,3289,3291],{"class":553,"line":554},[551,3273,735],{"class":587},[551,3275,3276],{"class":738},"script",[551,3278,3279],{"class":753}," setup",[551,3281,3282],{"class":753}," lang",[551,3284,757],{"class":587},[551,3286,760],{"class":587},[551,3288,576],{"class":561},[551,3290,760],{"class":587},[551,3292,742],{"class":587},[551,3294,3295,3297,3299,3301,3303,3305,3307,3309,3311],{"class":553,"line":591},[551,3296,584],{"class":583},[551,3298,3137],{"class":583},[551,3300,1273],{"class":587},[551,3302,3142],{"class":594},[551,3304,1279],{"class":587},[551,3306,671],{"class":583},[551,3308,674],{"class":587},[551,3310,3151],{"class":561},[551,3312,680],{"class":587},[551,3314,3315],{"class":553,"line":601},[551,3316,1293],{"emptyLinePlaceholder":526},[551,3318,3319,3322,3325,3327],{"class":553,"line":609},[551,3320,3321],{"class":753},"const",[551,3323,3324],{"class":594}," swatches ",[551,3326,757],{"class":587},[551,3328,1315],{"class":594},[551,3330,3331,3334,3337,3339,3341,3344,3346,3349,3352,3354,3356,3359,3361],{"class":553,"line":617},[551,3332,3333],{"class":587},"  {",[551,3335,3336],{"class":738}," value",[551,3338,1169],{"class":587},[551,3340,674],{"class":587},[551,3342,3343],{"class":561},"red",[551,3345,1214],{"class":587},[551,3347,3348],{"class":587},",",[551,3350,3351],{"class":738}," color",[551,3353,1169],{"class":587},[551,3355,674],{"class":587},[551,3357,3358],{"class":561},"#e1615e",[551,3360,1214],{"class":587},[551,3362,3363],{"class":587}," },\n",[551,3365,3366,3368,3370,3372,3374,3377,3379,3381,3383,3385,3387,3390,3392],{"class":553,"line":625},[551,3367,3333],{"class":587},[551,3369,3336],{"class":738},[551,3371,1169],{"class":587},[551,3373,674],{"class":587},[551,3375,3376],{"class":561},"blue",[551,3378,1214],{"class":587},[551,3380,3348],{"class":587},[551,3382,3351],{"class":738},[551,3384,1169],{"class":587},[551,3386,674],{"class":587},[551,3388,3389],{"class":561},"#4567f3",[551,3391,1214],{"class":587},[551,3393,3363],{"class":587},[551,3395,3396,3399,3402,3405,3408,3411,3413],{"class":553,"line":633},[551,3397,3398],{"class":594},"] ",[551,3400,3401],{"class":583},"as",[551,3403,3404],{"class":557}," const",[551,3406,3407],{"class":583}," satisfies",[551,3409,3410],{"class":753}," readonly",[551,3412,3142],{"class":557},[551,3414,3415],{"class":594},"[]\n",[551,3417,3418,3420,3423,3425,3428,3430,3432,3435,3438,3441,3444,3446,3448,3450,3453,3455],{"class":553,"line":641},[551,3419,3321],{"class":753},[551,3421,3422],{"class":594}," value ",[551,3424,757],{"class":587},[551,3426,3427],{"class":1154}," ref",[551,3429,735],{"class":587},[551,3431,1158],{"class":594},[551,3433,3434],{"class":587},"typeof",[551,3436,3437],{"class":594}," swatches)[",[551,3439,3440],{"class":557},"number",[551,3442,3443],{"class":594},"][",[551,3445,1214],{"class":587},[551,3447,2720],{"class":561},[551,3449,1214],{"class":587},[551,3451,3452],{"class":594},"]",[551,3454,778],{"class":587},[551,3456,3457],{"class":594},"()\n",[551,3459,3460,3462,3464],{"class":553,"line":649},[551,3461,784],{"class":587},[551,3463,3276],{"class":738},[551,3465,742],{"class":587},[551,3467,3468],{"class":553,"line":657},[551,3469,1293],{"emptyLinePlaceholder":526},[551,3471,3472,3474,3476],{"class":553,"line":665},[551,3473,735],{"class":587},[551,3475,739],{"class":738},[551,3477,742],{"class":587},[551,3479,3480,3482,3485,3487,3489,3491,3493,3495,3498,3500,3502,3504,3506],{"class":553,"line":901},[551,3481,747],{"class":587},[551,3483,3484],{"class":738},"admin-color-picker",[551,3486,2867],{"class":753},[551,3488,757],{"class":587},[551,3490,760],{"class":587},[551,3492,2720],{"class":561},[551,3494,760],{"class":587},[551,3496,3497],{"class":753}," :swatches",[551,3499,757],{"class":587},[551,3501,760],{"class":587},[551,3503,3226],{"class":561},[551,3505,760],{"class":587},[551,3507,742],{"class":587},[551,3509,3510,3512,3515],{"class":553,"line":910},[551,3511,772],{"class":587},[551,3513,3514],{"class":738},"admin-color-picker-trigger",[551,3516,1449],{"class":587},[551,3518,3519,3521,3524],{"class":553,"line":920},[551,3520,772],{"class":587},[551,3522,3523],{"class":738},"admin-color-picker-content",[551,3525,1449],{"class":587},[551,3527,3528,3530,3532],{"class":553,"line":930},[551,3529,923],{"class":587},[551,3531,3484],{"class":738},[551,3533,742],{"class":587},[551,3535,3537,3539,3541],{"class":553,"line":3536},16,[551,3538,784],{"class":587},[551,3540,739],{"class":738},[551,3542,742],{"class":587},[705,3544,3545],{},"需要自訂 trigger 時放入 slot 內容：",[539,3547,3549],{"className":726,"code":3548,"language":728,"meta":546,"style":546},"\u003Ctemplate>\n  \u003Cadmin-color-picker v-model=\"value\" :swatches=\"swatches\">\n    \u003Cadmin-color-picker-trigger v-slot=\"{ swatch, disabled }\">\n      \u003Cbutton :disabled=\"disabled\">\n        \u003Cspan v-if=\"swatch\" :style=\"{ background: swatch.color }\">\u003C\u002Fspan>\n        \u003Cspan v-else>選擇顏色\u003C\u002Fspan>\n      \u003C\u002Fbutton>\n    \u003C\u002Fadmin-color-picker-trigger>\n    \u003Cadmin-color-picker-content \u002F>\n  \u003C\u002Fadmin-color-picker>\n\u003C\u002Ftemplate>\n",[548,3550,3551,3559,3587,3607,3627,3664,3684,3692,3700,3708,3716],{"__ignoreMap":546},[551,3552,3553,3555,3557],{"class":553,"line":554},[551,3554,735],{"class":587},[551,3556,739],{"class":738},[551,3558,742],{"class":587},[551,3560,3561,3563,3565,3567,3569,3571,3573,3575,3577,3579,3581,3583,3585],{"class":553,"line":591},[551,3562,747],{"class":587},[551,3564,3484],{"class":738},[551,3566,2867],{"class":753},[551,3568,757],{"class":587},[551,3570,760],{"class":587},[551,3572,2720],{"class":561},[551,3574,760],{"class":587},[551,3576,3497],{"class":753},[551,3578,757],{"class":587},[551,3580,760],{"class":587},[551,3582,3226],{"class":561},[551,3584,760],{"class":587},[551,3586,742],{"class":587},[551,3588,3589,3591,3593,3596,3598,3600,3603,3605],{"class":553,"line":601},[551,3590,772],{"class":587},[551,3592,3514],{"class":738},[551,3594,3595],{"class":753}," v-slot",[551,3597,757],{"class":587},[551,3599,760],{"class":587},[551,3601,3602],{"class":561},"{ swatch, disabled }",[551,3604,760],{"class":587},[551,3606,742],{"class":587},[551,3608,3609,3611,3614,3617,3619,3621,3623,3625],{"class":553,"line":609},[551,3610,802],{"class":587},[551,3612,3613],{"class":738},"button",[551,3615,3616],{"class":753}," :disabled",[551,3618,757],{"class":587},[551,3620,760],{"class":587},[551,3622,2480],{"class":561},[551,3624,760],{"class":587},[551,3626,742],{"class":587},[551,3628,3629,3631,3633,3636,3638,3640,3643,3645,3648,3650,3652,3655,3657,3660,3662],{"class":553,"line":617},[551,3630,812],{"class":587},[551,3632,551],{"class":738},[551,3634,3635],{"class":753}," v-if",[551,3637,757],{"class":587},[551,3639,760],{"class":587},[551,3641,3642],{"class":561},"swatch",[551,3644,760],{"class":587},[551,3646,3647],{"class":753}," :style",[551,3649,757],{"class":587},[551,3651,760],{"class":587},[551,3653,3654],{"class":561},"{ background: swatch.color }",[551,3656,760],{"class":587},[551,3658,3659],{"class":587},">\u003C\u002F",[551,3661,551],{"class":738},[551,3663,742],{"class":587},[551,3665,3666,3668,3670,3673,3675,3678,3680,3682],{"class":553,"line":625},[551,3667,812],{"class":587},[551,3669,551],{"class":738},[551,3671,3672],{"class":753}," v-else",[551,3674,778],{"class":587},[551,3676,3677],{"class":594},"選擇顏色",[551,3679,784],{"class":587},[551,3681,551],{"class":738},[551,3683,742],{"class":587},[551,3685,3686,3688,3690],{"class":553,"line":633},[551,3687,849],{"class":587},[551,3689,3613],{"class":738},[551,3691,742],{"class":587},[551,3693,3694,3696,3698],{"class":553,"line":641},[551,3695,913],{"class":587},[551,3697,3514],{"class":738},[551,3699,742],{"class":587},[551,3701,3702,3704,3706],{"class":553,"line":649},[551,3703,772],{"class":587},[551,3705,3523],{"class":738},[551,3707,1449],{"class":587},[551,3709,3710,3712,3714],{"class":553,"line":657},[551,3711,923],{"class":587},[551,3713,3484],{"class":738},[551,3715,742],{"class":587},[551,3717,3718,3720,3722],{"class":553,"line":665},[551,3719,784],{"class":587},[551,3721,739],{"class":738},[551,3723,742],{"class":587},[692,3725,3484],{"id":3484},[940,3727],{"component":3728},"AdminColorPicker",[692,3730,3523],{"id":3523},[940,3732],{"component":3733},"AdminColorPickerContent",[692,3735,3514],{"id":3514},[940,3737],{"component":3215},[536,3739,985],{"id":985},[987,3741],{"component":3728},[990,3743,3744],{},"html pre.shiki code .sBMFI, html code.shiki .sBMFI{--shiki-light:#E2931D;--shiki-default:#FFCB6B;--shiki-dark:#FFCB6B}html pre.shiki code .sfazB, html code.shiki .sfazB{--shiki-light:#91B859;--shiki-default:#C3E88D;--shiki-dark:#C3E88D}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 pre.shiki code .s7zQu, html code.shiki .s7zQu{--shiki-light:#39ADB5;--shiki-light-font-style:italic;--shiki-default:#89DDFF;--shiki-default-font-style:italic;--shiki-dark:#89DDFF;--shiki-dark-font-style:italic}html pre.shiki code .sMK4o, html code.shiki .sMK4o{--shiki-light:#39ADB5;--shiki-default:#89DDFF;--shiki-dark:#89DDFF}html pre.shiki code .sTEyZ, html code.shiki .sTEyZ{--shiki-light:#90A4AE;--shiki-default:#EEFFFF;--shiki-dark:#BABED8}html pre.shiki code .swJcz, html code.shiki .swJcz{--shiki-light:#E53935;--shiki-default:#F07178;--shiki-dark:#F07178}html pre.shiki code .spNyl, html code.shiki .spNyl{--shiki-light:#9C3EDA;--shiki-default:#C792EA;--shiki-dark:#C792EA}html pre.shiki code .s2Zo4, html code.shiki .s2Zo4{--shiki-light:#6182B8;--shiki-default:#82AAFF;--shiki-dark:#82AAFF}",{"title":546,"searchDepth":601,"depth":601,"links":3746},[3747,3748,3749,3753,3759],{"id":507,"depth":591,"text":507},{"id":683,"depth":591,"text":683},{"id":690,"depth":591,"text":690,"children":3750},[3751,3752],{"id":3202,"depth":601,"text":3202},{"id":3208,"depth":601,"text":3209},{"id":719,"depth":591,"text":720,"children":3754},[3755,3756,3757,3758],{"id":723,"depth":601,"text":723},{"id":3484,"depth":601,"text":3484},{"id":3523,"depth":601,"text":3523},{"id":3514,"depth":601,"text":3514},{"id":985,"depth":591,"text":985},"從呼叫端傳入的色票陣列挑選顏色。",{"doc":3762,"api":3763},"https:\u002F\u002Freka-ui.com\u002Fdocs\u002Fcomponents\u002Fpopover","https:\u002F\u002Freka-ui.com\u002Fdocs\u002Fcomponents\u002Fpopover#api-reference",{},{"title":45,"description":3760},"ojBTMfFnFyGZJq2VGTNz0VXt437qjRAY3x53Yh07moE",{"id":3768,"title":49,"body":3769,"component":526,"description":4677,"extension":1015,"links":4678,"meta":4680,"navigation":526,"new":18,"path":50,"seo":4681,"stem":51,"wrapperKind":19,"__hash__":4682},"docs\u002Fdocs\u002Fadmin\u002Fcropper.md",{"type":533,"value":3770,"toc":4653},[3771,3773,3791,3862,3879,3883,3961,3965,4104,4106,4109,4111,4115,4118,4122,4125,4128,4146,4149,4153,4175,4178,4180,4182,4429,4431,4434,4437,4440,4442,4445,4447,4451,4507,4510,4569,4573,4599,4604,4647,4649,4651],[536,3772,507],{"id":507},[539,3774,3776],{"className":541,"code":3775,"filename":543,"language":544,"meta":545,"style":546},"pnpm dlx shadcn-vue add @admin\u002Fcropper\n",[548,3777,3778],{"__ignoreMap":546},[551,3779,3780,3782,3784,3786,3788],{"class":553,"line":554},[551,3781,558],{"class":557},[551,3783,562],{"class":561},[551,3785,565],{"class":561},[551,3787,568],{"class":561},[551,3789,3790],{"class":561}," @admin\u002Fcropper\n",[539,3792,3794],{"className":574,"code":3793,"language":576,"meta":546,"style":546},"import type { CropResult } from '@\u002Fcomponents\u002Fadmin\u002Fcropper'\nimport {\n  AdminCropper,\n  AdminCropperPreview,\n  AdminCropperZoom,\n  useAdminCropperContext\n} from '@\u002Fcomponents\u002Fadmin\u002Fcropper'\n",[548,3795,3796,3818,3824,3831,3838,3845,3850],{"__ignoreMap":546},[551,3797,3798,3800,3802,3804,3807,3809,3811,3813,3816],{"class":553,"line":554},[551,3799,584],{"class":583},[551,3801,3137],{"class":583},[551,3803,1273],{"class":587},[551,3805,3806],{"class":594}," CropResult",[551,3808,1279],{"class":587},[551,3810,671],{"class":583},[551,3812,674],{"class":587},[551,3814,3815],{"class":561},"@\u002Fcomponents\u002Fadmin\u002Fcropper",[551,3817,680],{"class":587},[551,3819,3820,3822],{"class":553,"line":591},[551,3821,584],{"class":583},[551,3823,588],{"class":587},[551,3825,3826,3829],{"class":553,"line":601},[551,3827,3828],{"class":594},"  AdminCropper",[551,3830,598],{"class":587},[551,3832,3833,3836],{"class":553,"line":609},[551,3834,3835],{"class":594},"  AdminCropperPreview",[551,3837,598],{"class":587},[551,3839,3840,3843],{"class":553,"line":617},[551,3841,3842],{"class":594},"  AdminCropperZoom",[551,3844,598],{"class":587},[551,3846,3847],{"class":553,"line":625},[551,3848,3849],{"class":594},"  useAdminCropperContext\n",[551,3851,3852,3854,3856,3858,3860],{"class":553,"line":633},[551,3853,668],{"class":587},[551,3855,671],{"class":583},[551,3857,674],{"class":587},[551,3859,3815],{"class":561},[551,3861,680],{"class":587},[705,3863,3864,3865,1123,3868,1123,3871,3874,3875,3878],{},"cropperjs v2 是一組 web components（",[548,3866,3867],{},"\u003Ccropper-canvas>",[548,3869,3870],{},"\u003Ccropper-image>",[548,3872,3873],{},"\u003Ccropper-selection>"," …），需要告訴 Vue 編譯器把它們當成 native custom element，否則 dev console 會出現 ",[548,3876,3877],{},"[Vue warn]: Failed to resolve component: cropper-*"," 警告。視專案類型把下列設定加進去：",[705,3880,3881],{},[1135,3882,1137],{},[539,3884,3886],{"className":574,"code":3885,"filename":1141,"language":576,"meta":546,"style":546},"export default defineNuxtConfig({\n  vue: {\n    compilerOptions: {\n      isCustomElement: (tag) => tag.startsWith('cropper-')\n    }\n  }\n})\n",[548,3887,3888,3900,3908,3916,3947,3951,3955],{"__ignoreMap":546},[551,3889,3890,3892,3894,3896,3898],{"class":553,"line":554},[551,3891,1148],{"class":583},[551,3893,1151],{"class":583},[551,3895,1155],{"class":1154},[551,3897,1158],{"class":594},[551,3899,1161],{"class":587},[551,3901,3902,3904,3906],{"class":553,"line":591},[551,3903,1166],{"class":738},[551,3905,1169],{"class":587},[551,3907,588],{"class":587},[551,3909,3910,3912,3914],{"class":553,"line":601},[551,3911,1176],{"class":738},[551,3913,1169],{"class":587},[551,3915,588],{"class":587},[551,3917,3918,3920,3922,3924,3926,3928,3930,3932,3934,3936,3938,3940,3943,3945],{"class":553,"line":609},[551,3919,1185],{"class":1154},[551,3921,1169],{"class":587},[551,3923,1190],{"class":587},[551,3925,1194],{"class":1193},[551,3927,1197],{"class":587},[551,3929,1200],{"class":753},[551,3931,1203],{"class":594},[551,3933,1206],{"class":587},[551,3935,1209],{"class":1154},[551,3937,1158],{"class":594},[551,3939,1214],{"class":587},[551,3941,3942],{"class":561},"cropper-",[551,3944,1214],{"class":587},[551,3946,1222],{"class":594},[551,3948,3949],{"class":553,"line":617},[551,3950,1227],{"class":587},[551,3952,3953],{"class":553,"line":625},[551,3954,1232],{"class":587},[551,3956,3957,3959],{"class":553,"line":633},[551,3958,668],{"class":587},[551,3960,1222],{"class":594},[705,3962,3963],{},[1135,3964,1243],{},[539,3966,3968],{"className":574,"code":3967,"filename":1247,"language":576,"meta":546,"style":546},"import vue from '@vitejs\u002Fplugin-vue'\nimport { defineConfig } from 'vite'\n\nexport default defineConfig({\n  plugins: [\n    vue({\n      template: {\n        compilerOptions: {\n          isCustomElement: (tag) => tag.startsWith('cropper-')\n        }\n      }\n    })\n  ]\n})\n",[548,3969,3970,3984,4002,4006,4018,4026,4034,4042,4050,4080,4084,4088,4094,4098],{"__ignoreMap":546},[551,3971,3972,3974,3976,3978,3980,3982],{"class":553,"line":554},[551,3973,584],{"class":583},[551,3975,1256],{"class":594},[551,3977,1259],{"class":583},[551,3979,674],{"class":587},[551,3981,1264],{"class":561},[551,3983,680],{"class":587},[551,3985,3986,3988,3990,3992,3994,3996,3998,4000],{"class":553,"line":591},[551,3987,584],{"class":583},[551,3989,1273],{"class":587},[551,3991,1276],{"class":594},[551,3993,1279],{"class":587},[551,3995,671],{"class":583},[551,3997,674],{"class":587},[551,3999,1286],{"class":561},[551,4001,680],{"class":587},[551,4003,4004],{"class":553,"line":601},[551,4005,1293],{"emptyLinePlaceholder":526},[551,4007,4008,4010,4012,4014,4016],{"class":553,"line":609},[551,4009,1148],{"class":583},[551,4011,1151],{"class":583},[551,4013,1276],{"class":1154},[551,4015,1158],{"class":594},[551,4017,1161],{"class":587},[551,4019,4020,4022,4024],{"class":553,"line":617},[551,4021,1310],{"class":738},[551,4023,1169],{"class":587},[551,4025,1315],{"class":594},[551,4027,4028,4030,4032],{"class":553,"line":625},[551,4029,1320],{"class":1154},[551,4031,1158],{"class":594},[551,4033,1161],{"class":587},[551,4035,4036,4038,4040],{"class":553,"line":633},[551,4037,1329],{"class":738},[551,4039,1169],{"class":587},[551,4041,588],{"class":587},[551,4043,4044,4046,4048],{"class":553,"line":641},[551,4045,1338],{"class":738},[551,4047,1169],{"class":587},[551,4049,588],{"class":587},[551,4051,4052,4054,4056,4058,4060,4062,4064,4066,4068,4070,4072,4074,4076,4078],{"class":553,"line":649},[551,4053,1347],{"class":1154},[551,4055,1169],{"class":587},[551,4057,1190],{"class":587},[551,4059,1194],{"class":1193},[551,4061,1197],{"class":587},[551,4063,1200],{"class":753},[551,4065,1203],{"class":594},[551,4067,1206],{"class":587},[551,4069,1209],{"class":1154},[551,4071,1158],{"class":594},[551,4073,1214],{"class":587},[551,4075,3942],{"class":561},[551,4077,1214],{"class":587},[551,4079,1222],{"class":594},[551,4081,4082],{"class":553,"line":657},[551,4083,1378],{"class":587},[551,4085,4086],{"class":553,"line":665},[551,4087,1383],{"class":587},[551,4089,4090,4092],{"class":553,"line":901},[551,4091,1388],{"class":587},[551,4093,1222],{"class":594},[551,4095,4096],{"class":553,"line":910},[551,4097,1395],{"class":594},[551,4099,4100,4102],{"class":553,"line":920},[551,4101,668],{"class":587},[551,4103,1222],{"class":594},[536,4105,683],{"id":683},[685,4107],{"name":4108},"CropperBasicDemo",[536,4110,690],{"id":690},[692,4112,4114],{"id":4113},"互動-playground","互動 playground",[685,4116],{"name":4117},"CropperPlaygroundDemo",[692,4119,4121],{"id":4120},"自訂-zoom-控制","自訂 zoom 控制",[685,4123],{"name":4124},"CropperZoomDemo",[692,4126,4127],{"id":4127},"多步驟裁切流程",[705,4129,4130,4131,1613,4134,4137,4138,4141,4142,4145],{},"搭配 ",[548,4132,4133],{},"admin-dialog",[548,4135,4136],{},"admin-stepper"," 完成「電腦版裁切 → 手機版裁切 → 預覽結果」三步驟流程；每一步用一個 ",[548,4139,4140],{},"\u003CAdminCropper>"," instance 鎖定不同 aspect ratio，最後一步直接以 ",[548,4143,4144],{},"result.toDataURL()"," 顯示成品。",[685,4147],{"name":4148},"CropperMultiStepDemo",[692,4150,4152],{"id":4151},"裁切-gif-動畫","裁切 GIF 動畫",[705,4154,4155,4156,4159,4160,4163,4164,4167,4168,1613,4171,4174],{},"呼叫 ",[548,4157,4158],{},"result.toBlob('image\u002Fgif')"," 或 ",[548,4161,4162],{},"result.toDataURL('image\u002Fgif')"," 會走 GIF pipeline，重新解碼所有 frame、依 selection 對每幀做像素裁切、再以 ",[548,4165,4166],{},"gifenc"," 重新編碼成動畫 GIF。原檔的 frame delay 與動畫長度會被保留。透過 ",[548,4169,4170],{},"gif-max-colors",[548,4172,4173],{},"gif-frame-stride"," 兩個 prop 可在畫質與檔案大小之間取捨。",[685,4176],{"name":4177},"CropperGifDemo",[536,4179,720],{"id":719},[692,4181,723],{"id":723},[539,4183,4185],{"className":726,"code":4184,"language":728,"meta":546,"style":546},"\u003Ctemplate>\n  \u003Cadmin-cropper v-model:result=\"result\" :aspect-ratio :src>\n    \u003Ctemplate\n      #default=\"{ selectionId, zoom, zoomBy, zoomTo, minZoom, maxZoom, zoomable }\"\n    >\n      \u003Cadmin-cropper-preview :selection=\"selectionId\" \u002F>\n      \u003Cadmin-cropper-zoom\n        v-if=\"zoomable\"\n        :max-zoom=\"maxZoom\"\n        :min-zoom=\"minZoom\"\n        :zoom=\"zoom\"\n        @zoom-by=\"zoomBy\"\n        @zoom-to=\"zoomTo\"\n      \u002F>\n    \u003C\u002Ftemplate>\n  \u003C\u002Fadmin-cropper>\n\u003C\u002Ftemplate>\n",[548,4186,4187,4195,4222,4229,4282,4287,4308,4315,4329,4343,4357,4371,4385,4399,4404,4412,4420],{"__ignoreMap":546},[551,4188,4189,4191,4193],{"class":553,"line":554},[551,4190,735],{"class":587},[551,4192,739],{"class":738},[551,4194,742],{"class":587},[551,4196,4197,4199,4202,4205,4207,4209,4212,4214,4217,4220],{"class":553,"line":591},[551,4198,747],{"class":587},[551,4200,4201],{"class":738},"admin-cropper",[551,4203,4204],{"class":753}," v-model:result",[551,4206,757],{"class":587},[551,4208,760],{"class":587},[551,4210,4211],{"class":561},"result",[551,4213,760],{"class":587},[551,4215,4216],{"class":753}," :aspect-ratio",[551,4218,4219],{"class":753}," :src",[551,4221,742],{"class":587},[551,4223,4224,4226],{"class":553,"line":601},[551,4225,772],{"class":587},[551,4227,4228],{"class":738},"template\n",[551,4230,4231,4234,4237,4239,4241,4244,4247,4249,4252,4254,4257,4259,4262,4264,4267,4269,4272,4274,4277,4279],{"class":553,"line":609},[551,4232,4233],{"class":587},"      #",[551,4235,4236],{"class":753},"default",[551,4238,757],{"class":587},[551,4240,760],{"class":587},[551,4242,4243],{"class":587},"{",[551,4245,4246],{"class":594}," selectionId",[551,4248,3348],{"class":587},[551,4250,4251],{"class":594}," zoom",[551,4253,3348],{"class":587},[551,4255,4256],{"class":594}," zoomBy",[551,4258,3348],{"class":587},[551,4260,4261],{"class":594}," zoomTo",[551,4263,3348],{"class":587},[551,4265,4266],{"class":594}," minZoom",[551,4268,3348],{"class":587},[551,4270,4271],{"class":594}," maxZoom",[551,4273,3348],{"class":587},[551,4275,4276],{"class":594}," zoomable ",[551,4278,668],{"class":587},[551,4280,4281],{"class":587},"\"\n",[551,4283,4284],{"class":553,"line":617},[551,4285,4286],{"class":587},"    >\n",[551,4288,4289,4291,4294,4297,4299,4301,4304,4306],{"class":553,"line":625},[551,4290,802],{"class":587},[551,4292,4293],{"class":738},"admin-cropper-preview",[551,4295,4296],{"class":753}," :selection",[551,4298,757],{"class":587},[551,4300,760],{"class":587},[551,4302,4303],{"class":561},"selectionId",[551,4305,760],{"class":587},[551,4307,1449],{"class":587},[551,4309,4310,4312],{"class":553,"line":633},[551,4311,802],{"class":587},[551,4313,4314],{"class":738},"admin-cropper-zoom\n",[551,4316,4317,4320,4322,4324,4327],{"class":553,"line":641},[551,4318,4319],{"class":753},"        v-if",[551,4321,757],{"class":587},[551,4323,760],{"class":587},[551,4325,4326],{"class":561},"zoomable",[551,4328,4281],{"class":587},[551,4330,4331,4334,4336,4338,4341],{"class":553,"line":649},[551,4332,4333],{"class":753},"        :max-zoom",[551,4335,757],{"class":587},[551,4337,760],{"class":587},[551,4339,4340],{"class":561},"maxZoom",[551,4342,4281],{"class":587},[551,4344,4345,4348,4350,4352,4355],{"class":553,"line":657},[551,4346,4347],{"class":753},"        :min-zoom",[551,4349,757],{"class":587},[551,4351,760],{"class":587},[551,4353,4354],{"class":561},"minZoom",[551,4356,4281],{"class":587},[551,4358,4359,4362,4364,4366,4369],{"class":553,"line":665},[551,4360,4361],{"class":753},"        :zoom",[551,4363,757],{"class":587},[551,4365,760],{"class":587},[551,4367,4368],{"class":561},"zoom",[551,4370,4281],{"class":587},[551,4372,4373,4376,4378,4380,4383],{"class":553,"line":901},[551,4374,4375],{"class":753},"        @zoom-by",[551,4377,757],{"class":587},[551,4379,760],{"class":587},[551,4381,4382],{"class":561},"zoomBy",[551,4384,4281],{"class":587},[551,4386,4387,4390,4392,4394,4397],{"class":553,"line":910},[551,4388,4389],{"class":753},"        @zoom-to",[551,4391,757],{"class":587},[551,4393,760],{"class":587},[551,4395,4396],{"class":561},"zoomTo",[551,4398,4281],{"class":587},[551,4400,4401],{"class":553,"line":920},[551,4402,4403],{"class":587},"      \u002F>\n",[551,4405,4406,4408,4410],{"class":553,"line":930},[551,4407,913],{"class":587},[551,4409,739],{"class":738},[551,4411,742],{"class":587},[551,4413,4414,4416,4418],{"class":553,"line":3536},[551,4415,923],{"class":587},[551,4417,4201],{"class":738},[551,4419,742],{"class":587},[551,4421,4423,4425,4427],{"class":553,"line":4422},17,[551,4424,784],{"class":587},[551,4426,739],{"class":738},[551,4428,742],{"class":587},[692,4430,4201],{"id":4201},[940,4432],{"component":4433},"AdminCropper",[692,4435,4436],{"id":4436},"admin-cropper-zoom",[940,4438],{"component":4439},"AdminCropperZoom",[692,4441,4293],{"id":4293},[940,4443],{"component":4444},"AdminCropperPreview",[536,4446,1556],{"id":1556},[692,4448,4450],{"id":4449},"selection-行為","Selection 行為",[1558,4452,4453,4476,4489],{},[1561,4454,4455,4460,4461,4464,4465,4468,4469,4472,4473,713],{},[1135,4456,4457],{},[548,4458,4459],{},"selection-within","：只限制",[1135,4462,4463],{},"畫布內的拖動範圍","（軸對齊邊界；旋轉時取可視外包矩形），不影響 ",[548,4466,4467],{},"result.region"," 仍以原圖像素表達。預設 ",[548,4470,4471],{},"'none'"," 允許拖到圖外（適合 GIF 透明邊）；要嚴格框在圖內設 ",[548,4474,4475],{},"'image'",[1561,4477,4478,2466,4483,4485,4486,4488],{},[1135,4479,4480],{},[548,4481,4482],{},"selection-redrawable",[548,4484,2742],{},"（預設）可在選框外暗區拖曳重畫；",[548,4487,2745],{}," 鎖定為只能調整現有框，避免表單誤觸。",[1561,4490,4491,4499,4500,4503,4504,4506],{},[1135,4492,4493,1613,4496],{},[548,4494,4495],{},"min-selection-size",[548,4497,4498],{},"aspect-ratio","：兩者比例不一致時 dev console 會 warn（不 throw），實際能拖到的最小尺寸會被兩個限制夾住、可能比 ",[548,4501,4502],{},"min"," 還大。建議讓 ",[548,4505,4502],{}," 寬高直接等於目標輸出尺寸。",[692,4508,4509],{"id":4509},"輸出行為",[1558,4511,4512,4527,4536,4551,4560],{},[1561,4513,4514,4526],{},[1135,4515,4516,1123,4519,1123,4522,4525],{},[548,4517,4518],{},"toCanvas",[548,4520,4521],{},"toDataURL",[548,4523,4524],{},"toBlob"," 皆為 async","，都回傳 Promise。",[1561,4528,4529,4532,4533,713],{},[1135,4530,4531],{},"預設不降採樣","：非 GIF 路徑輸出原圖像素座標下的裁切區域，不會因畫面上 selection 較小而縮圖；要刻意縮放請傳 ",[548,4534,4535],{},"{ width, height }",[1561,4537,4538,4544,4545,4159,4548,713],{},[1135,4539,4540,4543],{},[548,4541,4542],{},"toCanvas()"," 對 GIF 來源只輸出當前一幀","：要保留動畫請改用 ",[548,4546,4547],{},"toBlob({ mime: 'image\u002Fgif' })",[548,4549,4550],{},"toDataURL({ mime: 'image\u002Fgif' })",[1561,4552,4553,4556,4557,4559],{},[1135,4554,4555],{},"GIF pipeline 跑在 main thread","：解碼／量化／編碼皆同步。建議來源 \u003C 2MB \u002F \u003C 50 frames，超過會凍結 UI 100ms 以上，可用 ",[548,4558,4173],{}," 跳幀緩解。",[1561,4561,4562,4565,4566,4568],{},[1135,4563,4564],{},"部分 GIF 走 lossy 重量化","：僅當來源每一幀皆為 disposal type 2（還原到背景）時才走保留原始色盤的無損裁切路徑；多數含 disposal 0／1 幀的一般 GIF 會改走 composite 後以 ",[548,4567,4170],{}," 重新量化的路徑，可能出現輕微色帶。此為畫質取捨，非錯誤。",[692,4570,4572],{"id":4571},"ssr-與-vue-設定","SSR 與 Vue 設定",[1558,4574,4575,4588],{},[1561,4576,4577,4579,4580,4582,4583,4585,4586,713],{},[1135,4578,1587],{},"：cropperjs v2 web components 只能在瀏覽器 register；元件殼不含 ",[548,4581,1591],{},"。Nuxt 請自行以 ",[548,4584,1591],{}," 包覆，其他 SSR 框架用等價機制；純 CSR 不需處理。見 ",[697,4587,1603],{"href":1602},[1561,4589,4590,4595,4596,4598],{},[1135,4591,4592,4593],{},"必須設定 ",[548,4594,1568],{},"：否則 dev console 會印 ",[548,4597,3877],{},"。寫法見上方「安裝」章節。",[4600,4601,4603],"h4",{"id":4602},"cors","CORS",[1558,4605,4606,4631],{},[1561,4607,4608,4611,4612,4615,4616,1123,4618,1123,4620,4622,4623,4626,4627,4630],{},[1135,4609,4610],{},"一般輸出","：跨域圖片需回 ",[548,4613,4614],{},"Access-Control-Allow-Origin","，否則 ",[548,4617,4518],{},[548,4619,4521],{},[548,4621,4524],{}," 會 throw ",[548,4624,4625],{},"SecurityError","。元件已加 ",[548,4628,4629],{},"crossorigin=\"anonymous\"","，picsum 等 CDN 可正常運作。",[1561,4632,4633,4636,4637,4640,4641,2477,4643,4646],{},[1135,4634,4635],{},"GIF 輸出另需 fetch CORS","：GIF pipeline 會額外 ",[548,4638,4639],{},"fetch(src)"," 重新取 bytes，server 同樣要回 ",[548,4642,4614],{},[548,4644,4645],{},"\u003Cimg>"," 顯示成功不代表 fetch 拿得到。",[536,4648,985],{"id":985},[987,4650],{"component":4433},[990,4652,1645],{},{"title":546,"searchDepth":601,"depth":601,"links":4654},[4655,4656,4657,4663,4669,4676],{"id":507,"depth":591,"text":507},{"id":683,"depth":591,"text":683},{"id":690,"depth":591,"text":690,"children":4658},[4659,4660,4661,4662],{"id":4113,"depth":601,"text":4114},{"id":4120,"depth":601,"text":4121},{"id":4127,"depth":601,"text":4127},{"id":4151,"depth":601,"text":4152},{"id":719,"depth":591,"text":720,"children":4664},[4665,4666,4667,4668],{"id":723,"depth":601,"text":723},{"id":4201,"depth":601,"text":4201},{"id":4436,"depth":601,"text":4436},{"id":4293,"depth":601,"text":4293},{"id":1556,"depth":591,"text":1556,"children":4670},[4671,4672,4673],{"id":4449,"depth":601,"text":4450},{"id":4509,"depth":601,"text":4509},{"id":4571,"depth":601,"text":4572,"children":4674},[4675],{"id":4602,"depth":609,"text":4603},{"id":985,"depth":591,"text":985},"圖片裁切。可拖移 selection、zoom、即時預覽；可搭配 dialog／stepper 做多尺寸裁切。",{"doc":4679},"https:\u002F\u002Fgithub.com\u002Ffengyuanchen\u002Fcropperjs",{},{"title":49,"description":4677},"3y50TBCGzoEt0WeWuTE-0UHiLZ2NC57BHQz9J4QkS2U",{"id":4684,"title":53,"body":4685,"component":526,"description":5018,"extension":1015,"links":5019,"meta":5020,"navigation":526,"new":18,"path":54,"seo":5021,"stem":55,"wrapperKind":19,"__hash__":5022},"docs\u002Fdocs\u002Fadmin\u002Fdate-picker.md",{"type":533,"value":4686,"toc":5003},[4687,4689,4707,4745,4747,4757,4760,4762,4768,4771,4774,4777,4799,4802,4804,4807,4810,4812,4814,4960,4986,4988,4991,4994,4996,4998,5000],[536,4688,507],{"id":507},[539,4690,4692],{"className":541,"code":4691,"filename":543,"language":544,"meta":545,"style":546},"pnpm dlx shadcn-vue add @admin\u002Fdate-picker\n",[548,4693,4694],{"__ignoreMap":546},[551,4695,4696,4698,4700,4702,4704],{"class":553,"line":554},[551,4697,558],{"class":557},[551,4699,562],{"class":561},[551,4701,565],{"class":561},[551,4703,568],{"class":561},[551,4705,4706],{"class":561}," @admin\u002Fdate-picker\n",[539,4708,4710],{"className":574,"code":4709,"language":576,"meta":546,"style":546},"import {\n  AdminDatePicker,\n  AdminDatePickerRange,\n} from '@\u002Fcomponents\u002Fadmin\u002Fdate-picker'\n",[548,4711,4712,4718,4725,4732],{"__ignoreMap":546},[551,4713,4714,4716],{"class":553,"line":554},[551,4715,584],{"class":583},[551,4717,588],{"class":587},[551,4719,4720,4723],{"class":553,"line":591},[551,4721,4722],{"class":594},"  AdminDatePicker",[551,4724,598],{"class":587},[551,4726,4727,4730],{"class":553,"line":601},[551,4728,4729],{"class":594},"  AdminDatePickerRange",[551,4731,598],{"class":587},[551,4733,4734,4736,4738,4740,4743],{"class":553,"line":609},[551,4735,668],{"class":587},[551,4737,671],{"class":583},[551,4739,674],{"class":587},[551,4741,4742],{"class":561},"@\u002Fcomponents\u002Fadmin\u002Fdate-picker",[551,4744,680],{"class":587},[536,4746,683],{"id":683},[705,4748,4749,4752,4753,4756],{},[548,4750,4751],{},"AdminDatePicker"," 提供單選日期，",[548,4754,4755],{},"AdminDatePickerRange"," 提供區間選擇。兩者共用 ark-ui DatePicker 原生組件，採共享外框 layout 與 date-fns 格式化。",[685,4758],{"name":4759},"DatePickerSingleDemo",[536,4761,690],{"id":690},[705,4763,4764,4765,4767],{},"每個元件之 playground 提供完整 props 切換 UI 與即時 ",[548,4766,3248],{}," JSON 顯示。",[692,4769,4770],{"id":4770},"單選",[685,4772],{"name":4773},"DatePickerSinglePlaygroundDemo",[692,4775,4776],{"id":4776},"區間",[705,4778,4779,4780,4782,4783,4786,4787,4790,4791,4794,4795,4798],{},"兩個 input 於單一外框內並列，共享一個 trigger 與 clear 按鈕；",[548,4781,3248],{}," 為 ",[548,4784,4785],{},"Date[]","，length 0\u002F1\u002F2 partial 中間態合法（第一次 click cell 之後對外可見）。啟用 ",[548,4788,4789],{},"withTime"," 後 calendar 下方渲染垂直堆疊之兩組時間 stepper（上 = ",[548,4792,4793],{},"modelValue[0]","、下 = ",[548,4796,4797],{},"modelValue[1]","），需 modelValue length === 2 才啟用 stepper。",[685,4800],{"name":4801},"DatePickerRangePlaygroundDemo",[692,4803,2755],{"id":2755},[685,4805],{"name":4806},"DatePickerSingleErrorDemo",[685,4808],{"name":4809},"DatePickerRangeErrorDemo",[536,4811,720],{"id":719},[692,4813,723],{"id":723},[539,4815,4817],{"className":726,"code":4816,"language":728,"meta":546,"style":546},"\u003Ctemplate>\n  \u003C!-- single -->\n  \u003Cadmin-date-picker v-model=\"value\" format=\"yyyy\u002FMM\u002Fdd\" placeholder=\"選擇日期\" \u002F>\n\n  \u003C!-- range -->\n  \u003Cadmin-date-picker-range\n    v-model=\"range\"\n    end-placeholder=\"結束\"\n    format=\"yyyy\u002FMM\u002Fdd\"\n    start-placeholder=\"開始\"\n  \u002F>\n\u003C\u002Ftemplate>\n",[548,4818,4819,4827,4833,4876,4880,4885,4892,4906,4920,4933,4947,4952],{"__ignoreMap":546},[551,4820,4821,4823,4825],{"class":553,"line":554},[551,4822,735],{"class":587},[551,4824,739],{"class":738},[551,4826,742],{"class":587},[551,4828,4829],{"class":553,"line":591},[551,4830,4832],{"class":4831},"sHwdD","  \u003C!-- single -->\n",[551,4834,4835,4837,4840,4842,4844,4846,4848,4850,4853,4855,4857,4860,4862,4865,4867,4869,4872,4874],{"class":553,"line":601},[551,4836,747],{"class":587},[551,4838,4839],{"class":738},"admin-date-picker",[551,4841,2867],{"class":753},[551,4843,757],{"class":587},[551,4845,760],{"class":587},[551,4847,2720],{"class":561},[551,4849,760],{"class":587},[551,4851,4852],{"class":753}," format",[551,4854,757],{"class":587},[551,4856,760],{"class":587},[551,4858,4859],{"class":561},"yyyy\u002FMM\u002Fdd",[551,4861,760],{"class":587},[551,4863,4864],{"class":753}," placeholder",[551,4866,757],{"class":587},[551,4868,760],{"class":587},[551,4870,4871],{"class":561},"選擇日期",[551,4873,760],{"class":587},[551,4875,1449],{"class":587},[551,4877,4878],{"class":553,"line":609},[551,4879,1293],{"emptyLinePlaceholder":526},[551,4881,4882],{"class":553,"line":617},[551,4883,4884],{"class":4831},"  \u003C!-- range -->\n",[551,4886,4887,4889],{"class":553,"line":625},[551,4888,747],{"class":587},[551,4890,4891],{"class":738},"admin-date-picker-range\n",[551,4893,4894,4897,4899,4901,4904],{"class":553,"line":633},[551,4895,4896],{"class":753},"    v-model",[551,4898,757],{"class":587},[551,4900,760],{"class":587},[551,4902,4903],{"class":561},"range",[551,4905,4281],{"class":587},[551,4907,4908,4911,4913,4915,4918],{"class":553,"line":641},[551,4909,4910],{"class":753},"    end-placeholder",[551,4912,757],{"class":587},[551,4914,760],{"class":587},[551,4916,4917],{"class":561},"結束",[551,4919,4281],{"class":587},[551,4921,4922,4925,4927,4929,4931],{"class":553,"line":649},[551,4923,4924],{"class":753},"    format",[551,4926,757],{"class":587},[551,4928,760],{"class":587},[551,4930,4859],{"class":561},[551,4932,4281],{"class":587},[551,4934,4935,4938,4940,4942,4945],{"class":553,"line":657},[551,4936,4937],{"class":753},"    start-placeholder",[551,4939,757],{"class":587},[551,4941,760],{"class":587},[551,4943,4944],{"class":561},"開始",[551,4946,4281],{"class":587},[551,4948,4949],{"class":553,"line":665},[551,4950,4951],{"class":587},"  \u002F>\n",[551,4953,4954,4956,4958],{"class":553,"line":901},[551,4955,784],{"class":587},[551,4957,739],{"class":738},[551,4959,742],{"class":587},[2817,4961,4963],{"title":4962,"type":2820},"透傳上游 API",[705,4964,4965,1123,4967,4969,4970,4973,4974,1123,4979,1123,4982,4985],{},[548,4966,4751],{},[548,4968,4755],{}," 直接以 ",[548,4971,4972],{},"@ark-ui\u002Fvue"," 之 ",[697,4975,4978],{"href":4976,"rel":4977},"https:\u002F\u002Fark-ui.com\u002Fvue\u002Fdocs\u002Fcomponents\u002Fdate-picker",[701],"DatePicker.Input",[548,4980,4981],{},"DatePicker.Trigger",[548,4983,4984],{},"DatePicker.ClearTrigger"," 為 input 元素；下列僅列出 admin 對外承諾之 prop \u002F event \u002F expose。",[692,4987,4839],{"id":4839},[940,4989],{"component":4751,"slot":4990},"date-picker",[692,4992,4993],{"id":4993},"admin-date-picker-range",[940,4995],{"component":4755,"slot":4990},[536,4997,985],{"id":985},[987,4999],{"component":4751},[990,5001,5002],{},"html pre.shiki code .sBMFI, html code.shiki .sBMFI{--shiki-light:#E2931D;--shiki-default:#FFCB6B;--shiki-dark:#FFCB6B}html pre.shiki code .sfazB, html code.shiki .sfazB{--shiki-light:#91B859;--shiki-default:#C3E88D;--shiki-dark:#C3E88D}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 pre.shiki code .s7zQu, html code.shiki .s7zQu{--shiki-light:#39ADB5;--shiki-light-font-style:italic;--shiki-default:#89DDFF;--shiki-default-font-style:italic;--shiki-dark:#89DDFF;--shiki-dark-font-style:italic}html pre.shiki code .sMK4o, html code.shiki .sMK4o{--shiki-light:#39ADB5;--shiki-default:#89DDFF;--shiki-dark:#89DDFF}html pre.shiki code .sTEyZ, html code.shiki .sTEyZ{--shiki-light:#90A4AE;--shiki-default:#EEFFFF;--shiki-dark:#BABED8}html pre.shiki code .swJcz, html code.shiki .swJcz{--shiki-light:#E53935;--shiki-default:#F07178;--shiki-dark:#F07178}html pre.shiki code .sHwdD, html code.shiki .sHwdD{--shiki-light:#90A4AE;--shiki-light-font-style:italic;--shiki-default:#546E7A;--shiki-default-font-style:italic;--shiki-dark:#676E95;--shiki-dark-font-style:italic}html pre.shiki code .spNyl, html code.shiki .spNyl{--shiki-light:#9C3EDA;--shiki-default:#C792EA;--shiki-dark:#C792EA}",{"title":546,"searchDepth":601,"depth":601,"links":5004},[5005,5006,5007,5012,5017],{"id":507,"depth":591,"text":507},{"id":683,"depth":591,"text":683},{"id":690,"depth":591,"text":690,"children":5008},[5009,5010,5011],{"id":4770,"depth":601,"text":4770},{"id":4776,"depth":601,"text":4776},{"id":2755,"depth":601,"text":2755},{"id":719,"depth":591,"text":720,"children":5013},[5014,5015,5016],{"id":723,"depth":601,"text":723},{"id":4839,"depth":601,"text":4839},{"id":4993,"depth":601,"text":4993},{"id":985,"depth":591,"text":985},"日期選擇器（@ark-ui\u002Fvue）。單日、區間選取。",{"doc":4976},{},{"title":53,"description":5018},"VTj1BcusWcbU8KVIUx-FCRsJEORtk0GAWIiaAvwfkb0",{"id":5024,"title":57,"body":5025,"component":526,"description":5443,"extension":1015,"links":5444,"meta":5447,"navigation":526,"new":18,"path":58,"seo":5448,"stem":59,"wrapperKind":19,"__hash__":5449},"docs\u002Fdocs\u002Fadmin\u002Fdialog.md",{"type":533,"value":5026,"toc":5421},[5027,5029,5047,5127,5129,5139,5142,5144,5147,5180,5183,5186,5189,5191,5193,5363,5365,5368,5370,5373,5376,5379,5381,5384,5386,5389,5391,5394,5396,5399,5402,5405,5407,5410,5412,5415,5417,5419],[536,5028,507],{"id":507},[539,5030,5032],{"className":541,"code":5031,"filename":543,"language":544,"meta":545,"style":546},"pnpm dlx shadcn-vue add @admin\u002Fdialog\n",[548,5033,5034],{"__ignoreMap":546},[551,5035,5036,5038,5040,5042,5044],{"class":553,"line":554},[551,5037,558],{"class":557},[551,5039,562],{"class":561},[551,5041,565],{"class":561},[551,5043,568],{"class":561},[551,5045,5046],{"class":561}," @admin\u002Fdialog\n",[539,5048,5050],{"className":574,"code":5049,"language":576,"meta":546,"style":546},"import {\n  AdminDialog,\n  AdminDialogClose,\n  AdminDialogContent,\n  AdminDialogDescription,\n  AdminDialogFooter,\n  AdminDialogHeader,\n  AdminDialogTitle,\n  AdminDialogTrigger,\n} from '@\u002Fcomponents\u002Fadmin\u002Fdialog'\n",[548,5051,5052,5058,5065,5072,5079,5086,5093,5100,5107,5114],{"__ignoreMap":546},[551,5053,5054,5056],{"class":553,"line":554},[551,5055,584],{"class":583},[551,5057,588],{"class":587},[551,5059,5060,5063],{"class":553,"line":591},[551,5061,5062],{"class":594},"  AdminDialog",[551,5064,598],{"class":587},[551,5066,5067,5070],{"class":553,"line":601},[551,5068,5069],{"class":594},"  AdminDialogClose",[551,5071,598],{"class":587},[551,5073,5074,5077],{"class":553,"line":609},[551,5075,5076],{"class":594},"  AdminDialogContent",[551,5078,598],{"class":587},[551,5080,5081,5084],{"class":553,"line":617},[551,5082,5083],{"class":594},"  AdminDialogDescription",[551,5085,598],{"class":587},[551,5087,5088,5091],{"class":553,"line":625},[551,5089,5090],{"class":594},"  AdminDialogFooter",[551,5092,598],{"class":587},[551,5094,5095,5098],{"class":553,"line":633},[551,5096,5097],{"class":594},"  AdminDialogHeader",[551,5099,598],{"class":587},[551,5101,5102,5105],{"class":553,"line":641},[551,5103,5104],{"class":594},"  AdminDialogTitle",[551,5106,598],{"class":587},[551,5108,5109,5112],{"class":553,"line":649},[551,5110,5111],{"class":594},"  AdminDialogTrigger",[551,5113,598],{"class":587},[551,5115,5116,5118,5120,5122,5125],{"class":553,"line":657},[551,5117,668],{"class":587},[551,5119,671],{"class":583},[551,5121,674],{"class":587},[551,5123,5124],{"class":561},"@\u002Fcomponents\u002Fadmin\u002Fdialog",[551,5126,680],{"class":587},[536,5128,683],{"id":683},[705,5130,2141,5131,5134,5135,5138],{},[548,5132,5133],{},"v-model:open"," 控制顯示狀態；header 與 footer 之間放主要內容，trigger 模式由 ",[548,5136,5137],{},"admin-dialog-trigger"," 啟動。",[685,5140],{"name":5141},"DialogDemo",[536,5143,690],{"id":690},[692,5145,5146],{"id":5146},"帶表單的對話框",[705,5148,5149,5150,1613,5153,5156,5157,1123,5160,1123,5163,1123,5166,5169,5170,5172,5173,5176,5177,713],{},"搭配 vee-validate 的 ",[548,5151,5152],{},"\u003CField>",[548,5154,5155],{},"useForm"," 做欄位驗證，並以 admin-field 版型（",[548,5158,5159],{},"admin-field",[548,5161,5162],{},"admin-field-label",[548,5164,5165],{},"admin-field-content",[548,5167,5168],{},"admin-field-error","）排版；",[548,5171,2593],{}," 包住欄位與 footer，透過 ",[548,5174,5175],{},"handleSubmit"," 攔截提交並在驗證通過後手動關閉 ",[548,5178,5179],{},"open",[685,5181],{"name":5182},"DialogFormDemo",[692,5184,5185],{"id":5185},"可滾動內容",[685,5187],{"name":5188},"DialogScrollableDemo",[536,5190,720],{"id":719},[692,5192,723],{"id":723},[539,5194,5196],{"className":726,"code":5195,"language":728,"meta":546,"style":546},"\u003Ctemplate>\n  \u003Cadmin-dialog v-model:open=\"isOpen\">\n    \u003Cadmin-dialog-trigger>開啟\u003C\u002Fadmin-dialog-trigger>\n    \u003Cadmin-dialog-content>\n      \u003Cadmin-dialog-header>\n        \u003Cadmin-dialog-title>標題\u003C\u002Fadmin-dialog-title>\n        \u003Cadmin-dialog-description>說明文字\u003C\u002Fadmin-dialog-description>\n      \u003C\u002Fadmin-dialog-header>\n      主要內容\n      \u003Cadmin-dialog-footer>\n        \u003Cadmin-dialog-close>取消\u003C\u002Fadmin-dialog-close>\n      \u003C\u002Fadmin-dialog-footer>\n    \u003C\u002Fadmin-dialog-content>\n  \u003C\u002Fadmin-dialog>\n\u003C\u002Ftemplate>\n",[548,5197,5198,5206,5224,5240,5249,5258,5275,5292,5300,5305,5314,5331,5339,5347,5355],{"__ignoreMap":546},[551,5199,5200,5202,5204],{"class":553,"line":554},[551,5201,735],{"class":587},[551,5203,739],{"class":738},[551,5205,742],{"class":587},[551,5207,5208,5210,5212,5214,5216,5218,5220,5222],{"class":553,"line":591},[551,5209,747],{"class":587},[551,5211,4133],{"class":738},[551,5213,754],{"class":753},[551,5215,757],{"class":587},[551,5217,760],{"class":587},[551,5219,763],{"class":561},[551,5221,760],{"class":587},[551,5223,742],{"class":587},[551,5225,5226,5228,5230,5232,5234,5236,5238],{"class":553,"line":601},[551,5227,772],{"class":587},[551,5229,5137],{"class":738},[551,5231,778],{"class":587},[551,5233,703],{"class":594},[551,5235,784],{"class":587},[551,5237,5137],{"class":738},[551,5239,742],{"class":587},[551,5241,5242,5244,5247],{"class":553,"line":609},[551,5243,772],{"class":587},[551,5245,5246],{"class":738},"admin-dialog-content",[551,5248,742],{"class":587},[551,5250,5251,5253,5256],{"class":553,"line":617},[551,5252,802],{"class":587},[551,5254,5255],{"class":738},"admin-dialog-header",[551,5257,742],{"class":587},[551,5259,5260,5262,5265,5267,5269,5271,5273],{"class":553,"line":625},[551,5261,812],{"class":587},[551,5263,5264],{"class":738},"admin-dialog-title",[551,5266,778],{"class":587},[551,5268,820],{"class":594},[551,5270,784],{"class":587},[551,5272,5264],{"class":738},[551,5274,742],{"class":587},[551,5276,5277,5279,5282,5284,5286,5288,5290],{"class":553,"line":633},[551,5278,812],{"class":587},[551,5280,5281],{"class":738},"admin-dialog-description",[551,5283,778],{"class":587},[551,5285,838],{"class":594},[551,5287,784],{"class":587},[551,5289,5281],{"class":738},[551,5291,742],{"class":587},[551,5293,5294,5296,5298],{"class":553,"line":641},[551,5295,849],{"class":587},[551,5297,5255],{"class":738},[551,5299,742],{"class":587},[551,5301,5302],{"class":553,"line":649},[551,5303,5304],{"class":594},"      主要內容\n",[551,5306,5307,5309,5312],{"class":553,"line":657},[551,5308,802],{"class":587},[551,5310,5311],{"class":738},"admin-dialog-footer",[551,5313,742],{"class":587},[551,5315,5316,5318,5321,5323,5325,5327,5329],{"class":553,"line":665},[551,5317,812],{"class":587},[551,5319,5320],{"class":738},"admin-dialog-close",[551,5322,778],{"class":587},[551,5324,874],{"class":594},[551,5326,784],{"class":587},[551,5328,5320],{"class":738},[551,5330,742],{"class":587},[551,5332,5333,5335,5337],{"class":553,"line":901},[551,5334,849],{"class":587},[551,5336,5311],{"class":738},[551,5338,742],{"class":587},[551,5340,5341,5343,5345],{"class":553,"line":910},[551,5342,913],{"class":587},[551,5344,5246],{"class":738},[551,5346,742],{"class":587},[551,5348,5349,5351,5353],{"class":553,"line":920},[551,5350,923],{"class":587},[551,5352,4133],{"class":738},[551,5354,742],{"class":587},[551,5356,5357,5359,5361],{"class":553,"line":930},[551,5358,784],{"class":587},[551,5360,739],{"class":738},[551,5362,742],{"class":587},[692,5364,4133],{"id":4133},[940,5366],{"component":5367},"AdminDialog",[692,5369,5246],{"id":5246},[940,5371],{"component":5372},"AdminDialogContent",[692,5374,5375],{"id":5375},"admin-dialog-scroll-content",[940,5377],{"component":5378},"AdminDialogScrollContent",[692,5380,5320],{"id":5320},[940,5382],{"component":5383},"AdminDialogClose",[692,5385,5281],{"id":5281},[940,5387],{"component":5388},"AdminDialogDescription",[692,5390,5311],{"id":5311},[940,5392],{"component":5393},"AdminDialogFooter",[692,5395,5255],{"id":5255},[940,5397],{"component":5398},"AdminDialogHeader",[692,5400,5401],{"id":5401},"admin-dialog-overlay",[940,5403],{"component":5404},"AdminDialogOverlay",[692,5406,5264],{"id":5264},[940,5408],{"component":5409},"AdminDialogTitle",[692,5411,5137],{"id":5137},[940,5413],{"component":5414},"AdminDialogTrigger",[536,5416,985],{"id":985},[987,5418],{"component":5367},[990,5420,992],{},{"title":546,"searchDepth":601,"depth":601,"links":5422},[5423,5424,5425,5429,5442],{"id":507,"depth":591,"text":507},{"id":683,"depth":591,"text":683},{"id":690,"depth":591,"text":690,"children":5426},[5427,5428],{"id":5146,"depth":601,"text":5146},{"id":5185,"depth":601,"text":5185},{"id":719,"depth":591,"text":720,"children":5430},[5431,5432,5433,5434,5435,5436,5437,5438,5439,5440,5441],{"id":723,"depth":601,"text":723},{"id":4133,"depth":601,"text":4133},{"id":5246,"depth":601,"text":5246},{"id":5375,"depth":601,"text":5375},{"id":5320,"depth":601,"text":5320},{"id":5281,"depth":601,"text":5281},{"id":5311,"depth":601,"text":5311},{"id":5255,"depth":601,"text":5255},{"id":5401,"depth":601,"text":5401},{"id":5264,"depth":601,"text":5264},{"id":5137,"depth":601,"text":5137},{"id":985,"depth":591,"text":985},"覆蓋頁面內容的模態對話框。",{"doc":5445,"api":5446},"https:\u002F\u002Freka-ui.com\u002Fdocs\u002Fcomponents\u002Fdialog","https:\u002F\u002Freka-ui.com\u002Fdocs\u002Fcomponents\u002Fdialog#api-reference",{},{"title":57,"description":5443},"6_Dl8dhpeluG6yNuHg4i3FcxFwBtnRDjNhht-uR5hxI",{"id":5451,"title":61,"body":5452,"component":526,"description":5569,"extension":1015,"links":5570,"meta":5573,"navigation":526,"new":18,"path":62,"seo":5574,"stem":63,"wrapperKind":19,"__hash__":5575},"docs\u002Fdocs\u002Fadmin\u002Fdivider.md",{"type":533,"value":5453,"toc":5557},[5454,5456,5474,5499,5501,5504,5506,5509,5512,5514,5516,5546,5548,5551,5553,5555],[536,5455,507],{"id":507},[539,5457,5459],{"className":541,"code":5458,"filename":543,"language":544,"meta":545,"style":546},"pnpm dlx shadcn-vue add @admin\u002Fdivider\n",[548,5460,5461],{"__ignoreMap":546},[551,5462,5463,5465,5467,5469,5471],{"class":553,"line":554},[551,5464,558],{"class":557},[551,5466,562],{"class":561},[551,5468,565],{"class":561},[551,5470,568],{"class":561},[551,5472,5473],{"class":561}," @admin\u002Fdivider\n",[539,5475,5477],{"className":574,"code":5476,"language":576,"meta":546,"style":546},"import { AdminDivider } from '@\u002Fcomponents\u002Fadmin\u002Fdivider'\n",[548,5478,5479],{"__ignoreMap":546},[551,5480,5481,5483,5485,5488,5490,5492,5494,5497],{"class":553,"line":554},[551,5482,584],{"class":583},[551,5484,1273],{"class":587},[551,5486,5487],{"class":594}," AdminDivider",[551,5489,1279],{"class":587},[551,5491,671],{"class":583},[551,5493,674],{"class":587},[551,5495,5496],{"class":561},"@\u002Fcomponents\u002Fadmin\u002Fdivider",[551,5498,680],{"class":587},[536,5500,683],{"id":683},[685,5502],{"name":5503},"DividerDemo",[536,5505,690],{"id":690},[692,5507,5508],{"id":5508},"垂直分隔線",[685,5510],{"name":5511},"DividerVerticalDemo",[536,5513,720],{"id":719},[692,5515,723],{"id":723},[539,5517,5519],{"className":726,"code":5518,"language":728,"meta":546,"style":546},"\u003Ctemplate>\n  \u003Cadmin-divider \u002F>\n\u003C\u002Ftemplate>\n",[548,5520,5521,5529,5538],{"__ignoreMap":546},[551,5522,5523,5525,5527],{"class":553,"line":554},[551,5524,735],{"class":587},[551,5526,739],{"class":738},[551,5528,742],{"class":587},[551,5530,5531,5533,5536],{"class":553,"line":591},[551,5532,747],{"class":587},[551,5534,5535],{"class":738},"admin-divider",[551,5537,1449],{"class":587},[551,5539,5540,5542,5544],{"class":553,"line":601},[551,5541,784],{"class":587},[551,5543,739],{"class":738},[551,5545,742],{"class":587},[692,5547,5535],{"id":5535},[940,5549],{"component":5550},"AdminDivider",[536,5552,985],{"id":985},[987,5554],{"component":5550},[990,5556,2019],{},{"title":546,"searchDepth":601,"depth":601,"links":5558},[5559,5560,5561,5564,5568],{"id":507,"depth":591,"text":507},{"id":683,"depth":591,"text":683},{"id":690,"depth":591,"text":690,"children":5562},[5563],{"id":5508,"depth":601,"text":5508},{"id":719,"depth":591,"text":720,"children":5565},[5566,5567],{"id":723,"depth":601,"text":723},{"id":5535,"depth":601,"text":5535},{"id":985,"depth":591,"text":985},"區隔內容的分隔線。方向：水平（預設）、垂直。",{"doc":5571,"api":5572},"https:\u002F\u002Freka-ui.com\u002Fdocs\u002Fcomponents\u002Fseparator","https:\u002F\u002Freka-ui.com\u002Fdocs\u002Fcomponents\u002Fseparator#api-reference",{},{"title":61,"description":5569},"iG1Xwa27Kt-eVOQqHCWpXHYyeOTG2W2q4hjMOppw6MI",{"id":5577,"title":65,"body":5578,"component":526,"description":6371,"extension":1015,"links":6372,"meta":6375,"navigation":526,"new":18,"path":66,"seo":6376,"stem":67,"wrapperKind":19,"__hash__":6377},"docs\u002Fdocs\u002Fadmin\u002Fdropdown-menu.md",{"type":533,"value":5579,"toc":6343},[5580,5582,5600,5722,5724,5727,5730,5732,5735,5738,5741,5744,5747,5750,5753,5867,5874,5877,5935,5937,5939,6266,6268,6271,6273,6276,6278,6281,6283,6286,6288,6291,6293,6296,6299,6302,6304,6307,6309,6312,6314,6317,6319,6322,6324,6327,6329,6332,6334,6337,6339,6341],[536,5581,507],{"id":507},[539,5583,5585],{"className":541,"code":5584,"filename":543,"language":544,"meta":545,"style":546},"pnpm dlx shadcn-vue add @admin\u002Fdropdown-menu\n",[548,5586,5587],{"__ignoreMap":546},[551,5588,5589,5591,5593,5595,5597],{"class":553,"line":554},[551,5590,558],{"class":557},[551,5592,562],{"class":561},[551,5594,565],{"class":561},[551,5596,568],{"class":561},[551,5598,5599],{"class":561}," @admin\u002Fdropdown-menu\n",[539,5601,5603],{"className":574,"code":5602,"language":576,"meta":546,"style":546},"import {\n  AdminDropdownMenu,\n  AdminDropdownMenuCheckboxItem,\n  AdminDropdownMenuContent,\n  AdminDropdownMenuGroup,\n  AdminDropdownMenuItem,\n  AdminDropdownMenuLabel,\n  AdminDropdownMenuRadioGroup,\n  AdminDropdownMenuRadioItem,\n  AdminDropdownMenuSeparator,\n  AdminDropdownMenuShortcut,\n  AdminDropdownMenuSub,\n  AdminDropdownMenuSubContent,\n  AdminDropdownMenuSubTrigger,\n  AdminDropdownMenuTrigger,\n} from '@\u002Fcomponents\u002Fadmin\u002Fdropdown-menu'\n",[548,5604,5605,5611,5618,5625,5632,5639,5646,5653,5660,5667,5674,5681,5688,5695,5702,5709],{"__ignoreMap":546},[551,5606,5607,5609],{"class":553,"line":554},[551,5608,584],{"class":583},[551,5610,588],{"class":587},[551,5612,5613,5616],{"class":553,"line":591},[551,5614,5615],{"class":594},"  AdminDropdownMenu",[551,5617,598],{"class":587},[551,5619,5620,5623],{"class":553,"line":601},[551,5621,5622],{"class":594},"  AdminDropdownMenuCheckboxItem",[551,5624,598],{"class":587},[551,5626,5627,5630],{"class":553,"line":609},[551,5628,5629],{"class":594},"  AdminDropdownMenuContent",[551,5631,598],{"class":587},[551,5633,5634,5637],{"class":553,"line":617},[551,5635,5636],{"class":594},"  AdminDropdownMenuGroup",[551,5638,598],{"class":587},[551,5640,5641,5644],{"class":553,"line":625},[551,5642,5643],{"class":594},"  AdminDropdownMenuItem",[551,5645,598],{"class":587},[551,5647,5648,5651],{"class":553,"line":633},[551,5649,5650],{"class":594},"  AdminDropdownMenuLabel",[551,5652,598],{"class":587},[551,5654,5655,5658],{"class":553,"line":641},[551,5656,5657],{"class":594},"  AdminDropdownMenuRadioGroup",[551,5659,598],{"class":587},[551,5661,5662,5665],{"class":553,"line":649},[551,5663,5664],{"class":594},"  AdminDropdownMenuRadioItem",[551,5666,598],{"class":587},[551,5668,5669,5672],{"class":553,"line":657},[551,5670,5671],{"class":594},"  AdminDropdownMenuSeparator",[551,5673,598],{"class":587},[551,5675,5676,5679],{"class":553,"line":665},[551,5677,5678],{"class":594},"  AdminDropdownMenuShortcut",[551,5680,598],{"class":587},[551,5682,5683,5686],{"class":553,"line":901},[551,5684,5685],{"class":594},"  AdminDropdownMenuSub",[551,5687,598],{"class":587},[551,5689,5690,5693],{"class":553,"line":910},[551,5691,5692],{"class":594},"  AdminDropdownMenuSubContent",[551,5694,598],{"class":587},[551,5696,5697,5700],{"class":553,"line":920},[551,5698,5699],{"class":594},"  AdminDropdownMenuSubTrigger",[551,5701,598],{"class":587},[551,5703,5704,5707],{"class":553,"line":930},[551,5705,5706],{"class":594},"  AdminDropdownMenuTrigger",[551,5708,598],{"class":587},[551,5710,5711,5713,5715,5717,5720],{"class":553,"line":3536},[551,5712,668],{"class":587},[551,5714,671],{"class":583},[551,5716,674],{"class":587},[551,5718,5719],{"class":561},"@\u002Fcomponents\u002Fadmin\u002Fdropdown-menu",[551,5721,680],{"class":587},[536,5723,683],{"id":683},[705,5725,5726],{},"點 trigger 顯示 content；items 由鍵盤 ArrowUp \u002F ArrowDown 切換 highlight、Enter 觸發 select、Escape 關閉。",[685,5728],{"name":5729},"DropdownMenuDemo",[536,5731,690],{"id":690},[692,5733,5734],{"id":5734},"操作選單",[705,5736,5737],{},"行內 action menu，含 disabled item 與 separator 分組；常用於列表 row 右側「⋯」按鈕。",[685,5739],{"name":5740},"DropdownMenuActionsDemo",[692,5742,5743],{"id":5743},"進階選單",[705,5745,5746],{},"checkbox item（多選）、radio group（單選）、巢狀 sub-menu、快捷鍵提示。",[685,5748],{"name":5749},"DropdownMenuAdvancedDemo",[692,5751,5752],{"id":5752},"鍵盤導航",[5754,5755,5756,5769],"table",{},[5757,5758,5759],"thead",{},[5760,5761,5762,5766],"tr",{},[5763,5764,5765],"th",{},"快捷鍵",[5763,5767,5768],{},"行為",[5770,5771,5772,5786,5803,5813,5823,5835,5845,5855],"tbody",{},[5760,5773,5774,5783],{},[5775,5776,5777,1123,5780],"td",{},[548,5778,5779],{},"ArrowDown",[548,5781,5782],{},"ArrowUp",[5775,5784,5785],{},"移動 highlight 到下一個 \u002F 上一個 item",[5760,5787,5788,5796],{},[5775,5789,5790,1123,5793],{},[548,5791,5792],{},"Enter",[548,5794,5795],{},"Space",[5775,5797,5798,5799,5802],{},"觸發 highlighted item 的 ",[548,5800,5801],{},"select"," event 並關閉 menu",[5760,5804,5805,5810],{},[5775,5806,5807],{},[548,5808,5809],{},"Escape",[5775,5811,5812],{},"關閉 menu，focus 回 trigger",[5760,5814,5815,5820],{},[5775,5816,5817],{},[548,5818,5819],{},"Tab",[5775,5821,5822],{},"關閉 menu，focus 移到下一個 tabbable 元素",[5760,5824,5825,5832],{},[5775,5826,5827,1123,5829],{},[548,5828,2250],{},[548,5830,5831],{},"End",[5775,5833,5834],{},"跳到第一個 \u002F 最後一個 item",[5760,5836,5837,5842],{},[5775,5838,5839],{},[548,5840,5841],{},"ArrowRight",[5775,5843,5844],{},"在 sub-trigger 上展開子選單並 focus 第一個 item（RTL 相反）",[5760,5846,5847,5852],{},[5775,5848,5849],{},[548,5850,5851],{},"ArrowLeft",[5775,5853,5854],{},"收合子選單，focus 回 sub-trigger（RTL 相反）",[5760,5856,5857,5860],{},[5775,5858,5859],{},"任意可印字元",[5775,5861,5862,5863,5866],{},"type-ahead 跳到 ",[548,5864,5865],{},"textValue"," 開頭符合的 item",[705,5868,5869,5870,5873],{},"行為由 reka-ui ",[548,5871,5872],{},"DropdownMenu"," primitive 提供，本元件薄包一層樣式。",[692,5875,5876],{"id":5876},"與其他元件的差別",[5754,5878,5879,5889],{},[5757,5880,5881],{},[5760,5882,5883,5886],{},[5763,5884,5885],{},"元件",[5763,5887,5888],{},"適用情境",[5770,5890,5891,5905,5919],{},[5760,5892,5893,5898],{},[5775,5894,5895],{},[1135,5896,5897],{},"admin-dropdown-menu",[5775,5899,5900,5901,5904],{},"觸發後彈出的「",[1135,5902,5903],{},"選項列表","」，含鍵盤導航；典型用例：navigation menu、action menu、heading dropdown",[5760,5906,5907,5912],{},[5775,5908,5909],{},[548,5910,5911],{},"admin-popover",[5775,5913,5914,5915,5918],{},"任意 ",[1135,5916,5917],{},"內容浮層","（不限選項列表）；沒有 roving tabindex \u002F arrow key 導航",[5760,5920,5921,5926],{},[5775,5922,5923],{},[548,5924,5925],{},"admin-select",[5775,5927,5928,5929,5931,5932],{},"表單欄位用的 ",[1135,5930,4770],{},"，會把選定值寫回 ",[548,5933,5934],{},"\u003Cinput>",[536,5936,720],{"id":719},[692,5938,723],{"id":723},[539,5940,5942],{"className":726,"code":5941,"language":728,"meta":546,"style":546},"\u003Ctemplate>\n  \u003Cadmin-dropdown-menu>\n    \u003Cadmin-dropdown-menu-trigger>開啟選單\u003C\u002Fadmin-dropdown-menu-trigger>\n    \u003Cadmin-dropdown-menu-content>\n      \u003Cadmin-dropdown-menu-label>群組標題\u003C\u002Fadmin-dropdown-menu-label>\n      \u003Cadmin-dropdown-menu-separator \u002F>\n      \u003Cadmin-dropdown-menu-item>\n        選項一\n        \u003Cadmin-dropdown-menu-shortcut>⌘K\u003C\u002Fadmin-dropdown-menu-shortcut>\n      \u003C\u002Fadmin-dropdown-menu-item>\n      \u003Cadmin-dropdown-menu-checkbox-item v-model=\"checked\">可勾選項\u003C\u002Fadmin-dropdown-menu-checkbox-item>\n      \u003Cadmin-dropdown-menu-radio-group v-model=\"value\">\n        \u003Cadmin-dropdown-menu-radio-item value=\"a\">單選 A\u003C\u002Fadmin-dropdown-menu-radio-item>\n        \u003Cadmin-dropdown-menu-radio-item value=\"b\">單選 B\u003C\u002Fadmin-dropdown-menu-radio-item>\n      \u003C\u002Fadmin-dropdown-menu-radio-group>\n      \u003Cadmin-dropdown-menu-sub>\n        \u003Cadmin-dropdown-menu-sub-trigger>更多\u003C\u002Fadmin-dropdown-menu-sub-trigger>\n        \u003Cadmin-dropdown-menu-sub-content>\n          \u003Cadmin-dropdown-menu-item>子選項\u003C\u002Fadmin-dropdown-menu-item>\n        \u003C\u002Fadmin-dropdown-menu-sub-content>\n      \u003C\u002Fadmin-dropdown-menu-sub>\n    \u003C\u002Fadmin-dropdown-menu-content>\n  \u003C\u002Fadmin-dropdown-menu>\n\u003C\u002Ftemplate>\n",[548,5943,5944,5952,5960,5978,5987,6005,6014,6023,6028,6046,6054,6082,6101,6129,6157,6165,6174,6192,6202,6221,6231,6240,6249,6258],{"__ignoreMap":546},[551,5945,5946,5948,5950],{"class":553,"line":554},[551,5947,735],{"class":587},[551,5949,739],{"class":738},[551,5951,742],{"class":587},[551,5953,5954,5956,5958],{"class":553,"line":591},[551,5955,747],{"class":587},[551,5957,5897],{"class":738},[551,5959,742],{"class":587},[551,5961,5962,5964,5967,5969,5972,5974,5976],{"class":553,"line":601},[551,5963,772],{"class":587},[551,5965,5966],{"class":738},"admin-dropdown-menu-trigger",[551,5968,778],{"class":587},[551,5970,5971],{"class":594},"開啟選單",[551,5973,784],{"class":587},[551,5975,5966],{"class":738},[551,5977,742],{"class":587},[551,5979,5980,5982,5985],{"class":553,"line":609},[551,5981,772],{"class":587},[551,5983,5984],{"class":738},"admin-dropdown-menu-content",[551,5986,742],{"class":587},[551,5988,5989,5991,5994,5996,5999,6001,6003],{"class":553,"line":617},[551,5990,802],{"class":587},[551,5992,5993],{"class":738},"admin-dropdown-menu-label",[551,5995,778],{"class":587},[551,5997,5998],{"class":594},"群組標題",[551,6000,784],{"class":587},[551,6002,5993],{"class":738},[551,6004,742],{"class":587},[551,6006,6007,6009,6012],{"class":553,"line":625},[551,6008,802],{"class":587},[551,6010,6011],{"class":738},"admin-dropdown-menu-separator",[551,6013,1449],{"class":587},[551,6015,6016,6018,6021],{"class":553,"line":633},[551,6017,802],{"class":587},[551,6019,6020],{"class":738},"admin-dropdown-menu-item",[551,6022,742],{"class":587},[551,6024,6025],{"class":553,"line":641},[551,6026,6027],{"class":594},"        選項一\n",[551,6029,6030,6032,6035,6037,6040,6042,6044],{"class":553,"line":649},[551,6031,812],{"class":587},[551,6033,6034],{"class":738},"admin-dropdown-menu-shortcut",[551,6036,778],{"class":587},[551,6038,6039],{"class":594},"⌘K",[551,6041,784],{"class":587},[551,6043,6034],{"class":738},[551,6045,742],{"class":587},[551,6047,6048,6050,6052],{"class":553,"line":657},[551,6049,849],{"class":587},[551,6051,6020],{"class":738},[551,6053,742],{"class":587},[551,6055,6056,6058,6061,6063,6065,6067,6069,6071,6073,6076,6078,6080],{"class":553,"line":665},[551,6057,802],{"class":587},[551,6059,6060],{"class":738},"admin-dropdown-menu-checkbox-item",[551,6062,2867],{"class":753},[551,6064,757],{"class":587},[551,6066,760],{"class":587},[551,6068,3014],{"class":561},[551,6070,760],{"class":587},[551,6072,778],{"class":587},[551,6074,6075],{"class":594},"可勾選項",[551,6077,784],{"class":587},[551,6079,6060],{"class":738},[551,6081,742],{"class":587},[551,6083,6084,6086,6089,6091,6093,6095,6097,6099],{"class":553,"line":901},[551,6085,802],{"class":587},[551,6087,6088],{"class":738},"admin-dropdown-menu-radio-group",[551,6090,2867],{"class":753},[551,6092,757],{"class":587},[551,6094,760],{"class":587},[551,6096,2720],{"class":561},[551,6098,760],{"class":587},[551,6100,742],{"class":587},[551,6102,6103,6105,6108,6110,6112,6114,6116,6118,6120,6123,6125,6127],{"class":553,"line":910},[551,6104,812],{"class":587},[551,6106,6107],{"class":738},"admin-dropdown-menu-radio-item",[551,6109,3336],{"class":753},[551,6111,757],{"class":587},[551,6113,760],{"class":587},[551,6115,697],{"class":561},[551,6117,760],{"class":587},[551,6119,778],{"class":587},[551,6121,6122],{"class":594},"單選 A",[551,6124,784],{"class":587},[551,6126,6107],{"class":738},[551,6128,742],{"class":587},[551,6130,6131,6133,6135,6137,6139,6141,6144,6146,6148,6151,6153,6155],{"class":553,"line":920},[551,6132,812],{"class":587},[551,6134,6107],{"class":738},[551,6136,3336],{"class":753},[551,6138,757],{"class":587},[551,6140,760],{"class":587},[551,6142,6143],{"class":561},"b",[551,6145,760],{"class":587},[551,6147,778],{"class":587},[551,6149,6150],{"class":594},"單選 B",[551,6152,784],{"class":587},[551,6154,6107],{"class":738},[551,6156,742],{"class":587},[551,6158,6159,6161,6163],{"class":553,"line":930},[551,6160,849],{"class":587},[551,6162,6088],{"class":738},[551,6164,742],{"class":587},[551,6166,6167,6169,6172],{"class":553,"line":3536},[551,6168,802],{"class":587},[551,6170,6171],{"class":738},"admin-dropdown-menu-sub",[551,6173,742],{"class":587},[551,6175,6176,6178,6181,6183,6186,6188,6190],{"class":553,"line":4422},[551,6177,812],{"class":587},[551,6179,6180],{"class":738},"admin-dropdown-menu-sub-trigger",[551,6182,778],{"class":587},[551,6184,6185],{"class":594},"更多",[551,6187,784],{"class":587},[551,6189,6180],{"class":738},[551,6191,742],{"class":587},[551,6193,6195,6197,6200],{"class":553,"line":6194},18,[551,6196,812],{"class":587},[551,6198,6199],{"class":738},"admin-dropdown-menu-sub-content",[551,6201,742],{"class":587},[551,6203,6205,6208,6210,6212,6215,6217,6219],{"class":553,"line":6204},19,[551,6206,6207],{"class":587},"          \u003C",[551,6209,6020],{"class":738},[551,6211,778],{"class":587},[551,6213,6214],{"class":594},"子選項",[551,6216,784],{"class":587},[551,6218,6020],{"class":738},[551,6220,742],{"class":587},[551,6222,6224,6227,6229],{"class":553,"line":6223},20,[551,6225,6226],{"class":587},"        \u003C\u002F",[551,6228,6199],{"class":738},[551,6230,742],{"class":587},[551,6232,6234,6236,6238],{"class":553,"line":6233},21,[551,6235,849],{"class":587},[551,6237,6171],{"class":738},[551,6239,742],{"class":587},[551,6241,6243,6245,6247],{"class":553,"line":6242},22,[551,6244,913],{"class":587},[551,6246,5984],{"class":738},[551,6248,742],{"class":587},[551,6250,6252,6254,6256],{"class":553,"line":6251},23,[551,6253,923],{"class":587},[551,6255,5897],{"class":738},[551,6257,742],{"class":587},[551,6259,6260,6262,6264],{"class":553,"line":524},[551,6261,784],{"class":587},[551,6263,739],{"class":738},[551,6265,742],{"class":587},[692,6267,5897],{"id":5897},[940,6269],{"component":6270},"AdminDropdownMenu",[692,6272,5966],{"id":5966},[940,6274],{"component":6275},"AdminDropdownMenuTrigger",[692,6277,5984],{"id":5984},[940,6279],{"component":6280},"AdminDropdownMenuContent",[692,6282,6020],{"id":6020},[940,6284],{"component":6285},"AdminDropdownMenuItem",[692,6287,6011],{"id":6011},[940,6289],{"component":6290},"AdminDropdownMenuSeparator",[692,6292,5993],{"id":5993},[940,6294],{"component":6295},"AdminDropdownMenuLabel",[692,6297,6298],{"id":6298},"admin-dropdown-menu-group",[940,6300],{"component":6301},"AdminDropdownMenuGroup",[692,6303,6060],{"id":6060},[940,6305],{"component":6306},"AdminDropdownMenuCheckboxItem",[692,6308,6088],{"id":6088},[940,6310],{"component":6311},"AdminDropdownMenuRadioGroup",[692,6313,6107],{"id":6107},[940,6315],{"component":6316},"AdminDropdownMenuRadioItem",[692,6318,6171],{"id":6171},[940,6320],{"component":6321},"AdminDropdownMenuSub",[692,6323,6180],{"id":6180},[940,6325],{"component":6326},"AdminDropdownMenuSubTrigger",[692,6328,6199],{"id":6199},[940,6330],{"component":6331},"AdminDropdownMenuSubContent",[692,6333,6034],{"id":6034},[940,6335],{"component":6336},"AdminDropdownMenuShortcut",[536,6338,985],{"id":985},[987,6340],{"component":6270},[990,6342,992],{},{"title":546,"searchDepth":601,"depth":601,"links":6344},[6345,6346,6347,6353,6370],{"id":507,"depth":591,"text":507},{"id":683,"depth":591,"text":683},{"id":690,"depth":591,"text":690,"children":6348},[6349,6350,6351,6352],{"id":5734,"depth":601,"text":5734},{"id":5743,"depth":601,"text":5743},{"id":5752,"depth":601,"text":5752},{"id":5876,"depth":601,"text":5876},{"id":719,"depth":591,"text":720,"children":6354},[6355,6356,6357,6358,6359,6360,6361,6362,6363,6364,6365,6366,6367,6368,6369],{"id":723,"depth":601,"text":723},{"id":5897,"depth":601,"text":5897},{"id":5966,"depth":601,"text":5966},{"id":5984,"depth":601,"text":5984},{"id":6020,"depth":601,"text":6020},{"id":6011,"depth":601,"text":6011},{"id":5993,"depth":601,"text":5993},{"id":6298,"depth":601,"text":6298},{"id":6060,"depth":601,"text":6060},{"id":6088,"depth":601,"text":6088},{"id":6107,"depth":601,"text":6107},{"id":6171,"depth":601,"text":6171},{"id":6180,"depth":601,"text":6180},{"id":6199,"depth":601,"text":6199},{"id":6034,"depth":601,"text":6034},{"id":985,"depth":591,"text":985},"點按 trigger 後彈出的選項列表；含鍵盤導航。",{"doc":6373,"api":6374},"https:\u002F\u002Freka-ui.com\u002Fdocs\u002Fcomponents\u002Fdropdown-menu","https:\u002F\u002Freka-ui.com\u002Fdocs\u002Fcomponents\u002Fdropdown-menu#api-reference",{},{"title":65,"description":6371},"r3g7LWmiYV3D-Pieuzz4jR-678m6UbStOKAdEkDEPq0",{"id":6379,"title":69,"body":6380,"component":526,"description":7132,"extension":1015,"links":7133,"meta":7135,"navigation":526,"new":18,"path":70,"seo":7136,"stem":71,"wrapperKind":19,"__hash__":7137},"docs\u002Fdocs\u002Fadmin\u002Ffield.md",{"type":533,"value":6381,"toc":7110},[6382,6384,6402,6496,6498,6501,6503,6506,6509,6513,6516,6518,6520,6928,7054,7056,7059,7061,7064,7066,7069,7071,7074,7076,7079,7081,7084,7086,7089,7091,7094,7096,7099,7101,7104,7106,7108],[536,6383,507],{"id":507},[539,6385,6387],{"className":541,"code":6386,"filename":543,"language":544,"meta":545,"style":546},"pnpm dlx shadcn-vue add @admin\u002Ffield\n",[548,6388,6389],{"__ignoreMap":546},[551,6390,6391,6393,6395,6397,6399],{"class":553,"line":554},[551,6392,558],{"class":557},[551,6394,562],{"class":561},[551,6396,565],{"class":561},[551,6398,568],{"class":561},[551,6400,6401],{"class":561}," @admin\u002Ffield\n",[539,6403,6405],{"className":574,"code":6404,"language":576,"meta":546,"style":546},"import {\n  AdminField,\n  AdminFieldContent,\n  AdminFieldDescription,\n  AdminFieldDivider,\n  AdminFieldError,\n  AdminFieldGroup,\n  AdminFieldLabel,\n  AdminFieldLegend,\n  AdminFieldSet,\n  AdminFieldTitle,\n} from '@\u002Fcomponents\u002Fadmin\u002Ffield'\n",[548,6406,6407,6413,6420,6427,6434,6441,6448,6455,6462,6469,6476,6483],{"__ignoreMap":546},[551,6408,6409,6411],{"class":553,"line":554},[551,6410,584],{"class":583},[551,6412,588],{"class":587},[551,6414,6415,6418],{"class":553,"line":591},[551,6416,6417],{"class":594},"  AdminField",[551,6419,598],{"class":587},[551,6421,6422,6425],{"class":553,"line":601},[551,6423,6424],{"class":594},"  AdminFieldContent",[551,6426,598],{"class":587},[551,6428,6429,6432],{"class":553,"line":609},[551,6430,6431],{"class":594},"  AdminFieldDescription",[551,6433,598],{"class":587},[551,6435,6436,6439],{"class":553,"line":617},[551,6437,6438],{"class":594},"  AdminFieldDivider",[551,6440,598],{"class":587},[551,6442,6443,6446],{"class":553,"line":625},[551,6444,6445],{"class":594},"  AdminFieldError",[551,6447,598],{"class":587},[551,6449,6450,6453],{"class":553,"line":633},[551,6451,6452],{"class":594},"  AdminFieldGroup",[551,6454,598],{"class":587},[551,6456,6457,6460],{"class":553,"line":641},[551,6458,6459],{"class":594},"  AdminFieldLabel",[551,6461,598],{"class":587},[551,6463,6464,6467],{"class":553,"line":649},[551,6465,6466],{"class":594},"  AdminFieldLegend",[551,6468,598],{"class":587},[551,6470,6471,6474],{"class":553,"line":657},[551,6472,6473],{"class":594},"  AdminFieldSet",[551,6475,598],{"class":587},[551,6477,6478,6481],{"class":553,"line":665},[551,6479,6480],{"class":594},"  AdminFieldTitle",[551,6482,598],{"class":587},[551,6484,6485,6487,6489,6491,6494],{"class":553,"line":901},[551,6486,668],{"class":587},[551,6488,671],{"class":583},[551,6490,674],{"class":587},[551,6492,6493],{"class":561},"@\u002Fcomponents\u002Fadmin\u002Ffield",[551,6495,680],{"class":587},[536,6497,683],{"id":683},[685,6499],{"name":6500},"FieldDemo",[536,6502,690],{"id":690},[692,6504,6505],{"id":6505},"錯誤訊息",[685,6507],{"name":6508},"FieldErrorDemo",[692,6510,6512],{"id":6511},"水平-orientation","水平 Orientation",[685,6514],{"name":6515},"FieldHorizontalDemo",[536,6517,720],{"id":719},[692,6519,723],{"id":723},[539,6521,6523],{"className":726,"code":6522,"language":728,"meta":546,"style":546},"\u003Ctemplate>\n  \u003Cadmin-field-set>\n    \u003Cadmin-field-legend>個人資料\u003C\u002Fadmin-field-legend>\n    \u003Cadmin-field-group>\n      \u003Cadmin-field orientation=\"vertical\">\n        \u003Cadmin-field-label>姓名\u003C\u002Fadmin-field-label>\n        \u003Cadmin-input v-model=\"name\" \u002F>\n        \u003Cadmin-field-description>顯示在個人檔案上的名字。\u003C\u002Fadmin-field-description>\n      \u003C\u002Fadmin-field>\n\n      \u003Cadmin-field orientation=\"vertical\">\n        \u003Cadmin-field-label>Email\u003C\u002Fadmin-field-label>\n        \u003Cadmin-input v-model=\"email\" is-error \u002F>\n        \u003Cadmin-field-description>我們不會公開你的 email。\u003C\u002Fadmin-field-description>\n        \u003Cadmin-field-error v-if=\"error\">{{ error }}\u003C\u002Fadmin-field-error>\n      \u003C\u002Fadmin-field>\n\n      \u003Cadmin-field-divider \u002F>\n      \u003Cadmin-field-title>通知偏好\u003C\u002Fadmin-field-title>\n\n      \u003Cadmin-field orientation=\"horizontal\">\n        \u003Cadmin-field-content>\n          \u003Cadmin-field-label>每週電子報\u003C\u002Fadmin-field-label>\n          \u003Cadmin-field-description>每週一寄送最新消息。\u003C\u002Fadmin-field-description>\n        \u003C\u002Fadmin-field-content>\n        \u003Cadmin-switch v-model=\"newsletter\" \u002F>\n      \u003C\u002Fadmin-field>\n    \u003C\u002Fadmin-field-group>\n  \u003C\u002Fadmin-field-set>\n\u003C\u002Ftemplate>\n",[548,6524,6525,6533,6542,6560,6569,6589,6606,6626,6644,6652,6656,6674,6691,6713,6730,6758,6766,6770,6779,6797,6801,6820,6828,6845,6862,6871,6892,6901,6910,6919],{"__ignoreMap":546},[551,6526,6527,6529,6531],{"class":553,"line":554},[551,6528,735],{"class":587},[551,6530,739],{"class":738},[551,6532,742],{"class":587},[551,6534,6535,6537,6540],{"class":553,"line":591},[551,6536,747],{"class":587},[551,6538,6539],{"class":738},"admin-field-set",[551,6541,742],{"class":587},[551,6543,6544,6546,6549,6551,6554,6556,6558],{"class":553,"line":601},[551,6545,772],{"class":587},[551,6547,6548],{"class":738},"admin-field-legend",[551,6550,778],{"class":587},[551,6552,6553],{"class":594},"個人資料",[551,6555,784],{"class":587},[551,6557,6548],{"class":738},[551,6559,742],{"class":587},[551,6561,6562,6564,6567],{"class":553,"line":609},[551,6563,772],{"class":587},[551,6565,6566],{"class":738},"admin-field-group",[551,6568,742],{"class":587},[551,6570,6571,6573,6575,6578,6580,6582,6585,6587],{"class":553,"line":617},[551,6572,802],{"class":587},[551,6574,5159],{"class":738},[551,6576,6577],{"class":753}," orientation",[551,6579,757],{"class":587},[551,6581,760],{"class":587},[551,6583,6584],{"class":561},"vertical",[551,6586,760],{"class":587},[551,6588,742],{"class":587},[551,6590,6591,6593,6595,6597,6600,6602,6604],{"class":553,"line":625},[551,6592,812],{"class":587},[551,6594,5162],{"class":738},[551,6596,778],{"class":587},[551,6598,6599],{"class":594},"姓名",[551,6601,784],{"class":587},[551,6603,5162],{"class":738},[551,6605,742],{"class":587},[551,6607,6608,6610,6613,6615,6617,6619,6622,6624],{"class":553,"line":633},[551,6609,812],{"class":587},[551,6611,6612],{"class":738},"admin-input",[551,6614,2867],{"class":753},[551,6616,757],{"class":587},[551,6618,760],{"class":587},[551,6620,6621],{"class":561},"name",[551,6623,760],{"class":587},[551,6625,1449],{"class":587},[551,6627,6628,6630,6633,6635,6638,6640,6642],{"class":553,"line":641},[551,6629,812],{"class":587},[551,6631,6632],{"class":738},"admin-field-description",[551,6634,778],{"class":587},[551,6636,6637],{"class":594},"顯示在個人檔案上的名字。",[551,6639,784],{"class":587},[551,6641,6632],{"class":738},[551,6643,742],{"class":587},[551,6645,6646,6648,6650],{"class":553,"line":649},[551,6647,849],{"class":587},[551,6649,5159],{"class":738},[551,6651,742],{"class":587},[551,6653,6654],{"class":553,"line":657},[551,6655,1293],{"emptyLinePlaceholder":526},[551,6657,6658,6660,6662,6664,6666,6668,6670,6672],{"class":553,"line":665},[551,6659,802],{"class":587},[551,6661,5159],{"class":738},[551,6663,6577],{"class":753},[551,6665,757],{"class":587},[551,6667,760],{"class":587},[551,6669,6584],{"class":561},[551,6671,760],{"class":587},[551,6673,742],{"class":587},[551,6675,6676,6678,6680,6682,6685,6687,6689],{"class":553,"line":901},[551,6677,812],{"class":587},[551,6679,5162],{"class":738},[551,6681,778],{"class":587},[551,6683,6684],{"class":594},"Email",[551,6686,784],{"class":587},[551,6688,5162],{"class":738},[551,6690,742],{"class":587},[551,6692,6693,6695,6697,6699,6701,6703,6706,6708,6711],{"class":553,"line":910},[551,6694,812],{"class":587},[551,6696,6612],{"class":738},[551,6698,2867],{"class":753},[551,6700,757],{"class":587},[551,6702,760],{"class":587},[551,6704,6705],{"class":561},"email",[551,6707,760],{"class":587},[551,6709,6710],{"class":753}," is-error",[551,6712,1449],{"class":587},[551,6714,6715,6717,6719,6721,6724,6726,6728],{"class":553,"line":920},[551,6716,812],{"class":587},[551,6718,6632],{"class":738},[551,6720,778],{"class":587},[551,6722,6723],{"class":594},"我們不會公開你的 email。",[551,6725,784],{"class":587},[551,6727,6632],{"class":738},[551,6729,742],{"class":587},[551,6731,6732,6734,6736,6738,6740,6742,6745,6747,6749,6752,6754,6756],{"class":553,"line":930},[551,6733,812],{"class":587},[551,6735,5168],{"class":738},[551,6737,3635],{"class":753},[551,6739,757],{"class":587},[551,6741,760],{"class":587},[551,6743,6744],{"class":561},"error",[551,6746,760],{"class":587},[551,6748,778],{"class":587},[551,6750,6751],{"class":594},"{{ error }}",[551,6753,784],{"class":587},[551,6755,5168],{"class":738},[551,6757,742],{"class":587},[551,6759,6760,6762,6764],{"class":553,"line":3536},[551,6761,849],{"class":587},[551,6763,5159],{"class":738},[551,6765,742],{"class":587},[551,6767,6768],{"class":553,"line":4422},[551,6769,1293],{"emptyLinePlaceholder":526},[551,6771,6772,6774,6777],{"class":553,"line":6194},[551,6773,802],{"class":587},[551,6775,6776],{"class":738},"admin-field-divider",[551,6778,1449],{"class":587},[551,6780,6781,6783,6786,6788,6791,6793,6795],{"class":553,"line":6204},[551,6782,802],{"class":587},[551,6784,6785],{"class":738},"admin-field-title",[551,6787,778],{"class":587},[551,6789,6790],{"class":594},"通知偏好",[551,6792,784],{"class":587},[551,6794,6785],{"class":738},[551,6796,742],{"class":587},[551,6798,6799],{"class":553,"line":6223},[551,6800,1293],{"emptyLinePlaceholder":526},[551,6802,6803,6805,6807,6809,6811,6813,6816,6818],{"class":553,"line":6233},[551,6804,802],{"class":587},[551,6806,5159],{"class":738},[551,6808,6577],{"class":753},[551,6810,757],{"class":587},[551,6812,760],{"class":587},[551,6814,6815],{"class":561},"horizontal",[551,6817,760],{"class":587},[551,6819,742],{"class":587},[551,6821,6822,6824,6826],{"class":553,"line":6242},[551,6823,812],{"class":587},[551,6825,5165],{"class":738},[551,6827,742],{"class":587},[551,6829,6830,6832,6834,6836,6839,6841,6843],{"class":553,"line":6251},[551,6831,6207],{"class":587},[551,6833,5162],{"class":738},[551,6835,778],{"class":587},[551,6837,6838],{"class":594},"每週電子報",[551,6840,784],{"class":587},[551,6842,5162],{"class":738},[551,6844,742],{"class":587},[551,6846,6847,6849,6851,6853,6856,6858,6860],{"class":553,"line":524},[551,6848,6207],{"class":587},[551,6850,6632],{"class":738},[551,6852,778],{"class":587},[551,6854,6855],{"class":594},"每週一寄送最新消息。",[551,6857,784],{"class":587},[551,6859,6632],{"class":738},[551,6861,742],{"class":587},[551,6863,6865,6867,6869],{"class":553,"line":6864},25,[551,6866,6226],{"class":587},[551,6868,5165],{"class":738},[551,6870,742],{"class":587},[551,6872,6874,6876,6879,6881,6883,6885,6888,6890],{"class":553,"line":6873},26,[551,6875,812],{"class":587},[551,6877,6878],{"class":738},"admin-switch",[551,6880,2867],{"class":753},[551,6882,757],{"class":587},[551,6884,760],{"class":587},[551,6886,6887],{"class":561},"newsletter",[551,6889,760],{"class":587},[551,6891,1449],{"class":587},[551,6893,6895,6897,6899],{"class":553,"line":6894},27,[551,6896,849],{"class":587},[551,6898,5159],{"class":738},[551,6900,742],{"class":587},[551,6902,6904,6906,6908],{"class":553,"line":6903},28,[551,6905,913],{"class":587},[551,6907,6566],{"class":738},[551,6909,742],{"class":587},[551,6911,6913,6915,6917],{"class":553,"line":6912},29,[551,6914,923],{"class":587},[551,6916,6539],{"class":738},[551,6918,742],{"class":587},[551,6920,6922,6924,6926],{"class":553,"line":6921},30,[551,6923,784],{"class":587},[551,6925,739],{"class":738},[551,6927,742],{"class":587},[5754,6929,6930,6939],{},[5757,6931,6932],{},[5760,6933,6934,6936],{},[5763,6935,5885],{},[5763,6937,6938],{},"角色",[5770,6940,6941,6954,6967,6980,6992,7001,7010,7023,7032,7045],{},[5760,6942,6943,6947],{},[5775,6944,6945],{},[548,6946,6539],{},[5775,6948,6949,6950,6953],{},"表單區塊外層，對應 HTML ",[548,6951,6952],{},"\u003Cfieldset>","，可巢狀使用",[5760,6955,6956,6960],{},[5775,6957,6958],{},[548,6959,6548],{},[5775,6961,6962,6963,6966],{},"區塊標題，對應 ",[548,6964,6965],{},"\u003Clegend>","，視覺上為主標題",[5760,6968,6969,6973],{},[5775,6970,6971],{},[548,6972,6566],{},[5775,6974,6975,6976,6979],{},"欄位群組容器，統一欄位間距與 ",[548,6977,6978],{},"@container\u002Ffield-group"," 響應式斷點",[5760,6981,6982,6986],{},[5775,6983,6984],{},[548,6985,5159],{},[5775,6987,6988,6989],{},"單一欄位容器，控制 label \u002F 輸入欄 \u002F 描述 \u002F 錯誤的排版與 ",[548,6990,6991],{},"orientation",[5760,6993,6994,6998],{},[5775,6995,6996],{},[548,6997,5162],{},[5775,6999,7000],{},"欄位 label",[5760,7002,7003,7007],{},[5775,7004,7005],{},[548,7006,6632],{},[5775,7008,7009],{},"欄位輔助說明",[5760,7011,7012,7016],{},[5775,7013,7014],{},[548,7015,5168],{},[5775,7017,7018,7019,7022],{},"驗證錯誤訊息，搭配輸入欄位的 ",[548,7020,7021],{},"is-error"," 樣式",[5760,7024,7025,7029],{},[5775,7026,7027],{},[548,7028,5165],{},[5775,7030,7031],{},"在橫向欄位中包住 label + description，讓控制元件（switch \u002F checkbox 等）對齊在右側",[5760,7033,7034,7038],{},[5775,7035,7036],{},[548,7037,6785],{},[5775,7039,7040,7041,7044],{},"群組內次標題，用於分段但不需 ",[548,7042,7043],{},"legend"," 語意時",[5760,7046,7047,7051],{},[5775,7048,7049],{},[548,7050,6776],{},[5775,7052,7053],{},"群組內分隔線，視覺切分不同區段",[692,7055,5159],{"id":5159},[940,7057],{"component":7058},"AdminField",[692,7060,6539],{"id":6539},[940,7062],{"component":7063},"AdminFieldSet",[692,7065,6548],{"id":6548},[940,7067],{"component":7068},"AdminFieldLegend",[692,7070,6566],{"id":6566},[940,7072],{"component":7073},"AdminFieldGroup",[692,7075,5162],{"id":5162},[940,7077],{"component":7078},"AdminFieldLabel",[692,7080,5165],{"id":5165},[940,7082],{"component":7083},"AdminFieldContent",[692,7085,6632],{"id":6632},[940,7087],{"component":7088},"AdminFieldDescription",[692,7090,5168],{"id":5168},[940,7092],{"component":7093},"AdminFieldError",[692,7095,6785],{"id":6785},[940,7097],{"component":7098},"AdminFieldTitle",[692,7100,6776],{"id":6776},[940,7102],{"component":7103},"AdminFieldDivider",[536,7105,985],{"id":985},[987,7107],{"component":7058},[990,7109,992],{},{"title":546,"searchDepth":601,"depth":601,"links":7111},[7112,7113,7114,7118,7131],{"id":507,"depth":591,"text":507},{"id":683,"depth":591,"text":683},{"id":690,"depth":591,"text":690,"children":7115},[7116,7117],{"id":6505,"depth":601,"text":6505},{"id":6511,"depth":601,"text":6512},{"id":719,"depth":591,"text":720,"children":7119},[7120,7121,7122,7123,7124,7125,7126,7127,7128,7129,7130],{"id":723,"depth":601,"text":723},{"id":5159,"depth":601,"text":5159},{"id":6539,"depth":601,"text":6539},{"id":6548,"depth":601,"text":6548},{"id":6566,"depth":601,"text":6566},{"id":5162,"depth":601,"text":5162},{"id":5165,"depth":601,"text":5165},{"id":6632,"depth":601,"text":6632},{"id":5168,"depth":601,"text":5168},{"id":6785,"depth":601,"text":6785},{"id":6776,"depth":601,"text":6776},{"id":985,"depth":591,"text":985},"表單欄位容器。統一 label、說明、錯誤訊息排版。",{"doc":7134},"https:\u002F\u002Fwww.shadcn-vue.com\u002Fdocs\u002Fcomponents\u002Ffield",{},{"title":69,"description":7132},"SLMLran1zGFbcHrZE3UpNKHGEHhrs8i2A9AaQfT8G3w",{"id":7139,"title":73,"body":7140,"component":526,"description":7674,"extension":1015,"links":7675,"meta":7677,"navigation":526,"new":18,"path":74,"seo":7678,"stem":75,"wrapperKind":19,"__hash__":7679},"docs\u002Fdocs\u002Fadmin\u002Ffile-upload.md",{"type":533,"value":7141,"toc":7650},[7142,7144,7162,7256,7258,7261,7263,7267,7270,7274,7277,7280,7284,7300,7314,7326,7329,7331,7333,7553,7555,7557,7559,7562,7564,7567,7569,7572,7574,7577,7579,7582,7584,7587,7589,7592,7594,7597,7599,7602,7604,7644,7646,7648],[536,7143,507],{"id":507},[539,7145,7147],{"className":541,"code":7146,"filename":543,"language":544,"meta":545,"style":546},"pnpm dlx shadcn-vue add @admin\u002Ffile-upload\n",[548,7148,7149],{"__ignoreMap":546},[551,7150,7151,7153,7155,7157,7159],{"class":553,"line":554},[551,7152,558],{"class":557},[551,7154,562],{"class":561},[551,7156,565],{"class":561},[551,7158,568],{"class":561},[551,7160,7161],{"class":561}," @admin\u002Ffile-upload\n",[539,7163,7165],{"className":574,"code":7164,"language":576,"meta":546,"style":546},"import {\n  AdminFileUpload,\n  AdminFileUploadClear,\n  AdminFileUploadDropzone,\n  AdminFileUploadItem,\n  AdminFileUploadItemDelete,\n  AdminFileUploadItemMetadata,\n  AdminFileUploadItemPreview,\n  AdminFileUploadItemProgress,\n  AdminFileUploadList,\n  AdminFileUploadTrigger,\n} from '@\u002Fcomponents\u002Fadmin\u002Ffile-upload'\n",[548,7166,7167,7173,7180,7187,7194,7201,7208,7215,7222,7229,7236,7243],{"__ignoreMap":546},[551,7168,7169,7171],{"class":553,"line":554},[551,7170,584],{"class":583},[551,7172,588],{"class":587},[551,7174,7175,7178],{"class":553,"line":591},[551,7176,7177],{"class":594},"  AdminFileUpload",[551,7179,598],{"class":587},[551,7181,7182,7185],{"class":553,"line":601},[551,7183,7184],{"class":594},"  AdminFileUploadClear",[551,7186,598],{"class":587},[551,7188,7189,7192],{"class":553,"line":609},[551,7190,7191],{"class":594},"  AdminFileUploadDropzone",[551,7193,598],{"class":587},[551,7195,7196,7199],{"class":553,"line":617},[551,7197,7198],{"class":594},"  AdminFileUploadItem",[551,7200,598],{"class":587},[551,7202,7203,7206],{"class":553,"line":625},[551,7204,7205],{"class":594},"  AdminFileUploadItemDelete",[551,7207,598],{"class":587},[551,7209,7210,7213],{"class":553,"line":633},[551,7211,7212],{"class":594},"  AdminFileUploadItemMetadata",[551,7214,598],{"class":587},[551,7216,7217,7220],{"class":553,"line":641},[551,7218,7219],{"class":594},"  AdminFileUploadItemPreview",[551,7221,598],{"class":587},[551,7223,7224,7227],{"class":553,"line":649},[551,7225,7226],{"class":594},"  AdminFileUploadItemProgress",[551,7228,598],{"class":587},[551,7230,7231,7234],{"class":553,"line":657},[551,7232,7233],{"class":594},"  AdminFileUploadList",[551,7235,598],{"class":587},[551,7237,7238,7241],{"class":553,"line":665},[551,7239,7240],{"class":594},"  AdminFileUploadTrigger",[551,7242,598],{"class":587},[551,7244,7245,7247,7249,7251,7254],{"class":553,"line":901},[551,7246,668],{"class":587},[551,7248,671],{"class":583},[551,7250,674],{"class":587},[551,7252,7253],{"class":561},"@\u002Fcomponents\u002Fadmin\u002Ffile-upload",[551,7255,680],{"class":587},[536,7257,683],{"id":683},[685,7259],{"name":7260},"FileUploadBasicDemo",[536,7262,690],{"id":690},[692,7264,7266],{"id":7265},"僅按鈕不要-dropzone","僅按鈕、不要 Dropzone",[685,7268],{"name":7269},"FileUploadTriggerOnlyDemo",[692,7271,7273],{"id":7272},"程式寫入-url不經檔案選擇器","程式寫入 URL（不經檔案選擇器）",[705,7275,7276],{},"由素材庫、過往上傳紀錄等來源直接寫入 URL 項目，跳過檔案選擇器流程。",[685,7278],{"name":7279},"FileUploadUrlDemo",[536,7281,7283],{"id":7282},"type-safe-列表項目","Type-safe 列表項目",[705,7285,7286,2768,7289,7292,7293,7295,7296,7299],{},[548,7287,7288],{},"AdminFileUpload",[548,7290,7291],{},"TItem extends AdminFileUploadListItem","），以子型別的 ref 綁定 ",[548,7294,2724],{}," 即可讓列表項目攜帶業務欄位（如後端回傳的資產 id），",[548,7297,7298],{},"update:modelValue"," payload 同步收斂為該子型別。",[705,7301,7302,7303,2470,7306,7309,7310,7313],{},"元件自行新增的項目（使用者選檔）僅含 base 欄位（",[548,7304,7305],{},"id",[548,7307,7308],{},"source","）；自訂欄位由呼叫端於 ",[548,7311,7312],{},"upload"," 事件後自行補寫。",[2817,7315,7316],{"title":2819,"type":2820},[705,7317,2823,7318,2827,7320,2831,7322,2834,7324,2838],{},[548,7319,2826],{},[548,7321,2830],{},[697,7323,515],{"href":516},[548,7325,2837],{},[2812,7327],{"name":7328},"FileUploadTypeSafeDemo",[536,7330,720],{"id":719},[692,7332,723],{"id":723},[539,7334,7336],{"className":726,"code":7335,"language":728,"meta":546,"style":546},"\u003Ctemplate>\n  \u003Cadmin-file-upload v-model=\"items\" :on-file-validate=\"validate\" @upload=\"handleUpload\">\n    \u003Cadmin-file-upload-dropzone>\n      \u003Cadmin-file-upload-trigger>選擇檔案\u003C\u002Fadmin-file-upload-trigger>\n    \u003C\u002Fadmin-file-upload-dropzone>\n    \u003Cadmin-file-upload-clear \u002F>\n    \u003Cadmin-file-upload-list>\n      \u003Cadmin-file-upload-item v-for=\"it in items\" :key=\"it.id\" :item-id=\"it.id\">\n        \u003Cadmin-file-upload-item-preview \u002F>\n        \u003Cadmin-file-upload-item-metadata \u002F>\n        \u003Cadmin-file-upload-item-progress \u002F>\n        \u003Cadmin-file-upload-item-delete \u002F>\n      \u003C\u002Fadmin-file-upload-item>\n    \u003C\u002Fadmin-file-upload-list>\n  \u003C\u002Fadmin-file-upload>\n\u003C\u002Ftemplate>\n",[548,7337,7338,7346,7390,7399,7417,7425,7434,7443,7485,7494,7503,7512,7521,7529,7537,7545],{"__ignoreMap":546},[551,7339,7340,7342,7344],{"class":553,"line":554},[551,7341,735],{"class":587},[551,7343,739],{"class":738},[551,7345,742],{"class":587},[551,7347,7348,7350,7353,7355,7357,7359,7362,7364,7367,7369,7371,7374,7376,7379,7381,7383,7386,7388],{"class":553,"line":591},[551,7349,747],{"class":587},[551,7351,7352],{"class":738},"admin-file-upload",[551,7354,2867],{"class":753},[551,7356,757],{"class":587},[551,7358,760],{"class":587},[551,7360,7361],{"class":561},"items",[551,7363,760],{"class":587},[551,7365,7366],{"class":753}," :on-file-validate",[551,7368,757],{"class":587},[551,7370,760],{"class":587},[551,7372,7373],{"class":561},"validate",[551,7375,760],{"class":587},[551,7377,7378],{"class":753}," @upload",[551,7380,757],{"class":587},[551,7382,760],{"class":587},[551,7384,7385],{"class":561},"handleUpload",[551,7387,760],{"class":587},[551,7389,742],{"class":587},[551,7391,7392,7394,7397],{"class":553,"line":601},[551,7393,772],{"class":587},[551,7395,7396],{"class":738},"admin-file-upload-dropzone",[551,7398,742],{"class":587},[551,7400,7401,7403,7406,7408,7411,7413,7415],{"class":553,"line":609},[551,7402,802],{"class":587},[551,7404,7405],{"class":738},"admin-file-upload-trigger",[551,7407,778],{"class":587},[551,7409,7410],{"class":594},"選擇檔案",[551,7412,784],{"class":587},[551,7414,7405],{"class":738},[551,7416,742],{"class":587},[551,7418,7419,7421,7423],{"class":553,"line":617},[551,7420,913],{"class":587},[551,7422,7396],{"class":738},[551,7424,742],{"class":587},[551,7426,7427,7429,7432],{"class":553,"line":625},[551,7428,772],{"class":587},[551,7430,7431],{"class":738},"admin-file-upload-clear",[551,7433,1449],{"class":587},[551,7435,7436,7438,7441],{"class":553,"line":633},[551,7437,772],{"class":587},[551,7439,7440],{"class":738},"admin-file-upload-list",[551,7442,742],{"class":587},[551,7444,7445,7447,7450,7452,7454,7456,7459,7461,7463,7465,7467,7470,7472,7475,7477,7479,7481,7483],{"class":553,"line":641},[551,7446,802],{"class":587},[551,7448,7449],{"class":738},"admin-file-upload-item",[551,7451,2887],{"class":753},[551,7453,757],{"class":587},[551,7455,760],{"class":587},[551,7457,7458],{"class":561},"it in items",[551,7460,760],{"class":587},[551,7462,2899],{"class":753},[551,7464,757],{"class":587},[551,7466,760],{"class":587},[551,7468,7469],{"class":561},"it.id",[551,7471,760],{"class":587},[551,7473,7474],{"class":753}," :item-id",[551,7476,757],{"class":587},[551,7478,760],{"class":587},[551,7480,7469],{"class":561},[551,7482,760],{"class":587},[551,7484,742],{"class":587},[551,7486,7487,7489,7492],{"class":553,"line":649},[551,7488,812],{"class":587},[551,7490,7491],{"class":738},"admin-file-upload-item-preview",[551,7493,1449],{"class":587},[551,7495,7496,7498,7501],{"class":553,"line":657},[551,7497,812],{"class":587},[551,7499,7500],{"class":738},"admin-file-upload-item-metadata",[551,7502,1449],{"class":587},[551,7504,7505,7507,7510],{"class":553,"line":665},[551,7506,812],{"class":587},[551,7508,7509],{"class":738},"admin-file-upload-item-progress",[551,7511,1449],{"class":587},[551,7513,7514,7516,7519],{"class":553,"line":901},[551,7515,812],{"class":587},[551,7517,7518],{"class":738},"admin-file-upload-item-delete",[551,7520,1449],{"class":587},[551,7522,7523,7525,7527],{"class":553,"line":910},[551,7524,849],{"class":587},[551,7526,7449],{"class":738},[551,7528,742],{"class":587},[551,7530,7531,7533,7535],{"class":553,"line":920},[551,7532,913],{"class":587},[551,7534,7440],{"class":738},[551,7536,742],{"class":587},[551,7538,7539,7541,7543],{"class":553,"line":930},[551,7540,923],{"class":587},[551,7542,7352],{"class":738},[551,7544,742],{"class":587},[551,7546,7547,7549,7551],{"class":553,"line":3536},[551,7548,784],{"class":587},[551,7550,739],{"class":738},[551,7552,742],{"class":587},[692,7554,7352],{"id":7352},[940,7556],{"component":7288},[692,7558,7405],{"id":7405},[940,7560],{"component":7561},"AdminFileUploadTrigger",[692,7563,7440],{"id":7440},[940,7565],{"component":7566},"AdminFileUploadList",[692,7568,7449],{"id":7449},[940,7570],{"component":7571},"AdminFileUploadItem",[692,7573,7431],{"id":7431},[940,7575],{"component":7576},"AdminFileUploadClear",[692,7578,7518],{"id":7518},[940,7580],{"component":7581},"AdminFileUploadItemDelete",[692,7583,7509],{"id":7509},[940,7585],{"component":7586},"AdminFileUploadItemProgress",[692,7588,7396],{"id":7396},[940,7590],{"component":7591},"AdminFileUploadDropzone",[692,7593,7500],{"id":7500},[940,7595],{"component":7596},"AdminFileUploadItemMetadata",[692,7598,7491],{"id":7491},[940,7600],{"component":7601},"AdminFileUploadItemPreview",[536,7603,1556],{"id":1556},[1558,7605,7606,7619,7635],{},[1561,7607,7608,7609,7611,7612,1123,7615,7618],{},"自訂子元件可從 ",[548,7610,7253],{}," import ",[548,7613,7614],{},"useFileUploadRoot()",[548,7616,7617],{},"useFileUploadItem()"," 取得內部狀態。",[1561,7620,7621,7623,7624,7626,7627,7630,7631,1613,7633,713],{},[548,7622,7614],{}," 的 ",[548,7625,3248],{}," 為寬型別 ",[548,7628,7629],{},"AdminFileUploadListItem[]","；泛型收斂僅作用於 root 的 ",[548,7632,2724],{},[548,7634,7298],{},[1561,7636,7637,7638,7643],{},"單張圖片欄位使用 ",[697,7639,7640],{"href":82},[548,7641,7642],{},"admin-image-upload","，多檔、列表進度、拖曳區使用本元件族。",[536,7645,985],{"id":985},[987,7647],{"component":7288},[990,7649,992],{},{"title":546,"searchDepth":601,"depth":601,"links":7651},[7652,7653,7654,7658,7659,7672,7673],{"id":507,"depth":591,"text":507},{"id":683,"depth":591,"text":683},{"id":690,"depth":591,"text":690,"children":7655},[7656,7657],{"id":7265,"depth":601,"text":7266},{"id":7272,"depth":601,"text":7273},{"id":7282,"depth":591,"text":7283},{"id":719,"depth":591,"text":720,"children":7660},[7661,7662,7663,7664,7665,7666,7667,7668,7669,7670,7671],{"id":723,"depth":601,"text":723},{"id":7352,"depth":601,"text":7352},{"id":7405,"depth":601,"text":7405},{"id":7440,"depth":601,"text":7440},{"id":7449,"depth":601,"text":7449},{"id":7431,"depth":601,"text":7431},{"id":7518,"depth":601,"text":7518},{"id":7509,"depth":601,"text":7509},{"id":7396,"depth":601,"text":7396},{"id":7500,"depth":601,"text":7500},{"id":7491,"depth":601,"text":7491},{"id":1556,"depth":591,"text":1556},{"id":985,"depth":591,"text":985},"多檔上傳。拖曳、驗證、File 與 URL 並存；上傳由父層監聽 upload 事件處理。",{"doc":7676},"https:\u002F\u002Fwww.diceui.com\u002Fdocs\u002Fcomponents\u002Fradix\u002Ffile-upload",{},{"title":73,"description":7674},"SqJqvx7qLwgQOKMlMa3mYdze2AYbYeAOVmfHycsXpRM",{"id":7681,"title":77,"body":7682,"component":526,"description":7970,"extension":1015,"links":19,"meta":7971,"navigation":526,"new":18,"path":78,"seo":7972,"stem":79,"wrapperKind":19,"__hash__":7973},"docs\u002Fdocs\u002Fadmin\u002Fimage.md",{"type":533,"value":7683,"toc":7952},[7684,7686,7704,7756,7758,7761,7763,7766,7769,7773,7782,7785,7789,7808,7811,7813,7815,7899,7901,7904,7906,7909,7911,7914,7916,7919,7921,7946,7948,7950],[536,7685,507],{"id":507},[539,7687,7689],{"className":541,"code":7688,"filename":543,"language":544,"meta":545,"style":546},"pnpm dlx shadcn-vue add @admin\u002Fimage\n",[548,7690,7691],{"__ignoreMap":546},[551,7692,7693,7695,7697,7699,7701],{"class":553,"line":554},[551,7694,558],{"class":557},[551,7696,562],{"class":561},[551,7698,565],{"class":561},[551,7700,568],{"class":561},[551,7702,7703],{"class":561}," @admin\u002Fimage\n",[539,7705,7707],{"className":574,"code":7706,"language":576,"meta":546,"style":546},"import {\n  AdminImage,\n  AdminImageFallback,\n  AdminImageImg,\n  AdminImagePlaceholder,\n} from '@\u002Fcomponents\u002Fadmin\u002Fimage'\n",[548,7708,7709,7715,7722,7729,7736,7743],{"__ignoreMap":546},[551,7710,7711,7713],{"class":553,"line":554},[551,7712,584],{"class":583},[551,7714,588],{"class":587},[551,7716,7717,7720],{"class":553,"line":591},[551,7718,7719],{"class":594},"  AdminImage",[551,7721,598],{"class":587},[551,7723,7724,7727],{"class":553,"line":601},[551,7725,7726],{"class":594},"  AdminImageFallback",[551,7728,598],{"class":587},[551,7730,7731,7734],{"class":553,"line":609},[551,7732,7733],{"class":594},"  AdminImageImg",[551,7735,598],{"class":587},[551,7737,7738,7741],{"class":553,"line":617},[551,7739,7740],{"class":594},"  AdminImagePlaceholder",[551,7742,598],{"class":587},[551,7744,7745,7747,7749,7751,7754],{"class":553,"line":625},[551,7746,668],{"class":587},[551,7748,671],{"class":583},[551,7750,674],{"class":587},[551,7752,7753],{"class":561},"@\u002Fcomponents\u002Fadmin\u002Fimage",[551,7755,680],{"class":587},[536,7757,683],{"id":683},[685,7759],{"name":7760},"ImageDemo",[536,7762,690],{"id":690},[692,7764,7765],{"id":7765},"自訂版面與裁切",[685,7767],{"name":7768},"ImageVariantsDemo",[692,7770,7772],{"id":7771},"錯誤態-fallback","錯誤態 fallback",[705,7774,7775,7776,7778,7779,7781],{},"故意傳入無效 ",[548,7777,1409],{}," 觸發 ",[548,7780,6744],{},"，顯示預設 fallback。",[685,7783],{"name":7784},"ImageErrorDemo",[692,7786,7788],{"id":7787},"自訂-placeholder-與-fallback","自訂 placeholder 與 fallback",[2817,7790,7792],{"title":7791,"type":2820},"子元件渲染條件",[705,7793,7794,7797,7798,7801,7802,7797,7805,7807],{},[548,7795,7796],{},"admin-image-placeholder"," 僅在 ",[548,7799,7800],{},"loading"," 狀態渲染，",[548,7803,7804],{},"admin-image-fallback",[548,7806,6744],{}," 狀態渲染；不放對應子元件即無該狀態的視覺。",[685,7809],{"name":7810},"ImageCustomDemo",[536,7812,720],{"id":719},[692,7814,723],{"id":723},[539,7816,7818],{"className":726,"code":7817,"language":728,"meta":546,"style":546},"\u003Ctemplate>\n  \u003Cadmin-image>\n    \u003Cadmin-image-img alt=\"...\" src=\"...\" \u002F>\n    \u003Cadmin-image-placeholder \u002F>\n    \u003Cadmin-image-fallback \u002F>\n  \u003C\u002Fadmin-image>\n\u003C\u002Ftemplate>\n",[548,7819,7820,7828,7837,7867,7875,7883,7891],{"__ignoreMap":546},[551,7821,7822,7824,7826],{"class":553,"line":554},[551,7823,735],{"class":587},[551,7825,739],{"class":738},[551,7827,742],{"class":587},[551,7829,7830,7832,7835],{"class":553,"line":591},[551,7831,747],{"class":587},[551,7833,7834],{"class":738},"admin-image",[551,7836,742],{"class":587},[551,7838,7839,7841,7844,7847,7849,7851,7853,7855,7857,7859,7861,7863,7865],{"class":553,"line":601},[551,7840,772],{"class":587},[551,7842,7843],{"class":738},"admin-image-img",[551,7845,7846],{"class":753}," alt",[551,7848,757],{"class":587},[551,7850,760],{"class":587},[551,7852,1799],{"class":561},[551,7854,760],{"class":587},[551,7856,1792],{"class":753},[551,7858,757],{"class":587},[551,7860,760],{"class":587},[551,7862,1799],{"class":561},[551,7864,760],{"class":587},[551,7866,1449],{"class":587},[551,7868,7869,7871,7873],{"class":553,"line":609},[551,7870,772],{"class":587},[551,7872,7796],{"class":738},[551,7874,1449],{"class":587},[551,7876,7877,7879,7881],{"class":553,"line":617},[551,7878,772],{"class":587},[551,7880,7804],{"class":738},[551,7882,1449],{"class":587},[551,7884,7885,7887,7889],{"class":553,"line":625},[551,7886,923],{"class":587},[551,7888,7834],{"class":738},[551,7890,742],{"class":587},[551,7892,7893,7895,7897],{"class":553,"line":633},[551,7894,784],{"class":587},[551,7896,739],{"class":738},[551,7898,742],{"class":587},[692,7900,7834],{"id":7834},[940,7902],{"component":7903},"AdminImage",[692,7905,7843],{"id":7843},[940,7907],{"component":7908},"AdminImageImg",[692,7910,7796],{"id":7796},[940,7912],{"component":7913},"AdminImagePlaceholder",[692,7915,7804],{"id":7804},[940,7917],{"component":7918},"AdminImageFallback",[536,7920,1556],{"id":1556},[1558,7922,7923,7935],{},[1561,7924,7925,7928,7929,7931,7932,7934],{},[1135,7926,7927],{},"CDN 同 URL 不同檔","：若 ",[548,7930,1409],{}," 字串完全相同但內容換了（CDN 快取），",[548,7933,4645],{}," 不會自動重抓。父層應在 URL 後加 query string 強制更新。",[1561,7936,7937,7938,7940,7941,7943,7944,713],{},"純展示用 ",[548,7939,7834],{},"；頭像場景改用 ",[548,7942,1780],{},"；表單上傳改用 ",[548,7945,7642],{},[536,7947,985],{"id":985},[987,7949],{"component":7903},[990,7951,992],{},{"title":546,"searchDepth":601,"depth":601,"links":7953},[7954,7955,7956,7961,7968,7969],{"id":507,"depth":591,"text":507},{"id":683,"depth":591,"text":683},{"id":690,"depth":591,"text":690,"children":7957},[7958,7959,7960],{"id":7765,"depth":601,"text":7765},{"id":7771,"depth":601,"text":7772},{"id":7787,"depth":601,"text":7788},{"id":719,"depth":591,"text":720,"children":7962},[7963,7964,7965,7966,7967],{"id":723,"depth":601,"text":723},{"id":7834,"depth":601,"text":7834},{"id":7843,"depth":601,"text":7843},{"id":7796,"depth":601,"text":7796},{"id":7804,"depth":601,"text":7804},{"id":1556,"depth":591,"text":1556},{"id":985,"depth":591,"text":985},"圖片純展示。視覺態：loading／loaded／error。",{},{"title":77,"description":7970},"3eAfTnbQRdsPry-ZhaqKsdl3S4UFlz3LHeZl6W3FjG8",{"id":7975,"title":81,"body":7976,"component":526,"description":8462,"extension":1015,"links":19,"meta":8463,"navigation":526,"new":18,"path":82,"seo":8464,"stem":83,"wrapperKind":19,"__hash__":8465},"docs\u002Fdocs\u002Fadmin\u002Fimage-upload.md",{"type":533,"value":7977,"toc":8443},[7978,7980,7998,8064,8066,8069,8071,8074,8077,8113,8116,8145,8268,8270,8272,8368,8370,8373,8375,8378,8380,8383,8385,8387,8389,8391,8393,8395,8397,8437,8439,8441],[536,7979,507],{"id":507},[539,7981,7983],{"className":541,"code":7982,"filename":543,"language":544,"meta":545,"style":546},"pnpm dlx shadcn-vue add @admin\u002Fimage-upload\n",[548,7984,7985],{"__ignoreMap":546},[551,7986,7987,7989,7991,7993,7995],{"class":553,"line":554},[551,7988,558],{"class":557},[551,7990,562],{"class":561},[551,7992,565],{"class":561},[551,7994,568],{"class":561},[551,7996,7997],{"class":561}," @admin\u002Fimage-upload\n",[539,7999,8001],{"className":574,"code":8000,"language":576,"meta":546,"style":546},"import {\n  AdminImageUpload,\n  AdminImageUploadLoading,\n  AdminImageUploadMessage,\n  AdminImageUploadPlaceholder,\n  AdminImageUploadPreview,\n  AdminImageUploadTrigger,\n} from '@\u002Fcomponents\u002Fadmin\u002Fimage-upload'\n",[548,8002,8003,8009,8016,8023,8030,8037,8044,8051],{"__ignoreMap":546},[551,8004,8005,8007],{"class":553,"line":554},[551,8006,584],{"class":583},[551,8008,588],{"class":587},[551,8010,8011,8014],{"class":553,"line":591},[551,8012,8013],{"class":594},"  AdminImageUpload",[551,8015,598],{"class":587},[551,8017,8018,8021],{"class":553,"line":601},[551,8019,8020],{"class":594},"  AdminImageUploadLoading",[551,8022,598],{"class":587},[551,8024,8025,8028],{"class":553,"line":609},[551,8026,8027],{"class":594},"  AdminImageUploadMessage",[551,8029,598],{"class":587},[551,8031,8032,8035],{"class":553,"line":617},[551,8033,8034],{"class":594},"  AdminImageUploadPlaceholder",[551,8036,598],{"class":587},[551,8038,8039,8042],{"class":553,"line":625},[551,8040,8041],{"class":594},"  AdminImageUploadPreview",[551,8043,598],{"class":587},[551,8045,8046,8049],{"class":553,"line":633},[551,8047,8048],{"class":594},"  AdminImageUploadTrigger",[551,8050,598],{"class":587},[551,8052,8053,8055,8057,8059,8062],{"class":553,"line":641},[551,8054,668],{"class":587},[551,8056,671],{"class":583},[551,8058,674],{"class":587},[551,8060,8061],{"class":561},"@\u002Fcomponents\u002Fadmin\u002Fimage-upload",[551,8063,680],{"class":587},[536,8065,683],{"id":683},[685,8067],{"name":8068},"ImageUploadDemo",[536,8070,690],{"id":690},[692,8072,8073],{"id":8073},"與表單驗證整合",[685,8075],{"name":8076},"ImageUploadValidationDemo",[2806,8078,8079,8100],{},[705,8080,8081,8082,8084,8085,8088,8089,8092,8093,8096,8097,8099],{},"以 vee-validate 的 ",[548,8083,5152],{}," 提供驗證，將 ",[548,8086,8087],{},"errorMessage"," 是否存在透過 ",[548,8090,8091],{},":is-error"," 傳入元件即可；錯誤文字交由元件內建的 ",[548,8094,8095],{},"AdminImageUploadMessage"," 顯示，無需額外渲染 ",[548,8098,5168],{},"，避免訊息重複。",[705,8101,8102,8103,8106,8107,7623,8110,713],{},"v-model 綁的是使用者新選的 ",[548,8104,8105],{},"File","。已上傳完成的 URL 另外存一個 state，上傳成功後餵給 ",[548,8108,8109],{},"AdminImageUploadPreview",[548,8111,8112],{},":src",[692,8114,8115],{"id":8115},"顯示既有圖片",[705,8117,8118,8119,7623,8121,8123,8124,8126,8127,8129,8130,8132,8133,8136,8137,8140,8141,8144],{},"編輯表單的既有圖片（或上傳完成的持久化 URL）不進 v-model，改由 ",[548,8120,8109],{},[548,8122,1409],{}," 顯示。有選檔（",[548,8125,8105],{},"）時 ",[548,8128,8105],{}," 優先，否則 fallback ",[548,8131,1409],{},"。因為此時 v-model 為 ",[548,8134,8135],{},"null","，需以 ",[548,8138,8139],{},"v-if"," gate 掉 ",[548,8142,8143],{},"AdminImageUploadPlaceholder","，避免與既有圖重疊：",[539,8146,8148],{"className":726,"code":8147,"language":728,"meta":546,"style":546},"\u003Ctemplate>\n  \u003Cadmin-image-upload v-model=\"file\">\n    \u003Cadmin-image-upload-trigger>\n      \u003Cadmin-image-upload-placeholder v-if=\"!existingSrc\" \u002F>\n      \u003Cadmin-image-upload-preview :src=\"existingSrc\" \u002F>\n      \u003Cadmin-image-upload-loading \u002F>\n    \u003C\u002Fadmin-image-upload-trigger>\n    \u003Cadmin-image-upload-message \u002F>\n  \u003C\u002Fadmin-image-upload>\n\u003C\u002Ftemplate>\n",[548,8149,8150,8158,8177,8186,8206,8226,8235,8243,8252,8260],{"__ignoreMap":546},[551,8151,8152,8154,8156],{"class":553,"line":554},[551,8153,735],{"class":587},[551,8155,739],{"class":738},[551,8157,742],{"class":587},[551,8159,8160,8162,8164,8166,8168,8170,8173,8175],{"class":553,"line":591},[551,8161,747],{"class":587},[551,8163,7642],{"class":738},[551,8165,2867],{"class":753},[551,8167,757],{"class":587},[551,8169,760],{"class":587},[551,8171,8172],{"class":561},"file",[551,8174,760],{"class":587},[551,8176,742],{"class":587},[551,8178,8179,8181,8184],{"class":553,"line":601},[551,8180,772],{"class":587},[551,8182,8183],{"class":738},"admin-image-upload-trigger",[551,8185,742],{"class":587},[551,8187,8188,8190,8193,8195,8197,8199,8202,8204],{"class":553,"line":609},[551,8189,802],{"class":587},[551,8191,8192],{"class":738},"admin-image-upload-placeholder",[551,8194,3635],{"class":753},[551,8196,757],{"class":587},[551,8198,760],{"class":587},[551,8200,8201],{"class":561},"!existingSrc",[551,8203,760],{"class":587},[551,8205,1449],{"class":587},[551,8207,8208,8210,8213,8215,8217,8219,8222,8224],{"class":553,"line":617},[551,8209,802],{"class":587},[551,8211,8212],{"class":738},"admin-image-upload-preview",[551,8214,4219],{"class":753},[551,8216,757],{"class":587},[551,8218,760],{"class":587},[551,8220,8221],{"class":561},"existingSrc",[551,8223,760],{"class":587},[551,8225,1449],{"class":587},[551,8227,8228,8230,8233],{"class":553,"line":625},[551,8229,802],{"class":587},[551,8231,8232],{"class":738},"admin-image-upload-loading",[551,8234,1449],{"class":587},[551,8236,8237,8239,8241],{"class":553,"line":633},[551,8238,913],{"class":587},[551,8240,8183],{"class":738},[551,8242,742],{"class":587},[551,8244,8245,8247,8250],{"class":553,"line":641},[551,8246,772],{"class":587},[551,8248,8249],{"class":738},"admin-image-upload-message",[551,8251,1449],{"class":587},[551,8253,8254,8256,8258],{"class":553,"line":649},[551,8255,923],{"class":587},[551,8257,7642],{"class":738},[551,8259,742],{"class":587},[551,8261,8262,8264,8266],{"class":553,"line":657},[551,8263,784],{"class":587},[551,8265,739],{"class":738},[551,8267,742],{"class":587},[536,8269,720],{"id":719},[692,8271,723],{"id":723},[539,8273,8275],{"className":726,"code":8274,"language":728,"meta":546,"style":546},"\u003Ctemplate>\n  \u003Cadmin-image-upload v-model=\"image\">\n    \u003Cadmin-image-upload-trigger>\n      \u003Cadmin-image-upload-placeholder \u002F>\n      \u003Cadmin-image-upload-preview \u002F>\n      \u003Cadmin-image-upload-loading \u002F>\n    \u003C\u002Fadmin-image-upload-trigger>\n    \u003Cadmin-image-upload-message \u002F>\n  \u003C\u002Fadmin-image-upload>\n\u003C\u002Ftemplate>\n",[548,8276,8277,8285,8304,8312,8320,8328,8336,8344,8352,8360],{"__ignoreMap":546},[551,8278,8279,8281,8283],{"class":553,"line":554},[551,8280,735],{"class":587},[551,8282,739],{"class":738},[551,8284,742],{"class":587},[551,8286,8287,8289,8291,8293,8295,8297,8300,8302],{"class":553,"line":591},[551,8288,747],{"class":587},[551,8290,7642],{"class":738},[551,8292,2867],{"class":753},[551,8294,757],{"class":587},[551,8296,760],{"class":587},[551,8298,8299],{"class":561},"image",[551,8301,760],{"class":587},[551,8303,742],{"class":587},[551,8305,8306,8308,8310],{"class":553,"line":601},[551,8307,772],{"class":587},[551,8309,8183],{"class":738},[551,8311,742],{"class":587},[551,8313,8314,8316,8318],{"class":553,"line":609},[551,8315,802],{"class":587},[551,8317,8192],{"class":738},[551,8319,1449],{"class":587},[551,8321,8322,8324,8326],{"class":553,"line":617},[551,8323,802],{"class":587},[551,8325,8212],{"class":738},[551,8327,1449],{"class":587},[551,8329,8330,8332,8334],{"class":553,"line":625},[551,8331,802],{"class":587},[551,8333,8232],{"class":738},[551,8335,1449],{"class":587},[551,8337,8338,8340,8342],{"class":553,"line":633},[551,8339,913],{"class":587},[551,8341,8183],{"class":738},[551,8343,742],{"class":587},[551,8345,8346,8348,8350],{"class":553,"line":641},[551,8347,772],{"class":587},[551,8349,8249],{"class":738},[551,8351,1449],{"class":587},[551,8353,8354,8356,8358],{"class":553,"line":649},[551,8355,923],{"class":587},[551,8357,7642],{"class":738},[551,8359,742],{"class":587},[551,8361,8362,8364,8366],{"class":553,"line":657},[551,8363,784],{"class":587},[551,8365,739],{"class":738},[551,8367,742],{"class":587},[692,8369,7642],{"id":7642},[940,8371],{"component":8372},"AdminImageUpload",[692,8374,8183],{"id":8183},[940,8376],{"component":8377},"AdminImageUploadTrigger",[692,8379,8232],{"id":8232},[940,8381],{"component":8382},"AdminImageUploadLoading",[692,8384,8249],{"id":8249},[940,8386],{"component":8095},[692,8388,8192],{"id":8192},[940,8390],{"component":8143},[692,8392,8212],{"id":8212},[940,8394],{"component":8109},[536,8396,1556],{"id":1556},[1558,8398,8399,8413,8428],{},[1561,8400,8401,8407,8408,7623,8410,8412],{},[1135,8402,8403,8404],{},"v-model 只認 ",[548,8405,8406],{},"File | null","：既有／已上傳的 URL 字串不進 v-model，改由 ",[548,8409,8109],{},[548,8411,8112],{}," 顯示（見「顯示既有圖片」）。",[1561,8414,8415,8417,8418,8420,8421,8423,8424,8427],{},[1135,8416,7927],{},"：若上傳成功後 backend 回傳的 URL 與舊圖完全相同（CDN 快取），",[548,8419,4645],{}," 不會自動重抓。父層應在傳給 ",[548,8422,8112],{}," 的 URL 後加 query string（例如 ",[548,8425,8426],{},"?v=timestamp","）強制更新。",[1561,8429,8430,2466,8433,8436],{},[1135,8431,8432],{},"元件不負責上傳",[548,8434,8435],{},"@upload"," 只通知「使用者選了新檔且通過 validate」，實際 fetch \u002F FormData \u002F endpoint 全由父層處理。",[536,8438,985],{"id":985},[987,8440],{"component":8372},[990,8442,992],{},{"title":546,"searchDepth":601,"depth":601,"links":8444},[8445,8446,8447,8451,8460,8461],{"id":507,"depth":591,"text":507},{"id":683,"depth":591,"text":683},{"id":690,"depth":591,"text":690,"children":8448},[8449,8450],{"id":8073,"depth":601,"text":8073},{"id":8115,"depth":601,"text":8115},{"id":719,"depth":591,"text":720,"children":8452},[8453,8454,8455,8456,8457,8458,8459],{"id":723,"depth":601,"text":723},{"id":7642,"depth":601,"text":7642},{"id":8183,"depth":601,"text":8183},{"id":8232,"depth":601,"text":8232},{"id":8249,"depth":601,"text":8249},{"id":8192,"depth":601,"text":8192},{"id":8212,"depth":601,"text":8212},{"id":1556,"depth":591,"text":1556},{"id":985,"depth":591,"text":985},"單張圖片上傳。",{},{"title":81,"description":8462},"JCprSEkiBHk4phtpR8Hmkjf8I2eT2wI2CSIYHYq-yJQ",{"id":8467,"title":85,"body":8468,"component":526,"description":8797,"extension":1015,"links":8798,"meta":8800,"navigation":526,"new":18,"path":86,"seo":8801,"stem":87,"wrapperKind":19,"__hash__":8802},"docs\u002Fdocs\u002Fadmin\u002Finput.md",{"type":533,"value":8469,"toc":8779},[8470,8472,8490,8542,8544,8547,8549,8552,8555,8558,8561,8564,8566,8569,8571,8593,8608,8616,8619,8623,8644,8656,8659,8661,8663,8752,8754,8756,8758,8761,8764,8767,8770,8773,8775,8777],[536,8471,507],{"id":507},[539,8473,8475],{"className":541,"code":8474,"filename":543,"language":544,"meta":545,"style":546},"pnpm dlx shadcn-vue add @admin\u002Finput\n",[548,8476,8477],{"__ignoreMap":546},[551,8478,8479,8481,8483,8485,8487],{"class":553,"line":554},[551,8480,558],{"class":557},[551,8482,562],{"class":561},[551,8484,565],{"class":561},[551,8486,568],{"class":561},[551,8488,8489],{"class":561}," @admin\u002Finput\n",[539,8491,8493],{"className":574,"code":8492,"language":576,"meta":546,"style":546},"import {\n  AdminInput,\n  AdminInputClear,\n  AdminInputPasswordToggle,\n  AdminInputWordLimit,\n} from '@\u002Fcomponents\u002Fadmin\u002Finput'\n",[548,8494,8495,8501,8508,8515,8522,8529],{"__ignoreMap":546},[551,8496,8497,8499],{"class":553,"line":554},[551,8498,584],{"class":583},[551,8500,588],{"class":587},[551,8502,8503,8506],{"class":553,"line":591},[551,8504,8505],{"class":594},"  AdminInput",[551,8507,598],{"class":587},[551,8509,8510,8513],{"class":553,"line":601},[551,8511,8512],{"class":594},"  AdminInputClear",[551,8514,598],{"class":587},[551,8516,8517,8520],{"class":553,"line":609},[551,8518,8519],{"class":594},"  AdminInputPasswordToggle",[551,8521,598],{"class":587},[551,8523,8524,8527],{"class":553,"line":617},[551,8525,8526],{"class":594},"  AdminInputWordLimit",[551,8528,598],{"class":587},[551,8530,8531,8533,8535,8537,8540],{"class":553,"line":625},[551,8532,668],{"class":587},[551,8534,671],{"class":583},[551,8536,674],{"class":587},[551,8538,8539],{"class":561},"@\u002Fcomponents\u002Fadmin\u002Finput",[551,8541,680],{"class":587},[536,8543,683],{"id":683},[685,8545],{"name":8546},"InputDemo",[536,8548,690],{"id":690},[692,8550,8551],{"id":8551},"可清除內容",[705,8553,8554],{},"輸入框在有值時會顯示清除按鈕。",[685,8556],{"name":8557},"InputClearableDemo",[692,8559,8560],{"id":8560},"密碼欄位與顯示切換",[685,8562],{"name":8563},"InputPasswordDemo",[692,8565,2755],{"id":2755},[685,8567],{"name":8568},"InputErrorDemo",[536,8570,2762],{"id":2761},[705,8572,8573,8576,8577,8580,8581,4782,8583,8586,8587,8589,8590,8592],{},[548,8574,8575],{},"AdminInput"," 採原生 ",[548,8578,8579],{},"input"," 封裝，",[548,8582,3248],{},[548,8584,8585],{},"string | number","，不會依 ",[548,8588,2585],{}," 在 compile-time 與 ",[548,8591,2724],{}," 型別對齊。",[705,8594,8595,8596,4159,8598,8600,8601,8604,8605,8607],{},"開啟 ",[548,8597,2826],{},[548,8599,2830],{}," 時，若以更嚴的型別（例如 ",[548,8602,8603],{},"number | null","）綁定，容易出現型別錯誤。這屬原生 ",[548,8606,8579],{}," 的型別行為，而非元件缺漏。",[705,8609,8610,8611,1613,8613,8615],{},"若需要讓 ",[548,8612,2585],{},[548,8614,2724],{}," 型別對齊，可自行封裝。",[705,8617,8618],{},"範例：",[2812,8620],{"name":8621,"title":8622},"TypedAdminInputDemo","TypedAdminInput.vue",[2817,8624,8627],{"title":8625,"type":8626},"number | null 需處理清空","warning",[705,8628,8629,8630,8632,8633,8636,8637,8640,8641,8643],{},"若型別為 ",[548,8631,8603],{},"，runtime 仍須處理清空：原生 ",[548,8634,8635],{},"type=\"number\""," 清空時值會變成空字串 ",[548,8638,8639],{},"''","，需轉成 ",[548,8642,8135],{},"，型別才與實際行為一致。",[2817,8645,8646],{"title":2819,"type":2820},[705,8647,2823,8648,2827,8650,2831,8652,2834,8654,2838],{},[548,8649,2826],{},[548,8651,2830],{},[697,8653,515],{"href":516},[548,8655,2837],{},[2812,8657],{"name":8658},"InputTypeSafeDemo",[536,8660,720],{"id":719},[692,8662,723],{"id":723},[539,8664,8666],{"className":726,"code":8665,"language":728,"meta":546,"style":546},"\u003Ctemplate>\n  \u003Cadmin-input v-model=\"value\" placeholder=\"輸入文字\">\n    \u003Ctemplate #suffix>\n      \u003Cadmin-input-clear \u002F>\n    \u003C\u002Ftemplate>\n  \u003C\u002Fadmin-input>\n\u003C\u002Ftemplate>\n",[548,8667,8668,8676,8705,8719,8728,8736,8744],{"__ignoreMap":546},[551,8669,8670,8672,8674],{"class":553,"line":554},[551,8671,735],{"class":587},[551,8673,739],{"class":738},[551,8675,742],{"class":587},[551,8677,8678,8680,8682,8684,8686,8688,8690,8692,8694,8696,8698,8701,8703],{"class":553,"line":591},[551,8679,747],{"class":587},[551,8681,6612],{"class":738},[551,8683,2867],{"class":753},[551,8685,757],{"class":587},[551,8687,760],{"class":587},[551,8689,2720],{"class":561},[551,8691,760],{"class":587},[551,8693,4864],{"class":753},[551,8695,757],{"class":587},[551,8697,760],{"class":587},[551,8699,8700],{"class":561},"輸入文字",[551,8702,760],{"class":587},[551,8704,742],{"class":587},[551,8706,8707,8709,8711,8714,8717],{"class":553,"line":601},[551,8708,772],{"class":587},[551,8710,739],{"class":738},[551,8712,8713],{"class":587}," #",[551,8715,8716],{"class":753},"suffix",[551,8718,742],{"class":587},[551,8720,8721,8723,8726],{"class":553,"line":609},[551,8722,802],{"class":587},[551,8724,8725],{"class":738},"admin-input-clear",[551,8727,1449],{"class":587},[551,8729,8730,8732,8734],{"class":553,"line":617},[551,8731,913],{"class":587},[551,8733,739],{"class":738},[551,8735,742],{"class":587},[551,8737,8738,8740,8742],{"class":553,"line":625},[551,8739,923],{"class":587},[551,8741,6612],{"class":738},[551,8743,742],{"class":587},[551,8745,8746,8748,8750],{"class":553,"line":633},[551,8747,784],{"class":587},[551,8749,739],{"class":738},[551,8751,742],{"class":587},[692,8753,6612],{"id":6612},[940,8755],{"component":8575},[692,8757,8725],{"id":8725},[940,8759],{"component":8760},"AdminInputClear",[692,8762,8763],{"id":8763},"admin-input-password-toggle",[940,8765],{"component":8766},"AdminInputPasswordToggle",[692,8768,8769],{"id":8769},"admin-input-word-limit",[940,8771],{"component":8772},"AdminInputWordLimit",[536,8774,985],{"id":985},[987,8776],{"component":8575},[990,8778,992],{},{"title":546,"searchDepth":601,"depth":601,"links":8780},[8781,8782,8783,8788,8789,8796],{"id":507,"depth":591,"text":507},{"id":683,"depth":591,"text":683},{"id":690,"depth":591,"text":690,"children":8784},[8785,8786,8787],{"id":8551,"depth":601,"text":8551},{"id":8560,"depth":601,"text":8560},{"id":2755,"depth":601,"text":2755},{"id":2761,"depth":591,"text":2762},{"id":719,"depth":591,"text":720,"children":8790},[8791,8792,8793,8794,8795],{"id":723,"depth":601,"text":723},{"id":6612,"depth":601,"text":6612},{"id":8725,"depth":601,"text":8725},{"id":8763,"depth":601,"text":8763},{"id":8769,"depth":601,"text":8769},{"id":985,"depth":591,"text":985},"文字輸入欄位。可搭配清除、密碼切換、字數限制等子組件。",{"doc":8799},"https:\u002F\u002Fwww.shadcn-vue.com\u002Fdocs\u002Fcomponents\u002Finput",{},{"title":85,"description":8797},"wZISPJDYzk-vnGcqg3rrjOoUsWmr8qKY9PdhsOYssLE",{"id":8804,"title":89,"body":8805,"component":526,"description":9294,"extension":1015,"links":19,"meta":9295,"navigation":526,"new":18,"path":90,"seo":9296,"stem":91,"wrapperKind":19,"__hash__":9297},"docs\u002Fdocs\u002Fadmin\u002Floading.md",{"type":533,"value":8806,"toc":9279},[8807,8809,8827,8865,8867,8870,8872,8876,8879,8883,8890,8893,8896,8909,8913,8930,9232,9235,9237,9239,9268,9270,9273,9275,9277],[536,8808,507],{"id":507},[539,8810,8812],{"className":541,"code":8811,"filename":543,"language":544,"meta":545,"style":546},"pnpm dlx shadcn-vue add @admin\u002Floading\n",[548,8813,8814],{"__ignoreMap":546},[551,8815,8816,8818,8820,8822,8824],{"class":553,"line":554},[551,8817,558],{"class":557},[551,8819,562],{"class":561},[551,8821,565],{"class":561},[551,8823,568],{"class":561},[551,8825,8826],{"class":561}," @admin\u002Floading\n",[539,8828,8830],{"className":574,"code":8829,"language":576,"meta":546,"style":546},"import {\n  AdminLoading,\n  vAdminLoading,\n} from '@\u002Fcomponents\u002Fadmin\u002Floading'\n",[548,8831,8832,8838,8845,8852],{"__ignoreMap":546},[551,8833,8834,8836],{"class":553,"line":554},[551,8835,584],{"class":583},[551,8837,588],{"class":587},[551,8839,8840,8843],{"class":553,"line":591},[551,8841,8842],{"class":594},"  AdminLoading",[551,8844,598],{"class":587},[551,8846,8847,8850],{"class":553,"line":601},[551,8848,8849],{"class":594},"  vAdminLoading",[551,8851,598],{"class":587},[551,8853,8854,8856,8858,8860,8863],{"class":553,"line":609},[551,8855,668],{"class":587},[551,8857,671],{"class":583},[551,8859,674],{"class":587},[551,8861,8862],{"class":561},"@\u002Fcomponents\u002Fadmin\u002Floading",[551,8864,680],{"class":587},[536,8866,683],{"id":683},[685,8868],{"name":8869},"LoadingDemo",[536,8871,690],{"id":690},[692,8873,8875],{"id":8874},"inline-區塊-loading","Inline 區塊 loading",[685,8877],{"name":8878},"LoadingInlineDemo",[692,8880,8882],{"id":8881},"命令式全螢幕-loading","命令式全螢幕 loading",[705,8884,8885,8886,8889],{},"多個非同步請求共用一個全螢幕 loading：自行以 ",[548,8887,8888],{},"admin-loading"," 組裝；全域共享與計數由呼叫端決定。",[705,8891,8892],{},"下面這版用一個 ref-count counter：計數從 0 變 1 才顯示、從 1 變回 0 才隱藏，中間重疊的請求不會重複蓋上去。",[685,8894],{"name":8895},"LoadingCounterDemo",[2806,8897,8898],{},[705,8899,8900,8901,8904,8905,8908],{},"想讓多個元件共用同一份 loading 狀態，把 counter 包進 ",[548,8902,8903],{},"createSharedComposable","（",[548,8906,8907],{},"@vueuse\u002Fcore","）就行。要不要這樣做，看你。",[4600,8910,8912],{"id":8911},"搭配-useoverlay","搭配 useOverlay",[705,8914,8915,8916,8919,8920,8922,8923,8926,8927,8929],{},"如果你已經用 ",[548,8917,8918],{},"useOverlay"," 在統一管理 overlay，也可以讓它來掛 loading。只是它的 provider 會綁 ",[548,8921,5179],{}," 和 ",[548,8924,8925],{},"after-leave","，而 ",[548,8928,8888],{}," 只是純展示元件、沒有這些 emit，所以得先包一層 wrapper 幫它補上：",[539,8931,8934],{"className":726,"code":8932,"filename":8933,"language":728,"meta":546,"style":546},"\u003Cscript setup lang=\"ts\">\nimport { AdminLoading } from '@\u002Fcomponents\u002Fadmin\u002Floading'\n\ndefineOptions({\n  name: 'loading-overlay-wrapper'\n})\n\ndefineProps\u003C{\n  open?: boolean\n}>()\n\nconst emit = defineEmits\u003C{\n  'update:open': [value: boolean]\n  close: []\n  afterLeave: []\n}>()\n\u003C\u002Fscript>\n\n\u003Ctemplate>\n  \u003Ctransition\n    enter-active-class=\"animate-in fade-in-0\"\n    leave-active-class=\"animate-out fade-out-0\"\n    appear\n    @after-leave=\"emit('afterLeave')\"\n  >\n    \u003Cadmin-loading v-if=\"open\" mode=\"fullscreen\" \u002F>\n  \u003C\u002Ftransition>\n\u003C\u002Ftemplate>\n","loading-overlay-wrapper.vue",[548,8935,8936,8956,8975,8979,8988,9002,9008,9012,9020,9031,9038,9042,9056,9081,9091,9100,9106,9114,9118,9126,9133,9147,9161,9166,9180,9185,9215,9224],{"__ignoreMap":546},[551,8937,8938,8940,8942,8944,8946,8948,8950,8952,8954],{"class":553,"line":554},[551,8939,735],{"class":587},[551,8941,3276],{"class":738},[551,8943,3279],{"class":753},[551,8945,3282],{"class":753},[551,8947,757],{"class":587},[551,8949,760],{"class":587},[551,8951,576],{"class":561},[551,8953,760],{"class":587},[551,8955,742],{"class":587},[551,8957,8958,8960,8962,8965,8967,8969,8971,8973],{"class":553,"line":591},[551,8959,584],{"class":583},[551,8961,1273],{"class":587},[551,8963,8964],{"class":594}," AdminLoading",[551,8966,1279],{"class":587},[551,8968,671],{"class":583},[551,8970,674],{"class":587},[551,8972,8862],{"class":561},[551,8974,680],{"class":587},[551,8976,8977],{"class":553,"line":601},[551,8978,1293],{"emptyLinePlaceholder":526},[551,8980,8981,8984,8986],{"class":553,"line":609},[551,8982,8983],{"class":1154},"defineOptions",[551,8985,1158],{"class":594},[551,8987,1161],{"class":587},[551,8989,8990,8993,8995,8997,9000],{"class":553,"line":617},[551,8991,8992],{"class":738},"  name",[551,8994,1169],{"class":587},[551,8996,674],{"class":587},[551,8998,8999],{"class":561},"loading-overlay-wrapper",[551,9001,680],{"class":587},[551,9003,9004,9006],{"class":553,"line":625},[551,9005,668],{"class":587},[551,9007,1222],{"class":594},[551,9009,9010],{"class":553,"line":633},[551,9011,1293],{"emptyLinePlaceholder":526},[551,9013,9014,9017],{"class":553,"line":641},[551,9015,9016],{"class":1154},"defineProps",[551,9018,9019],{"class":587},"\u003C{\n",[551,9021,9022,9025,9028],{"class":553,"line":649},[551,9023,9024],{"class":738},"  open",[551,9026,9027],{"class":587},"?:",[551,9029,9030],{"class":557}," boolean\n",[551,9032,9033,9036],{"class":553,"line":657},[551,9034,9035],{"class":587},"}>",[551,9037,3457],{"class":594},[551,9039,9040],{"class":553,"line":665},[551,9041,1293],{"emptyLinePlaceholder":526},[551,9043,9044,9046,9049,9051,9054],{"class":553,"line":901},[551,9045,3321],{"class":753},[551,9047,9048],{"class":594}," emit ",[551,9050,757],{"class":587},[551,9052,9053],{"class":1154}," defineEmits",[551,9055,9019],{"class":587},[551,9057,9058,9061,9064,9066,9068,9071,9073,9075,9078],{"class":553,"line":910},[551,9059,9060],{"class":587},"  '",[551,9062,9063],{"class":561},"update:open",[551,9065,1214],{"class":587},[551,9067,1169],{"class":587},[551,9069,9070],{"class":594}," [",[551,9072,2720],{"class":557},[551,9074,1169],{"class":587},[551,9076,9077],{"class":557}," boolean",[551,9079,9080],{"class":594},"]\n",[551,9082,9083,9086,9088],{"class":553,"line":920},[551,9084,9085],{"class":738},"  close",[551,9087,1169],{"class":587},[551,9089,9090],{"class":594}," []\n",[551,9092,9093,9096,9098],{"class":553,"line":930},[551,9094,9095],{"class":738},"  afterLeave",[551,9097,1169],{"class":587},[551,9099,9090],{"class":594},[551,9101,9102,9104],{"class":553,"line":3536},[551,9103,9035],{"class":587},[551,9105,3457],{"class":594},[551,9107,9108,9110,9112],{"class":553,"line":4422},[551,9109,784],{"class":587},[551,9111,3276],{"class":738},[551,9113,742],{"class":587},[551,9115,9116],{"class":553,"line":6194},[551,9117,1293],{"emptyLinePlaceholder":526},[551,9119,9120,9122,9124],{"class":553,"line":6204},[551,9121,735],{"class":587},[551,9123,739],{"class":738},[551,9125,742],{"class":587},[551,9127,9128,9130],{"class":553,"line":6223},[551,9129,747],{"class":587},[551,9131,9132],{"class":738},"transition\n",[551,9134,9135,9138,9140,9142,9145],{"class":553,"line":6233},[551,9136,9137],{"class":753},"    enter-active-class",[551,9139,757],{"class":587},[551,9141,760],{"class":587},[551,9143,9144],{"class":561},"animate-in fade-in-0",[551,9146,4281],{"class":587},[551,9148,9149,9152,9154,9156,9159],{"class":553,"line":6242},[551,9150,9151],{"class":753},"    leave-active-class",[551,9153,757],{"class":587},[551,9155,760],{"class":587},[551,9157,9158],{"class":561},"animate-out fade-out-0",[551,9160,4281],{"class":587},[551,9162,9163],{"class":553,"line":6251},[551,9164,9165],{"class":753},"    appear\n",[551,9167,9168,9171,9173,9175,9178],{"class":553,"line":524},[551,9169,9170],{"class":753},"    @after-leave",[551,9172,757],{"class":587},[551,9174,760],{"class":587},[551,9176,9177],{"class":561},"emit('afterLeave')",[551,9179,4281],{"class":587},[551,9181,9182],{"class":553,"line":6864},[551,9183,9184],{"class":587},"  >\n",[551,9186,9187,9189,9191,9193,9195,9197,9199,9201,9204,9206,9208,9211,9213],{"class":553,"line":6873},[551,9188,772],{"class":587},[551,9190,8888],{"class":738},[551,9192,3635],{"class":753},[551,9194,757],{"class":587},[551,9196,760],{"class":587},[551,9198,5179],{"class":561},[551,9200,760],{"class":587},[551,9202,9203],{"class":753}," mode",[551,9205,757],{"class":587},[551,9207,760],{"class":587},[551,9209,9210],{"class":561},"fullscreen",[551,9212,760],{"class":587},[551,9214,1449],{"class":587},[551,9216,9217,9219,9222],{"class":553,"line":6894},[551,9218,923],{"class":587},[551,9220,9221],{"class":738},"transition",[551,9223,742],{"class":587},[551,9225,9226,9228,9230],{"class":553,"line":6903},[551,9227,784],{"class":587},[551,9229,739],{"class":738},[551,9231,742],{"class":587},[685,9233],{"name":9234},"LoadingOverlayDemo",[536,9236,720],{"id":719},[692,9238,723],{"id":723},[539,9240,9242],{"className":726,"code":9241,"language":728,"meta":546,"style":546},"\u003Ctemplate>\n  \u003Cadmin-loading \u002F>\n\u003C\u002Ftemplate>\n",[548,9243,9244,9252,9260],{"__ignoreMap":546},[551,9245,9246,9248,9250],{"class":553,"line":554},[551,9247,735],{"class":587},[551,9249,739],{"class":738},[551,9251,742],{"class":587},[551,9253,9254,9256,9258],{"class":553,"line":591},[551,9255,747],{"class":587},[551,9257,8888],{"class":738},[551,9259,1449],{"class":587},[551,9261,9262,9264,9266],{"class":553,"line":601},[551,9263,784],{"class":587},[551,9265,739],{"class":738},[551,9267,742],{"class":587},[692,9269,8888],{"id":8888},[940,9271],{"component":9272},"AdminLoading",[536,9274,985],{"id":985},[987,9276],{"component":9272},[990,9278,3744],{},{"title":546,"searchDepth":601,"depth":601,"links":9280},[9281,9282,9283,9289,9293],{"id":507,"depth":591,"text":507},{"id":683,"depth":591,"text":683},{"id":690,"depth":591,"text":690,"children":9284},[9285,9286],{"id":8874,"depth":601,"text":8875},{"id":8881,"depth":601,"text":8882,"children":9287},[9288],{"id":8911,"depth":609,"text":8912},{"id":719,"depth":591,"text":720,"children":9290},[9291,9292],{"id":723,"depth":601,"text":723},{"id":8888,"depth":601,"text":8888},{"id":985,"depth":591,"text":985},"讀取中指示。全螢幕或區塊 inline。",{},{"title":89,"description":9294},"5huuS8MOgB0-Z-aagYgi6ygala5qoLQMiB2l_ZT4M7Y",{"id":9299,"title":93,"body":9300,"component":526,"description":9473,"extension":1015,"links":9474,"meta":9476,"navigation":526,"new":18,"path":94,"seo":9477,"stem":95,"wrapperKind":19,"__hash__":9478},"docs\u002Fdocs\u002Fadmin\u002Fnotification.md",{"type":533,"value":9301,"toc":9460},[9302,9304,9322,9381,9383,9386,9388,9391,9394,9397,9403,9406,9408,9410,9440,9449,9451,9454,9456,9458],[536,9303,507],{"id":507},[539,9305,9307],{"className":541,"code":9306,"filename":543,"language":544,"meta":545,"style":546},"pnpm dlx shadcn-vue add @admin\u002Fnotification\n",[548,9308,9309],{"__ignoreMap":546},[551,9310,9311,9313,9315,9317,9319],{"class":553,"line":554},[551,9312,558],{"class":557},[551,9314,562],{"class":561},[551,9316,565],{"class":561},[551,9318,568],{"class":561},[551,9320,9321],{"class":561}," @admin\u002Fnotification\n",[539,9323,9325],{"className":574,"code":9324,"language":576,"meta":546,"style":546},"import {\n  AdminNotification,\n  errorNotification,\n  infoNotification,\n  successNotification,\n  warningNotification,\n} from '@\u002Fcomponents\u002Fadmin\u002Fnotification'\n",[548,9326,9327,9333,9340,9347,9354,9361,9368],{"__ignoreMap":546},[551,9328,9329,9331],{"class":553,"line":554},[551,9330,584],{"class":583},[551,9332,588],{"class":587},[551,9334,9335,9338],{"class":553,"line":591},[551,9336,9337],{"class":594},"  AdminNotification",[551,9339,598],{"class":587},[551,9341,9342,9345],{"class":553,"line":601},[551,9343,9344],{"class":594},"  errorNotification",[551,9346,598],{"class":587},[551,9348,9349,9352],{"class":553,"line":609},[551,9350,9351],{"class":594},"  infoNotification",[551,9353,598],{"class":587},[551,9355,9356,9359],{"class":553,"line":617},[551,9357,9358],{"class":594},"  successNotification",[551,9360,598],{"class":587},[551,9362,9363,9366],{"class":553,"line":625},[551,9364,9365],{"class":594},"  warningNotification",[551,9367,598],{"class":587},[551,9369,9370,9372,9374,9376,9379],{"class":553,"line":633},[551,9371,668],{"class":587},[551,9373,671],{"class":583},[551,9375,674],{"class":587},[551,9377,9378],{"class":561},"@\u002Fcomponents\u002Fadmin\u002Fnotification",[551,9380,680],{"class":587},[536,9382,683],{"id":683},[685,9384],{"name":9385},"NotificationDemo",[536,9387,690],{"id":690},[692,9389,9390],{"id":9390},"狀態變體",[685,9392],{"name":9393},"NotificationVariantsDemo",[692,9395,9396],{"id":9396},"含操作按鈕",[705,9398,2141,9399,9402],{},[548,9400,9401],{},"action"," 設定按鈕標籤與 callback，適合「復原」這類可逆操作。",[685,9404],{"name":9405},"NotificationActionDemo",[536,9407,720],{"id":719},[692,9409,723],{"id":723},[539,9411,9413],{"className":726,"code":9412,"language":728,"meta":546,"style":546},"\u003Ctemplate>\n  \u003Cadmin-notification \u002F>\n\u003C\u002Ftemplate>\n",[548,9414,9415,9423,9432],{"__ignoreMap":546},[551,9416,9417,9419,9421],{"class":553,"line":554},[551,9418,735],{"class":587},[551,9420,739],{"class":738},[551,9422,742],{"class":587},[551,9424,9425,9427,9430],{"class":553,"line":591},[551,9426,747],{"class":587},[551,9428,9429],{"class":738},"admin-notification",[551,9431,1449],{"class":587},[551,9433,9434,9436,9438],{"class":553,"line":601},[551,9435,784],{"class":587},[551,9437,739],{"class":738},[551,9439,742],{"class":587},[705,9441,9442,9444,9445,9448],{},[548,9443,9429],{}," 須在 app root（通常是 ",[548,9446,9447],{},"app.vue","）掛載一次；後續以函式呼叫的方式觸發通知。",[692,9450,9429],{"id":9429},[940,9452],{"component":9453},"AdminNotification",[536,9455,985],{"id":985},[987,9457],{"component":9453},[990,9459,2019],{},{"title":546,"searchDepth":601,"depth":601,"links":9461},[9462,9463,9464,9468,9472],{"id":507,"depth":591,"text":507},{"id":683,"depth":591,"text":683},{"id":690,"depth":591,"text":690,"children":9465},[9466,9467],{"id":9390,"depth":601,"text":9390},{"id":9396,"depth":601,"text":9396},{"id":719,"depth":591,"text":720,"children":9469},[9470,9471],{"id":723,"depth":601,"text":723},{"id":9429,"depth":601,"text":9429},{"id":985,"depth":591,"text":985},"浮動通知（vue-sonner）。狀態變體與動作按鈕。",{"doc":9475},"https:\u002F\u002Fwww.shadcn-vue.com\u002Fdocs\u002Fcomponents\u002Fsonner",{},{"title":93,"description":9473},"xOeYldSFVWfAaqlGmMNWhc_2-7XkYIArLFVL8xgzIw0",{"id":9480,"title":97,"body":9481,"component":526,"description":9731,"extension":1015,"links":9732,"meta":9735,"navigation":526,"new":18,"path":98,"seo":9736,"stem":99,"wrapperKind":19,"__hash__":9737},"docs\u002Fdocs\u002Fadmin\u002Fnumber-field.md",{"type":533,"value":9482,"toc":9713},[9483,9485,9503,9562,9564,9567,9569,9573,9576,9578,9581,9583,9586,9588,9590,9682,9684,9687,9689,9692,9694,9697,9699,9702,9704,9707,9709,9711],[536,9484,507],{"id":507},[539,9486,9488],{"className":541,"code":9487,"filename":543,"language":544,"meta":545,"style":546},"pnpm dlx shadcn-vue add @admin\u002Fnumber-field\n",[548,9489,9490],{"__ignoreMap":546},[551,9491,9492,9494,9496,9498,9500],{"class":553,"line":554},[551,9493,558],{"class":557},[551,9495,562],{"class":561},[551,9497,565],{"class":561},[551,9499,568],{"class":561},[551,9501,9502],{"class":561}," @admin\u002Fnumber-field\n",[539,9504,9506],{"className":574,"code":9505,"language":576,"meta":546,"style":546},"import {\n  AdminNumberField,\n  AdminNumberFieldContent,\n  AdminNumberFieldDecrement,\n  AdminNumberFieldIncrement,\n  AdminNumberFieldInput,\n} from '@\u002Fcomponents\u002Fadmin\u002Fnumber-field'\n",[548,9507,9508,9514,9521,9528,9535,9542,9549],{"__ignoreMap":546},[551,9509,9510,9512],{"class":553,"line":554},[551,9511,584],{"class":583},[551,9513,588],{"class":587},[551,9515,9516,9519],{"class":553,"line":591},[551,9517,9518],{"class":594},"  AdminNumberField",[551,9520,598],{"class":587},[551,9522,9523,9526],{"class":553,"line":601},[551,9524,9525],{"class":594},"  AdminNumberFieldContent",[551,9527,598],{"class":587},[551,9529,9530,9533],{"class":553,"line":609},[551,9531,9532],{"class":594},"  AdminNumberFieldDecrement",[551,9534,598],{"class":587},[551,9536,9537,9540],{"class":553,"line":617},[551,9538,9539],{"class":594},"  AdminNumberFieldIncrement",[551,9541,598],{"class":587},[551,9543,9544,9547],{"class":553,"line":625},[551,9545,9546],{"class":594},"  AdminNumberFieldInput",[551,9548,598],{"class":587},[551,9550,9551,9553,9555,9557,9560],{"class":553,"line":633},[551,9552,668],{"class":587},[551,9554,671],{"class":583},[551,9556,674],{"class":587},[551,9558,9559],{"class":561},"@\u002Fcomponents\u002Fadmin\u002Fnumber-field",[551,9561,680],{"class":587},[536,9563,683],{"id":683},[685,9565],{"name":9566},"NumberFieldDemo",[536,9568,690],{"id":690},[692,9570,9572],{"id":9571},"自訂-step","自訂 step",[685,9574],{"name":9575},"NumberFieldStepDemo",[692,9577,3202],{"id":3202},[685,9579],{"name":9580},"NumberFieldDisabledDemo",[692,9582,2755],{"id":2755},[685,9584],{"name":9585},"NumberFieldErrorDemo",[536,9587,720],{"id":719},[692,9589,723],{"id":723},[539,9591,9593],{"className":726,"code":9592,"language":728,"meta":546,"style":546},"\u003Ctemplate>\n  \u003Cadmin-number-field v-model=\"value\">\n    \u003Cadmin-number-field-content>\n      \u003Cadmin-number-field-decrement \u002F>\n      \u003Cadmin-number-field-input \u002F>\n      \u003Cadmin-number-field-increment \u002F>\n    \u003C\u002Fadmin-number-field-content>\n  \u003C\u002Fadmin-number-field>\n\u003C\u002Ftemplate>\n",[548,9594,9595,9603,9622,9631,9640,9649,9658,9666,9674],{"__ignoreMap":546},[551,9596,9597,9599,9601],{"class":553,"line":554},[551,9598,735],{"class":587},[551,9600,739],{"class":738},[551,9602,742],{"class":587},[551,9604,9605,9607,9610,9612,9614,9616,9618,9620],{"class":553,"line":591},[551,9606,747],{"class":587},[551,9608,9609],{"class":738},"admin-number-field",[551,9611,2867],{"class":753},[551,9613,757],{"class":587},[551,9615,760],{"class":587},[551,9617,2720],{"class":561},[551,9619,760],{"class":587},[551,9621,742],{"class":587},[551,9623,9624,9626,9629],{"class":553,"line":601},[551,9625,772],{"class":587},[551,9627,9628],{"class":738},"admin-number-field-content",[551,9630,742],{"class":587},[551,9632,9633,9635,9638],{"class":553,"line":609},[551,9634,802],{"class":587},[551,9636,9637],{"class":738},"admin-number-field-decrement",[551,9639,1449],{"class":587},[551,9641,9642,9644,9647],{"class":553,"line":617},[551,9643,802],{"class":587},[551,9645,9646],{"class":738},"admin-number-field-input",[551,9648,1449],{"class":587},[551,9650,9651,9653,9656],{"class":553,"line":625},[551,9652,802],{"class":587},[551,9654,9655],{"class":738},"admin-number-field-increment",[551,9657,1449],{"class":587},[551,9659,9660,9662,9664],{"class":553,"line":633},[551,9661,913],{"class":587},[551,9663,9628],{"class":738},[551,9665,742],{"class":587},[551,9667,9668,9670,9672],{"class":553,"line":641},[551,9669,923],{"class":587},[551,9671,9609],{"class":738},[551,9673,742],{"class":587},[551,9675,9676,9678,9680],{"class":553,"line":649},[551,9677,784],{"class":587},[551,9679,739],{"class":738},[551,9681,742],{"class":587},[692,9683,9609],{"id":9609},[940,9685],{"component":9686},"AdminNumberField",[692,9688,9628],{"id":9628},[940,9690],{"component":9691},"AdminNumberFieldContent",[692,9693,9646],{"id":9646},[940,9695],{"component":9696},"AdminNumberFieldInput",[692,9698,9655],{"id":9655},[940,9700],{"component":9701},"AdminNumberFieldIncrement",[692,9703,9637],{"id":9637},[940,9705],{"component":9706},"AdminNumberFieldDecrement",[536,9708,985],{"id":985},[987,9710],{"component":9686},[990,9712,992],{},{"title":546,"searchDepth":601,"depth":601,"links":9714},[9715,9716,9717,9722,9730],{"id":507,"depth":591,"text":507},{"id":683,"depth":591,"text":683},{"id":690,"depth":591,"text":690,"children":9718},[9719,9720,9721],{"id":9571,"depth":601,"text":9572},{"id":3202,"depth":601,"text":3202},{"id":2755,"depth":601,"text":2755},{"id":719,"depth":591,"text":720,"children":9723},[9724,9725,9726,9727,9728,9729],{"id":723,"depth":601,"text":723},{"id":9609,"depth":601,"text":9609},{"id":9628,"depth":601,"text":9628},{"id":9646,"depth":601,"text":9646},{"id":9655,"depth":601,"text":9655},{"id":9637,"depth":601,"text":9637},{"id":985,"depth":591,"text":985},"數字輸入。含增減控制。",{"doc":9733,"api":9734},"https:\u002F\u002Freka-ui.com\u002Fdocs\u002Fcomponents\u002Fnumber-field","https:\u002F\u002Freka-ui.com\u002Fdocs\u002Fcomponents\u002Fnumber-field#api-reference",{},{"title":97,"description":9731},"UXm-hJJ_yX-ObIOptmDOA2TAMUWOmbODuUyjbc03Rmw",{"id":9739,"title":101,"body":9740,"component":526,"description":10256,"extension":1015,"links":10257,"meta":10258,"navigation":526,"new":18,"path":102,"seo":10259,"stem":103,"wrapperKind":19,"__hash__":10260},"docs\u002Fdocs\u002Fadmin\u002Foverlay.md",{"type":533,"value":9741,"toc":10242},[9742,9744,9762,9792,9805,9910,9912,10157,10159,10162,10165,10168,10171,10174,10177,10181,10188,10191,10193,10195,10224,10229,10231,10234,10236,10239],[536,9743,507],{"id":507},[539,9745,9747],{"className":541,"code":9746,"filename":543,"language":544,"meta":545,"style":546},"pnpm dlx shadcn-vue add @admin\u002Foverlay\n",[548,9748,9749],{"__ignoreMap":546},[551,9750,9751,9753,9755,9757,9759],{"class":553,"line":554},[551,9752,558],{"class":557},[551,9754,562],{"class":561},[551,9756,565],{"class":561},[551,9758,568],{"class":561},[551,9760,9761],{"class":561}," @admin\u002Foverlay\n",[539,9763,9765],{"className":574,"code":9764,"language":576,"meta":546,"style":546},"import { AdminOverlayProvider, useOverlay } from '@\u002Fcomponents\u002Fadmin\u002Foverlay'\n",[548,9766,9767],{"__ignoreMap":546},[551,9768,9769,9771,9773,9776,9778,9781,9783,9785,9787,9790],{"class":553,"line":554},[551,9770,584],{"class":583},[551,9772,1273],{"class":587},[551,9774,9775],{"class":594}," AdminOverlayProvider",[551,9777,3348],{"class":587},[551,9779,9780],{"class":594}," useOverlay",[551,9782,1279],{"class":587},[551,9784,671],{"class":583},[551,9786,674],{"class":587},[551,9788,9789],{"class":561},"@\u002Fcomponents\u002Fadmin\u002Foverlay",[551,9791,680],{"class":587},[705,9793,9794,9795,9797,9798,9801,9802,9804],{},"於 app root（通常是 ",[548,9796,9447],{},"）掛載 ",[548,9799,9800],{},"admin-overlay-provider"," 一次；後續以共用 ",[548,9803,712],{}," 建立的 overlay 會自動註冊到此 provider：",[539,9806,9808],{"className":726,"code":9807,"filename":9447,"language":728,"meta":546,"style":546},"\u003Cscript setup lang=\"ts\">\nimport { AdminOverlayProvider } from '@\u002Fcomponents\u002Fadmin\u002Foverlay'\n\u003C\u002Fscript>\n\n\u003Ctemplate>\n  \u003Cnuxt-layout>\n    \u003Cnuxt-page \u002F>\n  \u003C\u002Fnuxt-layout>\n  \u003Cadmin-overlay-provider \u002F>\n\u003C\u002Ftemplate>\n",[548,9809,9810,9830,9848,9856,9860,9868,9877,9886,9894,9902],{"__ignoreMap":546},[551,9811,9812,9814,9816,9818,9820,9822,9824,9826,9828],{"class":553,"line":554},[551,9813,735],{"class":587},[551,9815,3276],{"class":738},[551,9817,3279],{"class":753},[551,9819,3282],{"class":753},[551,9821,757],{"class":587},[551,9823,760],{"class":587},[551,9825,576],{"class":561},[551,9827,760],{"class":587},[551,9829,742],{"class":587},[551,9831,9832,9834,9836,9838,9840,9842,9844,9846],{"class":553,"line":591},[551,9833,584],{"class":583},[551,9835,1273],{"class":587},[551,9837,9775],{"class":594},[551,9839,1279],{"class":587},[551,9841,671],{"class":583},[551,9843,674],{"class":587},[551,9845,9789],{"class":561},[551,9847,680],{"class":587},[551,9849,9850,9852,9854],{"class":553,"line":601},[551,9851,784],{"class":587},[551,9853,3276],{"class":738},[551,9855,742],{"class":587},[551,9857,9858],{"class":553,"line":609},[551,9859,1293],{"emptyLinePlaceholder":526},[551,9861,9862,9864,9866],{"class":553,"line":617},[551,9863,735],{"class":587},[551,9865,739],{"class":738},[551,9867,742],{"class":587},[551,9869,9870,9872,9875],{"class":553,"line":625},[551,9871,747],{"class":587},[551,9873,9874],{"class":738},"nuxt-layout",[551,9876,742],{"class":587},[551,9878,9879,9881,9884],{"class":553,"line":633},[551,9880,772],{"class":587},[551,9882,9883],{"class":738},"nuxt-page",[551,9885,1449],{"class":587},[551,9887,9888,9890,9892],{"class":553,"line":641},[551,9889,923],{"class":587},[551,9891,9874],{"class":738},[551,9893,742],{"class":587},[551,9895,9896,9898,9900],{"class":553,"line":649},[551,9897,747],{"class":587},[551,9899,9800],{"class":738},[551,9901,1449],{"class":587},[551,9903,9904,9906,9908],{"class":553,"line":657},[551,9905,784],{"class":587},[551,9907,739],{"class":738},[551,9909,742],{"class":587},[536,9911,683],{"id":683},[539,9913,9915],{"className":726,"code":9914,"language":728,"meta":546,"style":546},"\u003Cscript setup lang=\"ts\">\nimport { useOverlay } from '@\u002Fcomponents\u002Fadmin\u002Foverlay'\nimport PublishReleaseDialog from '~\u002Fcomponents\u002Fpublish-release-dialog.vue'\n\nconst overlay = useOverlay()\nconst confirmDialog = overlay.create(PublishReleaseDialog, {\n  props: {\n    title: 'Publish this release?',\n    message: 'Confirm before shipping changes to production.',\n  },\n})\n\nasync function handlePublish() {\n  const result = await confirmDialog.open()\n\n  if (result === 'confirmed') {\n    \u002F\u002F continue the workflow\n  }\n}\n\u003C\u002Fscript>\n",[548,9916,9917,9937,9955,9971,9975,9988,10012,10021,10037,10053,10058,10064,10068,10084,10107,10111,10135,10140,10144,10149],{"__ignoreMap":546},[551,9918,9919,9921,9923,9925,9927,9929,9931,9933,9935],{"class":553,"line":554},[551,9920,735],{"class":587},[551,9922,3276],{"class":738},[551,9924,3279],{"class":753},[551,9926,3282],{"class":753},[551,9928,757],{"class":587},[551,9930,760],{"class":587},[551,9932,576],{"class":561},[551,9934,760],{"class":587},[551,9936,742],{"class":587},[551,9938,9939,9941,9943,9945,9947,9949,9951,9953],{"class":553,"line":591},[551,9940,584],{"class":583},[551,9942,1273],{"class":587},[551,9944,9780],{"class":594},[551,9946,1279],{"class":587},[551,9948,671],{"class":583},[551,9950,674],{"class":587},[551,9952,9789],{"class":561},[551,9954,680],{"class":587},[551,9956,9957,9959,9962,9964,9966,9969],{"class":553,"line":601},[551,9958,584],{"class":583},[551,9960,9961],{"class":594}," PublishReleaseDialog ",[551,9963,1259],{"class":583},[551,9965,674],{"class":587},[551,9967,9968],{"class":561},"~\u002Fcomponents\u002Fpublish-release-dialog.vue",[551,9970,680],{"class":587},[551,9972,9973],{"class":553,"line":609},[551,9974,1293],{"emptyLinePlaceholder":526},[551,9976,9977,9979,9982,9984,9986],{"class":553,"line":617},[551,9978,3321],{"class":753},[551,9980,9981],{"class":594}," overlay ",[551,9983,757],{"class":587},[551,9985,9780],{"class":1154},[551,9987,3457],{"class":594},[551,9989,9990,9992,9995,9997,10000,10002,10005,10008,10010],{"class":553,"line":625},[551,9991,3321],{"class":753},[551,9993,9994],{"class":594}," confirmDialog ",[551,9996,757],{"class":587},[551,9998,9999],{"class":594}," overlay",[551,10001,1206],{"class":587},[551,10003,10004],{"class":1154},"create",[551,10006,10007],{"class":594},"(PublishReleaseDialog",[551,10009,3348],{"class":587},[551,10011,588],{"class":587},[551,10013,10014,10017,10019],{"class":553,"line":633},[551,10015,10016],{"class":738},"  props",[551,10018,1169],{"class":587},[551,10020,588],{"class":587},[551,10022,10023,10026,10028,10030,10033,10035],{"class":553,"line":641},[551,10024,10025],{"class":738},"    title",[551,10027,1169],{"class":587},[551,10029,674],{"class":587},[551,10031,10032],{"class":561},"Publish this release?",[551,10034,1214],{"class":587},[551,10036,598],{"class":587},[551,10038,10039,10042,10044,10046,10049,10051],{"class":553,"line":649},[551,10040,10041],{"class":738},"    message",[551,10043,1169],{"class":587},[551,10045,674],{"class":587},[551,10047,10048],{"class":561},"Confirm before shipping changes to production.",[551,10050,1214],{"class":587},[551,10052,598],{"class":587},[551,10054,10055],{"class":553,"line":657},[551,10056,10057],{"class":587},"  },\n",[551,10059,10060,10062],{"class":553,"line":665},[551,10061,668],{"class":587},[551,10063,1222],{"class":594},[551,10065,10066],{"class":553,"line":901},[551,10067,1293],{"emptyLinePlaceholder":526},[551,10069,10070,10073,10076,10079,10082],{"class":553,"line":910},[551,10071,10072],{"class":753},"async",[551,10074,10075],{"class":753}," function",[551,10077,10078],{"class":1154}," handlePublish",[551,10080,10081],{"class":587},"()",[551,10083,588],{"class":587},[551,10085,10086,10089,10092,10095,10098,10101,10103,10105],{"class":553,"line":920},[551,10087,10088],{"class":753},"  const",[551,10090,10091],{"class":594}," result",[551,10093,10094],{"class":587}," =",[551,10096,10097],{"class":583}," await",[551,10099,10100],{"class":594}," confirmDialog",[551,10102,1206],{"class":587},[551,10104,5179],{"class":1154},[551,10106,3457],{"class":738},[551,10108,10109],{"class":553,"line":930},[551,10110,1293],{"emptyLinePlaceholder":526},[551,10112,10113,10116,10118,10120,10123,10125,10128,10130,10133],{"class":553,"line":3536},[551,10114,10115],{"class":583},"  if",[551,10117,1190],{"class":738},[551,10119,4211],{"class":594},[551,10121,10122],{"class":587}," ===",[551,10124,674],{"class":587},[551,10126,10127],{"class":561},"confirmed",[551,10129,1214],{"class":587},[551,10131,10132],{"class":738},") ",[551,10134,1161],{"class":587},[551,10136,10137],{"class":553,"line":4422},[551,10138,10139],{"class":4831},"    \u002F\u002F continue the workflow\n",[551,10141,10142],{"class":553,"line":6194},[551,10143,1232],{"class":587},[551,10145,10146],{"class":553,"line":6204},[551,10147,10148],{"class":587},"}\n",[551,10150,10151,10153,10155],{"class":553,"line":6223},[551,10152,784],{"class":587},[551,10154,3276],{"class":738},[551,10156,742],{"class":587},[536,10158,690],{"id":690},[692,10160,10161],{"id":10161},"基本開啟流程",[705,10163,10164],{},"觸發 overlay 並在當下根據回傳值處理。",[685,10166],{"name":10167},"OverlayDemo",[692,10169,10170],{"id":10170},"等待結果回傳",[705,10172,10173],{},"呼叫端需要等使用者 confirm／cancel 後再繼續。",[685,10175],{"name":10176},"OverlayPromiseDemo",[692,10178,10180],{"id":10179},"重用同一個-overlay-並覆寫-props","重用同一個 overlay 並覆寫 props",[705,10182,10183,10184,10187],{},"多個按鈕共用同一個 overlay component、每次 ",[548,10185,10186],{},"open()"," 直接傳入要覆寫的 props 即可替換文案。",[685,10189],{"name":10190},"OverlayPatchDemo",[536,10192,720],{"id":719},[692,10194,723],{"id":723},[539,10196,10198],{"className":726,"code":10197,"language":728,"meta":546,"style":546},"\u003Ctemplate>\n  \u003Cadmin-overlay-provider \u002F>\n\u003C\u002Ftemplate>\n",[548,10199,10200,10208,10216],{"__ignoreMap":546},[551,10201,10202,10204,10206],{"class":553,"line":554},[551,10203,735],{"class":587},[551,10205,739],{"class":738},[551,10207,742],{"class":587},[551,10209,10210,10212,10214],{"class":553,"line":591},[551,10211,747],{"class":587},[551,10213,9800],{"class":738},[551,10215,1449],{"class":587},[551,10217,10218,10220,10222],{"class":553,"line":601},[551,10219,784],{"class":587},[551,10221,739],{"class":738},[551,10223,742],{"class":587},[705,10225,10226,10228],{},[548,10227,9800],{}," 須在 app root 掛載一次；",[692,10230,9800],{"id":9800},[940,10232],{"component":10233},"AdminOverlayProvider",[536,10235,985],{"id":985},[987,10237],{"component":10238},"AdminOverlay",[990,10240,10241],{},"html pre.shiki code .sBMFI, html code.shiki .sBMFI{--shiki-light:#E2931D;--shiki-default:#FFCB6B;--shiki-dark:#FFCB6B}html pre.shiki code .sfazB, html code.shiki .sfazB{--shiki-light:#91B859;--shiki-default:#C3E88D;--shiki-dark:#C3E88D}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 pre.shiki code .s7zQu, html code.shiki .s7zQu{--shiki-light:#39ADB5;--shiki-light-font-style:italic;--shiki-default:#89DDFF;--shiki-default-font-style:italic;--shiki-dark:#89DDFF;--shiki-dark-font-style:italic}html pre.shiki code .sMK4o, html code.shiki .sMK4o{--shiki-light:#39ADB5;--shiki-default:#89DDFF;--shiki-dark:#89DDFF}html pre.shiki code .sTEyZ, html code.shiki .sTEyZ{--shiki-light:#90A4AE;--shiki-default:#EEFFFF;--shiki-dark:#BABED8}html pre.shiki code .swJcz, html code.shiki .swJcz{--shiki-light:#E53935;--shiki-default:#F07178;--shiki-dark:#F07178}html pre.shiki code .spNyl, html code.shiki .spNyl{--shiki-light:#9C3EDA;--shiki-default:#C792EA;--shiki-dark:#C792EA}html pre.shiki code .s2Zo4, html code.shiki .s2Zo4{--shiki-light:#6182B8;--shiki-default:#82AAFF;--shiki-dark:#82AAFF}html pre.shiki code .sHwdD, html code.shiki .sHwdD{--shiki-light:#90A4AE;--shiki-light-font-style:italic;--shiki-default:#546E7A;--shiki-default-font-style:italic;--shiki-dark:#676E95;--shiki-dark-font-style:italic}",{"title":546,"searchDepth":601,"depth":601,"links":10243},[10244,10245,10246,10251,10255],{"id":507,"depth":591,"text":507},{"id":683,"depth":591,"text":683},{"id":690,"depth":591,"text":690,"children":10247},[10248,10249,10250],{"id":10161,"depth":601,"text":10161},{"id":10170,"depth":601,"text":10170},{"id":10179,"depth":601,"text":10180},{"id":719,"depth":591,"text":720,"children":10252},[10253,10254],{"id":723,"depth":601,"text":723},{"id":9800,"depth":601,"text":9800},{"id":985,"depth":591,"text":985},"程式化開啟 Dialog、Drawer 等浮層。可動態更新 props；結果以 Promise 回傳。",{"doc":699},{},{"title":101,"description":10256},"esS9LlLNABQoW78SyweKjRE-farRDyVoBVJ7PoWm0q8",{"id":10262,"title":105,"body":10263,"component":526,"description":10657,"extension":1015,"links":10658,"meta":10661,"navigation":526,"new":18,"path":106,"seo":10662,"stem":107,"wrapperKind":19,"__hash__":10663},"docs\u002Fdocs\u002Fadmin\u002Fpagination.md",{"type":533,"value":10264,"toc":10636},[10265,10267,10285,10379,10381,10384,10386,10390,10393,10395,10397,10580,10582,10585,10587,10590,10592,10595,10597,10600,10602,10605,10607,10610,10612,10615,10617,10620,10622,10625,10627,10630,10632,10634],[536,10266,507],{"id":507},[539,10268,10270],{"className":541,"code":10269,"filename":543,"language":544,"meta":545,"style":546},"pnpm dlx shadcn-vue add @admin\u002Fpagination\n",[548,10271,10272],{"__ignoreMap":546},[551,10273,10274,10276,10278,10280,10282],{"class":553,"line":554},[551,10275,558],{"class":557},[551,10277,562],{"class":561},[551,10279,565],{"class":561},[551,10281,568],{"class":561},[551,10283,10284],{"class":561}," @admin\u002Fpagination\n",[539,10286,10288],{"className":574,"code":10287,"language":576,"meta":546,"style":546},"import {\n  AdminPagination,\n  AdminPaginationContent,\n  AdminPaginationEllipsis,\n  AdminPaginationFirst,\n  AdminPaginationInfo,\n  AdminPaginationItem,\n  AdminPaginationLast,\n  AdminPaginationNext,\n  AdminPaginationPerPage,\n  AdminPaginationPrevious,\n} from '@\u002Fcomponents\u002Fadmin\u002Fpagination'\n",[548,10289,10290,10296,10303,10310,10317,10324,10331,10338,10345,10352,10359,10366],{"__ignoreMap":546},[551,10291,10292,10294],{"class":553,"line":554},[551,10293,584],{"class":583},[551,10295,588],{"class":587},[551,10297,10298,10301],{"class":553,"line":591},[551,10299,10300],{"class":594},"  AdminPagination",[551,10302,598],{"class":587},[551,10304,10305,10308],{"class":553,"line":601},[551,10306,10307],{"class":594},"  AdminPaginationContent",[551,10309,598],{"class":587},[551,10311,10312,10315],{"class":553,"line":609},[551,10313,10314],{"class":594},"  AdminPaginationEllipsis",[551,10316,598],{"class":587},[551,10318,10319,10322],{"class":553,"line":617},[551,10320,10321],{"class":594},"  AdminPaginationFirst",[551,10323,598],{"class":587},[551,10325,10326,10329],{"class":553,"line":625},[551,10327,10328],{"class":594},"  AdminPaginationInfo",[551,10330,598],{"class":587},[551,10332,10333,10336],{"class":553,"line":633},[551,10334,10335],{"class":594},"  AdminPaginationItem",[551,10337,598],{"class":587},[551,10339,10340,10343],{"class":553,"line":641},[551,10341,10342],{"class":594},"  AdminPaginationLast",[551,10344,598],{"class":587},[551,10346,10347,10350],{"class":553,"line":649},[551,10348,10349],{"class":594},"  AdminPaginationNext",[551,10351,598],{"class":587},[551,10353,10354,10357],{"class":553,"line":657},[551,10355,10356],{"class":594},"  AdminPaginationPerPage",[551,10358,598],{"class":587},[551,10360,10361,10364],{"class":553,"line":665},[551,10362,10363],{"class":594},"  AdminPaginationPrevious",[551,10365,598],{"class":587},[551,10367,10368,10370,10372,10374,10377],{"class":553,"line":901},[551,10369,668],{"class":587},[551,10371,671],{"class":583},[551,10373,674],{"class":587},[551,10375,10376],{"class":561},"@\u002Fcomponents\u002Fadmin\u002Fpagination",[551,10378,680],{"class":587},[536,10380,683],{"id":683},[685,10382],{"name":10383},"PaginationDemo",[536,10385,690],{"id":690},[692,10387,10389],{"id":10388},"完整樣式含資訊-每頁筆數","完整樣式（含資訊 + 每頁筆數）",[685,10391],{"name":10392},"PaginationFullDemo",[536,10394,720],{"id":719},[692,10396,723],{"id":723},[539,10398,10400],{"className":726,"code":10399,"language":728,"meta":546,"style":546},"\u003Ctemplate>\n  \u003Cadmin-pagination v-model:page=\"page\" :items-per-page=\"perPage\" :total=\"total\">\n    \u003Cadmin-pagination-content>\n      \u003Cadmin-pagination-first \u002F>\n      \u003Cadmin-pagination-previous \u002F>\n      \u003Cadmin-pagination-item :value=\"1\" \u002F>\n      \u003Cadmin-pagination-ellipsis \u002F>\n      \u003Cadmin-pagination-next \u002F>\n      \u003Cadmin-pagination-last \u002F>\n    \u003C\u002Fadmin-pagination-content>\n    \u003Cadmin-pagination-info \u002F>\n    \u003Cadmin-pagination-per-page v-model=\"perPage\" \u002F>\n  \u003C\u002Fadmin-pagination>\n\u003C\u002Ftemplate>\n",[548,10401,10402,10410,10455,10464,10473,10482,10501,10510,10519,10528,10536,10545,10564,10572],{"__ignoreMap":546},[551,10403,10404,10406,10408],{"class":553,"line":554},[551,10405,735],{"class":587},[551,10407,739],{"class":738},[551,10409,742],{"class":587},[551,10411,10412,10414,10417,10420,10422,10424,10427,10429,10432,10434,10436,10439,10441,10444,10446,10448,10451,10453],{"class":553,"line":591},[551,10413,747],{"class":587},[551,10415,10416],{"class":738},"admin-pagination",[551,10418,10419],{"class":753}," v-model:page",[551,10421,757],{"class":587},[551,10423,760],{"class":587},[551,10425,10426],{"class":561},"page",[551,10428,760],{"class":587},[551,10430,10431],{"class":753}," :items-per-page",[551,10433,757],{"class":587},[551,10435,760],{"class":587},[551,10437,10438],{"class":561},"perPage",[551,10440,760],{"class":587},[551,10442,10443],{"class":753}," :total",[551,10445,757],{"class":587},[551,10447,760],{"class":587},[551,10449,10450],{"class":561},"total",[551,10452,760],{"class":587},[551,10454,742],{"class":587},[551,10456,10457,10459,10462],{"class":553,"line":601},[551,10458,772],{"class":587},[551,10460,10461],{"class":738},"admin-pagination-content",[551,10463,742],{"class":587},[551,10465,10466,10468,10471],{"class":553,"line":609},[551,10467,802],{"class":587},[551,10469,10470],{"class":738},"admin-pagination-first",[551,10472,1449],{"class":587},[551,10474,10475,10477,10480],{"class":553,"line":617},[551,10476,802],{"class":587},[551,10478,10479],{"class":738},"admin-pagination-previous",[551,10481,1449],{"class":587},[551,10483,10484,10486,10489,10491,10493,10495,10497,10499],{"class":553,"line":625},[551,10485,802],{"class":587},[551,10487,10488],{"class":738},"admin-pagination-item",[551,10490,2920],{"class":753},[551,10492,757],{"class":587},[551,10494,760],{"class":587},[551,10496,1637],{"class":561},[551,10498,760],{"class":587},[551,10500,1449],{"class":587},[551,10502,10503,10505,10508],{"class":553,"line":633},[551,10504,802],{"class":587},[551,10506,10507],{"class":738},"admin-pagination-ellipsis",[551,10509,1449],{"class":587},[551,10511,10512,10514,10517],{"class":553,"line":641},[551,10513,802],{"class":587},[551,10515,10516],{"class":738},"admin-pagination-next",[551,10518,1449],{"class":587},[551,10520,10521,10523,10526],{"class":553,"line":649},[551,10522,802],{"class":587},[551,10524,10525],{"class":738},"admin-pagination-last",[551,10527,1449],{"class":587},[551,10529,10530,10532,10534],{"class":553,"line":657},[551,10531,913],{"class":587},[551,10533,10461],{"class":738},[551,10535,742],{"class":587},[551,10537,10538,10540,10543],{"class":553,"line":665},[551,10539,772],{"class":587},[551,10541,10542],{"class":738},"admin-pagination-info",[551,10544,1449],{"class":587},[551,10546,10547,10549,10552,10554,10556,10558,10560,10562],{"class":553,"line":901},[551,10548,772],{"class":587},[551,10550,10551],{"class":738},"admin-pagination-per-page",[551,10553,2867],{"class":753},[551,10555,757],{"class":587},[551,10557,760],{"class":587},[551,10559,10438],{"class":561},[551,10561,760],{"class":587},[551,10563,1449],{"class":587},[551,10565,10566,10568,10570],{"class":553,"line":910},[551,10567,923],{"class":587},[551,10569,10416],{"class":738},[551,10571,742],{"class":587},[551,10573,10574,10576,10578],{"class":553,"line":920},[551,10575,784],{"class":587},[551,10577,739],{"class":738},[551,10579,742],{"class":587},[692,10581,10416],{"id":10416},[940,10583],{"component":10584},"AdminPagination",[692,10586,10488],{"id":10488},[940,10588],{"component":10589},"AdminPaginationItem",[692,10591,10542],{"id":10542},[940,10593],{"component":10594},"AdminPaginationInfo",[692,10596,10551],{"id":10551},[940,10598],{"component":10599},"AdminPaginationPerPage",[692,10601,10461],{"id":10461},[940,10603],{"component":10604},"AdminPaginationContent",[692,10606,10507],{"id":10507},[940,10608],{"component":10609},"AdminPaginationEllipsis",[692,10611,10470],{"id":10470},[940,10613],{"component":10614},"AdminPaginationFirst",[692,10616,10525],{"id":10525},[940,10618],{"component":10619},"AdminPaginationLast",[692,10621,10516],{"id":10516},[940,10623],{"component":10624},"AdminPaginationNext",[692,10626,10479],{"id":10479},[940,10628],{"component":10629},"AdminPaginationPrevious",[536,10631,985],{"id":985},[987,10633],{"component":10584},[990,10635,992],{},{"title":546,"searchDepth":601,"depth":601,"links":10637},[10638,10639,10640,10643,10656],{"id":507,"depth":591,"text":507},{"id":683,"depth":591,"text":683},{"id":690,"depth":591,"text":690,"children":10641},[10642],{"id":10388,"depth":601,"text":10389},{"id":719,"depth":591,"text":720,"children":10644},[10645,10646,10647,10648,10649,10650,10651,10652,10653,10654,10655],{"id":723,"depth":601,"text":723},{"id":10416,"depth":601,"text":10416},{"id":10488,"depth":601,"text":10488},{"id":10542,"depth":601,"text":10542},{"id":10551,"depth":601,"text":10551},{"id":10461,"depth":601,"text":10461},{"id":10507,"depth":601,"text":10507},{"id":10470,"depth":601,"text":10470},{"id":10525,"depth":601,"text":10525},{"id":10516,"depth":601,"text":10516},{"id":10479,"depth":601,"text":10479},{"id":985,"depth":591,"text":985},"分頁導覽。頁碼、資訊區、每頁筆數選擇。",{"doc":10659,"api":10660},"https:\u002F\u002Freka-ui.com\u002Fdocs\u002Fcomponents\u002Fpagination","https:\u002F\u002Freka-ui.com\u002Fdocs\u002Fcomponents\u002Fpagination#api-reference",{},{"title":105,"description":10657},"ENw5_Ufn39fdOjX9ocBg8BU6mQdEB3bqdeJxj5N6GsY",{"id":10665,"title":109,"body":10666,"component":526,"description":10993,"extension":1015,"links":10994,"meta":10996,"navigation":526,"new":18,"path":110,"seo":10997,"stem":111,"wrapperKind":19,"__hash__":10998},"docs\u002Fdocs\u002Fadmin\u002Fpdf-viewer.md",{"type":533,"value":10667,"toc":10974},[10668,10670,10688,10752,10754,10757,10759,10763,10766,10769,10772,10774,10776,10877,10879,10882,10884,10887,10889,10892,10894,10897,10899,10902,10904,10907,10909,10968,10970,10972],[536,10669,507],{"id":507},[539,10671,10673],{"className":541,"code":10672,"filename":543,"language":544,"meta":545,"style":546},"pnpm dlx shadcn-vue add @admin\u002Fpdf-viewer\n",[548,10674,10675],{"__ignoreMap":546},[551,10676,10677,10679,10681,10683,10685],{"class":553,"line":554},[551,10678,558],{"class":557},[551,10680,562],{"class":561},[551,10682,565],{"class":561},[551,10684,568],{"class":561},[551,10686,10687],{"class":561}," @admin\u002Fpdf-viewer\n",[539,10689,10691],{"className":574,"code":10690,"language":576,"meta":546,"style":546},"import {\n  AdminPdfViewer,\n  AdminPdfViewerFullscreen,\n  AdminPdfViewerPageNav,\n  AdminPdfViewerPages,\n  AdminPdfViewerToolbar,\n  AdminPdfViewerZoom\n} from '@\u002Fcomponents\u002Fadmin\u002Fpdf-viewer'\n",[548,10692,10693,10699,10706,10713,10720,10727,10734,10739],{"__ignoreMap":546},[551,10694,10695,10697],{"class":553,"line":554},[551,10696,584],{"class":583},[551,10698,588],{"class":587},[551,10700,10701,10704],{"class":553,"line":591},[551,10702,10703],{"class":594},"  AdminPdfViewer",[551,10705,598],{"class":587},[551,10707,10708,10711],{"class":553,"line":601},[551,10709,10710],{"class":594},"  AdminPdfViewerFullscreen",[551,10712,598],{"class":587},[551,10714,10715,10718],{"class":553,"line":609},[551,10716,10717],{"class":594},"  AdminPdfViewerPageNav",[551,10719,598],{"class":587},[551,10721,10722,10725],{"class":553,"line":617},[551,10723,10724],{"class":594},"  AdminPdfViewerPages",[551,10726,598],{"class":587},[551,10728,10729,10732],{"class":553,"line":625},[551,10730,10731],{"class":594},"  AdminPdfViewerToolbar",[551,10733,598],{"class":587},[551,10735,10736],{"class":553,"line":633},[551,10737,10738],{"class":594},"  AdminPdfViewerZoom\n",[551,10740,10741,10743,10745,10747,10750],{"class":553,"line":641},[551,10742,668],{"class":587},[551,10744,671],{"class":583},[551,10746,674],{"class":587},[551,10748,10749],{"class":561},"@\u002Fcomponents\u002Fadmin\u002Fpdf-viewer",[551,10751,680],{"class":587},[536,10753,683],{"id":683},[685,10755],{"name":10756},"PdfViewerBasicDemo",[536,10758,690],{"id":690},[692,10760,10762],{"id":10761},"自訂-toolbar-組合","自訂 toolbar 組合",[685,10764],{"name":10765},"PdfViewerCustomToolbarDemo",[692,10767,10768],{"id":10768},"外部控制當前頁",[685,10770],{"name":10771},"PdfViewerControlledPageDemo",[536,10773,720],{"id":719},[692,10775,723],{"id":723},[539,10777,10779],{"className":726,"code":10778,"language":728,"meta":546,"style":546},"\u003Ctemplate>\n  \u003Cadmin-pdf-viewer src=\"...\">\n    \u003Cadmin-pdf-viewer-pages \u002F>\n    \u003Cadmin-pdf-viewer-toolbar>\n      \u003Cadmin-pdf-viewer-page-nav \u002F>\n      \u003Cadmin-pdf-viewer-zoom \u002F>\n      \u003Cadmin-pdf-viewer-fullscreen \u002F>\n    \u003C\u002Fadmin-pdf-viewer-toolbar>\n  \u003C\u002Fadmin-pdf-viewer>\n\u003C\u002Ftemplate>\n",[548,10780,10781,10789,10808,10817,10826,10835,10844,10853,10861,10869],{"__ignoreMap":546},[551,10782,10783,10785,10787],{"class":553,"line":554},[551,10784,735],{"class":587},[551,10786,739],{"class":738},[551,10788,742],{"class":587},[551,10790,10791,10793,10796,10798,10800,10802,10804,10806],{"class":553,"line":591},[551,10792,747],{"class":587},[551,10794,10795],{"class":738},"admin-pdf-viewer",[551,10797,1792],{"class":753},[551,10799,757],{"class":587},[551,10801,760],{"class":587},[551,10803,1799],{"class":561},[551,10805,760],{"class":587},[551,10807,742],{"class":587},[551,10809,10810,10812,10815],{"class":553,"line":601},[551,10811,772],{"class":587},[551,10813,10814],{"class":738},"admin-pdf-viewer-pages",[551,10816,1449],{"class":587},[551,10818,10819,10821,10824],{"class":553,"line":609},[551,10820,772],{"class":587},[551,10822,10823],{"class":738},"admin-pdf-viewer-toolbar",[551,10825,742],{"class":587},[551,10827,10828,10830,10833],{"class":553,"line":617},[551,10829,802],{"class":587},[551,10831,10832],{"class":738},"admin-pdf-viewer-page-nav",[551,10834,1449],{"class":587},[551,10836,10837,10839,10842],{"class":553,"line":625},[551,10838,802],{"class":587},[551,10840,10841],{"class":738},"admin-pdf-viewer-zoom",[551,10843,1449],{"class":587},[551,10845,10846,10848,10851],{"class":553,"line":633},[551,10847,802],{"class":587},[551,10849,10850],{"class":738},"admin-pdf-viewer-fullscreen",[551,10852,1449],{"class":587},[551,10854,10855,10857,10859],{"class":553,"line":641},[551,10856,913],{"class":587},[551,10858,10823],{"class":738},[551,10860,742],{"class":587},[551,10862,10863,10865,10867],{"class":553,"line":649},[551,10864,923],{"class":587},[551,10866,10795],{"class":738},[551,10868,742],{"class":587},[551,10870,10871,10873,10875],{"class":553,"line":657},[551,10872,784],{"class":587},[551,10874,739],{"class":738},[551,10876,742],{"class":587},[692,10878,10795],{"id":10795},[940,10880],{"component":10881},"AdminPdfViewer",[692,10883,10823],{"id":10823},[940,10885],{"component":10886},"AdminPdfViewerToolbar",[692,10888,10814],{"id":10814},[940,10890],{"component":10891},"AdminPdfViewerPages",[692,10893,10850],{"id":10850},[940,10895],{"component":10896},"AdminPdfViewerFullscreen",[692,10898,10832],{"id":10832},[940,10900],{"component":10901},"AdminPdfViewerPageNav",[692,10903,10841],{"id":10841},[940,10905],{"component":10906},"AdminPdfViewerZoom",[536,10908,1556],{"id":1556},[1558,10910,10911,10928,10937,10951],{},[1561,10912,10913,10915,10916,4582,10918,10920,10921,10924,10925,10927],{},[1135,10914,1587],{},"：PDFium 引擎依賴 WebAssembly 與 Web Worker；元件殼不含 ",[548,10917,1591],{},[548,10919,1591],{}," 包覆（可加 ",[548,10922,10923],{},"#fallback"," loading）；純 CSR 不需處理。見 ",[697,10926,1603],{"href":1602},"。PDF 內容不會出現於 server-rendered HTML，無法 SEO。",[1561,10929,10930,10933,10934,10936],{},[1135,10931,10932],{},"首次掛載需下載 PDFium wasm","：載入時間視網路而定，預期延遲約數百毫秒到數秒；下載期間顯示既有 ",[548,10935,8888],{}," 元件。",[1561,10938,10939,10942,10943,10946,10947,10950],{},[1135,10940,10941],{},"wasm 二進位來源","：PDF 解析使用 PDFium WebAssembly，預設由 EmbedPDF 官方 CDN 動態載入。若部署於離線環境、封閉內網，或資安政策禁止外部 CDN，需自行 host ",[548,10944,10945],{},".wasm"," 檔並於 ",[548,10948,10949],{},"usePdfiumEngine"," 設定中指定來源（參數名請參考 EmbedPDF 文件）。",[1561,10952,10953,10956,10957,10960,10961,4159,10964,10967],{},[1135,10954,10955],{},"父容器需有明確寬度","：放大時 PDF 頁面可能比 viewer 寬，內部 viewport 自動水平捲動。若元件包在無寬度約束的 flex item（例如 ",[548,10958,10959],{},"\u003Cdiv class=\"flex flex-col gap-3\">","）內，PDF 寬度會推擠父容器；需在父 wrapper 加 ",[548,10962,10963],{},"w-full",[548,10965,10966],{},"min-w-0"," 確保 viewer 寬度受控。",[536,10969,985],{"id":985},[987,10971],{"component":10881},[990,10973,992],{},{"title":546,"searchDepth":601,"depth":601,"links":10975},[10976,10977,10978,10982,10991,10992],{"id":507,"depth":591,"text":507},{"id":683,"depth":591,"text":683},{"id":690,"depth":591,"text":690,"children":10979},[10980,10981],{"id":10761,"depth":601,"text":10762},{"id":10768,"depth":601,"text":10768},{"id":719,"depth":591,"text":720,"children":10983},[10984,10985,10986,10987,10988,10989,10990],{"id":723,"depth":601,"text":723},{"id":10795,"depth":601,"text":10795},{"id":10823,"depth":601,"text":10823},{"id":10814,"depth":601,"text":10814},{"id":10850,"depth":601,"text":10850},{"id":10832,"depth":601,"text":10832},{"id":10841,"depth":601,"text":10841},{"id":1556,"depth":591,"text":1556},{"id":985,"depth":591,"text":985},"內嵌 PDF 檢視器（EmbedPDF）。",{"doc":10995},"https:\u002F\u002Fwww.embedpdf.com\u002Fdocs\u002Fvue\u002Fheadless\u002Fgetting-started",{},{"title":109,"description":10993},"9hCtlJi71zBNrRS0sKKmK0xhlBo_a7lwPXCJh5vn91A",{"id":11000,"title":113,"body":11001,"component":526,"description":11161,"extension":1015,"links":11162,"meta":11165,"navigation":526,"new":18,"path":114,"seo":11166,"stem":115,"wrapperKind":19,"__hash__":11167},"docs\u002Fdocs\u002Fadmin\u002Fprogress.md",{"type":533,"value":11002,"toc":11147},[11003,11005,11023,11048,11050,11053,11055,11058,11065,11068,11071,11074,11077,11088,11091,11093,11095,11136,11138,11141,11143,11145],[536,11004,507],{"id":507},[539,11006,11008],{"className":541,"code":11007,"filename":543,"language":544,"meta":545,"style":546},"pnpm dlx shadcn-vue add @admin\u002Fprogress\n",[548,11009,11010],{"__ignoreMap":546},[551,11011,11012,11014,11016,11018,11020],{"class":553,"line":554},[551,11013,558],{"class":557},[551,11015,562],{"class":561},[551,11017,565],{"class":561},[551,11019,568],{"class":561},[551,11021,11022],{"class":561}," @admin\u002Fprogress\n",[539,11024,11026],{"className":574,"code":11025,"language":576,"meta":546,"style":546},"import { AdminProgress } from '@\u002Fcomponents\u002Fadmin\u002Fprogress'\n",[548,11027,11028],{"__ignoreMap":546},[551,11029,11030,11032,11034,11037,11039,11041,11043,11046],{"class":553,"line":554},[551,11031,584],{"class":583},[551,11033,1273],{"class":587},[551,11035,11036],{"class":594}," AdminProgress",[551,11038,1279],{"class":587},[551,11040,671],{"class":583},[551,11042,674],{"class":587},[551,11044,11045],{"class":561},"@\u002Fcomponents\u002Fadmin\u002Fprogress",[551,11047,680],{"class":587},[536,11049,683],{"id":683},[685,11051],{"name":11052},"ProgressDemo",[536,11054,690],{"id":690},[692,11056,11057],{"id":11057},"動態進度",[705,11059,11060,11061,11064],{},"以 interval 或事件來源更新 ",[548,11062,11063],{},"model-value","，進度條會平滑過渡。",[685,11066],{"name":11067},"ProgressDynamicDemo",[692,11069,11070],{"id":11070},"多項進度列表",[685,11072],{"name":11073},"ProgressStepsDemo",[692,11075,11076],{"id":11076},"不確定進度",[705,11078,11079,11080,11083,11084,11087],{},"當進度總量未知時，傳入 ",[548,11081,11082],{},"model-value=\"null\""," 進入 indeterminate 狀態：進度條顯示不確定動畫並隱藏百分比文字（此時 ",[548,11085,11086],{},"show-value"," 不生效）。待取得實際進度後再改回數值即可。",[685,11089],{"name":11090},"ProgressIndeterminateDemo",[536,11092,720],{"id":719},[692,11094,723],{"id":723},[539,11096,11098],{"className":726,"code":11097,"language":728,"meta":546,"style":546},"\u003Ctemplate>\n  \u003Cadmin-progress :model-value=\"value\" \u002F>\n\u003C\u002Ftemplate>\n",[548,11099,11100,11108,11128],{"__ignoreMap":546},[551,11101,11102,11104,11106],{"class":553,"line":554},[551,11103,735],{"class":587},[551,11105,739],{"class":738},[551,11107,742],{"class":587},[551,11109,11110,11112,11115,11118,11120,11122,11124,11126],{"class":553,"line":591},[551,11111,747],{"class":587},[551,11113,11114],{"class":738},"admin-progress",[551,11116,11117],{"class":753}," :model-value",[551,11119,757],{"class":587},[551,11121,760],{"class":587},[551,11123,2720],{"class":561},[551,11125,760],{"class":587},[551,11127,1449],{"class":587},[551,11129,11130,11132,11134],{"class":553,"line":601},[551,11131,784],{"class":587},[551,11133,739],{"class":738},[551,11135,742],{"class":587},[692,11137,11114],{"id":11114},[940,11139],{"component":11140},"AdminProgress",[536,11142,985],{"id":985},[987,11144],{"component":11140},[990,11146,992],{},{"title":546,"searchDepth":601,"depth":601,"links":11148},[11149,11150,11151,11156,11160],{"id":507,"depth":591,"text":507},{"id":683,"depth":591,"text":683},{"id":690,"depth":591,"text":690,"children":11152},[11153,11154,11155],{"id":11057,"depth":601,"text":11057},{"id":11070,"depth":601,"text":11070},{"id":11076,"depth":601,"text":11076},{"id":719,"depth":591,"text":720,"children":11157},[11158,11159],{"id":723,"depth":601,"text":723},{"id":11114,"depth":601,"text":11114},{"id":985,"depth":591,"text":985},"進度條。顯示百分比。",{"doc":11163,"api":11164},"https:\u002F\u002Freka-ui.com\u002Fdocs\u002Fcomponents\u002Fprogress","https:\u002F\u002Freka-ui.com\u002Fdocs\u002Fcomponents\u002Fprogress#api-reference",{},{"title":113,"description":11161},"-mat3XLEAPWTWxqq-CHuVNlyKL8hgmAADbYV5-5z7RM",{"id":11169,"title":117,"body":11170,"component":526,"description":11465,"extension":1015,"links":11466,"meta":11469,"navigation":526,"new":18,"path":118,"seo":11470,"stem":119,"wrapperKind":19,"__hash__":11471},"docs\u002Fdocs\u002Fadmin\u002Fradio-group.md",{"type":533,"value":11171,"toc":11449},[11172,11174,11192,11237,11239,11242,11244,11247,11250,11252,11255,11257,11273,11288,11290,11294,11306,11309,11311,11313,11428,11430,11432,11435,11438,11440,11443,11445,11447],[536,11173,507],{"id":507},[539,11175,11177],{"className":541,"code":11176,"filename":543,"language":544,"meta":545,"style":546},"pnpm dlx shadcn-vue add @admin\u002Fradio-group\n",[548,11178,11179],{"__ignoreMap":546},[551,11180,11181,11183,11185,11187,11189],{"class":553,"line":554},[551,11182,558],{"class":557},[551,11184,562],{"class":561},[551,11186,565],{"class":561},[551,11188,568],{"class":561},[551,11190,11191],{"class":561}," @admin\u002Fradio-group\n",[539,11193,11195],{"className":574,"code":11194,"language":576,"meta":546,"style":546},"import {\n  AdminRadioGroup,\n  AdminRadioGroupItem,\n  AdminRadioOption,\n} from '@\u002Fcomponents\u002Fadmin\u002Fradio-group'\n",[548,11196,11197,11203,11210,11217,11224],{"__ignoreMap":546},[551,11198,11199,11201],{"class":553,"line":554},[551,11200,584],{"class":583},[551,11202,588],{"class":587},[551,11204,11205,11208],{"class":553,"line":591},[551,11206,11207],{"class":594},"  AdminRadioGroup",[551,11209,598],{"class":587},[551,11211,11212,11215],{"class":553,"line":601},[551,11213,11214],{"class":594},"  AdminRadioGroupItem",[551,11216,598],{"class":587},[551,11218,11219,11222],{"class":553,"line":609},[551,11220,11221],{"class":594},"  AdminRadioOption",[551,11223,598],{"class":587},[551,11225,11226,11228,11230,11232,11235],{"class":553,"line":617},[551,11227,668],{"class":587},[551,11229,671],{"class":583},[551,11231,674],{"class":587},[551,11233,11234],{"class":561},"@\u002Fcomponents\u002Fadmin\u002Fradio-group",[551,11236,680],{"class":587},[536,11238,683],{"id":683},[685,11240],{"name":11241},"RadioGroupBasicDemo",[536,11243,690],{"id":690},[692,11245,11246],{"id":11246},"多選項群組",[685,11248],{"name":11249},"RadioGroupDemo",[692,11251,3202],{"id":3202},[685,11253],{"name":11254},"RadioDisabledDemo",[536,11256,2762],{"id":2761},[705,11258,11259,7623,11262,11264,11265,11268,11269,11272],{},[548,11260,11261],{},"AdminRadioGroup",[548,11263,3248],{}," 為 reka-ui 的 ",[548,11266,11267],{},"AcceptableValue","，選項則由呼叫端自行放置 ",[548,11270,11271],{},"admin-radio-option","，兩者在 compile-time 不會對齊。",[705,11274,8610,11275,11277,11278,11280,11281,2779,11283,11285,11286,713],{},[548,11276,2724],{}," 與選項 ",[548,11279,2720],{}," 的 literal union 對齊，可自行封裝：傳入 ",[548,11282,2778],{},[548,11284,2782],{},"），由封裝元件渲染 ",[548,11287,11271],{},[705,11289,8618],{},[2812,11291],{"name":11292,"title":11293},"TypedAdminRadioGroupDemo","TypedAdminRadioGroup.vue",[2817,11295,11296],{"title":2819,"type":2820},[705,11297,2823,11298,2827,11300,2831,11302,2834,11304,2838],{},[548,11299,2826],{},[548,11301,2830],{},[697,11303,515],{"href":516},[548,11305,2837],{},[2812,11307],{"name":11308},"RadioGroupTypeSafeDemo",[536,11310,720],{"id":719},[692,11312,723],{"id":723},[539,11314,11316],{"className":726,"code":11315,"language":728,"meta":546,"style":546},"\u003Ctemplate>\n  \u003Cadmin-radio-group v-model=\"value\">\n    \u003Cadmin-radio-option\n      v-for=\"option in options\"\n      :key=\"option.value\"\n      :label=\"option.label\"\n      :value=\"option.value\"\n    \u002F>\n  \u003C\u002Fadmin-radio-group>\n\u003C\u002Ftemplate>\n",[548,11317,11318,11326,11345,11352,11366,11380,11394,11407,11412,11420],{"__ignoreMap":546},[551,11319,11320,11322,11324],{"class":553,"line":554},[551,11321,735],{"class":587},[551,11323,739],{"class":738},[551,11325,742],{"class":587},[551,11327,11328,11330,11333,11335,11337,11339,11341,11343],{"class":553,"line":591},[551,11329,747],{"class":587},[551,11331,11332],{"class":738},"admin-radio-group",[551,11334,2867],{"class":753},[551,11336,757],{"class":587},[551,11338,760],{"class":587},[551,11340,2720],{"class":561},[551,11342,760],{"class":587},[551,11344,742],{"class":587},[551,11346,11347,11349],{"class":553,"line":601},[551,11348,772],{"class":587},[551,11350,11351],{"class":738},"admin-radio-option\n",[551,11353,11354,11357,11359,11361,11364],{"class":553,"line":609},[551,11355,11356],{"class":753},"      v-for",[551,11358,757],{"class":587},[551,11360,760],{"class":587},[551,11362,11363],{"class":561},"option in options",[551,11365,4281],{"class":587},[551,11367,11368,11371,11373,11375,11378],{"class":553,"line":617},[551,11369,11370],{"class":753},"      :key",[551,11372,757],{"class":587},[551,11374,760],{"class":587},[551,11376,11377],{"class":561},"option.value",[551,11379,4281],{"class":587},[551,11381,11382,11385,11387,11389,11392],{"class":553,"line":625},[551,11383,11384],{"class":753},"      :label",[551,11386,757],{"class":587},[551,11388,760],{"class":587},[551,11390,11391],{"class":561},"option.label",[551,11393,4281],{"class":587},[551,11395,11396,11399,11401,11403,11405],{"class":553,"line":633},[551,11397,11398],{"class":753},"      :value",[551,11400,757],{"class":587},[551,11402,760],{"class":587},[551,11404,11377],{"class":561},[551,11406,4281],{"class":587},[551,11408,11409],{"class":553,"line":641},[551,11410,11411],{"class":587},"    \u002F>\n",[551,11413,11414,11416,11418],{"class":553,"line":649},[551,11415,923],{"class":587},[551,11417,11332],{"class":738},[551,11419,742],{"class":587},[551,11421,11422,11424,11426],{"class":553,"line":657},[551,11423,784],{"class":587},[551,11425,739],{"class":738},[551,11427,742],{"class":587},[692,11429,11332],{"id":11332},[940,11431],{"component":11261},[692,11433,11434],{"id":11434},"admin-radio-group-item",[940,11436],{"component":11437},"AdminRadioGroupItem",[692,11439,11271],{"id":11271},[940,11441],{"component":11442},"AdminRadioOption",[536,11444,985],{"id":985},[987,11446],{"component":11261},[990,11448,992],{},{"title":546,"searchDepth":601,"depth":601,"links":11450},[11451,11452,11453,11457,11458,11464],{"id":507,"depth":591,"text":507},{"id":683,"depth":591,"text":683},{"id":690,"depth":591,"text":690,"children":11454},[11455,11456],{"id":11246,"depth":601,"text":11246},{"id":3202,"depth":601,"text":3202},{"id":2761,"depth":591,"text":2762},{"id":719,"depth":591,"text":720,"children":11459},[11460,11461,11462,11463],{"id":723,"depth":601,"text":723},{"id":11332,"depth":601,"text":11332},{"id":11434,"depth":601,"text":11434},{"id":11271,"depth":601,"text":11271},{"id":985,"depth":591,"text":985},"互斥單選按鈕組。",{"doc":11467,"api":11468},"https:\u002F\u002Freka-ui.com\u002Fdocs\u002Fcomponents\u002Fradio-group","https:\u002F\u002Freka-ui.com\u002Fdocs\u002Fcomponents\u002Fradio-group#api-reference",{},{"title":117,"description":11465},"NyPiSMy1sxFUv4QOAxDj1Ed_SO1WClz7bXA48G_xInA",{"id":11473,"title":121,"body":11474,"component":526,"description":11616,"extension":1015,"links":11617,"meta":11620,"navigation":526,"new":18,"path":122,"seo":11621,"stem":123,"wrapperKind":19,"__hash__":11622},"docs\u002Fdocs\u002Fadmin\u002Fscroll-area.md",{"type":533,"value":11475,"toc":11603},[11476,11478,11496,11526,11528,11531,11533,11536,11539,11541,11543,11586,11588,11591,11594,11597,11599,11601],[536,11477,507],{"id":507},[539,11479,11481],{"className":541,"code":11480,"filename":543,"language":544,"meta":545,"style":546},"pnpm dlx shadcn-vue add @admin\u002Fscroll-area\n",[548,11482,11483],{"__ignoreMap":546},[551,11484,11485,11487,11489,11491,11493],{"class":553,"line":554},[551,11486,558],{"class":557},[551,11488,562],{"class":561},[551,11490,565],{"class":561},[551,11492,568],{"class":561},[551,11494,11495],{"class":561}," @admin\u002Fscroll-area\n",[539,11497,11499],{"className":574,"code":11498,"language":576,"meta":546,"style":546},"import { AdminScrollArea, AdminScrollBar } from '@\u002Fcomponents\u002Fadmin\u002Fscroll-area'\n",[548,11500,11501],{"__ignoreMap":546},[551,11502,11503,11505,11507,11510,11512,11515,11517,11519,11521,11524],{"class":553,"line":554},[551,11504,584],{"class":583},[551,11506,1273],{"class":587},[551,11508,11509],{"class":594}," AdminScrollArea",[551,11511,3348],{"class":587},[551,11513,11514],{"class":594}," AdminScrollBar",[551,11516,1279],{"class":587},[551,11518,671],{"class":583},[551,11520,674],{"class":587},[551,11522,11523],{"class":561},"@\u002Fcomponents\u002Fadmin\u002Fscroll-area",[551,11525,680],{"class":587},[536,11527,683],{"id":683},[685,11529],{"name":11530},"ScrollAreaDemo",[536,11532,690],{"id":690},[692,11534,11535],{"id":11535},"水平捲動",[685,11537],{"name":11538},"ScrollAreaHorizontalDemo",[536,11540,720],{"id":719},[692,11542,723],{"id":723},[539,11544,11546],{"className":726,"code":11545,"language":728,"meta":546,"style":546},"\u003Ctemplate>\n  \u003Cadmin-scroll-area>\n    內容\n  \u003C\u002Fadmin-scroll-area>\n\u003C\u002Ftemplate>\n",[548,11547,11548,11556,11565,11570,11578],{"__ignoreMap":546},[551,11549,11550,11552,11554],{"class":553,"line":554},[551,11551,735],{"class":587},[551,11553,739],{"class":738},[551,11555,742],{"class":587},[551,11557,11558,11560,11563],{"class":553,"line":591},[551,11559,747],{"class":587},[551,11561,11562],{"class":738},"admin-scroll-area",[551,11564,742],{"class":587},[551,11566,11567],{"class":553,"line":601},[551,11568,11569],{"class":594},"    內容\n",[551,11571,11572,11574,11576],{"class":553,"line":609},[551,11573,923],{"class":587},[551,11575,11562],{"class":738},[551,11577,742],{"class":587},[551,11579,11580,11582,11584],{"class":553,"line":617},[551,11581,784],{"class":587},[551,11583,739],{"class":738},[551,11585,742],{"class":587},[692,11587,11562],{"id":11562},[940,11589],{"component":11590},"AdminScrollArea",[692,11592,11593],{"id":11593},"admin-scroll-bar",[940,11595],{"component":11596},"AdminScrollBar",[536,11598,985],{"id":985},[987,11600],{"component":11590},[990,11602,2019],{},{"title":546,"searchDepth":601,"depth":601,"links":11604},[11605,11606,11607,11610,11615],{"id":507,"depth":591,"text":507},{"id":683,"depth":591,"text":683},{"id":690,"depth":591,"text":690,"children":11608},[11609],{"id":11535,"depth":601,"text":11535},{"id":719,"depth":591,"text":720,"children":11611},[11612,11613,11614],{"id":723,"depth":601,"text":723},{"id":11562,"depth":601,"text":11562},{"id":11593,"depth":601,"text":11593},{"id":985,"depth":591,"text":985},"可捲動容器。自訂捲動列樣式。",{"doc":11618,"api":11619},"https:\u002F\u002Freka-ui.com\u002Fdocs\u002Fcomponents\u002Fscroll-area","https:\u002F\u002Freka-ui.com\u002Fdocs\u002Fcomponents\u002Fscroll-area#api-reference",{},{"title":121,"description":11616},"w7AdodwmA4ke2SouOj4Zys8NYmHfQt1UwtUoK0ylT6Q",{"id":11624,"title":125,"body":11625,"component":526,"description":12445,"extension":1015,"links":12446,"meta":12449,"navigation":526,"new":18,"path":126,"seo":12450,"stem":127,"wrapperKind":19,"__hash__":12451},"docs\u002Fdocs\u002Fadmin\u002Fselect.md",{"type":533,"value":11626,"toc":12413},[11627,11629,11647,11783,11785,11788,11790,11793,11796,11799,11802,11804,11807,11810,11813,11816,11818,11841,11853,11855,11859,11871,11874,11876,11878,12239,12241,12243,12245,12248,12250,12253,12255,12258,12260,12263,12265,12268,12270,12273,12275,12278,12280,12283,12285,12288,12290,12293,12295,12298,12301,12304,12306,12309,12311,12314,12316,12319,12321,12407,12409,12411],[536,11628,507],{"id":507},[539,11630,11632],{"className":541,"code":11631,"filename":543,"language":544,"meta":545,"style":546},"pnpm dlx shadcn-vue add @admin\u002Fselect\n",[548,11633,11634],{"__ignoreMap":546},[551,11635,11636,11638,11640,11642,11644],{"class":553,"line":554},[551,11637,558],{"class":557},[551,11639,562],{"class":561},[551,11641,565],{"class":561},[551,11643,568],{"class":561},[551,11645,11646],{"class":561}," @admin\u002Fselect\n",[539,11648,11650],{"className":574,"code":11649,"language":576,"meta":546,"style":546},"import {\n  AdminSelect,\n  AdminSelectAnchor,\n  AdminSelectCancel,\n  AdminSelectCounter,\n  AdminSelectEmpty,\n  AdminSelectGroup,\n  AdminSelectIcon,\n  AdminSelectInput,\n  AdminSelectItem,\n  AdminSelectItemIndicator,\n  AdminSelectList,\n  AdminSelectSeparator,\n  AdminSelectTags,\n  AdminSelectTrigger,\n  AdminSelectValue,\n  AdminSelectViewport,\n} from '@\u002Fcomponents\u002Fadmin\u002Fselect'\n",[548,11651,11652,11658,11665,11672,11679,11686,11693,11700,11707,11714,11721,11728,11735,11742,11749,11756,11763,11770],{"__ignoreMap":546},[551,11653,11654,11656],{"class":553,"line":554},[551,11655,584],{"class":583},[551,11657,588],{"class":587},[551,11659,11660,11663],{"class":553,"line":591},[551,11661,11662],{"class":594},"  AdminSelect",[551,11664,598],{"class":587},[551,11666,11667,11670],{"class":553,"line":601},[551,11668,11669],{"class":594},"  AdminSelectAnchor",[551,11671,598],{"class":587},[551,11673,11674,11677],{"class":553,"line":609},[551,11675,11676],{"class":594},"  AdminSelectCancel",[551,11678,598],{"class":587},[551,11680,11681,11684],{"class":553,"line":617},[551,11682,11683],{"class":594},"  AdminSelectCounter",[551,11685,598],{"class":587},[551,11687,11688,11691],{"class":553,"line":625},[551,11689,11690],{"class":594},"  AdminSelectEmpty",[551,11692,598],{"class":587},[551,11694,11695,11698],{"class":553,"line":633},[551,11696,11697],{"class":594},"  AdminSelectGroup",[551,11699,598],{"class":587},[551,11701,11702,11705],{"class":553,"line":641},[551,11703,11704],{"class":594},"  AdminSelectIcon",[551,11706,598],{"class":587},[551,11708,11709,11712],{"class":553,"line":649},[551,11710,11711],{"class":594},"  AdminSelectInput",[551,11713,598],{"class":587},[551,11715,11716,11719],{"class":553,"line":657},[551,11717,11718],{"class":594},"  AdminSelectItem",[551,11720,598],{"class":587},[551,11722,11723,11726],{"class":553,"line":665},[551,11724,11725],{"class":594},"  AdminSelectItemIndicator",[551,11727,598],{"class":587},[551,11729,11730,11733],{"class":553,"line":901},[551,11731,11732],{"class":594},"  AdminSelectList",[551,11734,598],{"class":587},[551,11736,11737,11740],{"class":553,"line":910},[551,11738,11739],{"class":594},"  AdminSelectSeparator",[551,11741,598],{"class":587},[551,11743,11744,11747],{"class":553,"line":920},[551,11745,11746],{"class":594},"  AdminSelectTags",[551,11748,598],{"class":587},[551,11750,11751,11754],{"class":553,"line":930},[551,11752,11753],{"class":594},"  AdminSelectTrigger",[551,11755,598],{"class":587},[551,11757,11758,11761],{"class":553,"line":3536},[551,11759,11760],{"class":594},"  AdminSelectValue",[551,11762,598],{"class":587},[551,11764,11765,11768],{"class":553,"line":4422},[551,11766,11767],{"class":594},"  AdminSelectViewport",[551,11769,598],{"class":587},[551,11771,11772,11774,11776,11778,11781],{"class":553,"line":6194},[551,11773,668],{"class":587},[551,11775,671],{"class":583},[551,11777,674],{"class":587},[551,11779,11780],{"class":561},"@\u002Fcomponents\u002Fadmin\u002Fselect",[551,11782,680],{"class":587},[536,11784,683],{"id":683},[685,11786],{"name":11787},"SelectDemo",[536,11789,690],{"id":690},[692,11791,11792],{"id":11792},"多選",[685,11794],{"name":11795},"SelectMultipleDemo",[692,11797,11798],{"id":11798},"可搜尋",[685,11800],{"name":11801},"SelectSearchableDemo",[692,11803,2755],{"id":2755},[685,11805],{"name":11806},"SelectErrorDemo",[692,11808,11809],{"id":11809},"完整組合",[705,11811,11812],{},"子元件：anchor、trigger（tags／value／counter／icon）、list、input（含 cancel）、viewport、empty、group（heading）、separator、item（含 item-indicator）。",[685,11814],{"name":11815},"SelectFullDemo",[536,11817,2762],{"id":2761},[705,11819,11820,2768,11823,11825,11826,11828,11829,11831,11832,2779,11834,11836,11837,11840],{},[548,11821,11822],{},"AdminSelect",[548,11824,2771],{},"），可直接以較嚴的 ",[548,11827,2724],{}," 受益。若要讓 ",[548,11830,2724],{}," 與選項清單的 literal union 對齊，可自行封裝：傳入 ",[548,11833,2778],{},[548,11835,2782],{},"），由封裝元件以物件為 value 渲染 item，並以 ",[548,11838,11839],{},"displayValue"," 顯示 label。",[705,11842,11843,11844,11847,11848,3255,11850,11852],{},"封裝再以 ",[548,11845,11846],{},"multiple"," 為條件式泛型的 discriminant：",[548,11849,11846],{},[548,11851,2724],{}," 型別收斂為選項陣列、未開時為單一選項，兩種模式共用同一個封裝元件。",[705,11854,8618],{},[2812,11856],{"name":11857,"title":11858},"TypedAdminSelectDemo","TypedAdminSelect.vue",[2817,11860,11861],{"title":2819,"type":2820},[705,11862,2823,11863,2827,11865,2831,11867,2834,11869,2838],{},[548,11864,2826],{},[548,11866,2830],{},[697,11868,515],{"href":516},[548,11870,2837],{},[2812,11872],{"name":11873},"SelectTypeSafeDemo",[536,11875,720],{"id":719},[692,11877,723],{"id":723},[539,11879,11881],{"className":726,"code":11880,"language":728,"meta":546,"style":546},"\u003Ctemplate>\n  \u003Cadmin-select\n    v-model=\"value\"\n    by=\"value\"\n    multiple\n    :display-value=\"(v) => v.label\"\n    :is-error=\"isError\"\n  >\n    \u003Cadmin-select-anchor>\n      \u003Cadmin-select-trigger>\n        \u003Cadmin-select-tags \u002F>\n        \u003Cadmin-select-value placeholder=\"...\" \u002F>\n        \u003Cadmin-select-counter \u002F>\n        \u003Cadmin-select-icon \u002F>\n      \u003C\u002Fadmin-select-trigger>\n    \u003C\u002Fadmin-select-anchor>\n    \u003Cadmin-select-list>\n      \u003Cadmin-select-input placeholder=\"...\">\n        \u003Cadmin-select-cancel \u002F>\n      \u003C\u002Fadmin-select-input>\n      \u003Cadmin-select-viewport>\n        \u003Cadmin-select-empty>無結果\u003C\u002Fadmin-select-empty>\n        \u003Cadmin-select-group heading=\"群組標題\">\n          \u003Cadmin-select-item v-for=\"o in options\" :key=\"o.value\" :value=\"o\">\n            {{ o.label }}\n          \u003C\u002Fadmin-select-item>\n        \u003C\u002Fadmin-select-group>\n        \u003Cadmin-select-separator \u002F>\n      \u003C\u002Fadmin-select-viewport>\n    \u003C\u002Fadmin-select-list>\n  \u003C\u002Fadmin-select>\n\u003C\u002Ftemplate>\n",[548,11882,11883,11891,11898,11910,11923,11928,11942,11956,11960,11969,11978,11987,12006,12015,12024,12032,12040,12049,12068,12077,12085,12094,12112,12132,12174,12179,12188,12196,12205,12213,12221,12230],{"__ignoreMap":546},[551,11884,11885,11887,11889],{"class":553,"line":554},[551,11886,735],{"class":587},[551,11888,739],{"class":738},[551,11890,742],{"class":587},[551,11892,11893,11895],{"class":553,"line":591},[551,11894,747],{"class":587},[551,11896,11897],{"class":738},"admin-select\n",[551,11899,11900,11902,11904,11906,11908],{"class":553,"line":601},[551,11901,4896],{"class":753},[551,11903,757],{"class":587},[551,11905,760],{"class":587},[551,11907,2720],{"class":561},[551,11909,4281],{"class":587},[551,11911,11912,11915,11917,11919,11921],{"class":553,"line":609},[551,11913,11914],{"class":753},"    by",[551,11916,757],{"class":587},[551,11918,760],{"class":587},[551,11920,2720],{"class":561},[551,11922,4281],{"class":587},[551,11924,11925],{"class":553,"line":617},[551,11926,11927],{"class":753},"    multiple\n",[551,11929,11930,11933,11935,11937,11940],{"class":553,"line":625},[551,11931,11932],{"class":753},"    :display-value",[551,11934,757],{"class":587},[551,11936,760],{"class":587},[551,11938,11939],{"class":561},"(v) => v.label",[551,11941,4281],{"class":587},[551,11943,11944,11947,11949,11951,11954],{"class":553,"line":633},[551,11945,11946],{"class":753},"    :is-error",[551,11948,757],{"class":587},[551,11950,760],{"class":587},[551,11952,11953],{"class":561},"isError",[551,11955,4281],{"class":587},[551,11957,11958],{"class":553,"line":641},[551,11959,9184],{"class":587},[551,11961,11962,11964,11967],{"class":553,"line":649},[551,11963,772],{"class":587},[551,11965,11966],{"class":738},"admin-select-anchor",[551,11968,742],{"class":587},[551,11970,11971,11973,11976],{"class":553,"line":657},[551,11972,802],{"class":587},[551,11974,11975],{"class":738},"admin-select-trigger",[551,11977,742],{"class":587},[551,11979,11980,11982,11985],{"class":553,"line":665},[551,11981,812],{"class":587},[551,11983,11984],{"class":738},"admin-select-tags",[551,11986,1449],{"class":587},[551,11988,11989,11991,11994,11996,11998,12000,12002,12004],{"class":553,"line":901},[551,11990,812],{"class":587},[551,11992,11993],{"class":738},"admin-select-value",[551,11995,4864],{"class":753},[551,11997,757],{"class":587},[551,11999,760],{"class":587},[551,12001,1799],{"class":561},[551,12003,760],{"class":587},[551,12005,1449],{"class":587},[551,12007,12008,12010,12013],{"class":553,"line":910},[551,12009,812],{"class":587},[551,12011,12012],{"class":738},"admin-select-counter",[551,12014,1449],{"class":587},[551,12016,12017,12019,12022],{"class":553,"line":920},[551,12018,812],{"class":587},[551,12020,12021],{"class":738},"admin-select-icon",[551,12023,1449],{"class":587},[551,12025,12026,12028,12030],{"class":553,"line":930},[551,12027,849],{"class":587},[551,12029,11975],{"class":738},[551,12031,742],{"class":587},[551,12033,12034,12036,12038],{"class":553,"line":3536},[551,12035,913],{"class":587},[551,12037,11966],{"class":738},[551,12039,742],{"class":587},[551,12041,12042,12044,12047],{"class":553,"line":4422},[551,12043,772],{"class":587},[551,12045,12046],{"class":738},"admin-select-list",[551,12048,742],{"class":587},[551,12050,12051,12053,12056,12058,12060,12062,12064,12066],{"class":553,"line":6194},[551,12052,802],{"class":587},[551,12054,12055],{"class":738},"admin-select-input",[551,12057,4864],{"class":753},[551,12059,757],{"class":587},[551,12061,760],{"class":587},[551,12063,1799],{"class":561},[551,12065,760],{"class":587},[551,12067,742],{"class":587},[551,12069,12070,12072,12075],{"class":553,"line":6204},[551,12071,812],{"class":587},[551,12073,12074],{"class":738},"admin-select-cancel",[551,12076,1449],{"class":587},[551,12078,12079,12081,12083],{"class":553,"line":6223},[551,12080,849],{"class":587},[551,12082,12055],{"class":738},[551,12084,742],{"class":587},[551,12086,12087,12089,12092],{"class":553,"line":6233},[551,12088,802],{"class":587},[551,12090,12091],{"class":738},"admin-select-viewport",[551,12093,742],{"class":587},[551,12095,12096,12098,12101,12103,12106,12108,12110],{"class":553,"line":6242},[551,12097,812],{"class":587},[551,12099,12100],{"class":738},"admin-select-empty",[551,12102,778],{"class":587},[551,12104,12105],{"class":594},"無結果",[551,12107,784],{"class":587},[551,12109,12100],{"class":738},[551,12111,742],{"class":587},[551,12113,12114,12116,12119,12122,12124,12126,12128,12130],{"class":553,"line":6251},[551,12115,812],{"class":587},[551,12117,12118],{"class":738},"admin-select-group",[551,12120,12121],{"class":753}," heading",[551,12123,757],{"class":587},[551,12125,760],{"class":587},[551,12127,5998],{"class":561},[551,12129,760],{"class":587},[551,12131,742],{"class":587},[551,12133,12134,12136,12139,12141,12143,12145,12148,12150,12152,12154,12156,12159,12161,12163,12165,12167,12170,12172],{"class":553,"line":524},[551,12135,6207],{"class":587},[551,12137,12138],{"class":738},"admin-select-item",[551,12140,2887],{"class":753},[551,12142,757],{"class":587},[551,12144,760],{"class":587},[551,12146,12147],{"class":561},"o in options",[551,12149,760],{"class":587},[551,12151,2899],{"class":753},[551,12153,757],{"class":587},[551,12155,760],{"class":587},[551,12157,12158],{"class":561},"o.value",[551,12160,760],{"class":587},[551,12162,2920],{"class":753},[551,12164,757],{"class":587},[551,12166,760],{"class":587},[551,12168,12169],{"class":561},"o",[551,12171,760],{"class":587},[551,12173,742],{"class":587},[551,12175,12176],{"class":553,"line":6864},[551,12177,12178],{"class":594},"            {{ o.label }}\n",[551,12180,12181,12184,12186],{"class":553,"line":6873},[551,12182,12183],{"class":587},"          \u003C\u002F",[551,12185,12138],{"class":738},[551,12187,742],{"class":587},[551,12189,12190,12192,12194],{"class":553,"line":6894},[551,12191,6226],{"class":587},[551,12193,12118],{"class":738},[551,12195,742],{"class":587},[551,12197,12198,12200,12203],{"class":553,"line":6903},[551,12199,812],{"class":587},[551,12201,12202],{"class":738},"admin-select-separator",[551,12204,1449],{"class":587},[551,12206,12207,12209,12211],{"class":553,"line":6912},[551,12208,849],{"class":587},[551,12210,12091],{"class":738},[551,12212,742],{"class":587},[551,12214,12215,12217,12219],{"class":553,"line":6921},[551,12216,913],{"class":587},[551,12218,12046],{"class":738},[551,12220,742],{"class":587},[551,12222,12224,12226,12228],{"class":553,"line":12223},31,[551,12225,923],{"class":587},[551,12227,5925],{"class":738},[551,12229,742],{"class":587},[551,12231,12233,12235,12237],{"class":553,"line":12232},32,[551,12234,784],{"class":587},[551,12236,739],{"class":738},[551,12238,742],{"class":587},[692,12240,5925],{"id":5925},[940,12242],{"component":11822},[692,12244,11966],{"id":11966},[940,12246],{"component":12247},"AdminSelectAnchor",[692,12249,11975],{"id":11975},[940,12251],{"component":12252},"AdminSelectTrigger",[692,12254,11993],{"id":11993},[940,12256],{"component":12257},"AdminSelectValue",[692,12259,12021],{"id":12021},[940,12261],{"component":12262},"AdminSelectIcon",[692,12264,12046],{"id":12046},[940,12266],{"component":12267},"AdminSelectList",[692,12269,12091],{"id":12091},[940,12271],{"component":12272},"AdminSelectViewport",[692,12274,12055],{"id":12055},[940,12276],{"component":12277},"AdminSelectInput",[692,12279,12074],{"id":12074},[940,12281],{"component":12282},"AdminSelectCancel",[692,12284,12100],{"id":12100},[940,12286],{"component":12287},"AdminSelectEmpty",[692,12289,12118],{"id":12118},[940,12291],{"component":12292},"AdminSelectGroup",[692,12294,12138],{"id":12138},[940,12296],{"component":12297},"AdminSelectItem",[692,12299,12300],{"id":12300},"admin-select-item-indicator",[940,12302],{"component":12303},"AdminSelectItemIndicator",[692,12305,12202],{"id":12202},[940,12307],{"component":12308},"AdminSelectSeparator",[692,12310,11984],{"id":11984},[940,12312],{"component":12313},"AdminSelectTags",[692,12315,12012],{"id":12012},[940,12317],{"component":12318},"AdminSelectCounter",[536,12320,1556],{"id":1556},[1558,12322,12323,12336,12356,12375,12390],{},[1561,12324,12325,12332,12333,12335],{},[1135,12326,12327,12328,12331],{},"trigger 需以 ",[548,12329,12330],{},"\u003Cadmin-select-anchor>"," 包覆","：anchor 為 popper 定位錨點，list 的展開位置與寬度以 anchor 為參考；欲設定下拉寬度請把寬度 class 下在 ",[548,12334,12330],{}," 上。",[1561,12337,12338,2466,12341,12344,12345,12348,12349,12352,12353,12355],{},[1135,12339,12340],{},"搜尋輸入固定於 list 頂部",[548,12342,12343],{},"\u003Cadmin-select-input>"," 放在 ",[548,12346,12347],{},"\u003Cadmin-select-list>"," 內、",[548,12350,12351],{},"\u003Cadmin-select-viewport>"," 之外時會固定不隨清單捲動；item 清單放入 ",[548,12354,12351],{}," 提供捲動。",[1561,12357,12358,2466,12364,12366,12367,12370,12371,12374],{},[1135,12359,12360,12361],{},"物件 value 請設 ",[548,12362,12363],{},"by",[548,12365,2724],{}," 綁 option 物件時，建議 ",[548,12368,12369],{},"by=\"value\"","（或自訂比較函式），並以 ",[548,12372,12373],{},":display-value"," 決定 trigger／tags 文案。",[1561,12376,12377,12383,12384,12386,12387,713],{},[1135,12378,12379,12380],{},"單選的 ",[548,12381,12382],{},"deselectable","：預設 ",[548,12385,2742],{},"，再次點擊已選項目會清空選擇並關閉下拉；不需此行為時於 root 設 ",[548,12388,12389],{},"deselectable=false",[1561,12391,12392,12395,12396,7623,12399,12402,12403,12406],{},[1135,12393,12394],{},"搜尋過濾的 label 來源","：過濾依據是每顆 ",[548,12397,12398],{},"\u003Cadmin-select-item>",[548,12400,12401],{},"textContent","；若 item 內嵌入 icon \u002F 圖片等非文字節點，建議透過 ",[548,12404,12405],{},"text-value"," prop 顯式指定可被過濾的字串。",[536,12408,985],{"id":985},[987,12410],{"component":11822},[990,12412,992],{},{"title":546,"searchDepth":601,"depth":601,"links":12414},[12415,12416,12417,12423,12424,12443,12444],{"id":507,"depth":591,"text":507},{"id":683,"depth":591,"text":683},{"id":690,"depth":591,"text":690,"children":12418},[12419,12420,12421,12422],{"id":11792,"depth":601,"text":11792},{"id":11798,"depth":601,"text":11798},{"id":2755,"depth":601,"text":2755},{"id":11809,"depth":601,"text":11809},{"id":2761,"depth":591,"text":2762},{"id":719,"depth":591,"text":720,"children":12425},[12426,12427,12428,12429,12430,12431,12432,12433,12434,12435,12436,12437,12438,12439,12440,12441,12442],{"id":723,"depth":601,"text":723},{"id":5925,"depth":601,"text":5925},{"id":11966,"depth":601,"text":11966},{"id":11975,"depth":601,"text":11975},{"id":11993,"depth":601,"text":11993},{"id":12021,"depth":601,"text":12021},{"id":12046,"depth":601,"text":12046},{"id":12091,"depth":601,"text":12091},{"id":12055,"depth":601,"text":12055},{"id":12074,"depth":601,"text":12074},{"id":12100,"depth":601,"text":12100},{"id":12118,"depth":601,"text":12118},{"id":12138,"depth":601,"text":12138},{"id":12300,"depth":601,"text":12300},{"id":12202,"depth":601,"text":12202},{"id":11984,"depth":601,"text":11984},{"id":12012,"depth":601,"text":12012},{"id":1556,"depth":591,"text":1556},{"id":985,"depth":591,"text":985},"下拉選擇器。單選／多選、選項搜尋、tag 顯示、自訂選項渲染。",{"doc":12447,"api":12448},"https:\u002F\u002Freka-ui.com\u002Fdocs\u002Fcomponents\u002Fcombobox","https:\u002F\u002Freka-ui.com\u002Fdocs\u002Fcomponents\u002Fcombobox#api-reference",{},{"title":125,"description":12445},"IjMFnDd99HhnKZsT1Eca1jrv_DbyJByW5tuc5Gs0WTA",{"id":12453,"title":129,"body":12454,"component":526,"description":13096,"extension":1015,"links":13097,"meta":13099,"navigation":526,"new":18,"path":130,"seo":13100,"stem":131,"wrapperKind":19,"__hash__":13101},"docs\u002Fdocs\u002Fadmin\u002Fside-menu.md",{"type":533,"value":12455,"toc":13059},[12456,12458,12476,12675,12677,12688,12691,12693,12696,12699,12702,12705,12708,12711,12740,12743,12745,12747,12919,12921,12924,12926,12929,12931,12934,12936,12939,12941,12944,12946,12949,12952,12955,12957,12960,12963,12966,12969,12972,12975,12978,12980,12983,12985,12988,12990,12993,12996,12999,13002,13005,13008,13011,13014,13017,13020,13023,13026,13029,13032,13035,13038,13041,13044,13047,13050,13053,13055,13057],[536,12457,507],{"id":507},[539,12459,12461],{"className":541,"code":12460,"filename":543,"language":544,"meta":545,"style":546},"pnpm dlx shadcn-vue add @admin\u002Fside-menu\n",[548,12462,12463],{"__ignoreMap":546},[551,12464,12465,12467,12469,12471,12473],{"class":553,"line":554},[551,12466,558],{"class":557},[551,12468,562],{"class":561},[551,12470,565],{"class":561},[551,12472,568],{"class":561},[551,12474,12475],{"class":561}," @admin\u002Fside-menu\n",[539,12477,12479],{"className":574,"code":12478,"language":576,"meta":546,"style":546},"import {\n  AdminSideMenu,\n  AdminSideMenuContent,\n  AdminSideMenuFooter,\n  AdminSideMenuGroup,\n  AdminSideMenuGroupAction,\n  AdminSideMenuGroupContent,\n  AdminSideMenuGroupLabel,\n  AdminSideMenuHeader,\n  AdminSideMenuInput,\n  AdminSideMenuInset,\n  AdminSideMenuList,\n  AdminSideMenuListAction,\n  AdminSideMenuListBadge,\n  AdminSideMenuListButton,\n  AdminSideMenuListButtonChild,\n  AdminSideMenuListItem,\n  AdminSideMenuListSkeleton,\n  AdminSideMenuListSub,\n  AdminSideMenuListSubButton,\n  AdminSideMenuListSubItem,\n  AdminSideMenuProvider,\n  AdminSideMenuRail,\n  AdminSideMenuSeparator,\n  AdminSideMenuTrigger,\n  useSideMenu,\n} from '@\u002Fcomponents\u002Fadmin\u002Fside-menu'\n",[548,12480,12481,12487,12494,12501,12508,12515,12522,12529,12536,12543,12550,12557,12564,12571,12578,12585,12592,12599,12606,12613,12620,12627,12634,12641,12648,12655,12662],{"__ignoreMap":546},[551,12482,12483,12485],{"class":553,"line":554},[551,12484,584],{"class":583},[551,12486,588],{"class":587},[551,12488,12489,12492],{"class":553,"line":591},[551,12490,12491],{"class":594},"  AdminSideMenu",[551,12493,598],{"class":587},[551,12495,12496,12499],{"class":553,"line":601},[551,12497,12498],{"class":594},"  AdminSideMenuContent",[551,12500,598],{"class":587},[551,12502,12503,12506],{"class":553,"line":609},[551,12504,12505],{"class":594},"  AdminSideMenuFooter",[551,12507,598],{"class":587},[551,12509,12510,12513],{"class":553,"line":617},[551,12511,12512],{"class":594},"  AdminSideMenuGroup",[551,12514,598],{"class":587},[551,12516,12517,12520],{"class":553,"line":625},[551,12518,12519],{"class":594},"  AdminSideMenuGroupAction",[551,12521,598],{"class":587},[551,12523,12524,12527],{"class":553,"line":633},[551,12525,12526],{"class":594},"  AdminSideMenuGroupContent",[551,12528,598],{"class":587},[551,12530,12531,12534],{"class":553,"line":641},[551,12532,12533],{"class":594},"  AdminSideMenuGroupLabel",[551,12535,598],{"class":587},[551,12537,12538,12541],{"class":553,"line":649},[551,12539,12540],{"class":594},"  AdminSideMenuHeader",[551,12542,598],{"class":587},[551,12544,12545,12548],{"class":553,"line":657},[551,12546,12547],{"class":594},"  AdminSideMenuInput",[551,12549,598],{"class":587},[551,12551,12552,12555],{"class":553,"line":665},[551,12553,12554],{"class":594},"  AdminSideMenuInset",[551,12556,598],{"class":587},[551,12558,12559,12562],{"class":553,"line":901},[551,12560,12561],{"class":594},"  AdminSideMenuList",[551,12563,598],{"class":587},[551,12565,12566,12569],{"class":553,"line":910},[551,12567,12568],{"class":594},"  AdminSideMenuListAction",[551,12570,598],{"class":587},[551,12572,12573,12576],{"class":553,"line":920},[551,12574,12575],{"class":594},"  AdminSideMenuListBadge",[551,12577,598],{"class":587},[551,12579,12580,12583],{"class":553,"line":930},[551,12581,12582],{"class":594},"  AdminSideMenuListButton",[551,12584,598],{"class":587},[551,12586,12587,12590],{"class":553,"line":3536},[551,12588,12589],{"class":594},"  AdminSideMenuListButtonChild",[551,12591,598],{"class":587},[551,12593,12594,12597],{"class":553,"line":4422},[551,12595,12596],{"class":594},"  AdminSideMenuListItem",[551,12598,598],{"class":587},[551,12600,12601,12604],{"class":553,"line":6194},[551,12602,12603],{"class":594},"  AdminSideMenuListSkeleton",[551,12605,598],{"class":587},[551,12607,12608,12611],{"class":553,"line":6204},[551,12609,12610],{"class":594},"  AdminSideMenuListSub",[551,12612,598],{"class":587},[551,12614,12615,12618],{"class":553,"line":6223},[551,12616,12617],{"class":594},"  AdminSideMenuListSubButton",[551,12619,598],{"class":587},[551,12621,12622,12625],{"class":553,"line":6233},[551,12623,12624],{"class":594},"  AdminSideMenuListSubItem",[551,12626,598],{"class":587},[551,12628,12629,12632],{"class":553,"line":6242},[551,12630,12631],{"class":594},"  AdminSideMenuProvider",[551,12633,598],{"class":587},[551,12635,12636,12639],{"class":553,"line":6251},[551,12637,12638],{"class":594},"  AdminSideMenuRail",[551,12640,598],{"class":587},[551,12642,12643,12646],{"class":553,"line":524},[551,12644,12645],{"class":594},"  AdminSideMenuSeparator",[551,12647,598],{"class":587},[551,12649,12650,12653],{"class":553,"line":6864},[551,12651,12652],{"class":594},"  AdminSideMenuTrigger",[551,12654,598],{"class":587},[551,12656,12657,12660],{"class":553,"line":6873},[551,12658,12659],{"class":594},"  useSideMenu",[551,12661,598],{"class":587},[551,12663,12664,12666,12668,12670,12673],{"class":553,"line":6894},[551,12665,668],{"class":587},[551,12667,671],{"class":583},[551,12669,674],{"class":587},[551,12671,12672],{"class":561},"@\u002Fcomponents\u002Fadmin\u002Fside-menu",[551,12674,680],{"class":587},[536,12676,683],{"id":683},[705,12678,12679,12680,12683,12684,12687],{},"外層需先以 ",[548,12681,12682],{},"admin-side-menu-provider"," 提供 context，再以 ",[548,12685,12686],{},"admin-side-menu"," 結合 group \u002F list \u002F item \u002F button 組合導覽結構。",[685,12689],{"name":12690},"SideMenuDemo",[536,12692,690],{"id":690},[692,12694,12695],{"id":12695},"基本結構",[685,12697],{"name":12698},"SideMenuStructureDemo",[692,12700,12701],{"id":12701},"完整組成",[705,12703,12704],{},"header／footer／group-label／group-action／list-badge／list-action／separator／input／skeleton。",[685,12706],{"name":12707},"SideMenuFullDemo",[692,12709,12710],{"id":12710},"變體與收合",[705,12712,12713,2466,12715,2470,12717,2470,12720,2477,12723,2466,12726,2470,12729,12732,12733,4159,12736,12739],{},[548,12714,2465],{},[548,12716,4236],{},[548,12718,12719],{},"floating",[548,12721,12722],{},"inset",[548,12724,12725],{},"collapsible",[548,12727,12728],{},"icon",[548,12730,12731],{},"offcanvas","。以 ",[548,12734,12735],{},"admin-side-menu-trigger",[548,12737,12738],{},"admin-side-menu-rail"," 切換展開／收合。",[685,12741],{"name":12742},"SideMenuVariantsDemo",[536,12744,720],{"id":719},[692,12746,723],{"id":723},[539,12748,12750],{"className":726,"code":12749,"language":728,"meta":546,"style":546},"\u003Ctemplate>\n  \u003Cadmin-side-menu-provider>\n    \u003Cadmin-side-menu>\n      \u003Cadmin-side-menu-content>\n        \u003Cadmin-side-menu-group>\n          \u003Cadmin-side-menu-list>\n            \u003Cadmin-side-menu-list-item>\n              \u003Cadmin-side-menu-list-button>導覽項目\u003C\u002Fadmin-side-menu-list-button>\n            \u003C\u002Fadmin-side-menu-list-item>\n          \u003C\u002Fadmin-side-menu-list>\n        \u003C\u002Fadmin-side-menu-group>\n      \u003C\u002Fadmin-side-menu-content>\n    \u003C\u002Fadmin-side-menu>\n    \u003Cadmin-side-menu-inset>\n      \u003Cadmin-side-menu-trigger \u002F>\n      主內容\n    \u003C\u002Fadmin-side-menu-inset>\n  \u003C\u002Fadmin-side-menu-provider>\n\u003C\u002Ftemplate>\n",[548,12751,12752,12760,12768,12776,12785,12794,12803,12813,12832,12841,12849,12857,12865,12873,12882,12890,12895,12903,12911],{"__ignoreMap":546},[551,12753,12754,12756,12758],{"class":553,"line":554},[551,12755,735],{"class":587},[551,12757,739],{"class":738},[551,12759,742],{"class":587},[551,12761,12762,12764,12766],{"class":553,"line":591},[551,12763,747],{"class":587},[551,12765,12682],{"class":738},[551,12767,742],{"class":587},[551,12769,12770,12772,12774],{"class":553,"line":601},[551,12771,772],{"class":587},[551,12773,12686],{"class":738},[551,12775,742],{"class":587},[551,12777,12778,12780,12783],{"class":553,"line":609},[551,12779,802],{"class":587},[551,12781,12782],{"class":738},"admin-side-menu-content",[551,12784,742],{"class":587},[551,12786,12787,12789,12792],{"class":553,"line":617},[551,12788,812],{"class":587},[551,12790,12791],{"class":738},"admin-side-menu-group",[551,12793,742],{"class":587},[551,12795,12796,12798,12801],{"class":553,"line":625},[551,12797,6207],{"class":587},[551,12799,12800],{"class":738},"admin-side-menu-list",[551,12802,742],{"class":587},[551,12804,12805,12808,12811],{"class":553,"line":633},[551,12806,12807],{"class":587},"            \u003C",[551,12809,12810],{"class":738},"admin-side-menu-list-item",[551,12812,742],{"class":587},[551,12814,12815,12818,12821,12823,12826,12828,12830],{"class":553,"line":641},[551,12816,12817],{"class":587},"              \u003C",[551,12819,12820],{"class":738},"admin-side-menu-list-button",[551,12822,778],{"class":587},[551,12824,12825],{"class":594},"導覽項目",[551,12827,784],{"class":587},[551,12829,12820],{"class":738},[551,12831,742],{"class":587},[551,12833,12834,12837,12839],{"class":553,"line":649},[551,12835,12836],{"class":587},"            \u003C\u002F",[551,12838,12810],{"class":738},[551,12840,742],{"class":587},[551,12842,12843,12845,12847],{"class":553,"line":657},[551,12844,12183],{"class":587},[551,12846,12800],{"class":738},[551,12848,742],{"class":587},[551,12850,12851,12853,12855],{"class":553,"line":665},[551,12852,6226],{"class":587},[551,12854,12791],{"class":738},[551,12856,742],{"class":587},[551,12858,12859,12861,12863],{"class":553,"line":901},[551,12860,849],{"class":587},[551,12862,12782],{"class":738},[551,12864,742],{"class":587},[551,12866,12867,12869,12871],{"class":553,"line":910},[551,12868,913],{"class":587},[551,12870,12686],{"class":738},[551,12872,742],{"class":587},[551,12874,12875,12877,12880],{"class":553,"line":920},[551,12876,772],{"class":587},[551,12878,12879],{"class":738},"admin-side-menu-inset",[551,12881,742],{"class":587},[551,12883,12884,12886,12888],{"class":553,"line":930},[551,12885,802],{"class":587},[551,12887,12735],{"class":738},[551,12889,1449],{"class":587},[551,12891,12892],{"class":553,"line":3536},[551,12893,12894],{"class":594},"      主內容\n",[551,12896,12897,12899,12901],{"class":553,"line":4422},[551,12898,913],{"class":587},[551,12900,12879],{"class":738},[551,12902,742],{"class":587},[551,12904,12905,12907,12909],{"class":553,"line":6194},[551,12906,923],{"class":587},[551,12908,12682],{"class":738},[551,12910,742],{"class":587},[551,12912,12913,12915,12917],{"class":553,"line":6204},[551,12914,784],{"class":587},[551,12916,739],{"class":738},[551,12918,742],{"class":587},[692,12920,12686],{"id":12686},[940,12922],{"component":12923},"AdminSideMenu",[692,12925,12782],{"id":12782},[940,12927],{"component":12928},"AdminSideMenuContent",[692,12930,12791],{"id":12791},[940,12932],{"component":12933},"AdminSideMenuGroup",[692,12935,12879],{"id":12879},[940,12937],{"component":12938},"AdminSideMenuInset",[692,12940,12800],{"id":12800},[940,12942],{"component":12943},"AdminSideMenuList",[692,12945,12820],{"id":12820},[940,12947],{"component":12948},"AdminSideMenuListButton",[692,12950,12951],{"id":12951},"admin-side-menu-list-button-child",[940,12953],{"component":12954},"AdminSideMenuListButtonChild",[692,12956,12810],{"id":12810},[940,12958],{"component":12959},"AdminSideMenuListItem",[692,12961,12962],{"id":12962},"admin-side-menu-list-sub",[940,12964],{"component":12965},"AdminSideMenuListSub",[692,12967,12968],{"id":12968},"admin-side-menu-list-sub-button",[940,12970],{"component":12971},"AdminSideMenuListSubButton",[692,12973,12974],{"id":12974},"admin-side-menu-list-sub-item",[940,12976],{"component":12977},"AdminSideMenuListSubItem",[692,12979,12682],{"id":12682},[940,12981],{"component":12982},"AdminSideMenuProvider",[692,12984,12735],{"id":12735},[940,12986],{"component":12987},"AdminSideMenuTrigger",[692,12989,12738],{"id":12738},[940,12991],{"component":12992},"AdminSideMenuRail",[692,12994,12995],{"id":12995},"admin-side-menu-header",[940,12997],{"component":12998},"AdminSideMenuHeader",[692,13000,13001],{"id":13001},"admin-side-menu-footer",[940,13003],{"component":13004},"AdminSideMenuFooter",[692,13006,13007],{"id":13007},"admin-side-menu-group-label",[940,13009],{"component":13010},"AdminSideMenuGroupLabel",[692,13012,13013],{"id":13013},"admin-side-menu-group-content",[940,13015],{"component":13016},"AdminSideMenuGroupContent",[692,13018,13019],{"id":13019},"admin-side-menu-group-action",[940,13021],{"component":13022},"AdminSideMenuGroupAction",[692,13024,13025],{"id":13025},"admin-side-menu-list-action",[940,13027],{"component":13028},"AdminSideMenuListAction",[692,13030,13031],{"id":13031},"admin-side-menu-list-badge",[940,13033],{"component":13034},"AdminSideMenuListBadge",[692,13036,13037],{"id":13037},"admin-side-menu-input",[940,13039],{"component":13040},"AdminSideMenuInput",[692,13042,13043],{"id":13043},"admin-side-menu-separator",[940,13045],{"component":13046},"AdminSideMenuSeparator",[692,13048,13049],{"id":13049},"admin-side-menu-list-skeleton",[940,13051],{"component":13052},"AdminSideMenuListSkeleton",[536,13054,985],{"id":985},[987,13056],{"component":12923},[990,13058,2019],{},{"title":546,"searchDepth":601,"depth":601,"links":13060},[13061,13062,13063,13068,13095],{"id":507,"depth":591,"text":507},{"id":683,"depth":591,"text":683},{"id":690,"depth":591,"text":690,"children":13064},[13065,13066,13067],{"id":12695,"depth":601,"text":12695},{"id":12701,"depth":601,"text":12701},{"id":12710,"depth":601,"text":12710},{"id":719,"depth":591,"text":720,"children":13069},[13070,13071,13072,13073,13074,13075,13076,13077,13078,13079,13080,13081,13082,13083,13084,13085,13086,13087,13088,13089,13090,13091,13092,13093,13094],{"id":723,"depth":601,"text":723},{"id":12686,"depth":601,"text":12686},{"id":12782,"depth":601,"text":12782},{"id":12791,"depth":601,"text":12791},{"id":12879,"depth":601,"text":12879},{"id":12800,"depth":601,"text":12800},{"id":12820,"depth":601,"text":12820},{"id":12951,"depth":601,"text":12951},{"id":12810,"depth":601,"text":12810},{"id":12962,"depth":601,"text":12962},{"id":12968,"depth":601,"text":12968},{"id":12974,"depth":601,"text":12974},{"id":12682,"depth":601,"text":12682},{"id":12735,"depth":601,"text":12735},{"id":12738,"depth":601,"text":12738},{"id":12995,"depth":601,"text":12995},{"id":13001,"depth":601,"text":13001},{"id":13007,"depth":601,"text":13007},{"id":13013,"depth":601,"text":13013},{"id":13019,"depth":601,"text":13019},{"id":13025,"depth":601,"text":13025},{"id":13031,"depth":601,"text":13031},{"id":13037,"depth":601,"text":13037},{"id":13043,"depth":601,"text":13043},{"id":13049,"depth":601,"text":13049},{"id":985,"depth":591,"text":985},"後台側邊導覽。展開／收合、分組、巢狀子項目、行動裝置抽屜。",{"doc":13098},"https:\u002F\u002Fwww.shadcn-vue.com\u002Fdocs\u002Fcomponents\u002Fsidebar",{},{"title":129,"description":13096},"p0ZIeYXY3zkCbZRvSSO6bqmzckkKgbvFJYvshowJTdE",{"id":13103,"title":133,"body":13104,"component":526,"description":13549,"extension":1015,"links":13550,"meta":13553,"navigation":526,"new":18,"path":134,"seo":13554,"stem":135,"wrapperKind":19,"__hash__":13555},"docs\u002Fdocs\u002Fadmin\u002Fstepper.md",{"type":533,"value":13105,"toc":13529},[13106,13108,13126,13199,13201,13204,13206,13209,13212,13215,13218,13221,13224,13226,13228,13488,13490,13493,13495,13498,13500,13503,13505,13508,13510,13513,13515,13518,13520,13523,13525,13527],[536,13107,507],{"id":507},[539,13109,13111],{"className":541,"code":13110,"filename":543,"language":544,"meta":545,"style":546},"pnpm dlx shadcn-vue add @admin\u002Fstepper\n",[548,13112,13113],{"__ignoreMap":546},[551,13114,13115,13117,13119,13121,13123],{"class":553,"line":554},[551,13116,558],{"class":557},[551,13118,562],{"class":561},[551,13120,565],{"class":561},[551,13122,568],{"class":561},[551,13124,13125],{"class":561}," @admin\u002Fstepper\n",[539,13127,13129],{"className":574,"code":13128,"language":576,"meta":546,"style":546},"import {\n  AdminStepper,\n  AdminStepperDescription,\n  AdminStepperIndicator,\n  AdminStepperItem,\n  AdminStepperSeparator,\n  AdminStepperTitle,\n  AdminStepperTrigger,\n} from '@\u002Fcomponents\u002Fadmin\u002Fstepper'\n",[548,13130,13131,13137,13144,13151,13158,13165,13172,13179,13186],{"__ignoreMap":546},[551,13132,13133,13135],{"class":553,"line":554},[551,13134,584],{"class":583},[551,13136,588],{"class":587},[551,13138,13139,13142],{"class":553,"line":591},[551,13140,13141],{"class":594},"  AdminStepper",[551,13143,598],{"class":587},[551,13145,13146,13149],{"class":553,"line":601},[551,13147,13148],{"class":594},"  AdminStepperDescription",[551,13150,598],{"class":587},[551,13152,13153,13156],{"class":553,"line":609},[551,13154,13155],{"class":594},"  AdminStepperIndicator",[551,13157,598],{"class":587},[551,13159,13160,13163],{"class":553,"line":617},[551,13161,13162],{"class":594},"  AdminStepperItem",[551,13164,598],{"class":587},[551,13166,13167,13170],{"class":553,"line":625},[551,13168,13169],{"class":594},"  AdminStepperSeparator",[551,13171,598],{"class":587},[551,13173,13174,13177],{"class":553,"line":633},[551,13175,13176],{"class":594},"  AdminStepperTitle",[551,13178,598],{"class":587},[551,13180,13181,13184],{"class":553,"line":641},[551,13182,13183],{"class":594},"  AdminStepperTrigger",[551,13185,598],{"class":587},[551,13187,13188,13190,13192,13194,13197],{"class":553,"line":649},[551,13189,668],{"class":587},[551,13191,671],{"class":583},[551,13193,674],{"class":587},[551,13195,13196],{"class":561},"@\u002Fcomponents\u002Fadmin\u002Fstepper",[551,13198,680],{"class":587},[536,13200,683],{"id":683},[685,13202],{"name":13203},"StepperDemo",[536,13205,690],{"id":690},[692,13207,13208],{"id":13208},"線性三步驟",[685,13210],{"name":13211},"StepperLinearDemo",[692,13213,13214],{"id":13214},"停用尚未開放的步驟",[685,13216],{"name":13217},"StepperDisabledDemo",[692,13219,13220],{"id":13220},"步驟附說明文字",[685,13222],{"name":13223},"StepperDescriptionDemo",[536,13225,720],{"id":719},[692,13227,723],{"id":723},[539,13229,13231],{"className":726,"code":13230,"language":728,"meta":546,"style":546},"\u003Ctemplate>\n  \u003Cadmin-stepper v-model=\"currentStep\">\n    \u003Cadmin-stepper-item :step=\"1\">\n      \u003Cadmin-stepper-trigger>\n        \u003Cadmin-stepper-indicator>1\u003C\u002Fadmin-stepper-indicator>\n        \u003Cdiv class=\"flex flex-col items-start\">\n          \u003Cadmin-stepper-title>步驟一\u003C\u002Fadmin-stepper-title>\n          \u003Cadmin-stepper-description>建立登入資訊\u003C\u002Fadmin-stepper-description>\n        \u003C\u002Fdiv>\n      \u003C\u002Fadmin-stepper-trigger>\n    \u003C\u002Fadmin-stepper-item>\n    \u003Cadmin-stepper-separator \u002F>\n    \u003Cadmin-stepper-item :step=\"2\">\n      \u003Cadmin-stepper-trigger>\n        \u003Cadmin-stepper-indicator>2\u003C\u002Fadmin-stepper-indicator>\n        \u003Cadmin-stepper-title>步驟二\u003C\u002Fadmin-stepper-title>\n      \u003C\u002Fadmin-stepper-trigger>\n    \u003C\u002Fadmin-stepper-item>\n  \u003C\u002Fadmin-stepper>\n\u003C\u002Ftemplate>\n",[548,13232,13233,13241,13260,13280,13289,13306,13327,13345,13363,13371,13379,13387,13396,13415,13423,13439,13456,13464,13472,13480],{"__ignoreMap":546},[551,13234,13235,13237,13239],{"class":553,"line":554},[551,13236,735],{"class":587},[551,13238,739],{"class":738},[551,13240,742],{"class":587},[551,13242,13243,13245,13247,13249,13251,13253,13256,13258],{"class":553,"line":591},[551,13244,747],{"class":587},[551,13246,4136],{"class":738},[551,13248,2867],{"class":753},[551,13250,757],{"class":587},[551,13252,760],{"class":587},[551,13254,13255],{"class":561},"currentStep",[551,13257,760],{"class":587},[551,13259,742],{"class":587},[551,13261,13262,13264,13267,13270,13272,13274,13276,13278],{"class":553,"line":601},[551,13263,772],{"class":587},[551,13265,13266],{"class":738},"admin-stepper-item",[551,13268,13269],{"class":753}," :step",[551,13271,757],{"class":587},[551,13273,760],{"class":587},[551,13275,1637],{"class":561},[551,13277,760],{"class":587},[551,13279,742],{"class":587},[551,13281,13282,13284,13287],{"class":553,"line":609},[551,13283,802],{"class":587},[551,13285,13286],{"class":738},"admin-stepper-trigger",[551,13288,742],{"class":587},[551,13290,13291,13293,13296,13298,13300,13302,13304],{"class":553,"line":617},[551,13292,812],{"class":587},[551,13294,13295],{"class":738},"admin-stepper-indicator",[551,13297,778],{"class":587},[551,13299,1637],{"class":594},[551,13301,784],{"class":587},[551,13303,13295],{"class":738},[551,13305,742],{"class":587},[551,13307,13308,13310,13313,13316,13318,13320,13323,13325],{"class":553,"line":625},[551,13309,812],{"class":587},[551,13311,13312],{"class":738},"div",[551,13314,13315],{"class":753}," class",[551,13317,757],{"class":587},[551,13319,760],{"class":587},[551,13321,13322],{"class":561},"flex flex-col items-start",[551,13324,760],{"class":587},[551,13326,742],{"class":587},[551,13328,13329,13331,13334,13336,13339,13341,13343],{"class":553,"line":633},[551,13330,6207],{"class":587},[551,13332,13333],{"class":738},"admin-stepper-title",[551,13335,778],{"class":587},[551,13337,13338],{"class":594},"步驟一",[551,13340,784],{"class":587},[551,13342,13333],{"class":738},[551,13344,742],{"class":587},[551,13346,13347,13349,13352,13354,13357,13359,13361],{"class":553,"line":641},[551,13348,6207],{"class":587},[551,13350,13351],{"class":738},"admin-stepper-description",[551,13353,778],{"class":587},[551,13355,13356],{"class":594},"建立登入資訊",[551,13358,784],{"class":587},[551,13360,13351],{"class":738},[551,13362,742],{"class":587},[551,13364,13365,13367,13369],{"class":553,"line":649},[551,13366,6226],{"class":587},[551,13368,13312],{"class":738},[551,13370,742],{"class":587},[551,13372,13373,13375,13377],{"class":553,"line":657},[551,13374,849],{"class":587},[551,13376,13286],{"class":738},[551,13378,742],{"class":587},[551,13380,13381,13383,13385],{"class":553,"line":665},[551,13382,913],{"class":587},[551,13384,13266],{"class":738},[551,13386,742],{"class":587},[551,13388,13389,13391,13394],{"class":553,"line":901},[551,13390,772],{"class":587},[551,13392,13393],{"class":738},"admin-stepper-separator",[551,13395,1449],{"class":587},[551,13397,13398,13400,13402,13404,13406,13408,13411,13413],{"class":553,"line":910},[551,13399,772],{"class":587},[551,13401,13266],{"class":738},[551,13403,13269],{"class":753},[551,13405,757],{"class":587},[551,13407,760],{"class":587},[551,13409,13410],{"class":561},"2",[551,13412,760],{"class":587},[551,13414,742],{"class":587},[551,13416,13417,13419,13421],{"class":553,"line":920},[551,13418,802],{"class":587},[551,13420,13286],{"class":738},[551,13422,742],{"class":587},[551,13424,13425,13427,13429,13431,13433,13435,13437],{"class":553,"line":930},[551,13426,812],{"class":587},[551,13428,13295],{"class":738},[551,13430,778],{"class":587},[551,13432,13410],{"class":594},[551,13434,784],{"class":587},[551,13436,13295],{"class":738},[551,13438,742],{"class":587},[551,13440,13441,13443,13445,13447,13450,13452,13454],{"class":553,"line":3536},[551,13442,812],{"class":587},[551,13444,13333],{"class":738},[551,13446,778],{"class":587},[551,13448,13449],{"class":594},"步驟二",[551,13451,784],{"class":587},[551,13453,13333],{"class":738},[551,13455,742],{"class":587},[551,13457,13458,13460,13462],{"class":553,"line":4422},[551,13459,849],{"class":587},[551,13461,13286],{"class":738},[551,13463,742],{"class":587},[551,13465,13466,13468,13470],{"class":553,"line":6194},[551,13467,913],{"class":587},[551,13469,13266],{"class":738},[551,13471,742],{"class":587},[551,13473,13474,13476,13478],{"class":553,"line":6204},[551,13475,923],{"class":587},[551,13477,4136],{"class":738},[551,13479,742],{"class":587},[551,13481,13482,13484,13486],{"class":553,"line":6223},[551,13483,784],{"class":587},[551,13485,739],{"class":738},[551,13487,742],{"class":587},[692,13489,4136],{"id":4136},[940,13491],{"component":13492},"AdminStepper",[692,13494,13266],{"id":13266},[940,13496],{"component":13497},"AdminStepperItem",[692,13499,13286],{"id":13286},[940,13501],{"component":13502},"AdminStepperTrigger",[692,13504,13295],{"id":13295},[940,13506],{"component":13507},"AdminStepperIndicator",[692,13509,13333],{"id":13333},[940,13511],{"component":13512},"AdminStepperTitle",[692,13514,13351],{"id":13351},[940,13516],{"component":13517},"AdminStepperDescription",[692,13519,13393],{"id":13393},[940,13521],{"component":13522},"AdminStepperSeparator",[536,13524,985],{"id":985},[987,13526],{"component":13492},[990,13528,992],{},{"title":546,"searchDepth":601,"depth":601,"links":13530},[13531,13532,13533,13538,13548],{"id":507,"depth":591,"text":507},{"id":683,"depth":591,"text":683},{"id":690,"depth":591,"text":690,"children":13534},[13535,13536,13537],{"id":13208,"depth":601,"text":13208},{"id":13214,"depth":601,"text":13214},{"id":13220,"depth":601,"text":13220},{"id":719,"depth":591,"text":720,"children":13539},[13540,13541,13542,13543,13544,13545,13546,13547],{"id":723,"depth":601,"text":723},{"id":4136,"depth":601,"text":4136},{"id":13266,"depth":601,"text":13266},{"id":13286,"depth":601,"text":13286},{"id":13295,"depth":601,"text":13295},{"id":13333,"depth":601,"text":13333},{"id":13351,"depth":601,"text":13351},{"id":13393,"depth":601,"text":13393},{"id":985,"depth":591,"text":985},"多步驟進度指示器。目前步驟與整體流程狀態。",{"doc":13551,"api":13552},"https:\u002F\u002Freka-ui.com\u002Fdocs\u002Fcomponents\u002Fstepper","https:\u002F\u002Freka-ui.com\u002Fdocs\u002Fcomponents\u002Fstepper#api-reference",{},{"title":133,"description":13549},"8r9s3KLnVLpELw2P7pI5D4l5dRbxJksnUvAW13TZx74",{"id":13557,"title":137,"body":13558,"component":526,"description":13690,"extension":1015,"links":13691,"meta":13694,"navigation":526,"new":18,"path":138,"seo":13695,"stem":139,"wrapperKind":19,"__hash__":13696},"docs\u002Fdocs\u002Fadmin\u002Fswitch.md",{"type":533,"value":13559,"toc":13677},[13560,13562,13580,13605,13607,13610,13612,13615,13618,13620,13623,13625,13627,13666,13668,13671,13673,13675],[536,13561,507],{"id":507},[539,13563,13565],{"className":541,"code":13564,"filename":543,"language":544,"meta":545,"style":546},"pnpm dlx shadcn-vue add @admin\u002Fswitch\n",[548,13566,13567],{"__ignoreMap":546},[551,13568,13569,13571,13573,13575,13577],{"class":553,"line":554},[551,13570,558],{"class":557},[551,13572,562],{"class":561},[551,13574,565],{"class":561},[551,13576,568],{"class":561},[551,13578,13579],{"class":561}," @admin\u002Fswitch\n",[539,13581,13583],{"className":574,"code":13582,"language":576,"meta":546,"style":546},"import { AdminSwitch } from '@\u002Fcomponents\u002Fadmin\u002Fswitch'\n",[548,13584,13585],{"__ignoreMap":546},[551,13586,13587,13589,13591,13594,13596,13598,13600,13603],{"class":553,"line":554},[551,13588,584],{"class":583},[551,13590,1273],{"class":587},[551,13592,13593],{"class":594}," AdminSwitch",[551,13595,1279],{"class":587},[551,13597,671],{"class":583},[551,13599,674],{"class":587},[551,13601,13602],{"class":561},"@\u002Fcomponents\u002Fadmin\u002Fswitch",[551,13604,680],{"class":587},[536,13606,683],{"id":683},[685,13608],{"name":13609},"SwitchDemo",[536,13611,690],{"id":690},[692,13613,13614],{"id":13614},"帶文字標籤",[685,13616],{"name":13617},"SwitchLabelDemo",[692,13619,3202],{"id":3202},[685,13621],{"name":13622},"SwitchDisabledDemo",[536,13624,720],{"id":719},[692,13626,723],{"id":723},[539,13628,13630],{"className":726,"code":13629,"language":728,"meta":546,"style":546},"\u003Ctemplate>\n  \u003Cadmin-switch v-model=\"value\" \u002F>\n\u003C\u002Ftemplate>\n",[548,13631,13632,13640,13658],{"__ignoreMap":546},[551,13633,13634,13636,13638],{"class":553,"line":554},[551,13635,735],{"class":587},[551,13637,739],{"class":738},[551,13639,742],{"class":587},[551,13641,13642,13644,13646,13648,13650,13652,13654,13656],{"class":553,"line":591},[551,13643,747],{"class":587},[551,13645,6878],{"class":738},[551,13647,2867],{"class":753},[551,13649,757],{"class":587},[551,13651,760],{"class":587},[551,13653,2720],{"class":561},[551,13655,760],{"class":587},[551,13657,1449],{"class":587},[551,13659,13660,13662,13664],{"class":553,"line":601},[551,13661,784],{"class":587},[551,13663,739],{"class":738},[551,13665,742],{"class":587},[692,13667,6878],{"id":6878},[940,13669],{"component":13670},"AdminSwitch",[536,13672,985],{"id":985},[987,13674],{"component":13670},[990,13676,992],{},{"title":546,"searchDepth":601,"depth":601,"links":13678},[13679,13680,13681,13685,13689],{"id":507,"depth":591,"text":507},{"id":683,"depth":591,"text":683},{"id":690,"depth":591,"text":690,"children":13682},[13683,13684],{"id":13614,"depth":601,"text":13614},{"id":3202,"depth":601,"text":3202},{"id":719,"depth":591,"text":720,"children":13686},[13687,13688],{"id":723,"depth":601,"text":723},{"id":6878,"depth":601,"text":6878},{"id":985,"depth":591,"text":985},"布林狀態開關。",{"doc":13692,"api":13693},"https:\u002F\u002Freka-ui.com\u002Fdocs\u002Fcomponents\u002Fswitch","https:\u002F\u002Freka-ui.com\u002Fdocs\u002Fcomponents\u002Fswitch#api-reference",{},{"title":137,"description":13690},"-x2ELiedMBJAXi0TkXzFSQTIXtMXonyqZCgf_S9uerU",{"id":13698,"title":141,"body":13699,"component":526,"description":14090,"extension":1015,"links":14091,"meta":14094,"navigation":526,"new":18,"path":142,"seo":14095,"stem":143,"wrapperKind":19,"__hash__":14096},"docs\u002Fdocs\u002Fadmin\u002Ftabs.md",{"type":533,"value":13700,"toc":14074},[13701,13703,13721,13773,13775,13778,13780,13783,13786,13788,13810,13836,13848,13852,13864,13867,13869,13871,14049,14051,14053,14055,14058,14060,14063,14065,14068,14070,14072],[536,13702,507],{"id":507},[539,13704,13706],{"className":541,"code":13705,"filename":543,"language":544,"meta":545,"style":546},"pnpm dlx shadcn-vue add @admin\u002Ftabs\n",[548,13707,13708],{"__ignoreMap":546},[551,13709,13710,13712,13714,13716,13718],{"class":553,"line":554},[551,13711,558],{"class":557},[551,13713,562],{"class":561},[551,13715,565],{"class":561},[551,13717,568],{"class":561},[551,13719,13720],{"class":561}," @admin\u002Ftabs\n",[539,13722,13724],{"className":574,"code":13723,"language":576,"meta":546,"style":546},"import {\n  AdminTabs,\n  AdminTabsContent,\n  AdminTabsList,\n  AdminTabsTrigger,\n} from '@\u002Fcomponents\u002Fadmin\u002Ftabs'\n",[548,13725,13726,13732,13739,13746,13753,13760],{"__ignoreMap":546},[551,13727,13728,13730],{"class":553,"line":554},[551,13729,584],{"class":583},[551,13731,588],{"class":587},[551,13733,13734,13737],{"class":553,"line":591},[551,13735,13736],{"class":594},"  AdminTabs",[551,13738,598],{"class":587},[551,13740,13741,13744],{"class":553,"line":601},[551,13742,13743],{"class":594},"  AdminTabsContent",[551,13745,598],{"class":587},[551,13747,13748,13751],{"class":553,"line":609},[551,13749,13750],{"class":594},"  AdminTabsList",[551,13752,598],{"class":587},[551,13754,13755,13758],{"class":553,"line":617},[551,13756,13757],{"class":594},"  AdminTabsTrigger",[551,13759,598],{"class":587},[551,13761,13762,13764,13766,13768,13771],{"class":553,"line":625},[551,13763,668],{"class":587},[551,13765,671],{"class":583},[551,13767,674],{"class":587},[551,13769,13770],{"class":561},"@\u002Fcomponents\u002Fadmin\u002Ftabs",[551,13772,680],{"class":587},[536,13774,683],{"id":683},[685,13776],{"name":13777},"TabsDemo",[536,13779,690],{"id":690},[692,13781,13782],{"id":13782},"受控模式",[685,13784],{"name":13785},"TabsControlledDemo",[536,13787,2762],{"id":2761},[705,13789,13790,2768,13793,2772,13796,13798,13799,2779,13801,2783,13803,13805,13806,13809],{},[548,13791,13792],{},"AdminTabs",[548,13794,13795],{},"T extends StringOrNumber",[548,13797,2724],{}," 即可收斂為 tab value 的 literal union。若要讓 value 與清單對齊、並讓每個 tab 的內容仍保有完整彈性，可自行封裝：傳入 ",[548,13800,7361],{},[548,13802,2782],{},[548,13804,7361],{}," 為單一事實來源渲染各 trigger 與 content shell，content 由使用端以 ",[548,13807,13808],{},"#panel-\u003Cvalue>"," 具名 slot 填入。",[705,13811,2789,13812,13814,13815,2795,13817,1613,13819,2801,13821,13823,13824,13827,13828,13831,13832,13835],{},[548,13813,7361],{}," 即聯集來源，各 trigger 的 ",[548,13816,2720],{},[548,13818,2724],{},[548,13820,2800],{},[548,13822,7361],{}," 的 value union（允許 ",[548,13825,13826],{},"undefined"," 表未選）。封裝再以 ",[548,13829,13830],{},"defineSlots"," 將 content slot 收斂為 ",[548,13833,13834],{},"panel-\u003Cvalue>"," 聯集，填入不在清單內的 slot 名亦會編譯期報錯。",[2806,13837,13838],{},[705,13839,13840,13841,2470,13844,13847],{},"此食譜刻意精簡，未透出 trigger 的 ",[548,13842,13843],{},"badge",[548,13845,13846],{},"badgeValue","；需要時可自行 fork 擴充。封裝元件僅為文件示範，不屬 registry 安裝產物。",[2812,13849],{"name":13850,"title":13851},"TypedAdminTabsDemo","TypedAdminTabs.vue",[2817,13853,13854],{"title":2819,"type":2820},[705,13855,2823,13856,2827,13858,2831,13860,2834,13862,2838],{},[548,13857,2826],{},[548,13859,2830],{},[697,13861,515],{"href":516},[548,13863,2837],{},[2812,13865],{"name":13866},"TabsTypeSafeDemo",[536,13868,720],{"id":719},[692,13870,723],{"id":723},[539,13872,13874],{"className":726,"code":13873,"language":728,"meta":546,"style":546},"\u003Ctemplate>\n  \u003Cadmin-tabs default-value=\"overview\">\n    \u003Cadmin-tabs-list>\n      \u003Cadmin-tabs-trigger value=\"overview\">概覽\u003C\u002Fadmin-tabs-trigger>\n      \u003Cadmin-tabs-trigger value=\"details\">明細\u003C\u002Fadmin-tabs-trigger>\n    \u003C\u002Fadmin-tabs-list>\n    \u003Cadmin-tabs-content value=\"overview\">概覽內容\u003C\u002Fadmin-tabs-content>\n    \u003Cadmin-tabs-content value=\"details\">明細內容\u003C\u002Fadmin-tabs-content>\n  \u003C\u002Fadmin-tabs>\n\u003C\u002Ftemplate>\n",[548,13875,13876,13884,13905,13914,13942,13970,13978,14006,14033,14041],{"__ignoreMap":546},[551,13877,13878,13880,13882],{"class":553,"line":554},[551,13879,735],{"class":587},[551,13881,739],{"class":738},[551,13883,742],{"class":587},[551,13885,13886,13888,13891,13894,13896,13898,13901,13903],{"class":553,"line":591},[551,13887,747],{"class":587},[551,13889,13890],{"class":738},"admin-tabs",[551,13892,13893],{"class":753}," default-value",[551,13895,757],{"class":587},[551,13897,760],{"class":587},[551,13899,13900],{"class":561},"overview",[551,13902,760],{"class":587},[551,13904,742],{"class":587},[551,13906,13907,13909,13912],{"class":553,"line":601},[551,13908,772],{"class":587},[551,13910,13911],{"class":738},"admin-tabs-list",[551,13913,742],{"class":587},[551,13915,13916,13918,13921,13923,13925,13927,13929,13931,13933,13936,13938,13940],{"class":553,"line":609},[551,13917,802],{"class":587},[551,13919,13920],{"class":738},"admin-tabs-trigger",[551,13922,3336],{"class":753},[551,13924,757],{"class":587},[551,13926,760],{"class":587},[551,13928,13900],{"class":561},[551,13930,760],{"class":587},[551,13932,778],{"class":587},[551,13934,13935],{"class":594},"概覽",[551,13937,784],{"class":587},[551,13939,13920],{"class":738},[551,13941,742],{"class":587},[551,13943,13944,13946,13948,13950,13952,13954,13957,13959,13961,13964,13966,13968],{"class":553,"line":617},[551,13945,802],{"class":587},[551,13947,13920],{"class":738},[551,13949,3336],{"class":753},[551,13951,757],{"class":587},[551,13953,760],{"class":587},[551,13955,13956],{"class":561},"details",[551,13958,760],{"class":587},[551,13960,778],{"class":587},[551,13962,13963],{"class":594},"明細",[551,13965,784],{"class":587},[551,13967,13920],{"class":738},[551,13969,742],{"class":587},[551,13971,13972,13974,13976],{"class":553,"line":625},[551,13973,913],{"class":587},[551,13975,13911],{"class":738},[551,13977,742],{"class":587},[551,13979,13980,13982,13985,13987,13989,13991,13993,13995,13997,14000,14002,14004],{"class":553,"line":633},[551,13981,772],{"class":587},[551,13983,13984],{"class":738},"admin-tabs-content",[551,13986,3336],{"class":753},[551,13988,757],{"class":587},[551,13990,760],{"class":587},[551,13992,13900],{"class":561},[551,13994,760],{"class":587},[551,13996,778],{"class":587},[551,13998,13999],{"class":594},"概覽內容",[551,14001,784],{"class":587},[551,14003,13984],{"class":738},[551,14005,742],{"class":587},[551,14007,14008,14010,14012,14014,14016,14018,14020,14022,14024,14027,14029,14031],{"class":553,"line":641},[551,14009,772],{"class":587},[551,14011,13984],{"class":738},[551,14013,3336],{"class":753},[551,14015,757],{"class":587},[551,14017,760],{"class":587},[551,14019,13956],{"class":561},[551,14021,760],{"class":587},[551,14023,778],{"class":587},[551,14025,14026],{"class":594},"明細內容",[551,14028,784],{"class":587},[551,14030,13984],{"class":738},[551,14032,742],{"class":587},[551,14034,14035,14037,14039],{"class":553,"line":649},[551,14036,923],{"class":587},[551,14038,13890],{"class":738},[551,14040,742],{"class":587},[551,14042,14043,14045,14047],{"class":553,"line":657},[551,14044,784],{"class":587},[551,14046,739],{"class":738},[551,14048,742],{"class":587},[692,14050,13890],{"id":13890},[940,14052],{"component":13792},[692,14054,13911],{"id":13911},[940,14056],{"component":14057},"AdminTabsList",[692,14059,13920],{"id":13920},[940,14061],{"component":14062},"AdminTabsTrigger",[692,14064,13984],{"id":13984},[940,14066],{"component":14067},"AdminTabsContent",[536,14069,985],{"id":985},[987,14071],{"component":13792},[990,14073,992],{},{"title":546,"searchDepth":601,"depth":601,"links":14075},[14076,14077,14078,14081,14082,14089],{"id":507,"depth":591,"text":507},{"id":683,"depth":591,"text":683},{"id":690,"depth":591,"text":690,"children":14079},[14080],{"id":13782,"depth":601,"text":13782},{"id":2761,"depth":591,"text":2762},{"id":719,"depth":591,"text":720,"children":14083},[14084,14085,14086,14087,14088],{"id":723,"depth":601,"text":723},{"id":13890,"depth":601,"text":13890},{"id":13911,"depth":601,"text":13911},{"id":13920,"depth":601,"text":13920},{"id":13984,"depth":601,"text":13984},{"id":985,"depth":591,"text":985},"分頁切換。",{"doc":14092,"api":14093},"https:\u002F\u002Freka-ui.com\u002Fdocs\u002Fcomponents\u002Ftabs","https:\u002F\u002Freka-ui.com\u002Fdocs\u002Fcomponents\u002Ftabs#api-reference",{},{"title":141,"description":14090},"ogGC1CYfCsPeUB8KjEsE5DNP5qPlTHWWoufMpkaVa8g",{"id":14098,"title":145,"body":14099,"component":526,"description":14232,"extension":1015,"links":19,"meta":14233,"navigation":526,"new":18,"path":146,"seo":14234,"stem":147,"wrapperKind":19,"__hash__":14235},"docs\u002Fdocs\u002Fadmin\u002Ftag.md",{"type":533,"value":14100,"toc":14219},[14101,14103,14121,14146,14148,14151,14153,14156,14159,14163,14166,14168,14170,14208,14210,14213,14215,14217],[536,14102,507],{"id":507},[539,14104,14106],{"className":541,"code":14105,"filename":543,"language":544,"meta":545,"style":546},"pnpm dlx shadcn-vue add @admin\u002Ftag\n",[548,14107,14108],{"__ignoreMap":546},[551,14109,14110,14112,14114,14116,14118],{"class":553,"line":554},[551,14111,558],{"class":557},[551,14113,562],{"class":561},[551,14115,565],{"class":561},[551,14117,568],{"class":561},[551,14119,14120],{"class":561}," @admin\u002Ftag\n",[539,14122,14124],{"className":574,"code":14123,"language":576,"meta":546,"style":546},"import { AdminTag } from '@\u002Fcomponents\u002Fadmin\u002Ftag'\n",[548,14125,14126],{"__ignoreMap":546},[551,14127,14128,14130,14132,14135,14137,14139,14141,14144],{"class":553,"line":554},[551,14129,584],{"class":583},[551,14131,1273],{"class":587},[551,14133,14134],{"class":594}," AdminTag",[551,14136,1279],{"class":587},[551,14138,671],{"class":583},[551,14140,674],{"class":587},[551,14142,14143],{"class":561},"@\u002Fcomponents\u002Fadmin\u002Ftag",[551,14145,680],{"class":587},[536,14147,683],{"id":683},[685,14149],{"name":14150},"TagDemo",[536,14152,690],{"id":690},[692,14154,14155],{"id":14155},"圓角變體",[685,14157],{"name":14158},"TagRoundedDemo",[692,14160,14162],{"id":14161},"搭配-icon","搭配 icon",[685,14164],{"name":14165},"TagWithIconDemo",[536,14167,720],{"id":719},[692,14169,723],{"id":723},[539,14171,14173],{"className":726,"code":14172,"language":728,"meta":546,"style":546},"\u003Ctemplate>\n  \u003Cadmin-tag>標籤文字\u003C\u002Fadmin-tag>\n\u003C\u002Ftemplate>\n",[548,14174,14175,14183,14200],{"__ignoreMap":546},[551,14176,14177,14179,14181],{"class":553,"line":554},[551,14178,735],{"class":587},[551,14180,739],{"class":738},[551,14182,742],{"class":587},[551,14184,14185,14187,14190,14192,14194,14196,14198],{"class":553,"line":591},[551,14186,747],{"class":587},[551,14188,14189],{"class":738},"admin-tag",[551,14191,778],{"class":587},[551,14193,3029],{"class":594},[551,14195,784],{"class":587},[551,14197,14189],{"class":738},[551,14199,742],{"class":587},[551,14201,14202,14204,14206],{"class":553,"line":601},[551,14203,784],{"class":587},[551,14205,739],{"class":738},[551,14207,742],{"class":587},[692,14209,14189],{"id":14189},[940,14211],{"component":14212},"AdminTag",[536,14214,985],{"id":985},[987,14216],{"component":14212},[990,14218,2019],{},{"title":546,"searchDepth":601,"depth":601,"links":14220},[14221,14222,14223,14227,14231],{"id":507,"depth":591,"text":507},{"id":683,"depth":591,"text":683},{"id":690,"depth":591,"text":690,"children":14224},[14225,14226],{"id":14155,"depth":601,"text":14155},{"id":14161,"depth":601,"text":14162},{"id":719,"depth":591,"text":720,"children":14228},[14229,14230],{"id":723,"depth":601,"text":723},{"id":14189,"depth":601,"text":14189},{"id":985,"depth":591,"text":985},"分類、狀態或關鍵字的靜態標籤。",{},{"title":145,"description":14232},"mcUDDYNCow-mMoBiNVu8nGoNYA1koUpybkvYCGJQgOs",{"id":14237,"title":149,"body":14238,"component":526,"description":14436,"extension":1015,"links":14437,"meta":14439,"navigation":526,"new":18,"path":150,"seo":14440,"stem":151,"wrapperKind":19,"__hash__":14441},"docs\u002Fdocs\u002Fadmin\u002Ftextarea.md",{"type":533,"value":14239,"toc":14421},[14240,14242,14260,14298,14300,14303,14305,14308,14311,14313,14316,14318,14321,14323,14325,14405,14407,14410,14412,14415,14417,14419],[536,14241,507],{"id":507},[539,14243,14245],{"className":541,"code":14244,"filename":543,"language":544,"meta":545,"style":546},"pnpm dlx shadcn-vue add @admin\u002Ftextarea\n",[548,14246,14247],{"__ignoreMap":546},[551,14248,14249,14251,14253,14255,14257],{"class":553,"line":554},[551,14250,558],{"class":557},[551,14252,562],{"class":561},[551,14254,565],{"class":561},[551,14256,568],{"class":561},[551,14258,14259],{"class":561}," @admin\u002Ftextarea\n",[539,14261,14263],{"className":574,"code":14262,"language":576,"meta":546,"style":546},"import {\n  AdminTextarea,\n  AdminTextareaWordLimit,\n} from '@\u002Fcomponents\u002Fadmin\u002Ftextarea'\n",[548,14264,14265,14271,14278,14285],{"__ignoreMap":546},[551,14266,14267,14269],{"class":553,"line":554},[551,14268,584],{"class":583},[551,14270,588],{"class":587},[551,14272,14273,14276],{"class":553,"line":591},[551,14274,14275],{"class":594},"  AdminTextarea",[551,14277,598],{"class":587},[551,14279,14280,14283],{"class":553,"line":601},[551,14281,14282],{"class":594},"  AdminTextareaWordLimit",[551,14284,598],{"class":587},[551,14286,14287,14289,14291,14293,14296],{"class":553,"line":609},[551,14288,668],{"class":587},[551,14290,671],{"class":583},[551,14292,674],{"class":587},[551,14294,14295],{"class":561},"@\u002Fcomponents\u002Fadmin\u002Ftextarea",[551,14297,680],{"class":587},[536,14299,683],{"id":683},[685,14301],{"name":14302},"TextareaDemo",[536,14304,690],{"id":690},[692,14306,14307],{"id":14307},"帶字數限制",[685,14309],{"name":14310},"TextareaWithLimitDemo",[692,14312,3202],{"id":3202},[685,14314],{"name":14315},"TextareaDisabledDemo",[692,14317,2755],{"id":2755},[685,14319],{"name":14320},"TextareaErrorDemo",[536,14322,720],{"id":719},[692,14324,723],{"id":723},[539,14326,14328],{"className":726,"code":14327,"language":728,"meta":546,"style":546},"\u003Ctemplate>\n  \u003Cadmin-textarea v-model=\"value\" placeholder=\"輸入內容\" :maxlength=\"200\">\n    \u003Cadmin-textarea-word-limit \u002F>\n  \u003C\u002Fadmin-textarea>\n\u003C\u002Ftemplate>\n",[548,14329,14330,14338,14380,14389,14397],{"__ignoreMap":546},[551,14331,14332,14334,14336],{"class":553,"line":554},[551,14333,735],{"class":587},[551,14335,739],{"class":738},[551,14337,742],{"class":587},[551,14339,14340,14342,14345,14347,14349,14351,14353,14355,14357,14359,14361,14364,14366,14369,14371,14373,14376,14378],{"class":553,"line":591},[551,14341,747],{"class":587},[551,14343,14344],{"class":738},"admin-textarea",[551,14346,2867],{"class":753},[551,14348,757],{"class":587},[551,14350,760],{"class":587},[551,14352,2720],{"class":561},[551,14354,760],{"class":587},[551,14356,4864],{"class":753},[551,14358,757],{"class":587},[551,14360,760],{"class":587},[551,14362,14363],{"class":561},"輸入內容",[551,14365,760],{"class":587},[551,14367,14368],{"class":753}," :maxlength",[551,14370,757],{"class":587},[551,14372,760],{"class":587},[551,14374,14375],{"class":561},"200",[551,14377,760],{"class":587},[551,14379,742],{"class":587},[551,14381,14382,14384,14387],{"class":553,"line":601},[551,14383,772],{"class":587},[551,14385,14386],{"class":738},"admin-textarea-word-limit",[551,14388,1449],{"class":587},[551,14390,14391,14393,14395],{"class":553,"line":609},[551,14392,923],{"class":587},[551,14394,14344],{"class":738},[551,14396,742],{"class":587},[551,14398,14399,14401,14403],{"class":553,"line":617},[551,14400,784],{"class":587},[551,14402,739],{"class":738},[551,14404,742],{"class":587},[692,14406,14344],{"id":14344},[940,14408],{"component":14409},"AdminTextarea",[692,14411,14386],{"id":14386},[940,14413],{"component":14414},"AdminTextareaWordLimit",[536,14416,985],{"id":985},[987,14418],{"component":14409},[990,14420,992],{},{"title":546,"searchDepth":601,"depth":601,"links":14422},[14423,14424,14425,14430,14435],{"id":507,"depth":591,"text":507},{"id":683,"depth":591,"text":683},{"id":690,"depth":591,"text":690,"children":14426},[14427,14428,14429],{"id":14307,"depth":601,"text":14307},{"id":3202,"depth":601,"text":3202},{"id":2755,"depth":601,"text":2755},{"id":719,"depth":591,"text":720,"children":14431},[14432,14433,14434],{"id":723,"depth":601,"text":723},{"id":14344,"depth":601,"text":14344},{"id":14386,"depth":601,"text":14386},{"id":985,"depth":591,"text":985},"多行文字輸入。可搭配字數限制。",{"doc":14438},"https:\u002F\u002Fwww.shadcn-vue.com\u002Fdocs\u002Fcomponents\u002Ftextarea",{},{"title":149,"description":14436},"UpbTAyhTRLJiuuzWeQ3BnOwnlv7j0VK5O8LGbgUu9Bc",{"id":14443,"title":153,"body":14444,"component":526,"description":14901,"extension":1015,"links":19,"meta":14902,"navigation":526,"new":18,"path":154,"seo":14903,"stem":155,"wrapperKind":19,"__hash__":14904},"docs\u002Fdocs\u002Fadmin\u002Ftimeline.md",{"type":533,"value":14445,"toc":14880},[14446,14448,14466,14546,14548,14551,14553,14557,14560,14563,14566,14568,14570,14737,14739,14742,14744,14747,14749,14752,14754,14757,14759,14762,14764,14767,14769,14772,14774,14777,14779,14874,14876,14878],[536,14447,507],{"id":507},[539,14449,14451],{"className":541,"code":14450,"filename":543,"language":544,"meta":545,"style":546},"pnpm dlx shadcn-vue add @admin\u002Ftimeline\n",[548,14452,14453],{"__ignoreMap":546},[551,14454,14455,14457,14459,14461,14463],{"class":553,"line":554},[551,14456,558],{"class":557},[551,14458,562],{"class":561},[551,14460,565],{"class":561},[551,14462,568],{"class":561},[551,14464,14465],{"class":561}," @admin\u002Ftimeline\n",[539,14467,14469],{"className":574,"code":14468,"language":576,"meta":546,"style":546},"import {\n  AdminTimeline,\n  AdminTimelineContent,\n  AdminTimelineDate,\n  AdminTimelineHeader,\n  AdminTimelineIndicator,\n  AdminTimelineItem,\n  AdminTimelineSeparator,\n  AdminTimelineTitle,\n} from '@\u002Fcomponents\u002Fadmin\u002Ftimeline'\n",[548,14470,14471,14477,14484,14491,14498,14505,14512,14519,14526,14533],{"__ignoreMap":546},[551,14472,14473,14475],{"class":553,"line":554},[551,14474,584],{"class":583},[551,14476,588],{"class":587},[551,14478,14479,14482],{"class":553,"line":591},[551,14480,14481],{"class":594},"  AdminTimeline",[551,14483,598],{"class":587},[551,14485,14486,14489],{"class":553,"line":601},[551,14487,14488],{"class":594},"  AdminTimelineContent",[551,14490,598],{"class":587},[551,14492,14493,14496],{"class":553,"line":609},[551,14494,14495],{"class":594},"  AdminTimelineDate",[551,14497,598],{"class":587},[551,14499,14500,14503],{"class":553,"line":617},[551,14501,14502],{"class":594},"  AdminTimelineHeader",[551,14504,598],{"class":587},[551,14506,14507,14510],{"class":553,"line":625},[551,14508,14509],{"class":594},"  AdminTimelineIndicator",[551,14511,598],{"class":587},[551,14513,14514,14517],{"class":553,"line":633},[551,14515,14516],{"class":594},"  AdminTimelineItem",[551,14518,598],{"class":587},[551,14520,14521,14524],{"class":553,"line":641},[551,14522,14523],{"class":594},"  AdminTimelineSeparator",[551,14525,598],{"class":587},[551,14527,14528,14531],{"class":553,"line":649},[551,14529,14530],{"class":594},"  AdminTimelineTitle",[551,14532,598],{"class":587},[551,14534,14535,14537,14539,14541,14544],{"class":553,"line":657},[551,14536,668],{"class":587},[551,14538,671],{"class":583},[551,14540,674],{"class":587},[551,14542,14543],{"class":561},"@\u002Fcomponents\u002Fadmin\u002Ftimeline",[551,14545,680],{"class":587},[536,14547,683],{"id":683},[685,14549],{"name":14550},"TimelineBasicDemo",[536,14552,690],{"id":690},[692,14554,14556],{"id":14555},"自訂-indicatoricon","自訂 indicator（icon）",[685,14558],{"name":14559},"TimelineIconDemo",[692,14561,14562],{"id":6511},"水平 orientation",[685,14564],{"name":14565},"TimelineHorizontalDemo",[536,14567,720],{"id":719},[692,14569,723],{"id":723},[539,14571,14573],{"className":726,"code":14572,"language":728,"meta":546,"style":546},"\u003Ctemplate>\n  \u003Cadmin-timeline>\n    \u003Cadmin-timeline-item status=\"completed\">\n      \u003Cadmin-timeline-header>\n        \u003Cadmin-timeline-indicator \u002F>\n        \u003Cadmin-timeline-date datetime=\"2026-05-01\">2026\u002F05\u002F01\u003C\u002Fadmin-timeline-date>\n      \u003C\u002Fadmin-timeline-header>\n      \u003Cadmin-timeline-separator \u002F>\n      \u003Cadmin-timeline-content>\n        \u003Cadmin-timeline-title>建立訂單\u003C\u002Fadmin-timeline-title>\n      \u003C\u002Fadmin-timeline-content>\n    \u003C\u002Fadmin-timeline-item>\n  \u003C\u002Fadmin-timeline>\n\u003C\u002Ftemplate>\n",[548,14574,14575,14583,14592,14613,14622,14631,14661,14669,14678,14687,14705,14713,14721,14729],{"__ignoreMap":546},[551,14576,14577,14579,14581],{"class":553,"line":554},[551,14578,735],{"class":587},[551,14580,739],{"class":738},[551,14582,742],{"class":587},[551,14584,14585,14587,14590],{"class":553,"line":591},[551,14586,747],{"class":587},[551,14588,14589],{"class":738},"admin-timeline",[551,14591,742],{"class":587},[551,14593,14594,14596,14599,14602,14604,14606,14609,14611],{"class":553,"line":601},[551,14595,772],{"class":587},[551,14597,14598],{"class":738},"admin-timeline-item",[551,14600,14601],{"class":753}," status",[551,14603,757],{"class":587},[551,14605,760],{"class":587},[551,14607,14608],{"class":561},"completed",[551,14610,760],{"class":587},[551,14612,742],{"class":587},[551,14614,14615,14617,14620],{"class":553,"line":609},[551,14616,802],{"class":587},[551,14618,14619],{"class":738},"admin-timeline-header",[551,14621,742],{"class":587},[551,14623,14624,14626,14629],{"class":553,"line":617},[551,14625,812],{"class":587},[551,14627,14628],{"class":738},"admin-timeline-indicator",[551,14630,1449],{"class":587},[551,14632,14633,14635,14638,14641,14643,14645,14648,14650,14652,14655,14657,14659],{"class":553,"line":625},[551,14634,812],{"class":587},[551,14636,14637],{"class":738},"admin-timeline-date",[551,14639,14640],{"class":753}," datetime",[551,14642,757],{"class":587},[551,14644,760],{"class":587},[551,14646,14647],{"class":561},"2026-05-01",[551,14649,760],{"class":587},[551,14651,778],{"class":587},[551,14653,14654],{"class":594},"2026\u002F05\u002F01",[551,14656,784],{"class":587},[551,14658,14637],{"class":738},[551,14660,742],{"class":587},[551,14662,14663,14665,14667],{"class":553,"line":633},[551,14664,849],{"class":587},[551,14666,14619],{"class":738},[551,14668,742],{"class":587},[551,14670,14671,14673,14676],{"class":553,"line":641},[551,14672,802],{"class":587},[551,14674,14675],{"class":738},"admin-timeline-separator",[551,14677,1449],{"class":587},[551,14679,14680,14682,14685],{"class":553,"line":649},[551,14681,802],{"class":587},[551,14683,14684],{"class":738},"admin-timeline-content",[551,14686,742],{"class":587},[551,14688,14689,14691,14694,14696,14699,14701,14703],{"class":553,"line":657},[551,14690,812],{"class":587},[551,14692,14693],{"class":738},"admin-timeline-title",[551,14695,778],{"class":587},[551,14697,14698],{"class":594},"建立訂單",[551,14700,784],{"class":587},[551,14702,14693],{"class":738},[551,14704,742],{"class":587},[551,14706,14707,14709,14711],{"class":553,"line":665},[551,14708,849],{"class":587},[551,14710,14684],{"class":738},[551,14712,742],{"class":587},[551,14714,14715,14717,14719],{"class":553,"line":901},[551,14716,913],{"class":587},[551,14718,14598],{"class":738},[551,14720,742],{"class":587},[551,14722,14723,14725,14727],{"class":553,"line":910},[551,14724,923],{"class":587},[551,14726,14589],{"class":738},[551,14728,742],{"class":587},[551,14730,14731,14733,14735],{"class":553,"line":920},[551,14732,784],{"class":587},[551,14734,739],{"class":738},[551,14736,742],{"class":587},[692,14738,14589],{"id":14589},[940,14740],{"component":14741},"AdminTimeline",[692,14743,14598],{"id":14598},[940,14745],{"component":14746},"AdminTimelineItem",[692,14748,14637],{"id":14637},[940,14750],{"component":14751},"AdminTimelineDate",[692,14753,14628],{"id":14628},[940,14755],{"component":14756},"AdminTimelineIndicator",[692,14758,14684],{"id":14684},[940,14760],{"component":14761},"AdminTimelineContent",[692,14763,14619],{"id":14619},[940,14765],{"component":14766},"AdminTimelineHeader",[692,14768,14675],{"id":14675},[940,14770],{"component":14771},"AdminTimelineSeparator",[692,14773,14693],{"id":14693},[940,14775],{"component":14776},"AdminTimelineTitle",[536,14778,1556],{"id":1556},[1558,14780,14781,14805,14826,14844,14855],{},[1561,14782,14783,14784,14786,14787,14790,14791,1123,14794,1123,14797,1123,14799,14801,14802,14804],{},"每個 ",[548,14785,14598],{}," 以 ",[548,14788,14789],{},"status"," 各自標註狀態（",[548,14792,14793],{},"pending",[548,14795,14796],{},"current",[548,14798,14608],{},[548,14800,6744],{},"，預設 ",[548,14803,14793],{},"）；狀態由呼叫方依實際資料指定，root 不持有 active step。",[1561,14806,14807,14808,14810,14811,14813,14814,14816,14817,14819,14820,14822,14823,14825],{},"配色對應：",[548,14809,14608],{}," 綠、",[548,14812,14796],{}," 藍（實心 + ring）、",[548,14815,14793],{}," 灰、",[548,14818,6744],{}," 紅；連接線於 ",[548,14821,14608],{}," 轉綠、",[548,14824,6744],{}," 轉紅。",[1561,14827,14828,14830,14831,14834,14835,14838,14839,1123,14841,14843],{},[548,14829,14789],{}," 為",[1135,14832,14833],{},"純視覺","（indicator 帶 ",[548,14836,14837],{},"aria-hidden","）。為確保無障礙，狀態語意務必同時以 ",[548,14840,14693],{},[548,14842,14684],{}," 的文字表達，勿只靠顏色。",[1561,14845,14846,1613,14848,14850,14851,14854],{},[548,14847,14751],{},[548,14849,14756],{}," 支援 ",[548,14852,14853],{},"as-child","，其他 sub-component 不支援。",[1561,14856,14857,14858,14861,14862,14865,14866,14869,14870,713],{},"Indicator ",[1135,14859,14860],{},"不建議","塞 interactive 元素（",[548,14863,14864],{},"\u003Cbutton>","、",[548,14867,14868],{},"\u003Ca>"," 等）。Timeline 的定位是視覺呈現，需要互動式步驟切換請改用 ",[697,14871,14872],{"href":134},[548,14873,4136],{},[536,14875,985],{"id":985},[987,14877],{"component":14741},[990,14879,992],{},{"title":546,"searchDepth":601,"depth":601,"links":14881},[14882,14883,14884,14888,14899,14900],{"id":507,"depth":591,"text":507},{"id":683,"depth":591,"text":683},{"id":690,"depth":591,"text":690,"children":14885},[14886,14887],{"id":14555,"depth":601,"text":14556},{"id":6511,"depth":601,"text":14562},{"id":719,"depth":591,"text":720,"children":14889},[14890,14891,14892,14893,14894,14895,14896,14897,14898],{"id":723,"depth":601,"text":723},{"id":14589,"depth":601,"text":14589},{"id":14598,"depth":601,"text":14598},{"id":14637,"depth":601,"text":14637},{"id":14628,"depth":601,"text":14628},{"id":14684,"depth":601,"text":14684},{"id":14619,"depth":601,"text":14619},{"id":14675,"depth":601,"text":14675},{"id":14693,"depth":601,"text":14693},{"id":1556,"depth":591,"text":1556},{"id":985,"depth":591,"text":985},"依節點狀態呈現進度的時間軸。狀態：pending／current／completed／error；方向：垂直、水平。",{},{"title":153,"description":14901},"Yb8jrlKI2jE50O_iiVU3sxlf8tvyn3rc9VNyguipxTs",{"id":14906,"title":157,"body":14907,"component":526,"description":15136,"extension":1015,"links":15137,"meta":15140,"navigation":526,"new":18,"path":158,"seo":15141,"stem":159,"wrapperKind":19,"__hash__":15142},"docs\u002Fdocs\u002Fadmin\u002Ftooltip.md",{"type":533,"value":14908,"toc":15120},[14909,14911,14929,14981,14983,14986,14988,14991,14994,14997,15000,15002,15004,15094,15096,15099,15101,15104,15106,15109,15111,15114,15116,15118],[536,14910,507],{"id":507},[539,14912,14914],{"className":541,"code":14913,"filename":543,"language":544,"meta":545,"style":546},"pnpm dlx shadcn-vue add @admin\u002Ftooltip\n",[548,14915,14916],{"__ignoreMap":546},[551,14917,14918,14920,14922,14924,14926],{"class":553,"line":554},[551,14919,558],{"class":557},[551,14921,562],{"class":561},[551,14923,565],{"class":561},[551,14925,568],{"class":561},[551,14927,14928],{"class":561}," @admin\u002Ftooltip\n",[539,14930,14932],{"className":574,"code":14931,"language":576,"meta":546,"style":546},"import {\n  AdminTooltip,\n  AdminTooltipContent,\n  AdminTooltipProvider,\n  AdminTooltipTrigger,\n} from '@\u002Fcomponents\u002Fadmin\u002Ftooltip'\n",[548,14933,14934,14940,14947,14954,14961,14968],{"__ignoreMap":546},[551,14935,14936,14938],{"class":553,"line":554},[551,14937,584],{"class":583},[551,14939,588],{"class":587},[551,14941,14942,14945],{"class":553,"line":591},[551,14943,14944],{"class":594},"  AdminTooltip",[551,14946,598],{"class":587},[551,14948,14949,14952],{"class":553,"line":601},[551,14950,14951],{"class":594},"  AdminTooltipContent",[551,14953,598],{"class":587},[551,14955,14956,14959],{"class":553,"line":609},[551,14957,14958],{"class":594},"  AdminTooltipProvider",[551,14960,598],{"class":587},[551,14962,14963,14966],{"class":553,"line":617},[551,14964,14965],{"class":594},"  AdminTooltipTrigger",[551,14967,598],{"class":587},[551,14969,14970,14972,14974,14976,14979],{"class":553,"line":625},[551,14971,668],{"class":587},[551,14973,671],{"class":583},[551,14975,674],{"class":587},[551,14977,14978],{"class":561},"@\u002Fcomponents\u002Fadmin\u002Ftooltip",[551,14980,680],{"class":587},[536,14982,683],{"id":683},[685,14984],{"name":14985},"TooltipDemo",[536,14987,690],{"id":690},[692,14989,14990],{"id":14990},"四向擺放",[685,14992],{"name":14993},"TooltipPlacementDemo",[692,14995,14996],{"id":14996},"富文字內容",[685,14998],{"name":14999},"TooltipRichDemo",[536,15001,720],{"id":719},[692,15003,723],{"id":723},[539,15005,15007],{"className":726,"code":15006,"language":728,"meta":546,"style":546},"\u003Ctemplate>\n  \u003Cadmin-tooltip-provider>\n    \u003Cadmin-tooltip>\n      \u003Cadmin-tooltip-trigger>觸發元素\u003C\u002Fadmin-tooltip-trigger>\n      \u003Cadmin-tooltip-content>說明文字\u003C\u002Fadmin-tooltip-content>\n    \u003C\u002Fadmin-tooltip>\n  \u003C\u002Fadmin-tooltip-provider>\n\u003C\u002Ftemplate>\n",[548,15008,15009,15017,15026,15035,15053,15070,15078,15086],{"__ignoreMap":546},[551,15010,15011,15013,15015],{"class":553,"line":554},[551,15012,735],{"class":587},[551,15014,739],{"class":738},[551,15016,742],{"class":587},[551,15018,15019,15021,15024],{"class":553,"line":591},[551,15020,747],{"class":587},[551,15022,15023],{"class":738},"admin-tooltip-provider",[551,15025,742],{"class":587},[551,15027,15028,15030,15033],{"class":553,"line":601},[551,15029,772],{"class":587},[551,15031,15032],{"class":738},"admin-tooltip",[551,15034,742],{"class":587},[551,15036,15037,15039,15042,15044,15047,15049,15051],{"class":553,"line":609},[551,15038,802],{"class":587},[551,15040,15041],{"class":738},"admin-tooltip-trigger",[551,15043,778],{"class":587},[551,15045,15046],{"class":594},"觸發元素",[551,15048,784],{"class":587},[551,15050,15041],{"class":738},[551,15052,742],{"class":587},[551,15054,15055,15057,15060,15062,15064,15066,15068],{"class":553,"line":617},[551,15056,802],{"class":587},[551,15058,15059],{"class":738},"admin-tooltip-content",[551,15061,778],{"class":587},[551,15063,838],{"class":594},[551,15065,784],{"class":587},[551,15067,15059],{"class":738},[551,15069,742],{"class":587},[551,15071,15072,15074,15076],{"class":553,"line":625},[551,15073,913],{"class":587},[551,15075,15032],{"class":738},[551,15077,742],{"class":587},[551,15079,15080,15082,15084],{"class":553,"line":633},[551,15081,923],{"class":587},[551,15083,15023],{"class":738},[551,15085,742],{"class":587},[551,15087,15088,15090,15092],{"class":553,"line":641},[551,15089,784],{"class":587},[551,15091,739],{"class":738},[551,15093,742],{"class":587},[692,15095,15023],{"id":15023},[940,15097],{"component":15098},"AdminTooltipProvider",[692,15100,15032],{"id":15032},[940,15102],{"component":15103},"AdminTooltip",[692,15105,15059],{"id":15059},[940,15107],{"component":15108},"AdminTooltipContent",[692,15110,15041],{"id":15041},[940,15112],{"component":15113},"AdminTooltipTrigger",[536,15115,985],{"id":985},[987,15117],{"component":15103},[990,15119,2019],{},{"title":546,"searchDepth":601,"depth":601,"links":15121},[15122,15123,15124,15128,15135],{"id":507,"depth":591,"text":507},{"id":683,"depth":591,"text":683},{"id":690,"depth":591,"text":690,"children":15125},[15126,15127],{"id":14990,"depth":601,"text":14990},{"id":14996,"depth":601,"text":14996},{"id":719,"depth":591,"text":720,"children":15129},[15130,15131,15132,15133,15134],{"id":723,"depth":601,"text":723},{"id":15023,"depth":601,"text":15023},{"id":15032,"depth":601,"text":15032},{"id":15059,"depth":601,"text":15059},{"id":15041,"depth":601,"text":15041},{"id":985,"depth":591,"text":985},"懸停時顯示輔助說明。",{"doc":15138,"api":15139},"https:\u002F\u002Freka-ui.com\u002Fdocs\u002Fcomponents\u002Ftooltip","https:\u002F\u002Freka-ui.com\u002Fdocs\u002Fcomponents\u002Ftooltip#api-reference",{},{"title":157,"description":15136},"2Q6Af1REAAxfTeiTiTFuTvD0BT0CJu9xkV5zizE0LKI",{"id":15144,"title":161,"body":15145,"component":526,"description":15396,"extension":1015,"links":15397,"meta":15400,"navigation":526,"new":18,"path":162,"seo":15401,"stem":163,"wrapperKind":19,"__hash__":15402},"docs\u002Fdocs\u002Fadmin\u002Ftree.md",{"type":533,"value":15146,"toc":15383},[15147,15149,15167,15197,15199,15202,15204,15208,15211,15213,15215,15367,15369,15372,15374,15377,15379,15381],[536,15148,507],{"id":507},[539,15150,15152],{"className":541,"code":15151,"filename":543,"language":544,"meta":545,"style":546},"pnpm dlx shadcn-vue add @admin\u002Ftree\n",[548,15153,15154],{"__ignoreMap":546},[551,15155,15156,15158,15160,15162,15164],{"class":553,"line":554},[551,15157,558],{"class":557},[551,15159,562],{"class":561},[551,15161,565],{"class":561},[551,15163,568],{"class":561},[551,15165,15166],{"class":561}," @admin\u002Ftree\n",[539,15168,15170],{"className":574,"code":15169,"language":576,"meta":546,"style":546},"import { AdminTree, AdminTreeItem } from '@\u002Fcomponents\u002Fadmin\u002Ftree'\n",[548,15171,15172],{"__ignoreMap":546},[551,15173,15174,15176,15178,15181,15183,15186,15188,15190,15192,15195],{"class":553,"line":554},[551,15175,584],{"class":583},[551,15177,1273],{"class":587},[551,15179,15180],{"class":594}," AdminTree",[551,15182,3348],{"class":587},[551,15184,15185],{"class":594}," AdminTreeItem",[551,15187,1279],{"class":587},[551,15189,671],{"class":583},[551,15191,674],{"class":587},[551,15193,15194],{"class":561},"@\u002Fcomponents\u002Fadmin\u002Ftree",[551,15196,680],{"class":587},[536,15198,683],{"id":683},[685,15200],{"name":15201},"TreeBasicDemo",[536,15203,690],{"id":690},[692,15205,15207],{"id":15206},"多選與-checkbox","多選與 Checkbox",[685,15209],{"name":15210},"TreeCheckboxDemo",[536,15212,720],{"id":719},[692,15214,723],{"id":723},[539,15216,15218],{"className":726,"code":15217,"language":728,"meta":546,"style":546},"\u003Ctemplate>\n  \u003Cadmin-tree v-slot=\"{ flattenItems }\" :get-key=\"(item) => item.id\" :items=\"data\">\n    \u003Cadmin-tree-item\n      v-for=\"item in flattenItems\"\n      :key=\"item._id\"\n      v-bind=\"item.bind\"\n      :has-children=\"item.hasChildren\"\n    >\n      {{ item.value.label }}\n    \u003C\u002Fadmin-tree-item>\n  \u003C\u002Fadmin-tree>\n\u003C\u002Ftemplate>\n",[548,15219,15220,15228,15272,15279,15292,15305,15319,15333,15337,15342,15351,15359],{"__ignoreMap":546},[551,15221,15222,15224,15226],{"class":553,"line":554},[551,15223,735],{"class":587},[551,15225,739],{"class":738},[551,15227,742],{"class":587},[551,15229,15230,15232,15235,15237,15239,15241,15244,15246,15249,15251,15253,15256,15258,15261,15263,15265,15268,15270],{"class":553,"line":591},[551,15231,747],{"class":587},[551,15233,15234],{"class":738},"admin-tree",[551,15236,3595],{"class":753},[551,15238,757],{"class":587},[551,15240,760],{"class":587},[551,15242,15243],{"class":561},"{ flattenItems }",[551,15245,760],{"class":587},[551,15247,15248],{"class":753}," :get-key",[551,15250,757],{"class":587},[551,15252,760],{"class":587},[551,15254,15255],{"class":561},"(item) => item.id",[551,15257,760],{"class":587},[551,15259,15260],{"class":753}," :items",[551,15262,757],{"class":587},[551,15264,760],{"class":587},[551,15266,15267],{"class":561},"data",[551,15269,760],{"class":587},[551,15271,742],{"class":587},[551,15273,15274,15276],{"class":553,"line":601},[551,15275,772],{"class":587},[551,15277,15278],{"class":738},"admin-tree-item\n",[551,15280,15281,15283,15285,15287,15290],{"class":553,"line":609},[551,15282,11356],{"class":753},[551,15284,757],{"class":587},[551,15286,760],{"class":587},[551,15288,15289],{"class":561},"item in flattenItems",[551,15291,4281],{"class":587},[551,15293,15294,15296,15298,15300,15303],{"class":553,"line":617},[551,15295,11370],{"class":753},[551,15297,757],{"class":587},[551,15299,760],{"class":587},[551,15301,15302],{"class":561},"item._id",[551,15304,4281],{"class":587},[551,15306,15307,15310,15312,15314,15317],{"class":553,"line":625},[551,15308,15309],{"class":753},"      v-bind",[551,15311,757],{"class":587},[551,15313,760],{"class":587},[551,15315,15316],{"class":561},"item.bind",[551,15318,4281],{"class":587},[551,15320,15321,15324,15326,15328,15331],{"class":553,"line":633},[551,15322,15323],{"class":753},"      :has-children",[551,15325,757],{"class":587},[551,15327,760],{"class":587},[551,15329,15330],{"class":561},"item.hasChildren",[551,15332,4281],{"class":587},[551,15334,15335],{"class":553,"line":641},[551,15336,4286],{"class":587},[551,15338,15339],{"class":553,"line":649},[551,15340,15341],{"class":594},"      {{ item.value.label }}\n",[551,15343,15344,15346,15349],{"class":553,"line":657},[551,15345,913],{"class":587},[551,15347,15348],{"class":738},"admin-tree-item",[551,15350,742],{"class":587},[551,15352,15353,15355,15357],{"class":553,"line":665},[551,15354,923],{"class":587},[551,15356,15234],{"class":738},[551,15358,742],{"class":587},[551,15360,15361,15363,15365],{"class":553,"line":901},[551,15362,784],{"class":587},[551,15364,739],{"class":738},[551,15366,742],{"class":587},[692,15368,15234],{"id":15234},[940,15370],{"component":15371},"AdminTree",[692,15373,15348],{"id":15348},[940,15375],{"component":15376},"AdminTreeItem",[536,15378,985],{"id":985},[987,15380],{"component":15371},[990,15382,992],{},{"title":546,"searchDepth":601,"depth":601,"links":15384},[15385,15386,15387,15390,15395],{"id":507,"depth":591,"text":507},{"id":683,"depth":591,"text":683},{"id":690,"depth":591,"text":690,"children":15388},[15389],{"id":15206,"depth":601,"text":15207},{"id":719,"depth":591,"text":720,"children":15391},[15392,15393,15394],{"id":723,"depth":601,"text":723},{"id":15234,"depth":601,"text":15234},{"id":15348,"depth":601,"text":15348},{"id":985,"depth":591,"text":985},"巢狀資料。展開、收合、選取。",{"doc":15398,"api":15399},"https:\u002F\u002Freka-ui.com\u002Fdocs\u002Fcomponents\u002Ftree","https:\u002F\u002Freka-ui.com\u002Fdocs\u002Fcomponents\u002Ftree#api-reference",{},{"title":161,"description":15396},"0TKzt5GlU4Y6HtpSD5pv2cntYGHUoNDZiTwvVFfPCnw",{"id":15404,"title":165,"body":15405,"component":526,"description":16080,"extension":1015,"links":16081,"meta":16082,"navigation":526,"new":18,"path":166,"seo":16083,"stem":167,"wrapperKind":19,"__hash__":16084},"docs\u002Fdocs\u002Fadmin\u002Fvideo-player.md",{"type":533,"value":15406,"toc":16058},[15407,15409,15427,15512,15519,15523,15599,15603,15741,15743,15752,15755,15757,15761,15774,15777,15781,15797,15800,15802,15804,15927,15929,15932,15934,15937,15939,15942,15944,15947,15949,15952,15954,15957,15959,15962,15964,15967,15969,15972,15974,16052,16054,16056],[536,15408,507],{"id":507},[539,15410,15412],{"className":541,"code":15411,"filename":543,"language":544,"meta":545,"style":546},"pnpm dlx shadcn-vue add @admin\u002Fvideo-player\n",[548,15413,15414],{"__ignoreMap":546},[551,15415,15416,15418,15420,15422,15424],{"class":553,"line":554},[551,15417,558],{"class":557},[551,15419,562],{"class":561},[551,15421,565],{"class":561},[551,15423,568],{"class":561},[551,15425,15426],{"class":561}," @admin\u002Fvideo-player\n",[539,15428,15430],{"className":574,"code":15429,"language":576,"meta":546,"style":546},"import {\n  AdminVideoPlayer,\n  AdminVideoPlayerControls,\n  AdminVideoPlayerFullscreen,\n  AdminVideoPlayerPlay,\n  AdminVideoPlayerProgress,\n  AdminVideoPlayerSettings,\n  AdminVideoPlayerTime,\n  AdminVideoPlayerToolbar,\n  AdminVideoPlayerVolume\n} from '@\u002Fcomponents\u002Fadmin\u002Fvideo-player'\n",[548,15431,15432,15438,15445,15452,15459,15466,15473,15480,15487,15494,15499],{"__ignoreMap":546},[551,15433,15434,15436],{"class":553,"line":554},[551,15435,584],{"class":583},[551,15437,588],{"class":587},[551,15439,15440,15443],{"class":553,"line":591},[551,15441,15442],{"class":594},"  AdminVideoPlayer",[551,15444,598],{"class":587},[551,15446,15447,15450],{"class":553,"line":601},[551,15448,15449],{"class":594},"  AdminVideoPlayerControls",[551,15451,598],{"class":587},[551,15453,15454,15457],{"class":553,"line":609},[551,15455,15456],{"class":594},"  AdminVideoPlayerFullscreen",[551,15458,598],{"class":587},[551,15460,15461,15464],{"class":553,"line":617},[551,15462,15463],{"class":594},"  AdminVideoPlayerPlay",[551,15465,598],{"class":587},[551,15467,15468,15471],{"class":553,"line":625},[551,15469,15470],{"class":594},"  AdminVideoPlayerProgress",[551,15472,598],{"class":587},[551,15474,15475,15478],{"class":553,"line":633},[551,15476,15477],{"class":594},"  AdminVideoPlayerSettings",[551,15479,598],{"class":587},[551,15481,15482,15485],{"class":553,"line":641},[551,15483,15484],{"class":594},"  AdminVideoPlayerTime",[551,15486,598],{"class":587},[551,15488,15489,15492],{"class":553,"line":649},[551,15490,15491],{"class":594},"  AdminVideoPlayerToolbar",[551,15493,598],{"class":587},[551,15495,15496],{"class":553,"line":657},[551,15497,15498],{"class":594},"  AdminVideoPlayerVolume\n",[551,15500,15501,15503,15505,15507,15510],{"class":553,"line":665},[551,15502,668],{"class":587},[551,15504,671],{"class":583},[551,15506,674],{"class":587},[551,15508,15509],{"class":561},"@\u002Fcomponents\u002Fadmin\u002Fvideo-player",[551,15511,680],{"class":587},[705,15513,15514,15515,15518],{},"vidstack 是一組 web components，需要在專案 build 設定告訴 Vue compiler 把 ",[548,15516,15517],{},"media-*"," 開頭的 tag 當成 native custom element：",[705,15520,15521],{},[1135,15522,1137],{},[539,15524,15525],{"className":574,"code":1140,"filename":1141,"language":576,"meta":546,"style":546},[548,15526,15527,15539,15547,15555,15585,15589,15593],{"__ignoreMap":546},[551,15528,15529,15531,15533,15535,15537],{"class":553,"line":554},[551,15530,1148],{"class":583},[551,15532,1151],{"class":583},[551,15534,1155],{"class":1154},[551,15536,1158],{"class":594},[551,15538,1161],{"class":587},[551,15540,15541,15543,15545],{"class":553,"line":591},[551,15542,1166],{"class":738},[551,15544,1169],{"class":587},[551,15546,588],{"class":587},[551,15548,15549,15551,15553],{"class":553,"line":601},[551,15550,1176],{"class":738},[551,15552,1169],{"class":587},[551,15554,588],{"class":587},[551,15556,15557,15559,15561,15563,15565,15567,15569,15571,15573,15575,15577,15579,15581,15583],{"class":553,"line":609},[551,15558,1185],{"class":1154},[551,15560,1169],{"class":587},[551,15562,1190],{"class":587},[551,15564,1194],{"class":1193},[551,15566,1197],{"class":587},[551,15568,1200],{"class":753},[551,15570,1203],{"class":594},[551,15572,1206],{"class":587},[551,15574,1209],{"class":1154},[551,15576,1158],{"class":594},[551,15578,1214],{"class":587},[551,15580,1217],{"class":561},[551,15582,1214],{"class":587},[551,15584,1222],{"class":594},[551,15586,15587],{"class":553,"line":617},[551,15588,1227],{"class":587},[551,15590,15591],{"class":553,"line":625},[551,15592,1232],{"class":587},[551,15594,15595,15597],{"class":553,"line":633},[551,15596,668],{"class":587},[551,15598,1222],{"class":594},[705,15600,15601],{},[1135,15602,1243],{},[539,15604,15605],{"className":574,"code":1246,"filename":1247,"language":576,"meta":546,"style":546},[548,15606,15607,15621,15639,15643,15655,15663,15671,15679,15687,15717,15721,15725,15731,15735],{"__ignoreMap":546},[551,15608,15609,15611,15613,15615,15617,15619],{"class":553,"line":554},[551,15610,584],{"class":583},[551,15612,1256],{"class":594},[551,15614,1259],{"class":583},[551,15616,674],{"class":587},[551,15618,1264],{"class":561},[551,15620,680],{"class":587},[551,15622,15623,15625,15627,15629,15631,15633,15635,15637],{"class":553,"line":591},[551,15624,584],{"class":583},[551,15626,1273],{"class":587},[551,15628,1276],{"class":594},[551,15630,1279],{"class":587},[551,15632,671],{"class":583},[551,15634,674],{"class":587},[551,15636,1286],{"class":561},[551,15638,680],{"class":587},[551,15640,15641],{"class":553,"line":601},[551,15642,1293],{"emptyLinePlaceholder":526},[551,15644,15645,15647,15649,15651,15653],{"class":553,"line":609},[551,15646,1148],{"class":583},[551,15648,1151],{"class":583},[551,15650,1276],{"class":1154},[551,15652,1158],{"class":594},[551,15654,1161],{"class":587},[551,15656,15657,15659,15661],{"class":553,"line":617},[551,15658,1310],{"class":738},[551,15660,1169],{"class":587},[551,15662,1315],{"class":594},[551,15664,15665,15667,15669],{"class":553,"line":625},[551,15666,1320],{"class":1154},[551,15668,1158],{"class":594},[551,15670,1161],{"class":587},[551,15672,15673,15675,15677],{"class":553,"line":633},[551,15674,1329],{"class":738},[551,15676,1169],{"class":587},[551,15678,588],{"class":587},[551,15680,15681,15683,15685],{"class":553,"line":641},[551,15682,1338],{"class":738},[551,15684,1169],{"class":587},[551,15686,588],{"class":587},[551,15688,15689,15691,15693,15695,15697,15699,15701,15703,15705,15707,15709,15711,15713,15715],{"class":553,"line":649},[551,15690,1347],{"class":1154},[551,15692,1169],{"class":587},[551,15694,1190],{"class":587},[551,15696,1194],{"class":1193},[551,15698,1197],{"class":587},[551,15700,1200],{"class":753},[551,15702,1203],{"class":594},[551,15704,1206],{"class":587},[551,15706,1209],{"class":1154},[551,15708,1158],{"class":594},[551,15710,1214],{"class":587},[551,15712,1217],{"class":561},[551,15714,1214],{"class":587},[551,15716,1222],{"class":594},[551,15718,15719],{"class":553,"line":657},[551,15720,1378],{"class":587},[551,15722,15723],{"class":553,"line":665},[551,15724,1383],{"class":587},[551,15726,15727,15729],{"class":553,"line":901},[551,15728,1388],{"class":587},[551,15730,1222],{"class":594},[551,15732,15733],{"class":553,"line":910},[551,15734,1395],{"class":594},[551,15736,15737,15739],{"class":553,"line":920},[551,15738,668],{"class":587},[551,15740,1222],{"class":594},[536,15742,683],{"id":683},[705,15744,1406,15745,15747,15748,15751],{},[548,15746,1409],{}," 即可播放，元件根據 src 字串自動辨識 provider：YouTube URL → YouTube provider、",[548,15749,15750],{},".m3u8"," → HLS、其他 → native MP4 \u002F WebM",[685,15753],{"name":15754},"VideoPlayerMp4Demo",[536,15756,690],{"id":690},[692,15758,15760],{"id":15759},"hls-串流含解析度切換","HLS 串流（含解析度切換）",[705,15762,15763,15764,15766,15767,15769,15770,15773],{},"來源為 ",[548,15765,15750],{}," 時，齒輪設定菜單會出現「解析度」區塊，列出 vidstack qualities 過濾後的 480 \u002F 720 \u002F 1080 選項；切換後寫入 ",[548,15768,1620],{}," key ",[548,15771,15772],{},"admin:player:resolution","，下次播放新 HLS 影片自動套用同設定。",[685,15775],{"name":15776},"VideoPlayerHlsDemo",[692,15778,15780],{"id":15779},"youtube","YouTube",[705,15782,15783,15785,15786,1123,15789,15792,15793,15796],{},[548,15784,1409],{}," 為 YouTube URL（",[548,15787,15788],{},"youtube.com\u002F...",[548,15790,15791],{},"youtu.be\u002F...","）或 ",[548,15794,15795],{},"youtube\u002F\u003Cid>"," 時自動切換到 YouTube provider；齒輪菜單不顯示解析度區塊（YouTube provider 不支援切換）。",[685,15798],{"name":15799},"VideoPlayerYoutubeDemo",[536,15801,720],{"id":719},[692,15803,723],{"id":723},[539,15805,15807],{"className":726,"code":15806,"language":728,"meta":546,"style":546},"\u003Ctemplate>\n  \u003Cadmin-video-player :poster :src>\n    \u003Cadmin-video-player-toolbar>\n      \u003Cadmin-video-player-play \u002F>\n      \u003Cadmin-video-player-time \u002F>\n      \u003Cadmin-video-player-controls \u002F>\n      \u003Cadmin-video-player-progress \u002F>\n      \u003Cadmin-video-player-settings \u002F>\n      \u003Cadmin-video-player-volume \u002F>\n      \u003Cadmin-video-player-fullscreen \u002F>\n    \u003C\u002Fadmin-video-player-toolbar>\n  \u003C\u002Fadmin-video-player>\n\u003C\u002Ftemplate>\n",[548,15808,15809,15817,15831,15840,15849,15858,15867,15876,15885,15894,15903,15911,15919],{"__ignoreMap":546},[551,15810,15811,15813,15815],{"class":553,"line":554},[551,15812,735],{"class":587},[551,15814,739],{"class":738},[551,15816,742],{"class":587},[551,15818,15819,15821,15824,15827,15829],{"class":553,"line":591},[551,15820,747],{"class":587},[551,15822,15823],{"class":738},"admin-video-player",[551,15825,15826],{"class":753}," :poster",[551,15828,4219],{"class":753},[551,15830,742],{"class":587},[551,15832,15833,15835,15838],{"class":553,"line":601},[551,15834,772],{"class":587},[551,15836,15837],{"class":738},"admin-video-player-toolbar",[551,15839,742],{"class":587},[551,15841,15842,15844,15847],{"class":553,"line":609},[551,15843,802],{"class":587},[551,15845,15846],{"class":738},"admin-video-player-play",[551,15848,1449],{"class":587},[551,15850,15851,15853,15856],{"class":553,"line":617},[551,15852,802],{"class":587},[551,15854,15855],{"class":738},"admin-video-player-time",[551,15857,1449],{"class":587},[551,15859,15860,15862,15865],{"class":553,"line":625},[551,15861,802],{"class":587},[551,15863,15864],{"class":738},"admin-video-player-controls",[551,15866,1449],{"class":587},[551,15868,15869,15871,15874],{"class":553,"line":633},[551,15870,802],{"class":587},[551,15872,15873],{"class":738},"admin-video-player-progress",[551,15875,1449],{"class":587},[551,15877,15878,15880,15883],{"class":553,"line":641},[551,15879,802],{"class":587},[551,15881,15882],{"class":738},"admin-video-player-settings",[551,15884,1449],{"class":587},[551,15886,15887,15889,15892],{"class":553,"line":649},[551,15888,802],{"class":587},[551,15890,15891],{"class":738},"admin-video-player-volume",[551,15893,1449],{"class":587},[551,15895,15896,15898,15901],{"class":553,"line":657},[551,15897,802],{"class":587},[551,15899,15900],{"class":738},"admin-video-player-fullscreen",[551,15902,1449],{"class":587},[551,15904,15905,15907,15909],{"class":553,"line":665},[551,15906,913],{"class":587},[551,15908,15837],{"class":738},[551,15910,742],{"class":587},[551,15912,15913,15915,15917],{"class":553,"line":901},[551,15914,923],{"class":587},[551,15916,15823],{"class":738},[551,15918,742],{"class":587},[551,15920,15921,15923,15925],{"class":553,"line":910},[551,15922,784],{"class":587},[551,15924,739],{"class":738},[551,15926,742],{"class":587},[692,15928,15823],{"id":15823},[940,15930],{"component":15931},"AdminVideoPlayer",[692,15933,15864],{"id":15864},[940,15935],{"component":15936},"AdminVideoPlayerControls",[692,15938,15900],{"id":15900},[940,15940],{"component":15941},"AdminVideoPlayerFullscreen",[692,15943,15846],{"id":15846},[940,15945],{"component":15946},"AdminVideoPlayerPlay",[692,15948,15873],{"id":15873},[940,15950],{"component":15951},"AdminVideoPlayerProgress",[692,15953,15882],{"id":15882},[940,15955],{"component":15956},"AdminVideoPlayerSettings",[692,15958,15855],{"id":15855},[940,15960],{"component":15961},"AdminVideoPlayerTime",[692,15963,15837],{"id":15837},[940,15965],{"component":15966},"AdminVideoPlayerToolbar",[692,15968,15891],{"id":15891},[940,15970],{"component":15971},"AdminVideoPlayerVolume",[536,15973,1556],{"id":1556},[1558,15975,15976,15986,15996,16002,16008,16025,16035],{},[1561,15977,15978,15982,15983,15985],{},[1135,15979,1565,15980,1569],{},[548,15981,1568],{},"：未加上時 dev console 會對 ",[548,15984,1577],{}," 元素噴 warning，詳細寫法見「安裝」章節。",[1561,15987,15988,1588,15990,4582,15992,1599,15994,713],{},[1135,15989,1587],{},[548,15991,1591],{},[548,15993,1591],{},[697,15995,1603],{"href":1602},[1561,15997,15998,16001],{},[1135,15999,16000],{},"YouTube 解析度不可切","：vidstack YouTube provider 不暴露 quality API，齒輪菜單會自動隱藏解析度區塊。",[1561,16003,16004,16007],{},[1135,16005,16006],{},"MP4 解析度不可切","：單一 MP4 來源沒有 quality 變體，齒輪菜單也不會顯示解析度區塊；如需多解析度切換，請改用 HLS 串流。",[1561,16009,16010,2466,16013,16015,16016,16019,16020,15769,16022,16024],{},[1135,16011,16012],{},"HLS qualities 載入時序",[548,16014,15750],{}," manifest 下載前 ",[548,16017,16018],{},"qualities"," 為空陣列，UI 顯示「載入中…」；manifest 解析後自動填入並依 ",[548,16021,1620],{},[548,16023,15772],{}," 套用最接近且 ≤ 目標的 quality。",[1561,16026,16027,16030,16031,16034],{},[1135,16028,16029],{},"音量、解析度跨實例共享","：所有 player 實例（含 audio-player）共用 ",[548,16032,16033],{},"admin:player:*"," namespace；多 tab 不互相同步避免操作被覆蓋。",[1561,16036,16037,16040,16041,16044,16045,16048,16049,16051],{},[1135,16038,16039],{},"全螢幕請求失敗","：若 iframe 沒給 ",[548,16042,16043],{},"allow=\"fullscreen\""," 或瀏覽器拒絕，",[548,16046,16047],{},"toggleFullscreen"," 不會 throw，會 emit ",[548,16050,6744],{}," 事件供消費端處理。",[536,16053,985],{"id":985},[987,16055],{"component":15931},[990,16057,1645],{},{"title":546,"searchDepth":601,"depth":601,"links":16059},[16060,16061,16062,16066,16078,16079],{"id":507,"depth":591,"text":507},{"id":683,"depth":591,"text":683},{"id":690,"depth":591,"text":690,"children":16063},[16064,16065],{"id":15759,"depth":601,"text":15760},{"id":15779,"depth":601,"text":15780},{"id":719,"depth":591,"text":720,"children":16067},[16068,16069,16070,16071,16072,16073,16074,16075,16076,16077],{"id":723,"depth":601,"text":723},{"id":15823,"depth":601,"text":15823},{"id":15864,"depth":601,"text":15864},{"id":15900,"depth":601,"text":15900},{"id":15846,"depth":601,"text":15846},{"id":15873,"depth":601,"text":15873},{"id":15882,"depth":601,"text":15882},{"id":15855,"depth":601,"text":15855},{"id":15837,"depth":601,"text":15837},{"id":15891,"depth":601,"text":15891},{"id":1556,"depth":591,"text":1556},{"id":985,"depth":591,"text":985},"影片播放器（vidstack）。來源：MP4、HLS、YouTube；控制：快進快退、解析度、播放速度、音量、全螢幕。",{"doc":1664},{},{"title":165,"description":16080},"2aTp7igBLDz3qwXX_cpB6wruy_AvItIRcuurhECDCvg",{"id":16086,"title":169,"body":16087,"component":526,"description":16967,"extension":1015,"links":16968,"meta":16971,"navigation":526,"new":18,"path":170,"seo":16972,"stem":171,"wrapperKind":172,"__hash__":16973},"docs\u002Fdocs\u002Fadmin\u002Fvxe-table.md",{"type":533,"value":16088,"toc":16944},[16089,16091,16109,16194,16196,16199,16202,16204,16207,16216,16219,16222,16225,16228,16231,16238,16241,16244,16247,16250,16252,16254,16816,16818,16822,16824,16827,16829,16831,16833,16836,16838,16841,16843,16846,16848,16851,16853,16856,16858,16938,16940,16942],[536,16090,507],{"id":507},[539,16092,16094],{"className":541,"code":16093,"filename":543,"language":544,"meta":545,"style":546},"pnpm dlx shadcn-vue add @admin\u002Fvxe-table\n",[548,16095,16096],{"__ignoreMap":546},[551,16097,16098,16100,16102,16104,16106],{"class":553,"line":554},[551,16099,558],{"class":557},[551,16101,562],{"class":561},[551,16103,565],{"class":561},[551,16105,568],{"class":561},[551,16107,16108],{"class":561}," @admin\u002Fvxe-table\n",[539,16110,16112],{"className":574,"code":16111,"language":576,"meta":546,"style":546},"import {\n  AdminVxeTable,\n  AdminVxeTableCheckbox,\n  AdminVxeTableDragIcon,\n  AdminVxeTableSorter,\n  AdminVxeTableText,\n  AdminVxeTableTextButton,\n  AdminVxeTableTextButtonGroup,\n  AdminVxeTableTextImage,\n  useVxeTable\n} from '@\u002Fcomponents\u002Fadmin\u002Fvxe-table'\n",[548,16113,16114,16120,16127,16134,16141,16148,16155,16162,16169,16176,16181],{"__ignoreMap":546},[551,16115,16116,16118],{"class":553,"line":554},[551,16117,584],{"class":583},[551,16119,588],{"class":587},[551,16121,16122,16125],{"class":553,"line":591},[551,16123,16124],{"class":594},"  AdminVxeTable",[551,16126,598],{"class":587},[551,16128,16129,16132],{"class":553,"line":601},[551,16130,16131],{"class":594},"  AdminVxeTableCheckbox",[551,16133,598],{"class":587},[551,16135,16136,16139],{"class":553,"line":609},[551,16137,16138],{"class":594},"  AdminVxeTableDragIcon",[551,16140,598],{"class":587},[551,16142,16143,16146],{"class":553,"line":617},[551,16144,16145],{"class":594},"  AdminVxeTableSorter",[551,16147,598],{"class":587},[551,16149,16150,16153],{"class":553,"line":625},[551,16151,16152],{"class":594},"  AdminVxeTableText",[551,16154,598],{"class":587},[551,16156,16157,16160],{"class":553,"line":633},[551,16158,16159],{"class":594},"  AdminVxeTableTextButton",[551,16161,598],{"class":587},[551,16163,16164,16167],{"class":553,"line":641},[551,16165,16166],{"class":594},"  AdminVxeTableTextButtonGroup",[551,16168,598],{"class":587},[551,16170,16171,16174],{"class":553,"line":649},[551,16172,16173],{"class":594},"  AdminVxeTableTextImage",[551,16175,598],{"class":587},[551,16177,16178],{"class":553,"line":657},[551,16179,16180],{"class":594},"  useVxeTable\n",[551,16182,16183,16185,16187,16189,16192],{"class":553,"line":665},[551,16184,668],{"class":587},[551,16186,671],{"class":583},[551,16188,674],{"class":587},[551,16190,16191],{"class":561},"@\u002Fcomponents\u002Fadmin\u002Fvxe-table",[551,16193,680],{"class":587},[536,16195,683],{"id":683},[705,16197,16198],{},"基本欄位與資料即可渲染表格。",[685,16200],{"name":16201},"VxeTableDemo",[536,16203,690],{"id":690},[692,16205,16206],{"id":16206},"排序",[705,16208,2141,16209,16212,16213,713],{},[548,16210,16211],{},"AdminVxeTableSorter"," 取代上游預設排序圖示，並關閉 ",[548,16214,16215],{},"sort-config.showIcon",[685,16217],{"name":16218},"VxeTableSortableDemo",[692,16220,16221],{"id":16221},"勾選與多選",[705,16223,16224],{},"啟用 checkbox 欄並監聽勾選變更，顯示目前選取筆數。",[685,16226],{"name":16227},"VxeTableCheckboxDemo",[692,16229,16230],{"id":16230},"分頁",[705,16232,16233,16234,16237],{},"需要底部頁碼與每頁筆數選擇時，開啟 ",[548,16235,16236],{},"pagination"," 並綁定目前頁資料與全量筆數。",[685,16239],{"name":16240},"VxeTablePaginationDemo",[692,16242,16243],{"id":16243},"所有子組件總覽",[705,16245,16246],{},"全部搭配子元件的版型一覽。",[685,16248],{"name":16249},"VxeTableShowcaseDemo",[536,16251,720],{"id":719},[692,16253,723],{"id":723},[539,16255,16257],{"className":726,"code":16256,"language":728,"meta":546,"style":546},"\u003Ctemplate>\n  \u003Cadmin-vxe-table :columns=\"columns\" :data=\"data\" :sort-config=\"{ showIcon: false }\">\n    \u003Ctemplate #headerCheckbox=\"{ checked, indeterminate }\">\n      \u003Cadmin-vxe-table-checkbox :checked=\"checked\" :indeterminate=\"indeterminate\" \u002F>\n    \u003C\u002Ftemplate>\n    \u003Ctemplate #rowCheckbox=\"{ row, checked, indeterminate }\">\n      \u003Cadmin-vxe-table-checkbox :checked=\"checked\" :indeterminate=\"indeterminate\" :row=\"row\" \u002F>\n    \u003C\u002Ftemplate>\n    \u003Ctemplate #rowDragIcon>\n      \u003Cadmin-vxe-table-drag-icon \u002F>\n    \u003C\u002Ftemplate>\n    \u003Ctemplate #stockHeader=\"{ column }\">\n      \u003Cspan>庫存\u003C\u002Fspan>\n      \u003Cadmin-vxe-table-sorter :column=\"column\" \u002F>\n    \u003C\u002Ftemplate>\n    \u003Ctemplate #product=\"{ row }\">\n      \u003Cadmin-vxe-table-text-image :image=\"row.image\" :name=\"row.name\" \u002F>\n    \u003C\u002Ftemplate>\n    \u003Ctemplate #category=\"{ row }\">\n      \u003Cadmin-vxe-table-text>\n        \u003Ctemplate #title>{{ row.category }}\u003C\u002Ftemplate>\n        \u003Ctemplate #subtitle>{{ row.sku }}\u003C\u002Ftemplate>\n      \u003C\u002Fadmin-vxe-table-text>\n    \u003C\u002Ftemplate>\n    \u003Ctemplate #actions>\n      \u003Cadmin-vxe-table-text-button-group>\n        \u003Cadmin-vxe-table-text-button>編輯\u003C\u002Fadmin-vxe-table-text-button>\n        \u003Cadmin-vxe-table-text-button>刪除\u003C\u002Fadmin-vxe-table-text-button>\n      \u003C\u002Fadmin-vxe-table-text-button-group>\n    \u003C\u002Ftemplate>\n  \u003C\u002Fadmin-vxe-table>\n\u003C\u002Ftemplate>\n",[548,16258,16259,16267,16311,16342,16374,16382,16416,16456,16464,16477,16486,16494,16520,16537,16558,16566,16592,16625,16633,16658,16667,16689,16711,16719,16727,16740,16749,16767,16784,16792,16800,16808],{"__ignoreMap":546},[551,16260,16261,16263,16265],{"class":553,"line":554},[551,16262,735],{"class":587},[551,16264,739],{"class":738},[551,16266,742],{"class":587},[551,16268,16269,16271,16274,16277,16279,16281,16284,16286,16289,16291,16293,16295,16297,16300,16302,16304,16307,16309],{"class":553,"line":591},[551,16270,747],{"class":587},[551,16272,16273],{"class":738},"admin-vxe-table",[551,16275,16276],{"class":753}," :columns",[551,16278,757],{"class":587},[551,16280,760],{"class":587},[551,16282,16283],{"class":561},"columns",[551,16285,760],{"class":587},[551,16287,16288],{"class":753}," :data",[551,16290,757],{"class":587},[551,16292,760],{"class":587},[551,16294,15267],{"class":561},[551,16296,760],{"class":587},[551,16298,16299],{"class":753}," :sort-config",[551,16301,757],{"class":587},[551,16303,760],{"class":587},[551,16305,16306],{"class":561},"{ showIcon: false }",[551,16308,760],{"class":587},[551,16310,742],{"class":587},[551,16312,16313,16315,16317,16319,16322,16324,16326,16328,16331,16333,16336,16338,16340],{"class":553,"line":601},[551,16314,772],{"class":587},[551,16316,739],{"class":738},[551,16318,8713],{"class":587},[551,16320,16321],{"class":753},"headerCheckbox",[551,16323,757],{"class":587},[551,16325,760],{"class":587},[551,16327,4243],{"class":587},[551,16329,16330],{"class":594}," checked",[551,16332,3348],{"class":587},[551,16334,16335],{"class":594}," indeterminate ",[551,16337,668],{"class":587},[551,16339,760],{"class":587},[551,16341,742],{"class":587},[551,16343,16344,16346,16349,16352,16354,16356,16358,16360,16363,16365,16367,16370,16372],{"class":553,"line":609},[551,16345,802],{"class":587},[551,16347,16348],{"class":738},"admin-vxe-table-checkbox",[551,16350,16351],{"class":753}," :checked",[551,16353,757],{"class":587},[551,16355,760],{"class":587},[551,16357,3014],{"class":561},[551,16359,760],{"class":587},[551,16361,16362],{"class":753}," :indeterminate",[551,16364,757],{"class":587},[551,16366,760],{"class":587},[551,16368,16369],{"class":561},"indeterminate",[551,16371,760],{"class":587},[551,16373,1449],{"class":587},[551,16375,16376,16378,16380],{"class":553,"line":617},[551,16377,913],{"class":587},[551,16379,739],{"class":738},[551,16381,742],{"class":587},[551,16383,16384,16386,16388,16390,16393,16395,16397,16399,16402,16404,16406,16408,16410,16412,16414],{"class":553,"line":625},[551,16385,772],{"class":587},[551,16387,739],{"class":738},[551,16389,8713],{"class":587},[551,16391,16392],{"class":753},"rowCheckbox",[551,16394,757],{"class":587},[551,16396,760],{"class":587},[551,16398,4243],{"class":587},[551,16400,16401],{"class":594}," row",[551,16403,3348],{"class":587},[551,16405,16330],{"class":594},[551,16407,3348],{"class":587},[551,16409,16335],{"class":594},[551,16411,668],{"class":587},[551,16413,760],{"class":587},[551,16415,742],{"class":587},[551,16417,16418,16420,16422,16424,16426,16428,16430,16432,16434,16436,16438,16440,16442,16445,16447,16449,16452,16454],{"class":553,"line":633},[551,16419,802],{"class":587},[551,16421,16348],{"class":738},[551,16423,16351],{"class":753},[551,16425,757],{"class":587},[551,16427,760],{"class":587},[551,16429,3014],{"class":561},[551,16431,760],{"class":587},[551,16433,16362],{"class":753},[551,16435,757],{"class":587},[551,16437,760],{"class":587},[551,16439,16369],{"class":561},[551,16441,760],{"class":587},[551,16443,16444],{"class":753}," :row",[551,16446,757],{"class":587},[551,16448,760],{"class":587},[551,16450,16451],{"class":561},"row",[551,16453,760],{"class":587},[551,16455,1449],{"class":587},[551,16457,16458,16460,16462],{"class":553,"line":641},[551,16459,913],{"class":587},[551,16461,739],{"class":738},[551,16463,742],{"class":587},[551,16465,16466,16468,16470,16472,16475],{"class":553,"line":649},[551,16467,772],{"class":587},[551,16469,739],{"class":738},[551,16471,8713],{"class":587},[551,16473,16474],{"class":753},"rowDragIcon",[551,16476,742],{"class":587},[551,16478,16479,16481,16484],{"class":553,"line":657},[551,16480,802],{"class":587},[551,16482,16483],{"class":738},"admin-vxe-table-drag-icon",[551,16485,1449],{"class":587},[551,16487,16488,16490,16492],{"class":553,"line":665},[551,16489,913],{"class":587},[551,16491,739],{"class":738},[551,16493,742],{"class":587},[551,16495,16496,16498,16500,16502,16505,16507,16509,16511,16514,16516,16518],{"class":553,"line":901},[551,16497,772],{"class":587},[551,16499,739],{"class":738},[551,16501,8713],{"class":587},[551,16503,16504],{"class":753},"stockHeader",[551,16506,757],{"class":587},[551,16508,760],{"class":587},[551,16510,4243],{"class":587},[551,16512,16513],{"class":594}," column ",[551,16515,668],{"class":587},[551,16517,760],{"class":587},[551,16519,742],{"class":587},[551,16521,16522,16524,16526,16528,16531,16533,16535],{"class":553,"line":910},[551,16523,802],{"class":587},[551,16525,551],{"class":738},[551,16527,778],{"class":587},[551,16529,16530],{"class":594},"庫存",[551,16532,784],{"class":587},[551,16534,551],{"class":738},[551,16536,742],{"class":587},[551,16538,16539,16541,16544,16547,16549,16551,16554,16556],{"class":553,"line":920},[551,16540,802],{"class":587},[551,16542,16543],{"class":738},"admin-vxe-table-sorter",[551,16545,16546],{"class":753}," :column",[551,16548,757],{"class":587},[551,16550,760],{"class":587},[551,16552,16553],{"class":561},"column",[551,16555,760],{"class":587},[551,16557,1449],{"class":587},[551,16559,16560,16562,16564],{"class":553,"line":930},[551,16561,913],{"class":587},[551,16563,739],{"class":738},[551,16565,742],{"class":587},[551,16567,16568,16570,16572,16574,16577,16579,16581,16583,16586,16588,16590],{"class":553,"line":3536},[551,16569,772],{"class":587},[551,16571,739],{"class":738},[551,16573,8713],{"class":587},[551,16575,16576],{"class":753},"product",[551,16578,757],{"class":587},[551,16580,760],{"class":587},[551,16582,4243],{"class":587},[551,16584,16585],{"class":594}," row ",[551,16587,668],{"class":587},[551,16589,760],{"class":587},[551,16591,742],{"class":587},[551,16593,16594,16596,16599,16602,16604,16606,16609,16611,16614,16616,16618,16621,16623],{"class":553,"line":4422},[551,16595,802],{"class":587},[551,16597,16598],{"class":738},"admin-vxe-table-text-image",[551,16600,16601],{"class":753}," :image",[551,16603,757],{"class":587},[551,16605,760],{"class":587},[551,16607,16608],{"class":561},"row.image",[551,16610,760],{"class":587},[551,16612,16613],{"class":753}," :name",[551,16615,757],{"class":587},[551,16617,760],{"class":587},[551,16619,16620],{"class":561},"row.name",[551,16622,760],{"class":587},[551,16624,1449],{"class":587},[551,16626,16627,16629,16631],{"class":553,"line":6194},[551,16628,913],{"class":587},[551,16630,739],{"class":738},[551,16632,742],{"class":587},[551,16634,16635,16637,16639,16641,16644,16646,16648,16650,16652,16654,16656],{"class":553,"line":6204},[551,16636,772],{"class":587},[551,16638,739],{"class":738},[551,16640,8713],{"class":587},[551,16642,16643],{"class":753},"category",[551,16645,757],{"class":587},[551,16647,760],{"class":587},[551,16649,4243],{"class":587},[551,16651,16585],{"class":594},[551,16653,668],{"class":587},[551,16655,760],{"class":587},[551,16657,742],{"class":587},[551,16659,16660,16662,16665],{"class":553,"line":6223},[551,16661,802],{"class":587},[551,16663,16664],{"class":738},"admin-vxe-table-text",[551,16666,742],{"class":587},[551,16668,16669,16671,16673,16675,16678,16680,16683,16685,16687],{"class":553,"line":6233},[551,16670,812],{"class":587},[551,16672,739],{"class":738},[551,16674,8713],{"class":587},[551,16676,16677],{"class":753},"title",[551,16679,778],{"class":587},[551,16681,16682],{"class":594},"{{ row.category }}",[551,16684,784],{"class":587},[551,16686,739],{"class":738},[551,16688,742],{"class":587},[551,16690,16691,16693,16695,16697,16700,16702,16705,16707,16709],{"class":553,"line":6242},[551,16692,812],{"class":587},[551,16694,739],{"class":738},[551,16696,8713],{"class":587},[551,16698,16699],{"class":753},"subtitle",[551,16701,778],{"class":587},[551,16703,16704],{"class":594},"{{ row.sku }}",[551,16706,784],{"class":587},[551,16708,739],{"class":738},[551,16710,742],{"class":587},[551,16712,16713,16715,16717],{"class":553,"line":6251},[551,16714,849],{"class":587},[551,16716,16664],{"class":738},[551,16718,742],{"class":587},[551,16720,16721,16723,16725],{"class":553,"line":524},[551,16722,913],{"class":587},[551,16724,739],{"class":738},[551,16726,742],{"class":587},[551,16728,16729,16731,16733,16735,16738],{"class":553,"line":6864},[551,16730,772],{"class":587},[551,16732,739],{"class":738},[551,16734,8713],{"class":587},[551,16736,16737],{"class":753},"actions",[551,16739,742],{"class":587},[551,16741,16742,16744,16747],{"class":553,"line":6873},[551,16743,802],{"class":587},[551,16745,16746],{"class":738},"admin-vxe-table-text-button-group",[551,16748,742],{"class":587},[551,16750,16751,16753,16756,16758,16761,16763,16765],{"class":553,"line":6894},[551,16752,812],{"class":587},[551,16754,16755],{"class":738},"admin-vxe-table-text-button",[551,16757,778],{"class":587},[551,16759,16760],{"class":594},"編輯",[551,16762,784],{"class":587},[551,16764,16755],{"class":738},[551,16766,742],{"class":587},[551,16768,16769,16771,16773,16775,16778,16780,16782],{"class":553,"line":6903},[551,16770,812],{"class":587},[551,16772,16755],{"class":738},[551,16774,778],{"class":587},[551,16776,16777],{"class":594},"刪除",[551,16779,784],{"class":587},[551,16781,16755],{"class":738},[551,16783,742],{"class":587},[551,16785,16786,16788,16790],{"class":553,"line":6912},[551,16787,849],{"class":587},[551,16789,16746],{"class":738},[551,16791,742],{"class":587},[551,16793,16794,16796,16798],{"class":553,"line":6921},[551,16795,913],{"class":587},[551,16797,739],{"class":738},[551,16799,742],{"class":587},[551,16801,16802,16804,16806],{"class":553,"line":12223},[551,16803,923],{"class":587},[551,16805,16273],{"class":738},[551,16807,742],{"class":587},[551,16809,16810,16812,16814],{"class":553,"line":12232},[551,16811,784],{"class":587},[551,16813,739],{"class":738},[551,16815,742],{"class":587},[692,16817,16273],{"id":16273},[940,16819],{"component":16820,"events-source":16821,"expose-source":16821,"props-source":16821,"slots-source":16821},"AdminVxeTable","admin",[692,16823,16348],{"id":16348},[940,16825],{"component":16826},"AdminVxeTableCheckbox",[692,16828,16543],{"id":16543},[940,16830],{"component":16211},[692,16832,16598],{"id":16598},[940,16834],{"component":16835},"AdminVxeTableTextImage",[692,16837,16755],{"id":16755},[940,16839],{"component":16840},"AdminVxeTableTextButton",[692,16842,16746],{"id":16746},[940,16844],{"component":16845},"AdminVxeTableTextButtonGroup",[692,16847,16483],{"id":16483},[940,16849],{"component":16850},"AdminVxeTableDragIcon",[692,16852,16664],{"id":16664},[940,16854],{"component":16855},"AdminVxeTableText",[536,16857,1556],{"id":1556},[1558,16859,16860,16875,16894,16918],{},[1561,16861,16862,2466,16864,16867,16868,4582,16870,16872,16873,713],{},[1135,16863,1587],{},[548,16865,16866],{},"vxe-table"," 依賴瀏覽器 DOM；元件殼不含 ",[548,16869,1591],{},[548,16871,1591],{},"（或其他框架等價機制）包覆；純 CSR 不需處理。見 ",[697,16874,1603],{"href":1602},[1561,16876,16877,16882,16883,16885,16886,16889,16890,16893],{},[1135,16878,16879,16881],{},[548,16880,7800],{}," 由 admin overlay 接管","：傳入 ",[548,16884,7800],{}," 時會顯示 ",[548,16887,16888],{},"v-admin-loading"," 遮罩，不會轉發至 ",[548,16891,16892],{},"vxe-grid"," 原生 loading／loading slot。",[1561,16895,16896,2466,16902,14865,16904,16906,16907,16910,16911,16914,16915,713],{},[1135,16897,16898,16899,16901],{},"自訂 cell 子元件須置於 ",[548,16900,16820],{}," 內",[548,16903,16826],{},[548,16905,16211],{}," 等透過 ",[548,16908,16909],{},"useVxeTable"," 取得內部 ",[548,16912,16913],{},"gridRef","；寫自訂 cell 時也可直接呼叫 ",[548,16916,16917],{},"useVxeTable()",[1561,16919,16920,2466,16923,16925,16926,2470,16928,16931,16932,16934,16935,16937],{},[1135,16921,16922],{},"分頁資料由消費端切片",[548,16924,16236],{}," 只負責 UI 與 ",[548,16927,10426],{},[548,16929,16930],{},"itemsPerPage"," 雙向綁定；表格 ",[548,16933,15267],{}," 仍須傳入當前頁資料，",[548,16936,10450],{}," 為全量筆數。",[536,16939,985],{"id":985},[987,16941],{"component":16820},[990,16943,992],{},{"title":546,"searchDepth":601,"depth":601,"links":16945},[16946,16947,16948,16954,16965,16966],{"id":507,"depth":591,"text":507},{"id":683,"depth":591,"text":683},{"id":690,"depth":591,"text":690,"children":16949},[16950,16951,16952,16953],{"id":16206,"depth":601,"text":16206},{"id":16221,"depth":601,"text":16221},{"id":16230,"depth":601,"text":16230},{"id":16243,"depth":601,"text":16243},{"id":719,"depth":591,"text":720,"children":16955},[16956,16957,16958,16959,16960,16961,16962,16963,16964],{"id":723,"depth":601,"text":723},{"id":16273,"depth":601,"text":16273},{"id":16348,"depth":601,"text":16348},{"id":16543,"depth":601,"text":16543},{"id":16598,"depth":601,"text":16598},{"id":16755,"depth":601,"text":16755},{"id":16746,"depth":601,"text":16746},{"id":16483,"depth":601,"text":16483},{"id":16664,"depth":601,"text":16664},{"id":1556,"depth":591,"text":1556},{"id":985,"depth":591,"text":985},"資料表格（vxe-table）。排序、勾選、分頁。",{"doc":16969,"api":16970},"https:\u002F\u002Fvxetable.cn\u002F","https:\u002F\u002Fvxetable.cn\u002Fv4\u002Ftable\u002Fapi",{},{"title":169,"description":16967},"jpSJkNN-W60xDQUTjxVNW_ZVHpNN5MwhNLl2sNX31vY",{"id":16975,"title":179,"body":16976,"component":18,"description":17178,"extension":1015,"links":19,"meta":17179,"navigation":526,"new":18,"path":180,"seo":17180,"stem":181,"wrapperKind":19,"__hash__":17181},"docs\u002Fdocs\u002Fai\u002F1.llms-txt.md",{"type":533,"value":16977,"toc":17170},[16978,16988,16999,17019,17022,17066,17069,17072,17076,17090,17094,17105,17109,17153,17160],[705,16979,16980,16981,16987],{},"本站有 ",[697,16982,16985],{"href":16983,"rel":16984},"https:\u002F\u002Fllmstxt.org",[701],[548,16986,179],{}," 格式索引，可把文件接給 ChatGPT、Claude、Cursor 等。",[2806,16989,16990],{},[705,16991,16992,16995,16996,16998],{},[1135,16993,16994],{},"選路："," client 有 MCP（Claude Code、Cursor）→ 用 ",[697,16997,183],{"href":184}," 可直接裝元件；只有 web fetch、或不想設 server → 用本頁。",[705,17000,17001,17002,17005,17006,7623,17008,17011,17012,14865,17015,17018],{},"部署網域：",[548,17003,17004],{},"https:\u002F\u002Fcomponent-registry-4d4d86.gitlab.io","（與 ",[548,17007,1141],{},[548,17009,17010],{},"site.url"," 同步）。下文 ",[548,17013,17014],{},"\u002Fllms.txt",[548,17016,17017],{},"\u002Fllms-full.txt"," 皆相對此網域。",[536,17020,17021],{"id":17021},"兩個檔",[5754,17023,17024,17036],{},[5757,17025,17026],{},[5760,17027,17028,17031,17033],{},[5763,17029,17030],{},"檔案",[5763,17032,1993],{},[5763,17034,17035],{},"何時用",[5770,17037,17038,17052],{},[5760,17039,17040,17046,17049],{},[5775,17041,17042],{},[697,17043,17044],{"href":17014},[548,17045,17014],{},[5775,17047,17048],{},"各文件頁標題與 description",[5775,17050,17051],{},"先掃有哪些元件再深入",[5760,17053,17054,17060,17063],{},[5775,17055,17056],{},[697,17057,17058],{"href":17017},[548,17059,17017],{},[5775,17061,17062],{},"每頁完整 markdown + demo + API 表",[5775,17064,17065],{},"直接依文件寫程式",[536,17067,17068],{"id":17068},"怎麼用",[705,17070,17071],{},"以 Cursor、Claude 為例；其他能 web fetch 的工具同理。",[692,17073,17075],{"id":17074},"cursor","Cursor",[705,17077,17078,17079,17082,17083,17086,17087,17089],{},"在 Docs／",[548,17080,17081],{},"@Docs"," 把 ",[548,17084,17085],{},"https:\u002F\u002Fcomponent-registry-4d4d86.gitlab.io\u002Fllms.txt"," 加為來源，prompt 裡用 ",[548,17088,17081],{}," 引用。",[692,17091,17093],{"id":17092},"claude","Claude",[705,17095,17096,17097,17104],{},"請 Claude 用 Web Fetch 讀 ",[697,17098,17101],{"href":17099,"rel":17100},"https:\u002F\u002Fcomponent-registry-4d4d86.gitlab.io\u002Fllms-full.txt",[701],[548,17102,17103],{},"llms-full.txt","，再依文件回答或產生範例。",[536,17106,17108],{"id":17107},"與-shadcn-vue-cli","與 shadcn-vue CLI",[17110,17111,17112,17118,17121,17127,17150],"ol",{},[1561,17113,17114,17115,17117],{},"把 ",[548,17116,17017],{}," 餵給 LLM。",[1561,17119,17120],{},"說明需求（例如「含 loading 的確認按鈕」）。",[1561,17122,17123,17124,17126],{},"取得元件名（如 ",[548,17125,2524],{},"）與範例。",[1561,17128,17129,17130,17132,17133,17136,17137,7623,17140,4782,17143,17146,17147,713],{},"依",[697,17131,507],{"href":508},"設好 ",[548,17134,17135],{},"@admin","，確認 ",[548,17138,17139],{},"components.json",[548,17141,17142],{},"iconLibrary",[548,17144,17145],{},"tabler","，再執行 ",[548,17148,17149],{},"pnpm dlx shadcn-vue add @admin\u002F\u003Ccomponent>",[1561,17151,17152],{},"貼上程式碼並調整。",[705,17154,17155,17156,17159],{},"提示可加：「只用 Admin Registry 已收錄元件，並先列出需 ",[548,17157,17158],{},"npx shadcn-vue add"," 的清單」。",[2806,17161,17162],{},[705,17163,17164,17165,17167,17168,713],{},"有 MCP 時可改走 ",[697,17166,183],{"href":184},"。Agent 工作流見 ",[697,17169,187],{"href":188},{"title":546,"searchDepth":601,"depth":601,"links":17171},[17172,17173,17177],{"id":17021,"depth":591,"text":17021},{"id":17068,"depth":591,"text":17068,"children":17174},[17175,17176],{"id":17074,"depth":601,"text":17075},{"id":17092,"depth":601,"text":17093},{"id":17107,"depth":591,"text":17108},"站點提供 \u002Fllms.txt（索引）與 \u002Fllms-full.txt（全文），供 AI 工具以 web fetch 讀取文件。",{},{"title":179,"description":17178},"8xvpqHF7fQs-e66anJJc2FUEy2KZpZZRc-TyXftOyAM",{"id":17183,"title":183,"body":17184,"component":18,"description":17512,"extension":1015,"links":19,"meta":17513,"navigation":526,"new":18,"path":184,"seo":17514,"stem":185,"wrapperKind":19,"__hash__":17515},"docs\u002Fdocs\u002Fai\u002F2.mcp.md",{"type":533,"value":17185,"toc":17505},[17186,17199,17203,17211,17300,17318,17324,17328,17359,17362,17365,17388,17428,17431,17434,17453,17457,17494,17502],[705,17187,17188,17189,8904,17193,17196,17197,713],{},"Admin Registry 相容 shadcn-vue registry，可接官方 ",[697,17190,183],{"href":17191,"rel":17192},"https:\u002F\u002Fwww.shadcn-vue.com\u002Fdocs\u002Fmcp",[701],[548,17194,17195],{},"npx shadcn-vue@latest mcp","）。需 Node.js 22 以上，見",[697,17198,507],{"href":508},[536,17200,17202],{"id":17201},"在-componentsjson-註冊","在 components.json 註冊",[705,17204,17205,17206,17208,17209,2466],{},"MCP 讀專案根目錄 ",[548,17207,17139],{},"。需有 ",[548,17210,17135],{},[539,17212,17216],{"className":17213,"code":17214,"language":17215,"meta":546,"style":546},"language-json shiki shiki-themes material-theme-lighter material-theme material-theme-palenight","{\n  \"iconLibrary\": \"tabler\",\n  \"registries\": {\n    \"@admin\": {\n      \"url\": \"https:\u002F\u002Fcomponent-registry-4d4d86.gitlab.io\u002Fr\u002Fstyles\u002Fadmin\u002F{name}.json\"\n    }\n  }\n}\n","json",[548,17217,17218,17222,17242,17255,17268,17288,17292,17296],{"__ignoreMap":546},[551,17219,17220],{"class":553,"line":554},[551,17221,1161],{"class":587},[551,17223,17224,17227,17229,17231,17233,17236,17238,17240],{"class":553,"line":591},[551,17225,17226],{"class":587},"  \"",[551,17228,17142],{"class":753},[551,17230,760],{"class":587},[551,17232,1169],{"class":587},[551,17234,17235],{"class":587}," \"",[551,17237,17145],{"class":561},[551,17239,760],{"class":587},[551,17241,598],{"class":587},[551,17243,17244,17246,17249,17251,17253],{"class":553,"line":601},[551,17245,17226],{"class":587},[551,17247,17248],{"class":753},"registries",[551,17250,760],{"class":587},[551,17252,1169],{"class":587},[551,17254,588],{"class":587},[551,17256,17257,17260,17262,17264,17266],{"class":553,"line":609},[551,17258,17259],{"class":587},"    \"",[551,17261,17135],{"class":557},[551,17263,760],{"class":587},[551,17265,1169],{"class":587},[551,17267,588],{"class":587},[551,17269,17270,17273,17277,17279,17281,17283,17286],{"class":553,"line":617},[551,17271,17272],{"class":587},"      \"",[551,17274,17276],{"class":17275},"sbssI","url",[551,17278,760],{"class":587},[551,17280,1169],{"class":587},[551,17282,17235],{"class":587},[551,17284,17285],{"class":561},"https:\u002F\u002Fcomponent-registry-4d4d86.gitlab.io\u002Fr\u002Fstyles\u002Fadmin\u002F{name}.json",[551,17287,4281],{"class":587},[551,17289,17290],{"class":553,"line":625},[551,17291,1227],{"class":587},[551,17293,17294],{"class":553,"line":633},[551,17295,1232],{"class":587},[551,17297,17298],{"class":553,"line":641},[551,17299,10148],{"class":587},[705,17301,17302,17304,17305,17307,17308,17311,17312,17315,17316,713],{},[548,17303,17142],{}," 須為 ",[548,17306,17145],{},"。MCP 安裝走同一個 CLI；若是 ",[548,17309,17310],{},"lucide","，不會裝上 ",[548,17313,17314],{},"@tabler\u002Ficons-vue","。做法見",[697,17317,507],{"href":508},[705,17319,17320,17321,713],{},"重啟 MCP client 後，對話可用 ",[548,17322,17323],{},"@admin\u002F\u003Ccomponent>",[536,17325,17327],{"id":17326},"prompt-範例","Prompt 範例",[1558,17329,17330,17336,17349],{},[1561,17331,17332,17333,17335],{},"「列出所有 ",[548,17334,17135],{}," 元件，依用途分組」",[1561,17337,17338,17339,14865,17342,14865,17345,17348],{},"「安裝 ",[548,17340,17341],{},"@admin\u002Fbutton",[548,17343,17344],{},"@admin\u002Fdialog",[548,17346,17347],{},"@admin\u002Finput","」",[1561,17350,17351,17352,17354,17355,17358],{},"「用 ",[548,17353,17135],{}," 寫含 loading 的登入表單；先列 ",[548,17356,17357],{},"@admin\u002F\u003Cx>"," 再給程式碼」",[705,17360,17361],{},"要求「先列清單再給程式碼」可減少一次產出大量不可用內容。",[536,17363,17364],{"id":17364},"查詢範例",[705,17366,17367,17370,17371,17373,17374,17377,17378,15792,17381,17377,17384,17387],{},[548,17368,17369],{},"get_item_examples_from_registries"," 可查到已發佈的 demo，以 ",[548,17372,17135],{}," 為 registry，用 ",[548,17375,17376],{},"\u003Ccomponent>-demo","（例如 ",[548,17379,17380],{},"button-demo",[548,17382,17383],{},"\u003Ccomponent> example",[548,17385,17386],{},"dialog example","）查詢。",[705,17389,17390,17391,14865,17393,14865,17395,14865,17398,14865,17401,14865,17404,14865,17406,14865,17409,14865,17411,14865,17414,14865,17417,14865,17419,14865,17422,17425,17426,713],{},"目前已發佈 13 個：",[548,17392,13843],{},[548,17394,3613],{},[548,17396,17397],{},"checkbox",[548,17399,17400],{},"dialog",[548,17402,17403],{},"divider",[548,17405,8579],{},[548,17407,17408],{},"progress",[548,17410,5801],{},[548,17412,17413],{},"switch",[548,17415,17416],{},"tabs",[548,17418,1194],{},[548,17420,17421],{},"textarea",[548,17423,17424],{},"tooltip","。其他元件尚未發佈，請改看文件站，或讀 ",[548,17427,17017],{},[536,17429,17430],{"id":17430},"已知限制",[705,17432,17433],{},"以 shadcn-vue 2.8.2 為準：",[1558,17435,17436],{},[1561,17437,17438,14865,17441,17444,17445,17448,17449,17452],{},[548,17439,17440],{},"list_items_in_registries",[548,17442,17443],{},"search_items_in_registries"," 回傳的 Add command 欄位會顯示 ",[548,17446,17447],{},"[object Promise]","（上游 bug）。請改用 ",[548,17450,17451],{},"get_add_command_for_items"," 取得安裝指令。",[536,17454,17456],{"id":17455},"與-llmstxt","與 llms.txt",[5754,17458,17459,17468],{},[5757,17460,17461],{},[5760,17462,17463,17466],{},[5763,17464,17465],{},"方式",[5763,17467,17035],{},[5770,17469,17470,17483],{},[5760,17471,17472,17476],{},[5775,17473,17474],{},[1135,17475,183],{},[5775,17477,17478,17479,17482],{},"要 AI 執行 ",[548,17480,17481],{},"shadcn-vue add","、列元件、依需求安裝",[5760,17484,17485,17491],{},[5775,17486,17487],{},[1135,17488,17489],{},[697,17490,179],{"href":180},[5775,17492,17493],{},"只要讀文件（web fetch）；無 MCP 或不想設 server",[705,17495,17496,17497,17499,17500,713],{},"可並用：MCP 裝元件，",[548,17498,17017],{}," 補 API／demo。工作流規則見 ",[697,17501,187],{"href":188},[990,17503,17504],{},"html pre.shiki code .sMK4o, html code.shiki .sMK4o{--shiki-light:#39ADB5;--shiki-default:#89DDFF;--shiki-dark:#89DDFF}html pre.shiki code .spNyl, html code.shiki .spNyl{--shiki-light:#9C3EDA;--shiki-default:#C792EA;--shiki-dark:#C792EA}html pre.shiki code .sfazB, html code.shiki .sfazB{--shiki-light:#91B859;--shiki-default:#C3E88D;--shiki-dark:#C3E88D}html pre.shiki code .sBMFI, html code.shiki .sBMFI{--shiki-light:#E2931D;--shiki-default:#FFCB6B;--shiki-dark:#FFCB6B}html pre.shiki code .sbssI, html code.shiki .sbssI{--shiki-light:#F76D47;--shiki-default:#F78C6C;--shiki-dark:#F78C6C}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);}",{"title":546,"searchDepth":601,"depth":601,"links":17506},[17507,17508,17509,17510,17511],{"id":17201,"depth":591,"text":17202},{"id":17326,"depth":591,"text":17327},{"id":17364,"depth":591,"text":17364},{"id":17430,"depth":591,"text":17430},{"id":17455,"depth":591,"text":17456},"用 shadcn-vue 官方 MCP server，在對話中瀏覽與安裝 @admin 元件。",{},{"title":183,"description":17512},"yr0GC8gKN_bUsXJIUVa7FPQlNyluOCnYoi0DpzVKtEw",{"id":17517,"title":187,"body":17518,"component":18,"description":17653,"extension":1015,"links":19,"meta":17654,"navigation":526,"new":18,"path":188,"seo":17655,"stem":189,"wrapperKind":19,"__hash__":17656},"docs\u002Fdocs\u002Fai\u002F3.skills.md",{"type":533,"value":17519,"toc":17649},[17520,17537,17539,17546,17564,17567,17589,17593,17643,17646],[705,17521,17522,17525,17526,17533,17534,17536],{},[548,17523,17524],{},"admin-registry"," 是給消費端專案的 agent skill，用 ",[697,17527,17530],{"href":17528,"rel":17529},"https:\u002F\u002Fskills.sh",[701],[548,17531,17532],{},"npx skills"," 安裝。結構對齊 shadcn-vue skill 的 Setup／Install／Compose，只補 ",[548,17535,17135],{}," 規則；官方 shadcn-vue skill 仍需保留。",[536,17538,507],{"id":507},[705,17540,17541,17542,17545],{},"需要 GitLab repo ",[548,17543,17544],{},"tpi-dtd\u002Fcomponent-registry"," 讀取權限。",[539,17547,17549],{"className":541,"code":17548,"language":544,"meta":546,"style":546},"npx skills add https:\u002F\u002Fgitlab.com\u002Ftpi-dtd\u002Fcomponent-registry\n",[548,17550,17551],{"__ignoreMap":546},[551,17552,17553,17556,17559,17561],{"class":553,"line":554},[551,17554,17555],{"class":557},"npx",[551,17557,17558],{"class":561}," skills",[551,17560,568],{"class":561},[551,17562,17563],{"class":561}," https:\u002F\u002Fgitlab.com\u002Ftpi-dtd\u002Fcomponent-registry\n",[705,17565,17566],{},"只裝這一個：",[539,17568,17570],{"className":541,"code":17569,"language":544,"meta":546,"style":546},"npx skills add https:\u002F\u002Fgitlab.com\u002Ftpi-dtd\u002Fcomponent-registry --skill admin-registry\n",[548,17571,17572],{"__ignoreMap":546},[551,17573,17574,17576,17578,17580,17583,17586],{"class":553,"line":554},[551,17575,17555],{"class":557},[551,17577,17558],{"class":561},[551,17579,568],{"class":561},[551,17581,17582],{"class":561}," https:\u002F\u002Fgitlab.com\u002Ftpi-dtd\u002Fcomponent-registry",[551,17584,17585],{"class":561}," --skill",[551,17587,17588],{"class":561}," admin-registry\n",[536,17590,17592],{"id":17591},"與-mcpllmstxt","與 MCP、llms.txt",[5754,17594,17595,17603],{},[5757,17596,17597],{},[5760,17598,17599,17601],{},[5763,17600,17465],{},[5763,17602,17035],{},[5770,17604,17605,17619,17630],{},[5760,17606,17607,17613],{},[5775,17608,17609],{},[1135,17610,17611],{},[697,17612,183],{"href":184},[5775,17614,17615,17616,17618],{},"AI 執行 ",[548,17617,17481],{},"、掃 registry",[5760,17620,17621,17627],{},[5775,17622,17623],{},[1135,17624,17625],{},[697,17626,179],{"href":180},[5775,17628,17629],{},"AI 只讀文件（web fetch）",[5760,17631,17632,17637],{},[5775,17633,17634],{},[1135,17635,17636],{},"本 skill",[5775,17638,17639,17640,17642],{},"接 ",[548,17641,17135],{},"、裝元件、組畫面時套用 tokens、naming、Headed UI 規則",[705,17644,17645],{},"可並用：MCP 裝東西，llms 補 API，skill 管工作流。",[990,17647,17648],{},"html pre.shiki code .sBMFI, html code.shiki .sBMFI{--shiki-light:#E2931D;--shiki-default:#FFCB6B;--shiki-dark:#FFCB6B}html pre.shiki code .sfazB, html code.shiki .sfazB{--shiki-light:#91B859;--shiki-default:#C3E88D;--shiki-dark:#C3E88D}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);}",{"title":546,"searchDepth":601,"depth":601,"links":17650},[17651,17652],{"id":507,"depth":591,"text":507},{"id":17591,"depth":591,"text":17592},"用 npx skills 安裝 admin-registry skill；與官方 shadcn-vue skill 並用，補 @admin 規則。",{},{"title":187,"description":17653},"JEtLKjD264ojYytgJSvRaxpRjj2hOAtgx8BWpBVIap8",{"id":17658,"title":196,"body":17659,"component":18,"description":18072,"extension":1015,"links":19,"meta":18073,"navigation":526,"new":18,"path":197,"seo":18074,"stem":198,"wrapperKind":19,"__hash__":18075},"docs\u002Fdocs\u002Faio-editor\u002F1.overview.md",{"type":533,"value":17660,"toc":18065},[17661,17667,17708,17711,17743,17764,17768,17834,17836,17855,17859,18018,18025,18028,18062],[705,17662,17663,17666],{},[548,17664,17665],{},"@admin\u002Faio-editor"," 是 config 驅動的 all-in-one tiptap 編輯器：consumer 不需要在 template 組裝任何子元件，傳一份 config 決定啟用哪些 extension、toolbar 按鈕、bubble menu 與 drag handle。",[539,17668,17670],{"className":726,"code":17669,"language":728,"meta":546,"style":546},"\u003Ctemplate>\n  \u003Cadmin-aio-editor v-model=\"content\" \u002F>\n\u003C\u002Ftemplate>\n",[548,17671,17672,17680,17700],{"__ignoreMap":546},[551,17673,17674,17676,17678],{"class":553,"line":554},[551,17675,735],{"class":587},[551,17677,739],{"class":738},[551,17679,742],{"class":587},[551,17681,17682,17684,17687,17689,17691,17693,17696,17698],{"class":553,"line":591},[551,17683,747],{"class":587},[551,17685,17686],{"class":738},"admin-aio-editor",[551,17688,2867],{"class":753},[551,17690,757],{"class":587},[551,17692,760],{"class":587},[551,17694,17695],{"class":561},"content",[551,17697,760],{"class":587},[551,17699,1449],{"class":587},[551,17701,17702,17704,17706],{"class":553,"line":601},[551,17703,784],{"class":587},[551,17705,739],{"class":738},[551,17707,742],{"class":587},[536,17709,17710],{"id":17710},"系列組成",[5754,17712,17713,17723],{},[5757,17714,17715],{},[5760,17716,17717,17720],{},[5763,17718,17719],{},"文件",[5763,17721,17722],{},"用途",[5770,17724,17725,17734],{},[5760,17726,17727,17731],{},[5775,17728,17729],{},[697,17730,200],{"href":201},[5775,17732,17733],{},"主元件：demo、API 參考、注意事項",[5760,17735,17736,17740],{},[5775,17737,17738],{},[697,17739,204],{"href":210},[5775,17741,17742],{},"全部 extension 逐一列出，含完整選項說明",[705,17744,17745,17746,17748,17749,17752,17753,17756,17757,17760,17761,17763],{},"Registry 單元只有一個：",[548,17747,17665],{},"。UI 與邏輯核心（extensions、預設 config、",[548,17750,17751],{},"useAioEditor","）同屬此單元（核心置於元件內 ",[548,17754,17755],{},"core\u002F"," 子目錄），安裝即取得完整編輯器；config 型別、enums 與各 ",[548,17758,17759],{},"default*Config"," 皆自 ",[548,17762,17665],{}," 匯出。",[536,17765,17767],{"id":17766},"與編輯器editor-系列的差異","與編輯器（editor-*）系列的差異",[5754,17769,17770,17784],{},[5757,17771,17772],{},[5760,17773,17774,17776,17781],{},[5763,17775],{},[5763,17777,17778],{},[697,17779,17780],{"href":390},"編輯器系列",[5763,17782,17783],{},"AIO 編輯器系列",[5770,17785,17786,17797,17808,17823],{},[5760,17787,17788,17791,17794],{},[5775,17789,17790],{},"組裝方式",[5775,17792,17793],{},"template 組裝子元件",[5775,17795,17796],{},"config 驅動，單一元件",[5760,17798,17799,17802,17805],{},[5775,17800,17801],{},"適合情境",[5775,17803,17804],{},"需要細部客製 UI 結構",[5775,17806,17807],{},"裝上就要一套完整編輯器",[5760,17809,17810,17813,17816],{},[5775,17811,17812],{},"功能取捨",[5775,17814,17815],{},"要什麼裝什麼（opt-in 包）",[5775,17817,17818,17819,17822],{},"預設全開，用 ",[548,17820,17821],{},"exclude"," 關閉",[5760,17824,17825,17828,17831],{},[5775,17826,17827],{},"相依關係",[5775,17829,17830],{},"—",[5775,17832,17833],{},"與 editor-* 零耦合，可獨立安裝",[536,17835,507],{"id":507},[539,17837,17839],{"className":541,"code":17838,"language":544,"meta":546,"style":546},"pnpm dlx shadcn-vue@latest add @admin\u002Faio-editor\n",[548,17840,17841],{"__ignoreMap":546},[551,17842,17843,17845,17847,17850,17852],{"class":553,"line":554},[551,17844,558],{"class":557},[551,17846,562],{"class":561},[551,17848,17849],{"class":561}," shadcn-vue@latest",[551,17851,568],{"class":561},[551,17853,17854],{"class":561}," @admin\u002Faio-editor\n",[536,17856,17858],{"id":17857},"config-快速心智模型","config 快速心智模型",[539,17860,17862],{"className":574,"code":17861,"language":576,"meta":546,"style":546},"const config: AioEditorConfig = {\n  features: [],         \u002F\u002F 唯一宣告來源：按鈕排列 = 功能載入（未宣告即不載入）\n  include: [],          \u002F\u002F 無按鈕載入能力（保 Ctrl+Z、輸入規則、Mention…；自動補齊硬依賴）\n  exclude: [],          \u002F\u002F 排除任意 extension（一律生效、分級警告、同名替換）\n  extensionsConfig: {}, \u002F\u002F 各 extension 選項覆寫（深層 merge；陣列與 instance 整值取代、null 清除預設）\n  extraExtensions: [],  \u002F\u002F 自訂 extension \u002F 同名替換（優先權最高）\n  toolbarOptions: {},   \u002F\u002F 標籤 \u002F 字級字體清單 \u002F 色票 \u002F requestUrl \u002F requestColor\n  bubbles: {},          \u002F\u002F 掛載跟隨 features；個別 false 停用、物件覆寫、slot 替換\n  dragHandle: false,    \u002F\u002F false 停用或物件覆寫\n  paste: {},            \u002F\u002F 貼上行為（純文字 \u002F 清圖 \u002F transform hooks）\n  silence: false        \u002F\u002F 靜音內部警告\n}\n",[548,17863,17864,17880,17895,17909,17923,17936,17950,17962,17974,17990,18002,18014],{"__ignoreMap":546},[551,17865,17866,17868,17871,17873,17876,17878],{"class":553,"line":554},[551,17867,3321],{"class":753},[551,17869,17870],{"class":594}," config",[551,17872,1169],{"class":587},[551,17874,17875],{"class":557}," AioEditorConfig",[551,17877,10094],{"class":587},[551,17879,588],{"class":587},[551,17881,17882,17885,17887,17890,17892],{"class":553,"line":591},[551,17883,17884],{"class":738},"  features",[551,17886,1169],{"class":587},[551,17888,17889],{"class":594}," []",[551,17891,3348],{"class":587},[551,17893,17894],{"class":4831},"         \u002F\u002F 唯一宣告來源：按鈕排列 = 功能載入（未宣告即不載入）\n",[551,17896,17897,17900,17902,17904,17906],{"class":553,"line":601},[551,17898,17899],{"class":738},"  include",[551,17901,1169],{"class":587},[551,17903,17889],{"class":594},[551,17905,3348],{"class":587},[551,17907,17908],{"class":4831},"          \u002F\u002F 無按鈕載入能力（保 Ctrl+Z、輸入規則、Mention…；自動補齊硬依賴）\n",[551,17910,17911,17914,17916,17918,17920],{"class":553,"line":609},[551,17912,17913],{"class":738},"  exclude",[551,17915,1169],{"class":587},[551,17917,17889],{"class":594},[551,17919,3348],{"class":587},[551,17921,17922],{"class":4831},"          \u002F\u002F 排除任意 extension（一律生效、分級警告、同名替換）\n",[551,17924,17925,17928,17930,17933],{"class":553,"line":617},[551,17926,17927],{"class":738},"  extensionsConfig",[551,17929,1169],{"class":587},[551,17931,17932],{"class":587}," {},",[551,17934,17935],{"class":4831}," \u002F\u002F 各 extension 選項覆寫（深層 merge；陣列與 instance 整值取代、null 清除預設）\n",[551,17937,17938,17941,17943,17945,17947],{"class":553,"line":625},[551,17939,17940],{"class":738},"  extraExtensions",[551,17942,1169],{"class":587},[551,17944,17889],{"class":594},[551,17946,3348],{"class":587},[551,17948,17949],{"class":4831},"  \u002F\u002F 自訂 extension \u002F 同名替換（優先權最高）\n",[551,17951,17952,17955,17957,17959],{"class":553,"line":633},[551,17953,17954],{"class":738},"  toolbarOptions",[551,17956,1169],{"class":587},[551,17958,17932],{"class":587},[551,17960,17961],{"class":4831},"   \u002F\u002F 標籤 \u002F 字級字體清單 \u002F 色票 \u002F requestUrl \u002F requestColor\n",[551,17963,17964,17967,17969,17971],{"class":553,"line":641},[551,17965,17966],{"class":738},"  bubbles",[551,17968,1169],{"class":587},[551,17970,17932],{"class":587},[551,17972,17973],{"class":4831},"          \u002F\u002F 掛載跟隨 features；個別 false 停用、物件覆寫、slot 替換\n",[551,17975,17976,17979,17981,17985,17987],{"class":553,"line":649},[551,17977,17978],{"class":738},"  dragHandle",[551,17980,1169],{"class":587},[551,17982,17984],{"class":17983},"sfNiH"," false",[551,17986,3348],{"class":587},[551,17988,17989],{"class":4831},"    \u002F\u002F false 停用或物件覆寫\n",[551,17991,17992,17995,17997,17999],{"class":553,"line":657},[551,17993,17994],{"class":738},"  paste",[551,17996,1169],{"class":587},[551,17998,17932],{"class":587},[551,18000,18001],{"class":4831},"            \u002F\u002F 貼上行為（純文字 \u002F 清圖 \u002F transform hooks）\n",[551,18003,18004,18007,18009,18011],{"class":553,"line":665},[551,18005,18006],{"class":738},"  silence",[551,18008,1169],{"class":587},[551,18010,17984],{"class":17983},[551,18012,18013],{"class":4831},"        \u002F\u002F 靜音內部警告\n",[551,18015,18016],{"class":553,"line":901},[551,18017,10148],{"class":587},[705,18019,18020,18021,18024],{},"所有欄位皆可省略；未指定 ",[548,18022,18023],{},"features"," 時使用完整預設排列（35 顆）。按鈕依 extension 啟用狀態自動隱藏，不會出現壞按鈕。",[536,18026,18027],{"id":18027},"兩層客製路徑",[17110,18029,18030,18054],{},[1561,18031,18032,18035,18036,1123,18038,1123,18041,1123,18043,1123,18046,18049,18050,18053],{},[1135,18033,18034],{},"config 層","（推薦）：",[548,18037,18023],{},[548,18039,18040],{},"include",[548,18042,17821],{},[548,18044,18045],{},"extensionsConfig",[548,18047,18048],{},"extraExtensions"," 同名替換——客製全部留在你自己的程式碼，vendored 檔保持乾淨，未來 ",[548,18051,18052],{},"shadcn add"," 更新零衝突",[1561,18055,18056,18059,18060,713],{},[1135,18057,18058],{},"改 vendored 源碼","：shadcn 精神的最終逃生口——升級時需人工合併，建議只在 config 層做不到時使用各 extension 之完整選項見 ",[697,18061,209],{"href":210},[990,18063,18064],{},"html pre.shiki code .sMK4o, html code.shiki .sMK4o{--shiki-light:#39ADB5;--shiki-default:#89DDFF;--shiki-dark:#89DDFF}html pre.shiki code .swJcz, html code.shiki .swJcz{--shiki-light:#E53935;--shiki-default:#F07178;--shiki-dark:#F07178}html pre.shiki code .spNyl, html code.shiki .spNyl{--shiki-light:#9C3EDA;--shiki-default:#C792EA;--shiki-dark:#C792EA}html pre.shiki code .sfazB, html code.shiki .sfazB{--shiki-light:#91B859;--shiki-default:#C3E88D;--shiki-dark:#C3E88D}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 pre.shiki code .sBMFI, html code.shiki .sBMFI{--shiki-light:#E2931D;--shiki-default:#FFCB6B;--shiki-dark:#FFCB6B}html pre.shiki code .sTEyZ, html code.shiki .sTEyZ{--shiki-light:#90A4AE;--shiki-default:#EEFFFF;--shiki-dark:#BABED8}html pre.shiki code .sHwdD, html code.shiki .sHwdD{--shiki-light:#90A4AE;--shiki-light-font-style:italic;--shiki-default:#546E7A;--shiki-default-font-style:italic;--shiki-dark:#676E95;--shiki-dark-font-style:italic}html pre.shiki code .sfNiH, html code.shiki .sfNiH{--shiki-light:#FF5370;--shiki-default:#FF9CAC;--shiki-dark:#FF9CAC}",{"title":546,"searchDepth":601,"depth":601,"links":18066},[18067,18068,18069,18070,18071],{"id":17710,"depth":591,"text":17710},{"id":17766,"depth":591,"text":17767},{"id":507,"depth":591,"text":507},{"id":17857,"depth":591,"text":17858},{"id":18027,"depth":591,"text":18027},"config 驅動的 all-in-one 富文本編輯器系列，傳入設定即得完整編輯器。",{},{"title":196,"description":18072},"gVXOqvTx60K7o2_wfIcij-Rso0WYjZUcTs3xA2mPV7w",{"id":18077,"title":200,"body":18078,"component":526,"description":18604,"extension":1015,"links":18605,"meta":18607,"navigation":526,"new":18,"path":201,"seo":18608,"stem":202,"wrapperKind":19,"__hash__":18609},"docs\u002Fdocs\u002Faio-editor\u002F2.editor.md",{"type":533,"value":18079,"toc":18588},[18080,18082,18098,18107,18109,18112,18115,18117,18121,18138,18141,18144,18153,18156,18160,18180,18183,18187,18194,18323,18326,18330,18345,18348,18350,18353,18356,18377,18379,18581,18583,18585],[536,18081,507],{"id":507},[539,18083,18084],{"className":541,"code":17838,"language":544,"meta":546,"style":546},[548,18085,18086],{"__ignoreMap":546},[551,18087,18088,18090,18092,18094,18096],{"class":553,"line":554},[551,18089,558],{"class":557},[551,18091,562],{"class":561},[551,18093,17849],{"class":561},[551,18095,568],{"class":561},[551,18097,17854],{"class":561},[705,18099,18100,18101,18103,18104,18106],{},"安裝即取得 UI 與邏輯核心（tiptap extensions、預設 config、",[548,18102,17751],{},"），核心置於元件內 ",[548,18105,17755],{}," 子目錄，無需另裝其他單元。",[536,18108,683],{"id":683},[705,18110,18111],{},"預設 config 即包含完整功能：36 個 extensions、35 顆 toolbar 控制項、7 種情境 bubble menu 與 drag handle。",[685,18113],{"name":18114},"AioEditorBasicDemo",[536,18116,690],{"id":690},[692,18118,18120],{"id":18119},"自訂-toolbar-與-custom-按鈕","自訂 toolbar 與 Custom 按鈕",[705,18122,18123,18126,18127,18129,18130,18133,18134,18137],{},[548,18124,18125],{},"config.features"," 以宣告陣列決定按鈕集合與順序（同時決定 extension 載入），",[548,18128,61],{}," 分組；",[548,18131,18132],{},"Custom"," 功能可帶 icon \u002F slot \u002F 自帶 extensions。bubble 跟隨宣告自動掛載，",[548,18135,18136],{},"dragHandle"," 可停用。",[685,18139],{"name":18140},"AioEditorCustomToolbarDemo",[692,18142,18143],{"id":18143},"表格",[705,18145,18146,18149,18150,18152],{},[548,18147,18148],{},"Table"," 功能載入 ",[548,18151,344],{},"（Table \u002F TableRow \u002F TableCell \u002F TableHeader）。游標進入表格時依位置掛載 Table \u002F TableColumn \u002F TableRow 三種 bubble，欄寬可拖曳框線調整。",[685,18154],{"name":18155},"AioEditorTableDemo",[692,18157,18159],{"id":18158},"圖片與-requesturl","圖片與 requestUrl",[705,18161,18162,18164,18165,18168,18169,18172,18173,18176,18177,18179],{},[548,18163,77],{}," 功能之插入來源走 ",[548,18166,18167],{},"config.toolbarOptions.requestUrl","（Link \u002F Video 共用同一入口，以 ",[548,18170,18171],{},"kind"," 區分）；未提供時 fallback 為 ",[548,18174,18175],{},"window.prompt","。實務上在此接上傳對話框或素材庫，回傳 ",[548,18178,8135],{}," 即取消。點選圖片出現 Image bubble，可切換對齊與寬度。",[685,18181],{"name":18182},"AioEditorImageDemo",[692,18184,18186],{"id":18185},"前台渲染輸出-html","前台渲染輸出 HTML",[705,18188,18189,18190,18193],{},"編輯器內容樣式已拆為共通 prose 樣式 ",[548,18191,18192],{},"adminAioEditorProseClass","：前台（或任何唯讀情境）渲染編輯器產出的 HTML 時，把它套在容器上即可對齊編輯時外觀，不需掛編輯器。",[539,18195,18197],{"className":726,"code":18196,"language":728,"meta":546,"style":546},"\u003Cscript setup lang=\"ts\">\nimport { adminAioEditorProseClass } from '@\u002Fcomponents\u002Fadmin\u002Faio-editor'\nimport { cn } from '@\u002Flib\u002Futils'\n\u003C\u002Fscript>\n\n\u003Ctemplate>\n  \u003Cdiv :class=\"cn(adminAioEditorProseClass)\" v-html=\"htmlFromEditor\">\u003C\u002Fdiv>\n\u003C\u002Ftemplate>\n",[548,18198,18199,18219,18239,18259,18267,18271,18279,18315],{"__ignoreMap":546},[551,18200,18201,18203,18205,18207,18209,18211,18213,18215,18217],{"class":553,"line":554},[551,18202,735],{"class":587},[551,18204,3276],{"class":738},[551,18206,3279],{"class":753},[551,18208,3282],{"class":753},[551,18210,757],{"class":587},[551,18212,760],{"class":587},[551,18214,576],{"class":561},[551,18216,760],{"class":587},[551,18218,742],{"class":587},[551,18220,18221,18223,18225,18228,18230,18232,18234,18237],{"class":553,"line":591},[551,18222,584],{"class":583},[551,18224,1273],{"class":587},[551,18226,18227],{"class":594}," adminAioEditorProseClass",[551,18229,1279],{"class":587},[551,18231,671],{"class":583},[551,18233,674],{"class":587},[551,18235,18236],{"class":561},"@\u002Fcomponents\u002Fadmin\u002Faio-editor",[551,18238,680],{"class":587},[551,18240,18241,18243,18245,18248,18250,18252,18254,18257],{"class":553,"line":601},[551,18242,584],{"class":583},[551,18244,1273],{"class":587},[551,18246,18247],{"class":594}," cn",[551,18249,1279],{"class":587},[551,18251,671],{"class":583},[551,18253,674],{"class":587},[551,18255,18256],{"class":561},"@\u002Flib\u002Futils",[551,18258,680],{"class":587},[551,18260,18261,18263,18265],{"class":553,"line":609},[551,18262,784],{"class":587},[551,18264,3276],{"class":738},[551,18266,742],{"class":587},[551,18268,18269],{"class":553,"line":617},[551,18270,1293],{"emptyLinePlaceholder":526},[551,18272,18273,18275,18277],{"class":553,"line":625},[551,18274,735],{"class":587},[551,18276,739],{"class":738},[551,18278,742],{"class":587},[551,18280,18281,18283,18285,18288,18290,18292,18295,18297,18300,18302,18304,18307,18309,18311,18313],{"class":553,"line":633},[551,18282,747],{"class":587},[551,18284,13312],{"class":738},[551,18286,18287],{"class":753}," :class",[551,18289,757],{"class":587},[551,18291,760],{"class":587},[551,18293,18294],{"class":561},"cn(adminAioEditorProseClass)",[551,18296,760],{"class":587},[551,18298,18299],{"class":753}," v-html",[551,18301,757],{"class":587},[551,18303,760],{"class":587},[551,18305,18306],{"class":561},"htmlFromEditor",[551,18308,760],{"class":587},[551,18310,3659],{"class":587},[551,18312,13312],{"class":738},[551,18314,742],{"class":587},[551,18316,18317,18319,18321],{"class":553,"line":641},[551,18318,784],{"class":587},[551,18320,739],{"class":738},[551,18322,742],{"class":587},[685,18324],{"name":18325},"AioEditorProseRenderDemo",[692,18327,18329],{"id":18328},"mentionopt-in","Mention（opt-in）",[705,18331,18332,1123,18334,18336,18337,18340,18341,18344],{},[548,18333,348],{},[548,18335,352],{}," 不在預設集合——需經 ",[548,18338,18339],{},"config.include"," 啟用，並以 ",[548,18342,18343],{},"mentionSuggestion"," 的 runtime hooks 提供選單渲染實作（選單 UI 由 consumer 全權決定）。",[685,18346],{"name":18347},"AioEditorMentionDemo",[536,18349,720],{"id":719},[692,18351,18352],{"id":18352},"aio-editor",[940,18354],{"component":18355},"AdminAioEditor",[705,18357,18358,18361,18362,14865,18365,18368,18369,18371,18372,18374,18375,713],{},[548,18359,18360],{},"config"," 之完整型別（",[548,18363,18364],{},"AioEditorConfig",[548,18366,18367],{},"AioEditorExtensionsConfig","、enums 與各 ",[548,18370,17759],{},"）由 ",[548,18373,17665],{}," 匯出，各 extension 的完整選項說明見 ",[697,18376,209],{"href":210},[536,18378,1556],{"id":1556},[1558,18380,18381,18403,18429,18460,18473,18492,18512,18527,18547,18566],{},[1561,18382,18383,18386,18387,18389,18390,18392,18393,1123,18396,1123,18399,18402],{},[1135,18384,18385],{},"URL 輸入來源","：Link \u002F Image \u002F Video 按鈕預設以 ",[548,18388,18175],{}," 取得 URL；提供 ",[548,18391,18167],{},"（ctx 帶 ",[548,18394,18395],{},"editor",[548,18397,18398],{},"editorId",[548,18400,18401],{},"target","）即可換成自訂 UI。連結編輯已內建於 LinkTips bubble 的 inline 輸入框。",[1561,18404,18405,18408,18409,18412,18413,18416,18417,18392,18420,18422,18423,18425,18426,713],{},[1135,18406,18407],{},"不允許的連結網址","：網址被 Link extension 的 ",[548,18410,18411],{},"isAllowedUri"," 拒絕（如 ",[548,18414,18415],{},"javascript:","）時不會套用，LinkTips 輸入框還原為原網址；提供 ",[548,18418,18419],{},"config.toolbarOptions.onInvalidLink",[548,18421,17276],{},"，LinkTips 觸發時 ",[548,18424,18401],{}," 為輸入框）即可顯示自訂提示。選取範圍本身不能加連結（程式碼區塊、行內程式碼）時同樣不會套用，但不屬網址問題，不會呼叫 ",[548,18427,18428],{},"onInvalidLink",[1561,18430,18431,18434,18435,18438,18439,18442,18443,713,18446,18449,18450,14865,18453,14865,18456,18459],{},[1135,18432,18433],{},"色盤","：TextColor \u002F Highlight 內建 ",[548,18436,18437],{},"@admin\u002Fcolor-picker"," 色票（",[548,18440,18441],{},"toolbarOptions.textColorSwatches \u002F highlightSwatches"," 自訂調色盤）；要自由取色提供 ",[548,18444,18445],{},"requestColor",[548,18447,18448],{},"value: ''"," 為清除項；完全透明之色票（",[548,18451,18452],{},"transparent",[548,18454,18455],{},"#0000",[548,18457,18458],{},"rgba(…, 0)"," 等）於浮層中會加上外框以便辨識。",[1561,18461,18462,2466,18465,18468,18469,18472],{},[1135,18463,18464],{},"工具列版面",[548,18466,18467],{},"toolbar: false"," 隱藏（extensions 照載）；",[548,18470,18471],{},"toolbarTarget"," 可把工具列 Teleport 到任意容器（多編輯器共用一條、頂部固定列、浮動容器）。",[1561,18474,18475,2466,18478,18481,18482,18485,18486,18488,18489,18491],{},[1135,18476,18477],{},"事件",[548,18479,18480],{},"create \u002F update \u002F selectionUpdate \u002F focus \u002F blur \u002F destroy \u002F contentError \u002F keydown"," 透傳，payload 統一帶 ",[548,18483,18484],{},"{ editor, editorId }","——多編輯器頁面以 ",[548,18487,18398],{},"（或 ",[548,18490,7305],{}," prop）辨識來源。",[1561,18493,18494,18497,18498,1123,18501,18504,18505,1123,18508,18511],{},[1135,18495,18496],{},"圖片 \u002F 影片上傳","：貼上與拖放檔案會觸發 ",[548,18499,18500],{},"extensionsConfig.Image.pasteAndDropHandle",[548,18502,18503],{},"extensionsConfig.Video.pasteAndDropHandle","，上傳邏輯由 consumer 實作後回呼 ",[548,18506,18507],{},"afterImageUpload",[548,18509,18510],{},"afterVideoUpload","。未實作時僅於 console 提示。",[1561,18513,18514,18517,18518,18520,18521,18524,18525,713],{},[1135,18515,18516],{},"Mention \u002F HashTag","：無按鈕功能，經 ",[548,18519,18339],{}," 啟用並提供 suggestion ",[548,18522,18523],{},"onRender"," 實作。UndoRedo \u002F Code 同理——未宣告按鈕時要保留能力就 ",[548,18526,18040],{},[1561,18528,18529,18532,18533,18535,18536,18539,18540,1123,18543,18546],{},[1135,18530,18531],{},"v-model 型別","：綁 ",[548,18534,3261],{}," 視為 HTML、綁物件視為 JSON（tiptap ",[548,18537,18538],{},"JSONContent","）。不掛編輯器的轉換用 ",[548,18541,18542],{},"editorJson2Html",[548,18544,18545],{},"editorHtml2Json","（瀏覽器環境限定）。",[1561,18548,18549,18552,18553,18556,18557,1613,18559,18562,18563,18565],{},[1135,18550,18551],{},"外部寫入不觸發事件","：父層透過 v-model 寫入內容、或切換 ",[548,18554,18555],{},"editable"," 時，不會 emit ",[548,18558,7298],{},[548,18560,18561],{},"update","——父層拿到的值維持原樣，不會被換成編輯器正規化後的 HTML，表單載入後也不會被判為已修改。只有使用者編輯（含透過 ",[548,18564,18395],{}," 實例執行之 command）才會觸發；字數統計則一律隨內容更新。",[1561,18567,18568,2466,18571,18573,18574,18576,18577,18580],{},[1135,18569,18570],{},"exclude 一律生效",[548,18572,17821],{}," 對任何 extension（含 schema 必備之 Document \u002F Text \u002F Paragraph）都會生效、不自動保留。排除後以 ",[548,18575,18048],{}," 或 Custom ",[548,18578,18579],{},"extensions"," 提供同名 extension 即視為替換、不警告；未替換且有依賴者受影響時 console 警告；schema 必備項於最終清單缺席時給最強警告（編輯器將無法初始化）。toolbar 按鈕依 extension 啟用狀態自動隱藏。",[536,18582,985],{"id":985},[987,18584],{"component":18355},[990,18586,18587],{},"html pre.shiki code .sBMFI, html code.shiki .sBMFI{--shiki-light:#E2931D;--shiki-default:#FFCB6B;--shiki-dark:#FFCB6B}html pre.shiki code .sfazB, html code.shiki .sfazB{--shiki-light:#91B859;--shiki-default:#C3E88D;--shiki-dark:#C3E88D}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 pre.shiki code .sMK4o, html code.shiki .sMK4o{--shiki-light:#39ADB5;--shiki-default:#89DDFF;--shiki-dark:#89DDFF}html pre.shiki code .swJcz, html code.shiki .swJcz{--shiki-light:#E53935;--shiki-default:#F07178;--shiki-dark:#F07178}html pre.shiki code .spNyl, html code.shiki .spNyl{--shiki-light:#9C3EDA;--shiki-default:#C792EA;--shiki-dark:#C792EA}html pre.shiki code .s7zQu, html code.shiki .s7zQu{--shiki-light:#39ADB5;--shiki-light-font-style:italic;--shiki-default:#89DDFF;--shiki-default-font-style:italic;--shiki-dark:#89DDFF;--shiki-dark-font-style:italic}html pre.shiki code .sTEyZ, html code.shiki .sTEyZ{--shiki-light:#90A4AE;--shiki-default:#EEFFFF;--shiki-dark:#BABED8}",{"title":546,"searchDepth":601,"depth":601,"links":18589},[18590,18591,18592,18599,18602,18603],{"id":507,"depth":591,"text":507},{"id":683,"depth":591,"text":683},{"id":690,"depth":591,"text":690,"children":18593},[18594,18595,18596,18597,18598],{"id":18119,"depth":601,"text":18120},{"id":18143,"depth":601,"text":18143},{"id":18158,"depth":601,"text":18159},{"id":18185,"depth":601,"text":18186},{"id":18328,"depth":601,"text":18329},{"id":719,"depth":591,"text":720,"children":18600},[18601],{"id":18352,"depth":601,"text":18352},{"id":1556,"depth":591,"text":1556},{"id":985,"depth":591,"text":985},"config 驅動的 all-in-one 富文本編輯器，傳入設定即得完整編輯器，無需組裝子元件。",{"doc":18606},"https:\u002F\u002Ftiptap.dev\u002Fdocs\u002Feditor\u002Fgetting-started\u002Foverview",{},{"title":200,"description":18604},"2a0GBbRurfSOZinIqDFxpWFIgDiALABDybtQVSQZoNY",{"id":18611,"title":209,"body":18612,"component":18,"description":19503,"extension":1015,"links":19,"meta":19504,"navigation":526,"new":18,"path":210,"seo":19505,"stem":211,"wrapperKind":19,"__hash__":19506},"docs\u002Fdocs\u002Faio-editor\u002F3.extensions\u002F1.overview.md",{"type":533,"value":18613,"toc":19488},[18614,18655,18836,18840,18894,18899,18904,18918,18922,19025,19028,19104,19107,19173,19176,19233,19235,19310,19313,19361,19368,19404,19411,19447,19451,19454,19457,19485],[705,18615,18616,2466,18619,18621,18622,18625,18626,18629,18630,18633,18634,18637,18638,18640,18641,18643,18644,1613,18647,18649,18650,18652,18653,17763],{},[1135,18617,18618],{},"宣告驅動",[548,18620,18125],{}," 是唯一宣告來源——宣告哪些按鈕，就載入哪些 extension（",[1135,18623,18624],{},"未宣告即不載入","）；",[548,18627,18628],{},"Require","（Document \u002F Text \u002F Paragraph）與 ",[548,18631,18632],{},"Basic","（8 個純基建）恆載。各 extension 的選項經 ",[548,18635,18636],{},"config.extensionsConfig"," 覆寫（深層 merge：plain object 遞迴合併；陣列、function、instance 整值取代；",[548,18639,8135],{}," 清除預設、",[548,18642,13826],{}," 忽略），",[548,18645,18646],{},"bubbles",[548,18648,18136],{}," 亦同；各 ",[548,18651,17759],{}," 皆由 ",[548,18654,17665],{},[539,18656,18658],{"className":574,"code":18657,"language":576,"meta":546,"style":546},"import { AioEditorCoreExtension, AioEditorFeature } from '@\u002Fcomponents\u002Fadmin\u002Faio-editor'\n\nconst config: AioEditorConfig = {\n  features: [AioEditorFeature.FontBold, AioEditorFeature.BulletList], \u002F\u002F 宣告 = 按鈕 + 載入\n  include: [AioEditorCoreExtension.UndoRedo], \u002F\u002F 無按鈕保 Ctrl+Z\n  exclude: [AioEditorCoreExtension.CopyData], \u002F\u002F 精準排除（一律生效，分級警告）\n  extensionsConfig: {\n    Heading: { levels: [1, 2, 3] },\n    CharacterCount: { limit: 500 }\n  }\n}\n",[548,18659,18660,18684,18688,18702,18730,18749,18767,18775,18808,18828,18832],{"__ignoreMap":546},[551,18661,18662,18664,18666,18669,18671,18674,18676,18678,18680,18682],{"class":553,"line":554},[551,18663,584],{"class":583},[551,18665,1273],{"class":587},[551,18667,18668],{"class":594}," AioEditorCoreExtension",[551,18670,3348],{"class":587},[551,18672,18673],{"class":594}," AioEditorFeature",[551,18675,1279],{"class":587},[551,18677,671],{"class":583},[551,18679,674],{"class":587},[551,18681,18236],{"class":561},[551,18683,680],{"class":587},[551,18685,18686],{"class":553,"line":591},[551,18687,1293],{"emptyLinePlaceholder":526},[551,18689,18690,18692,18694,18696,18698,18700],{"class":553,"line":601},[551,18691,3321],{"class":753},[551,18693,17870],{"class":594},[551,18695,1169],{"class":587},[551,18697,17875],{"class":557},[551,18699,10094],{"class":587},[551,18701,588],{"class":587},[551,18703,18704,18706,18708,18711,18713,18716,18718,18720,18722,18725,18727],{"class":553,"line":609},[551,18705,17884],{"class":738},[551,18707,1169],{"class":587},[551,18709,18710],{"class":594}," [AioEditorFeature",[551,18712,1206],{"class":587},[551,18714,18715],{"class":594},"FontBold",[551,18717,3348],{"class":587},[551,18719,18673],{"class":594},[551,18721,1206],{"class":587},[551,18723,18724],{"class":594},"BulletList]",[551,18726,3348],{"class":587},[551,18728,18729],{"class":4831}," \u002F\u002F 宣告 = 按鈕 + 載入\n",[551,18731,18732,18734,18736,18739,18741,18744,18746],{"class":553,"line":617},[551,18733,17899],{"class":738},[551,18735,1169],{"class":587},[551,18737,18738],{"class":594}," [AioEditorCoreExtension",[551,18740,1206],{"class":587},[551,18742,18743],{"class":594},"UndoRedo]",[551,18745,3348],{"class":587},[551,18747,18748],{"class":4831}," \u002F\u002F 無按鈕保 Ctrl+Z\n",[551,18750,18751,18753,18755,18757,18759,18762,18764],{"class":553,"line":625},[551,18752,17913],{"class":738},[551,18754,1169],{"class":587},[551,18756,18738],{"class":594},[551,18758,1206],{"class":587},[551,18760,18761],{"class":594},"CopyData]",[551,18763,3348],{"class":587},[551,18765,18766],{"class":4831}," \u002F\u002F 精準排除（一律生效，分級警告）\n",[551,18768,18769,18771,18773],{"class":553,"line":633},[551,18770,17927],{"class":738},[551,18772,1169],{"class":587},[551,18774,588],{"class":587},[551,18776,18777,18780,18782,18784,18787,18789,18791,18793,18795,18798,18800,18803,18805],{"class":553,"line":641},[551,18778,18779],{"class":738},"    Heading",[551,18781,1169],{"class":587},[551,18783,1273],{"class":587},[551,18785,18786],{"class":738}," levels",[551,18788,1169],{"class":587},[551,18790,9070],{"class":594},[551,18792,1637],{"class":17275},[551,18794,3348],{"class":587},[551,18796,18797],{"class":17275}," 2",[551,18799,3348],{"class":587},[551,18801,18802],{"class":17275}," 3",[551,18804,3398],{"class":594},[551,18806,18807],{"class":587},"},\n",[551,18809,18810,18813,18815,18817,18820,18822,18825],{"class":553,"line":649},[551,18811,18812],{"class":738},"    CharacterCount",[551,18814,1169],{"class":587},[551,18816,1273],{"class":587},[551,18818,18819],{"class":738}," limit",[551,18821,1169],{"class":587},[551,18823,18824],{"class":17275}," 500",[551,18826,18827],{"class":587}," }\n",[551,18829,18830],{"class":553,"line":657},[551,18831,1232],{"class":587},[551,18833,18834],{"class":553,"line":665},[551,18835,10148],{"class":587},[536,18837,18839],{"id":18838},"三種載入路徑依生命週期選對入口","三種載入路徑（依生命週期選對入口）",[5754,18841,18842,18855],{},[5757,18843,18844],{},[5760,18845,18846,18849,18852],{},[5763,18847,18848],{},"你要載入的東西",[5763,18850,18851],{},"正確路徑",[5763,18853,18854],{},"生命週期",[5770,18856,18857,18870,18882],{},[5760,18858,18859,18862,18867],{},[5775,18860,18861],{},"有 UI 的自訂能力（按鈕＋它的 extension）",[5775,18863,18864],{},[548,18865,18866],{},"CustomFeature.extensions",[5775,18868,18869],{},"跟隨 feature 宣告",[5760,18871,18872,18875,18879],{},[5775,18873,18874],{},"無 UI 的內建能力（保快捷鍵 \u002F 輸入規則、Mention）",[5775,18876,18877],{},[548,18878,18040],{},[5775,18880,18881],{},"無條件載入，自動補齊硬依賴",[5760,18883,18884,18887,18891],{},[5775,18885,18886],{},"無 UI 的自訂能力、同名替換",[5775,18888,18889],{},[548,18890,18048],{},[5775,18892,18893],{},"無條件載入；同名時優先權最高",[705,18895,18896,18898],{},[548,18897,17821],{}," 對三者一律生效（含 Require），不連鎖卸載——依賴者靜默失效、對應按鈕自動隱藏。排除後提供同名 extension 視為替換、不警告；未替換且有依賴者受影響時 console 警告。Require（Document \u002F Text \u002F Paragraph）於三路徑合併後檢查，最終集合缺席才給最強警告。",[2806,18900,18901],{},[705,18902,18903],{},"標「自製」者為本系列移植之客製 extension，帶有與官方套件不同的行為，詳見各頁說明。",[705,18905,18906,18907,18910,18911,14865,18914,18917],{},"每頁的「載入途徑 \u002F 排除影響」段落取自 ",[548,18908,18909],{},"app\u002Fregistry\u002Fadmin\u002Faio\u002Faio-feature-map.json","，該檔為手動維護；調整 ",[548,18912,18913],{},"FEATURE_DEFS",[548,18915,18916],{},"extensionDependencies"," 或恆載層後須一併更新。",[536,18919,18921],{"id":18920},"文字-mark","文字 mark",[5754,18923,18924,18933],{},[5757,18925,18926],{},[5760,18927,18928,18931],{},[5763,18929,18930],{},"Extension",[5763,18932,17722],{},[5770,18934,18935,18944,18953,18962,18971,18980,18989,18998,19007,19016],{},[5760,18936,18937,18941],{},[5775,18938,18939],{},[697,18940,253],{"href":254},[5775,18942,18943],{},"粗體",[5760,18945,18946,18950],{},[5775,18947,18948],{},[697,18949,297],{"href":298},[5775,18951,18952],{},"斜體",[5760,18954,18955,18959],{},[5775,18956,18957],{},[697,18958,340],{"href":341},[5775,18960,18961],{},"刪除線",[5760,18963,18964,18968],{},[5775,18965,18966],{},[697,18967,364],{"href":365},[5775,18969,18970],{},"底線",[5760,18972,18973,18977],{},[5775,18974,18975],{},[697,18976,368],{"href":369},[5775,18978,18979],{},"行內程式碼",[5760,18981,18982,18986],{},[5775,18983,18984],{},[697,18985,372],{"href":373},[5775,18987,18988],{},"行內樣式載體（Color \u002F FontFamily \u002F FontSize 之基底）",[5760,18990,18991,18995],{},[5775,18992,18993],{},[697,18994,376],{"href":377},[5775,18996,18997],{},"文字顏色",[5760,18999,19000,19004],{},[5775,19001,19002],{},[697,19003,380],{"href":381},[5775,19005,19006],{},"螢光標記",[5760,19008,19009,19013],{},[5775,19010,19011],{},[697,19012,213],{"href":214},[5775,19014,19015],{},"下標",[5760,19017,19018,19022],{},[5775,19019,19020],{},[697,19021,217],{"href":218},[5775,19023,19024],{},"上標",[536,19026,19027],{"id":19027},"區塊",[5754,19029,19030,19038],{},[5757,19031,19032],{},[5760,19033,19034,19036],{},[5763,19035,18930],{},[5763,19037,17722],{},[5770,19039,19040,19049,19058,19067,19076,19085,19094],{},[5760,19041,19042,19046],{},[5775,19043,19044],{},[697,19045,221],{"href":222},[5775,19047,19048],{},"schema 基底與游標行為（無選項）",[5760,19050,19051,19055],{},[5775,19052,19053],{},[697,19054,225],{"href":226},[5775,19056,19057],{},"段落",[5760,19059,19060,19064],{},[5775,19061,19062],{},[697,19063,229],{"href":230},[5775,19065,19066],{},"標題 h1–h6",[5760,19068,19069,19073],{},[5775,19070,19071],{},[697,19072,233],{"href":234},[5775,19074,19075],{},"引用區塊",[5760,19077,19078,19082],{},[5775,19079,19080],{},[697,19081,237],{"href":238},[5775,19083,19084],{},"水平線",[5760,19086,19087,19091],{},[5775,19088,19089],{},[697,19090,241],{"href":242},[5775,19092,19093],{},"強制斷行",[5760,19095,19096,19101],{},[5775,19097,19098,19100],{},[697,19099,245],{"href":246},"（自製）",[5775,19102,19103],{},"程式碼區塊（lowlight 高亮）",[536,19105,19106],{"id":19106},"清單",[5754,19108,19109,19117],{},[5757,19110,19111],{},[5760,19112,19113,19115],{},[5763,19114,18930],{},[5763,19116,17722],{},[5770,19118,19119,19128,19137,19146,19155,19164],{},[5760,19120,19121,19125],{},[5775,19122,19123],{},[697,19124,249],{"href":250},[5775,19126,19127],{},"項目清單",[5760,19129,19130,19134],{},[5775,19131,19132],{},[697,19133,257],{"href":258},[5775,19135,19136],{},"編號清單",[5760,19138,19139,19143],{},[5775,19140,19141],{},[697,19142,261],{"href":262},[5775,19144,19145],{},"清單項",[5760,19147,19148,19152],{},[5775,19149,19150],{},[697,19151,265],{"href":266},[5775,19153,19154],{},"待辦清單",[5760,19156,19157,19161],{},[5775,19158,19159],{},[697,19160,269],{"href":270},[5775,19162,19163],{},"待辦清單項",[5760,19165,19166,19170],{},[5775,19167,19168,19100],{},[697,19169,273],{"href":274},[5775,19171,19172],{},"清單鍵盤行為",[536,19174,19175],{"id":19175},"排版",[5754,19177,19178,19186],{},[5757,19179,19180],{},[5760,19181,19182,19184],{},[5763,19183,18930],{},[5763,19185,17722],{},[5770,19187,19188,19197,19206,19215,19224],{},[5760,19189,19190,19194],{},[5775,19191,19192],{},[697,19193,277],{"href":278},[5775,19195,19196],{},"文字對齊",[5760,19198,19199,19203],{},[5775,19200,19201,19100],{},[697,19202,281],{"href":282},[5775,19204,19205],{},"區塊縮排",[5760,19207,19208,19212],{},[5775,19209,19210,19100],{},[697,19211,285],{"href":286},[5775,19213,19214],{},"行高",[5760,19216,19217,19221],{},[5775,19218,19219],{},[697,19220,289],{"href":290},[5775,19222,19223],{},"字體",[5760,19225,19226,19230],{},[5775,19227,19228,19100],{},[697,19229,293],{"href":294},[5775,19231,19232],{},"字級",[536,19234,5768],{"id":5768},[5754,19236,19237,19245],{},[5757,19238,19239],{},[5760,19240,19241,19243],{},[5763,19242,18930],{},[5763,19244,17722],{},[5770,19246,19247,19256,19265,19274,19283,19292,19301],{},[5760,19248,19249,19253],{},[5775,19250,19251],{},[697,19252,301],{"href":302},[5775,19254,19255],{},"編輯歷史",[5760,19257,19258,19262],{},[5775,19259,19260],{},[697,19261,305],{"href":306},[5775,19263,19264],{},"拖放位置指示線",[5760,19266,19267,19271],{},[5775,19268,19269],{},[697,19270,309],{"href":310},[5775,19272,19273],{},"空內容提示",[5760,19275,19276,19280],{},[5775,19277,19278,19100],{},[697,19279,313],{"href":314},[5775,19281,19282],{},"字數統計與上限（IME 保護）",[5760,19284,19285,19289],{},[5775,19286,19287,19100],{},[697,19288,317],{"href":318},[5775,19290,19291],{},"鍵盤事件 hook",[5760,19293,19294,19298],{},[5775,19295,19296],{},[697,19297,321],{"href":322},[5775,19299,19300],{},"相鄰清單自動合併",[5760,19302,19303,19307],{},[5775,19304,19305,19100],{},[697,19306,325],{"href":326},[5775,19308,19309],{},"data-copy 屬性保留",[536,19311,19312],{"id":19312},"內容節點",[5754,19314,19315,19323],{},[5757,19316,19317],{},[5760,19318,19319,19321],{},[5763,19320,18930],{},[5763,19322,17722],{},[5770,19324,19325,19334,19343,19352],{},[5760,19326,19327,19331],{},[5775,19328,19329],{},[697,19330,329],{"href":330},[5775,19332,19333],{},"超連結",[5760,19335,19336,19340],{},[5775,19337,19338,19100],{},[697,19339,77],{"href":333},[5775,19341,19342],{},"圖片（拖曳縮放、上傳 hook）",[5760,19344,19345,19349],{},[5775,19346,19347,19100],{},[697,19348,336],{"href":337},[5775,19350,19351],{},"影片",[5760,19353,19354,19358],{},[5775,19355,19356,19100],{},[697,19357,344],{"href":345},[5775,19359,19360],{},"表格（grip 選取）",[536,19362,19364,19365,19367],{"id":19363},"opt-in須經-include-啟用","Opt-in（須經 ",[548,19366,18040],{}," 啟用）",[5754,19369,19370,19378],{},[5757,19371,19372],{},[5760,19373,19374,19376],{},[5763,19375,18930],{},[5763,19377,17722],{},[5770,19379,19380,19392],{},[5760,19381,19382,19386],{},[5775,19383,19384,19100],{},[697,19385,348],{"href":349},[5775,19387,19388,19391],{},[548,19389,19390],{},"@"," 提及",[5760,19393,19394,19398],{},[5775,19395,19396,19100],{},[697,19397,352],{"href":353},[5775,19399,19400,19403],{},[548,19401,19402],{},"#"," 標籤",[536,19405,19407,19408,19410],{"id":19406},"ui-附加不走-extensionsconfig","UI 附加（不走 ",[548,19409,18045],{},"）",[5754,19412,19413,19423],{},[5757,19414,19415],{},[5760,19416,19417,19420],{},[5763,19418,19419],{},"項目",[5763,19421,19422],{},"設定入口",[5770,19424,19425,19436],{},[5760,19426,19427,19431],{},[5775,19428,19429,19100],{},[697,19430,356],{"href":357},[5775,19432,19433],{},[548,19434,19435],{},"config.bubbles",[5760,19437,19438,19442],{},[5775,19439,19440,19100],{},[697,19441,360],{"href":361},[5775,19443,19444],{},[548,19445,19446],{},"config.dragHandle",[536,19448,19450],{"id":19449},"feature-extension-對映總表","Feature → Extension 對映總表",[19452,19453],"aio-feature-map",{},[536,19455,19456],{"id":19456},"樣式補充",[1558,19458,19459,19468],{},[1561,19460,19461,19464,19465],{},[1135,19462,19463],{},"CodeBlock 高亮配色","：輸出帶 hljs class，配色主題由 consumer 自行引入（同 Svelte 版作法），例如 ",[548,19466,19467],{},"import 'highlight.js\u002Fstyles\u002Fgithub-dark.css'",[1561,19469,19470,19473,19474,1123,19477,19480,19481,19484],{},[1135,19471,19472],{},"Mention \u002F HashTag 建議樣式","：節點 class 為 ",[548,19475,19476],{},"editor-mention",[548,19478,19479],{},"editor-hashtag","、選單容器 class 為 ",[548,19482,19483],{},"editor-suggestion","——參考主元件頁 Mention demo 的樣式片段",[990,19486,19487],{},"html pre.shiki code .s7zQu, html code.shiki .s7zQu{--shiki-light:#39ADB5;--shiki-light-font-style:italic;--shiki-default:#89DDFF;--shiki-default-font-style:italic;--shiki-dark:#89DDFF;--shiki-dark-font-style:italic}html pre.shiki code .sMK4o, html code.shiki .sMK4o{--shiki-light:#39ADB5;--shiki-default:#89DDFF;--shiki-dark:#89DDFF}html pre.shiki code .sTEyZ, html code.shiki .sTEyZ{--shiki-light:#90A4AE;--shiki-default:#EEFFFF;--shiki-dark:#BABED8}html pre.shiki code .sfazB, html code.shiki .sfazB{--shiki-light:#91B859;--shiki-default:#C3E88D;--shiki-dark:#C3E88D}html pre.shiki code .spNyl, html code.shiki .spNyl{--shiki-light:#9C3EDA;--shiki-default:#C792EA;--shiki-dark:#C792EA}html pre.shiki code .sBMFI, html code.shiki .sBMFI{--shiki-light:#E2931D;--shiki-default:#FFCB6B;--shiki-dark:#FFCB6B}html pre.shiki code .swJcz, html code.shiki .swJcz{--shiki-light:#E53935;--shiki-default:#F07178;--shiki-dark:#F07178}html pre.shiki code .sHwdD, html code.shiki .sHwdD{--shiki-light:#90A4AE;--shiki-light-font-style:italic;--shiki-default:#546E7A;--shiki-default-font-style:italic;--shiki-dark:#676E95;--shiki-dark-font-style:italic}html pre.shiki code .sbssI, html code.shiki .sbssI{--shiki-light:#F76D47;--shiki-default:#F78C6C;--shiki-dark:#F78C6C}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);}",{"title":546,"searchDepth":601,"depth":601,"links":19489},[19490,19491,19492,19493,19494,19495,19496,19497,19499,19501,19502],{"id":18838,"depth":591,"text":18839},{"id":18920,"depth":591,"text":18921},{"id":19027,"depth":591,"text":19027},{"id":19106,"depth":591,"text":19106},{"id":19175,"depth":591,"text":19175},{"id":5768,"depth":591,"text":5768},{"id":19312,"depth":591,"text":19312},{"id":19363,"depth":591,"text":19498},"Opt-in（須經 include 啟用）",{"id":19406,"depth":591,"text":19500},"UI 附加（不走 extensionsConfig）",{"id":19449,"depth":591,"text":19450},{"id":19456,"depth":591,"text":19456},"AIO 編輯器全部 extension 一覽，逐一提供完整選項說明。",{},{"title":209,"description":19503},"uHzxCCPZm9lymV6Foj02K-lqmoIU49BlO_SFE-t_elg",{"id":19508,"title":213,"body":19509,"component":18,"description":19658,"extension":1015,"links":19,"meta":19659,"navigation":526,"new":18,"path":214,"seo":19660,"stem":215,"wrapperKind":19,"__hash__":19661},"docs\u002Fdocs\u002Faio-editor\u002F3.extensions\u002F10.subscript.md",{"type":533,"value":19510,"toc":19653},[19511,19518,19536,19539,19542,19582,19586,19629,19631],[705,19512,19513,19514,19517],{},"下標文字標記（",[548,19515,19516],{},"sub"," 元素），與 Superscript 互斥。",[1558,19519,19520,19528],{},[1561,19521,19522,2466,19525],{},[1135,19523,19524],{},"config key",[548,19526,19527],{},"AioEditorCoreExtension.Subscript",[1561,19529,19530,2466,19533],{},[1135,19531,19532],{},"來源",[548,19534,19535],{},"@tiptap\u002Fextension-subscript",[19537,19538],"aio-extension-impact",{"extension":213},[536,19540,19541],{"id":19541},"選項",[5754,19543,19544,19560],{},[5757,19545,19546],{},[5760,19547,19548,19551,19554,19557],{},[5763,19549,19550],{},"欄位",[5763,19552,19553],{},"型別",[5763,19555,19556],{},"預設值",[5763,19558,19559],{},"說明",[5770,19561,19562],{},[5760,19563,19564,19569,19574,19579],{},[5775,19565,19566],{},[548,19567,19568],{},"HTMLAttributes",[5775,19570,19571],{},[548,19572,19573],{},"Record\u003Cstring, any>",[5775,19575,19576],{},[548,19577,19578],{},"{}",[5775,19580,19581],{},"渲染輸出時附加之 HTML 屬性",[536,19583,19585],{"id":19584},"commands","Commands",[5754,19587,19588,19597],{},[5757,19589,19590],{},[5760,19591,19592,19595],{},[5763,19593,19594],{},"Command",[5763,19596,19559],{},[5770,19598,19599,19609,19619],{},[5760,19600,19601,19606],{},[5775,19602,19603],{},[548,19604,19605],{},"setSubscript()",[5775,19607,19608],{},"套用下標",[5760,19610,19611,19616],{},[5775,19612,19613],{},[548,19614,19615],{},"toggleSubscript()",[5775,19617,19618],{},"切換下標",[5760,19620,19621,19626],{},[5775,19622,19623],{},[548,19624,19625],{},"unsetSubscript()",[5775,19627,19628],{},"移除下標",[536,19630,5765],{"id":5765},[5754,19632,19633,19642],{},[5757,19634,19635],{},[5760,19636,19637,19640],{},[5763,19638,19639],{},"按鍵",[5763,19641,5768],{},[5770,19643,19644],{},[5760,19645,19646,19651],{},[5775,19647,19648],{},[548,19649,19650],{},"Mod-,",[5775,19652,19618],{},{"title":546,"searchDepth":601,"depth":601,"links":19654},[19655,19656,19657],{"id":19541,"depth":591,"text":19541},{"id":19584,"depth":591,"text":19585},{"id":5765,"depth":591,"text":5765},"下標 mark。",{},{"title":213,"description":19658},"J27o7PiPhmqIMOtj53ZnAEyl8Ylsj2TPaDyfjMhUDuI",{"id":19663,"title":217,"body":19664,"component":18,"description":19797,"extension":1015,"links":19,"meta":19798,"navigation":526,"new":18,"path":218,"seo":19799,"stem":219,"wrapperKind":19,"__hash__":19800},"docs\u002Fdocs\u002Faio-editor\u002F3.extensions\u002F11.superscript.md",{"type":533,"value":19665,"toc":19792},[19666,19673,19689,19691,19693,19725,19727,19769,19771],[705,19667,19668,19669,19672],{},"上標文字標記（",[548,19670,19671],{},"sup"," 元素），與 Subscript 互斥。",[1558,19674,19675,19682],{},[1561,19676,19677,2466,19679],{},[1135,19678,19524],{},[548,19680,19681],{},"AioEditorCoreExtension.Superscript",[1561,19683,19684,2466,19686],{},[1135,19685,19532],{},[548,19687,19688],{},"@tiptap\u002Fextension-superscript",[19537,19690],{"extension":217},[536,19692,19541],{"id":19541},[5754,19694,19695,19707],{},[5757,19696,19697],{},[5760,19698,19699,19701,19703,19705],{},[5763,19700,19550],{},[5763,19702,19553],{},[5763,19704,19556],{},[5763,19706,19559],{},[5770,19708,19709],{},[5760,19710,19711,19715,19719,19723],{},[5775,19712,19713],{},[548,19714,19568],{},[5775,19716,19717],{},[548,19718,19573],{},[5775,19720,19721],{},[548,19722,19578],{},[5775,19724,19581],{},[536,19726,19585],{"id":19584},[5754,19728,19729,19737],{},[5757,19730,19731],{},[5760,19732,19733,19735],{},[5763,19734,19594],{},[5763,19736,19559],{},[5770,19738,19739,19749,19759],{},[5760,19740,19741,19746],{},[5775,19742,19743],{},[548,19744,19745],{},"setSuperscript()",[5775,19747,19748],{},"套用上標",[5760,19750,19751,19756],{},[5775,19752,19753],{},[548,19754,19755],{},"toggleSuperscript()",[5775,19757,19758],{},"切換上標",[5760,19760,19761,19766],{},[5775,19762,19763],{},[548,19764,19765],{},"unsetSuperscript()",[5775,19767,19768],{},"移除上標",[536,19770,5765],{"id":5765},[5754,19772,19773,19781],{},[5757,19774,19775],{},[5760,19776,19777,19779],{},[5763,19778,19639],{},[5763,19780,5768],{},[5770,19782,19783],{},[5760,19784,19785,19790],{},[5775,19786,19787],{},[548,19788,19789],{},"Mod-.",[5775,19791,19758],{},{"title":546,"searchDepth":601,"depth":601,"links":19793},[19794,19795,19796],{"id":19541,"depth":591,"text":19541},{"id":19584,"depth":591,"text":19585},{"id":5765,"depth":591,"text":5765},"上標 mark。",{},{"title":217,"description":19797},"oV7EPRPeuucyNqHw9AIe7WxMcU96mMQm8T_jsD98cLA",{"id":19802,"title":221,"body":19803,"component":18,"description":19859,"extension":1015,"links":19,"meta":19860,"navigation":526,"new":18,"path":222,"seo":19861,"stem":223,"wrapperKind":19,"__hash__":19862},"docs\u002Fdocs\u002Faio-editor\u002F3.extensions\u002F12.schema-base.md",{"type":533,"value":19804,"toc":19856},[19805,19823,19851,19853],[705,19806,19807,19808,19811,19812,19815,19816,19818,19819,19822],{},"三個無選項的基礎 extension：",[548,19809,19810],{},"Document"," 定義文件根節點、",[548,19813,19814],{},"Text"," 定義文字節點（兩者為 schema 必備，",[548,19817,17821],{}," 它們會使編輯器無法運作）；",[548,19820,19821],{},"Gapcursor"," 讓游標能停在無法輸入文字的位置（如相鄰兩張圖片之間）。",[1558,19824,19825,19836],{},[1561,19826,19827,2466,19829,1123,19831,1123,19833,19835],{},[1135,19828,19524],{},[548,19830,19810],{},[548,19832,19814],{},[548,19834,19821],{},"（預設啟用）",[1561,19837,19838,2466,19840,14865,19843,14865,19846,8904,19849,19410],{},[1135,19839,19532],{},[548,19841,19842],{},"@tiptap\u002Fextension-document",[548,19844,19845],{},"@tiptap\u002Fextension-text",[548,19847,19848],{},"@tiptap\u002Fextensions",[548,19850,19821],{},[536,19852,19541],{"id":19541},[705,19854,19855],{},"此 extension 無可設定選項。",{"title":546,"searchDepth":601,"depth":601,"links":19857},[19858],{"id":19541,"depth":591,"text":19541},"schema 基底與游標行為，皆無選項。",{},{"title":221,"description":19859},"CgB5-mYoRwRZmmMbvsJzFMnH6Q5REgxRWUmPxtaORms",{"id":19864,"title":225,"body":19865,"component":18,"description":19978,"extension":1015,"links":19,"meta":19979,"navigation":526,"new":18,"path":226,"seo":19980,"stem":227,"wrapperKind":19,"__hash__":19981},"docs\u002Fdocs\u002Faio-editor\u002F3.extensions\u002F13.paragraph.md",{"type":533,"value":19866,"toc":19973},[19867,19873,19889,19891,19893,19925,19927,19949,19951],[705,19868,19869,19870,19872],{},"段落節點（",[548,19871,705],{}," 元素），文件的預設區塊。",[1558,19874,19875,19882],{},[1561,19876,19877,2466,19879],{},[1135,19878,19524],{},[548,19880,19881],{},"AioEditorCoreExtension.Paragraph",[1561,19883,19884,2466,19886],{},[1135,19885,19532],{},[548,19887,19888],{},"@tiptap\u002Fextension-paragraph",[19537,19890],{"extension":225},[536,19892,19541],{"id":19541},[5754,19894,19895,19907],{},[5757,19896,19897],{},[5760,19898,19899,19901,19903,19905],{},[5763,19900,19550],{},[5763,19902,19553],{},[5763,19904,19556],{},[5763,19906,19559],{},[5770,19908,19909],{},[5760,19910,19911,19915,19919,19923],{},[5775,19912,19913],{},[548,19914,19568],{},[5775,19916,19917],{},[548,19918,19573],{},[5775,19920,19921],{},[548,19922,19578],{},[5775,19924,19581],{},[536,19926,19585],{"id":19584},[5754,19928,19929,19937],{},[5757,19930,19931],{},[5760,19932,19933,19935],{},[5763,19934,19594],{},[5763,19936,19559],{},[5770,19938,19939],{},[5760,19940,19941,19946],{},[5775,19942,19943],{},[548,19944,19945],{},"setParagraph()",[5775,19947,19948],{},"將目前區塊轉為段落",[536,19950,5765],{"id":5765},[5754,19952,19953,19961],{},[5757,19954,19955],{},[5760,19956,19957,19959],{},[5763,19958,19639],{},[5763,19960,5768],{},[5770,19962,19963],{},[5760,19964,19965,19970],{},[5775,19966,19967],{},[548,19968,19969],{},"Mod-Alt-0",[5775,19971,19972],{},"轉為段落",{"title":546,"searchDepth":601,"depth":601,"links":19974},[19975,19976,19977],{"id":19541,"depth":591,"text":19541},{"id":19584,"depth":591,"text":19585},{"id":5765,"depth":591,"text":5765},"段落節點。",{},{"title":225,"description":19978},"tl-Uv4RZK99PVWSWNXQzW-gtbKwcesYcsBfwCGkcxdA",{"id":19983,"title":229,"body":19984,"component":18,"description":20212,"extension":1015,"links":19,"meta":20213,"navigation":526,"new":18,"path":230,"seo":20214,"stem":231,"wrapperKind":19,"__hash__":20215},"docs\u002Fdocs\u002Faio-editor\u002F3.extensions\u002F14.heading.md",{"type":533,"value":19985,"toc":20206},[19986,19997,20013,20015,20017,20069,20071,20103,20105,20127,20130,20193,20203],[705,19987,19988,19989,19992,19993,19996],{},"標題節點（",[548,19990,19991],{},"h1","–",[548,19994,19995],{},"h6","）。",[1558,19998,19999,20006],{},[1561,20000,20001,2466,20003],{},[1135,20002,19524],{},[548,20004,20005],{},"AioEditorCoreExtension.Heading",[1561,20007,20008,2466,20010],{},[1135,20009,19532],{},[548,20011,20012],{},"@tiptap\u002Fextension-heading",[19537,20014],{"extension":229},[536,20016,19541],{"id":19541},[5754,20018,20019,20031],{},[5757,20020,20021],{},[5760,20022,20023,20025,20027,20029],{},[5763,20024,19550],{},[5763,20026,19553],{},[5763,20028,19556],{},[5763,20030,19559],{},[5770,20032,20033,20053],{},[5760,20034,20035,20040,20045,20050],{},[5775,20036,20037],{},[548,20038,20039],{},"levels",[5775,20041,20042],{},[548,20043,20044],{},"Level[]",[5775,20046,20047],{},[548,20048,20049],{},"[1, 2, 3, 4, 5, 6]",[5775,20051,20052],{},"允許之標題層級；不在清單內之層級無法設定",[5760,20054,20055,20059,20063,20067],{},[5775,20056,20057],{},[548,20058,19568],{},[5775,20060,20061],{},[548,20062,19573],{},[5775,20064,20065],{},[548,20066,19578],{},[5775,20068,19581],{},[536,20070,19585],{"id":19584},[5754,20072,20073,20081],{},[5757,20074,20075],{},[5760,20076,20077,20079],{},[5763,20078,19594],{},[5763,20080,19559],{},[5770,20082,20083,20093],{},[5760,20084,20085,20090],{},[5775,20086,20087],{},[548,20088,20089],{},"setHeading({ level })",[5775,20091,20092],{},"設為指定層級標題",[5760,20094,20095,20100],{},[5775,20096,20097],{},[548,20098,20099],{},"toggleHeading({ level })",[5775,20101,20102],{},"切換指定層級標題",[536,20104,5765],{"id":5765},[5754,20106,20107,20115],{},[5757,20108,20109],{},[5760,20110,20111,20113],{},[5763,20112,19639],{},[5763,20114,5768],{},[5770,20116,20117],{},[5760,20118,20119,20124],{},[5775,20120,20121],{},[548,20122,20123],{},"Mod-Alt-1 … Mod-Alt-6",[5775,20125,20126],{},"切換對應層級標題",[536,20128,20129],{"id":20129},"覆寫範例",[539,20131,20133],{"className":574,"code":20132,"language":576,"meta":546,"style":546},"const config: AioEditorConfig = {\n  extensionsConfig: {\n    Heading: { levels: [1, 2, 3] }\n  }\n}\n",[548,20134,20135,20149,20157,20185,20189],{"__ignoreMap":546},[551,20136,20137,20139,20141,20143,20145,20147],{"class":553,"line":554},[551,20138,3321],{"class":753},[551,20140,17870],{"class":594},[551,20142,1169],{"class":587},[551,20144,17875],{"class":557},[551,20146,10094],{"class":587},[551,20148,588],{"class":587},[551,20150,20151,20153,20155],{"class":553,"line":591},[551,20152,17927],{"class":738},[551,20154,1169],{"class":587},[551,20156,588],{"class":587},[551,20158,20159,20161,20163,20165,20167,20169,20171,20173,20175,20177,20179,20181,20183],{"class":553,"line":601},[551,20160,18779],{"class":738},[551,20162,1169],{"class":587},[551,20164,1273],{"class":587},[551,20166,18786],{"class":738},[551,20168,1169],{"class":587},[551,20170,9070],{"class":594},[551,20172,1637],{"class":17275},[551,20174,3348],{"class":587},[551,20176,18797],{"class":17275},[551,20178,3348],{"class":587},[551,20180,18802],{"class":17275},[551,20182,3398],{"class":594},[551,20184,10148],{"class":587},[551,20186,20187],{"class":553,"line":609},[551,20188,1232],{"class":587},[551,20190,20191],{"class":553,"line":617},[551,20192,10148],{"class":587},[705,20194,20195,20196,20198,20199,20202],{},"輸入規則：行首 ",[548,20197,19402],{},"～",[548,20200,20201],{},"######"," ＋空白自動轉為對應層級標題。",[990,20204,20205],{},"html pre.shiki code .spNyl, html code.shiki .spNyl{--shiki-light:#9C3EDA;--shiki-default:#C792EA;--shiki-dark:#C792EA}html pre.shiki code .sTEyZ, html code.shiki .sTEyZ{--shiki-light:#90A4AE;--shiki-default:#EEFFFF;--shiki-dark:#BABED8}html pre.shiki code .sMK4o, html code.shiki .sMK4o{--shiki-light:#39ADB5;--shiki-default:#89DDFF;--shiki-dark:#89DDFF}html pre.shiki code .sBMFI, html code.shiki .sBMFI{--shiki-light:#E2931D;--shiki-default:#FFCB6B;--shiki-dark:#FFCB6B}html pre.shiki code .swJcz, html code.shiki .swJcz{--shiki-light:#E53935;--shiki-default:#F07178;--shiki-dark:#F07178}html pre.shiki code .sbssI, html code.shiki .sbssI{--shiki-light:#F76D47;--shiki-default:#F78C6C;--shiki-dark:#F78C6C}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);}",{"title":546,"searchDepth":601,"depth":601,"links":20207},[20208,20209,20210,20211],{"id":19541,"depth":591,"text":19541},{"id":19584,"depth":591,"text":19585},{"id":5765,"depth":591,"text":5765},{"id":20129,"depth":591,"text":20129},"標題節點。",{},{"title":229,"description":20212},"lcByYsSWiUy1yrtOYzWOLWIzu4OpaT0Cfs_mUyxmmLA",{"id":20217,"title":233,"body":20218,"component":18,"description":20355,"extension":1015,"links":19,"meta":20356,"navigation":526,"new":18,"path":234,"seo":20357,"stem":235,"wrapperKind":19,"__hash__":20358},"docs\u002Fdocs\u002Faio-editor\u002F3.extensions\u002F15.blockquote.md",{"type":533,"value":20219,"toc":20350},[20220,20226,20242,20244,20246,20278,20280,20322,20324,20345],[705,20221,20222,20223,20225],{},"引用區塊（",[548,20224,2806],{}," 元素）。",[1558,20227,20228,20235],{},[1561,20229,20230,2466,20232],{},[1135,20231,19524],{},[548,20233,20234],{},"AioEditorCoreExtension.Blockquote",[1561,20236,20237,2466,20239],{},[1135,20238,19532],{},[548,20240,20241],{},"@tiptap\u002Fextension-blockquote",[19537,20243],{"extension":233},[536,20245,19541],{"id":19541},[5754,20247,20248,20260],{},[5757,20249,20250],{},[5760,20251,20252,20254,20256,20258],{},[5763,20253,19550],{},[5763,20255,19553],{},[5763,20257,19556],{},[5763,20259,19559],{},[5770,20261,20262],{},[5760,20263,20264,20268,20272,20276],{},[5775,20265,20266],{},[548,20267,19568],{},[5775,20269,20270],{},[548,20271,19573],{},[5775,20273,20274],{},[548,20275,19578],{},[5775,20277,19581],{},[536,20279,19585],{"id":19584},[5754,20281,20282,20290],{},[5757,20283,20284],{},[5760,20285,20286,20288],{},[5763,20287,19594],{},[5763,20289,19559],{},[5770,20291,20292,20302,20312],{},[5760,20293,20294,20299],{},[5775,20295,20296],{},[548,20297,20298],{},"setBlockquote()",[5775,20300,20301],{},"包成引用區塊",[5760,20303,20304,20309],{},[5775,20305,20306],{},[548,20307,20308],{},"toggleBlockquote()",[5775,20310,20311],{},"切換引用區塊",[5760,20313,20314,20319],{},[5775,20315,20316],{},[548,20317,20318],{},"unsetBlockquote()",[5775,20320,20321],{},"解除引用區塊",[536,20323,5765],{"id":5765},[5754,20325,20326,20334],{},[5757,20327,20328],{},[5760,20329,20330,20332],{},[5763,20331,19639],{},[5763,20333,5768],{},[5770,20335,20336],{},[5760,20337,20338,20343],{},[5775,20339,20340],{},[548,20341,20342],{},"Mod-Shift-B",[5775,20344,20311],{},[705,20346,20195,20347,20349],{},[548,20348,778],{}," ＋空白自動轉為引用。",{"title":546,"searchDepth":601,"depth":601,"links":20351},[20352,20353,20354],{"id":19541,"depth":591,"text":19541},{"id":19584,"depth":591,"text":19585},{"id":5765,"depth":591,"text":5765},"引用區塊節點。",{},{"title":233,"description":20355},"eum5oKl4Y6Q5f3u3dB34UmI1_s0jMdnAwMnqBl2BLYY",{"id":20360,"title":237,"body":20361,"component":18,"description":20455,"extension":1015,"links":19,"meta":20456,"navigation":526,"new":18,"path":238,"seo":20457,"stem":239,"wrapperKind":19,"__hash__":20458},"docs\u002Fdocs\u002Faio-editor\u002F3.extensions\u002F16.horizontal-rule.md",{"type":533,"value":20362,"toc":20451},[20363,20369,20385,20387,20389,20421,20423,20445],[705,20364,20365,20366,20225],{},"水平分隔線（",[548,20367,20368],{},"hr",[1558,20370,20371,20378],{},[1561,20372,20373,2466,20375],{},[1135,20374,19524],{},[548,20376,20377],{},"AioEditorCoreExtension.HorizontalRule",[1561,20379,20380,2466,20382],{},[1135,20381,19532],{},[548,20383,20384],{},"@tiptap\u002Fextension-horizontal-rule",[19537,20386],{"extension":237},[536,20388,19541],{"id":19541},[5754,20390,20391,20403],{},[5757,20392,20393],{},[5760,20394,20395,20397,20399,20401],{},[5763,20396,19550],{},[5763,20398,19553],{},[5763,20400,19556],{},[5763,20402,19559],{},[5770,20404,20405],{},[5760,20406,20407,20411,20415,20419],{},[5775,20408,20409],{},[548,20410,19568],{},[5775,20412,20413],{},[548,20414,19573],{},[5775,20416,20417],{},[548,20418,19578],{},[5775,20420,19581],{},[536,20422,19585],{"id":19584},[5754,20424,20425,20433],{},[5757,20426,20427],{},[5760,20428,20429,20431],{},[5763,20430,19594],{},[5763,20432,19559],{},[5770,20434,20435],{},[5760,20436,20437,20442],{},[5775,20438,20439],{},[548,20440,20441],{},"setHorizontalRule()",[5775,20443,20444],{},"插入水平線",[705,20446,20195,20447,20450],{},[548,20448,20449],{},"---"," 自動轉為水平線。",{"title":546,"searchDepth":601,"depth":601,"links":20452},[20453,20454],{"id":19541,"depth":591,"text":19541},{"id":19584,"depth":591,"text":19585},"水平分隔線節點。",{},{"title":237,"description":20455},"zcbLCDzxuUy5xjl0RMEG7dnBuigZx1KqLnE1F5PWzpY",{"id":20460,"title":241,"body":20461,"component":18,"description":20602,"extension":1015,"links":19,"meta":20603,"navigation":526,"new":18,"path":242,"seo":20604,"stem":243,"wrapperKind":19,"__hash__":20605},"docs\u002Fdocs\u002Faio-editor\u002F3.extensions\u002F17.hard-break.md",{"type":533,"value":20462,"toc":20597},[20463,20470,20486,20488,20490,20541,20543,20565,20567],[705,20464,20465,20466,20469],{},"強制斷行（",[548,20467,20468],{},"br"," 元素），不產生新段落。",[1558,20471,20472,20479],{},[1561,20473,20474,2466,20476],{},[1135,20475,19524],{},[548,20477,20478],{},"AioEditorCoreExtension.HardBreak",[1561,20480,20481,2466,20483],{},[1135,20482,19532],{},[548,20484,20485],{},"@tiptap\u002Fextension-hard-break",[19537,20487],{"extension":241},[536,20489,19541],{"id":19541},[5754,20491,20492,20504],{},[5757,20493,20494],{},[5760,20495,20496,20498,20500,20502],{},[5763,20497,19550],{},[5763,20499,19553],{},[5763,20501,19556],{},[5763,20503,19559],{},[5770,20505,20506,20525],{},[5760,20507,20508,20513,20518,20522],{},[5775,20509,20510],{},[548,20511,20512],{},"keepMarks",[5775,20514,20515],{},[548,20516,20517],{},"boolean",[5775,20519,20520],{},[548,20521,2742],{},[5775,20523,20524],{},"斷行後是否延續目前的 mark（粗體、斜體等）",[5760,20526,20527,20531,20535,20539],{},[5775,20528,20529],{},[548,20530,19568],{},[5775,20532,20533],{},[548,20534,19573],{},[5775,20536,20537],{},[548,20538,19578],{},[5775,20540,19581],{},[536,20542,19585],{"id":19584},[5754,20544,20545,20553],{},[5757,20546,20547],{},[5760,20548,20549,20551],{},[5763,20550,19594],{},[5763,20552,19559],{},[5770,20554,20555],{},[5760,20556,20557,20562],{},[5775,20558,20559],{},[548,20560,20561],{},"setHardBreak()",[5775,20563,20564],{},"插入斷行",[536,20566,5765],{"id":5765},[5754,20568,20569,20577],{},[5757,20570,20571],{},[5760,20572,20573,20575],{},[5763,20574,19639],{},[5763,20576,5768],{},[5770,20578,20579,20588],{},[5760,20580,20581,20586],{},[5775,20582,20583],{},[548,20584,20585],{},"Shift-Enter",[5775,20587,20564],{},[5760,20589,20590,20595],{},[5775,20591,20592],{},[548,20593,20594],{},"Mod-Enter",[5775,20596,20564],{},{"title":546,"searchDepth":601,"depth":601,"links":20598},[20599,20600,20601],{"id":19541,"depth":591,"text":19541},{"id":19584,"depth":591,"text":19585},{"id":5765,"depth":591,"text":5765},"強制斷行節點。",{},{"title":241,"description":20602},"MAYTyJ1kPv4TdMHL67JMiZKMdMGl31DxUeZB2WoNruc",{"id":20607,"title":245,"body":20608,"component":18,"description":20961,"extension":1015,"links":19,"meta":20962,"navigation":526,"new":18,"path":246,"seo":20963,"stem":247,"wrapperKind":19,"__hash__":20964},"docs\u002Fdocs\u002Faio-editor\u002F3.extensions\u002F18.code-block.md",{"type":533,"value":20609,"toc":20955},[20610,20624,20645,20647,20649,20817,20819,20851,20853,20874,20876,20943,20952],[705,20611,20612,20613,20616,20617,3245,20620,20623],{},"程式碼區塊，",[1135,20614,20615],{},"自製變體","：基於 ",[548,20618,20619],{},"CodeBlockLowlight",[548,20621,20622],{},"renderHTML"," 直接內嵌 hljs 高亮結構——輸出的 HTML 在非編輯情境（郵件、前台）不需再跑一次高亮。",[1558,20625,20626,20633],{},[1561,20627,20628,2466,20630],{},[1135,20629,19524],{},[548,20631,20632],{},"AioEditorCoreExtension.CodeBlock",[1561,20634,20635,20637,20638,20641,20642,19410],{},[1135,20636,19532],{},"：自製（基於 ",[548,20639,20640],{},"@tiptap\u002Fextension-code-block-lowlight"," ＋ ",[548,20643,20644],{},"lowlight",[19537,20646],{"extension":245},[536,20648,19541],{"id":19541},[5754,20650,20651,20663],{},[5757,20652,20653],{},[5760,20654,20655,20657,20659,20661],{},[5763,20656,19550],{},[5763,20658,19553],{},[5763,20660,19556],{},[5763,20662,19559],{},[5770,20664,20665,20684,20705,20727,20745,20763,20781,20800],{},[5760,20666,20667,20671,20676,20681],{},[5775,20668,20669],{},[548,20670,20644],{},[5775,20672,20673],{},[548,20674,20675],{},"ReturnType\u003Ctypeof createLowlight>",[5775,20677,20678],{},[548,20679,20680],{},"createLowlight(all)",[5775,20682,20683],{},"語法高亮引擎；預設載入 highlight.js 全語言，追求 bundle 可自建僅含所需語言之實例",[5760,20685,20686,20691,20695,20700],{},[5775,20687,20688],{},[548,20689,20690],{},"languageClassPrefix",[5775,20692,20693],{},[548,20694,3261],{},[5775,20696,20697],{},[548,20698,20699],{},"'language-'",[5775,20701,20702,20704],{},[548,20703,548],{}," 元素之語言 class 前綴",[5760,20706,20707,20712,20717,20721],{},[5775,20708,20709],{},[548,20710,20711],{},"defaultLanguage",[5775,20713,20714],{},[548,20715,20716],{},"string 或 null",[5775,20718,20719],{},[548,20720,8135],{},[5775,20722,20723,20724,20726],{},"未指定語言時之預設；",[548,20725,8135],{}," 為自動偵測",[5760,20728,20729,20734,20738,20742],{},[5775,20730,20731],{},[548,20732,20733],{},"exitOnTripleEnter",[5775,20735,20736],{},[548,20737,20517],{},[5775,20739,20740],{},[548,20741,2742],{},[5775,20743,20744],{},"連按三次 Enter 離開區塊",[5760,20746,20747,20752,20756,20760],{},[5775,20748,20749],{},[548,20750,20751],{},"exitOnArrowDown",[5775,20753,20754],{},[548,20755,20517],{},[5775,20757,20758],{},[548,20759,2742],{},[5775,20761,20762],{},"區塊尾按 ↓ 離開",[5760,20764,20765,20770,20774,20778],{},[5775,20766,20767],{},[548,20768,20769],{},"enableTabIndentation",[5775,20771,20772],{},[548,20773,20517],{},[5775,20775,20776],{},[548,20777,2742],{},[5775,20779,20780],{},"區塊內 Tab 輸入縮排",[5760,20782,20783,20788,20792,20797],{},[5775,20784,20785],{},[548,20786,20787],{},"tabSize",[5775,20789,20790],{},[548,20791,3440],{},[5775,20793,20794],{},[548,20795,20796],{},"4",[5775,20798,20799],{},"Tab 縮排寬度",[5760,20801,20802,20806,20810,20815],{},[5775,20803,20804],{},[548,20805,19568],{},[5775,20807,20808],{},[548,20809,19573],{},[5775,20811,20812],{},[548,20813,20814],{},"{ class: 'hljs' }",[5775,20816,19581],{},[536,20818,19585],{"id":19584},[5754,20820,20821,20829],{},[5757,20822,20823],{},[5760,20824,20825,20827],{},[5763,20826,19594],{},[5763,20828,19559],{},[5770,20830,20831,20841],{},[5760,20832,20833,20838],{},[5775,20834,20835],{},[548,20836,20837],{},"setCodeBlock({ language? })",[5775,20839,20840],{},"轉為程式碼區塊",[5760,20842,20843,20848],{},[5775,20844,20845],{},[548,20846,20847],{},"toggleCodeBlock({ language? })",[5775,20849,20850],{},"切換程式碼區塊",[536,20852,5765],{"id":5765},[5754,20854,20855,20863],{},[5757,20856,20857],{},[5760,20858,20859,20861],{},[5763,20860,19639],{},[5763,20862,5768],{},[5770,20864,20865],{},[5760,20866,20867,20872],{},[5775,20868,20869],{},[548,20870,20871],{},"Mod-Alt-C",[5775,20873,20850],{},[536,20875,20129],{"id":20129},[539,20877,20879],{"className":574,"code":20878,"language":576,"meta":546,"style":546},"const config: AioEditorConfig = {\n  extensionsConfig: {\n    CodeBlock: { defaultLanguage: 'typescript', tabSize: 2 }\n  }\n}\n",[548,20880,20881,20895,20903,20935,20939],{"__ignoreMap":546},[551,20882,20883,20885,20887,20889,20891,20893],{"class":553,"line":554},[551,20884,3321],{"class":753},[551,20886,17870],{"class":594},[551,20888,1169],{"class":587},[551,20890,17875],{"class":557},[551,20892,10094],{"class":587},[551,20894,588],{"class":587},[551,20896,20897,20899,20901],{"class":553,"line":591},[551,20898,17927],{"class":738},[551,20900,1169],{"class":587},[551,20902,588],{"class":587},[551,20904,20905,20908,20910,20912,20915,20917,20919,20922,20924,20926,20929,20931,20933],{"class":553,"line":601},[551,20906,20907],{"class":738},"    CodeBlock",[551,20909,1169],{"class":587},[551,20911,1273],{"class":587},[551,20913,20914],{"class":738}," defaultLanguage",[551,20916,1169],{"class":587},[551,20918,674],{"class":587},[551,20920,20921],{"class":561},"typescript",[551,20923,1214],{"class":587},[551,20925,3348],{"class":587},[551,20927,20928],{"class":738}," tabSize",[551,20930,1169],{"class":587},[551,20932,18797],{"class":17275},[551,20934,18827],{"class":587},[551,20936,20937],{"class":553,"line":609},[551,20938,1232],{"class":587},[551,20940,20941],{"class":553,"line":617},[551,20942,10148],{"class":587},[705,20944,20195,20945,20948,20949,713],{},[548,20946,20947],{},"```","（可接語言名）自動轉為程式碼區塊。位於區塊內時會出現 ",[697,20950,20951],{"href":357},"CodeBlock bubble",[990,20953,20954],{},"html pre.shiki code .spNyl, html code.shiki .spNyl{--shiki-light:#9C3EDA;--shiki-default:#C792EA;--shiki-dark:#C792EA}html pre.shiki code .sTEyZ, html code.shiki .sTEyZ{--shiki-light:#90A4AE;--shiki-default:#EEFFFF;--shiki-dark:#BABED8}html pre.shiki code .sMK4o, html code.shiki .sMK4o{--shiki-light:#39ADB5;--shiki-default:#89DDFF;--shiki-dark:#89DDFF}html pre.shiki code .sBMFI, html code.shiki .sBMFI{--shiki-light:#E2931D;--shiki-default:#FFCB6B;--shiki-dark:#FFCB6B}html pre.shiki code .swJcz, html code.shiki .swJcz{--shiki-light:#E53935;--shiki-default:#F07178;--shiki-dark:#F07178}html pre.shiki code .sfazB, html code.shiki .sfazB{--shiki-light:#91B859;--shiki-default:#C3E88D;--shiki-dark:#C3E88D}html pre.shiki code .sbssI, html code.shiki .sbssI{--shiki-light:#F76D47;--shiki-default:#F78C6C;--shiki-dark:#F78C6C}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);}",{"title":546,"searchDepth":601,"depth":601,"links":20956},[20957,20958,20959,20960],{"id":19541,"depth":591,"text":19541},{"id":19584,"depth":591,"text":19585},{"id":5765,"depth":591,"text":5765},{"id":20129,"depth":591,"text":20129},"程式碼區塊（lowlight 語法高亮）。",{},{"title":245,"description":20961},"bSK6PVnmdfSpzmLWeo0CDKD1xOjf3WzLrKqgFqwdxCk",{"id":20966,"title":249,"body":20967,"component":18,"description":21146,"extension":1015,"links":19,"meta":21147,"navigation":526,"new":18,"path":250,"seo":21148,"stem":251,"wrapperKind":19,"__hash__":21149},"docs\u002Fdocs\u002Faio-editor\u002F3.extensions\u002F19.bullet-list.md",{"type":533,"value":20968,"toc":21141},[20969,20974,20992,20994,20996,21082,21084,21106,21108,21129],[705,20970,20971,20972,20225],{},"無序清單（",[548,20973,1558],{},[1558,20975,20976,20983],{},[1561,20977,20978,2466,20980],{},[1135,20979,19524],{},[548,20981,20982],{},"AioEditorCoreExtension.BulletList",[1561,20984,20985,2466,20987,8904,20990,19410],{},[1135,20986,19532],{},[548,20988,20989],{},"@tiptap\u002Fextension-list",[548,20991,249],{},[19537,20993],{"extension":249},[536,20995,19541],{"id":19541},[5754,20997,20998,21010],{},[5757,20999,21000],{},[5760,21001,21002,21004,21006,21008],{},[5763,21003,19550],{},[5763,21005,19553],{},[5763,21007,19556],{},[5763,21009,19559],{},[5770,21011,21012,21031,21047,21064],{},[5760,21013,21014,21019,21023,21028],{},[5775,21015,21016],{},[548,21017,21018],{},"itemTypeName",[5775,21020,21021],{},[548,21022,3261],{},[5775,21024,21025],{},[548,21026,21027],{},"'listItem'",[5775,21029,21030],{},"清單項之節點名",[5760,21032,21033,21037,21041,21045],{},[5775,21034,21035],{},[548,21036,19568],{},[5775,21038,21039],{},[548,21040,19573],{},[5775,21042,21043],{},[548,21044,19578],{},[5775,21046,19581],{},[5760,21048,21049,21053,21057,21061],{},[5775,21050,21051],{},[548,21052,20512],{},[5775,21054,21055],{},[548,21056,20517],{},[5775,21058,21059],{},[548,21060,2745],{},[5775,21062,21063],{},"切換清單時保留文字 mark",[5760,21065,21066,21071,21075,21079],{},[5775,21067,21068],{},[548,21069,21070],{},"keepAttributes",[5775,21072,21073],{},[548,21074,20517],{},[5775,21076,21077],{},[548,21078,2745],{},[5775,21080,21081],{},"切換清單時保留節點屬性",[536,21083,19585],{"id":19584},[5754,21085,21086,21094],{},[5757,21087,21088],{},[5760,21089,21090,21092],{},[5763,21091,19594],{},[5763,21093,19559],{},[5770,21095,21096],{},[5760,21097,21098,21103],{},[5775,21099,21100],{},[548,21101,21102],{},"toggleBulletList()",[5775,21104,21105],{},"切換項目清單",[536,21107,5765],{"id":5765},[5754,21109,21110,21118],{},[5757,21111,21112],{},[5760,21113,21114,21116],{},[5763,21115,19639],{},[5763,21117,5768],{},[5770,21119,21120],{},[5760,21121,21122,21127],{},[5775,21123,21124],{},[548,21125,21126],{},"Mod-Shift-8",[5775,21128,21105],{},[705,21130,20195,21131,14865,21134,4159,21137,21140],{},[548,21132,21133],{},"-",[548,21135,21136],{},"*",[548,21138,21139],{},"+"," ＋空白自動轉為項目清單。",{"title":546,"searchDepth":601,"depth":601,"links":21142},[21143,21144,21145],{"id":19541,"depth":591,"text":19541},{"id":19584,"depth":591,"text":19585},{"id":5765,"depth":591,"text":5765},"項目清單節點。",{},{"title":249,"description":21146},"Kfs5bqWQSl1mgwtyBlTx36bsQwq_A5ukAdIT0Yfuvgw",{"id":21151,"title":253,"body":21152,"component":18,"description":21363,"extension":1015,"links":19,"meta":21364,"navigation":526,"new":18,"path":254,"seo":21365,"stem":255,"wrapperKind":19,"__hash__":21366},"docs\u002Fdocs\u002Faio-editor\u002F3.extensions\u002F2.bold.md",{"type":533,"value":21153,"toc":21357},[21154,21157,21173,21175,21177,21209,21211,21253,21255,21276,21278,21344,21354],[705,21155,21156],{},"粗體文字標記。",[1558,21158,21159,21166],{},[1561,21160,21161,2466,21163],{},[1135,21162,19524],{},[548,21164,21165],{},"AioEditorCoreExtension.Bold",[1561,21167,21168,2466,21170],{},[1135,21169,19532],{},[548,21171,21172],{},"@tiptap\u002Fextension-bold",[19537,21174],{"extension":253},[536,21176,19541],{"id":19541},[5754,21178,21179,21191],{},[5757,21180,21181],{},[5760,21182,21183,21185,21187,21189],{},[5763,21184,19550],{},[5763,21186,19553],{},[5763,21188,19556],{},[5763,21190,19559],{},[5770,21192,21193],{},[5760,21194,21195,21199,21203,21207],{},[5775,21196,21197],{},[548,21198,19568],{},[5775,21200,21201],{},[548,21202,19573],{},[5775,21204,21205],{},[548,21206,19578],{},[5775,21208,19581],{},[536,21210,19585],{"id":19584},[5754,21212,21213,21221],{},[5757,21214,21215],{},[5760,21216,21217,21219],{},[5763,21218,19594],{},[5763,21220,19559],{},[5770,21222,21223,21233,21243],{},[5760,21224,21225,21230],{},[5775,21226,21227],{},[548,21228,21229],{},"setBold()",[5775,21231,21232],{},"套用粗體",[5760,21234,21235,21240],{},[5775,21236,21237],{},[548,21238,21239],{},"toggleBold()",[5775,21241,21242],{},"切換粗體",[5760,21244,21245,21250],{},[5775,21246,21247],{},[548,21248,21249],{},"unsetBold()",[5775,21251,21252],{},"移除粗體",[536,21254,5765],{"id":5765},[5754,21256,21257,21265],{},[5757,21258,21259],{},[5760,21260,21261,21263],{},[5763,21262,19639],{},[5763,21264,5768],{},[5770,21266,21267],{},[5760,21268,21269,21274],{},[5775,21270,21271],{},[548,21272,21273],{},"Mod-B",[5775,21275,21242],{},[536,21277,20129],{"id":20129},[539,21279,21281],{"className":574,"code":21280,"language":576,"meta":546,"style":546},"const config: AioEditorConfig = {\n  extensionsConfig: {\n    Bold: { HTMLAttributes: { class: 'my-bold' } }\n  }\n}\n",[548,21282,21283,21297,21305,21336,21340],{"__ignoreMap":546},[551,21284,21285,21287,21289,21291,21293,21295],{"class":553,"line":554},[551,21286,3321],{"class":753},[551,21288,17870],{"class":594},[551,21290,1169],{"class":587},[551,21292,17875],{"class":557},[551,21294,10094],{"class":587},[551,21296,588],{"class":587},[551,21298,21299,21301,21303],{"class":553,"line":591},[551,21300,17927],{"class":738},[551,21302,1169],{"class":587},[551,21304,588],{"class":587},[551,21306,21307,21310,21312,21314,21317,21319,21321,21323,21325,21327,21330,21332,21334],{"class":553,"line":601},[551,21308,21309],{"class":738},"    Bold",[551,21311,1169],{"class":587},[551,21313,1273],{"class":587},[551,21315,21316],{"class":738}," HTMLAttributes",[551,21318,1169],{"class":587},[551,21320,1273],{"class":587},[551,21322,13315],{"class":738},[551,21324,1169],{"class":587},[551,21326,674],{"class":587},[551,21328,21329],{"class":561},"my-bold",[551,21331,1214],{"class":587},[551,21333,1279],{"class":587},[551,21335,18827],{"class":587},[551,21337,21338],{"class":553,"line":609},[551,21339,1232],{"class":587},[551,21341,21342],{"class":553,"line":617},[551,21343,10148],{"class":587},[705,21345,21346,21347,4159,21350,21353],{},"輸入規則：",[548,21348,21349],{},"**文字**",[548,21351,21352],{},"__文字__"," 自動轉為粗體。",[990,21355,21356],{},"html pre.shiki code .spNyl, html code.shiki .spNyl{--shiki-light:#9C3EDA;--shiki-default:#C792EA;--shiki-dark:#C792EA}html pre.shiki code .sTEyZ, html code.shiki .sTEyZ{--shiki-light:#90A4AE;--shiki-default:#EEFFFF;--shiki-dark:#BABED8}html pre.shiki code .sMK4o, html code.shiki .sMK4o{--shiki-light:#39ADB5;--shiki-default:#89DDFF;--shiki-dark:#89DDFF}html pre.shiki code .sBMFI, html code.shiki .sBMFI{--shiki-light:#E2931D;--shiki-default:#FFCB6B;--shiki-dark:#FFCB6B}html pre.shiki code .swJcz, html code.shiki .swJcz{--shiki-light:#E53935;--shiki-default:#F07178;--shiki-dark:#F07178}html pre.shiki code .sfazB, html code.shiki .sfazB{--shiki-light:#91B859;--shiki-default:#C3E88D;--shiki-dark:#C3E88D}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);}",{"title":546,"searchDepth":601,"depth":601,"links":21358},[21359,21360,21361,21362],{"id":19541,"depth":591,"text":19541},{"id":19584,"depth":591,"text":19585},{"id":5765,"depth":591,"text":5765},{"id":20129,"depth":591,"text":20129},"粗體 mark。",{},{"title":253,"description":21363},"LPdGuRoYFa8oWhMc_VOwugzFq-LqReyEN2BBXM3SRcc",{"id":21368,"title":257,"body":21369,"component":18,"description":21535,"extension":1015,"links":19,"meta":21536,"navigation":526,"new":18,"path":258,"seo":21537,"stem":259,"wrapperKind":19,"__hash__":21538},"docs\u002Fdocs\u002Faio-editor\u002F3.extensions\u002F20.ordered-list.md",{"type":533,"value":21370,"toc":21530},[21371,21376,21393,21395,21397,21477,21479,21501,21503,21524],[705,21372,21373,21374,20225],{},"有序清單（",[548,21375,17110],{},[1558,21377,21378,21385],{},[1561,21379,21380,2466,21382],{},[1135,21381,19524],{},[548,21383,21384],{},"AioEditorCoreExtension.OrderedList",[1561,21386,21387,2466,21389,8904,21391,19410],{},[1135,21388,19532],{},[548,21390,20989],{},[548,21392,257],{},[19537,21394],{"extension":257},[536,21396,19541],{"id":19541},[5754,21398,21399,21411],{},[5757,21400,21401],{},[5760,21402,21403,21405,21407,21409],{},[5763,21404,19550],{},[5763,21406,19553],{},[5763,21408,19556],{},[5763,21410,19559],{},[5770,21412,21413,21429,21445,21461],{},[5760,21414,21415,21419,21423,21427],{},[5775,21416,21417],{},[548,21418,21018],{},[5775,21420,21421],{},[548,21422,3261],{},[5775,21424,21425],{},[548,21426,21027],{},[5775,21428,21030],{},[5760,21430,21431,21435,21439,21443],{},[5775,21432,21433],{},[548,21434,19568],{},[5775,21436,21437],{},[548,21438,19573],{},[5775,21440,21441],{},[548,21442,19578],{},[5775,21444,19581],{},[5760,21446,21447,21451,21455,21459],{},[5775,21448,21449],{},[548,21450,20512],{},[5775,21452,21453],{},[548,21454,20517],{},[5775,21456,21457],{},[548,21458,2745],{},[5775,21460,21063],{},[5760,21462,21463,21467,21471,21475],{},[5775,21464,21465],{},[548,21466,21070],{},[5775,21468,21469],{},[548,21470,20517],{},[5775,21472,21473],{},[548,21474,2745],{},[5775,21476,21081],{},[536,21478,19585],{"id":19584},[5754,21480,21481,21489],{},[5757,21482,21483],{},[5760,21484,21485,21487],{},[5763,21486,19594],{},[5763,21488,19559],{},[5770,21490,21491],{},[5760,21492,21493,21498],{},[5775,21494,21495],{},[548,21496,21497],{},"toggleOrderedList()",[5775,21499,21500],{},"切換編號清單",[536,21502,5765],{"id":5765},[5754,21504,21505,21513],{},[5757,21506,21507],{},[5760,21508,21509,21511],{},[5763,21510,19639],{},[5763,21512,5768],{},[5770,21514,21515],{},[5760,21516,21517,21522],{},[5775,21518,21519],{},[548,21520,21521],{},"Mod-Shift-7",[5775,21523,21500],{},[705,21525,20195,21526,21529],{},[548,21527,21528],{},"1."," ＋空白自動轉為編號清單。",{"title":546,"searchDepth":601,"depth":601,"links":21531},[21532,21533,21534],{"id":19541,"depth":591,"text":19541},{"id":19584,"depth":591,"text":19585},{"id":5765,"depth":591,"text":5765},"編號清單節點。",{},{"title":257,"description":21535},"uOaKCoUIr4qfzmW7wQMIVyZoeHR8DSnwZ0GyEe0TSn4",{"id":21540,"title":261,"body":21541,"component":18,"description":21686,"extension":1015,"links":19,"meta":21687,"navigation":526,"new":18,"path":262,"seo":21688,"stem":263,"wrapperKind":19,"__hash__":21689},"docs\u002Fdocs\u002Faio-editor\u002F3.extensions\u002F21.list-item.md",{"type":533,"value":21542,"toc":21682},[21543,21549,21566,21568,21570,21640,21642],[705,21544,21545,21546,21548],{},"清單項（",[548,21547,1561],{}," 元素），供 BulletList \u002F OrderedList 使用。",[1558,21550,21551,21558],{},[1561,21552,21553,2466,21555],{},[1135,21554,19524],{},[548,21556,21557],{},"AioEditorCoreExtension.ListItem",[1561,21559,21560,2466,21562,8904,21564,19410],{},[1135,21561,19532],{},[548,21563,20989],{},[548,21565,261],{},[19537,21567],{"extension":261},[536,21569,19541],{"id":19541},[5754,21571,21572,21584],{},[5757,21573,21574],{},[5760,21575,21576,21578,21580,21582],{},[5763,21577,19550],{},[5763,21579,19553],{},[5763,21581,19556],{},[5763,21583,19559],{},[5770,21585,21586,21602,21621],{},[5760,21587,21588,21592,21596,21600],{},[5775,21589,21590],{},[548,21591,19568],{},[5775,21593,21594],{},[548,21595,19573],{},[5775,21597,21598],{},[548,21599,19578],{},[5775,21601,19581],{},[5760,21603,21604,21609,21613,21618],{},[5775,21605,21606],{},[548,21607,21608],{},"bulletListTypeName",[5775,21610,21611],{},[548,21612,3261],{},[5775,21614,21615],{},[548,21616,21617],{},"'bulletList'",[5775,21619,21620],{},"所屬無序清單之節點名",[5760,21622,21623,21628,21632,21637],{},[5775,21624,21625],{},[548,21626,21627],{},"orderedListTypeName",[5775,21629,21630],{},[548,21631,3261],{},[5775,21633,21634],{},[548,21635,21636],{},"'orderedList'",[5775,21638,21639],{},"所屬有序清單之節點名",[536,21641,5765],{"id":5765},[5754,21643,21644,21652],{},[5757,21645,21646],{},[5760,21647,21648,21650],{},[5763,21649,19639],{},[5763,21651,5768],{},[5770,21653,21654,21663,21672],{},[5760,21655,21656,21660],{},[5775,21657,21658],{},[548,21659,5792],{},[5775,21661,21662],{},"分割清單項",[5760,21664,21665,21669],{},[5775,21666,21667],{},[548,21668,5819],{},[5775,21670,21671],{},"降一層（sink）",[5760,21673,21674,21679],{},[5775,21675,21676],{},[548,21677,21678],{},"Shift-Tab",[5775,21680,21681],{},"升一層（lift）",{"title":546,"searchDepth":601,"depth":601,"links":21683},[21684,21685],{"id":19541,"depth":591,"text":19541},{"id":5765,"depth":591,"text":5765},"清單項節點。",{},{"title":261,"description":21686},"cxcqdlZ6vLH0ddbVvPHHNs7g7RiyuvFEUS2IhCKc89k",{"id":21691,"title":265,"body":21692,"component":18,"description":21822,"extension":1015,"links":19,"meta":21823,"navigation":526,"new":18,"path":266,"seo":21824,"stem":267,"wrapperKind":19,"__hash__":21825},"docs\u002Fdocs\u002Faio-editor\u002F3.extensions\u002F22.task-list.md",{"type":533,"value":21693,"toc":21817},[21694,21700,21717,21719,21721,21770,21772,21794,21796],[705,21695,21696,21697,19996],{},"待辦清單（",[548,21698,21699],{},"ul[data-type=\"taskList\"]",[1558,21701,21702,21709],{},[1561,21703,21704,2466,21706],{},[1135,21705,19524],{},[548,21707,21708],{},"AioEditorCoreExtension.TaskList",[1561,21710,21711,2466,21713,8904,21715,19410],{},[1135,21712,19532],{},[548,21714,20989],{},[548,21716,265],{},[19537,21718],{"extension":265},[536,21720,19541],{"id":19541},[5754,21722,21723,21735],{},[5757,21724,21725],{},[5760,21726,21727,21729,21731,21733],{},[5763,21728,19550],{},[5763,21730,19553],{},[5763,21732,19556],{},[5763,21734,19559],{},[5770,21736,21737,21754],{},[5760,21738,21739,21743,21747,21752],{},[5775,21740,21741],{},[548,21742,21018],{},[5775,21744,21745],{},[548,21746,3261],{},[5775,21748,21749],{},[548,21750,21751],{},"'taskItem'",[5775,21753,21030],{},[5760,21755,21756,21760,21764,21768],{},[5775,21757,21758],{},[548,21759,19568],{},[5775,21761,21762],{},[548,21763,19573],{},[5775,21765,21766],{},[548,21767,19578],{},[5775,21769,19581],{},[536,21771,19585],{"id":19584},[5754,21773,21774,21782],{},[5757,21775,21776],{},[5760,21777,21778,21780],{},[5763,21779,19594],{},[5763,21781,19559],{},[5770,21783,21784],{},[5760,21785,21786,21791],{},[5775,21787,21788],{},[548,21789,21790],{},"toggleTaskList()",[5775,21792,21793],{},"切換待辦清單",[536,21795,5765],{"id":5765},[5754,21797,21798,21806],{},[5757,21799,21800],{},[5760,21801,21802,21804],{},[5763,21803,19639],{},[5763,21805,5768],{},[5770,21807,21808],{},[5760,21809,21810,21815],{},[5775,21811,21812],{},[548,21813,21814],{},"Mod-Shift-9",[5775,21816,21793],{},{"title":546,"searchDepth":601,"depth":601,"links":21818},[21819,21820,21821],{"id":19541,"depth":591,"text":19541},{"id":19584,"depth":591,"text":19585},{"id":5765,"depth":591,"text":5765},"待辦清單節點。",{},{"title":265,"description":21822},"4hiPMNhJzLocAnThftTwFxmwzGHnPTHAgzJkk4oQw_w",{"id":21827,"title":269,"body":21828,"component":18,"description":21957,"extension":1015,"links":19,"meta":21958,"navigation":526,"new":18,"path":270,"seo":21959,"stem":271,"wrapperKind":19,"__hash__":21960},"docs\u002Fdocs\u002Faio-editor\u002F3.extensions\u002F23.task-item.md",{"type":533,"value":21829,"toc":21954},[21830,21833,21850,21852,21854,21945],[705,21831,21832],{},"帶 checkbox 的待辦清單項。",[1558,21834,21835,21842],{},[1561,21836,21837,2466,21839],{},[1135,21838,19524],{},[548,21840,21841],{},"AioEditorCoreExtension.TaskItem",[1561,21843,21844,2466,21846,8904,21848,19410],{},[1135,21845,19532],{},[548,21847,20989],{},[548,21849,269],{},[19537,21851],{"extension":269},[536,21853,19541],{"id":19541},[5754,21855,21856,21868],{},[5757,21857,21858],{},[5760,21859,21860,21862,21864,21866],{},[5763,21861,19550],{},[5763,21863,19553],{},[5763,21865,19556],{},[5763,21867,19559],{},[5770,21869,21870,21888,21904,21923],{},[5760,21871,21872,21877,21881,21885],{},[5775,21873,21874],{},[548,21875,21876],{},"nested",[5775,21878,21879],{},[548,21880,20517],{},[5775,21882,21883],{},[548,21884,2742],{},[5775,21886,21887],{},"允許巢狀待辦清單",[5760,21889,21890,21894,21898,21902],{},[5775,21891,21892],{},[548,21893,19568],{},[5775,21895,21896],{},[548,21897,19573],{},[5775,21899,21900],{},[548,21901,19578],{},[5775,21903,19581],{},[5760,21905,21906,21911,21915,21920],{},[5775,21907,21908],{},[548,21909,21910],{},"taskListTypeName",[5775,21912,21913],{},[548,21914,3261],{},[5775,21916,21917],{},[548,21918,21919],{},"'taskList'",[5775,21921,21922],{},"所屬待辦清單之節點名",[5760,21924,21925,21930,21935,21939],{},[5775,21926,21927],{},[548,21928,21929],{},"onReadOnlyChecked",[5775,21931,21932],{},[548,21933,21934],{},"(node, checked) => boolean",[5775,21936,21937],{},[548,21938,13826],{},[5775,21940,21941,21942,21944],{},"唯讀模式下勾選時之攔截；回傳 ",[548,21943,2745],{}," 阻止變更",[705,21946,20195,21947,4159,21950,21953],{},[548,21948,21949],{},"[ ]",[548,21951,21952],{},"[x]"," ＋空白自動轉為待辦項。",{"title":546,"searchDepth":601,"depth":601,"links":21955},[21956],{"id":19541,"depth":591,"text":19541},"待辦清單項節點。",{},{"title":269,"description":21957},"oIi6_RKCLoSLLnsJPk5vBvnO5B_sYPT5bfdsJgyj7EA",{"id":21962,"title":273,"body":21963,"component":18,"description":22141,"extension":1015,"links":19,"meta":22142,"navigation":526,"new":18,"path":274,"seo":22143,"stem":275,"wrapperKind":19,"__hash__":22144},"docs\u002Fdocs\u002Faio-editor\u002F3.extensions\u002F24.list-keymap.md",{"type":533,"value":21964,"toc":22137},[21965,21974,21991,21993,21995,22035,22037,22135],[705,21966,21967,21968,21970,21971,713],{},"清單之 Backspace \u002F Delete 合併行為，",[1135,21969,20615],{},"：前一個清單項帶有子清單時不觸發合併（避免誤併進深層結構），其餘行為同官方 ",[548,21972,21973],{},"ListKeymap",[1558,21975,21976,21983],{},[1561,21977,21978,2466,21980],{},[1135,21979,19524],{},[548,21981,21982],{},"AioEditorCoreExtension.ListKeyMap",[1561,21984,21985,20637,21987,4973,21989,19410],{},[1135,21986,19532],{},[548,21988,20989],{},[548,21990,21973],{},[19537,21992],{"extension":273},[536,21994,19541],{"id":19541},[5754,21996,21997,22009],{},[5757,21998,21999],{},[5760,22000,22001,22003,22005,22007],{},[5763,22002,19550],{},[5763,22004,19553],{},[5763,22006,19556],{},[5763,22008,19559],{},[5770,22010,22011],{},[5760,22012,22013,22018,22023,22028],{},[5775,22014,22015],{},[548,22016,22017],{},"listTypes",[5775,22019,22020],{},[548,22021,22022],{},"{ itemName: string; wrapperNames: string[] }[]",[5775,22024,22025],{},[548,22026,22027],{},"listItem ＋ taskItem 兩組",[5775,22029,22030,22031,22034],{},"套用行為之清單型別；",[548,22032,22033],{},"wrapperNames"," 為其外層清單節點名",[536,22036,20129],{"id":20129},[539,22038,22040],{"className":574,"code":22039,"language":576,"meta":546,"style":546},"const config: AioEditorConfig = {\n  extensionsConfig: {\n    ListKeyMap: { listTypes: [{ itemName: 'listItem', wrapperNames: ['bulletList', 'orderedList'] }] }\n  }\n}\n",[548,22041,22042,22056,22064,22127,22131],{"__ignoreMap":546},[551,22043,22044,22046,22048,22050,22052,22054],{"class":553,"line":554},[551,22045,3321],{"class":753},[551,22047,17870],{"class":594},[551,22049,1169],{"class":587},[551,22051,17875],{"class":557},[551,22053,10094],{"class":587},[551,22055,588],{"class":587},[551,22057,22058,22060,22062],{"class":553,"line":591},[551,22059,17927],{"class":738},[551,22061,1169],{"class":587},[551,22063,588],{"class":587},[551,22065,22066,22069,22071,22073,22076,22078,22080,22082,22085,22087,22089,22092,22094,22096,22099,22101,22103,22105,22108,22110,22112,22114,22117,22119,22121,22123,22125],{"class":553,"line":601},[551,22067,22068],{"class":738},"    ListKeyMap",[551,22070,1169],{"class":587},[551,22072,1273],{"class":587},[551,22074,22075],{"class":738}," listTypes",[551,22077,1169],{"class":587},[551,22079,9070],{"class":594},[551,22081,4243],{"class":587},[551,22083,22084],{"class":738}," itemName",[551,22086,1169],{"class":587},[551,22088,674],{"class":587},[551,22090,22091],{"class":561},"listItem",[551,22093,1214],{"class":587},[551,22095,3348],{"class":587},[551,22097,22098],{"class":738}," wrapperNames",[551,22100,1169],{"class":587},[551,22102,9070],{"class":594},[551,22104,1214],{"class":587},[551,22106,22107],{"class":561},"bulletList",[551,22109,1214],{"class":587},[551,22111,3348],{"class":587},[551,22113,674],{"class":587},[551,22115,22116],{"class":561},"orderedList",[551,22118,1214],{"class":587},[551,22120,3398],{"class":594},[551,22122,668],{"class":587},[551,22124,3398],{"class":594},[551,22126,10148],{"class":587},[551,22128,22129],{"class":553,"line":609},[551,22130,1232],{"class":587},[551,22132,22133],{"class":553,"line":617},[551,22134,10148],{"class":587},[990,22136,21356],{},{"title":546,"searchDepth":601,"depth":601,"links":22138},[22139,22140],{"id":19541,"depth":591,"text":19541},{"id":20129,"depth":591,"text":20129},"清單鍵盤行為。",{},{"title":273,"description":22141},"3VpTuevKQEb7a5U4vOH2oh2AEq0eIYZI2zUmFKKjLZs",{"id":22146,"title":277,"body":22147,"component":18,"description":22353,"extension":1015,"links":19,"meta":22354,"navigation":526,"new":18,"path":278,"seo":22355,"stem":279,"wrapperKind":19,"__hash__":22356},"docs\u002Fdocs\u002Faio-editor\u002F3.extensions\u002F25.text-align.md",{"type":533,"value":22148,"toc":22348},[22149,22156,22172,22174,22176,22250,22252,22294,22296],[705,22150,22151,22152,22155],{},"區塊文字對齊（輸出 ",[548,22153,22154],{},"text-align"," style）。",[1558,22157,22158,22165],{},[1561,22159,22160,2466,22162],{},[1135,22161,19524],{},[548,22163,22164],{},"AioEditorCoreExtension.TextAlign",[1561,22166,22167,2466,22169],{},[1135,22168,19532],{},[548,22170,22171],{},"@tiptap\u002Fextension-text-align",[19537,22173],{"extension":277},[536,22175,19541],{"id":19541},[5754,22177,22178,22190],{},[5757,22179,22180],{},[5760,22181,22182,22184,22186,22188],{},[5763,22183,19550],{},[5763,22185,19553],{},[5763,22187,19556],{},[5763,22189,19559],{},[5770,22191,22192,22212,22231],{},[5760,22193,22194,22199,22204,22209],{},[5775,22195,22196],{},[548,22197,22198],{},"types",[5775,22200,22201],{},[548,22202,22203],{},"string[]",[5775,22205,22206],{},[548,22207,22208],{},"['heading', 'paragraph']",[5775,22210,22211],{},"可對齊之節點型別",[5760,22213,22214,22219,22223,22228],{},[5775,22215,22216],{},[548,22217,22218],{},"alignments",[5775,22220,22221],{},[548,22222,22203],{},[5775,22224,22225],{},[548,22226,22227],{},"['left', 'center', 'right', 'justify']",[5775,22229,22230],{},"允許之對齊值；不在清單內之值無法設定",[5760,22232,22233,22238,22242,22247],{},[5775,22234,22235],{},[548,22236,22237],{},"defaultAlignment",[5775,22239,22240],{},[548,22241,3261],{},[5775,22243,22244],{},[548,22245,22246],{},"'left'",[5775,22248,22249],{},"預設對齊（等於預設值時不輸出 style）",[536,22251,19585],{"id":19584},[5754,22253,22254,22262],{},[5757,22255,22256],{},[5760,22257,22258,22260],{},[5763,22259,19594],{},[5763,22261,19559],{},[5770,22263,22264,22274,22284],{},[5760,22265,22266,22271],{},[5775,22267,22268],{},[548,22269,22270],{},"setTextAlign(alignment)",[5775,22272,22273],{},"設定對齊",[5760,22275,22276,22281],{},[5775,22277,22278],{},[548,22279,22280],{},"unsetTextAlign()",[5775,22282,22283],{},"回復預設對齊",[5760,22285,22286,22291],{},[5775,22287,22288],{},[548,22289,22290],{},"toggleTextAlign(alignment)",[5775,22292,22293],{},"切換對齊",[536,22295,5765],{"id":5765},[5754,22297,22298,22306],{},[5757,22299,22300],{},[5760,22301,22302,22304],{},[5763,22303,19639],{},[5763,22305,5768],{},[5770,22307,22308,22318,22328,22338],{},[5760,22309,22310,22315],{},[5775,22311,22312],{},[548,22313,22314],{},"Mod-Shift-L",[5775,22316,22317],{},"靠左",[5760,22319,22320,22325],{},[5775,22321,22322],{},[548,22323,22324],{},"Mod-Shift-E",[5775,22326,22327],{},"置中",[5760,22329,22330,22335],{},[5775,22331,22332],{},[548,22333,22334],{},"Mod-Shift-R",[5775,22336,22337],{},"靠右",[5760,22339,22340,22345],{},[5775,22341,22342],{},[548,22343,22344],{},"Mod-Shift-J",[5775,22346,22347],{},"兩端對齊",{"title":546,"searchDepth":601,"depth":601,"links":22349},[22350,22351,22352],{"id":19541,"depth":591,"text":19541},{"id":19584,"depth":591,"text":19585},{"id":5765,"depth":591,"text":5765},"文字對齊。",{},{"title":277,"description":22353},"rcwRrHvG1Wt_Dq3Hg4ZMAjETMNe4z55ZS6vFOJ9Jy3s",{"id":22358,"title":281,"body":22359,"component":18,"description":22632,"extension":1015,"links":19,"meta":22633,"navigation":526,"new":18,"path":282,"seo":22634,"stem":283,"wrapperKind":19,"__hash__":22635},"docs\u002Fdocs\u002Faio-editor\u002F3.extensions\u002F26.indent.md",{"type":533,"value":22360,"toc":22627},[22361,22379,22393,22395,22397,22524,22526,22558,22560,22618],[705,22362,22363,22364,22367,22368,22371,22372,1123,22375,22378],{},"區塊縮排（輸出 ",[548,22365,22366],{},"margin-left"," style），",[1135,22369,22370],{},"自製 extension","。清單內會優先操作 ",[548,22373,22374],{},"sinkListItem",[548,22376,22377],{},"liftListItem","，離開清單後才走縮排；清單項上的縮排值會被自動歸零。",[1558,22380,22381,22388],{},[1561,22382,22383,2466,22385],{},[1135,22384,19524],{},[548,22386,22387],{},"AioEditorCoreExtension.Indent",[1561,22389,22390,22392],{},[1135,22391,19532],{},"：自製",[19537,22394],{"extension":281},[536,22396,19541],{"id":19541},[5754,22398,22399,22411],{},[5757,22400,22401],{},[5760,22402,22403,22405,22407,22409],{},[5763,22404,19550],{},[5763,22406,19553],{},[5763,22408,19556],{},[5763,22410,19559],{},[5770,22412,22413,22431,22450,22469,22488,22506],{},[5760,22414,22415,22420,22424,22428],{},[5775,22416,22417],{},[548,22418,22419],{},"names",[5775,22421,22422],{},[548,22423,22203],{},[5775,22425,22426],{},[548,22427,22208],{},[5775,22429,22430],{},"可縮排之節點型別",[5760,22432,22433,22438,22442,22447],{},[5775,22434,22435],{},[548,22436,22437],{},"indentRange",[5775,22439,22440],{},[548,22441,3440],{},[5775,22443,22444],{},[548,22445,22446],{},"24",[5775,22448,22449],{},"每次縮排之增減量（px）",[5760,22451,22452,22457,22461,22466],{},[5775,22453,22454],{},[548,22455,22456],{},"minIndentLevel",[5775,22458,22459],{},[548,22460,3440],{},[5775,22462,22463],{},[548,22464,22465],{},"0",[5775,22467,22468],{},"縮排下限（px）",[5760,22470,22471,22476,22480,22485],{},[5775,22472,22473],{},[548,22474,22475],{},"maxIndentLevel",[5775,22477,22478],{},[548,22479,3440],{},[5775,22481,22482],{},[548,22483,22484],{},"240",[5775,22486,22487],{},"縮排上限（px）",[5760,22489,22490,22495,22499,22503],{},[5775,22491,22492],{},[548,22493,22494],{},"defaultIndentLevel",[5775,22496,22497],{},[548,22498,3440],{},[5775,22500,22501],{},[548,22502,22465],{},[5775,22504,22505],{},"預設縮排值",[5760,22507,22508,22512,22517,22521],{},[5775,22509,22510],{},[548,22511,19568],{},[5775,22513,22514],{},[548,22515,22516],{},"Record\u003Cstring, never>",[5775,22518,22519],{},[548,22520,19578],{},[5775,22522,22523],{},"保留欄位，目前未使用",[536,22525,19585],{"id":19584},[5754,22527,22528,22536],{},[5757,22529,22530],{},[5760,22531,22532,22534],{},[5763,22533,19594],{},[5763,22535,19559],{},[5770,22537,22538,22548],{},[5760,22539,22540,22545],{},[5775,22541,22542],{},[548,22543,22544],{},"indent()",[5775,22546,22547],{},"增加縮排",[5760,22549,22550,22555],{},[5775,22551,22552],{},[548,22553,22554],{},"outdent()",[5775,22556,22557],{},"減少縮排",[536,22559,5765],{"id":5765},[5754,22561,22562,22570],{},[5757,22563,22564],{},[5760,22565,22566,22568],{},[5763,22567,19639],{},[5763,22569,5768],{},[5770,22571,22572,22581,22590,22600,22609],{},[5760,22573,22574,22578],{},[5775,22575,22576],{},[548,22577,5819],{},[5775,22579,22580],{},"增加縮排（清單內為降層）",[5760,22582,22583,22587],{},[5775,22584,22585],{},[548,22586,21678],{},[5775,22588,22589],{},"減少縮排（清單內為升層）",[5760,22591,22592,22597],{},[5775,22593,22594],{},[548,22595,22596],{},"Backspace",[5775,22598,22599],{},"行首時減少縮排",[5760,22601,22602,22607],{},[5775,22603,22604],{},[548,22605,22606],{},"Mod-]",[5775,22608,22547],{},[5760,22610,22611,22616],{},[5775,22612,22613],{},[548,22614,22615],{},"Mod-[",[5775,22617,22557],{},[705,22619,22620,22621,1613,22623,22626],{},"解析既有 HTML 時會合併 ",[548,22622,22366],{},[548,22624,22625],{},"text-indent","（支援 px \u002F pt 單位）作為初始縮排值。",{"title":546,"searchDepth":601,"depth":601,"links":22628},[22629,22630,22631],{"id":19541,"depth":591,"text":19541},{"id":19584,"depth":591,"text":19585},{"id":5765,"depth":591,"text":5765},"區塊縮排。",{},{"title":281,"description":22632},"VQpUdORNVRG2awnV8ZDMczfLb0GrFxeG5jcBu6RS4Oc",{"id":22637,"title":285,"body":22638,"component":18,"description":22882,"extension":1015,"links":19,"meta":22883,"navigation":526,"new":18,"path":286,"seo":22884,"stem":287,"wrapperKind":19,"__hash__":22885},"docs\u002Fdocs\u002Faio-editor\u002F3.extensions\u002F27.line-height.md",{"type":533,"value":22639,"toc":22877},[22640,22648,22661,22663,22665,22748,22750,22782,22784,22875],[705,22641,22642,22643,22367,22646,713],{},"段落行高（輸出 ",[548,22644,22645],{},"line-height",[1135,22647,22370],{},[1558,22649,22650,22657],{},[1561,22651,22652,2466,22654],{},[1135,22653,19524],{},[548,22655,22656],{},"AioEditorCoreExtension.LineHeight",[1561,22658,22659,22392],{},[1135,22660,19532],{},[19537,22662],{"extension":285},[536,22664,19541],{"id":19541},[5754,22666,22667,22679],{},[5757,22668,22669],{},[5760,22670,22671,22673,22675,22677],{},[5763,22672,19550],{},[5763,22674,19553],{},[5763,22676,19556],{},[5763,22678,19559],{},[5770,22680,22681,22699,22722],{},[5760,22682,22683,22687,22691,22696],{},[5775,22684,22685],{},[548,22686,22198],{},[5775,22688,22689],{},[548,22690,22203],{},[5775,22692,22693],{},[548,22694,22695],{},"['paragraph']",[5775,22697,22698],{},"可調行高之節點型別",[5760,22700,22701,22706,22710,22715],{},[5775,22702,22703],{},[548,22704,22705],{},"heights",[5775,22707,22708],{},[548,22709,22203],{},[5775,22711,22712],{},[548,22713,22714],{},"['1', '1.1', …, '2.0']",[5775,22716,22717,22718,22721],{},"允許值清單；",[548,22719,22720],{},"setLineHeight"," 帶入清單外的值會失敗",[5760,22723,22724,22729,22733,22737],{},[5775,22725,22726],{},[548,22727,22728],{},"defaultLineHeight",[5775,22730,22731],{},[548,22732,3261],{},[5775,22734,22735],{},[548,22736,8639],{},[5775,22738,22739,22740,22743,22744,22747],{},"預設行高；含 ",[548,22741,22742],{},"--"," 時輸出 ",[548,22745,22746],{},"var()","（可接 CSS 變數），空字串則不輸出 style",[536,22749,19585],{"id":19584},[5754,22751,22752,22760],{},[5757,22753,22754],{},[5760,22755,22756,22758],{},[5763,22757,19594],{},[5763,22759,19559],{},[5770,22761,22762,22772],{},[5760,22763,22764,22769],{},[5775,22765,22766],{},[548,22767,22768],{},"setLineHeight(height)",[5775,22770,22771],{},"設定行高（須在 heights 清單內）",[5760,22773,22774,22779],{},[5775,22775,22776],{},[548,22777,22778],{},"unsetLineHeight()",[5775,22780,22781],{},"重設為預設行高",[536,22783,20129],{"id":20129},[539,22785,22787],{"className":574,"code":22786,"language":576,"meta":546,"style":546},"const config: AioEditorConfig = {\n  extensionsConfig: {\n    LineHeight: { heights: ['1', '1.5', '2'], defaultLineHeight: '1.5' }\n  }\n}\n",[548,22788,22789,22803,22811,22867,22871],{"__ignoreMap":546},[551,22790,22791,22793,22795,22797,22799,22801],{"class":553,"line":554},[551,22792,3321],{"class":753},[551,22794,17870],{"class":594},[551,22796,1169],{"class":587},[551,22798,17875],{"class":557},[551,22800,10094],{"class":587},[551,22802,588],{"class":587},[551,22804,22805,22807,22809],{"class":553,"line":591},[551,22806,17927],{"class":738},[551,22808,1169],{"class":587},[551,22810,588],{"class":587},[551,22812,22813,22816,22818,22820,22823,22825,22827,22829,22831,22833,22835,22837,22840,22842,22844,22846,22848,22850,22852,22854,22857,22859,22861,22863,22865],{"class":553,"line":601},[551,22814,22815],{"class":738},"    LineHeight",[551,22817,1169],{"class":587},[551,22819,1273],{"class":587},[551,22821,22822],{"class":738}," heights",[551,22824,1169],{"class":587},[551,22826,9070],{"class":594},[551,22828,1214],{"class":587},[551,22830,1637],{"class":561},[551,22832,1214],{"class":587},[551,22834,3348],{"class":587},[551,22836,674],{"class":587},[551,22838,22839],{"class":561},"1.5",[551,22841,1214],{"class":587},[551,22843,3348],{"class":587},[551,22845,674],{"class":587},[551,22847,13410],{"class":561},[551,22849,1214],{"class":587},[551,22851,3452],{"class":594},[551,22853,3348],{"class":587},[551,22855,22856],{"class":738}," defaultLineHeight",[551,22858,1169],{"class":587},[551,22860,674],{"class":587},[551,22862,22839],{"class":561},[551,22864,1214],{"class":587},[551,22866,18827],{"class":587},[551,22868,22869],{"class":553,"line":609},[551,22870,1232],{"class":587},[551,22872,22873],{"class":553,"line":617},[551,22874,10148],{"class":587},[990,22876,21356],{},{"title":546,"searchDepth":601,"depth":601,"links":22878},[22879,22880,22881],{"id":19541,"depth":591,"text":19541},{"id":19584,"depth":591,"text":19585},{"id":20129,"depth":591,"text":20129},"行高。",{},{"title":285,"description":22882},"NJuj5yJ0hs0Os0kPwrh7c3Xn1ygQ_ojIIo0y8pqL9Xk",{"id":22887,"title":289,"body":22888,"component":18,"description":22994,"extension":1015,"links":19,"meta":22995,"navigation":526,"new":18,"path":290,"seo":22996,"stem":291,"wrapperKind":19,"__hash__":22997},"docs\u002Fdocs\u002Faio-editor\u002F3.extensions\u002F28.font-family.md",{"type":533,"value":22889,"toc":22990},[22890,22900,22918,22920,22922,22956,22958],[705,22891,22892,22893,22896,22897,22899],{},"文字字體（輸出 ",[548,22894,22895],{},"font-family"," style），樣式掛於 ",[697,22898,372],{"href":373}," mark。",[1558,22901,22902,22909],{},[1561,22903,22904,2466,22906],{},[1135,22905,19524],{},[548,22907,22908],{},"AioEditorCoreExtension.FontFamily",[1561,22910,22911,2466,22913,8904,22916,19410],{},[1135,22912,19532],{},[548,22914,22915],{},"@tiptap\u002Fextension-text-style",[548,22917,289],{},[19537,22919],{"extension":289},[536,22921,19541],{"id":19541},[5754,22923,22924,22936],{},[5757,22925,22926],{},[5760,22927,22928,22930,22932,22934],{},[5763,22929,19550],{},[5763,22931,19553],{},[5763,22933,19556],{},[5763,22935,19559],{},[5770,22937,22938],{},[5760,22939,22940,22944,22948,22953],{},[5775,22941,22942],{},[548,22943,22198],{},[5775,22945,22946],{},[548,22947,22203],{},[5775,22949,22950],{},[548,22951,22952],{},"['textStyle']",[5775,22954,22955],{},"樣式套用之目標 mark 型別",[536,22957,19585],{"id":19584},[5754,22959,22960,22968],{},[5757,22961,22962],{},[5760,22963,22964,22966],{},[5763,22965,19594],{},[5763,22967,19559],{},[5770,22969,22970,22980],{},[5760,22971,22972,22977],{},[5775,22973,22974],{},[548,22975,22976],{},"setFontFamily(fontFamily)",[5775,22978,22979],{},"設定字體",[5760,22981,22982,22987],{},[5775,22983,22984],{},[548,22985,22986],{},"unsetFontFamily()",[5775,22988,22989],{},"移除字體設定",{"title":546,"searchDepth":601,"depth":601,"links":22991},[22992,22993],{"id":19541,"depth":591,"text":19541},{"id":19584,"depth":591,"text":19585},"字體。",{},{"title":289,"description":22994},"d8Ez1Vjh7LzHcErR0Z_vK_Y-k0TE8g2wq8-5b39Rs9Q",{"id":22999,"title":293,"body":23000,"component":18,"description":23184,"extension":1015,"links":19,"meta":23185,"navigation":526,"new":18,"path":294,"seo":23186,"stem":295,"wrapperKind":19,"__hash__":23187},"docs\u002Fdocs\u002Faio-editor\u002F3.extensions\u002F29.font-size.md",{"type":533,"value":23001,"toc":23179},[23002,23013,23026,23028,23030,23083,23085,23117,23119,23177],[705,23003,23004,23005,22367,23008,23010,23011,22899],{},"文字字級（輸出 ",[548,23006,23007],{},"font-size",[1135,23009,22370],{},"，樣式掛於 ",[697,23012,372],{"href":373},[1558,23014,23015,23022],{},[1561,23016,23017,2466,23019],{},[1135,23018,19524],{},[548,23020,23021],{},"AioEditorCoreExtension.FontSize",[1561,23023,23024,22392],{},[1135,23025,19532],{},[19537,23027],{"extension":293},[536,23029,19541],{"id":19541},[5754,23031,23032,23044],{},[5757,23033,23034],{},[5760,23035,23036,23038,23040,23042],{},[5763,23037,19550],{},[5763,23039,19553],{},[5763,23041,19556],{},[5763,23043,19559],{},[5770,23045,23046,23062],{},[5760,23047,23048,23052,23056,23060],{},[5775,23049,23050],{},[548,23051,22198],{},[5775,23053,23054],{},[548,23055,22203],{},[5775,23057,23058],{},[548,23059,22952],{},[5775,23061,22955],{},[5760,23063,23064,23069,23073,23077],{},[5775,23065,23066],{},[548,23067,23068],{},"defaultFontSize",[5775,23070,23071],{},[548,23072,3261],{},[5775,23074,23075],{},[548,23076,8639],{},[5775,23078,23079,23082],{},[548,23080,23081],{},"unsetFontSize"," 之回復值；空字串代表直接移除 font-size 樣式",[536,23084,19585],{"id":19584},[5754,23086,23087,23095],{},[5757,23088,23089],{},[5760,23090,23091,23093],{},[5763,23092,19594],{},[5763,23094,19559],{},[5770,23096,23097,23107],{},[5760,23098,23099,23104],{},[5775,23100,23101],{},[548,23102,23103],{},"setFontSize(fontSize)",[5775,23105,23106],{},"設定字級（CSS 值，如 '14px'）",[5760,23108,23109,23114],{},[5775,23110,23111],{},[548,23112,23113],{},"unsetFontSize()",[5775,23115,23116],{},"回復預設字級",[536,23118,20129],{"id":20129},[539,23120,23122],{"className":574,"code":23121,"language":576,"meta":546,"style":546},"const config: AioEditorConfig = {\n  extensionsConfig: {\n    FontSize: { defaultFontSize: '16px' }\n  }\n}\n",[548,23123,23124,23138,23146,23169,23173],{"__ignoreMap":546},[551,23125,23126,23128,23130,23132,23134,23136],{"class":553,"line":554},[551,23127,3321],{"class":753},[551,23129,17870],{"class":594},[551,23131,1169],{"class":587},[551,23133,17875],{"class":557},[551,23135,10094],{"class":587},[551,23137,588],{"class":587},[551,23139,23140,23142,23144],{"class":553,"line":591},[551,23141,17927],{"class":738},[551,23143,1169],{"class":587},[551,23145,588],{"class":587},[551,23147,23148,23151,23153,23155,23158,23160,23162,23165,23167],{"class":553,"line":601},[551,23149,23150],{"class":738},"    FontSize",[551,23152,1169],{"class":587},[551,23154,1273],{"class":587},[551,23156,23157],{"class":738}," defaultFontSize",[551,23159,1169],{"class":587},[551,23161,674],{"class":587},[551,23163,23164],{"class":561},"16px",[551,23166,1214],{"class":587},[551,23168,18827],{"class":587},[551,23170,23171],{"class":553,"line":609},[551,23172,1232],{"class":587},[551,23174,23175],{"class":553,"line":617},[551,23176,10148],{"class":587},[990,23178,21356],{},{"title":546,"searchDepth":601,"depth":601,"links":23180},[23181,23182,23183],{"id":19541,"depth":591,"text":19541},{"id":19584,"depth":591,"text":19585},{"id":20129,"depth":591,"text":20129},"字級。",{},{"title":293,"description":23184},"2-zN9FiBBaLFhji9jFepwUFx7hlKZA0qHTNbn6AZ2L8",{"id":23189,"title":297,"body":23190,"component":18,"description":23328,"extension":1015,"links":19,"meta":23329,"navigation":526,"new":18,"path":298,"seo":23330,"stem":299,"wrapperKind":19,"__hash__":23331},"docs\u002Fdocs\u002Faio-editor\u002F3.extensions\u002F3.italic.md",{"type":533,"value":23191,"toc":23323},[23192,23195,23211,23213,23215,23247,23249,23291,23293,23314],[705,23193,23194],{},"斜體文字標記。",[1558,23196,23197,23204],{},[1561,23198,23199,2466,23201],{},[1135,23200,19524],{},[548,23202,23203],{},"AioEditorCoreExtension.Italic",[1561,23205,23206,2466,23208],{},[1135,23207,19532],{},[548,23209,23210],{},"@tiptap\u002Fextension-italic",[19537,23212],{"extension":297},[536,23214,19541],{"id":19541},[5754,23216,23217,23229],{},[5757,23218,23219],{},[5760,23220,23221,23223,23225,23227],{},[5763,23222,19550],{},[5763,23224,19553],{},[5763,23226,19556],{},[5763,23228,19559],{},[5770,23230,23231],{},[5760,23232,23233,23237,23241,23245],{},[5775,23234,23235],{},[548,23236,19568],{},[5775,23238,23239],{},[548,23240,19573],{},[5775,23242,23243],{},[548,23244,19578],{},[5775,23246,19581],{},[536,23248,19585],{"id":19584},[5754,23250,23251,23259],{},[5757,23252,23253],{},[5760,23254,23255,23257],{},[5763,23256,19594],{},[5763,23258,19559],{},[5770,23260,23261,23271,23281],{},[5760,23262,23263,23268],{},[5775,23264,23265],{},[548,23266,23267],{},"setItalic()",[5775,23269,23270],{},"套用斜體",[5760,23272,23273,23278],{},[5775,23274,23275],{},[548,23276,23277],{},"toggleItalic()",[5775,23279,23280],{},"切換斜體",[5760,23282,23283,23288],{},[5775,23284,23285],{},[548,23286,23287],{},"unsetItalic()",[5775,23289,23290],{},"移除斜體",[536,23292,5765],{"id":5765},[5754,23294,23295,23303],{},[5757,23296,23297],{},[5760,23298,23299,23301],{},[5763,23300,19639],{},[5763,23302,5768],{},[5770,23304,23305],{},[5760,23306,23307,23312],{},[5775,23308,23309],{},[548,23310,23311],{},"Mod-I",[5775,23313,23280],{},[705,23315,21346,23316,4159,23319,23322],{},[548,23317,23318],{},"*文字*",[548,23320,23321],{},"_文字_"," 自動轉為斜體。",{"title":546,"searchDepth":601,"depth":601,"links":23324},[23325,23326,23327],{"id":19541,"depth":591,"text":19541},{"id":19584,"depth":591,"text":19585},{"id":5765,"depth":591,"text":5765},"斜體 mark。",{},{"title":297,"description":23328},"4MdDzj6uBF0iU-9XxUSKYB2Z39kQNL-bgcK0XIXnaJo",{"id":23333,"title":301,"body":23334,"component":18,"description":23497,"extension":1015,"links":19,"meta":23498,"navigation":526,"new":18,"path":302,"seo":23499,"stem":303,"wrapperKind":19,"__hash__":23500},"docs\u002Fdocs\u002Faio-editor\u002F3.extensions\u002F30.undo-redo.md",{"type":533,"value":23335,"toc":23492},[23336,23343,23360,23362,23364,23417,23419,23451,23453],[705,23337,23338,23339,23342],{},"編輯歷史（undo \u002F redo）。即 tiptap v2 之 ",[548,23340,23341],{},"History","，v3 更名。",[1558,23344,23345,23352],{},[1561,23346,23347,2466,23349],{},[1135,23348,19524],{},[548,23350,23351],{},"AioEditorCoreExtension.UndoRedo",[1561,23353,23354,2466,23356,8904,23358,19410],{},[1135,23355,19532],{},[548,23357,19848],{},[548,23359,301],{},[19537,23361],{"extension":301},[536,23363,19541],{"id":19541},[5754,23365,23366,23378],{},[5757,23367,23368],{},[5760,23369,23370,23372,23374,23376],{},[5763,23371,19550],{},[5763,23373,19553],{},[5763,23375,19556],{},[5763,23377,19559],{},[5770,23379,23380,23398],{},[5760,23381,23382,23387,23391,23395],{},[5775,23383,23384],{},[548,23385,23386],{},"depth",[5775,23388,23389],{},[548,23390,3440],{},[5775,23392,23393],{},[548,23394,14375],{},[5775,23396,23397],{},"歷史堆疊深度（可復原步數）",[5760,23399,23400,23405,23409,23414],{},[5775,23401,23402],{},[548,23403,23404],{},"newGroupDelay",[5775,23406,23407],{},[548,23408,3440],{},[5775,23410,23411],{},[548,23412,23413],{},"100",[5775,23415,23416],{},"間隔多少 ms 內的連續輸入合併為同一步",[536,23418,19585],{"id":19584},[5754,23420,23421,23429],{},[5757,23422,23423],{},[5760,23424,23425,23427],{},[5763,23426,19594],{},[5763,23428,19559],{},[5770,23430,23431,23441],{},[5760,23432,23433,23438],{},[5775,23434,23435],{},[548,23436,23437],{},"undo()",[5775,23439,23440],{},"復原",[5760,23442,23443,23448],{},[5775,23444,23445],{},[548,23446,23447],{},"redo()",[5775,23449,23450],{},"重做",[536,23452,5765],{"id":5765},[5754,23454,23455,23463],{},[5757,23456,23457],{},[5760,23458,23459,23461],{},[5763,23460,19639],{},[5763,23462,5768],{},[5770,23464,23465,23474,23483],{},[5760,23466,23467,23472],{},[5775,23468,23469],{},[548,23470,23471],{},"Mod-Z",[5775,23473,23440],{},[5760,23475,23476,23481],{},[5775,23477,23478],{},[548,23479,23480],{},"Mod-Shift-Z",[5775,23482,23450],{},[5760,23484,23485,23490],{},[5775,23486,23487],{},[548,23488,23489],{},"Mod-Y",[5775,23491,23450],{},{"title":546,"searchDepth":601,"depth":601,"links":23493},[23494,23495,23496],{"id":19541,"depth":591,"text":19541},{"id":19584,"depth":591,"text":19585},{"id":5765,"depth":591,"text":5765},"編輯歷史。",{},{"title":301,"description":23497},"eQ0LotwV21arSBhZ_T2k3ktQeaJDG9o0zZPZIvkW-Ks",{"id":23502,"title":305,"body":23503,"component":18,"description":23602,"extension":1015,"links":19,"meta":23603,"navigation":526,"new":18,"path":306,"seo":23604,"stem":307,"wrapperKind":19,"__hash__":23605},"docs\u002Fdocs\u002Faio-editor\u002F3.extensions\u002F31.dropcursor.md",{"type":533,"value":23504,"toc":23599},[23505,23508,23525,23527,23529],[705,23506,23507],{},"拖曳內容時顯示的插入位置指示線。",[1558,23509,23510,23517],{},[1561,23511,23512,2466,23514],{},[1135,23513,19524],{},[548,23515,23516],{},"AioEditorCoreExtension.Dropcursor",[1561,23518,23519,2466,23521,8904,23523,19410],{},[1135,23520,19532],{},[548,23522,19848],{},[548,23524,305],{},[19537,23526],{"extension":305},[536,23528,19541],{"id":19541},[5754,23530,23531,23543],{},[5757,23532,23533],{},[5760,23534,23535,23537,23539,23541],{},[5763,23536,19550],{},[5763,23538,19553],{},[5763,23540,19556],{},[5763,23542,19559],{},[5770,23544,23545,23563,23581],{},[5760,23546,23547,23551,23555,23560],{},[5775,23548,23549],{},[548,23550,2492],{},[5775,23552,23553],{},[548,23554,3261],{},[5775,23556,23557],{},[548,23558,23559],{},"'currentColor'",[5775,23561,23562],{},"指示線顏色",[5760,23564,23565,23570,23574,23578],{},[5775,23566,23567],{},[548,23568,23569],{},"width",[5775,23571,23572],{},[548,23573,3440],{},[5775,23575,23576],{},[548,23577,1637],{},[5775,23579,23580],{},"指示線寬度（px）",[5760,23582,23583,23588,23592,23596],{},[5775,23584,23585],{},[548,23586,23587],{},"class",[5775,23589,23590],{},[548,23591,3261],{},[5775,23593,23594],{},[548,23595,13826],{},[5775,23597,23598],{},"指示線元素之 class",{"title":546,"searchDepth":601,"depth":601,"links":23600},[23601],{"id":19541,"depth":591,"text":19541},"拖放位置指示線。",{},{"title":305,"description":23602},"wOkYi6ROgcVxNAOO64RJNwRj9ykahJHZUhH1eBhYvRc",{"id":23607,"title":309,"body":23608,"component":18,"description":23837,"extension":1015,"links":19,"meta":23838,"navigation":526,"new":18,"path":310,"seo":23839,"stem":311,"wrapperKind":19,"__hash__":23840},"docs\u002Fdocs\u002Faio-editor\u002F3.extensions\u002F32.placeholder.md",{"type":533,"value":23609,"toc":23833},[23610,23613,23630,23632,23634,23762,23764,23821,23831],[705,23611,23612],{},"編輯器（或節點）為空時顯示的提示文字。",[1558,23614,23615,23622],{},[1561,23616,23617,2466,23619],{},[1135,23618,19524],{},[548,23620,23621],{},"AioEditorCoreExtension.Placeholder",[1561,23623,23624,2466,23626,8904,23628,19410],{},[1135,23625,19532],{},[548,23627,19848],{},[548,23629,309],{},[19537,23631],{"extension":309},[536,23633,19541],{"id":19541},[5754,23635,23636,23648],{},[5757,23637,23638],{},[5760,23639,23640,23642,23644,23646],{},[5763,23641,19550],{},[5763,23643,19553],{},[5763,23645,19556],{},[5763,23647,19559],{},[5770,23649,23650,23670,23689,23708,23726,23744],{},[5760,23651,23652,23657,23662,23667],{},[5775,23653,23654],{},[548,23655,23656],{},"placeholder",[5775,23658,23659],{},[548,23660,23661],{},"string 或 (props) => string",[5775,23663,23664],{},[548,23665,23666],{},"'Write something …'",[5775,23668,23669],{},"提示文字；函式形式可依節點回傳不同提示",[5760,23671,23672,23677,23681,23686],{},[5775,23673,23674],{},[548,23675,23676],{},"emptyEditorClass",[5775,23678,23679],{},[548,23680,3261],{},[5775,23682,23683],{},[548,23684,23685],{},"'is-editor-empty'",[5775,23687,23688],{},"整份文件為空時加在首節點之 class",[5760,23690,23691,23696,23700,23705],{},[5775,23692,23693],{},[548,23694,23695],{},"emptyNodeClass",[5775,23697,23698],{},[548,23699,3261],{},[5775,23701,23702],{},[548,23703,23704],{},"'is-empty'",[5775,23706,23707],{},"空節點之 class",[5760,23709,23710,23715,23719,23723],{},[5775,23711,23712],{},[548,23713,23714],{},"showOnlyWhenEditable",[5775,23716,23717],{},[548,23718,20517],{},[5775,23720,23721],{},[548,23722,2742],{},[5775,23724,23725],{},"僅於可編輯狀態顯示",[5760,23727,23728,23733,23737,23741],{},[5775,23729,23730],{},[548,23731,23732],{},"showOnlyCurrent",[5775,23734,23735],{},[548,23736,20517],{},[5775,23738,23739],{},[548,23740,2742],{},[5775,23742,23743],{},"僅於游標所在節點顯示",[5760,23745,23746,23751,23755,23759],{},[5775,23747,23748],{},[548,23749,23750],{},"includeChildren",[5775,23752,23753],{},[548,23754,20517],{},[5775,23756,23757],{},[548,23758,2745],{},[5775,23760,23761],{},"子節點也套用提示",[536,23763,20129],{"id":20129},[539,23765,23767],{"className":574,"code":23766,"language":576,"meta":546,"style":546},"const config: AioEditorConfig = {\n  extensionsConfig: {\n    Placeholder: { placeholder: '輸入內容…' }\n  }\n}\n",[548,23768,23769,23783,23791,23813,23817],{"__ignoreMap":546},[551,23770,23771,23773,23775,23777,23779,23781],{"class":553,"line":554},[551,23772,3321],{"class":753},[551,23774,17870],{"class":594},[551,23776,1169],{"class":587},[551,23778,17875],{"class":557},[551,23780,10094],{"class":587},[551,23782,588],{"class":587},[551,23784,23785,23787,23789],{"class":553,"line":591},[551,23786,17927],{"class":738},[551,23788,1169],{"class":587},[551,23790,588],{"class":587},[551,23792,23793,23796,23798,23800,23802,23804,23806,23809,23811],{"class":553,"line":601},[551,23794,23795],{"class":738},"    Placeholder",[551,23797,1169],{"class":587},[551,23799,1273],{"class":587},[551,23801,4864],{"class":738},[551,23803,1169],{"class":587},[551,23805,674],{"class":587},[551,23807,23808],{"class":561},"輸入內容…",[551,23810,1214],{"class":587},[551,23812,18827],{"class":587},[551,23814,23815],{"class":553,"line":609},[551,23816,1232],{"class":587},[551,23818,23819],{"class":553,"line":617},[551,23820,10148],{"class":587},[705,23822,23823,23824,4973,23827,23830],{},"提示文字經 CSS ",[548,23825,23826],{},"::before",[548,23828,23829],{},"content: attr(data-placeholder)"," 呈現。",[990,23832,21356],{},{"title":546,"searchDepth":601,"depth":601,"links":23834},[23835,23836],{"id":19541,"depth":591,"text":19541},{"id":20129,"depth":591,"text":20129},"空內容提示文字。",{},{"title":309,"description":23837},"l9hkc_5K-XEsW6z_7QkLJ3ZQZ1Yw6cwuvGT0nrF4sqs",{"id":23842,"title":313,"body":23843,"component":18,"description":24043,"extension":1015,"links":19,"meta":24044,"navigation":526,"new":18,"path":314,"seo":24045,"stem":315,"wrapperKind":19,"__hash__":24046},"docs\u002Fdocs\u002Faio-editor\u002F3.extensions\u002F33.character-count.md",{"type":533,"value":23844,"toc":24039},[23845,23855,23872,23874,23876,23975,23977,24028,24037],[705,23846,23847,23848,23850,23851,23854],{},"字數統計與輸入上限，",[1135,23849,20615],{},"：IME composition（注音 \u002F 拼音組字）期間不套用上限裁切，於 ",[548,23852,23853],{},"compositionend"," 才截斷超出內容——避免組字過程被攔腰截斷。初始內容超限時自動裁切並於 console 警告。",[1558,23856,23857,23864],{},[1561,23858,23859,2466,23861],{},[1135,23860,19524],{},[548,23862,23863],{},"AioEditorCoreExtension.CharacterCount",[1561,23865,23866,20637,23868,4973,23870,19410],{},[1135,23867,19532],{},[548,23869,19848],{},[548,23871,313],{},[19537,23873],{"extension":313},[536,23875,19541],{"id":19541},[5754,23877,23878,23890],{},[5757,23879,23880],{},[5760,23881,23882,23884,23886,23888],{},[5763,23883,19550],{},[5763,23885,19553],{},[5763,23887,19556],{},[5763,23889,19559],{},[5770,23891,23892,23916,23936,23956],{},[5760,23893,23894,23899,23904,23908],{},[5775,23895,23896],{},[548,23897,23898],{},"limit",[5775,23900,23901],{},[548,23902,23903],{},"number 或 null",[5775,23905,23906],{},[548,23907,8135],{},[5775,23909,23910,23911,4159,23913,23915],{},"字數上限；",[548,23912,8135],{},[548,23914,22465],{}," 不限制",[5760,23917,23918,23923,23928,23933],{},[5775,23919,23920],{},[548,23921,23922],{},"mode",[5775,23924,23925],{},[548,23926,23927],{},"'textSize' 或 'nodeSize'",[5775,23929,23930],{},[548,23931,23932],{},"'textSize'",[5775,23934,23935],{},"計數模式：純文字字數或文件節點大小",[5760,23937,23938,23943,23948,23953],{},[5775,23939,23940],{},[548,23941,23942],{},"textCounter",[5775,23944,23945],{},[548,23946,23947],{},"(text: string) => number",[5775,23949,23950],{},[548,23951,23952],{},"text.length",[5775,23954,23955],{},"自訂字數計算",[5760,23957,23958,23963,23967,23972],{},[5775,23959,23960],{},[548,23961,23962],{},"wordCounter",[5775,23964,23965],{},[548,23966,23947],{},[5775,23968,23969],{},[548,23970,23971],{},"以空白切詞",[5775,23973,23974],{},"自訂詞數計算",[536,23976,20129],{"id":20129},[539,23978,23980],{"className":574,"code":23979,"language":576,"meta":546,"style":546},"const config: AioEditorConfig = {\n  extensionsConfig: {\n    CharacterCount: { limit: 500 }\n  }\n}\n",[548,23981,23982,23996,24004,24020,24024],{"__ignoreMap":546},[551,23983,23984,23986,23988,23990,23992,23994],{"class":553,"line":554},[551,23985,3321],{"class":753},[551,23987,17870],{"class":594},[551,23989,1169],{"class":587},[551,23991,17875],{"class":557},[551,23993,10094],{"class":587},[551,23995,588],{"class":587},[551,23997,23998,24000,24002],{"class":553,"line":591},[551,23999,17927],{"class":738},[551,24001,1169],{"class":587},[551,24003,588],{"class":587},[551,24005,24006,24008,24010,24012,24014,24016,24018],{"class":553,"line":601},[551,24007,18812],{"class":738},[551,24009,1169],{"class":587},[551,24011,1273],{"class":587},[551,24013,18819],{"class":738},[551,24015,1169],{"class":587},[551,24017,18824],{"class":17275},[551,24019,18827],{"class":587},[551,24021,24022],{"class":553,"line":609},[551,24023,1232],{"class":587},[551,24025,24026],{"class":553,"line":617},[551,24027,10148],{"class":587},[705,24029,24030,24031,1613,24034,713],{},"讀值走 storage：",[548,24032,24033],{},"editor.storage.characterCount.characters()",[548,24035,24036],{},"editor.storage.characterCount.words()",[990,24038,20205],{},{"title":546,"searchDepth":601,"depth":601,"links":24040},[24041,24042],{"id":19541,"depth":591,"text":19541},{"id":20129,"depth":591,"text":20129},"字數統計與上限。",{},{"title":313,"description":24043},"oSq6p0DX86VNMnH0VrqqNzJCGkyEMeKviPSDeD-oO34",{"id":24048,"title":317,"body":24049,"component":18,"description":24195,"extension":1015,"links":19,"meta":24196,"navigation":526,"new":18,"path":318,"seo":24197,"stem":319,"wrapperKind":19,"__hash__":24198},"docs\u002Fdocs\u002Faio-editor\u002F3.extensions\u002F34.keydown-handler.md",{"type":533,"value":24050,"toc":24191},[24051,24057,24070,24072,24074,24110,24112,24188],[705,24052,24053,24054,24056],{},"把編輯器內全部 keydown 事件透傳給 consumer 的 hook，",[1135,24055,22370],{},"——常用於攔截自訂快捷鍵或整合外部行為。不影響既有快捷鍵。",[1558,24058,24059,24066],{},[1561,24060,24061,2466,24063],{},[1135,24062,19524],{},[548,24064,24065],{},"AioEditorCoreExtension.KeydownHandler",[1561,24067,24068,22392],{},[1135,24069,19532],{},[19537,24071],{"extension":317},[536,24073,19541],{"id":19541},[5754,24075,24076,24088],{},[5757,24077,24078],{},[5760,24079,24080,24082,24084,24086],{},[5763,24081,19550],{},[5763,24083,19553],{},[5763,24085,19556],{},[5763,24087,19559],{},[5770,24089,24090],{},[5760,24091,24092,24097,24102,24107],{},[5775,24093,24094],{},[548,24095,24096],{},"eventHandler",[5775,24098,24099],{},[548,24100,24101],{},"(event: KeyboardEvent) => void",[5775,24103,24104],{},[548,24105,24106],{},"() => {}",[5775,24108,24109],{},"每次 keydown 觸發",[536,24111,20129],{"id":20129},[539,24113,24115],{"className":574,"code":24114,"language":576,"meta":546,"style":546},"const config: AioEditorConfig = {\n  extensionsConfig: {\n    KeydownHandler: { eventHandler: (event) => console.log(event.key) }\n  }\n}\n",[548,24116,24117,24131,24139,24180,24184],{"__ignoreMap":546},[551,24118,24119,24121,24123,24125,24127,24129],{"class":553,"line":554},[551,24120,3321],{"class":753},[551,24122,17870],{"class":594},[551,24124,1169],{"class":587},[551,24126,17875],{"class":557},[551,24128,10094],{"class":587},[551,24130,588],{"class":587},[551,24132,24133,24135,24137],{"class":553,"line":591},[551,24134,17927],{"class":738},[551,24136,1169],{"class":587},[551,24138,588],{"class":587},[551,24140,24141,24144,24146,24148,24151,24153,24155,24158,24160,24162,24165,24167,24170,24173,24175,24178],{"class":553,"line":601},[551,24142,24143],{"class":738},"    KeydownHandler",[551,24145,1169],{"class":587},[551,24147,1273],{"class":587},[551,24149,24150],{"class":1154}," eventHandler",[551,24152,1169],{"class":587},[551,24154,1190],{"class":587},[551,24156,24157],{"class":1193},"event",[551,24159,1197],{"class":587},[551,24161,1200],{"class":753},[551,24163,24164],{"class":594}," console",[551,24166,1206],{"class":587},[551,24168,24169],{"class":1154},"log",[551,24171,24172],{"class":594},"(event",[551,24174,1206],{"class":587},[551,24176,24177],{"class":594},"key) ",[551,24179,10148],{"class":587},[551,24181,24182],{"class":553,"line":609},[551,24183,1232],{"class":587},[551,24185,24186],{"class":553,"line":617},[551,24187,10148],{"class":587},[990,24189,24190],{},"html pre.shiki code .spNyl, html code.shiki .spNyl{--shiki-light:#9C3EDA;--shiki-default:#C792EA;--shiki-dark:#C792EA}html pre.shiki code .sTEyZ, html code.shiki .sTEyZ{--shiki-light:#90A4AE;--shiki-default:#EEFFFF;--shiki-dark:#BABED8}html pre.shiki code .sMK4o, html code.shiki .sMK4o{--shiki-light:#39ADB5;--shiki-default:#89DDFF;--shiki-dark:#89DDFF}html pre.shiki code .sBMFI, html code.shiki .sBMFI{--shiki-light:#E2931D;--shiki-default:#FFCB6B;--shiki-dark:#FFCB6B}html pre.shiki code .swJcz, html code.shiki .swJcz{--shiki-light:#E53935;--shiki-default:#F07178;--shiki-dark:#F07178}html pre.shiki code .s2Zo4, html code.shiki .s2Zo4{--shiki-light:#6182B8;--shiki-default:#82AAFF;--shiki-dark:#82AAFF}html pre.shiki code .sHdIc, html code.shiki .sHdIc{--shiki-light:#90A4AE;--shiki-light-font-style:italic;--shiki-default:#EEFFFF;--shiki-default-font-style:italic;--shiki-dark:#BABED8;--shiki-dark-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);}",{"title":546,"searchDepth":601,"depth":601,"links":24192},[24193,24194],{"id":19541,"depth":591,"text":19541},{"id":20129,"depth":591,"text":20129},"鍵盤事件 hook。",{},{"title":317,"description":24195},"A2C4DDjK_9hPiIuLLRrUTXePelHKAVjRrt-XFcT4Cqg",{"id":24200,"title":321,"body":24201,"component":18,"description":24264,"extension":1015,"links":19,"meta":24265,"navigation":526,"new":18,"path":322,"seo":24266,"stem":323,"wrapperKind":19,"__hash__":24267},"docs\u002Fdocs\u002Faio-editor\u002F3.extensions\u002F35.auto-joiner.md",{"type":533,"value":24202,"toc":24261},[24203,24206,24222,24224,24226],[705,24204,24205],{},"相鄰的同型清單自動合併為一個——例如 drag handle 把清單項拖到另一個清單旁時。",[1558,24207,24208,24215],{},[1561,24209,24210,2466,24212],{},[1135,24211,19524],{},[548,24213,24214],{},"AioEditorCoreExtension.AutoJoiner",[1561,24216,24217,2466,24219],{},[1135,24218,19532],{},[548,24220,24221],{},"tiptap-extension-auto-joiner",[19537,24223],{"extension":321},[536,24225,19541],{"id":19541},[5754,24227,24228,24240],{},[5757,24229,24230],{},[5760,24231,24232,24234,24236,24238],{},[5763,24233,19550],{},[5763,24235,19553],{},[5763,24237,19556],{},[5763,24239,19559],{},[5770,24241,24242],{},[5760,24243,24244,24249,24253,24258],{},[5775,24245,24246],{},[548,24247,24248],{},"elementsToJoin",[5775,24250,24251],{},[548,24252,22203],{},[5775,24254,24255],{},[548,24256,24257],{},"['bulletList', 'orderedList', 'taskList']",[5775,24259,24260],{},"會自動合併之節點型別",{"title":546,"searchDepth":601,"depth":601,"links":24262},[24263],{"id":19541,"depth":591,"text":19541},"相鄰清單自動合併。",{},{"title":321,"description":24264},"9pIAMVeI2Yorl11cKrqys3E9G5Z7CnYFX_ULtP9V9Fk",{"id":24269,"title":325,"body":24270,"component":18,"description":24335,"extension":1015,"links":19,"meta":24336,"navigation":526,"new":18,"path":326,"seo":24337,"stem":327,"wrapperKind":19,"__hash__":24338},"docs\u002Fdocs\u002Faio-editor\u002F3.extensions\u002F36.copy-data.md",{"type":533,"value":24271,"toc":24332},[24272,24282,24295,24297,24299],[705,24273,24274,24275,24278,24279,24281],{},"解析來源 HTML 時保留節點上的 ",[548,24276,24277],{},"data-copy"," 屬性，",[1135,24280,22370],{},"——供貼上內容之來源追溯。",[1558,24283,24284,24291],{},[1561,24285,24286,2466,24288],{},[1135,24287,19524],{},[548,24289,24290],{},"AioEditorCoreExtension.CopyData",[1561,24292,24293,22392],{},[1135,24294,19532],{},[19537,24296],{"extension":325},[536,24298,19541],{"id":19541},[5754,24300,24301,24313],{},[5757,24302,24303],{},[5760,24304,24305,24307,24309,24311],{},[5763,24306,19550],{},[5763,24308,19553],{},[5763,24310,19556],{},[5763,24312,19559],{},[5770,24314,24315],{},[5760,24316,24317,24321,24325,24329],{},[5775,24318,24319],{},[548,24320,22198],{},[5775,24322,24323],{},[548,24324,22203],{},[5775,24326,24327],{},[548,24328,22695],{},[5775,24330,24331],{},"保留屬性之節點型別",{"title":546,"searchDepth":601,"depth":601,"links":24333},[24334],{"id":19541,"depth":591,"text":19541},"data-copy 屬性保留。",{},{"title":325,"description":24335},"AiOIH6M-HlNZs16g0n7z81z31a0V9-CvAg6LXT33AUs",{"id":24340,"title":329,"body":24341,"component":18,"description":24684,"extension":1015,"links":19,"meta":24685,"navigation":526,"new":18,"path":330,"seo":24686,"stem":331,"wrapperKind":19,"__hash__":24687},"docs\u002Fdocs\u002Faio-editor\u002F3.extensions\u002F37.link.md",{"type":533,"value":24342,"toc":24679},[24343,24353,24369,24371,24373,24555,24557,24599,24601,24677],[705,24344,24345,24346,24348,24349,24352],{},"超連結標記（",[548,24347,697],{}," 元素）。游標位於連結內時會出現 ",[697,24350,24351],{"href":357},"LinkTips bubble","（開啟 \u002F 編輯 \u002F 移除）。",[1558,24354,24355,24362],{},[1561,24356,24357,2466,24359],{},[1135,24358,19524],{},[548,24360,24361],{},"AioEditorCoreExtension.Link",[1561,24363,24364,2466,24366],{},[1135,24365,19532],{},[548,24367,24368],{},"@tiptap\u002Fextension-link",[19537,24370],{"extension":329},[536,24372,19541],{"id":19541},[5754,24374,24375,24387],{},[5757,24376,24377],{},[5760,24378,24379,24381,24383,24385],{},[5763,24380,19550],{},[5763,24382,19553],{},[5763,24384,19556],{},[5763,24386,19559],{},[5770,24388,24389,24407,24425,24443,24463,24482,24499,24518,24537],{},[5760,24390,24391,24396,24400,24404],{},[5775,24392,24393],{},[548,24394,24395],{},"openOnClick",[5775,24397,24398],{},[548,24399,20517],{},[5775,24401,24402],{},[548,24403,2745],{},[5775,24405,24406],{},"編輯中點擊連結即開啟",[5760,24408,24409,24414,24418,24422],{},[5775,24410,24411],{},[548,24412,24413],{},"linkOnPaste",[5775,24415,24416],{},[548,24417,20517],{},[5775,24419,24420],{},[548,24421,2742],{},[5775,24423,24424],{},"選取文字時貼上 URL 自動成連結",[5760,24426,24427,24432,24436,24440],{},[5775,24428,24429],{},[548,24430,24431],{},"autolink",[5775,24433,24434],{},[548,24435,20517],{},[5775,24437,24438],{},[548,24439,2742],{},[5775,24441,24442],{},"輸入 URL 自動轉為連結",[5760,24444,24445,24450,24455,24460],{},[5775,24446,24447],{},[548,24448,24449],{},"protocols",[5775,24451,24452],{},[548,24453,24454],{},"(string 或 { scheme, optionalSlashes })[]",[5775,24456,24457],{},[548,24458,24459],{},"[]",[5775,24461,24462],{},"額外允許之協定",[5760,24464,24465,24470,24474,24479],{},[5775,24466,24467],{},[548,24468,24469],{},"defaultProtocol",[5775,24471,24472],{},[548,24473,3261],{},[5775,24475,24476],{},[548,24477,24478],{},"'http'",[5775,24480,24481],{},"autolink 之預設協定",[5760,24483,24484,24488,24492,24497],{},[5775,24485,24486],{},[548,24487,19568],{},[5775,24489,24490],{},[548,24491,19573],{},[5775,24493,24494],{},[548,24495,24496],{},"{ target: '_blank', rel: 'noopener noreferrer nofollow', class: null }",[5775,24498,19581],{},[5760,24500,24501,24505,24510,24515],{},[5775,24502,24503],{},[548,24504,18411],{},[5775,24506,24507],{},[548,24508,24509],{},"(url, ctx) => boolean",[5775,24511,24512],{},[548,24513,24514],{},"依 protocols 驗證",[5775,24516,24517],{},"URL 白名單驗證",[5760,24519,24520,24524,24529,24534],{},[5775,24521,24522],{},[548,24523,7373],{},[5775,24525,24526],{},[548,24527,24528],{},"(url) => boolean",[5775,24530,24531],{},[548,24532,24533],{},"非空即通過",[5775,24535,24536],{},"autolink 前之驗證",[5760,24538,24539,24544,24548,24552],{},[5775,24540,24541],{},[548,24542,24543],{},"shouldAutoLink",[5775,24545,24546],{},[548,24547,24528],{},[5775,24549,24550],{},[548,24551,24533],{},[5775,24553,24554],{},"已通過驗證後是否自動成連結",[536,24556,19585],{"id":19584},[5754,24558,24559,24567],{},[5757,24560,24561],{},[5760,24562,24563,24565],{},[5763,24564,19594],{},[5763,24566,19559],{},[5770,24568,24569,24579,24589],{},[5760,24570,24571,24576],{},[5775,24572,24573],{},[548,24574,24575],{},"setLink({ href, target? })",[5775,24577,24578],{},"套用連結",[5760,24580,24581,24586],{},[5775,24582,24583],{},[548,24584,24585],{},"toggleLink({ href })",[5775,24587,24588],{},"切換連結",[5760,24590,24591,24596],{},[5775,24592,24593],{},[548,24594,24595],{},"unsetLink()",[5775,24597,24598],{},"移除連結",[536,24600,20129],{"id":20129},[539,24602,24604],{"className":574,"code":24603,"language":576,"meta":546,"style":546},"const config: AioEditorConfig = {\n  extensionsConfig: {\n    Link: { HTMLAttributes: { target: '_self', rel: null } }\n  }\n}\n",[548,24605,24606,24620,24628,24669,24673],{"__ignoreMap":546},[551,24607,24608,24610,24612,24614,24616,24618],{"class":553,"line":554},[551,24609,3321],{"class":753},[551,24611,17870],{"class":594},[551,24613,1169],{"class":587},[551,24615,17875],{"class":557},[551,24617,10094],{"class":587},[551,24619,588],{"class":587},[551,24621,24622,24624,24626],{"class":553,"line":591},[551,24623,17927],{"class":738},[551,24625,1169],{"class":587},[551,24627,588],{"class":587},[551,24629,24630,24633,24635,24637,24639,24641,24643,24646,24648,24650,24653,24655,24657,24660,24662,24665,24667],{"class":553,"line":601},[551,24631,24632],{"class":738},"    Link",[551,24634,1169],{"class":587},[551,24636,1273],{"class":587},[551,24638,21316],{"class":738},[551,24640,1169],{"class":587},[551,24642,1273],{"class":587},[551,24644,24645],{"class":738}," target",[551,24647,1169],{"class":587},[551,24649,674],{"class":587},[551,24651,24652],{"class":561},"_self",[551,24654,1214],{"class":587},[551,24656,3348],{"class":587},[551,24658,24659],{"class":738}," rel",[551,24661,1169],{"class":587},[551,24663,24664],{"class":587}," null",[551,24666,1279],{"class":587},[551,24668,18827],{"class":587},[551,24670,24671],{"class":553,"line":609},[551,24672,1232],{"class":587},[551,24674,24675],{"class":553,"line":617},[551,24676,10148],{"class":587},[990,24678,21356],{},{"title":546,"searchDepth":601,"depth":601,"links":24680},[24681,24682,24683],{"id":19541,"depth":591,"text":19541},{"id":19584,"depth":591,"text":19585},{"id":20129,"depth":591,"text":20129},"超連結 mark。",{},{"title":329,"description":24684},"iP-6r1xISKoFMQFg4Wb7382__1Kc4Iv4UjHmQFMTP8I",{"id":24689,"title":77,"body":24690,"component":18,"description":25057,"extension":1015,"links":19,"meta":25058,"navigation":526,"new":18,"path":333,"seo":25059,"stem":334,"wrapperKind":19,"__hash__":25060},"docs\u002Fdocs\u002Faio-editor\u002F3.extensions\u002F38.image.md",{"type":533,"value":24691,"toc":25052},[24692,24707,24723,24725,24727,24860,24862,24899,24901,25032,25049],[705,24693,24694,24695,24697,24698,1123,24700,24703,24704,713],{},"圖片節點，",[1135,24696,20615],{},"：node view 帶八向 resize 把手（拖曳後回寫 ",[548,24699,23569],{},[548,24701,24702],{},"height"," 屬性）；貼上 \u002F 拖放圖檔會觸發上傳 hook；貼上 Excel \u002F Word 內容時跳過圖片攔截，交由表格 \u002F 文字流程。圖片被選取時會出現 ",[697,24705,24706],{"href":357},"Image bubble",[1558,24708,24709,24716],{},[1561,24710,24711,2466,24713],{},[1135,24712,19524],{},[548,24714,24715],{},"AioEditorCoreExtension.Image",[1561,24717,24718,20637,24720,19410],{},[1135,24719,19532],{},[548,24721,24722],{},"@tiptap\u002Fextension-image",[19537,24724],{"extension":77},[536,24726,19541],{"id":19541},[5754,24728,24729,24741],{},[5757,24730,24731],{},[5760,24732,24733,24735,24737,24739],{},[5763,24734,19550],{},[5763,24736,19553],{},[5763,24738,19556],{},[5763,24740,19559],{},[5770,24742,24743,24761,24779,24795,24819,24842],{},[5760,24744,24745,24750,24754,24758],{},[5775,24746,24747],{},[548,24748,24749],{},"inline",[5775,24751,24752],{},[548,24753,20517],{},[5775,24755,24756],{},[548,24757,2745],{},[5775,24759,24760],{},"行內圖片或區塊圖片",[5760,24762,24763,24768,24772,24776],{},[5775,24764,24765],{},[548,24766,24767],{},"allowBase64",[5775,24769,24770],{},[548,24771,20517],{},[5775,24773,24774],{},[548,24775,2745],{},[5775,24777,24778],{},"允許 base64 圖片來源",[5760,24780,24781,24785,24789,24793],{},[5775,24782,24783],{},[548,24784,19568],{},[5775,24786,24787],{},[548,24788,19573],{},[5775,24790,24791],{},[548,24792,19578],{},[5775,24794,19581],{},[5760,24796,24797,24802,24807,24812],{},[5775,24798,24799],{},[548,24800,24801],{},"pasteAndDropHandle",[5775,24803,24804],{},[548,24805,24806],{},"(options: PasteAndDropImageOptions) => void",[5775,24808,24809],{},[548,24810,24811],{},"console 提示未實作",[5775,24813,24814,24815,24818],{},"貼上 \u002F 拖放圖檔時觸發：consumer 上傳後呼叫 ",[548,24816,24817],{},"options.afterImageUpload(imageInfo)"," 插入圖片",[5760,24820,24821,24826,24831,24835],{},[5775,24822,24823],{},[548,24824,24825],{},"clickHandle",[5775,24827,24828],{},[548,24829,24830],{},"(options: ClickImageOptions) => void",[5775,24832,24833],{},[548,24834,24811],{},[5775,24836,24837,24838,24841],{},"點擊圖片時觸發（",[548,24839,24840],{},"{ src, alt }","），常用於開燈箱",[5760,24843,24844,24849,24853,24857],{},[5775,24845,24846],{},[548,24847,24848],{},"keepRatioWhenResize",[5775,24850,24851],{},[548,24852,20517],{},[5775,24854,24855],{},[548,24856,2745],{},[5775,24858,24859],{},"拖曳把手時鎖定長寬比",[536,24861,19585],{"id":19584},[5754,24863,24864,24872],{},[5757,24865,24866],{},[5760,24867,24868,24870],{},[5763,24869,19594],{},[5763,24871,19559],{},[5770,24873,24874],{},[5760,24875,24876,24881],{},[5775,24877,24878],{},[548,24879,24880],{},"setExtendImage(options)",[5775,24882,24883,24884,24886,24887,1123,24890,1123,24892,1123,24894,1123,24896,19410],{},"插入圖片（",[548,24885,1409],{}," 必填，可帶 ",[548,24888,24889],{},"alt",[548,24891,16677],{},[548,24893,23569],{},[548,24895,24702],{},[548,24897,24898],{},"htmlData",[536,24900,20129],{"id":20129},[539,24902,24904],{"className":574,"code":24903,"language":576,"meta":546,"style":546},"const config: AioEditorConfig = {\n  extensionsConfig: {\n    Image: {\n      pasteAndDropHandle: async ({ files, afterImageUpload }) => {\n        const url = await uploadToServer(files[0]!)\n        afterImageUpload({ src: url })\n      }\n    }\n  }\n}\n",[548,24905,24906,24920,24928,24937,24965,24997,25016,25020,25024,25028],{"__ignoreMap":546},[551,24907,24908,24910,24912,24914,24916,24918],{"class":553,"line":554},[551,24909,3321],{"class":753},[551,24911,17870],{"class":594},[551,24913,1169],{"class":587},[551,24915,17875],{"class":557},[551,24917,10094],{"class":587},[551,24919,588],{"class":587},[551,24921,24922,24924,24926],{"class":553,"line":591},[551,24923,17927],{"class":738},[551,24925,1169],{"class":587},[551,24927,588],{"class":587},[551,24929,24930,24933,24935],{"class":553,"line":601},[551,24931,24932],{"class":738},"    Image",[551,24934,1169],{"class":587},[551,24936,588],{"class":587},[551,24938,24939,24942,24944,24947,24950,24953,24955,24958,24961,24963],{"class":553,"line":609},[551,24940,24941],{"class":1154},"      pasteAndDropHandle",[551,24943,1169],{"class":587},[551,24945,24946],{"class":753}," async",[551,24948,24949],{"class":587}," ({",[551,24951,24952],{"class":1193}," files",[551,24954,3348],{"class":587},[551,24956,24957],{"class":1193}," afterImageUpload",[551,24959,24960],{"class":587}," })",[551,24962,1200],{"class":753},[551,24964,588],{"class":587},[551,24966,24967,24970,24973,24975,24977,24980,24982,24985,24988,24990,24992,24995],{"class":553,"line":617},[551,24968,24969],{"class":753},"        const",[551,24971,24972],{"class":594}," url",[551,24974,10094],{"class":587},[551,24976,10097],{"class":583},[551,24978,24979],{"class":1154}," uploadToServer",[551,24981,1158],{"class":738},[551,24983,24984],{"class":594},"files",[551,24986,24987],{"class":738},"[",[551,24989,22465],{"class":17275},[551,24991,3452],{"class":738},[551,24993,24994],{"class":587},"!",[551,24996,1222],{"class":738},[551,24998,24999,25002,25004,25006,25008,25010,25012,25014],{"class":553,"line":625},[551,25000,25001],{"class":1154},"        afterImageUpload",[551,25003,1158],{"class":738},[551,25005,4243],{"class":587},[551,25007,1792],{"class":738},[551,25009,1169],{"class":587},[551,25011,24972],{"class":594},[551,25013,1279],{"class":587},[551,25015,1222],{"class":738},[551,25017,25018],{"class":553,"line":633},[551,25019,1383],{"class":587},[551,25021,25022],{"class":553,"line":641},[551,25023,1227],{"class":587},[551,25025,25026],{"class":553,"line":649},[551,25027,1232],{"class":587},[551,25029,25030],{"class":553,"line":657},[551,25031,10148],{"class":587},[705,25033,25034,25035,1123,25037,25039,25040,8904,25042,25045,25046,713],{},"額外節點屬性：",[548,25036,23569],{},[548,25038,24702],{},"（resize 回寫）、",[548,25041,24898],{},[548,25043,25044],{},"data-*"," 屬性透傳，解析與輸出自動轉 kebab-case）。輸入規則：",[548,25047,25048],{},"![alt](src \"title\")",[990,25050,25051],{},"html pre.shiki code .spNyl, html code.shiki .spNyl{--shiki-light:#9C3EDA;--shiki-default:#C792EA;--shiki-dark:#C792EA}html pre.shiki code .sTEyZ, html code.shiki .sTEyZ{--shiki-light:#90A4AE;--shiki-default:#EEFFFF;--shiki-dark:#BABED8}html pre.shiki code .sMK4o, html code.shiki .sMK4o{--shiki-light:#39ADB5;--shiki-default:#89DDFF;--shiki-dark:#89DDFF}html pre.shiki code .sBMFI, html code.shiki .sBMFI{--shiki-light:#E2931D;--shiki-default:#FFCB6B;--shiki-dark:#FFCB6B}html pre.shiki code .swJcz, html code.shiki .swJcz{--shiki-light:#E53935;--shiki-default:#F07178;--shiki-dark:#F07178}html pre.shiki code .s2Zo4, html code.shiki .s2Zo4{--shiki-light:#6182B8;--shiki-default:#82AAFF;--shiki-dark:#82AAFF}html pre.shiki code .sHdIc, html code.shiki .sHdIc{--shiki-light:#90A4AE;--shiki-light-font-style:italic;--shiki-default:#EEFFFF;--shiki-default-font-style:italic;--shiki-dark:#BABED8;--shiki-dark-font-style:italic}html pre.shiki code .s7zQu, html code.shiki .s7zQu{--shiki-light:#39ADB5;--shiki-light-font-style:italic;--shiki-default:#89DDFF;--shiki-default-font-style:italic;--shiki-dark:#89DDFF;--shiki-dark-font-style:italic}html pre.shiki code .sbssI, html code.shiki .sbssI{--shiki-light:#F76D47;--shiki-default:#F78C6C;--shiki-dark:#F78C6C}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);}",{"title":546,"searchDepth":601,"depth":601,"links":25053},[25054,25055,25056],{"id":19541,"depth":591,"text":19541},{"id":19584,"depth":591,"text":19585},{"id":20129,"depth":591,"text":20129},"圖片節點（可拖曳縮放）。",{},{"title":77,"description":25057},"MJPLTBNYYMilq2PRR8sflXfBeqnqq6bUDqIF1vXf620",{"id":25062,"title":336,"body":25063,"component":18,"description":25210,"extension":1015,"links":19,"meta":25211,"navigation":526,"new":18,"path":337,"seo":25212,"stem":338,"wrapperKind":19,"__hash__":25213},"docs\u002Fdocs\u002Faio-editor\u002F3.extensions\u002F39.video.md",{"type":533,"value":25064,"toc":25206},[25065,25078,25091,25093,25095,25149,25151,25191],[705,25066,25067,25068,25071,25072,2721,25075,25077],{},"影片節點（",[548,25069,25070],{},"video"," 元素，強制 ",[548,25073,25074],{},"controls",[1135,25076,22370],{},"。貼上 \u002F 拖放影片檔會觸發上傳 hook。",[1558,25079,25080,25087],{},[1561,25081,25082,2466,25084],{},[1135,25083,19524],{},[548,25085,25086],{},"AioEditorCoreExtension.Video",[1561,25088,25089,22392],{},[1135,25090,19532],{},[19537,25092],{"extension":336},[536,25094,19541],{"id":19541},[5754,25096,25097,25109],{},[5757,25098,25099],{},[5760,25100,25101,25103,25105,25107],{},[5763,25102,19550],{},[5763,25104,19553],{},[5763,25106,19556],{},[5763,25108,19559],{},[5770,25110,25111,25127],{},[5760,25112,25113,25117,25121,25125],{},[5775,25114,25115],{},[548,25116,19568],{},[5775,25118,25119],{},[548,25120,19573],{},[5775,25122,25123],{},[548,25124,19578],{},[5775,25126,19581],{},[5760,25128,25129,25133,25138,25142],{},[5775,25130,25131],{},[548,25132,24801],{},[5775,25134,25135],{},[548,25136,25137],{},"(options: PasteAndDropVideoOptions) => void",[5775,25139,25140],{},[548,25141,24811],{},[5775,25143,25144,25145,25148],{},"貼上 \u002F 拖放影片檔時觸發：consumer 上傳後呼叫 ",[548,25146,25147],{},"options.afterVideoUpload(options)"," 插入影片",[536,25150,19585],{"id":19584},[5754,25152,25153,25161],{},[5757,25154,25155],{},[5760,25156,25157,25159],{},[5763,25158,19594],{},[5763,25160,19559],{},[5770,25162,25163,25181],{},[5760,25164,25165,25170],{},[5775,25166,25167],{},[548,25168,25169],{},"setAioVideo(options)",[5775,25171,25172,25173,24886,25175,1123,25177,1123,25179,19410],{},"插入影片（",[548,25174,1409],{},[548,25176,23569],{},[548,25178,24702],{},[548,25180,24898],{},[5760,25182,25183,25188],{},[5775,25184,25185],{},[548,25186,25187],{},"toggleAioVideo()",[5775,25189,25190],{},"影片節點與段落間切換",[705,25192,25193,25194,25197,25198,25201,25202,25205],{},"command 命名為 ",[548,25195,25196],{},"setAioVideo"," 而非 ",[548,25199,25200],{},"setVideo","：editor-* 系列已宣告 ",[548,25203,25204],{},"Commands['video']"," 且形狀不同，同名會產生 TS declaration merge 衝突。",{"title":546,"searchDepth":601,"depth":601,"links":25207},[25208,25209],{"id":19541,"depth":591,"text":19541},{"id":19584,"depth":591,"text":19585},"影片節點。",{},{"title":336,"description":25210},"AjA53FXkYMBY7m603HsbhbQWs94ZHSos5V8KCV-P51U",{"id":25215,"title":340,"body":25216,"component":18,"description":25351,"extension":1015,"links":19,"meta":25352,"navigation":526,"new":18,"path":341,"seo":25353,"stem":342,"wrapperKind":19,"__hash__":25354},"docs\u002Fdocs\u002Faio-editor\u002F3.extensions\u002F4.strike.md",{"type":533,"value":25217,"toc":25346},[25218,25221,25237,25239,25241,25273,25275,25317,25319,25340],[705,25219,25220],{},"刪除線文字標記。",[1558,25222,25223,25230],{},[1561,25224,25225,2466,25227],{},[1135,25226,19524],{},[548,25228,25229],{},"AioEditorCoreExtension.Strike",[1561,25231,25232,2466,25234],{},[1135,25233,19532],{},[548,25235,25236],{},"@tiptap\u002Fextension-strike",[19537,25238],{"extension":340},[536,25240,19541],{"id":19541},[5754,25242,25243,25255],{},[5757,25244,25245],{},[5760,25246,25247,25249,25251,25253],{},[5763,25248,19550],{},[5763,25250,19553],{},[5763,25252,19556],{},[5763,25254,19559],{},[5770,25256,25257],{},[5760,25258,25259,25263,25267,25271],{},[5775,25260,25261],{},[548,25262,19568],{},[5775,25264,25265],{},[548,25266,19573],{},[5775,25268,25269],{},[548,25270,19578],{},[5775,25272,19581],{},[536,25274,19585],{"id":19584},[5754,25276,25277,25285],{},[5757,25278,25279],{},[5760,25280,25281,25283],{},[5763,25282,19594],{},[5763,25284,19559],{},[5770,25286,25287,25297,25307],{},[5760,25288,25289,25294],{},[5775,25290,25291],{},[548,25292,25293],{},"setStrike()",[5775,25295,25296],{},"套用刪除線",[5760,25298,25299,25304],{},[5775,25300,25301],{},[548,25302,25303],{},"toggleStrike()",[5775,25305,25306],{},"切換刪除線",[5760,25308,25309,25314],{},[5775,25310,25311],{},[548,25312,25313],{},"unsetStrike()",[5775,25315,25316],{},"移除刪除線",[536,25318,5765],{"id":5765},[5754,25320,25321,25329],{},[5757,25322,25323],{},[5760,25324,25325,25327],{},[5763,25326,19639],{},[5763,25328,5768],{},[5770,25330,25331],{},[5760,25332,25333,25338],{},[5775,25334,25335],{},[548,25336,25337],{},"Mod-Shift-S",[5775,25339,25306],{},[705,25341,21346,25342,25345],{},[548,25343,25344],{},"~~文字~~"," 自動轉為刪除線。",{"title":546,"searchDepth":601,"depth":601,"links":25347},[25348,25349,25350],{"id":19541,"depth":591,"text":19541},{"id":19584,"depth":591,"text":19585},{"id":5765,"depth":591,"text":5765},"刪除線 mark。",{},{"title":340,"description":25351},"YIQzkUmO6uu_pYlq33_zZCkSsaZ-9bJ2IPeclN6njoM",{"id":25356,"title":344,"body":25357,"component":18,"description":25687,"extension":1015,"links":19,"meta":25688,"navigation":526,"new":18,"path":345,"seo":25689,"stem":346,"wrapperKind":19,"__hash__":25690},"docs\u002Fdocs\u002Faio-editor\u002F3.extensions\u002F40.table-kit.md",{"type":533,"value":25358,"toc":25683},[25359,25368,25386,25388,25390,25585,25587,25673],[705,25360,25361,25362,25364,25365,713],{},"表格族（table \u002F row \u002F cell \u002F header）一次註冊。",[1135,25363,20615],{},"：cell \u002F header 帶 grip decoration——hover 表格首欄 \u002F 首列會出現把手，點擊即整列 \u002F 整欄選取，並觸發 ",[697,25366,25367],{"href":357},"TableRow \u002F TableColumn bubble",[1558,25369,25370,25377],{},[1561,25371,25372,2466,25374],{},[1135,25373,19524],{},[548,25375,25376],{},"AioEditorCoreExtension.TableKit",[1561,25378,25379,20637,25381,4973,25384,19410],{},[1135,25380,19532],{},[548,25382,25383],{},"@tiptap\u002Fextension-table",[548,25385,344],{},[19537,25387],{"extension":344},[536,25389,19541],{"id":19541},[5754,25391,25392,25404],{},[5757,25393,25394],{},[5760,25395,25396,25398,25400,25402],{},[5763,25397,19550],{},[5763,25399,19553],{},[5763,25401,19556],{},[5763,25403,19559],{},[5770,25405,25406,25424,25443,25462,25480,25498,25520,25543,25564],{},[5760,25407,25408,25413,25417,25421],{},[5775,25409,25410],{},[548,25411,25412],{},"table.resizable",[5775,25414,25415],{},[548,25416,20517],{},[5775,25418,25419],{},[548,25420,2742],{},[5775,25422,25423],{},"欄寬可拖曳調整",[5760,25425,25426,25431,25435,25440],{},[5775,25427,25428],{},[548,25429,25430],{},"table.handleWidth",[5775,25432,25433],{},[548,25434,3440],{},[5775,25436,25437],{},[548,25438,25439],{},"5",[5775,25441,25442],{},"欄寬拖曳把手寬度（px）",[5760,25444,25445,25450,25454,25459],{},[5775,25446,25447],{},[548,25448,25449],{},"table.cellMinWidth",[5775,25451,25452],{},[548,25453,3440],{},[5775,25455,25456],{},[548,25457,25458],{},"25",[5775,25460,25461],{},"儲存格最小寬度（px）",[5760,25463,25464,25469,25473,25477],{},[5775,25465,25466],{},[548,25467,25468],{},"table.lastColumnResizable",[5775,25470,25471],{},[548,25472,20517],{},[5775,25474,25475],{},[548,25476,2742],{},[5775,25478,25479],{},"最後一欄可調寬",[5760,25481,25482,25487,25491,25495],{},[5775,25483,25484],{},[548,25485,25486],{},"table.allowTableNodeSelection",[5775,25488,25489],{},[548,25490,20517],{},[5775,25492,25493],{},[548,25494,2742],{},[5775,25496,25497],{},"允許選取整個表格節點",[5760,25499,25500,25505,25509,25513],{},[5775,25501,25502],{},[548,25503,25504],{},"table.HTMLAttributes",[5775,25506,25507],{},[548,25508,19573],{},[5775,25510,25511],{},[548,25512,19578],{},[5775,25514,25515,25516,25519],{},"表格之 HTML 屬性（",[548,25517,25518],{},"resizable: true"," 時編輯中會失效）",[5760,25521,25522,25527,25532,25537],{},[5775,25523,25524],{},[548,25525,25526],{},"tableRow",[5775,25528,25529],{},[548,25530,25531],{},"Partial\u003CTableRowOptions> 或 false",[5775,25533,25534],{},[548,25535,25536],{},"{ HTMLAttributes: {} }",[5775,25538,25539,25540,25542],{},"列設定；",[548,25541,2745],{}," 停用",[5760,25544,25545,25550,25555,25559],{},[5775,25546,25547],{},[548,25548,25549],{},"tableCell",[5775,25551,25552],{},[548,25553,25554],{},"Partial\u003CTableCellOptions> 或 false",[5775,25556,25557],{},[548,25558,25536],{},[5775,25560,25561,25562,25542],{},"儲存格設定；",[548,25563,2745],{},[5760,25565,25566,25571,25576,25580],{},[5775,25567,25568],{},[548,25569,25570],{},"tableHeader",[5775,25572,25573],{},[548,25574,25575],{},"Partial\u003CTableHeaderOptions> 或 false",[5775,25577,25578],{},[548,25579,25536],{},[5775,25581,25582,25583,25542],{},"標題儲存格設定；",[548,25584,2745],{},[536,25586,19585],{"id":19584},[5754,25588,25589,25597],{},[5757,25590,25591],{},[5760,25592,25593,25595],{},[5763,25594,19594],{},[5763,25596,19559],{},[5770,25598,25599,25609,25619,25629,25639,25649,25663],{},[5760,25600,25601,25606],{},[5775,25602,25603],{},[548,25604,25605],{},"insertTable({ rows, cols, withHeaderRow })",[5775,25607,25608],{},"插入表格",[5760,25610,25611,25616],{},[5775,25612,25613],{},[548,25614,25615],{},"addRowBefore() \u002F addRowAfter() \u002F deleteRow()",[5775,25617,25618],{},"列操作",[5760,25620,25621,25626],{},[5775,25622,25623],{},[548,25624,25625],{},"addColumnBefore() \u002F addColumnAfter() \u002F deleteColumn()",[5775,25627,25628],{},"欄操作",[5760,25630,25631,25636],{},[5775,25632,25633],{},[548,25634,25635],{},"mergeCells() \u002F splitCell() \u002F mergeOrSplit()",[5775,25637,25638],{},"合併 \u002F 拆分儲存格",[5760,25640,25641,25646],{},[5775,25642,25643],{},[548,25644,25645],{},"toggleHeaderRow() \u002F toggleHeaderColumn() \u002F toggleHeaderCell()",[5775,25647,25648],{},"標題列 \u002F 欄 \u002F 儲存格切換",[5760,25650,25651,25656],{},[5775,25652,25653],{},[548,25654,25655],{},"setCellAttribute(name, value)",[5775,25657,25658,25659,25662],{},"設定儲存格屬性（如 ",[548,25660,25661],{},"verticalAlign","：'top' \u002F 'middle' \u002F 'bottom'）",[5760,25664,25665,25670],{},[5775,25666,25667],{},[548,25668,25669],{},"deleteTable()",[5775,25671,25672],{},"刪除表格",[705,25674,25675,25676,25678,25679,25682],{},"cell \u002F header 額外支援 ",[548,25677,25661],{}," 屬性（輸出 ",[548,25680,25681],{},"vertical-align"," style），Table bubble 之垂直對齊按鈕即操作此屬性。",{"title":546,"searchDepth":601,"depth":601,"links":25684},[25685,25686],{"id":19541,"depth":591,"text":19541},{"id":19584,"depth":591,"text":19585},"表格（含 grip 選取）。",{},{"title":344,"description":25687},"asWRkqiRW-oPl6i6u5iGNvkifLBttGZjr-TYV7_1UzA",{"id":25692,"title":348,"body":25693,"component":18,"description":26073,"extension":1015,"links":19,"meta":26074,"navigation":526,"new":18,"path":349,"seo":26075,"stem":350,"wrapperKind":19,"__hash__":26076},"docs\u002Fdocs\u002Faio-editor\u002F3.extensions\u002F41.mention.md",{"type":533,"value":25694,"toc":26069},[25695,25721,25737,25739,25741,25852,25856,25863,26056,26066],[705,25696,25697,25699,25700,25703,25704,25706,25707,25710,25711,25714,25715,25717,25718,25720],{},[548,25698,19390],{}," 提及節點與 suggestion 選單。",[1135,25701,25702],{},"不在預設集合","——須經 ",[548,25705,18339],{}," 啟用，並提供 ",[548,25708,25709],{},"suggestion.onRender"," 實作（選單 UI 由 consumer 全權決定，見 ",[697,25712,25713],{"href":201},"AioEditor 之 Mention demo","）。自製變體額外支援 ",[548,25716,24898],{}," 屬性（",[548,25719,25044],{}," 透傳）。",[1558,25722,25723,25730],{},[1561,25724,25725,2466,25727],{},[1135,25726,19524],{},[548,25728,25729],{},"AioEditorCoreExtension.Mention",[1561,25731,25732,20637,25734,19410],{},[1135,25733,19532],{},[548,25735,25736],{},"@tiptap\u002Fextension-mention",[19537,25738],{"extension":348},[536,25740,19541],{"id":19541},[5754,25742,25743,25755],{},[5757,25744,25745],{},[5760,25746,25747,25749,25751,25753],{},[5763,25748,19550],{},[5763,25750,19553],{},[5763,25752,19556],{},[5763,25754,19559],{},[5770,25756,25757,25775,25793,25813,25832],{},[5760,25758,25759,25763,25767,25772],{},[5775,25760,25761],{},[548,25762,19568],{},[5775,25764,25765],{},[548,25766,19573],{},[5775,25768,25769],{},[548,25770,25771],{},"{ class: 'editor-mention' }",[5775,25773,25774],{},"節點之 HTML 屬性",[5760,25776,25777,25782,25786,25790],{},[5775,25778,25779],{},[548,25780,25781],{},"deleteTriggerWithBackspace",[5775,25783,25784],{},[548,25785,20517],{},[5775,25787,25788],{},[548,25789,2745],{},[5775,25791,25792],{},"Backspace 刪除節點時是否還原觸發字元",[5760,25794,25795,25800,25805,25810],{},[5775,25796,25797],{},[548,25798,25799],{},"renderText",[5775,25801,25802],{},[548,25803,25804],{},"(props) => string",[5775,25806,25807],{},[548,25808,25809],{},"觸發字元＋label",[5775,25811,25812],{},"純文字輸出格式",[5760,25814,25815,25819,25824,25829],{},[5775,25816,25817],{},[548,25818,20622],{},[5775,25820,25821],{},[548,25822,25823],{},"(props) => DOMOutputSpec",[5775,25825,25826],{},[548,25827,25828],{},"span 包觸發字元＋label",[5775,25830,25831],{},"HTML 輸出格式",[5760,25833,25834,25839,25844,25849],{},[5775,25835,25836],{},[548,25837,25838],{},"suggestion",[5775,25840,25841],{},[548,25842,25843],{},"Omit\u003CSuggestionOptions, \"editor\">",[5775,25845,25846],{},[548,25847,25848],{},"mentionSuggestion({ … })",[5775,25850,25851],{},"suggestion 行為（觸發字元、items、選單渲染 hooks）",[536,25853,25855],{"id":25854},"suggestion-選單-hooks","suggestion 選單 hooks",[705,25857,25858,25859,25862],{},"選單以 ",[548,25860,25861],{},"mentionSuggestion(hooks)"," 建立，定位由 floating-ui 處理，渲染交給 consumer：",[539,25864,25866],{"className":574,"code":25865,"language":576,"meta":546,"style":546},"interface MentionSuggestionRuntimeEvent {\n  \u002F** 必要：建立選單，回傳選單元素 *\u002F\n  onRender: (props: unknown, mountEl?: HTMLElement) => HTMLElement | void\n  \u002F** 自訂掛載位置（預設掛編輯器容器） *\u002F\n  onAppend?: (target: HTMLElement, componentEl?: HTMLElement) => void\n  \u002F** query 變更時更新選單 *\u002F\n  onUpdate?: (props: unknown, componentEl?: HTMLElement) => void\n  \u002F** 鍵盤導航（回傳 true 表示已處理） *\u002F\n  onKeyDown?: (props: unknown, componentEl?: HTMLElement) => boolean\n  \u002F** 選單關閉清理 *\u002F\n  onDestroy?: (componentEl?: HTMLElement) => void\n}\n",[548,25867,25868,25878,25883,25922,25927,25957,25962,25991,25996,26025,26030,26052],{"__ignoreMap":546},[551,25869,25870,25873,25876],{"class":553,"line":554},[551,25871,25872],{"class":753},"interface",[551,25874,25875],{"class":557}," MentionSuggestionRuntimeEvent",[551,25877,588],{"class":587},[551,25879,25880],{"class":553,"line":591},[551,25881,25882],{"class":4831},"  \u002F** 必要：建立選單，回傳選單元素 *\u002F\n",[551,25884,25885,25888,25890,25892,25895,25897,25900,25902,25905,25907,25910,25912,25914,25916,25919],{"class":553,"line":601},[551,25886,25887],{"class":738},"  onRender",[551,25889,1169],{"class":587},[551,25891,1190],{"class":587},[551,25893,25894],{"class":1193},"props",[551,25896,1169],{"class":587},[551,25898,25899],{"class":557}," unknown",[551,25901,3348],{"class":587},[551,25903,25904],{"class":1193}," mountEl",[551,25906,9027],{"class":587},[551,25908,25909],{"class":557}," HTMLElement",[551,25911,1197],{"class":587},[551,25913,1200],{"class":753},[551,25915,25909],{"class":557},[551,25917,25918],{"class":587}," |",[551,25920,25921],{"class":557}," void\n",[551,25923,25924],{"class":553,"line":609},[551,25925,25926],{"class":4831},"  \u002F** 自訂掛載位置（預設掛編輯器容器） *\u002F\n",[551,25928,25929,25932,25934,25936,25938,25940,25942,25944,25947,25949,25951,25953,25955],{"class":553,"line":617},[551,25930,25931],{"class":738},"  onAppend",[551,25933,9027],{"class":587},[551,25935,1190],{"class":587},[551,25937,18401],{"class":1193},[551,25939,1169],{"class":587},[551,25941,25909],{"class":557},[551,25943,3348],{"class":587},[551,25945,25946],{"class":1193}," componentEl",[551,25948,9027],{"class":587},[551,25950,25909],{"class":557},[551,25952,1197],{"class":587},[551,25954,1200],{"class":753},[551,25956,25921],{"class":557},[551,25958,25959],{"class":553,"line":625},[551,25960,25961],{"class":4831},"  \u002F** query 變更時更新選單 *\u002F\n",[551,25963,25964,25967,25969,25971,25973,25975,25977,25979,25981,25983,25985,25987,25989],{"class":553,"line":633},[551,25965,25966],{"class":738},"  onUpdate",[551,25968,9027],{"class":587},[551,25970,1190],{"class":587},[551,25972,25894],{"class":1193},[551,25974,1169],{"class":587},[551,25976,25899],{"class":557},[551,25978,3348],{"class":587},[551,25980,25946],{"class":1193},[551,25982,9027],{"class":587},[551,25984,25909],{"class":557},[551,25986,1197],{"class":587},[551,25988,1200],{"class":753},[551,25990,25921],{"class":557},[551,25992,25993],{"class":553,"line":641},[551,25994,25995],{"class":4831},"  \u002F** 鍵盤導航（回傳 true 表示已處理） *\u002F\n",[551,25997,25998,26001,26003,26005,26007,26009,26011,26013,26015,26017,26019,26021,26023],{"class":553,"line":649},[551,25999,26000],{"class":738},"  onKeyDown",[551,26002,9027],{"class":587},[551,26004,1190],{"class":587},[551,26006,25894],{"class":1193},[551,26008,1169],{"class":587},[551,26010,25899],{"class":557},[551,26012,3348],{"class":587},[551,26014,25946],{"class":1193},[551,26016,9027],{"class":587},[551,26018,25909],{"class":557},[551,26020,1197],{"class":587},[551,26022,1200],{"class":753},[551,26024,9030],{"class":557},[551,26026,26027],{"class":553,"line":657},[551,26028,26029],{"class":4831},"  \u002F** 選單關閉清理 *\u002F\n",[551,26031,26032,26035,26037,26039,26042,26044,26046,26048,26050],{"class":553,"line":665},[551,26033,26034],{"class":738},"  onDestroy",[551,26036,9027],{"class":587},[551,26038,1190],{"class":587},[551,26040,26041],{"class":1193},"componentEl",[551,26043,9027],{"class":587},[551,26045,25909],{"class":557},[551,26047,1197],{"class":587},[551,26049,1200],{"class":753},[551,26051,25921],{"class":557},[551,26053,26054],{"class":553,"line":901},[551,26055,10148],{"class":587},[705,26057,4130,26058,26061,26062,26065],{},[548,26059,26060],{},"suggestion.items: ({ query }) => item[]"," 提供候選資料；選單內以 ",[548,26063,26064],{},"props.command({ id, label })"," 插入節點。",[990,26067,26068],{},"html pre.shiki code .spNyl, html code.shiki .spNyl{--shiki-light:#9C3EDA;--shiki-default:#C792EA;--shiki-dark:#C792EA}html pre.shiki code .sBMFI, html code.shiki .sBMFI{--shiki-light:#E2931D;--shiki-default:#FFCB6B;--shiki-dark:#FFCB6B}html pre.shiki code .sMK4o, html code.shiki .sMK4o{--shiki-light:#39ADB5;--shiki-default:#89DDFF;--shiki-dark:#89DDFF}html pre.shiki code .sHwdD, html code.shiki .sHwdD{--shiki-light:#90A4AE;--shiki-light-font-style:italic;--shiki-default:#546E7A;--shiki-default-font-style:italic;--shiki-dark:#676E95;--shiki-dark-font-style:italic}html pre.shiki code .swJcz, html code.shiki .swJcz{--shiki-light:#E53935;--shiki-default:#F07178;--shiki-dark:#F07178}html pre.shiki code .sHdIc, html code.shiki .sHdIc{--shiki-light:#90A4AE;--shiki-light-font-style:italic;--shiki-default:#EEFFFF;--shiki-default-font-style:italic;--shiki-dark:#BABED8;--shiki-dark-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);}",{"title":546,"searchDepth":601,"depth":601,"links":26070},[26071,26072],{"id":19541,"depth":591,"text":19541},{"id":25854,"depth":591,"text":25855},"@ 提及（opt-in）。",{},{"title":348,"description":26073},"5T-mzsFgFhjrU2P7QI0gVRedR3VbBvx5S9SQA4HEV9A",{"id":26078,"title":352,"body":26079,"component":18,"description":26210,"extension":1015,"links":19,"meta":26211,"navigation":526,"new":18,"path":353,"seo":26212,"stem":354,"wrapperKind":19,"__hash__":26213},"docs\u002Fdocs\u002Faio-editor\u002F3.extensions\u002F42.hash-tag.md",{"type":533,"value":26080,"toc":26207},[26081,26101,26115,26117,26119],[705,26082,26083,26085,26086,26088,26089,26092,26093,26095,26096,25703,26098,26100],{},[548,26084,19402],{}," 標籤節點——",[697,26087,348],{"href":349}," 之改名變體（節點名 ",[548,26090,26091],{},"hashtag","、觸發字元 ",[548,26094,19402],{},"），選項與 suggestion hooks 完全相同。",[1135,26097,25702],{},[548,26099,18339],{}," 啟用。",[1558,26102,26103,26110],{},[1561,26104,26105,2466,26107],{},[1135,26106,19524],{},[548,26108,26109],{},"AioEditorCoreExtension.HashTag",[1561,26111,26112,26114],{},[1135,26113,19532],{},"：自製（基於 Mention）",[19537,26116],{"extension":352},[536,26118,19541],{"id":19541},[5754,26120,26121,26133],{},[5757,26122,26123],{},[5760,26124,26125,26127,26129,26131],{},[5763,26126,19550],{},[5763,26128,19553],{},[5763,26130,19556],{},[5763,26132,19559],{},[5770,26134,26135,26152,26168,26187],{},[5760,26136,26137,26141,26145,26150],{},[5775,26138,26139],{},[548,26140,19568],{},[5775,26142,26143],{},[548,26144,19573],{},[5775,26146,26147],{},[548,26148,26149],{},"{ class: 'editor-hashtag' }",[5775,26151,25774],{},[5760,26153,26154,26158,26162,26166],{},[5775,26155,26156],{},[548,26157,25781],{},[5775,26159,26160],{},[548,26161,20517],{},[5775,26163,26164],{},[548,26165,2745],{},[5775,26167,25792],{},[5760,26169,26170,26175,26180,26184],{},[5775,26171,26172],{},[548,26173,26174],{},"renderText \u002F renderHTML",[5775,26176,26177],{},[548,26178,26179],{},"同 Mention",[5775,26181,26182],{},[548,26183,26179],{},[5775,26185,26186],{},"輸出格式",[5760,26188,26189,26193,26197,26202],{},[5775,26190,26191],{},[548,26192,25838],{},[5775,26194,26195],{},[548,26196,25843],{},[5775,26198,26199],{},[548,26200,26201],{},"hashTagSuggestion({ … })",[5775,26203,26204,26205],{},"同 Mention，觸發字元固定 ",[548,26206,19402],{},{"title":546,"searchDepth":601,"depth":601,"links":26208},[26209],{"id":19541,"depth":591,"text":19541},"# 標籤（opt-in）。",{},{"title":352,"description":26210},"GeR8bRE28BtHY9iLcTHTTVMxc9Sp5OJTBiByQUHuREQ",{"id":26215,"title":356,"body":26216,"component":18,"description":26734,"extension":1015,"links":19,"meta":26735,"navigation":526,"new":18,"path":357,"seo":26736,"stem":358,"wrapperKind":19,"__hash__":26737},"docs\u002Fdocs\u002Faio-editor\u002F3.extensions\u002F43.bubble-menu.md",{"type":533,"value":26217,"toc":26729},[26218,26247,26263,26266,26374,26378,26634,26636,26720,26726],[705,26219,26220,26221,26226,26227,26229,26230,2466,26233,26235,26236,26238,26239,26242,26243,26246],{},"依游標位置浮現的操作選單。",[1135,26222,26223,26224],{},"不走 ",[548,26225,18045],{},"——由 ",[548,26228,19435],{}," 設定，key 為 ",[548,26231,26232],{},"AioEditorBubbleKind",[548,26234,2745],{}," 停用該情境、物件覆寫預設；掛載預設跟隨 features 宣告，設 ",[548,26237,2742],{}," 或物件可單獨啟用未宣告 feature 的情境。唯讀（",[548,26240,26241],{},"editable: false","）時一律不顯示。定位以 floating-ui 實作（自製 ",[548,26244,26245],{},"BubbleMenuView"," 子類，支援 arrow 與表格虛擬定位）。",[1558,26248,26249,26256],{},[1561,26250,26251,2466,26253,26255],{},[1135,26252,19524],{},[548,26254,19435],{}," 設定（預設全數啟用）",[1561,26257,26258,20637,26260,19410],{},[1135,26259,19532],{},[548,26261,26262],{},"@tiptap\u002Fextension-bubble-menu",[536,26264,26265],{"id":26265},"七種情境",[5754,26267,26268,26280],{},[5757,26269,26270],{},[5760,26271,26272,26274,26277],{},[5763,26273,18171],{},[5763,26275,26276],{},"觸發時機",[5763,26278,26279],{},"內建按鈕",[5770,26281,26282,26294,26310,26323,26336,26348,26361],{},[5760,26283,26284,26288,26291],{},[5775,26285,26286],{},[548,26287,245],{},[5775,26289,26290],{},"游標在程式碼區塊內",[5775,26292,26293],{},"語言切換下拉（自動偵測＋ 10 種語言）、刪除程式碼區塊",[5760,26295,26296,26300,26303],{},[5775,26297,26298],{},[548,26299,77],{},[5775,26301,26302],{},"圖片被選取",[5775,26304,26305,26306,26309],{},"更新圖片（走 ",[548,26307,26308],{},"toolbarOptions.requestUrl","）、另開分頁開啟、刪除圖片",[5760,26311,26312,26317,26320],{},[5775,26313,26314],{},[548,26315,26316],{},"LinkTips",[5775,26318,26319],{},"游標在連結內",[5775,26321,26322],{},"開啟連結、編輯連結、移除連結",[5760,26324,26325,26330,26333],{},[5775,26326,26327],{},[548,26328,26329],{},"List",[5775,26331,26332],{},"游標在清單項內",[5775,26334,26335],{},"刪除清單項",[5760,26337,26338,26342,26345],{},[5775,26339,26340],{},[548,26341,18148],{},[5775,26343,26344],{},"游標在表格內",[5775,26346,26347],{},"合併 \u002F 拆分（僅可合併時顯示，合併中高亮）、標題儲存格（active 高亮）、垂直對齊（上 \u002F 中 \u002F 下，當前值高亮）、刪除表格",[5760,26349,26350,26355,26358],{},[5775,26351,26352],{},[548,26353,26354],{},"TableRow",[5775,26356,26357],{},"點擊列 grip 整列選取",[5775,26359,26360],{},"上 \u002F 下插入列、刪除列",[5760,26362,26363,26368,26371],{},[5775,26364,26365],{},[548,26366,26367],{},"TableColumn",[5775,26369,26370],{},"點擊欄 grip 整欄選取",[5775,26372,26373],{},"左 \u002F 右插入欄、刪除欄",[536,26375,26377],{"id":26376},"共同選項bubblemenuconfigtype","共同選項（BubbleMenuConfigType）",[5754,26379,26380,26392],{},[5757,26381,26382],{},[5760,26383,26384,26386,26388,26390],{},[5763,26385,19550],{},[5763,26387,19553],{},[5763,26389,19556],{},[5763,26391,19559],{},[5770,26393,26394,26411,26430,26449,26470,26487,26505,26532,26552,26589,26608],{},[5760,26395,26396,26401,26405,26408],{},[5775,26397,26398],{},[548,26399,26400],{},"pluginKey",[5775,26402,26403],{},[548,26404,3261],{},[5775,26406,26407],{},"各情境固定值",[5775,26409,26410],{},"plugin 識別，覆寫時勿與其他 bubble 重複",[5760,26412,26413,26418,26422,26427],{},[5775,26414,26415],{},[548,26416,26417],{},"updateDelay",[5775,26419,26420],{},[548,26421,3440],{},[5775,26423,26424],{},[548,26425,26426],{},"250",[5775,26428,26429],{},"更新節流（ms）",[5760,26431,26432,26437,26441,26446],{},[5775,26433,26434],{},[548,26435,26436],{},"resizeDelay",[5775,26438,26439],{},[548,26440,3440],{},[5775,26442,26443],{},[548,26444,26445],{},"60",[5775,26447,26448],{},"resize 節流（ms）",[5760,26450,26451,26456,26461,26464],{},[5775,26452,26453],{},[548,26454,26455],{},"shouldShow",[5775,26457,26458],{},[548,26459,26460],{},"(props) => boolean",[5775,26462,26463],{},"各情境內建",[5775,26465,26466,26467,19410],{},"顯示條件（如 ",[548,26468,26469],{},"editor.isActive('table')",[5760,26471,26472,26477,26482,26484],{},[5775,26473,26474],{},[548,26475,26476],{},"targetElement",[5775,26478,26479],{},[548,26480,26481],{},"(props) => HTMLElement 或 null",[5775,26483,26463],{},[5775,26485,26486],{},"定位錨點；未提供時以選取範圍定位",[5760,26488,26489,26494,26498,26502],{},[5775,26490,26491],{},[548,26492,26493],{},"isTableGrid",[5775,26495,26496],{},[548,26497,20517],{},[5775,26499,26500],{},[548,26501,2745],{},[5775,26503,26504],{},"表格列 \u002F 欄選取之虛擬定位（CellSelection 之範圍矩形）",[5760,26506,26507,26512,26517,26519],{},[5775,26508,26509],{},[548,26510,26511],{},"options.placement",[5775,26513,26514],{},[548,26515,26516],{},"Placement",[5775,26518,26463],{},[5775,26520,26521,26522,14865,26525,14865,26528,26531],{},"floating-ui 位置（",[548,26523,26524],{},"top-end",[548,26526,26527],{},"right",[548,26529,26530],{},"bottom","…）",[5760,26533,26534,26539,26544,26549],{},[5775,26535,26536],{},[548,26537,26538],{},"options.strategy",[5775,26540,26541],{},[548,26542,26543],{},"'absolute' 或 'fixed'",[5775,26545,26546],{},[548,26547,26548],{},"'absolute'",[5775,26550,26551],{},"定位策略",[5760,26553,26554,26576,26581,26583],{},[5775,26555,26556,1123,26559,1123,26562,1123,26565,1123,26568,1123,26571,1123,26574],{},[548,26557,26558],{},"options.offset",[548,26560,26561],{},"flip",[548,26563,26564],{},"shift",[548,26566,26567],{},"size",[548,26569,26570],{},"autoPlacement",[548,26572,26573],{},"hide",[548,26575,24749],{},[5775,26577,26578],{},[548,26579,26580],{},"boolean 或 middleware 參數",[5775,26582,26463],{},[5775,26584,26585,26586,26588],{},"floating-ui middleware：",[548,26587,2745],{}," 停用、物件傳參數",[5760,26590,26591,26596,26601,26605],{},[5775,26592,26593],{},[548,26594,26595],{},"options.arrow",[5775,26597,26598],{},[548,26599,26600],{},"(() => HTMLElement) 或 false",[5775,26602,26603],{},[548,26604,2745],{},[5775,26606,26607],{},"箭頭元素",[5760,26609,26610,26624,26629,26631],{},[5775,26611,26612,1123,26615,1123,26618,1123,26621],{},[548,26613,26614],{},"options.onShow",[548,26616,26617],{},"onHide",[548,26619,26620],{},"onUpdate",[548,26622,26623],{},"onDestroy",[5775,26625,26626],{},[548,26627,26628],{},"() => void",[5775,26630,17830],{},[5775,26632,26633],{},"生命週期 hooks",[536,26635,20129],{"id":20129},[539,26637,26639],{"className":574,"code":26638,"language":576,"meta":546,"style":546},"const config: AioEditorConfig = {\n  bubbles: {\n    List: false, \u002F\u002F 停用清單 bubble\n    Table: {\n      options: { placement: 'top-end' }\n    }\n  }\n}\n",[548,26640,26641,26655,26663,26677,26686,26708,26712,26716],{"__ignoreMap":546},[551,26642,26643,26645,26647,26649,26651,26653],{"class":553,"line":554},[551,26644,3321],{"class":753},[551,26646,17870],{"class":594},[551,26648,1169],{"class":587},[551,26650,17875],{"class":557},[551,26652,10094],{"class":587},[551,26654,588],{"class":587},[551,26656,26657,26659,26661],{"class":553,"line":591},[551,26658,17966],{"class":738},[551,26660,1169],{"class":587},[551,26662,588],{"class":587},[551,26664,26665,26668,26670,26672,26674],{"class":553,"line":601},[551,26666,26667],{"class":738},"    List",[551,26669,1169],{"class":587},[551,26671,17984],{"class":17983},[551,26673,3348],{"class":587},[551,26675,26676],{"class":4831}," \u002F\u002F 停用清單 bubble\n",[551,26678,26679,26682,26684],{"class":553,"line":609},[551,26680,26681],{"class":738},"    Table",[551,26683,1169],{"class":587},[551,26685,588],{"class":587},[551,26687,26688,26691,26693,26695,26698,26700,26702,26704,26706],{"class":553,"line":617},[551,26689,26690],{"class":738},"      options",[551,26692,1169],{"class":587},[551,26694,1273],{"class":587},[551,26696,26697],{"class":738}," placement",[551,26699,1169],{"class":587},[551,26701,674],{"class":587},[551,26703,26524],{"class":561},[551,26705,1214],{"class":587},[551,26707,18827],{"class":587},[551,26709,26710],{"class":553,"line":625},[551,26711,1227],{"class":587},[551,26713,26714],{"class":553,"line":633},[551,26715,1232],{"class":587},[551,26717,26718],{"class":553,"line":641},[551,26719,10148],{"class":587},[705,26721,26722,26725],{},[548,26723,26724],{},"element"," 欄位由 UI 層注入（Teleport 掛載），consumer 不需設定。",[990,26727,26728],{},"html pre.shiki code .spNyl, html code.shiki .spNyl{--shiki-light:#9C3EDA;--shiki-default:#C792EA;--shiki-dark:#C792EA}html pre.shiki code .sTEyZ, html code.shiki .sTEyZ{--shiki-light:#90A4AE;--shiki-default:#EEFFFF;--shiki-dark:#BABED8}html pre.shiki code .sMK4o, html code.shiki .sMK4o{--shiki-light:#39ADB5;--shiki-default:#89DDFF;--shiki-dark:#89DDFF}html pre.shiki code .sBMFI, html code.shiki .sBMFI{--shiki-light:#E2931D;--shiki-default:#FFCB6B;--shiki-dark:#FFCB6B}html pre.shiki code .swJcz, html code.shiki .swJcz{--shiki-light:#E53935;--shiki-default:#F07178;--shiki-dark:#F07178}html pre.shiki code .sfNiH, html code.shiki .sfNiH{--shiki-light:#FF5370;--shiki-default:#FF9CAC;--shiki-dark:#FF9CAC}html pre.shiki code .sHwdD, html code.shiki .sHwdD{--shiki-light:#90A4AE;--shiki-light-font-style:italic;--shiki-default:#546E7A;--shiki-default-font-style:italic;--shiki-dark:#676E95;--shiki-dark-font-style:italic}html pre.shiki code .sfazB, html code.shiki .sfazB{--shiki-light:#91B859;--shiki-default:#C3E88D;--shiki-dark:#C3E88D}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);}",{"title":546,"searchDepth":601,"depth":601,"links":26730},[26731,26732,26733],{"id":26265,"depth":591,"text":26265},{"id":26376,"depth":591,"text":26377},{"id":20129,"depth":591,"text":20129},"七種情境的浮動選單。",{},{"title":356,"description":26734},"S8PLmLezCyRS0STjUbLr6z0mnmSXqW4XAxFjEcrgcWI",{"id":26739,"title":360,"body":26740,"component":18,"description":27014,"extension":1015,"links":19,"meta":27015,"navigation":526,"new":18,"path":361,"seo":27016,"stem":362,"wrapperKind":19,"__hash__":27017},"docs\u002Fdocs\u002Faio-editor\u002F3.extensions\u002F44.drag-handle.md",{"type":533,"value":26741,"toc":27010},[26742,26763,26776,26780,26937,26939,27003,27007],[705,26743,26744,26745,26226,26749,26751,26752,26754,26755,1123,26757,26759,26760,26762],{},"hover 區塊時浮現的拖曳把手，可拖動整個區塊重排。",[1135,26746,26223,26747],{},[548,26748,18045],{},[548,26750,19446],{}," 設定：",[548,26753,2745],{}," 停用、物件覆寫預設。拖曳清單項離開清單時會自動包回對應的 ",[548,26756,1558],{},[548,26758,17110],{},"（配合 ",[697,26761,321],{"href":322}," 合併相鄰清單）。",[1558,26764,26765,26772],{},[1561,26766,26767,2466,26769,26771],{},[1135,26768,19524],{},[548,26770,19446],{}," 設定（預設啟用）",[1561,26773,26774,22392],{},[1135,26775,19532],{},[536,26777,26779],{"id":26778},"選項draghandleconfigtype","選項（DragHandleConfigType）",[5754,26781,26782,26794],{},[5757,26783,26784],{},[5760,26785,26786,26788,26790,26792],{},[5763,26787,19550],{},[5763,26789,19553],{},[5763,26791,19556],{},[5763,26793,19559],{},[5770,26795,26796,26814,26832,26851,26867,26883,26901,26919],{},[5760,26797,26798,26803,26807,26811],{},[5775,26799,26800],{},[548,26801,26802],{},"scrollThreshold",[5775,26804,26805],{},[548,26806,3440],{},[5775,26808,26809],{},[548,26810,23413],{},[5775,26812,26813],{},"拖曳至視窗上下邊緣多少 px 內自動捲動",[5760,26815,26816,26821,26825,26829],{},[5775,26817,26818],{},[548,26819,26820],{},"excludedTags",[5775,26822,26823],{},[548,26824,22203],{},[5775,26826,26827],{},[548,26828,24459],{},[5775,26830,26831],{},"不顯示把手之 HTML 標籤",[5760,26833,26834,26839,26844,26848],{},[5775,26835,26836],{},[548,26837,26838],{},"isChildNode",[5775,26840,26841],{},[548,26842,26843],{},"(nodeName: string) => boolean",[5775,26845,26846],{},[548,26847,13826],{},[5775,26849,26850],{},"自訂「視為子節點」判定（子節點拖曳時以父層為單位）",[5760,26852,26853,26857,26861,26865],{},[5775,26854,26855],{},[548,26856,26417],{},[5775,26858,26859],{},[548,26860,3440],{},[5775,26862,26863],{},[548,26864,26426],{},[5775,26866,26429],{},[5760,26868,26869,26873,26877,26881],{},[5775,26870,26871],{},[548,26872,26436],{},[5775,26874,26875],{},[548,26876,3440],{},[5775,26878,26879],{},[548,26880,26445],{},[5775,26882,26448],{},[5760,26884,26885,26889,26893,26898],{},[5775,26886,26887],{},[548,26888,26511],{},[5775,26890,26891],{},[548,26892,26516],{},[5775,26894,26895],{},[548,26896,26897],{},"'left-start'",[5775,26899,26900],{},"把手相對區塊之位置",[5760,26902,26903,26907,26911,26916],{},[5775,26904,26905],{},[548,26906,26558],{},[5775,26908,26909],{},[548,26910,3440],{},[5775,26912,26913],{},[548,26914,26915],{},"13",[5775,26917,26918],{},"與區塊之間距",[5760,26920,26921,26927,26932,26934],{},[5775,26922,26923,26924],{},"其餘 ",[548,26925,26926],{},"options.*",[5775,26928,26929,26930],{},"同 ",[697,26931,356],{"href":357},[5775,26933,17830],{},[5775,26935,26936],{},"floating-ui middleware 與生命週期 hooks",[536,26938,20129],{"id":20129},[539,26940,26942],{"className":574,"code":26941,"language":576,"meta":546,"style":546},"const config: AioEditorConfig = {\n  dragHandle: {\n    scrollThreshold: 60,\n    excludedTags: ['hr']\n  }\n}\n",[548,26943,26944,26958,26966,26978,26995,26999],{"__ignoreMap":546},[551,26945,26946,26948,26950,26952,26954,26956],{"class":553,"line":554},[551,26947,3321],{"class":753},[551,26949,17870],{"class":594},[551,26951,1169],{"class":587},[551,26953,17875],{"class":557},[551,26955,10094],{"class":587},[551,26957,588],{"class":587},[551,26959,26960,26962,26964],{"class":553,"line":591},[551,26961,17978],{"class":738},[551,26963,1169],{"class":587},[551,26965,588],{"class":587},[551,26967,26968,26971,26973,26976],{"class":553,"line":601},[551,26969,26970],{"class":738},"    scrollThreshold",[551,26972,1169],{"class":587},[551,26974,26975],{"class":17275}," 60",[551,26977,598],{"class":587},[551,26979,26980,26983,26985,26987,26989,26991,26993],{"class":553,"line":609},[551,26981,26982],{"class":738},"    excludedTags",[551,26984,1169],{"class":587},[551,26986,9070],{"class":594},[551,26988,1214],{"class":587},[551,26990,20368],{"class":561},[551,26992,1214],{"class":587},[551,26994,9080],{"class":594},[551,26996,26997],{"class":553,"line":617},[551,26998,1232],{"class":587},[551,27000,27001],{"class":553,"line":625},[551,27002,10148],{"class":587},[705,27004,27005,26725],{},[548,27006,26724],{},[990,27008,27009],{},"html pre.shiki code .spNyl, html code.shiki .spNyl{--shiki-light:#9C3EDA;--shiki-default:#C792EA;--shiki-dark:#C792EA}html pre.shiki code .sTEyZ, html code.shiki .sTEyZ{--shiki-light:#90A4AE;--shiki-default:#EEFFFF;--shiki-dark:#BABED8}html pre.shiki code .sMK4o, html code.shiki .sMK4o{--shiki-light:#39ADB5;--shiki-default:#89DDFF;--shiki-dark:#89DDFF}html pre.shiki code .sBMFI, html code.shiki .sBMFI{--shiki-light:#E2931D;--shiki-default:#FFCB6B;--shiki-dark:#FFCB6B}html pre.shiki code .swJcz, html code.shiki .swJcz{--shiki-light:#E53935;--shiki-default:#F07178;--shiki-dark:#F07178}html pre.shiki code .sbssI, html code.shiki .sbssI{--shiki-light:#F76D47;--shiki-default:#F78C6C;--shiki-dark:#F78C6C}html pre.shiki code .sfazB, html code.shiki .sfazB{--shiki-light:#91B859;--shiki-default:#C3E88D;--shiki-dark:#C3E88D}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);}",{"title":546,"searchDepth":601,"depth":601,"links":27011},[27012,27013],{"id":26778,"depth":591,"text":26779},{"id":20129,"depth":591,"text":20129},"區塊拖曳把手。",{},{"title":360,"description":27014},"tc3Evdu4hbAylEzuZsEndWIyZTgsanySfDnSCsbtRJc",{"id":27019,"title":364,"body":27020,"component":18,"description":27149,"extension":1015,"links":19,"meta":27150,"navigation":526,"new":18,"path":365,"seo":27151,"stem":366,"wrapperKind":19,"__hash__":27152},"docs\u002Fdocs\u002Faio-editor\u002F3.extensions\u002F5.underline.md",{"type":533,"value":27021,"toc":27144},[27022,27025,27041,27043,27045,27077,27079,27121,27123],[705,27023,27024],{},"底線文字標記。",[1558,27026,27027,27034],{},[1561,27028,27029,2466,27031],{},[1135,27030,19524],{},[548,27032,27033],{},"AioEditorCoreExtension.Underline",[1561,27035,27036,2466,27038],{},[1135,27037,19532],{},[548,27039,27040],{},"@tiptap\u002Fextension-underline",[19537,27042],{"extension":364},[536,27044,19541],{"id":19541},[5754,27046,27047,27059],{},[5757,27048,27049],{},[5760,27050,27051,27053,27055,27057],{},[5763,27052,19550],{},[5763,27054,19553],{},[5763,27056,19556],{},[5763,27058,19559],{},[5770,27060,27061],{},[5760,27062,27063,27067,27071,27075],{},[5775,27064,27065],{},[548,27066,19568],{},[5775,27068,27069],{},[548,27070,19573],{},[5775,27072,27073],{},[548,27074,19578],{},[5775,27076,19581],{},[536,27078,19585],{"id":19584},[5754,27080,27081,27089],{},[5757,27082,27083],{},[5760,27084,27085,27087],{},[5763,27086,19594],{},[5763,27088,19559],{},[5770,27090,27091,27101,27111],{},[5760,27092,27093,27098],{},[5775,27094,27095],{},[548,27096,27097],{},"setUnderline()",[5775,27099,27100],{},"套用底線",[5760,27102,27103,27108],{},[5775,27104,27105],{},[548,27106,27107],{},"toggleUnderline()",[5775,27109,27110],{},"切換底線",[5760,27112,27113,27118],{},[5775,27114,27115],{},[548,27116,27117],{},"unsetUnderline()",[5775,27119,27120],{},"移除底線",[536,27122,5765],{"id":5765},[5754,27124,27125,27133],{},[5757,27126,27127],{},[5760,27128,27129,27131],{},[5763,27130,19639],{},[5763,27132,5768],{},[5770,27134,27135],{},[5760,27136,27137,27142],{},[5775,27138,27139],{},[548,27140,27141],{},"Mod-U",[5775,27143,27110],{},{"title":546,"searchDepth":601,"depth":601,"links":27145},[27146,27147,27148],{"id":19541,"depth":591,"text":19541},{"id":19584,"depth":591,"text":19585},{"id":5765,"depth":591,"text":5765},"底線 mark。",{},{"title":364,"description":27149},"JOnmkfa81wJlWxBckbW5PNPNYHNH9y0drrWgKH270FY",{"id":27154,"title":368,"body":27155,"component":18,"description":27295,"extension":1015,"links":19,"meta":27296,"navigation":526,"new":18,"path":369,"seo":27297,"stem":370,"wrapperKind":19,"__hash__":27298},"docs\u002Fdocs\u002Faio-editor\u002F3.extensions\u002F6.code.md",{"type":533,"value":27156,"toc":27290},[27157,27165,27181,27183,27185,27217,27219,27261,27263,27284],[705,27158,27159,27160,27162,27163,713],{},"行內程式碼標記（",[548,27161,548],{}," 元素）。區塊層級的程式碼見 ",[697,27164,245],{"href":246},[1558,27166,27167,27174],{},[1561,27168,27169,2466,27171],{},[1135,27170,19524],{},[548,27172,27173],{},"AioEditorCoreExtension.Code",[1561,27175,27176,2466,27178],{},[1135,27177,19532],{},[548,27179,27180],{},"@tiptap\u002Fextension-code",[19537,27182],{"extension":368},[536,27184,19541],{"id":19541},[5754,27186,27187,27199],{},[5757,27188,27189],{},[5760,27190,27191,27193,27195,27197],{},[5763,27192,19550],{},[5763,27194,19553],{},[5763,27196,19556],{},[5763,27198,19559],{},[5770,27200,27201],{},[5760,27202,27203,27207,27211,27215],{},[5775,27204,27205],{},[548,27206,19568],{},[5775,27208,27209],{},[548,27210,19573],{},[5775,27212,27213],{},[548,27214,19578],{},[5775,27216,19581],{},[536,27218,19585],{"id":19584},[5754,27220,27221,27229],{},[5757,27222,27223],{},[5760,27224,27225,27227],{},[5763,27226,19594],{},[5763,27228,19559],{},[5770,27230,27231,27241,27251],{},[5760,27232,27233,27238],{},[5775,27234,27235],{},[548,27236,27237],{},"setCode()",[5775,27239,27240],{},"套用行內程式碼",[5760,27242,27243,27248],{},[5775,27244,27245],{},[548,27246,27247],{},"toggleCode()",[5775,27249,27250],{},"切換行內程式碼",[5760,27252,27253,27258],{},[5775,27254,27255],{},[548,27256,27257],{},"unsetCode()",[5775,27259,27260],{},"移除行內程式碼",[536,27262,5765],{"id":5765},[5754,27264,27265,27273],{},[5757,27266,27267],{},[5760,27268,27269,27271],{},[5763,27270,19639],{},[5763,27272,5768],{},[5770,27274,27275],{},[5760,27276,27277,27282],{},[5775,27278,27279],{},[548,27280,27281],{},"Mod-E",[5775,27283,27250],{},[705,27285,21346,27286,27289],{},[548,27287,27288],{},"`文字`"," 自動轉為行內程式碼。",{"title":546,"searchDepth":601,"depth":601,"links":27291},[27292,27293,27294],{"id":19541,"depth":591,"text":19541},{"id":19584,"depth":591,"text":19585},{"id":5765,"depth":591,"text":5765},"行內程式碼 mark。",{},{"title":368,"description":27295},"xP-WD4sQVuwfX-XtbrWCWUnjwPN7q7k1MclzFbdfns8",{"id":27300,"title":372,"body":27301,"component":18,"description":27415,"extension":1015,"links":19,"meta":27416,"navigation":526,"new":18,"path":373,"seo":27417,"stem":374,"wrapperKind":19,"__hash__":27418},"docs\u002Fdocs\u002Faio-editor\u002F3.extensions\u002F7.text-style.md",{"type":533,"value":27302,"toc":27411},[27303,27318,27333,27335,27337,27387,27389],[705,27304,2141,27305,27307,27308,14865,27310,14865,27312,27314,27315,713],{},[548,27306,551],{}," 承載行內樣式屬性的基底 mark——",[697,27309,376],{"href":377},[697,27311,289],{"href":290},[697,27313,293],{"href":294}," 都把樣式掛在此 mark 上，",[1135,27316,27317],{},"停用它會連帶使三者失效",[1558,27319,27320,27327],{},[1561,27321,27322,2466,27324],{},[1135,27323,19524],{},[548,27325,27326],{},"AioEditorCoreExtension.TextStyle",[1561,27328,27329,2466,27331],{},[1135,27330,19532],{},[548,27332,22915],{},[19537,27334],{"extension":372},[536,27336,19541],{"id":19541},[5754,27338,27339,27351],{},[5757,27340,27341],{},[5760,27342,27343,27345,27347,27349],{},[5763,27344,19550],{},[5763,27346,19553],{},[5763,27348,19556],{},[5763,27350,19559],{},[5770,27352,27353,27369],{},[5760,27354,27355,27359,27363,27367],{},[5775,27356,27357],{},[548,27358,19568],{},[5775,27360,27361],{},[548,27362,19573],{},[5775,27364,27365],{},[548,27366,19578],{},[5775,27368,19581],{},[5760,27370,27371,27376,27380,27384],{},[5775,27372,27373],{},[548,27374,27375],{},"mergeNestedSpanStyles",[5775,27377,27378],{},[548,27379,20517],{},[5775,27381,27382],{},[548,27383,2745],{},[5775,27385,27386],{},"解析巢狀 span 時是否把外層樣式合併進內層",[536,27388,19585],{"id":19584},[5754,27390,27391,27399],{},[5757,27392,27393],{},[5760,27394,27395,27397],{},[5763,27396,19594],{},[5763,27398,19559],{},[5770,27400,27401],{},[5760,27402,27403,27408],{},[5775,27404,27405],{},[548,27406,27407],{},"removeEmptyTextStyle()",[5775,27409,27410],{},"移除不帶任何樣式屬性的空 textStyle mark",{"title":546,"searchDepth":601,"depth":601,"links":27412},[27413,27414],{"id":19541,"depth":591,"text":19541},{"id":19584,"depth":591,"text":19585},"文字樣式載體 mark。",{},{"title":372,"description":27415},"ALpwfSiDOEzIPkVDr4TSGO2-bbcGx2w0-PVY0i7UmJw",{"id":27420,"title":376,"body":27421,"component":18,"description":27591,"extension":1015,"links":19,"meta":27592,"navigation":526,"new":18,"path":377,"seo":27593,"stem":378,"wrapperKind":19,"__hash__":27594},"docs\u002Fdocs\u002Faio-editor\u002F3.extensions\u002F8.color.md",{"type":533,"value":27422,"toc":27586},[27423,27433,27450,27452,27454,27486,27488,27520,27522,27584],[705,27424,27425,27426,27428,27429,27432],{},"文字顏色，樣式掛於 ",[697,27427,372],{"href":373}," mark。toolbar 之 ",[548,27430,27431],{},"TextColor"," 按鈕即操作此 extension。",[1558,27434,27435,27442],{},[1561,27436,27437,2466,27439],{},[1135,27438,19524],{},[548,27440,27441],{},"AioEditorCoreExtension.Color",[1561,27443,27444,2466,27446,8904,27448,19410],{},[1135,27445,19532],{},[548,27447,22915],{},[548,27449,376],{},[19537,27451],{"extension":376},[536,27453,19541],{"id":19541},[5754,27455,27456,27468],{},[5757,27457,27458],{},[5760,27459,27460,27462,27464,27466],{},[5763,27461,19550],{},[5763,27463,19553],{},[5763,27465,19556],{},[5763,27467,19559],{},[5770,27469,27470],{},[5760,27471,27472,27476,27480,27484],{},[5775,27473,27474],{},[548,27475,22198],{},[5775,27477,27478],{},[548,27479,22203],{},[5775,27481,27482],{},[548,27483,22952],{},[5775,27485,22955],{},[536,27487,19585],{"id":19584},[5754,27489,27490,27498],{},[5757,27491,27492],{},[5760,27493,27494,27496],{},[5763,27495,19594],{},[5763,27497,19559],{},[5770,27499,27500,27510],{},[5760,27501,27502,27507],{},[5775,27503,27504],{},[548,27505,27506],{},"setColor(color)",[5775,27508,27509],{},"設定文字顏色（CSS 色值）",[5760,27511,27512,27517],{},[5775,27513,27514],{},[548,27515,27516],{},"unsetColor()",[5775,27518,27519],{},"移除文字顏色",[536,27521,20129],{"id":20129},[539,27523,27525],{"className":574,"code":27524,"language":576,"meta":546,"style":546},"const config: AioEditorConfig = {\n  extensionsConfig: {\n    Color: { types: ['textStyle'] }\n  }\n}\n",[548,27526,27527,27541,27549,27576,27580],{"__ignoreMap":546},[551,27528,27529,27531,27533,27535,27537,27539],{"class":553,"line":554},[551,27530,3321],{"class":753},[551,27532,17870],{"class":594},[551,27534,1169],{"class":587},[551,27536,17875],{"class":557},[551,27538,10094],{"class":587},[551,27540,588],{"class":587},[551,27542,27543,27545,27547],{"class":553,"line":591},[551,27544,17927],{"class":738},[551,27546,1169],{"class":587},[551,27548,588],{"class":587},[551,27550,27551,27554,27556,27558,27561,27563,27565,27567,27570,27572,27574],{"class":553,"line":601},[551,27552,27553],{"class":738},"    Color",[551,27555,1169],{"class":587},[551,27557,1273],{"class":587},[551,27559,27560],{"class":738}," types",[551,27562,1169],{"class":587},[551,27564,9070],{"class":594},[551,27566,1214],{"class":587},[551,27568,27569],{"class":561},"textStyle",[551,27571,1214],{"class":587},[551,27573,3398],{"class":594},[551,27575,10148],{"class":587},[551,27577,27578],{"class":553,"line":609},[551,27579,1232],{"class":587},[551,27581,27582],{"class":553,"line":617},[551,27583,10148],{"class":587},[990,27585,21356],{},{"title":546,"searchDepth":601,"depth":601,"links":27587},[27588,27589,27590],{"id":19541,"depth":591,"text":19541},{"id":19584,"depth":591,"text":19585},{"id":20129,"depth":591,"text":20129},"文字顏色。",{},{"title":376,"description":27591},"Wv7MjLb2ZXgs3lLkd4v9HWyR7uZHBF40HYQwVf35yEA",{"id":27596,"title":380,"body":27597,"component":18,"description":27760,"extension":1015,"links":19,"meta":27761,"navigation":526,"new":18,"path":381,"seo":27762,"stem":382,"wrapperKind":19,"__hash__":27763},"docs\u002Fdocs\u002Faio-editor\u002F3.extensions\u002F9.highlight.md",{"type":533,"value":27598,"toc":27755},[27599,27605,27621,27623,27625,27682,27684,27726,27728,27749],[705,27600,27601,27602,20225],{},"文字底色標記（",[548,27603,27604],{},"mark",[1558,27606,27607,27614],{},[1561,27608,27609,2466,27611],{},[1135,27610,19524],{},[548,27612,27613],{},"AioEditorCoreExtension.Highlight",[1561,27615,27616,2466,27618],{},[1135,27617,19532],{},[548,27619,27620],{},"@tiptap\u002Fextension-highlight",[19537,27622],{"extension":380},[536,27624,19541],{"id":19541},[5754,27626,27627,27639],{},[5757,27628,27629],{},[5760,27630,27631,27633,27635,27637],{},[5763,27632,19550],{},[5763,27634,19553],{},[5763,27636,19556],{},[5763,27638,19559],{},[5770,27640,27641,27666],{},[5760,27642,27643,27648,27652,27656],{},[5775,27644,27645],{},[548,27646,27647],{},"multicolor",[5775,27649,27650],{},[548,27651,20517],{},[5775,27653,27654],{},[548,27655,2742],{},[5775,27657,27658,27659,27662,27663,27665],{},"允許以 ",[548,27660,27661],{},"data-color"," 指定多種底色；",[548,27664,2745],{}," 時僅單一預設底色",[5760,27667,27668,27672,27676,27680],{},[5775,27669,27670],{},[548,27671,19568],{},[5775,27673,27674],{},[548,27675,19573],{},[5775,27677,27678],{},[548,27679,19578],{},[5775,27681,19581],{},[536,27683,19585],{"id":19584},[5754,27685,27686,27694],{},[5757,27687,27688],{},[5760,27689,27690,27692],{},[5763,27691,19594],{},[5763,27693,19559],{},[5770,27695,27696,27706,27716],{},[5760,27697,27698,27703],{},[5775,27699,27700],{},[548,27701,27702],{},"setHighlight({ color? })",[5775,27704,27705],{},"套用螢光標記（multicolor 時可帶色值）",[5760,27707,27708,27713],{},[5775,27709,27710],{},[548,27711,27712],{},"toggleHighlight({ color? })",[5775,27714,27715],{},"切換螢光標記",[5760,27717,27718,27723],{},[5775,27719,27720],{},[548,27721,27722],{},"unsetHighlight()",[5775,27724,27725],{},"移除螢光標記",[536,27727,5765],{"id":5765},[5754,27729,27730,27738],{},[5757,27731,27732],{},[5760,27733,27734,27736],{},[5763,27735,19639],{},[5763,27737,5768],{},[5770,27739,27740],{},[5760,27741,27742,27747],{},[5775,27743,27744],{},[548,27745,27746],{},"Mod-Shift-H",[5775,27748,27715],{},[705,27750,21346,27751,27754],{},[548,27752,27753],{},"==文字=="," 自動轉為螢光標記。",{"title":546,"searchDepth":601,"depth":601,"links":27756},[27757,27758,27759],{"id":19541,"depth":591,"text":19541},{"id":19584,"depth":591,"text":19585},{"id":5765,"depth":591,"text":5765},"螢光標記 mark。",{},{"title":380,"description":27760},"zOjAq8ztCxWNs7fDnNYRBoWCxmfh25dy6pMhjNFe3gE",{"id":27765,"title":389,"body":27766,"component":18,"description":28022,"extension":1015,"links":19,"meta":28023,"navigation":526,"new":18,"path":390,"seo":28024,"stem":391,"wrapperKind":19,"__hash__":28025},"docs\u002Fdocs\u002Feditor\u002F1.overview.md",{"type":533,"value":27767,"toc":28018},[27768,27777,27780,27819,27822],[705,27769,27770,27771,27774,27775,713],{},"預設用 ",[548,27772,27773],{},"@admin\u002Frich-editor","；要更多功能再裝下方擴充包。客製見",[697,27776,393],{"href":394},[536,27778,27779],{"id":27779},"核心",[5754,27781,27782,27790],{},[5757,27783,27784],{},[5760,27785,27786,27788],{},[5763,27787,17719],{},[5763,27789,17722],{},[5770,27791,27792,27801,27810],{},[5760,27793,27794,27798],{},[5775,27795,27796],{},[697,27797,384],{"href":402},[5775,27799,27800],{},"空白核心，自行加 extension",[5760,27802,27803,27807],{},[5775,27804,27805],{},[697,27806,405],{"href":406},[5775,27808,27809],{},"內建 StarterKit 的文字編輯器",[5760,27811,27812,27816],{},[5775,27813,27814],{},[697,27815,409],{"href":410},[5775,27817,27818],{},"工具列",[536,27820,27821],{"id":27821},"擴充功能",[5754,27823,27824,27833],{},[5757,27825,27826],{},[5760,27827,27828,27831],{},[5763,27829,27830],{},"包",[5763,27832,17722],{},[5770,27834,27835,27844,27854,27863,27872,27882,27891,27901,27910,27921,27933,27945,27955,27965,27974,27982,27992,28000,28009],{},[5760,27836,27837,27841],{},[5775,27838,27839],{},[697,27840,77],{"href":419},[5775,27842,27843],{},"圖片顯示 \u002F 插入",[5760,27845,27846,27851],{},[5775,27847,27848],{},[697,27849,27850],{"href":463},"Markdown",[5775,27852,27853],{},"Markdown 內容格式",[5760,27855,27856,27861],{},[5775,27857,27858],{},[697,27859,27860],{"href":471},"Text Color",[5775,27862,18997],{},[5760,27864,27865,27869],{},[5775,27866,27867],{},[697,27868,380],{"href":475},[5775,27870,27871],{},"文字底色",[5760,27873,27874,27879],{},[5775,27875,27876],{},[697,27877,27878],{"href":479},"Text Align",[5775,27880,27881],{},"左中右對齊",[5760,27883,27884,27888],{},[5775,27885,27886],{},[697,27887,309],{"href":483},[5775,27889,27890],{},"空編輯器提示文字",[5760,27892,27893,27898],{},[5775,27894,27895],{},[697,27896,27897],{"href":487},"Task List",[5775,27899,27900],{},"任務清單 checkbox",[5760,27902,27903,27907],{},[5775,27904,27905],{},[697,27906,281],{"href":491},[5775,27908,27909],{},"段落縮排",[5760,27911,27912,27916],{},[5775,27913,27914],{},[697,27915,348],{"href":495},[5775,27917,27918,27920],{},[548,27919,19390],{}," 提及選單",[5760,27922,27923,27928],{},[5775,27924,27925],{},[697,27926,27927],{"href":423},"Emoji",[5775,27929,27930,27932],{},[548,27931,1169],{}," 表情選單",[5760,27934,27935,27940],{},[5775,27936,27937],{},[697,27938,27939],{"href":427},"Suggestion",[5775,27941,27942,27944],{},[548,27943,2243],{}," slash command 選單",[5760,27946,27947,27952],{},[5775,27948,27949],{},[697,27950,27951],{"href":431},"Link Bubble",[5775,27953,27954],{},"連結浮層（檢視 \u002F 編輯 \u002F 移除）",[5760,27956,27957,27962],{},[5775,27958,27959],{},[697,27960,27961],{"href":435},"List Trash",[5775,27963,27964],{},"清單項刪除鈕",[5760,27966,27967,27971],{},[5775,27968,27969],{},[697,27970,360],{"href":439},[5775,27972,27973],{},"區塊拖曳把手",[5760,27975,27976,27980],{},[5775,27977,27978],{},[697,27979,18148],{"href":443},[5775,27981,18143],{},[5760,27983,27984,27989],{},[5775,27985,27986],{},[697,27987,27988],{"href":447},"Superscript \u002F Subscript",[5775,27990,27991],{},"上標 \u002F 下標",[5760,27993,27994,27998],{},[5775,27995,27996],{},[697,27997,336],{"href":451},[5775,27999,19351],{},[5760,28001,28002,28006],{},[5775,28003,28004],{},[697,28005,15780],{"href":455},[5775,28007,28008],{},"YouTube 嵌入",[5760,28010,28011,28016],{},[5775,28012,28013],{},[697,28014,28015],{"href":459},"Font Size",[5775,28017,19232],{},{"title":546,"searchDepth":601,"depth":601,"links":28019},[28020,28021],{"id":27779,"depth":591,"text":27779},{"id":27821,"depth":591,"text":27821},"以 @tiptap\u002Fvue-3 為底的文字編輯器；核心與擴充包分開安裝。",{},{"title":389,"description":28022},"l9oVhM2ZuTtfnpCclbvGAo4EXQAVFsdCLl5r7ZnOJug",{"id":28027,"title":393,"body":28028,"component":18,"description":29705,"extension":1015,"links":19,"meta":29706,"navigation":526,"new":18,"path":394,"seo":29707,"stem":395,"wrapperKind":19,"__hash__":29708},"docs\u002Fdocs\u002Feditor\u002F2.customization.md",{"type":533,"value":28029,"toc":29687},[28030,28034,28038,28045,28254,28257,28272,28382,28386,28389,28448,28452,28467,28514,28516,28529,28565,28571,28587,29031,29037,29044,29057,29403,29442,29446,29449,29469,29498,29638,29656,29660,29672,29675,29684],[536,28031,28033],{"id":28032},"自訂-extension","自訂 extension",[692,28035,28037],{"id":28036},"加-extension","加 extension",[705,28039,28040,28041,28044],{},"用 ",[548,28042,28043],{},":extensions"," 傳入任何 tiptap extension。要注意 editor 的 schema 在建立當下就固定了、之後沒辦法再加，所以 node \u002F mark 這類 extension 一定要一開始就放進去：",[539,28046,28048],{"className":726,"code":28047,"language":728,"meta":546,"style":546},"\u003Cscript setup lang=\"ts\">\nimport CharacterCount from '@tiptap\u002Fextension-character-count'\nimport { AdminEditorToolbar, defaultEditorItems } from '@\u002Fregistry\u002Fadmin\u002Fui\u002Feditor-toolbar'\nimport { AdminRichEditor } from '@\u002Fregistry\u002Fadmin\u002Fui\u002Frich-editor'\n\u003C\u002Fscript>\n\n\u003Ctemplate>\n  \u003Cadmin-rich-editor\n    v-slot=\"{ editor, handlers }\"\n    v-model=\"value\"\n    :extensions=\"[CharacterCount.configure({ limit: 500 })]\"\n  >\n    \u003Cadmin-editor-toolbar :editor :handlers=\"handlers\" :items=\"defaultEditorItems\" \u002F>\n  \u003C\u002Fadmin-rich-editor>\n\u003C\u002Ftemplate>\n",[548,28049,28050,28070,28086,28111,28131,28139,28143,28151,28158,28172,28184,28198,28202,28237,28246],{"__ignoreMap":546},[551,28051,28052,28054,28056,28058,28060,28062,28064,28066,28068],{"class":553,"line":554},[551,28053,735],{"class":587},[551,28055,3276],{"class":738},[551,28057,3279],{"class":753},[551,28059,3282],{"class":753},[551,28061,757],{"class":587},[551,28063,760],{"class":587},[551,28065,576],{"class":561},[551,28067,760],{"class":587},[551,28069,742],{"class":587},[551,28071,28072,28074,28077,28079,28081,28084],{"class":553,"line":591},[551,28073,584],{"class":583},[551,28075,28076],{"class":594}," CharacterCount ",[551,28078,1259],{"class":583},[551,28080,674],{"class":587},[551,28082,28083],{"class":561},"@tiptap\u002Fextension-character-count",[551,28085,680],{"class":587},[551,28087,28088,28090,28092,28095,28097,28100,28102,28104,28106,28109],{"class":553,"line":601},[551,28089,584],{"class":583},[551,28091,1273],{"class":587},[551,28093,28094],{"class":594}," AdminEditorToolbar",[551,28096,3348],{"class":587},[551,28098,28099],{"class":594}," defaultEditorItems",[551,28101,1279],{"class":587},[551,28103,671],{"class":583},[551,28105,674],{"class":587},[551,28107,28108],{"class":561},"@\u002Fregistry\u002Fadmin\u002Fui\u002Feditor-toolbar",[551,28110,680],{"class":587},[551,28112,28113,28115,28117,28120,28122,28124,28126,28129],{"class":553,"line":609},[551,28114,584],{"class":583},[551,28116,1273],{"class":587},[551,28118,28119],{"class":594}," AdminRichEditor",[551,28121,1279],{"class":587},[551,28123,671],{"class":583},[551,28125,674],{"class":587},[551,28127,28128],{"class":561},"@\u002Fregistry\u002Fadmin\u002Fui\u002Frich-editor",[551,28130,680],{"class":587},[551,28132,28133,28135,28137],{"class":553,"line":617},[551,28134,784],{"class":587},[551,28136,3276],{"class":738},[551,28138,742],{"class":587},[551,28140,28141],{"class":553,"line":625},[551,28142,1293],{"emptyLinePlaceholder":526},[551,28144,28145,28147,28149],{"class":553,"line":633},[551,28146,735],{"class":587},[551,28148,739],{"class":738},[551,28150,742],{"class":587},[551,28152,28153,28155],{"class":553,"line":641},[551,28154,747],{"class":587},[551,28156,28157],{"class":738},"admin-rich-editor\n",[551,28159,28160,28163,28165,28167,28170],{"class":553,"line":649},[551,28161,28162],{"class":753},"    v-slot",[551,28164,757],{"class":587},[551,28166,760],{"class":587},[551,28168,28169],{"class":561},"{ editor, handlers }",[551,28171,4281],{"class":587},[551,28173,28174,28176,28178,28180,28182],{"class":553,"line":657},[551,28175,4896],{"class":753},[551,28177,757],{"class":587},[551,28179,760],{"class":587},[551,28181,2720],{"class":561},[551,28183,4281],{"class":587},[551,28185,28186,28189,28191,28193,28196],{"class":553,"line":665},[551,28187,28188],{"class":753},"    :extensions",[551,28190,757],{"class":587},[551,28192,760],{"class":587},[551,28194,28195],{"class":561},"[CharacterCount.configure({ limit: 500 })]",[551,28197,4281],{"class":587},[551,28199,28200],{"class":553,"line":901},[551,28201,9184],{"class":587},[551,28203,28204,28206,28209,28212,28215,28217,28219,28222,28224,28226,28228,28230,28233,28235],{"class":553,"line":910},[551,28205,772],{"class":587},[551,28207,28208],{"class":738},"admin-editor-toolbar",[551,28210,28211],{"class":753}," :editor",[551,28213,28214],{"class":753}," :handlers",[551,28216,757],{"class":587},[551,28218,760],{"class":587},[551,28220,28221],{"class":561},"handlers",[551,28223,760],{"class":587},[551,28225,15260],{"class":753},[551,28227,757],{"class":587},[551,28229,760],{"class":587},[551,28231,28232],{"class":561},"defaultEditorItems",[551,28234,760],{"class":587},[551,28236,1449],{"class":587},[551,28238,28239,28241,28244],{"class":553,"line":920},[551,28240,923],{"class":587},[551,28242,28243],{"class":738},"admin-rich-editor",[551,28245,742],{"class":587},[551,28247,28248,28250,28252],{"class":553,"line":930},[551,28249,784],{"class":587},[551,28251,739],{"class":738},[551,28253,742],{"class":587},[692,28255,28256],{"id":28256},"擴充套件",[705,28258,28259,28261,28262,28265,28266,28269,28270,2466],{},[548,28260,28243],{}," 預設只帶 StarterKit，Image、TextAlign、Placeholder 這些要另外裝。自行安裝對應的官方 ",[548,28263,28264],{},"@tiptap\u002Fextension-*"," 套件，",[548,28267,28268],{},".configure({})"," 設定好再傳進 ",[548,28271,28043],{},[539,28273,28275],{"className":726,"code":28274,"language":728,"meta":546,"style":546},"\u003Cscript setup lang=\"ts\">\nimport { Image } from '@tiptap\u002Fextension-image'\nimport TextAlign from '@tiptap\u002Fextension-text-align'\n\u003C\u002Fscript>\n\n\u003Ctemplate>\n  \u003Cadmin-rich-editor\n    :extensions=\"[TextAlign.configure({ types: ['heading', 'paragraph'] }), Image.configure({})]\"\n  \u002F>\n\u003C\u002Ftemplate>\n",[548,28276,28277,28297,28316,28331,28339,28343,28351,28357,28370,28374],{"__ignoreMap":546},[551,28278,28279,28281,28283,28285,28287,28289,28291,28293,28295],{"class":553,"line":554},[551,28280,735],{"class":587},[551,28282,3276],{"class":738},[551,28284,3279],{"class":753},[551,28286,3282],{"class":753},[551,28288,757],{"class":587},[551,28290,760],{"class":587},[551,28292,576],{"class":561},[551,28294,760],{"class":587},[551,28296,742],{"class":587},[551,28298,28299,28301,28303,28306,28308,28310,28312,28314],{"class":553,"line":591},[551,28300,584],{"class":583},[551,28302,1273],{"class":587},[551,28304,28305],{"class":594}," Image",[551,28307,1279],{"class":587},[551,28309,671],{"class":583},[551,28311,674],{"class":587},[551,28313,24722],{"class":561},[551,28315,680],{"class":587},[551,28317,28318,28320,28323,28325,28327,28329],{"class":553,"line":601},[551,28319,584],{"class":583},[551,28321,28322],{"class":594}," TextAlign ",[551,28324,1259],{"class":583},[551,28326,674],{"class":587},[551,28328,22171],{"class":561},[551,28330,680],{"class":587},[551,28332,28333,28335,28337],{"class":553,"line":609},[551,28334,784],{"class":587},[551,28336,3276],{"class":738},[551,28338,742],{"class":587},[551,28340,28341],{"class":553,"line":617},[551,28342,1293],{"emptyLinePlaceholder":526},[551,28344,28345,28347,28349],{"class":553,"line":625},[551,28346,735],{"class":587},[551,28348,739],{"class":738},[551,28350,742],{"class":587},[551,28352,28353,28355],{"class":553,"line":633},[551,28354,747],{"class":587},[551,28356,28157],{"class":738},[551,28358,28359,28361,28363,28365,28368],{"class":553,"line":641},[551,28360,28188],{"class":753},[551,28362,757],{"class":587},[551,28364,760],{"class":587},[551,28366,28367],{"class":561},"[TextAlign.configure({ types: ['heading', 'paragraph'] }), Image.configure({})]",[551,28369,4281],{"class":587},[551,28371,28372],{"class":553,"line":649},[551,28373,4951],{"class":587},[551,28375,28376,28378,28380],{"class":553,"line":657},[551,28377,784],{"class":587},[551,28379,739],{"class":738},[551,28381,742],{"class":587},[692,28383,28385],{"id":28384},"starterkit","StarterKit",[4600,28387,28388],{"id":28388},"配置內建行為",[539,28390,28392],{"className":726,"code":28391,"language":728,"meta":546,"style":546},"\u003Cadmin-rich-editor :starter-kit=\"{ heading: { levels: [1, 2] }, codeBlock: false }\" \u002F>\n",[548,28393,28394],{"__ignoreMap":546},[551,28395,28396,28398,28400,28403,28406,28408,28410,28412,28414,28416,28418,28420,28422,28424,28426,28428,28430,28432,28435,28438,28440,28442,28444,28446],{"class":553,"line":554},[551,28397,735],{"class":587},[551,28399,28243],{"class":738},[551,28401,28402],{"class":587}," :",[551,28404,28405],{"class":753},"starter-kit",[551,28407,757],{"class":587},[551,28409,760],{"class":587},[551,28411,4243],{"class":587},[551,28413,12121],{"class":738},[551,28415,1169],{"class":587},[551,28417,1273],{"class":587},[551,28419,18786],{"class":738},[551,28421,1169],{"class":587},[551,28423,9070],{"class":594},[551,28425,1637],{"class":17275},[551,28427,3348],{"class":587},[551,28429,18797],{"class":17275},[551,28431,3398],{"class":594},[551,28433,28434],{"class":587},"},",[551,28436,28437],{"class":738}," codeBlock",[551,28439,1169],{"class":587},[551,28441,17984],{"class":17983},[551,28443,1279],{"class":587},[551,28445,760],{"class":587},[551,28447,1449],{"class":587},[4600,28449,28451],{"id":28450},"替換內建-extension","替換內建 extension",[705,28453,28454,28455,28458,28459,28461,28462,713],{},"StarterKit 內建了 Link 等 extension。想換成自己的版本，得先用 ",[548,28456,28457],{},":starter-kit"," 把內建的那個關掉，再從 ",[548,28460,28043],{}," 傳入，否則兩個同名 extension 會同時生效。完整可替換清單與限制見 ",[697,28463,28466],{"href":28464,"rel":28465},"https:\u002F\u002Ftiptap.dev\u002Fdocs\u002Feditor\u002Fextensions\u002Ffunctionality\u002Fstarterkit#using-the-starterkit-extension",[701],"tiptap StarterKit 官方文件",[539,28468,28470],{"className":726,"code":28469,"language":728,"meta":546,"style":546},"\u003Cadmin-rich-editor :starter-kit=\"{ link: false }\" :extensions=\"[MyLink]\" \u002F>\n",[548,28471,28472],{"__ignoreMap":546},[551,28473,28474,28476,28478,28480,28482,28484,28486,28488,28491,28493,28495,28497,28499,28501,28503,28505,28507,28510,28512],{"class":553,"line":554},[551,28475,735],{"class":587},[551,28477,28243],{"class":738},[551,28479,28402],{"class":587},[551,28481,28405],{"class":753},[551,28483,757],{"class":587},[551,28485,760],{"class":587},[551,28487,4243],{"class":587},[551,28489,28490],{"class":738}," link",[551,28492,1169],{"class":587},[551,28494,17984],{"class":17983},[551,28496,1279],{"class":587},[551,28498,760],{"class":587},[551,28500,28402],{"class":587},[551,28502,18579],{"class":753},[551,28504,757],{"class":587},[551,28506,760],{"class":587},[551,28508,28509],{"class":594},"[MyLink]",[551,28511,760],{"class":587},[551,28513,1449],{"class":587},[536,28515,27818],{"id":27818},[705,28517,28518,28521,28522,28524,28525,28528],{},[548,28519,28520],{},"AdminEditorToolbar"," 靠 ",[548,28523,7361],{}," 這個陣列決定要畫哪些按鈕，型別是 ",[548,28526,28527],{},"EditorToolbarItem[][]","，外層陣列用來分組。每個 item 可以是：",[1558,28530,28531,28541,28547,28553,28559],{},[1561,28532,28533,28536,28537,28540],{},[548,28534,28535],{},"{ kind: '...' }","：走內建或 ",[548,28538,28539],{},":handlers"," 註冊的 handler",[1561,28542,28543,28546],{},[548,28544,28545],{},"{ items: [...] }","：dropdown（巢狀）",[1561,28548,28549,28552],{},[548,28550,28551],{},"{ type: 'label' | 'separator' }","：純標示",[1561,28554,28555,28558],{},[548,28556,28557],{},"{ onClick }","：無 kind 的純自訂按鈕",[1561,28560,28561,28564],{},[548,28562,28563],{},"{ slot: 'name' }","：改由具名 slot 渲染",[692,28566,28568,28569,19410],{"id":28567},"有狀態的按鈕用-handlers","有狀態的按鈕（用 ",[548,28570,28539],{},[705,28572,28573,28574,28576,28577,14865,28580,14865,28583,28586],{},"如果按鈕的反白（active）、禁用（disabled）要跟著編輯狀態即時變化（按下會 toggle、游標移到粗體文字上時按鈕要亮起來），就得用 ",[548,28575,28539],{}," 註冊一個 kind。handler 裡給 ",[548,28578,28579],{},"canExecute",[548,28581,28582],{},"execute",[548,28584,28585],{},"isActive"," 三個 function，toolbar 會拿它們自動算出當下要不要反白、要不要禁用：",[539,28588,28590],{"className":726,"code":28589,"language":728,"meta":546,"style":546},"\u003Cscript setup lang=\"ts\">\nimport type { EditorToolbarItem } from '@\u002Fregistry\u002Fadmin\u002Fui\u002Feditor-toolbar'\n\nconst handlers = {\n  highlightLine: {\n    canExecute: (editor) => editor.can().toggleNode?.('paragraph', 'paragraph') ?? true,\n    execute: (editor) => editor.chain().focus().toggleMark('bold'),\n    isActive: (editor) => editor.isActive('bold'),\n  },\n}\n\u002F\u002F satisfies 掛在自訂這組，自訂 kind 才有型別檢查：\n\u002F\u002F 打錯或用了沒註冊的 kind 會在編譯期就報錯\nconst items = [\n  ...defaultEditorItems,\n  [{ kind: 'highlightLine', label: '強調', tooltip: { text: '強調' } }] satisfies EditorToolbarItem\u003C\n    typeof handlers\n  >[],\n]\n\u003C\u002Fscript>\n\n\u003Ctemplate>\n  \u003Cadmin-rich-editor v-slot=\"{ editor, handlers: mergedHandlers }\" v-model=\"value\" :handlers=\"handlers\">\n    \u003Cadmin-editor-toolbar :editor :handlers=\"mergedHandlers\" :items=\"items\" \u002F>\n  \u003C\u002Fadmin-rich-editor>\n\u003C\u002Ftemplate>\n",[548,28591,28592,28612,28633,28637,28648,28657,28717,28766,28799,28803,28807,28812,28817,28828,28837,28904,28912,28921,28925,28933,28937,28945,28984,29015,29023],{"__ignoreMap":546},[551,28593,28594,28596,28598,28600,28602,28604,28606,28608,28610],{"class":553,"line":554},[551,28595,735],{"class":587},[551,28597,3276],{"class":738},[551,28599,3279],{"class":753},[551,28601,3282],{"class":753},[551,28603,757],{"class":587},[551,28605,760],{"class":587},[551,28607,576],{"class":561},[551,28609,760],{"class":587},[551,28611,742],{"class":587},[551,28613,28614,28616,28618,28620,28623,28625,28627,28629,28631],{"class":553,"line":591},[551,28615,584],{"class":583},[551,28617,3137],{"class":583},[551,28619,1273],{"class":587},[551,28621,28622],{"class":594}," EditorToolbarItem",[551,28624,1279],{"class":587},[551,28626,671],{"class":583},[551,28628,674],{"class":587},[551,28630,28108],{"class":561},[551,28632,680],{"class":587},[551,28634,28635],{"class":553,"line":601},[551,28636,1293],{"emptyLinePlaceholder":526},[551,28638,28639,28641,28644,28646],{"class":553,"line":609},[551,28640,3321],{"class":753},[551,28642,28643],{"class":594}," handlers ",[551,28645,757],{"class":587},[551,28647,588],{"class":587},[551,28649,28650,28653,28655],{"class":553,"line":617},[551,28651,28652],{"class":738},"  highlightLine",[551,28654,1169],{"class":587},[551,28656,588],{"class":587},[551,28658,28659,28662,28664,28666,28668,28670,28672,28675,28677,28680,28682,28684,28687,28690,28692,28694,28697,28699,28701,28703,28705,28707,28709,28712,28715],{"class":553,"line":625},[551,28660,28661],{"class":1154},"    canExecute",[551,28663,1169],{"class":587},[551,28665,1190],{"class":587},[551,28667,18395],{"class":1193},[551,28669,1197],{"class":587},[551,28671,1200],{"class":753},[551,28673,28674],{"class":594}," editor",[551,28676,1206],{"class":587},[551,28678,28679],{"class":1154},"can",[551,28681,10081],{"class":594},[551,28683,1206],{"class":587},[551,28685,28686],{"class":1154},"toggleNode",[551,28688,28689],{"class":587},"?.",[551,28691,1158],{"class":594},[551,28693,1214],{"class":587},[551,28695,28696],{"class":561},"paragraph",[551,28698,1214],{"class":587},[551,28700,3348],{"class":587},[551,28702,674],{"class":587},[551,28704,28696],{"class":561},[551,28706,1214],{"class":587},[551,28708,10132],{"class":594},[551,28710,28711],{"class":587},"??",[551,28713,28714],{"class":17983}," true",[551,28716,598],{"class":587},[551,28718,28719,28722,28724,28726,28728,28730,28732,28734,28736,28739,28741,28743,28746,28748,28750,28753,28755,28757,28760,28762,28764],{"class":553,"line":633},[551,28720,28721],{"class":1154},"    execute",[551,28723,1169],{"class":587},[551,28725,1190],{"class":587},[551,28727,18395],{"class":1193},[551,28729,1197],{"class":587},[551,28731,1200],{"class":753},[551,28733,28674],{"class":594},[551,28735,1206],{"class":587},[551,28737,28738],{"class":1154},"chain",[551,28740,10081],{"class":594},[551,28742,1206],{"class":587},[551,28744,28745],{"class":1154},"focus",[551,28747,10081],{"class":594},[551,28749,1206],{"class":587},[551,28751,28752],{"class":1154},"toggleMark",[551,28754,1158],{"class":594},[551,28756,1214],{"class":587},[551,28758,28759],{"class":561},"bold",[551,28761,1214],{"class":587},[551,28763,1197],{"class":594},[551,28765,598],{"class":587},[551,28767,28768,28771,28773,28775,28777,28779,28781,28783,28785,28787,28789,28791,28793,28795,28797],{"class":553,"line":641},[551,28769,28770],{"class":1154},"    isActive",[551,28772,1169],{"class":587},[551,28774,1190],{"class":587},[551,28776,18395],{"class":1193},[551,28778,1197],{"class":587},[551,28780,1200],{"class":753},[551,28782,28674],{"class":594},[551,28784,1206],{"class":587},[551,28786,28585],{"class":1154},[551,28788,1158],{"class":594},[551,28790,1214],{"class":587},[551,28792,28759],{"class":561},[551,28794,1214],{"class":587},[551,28796,1197],{"class":594},[551,28798,598],{"class":587},[551,28800,28801],{"class":553,"line":649},[551,28802,10057],{"class":587},[551,28804,28805],{"class":553,"line":657},[551,28806,10148],{"class":587},[551,28808,28809],{"class":553,"line":665},[551,28810,28811],{"class":4831},"\u002F\u002F satisfies 掛在自訂這組，自訂 kind 才有型別檢查：\n",[551,28813,28814],{"class":553,"line":901},[551,28815,28816],{"class":4831},"\u002F\u002F 打錯或用了沒註冊的 kind 會在編譯期就報錯\n",[551,28818,28819,28821,28824,28826],{"class":553,"line":910},[551,28820,3321],{"class":753},[551,28822,28823],{"class":594}," items ",[551,28825,757],{"class":587},[551,28827,1315],{"class":594},[551,28829,28830,28833,28835],{"class":553,"line":920},[551,28831,28832],{"class":587},"  ...",[551,28834,28232],{"class":594},[551,28836,598],{"class":587},[551,28838,28839,28842,28844,28847,28849,28851,28854,28856,28858,28861,28863,28865,28868,28870,28872,28875,28877,28879,28882,28884,28886,28888,28890,28892,28894,28896,28899,28901],{"class":553,"line":930},[551,28840,28841],{"class":594},"  [",[551,28843,4243],{"class":587},[551,28845,28846],{"class":738}," kind",[551,28848,1169],{"class":587},[551,28850,674],{"class":587},[551,28852,28853],{"class":561},"highlightLine",[551,28855,1214],{"class":587},[551,28857,3348],{"class":587},[551,28859,28860],{"class":738}," label",[551,28862,1169],{"class":587},[551,28864,674],{"class":587},[551,28866,28867],{"class":561},"強調",[551,28869,1214],{"class":587},[551,28871,3348],{"class":587},[551,28873,28874],{"class":738}," tooltip",[551,28876,1169],{"class":587},[551,28878,1273],{"class":587},[551,28880,28881],{"class":738}," text",[551,28883,1169],{"class":587},[551,28885,674],{"class":587},[551,28887,28867],{"class":561},[551,28889,1214],{"class":587},[551,28891,1279],{"class":587},[551,28893,1279],{"class":587},[551,28895,3398],{"class":594},[551,28897,28898],{"class":583},"satisfies",[551,28900,28622],{"class":557},[551,28902,28903],{"class":587},"\u003C\n",[551,28905,28906,28909],{"class":553,"line":3536},[551,28907,28908],{"class":587},"    typeof",[551,28910,28911],{"class":594}," handlers\n",[551,28913,28914,28917,28919],{"class":553,"line":4422},[551,28915,28916],{"class":587},"  >",[551,28918,24459],{"class":594},[551,28920,598],{"class":587},[551,28922,28923],{"class":553,"line":6194},[551,28924,9080],{"class":594},[551,28926,28927,28929,28931],{"class":553,"line":6204},[551,28928,784],{"class":587},[551,28930,3276],{"class":738},[551,28932,742],{"class":587},[551,28934,28935],{"class":553,"line":6223},[551,28936,1293],{"emptyLinePlaceholder":526},[551,28938,28939,28941,28943],{"class":553,"line":6233},[551,28940,735],{"class":587},[551,28942,739],{"class":738},[551,28944,742],{"class":587},[551,28946,28947,28949,28951,28953,28955,28957,28960,28962,28964,28966,28968,28970,28972,28974,28976,28978,28980,28982],{"class":553,"line":6242},[551,28948,747],{"class":587},[551,28950,28243],{"class":738},[551,28952,3595],{"class":753},[551,28954,757],{"class":587},[551,28956,760],{"class":587},[551,28958,28959],{"class":561},"{ editor, handlers: mergedHandlers }",[551,28961,760],{"class":587},[551,28963,2867],{"class":753},[551,28965,757],{"class":587},[551,28967,760],{"class":587},[551,28969,2720],{"class":561},[551,28971,760],{"class":587},[551,28973,28214],{"class":753},[551,28975,757],{"class":587},[551,28977,760],{"class":587},[551,28979,28221],{"class":561},[551,28981,760],{"class":587},[551,28983,742],{"class":587},[551,28985,28986,28988,28990,28992,28994,28996,28998,29001,29003,29005,29007,29009,29011,29013],{"class":553,"line":6251},[551,28987,772],{"class":587},[551,28989,28208],{"class":738},[551,28991,28211],{"class":753},[551,28993,28214],{"class":753},[551,28995,757],{"class":587},[551,28997,760],{"class":587},[551,28999,29000],{"class":561},"mergedHandlers",[551,29002,760],{"class":587},[551,29004,15260],{"class":753},[551,29006,757],{"class":587},[551,29008,760],{"class":587},[551,29010,7361],{"class":561},[551,29012,760],{"class":587},[551,29014,1449],{"class":587},[551,29016,29017,29019,29021],{"class":553,"line":524},[551,29018,923],{"class":587},[551,29020,28243],{"class":738},[551,29022,742],{"class":587},[551,29024,29025,29027,29029],{"class":553,"line":6864},[551,29026,784],{"class":587},[551,29028,739],{"class":738},[551,29030,742],{"class":587},[705,29032,29033,29034,29036],{},"toolbar 收的是外層 v-slot 吐出的 ",[548,29035,29000],{},"（你的自訂 kind + StarterKit 內建 kind 已合併），這樣預設按鈕和自訂按鈕才會同時有 handler 可用。",[692,29038,29040,29041,19410],{"id":29039},"無狀態的按鈕用-onclick","無狀態的按鈕（用 ",[548,29042,29043],{},"onClick",[705,29045,29046,29047,29049,29050,29052,29053,29056],{},"純觸發、不需要 active 同步的按鈕（插入內容、開外部視窗…）直接用 ",[548,29048,29043],{},"，免註冊 kind。",[548,29051,29043],{}," 只收得到 ",[548,29054,29055],{},"MouseEvent","、拿不到 editor，要操作 editor 就從 rich-editor 的 exposed ref 取：",[539,29058,29060],{"className":726,"code":29059,"language":728,"meta":546,"style":546},"\u003Cscript setup lang=\"ts\">\nimport { IconSeparator } from '@tabler\u002Ficons-vue'\nimport { useTemplateRef } from 'vue'\nimport { AdminEditorToolbar, defaultEditorItems } from '@\u002Fregistry\u002Fadmin\u002Fui\u002Feditor-toolbar'\nimport { AdminRichEditor } from '@\u002Fregistry\u002Fadmin\u002Fui\u002Frich-editor'\n\nconst richEditor = useTemplateRef\u003CInstanceType\u003Ctypeof AdminRichEditor>>('richEditor')\nconst items = [\n  ...defaultEditorItems,\n  [{\n    label: '插入分隔',\n    icon: IconSeparator,\n    onClick: () => richEditor.value?.editor?.commands.setHorizontalRule(),\n  }],\n]\n\u003C\u002Fscript>\n\n\u003Ctemplate>\n  \u003Cadmin-rich-editor ref=\"richEditor\" v-slot=\"{ editor, handlers }\" v-model=\"value\">\n    \u003Cadmin-editor-toolbar :editor :handlers=\"handlers\" :items=\"items\" \u002F>\n  \u003C\u002Fadmin-rich-editor>\n\u003C\u002Ftemplate>\n",[548,29061,29062,29082,29101,29120,29142,29160,29164,29199,29209,29217,29223,29239,29250,29286,29295,29299,29307,29311,29319,29357,29387,29395],{"__ignoreMap":546},[551,29063,29064,29066,29068,29070,29072,29074,29076,29078,29080],{"class":553,"line":554},[551,29065,735],{"class":587},[551,29067,3276],{"class":738},[551,29069,3279],{"class":753},[551,29071,3282],{"class":753},[551,29073,757],{"class":587},[551,29075,760],{"class":587},[551,29077,576],{"class":561},[551,29079,760],{"class":587},[551,29081,742],{"class":587},[551,29083,29084,29086,29088,29091,29093,29095,29097,29099],{"class":553,"line":591},[551,29085,584],{"class":583},[551,29087,1273],{"class":587},[551,29089,29090],{"class":594}," IconSeparator",[551,29092,1279],{"class":587},[551,29094,671],{"class":583},[551,29096,674],{"class":587},[551,29098,17314],{"class":561},[551,29100,680],{"class":587},[551,29102,29103,29105,29107,29110,29112,29114,29116,29118],{"class":553,"line":601},[551,29104,584],{"class":583},[551,29106,1273],{"class":587},[551,29108,29109],{"class":594}," useTemplateRef",[551,29111,1279],{"class":587},[551,29113,671],{"class":583},[551,29115,674],{"class":587},[551,29117,728],{"class":561},[551,29119,680],{"class":587},[551,29121,29122,29124,29126,29128,29130,29132,29134,29136,29138,29140],{"class":553,"line":609},[551,29123,584],{"class":583},[551,29125,1273],{"class":587},[551,29127,28094],{"class":594},[551,29129,3348],{"class":587},[551,29131,28099],{"class":594},[551,29133,1279],{"class":587},[551,29135,671],{"class":583},[551,29137,674],{"class":587},[551,29139,28108],{"class":561},[551,29141,680],{"class":587},[551,29143,29144,29146,29148,29150,29152,29154,29156,29158],{"class":553,"line":617},[551,29145,584],{"class":583},[551,29147,1273],{"class":587},[551,29149,28119],{"class":594},[551,29151,1279],{"class":587},[551,29153,671],{"class":583},[551,29155,674],{"class":587},[551,29157,28128],{"class":561},[551,29159,680],{"class":587},[551,29161,29162],{"class":553,"line":625},[551,29163,1293],{"emptyLinePlaceholder":526},[551,29165,29166,29168,29171,29173,29175,29177,29180,29183,29185,29188,29190,29192,29195,29197],{"class":553,"line":633},[551,29167,3321],{"class":753},[551,29169,29170],{"class":594}," richEditor ",[551,29172,757],{"class":587},[551,29174,29109],{"class":1154},[551,29176,735],{"class":587},[551,29178,29179],{"class":557},"InstanceType",[551,29181,29182],{"class":587},"\u003Ctypeof",[551,29184,28119],{"class":594},[551,29186,29187],{"class":587},">>",[551,29189,1158],{"class":594},[551,29191,1214],{"class":587},[551,29193,29194],{"class":561},"richEditor",[551,29196,1214],{"class":587},[551,29198,1222],{"class":594},[551,29200,29201,29203,29205,29207],{"class":553,"line":641},[551,29202,3321],{"class":753},[551,29204,28823],{"class":594},[551,29206,757],{"class":587},[551,29208,1315],{"class":594},[551,29210,29211,29213,29215],{"class":553,"line":649},[551,29212,28832],{"class":587},[551,29214,28232],{"class":594},[551,29216,598],{"class":587},[551,29218,29219,29221],{"class":553,"line":657},[551,29220,28841],{"class":594},[551,29222,1161],{"class":587},[551,29224,29225,29228,29230,29232,29235,29237],{"class":553,"line":665},[551,29226,29227],{"class":738},"    label",[551,29229,1169],{"class":587},[551,29231,674],{"class":587},[551,29233,29234],{"class":561},"插入分隔",[551,29236,1214],{"class":587},[551,29238,598],{"class":587},[551,29240,29241,29244,29246,29248],{"class":553,"line":901},[551,29242,29243],{"class":738},"    icon",[551,29245,1169],{"class":587},[551,29247,29090],{"class":594},[551,29249,598],{"class":587},[551,29251,29252,29255,29257,29260,29262,29265,29267,29269,29271,29273,29275,29277,29279,29282,29284],{"class":553,"line":910},[551,29253,29254],{"class":1154},"    onClick",[551,29256,1169],{"class":587},[551,29258,29259],{"class":587}," ()",[551,29261,1200],{"class":753},[551,29263,29264],{"class":594}," richEditor",[551,29266,1206],{"class":587},[551,29268,2720],{"class":594},[551,29270,28689],{"class":587},[551,29272,18395],{"class":594},[551,29274,28689],{"class":587},[551,29276,19584],{"class":594},[551,29278,1206],{"class":587},[551,29280,29281],{"class":1154},"setHorizontalRule",[551,29283,10081],{"class":594},[551,29285,598],{"class":587},[551,29287,29288,29291,29293],{"class":553,"line":920},[551,29289,29290],{"class":587},"  }",[551,29292,3452],{"class":594},[551,29294,598],{"class":587},[551,29296,29297],{"class":553,"line":930},[551,29298,9080],{"class":594},[551,29300,29301,29303,29305],{"class":553,"line":3536},[551,29302,784],{"class":587},[551,29304,3276],{"class":738},[551,29306,742],{"class":587},[551,29308,29309],{"class":553,"line":4422},[551,29310,1293],{"emptyLinePlaceholder":526},[551,29312,29313,29315,29317],{"class":553,"line":6194},[551,29314,735],{"class":587},[551,29316,739],{"class":738},[551,29318,742],{"class":587},[551,29320,29321,29323,29325,29327,29329,29331,29333,29335,29337,29339,29341,29343,29345,29347,29349,29351,29353,29355],{"class":553,"line":6204},[551,29322,747],{"class":587},[551,29324,28243],{"class":738},[551,29326,3427],{"class":753},[551,29328,757],{"class":587},[551,29330,760],{"class":587},[551,29332,29194],{"class":561},[551,29334,760],{"class":587},[551,29336,3595],{"class":753},[551,29338,757],{"class":587},[551,29340,760],{"class":587},[551,29342,28169],{"class":561},[551,29344,760],{"class":587},[551,29346,2867],{"class":753},[551,29348,757],{"class":587},[551,29350,760],{"class":587},[551,29352,2720],{"class":561},[551,29354,760],{"class":587},[551,29356,742],{"class":587},[551,29358,29359,29361,29363,29365,29367,29369,29371,29373,29375,29377,29379,29381,29383,29385],{"class":553,"line":6223},[551,29360,772],{"class":587},[551,29362,28208],{"class":738},[551,29364,28211],{"class":753},[551,29366,28214],{"class":753},[551,29368,757],{"class":587},[551,29370,760],{"class":587},[551,29372,28221],{"class":561},[551,29374,760],{"class":587},[551,29376,15260],{"class":753},[551,29378,757],{"class":587},[551,29380,760],{"class":587},[551,29382,7361],{"class":561},[551,29384,760],{"class":587},[551,29386,1449],{"class":587},[551,29388,29389,29391,29393],{"class":553,"line":6233},[551,29390,923],{"class":587},[551,29392,28243],{"class":738},[551,29394,742],{"class":587},[551,29396,29397,29399,29401],{"class":553,"line":6242},[551,29398,784],{"class":587},[551,29400,739],{"class":738},[551,29402,742],{"class":587},[2817,29404,29406],{"title":29405,"type":2820},"handler vs onClick 怎麼選",[1558,29407,29408,29425,29431],{},[1561,29409,29410,29411,29414,29415,29417,29418,29420,29421,29424],{},"要按鈕",[1135,29412,29413],{},"反白 \u002F disabled 跟著編輯狀態變"," → ",[548,29416,28539],{}," 註冊 kind（",[548,29419,29043],{}," ",[1135,29422,29423],{},"沒有","狀態同步）。",[1561,29426,29427,29428,29430],{},"只是按一下做件事、長相固定 → ",[548,29429,29043],{}," 即可。",[1561,29432,29433,29434,1613,29436,29438,29439,713],{},"item 同時有 ",[548,29435,18171],{},[548,29437,29043],{}," 時，",[1135,29440,29441],{},"kind 優先、onClick 忽略",[692,29443,29445],{"id":29444},"完全自訂渲染用-slot","完全自訂渲染（用 slot）",[705,29447,29448],{},"toolbar 開了兩種 slot，不用改 toolbar 內部即可塞 button \u002F dropdown \u002F 元件：",[1558,29450,29451,29458],{},[1561,29452,29453,29454,29457],{},"通用 ",[548,29455,29456],{},"#item","：攔下每一顆 item，全部自己畫",[1561,29459,29460,29461,29464,29465,29468],{},"具名 slot：在 item 上寫 ",[548,29462,29463],{},"slot: 'xxx'","，對應的 ",[548,29466,29467],{},"\u003Ctemplate #xxx>"," 就會用你的元件取代那顆標準按鈕",[705,29470,29471,29472,29475,29476,29479,29480,14865,29483,29486,29487,29490,29491,29493,29494,29497],{},"兩種 slot 拿到的 props 都是 ",[548,29473,29474],{},"{ item, index, isActive, isDisabled, onClick }","（對齊 Nuxt UI）。這裡的 ",[548,29477,29478],{},"item"," 是原始資料，狀態要自己用 ",[548,29481,29482],{},"isActive(item)",[548,29484,29485],{},"isDisabled(item)"," 算，點擊呼叫 ",[548,29488,29489],{},"onClick(e, item)","。props 裡沒有 ",[548,29492,18395],{},"，需要時從外層 ",[548,29495,29496],{},"\u003CAdminRichEditor v-slot=\"{ editor }\">"," 拿。",[539,29499,29501],{"className":726,"code":29500,"language":728,"meta":546,"style":546},"\u003Ctemplate>\n  \u003Cadmin-rich-editor v-slot=\"{ editor, handlers }\" v-model=\"value\">\n    \u003Cadmin-editor-toolbar :editor :handlers=\"handlers\" :items=\"items\">\n      \u003C!-- slot props 無 editor；從外層 v-slot 的 editor 取 -->\n      \u003Ctemplate #myPicker>\n        \u003Cmy-custom-button :editor=\"editor\" \u002F>\n      \u003C\u002Ftemplate>\n    \u003C\u002Fadmin-editor-toolbar>\n  \u003C\u002Fadmin-rich-editor>\n\u003C\u002Ftemplate>\n",[548,29502,29503,29511,29539,29569,29574,29587,29606,29614,29622,29630],{"__ignoreMap":546},[551,29504,29505,29507,29509],{"class":553,"line":554},[551,29506,735],{"class":587},[551,29508,739],{"class":738},[551,29510,742],{"class":587},[551,29512,29513,29515,29517,29519,29521,29523,29525,29527,29529,29531,29533,29535,29537],{"class":553,"line":591},[551,29514,747],{"class":587},[551,29516,28243],{"class":738},[551,29518,3595],{"class":753},[551,29520,757],{"class":587},[551,29522,760],{"class":587},[551,29524,28169],{"class":561},[551,29526,760],{"class":587},[551,29528,2867],{"class":753},[551,29530,757],{"class":587},[551,29532,760],{"class":587},[551,29534,2720],{"class":561},[551,29536,760],{"class":587},[551,29538,742],{"class":587},[551,29540,29541,29543,29545,29547,29549,29551,29553,29555,29557,29559,29561,29563,29565,29567],{"class":553,"line":601},[551,29542,772],{"class":587},[551,29544,28208],{"class":738},[551,29546,28211],{"class":753},[551,29548,28214],{"class":753},[551,29550,757],{"class":587},[551,29552,760],{"class":587},[551,29554,28221],{"class":561},[551,29556,760],{"class":587},[551,29558,15260],{"class":753},[551,29560,757],{"class":587},[551,29562,760],{"class":587},[551,29564,7361],{"class":561},[551,29566,760],{"class":587},[551,29568,742],{"class":587},[551,29570,29571],{"class":553,"line":609},[551,29572,29573],{"class":4831},"      \u003C!-- slot props 無 editor；從外層 v-slot 的 editor 取 -->\n",[551,29575,29576,29578,29580,29582,29585],{"class":553,"line":617},[551,29577,802],{"class":587},[551,29579,739],{"class":738},[551,29581,8713],{"class":587},[551,29583,29584],{"class":753},"myPicker",[551,29586,742],{"class":587},[551,29588,29589,29591,29594,29596,29598,29600,29602,29604],{"class":553,"line":625},[551,29590,812],{"class":587},[551,29592,29593],{"class":738},"my-custom-button",[551,29595,28211],{"class":753},[551,29597,757],{"class":587},[551,29599,760],{"class":587},[551,29601,18395],{"class":561},[551,29603,760],{"class":587},[551,29605,1449],{"class":587},[551,29607,29608,29610,29612],{"class":553,"line":633},[551,29609,849],{"class":587},[551,29611,739],{"class":738},[551,29613,742],{"class":587},[551,29615,29616,29618,29620],{"class":553,"line":641},[551,29617,913],{"class":587},[551,29619,28208],{"class":738},[551,29621,742],{"class":587},[551,29623,29624,29626,29628],{"class":553,"line":649},[551,29625,923],{"class":587},[551,29627,28243],{"class":738},[551,29629,742],{"class":587},[551,29631,29632,29634,29636],{"class":553,"line":657},[551,29633,784],{"class":587},[551,29635,739],{"class":738},[551,29637,742],{"class":587},[2817,29639,29641],{"title":29640,"type":8626},"slot 內容取不到 provide 的 context",[705,29642,29643,29644,29420,29647,29650,29651,7623,29653,29655],{},"slot 內容定義在 consumer 作用域，",[1135,29645,29646],{},"取不到",[548,29648,29649],{},"\u003CAdminRichEditor>"," provide 的 context。需要 editor 時用外層 ",[548,29652,29496],{},[548,29654,18395],{},"，不要靠 inject。",[536,29657,29659],{"id":29658},"範例接一排對齊按鈕","範例：接一排對齊按鈕",[705,29661,29662,29663,29665,29666,29668,29669,29671],{},"文字對齊要三步：裝上官方 ",[548,29664,277],{}," extension、用 ",[548,29667,28539],{}," 註冊左\u002F中\u002F右三個 kind、再把對應按鈕加進 toolbar。按鈕的反白由 handler 的 ",[548,29670,28585],{}," 自動同步：",[685,29673],{"name":29674},"EditorTextAlignHandlersDemo",[705,29676,29677,29678,14865,29680,14865,29682,713],{},"不想自己接的話，文字顏色、螢光筆、對齊這類功能本系統都有封裝好的擴充元件可直接用，見 ",[697,29679,27860],{"href":471},[697,29681,380],{"href":475},[697,29683,27878],{"href":479},[990,29685,29686],{},"html pre.shiki code .sMK4o, html code.shiki .sMK4o{--shiki-light:#39ADB5;--shiki-default:#89DDFF;--shiki-dark:#89DDFF}html pre.shiki code .swJcz, html code.shiki .swJcz{--shiki-light:#E53935;--shiki-default:#F07178;--shiki-dark:#F07178}html pre.shiki code .spNyl, html code.shiki .spNyl{--shiki-light:#9C3EDA;--shiki-default:#C792EA;--shiki-dark:#C792EA}html pre.shiki code .sfazB, html code.shiki .sfazB{--shiki-light:#91B859;--shiki-default:#C3E88D;--shiki-dark:#C3E88D}html pre.shiki code .s7zQu, html code.shiki .s7zQu{--shiki-light:#39ADB5;--shiki-light-font-style:italic;--shiki-default:#89DDFF;--shiki-default-font-style:italic;--shiki-dark:#89DDFF;--shiki-dark-font-style:italic}html pre.shiki code .sTEyZ, html code.shiki .sTEyZ{--shiki-light:#90A4AE;--shiki-default:#EEFFFF;--shiki-dark:#BABED8}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 pre.shiki code .sbssI, html code.shiki .sbssI{--shiki-light:#F76D47;--shiki-default:#F78C6C;--shiki-dark:#F78C6C}html pre.shiki code .sfNiH, html code.shiki .sfNiH{--shiki-light:#FF5370;--shiki-default:#FF9CAC;--shiki-dark:#FF9CAC}html pre.shiki code .s2Zo4, html code.shiki .s2Zo4{--shiki-light:#6182B8;--shiki-default:#82AAFF;--shiki-dark:#82AAFF}html pre.shiki code .sHdIc, html code.shiki .sHdIc{--shiki-light:#90A4AE;--shiki-light-font-style:italic;--shiki-default:#EEFFFF;--shiki-default-font-style:italic;--shiki-dark:#BABED8;--shiki-dark-font-style:italic}html pre.shiki code .sHwdD, html code.shiki .sHwdD{--shiki-light:#90A4AE;--shiki-light-font-style:italic;--shiki-default:#546E7A;--shiki-default-font-style:italic;--shiki-dark:#676E95;--shiki-dark-font-style:italic}html pre.shiki code .sBMFI, html code.shiki .sBMFI{--shiki-light:#E2931D;--shiki-default:#FFCB6B;--shiki-dark:#FFCB6B}",{"title":546,"searchDepth":601,"depth":601,"links":29688},[29689,29697,29704],{"id":28032,"depth":591,"text":28033,"children":29690},[29691,29692,29693],{"id":28036,"depth":601,"text":28037},{"id":28256,"depth":601,"text":28256},{"id":28384,"depth":601,"text":28385,"children":29694},[29695,29696],{"id":28388,"depth":609,"text":28388},{"id":28450,"depth":609,"text":28451},{"id":27818,"depth":591,"text":27818,"children":29698},[29699,29701,29703],{"id":28567,"depth":601,"text":29700},"有狀態的按鈕（用 :handlers）",{"id":29039,"depth":601,"text":29702},"無狀態的按鈕（用 onClick）",{"id":29444,"depth":601,"text":29445},{"id":29658,"depth":591,"text":29659},"加 extension、客製 toolbar，塞進自己的按鈕、下拉選單與元件。",{},{"title":393,"description":29705},"XT3OLI3A8Gas_D7fnK6yLTIqQRNXttaPGX9iN6RjA6k",{"id":29710,"title":384,"body":29711,"component":526,"description":29814,"extension":1015,"links":29815,"meta":29817,"navigation":526,"new":18,"path":402,"seo":29818,"stem":403,"wrapperKind":19,"__hash__":29819},"docs\u002Fdocs\u002Feditor\u002F3.core\u002F1.editor.md",{"type":533,"value":29712,"toc":29804},[29713,29715,29733,29758,29760,29763,29766,29770,29773,29776,29780,29786,29789,29791,29794,29797,29799,29801],[536,29714,507],{"id":507},[539,29716,29718],{"className":541,"code":29717,"filename":543,"language":544,"meta":545,"style":546},"pnpm dlx shadcn-vue add @admin\u002Feditor\n",[548,29719,29720],{"__ignoreMap":546},[551,29721,29722,29724,29726,29728,29730],{"class":553,"line":554},[551,29723,558],{"class":557},[551,29725,562],{"class":561},[551,29727,565],{"class":561},[551,29729,568],{"class":561},[551,29731,29732],{"class":561}," @admin\u002Feditor\n",[539,29734,29736],{"className":574,"code":29735,"language":576,"meta":546,"style":546},"import { AdminEditor } from '@\u002Fregistry\u002Fadmin\u002Fui\u002Feditor'\n",[548,29737,29738],{"__ignoreMap":546},[551,29739,29740,29742,29744,29747,29749,29751,29753,29756],{"class":553,"line":554},[551,29741,584],{"class":583},[551,29743,1273],{"class":587},[551,29745,29746],{"class":594}," AdminEditor",[551,29748,1279],{"class":587},[551,29750,671],{"class":583},[551,29752,674],{"class":587},[551,29754,29755],{"class":561},"@\u002Fregistry\u002Fadmin\u002Fui\u002Feditor",[551,29757,680],{"class":587},[536,29759,683],{"id":683},[705,29761,29762],{},"傳入最小 ProseMirror schema（Document \u002F Paragraph \u002F Text）就是一個純文字輸入框，連粗體都沒有：",[685,29764],{"name":29765},"EditorBareDemo",[536,29767,29769],{"id":29768},"搭配-starterkit","搭配 StarterKit",[705,29771,29772],{},"要粗體、標題、清單這些基本格式，把 StarterKit 傳進來：",[685,29774],{"name":29775},"EditorDemo",[536,29777,29779],{"id":29778},"自訂-toolbarslot","自訂 toolbar（slot）",[705,29781,29782,29783,29785],{},"透過 default slot 取得 ",[548,29784,18395],{}," instance，渲染自訂 toolbar：",[685,29787],{"name":29788},"EditorCustomToolbarDemo",[536,29790,720],{"id":719},[692,29792,29793],{"id":29793},"admin-editor",[940,29795],{"component":29796},"AdminEditor",[536,29798,985],{"id":985},[987,29800],{"component":29796},[990,29802,29803],{},"html pre.shiki code .sBMFI, html code.shiki .sBMFI{--shiki-light:#E2931D;--shiki-default:#FFCB6B;--shiki-dark:#FFCB6B}html pre.shiki code .sfazB, html code.shiki .sfazB{--shiki-light:#91B859;--shiki-default:#C3E88D;--shiki-dark:#C3E88D}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 pre.shiki code .s7zQu, html code.shiki .s7zQu{--shiki-light:#39ADB5;--shiki-light-font-style:italic;--shiki-default:#89DDFF;--shiki-default-font-style:italic;--shiki-dark:#89DDFF;--shiki-dark-font-style:italic}html pre.shiki code .sMK4o, html code.shiki .sMK4o{--shiki-light:#39ADB5;--shiki-default:#89DDFF;--shiki-dark:#89DDFF}html pre.shiki code .sTEyZ, html code.shiki .sTEyZ{--shiki-light:#90A4AE;--shiki-default:#EEFFFF;--shiki-dark:#BABED8}",{"title":546,"searchDepth":601,"depth":601,"links":29805},[29806,29807,29808,29809,29810,29813],{"id":507,"depth":591,"text":507},{"id":683,"depth":591,"text":683},{"id":29768,"depth":591,"text":29769},{"id":29778,"depth":591,"text":29779},{"id":719,"depth":591,"text":720,"children":29811},[29812],{"id":29793,"depth":601,"text":29793},{"id":985,"depth":591,"text":985},"基於 @tiptap\u002Fvue-3 的空白編輯器核心；無 extension、無 toolbar。",{"doc":29816},"https:\u002F\u002Ftiptap.dev\u002Fdocs",{},{"title":384,"description":29814},"iLDMKyUh1BeBbsUrZVZ04Xs-Y_rcjF4MxNM9bBnKGDI",{"id":29821,"title":405,"body":29822,"component":526,"description":31657,"extension":1015,"links":31658,"meta":31660,"navigation":526,"new":18,"path":406,"seo":31661,"stem":407,"wrapperKind":19,"__hash__":31662},"docs\u002Fdocs\u002Feditor\u002F3.core\u002F2.rich-editor.md",{"type":533,"value":29823,"toc":31632},[29824,29826,29844,29867,29869,29885,29888,29899,29902,29918,29936,30079,30090,30094,30101,30126,30341,30348,30350,30354,30364,30367,30371,30377,30394,30397,30401,30427,30430,30436,30439,30443,30719,30723,30731,31134,31136,31156,31170,31189,31191,31195,31207,31210,31213,31219,31452,31455,31458,31491,31495,31508,31525,31540,31542,31544,31621,31623,31625,31627,31629],[536,29825,507],{"id":507},[539,29827,29829],{"className":541,"code":29828,"filename":543,"language":544,"meta":545,"style":546},"pnpm dlx shadcn-vue add @admin\u002Frich-editor\n",[548,29830,29831],{"__ignoreMap":546},[551,29832,29833,29835,29837,29839,29841],{"class":553,"line":554},[551,29834,558],{"class":557},[551,29836,562],{"class":561},[551,29838,565],{"class":561},[551,29840,568],{"class":561},[551,29842,29843],{"class":561}," @admin\u002Frich-editor\n",[539,29845,29847],{"className":574,"code":29846,"language":576,"meta":546,"style":546},"import { AdminRichEditor } from '@\u002Fregistry\u002Fadmin\u002Fui\u002Frich-editor'\n",[548,29848,29849],{"__ignoreMap":546},[551,29850,29851,29853,29855,29857,29859,29861,29863,29865],{"class":553,"line":554},[551,29852,584],{"class":583},[551,29854,1273],{"class":587},[551,29856,28119],{"class":594},[551,29858,1279],{"class":587},[551,29860,671],{"class":583},[551,29862,674],{"class":587},[551,29864,28128],{"class":561},[551,29866,680],{"class":587},[536,29868,683],{"id":683},[705,29870,29871,29872,29874,29875,29878,29879,29881,29882,29884],{},"掛上 ",[548,29873,2724],{}," 即可編輯。StarterKit 快捷鍵與輸入規則：",[548,29876,29877],{},"Ctrl+B"," 粗體、行首 ",[548,29880,19402],{}," 加空格變標題、",[548,29883,21133],{}," 加空格變清單：",[685,29886],{"name":29887},"RichEditorBasicDemo",[2806,29889,29890],{},[705,29891,29892,29893,29898],{},"要按鈕式的工具列，裝 opt-in 的 ",[697,29894,29895],{"href":410},[548,29896,29897],{},"@admin\u002Feditor-toolbar","，下一章介紹。",[536,29900,29901],{"id":29901},"內容樣式",[705,29903,29904,1123,29906,29909,29910,29913,29914,29917],{},[548,29905,29649],{},[548,29907,29908],{},"\u003CAdminEditor>"," 本身不套用任何內容外觀。要讓標題、清單這些內容長出樣子，把樣式常數用 ",[548,29911,29912],{},"cn(...)"," 組好、經 ",[548,29915,29916],{},":ui=\"{ base: ... }\""," 注入內容節點：",[1558,29919,29920,29928],{},[1561,29921,29922,8904,29925,29927],{},[548,29923,29924],{},"baseProseClass",[548,29926,29755],{},"）— block 間距、段落行高",[1561,29929,29930,8904,29933,29935],{},[548,29931,29932],{},"starterKitProseClass",[548,29934,28128],{},"）— 標題 \u002F 清單 \u002F 程式碼 \u002F 引言 \u002F hr \u002F link",[539,29937,29939],{"className":726,"code":29938,"language":728,"meta":546,"style":546},"\u003Cscript setup lang=\"ts\">\nimport { cn } from '@\u002Flib\u002Futils'\nimport { baseProseClass } from '@\u002Fregistry\u002Fadmin\u002Fui\u002Feditor'\nimport { AdminRichEditor, starterKitProseClass } from '@\u002Fregistry\u002Fadmin\u002Fui\u002Frich-editor'\n\u003C\u002Fscript>\n\n\u003Ctemplate>\n  \u003Cadmin-rich-editor v-model=\"value\" :ui=\"{ base: cn(baseProseClass, starterKitProseClass) }\" \u002F>\n\u003C\u002Ftemplate>\n",[548,29940,29941,29961,29979,29998,30021,30029,30033,30041,30071],{"__ignoreMap":546},[551,29942,29943,29945,29947,29949,29951,29953,29955,29957,29959],{"class":553,"line":554},[551,29944,735],{"class":587},[551,29946,3276],{"class":738},[551,29948,3279],{"class":753},[551,29950,3282],{"class":753},[551,29952,757],{"class":587},[551,29954,760],{"class":587},[551,29956,576],{"class":561},[551,29958,760],{"class":587},[551,29960,742],{"class":587},[551,29962,29963,29965,29967,29969,29971,29973,29975,29977],{"class":553,"line":591},[551,29964,584],{"class":583},[551,29966,1273],{"class":587},[551,29968,18247],{"class":594},[551,29970,1279],{"class":587},[551,29972,671],{"class":583},[551,29974,674],{"class":587},[551,29976,18256],{"class":561},[551,29978,680],{"class":587},[551,29980,29981,29983,29985,29988,29990,29992,29994,29996],{"class":553,"line":601},[551,29982,584],{"class":583},[551,29984,1273],{"class":587},[551,29986,29987],{"class":594}," baseProseClass",[551,29989,1279],{"class":587},[551,29991,671],{"class":583},[551,29993,674],{"class":587},[551,29995,29755],{"class":561},[551,29997,680],{"class":587},[551,29999,30000,30002,30004,30006,30008,30011,30013,30015,30017,30019],{"class":553,"line":609},[551,30001,584],{"class":583},[551,30003,1273],{"class":587},[551,30005,28119],{"class":594},[551,30007,3348],{"class":587},[551,30009,30010],{"class":594}," starterKitProseClass",[551,30012,1279],{"class":587},[551,30014,671],{"class":583},[551,30016,674],{"class":587},[551,30018,28128],{"class":561},[551,30020,680],{"class":587},[551,30022,30023,30025,30027],{"class":553,"line":617},[551,30024,784],{"class":587},[551,30026,3276],{"class":738},[551,30028,742],{"class":587},[551,30030,30031],{"class":553,"line":625},[551,30032,1293],{"emptyLinePlaceholder":526},[551,30034,30035,30037,30039],{"class":553,"line":633},[551,30036,735],{"class":587},[551,30038,739],{"class":738},[551,30040,742],{"class":587},[551,30042,30043,30045,30047,30049,30051,30053,30055,30057,30060,30062,30064,30067,30069],{"class":553,"line":641},[551,30044,747],{"class":587},[551,30046,28243],{"class":738},[551,30048,2867],{"class":753},[551,30050,757],{"class":587},[551,30052,760],{"class":587},[551,30054,2720],{"class":561},[551,30056,760],{"class":587},[551,30058,30059],{"class":753}," :ui",[551,30061,757],{"class":587},[551,30063,760],{"class":587},[551,30065,30066],{"class":561},"{ base: cn(baseProseClass, starterKitProseClass) }",[551,30068,760],{"class":587},[551,30070,1449],{"class":587},[551,30072,30073,30075,30077],{"class":553,"line":649},[551,30074,784],{"class":587},[551,30076,739],{"class":738},[551,30078,742],{"class":587},[705,30080,30081,30082,30085,30086,30089],{},"擴充包各自帶自己的樣式常數（如 ",[548,30083,30084],{},"editorTableClass","），裝了就一起放進 ",[548,30087,30088],{},"cn","，細節見各包文件。",[692,30091,30093],{"id":30092},"前台唯讀-viewer","前台唯讀 viewer",[705,30095,30096,30097,30100],{},"後台存的 HTML 要在前台展示時，不需要再掛一顆 editor。樣式常數就是一般的 package export，前台 import 同一份、套在 ",[548,30098,30099],{},"v-html"," 容器上，兩邊外觀就一致，之後改樣式也只改一處。",[705,30102,30103,30104,1123,30106,30108,30109,30112,30113,30116,30117,30119,30120,30125],{},"前台容器的直接子元素就是 ",[548,30105,705],{},[548,30107,19991],{}," 這些內容節點，和後台 ",[548,30110,30111],{},":ui.base"," 注入的是同一層，直接用 ",[548,30114,30115],{},":class"," 套即可。",[548,30118,30099],{}," 輸出前記得先過一層 sanitizer（例如 ",[697,30121,30124],{"href":30122,"rel":30123},"https:\u002F\u002Fgithub.com\u002Fcure53\u002FDOMPurify",[701],"DOMPurify","），內容出自多人後台或舊資料匯入時尤其重要：",[539,30127,30129],{"className":726,"code":30128,"language":728,"meta":546,"style":546},"\u003Cscript setup lang=\"ts\">\nimport DOMPurify from 'dompurify'\nimport { cn } from '@\u002Flib\u002Futils'\nimport { baseProseClass } from '@\u002Fregistry\u002Fadmin\u002Fui\u002Feditor'\nimport { starterKitProseClass } from '@\u002Fregistry\u002Fadmin\u002Fui\u002Frich-editor'\n\nconst html = ref('') \u002F\u002F 後台存下的 HTML\nconst safeHtml = computed(() => DOMPurify.sanitize(html.value))\n\u003C\u002Fscript>\n\n\u003Ctemplate>\n  \u003Cdiv :class=\"cn(baseProseClass, starterKitProseClass)\" v-html=\"safeHtml\">\u003C\u002Fdiv>\n\u003C\u002Ftemplate>\n",[548,30130,30131,30151,30167,30185,30203,30221,30225,30245,30279,30287,30291,30299,30333],{"__ignoreMap":546},[551,30132,30133,30135,30137,30139,30141,30143,30145,30147,30149],{"class":553,"line":554},[551,30134,735],{"class":587},[551,30136,3276],{"class":738},[551,30138,3279],{"class":753},[551,30140,3282],{"class":753},[551,30142,757],{"class":587},[551,30144,760],{"class":587},[551,30146,576],{"class":561},[551,30148,760],{"class":587},[551,30150,742],{"class":587},[551,30152,30153,30155,30158,30160,30162,30165],{"class":553,"line":591},[551,30154,584],{"class":583},[551,30156,30157],{"class":594}," DOMPurify ",[551,30159,1259],{"class":583},[551,30161,674],{"class":587},[551,30163,30164],{"class":561},"dompurify",[551,30166,680],{"class":587},[551,30168,30169,30171,30173,30175,30177,30179,30181,30183],{"class":553,"line":601},[551,30170,584],{"class":583},[551,30172,1273],{"class":587},[551,30174,18247],{"class":594},[551,30176,1279],{"class":587},[551,30178,671],{"class":583},[551,30180,674],{"class":587},[551,30182,18256],{"class":561},[551,30184,680],{"class":587},[551,30186,30187,30189,30191,30193,30195,30197,30199,30201],{"class":553,"line":609},[551,30188,584],{"class":583},[551,30190,1273],{"class":587},[551,30192,29987],{"class":594},[551,30194,1279],{"class":587},[551,30196,671],{"class":583},[551,30198,674],{"class":587},[551,30200,29755],{"class":561},[551,30202,680],{"class":587},[551,30204,30205,30207,30209,30211,30213,30215,30217,30219],{"class":553,"line":617},[551,30206,584],{"class":583},[551,30208,1273],{"class":587},[551,30210,30010],{"class":594},[551,30212,1279],{"class":587},[551,30214,671],{"class":583},[551,30216,674],{"class":587},[551,30218,28128],{"class":561},[551,30220,680],{"class":587},[551,30222,30223],{"class":553,"line":625},[551,30224,1293],{"emptyLinePlaceholder":526},[551,30226,30227,30229,30232,30234,30236,30238,30240,30242],{"class":553,"line":633},[551,30228,3321],{"class":753},[551,30230,30231],{"class":594}," html ",[551,30233,757],{"class":587},[551,30235,3427],{"class":1154},[551,30237,1158],{"class":594},[551,30239,8639],{"class":587},[551,30241,10132],{"class":594},[551,30243,30244],{"class":4831},"\u002F\u002F 後台存下的 HTML\n",[551,30246,30247,30249,30252,30254,30257,30259,30261,30263,30266,30268,30271,30274,30276],{"class":553,"line":641},[551,30248,3321],{"class":753},[551,30250,30251],{"class":594}," safeHtml ",[551,30253,757],{"class":587},[551,30255,30256],{"class":1154}," computed",[551,30258,1158],{"class":594},[551,30260,10081],{"class":587},[551,30262,1200],{"class":753},[551,30264,30265],{"class":594}," DOMPurify",[551,30267,1206],{"class":587},[551,30269,30270],{"class":1154},"sanitize",[551,30272,30273],{"class":594},"(html",[551,30275,1206],{"class":587},[551,30277,30278],{"class":594},"value))\n",[551,30280,30281,30283,30285],{"class":553,"line":649},[551,30282,784],{"class":587},[551,30284,3276],{"class":738},[551,30286,742],{"class":587},[551,30288,30289],{"class":553,"line":657},[551,30290,1293],{"emptyLinePlaceholder":526},[551,30292,30293,30295,30297],{"class":553,"line":665},[551,30294,735],{"class":587},[551,30296,739],{"class":738},[551,30298,742],{"class":587},[551,30300,30301,30303,30305,30307,30309,30311,30314,30316,30318,30320,30322,30325,30327,30329,30331],{"class":553,"line":901},[551,30302,747],{"class":587},[551,30304,13312],{"class":738},[551,30306,18287],{"class":753},[551,30308,757],{"class":587},[551,30310,760],{"class":587},[551,30312,30313],{"class":561},"cn(baseProseClass, starterKitProseClass)",[551,30315,760],{"class":587},[551,30317,18299],{"class":753},[551,30319,757],{"class":587},[551,30321,760],{"class":587},[551,30323,30324],{"class":561},"safeHtml",[551,30326,760],{"class":587},[551,30328,3659],{"class":587},[551,30330,13312],{"class":738},[551,30332,742],{"class":587},[551,30334,30335,30337,30339],{"class":553,"line":910},[551,30336,784],{"class":587},[551,30338,739],{"class":738},[551,30340,742],{"class":587},[705,30342,30343,30344,30347],{},"內容若存的是 JSON（ProseMirror doc）而不是 HTML，先用 tiptap 的 ",[548,30345,30346],{},"generateHTML(json, extensions)"," 轉成 HTML，再照上面套樣式。",[536,30349,690],{"id":690},[692,30351,30353],{"id":30352},"客製-starterkit精簡版","客製 starterKit（精簡版）",[705,30355,30356,30357,30360,30361,30363],{},"透過 ",[548,30358,30359],{},":starter-kit=\"{ heading: false, codeBlock: false, ... }\""," 關閉 sub-extension，自寫 ",[548,30362,7361],{}," 收緊功能。適合留言情境：",[685,30365],{"name":30366},"RichEditorStarterKitDemo",[692,30368,30370],{"id":30369},"唯讀-預覽模式","唯讀 \u002F 預覽模式",[705,30372,30373,30376],{},[548,30374,30375],{},":editable=\"false\""," 切到唯讀：",[1558,30378,30379,30385,30388],{},[1561,30380,30381,30382],{},"無編輯游標、無 focus ring、",[548,30383,30384],{},"cursor: default",[1561,30386,30387],{},"文字仍可選取（允許 Ctrl+C 複製）",[1561,30389,30390,30393],{},[548,30391,30392],{},"\u003CAdminEditorToolbar>"," 可以選擇不渲染（純展示）",[685,30395],{"name":30396},"RichEditorReadonlyDemo",[692,30398,30400],{"id":30399},"表單整合vee-validate","表單整合（vee-validate）",[705,30402,30403,7623,30405,30407,30408,30411,30412,30415,30416,1123,30418,30420,30421,30423,30424,30426],{},[548,30404,29649],{},[548,30406,2724],{}," 可直接接 vee-validate 的 ",[548,30409,30410],{},"useField"," value。用 ",[548,30413,30414],{},"useField('content', rules)"," 取得 ",[548,30417,2720],{},[548,30419,8087],{},"，把 ",[548,30422,2720],{}," 綁到 editor、",[548,30425,8087],{}," 顯示錯誤即可：",[685,30428],{"name":30429},"RichEditorFormDemo",[705,30431,30432,30433,2729],{},"要在 error 狀態顯示錯誤邊框，自行透過 ",[548,30434,30435],{},":class=\"{ 'border-error-50': errorMessage }\"",[536,30437,30438],{"id":30438},"進階使用",[692,30440,30442],{"id":30441},"加自訂-extension","加自訂 extension",[539,30444,30446],{"className":726,"code":30445,"language":728,"meta":546,"style":546},"\u003Cscript setup lang=\"ts\">\nimport { Underline } from '@tiptap\u002Fextension-underline'\nimport { AdminEditorToolbar, defaultEditorItems } from '@\u002Fregistry\u002Fadmin\u002Fui\u002Feditor-toolbar'\nimport { AdminRichEditor } from '@\u002Fregistry\u002Fadmin\u002Fui\u002Frich-editor'\n\nconst value = ref('\u003Cp>支援 underline 的內容\u003C\u002Fp>')\nconst items = [\n  ...defaultEditorItems,\n  [{ kind: 'mark', mark: 'underline', tooltip: { text: '底線' } }],\n]\n\u003C\u002Fscript>\n\n\u003Ctemplate>\n  \u003Cadmin-rich-editor v-slot=\"{ editor }\" v-model=\"value\" :extensions=\"[Underline]\">\n    \u003Cadmin-editor-toolbar :editor :items \u002F>\n  \u003C\u002Fadmin-rich-editor>\n\u003C\u002Ftemplate>\n",[548,30447,30448,30468,30487,30509,30527,30531,30552,30562,30570,30626,30630,30638,30642,30650,30691,30703,30711],{"__ignoreMap":546},[551,30449,30450,30452,30454,30456,30458,30460,30462,30464,30466],{"class":553,"line":554},[551,30451,735],{"class":587},[551,30453,3276],{"class":738},[551,30455,3279],{"class":753},[551,30457,3282],{"class":753},[551,30459,757],{"class":587},[551,30461,760],{"class":587},[551,30463,576],{"class":561},[551,30465,760],{"class":587},[551,30467,742],{"class":587},[551,30469,30470,30472,30474,30477,30479,30481,30483,30485],{"class":553,"line":591},[551,30471,584],{"class":583},[551,30473,1273],{"class":587},[551,30475,30476],{"class":594}," Underline",[551,30478,1279],{"class":587},[551,30480,671],{"class":583},[551,30482,674],{"class":587},[551,30484,27040],{"class":561},[551,30486,680],{"class":587},[551,30488,30489,30491,30493,30495,30497,30499,30501,30503,30505,30507],{"class":553,"line":601},[551,30490,584],{"class":583},[551,30492,1273],{"class":587},[551,30494,28094],{"class":594},[551,30496,3348],{"class":587},[551,30498,28099],{"class":594},[551,30500,1279],{"class":587},[551,30502,671],{"class":583},[551,30504,674],{"class":587},[551,30506,28108],{"class":561},[551,30508,680],{"class":587},[551,30510,30511,30513,30515,30517,30519,30521,30523,30525],{"class":553,"line":609},[551,30512,584],{"class":583},[551,30514,1273],{"class":587},[551,30516,28119],{"class":594},[551,30518,1279],{"class":587},[551,30520,671],{"class":583},[551,30522,674],{"class":587},[551,30524,28128],{"class":561},[551,30526,680],{"class":587},[551,30528,30529],{"class":553,"line":617},[551,30530,1293],{"emptyLinePlaceholder":526},[551,30532,30533,30535,30537,30539,30541,30543,30545,30548,30550],{"class":553,"line":625},[551,30534,3321],{"class":753},[551,30536,3422],{"class":594},[551,30538,757],{"class":587},[551,30540,3427],{"class":1154},[551,30542,1158],{"class":594},[551,30544,1214],{"class":587},[551,30546,30547],{"class":561},"\u003Cp>支援 underline 的內容\u003C\u002Fp>",[551,30549,1214],{"class":587},[551,30551,1222],{"class":594},[551,30553,30554,30556,30558,30560],{"class":553,"line":633},[551,30555,3321],{"class":753},[551,30557,28823],{"class":594},[551,30559,757],{"class":587},[551,30561,1315],{"class":594},[551,30563,30564,30566,30568],{"class":553,"line":641},[551,30565,28832],{"class":587},[551,30567,28232],{"class":594},[551,30569,598],{"class":587},[551,30571,30572,30574,30576,30578,30580,30582,30584,30586,30588,30591,30593,30595,30598,30600,30602,30604,30606,30608,30610,30612,30614,30616,30618,30620,30622,30624],{"class":553,"line":649},[551,30573,28841],{"class":594},[551,30575,4243],{"class":587},[551,30577,28846],{"class":738},[551,30579,1169],{"class":587},[551,30581,674],{"class":587},[551,30583,27604],{"class":561},[551,30585,1214],{"class":587},[551,30587,3348],{"class":587},[551,30589,30590],{"class":738}," mark",[551,30592,1169],{"class":587},[551,30594,674],{"class":587},[551,30596,30597],{"class":561},"underline",[551,30599,1214],{"class":587},[551,30601,3348],{"class":587},[551,30603,28874],{"class":738},[551,30605,1169],{"class":587},[551,30607,1273],{"class":587},[551,30609,28881],{"class":738},[551,30611,1169],{"class":587},[551,30613,674],{"class":587},[551,30615,18970],{"class":561},[551,30617,1214],{"class":587},[551,30619,1279],{"class":587},[551,30621,1279],{"class":587},[551,30623,3452],{"class":594},[551,30625,598],{"class":587},[551,30627,30628],{"class":553,"line":657},[551,30629,9080],{"class":594},[551,30631,30632,30634,30636],{"class":553,"line":665},[551,30633,784],{"class":587},[551,30635,3276],{"class":738},[551,30637,742],{"class":587},[551,30639,30640],{"class":553,"line":901},[551,30641,1293],{"emptyLinePlaceholder":526},[551,30643,30644,30646,30648],{"class":553,"line":910},[551,30645,735],{"class":587},[551,30647,739],{"class":738},[551,30649,742],{"class":587},[551,30651,30652,30654,30656,30658,30660,30662,30665,30667,30669,30671,30673,30675,30677,30680,30682,30684,30687,30689],{"class":553,"line":920},[551,30653,747],{"class":587},[551,30655,28243],{"class":738},[551,30657,3595],{"class":753},[551,30659,757],{"class":587},[551,30661,760],{"class":587},[551,30663,30664],{"class":561},"{ editor }",[551,30666,760],{"class":587},[551,30668,2867],{"class":753},[551,30670,757],{"class":587},[551,30672,760],{"class":587},[551,30674,2720],{"class":561},[551,30676,760],{"class":587},[551,30678,30679],{"class":753}," :extensions",[551,30681,757],{"class":587},[551,30683,760],{"class":587},[551,30685,30686],{"class":561},"[Underline]",[551,30688,760],{"class":587},[551,30690,742],{"class":587},[551,30692,30693,30695,30697,30699,30701],{"class":553,"line":930},[551,30694,772],{"class":587},[551,30696,28208],{"class":738},[551,30698,28211],{"class":753},[551,30700,15260],{"class":753},[551,30702,1449],{"class":587},[551,30704,30705,30707,30709],{"class":553,"line":3536},[551,30706,923],{"class":587},[551,30708,28243],{"class":738},[551,30710,742],{"class":587},[551,30712,30713,30715,30717],{"class":553,"line":4422},[551,30714,784],{"class":587},[551,30716,739],{"class":738},[551,30718,742],{"class":587},[692,30720,30722],{"id":30721},"加自訂-kind-handler","加自訂 kind handler",[705,30724,30356,30725,30727,30728,2466],{},[548,30726,28221],{}," prop 新增任意 kind，toolbar items 直接寫 ",[548,30729,30730],{},"{ kind: 'myCustom' }",[539,30732,30734],{"className":726,"code":30733,"language":728,"meta":546,"style":546},"\u003Cscript setup lang=\"ts\">\nimport { AdminEditorToolbar, defaultEditorItems } from '@\u002Fregistry\u002Fadmin\u002Fui\u002Feditor-toolbar'\nimport { AdminRichEditor } from '@\u002Fregistry\u002Fadmin\u002Fui\u002Frich-editor'\n\nconst handlers = {\n  insertVariable: {\n    canExecute: () => true,\n    execute: (editor: any, cmd: any) => editor.chain().focus().insertContent(`{{ ${cmd.name} }}`),\n    isActive: () => false,\n  },\n}\n\nconst items = [\n  ...defaultEditorItems,\n  [\n    { kind: 'insertVariable', name: 'username', label: '使用者名稱' },\n    { kind: 'insertVariable', name: 'orderId', label: '訂單編號' },\n  ],\n]\n\u003C\u002Fscript>\n\n\u003Ctemplate>\n  \u003Cadmin-rich-editor v-slot=\"{ editor }\" v-model=\"value\" :handlers>\n    \u003Cadmin-editor-toolbar :editor :items \u002F>\n  \u003C\u002Fadmin-rich-editor>\n\u003C\u002Ftemplate>\n",[548,30735,30736,30756,30778,30796,30800,30810,30819,30833,30909,30923,30927,30931,30935,30945,30953,30958,31003,31045,31052,31056,31064,31068,31076,31106,31118,31126],{"__ignoreMap":546},[551,30737,30738,30740,30742,30744,30746,30748,30750,30752,30754],{"class":553,"line":554},[551,30739,735],{"class":587},[551,30741,3276],{"class":738},[551,30743,3279],{"class":753},[551,30745,3282],{"class":753},[551,30747,757],{"class":587},[551,30749,760],{"class":587},[551,30751,576],{"class":561},[551,30753,760],{"class":587},[551,30755,742],{"class":587},[551,30757,30758,30760,30762,30764,30766,30768,30770,30772,30774,30776],{"class":553,"line":591},[551,30759,584],{"class":583},[551,30761,1273],{"class":587},[551,30763,28094],{"class":594},[551,30765,3348],{"class":587},[551,30767,28099],{"class":594},[551,30769,1279],{"class":587},[551,30771,671],{"class":583},[551,30773,674],{"class":587},[551,30775,28108],{"class":561},[551,30777,680],{"class":587},[551,30779,30780,30782,30784,30786,30788,30790,30792,30794],{"class":553,"line":601},[551,30781,584],{"class":583},[551,30783,1273],{"class":587},[551,30785,28119],{"class":594},[551,30787,1279],{"class":587},[551,30789,671],{"class":583},[551,30791,674],{"class":587},[551,30793,28128],{"class":561},[551,30795,680],{"class":587},[551,30797,30798],{"class":553,"line":609},[551,30799,1293],{"emptyLinePlaceholder":526},[551,30801,30802,30804,30806,30808],{"class":553,"line":617},[551,30803,3321],{"class":753},[551,30805,28643],{"class":594},[551,30807,757],{"class":587},[551,30809,588],{"class":587},[551,30811,30812,30815,30817],{"class":553,"line":625},[551,30813,30814],{"class":738},"  insertVariable",[551,30816,1169],{"class":587},[551,30818,588],{"class":587},[551,30820,30821,30823,30825,30827,30829,30831],{"class":553,"line":633},[551,30822,28661],{"class":1154},[551,30824,1169],{"class":587},[551,30826,29259],{"class":587},[551,30828,1200],{"class":753},[551,30830,28714],{"class":17983},[551,30832,598],{"class":587},[551,30834,30835,30837,30839,30841,30843,30845,30848,30850,30853,30855,30857,30859,30861,30863,30865,30867,30869,30871,30873,30875,30877,30880,30882,30885,30888,30891,30894,30896,30898,30900,30903,30905,30907],{"class":553,"line":641},[551,30836,28721],{"class":1154},[551,30838,1169],{"class":587},[551,30840,1190],{"class":587},[551,30842,18395],{"class":1193},[551,30844,1169],{"class":587},[551,30846,30847],{"class":557}," any",[551,30849,3348],{"class":587},[551,30851,30852],{"class":1193}," cmd",[551,30854,1169],{"class":587},[551,30856,30847],{"class":557},[551,30858,1197],{"class":587},[551,30860,1200],{"class":753},[551,30862,28674],{"class":594},[551,30864,1206],{"class":587},[551,30866,28738],{"class":1154},[551,30868,10081],{"class":594},[551,30870,1206],{"class":587},[551,30872,28745],{"class":1154},[551,30874,10081],{"class":594},[551,30876,1206],{"class":587},[551,30878,30879],{"class":1154},"insertContent",[551,30881,1158],{"class":594},[551,30883,30884],{"class":587},"`",[551,30886,30887],{"class":561},"{{ ",[551,30889,30890],{"class":587},"${",[551,30892,30893],{"class":594},"cmd",[551,30895,1206],{"class":587},[551,30897,6621],{"class":594},[551,30899,668],{"class":587},[551,30901,30902],{"class":561}," }}",[551,30904,30884],{"class":587},[551,30906,1197],{"class":594},[551,30908,598],{"class":587},[551,30910,30911,30913,30915,30917,30919,30921],{"class":553,"line":649},[551,30912,28770],{"class":1154},[551,30914,1169],{"class":587},[551,30916,29259],{"class":587},[551,30918,1200],{"class":753},[551,30920,17984],{"class":17983},[551,30922,598],{"class":587},[551,30924,30925],{"class":553,"line":657},[551,30926,10057],{"class":587},[551,30928,30929],{"class":553,"line":665},[551,30930,10148],{"class":587},[551,30932,30933],{"class":553,"line":901},[551,30934,1293],{"emptyLinePlaceholder":526},[551,30936,30937,30939,30941,30943],{"class":553,"line":910},[551,30938,3321],{"class":753},[551,30940,28823],{"class":594},[551,30942,757],{"class":587},[551,30944,1315],{"class":594},[551,30946,30947,30949,30951],{"class":553,"line":920},[551,30948,28832],{"class":587},[551,30950,28232],{"class":594},[551,30952,598],{"class":587},[551,30954,30955],{"class":553,"line":930},[551,30956,30957],{"class":594},"  [\n",[551,30959,30960,30963,30965,30967,30969,30972,30974,30976,30979,30981,30983,30986,30988,30990,30992,30994,30996,30999,31001],{"class":553,"line":3536},[551,30961,30962],{"class":587},"    {",[551,30964,28846],{"class":738},[551,30966,1169],{"class":587},[551,30968,674],{"class":587},[551,30970,30971],{"class":561},"insertVariable",[551,30973,1214],{"class":587},[551,30975,3348],{"class":587},[551,30977,30978],{"class":738}," name",[551,30980,1169],{"class":587},[551,30982,674],{"class":587},[551,30984,30985],{"class":561},"username",[551,30987,1214],{"class":587},[551,30989,3348],{"class":587},[551,30991,28860],{"class":738},[551,30993,1169],{"class":587},[551,30995,674],{"class":587},[551,30997,30998],{"class":561},"使用者名稱",[551,31000,1214],{"class":587},[551,31002,3363],{"class":587},[551,31004,31005,31007,31009,31011,31013,31015,31017,31019,31021,31023,31025,31028,31030,31032,31034,31036,31038,31041,31043],{"class":553,"line":4422},[551,31006,30962],{"class":587},[551,31008,28846],{"class":738},[551,31010,1169],{"class":587},[551,31012,674],{"class":587},[551,31014,30971],{"class":561},[551,31016,1214],{"class":587},[551,31018,3348],{"class":587},[551,31020,30978],{"class":738},[551,31022,1169],{"class":587},[551,31024,674],{"class":587},[551,31026,31027],{"class":561},"orderId",[551,31029,1214],{"class":587},[551,31031,3348],{"class":587},[551,31033,28860],{"class":738},[551,31035,1169],{"class":587},[551,31037,674],{"class":587},[551,31039,31040],{"class":561},"訂單編號",[551,31042,1214],{"class":587},[551,31044,3363],{"class":587},[551,31046,31047,31050],{"class":553,"line":6194},[551,31048,31049],{"class":594},"  ]",[551,31051,598],{"class":587},[551,31053,31054],{"class":553,"line":6204},[551,31055,9080],{"class":594},[551,31057,31058,31060,31062],{"class":553,"line":6223},[551,31059,784],{"class":587},[551,31061,3276],{"class":738},[551,31063,742],{"class":587},[551,31065,31066],{"class":553,"line":6233},[551,31067,1293],{"emptyLinePlaceholder":526},[551,31069,31070,31072,31074],{"class":553,"line":6242},[551,31071,735],{"class":587},[551,31073,739],{"class":738},[551,31075,742],{"class":587},[551,31077,31078,31080,31082,31084,31086,31088,31090,31092,31094,31096,31098,31100,31102,31104],{"class":553,"line":6251},[551,31079,747],{"class":587},[551,31081,28243],{"class":738},[551,31083,3595],{"class":753},[551,31085,757],{"class":587},[551,31087,760],{"class":587},[551,31089,30664],{"class":561},[551,31091,760],{"class":587},[551,31093,2867],{"class":753},[551,31095,757],{"class":587},[551,31097,760],{"class":587},[551,31099,2720],{"class":561},[551,31101,760],{"class":587},[551,31103,28214],{"class":753},[551,31105,742],{"class":587},[551,31107,31108,31110,31112,31114,31116],{"class":553,"line":524},[551,31109,772],{"class":587},[551,31111,28208],{"class":738},[551,31113,28211],{"class":753},[551,31115,15260],{"class":753},[551,31117,1449],{"class":587},[551,31119,31120,31122,31124],{"class":553,"line":6864},[551,31121,923],{"class":587},[551,31123,28243],{"class":738},[551,31125,742],{"class":587},[551,31127,31128,31130,31132],{"class":553,"line":6873},[551,31129,784],{"class":587},[551,31131,739],{"class":738},[551,31133,742],{"class":587},[536,31135,2762],{"id":2761},[705,31137,31138,7623,31141,4782,31143,8586,31146,8589,31149,31151,31152,31155],{},[548,31139,31140],{},"AdminRichEditor",[548,31142,3248],{},[548,31144,31145],{},"string | JSONContent",[548,31147,31148],{},"contentType",[548,31150,2724],{}," 型別對齊。這與 tiptap 的 ",[548,31153,31154],{},"Content"," 型別一致：序列化格式在執行期才決定，型別層維持寬 union。",[705,31157,8595,31158,4159,31160,8600,31162,31165,31166,31169],{},[548,31159,2826],{},[548,31161,2830],{},[548,31163,31164],{},"ref\u003CJSONContent>","）綁定，容易出現型別錯誤。這屬刻意設計，而非元件缺漏——收窄會讓以 ",[548,31167,31168],{},"ref\u003Cstring>"," 綁 HTML／markdown 的常見用法直接 type error。",[705,31171,8610,31172,1613,31174,31176,31177,31179,31180,31183,31184,31186,31187,713],{},[548,31173,31148],{},[548,31175,2724],{}," 型別對齊，可自行封裝：以 ",[548,31178,31148],{}," 為 discriminant，",[548,31181,31182],{},"'json'"," 對應 ",[548,31185,18538],{},"、其餘對應 ",[548,31188,3261],{},[705,31190,8618],{},[2812,31192],{"name":31193,"title":31194},"TypedAdminRichEditorDemo","TypedAdminRichEditor.vue",[2817,31196,31197],{"title":2819,"type":2820},[705,31198,2823,31199,2827,31201,2831,31203,2834,31205,2838],{},[548,31200,2826],{},[548,31202,2830],{},[697,31204,515],{"href":516},[548,31206,2837],{},[2812,31208],{"name":31209},"RichEditorTypeSafeDemo",[536,31211,31212],{"id":31212},"字數限制",[705,31214,31215,31216,31218],{},"core 不內建 character count extension，要的話透過 ",[548,31217,28043],{}," 自帶：",[539,31220,31222],{"className":726,"code":31221,"language":728,"meta":546,"style":546},"\u003Cscript setup lang=\"ts\">\nimport CharacterCount from '@tiptap\u002Fextension-character-count'\nimport { AdminEditorToolbar, defaultEditorItems } from '@\u002Fregistry\u002Fadmin\u002Fui\u002Feditor-toolbar'\nimport { AdminRichEditor } from '@\u002Fregistry\u002Fadmin\u002Fui\u002Frich-editor'\n\nconst value = ref('')\n\u003C\u002Fscript>\n\n\u003Ctemplate>\n  \u003Cadmin-rich-editor\n    v-slot=\"{ editor }\"\n    v-model=\"value\"\n    :extensions=\"[CharacterCount.configure({ limit: 500 })]\"\n  >\n    \u003Cadmin-editor-toolbar :editor :items=\"defaultEditorItems\" \u002F>\n    \u003Cdiv class=\"mt-2 text-xs text-text-50\">\n      {{ editor.storage.characterCount.characters() }} \u002F 500\n    \u003C\u002Fdiv>\n  \u003C\u002Fadmin-rich-editor>\n\u003C\u002Ftemplate>\n",[548,31223,31224,31244,31258,31280,31298,31302,31318,31326,31330,31338,31344,31356,31368,31380,31384,31404,31423,31428,31436,31444],{"__ignoreMap":546},[551,31225,31226,31228,31230,31232,31234,31236,31238,31240,31242],{"class":553,"line":554},[551,31227,735],{"class":587},[551,31229,3276],{"class":738},[551,31231,3279],{"class":753},[551,31233,3282],{"class":753},[551,31235,757],{"class":587},[551,31237,760],{"class":587},[551,31239,576],{"class":561},[551,31241,760],{"class":587},[551,31243,742],{"class":587},[551,31245,31246,31248,31250,31252,31254,31256],{"class":553,"line":591},[551,31247,584],{"class":583},[551,31249,28076],{"class":594},[551,31251,1259],{"class":583},[551,31253,674],{"class":587},[551,31255,28083],{"class":561},[551,31257,680],{"class":587},[551,31259,31260,31262,31264,31266,31268,31270,31272,31274,31276,31278],{"class":553,"line":601},[551,31261,584],{"class":583},[551,31263,1273],{"class":587},[551,31265,28094],{"class":594},[551,31267,3348],{"class":587},[551,31269,28099],{"class":594},[551,31271,1279],{"class":587},[551,31273,671],{"class":583},[551,31275,674],{"class":587},[551,31277,28108],{"class":561},[551,31279,680],{"class":587},[551,31281,31282,31284,31286,31288,31290,31292,31294,31296],{"class":553,"line":609},[551,31283,584],{"class":583},[551,31285,1273],{"class":587},[551,31287,28119],{"class":594},[551,31289,1279],{"class":587},[551,31291,671],{"class":583},[551,31293,674],{"class":587},[551,31295,28128],{"class":561},[551,31297,680],{"class":587},[551,31299,31300],{"class":553,"line":617},[551,31301,1293],{"emptyLinePlaceholder":526},[551,31303,31304,31306,31308,31310,31312,31314,31316],{"class":553,"line":625},[551,31305,3321],{"class":753},[551,31307,3422],{"class":594},[551,31309,757],{"class":587},[551,31311,3427],{"class":1154},[551,31313,1158],{"class":594},[551,31315,8639],{"class":587},[551,31317,1222],{"class":594},[551,31319,31320,31322,31324],{"class":553,"line":633},[551,31321,784],{"class":587},[551,31323,3276],{"class":738},[551,31325,742],{"class":587},[551,31327,31328],{"class":553,"line":641},[551,31329,1293],{"emptyLinePlaceholder":526},[551,31331,31332,31334,31336],{"class":553,"line":649},[551,31333,735],{"class":587},[551,31335,739],{"class":738},[551,31337,742],{"class":587},[551,31339,31340,31342],{"class":553,"line":657},[551,31341,747],{"class":587},[551,31343,28157],{"class":738},[551,31345,31346,31348,31350,31352,31354],{"class":553,"line":665},[551,31347,28162],{"class":753},[551,31349,757],{"class":587},[551,31351,760],{"class":587},[551,31353,30664],{"class":561},[551,31355,4281],{"class":587},[551,31357,31358,31360,31362,31364,31366],{"class":553,"line":901},[551,31359,4896],{"class":753},[551,31361,757],{"class":587},[551,31363,760],{"class":587},[551,31365,2720],{"class":561},[551,31367,4281],{"class":587},[551,31369,31370,31372,31374,31376,31378],{"class":553,"line":910},[551,31371,28188],{"class":753},[551,31373,757],{"class":587},[551,31375,760],{"class":587},[551,31377,28195],{"class":561},[551,31379,4281],{"class":587},[551,31381,31382],{"class":553,"line":920},[551,31383,9184],{"class":587},[551,31385,31386,31388,31390,31392,31394,31396,31398,31400,31402],{"class":553,"line":930},[551,31387,772],{"class":587},[551,31389,28208],{"class":738},[551,31391,28211],{"class":753},[551,31393,15260],{"class":753},[551,31395,757],{"class":587},[551,31397,760],{"class":587},[551,31399,28232],{"class":561},[551,31401,760],{"class":587},[551,31403,1449],{"class":587},[551,31405,31406,31408,31410,31412,31414,31416,31419,31421],{"class":553,"line":3536},[551,31407,772],{"class":587},[551,31409,13312],{"class":738},[551,31411,13315],{"class":753},[551,31413,757],{"class":587},[551,31415,760],{"class":587},[551,31417,31418],{"class":561},"mt-2 text-xs text-text-50",[551,31420,760],{"class":587},[551,31422,742],{"class":587},[551,31424,31425],{"class":553,"line":4422},[551,31426,31427],{"class":594},"      {{ editor.storage.characterCount.characters() }} \u002F 500\n",[551,31429,31430,31432,31434],{"class":553,"line":6194},[551,31431,913],{"class":587},[551,31433,13312],{"class":738},[551,31435,742],{"class":587},[551,31437,31438,31440,31442],{"class":553,"line":6204},[551,31439,923],{"class":587},[551,31441,28243],{"class":738},[551,31443,742],{"class":587},[551,31445,31446,31448,31450],{"class":553,"line":6223},[551,31447,784],{"class":587},[551,31449,739],{"class":738},[551,31451,742],{"class":587},[536,31453,31454],{"id":31454},"複製貼上行為",[705,31456,31457],{},"tiptap StarterKit 內建 paste rules，行為：",[1558,31459,31460,31468,31474,31484],{},[1561,31461,31462,31465,31466,19410],{},[1135,31463,31464],{},"保留","支援的 mark \u002F node（粗體、斜體、標題、清單、引言、code、link、",[548,31467,4645],{},[1561,31469,31470,31473],{},[1135,31471,31472],{},"丟棄","不在 schema 內的標籤（未安裝對應擴充包時，Mention \u002F Emoji \u002F TextAlign \u002F TaskList 這類內容貼上會被吃掉）",[1561,31475,31476,31477,14865,31480,31483],{},"從 Word 來源的 HTML（",[548,31478,31479],{},"\u003Co:p>",[548,31481,31482],{},"\u003Cspan style=\"...\">"," 等垃圾）會被清掉",[1561,31485,31486,31487,31490],{},"外部圖片 URL 直接顯示，但要注意 ",[1135,31488,31489],{},"CORS \u002F hot-link"," 問題（建議自行接上 upload Dialog 把圖上傳到自家 CDN）",[536,31492,31494],{"id":31493},"ssr-行為","SSR 行為",[705,31496,31497,31500,31501,31503,31504,31507],{},[548,31498,31499],{},"useEditor()"," 在 SSR 階段回 ",[548,31502,13826],{},"，template 內 ",[548,31505,31506],{},"\u003CEditorContent v-if=\"editor\">"," 守護：",[1558,31509,31510,31513,31516,31519],{},[1561,31511,31512],{},"Server-rendered HTML 不含 editor content",[1561,31514,31515],{},"Client hydration 後實例化，內容才出現（可能短暫跳動）",[1561,31517,31518],{},"後台場景無 SEO \u002F LCP 嚴格需求，可接受",[1561,31520,31521,31524],{},[1135,31522,31523],{},"不適合 SEO 場景","（若需要，該情境也不該用 editor）",[705,31526,31527,31529,31530,31532,31533,4582,31535,4585,31537,31539],{},[1135,31528,1587],{},"：tiptap ",[548,31531,31499],{}," 為 browser-only；元件殼不含 ",[548,31534,1591],{},[548,31536,1591],{},[697,31538,1603],{"href":1602},"。headed／vendor 命名與是否需包覆無關。",[536,31541,720],{"id":719},[692,31543,723],{"id":723},[539,31545,31547],{"className":726,"code":31546,"language":728,"meta":546,"style":546},"\u003Ctemplate>\n  \u003Cadmin-rich-editor v-slot=\"{ editor }\" v-model=\"value\">\n    \u003Cadmin-editor-toolbar :editor :items=\"defaultEditorItems\" \u002F>\n  \u003C\u002Fadmin-rich-editor>\n\u003C\u002Ftemplate>\n",[548,31548,31549,31557,31585,31605,31613],{"__ignoreMap":546},[551,31550,31551,31553,31555],{"class":553,"line":554},[551,31552,735],{"class":587},[551,31554,739],{"class":738},[551,31556,742],{"class":587},[551,31558,31559,31561,31563,31565,31567,31569,31571,31573,31575,31577,31579,31581,31583],{"class":553,"line":591},[551,31560,747],{"class":587},[551,31562,28243],{"class":738},[551,31564,3595],{"class":753},[551,31566,757],{"class":587},[551,31568,760],{"class":587},[551,31570,30664],{"class":561},[551,31572,760],{"class":587},[551,31574,2867],{"class":753},[551,31576,757],{"class":587},[551,31578,760],{"class":587},[551,31580,2720],{"class":561},[551,31582,760],{"class":587},[551,31584,742],{"class":587},[551,31586,31587,31589,31591,31593,31595,31597,31599,31601,31603],{"class":553,"line":601},[551,31588,772],{"class":587},[551,31590,28208],{"class":738},[551,31592,28211],{"class":753},[551,31594,15260],{"class":753},[551,31596,757],{"class":587},[551,31598,760],{"class":587},[551,31600,28232],{"class":561},[551,31602,760],{"class":587},[551,31604,1449],{"class":587},[551,31606,31607,31609,31611],{"class":553,"line":609},[551,31608,923],{"class":587},[551,31610,28243],{"class":738},[551,31612,742],{"class":587},[551,31614,31615,31617,31619],{"class":553,"line":617},[551,31616,784],{"class":587},[551,31618,739],{"class":738},[551,31620,742],{"class":587},[692,31622,28243],{"id":28243},[940,31624],{"component":31140},[536,31626,985],{"id":985},[987,31628],{"component":31140},[990,31630,31631],{},"html pre.shiki code .sBMFI, html code.shiki .sBMFI{--shiki-light:#E2931D;--shiki-default:#FFCB6B;--shiki-dark:#FFCB6B}html pre.shiki code .sfazB, html code.shiki .sfazB{--shiki-light:#91B859;--shiki-default:#C3E88D;--shiki-dark:#C3E88D}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 pre.shiki code .s7zQu, html code.shiki .s7zQu{--shiki-light:#39ADB5;--shiki-light-font-style:italic;--shiki-default:#89DDFF;--shiki-default-font-style:italic;--shiki-dark:#89DDFF;--shiki-dark-font-style:italic}html pre.shiki code .sMK4o, html code.shiki .sMK4o{--shiki-light:#39ADB5;--shiki-default:#89DDFF;--shiki-dark:#89DDFF}html pre.shiki code .sTEyZ, html code.shiki .sTEyZ{--shiki-light:#90A4AE;--shiki-default:#EEFFFF;--shiki-dark:#BABED8}html pre.shiki code .swJcz, html code.shiki .swJcz{--shiki-light:#E53935;--shiki-default:#F07178;--shiki-dark:#F07178}html pre.shiki code .spNyl, html code.shiki .spNyl{--shiki-light:#9C3EDA;--shiki-default:#C792EA;--shiki-dark:#C792EA}html pre.shiki code .s2Zo4, html code.shiki .s2Zo4{--shiki-light:#6182B8;--shiki-default:#82AAFF;--shiki-dark:#82AAFF}html pre.shiki code .sHwdD, html code.shiki .sHwdD{--shiki-light:#90A4AE;--shiki-light-font-style:italic;--shiki-default:#546E7A;--shiki-default-font-style:italic;--shiki-dark:#676E95;--shiki-dark-font-style:italic}html pre.shiki code .sfNiH, html code.shiki .sfNiH{--shiki-light:#FF5370;--shiki-default:#FF9CAC;--shiki-dark:#FF9CAC}html pre.shiki code .sHdIc, html code.shiki .sHdIc{--shiki-light:#90A4AE;--shiki-light-font-style:italic;--shiki-default:#EEFFFF;--shiki-default-font-style:italic;--shiki-dark:#BABED8;--shiki-dark-font-style:italic}",{"title":546,"searchDepth":601,"depth":601,"links":31633},[31634,31635,31636,31639,31644,31648,31649,31650,31651,31652,31656],{"id":507,"depth":591,"text":507},{"id":683,"depth":591,"text":683},{"id":29901,"depth":591,"text":29901,"children":31637},[31638],{"id":30092,"depth":601,"text":30093},{"id":690,"depth":591,"text":690,"children":31640},[31641,31642,31643],{"id":30352,"depth":601,"text":30353},{"id":30369,"depth":601,"text":30370},{"id":30399,"depth":601,"text":30400},{"id":30438,"depth":591,"text":30438,"children":31645},[31646,31647],{"id":30441,"depth":601,"text":30442},{"id":30721,"depth":601,"text":30722},{"id":2761,"depth":591,"text":2762},{"id":31212,"depth":591,"text":31212},{"id":31454,"depth":591,"text":31454},{"id":31493,"depth":591,"text":31494},{"id":719,"depth":591,"text":720,"children":31653},[31654,31655],{"id":723,"depth":601,"text":723},{"id":28243,"depth":601,"text":28243},{"id":985,"depth":591,"text":985},"admin-editor 加上 StarterKit；粗體、標題、清單等基本格式。",{"doc":29816,"api":31659},"https:\u002F\u002Ftiptap.dev\u002Fdocs\u002Feditor\u002Fapi",{},{"title":405,"description":31657},"n7N1tZvtnKhW8D1zNSWhO5nt4von-eeEIQ1BLuKrllw",{"id":31664,"title":409,"body":31665,"component":526,"description":32032,"extension":1015,"links":32033,"meta":32034,"navigation":526,"new":18,"path":410,"seo":32035,"stem":411,"wrapperKind":19,"__hash__":32036},"docs\u002Fdocs\u002Feditor\u002F3.core\u002F3.toolbar.md",{"type":533,"value":31666,"toc":32015},[31667,31669,31692,31719,31721,31736,31739,31741,31745,31751,31754,31758,31765,31768,31772,31788,31790,31794,31821,31824,31827,31833,31906,31908,31910,31989,31991,31993,31995,32008,32010,32012],[536,31668,507],{"id":507},[539,31670,31672],{"className":541,"code":31671,"filename":543,"language":544,"meta":545,"style":546},"# 只依賴 @admin\u002Feditor-core;可搭 rich-editor 或 base editor 使用\npnpm dlx shadcn-vue add @admin\u002Feditor-toolbar\n",[548,31673,31674,31679],{"__ignoreMap":546},[551,31675,31676],{"class":553,"line":554},[551,31677,31678],{"class":4831},"# 只依賴 @admin\u002Feditor-core;可搭 rich-editor 或 base editor 使用\n",[551,31680,31681,31683,31685,31687,31689],{"class":553,"line":591},[551,31682,558],{"class":557},[551,31684,562],{"class":561},[551,31686,565],{"class":561},[551,31688,568],{"class":561},[551,31690,31691],{"class":561}," @admin\u002Feditor-toolbar\n",[539,31693,31695],{"className":574,"code":31694,"language":576,"meta":546,"style":546},"import { AdminEditorToolbar, defaultEditorItems } from '@\u002Fregistry\u002Fadmin\u002Fui\u002Feditor-toolbar'\n",[548,31696,31697],{"__ignoreMap":546},[551,31698,31699,31701,31703,31705,31707,31709,31711,31713,31715,31717],{"class":553,"line":554},[551,31700,584],{"class":583},[551,31702,1273],{"class":587},[551,31704,28094],{"class":594},[551,31706,3348],{"class":587},[551,31708,28099],{"class":594},[551,31710,1279],{"class":587},[551,31712,671],{"class":583},[551,31714,674],{"class":587},[551,31716,28108],{"class":561},[551,31718,680],{"class":587},[536,31720,683],{"id":683},[705,31722,31723,31724,31726,31727,31729,31730,31733,31734,2466],{},"最小可用組合：",[548,31725,29649],{}," 容器內擺 ",[548,31728,30392],{},"（預設 layout ",[548,31731,31732],{},"'fixed'","），items 給 ",[548,31735,28232],{},[685,31737],{"name":31738},"RichEditorDemo",[536,31740,690],{"id":690},[692,31742,31744],{"id":31743},"bubble-layout","Bubble layout",[705,31746,31747,31748,2466],{},"選取文字後浮現 toolbar（Notion \u002F Medium 風）。設定 ",[548,31749,31750],{},"layout=\"bubble\"",[685,31752],{"name":31753},"RichEditorBubbleDemo",[692,31755,31757],{"id":31756},"floating-layout","Floating layout",[705,31759,31760,31761,31764],{},"游標停在空行時浮現（Notion 的 block 插入選單風格）。設定 ",[548,31762,31763],{},"layout=\"floating\"","，items 只放區塊操作：",[685,31766],{"name":31767},"RichEditorFloatingDemo",[692,31769,31771],{"id":31770},"客製-items精簡版","客製 items（精簡版）",[705,31773,31774,31777,31778,31781,31782,31784,31785,31787],{},[548,31775,31776],{},":items"," 接受 ",[548,31779,31780],{},"EditorToolbarItem[]","（單列）或 ",[548,31783,28527],{},"（分組，每組之間自動加 separator）。自寫 ",[548,31786,7361],{}," 收緊功能：",[685,31789],{"name":30366},[692,31791,31793],{"id":31792},"具名-slot-與-item-slot","具名 slot 與 #item slot",[705,31795,31796,31797,31800,31801,31803,31804,31806,31807,31809,31810,31813,31814,1123,31817,31820],{},"item 可以整顆換成自訂元件：指定 ",[548,31798,31799],{},"slot: '\u003Cname>'"," 就交給同名具名 slot 渲染，沒指定的落到通用 ",[548,31802,29456],{}," slot。slot props 為 ",[548,31805,29474],{},"；不含 ",[548,31808,18395],{},"，需要就從外層 ",[548,31811,31812],{},"\u003CAdminRichEditor v-slot=\"{ editor, handlers }\">"," 取。",[548,31815,31816],{},"@admin\u002Feditor-text-color",[548,31818,31819],{},"@admin\u002Feditor-highlight"," 就是這樣接入的：",[685,31822],{"name":31823},"EditorTextColorDemo",[536,31825,28232],{"id":31826},"defaulteditoritems",[705,31828,31829,31832],{},[548,31830,31831],{},"defaultEditorItems: EditorToolbarItem[][]"," 是預設工具列分組，只涵蓋 StarterKit 能力（復原、文字裝飾、段落樣式、區塊、Link），每個 item 都帶好 icon、繁中 label 與 tooltip。textAlign \u002F image \u002F indent 等非 StarterKit 能力由對應的 opt-in 包提供，spread 後追加即可：",[539,31834,31836],{"className":574,"code":31835,"language":576,"meta":546,"style":546},"const items = [\n  ...defaultEditorItems,\n  [{ kind: 'insertVariable', name: 'username', label: '使用者名稱' }],\n]\n",[548,31837,31838,31848,31856,31902],{"__ignoreMap":546},[551,31839,31840,31842,31844,31846],{"class":553,"line":554},[551,31841,3321],{"class":753},[551,31843,28823],{"class":594},[551,31845,757],{"class":587},[551,31847,1315],{"class":594},[551,31849,31850,31852,31854],{"class":553,"line":591},[551,31851,28832],{"class":587},[551,31853,28232],{"class":594},[551,31855,598],{"class":587},[551,31857,31858,31860,31862,31864,31866,31868,31870,31872,31874,31876,31878,31880,31882,31884,31886,31888,31890,31892,31894,31896,31898,31900],{"class":553,"line":601},[551,31859,28841],{"class":594},[551,31861,4243],{"class":587},[551,31863,28846],{"class":738},[551,31865,1169],{"class":587},[551,31867,674],{"class":587},[551,31869,30971],{"class":561},[551,31871,1214],{"class":587},[551,31873,3348],{"class":587},[551,31875,30978],{"class":738},[551,31877,1169],{"class":587},[551,31879,674],{"class":587},[551,31881,30985],{"class":561},[551,31883,1214],{"class":587},[551,31885,3348],{"class":587},[551,31887,28860],{"class":738},[551,31889,1169],{"class":587},[551,31891,674],{"class":587},[551,31893,30998],{"class":561},[551,31895,1214],{"class":587},[551,31897,1279],{"class":587},[551,31899,3452],{"class":594},[551,31901,598],{"class":587},[551,31903,31904],{"class":553,"line":609},[551,31905,9080],{"class":594},[536,31907,720],{"id":719},[692,31909,723],{"id":723},[539,31911,31913],{"className":726,"code":31912,"language":728,"meta":546,"style":546},"\u003Ctemplate>\n  \u003Cadmin-rich-editor v-slot=\"{ editor, handlers }\" v-model=\"value\">\n    \u003Cadmin-editor-toolbar :editor :handlers :items=\"defaultEditorItems\" \u002F>\n  \u003C\u002Fadmin-rich-editor>\n\u003C\u002Ftemplate>\n",[548,31914,31915,31923,31951,31973,31981],{"__ignoreMap":546},[551,31916,31917,31919,31921],{"class":553,"line":554},[551,31918,735],{"class":587},[551,31920,739],{"class":738},[551,31922,742],{"class":587},[551,31924,31925,31927,31929,31931,31933,31935,31937,31939,31941,31943,31945,31947,31949],{"class":553,"line":591},[551,31926,747],{"class":587},[551,31928,28243],{"class":738},[551,31930,3595],{"class":753},[551,31932,757],{"class":587},[551,31934,760],{"class":587},[551,31936,28169],{"class":561},[551,31938,760],{"class":587},[551,31940,2867],{"class":753},[551,31942,757],{"class":587},[551,31944,760],{"class":587},[551,31946,2720],{"class":561},[551,31948,760],{"class":587},[551,31950,742],{"class":587},[551,31952,31953,31955,31957,31959,31961,31963,31965,31967,31969,31971],{"class":553,"line":601},[551,31954,772],{"class":587},[551,31956,28208],{"class":738},[551,31958,28211],{"class":753},[551,31960,28214],{"class":753},[551,31962,15260],{"class":753},[551,31964,757],{"class":587},[551,31966,760],{"class":587},[551,31968,28232],{"class":561},[551,31970,760],{"class":587},[551,31972,1449],{"class":587},[551,31974,31975,31977,31979],{"class":553,"line":609},[551,31976,923],{"class":587},[551,31978,28243],{"class":738},[551,31980,742],{"class":587},[551,31982,31983,31985,31987],{"class":553,"line":617},[551,31984,784],{"class":587},[551,31986,739],{"class":738},[551,31988,742],{"class":587},[692,31990,28208],{"id":28208},[940,31992],{"component":28520},[536,31994,1556],{"id":1556},[1558,31996,31997],{},[1561,31998,31999,32001,32002,4582,32004,4585,32006,713],{},[1135,32000,1587],{},"：bubble \u002F floating layout 依賴瀏覽器 DOM 定位；元件殼不含 ",[548,32003,1591],{},[548,32005,1591],{},[697,32007,1603],{"href":1602},[536,32009,985],{"id":985},[987,32011],{"component":28520},[990,32013,32014],{},"html pre.shiki code .sHwdD, html code.shiki .sHwdD{--shiki-light:#90A4AE;--shiki-light-font-style:italic;--shiki-default:#546E7A;--shiki-default-font-style:italic;--shiki-dark:#676E95;--shiki-dark-font-style:italic}html pre.shiki code .sBMFI, html code.shiki .sBMFI{--shiki-light:#E2931D;--shiki-default:#FFCB6B;--shiki-dark:#FFCB6B}html pre.shiki code .sfazB, html code.shiki .sfazB{--shiki-light:#91B859;--shiki-default:#C3E88D;--shiki-dark:#C3E88D}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 pre.shiki code .s7zQu, html code.shiki .s7zQu{--shiki-light:#39ADB5;--shiki-light-font-style:italic;--shiki-default:#89DDFF;--shiki-default-font-style:italic;--shiki-dark:#89DDFF;--shiki-dark-font-style:italic}html pre.shiki code .sMK4o, html code.shiki .sMK4o{--shiki-light:#39ADB5;--shiki-default:#89DDFF;--shiki-dark:#89DDFF}html pre.shiki code .sTEyZ, html code.shiki .sTEyZ{--shiki-light:#90A4AE;--shiki-default:#EEFFFF;--shiki-dark:#BABED8}html pre.shiki code .spNyl, html code.shiki .spNyl{--shiki-light:#9C3EDA;--shiki-default:#C792EA;--shiki-dark:#C792EA}html pre.shiki code .swJcz, html code.shiki .swJcz{--shiki-light:#E53935;--shiki-default:#F07178;--shiki-dark:#F07178}",{"title":546,"searchDepth":601,"depth":601,"links":32016},[32017,32018,32019,32025,32026,32030,32031],{"id":507,"depth":591,"text":507},{"id":683,"depth":591,"text":683},{"id":690,"depth":591,"text":690,"children":32020},[32021,32022,32023,32024],{"id":31743,"depth":601,"text":31744},{"id":31756,"depth":601,"text":31757},{"id":31770,"depth":601,"text":31771},{"id":31792,"depth":601,"text":31793},{"id":31826,"depth":591,"text":28232},{"id":719,"depth":591,"text":720,"children":32027},[32028,32029],{"id":723,"depth":601,"text":723},{"id":28208,"depth":601,"text":28208},{"id":1556,"depth":591,"text":1556},{"id":985,"depth":591,"text":985},"admin-rich-editor 的工具列。layout：fixed／bubble／floating；可放按鈕、下拉選單與自訂元件。",{"doc":29816},{},{"title":409,"description":32032},"fzi4mSDXQEow2jmnSZYUlfBsSim_sFocV74IaE3o-74",{"id":32038,"title":418,"body":32039,"component":18,"description":32775,"extension":1015,"links":32776,"meta":32777,"navigation":526,"new":18,"path":419,"seo":32778,"stem":420,"wrapperKind":19,"__hash__":32779},"docs\u002Fdocs\u002Feditor\u002F4.addons\u002F1.image.md",{"type":533,"value":32040,"toc":32768},[32041,32043,32070,32113,32139,32141,32144,32561,32564,32584,32588,32595,32738,32740,32750,32752,32765],[536,32042,507],{"id":507},[539,32044,32046],{"className":541,"code":32045,"filename":543,"language":544,"meta":545,"style":546},"pnpm dlx shadcn-vue add @admin\u002Feditor-image\npnpm add @tiptap\u002Fextension-image\n",[548,32047,32048,32061],{"__ignoreMap":546},[551,32049,32050,32052,32054,32056,32058],{"class":553,"line":554},[551,32051,558],{"class":557},[551,32053,562],{"class":561},[551,32055,565],{"class":561},[551,32057,568],{"class":561},[551,32059,32060],{"class":561}," @admin\u002Feditor-image\n",[551,32062,32063,32065,32067],{"class":553,"line":591},[551,32064,558],{"class":557},[551,32066,568],{"class":561},[551,32068,32069],{"class":561}," @tiptap\u002Fextension-image\n",[539,32071,32073],{"className":574,"code":32072,"language":576,"meta":546,"style":546},"import { Image } from '@tiptap\u002Fextension-image'\nimport { createImageHandler } from '@\u002Fregistry\u002Fadmin\u002Fui\u002Feditor-image'\n",[548,32074,32075,32093],{"__ignoreMap":546},[551,32076,32077,32079,32081,32083,32085,32087,32089,32091],{"class":553,"line":554},[551,32078,584],{"class":583},[551,32080,1273],{"class":587},[551,32082,28305],{"class":594},[551,32084,1279],{"class":587},[551,32086,671],{"class":583},[551,32088,674],{"class":587},[551,32090,24722],{"class":561},[551,32092,680],{"class":587},[551,32094,32095,32097,32099,32102,32104,32106,32108,32111],{"class":553,"line":591},[551,32096,584],{"class":583},[551,32098,1273],{"class":587},[551,32100,32101],{"class":594}," createImageHandler",[551,32103,1279],{"class":587},[551,32105,671],{"class":583},[551,32107,674],{"class":587},[551,32109,32110],{"class":561},"@\u002Fregistry\u002Fadmin\u002Fui\u002Feditor-image",[551,32112,680],{"class":587},[705,32114,32115,32116,32119,32120,32122,32123,32126,32127,14865,32129,32131,32132,32134,32135,32138],{},"含 ",[548,32117,32118],{},"createImageHandler","；圖片能力來自 tiptap ",[548,32121,77],{},"，需自行注入。把 ",[548,32124,32125],{},"Image.configure({})"," 傳入 ",[548,32128,28043],{},[548,32130,32118],{}," 經 ",[548,32133,28539],{}," 注入後，toolbar 可放 ",[548,32136,32137],{},"{ kind: 'image' }"," 按鈕（見下方用法）。",[536,32140,683],{"id":683},[685,32142],{"name":32143},"EditorImageDemo",[539,32145,32147],{"className":726,"code":32146,"language":728,"meta":546,"style":546},"\u003Cscript setup lang=\"ts\">\nimport type { EditorToolbarItem } from '@\u002Fregistry\u002Fadmin\u002Fui\u002Feditor-toolbar'\nimport { IconPhoto } from '@tabler\u002Ficons-vue'\nimport { Image } from '@tiptap\u002Fextension-image'\nimport { ref } from 'vue'\nimport { createImageHandler } from '@\u002Fregistry\u002Fadmin\u002Fui\u002Feditor-image'\nimport { AdminEditorToolbar, defaultEditorItems } from '@\u002Fregistry\u002Fadmin\u002Fui\u002Feditor-toolbar'\nimport { AdminRichEditor } from '@\u002Fregistry\u002Fadmin\u002Fui\u002Frich-editor'\n\nconst value = ref('\u003Cp>圖:\u003Cimg src=\"https:\u002F\u002Fpicsum.photos\u002Fseed\u002Fadmin-image\u002F800\u002F360\" alt=\"x\">\u003C\u002Fp>')\n\nconst extensions = [Image.configure({})]\nconst handlers = { image: createImageHandler() }\nconst items: EditorToolbarItem[][] = [\n  ...defaultEditorItems,\n  [{ kind: 'image', icon: IconPhoto, label: '插入圖片', tooltip: { text: '插入圖片' } }]\n]\n\u003C\u002Fscript>\n\n\u003Ctemplate>\n  \u003Cadmin-rich-editor v-model=\"value\" :extensions=\"extensions\" :handlers=\"handlers\">\n    \u003Cadmin-editor-toolbar :items=\"items\" \u002F>\n  \u003C\u002Fadmin-rich-editor>\n\u003C\u002Ftemplate>\n",[548,32148,32149,32169,32189,32208,32226,32244,32262,32284,32302,32306,32327,32331,32355,32377,32395,32403,32465,32469,32477,32481,32489,32527,32545,32553],{"__ignoreMap":546},[551,32150,32151,32153,32155,32157,32159,32161,32163,32165,32167],{"class":553,"line":554},[551,32152,735],{"class":587},[551,32154,3276],{"class":738},[551,32156,3279],{"class":753},[551,32158,3282],{"class":753},[551,32160,757],{"class":587},[551,32162,760],{"class":587},[551,32164,576],{"class":561},[551,32166,760],{"class":587},[551,32168,742],{"class":587},[551,32170,32171,32173,32175,32177,32179,32181,32183,32185,32187],{"class":553,"line":591},[551,32172,584],{"class":583},[551,32174,3137],{"class":583},[551,32176,1273],{"class":587},[551,32178,28622],{"class":594},[551,32180,1279],{"class":587},[551,32182,671],{"class":583},[551,32184,674],{"class":587},[551,32186,28108],{"class":561},[551,32188,680],{"class":587},[551,32190,32191,32193,32195,32198,32200,32202,32204,32206],{"class":553,"line":601},[551,32192,584],{"class":583},[551,32194,1273],{"class":587},[551,32196,32197],{"class":594}," IconPhoto",[551,32199,1279],{"class":587},[551,32201,671],{"class":583},[551,32203,674],{"class":587},[551,32205,17314],{"class":561},[551,32207,680],{"class":587},[551,32209,32210,32212,32214,32216,32218,32220,32222,32224],{"class":553,"line":609},[551,32211,584],{"class":583},[551,32213,1273],{"class":587},[551,32215,28305],{"class":594},[551,32217,1279],{"class":587},[551,32219,671],{"class":583},[551,32221,674],{"class":587},[551,32223,24722],{"class":561},[551,32225,680],{"class":587},[551,32227,32228,32230,32232,32234,32236,32238,32240,32242],{"class":553,"line":617},[551,32229,584],{"class":583},[551,32231,1273],{"class":587},[551,32233,3427],{"class":594},[551,32235,1279],{"class":587},[551,32237,671],{"class":583},[551,32239,674],{"class":587},[551,32241,728],{"class":561},[551,32243,680],{"class":587},[551,32245,32246,32248,32250,32252,32254,32256,32258,32260],{"class":553,"line":625},[551,32247,584],{"class":583},[551,32249,1273],{"class":587},[551,32251,32101],{"class":594},[551,32253,1279],{"class":587},[551,32255,671],{"class":583},[551,32257,674],{"class":587},[551,32259,32110],{"class":561},[551,32261,680],{"class":587},[551,32263,32264,32266,32268,32270,32272,32274,32276,32278,32280,32282],{"class":553,"line":633},[551,32265,584],{"class":583},[551,32267,1273],{"class":587},[551,32269,28094],{"class":594},[551,32271,3348],{"class":587},[551,32273,28099],{"class":594},[551,32275,1279],{"class":587},[551,32277,671],{"class":583},[551,32279,674],{"class":587},[551,32281,28108],{"class":561},[551,32283,680],{"class":587},[551,32285,32286,32288,32290,32292,32294,32296,32298,32300],{"class":553,"line":641},[551,32287,584],{"class":583},[551,32289,1273],{"class":587},[551,32291,28119],{"class":594},[551,32293,1279],{"class":587},[551,32295,671],{"class":583},[551,32297,674],{"class":587},[551,32299,28128],{"class":561},[551,32301,680],{"class":587},[551,32303,32304],{"class":553,"line":649},[551,32305,1293],{"emptyLinePlaceholder":526},[551,32307,32308,32310,32312,32314,32316,32318,32320,32323,32325],{"class":553,"line":657},[551,32309,3321],{"class":753},[551,32311,3422],{"class":594},[551,32313,757],{"class":587},[551,32315,3427],{"class":1154},[551,32317,1158],{"class":594},[551,32319,1214],{"class":587},[551,32321,32322],{"class":561},"\u003Cp>圖:\u003Cimg src=\"https:\u002F\u002Fpicsum.photos\u002Fseed\u002Fadmin-image\u002F800\u002F360\" alt=\"x\">\u003C\u002Fp>",[551,32324,1214],{"class":587},[551,32326,1222],{"class":594},[551,32328,32329],{"class":553,"line":665},[551,32330,1293],{"emptyLinePlaceholder":526},[551,32332,32333,32335,32338,32340,32343,32345,32348,32350,32352],{"class":553,"line":901},[551,32334,3321],{"class":753},[551,32336,32337],{"class":594}," extensions ",[551,32339,757],{"class":587},[551,32341,32342],{"class":594}," [Image",[551,32344,1206],{"class":587},[551,32346,32347],{"class":1154},"configure",[551,32349,1158],{"class":594},[551,32351,19578],{"class":587},[551,32353,32354],{"class":594},")]\n",[551,32356,32357,32359,32361,32363,32365,32368,32370,32372,32375],{"class":553,"line":910},[551,32358,3321],{"class":753},[551,32360,28643],{"class":594},[551,32362,757],{"class":587},[551,32364,1273],{"class":587},[551,32366,32367],{"class":738}," image",[551,32369,1169],{"class":587},[551,32371,32101],{"class":1154},[551,32373,32374],{"class":594},"() ",[551,32376,10148],{"class":587},[551,32378,32379,32381,32384,32386,32388,32391,32393],{"class":553,"line":920},[551,32380,3321],{"class":753},[551,32382,32383],{"class":594}," items",[551,32385,1169],{"class":587},[551,32387,28622],{"class":557},[551,32389,32390],{"class":594},"[][] ",[551,32392,757],{"class":587},[551,32394,1315],{"class":594},[551,32396,32397,32399,32401],{"class":553,"line":930},[551,32398,28832],{"class":587},[551,32400,28232],{"class":594},[551,32402,598],{"class":587},[551,32404,32405,32407,32409,32411,32413,32415,32417,32419,32421,32424,32426,32428,32430,32432,32434,32436,32439,32441,32443,32445,32447,32449,32451,32453,32455,32457,32459,32461,32463],{"class":553,"line":3536},[551,32406,28841],{"class":594},[551,32408,4243],{"class":587},[551,32410,28846],{"class":738},[551,32412,1169],{"class":587},[551,32414,674],{"class":587},[551,32416,8299],{"class":561},[551,32418,1214],{"class":587},[551,32420,3348],{"class":587},[551,32422,32423],{"class":738}," icon",[551,32425,1169],{"class":587},[551,32427,32197],{"class":594},[551,32429,3348],{"class":587},[551,32431,28860],{"class":738},[551,32433,1169],{"class":587},[551,32435,674],{"class":587},[551,32437,32438],{"class":561},"插入圖片",[551,32440,1214],{"class":587},[551,32442,3348],{"class":587},[551,32444,28874],{"class":738},[551,32446,1169],{"class":587},[551,32448,1273],{"class":587},[551,32450,28881],{"class":738},[551,32452,1169],{"class":587},[551,32454,674],{"class":587},[551,32456,32438],{"class":561},[551,32458,1214],{"class":587},[551,32460,1279],{"class":587},[551,32462,1279],{"class":587},[551,32464,9080],{"class":594},[551,32466,32467],{"class":553,"line":4422},[551,32468,9080],{"class":594},[551,32470,32471,32473,32475],{"class":553,"line":6194},[551,32472,784],{"class":587},[551,32474,3276],{"class":738},[551,32476,742],{"class":587},[551,32478,32479],{"class":553,"line":6204},[551,32480,1293],{"emptyLinePlaceholder":526},[551,32482,32483,32485,32487],{"class":553,"line":6223},[551,32484,735],{"class":587},[551,32486,739],{"class":738},[551,32488,742],{"class":587},[551,32490,32491,32493,32495,32497,32499,32501,32503,32505,32507,32509,32511,32513,32515,32517,32519,32521,32523,32525],{"class":553,"line":6233},[551,32492,747],{"class":587},[551,32494,28243],{"class":738},[551,32496,2867],{"class":753},[551,32498,757],{"class":587},[551,32500,760],{"class":587},[551,32502,2720],{"class":561},[551,32504,760],{"class":587},[551,32506,30679],{"class":753},[551,32508,757],{"class":587},[551,32510,760],{"class":587},[551,32512,18579],{"class":561},[551,32514,760],{"class":587},[551,32516,28214],{"class":753},[551,32518,757],{"class":587},[551,32520,760],{"class":587},[551,32522,28221],{"class":561},[551,32524,760],{"class":587},[551,32526,742],{"class":587},[551,32528,32529,32531,32533,32535,32537,32539,32541,32543],{"class":553,"line":6242},[551,32530,772],{"class":587},[551,32532,28208],{"class":738},[551,32534,15260],{"class":753},[551,32536,757],{"class":587},[551,32538,760],{"class":587},[551,32540,7361],{"class":561},[551,32542,760],{"class":587},[551,32544,1449],{"class":587},[551,32546,32547,32549,32551],{"class":553,"line":6251},[551,32548,923],{"class":587},[551,32550,28243],{"class":738},[551,32552,742],{"class":587},[551,32554,32555,32557,32559],{"class":553,"line":524},[551,32556,784],{"class":587},[551,32558,739],{"class":738},[551,32560,742],{"class":587},[705,32562,32563],{},"啟用後：",[1558,32565,32566,32571,32577],{},[1561,32567,32568,32570],{},[548,32569,4645],{}," 顯示不會被 tiptap parser 丟掉",[1561,32572,32573,32576],{},[548,32574,32575],{},"editor.commands.setImage({ src, alt })"," 可程式式插入圖片",[1561,32578,32579,32580,32583],{},"序列化輸出為原始 ",[548,32581,32582],{},"\u003Cimg src=\"...\">","（HTML）或 image node attrs（JSON）",[536,32585,32587],{"id":32586},"進階-configure","進階 configure",[705,32589,32590,32591,32594],{},"需要 inline 圖片、允許 base64 等，自行用 ",[548,32592,32593],{},"Image.configure({...})"," 建立 instance：",[539,32596,32598],{"className":726,"code":32597,"language":728,"meta":546,"style":546},"\u003Cscript setup lang=\"ts\">\nimport { Image } from '@tiptap\u002Fextension-image'\n\nconst customImage = Image.configure({ inline: true, allowBase64: true })\n\u003C\u002Fscript>\n\n\u003Ctemplate>\n  \u003Cadmin-rich-editor v-model=\"value\" :extensions=\"[customImage]\" \u002F>\n\u003C\u002Ftemplate>\n",[548,32599,32600,32620,32638,32642,32681,32689,32693,32701,32730],{"__ignoreMap":546},[551,32601,32602,32604,32606,32608,32610,32612,32614,32616,32618],{"class":553,"line":554},[551,32603,735],{"class":587},[551,32605,3276],{"class":738},[551,32607,3279],{"class":753},[551,32609,3282],{"class":753},[551,32611,757],{"class":587},[551,32613,760],{"class":587},[551,32615,576],{"class":561},[551,32617,760],{"class":587},[551,32619,742],{"class":587},[551,32621,32622,32624,32626,32628,32630,32632,32634,32636],{"class":553,"line":591},[551,32623,584],{"class":583},[551,32625,1273],{"class":587},[551,32627,28305],{"class":594},[551,32629,1279],{"class":587},[551,32631,671],{"class":583},[551,32633,674],{"class":587},[551,32635,24722],{"class":561},[551,32637,680],{"class":587},[551,32639,32640],{"class":553,"line":601},[551,32641,1293],{"emptyLinePlaceholder":526},[551,32643,32644,32646,32649,32651,32653,32655,32657,32659,32661,32664,32666,32668,32670,32673,32675,32677,32679],{"class":553,"line":609},[551,32645,3321],{"class":753},[551,32647,32648],{"class":594}," customImage ",[551,32650,757],{"class":587},[551,32652,28305],{"class":594},[551,32654,1206],{"class":587},[551,32656,32347],{"class":1154},[551,32658,1158],{"class":594},[551,32660,4243],{"class":587},[551,32662,32663],{"class":738}," inline",[551,32665,1169],{"class":587},[551,32667,28714],{"class":17983},[551,32669,3348],{"class":587},[551,32671,32672],{"class":738}," allowBase64",[551,32674,1169],{"class":587},[551,32676,28714],{"class":17983},[551,32678,1279],{"class":587},[551,32680,1222],{"class":594},[551,32682,32683,32685,32687],{"class":553,"line":617},[551,32684,784],{"class":587},[551,32686,3276],{"class":738},[551,32688,742],{"class":587},[551,32690,32691],{"class":553,"line":625},[551,32692,1293],{"emptyLinePlaceholder":526},[551,32694,32695,32697,32699],{"class":553,"line":633},[551,32696,735],{"class":587},[551,32698,739],{"class":738},[551,32700,742],{"class":587},[551,32702,32703,32705,32707,32709,32711,32713,32715,32717,32719,32721,32723,32726,32728],{"class":553,"line":641},[551,32704,747],{"class":587},[551,32706,28243],{"class":738},[551,32708,2867],{"class":753},[551,32710,757],{"class":587},[551,32712,760],{"class":587},[551,32714,2720],{"class":561},[551,32716,760],{"class":587},[551,32718,30679],{"class":753},[551,32720,757],{"class":587},[551,32722,760],{"class":587},[551,32724,32725],{"class":561},"[customImage]",[551,32727,760],{"class":587},[551,32729,1449],{"class":587},[551,32731,32732,32734,32736],{"class":553,"line":649},[551,32733,784],{"class":587},[551,32735,739],{"class":738},[551,32737,742],{"class":587},[536,32739,720],{"id":719},[705,32741,32742,32744,32745,713],{},[548,32743,24722],{}," 套件 API 詳見 ",[697,32746,32749],{"href":32747,"rel":32748},"https:\u002F\u002Ftiptap.dev\u002Fdocs\u002Feditor\u002Fextensions\u002Fnodes\u002Fimage",[701],"tiptap image 官方文件",[536,32751,1556],{"id":1556},[1558,32753,32754],{},[1561,32755,32756,2466,32759,32761,32762,32764],{},[1135,32757,32758],{},"extension 必須在建立編輯器時注入",[548,32760,77],{}," 無法於編輯器建立後補上，未注入時 ",[548,32763,4645],{}," 內容會被 parser 丟掉。",[990,32766,32767],{},"html pre.shiki code .sBMFI, html code.shiki .sBMFI{--shiki-light:#E2931D;--shiki-default:#FFCB6B;--shiki-dark:#FFCB6B}html pre.shiki code .sfazB, html code.shiki .sfazB{--shiki-light:#91B859;--shiki-default:#C3E88D;--shiki-dark:#C3E88D}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 pre.shiki code .s7zQu, html code.shiki .s7zQu{--shiki-light:#39ADB5;--shiki-light-font-style:italic;--shiki-default:#89DDFF;--shiki-default-font-style:italic;--shiki-dark:#89DDFF;--shiki-dark-font-style:italic}html pre.shiki code .sMK4o, html code.shiki .sMK4o{--shiki-light:#39ADB5;--shiki-default:#89DDFF;--shiki-dark:#89DDFF}html pre.shiki code .sTEyZ, html code.shiki .sTEyZ{--shiki-light:#90A4AE;--shiki-default:#EEFFFF;--shiki-dark:#BABED8}html pre.shiki code .swJcz, html code.shiki .swJcz{--shiki-light:#E53935;--shiki-default:#F07178;--shiki-dark:#F07178}html pre.shiki code .spNyl, html code.shiki .spNyl{--shiki-light:#9C3EDA;--shiki-default:#C792EA;--shiki-dark:#C792EA}html pre.shiki code .s2Zo4, html code.shiki .s2Zo4{--shiki-light:#6182B8;--shiki-default:#82AAFF;--shiki-dark:#82AAFF}html pre.shiki code .sfNiH, html code.shiki .sfNiH{--shiki-light:#FF5370;--shiki-default:#FF9CAC;--shiki-dark:#FF9CAC}",{"title":546,"searchDepth":601,"depth":601,"links":32769},[32770,32771,32772,32773,32774],{"id":507,"depth":591,"text":507},{"id":683,"depth":591,"text":683},{"id":32586,"depth":591,"text":32587},{"id":719,"depth":591,"text":720},{"id":1556,"depth":591,"text":1556},"顯示圖片；以程式插入 img。",{"doc":32747},{},{"title":418,"description":32775},"5dY5jRpRaatIScaRbNaVHXu9x8_whnPygAq95Pgv1y0",{"id":32781,"title":422,"body":32782,"component":526,"description":33565,"extension":1015,"links":33566,"meta":33568,"navigation":526,"new":18,"path":423,"seo":33569,"stem":424,"wrapperKind":19,"__hash__":33570},"docs\u002Fdocs\u002Feditor\u002F4.addons\u002F10.emoji.md",{"type":533,"value":32783,"toc":33552},[32784,32786,32804,32850,32861,32900,32959,32961,32964,33251,33255,33268,33394,33398,33416,33420,33425,33477,33487,33516,33531,33533,33538,33540,33542,33545,33547,33549],[536,32785,507],{"id":507},[539,32787,32789],{"className":541,"code":32788,"filename":543,"language":544,"meta":545,"style":546},"pnpm dlx shadcn-vue add @admin\u002Feditor-emoji-menu\n",[548,32790,32791],{"__ignoreMap":546},[551,32792,32793,32795,32797,32799,32801],{"class":553,"line":554},[551,32794,558],{"class":557},[551,32796,562],{"class":561},[551,32798,565],{"class":561},[551,32800,568],{"class":561},[551,32802,32803],{"class":561}," @admin\u002Feditor-emoji-menu\n",[539,32805,32807],{"className":574,"code":32806,"language":576,"meta":546,"style":546},"import type { EmojiMenuItem } from '@\u002Fregistry\u002Fadmin\u002Fui\u002Feditor-emoji-menu'\nimport { AdminEditorEmojiMenu } from '@\u002Fregistry\u002Fadmin\u002Fui\u002Feditor-emoji-menu'\n",[548,32808,32809,32831],{"__ignoreMap":546},[551,32810,32811,32813,32815,32817,32820,32822,32824,32826,32829],{"class":553,"line":554},[551,32812,584],{"class":583},[551,32814,3137],{"class":583},[551,32816,1273],{"class":587},[551,32818,32819],{"class":594}," EmojiMenuItem",[551,32821,1279],{"class":587},[551,32823,671],{"class":583},[551,32825,674],{"class":587},[551,32827,32828],{"class":561},"@\u002Fregistry\u002Fadmin\u002Fui\u002Feditor-emoji-menu",[551,32830,680],{"class":587},[551,32832,32833,32835,32837,32840,32842,32844,32846,32848],{"class":553,"line":591},[551,32834,584],{"class":583},[551,32836,1273],{"class":587},[551,32838,32839],{"class":594}," AdminEditorEmojiMenu",[551,32841,1279],{"class":587},[551,32843,671],{"class":583},[551,32845,674],{"class":587},[551,32847,32828],{"class":561},[551,32849,680],{"class":587},[705,32851,32852,32855,32856,1613,32858,713],{},[548,32853,32854],{},"admin-editor-emoji-menu"," 依賴 ",[548,32857,27773],{},[548,32859,32860],{},"@tiptap\u002Fextension-emoji",[2817,32862,32864,32873],{"title":32863,"type":8626},"裝完必須在 :extensions 注入 Emoji",[705,32865,32866,32868,32869,32872],{},[548,32867,32860],{}," 跟 mention 一樣是 Node extension，會動到 schema，而 schema 在編輯器建立時就固定、無法後補。",[548,32870,32871],{},"\u003CAdminEditorEmojiMenu>"," mount 時會註冊 Suggestion plugin，popup 照常浮現，但 schema 沒有 emoji node 時，選定後只能退回插入純 Unicode 字元，失去 emoji node 的三個好處：",[1558,32874,32875,32884,32894],{},[1561,32876,32877,2466,32880,32883],{},[1135,32878,32879],{},"多 codepoint 安全",[548,32881,32882],{},"👨‍👩‍👧"," 這類 ZWJ 組合 emoji，純 Unicode 模式下游標和 backspace 會跳到字元中間",[1561,32885,32886,32889,32890,32893],{},[1135,32887,32888],{},"attrs 持久化","：node 模式存的是 ",[548,32891,32892],{},"data-name=\"smile\"","，之後可以用 shortcode 反查、切換 emoji set",[1561,32895,32896,32899],{},[1135,32897,32898],{},"不吃 mark","：atomic node 不會被 bold \u002F italic \u002F color 等 mark 套到",[539,32901,32903],{"className":574,"code":32902,"language":576,"meta":546,"style":546},"import Emoji from '@tiptap\u002Fextension-emoji'\nconst extensions = [Emoji.configure({ enableEmoticons: false })]\n\n\u002F\u002F \u003CAdminRichEditor :extensions=\"extensions\">\n",[548,32904,32905,32920,32950,32954],{"__ignoreMap":546},[551,32906,32907,32909,32912,32914,32916,32918],{"class":553,"line":554},[551,32908,584],{"class":583},[551,32910,32911],{"class":594}," Emoji ",[551,32913,1259],{"class":583},[551,32915,674],{"class":587},[551,32917,32860],{"class":561},[551,32919,680],{"class":587},[551,32921,32922,32924,32926,32928,32931,32933,32935,32937,32939,32942,32944,32946,32948],{"class":553,"line":591},[551,32923,3321],{"class":753},[551,32925,32337],{"class":594},[551,32927,757],{"class":587},[551,32929,32930],{"class":594}," [Emoji",[551,32932,1206],{"class":587},[551,32934,32347],{"class":1154},[551,32936,1158],{"class":594},[551,32938,4243],{"class":587},[551,32940,32941],{"class":738}," enableEmoticons",[551,32943,1169],{"class":587},[551,32945,17984],{"class":17983},[551,32947,1279],{"class":587},[551,32949,32354],{"class":594},[551,32951,32952],{"class":553,"line":601},[551,32953,1293],{"emptyLinePlaceholder":526},[551,32955,32956],{"class":553,"line":609},[551,32957,32958],{"class":4831},"\u002F\u002F \u003CAdminRichEditor :extensions=\"extensions\">\n",[536,32960,683],{"id":683},[685,32962],{"name":32963},"EditorEmojiMenuDemo",[539,32965,32967],{"className":726,"code":32966,"language":728,"meta":546,"style":546},"\u003Cscript setup lang=\"ts\">\nimport Emoji, { gitHubEmojis } from '@tiptap\u002Fextension-emoji'\nimport { ref } from 'vue'\nimport { AdminEditorEmojiMenu } from '@\u002Fregistry\u002Fadmin\u002Fui\u002Feditor-emoji-menu'\nimport { AdminRichEditor } from '@\u002Fregistry\u002Fadmin\u002Fui\u002Frich-editor'\n\nconst value = ref('')\n\u002F\u002F @tiptap\u002Fextension-emoji 內附 gitHubEmojis 資料集（約 1500 個），免自帶 JSON\nconst emojis = gitHubEmojis.slice(0, 50)\n\n\u002F\u002F schema 需要 emoji node，顯式傳入 Emoji extension\nconst extensions = [Emoji.configure({ enableEmoticons: false })]\n\u003C\u002Fscript>\n\n\u003Ctemplate>\n  \u003Cadmin-rich-editor v-slot=\"{ editor }\" v-model=\"value\" :extensions=\"extensions\">\n    \u003Cadmin-editor-emoji-menu :editor :items=\"emojis\" \u002F>\n  \u003C\u002Fadmin-rich-editor>\n\u003C\u002Ftemplate>\n",[548,32968,32969,32989,33013,33031,33049,33067,33071,33087,33092,33119,33123,33128,33156,33164,33168,33176,33214,33235,33243],{"__ignoreMap":546},[551,32970,32971,32973,32975,32977,32979,32981,32983,32985,32987],{"class":553,"line":554},[551,32972,735],{"class":587},[551,32974,3276],{"class":738},[551,32976,3279],{"class":753},[551,32978,3282],{"class":753},[551,32980,757],{"class":587},[551,32982,760],{"class":587},[551,32984,576],{"class":561},[551,32986,760],{"class":587},[551,32988,742],{"class":587},[551,32990,32991,32993,32996,32998,33000,33003,33005,33007,33009,33011],{"class":553,"line":591},[551,32992,584],{"class":583},[551,32994,32995],{"class":594}," Emoji",[551,32997,3348],{"class":587},[551,32999,1273],{"class":587},[551,33001,33002],{"class":594}," gitHubEmojis",[551,33004,1279],{"class":587},[551,33006,671],{"class":583},[551,33008,674],{"class":587},[551,33010,32860],{"class":561},[551,33012,680],{"class":587},[551,33014,33015,33017,33019,33021,33023,33025,33027,33029],{"class":553,"line":601},[551,33016,584],{"class":583},[551,33018,1273],{"class":587},[551,33020,3427],{"class":594},[551,33022,1279],{"class":587},[551,33024,671],{"class":583},[551,33026,674],{"class":587},[551,33028,728],{"class":561},[551,33030,680],{"class":587},[551,33032,33033,33035,33037,33039,33041,33043,33045,33047],{"class":553,"line":609},[551,33034,584],{"class":583},[551,33036,1273],{"class":587},[551,33038,32839],{"class":594},[551,33040,1279],{"class":587},[551,33042,671],{"class":583},[551,33044,674],{"class":587},[551,33046,32828],{"class":561},[551,33048,680],{"class":587},[551,33050,33051,33053,33055,33057,33059,33061,33063,33065],{"class":553,"line":617},[551,33052,584],{"class":583},[551,33054,1273],{"class":587},[551,33056,28119],{"class":594},[551,33058,1279],{"class":587},[551,33060,671],{"class":583},[551,33062,674],{"class":587},[551,33064,28128],{"class":561},[551,33066,680],{"class":587},[551,33068,33069],{"class":553,"line":625},[551,33070,1293],{"emptyLinePlaceholder":526},[551,33072,33073,33075,33077,33079,33081,33083,33085],{"class":553,"line":633},[551,33074,3321],{"class":753},[551,33076,3422],{"class":594},[551,33078,757],{"class":587},[551,33080,3427],{"class":1154},[551,33082,1158],{"class":594},[551,33084,8639],{"class":587},[551,33086,1222],{"class":594},[551,33088,33089],{"class":553,"line":641},[551,33090,33091],{"class":4831},"\u002F\u002F @tiptap\u002Fextension-emoji 內附 gitHubEmojis 資料集（約 1500 個），免自帶 JSON\n",[551,33093,33094,33096,33099,33101,33103,33105,33108,33110,33112,33114,33117],{"class":553,"line":649},[551,33095,3321],{"class":753},[551,33097,33098],{"class":594}," emojis ",[551,33100,757],{"class":587},[551,33102,33002],{"class":594},[551,33104,1206],{"class":587},[551,33106,33107],{"class":1154},"slice",[551,33109,1158],{"class":594},[551,33111,22465],{"class":17275},[551,33113,3348],{"class":587},[551,33115,33116],{"class":17275}," 50",[551,33118,1222],{"class":594},[551,33120,33121],{"class":553,"line":657},[551,33122,1293],{"emptyLinePlaceholder":526},[551,33124,33125],{"class":553,"line":665},[551,33126,33127],{"class":4831},"\u002F\u002F schema 需要 emoji node，顯式傳入 Emoji extension\n",[551,33129,33130,33132,33134,33136,33138,33140,33142,33144,33146,33148,33150,33152,33154],{"class":553,"line":901},[551,33131,3321],{"class":753},[551,33133,32337],{"class":594},[551,33135,757],{"class":587},[551,33137,32930],{"class":594},[551,33139,1206],{"class":587},[551,33141,32347],{"class":1154},[551,33143,1158],{"class":594},[551,33145,4243],{"class":587},[551,33147,32941],{"class":738},[551,33149,1169],{"class":587},[551,33151,17984],{"class":17983},[551,33153,1279],{"class":587},[551,33155,32354],{"class":594},[551,33157,33158,33160,33162],{"class":553,"line":910},[551,33159,784],{"class":587},[551,33161,3276],{"class":738},[551,33163,742],{"class":587},[551,33165,33166],{"class":553,"line":920},[551,33167,1293],{"emptyLinePlaceholder":526},[551,33169,33170,33172,33174],{"class":553,"line":930},[551,33171,735],{"class":587},[551,33173,739],{"class":738},[551,33175,742],{"class":587},[551,33177,33178,33180,33182,33184,33186,33188,33190,33192,33194,33196,33198,33200,33202,33204,33206,33208,33210,33212],{"class":553,"line":3536},[551,33179,747],{"class":587},[551,33181,28243],{"class":738},[551,33183,3595],{"class":753},[551,33185,757],{"class":587},[551,33187,760],{"class":587},[551,33189,30664],{"class":561},[551,33191,760],{"class":587},[551,33193,2867],{"class":753},[551,33195,757],{"class":587},[551,33197,760],{"class":587},[551,33199,2720],{"class":561},[551,33201,760],{"class":587},[551,33203,30679],{"class":753},[551,33205,757],{"class":587},[551,33207,760],{"class":587},[551,33209,18579],{"class":561},[551,33211,760],{"class":587},[551,33213,742],{"class":587},[551,33215,33216,33218,33220,33222,33224,33226,33228,33231,33233],{"class":553,"line":4422},[551,33217,772],{"class":587},[551,33219,32854],{"class":738},[551,33221,28211],{"class":753},[551,33223,15260],{"class":753},[551,33225,757],{"class":587},[551,33227,760],{"class":587},[551,33229,33230],{"class":561},"emojis",[551,33232,760],{"class":587},[551,33234,1449],{"class":587},[551,33236,33237,33239,33241],{"class":553,"line":6194},[551,33238,923],{"class":587},[551,33240,28243],{"class":738},[551,33242,742],{"class":587},[551,33244,33245,33247,33249],{"class":553,"line":6204},[551,33246,784],{"class":587},[551,33248,739],{"class":738},[551,33250,742],{"class":587},[536,33252,33254],{"id":33253},"emojimenuitem-介面","EmojiMenuItem 介面",[705,33256,33257,33258,33261,33262,7623,33264,33267],{},"本 block 的 ",[548,33259,33260],{},"EmojiMenuItem"," 跟 ",[548,33263,32860],{},[548,33265,33266],{},"EmojiItem"," shape 一致：",[539,33269,33271],{"className":574,"code":33270,"language":576,"meta":546,"style":546},"interface EmojiMenuItem {\n  name: string \u002F\u002F 唯一名稱，當作 emoji node attr 存\n  emoji?: string \u002F\u002F Unicode 字元（fallback 模式時用）\n  shortcodes: string[] \u002F\u002F 簡碼 filter 欄位（:smile \u002F :+1）\n  tags: string[] \u002F\u002F 標籤 filter 欄位（happy \u002F love）\n  group?: string \u002F\u002F 分組（供 UI 分類）\n  fallbackImage?: string \u002F\u002F emoji 為 undefined 時的圖片 fallback（自訂貼圖）\n  emoticons?: string[] \u002F\u002F 顏文字（`:)` 對應 :smile），配 enableEmoticons 使用\n  [key: string]: unknown\n}\n",[548,33272,33273,33281,33293,33305,33320,33334,33346,33358,33372,33390],{"__ignoreMap":546},[551,33274,33275,33277,33279],{"class":553,"line":554},[551,33276,25872],{"class":753},[551,33278,32819],{"class":557},[551,33280,588],{"class":587},[551,33282,33283,33285,33287,33290],{"class":553,"line":591},[551,33284,8992],{"class":738},[551,33286,1169],{"class":587},[551,33288,33289],{"class":557}," string",[551,33291,33292],{"class":4831}," \u002F\u002F 唯一名稱，當作 emoji node attr 存\n",[551,33294,33295,33298,33300,33302],{"class":553,"line":601},[551,33296,33297],{"class":738},"  emoji",[551,33299,9027],{"class":587},[551,33301,33289],{"class":557},[551,33303,33304],{"class":4831}," \u002F\u002F Unicode 字元（fallback 模式時用）\n",[551,33306,33307,33310,33312,33314,33317],{"class":553,"line":609},[551,33308,33309],{"class":738},"  shortcodes",[551,33311,1169],{"class":587},[551,33313,33289],{"class":557},[551,33315,33316],{"class":594},"[] ",[551,33318,33319],{"class":4831},"\u002F\u002F 簡碼 filter 欄位（:smile \u002F :+1）\n",[551,33321,33322,33325,33327,33329,33331],{"class":553,"line":617},[551,33323,33324],{"class":738},"  tags",[551,33326,1169],{"class":587},[551,33328,33289],{"class":557},[551,33330,33316],{"class":594},[551,33332,33333],{"class":4831},"\u002F\u002F 標籤 filter 欄位（happy \u002F love）\n",[551,33335,33336,33339,33341,33343],{"class":553,"line":625},[551,33337,33338],{"class":738},"  group",[551,33340,9027],{"class":587},[551,33342,33289],{"class":557},[551,33344,33345],{"class":4831}," \u002F\u002F 分組（供 UI 分類）\n",[551,33347,33348,33351,33353,33355],{"class":553,"line":633},[551,33349,33350],{"class":738},"  fallbackImage",[551,33352,9027],{"class":587},[551,33354,33289],{"class":557},[551,33356,33357],{"class":4831}," \u002F\u002F emoji 為 undefined 時的圖片 fallback（自訂貼圖）\n",[551,33359,33360,33363,33365,33367,33369],{"class":553,"line":641},[551,33361,33362],{"class":738},"  emoticons",[551,33364,9027],{"class":587},[551,33366,33289],{"class":557},[551,33368,33316],{"class":594},[551,33370,33371],{"class":4831},"\u002F\u002F 顏文字（`:)` 對應 :smile），配 enableEmoticons 使用\n",[551,33373,33374,33376,33379,33381,33383,33385,33387],{"class":553,"line":649},[551,33375,28841],{"class":594},[551,33377,33378],{"class":1193},"key",[551,33380,1169],{"class":587},[551,33382,33289],{"class":557},[551,33384,3452],{"class":594},[551,33386,1169],{"class":587},[551,33388,33389],{"class":557}," unknown\n",[551,33391,33392],{"class":553,"line":657},[551,33393,10148],{"class":587},[692,33395,33397],{"id":33396},"filter-多欄位行為","filter 多欄位行為",[705,33399,33400,33401,33404,33405,29438,33408,33411,33412,33415],{},"預設 ",[548,33402,33403],{},"filterFields = ['name', 'shortcodes', 'tags']","，輸入的字串會同時比對這三個欄位。例如輸入 ",[548,33406,33407],{},":happy",[548,33409,33410],{},"{ name: 'grinning', shortcodes: ['grin'], tags: ['happy', 'joy'] }"," 會因 ",[548,33413,33414],{},"tags"," 命中而列入結果。",[536,33417,33419],{"id":33418},"emoji-資料集","emoji 資料集",[705,33421,33422,33424],{},[548,33423,32860],{}," 內附三個資料集，免自帶 JSON：",[539,33426,33428],{"className":574,"code":33427,"language":576,"meta":546,"style":546},"import { emojis, gitHubCustomEmojis, gitHubEmojis } from '@tiptap\u002Fextension-emoji'\n\n\u002F\u002F emojis：通用 Unicode emoji 全集\n\u002F\u002F gitHubEmojis：GitHub 風格（約 1500 個，含 shortcode）\n\u002F\u002F gitHubCustomEmojis：GitHub 自訂（如 :octocat:）\n",[548,33429,33430,33458,33462,33467,33472],{"__ignoreMap":546},[551,33431,33432,33434,33436,33439,33441,33444,33446,33448,33450,33452,33454,33456],{"class":553,"line":554},[551,33433,584],{"class":583},[551,33435,1273],{"class":587},[551,33437,33438],{"class":594}," emojis",[551,33440,3348],{"class":587},[551,33442,33443],{"class":594}," gitHubCustomEmojis",[551,33445,3348],{"class":587},[551,33447,33002],{"class":594},[551,33449,1279],{"class":587},[551,33451,671],{"class":583},[551,33453,674],{"class":587},[551,33455,32860],{"class":561},[551,33457,680],{"class":587},[551,33459,33460],{"class":553,"line":591},[551,33461,1293],{"emptyLinePlaceholder":526},[551,33463,33464],{"class":553,"line":601},[551,33465,33466],{"class":4831},"\u002F\u002F emojis：通用 Unicode emoji 全集\n",[551,33468,33469],{"class":553,"line":609},[551,33470,33471],{"class":4831},"\u002F\u002F gitHubEmojis：GitHub 風格（約 1500 個，含 shortcode）\n",[551,33473,33474],{"class":553,"line":617},[551,33475,33476],{"class":4831},"\u002F\u002F gitHubCustomEmojis：GitHub 自訂（如 :octocat:）\n",[705,33478,33479,33480,33483,33484,33486],{},"要自訂資料集，直接傳 ",[548,33481,33482],{},"EmojiMenuItem[]"," 給 ",[548,33485,31776],{}," 即可。後台情境通常 50 到 100 個常用就夠：",[539,33488,33490],{"className":574,"code":33489,"language":576,"meta":546,"style":546},"const emojis = gitHubEmojis.slice(0, 50)\n",[548,33491,33492],{"__ignoreMap":546},[551,33493,33494,33496,33498,33500,33502,33504,33506,33508,33510,33512,33514],{"class":553,"line":554},[551,33495,3321],{"class":753},[551,33497,33098],{"class":594},[551,33499,757],{"class":587},[551,33501,33002],{"class":594},[551,33503,1206],{"class":587},[551,33505,33107],{"class":1154},[551,33507,1158],{"class":594},[551,33509,22465],{"class":17275},[551,33511,3348],{"class":587},[551,33513,33116],{"class":17275},[551,33515,1222],{"class":594},[705,33517,33518,33519,33522,33523,33526,33527,33530],{},"資料量上千時，改用 ",[548,33520,33521],{},"v-model:search-term"," 加 ",[548,33524,33525],{},"ignore-filter"," 接外部 fuzzy library（如 ",[548,33528,33529],{},"fuse.js","），避免內建 fuzzy filter 卡頓。",[536,33532,5752],{"id":5752},[705,33534,26929,33535,713],{},[697,33536,426],{"href":33537},"\u002Fdocs\u002Feditor\u002Faddons\u002Fsuggestion#%E9%8D%B5%E7%9B%A4%E5%B0%8E%E8%88%AA",[536,33539,720],{"id":719},[692,33541,32854],{"id":32854},[940,33543],{"component":33544},"AdminEditorEmojiMenu",[536,33546,985],{"id":985},[987,33548],{"component":33544},[990,33550,33551],{},"html pre.shiki code .sBMFI, html code.shiki .sBMFI{--shiki-light:#E2931D;--shiki-default:#FFCB6B;--shiki-dark:#FFCB6B}html pre.shiki code .sfazB, html code.shiki .sfazB{--shiki-light:#91B859;--shiki-default:#C3E88D;--shiki-dark:#C3E88D}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 pre.shiki code .s7zQu, html code.shiki .s7zQu{--shiki-light:#39ADB5;--shiki-light-font-style:italic;--shiki-default:#89DDFF;--shiki-default-font-style:italic;--shiki-dark:#89DDFF;--shiki-dark-font-style:italic}html pre.shiki code .sMK4o, html code.shiki .sMK4o{--shiki-light:#39ADB5;--shiki-default:#89DDFF;--shiki-dark:#89DDFF}html pre.shiki code .sTEyZ, html code.shiki .sTEyZ{--shiki-light:#90A4AE;--shiki-default:#EEFFFF;--shiki-dark:#BABED8}html pre.shiki code .spNyl, html code.shiki .spNyl{--shiki-light:#9C3EDA;--shiki-default:#C792EA;--shiki-dark:#C792EA}html pre.shiki code .s2Zo4, html code.shiki .s2Zo4{--shiki-light:#6182B8;--shiki-default:#82AAFF;--shiki-dark:#82AAFF}html pre.shiki code .swJcz, html code.shiki .swJcz{--shiki-light:#E53935;--shiki-default:#F07178;--shiki-dark:#F07178}html pre.shiki code .sfNiH, html code.shiki .sfNiH{--shiki-light:#FF5370;--shiki-default:#FF9CAC;--shiki-dark:#FF9CAC}html pre.shiki code .sHwdD, html code.shiki .sHwdD{--shiki-light:#90A4AE;--shiki-light-font-style:italic;--shiki-default:#546E7A;--shiki-default-font-style:italic;--shiki-dark:#676E95;--shiki-dark-font-style:italic}html pre.shiki code .sbssI, html code.shiki .sbssI{--shiki-light:#F76D47;--shiki-default:#F78C6C;--shiki-dark:#F78C6C}html pre.shiki code .sHdIc, html code.shiki .sHdIc{--shiki-light:#90A4AE;--shiki-light-font-style:italic;--shiki-default:#EEFFFF;--shiki-default-font-style:italic;--shiki-dark:#BABED8;--shiki-dark-font-style:italic}",{"title":546,"searchDepth":601,"depth":601,"links":33553},[33554,33555,33556,33559,33560,33561,33564],{"id":507,"depth":591,"text":507},{"id":683,"depth":591,"text":683},{"id":33253,"depth":591,"text":33254,"children":33557},[33558],{"id":33396,"depth":601,"text":33397},{"id":33418,"depth":591,"text":33419},{"id":5752,"depth":591,"text":5752},{"id":719,"depth":591,"text":720,"children":33562},[33563],{"id":32854,"depth":601,"text":32854},{"id":985,"depth":591,"text":985},"輸入 : 觸發浮動選單；挑選並插入 emoji。",{"doc":33567},"https:\u002F\u002Ftiptap.dev\u002Fdocs\u002Feditor\u002Fextensions\u002Fnodes\u002Femoji",{},{"title":422,"description":33565},"Y0M91JooIj7RuEnCgdY0enjVN_DmeNJJ3u4NQrNQhYM",{"id":33572,"title":426,"body":33573,"component":526,"description":34107,"extension":1015,"links":34108,"meta":34110,"navigation":526,"new":18,"path":427,"seo":34111,"stem":428,"wrapperKind":19,"__hash__":34112},"docs\u002Fdocs\u002Feditor\u002F4.addons\u002F11.suggestion.md",{"type":533,"value":33574,"toc":34096},[33575,33577,33595,33641,33660,33662,33676,33679,33683,33741,33763,33885,33888,33923,33926,33928,33935,33970,33973,33977,33986,34082,34084,34086,34089,34091,34093],[536,33576,507],{"id":507},[539,33578,33580],{"className":541,"code":33579,"filename":543,"language":544,"meta":545,"style":546},"pnpm dlx shadcn-vue add @admin\u002Feditor-suggestion-menu\n",[548,33581,33582],{"__ignoreMap":546},[551,33583,33584,33586,33588,33590,33592],{"class":553,"line":554},[551,33585,558],{"class":557},[551,33587,562],{"class":561},[551,33589,565],{"class":561},[551,33591,568],{"class":561},[551,33593,33594],{"class":561}," @admin\u002Feditor-suggestion-menu\n",[539,33596,33598],{"className":574,"code":33597,"language":576,"meta":546,"style":546},"import type { EditorSuggestionMenuItem } from '@\u002Fregistry\u002Fadmin\u002Fui\u002Feditor-suggestion-menu'\nimport { AdminEditorSuggestionMenu } from '@\u002Fregistry\u002Fadmin\u002Fui\u002Feditor-suggestion-menu'\n",[548,33599,33600,33622],{"__ignoreMap":546},[551,33601,33602,33604,33606,33608,33611,33613,33615,33617,33620],{"class":553,"line":554},[551,33603,584],{"class":583},[551,33605,3137],{"class":583},[551,33607,1273],{"class":587},[551,33609,33610],{"class":594}," EditorSuggestionMenuItem",[551,33612,1279],{"class":587},[551,33614,671],{"class":583},[551,33616,674],{"class":587},[551,33618,33619],{"class":561},"@\u002Fregistry\u002Fadmin\u002Fui\u002Feditor-suggestion-menu",[551,33621,680],{"class":587},[551,33623,33624,33626,33628,33631,33633,33635,33637,33639],{"class":553,"line":591},[551,33625,584],{"class":583},[551,33627,1273],{"class":587},[551,33629,33630],{"class":594}," AdminEditorSuggestionMenu",[551,33632,1279],{"class":587},[551,33634,671],{"class":583},[551,33636,674],{"class":587},[551,33638,33619],{"class":561},[551,33640,680],{"class":587},[705,33642,33643,33646,33647,33650,33651,33653,33654,33656,33657,33659],{},[548,33644,33645],{},"admin-editor-suggestion-menu"," 只依賴 ",[548,33648,33649],{},"@admin\u002Feditor-core","（menu popup engine 與共用型別）；",[548,33652,28221],{}," 由呼叫端顯式傳入，可搭 ",[548,33655,29649],{}," 或 base ",[548,33658,29908],{}," 使用。",[536,33661,683],{"id":683},[705,33663,33664,33665,33668,33669,33672,33673,33675],{},"在 ",[548,33666,33667],{},"\u003Cadmin-rich-editor v-slot=\"{ editor, handlers }\">"," slot 內加 ",[548,33670,33671],{},"\u003Cadmin-editor-suggestion-menu :editor :handlers :items=\"...\">","。輸入 ",[548,33674,2243],{}," 觸發 popup。",[685,33677],{"name":33678},"EditorSuggestionMenuDemo",[536,33680,33682],{"id":33681},"editorsuggestionmenuitem-介面","EditorSuggestionMenuItem 介面",[539,33684,33686],{"className":574,"code":33685,"language":576,"meta":546,"style":546},"type EditorSuggestionMenuItem = EditorItem & {\n  label: string\n  description?: string\n  icon?: Component | string\n}\n",[548,33687,33688,33704,33714,33723,33737],{"__ignoreMap":546},[551,33689,33690,33692,33694,33696,33699,33702],{"class":553,"line":554},[551,33691,2585],{"class":753},[551,33693,33610],{"class":557},[551,33695,10094],{"class":587},[551,33697,33698],{"class":557}," EditorItem",[551,33700,33701],{"class":587}," &",[551,33703,588],{"class":587},[551,33705,33706,33709,33711],{"class":553,"line":591},[551,33707,33708],{"class":738},"  label",[551,33710,1169],{"class":587},[551,33712,33713],{"class":557}," string\n",[551,33715,33716,33719,33721],{"class":553,"line":601},[551,33717,33718],{"class":738},"  description",[551,33720,9027],{"class":587},[551,33722,33713],{"class":557},[551,33724,33725,33728,33730,33733,33735],{"class":553,"line":609},[551,33726,33727],{"class":738},"  icon",[551,33729,9027],{"class":587},[551,33731,33732],{"class":557}," Component",[551,33734,25918],{"class":587},[551,33736,33713],{"class":557},[551,33738,33739],{"class":553,"line":617},[551,33740,10148],{"class":587},[705,33742,33743,33746,33747,33750,33751,33753,33754,1123,33756,1123,33759,33762],{},[548,33744,33745],{},"EditorItem"," 是 ",[548,33748,33749],{},"admin-editor-core"," 定義的 discriminated union（",[548,33752,28243],{}," 也有 re-export），涵蓋 ",[548,33755,27604],{},[548,33757,33758],{},"heading",[548,33760,33761],{},"link","、12 個無參數 kind 與自訂 handler kind。它直接重用 toolbar items 的結構，寫過 toolbar 就會寫：",[539,33764,33766],{"className":574,"code":33765,"language":576,"meta":546,"style":546},"const slashItems: EditorSuggestionMenuItem[] = [\n  { kind: 'heading', level: 1, label: '標題 1' },\n  { kind: 'bulletList', label: '項目清單' },\n  { kind: 'blockquote', label: '引言' }\n]\n",[548,33767,33768,33785,33824,33852,33881],{"__ignoreMap":546},[551,33769,33770,33772,33775,33777,33779,33781,33783],{"class":553,"line":554},[551,33771,3321],{"class":753},[551,33773,33774],{"class":594}," slashItems",[551,33776,1169],{"class":587},[551,33778,33610],{"class":557},[551,33780,33316],{"class":594},[551,33782,757],{"class":587},[551,33784,1315],{"class":594},[551,33786,33787,33789,33791,33793,33795,33797,33799,33801,33804,33806,33809,33811,33813,33815,33817,33820,33822],{"class":553,"line":591},[551,33788,3333],{"class":587},[551,33790,28846],{"class":738},[551,33792,1169],{"class":587},[551,33794,674],{"class":587},[551,33796,33758],{"class":561},[551,33798,1214],{"class":587},[551,33800,3348],{"class":587},[551,33802,33803],{"class":738}," level",[551,33805,1169],{"class":587},[551,33807,33808],{"class":17275}," 1",[551,33810,3348],{"class":587},[551,33812,28860],{"class":738},[551,33814,1169],{"class":587},[551,33816,674],{"class":587},[551,33818,33819],{"class":561},"標題 1",[551,33821,1214],{"class":587},[551,33823,3363],{"class":587},[551,33825,33826,33828,33830,33832,33834,33836,33838,33840,33842,33844,33846,33848,33850],{"class":553,"line":601},[551,33827,3333],{"class":587},[551,33829,28846],{"class":738},[551,33831,1169],{"class":587},[551,33833,674],{"class":587},[551,33835,22107],{"class":561},[551,33837,1214],{"class":587},[551,33839,3348],{"class":587},[551,33841,28860],{"class":738},[551,33843,1169],{"class":587},[551,33845,674],{"class":587},[551,33847,19127],{"class":561},[551,33849,1214],{"class":587},[551,33851,3363],{"class":587},[551,33853,33854,33856,33858,33860,33862,33864,33866,33868,33870,33872,33874,33877,33879],{"class":553,"line":609},[551,33855,3333],{"class":587},[551,33857,28846],{"class":738},[551,33859,1169],{"class":587},[551,33861,674],{"class":587},[551,33863,2806],{"class":561},[551,33865,1214],{"class":587},[551,33867,3348],{"class":587},[551,33869,28860],{"class":738},[551,33871,1169],{"class":587},[551,33873,674],{"class":587},[551,33875,33876],{"class":561},"引言",[551,33878,1214],{"class":587},[551,33880,18827],{"class":587},[551,33882,33883],{"class":553,"line":617},[551,33884,9080],{"class":594},[705,33886,33887],{},"選定 item 後 SFC 內部會：",[17110,33889,33890,33900,33918],{},[1561,33891,28040,33892,33895,33896,33899],{},[548,33893,33894],{},"editor.chain().focus().deleteRange(range)"," 刪掉 ",[548,33897,33898],{},"\u002Fxxx"," 觸發範圍",[1561,33901,30356,33902,33905,33906,8904,33909,33911,33912,33914,33915,19410],{},[548,33903,33904],{},"props.handlers"," 取出 ",[548,33907,33908],{},"handler[item.kind]",[548,33910,28221],{}," 由呼叫端顯式傳入，可取自 ",[548,33913,31812],{}," 或 base editor 情境的 ",[548,33916,33917],{},"createDefaultHandlers()",[1561,33919,4155,33920],{},[548,33921,33922],{},"handler.execute(editor, item).run()",[705,33924,33925],{},"由於與 toolbar items 共用 kind dispatch，對應 extension 未啟用時，選取後不會有動作（不會報錯）。",[536,33927,5752],{"id":5752},[705,33929,33930,33931,33934],{},"由 ",[548,33932,33933],{},"useEditorMenu"," composable 提供，不需額外設定：",[5754,33936,33937,33945],{},[5757,33938,33939],{},[5760,33940,33941,33943],{},[5763,33942,19639],{},[5763,33944,5768],{},[5770,33946,33947,33955,33963],{},[5760,33948,33949,33952],{},[5775,33950,33951],{},"ArrowUp \u002F ArrowDown",[5775,33953,33954],{},"上下移動選取",[5760,33956,33957,33960],{},[5775,33958,33959],{},"Enter \u002F Tab",[5775,33961,33962],{},"確認選取",[5760,33964,33965,33967],{},[5775,33966,5809],{},[5775,33968,33969],{},"關閉 popup",[705,33971,33972],{},"選取 label \u002F separator type 的 item 會自動跳過。",[536,33974,33976],{"id":33975},"與-toolbar-items-共用結構","與 toolbar items 共用結構",[705,33978,33979,33980,33982,33983,33985],{},"suggestion menu 的 ",[548,33981,31776],{}," 接受扁平或分組陣列。",[548,33984,28232],{}," 是分組陣列，攤平後即可直接沿用：",[539,33987,33989],{"className":574,"code":33988,"language":576,"meta":546,"style":546},"const slashItems = defaultEditorItems\n  .flat()\n  .filter((item): item is EditorSuggestionMenuItem =>\n    'kind' in item && typeof item.label === 'string'\n  )\n",[548,33990,33991,34003,34013,34040,34077],{"__ignoreMap":546},[551,33992,33993,33995,33998,34000],{"class":553,"line":554},[551,33994,3321],{"class":753},[551,33996,33997],{"class":594}," slashItems ",[551,33999,757],{"class":587},[551,34001,34002],{"class":594}," defaultEditorItems\n",[551,34004,34005,34008,34011],{"class":553,"line":591},[551,34006,34007],{"class":587},"  .",[551,34009,34010],{"class":1154},"flat",[551,34012,3457],{"class":594},[551,34014,34015,34017,34020,34022,34024,34026,34029,34032,34035,34037],{"class":553,"line":601},[551,34016,34007],{"class":587},[551,34018,34019],{"class":1154},"filter",[551,34021,1158],{"class":594},[551,34023,1158],{"class":587},[551,34025,29478],{"class":1193},[551,34027,34028],{"class":587},"):",[551,34030,34031],{"class":1193}," item",[551,34033,34034],{"class":587}," is",[551,34036,33610],{"class":557},[551,34038,34039],{"class":753}," =>\n",[551,34041,34042,34045,34047,34049,34052,34055,34058,34061,34063,34065,34068,34071,34073,34075],{"class":553,"line":609},[551,34043,34044],{"class":587},"    '",[551,34046,18171],{"class":561},[551,34048,1214],{"class":587},[551,34050,34051],{"class":587}," in",[551,34053,34054],{"class":594}," item ",[551,34056,34057],{"class":587},"&&",[551,34059,34060],{"class":587}," typeof",[551,34062,34031],{"class":594},[551,34064,1206],{"class":587},[551,34066,34067],{"class":594},"label ",[551,34069,34070],{"class":587},"===",[551,34072,674],{"class":587},[551,34074,3261],{"class":561},[551,34076,680],{"class":587},[551,34078,34079],{"class":553,"line":617},[551,34080,34081],{"class":594},"  )\n",[536,34083,720],{"id":719},[692,34085,33645],{"id":33645},[940,34087],{"component":34088},"AdminEditorSuggestionMenu",[536,34090,985],{"id":985},[987,34092],{"component":34088},[990,34094,34095],{},"html pre.shiki code .sBMFI, html code.shiki .sBMFI{--shiki-light:#E2931D;--shiki-default:#FFCB6B;--shiki-dark:#FFCB6B}html pre.shiki code .sfazB, html code.shiki .sfazB{--shiki-light:#91B859;--shiki-default:#C3E88D;--shiki-dark:#C3E88D}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 pre.shiki code .s7zQu, html code.shiki .s7zQu{--shiki-light:#39ADB5;--shiki-light-font-style:italic;--shiki-default:#89DDFF;--shiki-default-font-style:italic;--shiki-dark:#89DDFF;--shiki-dark-font-style:italic}html pre.shiki code .sMK4o, html code.shiki .sMK4o{--shiki-light:#39ADB5;--shiki-default:#89DDFF;--shiki-dark:#89DDFF}html pre.shiki code .sTEyZ, html code.shiki .sTEyZ{--shiki-light:#90A4AE;--shiki-default:#EEFFFF;--shiki-dark:#BABED8}html pre.shiki code .spNyl, html code.shiki .spNyl{--shiki-light:#9C3EDA;--shiki-default:#C792EA;--shiki-dark:#C792EA}html pre.shiki code .swJcz, html code.shiki .swJcz{--shiki-light:#E53935;--shiki-default:#F07178;--shiki-dark:#F07178}html pre.shiki code .sbssI, html code.shiki .sbssI{--shiki-light:#F76D47;--shiki-default:#F78C6C;--shiki-dark:#F78C6C}html pre.shiki code .s2Zo4, html code.shiki .s2Zo4{--shiki-light:#6182B8;--shiki-default:#82AAFF;--shiki-dark:#82AAFF}html pre.shiki code .sHdIc, html code.shiki .sHdIc{--shiki-light:#90A4AE;--shiki-light-font-style:italic;--shiki-default:#EEFFFF;--shiki-default-font-style:italic;--shiki-dark:#BABED8;--shiki-dark-font-style:italic}",{"title":546,"searchDepth":601,"depth":601,"links":34097},[34098,34099,34100,34101,34102,34103,34106],{"id":507,"depth":591,"text":507},{"id":683,"depth":591,"text":683},{"id":33681,"depth":591,"text":33682},{"id":5752,"depth":591,"text":5752},{"id":33975,"depth":591,"text":33976},{"id":719,"depth":591,"text":720,"children":34104},[34105],{"id":33645,"depth":601,"text":33645},{"id":985,"depth":591,"text":985},"輸入 \u002F 觸發浮動選單；挑選指令執行對應動作。",{"doc":34109},"https:\u002F\u002Ftiptap.dev\u002Fdocs\u002Feditor\u002Fextensions\u002Ffunctionality\u002Fsuggestion",{},{"title":426,"description":34107},"F821mT9VS6O7udVlpJAkiXhGo-StZv9hKmJKOsF87sU",{"id":34114,"title":430,"body":34115,"component":526,"description":34455,"extension":1015,"links":34456,"meta":34458,"navigation":526,"new":18,"path":431,"seo":34459,"stem":432,"wrapperKind":19,"__hash__":34460},"docs\u002Fdocs\u002Feditor\u002F4.addons\u002F12.link-bubble.md",{"type":533,"value":34116,"toc":34446},[34117,34119,34137,34162,34173,34175,34187,34190,34410,34412,34414,34417,34419,34440,34442,34444],[536,34118,507],{"id":507},[539,34120,34122],{"className":541,"code":34121,"filename":543,"language":544,"meta":545,"style":546},"pnpm dlx shadcn-vue add @admin\u002Feditor-link-bubble\n",[548,34123,34124],{"__ignoreMap":546},[551,34125,34126,34128,34130,34132,34134],{"class":553,"line":554},[551,34127,558],{"class":557},[551,34129,562],{"class":561},[551,34131,565],{"class":561},[551,34133,568],{"class":561},[551,34135,34136],{"class":561}," @admin\u002Feditor-link-bubble\n",[539,34138,34140],{"className":574,"code":34139,"language":576,"meta":546,"style":546},"import { AdminEditorLinkBubble } from '@\u002Fregistry\u002Fadmin\u002Fui\u002Feditor-link-bubble'\n",[548,34141,34142],{"__ignoreMap":546},[551,34143,34144,34146,34148,34151,34153,34155,34157,34160],{"class":553,"line":554},[551,34145,584],{"class":583},[551,34147,1273],{"class":587},[551,34149,34150],{"class":594}," AdminEditorLinkBubble",[551,34152,1279],{"class":587},[551,34154,671],{"class":583},[551,34156,674],{"class":587},[551,34158,34159],{"class":561},"@\u002Fregistry\u002Fadmin\u002Fui\u002Feditor-link-bubble",[551,34161,680],{"class":587},[705,34163,34164,32855,34167,34169,34170,34172],{},[548,34165,34166],{},"admin-editor-link-bubble",[548,34168,27773],{},"。Link mark 由 ",[548,34171,27773],{}," 的 StarterKit 提供，本包只負責浮層 UI。",[536,34174,683],{"id":683},[705,34176,17114,34177,34180,34181,34183,34184,34186],{},[548,34178,34179],{},"\u003CAdminEditorLinkBubble>"," 放進 ",[548,34182,29649],{}," 的 default slot，並傳入 slot 暴露的 ",[548,34185,18395],{},"。游標移到既有連結上即浮出泡泡。",[685,34188],{"name":34189},"EditorLinkBubbleDemo",[539,34191,34193],{"className":726,"code":34192,"language":728,"meta":546,"style":546},"\u003Cscript setup lang=\"ts\">\nimport { ref } from 'vue'\nimport { AdminEditorLinkBubble } from '@\u002Fregistry\u002Fadmin\u002Fui\u002Feditor-link-bubble'\nimport { AdminEditorToolbar, defaultEditorItems } from '@\u002Fregistry\u002Fadmin\u002Fui\u002Feditor-toolbar'\nimport { AdminRichEditor } from '@\u002Fregistry\u002Fadmin\u002Fui\u002Frich-editor'\n\nconst value = ref('\u003Cp>含\u003Ca href=\"https:\u002F\u002Fexample.com\">連結\u003C\u002Fa>的內容。\u003C\u002Fp>')\n\u003C\u002Fscript>\n\n\u003Ctemplate>\n  \u003Cadmin-rich-editor v-slot=\"{ editor }\" v-model=\"value\">\n    \u003Cadmin-editor-toolbar :editor :items=\"defaultEditorItems\" \u002F>\n    \u003Cadmin-editor-link-bubble :editor \u002F>\n  \u003C\u002Fadmin-rich-editor>\n\u003C\u002Ftemplate>\n",[548,34194,34195,34215,34233,34251,34273,34291,34295,34316,34324,34328,34336,34364,34384,34394,34402],{"__ignoreMap":546},[551,34196,34197,34199,34201,34203,34205,34207,34209,34211,34213],{"class":553,"line":554},[551,34198,735],{"class":587},[551,34200,3276],{"class":738},[551,34202,3279],{"class":753},[551,34204,3282],{"class":753},[551,34206,757],{"class":587},[551,34208,760],{"class":587},[551,34210,576],{"class":561},[551,34212,760],{"class":587},[551,34214,742],{"class":587},[551,34216,34217,34219,34221,34223,34225,34227,34229,34231],{"class":553,"line":591},[551,34218,584],{"class":583},[551,34220,1273],{"class":587},[551,34222,3427],{"class":594},[551,34224,1279],{"class":587},[551,34226,671],{"class":583},[551,34228,674],{"class":587},[551,34230,728],{"class":561},[551,34232,680],{"class":587},[551,34234,34235,34237,34239,34241,34243,34245,34247,34249],{"class":553,"line":601},[551,34236,584],{"class":583},[551,34238,1273],{"class":587},[551,34240,34150],{"class":594},[551,34242,1279],{"class":587},[551,34244,671],{"class":583},[551,34246,674],{"class":587},[551,34248,34159],{"class":561},[551,34250,680],{"class":587},[551,34252,34253,34255,34257,34259,34261,34263,34265,34267,34269,34271],{"class":553,"line":609},[551,34254,584],{"class":583},[551,34256,1273],{"class":587},[551,34258,28094],{"class":594},[551,34260,3348],{"class":587},[551,34262,28099],{"class":594},[551,34264,1279],{"class":587},[551,34266,671],{"class":583},[551,34268,674],{"class":587},[551,34270,28108],{"class":561},[551,34272,680],{"class":587},[551,34274,34275,34277,34279,34281,34283,34285,34287,34289],{"class":553,"line":617},[551,34276,584],{"class":583},[551,34278,1273],{"class":587},[551,34280,28119],{"class":594},[551,34282,1279],{"class":587},[551,34284,671],{"class":583},[551,34286,674],{"class":587},[551,34288,28128],{"class":561},[551,34290,680],{"class":587},[551,34292,34293],{"class":553,"line":625},[551,34294,1293],{"emptyLinePlaceholder":526},[551,34296,34297,34299,34301,34303,34305,34307,34309,34312,34314],{"class":553,"line":633},[551,34298,3321],{"class":753},[551,34300,3422],{"class":594},[551,34302,757],{"class":587},[551,34304,3427],{"class":1154},[551,34306,1158],{"class":594},[551,34308,1214],{"class":587},[551,34310,34311],{"class":561},"\u003Cp>含\u003Ca href=\"https:\u002F\u002Fexample.com\">連結\u003C\u002Fa>的內容。\u003C\u002Fp>",[551,34313,1214],{"class":587},[551,34315,1222],{"class":594},[551,34317,34318,34320,34322],{"class":553,"line":641},[551,34319,784],{"class":587},[551,34321,3276],{"class":738},[551,34323,742],{"class":587},[551,34325,34326],{"class":553,"line":649},[551,34327,1293],{"emptyLinePlaceholder":526},[551,34329,34330,34332,34334],{"class":553,"line":657},[551,34331,735],{"class":587},[551,34333,739],{"class":738},[551,34335,742],{"class":587},[551,34337,34338,34340,34342,34344,34346,34348,34350,34352,34354,34356,34358,34360,34362],{"class":553,"line":665},[551,34339,747],{"class":587},[551,34341,28243],{"class":738},[551,34343,3595],{"class":753},[551,34345,757],{"class":587},[551,34347,760],{"class":587},[551,34349,30664],{"class":561},[551,34351,760],{"class":587},[551,34353,2867],{"class":753},[551,34355,757],{"class":587},[551,34357,760],{"class":587},[551,34359,2720],{"class":561},[551,34361,760],{"class":587},[551,34363,742],{"class":587},[551,34365,34366,34368,34370,34372,34374,34376,34378,34380,34382],{"class":553,"line":901},[551,34367,772],{"class":587},[551,34369,28208],{"class":738},[551,34371,28211],{"class":753},[551,34373,15260],{"class":753},[551,34375,757],{"class":587},[551,34377,760],{"class":587},[551,34379,28232],{"class":561},[551,34381,760],{"class":587},[551,34383,1449],{"class":587},[551,34385,34386,34388,34390,34392],{"class":553,"line":910},[551,34387,772],{"class":587},[551,34389,34166],{"class":738},[551,34391,28211],{"class":753},[551,34393,1449],{"class":587},[551,34395,34396,34398,34400],{"class":553,"line":920},[551,34397,923],{"class":587},[551,34399,28243],{"class":738},[551,34401,742],{"class":587},[551,34403,34404,34406,34408],{"class":553,"line":930},[551,34405,784],{"class":587},[551,34407,739],{"class":738},[551,34409,742],{"class":587},[536,34411,720],{"id":719},[692,34413,34166],{"id":34166},[940,34415],{"component":34416},"AdminEditorLinkBubble",[536,34418,1556],{"id":1556},[1558,34420,34421,34430],{},[1561,34422,34423,34426,34427,34429],{},[1135,34424,34425],{},"與預設 prompt 並存","：未安裝本包時，toolbar 的 link 按鈕走 ",[548,34428,18175],{},"；裝上本包後，選到連結會多一層浮層編輯體驗，兩者不衝突。",[1561,34431,34432,34435,34436,34439],{},[1135,34433,34434],{},"需要 Link mark","：依賴 StarterKit 內建的 Link mark；若以 ",[548,34437,34438],{},":starter-kit=\"{ link: false }\""," 關閉 link，則本浮層不會出現。",[536,34441,985],{"id":985},[987,34443],{"component":34416},[990,34445,3744],{},{"title":546,"searchDepth":601,"depth":601,"links":34447},[34448,34449,34450,34453,34454],{"id":507,"depth":591,"text":507},{"id":683,"depth":591,"text":683},{"id":719,"depth":591,"text":720,"children":34451},[34452],{"id":34166,"depth":601,"text":34166},{"id":1556,"depth":591,"text":1556},{"id":985,"depth":591,"text":985},"游標位於連結時浮出泡泡；檢視、編輯、移除。",{"doc":34457},"https:\u002F\u002Ftiptap.dev\u002Fdocs\u002Feditor\u002Fextensions\u002Fmarks\u002Flink",{},{"title":430,"description":34455},"bMl8CpM4qBDS-5RnwXga8XjXbi0_t5eOgSnRcNooxEI",{"id":34462,"title":434,"body":34463,"component":526,"description":34810,"extension":1015,"links":19,"meta":34811,"navigation":526,"new":18,"path":435,"seo":34812,"stem":436,"wrapperKind":19,"__hash__":34813},"docs\u002Fdocs\u002Feditor\u002F4.addons\u002F13.list-trash.md",{"type":533,"value":34464,"toc":34801},[34465,34467,34485,34510,34522,34524,34532,34535,34755,34757,34759,34762,34764,34795,34797,34799],[536,34466,507],{"id":507},[539,34468,34470],{"className":541,"code":34469,"filename":543,"language":544,"meta":545,"style":546},"pnpm dlx shadcn-vue add @admin\u002Feditor-list-trash\n",[548,34471,34472],{"__ignoreMap":546},[551,34473,34474,34476,34478,34480,34482],{"class":553,"line":554},[551,34475,558],{"class":557},[551,34477,562],{"class":561},[551,34479,565],{"class":561},[551,34481,568],{"class":561},[551,34483,34484],{"class":561}," @admin\u002Feditor-list-trash\n",[539,34486,34488],{"className":574,"code":34487,"language":576,"meta":546,"style":546},"import { AdminEditorListTrash } from '@\u002Fregistry\u002Fadmin\u002Fui\u002Feditor-list-trash'\n",[548,34489,34490],{"__ignoreMap":546},[551,34491,34492,34494,34496,34499,34501,34503,34505,34508],{"class":553,"line":554},[551,34493,584],{"class":583},[551,34495,1273],{"class":587},[551,34497,34498],{"class":594}," AdminEditorListTrash",[551,34500,1279],{"class":587},[551,34502,671],{"class":583},[551,34504,674],{"class":587},[551,34506,34507],{"class":561},"@\u002Fregistry\u002Fadmin\u002Fui\u002Feditor-list-trash",[551,34509,680],{"class":587},[705,34511,34512,32855,34515,34517,34518,34521],{},[548,34513,34514],{},"admin-editor-list-trash",[548,34516,27773],{},"，自帶刪除邏輯（不需 core 的 ",[548,34519,34520],{},"delete"," handler）。",[536,34523,683],{"id":683},[705,34525,17114,34526,34180,34529,34531],{},[548,34527,34528],{},"\u003CAdminEditorListTrash>",[548,34530,29649],{}," 的 default slot，游標移到清單項時即於右側浮出刪除鈕。",[685,34533],{"name":34534},"EditorListTrashDemo",[539,34536,34538],{"className":726,"code":34537,"language":728,"meta":546,"style":546},"\u003Cscript setup lang=\"ts\">\nimport { ref } from 'vue'\nimport { AdminEditorListTrash } from '@\u002Fregistry\u002Fadmin\u002Fui\u002Feditor-list-trash'\nimport { AdminEditorToolbar, defaultEditorItems } from '@\u002Fregistry\u002Fadmin\u002Fui\u002Feditor-toolbar'\nimport { AdminRichEditor } from '@\u002Fregistry\u002Fadmin\u002Fui\u002Frich-editor'\n\nconst value = ref('\u003Cul>\u003Cli>清單項\u003C\u002Fli>\u003C\u002Ful>')\n\u003C\u002Fscript>\n\n\u003Ctemplate>\n  \u003Cadmin-rich-editor v-slot=\"{ editor }\" v-model=\"value\">\n    \u003Cadmin-editor-toolbar :editor :items=\"defaultEditorItems\" \u002F>\n    \u003Cadmin-editor-list-trash :editor \u002F>\n  \u003C\u002Fadmin-rich-editor>\n\u003C\u002Ftemplate>\n",[548,34539,34540,34560,34578,34596,34618,34636,34640,34661,34669,34673,34681,34709,34729,34739,34747],{"__ignoreMap":546},[551,34541,34542,34544,34546,34548,34550,34552,34554,34556,34558],{"class":553,"line":554},[551,34543,735],{"class":587},[551,34545,3276],{"class":738},[551,34547,3279],{"class":753},[551,34549,3282],{"class":753},[551,34551,757],{"class":587},[551,34553,760],{"class":587},[551,34555,576],{"class":561},[551,34557,760],{"class":587},[551,34559,742],{"class":587},[551,34561,34562,34564,34566,34568,34570,34572,34574,34576],{"class":553,"line":591},[551,34563,584],{"class":583},[551,34565,1273],{"class":587},[551,34567,3427],{"class":594},[551,34569,1279],{"class":587},[551,34571,671],{"class":583},[551,34573,674],{"class":587},[551,34575,728],{"class":561},[551,34577,680],{"class":587},[551,34579,34580,34582,34584,34586,34588,34590,34592,34594],{"class":553,"line":601},[551,34581,584],{"class":583},[551,34583,1273],{"class":587},[551,34585,34498],{"class":594},[551,34587,1279],{"class":587},[551,34589,671],{"class":583},[551,34591,674],{"class":587},[551,34593,34507],{"class":561},[551,34595,680],{"class":587},[551,34597,34598,34600,34602,34604,34606,34608,34610,34612,34614,34616],{"class":553,"line":609},[551,34599,584],{"class":583},[551,34601,1273],{"class":587},[551,34603,28094],{"class":594},[551,34605,3348],{"class":587},[551,34607,28099],{"class":594},[551,34609,1279],{"class":587},[551,34611,671],{"class":583},[551,34613,674],{"class":587},[551,34615,28108],{"class":561},[551,34617,680],{"class":587},[551,34619,34620,34622,34624,34626,34628,34630,34632,34634],{"class":553,"line":617},[551,34621,584],{"class":583},[551,34623,1273],{"class":587},[551,34625,28119],{"class":594},[551,34627,1279],{"class":587},[551,34629,671],{"class":583},[551,34631,674],{"class":587},[551,34633,28128],{"class":561},[551,34635,680],{"class":587},[551,34637,34638],{"class":553,"line":625},[551,34639,1293],{"emptyLinePlaceholder":526},[551,34641,34642,34644,34646,34648,34650,34652,34654,34657,34659],{"class":553,"line":633},[551,34643,3321],{"class":753},[551,34645,3422],{"class":594},[551,34647,757],{"class":587},[551,34649,3427],{"class":1154},[551,34651,1158],{"class":594},[551,34653,1214],{"class":587},[551,34655,34656],{"class":561},"\u003Cul>\u003Cli>清單項\u003C\u002Fli>\u003C\u002Ful>",[551,34658,1214],{"class":587},[551,34660,1222],{"class":594},[551,34662,34663,34665,34667],{"class":553,"line":641},[551,34664,784],{"class":587},[551,34666,3276],{"class":738},[551,34668,742],{"class":587},[551,34670,34671],{"class":553,"line":649},[551,34672,1293],{"emptyLinePlaceholder":526},[551,34674,34675,34677,34679],{"class":553,"line":657},[551,34676,735],{"class":587},[551,34678,739],{"class":738},[551,34680,742],{"class":587},[551,34682,34683,34685,34687,34689,34691,34693,34695,34697,34699,34701,34703,34705,34707],{"class":553,"line":665},[551,34684,747],{"class":587},[551,34686,28243],{"class":738},[551,34688,3595],{"class":753},[551,34690,757],{"class":587},[551,34692,760],{"class":587},[551,34694,30664],{"class":561},[551,34696,760],{"class":587},[551,34698,2867],{"class":753},[551,34700,757],{"class":587},[551,34702,760],{"class":587},[551,34704,2720],{"class":561},[551,34706,760],{"class":587},[551,34708,742],{"class":587},[551,34710,34711,34713,34715,34717,34719,34721,34723,34725,34727],{"class":553,"line":901},[551,34712,772],{"class":587},[551,34714,28208],{"class":738},[551,34716,28211],{"class":753},[551,34718,15260],{"class":753},[551,34720,757],{"class":587},[551,34722,760],{"class":587},[551,34724,28232],{"class":561},[551,34726,760],{"class":587},[551,34728,1449],{"class":587},[551,34730,34731,34733,34735,34737],{"class":553,"line":910},[551,34732,772],{"class":587},[551,34734,34514],{"class":738},[551,34736,28211],{"class":753},[551,34738,1449],{"class":587},[551,34740,34741,34743,34745],{"class":553,"line":920},[551,34742,923],{"class":587},[551,34744,28243],{"class":738},[551,34746,742],{"class":587},[551,34748,34749,34751,34753],{"class":553,"line":930},[551,34750,784],{"class":587},[551,34752,739],{"class":738},[551,34754,742],{"class":587},[536,34756,720],{"id":719},[692,34758,34514],{"id":34514},[940,34760],{"component":34761},"AdminEditorListTrash",[536,34763,1556],{"id":1556},[1558,34765,34766,34778,34784],{},[1561,34767,34768,34771,34772,1123,34774,34777],{},[1135,34769,34770],{},"僅作用於清單項","：只在游標位於 ",[548,34773,22091],{},[548,34775,34776],{},"taskItem"," 時顯示；一般段落不出現。",[1561,34779,34780,34783],{},[1135,34781,34782],{},"刪除整個節點","：點擊會刪掉整個清單項（含內容），非僅清空文字。",[1561,34785,34786,34788,34789,4582,34791,4585,34793,713],{},[1135,34787,1587],{},"：旁側刪除鈕依賴瀏覽器 DOM 定位；元件殼不含 ",[548,34790,1591],{},[548,34792,1591],{},[697,34794,1603],{"href":1602},[536,34796,985],{"id":985},[987,34798],{"component":34761},[990,34800,3744],{},{"title":546,"searchDepth":601,"depth":601,"links":34802},[34803,34804,34805,34808,34809],{"id":507,"depth":591,"text":507},{"id":683,"depth":591,"text":683},{"id":719,"depth":591,"text":720,"children":34806},[34807],{"id":34514,"depth":601,"text":34514},{"id":1556,"depth":591,"text":1556},{"id":985,"depth":591,"text":985},"游標位於清單項時，旁側浮出刪除鈕。",{},{"title":434,"description":34810},"qRpUqBuTuh5-b2BazoFIeNfPVi_t_k7dAspMXY0_7C4",{"id":34815,"title":438,"body":34816,"component":526,"description":35185,"extension":1015,"links":35186,"meta":35188,"navigation":526,"new":18,"path":439,"seo":35189,"stem":440,"wrapperKind":19,"__hash__":35190},"docs\u002Fdocs\u002Feditor\u002F4.addons\u002F14.drag-handle.md",{"type":533,"value":34817,"toc":35176},[34818,34820,34838,34863,34876,34878,34886,34889,35109,35111,35113,35116,35118,35170,35172,35174],[536,34819,507],{"id":507},[539,34821,34823],{"className":541,"code":34822,"filename":543,"language":544,"meta":545,"style":546},"pnpm dlx shadcn-vue add @admin\u002Feditor-drag-handle\n",[548,34824,34825],{"__ignoreMap":546},[551,34826,34827,34829,34831,34833,34835],{"class":553,"line":554},[551,34828,558],{"class":557},[551,34830,562],{"class":561},[551,34832,565],{"class":561},[551,34834,568],{"class":561},[551,34836,34837],{"class":561}," @admin\u002Feditor-drag-handle\n",[539,34839,34841],{"className":574,"code":34840,"language":576,"meta":546,"style":546},"import { AdminEditorDragHandle } from '@\u002Fregistry\u002Fadmin\u002Fui\u002Feditor-drag-handle'\n",[548,34842,34843],{"__ignoreMap":546},[551,34844,34845,34847,34849,34852,34854,34856,34858,34861],{"class":553,"line":554},[551,34846,584],{"class":583},[551,34848,1273],{"class":587},[551,34850,34851],{"class":594}," AdminEditorDragHandle",[551,34853,1279],{"class":587},[551,34855,671],{"class":583},[551,34857,674],{"class":587},[551,34859,34860],{"class":561},"@\u002Fregistry\u002Fadmin\u002Fui\u002Feditor-drag-handle",[551,34862,680],{"class":587},[705,34864,34865,32855,34868,1613,34870,713,34873,34875],{},[548,34866,34867],{},"admin-editor-drag-handle",[548,34869,27773],{},[548,34871,34872],{},"@tiptap\u002Fextension-drag-handle-vue-3",[548,34874,27773],{}," 本身不會渲染任何 drag handle，需安裝本包並放進 default slot。",[536,34877,683],{"id":683},[705,34879,17114,34880,34180,34883,34885],{},[548,34881,34882],{},"\u003CAdminEditorDragHandle>",[548,34884,29649],{}," 的 default slot，游標 hover 區塊時於左側浮出 grip。",[685,34887],{"name":34888},"EditorDragHandleDemo",[539,34890,34892],{"className":726,"code":34891,"language":728,"meta":546,"style":546},"\u003Cscript setup lang=\"ts\">\nimport { ref } from 'vue'\nimport { AdminEditorDragHandle } from '@\u002Fregistry\u002Fadmin\u002Fui\u002Feditor-drag-handle'\nimport { AdminEditorToolbar, defaultEditorItems } from '@\u002Fregistry\u002Fadmin\u002Fui\u002Feditor-toolbar'\nimport { AdminRichEditor } from '@\u002Fregistry\u002Fadmin\u002Fui\u002Frich-editor'\n\nconst value = ref('\u003Cp>hover 我，左側會出現拖曳把手。\u003C\u002Fp>')\n\u003C\u002Fscript>\n\n\u003Ctemplate>\n  \u003Cadmin-rich-editor v-slot=\"{ editor }\" v-model=\"value\">\n    \u003Cadmin-editor-toolbar :editor :items=\"defaultEditorItems\" \u002F>\n    \u003Cadmin-editor-drag-handle :editor \u002F>\n  \u003C\u002Fadmin-rich-editor>\n\u003C\u002Ftemplate>\n",[548,34893,34894,34914,34932,34950,34972,34990,34994,35015,35023,35027,35035,35063,35083,35093,35101],{"__ignoreMap":546},[551,34895,34896,34898,34900,34902,34904,34906,34908,34910,34912],{"class":553,"line":554},[551,34897,735],{"class":587},[551,34899,3276],{"class":738},[551,34901,3279],{"class":753},[551,34903,3282],{"class":753},[551,34905,757],{"class":587},[551,34907,760],{"class":587},[551,34909,576],{"class":561},[551,34911,760],{"class":587},[551,34913,742],{"class":587},[551,34915,34916,34918,34920,34922,34924,34926,34928,34930],{"class":553,"line":591},[551,34917,584],{"class":583},[551,34919,1273],{"class":587},[551,34921,3427],{"class":594},[551,34923,1279],{"class":587},[551,34925,671],{"class":583},[551,34927,674],{"class":587},[551,34929,728],{"class":561},[551,34931,680],{"class":587},[551,34933,34934,34936,34938,34940,34942,34944,34946,34948],{"class":553,"line":601},[551,34935,584],{"class":583},[551,34937,1273],{"class":587},[551,34939,34851],{"class":594},[551,34941,1279],{"class":587},[551,34943,671],{"class":583},[551,34945,674],{"class":587},[551,34947,34860],{"class":561},[551,34949,680],{"class":587},[551,34951,34952,34954,34956,34958,34960,34962,34964,34966,34968,34970],{"class":553,"line":609},[551,34953,584],{"class":583},[551,34955,1273],{"class":587},[551,34957,28094],{"class":594},[551,34959,3348],{"class":587},[551,34961,28099],{"class":594},[551,34963,1279],{"class":587},[551,34965,671],{"class":583},[551,34967,674],{"class":587},[551,34969,28108],{"class":561},[551,34971,680],{"class":587},[551,34973,34974,34976,34978,34980,34982,34984,34986,34988],{"class":553,"line":617},[551,34975,584],{"class":583},[551,34977,1273],{"class":587},[551,34979,28119],{"class":594},[551,34981,1279],{"class":587},[551,34983,671],{"class":583},[551,34985,674],{"class":587},[551,34987,28128],{"class":561},[551,34989,680],{"class":587},[551,34991,34992],{"class":553,"line":625},[551,34993,1293],{"emptyLinePlaceholder":526},[551,34995,34996,34998,35000,35002,35004,35006,35008,35011,35013],{"class":553,"line":633},[551,34997,3321],{"class":753},[551,34999,3422],{"class":594},[551,35001,757],{"class":587},[551,35003,3427],{"class":1154},[551,35005,1158],{"class":594},[551,35007,1214],{"class":587},[551,35009,35010],{"class":561},"\u003Cp>hover 我，左側會出現拖曳把手。\u003C\u002Fp>",[551,35012,1214],{"class":587},[551,35014,1222],{"class":594},[551,35016,35017,35019,35021],{"class":553,"line":641},[551,35018,784],{"class":587},[551,35020,3276],{"class":738},[551,35022,742],{"class":587},[551,35024,35025],{"class":553,"line":649},[551,35026,1293],{"emptyLinePlaceholder":526},[551,35028,35029,35031,35033],{"class":553,"line":657},[551,35030,735],{"class":587},[551,35032,739],{"class":738},[551,35034,742],{"class":587},[551,35036,35037,35039,35041,35043,35045,35047,35049,35051,35053,35055,35057,35059,35061],{"class":553,"line":665},[551,35038,747],{"class":587},[551,35040,28243],{"class":738},[551,35042,3595],{"class":753},[551,35044,757],{"class":587},[551,35046,760],{"class":587},[551,35048,30664],{"class":561},[551,35050,760],{"class":587},[551,35052,2867],{"class":753},[551,35054,757],{"class":587},[551,35056,760],{"class":587},[551,35058,2720],{"class":561},[551,35060,760],{"class":587},[551,35062,742],{"class":587},[551,35064,35065,35067,35069,35071,35073,35075,35077,35079,35081],{"class":553,"line":901},[551,35066,772],{"class":587},[551,35068,28208],{"class":738},[551,35070,28211],{"class":753},[551,35072,15260],{"class":753},[551,35074,757],{"class":587},[551,35076,760],{"class":587},[551,35078,28232],{"class":561},[551,35080,760],{"class":587},[551,35082,1449],{"class":587},[551,35084,35085,35087,35089,35091],{"class":553,"line":910},[551,35086,772],{"class":587},[551,35088,34867],{"class":738},[551,35090,28211],{"class":753},[551,35092,1449],{"class":587},[551,35094,35095,35097,35099],{"class":553,"line":920},[551,35096,923],{"class":587},[551,35098,28243],{"class":738},[551,35100,742],{"class":587},[551,35102,35103,35105,35107],{"class":553,"line":930},[551,35104,784],{"class":587},[551,35106,739],{"class":738},[551,35108,742],{"class":587},[536,35110,720],{"id":719},[692,35112,34867],{"id":34867},[940,35114],{"component":35115},"AdminEditorDragHandle",[536,35117,1556],{"id":1556},[1558,35119,35120,35128,35153],{},[1561,35121,35122,2466,35125,35127],{},[1135,35123,35124],{},"預設不啟用",[548,35126,27773],{}," 本身不顯示 drag handle；未安裝本包則無拖曳把手。",[1561,35129,35130,35133,35134,35136,35137,35139,35140,35143,35144,7623,35147,1123,35150,713],{},[1135,35131,35132],{},"最小官方包裝","：本元件僅轉發 ",[548,35135,18395],{},"、提供預設 grip，定位採官方 ",[548,35138,34872],{}," 預設（",[548,35141,35142],{},"left-start","）。需自訂 icon 改用 default slot；需 node 變更 callback 或點擊選取等行為，請直接使用官方 ",[548,35145,35146],{},"DragHandle",[548,35148,35149],{},"onNodeChange",[548,35151,35152],{},"computePositionConfig",[1561,35154,35155,35158,35159,35162,35163,35165,35166,35169],{},[1135,35156,35157],{},"裁切限制","：把手 append 於編輯器內容層，若超出編輯器 ",[548,35160,35161],{},"overflow-hidden"," 邊界會被裁切（官方 ",[548,35164,35146],{}," 無 ",[548,35167,35168],{},"appendTo","，無法 portal）。",[536,35171,985],{"id":985},[987,35173],{"component":35115},[990,35175,3744],{},{"title":546,"searchDepth":601,"depth":601,"links":35177},[35178,35179,35180,35183,35184],{"id":507,"depth":591,"text":507},{"id":683,"depth":591,"text":683},{"id":719,"depth":591,"text":720,"children":35181},[35182],{"id":34867,"depth":601,"text":34867},{"id":1556,"depth":591,"text":1556},{"id":985,"depth":591,"text":985},"游標停在區塊時左側浮出把手；拖曳排序或選取區塊。",{"doc":35187},"https:\u002F\u002Ftiptap.dev\u002Fdocs\u002Feditor\u002Fextensions\u002Ffunctionality\u002Fdrag-handle-vue",{},{"title":438,"description":35185},"8z8PuoQ35SNQPZzI9c8VG66Mhf_AkhJZRkIrmTLNjow",{"id":35192,"title":442,"body":35193,"component":526,"description":36000,"extension":1015,"links":36001,"meta":36003,"navigation":526,"new":18,"path":443,"seo":36004,"stem":444,"wrapperKind":19,"__hash__":36005},"docs\u002Fdocs\u002Feditor\u002F4.addons\u002F15.table.md",{"type":533,"value":35194,"toc":35988},[35195,35197,35224,35286,35303,35305,35323,35326,35819,35821,35850,35852,35857,35899,35901,35903,35905,35910,35917,35922,35927,35929,35982,35984,35986],[536,35196,507],{"id":507},[539,35198,35200],{"className":541,"code":35199,"filename":543,"language":544,"meta":545,"style":546},"pnpm add @tiptap\u002Fextension-table\npnpm dlx shadcn-vue add @admin\u002Feditor-table\n",[548,35201,35202,35211],{"__ignoreMap":546},[551,35203,35204,35206,35208],{"class":553,"line":554},[551,35205,558],{"class":557},[551,35207,568],{"class":561},[551,35209,35210],{"class":561}," @tiptap\u002Fextension-table\n",[551,35212,35213,35215,35217,35219,35221],{"class":553,"line":591},[551,35214,558],{"class":557},[551,35216,562],{"class":561},[551,35218,565],{"class":561},[551,35220,568],{"class":561},[551,35222,35223],{"class":561}," @admin\u002Feditor-table\n",[539,35225,35227],{"className":574,"code":35226,"language":576,"meta":546,"style":546},"import { TableKit } from '@tiptap\u002Fextension-table'\nimport {\n  AdminEditorTableControls,\n  createTableHandler,\n  editorTableClass\n} from '@\u002Fregistry\u002Fadmin\u002Fui\u002Feditor-table'\n",[548,35228,35229,35248,35254,35261,35268,35273],{"__ignoreMap":546},[551,35230,35231,35233,35235,35238,35240,35242,35244,35246],{"class":553,"line":554},[551,35232,584],{"class":583},[551,35234,1273],{"class":587},[551,35236,35237],{"class":594}," TableKit",[551,35239,1279],{"class":587},[551,35241,671],{"class":583},[551,35243,674],{"class":587},[551,35245,25383],{"class":561},[551,35247,680],{"class":587},[551,35249,35250,35252],{"class":553,"line":591},[551,35251,584],{"class":583},[551,35253,588],{"class":587},[551,35255,35256,35259],{"class":553,"line":601},[551,35257,35258],{"class":594},"  AdminEditorTableControls",[551,35260,598],{"class":587},[551,35262,35263,35266],{"class":553,"line":609},[551,35264,35265],{"class":594},"  createTableHandler",[551,35267,598],{"class":587},[551,35269,35270],{"class":553,"line":617},[551,35271,35272],{"class":594},"  editorTableClass\n",[551,35274,35275,35277,35279,35281,35284],{"class":553,"line":625},[551,35276,668],{"class":587},[551,35278,671],{"class":583},[551,35280,674],{"class":587},[551,35282,35283],{"class":561},"@\u002Fregistry\u002Fadmin\u002Fui\u002Feditor-table",[551,35285,680],{"class":587},[705,35287,35288,35289,35292,35293,35296,35297,35299,35300,35302],{},"含 Notion 式 grip 控制層（",[548,35290,35291],{},"AdminEditorTableControls","）、toolbar handler（",[548,35294,35295],{},"createTableHandler","）與表格樣式（",[548,35298,30084],{},"）；表格能力來自 tiptap ",[548,35301,344],{},"，需自行注入（見下方用法）。",[536,35304,683],{"id":683},[705,35306,17114,35307,35310,35311,14865,35313,35310,35316,35318,35319,35322],{},[548,35308,35309],{},"TableKit.configure(...)"," 注入 ",[548,35312,28043],{},[548,35314,35315],{},"createTableHandler()",[548,35317,28539],{},"，並將 ",[548,35320,35321],{},"\u003CAdminEditorTableControls>"," 放進 default slot。游標移入表格即浮出欄 \u002F 列 grip。",[685,35324],{"name":35325},"EditorTableDemo",[539,35327,35329],{"className":726,"code":35328,"language":728,"meta":546,"style":546},"\u003Cscript setup lang=\"ts\">\nimport type { EditorToolbarItem } from '@\u002Fregistry\u002Fadmin\u002Fui\u002Feditor-toolbar'\nimport { IconTable } from '@tabler\u002Ficons-vue'\nimport { TableKit } from '@tiptap\u002Fextension-table'\nimport { ref } from 'vue'\nimport {\n  AdminEditorTableControls,\n  createTableHandler,\n  editorTableClass\n} from '@\u002Fregistry\u002Fadmin\u002Fui\u002Feditor-table'\nimport { AdminEditorToolbar, defaultEditorItems } from '@\u002Fregistry\u002Fadmin\u002Fui\u002Feditor-toolbar'\nimport { AdminRichEditor } from '@\u002Fregistry\u002Fadmin\u002Fui\u002Frich-editor'\n\nconst value = ref('\u003Cp>表格內容。\u003C\u002Fp>')\n\nconst extensions = [TableKit.configure({ table: { resizable: true } })]\nconst handlers = { table: createTableHandler() }\nconst items: EditorToolbarItem[][] = [\n  ...defaultEditorItems,\n  [{ kind: 'table', icon: IconTable, label: '插入表格', tooltip: { text: '插入表格' } }]\n]\n\u003C\u002Fscript>\n\n\u003Ctemplate>\n  \u003Cadmin-rich-editor\n    v-slot=\"{ editor }\"\n    v-model=\"value\"\n    :class=\"editorTableClass\"\n    :extensions=\"extensions\"\n    :handlers=\"handlers\"\n  >\n    \u003Cadmin-editor-toolbar :editor :items=\"items\" \u002F>\n    \u003Cadmin-editor-table-controls :editor \u002F>\n  \u003C\u002Fadmin-rich-editor>\n\u003C\u002Ftemplate>\n",[548,35330,35331,35351,35371,35390,35408,35426,35432,35438,35444,35448,35460,35482,35500,35504,35525,35529,35568,35589,35605,35613,35673,35677,35685,35689,35697,35703,35715,35727,35740,35752,35765,35769,35789,35801,35810],{"__ignoreMap":546},[551,35332,35333,35335,35337,35339,35341,35343,35345,35347,35349],{"class":553,"line":554},[551,35334,735],{"class":587},[551,35336,3276],{"class":738},[551,35338,3279],{"class":753},[551,35340,3282],{"class":753},[551,35342,757],{"class":587},[551,35344,760],{"class":587},[551,35346,576],{"class":561},[551,35348,760],{"class":587},[551,35350,742],{"class":587},[551,35352,35353,35355,35357,35359,35361,35363,35365,35367,35369],{"class":553,"line":591},[551,35354,584],{"class":583},[551,35356,3137],{"class":583},[551,35358,1273],{"class":587},[551,35360,28622],{"class":594},[551,35362,1279],{"class":587},[551,35364,671],{"class":583},[551,35366,674],{"class":587},[551,35368,28108],{"class":561},[551,35370,680],{"class":587},[551,35372,35373,35375,35377,35380,35382,35384,35386,35388],{"class":553,"line":601},[551,35374,584],{"class":583},[551,35376,1273],{"class":587},[551,35378,35379],{"class":594}," IconTable",[551,35381,1279],{"class":587},[551,35383,671],{"class":583},[551,35385,674],{"class":587},[551,35387,17314],{"class":561},[551,35389,680],{"class":587},[551,35391,35392,35394,35396,35398,35400,35402,35404,35406],{"class":553,"line":609},[551,35393,584],{"class":583},[551,35395,1273],{"class":587},[551,35397,35237],{"class":594},[551,35399,1279],{"class":587},[551,35401,671],{"class":583},[551,35403,674],{"class":587},[551,35405,25383],{"class":561},[551,35407,680],{"class":587},[551,35409,35410,35412,35414,35416,35418,35420,35422,35424],{"class":553,"line":617},[551,35411,584],{"class":583},[551,35413,1273],{"class":587},[551,35415,3427],{"class":594},[551,35417,1279],{"class":587},[551,35419,671],{"class":583},[551,35421,674],{"class":587},[551,35423,728],{"class":561},[551,35425,680],{"class":587},[551,35427,35428,35430],{"class":553,"line":625},[551,35429,584],{"class":583},[551,35431,588],{"class":587},[551,35433,35434,35436],{"class":553,"line":633},[551,35435,35258],{"class":594},[551,35437,598],{"class":587},[551,35439,35440,35442],{"class":553,"line":641},[551,35441,35265],{"class":594},[551,35443,598],{"class":587},[551,35445,35446],{"class":553,"line":649},[551,35447,35272],{"class":594},[551,35449,35450,35452,35454,35456,35458],{"class":553,"line":657},[551,35451,668],{"class":587},[551,35453,671],{"class":583},[551,35455,674],{"class":587},[551,35457,35283],{"class":561},[551,35459,680],{"class":587},[551,35461,35462,35464,35466,35468,35470,35472,35474,35476,35478,35480],{"class":553,"line":665},[551,35463,584],{"class":583},[551,35465,1273],{"class":587},[551,35467,28094],{"class":594},[551,35469,3348],{"class":587},[551,35471,28099],{"class":594},[551,35473,1279],{"class":587},[551,35475,671],{"class":583},[551,35477,674],{"class":587},[551,35479,28108],{"class":561},[551,35481,680],{"class":587},[551,35483,35484,35486,35488,35490,35492,35494,35496,35498],{"class":553,"line":901},[551,35485,584],{"class":583},[551,35487,1273],{"class":587},[551,35489,28119],{"class":594},[551,35491,1279],{"class":587},[551,35493,671],{"class":583},[551,35495,674],{"class":587},[551,35497,28128],{"class":561},[551,35499,680],{"class":587},[551,35501,35502],{"class":553,"line":910},[551,35503,1293],{"emptyLinePlaceholder":526},[551,35505,35506,35508,35510,35512,35514,35516,35518,35521,35523],{"class":553,"line":920},[551,35507,3321],{"class":753},[551,35509,3422],{"class":594},[551,35511,757],{"class":587},[551,35513,3427],{"class":1154},[551,35515,1158],{"class":594},[551,35517,1214],{"class":587},[551,35519,35520],{"class":561},"\u003Cp>表格內容。\u003C\u002Fp>",[551,35522,1214],{"class":587},[551,35524,1222],{"class":594},[551,35526,35527],{"class":553,"line":930},[551,35528,1293],{"emptyLinePlaceholder":526},[551,35530,35531,35533,35535,35537,35540,35542,35544,35546,35548,35551,35553,35555,35558,35560,35562,35564,35566],{"class":553,"line":3536},[551,35532,3321],{"class":753},[551,35534,32337],{"class":594},[551,35536,757],{"class":587},[551,35538,35539],{"class":594}," [TableKit",[551,35541,1206],{"class":587},[551,35543,32347],{"class":1154},[551,35545,1158],{"class":594},[551,35547,4243],{"class":587},[551,35549,35550],{"class":738}," table",[551,35552,1169],{"class":587},[551,35554,1273],{"class":587},[551,35556,35557],{"class":738}," resizable",[551,35559,1169],{"class":587},[551,35561,28714],{"class":17983},[551,35563,1279],{"class":587},[551,35565,1279],{"class":587},[551,35567,32354],{"class":594},[551,35569,35570,35572,35574,35576,35578,35580,35582,35585,35587],{"class":553,"line":4422},[551,35571,3321],{"class":753},[551,35573,28643],{"class":594},[551,35575,757],{"class":587},[551,35577,1273],{"class":587},[551,35579,35550],{"class":738},[551,35581,1169],{"class":587},[551,35583,35584],{"class":1154}," createTableHandler",[551,35586,32374],{"class":594},[551,35588,10148],{"class":587},[551,35590,35591,35593,35595,35597,35599,35601,35603],{"class":553,"line":6194},[551,35592,3321],{"class":753},[551,35594,32383],{"class":594},[551,35596,1169],{"class":587},[551,35598,28622],{"class":557},[551,35600,32390],{"class":594},[551,35602,757],{"class":587},[551,35604,1315],{"class":594},[551,35606,35607,35609,35611],{"class":553,"line":6204},[551,35608,28832],{"class":587},[551,35610,28232],{"class":594},[551,35612,598],{"class":587},[551,35614,35615,35617,35619,35621,35623,35625,35627,35629,35631,35633,35635,35637,35639,35641,35643,35645,35647,35649,35651,35653,35655,35657,35659,35661,35663,35665,35667,35669,35671],{"class":553,"line":6223},[551,35616,28841],{"class":594},[551,35618,4243],{"class":587},[551,35620,28846],{"class":738},[551,35622,1169],{"class":587},[551,35624,674],{"class":587},[551,35626,5754],{"class":561},[551,35628,1214],{"class":587},[551,35630,3348],{"class":587},[551,35632,32423],{"class":738},[551,35634,1169],{"class":587},[551,35636,35379],{"class":594},[551,35638,3348],{"class":587},[551,35640,28860],{"class":738},[551,35642,1169],{"class":587},[551,35644,674],{"class":587},[551,35646,25608],{"class":561},[551,35648,1214],{"class":587},[551,35650,3348],{"class":587},[551,35652,28874],{"class":738},[551,35654,1169],{"class":587},[551,35656,1273],{"class":587},[551,35658,28881],{"class":738},[551,35660,1169],{"class":587},[551,35662,674],{"class":587},[551,35664,25608],{"class":561},[551,35666,1214],{"class":587},[551,35668,1279],{"class":587},[551,35670,1279],{"class":587},[551,35672,9080],{"class":594},[551,35674,35675],{"class":553,"line":6233},[551,35676,9080],{"class":594},[551,35678,35679,35681,35683],{"class":553,"line":6242},[551,35680,784],{"class":587},[551,35682,3276],{"class":738},[551,35684,742],{"class":587},[551,35686,35687],{"class":553,"line":6251},[551,35688,1293],{"emptyLinePlaceholder":526},[551,35690,35691,35693,35695],{"class":553,"line":524},[551,35692,735],{"class":587},[551,35694,739],{"class":738},[551,35696,742],{"class":587},[551,35698,35699,35701],{"class":553,"line":6864},[551,35700,747],{"class":587},[551,35702,28157],{"class":738},[551,35704,35705,35707,35709,35711,35713],{"class":553,"line":6873},[551,35706,28162],{"class":753},[551,35708,757],{"class":587},[551,35710,760],{"class":587},[551,35712,30664],{"class":561},[551,35714,4281],{"class":587},[551,35716,35717,35719,35721,35723,35725],{"class":553,"line":6894},[551,35718,4896],{"class":753},[551,35720,757],{"class":587},[551,35722,760],{"class":587},[551,35724,2720],{"class":561},[551,35726,4281],{"class":587},[551,35728,35729,35732,35734,35736,35738],{"class":553,"line":6903},[551,35730,35731],{"class":753},"    :class",[551,35733,757],{"class":587},[551,35735,760],{"class":587},[551,35737,30084],{"class":561},[551,35739,4281],{"class":587},[551,35741,35742,35744,35746,35748,35750],{"class":553,"line":6912},[551,35743,28188],{"class":753},[551,35745,757],{"class":587},[551,35747,760],{"class":587},[551,35749,18579],{"class":561},[551,35751,4281],{"class":587},[551,35753,35754,35757,35759,35761,35763],{"class":553,"line":6921},[551,35755,35756],{"class":753},"    :handlers",[551,35758,757],{"class":587},[551,35760,760],{"class":587},[551,35762,28221],{"class":561},[551,35764,4281],{"class":587},[551,35766,35767],{"class":553,"line":12223},[551,35768,9184],{"class":587},[551,35770,35771,35773,35775,35777,35779,35781,35783,35785,35787],{"class":553,"line":12232},[551,35772,772],{"class":587},[551,35774,28208],{"class":738},[551,35776,28211],{"class":753},[551,35778,15260],{"class":753},[551,35780,757],{"class":587},[551,35782,760],{"class":587},[551,35784,7361],{"class":561},[551,35786,760],{"class":587},[551,35788,1449],{"class":587},[551,35790,35792,35794,35797,35799],{"class":553,"line":35791},33,[551,35793,772],{"class":587},[551,35795,35796],{"class":738},"admin-editor-table-controls",[551,35798,28211],{"class":753},[551,35800,1449],{"class":587},[551,35802,35804,35806,35808],{"class":553,"line":35803},34,[551,35805,923],{"class":587},[551,35807,28243],{"class":738},[551,35809,742],{"class":587},[551,35811,35813,35815,35817],{"class":553,"line":35812},35,[551,35814,784],{"class":587},[551,35816,739],{"class":738},[551,35818,742],{"class":587},[705,35820,32563],{},[1558,35822,35823,35826,35829,35834,35837,35844],{},[1561,35824,35825],{},"toolbar 的插入表格按鈕插入 3×3 含標題列的表格",[1561,35827,35828],{},"游標移入表格時，欄頂 \u002F 列左浮出 grip；點 grip 選取整欄 \u002F 列並開啟選單，可在前後 \u002F 上下插入欄列、刪除欄列、刪除表格",[1561,35830,35831,35832,19410],{},"第 1 欄 grip 選單含「設為標題欄」、第 1 列 grip 選單含「設為標題列」（切換首欄 \u002F 首列的 ",[548,35833,5763],{},[1561,35835,35836],{},"表格右緣 \u002F 底緣 hover 浮出「+」條，點擊在末端追加一欄 \u002F 一列",[1561,35838,35839,35840,35843],{},"預設開啟欄寬拖曳（",[548,35841,35842],{},"resizable","），拖曳欄邊界調整寬度",[1561,35845,35846,35847,35849],{},"read-only（",[548,35848,30375],{},"）時不顯示任何 grip 與「+」控制層",[536,35851,32587],{"id":32586},[705,35853,35854,35855,2466],{},"需要關閉欄寬拖曳或調整其他設定，自行 ",[548,35856,35309],{},[539,35858,35860],{"className":574,"code":35859,"language":576,"meta":546,"style":546},"const tableKit = TableKit.configure({ table: { resizable: false } })\n",[548,35861,35862],{"__ignoreMap":546},[551,35863,35864,35866,35869,35871,35873,35875,35877,35879,35881,35883,35885,35887,35889,35891,35893,35895,35897],{"class":553,"line":554},[551,35865,3321],{"class":753},[551,35867,35868],{"class":594}," tableKit ",[551,35870,757],{"class":587},[551,35872,35237],{"class":594},[551,35874,1206],{"class":587},[551,35876,32347],{"class":1154},[551,35878,1158],{"class":594},[551,35880,4243],{"class":587},[551,35882,35550],{"class":738},[551,35884,1169],{"class":587},[551,35886,1273],{"class":587},[551,35888,35557],{"class":738},[551,35890,1169],{"class":587},[551,35892,17984],{"class":17983},[551,35894,1279],{"class":587},[551,35896,1279],{"class":587},[551,35898,1222],{"class":594},[536,35900,720],{"id":719},[692,35902,35796],{"id":35796},[940,35904],{"component":35291},[692,35906,35908],{"id":35907},"createtablehandler",[548,35909,35315],{},[705,35911,35912,35913,35916],{},"回傳 toolbar handler，以 ",[548,35914,35915],{},"{ kind: 'table' }"," 觸發插入 3×3 含標題列的表格。",[692,35918,35920],{"id":35919},"editortableclass",[548,35921,30084],{},[705,35923,35924,35925,713],{},"表格外觀的 Tailwind class 字串，append 到 editor 的 ",[548,35926,30115],{},[536,35928,1556],{"id":1556},[1558,35930,35931,35948,35959,35965,35971],{},[1561,35932,35933,2466,35936,35938,35939,32131,35941,35943,35944,35947],{},[1135,35934,35935],{},"需要 TableKit",[548,35937,35321],{}," 依賴 editor 註冊 table extension；未以 ",[548,35940,35309],{},[548,35942,28043],{}," 注入時，dev 會 ",[548,35945,35946],{},"console.warn"," 且控制層不作用。",[1561,35949,35950,35955,35956,35958],{},[1135,35951,35952,35953],{},"欄寬拖曳需要 ",[548,35954,30084],{},"：其中 column resize handle 的樣式由 ",[548,35957,30084],{}," 提供，未 append 時拖曳功能仍在但無視覺提示。",[1561,35960,35961,35964],{},[1135,35962,35963],{},"標題切換僅限首欄 \u002F 首列","：對齊 Notion，只有第 1 欄 \u002F 第 1 列可切換為標題；grip 選單僅於首欄 \u002F 首列顯示對應切換項。",[1561,35966,35967,35970],{},[1135,35968,35969],{},"互動為 pointer 導向","：以滑鼠 hover \u002F 點擊操作 grip 與「+」，不提供鍵盤焦點導航；鍵盤使用者仍可用 toolbar 插入、方向鍵移動與官方表格快捷鍵。",[1561,35972,35973,35975,35976,4582,35978,4585,35980,713],{},[1135,35974,1587],{},"：表格 grip 與欄寬拖曳依賴瀏覽器 DOM；元件殼不含 ",[548,35977,1591],{},[548,35979,1591],{},[697,35981,1603],{"href":1602},[536,35983,985],{"id":985},[987,35985],{"component":35291},[990,35987,32767],{},{"title":546,"searchDepth":601,"depth":601,"links":35989},[35990,35991,35992,35993,35998,35999],{"id":507,"depth":591,"text":507},{"id":683,"depth":591,"text":683},{"id":32586,"depth":591,"text":32587},{"id":719,"depth":591,"text":720,"children":35994},[35995,35996,35997],{"id":35796,"depth":601,"text":35796},{"id":35907,"depth":601,"text":35315},{"id":35919,"depth":601,"text":30084},{"id":1556,"depth":591,"text":1556},{"id":985,"depth":591,"text":985},"插入表格；Notion 式欄／列 grip 選取與操作。",{"doc":36002},"https:\u002F\u002Ftiptap.dev\u002Fdocs\u002Feditor\u002Fextensions\u002Fnodes\u002Ftable",{},{"title":442,"description":36000},"ZI3w_Yni4T-dExyJtusotwCsSoBN_L3mgPiujgYoCbY",{"id":36007,"title":446,"body":36008,"component":18,"description":36659,"extension":1015,"links":36660,"meta":36661,"navigation":526,"new":18,"path":447,"seo":36662,"stem":448,"wrapperKind":19,"__hash__":36663},"docs\u002Fdocs\u002Feditor\u002F4.addons\u002F16.superscript-subscript.md",{"type":533,"value":36009,"toc":36653},[36010,36012,36029,36047,36049,36052,36055,36399,36475,36481,36590,36603,36605,36622,36624,36650],[536,36011,507],{"id":507},[539,36013,36015],{"className":541,"code":36014,"filename":543,"language":544,"meta":545,"style":546},"pnpm add @tiptap\u002Fextension-superscript @tiptap\u002Fextension-subscript\n",[548,36016,36017],{"__ignoreMap":546},[551,36018,36019,36021,36023,36026],{"class":553,"line":554},[551,36020,558],{"class":557},[551,36022,568],{"class":561},[551,36024,36025],{"class":561}," @tiptap\u002Fextension-superscript",[551,36027,36028],{"class":561}," @tiptap\u002Fextension-subscript\n",[705,36030,36031,36032,2470,36034,36036,36037,36039,36040,2470,36043,36046],{},"上標／下標來自 tiptap ",[548,36033,217],{},[548,36035,213],{},"。與 highlight／text-align 不同，它們是單純 toggle mark，不需額外元件：注入官方 extension、用 ",[548,36038,28539],{}," 註冊 toggle handler，再於 toolbar 加上 ",[548,36041,36042],{},"{ kind: 'superscript' }",[548,36044,36045],{},"{ kind: 'subscript' }"," item 即可；本頁無對應 registry 包。",[536,36048,683],{"id":683},[685,36050],{"name":36051},"EditorSuperscriptSubscriptDemo",[705,36053,36054],{},"handler 直接以 inline 物件註冊，無任何內部依賴，可原樣複製：",[539,36056,36058],{"className":574,"code":36057,"language":576,"meta":546,"style":546},"import type { Editor } from '@tiptap\u002Fcore'\nimport Subscript from '@tiptap\u002Fextension-subscript'\nimport Superscript from '@tiptap\u002Fextension-superscript'\n\nconst extensions = [Superscript, Subscript]\n\nconst scriptHandlers = {\n  superscript: {\n    canExecute: (e: Editor) => e.can().toggleSuperscript(),\n    execute: (e: Editor) => e.chain().focus().toggleSuperscript(),\n    isActive: (e: Editor) => e.isActive('superscript')\n  },\n  subscript: {\n    canExecute: (e: Editor) => e.can().toggleSubscript(),\n    execute: (e: Editor) => e.chain().focus().toggleSubscript(),\n    isActive: (e: Editor) => e.isActive('subscript')\n  }\n}\n",[548,36059,36060,36082,36097,36112,36116,36132,36136,36147,36156,36193,36233,36268,36272,36281,36316,36356,36391,36395],{"__ignoreMap":546},[551,36061,36062,36064,36066,36068,36071,36073,36075,36077,36080],{"class":553,"line":554},[551,36063,584],{"class":583},[551,36065,3137],{"class":583},[551,36067,1273],{"class":587},[551,36069,36070],{"class":594}," Editor",[551,36072,1279],{"class":587},[551,36074,671],{"class":583},[551,36076,674],{"class":587},[551,36078,36079],{"class":561},"@tiptap\u002Fcore",[551,36081,680],{"class":587},[551,36083,36084,36086,36089,36091,36093,36095],{"class":553,"line":591},[551,36085,584],{"class":583},[551,36087,36088],{"class":594}," Subscript ",[551,36090,1259],{"class":583},[551,36092,674],{"class":587},[551,36094,19535],{"class":561},[551,36096,680],{"class":587},[551,36098,36099,36101,36104,36106,36108,36110],{"class":553,"line":601},[551,36100,584],{"class":583},[551,36102,36103],{"class":594}," Superscript ",[551,36105,1259],{"class":583},[551,36107,674],{"class":587},[551,36109,19688],{"class":561},[551,36111,680],{"class":587},[551,36113,36114],{"class":553,"line":609},[551,36115,1293],{"emptyLinePlaceholder":526},[551,36117,36118,36120,36122,36124,36127,36129],{"class":553,"line":617},[551,36119,3321],{"class":753},[551,36121,32337],{"class":594},[551,36123,757],{"class":587},[551,36125,36126],{"class":594}," [Superscript",[551,36128,3348],{"class":587},[551,36130,36131],{"class":594}," Subscript]\n",[551,36133,36134],{"class":553,"line":625},[551,36135,1293],{"emptyLinePlaceholder":526},[551,36137,36138,36140,36143,36145],{"class":553,"line":633},[551,36139,3321],{"class":753},[551,36141,36142],{"class":594}," scriptHandlers ",[551,36144,757],{"class":587},[551,36146,588],{"class":587},[551,36148,36149,36152,36154],{"class":553,"line":641},[551,36150,36151],{"class":738},"  superscript",[551,36153,1169],{"class":587},[551,36155,588],{"class":587},[551,36157,36158,36160,36162,36164,36167,36169,36171,36173,36175,36178,36180,36182,36184,36186,36189,36191],{"class":553,"line":649},[551,36159,28661],{"class":1154},[551,36161,1169],{"class":587},[551,36163,1190],{"class":587},[551,36165,36166],{"class":1193},"e",[551,36168,1169],{"class":587},[551,36170,36070],{"class":557},[551,36172,1197],{"class":587},[551,36174,1200],{"class":753},[551,36176,36177],{"class":594}," e",[551,36179,1206],{"class":587},[551,36181,28679],{"class":1154},[551,36183,10081],{"class":594},[551,36185,1206],{"class":587},[551,36187,36188],{"class":1154},"toggleSuperscript",[551,36190,10081],{"class":594},[551,36192,598],{"class":587},[551,36194,36195,36197,36199,36201,36203,36205,36207,36209,36211,36213,36215,36217,36219,36221,36223,36225,36227,36229,36231],{"class":553,"line":657},[551,36196,28721],{"class":1154},[551,36198,1169],{"class":587},[551,36200,1190],{"class":587},[551,36202,36166],{"class":1193},[551,36204,1169],{"class":587},[551,36206,36070],{"class":557},[551,36208,1197],{"class":587},[551,36210,1200],{"class":753},[551,36212,36177],{"class":594},[551,36214,1206],{"class":587},[551,36216,28738],{"class":1154},[551,36218,10081],{"class":594},[551,36220,1206],{"class":587},[551,36222,28745],{"class":1154},[551,36224,10081],{"class":594},[551,36226,1206],{"class":587},[551,36228,36188],{"class":1154},[551,36230,10081],{"class":594},[551,36232,598],{"class":587},[551,36234,36235,36237,36239,36241,36243,36245,36247,36249,36251,36253,36255,36257,36259,36261,36264,36266],{"class":553,"line":665},[551,36236,28770],{"class":1154},[551,36238,1169],{"class":587},[551,36240,1190],{"class":587},[551,36242,36166],{"class":1193},[551,36244,1169],{"class":587},[551,36246,36070],{"class":557},[551,36248,1197],{"class":587},[551,36250,1200],{"class":753},[551,36252,36177],{"class":594},[551,36254,1206],{"class":587},[551,36256,28585],{"class":1154},[551,36258,1158],{"class":594},[551,36260,1214],{"class":587},[551,36262,36263],{"class":561},"superscript",[551,36265,1214],{"class":587},[551,36267,1222],{"class":594},[551,36269,36270],{"class":553,"line":901},[551,36271,10057],{"class":587},[551,36273,36274,36277,36279],{"class":553,"line":910},[551,36275,36276],{"class":738},"  subscript",[551,36278,1169],{"class":587},[551,36280,588],{"class":587},[551,36282,36283,36285,36287,36289,36291,36293,36295,36297,36299,36301,36303,36305,36307,36309,36312,36314],{"class":553,"line":920},[551,36284,28661],{"class":1154},[551,36286,1169],{"class":587},[551,36288,1190],{"class":587},[551,36290,36166],{"class":1193},[551,36292,1169],{"class":587},[551,36294,36070],{"class":557},[551,36296,1197],{"class":587},[551,36298,1200],{"class":753},[551,36300,36177],{"class":594},[551,36302,1206],{"class":587},[551,36304,28679],{"class":1154},[551,36306,10081],{"class":594},[551,36308,1206],{"class":587},[551,36310,36311],{"class":1154},"toggleSubscript",[551,36313,10081],{"class":594},[551,36315,598],{"class":587},[551,36317,36318,36320,36322,36324,36326,36328,36330,36332,36334,36336,36338,36340,36342,36344,36346,36348,36350,36352,36354],{"class":553,"line":930},[551,36319,28721],{"class":1154},[551,36321,1169],{"class":587},[551,36323,1190],{"class":587},[551,36325,36166],{"class":1193},[551,36327,1169],{"class":587},[551,36329,36070],{"class":557},[551,36331,1197],{"class":587},[551,36333,1200],{"class":753},[551,36335,36177],{"class":594},[551,36337,1206],{"class":587},[551,36339,28738],{"class":1154},[551,36341,10081],{"class":594},[551,36343,1206],{"class":587},[551,36345,28745],{"class":1154},[551,36347,10081],{"class":594},[551,36349,1206],{"class":587},[551,36351,36311],{"class":1154},[551,36353,10081],{"class":594},[551,36355,598],{"class":587},[551,36357,36358,36360,36362,36364,36366,36368,36370,36372,36374,36376,36378,36380,36382,36384,36387,36389],{"class":553,"line":3536},[551,36359,28770],{"class":1154},[551,36361,1169],{"class":587},[551,36363,1190],{"class":587},[551,36365,36166],{"class":1193},[551,36367,1169],{"class":587},[551,36369,36070],{"class":557},[551,36371,1197],{"class":587},[551,36373,1200],{"class":753},[551,36375,36177],{"class":594},[551,36377,1206],{"class":587},[551,36379,28585],{"class":1154},[551,36381,1158],{"class":594},[551,36383,1214],{"class":587},[551,36385,36386],{"class":561},"subscript",[551,36388,1214],{"class":587},[551,36390,1222],{"class":594},[551,36392,36393],{"class":553,"line":4422},[551,36394,1232],{"class":587},[551,36396,36397],{"class":553,"line":6194},[551,36398,10148],{"class":587},[539,36400,36402],{"className":726,"code":36401,"language":728,"meta":546,"style":546},"\u003Cadmin-rich-editor v-slot=\"{ editor }\" v-model=\"value\" :extensions=\"extensions\" :handlers=\"scriptHandlers\">\n  \u003Cadmin-editor-toolbar :editor :items=\"items\" \u002F>\n\u003C\u002Fadmin-rich-editor>\n",[548,36403,36404,36462,36467],{"__ignoreMap":546},[551,36405,36406,36408,36410,36412,36414,36416,36418,36421,36423,36425,36427,36429,36431,36433,36435,36437,36439,36441,36443,36445,36447,36449,36451,36453,36455,36458,36460],{"class":553,"line":554},[551,36407,735],{"class":587},[551,36409,28243],{"class":738},[551,36411,3595],{"class":753},[551,36413,757],{"class":587},[551,36415,760],{"class":587},[551,36417,4243],{"class":587},[551,36419,36420],{"class":594}," editor ",[551,36422,668],{"class":587},[551,36424,760],{"class":587},[551,36426,2867],{"class":753},[551,36428,757],{"class":587},[551,36430,760],{"class":587},[551,36432,2720],{"class":594},[551,36434,760],{"class":587},[551,36436,28402],{"class":587},[551,36438,18579],{"class":753},[551,36440,757],{"class":587},[551,36442,760],{"class":587},[551,36444,18579],{"class":594},[551,36446,760],{"class":587},[551,36448,28402],{"class":587},[551,36450,28221],{"class":753},[551,36452,757],{"class":587},[551,36454,760],{"class":587},[551,36456,36457],{"class":594},"scriptHandlers",[551,36459,760],{"class":587},[551,36461,742],{"class":587},[551,36463,36464],{"class":553,"line":591},[551,36465,36466],{"class":594},"  \u003Cadmin-editor-toolbar :editor :items=\"items\" \u002F>\n",[551,36468,36469,36471,36473],{"class":553,"line":601},[551,36470,784],{"class":587},[551,36472,28243],{"class":738},[551,36474,742],{"class":587},[705,36476,36477,36478,36480],{},"toolbar item 以 ",[548,36479,18171],{}," 對應 handler，經 rich-editor context 派發：",[539,36482,36484],{"className":574,"code":36483,"language":576,"meta":546,"style":546},"const items = [\n  ...defaultEditorItems,\n  [\n    { kind: 'superscript', icon: IconSuperscript, tooltip: '上標' },\n    { kind: 'subscript', icon: IconSubscript, tooltip: '下標' }\n  ]\n]\n",[548,36485,36486,36496,36504,36508,36545,36582,36586],{"__ignoreMap":546},[551,36487,36488,36490,36492,36494],{"class":553,"line":554},[551,36489,3321],{"class":753},[551,36491,28823],{"class":594},[551,36493,757],{"class":587},[551,36495,1315],{"class":594},[551,36497,36498,36500,36502],{"class":553,"line":591},[551,36499,28832],{"class":587},[551,36501,28232],{"class":594},[551,36503,598],{"class":587},[551,36505,36506],{"class":553,"line":601},[551,36507,30957],{"class":594},[551,36509,36510,36512,36514,36516,36518,36520,36522,36524,36526,36528,36531,36533,36535,36537,36539,36541,36543],{"class":553,"line":609},[551,36511,30962],{"class":587},[551,36513,28846],{"class":738},[551,36515,1169],{"class":587},[551,36517,674],{"class":587},[551,36519,36263],{"class":561},[551,36521,1214],{"class":587},[551,36523,3348],{"class":587},[551,36525,32423],{"class":738},[551,36527,1169],{"class":587},[551,36529,36530],{"class":594}," IconSuperscript",[551,36532,3348],{"class":587},[551,36534,28874],{"class":738},[551,36536,1169],{"class":587},[551,36538,674],{"class":587},[551,36540,19024],{"class":561},[551,36542,1214],{"class":587},[551,36544,3363],{"class":587},[551,36546,36547,36549,36551,36553,36555,36557,36559,36561,36563,36565,36568,36570,36572,36574,36576,36578,36580],{"class":553,"line":617},[551,36548,30962],{"class":587},[551,36550,28846],{"class":738},[551,36552,1169],{"class":587},[551,36554,674],{"class":587},[551,36556,36386],{"class":561},[551,36558,1214],{"class":587},[551,36560,3348],{"class":587},[551,36562,32423],{"class":738},[551,36564,1169],{"class":587},[551,36566,36567],{"class":594}," IconSubscript",[551,36569,3348],{"class":587},[551,36571,28874],{"class":738},[551,36573,1169],{"class":587},[551,36575,674],{"class":587},[551,36577,19015],{"class":561},[551,36579,1214],{"class":587},[551,36581,18827],{"class":587},[551,36583,36584],{"class":553,"line":625},[551,36585,1395],{"class":594},[551,36587,36588],{"class":553,"line":633},[551,36589,9080],{"class":594},[705,36591,36592,36593,1123,36595,36597,36598,1123,36600,36602],{},"注入後 ",[548,36594,19755],{},[548,36596,19615],{}," command 可用（官方 extension 另附 ",[548,36599,19789],{},[548,36601,19650],{}," 快捷鍵）；toolbar 按鈕依當前 mark 高亮。",[536,36604,720],{"id":719},[705,36606,36607,1123,36609,32744,36611,36616,36617,713],{},[548,36608,19688],{},[548,36610,19535],{},[697,36612,36615],{"href":36613,"rel":36614},"https:\u002F\u002Ftiptap.dev\u002Fdocs\u002Feditor\u002Fextensions\u002Fmarks\u002Fsuperscript",[701],"tiptap superscript 官方文件","與 ",[697,36618,36621],{"href":36619,"rel":36620},"https:\u002F\u002Ftiptap.dev\u002Fdocs\u002Feditor\u002Fextensions\u002Fmarks\u002Fsubscript",[701],"subscript 官方文件",[536,36623,1556],{"id":1556},[1558,36625,36626,36636],{},[1561,36627,36628,36631,36632,36635],{},[1135,36629,36630],{},"不互斥","：上標與下標可同時套用於同一段文字。若需互斥，自行以 ",[548,36633,36634],{},"Superscript.extend({ excludes: 'subscript' })","（及對稱設定）於 schema 層處理。",[1561,36637,36638,36641,36642,36645,36646,36649],{},[1135,36639,36640],{},"不支援 markdown 模式","：官方 extension 不含 markdown tokenizer \u002F serializer，",[548,36643,36644],{},"content-type=\"markdown\""," 下 sup \u002F sub 不會被序列化，來回轉換會遺失。此情境需自寫帶 ",[548,36647,36648],{},"markdownTokenizer"," 的 custom mark。",[990,36651,36652],{},"html pre.shiki code .sBMFI, html code.shiki .sBMFI{--shiki-light:#E2931D;--shiki-default:#FFCB6B;--shiki-dark:#FFCB6B}html pre.shiki code .sfazB, html code.shiki .sfazB{--shiki-light:#91B859;--shiki-default:#C3E88D;--shiki-dark:#C3E88D}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 pre.shiki code .s7zQu, html code.shiki .s7zQu{--shiki-light:#39ADB5;--shiki-light-font-style:italic;--shiki-default:#89DDFF;--shiki-default-font-style:italic;--shiki-dark:#89DDFF;--shiki-dark-font-style:italic}html pre.shiki code .sMK4o, html code.shiki .sMK4o{--shiki-light:#39ADB5;--shiki-default:#89DDFF;--shiki-dark:#89DDFF}html pre.shiki code .sTEyZ, html code.shiki .sTEyZ{--shiki-light:#90A4AE;--shiki-default:#EEFFFF;--shiki-dark:#BABED8}html pre.shiki code .spNyl, html code.shiki .spNyl{--shiki-light:#9C3EDA;--shiki-default:#C792EA;--shiki-dark:#C792EA}html pre.shiki code .swJcz, html code.shiki .swJcz{--shiki-light:#E53935;--shiki-default:#F07178;--shiki-dark:#F07178}html pre.shiki code .s2Zo4, html code.shiki .s2Zo4{--shiki-light:#6182B8;--shiki-default:#82AAFF;--shiki-dark:#82AAFF}html pre.shiki code .sHdIc, html code.shiki .sHdIc{--shiki-light:#90A4AE;--shiki-light-font-style:italic;--shiki-default:#EEFFFF;--shiki-default-font-style:italic;--shiki-dark:#BABED8;--shiki-dark-font-style:italic}",{"title":546,"searchDepth":601,"depth":601,"links":36654},[36655,36656,36657,36658],{"id":507,"depth":591,"text":507},{"id":683,"depth":591,"text":683},{"id":719,"depth":591,"text":720},{"id":1556,"depth":591,"text":1556},"toolbar 上標／下標按鈕；sup／sub 行內樣式。",{"doc":36613},{},{"title":446,"description":36659},"JyjPe3kNsLNSujrTpd5aAZg8huq6rU198mtLjnBKudA",{"id":36665,"title":450,"body":36666,"component":18,"description":37276,"extension":1015,"links":37277,"meta":37279,"navigation":526,"new":18,"path":451,"seo":37280,"stem":452,"wrapperKind":19,"__hash__":37281},"docs\u002Fdocs\u002Feditor\u002F4.addons\u002F17.video.md",{"type":533,"value":36667,"toc":37269},[36668,36670,36682,36700,36730,36746,36748,36751,37137,37139,37158,37162,37179,37194,37197,37202,37217,37220,37222,37267],[536,36669,507],{"id":507},[705,36671,36672,36675,36676,36678,36679,36681],{},[548,36673,36674],{},"editor-video"," 自帶 ",[548,36677,336],{}," node（以 ",[548,36680,36079],{}," 自製，無需額外安裝 tiptap extension 套件）。",[539,36683,36685],{"className":541,"code":36684,"filename":543,"language":544,"meta":545,"style":546},"pnpm dlx shadcn-vue add @admin\u002Feditor-video\n",[548,36686,36687],{"__ignoreMap":546},[551,36688,36689,36691,36693,36695,36697],{"class":553,"line":554},[551,36690,558],{"class":557},[551,36692,562],{"class":561},[551,36694,565],{"class":561},[551,36696,568],{"class":561},[551,36698,36699],{"class":561}," @admin\u002Feditor-video\n",[539,36701,36703],{"className":574,"code":36702,"language":576,"meta":546,"style":546},"import { createVideoHandler, Video } from '@\u002Fregistry\u002Fadmin\u002Fui\u002Feditor-video'\n",[548,36704,36705],{"__ignoreMap":546},[551,36706,36707,36709,36711,36714,36716,36719,36721,36723,36725,36728],{"class":553,"line":554},[551,36708,584],{"class":583},[551,36710,1273],{"class":587},[551,36712,36713],{"class":594}," createVideoHandler",[551,36715,3348],{"class":587},[551,36717,36718],{"class":594}," Video",[551,36720,1279],{"class":587},[551,36722,671],{"class":583},[551,36724,674],{"class":587},[551,36726,36727],{"class":561},"@\u002Fregistry\u002Fadmin\u002Fui\u002Feditor-video",[551,36729,680],{"class":587},[705,36731,36732,36733,36735,36736,14865,36738,32131,36741,32134,36743,32138],{},"把本包的 ",[548,36734,336],{}," node 傳入 ",[548,36737,28043],{},[548,36739,36740],{},"createVideoHandler",[548,36742,28539],{},[548,36744,36745],{},"{ kind: 'video' }",[536,36747,683],{"id":683},[685,36749],{"name":36750},"EditorVideoDemo",[539,36752,36754],{"className":726,"code":36753,"language":728,"meta":546,"style":546},"\u003Cscript setup lang=\"ts\">\nimport type { EditorToolbarItem } from '@\u002Fregistry\u002Fadmin\u002Fui\u002Feditor-toolbar'\nimport { IconMovie } from '@tabler\u002Ficons-vue'\nimport { ref } from 'vue'\nimport { AdminEditorToolbar, defaultEditorItems } from '@\u002Fregistry\u002Fadmin\u002Fui\u002Feditor-toolbar'\nimport { createVideoHandler, Video } from '@\u002Fregistry\u002Fadmin\u002Fui\u002Feditor-video'\nimport { AdminRichEditor } from '@\u002Fregistry\u002Fadmin\u002Fui\u002Frich-editor'\n\nconst value = ref('\u003Cp>影片：\u003Cvideo src=\"https:\u002F\u002Fwww.w3schools.com\u002Fhtml\u002Fmov_bbb.mp4\" controls>\u003C\u002Fvideo>\u003C\u002Fp>')\n\nconst extensions = [Video]\nconst handlers = { video: createVideoHandler() }\nconst items: EditorToolbarItem[][] = [\n  ...defaultEditorItems,\n  [{ kind: 'video', icon: IconMovie, label: '插入影片', tooltip: { text: '插入影片' } }]\n]\n\u003C\u002Fscript>\n\n\u003Ctemplate>\n  \u003Cadmin-rich-editor v-model=\"value\" :extensions=\"extensions\" :handlers=\"handlers\">\n    \u003Cadmin-editor-toolbar :items=\"items\" \u002F>\n  \u003C\u002Fadmin-rich-editor>\n\u003C\u002Ftemplate>\n",[548,36755,36756,36776,36796,36815,36833,36855,36877,36895,36899,36920,36924,36935,36956,36972,36980,37041,37045,37053,37057,37065,37103,37121,37129],{"__ignoreMap":546},[551,36757,36758,36760,36762,36764,36766,36768,36770,36772,36774],{"class":553,"line":554},[551,36759,735],{"class":587},[551,36761,3276],{"class":738},[551,36763,3279],{"class":753},[551,36765,3282],{"class":753},[551,36767,757],{"class":587},[551,36769,760],{"class":587},[551,36771,576],{"class":561},[551,36773,760],{"class":587},[551,36775,742],{"class":587},[551,36777,36778,36780,36782,36784,36786,36788,36790,36792,36794],{"class":553,"line":591},[551,36779,584],{"class":583},[551,36781,3137],{"class":583},[551,36783,1273],{"class":587},[551,36785,28622],{"class":594},[551,36787,1279],{"class":587},[551,36789,671],{"class":583},[551,36791,674],{"class":587},[551,36793,28108],{"class":561},[551,36795,680],{"class":587},[551,36797,36798,36800,36802,36805,36807,36809,36811,36813],{"class":553,"line":601},[551,36799,584],{"class":583},[551,36801,1273],{"class":587},[551,36803,36804],{"class":594}," IconMovie",[551,36806,1279],{"class":587},[551,36808,671],{"class":583},[551,36810,674],{"class":587},[551,36812,17314],{"class":561},[551,36814,680],{"class":587},[551,36816,36817,36819,36821,36823,36825,36827,36829,36831],{"class":553,"line":609},[551,36818,584],{"class":583},[551,36820,1273],{"class":587},[551,36822,3427],{"class":594},[551,36824,1279],{"class":587},[551,36826,671],{"class":583},[551,36828,674],{"class":587},[551,36830,728],{"class":561},[551,36832,680],{"class":587},[551,36834,36835,36837,36839,36841,36843,36845,36847,36849,36851,36853],{"class":553,"line":617},[551,36836,584],{"class":583},[551,36838,1273],{"class":587},[551,36840,28094],{"class":594},[551,36842,3348],{"class":587},[551,36844,28099],{"class":594},[551,36846,1279],{"class":587},[551,36848,671],{"class":583},[551,36850,674],{"class":587},[551,36852,28108],{"class":561},[551,36854,680],{"class":587},[551,36856,36857,36859,36861,36863,36865,36867,36869,36871,36873,36875],{"class":553,"line":625},[551,36858,584],{"class":583},[551,36860,1273],{"class":587},[551,36862,36713],{"class":594},[551,36864,3348],{"class":587},[551,36866,36718],{"class":594},[551,36868,1279],{"class":587},[551,36870,671],{"class":583},[551,36872,674],{"class":587},[551,36874,36727],{"class":561},[551,36876,680],{"class":587},[551,36878,36879,36881,36883,36885,36887,36889,36891,36893],{"class":553,"line":633},[551,36880,584],{"class":583},[551,36882,1273],{"class":587},[551,36884,28119],{"class":594},[551,36886,1279],{"class":587},[551,36888,671],{"class":583},[551,36890,674],{"class":587},[551,36892,28128],{"class":561},[551,36894,680],{"class":587},[551,36896,36897],{"class":553,"line":641},[551,36898,1293],{"emptyLinePlaceholder":526},[551,36900,36901,36903,36905,36907,36909,36911,36913,36916,36918],{"class":553,"line":649},[551,36902,3321],{"class":753},[551,36904,3422],{"class":594},[551,36906,757],{"class":587},[551,36908,3427],{"class":1154},[551,36910,1158],{"class":594},[551,36912,1214],{"class":587},[551,36914,36915],{"class":561},"\u003Cp>影片：\u003Cvideo src=\"https:\u002F\u002Fwww.w3schools.com\u002Fhtml\u002Fmov_bbb.mp4\" controls>\u003C\u002Fvideo>\u003C\u002Fp>",[551,36917,1214],{"class":587},[551,36919,1222],{"class":594},[551,36921,36922],{"class":553,"line":657},[551,36923,1293],{"emptyLinePlaceholder":526},[551,36925,36926,36928,36930,36932],{"class":553,"line":665},[551,36927,3321],{"class":753},[551,36929,32337],{"class":594},[551,36931,757],{"class":587},[551,36933,36934],{"class":594}," [Video]\n",[551,36936,36937,36939,36941,36943,36945,36948,36950,36952,36954],{"class":553,"line":901},[551,36938,3321],{"class":753},[551,36940,28643],{"class":594},[551,36942,757],{"class":587},[551,36944,1273],{"class":587},[551,36946,36947],{"class":738}," video",[551,36949,1169],{"class":587},[551,36951,36713],{"class":1154},[551,36953,32374],{"class":594},[551,36955,10148],{"class":587},[551,36957,36958,36960,36962,36964,36966,36968,36970],{"class":553,"line":910},[551,36959,3321],{"class":753},[551,36961,32383],{"class":594},[551,36963,1169],{"class":587},[551,36965,28622],{"class":557},[551,36967,32390],{"class":594},[551,36969,757],{"class":587},[551,36971,1315],{"class":594},[551,36973,36974,36976,36978],{"class":553,"line":920},[551,36975,28832],{"class":587},[551,36977,28232],{"class":594},[551,36979,598],{"class":587},[551,36981,36982,36984,36986,36988,36990,36992,36994,36996,36998,37000,37002,37004,37006,37008,37010,37012,37015,37017,37019,37021,37023,37025,37027,37029,37031,37033,37035,37037,37039],{"class":553,"line":930},[551,36983,28841],{"class":594},[551,36985,4243],{"class":587},[551,36987,28846],{"class":738},[551,36989,1169],{"class":587},[551,36991,674],{"class":587},[551,36993,25070],{"class":561},[551,36995,1214],{"class":587},[551,36997,3348],{"class":587},[551,36999,32423],{"class":738},[551,37001,1169],{"class":587},[551,37003,36804],{"class":594},[551,37005,3348],{"class":587},[551,37007,28860],{"class":738},[551,37009,1169],{"class":587},[551,37011,674],{"class":587},[551,37013,37014],{"class":561},"插入影片",[551,37016,1214],{"class":587},[551,37018,3348],{"class":587},[551,37020,28874],{"class":738},[551,37022,1169],{"class":587},[551,37024,1273],{"class":587},[551,37026,28881],{"class":738},[551,37028,1169],{"class":587},[551,37030,674],{"class":587},[551,37032,37014],{"class":561},[551,37034,1214],{"class":587},[551,37036,1279],{"class":587},[551,37038,1279],{"class":587},[551,37040,9080],{"class":594},[551,37042,37043],{"class":553,"line":3536},[551,37044,9080],{"class":594},[551,37046,37047,37049,37051],{"class":553,"line":4422},[551,37048,784],{"class":587},[551,37050,3276],{"class":738},[551,37052,742],{"class":587},[551,37054,37055],{"class":553,"line":6194},[551,37056,1293],{"emptyLinePlaceholder":526},[551,37058,37059,37061,37063],{"class":553,"line":6204},[551,37060,735],{"class":587},[551,37062,739],{"class":738},[551,37064,742],{"class":587},[551,37066,37067,37069,37071,37073,37075,37077,37079,37081,37083,37085,37087,37089,37091,37093,37095,37097,37099,37101],{"class":553,"line":6223},[551,37068,747],{"class":587},[551,37070,28243],{"class":738},[551,37072,2867],{"class":753},[551,37074,757],{"class":587},[551,37076,760],{"class":587},[551,37078,2720],{"class":561},[551,37080,760],{"class":587},[551,37082,30679],{"class":753},[551,37084,757],{"class":587},[551,37086,760],{"class":587},[551,37088,18579],{"class":561},[551,37090,760],{"class":587},[551,37092,28214],{"class":753},[551,37094,757],{"class":587},[551,37096,760],{"class":587},[551,37098,28221],{"class":561},[551,37100,760],{"class":587},[551,37102,742],{"class":587},[551,37104,37105,37107,37109,37111,37113,37115,37117,37119],{"class":553,"line":6233},[551,37106,772],{"class":587},[551,37108,28208],{"class":738},[551,37110,15260],{"class":753},[551,37112,757],{"class":587},[551,37114,760],{"class":587},[551,37116,7361],{"class":561},[551,37118,760],{"class":587},[551,37120,1449],{"class":587},[551,37122,37123,37125,37127],{"class":553,"line":6242},[551,37124,923],{"class":587},[551,37126,28243],{"class":738},[551,37128,742],{"class":587},[551,37130,37131,37133,37135],{"class":553,"line":6251},[551,37132,784],{"class":587},[551,37134,739],{"class":738},[551,37136,742],{"class":587},[705,37138,32563],{},[1558,37140,37141,37146,37152],{},[1561,37142,37143,32570],{},[548,37144,37145],{},"\u003Cvideo>",[1561,37147,37148,37151],{},[548,37149,37150],{},"editor.commands.setVideo({ src })"," 可程式式插入影片",[1561,37153,32579,37154,37157],{},[548,37155,37156],{},"\u003Cvideo src=\"...\" controls>","（HTML）或 video node attrs（JSON）",[536,37159,37161],{"id":37160},"src-來源與上傳","src 來源與上傳",[705,37163,37164,37166,37167,37169,37170,37172,37173,37175,37176,37178],{},[548,37165,36740],{}," 只處理網址：缺 ",[548,37168,1409],{}," 時以 ",[548,37171,18175],{}," 要一個 URL。檔案上傳流程不內建於本包，請自行以 ",[548,37174,28539],{}," 覆寫 ",[548,37177,25070],{}," handler 接上上傳端點。",[2817,37180,37182],{"title":37181,"type":8626},"src 不做白名單",[705,37183,37184,37186,37187,37190,37191,37193],{},[548,37185,1409],{}," 直接寫入 ",[548,37188,37189],{},"\u003Cvideo src>","，本包不驗證網址；若 ",[548,37192,1409],{}," 來源不可信，請於 consumer 端自行 sanitize。",[536,37195,37196],{"id":37196},"屬性",[705,37198,37199,37201],{},[548,37200,336],{}," node 屬性刻意最小化：",[1558,37203,37204,37209],{},[1561,37205,37206,37208],{},[548,37207,1409],{},"（必備）：影片來源網址",[1561,37210,37211,37213,37214,37216],{},[548,37212,25074],{},"（預設 ",[548,37215,2742],{},"）：是否顯示原生播放控制列",[705,37218,37219],{},"poster \u002F width \u002F height \u002F autoplay \u002F loop \u002F muted 等進階屬性未內建。",[536,37221,720],{"id":719},[5754,37223,37224,37233],{},[5757,37225,37226],{},[5760,37227,37228,37231],{},[5763,37229,37230],{},"匯出",[5763,37232,19559],{},[5770,37234,37235,37247],{},[5760,37236,37237,37241],{},[5775,37238,37239],{},[548,37240,336],{},[5775,37242,37243,37244],{},"自製 tiptap block atom node，傳入 ",[548,37245,37246],{},"\u003CAdminRichEditor :extensions>",[5760,37248,37249,37254],{},[5775,37250,37251],{},[548,37252,37253],{},"createVideoHandler()",[5775,37255,37256,37257,37260,37261,7623,37264,37266],{},"回傳 ",[548,37258,37259],{},"EditorHandler","，傳入 ",[548,37262,37263],{},"\u003CAdminRichEditor :handlers>",[548,37265,25070],{}," key",[990,37268,3744],{},{"title":546,"searchDepth":601,"depth":601,"links":37270},[37271,37272,37273,37274,37275],{"id":507,"depth":591,"text":507},{"id":683,"depth":591,"text":683},{"id":37160,"depth":591,"text":37161},{"id":37196,"depth":591,"text":37196},{"id":719,"depth":591,"text":720},"顯示影片；以程式插入原生 video。",{"doc":37278},"https:\u002F\u002Fdeveloper.mozilla.org\u002Fdocs\u002FWeb\u002FHTML\u002FElement\u002Fvideo",{},{"title":450,"description":37276},"RWb4p31Un6pgCto2xsJj5z7hAFMKNv961HwBmtSK6Nk",{"id":37283,"title":454,"body":37284,"component":18,"description":38116,"extension":1015,"links":38117,"meta":38118,"navigation":526,"new":18,"path":455,"seo":38119,"stem":456,"wrapperKind":19,"__hash__":38120},"docs\u002Fdocs\u002Feditor\u002F4.addons\u002F18.youtube.md",{"type":533,"value":37285,"toc":38109},[37286,37288,37315,37360,37381,37383,37386,37825,37827,37850,37880,37882,37892,38050,38054,38068,38070,38097,38106],[536,37287,507],{"id":507},[539,37289,37291],{"className":541,"code":37290,"filename":543,"language":544,"meta":545,"style":546},"pnpm dlx shadcn-vue add @admin\u002Feditor-youtube\npnpm add @tiptap\u002Fextension-youtube\n",[548,37292,37293,37306],{"__ignoreMap":546},[551,37294,37295,37297,37299,37301,37303],{"class":553,"line":554},[551,37296,558],{"class":557},[551,37298,562],{"class":561},[551,37300,565],{"class":561},[551,37302,568],{"class":561},[551,37304,37305],{"class":561}," @admin\u002Feditor-youtube\n",[551,37307,37308,37310,37312],{"class":553,"line":591},[551,37309,558],{"class":557},[551,37311,568],{"class":561},[551,37313,37314],{"class":561}," @tiptap\u002Fextension-youtube\n",[539,37316,37318],{"className":574,"code":37317,"language":576,"meta":546,"style":546},"import { Youtube } from '@tiptap\u002Fextension-youtube'\nimport { createYoutubeHandler } from '@\u002Fregistry\u002Fadmin\u002Fui\u002Feditor-youtube'\n",[548,37319,37320,37340],{"__ignoreMap":546},[551,37321,37322,37324,37326,37329,37331,37333,37335,37338],{"class":553,"line":554},[551,37323,584],{"class":583},[551,37325,1273],{"class":587},[551,37327,37328],{"class":594}," Youtube",[551,37330,1279],{"class":587},[551,37332,671],{"class":583},[551,37334,674],{"class":587},[551,37336,37337],{"class":561},"@tiptap\u002Fextension-youtube",[551,37339,680],{"class":587},[551,37341,37342,37344,37346,37349,37351,37353,37355,37358],{"class":553,"line":591},[551,37343,584],{"class":583},[551,37345,1273],{"class":587},[551,37347,37348],{"class":594}," createYoutubeHandler",[551,37350,1279],{"class":587},[551,37352,671],{"class":583},[551,37354,674],{"class":587},[551,37356,37357],{"class":561},"@\u002Fregistry\u002Fadmin\u002Fui\u002Feditor-youtube",[551,37359,680],{"class":587},[705,37361,32115,37362,37365,37366,32122,37369,32126,37372,14865,37374,32131,37376,32134,37378,32138],{},[548,37363,37364],{},"createYoutubeHandler","；嵌入能力來自 tiptap ",[548,37367,37368],{},"Youtube",[548,37370,37371],{},"Youtube.configure({})",[548,37373,28043],{},[548,37375,37364],{},[548,37377,28539],{},[548,37379,37380],{},"{ kind: 'youtube' }",[536,37382,683],{"id":683},[685,37384],{"name":37385},"EditorYoutubeDemo",[539,37387,37389],{"className":726,"code":37388,"language":728,"meta":546,"style":546},"\u003Cscript setup lang=\"ts\">\nimport type { EditorToolbarItem } from '@\u002Fregistry\u002Fadmin\u002Fui\u002Feditor-toolbar'\nimport { IconBrandYoutube } from '@tabler\u002Ficons-vue'\nimport { Youtube } from '@tiptap\u002Fextension-youtube'\nimport { ref } from 'vue'\nimport { AdminEditorToolbar, defaultEditorItems } from '@\u002Fregistry\u002Fadmin\u002Fui\u002Feditor-toolbar'\nimport { createYoutubeHandler } from '@\u002Fregistry\u002Fadmin\u002Fui\u002Feditor-youtube'\nimport { AdminRichEditor } from '@\u002Fregistry\u002Fadmin\u002Fui\u002Frich-editor'\n\nconst value = ref('\u003Cp>影片：\u003C\u002Fp>\u003Cdiv data-youtube-video>\u003Ciframe src=\"https:\u002F\u002Fwww.youtube.com\u002Fembed\u002FdQw4w9WgXcQ\">\u003C\u002Fiframe>\u003C\u002Fdiv>')\n\nconst extensions = [Youtube.configure({ nocookie: true, width: 640, height: 360 })]\nconst handlers = { youtube: createYoutubeHandler() }\nconst items: EditorToolbarItem[][] = [\n  ...defaultEditorItems,\n  [{ kind: 'youtube', icon: IconBrandYoutube, label: '插入 YouTube', tooltip: { text: '插入 YouTube' } }]\n]\n\u003C\u002Fscript>\n\n\u003Ctemplate>\n  \u003Cadmin-rich-editor v-model=\"value\" :extensions=\"extensions\" :handlers=\"handlers\">\n    \u003Cadmin-editor-toolbar :items=\"items\" \u002F>\n  \u003C\u002Fadmin-rich-editor>\n\u003C\u002Ftemplate>\n",[548,37390,37391,37411,37431,37450,37468,37486,37508,37526,37544,37548,37569,37573,37623,37644,37660,37668,37729,37733,37741,37745,37753,37791,37809,37817],{"__ignoreMap":546},[551,37392,37393,37395,37397,37399,37401,37403,37405,37407,37409],{"class":553,"line":554},[551,37394,735],{"class":587},[551,37396,3276],{"class":738},[551,37398,3279],{"class":753},[551,37400,3282],{"class":753},[551,37402,757],{"class":587},[551,37404,760],{"class":587},[551,37406,576],{"class":561},[551,37408,760],{"class":587},[551,37410,742],{"class":587},[551,37412,37413,37415,37417,37419,37421,37423,37425,37427,37429],{"class":553,"line":591},[551,37414,584],{"class":583},[551,37416,3137],{"class":583},[551,37418,1273],{"class":587},[551,37420,28622],{"class":594},[551,37422,1279],{"class":587},[551,37424,671],{"class":583},[551,37426,674],{"class":587},[551,37428,28108],{"class":561},[551,37430,680],{"class":587},[551,37432,37433,37435,37437,37440,37442,37444,37446,37448],{"class":553,"line":601},[551,37434,584],{"class":583},[551,37436,1273],{"class":587},[551,37438,37439],{"class":594}," IconBrandYoutube",[551,37441,1279],{"class":587},[551,37443,671],{"class":583},[551,37445,674],{"class":587},[551,37447,17314],{"class":561},[551,37449,680],{"class":587},[551,37451,37452,37454,37456,37458,37460,37462,37464,37466],{"class":553,"line":609},[551,37453,584],{"class":583},[551,37455,1273],{"class":587},[551,37457,37328],{"class":594},[551,37459,1279],{"class":587},[551,37461,671],{"class":583},[551,37463,674],{"class":587},[551,37465,37337],{"class":561},[551,37467,680],{"class":587},[551,37469,37470,37472,37474,37476,37478,37480,37482,37484],{"class":553,"line":617},[551,37471,584],{"class":583},[551,37473,1273],{"class":587},[551,37475,3427],{"class":594},[551,37477,1279],{"class":587},[551,37479,671],{"class":583},[551,37481,674],{"class":587},[551,37483,728],{"class":561},[551,37485,680],{"class":587},[551,37487,37488,37490,37492,37494,37496,37498,37500,37502,37504,37506],{"class":553,"line":625},[551,37489,584],{"class":583},[551,37491,1273],{"class":587},[551,37493,28094],{"class":594},[551,37495,3348],{"class":587},[551,37497,28099],{"class":594},[551,37499,1279],{"class":587},[551,37501,671],{"class":583},[551,37503,674],{"class":587},[551,37505,28108],{"class":561},[551,37507,680],{"class":587},[551,37509,37510,37512,37514,37516,37518,37520,37522,37524],{"class":553,"line":633},[551,37511,584],{"class":583},[551,37513,1273],{"class":587},[551,37515,37348],{"class":594},[551,37517,1279],{"class":587},[551,37519,671],{"class":583},[551,37521,674],{"class":587},[551,37523,37357],{"class":561},[551,37525,680],{"class":587},[551,37527,37528,37530,37532,37534,37536,37538,37540,37542],{"class":553,"line":641},[551,37529,584],{"class":583},[551,37531,1273],{"class":587},[551,37533,28119],{"class":594},[551,37535,1279],{"class":587},[551,37537,671],{"class":583},[551,37539,674],{"class":587},[551,37541,28128],{"class":561},[551,37543,680],{"class":587},[551,37545,37546],{"class":553,"line":649},[551,37547,1293],{"emptyLinePlaceholder":526},[551,37549,37550,37552,37554,37556,37558,37560,37562,37565,37567],{"class":553,"line":657},[551,37551,3321],{"class":753},[551,37553,3422],{"class":594},[551,37555,757],{"class":587},[551,37557,3427],{"class":1154},[551,37559,1158],{"class":594},[551,37561,1214],{"class":587},[551,37563,37564],{"class":561},"\u003Cp>影片：\u003C\u002Fp>\u003Cdiv data-youtube-video>\u003Ciframe src=\"https:\u002F\u002Fwww.youtube.com\u002Fembed\u002FdQw4w9WgXcQ\">\u003C\u002Fiframe>\u003C\u002Fdiv>",[551,37566,1214],{"class":587},[551,37568,1222],{"class":594},[551,37570,37571],{"class":553,"line":665},[551,37572,1293],{"emptyLinePlaceholder":526},[551,37574,37575,37577,37579,37581,37584,37586,37588,37590,37592,37595,37597,37599,37601,37604,37606,37609,37611,37614,37616,37619,37621],{"class":553,"line":901},[551,37576,3321],{"class":753},[551,37578,32337],{"class":594},[551,37580,757],{"class":587},[551,37582,37583],{"class":594}," [Youtube",[551,37585,1206],{"class":587},[551,37587,32347],{"class":1154},[551,37589,1158],{"class":594},[551,37591,4243],{"class":587},[551,37593,37594],{"class":738}," nocookie",[551,37596,1169],{"class":587},[551,37598,28714],{"class":17983},[551,37600,3348],{"class":587},[551,37602,37603],{"class":738}," width",[551,37605,1169],{"class":587},[551,37607,37608],{"class":17275}," 640",[551,37610,3348],{"class":587},[551,37612,37613],{"class":738}," height",[551,37615,1169],{"class":587},[551,37617,37618],{"class":17275}," 360",[551,37620,1279],{"class":587},[551,37622,32354],{"class":594},[551,37624,37625,37627,37629,37631,37633,37636,37638,37640,37642],{"class":553,"line":910},[551,37626,3321],{"class":753},[551,37628,28643],{"class":594},[551,37630,757],{"class":587},[551,37632,1273],{"class":587},[551,37634,37635],{"class":738}," youtube",[551,37637,1169],{"class":587},[551,37639,37348],{"class":1154},[551,37641,32374],{"class":594},[551,37643,10148],{"class":587},[551,37645,37646,37648,37650,37652,37654,37656,37658],{"class":553,"line":920},[551,37647,3321],{"class":753},[551,37649,32383],{"class":594},[551,37651,1169],{"class":587},[551,37653,28622],{"class":557},[551,37655,32390],{"class":594},[551,37657,757],{"class":587},[551,37659,1315],{"class":594},[551,37661,37662,37664,37666],{"class":553,"line":930},[551,37663,28832],{"class":587},[551,37665,28232],{"class":594},[551,37667,598],{"class":587},[551,37669,37670,37672,37674,37676,37678,37680,37682,37684,37686,37688,37690,37692,37694,37696,37698,37700,37703,37705,37707,37709,37711,37713,37715,37717,37719,37721,37723,37725,37727],{"class":553,"line":3536},[551,37671,28841],{"class":594},[551,37673,4243],{"class":587},[551,37675,28846],{"class":738},[551,37677,1169],{"class":587},[551,37679,674],{"class":587},[551,37681,15779],{"class":561},[551,37683,1214],{"class":587},[551,37685,3348],{"class":587},[551,37687,32423],{"class":738},[551,37689,1169],{"class":587},[551,37691,37439],{"class":594},[551,37693,3348],{"class":587},[551,37695,28860],{"class":738},[551,37697,1169],{"class":587},[551,37699,674],{"class":587},[551,37701,37702],{"class":561},"插入 YouTube",[551,37704,1214],{"class":587},[551,37706,3348],{"class":587},[551,37708,28874],{"class":738},[551,37710,1169],{"class":587},[551,37712,1273],{"class":587},[551,37714,28881],{"class":738},[551,37716,1169],{"class":587},[551,37718,674],{"class":587},[551,37720,37702],{"class":561},[551,37722,1214],{"class":587},[551,37724,1279],{"class":587},[551,37726,1279],{"class":587},[551,37728,9080],{"class":594},[551,37730,37731],{"class":553,"line":4422},[551,37732,9080],{"class":594},[551,37734,37735,37737,37739],{"class":553,"line":6194},[551,37736,784],{"class":587},[551,37738,3276],{"class":738},[551,37740,742],{"class":587},[551,37742,37743],{"class":553,"line":6204},[551,37744,1293],{"emptyLinePlaceholder":526},[551,37746,37747,37749,37751],{"class":553,"line":6223},[551,37748,735],{"class":587},[551,37750,739],{"class":738},[551,37752,742],{"class":587},[551,37754,37755,37757,37759,37761,37763,37765,37767,37769,37771,37773,37775,37777,37779,37781,37783,37785,37787,37789],{"class":553,"line":6233},[551,37756,747],{"class":587},[551,37758,28243],{"class":738},[551,37760,2867],{"class":753},[551,37762,757],{"class":587},[551,37764,760],{"class":587},[551,37766,2720],{"class":561},[551,37768,760],{"class":587},[551,37770,30679],{"class":753},[551,37772,757],{"class":587},[551,37774,760],{"class":587},[551,37776,18579],{"class":561},[551,37778,760],{"class":587},[551,37780,28214],{"class":753},[551,37782,757],{"class":587},[551,37784,760],{"class":587},[551,37786,28221],{"class":561},[551,37788,760],{"class":587},[551,37790,742],{"class":587},[551,37792,37793,37795,37797,37799,37801,37803,37805,37807],{"class":553,"line":6242},[551,37794,772],{"class":587},[551,37796,28208],{"class":738},[551,37798,15260],{"class":753},[551,37800,757],{"class":587},[551,37802,760],{"class":587},[551,37804,7361],{"class":561},[551,37806,760],{"class":587},[551,37808,1449],{"class":587},[551,37810,37811,37813,37815],{"class":553,"line":6251},[551,37812,923],{"class":587},[551,37814,28243],{"class":738},[551,37816,742],{"class":587},[551,37818,37819,37821,37823],{"class":553,"line":524},[551,37820,784],{"class":587},[551,37822,739],{"class":738},[551,37824,742],{"class":587},[705,37826,32563],{},[1558,37828,37829,37832,37844],{},[1561,37830,37831],{},"YouTube iframe 顯示不會被 tiptap parser 丟掉",[1561,37833,37834,37837,37838,37840,37841,37843],{},[548,37835,37836],{},"editor.commands.setYoutubeVideo({ src })"," 可程式式嵌入影片（",[548,37839,1409],{}," 需為合法 YouTube 網址，否則官方 command 回 ",[548,37842,2745],{}," 不插入）",[1561,37845,37846,37847],{},"序列化輸出為 ",[548,37848,37849],{},"\u003Cdiv data-youtube-video>\u003Ciframe ...>\u003C\u002Fiframe>\u003C\u002Fdiv>",[2817,37851,37853,37870],{"title":37852,"type":2820},"選取外框與節點拖曳",[705,37854,37855,37858,37859,37862,37863,37866,37867,19996],{},[548,37856,37857],{},"data-youtube-video"," wrapper 是 block 元素，預設佔滿整行，選取時的 ",[548,37860,37861],{},".ProseMirror-selectednode"," 外框會比 iframe 寬。要讓外框貼齊 iframe，給 wrapper 套 ",[548,37864,37865],{},"width: fit-content","（如 ",[548,37868,37869],{},"[&_[data-youtube-video]]:w-fit",[705,37871,37872,37873,37876,37877,37879],{},"不過 YouTube iframe 會攔截滑鼠事件（點擊會進到 YouTube 而不是選取節點），縮成 ",[548,37874,37875],{},"w-fit"," 後 iframe 旁已無可點區域，無法用點擊選取或拖曳。要選取、拖曳影片節點，請一併啟用 ",[697,37878,360],{"href":439},"，以把手拖曳（tiptap 官方對互動式 node 的建議做法）。",[536,37881,32587],{"id":32586},[705,37883,37884,37885,37888,37889,2466],{},"寬高、隱私模式（",[548,37886,37887],{},"nocookie","）等由 consumer 自行 ",[548,37890,37891],{},"Youtube.configure({...})",[539,37893,37895],{"className":726,"code":37894,"language":728,"meta":546,"style":546},"\u003Cscript setup lang=\"ts\">\nimport { Youtube } from '@tiptap\u002Fextension-youtube'\n\nconst customYoutube = Youtube.configure({ nocookie: true, width: 640, height: 360, controls: true })\n\u003C\u002Fscript>\n\n\u003Ctemplate>\n  \u003Cadmin-rich-editor v-model=\"value\" :extensions=\"[customYoutube]\" \u002F>\n\u003C\u002Ftemplate>\n",[548,37896,37897,37917,37935,37939,37993,38001,38005,38013,38042],{"__ignoreMap":546},[551,37898,37899,37901,37903,37905,37907,37909,37911,37913,37915],{"class":553,"line":554},[551,37900,735],{"class":587},[551,37902,3276],{"class":738},[551,37904,3279],{"class":753},[551,37906,3282],{"class":753},[551,37908,757],{"class":587},[551,37910,760],{"class":587},[551,37912,576],{"class":561},[551,37914,760],{"class":587},[551,37916,742],{"class":587},[551,37918,37919,37921,37923,37925,37927,37929,37931,37933],{"class":553,"line":591},[551,37920,584],{"class":583},[551,37922,1273],{"class":587},[551,37924,37328],{"class":594},[551,37926,1279],{"class":587},[551,37928,671],{"class":583},[551,37930,674],{"class":587},[551,37932,37337],{"class":561},[551,37934,680],{"class":587},[551,37936,37937],{"class":553,"line":601},[551,37938,1293],{"emptyLinePlaceholder":526},[551,37940,37941,37943,37946,37948,37950,37952,37954,37956,37958,37960,37962,37964,37966,37968,37970,37972,37974,37976,37978,37980,37982,37985,37987,37989,37991],{"class":553,"line":609},[551,37942,3321],{"class":753},[551,37944,37945],{"class":594}," customYoutube ",[551,37947,757],{"class":587},[551,37949,37328],{"class":594},[551,37951,1206],{"class":587},[551,37953,32347],{"class":1154},[551,37955,1158],{"class":594},[551,37957,4243],{"class":587},[551,37959,37594],{"class":738},[551,37961,1169],{"class":587},[551,37963,28714],{"class":17983},[551,37965,3348],{"class":587},[551,37967,37603],{"class":738},[551,37969,1169],{"class":587},[551,37971,37608],{"class":17275},[551,37973,3348],{"class":587},[551,37975,37613],{"class":738},[551,37977,1169],{"class":587},[551,37979,37618],{"class":17275},[551,37981,3348],{"class":587},[551,37983,37984],{"class":738}," controls",[551,37986,1169],{"class":587},[551,37988,28714],{"class":17983},[551,37990,1279],{"class":587},[551,37992,1222],{"class":594},[551,37994,37995,37997,37999],{"class":553,"line":617},[551,37996,784],{"class":587},[551,37998,3276],{"class":738},[551,38000,742],{"class":587},[551,38002,38003],{"class":553,"line":625},[551,38004,1293],{"emptyLinePlaceholder":526},[551,38006,38007,38009,38011],{"class":553,"line":633},[551,38008,735],{"class":587},[551,38010,739],{"class":738},[551,38012,742],{"class":587},[551,38014,38015,38017,38019,38021,38023,38025,38027,38029,38031,38033,38035,38038,38040],{"class":553,"line":641},[551,38016,747],{"class":587},[551,38018,28243],{"class":738},[551,38020,2867],{"class":753},[551,38022,757],{"class":587},[551,38024,760],{"class":587},[551,38026,2720],{"class":561},[551,38028,760],{"class":587},[551,38030,30679],{"class":753},[551,38032,757],{"class":587},[551,38034,760],{"class":587},[551,38036,38037],{"class":561},"[customYoutube]",[551,38039,760],{"class":587},[551,38041,1449],{"class":587},[551,38043,38044,38046,38048],{"class":553,"line":649},[551,38045,784],{"class":587},[551,38047,739],{"class":738},[551,38049,742],{"class":587},[536,38051,38053],{"id":38052},"src-來源","src 來源",[705,38055,38056,37166,38058,37169,38060,38062,38063,37175,38065,38067],{},[548,38057,37364],{},[548,38059,1409],{},[548,38061,18175],{}," 要一個 URL。進階選片 UI 請自行以 ",[548,38064,28539],{},[548,38066,15779],{}," handler。",[536,38069,720],{"id":719},[5754,38071,38072,38080],{},[5757,38073,38074],{},[5760,38075,38076,38078],{},[5763,38077,37230],{},[5763,38079,19559],{},[5770,38081,38082],{},[5760,38083,38084,38089],{},[5775,38085,38086],{},[548,38087,38088],{},"createYoutubeHandler()",[5775,38090,37256,38091,37260,38093,7623,38095,37266],{},[548,38092,37259],{},[548,38094,37263],{},[548,38096,15779],{},[705,38098,38099,32744,38101,713],{},[548,38100,37337],{},[697,38102,38105],{"href":38103,"rel":38104},"https:\u002F\u002Ftiptap.dev\u002Fdocs\u002Feditor\u002Fextensions\u002Fnodes\u002Fyoutube",[701],"tiptap youtube 官方文件",[990,38107,38108],{},"html pre.shiki code .sBMFI, html code.shiki .sBMFI{--shiki-light:#E2931D;--shiki-default:#FFCB6B;--shiki-dark:#FFCB6B}html pre.shiki code .sfazB, html code.shiki .sfazB{--shiki-light:#91B859;--shiki-default:#C3E88D;--shiki-dark:#C3E88D}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 pre.shiki code .s7zQu, html code.shiki .s7zQu{--shiki-light:#39ADB5;--shiki-light-font-style:italic;--shiki-default:#89DDFF;--shiki-default-font-style:italic;--shiki-dark:#89DDFF;--shiki-dark-font-style:italic}html pre.shiki code .sMK4o, html code.shiki .sMK4o{--shiki-light:#39ADB5;--shiki-default:#89DDFF;--shiki-dark:#89DDFF}html pre.shiki code .sTEyZ, html code.shiki .sTEyZ{--shiki-light:#90A4AE;--shiki-default:#EEFFFF;--shiki-dark:#BABED8}html pre.shiki code .swJcz, html code.shiki .swJcz{--shiki-light:#E53935;--shiki-default:#F07178;--shiki-dark:#F07178}html pre.shiki code .spNyl, html code.shiki .spNyl{--shiki-light:#9C3EDA;--shiki-default:#C792EA;--shiki-dark:#C792EA}html pre.shiki code .s2Zo4, html code.shiki .s2Zo4{--shiki-light:#6182B8;--shiki-default:#82AAFF;--shiki-dark:#82AAFF}html pre.shiki code .sfNiH, html code.shiki .sfNiH{--shiki-light:#FF5370;--shiki-default:#FF9CAC;--shiki-dark:#FF9CAC}html pre.shiki code .sbssI, html code.shiki .sbssI{--shiki-light:#F76D47;--shiki-default:#F78C6C;--shiki-dark:#F78C6C}",{"title":546,"searchDepth":601,"depth":601,"links":38110},[38111,38112,38113,38114,38115],{"id":507,"depth":591,"text":507},{"id":683,"depth":591,"text":683},{"id":32586,"depth":591,"text":32587},{"id":38052,"depth":591,"text":38053},{"id":719,"depth":591,"text":720},"嵌入 YouTube 影片；以程式插入。",{"doc":38103},{},{"title":454,"description":38116},"WdvoQb7XiFGGD_Bb9RZbaIsjFRcYJ56zKZo6Dvvfdc0",{"id":38122,"title":458,"body":38123,"component":526,"description":39023,"extension":1015,"links":39024,"meta":39026,"navigation":526,"new":18,"path":459,"seo":39027,"stem":460,"wrapperKind":19,"__hash__":39028},"docs\u002Fdocs\u002Feditor\u002F4.addons\u002F19.font-size.md",{"type":533,"value":38124,"toc":39012},[38125,38127,38154,38203,38220,38222,38242,38245,38687,38691,38731,38734,38910,38960,38962,38964,38967,38969,39006,39008,39010],[536,38126,507],{"id":507},[539,38128,38130],{"className":541,"code":38129,"filename":543,"language":544,"meta":545,"style":546},"pnpm dlx shadcn-vue add @admin\u002Feditor-font-size\npnpm add @tiptap\u002Fextension-text-style\n",[548,38131,38132,38145],{"__ignoreMap":546},[551,38133,38134,38136,38138,38140,38142],{"class":553,"line":554},[551,38135,558],{"class":557},[551,38137,562],{"class":561},[551,38139,565],{"class":561},[551,38141,568],{"class":561},[551,38143,38144],{"class":561}," @admin\u002Feditor-font-size\n",[551,38146,38147,38149,38151],{"class":553,"line":591},[551,38148,558],{"class":557},[551,38150,568],{"class":561},[551,38152,38153],{"class":561}," @tiptap\u002Fextension-text-style\n",[539,38155,38157],{"className":574,"code":38156,"language":576,"meta":546,"style":546},"import { FontSize, TextStyle } from '@tiptap\u002Fextension-text-style'\nimport { AdminEditorFontSize } from '@\u002Fregistry\u002Fadmin\u002Fui\u002Feditor-font-size'\n",[548,38158,38159,38183],{"__ignoreMap":546},[551,38160,38161,38163,38165,38168,38170,38173,38175,38177,38179,38181],{"class":553,"line":554},[551,38162,584],{"class":583},[551,38164,1273],{"class":587},[551,38166,38167],{"class":594}," FontSize",[551,38169,3348],{"class":587},[551,38171,38172],{"class":594}," TextStyle",[551,38174,1279],{"class":587},[551,38176,671],{"class":583},[551,38178,674],{"class":587},[551,38180,22915],{"class":561},[551,38182,680],{"class":587},[551,38184,38185,38187,38189,38192,38194,38196,38198,38201],{"class":553,"line":591},[551,38186,584],{"class":583},[551,38188,1273],{"class":587},[551,38190,38191],{"class":594}," AdminEditorFontSize",[551,38193,1279],{"class":587},[551,38195,671],{"class":583},[551,38197,674],{"class":587},[551,38199,38200],{"class":561},"@\u002Fregistry\u002Fadmin\u002Fui\u002Feditor-font-size",[551,38202,680],{"class":587},[705,38204,38205,38206,38209,38210,38212,38213,2470,38215,8904,38217,38219],{},"含 toolbar 字級控制（",[548,38207,38208],{},"−"," stepper、數值下拉、",[548,38211,21139],{}," stepper，共用同一狀態）；字級能力來自 tiptap ",[548,38214,372],{},[548,38216,293],{},[548,38218,22915],{},"），需自行注入（見下方用法）。",[536,38221,683],{"id":683},[705,38223,38224,38225,35310,38227,38230,38231,38234,38235,38238,38239,713],{},"加入字級需三個步驟：在 ",[548,38226,28043],{},[548,38228,38229],{},"[TextStyle, FontSize]","、在 toolbar items 加入一個指定 ",[548,38232,38233],{},"slot: 'fontSize'"," 的項目、在 toolbar 的 ",[548,38236,38237],{},"#fontSize"," slot 放入 ",[548,38240,38241],{},"\u003CAdminEditorFontSize>",[685,38243],{"name":38244},"EditorFontSizeDemo",[539,38246,38248],{"className":726,"code":38247,"language":728,"meta":546,"style":546},"\u003Cscript setup lang=\"ts\">\nimport type { EditorToolbarItem } from '@\u002Fregistry\u002Fadmin\u002Fui\u002Feditor-toolbar'\nimport { IconTextResize } from '@tabler\u002Ficons-vue'\nimport { FontSize, TextStyle } from '@tiptap\u002Fextension-text-style'\nimport { ref } from 'vue'\nimport { AdminEditorFontSize } from '@\u002Fregistry\u002Fadmin\u002Fui\u002Feditor-font-size'\nimport { AdminEditorToolbar, defaultEditorItems } from '@\u002Fregistry\u002Fadmin\u002Fui\u002Feditor-toolbar'\nimport { AdminRichEditor } from '@\u002Fregistry\u002Fadmin\u002Fui\u002Frich-editor'\n\nconst value = ref('\u003Cp>內容\u003C\u002Fp>')\n\u002F\u002F 自行注入官方 extension（FontSize 依賴 TextStyle）\nconst extensions = [TextStyle, FontSize]\n\u002F\u002F 字級是 kindless slot item：由具名 slot 渲染，不綁 handler\nconst items: EditorToolbarItem[][] = [\n  ...defaultEditorItems,\n  [{ slot: 'fontSize', icon: IconTextResize, label: '字級', tooltip: { text: '字級' } }]\n]\n\u003C\u002Fscript>\n\n\u003Ctemplate>\n  \u003Cadmin-rich-editor v-slot=\"{ editor }\" v-model=\"value\" :extensions=\"extensions\">\n    \u003Cadmin-editor-toolbar :items=\"items\">\n      \u003Ctemplate #fontSize>\n        \u003Cadmin-editor-font-size :editor=\"editor\" \u002F>\n      \u003C\u002Ftemplate>\n    \u003C\u002Fadmin-editor-toolbar>\n  \u003C\u002Fadmin-rich-editor>\n\u003C\u002Ftemplate>\n",[548,38249,38250,38270,38290,38309,38331,38349,38367,38389,38407,38411,38432,38437,38453,38458,38474,38482,38544,38548,38556,38560,38568,38606,38624,38636,38655,38663,38671,38679],{"__ignoreMap":546},[551,38251,38252,38254,38256,38258,38260,38262,38264,38266,38268],{"class":553,"line":554},[551,38253,735],{"class":587},[551,38255,3276],{"class":738},[551,38257,3279],{"class":753},[551,38259,3282],{"class":753},[551,38261,757],{"class":587},[551,38263,760],{"class":587},[551,38265,576],{"class":561},[551,38267,760],{"class":587},[551,38269,742],{"class":587},[551,38271,38272,38274,38276,38278,38280,38282,38284,38286,38288],{"class":553,"line":591},[551,38273,584],{"class":583},[551,38275,3137],{"class":583},[551,38277,1273],{"class":587},[551,38279,28622],{"class":594},[551,38281,1279],{"class":587},[551,38283,671],{"class":583},[551,38285,674],{"class":587},[551,38287,28108],{"class":561},[551,38289,680],{"class":587},[551,38291,38292,38294,38296,38299,38301,38303,38305,38307],{"class":553,"line":601},[551,38293,584],{"class":583},[551,38295,1273],{"class":587},[551,38297,38298],{"class":594}," IconTextResize",[551,38300,1279],{"class":587},[551,38302,671],{"class":583},[551,38304,674],{"class":587},[551,38306,17314],{"class":561},[551,38308,680],{"class":587},[551,38310,38311,38313,38315,38317,38319,38321,38323,38325,38327,38329],{"class":553,"line":609},[551,38312,584],{"class":583},[551,38314,1273],{"class":587},[551,38316,38167],{"class":594},[551,38318,3348],{"class":587},[551,38320,38172],{"class":594},[551,38322,1279],{"class":587},[551,38324,671],{"class":583},[551,38326,674],{"class":587},[551,38328,22915],{"class":561},[551,38330,680],{"class":587},[551,38332,38333,38335,38337,38339,38341,38343,38345,38347],{"class":553,"line":617},[551,38334,584],{"class":583},[551,38336,1273],{"class":587},[551,38338,3427],{"class":594},[551,38340,1279],{"class":587},[551,38342,671],{"class":583},[551,38344,674],{"class":587},[551,38346,728],{"class":561},[551,38348,680],{"class":587},[551,38350,38351,38353,38355,38357,38359,38361,38363,38365],{"class":553,"line":625},[551,38352,584],{"class":583},[551,38354,1273],{"class":587},[551,38356,38191],{"class":594},[551,38358,1279],{"class":587},[551,38360,671],{"class":583},[551,38362,674],{"class":587},[551,38364,38200],{"class":561},[551,38366,680],{"class":587},[551,38368,38369,38371,38373,38375,38377,38379,38381,38383,38385,38387],{"class":553,"line":633},[551,38370,584],{"class":583},[551,38372,1273],{"class":587},[551,38374,28094],{"class":594},[551,38376,3348],{"class":587},[551,38378,28099],{"class":594},[551,38380,1279],{"class":587},[551,38382,671],{"class":583},[551,38384,674],{"class":587},[551,38386,28108],{"class":561},[551,38388,680],{"class":587},[551,38390,38391,38393,38395,38397,38399,38401,38403,38405],{"class":553,"line":641},[551,38392,584],{"class":583},[551,38394,1273],{"class":587},[551,38396,28119],{"class":594},[551,38398,1279],{"class":587},[551,38400,671],{"class":583},[551,38402,674],{"class":587},[551,38404,28128],{"class":561},[551,38406,680],{"class":587},[551,38408,38409],{"class":553,"line":649},[551,38410,1293],{"emptyLinePlaceholder":526},[551,38412,38413,38415,38417,38419,38421,38423,38425,38428,38430],{"class":553,"line":657},[551,38414,3321],{"class":753},[551,38416,3422],{"class":594},[551,38418,757],{"class":587},[551,38420,3427],{"class":1154},[551,38422,1158],{"class":594},[551,38424,1214],{"class":587},[551,38426,38427],{"class":561},"\u003Cp>內容\u003C\u002Fp>",[551,38429,1214],{"class":587},[551,38431,1222],{"class":594},[551,38433,38434],{"class":553,"line":665},[551,38435,38436],{"class":4831},"\u002F\u002F 自行注入官方 extension（FontSize 依賴 TextStyle）\n",[551,38438,38439,38441,38443,38445,38448,38450],{"class":553,"line":901},[551,38440,3321],{"class":753},[551,38442,32337],{"class":594},[551,38444,757],{"class":587},[551,38446,38447],{"class":594}," [TextStyle",[551,38449,3348],{"class":587},[551,38451,38452],{"class":594}," FontSize]\n",[551,38454,38455],{"class":553,"line":910},[551,38456,38457],{"class":4831},"\u002F\u002F 字級是 kindless slot item：由具名 slot 渲染，不綁 handler\n",[551,38459,38460,38462,38464,38466,38468,38470,38472],{"class":553,"line":920},[551,38461,3321],{"class":753},[551,38463,32383],{"class":594},[551,38465,1169],{"class":587},[551,38467,28622],{"class":557},[551,38469,32390],{"class":594},[551,38471,757],{"class":587},[551,38473,1315],{"class":594},[551,38475,38476,38478,38480],{"class":553,"line":930},[551,38477,28832],{"class":587},[551,38479,28232],{"class":594},[551,38481,598],{"class":587},[551,38483,38484,38486,38488,38491,38493,38495,38498,38500,38502,38504,38506,38508,38510,38512,38514,38516,38518,38520,38522,38524,38526,38528,38530,38532,38534,38536,38538,38540,38542],{"class":553,"line":3536},[551,38485,28841],{"class":594},[551,38487,4243],{"class":587},[551,38489,38490],{"class":738}," slot",[551,38492,1169],{"class":587},[551,38494,674],{"class":587},[551,38496,38497],{"class":561},"fontSize",[551,38499,1214],{"class":587},[551,38501,3348],{"class":587},[551,38503,32423],{"class":738},[551,38505,1169],{"class":587},[551,38507,38298],{"class":594},[551,38509,3348],{"class":587},[551,38511,28860],{"class":738},[551,38513,1169],{"class":587},[551,38515,674],{"class":587},[551,38517,19232],{"class":561},[551,38519,1214],{"class":587},[551,38521,3348],{"class":587},[551,38523,28874],{"class":738},[551,38525,1169],{"class":587},[551,38527,1273],{"class":587},[551,38529,28881],{"class":738},[551,38531,1169],{"class":587},[551,38533,674],{"class":587},[551,38535,19232],{"class":561},[551,38537,1214],{"class":587},[551,38539,1279],{"class":587},[551,38541,1279],{"class":587},[551,38543,9080],{"class":594},[551,38545,38546],{"class":553,"line":4422},[551,38547,9080],{"class":594},[551,38549,38550,38552,38554],{"class":553,"line":6194},[551,38551,784],{"class":587},[551,38553,3276],{"class":738},[551,38555,742],{"class":587},[551,38557,38558],{"class":553,"line":6204},[551,38559,1293],{"emptyLinePlaceholder":526},[551,38561,38562,38564,38566],{"class":553,"line":6223},[551,38563,735],{"class":587},[551,38565,739],{"class":738},[551,38567,742],{"class":587},[551,38569,38570,38572,38574,38576,38578,38580,38582,38584,38586,38588,38590,38592,38594,38596,38598,38600,38602,38604],{"class":553,"line":6233},[551,38571,747],{"class":587},[551,38573,28243],{"class":738},[551,38575,3595],{"class":753},[551,38577,757],{"class":587},[551,38579,760],{"class":587},[551,38581,30664],{"class":561},[551,38583,760],{"class":587},[551,38585,2867],{"class":753},[551,38587,757],{"class":587},[551,38589,760],{"class":587},[551,38591,2720],{"class":561},[551,38593,760],{"class":587},[551,38595,30679],{"class":753},[551,38597,757],{"class":587},[551,38599,760],{"class":587},[551,38601,18579],{"class":561},[551,38603,760],{"class":587},[551,38605,742],{"class":587},[551,38607,38608,38610,38612,38614,38616,38618,38620,38622],{"class":553,"line":6242},[551,38609,772],{"class":587},[551,38611,28208],{"class":738},[551,38613,15260],{"class":753},[551,38615,757],{"class":587},[551,38617,760],{"class":587},[551,38619,7361],{"class":561},[551,38621,760],{"class":587},[551,38623,742],{"class":587},[551,38625,38626,38628,38630,38632,38634],{"class":553,"line":6251},[551,38627,802],{"class":587},[551,38629,739],{"class":738},[551,38631,8713],{"class":587},[551,38633,38497],{"class":753},[551,38635,742],{"class":587},[551,38637,38638,38640,38643,38645,38647,38649,38651,38653],{"class":553,"line":524},[551,38639,812],{"class":587},[551,38641,38642],{"class":738},"admin-editor-font-size",[551,38644,28211],{"class":753},[551,38646,757],{"class":587},[551,38648,760],{"class":587},[551,38650,18395],{"class":561},[551,38652,760],{"class":587},[551,38654,1449],{"class":587},[551,38656,38657,38659,38661],{"class":553,"line":6864},[551,38658,849],{"class":587},[551,38660,739],{"class":738},[551,38662,742],{"class":587},[551,38664,38665,38667,38669],{"class":553,"line":6873},[551,38666,913],{"class":587},[551,38668,28208],{"class":738},[551,38670,742],{"class":587},[551,38672,38673,38675,38677],{"class":553,"line":6894},[551,38674,923],{"class":587},[551,38676,28243],{"class":738},[551,38678,742],{"class":587},[551,38680,38681,38683,38685],{"class":553,"line":6903},[551,38682,784],{"class":587},[551,38684,739],{"class":738},[551,38686,742],{"class":587},[692,38688,38690],{"id":38689},"無障礙改用-rem-級距","無障礙：改用 rem 級距",[705,38692,38693,38694,38697,38698,38700,38701,38704,38705,38708,38709,38712,38713,38715,38716,38718,38719,38722,38723,38726,38727,38730],{},"預設級距以 ",[548,38695,38696],{},"px"," 寫入 inline ",[548,38699,23007],{},"，不會隨使用者瀏覽器的根字級設定縮放。要符合無障礙需求，改透過 ",[548,38702,38703],{},":sizes"," 傳入以 ",[548,38706,38707],{},"rem"," 為值的級距：",[548,38710,38711],{},"label"," 仍是給人看的數字、",[548,38714,2720],{}," 寫 ",[548,38717,38707],{},"，套用後即隨根字級縮放。同時以 ",[548,38720,38721],{},"base-value"," 指定未設定字級時的起算基準（預設 ",[548,38724,38725],{},"'16px'","，rem 級距要改傳如 ",[548,38728,38729],{},"'1rem'","，否則基準查不到會 fallback 至級距中點）。",[685,38732],{"name":38733},"EditorFontSizeRemDemo",[539,38735,38737],{"className":574,"code":38736,"language":576,"meta":546,"style":546},"import type { FontSizeOption } from '@\u002Fregistry\u002Fadmin\u002Fui\u002Feditor-font-size'\n\n\u002F\u002F label 是給人看的數字（以 16px 根字級換算），value 寫 rem\nconst remSizes: FontSizeOption[] = [\n  { label: '14', value: '0.875rem' },\n  { label: '16', value: '1rem' },\n  { label: '18', value: '1.125rem' },\n  { label: '20', value: '1.25rem' }\n]\n",[548,38738,38739,38760,38764,38769,38786,38816,38846,38876,38906],{"__ignoreMap":546},[551,38740,38741,38743,38745,38747,38750,38752,38754,38756,38758],{"class":553,"line":554},[551,38742,584],{"class":583},[551,38744,3137],{"class":583},[551,38746,1273],{"class":587},[551,38748,38749],{"class":594}," FontSizeOption",[551,38751,1279],{"class":587},[551,38753,671],{"class":583},[551,38755,674],{"class":587},[551,38757,38200],{"class":561},[551,38759,680],{"class":587},[551,38761,38762],{"class":553,"line":591},[551,38763,1293],{"emptyLinePlaceholder":526},[551,38765,38766],{"class":553,"line":601},[551,38767,38768],{"class":4831},"\u002F\u002F label 是給人看的數字（以 16px 根字級換算），value 寫 rem\n",[551,38770,38771,38773,38776,38778,38780,38782,38784],{"class":553,"line":609},[551,38772,3321],{"class":753},[551,38774,38775],{"class":594}," remSizes",[551,38777,1169],{"class":587},[551,38779,38749],{"class":557},[551,38781,33316],{"class":594},[551,38783,757],{"class":587},[551,38785,1315],{"class":594},[551,38787,38788,38790,38792,38794,38796,38799,38801,38803,38805,38807,38809,38812,38814],{"class":553,"line":617},[551,38789,3333],{"class":587},[551,38791,28860],{"class":738},[551,38793,1169],{"class":587},[551,38795,674],{"class":587},[551,38797,38798],{"class":561},"14",[551,38800,1214],{"class":587},[551,38802,3348],{"class":587},[551,38804,3336],{"class":738},[551,38806,1169],{"class":587},[551,38808,674],{"class":587},[551,38810,38811],{"class":561},"0.875rem",[551,38813,1214],{"class":587},[551,38815,3363],{"class":587},[551,38817,38818,38820,38822,38824,38826,38829,38831,38833,38835,38837,38839,38842,38844],{"class":553,"line":625},[551,38819,3333],{"class":587},[551,38821,28860],{"class":738},[551,38823,1169],{"class":587},[551,38825,674],{"class":587},[551,38827,38828],{"class":561},"16",[551,38830,1214],{"class":587},[551,38832,3348],{"class":587},[551,38834,3336],{"class":738},[551,38836,1169],{"class":587},[551,38838,674],{"class":587},[551,38840,38841],{"class":561},"1rem",[551,38843,1214],{"class":587},[551,38845,3363],{"class":587},[551,38847,38848,38850,38852,38854,38856,38859,38861,38863,38865,38867,38869,38872,38874],{"class":553,"line":633},[551,38849,3333],{"class":587},[551,38851,28860],{"class":738},[551,38853,1169],{"class":587},[551,38855,674],{"class":587},[551,38857,38858],{"class":561},"18",[551,38860,1214],{"class":587},[551,38862,3348],{"class":587},[551,38864,3336],{"class":738},[551,38866,1169],{"class":587},[551,38868,674],{"class":587},[551,38870,38871],{"class":561},"1.125rem",[551,38873,1214],{"class":587},[551,38875,3363],{"class":587},[551,38877,38878,38880,38882,38884,38886,38889,38891,38893,38895,38897,38899,38902,38904],{"class":553,"line":641},[551,38879,3333],{"class":587},[551,38881,28860],{"class":738},[551,38883,1169],{"class":587},[551,38885,674],{"class":587},[551,38887,38888],{"class":561},"20",[551,38890,1214],{"class":587},[551,38892,3348],{"class":587},[551,38894,3336],{"class":738},[551,38896,1169],{"class":587},[551,38898,674],{"class":587},[551,38900,38901],{"class":561},"1.25rem",[551,38903,1214],{"class":587},[551,38905,18827],{"class":587},[551,38907,38908],{"class":553,"line":649},[551,38909,9080],{"class":594},[539,38911,38913],{"className":726,"code":38912,"language":728,"meta":546,"style":546},"\u003Cadmin-editor-font-size base-value=\"1rem\" :editor=\"editor\" :sizes=\"remSizes\" \u002F>\n",[548,38914,38915],{"__ignoreMap":546},[551,38916,38917,38919,38921,38924,38926,38928,38930,38932,38934,38936,38938,38940,38942,38944,38946,38949,38951,38953,38956,38958],{"class":553,"line":554},[551,38918,735],{"class":587},[551,38920,38642],{"class":738},[551,38922,38923],{"class":753}," base-value",[551,38925,757],{"class":587},[551,38927,760],{"class":587},[551,38929,38841],{"class":561},[551,38931,760],{"class":587},[551,38933,28402],{"class":587},[551,38935,18395],{"class":753},[551,38937,757],{"class":587},[551,38939,760],{"class":587},[551,38941,18395],{"class":594},[551,38943,760],{"class":587},[551,38945,28402],{"class":587},[551,38947,38948],{"class":753},"sizes",[551,38950,757],{"class":587},[551,38952,760],{"class":587},[551,38954,38955],{"class":594},"remSizes",[551,38957,760],{"class":587},[551,38959,1449],{"class":587},[536,38961,720],{"id":719},[692,38963,38642],{"id":38642},[940,38965],{"component":38966},"AdminEditorFontSize",[536,38968,1556],{"id":1556},[1558,38970,38971,38980,38988,38997],{},[1561,38972,38973,2466,38975,1613,38977,38979],{},[1135,38974,32758],{},[548,38976,372],{},[548,38978,293],{}," 無法於編輯器建立後補上，未注入時字級控制不會生效。",[1561,38981,38982,2466,38985,38987],{},[1135,38983,38984],{},"級距需由小到大",[548,38986,38948],{}," 陣列需依值遞增排列，stepper 的上／下一級與到頂到底停用皆依此順序判定。",[1561,38989,38990,38993,38994,38996],{},[1135,38991,38992],{},"未設定字級時顯示「預設」","：游標所在文字未套字級時，下拉 trigger 顯示「預設」；選單頂端的「預設」項會移除 inline ",[548,38995,23007],{},"，回退 CSS 繼承。",[1561,38998,38999,39002,39003,39005],{},[1135,39000,39001],{},"px vs rem","：預設 px 不隨瀏覽器字級縮放；需 a11y 請改用 rem 級距並搭配 ",[548,39004,38721],{},"（見上方）。",[536,39007,985],{"id":985},[987,39009],{"component":38966},[990,39011,10241],{},{"title":546,"searchDepth":601,"depth":601,"links":39013},[39014,39015,39018,39021,39022],{"id":507,"depth":591,"text":507},{"id":683,"depth":591,"text":683,"children":39016},[39017],{"id":38689,"depth":601,"text":38690},{"id":719,"depth":591,"text":720,"children":39019},[39020],{"id":38642,"depth":601,"text":38642},{"id":1556,"depth":591,"text":1556},{"id":985,"depth":591,"text":985},"toolbar 字級控制：−／下拉／+。",{"doc":39025},"https:\u002F\u002Ftiptap.dev\u002Fdocs\u002Feditor\u002Fextensions\u002Ffunctionality\u002Ffontsize",{},{"title":458,"description":39023},"mcZ1Jazw2WfNw6gJ8UeSu5xb0mzxFN5spEyhN1K99v4",{"id":39030,"title":462,"body":39031,"component":18,"description":39490,"extension":1015,"links":39491,"meta":39492,"navigation":526,"new":18,"path":463,"seo":39493,"stem":464,"wrapperKind":19,"__hash__":39494},"docs\u002Fdocs\u002Feditor\u002F4.addons\u002F2.markdown.md",{"type":533,"value":39032,"toc":39483},[39033,39035,39049,39063,39087,39089,39092,39108,39252,39255,39269,39271,39281,39442,39444,39453,39455,39481],[536,39034,507],{"id":507},[705,39036,39037,39038,2477,39041,2470,39043,39045,39046,39048],{},"markdown 模式來自 tiptap ",[548,39039,39040],{},"@tiptap\u002Fmarkdown",[548,39042,28243],{},[548,39044,29793],{}," 不自動注入，需自行安裝並經 ",[548,39047,28043],{}," 傳入：",[539,39050,39052],{"className":541,"code":39051,"filename":543,"language":544,"meta":545,"style":546},"pnpm add @tiptap\u002Fmarkdown\n",[548,39053,39054],{"__ignoreMap":546},[551,39055,39056,39058,39060],{"class":553,"line":554},[551,39057,558],{"class":557},[551,39059,568],{"class":561},[551,39061,39062],{"class":561}," @tiptap\u002Fmarkdown\n",[539,39064,39066],{"className":574,"code":39065,"language":576,"meta":546,"style":546},"import { Markdown } from '@tiptap\u002Fmarkdown'\n",[548,39067,39068],{"__ignoreMap":546},[551,39069,39070,39072,39074,39077,39079,39081,39083,39085],{"class":553,"line":554},[551,39071,584],{"class":583},[551,39073,1273],{"class":587},[551,39075,39076],{"class":594}," Markdown",[551,39078,1279],{"class":587},[551,39080,671],{"class":583},[551,39082,674],{"class":587},[551,39084,39040],{"class":561},[551,39086,680],{"class":587},[536,39088,683],{"id":683},[685,39090],{"name":39091},"EditorMarkdownDemo",[705,39093,33664,39094,18488,39096,39098,39099,39101,39102,39105,39106,2466],{},[548,39095,29649],{},[548,39097,29908],{},"）加上 ",[548,39100,36644],{},"、用 markdown 字串綁 v-model，並把 ",[548,39103,39104],{},"Markdown.configure({})"," 傳進 ",[548,39107,28043],{},[539,39109,39111],{"className":726,"code":39110,"language":728,"meta":546,"style":546},"\u003Cscript setup lang=\"ts\">\nimport { Markdown } from '@tiptap\u002Fmarkdown'\n\nconst md = ref('# 標題\\n\\n內文')\n\u003C\u002Fscript>\n\n\u003Ctemplate>\n  \u003Cadmin-rich-editor v-model=\"md\" content-type=\"markdown\" :extensions=\"[Markdown.configure({})]\" \u002F>\n\u003C\u002Ftemplate>\n",[548,39112,39113,39133,39151,39155,39183,39191,39195,39203,39244],{"__ignoreMap":546},[551,39114,39115,39117,39119,39121,39123,39125,39127,39129,39131],{"class":553,"line":554},[551,39116,735],{"class":587},[551,39118,3276],{"class":738},[551,39120,3279],{"class":753},[551,39122,3282],{"class":753},[551,39124,757],{"class":587},[551,39126,760],{"class":587},[551,39128,576],{"class":561},[551,39130,760],{"class":587},[551,39132,742],{"class":587},[551,39134,39135,39137,39139,39141,39143,39145,39147,39149],{"class":553,"line":591},[551,39136,584],{"class":583},[551,39138,1273],{"class":587},[551,39140,39076],{"class":594},[551,39142,1279],{"class":587},[551,39144,671],{"class":583},[551,39146,674],{"class":587},[551,39148,39040],{"class":561},[551,39150,680],{"class":587},[551,39152,39153],{"class":553,"line":601},[551,39154,1293],{"emptyLinePlaceholder":526},[551,39156,39157,39159,39162,39164,39166,39168,39170,39173,39176,39179,39181],{"class":553,"line":609},[551,39158,3321],{"class":753},[551,39160,39161],{"class":594}," md ",[551,39163,757],{"class":587},[551,39165,3427],{"class":1154},[551,39167,1158],{"class":594},[551,39169,1214],{"class":587},[551,39171,39172],{"class":561},"# 標題",[551,39174,39175],{"class":594},"\\n\\n",[551,39177,39178],{"class":561},"內文",[551,39180,1214],{"class":587},[551,39182,1222],{"class":594},[551,39184,39185,39187,39189],{"class":553,"line":617},[551,39186,784],{"class":587},[551,39188,3276],{"class":738},[551,39190,742],{"class":587},[551,39192,39193],{"class":553,"line":625},[551,39194,1293],{"emptyLinePlaceholder":526},[551,39196,39197,39199,39201],{"class":553,"line":633},[551,39198,735],{"class":587},[551,39200,739],{"class":738},[551,39202,742],{"class":587},[551,39204,39205,39207,39209,39211,39213,39215,39217,39219,39222,39224,39226,39229,39231,39233,39235,39237,39240,39242],{"class":553,"line":641},[551,39206,747],{"class":587},[551,39208,28243],{"class":738},[551,39210,2867],{"class":753},[551,39212,757],{"class":587},[551,39214,760],{"class":587},[551,39216,1015],{"class":561},[551,39218,760],{"class":587},[551,39220,39221],{"class":753}," content-type",[551,39223,757],{"class":587},[551,39225,760],{"class":587},[551,39227,39228],{"class":561},"markdown",[551,39230,760],{"class":587},[551,39232,30679],{"class":753},[551,39234,757],{"class":587},[551,39236,760],{"class":587},[551,39238,39239],{"class":561},"[Markdown.configure({})]",[551,39241,760],{"class":587},[551,39243,1449],{"class":587},[551,39245,39246,39248,39250],{"class":553,"line":649},[551,39247,784],{"class":587},[551,39249,739],{"class":738},[551,39251,742],{"class":587},[705,39253,39254],{},"注入後：",[1558,39256,39257,39263],{},[1561,39258,39259,39260],{},"v-model 輸出走 ",[548,39261,39262],{},"editor.getMarkdown()",[1561,39264,39265,39266],{},"v-model 寫入走 ",[548,39267,39268],{},"setContent(value, { contentType: 'markdown' })",[536,39270,32587],{"id":32586},[705,39272,39273,39274,39277,39278,39280],{},"關掉 markdown shortcuts（",[548,39275,39276],{},"# "," 自動轉 heading）或改 indentation，在 ",[548,39279,32347],{}," 帶選項即可：",[539,39282,39284],{"className":726,"code":39283,"language":728,"meta":546,"style":546},"\u003Cscript setup lang=\"ts\">\nimport { Markdown } from '@tiptap\u002Fmarkdown'\n\nconst customMarkdown = Markdown.configure({\n  \u002F\u002F markdownShortcuts: false, \u002F\u002F 關掉自動 shortcut\n  \u002F\u002F indentation: { style: 'tab' },\n})\n\u003C\u002Fscript>\n\n\u003Ctemplate>\n  \u003Cadmin-rich-editor\n    v-model=\"md\"\n    content-type=\"markdown\"\n    :extensions=\"[customMarkdown]\"\n  \u002F>\n\u003C\u002Ftemplate>\n",[548,39285,39286,39306,39324,39328,39347,39355,39360,39366,39374,39378,39386,39392,39404,39417,39430,39434],{"__ignoreMap":546},[551,39287,39288,39290,39292,39294,39296,39298,39300,39302,39304],{"class":553,"line":554},[551,39289,735],{"class":587},[551,39291,3276],{"class":738},[551,39293,3279],{"class":753},[551,39295,3282],{"class":753},[551,39297,757],{"class":587},[551,39299,760],{"class":587},[551,39301,576],{"class":561},[551,39303,760],{"class":587},[551,39305,742],{"class":587},[551,39307,39308,39310,39312,39314,39316,39318,39320,39322],{"class":553,"line":591},[551,39309,584],{"class":583},[551,39311,1273],{"class":587},[551,39313,39076],{"class":594},[551,39315,1279],{"class":587},[551,39317,671],{"class":583},[551,39319,674],{"class":587},[551,39321,39040],{"class":561},[551,39323,680],{"class":587},[551,39325,39326],{"class":553,"line":601},[551,39327,1293],{"emptyLinePlaceholder":526},[551,39329,39330,39332,39335,39337,39339,39341,39343,39345],{"class":553,"line":609},[551,39331,3321],{"class":753},[551,39333,39334],{"class":594}," customMarkdown ",[551,39336,757],{"class":587},[551,39338,39076],{"class":594},[551,39340,1206],{"class":587},[551,39342,32347],{"class":1154},[551,39344,1158],{"class":594},[551,39346,1161],{"class":587},[551,39348,39349,39352],{"class":553,"line":617},[551,39350,39351],{"class":4831},"  \u002F\u002F markdownShortcuts: false,",[551,39353,39354],{"class":4831}," \u002F\u002F 關掉自動 shortcut\n",[551,39356,39357],{"class":553,"line":625},[551,39358,39359],{"class":4831},"  \u002F\u002F indentation: { style: 'tab' },\n",[551,39361,39362,39364],{"class":553,"line":633},[551,39363,668],{"class":587},[551,39365,1222],{"class":594},[551,39367,39368,39370,39372],{"class":553,"line":641},[551,39369,784],{"class":587},[551,39371,3276],{"class":738},[551,39373,742],{"class":587},[551,39375,39376],{"class":553,"line":649},[551,39377,1293],{"emptyLinePlaceholder":526},[551,39379,39380,39382,39384],{"class":553,"line":657},[551,39381,735],{"class":587},[551,39383,739],{"class":738},[551,39385,742],{"class":587},[551,39387,39388,39390],{"class":553,"line":665},[551,39389,747],{"class":587},[551,39391,28157],{"class":738},[551,39393,39394,39396,39398,39400,39402],{"class":553,"line":901},[551,39395,4896],{"class":753},[551,39397,757],{"class":587},[551,39399,760],{"class":587},[551,39401,1015],{"class":561},[551,39403,4281],{"class":587},[551,39405,39406,39409,39411,39413,39415],{"class":553,"line":910},[551,39407,39408],{"class":753},"    content-type",[551,39410,757],{"class":587},[551,39412,760],{"class":587},[551,39414,39228],{"class":561},[551,39416,4281],{"class":587},[551,39418,39419,39421,39423,39425,39428],{"class":553,"line":920},[551,39420,28188],{"class":753},[551,39422,757],{"class":587},[551,39424,760],{"class":587},[551,39426,39427],{"class":561},"[customMarkdown]",[551,39429,4281],{"class":587},[551,39431,39432],{"class":553,"line":930},[551,39433,4951],{"class":587},[551,39435,39436,39438,39440],{"class":553,"line":3536},[551,39437,784],{"class":587},[551,39439,739],{"class":738},[551,39441,742],{"class":587},[536,39443,720],{"id":719},[705,39445,39446,32744,39448,713],{},[548,39447,39040],{},[697,39449,39452],{"href":39450,"rel":39451},"https:\u002F\u002Ftiptap.dev\u002Fdocs\u002Feditor\u002Fextensions\u002Ffunctionality\u002Fmarkdown",[701],"tiptap markdown 官方文件",[536,39454,1556],{"id":1556},[1558,39456,39457,39465],{},[1561,39458,39459,39461,39462,39464],{},[1135,39460,32758],{},"：未注入 ",[548,39463,27850],{}," 時，markdown 序列化會失效並退回純文字。",[1561,39466,39467,39470,39471,39474,39475,4159,39478,713],{},[1135,39468,39469],{},"來回轉換不保證字元級一致","：HTML 與 markdown 互轉時，多餘空白與換行可能被正規化、",[548,39472,39473],{},"\u003Cbr>"," 讀回可能變單一換行、inline mark 的嵌套順序（粗體與斜體）可能調整。段落、標題、列表、連結、強調等核心元素轉換後外觀一致；若內容需要逐字元穩定（例如要進版控 diff），改用 ",[548,39476,39477],{},"contentType=\"html\"",[548,39479,39480],{},"contentType=\"json\"",[990,39482,10241],{},{"title":546,"searchDepth":601,"depth":601,"links":39484},[39485,39486,39487,39488,39489],{"id":507,"depth":591,"text":507},{"id":683,"depth":591,"text":683},{"id":32586,"depth":591,"text":32587},{"id":719,"depth":591,"text":720},{"id":1556,"depth":591,"text":1556},"以 markdown 字串為內容；content-type=\"markdown\" 雙向轉換。",{"doc":39450},{},{"title":462,"description":39490},"jcDpOiJ1Gf57Mre3OX7C4HQtm6sGKQ8wi2tT4-_lkWo",{"id":39496,"title":466,"body":39497,"component":18,"description":40125,"extension":1015,"links":40126,"meta":40128,"navigation":526,"new":18,"path":467,"seo":40129,"stem":468,"wrapperKind":19,"__hash__":40130},"docs\u002Fdocs\u002Feditor\u002F4.addons\u002F20.code-block.md",{"type":533,"value":39498,"toc":40118},[39499,39501,39519,39549,39566,39568,39595,39598,39928,39930,39954,39957,39962,39997,39999,40037,40039,40081,40116],[536,39500,507],{"id":507},[539,39502,39504],{"className":541,"code":39503,"filename":543,"language":544,"meta":545,"style":546},"pnpm dlx shadcn-vue add @admin\u002Feditor-code-block\n",[548,39505,39506],{"__ignoreMap":546},[551,39507,39508,39510,39512,39514,39516],{"class":553,"line":554},[551,39509,558],{"class":557},[551,39511,562],{"class":561},[551,39513,565],{"class":561},[551,39515,568],{"class":561},[551,39517,39518],{"class":561}," @admin\u002Feditor-code-block\n",[539,39520,39522],{"className":574,"code":39521,"language":576,"meta":546,"style":546},"import { createCodeBlockExtension, editorCodeBlockClass } from '@\u002Fregistry\u002Fadmin\u002Fui\u002Feditor-code-block'\n",[548,39523,39524],{"__ignoreMap":546},[551,39525,39526,39528,39530,39533,39535,39538,39540,39542,39544,39547],{"class":553,"line":554},[551,39527,584],{"class":583},[551,39529,1273],{"class":587},[551,39531,39532],{"class":594}," createCodeBlockExtension",[551,39534,3348],{"class":587},[551,39536,39537],{"class":594}," editorCodeBlockClass",[551,39539,1279],{"class":587},[551,39541,671],{"class":583},[551,39543,674],{"class":587},[551,39545,39546],{"class":561},"@\u002Fregistry\u002Fadmin\u002Fui\u002Feditor-code-block",[551,39548,680],{"class":587},[705,39550,39551,39552,39554,39555,39558,39559,39562,39563,39565],{},"本包以 ",[548,39553,20640],{},"（highlight.js）取代 StarterKit 內建的 ",[548,39556,39557],{},"codeBlock","，註冊 ",[548,39560,39561],{},"lowlight\u002Fcommon"," 的常用語言，並在每個區塊右上角掛上可搜尋的語言下拉。",[548,39564,20644],{}," 隨安裝一併帶入，不用另裝。",[536,39567,683],{"id":683},[705,39569,39570,39571,39574,39575,39577,39578,39581,39582,39584,39585,39588,39589,7623,39592,713],{},"啟用要兩步：先 ",[548,39572,39573],{},":starter-kit=\"{ codeBlock: false }\""," 關掉內建 ",[548,39576,39557],{},"，再把 ",[548,39579,39580],{},"createCodeBlockExtension()"," 加進 ",[548,39583,28043],{},"。上色配色由 ",[548,39586,39587],{},"editorCodeBlockClass"," 提供，append 到 ",[548,39590,39591],{},":ui",[548,39593,39594],{},"base",[685,39596],{"name":39597},"EditorCodeBlockDemo",[539,39599,39601],{"className":726,"code":39600,"language":728,"meta":546,"style":546},"\u003Cscript setup lang=\"ts\">\nimport { ref } from 'vue'\nimport { cn } from '@\u002Flib\u002Futils'\nimport { baseProseClass } from '@\u002Fregistry\u002Fadmin\u002Fui\u002Feditor'\nimport { createCodeBlockExtension, editorCodeBlockClass } from '@\u002Fregistry\u002Fadmin\u002Fui\u002Feditor-code-block'\nimport { AdminEditorToolbar, defaultEditorItems } from '@\u002Fregistry\u002Fadmin\u002Fui\u002Feditor-toolbar'\nimport { AdminRichEditor, starterKitProseClass } from '@\u002Fregistry\u002Fadmin\u002Fui\u002Frich-editor'\n\nconst value = ref('\u003Cpre>\u003Ccode class=\"language-typescript\">const x = 1\u003C\u002Fcode>\u003C\u002Fpre>')\n\nconst extensions = [createCodeBlockExtension()]\n\u003C\u002Fscript>\n\n\u003Ctemplate>\n  \u003Cadmin-rich-editor\n    v-slot=\"{ editor, handlers }\"\n    v-model=\"value\"\n    :extensions=\"extensions\"\n    :starter-kit=\"{ codeBlock: false }\"\n    :ui=\"{ base: cn(baseProseClass, starterKitProseClass, editorCodeBlockClass) }\"\n  >\n    \u003Cadmin-editor-toolbar :editor :handlers=\"handlers\" :items=\"defaultEditorItems\" \u002F>\n  \u003C\u002Fadmin-rich-editor>\n\u003C\u002Ftemplate>\n",[548,39602,39603,39623,39641,39659,39677,39699,39721,39743,39747,39768,39772,39788,39796,39800,39808,39814,39826,39838,39850,39864,39878,39882,39912,39920],{"__ignoreMap":546},[551,39604,39605,39607,39609,39611,39613,39615,39617,39619,39621],{"class":553,"line":554},[551,39606,735],{"class":587},[551,39608,3276],{"class":738},[551,39610,3279],{"class":753},[551,39612,3282],{"class":753},[551,39614,757],{"class":587},[551,39616,760],{"class":587},[551,39618,576],{"class":561},[551,39620,760],{"class":587},[551,39622,742],{"class":587},[551,39624,39625,39627,39629,39631,39633,39635,39637,39639],{"class":553,"line":591},[551,39626,584],{"class":583},[551,39628,1273],{"class":587},[551,39630,3427],{"class":594},[551,39632,1279],{"class":587},[551,39634,671],{"class":583},[551,39636,674],{"class":587},[551,39638,728],{"class":561},[551,39640,680],{"class":587},[551,39642,39643,39645,39647,39649,39651,39653,39655,39657],{"class":553,"line":601},[551,39644,584],{"class":583},[551,39646,1273],{"class":587},[551,39648,18247],{"class":594},[551,39650,1279],{"class":587},[551,39652,671],{"class":583},[551,39654,674],{"class":587},[551,39656,18256],{"class":561},[551,39658,680],{"class":587},[551,39660,39661,39663,39665,39667,39669,39671,39673,39675],{"class":553,"line":609},[551,39662,584],{"class":583},[551,39664,1273],{"class":587},[551,39666,29987],{"class":594},[551,39668,1279],{"class":587},[551,39670,671],{"class":583},[551,39672,674],{"class":587},[551,39674,29755],{"class":561},[551,39676,680],{"class":587},[551,39678,39679,39681,39683,39685,39687,39689,39691,39693,39695,39697],{"class":553,"line":617},[551,39680,584],{"class":583},[551,39682,1273],{"class":587},[551,39684,39532],{"class":594},[551,39686,3348],{"class":587},[551,39688,39537],{"class":594},[551,39690,1279],{"class":587},[551,39692,671],{"class":583},[551,39694,674],{"class":587},[551,39696,39546],{"class":561},[551,39698,680],{"class":587},[551,39700,39701,39703,39705,39707,39709,39711,39713,39715,39717,39719],{"class":553,"line":625},[551,39702,584],{"class":583},[551,39704,1273],{"class":587},[551,39706,28094],{"class":594},[551,39708,3348],{"class":587},[551,39710,28099],{"class":594},[551,39712,1279],{"class":587},[551,39714,671],{"class":583},[551,39716,674],{"class":587},[551,39718,28108],{"class":561},[551,39720,680],{"class":587},[551,39722,39723,39725,39727,39729,39731,39733,39735,39737,39739,39741],{"class":553,"line":633},[551,39724,584],{"class":583},[551,39726,1273],{"class":587},[551,39728,28119],{"class":594},[551,39730,3348],{"class":587},[551,39732,30010],{"class":594},[551,39734,1279],{"class":587},[551,39736,671],{"class":583},[551,39738,674],{"class":587},[551,39740,28128],{"class":561},[551,39742,680],{"class":587},[551,39744,39745],{"class":553,"line":641},[551,39746,1293],{"emptyLinePlaceholder":526},[551,39748,39749,39751,39753,39755,39757,39759,39761,39764,39766],{"class":553,"line":649},[551,39750,3321],{"class":753},[551,39752,3422],{"class":594},[551,39754,757],{"class":587},[551,39756,3427],{"class":1154},[551,39758,1158],{"class":594},[551,39760,1214],{"class":587},[551,39762,39763],{"class":561},"\u003Cpre>\u003Ccode class=\"language-typescript\">const x = 1\u003C\u002Fcode>\u003C\u002Fpre>",[551,39765,1214],{"class":587},[551,39767,1222],{"class":594},[551,39769,39770],{"class":553,"line":657},[551,39771,1293],{"emptyLinePlaceholder":526},[551,39773,39774,39776,39778,39780,39782,39785],{"class":553,"line":665},[551,39775,3321],{"class":753},[551,39777,32337],{"class":594},[551,39779,757],{"class":587},[551,39781,9070],{"class":594},[551,39783,39784],{"class":1154},"createCodeBlockExtension",[551,39786,39787],{"class":594},"()]\n",[551,39789,39790,39792,39794],{"class":553,"line":901},[551,39791,784],{"class":587},[551,39793,3276],{"class":738},[551,39795,742],{"class":587},[551,39797,39798],{"class":553,"line":910},[551,39799,1293],{"emptyLinePlaceholder":526},[551,39801,39802,39804,39806],{"class":553,"line":920},[551,39803,735],{"class":587},[551,39805,739],{"class":738},[551,39807,742],{"class":587},[551,39809,39810,39812],{"class":553,"line":930},[551,39811,747],{"class":587},[551,39813,28157],{"class":738},[551,39815,39816,39818,39820,39822,39824],{"class":553,"line":3536},[551,39817,28162],{"class":753},[551,39819,757],{"class":587},[551,39821,760],{"class":587},[551,39823,28169],{"class":561},[551,39825,4281],{"class":587},[551,39827,39828,39830,39832,39834,39836],{"class":553,"line":4422},[551,39829,4896],{"class":753},[551,39831,757],{"class":587},[551,39833,760],{"class":587},[551,39835,2720],{"class":561},[551,39837,4281],{"class":587},[551,39839,39840,39842,39844,39846,39848],{"class":553,"line":6194},[551,39841,28188],{"class":753},[551,39843,757],{"class":587},[551,39845,760],{"class":587},[551,39847,18579],{"class":561},[551,39849,4281],{"class":587},[551,39851,39852,39855,39857,39859,39862],{"class":553,"line":6204},[551,39853,39854],{"class":753},"    :starter-kit",[551,39856,757],{"class":587},[551,39858,760],{"class":587},[551,39860,39861],{"class":561},"{ codeBlock: false }",[551,39863,4281],{"class":587},[551,39865,39866,39869,39871,39873,39876],{"class":553,"line":6223},[551,39867,39868],{"class":753},"    :ui",[551,39870,757],{"class":587},[551,39872,760],{"class":587},[551,39874,39875],{"class":561},"{ base: cn(baseProseClass, starterKitProseClass, editorCodeBlockClass) }",[551,39877,4281],{"class":587},[551,39879,39880],{"class":553,"line":6233},[551,39881,9184],{"class":587},[551,39883,39884,39886,39888,39890,39892,39894,39896,39898,39900,39902,39904,39906,39908,39910],{"class":553,"line":6242},[551,39885,772],{"class":587},[551,39887,28208],{"class":738},[551,39889,28211],{"class":753},[551,39891,28214],{"class":753},[551,39893,757],{"class":587},[551,39895,760],{"class":587},[551,39897,28221],{"class":561},[551,39899,760],{"class":587},[551,39901,15260],{"class":753},[551,39903,757],{"class":587},[551,39905,760],{"class":587},[551,39907,28232],{"class":561},[551,39909,760],{"class":587},[551,39911,1449],{"class":587},[551,39913,39914,39916,39918],{"class":553,"line":6251},[551,39915,923],{"class":587},[551,39917,28243],{"class":738},[551,39919,742],{"class":587},[551,39921,39922,39924,39926],{"class":553,"line":524},[551,39923,784],{"class":587},[551,39925,739],{"class":738},[551,39927,742],{"class":587},[705,39929,32563],{},[1558,39931,39932,39935,39938,39948],{},[1561,39933,39934],{},"toolbar 的程式碼區塊按鈕照舊建立／取消區塊",[1561,39936,39937],{},"區塊右上角的下拉切換語言，選好就上色；預設「純文字」不上色",[1561,39939,39940,39941,39944,39945],{},"存檔輸出標準的 ",[548,39942,39943],{},"\u003Cpre>\u003Ccode class=\"language-\u003Clang>\">","，純文字則是 ",[548,39946,39947],{},"language-plaintext",[1561,39949,39950,39951,39953],{},"唯讀（",[548,39952,30375],{},"）時下拉收起，程式碼仍照原語言上色",[536,39955,39956],{"id":39956},"預設語言",[705,39958,39959,39960,2466],{},"新建區塊預設為純文字，要換個預設語言就傳 ",[548,39961,20711],{},[539,39963,39965],{"className":574,"code":39964,"language":576,"meta":546,"style":546},"const extensions = [createCodeBlockExtension({ defaultLanguage: 'typescript' })]\n",[548,39966,39967],{"__ignoreMap":546},[551,39968,39969,39971,39973,39975,39977,39979,39981,39983,39985,39987,39989,39991,39993,39995],{"class":553,"line":554},[551,39970,3321],{"class":753},[551,39972,32337],{"class":594},[551,39974,757],{"class":587},[551,39976,9070],{"class":594},[551,39978,39784],{"class":1154},[551,39980,1158],{"class":594},[551,39982,4243],{"class":587},[551,39984,20914],{"class":738},[551,39986,1169],{"class":587},[551,39988,674],{"class":587},[551,39990,20921],{"class":561},[551,39992,1214],{"class":587},[551,39994,1279],{"class":587},[551,39996,32354],{"class":594},[536,39998,1556],{"id":1556},[1558,40000,40001,40015,40025],{},[1561,40002,40003,40008,40009,40011,40012,713],{},[1135,40004,40005,40006],{},"一定要先關掉內建 ",[548,40007,39557],{},"：本擴展跟 StarterKit 的 ",[548,40010,39557],{}," 同名，同時存在會讓 TipTap 拋 ",[548,40013,40014],{},"duplicate node: codeBlock",[1561,40016,40017,40020,40021,40024],{},[1135,40018,40019],{},"顏色不寫進內容","：語法色是顯示層的 decoration，存檔只留純碼與 ",[548,40022,40023],{},"language"," class，前台各自於 render 時再上色。",[1561,40026,40027,40030,40031,40033,40034,40036],{},[1135,40028,40029],{},"前台要一致上色","：把 ",[548,40032,39587],{}," 一起 append 到前台唯讀 viewer 容器的 ",[548,40035,30115],{},"，顏色才會跟編輯器一致。",[536,40038,720],{"id":719},[5754,40040,40041,40049],{},[5757,40042,40043],{},[5760,40044,40045,40047],{},[5763,40046,37230],{},[5763,40048,19559],{},[5770,40050,40051,40063],{},[5760,40052,40053,40058],{},[5775,40054,40055],{},[548,40056,40057],{},"createCodeBlockExtension(options?)",[5775,40059,40060,40061],{},"回傳配置好 lowlight 與語言下拉的 code block extension，傳入 ",[548,40062,37246],{},[5760,40064,40065,40069],{},[5775,40066,40067],{},[548,40068,39587],{},[5775,40070,40071,40072,40075,40076,7623,40078,40080],{},"語法上色的 class 字串（",[548,40073,40074],{},"hljs-*"," 對應 admin tokens），append 到 ",[548,40077,39591],{},[548,40079,39594],{}," 或前台 viewer 容器",[5754,40082,40083,40096],{},[5757,40084,40085],{},[5760,40086,40087,40089,40091,40094],{},[5763,40088,19541],{},[5763,40090,19553],{},[5763,40092,40093],{},"預設",[5763,40095,19559],{},[5770,40097,40098],{},[5760,40099,40100,40104,40108,40113],{},[5775,40101,40102],{},[548,40103,20711],{},[5775,40105,40106],{},[548,40107,3261],{},[5775,40109,40110],{},[548,40111,40112],{},"'plaintext'",[5775,40114,40115],{},"新建區塊的預設語言",[990,40117,3744],{},{"title":546,"searchDepth":601,"depth":601,"links":40119},[40120,40121,40122,40123,40124],{"id":507,"depth":591,"text":507},{"id":683,"depth":591,"text":683},{"id":39956,"depth":591,"text":39956},{"id":1556,"depth":591,"text":1556},{"id":719,"depth":591,"text":720},"程式碼區塊；語言選擇與語法上色。",{"doc":40127},"https:\u002F\u002Ftiptap.dev\u002Fdocs\u002Feditor\u002Fextensions\u002Fnodes\u002Fcode-block-lowlight",{},{"title":466,"description":40125},"TB13Oea8cfht3sl914uPA8Wi0-Bpc5UkByXX2RxJyUQ",{"id":40132,"title":470,"body":40133,"component":526,"description":40786,"extension":1015,"links":40787,"meta":40789,"navigation":526,"new":18,"path":471,"seo":40790,"stem":472,"wrapperKind":19,"__hash__":40791},"docs\u002Fdocs\u002Feditor\u002F4.addons\u002F3.text-color.md",{"type":533,"value":40134,"toc":40777},[40135,40137,40167,40241,40248,40250,40267,40269,40742,40744,40746,40749,40751,40771,40773,40775],[536,40136,507],{"id":507},[539,40138,40140],{"className":541,"code":40139,"filename":543,"language":544,"meta":545,"style":546},"pnpm dlx shadcn-vue add @admin\u002Feditor-text-color\npnpm add @tiptap\u002Fextension-text-style @tiptap\u002Fextension-color\n",[548,40141,40142,40155],{"__ignoreMap":546},[551,40143,40144,40146,40148,40150,40152],{"class":553,"line":554},[551,40145,558],{"class":557},[551,40147,562],{"class":561},[551,40149,565],{"class":561},[551,40151,568],{"class":561},[551,40153,40154],{"class":561}," @admin\u002Feditor-text-color\n",[551,40156,40157,40159,40161,40164],{"class":553,"line":591},[551,40158,558],{"class":557},[551,40160,568],{"class":561},[551,40162,40163],{"class":561}," @tiptap\u002Fextension-text-style",[551,40165,40166],{"class":561}," @tiptap\u002Fextension-color\n",[539,40168,40170],{"className":574,"code":40169,"language":576,"meta":546,"style":546},"import { Color } from '@tiptap\u002Fextension-color'\nimport { TextStyle } from '@tiptap\u002Fextension-text-style'\nimport {\n  AdminEditorTextColorButton,\n  defaultColorSwatches\n} from '@\u002Fregistry\u002Fadmin\u002Fui\u002Feditor-text-color'\n",[548,40171,40172,40192,40210,40216,40223,40228],{"__ignoreMap":546},[551,40173,40174,40176,40178,40181,40183,40185,40187,40190],{"class":553,"line":554},[551,40175,584],{"class":583},[551,40177,1273],{"class":587},[551,40179,40180],{"class":594}," Color",[551,40182,1279],{"class":587},[551,40184,671],{"class":583},[551,40186,674],{"class":587},[551,40188,40189],{"class":561},"@tiptap\u002Fextension-color",[551,40191,680],{"class":587},[551,40193,40194,40196,40198,40200,40202,40204,40206,40208],{"class":553,"line":591},[551,40195,584],{"class":583},[551,40197,1273],{"class":587},[551,40199,38172],{"class":594},[551,40201,1279],{"class":587},[551,40203,671],{"class":583},[551,40205,674],{"class":587},[551,40207,22915],{"class":561},[551,40209,680],{"class":587},[551,40211,40212,40214],{"class":553,"line":601},[551,40213,584],{"class":583},[551,40215,588],{"class":587},[551,40217,40218,40221],{"class":553,"line":609},[551,40219,40220],{"class":594},"  AdminEditorTextColorButton",[551,40222,598],{"class":587},[551,40224,40225],{"class":553,"line":617},[551,40226,40227],{"class":594},"  defaultColorSwatches\n",[551,40229,40230,40232,40234,40236,40239],{"class":553,"line":625},[551,40231,668],{"class":587},[551,40233,671],{"class":583},[551,40235,674],{"class":587},[551,40237,40238],{"class":561},"@\u002Fregistry\u002Fadmin\u002Fui\u002Feditor-text-color",[551,40240,680],{"class":587},[705,40242,40243,40244,2470,40246,35302],{},"含 toolbar 按鈕與色板；顏色能力來自 tiptap ",[548,40245,372],{},[548,40247,376],{},[536,40249,683],{"id":683},[705,40251,40252,40253,35310,40255,38230,40258,38234,40261,38238,40264,713],{},"加入文字顏色需三個步驟：在 ",[548,40254,28043],{},[548,40256,40257],{},"[TextStyle, Color]",[548,40259,40260],{},"slot: 'color'",[548,40262,40263],{},"#color",[548,40265,40266],{},"\u003CAdminEditorTextColorButton>",[685,40268],{"name":31823},[539,40270,40272],{"className":726,"code":40271,"language":728,"meta":546,"style":546},"\u003Cscript setup lang=\"ts\">\nimport type { EditorToolbarItem } from '@\u002Fregistry\u002Fadmin\u002Fui\u002Feditor-toolbar'\nimport { IconLetterA } from '@tabler\u002Ficons-vue'\nimport { Color } from '@tiptap\u002Fextension-color'\nimport { TextStyle } from '@tiptap\u002Fextension-text-style'\nimport { ref } from 'vue'\nimport {\n  AdminEditorTextColorButton,\n  defaultColorSwatches\n} from '@\u002Fregistry\u002Fadmin\u002Fui\u002Feditor-text-color'\nimport { AdminEditorToolbar, defaultEditorItems } from '@\u002Fregistry\u002Fadmin\u002Fui\u002Feditor-toolbar'\nimport { AdminRichEditor } from '@\u002Fregistry\u002Fadmin\u002Fui\u002Frich-editor'\n\nconst value = ref('\u003Cp>內容\u003C\u002Fp>')\n\u002F\u002F 自行注入官方 extension（Color 依賴 TextStyle）\nconst extensions = [TextStyle, Color]\n\u002F\u002F color picker 是 kindless slot item：由具名 slot 渲染，不綁 handler\nconst items: EditorToolbarItem[][] = [\n  ...defaultEditorItems,\n  [{ slot: 'color', icon: IconLetterA, label: '文字顏色', tooltip: { text: '文字顏色' } }]\n]\n\u003C\u002Fscript>\n\n\u003Ctemplate>\n  \u003Cadmin-rich-editor v-slot=\"{ editor }\" v-model=\"value\" :extensions=\"extensions\">\n    \u003Cadmin-editor-toolbar :items=\"items\">\n      \u003Ctemplate #color>\n        \u003Cadmin-editor-text-color-button :editor=\"editor\" :swatches=\"defaultColorSwatches\" \u002F>\n      \u003C\u002Ftemplate>\n    \u003C\u002Fadmin-editor-toolbar>\n  \u003C\u002Fadmin-rich-editor>\n\u003C\u002Ftemplate>\n",[548,40273,40274,40294,40314,40333,40351,40369,40387,40393,40399,40403,40415,40437,40455,40459,40479,40484,40499,40504,40520,40528,40588,40592,40600,40604,40612,40650,40668,40680,40710,40718,40726,40734],{"__ignoreMap":546},[551,40275,40276,40278,40280,40282,40284,40286,40288,40290,40292],{"class":553,"line":554},[551,40277,735],{"class":587},[551,40279,3276],{"class":738},[551,40281,3279],{"class":753},[551,40283,3282],{"class":753},[551,40285,757],{"class":587},[551,40287,760],{"class":587},[551,40289,576],{"class":561},[551,40291,760],{"class":587},[551,40293,742],{"class":587},[551,40295,40296,40298,40300,40302,40304,40306,40308,40310,40312],{"class":553,"line":591},[551,40297,584],{"class":583},[551,40299,3137],{"class":583},[551,40301,1273],{"class":587},[551,40303,28622],{"class":594},[551,40305,1279],{"class":587},[551,40307,671],{"class":583},[551,40309,674],{"class":587},[551,40311,28108],{"class":561},[551,40313,680],{"class":587},[551,40315,40316,40318,40320,40323,40325,40327,40329,40331],{"class":553,"line":601},[551,40317,584],{"class":583},[551,40319,1273],{"class":587},[551,40321,40322],{"class":594}," IconLetterA",[551,40324,1279],{"class":587},[551,40326,671],{"class":583},[551,40328,674],{"class":587},[551,40330,17314],{"class":561},[551,40332,680],{"class":587},[551,40334,40335,40337,40339,40341,40343,40345,40347,40349],{"class":553,"line":609},[551,40336,584],{"class":583},[551,40338,1273],{"class":587},[551,40340,40180],{"class":594},[551,40342,1279],{"class":587},[551,40344,671],{"class":583},[551,40346,674],{"class":587},[551,40348,40189],{"class":561},[551,40350,680],{"class":587},[551,40352,40353,40355,40357,40359,40361,40363,40365,40367],{"class":553,"line":617},[551,40354,584],{"class":583},[551,40356,1273],{"class":587},[551,40358,38172],{"class":594},[551,40360,1279],{"class":587},[551,40362,671],{"class":583},[551,40364,674],{"class":587},[551,40366,22915],{"class":561},[551,40368,680],{"class":587},[551,40370,40371,40373,40375,40377,40379,40381,40383,40385],{"class":553,"line":625},[551,40372,584],{"class":583},[551,40374,1273],{"class":587},[551,40376,3427],{"class":594},[551,40378,1279],{"class":587},[551,40380,671],{"class":583},[551,40382,674],{"class":587},[551,40384,728],{"class":561},[551,40386,680],{"class":587},[551,40388,40389,40391],{"class":553,"line":633},[551,40390,584],{"class":583},[551,40392,588],{"class":587},[551,40394,40395,40397],{"class":553,"line":641},[551,40396,40220],{"class":594},[551,40398,598],{"class":587},[551,40400,40401],{"class":553,"line":649},[551,40402,40227],{"class":594},[551,40404,40405,40407,40409,40411,40413],{"class":553,"line":657},[551,40406,668],{"class":587},[551,40408,671],{"class":583},[551,40410,674],{"class":587},[551,40412,40238],{"class":561},[551,40414,680],{"class":587},[551,40416,40417,40419,40421,40423,40425,40427,40429,40431,40433,40435],{"class":553,"line":665},[551,40418,584],{"class":583},[551,40420,1273],{"class":587},[551,40422,28094],{"class":594},[551,40424,3348],{"class":587},[551,40426,28099],{"class":594},[551,40428,1279],{"class":587},[551,40430,671],{"class":583},[551,40432,674],{"class":587},[551,40434,28108],{"class":561},[551,40436,680],{"class":587},[551,40438,40439,40441,40443,40445,40447,40449,40451,40453],{"class":553,"line":901},[551,40440,584],{"class":583},[551,40442,1273],{"class":587},[551,40444,28119],{"class":594},[551,40446,1279],{"class":587},[551,40448,671],{"class":583},[551,40450,674],{"class":587},[551,40452,28128],{"class":561},[551,40454,680],{"class":587},[551,40456,40457],{"class":553,"line":910},[551,40458,1293],{"emptyLinePlaceholder":526},[551,40460,40461,40463,40465,40467,40469,40471,40473,40475,40477],{"class":553,"line":920},[551,40462,3321],{"class":753},[551,40464,3422],{"class":594},[551,40466,757],{"class":587},[551,40468,3427],{"class":1154},[551,40470,1158],{"class":594},[551,40472,1214],{"class":587},[551,40474,38427],{"class":561},[551,40476,1214],{"class":587},[551,40478,1222],{"class":594},[551,40480,40481],{"class":553,"line":930},[551,40482,40483],{"class":4831},"\u002F\u002F 自行注入官方 extension（Color 依賴 TextStyle）\n",[551,40485,40486,40488,40490,40492,40494,40496],{"class":553,"line":3536},[551,40487,3321],{"class":753},[551,40489,32337],{"class":594},[551,40491,757],{"class":587},[551,40493,38447],{"class":594},[551,40495,3348],{"class":587},[551,40497,40498],{"class":594}," Color]\n",[551,40500,40501],{"class":553,"line":4422},[551,40502,40503],{"class":4831},"\u002F\u002F color picker 是 kindless slot item：由具名 slot 渲染，不綁 handler\n",[551,40505,40506,40508,40510,40512,40514,40516,40518],{"class":553,"line":6194},[551,40507,3321],{"class":753},[551,40509,32383],{"class":594},[551,40511,1169],{"class":587},[551,40513,28622],{"class":557},[551,40515,32390],{"class":594},[551,40517,757],{"class":587},[551,40519,1315],{"class":594},[551,40521,40522,40524,40526],{"class":553,"line":6204},[551,40523,28832],{"class":587},[551,40525,28232],{"class":594},[551,40527,598],{"class":587},[551,40529,40530,40532,40534,40536,40538,40540,40542,40544,40546,40548,40550,40552,40554,40556,40558,40560,40562,40564,40566,40568,40570,40572,40574,40576,40578,40580,40582,40584,40586],{"class":553,"line":6223},[551,40531,28841],{"class":594},[551,40533,4243],{"class":587},[551,40535,38490],{"class":738},[551,40537,1169],{"class":587},[551,40539,674],{"class":587},[551,40541,2492],{"class":561},[551,40543,1214],{"class":587},[551,40545,3348],{"class":587},[551,40547,32423],{"class":738},[551,40549,1169],{"class":587},[551,40551,40322],{"class":594},[551,40553,3348],{"class":587},[551,40555,28860],{"class":738},[551,40557,1169],{"class":587},[551,40559,674],{"class":587},[551,40561,18997],{"class":561},[551,40563,1214],{"class":587},[551,40565,3348],{"class":587},[551,40567,28874],{"class":738},[551,40569,1169],{"class":587},[551,40571,1273],{"class":587},[551,40573,28881],{"class":738},[551,40575,1169],{"class":587},[551,40577,674],{"class":587},[551,40579,18997],{"class":561},[551,40581,1214],{"class":587},[551,40583,1279],{"class":587},[551,40585,1279],{"class":587},[551,40587,9080],{"class":594},[551,40589,40590],{"class":553,"line":6233},[551,40591,9080],{"class":594},[551,40593,40594,40596,40598],{"class":553,"line":6242},[551,40595,784],{"class":587},[551,40597,3276],{"class":738},[551,40599,742],{"class":587},[551,40601,40602],{"class":553,"line":6251},[551,40603,1293],{"emptyLinePlaceholder":526},[551,40605,40606,40608,40610],{"class":553,"line":524},[551,40607,735],{"class":587},[551,40609,739],{"class":738},[551,40611,742],{"class":587},[551,40613,40614,40616,40618,40620,40622,40624,40626,40628,40630,40632,40634,40636,40638,40640,40642,40644,40646,40648],{"class":553,"line":6864},[551,40615,747],{"class":587},[551,40617,28243],{"class":738},[551,40619,3595],{"class":753},[551,40621,757],{"class":587},[551,40623,760],{"class":587},[551,40625,30664],{"class":561},[551,40627,760],{"class":587},[551,40629,2867],{"class":753},[551,40631,757],{"class":587},[551,40633,760],{"class":587},[551,40635,2720],{"class":561},[551,40637,760],{"class":587},[551,40639,30679],{"class":753},[551,40641,757],{"class":587},[551,40643,760],{"class":587},[551,40645,18579],{"class":561},[551,40647,760],{"class":587},[551,40649,742],{"class":587},[551,40651,40652,40654,40656,40658,40660,40662,40664,40666],{"class":553,"line":6873},[551,40653,772],{"class":587},[551,40655,28208],{"class":738},[551,40657,15260],{"class":753},[551,40659,757],{"class":587},[551,40661,760],{"class":587},[551,40663,7361],{"class":561},[551,40665,760],{"class":587},[551,40667,742],{"class":587},[551,40669,40670,40672,40674,40676,40678],{"class":553,"line":6894},[551,40671,802],{"class":587},[551,40673,739],{"class":738},[551,40675,8713],{"class":587},[551,40677,2492],{"class":753},[551,40679,742],{"class":587},[551,40681,40682,40684,40687,40689,40691,40693,40695,40697,40699,40701,40703,40706,40708],{"class":553,"line":6903},[551,40683,812],{"class":587},[551,40685,40686],{"class":738},"admin-editor-text-color-button",[551,40688,28211],{"class":753},[551,40690,757],{"class":587},[551,40692,760],{"class":587},[551,40694,18395],{"class":561},[551,40696,760],{"class":587},[551,40698,3497],{"class":753},[551,40700,757],{"class":587},[551,40702,760],{"class":587},[551,40704,40705],{"class":561},"defaultColorSwatches",[551,40707,760],{"class":587},[551,40709,1449],{"class":587},[551,40711,40712,40714,40716],{"class":553,"line":6912},[551,40713,849],{"class":587},[551,40715,739],{"class":738},[551,40717,742],{"class":587},[551,40719,40720,40722,40724],{"class":553,"line":6921},[551,40721,913],{"class":587},[551,40723,28208],{"class":738},[551,40725,742],{"class":587},[551,40727,40728,40730,40732],{"class":553,"line":12223},[551,40729,923],{"class":587},[551,40731,28243],{"class":738},[551,40733,742],{"class":587},[551,40735,40736,40738,40740],{"class":553,"line":12232},[551,40737,784],{"class":587},[551,40739,739],{"class":738},[551,40741,742],{"class":587},[536,40743,720],{"id":719},[692,40745,40686],{"id":40686},[940,40747],{"component":40748},"AdminEditorTextColorButton",[536,40750,1556],{"id":1556},[1558,40752,40753,40762],{},[1561,40754,40755,2466,40757,1613,40759,40761],{},[1135,40756,32758],{},[548,40758,372],{},[548,40760,376],{}," 無法於編輯器建立後補上，未注入時顏色按鈕不會生效。",[1561,40763,40764,40767,40768,40770],{},[1135,40765,40766],{},"色板需自行提供","：使用本元件的 ",[548,40769,40705],{},"，或透過 props 傳入自訂色板。",[536,40772,985],{"id":985},[987,40774],{"component":40748},[990,40776,10241],{},{"title":546,"searchDepth":601,"depth":601,"links":40778},[40779,40780,40781,40784,40785],{"id":507,"depth":591,"text":507},{"id":683,"depth":591,"text":683},{"id":719,"depth":591,"text":720,"children":40782},[40783],{"id":40686,"depth":601,"text":40686},{"id":1556,"depth":591,"text":1556},{"id":985,"depth":591,"text":985},"toolbar 文字顏色按鈕與色板；套用至選取文字。",{"doc":40788},"https:\u002F\u002Ftiptap.dev\u002Fdocs\u002Feditor\u002Fextensions\u002Ffunctionality\u002Fcolor",{},{"title":470,"description":40786},"BDRa_UoVPdzuakym0Mc_l7b4II_S4TOfU7_PzdlPut8",{"id":40793,"title":474,"body":40794,"component":526,"description":41410,"extension":1015,"links":41411,"meta":41413,"navigation":526,"new":18,"path":475,"seo":41414,"stem":476,"wrapperKind":19,"__hash__":41415},"docs\u002Fdocs\u002Feditor\u002F4.addons\u002F4.highlight.md",{"type":533,"value":40795,"toc":41401},[40796,40798,40825,40876,40881,40883,40900,40903,41370,41372,41374,41377,41379,41394,41396,41398],[536,40797,507],{"id":507},[539,40799,40801],{"className":541,"code":40800,"filename":543,"language":544,"meta":545,"style":546},"pnpm dlx shadcn-vue add @admin\u002Feditor-highlight\npnpm add @tiptap\u002Fextension-highlight\n",[548,40802,40803,40816],{"__ignoreMap":546},[551,40804,40805,40807,40809,40811,40813],{"class":553,"line":554},[551,40806,558],{"class":557},[551,40808,562],{"class":561},[551,40810,565],{"class":561},[551,40812,568],{"class":561},[551,40814,40815],{"class":561}," @admin\u002Feditor-highlight\n",[551,40817,40818,40820,40822],{"class":553,"line":591},[551,40819,558],{"class":557},[551,40821,568],{"class":561},[551,40823,40824],{"class":561}," @tiptap\u002Fextension-highlight\n",[539,40826,40828],{"className":574,"code":40827,"language":576,"meta":546,"style":546},"import Highlight from '@tiptap\u002Fextension-highlight'\nimport {\n  AdminEditorHighlightButton,\n  defaultHighlightSwatches\n} from '@\u002Fregistry\u002Fadmin\u002Fui\u002Feditor-highlight'\n",[548,40829,40830,40845,40851,40858,40863],{"__ignoreMap":546},[551,40831,40832,40834,40837,40839,40841,40843],{"class":553,"line":554},[551,40833,584],{"class":583},[551,40835,40836],{"class":594}," Highlight ",[551,40838,1259],{"class":583},[551,40840,674],{"class":587},[551,40842,27620],{"class":561},[551,40844,680],{"class":587},[551,40846,40847,40849],{"class":553,"line":591},[551,40848,584],{"class":583},[551,40850,588],{"class":587},[551,40852,40853,40856],{"class":553,"line":601},[551,40854,40855],{"class":594},"  AdminEditorHighlightButton",[551,40857,598],{"class":587},[551,40859,40860],{"class":553,"line":609},[551,40861,40862],{"class":594},"  defaultHighlightSwatches\n",[551,40864,40865,40867,40869,40871,40874],{"class":553,"line":617},[551,40866,668],{"class":587},[551,40868,671],{"class":583},[551,40870,674],{"class":587},[551,40872,40873],{"class":561},"@\u002Fregistry\u002Fadmin\u002Fui\u002Feditor-highlight",[551,40875,680],{"class":587},[705,40877,40878,40879,35302],{},"含 toolbar 按鈕與色板；底色能力來自 tiptap ",[548,40880,380],{},[536,40882,683],{"id":683},[705,40884,40885,40886,35310,40888,38230,40891,38234,40894,38238,40897,713],{},"加入文字底色需三個步驟：在 ",[548,40887,28043],{},[548,40889,40890],{},"Highlight.configure({ multicolor: true })",[548,40892,40893],{},"slot: 'highlight'",[548,40895,40896],{},"#highlight",[548,40898,40899],{},"\u003CAdminEditorHighlightButton>",[685,40901],{"name":40902},"EditorHighlightDemo",[539,40904,40906],{"className":726,"code":40905,"language":728,"meta":546,"style":546},"\u003Cscript setup lang=\"ts\">\nimport type { EditorToolbarItem } from '@\u002Fregistry\u002Fadmin\u002Fui\u002Feditor-toolbar'\nimport { IconHighlight } from '@tabler\u002Ficons-vue'\nimport Highlight from '@tiptap\u002Fextension-highlight'\nimport { ref } from 'vue'\nimport {\n  AdminEditorHighlightButton,\n  defaultHighlightSwatches\n} from '@\u002Fregistry\u002Fadmin\u002Fui\u002Feditor-highlight'\nimport { AdminEditorToolbar, defaultEditorItems } from '@\u002Fregistry\u002Fadmin\u002Fui\u002Feditor-toolbar'\nimport { AdminRichEditor } from '@\u002Fregistry\u002Fadmin\u002Fui\u002Frich-editor'\n\nconst value = ref('\u003Cp>內容\u003C\u002Fp>')\n\u002F\u002F 自行注入官方 Highlight extension（multicolor 屬於 schema，建立後不可改）\nconst extensions = [Highlight.configure({ multicolor: true })]\n\u002F\u002F highlight picker 是 kindless slot item：由具名 slot 渲染，不綁 handler\nconst items: EditorToolbarItem[][] = [\n  ...defaultEditorItems,\n  [{ slot: 'highlight', icon: IconHighlight, label: '文字底色', tooltip: { text: '文字底色' } }]\n]\n\u003C\u002Fscript>\n\n\u003Ctemplate>\n  \u003Cadmin-rich-editor v-slot=\"{ editor }\" v-model=\"value\" :extensions=\"extensions\">\n    \u003Cadmin-editor-toolbar :items=\"items\">\n      \u003Ctemplate #highlight>\n        \u003Cadmin-editor-highlight-button :editor=\"editor\" :swatches=\"defaultHighlightSwatches\" \u002F>\n      \u003C\u002Ftemplate>\n    \u003C\u002Fadmin-editor-toolbar>\n  \u003C\u002Fadmin-rich-editor>\n\u003C\u002Ftemplate>\n",[548,40907,40908,40928,40948,40967,40981,40999,41005,41011,41015,41027,41049,41067,41071,41091,41096,41126,41131,41147,41155,41216,41220,41228,41232,41240,41278,41296,41308,41338,41346,41354,41362],{"__ignoreMap":546},[551,40909,40910,40912,40914,40916,40918,40920,40922,40924,40926],{"class":553,"line":554},[551,40911,735],{"class":587},[551,40913,3276],{"class":738},[551,40915,3279],{"class":753},[551,40917,3282],{"class":753},[551,40919,757],{"class":587},[551,40921,760],{"class":587},[551,40923,576],{"class":561},[551,40925,760],{"class":587},[551,40927,742],{"class":587},[551,40929,40930,40932,40934,40936,40938,40940,40942,40944,40946],{"class":553,"line":591},[551,40931,584],{"class":583},[551,40933,3137],{"class":583},[551,40935,1273],{"class":587},[551,40937,28622],{"class":594},[551,40939,1279],{"class":587},[551,40941,671],{"class":583},[551,40943,674],{"class":587},[551,40945,28108],{"class":561},[551,40947,680],{"class":587},[551,40949,40950,40952,40954,40957,40959,40961,40963,40965],{"class":553,"line":601},[551,40951,584],{"class":583},[551,40953,1273],{"class":587},[551,40955,40956],{"class":594}," IconHighlight",[551,40958,1279],{"class":587},[551,40960,671],{"class":583},[551,40962,674],{"class":587},[551,40964,17314],{"class":561},[551,40966,680],{"class":587},[551,40968,40969,40971,40973,40975,40977,40979],{"class":553,"line":609},[551,40970,584],{"class":583},[551,40972,40836],{"class":594},[551,40974,1259],{"class":583},[551,40976,674],{"class":587},[551,40978,27620],{"class":561},[551,40980,680],{"class":587},[551,40982,40983,40985,40987,40989,40991,40993,40995,40997],{"class":553,"line":617},[551,40984,584],{"class":583},[551,40986,1273],{"class":587},[551,40988,3427],{"class":594},[551,40990,1279],{"class":587},[551,40992,671],{"class":583},[551,40994,674],{"class":587},[551,40996,728],{"class":561},[551,40998,680],{"class":587},[551,41000,41001,41003],{"class":553,"line":625},[551,41002,584],{"class":583},[551,41004,588],{"class":587},[551,41006,41007,41009],{"class":553,"line":633},[551,41008,40855],{"class":594},[551,41010,598],{"class":587},[551,41012,41013],{"class":553,"line":641},[551,41014,40862],{"class":594},[551,41016,41017,41019,41021,41023,41025],{"class":553,"line":649},[551,41018,668],{"class":587},[551,41020,671],{"class":583},[551,41022,674],{"class":587},[551,41024,40873],{"class":561},[551,41026,680],{"class":587},[551,41028,41029,41031,41033,41035,41037,41039,41041,41043,41045,41047],{"class":553,"line":657},[551,41030,584],{"class":583},[551,41032,1273],{"class":587},[551,41034,28094],{"class":594},[551,41036,3348],{"class":587},[551,41038,28099],{"class":594},[551,41040,1279],{"class":587},[551,41042,671],{"class":583},[551,41044,674],{"class":587},[551,41046,28108],{"class":561},[551,41048,680],{"class":587},[551,41050,41051,41053,41055,41057,41059,41061,41063,41065],{"class":553,"line":665},[551,41052,584],{"class":583},[551,41054,1273],{"class":587},[551,41056,28119],{"class":594},[551,41058,1279],{"class":587},[551,41060,671],{"class":583},[551,41062,674],{"class":587},[551,41064,28128],{"class":561},[551,41066,680],{"class":587},[551,41068,41069],{"class":553,"line":901},[551,41070,1293],{"emptyLinePlaceholder":526},[551,41072,41073,41075,41077,41079,41081,41083,41085,41087,41089],{"class":553,"line":910},[551,41074,3321],{"class":753},[551,41076,3422],{"class":594},[551,41078,757],{"class":587},[551,41080,3427],{"class":1154},[551,41082,1158],{"class":594},[551,41084,1214],{"class":587},[551,41086,38427],{"class":561},[551,41088,1214],{"class":587},[551,41090,1222],{"class":594},[551,41092,41093],{"class":553,"line":920},[551,41094,41095],{"class":4831},"\u002F\u002F 自行注入官方 Highlight extension（multicolor 屬於 schema，建立後不可改）\n",[551,41097,41098,41100,41102,41104,41107,41109,41111,41113,41115,41118,41120,41122,41124],{"class":553,"line":930},[551,41099,3321],{"class":753},[551,41101,32337],{"class":594},[551,41103,757],{"class":587},[551,41105,41106],{"class":594}," [Highlight",[551,41108,1206],{"class":587},[551,41110,32347],{"class":1154},[551,41112,1158],{"class":594},[551,41114,4243],{"class":587},[551,41116,41117],{"class":738}," multicolor",[551,41119,1169],{"class":587},[551,41121,28714],{"class":17983},[551,41123,1279],{"class":587},[551,41125,32354],{"class":594},[551,41127,41128],{"class":553,"line":3536},[551,41129,41130],{"class":4831},"\u002F\u002F highlight picker 是 kindless slot item：由具名 slot 渲染，不綁 handler\n",[551,41132,41133,41135,41137,41139,41141,41143,41145],{"class":553,"line":4422},[551,41134,3321],{"class":753},[551,41136,32383],{"class":594},[551,41138,1169],{"class":587},[551,41140,28622],{"class":557},[551,41142,32390],{"class":594},[551,41144,757],{"class":587},[551,41146,1315],{"class":594},[551,41148,41149,41151,41153],{"class":553,"line":6194},[551,41150,28832],{"class":587},[551,41152,28232],{"class":594},[551,41154,598],{"class":587},[551,41156,41157,41159,41161,41163,41165,41167,41170,41172,41174,41176,41178,41180,41182,41184,41186,41188,41190,41192,41194,41196,41198,41200,41202,41204,41206,41208,41210,41212,41214],{"class":553,"line":6204},[551,41158,28841],{"class":594},[551,41160,4243],{"class":587},[551,41162,38490],{"class":738},[551,41164,1169],{"class":587},[551,41166,674],{"class":587},[551,41168,41169],{"class":561},"highlight",[551,41171,1214],{"class":587},[551,41173,3348],{"class":587},[551,41175,32423],{"class":738},[551,41177,1169],{"class":587},[551,41179,40956],{"class":594},[551,41181,3348],{"class":587},[551,41183,28860],{"class":738},[551,41185,1169],{"class":587},[551,41187,674],{"class":587},[551,41189,27871],{"class":561},[551,41191,1214],{"class":587},[551,41193,3348],{"class":587},[551,41195,28874],{"class":738},[551,41197,1169],{"class":587},[551,41199,1273],{"class":587},[551,41201,28881],{"class":738},[551,41203,1169],{"class":587},[551,41205,674],{"class":587},[551,41207,27871],{"class":561},[551,41209,1214],{"class":587},[551,41211,1279],{"class":587},[551,41213,1279],{"class":587},[551,41215,9080],{"class":594},[551,41217,41218],{"class":553,"line":6223},[551,41219,9080],{"class":594},[551,41221,41222,41224,41226],{"class":553,"line":6233},[551,41223,784],{"class":587},[551,41225,3276],{"class":738},[551,41227,742],{"class":587},[551,41229,41230],{"class":553,"line":6242},[551,41231,1293],{"emptyLinePlaceholder":526},[551,41233,41234,41236,41238],{"class":553,"line":6251},[551,41235,735],{"class":587},[551,41237,739],{"class":738},[551,41239,742],{"class":587},[551,41241,41242,41244,41246,41248,41250,41252,41254,41256,41258,41260,41262,41264,41266,41268,41270,41272,41274,41276],{"class":553,"line":524},[551,41243,747],{"class":587},[551,41245,28243],{"class":738},[551,41247,3595],{"class":753},[551,41249,757],{"class":587},[551,41251,760],{"class":587},[551,41253,30664],{"class":561},[551,41255,760],{"class":587},[551,41257,2867],{"class":753},[551,41259,757],{"class":587},[551,41261,760],{"class":587},[551,41263,2720],{"class":561},[551,41265,760],{"class":587},[551,41267,30679],{"class":753},[551,41269,757],{"class":587},[551,41271,760],{"class":587},[551,41273,18579],{"class":561},[551,41275,760],{"class":587},[551,41277,742],{"class":587},[551,41279,41280,41282,41284,41286,41288,41290,41292,41294],{"class":553,"line":6864},[551,41281,772],{"class":587},[551,41283,28208],{"class":738},[551,41285,15260],{"class":753},[551,41287,757],{"class":587},[551,41289,760],{"class":587},[551,41291,7361],{"class":561},[551,41293,760],{"class":587},[551,41295,742],{"class":587},[551,41297,41298,41300,41302,41304,41306],{"class":553,"line":6873},[551,41299,802],{"class":587},[551,41301,739],{"class":738},[551,41303,8713],{"class":587},[551,41305,41169],{"class":753},[551,41307,742],{"class":587},[551,41309,41310,41312,41315,41317,41319,41321,41323,41325,41327,41329,41331,41334,41336],{"class":553,"line":6894},[551,41311,812],{"class":587},[551,41313,41314],{"class":738},"admin-editor-highlight-button",[551,41316,28211],{"class":753},[551,41318,757],{"class":587},[551,41320,760],{"class":587},[551,41322,18395],{"class":561},[551,41324,760],{"class":587},[551,41326,3497],{"class":753},[551,41328,757],{"class":587},[551,41330,760],{"class":587},[551,41332,41333],{"class":561},"defaultHighlightSwatches",[551,41335,760],{"class":587},[551,41337,1449],{"class":587},[551,41339,41340,41342,41344],{"class":553,"line":6903},[551,41341,849],{"class":587},[551,41343,739],{"class":738},[551,41345,742],{"class":587},[551,41347,41348,41350,41352],{"class":553,"line":6912},[551,41349,913],{"class":587},[551,41351,28208],{"class":738},[551,41353,742],{"class":587},[551,41355,41356,41358,41360],{"class":553,"line":6921},[551,41357,923],{"class":587},[551,41359,28243],{"class":738},[551,41361,742],{"class":587},[551,41363,41364,41366,41368],{"class":553,"line":12223},[551,41365,784],{"class":587},[551,41367,739],{"class":738},[551,41369,742],{"class":587},[536,41371,720],{"id":719},[692,41373,41314],{"id":41314},[940,41375],{"component":41376},"AdminEditorHighlightButton",[536,41378,1556],{"id":1556},[1558,41380,41381,41388],{},[1561,41382,41383,2466,41385,41387],{},[1135,41384,32758],{},[548,41386,380],{}," 無法於編輯器建立後補上，未注入時底色按鈕會呈 disabled、無法套用。",[1561,41389,41390,40767,41392,40770],{},[1135,41391,40766],{},[548,41393,41333],{},[536,41395,985],{"id":985},[987,41397],{"component":41376},[990,41399,41400],{},"html pre.shiki code .sBMFI, html code.shiki .sBMFI{--shiki-light:#E2931D;--shiki-default:#FFCB6B;--shiki-dark:#FFCB6B}html pre.shiki code .sfazB, html code.shiki .sfazB{--shiki-light:#91B859;--shiki-default:#C3E88D;--shiki-dark:#C3E88D}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 pre.shiki code .s7zQu, html code.shiki .s7zQu{--shiki-light:#39ADB5;--shiki-light-font-style:italic;--shiki-default:#89DDFF;--shiki-default-font-style:italic;--shiki-dark:#89DDFF;--shiki-dark-font-style:italic}html pre.shiki code .sTEyZ, html code.shiki .sTEyZ{--shiki-light:#90A4AE;--shiki-default:#EEFFFF;--shiki-dark:#BABED8}html pre.shiki code .sMK4o, html code.shiki .sMK4o{--shiki-light:#39ADB5;--shiki-default:#89DDFF;--shiki-dark:#89DDFF}html pre.shiki code .swJcz, html code.shiki .swJcz{--shiki-light:#E53935;--shiki-default:#F07178;--shiki-dark:#F07178}html pre.shiki code .spNyl, html code.shiki .spNyl{--shiki-light:#9C3EDA;--shiki-default:#C792EA;--shiki-dark:#C792EA}html pre.shiki code .s2Zo4, html code.shiki .s2Zo4{--shiki-light:#6182B8;--shiki-default:#82AAFF;--shiki-dark:#82AAFF}html pre.shiki code .sHwdD, html code.shiki .sHwdD{--shiki-light:#90A4AE;--shiki-light-font-style:italic;--shiki-default:#546E7A;--shiki-default-font-style:italic;--shiki-dark:#676E95;--shiki-dark-font-style:italic}html pre.shiki code .sfNiH, html code.shiki .sfNiH{--shiki-light:#FF5370;--shiki-default:#FF9CAC;--shiki-dark:#FF9CAC}",{"title":546,"searchDepth":601,"depth":601,"links":41402},[41403,41404,41405,41408,41409],{"id":507,"depth":591,"text":507},{"id":683,"depth":591,"text":683},{"id":719,"depth":591,"text":720,"children":41406},[41407],{"id":41314,"depth":601,"text":41314},{"id":1556,"depth":591,"text":1556},{"id":985,"depth":591,"text":985},"toolbar 文字底色按鈕與色板；標示選取文字。",{"doc":41412},"https:\u002F\u002Ftiptap.dev\u002Fdocs\u002Feditor\u002Fextensions\u002Fmarks\u002Fhighlight",{},{"title":474,"description":41410},"VmLWRpuI3vhFiqWN_5gEU0QVjVM7wll-pnqSMHbe-UY",{"id":41417,"title":478,"body":41418,"component":526,"description":42139,"extension":1015,"links":42140,"meta":42141,"navigation":526,"new":18,"path":479,"seo":42142,"stem":480,"wrapperKind":19,"__hash__":42143},"docs\u002Fdocs\u002Feditor\u002F4.addons\u002F5.text-align.md",{"type":533,"value":41419,"toc":42129},[41420,41422,41449,41488,41493,41495,41512,41515,41951,41961,41963,41969,42087,42089,42091,42093,42102,42104,42122,42124,42126],[536,41421,507],{"id":507},[539,41423,41425],{"className":541,"code":41424,"filename":543,"language":544,"meta":545,"style":546},"pnpm dlx shadcn-vue add @admin\u002Feditor-text-align\npnpm add @tiptap\u002Fextension-text-align\n",[548,41426,41427,41440],{"__ignoreMap":546},[551,41428,41429,41431,41433,41435,41437],{"class":553,"line":554},[551,41430,558],{"class":557},[551,41432,562],{"class":561},[551,41434,565],{"class":561},[551,41436,568],{"class":561},[551,41438,41439],{"class":561}," @admin\u002Feditor-text-align\n",[551,41441,41442,41444,41446],{"class":553,"line":591},[551,41443,558],{"class":557},[551,41445,568],{"class":561},[551,41447,41448],{"class":561}," @tiptap\u002Fextension-text-align\n",[539,41450,41452],{"className":574,"code":41451,"language":576,"meta":546,"style":546},"import TextAlign from '@tiptap\u002Fextension-text-align'\nimport { AdminEditorTextAlignButton } from '@\u002Fregistry\u002Fadmin\u002Fui\u002Feditor-text-align'\n",[548,41453,41454,41468],{"__ignoreMap":546},[551,41455,41456,41458,41460,41462,41464,41466],{"class":553,"line":554},[551,41457,584],{"class":583},[551,41459,28322],{"class":594},[551,41461,1259],{"class":583},[551,41463,674],{"class":587},[551,41465,22171],{"class":561},[551,41467,680],{"class":587},[551,41469,41470,41472,41474,41477,41479,41481,41483,41486],{"class":553,"line":591},[551,41471,584],{"class":583},[551,41473,1273],{"class":587},[551,41475,41476],{"class":594}," AdminEditorTextAlignButton",[551,41478,1279],{"class":587},[551,41480,671],{"class":583},[551,41482,674],{"class":587},[551,41484,41485],{"class":561},"@\u002Fregistry\u002Fadmin\u002Fui\u002Feditor-text-align",[551,41487,680],{"class":587},[705,41489,41490,41491,35302],{},"含並排左／中／右三顆對齊按鈕；對齊能力來自 tiptap ",[548,41492,277],{},[536,41494,683],{"id":683},[705,41496,41497,41498,35310,41500,38230,41503,38234,41506,38238,41509,713],{},"加入對齊按鈕需三個步驟：在 ",[548,41499,28043],{},[548,41501,41502],{},"TextAlign.configure({ types: ['heading', 'paragraph'] })",[548,41504,41505],{},"slot: 'textAlign'",[548,41507,41508],{},"#textAlign",[548,41510,41511],{},"\u003CAdminEditorTextAlignButton>",[685,41513],{"name":41514},"EditorTextAlignDemo",[539,41516,41518],{"className":726,"code":41517,"language":728,"meta":546,"style":546},"\u003Cscript setup lang=\"ts\">\nimport type { EditorToolbarItem } from '@\u002Fregistry\u002Fadmin\u002Fui\u002Feditor-toolbar'\nimport { IconAlignLeft } from '@tabler\u002Ficons-vue'\nimport TextAlign from '@tiptap\u002Fextension-text-align'\nimport { ref } from 'vue'\nimport { AdminEditorTextAlignButton } from '@\u002Fregistry\u002Fadmin\u002Fui\u002Feditor-text-align'\nimport { AdminEditorToolbar, defaultEditorItems } from '@\u002Fregistry\u002Fadmin\u002Fui\u002Feditor-toolbar'\nimport { AdminRichEditor } from '@\u002Fregistry\u002Fadmin\u002Fui\u002Frich-editor'\n\nconst value = ref('\u003Cp>內容\u003C\u002Fp>')\n\nconst extensions = [TextAlign.configure({ types: ['heading', 'paragraph'] })]\nconst items: EditorToolbarItem[][] = [\n  ...defaultEditorItems,\n  [{ slot: 'textAlign', icon: IconAlignLeft, label: '對齊' }]\n]\n\u003C\u002Fscript>\n\n\u003Ctemplate>\n  \u003Cadmin-rich-editor v-slot=\"{ editor }\" v-model=\"value\" :extensions=\"extensions\">\n    \u003Cadmin-editor-toolbar :items=\"items\">\n      \u003Ctemplate #textAlign>\n        \u003Cadmin-editor-text-align-button :editor=\"editor\" \u002F>\n      \u003C\u002Ftemplate>\n    \u003C\u002Fadmin-editor-toolbar>\n  \u003C\u002Fadmin-rich-editor>\n\u003C\u002Ftemplate>\n",[548,41519,41520,41540,41560,41579,41593,41611,41629,41651,41669,41673,41693,41697,41742,41758,41766,41808,41812,41820,41824,41832,41870,41888,41900,41919,41927,41935,41943],{"__ignoreMap":546},[551,41521,41522,41524,41526,41528,41530,41532,41534,41536,41538],{"class":553,"line":554},[551,41523,735],{"class":587},[551,41525,3276],{"class":738},[551,41527,3279],{"class":753},[551,41529,3282],{"class":753},[551,41531,757],{"class":587},[551,41533,760],{"class":587},[551,41535,576],{"class":561},[551,41537,760],{"class":587},[551,41539,742],{"class":587},[551,41541,41542,41544,41546,41548,41550,41552,41554,41556,41558],{"class":553,"line":591},[551,41543,584],{"class":583},[551,41545,3137],{"class":583},[551,41547,1273],{"class":587},[551,41549,28622],{"class":594},[551,41551,1279],{"class":587},[551,41553,671],{"class":583},[551,41555,674],{"class":587},[551,41557,28108],{"class":561},[551,41559,680],{"class":587},[551,41561,41562,41564,41566,41569,41571,41573,41575,41577],{"class":553,"line":601},[551,41563,584],{"class":583},[551,41565,1273],{"class":587},[551,41567,41568],{"class":594}," IconAlignLeft",[551,41570,1279],{"class":587},[551,41572,671],{"class":583},[551,41574,674],{"class":587},[551,41576,17314],{"class":561},[551,41578,680],{"class":587},[551,41580,41581,41583,41585,41587,41589,41591],{"class":553,"line":609},[551,41582,584],{"class":583},[551,41584,28322],{"class":594},[551,41586,1259],{"class":583},[551,41588,674],{"class":587},[551,41590,22171],{"class":561},[551,41592,680],{"class":587},[551,41594,41595,41597,41599,41601,41603,41605,41607,41609],{"class":553,"line":617},[551,41596,584],{"class":583},[551,41598,1273],{"class":587},[551,41600,3427],{"class":594},[551,41602,1279],{"class":587},[551,41604,671],{"class":583},[551,41606,674],{"class":587},[551,41608,728],{"class":561},[551,41610,680],{"class":587},[551,41612,41613,41615,41617,41619,41621,41623,41625,41627],{"class":553,"line":625},[551,41614,584],{"class":583},[551,41616,1273],{"class":587},[551,41618,41476],{"class":594},[551,41620,1279],{"class":587},[551,41622,671],{"class":583},[551,41624,674],{"class":587},[551,41626,41485],{"class":561},[551,41628,680],{"class":587},[551,41630,41631,41633,41635,41637,41639,41641,41643,41645,41647,41649],{"class":553,"line":633},[551,41632,584],{"class":583},[551,41634,1273],{"class":587},[551,41636,28094],{"class":594},[551,41638,3348],{"class":587},[551,41640,28099],{"class":594},[551,41642,1279],{"class":587},[551,41644,671],{"class":583},[551,41646,674],{"class":587},[551,41648,28108],{"class":561},[551,41650,680],{"class":587},[551,41652,41653,41655,41657,41659,41661,41663,41665,41667],{"class":553,"line":641},[551,41654,584],{"class":583},[551,41656,1273],{"class":587},[551,41658,28119],{"class":594},[551,41660,1279],{"class":587},[551,41662,671],{"class":583},[551,41664,674],{"class":587},[551,41666,28128],{"class":561},[551,41668,680],{"class":587},[551,41670,41671],{"class":553,"line":649},[551,41672,1293],{"emptyLinePlaceholder":526},[551,41674,41675,41677,41679,41681,41683,41685,41687,41689,41691],{"class":553,"line":657},[551,41676,3321],{"class":753},[551,41678,3422],{"class":594},[551,41680,757],{"class":587},[551,41682,3427],{"class":1154},[551,41684,1158],{"class":594},[551,41686,1214],{"class":587},[551,41688,38427],{"class":561},[551,41690,1214],{"class":587},[551,41692,1222],{"class":594},[551,41694,41695],{"class":553,"line":665},[551,41696,1293],{"emptyLinePlaceholder":526},[551,41698,41699,41701,41703,41705,41708,41710,41712,41714,41716,41718,41720,41722,41724,41726,41728,41730,41732,41734,41736,41738,41740],{"class":553,"line":901},[551,41700,3321],{"class":753},[551,41702,32337],{"class":594},[551,41704,757],{"class":587},[551,41706,41707],{"class":594}," [TextAlign",[551,41709,1206],{"class":587},[551,41711,32347],{"class":1154},[551,41713,1158],{"class":594},[551,41715,4243],{"class":587},[551,41717,27560],{"class":738},[551,41719,1169],{"class":587},[551,41721,9070],{"class":594},[551,41723,1214],{"class":587},[551,41725,33758],{"class":561},[551,41727,1214],{"class":587},[551,41729,3348],{"class":587},[551,41731,674],{"class":587},[551,41733,28696],{"class":561},[551,41735,1214],{"class":587},[551,41737,3398],{"class":594},[551,41739,668],{"class":587},[551,41741,32354],{"class":594},[551,41743,41744,41746,41748,41750,41752,41754,41756],{"class":553,"line":910},[551,41745,3321],{"class":753},[551,41747,32383],{"class":594},[551,41749,1169],{"class":587},[551,41751,28622],{"class":557},[551,41753,32390],{"class":594},[551,41755,757],{"class":587},[551,41757,1315],{"class":594},[551,41759,41760,41762,41764],{"class":553,"line":920},[551,41761,28832],{"class":587},[551,41763,28232],{"class":594},[551,41765,598],{"class":587},[551,41767,41768,41770,41772,41774,41776,41778,41781,41783,41785,41787,41789,41791,41793,41795,41797,41799,41802,41804,41806],{"class":553,"line":930},[551,41769,28841],{"class":594},[551,41771,4243],{"class":587},[551,41773,38490],{"class":738},[551,41775,1169],{"class":587},[551,41777,674],{"class":587},[551,41779,41780],{"class":561},"textAlign",[551,41782,1214],{"class":587},[551,41784,3348],{"class":587},[551,41786,32423],{"class":738},[551,41788,1169],{"class":587},[551,41790,41568],{"class":594},[551,41792,3348],{"class":587},[551,41794,28860],{"class":738},[551,41796,1169],{"class":587},[551,41798,674],{"class":587},[551,41800,41801],{"class":561},"對齊",[551,41803,1214],{"class":587},[551,41805,1279],{"class":587},[551,41807,9080],{"class":594},[551,41809,41810],{"class":553,"line":3536},[551,41811,9080],{"class":594},[551,41813,41814,41816,41818],{"class":553,"line":4422},[551,41815,784],{"class":587},[551,41817,3276],{"class":738},[551,41819,742],{"class":587},[551,41821,41822],{"class":553,"line":6194},[551,41823,1293],{"emptyLinePlaceholder":526},[551,41825,41826,41828,41830],{"class":553,"line":6204},[551,41827,735],{"class":587},[551,41829,739],{"class":738},[551,41831,742],{"class":587},[551,41833,41834,41836,41838,41840,41842,41844,41846,41848,41850,41852,41854,41856,41858,41860,41862,41864,41866,41868],{"class":553,"line":6223},[551,41835,747],{"class":587},[551,41837,28243],{"class":738},[551,41839,3595],{"class":753},[551,41841,757],{"class":587},[551,41843,760],{"class":587},[551,41845,30664],{"class":561},[551,41847,760],{"class":587},[551,41849,2867],{"class":753},[551,41851,757],{"class":587},[551,41853,760],{"class":587},[551,41855,2720],{"class":561},[551,41857,760],{"class":587},[551,41859,30679],{"class":753},[551,41861,757],{"class":587},[551,41863,760],{"class":587},[551,41865,18579],{"class":561},[551,41867,760],{"class":587},[551,41869,742],{"class":587},[551,41871,41872,41874,41876,41878,41880,41882,41884,41886],{"class":553,"line":6233},[551,41873,772],{"class":587},[551,41875,28208],{"class":738},[551,41877,15260],{"class":753},[551,41879,757],{"class":587},[551,41881,760],{"class":587},[551,41883,7361],{"class":561},[551,41885,760],{"class":587},[551,41887,742],{"class":587},[551,41889,41890,41892,41894,41896,41898],{"class":553,"line":6242},[551,41891,802],{"class":587},[551,41893,739],{"class":738},[551,41895,8713],{"class":587},[551,41897,41780],{"class":753},[551,41899,742],{"class":587},[551,41901,41902,41904,41907,41909,41911,41913,41915,41917],{"class":553,"line":6251},[551,41903,812],{"class":587},[551,41905,41906],{"class":738},"admin-editor-text-align-button",[551,41908,28211],{"class":753},[551,41910,757],{"class":587},[551,41912,760],{"class":587},[551,41914,18395],{"class":561},[551,41916,760],{"class":587},[551,41918,1449],{"class":587},[551,41920,41921,41923,41925],{"class":553,"line":524},[551,41922,849],{"class":587},[551,41924,739],{"class":738},[551,41926,742],{"class":587},[551,41928,41929,41931,41933],{"class":553,"line":6864},[551,41930,913],{"class":587},[551,41932,28208],{"class":738},[551,41934,742],{"class":587},[551,41936,41937,41939,41941],{"class":553,"line":6873},[551,41938,923],{"class":587},[551,41940,28243],{"class":738},[551,41942,742],{"class":587},[551,41944,41945,41947,41949],{"class":553,"line":6894},[551,41946,784],{"class":587},[551,41948,739],{"class":738},[551,41950,742],{"class":587},[705,41952,36592,41953,41956,41957,41960],{},[548,41954,41955],{},"setTextAlign('left' | 'center' | 'right')"," command 即可用，",[548,41958,41959],{},"AdminEditorTextAlignButton"," 每顆按鈕會依游標所在段落的對齊狀態高亮。",[536,41962,32587],{"id":32586},[705,41964,41965,41966,2466],{},"需要新增可對齊的 node type 或改預設對齊，自行用 ",[548,41967,41968],{},"TextAlign.configure({...})",[539,41970,41972],{"className":726,"code":41971,"language":728,"meta":546,"style":546},"\u003Cscript setup lang=\"ts\">\nimport TextAlign from '@tiptap\u002Fextension-text-align'\n\nconst customTextAlign = TextAlign.configure({\n  types: ['heading', 'paragraph'],\n  defaultAlignment: 'left'\n})\n\u003C\u002Fscript>\n",[548,41973,41974,41994,42008,42012,42032,42059,42073,42079],{"__ignoreMap":546},[551,41975,41976,41978,41980,41982,41984,41986,41988,41990,41992],{"class":553,"line":554},[551,41977,735],{"class":587},[551,41979,3276],{"class":738},[551,41981,3279],{"class":753},[551,41983,3282],{"class":753},[551,41985,757],{"class":587},[551,41987,760],{"class":587},[551,41989,576],{"class":561},[551,41991,760],{"class":587},[551,41993,742],{"class":587},[551,41995,41996,41998,42000,42002,42004,42006],{"class":553,"line":591},[551,41997,584],{"class":583},[551,41999,28322],{"class":594},[551,42001,1259],{"class":583},[551,42003,674],{"class":587},[551,42005,22171],{"class":561},[551,42007,680],{"class":587},[551,42009,42010],{"class":553,"line":601},[551,42011,1293],{"emptyLinePlaceholder":526},[551,42013,42014,42016,42019,42021,42024,42026,42028,42030],{"class":553,"line":609},[551,42015,3321],{"class":753},[551,42017,42018],{"class":594}," customTextAlign ",[551,42020,757],{"class":587},[551,42022,42023],{"class":594}," TextAlign",[551,42025,1206],{"class":587},[551,42027,32347],{"class":1154},[551,42029,1158],{"class":594},[551,42031,1161],{"class":587},[551,42033,42034,42037,42039,42041,42043,42045,42047,42049,42051,42053,42055,42057],{"class":553,"line":617},[551,42035,42036],{"class":738},"  types",[551,42038,1169],{"class":587},[551,42040,9070],{"class":594},[551,42042,1214],{"class":587},[551,42044,33758],{"class":561},[551,42046,1214],{"class":587},[551,42048,3348],{"class":587},[551,42050,674],{"class":587},[551,42052,28696],{"class":561},[551,42054,1214],{"class":587},[551,42056,3452],{"class":594},[551,42058,598],{"class":587},[551,42060,42061,42064,42066,42068,42071],{"class":553,"line":625},[551,42062,42063],{"class":738},"  defaultAlignment",[551,42065,1169],{"class":587},[551,42067,674],{"class":587},[551,42069,42070],{"class":561},"left",[551,42072,680],{"class":587},[551,42074,42075,42077],{"class":553,"line":633},[551,42076,668],{"class":587},[551,42078,1222],{"class":594},[551,42080,42081,42083,42085],{"class":553,"line":641},[551,42082,784],{"class":587},[551,42084,3276],{"class":738},[551,42086,742],{"class":587},[536,42088,720],{"id":719},[692,42090,41906],{"id":41906},[940,42092],{"component":41959},[705,42094,42095,32744,42097,713],{},[548,42096,22171],{},[697,42098,42101],{"href":42099,"rel":42100},"https:\u002F\u002Ftiptap.dev\u002Fdocs\u002Feditor\u002Fextensions\u002Ffunctionality\u002Ftextalign",[701],"tiptap text-align 官方文件",[536,42103,1556],{"id":1556},[1558,42105,42106,42113],{},[1561,42107,42108,2466,42110,42112],{},[1135,42109,32758],{},[548,42111,277],{}," 無法於編輯器建立後補上，未注入時對齊按鈕不會生效。",[1561,42114,42115,42118,42119,713],{},[1135,42116,42117],{},"僅支援左\u002F中\u002F右三值","：不含 justify；需要 justify 請自行擴充按鈕與 ",[548,42120,42121],{},"TextAlign.configure",[536,42123,985],{"id":985},[987,42125],{"component":41959},[990,42127,42128],{},"html pre.shiki code .sBMFI, html code.shiki .sBMFI{--shiki-light:#E2931D;--shiki-default:#FFCB6B;--shiki-dark:#FFCB6B}html pre.shiki code .sfazB, html code.shiki .sfazB{--shiki-light:#91B859;--shiki-default:#C3E88D;--shiki-dark:#C3E88D}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 pre.shiki code .s7zQu, html code.shiki .s7zQu{--shiki-light:#39ADB5;--shiki-light-font-style:italic;--shiki-default:#89DDFF;--shiki-default-font-style:italic;--shiki-dark:#89DDFF;--shiki-dark-font-style:italic}html pre.shiki code .sTEyZ, html code.shiki .sTEyZ{--shiki-light:#90A4AE;--shiki-default:#EEFFFF;--shiki-dark:#BABED8}html pre.shiki code .sMK4o, html code.shiki .sMK4o{--shiki-light:#39ADB5;--shiki-default:#89DDFF;--shiki-dark:#89DDFF}html pre.shiki code .swJcz, html code.shiki .swJcz{--shiki-light:#E53935;--shiki-default:#F07178;--shiki-dark:#F07178}html pre.shiki code .spNyl, html code.shiki .spNyl{--shiki-light:#9C3EDA;--shiki-default:#C792EA;--shiki-dark:#C792EA}html pre.shiki code .s2Zo4, html code.shiki .s2Zo4{--shiki-light:#6182B8;--shiki-default:#82AAFF;--shiki-dark:#82AAFF}",{"title":546,"searchDepth":601,"depth":601,"links":42130},[42131,42132,42133,42134,42137,42138],{"id":507,"depth":591,"text":507},{"id":683,"depth":591,"text":683},{"id":32586,"depth":591,"text":32587},{"id":719,"depth":591,"text":720,"children":42135},[42136],{"id":41906,"depth":601,"text":41906},{"id":1556,"depth":591,"text":1556},{"id":985,"depth":591,"text":985},"toolbar 對齊按鈕；標題／段落左中右。",{"doc":42099},{},{"title":478,"description":42139},"H8gYub1Kdoez9zxk4fNosYa6goKM1FplvNqBQoaBkZc",{"id":42145,"title":482,"body":42146,"component":18,"description":42495,"extension":1015,"links":42496,"meta":42497,"navigation":526,"new":18,"path":483,"seo":42498,"stem":484,"wrapperKind":19,"__hash__":42499},"docs\u002Fdocs\u002Feditor\u002F4.addons\u002F6.placeholder.md",{"type":533,"value":42147,"toc":42489},[42148,42150,42164,42185,42198,42200,42203,42425,42429,42443,42468,42475,42477,42486],[536,42149,507],{"id":507},[539,42151,42153],{"className":541,"code":42152,"filename":543,"language":544,"meta":545,"style":546},"pnpm add @tiptap\u002Fextension-placeholder\n",[548,42154,42155],{"__ignoreMap":546},[551,42156,42157,42159,42161],{"class":553,"line":554},[551,42158,558],{"class":557},[551,42160,568],{"class":561},[551,42162,42163],{"class":561}," @tiptap\u002Fextension-placeholder\n",[539,42165,42167],{"className":574,"code":42166,"language":576,"meta":546,"style":546},"import Placeholder from '@tiptap\u002Fextension-placeholder'\n",[548,42168,42169],{"__ignoreMap":546},[551,42170,42171,42173,42176,42178,42180,42183],{"class":553,"line":554},[551,42172,584],{"class":583},[551,42174,42175],{"class":594}," Placeholder ",[551,42177,1259],{"class":583},[551,42179,674],{"class":587},[551,42181,42182],{"class":561},"@tiptap\u002Fextension-placeholder",[551,42184,680],{"class":587},[705,42186,42187,42188,2477,42190,2470,42192,42194,42195,42197],{},"placeholder 來自 tiptap ",[548,42189,309],{},[548,42191,28243],{},[548,42193,29793],{}," 不內建，需自行安裝並注入 ",[548,42196,28043],{},"。空狀態視覺 CSS 依下方片段自行套用。",[536,42199,683],{"id":683},[685,42201],{"name":42202},"EditorPlaceholderDemo",[539,42204,42206],{"className":726,"code":42205,"language":728,"meta":546,"style":546},"\u003Cscript setup lang=\"ts\">\nimport Placeholder from '@tiptap\u002Fextension-placeholder'\nimport { ref } from 'vue'\nimport { AdminRichEditor } from '@\u002Fregistry\u002Fadmin\u002Fui\u002Frich-editor'\n\nconst value = ref('')\n\n\u002F\u002F 空狀態 CSS 經 :ui.base 套到 editor content 元素\nconst placeholderClass = `\n  [&_p.is-editor-empty:first-child]:before:pointer-events-none\n  [&_p.is-editor-empty:first-child]:before:float-left\n  [&_p.is-editor-empty:first-child]:before:h-0\n  [&_p.is-editor-empty:first-child]:before:text-text-40\n  [&_p.is-editor-empty:first-child]:before:content-[attr(data-placeholder)]\n`\n\u003C\u002Fscript>\n\n\u003Ctemplate>\n  \u003Cadmin-rich-editor\n    v-model=\"value\"\n    :extensions=\"[Placeholder.configure({ placeholder: '開始輸入內容…' })]\"\n    :ui=\"{ base: placeholderClass }\"\n  \u002F>\n\u003C\u002Ftemplate>\n",[548,42207,42208,42228,42242,42260,42278,42282,42298,42302,42307,42319,42324,42329,42334,42339,42344,42349,42357,42361,42369,42375,42387,42400,42413,42417],{"__ignoreMap":546},[551,42209,42210,42212,42214,42216,42218,42220,42222,42224,42226],{"class":553,"line":554},[551,42211,735],{"class":587},[551,42213,3276],{"class":738},[551,42215,3279],{"class":753},[551,42217,3282],{"class":753},[551,42219,757],{"class":587},[551,42221,760],{"class":587},[551,42223,576],{"class":561},[551,42225,760],{"class":587},[551,42227,742],{"class":587},[551,42229,42230,42232,42234,42236,42238,42240],{"class":553,"line":591},[551,42231,584],{"class":583},[551,42233,42175],{"class":594},[551,42235,1259],{"class":583},[551,42237,674],{"class":587},[551,42239,42182],{"class":561},[551,42241,680],{"class":587},[551,42243,42244,42246,42248,42250,42252,42254,42256,42258],{"class":553,"line":601},[551,42245,584],{"class":583},[551,42247,1273],{"class":587},[551,42249,3427],{"class":594},[551,42251,1279],{"class":587},[551,42253,671],{"class":583},[551,42255,674],{"class":587},[551,42257,728],{"class":561},[551,42259,680],{"class":587},[551,42261,42262,42264,42266,42268,42270,42272,42274,42276],{"class":553,"line":609},[551,42263,584],{"class":583},[551,42265,1273],{"class":587},[551,42267,28119],{"class":594},[551,42269,1279],{"class":587},[551,42271,671],{"class":583},[551,42273,674],{"class":587},[551,42275,28128],{"class":561},[551,42277,680],{"class":587},[551,42279,42280],{"class":553,"line":617},[551,42281,1293],{"emptyLinePlaceholder":526},[551,42283,42284,42286,42288,42290,42292,42294,42296],{"class":553,"line":625},[551,42285,3321],{"class":753},[551,42287,3422],{"class":594},[551,42289,757],{"class":587},[551,42291,3427],{"class":1154},[551,42293,1158],{"class":594},[551,42295,8639],{"class":587},[551,42297,1222],{"class":594},[551,42299,42300],{"class":553,"line":633},[551,42301,1293],{"emptyLinePlaceholder":526},[551,42303,42304],{"class":553,"line":641},[551,42305,42306],{"class":4831},"\u002F\u002F 空狀態 CSS 經 :ui.base 套到 editor content 元素\n",[551,42308,42309,42311,42314,42316],{"class":553,"line":649},[551,42310,3321],{"class":753},[551,42312,42313],{"class":594}," placeholderClass ",[551,42315,757],{"class":587},[551,42317,42318],{"class":587}," `\n",[551,42320,42321],{"class":553,"line":657},[551,42322,42323],{"class":561},"  [&_p.is-editor-empty:first-child]:before:pointer-events-none\n",[551,42325,42326],{"class":553,"line":665},[551,42327,42328],{"class":561},"  [&_p.is-editor-empty:first-child]:before:float-left\n",[551,42330,42331],{"class":553,"line":901},[551,42332,42333],{"class":561},"  [&_p.is-editor-empty:first-child]:before:h-0\n",[551,42335,42336],{"class":553,"line":910},[551,42337,42338],{"class":561},"  [&_p.is-editor-empty:first-child]:before:text-text-40\n",[551,42340,42341],{"class":553,"line":920},[551,42342,42343],{"class":561},"  [&_p.is-editor-empty:first-child]:before:content-[attr(data-placeholder)]\n",[551,42345,42346],{"class":553,"line":930},[551,42347,42348],{"class":587},"`\n",[551,42350,42351,42353,42355],{"class":553,"line":3536},[551,42352,784],{"class":587},[551,42354,3276],{"class":738},[551,42356,742],{"class":587},[551,42358,42359],{"class":553,"line":4422},[551,42360,1293],{"emptyLinePlaceholder":526},[551,42362,42363,42365,42367],{"class":553,"line":6194},[551,42364,735],{"class":587},[551,42366,739],{"class":738},[551,42368,742],{"class":587},[551,42370,42371,42373],{"class":553,"line":6204},[551,42372,747],{"class":587},[551,42374,28157],{"class":738},[551,42376,42377,42379,42381,42383,42385],{"class":553,"line":6223},[551,42378,4896],{"class":753},[551,42380,757],{"class":587},[551,42382,760],{"class":587},[551,42384,2720],{"class":561},[551,42386,4281],{"class":587},[551,42388,42389,42391,42393,42395,42398],{"class":553,"line":6233},[551,42390,28188],{"class":753},[551,42392,757],{"class":587},[551,42394,760],{"class":587},[551,42396,42397],{"class":561},"[Placeholder.configure({ placeholder: '開始輸入內容…' })]",[551,42399,4281],{"class":587},[551,42401,42402,42404,42406,42408,42411],{"class":553,"line":6242},[551,42403,39868],{"class":753},[551,42405,757],{"class":587},[551,42407,760],{"class":587},[551,42409,42410],{"class":561},"{ base: placeholderClass }",[551,42412,4281],{"class":587},[551,42414,42415],{"class":553,"line":6251},[551,42416,4951],{"class":587},[551,42418,42419,42421,42423],{"class":553,"line":524},[551,42420,784],{"class":587},[551,42422,739],{"class":738},[551,42424,742],{"class":587},[536,42426,42428],{"id":42427},"空狀態-css-說明","空狀態 CSS 說明",[705,42430,42431,42432,42435,42436,42439,42440,42442],{},"Placeholder extension 會在空節點加上 ",[548,42433,42434],{},"is-editor-empty"," class，並把 placeholder 文字放在 ",[548,42437,42438],{},"data-placeholder"," attr。上方片段以 ",[548,42441,23826],{}," 偽元素把該 attr 渲染出來。",[1558,42444,42445,42455],{},[1561,42446,42447,42450,42451,42454],{},[1135,42448,42449],{},"僅首行","：用 ",[548,42452,42453],{},"p.is-editor-empty:first-child","（如範例）",[1561,42456,42457,42460,42461,42464,42465],{},[1135,42458,42459],{},"每一空行","：改用 ",[548,42462,42463],{},".is-empty","，並改注入 ",[548,42466,42467],{},"Placeholder.configure({ showOnlyCurrent: false })",[705,42469,42470,42471,42474],{},"顏色使用 admin design token ",[548,42472,42473],{},"text-40","，可依需要調整。",[536,42476,720],{"id":719},[705,42478,42479,32744,42481,713],{},[548,42480,42182],{},[697,42482,42485],{"href":42483,"rel":42484},"https:\u002F\u002Ftiptap.dev\u002Fdocs\u002Feditor\u002Fextensions\u002Ffunctionality\u002Fplaceholder",[701],"tiptap placeholder 官方文件",[990,42487,42488],{},"html pre.shiki code .sBMFI, html code.shiki .sBMFI{--shiki-light:#E2931D;--shiki-default:#FFCB6B;--shiki-dark:#FFCB6B}html pre.shiki code .sfazB, html code.shiki .sfazB{--shiki-light:#91B859;--shiki-default:#C3E88D;--shiki-dark:#C3E88D}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 pre.shiki code .s7zQu, html code.shiki .s7zQu{--shiki-light:#39ADB5;--shiki-light-font-style:italic;--shiki-default:#89DDFF;--shiki-default-font-style:italic;--shiki-dark:#89DDFF;--shiki-dark-font-style:italic}html pre.shiki code .sTEyZ, html code.shiki .sTEyZ{--shiki-light:#90A4AE;--shiki-default:#EEFFFF;--shiki-dark:#BABED8}html pre.shiki code .sMK4o, html code.shiki .sMK4o{--shiki-light:#39ADB5;--shiki-default:#89DDFF;--shiki-dark:#89DDFF}html pre.shiki code .swJcz, html code.shiki .swJcz{--shiki-light:#E53935;--shiki-default:#F07178;--shiki-dark:#F07178}html pre.shiki code .spNyl, html code.shiki .spNyl{--shiki-light:#9C3EDA;--shiki-default:#C792EA;--shiki-dark:#C792EA}html pre.shiki code .s2Zo4, html code.shiki .s2Zo4{--shiki-light:#6182B8;--shiki-default:#82AAFF;--shiki-dark:#82AAFF}html pre.shiki code .sHwdD, html code.shiki .sHwdD{--shiki-light:#90A4AE;--shiki-light-font-style:italic;--shiki-default:#546E7A;--shiki-default-font-style:italic;--shiki-dark:#676E95;--shiki-dark-font-style:italic}",{"title":546,"searchDepth":601,"depth":601,"links":42490},[42491,42492,42493,42494],{"id":507,"depth":591,"text":507},{"id":683,"depth":591,"text":683},{"id":42427,"depth":591,"text":42428},{"id":719,"depth":591,"text":720},"內容為空時顯示提示文字。",{"doc":42483},{},{"title":482,"description":42495},"RHGrkcmBZRWZbpLXrX5yokx4J40IOWelKs-pmOlQMts",{"id":42501,"title":486,"body":42502,"component":18,"description":43136,"extension":1015,"links":43137,"meta":43138,"navigation":526,"new":18,"path":487,"seo":43139,"stem":488,"wrapperKind":19,"__hash__":43140},"docs\u002Fdocs\u002Feditor\u002F4.addons\u002F7.task-list.md",{"type":533,"value":42503,"toc":43130},[42504,42506,42536,42601,42625,42627,42630,43071,43073,43102,43104,43115,43117,43128],[536,42505,507],{"id":507},[539,42507,42509],{"className":541,"code":42508,"filename":543,"language":544,"meta":545,"style":546},"pnpm dlx shadcn-vue add @admin\u002Feditor-task-list\npnpm add @tiptap\u002Fextension-task-list @tiptap\u002Fextension-task-item\n",[548,42510,42511,42524],{"__ignoreMap":546},[551,42512,42513,42515,42517,42519,42521],{"class":553,"line":554},[551,42514,558],{"class":557},[551,42516,562],{"class":561},[551,42518,565],{"class":561},[551,42520,568],{"class":561},[551,42522,42523],{"class":561}," @admin\u002Feditor-task-list\n",[551,42525,42526,42528,42530,42533],{"class":553,"line":591},[551,42527,558],{"class":557},[551,42529,568],{"class":561},[551,42531,42532],{"class":561}," @tiptap\u002Fextension-task-list",[551,42534,42535],{"class":561}," @tiptap\u002Fextension-task-item\n",[539,42537,42539],{"className":574,"code":42538,"language":576,"meta":546,"style":546},"import { TaskItem } from '@tiptap\u002Fextension-task-item'\nimport { TaskList } from '@tiptap\u002Fextension-task-list'\nimport { createTaskListHandler } from '@\u002Fregistry\u002Fadmin\u002Fui\u002Feditor-task-list'\n",[548,42540,42541,42561,42581],{"__ignoreMap":546},[551,42542,42543,42545,42547,42550,42552,42554,42556,42559],{"class":553,"line":554},[551,42544,584],{"class":583},[551,42546,1273],{"class":587},[551,42548,42549],{"class":594}," TaskItem",[551,42551,1279],{"class":587},[551,42553,671],{"class":583},[551,42555,674],{"class":587},[551,42557,42558],{"class":561},"@tiptap\u002Fextension-task-item",[551,42560,680],{"class":587},[551,42562,42563,42565,42567,42570,42572,42574,42576,42579],{"class":553,"line":591},[551,42564,584],{"class":583},[551,42566,1273],{"class":587},[551,42568,42569],{"class":594}," TaskList",[551,42571,1279],{"class":587},[551,42573,671],{"class":583},[551,42575,674],{"class":587},[551,42577,42578],{"class":561},"@tiptap\u002Fextension-task-list",[551,42580,680],{"class":587},[551,42582,42583,42585,42587,42590,42592,42594,42596,42599],{"class":553,"line":601},[551,42584,584],{"class":583},[551,42586,1273],{"class":587},[551,42588,42589],{"class":594}," createTaskListHandler",[551,42591,1279],{"class":587},[551,42593,671],{"class":583},[551,42595,674],{"class":587},[551,42597,42598],{"class":561},"@\u002Fregistry\u002Fadmin\u002Fui\u002Feditor-task-list",[551,42600,680],{"class":587},[705,42602,32115,42603,42606,42607,2470,42609,32122,42611,1613,42613,32126,42616,14865,42618,32131,42620,32134,42622,32138],{},[548,42604,42605],{},"createTaskListHandler","；待辦清單能力來自 tiptap ",[548,42608,265],{},[548,42610,269],{},[548,42612,265],{},[548,42614,42615],{},"TaskItem.configure({ nested: true })",[548,42617,28043],{},[548,42619,42605],{},[548,42621,28539],{},[548,42623,42624],{},"{ kind: 'taskList' }",[536,42626,683],{"id":683},[685,42628],{"name":42629},"EditorTaskListDemo",[539,42631,42633],{"className":726,"code":42632,"language":728,"meta":546,"style":546},"\u003Cscript setup lang=\"ts\">\nimport type { EditorToolbarItem } from '@\u002Fregistry\u002Fadmin\u002Fui\u002Feditor-toolbar'\nimport { IconListCheck } from '@tabler\u002Ficons-vue'\nimport { TaskItem } from '@tiptap\u002Fextension-task-item'\nimport { TaskList } from '@tiptap\u002Fextension-task-list'\nimport { ref } from 'vue'\nimport { createTaskListHandler } from '@\u002Fregistry\u002Fadmin\u002Fui\u002Feditor-task-list'\nimport { AdminEditorToolbar, defaultEditorItems } from '@\u002Fregistry\u002Fadmin\u002Fui\u002Feditor-toolbar'\nimport { AdminRichEditor } from '@\u002Fregistry\u002Fadmin\u002Fui\u002Frich-editor'\n\nconst value = ref('\u003Cul data-type=\"taskList\">\u003Cli data-type=\"taskItem\" data-checked=\"true\">已完成\u003C\u002Fli>\u003Cli data-type=\"taskItem\" data-checked=\"false\">待辦\u003C\u002Fli>\u003C\u002Ful>')\n\nconst extensions = [TaskList, TaskItem.configure({ nested: true })]\nconst handlers = { taskList: createTaskListHandler() }\nconst items: EditorToolbarItem[][] = [\n  ...defaultEditorItems,\n  [{ kind: 'taskList', icon: IconListCheck, label: '待辦清單', tooltip: { text: '待辦清單' } }]\n]\n\u003C\u002Fscript>\n\n\u003Ctemplate>\n  \u003Cadmin-rich-editor v-model=\"value\" :extensions=\"extensions\" :handlers=\"handlers\">\n    \u003Cadmin-editor-toolbar :items=\"items\" \u002F>\n  \u003C\u002Fadmin-rich-editor>\n\u003C\u002Ftemplate>\n",[548,42634,42635,42655,42675,42694,42712,42730,42748,42766,42788,42806,42810,42831,42835,42869,42890,42906,42914,42975,42979,42987,42991,42999,43037,43055,43063],{"__ignoreMap":546},[551,42636,42637,42639,42641,42643,42645,42647,42649,42651,42653],{"class":553,"line":554},[551,42638,735],{"class":587},[551,42640,3276],{"class":738},[551,42642,3279],{"class":753},[551,42644,3282],{"class":753},[551,42646,757],{"class":587},[551,42648,760],{"class":587},[551,42650,576],{"class":561},[551,42652,760],{"class":587},[551,42654,742],{"class":587},[551,42656,42657,42659,42661,42663,42665,42667,42669,42671,42673],{"class":553,"line":591},[551,42658,584],{"class":583},[551,42660,3137],{"class":583},[551,42662,1273],{"class":587},[551,42664,28622],{"class":594},[551,42666,1279],{"class":587},[551,42668,671],{"class":583},[551,42670,674],{"class":587},[551,42672,28108],{"class":561},[551,42674,680],{"class":587},[551,42676,42677,42679,42681,42684,42686,42688,42690,42692],{"class":553,"line":601},[551,42678,584],{"class":583},[551,42680,1273],{"class":587},[551,42682,42683],{"class":594}," IconListCheck",[551,42685,1279],{"class":587},[551,42687,671],{"class":583},[551,42689,674],{"class":587},[551,42691,17314],{"class":561},[551,42693,680],{"class":587},[551,42695,42696,42698,42700,42702,42704,42706,42708,42710],{"class":553,"line":609},[551,42697,584],{"class":583},[551,42699,1273],{"class":587},[551,42701,42549],{"class":594},[551,42703,1279],{"class":587},[551,42705,671],{"class":583},[551,42707,674],{"class":587},[551,42709,42558],{"class":561},[551,42711,680],{"class":587},[551,42713,42714,42716,42718,42720,42722,42724,42726,42728],{"class":553,"line":617},[551,42715,584],{"class":583},[551,42717,1273],{"class":587},[551,42719,42569],{"class":594},[551,42721,1279],{"class":587},[551,42723,671],{"class":583},[551,42725,674],{"class":587},[551,42727,42578],{"class":561},[551,42729,680],{"class":587},[551,42731,42732,42734,42736,42738,42740,42742,42744,42746],{"class":553,"line":625},[551,42733,584],{"class":583},[551,42735,1273],{"class":587},[551,42737,3427],{"class":594},[551,42739,1279],{"class":587},[551,42741,671],{"class":583},[551,42743,674],{"class":587},[551,42745,728],{"class":561},[551,42747,680],{"class":587},[551,42749,42750,42752,42754,42756,42758,42760,42762,42764],{"class":553,"line":633},[551,42751,584],{"class":583},[551,42753,1273],{"class":587},[551,42755,42589],{"class":594},[551,42757,1279],{"class":587},[551,42759,671],{"class":583},[551,42761,674],{"class":587},[551,42763,42598],{"class":561},[551,42765,680],{"class":587},[551,42767,42768,42770,42772,42774,42776,42778,42780,42782,42784,42786],{"class":553,"line":641},[551,42769,584],{"class":583},[551,42771,1273],{"class":587},[551,42773,28094],{"class":594},[551,42775,3348],{"class":587},[551,42777,28099],{"class":594},[551,42779,1279],{"class":587},[551,42781,671],{"class":583},[551,42783,674],{"class":587},[551,42785,28108],{"class":561},[551,42787,680],{"class":587},[551,42789,42790,42792,42794,42796,42798,42800,42802,42804],{"class":553,"line":649},[551,42791,584],{"class":583},[551,42793,1273],{"class":587},[551,42795,28119],{"class":594},[551,42797,1279],{"class":587},[551,42799,671],{"class":583},[551,42801,674],{"class":587},[551,42803,28128],{"class":561},[551,42805,680],{"class":587},[551,42807,42808],{"class":553,"line":657},[551,42809,1293],{"emptyLinePlaceholder":526},[551,42811,42812,42814,42816,42818,42820,42822,42824,42827,42829],{"class":553,"line":665},[551,42813,3321],{"class":753},[551,42815,3422],{"class":594},[551,42817,757],{"class":587},[551,42819,3427],{"class":1154},[551,42821,1158],{"class":594},[551,42823,1214],{"class":587},[551,42825,42826],{"class":561},"\u003Cul data-type=\"taskList\">\u003Cli data-type=\"taskItem\" data-checked=\"true\">已完成\u003C\u002Fli>\u003Cli data-type=\"taskItem\" data-checked=\"false\">待辦\u003C\u002Fli>\u003C\u002Ful>",[551,42828,1214],{"class":587},[551,42830,1222],{"class":594},[551,42832,42833],{"class":553,"line":901},[551,42834,1293],{"emptyLinePlaceholder":526},[551,42836,42837,42839,42841,42843,42846,42848,42850,42852,42854,42856,42858,42861,42863,42865,42867],{"class":553,"line":910},[551,42838,3321],{"class":753},[551,42840,32337],{"class":594},[551,42842,757],{"class":587},[551,42844,42845],{"class":594}," [TaskList",[551,42847,3348],{"class":587},[551,42849,42549],{"class":594},[551,42851,1206],{"class":587},[551,42853,32347],{"class":1154},[551,42855,1158],{"class":594},[551,42857,4243],{"class":587},[551,42859,42860],{"class":738}," nested",[551,42862,1169],{"class":587},[551,42864,28714],{"class":17983},[551,42866,1279],{"class":587},[551,42868,32354],{"class":594},[551,42870,42871,42873,42875,42877,42879,42882,42884,42886,42888],{"class":553,"line":920},[551,42872,3321],{"class":753},[551,42874,28643],{"class":594},[551,42876,757],{"class":587},[551,42878,1273],{"class":587},[551,42880,42881],{"class":738}," taskList",[551,42883,1169],{"class":587},[551,42885,42589],{"class":1154},[551,42887,32374],{"class":594},[551,42889,10148],{"class":587},[551,42891,42892,42894,42896,42898,42900,42902,42904],{"class":553,"line":930},[551,42893,3321],{"class":753},[551,42895,32383],{"class":594},[551,42897,1169],{"class":587},[551,42899,28622],{"class":557},[551,42901,32390],{"class":594},[551,42903,757],{"class":587},[551,42905,1315],{"class":594},[551,42907,42908,42910,42912],{"class":553,"line":3536},[551,42909,28832],{"class":587},[551,42911,28232],{"class":594},[551,42913,598],{"class":587},[551,42915,42916,42918,42920,42922,42924,42926,42929,42931,42933,42935,42937,42939,42941,42943,42945,42947,42949,42951,42953,42955,42957,42959,42961,42963,42965,42967,42969,42971,42973],{"class":553,"line":4422},[551,42917,28841],{"class":594},[551,42919,4243],{"class":587},[551,42921,28846],{"class":738},[551,42923,1169],{"class":587},[551,42925,674],{"class":587},[551,42927,42928],{"class":561},"taskList",[551,42930,1214],{"class":587},[551,42932,3348],{"class":587},[551,42934,32423],{"class":738},[551,42936,1169],{"class":587},[551,42938,42683],{"class":594},[551,42940,3348],{"class":587},[551,42942,28860],{"class":738},[551,42944,1169],{"class":587},[551,42946,674],{"class":587},[551,42948,19154],{"class":561},[551,42950,1214],{"class":587},[551,42952,3348],{"class":587},[551,42954,28874],{"class":738},[551,42956,1169],{"class":587},[551,42958,1273],{"class":587},[551,42960,28881],{"class":738},[551,42962,1169],{"class":587},[551,42964,674],{"class":587},[551,42966,19154],{"class":561},[551,42968,1214],{"class":587},[551,42970,1279],{"class":587},[551,42972,1279],{"class":587},[551,42974,9080],{"class":594},[551,42976,42977],{"class":553,"line":6194},[551,42978,9080],{"class":594},[551,42980,42981,42983,42985],{"class":553,"line":6204},[551,42982,784],{"class":587},[551,42984,3276],{"class":738},[551,42986,742],{"class":587},[551,42988,42989],{"class":553,"line":6223},[551,42990,1293],{"emptyLinePlaceholder":526},[551,42992,42993,42995,42997],{"class":553,"line":6233},[551,42994,735],{"class":587},[551,42996,739],{"class":738},[551,42998,742],{"class":587},[551,43000,43001,43003,43005,43007,43009,43011,43013,43015,43017,43019,43021,43023,43025,43027,43029,43031,43033,43035],{"class":553,"line":6242},[551,43002,747],{"class":587},[551,43004,28243],{"class":738},[551,43006,2867],{"class":753},[551,43008,757],{"class":587},[551,43010,760],{"class":587},[551,43012,2720],{"class":561},[551,43014,760],{"class":587},[551,43016,30679],{"class":753},[551,43018,757],{"class":587},[551,43020,760],{"class":587},[551,43022,18579],{"class":561},[551,43024,760],{"class":587},[551,43026,28214],{"class":753},[551,43028,757],{"class":587},[551,43030,760],{"class":587},[551,43032,28221],{"class":561},[551,43034,760],{"class":587},[551,43036,742],{"class":587},[551,43038,43039,43041,43043,43045,43047,43049,43051,43053],{"class":553,"line":6251},[551,43040,772],{"class":587},[551,43042,28208],{"class":738},[551,43044,15260],{"class":753},[551,43046,757],{"class":587},[551,43048,760],{"class":587},[551,43050,7361],{"class":561},[551,43052,760],{"class":587},[551,43054,1449],{"class":587},[551,43056,43057,43059,43061],{"class":553,"line":524},[551,43058,923],{"class":587},[551,43060,28243],{"class":738},[551,43062,742],{"class":587},[551,43064,43065,43067,43069],{"class":553,"line":6864},[551,43066,784],{"class":587},[551,43068,739],{"class":738},[551,43070,742],{"class":587},[705,43072,32563],{},[1558,43074,43075,43081,43096],{},[1561,43076,43077,43080],{},[548,43078,43079],{},"toggleTaskList"," command 可用，toolbar 按鈕在其他 list type 上會自動互轉",[1561,43082,43083,1123,43086,43089,43090,43093,43094,19410],{},[548,43084,43085],{},"indent",[548,43087,43088],{},"outdent"," 對 task item 的縮排由 core 提供（",[548,43091,43092],{},"pickIndentTarget"," 涵蓋 ",[548,43095,34776],{},[1561,43097,43098,43099,19410],{},"待辦清單的勾選框與排版樣式不內含於 registry，由使用者依需求自套（見 demo 的 ",[548,43100,43101],{},"taskListContentClass",[536,43103,720],{"id":719},[705,43105,43106,1123,43108,32744,43110,713],{},[548,43107,42578],{},[548,43109,42558],{},[697,43111,43114],{"href":43112,"rel":43113},"https:\u002F\u002Ftiptap.dev\u002Fdocs\u002Feditor\u002Fextensions\u002Fnodes\u002Ftask-list",[701],"tiptap task-list 官方文件",[536,43116,1556],{"id":1556},[1558,43118,43119],{},[1561,43120,43121,2466,43123,1123,43125,43127],{},[1135,43122,32758],{},[548,43124,265],{},[548,43126,269],{}," 無法於編輯器建立後補上，未注入時待辦清單內容會被 parser 丟掉。",[990,43129,32767],{},{"title":546,"searchDepth":601,"depth":601,"links":43131},[43132,43133,43134,43135],{"id":507,"depth":591,"text":507},{"id":683,"depth":591,"text":683},{"id":719,"depth":591,"text":720},{"id":1556,"depth":591,"text":1556},"可勾選待辦清單。",{"doc":43112},{},{"title":486,"description":43136},"-wj9Liqzp7GV91kxQ4vjeOCs-xFQ-bdhsh9X6Bhn7ZU",{"id":43142,"title":490,"body":43143,"component":18,"description":43785,"extension":1015,"links":19,"meta":43786,"navigation":526,"new":18,"path":491,"seo":43787,"stem":492,"wrapperKind":19,"__hash__":43788},"docs\u002Fdocs\u002Feditor\u002F4.addons\u002F8.indent.md",{"type":533,"value":43144,"toc":43779},[43145,43147,43165,43195,43225,43227,43230,43671,43673,43705,43708,43713,43743,43745,43777],[536,43146,507],{"id":507},[539,43148,43150],{"className":541,"code":43149,"filename":543,"language":544,"meta":545,"style":546},"pnpm dlx shadcn-vue add @admin\u002Feditor-indent\n",[548,43151,43152],{"__ignoreMap":546},[551,43153,43154,43156,43158,43160,43162],{"class":553,"line":554},[551,43155,558],{"class":557},[551,43157,562],{"class":561},[551,43159,565],{"class":561},[551,43161,568],{"class":561},[551,43163,43164],{"class":561}," @admin\u002Feditor-indent\n",[539,43166,43168],{"className":574,"code":43167,"language":576,"meta":546,"style":546},"import { createIndentHandlers, Indent } from '@\u002Fregistry\u002Fadmin\u002Fui\u002Feditor-indent'\n",[548,43169,43170],{"__ignoreMap":546},[551,43171,43172,43174,43176,43179,43181,43184,43186,43188,43190,43193],{"class":553,"line":554},[551,43173,584],{"class":583},[551,43175,1273],{"class":587},[551,43177,43178],{"class":594}," createIndentHandlers",[551,43180,3348],{"class":587},[551,43182,43183],{"class":594}," Indent",[551,43185,1279],{"class":587},[551,43187,671],{"class":583},[551,43189,674],{"class":587},[551,43191,43192],{"class":561},"@\u002Fregistry\u002Fadmin\u002Fui\u002Feditor-indent",[551,43194,680],{"class":587},[705,43196,43197,43198,1123,43200,43202,43203,43205,43206,1123,43208,43210,43211,2477,43214,43217,43218,2470,43220,43222,43223,713],{},"list 縮排可用 ",[548,43199,5819],{},[548,43201,21678],{},"（StarterKit）。本包補段落縮排：",[548,43204,281],{}," extension 為 ",[548,43207,28696],{},[548,43209,33758],{}," 加上 ",[548,43212,43213],{},"data-indent",[548,43215,43216],{},"createIndentHandlers"," 含 indent／outdent handler，list 內走 ",[548,43219,22374],{},[548,43221,22377],{},"，段落走 ",[548,43224,43213],{},[536,43226,683],{"id":683},[685,43228],{"name":43229},"EditorIndentDemo",[539,43231,43233],{"className":726,"code":43232,"language":728,"meta":546,"style":546},"\u003Cscript setup lang=\"ts\">\nimport type { EditorToolbarItem } from '@\u002Fregistry\u002Fadmin\u002Fui\u002Feditor-toolbar'\nimport { IconIndentDecrease, IconIndentIncrease } from '@tabler\u002Ficons-vue'\nimport { ref } from 'vue'\nimport { createIndentHandlers, Indent } from '@\u002Fregistry\u002Fadmin\u002Fui\u002Feditor-indent'\nimport { AdminEditorToolbar, defaultEditorItems } from '@\u002Fregistry\u002Fadmin\u002Fui\u002Feditor-toolbar'\nimport { AdminRichEditor } from '@\u002Fregistry\u002Fadmin\u002Fui\u002Frich-editor'\n\nconst value = ref('\u003Cp>段落內容\u003C\u002Fp>')\n\nconst extensions = [Indent]\nconst handlers = createIndentHandlers()\nconst items: EditorToolbarItem[][] = [\n  ...defaultEditorItems,\n  [\n    { kind: 'outdent', icon: IconIndentDecrease, label: '減少縮排', tooltip: { text: '減少縮排' } },\n    { kind: 'indent', icon: IconIndentIncrease, label: '增加縮排', tooltip: { text: '增加縮排' } }\n  ]\n]\n\u003C\u002Fscript>\n\n\u003Ctemplate>\n  \u003Cadmin-rich-editor v-model=\"value\" :extensions=\"extensions\" :handlers=\"handlers\">\n    \u003Cadmin-editor-toolbar :items=\"items\" \u002F>\n  \u003C\u002Fadmin-rich-editor>\n\u003C\u002Ftemplate>\n",[548,43234,43235,43255,43275,43299,43317,43339,43361,43379,43383,43404,43408,43419,43431,43447,43455,43459,43515,43571,43575,43579,43587,43591,43599,43637,43655,43663],{"__ignoreMap":546},[551,43236,43237,43239,43241,43243,43245,43247,43249,43251,43253],{"class":553,"line":554},[551,43238,735],{"class":587},[551,43240,3276],{"class":738},[551,43242,3279],{"class":753},[551,43244,3282],{"class":753},[551,43246,757],{"class":587},[551,43248,760],{"class":587},[551,43250,576],{"class":561},[551,43252,760],{"class":587},[551,43254,742],{"class":587},[551,43256,43257,43259,43261,43263,43265,43267,43269,43271,43273],{"class":553,"line":591},[551,43258,584],{"class":583},[551,43260,3137],{"class":583},[551,43262,1273],{"class":587},[551,43264,28622],{"class":594},[551,43266,1279],{"class":587},[551,43268,671],{"class":583},[551,43270,674],{"class":587},[551,43272,28108],{"class":561},[551,43274,680],{"class":587},[551,43276,43277,43279,43281,43284,43286,43289,43291,43293,43295,43297],{"class":553,"line":601},[551,43278,584],{"class":583},[551,43280,1273],{"class":587},[551,43282,43283],{"class":594}," IconIndentDecrease",[551,43285,3348],{"class":587},[551,43287,43288],{"class":594}," IconIndentIncrease",[551,43290,1279],{"class":587},[551,43292,671],{"class":583},[551,43294,674],{"class":587},[551,43296,17314],{"class":561},[551,43298,680],{"class":587},[551,43300,43301,43303,43305,43307,43309,43311,43313,43315],{"class":553,"line":609},[551,43302,584],{"class":583},[551,43304,1273],{"class":587},[551,43306,3427],{"class":594},[551,43308,1279],{"class":587},[551,43310,671],{"class":583},[551,43312,674],{"class":587},[551,43314,728],{"class":561},[551,43316,680],{"class":587},[551,43318,43319,43321,43323,43325,43327,43329,43331,43333,43335,43337],{"class":553,"line":617},[551,43320,584],{"class":583},[551,43322,1273],{"class":587},[551,43324,43178],{"class":594},[551,43326,3348],{"class":587},[551,43328,43183],{"class":594},[551,43330,1279],{"class":587},[551,43332,671],{"class":583},[551,43334,674],{"class":587},[551,43336,43192],{"class":561},[551,43338,680],{"class":587},[551,43340,43341,43343,43345,43347,43349,43351,43353,43355,43357,43359],{"class":553,"line":625},[551,43342,584],{"class":583},[551,43344,1273],{"class":587},[551,43346,28094],{"class":594},[551,43348,3348],{"class":587},[551,43350,28099],{"class":594},[551,43352,1279],{"class":587},[551,43354,671],{"class":583},[551,43356,674],{"class":587},[551,43358,28108],{"class":561},[551,43360,680],{"class":587},[551,43362,43363,43365,43367,43369,43371,43373,43375,43377],{"class":553,"line":633},[551,43364,584],{"class":583},[551,43366,1273],{"class":587},[551,43368,28119],{"class":594},[551,43370,1279],{"class":587},[551,43372,671],{"class":583},[551,43374,674],{"class":587},[551,43376,28128],{"class":561},[551,43378,680],{"class":587},[551,43380,43381],{"class":553,"line":641},[551,43382,1293],{"emptyLinePlaceholder":526},[551,43384,43385,43387,43389,43391,43393,43395,43397,43400,43402],{"class":553,"line":649},[551,43386,3321],{"class":753},[551,43388,3422],{"class":594},[551,43390,757],{"class":587},[551,43392,3427],{"class":1154},[551,43394,1158],{"class":594},[551,43396,1214],{"class":587},[551,43398,43399],{"class":561},"\u003Cp>段落內容\u003C\u002Fp>",[551,43401,1214],{"class":587},[551,43403,1222],{"class":594},[551,43405,43406],{"class":553,"line":657},[551,43407,1293],{"emptyLinePlaceholder":526},[551,43409,43410,43412,43414,43416],{"class":553,"line":665},[551,43411,3321],{"class":753},[551,43413,32337],{"class":594},[551,43415,757],{"class":587},[551,43417,43418],{"class":594}," [Indent]\n",[551,43420,43421,43423,43425,43427,43429],{"class":553,"line":901},[551,43422,3321],{"class":753},[551,43424,28643],{"class":594},[551,43426,757],{"class":587},[551,43428,43178],{"class":1154},[551,43430,3457],{"class":594},[551,43432,43433,43435,43437,43439,43441,43443,43445],{"class":553,"line":910},[551,43434,3321],{"class":753},[551,43436,32383],{"class":594},[551,43438,1169],{"class":587},[551,43440,28622],{"class":557},[551,43442,32390],{"class":594},[551,43444,757],{"class":587},[551,43446,1315],{"class":594},[551,43448,43449,43451,43453],{"class":553,"line":920},[551,43450,28832],{"class":587},[551,43452,28232],{"class":594},[551,43454,598],{"class":587},[551,43456,43457],{"class":553,"line":930},[551,43458,30957],{"class":594},[551,43460,43461,43463,43465,43467,43469,43471,43473,43475,43477,43479,43481,43483,43485,43487,43489,43491,43493,43495,43497,43499,43501,43503,43505,43507,43509,43511,43513],{"class":553,"line":3536},[551,43462,30962],{"class":587},[551,43464,28846],{"class":738},[551,43466,1169],{"class":587},[551,43468,674],{"class":587},[551,43470,43088],{"class":561},[551,43472,1214],{"class":587},[551,43474,3348],{"class":587},[551,43476,32423],{"class":738},[551,43478,1169],{"class":587},[551,43480,43283],{"class":594},[551,43482,3348],{"class":587},[551,43484,28860],{"class":738},[551,43486,1169],{"class":587},[551,43488,674],{"class":587},[551,43490,22557],{"class":561},[551,43492,1214],{"class":587},[551,43494,3348],{"class":587},[551,43496,28874],{"class":738},[551,43498,1169],{"class":587},[551,43500,1273],{"class":587},[551,43502,28881],{"class":738},[551,43504,1169],{"class":587},[551,43506,674],{"class":587},[551,43508,22557],{"class":561},[551,43510,1214],{"class":587},[551,43512,1279],{"class":587},[551,43514,3363],{"class":587},[551,43516,43517,43519,43521,43523,43525,43527,43529,43531,43533,43535,43537,43539,43541,43543,43545,43547,43549,43551,43553,43555,43557,43559,43561,43563,43565,43567,43569],{"class":553,"line":4422},[551,43518,30962],{"class":587},[551,43520,28846],{"class":738},[551,43522,1169],{"class":587},[551,43524,674],{"class":587},[551,43526,43085],{"class":561},[551,43528,1214],{"class":587},[551,43530,3348],{"class":587},[551,43532,32423],{"class":738},[551,43534,1169],{"class":587},[551,43536,43288],{"class":594},[551,43538,3348],{"class":587},[551,43540,28860],{"class":738},[551,43542,1169],{"class":587},[551,43544,674],{"class":587},[551,43546,22547],{"class":561},[551,43548,1214],{"class":587},[551,43550,3348],{"class":587},[551,43552,28874],{"class":738},[551,43554,1169],{"class":587},[551,43556,1273],{"class":587},[551,43558,28881],{"class":738},[551,43560,1169],{"class":587},[551,43562,674],{"class":587},[551,43564,22547],{"class":561},[551,43566,1214],{"class":587},[551,43568,1279],{"class":587},[551,43570,18827],{"class":587},[551,43572,43573],{"class":553,"line":6194},[551,43574,1395],{"class":594},[551,43576,43577],{"class":553,"line":6204},[551,43578,9080],{"class":594},[551,43580,43581,43583,43585],{"class":553,"line":6223},[551,43582,784],{"class":587},[551,43584,3276],{"class":738},[551,43586,742],{"class":587},[551,43588,43589],{"class":553,"line":6233},[551,43590,1293],{"emptyLinePlaceholder":526},[551,43592,43593,43595,43597],{"class":553,"line":6242},[551,43594,735],{"class":587},[551,43596,739],{"class":738},[551,43598,742],{"class":587},[551,43600,43601,43603,43605,43607,43609,43611,43613,43615,43617,43619,43621,43623,43625,43627,43629,43631,43633,43635],{"class":553,"line":6251},[551,43602,747],{"class":587},[551,43604,28243],{"class":738},[551,43606,2867],{"class":753},[551,43608,757],{"class":587},[551,43610,760],{"class":587},[551,43612,2720],{"class":561},[551,43614,760],{"class":587},[551,43616,30679],{"class":753},[551,43618,757],{"class":587},[551,43620,760],{"class":587},[551,43622,18579],{"class":561},[551,43624,760],{"class":587},[551,43626,28214],{"class":753},[551,43628,757],{"class":587},[551,43630,760],{"class":587},[551,43632,28221],{"class":561},[551,43634,760],{"class":587},[551,43636,742],{"class":587},[551,43638,43639,43641,43643,43645,43647,43649,43651,43653],{"class":553,"line":524},[551,43640,772],{"class":587},[551,43642,28208],{"class":738},[551,43644,15260],{"class":753},[551,43646,757],{"class":587},[551,43648,760],{"class":587},[551,43650,7361],{"class":561},[551,43652,760],{"class":587},[551,43654,1449],{"class":587},[551,43656,43657,43659,43661],{"class":553,"line":6864},[551,43658,923],{"class":587},[551,43660,28243],{"class":738},[551,43662,742],{"class":587},[551,43664,43665,43667,43669],{"class":553,"line":6873},[551,43666,784],{"class":587},[551,43668,739],{"class":738},[551,43670,742],{"class":587},[705,43672,32563],{},[1558,43674,43675,43686,43691,43694],{},[1561,43676,43677,1123,43679,43681,43682,43685],{},[548,43678,28696],{},[548,43680,33758],{}," 縮排寫成 ",[548,43683,43684],{},"data-indent=\"\u003Cn>\"","（0–7，0 時省略 attribute）",[1561,43687,43688,43689],{},"同一顆 indent \u002F outdent 按鈕，在 list 內縮排 list item、在段落調整 ",[548,43690,43213],{},[1561,43692,43693],{},"縮到頂（7）或底（0）時按鈕自動 disabled",[1561,43695,43696,43697,43699,43700,1123,43702,43704],{},"段落縮排不綁 ",[548,43698,5819],{},"（避免劫持鍵盤焦點切換）；list 的 ",[548,43701,5819],{},[548,43703,21678],{}," 仍由 StarterKit 處理",[536,43706,43707],{"id":43707},"樣式自套",[705,43709,43710,43712],{},[548,43711,43213],{}," 的視覺（左邊距）不內含於 registry，由使用者依需求自套 content class：",[539,43714,43716],{"className":574,"code":43715,"language":576,"meta":546,"style":546},"const indentContentClass = `\n  [&_[data-indent='1']]:ml-[2rem] [&_[data-indent='2']]:ml-[4rem]\n  \u002F* …依級距 3–7 類推 *\u002F\n`\n",[548,43717,43718,43729,43734,43739],{"__ignoreMap":546},[551,43719,43720,43722,43725,43727],{"class":553,"line":554},[551,43721,3321],{"class":753},[551,43723,43724],{"class":594}," indentContentClass ",[551,43726,757],{"class":587},[551,43728,42318],{"class":587},[551,43730,43731],{"class":553,"line":591},[551,43732,43733],{"class":561},"  [&_[data-indent='1']]:ml-[2rem] [&_[data-indent='2']]:ml-[4rem]\n",[551,43735,43736],{"class":553,"line":601},[551,43737,43738],{"class":561},"  \u002F* …依級距 3–7 類推 *\u002F\n",[551,43740,43741],{"class":553,"line":609},[551,43742,42348],{"class":587},[536,43744,720],{"id":719},[1558,43746,43747,43768],{},[1561,43748,43749,43751,43752,1123,43754,43756,43757,43759,43760,43762,43763,1123,43765,43767],{},[548,43750,281],{},"：tiptap extension，為 ",[548,43753,28696],{},[548,43755,33758],{}," 補 ",[548,43758,43085],{},"（0–7）attribute（序列化為 ",[548,43761,43213],{},"），並提供段落的 ",[548,43764,43085],{},[548,43766,43088],{}," command",[1561,43769,43770,43773,43774,43776],{},[548,43771,43772],{},"createIndentHandlers(): { indent, outdent }","：成對的 indent \u002F outdent handler，經 ",[548,43775,37263],{}," 注入",[990,43778,3744],{},{"title":546,"searchDepth":601,"depth":601,"links":43780},[43781,43782,43783,43784],{"id":507,"depth":591,"text":507},{"id":683,"depth":591,"text":683},{"id":43707,"depth":591,"text":43707},{"id":719,"depth":591,"text":720},"toolbar 縮排按鈕；段落、標題、清單層級。",{},{"title":490,"description":43785},"LMz5SKGBDSuRMez_rdzPbuwFI8FFUJgLN_v7EXlN45A",{"id":43790,"title":494,"body":43791,"component":526,"description":45114,"extension":1015,"links":45115,"meta":45117,"navigation":526,"new":18,"path":495,"seo":45118,"stem":496,"wrapperKind":19,"__hash__":45119},"docs\u002Fdocs\u002Feditor\u002F4.addons\u002F9.mention.md",{"type":533,"value":43792,"toc":45100},[43793,43795,43813,43859,43869,43891,44044,44066,44068,44071,44478,44482,44542,44557,44561,44564,44620,44626,44629,44632,44641,45015,45024,45026,45030,45032,45047,45086,45088,45090,45093,45095,45097],[536,43794,507],{"id":507},[539,43796,43798],{"className":541,"code":43797,"filename":543,"language":544,"meta":545,"style":546},"pnpm dlx shadcn-vue add @admin\u002Feditor-mention-menu\n",[548,43799,43800],{"__ignoreMap":546},[551,43801,43802,43804,43806,43808,43810],{"class":553,"line":554},[551,43803,558],{"class":557},[551,43805,562],{"class":561},[551,43807,565],{"class":561},[551,43809,568],{"class":561},[551,43811,43812],{"class":561}," @admin\u002Feditor-mention-menu\n",[539,43814,43816],{"className":574,"code":43815,"language":576,"meta":546,"style":546},"import type { MentionMenuItem } from '@\u002Fregistry\u002Fadmin\u002Fui\u002Feditor-mention-menu'\nimport { AdminEditorMentionMenu } from '@\u002Fregistry\u002Fadmin\u002Fui\u002Feditor-mention-menu'\n",[548,43817,43818,43840],{"__ignoreMap":546},[551,43819,43820,43822,43824,43826,43829,43831,43833,43835,43838],{"class":553,"line":554},[551,43821,584],{"class":583},[551,43823,3137],{"class":583},[551,43825,1273],{"class":587},[551,43827,43828],{"class":594}," MentionMenuItem",[551,43830,1279],{"class":587},[551,43832,671],{"class":583},[551,43834,674],{"class":587},[551,43836,43837],{"class":561},"@\u002Fregistry\u002Fadmin\u002Fui\u002Feditor-mention-menu",[551,43839,680],{"class":587},[551,43841,43842,43844,43846,43849,43851,43853,43855,43857],{"class":553,"line":591},[551,43843,584],{"class":583},[551,43845,1273],{"class":587},[551,43847,43848],{"class":594}," AdminEditorMentionMenu",[551,43850,1279],{"class":587},[551,43852,671],{"class":583},[551,43854,674],{"class":587},[551,43856,43837],{"class":561},[551,43858,680],{"class":587},[705,43860,43861,32855,43864,43866,43867,713],{},[548,43862,43863],{},"admin-editor-mention-menu",[548,43865,27773],{}," + ",[548,43868,25736],{},[2817,43870,43872],{"title":43871,"type":8626},"裝完必須在 :extensions 注入 Mention",[705,43873,43874,43876,43877,43880,43881,3245,43884,1123,43887,43890],{},[548,43875,25736],{}," 是 Node extension，跟 suggestion \u002F emoji 這類純 plugin 不同，它會動到 schema，而 schema 在編輯器建立時就固定、無法後補。",[548,43878,43879],{},"\u003CAdminEditorMentionMenu>"," mount 時會註冊 Suggestion plugin，popup 照常浮現，但 schema 沒有 mention node 時，選定後只能退回插入純文字 ",[548,43882,43883],{},"@John",[548,43885,43886],{},"data-id",[548,43888,43889],{},"data-label"," 等 attrs 不會持久化。",[539,43892,43894],{"className":574,"code":43893,"language":576,"meta":546,"style":546},"import Mention from '@tiptap\u002Fextension-mention'\nconst extensions = [\n  Mention.configure({\n    HTMLAttributes: { class: 'mention' },\n    renderText: ({ node }) => `${node.attrs.mentionSuggestionChar ?? '@'}${node.attrs.label ?? node.attrs.id}`,\n  }),\n]\n\n\u002F\u002F \u003CAdminRichEditor :extensions=\"extensions\">\n",[548,43895,43896,43911,43921,43934,43956,44024,44032,44036,44040],{"__ignoreMap":546},[551,43897,43898,43900,43903,43905,43907,43909],{"class":553,"line":554},[551,43899,584],{"class":583},[551,43901,43902],{"class":594}," Mention ",[551,43904,1259],{"class":583},[551,43906,674],{"class":587},[551,43908,25736],{"class":561},[551,43910,680],{"class":587},[551,43912,43913,43915,43917,43919],{"class":553,"line":591},[551,43914,3321],{"class":753},[551,43916,32337],{"class":594},[551,43918,757],{"class":587},[551,43920,1315],{"class":594},[551,43922,43923,43926,43928,43930,43932],{"class":553,"line":601},[551,43924,43925],{"class":594},"  Mention",[551,43927,1206],{"class":587},[551,43929,32347],{"class":1154},[551,43931,1158],{"class":594},[551,43933,1161],{"class":587},[551,43935,43936,43939,43941,43943,43945,43947,43949,43952,43954],{"class":553,"line":609},[551,43937,43938],{"class":738},"    HTMLAttributes",[551,43940,1169],{"class":587},[551,43942,1273],{"class":587},[551,43944,13315],{"class":738},[551,43946,1169],{"class":587},[551,43948,674],{"class":587},[551,43950,43951],{"class":561},"mention",[551,43953,1214],{"class":587},[551,43955,3363],{"class":587},[551,43957,43958,43961,43963,43965,43968,43970,43972,43975,43978,43980,43983,43985,43988,43990,43992,43994,43997,43999,44001,44003,44005,44007,44009,44011,44013,44015,44017,44019,44022],{"class":553,"line":617},[551,43959,43960],{"class":1154},"    renderText",[551,43962,1169],{"class":587},[551,43964,24949],{"class":587},[551,43966,43967],{"class":1193}," node",[551,43969,24960],{"class":587},[551,43971,1200],{"class":753},[551,43973,43974],{"class":587}," `${",[551,43976,43977],{"class":594},"node",[551,43979,1206],{"class":587},[551,43981,43982],{"class":594},"attrs",[551,43984,1206],{"class":587},[551,43986,43987],{"class":594},"mentionSuggestionChar ",[551,43989,28711],{"class":587},[551,43991,674],{"class":587},[551,43993,19390],{"class":561},[551,43995,43996],{"class":587},"'}${",[551,43998,43977],{"class":594},[551,44000,1206],{"class":587},[551,44002,43982],{"class":594},[551,44004,1206],{"class":587},[551,44006,34067],{"class":594},[551,44008,28711],{"class":587},[551,44010,43967],{"class":594},[551,44012,1206],{"class":587},[551,44014,43982],{"class":594},[551,44016,1206],{"class":587},[551,44018,7305],{"class":594},[551,44020,44021],{"class":587},"}`",[551,44023,598],{"class":587},[551,44025,44026,44028,44030],{"class":553,"line":625},[551,44027,29290],{"class":587},[551,44029,1197],{"class":594},[551,44031,598],{"class":587},[551,44033,44034],{"class":553,"line":633},[551,44035,9080],{"class":594},[551,44037,44038],{"class":553,"line":641},[551,44039,1293],{"emptyLinePlaceholder":526},[551,44041,44042],{"class":553,"line":649},[551,44043,32958],{"class":4831},[705,44045,44046,44047,44049,44050,44053,44054,44057,44058,44061,44062,44065],{},"兩個設定都是建議值，不是必填。",[548,44048,25799],{}," 決定序列化與複製貼上的文字輸出，未設定時沿用 tiptap 預設的 ",[548,44051,44052],{},"@label","，設定後可改成以觸發字元開頭；",[548,44055,44056],{},"class: 'mention'"," 讓慣用的 ",[548,44059,44060],{},".mention"," CSS 有地方掛（本文件 demo 的 chip 樣式改以 ",[548,44063,44064],{},"data-type"," 屬性選取，不依賴它）。",[536,44067,683],{"id":683},[685,44069],{"name":44070},"EditorMentionMenuDemo",[539,44072,44074],{"className":726,"code":44073,"language":728,"meta":546,"style":546},"\u003Cscript setup lang=\"ts\">\nimport Mention from '@tiptap\u002Fextension-mention'\nimport { ref } from 'vue'\nimport { AdminEditorMentionMenu } from '@\u002Fregistry\u002Fadmin\u002Fui\u002Feditor-mention-menu'\nimport { AdminRichEditor } from '@\u002Fregistry\u002Fadmin\u002Fui\u002Frich-editor'\n\nconst value = ref('')\nconst users = [\n  { id: 'u1', label: 'John' },\n  { id: 'u2', label: 'Jane' }\n]\n\n\u002F\u002F mention node 要能持久化，務必在 :extensions 加配置好的 Mention\nconst extensions = [\n  Mention.configure({\n    HTMLAttributes: { class: 'mention' },\n    renderText: ({ node }) => `${node.attrs.mentionSuggestionChar ?? '@'}${node.attrs.label ?? node.attrs.id}`,\n  }),\n]\n\u003C\u002Fscript>\n\n\u003Ctemplate>\n  \u003Cadmin-rich-editor v-slot=\"{ editor }\" v-model=\"value\" :extensions=\"extensions\">\n    \u003Cadmin-editor-mention-menu :editor :items=\"users\" \u002F>\n  \u003C\u002Fadmin-rich-editor>\n\u003C\u002Ftemplate>\n",[548,44075,44076,44096,44110,44128,44146,44164,44168,44184,44195,44226,44256,44260,44264,44269,44279,44291,44311,44371,44379,44383,44391,44395,44403,44441,44462,44470],{"__ignoreMap":546},[551,44077,44078,44080,44082,44084,44086,44088,44090,44092,44094],{"class":553,"line":554},[551,44079,735],{"class":587},[551,44081,3276],{"class":738},[551,44083,3279],{"class":753},[551,44085,3282],{"class":753},[551,44087,757],{"class":587},[551,44089,760],{"class":587},[551,44091,576],{"class":561},[551,44093,760],{"class":587},[551,44095,742],{"class":587},[551,44097,44098,44100,44102,44104,44106,44108],{"class":553,"line":591},[551,44099,584],{"class":583},[551,44101,43902],{"class":594},[551,44103,1259],{"class":583},[551,44105,674],{"class":587},[551,44107,25736],{"class":561},[551,44109,680],{"class":587},[551,44111,44112,44114,44116,44118,44120,44122,44124,44126],{"class":553,"line":601},[551,44113,584],{"class":583},[551,44115,1273],{"class":587},[551,44117,3427],{"class":594},[551,44119,1279],{"class":587},[551,44121,671],{"class":583},[551,44123,674],{"class":587},[551,44125,728],{"class":561},[551,44127,680],{"class":587},[551,44129,44130,44132,44134,44136,44138,44140,44142,44144],{"class":553,"line":609},[551,44131,584],{"class":583},[551,44133,1273],{"class":587},[551,44135,43848],{"class":594},[551,44137,1279],{"class":587},[551,44139,671],{"class":583},[551,44141,674],{"class":587},[551,44143,43837],{"class":561},[551,44145,680],{"class":587},[551,44147,44148,44150,44152,44154,44156,44158,44160,44162],{"class":553,"line":617},[551,44149,584],{"class":583},[551,44151,1273],{"class":587},[551,44153,28119],{"class":594},[551,44155,1279],{"class":587},[551,44157,671],{"class":583},[551,44159,674],{"class":587},[551,44161,28128],{"class":561},[551,44163,680],{"class":587},[551,44165,44166],{"class":553,"line":625},[551,44167,1293],{"emptyLinePlaceholder":526},[551,44169,44170,44172,44174,44176,44178,44180,44182],{"class":553,"line":633},[551,44171,3321],{"class":753},[551,44173,3422],{"class":594},[551,44175,757],{"class":587},[551,44177,3427],{"class":1154},[551,44179,1158],{"class":594},[551,44181,8639],{"class":587},[551,44183,1222],{"class":594},[551,44185,44186,44188,44191,44193],{"class":553,"line":641},[551,44187,3321],{"class":753},[551,44189,44190],{"class":594}," users ",[551,44192,757],{"class":587},[551,44194,1315],{"class":594},[551,44196,44197,44199,44202,44204,44206,44209,44211,44213,44215,44217,44219,44222,44224],{"class":553,"line":649},[551,44198,3333],{"class":587},[551,44200,44201],{"class":738}," id",[551,44203,1169],{"class":587},[551,44205,674],{"class":587},[551,44207,44208],{"class":561},"u1",[551,44210,1214],{"class":587},[551,44212,3348],{"class":587},[551,44214,28860],{"class":738},[551,44216,1169],{"class":587},[551,44218,674],{"class":587},[551,44220,44221],{"class":561},"John",[551,44223,1214],{"class":587},[551,44225,3363],{"class":587},[551,44227,44228,44230,44232,44234,44236,44239,44241,44243,44245,44247,44249,44252,44254],{"class":553,"line":657},[551,44229,3333],{"class":587},[551,44231,44201],{"class":738},[551,44233,1169],{"class":587},[551,44235,674],{"class":587},[551,44237,44238],{"class":561},"u2",[551,44240,1214],{"class":587},[551,44242,3348],{"class":587},[551,44244,28860],{"class":738},[551,44246,1169],{"class":587},[551,44248,674],{"class":587},[551,44250,44251],{"class":561},"Jane",[551,44253,1214],{"class":587},[551,44255,18827],{"class":587},[551,44257,44258],{"class":553,"line":665},[551,44259,9080],{"class":594},[551,44261,44262],{"class":553,"line":901},[551,44263,1293],{"emptyLinePlaceholder":526},[551,44265,44266],{"class":553,"line":910},[551,44267,44268],{"class":4831},"\u002F\u002F mention node 要能持久化，務必在 :extensions 加配置好的 Mention\n",[551,44270,44271,44273,44275,44277],{"class":553,"line":920},[551,44272,3321],{"class":753},[551,44274,32337],{"class":594},[551,44276,757],{"class":587},[551,44278,1315],{"class":594},[551,44280,44281,44283,44285,44287,44289],{"class":553,"line":930},[551,44282,43925],{"class":594},[551,44284,1206],{"class":587},[551,44286,32347],{"class":1154},[551,44288,1158],{"class":594},[551,44290,1161],{"class":587},[551,44292,44293,44295,44297,44299,44301,44303,44305,44307,44309],{"class":553,"line":3536},[551,44294,43938],{"class":738},[551,44296,1169],{"class":587},[551,44298,1273],{"class":587},[551,44300,13315],{"class":738},[551,44302,1169],{"class":587},[551,44304,674],{"class":587},[551,44306,43951],{"class":561},[551,44308,1214],{"class":587},[551,44310,3363],{"class":587},[551,44312,44313,44315,44317,44319,44321,44323,44325,44327,44329,44331,44333,44335,44337,44339,44341,44343,44345,44347,44349,44351,44353,44355,44357,44359,44361,44363,44365,44367,44369],{"class":553,"line":4422},[551,44314,43960],{"class":1154},[551,44316,1169],{"class":587},[551,44318,24949],{"class":587},[551,44320,43967],{"class":1193},[551,44322,24960],{"class":587},[551,44324,1200],{"class":753},[551,44326,43974],{"class":587},[551,44328,43977],{"class":594},[551,44330,1206],{"class":587},[551,44332,43982],{"class":594},[551,44334,1206],{"class":587},[551,44336,43987],{"class":594},[551,44338,28711],{"class":587},[551,44340,674],{"class":587},[551,44342,19390],{"class":561},[551,44344,43996],{"class":587},[551,44346,43977],{"class":594},[551,44348,1206],{"class":587},[551,44350,43982],{"class":594},[551,44352,1206],{"class":587},[551,44354,34067],{"class":594},[551,44356,28711],{"class":587},[551,44358,43967],{"class":594},[551,44360,1206],{"class":587},[551,44362,43982],{"class":594},[551,44364,1206],{"class":587},[551,44366,7305],{"class":594},[551,44368,44021],{"class":587},[551,44370,598],{"class":587},[551,44372,44373,44375,44377],{"class":553,"line":6194},[551,44374,29290],{"class":587},[551,44376,1197],{"class":594},[551,44378,598],{"class":587},[551,44380,44381],{"class":553,"line":6204},[551,44382,9080],{"class":594},[551,44384,44385,44387,44389],{"class":553,"line":6223},[551,44386,784],{"class":587},[551,44388,3276],{"class":738},[551,44390,742],{"class":587},[551,44392,44393],{"class":553,"line":6233},[551,44394,1293],{"emptyLinePlaceholder":526},[551,44396,44397,44399,44401],{"class":553,"line":6242},[551,44398,735],{"class":587},[551,44400,739],{"class":738},[551,44402,742],{"class":587},[551,44404,44405,44407,44409,44411,44413,44415,44417,44419,44421,44423,44425,44427,44429,44431,44433,44435,44437,44439],{"class":553,"line":6251},[551,44406,747],{"class":587},[551,44408,28243],{"class":738},[551,44410,3595],{"class":753},[551,44412,757],{"class":587},[551,44414,760],{"class":587},[551,44416,30664],{"class":561},[551,44418,760],{"class":587},[551,44420,2867],{"class":753},[551,44422,757],{"class":587},[551,44424,760],{"class":587},[551,44426,2720],{"class":561},[551,44428,760],{"class":587},[551,44430,30679],{"class":753},[551,44432,757],{"class":587},[551,44434,760],{"class":587},[551,44436,18579],{"class":561},[551,44438,760],{"class":587},[551,44440,742],{"class":587},[551,44442,44443,44445,44447,44449,44451,44453,44455,44458,44460],{"class":553,"line":524},[551,44444,772],{"class":587},[551,44446,43863],{"class":738},[551,44448,28211],{"class":753},[551,44450,15260],{"class":753},[551,44452,757],{"class":587},[551,44454,760],{"class":587},[551,44456,44457],{"class":561},"users",[551,44459,760],{"class":587},[551,44461,1449],{"class":587},[551,44463,44464,44466,44468],{"class":553,"line":6864},[551,44465,923],{"class":587},[551,44467,28243],{"class":738},[551,44469,742],{"class":587},[551,44471,44472,44474,44476],{"class":553,"line":6873},[551,44473,784],{"class":587},[551,44475,739],{"class":738},[551,44477,742],{"class":587},[536,44479,44481],{"id":44480},"mentionmenuitem-介面","MentionMenuItem 介面",[539,44483,44485],{"className":574,"code":44484,"language":576,"meta":546,"style":546},"interface MentionMenuItem {\n  id: string | number\n  label: string\n  avatar?: string\n  [key: string]: unknown \u002F\u002F 任意 metadata\n}\n",[548,44486,44487,44495,44509,44517,44526,44538],{"__ignoreMap":546},[551,44488,44489,44491,44493],{"class":553,"line":554},[551,44490,25872],{"class":753},[551,44492,43828],{"class":557},[551,44494,588],{"class":587},[551,44496,44497,44500,44502,44504,44506],{"class":553,"line":591},[551,44498,44499],{"class":738},"  id",[551,44501,1169],{"class":587},[551,44503,33289],{"class":557},[551,44505,25918],{"class":587},[551,44507,44508],{"class":557}," number\n",[551,44510,44511,44513,44515],{"class":553,"line":601},[551,44512,33708],{"class":738},[551,44514,1169],{"class":587},[551,44516,33713],{"class":557},[551,44518,44519,44522,44524],{"class":553,"line":609},[551,44520,44521],{"class":738},"  avatar",[551,44523,9027],{"class":587},[551,44525,33713],{"class":557},[551,44527,44528,44531,44533,44535],{"class":553,"line":617},[551,44529,44530],{"class":594},"  [key: string]",[551,44532,1169],{"class":587},[551,44534,25899],{"class":557},[551,44536,44537],{"class":4831}," \u002F\u002F 任意 metadata\n",[551,44539,44540],{"class":553,"line":625},[551,44541,10148],{"class":587},[705,44543,44544,44545,44547,44548,44551,44552,1123,44554,44556],{},"選定後，mention node 的 ",[548,44546,43982],{}," 會展開整個 item 物件（外加 ",[548,44549,44550],{},"mentionSuggestionChar: '@'","），讓 ",[548,44553,25799],{},[548,44555,20622],{}," 讀得到任意欄位。",[692,44558,44560],{"id":44559},"attrs-持久化注意","attrs 持久化注意",[705,44562,44563],{},"存進 DB 的 HTML 形如：",[539,44565,44569],{"className":44566,"code":44567,"language":44568,"meta":546,"style":546},"language-html shiki shiki-themes material-theme-lighter material-theme material-theme-palenight","\u003Cspan data-type=\"mention\" data-id=\"u1\" data-label=\"John\">@John\u003C\u002Fspan>\n","html",[548,44570,44571],{"__ignoreMap":546},[551,44572,44573,44575,44577,44580,44582,44584,44586,44588,44591,44593,44595,44597,44599,44602,44604,44606,44608,44610,44612,44614,44616,44618],{"class":553,"line":554},[551,44574,735],{"class":587},[551,44576,551],{"class":738},[551,44578,44579],{"class":753}," data-type",[551,44581,757],{"class":587},[551,44583,760],{"class":587},[551,44585,43951],{"class":561},[551,44587,760],{"class":587},[551,44589,44590],{"class":753}," data-id",[551,44592,757],{"class":587},[551,44594,760],{"class":587},[551,44596,44208],{"class":561},[551,44598,760],{"class":587},[551,44600,44601],{"class":753}," data-label",[551,44603,757],{"class":587},[551,44605,760],{"class":587},[551,44607,44221],{"class":561},[551,44609,760],{"class":587},[551,44611,778],{"class":587},[551,44613,43883],{"class":594},[551,44615,784],{"class":587},[551,44617,551],{"class":738},[551,44619,742],{"class":587},[705,44621,44622,44623,44625],{},"item 建議只放 id、label 和很小的 metadata（部門代號、role 等）；avatar URL、長描述這類欄位改用 ",[548,44624,7305],{}," 在顯示時二次查詢補上，避免內容膨脹、拖慢序列化。",[536,44627,44628],{"id":44628},"非同步搜尋",[685,44630],{"name":44631},"EditorMentionMenuAsyncDemo",[705,44633,44634,44635,44637,44638,44640],{},"users 來自後端 API、前端不適合全載時，用 ",[548,44636,33521],{}," 雙向綁定搜尋字串，並加 ",[548,44639,33525],{}," 跳過內建的 fuzzy filter：",[539,44642,44644],{"className":726,"code":44643,"language":728,"meta":546,"style":546},"\u003Cscript setup lang=\"ts\">\nimport Mention from '@tiptap\u002Fextension-mention'\nimport { ref } from 'vue'\n\nconst search = ref('')\nconst { data: users } = await useFetch('\u002Fapi\u002Fusers', {\n  query: { q: search }\n})\nconst extensions = [\n  Mention.configure({\n    HTMLAttributes: { class: 'mention' },\n    renderText: ({ node }) => `${node.attrs.mentionSuggestionChar ?? '@'}${node.attrs.label ?? node.attrs.id}`,\n  }),\n]\n\u003C\u002Fscript>\n\n\u003Ctemplate>\n  \u003Cadmin-rich-editor v-slot=\"{ editor }\" v-model=\"value\" :extensions=\"extensions\">\n    \u003Cadmin-editor-mention-menu\n      v-model:search-term=\"search\"\n      ignore-filter\n      :editor\n      :items=\"users ?? []\"\n    \u002F>\n  \u003C\u002Fadmin-rich-editor>\n\u003C\u002Ftemplate>\n",[548,44645,44646,44666,44680,44698,44702,44719,44754,44772,44778,44788,44800,44820,44880,44888,44892,44900,44904,44912,44950,44957,44971,44976,44981,44995,44999,45007],{"__ignoreMap":546},[551,44647,44648,44650,44652,44654,44656,44658,44660,44662,44664],{"class":553,"line":554},[551,44649,735],{"class":587},[551,44651,3276],{"class":738},[551,44653,3279],{"class":753},[551,44655,3282],{"class":753},[551,44657,757],{"class":587},[551,44659,760],{"class":587},[551,44661,576],{"class":561},[551,44663,760],{"class":587},[551,44665,742],{"class":587},[551,44667,44668,44670,44672,44674,44676,44678],{"class":553,"line":591},[551,44669,584],{"class":583},[551,44671,43902],{"class":594},[551,44673,1259],{"class":583},[551,44675,674],{"class":587},[551,44677,25736],{"class":561},[551,44679,680],{"class":587},[551,44681,44682,44684,44686,44688,44690,44692,44694,44696],{"class":553,"line":601},[551,44683,584],{"class":583},[551,44685,1273],{"class":587},[551,44687,3427],{"class":594},[551,44689,1279],{"class":587},[551,44691,671],{"class":583},[551,44693,674],{"class":587},[551,44695,728],{"class":561},[551,44697,680],{"class":587},[551,44699,44700],{"class":553,"line":609},[551,44701,1293],{"emptyLinePlaceholder":526},[551,44703,44704,44706,44709,44711,44713,44715,44717],{"class":553,"line":617},[551,44705,3321],{"class":753},[551,44707,44708],{"class":594}," search ",[551,44710,757],{"class":587},[551,44712,3427],{"class":1154},[551,44714,1158],{"class":594},[551,44716,8639],{"class":587},[551,44718,1222],{"class":594},[551,44720,44721,44723,44725,44728,44730,44732,44734,44736,44738,44741,44743,44745,44748,44750,44752],{"class":553,"line":625},[551,44722,3321],{"class":753},[551,44724,1273],{"class":587},[551,44726,44727],{"class":738}," data",[551,44729,1169],{"class":587},[551,44731,44190],{"class":594},[551,44733,668],{"class":587},[551,44735,10094],{"class":587},[551,44737,10097],{"class":583},[551,44739,44740],{"class":1154}," useFetch",[551,44742,1158],{"class":594},[551,44744,1214],{"class":587},[551,44746,44747],{"class":561},"\u002Fapi\u002Fusers",[551,44749,1214],{"class":587},[551,44751,3348],{"class":587},[551,44753,588],{"class":587},[551,44755,44756,44759,44761,44763,44766,44768,44770],{"class":553,"line":633},[551,44757,44758],{"class":738},"  query",[551,44760,1169],{"class":587},[551,44762,1273],{"class":587},[551,44764,44765],{"class":738}," q",[551,44767,1169],{"class":587},[551,44769,44708],{"class":594},[551,44771,10148],{"class":587},[551,44773,44774,44776],{"class":553,"line":641},[551,44775,668],{"class":587},[551,44777,1222],{"class":594},[551,44779,44780,44782,44784,44786],{"class":553,"line":649},[551,44781,3321],{"class":753},[551,44783,32337],{"class":594},[551,44785,757],{"class":587},[551,44787,1315],{"class":594},[551,44789,44790,44792,44794,44796,44798],{"class":553,"line":657},[551,44791,43925],{"class":594},[551,44793,1206],{"class":587},[551,44795,32347],{"class":1154},[551,44797,1158],{"class":594},[551,44799,1161],{"class":587},[551,44801,44802,44804,44806,44808,44810,44812,44814,44816,44818],{"class":553,"line":665},[551,44803,43938],{"class":738},[551,44805,1169],{"class":587},[551,44807,1273],{"class":587},[551,44809,13315],{"class":738},[551,44811,1169],{"class":587},[551,44813,674],{"class":587},[551,44815,43951],{"class":561},[551,44817,1214],{"class":587},[551,44819,3363],{"class":587},[551,44821,44822,44824,44826,44828,44830,44832,44834,44836,44838,44840,44842,44844,44846,44848,44850,44852,44854,44856,44858,44860,44862,44864,44866,44868,44870,44872,44874,44876,44878],{"class":553,"line":901},[551,44823,43960],{"class":1154},[551,44825,1169],{"class":587},[551,44827,24949],{"class":587},[551,44829,43967],{"class":1193},[551,44831,24960],{"class":587},[551,44833,1200],{"class":753},[551,44835,43974],{"class":587},[551,44837,43977],{"class":594},[551,44839,1206],{"class":587},[551,44841,43982],{"class":594},[551,44843,1206],{"class":587},[551,44845,43987],{"class":594},[551,44847,28711],{"class":587},[551,44849,674],{"class":587},[551,44851,19390],{"class":561},[551,44853,43996],{"class":587},[551,44855,43977],{"class":594},[551,44857,1206],{"class":587},[551,44859,43982],{"class":594},[551,44861,1206],{"class":587},[551,44863,34067],{"class":594},[551,44865,28711],{"class":587},[551,44867,43967],{"class":594},[551,44869,1206],{"class":587},[551,44871,43982],{"class":594},[551,44873,1206],{"class":587},[551,44875,7305],{"class":594},[551,44877,44021],{"class":587},[551,44879,598],{"class":587},[551,44881,44882,44884,44886],{"class":553,"line":910},[551,44883,29290],{"class":587},[551,44885,1197],{"class":594},[551,44887,598],{"class":587},[551,44889,44890],{"class":553,"line":920},[551,44891,9080],{"class":594},[551,44893,44894,44896,44898],{"class":553,"line":930},[551,44895,784],{"class":587},[551,44897,3276],{"class":738},[551,44899,742],{"class":587},[551,44901,44902],{"class":553,"line":3536},[551,44903,1293],{"emptyLinePlaceholder":526},[551,44905,44906,44908,44910],{"class":553,"line":4422},[551,44907,735],{"class":587},[551,44909,739],{"class":738},[551,44911,742],{"class":587},[551,44913,44914,44916,44918,44920,44922,44924,44926,44928,44930,44932,44934,44936,44938,44940,44942,44944,44946,44948],{"class":553,"line":6194},[551,44915,747],{"class":587},[551,44917,28243],{"class":738},[551,44919,3595],{"class":753},[551,44921,757],{"class":587},[551,44923,760],{"class":587},[551,44925,30664],{"class":561},[551,44927,760],{"class":587},[551,44929,2867],{"class":753},[551,44931,757],{"class":587},[551,44933,760],{"class":587},[551,44935,2720],{"class":561},[551,44937,760],{"class":587},[551,44939,30679],{"class":753},[551,44941,757],{"class":587},[551,44943,760],{"class":587},[551,44945,18579],{"class":561},[551,44947,760],{"class":587},[551,44949,742],{"class":587},[551,44951,44952,44954],{"class":553,"line":6204},[551,44953,772],{"class":587},[551,44955,44956],{"class":738},"admin-editor-mention-menu\n",[551,44958,44959,44962,44964,44966,44969],{"class":553,"line":6223},[551,44960,44961],{"class":753},"      v-model:search-term",[551,44963,757],{"class":587},[551,44965,760],{"class":587},[551,44967,44968],{"class":561},"search",[551,44970,4281],{"class":587},[551,44972,44973],{"class":553,"line":6233},[551,44974,44975],{"class":753},"      ignore-filter\n",[551,44977,44978],{"class":553,"line":6242},[551,44979,44980],{"class":753},"      :editor\n",[551,44982,44983,44986,44988,44990,44993],{"class":553,"line":6251},[551,44984,44985],{"class":753},"      :items",[551,44987,757],{"class":587},[551,44989,760],{"class":587},[551,44991,44992],{"class":561},"users ?? []",[551,44994,4281],{"class":587},[551,44996,44997],{"class":553,"line":524},[551,44998,11411],{"class":587},[551,45000,45001,45003,45005],{"class":553,"line":6864},[551,45002,923],{"class":587},[551,45004,28243],{"class":738},[551,45006,742],{"class":587},[551,45008,45009,45011,45013],{"class":553,"line":6873},[551,45010,784],{"class":587},[551,45012,739],{"class":738},[551,45014,742],{"class":587},[705,45016,45017,45019,45020,45023],{},[548,45018,44968],{}," 變動時 ",[548,45021,45022],{},"useFetch"," 會自動重打 API。",[536,45025,5752],{"id":5752},[705,45027,26929,45028,713],{},[697,45029,426],{"href":33537},[536,45031,2460],{"id":2460},[705,45033,45034,45035,45038,45039,45042,45043,45046],{},"mention chip 樣式不內含於 registry，由使用者依需求自套。demo 以 ",[548,45036,45037],{},"**:data-[type=mention]:*"," utility class 注入編輯器容器（見「用法」demo 原始碼的 ",[548,45040,45041],{},"mentionChipClass"," 常數，色票對齊 admin design tokens），也可以改用 CSS 選取 ",[548,45044,45045],{},"[data-type='mention']"," 自寫：",[539,45048,45052],{"className":45049,"code":45050,"language":45051,"meta":546,"style":546},"language-css shiki shiki-themes material-theme-lighter material-theme material-theme-palenight",":deep([data-type='mention']) {\n  \u002F* 自訂樣式 *\u002F\n}\n","css",[548,45053,45054,45077,45082],{"__ignoreMap":546},[551,45055,45056,45059,45061,45063,45065,45067,45069,45071,45073,45075],{"class":553,"line":554},[551,45057,45058],{"class":594},":deep(",[551,45060,24987],{"class":587},[551,45062,44064],{"class":753},[551,45064,757],{"class":587},[551,45066,1214],{"class":587},[551,45068,43951],{"class":561},[551,45070,1214],{"class":587},[551,45072,3452],{"class":587},[551,45074,10132],{"class":594},[551,45076,1161],{"class":587},[551,45078,45079],{"class":553,"line":591},[551,45080,45081],{"class":4831},"  \u002F* 自訂樣式 *\u002F\n",[551,45083,45084],{"class":553,"line":601},[551,45085,10148],{"class":587},[536,45087,720],{"id":719},[692,45089,43863],{"id":43863},[940,45091],{"component":45092},"AdminEditorMentionMenu",[536,45094,985],{"id":985},[987,45096],{"component":45092},[990,45098,45099],{},"html pre.shiki code .sBMFI, html code.shiki .sBMFI{--shiki-light:#E2931D;--shiki-default:#FFCB6B;--shiki-dark:#FFCB6B}html pre.shiki code .sfazB, html code.shiki .sfazB{--shiki-light:#91B859;--shiki-default:#C3E88D;--shiki-dark:#C3E88D}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 pre.shiki code .s7zQu, html code.shiki .s7zQu{--shiki-light:#39ADB5;--shiki-light-font-style:italic;--shiki-default:#89DDFF;--shiki-default-font-style:italic;--shiki-dark:#89DDFF;--shiki-dark-font-style:italic}html pre.shiki code .sMK4o, html code.shiki .sMK4o{--shiki-light:#39ADB5;--shiki-default:#89DDFF;--shiki-dark:#89DDFF}html pre.shiki code .sTEyZ, html code.shiki .sTEyZ{--shiki-light:#90A4AE;--shiki-default:#EEFFFF;--shiki-dark:#BABED8}html pre.shiki code .spNyl, html code.shiki .spNyl{--shiki-light:#9C3EDA;--shiki-default:#C792EA;--shiki-dark:#C792EA}html pre.shiki code .s2Zo4, html code.shiki .s2Zo4{--shiki-light:#6182B8;--shiki-default:#82AAFF;--shiki-dark:#82AAFF}html pre.shiki code .swJcz, html code.shiki .swJcz{--shiki-light:#E53935;--shiki-default:#F07178;--shiki-dark:#F07178}html pre.shiki code .sHdIc, html code.shiki .sHdIc{--shiki-light:#90A4AE;--shiki-light-font-style:italic;--shiki-default:#EEFFFF;--shiki-default-font-style:italic;--shiki-dark:#BABED8;--shiki-dark-font-style:italic}html pre.shiki code .sHwdD, html code.shiki .sHwdD{--shiki-light:#90A4AE;--shiki-light-font-style:italic;--shiki-default:#546E7A;--shiki-default-font-style:italic;--shiki-dark:#676E95;--shiki-dark-font-style:italic}",{"title":546,"searchDepth":601,"depth":601,"links":45101},[45102,45103,45104,45107,45108,45109,45110,45113],{"id":507,"depth":591,"text":507},{"id":683,"depth":591,"text":683},{"id":44480,"depth":591,"text":44481,"children":45105},[45106],{"id":44559,"depth":601,"text":44560},{"id":44628,"depth":591,"text":44628},{"id":5752,"depth":591,"text":5752},{"id":2460,"depth":591,"text":2460},{"id":719,"depth":591,"text":720,"children":45111},[45112],{"id":43863,"depth":601,"text":43863},{"id":985,"depth":591,"text":985},"輸入 @ 觸發浮動選單；挑選並插入提及對象。",{"doc":45116},"https:\u002F\u002Ftiptap.dev\u002Fdocs\u002Feditor\u002Fextensions\u002Fnodes\u002Fmention",{},{"title":494,"description":45114},"MO7MeYseH9kAQT8VKyFaai73YXU9MtlooXXef69lphE",{"id":45121,"title":503,"body":45122,"component":18,"description":45201,"extension":1015,"links":19,"meta":45202,"navigation":526,"new":18,"path":504,"seo":45203,"stem":505,"wrapperKind":19,"__hash__":45204},"docs\u002Fdocs\u002Fget-started\u002F1.introduction.md",{"type":533,"value":45123,"toc":45198},[45124,45127,45130,45179,45182],[705,45125,45126],{},"Admin Registry 是 shadcn-vue registry：用 CLI 把元件原始碼複製進專案，不是安裝成 npm 套件。",[705,45128,45129],{},"與 shadcn-vue 官方集合的差異：",[1558,45131,45132,45142,45173],{},[1561,45133,45134,45135,45138,45139],{},"元件以 ",[548,45136,45137],{},"admin-"," 為字首，樣式用 ",[548,45140,45141],{},"tailwind-variants",[1561,45143,45144,45145,14865,45148,14865,45151,14865,45154,14865,45157,14865,45160,14865,45163,14865,45166,45169,45170,19410],{},"使用設計系統 color tokens（",[548,45146,45147],{},"primary-*",[548,45149,45150],{},"secondary-*",[548,45152,45153],{},"text-*",[548,45155,45156],{},"bg-*",[548,45158,45159],{},"success-*",[548,45161,45162],{},"info-*",[548,45164,45165],{},"warning-*",[548,45167,45168],{},"error-*","）與 typography utilities（",[548,45171,45172],{},"typo-*",[1561,45174,45175,45176,45178],{},"尺寸以 ",[548,45177,38707],{}," 為主",[536,45180,45181],{"id":45181},"下一步",[1558,45183,45184,45188,45193],{},[1561,45185,45186],{},[697,45187,507],{"href":508},[1561,45189,45190,45192],{},[697,45191,511],{"href":512}," — color palette 與 typography utilities",[1561,45194,45195],{},[697,45196,5885],{"href":45197},"\u002Fdocs\u002Fcomponents",{"title":546,"searchDepth":601,"depth":601,"links":45199},[45200],{"id":45181,"depth":591,"text":45181},"透過 shadcn-vue CLI 複製進專案的 Vue 3 admin 元件集合（admin- 字首）。",{},{"title":503,"description":45201},"Vddo5bXpgIf1nhfj9X754COtMk86vK9ZWQmcK3v1pTk",{"id":45206,"title":507,"body":45207,"component":18,"description":46035,"extension":1015,"links":19,"meta":46036,"navigation":526,"new":18,"path":508,"seo":46037,"stem":509,"wrapperKind":19,"__hash__":46038},"docs\u002Fdocs\u002Fget-started\u002F2.installation.md",{"type":533,"value":45208,"toc":46021},[45209,45212,45219,45228,45244,45268,45271,45293,45299,45328,45332,45346,45349,45363,45367,45378,45456,45460,45475,45573,45576,45594,45625,45633,45637,45645,45648,45664,45667,45690,45699,45703,45709,45712,45804,45808,45816,45823,45845,45925,45944,46018],[536,45210,45211],{"id":45211},"先決條件",[705,45213,45214,45215,45218],{},"Node.js 22 以上。shadcn-vue 2.8.2 需 Node ≥ 22；Node 20 執行 CLI 會出現 ",[548,45216,45217],{},"undici"," 錯誤。",[705,45220,45221,45222,7623,45224,4782,45226,2466],{},"專案需已完成 shadcn-vue 設定，且 ",[548,45223,17139],{},[548,45225,17142],{},[548,45227,17145],{},[1558,45229,45230,45237],{},[1561,45231,45232],{},[697,45233,45236],{"href":45234,"rel":45235},"https:\u002F\u002Fshadcn-vue.com\u002Fdocs\u002Finstallation\u002Fvite",[701],"Vite",[1561,45238,45239],{},[697,45240,45243],{"href":45241,"rel":45242},"https:\u002F\u002Fshadcn-vue.com\u002Fdocs\u002Finstallation\u002Fnuxt",[701],"Nuxt",[705,45245,45246,45248,45249,45251,45252,45254,45255,45258,45259,45261,45262,45265,45266,713],{},[548,45247,17135],{}," 元件直接 import ",[548,45250,17314],{},"。shadcn-vue CLI 會依 ",[548,45253,17142],{},"，把 registry ",[548,45256,45257],{},"dependencies"," 裡已知的 icon 套件換成該設定對應的套件。未指定時預設是 ",[548,45260,17310],{},"，此時不會改寫這些 import，因此 ",[548,45263,45264],{},"add @admin\u002Fdialog"," 等元件後 build 會找不到 ",[548,45267,17314],{},[705,45269,45270],{},"尚未初始化時：",[539,45272,45274],{"className":541,"code":45273,"language":544,"meta":546,"style":546},"pnpm dlx shadcn-vue init --icon-library tabler\n",[548,45275,45276],{"__ignoreMap":546},[551,45277,45278,45280,45282,45284,45287,45290],{"class":553,"line":554},[551,45279,558],{"class":557},[551,45281,562],{"class":561},[551,45283,565],{"class":561},[551,45285,45286],{"class":561}," init",[551,45288,45289],{"class":561}," --icon-library",[551,45291,45292],{"class":561}," tabler\n",[705,45294,45295,45296,45298],{},"完成後確認 ",[548,45297,17139],{}," 含：",[539,45300,45302],{"className":17213,"code":45301,"language":17215,"meta":546,"style":546},"{\n  \"iconLibrary\": \"tabler\"\n}\n",[548,45303,45304,45308,45324],{"__ignoreMap":546},[551,45305,45306],{"class":553,"line":554},[551,45307,1161],{"class":587},[551,45309,45310,45312,45314,45316,45318,45320,45322],{"class":553,"line":591},[551,45311,17226],{"class":587},[551,45313,17142],{"class":753},[551,45315,760],{"class":587},[551,45317,1169],{"class":587},[551,45319,17235],{"class":587},[551,45321,17145],{"class":561},[551,45323,4281],{"class":587},[551,45325,45326],{"class":553,"line":601},[551,45327,10148],{"class":587},[692,45329,45331],{"id":45330},"已是-lucide-或已有-componentsjson","已是 lucide 或已有 components.json",[705,45333,17114,45334,45336,45337,17146,45340,45343,45344,713],{},[548,45335,17142],{}," 改成 ",[548,45338,45339],{},"\"tabler\"",[548,45341,45342],{},"pnpm dlx shadcn-vue add","。CLI 才會安裝 ",[548,45345,17314],{},[705,45347,45348],{},"元件已經寫入、build 仍找不到套件時：",[539,45350,45352],{"className":541,"code":45351,"language":544,"meta":546,"style":546},"pnpm add @tabler\u002Ficons-vue\n",[548,45353,45354],{"__ignoreMap":546},[551,45355,45356,45358,45360],{"class":553,"line":554},[551,45357,558],{"class":557},[551,45359,568],{"class":561},[551,45361,45362],{"class":561}," @tabler\u002Ficons-vue\n",[536,45364,45366],{"id":45365},"設定-registry","設定 Registry",[705,45368,45369,45370,45372,45373,45375,45376,2466],{},"在根目錄 ",[548,45371,17139],{}," 加入 ",[548,45374,17135],{},"，並保留 ",[548,45377,17142],{},[539,45379,45380],{"className":17213,"code":17214,"language":17215,"meta":546,"style":546},[548,45381,45382,45386,45404,45416,45428,45444,45448,45452],{"__ignoreMap":546},[551,45383,45384],{"class":553,"line":554},[551,45385,1161],{"class":587},[551,45387,45388,45390,45392,45394,45396,45398,45400,45402],{"class":553,"line":591},[551,45389,17226],{"class":587},[551,45391,17142],{"class":753},[551,45393,760],{"class":587},[551,45395,1169],{"class":587},[551,45397,17235],{"class":587},[551,45399,17145],{"class":561},[551,45401,760],{"class":587},[551,45403,598],{"class":587},[551,45405,45406,45408,45410,45412,45414],{"class":553,"line":601},[551,45407,17226],{"class":587},[551,45409,17248],{"class":753},[551,45411,760],{"class":587},[551,45413,1169],{"class":587},[551,45415,588],{"class":587},[551,45417,45418,45420,45422,45424,45426],{"class":553,"line":609},[551,45419,17259],{"class":587},[551,45421,17135],{"class":557},[551,45423,760],{"class":587},[551,45425,1169],{"class":587},[551,45427,588],{"class":587},[551,45429,45430,45432,45434,45436,45438,45440,45442],{"class":553,"line":617},[551,45431,17272],{"class":587},[551,45433,17276],{"class":17275},[551,45435,760],{"class":587},[551,45437,1169],{"class":587},[551,45439,17235],{"class":587},[551,45441,17285],{"class":561},[551,45443,4281],{"class":587},[551,45445,45446],{"class":553,"line":625},[551,45447,1227],{"class":587},[551,45449,45450],{"class":553,"line":633},[551,45451,1232],{"class":587},[551,45453,45454],{"class":553,"line":641},[551,45455,10148],{"class":587},[692,45457,45459],{"id":45458},"registry-授權","Registry 授權",[705,45461,45462,45463,45465,45466,33522,45468,45471,45472,2466],{},"目前 ",[548,45464,17135],{}," 網址免授權即可讀取。若之後改為需授權，在 ",[548,45467,17135],{},[548,45469,45470],{},"headers","，並在環境變數設定 ",[548,45473,45474],{},"REGISTRY_TOKEN",[539,45476,45478],{"className":17213,"code":45477,"language":17215,"meta":546,"style":546},"{\n  \"registries\": {\n    \"@admin\": {\n      \"url\": \"https:\u002F\u002Fcomponent-registry-4d4d86.gitlab.io\u002Fr\u002Fstyles\u002Fadmin\u002F{name}.json\",\n      \"headers\": {\n        \"Authorization\": \"Bearer ${REGISTRY_TOKEN}\"\n      }\n    }\n  }\n}\n",[548,45479,45480,45484,45496,45508,45526,45538,45557,45561,45565,45569],{"__ignoreMap":546},[551,45481,45482],{"class":553,"line":554},[551,45483,1161],{"class":587},[551,45485,45486,45488,45490,45492,45494],{"class":553,"line":591},[551,45487,17226],{"class":587},[551,45489,17248],{"class":753},[551,45491,760],{"class":587},[551,45493,1169],{"class":587},[551,45495,588],{"class":587},[551,45497,45498,45500,45502,45504,45506],{"class":553,"line":601},[551,45499,17259],{"class":587},[551,45501,17135],{"class":557},[551,45503,760],{"class":587},[551,45505,1169],{"class":587},[551,45507,588],{"class":587},[551,45509,45510,45512,45514,45516,45518,45520,45522,45524],{"class":553,"line":609},[551,45511,17272],{"class":587},[551,45513,17276],{"class":17275},[551,45515,760],{"class":587},[551,45517,1169],{"class":587},[551,45519,17235],{"class":587},[551,45521,17285],{"class":561},[551,45523,760],{"class":587},[551,45525,598],{"class":587},[551,45527,45528,45530,45532,45534,45536],{"class":553,"line":617},[551,45529,17272],{"class":587},[551,45531,45470],{"class":17275},[551,45533,760],{"class":587},[551,45535,1169],{"class":587},[551,45537,588],{"class":587},[551,45539,45540,45543,45546,45548,45550,45552,45555],{"class":553,"line":625},[551,45541,45542],{"class":587},"        \"",[551,45544,45545],{"class":738},"Authorization",[551,45547,760],{"class":587},[551,45549,1169],{"class":587},[551,45551,17235],{"class":587},[551,45553,45554],{"class":561},"Bearer ${REGISTRY_TOKEN}",[551,45556,4281],{"class":587},[551,45558,45559],{"class":553,"line":633},[551,45560,1383],{"class":587},[551,45562,45563],{"class":553,"line":641},[551,45564,1227],{"class":587},[551,45566,45567],{"class":553,"line":649},[551,45568,1232],{"class":587},[551,45570,45571],{"class":553,"line":657},[551,45572,10148],{"class":587},[536,45574,45575],{"id":45575},"安裝設計系統樣式",[539,45577,45579],{"className":541,"code":45578,"language":544,"meta":546,"style":546},"pnpm dlx shadcn-vue add @admin\u002Fstyle\n",[548,45580,45581],{"__ignoreMap":546},[551,45582,45583,45585,45587,45589,45591],{"class":553,"line":554},[551,45584,558],{"class":557},[551,45586,562],{"class":561},[551,45588,565],{"class":561},[551,45590,568],{"class":561},[551,45592,45593],{"class":561}," @admin\u002Fstyle\n",[2817,45595,45597],{"title":45596,"type":8626},"會覆寫 utils 檔",[705,45598,45599,45602,45603,45605,45606,7623,45608,45611,45612,45615,45616,45619,45620,8904,45622,19996],{},[548,45600,45601],{},"@admin\u002Fstyle"," 含 ",[548,45604,30088],{}," 的 utils 檔，路徑依 ",[548,45607,17139],{},[548,45609,45610],{},"aliases.utils","（Nuxt 常見為 ",[548,45613,45614],{},"app\u002Flib\u002Futils.ts","）。該檔已存在時，CLI 會詢問是否覆寫，預設為否（略過）；回答是或加 ",[548,45617,45618],{},"-o"," 會覆寫。專案的 utils 有自訂內容時，請先備份或確認差異，要覆寫再加 ",[548,45621,45618],{},[548,45623,45624],{},"pnpm dlx shadcn-vue add @admin\u002Fstyle -o",[705,45626,45627,45628,45630,45631,713],{},"驗證：專案應能解析 admin color tokens 與 ",[548,45629,45172],{},"；細節見 ",[697,45632,511],{"href":512},[536,45634,45636],{"id":45635},"agent-skill可選","Agent skill（可選）",[705,45638,45639,45640,45642,45643,713],{},"要以 AI agent 依 Setup／Install／Compose 操作 ",[548,45641,17135],{}," 時，見 ",[697,45644,187],{"href":188},[536,45646,45647],{"id":45647},"安裝元件",[539,45649,45650],{"className":541,"code":2399,"language":544,"meta":546,"style":546},[548,45651,45652],{"__ignoreMap":546},[551,45653,45654,45656,45658,45660,45662],{"class":553,"line":554},[551,45655,558],{"class":557},[551,45657,562],{"class":561},[551,45659,565],{"class":561},[551,45661,568],{"class":561},[551,45663,2414],{"class":561},[705,45665,45666],{},"一次多個：",[539,45668,45670],{"className":541,"code":45669,"language":544,"meta":546,"style":546},"pnpm dlx shadcn-vue add @admin\u002Fbutton @admin\u002Finput @admin\u002Fdialog\n",[548,45671,45672],{"__ignoreMap":546},[551,45673,45674,45676,45678,45680,45682,45685,45688],{"class":553,"line":554},[551,45675,558],{"class":557},[551,45677,562],{"class":561},[551,45679,565],{"class":561},[551,45681,568],{"class":561},[551,45683,45684],{"class":561}," @admin\u002Fbutton",[551,45686,45687],{"class":561}," @admin\u002Finput",[551,45689,5046],{"class":561},[705,45691,45692,45693,45695,45696,19996],{},"驗證：對應元件出現在 ",[548,45694,17139],{}," 設定的 components 目錄（常見為 ",[548,45697,45698],{},"@\u002Fcomponents\u002Fadmin\u002F",[536,45700,45702],{"id":45701},"ssrnuxt","SSR（Nuxt）",[705,45704,45705,45706,45708],{},"元件本身不包 ",[548,45707,1591],{},"，純 Vue 3 專案可直接用。",[705,45710,45711],{},"不支援 SSR 的元件（依賴 DOM、canvas、WASM）在 Nuxt 自行包：",[539,45713,45715],{"className":726,"code":45714,"language":728,"meta":546,"style":546},"\u003Ctemplate>\n  \u003Cclient-only>\n    \u003Cadmin-vxe-table :columns=\"columns\" :data=\"data\" \u002F>\n    \u003Ctemplate #fallback>\n      \u003C!-- 可選：骨架或 loading -->\n    \u003C\u002Ftemplate>\n  \u003C\u002Fclient-only>\n\u003C\u002Ftemplate>\n",[548,45716,45717,45725,45734,45762,45775,45780,45788,45796],{"__ignoreMap":546},[551,45718,45719,45721,45723],{"class":553,"line":554},[551,45720,735],{"class":587},[551,45722,739],{"class":738},[551,45724,742],{"class":587},[551,45726,45727,45729,45732],{"class":553,"line":591},[551,45728,747],{"class":587},[551,45730,45731],{"class":738},"client-only",[551,45733,742],{"class":587},[551,45735,45736,45738,45740,45742,45744,45746,45748,45750,45752,45754,45756,45758,45760],{"class":553,"line":601},[551,45737,772],{"class":587},[551,45739,16273],{"class":738},[551,45741,16276],{"class":753},[551,45743,757],{"class":587},[551,45745,760],{"class":587},[551,45747,16283],{"class":561},[551,45749,760],{"class":587},[551,45751,16288],{"class":753},[551,45753,757],{"class":587},[551,45755,760],{"class":587},[551,45757,15267],{"class":561},[551,45759,760],{"class":587},[551,45761,1449],{"class":587},[551,45763,45764,45766,45768,45770,45773],{"class":553,"line":609},[551,45765,772],{"class":587},[551,45767,739],{"class":738},[551,45769,8713],{"class":587},[551,45771,45772],{"class":753},"fallback",[551,45774,742],{"class":587},[551,45776,45777],{"class":553,"line":617},[551,45778,45779],{"class":4831},"      \u003C!-- 可選：骨架或 loading -->\n",[551,45781,45782,45784,45786],{"class":553,"line":625},[551,45783,913],{"class":587},[551,45785,739],{"class":738},[551,45787,742],{"class":587},[551,45789,45790,45792,45794],{"class":553,"line":633},[551,45791,923],{"class":587},[551,45793,45731],{"class":738},[551,45795,742],{"class":587},[551,45797,45798,45800,45802],{"class":553,"line":641},[551,45799,784],{"class":587},[551,45801,739],{"class":738},[551,45803,742],{"class":587},[692,45805,45807],{"id":45806},"元件同名警告-nuxt_b3011","元件同名警告 NUXT_B3011",[705,45809,45810,45811,14865,45813,45815],{},"安裝 ",[548,45812,17341],{},[548,45814,17344],{}," 等元件後，Nuxt build 可能出現：",[539,45817,45821],{"className":45818,"code":45820,"language":2563},[45819],"language-text","[NUXT_B3011] Two component files resolving to the same name AdminButton\n",[548,45822,45820],{"__ignoreMap":546},[705,45824,45825,45826,45829,45830,45833,45834,45837,45838,45840,45841,45844],{},"原因：Nuxt 預設會把 ",[548,45827,45828],{},".ts"," 也當成元件掃描，元件資料夾裡的 ",[548,45831,45832],{},"index.ts","（barrel 匯出檔）會被解析成與 ",[548,45835,45836],{},"admin-button.vue"," 同名的元件。這只是警告，不影響 build 與執行。在 ",[548,45839,1141],{}," 設定只掃描 ",[548,45842,45843],{},".vue"," 檔即可避開：",[539,45846,45848],{"className":574,"code":45847,"language":576,"meta":546,"style":546},"export default defineNuxtConfig({\n  components: {\n    dirs: [{ path: '~\u002Fcomponents', extensions: ['.vue'] }]\n  }\n})\n",[548,45849,45850,45862,45871,45915,45919],{"__ignoreMap":546},[551,45851,45852,45854,45856,45858,45860],{"class":553,"line":554},[551,45853,1148],{"class":583},[551,45855,1151],{"class":583},[551,45857,1155],{"class":1154},[551,45859,1158],{"class":594},[551,45861,1161],{"class":587},[551,45863,45864,45867,45869],{"class":553,"line":591},[551,45865,45866],{"class":738},"  components",[551,45868,1169],{"class":587},[551,45870,588],{"class":587},[551,45872,45873,45876,45878,45880,45882,45885,45887,45889,45892,45894,45896,45899,45901,45903,45905,45907,45909,45911,45913],{"class":553,"line":601},[551,45874,45875],{"class":738},"    dirs",[551,45877,1169],{"class":587},[551,45879,9070],{"class":594},[551,45881,4243],{"class":587},[551,45883,45884],{"class":738}," path",[551,45886,1169],{"class":587},[551,45888,674],{"class":587},[551,45890,45891],{"class":561},"~\u002Fcomponents",[551,45893,1214],{"class":587},[551,45895,3348],{"class":587},[551,45897,45898],{"class":738}," extensions",[551,45900,1169],{"class":587},[551,45902,9070],{"class":594},[551,45904,1214],{"class":587},[551,45906,45843],{"class":561},[551,45908,1214],{"class":587},[551,45910,3398],{"class":594},[551,45912,668],{"class":587},[551,45914,9080],{"class":594},[551,45916,45917],{"class":553,"line":609},[551,45918,1232],{"class":587},[551,45920,45921,45923],{"class":553,"line":617},[551,45922,668],{"class":587},[551,45924,1222],{"class":594},[705,45926,45927,45928,45931,45932,45935,45936,45939,45940,45943],{},"已使用 ",[548,45929,45930],{},"shadcn-nuxt"," 的專案，也可以把兩個目錄都列進 ",[548,45933,45934],{},"componentDir","（兩個都要列，只列 ",[548,45937,45938],{},"@\u002Fcomponents\u002Fadmin"," 會讓 ",[548,45941,45942],{},"ui"," 目錄出現同樣的警告）：",[539,45945,45947],{"className":574,"code":45946,"language":576,"meta":546,"style":546},"export default defineNuxtConfig({\n  shadcn: {\n    prefix: '',\n    componentDir: ['@\u002Fcomponents\u002Fui', '@\u002Fcomponents\u002Fadmin']\n  }\n})\n",[548,45948,45949,45961,45970,45982,46008,46012],{"__ignoreMap":546},[551,45950,45951,45953,45955,45957,45959],{"class":553,"line":554},[551,45952,1148],{"class":583},[551,45954,1151],{"class":583},[551,45956,1155],{"class":1154},[551,45958,1158],{"class":594},[551,45960,1161],{"class":587},[551,45962,45963,45966,45968],{"class":553,"line":591},[551,45964,45965],{"class":738},"  shadcn",[551,45967,1169],{"class":587},[551,45969,588],{"class":587},[551,45971,45972,45975,45977,45980],{"class":553,"line":601},[551,45973,45974],{"class":738},"    prefix",[551,45976,1169],{"class":587},[551,45978,45979],{"class":587}," ''",[551,45981,598],{"class":587},[551,45983,45984,45987,45989,45991,45993,45996,45998,46000,46002,46004,46006],{"class":553,"line":609},[551,45985,45986],{"class":738},"    componentDir",[551,45988,1169],{"class":587},[551,45990,9070],{"class":594},[551,45992,1214],{"class":587},[551,45994,45995],{"class":561},"@\u002Fcomponents\u002Fui",[551,45997,1214],{"class":587},[551,45999,3348],{"class":587},[551,46001,674],{"class":587},[551,46003,45938],{"class":561},[551,46005,1214],{"class":587},[551,46007,9080],{"class":594},[551,46009,46010],{"class":553,"line":617},[551,46011,1232],{"class":587},[551,46013,46014,46016],{"class":553,"line":625},[551,46015,668],{"class":587},[551,46017,1222],{"class":594},[990,46019,46020],{},"html pre.shiki code .sBMFI, html code.shiki .sBMFI{--shiki-light:#E2931D;--shiki-default:#FFCB6B;--shiki-dark:#FFCB6B}html pre.shiki code .sfazB, html code.shiki .sfazB{--shiki-light:#91B859;--shiki-default:#C3E88D;--shiki-dark:#C3E88D}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 pre.shiki code .sMK4o, html code.shiki .sMK4o{--shiki-light:#39ADB5;--shiki-default:#89DDFF;--shiki-dark:#89DDFF}html pre.shiki code .spNyl, html code.shiki .spNyl{--shiki-light:#9C3EDA;--shiki-default:#C792EA;--shiki-dark:#C792EA}html pre.shiki code .sbssI, html code.shiki .sbssI{--shiki-light:#F76D47;--shiki-default:#F78C6C;--shiki-dark:#F78C6C}html pre.shiki code .swJcz, html code.shiki .swJcz{--shiki-light:#E53935;--shiki-default:#F07178;--shiki-dark:#F07178}html pre.shiki code .sHwdD, html code.shiki .sHwdD{--shiki-light:#90A4AE;--shiki-light-font-style:italic;--shiki-default:#546E7A;--shiki-default-font-style:italic;--shiki-dark:#676E95;--shiki-dark-font-style:italic}html pre.shiki code .s7zQu, html code.shiki .s7zQu{--shiki-light:#39ADB5;--shiki-light-font-style:italic;--shiki-default:#89DDFF;--shiki-default-font-style:italic;--shiki-dark:#89DDFF;--shiki-dark-font-style:italic}html pre.shiki code .s2Zo4, html code.shiki .s2Zo4{--shiki-light:#6182B8;--shiki-default:#82AAFF;--shiki-dark:#82AAFF}html pre.shiki code .sTEyZ, html code.shiki .sTEyZ{--shiki-light:#90A4AE;--shiki-default:#EEFFFF;--shiki-dark:#BABED8}",{"title":546,"searchDepth":601,"depth":601,"links":46022},[46023,46026,46029,46030,46031,46032],{"id":45211,"depth":591,"text":45211,"children":46024},[46025],{"id":45330,"depth":601,"text":45331},{"id":45365,"depth":591,"text":45366,"children":46027},[46028],{"id":45458,"depth":601,"text":45459},{"id":45575,"depth":591,"text":45575},{"id":45635,"depth":591,"text":45636},{"id":45647,"depth":591,"text":45647},{"id":45701,"depth":591,"text":45702,"children":46033},[46034],{"id":45806,"depth":601,"text":45807},"把 @admin registry 接到專案，並用 shadcn-vue CLI 安裝樣式與元件。",{},{"title":507,"description":46035},"0lpU_JaQyVI5DAPSodeDt0Hw0fERQJkIL2P9_NBdZ5o",{"id":46040,"title":511,"body":46041,"component":18,"description":46112,"extension":1015,"links":19,"meta":46113,"navigation":526,"new":18,"path":512,"seo":46114,"stem":513,"wrapperKind":19,"__hash__":46115},"docs\u002Fdocs\u002Fget-started\u002F3.theming.md",{"type":533,"value":46042,"toc":46108},[46043,46047,46050,46088,46101,46105],[536,46044,46046],{"id":46045},"色彩-semantic-colors","色彩 (Semantic Colors)",[46048,46049],"semantic-colors-preview",{},[1558,46051,46052,46058,46064,46070,46076],{},[1561,46053,46054,46057],{},[548,46055,46056],{},"primary-{10-90}","：主要操作、強調、互動焦點",[1561,46059,46060,46063],{},[548,46061,46062],{},"secondary-{10-90}","：次要品牌色、輔助區塊",[1561,46065,46066,46069],{},[548,46067,46068],{},"text-{10-90}","：標題、段落、輔助文字",[1561,46071,46072,46075],{},[548,46073,46074],{},"bg-{10-90}","：畫布、卡片、巢狀 surface",[1561,46077,46078,2470,46081,2470,46083,2470,46085,46087],{},[548,46079,46080],{},"success",[548,46082,2820],{},[548,46084,8626],{},[548,46086,6744],{},"：回饋、狀態、驗證",[705,46089,46090,46091,14865,46094,14865,46097,46100],{},"用法例：",[548,46092,46093],{},"text-primary-50",[548,46095,46096],{},"bg-success-10",[548,46098,46099],{},"border-error-60","（會隨上方 preview 切換）。",[536,46102,46104],{"id":46103},"typography-utilities","Typography Utilities",[46106,46107],"typography-utilities-preview",{},{"title":546,"searchDepth":601,"depth":601,"links":46109},[46110,46111],{"id":46045,"depth":591,"text":46046},{"id":46103,"depth":591,"text":46104},"語意色彩 token（primary-*、text-*、bg-*、狀態色）與 typo-* typography utilities。",{},{"title":511,"description":46112},"-3rhtBR-1KOvIbai2dfdF5R6hAnMbw3qmZvhSTulICs",{"id":46117,"title":515,"body":46118,"component":18,"description":46240,"extension":1015,"links":19,"meta":46241,"navigation":526,"new":18,"path":516,"seo":46242,"stem":517,"wrapperKind":19,"__hash__":46243},"docs\u002Fdocs\u002Fget-started\u002F4.type-safe.md",{"type":533,"value":46119,"toc":46236},[46120,46126,46136,46139,46165,46168,46178,46221,46230,46233],[705,46121,46122,46123,46125],{},"部分 admin 元件的 ",[548,46124,3248],{}," 在 compile-time 不會與呼叫端期望的較嚴型別對齊。元件文件的「Type-safe 封裝」章節提供可複製的封裝範例與驗證 demo。",[705,46127,46128,46131,46132,46135],{},[1135,46129,46130],{},"文件站不會顯示這些型別錯誤。"," 錯誤只會出現在呼叫端專案：安裝元件、複製程式碼，並開啟下方檢查之後，由編輯器或 ",[548,46133,46134],{},"vue-tsc"," 標出。",[536,46137,46138],{"id":46138},"要看到錯誤須具備",[17110,46140,46141,46150,46156],{},[1561,46142,46143,46149],{},[1135,46144,46145,46146,46148],{},"安裝對應 ",[548,46147,17135],{}," 元件","到呼叫端專案（見各元件文件的「安裝」）。",[1561,46151,46152,46155],{},[1135,46153,46154],{},"複製","該頁「Type-safe 封裝」的封裝範例與驗證 demo 到專案（或等價自行撰寫）。",[1561,46157,46158,29420,46160,46162,46163,19996],{},[1135,46159,703],{},[548,46161,2826],{},"（或已包含此檢查的 ",[548,46164,2830],{},[536,46166,46167],{"id":46167},"開啟檢查",[705,46169,46170,46171,18488,46174,46177],{},"於呼叫端專案的 ",[548,46172,46173],{},"tsconfig",[548,46175,46176],{},"jsconfig","）設：",[539,46179,46181],{"className":17213,"code":46180,"language":17215,"meta":546,"style":546},"{\n  \"vueCompilerOptions\": {\n    \"strictVModel\": true\n  }\n}\n",[548,46182,46183,46187,46200,46213,46217],{"__ignoreMap":546},[551,46184,46185],{"class":553,"line":554},[551,46186,1161],{"class":587},[551,46188,46189,46191,46194,46196,46198],{"class":553,"line":591},[551,46190,17226],{"class":587},[551,46192,46193],{"class":753},"vueCompilerOptions",[551,46195,760],{"class":587},[551,46197,1169],{"class":587},[551,46199,588],{"class":587},[551,46201,46202,46204,46206,46208,46210],{"class":553,"line":601},[551,46203,17259],{"class":587},[551,46205,2826],{"class":557},[551,46207,760],{"class":587},[551,46209,1169],{"class":587},[551,46211,46212],{"class":587}," true\n",[551,46214,46215],{"class":553,"line":609},[551,46216,1232],{"class":587},[551,46218,46219],{"class":553,"line":617},[551,46220,10148],{"class":587},[705,46222,46223,46224,46226,46227,46229],{},"若已開啟 ",[548,46225,2830],{},"，則已包含 ",[548,46228,2826],{},"，不必再設。",[705,46231,46232],{},"未開啟時，驗證 demo 仍可閱讀；刻意錯誤的綁定不會被標為型別錯誤。",[990,46234,46235],{},"html pre.shiki code .sMK4o, html code.shiki .sMK4o{--shiki-light:#39ADB5;--shiki-default:#89DDFF;--shiki-dark:#89DDFF}html pre.shiki code .spNyl, html code.shiki .spNyl{--shiki-light:#9C3EDA;--shiki-default:#C792EA;--shiki-dark:#C792EA}html pre.shiki code .sBMFI, html code.shiki .sBMFI{--shiki-light:#E2931D;--shiki-default:#FFCB6B;--shiki-dark:#FFCB6B}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);}",{"title":546,"searchDepth":601,"depth":601,"links":46237},[46238,46239],{"id":46138,"depth":591,"text":46138},{"id":46167,"depth":591,"text":46167},"把 Type-safe 範例複製到已安裝 @admin 元件的專案，並開啟 strictVModel 後，編輯器才會標出刻意錯誤的 v-model 綁定。",{},{"title":515,"description":46240},"EC8Du0B9jA_Np9JSnWbzN1iopArBUpjMoo8ott60cXA",{"id":46245,"title":519,"body":46246,"component":18,"description":46355,"extension":1015,"links":19,"meta":46356,"navigation":526,"new":18,"path":520,"seo":46357,"stem":521,"wrapperKind":19,"__hash__":46358},"docs\u002Fdocs\u002Fget-started\u002F5.headed-ui.md",{"type":533,"value":46247,"toc":46349},[46248,46258,46261,46310,46313,46317,46324,46337,46341],[705,46249,46250,46251,46253,46254,46257],{},"文件頁、sidebar 或元件總覽出現 ",[548,46252,519],{}," badge，代表該元件包裝的第三方套件",[1135,46255,46256],{},"自帶 DOM 結構與互動","。內部結構與行為由上游決定，admin 改不動。",[705,46259,46260],{},"多數 admin 元件包的是只給邏輯、不畫 UI 的套件（reka-ui、vidstack engine、embedpdf、cropperjs 等），DOM 由 admin 自寫，沒有此標記。",[5754,46262,46263,46275],{},[5757,46264,46265],{},[5760,46266,46267,46270,46273],{},[5763,46268,46269],{},"維度",[5763,46271,46272],{},"一般 admin 元件",[5763,46274,519],{},[5770,46276,46277,46288,46299],{},[5760,46278,46279,46282,46285],{},[5775,46280,46281],{},"DOM 結構與內部互動",[5775,46283,46284],{},"admin 自寫",[5775,46286,46287],{},"上游決定、admin 改不動",[5760,46289,46290,46293,46296],{},[5775,46291,46292],{},"props \u002F events \u002F slots",[5775,46294,46295],{},"admin 介面為主",[5775,46297,46298],{},"大量透傳上游介面",[5760,46300,46301,46304,46307],{},[5775,46302,46303],{},"Bug 與行為差異",[5775,46305,46306],{},"admin 端可修",[5775,46308,46309],{},"多數需追上游版本",[536,46311,46312],{"id":46312},"使用注意",[692,46314,46316],{"id":46315},"api-多在上游","API 多在上游",[705,46318,46319,46320,46323],{},"該頁 API 參考表",[1135,46321,46322],{},"只列 admin 額外擴充或覆寫的欄位","，不列上游透傳的 props \u002F events \u002F slots。",[705,46325,46326,46327,46330,46331,29414,46333,713],{},"完整介面：點頁面右上角 ",[1135,46328,46329],{},"參考"," 跳上游文件。例：",[697,46332,169],{"href":170},[697,46334,46336],{"href":16970,"rel":46335},[701],"vxe-table API",[692,46338,46340],{"id":46339},"bug-先分清來源","Bug 先分清來源",[1558,46342,46343,46346],{},[1561,46344,46345],{},"admin 自加 prop \u002F event \u002F slot → 開 issue 到本 repo",[1561,46347,46348],{},"上游套件本身 → 先查上游 issue tracker；已知問題可能需等上游修",{"title":546,"searchDepth":601,"depth":601,"links":46350},[46351],{"id":46312,"depth":591,"text":46312,"children":46352},[46353,46354],{"id":46315,"depth":601,"text":46316},{"id":46339,"depth":601,"text":46340},"Headed UI badge 表示元件包裝了自帶 DOM 與互動的第三方套件；API 多在上游，行為差異多半追上游版本。",{},{"title":519,"description":46355},"yrGu0jVBlLvsWW_4rlf87dWu_eeG0M2RyjKA6Y_N6Rk",{"left":523,"top":523,"width":524,"height":524,"rotate":523,"vFlip":18,"hFlip":18,"body":46360},"\u003Cpath fill=\"none\" stroke=\"currentColor\" stroke-linecap=\"round\" stroke-linejoin=\"round\" stroke-width=\"2\" d=\"M20 20a2 2 0 0 0 2-2V8a2 2 0 0 0-2-2h-7.9a2 2 0 0 1-1.69-.9L9.6 3.9A2 2 0 0 0 7.93 3H4a2 2 0 0 0-2 2v13a2 2 0 0 0 2 2Z\"\u002F>",{"left":523,"top":523,"width":524,"height":524,"rotate":523,"vFlip":18,"hFlip":18,"body":46362},"\u003Cg fill=\"none\" stroke=\"currentColor\" stroke-linecap=\"round\" stroke-linejoin=\"round\" stroke-width=\"2\">\u003Cpath d=\"M6 22a2 2 0 0 1-2-2V4a2 2 0 0 1 2-2h8a2.4 2.4 0 0 1 1.704.706l3.588 3.588A2.4 2.4 0 0 1 20 8v12a2 2 0 0 1-2 2z\"\u002F>\u003Cpath d=\"M14 2v5a1 1 0 0 0 1 1h5m-10 4.5L8 15l2 2.5m4-5l2 2.5l-2 2.5\"\u002F>\u003C\u002Fg>",{"left":523,"top":523,"width":524,"height":524,"rotate":523,"vFlip":18,"hFlip":18,"body":46364},"\u003Cg fill=\"none\" stroke=\"currentColor\" stroke-linecap=\"round\" stroke-linejoin=\"round\" stroke-width=\"2\">\u003Cpath d=\"M12 15v5s3.03-.55 4-2c1.08-1.62 0-5 0-5M4.5 16.5c-1.5 1.26-2 5-2 5s3.74-.5 5-2c.71-.84.7-2.13-.09-2.91a2.18 2.18 0 0 0-2.91-.09\"\u002F>\u003Cpath d=\"M9 12a22 22 0 0 1 2-3.95A12.88 12.88 0 0 1 22 2c0 2.72-.78 7.5-6 11a22.4 22.4 0 0 1-4 2z\"\u002F>\u003Cpath d=\"M9 12H4s.55-3.03 2-4c1.62-1.08 5 .05 5 .05\"\u002F>\u003C\u002Fg>",{"left":523,"top":523,"width":524,"height":524,"rotate":523,"vFlip":18,"hFlip":18,"body":46366},"\u003Cpath fill=\"none\" stroke=\"currentColor\" stroke-linecap=\"round\" stroke-linejoin=\"round\" stroke-width=\"2\" d=\"M20 13c0 5-3.5 7.5-7.66 8.95a1 1 0 0 1-.67-.01C7.5 20.5 4 18 4 13V6a1 1 0 0 1 1-1c2 0 4.5-1.2 6.24-2.72a1.17 1.17 0 0 1 1.52 0C14.51 3.81 17 5 19 5a1 1 0 0 1 1 1z\"\u002F>",{"left":523,"top":523,"width":524,"height":524,"rotate":523,"vFlip":18,"hFlip":18,"body":46368},"\u003Cpath fill=\"none\" stroke=\"currentColor\" stroke-linecap=\"round\" stroke-linejoin=\"round\" stroke-width=\"2\" d=\"M5 12h14m-7-7l7 7l-7 7\"\u002F>",1793254065130]