[{"data":1,"prerenderedAt":27450},["ShallowReactive",2],{"navigation":3,"i-lucide:gitlab":522,"i-lucide:menu":527,"i-lucide:search":529,"i-lucide:chevron-down":531,"docs-admin-components":533,"docs-editor-components":16978,"docs-aio-editor-components":26901,"i-lucide:shield":27438,"i-lucide:arrow-right":27440,"i-lucide:book-open":27442,"i-lucide:package":27444,"i-lucide:text-cursor-input":27446,"i-lucide:wand-sparkles":27448},[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>",{"left":523,"top":523,"width":524,"height":524,"rotate":523,"vFlip":18,"hFlip":18,"body":530},"\u003Cg fill=\"none\" stroke=\"currentColor\" stroke-linecap=\"round\" stroke-linejoin=\"round\" stroke-width=\"2\">\u003Cpath d=\"m21 21l-4.34-4.34\"\u002F>\u003Ccircle cx=\"11\" cy=\"11\" r=\"8\"\u002F>\u003C\u002Fg>",{"left":523,"top":523,"width":524,"height":524,"rotate":523,"vFlip":18,"hFlip":18,"body":532},"\u003Cpath fill=\"none\" stroke=\"currentColor\" stroke-linecap=\"round\" stroke-linejoin=\"round\" stroke-width=\"2\" d=\"m6 9l6 6l6-6\"\u002F>",[534,1026,1672,1883,2043,2395,2626,3106,3771,4687,5027,5454,5580,6382,7142,7684,7978,8470,8807,9302,9483,9742,10265,10668,11003,11172,11476,11627,12456,13106,13560,13701,14101,14240,14446,14909,15147,15407,16089],{"id":535,"title":15,"body":536,"component":526,"description":1018,"extension":1019,"links":1020,"meta":1023,"navigation":526,"new":18,"path":16,"seo":1024,"stem":17,"wrapperKind":19,"__hash__":1025},"docs\u002Fdocs\u002Fadmin\u002Falert-dialog.md",{"type":537,"value":538,"toc":997},"minimark",[539,542,576,685,688,692,695,708,718,721,725,728,941,943,947,949,952,954,957,959,962,964,967,969,972,974,977,979,982,984,987,990,993],[540,541,507],"h2",{"id":507},[543,544,551],"pre",{"className":545,"code":546,"filename":547,"language":548,"meta":549,"style":550},"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","",[552,553,554],"code",{"__ignoreMap":550},[555,556,559,563,567,570,573],"span",{"class":557,"line":558},"line",1,[555,560,562],{"class":561},"sBMFI","pnpm",[555,564,566],{"class":565},"sfazB"," dlx",[555,568,569],{"class":565}," shadcn-vue",[555,571,572],{"class":565}," add",[555,574,575],{"class":565}," @admin\u002Falert-dialog\n",[543,577,581],{"className":578,"code":579,"language":580,"meta":550,"style":550},"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",[552,582,583,593,603,611,619,627,635,643,651,659,667],{"__ignoreMap":550},[555,584,585,589],{"class":557,"line":558},[555,586,588],{"class":587},"s7zQu","import",[555,590,592],{"class":591},"sMK4o"," {\n",[555,594,596,600],{"class":557,"line":595},2,[555,597,599],{"class":598},"sTEyZ","  AdminAlertDialog",[555,601,602],{"class":591},",\n",[555,604,606,609],{"class":557,"line":605},3,[555,607,608],{"class":598},"  AdminAlertDialogAction",[555,610,602],{"class":591},[555,612,614,617],{"class":557,"line":613},4,[555,615,616],{"class":598},"  AdminAlertDialogCancel",[555,618,602],{"class":591},[555,620,622,625],{"class":557,"line":621},5,[555,623,624],{"class":598},"  AdminAlertDialogContent",[555,626,602],{"class":591},[555,628,630,633],{"class":557,"line":629},6,[555,631,632],{"class":598},"  AdminAlertDialogDescription",[555,634,602],{"class":591},[555,636,638,641],{"class":557,"line":637},7,[555,639,640],{"class":598},"  AdminAlertDialogFooter",[555,642,602],{"class":591},[555,644,646,649],{"class":557,"line":645},8,[555,647,648],{"class":598},"  AdminAlertDialogHeader",[555,650,602],{"class":591},[555,652,654,657],{"class":557,"line":653},9,[555,655,656],{"class":598},"  AdminAlertDialogTitle",[555,658,602],{"class":591},[555,660,662,665],{"class":557,"line":661},10,[555,663,664],{"class":598},"  AdminAlertDialogTrigger",[555,666,602],{"class":591},[555,668,670,673,676,679,682],{"class":557,"line":669},11,[555,671,672],{"class":591},"}",[555,674,675],{"class":587}," from",[555,677,678],{"class":591}," '",[555,680,681],{"class":565},"@\u002Fcomponents\u002Fadmin\u002Falert-dialog",[555,683,684],{"class":591},"'\n",[540,686,687],{"id":687},"用法",[689,690],"component-preview",{"name":691},"AlertDialogDemo",[540,693,694],{"id":694},"場景",[696,697,699,700,707],"h3",{"id":698},"以-overlay-命令式開啟","以 overlay ",[701,702,706],"a",{"href":703,"rel":704},"https:\u002F\u002Fui.nuxt.com\u002Fdocs\u002Fcomposables\u002Fuse-overlay",[705],"nofollow","命令式","開啟",[709,710,711,712,717],"p",{},"需要由 composable 驅動時，搭配 ",[701,713,714],{"href":102},[552,715,716],{},"useOverlay()","。",[689,719],{"name":720},"AlertDialogOverlayDemo",[540,722,724],{"id":723},"api-參考","API 參考",[696,726,727],{"id":727},"組成",[543,729,733],{"className":730,"code":731,"language":732,"meta":550,"style":550},"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",[552,734,735,747,772,793,802,812,831,849,858,867,885,903,912,922,932],{"__ignoreMap":550},[555,736,737,740,744],{"class":557,"line":558},[555,738,739],{"class":591},"\u003C",[555,741,743],{"class":742},"swJcz","template",[555,745,746],{"class":591},">\n",[555,748,749,752,755,759,762,765,768,770],{"class":557,"line":595},[555,750,751],{"class":591},"  \u003C",[555,753,754],{"class":742},"admin-alert-dialog",[555,756,758],{"class":757},"spNyl"," v-model:open",[555,760,761],{"class":591},"=",[555,763,764],{"class":591},"\"",[555,766,767],{"class":565},"isOpen",[555,769,764],{"class":591},[555,771,746],{"class":591},[555,773,774,777,780,783,786,789,791],{"class":557,"line":605},[555,775,776],{"class":591},"    \u003C",[555,778,779],{"class":742},"admin-alert-dialog-trigger",[555,781,782],{"class":591},">",[555,784,785],{"class":598},"觸發",[555,787,788],{"class":591},"\u003C\u002F",[555,790,779],{"class":742},[555,792,746],{"class":591},[555,794,795,797,800],{"class":557,"line":613},[555,796,776],{"class":591},[555,798,799],{"class":742},"admin-alert-dialog-content",[555,801,746],{"class":591},[555,803,804,807,810],{"class":557,"line":621},[555,805,806],{"class":591},"      \u003C",[555,808,809],{"class":742},"admin-alert-dialog-header",[555,811,746],{"class":591},[555,813,814,817,820,822,825,827,829],{"class":557,"line":629},[555,815,816],{"class":591},"        \u003C",[555,818,819],{"class":742},"admin-alert-dialog-title",[555,821,782],{"class":591},[555,823,824],{"class":598},"標題",[555,826,788],{"class":591},[555,828,819],{"class":742},[555,830,746],{"class":591},[555,832,833,835,838,840,843,845,847],{"class":557,"line":637},[555,834,816],{"class":591},[555,836,837],{"class":742},"admin-alert-dialog-description",[555,839,782],{"class":591},[555,841,842],{"class":598},"說明文字",[555,844,788],{"class":591},[555,846,837],{"class":742},[555,848,746],{"class":591},[555,850,851,854,856],{"class":557,"line":645},[555,852,853],{"class":591},"      \u003C\u002F",[555,855,809],{"class":742},[555,857,746],{"class":591},[555,859,860,862,865],{"class":557,"line":653},[555,861,806],{"class":591},[555,863,864],{"class":742},"admin-alert-dialog-footer",[555,866,746],{"class":591},[555,868,869,871,874,876,879,881,883],{"class":557,"line":661},[555,870,816],{"class":591},[555,872,873],{"class":742},"admin-alert-dialog-cancel",[555,875,782],{"class":591},[555,877,878],{"class":598},"取消",[555,880,788],{"class":591},[555,882,873],{"class":742},[555,884,746],{"class":591},[555,886,887,889,892,894,897,899,901],{"class":557,"line":669},[555,888,816],{"class":591},[555,890,891],{"class":742},"admin-alert-dialog-action",[555,893,782],{"class":591},[555,895,896],{"class":598},"確認",[555,898,788],{"class":591},[555,900,891],{"class":742},[555,902,746],{"class":591},[555,904,906,908,910],{"class":557,"line":905},12,[555,907,853],{"class":591},[555,909,864],{"class":742},[555,911,746],{"class":591},[555,913,915,918,920],{"class":557,"line":914},13,[555,916,917],{"class":591},"    \u003C\u002F",[555,919,799],{"class":742},[555,921,746],{"class":591},[555,923,925,928,930],{"class":557,"line":924},14,[555,926,927],{"class":591},"  \u003C\u002F",[555,929,754],{"class":742},[555,931,746],{"class":591},[555,933,935,937,939],{"class":557,"line":934},15,[555,936,788],{"class":591},[555,938,743],{"class":742},[555,940,746],{"class":591},[696,942,754],{"id":754},[944,945],"admin-api-table",{"component":946},"AdminAlertDialog",[696,948,799],{"id":799},[944,950],{"component":951},"AdminAlertDialogContent",[696,953,891],{"id":891},[944,955],{"component":956},"AdminAlertDialogAction",[696,958,873],{"id":873},[944,960],{"component":961},"AdminAlertDialogCancel",[696,963,837],{"id":837},[944,965],{"component":966},"AdminAlertDialogDescription",[696,968,864],{"id":864},[944,970],{"component":971},"AdminAlertDialogFooter",[696,973,809],{"id":809},[944,975],{"component":976},"AdminAlertDialogHeader",[696,978,819],{"id":819},[944,980],{"component":981},"AdminAlertDialogTitle",[696,983,779],{"id":779},[944,985],{"component":986},"AdminAlertDialogTrigger",[540,988,989],{"id":989},"更新紀錄",[991,992],"admin-changelog",{"component":946},[994,995,996],"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":550,"searchDepth":605,"depth":605,"links":998},[999,1000,1001,1005,1017],{"id":507,"depth":595,"text":507},{"id":687,"depth":595,"text":687},{"id":694,"depth":595,"text":694,"children":1002},[1003],{"id":698,"depth":605,"text":1004},"以 overlay 命令式開啟",{"id":723,"depth":595,"text":724,"children":1006},[1007,1008,1009,1010,1011,1012,1013,1014,1015,1016],{"id":727,"depth":605,"text":727},{"id":754,"depth":605,"text":754},{"id":799,"depth":605,"text":799},{"id":891,"depth":605,"text":891},{"id":873,"depth":605,"text":873},{"id":837,"depth":605,"text":837},{"id":864,"depth":605,"text":864},{"id":809,"depth":605,"text":809},{"id":819,"depth":605,"text":819},{"id":779,"depth":605,"text":779},{"id":989,"depth":595,"text":989},"高風險操作確認用的強制對話框；需明確回應後才能關閉。","md",{"doc":1021,"api":1022},"https:\u002F\u002Freka-ui.com\u002Fdocs\u002Fcomponents\u002Falert-dialog","https:\u002F\u002Freka-ui.com\u002Fdocs\u002Fcomponents\u002Falert-dialog#api-reference",{},{"title":15,"description":1018},"vLhxbLg7e6-ZwSqkjoOq0SvMYxDo8NgfNy5mFsYrXRM",{"id":1027,"title":21,"body":1028,"component":526,"description":1666,"extension":1019,"links":1667,"meta":1669,"navigation":526,"new":18,"path":22,"seo":1670,"stem":23,"wrapperKind":19,"__hash__":1671},"docs\u002Fdocs\u002Fadmin\u002Faudio-player.md",{"type":537,"value":1029,"toc":1650},[1030,1032,1050,1121,1136,1142,1243,1248,1406,1408,1415,1418,1420,1422,1523,1525,1528,1530,1533,1535,1538,1540,1543,1545,1548,1550,1553,1555,1558,1561,1643,1645,1647],[540,1031,507],{"id":507},[543,1033,1035],{"className":545,"code":1034,"filename":547,"language":548,"meta":549,"style":550},"pnpm dlx shadcn-vue add @admin\u002Faudio-player\n",[552,1036,1037],{"__ignoreMap":550},[555,1038,1039,1041,1043,1045,1047],{"class":557,"line":558},[555,1040,562],{"class":561},[555,1042,566],{"class":565},[555,1044,569],{"class":565},[555,1046,572],{"class":565},[555,1048,1049],{"class":565}," @admin\u002Faudio-player\n",[543,1051,1053],{"className":578,"code":1052,"language":580,"meta":550,"style":550},"import {\n  AdminAudioPlayer,\n  AdminAudioPlayerControls,\n  AdminAudioPlayerProgress,\n  AdminAudioPlayerSettings,\n  AdminAudioPlayerTime,\n  AdminAudioPlayerToolbar,\n  AdminAudioPlayerVolume\n} from '@\u002Fcomponents\u002Fadmin\u002Faudio-player'\n",[552,1054,1055,1061,1068,1075,1082,1089,1096,1103,1108],{"__ignoreMap":550},[555,1056,1057,1059],{"class":557,"line":558},[555,1058,588],{"class":587},[555,1060,592],{"class":591},[555,1062,1063,1066],{"class":557,"line":595},[555,1064,1065],{"class":598},"  AdminAudioPlayer",[555,1067,602],{"class":591},[555,1069,1070,1073],{"class":557,"line":605},[555,1071,1072],{"class":598},"  AdminAudioPlayerControls",[555,1074,602],{"class":591},[555,1076,1077,1080],{"class":557,"line":613},[555,1078,1079],{"class":598},"  AdminAudioPlayerProgress",[555,1081,602],{"class":591},[555,1083,1084,1087],{"class":557,"line":621},[555,1085,1086],{"class":598},"  AdminAudioPlayerSettings",[555,1088,602],{"class":591},[555,1090,1091,1094],{"class":557,"line":629},[555,1092,1093],{"class":598},"  AdminAudioPlayerTime",[555,1095,602],{"class":591},[555,1097,1098,1101],{"class":557,"line":637},[555,1099,1100],{"class":598},"  AdminAudioPlayerToolbar",[555,1102,602],{"class":591},[555,1104,1105],{"class":557,"line":645},[555,1106,1107],{"class":598},"  AdminAudioPlayerVolume\n",[555,1109,1110,1112,1114,1116,1119],{"class":557,"line":653},[555,1111,672],{"class":591},[555,1113,675],{"class":587},[555,1115,678],{"class":591},[555,1117,1118],{"class":565},"@\u002Fcomponents\u002Fadmin\u002Faudio-player",[555,1120,684],{"class":591},[709,1122,1123,1124,1127,1128,1131,1132,1135],{},"vidstack 是一組 web components（",[552,1125,1126],{},"\u003Cmedia-player>"," \u002F ",[552,1129,1130],{},"\u003Cmedia-provider>"," \u002F …），需要告訴 Vue 編譯器把它們當成 native custom element，否則 dev console 會出現 ",[552,1133,1134],{},"[Vue warn]: Failed to resolve component: media-*"," 警告。",[709,1137,1138],{},[1139,1140,1141],"strong",{},"Nuxt 3 \u002F 4",[543,1143,1146],{"className":578,"code":1144,"filename":1145,"language":580,"meta":550,"style":550},"export default defineNuxtConfig({\n  vue: {\n    compilerOptions: {\n      isCustomElement: (tag) => tag.startsWith('media-')\n    }\n  }\n})\n","nuxt.config.ts",[552,1147,1148,1166,1176,1185,1227,1232,1237],{"__ignoreMap":550},[555,1149,1150,1153,1156,1160,1163],{"class":557,"line":558},[555,1151,1152],{"class":587},"export",[555,1154,1155],{"class":587}," default",[555,1157,1159],{"class":1158},"s2Zo4"," defineNuxtConfig",[555,1161,1162],{"class":598},"(",[555,1164,1165],{"class":591},"{\n",[555,1167,1168,1171,1174],{"class":557,"line":595},[555,1169,1170],{"class":742},"  vue",[555,1172,1173],{"class":591},":",[555,1175,592],{"class":591},[555,1177,1178,1181,1183],{"class":557,"line":605},[555,1179,1180],{"class":742},"    compilerOptions",[555,1182,1173],{"class":591},[555,1184,592],{"class":591},[555,1186,1187,1190,1192,1195,1199,1202,1205,1208,1211,1214,1216,1219,1222,1224],{"class":557,"line":613},[555,1188,1189],{"class":1158},"      isCustomElement",[555,1191,1173],{"class":591},[555,1193,1194],{"class":591}," (",[555,1196,1198],{"class":1197},"sHdIc","tag",[555,1200,1201],{"class":591},")",[555,1203,1204],{"class":757}," =>",[555,1206,1207],{"class":598}," tag",[555,1209,1210],{"class":591},".",[555,1212,1213],{"class":1158},"startsWith",[555,1215,1162],{"class":598},[555,1217,1218],{"class":591},"'",[555,1220,1221],{"class":565},"media-",[555,1223,1218],{"class":591},[555,1225,1226],{"class":598},")\n",[555,1228,1229],{"class":557,"line":621},[555,1230,1231],{"class":591},"    }\n",[555,1233,1234],{"class":557,"line":629},[555,1235,1236],{"class":591},"  }\n",[555,1238,1239,1241],{"class":557,"line":637},[555,1240,672],{"class":591},[555,1242,1226],{"class":598},[709,1244,1245],{},[1139,1246,1247],{},"Vue 3 + Vite",[543,1249,1252],{"className":578,"code":1250,"filename":1251,"language":580,"meta":550,"style":550},"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",[552,1253,1254,1271,1293,1298,1310,1320,1329,1338,1347,1378,1383,1388,1395,1400],{"__ignoreMap":550},[555,1255,1256,1258,1261,1264,1266,1269],{"class":557,"line":558},[555,1257,588],{"class":587},[555,1259,1260],{"class":598}," vue ",[555,1262,1263],{"class":587},"from",[555,1265,678],{"class":591},[555,1267,1268],{"class":565},"@vitejs\u002Fplugin-vue",[555,1270,684],{"class":591},[555,1272,1273,1275,1278,1281,1284,1286,1288,1291],{"class":557,"line":595},[555,1274,588],{"class":587},[555,1276,1277],{"class":591}," {",[555,1279,1280],{"class":598}," defineConfig",[555,1282,1283],{"class":591}," }",[555,1285,675],{"class":587},[555,1287,678],{"class":591},[555,1289,1290],{"class":565},"vite",[555,1292,684],{"class":591},[555,1294,1295],{"class":557,"line":605},[555,1296,1297],{"emptyLinePlaceholder":526},"\n",[555,1299,1300,1302,1304,1306,1308],{"class":557,"line":613},[555,1301,1152],{"class":587},[555,1303,1155],{"class":587},[555,1305,1280],{"class":1158},[555,1307,1162],{"class":598},[555,1309,1165],{"class":591},[555,1311,1312,1315,1317],{"class":557,"line":621},[555,1313,1314],{"class":742},"  plugins",[555,1316,1173],{"class":591},[555,1318,1319],{"class":598}," [\n",[555,1321,1322,1325,1327],{"class":557,"line":629},[555,1323,1324],{"class":1158},"    vue",[555,1326,1162],{"class":598},[555,1328,1165],{"class":591},[555,1330,1331,1334,1336],{"class":557,"line":637},[555,1332,1333],{"class":742},"      template",[555,1335,1173],{"class":591},[555,1337,592],{"class":591},[555,1339,1340,1343,1345],{"class":557,"line":645},[555,1341,1342],{"class":742},"        compilerOptions",[555,1344,1173],{"class":591},[555,1346,592],{"class":591},[555,1348,1349,1352,1354,1356,1358,1360,1362,1364,1366,1368,1370,1372,1374,1376],{"class":557,"line":653},[555,1350,1351],{"class":1158},"          isCustomElement",[555,1353,1173],{"class":591},[555,1355,1194],{"class":591},[555,1357,1198],{"class":1197},[555,1359,1201],{"class":591},[555,1361,1204],{"class":757},[555,1363,1207],{"class":598},[555,1365,1210],{"class":591},[555,1367,1213],{"class":1158},[555,1369,1162],{"class":598},[555,1371,1218],{"class":591},[555,1373,1221],{"class":565},[555,1375,1218],{"class":591},[555,1377,1226],{"class":598},[555,1379,1380],{"class":557,"line":661},[555,1381,1382],{"class":591},"        }\n",[555,1384,1385],{"class":557,"line":669},[555,1386,1387],{"class":591},"      }\n",[555,1389,1390,1393],{"class":557,"line":905},[555,1391,1392],{"class":591},"    }",[555,1394,1226],{"class":598},[555,1396,1397],{"class":557,"line":914},[555,1398,1399],{"class":598},"  ]\n",[555,1401,1402,1404],{"class":557,"line":924},[555,1403,672],{"class":591},[555,1405,1226],{"class":598},[540,1407,687],{"id":687},[709,1409,1410,1411,1414],{},"傳入 ",[552,1412,1413],{},"src"," 即可播放音檔，預設組裝包含進度條、時間顯示、播放控制（播放、快退 10 秒、快進 10 秒）、設定（播放速度）與音量。",[689,1416],{"name":1417},"AudioPlayerBasicDemo",[540,1419,724],{"id":723},[696,1421,727],{"id":727},[543,1423,1425],{"className":730,"code":1424,"language":732,"meta":550,"style":550},"\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",[552,1426,1427,1435,1444,1454,1463,1472,1481,1490,1499,1507,1515],{"__ignoreMap":550},[555,1428,1429,1431,1433],{"class":557,"line":558},[555,1430,739],{"class":591},[555,1432,743],{"class":742},[555,1434,746],{"class":591},[555,1436,1437,1439,1442],{"class":557,"line":595},[555,1438,751],{"class":591},[555,1440,1441],{"class":742},"admin-audio-player",[555,1443,746],{"class":591},[555,1445,1446,1448,1451],{"class":557,"line":605},[555,1447,776],{"class":591},[555,1449,1450],{"class":742},"admin-audio-player-progress",[555,1452,1453],{"class":591}," \u002F>\n",[555,1455,1456,1458,1461],{"class":557,"line":613},[555,1457,776],{"class":591},[555,1459,1460],{"class":742},"admin-audio-player-toolbar",[555,1462,746],{"class":591},[555,1464,1465,1467,1470],{"class":557,"line":621},[555,1466,806],{"class":591},[555,1468,1469],{"class":742},"admin-audio-player-time",[555,1471,1453],{"class":591},[555,1473,1474,1476,1479],{"class":557,"line":629},[555,1475,806],{"class":591},[555,1477,1478],{"class":742},"admin-audio-player-controls",[555,1480,1453],{"class":591},[555,1482,1483,1485,1488],{"class":557,"line":637},[555,1484,806],{"class":591},[555,1486,1487],{"class":742},"admin-audio-player-settings",[555,1489,1453],{"class":591},[555,1491,1492,1494,1497],{"class":557,"line":645},[555,1493,806],{"class":591},[555,1495,1496],{"class":742},"admin-audio-player-volume",[555,1498,1453],{"class":591},[555,1500,1501,1503,1505],{"class":557,"line":653},[555,1502,917],{"class":591},[555,1504,1460],{"class":742},[555,1506,746],{"class":591},[555,1508,1509,1511,1513],{"class":557,"line":661},[555,1510,927],{"class":591},[555,1512,1441],{"class":742},[555,1514,746],{"class":591},[555,1516,1517,1519,1521],{"class":557,"line":669},[555,1518,788],{"class":591},[555,1520,743],{"class":742},[555,1522,746],{"class":591},[696,1524,1441],{"id":1441},[944,1526],{"component":1527},"AdminAudioPlayer",[696,1529,1478],{"id":1478},[944,1531],{"component":1532},"AdminAudioPlayerControls",[696,1534,1450],{"id":1450},[944,1536],{"component":1537},"AdminAudioPlayerProgress",[696,1539,1487],{"id":1487},[944,1541],{"component":1542},"AdminAudioPlayerSettings",[696,1544,1469],{"id":1469},[944,1546],{"component":1547},"AdminAudioPlayerTime",[696,1549,1460],{"id":1460},[944,1551],{"component":1552},"AdminAudioPlayerToolbar",[696,1554,1496],{"id":1496},[944,1556],{"component":1557},"AdminAudioPlayerVolume",[540,1559,1560],{"id":1560},"注意事項",[1562,1563,1564,1587,1608,1633],"ul",{},[1565,1566,1567,1574,1575,1578,1579,1582,1583,1586],"li",{},[1139,1568,1569,1570,1573],{},"必須加 ",[552,1571,1572],{},"isCustomElement"," 設定","：未加上 ",[552,1576,1577],{},"vue.compilerOptions.isCustomElement"," 規則時，dev console 會對每個 ",[552,1580,1581],{},"\u003Cmedia-*>"," 元素噴 ",[552,1584,1585],{},"Failed to resolve component"," 警告。詳細寫法見上方「安裝」章節。",[1565,1588,1589,1592,1593,1596,1597,1600,1601,1603,1604,717],{},[1139,1590,1591],{},"不支援 SSR","：vidstack 為 browser-only；元件殼不含 ",[552,1594,1595],{},"\u003CClientOnly>","（engine 仍以 ",[552,1598,1599],{},"defineAsyncComponent"," 拆 chunk）。Nuxt 請自行以 ",[552,1602,1595],{}," 包覆；純 CSR 不需處理。見 ",[701,1605,1607],{"href":1606},"\u002Fdocs\u002Fget-started\u002Finstallation#ssr-nuxt","安裝 · SSR",[1565,1609,1610,1613,1614,1617,1618,1621,1622,1625,1626,1127,1629,1632],{},[1139,1611,1612],{},"音量設定跨實例共享","：所有 ",[552,1615,1616],{},"\u003CAdminAudioPlayer>"," 與 ",[552,1619,1620],{},"\u003CAdminVideoPlayer>"," 實例共用同一組 ",[552,1623,1624],{},"localStorage"," key（",[552,1627,1628],{},"admin:player:volume",[552,1630,1631],{},"admin:player:muted","）；多個分頁同時開啟時不會即時同步，避免使用者剛調整的音量被其他分頁覆蓋掉。",[1565,1634,1635,1638,1639,1642],{},[1139,1636,1637],{},"播放速度不記憶","：每次元件 mount 都重設為 ",[552,1640,1641],{},"1","；如需專案級記憶請消費端自行包裝。",[540,1644,989],{"id":989},[991,1646],{"component":1527},[994,1648,1649],{},"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":550,"searchDepth":605,"depth":605,"links":1651},[1652,1653,1654,1664,1665],{"id":507,"depth":595,"text":507},{"id":687,"depth":595,"text":687},{"id":723,"depth":595,"text":724,"children":1655},[1656,1657,1658,1659,1660,1661,1662,1663],{"id":727,"depth":605,"text":727},{"id":1441,"depth":605,"text":1441},{"id":1478,"depth":605,"text":1478},{"id":1450,"depth":605,"text":1450},{"id":1487,"depth":605,"text":1487},{"id":1469,"depth":605,"text":1469},{"id":1460,"depth":605,"text":1460},{"id":1496,"depth":605,"text":1496},{"id":1560,"depth":595,"text":1560},{"id":989,"depth":595,"text":989},"音訊播放器（vidstack）。播放、快進快退、音量、播放速度、時間顯示。",{"doc":1668},"https:\u002F\u002Fvidstack.io\u002Fdocs\u002Fplayer",{},{"title":21,"description":1666},"OQjjtYaGznSHZwiHqo1eDUDp4NIQkPvZfwPD1LG_Zlg",{"id":1673,"title":25,"body":1674,"component":526,"description":1876,"extension":1019,"links":1877,"meta":1880,"navigation":526,"new":18,"path":26,"seo":1881,"stem":27,"wrapperKind":19,"__hash__":1882},"docs\u002Fdocs\u002Fadmin\u002Favatar.md",{"type":537,"value":1675,"toc":1862},[1676,1678,1696,1741,1743,1746,1748,1752,1758,1761,1763,1765,1841,1843,1846,1848,1851,1853,1856,1858,1860],[540,1677,507],{"id":507},[543,1679,1681],{"className":545,"code":1680,"filename":547,"language":548,"meta":549,"style":550},"pnpm dlx shadcn-vue add @admin\u002Favatar\n",[552,1682,1683],{"__ignoreMap":550},[555,1684,1685,1687,1689,1691,1693],{"class":557,"line":558},[555,1686,562],{"class":561},[555,1688,566],{"class":565},[555,1690,569],{"class":565},[555,1692,572],{"class":565},[555,1694,1695],{"class":565}," @admin\u002Favatar\n",[543,1697,1699],{"className":578,"code":1698,"language":580,"meta":550,"style":550},"import {\n  AdminAvatar,\n  AdminAvatarFallback,\n  AdminAvatarImage,\n} from '@\u002Fcomponents\u002Fadmin\u002Favatar'\n",[552,1700,1701,1707,1714,1721,1728],{"__ignoreMap":550},[555,1702,1703,1705],{"class":557,"line":558},[555,1704,588],{"class":587},[555,1706,592],{"class":591},[555,1708,1709,1712],{"class":557,"line":595},[555,1710,1711],{"class":598},"  AdminAvatar",[555,1713,602],{"class":591},[555,1715,1716,1719],{"class":557,"line":605},[555,1717,1718],{"class":598},"  AdminAvatarFallback",[555,1720,602],{"class":591},[555,1722,1723,1726],{"class":557,"line":613},[555,1724,1725],{"class":598},"  AdminAvatarImage",[555,1727,602],{"class":591},[555,1729,1730,1732,1734,1736,1739],{"class":557,"line":621},[555,1731,672],{"class":591},[555,1733,675],{"class":587},[555,1735,678],{"class":591},[555,1737,1738],{"class":565},"@\u002Fcomponents\u002Fadmin\u002Favatar",[555,1740,684],{"class":591},[540,1742,687],{"id":687},[689,1744],{"name":1745},"AvatarDemo",[540,1747,694],{"id":694},[696,1749,1751],{"id":1750},"fallback-圖示-縮寫","Fallback 圖示 \u002F 縮寫",[709,1753,1754,1755,717],{},"載入失敗時回退到 ",[552,1756,1757],{},"admin-avatar-fallback",[689,1759],{"name":1760},"AvatarFallbackDemo",[540,1762,724],{"id":723},[696,1764,727],{"id":727},[543,1766,1768],{"className":730,"code":1767,"language":732,"meta":550,"style":550},"\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",[552,1769,1770,1778,1787,1808,1825,1833],{"__ignoreMap":550},[555,1771,1772,1774,1776],{"class":557,"line":558},[555,1773,739],{"class":591},[555,1775,743],{"class":742},[555,1777,746],{"class":591},[555,1779,1780,1782,1785],{"class":557,"line":595},[555,1781,751],{"class":591},[555,1783,1784],{"class":742},"admin-avatar",[555,1786,746],{"class":591},[555,1788,1789,1791,1794,1797,1799,1801,1804,1806],{"class":557,"line":605},[555,1790,776],{"class":591},[555,1792,1793],{"class":742},"admin-avatar-image",[555,1795,1796],{"class":757}," src",[555,1798,761],{"class":591},[555,1800,764],{"class":591},[555,1802,1803],{"class":565},"...",[555,1805,764],{"class":591},[555,1807,1453],{"class":591},[555,1809,1810,1812,1814,1816,1819,1821,1823],{"class":557,"line":613},[555,1811,776],{"class":591},[555,1813,1757],{"class":742},[555,1815,782],{"class":591},[555,1817,1818],{"class":598},"FB",[555,1820,788],{"class":591},[555,1822,1757],{"class":742},[555,1824,746],{"class":591},[555,1826,1827,1829,1831],{"class":557,"line":621},[555,1828,927],{"class":591},[555,1830,1784],{"class":742},[555,1832,746],{"class":591},[555,1834,1835,1837,1839],{"class":557,"line":629},[555,1836,788],{"class":591},[555,1838,743],{"class":742},[555,1840,746],{"class":591},[696,1842,1784],{"id":1784},[944,1844],{"component":1845},"AdminAvatar",[696,1847,1793],{"id":1793},[944,1849],{"component":1850},"AdminAvatarImage",[696,1852,1757],{"id":1757},[944,1854],{"component":1855},"AdminAvatarFallback",[540,1857,989],{"id":989},[991,1859],{"component":1845},[994,1861,996],{},{"title":550,"searchDepth":605,"depth":605,"links":1863},[1864,1865,1866,1869,1875],{"id":507,"depth":595,"text":507},{"id":687,"depth":595,"text":687},{"id":694,"depth":595,"text":694,"children":1867},[1868],{"id":1750,"depth":605,"text":1751},{"id":723,"depth":595,"text":724,"children":1870},[1871,1872,1873,1874],{"id":727,"depth":605,"text":727},{"id":1784,"depth":605,"text":1784},{"id":1793,"depth":605,"text":1793},{"id":1757,"depth":605,"text":1757},{"id":989,"depth":595,"text":989},"圓形頭像。縮圖或替代文字。",{"doc":1878,"api":1879},"https:\u002F\u002Freka-ui.com\u002Fdocs\u002Fcomponents\u002Favatar","https:\u002F\u002Freka-ui.com\u002Fdocs\u002Fcomponents\u002Favatar#api-reference",{},{"title":25,"description":1876},"ya7NQrcIHYXtWZnHbrg5_q9bnDoj37v7KArlWQhW-nY",{"id":1884,"title":29,"body":1885,"component":526,"description":2037,"extension":1019,"links":2038,"meta":2040,"navigation":526,"new":18,"path":30,"seo":2041,"stem":31,"wrapperKind":19,"__hash__":2042},"docs\u002Fdocs\u002Fadmin\u002Fbadge.md",{"type":537,"value":1886,"toc":2024},[1887,1889,1907,1932,1934,1937,1939,1942,1957,1960,1963,1966,1969,1971,1973,2012,2014,2017,2019,2021],[540,1888,507],{"id":507},[543,1890,1892],{"className":545,"code":1891,"filename":547,"language":548,"meta":549,"style":550},"pnpm dlx shadcn-vue add @admin\u002Fbadge\n",[552,1893,1894],{"__ignoreMap":550},[555,1895,1896,1898,1900,1902,1904],{"class":557,"line":558},[555,1897,562],{"class":561},[555,1899,566],{"class":565},[555,1901,569],{"class":565},[555,1903,572],{"class":565},[555,1905,1906],{"class":565}," @admin\u002Fbadge\n",[543,1908,1910],{"className":578,"code":1909,"language":580,"meta":550,"style":550},"import { AdminBadge } from '@\u002Fcomponents\u002Fadmin\u002Fbadge'\n",[552,1911,1912],{"__ignoreMap":550},[555,1913,1914,1916,1918,1921,1923,1925,1927,1930],{"class":557,"line":558},[555,1915,588],{"class":587},[555,1917,1277],{"class":591},[555,1919,1920],{"class":598}," AdminBadge",[555,1922,1283],{"class":591},[555,1924,675],{"class":587},[555,1926,678],{"class":591},[555,1928,1929],{"class":565},"@\u002Fcomponents\u002Fadmin\u002Fbadge",[555,1931,684],{"class":591},[540,1933,687],{"id":687},[689,1935],{"name":1936},"BadgeDemo",[540,1938,694],{"id":694},[696,1940,1941],{"id":1941},"尺寸",[709,1943,1944,1945,1948,1949,1952,1953,1956],{},"尺寸：",[552,1946,1947],{},"small","（圓點）、",[552,1950,1951],{},"medium","（預設）、",[552,1954,1955],{},"large","（可塞多字）。",[689,1958],{"name":1959},"BadgeSizesDemo",[696,1961,1962],{"id":1962},"附掛在圖示上",[709,1964,1965],{},"以絕對定位疊在 icon 右上角，做未讀數 \u002F 新訊息提示。",[689,1967],{"name":1968},"BadgeOnIconDemo",[540,1970,724],{"id":723},[696,1972,727],{"id":727},[543,1974,1976],{"className":730,"code":1975,"language":732,"meta":550,"style":550},"\u003Ctemplate>\n  \u003Cadmin-badge>內容\u003C\u002Fadmin-badge>\n\u003C\u002Ftemplate>\n",[552,1977,1978,1986,2004],{"__ignoreMap":550},[555,1979,1980,1982,1984],{"class":557,"line":558},[555,1981,739],{"class":591},[555,1983,743],{"class":742},[555,1985,746],{"class":591},[555,1987,1988,1990,1993,1995,1998,2000,2002],{"class":557,"line":595},[555,1989,751],{"class":591},[555,1991,1992],{"class":742},"admin-badge",[555,1994,782],{"class":591},[555,1996,1997],{"class":598},"內容",[555,1999,788],{"class":591},[555,2001,1992],{"class":742},[555,2003,746],{"class":591},[555,2005,2006,2008,2010],{"class":557,"line":605},[555,2007,788],{"class":591},[555,2009,743],{"class":742},[555,2011,746],{"class":591},[696,2013,1992],{"id":1992},[944,2015],{"component":2016},"AdminBadge",[540,2018,989],{"id":989},[991,2020],{"component":2016},[994,2022,2023],{},"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":550,"searchDepth":605,"depth":605,"links":2025},[2026,2027,2028,2032,2036],{"id":507,"depth":595,"text":507},{"id":687,"depth":595,"text":687},{"id":694,"depth":595,"text":694,"children":2029},[2030,2031],{"id":1941,"depth":605,"text":1941},{"id":1962,"depth":605,"text":1962},{"id":723,"depth":595,"text":724,"children":2033},[2034,2035],{"id":727,"depth":605,"text":727},{"id":1992,"depth":605,"text":1992},{"id":989,"depth":595,"text":989},"狀態或數量的小型標籤。尺寸 small／medium／large。",{"doc":2039},"https:\u002F\u002Fwww.shadcn-vue.com\u002Fdocs\u002Fcomponents\u002Fbadge",{},{"title":29,"description":2037},"I5JssGh5SJTPQuFZJmqnsQYccV-gf8qQlNyMVidTtu0",{"id":2044,"title":33,"body":2045,"component":526,"description":2389,"extension":1019,"links":2390,"meta":2392,"navigation":526,"new":18,"path":34,"seo":2393,"stem":35,"wrapperKind":19,"__hash__":2394},"docs\u002Fdocs\u002Fadmin\u002Fbreadcrumb.md",{"type":537,"value":2046,"toc":2371},[2047,2049,2067,2133,2135,2138,2140,2143,2154,2157,2161,2174,2177,2179,2181,2335,2337,2340,2342,2345,2347,2350,2352,2355,2357,2360,2362,2365,2367,2369],[540,2048,507],{"id":507},[543,2050,2052],{"className":545,"code":2051,"filename":547,"language":548,"meta":549,"style":550},"pnpm dlx shadcn-vue add @admin\u002Fbreadcrumb\n",[552,2053,2054],{"__ignoreMap":550},[555,2055,2056,2058,2060,2062,2064],{"class":557,"line":558},[555,2057,562],{"class":561},[555,2059,566],{"class":565},[555,2061,569],{"class":565},[555,2063,572],{"class":565},[555,2065,2066],{"class":565}," @admin\u002Fbreadcrumb\n",[543,2068,2070],{"className":578,"code":2069,"language":580,"meta":550,"style":550},"import {\n  AdminBreadcrumb,\n  AdminBreadcrumbItem,\n  AdminBreadcrumbLink,\n  AdminBreadcrumbList,\n  AdminBreadcrumbPage,\n  AdminBreadcrumbSeparator,\n} from '@\u002Fcomponents\u002Fadmin\u002Fbreadcrumb'\n",[552,2071,2072,2078,2085,2092,2099,2106,2113,2120],{"__ignoreMap":550},[555,2073,2074,2076],{"class":557,"line":558},[555,2075,588],{"class":587},[555,2077,592],{"class":591},[555,2079,2080,2083],{"class":557,"line":595},[555,2081,2082],{"class":598},"  AdminBreadcrumb",[555,2084,602],{"class":591},[555,2086,2087,2090],{"class":557,"line":605},[555,2088,2089],{"class":598},"  AdminBreadcrumbItem",[555,2091,602],{"class":591},[555,2093,2094,2097],{"class":557,"line":613},[555,2095,2096],{"class":598},"  AdminBreadcrumbLink",[555,2098,602],{"class":591},[555,2100,2101,2104],{"class":557,"line":621},[555,2102,2103],{"class":598},"  AdminBreadcrumbList",[555,2105,602],{"class":591},[555,2107,2108,2111],{"class":557,"line":629},[555,2109,2110],{"class":598},"  AdminBreadcrumbPage",[555,2112,602],{"class":591},[555,2114,2115,2118],{"class":557,"line":637},[555,2116,2117],{"class":598},"  AdminBreadcrumbSeparator",[555,2119,602],{"class":591},[555,2121,2122,2124,2126,2128,2131],{"class":557,"line":645},[555,2123,672],{"class":591},[555,2125,675],{"class":587},[555,2127,678],{"class":591},[555,2129,2130],{"class":565},"@\u002Fcomponents\u002Fadmin\u002Fbreadcrumb",[555,2132,684],{"class":591},[540,2134,687],{"id":687},[689,2136],{"name":2137},"BreadcrumbDemo",[540,2139,694],{"id":694},[696,2141,2142],{"id":2142},"多層階層",[709,2144,2145,2146,2149,2150,2153],{},"以 ",[552,2147,2148],{},"admin-breadcrumb-link"," 連接每一層，最後一層用 ",[552,2151,2152],{},"admin-breadcrumb-page"," 標記當前頁。",[689,2155],{"name":2156},"BreadcrumbDeepDemo",[696,2158,2160],{"id":2159},"theme-變體","Theme 變體",[709,2162,2163,2166,2167,1127,2170,2173],{},[552,2164,2165],{},"theme"," prop 切換 ",[552,2168,2169],{},"primary",[552,2171,2172],{},"secondary","，當前頁文字會套用對應色系。",[689,2175],{"name":2176},"BreadcrumbThemeDemo",[540,2178,724],{"id":723},[696,2180,727],{"id":727},[543,2182,2184],{"className":730,"code":2183,"language":732,"meta":550,"style":550},"\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",[552,2185,2186,2194,2214,2223,2232,2261,2269,2278,2286,2303,2311,2319,2327],{"__ignoreMap":550},[555,2187,2188,2190,2192],{"class":557,"line":558},[555,2189,739],{"class":591},[555,2191,743],{"class":742},[555,2193,746],{"class":591},[555,2195,2196,2198,2201,2204,2206,2208,2210,2212],{"class":557,"line":595},[555,2197,751],{"class":591},[555,2199,2200],{"class":742},"admin-breadcrumb",[555,2202,2203],{"class":757}," theme",[555,2205,761],{"class":591},[555,2207,764],{"class":591},[555,2209,2169],{"class":565},[555,2211,764],{"class":591},[555,2213,746],{"class":591},[555,2215,2216,2218,2221],{"class":557,"line":605},[555,2217,776],{"class":591},[555,2219,2220],{"class":742},"admin-breadcrumb-list",[555,2222,746],{"class":591},[555,2224,2225,2227,2230],{"class":557,"line":613},[555,2226,806],{"class":591},[555,2228,2229],{"class":742},"admin-breadcrumb-item",[555,2231,746],{"class":591},[555,2233,2234,2236,2238,2241,2243,2245,2248,2250,2252,2255,2257,2259],{"class":557,"line":621},[555,2235,816],{"class":591},[555,2237,2148],{"class":742},[555,2239,2240],{"class":757}," href",[555,2242,761],{"class":591},[555,2244,764],{"class":591},[555,2246,2247],{"class":565},"\u002F",[555,2249,764],{"class":591},[555,2251,782],{"class":591},[555,2253,2254],{"class":598},"Home",[555,2256,788],{"class":591},[555,2258,2148],{"class":742},[555,2260,746],{"class":591},[555,2262,2263,2265,2267],{"class":557,"line":629},[555,2264,853],{"class":591},[555,2266,2229],{"class":742},[555,2268,746],{"class":591},[555,2270,2271,2273,2276],{"class":557,"line":637},[555,2272,806],{"class":591},[555,2274,2275],{"class":742},"admin-breadcrumb-separator",[555,2277,1453],{"class":591},[555,2279,2280,2282,2284],{"class":557,"line":645},[555,2281,806],{"class":591},[555,2283,2229],{"class":742},[555,2285,746],{"class":591},[555,2287,2288,2290,2292,2294,2297,2299,2301],{"class":557,"line":653},[555,2289,816],{"class":591},[555,2291,2152],{"class":742},[555,2293,782],{"class":591},[555,2295,2296],{"class":598},"Current",[555,2298,788],{"class":591},[555,2300,2152],{"class":742},[555,2302,746],{"class":591},[555,2304,2305,2307,2309],{"class":557,"line":661},[555,2306,853],{"class":591},[555,2308,2229],{"class":742},[555,2310,746],{"class":591},[555,2312,2313,2315,2317],{"class":557,"line":669},[555,2314,917],{"class":591},[555,2316,2220],{"class":742},[555,2318,746],{"class":591},[555,2320,2321,2323,2325],{"class":557,"line":905},[555,2322,927],{"class":591},[555,2324,2200],{"class":742},[555,2326,746],{"class":591},[555,2328,2329,2331,2333],{"class":557,"line":914},[555,2330,788],{"class":591},[555,2332,743],{"class":742},[555,2334,746],{"class":591},[696,2336,2200],{"id":2200},[944,2338],{"component":2339},"AdminBreadcrumb",[696,2341,2220],{"id":2220},[944,2343],{"component":2344},"AdminBreadcrumbList",[696,2346,2229],{"id":2229},[944,2348],{"component":2349},"AdminBreadcrumbItem",[696,2351,2148],{"id":2148},[944,2353],{"component":2354},"AdminBreadcrumbLink",[696,2356,2152],{"id":2152},[944,2358],{"component":2359},"AdminBreadcrumbPage",[696,2361,2275],{"id":2275},[944,2363],{"component":2364},"AdminBreadcrumbSeparator",[540,2366,989],{"id":989},[991,2368],{"component":2339},[994,2370,996],{},{"title":550,"searchDepth":605,"depth":605,"links":2372},[2373,2374,2375,2379,2388],{"id":507,"depth":595,"text":507},{"id":687,"depth":595,"text":687},{"id":694,"depth":595,"text":694,"children":2376},[2377,2378],{"id":2142,"depth":605,"text":2142},{"id":2159,"depth":605,"text":2160},{"id":723,"depth":595,"text":724,"children":2380},[2381,2382,2383,2384,2385,2386,2387],{"id":727,"depth":605,"text":727},{"id":2200,"depth":605,"text":2200},{"id":2220,"depth":605,"text":2220},{"id":2229,"depth":605,"text":2229},{"id":2148,"depth":605,"text":2148},{"id":2152,"depth":605,"text":2152},{"id":2275,"depth":605,"text":2275},{"id":989,"depth":595,"text":989},"目前頁面在網站階層中的位置。",{"doc":2391},"https:\u002F\u002Fwww.shadcn-vue.com\u002Fdocs\u002Fcomponents\u002Fbreadcrumb",{},{"title":33,"description":2389},"akpCHye8z-oIW8N_s0IwoNTbza-epoe4KmlBZH2VXiU",{"id":2396,"title":37,"body":2397,"component":526,"description":2620,"extension":1019,"links":2621,"meta":2623,"navigation":526,"new":18,"path":38,"seo":2624,"stem":39,"wrapperKind":19,"__hash__":2625},"docs\u002Fdocs\u002Fadmin\u002Fbutton.md",{"type":537,"value":2398,"toc":2605},[2399,2401,2419,2444,2446,2449,2451,2453,2459,2462,2465,2486,2489,2492,2502,2505,2507,2509,2548,2550,2553,2555,2599,2601,2603],[540,2400,507],{"id":507},[543,2402,2404],{"className":545,"code":2403,"filename":547,"language":548,"meta":549,"style":550},"pnpm dlx shadcn-vue add @admin\u002Fbutton\n",[552,2405,2406],{"__ignoreMap":550},[555,2407,2408,2410,2412,2414,2416],{"class":557,"line":558},[555,2409,562],{"class":561},[555,2411,566],{"class":565},[555,2413,569],{"class":565},[555,2415,572],{"class":565},[555,2417,2418],{"class":565}," @admin\u002Fbutton\n",[543,2420,2422],{"className":578,"code":2421,"language":580,"meta":550,"style":550},"import { AdminButton } from '@\u002Fcomponents\u002Fadmin\u002Fbutton'\n",[552,2423,2424],{"__ignoreMap":550},[555,2425,2426,2428,2430,2433,2435,2437,2439,2442],{"class":557,"line":558},[555,2427,588],{"class":587},[555,2429,1277],{"class":591},[555,2431,2432],{"class":598}," AdminButton",[555,2434,1283],{"class":591},[555,2436,675],{"class":587},[555,2438,678],{"class":591},[555,2440,2441],{"class":565},"@\u002Fcomponents\u002Fadmin\u002Fbutton",[555,2443,684],{"class":591},[540,2445,687],{"id":687},[689,2447],{"name":2448},"ButtonDemo",[540,2450,694],{"id":694},[696,2452,1941],{"id":1941},[709,2454,1944,2455,1952,2457,717],{},[552,2456,1951],{},[552,2458,1947],{},[689,2460],{"name":2461},"ButtonSizesDemo",[696,2463,2464],{"id":2464},"樣式",[709,2466,2467,2470,2471,2474,2475,2474,2478,2481,2482,2485],{},[552,2468,2469],{},"variant","：",[552,2472,2473],{},"filled","／",[552,2476,2477],{},"outline",[552,2479,2480],{},"ghost","；",[552,2483,2484],{},"disabled"," 為停用。",[689,2487],{"name":2488},"ButtonVariantsDemo",[696,2490,2491],{"id":2491},"顏色",[709,2493,2494,2470,2497,1952,2499,2501],{},[552,2495,2496],{},"color",[552,2498,2169],{},[552,2500,2172],{},"；可與任一 variant 組合。",[689,2503],{"name":2504},"ButtonColorsDemo",[540,2506,724],{"id":723},[696,2508,727],{"id":727},[543,2510,2512],{"className":730,"code":2511,"language":732,"meta":550,"style":550},"\u003Ctemplate>\n  \u003Cadmin-button>按鈕文字\u003C\u002Fadmin-button>\n\u003C\u002Ftemplate>\n",[552,2513,2514,2522,2540],{"__ignoreMap":550},[555,2515,2516,2518,2520],{"class":557,"line":558},[555,2517,739],{"class":591},[555,2519,743],{"class":742},[555,2521,746],{"class":591},[555,2523,2524,2526,2529,2531,2534,2536,2538],{"class":557,"line":595},[555,2525,751],{"class":591},[555,2527,2528],{"class":742},"admin-button",[555,2530,782],{"class":591},[555,2532,2533],{"class":598},"按鈕文字",[555,2535,788],{"class":591},[555,2537,2528],{"class":742},[555,2539,746],{"class":591},[555,2541,2542,2544,2546],{"class":557,"line":605},[555,2543,788],{"class":591},[555,2545,743],{"class":742},[555,2547,746],{"class":591},[696,2549,2528],{"id":2528},[944,2551],{"component":2552},"AdminButton",[540,2554,1560],{"id":1560},[1562,2556,2557,2578],{},[1565,2558,2559,2470,2565,2568,2569,2572,2573,2474,2575,2577],{},[1139,2560,2561,2564],{},[552,2562,2563],{},"color=\"text\""," 為 ghost 專屬",[552,2566,2567],{},"text"," 色階僅在 ",[552,2570,2571],{},"variant=\"ghost\""," 下有對應樣式（toolbar \u002F dropdown trigger 等次要 icon-only action 場景）；搭配 ",[552,2574,2473],{},[552,2576,2477],{}," 時無效果，渲染同該 variant 預設色。",[1565,2579,2580,2586,2587,2590,2591,2594,2595,2598],{},[1139,2581,2582,2583],{},"表單內請設 ",[552,2584,2585],{},"type=\"button\"","：原生 ",[552,2588,2589],{},"type"," 未指定時瀏覽器預設為 ",[552,2592,2593],{},"submit","，放在 ",[552,2596,2597],{},"\u003Cform>"," 內的工具按鈕會觸發表單送出。",[540,2600,989],{"id":989},[991,2602],{"component":2552},[994,2604,2023],{},{"title":550,"searchDepth":605,"depth":605,"links":2606},[2607,2608,2609,2614,2618,2619],{"id":507,"depth":595,"text":507},{"id":687,"depth":595,"text":687},{"id":694,"depth":595,"text":694,"children":2610},[2611,2612,2613],{"id":1941,"depth":605,"text":1941},{"id":2464,"depth":605,"text":2464},{"id":2491,"depth":605,"text":2491},{"id":723,"depth":595,"text":724,"children":2615},[2616,2617],{"id":727,"depth":605,"text":727},{"id":2528,"depth":605,"text":2528},{"id":1560,"depth":595,"text":1560},{"id":989,"depth":595,"text":989},"觸發動作的按鈕。尺寸 medium／small；樣式 filled／outline／ghost。",{"doc":2622},"https:\u002F\u002Fwww.shadcn-vue.com\u002Fdocs\u002Fcomponents\u002Fbutton",{},{"title":37,"description":2620},"7WeWq1CqCbUmdN4eaDuW6X5GEt69Opdk-PbjqHfAl2E",{"id":2627,"title":41,"body":2628,"component":526,"description":3099,"extension":1019,"links":3100,"meta":3103,"navigation":526,"new":18,"path":42,"seo":3104,"stem":43,"wrapperKind":19,"__hash__":3105},"docs\u002Fdocs\u002Fadmin\u002Fcheckbox.md",{"type":537,"value":2629,"toc":3081},[2630,2632,2650,2702,2704,2707,2709,2712,2734,2737,2741,2754,2757,2760,2763,2767,2791,2809,2815,2820,2843,2846,2848,2850,2977,2983,3056,3058,3061,3063,3065,3067,3070,3072,3075,3077,3079],[540,2631,507],{"id":507},[543,2633,2635],{"className":545,"code":2634,"filename":547,"language":548,"meta":549,"style":550},"pnpm dlx shadcn-vue add @admin\u002Fcheckbox\n",[552,2636,2637],{"__ignoreMap":550},[555,2638,2639,2641,2643,2645,2647],{"class":557,"line":558},[555,2640,562],{"class":561},[555,2642,566],{"class":565},[555,2644,569],{"class":565},[555,2646,572],{"class":565},[555,2648,2649],{"class":565}," @admin\u002Fcheckbox\n",[543,2651,2653],{"className":578,"code":2652,"language":580,"meta":550,"style":550},"import {\n  AdminCheckbox,\n  AdminCheckboxGroup,\n  AdminCheckboxInput,\n  AdminCheckboxLabel,\n} from '@\u002Fcomponents\u002Fadmin\u002Fcheckbox'\n",[552,2654,2655,2661,2668,2675,2682,2689],{"__ignoreMap":550},[555,2656,2657,2659],{"class":557,"line":558},[555,2658,588],{"class":587},[555,2660,592],{"class":591},[555,2662,2663,2666],{"class":557,"line":595},[555,2664,2665],{"class":598},"  AdminCheckbox",[555,2667,602],{"class":591},[555,2669,2670,2673],{"class":557,"line":605},[555,2671,2672],{"class":598},"  AdminCheckboxGroup",[555,2674,602],{"class":591},[555,2676,2677,2680],{"class":557,"line":613},[555,2678,2679],{"class":598},"  AdminCheckboxInput",[555,2681,602],{"class":591},[555,2683,2684,2687],{"class":557,"line":621},[555,2685,2686],{"class":598},"  AdminCheckboxLabel",[555,2688,602],{"class":591},[555,2690,2691,2693,2695,2697,2700],{"class":557,"line":629},[555,2692,672],{"class":591},[555,2694,675],{"class":587},[555,2696,678],{"class":591},[555,2698,2699],{"class":565},"@\u002Fcomponents\u002Fadmin\u002Fcheckbox",[555,2701,684],{"class":591},[540,2703,687],{"id":687},[689,2705],{"name":2706},"CheckboxDemo",[540,2708,694],{"id":694},[696,2710,2711],{"id":2711},"多選群組",[709,2713,2145,2714,2717,2718,2721,2722,2725,2726,2729,2730,2733],{},[552,2715,2716],{},"admin-checkbox-group"," 包住多個 ",[552,2719,2720],{},"admin-checkbox","（各 input 帶 ",[552,2723,2724],{},"value","），",[552,2727,2728],{},"v-model"," 以陣列承接被選中的 value，勾選同步由底層 ",[552,2731,2732],{},"CheckboxGroupRoot"," 處理。",[689,2735],{"name":2736},"CheckboxGroupDemo",[696,2738,2740],{"id":2739},"indeterminate不定態","Indeterminate（不定態）",[709,2742,2743,2744,1127,2747,1127,2750,2753],{},"父層 checkbox 依子項目狀態在 ",[552,2745,2746],{},"true",[552,2748,2749],{},"false",[552,2751,2752],{},"'indeterminate'"," 三態間切換。",[689,2755],{"name":2756},"CheckboxIndeterminateDemo",[696,2758,2759],{"id":2759},"錯誤狀態",[689,2761],{"name":2762},"CheckboxErrorDemo",[540,2764,2766],{"id":2765},"type-safe-封裝","Type-safe 封裝",[709,2768,2769,2772,2773,2776,2777,2779,2780,2783,2784,2787,2788,2790],{},[552,2770,2771],{},"AdminCheckboxGroup"," 已是 generic（",[552,2774,2775],{},"T extends AcceptableValue","），以較嚴的 ref 綁定 ",[552,2778,2728],{}," 即可收斂為選項 value 的 literal union 陣列。若要讓 value 與清單對齊，可自行封裝：傳入 ",[552,2781,2782],{},"options","（建議加 ",[552,2785,2786],{},"as const","），由封裝元件以 ",[552,2789,2782],{}," 為單一事實來源渲染各選項。",[709,2792,2793,2794,2796,2797,2799,2800,1617,2802,2805,2806,2808],{},"如此 ",[552,2795,2782],{}," 即聯集來源，各選項的 ",[552,2798,2724],{}," 結構上不可能越界；型別安全落在 ",[552,2801,2728],{},[552,2803,2804],{},"defaultValue"," 必須對齊 ",[552,2807,2782],{}," 的 value union（元素型別）。",[2810,2811,2812],"blockquote",{},[709,2813,2814],{},"此食譜刻意精簡；需要時可自行 fork 擴充。封裝元件僅為文件示範，不屬 registry 安裝產物。",[2816,2817],"component-source",{"name":2818,"title":2819},"TypedAdminCheckboxGroupDemo","TypedAdminCheckboxGroup.vue",[2821,2822,2825],"alert",{"title":2823,"type":2824},"需開啟 strictVModel","info",[709,2826,2827,2828,2831,2832,2835,2836,2838,2839,2842],{},"型別檢查需開啟 ",[552,2829,2830],{},"strictVModel","（若已開啟 ",[552,2833,2834],{},"strictTemplates"," 則已包含）。設定見 ",[701,2837,515],{"href":516},"。下列同時含合法綁定與刻意錯誤綁定；錯誤處以 ",[552,2840,2841],{},"@vue-expect-error"," 標示。",[2816,2844],{"name":2845},"CheckboxGroupTypeSafeDemo",[540,2847,724],{"id":723},[696,2849,727],{"id":727},[543,2851,2853],{"className":730,"code":2852,"language":732,"meta":550,"style":550},"\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",[552,2854,2855,2863,2883,2915,2935,2953,2961,2969],{"__ignoreMap":550},[555,2856,2857,2859,2861],{"class":557,"line":558},[555,2858,739],{"class":591},[555,2860,743],{"class":742},[555,2862,746],{"class":591},[555,2864,2865,2867,2869,2872,2874,2876,2879,2881],{"class":557,"line":595},[555,2866,751],{"class":591},[555,2868,2716],{"class":742},[555,2870,2871],{"class":757}," v-model",[555,2873,761],{"class":591},[555,2875,764],{"class":591},[555,2877,2878],{"class":565},"selected",[555,2880,764],{"class":591},[555,2882,746],{"class":591},[555,2884,2885,2887,2889,2892,2894,2896,2899,2901,2904,2906,2908,2911,2913],{"class":557,"line":605},[555,2886,776],{"class":591},[555,2888,2720],{"class":742},[555,2890,2891],{"class":757}," v-for",[555,2893,761],{"class":591},[555,2895,764],{"class":591},[555,2897,2898],{"class":565},"opt in options",[555,2900,764],{"class":591},[555,2902,2903],{"class":757}," :key",[555,2905,761],{"class":591},[555,2907,764],{"class":591},[555,2909,2910],{"class":565},"opt.value",[555,2912,764],{"class":591},[555,2914,746],{"class":591},[555,2916,2917,2919,2922,2925,2927,2929,2931,2933],{"class":557,"line":613},[555,2918,806],{"class":591},[555,2920,2921],{"class":742},"admin-checkbox-input",[555,2923,2924],{"class":757}," :value",[555,2926,761],{"class":591},[555,2928,764],{"class":591},[555,2930,2910],{"class":565},[555,2932,764],{"class":591},[555,2934,1453],{"class":591},[555,2936,2937,2939,2942,2944,2947,2949,2951],{"class":557,"line":621},[555,2938,806],{"class":591},[555,2940,2941],{"class":742},"admin-checkbox-label",[555,2943,782],{"class":591},[555,2945,2946],{"class":598},"{{ opt.label }}",[555,2948,788],{"class":591},[555,2950,2941],{"class":742},[555,2952,746],{"class":591},[555,2954,2955,2957,2959],{"class":557,"line":629},[555,2956,917],{"class":591},[555,2958,2720],{"class":742},[555,2960,746],{"class":591},[555,2962,2963,2965,2967],{"class":557,"line":637},[555,2964,927],{"class":591},[555,2966,2716],{"class":742},[555,2968,746],{"class":591},[555,2970,2971,2973,2975],{"class":557,"line":645},[555,2972,788],{"class":591},[555,2974,743],{"class":742},[555,2976,746],{"class":591},[709,2978,2979,2980,2982],{},"單顆 checkbox 不需群組時，直接以 ",[552,2981,2728],{}," 綁定 input：",[543,2984,2986],{"className":730,"code":2985,"language":732,"meta":550,"style":550},"\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",[552,2987,2988,2996,3004,3023,3040,3048],{"__ignoreMap":550},[555,2989,2990,2992,2994],{"class":557,"line":558},[555,2991,739],{"class":591},[555,2993,743],{"class":742},[555,2995,746],{"class":591},[555,2997,2998,3000,3002],{"class":557,"line":595},[555,2999,751],{"class":591},[555,3001,2720],{"class":742},[555,3003,746],{"class":591},[555,3005,3006,3008,3010,3012,3014,3016,3019,3021],{"class":557,"line":605},[555,3007,776],{"class":591},[555,3009,2921],{"class":742},[555,3011,2871],{"class":757},[555,3013,761],{"class":591},[555,3015,764],{"class":591},[555,3017,3018],{"class":565},"checked",[555,3020,764],{"class":591},[555,3022,1453],{"class":591},[555,3024,3025,3027,3029,3031,3034,3036,3038],{"class":557,"line":613},[555,3026,776],{"class":591},[555,3028,2941],{"class":742},[555,3030,782],{"class":591},[555,3032,3033],{"class":598},"標籤文字",[555,3035,788],{"class":591},[555,3037,2941],{"class":742},[555,3039,746],{"class":591},[555,3041,3042,3044,3046],{"class":557,"line":621},[555,3043,927],{"class":591},[555,3045,2720],{"class":742},[555,3047,746],{"class":591},[555,3049,3050,3052,3054],{"class":557,"line":629},[555,3051,788],{"class":591},[555,3053,743],{"class":742},[555,3055,746],{"class":591},[696,3057,2720],{"id":2720},[944,3059],{"component":3060},"AdminCheckbox",[696,3062,2716],{"id":2716},[944,3064],{"component":2771},[696,3066,2921],{"id":2921},[944,3068],{"component":3069},"AdminCheckboxInput",[696,3071,2941],{"id":2941},[944,3073],{"component":3074},"AdminCheckboxLabel",[540,3076,989],{"id":989},[991,3078],{"component":3060},[994,3080,996],{},{"title":550,"searchDepth":605,"depth":605,"links":3082},[3083,3084,3085,3090,3091,3098],{"id":507,"depth":595,"text":507},{"id":687,"depth":595,"text":687},{"id":694,"depth":595,"text":694,"children":3086},[3087,3088,3089],{"id":2711,"depth":605,"text":2711},{"id":2739,"depth":605,"text":2740},{"id":2759,"depth":605,"text":2759},{"id":2765,"depth":595,"text":2766},{"id":723,"depth":595,"text":724,"children":3092},[3093,3094,3095,3096,3097],{"id":727,"depth":605,"text":727},{"id":2720,"depth":605,"text":2720},{"id":2716,"depth":605,"text":2716},{"id":2921,"depth":605,"text":2921},{"id":2941,"depth":605,"text":2941},{"id":989,"depth":595,"text":989},"核取方塊。單選、多選、不定態（indeterminate）。",{"doc":3101,"api":3102},"https:\u002F\u002Freka-ui.com\u002Fdocs\u002Fcomponents\u002Fcheckbox","https:\u002F\u002Freka-ui.com\u002Fdocs\u002Fcomponents\u002Fcheckbox#api-reference",{},{"title":41,"description":3099},"YiOE25J9p3H0zYRZDLfjmWxcNGLwLm9yFvHASCBO-IU",{"id":3107,"title":45,"body":3108,"component":526,"description":3764,"extension":1019,"links":3765,"meta":3768,"navigation":526,"new":18,"path":46,"seo":3769,"stem":47,"wrapperKind":19,"__hash__":3770},"docs\u002Fdocs\u002Fadmin\u002Fcolor-picker.md",{"type":537,"value":3109,"toc":3749},[3110,3112,3130,3197,3199,3202,3204,3207,3210,3214,3221,3224,3226,3241,3267,3269,3547,3550,3728,3730,3733,3735,3738,3740,3742,3744,3746],[540,3111,507],{"id":507},[543,3113,3115],{"className":545,"code":3114,"filename":547,"language":548,"meta":549,"style":550},"pnpm dlx shadcn-vue add @admin\u002Fcolor-picker\n",[552,3116,3117],{"__ignoreMap":550},[555,3118,3119,3121,3123,3125,3127],{"class":557,"line":558},[555,3120,562],{"class":561},[555,3122,566],{"class":565},[555,3124,569],{"class":565},[555,3126,572],{"class":565},[555,3128,3129],{"class":565}," @admin\u002Fcolor-picker\n",[543,3131,3133],{"className":578,"code":3132,"language":580,"meta":550,"style":550},"import type { ColorPickerSwatch } from '@\u002Fcomponents\u002Fadmin\u002Fcolor-picker'\nimport {\n  AdminColorPicker,\n  AdminColorPickerContent,\n  AdminColorPickerTrigger,\n} from '@\u002Fcomponents\u002Fadmin\u002Fcolor-picker'\n",[552,3134,3135,3158,3164,3171,3178,3185],{"__ignoreMap":550},[555,3136,3137,3139,3142,3144,3147,3149,3151,3153,3156],{"class":557,"line":558},[555,3138,588],{"class":587},[555,3140,3141],{"class":587}," type",[555,3143,1277],{"class":591},[555,3145,3146],{"class":598}," ColorPickerSwatch",[555,3148,1283],{"class":591},[555,3150,675],{"class":587},[555,3152,678],{"class":591},[555,3154,3155],{"class":565},"@\u002Fcomponents\u002Fadmin\u002Fcolor-picker",[555,3157,684],{"class":591},[555,3159,3160,3162],{"class":557,"line":595},[555,3161,588],{"class":587},[555,3163,592],{"class":591},[555,3165,3166,3169],{"class":557,"line":605},[555,3167,3168],{"class":598},"  AdminColorPicker",[555,3170,602],{"class":591},[555,3172,3173,3176],{"class":557,"line":613},[555,3174,3175],{"class":598},"  AdminColorPickerContent",[555,3177,602],{"class":591},[555,3179,3180,3183],{"class":557,"line":621},[555,3181,3182],{"class":598},"  AdminColorPickerTrigger",[555,3184,602],{"class":591},[555,3186,3187,3189,3191,3193,3195],{"class":557,"line":629},[555,3188,672],{"class":591},[555,3190,675],{"class":587},[555,3192,678],{"class":591},[555,3194,3155],{"class":565},[555,3196,684],{"class":591},[540,3198,687],{"id":687},[689,3200],{"name":3201},"ColorPickerBasicDemo",[540,3203,694],{"id":694},[696,3205,3206],{"id":3206},"停用狀態",[689,3208],{"name":3209},"ColorPickerDisabledDemo",[696,3211,3213],{"id":3212},"自訂-trigger","自訂 trigger",[709,3215,3216,3217,3220],{},"當預設 trigger 樣式不符需求，透過 ",[552,3218,3219],{},"AdminColorPickerTrigger"," 的 default slot 自行渲染觸發器；slot 內第一個元素會直接成為觸發 DOM。",[689,3222],{"name":3223},"ColorPickerCustomTriggerDemo",[540,3225,724],{"id":723},[709,3227,3228,3231,3232,3234,3235,3237,3238,3240],{},[552,3229,3230],{},"swatches"," 中每個 ",[552,3233,2724],{}," 須唯一，且 ",[552,3236,2728],{}," 綁定值須為其中某個 ",[552,3239,2724],{},"；若綁定值不在清單內，trigger 會顯示為未選狀態。",[709,3242,2145,3243,3246,3247,3249,3250,3253,3254,3256,3257,3259,3260,3262,3263,3266],{},[552,3244,3245],{},"as const satisfies readonly ColorPickerSwatch[]"," 宣告 ",[552,3248,3230],{},"，",[552,3251,3252],{},"modelValue"," 會收斂成各 ",[552,3255,2724],{}," 的 literal union，綁定清單外的字串即觸發 TypeScript 型別錯誤；未加 ",[552,3258,2786],{}," 時 ",[552,3261,3252],{}," 退回 ",[552,3264,3265],{},"string","，維持向後相容。",[696,3268,727],{"id":727},[543,3270,3272],{"className":730,"code":3271,"language":732,"meta":550,"style":550},"\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",[552,3273,3274,3297,3317,3321,3333,3368,3398,3420,3462,3470,3474,3482,3512,3521,3530,3538],{"__ignoreMap":550},[555,3275,3276,3278,3281,3284,3287,3289,3291,3293,3295],{"class":557,"line":558},[555,3277,739],{"class":591},[555,3279,3280],{"class":742},"script",[555,3282,3283],{"class":757}," setup",[555,3285,3286],{"class":757}," lang",[555,3288,761],{"class":591},[555,3290,764],{"class":591},[555,3292,580],{"class":565},[555,3294,764],{"class":591},[555,3296,746],{"class":591},[555,3298,3299,3301,3303,3305,3307,3309,3311,3313,3315],{"class":557,"line":595},[555,3300,588],{"class":587},[555,3302,3141],{"class":587},[555,3304,1277],{"class":591},[555,3306,3146],{"class":598},[555,3308,1283],{"class":591},[555,3310,675],{"class":587},[555,3312,678],{"class":591},[555,3314,3155],{"class":565},[555,3316,684],{"class":591},[555,3318,3319],{"class":557,"line":605},[555,3320,1297],{"emptyLinePlaceholder":526},[555,3322,3323,3326,3329,3331],{"class":557,"line":613},[555,3324,3325],{"class":757},"const",[555,3327,3328],{"class":598}," swatches ",[555,3330,761],{"class":591},[555,3332,1319],{"class":598},[555,3334,3335,3338,3341,3343,3345,3348,3350,3353,3356,3358,3360,3363,3365],{"class":557,"line":621},[555,3336,3337],{"class":591},"  {",[555,3339,3340],{"class":742}," value",[555,3342,1173],{"class":591},[555,3344,678],{"class":591},[555,3346,3347],{"class":565},"red",[555,3349,1218],{"class":591},[555,3351,3352],{"class":591},",",[555,3354,3355],{"class":742}," color",[555,3357,1173],{"class":591},[555,3359,678],{"class":591},[555,3361,3362],{"class":565},"#e1615e",[555,3364,1218],{"class":591},[555,3366,3367],{"class":591}," },\n",[555,3369,3370,3372,3374,3376,3378,3381,3383,3385,3387,3389,3391,3394,3396],{"class":557,"line":629},[555,3371,3337],{"class":591},[555,3373,3340],{"class":742},[555,3375,1173],{"class":591},[555,3377,678],{"class":591},[555,3379,3380],{"class":565},"blue",[555,3382,1218],{"class":591},[555,3384,3352],{"class":591},[555,3386,3355],{"class":742},[555,3388,1173],{"class":591},[555,3390,678],{"class":591},[555,3392,3393],{"class":565},"#4567f3",[555,3395,1218],{"class":591},[555,3397,3367],{"class":591},[555,3399,3400,3403,3406,3409,3412,3415,3417],{"class":557,"line":637},[555,3401,3402],{"class":598},"] ",[555,3404,3405],{"class":587},"as",[555,3407,3408],{"class":561}," const",[555,3410,3411],{"class":587}," satisfies",[555,3413,3414],{"class":757}," readonly",[555,3416,3146],{"class":561},[555,3418,3419],{"class":598},"[]\n",[555,3421,3422,3424,3427,3429,3432,3434,3436,3439,3442,3445,3448,3450,3452,3454,3457,3459],{"class":557,"line":645},[555,3423,3325],{"class":757},[555,3425,3426],{"class":598}," value ",[555,3428,761],{"class":591},[555,3430,3431],{"class":1158}," ref",[555,3433,739],{"class":591},[555,3435,1162],{"class":598},[555,3437,3438],{"class":591},"typeof",[555,3440,3441],{"class":598}," swatches)[",[555,3443,3444],{"class":561},"number",[555,3446,3447],{"class":598},"][",[555,3449,1218],{"class":591},[555,3451,2724],{"class":565},[555,3453,1218],{"class":591},[555,3455,3456],{"class":598},"]",[555,3458,782],{"class":591},[555,3460,3461],{"class":598},"()\n",[555,3463,3464,3466,3468],{"class":557,"line":653},[555,3465,788],{"class":591},[555,3467,3280],{"class":742},[555,3469,746],{"class":591},[555,3471,3472],{"class":557,"line":661},[555,3473,1297],{"emptyLinePlaceholder":526},[555,3475,3476,3478,3480],{"class":557,"line":669},[555,3477,739],{"class":591},[555,3479,743],{"class":742},[555,3481,746],{"class":591},[555,3483,3484,3486,3489,3491,3493,3495,3497,3499,3502,3504,3506,3508,3510],{"class":557,"line":905},[555,3485,751],{"class":591},[555,3487,3488],{"class":742},"admin-color-picker",[555,3490,2871],{"class":757},[555,3492,761],{"class":591},[555,3494,764],{"class":591},[555,3496,2724],{"class":565},[555,3498,764],{"class":591},[555,3500,3501],{"class":757}," :swatches",[555,3503,761],{"class":591},[555,3505,764],{"class":591},[555,3507,3230],{"class":565},[555,3509,764],{"class":591},[555,3511,746],{"class":591},[555,3513,3514,3516,3519],{"class":557,"line":914},[555,3515,776],{"class":591},[555,3517,3518],{"class":742},"admin-color-picker-trigger",[555,3520,1453],{"class":591},[555,3522,3523,3525,3528],{"class":557,"line":924},[555,3524,776],{"class":591},[555,3526,3527],{"class":742},"admin-color-picker-content",[555,3529,1453],{"class":591},[555,3531,3532,3534,3536],{"class":557,"line":934},[555,3533,927],{"class":591},[555,3535,3488],{"class":742},[555,3537,746],{"class":591},[555,3539,3541,3543,3545],{"class":557,"line":3540},16,[555,3542,788],{"class":591},[555,3544,743],{"class":742},[555,3546,746],{"class":591},[709,3548,3549],{},"需要自訂 trigger 時放入 slot 內容：",[543,3551,3553],{"className":730,"code":3552,"language":732,"meta":550,"style":550},"\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",[552,3554,3555,3563,3591,3611,3631,3668,3688,3696,3704,3712,3720],{"__ignoreMap":550},[555,3556,3557,3559,3561],{"class":557,"line":558},[555,3558,739],{"class":591},[555,3560,743],{"class":742},[555,3562,746],{"class":591},[555,3564,3565,3567,3569,3571,3573,3575,3577,3579,3581,3583,3585,3587,3589],{"class":557,"line":595},[555,3566,751],{"class":591},[555,3568,3488],{"class":742},[555,3570,2871],{"class":757},[555,3572,761],{"class":591},[555,3574,764],{"class":591},[555,3576,2724],{"class":565},[555,3578,764],{"class":591},[555,3580,3501],{"class":757},[555,3582,761],{"class":591},[555,3584,764],{"class":591},[555,3586,3230],{"class":565},[555,3588,764],{"class":591},[555,3590,746],{"class":591},[555,3592,3593,3595,3597,3600,3602,3604,3607,3609],{"class":557,"line":605},[555,3594,776],{"class":591},[555,3596,3518],{"class":742},[555,3598,3599],{"class":757}," v-slot",[555,3601,761],{"class":591},[555,3603,764],{"class":591},[555,3605,3606],{"class":565},"{ swatch, disabled }",[555,3608,764],{"class":591},[555,3610,746],{"class":591},[555,3612,3613,3615,3618,3621,3623,3625,3627,3629],{"class":557,"line":613},[555,3614,806],{"class":591},[555,3616,3617],{"class":742},"button",[555,3619,3620],{"class":757}," :disabled",[555,3622,761],{"class":591},[555,3624,764],{"class":591},[555,3626,2484],{"class":565},[555,3628,764],{"class":591},[555,3630,746],{"class":591},[555,3632,3633,3635,3637,3640,3642,3644,3647,3649,3652,3654,3656,3659,3661,3664,3666],{"class":557,"line":621},[555,3634,816],{"class":591},[555,3636,555],{"class":742},[555,3638,3639],{"class":757}," v-if",[555,3641,761],{"class":591},[555,3643,764],{"class":591},[555,3645,3646],{"class":565},"swatch",[555,3648,764],{"class":591},[555,3650,3651],{"class":757}," :style",[555,3653,761],{"class":591},[555,3655,764],{"class":591},[555,3657,3658],{"class":565},"{ background: swatch.color }",[555,3660,764],{"class":591},[555,3662,3663],{"class":591},">\u003C\u002F",[555,3665,555],{"class":742},[555,3667,746],{"class":591},[555,3669,3670,3672,3674,3677,3679,3682,3684,3686],{"class":557,"line":629},[555,3671,816],{"class":591},[555,3673,555],{"class":742},[555,3675,3676],{"class":757}," v-else",[555,3678,782],{"class":591},[555,3680,3681],{"class":598},"選擇顏色",[555,3683,788],{"class":591},[555,3685,555],{"class":742},[555,3687,746],{"class":591},[555,3689,3690,3692,3694],{"class":557,"line":637},[555,3691,853],{"class":591},[555,3693,3617],{"class":742},[555,3695,746],{"class":591},[555,3697,3698,3700,3702],{"class":557,"line":645},[555,3699,917],{"class":591},[555,3701,3518],{"class":742},[555,3703,746],{"class":591},[555,3705,3706,3708,3710],{"class":557,"line":653},[555,3707,776],{"class":591},[555,3709,3527],{"class":742},[555,3711,1453],{"class":591},[555,3713,3714,3716,3718],{"class":557,"line":661},[555,3715,927],{"class":591},[555,3717,3488],{"class":742},[555,3719,746],{"class":591},[555,3721,3722,3724,3726],{"class":557,"line":669},[555,3723,788],{"class":591},[555,3725,743],{"class":742},[555,3727,746],{"class":591},[696,3729,3488],{"id":3488},[944,3731],{"component":3732},"AdminColorPicker",[696,3734,3527],{"id":3527},[944,3736],{"component":3737},"AdminColorPickerContent",[696,3739,3518],{"id":3518},[944,3741],{"component":3219},[540,3743,989],{"id":989},[991,3745],{"component":3732},[994,3747,3748],{},"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":550,"searchDepth":605,"depth":605,"links":3750},[3751,3752,3753,3757,3763],{"id":507,"depth":595,"text":507},{"id":687,"depth":595,"text":687},{"id":694,"depth":595,"text":694,"children":3754},[3755,3756],{"id":3206,"depth":605,"text":3206},{"id":3212,"depth":605,"text":3213},{"id":723,"depth":595,"text":724,"children":3758},[3759,3760,3761,3762],{"id":727,"depth":605,"text":727},{"id":3488,"depth":605,"text":3488},{"id":3527,"depth":605,"text":3527},{"id":3518,"depth":605,"text":3518},{"id":989,"depth":595,"text":989},"從呼叫端傳入的色票陣列挑選顏色。",{"doc":3766,"api":3767},"https:\u002F\u002Freka-ui.com\u002Fdocs\u002Fcomponents\u002Fpopover","https:\u002F\u002Freka-ui.com\u002Fdocs\u002Fcomponents\u002Fpopover#api-reference",{},{"title":45,"description":3764},"ojBTMfFnFyGZJq2VGTNz0VXt437qjRAY3x53Yh07moE",{"id":3772,"title":49,"body":3773,"component":526,"description":4681,"extension":1019,"links":4682,"meta":4684,"navigation":526,"new":18,"path":50,"seo":4685,"stem":51,"wrapperKind":19,"__hash__":4686},"docs\u002Fdocs\u002Fadmin\u002Fcropper.md",{"type":537,"value":3774,"toc":4657},[3775,3777,3795,3866,3883,3887,3965,3969,4108,4110,4113,4115,4119,4122,4126,4129,4132,4150,4153,4157,4179,4182,4184,4186,4433,4435,4438,4441,4444,4446,4449,4451,4455,4511,4514,4573,4577,4603,4608,4651,4653,4655],[540,3776,507],{"id":507},[543,3778,3780],{"className":545,"code":3779,"filename":547,"language":548,"meta":549,"style":550},"pnpm dlx shadcn-vue add @admin\u002Fcropper\n",[552,3781,3782],{"__ignoreMap":550},[555,3783,3784,3786,3788,3790,3792],{"class":557,"line":558},[555,3785,562],{"class":561},[555,3787,566],{"class":565},[555,3789,569],{"class":565},[555,3791,572],{"class":565},[555,3793,3794],{"class":565}," @admin\u002Fcropper\n",[543,3796,3798],{"className":578,"code":3797,"language":580,"meta":550,"style":550},"import type { CropResult } from '@\u002Fcomponents\u002Fadmin\u002Fcropper'\nimport {\n  AdminCropper,\n  AdminCropperPreview,\n  AdminCropperZoom,\n  useAdminCropperContext\n} from '@\u002Fcomponents\u002Fadmin\u002Fcropper'\n",[552,3799,3800,3822,3828,3835,3842,3849,3854],{"__ignoreMap":550},[555,3801,3802,3804,3806,3808,3811,3813,3815,3817,3820],{"class":557,"line":558},[555,3803,588],{"class":587},[555,3805,3141],{"class":587},[555,3807,1277],{"class":591},[555,3809,3810],{"class":598}," CropResult",[555,3812,1283],{"class":591},[555,3814,675],{"class":587},[555,3816,678],{"class":591},[555,3818,3819],{"class":565},"@\u002Fcomponents\u002Fadmin\u002Fcropper",[555,3821,684],{"class":591},[555,3823,3824,3826],{"class":557,"line":595},[555,3825,588],{"class":587},[555,3827,592],{"class":591},[555,3829,3830,3833],{"class":557,"line":605},[555,3831,3832],{"class":598},"  AdminCropper",[555,3834,602],{"class":591},[555,3836,3837,3840],{"class":557,"line":613},[555,3838,3839],{"class":598},"  AdminCropperPreview",[555,3841,602],{"class":591},[555,3843,3844,3847],{"class":557,"line":621},[555,3845,3846],{"class":598},"  AdminCropperZoom",[555,3848,602],{"class":591},[555,3850,3851],{"class":557,"line":629},[555,3852,3853],{"class":598},"  useAdminCropperContext\n",[555,3855,3856,3858,3860,3862,3864],{"class":557,"line":637},[555,3857,672],{"class":591},[555,3859,675],{"class":587},[555,3861,678],{"class":591},[555,3863,3819],{"class":565},[555,3865,684],{"class":591},[709,3867,3868,3869,1127,3872,1127,3875,3878,3879,3882],{},"cropperjs v2 是一組 web components（",[552,3870,3871],{},"\u003Ccropper-canvas>",[552,3873,3874],{},"\u003Ccropper-image>",[552,3876,3877],{},"\u003Ccropper-selection>"," …），需要告訴 Vue 編譯器把它們當成 native custom element，否則 dev console 會出現 ",[552,3880,3881],{},"[Vue warn]: Failed to resolve component: cropper-*"," 警告。視專案類型把下列設定加進去：",[709,3884,3885],{},[1139,3886,1141],{},[543,3888,3890],{"className":578,"code":3889,"filename":1145,"language":580,"meta":550,"style":550},"export default defineNuxtConfig({\n  vue: {\n    compilerOptions: {\n      isCustomElement: (tag) => tag.startsWith('cropper-')\n    }\n  }\n})\n",[552,3891,3892,3904,3912,3920,3951,3955,3959],{"__ignoreMap":550},[555,3893,3894,3896,3898,3900,3902],{"class":557,"line":558},[555,3895,1152],{"class":587},[555,3897,1155],{"class":587},[555,3899,1159],{"class":1158},[555,3901,1162],{"class":598},[555,3903,1165],{"class":591},[555,3905,3906,3908,3910],{"class":557,"line":595},[555,3907,1170],{"class":742},[555,3909,1173],{"class":591},[555,3911,592],{"class":591},[555,3913,3914,3916,3918],{"class":557,"line":605},[555,3915,1180],{"class":742},[555,3917,1173],{"class":591},[555,3919,592],{"class":591},[555,3921,3922,3924,3926,3928,3930,3932,3934,3936,3938,3940,3942,3944,3947,3949],{"class":557,"line":613},[555,3923,1189],{"class":1158},[555,3925,1173],{"class":591},[555,3927,1194],{"class":591},[555,3929,1198],{"class":1197},[555,3931,1201],{"class":591},[555,3933,1204],{"class":757},[555,3935,1207],{"class":598},[555,3937,1210],{"class":591},[555,3939,1213],{"class":1158},[555,3941,1162],{"class":598},[555,3943,1218],{"class":591},[555,3945,3946],{"class":565},"cropper-",[555,3948,1218],{"class":591},[555,3950,1226],{"class":598},[555,3952,3953],{"class":557,"line":621},[555,3954,1231],{"class":591},[555,3956,3957],{"class":557,"line":629},[555,3958,1236],{"class":591},[555,3960,3961,3963],{"class":557,"line":637},[555,3962,672],{"class":591},[555,3964,1226],{"class":598},[709,3966,3967],{},[1139,3968,1247],{},[543,3970,3972],{"className":578,"code":3971,"filename":1251,"language":580,"meta":550,"style":550},"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",[552,3973,3974,3988,4006,4010,4022,4030,4038,4046,4054,4084,4088,4092,4098,4102],{"__ignoreMap":550},[555,3975,3976,3978,3980,3982,3984,3986],{"class":557,"line":558},[555,3977,588],{"class":587},[555,3979,1260],{"class":598},[555,3981,1263],{"class":587},[555,3983,678],{"class":591},[555,3985,1268],{"class":565},[555,3987,684],{"class":591},[555,3989,3990,3992,3994,3996,3998,4000,4002,4004],{"class":557,"line":595},[555,3991,588],{"class":587},[555,3993,1277],{"class":591},[555,3995,1280],{"class":598},[555,3997,1283],{"class":591},[555,3999,675],{"class":587},[555,4001,678],{"class":591},[555,4003,1290],{"class":565},[555,4005,684],{"class":591},[555,4007,4008],{"class":557,"line":605},[555,4009,1297],{"emptyLinePlaceholder":526},[555,4011,4012,4014,4016,4018,4020],{"class":557,"line":613},[555,4013,1152],{"class":587},[555,4015,1155],{"class":587},[555,4017,1280],{"class":1158},[555,4019,1162],{"class":598},[555,4021,1165],{"class":591},[555,4023,4024,4026,4028],{"class":557,"line":621},[555,4025,1314],{"class":742},[555,4027,1173],{"class":591},[555,4029,1319],{"class":598},[555,4031,4032,4034,4036],{"class":557,"line":629},[555,4033,1324],{"class":1158},[555,4035,1162],{"class":598},[555,4037,1165],{"class":591},[555,4039,4040,4042,4044],{"class":557,"line":637},[555,4041,1333],{"class":742},[555,4043,1173],{"class":591},[555,4045,592],{"class":591},[555,4047,4048,4050,4052],{"class":557,"line":645},[555,4049,1342],{"class":742},[555,4051,1173],{"class":591},[555,4053,592],{"class":591},[555,4055,4056,4058,4060,4062,4064,4066,4068,4070,4072,4074,4076,4078,4080,4082],{"class":557,"line":653},[555,4057,1351],{"class":1158},[555,4059,1173],{"class":591},[555,4061,1194],{"class":591},[555,4063,1198],{"class":1197},[555,4065,1201],{"class":591},[555,4067,1204],{"class":757},[555,4069,1207],{"class":598},[555,4071,1210],{"class":591},[555,4073,1213],{"class":1158},[555,4075,1162],{"class":598},[555,4077,1218],{"class":591},[555,4079,3946],{"class":565},[555,4081,1218],{"class":591},[555,4083,1226],{"class":598},[555,4085,4086],{"class":557,"line":661},[555,4087,1382],{"class":591},[555,4089,4090],{"class":557,"line":669},[555,4091,1387],{"class":591},[555,4093,4094,4096],{"class":557,"line":905},[555,4095,1392],{"class":591},[555,4097,1226],{"class":598},[555,4099,4100],{"class":557,"line":914},[555,4101,1399],{"class":598},[555,4103,4104,4106],{"class":557,"line":924},[555,4105,672],{"class":591},[555,4107,1226],{"class":598},[540,4109,687],{"id":687},[689,4111],{"name":4112},"CropperBasicDemo",[540,4114,694],{"id":694},[696,4116,4118],{"id":4117},"互動-playground","互動 playground",[689,4120],{"name":4121},"CropperPlaygroundDemo",[696,4123,4125],{"id":4124},"自訂-zoom-控制","自訂 zoom 控制",[689,4127],{"name":4128},"CropperZoomDemo",[696,4130,4131],{"id":4131},"多步驟裁切流程",[709,4133,4134,4135,1617,4138,4141,4142,4145,4146,4149],{},"搭配 ",[552,4136,4137],{},"admin-dialog",[552,4139,4140],{},"admin-stepper"," 完成「電腦版裁切 → 手機版裁切 → 預覽結果」三步驟流程；每一步用一個 ",[552,4143,4144],{},"\u003CAdminCropper>"," instance 鎖定不同 aspect ratio，最後一步直接以 ",[552,4147,4148],{},"result.toDataURL()"," 顯示成品。",[689,4151],{"name":4152},"CropperMultiStepDemo",[696,4154,4156],{"id":4155},"裁切-gif-動畫","裁切 GIF 動畫",[709,4158,4159,4160,4163,4164,4167,4168,4171,4172,1617,4175,4178],{},"呼叫 ",[552,4161,4162],{},"result.toBlob('image\u002Fgif')"," 或 ",[552,4165,4166],{},"result.toDataURL('image\u002Fgif')"," 會走 GIF pipeline，重新解碼所有 frame、依 selection 對每幀做像素裁切、再以 ",[552,4169,4170],{},"gifenc"," 重新編碼成動畫 GIF。原檔的 frame delay 與動畫長度會被保留。透過 ",[552,4173,4174],{},"gif-max-colors",[552,4176,4177],{},"gif-frame-stride"," 兩個 prop 可在畫質與檔案大小之間取捨。",[689,4180],{"name":4181},"CropperGifDemo",[540,4183,724],{"id":723},[696,4185,727],{"id":727},[543,4187,4189],{"className":730,"code":4188,"language":732,"meta":550,"style":550},"\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",[552,4190,4191,4199,4226,4233,4286,4291,4312,4319,4333,4347,4361,4375,4389,4403,4408,4416,4424],{"__ignoreMap":550},[555,4192,4193,4195,4197],{"class":557,"line":558},[555,4194,739],{"class":591},[555,4196,743],{"class":742},[555,4198,746],{"class":591},[555,4200,4201,4203,4206,4209,4211,4213,4216,4218,4221,4224],{"class":557,"line":595},[555,4202,751],{"class":591},[555,4204,4205],{"class":742},"admin-cropper",[555,4207,4208],{"class":757}," v-model:result",[555,4210,761],{"class":591},[555,4212,764],{"class":591},[555,4214,4215],{"class":565},"result",[555,4217,764],{"class":591},[555,4219,4220],{"class":757}," :aspect-ratio",[555,4222,4223],{"class":757}," :src",[555,4225,746],{"class":591},[555,4227,4228,4230],{"class":557,"line":605},[555,4229,776],{"class":591},[555,4231,4232],{"class":742},"template\n",[555,4234,4235,4238,4241,4243,4245,4248,4251,4253,4256,4258,4261,4263,4266,4268,4271,4273,4276,4278,4281,4283],{"class":557,"line":613},[555,4236,4237],{"class":591},"      #",[555,4239,4240],{"class":757},"default",[555,4242,761],{"class":591},[555,4244,764],{"class":591},[555,4246,4247],{"class":591},"{",[555,4249,4250],{"class":598}," selectionId",[555,4252,3352],{"class":591},[555,4254,4255],{"class":598}," zoom",[555,4257,3352],{"class":591},[555,4259,4260],{"class":598}," zoomBy",[555,4262,3352],{"class":591},[555,4264,4265],{"class":598}," zoomTo",[555,4267,3352],{"class":591},[555,4269,4270],{"class":598}," minZoom",[555,4272,3352],{"class":591},[555,4274,4275],{"class":598}," maxZoom",[555,4277,3352],{"class":591},[555,4279,4280],{"class":598}," zoomable ",[555,4282,672],{"class":591},[555,4284,4285],{"class":591},"\"\n",[555,4287,4288],{"class":557,"line":621},[555,4289,4290],{"class":591},"    >\n",[555,4292,4293,4295,4298,4301,4303,4305,4308,4310],{"class":557,"line":629},[555,4294,806],{"class":591},[555,4296,4297],{"class":742},"admin-cropper-preview",[555,4299,4300],{"class":757}," :selection",[555,4302,761],{"class":591},[555,4304,764],{"class":591},[555,4306,4307],{"class":565},"selectionId",[555,4309,764],{"class":591},[555,4311,1453],{"class":591},[555,4313,4314,4316],{"class":557,"line":637},[555,4315,806],{"class":591},[555,4317,4318],{"class":742},"admin-cropper-zoom\n",[555,4320,4321,4324,4326,4328,4331],{"class":557,"line":645},[555,4322,4323],{"class":757},"        v-if",[555,4325,761],{"class":591},[555,4327,764],{"class":591},[555,4329,4330],{"class":565},"zoomable",[555,4332,4285],{"class":591},[555,4334,4335,4338,4340,4342,4345],{"class":557,"line":653},[555,4336,4337],{"class":757},"        :max-zoom",[555,4339,761],{"class":591},[555,4341,764],{"class":591},[555,4343,4344],{"class":565},"maxZoom",[555,4346,4285],{"class":591},[555,4348,4349,4352,4354,4356,4359],{"class":557,"line":661},[555,4350,4351],{"class":757},"        :min-zoom",[555,4353,761],{"class":591},[555,4355,764],{"class":591},[555,4357,4358],{"class":565},"minZoom",[555,4360,4285],{"class":591},[555,4362,4363,4366,4368,4370,4373],{"class":557,"line":669},[555,4364,4365],{"class":757},"        :zoom",[555,4367,761],{"class":591},[555,4369,764],{"class":591},[555,4371,4372],{"class":565},"zoom",[555,4374,4285],{"class":591},[555,4376,4377,4380,4382,4384,4387],{"class":557,"line":905},[555,4378,4379],{"class":757},"        @zoom-by",[555,4381,761],{"class":591},[555,4383,764],{"class":591},[555,4385,4386],{"class":565},"zoomBy",[555,4388,4285],{"class":591},[555,4390,4391,4394,4396,4398,4401],{"class":557,"line":914},[555,4392,4393],{"class":757},"        @zoom-to",[555,4395,761],{"class":591},[555,4397,764],{"class":591},[555,4399,4400],{"class":565},"zoomTo",[555,4402,4285],{"class":591},[555,4404,4405],{"class":557,"line":924},[555,4406,4407],{"class":591},"      \u002F>\n",[555,4409,4410,4412,4414],{"class":557,"line":934},[555,4411,917],{"class":591},[555,4413,743],{"class":742},[555,4415,746],{"class":591},[555,4417,4418,4420,4422],{"class":557,"line":3540},[555,4419,927],{"class":591},[555,4421,4205],{"class":742},[555,4423,746],{"class":591},[555,4425,4427,4429,4431],{"class":557,"line":4426},17,[555,4428,788],{"class":591},[555,4430,743],{"class":742},[555,4432,746],{"class":591},[696,4434,4205],{"id":4205},[944,4436],{"component":4437},"AdminCropper",[696,4439,4440],{"id":4440},"admin-cropper-zoom",[944,4442],{"component":4443},"AdminCropperZoom",[696,4445,4297],{"id":4297},[944,4447],{"component":4448},"AdminCropperPreview",[540,4450,1560],{"id":1560},[696,4452,4454],{"id":4453},"selection-行為","Selection 行為",[1562,4456,4457,4480,4493],{},[1565,4458,4459,4464,4465,4468,4469,4472,4473,4476,4477,717],{},[1139,4460,4461],{},[552,4462,4463],{},"selection-within","：只限制",[1139,4466,4467],{},"畫布內的拖動範圍","（軸對齊邊界；旋轉時取可視外包矩形），不影響 ",[552,4470,4471],{},"result.region"," 仍以原圖像素表達。預設 ",[552,4474,4475],{},"'none'"," 允許拖到圖外（適合 GIF 透明邊）；要嚴格框在圖內設 ",[552,4478,4479],{},"'image'",[1565,4481,4482,2470,4487,4489,4490,4492],{},[1139,4483,4484],{},[552,4485,4486],{},"selection-redrawable",[552,4488,2746],{},"（預設）可在選框外暗區拖曳重畫；",[552,4491,2749],{}," 鎖定為只能調整現有框，避免表單誤觸。",[1565,4494,4495,4503,4504,4507,4508,4510],{},[1139,4496,4497,1617,4500],{},[552,4498,4499],{},"min-selection-size",[552,4501,4502],{},"aspect-ratio","：兩者比例不一致時 dev console 會 warn（不 throw），實際能拖到的最小尺寸會被兩個限制夾住、可能比 ",[552,4505,4506],{},"min"," 還大。建議讓 ",[552,4509,4506],{}," 寬高直接等於目標輸出尺寸。",[696,4512,4513],{"id":4513},"輸出行為",[1562,4515,4516,4531,4540,4555,4564],{},[1565,4517,4518,4530],{},[1139,4519,4520,1127,4523,1127,4526,4529],{},[552,4521,4522],{},"toCanvas",[552,4524,4525],{},"toDataURL",[552,4527,4528],{},"toBlob"," 皆為 async","，都回傳 Promise。",[1565,4532,4533,4536,4537,717],{},[1139,4534,4535],{},"預設不降採樣","：非 GIF 路徑輸出原圖像素座標下的裁切區域，不會因畫面上 selection 較小而縮圖；要刻意縮放請傳 ",[552,4538,4539],{},"{ width, height }",[1565,4541,4542,4548,4549,4163,4552,717],{},[1139,4543,4544,4547],{},[552,4545,4546],{},"toCanvas()"," 對 GIF 來源只輸出當前一幀","：要保留動畫請改用 ",[552,4550,4551],{},"toBlob({ mime: 'image\u002Fgif' })",[552,4553,4554],{},"toDataURL({ mime: 'image\u002Fgif' })",[1565,4556,4557,4560,4561,4563],{},[1139,4558,4559],{},"GIF pipeline 跑在 main thread","：解碼／量化／編碼皆同步。建議來源 \u003C 2MB \u002F \u003C 50 frames，超過會凍結 UI 100ms 以上，可用 ",[552,4562,4177],{}," 跳幀緩解。",[1565,4565,4566,4569,4570,4572],{},[1139,4567,4568],{},"部分 GIF 走 lossy 重量化","：僅當來源每一幀皆為 disposal type 2（還原到背景）時才走保留原始色盤的無損裁切路徑；多數含 disposal 0／1 幀的一般 GIF 會改走 composite 後以 ",[552,4571,4174],{}," 重新量化的路徑，可能出現輕微色帶。此為畫質取捨，非錯誤。",[696,4574,4576],{"id":4575},"ssr-與-vue-設定","SSR 與 Vue 設定",[1562,4578,4579,4592],{},[1565,4580,4581,4583,4584,4586,4587,4589,4590,717],{},[1139,4582,1591],{},"：cropperjs v2 web components 只能在瀏覽器 register；元件殼不含 ",[552,4585,1595],{},"。Nuxt 請自行以 ",[552,4588,1595],{}," 包覆，其他 SSR 框架用等價機制；純 CSR 不需處理。見 ",[701,4591,1607],{"href":1606},[1565,4593,4594,4599,4600,4602],{},[1139,4595,4596,4597],{},"必須設定 ",[552,4598,1572],{},"：否則 dev console 會印 ",[552,4601,3881],{},"。寫法見上方「安裝」章節。",[4604,4605,4607],"h4",{"id":4606},"cors","CORS",[1562,4609,4610,4635],{},[1565,4611,4612,4615,4616,4619,4620,1127,4622,1127,4624,4626,4627,4630,4631,4634],{},[1139,4613,4614],{},"一般輸出","：跨域圖片需回 ",[552,4617,4618],{},"Access-Control-Allow-Origin","，否則 ",[552,4621,4522],{},[552,4623,4525],{},[552,4625,4528],{}," 會 throw ",[552,4628,4629],{},"SecurityError","。元件已加 ",[552,4632,4633],{},"crossorigin=\"anonymous\"","，picsum 等 CDN 可正常運作。",[1565,4636,4637,4640,4641,4644,4645,2481,4647,4650],{},[1139,4638,4639],{},"GIF 輸出另需 fetch CORS","：GIF pipeline 會額外 ",[552,4642,4643],{},"fetch(src)"," 重新取 bytes，server 同樣要回 ",[552,4646,4618],{},[552,4648,4649],{},"\u003Cimg>"," 顯示成功不代表 fetch 拿得到。",[540,4652,989],{"id":989},[991,4654],{"component":4437},[994,4656,1649],{},{"title":550,"searchDepth":605,"depth":605,"links":4658},[4659,4660,4661,4667,4673,4680],{"id":507,"depth":595,"text":507},{"id":687,"depth":595,"text":687},{"id":694,"depth":595,"text":694,"children":4662},[4663,4664,4665,4666],{"id":4117,"depth":605,"text":4118},{"id":4124,"depth":605,"text":4125},{"id":4131,"depth":605,"text":4131},{"id":4155,"depth":605,"text":4156},{"id":723,"depth":595,"text":724,"children":4668},[4669,4670,4671,4672],{"id":727,"depth":605,"text":727},{"id":4205,"depth":605,"text":4205},{"id":4440,"depth":605,"text":4440},{"id":4297,"depth":605,"text":4297},{"id":1560,"depth":595,"text":1560,"children":4674},[4675,4676,4677],{"id":4453,"depth":605,"text":4454},{"id":4513,"depth":605,"text":4513},{"id":4575,"depth":605,"text":4576,"children":4678},[4679],{"id":4606,"depth":613,"text":4607},{"id":989,"depth":595,"text":989},"圖片裁切。可拖移 selection、zoom、即時預覽；可搭配 dialog／stepper 做多尺寸裁切。",{"doc":4683},"https:\u002F\u002Fgithub.com\u002Ffengyuanchen\u002Fcropperjs",{},{"title":49,"description":4681},"3y50TBCGzoEt0WeWuTE-0UHiLZ2NC57BHQz9J4QkS2U",{"id":4688,"title":53,"body":4689,"component":526,"description":5022,"extension":1019,"links":5023,"meta":5024,"navigation":526,"new":18,"path":54,"seo":5025,"stem":55,"wrapperKind":19,"__hash__":5026},"docs\u002Fdocs\u002Fadmin\u002Fdate-picker.md",{"type":537,"value":4690,"toc":5007},[4691,4693,4711,4749,4751,4761,4764,4766,4772,4775,4778,4781,4803,4806,4808,4811,4814,4816,4818,4964,4990,4992,4995,4998,5000,5002,5004],[540,4692,507],{"id":507},[543,4694,4696],{"className":545,"code":4695,"filename":547,"language":548,"meta":549,"style":550},"pnpm dlx shadcn-vue add @admin\u002Fdate-picker\n",[552,4697,4698],{"__ignoreMap":550},[555,4699,4700,4702,4704,4706,4708],{"class":557,"line":558},[555,4701,562],{"class":561},[555,4703,566],{"class":565},[555,4705,569],{"class":565},[555,4707,572],{"class":565},[555,4709,4710],{"class":565}," @admin\u002Fdate-picker\n",[543,4712,4714],{"className":578,"code":4713,"language":580,"meta":550,"style":550},"import {\n  AdminDatePicker,\n  AdminDatePickerRange,\n} from '@\u002Fcomponents\u002Fadmin\u002Fdate-picker'\n",[552,4715,4716,4722,4729,4736],{"__ignoreMap":550},[555,4717,4718,4720],{"class":557,"line":558},[555,4719,588],{"class":587},[555,4721,592],{"class":591},[555,4723,4724,4727],{"class":557,"line":595},[555,4725,4726],{"class":598},"  AdminDatePicker",[555,4728,602],{"class":591},[555,4730,4731,4734],{"class":557,"line":605},[555,4732,4733],{"class":598},"  AdminDatePickerRange",[555,4735,602],{"class":591},[555,4737,4738,4740,4742,4744,4747],{"class":557,"line":613},[555,4739,672],{"class":591},[555,4741,675],{"class":587},[555,4743,678],{"class":591},[555,4745,4746],{"class":565},"@\u002Fcomponents\u002Fadmin\u002Fdate-picker",[555,4748,684],{"class":591},[540,4750,687],{"id":687},[709,4752,4753,4756,4757,4760],{},[552,4754,4755],{},"AdminDatePicker"," 提供單選日期，",[552,4758,4759],{},"AdminDatePickerRange"," 提供區間選擇。兩者共用 ark-ui DatePicker 原生組件，採共享外框 layout 與 date-fns 格式化。",[689,4762],{"name":4763},"DatePickerSingleDemo",[540,4765,694],{"id":694},[709,4767,4768,4769,4771],{},"每個元件之 playground 提供完整 props 切換 UI 與即時 ",[552,4770,3252],{}," JSON 顯示。",[696,4773,4774],{"id":4774},"單選",[689,4776],{"name":4777},"DatePickerSinglePlaygroundDemo",[696,4779,4780],{"id":4780},"區間",[709,4782,4783,4784,4786,4787,4790,4791,4794,4795,4798,4799,4802],{},"兩個 input 於單一外框內並列，共享一個 trigger 與 clear 按鈕；",[552,4785,3252],{}," 為 ",[552,4788,4789],{},"Date[]","，length 0\u002F1\u002F2 partial 中間態合法（第一次 click cell 之後對外可見）。啟用 ",[552,4792,4793],{},"withTime"," 後 calendar 下方渲染垂直堆疊之兩組時間 stepper（上 = ",[552,4796,4797],{},"modelValue[0]","、下 = ",[552,4800,4801],{},"modelValue[1]","），需 modelValue length === 2 才啟用 stepper。",[689,4804],{"name":4805},"DatePickerRangePlaygroundDemo",[696,4807,2759],{"id":2759},[689,4809],{"name":4810},"DatePickerSingleErrorDemo",[689,4812],{"name":4813},"DatePickerRangeErrorDemo",[540,4815,724],{"id":723},[696,4817,727],{"id":727},[543,4819,4821],{"className":730,"code":4820,"language":732,"meta":550,"style":550},"\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",[552,4822,4823,4831,4837,4880,4884,4889,4896,4910,4924,4937,4951,4956],{"__ignoreMap":550},[555,4824,4825,4827,4829],{"class":557,"line":558},[555,4826,739],{"class":591},[555,4828,743],{"class":742},[555,4830,746],{"class":591},[555,4832,4833],{"class":557,"line":595},[555,4834,4836],{"class":4835},"sHwdD","  \u003C!-- single -->\n",[555,4838,4839,4841,4844,4846,4848,4850,4852,4854,4857,4859,4861,4864,4866,4869,4871,4873,4876,4878],{"class":557,"line":605},[555,4840,751],{"class":591},[555,4842,4843],{"class":742},"admin-date-picker",[555,4845,2871],{"class":757},[555,4847,761],{"class":591},[555,4849,764],{"class":591},[555,4851,2724],{"class":565},[555,4853,764],{"class":591},[555,4855,4856],{"class":757}," format",[555,4858,761],{"class":591},[555,4860,764],{"class":591},[555,4862,4863],{"class":565},"yyyy\u002FMM\u002Fdd",[555,4865,764],{"class":591},[555,4867,4868],{"class":757}," placeholder",[555,4870,761],{"class":591},[555,4872,764],{"class":591},[555,4874,4875],{"class":565},"選擇日期",[555,4877,764],{"class":591},[555,4879,1453],{"class":591},[555,4881,4882],{"class":557,"line":613},[555,4883,1297],{"emptyLinePlaceholder":526},[555,4885,4886],{"class":557,"line":621},[555,4887,4888],{"class":4835},"  \u003C!-- range -->\n",[555,4890,4891,4893],{"class":557,"line":629},[555,4892,751],{"class":591},[555,4894,4895],{"class":742},"admin-date-picker-range\n",[555,4897,4898,4901,4903,4905,4908],{"class":557,"line":637},[555,4899,4900],{"class":757},"    v-model",[555,4902,761],{"class":591},[555,4904,764],{"class":591},[555,4906,4907],{"class":565},"range",[555,4909,4285],{"class":591},[555,4911,4912,4915,4917,4919,4922],{"class":557,"line":645},[555,4913,4914],{"class":757},"    end-placeholder",[555,4916,761],{"class":591},[555,4918,764],{"class":591},[555,4920,4921],{"class":565},"結束",[555,4923,4285],{"class":591},[555,4925,4926,4929,4931,4933,4935],{"class":557,"line":653},[555,4927,4928],{"class":757},"    format",[555,4930,761],{"class":591},[555,4932,764],{"class":591},[555,4934,4863],{"class":565},[555,4936,4285],{"class":591},[555,4938,4939,4942,4944,4946,4949],{"class":557,"line":661},[555,4940,4941],{"class":757},"    start-placeholder",[555,4943,761],{"class":591},[555,4945,764],{"class":591},[555,4947,4948],{"class":565},"開始",[555,4950,4285],{"class":591},[555,4952,4953],{"class":557,"line":669},[555,4954,4955],{"class":591},"  \u002F>\n",[555,4957,4958,4960,4962],{"class":557,"line":905},[555,4959,788],{"class":591},[555,4961,743],{"class":742},[555,4963,746],{"class":591},[2821,4965,4967],{"title":4966,"type":2824},"透傳上游 API",[709,4968,4969,1127,4971,4973,4974,4977,4978,1127,4983,1127,4986,4989],{},[552,4970,4755],{},[552,4972,4759],{}," 直接以 ",[552,4975,4976],{},"@ark-ui\u002Fvue"," 之 ",[701,4979,4982],{"href":4980,"rel":4981},"https:\u002F\u002Fark-ui.com\u002Fvue\u002Fdocs\u002Fcomponents\u002Fdate-picker",[705],"DatePicker.Input",[552,4984,4985],{},"DatePicker.Trigger",[552,4987,4988],{},"DatePicker.ClearTrigger"," 為 input 元素；下列僅列出 admin 對外承諾之 prop \u002F event \u002F expose。",[696,4991,4843],{"id":4843},[944,4993],{"component":4755,"slot":4994},"date-picker",[696,4996,4997],{"id":4997},"admin-date-picker-range",[944,4999],{"component":4759,"slot":4994},[540,5001,989],{"id":989},[991,5003],{"component":4755},[994,5005,5006],{},"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":550,"searchDepth":605,"depth":605,"links":5008},[5009,5010,5011,5016,5021],{"id":507,"depth":595,"text":507},{"id":687,"depth":595,"text":687},{"id":694,"depth":595,"text":694,"children":5012},[5013,5014,5015],{"id":4774,"depth":605,"text":4774},{"id":4780,"depth":605,"text":4780},{"id":2759,"depth":605,"text":2759},{"id":723,"depth":595,"text":724,"children":5017},[5018,5019,5020],{"id":727,"depth":605,"text":727},{"id":4843,"depth":605,"text":4843},{"id":4997,"depth":605,"text":4997},{"id":989,"depth":595,"text":989},"日期選擇器（@ark-ui\u002Fvue）。單日、區間選取。",{"doc":4980},{},{"title":53,"description":5022},"VTj1BcusWcbU8KVIUx-FCRsJEORtk0GAWIiaAvwfkb0",{"id":5028,"title":57,"body":5029,"component":526,"description":5447,"extension":1019,"links":5448,"meta":5451,"navigation":526,"new":18,"path":58,"seo":5452,"stem":59,"wrapperKind":19,"__hash__":5453},"docs\u002Fdocs\u002Fadmin\u002Fdialog.md",{"type":537,"value":5030,"toc":5425},[5031,5033,5051,5131,5133,5143,5146,5148,5151,5184,5187,5190,5193,5195,5197,5367,5369,5372,5374,5377,5380,5383,5385,5388,5390,5393,5395,5398,5400,5403,5406,5409,5411,5414,5416,5419,5421,5423],[540,5032,507],{"id":507},[543,5034,5036],{"className":545,"code":5035,"filename":547,"language":548,"meta":549,"style":550},"pnpm dlx shadcn-vue add @admin\u002Fdialog\n",[552,5037,5038],{"__ignoreMap":550},[555,5039,5040,5042,5044,5046,5048],{"class":557,"line":558},[555,5041,562],{"class":561},[555,5043,566],{"class":565},[555,5045,569],{"class":565},[555,5047,572],{"class":565},[555,5049,5050],{"class":565}," @admin\u002Fdialog\n",[543,5052,5054],{"className":578,"code":5053,"language":580,"meta":550,"style":550},"import {\n  AdminDialog,\n  AdminDialogClose,\n  AdminDialogContent,\n  AdminDialogDescription,\n  AdminDialogFooter,\n  AdminDialogHeader,\n  AdminDialogTitle,\n  AdminDialogTrigger,\n} from '@\u002Fcomponents\u002Fadmin\u002Fdialog'\n",[552,5055,5056,5062,5069,5076,5083,5090,5097,5104,5111,5118],{"__ignoreMap":550},[555,5057,5058,5060],{"class":557,"line":558},[555,5059,588],{"class":587},[555,5061,592],{"class":591},[555,5063,5064,5067],{"class":557,"line":595},[555,5065,5066],{"class":598},"  AdminDialog",[555,5068,602],{"class":591},[555,5070,5071,5074],{"class":557,"line":605},[555,5072,5073],{"class":598},"  AdminDialogClose",[555,5075,602],{"class":591},[555,5077,5078,5081],{"class":557,"line":613},[555,5079,5080],{"class":598},"  AdminDialogContent",[555,5082,602],{"class":591},[555,5084,5085,5088],{"class":557,"line":621},[555,5086,5087],{"class":598},"  AdminDialogDescription",[555,5089,602],{"class":591},[555,5091,5092,5095],{"class":557,"line":629},[555,5093,5094],{"class":598},"  AdminDialogFooter",[555,5096,602],{"class":591},[555,5098,5099,5102],{"class":557,"line":637},[555,5100,5101],{"class":598},"  AdminDialogHeader",[555,5103,602],{"class":591},[555,5105,5106,5109],{"class":557,"line":645},[555,5107,5108],{"class":598},"  AdminDialogTitle",[555,5110,602],{"class":591},[555,5112,5113,5116],{"class":557,"line":653},[555,5114,5115],{"class":598},"  AdminDialogTrigger",[555,5117,602],{"class":591},[555,5119,5120,5122,5124,5126,5129],{"class":557,"line":661},[555,5121,672],{"class":591},[555,5123,675],{"class":587},[555,5125,678],{"class":591},[555,5127,5128],{"class":565},"@\u002Fcomponents\u002Fadmin\u002Fdialog",[555,5130,684],{"class":591},[540,5132,687],{"id":687},[709,5134,2145,5135,5138,5139,5142],{},[552,5136,5137],{},"v-model:open"," 控制顯示狀態；header 與 footer 之間放主要內容，trigger 模式由 ",[552,5140,5141],{},"admin-dialog-trigger"," 啟動。",[689,5144],{"name":5145},"DialogDemo",[540,5147,694],{"id":694},[696,5149,5150],{"id":5150},"帶表單的對話框",[709,5152,5153,5154,1617,5157,5160,5161,1127,5164,1127,5167,1127,5170,5173,5174,5176,5177,5180,5181,717],{},"搭配 vee-validate 的 ",[552,5155,5156],{},"\u003CField>",[552,5158,5159],{},"useForm"," 做欄位驗證，並以 admin-field 版型（",[552,5162,5163],{},"admin-field",[552,5165,5166],{},"admin-field-label",[552,5168,5169],{},"admin-field-content",[552,5171,5172],{},"admin-field-error","）排版；",[552,5175,2597],{}," 包住欄位與 footer，透過 ",[552,5178,5179],{},"handleSubmit"," 攔截提交並在驗證通過後手動關閉 ",[552,5182,5183],{},"open",[689,5185],{"name":5186},"DialogFormDemo",[696,5188,5189],{"id":5189},"可滾動內容",[689,5191],{"name":5192},"DialogScrollableDemo",[540,5194,724],{"id":723},[696,5196,727],{"id":727},[543,5198,5200],{"className":730,"code":5199,"language":732,"meta":550,"style":550},"\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",[552,5201,5202,5210,5228,5244,5253,5262,5279,5296,5304,5309,5318,5335,5343,5351,5359],{"__ignoreMap":550},[555,5203,5204,5206,5208],{"class":557,"line":558},[555,5205,739],{"class":591},[555,5207,743],{"class":742},[555,5209,746],{"class":591},[555,5211,5212,5214,5216,5218,5220,5222,5224,5226],{"class":557,"line":595},[555,5213,751],{"class":591},[555,5215,4137],{"class":742},[555,5217,758],{"class":757},[555,5219,761],{"class":591},[555,5221,764],{"class":591},[555,5223,767],{"class":565},[555,5225,764],{"class":591},[555,5227,746],{"class":591},[555,5229,5230,5232,5234,5236,5238,5240,5242],{"class":557,"line":605},[555,5231,776],{"class":591},[555,5233,5141],{"class":742},[555,5235,782],{"class":591},[555,5237,707],{"class":598},[555,5239,788],{"class":591},[555,5241,5141],{"class":742},[555,5243,746],{"class":591},[555,5245,5246,5248,5251],{"class":557,"line":613},[555,5247,776],{"class":591},[555,5249,5250],{"class":742},"admin-dialog-content",[555,5252,746],{"class":591},[555,5254,5255,5257,5260],{"class":557,"line":621},[555,5256,806],{"class":591},[555,5258,5259],{"class":742},"admin-dialog-header",[555,5261,746],{"class":591},[555,5263,5264,5266,5269,5271,5273,5275,5277],{"class":557,"line":629},[555,5265,816],{"class":591},[555,5267,5268],{"class":742},"admin-dialog-title",[555,5270,782],{"class":591},[555,5272,824],{"class":598},[555,5274,788],{"class":591},[555,5276,5268],{"class":742},[555,5278,746],{"class":591},[555,5280,5281,5283,5286,5288,5290,5292,5294],{"class":557,"line":637},[555,5282,816],{"class":591},[555,5284,5285],{"class":742},"admin-dialog-description",[555,5287,782],{"class":591},[555,5289,842],{"class":598},[555,5291,788],{"class":591},[555,5293,5285],{"class":742},[555,5295,746],{"class":591},[555,5297,5298,5300,5302],{"class":557,"line":645},[555,5299,853],{"class":591},[555,5301,5259],{"class":742},[555,5303,746],{"class":591},[555,5305,5306],{"class":557,"line":653},[555,5307,5308],{"class":598},"      主要內容\n",[555,5310,5311,5313,5316],{"class":557,"line":661},[555,5312,806],{"class":591},[555,5314,5315],{"class":742},"admin-dialog-footer",[555,5317,746],{"class":591},[555,5319,5320,5322,5325,5327,5329,5331,5333],{"class":557,"line":669},[555,5321,816],{"class":591},[555,5323,5324],{"class":742},"admin-dialog-close",[555,5326,782],{"class":591},[555,5328,878],{"class":598},[555,5330,788],{"class":591},[555,5332,5324],{"class":742},[555,5334,746],{"class":591},[555,5336,5337,5339,5341],{"class":557,"line":905},[555,5338,853],{"class":591},[555,5340,5315],{"class":742},[555,5342,746],{"class":591},[555,5344,5345,5347,5349],{"class":557,"line":914},[555,5346,917],{"class":591},[555,5348,5250],{"class":742},[555,5350,746],{"class":591},[555,5352,5353,5355,5357],{"class":557,"line":924},[555,5354,927],{"class":591},[555,5356,4137],{"class":742},[555,5358,746],{"class":591},[555,5360,5361,5363,5365],{"class":557,"line":934},[555,5362,788],{"class":591},[555,5364,743],{"class":742},[555,5366,746],{"class":591},[696,5368,4137],{"id":4137},[944,5370],{"component":5371},"AdminDialog",[696,5373,5250],{"id":5250},[944,5375],{"component":5376},"AdminDialogContent",[696,5378,5379],{"id":5379},"admin-dialog-scroll-content",[944,5381],{"component":5382},"AdminDialogScrollContent",[696,5384,5324],{"id":5324},[944,5386],{"component":5387},"AdminDialogClose",[696,5389,5285],{"id":5285},[944,5391],{"component":5392},"AdminDialogDescription",[696,5394,5315],{"id":5315},[944,5396],{"component":5397},"AdminDialogFooter",[696,5399,5259],{"id":5259},[944,5401],{"component":5402},"AdminDialogHeader",[696,5404,5405],{"id":5405},"admin-dialog-overlay",[944,5407],{"component":5408},"AdminDialogOverlay",[696,5410,5268],{"id":5268},[944,5412],{"component":5413},"AdminDialogTitle",[696,5415,5141],{"id":5141},[944,5417],{"component":5418},"AdminDialogTrigger",[540,5420,989],{"id":989},[991,5422],{"component":5371},[994,5424,996],{},{"title":550,"searchDepth":605,"depth":605,"links":5426},[5427,5428,5429,5433,5446],{"id":507,"depth":595,"text":507},{"id":687,"depth":595,"text":687},{"id":694,"depth":595,"text":694,"children":5430},[5431,5432],{"id":5150,"depth":605,"text":5150},{"id":5189,"depth":605,"text":5189},{"id":723,"depth":595,"text":724,"children":5434},[5435,5436,5437,5438,5439,5440,5441,5442,5443,5444,5445],{"id":727,"depth":605,"text":727},{"id":4137,"depth":605,"text":4137},{"id":5250,"depth":605,"text":5250},{"id":5379,"depth":605,"text":5379},{"id":5324,"depth":605,"text":5324},{"id":5285,"depth":605,"text":5285},{"id":5315,"depth":605,"text":5315},{"id":5259,"depth":605,"text":5259},{"id":5405,"depth":605,"text":5405},{"id":5268,"depth":605,"text":5268},{"id":5141,"depth":605,"text":5141},{"id":989,"depth":595,"text":989},"覆蓋頁面內容的模態對話框。",{"doc":5449,"api":5450},"https:\u002F\u002Freka-ui.com\u002Fdocs\u002Fcomponents\u002Fdialog","https:\u002F\u002Freka-ui.com\u002Fdocs\u002Fcomponents\u002Fdialog#api-reference",{},{"title":57,"description":5447},"6_Dl8dhpeluG6yNuHg4i3FcxFwBtnRDjNhht-uR5hxI",{"id":5455,"title":61,"body":5456,"component":526,"description":5573,"extension":1019,"links":5574,"meta":5577,"navigation":526,"new":18,"path":62,"seo":5578,"stem":63,"wrapperKind":19,"__hash__":5579},"docs\u002Fdocs\u002Fadmin\u002Fdivider.md",{"type":537,"value":5457,"toc":5561},[5458,5460,5478,5503,5505,5508,5510,5513,5516,5518,5520,5550,5552,5555,5557,5559],[540,5459,507],{"id":507},[543,5461,5463],{"className":545,"code":5462,"filename":547,"language":548,"meta":549,"style":550},"pnpm dlx shadcn-vue add @admin\u002Fdivider\n",[552,5464,5465],{"__ignoreMap":550},[555,5466,5467,5469,5471,5473,5475],{"class":557,"line":558},[555,5468,562],{"class":561},[555,5470,566],{"class":565},[555,5472,569],{"class":565},[555,5474,572],{"class":565},[555,5476,5477],{"class":565}," @admin\u002Fdivider\n",[543,5479,5481],{"className":578,"code":5480,"language":580,"meta":550,"style":550},"import { AdminDivider } from '@\u002Fcomponents\u002Fadmin\u002Fdivider'\n",[552,5482,5483],{"__ignoreMap":550},[555,5484,5485,5487,5489,5492,5494,5496,5498,5501],{"class":557,"line":558},[555,5486,588],{"class":587},[555,5488,1277],{"class":591},[555,5490,5491],{"class":598}," AdminDivider",[555,5493,1283],{"class":591},[555,5495,675],{"class":587},[555,5497,678],{"class":591},[555,5499,5500],{"class":565},"@\u002Fcomponents\u002Fadmin\u002Fdivider",[555,5502,684],{"class":591},[540,5504,687],{"id":687},[689,5506],{"name":5507},"DividerDemo",[540,5509,694],{"id":694},[696,5511,5512],{"id":5512},"垂直分隔線",[689,5514],{"name":5515},"DividerVerticalDemo",[540,5517,724],{"id":723},[696,5519,727],{"id":727},[543,5521,5523],{"className":730,"code":5522,"language":732,"meta":550,"style":550},"\u003Ctemplate>\n  \u003Cadmin-divider \u002F>\n\u003C\u002Ftemplate>\n",[552,5524,5525,5533,5542],{"__ignoreMap":550},[555,5526,5527,5529,5531],{"class":557,"line":558},[555,5528,739],{"class":591},[555,5530,743],{"class":742},[555,5532,746],{"class":591},[555,5534,5535,5537,5540],{"class":557,"line":595},[555,5536,751],{"class":591},[555,5538,5539],{"class":742},"admin-divider",[555,5541,1453],{"class":591},[555,5543,5544,5546,5548],{"class":557,"line":605},[555,5545,788],{"class":591},[555,5547,743],{"class":742},[555,5549,746],{"class":591},[696,5551,5539],{"id":5539},[944,5553],{"component":5554},"AdminDivider",[540,5556,989],{"id":989},[991,5558],{"component":5554},[994,5560,2023],{},{"title":550,"searchDepth":605,"depth":605,"links":5562},[5563,5564,5565,5568,5572],{"id":507,"depth":595,"text":507},{"id":687,"depth":595,"text":687},{"id":694,"depth":595,"text":694,"children":5566},[5567],{"id":5512,"depth":605,"text":5512},{"id":723,"depth":595,"text":724,"children":5569},[5570,5571],{"id":727,"depth":605,"text":727},{"id":5539,"depth":605,"text":5539},{"id":989,"depth":595,"text":989},"區隔內容的分隔線。方向：水平（預設）、垂直。",{"doc":5575,"api":5576},"https:\u002F\u002Freka-ui.com\u002Fdocs\u002Fcomponents\u002Fseparator","https:\u002F\u002Freka-ui.com\u002Fdocs\u002Fcomponents\u002Fseparator#api-reference",{},{"title":61,"description":5573},"iG1Xwa27Kt-eVOQqHCWpXHYyeOTG2W2q4hjMOppw6MI",{"id":5581,"title":65,"body":5582,"component":526,"description":6375,"extension":1019,"links":6376,"meta":6379,"navigation":526,"new":18,"path":66,"seo":6380,"stem":67,"wrapperKind":19,"__hash__":6381},"docs\u002Fdocs\u002Fadmin\u002Fdropdown-menu.md",{"type":537,"value":5583,"toc":6347},[5584,5586,5604,5726,5728,5731,5734,5736,5739,5742,5745,5748,5751,5754,5757,5871,5878,5881,5939,5941,5943,6270,6272,6275,6277,6280,6282,6285,6287,6290,6292,6295,6297,6300,6303,6306,6308,6311,6313,6316,6318,6321,6323,6326,6328,6331,6333,6336,6338,6341,6343,6345],[540,5585,507],{"id":507},[543,5587,5589],{"className":545,"code":5588,"filename":547,"language":548,"meta":549,"style":550},"pnpm dlx shadcn-vue add @admin\u002Fdropdown-menu\n",[552,5590,5591],{"__ignoreMap":550},[555,5592,5593,5595,5597,5599,5601],{"class":557,"line":558},[555,5594,562],{"class":561},[555,5596,566],{"class":565},[555,5598,569],{"class":565},[555,5600,572],{"class":565},[555,5602,5603],{"class":565}," @admin\u002Fdropdown-menu\n",[543,5605,5607],{"className":578,"code":5606,"language":580,"meta":550,"style":550},"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",[552,5608,5609,5615,5622,5629,5636,5643,5650,5657,5664,5671,5678,5685,5692,5699,5706,5713],{"__ignoreMap":550},[555,5610,5611,5613],{"class":557,"line":558},[555,5612,588],{"class":587},[555,5614,592],{"class":591},[555,5616,5617,5620],{"class":557,"line":595},[555,5618,5619],{"class":598},"  AdminDropdownMenu",[555,5621,602],{"class":591},[555,5623,5624,5627],{"class":557,"line":605},[555,5625,5626],{"class":598},"  AdminDropdownMenuCheckboxItem",[555,5628,602],{"class":591},[555,5630,5631,5634],{"class":557,"line":613},[555,5632,5633],{"class":598},"  AdminDropdownMenuContent",[555,5635,602],{"class":591},[555,5637,5638,5641],{"class":557,"line":621},[555,5639,5640],{"class":598},"  AdminDropdownMenuGroup",[555,5642,602],{"class":591},[555,5644,5645,5648],{"class":557,"line":629},[555,5646,5647],{"class":598},"  AdminDropdownMenuItem",[555,5649,602],{"class":591},[555,5651,5652,5655],{"class":557,"line":637},[555,5653,5654],{"class":598},"  AdminDropdownMenuLabel",[555,5656,602],{"class":591},[555,5658,5659,5662],{"class":557,"line":645},[555,5660,5661],{"class":598},"  AdminDropdownMenuRadioGroup",[555,5663,602],{"class":591},[555,5665,5666,5669],{"class":557,"line":653},[555,5667,5668],{"class":598},"  AdminDropdownMenuRadioItem",[555,5670,602],{"class":591},[555,5672,5673,5676],{"class":557,"line":661},[555,5674,5675],{"class":598},"  AdminDropdownMenuSeparator",[555,5677,602],{"class":591},[555,5679,5680,5683],{"class":557,"line":669},[555,5681,5682],{"class":598},"  AdminDropdownMenuShortcut",[555,5684,602],{"class":591},[555,5686,5687,5690],{"class":557,"line":905},[555,5688,5689],{"class":598},"  AdminDropdownMenuSub",[555,5691,602],{"class":591},[555,5693,5694,5697],{"class":557,"line":914},[555,5695,5696],{"class":598},"  AdminDropdownMenuSubContent",[555,5698,602],{"class":591},[555,5700,5701,5704],{"class":557,"line":924},[555,5702,5703],{"class":598},"  AdminDropdownMenuSubTrigger",[555,5705,602],{"class":591},[555,5707,5708,5711],{"class":557,"line":934},[555,5709,5710],{"class":598},"  AdminDropdownMenuTrigger",[555,5712,602],{"class":591},[555,5714,5715,5717,5719,5721,5724],{"class":557,"line":3540},[555,5716,672],{"class":591},[555,5718,675],{"class":587},[555,5720,678],{"class":591},[555,5722,5723],{"class":565},"@\u002Fcomponents\u002Fadmin\u002Fdropdown-menu",[555,5725,684],{"class":591},[540,5727,687],{"id":687},[709,5729,5730],{},"點 trigger 顯示 content；items 由鍵盤 ArrowUp \u002F ArrowDown 切換 highlight、Enter 觸發 select、Escape 關閉。",[689,5732],{"name":5733},"DropdownMenuDemo",[540,5735,694],{"id":694},[696,5737,5738],{"id":5738},"操作選單",[709,5740,5741],{},"行內 action menu，含 disabled item 與 separator 分組；常用於列表 row 右側「⋯」按鈕。",[689,5743],{"name":5744},"DropdownMenuActionsDemo",[696,5746,5747],{"id":5747},"進階選單",[709,5749,5750],{},"checkbox item（多選）、radio group（單選）、巢狀 sub-menu、快捷鍵提示。",[689,5752],{"name":5753},"DropdownMenuAdvancedDemo",[696,5755,5756],{"id":5756},"鍵盤導航",[5758,5759,5760,5773],"table",{},[5761,5762,5763],"thead",{},[5764,5765,5766,5770],"tr",{},[5767,5768,5769],"th",{},"快捷鍵",[5767,5771,5772],{},"行為",[5774,5775,5776,5790,5807,5817,5827,5839,5849,5859],"tbody",{},[5764,5777,5778,5787],{},[5779,5780,5781,1127,5784],"td",{},[552,5782,5783],{},"ArrowDown",[552,5785,5786],{},"ArrowUp",[5779,5788,5789],{},"移動 highlight 到下一個 \u002F 上一個 item",[5764,5791,5792,5800],{},[5779,5793,5794,1127,5797],{},[552,5795,5796],{},"Enter",[552,5798,5799],{},"Space",[5779,5801,5802,5803,5806],{},"觸發 highlighted item 的 ",[552,5804,5805],{},"select"," event 並關閉 menu",[5764,5808,5809,5814],{},[5779,5810,5811],{},[552,5812,5813],{},"Escape",[5779,5815,5816],{},"關閉 menu，focus 回 trigger",[5764,5818,5819,5824],{},[5779,5820,5821],{},[552,5822,5823],{},"Tab",[5779,5825,5826],{},"關閉 menu，focus 移到下一個 tabbable 元素",[5764,5828,5829,5836],{},[5779,5830,5831,1127,5833],{},[552,5832,2254],{},[552,5834,5835],{},"End",[5779,5837,5838],{},"跳到第一個 \u002F 最後一個 item",[5764,5840,5841,5846],{},[5779,5842,5843],{},[552,5844,5845],{},"ArrowRight",[5779,5847,5848],{},"在 sub-trigger 上展開子選單並 focus 第一個 item（RTL 相反）",[5764,5850,5851,5856],{},[5779,5852,5853],{},[552,5854,5855],{},"ArrowLeft",[5779,5857,5858],{},"收合子選單，focus 回 sub-trigger（RTL 相反）",[5764,5860,5861,5864],{},[5779,5862,5863],{},"任意可印字元",[5779,5865,5866,5867,5870],{},"type-ahead 跳到 ",[552,5868,5869],{},"textValue"," 開頭符合的 item",[709,5872,5873,5874,5877],{},"行為由 reka-ui ",[552,5875,5876],{},"DropdownMenu"," primitive 提供，本元件薄包一層樣式。",[696,5879,5880],{"id":5880},"與其他元件的差別",[5758,5882,5883,5893],{},[5761,5884,5885],{},[5764,5886,5887,5890],{},[5767,5888,5889],{},"元件",[5767,5891,5892],{},"適用情境",[5774,5894,5895,5909,5923],{},[5764,5896,5897,5902],{},[5779,5898,5899],{},[1139,5900,5901],{},"admin-dropdown-menu",[5779,5903,5904,5905,5908],{},"觸發後彈出的「",[1139,5906,5907],{},"選項列表","」，含鍵盤導航；典型用例：navigation menu、action menu、heading dropdown",[5764,5910,5911,5916],{},[5779,5912,5913],{},[552,5914,5915],{},"admin-popover",[5779,5917,5918,5919,5922],{},"任意 ",[1139,5920,5921],{},"內容浮層","（不限選項列表）；沒有 roving tabindex \u002F arrow key 導航",[5764,5924,5925,5930],{},[5779,5926,5927],{},[552,5928,5929],{},"admin-select",[5779,5931,5932,5933,5935,5936],{},"表單欄位用的 ",[1139,5934,4774],{},"，會把選定值寫回 ",[552,5937,5938],{},"\u003Cinput>",[540,5940,724],{"id":723},[696,5942,727],{"id":727},[543,5944,5946],{"className":730,"code":5945,"language":732,"meta":550,"style":550},"\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",[552,5947,5948,5956,5964,5982,5991,6009,6018,6027,6032,6050,6058,6086,6105,6133,6161,6169,6178,6196,6206,6225,6235,6244,6253,6262],{"__ignoreMap":550},[555,5949,5950,5952,5954],{"class":557,"line":558},[555,5951,739],{"class":591},[555,5953,743],{"class":742},[555,5955,746],{"class":591},[555,5957,5958,5960,5962],{"class":557,"line":595},[555,5959,751],{"class":591},[555,5961,5901],{"class":742},[555,5963,746],{"class":591},[555,5965,5966,5968,5971,5973,5976,5978,5980],{"class":557,"line":605},[555,5967,776],{"class":591},[555,5969,5970],{"class":742},"admin-dropdown-menu-trigger",[555,5972,782],{"class":591},[555,5974,5975],{"class":598},"開啟選單",[555,5977,788],{"class":591},[555,5979,5970],{"class":742},[555,5981,746],{"class":591},[555,5983,5984,5986,5989],{"class":557,"line":613},[555,5985,776],{"class":591},[555,5987,5988],{"class":742},"admin-dropdown-menu-content",[555,5990,746],{"class":591},[555,5992,5993,5995,5998,6000,6003,6005,6007],{"class":557,"line":621},[555,5994,806],{"class":591},[555,5996,5997],{"class":742},"admin-dropdown-menu-label",[555,5999,782],{"class":591},[555,6001,6002],{"class":598},"群組標題",[555,6004,788],{"class":591},[555,6006,5997],{"class":742},[555,6008,746],{"class":591},[555,6010,6011,6013,6016],{"class":557,"line":629},[555,6012,806],{"class":591},[555,6014,6015],{"class":742},"admin-dropdown-menu-separator",[555,6017,1453],{"class":591},[555,6019,6020,6022,6025],{"class":557,"line":637},[555,6021,806],{"class":591},[555,6023,6024],{"class":742},"admin-dropdown-menu-item",[555,6026,746],{"class":591},[555,6028,6029],{"class":557,"line":645},[555,6030,6031],{"class":598},"        選項一\n",[555,6033,6034,6036,6039,6041,6044,6046,6048],{"class":557,"line":653},[555,6035,816],{"class":591},[555,6037,6038],{"class":742},"admin-dropdown-menu-shortcut",[555,6040,782],{"class":591},[555,6042,6043],{"class":598},"⌘K",[555,6045,788],{"class":591},[555,6047,6038],{"class":742},[555,6049,746],{"class":591},[555,6051,6052,6054,6056],{"class":557,"line":661},[555,6053,853],{"class":591},[555,6055,6024],{"class":742},[555,6057,746],{"class":591},[555,6059,6060,6062,6065,6067,6069,6071,6073,6075,6077,6080,6082,6084],{"class":557,"line":669},[555,6061,806],{"class":591},[555,6063,6064],{"class":742},"admin-dropdown-menu-checkbox-item",[555,6066,2871],{"class":757},[555,6068,761],{"class":591},[555,6070,764],{"class":591},[555,6072,3018],{"class":565},[555,6074,764],{"class":591},[555,6076,782],{"class":591},[555,6078,6079],{"class":598},"可勾選項",[555,6081,788],{"class":591},[555,6083,6064],{"class":742},[555,6085,746],{"class":591},[555,6087,6088,6090,6093,6095,6097,6099,6101,6103],{"class":557,"line":905},[555,6089,806],{"class":591},[555,6091,6092],{"class":742},"admin-dropdown-menu-radio-group",[555,6094,2871],{"class":757},[555,6096,761],{"class":591},[555,6098,764],{"class":591},[555,6100,2724],{"class":565},[555,6102,764],{"class":591},[555,6104,746],{"class":591},[555,6106,6107,6109,6112,6114,6116,6118,6120,6122,6124,6127,6129,6131],{"class":557,"line":914},[555,6108,816],{"class":591},[555,6110,6111],{"class":742},"admin-dropdown-menu-radio-item",[555,6113,3340],{"class":757},[555,6115,761],{"class":591},[555,6117,764],{"class":591},[555,6119,701],{"class":565},[555,6121,764],{"class":591},[555,6123,782],{"class":591},[555,6125,6126],{"class":598},"單選 A",[555,6128,788],{"class":591},[555,6130,6111],{"class":742},[555,6132,746],{"class":591},[555,6134,6135,6137,6139,6141,6143,6145,6148,6150,6152,6155,6157,6159],{"class":557,"line":924},[555,6136,816],{"class":591},[555,6138,6111],{"class":742},[555,6140,3340],{"class":757},[555,6142,761],{"class":591},[555,6144,764],{"class":591},[555,6146,6147],{"class":565},"b",[555,6149,764],{"class":591},[555,6151,782],{"class":591},[555,6153,6154],{"class":598},"單選 B",[555,6156,788],{"class":591},[555,6158,6111],{"class":742},[555,6160,746],{"class":591},[555,6162,6163,6165,6167],{"class":557,"line":934},[555,6164,853],{"class":591},[555,6166,6092],{"class":742},[555,6168,746],{"class":591},[555,6170,6171,6173,6176],{"class":557,"line":3540},[555,6172,806],{"class":591},[555,6174,6175],{"class":742},"admin-dropdown-menu-sub",[555,6177,746],{"class":591},[555,6179,6180,6182,6185,6187,6190,6192,6194],{"class":557,"line":4426},[555,6181,816],{"class":591},[555,6183,6184],{"class":742},"admin-dropdown-menu-sub-trigger",[555,6186,782],{"class":591},[555,6188,6189],{"class":598},"更多",[555,6191,788],{"class":591},[555,6193,6184],{"class":742},[555,6195,746],{"class":591},[555,6197,6199,6201,6204],{"class":557,"line":6198},18,[555,6200,816],{"class":591},[555,6202,6203],{"class":742},"admin-dropdown-menu-sub-content",[555,6205,746],{"class":591},[555,6207,6209,6212,6214,6216,6219,6221,6223],{"class":557,"line":6208},19,[555,6210,6211],{"class":591},"          \u003C",[555,6213,6024],{"class":742},[555,6215,782],{"class":591},[555,6217,6218],{"class":598},"子選項",[555,6220,788],{"class":591},[555,6222,6024],{"class":742},[555,6224,746],{"class":591},[555,6226,6228,6231,6233],{"class":557,"line":6227},20,[555,6229,6230],{"class":591},"        \u003C\u002F",[555,6232,6203],{"class":742},[555,6234,746],{"class":591},[555,6236,6238,6240,6242],{"class":557,"line":6237},21,[555,6239,853],{"class":591},[555,6241,6175],{"class":742},[555,6243,746],{"class":591},[555,6245,6247,6249,6251],{"class":557,"line":6246},22,[555,6248,917],{"class":591},[555,6250,5988],{"class":742},[555,6252,746],{"class":591},[555,6254,6256,6258,6260],{"class":557,"line":6255},23,[555,6257,927],{"class":591},[555,6259,5901],{"class":742},[555,6261,746],{"class":591},[555,6263,6264,6266,6268],{"class":557,"line":524},[555,6265,788],{"class":591},[555,6267,743],{"class":742},[555,6269,746],{"class":591},[696,6271,5901],{"id":5901},[944,6273],{"component":6274},"AdminDropdownMenu",[696,6276,5970],{"id":5970},[944,6278],{"component":6279},"AdminDropdownMenuTrigger",[696,6281,5988],{"id":5988},[944,6283],{"component":6284},"AdminDropdownMenuContent",[696,6286,6024],{"id":6024},[944,6288],{"component":6289},"AdminDropdownMenuItem",[696,6291,6015],{"id":6015},[944,6293],{"component":6294},"AdminDropdownMenuSeparator",[696,6296,5997],{"id":5997},[944,6298],{"component":6299},"AdminDropdownMenuLabel",[696,6301,6302],{"id":6302},"admin-dropdown-menu-group",[944,6304],{"component":6305},"AdminDropdownMenuGroup",[696,6307,6064],{"id":6064},[944,6309],{"component":6310},"AdminDropdownMenuCheckboxItem",[696,6312,6092],{"id":6092},[944,6314],{"component":6315},"AdminDropdownMenuRadioGroup",[696,6317,6111],{"id":6111},[944,6319],{"component":6320},"AdminDropdownMenuRadioItem",[696,6322,6175],{"id":6175},[944,6324],{"component":6325},"AdminDropdownMenuSub",[696,6327,6184],{"id":6184},[944,6329],{"component":6330},"AdminDropdownMenuSubTrigger",[696,6332,6203],{"id":6203},[944,6334],{"component":6335},"AdminDropdownMenuSubContent",[696,6337,6038],{"id":6038},[944,6339],{"component":6340},"AdminDropdownMenuShortcut",[540,6342,989],{"id":989},[991,6344],{"component":6274},[994,6346,996],{},{"title":550,"searchDepth":605,"depth":605,"links":6348},[6349,6350,6351,6357,6374],{"id":507,"depth":595,"text":507},{"id":687,"depth":595,"text":687},{"id":694,"depth":595,"text":694,"children":6352},[6353,6354,6355,6356],{"id":5738,"depth":605,"text":5738},{"id":5747,"depth":605,"text":5747},{"id":5756,"depth":605,"text":5756},{"id":5880,"depth":605,"text":5880},{"id":723,"depth":595,"text":724,"children":6358},[6359,6360,6361,6362,6363,6364,6365,6366,6367,6368,6369,6370,6371,6372,6373],{"id":727,"depth":605,"text":727},{"id":5901,"depth":605,"text":5901},{"id":5970,"depth":605,"text":5970},{"id":5988,"depth":605,"text":5988},{"id":6024,"depth":605,"text":6024},{"id":6015,"depth":605,"text":6015},{"id":5997,"depth":605,"text":5997},{"id":6302,"depth":605,"text":6302},{"id":6064,"depth":605,"text":6064},{"id":6092,"depth":605,"text":6092},{"id":6111,"depth":605,"text":6111},{"id":6175,"depth":605,"text":6175},{"id":6184,"depth":605,"text":6184},{"id":6203,"depth":605,"text":6203},{"id":6038,"depth":605,"text":6038},{"id":989,"depth":595,"text":989},"點按 trigger 後彈出的選項列表；含鍵盤導航。",{"doc":6377,"api":6378},"https:\u002F\u002Freka-ui.com\u002Fdocs\u002Fcomponents\u002Fdropdown-menu","https:\u002F\u002Freka-ui.com\u002Fdocs\u002Fcomponents\u002Fdropdown-menu#api-reference",{},{"title":65,"description":6375},"r3g7LWmiYV3D-Pieuzz4jR-678m6UbStOKAdEkDEPq0",{"id":6383,"title":69,"body":6384,"component":526,"description":7136,"extension":1019,"links":7137,"meta":7139,"navigation":526,"new":18,"path":70,"seo":7140,"stem":71,"wrapperKind":19,"__hash__":7141},"docs\u002Fdocs\u002Fadmin\u002Ffield.md",{"type":537,"value":6385,"toc":7114},[6386,6388,6406,6500,6502,6505,6507,6510,6513,6517,6520,6522,6524,6932,7058,7060,7063,7065,7068,7070,7073,7075,7078,7080,7083,7085,7088,7090,7093,7095,7098,7100,7103,7105,7108,7110,7112],[540,6387,507],{"id":507},[543,6389,6391],{"className":545,"code":6390,"filename":547,"language":548,"meta":549,"style":550},"pnpm dlx shadcn-vue add @admin\u002Ffield\n",[552,6392,6393],{"__ignoreMap":550},[555,6394,6395,6397,6399,6401,6403],{"class":557,"line":558},[555,6396,562],{"class":561},[555,6398,566],{"class":565},[555,6400,569],{"class":565},[555,6402,572],{"class":565},[555,6404,6405],{"class":565}," @admin\u002Ffield\n",[543,6407,6409],{"className":578,"code":6408,"language":580,"meta":550,"style":550},"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",[552,6410,6411,6417,6424,6431,6438,6445,6452,6459,6466,6473,6480,6487],{"__ignoreMap":550},[555,6412,6413,6415],{"class":557,"line":558},[555,6414,588],{"class":587},[555,6416,592],{"class":591},[555,6418,6419,6422],{"class":557,"line":595},[555,6420,6421],{"class":598},"  AdminField",[555,6423,602],{"class":591},[555,6425,6426,6429],{"class":557,"line":605},[555,6427,6428],{"class":598},"  AdminFieldContent",[555,6430,602],{"class":591},[555,6432,6433,6436],{"class":557,"line":613},[555,6434,6435],{"class":598},"  AdminFieldDescription",[555,6437,602],{"class":591},[555,6439,6440,6443],{"class":557,"line":621},[555,6441,6442],{"class":598},"  AdminFieldDivider",[555,6444,602],{"class":591},[555,6446,6447,6450],{"class":557,"line":629},[555,6448,6449],{"class":598},"  AdminFieldError",[555,6451,602],{"class":591},[555,6453,6454,6457],{"class":557,"line":637},[555,6455,6456],{"class":598},"  AdminFieldGroup",[555,6458,602],{"class":591},[555,6460,6461,6464],{"class":557,"line":645},[555,6462,6463],{"class":598},"  AdminFieldLabel",[555,6465,602],{"class":591},[555,6467,6468,6471],{"class":557,"line":653},[555,6469,6470],{"class":598},"  AdminFieldLegend",[555,6472,602],{"class":591},[555,6474,6475,6478],{"class":557,"line":661},[555,6476,6477],{"class":598},"  AdminFieldSet",[555,6479,602],{"class":591},[555,6481,6482,6485],{"class":557,"line":669},[555,6483,6484],{"class":598},"  AdminFieldTitle",[555,6486,602],{"class":591},[555,6488,6489,6491,6493,6495,6498],{"class":557,"line":905},[555,6490,672],{"class":591},[555,6492,675],{"class":587},[555,6494,678],{"class":591},[555,6496,6497],{"class":565},"@\u002Fcomponents\u002Fadmin\u002Ffield",[555,6499,684],{"class":591},[540,6501,687],{"id":687},[689,6503],{"name":6504},"FieldDemo",[540,6506,694],{"id":694},[696,6508,6509],{"id":6509},"錯誤訊息",[689,6511],{"name":6512},"FieldErrorDemo",[696,6514,6516],{"id":6515},"水平-orientation","水平 Orientation",[689,6518],{"name":6519},"FieldHorizontalDemo",[540,6521,724],{"id":723},[696,6523,727],{"id":727},[543,6525,6527],{"className":730,"code":6526,"language":732,"meta":550,"style":550},"\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",[552,6528,6529,6537,6546,6564,6573,6593,6610,6630,6648,6656,6660,6678,6695,6717,6734,6762,6770,6774,6783,6801,6805,6824,6832,6849,6866,6875,6896,6905,6914,6923],{"__ignoreMap":550},[555,6530,6531,6533,6535],{"class":557,"line":558},[555,6532,739],{"class":591},[555,6534,743],{"class":742},[555,6536,746],{"class":591},[555,6538,6539,6541,6544],{"class":557,"line":595},[555,6540,751],{"class":591},[555,6542,6543],{"class":742},"admin-field-set",[555,6545,746],{"class":591},[555,6547,6548,6550,6553,6555,6558,6560,6562],{"class":557,"line":605},[555,6549,776],{"class":591},[555,6551,6552],{"class":742},"admin-field-legend",[555,6554,782],{"class":591},[555,6556,6557],{"class":598},"個人資料",[555,6559,788],{"class":591},[555,6561,6552],{"class":742},[555,6563,746],{"class":591},[555,6565,6566,6568,6571],{"class":557,"line":613},[555,6567,776],{"class":591},[555,6569,6570],{"class":742},"admin-field-group",[555,6572,746],{"class":591},[555,6574,6575,6577,6579,6582,6584,6586,6589,6591],{"class":557,"line":621},[555,6576,806],{"class":591},[555,6578,5163],{"class":742},[555,6580,6581],{"class":757}," orientation",[555,6583,761],{"class":591},[555,6585,764],{"class":591},[555,6587,6588],{"class":565},"vertical",[555,6590,764],{"class":591},[555,6592,746],{"class":591},[555,6594,6595,6597,6599,6601,6604,6606,6608],{"class":557,"line":629},[555,6596,816],{"class":591},[555,6598,5166],{"class":742},[555,6600,782],{"class":591},[555,6602,6603],{"class":598},"姓名",[555,6605,788],{"class":591},[555,6607,5166],{"class":742},[555,6609,746],{"class":591},[555,6611,6612,6614,6617,6619,6621,6623,6626,6628],{"class":557,"line":637},[555,6613,816],{"class":591},[555,6615,6616],{"class":742},"admin-input",[555,6618,2871],{"class":757},[555,6620,761],{"class":591},[555,6622,764],{"class":591},[555,6624,6625],{"class":565},"name",[555,6627,764],{"class":591},[555,6629,1453],{"class":591},[555,6631,6632,6634,6637,6639,6642,6644,6646],{"class":557,"line":645},[555,6633,816],{"class":591},[555,6635,6636],{"class":742},"admin-field-description",[555,6638,782],{"class":591},[555,6640,6641],{"class":598},"顯示在個人檔案上的名字。",[555,6643,788],{"class":591},[555,6645,6636],{"class":742},[555,6647,746],{"class":591},[555,6649,6650,6652,6654],{"class":557,"line":653},[555,6651,853],{"class":591},[555,6653,5163],{"class":742},[555,6655,746],{"class":591},[555,6657,6658],{"class":557,"line":661},[555,6659,1297],{"emptyLinePlaceholder":526},[555,6661,6662,6664,6666,6668,6670,6672,6674,6676],{"class":557,"line":669},[555,6663,806],{"class":591},[555,6665,5163],{"class":742},[555,6667,6581],{"class":757},[555,6669,761],{"class":591},[555,6671,764],{"class":591},[555,6673,6588],{"class":565},[555,6675,764],{"class":591},[555,6677,746],{"class":591},[555,6679,6680,6682,6684,6686,6689,6691,6693],{"class":557,"line":905},[555,6681,816],{"class":591},[555,6683,5166],{"class":742},[555,6685,782],{"class":591},[555,6687,6688],{"class":598},"Email",[555,6690,788],{"class":591},[555,6692,5166],{"class":742},[555,6694,746],{"class":591},[555,6696,6697,6699,6701,6703,6705,6707,6710,6712,6715],{"class":557,"line":914},[555,6698,816],{"class":591},[555,6700,6616],{"class":742},[555,6702,2871],{"class":757},[555,6704,761],{"class":591},[555,6706,764],{"class":591},[555,6708,6709],{"class":565},"email",[555,6711,764],{"class":591},[555,6713,6714],{"class":757}," is-error",[555,6716,1453],{"class":591},[555,6718,6719,6721,6723,6725,6728,6730,6732],{"class":557,"line":924},[555,6720,816],{"class":591},[555,6722,6636],{"class":742},[555,6724,782],{"class":591},[555,6726,6727],{"class":598},"我們不會公開你的 email。",[555,6729,788],{"class":591},[555,6731,6636],{"class":742},[555,6733,746],{"class":591},[555,6735,6736,6738,6740,6742,6744,6746,6749,6751,6753,6756,6758,6760],{"class":557,"line":934},[555,6737,816],{"class":591},[555,6739,5172],{"class":742},[555,6741,3639],{"class":757},[555,6743,761],{"class":591},[555,6745,764],{"class":591},[555,6747,6748],{"class":565},"error",[555,6750,764],{"class":591},[555,6752,782],{"class":591},[555,6754,6755],{"class":598},"{{ error }}",[555,6757,788],{"class":591},[555,6759,5172],{"class":742},[555,6761,746],{"class":591},[555,6763,6764,6766,6768],{"class":557,"line":3540},[555,6765,853],{"class":591},[555,6767,5163],{"class":742},[555,6769,746],{"class":591},[555,6771,6772],{"class":557,"line":4426},[555,6773,1297],{"emptyLinePlaceholder":526},[555,6775,6776,6778,6781],{"class":557,"line":6198},[555,6777,806],{"class":591},[555,6779,6780],{"class":742},"admin-field-divider",[555,6782,1453],{"class":591},[555,6784,6785,6787,6790,6792,6795,6797,6799],{"class":557,"line":6208},[555,6786,806],{"class":591},[555,6788,6789],{"class":742},"admin-field-title",[555,6791,782],{"class":591},[555,6793,6794],{"class":598},"通知偏好",[555,6796,788],{"class":591},[555,6798,6789],{"class":742},[555,6800,746],{"class":591},[555,6802,6803],{"class":557,"line":6227},[555,6804,1297],{"emptyLinePlaceholder":526},[555,6806,6807,6809,6811,6813,6815,6817,6820,6822],{"class":557,"line":6237},[555,6808,806],{"class":591},[555,6810,5163],{"class":742},[555,6812,6581],{"class":757},[555,6814,761],{"class":591},[555,6816,764],{"class":591},[555,6818,6819],{"class":565},"horizontal",[555,6821,764],{"class":591},[555,6823,746],{"class":591},[555,6825,6826,6828,6830],{"class":557,"line":6246},[555,6827,816],{"class":591},[555,6829,5169],{"class":742},[555,6831,746],{"class":591},[555,6833,6834,6836,6838,6840,6843,6845,6847],{"class":557,"line":6255},[555,6835,6211],{"class":591},[555,6837,5166],{"class":742},[555,6839,782],{"class":591},[555,6841,6842],{"class":598},"每週電子報",[555,6844,788],{"class":591},[555,6846,5166],{"class":742},[555,6848,746],{"class":591},[555,6850,6851,6853,6855,6857,6860,6862,6864],{"class":557,"line":524},[555,6852,6211],{"class":591},[555,6854,6636],{"class":742},[555,6856,782],{"class":591},[555,6858,6859],{"class":598},"每週一寄送最新消息。",[555,6861,788],{"class":591},[555,6863,6636],{"class":742},[555,6865,746],{"class":591},[555,6867,6869,6871,6873],{"class":557,"line":6868},25,[555,6870,6230],{"class":591},[555,6872,5169],{"class":742},[555,6874,746],{"class":591},[555,6876,6878,6880,6883,6885,6887,6889,6892,6894],{"class":557,"line":6877},26,[555,6879,816],{"class":591},[555,6881,6882],{"class":742},"admin-switch",[555,6884,2871],{"class":757},[555,6886,761],{"class":591},[555,6888,764],{"class":591},[555,6890,6891],{"class":565},"newsletter",[555,6893,764],{"class":591},[555,6895,1453],{"class":591},[555,6897,6899,6901,6903],{"class":557,"line":6898},27,[555,6900,853],{"class":591},[555,6902,5163],{"class":742},[555,6904,746],{"class":591},[555,6906,6908,6910,6912],{"class":557,"line":6907},28,[555,6909,917],{"class":591},[555,6911,6570],{"class":742},[555,6913,746],{"class":591},[555,6915,6917,6919,6921],{"class":557,"line":6916},29,[555,6918,927],{"class":591},[555,6920,6543],{"class":742},[555,6922,746],{"class":591},[555,6924,6926,6928,6930],{"class":557,"line":6925},30,[555,6927,788],{"class":591},[555,6929,743],{"class":742},[555,6931,746],{"class":591},[5758,6933,6934,6943],{},[5761,6935,6936],{},[5764,6937,6938,6940],{},[5767,6939,5889],{},[5767,6941,6942],{},"角色",[5774,6944,6945,6958,6971,6984,6996,7005,7014,7027,7036,7049],{},[5764,6946,6947,6951],{},[5779,6948,6949],{},[552,6950,6543],{},[5779,6952,6953,6954,6957],{},"表單區塊外層，對應 HTML ",[552,6955,6956],{},"\u003Cfieldset>","，可巢狀使用",[5764,6959,6960,6964],{},[5779,6961,6962],{},[552,6963,6552],{},[5779,6965,6966,6967,6970],{},"區塊標題，對應 ",[552,6968,6969],{},"\u003Clegend>","，視覺上為主標題",[5764,6972,6973,6977],{},[5779,6974,6975],{},[552,6976,6570],{},[5779,6978,6979,6980,6983],{},"欄位群組容器，統一欄位間距與 ",[552,6981,6982],{},"@container\u002Ffield-group"," 響應式斷點",[5764,6985,6986,6990],{},[5779,6987,6988],{},[552,6989,5163],{},[5779,6991,6992,6993],{},"單一欄位容器，控制 label \u002F 輸入欄 \u002F 描述 \u002F 錯誤的排版與 ",[552,6994,6995],{},"orientation",[5764,6997,6998,7002],{},[5779,6999,7000],{},[552,7001,5166],{},[5779,7003,7004],{},"欄位 label",[5764,7006,7007,7011],{},[5779,7008,7009],{},[552,7010,6636],{},[5779,7012,7013],{},"欄位輔助說明",[5764,7015,7016,7020],{},[5779,7017,7018],{},[552,7019,5172],{},[5779,7021,7022,7023,7026],{},"驗證錯誤訊息，搭配輸入欄位的 ",[552,7024,7025],{},"is-error"," 樣式",[5764,7028,7029,7033],{},[5779,7030,7031],{},[552,7032,5169],{},[5779,7034,7035],{},"在橫向欄位中包住 label + description，讓控制元件（switch \u002F checkbox 等）對齊在右側",[5764,7037,7038,7042],{},[5779,7039,7040],{},[552,7041,6789],{},[5779,7043,7044,7045,7048],{},"群組內次標題，用於分段但不需 ",[552,7046,7047],{},"legend"," 語意時",[5764,7050,7051,7055],{},[5779,7052,7053],{},[552,7054,6780],{},[5779,7056,7057],{},"群組內分隔線，視覺切分不同區段",[696,7059,5163],{"id":5163},[944,7061],{"component":7062},"AdminField",[696,7064,6543],{"id":6543},[944,7066],{"component":7067},"AdminFieldSet",[696,7069,6552],{"id":6552},[944,7071],{"component":7072},"AdminFieldLegend",[696,7074,6570],{"id":6570},[944,7076],{"component":7077},"AdminFieldGroup",[696,7079,5166],{"id":5166},[944,7081],{"component":7082},"AdminFieldLabel",[696,7084,5169],{"id":5169},[944,7086],{"component":7087},"AdminFieldContent",[696,7089,6636],{"id":6636},[944,7091],{"component":7092},"AdminFieldDescription",[696,7094,5172],{"id":5172},[944,7096],{"component":7097},"AdminFieldError",[696,7099,6789],{"id":6789},[944,7101],{"component":7102},"AdminFieldTitle",[696,7104,6780],{"id":6780},[944,7106],{"component":7107},"AdminFieldDivider",[540,7109,989],{"id":989},[991,7111],{"component":7062},[994,7113,996],{},{"title":550,"searchDepth":605,"depth":605,"links":7115},[7116,7117,7118,7122,7135],{"id":507,"depth":595,"text":507},{"id":687,"depth":595,"text":687},{"id":694,"depth":595,"text":694,"children":7119},[7120,7121],{"id":6509,"depth":605,"text":6509},{"id":6515,"depth":605,"text":6516},{"id":723,"depth":595,"text":724,"children":7123},[7124,7125,7126,7127,7128,7129,7130,7131,7132,7133,7134],{"id":727,"depth":605,"text":727},{"id":5163,"depth":605,"text":5163},{"id":6543,"depth":605,"text":6543},{"id":6552,"depth":605,"text":6552},{"id":6570,"depth":605,"text":6570},{"id":5166,"depth":605,"text":5166},{"id":5169,"depth":605,"text":5169},{"id":6636,"depth":605,"text":6636},{"id":5172,"depth":605,"text":5172},{"id":6789,"depth":605,"text":6789},{"id":6780,"depth":605,"text":6780},{"id":989,"depth":595,"text":989},"表單欄位容器。統一 label、說明、錯誤訊息排版。",{"doc":7138},"https:\u002F\u002Fwww.shadcn-vue.com\u002Fdocs\u002Fcomponents\u002Ffield",{},{"title":69,"description":7136},"SLMLran1zGFbcHrZE3UpNKHGEHhrs8i2A9AaQfT8G3w",{"id":7143,"title":73,"body":7144,"component":526,"description":7678,"extension":1019,"links":7679,"meta":7681,"navigation":526,"new":18,"path":74,"seo":7682,"stem":75,"wrapperKind":19,"__hash__":7683},"docs\u002Fdocs\u002Fadmin\u002Ffile-upload.md",{"type":537,"value":7145,"toc":7654},[7146,7148,7166,7260,7262,7265,7267,7271,7274,7278,7281,7284,7288,7304,7318,7330,7333,7335,7337,7557,7559,7561,7563,7566,7568,7571,7573,7576,7578,7581,7583,7586,7588,7591,7593,7596,7598,7601,7603,7606,7608,7648,7650,7652],[540,7147,507],{"id":507},[543,7149,7151],{"className":545,"code":7150,"filename":547,"language":548,"meta":549,"style":550},"pnpm dlx shadcn-vue add @admin\u002Ffile-upload\n",[552,7152,7153],{"__ignoreMap":550},[555,7154,7155,7157,7159,7161,7163],{"class":557,"line":558},[555,7156,562],{"class":561},[555,7158,566],{"class":565},[555,7160,569],{"class":565},[555,7162,572],{"class":565},[555,7164,7165],{"class":565}," @admin\u002Ffile-upload\n",[543,7167,7169],{"className":578,"code":7168,"language":580,"meta":550,"style":550},"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",[552,7170,7171,7177,7184,7191,7198,7205,7212,7219,7226,7233,7240,7247],{"__ignoreMap":550},[555,7172,7173,7175],{"class":557,"line":558},[555,7174,588],{"class":587},[555,7176,592],{"class":591},[555,7178,7179,7182],{"class":557,"line":595},[555,7180,7181],{"class":598},"  AdminFileUpload",[555,7183,602],{"class":591},[555,7185,7186,7189],{"class":557,"line":605},[555,7187,7188],{"class":598},"  AdminFileUploadClear",[555,7190,602],{"class":591},[555,7192,7193,7196],{"class":557,"line":613},[555,7194,7195],{"class":598},"  AdminFileUploadDropzone",[555,7197,602],{"class":591},[555,7199,7200,7203],{"class":557,"line":621},[555,7201,7202],{"class":598},"  AdminFileUploadItem",[555,7204,602],{"class":591},[555,7206,7207,7210],{"class":557,"line":629},[555,7208,7209],{"class":598},"  AdminFileUploadItemDelete",[555,7211,602],{"class":591},[555,7213,7214,7217],{"class":557,"line":637},[555,7215,7216],{"class":598},"  AdminFileUploadItemMetadata",[555,7218,602],{"class":591},[555,7220,7221,7224],{"class":557,"line":645},[555,7222,7223],{"class":598},"  AdminFileUploadItemPreview",[555,7225,602],{"class":591},[555,7227,7228,7231],{"class":557,"line":653},[555,7229,7230],{"class":598},"  AdminFileUploadItemProgress",[555,7232,602],{"class":591},[555,7234,7235,7238],{"class":557,"line":661},[555,7236,7237],{"class":598},"  AdminFileUploadList",[555,7239,602],{"class":591},[555,7241,7242,7245],{"class":557,"line":669},[555,7243,7244],{"class":598},"  AdminFileUploadTrigger",[555,7246,602],{"class":591},[555,7248,7249,7251,7253,7255,7258],{"class":557,"line":905},[555,7250,672],{"class":591},[555,7252,675],{"class":587},[555,7254,678],{"class":591},[555,7256,7257],{"class":565},"@\u002Fcomponents\u002Fadmin\u002Ffile-upload",[555,7259,684],{"class":591},[540,7261,687],{"id":687},[689,7263],{"name":7264},"FileUploadBasicDemo",[540,7266,694],{"id":694},[696,7268,7270],{"id":7269},"僅按鈕不要-dropzone","僅按鈕、不要 Dropzone",[689,7272],{"name":7273},"FileUploadTriggerOnlyDemo",[696,7275,7277],{"id":7276},"程式寫入-url不經檔案選擇器","程式寫入 URL（不經檔案選擇器）",[709,7279,7280],{},"由素材庫、過往上傳紀錄等來源直接寫入 URL 項目，跳過檔案選擇器流程。",[689,7282],{"name":7283},"FileUploadUrlDemo",[540,7285,7287],{"id":7286},"type-safe-列表項目","Type-safe 列表項目",[709,7289,7290,2772,7293,7296,7297,7299,7300,7303],{},[552,7291,7292],{},"AdminFileUpload",[552,7294,7295],{},"TItem extends AdminFileUploadListItem","），以子型別的 ref 綁定 ",[552,7298,2728],{}," 即可讓列表項目攜帶業務欄位（如後端回傳的資產 id），",[552,7301,7302],{},"update:modelValue"," payload 同步收斂為該子型別。",[709,7305,7306,7307,2474,7310,7313,7314,7317],{},"元件自行新增的項目（使用者選檔）僅含 base 欄位（",[552,7308,7309],{},"id",[552,7311,7312],{},"source","）；自訂欄位由呼叫端於 ",[552,7315,7316],{},"upload"," 事件後自行補寫。",[2821,7319,7320],{"title":2823,"type":2824},[709,7321,2827,7322,2831,7324,2835,7326,2838,7328,2842],{},[552,7323,2830],{},[552,7325,2834],{},[701,7327,515],{"href":516},[552,7329,2841],{},[2816,7331],{"name":7332},"FileUploadTypeSafeDemo",[540,7334,724],{"id":723},[696,7336,727],{"id":727},[543,7338,7340],{"className":730,"code":7339,"language":732,"meta":550,"style":550},"\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",[552,7341,7342,7350,7394,7403,7421,7429,7438,7447,7489,7498,7507,7516,7525,7533,7541,7549],{"__ignoreMap":550},[555,7343,7344,7346,7348],{"class":557,"line":558},[555,7345,739],{"class":591},[555,7347,743],{"class":742},[555,7349,746],{"class":591},[555,7351,7352,7354,7357,7359,7361,7363,7366,7368,7371,7373,7375,7378,7380,7383,7385,7387,7390,7392],{"class":557,"line":595},[555,7353,751],{"class":591},[555,7355,7356],{"class":742},"admin-file-upload",[555,7358,2871],{"class":757},[555,7360,761],{"class":591},[555,7362,764],{"class":591},[555,7364,7365],{"class":565},"items",[555,7367,764],{"class":591},[555,7369,7370],{"class":757}," :on-file-validate",[555,7372,761],{"class":591},[555,7374,764],{"class":591},[555,7376,7377],{"class":565},"validate",[555,7379,764],{"class":591},[555,7381,7382],{"class":757}," @upload",[555,7384,761],{"class":591},[555,7386,764],{"class":591},[555,7388,7389],{"class":565},"handleUpload",[555,7391,764],{"class":591},[555,7393,746],{"class":591},[555,7395,7396,7398,7401],{"class":557,"line":605},[555,7397,776],{"class":591},[555,7399,7400],{"class":742},"admin-file-upload-dropzone",[555,7402,746],{"class":591},[555,7404,7405,7407,7410,7412,7415,7417,7419],{"class":557,"line":613},[555,7406,806],{"class":591},[555,7408,7409],{"class":742},"admin-file-upload-trigger",[555,7411,782],{"class":591},[555,7413,7414],{"class":598},"選擇檔案",[555,7416,788],{"class":591},[555,7418,7409],{"class":742},[555,7420,746],{"class":591},[555,7422,7423,7425,7427],{"class":557,"line":621},[555,7424,917],{"class":591},[555,7426,7400],{"class":742},[555,7428,746],{"class":591},[555,7430,7431,7433,7436],{"class":557,"line":629},[555,7432,776],{"class":591},[555,7434,7435],{"class":742},"admin-file-upload-clear",[555,7437,1453],{"class":591},[555,7439,7440,7442,7445],{"class":557,"line":637},[555,7441,776],{"class":591},[555,7443,7444],{"class":742},"admin-file-upload-list",[555,7446,746],{"class":591},[555,7448,7449,7451,7454,7456,7458,7460,7463,7465,7467,7469,7471,7474,7476,7479,7481,7483,7485,7487],{"class":557,"line":645},[555,7450,806],{"class":591},[555,7452,7453],{"class":742},"admin-file-upload-item",[555,7455,2891],{"class":757},[555,7457,761],{"class":591},[555,7459,764],{"class":591},[555,7461,7462],{"class":565},"it in items",[555,7464,764],{"class":591},[555,7466,2903],{"class":757},[555,7468,761],{"class":591},[555,7470,764],{"class":591},[555,7472,7473],{"class":565},"it.id",[555,7475,764],{"class":591},[555,7477,7478],{"class":757}," :item-id",[555,7480,761],{"class":591},[555,7482,764],{"class":591},[555,7484,7473],{"class":565},[555,7486,764],{"class":591},[555,7488,746],{"class":591},[555,7490,7491,7493,7496],{"class":557,"line":653},[555,7492,816],{"class":591},[555,7494,7495],{"class":742},"admin-file-upload-item-preview",[555,7497,1453],{"class":591},[555,7499,7500,7502,7505],{"class":557,"line":661},[555,7501,816],{"class":591},[555,7503,7504],{"class":742},"admin-file-upload-item-metadata",[555,7506,1453],{"class":591},[555,7508,7509,7511,7514],{"class":557,"line":669},[555,7510,816],{"class":591},[555,7512,7513],{"class":742},"admin-file-upload-item-progress",[555,7515,1453],{"class":591},[555,7517,7518,7520,7523],{"class":557,"line":905},[555,7519,816],{"class":591},[555,7521,7522],{"class":742},"admin-file-upload-item-delete",[555,7524,1453],{"class":591},[555,7526,7527,7529,7531],{"class":557,"line":914},[555,7528,853],{"class":591},[555,7530,7453],{"class":742},[555,7532,746],{"class":591},[555,7534,7535,7537,7539],{"class":557,"line":924},[555,7536,917],{"class":591},[555,7538,7444],{"class":742},[555,7540,746],{"class":591},[555,7542,7543,7545,7547],{"class":557,"line":934},[555,7544,927],{"class":591},[555,7546,7356],{"class":742},[555,7548,746],{"class":591},[555,7550,7551,7553,7555],{"class":557,"line":3540},[555,7552,788],{"class":591},[555,7554,743],{"class":742},[555,7556,746],{"class":591},[696,7558,7356],{"id":7356},[944,7560],{"component":7292},[696,7562,7409],{"id":7409},[944,7564],{"component":7565},"AdminFileUploadTrigger",[696,7567,7444],{"id":7444},[944,7569],{"component":7570},"AdminFileUploadList",[696,7572,7453],{"id":7453},[944,7574],{"component":7575},"AdminFileUploadItem",[696,7577,7435],{"id":7435},[944,7579],{"component":7580},"AdminFileUploadClear",[696,7582,7522],{"id":7522},[944,7584],{"component":7585},"AdminFileUploadItemDelete",[696,7587,7513],{"id":7513},[944,7589],{"component":7590},"AdminFileUploadItemProgress",[696,7592,7400],{"id":7400},[944,7594],{"component":7595},"AdminFileUploadDropzone",[696,7597,7504],{"id":7504},[944,7599],{"component":7600},"AdminFileUploadItemMetadata",[696,7602,7495],{"id":7495},[944,7604],{"component":7605},"AdminFileUploadItemPreview",[540,7607,1560],{"id":1560},[1562,7609,7610,7623,7639],{},[1565,7611,7612,7613,7615,7616,1127,7619,7622],{},"自訂子元件可從 ",[552,7614,7257],{}," import ",[552,7617,7618],{},"useFileUploadRoot()",[552,7620,7621],{},"useFileUploadItem()"," 取得內部狀態。",[1565,7624,7625,7627,7628,7630,7631,7634,7635,1617,7637,717],{},[552,7626,7618],{}," 的 ",[552,7629,3252],{}," 為寬型別 ",[552,7632,7633],{},"AdminFileUploadListItem[]","；泛型收斂僅作用於 root 的 ",[552,7636,2728],{},[552,7638,7302],{},[1565,7640,7641,7642,7647],{},"單張圖片欄位使用 ",[701,7643,7644],{"href":82},[552,7645,7646],{},"admin-image-upload","，多檔、列表進度、拖曳區使用本元件族。",[540,7649,989],{"id":989},[991,7651],{"component":7292},[994,7653,996],{},{"title":550,"searchDepth":605,"depth":605,"links":7655},[7656,7657,7658,7662,7663,7676,7677],{"id":507,"depth":595,"text":507},{"id":687,"depth":595,"text":687},{"id":694,"depth":595,"text":694,"children":7659},[7660,7661],{"id":7269,"depth":605,"text":7270},{"id":7276,"depth":605,"text":7277},{"id":7286,"depth":595,"text":7287},{"id":723,"depth":595,"text":724,"children":7664},[7665,7666,7667,7668,7669,7670,7671,7672,7673,7674,7675],{"id":727,"depth":605,"text":727},{"id":7356,"depth":605,"text":7356},{"id":7409,"depth":605,"text":7409},{"id":7444,"depth":605,"text":7444},{"id":7453,"depth":605,"text":7453},{"id":7435,"depth":605,"text":7435},{"id":7522,"depth":605,"text":7522},{"id":7513,"depth":605,"text":7513},{"id":7400,"depth":605,"text":7400},{"id":7504,"depth":605,"text":7504},{"id":7495,"depth":605,"text":7495},{"id":1560,"depth":595,"text":1560},{"id":989,"depth":595,"text":989},"多檔上傳。拖曳、驗證、File 與 URL 並存；上傳由父層監聽 upload 事件處理。",{"doc":7680},"https:\u002F\u002Fwww.diceui.com\u002Fdocs\u002Fcomponents\u002Fradix\u002Ffile-upload",{},{"title":73,"description":7678},"SqJqvx7qLwgQOKMlMa3mYdze2AYbYeAOVmfHycsXpRM",{"id":7685,"title":77,"body":7686,"component":526,"description":7974,"extension":1019,"links":19,"meta":7975,"navigation":526,"new":18,"path":78,"seo":7976,"stem":79,"wrapperKind":19,"__hash__":7977},"docs\u002Fdocs\u002Fadmin\u002Fimage.md",{"type":537,"value":7687,"toc":7956},[7688,7690,7708,7760,7762,7765,7767,7770,7773,7777,7786,7789,7793,7812,7815,7817,7819,7903,7905,7908,7910,7913,7915,7918,7920,7923,7925,7950,7952,7954],[540,7689,507],{"id":507},[543,7691,7693],{"className":545,"code":7692,"filename":547,"language":548,"meta":549,"style":550},"pnpm dlx shadcn-vue add @admin\u002Fimage\n",[552,7694,7695],{"__ignoreMap":550},[555,7696,7697,7699,7701,7703,7705],{"class":557,"line":558},[555,7698,562],{"class":561},[555,7700,566],{"class":565},[555,7702,569],{"class":565},[555,7704,572],{"class":565},[555,7706,7707],{"class":565}," @admin\u002Fimage\n",[543,7709,7711],{"className":578,"code":7710,"language":580,"meta":550,"style":550},"import {\n  AdminImage,\n  AdminImageFallback,\n  AdminImageImg,\n  AdminImagePlaceholder,\n} from '@\u002Fcomponents\u002Fadmin\u002Fimage'\n",[552,7712,7713,7719,7726,7733,7740,7747],{"__ignoreMap":550},[555,7714,7715,7717],{"class":557,"line":558},[555,7716,588],{"class":587},[555,7718,592],{"class":591},[555,7720,7721,7724],{"class":557,"line":595},[555,7722,7723],{"class":598},"  AdminImage",[555,7725,602],{"class":591},[555,7727,7728,7731],{"class":557,"line":605},[555,7729,7730],{"class":598},"  AdminImageFallback",[555,7732,602],{"class":591},[555,7734,7735,7738],{"class":557,"line":613},[555,7736,7737],{"class":598},"  AdminImageImg",[555,7739,602],{"class":591},[555,7741,7742,7745],{"class":557,"line":621},[555,7743,7744],{"class":598},"  AdminImagePlaceholder",[555,7746,602],{"class":591},[555,7748,7749,7751,7753,7755,7758],{"class":557,"line":629},[555,7750,672],{"class":591},[555,7752,675],{"class":587},[555,7754,678],{"class":591},[555,7756,7757],{"class":565},"@\u002Fcomponents\u002Fadmin\u002Fimage",[555,7759,684],{"class":591},[540,7761,687],{"id":687},[689,7763],{"name":7764},"ImageDemo",[540,7766,694],{"id":694},[696,7768,7769],{"id":7769},"自訂版面與裁切",[689,7771],{"name":7772},"ImageVariantsDemo",[696,7774,7776],{"id":7775},"錯誤態-fallback","錯誤態 fallback",[709,7778,7779,7780,7782,7783,7785],{},"故意傳入無效 ",[552,7781,1413],{}," 觸發 ",[552,7784,6748],{},"，顯示預設 fallback。",[689,7787],{"name":7788},"ImageErrorDemo",[696,7790,7792],{"id":7791},"自訂-placeholder-與-fallback","自訂 placeholder 與 fallback",[2821,7794,7796],{"title":7795,"type":2824},"子元件渲染條件",[709,7797,7798,7801,7802,7805,7806,7801,7809,7811],{},[552,7799,7800],{},"admin-image-placeholder"," 僅在 ",[552,7803,7804],{},"loading"," 狀態渲染，",[552,7807,7808],{},"admin-image-fallback",[552,7810,6748],{}," 狀態渲染；不放對應子元件即無該狀態的視覺。",[689,7813],{"name":7814},"ImageCustomDemo",[540,7816,724],{"id":723},[696,7818,727],{"id":727},[543,7820,7822],{"className":730,"code":7821,"language":732,"meta":550,"style":550},"\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",[552,7823,7824,7832,7841,7871,7879,7887,7895],{"__ignoreMap":550},[555,7825,7826,7828,7830],{"class":557,"line":558},[555,7827,739],{"class":591},[555,7829,743],{"class":742},[555,7831,746],{"class":591},[555,7833,7834,7836,7839],{"class":557,"line":595},[555,7835,751],{"class":591},[555,7837,7838],{"class":742},"admin-image",[555,7840,746],{"class":591},[555,7842,7843,7845,7848,7851,7853,7855,7857,7859,7861,7863,7865,7867,7869],{"class":557,"line":605},[555,7844,776],{"class":591},[555,7846,7847],{"class":742},"admin-image-img",[555,7849,7850],{"class":757}," alt",[555,7852,761],{"class":591},[555,7854,764],{"class":591},[555,7856,1803],{"class":565},[555,7858,764],{"class":591},[555,7860,1796],{"class":757},[555,7862,761],{"class":591},[555,7864,764],{"class":591},[555,7866,1803],{"class":565},[555,7868,764],{"class":591},[555,7870,1453],{"class":591},[555,7872,7873,7875,7877],{"class":557,"line":613},[555,7874,776],{"class":591},[555,7876,7800],{"class":742},[555,7878,1453],{"class":591},[555,7880,7881,7883,7885],{"class":557,"line":621},[555,7882,776],{"class":591},[555,7884,7808],{"class":742},[555,7886,1453],{"class":591},[555,7888,7889,7891,7893],{"class":557,"line":629},[555,7890,927],{"class":591},[555,7892,7838],{"class":742},[555,7894,746],{"class":591},[555,7896,7897,7899,7901],{"class":557,"line":637},[555,7898,788],{"class":591},[555,7900,743],{"class":742},[555,7902,746],{"class":591},[696,7904,7838],{"id":7838},[944,7906],{"component":7907},"AdminImage",[696,7909,7847],{"id":7847},[944,7911],{"component":7912},"AdminImageImg",[696,7914,7800],{"id":7800},[944,7916],{"component":7917},"AdminImagePlaceholder",[696,7919,7808],{"id":7808},[944,7921],{"component":7922},"AdminImageFallback",[540,7924,1560],{"id":1560},[1562,7926,7927,7939],{},[1565,7928,7929,7932,7933,7935,7936,7938],{},[1139,7930,7931],{},"CDN 同 URL 不同檔","：若 ",[552,7934,1413],{}," 字串完全相同但內容換了（CDN 快取），",[552,7937,4649],{}," 不會自動重抓。父層應在 URL 後加 query string 強制更新。",[1565,7940,7941,7942,7944,7945,7947,7948,717],{},"純展示用 ",[552,7943,7838],{},"；頭像場景改用 ",[552,7946,1784],{},"；表單上傳改用 ",[552,7949,7646],{},[540,7951,989],{"id":989},[991,7953],{"component":7907},[994,7955,996],{},{"title":550,"searchDepth":605,"depth":605,"links":7957},[7958,7959,7960,7965,7972,7973],{"id":507,"depth":595,"text":507},{"id":687,"depth":595,"text":687},{"id":694,"depth":595,"text":694,"children":7961},[7962,7963,7964],{"id":7769,"depth":605,"text":7769},{"id":7775,"depth":605,"text":7776},{"id":7791,"depth":605,"text":7792},{"id":723,"depth":595,"text":724,"children":7966},[7967,7968,7969,7970,7971],{"id":727,"depth":605,"text":727},{"id":7838,"depth":605,"text":7838},{"id":7847,"depth":605,"text":7847},{"id":7800,"depth":605,"text":7800},{"id":7808,"depth":605,"text":7808},{"id":1560,"depth":595,"text":1560},{"id":989,"depth":595,"text":989},"圖片純展示。視覺態：loading／loaded／error。",{},{"title":77,"description":7974},"3eAfTnbQRdsPry-ZhaqKsdl3S4UFlz3LHeZl6W3FjG8",{"id":7979,"title":81,"body":7980,"component":526,"description":8466,"extension":1019,"links":19,"meta":8467,"navigation":526,"new":18,"path":82,"seo":8468,"stem":83,"wrapperKind":19,"__hash__":8469},"docs\u002Fdocs\u002Fadmin\u002Fimage-upload.md",{"type":537,"value":7981,"toc":8447},[7982,7984,8002,8068,8070,8073,8075,8078,8081,8117,8120,8149,8272,8274,8276,8372,8374,8377,8379,8382,8384,8387,8389,8391,8393,8395,8397,8399,8401,8441,8443,8445],[540,7983,507],{"id":507},[543,7985,7987],{"className":545,"code":7986,"filename":547,"language":548,"meta":549,"style":550},"pnpm dlx shadcn-vue add @admin\u002Fimage-upload\n",[552,7988,7989],{"__ignoreMap":550},[555,7990,7991,7993,7995,7997,7999],{"class":557,"line":558},[555,7992,562],{"class":561},[555,7994,566],{"class":565},[555,7996,569],{"class":565},[555,7998,572],{"class":565},[555,8000,8001],{"class":565}," @admin\u002Fimage-upload\n",[543,8003,8005],{"className":578,"code":8004,"language":580,"meta":550,"style":550},"import {\n  AdminImageUpload,\n  AdminImageUploadLoading,\n  AdminImageUploadMessage,\n  AdminImageUploadPlaceholder,\n  AdminImageUploadPreview,\n  AdminImageUploadTrigger,\n} from '@\u002Fcomponents\u002Fadmin\u002Fimage-upload'\n",[552,8006,8007,8013,8020,8027,8034,8041,8048,8055],{"__ignoreMap":550},[555,8008,8009,8011],{"class":557,"line":558},[555,8010,588],{"class":587},[555,8012,592],{"class":591},[555,8014,8015,8018],{"class":557,"line":595},[555,8016,8017],{"class":598},"  AdminImageUpload",[555,8019,602],{"class":591},[555,8021,8022,8025],{"class":557,"line":605},[555,8023,8024],{"class":598},"  AdminImageUploadLoading",[555,8026,602],{"class":591},[555,8028,8029,8032],{"class":557,"line":613},[555,8030,8031],{"class":598},"  AdminImageUploadMessage",[555,8033,602],{"class":591},[555,8035,8036,8039],{"class":557,"line":621},[555,8037,8038],{"class":598},"  AdminImageUploadPlaceholder",[555,8040,602],{"class":591},[555,8042,8043,8046],{"class":557,"line":629},[555,8044,8045],{"class":598},"  AdminImageUploadPreview",[555,8047,602],{"class":591},[555,8049,8050,8053],{"class":557,"line":637},[555,8051,8052],{"class":598},"  AdminImageUploadTrigger",[555,8054,602],{"class":591},[555,8056,8057,8059,8061,8063,8066],{"class":557,"line":645},[555,8058,672],{"class":591},[555,8060,675],{"class":587},[555,8062,678],{"class":591},[555,8064,8065],{"class":565},"@\u002Fcomponents\u002Fadmin\u002Fimage-upload",[555,8067,684],{"class":591},[540,8069,687],{"id":687},[689,8071],{"name":8072},"ImageUploadDemo",[540,8074,694],{"id":694},[696,8076,8077],{"id":8077},"與表單驗證整合",[689,8079],{"name":8080},"ImageUploadValidationDemo",[2810,8082,8083,8104],{},[709,8084,8085,8086,8088,8089,8092,8093,8096,8097,8100,8101,8103],{},"以 vee-validate 的 ",[552,8087,5156],{}," 提供驗證，將 ",[552,8090,8091],{},"errorMessage"," 是否存在透過 ",[552,8094,8095],{},":is-error"," 傳入元件即可；錯誤文字交由元件內建的 ",[552,8098,8099],{},"AdminImageUploadMessage"," 顯示，無需額外渲染 ",[552,8102,5172],{},"，避免訊息重複。",[709,8105,8106,8107,8110,8111,7627,8114,717],{},"v-model 綁的是使用者新選的 ",[552,8108,8109],{},"File","。已上傳完成的 URL 另外存一個 state，上傳成功後餵給 ",[552,8112,8113],{},"AdminImageUploadPreview",[552,8115,8116],{},":src",[696,8118,8119],{"id":8119},"顯示既有圖片",[709,8121,8122,8123,7627,8125,8127,8128,8130,8131,8133,8134,8136,8137,8140,8141,8144,8145,8148],{},"編輯表單的既有圖片（或上傳完成的持久化 URL）不進 v-model，改由 ",[552,8124,8113],{},[552,8126,1413],{}," 顯示。有選檔（",[552,8129,8109],{},"）時 ",[552,8132,8109],{}," 優先，否則 fallback ",[552,8135,1413],{},"。因為此時 v-model 為 ",[552,8138,8139],{},"null","，需以 ",[552,8142,8143],{},"v-if"," gate 掉 ",[552,8146,8147],{},"AdminImageUploadPlaceholder","，避免與既有圖重疊：",[543,8150,8152],{"className":730,"code":8151,"language":732,"meta":550,"style":550},"\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",[552,8153,8154,8162,8181,8190,8210,8230,8239,8247,8256,8264],{"__ignoreMap":550},[555,8155,8156,8158,8160],{"class":557,"line":558},[555,8157,739],{"class":591},[555,8159,743],{"class":742},[555,8161,746],{"class":591},[555,8163,8164,8166,8168,8170,8172,8174,8177,8179],{"class":557,"line":595},[555,8165,751],{"class":591},[555,8167,7646],{"class":742},[555,8169,2871],{"class":757},[555,8171,761],{"class":591},[555,8173,764],{"class":591},[555,8175,8176],{"class":565},"file",[555,8178,764],{"class":591},[555,8180,746],{"class":591},[555,8182,8183,8185,8188],{"class":557,"line":605},[555,8184,776],{"class":591},[555,8186,8187],{"class":742},"admin-image-upload-trigger",[555,8189,746],{"class":591},[555,8191,8192,8194,8197,8199,8201,8203,8206,8208],{"class":557,"line":613},[555,8193,806],{"class":591},[555,8195,8196],{"class":742},"admin-image-upload-placeholder",[555,8198,3639],{"class":757},[555,8200,761],{"class":591},[555,8202,764],{"class":591},[555,8204,8205],{"class":565},"!existingSrc",[555,8207,764],{"class":591},[555,8209,1453],{"class":591},[555,8211,8212,8214,8217,8219,8221,8223,8226,8228],{"class":557,"line":621},[555,8213,806],{"class":591},[555,8215,8216],{"class":742},"admin-image-upload-preview",[555,8218,4223],{"class":757},[555,8220,761],{"class":591},[555,8222,764],{"class":591},[555,8224,8225],{"class":565},"existingSrc",[555,8227,764],{"class":591},[555,8229,1453],{"class":591},[555,8231,8232,8234,8237],{"class":557,"line":629},[555,8233,806],{"class":591},[555,8235,8236],{"class":742},"admin-image-upload-loading",[555,8238,1453],{"class":591},[555,8240,8241,8243,8245],{"class":557,"line":637},[555,8242,917],{"class":591},[555,8244,8187],{"class":742},[555,8246,746],{"class":591},[555,8248,8249,8251,8254],{"class":557,"line":645},[555,8250,776],{"class":591},[555,8252,8253],{"class":742},"admin-image-upload-message",[555,8255,1453],{"class":591},[555,8257,8258,8260,8262],{"class":557,"line":653},[555,8259,927],{"class":591},[555,8261,7646],{"class":742},[555,8263,746],{"class":591},[555,8265,8266,8268,8270],{"class":557,"line":661},[555,8267,788],{"class":591},[555,8269,743],{"class":742},[555,8271,746],{"class":591},[540,8273,724],{"id":723},[696,8275,727],{"id":727},[543,8277,8279],{"className":730,"code":8278,"language":732,"meta":550,"style":550},"\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",[552,8280,8281,8289,8308,8316,8324,8332,8340,8348,8356,8364],{"__ignoreMap":550},[555,8282,8283,8285,8287],{"class":557,"line":558},[555,8284,739],{"class":591},[555,8286,743],{"class":742},[555,8288,746],{"class":591},[555,8290,8291,8293,8295,8297,8299,8301,8304,8306],{"class":557,"line":595},[555,8292,751],{"class":591},[555,8294,7646],{"class":742},[555,8296,2871],{"class":757},[555,8298,761],{"class":591},[555,8300,764],{"class":591},[555,8302,8303],{"class":565},"image",[555,8305,764],{"class":591},[555,8307,746],{"class":591},[555,8309,8310,8312,8314],{"class":557,"line":605},[555,8311,776],{"class":591},[555,8313,8187],{"class":742},[555,8315,746],{"class":591},[555,8317,8318,8320,8322],{"class":557,"line":613},[555,8319,806],{"class":591},[555,8321,8196],{"class":742},[555,8323,1453],{"class":591},[555,8325,8326,8328,8330],{"class":557,"line":621},[555,8327,806],{"class":591},[555,8329,8216],{"class":742},[555,8331,1453],{"class":591},[555,8333,8334,8336,8338],{"class":557,"line":629},[555,8335,806],{"class":591},[555,8337,8236],{"class":742},[555,8339,1453],{"class":591},[555,8341,8342,8344,8346],{"class":557,"line":637},[555,8343,917],{"class":591},[555,8345,8187],{"class":742},[555,8347,746],{"class":591},[555,8349,8350,8352,8354],{"class":557,"line":645},[555,8351,776],{"class":591},[555,8353,8253],{"class":742},[555,8355,1453],{"class":591},[555,8357,8358,8360,8362],{"class":557,"line":653},[555,8359,927],{"class":591},[555,8361,7646],{"class":742},[555,8363,746],{"class":591},[555,8365,8366,8368,8370],{"class":557,"line":661},[555,8367,788],{"class":591},[555,8369,743],{"class":742},[555,8371,746],{"class":591},[696,8373,7646],{"id":7646},[944,8375],{"component":8376},"AdminImageUpload",[696,8378,8187],{"id":8187},[944,8380],{"component":8381},"AdminImageUploadTrigger",[696,8383,8236],{"id":8236},[944,8385],{"component":8386},"AdminImageUploadLoading",[696,8388,8253],{"id":8253},[944,8390],{"component":8099},[696,8392,8196],{"id":8196},[944,8394],{"component":8147},[696,8396,8216],{"id":8216},[944,8398],{"component":8113},[540,8400,1560],{"id":1560},[1562,8402,8403,8417,8432],{},[1565,8404,8405,8411,8412,7627,8414,8416],{},[1139,8406,8407,8408],{},"v-model 只認 ",[552,8409,8410],{},"File | null","：既有／已上傳的 URL 字串不進 v-model，改由 ",[552,8413,8113],{},[552,8415,8116],{}," 顯示（見「顯示既有圖片」）。",[1565,8418,8419,8421,8422,8424,8425,8427,8428,8431],{},[1139,8420,7931],{},"：若上傳成功後 backend 回傳的 URL 與舊圖完全相同（CDN 快取），",[552,8423,4649],{}," 不會自動重抓。父層應在傳給 ",[552,8426,8116],{}," 的 URL 後加 query string（例如 ",[552,8429,8430],{},"?v=timestamp","）強制更新。",[1565,8433,8434,2470,8437,8440],{},[1139,8435,8436],{},"元件不負責上傳",[552,8438,8439],{},"@upload"," 只通知「使用者選了新檔且通過 validate」，實際 fetch \u002F FormData \u002F endpoint 全由父層處理。",[540,8442,989],{"id":989},[991,8444],{"component":8376},[994,8446,996],{},{"title":550,"searchDepth":605,"depth":605,"links":8448},[8449,8450,8451,8455,8464,8465],{"id":507,"depth":595,"text":507},{"id":687,"depth":595,"text":687},{"id":694,"depth":595,"text":694,"children":8452},[8453,8454],{"id":8077,"depth":605,"text":8077},{"id":8119,"depth":605,"text":8119},{"id":723,"depth":595,"text":724,"children":8456},[8457,8458,8459,8460,8461,8462,8463],{"id":727,"depth":605,"text":727},{"id":7646,"depth":605,"text":7646},{"id":8187,"depth":605,"text":8187},{"id":8236,"depth":605,"text":8236},{"id":8253,"depth":605,"text":8253},{"id":8196,"depth":605,"text":8196},{"id":8216,"depth":605,"text":8216},{"id":1560,"depth":595,"text":1560},{"id":989,"depth":595,"text":989},"單張圖片上傳。",{},{"title":81,"description":8466},"JCprSEkiBHk4phtpR8Hmkjf8I2eT2wI2CSIYHYq-yJQ",{"id":8471,"title":85,"body":8472,"component":526,"description":8801,"extension":1019,"links":8802,"meta":8804,"navigation":526,"new":18,"path":86,"seo":8805,"stem":87,"wrapperKind":19,"__hash__":8806},"docs\u002Fdocs\u002Fadmin\u002Finput.md",{"type":537,"value":8473,"toc":8783},[8474,8476,8494,8546,8548,8551,8553,8556,8559,8562,8565,8568,8570,8573,8575,8597,8612,8620,8623,8627,8648,8660,8663,8665,8667,8756,8758,8760,8762,8765,8768,8771,8774,8777,8779,8781],[540,8475,507],{"id":507},[543,8477,8479],{"className":545,"code":8478,"filename":547,"language":548,"meta":549,"style":550},"pnpm dlx shadcn-vue add @admin\u002Finput\n",[552,8480,8481],{"__ignoreMap":550},[555,8482,8483,8485,8487,8489,8491],{"class":557,"line":558},[555,8484,562],{"class":561},[555,8486,566],{"class":565},[555,8488,569],{"class":565},[555,8490,572],{"class":565},[555,8492,8493],{"class":565}," @admin\u002Finput\n",[543,8495,8497],{"className":578,"code":8496,"language":580,"meta":550,"style":550},"import {\n  AdminInput,\n  AdminInputClear,\n  AdminInputPasswordToggle,\n  AdminInputWordLimit,\n} from '@\u002Fcomponents\u002Fadmin\u002Finput'\n",[552,8498,8499,8505,8512,8519,8526,8533],{"__ignoreMap":550},[555,8500,8501,8503],{"class":557,"line":558},[555,8502,588],{"class":587},[555,8504,592],{"class":591},[555,8506,8507,8510],{"class":557,"line":595},[555,8508,8509],{"class":598},"  AdminInput",[555,8511,602],{"class":591},[555,8513,8514,8517],{"class":557,"line":605},[555,8515,8516],{"class":598},"  AdminInputClear",[555,8518,602],{"class":591},[555,8520,8521,8524],{"class":557,"line":613},[555,8522,8523],{"class":598},"  AdminInputPasswordToggle",[555,8525,602],{"class":591},[555,8527,8528,8531],{"class":557,"line":621},[555,8529,8530],{"class":598},"  AdminInputWordLimit",[555,8532,602],{"class":591},[555,8534,8535,8537,8539,8541,8544],{"class":557,"line":629},[555,8536,672],{"class":591},[555,8538,675],{"class":587},[555,8540,678],{"class":591},[555,8542,8543],{"class":565},"@\u002Fcomponents\u002Fadmin\u002Finput",[555,8545,684],{"class":591},[540,8547,687],{"id":687},[689,8549],{"name":8550},"InputDemo",[540,8552,694],{"id":694},[696,8554,8555],{"id":8555},"可清除內容",[709,8557,8558],{},"輸入框在有值時會顯示清除按鈕。",[689,8560],{"name":8561},"InputClearableDemo",[696,8563,8564],{"id":8564},"密碼欄位與顯示切換",[689,8566],{"name":8567},"InputPasswordDemo",[696,8569,2759],{"id":2759},[689,8571],{"name":8572},"InputErrorDemo",[540,8574,2766],{"id":2765},[709,8576,8577,8580,8581,8584,8585,4786,8587,8590,8591,8593,8594,8596],{},[552,8578,8579],{},"AdminInput"," 採原生 ",[552,8582,8583],{},"input"," 封裝，",[552,8586,3252],{},[552,8588,8589],{},"string | number","，不會依 ",[552,8592,2589],{}," 在 compile-time 與 ",[552,8595,2728],{}," 型別對齊。",[709,8598,8599,8600,4163,8602,8604,8605,8608,8609,8611],{},"開啟 ",[552,8601,2830],{},[552,8603,2834],{}," 時，若以更嚴的型別（例如 ",[552,8606,8607],{},"number | null","）綁定，容易出現型別錯誤。這屬原生 ",[552,8610,8583],{}," 的型別行為，而非元件缺漏。",[709,8613,8614,8615,1617,8617,8619],{},"若需要讓 ",[552,8616,2589],{},[552,8618,2728],{}," 型別對齊，可自行封裝。",[709,8621,8622],{},"範例：",[2816,8624],{"name":8625,"title":8626},"TypedAdminInputDemo","TypedAdminInput.vue",[2821,8628,8631],{"title":8629,"type":8630},"number | null 需處理清空","warning",[709,8632,8633,8634,8636,8637,8640,8641,8644,8645,8647],{},"若型別為 ",[552,8635,8607],{},"，runtime 仍須處理清空：原生 ",[552,8638,8639],{},"type=\"number\""," 清空時值會變成空字串 ",[552,8642,8643],{},"''","，需轉成 ",[552,8646,8139],{},"，型別才與實際行為一致。",[2821,8649,8650],{"title":2823,"type":2824},[709,8651,2827,8652,2831,8654,2835,8656,2838,8658,2842],{},[552,8653,2830],{},[552,8655,2834],{},[701,8657,515],{"href":516},[552,8659,2841],{},[2816,8661],{"name":8662},"InputTypeSafeDemo",[540,8664,724],{"id":723},[696,8666,727],{"id":727},[543,8668,8670],{"className":730,"code":8669,"language":732,"meta":550,"style":550},"\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",[552,8671,8672,8680,8709,8723,8732,8740,8748],{"__ignoreMap":550},[555,8673,8674,8676,8678],{"class":557,"line":558},[555,8675,739],{"class":591},[555,8677,743],{"class":742},[555,8679,746],{"class":591},[555,8681,8682,8684,8686,8688,8690,8692,8694,8696,8698,8700,8702,8705,8707],{"class":557,"line":595},[555,8683,751],{"class":591},[555,8685,6616],{"class":742},[555,8687,2871],{"class":757},[555,8689,761],{"class":591},[555,8691,764],{"class":591},[555,8693,2724],{"class":565},[555,8695,764],{"class":591},[555,8697,4868],{"class":757},[555,8699,761],{"class":591},[555,8701,764],{"class":591},[555,8703,8704],{"class":565},"輸入文字",[555,8706,764],{"class":591},[555,8708,746],{"class":591},[555,8710,8711,8713,8715,8718,8721],{"class":557,"line":605},[555,8712,776],{"class":591},[555,8714,743],{"class":742},[555,8716,8717],{"class":591}," #",[555,8719,8720],{"class":757},"suffix",[555,8722,746],{"class":591},[555,8724,8725,8727,8730],{"class":557,"line":613},[555,8726,806],{"class":591},[555,8728,8729],{"class":742},"admin-input-clear",[555,8731,1453],{"class":591},[555,8733,8734,8736,8738],{"class":557,"line":621},[555,8735,917],{"class":591},[555,8737,743],{"class":742},[555,8739,746],{"class":591},[555,8741,8742,8744,8746],{"class":557,"line":629},[555,8743,927],{"class":591},[555,8745,6616],{"class":742},[555,8747,746],{"class":591},[555,8749,8750,8752,8754],{"class":557,"line":637},[555,8751,788],{"class":591},[555,8753,743],{"class":742},[555,8755,746],{"class":591},[696,8757,6616],{"id":6616},[944,8759],{"component":8579},[696,8761,8729],{"id":8729},[944,8763],{"component":8764},"AdminInputClear",[696,8766,8767],{"id":8767},"admin-input-password-toggle",[944,8769],{"component":8770},"AdminInputPasswordToggle",[696,8772,8773],{"id":8773},"admin-input-word-limit",[944,8775],{"component":8776},"AdminInputWordLimit",[540,8778,989],{"id":989},[991,8780],{"component":8579},[994,8782,996],{},{"title":550,"searchDepth":605,"depth":605,"links":8784},[8785,8786,8787,8792,8793,8800],{"id":507,"depth":595,"text":507},{"id":687,"depth":595,"text":687},{"id":694,"depth":595,"text":694,"children":8788},[8789,8790,8791],{"id":8555,"depth":605,"text":8555},{"id":8564,"depth":605,"text":8564},{"id":2759,"depth":605,"text":2759},{"id":2765,"depth":595,"text":2766},{"id":723,"depth":595,"text":724,"children":8794},[8795,8796,8797,8798,8799],{"id":727,"depth":605,"text":727},{"id":6616,"depth":605,"text":6616},{"id":8729,"depth":605,"text":8729},{"id":8767,"depth":605,"text":8767},{"id":8773,"depth":605,"text":8773},{"id":989,"depth":595,"text":989},"文字輸入欄位。可搭配清除、密碼切換、字數限制等子組件。",{"doc":8803},"https:\u002F\u002Fwww.shadcn-vue.com\u002Fdocs\u002Fcomponents\u002Finput",{},{"title":85,"description":8801},"wZISPJDYzk-vnGcqg3rrjOoUsWmr8qKY9PdhsOYssLE",{"id":8808,"title":89,"body":8809,"component":526,"description":9298,"extension":1019,"links":19,"meta":9299,"navigation":526,"new":18,"path":90,"seo":9300,"stem":91,"wrapperKind":19,"__hash__":9301},"docs\u002Fdocs\u002Fadmin\u002Floading.md",{"type":537,"value":8810,"toc":9283},[8811,8813,8831,8869,8871,8874,8876,8880,8883,8887,8894,8897,8900,8913,8917,8934,9236,9239,9241,9243,9272,9274,9277,9279,9281],[540,8812,507],{"id":507},[543,8814,8816],{"className":545,"code":8815,"filename":547,"language":548,"meta":549,"style":550},"pnpm dlx shadcn-vue add @admin\u002Floading\n",[552,8817,8818],{"__ignoreMap":550},[555,8819,8820,8822,8824,8826,8828],{"class":557,"line":558},[555,8821,562],{"class":561},[555,8823,566],{"class":565},[555,8825,569],{"class":565},[555,8827,572],{"class":565},[555,8829,8830],{"class":565}," @admin\u002Floading\n",[543,8832,8834],{"className":578,"code":8833,"language":580,"meta":550,"style":550},"import {\n  AdminLoading,\n  vAdminLoading,\n} from '@\u002Fcomponents\u002Fadmin\u002Floading'\n",[552,8835,8836,8842,8849,8856],{"__ignoreMap":550},[555,8837,8838,8840],{"class":557,"line":558},[555,8839,588],{"class":587},[555,8841,592],{"class":591},[555,8843,8844,8847],{"class":557,"line":595},[555,8845,8846],{"class":598},"  AdminLoading",[555,8848,602],{"class":591},[555,8850,8851,8854],{"class":557,"line":605},[555,8852,8853],{"class":598},"  vAdminLoading",[555,8855,602],{"class":591},[555,8857,8858,8860,8862,8864,8867],{"class":557,"line":613},[555,8859,672],{"class":591},[555,8861,675],{"class":587},[555,8863,678],{"class":591},[555,8865,8866],{"class":565},"@\u002Fcomponents\u002Fadmin\u002Floading",[555,8868,684],{"class":591},[540,8870,687],{"id":687},[689,8872],{"name":8873},"LoadingDemo",[540,8875,694],{"id":694},[696,8877,8879],{"id":8878},"inline-區塊-loading","Inline 區塊 loading",[689,8881],{"name":8882},"LoadingInlineDemo",[696,8884,8886],{"id":8885},"命令式全螢幕-loading","命令式全螢幕 loading",[709,8888,8889,8890,8893],{},"多個非同步請求共用一個全螢幕 loading：自行以 ",[552,8891,8892],{},"admin-loading"," 組裝；全域共享與計數由呼叫端決定。",[709,8895,8896],{},"下面這版用一個 ref-count counter：計數從 0 變 1 才顯示、從 1 變回 0 才隱藏，中間重疊的請求不會重複蓋上去。",[689,8898],{"name":8899},"LoadingCounterDemo",[2810,8901,8902],{},[709,8903,8904,8905,8908,8909,8912],{},"想讓多個元件共用同一份 loading 狀態，把 counter 包進 ",[552,8906,8907],{},"createSharedComposable","（",[552,8910,8911],{},"@vueuse\u002Fcore","）就行。要不要這樣做，看你。",[4604,8914,8916],{"id":8915},"搭配-useoverlay","搭配 useOverlay",[709,8918,8919,8920,8923,8924,8926,8927,8930,8931,8933],{},"如果你已經用 ",[552,8921,8922],{},"useOverlay"," 在統一管理 overlay，也可以讓它來掛 loading。只是它的 provider 會綁 ",[552,8925,5183],{}," 和 ",[552,8928,8929],{},"after-leave","，而 ",[552,8932,8892],{}," 只是純展示元件、沒有這些 emit，所以得先包一層 wrapper 幫它補上：",[543,8935,8938],{"className":730,"code":8936,"filename":8937,"language":732,"meta":550,"style":550},"\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",[552,8939,8940,8960,8979,8983,8992,9006,9012,9016,9024,9035,9042,9046,9060,9085,9095,9104,9110,9118,9122,9130,9137,9151,9165,9170,9184,9189,9219,9228],{"__ignoreMap":550},[555,8941,8942,8944,8946,8948,8950,8952,8954,8956,8958],{"class":557,"line":558},[555,8943,739],{"class":591},[555,8945,3280],{"class":742},[555,8947,3283],{"class":757},[555,8949,3286],{"class":757},[555,8951,761],{"class":591},[555,8953,764],{"class":591},[555,8955,580],{"class":565},[555,8957,764],{"class":591},[555,8959,746],{"class":591},[555,8961,8962,8964,8966,8969,8971,8973,8975,8977],{"class":557,"line":595},[555,8963,588],{"class":587},[555,8965,1277],{"class":591},[555,8967,8968],{"class":598}," AdminLoading",[555,8970,1283],{"class":591},[555,8972,675],{"class":587},[555,8974,678],{"class":591},[555,8976,8866],{"class":565},[555,8978,684],{"class":591},[555,8980,8981],{"class":557,"line":605},[555,8982,1297],{"emptyLinePlaceholder":526},[555,8984,8985,8988,8990],{"class":557,"line":613},[555,8986,8987],{"class":1158},"defineOptions",[555,8989,1162],{"class":598},[555,8991,1165],{"class":591},[555,8993,8994,8997,8999,9001,9004],{"class":557,"line":621},[555,8995,8996],{"class":742},"  name",[555,8998,1173],{"class":591},[555,9000,678],{"class":591},[555,9002,9003],{"class":565},"loading-overlay-wrapper",[555,9005,684],{"class":591},[555,9007,9008,9010],{"class":557,"line":629},[555,9009,672],{"class":591},[555,9011,1226],{"class":598},[555,9013,9014],{"class":557,"line":637},[555,9015,1297],{"emptyLinePlaceholder":526},[555,9017,9018,9021],{"class":557,"line":645},[555,9019,9020],{"class":1158},"defineProps",[555,9022,9023],{"class":591},"\u003C{\n",[555,9025,9026,9029,9032],{"class":557,"line":653},[555,9027,9028],{"class":742},"  open",[555,9030,9031],{"class":591},"?:",[555,9033,9034],{"class":561}," boolean\n",[555,9036,9037,9040],{"class":557,"line":661},[555,9038,9039],{"class":591},"}>",[555,9041,3461],{"class":598},[555,9043,9044],{"class":557,"line":669},[555,9045,1297],{"emptyLinePlaceholder":526},[555,9047,9048,9050,9053,9055,9058],{"class":557,"line":905},[555,9049,3325],{"class":757},[555,9051,9052],{"class":598}," emit ",[555,9054,761],{"class":591},[555,9056,9057],{"class":1158}," defineEmits",[555,9059,9023],{"class":591},[555,9061,9062,9065,9068,9070,9072,9075,9077,9079,9082],{"class":557,"line":914},[555,9063,9064],{"class":591},"  '",[555,9066,9067],{"class":565},"update:open",[555,9069,1218],{"class":591},[555,9071,1173],{"class":591},[555,9073,9074],{"class":598}," [",[555,9076,2724],{"class":561},[555,9078,1173],{"class":591},[555,9080,9081],{"class":561}," boolean",[555,9083,9084],{"class":598},"]\n",[555,9086,9087,9090,9092],{"class":557,"line":924},[555,9088,9089],{"class":742},"  close",[555,9091,1173],{"class":591},[555,9093,9094],{"class":598}," []\n",[555,9096,9097,9100,9102],{"class":557,"line":934},[555,9098,9099],{"class":742},"  afterLeave",[555,9101,1173],{"class":591},[555,9103,9094],{"class":598},[555,9105,9106,9108],{"class":557,"line":3540},[555,9107,9039],{"class":591},[555,9109,3461],{"class":598},[555,9111,9112,9114,9116],{"class":557,"line":4426},[555,9113,788],{"class":591},[555,9115,3280],{"class":742},[555,9117,746],{"class":591},[555,9119,9120],{"class":557,"line":6198},[555,9121,1297],{"emptyLinePlaceholder":526},[555,9123,9124,9126,9128],{"class":557,"line":6208},[555,9125,739],{"class":591},[555,9127,743],{"class":742},[555,9129,746],{"class":591},[555,9131,9132,9134],{"class":557,"line":6227},[555,9133,751],{"class":591},[555,9135,9136],{"class":742},"transition\n",[555,9138,9139,9142,9144,9146,9149],{"class":557,"line":6237},[555,9140,9141],{"class":757},"    enter-active-class",[555,9143,761],{"class":591},[555,9145,764],{"class":591},[555,9147,9148],{"class":565},"animate-in fade-in-0",[555,9150,4285],{"class":591},[555,9152,9153,9156,9158,9160,9163],{"class":557,"line":6246},[555,9154,9155],{"class":757},"    leave-active-class",[555,9157,761],{"class":591},[555,9159,764],{"class":591},[555,9161,9162],{"class":565},"animate-out fade-out-0",[555,9164,4285],{"class":591},[555,9166,9167],{"class":557,"line":6255},[555,9168,9169],{"class":757},"    appear\n",[555,9171,9172,9175,9177,9179,9182],{"class":557,"line":524},[555,9173,9174],{"class":757},"    @after-leave",[555,9176,761],{"class":591},[555,9178,764],{"class":591},[555,9180,9181],{"class":565},"emit('afterLeave')",[555,9183,4285],{"class":591},[555,9185,9186],{"class":557,"line":6868},[555,9187,9188],{"class":591},"  >\n",[555,9190,9191,9193,9195,9197,9199,9201,9203,9205,9208,9210,9212,9215,9217],{"class":557,"line":6877},[555,9192,776],{"class":591},[555,9194,8892],{"class":742},[555,9196,3639],{"class":757},[555,9198,761],{"class":591},[555,9200,764],{"class":591},[555,9202,5183],{"class":565},[555,9204,764],{"class":591},[555,9206,9207],{"class":757}," mode",[555,9209,761],{"class":591},[555,9211,764],{"class":591},[555,9213,9214],{"class":565},"fullscreen",[555,9216,764],{"class":591},[555,9218,1453],{"class":591},[555,9220,9221,9223,9226],{"class":557,"line":6898},[555,9222,927],{"class":591},[555,9224,9225],{"class":742},"transition",[555,9227,746],{"class":591},[555,9229,9230,9232,9234],{"class":557,"line":6907},[555,9231,788],{"class":591},[555,9233,743],{"class":742},[555,9235,746],{"class":591},[689,9237],{"name":9238},"LoadingOverlayDemo",[540,9240,724],{"id":723},[696,9242,727],{"id":727},[543,9244,9246],{"className":730,"code":9245,"language":732,"meta":550,"style":550},"\u003Ctemplate>\n  \u003Cadmin-loading \u002F>\n\u003C\u002Ftemplate>\n",[552,9247,9248,9256,9264],{"__ignoreMap":550},[555,9249,9250,9252,9254],{"class":557,"line":558},[555,9251,739],{"class":591},[555,9253,743],{"class":742},[555,9255,746],{"class":591},[555,9257,9258,9260,9262],{"class":557,"line":595},[555,9259,751],{"class":591},[555,9261,8892],{"class":742},[555,9263,1453],{"class":591},[555,9265,9266,9268,9270],{"class":557,"line":605},[555,9267,788],{"class":591},[555,9269,743],{"class":742},[555,9271,746],{"class":591},[696,9273,8892],{"id":8892},[944,9275],{"component":9276},"AdminLoading",[540,9278,989],{"id":989},[991,9280],{"component":9276},[994,9282,3748],{},{"title":550,"searchDepth":605,"depth":605,"links":9284},[9285,9286,9287,9293,9297],{"id":507,"depth":595,"text":507},{"id":687,"depth":595,"text":687},{"id":694,"depth":595,"text":694,"children":9288},[9289,9290],{"id":8878,"depth":605,"text":8879},{"id":8885,"depth":605,"text":8886,"children":9291},[9292],{"id":8915,"depth":613,"text":8916},{"id":723,"depth":595,"text":724,"children":9294},[9295,9296],{"id":727,"depth":605,"text":727},{"id":8892,"depth":605,"text":8892},{"id":989,"depth":595,"text":989},"讀取中指示。全螢幕或區塊 inline。",{},{"title":89,"description":9298},"5huuS8MOgB0-Z-aagYgi6ygala5qoLQMiB2l_ZT4M7Y",{"id":9303,"title":93,"body":9304,"component":526,"description":9477,"extension":1019,"links":9478,"meta":9480,"navigation":526,"new":18,"path":94,"seo":9481,"stem":95,"wrapperKind":19,"__hash__":9482},"docs\u002Fdocs\u002Fadmin\u002Fnotification.md",{"type":537,"value":9305,"toc":9464},[9306,9308,9326,9385,9387,9390,9392,9395,9398,9401,9407,9410,9412,9414,9444,9453,9455,9458,9460,9462],[540,9307,507],{"id":507},[543,9309,9311],{"className":545,"code":9310,"filename":547,"language":548,"meta":549,"style":550},"pnpm dlx shadcn-vue add @admin\u002Fnotification\n",[552,9312,9313],{"__ignoreMap":550},[555,9314,9315,9317,9319,9321,9323],{"class":557,"line":558},[555,9316,562],{"class":561},[555,9318,566],{"class":565},[555,9320,569],{"class":565},[555,9322,572],{"class":565},[555,9324,9325],{"class":565}," @admin\u002Fnotification\n",[543,9327,9329],{"className":578,"code":9328,"language":580,"meta":550,"style":550},"import {\n  AdminNotification,\n  errorNotification,\n  infoNotification,\n  successNotification,\n  warningNotification,\n} from '@\u002Fcomponents\u002Fadmin\u002Fnotification'\n",[552,9330,9331,9337,9344,9351,9358,9365,9372],{"__ignoreMap":550},[555,9332,9333,9335],{"class":557,"line":558},[555,9334,588],{"class":587},[555,9336,592],{"class":591},[555,9338,9339,9342],{"class":557,"line":595},[555,9340,9341],{"class":598},"  AdminNotification",[555,9343,602],{"class":591},[555,9345,9346,9349],{"class":557,"line":605},[555,9347,9348],{"class":598},"  errorNotification",[555,9350,602],{"class":591},[555,9352,9353,9356],{"class":557,"line":613},[555,9354,9355],{"class":598},"  infoNotification",[555,9357,602],{"class":591},[555,9359,9360,9363],{"class":557,"line":621},[555,9361,9362],{"class":598},"  successNotification",[555,9364,602],{"class":591},[555,9366,9367,9370],{"class":557,"line":629},[555,9368,9369],{"class":598},"  warningNotification",[555,9371,602],{"class":591},[555,9373,9374,9376,9378,9380,9383],{"class":557,"line":637},[555,9375,672],{"class":591},[555,9377,675],{"class":587},[555,9379,678],{"class":591},[555,9381,9382],{"class":565},"@\u002Fcomponents\u002Fadmin\u002Fnotification",[555,9384,684],{"class":591},[540,9386,687],{"id":687},[689,9388],{"name":9389},"NotificationDemo",[540,9391,694],{"id":694},[696,9393,9394],{"id":9394},"狀態變體",[689,9396],{"name":9397},"NotificationVariantsDemo",[696,9399,9400],{"id":9400},"含操作按鈕",[709,9402,2145,9403,9406],{},[552,9404,9405],{},"action"," 設定按鈕標籤與 callback，適合「復原」這類可逆操作。",[689,9408],{"name":9409},"NotificationActionDemo",[540,9411,724],{"id":723},[696,9413,727],{"id":727},[543,9415,9417],{"className":730,"code":9416,"language":732,"meta":550,"style":550},"\u003Ctemplate>\n  \u003Cadmin-notification \u002F>\n\u003C\u002Ftemplate>\n",[552,9418,9419,9427,9436],{"__ignoreMap":550},[555,9420,9421,9423,9425],{"class":557,"line":558},[555,9422,739],{"class":591},[555,9424,743],{"class":742},[555,9426,746],{"class":591},[555,9428,9429,9431,9434],{"class":557,"line":595},[555,9430,751],{"class":591},[555,9432,9433],{"class":742},"admin-notification",[555,9435,1453],{"class":591},[555,9437,9438,9440,9442],{"class":557,"line":605},[555,9439,788],{"class":591},[555,9441,743],{"class":742},[555,9443,746],{"class":591},[709,9445,9446,9448,9449,9452],{},[552,9447,9433],{}," 須在 app root（通常是 ",[552,9450,9451],{},"app.vue","）掛載一次；後續以函式呼叫的方式觸發通知。",[696,9454,9433],{"id":9433},[944,9456],{"component":9457},"AdminNotification",[540,9459,989],{"id":989},[991,9461],{"component":9457},[994,9463,2023],{},{"title":550,"searchDepth":605,"depth":605,"links":9465},[9466,9467,9468,9472,9476],{"id":507,"depth":595,"text":507},{"id":687,"depth":595,"text":687},{"id":694,"depth":595,"text":694,"children":9469},[9470,9471],{"id":9394,"depth":605,"text":9394},{"id":9400,"depth":605,"text":9400},{"id":723,"depth":595,"text":724,"children":9473},[9474,9475],{"id":727,"depth":605,"text":727},{"id":9433,"depth":605,"text":9433},{"id":989,"depth":595,"text":989},"浮動通知（vue-sonner）。狀態變體與動作按鈕。",{"doc":9479},"https:\u002F\u002Fwww.shadcn-vue.com\u002Fdocs\u002Fcomponents\u002Fsonner",{},{"title":93,"description":9477},"xOeYldSFVWfAaqlGmMNWhc_2-7XkYIArLFVL8xgzIw0",{"id":9484,"title":97,"body":9485,"component":526,"description":9735,"extension":1019,"links":9736,"meta":9739,"navigation":526,"new":18,"path":98,"seo":9740,"stem":99,"wrapperKind":19,"__hash__":9741},"docs\u002Fdocs\u002Fadmin\u002Fnumber-field.md",{"type":537,"value":9486,"toc":9717},[9487,9489,9507,9566,9568,9571,9573,9577,9580,9582,9585,9587,9590,9592,9594,9686,9688,9691,9693,9696,9698,9701,9703,9706,9708,9711,9713,9715],[540,9488,507],{"id":507},[543,9490,9492],{"className":545,"code":9491,"filename":547,"language":548,"meta":549,"style":550},"pnpm dlx shadcn-vue add @admin\u002Fnumber-field\n",[552,9493,9494],{"__ignoreMap":550},[555,9495,9496,9498,9500,9502,9504],{"class":557,"line":558},[555,9497,562],{"class":561},[555,9499,566],{"class":565},[555,9501,569],{"class":565},[555,9503,572],{"class":565},[555,9505,9506],{"class":565}," @admin\u002Fnumber-field\n",[543,9508,9510],{"className":578,"code":9509,"language":580,"meta":550,"style":550},"import {\n  AdminNumberField,\n  AdminNumberFieldContent,\n  AdminNumberFieldDecrement,\n  AdminNumberFieldIncrement,\n  AdminNumberFieldInput,\n} from '@\u002Fcomponents\u002Fadmin\u002Fnumber-field'\n",[552,9511,9512,9518,9525,9532,9539,9546,9553],{"__ignoreMap":550},[555,9513,9514,9516],{"class":557,"line":558},[555,9515,588],{"class":587},[555,9517,592],{"class":591},[555,9519,9520,9523],{"class":557,"line":595},[555,9521,9522],{"class":598},"  AdminNumberField",[555,9524,602],{"class":591},[555,9526,9527,9530],{"class":557,"line":605},[555,9528,9529],{"class":598},"  AdminNumberFieldContent",[555,9531,602],{"class":591},[555,9533,9534,9537],{"class":557,"line":613},[555,9535,9536],{"class":598},"  AdminNumberFieldDecrement",[555,9538,602],{"class":591},[555,9540,9541,9544],{"class":557,"line":621},[555,9542,9543],{"class":598},"  AdminNumberFieldIncrement",[555,9545,602],{"class":591},[555,9547,9548,9551],{"class":557,"line":629},[555,9549,9550],{"class":598},"  AdminNumberFieldInput",[555,9552,602],{"class":591},[555,9554,9555,9557,9559,9561,9564],{"class":557,"line":637},[555,9556,672],{"class":591},[555,9558,675],{"class":587},[555,9560,678],{"class":591},[555,9562,9563],{"class":565},"@\u002Fcomponents\u002Fadmin\u002Fnumber-field",[555,9565,684],{"class":591},[540,9567,687],{"id":687},[689,9569],{"name":9570},"NumberFieldDemo",[540,9572,694],{"id":694},[696,9574,9576],{"id":9575},"自訂-step","自訂 step",[689,9578],{"name":9579},"NumberFieldStepDemo",[696,9581,3206],{"id":3206},[689,9583],{"name":9584},"NumberFieldDisabledDemo",[696,9586,2759],{"id":2759},[689,9588],{"name":9589},"NumberFieldErrorDemo",[540,9591,724],{"id":723},[696,9593,727],{"id":727},[543,9595,9597],{"className":730,"code":9596,"language":732,"meta":550,"style":550},"\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",[552,9598,9599,9607,9626,9635,9644,9653,9662,9670,9678],{"__ignoreMap":550},[555,9600,9601,9603,9605],{"class":557,"line":558},[555,9602,739],{"class":591},[555,9604,743],{"class":742},[555,9606,746],{"class":591},[555,9608,9609,9611,9614,9616,9618,9620,9622,9624],{"class":557,"line":595},[555,9610,751],{"class":591},[555,9612,9613],{"class":742},"admin-number-field",[555,9615,2871],{"class":757},[555,9617,761],{"class":591},[555,9619,764],{"class":591},[555,9621,2724],{"class":565},[555,9623,764],{"class":591},[555,9625,746],{"class":591},[555,9627,9628,9630,9633],{"class":557,"line":605},[555,9629,776],{"class":591},[555,9631,9632],{"class":742},"admin-number-field-content",[555,9634,746],{"class":591},[555,9636,9637,9639,9642],{"class":557,"line":613},[555,9638,806],{"class":591},[555,9640,9641],{"class":742},"admin-number-field-decrement",[555,9643,1453],{"class":591},[555,9645,9646,9648,9651],{"class":557,"line":621},[555,9647,806],{"class":591},[555,9649,9650],{"class":742},"admin-number-field-input",[555,9652,1453],{"class":591},[555,9654,9655,9657,9660],{"class":557,"line":629},[555,9656,806],{"class":591},[555,9658,9659],{"class":742},"admin-number-field-increment",[555,9661,1453],{"class":591},[555,9663,9664,9666,9668],{"class":557,"line":637},[555,9665,917],{"class":591},[555,9667,9632],{"class":742},[555,9669,746],{"class":591},[555,9671,9672,9674,9676],{"class":557,"line":645},[555,9673,927],{"class":591},[555,9675,9613],{"class":742},[555,9677,746],{"class":591},[555,9679,9680,9682,9684],{"class":557,"line":653},[555,9681,788],{"class":591},[555,9683,743],{"class":742},[555,9685,746],{"class":591},[696,9687,9613],{"id":9613},[944,9689],{"component":9690},"AdminNumberField",[696,9692,9632],{"id":9632},[944,9694],{"component":9695},"AdminNumberFieldContent",[696,9697,9650],{"id":9650},[944,9699],{"component":9700},"AdminNumberFieldInput",[696,9702,9659],{"id":9659},[944,9704],{"component":9705},"AdminNumberFieldIncrement",[696,9707,9641],{"id":9641},[944,9709],{"component":9710},"AdminNumberFieldDecrement",[540,9712,989],{"id":989},[991,9714],{"component":9690},[994,9716,996],{},{"title":550,"searchDepth":605,"depth":605,"links":9718},[9719,9720,9721,9726,9734],{"id":507,"depth":595,"text":507},{"id":687,"depth":595,"text":687},{"id":694,"depth":595,"text":694,"children":9722},[9723,9724,9725],{"id":9575,"depth":605,"text":9576},{"id":3206,"depth":605,"text":3206},{"id":2759,"depth":605,"text":2759},{"id":723,"depth":595,"text":724,"children":9727},[9728,9729,9730,9731,9732,9733],{"id":727,"depth":605,"text":727},{"id":9613,"depth":605,"text":9613},{"id":9632,"depth":605,"text":9632},{"id":9650,"depth":605,"text":9650},{"id":9659,"depth":605,"text":9659},{"id":9641,"depth":605,"text":9641},{"id":989,"depth":595,"text":989},"數字輸入。含增減控制。",{"doc":9737,"api":9738},"https:\u002F\u002Freka-ui.com\u002Fdocs\u002Fcomponents\u002Fnumber-field","https:\u002F\u002Freka-ui.com\u002Fdocs\u002Fcomponents\u002Fnumber-field#api-reference",{},{"title":97,"description":9735},"UXm-hJJ_yX-ObIOptmDOA2TAMUWOmbODuUyjbc03Rmw",{"id":9743,"title":101,"body":9744,"component":526,"description":10260,"extension":1019,"links":10261,"meta":10262,"navigation":526,"new":18,"path":102,"seo":10263,"stem":103,"wrapperKind":19,"__hash__":10264},"docs\u002Fdocs\u002Fadmin\u002Foverlay.md",{"type":537,"value":9745,"toc":10246},[9746,9748,9766,9796,9809,9914,9916,10161,10163,10166,10169,10172,10175,10178,10181,10185,10192,10195,10197,10199,10228,10233,10235,10238,10240,10243],[540,9747,507],{"id":507},[543,9749,9751],{"className":545,"code":9750,"filename":547,"language":548,"meta":549,"style":550},"pnpm dlx shadcn-vue add @admin\u002Foverlay\n",[552,9752,9753],{"__ignoreMap":550},[555,9754,9755,9757,9759,9761,9763],{"class":557,"line":558},[555,9756,562],{"class":561},[555,9758,566],{"class":565},[555,9760,569],{"class":565},[555,9762,572],{"class":565},[555,9764,9765],{"class":565}," @admin\u002Foverlay\n",[543,9767,9769],{"className":578,"code":9768,"language":580,"meta":550,"style":550},"import { AdminOverlayProvider, useOverlay } from '@\u002Fcomponents\u002Fadmin\u002Foverlay'\n",[552,9770,9771],{"__ignoreMap":550},[555,9772,9773,9775,9777,9780,9782,9785,9787,9789,9791,9794],{"class":557,"line":558},[555,9774,588],{"class":587},[555,9776,1277],{"class":591},[555,9778,9779],{"class":598}," AdminOverlayProvider",[555,9781,3352],{"class":591},[555,9783,9784],{"class":598}," useOverlay",[555,9786,1283],{"class":591},[555,9788,675],{"class":587},[555,9790,678],{"class":591},[555,9792,9793],{"class":565},"@\u002Fcomponents\u002Fadmin\u002Foverlay",[555,9795,684],{"class":591},[709,9797,9798,9799,9801,9802,9805,9806,9808],{},"於 app root（通常是 ",[552,9800,9451],{},"）掛載 ",[552,9803,9804],{},"admin-overlay-provider"," 一次；後續以共用 ",[552,9807,716],{}," 建立的 overlay 會自動註冊到此 provider：",[543,9810,9812],{"className":730,"code":9811,"filename":9451,"language":732,"meta":550,"style":550},"\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",[552,9813,9814,9834,9852,9860,9864,9872,9881,9890,9898,9906],{"__ignoreMap":550},[555,9815,9816,9818,9820,9822,9824,9826,9828,9830,9832],{"class":557,"line":558},[555,9817,739],{"class":591},[555,9819,3280],{"class":742},[555,9821,3283],{"class":757},[555,9823,3286],{"class":757},[555,9825,761],{"class":591},[555,9827,764],{"class":591},[555,9829,580],{"class":565},[555,9831,764],{"class":591},[555,9833,746],{"class":591},[555,9835,9836,9838,9840,9842,9844,9846,9848,9850],{"class":557,"line":595},[555,9837,588],{"class":587},[555,9839,1277],{"class":591},[555,9841,9779],{"class":598},[555,9843,1283],{"class":591},[555,9845,675],{"class":587},[555,9847,678],{"class":591},[555,9849,9793],{"class":565},[555,9851,684],{"class":591},[555,9853,9854,9856,9858],{"class":557,"line":605},[555,9855,788],{"class":591},[555,9857,3280],{"class":742},[555,9859,746],{"class":591},[555,9861,9862],{"class":557,"line":613},[555,9863,1297],{"emptyLinePlaceholder":526},[555,9865,9866,9868,9870],{"class":557,"line":621},[555,9867,739],{"class":591},[555,9869,743],{"class":742},[555,9871,746],{"class":591},[555,9873,9874,9876,9879],{"class":557,"line":629},[555,9875,751],{"class":591},[555,9877,9878],{"class":742},"nuxt-layout",[555,9880,746],{"class":591},[555,9882,9883,9885,9888],{"class":557,"line":637},[555,9884,776],{"class":591},[555,9886,9887],{"class":742},"nuxt-page",[555,9889,1453],{"class":591},[555,9891,9892,9894,9896],{"class":557,"line":645},[555,9893,927],{"class":591},[555,9895,9878],{"class":742},[555,9897,746],{"class":591},[555,9899,9900,9902,9904],{"class":557,"line":653},[555,9901,751],{"class":591},[555,9903,9804],{"class":742},[555,9905,1453],{"class":591},[555,9907,9908,9910,9912],{"class":557,"line":661},[555,9909,788],{"class":591},[555,9911,743],{"class":742},[555,9913,746],{"class":591},[540,9915,687],{"id":687},[543,9917,9919],{"className":730,"code":9918,"language":732,"meta":550,"style":550},"\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",[552,9920,9921,9941,9959,9975,9979,9992,10016,10025,10041,10057,10062,10068,10072,10088,10111,10115,10139,10144,10148,10153],{"__ignoreMap":550},[555,9922,9923,9925,9927,9929,9931,9933,9935,9937,9939],{"class":557,"line":558},[555,9924,739],{"class":591},[555,9926,3280],{"class":742},[555,9928,3283],{"class":757},[555,9930,3286],{"class":757},[555,9932,761],{"class":591},[555,9934,764],{"class":591},[555,9936,580],{"class":565},[555,9938,764],{"class":591},[555,9940,746],{"class":591},[555,9942,9943,9945,9947,9949,9951,9953,9955,9957],{"class":557,"line":595},[555,9944,588],{"class":587},[555,9946,1277],{"class":591},[555,9948,9784],{"class":598},[555,9950,1283],{"class":591},[555,9952,675],{"class":587},[555,9954,678],{"class":591},[555,9956,9793],{"class":565},[555,9958,684],{"class":591},[555,9960,9961,9963,9966,9968,9970,9973],{"class":557,"line":605},[555,9962,588],{"class":587},[555,9964,9965],{"class":598}," PublishReleaseDialog ",[555,9967,1263],{"class":587},[555,9969,678],{"class":591},[555,9971,9972],{"class":565},"~\u002Fcomponents\u002Fpublish-release-dialog.vue",[555,9974,684],{"class":591},[555,9976,9977],{"class":557,"line":613},[555,9978,1297],{"emptyLinePlaceholder":526},[555,9980,9981,9983,9986,9988,9990],{"class":557,"line":621},[555,9982,3325],{"class":757},[555,9984,9985],{"class":598}," overlay ",[555,9987,761],{"class":591},[555,9989,9784],{"class":1158},[555,9991,3461],{"class":598},[555,9993,9994,9996,9999,10001,10004,10006,10009,10012,10014],{"class":557,"line":629},[555,9995,3325],{"class":757},[555,9997,9998],{"class":598}," confirmDialog ",[555,10000,761],{"class":591},[555,10002,10003],{"class":598}," overlay",[555,10005,1210],{"class":591},[555,10007,10008],{"class":1158},"create",[555,10010,10011],{"class":598},"(PublishReleaseDialog",[555,10013,3352],{"class":591},[555,10015,592],{"class":591},[555,10017,10018,10021,10023],{"class":557,"line":637},[555,10019,10020],{"class":742},"  props",[555,10022,1173],{"class":591},[555,10024,592],{"class":591},[555,10026,10027,10030,10032,10034,10037,10039],{"class":557,"line":645},[555,10028,10029],{"class":742},"    title",[555,10031,1173],{"class":591},[555,10033,678],{"class":591},[555,10035,10036],{"class":565},"Publish this release?",[555,10038,1218],{"class":591},[555,10040,602],{"class":591},[555,10042,10043,10046,10048,10050,10053,10055],{"class":557,"line":653},[555,10044,10045],{"class":742},"    message",[555,10047,1173],{"class":591},[555,10049,678],{"class":591},[555,10051,10052],{"class":565},"Confirm before shipping changes to production.",[555,10054,1218],{"class":591},[555,10056,602],{"class":591},[555,10058,10059],{"class":557,"line":661},[555,10060,10061],{"class":591},"  },\n",[555,10063,10064,10066],{"class":557,"line":669},[555,10065,672],{"class":591},[555,10067,1226],{"class":598},[555,10069,10070],{"class":557,"line":905},[555,10071,1297],{"emptyLinePlaceholder":526},[555,10073,10074,10077,10080,10083,10086],{"class":557,"line":914},[555,10075,10076],{"class":757},"async",[555,10078,10079],{"class":757}," function",[555,10081,10082],{"class":1158}," handlePublish",[555,10084,10085],{"class":591},"()",[555,10087,592],{"class":591},[555,10089,10090,10093,10096,10099,10102,10105,10107,10109],{"class":557,"line":924},[555,10091,10092],{"class":757},"  const",[555,10094,10095],{"class":598}," result",[555,10097,10098],{"class":591}," =",[555,10100,10101],{"class":587}," await",[555,10103,10104],{"class":598}," confirmDialog",[555,10106,1210],{"class":591},[555,10108,5183],{"class":1158},[555,10110,3461],{"class":742},[555,10112,10113],{"class":557,"line":934},[555,10114,1297],{"emptyLinePlaceholder":526},[555,10116,10117,10120,10122,10124,10127,10129,10132,10134,10137],{"class":557,"line":3540},[555,10118,10119],{"class":587},"  if",[555,10121,1194],{"class":742},[555,10123,4215],{"class":598},[555,10125,10126],{"class":591}," ===",[555,10128,678],{"class":591},[555,10130,10131],{"class":565},"confirmed",[555,10133,1218],{"class":591},[555,10135,10136],{"class":742},") ",[555,10138,1165],{"class":591},[555,10140,10141],{"class":557,"line":4426},[555,10142,10143],{"class":4835},"    \u002F\u002F continue the workflow\n",[555,10145,10146],{"class":557,"line":6198},[555,10147,1236],{"class":591},[555,10149,10150],{"class":557,"line":6208},[555,10151,10152],{"class":591},"}\n",[555,10154,10155,10157,10159],{"class":557,"line":6227},[555,10156,788],{"class":591},[555,10158,3280],{"class":742},[555,10160,746],{"class":591},[540,10162,694],{"id":694},[696,10164,10165],{"id":10165},"基本開啟流程",[709,10167,10168],{},"觸發 overlay 並在當下根據回傳值處理。",[689,10170],{"name":10171},"OverlayDemo",[696,10173,10174],{"id":10174},"等待結果回傳",[709,10176,10177],{},"呼叫端需要等使用者 confirm／cancel 後再繼續。",[689,10179],{"name":10180},"OverlayPromiseDemo",[696,10182,10184],{"id":10183},"重用同一個-overlay-並覆寫-props","重用同一個 overlay 並覆寫 props",[709,10186,10187,10188,10191],{},"多個按鈕共用同一個 overlay component、每次 ",[552,10189,10190],{},"open()"," 直接傳入要覆寫的 props 即可替換文案。",[689,10193],{"name":10194},"OverlayPatchDemo",[540,10196,724],{"id":723},[696,10198,727],{"id":727},[543,10200,10202],{"className":730,"code":10201,"language":732,"meta":550,"style":550},"\u003Ctemplate>\n  \u003Cadmin-overlay-provider \u002F>\n\u003C\u002Ftemplate>\n",[552,10203,10204,10212,10220],{"__ignoreMap":550},[555,10205,10206,10208,10210],{"class":557,"line":558},[555,10207,739],{"class":591},[555,10209,743],{"class":742},[555,10211,746],{"class":591},[555,10213,10214,10216,10218],{"class":557,"line":595},[555,10215,751],{"class":591},[555,10217,9804],{"class":742},[555,10219,1453],{"class":591},[555,10221,10222,10224,10226],{"class":557,"line":605},[555,10223,788],{"class":591},[555,10225,743],{"class":742},[555,10227,746],{"class":591},[709,10229,10230,10232],{},[552,10231,9804],{}," 須在 app root 掛載一次；",[696,10234,9804],{"id":9804},[944,10236],{"component":10237},"AdminOverlayProvider",[540,10239,989],{"id":989},[991,10241],{"component":10242},"AdminOverlay",[994,10244,10245],{},"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":550,"searchDepth":605,"depth":605,"links":10247},[10248,10249,10250,10255,10259],{"id":507,"depth":595,"text":507},{"id":687,"depth":595,"text":687},{"id":694,"depth":595,"text":694,"children":10251},[10252,10253,10254],{"id":10165,"depth":605,"text":10165},{"id":10174,"depth":605,"text":10174},{"id":10183,"depth":605,"text":10184},{"id":723,"depth":595,"text":724,"children":10256},[10257,10258],{"id":727,"depth":605,"text":727},{"id":9804,"depth":605,"text":9804},{"id":989,"depth":595,"text":989},"程式化開啟 Dialog、Drawer 等浮層。可動態更新 props；結果以 Promise 回傳。",{"doc":703},{},{"title":101,"description":10260},"esS9LlLNABQoW78SyweKjRE-farRDyVoBVJ7PoWm0q8",{"id":10266,"title":105,"body":10267,"component":526,"description":10661,"extension":1019,"links":10662,"meta":10665,"navigation":526,"new":18,"path":106,"seo":10666,"stem":107,"wrapperKind":19,"__hash__":10667},"docs\u002Fdocs\u002Fadmin\u002Fpagination.md",{"type":537,"value":10268,"toc":10640},[10269,10271,10289,10383,10385,10388,10390,10394,10397,10399,10401,10584,10586,10589,10591,10594,10596,10599,10601,10604,10606,10609,10611,10614,10616,10619,10621,10624,10626,10629,10631,10634,10636,10638],[540,10270,507],{"id":507},[543,10272,10274],{"className":545,"code":10273,"filename":547,"language":548,"meta":549,"style":550},"pnpm dlx shadcn-vue add @admin\u002Fpagination\n",[552,10275,10276],{"__ignoreMap":550},[555,10277,10278,10280,10282,10284,10286],{"class":557,"line":558},[555,10279,562],{"class":561},[555,10281,566],{"class":565},[555,10283,569],{"class":565},[555,10285,572],{"class":565},[555,10287,10288],{"class":565}," @admin\u002Fpagination\n",[543,10290,10292],{"className":578,"code":10291,"language":580,"meta":550,"style":550},"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",[552,10293,10294,10300,10307,10314,10321,10328,10335,10342,10349,10356,10363,10370],{"__ignoreMap":550},[555,10295,10296,10298],{"class":557,"line":558},[555,10297,588],{"class":587},[555,10299,592],{"class":591},[555,10301,10302,10305],{"class":557,"line":595},[555,10303,10304],{"class":598},"  AdminPagination",[555,10306,602],{"class":591},[555,10308,10309,10312],{"class":557,"line":605},[555,10310,10311],{"class":598},"  AdminPaginationContent",[555,10313,602],{"class":591},[555,10315,10316,10319],{"class":557,"line":613},[555,10317,10318],{"class":598},"  AdminPaginationEllipsis",[555,10320,602],{"class":591},[555,10322,10323,10326],{"class":557,"line":621},[555,10324,10325],{"class":598},"  AdminPaginationFirst",[555,10327,602],{"class":591},[555,10329,10330,10333],{"class":557,"line":629},[555,10331,10332],{"class":598},"  AdminPaginationInfo",[555,10334,602],{"class":591},[555,10336,10337,10340],{"class":557,"line":637},[555,10338,10339],{"class":598},"  AdminPaginationItem",[555,10341,602],{"class":591},[555,10343,10344,10347],{"class":557,"line":645},[555,10345,10346],{"class":598},"  AdminPaginationLast",[555,10348,602],{"class":591},[555,10350,10351,10354],{"class":557,"line":653},[555,10352,10353],{"class":598},"  AdminPaginationNext",[555,10355,602],{"class":591},[555,10357,10358,10361],{"class":557,"line":661},[555,10359,10360],{"class":598},"  AdminPaginationPerPage",[555,10362,602],{"class":591},[555,10364,10365,10368],{"class":557,"line":669},[555,10366,10367],{"class":598},"  AdminPaginationPrevious",[555,10369,602],{"class":591},[555,10371,10372,10374,10376,10378,10381],{"class":557,"line":905},[555,10373,672],{"class":591},[555,10375,675],{"class":587},[555,10377,678],{"class":591},[555,10379,10380],{"class":565},"@\u002Fcomponents\u002Fadmin\u002Fpagination",[555,10382,684],{"class":591},[540,10384,687],{"id":687},[689,10386],{"name":10387},"PaginationDemo",[540,10389,694],{"id":694},[696,10391,10393],{"id":10392},"完整樣式含資訊-每頁筆數","完整樣式（含資訊 + 每頁筆數）",[689,10395],{"name":10396},"PaginationFullDemo",[540,10398,724],{"id":723},[696,10400,727],{"id":727},[543,10402,10404],{"className":730,"code":10403,"language":732,"meta":550,"style":550},"\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",[552,10405,10406,10414,10459,10468,10477,10486,10505,10514,10523,10532,10540,10549,10568,10576],{"__ignoreMap":550},[555,10407,10408,10410,10412],{"class":557,"line":558},[555,10409,739],{"class":591},[555,10411,743],{"class":742},[555,10413,746],{"class":591},[555,10415,10416,10418,10421,10424,10426,10428,10431,10433,10436,10438,10440,10443,10445,10448,10450,10452,10455,10457],{"class":557,"line":595},[555,10417,751],{"class":591},[555,10419,10420],{"class":742},"admin-pagination",[555,10422,10423],{"class":757}," v-model:page",[555,10425,761],{"class":591},[555,10427,764],{"class":591},[555,10429,10430],{"class":565},"page",[555,10432,764],{"class":591},[555,10434,10435],{"class":757}," :items-per-page",[555,10437,761],{"class":591},[555,10439,764],{"class":591},[555,10441,10442],{"class":565},"perPage",[555,10444,764],{"class":591},[555,10446,10447],{"class":757}," :total",[555,10449,761],{"class":591},[555,10451,764],{"class":591},[555,10453,10454],{"class":565},"total",[555,10456,764],{"class":591},[555,10458,746],{"class":591},[555,10460,10461,10463,10466],{"class":557,"line":605},[555,10462,776],{"class":591},[555,10464,10465],{"class":742},"admin-pagination-content",[555,10467,746],{"class":591},[555,10469,10470,10472,10475],{"class":557,"line":613},[555,10471,806],{"class":591},[555,10473,10474],{"class":742},"admin-pagination-first",[555,10476,1453],{"class":591},[555,10478,10479,10481,10484],{"class":557,"line":621},[555,10480,806],{"class":591},[555,10482,10483],{"class":742},"admin-pagination-previous",[555,10485,1453],{"class":591},[555,10487,10488,10490,10493,10495,10497,10499,10501,10503],{"class":557,"line":629},[555,10489,806],{"class":591},[555,10491,10492],{"class":742},"admin-pagination-item",[555,10494,2924],{"class":757},[555,10496,761],{"class":591},[555,10498,764],{"class":591},[555,10500,1641],{"class":565},[555,10502,764],{"class":591},[555,10504,1453],{"class":591},[555,10506,10507,10509,10512],{"class":557,"line":637},[555,10508,806],{"class":591},[555,10510,10511],{"class":742},"admin-pagination-ellipsis",[555,10513,1453],{"class":591},[555,10515,10516,10518,10521],{"class":557,"line":645},[555,10517,806],{"class":591},[555,10519,10520],{"class":742},"admin-pagination-next",[555,10522,1453],{"class":591},[555,10524,10525,10527,10530],{"class":557,"line":653},[555,10526,806],{"class":591},[555,10528,10529],{"class":742},"admin-pagination-last",[555,10531,1453],{"class":591},[555,10533,10534,10536,10538],{"class":557,"line":661},[555,10535,917],{"class":591},[555,10537,10465],{"class":742},[555,10539,746],{"class":591},[555,10541,10542,10544,10547],{"class":557,"line":669},[555,10543,776],{"class":591},[555,10545,10546],{"class":742},"admin-pagination-info",[555,10548,1453],{"class":591},[555,10550,10551,10553,10556,10558,10560,10562,10564,10566],{"class":557,"line":905},[555,10552,776],{"class":591},[555,10554,10555],{"class":742},"admin-pagination-per-page",[555,10557,2871],{"class":757},[555,10559,761],{"class":591},[555,10561,764],{"class":591},[555,10563,10442],{"class":565},[555,10565,764],{"class":591},[555,10567,1453],{"class":591},[555,10569,10570,10572,10574],{"class":557,"line":914},[555,10571,927],{"class":591},[555,10573,10420],{"class":742},[555,10575,746],{"class":591},[555,10577,10578,10580,10582],{"class":557,"line":924},[555,10579,788],{"class":591},[555,10581,743],{"class":742},[555,10583,746],{"class":591},[696,10585,10420],{"id":10420},[944,10587],{"component":10588},"AdminPagination",[696,10590,10492],{"id":10492},[944,10592],{"component":10593},"AdminPaginationItem",[696,10595,10546],{"id":10546},[944,10597],{"component":10598},"AdminPaginationInfo",[696,10600,10555],{"id":10555},[944,10602],{"component":10603},"AdminPaginationPerPage",[696,10605,10465],{"id":10465},[944,10607],{"component":10608},"AdminPaginationContent",[696,10610,10511],{"id":10511},[944,10612],{"component":10613},"AdminPaginationEllipsis",[696,10615,10474],{"id":10474},[944,10617],{"component":10618},"AdminPaginationFirst",[696,10620,10529],{"id":10529},[944,10622],{"component":10623},"AdminPaginationLast",[696,10625,10520],{"id":10520},[944,10627],{"component":10628},"AdminPaginationNext",[696,10630,10483],{"id":10483},[944,10632],{"component":10633},"AdminPaginationPrevious",[540,10635,989],{"id":989},[991,10637],{"component":10588},[994,10639,996],{},{"title":550,"searchDepth":605,"depth":605,"links":10641},[10642,10643,10644,10647,10660],{"id":507,"depth":595,"text":507},{"id":687,"depth":595,"text":687},{"id":694,"depth":595,"text":694,"children":10645},[10646],{"id":10392,"depth":605,"text":10393},{"id":723,"depth":595,"text":724,"children":10648},[10649,10650,10651,10652,10653,10654,10655,10656,10657,10658,10659],{"id":727,"depth":605,"text":727},{"id":10420,"depth":605,"text":10420},{"id":10492,"depth":605,"text":10492},{"id":10546,"depth":605,"text":10546},{"id":10555,"depth":605,"text":10555},{"id":10465,"depth":605,"text":10465},{"id":10511,"depth":605,"text":10511},{"id":10474,"depth":605,"text":10474},{"id":10529,"depth":605,"text":10529},{"id":10520,"depth":605,"text":10520},{"id":10483,"depth":605,"text":10483},{"id":989,"depth":595,"text":989},"分頁導覽。頁碼、資訊區、每頁筆數選擇。",{"doc":10663,"api":10664},"https:\u002F\u002Freka-ui.com\u002Fdocs\u002Fcomponents\u002Fpagination","https:\u002F\u002Freka-ui.com\u002Fdocs\u002Fcomponents\u002Fpagination#api-reference",{},{"title":105,"description":10661},"ENw5_Ufn39fdOjX9ocBg8BU6mQdEB3bqdeJxj5N6GsY",{"id":10669,"title":109,"body":10670,"component":526,"description":10997,"extension":1019,"links":10998,"meta":11000,"navigation":526,"new":18,"path":110,"seo":11001,"stem":111,"wrapperKind":19,"__hash__":11002},"docs\u002Fdocs\u002Fadmin\u002Fpdf-viewer.md",{"type":537,"value":10671,"toc":10978},[10672,10674,10692,10756,10758,10761,10763,10767,10770,10773,10776,10778,10780,10881,10883,10886,10888,10891,10893,10896,10898,10901,10903,10906,10908,10911,10913,10972,10974,10976],[540,10673,507],{"id":507},[543,10675,10677],{"className":545,"code":10676,"filename":547,"language":548,"meta":549,"style":550},"pnpm dlx shadcn-vue add @admin\u002Fpdf-viewer\n",[552,10678,10679],{"__ignoreMap":550},[555,10680,10681,10683,10685,10687,10689],{"class":557,"line":558},[555,10682,562],{"class":561},[555,10684,566],{"class":565},[555,10686,569],{"class":565},[555,10688,572],{"class":565},[555,10690,10691],{"class":565}," @admin\u002Fpdf-viewer\n",[543,10693,10695],{"className":578,"code":10694,"language":580,"meta":550,"style":550},"import {\n  AdminPdfViewer,\n  AdminPdfViewerFullscreen,\n  AdminPdfViewerPageNav,\n  AdminPdfViewerPages,\n  AdminPdfViewerToolbar,\n  AdminPdfViewerZoom\n} from '@\u002Fcomponents\u002Fadmin\u002Fpdf-viewer'\n",[552,10696,10697,10703,10710,10717,10724,10731,10738,10743],{"__ignoreMap":550},[555,10698,10699,10701],{"class":557,"line":558},[555,10700,588],{"class":587},[555,10702,592],{"class":591},[555,10704,10705,10708],{"class":557,"line":595},[555,10706,10707],{"class":598},"  AdminPdfViewer",[555,10709,602],{"class":591},[555,10711,10712,10715],{"class":557,"line":605},[555,10713,10714],{"class":598},"  AdminPdfViewerFullscreen",[555,10716,602],{"class":591},[555,10718,10719,10722],{"class":557,"line":613},[555,10720,10721],{"class":598},"  AdminPdfViewerPageNav",[555,10723,602],{"class":591},[555,10725,10726,10729],{"class":557,"line":621},[555,10727,10728],{"class":598},"  AdminPdfViewerPages",[555,10730,602],{"class":591},[555,10732,10733,10736],{"class":557,"line":629},[555,10734,10735],{"class":598},"  AdminPdfViewerToolbar",[555,10737,602],{"class":591},[555,10739,10740],{"class":557,"line":637},[555,10741,10742],{"class":598},"  AdminPdfViewerZoom\n",[555,10744,10745,10747,10749,10751,10754],{"class":557,"line":645},[555,10746,672],{"class":591},[555,10748,675],{"class":587},[555,10750,678],{"class":591},[555,10752,10753],{"class":565},"@\u002Fcomponents\u002Fadmin\u002Fpdf-viewer",[555,10755,684],{"class":591},[540,10757,687],{"id":687},[689,10759],{"name":10760},"PdfViewerBasicDemo",[540,10762,694],{"id":694},[696,10764,10766],{"id":10765},"自訂-toolbar-組合","自訂 toolbar 組合",[689,10768],{"name":10769},"PdfViewerCustomToolbarDemo",[696,10771,10772],{"id":10772},"外部控制當前頁",[689,10774],{"name":10775},"PdfViewerControlledPageDemo",[540,10777,724],{"id":723},[696,10779,727],{"id":727},[543,10781,10783],{"className":730,"code":10782,"language":732,"meta":550,"style":550},"\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",[552,10784,10785,10793,10812,10821,10830,10839,10848,10857,10865,10873],{"__ignoreMap":550},[555,10786,10787,10789,10791],{"class":557,"line":558},[555,10788,739],{"class":591},[555,10790,743],{"class":742},[555,10792,746],{"class":591},[555,10794,10795,10797,10800,10802,10804,10806,10808,10810],{"class":557,"line":595},[555,10796,751],{"class":591},[555,10798,10799],{"class":742},"admin-pdf-viewer",[555,10801,1796],{"class":757},[555,10803,761],{"class":591},[555,10805,764],{"class":591},[555,10807,1803],{"class":565},[555,10809,764],{"class":591},[555,10811,746],{"class":591},[555,10813,10814,10816,10819],{"class":557,"line":605},[555,10815,776],{"class":591},[555,10817,10818],{"class":742},"admin-pdf-viewer-pages",[555,10820,1453],{"class":591},[555,10822,10823,10825,10828],{"class":557,"line":613},[555,10824,776],{"class":591},[555,10826,10827],{"class":742},"admin-pdf-viewer-toolbar",[555,10829,746],{"class":591},[555,10831,10832,10834,10837],{"class":557,"line":621},[555,10833,806],{"class":591},[555,10835,10836],{"class":742},"admin-pdf-viewer-page-nav",[555,10838,1453],{"class":591},[555,10840,10841,10843,10846],{"class":557,"line":629},[555,10842,806],{"class":591},[555,10844,10845],{"class":742},"admin-pdf-viewer-zoom",[555,10847,1453],{"class":591},[555,10849,10850,10852,10855],{"class":557,"line":637},[555,10851,806],{"class":591},[555,10853,10854],{"class":742},"admin-pdf-viewer-fullscreen",[555,10856,1453],{"class":591},[555,10858,10859,10861,10863],{"class":557,"line":645},[555,10860,917],{"class":591},[555,10862,10827],{"class":742},[555,10864,746],{"class":591},[555,10866,10867,10869,10871],{"class":557,"line":653},[555,10868,927],{"class":591},[555,10870,10799],{"class":742},[555,10872,746],{"class":591},[555,10874,10875,10877,10879],{"class":557,"line":661},[555,10876,788],{"class":591},[555,10878,743],{"class":742},[555,10880,746],{"class":591},[696,10882,10799],{"id":10799},[944,10884],{"component":10885},"AdminPdfViewer",[696,10887,10827],{"id":10827},[944,10889],{"component":10890},"AdminPdfViewerToolbar",[696,10892,10818],{"id":10818},[944,10894],{"component":10895},"AdminPdfViewerPages",[696,10897,10854],{"id":10854},[944,10899],{"component":10900},"AdminPdfViewerFullscreen",[696,10902,10836],{"id":10836},[944,10904],{"component":10905},"AdminPdfViewerPageNav",[696,10907,10845],{"id":10845},[944,10909],{"component":10910},"AdminPdfViewerZoom",[540,10912,1560],{"id":1560},[1562,10914,10915,10932,10941,10955],{},[1565,10916,10917,10919,10920,4586,10922,10924,10925,10928,10929,10931],{},[1139,10918,1591],{},"：PDFium 引擎依賴 WebAssembly 與 Web Worker；元件殼不含 ",[552,10921,1595],{},[552,10923,1595],{}," 包覆（可加 ",[552,10926,10927],{},"#fallback"," loading）；純 CSR 不需處理。見 ",[701,10930,1607],{"href":1606},"。PDF 內容不會出現於 server-rendered HTML，無法 SEO。",[1565,10933,10934,10937,10938,10940],{},[1139,10935,10936],{},"首次掛載需下載 PDFium wasm","：載入時間視網路而定，預期延遲約數百毫秒到數秒；下載期間顯示既有 ",[552,10939,8892],{}," 元件。",[1565,10942,10943,10946,10947,10950,10951,10954],{},[1139,10944,10945],{},"wasm 二進位來源","：PDF 解析使用 PDFium WebAssembly，預設由 EmbedPDF 官方 CDN 動態載入。若部署於離線環境、封閉內網，或資安政策禁止外部 CDN，需自行 host ",[552,10948,10949],{},".wasm"," 檔並於 ",[552,10952,10953],{},"usePdfiumEngine"," 設定中指定來源（參數名請參考 EmbedPDF 文件）。",[1565,10956,10957,10960,10961,10964,10965,4163,10968,10971],{},[1139,10958,10959],{},"父容器需有明確寬度","：放大時 PDF 頁面可能比 viewer 寬，內部 viewport 自動水平捲動。若元件包在無寬度約束的 flex item（例如 ",[552,10962,10963],{},"\u003Cdiv class=\"flex flex-col gap-3\">","）內，PDF 寬度會推擠父容器；需在父 wrapper 加 ",[552,10966,10967],{},"w-full",[552,10969,10970],{},"min-w-0"," 確保 viewer 寬度受控。",[540,10973,989],{"id":989},[991,10975],{"component":10885},[994,10977,996],{},{"title":550,"searchDepth":605,"depth":605,"links":10979},[10980,10981,10982,10986,10995,10996],{"id":507,"depth":595,"text":507},{"id":687,"depth":595,"text":687},{"id":694,"depth":595,"text":694,"children":10983},[10984,10985],{"id":10765,"depth":605,"text":10766},{"id":10772,"depth":605,"text":10772},{"id":723,"depth":595,"text":724,"children":10987},[10988,10989,10990,10991,10992,10993,10994],{"id":727,"depth":605,"text":727},{"id":10799,"depth":605,"text":10799},{"id":10827,"depth":605,"text":10827},{"id":10818,"depth":605,"text":10818},{"id":10854,"depth":605,"text":10854},{"id":10836,"depth":605,"text":10836},{"id":10845,"depth":605,"text":10845},{"id":1560,"depth":595,"text":1560},{"id":989,"depth":595,"text":989},"內嵌 PDF 檢視器（EmbedPDF）。",{"doc":10999},"https:\u002F\u002Fwww.embedpdf.com\u002Fdocs\u002Fvue\u002Fheadless\u002Fgetting-started",{},{"title":109,"description":10997},"9hCtlJi71zBNrRS0sKKmK0xhlBo_a7lwPXCJh5vn91A",{"id":11004,"title":113,"body":11005,"component":526,"description":11165,"extension":1019,"links":11166,"meta":11169,"navigation":526,"new":18,"path":114,"seo":11170,"stem":115,"wrapperKind":19,"__hash__":11171},"docs\u002Fdocs\u002Fadmin\u002Fprogress.md",{"type":537,"value":11006,"toc":11151},[11007,11009,11027,11052,11054,11057,11059,11062,11069,11072,11075,11078,11081,11092,11095,11097,11099,11140,11142,11145,11147,11149],[540,11008,507],{"id":507},[543,11010,11012],{"className":545,"code":11011,"filename":547,"language":548,"meta":549,"style":550},"pnpm dlx shadcn-vue add @admin\u002Fprogress\n",[552,11013,11014],{"__ignoreMap":550},[555,11015,11016,11018,11020,11022,11024],{"class":557,"line":558},[555,11017,562],{"class":561},[555,11019,566],{"class":565},[555,11021,569],{"class":565},[555,11023,572],{"class":565},[555,11025,11026],{"class":565}," @admin\u002Fprogress\n",[543,11028,11030],{"className":578,"code":11029,"language":580,"meta":550,"style":550},"import { AdminProgress } from '@\u002Fcomponents\u002Fadmin\u002Fprogress'\n",[552,11031,11032],{"__ignoreMap":550},[555,11033,11034,11036,11038,11041,11043,11045,11047,11050],{"class":557,"line":558},[555,11035,588],{"class":587},[555,11037,1277],{"class":591},[555,11039,11040],{"class":598}," AdminProgress",[555,11042,1283],{"class":591},[555,11044,675],{"class":587},[555,11046,678],{"class":591},[555,11048,11049],{"class":565},"@\u002Fcomponents\u002Fadmin\u002Fprogress",[555,11051,684],{"class":591},[540,11053,687],{"id":687},[689,11055],{"name":11056},"ProgressDemo",[540,11058,694],{"id":694},[696,11060,11061],{"id":11061},"動態進度",[709,11063,11064,11065,11068],{},"以 interval 或事件來源更新 ",[552,11066,11067],{},"model-value","，進度條會平滑過渡。",[689,11070],{"name":11071},"ProgressDynamicDemo",[696,11073,11074],{"id":11074},"多項進度列表",[689,11076],{"name":11077},"ProgressStepsDemo",[696,11079,11080],{"id":11080},"不確定進度",[709,11082,11083,11084,11087,11088,11091],{},"當進度總量未知時，傳入 ",[552,11085,11086],{},"model-value=\"null\""," 進入 indeterminate 狀態：進度條顯示不確定動畫並隱藏百分比文字（此時 ",[552,11089,11090],{},"show-value"," 不生效）。待取得實際進度後再改回數值即可。",[689,11093],{"name":11094},"ProgressIndeterminateDemo",[540,11096,724],{"id":723},[696,11098,727],{"id":727},[543,11100,11102],{"className":730,"code":11101,"language":732,"meta":550,"style":550},"\u003Ctemplate>\n  \u003Cadmin-progress :model-value=\"value\" \u002F>\n\u003C\u002Ftemplate>\n",[552,11103,11104,11112,11132],{"__ignoreMap":550},[555,11105,11106,11108,11110],{"class":557,"line":558},[555,11107,739],{"class":591},[555,11109,743],{"class":742},[555,11111,746],{"class":591},[555,11113,11114,11116,11119,11122,11124,11126,11128,11130],{"class":557,"line":595},[555,11115,751],{"class":591},[555,11117,11118],{"class":742},"admin-progress",[555,11120,11121],{"class":757}," :model-value",[555,11123,761],{"class":591},[555,11125,764],{"class":591},[555,11127,2724],{"class":565},[555,11129,764],{"class":591},[555,11131,1453],{"class":591},[555,11133,11134,11136,11138],{"class":557,"line":605},[555,11135,788],{"class":591},[555,11137,743],{"class":742},[555,11139,746],{"class":591},[696,11141,11118],{"id":11118},[944,11143],{"component":11144},"AdminProgress",[540,11146,989],{"id":989},[991,11148],{"component":11144},[994,11150,996],{},{"title":550,"searchDepth":605,"depth":605,"links":11152},[11153,11154,11155,11160,11164],{"id":507,"depth":595,"text":507},{"id":687,"depth":595,"text":687},{"id":694,"depth":595,"text":694,"children":11156},[11157,11158,11159],{"id":11061,"depth":605,"text":11061},{"id":11074,"depth":605,"text":11074},{"id":11080,"depth":605,"text":11080},{"id":723,"depth":595,"text":724,"children":11161},[11162,11163],{"id":727,"depth":605,"text":727},{"id":11118,"depth":605,"text":11118},{"id":989,"depth":595,"text":989},"進度條。顯示百分比。",{"doc":11167,"api":11168},"https:\u002F\u002Freka-ui.com\u002Fdocs\u002Fcomponents\u002Fprogress","https:\u002F\u002Freka-ui.com\u002Fdocs\u002Fcomponents\u002Fprogress#api-reference",{},{"title":113,"description":11165},"-mat3XLEAPWTWxqq-CHuVNlyKL8hgmAADbYV5-5z7RM",{"id":11173,"title":117,"body":11174,"component":526,"description":11469,"extension":1019,"links":11470,"meta":11473,"navigation":526,"new":18,"path":118,"seo":11474,"stem":119,"wrapperKind":19,"__hash__":11475},"docs\u002Fdocs\u002Fadmin\u002Fradio-group.md",{"type":537,"value":11175,"toc":11453},[11176,11178,11196,11241,11243,11246,11248,11251,11254,11256,11259,11261,11277,11292,11294,11298,11310,11313,11315,11317,11432,11434,11436,11439,11442,11444,11447,11449,11451],[540,11177,507],{"id":507},[543,11179,11181],{"className":545,"code":11180,"filename":547,"language":548,"meta":549,"style":550},"pnpm dlx shadcn-vue add @admin\u002Fradio-group\n",[552,11182,11183],{"__ignoreMap":550},[555,11184,11185,11187,11189,11191,11193],{"class":557,"line":558},[555,11186,562],{"class":561},[555,11188,566],{"class":565},[555,11190,569],{"class":565},[555,11192,572],{"class":565},[555,11194,11195],{"class":565}," @admin\u002Fradio-group\n",[543,11197,11199],{"className":578,"code":11198,"language":580,"meta":550,"style":550},"import {\n  AdminRadioGroup,\n  AdminRadioGroupItem,\n  AdminRadioOption,\n} from '@\u002Fcomponents\u002Fadmin\u002Fradio-group'\n",[552,11200,11201,11207,11214,11221,11228],{"__ignoreMap":550},[555,11202,11203,11205],{"class":557,"line":558},[555,11204,588],{"class":587},[555,11206,592],{"class":591},[555,11208,11209,11212],{"class":557,"line":595},[555,11210,11211],{"class":598},"  AdminRadioGroup",[555,11213,602],{"class":591},[555,11215,11216,11219],{"class":557,"line":605},[555,11217,11218],{"class":598},"  AdminRadioGroupItem",[555,11220,602],{"class":591},[555,11222,11223,11226],{"class":557,"line":613},[555,11224,11225],{"class":598},"  AdminRadioOption",[555,11227,602],{"class":591},[555,11229,11230,11232,11234,11236,11239],{"class":557,"line":621},[555,11231,672],{"class":591},[555,11233,675],{"class":587},[555,11235,678],{"class":591},[555,11237,11238],{"class":565},"@\u002Fcomponents\u002Fadmin\u002Fradio-group",[555,11240,684],{"class":591},[540,11242,687],{"id":687},[689,11244],{"name":11245},"RadioGroupBasicDemo",[540,11247,694],{"id":694},[696,11249,11250],{"id":11250},"多選項群組",[689,11252],{"name":11253},"RadioGroupDemo",[696,11255,3206],{"id":3206},[689,11257],{"name":11258},"RadioDisabledDemo",[540,11260,2766],{"id":2765},[709,11262,11263,7627,11266,11268,11269,11272,11273,11276],{},[552,11264,11265],{},"AdminRadioGroup",[552,11267,3252],{}," 為 reka-ui 的 ",[552,11270,11271],{},"AcceptableValue","，選項則由呼叫端自行放置 ",[552,11274,11275],{},"admin-radio-option","，兩者在 compile-time 不會對齊。",[709,11278,8614,11279,11281,11282,11284,11285,2783,11287,11289,11290,717],{},[552,11280,2728],{}," 與選項 ",[552,11283,2724],{}," 的 literal union 對齊，可自行封裝：傳入 ",[552,11286,2782],{},[552,11288,2786],{},"），由封裝元件渲染 ",[552,11291,11275],{},[709,11293,8622],{},[2816,11295],{"name":11296,"title":11297},"TypedAdminRadioGroupDemo","TypedAdminRadioGroup.vue",[2821,11299,11300],{"title":2823,"type":2824},[709,11301,2827,11302,2831,11304,2835,11306,2838,11308,2842],{},[552,11303,2830],{},[552,11305,2834],{},[701,11307,515],{"href":516},[552,11309,2841],{},[2816,11311],{"name":11312},"RadioGroupTypeSafeDemo",[540,11314,724],{"id":723},[696,11316,727],{"id":727},[543,11318,11320],{"className":730,"code":11319,"language":732,"meta":550,"style":550},"\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",[552,11321,11322,11330,11349,11356,11370,11384,11398,11411,11416,11424],{"__ignoreMap":550},[555,11323,11324,11326,11328],{"class":557,"line":558},[555,11325,739],{"class":591},[555,11327,743],{"class":742},[555,11329,746],{"class":591},[555,11331,11332,11334,11337,11339,11341,11343,11345,11347],{"class":557,"line":595},[555,11333,751],{"class":591},[555,11335,11336],{"class":742},"admin-radio-group",[555,11338,2871],{"class":757},[555,11340,761],{"class":591},[555,11342,764],{"class":591},[555,11344,2724],{"class":565},[555,11346,764],{"class":591},[555,11348,746],{"class":591},[555,11350,11351,11353],{"class":557,"line":605},[555,11352,776],{"class":591},[555,11354,11355],{"class":742},"admin-radio-option\n",[555,11357,11358,11361,11363,11365,11368],{"class":557,"line":613},[555,11359,11360],{"class":757},"      v-for",[555,11362,761],{"class":591},[555,11364,764],{"class":591},[555,11366,11367],{"class":565},"option in options",[555,11369,4285],{"class":591},[555,11371,11372,11375,11377,11379,11382],{"class":557,"line":621},[555,11373,11374],{"class":757},"      :key",[555,11376,761],{"class":591},[555,11378,764],{"class":591},[555,11380,11381],{"class":565},"option.value",[555,11383,4285],{"class":591},[555,11385,11386,11389,11391,11393,11396],{"class":557,"line":629},[555,11387,11388],{"class":757},"      :label",[555,11390,761],{"class":591},[555,11392,764],{"class":591},[555,11394,11395],{"class":565},"option.label",[555,11397,4285],{"class":591},[555,11399,11400,11403,11405,11407,11409],{"class":557,"line":637},[555,11401,11402],{"class":757},"      :value",[555,11404,761],{"class":591},[555,11406,764],{"class":591},[555,11408,11381],{"class":565},[555,11410,4285],{"class":591},[555,11412,11413],{"class":557,"line":645},[555,11414,11415],{"class":591},"    \u002F>\n",[555,11417,11418,11420,11422],{"class":557,"line":653},[555,11419,927],{"class":591},[555,11421,11336],{"class":742},[555,11423,746],{"class":591},[555,11425,11426,11428,11430],{"class":557,"line":661},[555,11427,788],{"class":591},[555,11429,743],{"class":742},[555,11431,746],{"class":591},[696,11433,11336],{"id":11336},[944,11435],{"component":11265},[696,11437,11438],{"id":11438},"admin-radio-group-item",[944,11440],{"component":11441},"AdminRadioGroupItem",[696,11443,11275],{"id":11275},[944,11445],{"component":11446},"AdminRadioOption",[540,11448,989],{"id":989},[991,11450],{"component":11265},[994,11452,996],{},{"title":550,"searchDepth":605,"depth":605,"links":11454},[11455,11456,11457,11461,11462,11468],{"id":507,"depth":595,"text":507},{"id":687,"depth":595,"text":687},{"id":694,"depth":595,"text":694,"children":11458},[11459,11460],{"id":11250,"depth":605,"text":11250},{"id":3206,"depth":605,"text":3206},{"id":2765,"depth":595,"text":2766},{"id":723,"depth":595,"text":724,"children":11463},[11464,11465,11466,11467],{"id":727,"depth":605,"text":727},{"id":11336,"depth":605,"text":11336},{"id":11438,"depth":605,"text":11438},{"id":11275,"depth":605,"text":11275},{"id":989,"depth":595,"text":989},"互斥單選按鈕組。",{"doc":11471,"api":11472},"https:\u002F\u002Freka-ui.com\u002Fdocs\u002Fcomponents\u002Fradio-group","https:\u002F\u002Freka-ui.com\u002Fdocs\u002Fcomponents\u002Fradio-group#api-reference",{},{"title":117,"description":11469},"NyPiSMy1sxFUv4QOAxDj1Ed_SO1WClz7bXA48G_xInA",{"id":11477,"title":121,"body":11478,"component":526,"description":11620,"extension":1019,"links":11621,"meta":11624,"navigation":526,"new":18,"path":122,"seo":11625,"stem":123,"wrapperKind":19,"__hash__":11626},"docs\u002Fdocs\u002Fadmin\u002Fscroll-area.md",{"type":537,"value":11479,"toc":11607},[11480,11482,11500,11530,11532,11535,11537,11540,11543,11545,11547,11590,11592,11595,11598,11601,11603,11605],[540,11481,507],{"id":507},[543,11483,11485],{"className":545,"code":11484,"filename":547,"language":548,"meta":549,"style":550},"pnpm dlx shadcn-vue add @admin\u002Fscroll-area\n",[552,11486,11487],{"__ignoreMap":550},[555,11488,11489,11491,11493,11495,11497],{"class":557,"line":558},[555,11490,562],{"class":561},[555,11492,566],{"class":565},[555,11494,569],{"class":565},[555,11496,572],{"class":565},[555,11498,11499],{"class":565}," @admin\u002Fscroll-area\n",[543,11501,11503],{"className":578,"code":11502,"language":580,"meta":550,"style":550},"import { AdminScrollArea, AdminScrollBar } from '@\u002Fcomponents\u002Fadmin\u002Fscroll-area'\n",[552,11504,11505],{"__ignoreMap":550},[555,11506,11507,11509,11511,11514,11516,11519,11521,11523,11525,11528],{"class":557,"line":558},[555,11508,588],{"class":587},[555,11510,1277],{"class":591},[555,11512,11513],{"class":598}," AdminScrollArea",[555,11515,3352],{"class":591},[555,11517,11518],{"class":598}," AdminScrollBar",[555,11520,1283],{"class":591},[555,11522,675],{"class":587},[555,11524,678],{"class":591},[555,11526,11527],{"class":565},"@\u002Fcomponents\u002Fadmin\u002Fscroll-area",[555,11529,684],{"class":591},[540,11531,687],{"id":687},[689,11533],{"name":11534},"ScrollAreaDemo",[540,11536,694],{"id":694},[696,11538,11539],{"id":11539},"水平捲動",[689,11541],{"name":11542},"ScrollAreaHorizontalDemo",[540,11544,724],{"id":723},[696,11546,727],{"id":727},[543,11548,11550],{"className":730,"code":11549,"language":732,"meta":550,"style":550},"\u003Ctemplate>\n  \u003Cadmin-scroll-area>\n    內容\n  \u003C\u002Fadmin-scroll-area>\n\u003C\u002Ftemplate>\n",[552,11551,11552,11560,11569,11574,11582],{"__ignoreMap":550},[555,11553,11554,11556,11558],{"class":557,"line":558},[555,11555,739],{"class":591},[555,11557,743],{"class":742},[555,11559,746],{"class":591},[555,11561,11562,11564,11567],{"class":557,"line":595},[555,11563,751],{"class":591},[555,11565,11566],{"class":742},"admin-scroll-area",[555,11568,746],{"class":591},[555,11570,11571],{"class":557,"line":605},[555,11572,11573],{"class":598},"    內容\n",[555,11575,11576,11578,11580],{"class":557,"line":613},[555,11577,927],{"class":591},[555,11579,11566],{"class":742},[555,11581,746],{"class":591},[555,11583,11584,11586,11588],{"class":557,"line":621},[555,11585,788],{"class":591},[555,11587,743],{"class":742},[555,11589,746],{"class":591},[696,11591,11566],{"id":11566},[944,11593],{"component":11594},"AdminScrollArea",[696,11596,11597],{"id":11597},"admin-scroll-bar",[944,11599],{"component":11600},"AdminScrollBar",[540,11602,989],{"id":989},[991,11604],{"component":11594},[994,11606,2023],{},{"title":550,"searchDepth":605,"depth":605,"links":11608},[11609,11610,11611,11614,11619],{"id":507,"depth":595,"text":507},{"id":687,"depth":595,"text":687},{"id":694,"depth":595,"text":694,"children":11612},[11613],{"id":11539,"depth":605,"text":11539},{"id":723,"depth":595,"text":724,"children":11615},[11616,11617,11618],{"id":727,"depth":605,"text":727},{"id":11566,"depth":605,"text":11566},{"id":11597,"depth":605,"text":11597},{"id":989,"depth":595,"text":989},"可捲動容器。自訂捲動列樣式。",{"doc":11622,"api":11623},"https:\u002F\u002Freka-ui.com\u002Fdocs\u002Fcomponents\u002Fscroll-area","https:\u002F\u002Freka-ui.com\u002Fdocs\u002Fcomponents\u002Fscroll-area#api-reference",{},{"title":121,"description":11620},"w7AdodwmA4ke2SouOj4Zys8NYmHfQt1UwtUoK0ylT6Q",{"id":11628,"title":125,"body":11629,"component":526,"description":12449,"extension":1019,"links":12450,"meta":12453,"navigation":526,"new":18,"path":126,"seo":12454,"stem":127,"wrapperKind":19,"__hash__":12455},"docs\u002Fdocs\u002Fadmin\u002Fselect.md",{"type":537,"value":11630,"toc":12417},[11631,11633,11651,11787,11789,11792,11794,11797,11800,11803,11806,11808,11811,11814,11817,11820,11822,11845,11857,11859,11863,11875,11878,11880,11882,12243,12245,12247,12249,12252,12254,12257,12259,12262,12264,12267,12269,12272,12274,12277,12279,12282,12284,12287,12289,12292,12294,12297,12299,12302,12305,12308,12310,12313,12315,12318,12320,12323,12325,12411,12413,12415],[540,11632,507],{"id":507},[543,11634,11636],{"className":545,"code":11635,"filename":547,"language":548,"meta":549,"style":550},"pnpm dlx shadcn-vue add @admin\u002Fselect\n",[552,11637,11638],{"__ignoreMap":550},[555,11639,11640,11642,11644,11646,11648],{"class":557,"line":558},[555,11641,562],{"class":561},[555,11643,566],{"class":565},[555,11645,569],{"class":565},[555,11647,572],{"class":565},[555,11649,11650],{"class":565}," @admin\u002Fselect\n",[543,11652,11654],{"className":578,"code":11653,"language":580,"meta":550,"style":550},"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",[552,11655,11656,11662,11669,11676,11683,11690,11697,11704,11711,11718,11725,11732,11739,11746,11753,11760,11767,11774],{"__ignoreMap":550},[555,11657,11658,11660],{"class":557,"line":558},[555,11659,588],{"class":587},[555,11661,592],{"class":591},[555,11663,11664,11667],{"class":557,"line":595},[555,11665,11666],{"class":598},"  AdminSelect",[555,11668,602],{"class":591},[555,11670,11671,11674],{"class":557,"line":605},[555,11672,11673],{"class":598},"  AdminSelectAnchor",[555,11675,602],{"class":591},[555,11677,11678,11681],{"class":557,"line":613},[555,11679,11680],{"class":598},"  AdminSelectCancel",[555,11682,602],{"class":591},[555,11684,11685,11688],{"class":557,"line":621},[555,11686,11687],{"class":598},"  AdminSelectCounter",[555,11689,602],{"class":591},[555,11691,11692,11695],{"class":557,"line":629},[555,11693,11694],{"class":598},"  AdminSelectEmpty",[555,11696,602],{"class":591},[555,11698,11699,11702],{"class":557,"line":637},[555,11700,11701],{"class":598},"  AdminSelectGroup",[555,11703,602],{"class":591},[555,11705,11706,11709],{"class":557,"line":645},[555,11707,11708],{"class":598},"  AdminSelectIcon",[555,11710,602],{"class":591},[555,11712,11713,11716],{"class":557,"line":653},[555,11714,11715],{"class":598},"  AdminSelectInput",[555,11717,602],{"class":591},[555,11719,11720,11723],{"class":557,"line":661},[555,11721,11722],{"class":598},"  AdminSelectItem",[555,11724,602],{"class":591},[555,11726,11727,11730],{"class":557,"line":669},[555,11728,11729],{"class":598},"  AdminSelectItemIndicator",[555,11731,602],{"class":591},[555,11733,11734,11737],{"class":557,"line":905},[555,11735,11736],{"class":598},"  AdminSelectList",[555,11738,602],{"class":591},[555,11740,11741,11744],{"class":557,"line":914},[555,11742,11743],{"class":598},"  AdminSelectSeparator",[555,11745,602],{"class":591},[555,11747,11748,11751],{"class":557,"line":924},[555,11749,11750],{"class":598},"  AdminSelectTags",[555,11752,602],{"class":591},[555,11754,11755,11758],{"class":557,"line":934},[555,11756,11757],{"class":598},"  AdminSelectTrigger",[555,11759,602],{"class":591},[555,11761,11762,11765],{"class":557,"line":3540},[555,11763,11764],{"class":598},"  AdminSelectValue",[555,11766,602],{"class":591},[555,11768,11769,11772],{"class":557,"line":4426},[555,11770,11771],{"class":598},"  AdminSelectViewport",[555,11773,602],{"class":591},[555,11775,11776,11778,11780,11782,11785],{"class":557,"line":6198},[555,11777,672],{"class":591},[555,11779,675],{"class":587},[555,11781,678],{"class":591},[555,11783,11784],{"class":565},"@\u002Fcomponents\u002Fadmin\u002Fselect",[555,11786,684],{"class":591},[540,11788,687],{"id":687},[689,11790],{"name":11791},"SelectDemo",[540,11793,694],{"id":694},[696,11795,11796],{"id":11796},"多選",[689,11798],{"name":11799},"SelectMultipleDemo",[696,11801,11802],{"id":11802},"可搜尋",[689,11804],{"name":11805},"SelectSearchableDemo",[696,11807,2759],{"id":2759},[689,11809],{"name":11810},"SelectErrorDemo",[696,11812,11813],{"id":11813},"完整組合",[709,11815,11816],{},"子元件：anchor、trigger（tags／value／counter／icon）、list、input（含 cancel）、viewport、empty、group（heading）、separator、item（含 item-indicator）。",[689,11818],{"name":11819},"SelectFullDemo",[540,11821,2766],{"id":2765},[709,11823,11824,2772,11827,11829,11830,11832,11833,11835,11836,2783,11838,11840,11841,11844],{},[552,11825,11826],{},"AdminSelect",[552,11828,2775],{},"），可直接以較嚴的 ",[552,11831,2728],{}," 受益。若要讓 ",[552,11834,2728],{}," 與選項清單的 literal union 對齊，可自行封裝：傳入 ",[552,11837,2782],{},[552,11839,2786],{},"），由封裝元件以物件為 value 渲染 item，並以 ",[552,11842,11843],{},"displayValue"," 顯示 label。",[709,11846,11847,11848,11851,11852,3259,11854,11856],{},"封裝再以 ",[552,11849,11850],{},"multiple"," 為條件式泛型的 discriminant：",[552,11853,11850],{},[552,11855,2728],{}," 型別收斂為選項陣列、未開時為單一選項，兩種模式共用同一個封裝元件。",[709,11858,8622],{},[2816,11860],{"name":11861,"title":11862},"TypedAdminSelectDemo","TypedAdminSelect.vue",[2821,11864,11865],{"title":2823,"type":2824},[709,11866,2827,11867,2831,11869,2835,11871,2838,11873,2842],{},[552,11868,2830],{},[552,11870,2834],{},[701,11872,515],{"href":516},[552,11874,2841],{},[2816,11876],{"name":11877},"SelectTypeSafeDemo",[540,11879,724],{"id":723},[696,11881,727],{"id":727},[543,11883,11885],{"className":730,"code":11884,"language":732,"meta":550,"style":550},"\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",[552,11886,11887,11895,11902,11914,11927,11932,11946,11960,11964,11973,11982,11991,12010,12019,12028,12036,12044,12053,12072,12081,12089,12098,12116,12136,12178,12183,12192,12200,12209,12217,12225,12234],{"__ignoreMap":550},[555,11888,11889,11891,11893],{"class":557,"line":558},[555,11890,739],{"class":591},[555,11892,743],{"class":742},[555,11894,746],{"class":591},[555,11896,11897,11899],{"class":557,"line":595},[555,11898,751],{"class":591},[555,11900,11901],{"class":742},"admin-select\n",[555,11903,11904,11906,11908,11910,11912],{"class":557,"line":605},[555,11905,4900],{"class":757},[555,11907,761],{"class":591},[555,11909,764],{"class":591},[555,11911,2724],{"class":565},[555,11913,4285],{"class":591},[555,11915,11916,11919,11921,11923,11925],{"class":557,"line":613},[555,11917,11918],{"class":757},"    by",[555,11920,761],{"class":591},[555,11922,764],{"class":591},[555,11924,2724],{"class":565},[555,11926,4285],{"class":591},[555,11928,11929],{"class":557,"line":621},[555,11930,11931],{"class":757},"    multiple\n",[555,11933,11934,11937,11939,11941,11944],{"class":557,"line":629},[555,11935,11936],{"class":757},"    :display-value",[555,11938,761],{"class":591},[555,11940,764],{"class":591},[555,11942,11943],{"class":565},"(v) => v.label",[555,11945,4285],{"class":591},[555,11947,11948,11951,11953,11955,11958],{"class":557,"line":637},[555,11949,11950],{"class":757},"    :is-error",[555,11952,761],{"class":591},[555,11954,764],{"class":591},[555,11956,11957],{"class":565},"isError",[555,11959,4285],{"class":591},[555,11961,11962],{"class":557,"line":645},[555,11963,9188],{"class":591},[555,11965,11966,11968,11971],{"class":557,"line":653},[555,11967,776],{"class":591},[555,11969,11970],{"class":742},"admin-select-anchor",[555,11972,746],{"class":591},[555,11974,11975,11977,11980],{"class":557,"line":661},[555,11976,806],{"class":591},[555,11978,11979],{"class":742},"admin-select-trigger",[555,11981,746],{"class":591},[555,11983,11984,11986,11989],{"class":557,"line":669},[555,11985,816],{"class":591},[555,11987,11988],{"class":742},"admin-select-tags",[555,11990,1453],{"class":591},[555,11992,11993,11995,11998,12000,12002,12004,12006,12008],{"class":557,"line":905},[555,11994,816],{"class":591},[555,11996,11997],{"class":742},"admin-select-value",[555,11999,4868],{"class":757},[555,12001,761],{"class":591},[555,12003,764],{"class":591},[555,12005,1803],{"class":565},[555,12007,764],{"class":591},[555,12009,1453],{"class":591},[555,12011,12012,12014,12017],{"class":557,"line":914},[555,12013,816],{"class":591},[555,12015,12016],{"class":742},"admin-select-counter",[555,12018,1453],{"class":591},[555,12020,12021,12023,12026],{"class":557,"line":924},[555,12022,816],{"class":591},[555,12024,12025],{"class":742},"admin-select-icon",[555,12027,1453],{"class":591},[555,12029,12030,12032,12034],{"class":557,"line":934},[555,12031,853],{"class":591},[555,12033,11979],{"class":742},[555,12035,746],{"class":591},[555,12037,12038,12040,12042],{"class":557,"line":3540},[555,12039,917],{"class":591},[555,12041,11970],{"class":742},[555,12043,746],{"class":591},[555,12045,12046,12048,12051],{"class":557,"line":4426},[555,12047,776],{"class":591},[555,12049,12050],{"class":742},"admin-select-list",[555,12052,746],{"class":591},[555,12054,12055,12057,12060,12062,12064,12066,12068,12070],{"class":557,"line":6198},[555,12056,806],{"class":591},[555,12058,12059],{"class":742},"admin-select-input",[555,12061,4868],{"class":757},[555,12063,761],{"class":591},[555,12065,764],{"class":591},[555,12067,1803],{"class":565},[555,12069,764],{"class":591},[555,12071,746],{"class":591},[555,12073,12074,12076,12079],{"class":557,"line":6208},[555,12075,816],{"class":591},[555,12077,12078],{"class":742},"admin-select-cancel",[555,12080,1453],{"class":591},[555,12082,12083,12085,12087],{"class":557,"line":6227},[555,12084,853],{"class":591},[555,12086,12059],{"class":742},[555,12088,746],{"class":591},[555,12090,12091,12093,12096],{"class":557,"line":6237},[555,12092,806],{"class":591},[555,12094,12095],{"class":742},"admin-select-viewport",[555,12097,746],{"class":591},[555,12099,12100,12102,12105,12107,12110,12112,12114],{"class":557,"line":6246},[555,12101,816],{"class":591},[555,12103,12104],{"class":742},"admin-select-empty",[555,12106,782],{"class":591},[555,12108,12109],{"class":598},"無結果",[555,12111,788],{"class":591},[555,12113,12104],{"class":742},[555,12115,746],{"class":591},[555,12117,12118,12120,12123,12126,12128,12130,12132,12134],{"class":557,"line":6255},[555,12119,816],{"class":591},[555,12121,12122],{"class":742},"admin-select-group",[555,12124,12125],{"class":757}," heading",[555,12127,761],{"class":591},[555,12129,764],{"class":591},[555,12131,6002],{"class":565},[555,12133,764],{"class":591},[555,12135,746],{"class":591},[555,12137,12138,12140,12143,12145,12147,12149,12152,12154,12156,12158,12160,12163,12165,12167,12169,12171,12174,12176],{"class":557,"line":524},[555,12139,6211],{"class":591},[555,12141,12142],{"class":742},"admin-select-item",[555,12144,2891],{"class":757},[555,12146,761],{"class":591},[555,12148,764],{"class":591},[555,12150,12151],{"class":565},"o in options",[555,12153,764],{"class":591},[555,12155,2903],{"class":757},[555,12157,761],{"class":591},[555,12159,764],{"class":591},[555,12161,12162],{"class":565},"o.value",[555,12164,764],{"class":591},[555,12166,2924],{"class":757},[555,12168,761],{"class":591},[555,12170,764],{"class":591},[555,12172,12173],{"class":565},"o",[555,12175,764],{"class":591},[555,12177,746],{"class":591},[555,12179,12180],{"class":557,"line":6868},[555,12181,12182],{"class":598},"            {{ o.label }}\n",[555,12184,12185,12188,12190],{"class":557,"line":6877},[555,12186,12187],{"class":591},"          \u003C\u002F",[555,12189,12142],{"class":742},[555,12191,746],{"class":591},[555,12193,12194,12196,12198],{"class":557,"line":6898},[555,12195,6230],{"class":591},[555,12197,12122],{"class":742},[555,12199,746],{"class":591},[555,12201,12202,12204,12207],{"class":557,"line":6907},[555,12203,816],{"class":591},[555,12205,12206],{"class":742},"admin-select-separator",[555,12208,1453],{"class":591},[555,12210,12211,12213,12215],{"class":557,"line":6916},[555,12212,853],{"class":591},[555,12214,12095],{"class":742},[555,12216,746],{"class":591},[555,12218,12219,12221,12223],{"class":557,"line":6925},[555,12220,917],{"class":591},[555,12222,12050],{"class":742},[555,12224,746],{"class":591},[555,12226,12228,12230,12232],{"class":557,"line":12227},31,[555,12229,927],{"class":591},[555,12231,5929],{"class":742},[555,12233,746],{"class":591},[555,12235,12237,12239,12241],{"class":557,"line":12236},32,[555,12238,788],{"class":591},[555,12240,743],{"class":742},[555,12242,746],{"class":591},[696,12244,5929],{"id":5929},[944,12246],{"component":11826},[696,12248,11970],{"id":11970},[944,12250],{"component":12251},"AdminSelectAnchor",[696,12253,11979],{"id":11979},[944,12255],{"component":12256},"AdminSelectTrigger",[696,12258,11997],{"id":11997},[944,12260],{"component":12261},"AdminSelectValue",[696,12263,12025],{"id":12025},[944,12265],{"component":12266},"AdminSelectIcon",[696,12268,12050],{"id":12050},[944,12270],{"component":12271},"AdminSelectList",[696,12273,12095],{"id":12095},[944,12275],{"component":12276},"AdminSelectViewport",[696,12278,12059],{"id":12059},[944,12280],{"component":12281},"AdminSelectInput",[696,12283,12078],{"id":12078},[944,12285],{"component":12286},"AdminSelectCancel",[696,12288,12104],{"id":12104},[944,12290],{"component":12291},"AdminSelectEmpty",[696,12293,12122],{"id":12122},[944,12295],{"component":12296},"AdminSelectGroup",[696,12298,12142],{"id":12142},[944,12300],{"component":12301},"AdminSelectItem",[696,12303,12304],{"id":12304},"admin-select-item-indicator",[944,12306],{"component":12307},"AdminSelectItemIndicator",[696,12309,12206],{"id":12206},[944,12311],{"component":12312},"AdminSelectSeparator",[696,12314,11988],{"id":11988},[944,12316],{"component":12317},"AdminSelectTags",[696,12319,12016],{"id":12016},[944,12321],{"component":12322},"AdminSelectCounter",[540,12324,1560],{"id":1560},[1562,12326,12327,12340,12360,12379,12394],{},[1565,12328,12329,12336,12337,12339],{},[1139,12330,12331,12332,12335],{},"trigger 需以 ",[552,12333,12334],{},"\u003Cadmin-select-anchor>"," 包覆","：anchor 為 popper 定位錨點，list 的展開位置與寬度以 anchor 為參考；欲設定下拉寬度請把寬度 class 下在 ",[552,12338,12334],{}," 上。",[1565,12341,12342,2470,12345,12348,12349,12352,12353,12356,12357,12359],{},[1139,12343,12344],{},"搜尋輸入固定於 list 頂部",[552,12346,12347],{},"\u003Cadmin-select-input>"," 放在 ",[552,12350,12351],{},"\u003Cadmin-select-list>"," 內、",[552,12354,12355],{},"\u003Cadmin-select-viewport>"," 之外時會固定不隨清單捲動；item 清單放入 ",[552,12358,12355],{}," 提供捲動。",[1565,12361,12362,2470,12368,12370,12371,12374,12375,12378],{},[1139,12363,12364,12365],{},"物件 value 請設 ",[552,12366,12367],{},"by",[552,12369,2728],{}," 綁 option 物件時，建議 ",[552,12372,12373],{},"by=\"value\"","（或自訂比較函式），並以 ",[552,12376,12377],{},":display-value"," 決定 trigger／tags 文案。",[1565,12380,12381,12387,12388,12390,12391,717],{},[1139,12382,12383,12384],{},"單選的 ",[552,12385,12386],{},"deselectable","：預設 ",[552,12389,2746],{},"，再次點擊已選項目會清空選擇並關閉下拉；不需此行為時於 root 設 ",[552,12392,12393],{},"deselectable=false",[1565,12395,12396,12399,12400,7627,12403,12406,12407,12410],{},[1139,12397,12398],{},"搜尋過濾的 label 來源","：過濾依據是每顆 ",[552,12401,12402],{},"\u003Cadmin-select-item>",[552,12404,12405],{},"textContent","；若 item 內嵌入 icon \u002F 圖片等非文字節點，建議透過 ",[552,12408,12409],{},"text-value"," prop 顯式指定可被過濾的字串。",[540,12412,989],{"id":989},[991,12414],{"component":11826},[994,12416,996],{},{"title":550,"searchDepth":605,"depth":605,"links":12418},[12419,12420,12421,12427,12428,12447,12448],{"id":507,"depth":595,"text":507},{"id":687,"depth":595,"text":687},{"id":694,"depth":595,"text":694,"children":12422},[12423,12424,12425,12426],{"id":11796,"depth":605,"text":11796},{"id":11802,"depth":605,"text":11802},{"id":2759,"depth":605,"text":2759},{"id":11813,"depth":605,"text":11813},{"id":2765,"depth":595,"text":2766},{"id":723,"depth":595,"text":724,"children":12429},[12430,12431,12432,12433,12434,12435,12436,12437,12438,12439,12440,12441,12442,12443,12444,12445,12446],{"id":727,"depth":605,"text":727},{"id":5929,"depth":605,"text":5929},{"id":11970,"depth":605,"text":11970},{"id":11979,"depth":605,"text":11979},{"id":11997,"depth":605,"text":11997},{"id":12025,"depth":605,"text":12025},{"id":12050,"depth":605,"text":12050},{"id":12095,"depth":605,"text":12095},{"id":12059,"depth":605,"text":12059},{"id":12078,"depth":605,"text":12078},{"id":12104,"depth":605,"text":12104},{"id":12122,"depth":605,"text":12122},{"id":12142,"depth":605,"text":12142},{"id":12304,"depth":605,"text":12304},{"id":12206,"depth":605,"text":12206},{"id":11988,"depth":605,"text":11988},{"id":12016,"depth":605,"text":12016},{"id":1560,"depth":595,"text":1560},{"id":989,"depth":595,"text":989},"下拉選擇器。單選／多選、選項搜尋、tag 顯示、自訂選項渲染。",{"doc":12451,"api":12452},"https:\u002F\u002Freka-ui.com\u002Fdocs\u002Fcomponents\u002Fcombobox","https:\u002F\u002Freka-ui.com\u002Fdocs\u002Fcomponents\u002Fcombobox#api-reference",{},{"title":125,"description":12449},"IjMFnDd99HhnKZsT1Eca1jrv_DbyJByW5tuc5Gs0WTA",{"id":12457,"title":129,"body":12458,"component":526,"description":13100,"extension":1019,"links":13101,"meta":13103,"navigation":526,"new":18,"path":130,"seo":13104,"stem":131,"wrapperKind":19,"__hash__":13105},"docs\u002Fdocs\u002Fadmin\u002Fside-menu.md",{"type":537,"value":12459,"toc":13063},[12460,12462,12480,12679,12681,12692,12695,12697,12700,12703,12706,12709,12712,12715,12744,12747,12749,12751,12923,12925,12928,12930,12933,12935,12938,12940,12943,12945,12948,12950,12953,12956,12959,12961,12964,12967,12970,12973,12976,12979,12982,12984,12987,12989,12992,12994,12997,13000,13003,13006,13009,13012,13015,13018,13021,13024,13027,13030,13033,13036,13039,13042,13045,13048,13051,13054,13057,13059,13061],[540,12461,507],{"id":507},[543,12463,12465],{"className":545,"code":12464,"filename":547,"language":548,"meta":549,"style":550},"pnpm dlx shadcn-vue add @admin\u002Fside-menu\n",[552,12466,12467],{"__ignoreMap":550},[555,12468,12469,12471,12473,12475,12477],{"class":557,"line":558},[555,12470,562],{"class":561},[555,12472,566],{"class":565},[555,12474,569],{"class":565},[555,12476,572],{"class":565},[555,12478,12479],{"class":565}," @admin\u002Fside-menu\n",[543,12481,12483],{"className":578,"code":12482,"language":580,"meta":550,"style":550},"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",[552,12484,12485,12491,12498,12505,12512,12519,12526,12533,12540,12547,12554,12561,12568,12575,12582,12589,12596,12603,12610,12617,12624,12631,12638,12645,12652,12659,12666],{"__ignoreMap":550},[555,12486,12487,12489],{"class":557,"line":558},[555,12488,588],{"class":587},[555,12490,592],{"class":591},[555,12492,12493,12496],{"class":557,"line":595},[555,12494,12495],{"class":598},"  AdminSideMenu",[555,12497,602],{"class":591},[555,12499,12500,12503],{"class":557,"line":605},[555,12501,12502],{"class":598},"  AdminSideMenuContent",[555,12504,602],{"class":591},[555,12506,12507,12510],{"class":557,"line":613},[555,12508,12509],{"class":598},"  AdminSideMenuFooter",[555,12511,602],{"class":591},[555,12513,12514,12517],{"class":557,"line":621},[555,12515,12516],{"class":598},"  AdminSideMenuGroup",[555,12518,602],{"class":591},[555,12520,12521,12524],{"class":557,"line":629},[555,12522,12523],{"class":598},"  AdminSideMenuGroupAction",[555,12525,602],{"class":591},[555,12527,12528,12531],{"class":557,"line":637},[555,12529,12530],{"class":598},"  AdminSideMenuGroupContent",[555,12532,602],{"class":591},[555,12534,12535,12538],{"class":557,"line":645},[555,12536,12537],{"class":598},"  AdminSideMenuGroupLabel",[555,12539,602],{"class":591},[555,12541,12542,12545],{"class":557,"line":653},[555,12543,12544],{"class":598},"  AdminSideMenuHeader",[555,12546,602],{"class":591},[555,12548,12549,12552],{"class":557,"line":661},[555,12550,12551],{"class":598},"  AdminSideMenuInput",[555,12553,602],{"class":591},[555,12555,12556,12559],{"class":557,"line":669},[555,12557,12558],{"class":598},"  AdminSideMenuInset",[555,12560,602],{"class":591},[555,12562,12563,12566],{"class":557,"line":905},[555,12564,12565],{"class":598},"  AdminSideMenuList",[555,12567,602],{"class":591},[555,12569,12570,12573],{"class":557,"line":914},[555,12571,12572],{"class":598},"  AdminSideMenuListAction",[555,12574,602],{"class":591},[555,12576,12577,12580],{"class":557,"line":924},[555,12578,12579],{"class":598},"  AdminSideMenuListBadge",[555,12581,602],{"class":591},[555,12583,12584,12587],{"class":557,"line":934},[555,12585,12586],{"class":598},"  AdminSideMenuListButton",[555,12588,602],{"class":591},[555,12590,12591,12594],{"class":557,"line":3540},[555,12592,12593],{"class":598},"  AdminSideMenuListButtonChild",[555,12595,602],{"class":591},[555,12597,12598,12601],{"class":557,"line":4426},[555,12599,12600],{"class":598},"  AdminSideMenuListItem",[555,12602,602],{"class":591},[555,12604,12605,12608],{"class":557,"line":6198},[555,12606,12607],{"class":598},"  AdminSideMenuListSkeleton",[555,12609,602],{"class":591},[555,12611,12612,12615],{"class":557,"line":6208},[555,12613,12614],{"class":598},"  AdminSideMenuListSub",[555,12616,602],{"class":591},[555,12618,12619,12622],{"class":557,"line":6227},[555,12620,12621],{"class":598},"  AdminSideMenuListSubButton",[555,12623,602],{"class":591},[555,12625,12626,12629],{"class":557,"line":6237},[555,12627,12628],{"class":598},"  AdminSideMenuListSubItem",[555,12630,602],{"class":591},[555,12632,12633,12636],{"class":557,"line":6246},[555,12634,12635],{"class":598},"  AdminSideMenuProvider",[555,12637,602],{"class":591},[555,12639,12640,12643],{"class":557,"line":6255},[555,12641,12642],{"class":598},"  AdminSideMenuRail",[555,12644,602],{"class":591},[555,12646,12647,12650],{"class":557,"line":524},[555,12648,12649],{"class":598},"  AdminSideMenuSeparator",[555,12651,602],{"class":591},[555,12653,12654,12657],{"class":557,"line":6868},[555,12655,12656],{"class":598},"  AdminSideMenuTrigger",[555,12658,602],{"class":591},[555,12660,12661,12664],{"class":557,"line":6877},[555,12662,12663],{"class":598},"  useSideMenu",[555,12665,602],{"class":591},[555,12667,12668,12670,12672,12674,12677],{"class":557,"line":6898},[555,12669,672],{"class":591},[555,12671,675],{"class":587},[555,12673,678],{"class":591},[555,12675,12676],{"class":565},"@\u002Fcomponents\u002Fadmin\u002Fside-menu",[555,12678,684],{"class":591},[540,12680,687],{"id":687},[709,12682,12683,12684,12687,12688,12691],{},"外層需先以 ",[552,12685,12686],{},"admin-side-menu-provider"," 提供 context，再以 ",[552,12689,12690],{},"admin-side-menu"," 結合 group \u002F list \u002F item \u002F button 組合導覽結構。",[689,12693],{"name":12694},"SideMenuDemo",[540,12696,694],{"id":694},[696,12698,12699],{"id":12699},"基本結構",[689,12701],{"name":12702},"SideMenuStructureDemo",[696,12704,12705],{"id":12705},"完整組成",[709,12707,12708],{},"header／footer／group-label／group-action／list-badge／list-action／separator／input／skeleton。",[689,12710],{"name":12711},"SideMenuFullDemo",[696,12713,12714],{"id":12714},"變體與收合",[709,12716,12717,2470,12719,2474,12721,2474,12724,2481,12727,2470,12730,2474,12733,12736,12737,4163,12740,12743],{},[552,12718,2469],{},[552,12720,4240],{},[552,12722,12723],{},"floating",[552,12725,12726],{},"inset",[552,12728,12729],{},"collapsible",[552,12731,12732],{},"icon",[552,12734,12735],{},"offcanvas","。以 ",[552,12738,12739],{},"admin-side-menu-trigger",[552,12741,12742],{},"admin-side-menu-rail"," 切換展開／收合。",[689,12745],{"name":12746},"SideMenuVariantsDemo",[540,12748,724],{"id":723},[696,12750,727],{"id":727},[543,12752,12754],{"className":730,"code":12753,"language":732,"meta":550,"style":550},"\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",[552,12755,12756,12764,12772,12780,12789,12798,12807,12817,12836,12845,12853,12861,12869,12877,12886,12894,12899,12907,12915],{"__ignoreMap":550},[555,12757,12758,12760,12762],{"class":557,"line":558},[555,12759,739],{"class":591},[555,12761,743],{"class":742},[555,12763,746],{"class":591},[555,12765,12766,12768,12770],{"class":557,"line":595},[555,12767,751],{"class":591},[555,12769,12686],{"class":742},[555,12771,746],{"class":591},[555,12773,12774,12776,12778],{"class":557,"line":605},[555,12775,776],{"class":591},[555,12777,12690],{"class":742},[555,12779,746],{"class":591},[555,12781,12782,12784,12787],{"class":557,"line":613},[555,12783,806],{"class":591},[555,12785,12786],{"class":742},"admin-side-menu-content",[555,12788,746],{"class":591},[555,12790,12791,12793,12796],{"class":557,"line":621},[555,12792,816],{"class":591},[555,12794,12795],{"class":742},"admin-side-menu-group",[555,12797,746],{"class":591},[555,12799,12800,12802,12805],{"class":557,"line":629},[555,12801,6211],{"class":591},[555,12803,12804],{"class":742},"admin-side-menu-list",[555,12806,746],{"class":591},[555,12808,12809,12812,12815],{"class":557,"line":637},[555,12810,12811],{"class":591},"            \u003C",[555,12813,12814],{"class":742},"admin-side-menu-list-item",[555,12816,746],{"class":591},[555,12818,12819,12822,12825,12827,12830,12832,12834],{"class":557,"line":645},[555,12820,12821],{"class":591},"              \u003C",[555,12823,12824],{"class":742},"admin-side-menu-list-button",[555,12826,782],{"class":591},[555,12828,12829],{"class":598},"導覽項目",[555,12831,788],{"class":591},[555,12833,12824],{"class":742},[555,12835,746],{"class":591},[555,12837,12838,12841,12843],{"class":557,"line":653},[555,12839,12840],{"class":591},"            \u003C\u002F",[555,12842,12814],{"class":742},[555,12844,746],{"class":591},[555,12846,12847,12849,12851],{"class":557,"line":661},[555,12848,12187],{"class":591},[555,12850,12804],{"class":742},[555,12852,746],{"class":591},[555,12854,12855,12857,12859],{"class":557,"line":669},[555,12856,6230],{"class":591},[555,12858,12795],{"class":742},[555,12860,746],{"class":591},[555,12862,12863,12865,12867],{"class":557,"line":905},[555,12864,853],{"class":591},[555,12866,12786],{"class":742},[555,12868,746],{"class":591},[555,12870,12871,12873,12875],{"class":557,"line":914},[555,12872,917],{"class":591},[555,12874,12690],{"class":742},[555,12876,746],{"class":591},[555,12878,12879,12881,12884],{"class":557,"line":924},[555,12880,776],{"class":591},[555,12882,12883],{"class":742},"admin-side-menu-inset",[555,12885,746],{"class":591},[555,12887,12888,12890,12892],{"class":557,"line":934},[555,12889,806],{"class":591},[555,12891,12739],{"class":742},[555,12893,1453],{"class":591},[555,12895,12896],{"class":557,"line":3540},[555,12897,12898],{"class":598},"      主內容\n",[555,12900,12901,12903,12905],{"class":557,"line":4426},[555,12902,917],{"class":591},[555,12904,12883],{"class":742},[555,12906,746],{"class":591},[555,12908,12909,12911,12913],{"class":557,"line":6198},[555,12910,927],{"class":591},[555,12912,12686],{"class":742},[555,12914,746],{"class":591},[555,12916,12917,12919,12921],{"class":557,"line":6208},[555,12918,788],{"class":591},[555,12920,743],{"class":742},[555,12922,746],{"class":591},[696,12924,12690],{"id":12690},[944,12926],{"component":12927},"AdminSideMenu",[696,12929,12786],{"id":12786},[944,12931],{"component":12932},"AdminSideMenuContent",[696,12934,12795],{"id":12795},[944,12936],{"component":12937},"AdminSideMenuGroup",[696,12939,12883],{"id":12883},[944,12941],{"component":12942},"AdminSideMenuInset",[696,12944,12804],{"id":12804},[944,12946],{"component":12947},"AdminSideMenuList",[696,12949,12824],{"id":12824},[944,12951],{"component":12952},"AdminSideMenuListButton",[696,12954,12955],{"id":12955},"admin-side-menu-list-button-child",[944,12957],{"component":12958},"AdminSideMenuListButtonChild",[696,12960,12814],{"id":12814},[944,12962],{"component":12963},"AdminSideMenuListItem",[696,12965,12966],{"id":12966},"admin-side-menu-list-sub",[944,12968],{"component":12969},"AdminSideMenuListSub",[696,12971,12972],{"id":12972},"admin-side-menu-list-sub-button",[944,12974],{"component":12975},"AdminSideMenuListSubButton",[696,12977,12978],{"id":12978},"admin-side-menu-list-sub-item",[944,12980],{"component":12981},"AdminSideMenuListSubItem",[696,12983,12686],{"id":12686},[944,12985],{"component":12986},"AdminSideMenuProvider",[696,12988,12739],{"id":12739},[944,12990],{"component":12991},"AdminSideMenuTrigger",[696,12993,12742],{"id":12742},[944,12995],{"component":12996},"AdminSideMenuRail",[696,12998,12999],{"id":12999},"admin-side-menu-header",[944,13001],{"component":13002},"AdminSideMenuHeader",[696,13004,13005],{"id":13005},"admin-side-menu-footer",[944,13007],{"component":13008},"AdminSideMenuFooter",[696,13010,13011],{"id":13011},"admin-side-menu-group-label",[944,13013],{"component":13014},"AdminSideMenuGroupLabel",[696,13016,13017],{"id":13017},"admin-side-menu-group-content",[944,13019],{"component":13020},"AdminSideMenuGroupContent",[696,13022,13023],{"id":13023},"admin-side-menu-group-action",[944,13025],{"component":13026},"AdminSideMenuGroupAction",[696,13028,13029],{"id":13029},"admin-side-menu-list-action",[944,13031],{"component":13032},"AdminSideMenuListAction",[696,13034,13035],{"id":13035},"admin-side-menu-list-badge",[944,13037],{"component":13038},"AdminSideMenuListBadge",[696,13040,13041],{"id":13041},"admin-side-menu-input",[944,13043],{"component":13044},"AdminSideMenuInput",[696,13046,13047],{"id":13047},"admin-side-menu-separator",[944,13049],{"component":13050},"AdminSideMenuSeparator",[696,13052,13053],{"id":13053},"admin-side-menu-list-skeleton",[944,13055],{"component":13056},"AdminSideMenuListSkeleton",[540,13058,989],{"id":989},[991,13060],{"component":12927},[994,13062,2023],{},{"title":550,"searchDepth":605,"depth":605,"links":13064},[13065,13066,13067,13072,13099],{"id":507,"depth":595,"text":507},{"id":687,"depth":595,"text":687},{"id":694,"depth":595,"text":694,"children":13068},[13069,13070,13071],{"id":12699,"depth":605,"text":12699},{"id":12705,"depth":605,"text":12705},{"id":12714,"depth":605,"text":12714},{"id":723,"depth":595,"text":724,"children":13073},[13074,13075,13076,13077,13078,13079,13080,13081,13082,13083,13084,13085,13086,13087,13088,13089,13090,13091,13092,13093,13094,13095,13096,13097,13098],{"id":727,"depth":605,"text":727},{"id":12690,"depth":605,"text":12690},{"id":12786,"depth":605,"text":12786},{"id":12795,"depth":605,"text":12795},{"id":12883,"depth":605,"text":12883},{"id":12804,"depth":605,"text":12804},{"id":12824,"depth":605,"text":12824},{"id":12955,"depth":605,"text":12955},{"id":12814,"depth":605,"text":12814},{"id":12966,"depth":605,"text":12966},{"id":12972,"depth":605,"text":12972},{"id":12978,"depth":605,"text":12978},{"id":12686,"depth":605,"text":12686},{"id":12739,"depth":605,"text":12739},{"id":12742,"depth":605,"text":12742},{"id":12999,"depth":605,"text":12999},{"id":13005,"depth":605,"text":13005},{"id":13011,"depth":605,"text":13011},{"id":13017,"depth":605,"text":13017},{"id":13023,"depth":605,"text":13023},{"id":13029,"depth":605,"text":13029},{"id":13035,"depth":605,"text":13035},{"id":13041,"depth":605,"text":13041},{"id":13047,"depth":605,"text":13047},{"id":13053,"depth":605,"text":13053},{"id":989,"depth":595,"text":989},"後台側邊導覽。展開／收合、分組、巢狀子項目、行動裝置抽屜。",{"doc":13102},"https:\u002F\u002Fwww.shadcn-vue.com\u002Fdocs\u002Fcomponents\u002Fsidebar",{},{"title":129,"description":13100},"p0ZIeYXY3zkCbZRvSSO6bqmzckkKgbvFJYvshowJTdE",{"id":13107,"title":133,"body":13108,"component":526,"description":13553,"extension":1019,"links":13554,"meta":13557,"navigation":526,"new":18,"path":134,"seo":13558,"stem":135,"wrapperKind":19,"__hash__":13559},"docs\u002Fdocs\u002Fadmin\u002Fstepper.md",{"type":537,"value":13109,"toc":13533},[13110,13112,13130,13203,13205,13208,13210,13213,13216,13219,13222,13225,13228,13230,13232,13492,13494,13497,13499,13502,13504,13507,13509,13512,13514,13517,13519,13522,13524,13527,13529,13531],[540,13111,507],{"id":507},[543,13113,13115],{"className":545,"code":13114,"filename":547,"language":548,"meta":549,"style":550},"pnpm dlx shadcn-vue add @admin\u002Fstepper\n",[552,13116,13117],{"__ignoreMap":550},[555,13118,13119,13121,13123,13125,13127],{"class":557,"line":558},[555,13120,562],{"class":561},[555,13122,566],{"class":565},[555,13124,569],{"class":565},[555,13126,572],{"class":565},[555,13128,13129],{"class":565}," @admin\u002Fstepper\n",[543,13131,13133],{"className":578,"code":13132,"language":580,"meta":550,"style":550},"import {\n  AdminStepper,\n  AdminStepperDescription,\n  AdminStepperIndicator,\n  AdminStepperItem,\n  AdminStepperSeparator,\n  AdminStepperTitle,\n  AdminStepperTrigger,\n} from '@\u002Fcomponents\u002Fadmin\u002Fstepper'\n",[552,13134,13135,13141,13148,13155,13162,13169,13176,13183,13190],{"__ignoreMap":550},[555,13136,13137,13139],{"class":557,"line":558},[555,13138,588],{"class":587},[555,13140,592],{"class":591},[555,13142,13143,13146],{"class":557,"line":595},[555,13144,13145],{"class":598},"  AdminStepper",[555,13147,602],{"class":591},[555,13149,13150,13153],{"class":557,"line":605},[555,13151,13152],{"class":598},"  AdminStepperDescription",[555,13154,602],{"class":591},[555,13156,13157,13160],{"class":557,"line":613},[555,13158,13159],{"class":598},"  AdminStepperIndicator",[555,13161,602],{"class":591},[555,13163,13164,13167],{"class":557,"line":621},[555,13165,13166],{"class":598},"  AdminStepperItem",[555,13168,602],{"class":591},[555,13170,13171,13174],{"class":557,"line":629},[555,13172,13173],{"class":598},"  AdminStepperSeparator",[555,13175,602],{"class":591},[555,13177,13178,13181],{"class":557,"line":637},[555,13179,13180],{"class":598},"  AdminStepperTitle",[555,13182,602],{"class":591},[555,13184,13185,13188],{"class":557,"line":645},[555,13186,13187],{"class":598},"  AdminStepperTrigger",[555,13189,602],{"class":591},[555,13191,13192,13194,13196,13198,13201],{"class":557,"line":653},[555,13193,672],{"class":591},[555,13195,675],{"class":587},[555,13197,678],{"class":591},[555,13199,13200],{"class":565},"@\u002Fcomponents\u002Fadmin\u002Fstepper",[555,13202,684],{"class":591},[540,13204,687],{"id":687},[689,13206],{"name":13207},"StepperDemo",[540,13209,694],{"id":694},[696,13211,13212],{"id":13212},"線性三步驟",[689,13214],{"name":13215},"StepperLinearDemo",[696,13217,13218],{"id":13218},"停用尚未開放的步驟",[689,13220],{"name":13221},"StepperDisabledDemo",[696,13223,13224],{"id":13224},"步驟附說明文字",[689,13226],{"name":13227},"StepperDescriptionDemo",[540,13229,724],{"id":723},[696,13231,727],{"id":727},[543,13233,13235],{"className":730,"code":13234,"language":732,"meta":550,"style":550},"\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",[552,13236,13237,13245,13264,13284,13293,13310,13331,13349,13367,13375,13383,13391,13400,13419,13427,13443,13460,13468,13476,13484],{"__ignoreMap":550},[555,13238,13239,13241,13243],{"class":557,"line":558},[555,13240,739],{"class":591},[555,13242,743],{"class":742},[555,13244,746],{"class":591},[555,13246,13247,13249,13251,13253,13255,13257,13260,13262],{"class":557,"line":595},[555,13248,751],{"class":591},[555,13250,4140],{"class":742},[555,13252,2871],{"class":757},[555,13254,761],{"class":591},[555,13256,764],{"class":591},[555,13258,13259],{"class":565},"currentStep",[555,13261,764],{"class":591},[555,13263,746],{"class":591},[555,13265,13266,13268,13271,13274,13276,13278,13280,13282],{"class":557,"line":605},[555,13267,776],{"class":591},[555,13269,13270],{"class":742},"admin-stepper-item",[555,13272,13273],{"class":757}," :step",[555,13275,761],{"class":591},[555,13277,764],{"class":591},[555,13279,1641],{"class":565},[555,13281,764],{"class":591},[555,13283,746],{"class":591},[555,13285,13286,13288,13291],{"class":557,"line":613},[555,13287,806],{"class":591},[555,13289,13290],{"class":742},"admin-stepper-trigger",[555,13292,746],{"class":591},[555,13294,13295,13297,13300,13302,13304,13306,13308],{"class":557,"line":621},[555,13296,816],{"class":591},[555,13298,13299],{"class":742},"admin-stepper-indicator",[555,13301,782],{"class":591},[555,13303,1641],{"class":598},[555,13305,788],{"class":591},[555,13307,13299],{"class":742},[555,13309,746],{"class":591},[555,13311,13312,13314,13317,13320,13322,13324,13327,13329],{"class":557,"line":629},[555,13313,816],{"class":591},[555,13315,13316],{"class":742},"div",[555,13318,13319],{"class":757}," class",[555,13321,761],{"class":591},[555,13323,764],{"class":591},[555,13325,13326],{"class":565},"flex flex-col items-start",[555,13328,764],{"class":591},[555,13330,746],{"class":591},[555,13332,13333,13335,13338,13340,13343,13345,13347],{"class":557,"line":637},[555,13334,6211],{"class":591},[555,13336,13337],{"class":742},"admin-stepper-title",[555,13339,782],{"class":591},[555,13341,13342],{"class":598},"步驟一",[555,13344,788],{"class":591},[555,13346,13337],{"class":742},[555,13348,746],{"class":591},[555,13350,13351,13353,13356,13358,13361,13363,13365],{"class":557,"line":645},[555,13352,6211],{"class":591},[555,13354,13355],{"class":742},"admin-stepper-description",[555,13357,782],{"class":591},[555,13359,13360],{"class":598},"建立登入資訊",[555,13362,788],{"class":591},[555,13364,13355],{"class":742},[555,13366,746],{"class":591},[555,13368,13369,13371,13373],{"class":557,"line":653},[555,13370,6230],{"class":591},[555,13372,13316],{"class":742},[555,13374,746],{"class":591},[555,13376,13377,13379,13381],{"class":557,"line":661},[555,13378,853],{"class":591},[555,13380,13290],{"class":742},[555,13382,746],{"class":591},[555,13384,13385,13387,13389],{"class":557,"line":669},[555,13386,917],{"class":591},[555,13388,13270],{"class":742},[555,13390,746],{"class":591},[555,13392,13393,13395,13398],{"class":557,"line":905},[555,13394,776],{"class":591},[555,13396,13397],{"class":742},"admin-stepper-separator",[555,13399,1453],{"class":591},[555,13401,13402,13404,13406,13408,13410,13412,13415,13417],{"class":557,"line":914},[555,13403,776],{"class":591},[555,13405,13270],{"class":742},[555,13407,13273],{"class":757},[555,13409,761],{"class":591},[555,13411,764],{"class":591},[555,13413,13414],{"class":565},"2",[555,13416,764],{"class":591},[555,13418,746],{"class":591},[555,13420,13421,13423,13425],{"class":557,"line":924},[555,13422,806],{"class":591},[555,13424,13290],{"class":742},[555,13426,746],{"class":591},[555,13428,13429,13431,13433,13435,13437,13439,13441],{"class":557,"line":934},[555,13430,816],{"class":591},[555,13432,13299],{"class":742},[555,13434,782],{"class":591},[555,13436,13414],{"class":598},[555,13438,788],{"class":591},[555,13440,13299],{"class":742},[555,13442,746],{"class":591},[555,13444,13445,13447,13449,13451,13454,13456,13458],{"class":557,"line":3540},[555,13446,816],{"class":591},[555,13448,13337],{"class":742},[555,13450,782],{"class":591},[555,13452,13453],{"class":598},"步驟二",[555,13455,788],{"class":591},[555,13457,13337],{"class":742},[555,13459,746],{"class":591},[555,13461,13462,13464,13466],{"class":557,"line":4426},[555,13463,853],{"class":591},[555,13465,13290],{"class":742},[555,13467,746],{"class":591},[555,13469,13470,13472,13474],{"class":557,"line":6198},[555,13471,917],{"class":591},[555,13473,13270],{"class":742},[555,13475,746],{"class":591},[555,13477,13478,13480,13482],{"class":557,"line":6208},[555,13479,927],{"class":591},[555,13481,4140],{"class":742},[555,13483,746],{"class":591},[555,13485,13486,13488,13490],{"class":557,"line":6227},[555,13487,788],{"class":591},[555,13489,743],{"class":742},[555,13491,746],{"class":591},[696,13493,4140],{"id":4140},[944,13495],{"component":13496},"AdminStepper",[696,13498,13270],{"id":13270},[944,13500],{"component":13501},"AdminStepperItem",[696,13503,13290],{"id":13290},[944,13505],{"component":13506},"AdminStepperTrigger",[696,13508,13299],{"id":13299},[944,13510],{"component":13511},"AdminStepperIndicator",[696,13513,13337],{"id":13337},[944,13515],{"component":13516},"AdminStepperTitle",[696,13518,13355],{"id":13355},[944,13520],{"component":13521},"AdminStepperDescription",[696,13523,13397],{"id":13397},[944,13525],{"component":13526},"AdminStepperSeparator",[540,13528,989],{"id":989},[991,13530],{"component":13496},[994,13532,996],{},{"title":550,"searchDepth":605,"depth":605,"links":13534},[13535,13536,13537,13542,13552],{"id":507,"depth":595,"text":507},{"id":687,"depth":595,"text":687},{"id":694,"depth":595,"text":694,"children":13538},[13539,13540,13541],{"id":13212,"depth":605,"text":13212},{"id":13218,"depth":605,"text":13218},{"id":13224,"depth":605,"text":13224},{"id":723,"depth":595,"text":724,"children":13543},[13544,13545,13546,13547,13548,13549,13550,13551],{"id":727,"depth":605,"text":727},{"id":4140,"depth":605,"text":4140},{"id":13270,"depth":605,"text":13270},{"id":13290,"depth":605,"text":13290},{"id":13299,"depth":605,"text":13299},{"id":13337,"depth":605,"text":13337},{"id":13355,"depth":605,"text":13355},{"id":13397,"depth":605,"text":13397},{"id":989,"depth":595,"text":989},"多步驟進度指示器。目前步驟與整體流程狀態。",{"doc":13555,"api":13556},"https:\u002F\u002Freka-ui.com\u002Fdocs\u002Fcomponents\u002Fstepper","https:\u002F\u002Freka-ui.com\u002Fdocs\u002Fcomponents\u002Fstepper#api-reference",{},{"title":133,"description":13553},"8r9s3KLnVLpELw2P7pI5D4l5dRbxJksnUvAW13TZx74",{"id":13561,"title":137,"body":13562,"component":526,"description":13694,"extension":1019,"links":13695,"meta":13698,"navigation":526,"new":18,"path":138,"seo":13699,"stem":139,"wrapperKind":19,"__hash__":13700},"docs\u002Fdocs\u002Fadmin\u002Fswitch.md",{"type":537,"value":13563,"toc":13681},[13564,13566,13584,13609,13611,13614,13616,13619,13622,13624,13627,13629,13631,13670,13672,13675,13677,13679],[540,13565,507],{"id":507},[543,13567,13569],{"className":545,"code":13568,"filename":547,"language":548,"meta":549,"style":550},"pnpm dlx shadcn-vue add @admin\u002Fswitch\n",[552,13570,13571],{"__ignoreMap":550},[555,13572,13573,13575,13577,13579,13581],{"class":557,"line":558},[555,13574,562],{"class":561},[555,13576,566],{"class":565},[555,13578,569],{"class":565},[555,13580,572],{"class":565},[555,13582,13583],{"class":565}," @admin\u002Fswitch\n",[543,13585,13587],{"className":578,"code":13586,"language":580,"meta":550,"style":550},"import { AdminSwitch } from '@\u002Fcomponents\u002Fadmin\u002Fswitch'\n",[552,13588,13589],{"__ignoreMap":550},[555,13590,13591,13593,13595,13598,13600,13602,13604,13607],{"class":557,"line":558},[555,13592,588],{"class":587},[555,13594,1277],{"class":591},[555,13596,13597],{"class":598}," AdminSwitch",[555,13599,1283],{"class":591},[555,13601,675],{"class":587},[555,13603,678],{"class":591},[555,13605,13606],{"class":565},"@\u002Fcomponents\u002Fadmin\u002Fswitch",[555,13608,684],{"class":591},[540,13610,687],{"id":687},[689,13612],{"name":13613},"SwitchDemo",[540,13615,694],{"id":694},[696,13617,13618],{"id":13618},"帶文字標籤",[689,13620],{"name":13621},"SwitchLabelDemo",[696,13623,3206],{"id":3206},[689,13625],{"name":13626},"SwitchDisabledDemo",[540,13628,724],{"id":723},[696,13630,727],{"id":727},[543,13632,13634],{"className":730,"code":13633,"language":732,"meta":550,"style":550},"\u003Ctemplate>\n  \u003Cadmin-switch v-model=\"value\" \u002F>\n\u003C\u002Ftemplate>\n",[552,13635,13636,13644,13662],{"__ignoreMap":550},[555,13637,13638,13640,13642],{"class":557,"line":558},[555,13639,739],{"class":591},[555,13641,743],{"class":742},[555,13643,746],{"class":591},[555,13645,13646,13648,13650,13652,13654,13656,13658,13660],{"class":557,"line":595},[555,13647,751],{"class":591},[555,13649,6882],{"class":742},[555,13651,2871],{"class":757},[555,13653,761],{"class":591},[555,13655,764],{"class":591},[555,13657,2724],{"class":565},[555,13659,764],{"class":591},[555,13661,1453],{"class":591},[555,13663,13664,13666,13668],{"class":557,"line":605},[555,13665,788],{"class":591},[555,13667,743],{"class":742},[555,13669,746],{"class":591},[696,13671,6882],{"id":6882},[944,13673],{"component":13674},"AdminSwitch",[540,13676,989],{"id":989},[991,13678],{"component":13674},[994,13680,996],{},{"title":550,"searchDepth":605,"depth":605,"links":13682},[13683,13684,13685,13689,13693],{"id":507,"depth":595,"text":507},{"id":687,"depth":595,"text":687},{"id":694,"depth":595,"text":694,"children":13686},[13687,13688],{"id":13618,"depth":605,"text":13618},{"id":3206,"depth":605,"text":3206},{"id":723,"depth":595,"text":724,"children":13690},[13691,13692],{"id":727,"depth":605,"text":727},{"id":6882,"depth":605,"text":6882},{"id":989,"depth":595,"text":989},"布林狀態開關。",{"doc":13696,"api":13697},"https:\u002F\u002Freka-ui.com\u002Fdocs\u002Fcomponents\u002Fswitch","https:\u002F\u002Freka-ui.com\u002Fdocs\u002Fcomponents\u002Fswitch#api-reference",{},{"title":137,"description":13694},"-x2ELiedMBJAXi0TkXzFSQTIXtMXonyqZCgf_S9uerU",{"id":13702,"title":141,"body":13703,"component":526,"description":14094,"extension":1019,"links":14095,"meta":14098,"navigation":526,"new":18,"path":142,"seo":14099,"stem":143,"wrapperKind":19,"__hash__":14100},"docs\u002Fdocs\u002Fadmin\u002Ftabs.md",{"type":537,"value":13704,"toc":14078},[13705,13707,13725,13777,13779,13782,13784,13787,13790,13792,13814,13840,13852,13856,13868,13871,13873,13875,14053,14055,14057,14059,14062,14064,14067,14069,14072,14074,14076],[540,13706,507],{"id":507},[543,13708,13710],{"className":545,"code":13709,"filename":547,"language":548,"meta":549,"style":550},"pnpm dlx shadcn-vue add @admin\u002Ftabs\n",[552,13711,13712],{"__ignoreMap":550},[555,13713,13714,13716,13718,13720,13722],{"class":557,"line":558},[555,13715,562],{"class":561},[555,13717,566],{"class":565},[555,13719,569],{"class":565},[555,13721,572],{"class":565},[555,13723,13724],{"class":565}," @admin\u002Ftabs\n",[543,13726,13728],{"className":578,"code":13727,"language":580,"meta":550,"style":550},"import {\n  AdminTabs,\n  AdminTabsContent,\n  AdminTabsList,\n  AdminTabsTrigger,\n} from '@\u002Fcomponents\u002Fadmin\u002Ftabs'\n",[552,13729,13730,13736,13743,13750,13757,13764],{"__ignoreMap":550},[555,13731,13732,13734],{"class":557,"line":558},[555,13733,588],{"class":587},[555,13735,592],{"class":591},[555,13737,13738,13741],{"class":557,"line":595},[555,13739,13740],{"class":598},"  AdminTabs",[555,13742,602],{"class":591},[555,13744,13745,13748],{"class":557,"line":605},[555,13746,13747],{"class":598},"  AdminTabsContent",[555,13749,602],{"class":591},[555,13751,13752,13755],{"class":557,"line":613},[555,13753,13754],{"class":598},"  AdminTabsList",[555,13756,602],{"class":591},[555,13758,13759,13762],{"class":557,"line":621},[555,13760,13761],{"class":598},"  AdminTabsTrigger",[555,13763,602],{"class":591},[555,13765,13766,13768,13770,13772,13775],{"class":557,"line":629},[555,13767,672],{"class":591},[555,13769,675],{"class":587},[555,13771,678],{"class":591},[555,13773,13774],{"class":565},"@\u002Fcomponents\u002Fadmin\u002Ftabs",[555,13776,684],{"class":591},[540,13778,687],{"id":687},[689,13780],{"name":13781},"TabsDemo",[540,13783,694],{"id":694},[696,13785,13786],{"id":13786},"受控模式",[689,13788],{"name":13789},"TabsControlledDemo",[540,13791,2766],{"id":2765},[709,13793,13794,2772,13797,2776,13800,13802,13803,2783,13805,2787,13807,13809,13810,13813],{},[552,13795,13796],{},"AdminTabs",[552,13798,13799],{},"T extends StringOrNumber",[552,13801,2728],{}," 即可收斂為 tab value 的 literal union。若要讓 value 與清單對齊、並讓每個 tab 的內容仍保有完整彈性，可自行封裝：傳入 ",[552,13804,7365],{},[552,13806,2786],{},[552,13808,7365],{}," 為單一事實來源渲染各 trigger 與 content shell，content 由使用端以 ",[552,13811,13812],{},"#panel-\u003Cvalue>"," 具名 slot 填入。",[709,13815,2793,13816,13818,13819,2799,13821,1617,13823,2805,13825,13827,13828,13831,13832,13835,13836,13839],{},[552,13817,7365],{}," 即聯集來源，各 trigger 的 ",[552,13820,2724],{},[552,13822,2728],{},[552,13824,2804],{},[552,13826,7365],{}," 的 value union（允許 ",[552,13829,13830],{},"undefined"," 表未選）。封裝再以 ",[552,13833,13834],{},"defineSlots"," 將 content slot 收斂為 ",[552,13837,13838],{},"panel-\u003Cvalue>"," 聯集，填入不在清單內的 slot 名亦會編譯期報錯。",[2810,13841,13842],{},[709,13843,13844,13845,2474,13848,13851],{},"此食譜刻意精簡，未透出 trigger 的 ",[552,13846,13847],{},"badge",[552,13849,13850],{},"badgeValue","；需要時可自行 fork 擴充。封裝元件僅為文件示範，不屬 registry 安裝產物。",[2816,13853],{"name":13854,"title":13855},"TypedAdminTabsDemo","TypedAdminTabs.vue",[2821,13857,13858],{"title":2823,"type":2824},[709,13859,2827,13860,2831,13862,2835,13864,2838,13866,2842],{},[552,13861,2830],{},[552,13863,2834],{},[701,13865,515],{"href":516},[552,13867,2841],{},[2816,13869],{"name":13870},"TabsTypeSafeDemo",[540,13872,724],{"id":723},[696,13874,727],{"id":727},[543,13876,13878],{"className":730,"code":13877,"language":732,"meta":550,"style":550},"\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",[552,13879,13880,13888,13909,13918,13946,13974,13982,14010,14037,14045],{"__ignoreMap":550},[555,13881,13882,13884,13886],{"class":557,"line":558},[555,13883,739],{"class":591},[555,13885,743],{"class":742},[555,13887,746],{"class":591},[555,13889,13890,13892,13895,13898,13900,13902,13905,13907],{"class":557,"line":595},[555,13891,751],{"class":591},[555,13893,13894],{"class":742},"admin-tabs",[555,13896,13897],{"class":757}," default-value",[555,13899,761],{"class":591},[555,13901,764],{"class":591},[555,13903,13904],{"class":565},"overview",[555,13906,764],{"class":591},[555,13908,746],{"class":591},[555,13910,13911,13913,13916],{"class":557,"line":605},[555,13912,776],{"class":591},[555,13914,13915],{"class":742},"admin-tabs-list",[555,13917,746],{"class":591},[555,13919,13920,13922,13925,13927,13929,13931,13933,13935,13937,13940,13942,13944],{"class":557,"line":613},[555,13921,806],{"class":591},[555,13923,13924],{"class":742},"admin-tabs-trigger",[555,13926,3340],{"class":757},[555,13928,761],{"class":591},[555,13930,764],{"class":591},[555,13932,13904],{"class":565},[555,13934,764],{"class":591},[555,13936,782],{"class":591},[555,13938,13939],{"class":598},"概覽",[555,13941,788],{"class":591},[555,13943,13924],{"class":742},[555,13945,746],{"class":591},[555,13947,13948,13950,13952,13954,13956,13958,13961,13963,13965,13968,13970,13972],{"class":557,"line":621},[555,13949,806],{"class":591},[555,13951,13924],{"class":742},[555,13953,3340],{"class":757},[555,13955,761],{"class":591},[555,13957,764],{"class":591},[555,13959,13960],{"class":565},"details",[555,13962,764],{"class":591},[555,13964,782],{"class":591},[555,13966,13967],{"class":598},"明細",[555,13969,788],{"class":591},[555,13971,13924],{"class":742},[555,13973,746],{"class":591},[555,13975,13976,13978,13980],{"class":557,"line":629},[555,13977,917],{"class":591},[555,13979,13915],{"class":742},[555,13981,746],{"class":591},[555,13983,13984,13986,13989,13991,13993,13995,13997,13999,14001,14004,14006,14008],{"class":557,"line":637},[555,13985,776],{"class":591},[555,13987,13988],{"class":742},"admin-tabs-content",[555,13990,3340],{"class":757},[555,13992,761],{"class":591},[555,13994,764],{"class":591},[555,13996,13904],{"class":565},[555,13998,764],{"class":591},[555,14000,782],{"class":591},[555,14002,14003],{"class":598},"概覽內容",[555,14005,788],{"class":591},[555,14007,13988],{"class":742},[555,14009,746],{"class":591},[555,14011,14012,14014,14016,14018,14020,14022,14024,14026,14028,14031,14033,14035],{"class":557,"line":645},[555,14013,776],{"class":591},[555,14015,13988],{"class":742},[555,14017,3340],{"class":757},[555,14019,761],{"class":591},[555,14021,764],{"class":591},[555,14023,13960],{"class":565},[555,14025,764],{"class":591},[555,14027,782],{"class":591},[555,14029,14030],{"class":598},"明細內容",[555,14032,788],{"class":591},[555,14034,13988],{"class":742},[555,14036,746],{"class":591},[555,14038,14039,14041,14043],{"class":557,"line":653},[555,14040,927],{"class":591},[555,14042,13894],{"class":742},[555,14044,746],{"class":591},[555,14046,14047,14049,14051],{"class":557,"line":661},[555,14048,788],{"class":591},[555,14050,743],{"class":742},[555,14052,746],{"class":591},[696,14054,13894],{"id":13894},[944,14056],{"component":13796},[696,14058,13915],{"id":13915},[944,14060],{"component":14061},"AdminTabsList",[696,14063,13924],{"id":13924},[944,14065],{"component":14066},"AdminTabsTrigger",[696,14068,13988],{"id":13988},[944,14070],{"component":14071},"AdminTabsContent",[540,14073,989],{"id":989},[991,14075],{"component":13796},[994,14077,996],{},{"title":550,"searchDepth":605,"depth":605,"links":14079},[14080,14081,14082,14085,14086,14093],{"id":507,"depth":595,"text":507},{"id":687,"depth":595,"text":687},{"id":694,"depth":595,"text":694,"children":14083},[14084],{"id":13786,"depth":605,"text":13786},{"id":2765,"depth":595,"text":2766},{"id":723,"depth":595,"text":724,"children":14087},[14088,14089,14090,14091,14092],{"id":727,"depth":605,"text":727},{"id":13894,"depth":605,"text":13894},{"id":13915,"depth":605,"text":13915},{"id":13924,"depth":605,"text":13924},{"id":13988,"depth":605,"text":13988},{"id":989,"depth":595,"text":989},"分頁切換。",{"doc":14096,"api":14097},"https:\u002F\u002Freka-ui.com\u002Fdocs\u002Fcomponents\u002Ftabs","https:\u002F\u002Freka-ui.com\u002Fdocs\u002Fcomponents\u002Ftabs#api-reference",{},{"title":141,"description":14094},"ogGC1CYfCsPeUB8KjEsE5DNP5qPlTHWWoufMpkaVa8g",{"id":14102,"title":145,"body":14103,"component":526,"description":14236,"extension":1019,"links":19,"meta":14237,"navigation":526,"new":18,"path":146,"seo":14238,"stem":147,"wrapperKind":19,"__hash__":14239},"docs\u002Fdocs\u002Fadmin\u002Ftag.md",{"type":537,"value":14104,"toc":14223},[14105,14107,14125,14150,14152,14155,14157,14160,14163,14167,14170,14172,14174,14212,14214,14217,14219,14221],[540,14106,507],{"id":507},[543,14108,14110],{"className":545,"code":14109,"filename":547,"language":548,"meta":549,"style":550},"pnpm dlx shadcn-vue add @admin\u002Ftag\n",[552,14111,14112],{"__ignoreMap":550},[555,14113,14114,14116,14118,14120,14122],{"class":557,"line":558},[555,14115,562],{"class":561},[555,14117,566],{"class":565},[555,14119,569],{"class":565},[555,14121,572],{"class":565},[555,14123,14124],{"class":565}," @admin\u002Ftag\n",[543,14126,14128],{"className":578,"code":14127,"language":580,"meta":550,"style":550},"import { AdminTag } from '@\u002Fcomponents\u002Fadmin\u002Ftag'\n",[552,14129,14130],{"__ignoreMap":550},[555,14131,14132,14134,14136,14139,14141,14143,14145,14148],{"class":557,"line":558},[555,14133,588],{"class":587},[555,14135,1277],{"class":591},[555,14137,14138],{"class":598}," AdminTag",[555,14140,1283],{"class":591},[555,14142,675],{"class":587},[555,14144,678],{"class":591},[555,14146,14147],{"class":565},"@\u002Fcomponents\u002Fadmin\u002Ftag",[555,14149,684],{"class":591},[540,14151,687],{"id":687},[689,14153],{"name":14154},"TagDemo",[540,14156,694],{"id":694},[696,14158,14159],{"id":14159},"圓角變體",[689,14161],{"name":14162},"TagRoundedDemo",[696,14164,14166],{"id":14165},"搭配-icon","搭配 icon",[689,14168],{"name":14169},"TagWithIconDemo",[540,14171,724],{"id":723},[696,14173,727],{"id":727},[543,14175,14177],{"className":730,"code":14176,"language":732,"meta":550,"style":550},"\u003Ctemplate>\n  \u003Cadmin-tag>標籤文字\u003C\u002Fadmin-tag>\n\u003C\u002Ftemplate>\n",[552,14178,14179,14187,14204],{"__ignoreMap":550},[555,14180,14181,14183,14185],{"class":557,"line":558},[555,14182,739],{"class":591},[555,14184,743],{"class":742},[555,14186,746],{"class":591},[555,14188,14189,14191,14194,14196,14198,14200,14202],{"class":557,"line":595},[555,14190,751],{"class":591},[555,14192,14193],{"class":742},"admin-tag",[555,14195,782],{"class":591},[555,14197,3033],{"class":598},[555,14199,788],{"class":591},[555,14201,14193],{"class":742},[555,14203,746],{"class":591},[555,14205,14206,14208,14210],{"class":557,"line":605},[555,14207,788],{"class":591},[555,14209,743],{"class":742},[555,14211,746],{"class":591},[696,14213,14193],{"id":14193},[944,14215],{"component":14216},"AdminTag",[540,14218,989],{"id":989},[991,14220],{"component":14216},[994,14222,2023],{},{"title":550,"searchDepth":605,"depth":605,"links":14224},[14225,14226,14227,14231,14235],{"id":507,"depth":595,"text":507},{"id":687,"depth":595,"text":687},{"id":694,"depth":595,"text":694,"children":14228},[14229,14230],{"id":14159,"depth":605,"text":14159},{"id":14165,"depth":605,"text":14166},{"id":723,"depth":595,"text":724,"children":14232},[14233,14234],{"id":727,"depth":605,"text":727},{"id":14193,"depth":605,"text":14193},{"id":989,"depth":595,"text":989},"分類、狀態或關鍵字的靜態標籤。",{},{"title":145,"description":14236},"mcUDDYNCow-mMoBiNVu8nGoNYA1koUpybkvYCGJQgOs",{"id":14241,"title":149,"body":14242,"component":526,"description":14440,"extension":1019,"links":14441,"meta":14443,"navigation":526,"new":18,"path":150,"seo":14444,"stem":151,"wrapperKind":19,"__hash__":14445},"docs\u002Fdocs\u002Fadmin\u002Ftextarea.md",{"type":537,"value":14243,"toc":14425},[14244,14246,14264,14302,14304,14307,14309,14312,14315,14317,14320,14322,14325,14327,14329,14409,14411,14414,14416,14419,14421,14423],[540,14245,507],{"id":507},[543,14247,14249],{"className":545,"code":14248,"filename":547,"language":548,"meta":549,"style":550},"pnpm dlx shadcn-vue add @admin\u002Ftextarea\n",[552,14250,14251],{"__ignoreMap":550},[555,14252,14253,14255,14257,14259,14261],{"class":557,"line":558},[555,14254,562],{"class":561},[555,14256,566],{"class":565},[555,14258,569],{"class":565},[555,14260,572],{"class":565},[555,14262,14263],{"class":565}," @admin\u002Ftextarea\n",[543,14265,14267],{"className":578,"code":14266,"language":580,"meta":550,"style":550},"import {\n  AdminTextarea,\n  AdminTextareaWordLimit,\n} from '@\u002Fcomponents\u002Fadmin\u002Ftextarea'\n",[552,14268,14269,14275,14282,14289],{"__ignoreMap":550},[555,14270,14271,14273],{"class":557,"line":558},[555,14272,588],{"class":587},[555,14274,592],{"class":591},[555,14276,14277,14280],{"class":557,"line":595},[555,14278,14279],{"class":598},"  AdminTextarea",[555,14281,602],{"class":591},[555,14283,14284,14287],{"class":557,"line":605},[555,14285,14286],{"class":598},"  AdminTextareaWordLimit",[555,14288,602],{"class":591},[555,14290,14291,14293,14295,14297,14300],{"class":557,"line":613},[555,14292,672],{"class":591},[555,14294,675],{"class":587},[555,14296,678],{"class":591},[555,14298,14299],{"class":565},"@\u002Fcomponents\u002Fadmin\u002Ftextarea",[555,14301,684],{"class":591},[540,14303,687],{"id":687},[689,14305],{"name":14306},"TextareaDemo",[540,14308,694],{"id":694},[696,14310,14311],{"id":14311},"帶字數限制",[689,14313],{"name":14314},"TextareaWithLimitDemo",[696,14316,3206],{"id":3206},[689,14318],{"name":14319},"TextareaDisabledDemo",[696,14321,2759],{"id":2759},[689,14323],{"name":14324},"TextareaErrorDemo",[540,14326,724],{"id":723},[696,14328,727],{"id":727},[543,14330,14332],{"className":730,"code":14331,"language":732,"meta":550,"style":550},"\u003Ctemplate>\n  \u003Cadmin-textarea v-model=\"value\" placeholder=\"輸入內容\" :maxlength=\"200\">\n    \u003Cadmin-textarea-word-limit \u002F>\n  \u003C\u002Fadmin-textarea>\n\u003C\u002Ftemplate>\n",[552,14333,14334,14342,14384,14393,14401],{"__ignoreMap":550},[555,14335,14336,14338,14340],{"class":557,"line":558},[555,14337,739],{"class":591},[555,14339,743],{"class":742},[555,14341,746],{"class":591},[555,14343,14344,14346,14349,14351,14353,14355,14357,14359,14361,14363,14365,14368,14370,14373,14375,14377,14380,14382],{"class":557,"line":595},[555,14345,751],{"class":591},[555,14347,14348],{"class":742},"admin-textarea",[555,14350,2871],{"class":757},[555,14352,761],{"class":591},[555,14354,764],{"class":591},[555,14356,2724],{"class":565},[555,14358,764],{"class":591},[555,14360,4868],{"class":757},[555,14362,761],{"class":591},[555,14364,764],{"class":591},[555,14366,14367],{"class":565},"輸入內容",[555,14369,764],{"class":591},[555,14371,14372],{"class":757}," :maxlength",[555,14374,761],{"class":591},[555,14376,764],{"class":591},[555,14378,14379],{"class":565},"200",[555,14381,764],{"class":591},[555,14383,746],{"class":591},[555,14385,14386,14388,14391],{"class":557,"line":605},[555,14387,776],{"class":591},[555,14389,14390],{"class":742},"admin-textarea-word-limit",[555,14392,1453],{"class":591},[555,14394,14395,14397,14399],{"class":557,"line":613},[555,14396,927],{"class":591},[555,14398,14348],{"class":742},[555,14400,746],{"class":591},[555,14402,14403,14405,14407],{"class":557,"line":621},[555,14404,788],{"class":591},[555,14406,743],{"class":742},[555,14408,746],{"class":591},[696,14410,14348],{"id":14348},[944,14412],{"component":14413},"AdminTextarea",[696,14415,14390],{"id":14390},[944,14417],{"component":14418},"AdminTextareaWordLimit",[540,14420,989],{"id":989},[991,14422],{"component":14413},[994,14424,996],{},{"title":550,"searchDepth":605,"depth":605,"links":14426},[14427,14428,14429,14434,14439],{"id":507,"depth":595,"text":507},{"id":687,"depth":595,"text":687},{"id":694,"depth":595,"text":694,"children":14430},[14431,14432,14433],{"id":14311,"depth":605,"text":14311},{"id":3206,"depth":605,"text":3206},{"id":2759,"depth":605,"text":2759},{"id":723,"depth":595,"text":724,"children":14435},[14436,14437,14438],{"id":727,"depth":605,"text":727},{"id":14348,"depth":605,"text":14348},{"id":14390,"depth":605,"text":14390},{"id":989,"depth":595,"text":989},"多行文字輸入。可搭配字數限制。",{"doc":14442},"https:\u002F\u002Fwww.shadcn-vue.com\u002Fdocs\u002Fcomponents\u002Ftextarea",{},{"title":149,"description":14440},"UpbTAyhTRLJiuuzWeQ3BnOwnlv7j0VK5O8LGbgUu9Bc",{"id":14447,"title":153,"body":14448,"component":526,"description":14905,"extension":1019,"links":19,"meta":14906,"navigation":526,"new":18,"path":154,"seo":14907,"stem":155,"wrapperKind":19,"__hash__":14908},"docs\u002Fdocs\u002Fadmin\u002Ftimeline.md",{"type":537,"value":14449,"toc":14884},[14450,14452,14470,14550,14552,14555,14557,14561,14564,14567,14570,14572,14574,14741,14743,14746,14748,14751,14753,14756,14758,14761,14763,14766,14768,14771,14773,14776,14778,14781,14783,14878,14880,14882],[540,14451,507],{"id":507},[543,14453,14455],{"className":545,"code":14454,"filename":547,"language":548,"meta":549,"style":550},"pnpm dlx shadcn-vue add @admin\u002Ftimeline\n",[552,14456,14457],{"__ignoreMap":550},[555,14458,14459,14461,14463,14465,14467],{"class":557,"line":558},[555,14460,562],{"class":561},[555,14462,566],{"class":565},[555,14464,569],{"class":565},[555,14466,572],{"class":565},[555,14468,14469],{"class":565}," @admin\u002Ftimeline\n",[543,14471,14473],{"className":578,"code":14472,"language":580,"meta":550,"style":550},"import {\n  AdminTimeline,\n  AdminTimelineContent,\n  AdminTimelineDate,\n  AdminTimelineHeader,\n  AdminTimelineIndicator,\n  AdminTimelineItem,\n  AdminTimelineSeparator,\n  AdminTimelineTitle,\n} from '@\u002Fcomponents\u002Fadmin\u002Ftimeline'\n",[552,14474,14475,14481,14488,14495,14502,14509,14516,14523,14530,14537],{"__ignoreMap":550},[555,14476,14477,14479],{"class":557,"line":558},[555,14478,588],{"class":587},[555,14480,592],{"class":591},[555,14482,14483,14486],{"class":557,"line":595},[555,14484,14485],{"class":598},"  AdminTimeline",[555,14487,602],{"class":591},[555,14489,14490,14493],{"class":557,"line":605},[555,14491,14492],{"class":598},"  AdminTimelineContent",[555,14494,602],{"class":591},[555,14496,14497,14500],{"class":557,"line":613},[555,14498,14499],{"class":598},"  AdminTimelineDate",[555,14501,602],{"class":591},[555,14503,14504,14507],{"class":557,"line":621},[555,14505,14506],{"class":598},"  AdminTimelineHeader",[555,14508,602],{"class":591},[555,14510,14511,14514],{"class":557,"line":629},[555,14512,14513],{"class":598},"  AdminTimelineIndicator",[555,14515,602],{"class":591},[555,14517,14518,14521],{"class":557,"line":637},[555,14519,14520],{"class":598},"  AdminTimelineItem",[555,14522,602],{"class":591},[555,14524,14525,14528],{"class":557,"line":645},[555,14526,14527],{"class":598},"  AdminTimelineSeparator",[555,14529,602],{"class":591},[555,14531,14532,14535],{"class":557,"line":653},[555,14533,14534],{"class":598},"  AdminTimelineTitle",[555,14536,602],{"class":591},[555,14538,14539,14541,14543,14545,14548],{"class":557,"line":661},[555,14540,672],{"class":591},[555,14542,675],{"class":587},[555,14544,678],{"class":591},[555,14546,14547],{"class":565},"@\u002Fcomponents\u002Fadmin\u002Ftimeline",[555,14549,684],{"class":591},[540,14551,687],{"id":687},[689,14553],{"name":14554},"TimelineBasicDemo",[540,14556,694],{"id":694},[696,14558,14560],{"id":14559},"自訂-indicatoricon","自訂 indicator（icon）",[689,14562],{"name":14563},"TimelineIconDemo",[696,14565,14566],{"id":6515},"水平 orientation",[689,14568],{"name":14569},"TimelineHorizontalDemo",[540,14571,724],{"id":723},[696,14573,727],{"id":727},[543,14575,14577],{"className":730,"code":14576,"language":732,"meta":550,"style":550},"\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",[552,14578,14579,14587,14596,14617,14626,14635,14665,14673,14682,14691,14709,14717,14725,14733],{"__ignoreMap":550},[555,14580,14581,14583,14585],{"class":557,"line":558},[555,14582,739],{"class":591},[555,14584,743],{"class":742},[555,14586,746],{"class":591},[555,14588,14589,14591,14594],{"class":557,"line":595},[555,14590,751],{"class":591},[555,14592,14593],{"class":742},"admin-timeline",[555,14595,746],{"class":591},[555,14597,14598,14600,14603,14606,14608,14610,14613,14615],{"class":557,"line":605},[555,14599,776],{"class":591},[555,14601,14602],{"class":742},"admin-timeline-item",[555,14604,14605],{"class":757}," status",[555,14607,761],{"class":591},[555,14609,764],{"class":591},[555,14611,14612],{"class":565},"completed",[555,14614,764],{"class":591},[555,14616,746],{"class":591},[555,14618,14619,14621,14624],{"class":557,"line":613},[555,14620,806],{"class":591},[555,14622,14623],{"class":742},"admin-timeline-header",[555,14625,746],{"class":591},[555,14627,14628,14630,14633],{"class":557,"line":621},[555,14629,816],{"class":591},[555,14631,14632],{"class":742},"admin-timeline-indicator",[555,14634,1453],{"class":591},[555,14636,14637,14639,14642,14645,14647,14649,14652,14654,14656,14659,14661,14663],{"class":557,"line":629},[555,14638,816],{"class":591},[555,14640,14641],{"class":742},"admin-timeline-date",[555,14643,14644],{"class":757}," datetime",[555,14646,761],{"class":591},[555,14648,764],{"class":591},[555,14650,14651],{"class":565},"2026-05-01",[555,14653,764],{"class":591},[555,14655,782],{"class":591},[555,14657,14658],{"class":598},"2026\u002F05\u002F01",[555,14660,788],{"class":591},[555,14662,14641],{"class":742},[555,14664,746],{"class":591},[555,14666,14667,14669,14671],{"class":557,"line":637},[555,14668,853],{"class":591},[555,14670,14623],{"class":742},[555,14672,746],{"class":591},[555,14674,14675,14677,14680],{"class":557,"line":645},[555,14676,806],{"class":591},[555,14678,14679],{"class":742},"admin-timeline-separator",[555,14681,1453],{"class":591},[555,14683,14684,14686,14689],{"class":557,"line":653},[555,14685,806],{"class":591},[555,14687,14688],{"class":742},"admin-timeline-content",[555,14690,746],{"class":591},[555,14692,14693,14695,14698,14700,14703,14705,14707],{"class":557,"line":661},[555,14694,816],{"class":591},[555,14696,14697],{"class":742},"admin-timeline-title",[555,14699,782],{"class":591},[555,14701,14702],{"class":598},"建立訂單",[555,14704,788],{"class":591},[555,14706,14697],{"class":742},[555,14708,746],{"class":591},[555,14710,14711,14713,14715],{"class":557,"line":669},[555,14712,853],{"class":591},[555,14714,14688],{"class":742},[555,14716,746],{"class":591},[555,14718,14719,14721,14723],{"class":557,"line":905},[555,14720,917],{"class":591},[555,14722,14602],{"class":742},[555,14724,746],{"class":591},[555,14726,14727,14729,14731],{"class":557,"line":914},[555,14728,927],{"class":591},[555,14730,14593],{"class":742},[555,14732,746],{"class":591},[555,14734,14735,14737,14739],{"class":557,"line":924},[555,14736,788],{"class":591},[555,14738,743],{"class":742},[555,14740,746],{"class":591},[696,14742,14593],{"id":14593},[944,14744],{"component":14745},"AdminTimeline",[696,14747,14602],{"id":14602},[944,14749],{"component":14750},"AdminTimelineItem",[696,14752,14641],{"id":14641},[944,14754],{"component":14755},"AdminTimelineDate",[696,14757,14632],{"id":14632},[944,14759],{"component":14760},"AdminTimelineIndicator",[696,14762,14688],{"id":14688},[944,14764],{"component":14765},"AdminTimelineContent",[696,14767,14623],{"id":14623},[944,14769],{"component":14770},"AdminTimelineHeader",[696,14772,14679],{"id":14679},[944,14774],{"component":14775},"AdminTimelineSeparator",[696,14777,14697],{"id":14697},[944,14779],{"component":14780},"AdminTimelineTitle",[540,14782,1560],{"id":1560},[1562,14784,14785,14809,14830,14848,14859],{},[1565,14786,14787,14788,14790,14791,14794,14795,1127,14798,1127,14801,1127,14803,14805,14806,14808],{},"每個 ",[552,14789,14602],{}," 以 ",[552,14792,14793],{},"status"," 各自標註狀態（",[552,14796,14797],{},"pending",[552,14799,14800],{},"current",[552,14802,14612],{},[552,14804,6748],{},"，預設 ",[552,14807,14797],{},"）；狀態由呼叫方依實際資料指定，root 不持有 active step。",[1565,14810,14811,14812,14814,14815,14817,14818,14820,14821,14823,14824,14826,14827,14829],{},"配色對應：",[552,14813,14612],{}," 綠、",[552,14816,14800],{}," 藍（實心 + ring）、",[552,14819,14797],{}," 灰、",[552,14822,6748],{}," 紅；連接線於 ",[552,14825,14612],{}," 轉綠、",[552,14828,6748],{}," 轉紅。",[1565,14831,14832,14834,14835,14838,14839,14842,14843,1127,14845,14847],{},[552,14833,14793],{}," 為",[1139,14836,14837],{},"純視覺","（indicator 帶 ",[552,14840,14841],{},"aria-hidden","）。為確保無障礙，狀態語意務必同時以 ",[552,14844,14697],{},[552,14846,14688],{}," 的文字表達，勿只靠顏色。",[1565,14849,14850,1617,14852,14854,14855,14858],{},[552,14851,14755],{},[552,14853,14760],{}," 支援 ",[552,14856,14857],{},"as-child","，其他 sub-component 不支援。",[1565,14860,14861,14862,14865,14866,14869,14870,14873,14874,717],{},"Indicator ",[1139,14863,14864],{},"不建議","塞 interactive 元素（",[552,14867,14868],{},"\u003Cbutton>","、",[552,14871,14872],{},"\u003Ca>"," 等）。Timeline 的定位是視覺呈現，需要互動式步驟切換請改用 ",[701,14875,14876],{"href":134},[552,14877,4140],{},[540,14879,989],{"id":989},[991,14881],{"component":14745},[994,14883,996],{},{"title":550,"searchDepth":605,"depth":605,"links":14885},[14886,14887,14888,14892,14903,14904],{"id":507,"depth":595,"text":507},{"id":687,"depth":595,"text":687},{"id":694,"depth":595,"text":694,"children":14889},[14890,14891],{"id":14559,"depth":605,"text":14560},{"id":6515,"depth":605,"text":14566},{"id":723,"depth":595,"text":724,"children":14893},[14894,14895,14896,14897,14898,14899,14900,14901,14902],{"id":727,"depth":605,"text":727},{"id":14593,"depth":605,"text":14593},{"id":14602,"depth":605,"text":14602},{"id":14641,"depth":605,"text":14641},{"id":14632,"depth":605,"text":14632},{"id":14688,"depth":605,"text":14688},{"id":14623,"depth":605,"text":14623},{"id":14679,"depth":605,"text":14679},{"id":14697,"depth":605,"text":14697},{"id":1560,"depth":595,"text":1560},{"id":989,"depth":595,"text":989},"依節點狀態呈現進度的時間軸。狀態：pending／current／completed／error；方向：垂直、水平。",{},{"title":153,"description":14905},"Yb8jrlKI2jE50O_iiVU3sxlf8tvyn3rc9VNyguipxTs",{"id":14910,"title":157,"body":14911,"component":526,"description":15140,"extension":1019,"links":15141,"meta":15144,"navigation":526,"new":18,"path":158,"seo":15145,"stem":159,"wrapperKind":19,"__hash__":15146},"docs\u002Fdocs\u002Fadmin\u002Ftooltip.md",{"type":537,"value":14912,"toc":15124},[14913,14915,14933,14985,14987,14990,14992,14995,14998,15001,15004,15006,15008,15098,15100,15103,15105,15108,15110,15113,15115,15118,15120,15122],[540,14914,507],{"id":507},[543,14916,14918],{"className":545,"code":14917,"filename":547,"language":548,"meta":549,"style":550},"pnpm dlx shadcn-vue add @admin\u002Ftooltip\n",[552,14919,14920],{"__ignoreMap":550},[555,14921,14922,14924,14926,14928,14930],{"class":557,"line":558},[555,14923,562],{"class":561},[555,14925,566],{"class":565},[555,14927,569],{"class":565},[555,14929,572],{"class":565},[555,14931,14932],{"class":565}," @admin\u002Ftooltip\n",[543,14934,14936],{"className":578,"code":14935,"language":580,"meta":550,"style":550},"import {\n  AdminTooltip,\n  AdminTooltipContent,\n  AdminTooltipProvider,\n  AdminTooltipTrigger,\n} from '@\u002Fcomponents\u002Fadmin\u002Ftooltip'\n",[552,14937,14938,14944,14951,14958,14965,14972],{"__ignoreMap":550},[555,14939,14940,14942],{"class":557,"line":558},[555,14941,588],{"class":587},[555,14943,592],{"class":591},[555,14945,14946,14949],{"class":557,"line":595},[555,14947,14948],{"class":598},"  AdminTooltip",[555,14950,602],{"class":591},[555,14952,14953,14956],{"class":557,"line":605},[555,14954,14955],{"class":598},"  AdminTooltipContent",[555,14957,602],{"class":591},[555,14959,14960,14963],{"class":557,"line":613},[555,14961,14962],{"class":598},"  AdminTooltipProvider",[555,14964,602],{"class":591},[555,14966,14967,14970],{"class":557,"line":621},[555,14968,14969],{"class":598},"  AdminTooltipTrigger",[555,14971,602],{"class":591},[555,14973,14974,14976,14978,14980,14983],{"class":557,"line":629},[555,14975,672],{"class":591},[555,14977,675],{"class":587},[555,14979,678],{"class":591},[555,14981,14982],{"class":565},"@\u002Fcomponents\u002Fadmin\u002Ftooltip",[555,14984,684],{"class":591},[540,14986,687],{"id":687},[689,14988],{"name":14989},"TooltipDemo",[540,14991,694],{"id":694},[696,14993,14994],{"id":14994},"四向擺放",[689,14996],{"name":14997},"TooltipPlacementDemo",[696,14999,15000],{"id":15000},"富文字內容",[689,15002],{"name":15003},"TooltipRichDemo",[540,15005,724],{"id":723},[696,15007,727],{"id":727},[543,15009,15011],{"className":730,"code":15010,"language":732,"meta":550,"style":550},"\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",[552,15012,15013,15021,15030,15039,15057,15074,15082,15090],{"__ignoreMap":550},[555,15014,15015,15017,15019],{"class":557,"line":558},[555,15016,739],{"class":591},[555,15018,743],{"class":742},[555,15020,746],{"class":591},[555,15022,15023,15025,15028],{"class":557,"line":595},[555,15024,751],{"class":591},[555,15026,15027],{"class":742},"admin-tooltip-provider",[555,15029,746],{"class":591},[555,15031,15032,15034,15037],{"class":557,"line":605},[555,15033,776],{"class":591},[555,15035,15036],{"class":742},"admin-tooltip",[555,15038,746],{"class":591},[555,15040,15041,15043,15046,15048,15051,15053,15055],{"class":557,"line":613},[555,15042,806],{"class":591},[555,15044,15045],{"class":742},"admin-tooltip-trigger",[555,15047,782],{"class":591},[555,15049,15050],{"class":598},"觸發元素",[555,15052,788],{"class":591},[555,15054,15045],{"class":742},[555,15056,746],{"class":591},[555,15058,15059,15061,15064,15066,15068,15070,15072],{"class":557,"line":621},[555,15060,806],{"class":591},[555,15062,15063],{"class":742},"admin-tooltip-content",[555,15065,782],{"class":591},[555,15067,842],{"class":598},[555,15069,788],{"class":591},[555,15071,15063],{"class":742},[555,15073,746],{"class":591},[555,15075,15076,15078,15080],{"class":557,"line":629},[555,15077,917],{"class":591},[555,15079,15036],{"class":742},[555,15081,746],{"class":591},[555,15083,15084,15086,15088],{"class":557,"line":637},[555,15085,927],{"class":591},[555,15087,15027],{"class":742},[555,15089,746],{"class":591},[555,15091,15092,15094,15096],{"class":557,"line":645},[555,15093,788],{"class":591},[555,15095,743],{"class":742},[555,15097,746],{"class":591},[696,15099,15027],{"id":15027},[944,15101],{"component":15102},"AdminTooltipProvider",[696,15104,15036],{"id":15036},[944,15106],{"component":15107},"AdminTooltip",[696,15109,15063],{"id":15063},[944,15111],{"component":15112},"AdminTooltipContent",[696,15114,15045],{"id":15045},[944,15116],{"component":15117},"AdminTooltipTrigger",[540,15119,989],{"id":989},[991,15121],{"component":15107},[994,15123,2023],{},{"title":550,"searchDepth":605,"depth":605,"links":15125},[15126,15127,15128,15132,15139],{"id":507,"depth":595,"text":507},{"id":687,"depth":595,"text":687},{"id":694,"depth":595,"text":694,"children":15129},[15130,15131],{"id":14994,"depth":605,"text":14994},{"id":15000,"depth":605,"text":15000},{"id":723,"depth":595,"text":724,"children":15133},[15134,15135,15136,15137,15138],{"id":727,"depth":605,"text":727},{"id":15027,"depth":605,"text":15027},{"id":15036,"depth":605,"text":15036},{"id":15063,"depth":605,"text":15063},{"id":15045,"depth":605,"text":15045},{"id":989,"depth":595,"text":989},"懸停時顯示輔助說明。",{"doc":15142,"api":15143},"https:\u002F\u002Freka-ui.com\u002Fdocs\u002Fcomponents\u002Ftooltip","https:\u002F\u002Freka-ui.com\u002Fdocs\u002Fcomponents\u002Ftooltip#api-reference",{},{"title":157,"description":15140},"2Q6Af1REAAxfTeiTiTFuTvD0BT0CJu9xkV5zizE0LKI",{"id":15148,"title":161,"body":15149,"component":526,"description":15400,"extension":1019,"links":15401,"meta":15404,"navigation":526,"new":18,"path":162,"seo":15405,"stem":163,"wrapperKind":19,"__hash__":15406},"docs\u002Fdocs\u002Fadmin\u002Ftree.md",{"type":537,"value":15150,"toc":15387},[15151,15153,15171,15201,15203,15206,15208,15212,15215,15217,15219,15371,15373,15376,15378,15381,15383,15385],[540,15152,507],{"id":507},[543,15154,15156],{"className":545,"code":15155,"filename":547,"language":548,"meta":549,"style":550},"pnpm dlx shadcn-vue add @admin\u002Ftree\n",[552,15157,15158],{"__ignoreMap":550},[555,15159,15160,15162,15164,15166,15168],{"class":557,"line":558},[555,15161,562],{"class":561},[555,15163,566],{"class":565},[555,15165,569],{"class":565},[555,15167,572],{"class":565},[555,15169,15170],{"class":565}," @admin\u002Ftree\n",[543,15172,15174],{"className":578,"code":15173,"language":580,"meta":550,"style":550},"import { AdminTree, AdminTreeItem } from '@\u002Fcomponents\u002Fadmin\u002Ftree'\n",[552,15175,15176],{"__ignoreMap":550},[555,15177,15178,15180,15182,15185,15187,15190,15192,15194,15196,15199],{"class":557,"line":558},[555,15179,588],{"class":587},[555,15181,1277],{"class":591},[555,15183,15184],{"class":598}," AdminTree",[555,15186,3352],{"class":591},[555,15188,15189],{"class":598}," AdminTreeItem",[555,15191,1283],{"class":591},[555,15193,675],{"class":587},[555,15195,678],{"class":591},[555,15197,15198],{"class":565},"@\u002Fcomponents\u002Fadmin\u002Ftree",[555,15200,684],{"class":591},[540,15202,687],{"id":687},[689,15204],{"name":15205},"TreeBasicDemo",[540,15207,694],{"id":694},[696,15209,15211],{"id":15210},"多選與-checkbox","多選與 Checkbox",[689,15213],{"name":15214},"TreeCheckboxDemo",[540,15216,724],{"id":723},[696,15218,727],{"id":727},[543,15220,15222],{"className":730,"code":15221,"language":732,"meta":550,"style":550},"\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",[552,15223,15224,15232,15276,15283,15296,15309,15323,15337,15341,15346,15355,15363],{"__ignoreMap":550},[555,15225,15226,15228,15230],{"class":557,"line":558},[555,15227,739],{"class":591},[555,15229,743],{"class":742},[555,15231,746],{"class":591},[555,15233,15234,15236,15239,15241,15243,15245,15248,15250,15253,15255,15257,15260,15262,15265,15267,15269,15272,15274],{"class":557,"line":595},[555,15235,751],{"class":591},[555,15237,15238],{"class":742},"admin-tree",[555,15240,3599],{"class":757},[555,15242,761],{"class":591},[555,15244,764],{"class":591},[555,15246,15247],{"class":565},"{ flattenItems }",[555,15249,764],{"class":591},[555,15251,15252],{"class":757}," :get-key",[555,15254,761],{"class":591},[555,15256,764],{"class":591},[555,15258,15259],{"class":565},"(item) => item.id",[555,15261,764],{"class":591},[555,15263,15264],{"class":757}," :items",[555,15266,761],{"class":591},[555,15268,764],{"class":591},[555,15270,15271],{"class":565},"data",[555,15273,764],{"class":591},[555,15275,746],{"class":591},[555,15277,15278,15280],{"class":557,"line":605},[555,15279,776],{"class":591},[555,15281,15282],{"class":742},"admin-tree-item\n",[555,15284,15285,15287,15289,15291,15294],{"class":557,"line":613},[555,15286,11360],{"class":757},[555,15288,761],{"class":591},[555,15290,764],{"class":591},[555,15292,15293],{"class":565},"item in flattenItems",[555,15295,4285],{"class":591},[555,15297,15298,15300,15302,15304,15307],{"class":557,"line":621},[555,15299,11374],{"class":757},[555,15301,761],{"class":591},[555,15303,764],{"class":591},[555,15305,15306],{"class":565},"item._id",[555,15308,4285],{"class":591},[555,15310,15311,15314,15316,15318,15321],{"class":557,"line":629},[555,15312,15313],{"class":757},"      v-bind",[555,15315,761],{"class":591},[555,15317,764],{"class":591},[555,15319,15320],{"class":565},"item.bind",[555,15322,4285],{"class":591},[555,15324,15325,15328,15330,15332,15335],{"class":557,"line":637},[555,15326,15327],{"class":757},"      :has-children",[555,15329,761],{"class":591},[555,15331,764],{"class":591},[555,15333,15334],{"class":565},"item.hasChildren",[555,15336,4285],{"class":591},[555,15338,15339],{"class":557,"line":645},[555,15340,4290],{"class":591},[555,15342,15343],{"class":557,"line":653},[555,15344,15345],{"class":598},"      {{ item.value.label }}\n",[555,15347,15348,15350,15353],{"class":557,"line":661},[555,15349,917],{"class":591},[555,15351,15352],{"class":742},"admin-tree-item",[555,15354,746],{"class":591},[555,15356,15357,15359,15361],{"class":557,"line":669},[555,15358,927],{"class":591},[555,15360,15238],{"class":742},[555,15362,746],{"class":591},[555,15364,15365,15367,15369],{"class":557,"line":905},[555,15366,788],{"class":591},[555,15368,743],{"class":742},[555,15370,746],{"class":591},[696,15372,15238],{"id":15238},[944,15374],{"component":15375},"AdminTree",[696,15377,15352],{"id":15352},[944,15379],{"component":15380},"AdminTreeItem",[540,15382,989],{"id":989},[991,15384],{"component":15375},[994,15386,996],{},{"title":550,"searchDepth":605,"depth":605,"links":15388},[15389,15390,15391,15394,15399],{"id":507,"depth":595,"text":507},{"id":687,"depth":595,"text":687},{"id":694,"depth":595,"text":694,"children":15392},[15393],{"id":15210,"depth":605,"text":15211},{"id":723,"depth":595,"text":724,"children":15395},[15396,15397,15398],{"id":727,"depth":605,"text":727},{"id":15238,"depth":605,"text":15238},{"id":15352,"depth":605,"text":15352},{"id":989,"depth":595,"text":989},"巢狀資料。展開、收合、選取。",{"doc":15402,"api":15403},"https:\u002F\u002Freka-ui.com\u002Fdocs\u002Fcomponents\u002Ftree","https:\u002F\u002Freka-ui.com\u002Fdocs\u002Fcomponents\u002Ftree#api-reference",{},{"title":161,"description":15400},"0TKzt5GlU4Y6HtpSD5pv2cntYGHUoNDZiTwvVFfPCnw",{"id":15408,"title":165,"body":15409,"component":526,"description":16084,"extension":1019,"links":16085,"meta":16086,"navigation":526,"new":18,"path":166,"seo":16087,"stem":167,"wrapperKind":19,"__hash__":16088},"docs\u002Fdocs\u002Fadmin\u002Fvideo-player.md",{"type":537,"value":15410,"toc":16062},[15411,15413,15431,15516,15523,15527,15603,15607,15745,15747,15756,15759,15761,15765,15778,15781,15785,15801,15804,15806,15808,15931,15933,15936,15938,15941,15943,15946,15948,15951,15953,15956,15958,15961,15963,15966,15968,15971,15973,15976,15978,16056,16058,16060],[540,15412,507],{"id":507},[543,15414,15416],{"className":545,"code":15415,"filename":547,"language":548,"meta":549,"style":550},"pnpm dlx shadcn-vue add @admin\u002Fvideo-player\n",[552,15417,15418],{"__ignoreMap":550},[555,15419,15420,15422,15424,15426,15428],{"class":557,"line":558},[555,15421,562],{"class":561},[555,15423,566],{"class":565},[555,15425,569],{"class":565},[555,15427,572],{"class":565},[555,15429,15430],{"class":565}," @admin\u002Fvideo-player\n",[543,15432,15434],{"className":578,"code":15433,"language":580,"meta":550,"style":550},"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",[552,15435,15436,15442,15449,15456,15463,15470,15477,15484,15491,15498,15503],{"__ignoreMap":550},[555,15437,15438,15440],{"class":557,"line":558},[555,15439,588],{"class":587},[555,15441,592],{"class":591},[555,15443,15444,15447],{"class":557,"line":595},[555,15445,15446],{"class":598},"  AdminVideoPlayer",[555,15448,602],{"class":591},[555,15450,15451,15454],{"class":557,"line":605},[555,15452,15453],{"class":598},"  AdminVideoPlayerControls",[555,15455,602],{"class":591},[555,15457,15458,15461],{"class":557,"line":613},[555,15459,15460],{"class":598},"  AdminVideoPlayerFullscreen",[555,15462,602],{"class":591},[555,15464,15465,15468],{"class":557,"line":621},[555,15466,15467],{"class":598},"  AdminVideoPlayerPlay",[555,15469,602],{"class":591},[555,15471,15472,15475],{"class":557,"line":629},[555,15473,15474],{"class":598},"  AdminVideoPlayerProgress",[555,15476,602],{"class":591},[555,15478,15479,15482],{"class":557,"line":637},[555,15480,15481],{"class":598},"  AdminVideoPlayerSettings",[555,15483,602],{"class":591},[555,15485,15486,15489],{"class":557,"line":645},[555,15487,15488],{"class":598},"  AdminVideoPlayerTime",[555,15490,602],{"class":591},[555,15492,15493,15496],{"class":557,"line":653},[555,15494,15495],{"class":598},"  AdminVideoPlayerToolbar",[555,15497,602],{"class":591},[555,15499,15500],{"class":557,"line":661},[555,15501,15502],{"class":598},"  AdminVideoPlayerVolume\n",[555,15504,15505,15507,15509,15511,15514],{"class":557,"line":669},[555,15506,672],{"class":591},[555,15508,675],{"class":587},[555,15510,678],{"class":591},[555,15512,15513],{"class":565},"@\u002Fcomponents\u002Fadmin\u002Fvideo-player",[555,15515,684],{"class":591},[709,15517,15518,15519,15522],{},"vidstack 是一組 web components，需要在專案 build 設定告訴 Vue compiler 把 ",[552,15520,15521],{},"media-*"," 開頭的 tag 當成 native custom element：",[709,15524,15525],{},[1139,15526,1141],{},[543,15528,15529],{"className":578,"code":1144,"filename":1145,"language":580,"meta":550,"style":550},[552,15530,15531,15543,15551,15559,15589,15593,15597],{"__ignoreMap":550},[555,15532,15533,15535,15537,15539,15541],{"class":557,"line":558},[555,15534,1152],{"class":587},[555,15536,1155],{"class":587},[555,15538,1159],{"class":1158},[555,15540,1162],{"class":598},[555,15542,1165],{"class":591},[555,15544,15545,15547,15549],{"class":557,"line":595},[555,15546,1170],{"class":742},[555,15548,1173],{"class":591},[555,15550,592],{"class":591},[555,15552,15553,15555,15557],{"class":557,"line":605},[555,15554,1180],{"class":742},[555,15556,1173],{"class":591},[555,15558,592],{"class":591},[555,15560,15561,15563,15565,15567,15569,15571,15573,15575,15577,15579,15581,15583,15585,15587],{"class":557,"line":613},[555,15562,1189],{"class":1158},[555,15564,1173],{"class":591},[555,15566,1194],{"class":591},[555,15568,1198],{"class":1197},[555,15570,1201],{"class":591},[555,15572,1204],{"class":757},[555,15574,1207],{"class":598},[555,15576,1210],{"class":591},[555,15578,1213],{"class":1158},[555,15580,1162],{"class":598},[555,15582,1218],{"class":591},[555,15584,1221],{"class":565},[555,15586,1218],{"class":591},[555,15588,1226],{"class":598},[555,15590,15591],{"class":557,"line":621},[555,15592,1231],{"class":591},[555,15594,15595],{"class":557,"line":629},[555,15596,1236],{"class":591},[555,15598,15599,15601],{"class":557,"line":637},[555,15600,672],{"class":591},[555,15602,1226],{"class":598},[709,15604,15605],{},[1139,15606,1247],{},[543,15608,15609],{"className":578,"code":1250,"filename":1251,"language":580,"meta":550,"style":550},[552,15610,15611,15625,15643,15647,15659,15667,15675,15683,15691,15721,15725,15729,15735,15739],{"__ignoreMap":550},[555,15612,15613,15615,15617,15619,15621,15623],{"class":557,"line":558},[555,15614,588],{"class":587},[555,15616,1260],{"class":598},[555,15618,1263],{"class":587},[555,15620,678],{"class":591},[555,15622,1268],{"class":565},[555,15624,684],{"class":591},[555,15626,15627,15629,15631,15633,15635,15637,15639,15641],{"class":557,"line":595},[555,15628,588],{"class":587},[555,15630,1277],{"class":591},[555,15632,1280],{"class":598},[555,15634,1283],{"class":591},[555,15636,675],{"class":587},[555,15638,678],{"class":591},[555,15640,1290],{"class":565},[555,15642,684],{"class":591},[555,15644,15645],{"class":557,"line":605},[555,15646,1297],{"emptyLinePlaceholder":526},[555,15648,15649,15651,15653,15655,15657],{"class":557,"line":613},[555,15650,1152],{"class":587},[555,15652,1155],{"class":587},[555,15654,1280],{"class":1158},[555,15656,1162],{"class":598},[555,15658,1165],{"class":591},[555,15660,15661,15663,15665],{"class":557,"line":621},[555,15662,1314],{"class":742},[555,15664,1173],{"class":591},[555,15666,1319],{"class":598},[555,15668,15669,15671,15673],{"class":557,"line":629},[555,15670,1324],{"class":1158},[555,15672,1162],{"class":598},[555,15674,1165],{"class":591},[555,15676,15677,15679,15681],{"class":557,"line":637},[555,15678,1333],{"class":742},[555,15680,1173],{"class":591},[555,15682,592],{"class":591},[555,15684,15685,15687,15689],{"class":557,"line":645},[555,15686,1342],{"class":742},[555,15688,1173],{"class":591},[555,15690,592],{"class":591},[555,15692,15693,15695,15697,15699,15701,15703,15705,15707,15709,15711,15713,15715,15717,15719],{"class":557,"line":653},[555,15694,1351],{"class":1158},[555,15696,1173],{"class":591},[555,15698,1194],{"class":591},[555,15700,1198],{"class":1197},[555,15702,1201],{"class":591},[555,15704,1204],{"class":757},[555,15706,1207],{"class":598},[555,15708,1210],{"class":591},[555,15710,1213],{"class":1158},[555,15712,1162],{"class":598},[555,15714,1218],{"class":591},[555,15716,1221],{"class":565},[555,15718,1218],{"class":591},[555,15720,1226],{"class":598},[555,15722,15723],{"class":557,"line":661},[555,15724,1382],{"class":591},[555,15726,15727],{"class":557,"line":669},[555,15728,1387],{"class":591},[555,15730,15731,15733],{"class":557,"line":905},[555,15732,1392],{"class":591},[555,15734,1226],{"class":598},[555,15736,15737],{"class":557,"line":914},[555,15738,1399],{"class":598},[555,15740,15741,15743],{"class":557,"line":924},[555,15742,672],{"class":591},[555,15744,1226],{"class":598},[540,15746,687],{"id":687},[709,15748,1410,15749,15751,15752,15755],{},[552,15750,1413],{}," 即可播放，元件根據 src 字串自動辨識 provider：YouTube URL → YouTube provider、",[552,15753,15754],{},".m3u8"," → HLS、其他 → native MP4 \u002F WebM",[689,15757],{"name":15758},"VideoPlayerMp4Demo",[540,15760,694],{"id":694},[696,15762,15764],{"id":15763},"hls-串流含解析度切換","HLS 串流（含解析度切換）",[709,15766,15767,15768,15770,15771,15773,15774,15777],{},"來源為 ",[552,15769,15754],{}," 時，齒輪設定菜單會出現「解析度」區塊，列出 vidstack qualities 過濾後的 480 \u002F 720 \u002F 1080 選項；切換後寫入 ",[552,15772,1624],{}," key ",[552,15775,15776],{},"admin:player:resolution","，下次播放新 HLS 影片自動套用同設定。",[689,15779],{"name":15780},"VideoPlayerHlsDemo",[696,15782,15784],{"id":15783},"youtube","YouTube",[709,15786,15787,15789,15790,1127,15793,15796,15797,15800],{},[552,15788,1413],{}," 為 YouTube URL（",[552,15791,15792],{},"youtube.com\u002F...",[552,15794,15795],{},"youtu.be\u002F...","）或 ",[552,15798,15799],{},"youtube\u002F\u003Cid>"," 時自動切換到 YouTube provider；齒輪菜單不顯示解析度區塊（YouTube provider 不支援切換）。",[689,15802],{"name":15803},"VideoPlayerYoutubeDemo",[540,15805,724],{"id":723},[696,15807,727],{"id":727},[543,15809,15811],{"className":730,"code":15810,"language":732,"meta":550,"style":550},"\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",[552,15812,15813,15821,15835,15844,15853,15862,15871,15880,15889,15898,15907,15915,15923],{"__ignoreMap":550},[555,15814,15815,15817,15819],{"class":557,"line":558},[555,15816,739],{"class":591},[555,15818,743],{"class":742},[555,15820,746],{"class":591},[555,15822,15823,15825,15828,15831,15833],{"class":557,"line":595},[555,15824,751],{"class":591},[555,15826,15827],{"class":742},"admin-video-player",[555,15829,15830],{"class":757}," :poster",[555,15832,4223],{"class":757},[555,15834,746],{"class":591},[555,15836,15837,15839,15842],{"class":557,"line":605},[555,15838,776],{"class":591},[555,15840,15841],{"class":742},"admin-video-player-toolbar",[555,15843,746],{"class":591},[555,15845,15846,15848,15851],{"class":557,"line":613},[555,15847,806],{"class":591},[555,15849,15850],{"class":742},"admin-video-player-play",[555,15852,1453],{"class":591},[555,15854,15855,15857,15860],{"class":557,"line":621},[555,15856,806],{"class":591},[555,15858,15859],{"class":742},"admin-video-player-time",[555,15861,1453],{"class":591},[555,15863,15864,15866,15869],{"class":557,"line":629},[555,15865,806],{"class":591},[555,15867,15868],{"class":742},"admin-video-player-controls",[555,15870,1453],{"class":591},[555,15872,15873,15875,15878],{"class":557,"line":637},[555,15874,806],{"class":591},[555,15876,15877],{"class":742},"admin-video-player-progress",[555,15879,1453],{"class":591},[555,15881,15882,15884,15887],{"class":557,"line":645},[555,15883,806],{"class":591},[555,15885,15886],{"class":742},"admin-video-player-settings",[555,15888,1453],{"class":591},[555,15890,15891,15893,15896],{"class":557,"line":653},[555,15892,806],{"class":591},[555,15894,15895],{"class":742},"admin-video-player-volume",[555,15897,1453],{"class":591},[555,15899,15900,15902,15905],{"class":557,"line":661},[555,15901,806],{"class":591},[555,15903,15904],{"class":742},"admin-video-player-fullscreen",[555,15906,1453],{"class":591},[555,15908,15909,15911,15913],{"class":557,"line":669},[555,15910,917],{"class":591},[555,15912,15841],{"class":742},[555,15914,746],{"class":591},[555,15916,15917,15919,15921],{"class":557,"line":905},[555,15918,927],{"class":591},[555,15920,15827],{"class":742},[555,15922,746],{"class":591},[555,15924,15925,15927,15929],{"class":557,"line":914},[555,15926,788],{"class":591},[555,15928,743],{"class":742},[555,15930,746],{"class":591},[696,15932,15827],{"id":15827},[944,15934],{"component":15935},"AdminVideoPlayer",[696,15937,15868],{"id":15868},[944,15939],{"component":15940},"AdminVideoPlayerControls",[696,15942,15904],{"id":15904},[944,15944],{"component":15945},"AdminVideoPlayerFullscreen",[696,15947,15850],{"id":15850},[944,15949],{"component":15950},"AdminVideoPlayerPlay",[696,15952,15877],{"id":15877},[944,15954],{"component":15955},"AdminVideoPlayerProgress",[696,15957,15886],{"id":15886},[944,15959],{"component":15960},"AdminVideoPlayerSettings",[696,15962,15859],{"id":15859},[944,15964],{"component":15965},"AdminVideoPlayerTime",[696,15967,15841],{"id":15841},[944,15969],{"component":15970},"AdminVideoPlayerToolbar",[696,15972,15895],{"id":15895},[944,15974],{"component":15975},"AdminVideoPlayerVolume",[540,15977,1560],{"id":1560},[1562,15979,15980,15990,16000,16006,16012,16029,16039],{},[1565,15981,15982,15986,15987,15989],{},[1139,15983,1569,15984,1573],{},[552,15985,1572],{},"：未加上時 dev console 會對 ",[552,15988,1581],{}," 元素噴 warning，詳細寫法見「安裝」章節。",[1565,15991,15992,1592,15994,4586,15996,1603,15998,717],{},[1139,15993,1591],{},[552,15995,1595],{},[552,15997,1595],{},[701,15999,1607],{"href":1606},[1565,16001,16002,16005],{},[1139,16003,16004],{},"YouTube 解析度不可切","：vidstack YouTube provider 不暴露 quality API，齒輪菜單會自動隱藏解析度區塊。",[1565,16007,16008,16011],{},[1139,16009,16010],{},"MP4 解析度不可切","：單一 MP4 來源沒有 quality 變體，齒輪菜單也不會顯示解析度區塊；如需多解析度切換，請改用 HLS 串流。",[1565,16013,16014,2470,16017,16019,16020,16023,16024,15773,16026,16028],{},[1139,16015,16016],{},"HLS qualities 載入時序",[552,16018,15754],{}," manifest 下載前 ",[552,16021,16022],{},"qualities"," 為空陣列，UI 顯示「載入中…」；manifest 解析後自動填入並依 ",[552,16025,1624],{},[552,16027,15776],{}," 套用最接近且 ≤ 目標的 quality。",[1565,16030,16031,16034,16035,16038],{},[1139,16032,16033],{},"音量、解析度跨實例共享","：所有 player 實例（含 audio-player）共用 ",[552,16036,16037],{},"admin:player:*"," namespace；多 tab 不互相同步避免操作被覆蓋。",[1565,16040,16041,16044,16045,16048,16049,16052,16053,16055],{},[1139,16042,16043],{},"全螢幕請求失敗","：若 iframe 沒給 ",[552,16046,16047],{},"allow=\"fullscreen\""," 或瀏覽器拒絕，",[552,16050,16051],{},"toggleFullscreen"," 不會 throw，會 emit ",[552,16054,6748],{}," 事件供消費端處理。",[540,16057,989],{"id":989},[991,16059],{"component":15935},[994,16061,1649],{},{"title":550,"searchDepth":605,"depth":605,"links":16063},[16064,16065,16066,16070,16082,16083],{"id":507,"depth":595,"text":507},{"id":687,"depth":595,"text":687},{"id":694,"depth":595,"text":694,"children":16067},[16068,16069],{"id":15763,"depth":605,"text":15764},{"id":15783,"depth":605,"text":15784},{"id":723,"depth":595,"text":724,"children":16071},[16072,16073,16074,16075,16076,16077,16078,16079,16080,16081],{"id":727,"depth":605,"text":727},{"id":15827,"depth":605,"text":15827},{"id":15868,"depth":605,"text":15868},{"id":15904,"depth":605,"text":15904},{"id":15850,"depth":605,"text":15850},{"id":15877,"depth":605,"text":15877},{"id":15886,"depth":605,"text":15886},{"id":15859,"depth":605,"text":15859},{"id":15841,"depth":605,"text":15841},{"id":15895,"depth":605,"text":15895},{"id":1560,"depth":595,"text":1560},{"id":989,"depth":595,"text":989},"影片播放器（vidstack）。來源：MP4、HLS、YouTube；控制：快進快退、解析度、播放速度、音量、全螢幕。",{"doc":1668},{},{"title":165,"description":16084},"2aTp7igBLDz3qwXX_cpB6wruy_AvItIRcuurhECDCvg",{"id":16090,"title":169,"body":16091,"component":526,"description":16971,"extension":1019,"links":16972,"meta":16975,"navigation":526,"new":18,"path":170,"seo":16976,"stem":171,"wrapperKind":172,"__hash__":16977},"docs\u002Fdocs\u002Fadmin\u002Fvxe-table.md",{"type":537,"value":16092,"toc":16948},[16093,16095,16113,16198,16200,16203,16206,16208,16211,16220,16223,16226,16229,16232,16235,16242,16245,16248,16251,16254,16256,16258,16820,16822,16826,16828,16831,16833,16835,16837,16840,16842,16845,16847,16850,16852,16855,16857,16860,16862,16942,16944,16946],[540,16094,507],{"id":507},[543,16096,16098],{"className":545,"code":16097,"filename":547,"language":548,"meta":549,"style":550},"pnpm dlx shadcn-vue add @admin\u002Fvxe-table\n",[552,16099,16100],{"__ignoreMap":550},[555,16101,16102,16104,16106,16108,16110],{"class":557,"line":558},[555,16103,562],{"class":561},[555,16105,566],{"class":565},[555,16107,569],{"class":565},[555,16109,572],{"class":565},[555,16111,16112],{"class":565}," @admin\u002Fvxe-table\n",[543,16114,16116],{"className":578,"code":16115,"language":580,"meta":550,"style":550},"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",[552,16117,16118,16124,16131,16138,16145,16152,16159,16166,16173,16180,16185],{"__ignoreMap":550},[555,16119,16120,16122],{"class":557,"line":558},[555,16121,588],{"class":587},[555,16123,592],{"class":591},[555,16125,16126,16129],{"class":557,"line":595},[555,16127,16128],{"class":598},"  AdminVxeTable",[555,16130,602],{"class":591},[555,16132,16133,16136],{"class":557,"line":605},[555,16134,16135],{"class":598},"  AdminVxeTableCheckbox",[555,16137,602],{"class":591},[555,16139,16140,16143],{"class":557,"line":613},[555,16141,16142],{"class":598},"  AdminVxeTableDragIcon",[555,16144,602],{"class":591},[555,16146,16147,16150],{"class":557,"line":621},[555,16148,16149],{"class":598},"  AdminVxeTableSorter",[555,16151,602],{"class":591},[555,16153,16154,16157],{"class":557,"line":629},[555,16155,16156],{"class":598},"  AdminVxeTableText",[555,16158,602],{"class":591},[555,16160,16161,16164],{"class":557,"line":637},[555,16162,16163],{"class":598},"  AdminVxeTableTextButton",[555,16165,602],{"class":591},[555,16167,16168,16171],{"class":557,"line":645},[555,16169,16170],{"class":598},"  AdminVxeTableTextButtonGroup",[555,16172,602],{"class":591},[555,16174,16175,16178],{"class":557,"line":653},[555,16176,16177],{"class":598},"  AdminVxeTableTextImage",[555,16179,602],{"class":591},[555,16181,16182],{"class":557,"line":661},[555,16183,16184],{"class":598},"  useVxeTable\n",[555,16186,16187,16189,16191,16193,16196],{"class":557,"line":669},[555,16188,672],{"class":591},[555,16190,675],{"class":587},[555,16192,678],{"class":591},[555,16194,16195],{"class":565},"@\u002Fcomponents\u002Fadmin\u002Fvxe-table",[555,16197,684],{"class":591},[540,16199,687],{"id":687},[709,16201,16202],{},"基本欄位與資料即可渲染表格。",[689,16204],{"name":16205},"VxeTableDemo",[540,16207,694],{"id":694},[696,16209,16210],{"id":16210},"排序",[709,16212,2145,16213,16216,16217,717],{},[552,16214,16215],{},"AdminVxeTableSorter"," 取代上游預設排序圖示，並關閉 ",[552,16218,16219],{},"sort-config.showIcon",[689,16221],{"name":16222},"VxeTableSortableDemo",[696,16224,16225],{"id":16225},"勾選與多選",[709,16227,16228],{},"啟用 checkbox 欄並監聽勾選變更，顯示目前選取筆數。",[689,16230],{"name":16231},"VxeTableCheckboxDemo",[696,16233,16234],{"id":16234},"分頁",[709,16236,16237,16238,16241],{},"需要底部頁碼與每頁筆數選擇時，開啟 ",[552,16239,16240],{},"pagination"," 並綁定目前頁資料與全量筆數。",[689,16243],{"name":16244},"VxeTablePaginationDemo",[696,16246,16247],{"id":16247},"所有子組件總覽",[709,16249,16250],{},"全部搭配子元件的版型一覽。",[689,16252],{"name":16253},"VxeTableShowcaseDemo",[540,16255,724],{"id":723},[696,16257,727],{"id":727},[543,16259,16261],{"className":730,"code":16260,"language":732,"meta":550,"style":550},"\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",[552,16262,16263,16271,16315,16346,16378,16386,16420,16460,16468,16481,16490,16498,16524,16541,16562,16570,16596,16629,16637,16662,16671,16693,16715,16723,16731,16744,16753,16771,16788,16796,16804,16812],{"__ignoreMap":550},[555,16264,16265,16267,16269],{"class":557,"line":558},[555,16266,739],{"class":591},[555,16268,743],{"class":742},[555,16270,746],{"class":591},[555,16272,16273,16275,16278,16281,16283,16285,16288,16290,16293,16295,16297,16299,16301,16304,16306,16308,16311,16313],{"class":557,"line":595},[555,16274,751],{"class":591},[555,16276,16277],{"class":742},"admin-vxe-table",[555,16279,16280],{"class":757}," :columns",[555,16282,761],{"class":591},[555,16284,764],{"class":591},[555,16286,16287],{"class":565},"columns",[555,16289,764],{"class":591},[555,16291,16292],{"class":757}," :data",[555,16294,761],{"class":591},[555,16296,764],{"class":591},[555,16298,15271],{"class":565},[555,16300,764],{"class":591},[555,16302,16303],{"class":757}," :sort-config",[555,16305,761],{"class":591},[555,16307,764],{"class":591},[555,16309,16310],{"class":565},"{ showIcon: false }",[555,16312,764],{"class":591},[555,16314,746],{"class":591},[555,16316,16317,16319,16321,16323,16326,16328,16330,16332,16335,16337,16340,16342,16344],{"class":557,"line":605},[555,16318,776],{"class":591},[555,16320,743],{"class":742},[555,16322,8717],{"class":591},[555,16324,16325],{"class":757},"headerCheckbox",[555,16327,761],{"class":591},[555,16329,764],{"class":591},[555,16331,4247],{"class":591},[555,16333,16334],{"class":598}," checked",[555,16336,3352],{"class":591},[555,16338,16339],{"class":598}," indeterminate ",[555,16341,672],{"class":591},[555,16343,764],{"class":591},[555,16345,746],{"class":591},[555,16347,16348,16350,16353,16356,16358,16360,16362,16364,16367,16369,16371,16374,16376],{"class":557,"line":613},[555,16349,806],{"class":591},[555,16351,16352],{"class":742},"admin-vxe-table-checkbox",[555,16354,16355],{"class":757}," :checked",[555,16357,761],{"class":591},[555,16359,764],{"class":591},[555,16361,3018],{"class":565},[555,16363,764],{"class":591},[555,16365,16366],{"class":757}," :indeterminate",[555,16368,761],{"class":591},[555,16370,764],{"class":591},[555,16372,16373],{"class":565},"indeterminate",[555,16375,764],{"class":591},[555,16377,1453],{"class":591},[555,16379,16380,16382,16384],{"class":557,"line":621},[555,16381,917],{"class":591},[555,16383,743],{"class":742},[555,16385,746],{"class":591},[555,16387,16388,16390,16392,16394,16397,16399,16401,16403,16406,16408,16410,16412,16414,16416,16418],{"class":557,"line":629},[555,16389,776],{"class":591},[555,16391,743],{"class":742},[555,16393,8717],{"class":591},[555,16395,16396],{"class":757},"rowCheckbox",[555,16398,761],{"class":591},[555,16400,764],{"class":591},[555,16402,4247],{"class":591},[555,16404,16405],{"class":598}," row",[555,16407,3352],{"class":591},[555,16409,16334],{"class":598},[555,16411,3352],{"class":591},[555,16413,16339],{"class":598},[555,16415,672],{"class":591},[555,16417,764],{"class":591},[555,16419,746],{"class":591},[555,16421,16422,16424,16426,16428,16430,16432,16434,16436,16438,16440,16442,16444,16446,16449,16451,16453,16456,16458],{"class":557,"line":637},[555,16423,806],{"class":591},[555,16425,16352],{"class":742},[555,16427,16355],{"class":757},[555,16429,761],{"class":591},[555,16431,764],{"class":591},[555,16433,3018],{"class":565},[555,16435,764],{"class":591},[555,16437,16366],{"class":757},[555,16439,761],{"class":591},[555,16441,764],{"class":591},[555,16443,16373],{"class":565},[555,16445,764],{"class":591},[555,16447,16448],{"class":757}," :row",[555,16450,761],{"class":591},[555,16452,764],{"class":591},[555,16454,16455],{"class":565},"row",[555,16457,764],{"class":591},[555,16459,1453],{"class":591},[555,16461,16462,16464,16466],{"class":557,"line":645},[555,16463,917],{"class":591},[555,16465,743],{"class":742},[555,16467,746],{"class":591},[555,16469,16470,16472,16474,16476,16479],{"class":557,"line":653},[555,16471,776],{"class":591},[555,16473,743],{"class":742},[555,16475,8717],{"class":591},[555,16477,16478],{"class":757},"rowDragIcon",[555,16480,746],{"class":591},[555,16482,16483,16485,16488],{"class":557,"line":661},[555,16484,806],{"class":591},[555,16486,16487],{"class":742},"admin-vxe-table-drag-icon",[555,16489,1453],{"class":591},[555,16491,16492,16494,16496],{"class":557,"line":669},[555,16493,917],{"class":591},[555,16495,743],{"class":742},[555,16497,746],{"class":591},[555,16499,16500,16502,16504,16506,16509,16511,16513,16515,16518,16520,16522],{"class":557,"line":905},[555,16501,776],{"class":591},[555,16503,743],{"class":742},[555,16505,8717],{"class":591},[555,16507,16508],{"class":757},"stockHeader",[555,16510,761],{"class":591},[555,16512,764],{"class":591},[555,16514,4247],{"class":591},[555,16516,16517],{"class":598}," column ",[555,16519,672],{"class":591},[555,16521,764],{"class":591},[555,16523,746],{"class":591},[555,16525,16526,16528,16530,16532,16535,16537,16539],{"class":557,"line":914},[555,16527,806],{"class":591},[555,16529,555],{"class":742},[555,16531,782],{"class":591},[555,16533,16534],{"class":598},"庫存",[555,16536,788],{"class":591},[555,16538,555],{"class":742},[555,16540,746],{"class":591},[555,16542,16543,16545,16548,16551,16553,16555,16558,16560],{"class":557,"line":924},[555,16544,806],{"class":591},[555,16546,16547],{"class":742},"admin-vxe-table-sorter",[555,16549,16550],{"class":757}," :column",[555,16552,761],{"class":591},[555,16554,764],{"class":591},[555,16556,16557],{"class":565},"column",[555,16559,764],{"class":591},[555,16561,1453],{"class":591},[555,16563,16564,16566,16568],{"class":557,"line":934},[555,16565,917],{"class":591},[555,16567,743],{"class":742},[555,16569,746],{"class":591},[555,16571,16572,16574,16576,16578,16581,16583,16585,16587,16590,16592,16594],{"class":557,"line":3540},[555,16573,776],{"class":591},[555,16575,743],{"class":742},[555,16577,8717],{"class":591},[555,16579,16580],{"class":757},"product",[555,16582,761],{"class":591},[555,16584,764],{"class":591},[555,16586,4247],{"class":591},[555,16588,16589],{"class":598}," row ",[555,16591,672],{"class":591},[555,16593,764],{"class":591},[555,16595,746],{"class":591},[555,16597,16598,16600,16603,16606,16608,16610,16613,16615,16618,16620,16622,16625,16627],{"class":557,"line":4426},[555,16599,806],{"class":591},[555,16601,16602],{"class":742},"admin-vxe-table-text-image",[555,16604,16605],{"class":757}," :image",[555,16607,761],{"class":591},[555,16609,764],{"class":591},[555,16611,16612],{"class":565},"row.image",[555,16614,764],{"class":591},[555,16616,16617],{"class":757}," :name",[555,16619,761],{"class":591},[555,16621,764],{"class":591},[555,16623,16624],{"class":565},"row.name",[555,16626,764],{"class":591},[555,16628,1453],{"class":591},[555,16630,16631,16633,16635],{"class":557,"line":6198},[555,16632,917],{"class":591},[555,16634,743],{"class":742},[555,16636,746],{"class":591},[555,16638,16639,16641,16643,16645,16648,16650,16652,16654,16656,16658,16660],{"class":557,"line":6208},[555,16640,776],{"class":591},[555,16642,743],{"class":742},[555,16644,8717],{"class":591},[555,16646,16647],{"class":757},"category",[555,16649,761],{"class":591},[555,16651,764],{"class":591},[555,16653,4247],{"class":591},[555,16655,16589],{"class":598},[555,16657,672],{"class":591},[555,16659,764],{"class":591},[555,16661,746],{"class":591},[555,16663,16664,16666,16669],{"class":557,"line":6227},[555,16665,806],{"class":591},[555,16667,16668],{"class":742},"admin-vxe-table-text",[555,16670,746],{"class":591},[555,16672,16673,16675,16677,16679,16682,16684,16687,16689,16691],{"class":557,"line":6237},[555,16674,816],{"class":591},[555,16676,743],{"class":742},[555,16678,8717],{"class":591},[555,16680,16681],{"class":757},"title",[555,16683,782],{"class":591},[555,16685,16686],{"class":598},"{{ row.category }}",[555,16688,788],{"class":591},[555,16690,743],{"class":742},[555,16692,746],{"class":591},[555,16694,16695,16697,16699,16701,16704,16706,16709,16711,16713],{"class":557,"line":6246},[555,16696,816],{"class":591},[555,16698,743],{"class":742},[555,16700,8717],{"class":591},[555,16702,16703],{"class":757},"subtitle",[555,16705,782],{"class":591},[555,16707,16708],{"class":598},"{{ row.sku }}",[555,16710,788],{"class":591},[555,16712,743],{"class":742},[555,16714,746],{"class":591},[555,16716,16717,16719,16721],{"class":557,"line":6255},[555,16718,853],{"class":591},[555,16720,16668],{"class":742},[555,16722,746],{"class":591},[555,16724,16725,16727,16729],{"class":557,"line":524},[555,16726,917],{"class":591},[555,16728,743],{"class":742},[555,16730,746],{"class":591},[555,16732,16733,16735,16737,16739,16742],{"class":557,"line":6868},[555,16734,776],{"class":591},[555,16736,743],{"class":742},[555,16738,8717],{"class":591},[555,16740,16741],{"class":757},"actions",[555,16743,746],{"class":591},[555,16745,16746,16748,16751],{"class":557,"line":6877},[555,16747,806],{"class":591},[555,16749,16750],{"class":742},"admin-vxe-table-text-button-group",[555,16752,746],{"class":591},[555,16754,16755,16757,16760,16762,16765,16767,16769],{"class":557,"line":6898},[555,16756,816],{"class":591},[555,16758,16759],{"class":742},"admin-vxe-table-text-button",[555,16761,782],{"class":591},[555,16763,16764],{"class":598},"編輯",[555,16766,788],{"class":591},[555,16768,16759],{"class":742},[555,16770,746],{"class":591},[555,16772,16773,16775,16777,16779,16782,16784,16786],{"class":557,"line":6907},[555,16774,816],{"class":591},[555,16776,16759],{"class":742},[555,16778,782],{"class":591},[555,16780,16781],{"class":598},"刪除",[555,16783,788],{"class":591},[555,16785,16759],{"class":742},[555,16787,746],{"class":591},[555,16789,16790,16792,16794],{"class":557,"line":6916},[555,16791,853],{"class":591},[555,16793,16750],{"class":742},[555,16795,746],{"class":591},[555,16797,16798,16800,16802],{"class":557,"line":6925},[555,16799,917],{"class":591},[555,16801,743],{"class":742},[555,16803,746],{"class":591},[555,16805,16806,16808,16810],{"class":557,"line":12227},[555,16807,927],{"class":591},[555,16809,16277],{"class":742},[555,16811,746],{"class":591},[555,16813,16814,16816,16818],{"class":557,"line":12236},[555,16815,788],{"class":591},[555,16817,743],{"class":742},[555,16819,746],{"class":591},[696,16821,16277],{"id":16277},[944,16823],{"component":16824,"events-source":16825,"expose-source":16825,"props-source":16825,"slots-source":16825},"AdminVxeTable","admin",[696,16827,16352],{"id":16352},[944,16829],{"component":16830},"AdminVxeTableCheckbox",[696,16832,16547],{"id":16547},[944,16834],{"component":16215},[696,16836,16602],{"id":16602},[944,16838],{"component":16839},"AdminVxeTableTextImage",[696,16841,16759],{"id":16759},[944,16843],{"component":16844},"AdminVxeTableTextButton",[696,16846,16750],{"id":16750},[944,16848],{"component":16849},"AdminVxeTableTextButtonGroup",[696,16851,16487],{"id":16487},[944,16853],{"component":16854},"AdminVxeTableDragIcon",[696,16856,16668],{"id":16668},[944,16858],{"component":16859},"AdminVxeTableText",[540,16861,1560],{"id":1560},[1562,16863,16864,16879,16898,16922],{},[1565,16865,16866,2470,16868,16871,16872,4586,16874,16876,16877,717],{},[1139,16867,1591],{},[552,16869,16870],{},"vxe-table"," 依賴瀏覽器 DOM；元件殼不含 ",[552,16873,1595],{},[552,16875,1595],{},"（或其他框架等價機制）包覆；純 CSR 不需處理。見 ",[701,16878,1607],{"href":1606},[1565,16880,16881,16886,16887,16889,16890,16893,16894,16897],{},[1139,16882,16883,16885],{},[552,16884,7804],{}," 由 admin overlay 接管","：傳入 ",[552,16888,7804],{}," 時會顯示 ",[552,16891,16892],{},"v-admin-loading"," 遮罩，不會轉發至 ",[552,16895,16896],{},"vxe-grid"," 原生 loading／loading slot。",[1565,16899,16900,2470,16906,14869,16908,16910,16911,16914,16915,16918,16919,717],{},[1139,16901,16902,16903,16905],{},"自訂 cell 子元件須置於 ",[552,16904,16824],{}," 內",[552,16907,16830],{},[552,16909,16215],{}," 等透過 ",[552,16912,16913],{},"useVxeTable"," 取得內部 ",[552,16916,16917],{},"gridRef","；寫自訂 cell 時也可直接呼叫 ",[552,16920,16921],{},"useVxeTable()",[1565,16923,16924,2470,16927,16929,16930,2474,16932,16935,16936,16938,16939,16941],{},[1139,16925,16926],{},"分頁資料由消費端切片",[552,16928,16240],{}," 只負責 UI 與 ",[552,16931,10430],{},[552,16933,16934],{},"itemsPerPage"," 雙向綁定；表格 ",[552,16937,15271],{}," 仍須傳入當前頁資料，",[552,16940,10454],{}," 為全量筆數。",[540,16943,989],{"id":989},[991,16945],{"component":16824},[994,16947,996],{},{"title":550,"searchDepth":605,"depth":605,"links":16949},[16950,16951,16952,16958,16969,16970],{"id":507,"depth":595,"text":507},{"id":687,"depth":595,"text":687},{"id":694,"depth":595,"text":694,"children":16953},[16954,16955,16956,16957],{"id":16210,"depth":605,"text":16210},{"id":16225,"depth":605,"text":16225},{"id":16234,"depth":605,"text":16234},{"id":16247,"depth":605,"text":16247},{"id":723,"depth":595,"text":724,"children":16959},[16960,16961,16962,16963,16964,16965,16966,16967,16968],{"id":727,"depth":605,"text":727},{"id":16277,"depth":605,"text":16277},{"id":16352,"depth":605,"text":16352},{"id":16547,"depth":605,"text":16547},{"id":16602,"depth":605,"text":16602},{"id":16759,"depth":605,"text":16759},{"id":16750,"depth":605,"text":16750},{"id":16487,"depth":605,"text":16487},{"id":16668,"depth":605,"text":16668},{"id":1560,"depth":595,"text":1560},{"id":989,"depth":595,"text":989},"資料表格（vxe-table）。排序、勾選、分頁。",{"doc":16973,"api":16974},"https:\u002F\u002Fvxetable.cn\u002F","https:\u002F\u002Fvxetable.cn\u002Fv4\u002Ftable\u002Fapi",{},{"title":169,"description":16971},"jpSJkNN-W60xDQUTjxVNW_ZVHpNN5MwhNLl2sNX31vY",[16979,17372,18176,19102,19733,20081,20435,21780,22333,23162,23896,24556,24667,26525],{"id":16980,"title":438,"body":16981,"component":526,"description":17366,"extension":1019,"links":17367,"meta":17369,"navigation":526,"new":18,"path":439,"seo":17370,"stem":440,"wrapperKind":19,"__hash__":17371},"docs\u002Fdocs\u002Feditor\u002F4.addons\u002F14.drag-handle.md",{"type":537,"value":16982,"toc":17357},[16983,16985,17003,17028,17043,17045,17056,17059,17289,17291,17293,17296,17298,17351,17353,17355],[540,16984,507],{"id":507},[543,16986,16988],{"className":545,"code":16987,"filename":547,"language":548,"meta":549,"style":550},"pnpm dlx shadcn-vue add @admin\u002Feditor-drag-handle\n",[552,16989,16990],{"__ignoreMap":550},[555,16991,16992,16994,16996,16998,17000],{"class":557,"line":558},[555,16993,562],{"class":561},[555,16995,566],{"class":565},[555,16997,569],{"class":565},[555,16999,572],{"class":565},[555,17001,17002],{"class":565}," @admin\u002Feditor-drag-handle\n",[543,17004,17006],{"className":578,"code":17005,"language":580,"meta":550,"style":550},"import { AdminEditorDragHandle } from '@\u002Fregistry\u002Fadmin\u002Fui\u002Feditor-drag-handle'\n",[552,17007,17008],{"__ignoreMap":550},[555,17009,17010,17012,17014,17017,17019,17021,17023,17026],{"class":557,"line":558},[555,17011,588],{"class":587},[555,17013,1277],{"class":591},[555,17015,17016],{"class":598}," AdminEditorDragHandle",[555,17018,1283],{"class":591},[555,17020,675],{"class":587},[555,17022,678],{"class":591},[555,17024,17025],{"class":565},"@\u002Fregistry\u002Fadmin\u002Fui\u002Feditor-drag-handle",[555,17027,684],{"class":591},[709,17029,17030,17033,17034,1617,17037,717,17040,17042],{},[552,17031,17032],{},"admin-editor-drag-handle"," 依賴 ",[552,17035,17036],{},"@admin\u002Frich-editor",[552,17038,17039],{},"@tiptap\u002Fextension-drag-handle-vue-3",[552,17041,17036],{}," 本身不會渲染任何 drag handle，需安裝本包並放進 default slot。",[540,17044,687],{"id":687},[709,17046,17047,17048,17051,17052,17055],{},"把 ",[552,17049,17050],{},"\u003CAdminEditorDragHandle>"," 放進 ",[552,17053,17054],{},"\u003CAdminRichEditor>"," 的 default slot，游標 hover 區塊時於左側浮出 grip。",[689,17057],{"name":17058},"EditorDragHandleDemo",[543,17060,17062],{"className":730,"code":17061,"language":732,"meta":550,"style":550},"\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",[552,17063,17064,17084,17102,17120,17145,17165,17169,17190,17198,17202,17210,17240,17263,17273,17281],{"__ignoreMap":550},[555,17065,17066,17068,17070,17072,17074,17076,17078,17080,17082],{"class":557,"line":558},[555,17067,739],{"class":591},[555,17069,3280],{"class":742},[555,17071,3283],{"class":757},[555,17073,3286],{"class":757},[555,17075,761],{"class":591},[555,17077,764],{"class":591},[555,17079,580],{"class":565},[555,17081,764],{"class":591},[555,17083,746],{"class":591},[555,17085,17086,17088,17090,17092,17094,17096,17098,17100],{"class":557,"line":595},[555,17087,588],{"class":587},[555,17089,1277],{"class":591},[555,17091,3431],{"class":598},[555,17093,1283],{"class":591},[555,17095,675],{"class":587},[555,17097,678],{"class":591},[555,17099,732],{"class":565},[555,17101,684],{"class":591},[555,17103,17104,17106,17108,17110,17112,17114,17116,17118],{"class":557,"line":605},[555,17105,588],{"class":587},[555,17107,1277],{"class":591},[555,17109,17016],{"class":598},[555,17111,1283],{"class":591},[555,17113,675],{"class":587},[555,17115,678],{"class":591},[555,17117,17025],{"class":565},[555,17119,684],{"class":591},[555,17121,17122,17124,17126,17129,17131,17134,17136,17138,17140,17143],{"class":557,"line":613},[555,17123,588],{"class":587},[555,17125,1277],{"class":591},[555,17127,17128],{"class":598}," AdminEditorToolbar",[555,17130,3352],{"class":591},[555,17132,17133],{"class":598}," defaultEditorItems",[555,17135,1283],{"class":591},[555,17137,675],{"class":587},[555,17139,678],{"class":591},[555,17141,17142],{"class":565},"@\u002Fregistry\u002Fadmin\u002Fui\u002Feditor-toolbar",[555,17144,684],{"class":591},[555,17146,17147,17149,17151,17154,17156,17158,17160,17163],{"class":557,"line":621},[555,17148,588],{"class":587},[555,17150,1277],{"class":591},[555,17152,17153],{"class":598}," AdminRichEditor",[555,17155,1283],{"class":591},[555,17157,675],{"class":587},[555,17159,678],{"class":591},[555,17161,17162],{"class":565},"@\u002Fregistry\u002Fadmin\u002Fui\u002Frich-editor",[555,17164,684],{"class":591},[555,17166,17167],{"class":557,"line":629},[555,17168,1297],{"emptyLinePlaceholder":526},[555,17170,17171,17173,17175,17177,17179,17181,17183,17186,17188],{"class":557,"line":637},[555,17172,3325],{"class":757},[555,17174,3426],{"class":598},[555,17176,761],{"class":591},[555,17178,3431],{"class":1158},[555,17180,1162],{"class":598},[555,17182,1218],{"class":591},[555,17184,17185],{"class":565},"\u003Cp>hover 我，左側會出現拖曳把手。\u003C\u002Fp>",[555,17187,1218],{"class":591},[555,17189,1226],{"class":598},[555,17191,17192,17194,17196],{"class":557,"line":645},[555,17193,788],{"class":591},[555,17195,3280],{"class":742},[555,17197,746],{"class":591},[555,17199,17200],{"class":557,"line":653},[555,17201,1297],{"emptyLinePlaceholder":526},[555,17203,17204,17206,17208],{"class":557,"line":661},[555,17205,739],{"class":591},[555,17207,743],{"class":742},[555,17209,746],{"class":591},[555,17211,17212,17214,17217,17219,17221,17223,17226,17228,17230,17232,17234,17236,17238],{"class":557,"line":669},[555,17213,751],{"class":591},[555,17215,17216],{"class":742},"admin-rich-editor",[555,17218,3599],{"class":757},[555,17220,761],{"class":591},[555,17222,764],{"class":591},[555,17224,17225],{"class":565},"{ editor }",[555,17227,764],{"class":591},[555,17229,2871],{"class":757},[555,17231,761],{"class":591},[555,17233,764],{"class":591},[555,17235,2724],{"class":565},[555,17237,764],{"class":591},[555,17239,746],{"class":591},[555,17241,17242,17244,17247,17250,17252,17254,17256,17259,17261],{"class":557,"line":905},[555,17243,776],{"class":591},[555,17245,17246],{"class":742},"admin-editor-toolbar",[555,17248,17249],{"class":757}," :editor",[555,17251,15264],{"class":757},[555,17253,761],{"class":591},[555,17255,764],{"class":591},[555,17257,17258],{"class":565},"defaultEditorItems",[555,17260,764],{"class":591},[555,17262,1453],{"class":591},[555,17264,17265,17267,17269,17271],{"class":557,"line":914},[555,17266,776],{"class":591},[555,17268,17032],{"class":742},[555,17270,17249],{"class":757},[555,17272,1453],{"class":591},[555,17274,17275,17277,17279],{"class":557,"line":924},[555,17276,927],{"class":591},[555,17278,17216],{"class":742},[555,17280,746],{"class":591},[555,17282,17283,17285,17287],{"class":557,"line":934},[555,17284,788],{"class":591},[555,17286,743],{"class":742},[555,17288,746],{"class":591},[540,17290,724],{"id":723},[696,17292,17032],{"id":17032},[944,17294],{"component":17295},"AdminEditorDragHandle",[540,17297,1560],{"id":1560},[1562,17299,17300,17308,17334],{},[1565,17301,17302,2470,17305,17307],{},[1139,17303,17304],{},"預設不啟用",[552,17306,17036],{}," 本身不顯示 drag handle；未安裝本包則無拖曳把手。",[1565,17309,17310,17313,17314,17317,17318,17320,17321,17324,17325,7627,17328,1127,17331,717],{},[1139,17311,17312],{},"最小官方包裝","：本元件僅轉發 ",[552,17315,17316],{},"editor","、提供預設 grip，定位採官方 ",[552,17319,17039],{}," 預設（",[552,17322,17323],{},"left-start","）。需自訂 icon 改用 default slot；需 node 變更 callback 或點擊選取等行為，請直接使用官方 ",[552,17326,17327],{},"DragHandle",[552,17329,17330],{},"onNodeChange",[552,17332,17333],{},"computePositionConfig",[1565,17335,17336,17339,17340,17343,17344,17346,17347,17350],{},[1139,17337,17338],{},"裁切限制","：把手 append 於編輯器內容層，若超出編輯器 ",[552,17341,17342],{},"overflow-hidden"," 邊界會被裁切（官方 ",[552,17345,17327],{}," 無 ",[552,17348,17349],{},"appendTo","，無法 portal）。",[540,17352,989],{"id":989},[991,17354],{"component":17295},[994,17356,3748],{},{"title":550,"searchDepth":605,"depth":605,"links":17358},[17359,17360,17361,17364,17365],{"id":507,"depth":595,"text":507},{"id":687,"depth":595,"text":687},{"id":723,"depth":595,"text":724,"children":17362},[17363],{"id":17032,"depth":605,"text":17032},{"id":1560,"depth":595,"text":1560},{"id":989,"depth":595,"text":989},"游標停在區塊時左側浮出把手；拖曳排序或選取區塊。",{"doc":17368},"https:\u002F\u002Ftiptap.dev\u002Fdocs\u002Feditor\u002Fextensions\u002Ffunctionality\u002Fdrag-handle-vue",{},{"title":438,"description":17366},"8z8PuoQ35SNQPZzI9c8VG66Mhf_AkhJZRkIrmTLNjow",{"id":17373,"title":422,"body":17374,"component":526,"description":18170,"extension":1019,"links":18171,"meta":18173,"navigation":526,"new":18,"path":423,"seo":18174,"stem":424,"wrapperKind":19,"__hash__":18175},"docs\u002Fdocs\u002Feditor\u002F4.addons\u002F10.emoji.md",{"type":537,"value":17375,"toc":18157},[17376,17378,17396,17442,17452,17491,17555,17557,17560,17851,17855,17868,17996,18000,18019,18023,18028,18080,18091,18120,18135,18137,18143,18145,18147,18150,18152,18154],[540,17377,507],{"id":507},[543,17379,17381],{"className":545,"code":17380,"filename":547,"language":548,"meta":549,"style":550},"pnpm dlx shadcn-vue add @admin\u002Feditor-emoji-menu\n",[552,17382,17383],{"__ignoreMap":550},[555,17384,17385,17387,17389,17391,17393],{"class":557,"line":558},[555,17386,562],{"class":561},[555,17388,566],{"class":565},[555,17390,569],{"class":565},[555,17392,572],{"class":565},[555,17394,17395],{"class":565}," @admin\u002Feditor-emoji-menu\n",[543,17397,17399],{"className":578,"code":17398,"language":580,"meta":550,"style":550},"import type { EmojiMenuItem } from '@\u002Fregistry\u002Fadmin\u002Fui\u002Feditor-emoji-menu'\nimport { AdminEditorEmojiMenu } from '@\u002Fregistry\u002Fadmin\u002Fui\u002Feditor-emoji-menu'\n",[552,17400,17401,17423],{"__ignoreMap":550},[555,17402,17403,17405,17407,17409,17412,17414,17416,17418,17421],{"class":557,"line":558},[555,17404,588],{"class":587},[555,17406,3141],{"class":587},[555,17408,1277],{"class":591},[555,17410,17411],{"class":598}," EmojiMenuItem",[555,17413,1283],{"class":591},[555,17415,675],{"class":587},[555,17417,678],{"class":591},[555,17419,17420],{"class":565},"@\u002Fregistry\u002Fadmin\u002Fui\u002Feditor-emoji-menu",[555,17422,684],{"class":591},[555,17424,17425,17427,17429,17432,17434,17436,17438,17440],{"class":557,"line":595},[555,17426,588],{"class":587},[555,17428,1277],{"class":591},[555,17430,17431],{"class":598}," AdminEditorEmojiMenu",[555,17433,1283],{"class":591},[555,17435,675],{"class":587},[555,17437,678],{"class":591},[555,17439,17420],{"class":565},[555,17441,684],{"class":591},[709,17443,17444,17033,17447,1617,17449,717],{},[552,17445,17446],{},"admin-editor-emoji-menu",[552,17448,17036],{},[552,17450,17451],{},"@tiptap\u002Fextension-emoji",[2821,17453,17455,17464],{"title":17454,"type":8630},"裝完必須在 :extensions 注入 Emoji",[709,17456,17457,17459,17460,17463],{},[552,17458,17451],{}," 跟 mention 一樣是 Node extension，會動到 schema，而 schema 在編輯器建立時就固定、無法後補。",[552,17461,17462],{},"\u003CAdminEditorEmojiMenu>"," mount 時會註冊 Suggestion plugin，popup 照常浮現，但 schema 沒有 emoji node 時，選定後只能退回插入純 Unicode 字元，失去 emoji node 的三個好處：",[1562,17465,17466,17475,17485],{},[1565,17467,17468,2470,17471,17474],{},[1139,17469,17470],{},"多 codepoint 安全",[552,17472,17473],{},"👨‍👩‍👧"," 這類 ZWJ 組合 emoji，純 Unicode 模式下游標和 backspace 會跳到字元中間",[1565,17476,17477,17480,17481,17484],{},[1139,17478,17479],{},"attrs 持久化","：node 模式存的是 ",[552,17482,17483],{},"data-name=\"smile\"","，之後可以用 shortcode 反查、切換 emoji set",[1565,17486,17487,17490],{},[1139,17488,17489],{},"不吃 mark","：atomic node 不會被 bold \u002F italic \u002F color 等 mark 套到",[543,17492,17494],{"className":578,"code":17493,"language":580,"meta":550,"style":550},"import Emoji from '@tiptap\u002Fextension-emoji'\nconst extensions = [Emoji.configure({ enableEmoticons: false })]\n\n\u002F\u002F \u003CAdminRichEditor :extensions=\"extensions\">\n",[552,17495,17496,17511,17546,17550],{"__ignoreMap":550},[555,17497,17498,17500,17503,17505,17507,17509],{"class":557,"line":558},[555,17499,588],{"class":587},[555,17501,17502],{"class":598}," Emoji ",[555,17504,1263],{"class":587},[555,17506,678],{"class":591},[555,17508,17451],{"class":565},[555,17510,684],{"class":591},[555,17512,17513,17515,17518,17520,17523,17525,17528,17530,17532,17535,17537,17541,17543],{"class":557,"line":595},[555,17514,3325],{"class":757},[555,17516,17517],{"class":598}," extensions ",[555,17519,761],{"class":591},[555,17521,17522],{"class":598}," [Emoji",[555,17524,1210],{"class":591},[555,17526,17527],{"class":1158},"configure",[555,17529,1162],{"class":598},[555,17531,4247],{"class":591},[555,17533,17534],{"class":742}," enableEmoticons",[555,17536,1173],{"class":591},[555,17538,17540],{"class":17539},"sfNiH"," false",[555,17542,1283],{"class":591},[555,17544,17545],{"class":598},")]\n",[555,17547,17548],{"class":557,"line":605},[555,17549,1297],{"emptyLinePlaceholder":526},[555,17551,17552],{"class":557,"line":613},[555,17553,17554],{"class":4835},"\u002F\u002F \u003CAdminRichEditor :extensions=\"extensions\">\n",[540,17556,687],{"id":687},[689,17558],{"name":17559},"EditorEmojiMenuDemo",[543,17561,17563],{"className":730,"code":17562,"language":732,"meta":550,"style":550},"\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",[552,17564,17565,17585,17609,17627,17645,17663,17667,17683,17688,17717,17721,17726,17754,17762,17766,17774,17814,17835,17843],{"__ignoreMap":550},[555,17566,17567,17569,17571,17573,17575,17577,17579,17581,17583],{"class":557,"line":558},[555,17568,739],{"class":591},[555,17570,3280],{"class":742},[555,17572,3283],{"class":757},[555,17574,3286],{"class":757},[555,17576,761],{"class":591},[555,17578,764],{"class":591},[555,17580,580],{"class":565},[555,17582,764],{"class":591},[555,17584,746],{"class":591},[555,17586,17587,17589,17592,17594,17596,17599,17601,17603,17605,17607],{"class":557,"line":595},[555,17588,588],{"class":587},[555,17590,17591],{"class":598}," Emoji",[555,17593,3352],{"class":591},[555,17595,1277],{"class":591},[555,17597,17598],{"class":598}," gitHubEmojis",[555,17600,1283],{"class":591},[555,17602,675],{"class":587},[555,17604,678],{"class":591},[555,17606,17451],{"class":565},[555,17608,684],{"class":591},[555,17610,17611,17613,17615,17617,17619,17621,17623,17625],{"class":557,"line":605},[555,17612,588],{"class":587},[555,17614,1277],{"class":591},[555,17616,3431],{"class":598},[555,17618,1283],{"class":591},[555,17620,675],{"class":587},[555,17622,678],{"class":591},[555,17624,732],{"class":565},[555,17626,684],{"class":591},[555,17628,17629,17631,17633,17635,17637,17639,17641,17643],{"class":557,"line":613},[555,17630,588],{"class":587},[555,17632,1277],{"class":591},[555,17634,17431],{"class":598},[555,17636,1283],{"class":591},[555,17638,675],{"class":587},[555,17640,678],{"class":591},[555,17642,17420],{"class":565},[555,17644,684],{"class":591},[555,17646,17647,17649,17651,17653,17655,17657,17659,17661],{"class":557,"line":621},[555,17648,588],{"class":587},[555,17650,1277],{"class":591},[555,17652,17153],{"class":598},[555,17654,1283],{"class":591},[555,17656,675],{"class":587},[555,17658,678],{"class":591},[555,17660,17162],{"class":565},[555,17662,684],{"class":591},[555,17664,17665],{"class":557,"line":629},[555,17666,1297],{"emptyLinePlaceholder":526},[555,17668,17669,17671,17673,17675,17677,17679,17681],{"class":557,"line":637},[555,17670,3325],{"class":757},[555,17672,3426],{"class":598},[555,17674,761],{"class":591},[555,17676,3431],{"class":1158},[555,17678,1162],{"class":598},[555,17680,8643],{"class":591},[555,17682,1226],{"class":598},[555,17684,17685],{"class":557,"line":645},[555,17686,17687],{"class":4835},"\u002F\u002F @tiptap\u002Fextension-emoji 內附 gitHubEmojis 資料集（約 1500 個），免自帶 JSON\n",[555,17689,17690,17692,17695,17697,17699,17701,17704,17706,17710,17712,17715],{"class":557,"line":653},[555,17691,3325],{"class":757},[555,17693,17694],{"class":598}," emojis ",[555,17696,761],{"class":591},[555,17698,17598],{"class":598},[555,17700,1210],{"class":591},[555,17702,17703],{"class":1158},"slice",[555,17705,1162],{"class":598},[555,17707,17709],{"class":17708},"sbssI","0",[555,17711,3352],{"class":591},[555,17713,17714],{"class":17708}," 50",[555,17716,1226],{"class":598},[555,17718,17719],{"class":557,"line":661},[555,17720,1297],{"emptyLinePlaceholder":526},[555,17722,17723],{"class":557,"line":669},[555,17724,17725],{"class":4835},"\u002F\u002F schema 需要 emoji node，顯式傳入 Emoji extension\n",[555,17727,17728,17730,17732,17734,17736,17738,17740,17742,17744,17746,17748,17750,17752],{"class":557,"line":905},[555,17729,3325],{"class":757},[555,17731,17517],{"class":598},[555,17733,761],{"class":591},[555,17735,17522],{"class":598},[555,17737,1210],{"class":591},[555,17739,17527],{"class":1158},[555,17741,1162],{"class":598},[555,17743,4247],{"class":591},[555,17745,17534],{"class":742},[555,17747,1173],{"class":591},[555,17749,17540],{"class":17539},[555,17751,1283],{"class":591},[555,17753,17545],{"class":598},[555,17755,17756,17758,17760],{"class":557,"line":914},[555,17757,788],{"class":591},[555,17759,3280],{"class":742},[555,17761,746],{"class":591},[555,17763,17764],{"class":557,"line":924},[555,17765,1297],{"emptyLinePlaceholder":526},[555,17767,17768,17770,17772],{"class":557,"line":934},[555,17769,739],{"class":591},[555,17771,743],{"class":742},[555,17773,746],{"class":591},[555,17775,17776,17778,17780,17782,17784,17786,17788,17790,17792,17794,17796,17798,17800,17803,17805,17807,17810,17812],{"class":557,"line":3540},[555,17777,751],{"class":591},[555,17779,17216],{"class":742},[555,17781,3599],{"class":757},[555,17783,761],{"class":591},[555,17785,764],{"class":591},[555,17787,17225],{"class":565},[555,17789,764],{"class":591},[555,17791,2871],{"class":757},[555,17793,761],{"class":591},[555,17795,764],{"class":591},[555,17797,2724],{"class":565},[555,17799,764],{"class":591},[555,17801,17802],{"class":757}," :extensions",[555,17804,761],{"class":591},[555,17806,764],{"class":591},[555,17808,17809],{"class":565},"extensions",[555,17811,764],{"class":591},[555,17813,746],{"class":591},[555,17815,17816,17818,17820,17822,17824,17826,17828,17831,17833],{"class":557,"line":4426},[555,17817,776],{"class":591},[555,17819,17446],{"class":742},[555,17821,17249],{"class":757},[555,17823,15264],{"class":757},[555,17825,761],{"class":591},[555,17827,764],{"class":591},[555,17829,17830],{"class":565},"emojis",[555,17832,764],{"class":591},[555,17834,1453],{"class":591},[555,17836,17837,17839,17841],{"class":557,"line":6198},[555,17838,927],{"class":591},[555,17840,17216],{"class":742},[555,17842,746],{"class":591},[555,17844,17845,17847,17849],{"class":557,"line":6208},[555,17846,788],{"class":591},[555,17848,743],{"class":742},[555,17850,746],{"class":591},[540,17852,17854],{"id":17853},"emojimenuitem-介面","EmojiMenuItem 介面",[709,17856,17857,17858,17861,17862,7627,17864,17867],{},"本 block 的 ",[552,17859,17860],{},"EmojiMenuItem"," 跟 ",[552,17863,17451],{},[552,17865,17866],{},"EmojiItem"," shape 一致：",[543,17869,17871],{"className":578,"code":17870,"language":580,"meta":550,"style":550},"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",[552,17872,17873,17882,17894,17906,17921,17935,17947,17959,17973,17992],{"__ignoreMap":550},[555,17874,17875,17878,17880],{"class":557,"line":558},[555,17876,17877],{"class":757},"interface",[555,17879,17411],{"class":561},[555,17881,592],{"class":591},[555,17883,17884,17886,17888,17891],{"class":557,"line":595},[555,17885,8996],{"class":742},[555,17887,1173],{"class":591},[555,17889,17890],{"class":561}," string",[555,17892,17893],{"class":4835}," \u002F\u002F 唯一名稱，當作 emoji node attr 存\n",[555,17895,17896,17899,17901,17903],{"class":557,"line":605},[555,17897,17898],{"class":742},"  emoji",[555,17900,9031],{"class":591},[555,17902,17890],{"class":561},[555,17904,17905],{"class":4835}," \u002F\u002F Unicode 字元（fallback 模式時用）\n",[555,17907,17908,17911,17913,17915,17918],{"class":557,"line":613},[555,17909,17910],{"class":742},"  shortcodes",[555,17912,1173],{"class":591},[555,17914,17890],{"class":561},[555,17916,17917],{"class":598},"[] ",[555,17919,17920],{"class":4835},"\u002F\u002F 簡碼 filter 欄位（:smile \u002F :+1）\n",[555,17922,17923,17926,17928,17930,17932],{"class":557,"line":621},[555,17924,17925],{"class":742},"  tags",[555,17927,1173],{"class":591},[555,17929,17890],{"class":561},[555,17931,17917],{"class":598},[555,17933,17934],{"class":4835},"\u002F\u002F 標籤 filter 欄位（happy \u002F love）\n",[555,17936,17937,17940,17942,17944],{"class":557,"line":629},[555,17938,17939],{"class":742},"  group",[555,17941,9031],{"class":591},[555,17943,17890],{"class":561},[555,17945,17946],{"class":4835}," \u002F\u002F 分組（供 UI 分類）\n",[555,17948,17949,17952,17954,17956],{"class":557,"line":637},[555,17950,17951],{"class":742},"  fallbackImage",[555,17953,9031],{"class":591},[555,17955,17890],{"class":561},[555,17957,17958],{"class":4835}," \u002F\u002F emoji 為 undefined 時的圖片 fallback（自訂貼圖）\n",[555,17960,17961,17964,17966,17968,17970],{"class":557,"line":645},[555,17962,17963],{"class":742},"  emoticons",[555,17965,9031],{"class":591},[555,17967,17890],{"class":561},[555,17969,17917],{"class":598},[555,17971,17972],{"class":4835},"\u002F\u002F 顏文字（`:)` 對應 :smile），配 enableEmoticons 使用\n",[555,17974,17975,17978,17981,17983,17985,17987,17989],{"class":557,"line":653},[555,17976,17977],{"class":598},"  [",[555,17979,17980],{"class":1197},"key",[555,17982,1173],{"class":591},[555,17984,17890],{"class":561},[555,17986,3456],{"class":598},[555,17988,1173],{"class":591},[555,17990,17991],{"class":561}," unknown\n",[555,17993,17994],{"class":557,"line":661},[555,17995,10152],{"class":591},[696,17997,17999],{"id":17998},"filter-多欄位行為","filter 多欄位行為",[709,18001,18002,18003,18006,18007,18010,18011,18014,18015,18018],{},"預設 ",[552,18004,18005],{},"filterFields = ['name', 'shortcodes', 'tags']","，輸入的字串會同時比對這三個欄位。例如輸入 ",[552,18008,18009],{},":happy"," 時，",[552,18012,18013],{},"{ name: 'grinning', shortcodes: ['grin'], tags: ['happy', 'joy'] }"," 會因 ",[552,18016,18017],{},"tags"," 命中而列入結果。",[540,18020,18022],{"id":18021},"emoji-資料集","emoji 資料集",[709,18024,18025,18027],{},[552,18026,17451],{}," 內附三個資料集，免自帶 JSON：",[543,18029,18031],{"className":578,"code":18030,"language":580,"meta":550,"style":550},"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",[552,18032,18033,18061,18065,18070,18075],{"__ignoreMap":550},[555,18034,18035,18037,18039,18042,18044,18047,18049,18051,18053,18055,18057,18059],{"class":557,"line":558},[555,18036,588],{"class":587},[555,18038,1277],{"class":591},[555,18040,18041],{"class":598}," emojis",[555,18043,3352],{"class":591},[555,18045,18046],{"class":598}," gitHubCustomEmojis",[555,18048,3352],{"class":591},[555,18050,17598],{"class":598},[555,18052,1283],{"class":591},[555,18054,675],{"class":587},[555,18056,678],{"class":591},[555,18058,17451],{"class":565},[555,18060,684],{"class":591},[555,18062,18063],{"class":557,"line":595},[555,18064,1297],{"emptyLinePlaceholder":526},[555,18066,18067],{"class":557,"line":605},[555,18068,18069],{"class":4835},"\u002F\u002F emojis：通用 Unicode emoji 全集\n",[555,18071,18072],{"class":557,"line":613},[555,18073,18074],{"class":4835},"\u002F\u002F gitHubEmojis：GitHub 風格（約 1500 個，含 shortcode）\n",[555,18076,18077],{"class":557,"line":621},[555,18078,18079],{"class":4835},"\u002F\u002F gitHubCustomEmojis：GitHub 自訂（如 :octocat:）\n",[709,18081,18082,18083,18086,18087,18090],{},"要自訂資料集，直接傳 ",[552,18084,18085],{},"EmojiMenuItem[]"," 給 ",[552,18088,18089],{},":items"," 即可。後台情境通常 50 到 100 個常用就夠：",[543,18092,18094],{"className":578,"code":18093,"language":580,"meta":550,"style":550},"const emojis = gitHubEmojis.slice(0, 50)\n",[552,18095,18096],{"__ignoreMap":550},[555,18097,18098,18100,18102,18104,18106,18108,18110,18112,18114,18116,18118],{"class":557,"line":558},[555,18099,3325],{"class":757},[555,18101,17694],{"class":598},[555,18103,761],{"class":591},[555,18105,17598],{"class":598},[555,18107,1210],{"class":591},[555,18109,17703],{"class":1158},[555,18111,1162],{"class":598},[555,18113,17709],{"class":17708},[555,18115,3352],{"class":591},[555,18117,17714],{"class":17708},[555,18119,1226],{"class":598},[709,18121,18122,18123,18126,18127,18130,18131,18134],{},"資料量上千時，改用 ",[552,18124,18125],{},"v-model:search-term"," 加 ",[552,18128,18129],{},"ignore-filter"," 接外部 fuzzy library（如 ",[552,18132,18133],{},"fuse.js","），避免內建 fuzzy filter 卡頓。",[540,18136,5756],{"id":5756},[709,18138,18139,18140,717],{},"同 ",[701,18141,426],{"href":18142},"\u002Fdocs\u002Feditor\u002Faddons\u002Fsuggestion#%E9%8D%B5%E7%9B%A4%E5%B0%8E%E8%88%AA",[540,18144,724],{"id":723},[696,18146,17446],{"id":17446},[944,18148],{"component":18149},"AdminEditorEmojiMenu",[540,18151,989],{"id":989},[991,18153],{"component":18149},[994,18155,18156],{},"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":550,"searchDepth":605,"depth":605,"links":18158},[18159,18160,18161,18164,18165,18166,18169],{"id":507,"depth":595,"text":507},{"id":687,"depth":595,"text":687},{"id":17853,"depth":595,"text":17854,"children":18162},[18163],{"id":17998,"depth":605,"text":17999},{"id":18021,"depth":595,"text":18022},{"id":5756,"depth":595,"text":5756},{"id":723,"depth":595,"text":724,"children":18167},[18168],{"id":17446,"depth":605,"text":17446},{"id":989,"depth":595,"text":989},"輸入 : 觸發浮動選單；挑選並插入 emoji。",{"doc":18172},"https:\u002F\u002Ftiptap.dev\u002Fdocs\u002Feditor\u002Fextensions\u002Fnodes\u002Femoji",{},{"title":422,"description":18170},"Y0M91JooIj7RuEnCgdY0enjVN_DmeNJJ3u4NQrNQhYM",{"id":18177,"title":458,"body":18178,"component":526,"description":19096,"extension":1019,"links":19097,"meta":19099,"navigation":526,"new":18,"path":459,"seo":19100,"stem":460,"wrapperKind":19,"__hash__":19101},"docs\u002Fdocs\u002Feditor\u002F4.addons\u002F19.font-size.md",{"type":537,"value":18179,"toc":19085},[18180,18182,18209,18259,18277,18279,18301,18304,18756,18760,18801,18804,18981,19032,19034,19036,19039,19041,19079,19081,19083],[540,18181,507],{"id":507},[543,18183,18185],{"className":545,"code":18184,"filename":547,"language":548,"meta":549,"style":550},"pnpm dlx shadcn-vue add @admin\u002Feditor-font-size\npnpm add @tiptap\u002Fextension-text-style\n",[552,18186,18187,18200],{"__ignoreMap":550},[555,18188,18189,18191,18193,18195,18197],{"class":557,"line":558},[555,18190,562],{"class":561},[555,18192,566],{"class":565},[555,18194,569],{"class":565},[555,18196,572],{"class":565},[555,18198,18199],{"class":565}," @admin\u002Feditor-font-size\n",[555,18201,18202,18204,18206],{"class":557,"line":595},[555,18203,562],{"class":561},[555,18205,572],{"class":565},[555,18207,18208],{"class":565}," @tiptap\u002Fextension-text-style\n",[543,18210,18212],{"className":578,"code":18211,"language":580,"meta":550,"style":550},"import { FontSize, TextStyle } from '@tiptap\u002Fextension-text-style'\nimport { AdminEditorFontSize } from '@\u002Fregistry\u002Fadmin\u002Fui\u002Feditor-font-size'\n",[552,18213,18214,18239],{"__ignoreMap":550},[555,18215,18216,18218,18220,18223,18225,18228,18230,18232,18234,18237],{"class":557,"line":558},[555,18217,588],{"class":587},[555,18219,1277],{"class":591},[555,18221,18222],{"class":598}," FontSize",[555,18224,3352],{"class":591},[555,18226,18227],{"class":598}," TextStyle",[555,18229,1283],{"class":591},[555,18231,675],{"class":587},[555,18233,678],{"class":591},[555,18235,18236],{"class":565},"@tiptap\u002Fextension-text-style",[555,18238,684],{"class":591},[555,18240,18241,18243,18245,18248,18250,18252,18254,18257],{"class":557,"line":595},[555,18242,588],{"class":587},[555,18244,1277],{"class":591},[555,18246,18247],{"class":598}," AdminEditorFontSize",[555,18249,1283],{"class":591},[555,18251,675],{"class":587},[555,18253,678],{"class":591},[555,18255,18256],{"class":565},"@\u002Fregistry\u002Fadmin\u002Fui\u002Feditor-font-size",[555,18258,684],{"class":591},[709,18260,18261,18262,18265,18266,18269,18270,2474,18272,8908,18274,18276],{},"含 toolbar 字級控制（",[552,18263,18264],{},"−"," stepper、數值下拉、",[552,18267,18268],{},"+"," stepper，共用同一狀態）；字級能力來自 tiptap ",[552,18271,372],{},[552,18273,293],{},[552,18275,18236],{},"），需自行注入（見下方用法）。",[540,18278,687],{"id":687},[709,18280,18281,18282,18285,18286,18289,18290,18293,18294,18297,18298,717],{},"加入字級需三個步驟：在 ",[552,18283,18284],{},":extensions"," 注入 ",[552,18287,18288],{},"[TextStyle, FontSize]","、在 toolbar items 加入一個指定 ",[552,18291,18292],{},"slot: 'fontSize'"," 的項目、在 toolbar 的 ",[552,18295,18296],{},"#fontSize"," slot 放入 ",[552,18299,18300],{},"\u003CAdminEditorFontSize>",[689,18302],{"name":18303},"EditorFontSizeDemo",[543,18305,18307],{"className":730,"code":18306,"language":732,"meta":550,"style":550},"\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",[552,18308,18309,18329,18350,18370,18392,18410,18428,18450,18468,18472,18493,18498,18514,18519,18537,18546,18613,18617,18625,18629,18637,18675,18693,18705,18724,18732,18740,18748],{"__ignoreMap":550},[555,18310,18311,18313,18315,18317,18319,18321,18323,18325,18327],{"class":557,"line":558},[555,18312,739],{"class":591},[555,18314,3280],{"class":742},[555,18316,3283],{"class":757},[555,18318,3286],{"class":757},[555,18320,761],{"class":591},[555,18322,764],{"class":591},[555,18324,580],{"class":565},[555,18326,764],{"class":591},[555,18328,746],{"class":591},[555,18330,18331,18333,18335,18337,18340,18342,18344,18346,18348],{"class":557,"line":595},[555,18332,588],{"class":587},[555,18334,3141],{"class":587},[555,18336,1277],{"class":591},[555,18338,18339],{"class":598}," EditorToolbarItem",[555,18341,1283],{"class":591},[555,18343,675],{"class":587},[555,18345,678],{"class":591},[555,18347,17142],{"class":565},[555,18349,684],{"class":591},[555,18351,18352,18354,18356,18359,18361,18363,18365,18368],{"class":557,"line":605},[555,18353,588],{"class":587},[555,18355,1277],{"class":591},[555,18357,18358],{"class":598}," IconTextResize",[555,18360,1283],{"class":591},[555,18362,675],{"class":587},[555,18364,678],{"class":591},[555,18366,18367],{"class":565},"@tabler\u002Ficons-vue",[555,18369,684],{"class":591},[555,18371,18372,18374,18376,18378,18380,18382,18384,18386,18388,18390],{"class":557,"line":613},[555,18373,588],{"class":587},[555,18375,1277],{"class":591},[555,18377,18222],{"class":598},[555,18379,3352],{"class":591},[555,18381,18227],{"class":598},[555,18383,1283],{"class":591},[555,18385,675],{"class":587},[555,18387,678],{"class":591},[555,18389,18236],{"class":565},[555,18391,684],{"class":591},[555,18393,18394,18396,18398,18400,18402,18404,18406,18408],{"class":557,"line":621},[555,18395,588],{"class":587},[555,18397,1277],{"class":591},[555,18399,3431],{"class":598},[555,18401,1283],{"class":591},[555,18403,675],{"class":587},[555,18405,678],{"class":591},[555,18407,732],{"class":565},[555,18409,684],{"class":591},[555,18411,18412,18414,18416,18418,18420,18422,18424,18426],{"class":557,"line":629},[555,18413,588],{"class":587},[555,18415,1277],{"class":591},[555,18417,18247],{"class":598},[555,18419,1283],{"class":591},[555,18421,675],{"class":587},[555,18423,678],{"class":591},[555,18425,18256],{"class":565},[555,18427,684],{"class":591},[555,18429,18430,18432,18434,18436,18438,18440,18442,18444,18446,18448],{"class":557,"line":637},[555,18431,588],{"class":587},[555,18433,1277],{"class":591},[555,18435,17128],{"class":598},[555,18437,3352],{"class":591},[555,18439,17133],{"class":598},[555,18441,1283],{"class":591},[555,18443,675],{"class":587},[555,18445,678],{"class":591},[555,18447,17142],{"class":565},[555,18449,684],{"class":591},[555,18451,18452,18454,18456,18458,18460,18462,18464,18466],{"class":557,"line":645},[555,18453,588],{"class":587},[555,18455,1277],{"class":591},[555,18457,17153],{"class":598},[555,18459,1283],{"class":591},[555,18461,675],{"class":587},[555,18463,678],{"class":591},[555,18465,17162],{"class":565},[555,18467,684],{"class":591},[555,18469,18470],{"class":557,"line":653},[555,18471,1297],{"emptyLinePlaceholder":526},[555,18473,18474,18476,18478,18480,18482,18484,18486,18489,18491],{"class":557,"line":661},[555,18475,3325],{"class":757},[555,18477,3426],{"class":598},[555,18479,761],{"class":591},[555,18481,3431],{"class":1158},[555,18483,1162],{"class":598},[555,18485,1218],{"class":591},[555,18487,18488],{"class":565},"\u003Cp>內容\u003C\u002Fp>",[555,18490,1218],{"class":591},[555,18492,1226],{"class":598},[555,18494,18495],{"class":557,"line":669},[555,18496,18497],{"class":4835},"\u002F\u002F 自行注入官方 extension（FontSize 依賴 TextStyle）\n",[555,18499,18500,18502,18504,18506,18509,18511],{"class":557,"line":905},[555,18501,3325],{"class":757},[555,18503,17517],{"class":598},[555,18505,761],{"class":591},[555,18507,18508],{"class":598}," [TextStyle",[555,18510,3352],{"class":591},[555,18512,18513],{"class":598}," FontSize]\n",[555,18515,18516],{"class":557,"line":914},[555,18517,18518],{"class":4835},"\u002F\u002F 字級是 kindless slot item：由具名 slot 渲染，不綁 handler\n",[555,18520,18521,18523,18526,18528,18530,18533,18535],{"class":557,"line":924},[555,18522,3325],{"class":757},[555,18524,18525],{"class":598}," items",[555,18527,1173],{"class":591},[555,18529,18339],{"class":561},[555,18531,18532],{"class":598},"[][] ",[555,18534,761],{"class":591},[555,18536,1319],{"class":598},[555,18538,18539,18542,18544],{"class":557,"line":934},[555,18540,18541],{"class":591},"  ...",[555,18543,17258],{"class":598},[555,18545,602],{"class":591},[555,18547,18548,18550,18552,18555,18557,18559,18562,18564,18566,18569,18571,18573,18575,18578,18580,18582,18585,18587,18589,18592,18594,18596,18599,18601,18603,18605,18607,18609,18611],{"class":557,"line":3540},[555,18549,17977],{"class":598},[555,18551,4247],{"class":591},[555,18553,18554],{"class":742}," slot",[555,18556,1173],{"class":591},[555,18558,678],{"class":591},[555,18560,18561],{"class":565},"fontSize",[555,18563,1218],{"class":591},[555,18565,3352],{"class":591},[555,18567,18568],{"class":742}," icon",[555,18570,1173],{"class":591},[555,18572,18358],{"class":598},[555,18574,3352],{"class":591},[555,18576,18577],{"class":742}," label",[555,18579,1173],{"class":591},[555,18581,678],{"class":591},[555,18583,18584],{"class":565},"字級",[555,18586,1218],{"class":591},[555,18588,3352],{"class":591},[555,18590,18591],{"class":742}," tooltip",[555,18593,1173],{"class":591},[555,18595,1277],{"class":591},[555,18597,18598],{"class":742}," text",[555,18600,1173],{"class":591},[555,18602,678],{"class":591},[555,18604,18584],{"class":565},[555,18606,1218],{"class":591},[555,18608,1283],{"class":591},[555,18610,1283],{"class":591},[555,18612,9084],{"class":598},[555,18614,18615],{"class":557,"line":4426},[555,18616,9084],{"class":598},[555,18618,18619,18621,18623],{"class":557,"line":6198},[555,18620,788],{"class":591},[555,18622,3280],{"class":742},[555,18624,746],{"class":591},[555,18626,18627],{"class":557,"line":6208},[555,18628,1297],{"emptyLinePlaceholder":526},[555,18630,18631,18633,18635],{"class":557,"line":6227},[555,18632,739],{"class":591},[555,18634,743],{"class":742},[555,18636,746],{"class":591},[555,18638,18639,18641,18643,18645,18647,18649,18651,18653,18655,18657,18659,18661,18663,18665,18667,18669,18671,18673],{"class":557,"line":6237},[555,18640,751],{"class":591},[555,18642,17216],{"class":742},[555,18644,3599],{"class":757},[555,18646,761],{"class":591},[555,18648,764],{"class":591},[555,18650,17225],{"class":565},[555,18652,764],{"class":591},[555,18654,2871],{"class":757},[555,18656,761],{"class":591},[555,18658,764],{"class":591},[555,18660,2724],{"class":565},[555,18662,764],{"class":591},[555,18664,17802],{"class":757},[555,18666,761],{"class":591},[555,18668,764],{"class":591},[555,18670,17809],{"class":565},[555,18672,764],{"class":591},[555,18674,746],{"class":591},[555,18676,18677,18679,18681,18683,18685,18687,18689,18691],{"class":557,"line":6246},[555,18678,776],{"class":591},[555,18680,17246],{"class":742},[555,18682,15264],{"class":757},[555,18684,761],{"class":591},[555,18686,764],{"class":591},[555,18688,7365],{"class":565},[555,18690,764],{"class":591},[555,18692,746],{"class":591},[555,18694,18695,18697,18699,18701,18703],{"class":557,"line":6255},[555,18696,806],{"class":591},[555,18698,743],{"class":742},[555,18700,8717],{"class":591},[555,18702,18561],{"class":757},[555,18704,746],{"class":591},[555,18706,18707,18709,18712,18714,18716,18718,18720,18722],{"class":557,"line":524},[555,18708,816],{"class":591},[555,18710,18711],{"class":742},"admin-editor-font-size",[555,18713,17249],{"class":757},[555,18715,761],{"class":591},[555,18717,764],{"class":591},[555,18719,17316],{"class":565},[555,18721,764],{"class":591},[555,18723,1453],{"class":591},[555,18725,18726,18728,18730],{"class":557,"line":6868},[555,18727,853],{"class":591},[555,18729,743],{"class":742},[555,18731,746],{"class":591},[555,18733,18734,18736,18738],{"class":557,"line":6877},[555,18735,917],{"class":591},[555,18737,17246],{"class":742},[555,18739,746],{"class":591},[555,18741,18742,18744,18746],{"class":557,"line":6898},[555,18743,927],{"class":591},[555,18745,17216],{"class":742},[555,18747,746],{"class":591},[555,18749,18750,18752,18754],{"class":557,"line":6907},[555,18751,788],{"class":591},[555,18753,743],{"class":742},[555,18755,746],{"class":591},[696,18757,18759],{"id":18758},"無障礙改用-rem-級距","無障礙：改用 rem 級距",[709,18761,18762,18763,18766,18767,18770,18771,18774,18775,18778,18779,18782,18783,18785,18786,18788,18789,18792,18793,18796,18797,18800],{},"預設級距以 ",[552,18764,18765],{},"px"," 寫入 inline ",[552,18768,18769],{},"font-size","，不會隨使用者瀏覽器的根字級設定縮放。要符合無障礙需求，改透過 ",[552,18772,18773],{},":sizes"," 傳入以 ",[552,18776,18777],{},"rem"," 為值的級距：",[552,18780,18781],{},"label"," 仍是給人看的數字、",[552,18784,2724],{}," 寫 ",[552,18787,18777],{},"，套用後即隨根字級縮放。同時以 ",[552,18790,18791],{},"base-value"," 指定未設定字級時的起算基準（預設 ",[552,18794,18795],{},"'16px'","，rem 級距要改傳如 ",[552,18798,18799],{},"'1rem'","，否則基準查不到會 fallback 至級距中點）。",[689,18802],{"name":18803},"EditorFontSizeRemDemo",[543,18805,18807],{"className":578,"code":18806,"language":580,"meta":550,"style":550},"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",[552,18808,18809,18830,18834,18839,18856,18886,18916,18946,18977],{"__ignoreMap":550},[555,18810,18811,18813,18815,18817,18820,18822,18824,18826,18828],{"class":557,"line":558},[555,18812,588],{"class":587},[555,18814,3141],{"class":587},[555,18816,1277],{"class":591},[555,18818,18819],{"class":598}," FontSizeOption",[555,18821,1283],{"class":591},[555,18823,675],{"class":587},[555,18825,678],{"class":591},[555,18827,18256],{"class":565},[555,18829,684],{"class":591},[555,18831,18832],{"class":557,"line":595},[555,18833,1297],{"emptyLinePlaceholder":526},[555,18835,18836],{"class":557,"line":605},[555,18837,18838],{"class":4835},"\u002F\u002F label 是給人看的數字（以 16px 根字級換算），value 寫 rem\n",[555,18840,18841,18843,18846,18848,18850,18852,18854],{"class":557,"line":613},[555,18842,3325],{"class":757},[555,18844,18845],{"class":598}," remSizes",[555,18847,1173],{"class":591},[555,18849,18819],{"class":561},[555,18851,17917],{"class":598},[555,18853,761],{"class":591},[555,18855,1319],{"class":598},[555,18857,18858,18860,18862,18864,18866,18869,18871,18873,18875,18877,18879,18882,18884],{"class":557,"line":621},[555,18859,3337],{"class":591},[555,18861,18577],{"class":742},[555,18863,1173],{"class":591},[555,18865,678],{"class":591},[555,18867,18868],{"class":565},"14",[555,18870,1218],{"class":591},[555,18872,3352],{"class":591},[555,18874,3340],{"class":742},[555,18876,1173],{"class":591},[555,18878,678],{"class":591},[555,18880,18881],{"class":565},"0.875rem",[555,18883,1218],{"class":591},[555,18885,3367],{"class":591},[555,18887,18888,18890,18892,18894,18896,18899,18901,18903,18905,18907,18909,18912,18914],{"class":557,"line":629},[555,18889,3337],{"class":591},[555,18891,18577],{"class":742},[555,18893,1173],{"class":591},[555,18895,678],{"class":591},[555,18897,18898],{"class":565},"16",[555,18900,1218],{"class":591},[555,18902,3352],{"class":591},[555,18904,3340],{"class":742},[555,18906,1173],{"class":591},[555,18908,678],{"class":591},[555,18910,18911],{"class":565},"1rem",[555,18913,1218],{"class":591},[555,18915,3367],{"class":591},[555,18917,18918,18920,18922,18924,18926,18929,18931,18933,18935,18937,18939,18942,18944],{"class":557,"line":637},[555,18919,3337],{"class":591},[555,18921,18577],{"class":742},[555,18923,1173],{"class":591},[555,18925,678],{"class":591},[555,18927,18928],{"class":565},"18",[555,18930,1218],{"class":591},[555,18932,3352],{"class":591},[555,18934,3340],{"class":742},[555,18936,1173],{"class":591},[555,18938,678],{"class":591},[555,18940,18941],{"class":565},"1.125rem",[555,18943,1218],{"class":591},[555,18945,3367],{"class":591},[555,18947,18948,18950,18952,18954,18956,18959,18961,18963,18965,18967,18969,18972,18974],{"class":557,"line":645},[555,18949,3337],{"class":591},[555,18951,18577],{"class":742},[555,18953,1173],{"class":591},[555,18955,678],{"class":591},[555,18957,18958],{"class":565},"20",[555,18960,1218],{"class":591},[555,18962,3352],{"class":591},[555,18964,3340],{"class":742},[555,18966,1173],{"class":591},[555,18968,678],{"class":591},[555,18970,18971],{"class":565},"1.25rem",[555,18973,1218],{"class":591},[555,18975,18976],{"class":591}," }\n",[555,18978,18979],{"class":557,"line":653},[555,18980,9084],{"class":598},[543,18982,18984],{"className":730,"code":18983,"language":732,"meta":550,"style":550},"\u003Cadmin-editor-font-size base-value=\"1rem\" :editor=\"editor\" :sizes=\"remSizes\" \u002F>\n",[552,18985,18986],{"__ignoreMap":550},[555,18987,18988,18990,18992,18995,18997,18999,19001,19003,19006,19008,19010,19012,19014,19016,19018,19021,19023,19025,19028,19030],{"class":557,"line":558},[555,18989,739],{"class":591},[555,18991,18711],{"class":742},[555,18993,18994],{"class":757}," base-value",[555,18996,761],{"class":591},[555,18998,764],{"class":591},[555,19000,18911],{"class":565},[555,19002,764],{"class":591},[555,19004,19005],{"class":591}," :",[555,19007,17316],{"class":757},[555,19009,761],{"class":591},[555,19011,764],{"class":591},[555,19013,17316],{"class":598},[555,19015,764],{"class":591},[555,19017,19005],{"class":591},[555,19019,19020],{"class":757},"sizes",[555,19022,761],{"class":591},[555,19024,764],{"class":591},[555,19026,19027],{"class":598},"remSizes",[555,19029,764],{"class":591},[555,19031,1453],{"class":591},[540,19033,724],{"id":723},[696,19035,18711],{"id":18711},[944,19037],{"component":19038},"AdminEditorFontSize",[540,19040,1560],{"id":1560},[1562,19042,19043,19053,19061,19070],{},[1565,19044,19045,2470,19048,1617,19050,19052],{},[1139,19046,19047],{},"extension 必須在建立編輯器時注入",[552,19049,372],{},[552,19051,293],{}," 無法於編輯器建立後補上，未注入時字級控制不會生效。",[1565,19054,19055,2470,19058,19060],{},[1139,19056,19057],{},"級距需由小到大",[552,19059,19020],{}," 陣列需依值遞增排列，stepper 的上／下一級與到頂到底停用皆依此順序判定。",[1565,19062,19063,19066,19067,19069],{},[1139,19064,19065],{},"未設定字級時顯示「預設」","：游標所在文字未套字級時，下拉 trigger 顯示「預設」；選單頂端的「預設」項會移除 inline ",[552,19068,18769],{},"，回退 CSS 繼承。",[1565,19071,19072,19075,19076,19078],{},[1139,19073,19074],{},"px vs rem","：預設 px 不隨瀏覽器字級縮放；需 a11y 請改用 rem 級距並搭配 ",[552,19077,18791],{},"（見上方）。",[540,19080,989],{"id":989},[991,19082],{"component":19038},[994,19084,10245],{},{"title":550,"searchDepth":605,"depth":605,"links":19086},[19087,19088,19091,19094,19095],{"id":507,"depth":595,"text":507},{"id":687,"depth":595,"text":687,"children":19089},[19090],{"id":18758,"depth":605,"text":18759},{"id":723,"depth":595,"text":724,"children":19092},[19093],{"id":18711,"depth":605,"text":18711},{"id":1560,"depth":595,"text":1560},{"id":989,"depth":595,"text":989},"toolbar 字級控制：−／下拉／+。",{"doc":19098},"https:\u002F\u002Ftiptap.dev\u002Fdocs\u002Feditor\u002Fextensions\u002Ffunctionality\u002Ffontsize",{},{"title":458,"description":19096},"mcZ1Jazw2WfNw6gJ8UeSu5xb0mzxFN5spEyhN1K99v4",{"id":19103,"title":474,"body":19104,"component":526,"description":19727,"extension":1019,"links":19728,"meta":19730,"navigation":526,"new":18,"path":475,"seo":19731,"stem":476,"wrapperKind":19,"__hash__":19732},"docs\u002Fdocs\u002Feditor\u002F4.addons\u002F4.highlight.md",{"type":537,"value":19105,"toc":19718},[19106,19108,19135,19187,19193,19195,19212,19215,19684,19686,19688,19691,19693,19711,19713,19715],[540,19107,507],{"id":507},[543,19109,19111],{"className":545,"code":19110,"filename":547,"language":548,"meta":549,"style":550},"pnpm dlx shadcn-vue add @admin\u002Feditor-highlight\npnpm add @tiptap\u002Fextension-highlight\n",[552,19112,19113,19126],{"__ignoreMap":550},[555,19114,19115,19117,19119,19121,19123],{"class":557,"line":558},[555,19116,562],{"class":561},[555,19118,566],{"class":565},[555,19120,569],{"class":565},[555,19122,572],{"class":565},[555,19124,19125],{"class":565}," @admin\u002Feditor-highlight\n",[555,19127,19128,19130,19132],{"class":557,"line":595},[555,19129,562],{"class":561},[555,19131,572],{"class":565},[555,19133,19134],{"class":565}," @tiptap\u002Fextension-highlight\n",[543,19136,19138],{"className":578,"code":19137,"language":580,"meta":550,"style":550},"import Highlight from '@tiptap\u002Fextension-highlight'\nimport {\n  AdminEditorHighlightButton,\n  defaultHighlightSwatches\n} from '@\u002Fregistry\u002Fadmin\u002Fui\u002Feditor-highlight'\n",[552,19139,19140,19156,19162,19169,19174],{"__ignoreMap":550},[555,19141,19142,19144,19147,19149,19151,19154],{"class":557,"line":558},[555,19143,588],{"class":587},[555,19145,19146],{"class":598}," Highlight ",[555,19148,1263],{"class":587},[555,19150,678],{"class":591},[555,19152,19153],{"class":565},"@tiptap\u002Fextension-highlight",[555,19155,684],{"class":591},[555,19157,19158,19160],{"class":557,"line":595},[555,19159,588],{"class":587},[555,19161,592],{"class":591},[555,19163,19164,19167],{"class":557,"line":605},[555,19165,19166],{"class":598},"  AdminEditorHighlightButton",[555,19168,602],{"class":591},[555,19170,19171],{"class":557,"line":613},[555,19172,19173],{"class":598},"  defaultHighlightSwatches\n",[555,19175,19176,19178,19180,19182,19185],{"class":557,"line":621},[555,19177,672],{"class":591},[555,19179,675],{"class":587},[555,19181,678],{"class":591},[555,19183,19184],{"class":565},"@\u002Fregistry\u002Fadmin\u002Fui\u002Feditor-highlight",[555,19186,684],{"class":591},[709,19188,19189,19190,19192],{},"含 toolbar 按鈕與色板；底色能力來自 tiptap ",[552,19191,380],{},"，需自行注入（見下方用法）。",[540,19194,687],{"id":687},[709,19196,19197,19198,18285,19200,18289,19203,18293,19206,18297,19209,717],{},"加入文字底色需三個步驟：在 ",[552,19199,18284],{},[552,19201,19202],{},"Highlight.configure({ multicolor: true })",[552,19204,19205],{},"slot: 'highlight'",[552,19207,19208],{},"#highlight",[552,19210,19211],{},"\u003CAdminEditorHighlightButton>",[689,19213],{"name":19214},"EditorHighlightDemo",[543,19216,19218],{"className":730,"code":19217,"language":732,"meta":550,"style":550},"\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",[552,19219,19220,19240,19260,19279,19293,19311,19317,19323,19327,19339,19361,19379,19383,19403,19408,19439,19444,19460,19468,19530,19534,19542,19546,19554,19592,19610,19622,19652,19660,19668,19676],{"__ignoreMap":550},[555,19221,19222,19224,19226,19228,19230,19232,19234,19236,19238],{"class":557,"line":558},[555,19223,739],{"class":591},[555,19225,3280],{"class":742},[555,19227,3283],{"class":757},[555,19229,3286],{"class":757},[555,19231,761],{"class":591},[555,19233,764],{"class":591},[555,19235,580],{"class":565},[555,19237,764],{"class":591},[555,19239,746],{"class":591},[555,19241,19242,19244,19246,19248,19250,19252,19254,19256,19258],{"class":557,"line":595},[555,19243,588],{"class":587},[555,19245,3141],{"class":587},[555,19247,1277],{"class":591},[555,19249,18339],{"class":598},[555,19251,1283],{"class":591},[555,19253,675],{"class":587},[555,19255,678],{"class":591},[555,19257,17142],{"class":565},[555,19259,684],{"class":591},[555,19261,19262,19264,19266,19269,19271,19273,19275,19277],{"class":557,"line":605},[555,19263,588],{"class":587},[555,19265,1277],{"class":591},[555,19267,19268],{"class":598}," IconHighlight",[555,19270,1283],{"class":591},[555,19272,675],{"class":587},[555,19274,678],{"class":591},[555,19276,18367],{"class":565},[555,19278,684],{"class":591},[555,19280,19281,19283,19285,19287,19289,19291],{"class":557,"line":613},[555,19282,588],{"class":587},[555,19284,19146],{"class":598},[555,19286,1263],{"class":587},[555,19288,678],{"class":591},[555,19290,19153],{"class":565},[555,19292,684],{"class":591},[555,19294,19295,19297,19299,19301,19303,19305,19307,19309],{"class":557,"line":621},[555,19296,588],{"class":587},[555,19298,1277],{"class":591},[555,19300,3431],{"class":598},[555,19302,1283],{"class":591},[555,19304,675],{"class":587},[555,19306,678],{"class":591},[555,19308,732],{"class":565},[555,19310,684],{"class":591},[555,19312,19313,19315],{"class":557,"line":629},[555,19314,588],{"class":587},[555,19316,592],{"class":591},[555,19318,19319,19321],{"class":557,"line":637},[555,19320,19166],{"class":598},[555,19322,602],{"class":591},[555,19324,19325],{"class":557,"line":645},[555,19326,19173],{"class":598},[555,19328,19329,19331,19333,19335,19337],{"class":557,"line":653},[555,19330,672],{"class":591},[555,19332,675],{"class":587},[555,19334,678],{"class":591},[555,19336,19184],{"class":565},[555,19338,684],{"class":591},[555,19340,19341,19343,19345,19347,19349,19351,19353,19355,19357,19359],{"class":557,"line":661},[555,19342,588],{"class":587},[555,19344,1277],{"class":591},[555,19346,17128],{"class":598},[555,19348,3352],{"class":591},[555,19350,17133],{"class":598},[555,19352,1283],{"class":591},[555,19354,675],{"class":587},[555,19356,678],{"class":591},[555,19358,17142],{"class":565},[555,19360,684],{"class":591},[555,19362,19363,19365,19367,19369,19371,19373,19375,19377],{"class":557,"line":669},[555,19364,588],{"class":587},[555,19366,1277],{"class":591},[555,19368,17153],{"class":598},[555,19370,1283],{"class":591},[555,19372,675],{"class":587},[555,19374,678],{"class":591},[555,19376,17162],{"class":565},[555,19378,684],{"class":591},[555,19380,19381],{"class":557,"line":905},[555,19382,1297],{"emptyLinePlaceholder":526},[555,19384,19385,19387,19389,19391,19393,19395,19397,19399,19401],{"class":557,"line":914},[555,19386,3325],{"class":757},[555,19388,3426],{"class":598},[555,19390,761],{"class":591},[555,19392,3431],{"class":1158},[555,19394,1162],{"class":598},[555,19396,1218],{"class":591},[555,19398,18488],{"class":565},[555,19400,1218],{"class":591},[555,19402,1226],{"class":598},[555,19404,19405],{"class":557,"line":924},[555,19406,19407],{"class":4835},"\u002F\u002F 自行注入官方 Highlight extension（multicolor 屬於 schema，建立後不可改）\n",[555,19409,19410,19412,19414,19416,19419,19421,19423,19425,19427,19430,19432,19435,19437],{"class":557,"line":934},[555,19411,3325],{"class":757},[555,19413,17517],{"class":598},[555,19415,761],{"class":591},[555,19417,19418],{"class":598}," [Highlight",[555,19420,1210],{"class":591},[555,19422,17527],{"class":1158},[555,19424,1162],{"class":598},[555,19426,4247],{"class":591},[555,19428,19429],{"class":742}," multicolor",[555,19431,1173],{"class":591},[555,19433,19434],{"class":17539}," true",[555,19436,1283],{"class":591},[555,19438,17545],{"class":598},[555,19440,19441],{"class":557,"line":3540},[555,19442,19443],{"class":4835},"\u002F\u002F highlight picker 是 kindless slot item：由具名 slot 渲染，不綁 handler\n",[555,19445,19446,19448,19450,19452,19454,19456,19458],{"class":557,"line":4426},[555,19447,3325],{"class":757},[555,19449,18525],{"class":598},[555,19451,1173],{"class":591},[555,19453,18339],{"class":561},[555,19455,18532],{"class":598},[555,19457,761],{"class":591},[555,19459,1319],{"class":598},[555,19461,19462,19464,19466],{"class":557,"line":6198},[555,19463,18541],{"class":591},[555,19465,17258],{"class":598},[555,19467,602],{"class":591},[555,19469,19470,19472,19474,19476,19478,19480,19483,19485,19487,19489,19491,19493,19495,19497,19499,19501,19504,19506,19508,19510,19512,19514,19516,19518,19520,19522,19524,19526,19528],{"class":557,"line":6208},[555,19471,17977],{"class":598},[555,19473,4247],{"class":591},[555,19475,18554],{"class":742},[555,19477,1173],{"class":591},[555,19479,678],{"class":591},[555,19481,19482],{"class":565},"highlight",[555,19484,1218],{"class":591},[555,19486,3352],{"class":591},[555,19488,18568],{"class":742},[555,19490,1173],{"class":591},[555,19492,19268],{"class":598},[555,19494,3352],{"class":591},[555,19496,18577],{"class":742},[555,19498,1173],{"class":591},[555,19500,678],{"class":591},[555,19502,19503],{"class":565},"文字底色",[555,19505,1218],{"class":591},[555,19507,3352],{"class":591},[555,19509,18591],{"class":742},[555,19511,1173],{"class":591},[555,19513,1277],{"class":591},[555,19515,18598],{"class":742},[555,19517,1173],{"class":591},[555,19519,678],{"class":591},[555,19521,19503],{"class":565},[555,19523,1218],{"class":591},[555,19525,1283],{"class":591},[555,19527,1283],{"class":591},[555,19529,9084],{"class":598},[555,19531,19532],{"class":557,"line":6227},[555,19533,9084],{"class":598},[555,19535,19536,19538,19540],{"class":557,"line":6237},[555,19537,788],{"class":591},[555,19539,3280],{"class":742},[555,19541,746],{"class":591},[555,19543,19544],{"class":557,"line":6246},[555,19545,1297],{"emptyLinePlaceholder":526},[555,19547,19548,19550,19552],{"class":557,"line":6255},[555,19549,739],{"class":591},[555,19551,743],{"class":742},[555,19553,746],{"class":591},[555,19555,19556,19558,19560,19562,19564,19566,19568,19570,19572,19574,19576,19578,19580,19582,19584,19586,19588,19590],{"class":557,"line":524},[555,19557,751],{"class":591},[555,19559,17216],{"class":742},[555,19561,3599],{"class":757},[555,19563,761],{"class":591},[555,19565,764],{"class":591},[555,19567,17225],{"class":565},[555,19569,764],{"class":591},[555,19571,2871],{"class":757},[555,19573,761],{"class":591},[555,19575,764],{"class":591},[555,19577,2724],{"class":565},[555,19579,764],{"class":591},[555,19581,17802],{"class":757},[555,19583,761],{"class":591},[555,19585,764],{"class":591},[555,19587,17809],{"class":565},[555,19589,764],{"class":591},[555,19591,746],{"class":591},[555,19593,19594,19596,19598,19600,19602,19604,19606,19608],{"class":557,"line":6868},[555,19595,776],{"class":591},[555,19597,17246],{"class":742},[555,19599,15264],{"class":757},[555,19601,761],{"class":591},[555,19603,764],{"class":591},[555,19605,7365],{"class":565},[555,19607,764],{"class":591},[555,19609,746],{"class":591},[555,19611,19612,19614,19616,19618,19620],{"class":557,"line":6877},[555,19613,806],{"class":591},[555,19615,743],{"class":742},[555,19617,8717],{"class":591},[555,19619,19482],{"class":757},[555,19621,746],{"class":591},[555,19623,19624,19626,19629,19631,19633,19635,19637,19639,19641,19643,19645,19648,19650],{"class":557,"line":6898},[555,19625,816],{"class":591},[555,19627,19628],{"class":742},"admin-editor-highlight-button",[555,19630,17249],{"class":757},[555,19632,761],{"class":591},[555,19634,764],{"class":591},[555,19636,17316],{"class":565},[555,19638,764],{"class":591},[555,19640,3501],{"class":757},[555,19642,761],{"class":591},[555,19644,764],{"class":591},[555,19646,19647],{"class":565},"defaultHighlightSwatches",[555,19649,764],{"class":591},[555,19651,1453],{"class":591},[555,19653,19654,19656,19658],{"class":557,"line":6907},[555,19655,853],{"class":591},[555,19657,743],{"class":742},[555,19659,746],{"class":591},[555,19661,19662,19664,19666],{"class":557,"line":6916},[555,19663,917],{"class":591},[555,19665,17246],{"class":742},[555,19667,746],{"class":591},[555,19669,19670,19672,19674],{"class":557,"line":6925},[555,19671,927],{"class":591},[555,19673,17216],{"class":742},[555,19675,746],{"class":591},[555,19677,19678,19680,19682],{"class":557,"line":12227},[555,19679,788],{"class":591},[555,19681,743],{"class":742},[555,19683,746],{"class":591},[540,19685,724],{"id":723},[696,19687,19628],{"id":19628},[944,19689],{"component":19690},"AdminEditorHighlightButton",[540,19692,1560],{"id":1560},[1562,19694,19695,19702],{},[1565,19696,19697,2470,19699,19701],{},[1139,19698,19047],{},[552,19700,380],{}," 無法於編輯器建立後補上，未注入時底色按鈕會呈 disabled、無法套用。",[1565,19703,19704,19707,19708,19710],{},[1139,19705,19706],{},"色板需自行提供","：使用本元件的 ",[552,19709,19647],{},"，或透過 props 傳入自訂色板。",[540,19712,989],{"id":989},[991,19714],{"component":19690},[994,19716,19717],{},"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":550,"searchDepth":605,"depth":605,"links":19719},[19720,19721,19722,19725,19726],{"id":507,"depth":595,"text":507},{"id":687,"depth":595,"text":687},{"id":723,"depth":595,"text":724,"children":19723},[19724],{"id":19628,"depth":605,"text":19628},{"id":1560,"depth":595,"text":1560},{"id":989,"depth":595,"text":989},"toolbar 文字底色按鈕與色板；標示選取文字。",{"doc":19729},"https:\u002F\u002Ftiptap.dev\u002Fdocs\u002Feditor\u002Fextensions\u002Fmarks\u002Fhighlight",{},{"title":474,"description":19727},"VmLWRpuI3vhFiqWN_5gEU0QVjVM7wll-pnqSMHbe-UY",{"id":19734,"title":430,"body":19735,"component":526,"description":20075,"extension":1019,"links":20076,"meta":20078,"navigation":526,"new":18,"path":431,"seo":20079,"stem":432,"wrapperKind":19,"__hash__":20080},"docs\u002Fdocs\u002Feditor\u002F4.addons\u002F12.link-bubble.md",{"type":537,"value":19736,"toc":20066},[19737,19739,19757,19782,19793,19795,19806,19809,20029,20031,20033,20036,20038,20060,20062,20064],[540,19738,507],{"id":507},[543,19740,19742],{"className":545,"code":19741,"filename":547,"language":548,"meta":549,"style":550},"pnpm dlx shadcn-vue add @admin\u002Feditor-link-bubble\n",[552,19743,19744],{"__ignoreMap":550},[555,19745,19746,19748,19750,19752,19754],{"class":557,"line":558},[555,19747,562],{"class":561},[555,19749,566],{"class":565},[555,19751,569],{"class":565},[555,19753,572],{"class":565},[555,19755,19756],{"class":565}," @admin\u002Feditor-link-bubble\n",[543,19758,19760],{"className":578,"code":19759,"language":580,"meta":550,"style":550},"import { AdminEditorLinkBubble } from '@\u002Fregistry\u002Fadmin\u002Fui\u002Feditor-link-bubble'\n",[552,19761,19762],{"__ignoreMap":550},[555,19763,19764,19766,19768,19771,19773,19775,19777,19780],{"class":557,"line":558},[555,19765,588],{"class":587},[555,19767,1277],{"class":591},[555,19769,19770],{"class":598}," AdminEditorLinkBubble",[555,19772,1283],{"class":591},[555,19774,675],{"class":587},[555,19776,678],{"class":591},[555,19778,19779],{"class":565},"@\u002Fregistry\u002Fadmin\u002Fui\u002Feditor-link-bubble",[555,19781,684],{"class":591},[709,19783,19784,17033,19787,19789,19790,19792],{},[552,19785,19786],{},"admin-editor-link-bubble",[552,19788,17036],{},"。Link mark 由 ",[552,19791,17036],{}," 的 StarterKit 提供，本包只負責浮層 UI。",[540,19794,687],{"id":687},[709,19796,17047,19797,17051,19800,19802,19803,19805],{},[552,19798,19799],{},"\u003CAdminEditorLinkBubble>",[552,19801,17054],{}," 的 default slot，並傳入 slot 暴露的 ",[552,19804,17316],{},"。游標移到既有連結上即浮出泡泡。",[689,19807],{"name":19808},"EditorLinkBubbleDemo",[543,19810,19812],{"className":730,"code":19811,"language":732,"meta":550,"style":550},"\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",[552,19813,19814,19834,19852,19870,19892,19910,19914,19935,19943,19947,19955,19983,20003,20013,20021],{"__ignoreMap":550},[555,19815,19816,19818,19820,19822,19824,19826,19828,19830,19832],{"class":557,"line":558},[555,19817,739],{"class":591},[555,19819,3280],{"class":742},[555,19821,3283],{"class":757},[555,19823,3286],{"class":757},[555,19825,761],{"class":591},[555,19827,764],{"class":591},[555,19829,580],{"class":565},[555,19831,764],{"class":591},[555,19833,746],{"class":591},[555,19835,19836,19838,19840,19842,19844,19846,19848,19850],{"class":557,"line":595},[555,19837,588],{"class":587},[555,19839,1277],{"class":591},[555,19841,3431],{"class":598},[555,19843,1283],{"class":591},[555,19845,675],{"class":587},[555,19847,678],{"class":591},[555,19849,732],{"class":565},[555,19851,684],{"class":591},[555,19853,19854,19856,19858,19860,19862,19864,19866,19868],{"class":557,"line":605},[555,19855,588],{"class":587},[555,19857,1277],{"class":591},[555,19859,19770],{"class":598},[555,19861,1283],{"class":591},[555,19863,675],{"class":587},[555,19865,678],{"class":591},[555,19867,19779],{"class":565},[555,19869,684],{"class":591},[555,19871,19872,19874,19876,19878,19880,19882,19884,19886,19888,19890],{"class":557,"line":613},[555,19873,588],{"class":587},[555,19875,1277],{"class":591},[555,19877,17128],{"class":598},[555,19879,3352],{"class":591},[555,19881,17133],{"class":598},[555,19883,1283],{"class":591},[555,19885,675],{"class":587},[555,19887,678],{"class":591},[555,19889,17142],{"class":565},[555,19891,684],{"class":591},[555,19893,19894,19896,19898,19900,19902,19904,19906,19908],{"class":557,"line":621},[555,19895,588],{"class":587},[555,19897,1277],{"class":591},[555,19899,17153],{"class":598},[555,19901,1283],{"class":591},[555,19903,675],{"class":587},[555,19905,678],{"class":591},[555,19907,17162],{"class":565},[555,19909,684],{"class":591},[555,19911,19912],{"class":557,"line":629},[555,19913,1297],{"emptyLinePlaceholder":526},[555,19915,19916,19918,19920,19922,19924,19926,19928,19931,19933],{"class":557,"line":637},[555,19917,3325],{"class":757},[555,19919,3426],{"class":598},[555,19921,761],{"class":591},[555,19923,3431],{"class":1158},[555,19925,1162],{"class":598},[555,19927,1218],{"class":591},[555,19929,19930],{"class":565},"\u003Cp>含\u003Ca href=\"https:\u002F\u002Fexample.com\">連結\u003C\u002Fa>的內容。\u003C\u002Fp>",[555,19932,1218],{"class":591},[555,19934,1226],{"class":598},[555,19936,19937,19939,19941],{"class":557,"line":645},[555,19938,788],{"class":591},[555,19940,3280],{"class":742},[555,19942,746],{"class":591},[555,19944,19945],{"class":557,"line":653},[555,19946,1297],{"emptyLinePlaceholder":526},[555,19948,19949,19951,19953],{"class":557,"line":661},[555,19950,739],{"class":591},[555,19952,743],{"class":742},[555,19954,746],{"class":591},[555,19956,19957,19959,19961,19963,19965,19967,19969,19971,19973,19975,19977,19979,19981],{"class":557,"line":669},[555,19958,751],{"class":591},[555,19960,17216],{"class":742},[555,19962,3599],{"class":757},[555,19964,761],{"class":591},[555,19966,764],{"class":591},[555,19968,17225],{"class":565},[555,19970,764],{"class":591},[555,19972,2871],{"class":757},[555,19974,761],{"class":591},[555,19976,764],{"class":591},[555,19978,2724],{"class":565},[555,19980,764],{"class":591},[555,19982,746],{"class":591},[555,19984,19985,19987,19989,19991,19993,19995,19997,19999,20001],{"class":557,"line":905},[555,19986,776],{"class":591},[555,19988,17246],{"class":742},[555,19990,17249],{"class":757},[555,19992,15264],{"class":757},[555,19994,761],{"class":591},[555,19996,764],{"class":591},[555,19998,17258],{"class":565},[555,20000,764],{"class":591},[555,20002,1453],{"class":591},[555,20004,20005,20007,20009,20011],{"class":557,"line":914},[555,20006,776],{"class":591},[555,20008,19786],{"class":742},[555,20010,17249],{"class":757},[555,20012,1453],{"class":591},[555,20014,20015,20017,20019],{"class":557,"line":924},[555,20016,927],{"class":591},[555,20018,17216],{"class":742},[555,20020,746],{"class":591},[555,20022,20023,20025,20027],{"class":557,"line":934},[555,20024,788],{"class":591},[555,20026,743],{"class":742},[555,20028,746],{"class":591},[540,20030,724],{"id":723},[696,20032,19786],{"id":19786},[944,20034],{"component":20035},"AdminEditorLinkBubble",[540,20037,1560],{"id":1560},[1562,20039,20040,20050],{},[1565,20041,20042,20045,20046,20049],{},[1139,20043,20044],{},"與預設 prompt 並存","：未安裝本包時，toolbar 的 link 按鈕走 ",[552,20047,20048],{},"window.prompt","；裝上本包後，選到連結會多一層浮層編輯體驗，兩者不衝突。",[1565,20051,20052,20055,20056,20059],{},[1139,20053,20054],{},"需要 Link mark","：依賴 StarterKit 內建的 Link mark；若以 ",[552,20057,20058],{},":starter-kit=\"{ link: false }\""," 關閉 link，則本浮層不會出現。",[540,20061,989],{"id":989},[991,20063],{"component":20035},[994,20065,3748],{},{"title":550,"searchDepth":605,"depth":605,"links":20067},[20068,20069,20070,20073,20074],{"id":507,"depth":595,"text":507},{"id":687,"depth":595,"text":687},{"id":723,"depth":595,"text":724,"children":20071},[20072],{"id":19786,"depth":605,"text":19786},{"id":1560,"depth":595,"text":1560},{"id":989,"depth":595,"text":989},"游標位於連結時浮出泡泡；檢視、編輯、移除。",{"doc":20077},"https:\u002F\u002Ftiptap.dev\u002Fdocs\u002Feditor\u002Fextensions\u002Fmarks\u002Flink",{},{"title":430,"description":20075},"bMl8CpM4qBDS-5RnwXga8XjXbi0_t5eOgSnRcNooxEI",{"id":20082,"title":434,"body":20083,"component":526,"description":20431,"extension":1019,"links":19,"meta":20432,"navigation":526,"new":18,"path":435,"seo":20433,"stem":436,"wrapperKind":19,"__hash__":20434},"docs\u002Fdocs\u002Feditor\u002F4.addons\u002F13.list-trash.md",{"type":537,"value":20084,"toc":20422},[20085,20087,20105,20130,20142,20144,20152,20155,20375,20377,20379,20382,20384,20416,20418,20420],[540,20086,507],{"id":507},[543,20088,20090],{"className":545,"code":20089,"filename":547,"language":548,"meta":549,"style":550},"pnpm dlx shadcn-vue add @admin\u002Feditor-list-trash\n",[552,20091,20092],{"__ignoreMap":550},[555,20093,20094,20096,20098,20100,20102],{"class":557,"line":558},[555,20095,562],{"class":561},[555,20097,566],{"class":565},[555,20099,569],{"class":565},[555,20101,572],{"class":565},[555,20103,20104],{"class":565}," @admin\u002Feditor-list-trash\n",[543,20106,20108],{"className":578,"code":20107,"language":580,"meta":550,"style":550},"import { AdminEditorListTrash } from '@\u002Fregistry\u002Fadmin\u002Fui\u002Feditor-list-trash'\n",[552,20109,20110],{"__ignoreMap":550},[555,20111,20112,20114,20116,20119,20121,20123,20125,20128],{"class":557,"line":558},[555,20113,588],{"class":587},[555,20115,1277],{"class":591},[555,20117,20118],{"class":598}," AdminEditorListTrash",[555,20120,1283],{"class":591},[555,20122,675],{"class":587},[555,20124,678],{"class":591},[555,20126,20127],{"class":565},"@\u002Fregistry\u002Fadmin\u002Fui\u002Feditor-list-trash",[555,20129,684],{"class":591},[709,20131,20132,17033,20135,20137,20138,20141],{},[552,20133,20134],{},"admin-editor-list-trash",[552,20136,17036],{},"，自帶刪除邏輯（不需 core 的 ",[552,20139,20140],{},"delete"," handler）。",[540,20143,687],{"id":687},[709,20145,17047,20146,17051,20149,20151],{},[552,20147,20148],{},"\u003CAdminEditorListTrash>",[552,20150,17054],{}," 的 default slot，游標移到清單項時即於右側浮出刪除鈕。",[689,20153],{"name":20154},"EditorListTrashDemo",[543,20156,20158],{"className":730,"code":20157,"language":732,"meta":550,"style":550},"\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",[552,20159,20160,20180,20198,20216,20238,20256,20260,20281,20289,20293,20301,20329,20349,20359,20367],{"__ignoreMap":550},[555,20161,20162,20164,20166,20168,20170,20172,20174,20176,20178],{"class":557,"line":558},[555,20163,739],{"class":591},[555,20165,3280],{"class":742},[555,20167,3283],{"class":757},[555,20169,3286],{"class":757},[555,20171,761],{"class":591},[555,20173,764],{"class":591},[555,20175,580],{"class":565},[555,20177,764],{"class":591},[555,20179,746],{"class":591},[555,20181,20182,20184,20186,20188,20190,20192,20194,20196],{"class":557,"line":595},[555,20183,588],{"class":587},[555,20185,1277],{"class":591},[555,20187,3431],{"class":598},[555,20189,1283],{"class":591},[555,20191,675],{"class":587},[555,20193,678],{"class":591},[555,20195,732],{"class":565},[555,20197,684],{"class":591},[555,20199,20200,20202,20204,20206,20208,20210,20212,20214],{"class":557,"line":605},[555,20201,588],{"class":587},[555,20203,1277],{"class":591},[555,20205,20118],{"class":598},[555,20207,1283],{"class":591},[555,20209,675],{"class":587},[555,20211,678],{"class":591},[555,20213,20127],{"class":565},[555,20215,684],{"class":591},[555,20217,20218,20220,20222,20224,20226,20228,20230,20232,20234,20236],{"class":557,"line":613},[555,20219,588],{"class":587},[555,20221,1277],{"class":591},[555,20223,17128],{"class":598},[555,20225,3352],{"class":591},[555,20227,17133],{"class":598},[555,20229,1283],{"class":591},[555,20231,675],{"class":587},[555,20233,678],{"class":591},[555,20235,17142],{"class":565},[555,20237,684],{"class":591},[555,20239,20240,20242,20244,20246,20248,20250,20252,20254],{"class":557,"line":621},[555,20241,588],{"class":587},[555,20243,1277],{"class":591},[555,20245,17153],{"class":598},[555,20247,1283],{"class":591},[555,20249,675],{"class":587},[555,20251,678],{"class":591},[555,20253,17162],{"class":565},[555,20255,684],{"class":591},[555,20257,20258],{"class":557,"line":629},[555,20259,1297],{"emptyLinePlaceholder":526},[555,20261,20262,20264,20266,20268,20270,20272,20274,20277,20279],{"class":557,"line":637},[555,20263,3325],{"class":757},[555,20265,3426],{"class":598},[555,20267,761],{"class":591},[555,20269,3431],{"class":1158},[555,20271,1162],{"class":598},[555,20273,1218],{"class":591},[555,20275,20276],{"class":565},"\u003Cul>\u003Cli>清單項\u003C\u002Fli>\u003C\u002Ful>",[555,20278,1218],{"class":591},[555,20280,1226],{"class":598},[555,20282,20283,20285,20287],{"class":557,"line":645},[555,20284,788],{"class":591},[555,20286,3280],{"class":742},[555,20288,746],{"class":591},[555,20290,20291],{"class":557,"line":653},[555,20292,1297],{"emptyLinePlaceholder":526},[555,20294,20295,20297,20299],{"class":557,"line":661},[555,20296,739],{"class":591},[555,20298,743],{"class":742},[555,20300,746],{"class":591},[555,20302,20303,20305,20307,20309,20311,20313,20315,20317,20319,20321,20323,20325,20327],{"class":557,"line":669},[555,20304,751],{"class":591},[555,20306,17216],{"class":742},[555,20308,3599],{"class":757},[555,20310,761],{"class":591},[555,20312,764],{"class":591},[555,20314,17225],{"class":565},[555,20316,764],{"class":591},[555,20318,2871],{"class":757},[555,20320,761],{"class":591},[555,20322,764],{"class":591},[555,20324,2724],{"class":565},[555,20326,764],{"class":591},[555,20328,746],{"class":591},[555,20330,20331,20333,20335,20337,20339,20341,20343,20345,20347],{"class":557,"line":905},[555,20332,776],{"class":591},[555,20334,17246],{"class":742},[555,20336,17249],{"class":757},[555,20338,15264],{"class":757},[555,20340,761],{"class":591},[555,20342,764],{"class":591},[555,20344,17258],{"class":565},[555,20346,764],{"class":591},[555,20348,1453],{"class":591},[555,20350,20351,20353,20355,20357],{"class":557,"line":914},[555,20352,776],{"class":591},[555,20354,20134],{"class":742},[555,20356,17249],{"class":757},[555,20358,1453],{"class":591},[555,20360,20361,20363,20365],{"class":557,"line":924},[555,20362,927],{"class":591},[555,20364,17216],{"class":742},[555,20366,746],{"class":591},[555,20368,20369,20371,20373],{"class":557,"line":934},[555,20370,788],{"class":591},[555,20372,743],{"class":742},[555,20374,746],{"class":591},[540,20376,724],{"id":723},[696,20378,20134],{"id":20134},[944,20380],{"component":20381},"AdminEditorListTrash",[540,20383,1560],{"id":1560},[1562,20385,20386,20399,20405],{},[1565,20387,20388,20391,20392,1127,20395,20398],{},[1139,20389,20390],{},"僅作用於清單項","：只在游標位於 ",[552,20393,20394],{},"listItem",[552,20396,20397],{},"taskItem"," 時顯示；一般段落不出現。",[1565,20400,20401,20404],{},[1139,20402,20403],{},"刪除整個節點","：點擊會刪掉整個清單項（含內容），非僅清空文字。",[1565,20406,20407,20409,20410,4586,20412,4589,20414,717],{},[1139,20408,1591],{},"：旁側刪除鈕依賴瀏覽器 DOM 定位；元件殼不含 ",[552,20411,1595],{},[552,20413,1595],{},[701,20415,1607],{"href":1606},[540,20417,989],{"id":989},[991,20419],{"component":20381},[994,20421,3748],{},{"title":550,"searchDepth":605,"depth":605,"links":20423},[20424,20425,20426,20429,20430],{"id":507,"depth":595,"text":507},{"id":687,"depth":595,"text":687},{"id":723,"depth":595,"text":724,"children":20427},[20428],{"id":20134,"depth":605,"text":20134},{"id":1560,"depth":595,"text":1560},{"id":989,"depth":595,"text":989},"游標位於清單項時，旁側浮出刪除鈕。",{},{"title":434,"description":20431},"qRpUqBuTuh5-b2BazoFIeNfPVi_t_k7dAspMXY0_7C4",{"id":20436,"title":494,"body":20437,"component":526,"description":21774,"extension":1019,"links":21775,"meta":21777,"navigation":526,"new":18,"path":495,"seo":21778,"stem":496,"wrapperKind":19,"__hash__":21779},"docs\u002Fdocs\u002Feditor\u002F4.addons\u002F9.mention.md",{"type":537,"value":20438,"toc":21760},[20439,20441,20459,20505,20516,20538,20697,20720,20722,20725,21132,21136,21200,21216,21220,21223,21279,21285,21288,21291,21300,21674,21683,21685,21689,21691,21706,21746,21748,21750,21753,21755,21757],[540,20440,507],{"id":507},[543,20442,20444],{"className":545,"code":20443,"filename":547,"language":548,"meta":549,"style":550},"pnpm dlx shadcn-vue add @admin\u002Feditor-mention-menu\n",[552,20445,20446],{"__ignoreMap":550},[555,20447,20448,20450,20452,20454,20456],{"class":557,"line":558},[555,20449,562],{"class":561},[555,20451,566],{"class":565},[555,20453,569],{"class":565},[555,20455,572],{"class":565},[555,20457,20458],{"class":565}," @admin\u002Feditor-mention-menu\n",[543,20460,20462],{"className":578,"code":20461,"language":580,"meta":550,"style":550},"import type { MentionMenuItem } from '@\u002Fregistry\u002Fadmin\u002Fui\u002Feditor-mention-menu'\nimport { AdminEditorMentionMenu } from '@\u002Fregistry\u002Fadmin\u002Fui\u002Feditor-mention-menu'\n",[552,20463,20464,20486],{"__ignoreMap":550},[555,20465,20466,20468,20470,20472,20475,20477,20479,20481,20484],{"class":557,"line":558},[555,20467,588],{"class":587},[555,20469,3141],{"class":587},[555,20471,1277],{"class":591},[555,20473,20474],{"class":598}," MentionMenuItem",[555,20476,1283],{"class":591},[555,20478,675],{"class":587},[555,20480,678],{"class":591},[555,20482,20483],{"class":565},"@\u002Fregistry\u002Fadmin\u002Fui\u002Feditor-mention-menu",[555,20485,684],{"class":591},[555,20487,20488,20490,20492,20495,20497,20499,20501,20503],{"class":557,"line":595},[555,20489,588],{"class":587},[555,20491,1277],{"class":591},[555,20493,20494],{"class":598}," AdminEditorMentionMenu",[555,20496,1283],{"class":591},[555,20498,675],{"class":587},[555,20500,678],{"class":591},[555,20502,20483],{"class":565},[555,20504,684],{"class":591},[709,20506,20507,17033,20510,20512,20513,717],{},[552,20508,20509],{},"admin-editor-mention-menu",[552,20511,17036],{}," + ",[552,20514,20515],{},"@tiptap\u002Fextension-mention",[2821,20517,20519],{"title":20518,"type":8630},"裝完必須在 :extensions 注入 Mention",[709,20520,20521,20523,20524,20527,20528,3249,20531,1127,20534,20537],{},[552,20522,20515],{}," 是 Node extension，跟 suggestion \u002F emoji 這類純 plugin 不同，它會動到 schema，而 schema 在編輯器建立時就固定、無法後補。",[552,20525,20526],{},"\u003CAdminEditorMentionMenu>"," mount 時會註冊 Suggestion plugin，popup 照常浮現，但 schema 沒有 mention node 時，選定後只能退回插入純文字 ",[552,20529,20530],{},"@John",[552,20532,20533],{},"data-id",[552,20535,20536],{},"data-label"," 等 attrs 不會持久化。",[543,20539,20541],{"className":578,"code":20540,"language":580,"meta":550,"style":550},"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",[552,20542,20543,20558,20568,20581,20603,20676,20685,20689,20693],{"__ignoreMap":550},[555,20544,20545,20547,20550,20552,20554,20556],{"class":557,"line":558},[555,20546,588],{"class":587},[555,20548,20549],{"class":598}," Mention ",[555,20551,1263],{"class":587},[555,20553,678],{"class":591},[555,20555,20515],{"class":565},[555,20557,684],{"class":591},[555,20559,20560,20562,20564,20566],{"class":557,"line":595},[555,20561,3325],{"class":757},[555,20563,17517],{"class":598},[555,20565,761],{"class":591},[555,20567,1319],{"class":598},[555,20569,20570,20573,20575,20577,20579],{"class":557,"line":605},[555,20571,20572],{"class":598},"  Mention",[555,20574,1210],{"class":591},[555,20576,17527],{"class":1158},[555,20578,1162],{"class":598},[555,20580,1165],{"class":591},[555,20582,20583,20586,20588,20590,20592,20594,20596,20599,20601],{"class":557,"line":613},[555,20584,20585],{"class":742},"    HTMLAttributes",[555,20587,1173],{"class":591},[555,20589,1277],{"class":591},[555,20591,13319],{"class":742},[555,20593,1173],{"class":591},[555,20595,678],{"class":591},[555,20597,20598],{"class":565},"mention",[555,20600,1218],{"class":591},[555,20602,3367],{"class":591},[555,20604,20605,20608,20610,20613,20616,20619,20621,20624,20627,20629,20632,20634,20637,20640,20642,20645,20648,20650,20652,20654,20656,20659,20661,20663,20665,20667,20669,20671,20674],{"class":557,"line":621},[555,20606,20607],{"class":1158},"    renderText",[555,20609,1173],{"class":591},[555,20611,20612],{"class":591}," ({",[555,20614,20615],{"class":1197}," node",[555,20617,20618],{"class":591}," })",[555,20620,1204],{"class":757},[555,20622,20623],{"class":591}," `${",[555,20625,20626],{"class":598},"node",[555,20628,1210],{"class":591},[555,20630,20631],{"class":598},"attrs",[555,20633,1210],{"class":591},[555,20635,20636],{"class":598},"mentionSuggestionChar ",[555,20638,20639],{"class":591},"??",[555,20641,678],{"class":591},[555,20643,20644],{"class":565},"@",[555,20646,20647],{"class":591},"'}${",[555,20649,20626],{"class":598},[555,20651,1210],{"class":591},[555,20653,20631],{"class":598},[555,20655,1210],{"class":591},[555,20657,20658],{"class":598},"label ",[555,20660,20639],{"class":591},[555,20662,20615],{"class":598},[555,20664,1210],{"class":591},[555,20666,20631],{"class":598},[555,20668,1210],{"class":591},[555,20670,7309],{"class":598},[555,20672,20673],{"class":591},"}`",[555,20675,602],{"class":591},[555,20677,20678,20681,20683],{"class":557,"line":629},[555,20679,20680],{"class":591},"  }",[555,20682,1201],{"class":598},[555,20684,602],{"class":591},[555,20686,20687],{"class":557,"line":637},[555,20688,9084],{"class":598},[555,20690,20691],{"class":557,"line":645},[555,20692,1297],{"emptyLinePlaceholder":526},[555,20694,20695],{"class":557,"line":653},[555,20696,17554],{"class":4835},[709,20698,20699,20700,20703,20704,20707,20708,20711,20712,20715,20716,20719],{},"兩個設定都是建議值，不是必填。",[552,20701,20702],{},"renderText"," 決定序列化與複製貼上的文字輸出，未設定時沿用 tiptap 預設的 ",[552,20705,20706],{},"@label","，設定後可改成以觸發字元開頭；",[552,20709,20710],{},"class: 'mention'"," 讓慣用的 ",[552,20713,20714],{},".mention"," CSS 有地方掛（本文件 demo 的 chip 樣式改以 ",[552,20717,20718],{},"data-type"," 屬性選取，不依賴它）。",[540,20721,687],{"id":687},[689,20723],{"name":20724},"EditorMentionMenuDemo",[543,20726,20728],{"className":730,"code":20727,"language":732,"meta":550,"style":550},"\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",[552,20729,20730,20750,20764,20782,20800,20818,20822,20838,20849,20880,20910,20914,20918,20923,20933,20945,20965,21025,21033,21037,21045,21049,21057,21095,21116,21124],{"__ignoreMap":550},[555,20731,20732,20734,20736,20738,20740,20742,20744,20746,20748],{"class":557,"line":558},[555,20733,739],{"class":591},[555,20735,3280],{"class":742},[555,20737,3283],{"class":757},[555,20739,3286],{"class":757},[555,20741,761],{"class":591},[555,20743,764],{"class":591},[555,20745,580],{"class":565},[555,20747,764],{"class":591},[555,20749,746],{"class":591},[555,20751,20752,20754,20756,20758,20760,20762],{"class":557,"line":595},[555,20753,588],{"class":587},[555,20755,20549],{"class":598},[555,20757,1263],{"class":587},[555,20759,678],{"class":591},[555,20761,20515],{"class":565},[555,20763,684],{"class":591},[555,20765,20766,20768,20770,20772,20774,20776,20778,20780],{"class":557,"line":605},[555,20767,588],{"class":587},[555,20769,1277],{"class":591},[555,20771,3431],{"class":598},[555,20773,1283],{"class":591},[555,20775,675],{"class":587},[555,20777,678],{"class":591},[555,20779,732],{"class":565},[555,20781,684],{"class":591},[555,20783,20784,20786,20788,20790,20792,20794,20796,20798],{"class":557,"line":613},[555,20785,588],{"class":587},[555,20787,1277],{"class":591},[555,20789,20494],{"class":598},[555,20791,1283],{"class":591},[555,20793,675],{"class":587},[555,20795,678],{"class":591},[555,20797,20483],{"class":565},[555,20799,684],{"class":591},[555,20801,20802,20804,20806,20808,20810,20812,20814,20816],{"class":557,"line":621},[555,20803,588],{"class":587},[555,20805,1277],{"class":591},[555,20807,17153],{"class":598},[555,20809,1283],{"class":591},[555,20811,675],{"class":587},[555,20813,678],{"class":591},[555,20815,17162],{"class":565},[555,20817,684],{"class":591},[555,20819,20820],{"class":557,"line":629},[555,20821,1297],{"emptyLinePlaceholder":526},[555,20823,20824,20826,20828,20830,20832,20834,20836],{"class":557,"line":637},[555,20825,3325],{"class":757},[555,20827,3426],{"class":598},[555,20829,761],{"class":591},[555,20831,3431],{"class":1158},[555,20833,1162],{"class":598},[555,20835,8643],{"class":591},[555,20837,1226],{"class":598},[555,20839,20840,20842,20845,20847],{"class":557,"line":645},[555,20841,3325],{"class":757},[555,20843,20844],{"class":598}," users ",[555,20846,761],{"class":591},[555,20848,1319],{"class":598},[555,20850,20851,20853,20856,20858,20860,20863,20865,20867,20869,20871,20873,20876,20878],{"class":557,"line":653},[555,20852,3337],{"class":591},[555,20854,20855],{"class":742}," id",[555,20857,1173],{"class":591},[555,20859,678],{"class":591},[555,20861,20862],{"class":565},"u1",[555,20864,1218],{"class":591},[555,20866,3352],{"class":591},[555,20868,18577],{"class":742},[555,20870,1173],{"class":591},[555,20872,678],{"class":591},[555,20874,20875],{"class":565},"John",[555,20877,1218],{"class":591},[555,20879,3367],{"class":591},[555,20881,20882,20884,20886,20888,20890,20893,20895,20897,20899,20901,20903,20906,20908],{"class":557,"line":661},[555,20883,3337],{"class":591},[555,20885,20855],{"class":742},[555,20887,1173],{"class":591},[555,20889,678],{"class":591},[555,20891,20892],{"class":565},"u2",[555,20894,1218],{"class":591},[555,20896,3352],{"class":591},[555,20898,18577],{"class":742},[555,20900,1173],{"class":591},[555,20902,678],{"class":591},[555,20904,20905],{"class":565},"Jane",[555,20907,1218],{"class":591},[555,20909,18976],{"class":591},[555,20911,20912],{"class":557,"line":669},[555,20913,9084],{"class":598},[555,20915,20916],{"class":557,"line":905},[555,20917,1297],{"emptyLinePlaceholder":526},[555,20919,20920],{"class":557,"line":914},[555,20921,20922],{"class":4835},"\u002F\u002F mention node 要能持久化，務必在 :extensions 加配置好的 Mention\n",[555,20924,20925,20927,20929,20931],{"class":557,"line":924},[555,20926,3325],{"class":757},[555,20928,17517],{"class":598},[555,20930,761],{"class":591},[555,20932,1319],{"class":598},[555,20934,20935,20937,20939,20941,20943],{"class":557,"line":934},[555,20936,20572],{"class":598},[555,20938,1210],{"class":591},[555,20940,17527],{"class":1158},[555,20942,1162],{"class":598},[555,20944,1165],{"class":591},[555,20946,20947,20949,20951,20953,20955,20957,20959,20961,20963],{"class":557,"line":3540},[555,20948,20585],{"class":742},[555,20950,1173],{"class":591},[555,20952,1277],{"class":591},[555,20954,13319],{"class":742},[555,20956,1173],{"class":591},[555,20958,678],{"class":591},[555,20960,20598],{"class":565},[555,20962,1218],{"class":591},[555,20964,3367],{"class":591},[555,20966,20967,20969,20971,20973,20975,20977,20979,20981,20983,20985,20987,20989,20991,20993,20995,20997,20999,21001,21003,21005,21007,21009,21011,21013,21015,21017,21019,21021,21023],{"class":557,"line":4426},[555,20968,20607],{"class":1158},[555,20970,1173],{"class":591},[555,20972,20612],{"class":591},[555,20974,20615],{"class":1197},[555,20976,20618],{"class":591},[555,20978,1204],{"class":757},[555,20980,20623],{"class":591},[555,20982,20626],{"class":598},[555,20984,1210],{"class":591},[555,20986,20631],{"class":598},[555,20988,1210],{"class":591},[555,20990,20636],{"class":598},[555,20992,20639],{"class":591},[555,20994,678],{"class":591},[555,20996,20644],{"class":565},[555,20998,20647],{"class":591},[555,21000,20626],{"class":598},[555,21002,1210],{"class":591},[555,21004,20631],{"class":598},[555,21006,1210],{"class":591},[555,21008,20658],{"class":598},[555,21010,20639],{"class":591},[555,21012,20615],{"class":598},[555,21014,1210],{"class":591},[555,21016,20631],{"class":598},[555,21018,1210],{"class":591},[555,21020,7309],{"class":598},[555,21022,20673],{"class":591},[555,21024,602],{"class":591},[555,21026,21027,21029,21031],{"class":557,"line":6198},[555,21028,20680],{"class":591},[555,21030,1201],{"class":598},[555,21032,602],{"class":591},[555,21034,21035],{"class":557,"line":6208},[555,21036,9084],{"class":598},[555,21038,21039,21041,21043],{"class":557,"line":6227},[555,21040,788],{"class":591},[555,21042,3280],{"class":742},[555,21044,746],{"class":591},[555,21046,21047],{"class":557,"line":6237},[555,21048,1297],{"emptyLinePlaceholder":526},[555,21050,21051,21053,21055],{"class":557,"line":6246},[555,21052,739],{"class":591},[555,21054,743],{"class":742},[555,21056,746],{"class":591},[555,21058,21059,21061,21063,21065,21067,21069,21071,21073,21075,21077,21079,21081,21083,21085,21087,21089,21091,21093],{"class":557,"line":6255},[555,21060,751],{"class":591},[555,21062,17216],{"class":742},[555,21064,3599],{"class":757},[555,21066,761],{"class":591},[555,21068,764],{"class":591},[555,21070,17225],{"class":565},[555,21072,764],{"class":591},[555,21074,2871],{"class":757},[555,21076,761],{"class":591},[555,21078,764],{"class":591},[555,21080,2724],{"class":565},[555,21082,764],{"class":591},[555,21084,17802],{"class":757},[555,21086,761],{"class":591},[555,21088,764],{"class":591},[555,21090,17809],{"class":565},[555,21092,764],{"class":591},[555,21094,746],{"class":591},[555,21096,21097,21099,21101,21103,21105,21107,21109,21112,21114],{"class":557,"line":524},[555,21098,776],{"class":591},[555,21100,20509],{"class":742},[555,21102,17249],{"class":757},[555,21104,15264],{"class":757},[555,21106,761],{"class":591},[555,21108,764],{"class":591},[555,21110,21111],{"class":565},"users",[555,21113,764],{"class":591},[555,21115,1453],{"class":591},[555,21117,21118,21120,21122],{"class":557,"line":6868},[555,21119,927],{"class":591},[555,21121,17216],{"class":742},[555,21123,746],{"class":591},[555,21125,21126,21128,21130],{"class":557,"line":6877},[555,21127,788],{"class":591},[555,21129,743],{"class":742},[555,21131,746],{"class":591},[540,21133,21135],{"id":21134},"mentionmenuitem-介面","MentionMenuItem 介面",[543,21137,21139],{"className":578,"code":21138,"language":580,"meta":550,"style":550},"interface MentionMenuItem {\n  id: string | number\n  label: string\n  avatar?: string\n  [key: string]: unknown \u002F\u002F 任意 metadata\n}\n",[552,21140,21141,21149,21164,21174,21183,21196],{"__ignoreMap":550},[555,21142,21143,21145,21147],{"class":557,"line":558},[555,21144,17877],{"class":757},[555,21146,20474],{"class":561},[555,21148,592],{"class":591},[555,21150,21151,21154,21156,21158,21161],{"class":557,"line":595},[555,21152,21153],{"class":742},"  id",[555,21155,1173],{"class":591},[555,21157,17890],{"class":561},[555,21159,21160],{"class":591}," |",[555,21162,21163],{"class":561}," number\n",[555,21165,21166,21169,21171],{"class":557,"line":605},[555,21167,21168],{"class":742},"  label",[555,21170,1173],{"class":591},[555,21172,21173],{"class":561}," string\n",[555,21175,21176,21179,21181],{"class":557,"line":613},[555,21177,21178],{"class":742},"  avatar",[555,21180,9031],{"class":591},[555,21182,21173],{"class":561},[555,21184,21185,21188,21190,21193],{"class":557,"line":621},[555,21186,21187],{"class":598},"  [key: string]",[555,21189,1173],{"class":591},[555,21191,21192],{"class":561}," unknown",[555,21194,21195],{"class":4835}," \u002F\u002F 任意 metadata\n",[555,21197,21198],{"class":557,"line":629},[555,21199,10152],{"class":591},[709,21201,21202,21203,21205,21206,21209,21210,1127,21212,21215],{},"選定後，mention node 的 ",[552,21204,20631],{}," 會展開整個 item 物件（外加 ",[552,21207,21208],{},"mentionSuggestionChar: '@'","），讓 ",[552,21211,20702],{},[552,21213,21214],{},"renderHTML"," 讀得到任意欄位。",[696,21217,21219],{"id":21218},"attrs-持久化注意","attrs 持久化注意",[709,21221,21222],{},"存進 DB 的 HTML 形如：",[543,21224,21228],{"className":21225,"code":21226,"language":21227,"meta":550,"style":550},"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",[552,21229,21230],{"__ignoreMap":550},[555,21231,21232,21234,21236,21239,21241,21243,21245,21247,21250,21252,21254,21256,21258,21261,21263,21265,21267,21269,21271,21273,21275,21277],{"class":557,"line":558},[555,21233,739],{"class":591},[555,21235,555],{"class":742},[555,21237,21238],{"class":757}," data-type",[555,21240,761],{"class":591},[555,21242,764],{"class":591},[555,21244,20598],{"class":565},[555,21246,764],{"class":591},[555,21248,21249],{"class":757}," data-id",[555,21251,761],{"class":591},[555,21253,764],{"class":591},[555,21255,20862],{"class":565},[555,21257,764],{"class":591},[555,21259,21260],{"class":757}," data-label",[555,21262,761],{"class":591},[555,21264,764],{"class":591},[555,21266,20875],{"class":565},[555,21268,764],{"class":591},[555,21270,782],{"class":591},[555,21272,20530],{"class":598},[555,21274,788],{"class":591},[555,21276,555],{"class":742},[555,21278,746],{"class":591},[709,21280,21281,21282,21284],{},"item 建議只放 id、label 和很小的 metadata（部門代號、role 等）；avatar URL、長描述這類欄位改用 ",[552,21283,7309],{}," 在顯示時二次查詢補上，避免內容膨脹、拖慢序列化。",[540,21286,21287],{"id":21287},"非同步搜尋",[689,21289],{"name":21290},"EditorMentionMenuAsyncDemo",[709,21292,21293,21294,21296,21297,21299],{},"users 來自後端 API、前端不適合全載時，用 ",[552,21295,18125],{}," 雙向綁定搜尋字串，並加 ",[552,21298,18129],{}," 跳過內建的 fuzzy filter：",[543,21301,21303],{"className":730,"code":21302,"language":732,"meta":550,"style":550},"\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",[552,21304,21305,21325,21339,21357,21361,21378,21413,21431,21437,21447,21459,21479,21539,21547,21551,21559,21563,21571,21609,21616,21630,21635,21640,21654,21658,21666],{"__ignoreMap":550},[555,21306,21307,21309,21311,21313,21315,21317,21319,21321,21323],{"class":557,"line":558},[555,21308,739],{"class":591},[555,21310,3280],{"class":742},[555,21312,3283],{"class":757},[555,21314,3286],{"class":757},[555,21316,761],{"class":591},[555,21318,764],{"class":591},[555,21320,580],{"class":565},[555,21322,764],{"class":591},[555,21324,746],{"class":591},[555,21326,21327,21329,21331,21333,21335,21337],{"class":557,"line":595},[555,21328,588],{"class":587},[555,21330,20549],{"class":598},[555,21332,1263],{"class":587},[555,21334,678],{"class":591},[555,21336,20515],{"class":565},[555,21338,684],{"class":591},[555,21340,21341,21343,21345,21347,21349,21351,21353,21355],{"class":557,"line":605},[555,21342,588],{"class":587},[555,21344,1277],{"class":591},[555,21346,3431],{"class":598},[555,21348,1283],{"class":591},[555,21350,675],{"class":587},[555,21352,678],{"class":591},[555,21354,732],{"class":565},[555,21356,684],{"class":591},[555,21358,21359],{"class":557,"line":613},[555,21360,1297],{"emptyLinePlaceholder":526},[555,21362,21363,21365,21368,21370,21372,21374,21376],{"class":557,"line":621},[555,21364,3325],{"class":757},[555,21366,21367],{"class":598}," search ",[555,21369,761],{"class":591},[555,21371,3431],{"class":1158},[555,21373,1162],{"class":598},[555,21375,8643],{"class":591},[555,21377,1226],{"class":598},[555,21379,21380,21382,21384,21387,21389,21391,21393,21395,21397,21400,21402,21404,21407,21409,21411],{"class":557,"line":629},[555,21381,3325],{"class":757},[555,21383,1277],{"class":591},[555,21385,21386],{"class":742}," data",[555,21388,1173],{"class":591},[555,21390,20844],{"class":598},[555,21392,672],{"class":591},[555,21394,10098],{"class":591},[555,21396,10101],{"class":587},[555,21398,21399],{"class":1158}," useFetch",[555,21401,1162],{"class":598},[555,21403,1218],{"class":591},[555,21405,21406],{"class":565},"\u002Fapi\u002Fusers",[555,21408,1218],{"class":591},[555,21410,3352],{"class":591},[555,21412,592],{"class":591},[555,21414,21415,21418,21420,21422,21425,21427,21429],{"class":557,"line":637},[555,21416,21417],{"class":742},"  query",[555,21419,1173],{"class":591},[555,21421,1277],{"class":591},[555,21423,21424],{"class":742}," q",[555,21426,1173],{"class":591},[555,21428,21367],{"class":598},[555,21430,10152],{"class":591},[555,21432,21433,21435],{"class":557,"line":645},[555,21434,672],{"class":591},[555,21436,1226],{"class":598},[555,21438,21439,21441,21443,21445],{"class":557,"line":653},[555,21440,3325],{"class":757},[555,21442,17517],{"class":598},[555,21444,761],{"class":591},[555,21446,1319],{"class":598},[555,21448,21449,21451,21453,21455,21457],{"class":557,"line":661},[555,21450,20572],{"class":598},[555,21452,1210],{"class":591},[555,21454,17527],{"class":1158},[555,21456,1162],{"class":598},[555,21458,1165],{"class":591},[555,21460,21461,21463,21465,21467,21469,21471,21473,21475,21477],{"class":557,"line":669},[555,21462,20585],{"class":742},[555,21464,1173],{"class":591},[555,21466,1277],{"class":591},[555,21468,13319],{"class":742},[555,21470,1173],{"class":591},[555,21472,678],{"class":591},[555,21474,20598],{"class":565},[555,21476,1218],{"class":591},[555,21478,3367],{"class":591},[555,21480,21481,21483,21485,21487,21489,21491,21493,21495,21497,21499,21501,21503,21505,21507,21509,21511,21513,21515,21517,21519,21521,21523,21525,21527,21529,21531,21533,21535,21537],{"class":557,"line":905},[555,21482,20607],{"class":1158},[555,21484,1173],{"class":591},[555,21486,20612],{"class":591},[555,21488,20615],{"class":1197},[555,21490,20618],{"class":591},[555,21492,1204],{"class":757},[555,21494,20623],{"class":591},[555,21496,20626],{"class":598},[555,21498,1210],{"class":591},[555,21500,20631],{"class":598},[555,21502,1210],{"class":591},[555,21504,20636],{"class":598},[555,21506,20639],{"class":591},[555,21508,678],{"class":591},[555,21510,20644],{"class":565},[555,21512,20647],{"class":591},[555,21514,20626],{"class":598},[555,21516,1210],{"class":591},[555,21518,20631],{"class":598},[555,21520,1210],{"class":591},[555,21522,20658],{"class":598},[555,21524,20639],{"class":591},[555,21526,20615],{"class":598},[555,21528,1210],{"class":591},[555,21530,20631],{"class":598},[555,21532,1210],{"class":591},[555,21534,7309],{"class":598},[555,21536,20673],{"class":591},[555,21538,602],{"class":591},[555,21540,21541,21543,21545],{"class":557,"line":914},[555,21542,20680],{"class":591},[555,21544,1201],{"class":598},[555,21546,602],{"class":591},[555,21548,21549],{"class":557,"line":924},[555,21550,9084],{"class":598},[555,21552,21553,21555,21557],{"class":557,"line":934},[555,21554,788],{"class":591},[555,21556,3280],{"class":742},[555,21558,746],{"class":591},[555,21560,21561],{"class":557,"line":3540},[555,21562,1297],{"emptyLinePlaceholder":526},[555,21564,21565,21567,21569],{"class":557,"line":4426},[555,21566,739],{"class":591},[555,21568,743],{"class":742},[555,21570,746],{"class":591},[555,21572,21573,21575,21577,21579,21581,21583,21585,21587,21589,21591,21593,21595,21597,21599,21601,21603,21605,21607],{"class":557,"line":6198},[555,21574,751],{"class":591},[555,21576,17216],{"class":742},[555,21578,3599],{"class":757},[555,21580,761],{"class":591},[555,21582,764],{"class":591},[555,21584,17225],{"class":565},[555,21586,764],{"class":591},[555,21588,2871],{"class":757},[555,21590,761],{"class":591},[555,21592,764],{"class":591},[555,21594,2724],{"class":565},[555,21596,764],{"class":591},[555,21598,17802],{"class":757},[555,21600,761],{"class":591},[555,21602,764],{"class":591},[555,21604,17809],{"class":565},[555,21606,764],{"class":591},[555,21608,746],{"class":591},[555,21610,21611,21613],{"class":557,"line":6208},[555,21612,776],{"class":591},[555,21614,21615],{"class":742},"admin-editor-mention-menu\n",[555,21617,21618,21621,21623,21625,21628],{"class":557,"line":6227},[555,21619,21620],{"class":757},"      v-model:search-term",[555,21622,761],{"class":591},[555,21624,764],{"class":591},[555,21626,21627],{"class":565},"search",[555,21629,4285],{"class":591},[555,21631,21632],{"class":557,"line":6237},[555,21633,21634],{"class":757},"      ignore-filter\n",[555,21636,21637],{"class":557,"line":6246},[555,21638,21639],{"class":757},"      :editor\n",[555,21641,21642,21645,21647,21649,21652],{"class":557,"line":6255},[555,21643,21644],{"class":757},"      :items",[555,21646,761],{"class":591},[555,21648,764],{"class":591},[555,21650,21651],{"class":565},"users ?? []",[555,21653,4285],{"class":591},[555,21655,21656],{"class":557,"line":524},[555,21657,11415],{"class":591},[555,21659,21660,21662,21664],{"class":557,"line":6868},[555,21661,927],{"class":591},[555,21663,17216],{"class":742},[555,21665,746],{"class":591},[555,21667,21668,21670,21672],{"class":557,"line":6877},[555,21669,788],{"class":591},[555,21671,743],{"class":742},[555,21673,746],{"class":591},[709,21675,21676,21678,21679,21682],{},[552,21677,21627],{}," 變動時 ",[552,21680,21681],{},"useFetch"," 會自動重打 API。",[540,21684,5756],{"id":5756},[709,21686,18139,21687,717],{},[701,21688,426],{"href":18142},[540,21690,2464],{"id":2464},[709,21692,21693,21694,21697,21698,21701,21702,21705],{},"mention chip 樣式不內含於 registry，由使用者依需求自套。demo 以 ",[552,21695,21696],{},"**:data-[type=mention]:*"," utility class 注入編輯器容器（見「用法」demo 原始碼的 ",[552,21699,21700],{},"mentionChipClass"," 常數，色票對齊 admin design tokens），也可以改用 CSS 選取 ",[552,21703,21704],{},"[data-type='mention']"," 自寫：",[543,21707,21711],{"className":21708,"code":21709,"language":21710,"meta":550,"style":550},"language-css shiki shiki-themes material-theme-lighter material-theme material-theme-palenight",":deep([data-type='mention']) {\n  \u002F* 自訂樣式 *\u002F\n}\n","css",[552,21712,21713,21737,21742],{"__ignoreMap":550},[555,21714,21715,21718,21721,21723,21725,21727,21729,21731,21733,21735],{"class":557,"line":558},[555,21716,21717],{"class":598},":deep(",[555,21719,21720],{"class":591},"[",[555,21722,20718],{"class":757},[555,21724,761],{"class":591},[555,21726,1218],{"class":591},[555,21728,20598],{"class":565},[555,21730,1218],{"class":591},[555,21732,3456],{"class":591},[555,21734,10136],{"class":598},[555,21736,1165],{"class":591},[555,21738,21739],{"class":557,"line":595},[555,21740,21741],{"class":4835},"  \u002F* 自訂樣式 *\u002F\n",[555,21743,21744],{"class":557,"line":605},[555,21745,10152],{"class":591},[540,21747,724],{"id":723},[696,21749,20509],{"id":20509},[944,21751],{"component":21752},"AdminEditorMentionMenu",[540,21754,989],{"id":989},[991,21756],{"component":21752},[994,21758,21759],{},"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":550,"searchDepth":605,"depth":605,"links":21761},[21762,21763,21764,21767,21768,21769,21770,21773],{"id":507,"depth":595,"text":507},{"id":687,"depth":595,"text":687},{"id":21134,"depth":595,"text":21135,"children":21765},[21766],{"id":21218,"depth":605,"text":21219},{"id":21287,"depth":595,"text":21287},{"id":5756,"depth":595,"text":5756},{"id":2464,"depth":595,"text":2464},{"id":723,"depth":595,"text":724,"children":21771},[21772],{"id":20509,"depth":605,"text":20509},{"id":989,"depth":595,"text":989},"輸入 @ 觸發浮動選單；挑選並插入提及對象。",{"doc":21776},"https:\u002F\u002Ftiptap.dev\u002Fdocs\u002Feditor\u002Fextensions\u002Fnodes\u002Fmention",{},{"title":494,"description":21774},"MO7MeYseH9kAQT8VKyFaai73YXU9MtlooXXef69lphE",{"id":21781,"title":426,"body":21782,"component":526,"description":22327,"extension":1019,"links":22328,"meta":22330,"navigation":526,"new":18,"path":427,"seo":22331,"stem":428,"wrapperKind":19,"__hash__":22332},"docs\u002Fdocs\u002Feditor\u002F4.addons\u002F11.suggestion.md",{"type":537,"value":21783,"toc":22316},[21784,21786,21804,21850,21871,21873,21887,21890,21894,21950,21973,22098,22101,22141,22144,22146,22153,22189,22192,22196,22205,22302,22304,22306,22309,22311,22313],[540,21785,507],{"id":507},[543,21787,21789],{"className":545,"code":21788,"filename":547,"language":548,"meta":549,"style":550},"pnpm dlx shadcn-vue add @admin\u002Feditor-suggestion-menu\n",[552,21790,21791],{"__ignoreMap":550},[555,21792,21793,21795,21797,21799,21801],{"class":557,"line":558},[555,21794,562],{"class":561},[555,21796,566],{"class":565},[555,21798,569],{"class":565},[555,21800,572],{"class":565},[555,21802,21803],{"class":565}," @admin\u002Feditor-suggestion-menu\n",[543,21805,21807],{"className":578,"code":21806,"language":580,"meta":550,"style":550},"import type { EditorSuggestionMenuItem } from '@\u002Fregistry\u002Fadmin\u002Fui\u002Feditor-suggestion-menu'\nimport { AdminEditorSuggestionMenu } from '@\u002Fregistry\u002Fadmin\u002Fui\u002Feditor-suggestion-menu'\n",[552,21808,21809,21831],{"__ignoreMap":550},[555,21810,21811,21813,21815,21817,21820,21822,21824,21826,21829],{"class":557,"line":558},[555,21812,588],{"class":587},[555,21814,3141],{"class":587},[555,21816,1277],{"class":591},[555,21818,21819],{"class":598}," EditorSuggestionMenuItem",[555,21821,1283],{"class":591},[555,21823,675],{"class":587},[555,21825,678],{"class":591},[555,21827,21828],{"class":565},"@\u002Fregistry\u002Fadmin\u002Fui\u002Feditor-suggestion-menu",[555,21830,684],{"class":591},[555,21832,21833,21835,21837,21840,21842,21844,21846,21848],{"class":557,"line":595},[555,21834,588],{"class":587},[555,21836,1277],{"class":591},[555,21838,21839],{"class":598}," AdminEditorSuggestionMenu",[555,21841,1283],{"class":591},[555,21843,675],{"class":587},[555,21845,678],{"class":591},[555,21847,21828],{"class":565},[555,21849,684],{"class":591},[709,21851,21852,21855,21856,21859,21860,21863,21864,21866,21867,21870],{},[552,21853,21854],{},"admin-editor-suggestion-menu"," 只依賴 ",[552,21857,21858],{},"@admin\u002Feditor-core","（menu popup engine 與共用型別）；",[552,21861,21862],{},"handlers"," 由呼叫端顯式傳入，可搭 ",[552,21865,17054],{}," 或 base ",[552,21868,21869],{},"\u003CAdminEditor>"," 使用。",[540,21872,687],{"id":687},[709,21874,21875,21876,21879,21880,21883,21884,21886],{},"在 ",[552,21877,21878],{},"\u003Cadmin-rich-editor v-slot=\"{ editor, handlers }\">"," slot 內加 ",[552,21881,21882],{},"\u003Cadmin-editor-suggestion-menu :editor :handlers :items=\"...\">","。輸入 ",[552,21885,2247],{}," 觸發 popup。",[689,21888],{"name":21889},"EditorSuggestionMenuDemo",[540,21891,21893],{"id":21892},"editorsuggestionmenuitem-介面","EditorSuggestionMenuItem 介面",[543,21895,21897],{"className":578,"code":21896,"language":580,"meta":550,"style":550},"type EditorSuggestionMenuItem = EditorItem & {\n  label: string\n  description?: string\n  icon?: Component | string\n}\n",[552,21898,21899,21915,21923,21932,21946],{"__ignoreMap":550},[555,21900,21901,21903,21905,21907,21910,21913],{"class":557,"line":558},[555,21902,2589],{"class":757},[555,21904,21819],{"class":561},[555,21906,10098],{"class":591},[555,21908,21909],{"class":561}," EditorItem",[555,21911,21912],{"class":591}," &",[555,21914,592],{"class":591},[555,21916,21917,21919,21921],{"class":557,"line":595},[555,21918,21168],{"class":742},[555,21920,1173],{"class":591},[555,21922,21173],{"class":561},[555,21924,21925,21928,21930],{"class":557,"line":605},[555,21926,21927],{"class":742},"  description",[555,21929,9031],{"class":591},[555,21931,21173],{"class":561},[555,21933,21934,21937,21939,21942,21944],{"class":557,"line":613},[555,21935,21936],{"class":742},"  icon",[555,21938,9031],{"class":591},[555,21940,21941],{"class":561}," Component",[555,21943,21160],{"class":591},[555,21945,21173],{"class":561},[555,21947,21948],{"class":557,"line":621},[555,21949,10152],{"class":591},[709,21951,21952,21955,21956,21959,21960,21962,21963,1127,21966,1127,21969,21972],{},[552,21953,21954],{},"EditorItem"," 是 ",[552,21957,21958],{},"admin-editor-core"," 定義的 discriminated union（",[552,21961,17216],{}," 也有 re-export），涵蓋 ",[552,21964,21965],{},"mark",[552,21967,21968],{},"heading",[552,21970,21971],{},"link","、12 個無參數 kind 與自訂 handler kind。它直接重用 toolbar items 的結構，寫過 toolbar 就會寫：",[543,21974,21976],{"className":578,"code":21975,"language":580,"meta":550,"style":550},"const slashItems: EditorSuggestionMenuItem[] = [\n  { kind: 'heading', level: 1, label: '標題 1' },\n  { kind: 'bulletList', label: '項目清單' },\n  { kind: 'blockquote', label: '引言' }\n]\n",[552,21977,21978,21995,22035,22065,22094],{"__ignoreMap":550},[555,21979,21980,21982,21985,21987,21989,21991,21993],{"class":557,"line":558},[555,21981,3325],{"class":757},[555,21983,21984],{"class":598}," slashItems",[555,21986,1173],{"class":591},[555,21988,21819],{"class":561},[555,21990,17917],{"class":598},[555,21992,761],{"class":591},[555,21994,1319],{"class":598},[555,21996,21997,21999,22002,22004,22006,22008,22010,22012,22015,22017,22020,22022,22024,22026,22028,22031,22033],{"class":557,"line":595},[555,21998,3337],{"class":591},[555,22000,22001],{"class":742}," kind",[555,22003,1173],{"class":591},[555,22005,678],{"class":591},[555,22007,21968],{"class":565},[555,22009,1218],{"class":591},[555,22011,3352],{"class":591},[555,22013,22014],{"class":742}," level",[555,22016,1173],{"class":591},[555,22018,22019],{"class":17708}," 1",[555,22021,3352],{"class":591},[555,22023,18577],{"class":742},[555,22025,1173],{"class":591},[555,22027,678],{"class":591},[555,22029,22030],{"class":565},"標題 1",[555,22032,1218],{"class":591},[555,22034,3367],{"class":591},[555,22036,22037,22039,22041,22043,22045,22048,22050,22052,22054,22056,22058,22061,22063],{"class":557,"line":605},[555,22038,3337],{"class":591},[555,22040,22001],{"class":742},[555,22042,1173],{"class":591},[555,22044,678],{"class":591},[555,22046,22047],{"class":565},"bulletList",[555,22049,1218],{"class":591},[555,22051,3352],{"class":591},[555,22053,18577],{"class":742},[555,22055,1173],{"class":591},[555,22057,678],{"class":591},[555,22059,22060],{"class":565},"項目清單",[555,22062,1218],{"class":591},[555,22064,3367],{"class":591},[555,22066,22067,22069,22071,22073,22075,22077,22079,22081,22083,22085,22087,22090,22092],{"class":557,"line":613},[555,22068,3337],{"class":591},[555,22070,22001],{"class":742},[555,22072,1173],{"class":591},[555,22074,678],{"class":591},[555,22076,2810],{"class":565},[555,22078,1218],{"class":591},[555,22080,3352],{"class":591},[555,22082,18577],{"class":742},[555,22084,1173],{"class":591},[555,22086,678],{"class":591},[555,22088,22089],{"class":565},"引言",[555,22091,1218],{"class":591},[555,22093,18976],{"class":591},[555,22095,22096],{"class":557,"line":621},[555,22097,9084],{"class":598},[709,22099,22100],{},"選定 item 後 SFC 內部會：",[22102,22103,22104,22115,22136],"ol",{},[1565,22105,22106,22107,22110,22111,22114],{},"用 ",[552,22108,22109],{},"editor.chain().focus().deleteRange(range)"," 刪掉 ",[552,22112,22113],{},"\u002Fxxx"," 觸發範圍",[1565,22116,22117,22118,22121,22122,8908,22125,22127,22128,22131,22132,22135],{},"透過 ",[552,22119,22120],{},"props.handlers"," 取出 ",[552,22123,22124],{},"handler[item.kind]",[552,22126,21862],{}," 由呼叫端顯式傳入，可取自 ",[552,22129,22130],{},"\u003CAdminRichEditor v-slot=\"{ editor, handlers }\">"," 或 base editor 情境的 ",[552,22133,22134],{},"createDefaultHandlers()","）",[1565,22137,4159,22138],{},[552,22139,22140],{},"handler.execute(editor, item).run()",[709,22142,22143],{},"由於與 toolbar items 共用 kind dispatch，對應 extension 未啟用時，選取後不會有動作（不會報錯）。",[540,22145,5756],{"id":5756},[709,22147,22148,22149,22152],{},"由 ",[552,22150,22151],{},"useEditorMenu"," composable 提供，不需額外設定：",[5758,22154,22155,22164],{},[5761,22156,22157],{},[5764,22158,22159,22162],{},[5767,22160,22161],{},"按鍵",[5767,22163,5772],{},[5774,22165,22166,22174,22182],{},[5764,22167,22168,22171],{},[5779,22169,22170],{},"ArrowUp \u002F ArrowDown",[5779,22172,22173],{},"上下移動選取",[5764,22175,22176,22179],{},[5779,22177,22178],{},"Enter \u002F Tab",[5779,22180,22181],{},"確認選取",[5764,22183,22184,22186],{},[5779,22185,5813],{},[5779,22187,22188],{},"關閉 popup",[709,22190,22191],{},"選取 label \u002F separator type 的 item 會自動跳過。",[540,22193,22195],{"id":22194},"與-toolbar-items-共用結構","與 toolbar items 共用結構",[709,22197,22198,22199,22201,22202,22204],{},"suggestion menu 的 ",[552,22200,18089],{}," 接受扁平或分組陣列。",[552,22203,17258],{}," 是分組陣列，攤平後即可直接沿用：",[543,22206,22208],{"className":578,"code":22207,"language":580,"meta":550,"style":550},"const slashItems = defaultEditorItems\n  .flat()\n  .filter((item): item is EditorSuggestionMenuItem =>\n    'kind' in item && typeof item.label === 'string'\n  )\n",[552,22209,22210,22222,22232,22260,22297],{"__ignoreMap":550},[555,22211,22212,22214,22217,22219],{"class":557,"line":558},[555,22213,3325],{"class":757},[555,22215,22216],{"class":598}," slashItems ",[555,22218,761],{"class":591},[555,22220,22221],{"class":598}," defaultEditorItems\n",[555,22223,22224,22227,22230],{"class":557,"line":595},[555,22225,22226],{"class":591},"  .",[555,22228,22229],{"class":1158},"flat",[555,22231,3461],{"class":598},[555,22233,22234,22236,22239,22241,22243,22246,22249,22252,22255,22257],{"class":557,"line":605},[555,22235,22226],{"class":591},[555,22237,22238],{"class":1158},"filter",[555,22240,1162],{"class":598},[555,22242,1162],{"class":591},[555,22244,22245],{"class":1197},"item",[555,22247,22248],{"class":591},"):",[555,22250,22251],{"class":1197}," item",[555,22253,22254],{"class":591}," is",[555,22256,21819],{"class":561},[555,22258,22259],{"class":757}," =>\n",[555,22261,22262,22265,22268,22270,22273,22276,22279,22282,22284,22286,22288,22291,22293,22295],{"class":557,"line":613},[555,22263,22264],{"class":591},"    '",[555,22266,22267],{"class":565},"kind",[555,22269,1218],{"class":591},[555,22271,22272],{"class":591}," in",[555,22274,22275],{"class":598}," item ",[555,22277,22278],{"class":591},"&&",[555,22280,22281],{"class":591}," typeof",[555,22283,22251],{"class":598},[555,22285,1210],{"class":591},[555,22287,20658],{"class":598},[555,22289,22290],{"class":591},"===",[555,22292,678],{"class":591},[555,22294,3265],{"class":565},[555,22296,684],{"class":591},[555,22298,22299],{"class":557,"line":621},[555,22300,22301],{"class":598},"  )\n",[540,22303,724],{"id":723},[696,22305,21854],{"id":21854},[944,22307],{"component":22308},"AdminEditorSuggestionMenu",[540,22310,989],{"id":989},[991,22312],{"component":22308},[994,22314,22315],{},"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":550,"searchDepth":605,"depth":605,"links":22317},[22318,22319,22320,22321,22322,22323,22326],{"id":507,"depth":595,"text":507},{"id":687,"depth":595,"text":687},{"id":21892,"depth":595,"text":21893},{"id":5756,"depth":595,"text":5756},{"id":22194,"depth":595,"text":22195},{"id":723,"depth":595,"text":724,"children":22324},[22325],{"id":21854,"depth":605,"text":21854},{"id":989,"depth":595,"text":989},"輸入 \u002F 觸發浮動選單；挑選指令執行對應動作。",{"doc":22329},"https:\u002F\u002Ftiptap.dev\u002Fdocs\u002Feditor\u002Fextensions\u002Ffunctionality\u002Fsuggestion",{},{"title":426,"description":22327},"F821mT9VS6O7udVlpJAkiXhGo-StZv9hKmJKOsF87sU",{"id":22334,"title":442,"body":22335,"component":526,"description":23156,"extension":1019,"links":23157,"meta":23159,"navigation":526,"new":18,"path":443,"seo":23160,"stem":444,"wrapperKind":19,"__hash__":23161},"docs\u002Fdocs\u002Feditor\u002F4.addons\u002F15.table.md",{"type":537,"value":22336,"toc":23144},[22337,22339,22366,22429,22446,22448,22466,22469,22968,22971,23001,23005,23010,23052,23054,23056,23058,23063,23070,23075,23081,23083,23137,23139,23141],[540,22338,507],{"id":507},[543,22340,22342],{"className":545,"code":22341,"filename":547,"language":548,"meta":549,"style":550},"pnpm add @tiptap\u002Fextension-table\npnpm dlx shadcn-vue add @admin\u002Feditor-table\n",[552,22343,22344,22353],{"__ignoreMap":550},[555,22345,22346,22348,22350],{"class":557,"line":558},[555,22347,562],{"class":561},[555,22349,572],{"class":565},[555,22351,22352],{"class":565}," @tiptap\u002Fextension-table\n",[555,22354,22355,22357,22359,22361,22363],{"class":557,"line":595},[555,22356,562],{"class":561},[555,22358,566],{"class":565},[555,22360,569],{"class":565},[555,22362,572],{"class":565},[555,22364,22365],{"class":565}," @admin\u002Feditor-table\n",[543,22367,22369],{"className":578,"code":22368,"language":580,"meta":550,"style":550},"import { TableKit } from '@tiptap\u002Fextension-table'\nimport {\n  AdminEditorTableControls,\n  createTableHandler,\n  editorTableClass\n} from '@\u002Fregistry\u002Fadmin\u002Fui\u002Feditor-table'\n",[552,22370,22371,22391,22397,22404,22411,22416],{"__ignoreMap":550},[555,22372,22373,22375,22377,22380,22382,22384,22386,22389],{"class":557,"line":558},[555,22374,588],{"class":587},[555,22376,1277],{"class":591},[555,22378,22379],{"class":598}," TableKit",[555,22381,1283],{"class":591},[555,22383,675],{"class":587},[555,22385,678],{"class":591},[555,22387,22388],{"class":565},"@tiptap\u002Fextension-table",[555,22390,684],{"class":591},[555,22392,22393,22395],{"class":557,"line":595},[555,22394,588],{"class":587},[555,22396,592],{"class":591},[555,22398,22399,22402],{"class":557,"line":605},[555,22400,22401],{"class":598},"  AdminEditorTableControls",[555,22403,602],{"class":591},[555,22405,22406,22409],{"class":557,"line":613},[555,22407,22408],{"class":598},"  createTableHandler",[555,22410,602],{"class":591},[555,22412,22413],{"class":557,"line":621},[555,22414,22415],{"class":598},"  editorTableClass\n",[555,22417,22418,22420,22422,22424,22427],{"class":557,"line":629},[555,22419,672],{"class":591},[555,22421,675],{"class":587},[555,22423,678],{"class":591},[555,22425,22426],{"class":565},"@\u002Fregistry\u002Fadmin\u002Fui\u002Feditor-table",[555,22428,684],{"class":591},[709,22430,22431,22432,22435,22436,22439,22440,22443,22444,19192],{},"含 Notion 式 grip 控制層（",[552,22433,22434],{},"AdminEditorTableControls","）、toolbar handler（",[552,22437,22438],{},"createTableHandler","）與表格樣式（",[552,22441,22442],{},"editorTableClass","）；表格能力來自 tiptap ",[552,22445,344],{},[540,22447,687],{"id":687},[709,22449,17047,22450,18285,22453,14869,22455,18285,22458,22461,22462,22465],{},[552,22451,22452],{},"TableKit.configure(...)",[552,22454,18284],{},[552,22456,22457],{},"createTableHandler()",[552,22459,22460],{},":handlers","，並將 ",[552,22463,22464],{},"\u003CAdminEditorTableControls>"," 放進 default slot。游標移入表格即浮出欄 \u002F 列 grip。",[689,22467],{"name":22468},"EditorTableDemo",[543,22470,22472],{"className":730,"code":22471,"language":732,"meta":550,"style":550},"\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",[552,22473,22474,22494,22514,22533,22551,22569,22575,22581,22587,22591,22603,22625,22643,22647,22668,22672,22711,22734,22750,22758,22819,22823,22831,22835,22843,22850,22863,22875,22888,22901,22914,22918,22938,22950,22959],{"__ignoreMap":550},[555,22475,22476,22478,22480,22482,22484,22486,22488,22490,22492],{"class":557,"line":558},[555,22477,739],{"class":591},[555,22479,3280],{"class":742},[555,22481,3283],{"class":757},[555,22483,3286],{"class":757},[555,22485,761],{"class":591},[555,22487,764],{"class":591},[555,22489,580],{"class":565},[555,22491,764],{"class":591},[555,22493,746],{"class":591},[555,22495,22496,22498,22500,22502,22504,22506,22508,22510,22512],{"class":557,"line":595},[555,22497,588],{"class":587},[555,22499,3141],{"class":587},[555,22501,1277],{"class":591},[555,22503,18339],{"class":598},[555,22505,1283],{"class":591},[555,22507,675],{"class":587},[555,22509,678],{"class":591},[555,22511,17142],{"class":565},[555,22513,684],{"class":591},[555,22515,22516,22518,22520,22523,22525,22527,22529,22531],{"class":557,"line":605},[555,22517,588],{"class":587},[555,22519,1277],{"class":591},[555,22521,22522],{"class":598}," IconTable",[555,22524,1283],{"class":591},[555,22526,675],{"class":587},[555,22528,678],{"class":591},[555,22530,18367],{"class":565},[555,22532,684],{"class":591},[555,22534,22535,22537,22539,22541,22543,22545,22547,22549],{"class":557,"line":613},[555,22536,588],{"class":587},[555,22538,1277],{"class":591},[555,22540,22379],{"class":598},[555,22542,1283],{"class":591},[555,22544,675],{"class":587},[555,22546,678],{"class":591},[555,22548,22388],{"class":565},[555,22550,684],{"class":591},[555,22552,22553,22555,22557,22559,22561,22563,22565,22567],{"class":557,"line":621},[555,22554,588],{"class":587},[555,22556,1277],{"class":591},[555,22558,3431],{"class":598},[555,22560,1283],{"class":591},[555,22562,675],{"class":587},[555,22564,678],{"class":591},[555,22566,732],{"class":565},[555,22568,684],{"class":591},[555,22570,22571,22573],{"class":557,"line":629},[555,22572,588],{"class":587},[555,22574,592],{"class":591},[555,22576,22577,22579],{"class":557,"line":637},[555,22578,22401],{"class":598},[555,22580,602],{"class":591},[555,22582,22583,22585],{"class":557,"line":645},[555,22584,22408],{"class":598},[555,22586,602],{"class":591},[555,22588,22589],{"class":557,"line":653},[555,22590,22415],{"class":598},[555,22592,22593,22595,22597,22599,22601],{"class":557,"line":661},[555,22594,672],{"class":591},[555,22596,675],{"class":587},[555,22598,678],{"class":591},[555,22600,22426],{"class":565},[555,22602,684],{"class":591},[555,22604,22605,22607,22609,22611,22613,22615,22617,22619,22621,22623],{"class":557,"line":669},[555,22606,588],{"class":587},[555,22608,1277],{"class":591},[555,22610,17128],{"class":598},[555,22612,3352],{"class":591},[555,22614,17133],{"class":598},[555,22616,1283],{"class":591},[555,22618,675],{"class":587},[555,22620,678],{"class":591},[555,22622,17142],{"class":565},[555,22624,684],{"class":591},[555,22626,22627,22629,22631,22633,22635,22637,22639,22641],{"class":557,"line":905},[555,22628,588],{"class":587},[555,22630,1277],{"class":591},[555,22632,17153],{"class":598},[555,22634,1283],{"class":591},[555,22636,675],{"class":587},[555,22638,678],{"class":591},[555,22640,17162],{"class":565},[555,22642,684],{"class":591},[555,22644,22645],{"class":557,"line":914},[555,22646,1297],{"emptyLinePlaceholder":526},[555,22648,22649,22651,22653,22655,22657,22659,22661,22664,22666],{"class":557,"line":924},[555,22650,3325],{"class":757},[555,22652,3426],{"class":598},[555,22654,761],{"class":591},[555,22656,3431],{"class":1158},[555,22658,1162],{"class":598},[555,22660,1218],{"class":591},[555,22662,22663],{"class":565},"\u003Cp>表格內容。\u003C\u002Fp>",[555,22665,1218],{"class":591},[555,22667,1226],{"class":598},[555,22669,22670],{"class":557,"line":934},[555,22671,1297],{"emptyLinePlaceholder":526},[555,22673,22674,22676,22678,22680,22683,22685,22687,22689,22691,22694,22696,22698,22701,22703,22705,22707,22709],{"class":557,"line":3540},[555,22675,3325],{"class":757},[555,22677,17517],{"class":598},[555,22679,761],{"class":591},[555,22681,22682],{"class":598}," [TableKit",[555,22684,1210],{"class":591},[555,22686,17527],{"class":1158},[555,22688,1162],{"class":598},[555,22690,4247],{"class":591},[555,22692,22693],{"class":742}," table",[555,22695,1173],{"class":591},[555,22697,1277],{"class":591},[555,22699,22700],{"class":742}," resizable",[555,22702,1173],{"class":591},[555,22704,19434],{"class":17539},[555,22706,1283],{"class":591},[555,22708,1283],{"class":591},[555,22710,17545],{"class":598},[555,22712,22713,22715,22718,22720,22722,22724,22726,22729,22732],{"class":557,"line":4426},[555,22714,3325],{"class":757},[555,22716,22717],{"class":598}," handlers ",[555,22719,761],{"class":591},[555,22721,1277],{"class":591},[555,22723,22693],{"class":742},[555,22725,1173],{"class":591},[555,22727,22728],{"class":1158}," createTableHandler",[555,22730,22731],{"class":598},"() ",[555,22733,10152],{"class":591},[555,22735,22736,22738,22740,22742,22744,22746,22748],{"class":557,"line":6198},[555,22737,3325],{"class":757},[555,22739,18525],{"class":598},[555,22741,1173],{"class":591},[555,22743,18339],{"class":561},[555,22745,18532],{"class":598},[555,22747,761],{"class":591},[555,22749,1319],{"class":598},[555,22751,22752,22754,22756],{"class":557,"line":6208},[555,22753,18541],{"class":591},[555,22755,17258],{"class":598},[555,22757,602],{"class":591},[555,22759,22760,22762,22764,22766,22768,22770,22772,22774,22776,22778,22780,22782,22784,22786,22788,22790,22793,22795,22797,22799,22801,22803,22805,22807,22809,22811,22813,22815,22817],{"class":557,"line":6227},[555,22761,17977],{"class":598},[555,22763,4247],{"class":591},[555,22765,22001],{"class":742},[555,22767,1173],{"class":591},[555,22769,678],{"class":591},[555,22771,5758],{"class":565},[555,22773,1218],{"class":591},[555,22775,3352],{"class":591},[555,22777,18568],{"class":742},[555,22779,1173],{"class":591},[555,22781,22522],{"class":598},[555,22783,3352],{"class":591},[555,22785,18577],{"class":742},[555,22787,1173],{"class":591},[555,22789,678],{"class":591},[555,22791,22792],{"class":565},"插入表格",[555,22794,1218],{"class":591},[555,22796,3352],{"class":591},[555,22798,18591],{"class":742},[555,22800,1173],{"class":591},[555,22802,1277],{"class":591},[555,22804,18598],{"class":742},[555,22806,1173],{"class":591},[555,22808,678],{"class":591},[555,22810,22792],{"class":565},[555,22812,1218],{"class":591},[555,22814,1283],{"class":591},[555,22816,1283],{"class":591},[555,22818,9084],{"class":598},[555,22820,22821],{"class":557,"line":6237},[555,22822,9084],{"class":598},[555,22824,22825,22827,22829],{"class":557,"line":6246},[555,22826,788],{"class":591},[555,22828,3280],{"class":742},[555,22830,746],{"class":591},[555,22832,22833],{"class":557,"line":6255},[555,22834,1297],{"emptyLinePlaceholder":526},[555,22836,22837,22839,22841],{"class":557,"line":524},[555,22838,739],{"class":591},[555,22840,743],{"class":742},[555,22842,746],{"class":591},[555,22844,22845,22847],{"class":557,"line":6868},[555,22846,751],{"class":591},[555,22848,22849],{"class":742},"admin-rich-editor\n",[555,22851,22852,22855,22857,22859,22861],{"class":557,"line":6877},[555,22853,22854],{"class":757},"    v-slot",[555,22856,761],{"class":591},[555,22858,764],{"class":591},[555,22860,17225],{"class":565},[555,22862,4285],{"class":591},[555,22864,22865,22867,22869,22871,22873],{"class":557,"line":6898},[555,22866,4900],{"class":757},[555,22868,761],{"class":591},[555,22870,764],{"class":591},[555,22872,2724],{"class":565},[555,22874,4285],{"class":591},[555,22876,22877,22880,22882,22884,22886],{"class":557,"line":6907},[555,22878,22879],{"class":757},"    :class",[555,22881,761],{"class":591},[555,22883,764],{"class":591},[555,22885,22442],{"class":565},[555,22887,4285],{"class":591},[555,22889,22890,22893,22895,22897,22899],{"class":557,"line":6916},[555,22891,22892],{"class":757},"    :extensions",[555,22894,761],{"class":591},[555,22896,764],{"class":591},[555,22898,17809],{"class":565},[555,22900,4285],{"class":591},[555,22902,22903,22906,22908,22910,22912],{"class":557,"line":6925},[555,22904,22905],{"class":757},"    :handlers",[555,22907,761],{"class":591},[555,22909,764],{"class":591},[555,22911,21862],{"class":565},[555,22913,4285],{"class":591},[555,22915,22916],{"class":557,"line":12227},[555,22917,9188],{"class":591},[555,22919,22920,22922,22924,22926,22928,22930,22932,22934,22936],{"class":557,"line":12236},[555,22921,776],{"class":591},[555,22923,17246],{"class":742},[555,22925,17249],{"class":757},[555,22927,15264],{"class":757},[555,22929,761],{"class":591},[555,22931,764],{"class":591},[555,22933,7365],{"class":565},[555,22935,764],{"class":591},[555,22937,1453],{"class":591},[555,22939,22941,22943,22946,22948],{"class":557,"line":22940},33,[555,22942,776],{"class":591},[555,22944,22945],{"class":742},"admin-editor-table-controls",[555,22947,17249],{"class":757},[555,22949,1453],{"class":591},[555,22951,22953,22955,22957],{"class":557,"line":22952},34,[555,22954,927],{"class":591},[555,22956,17216],{"class":742},[555,22958,746],{"class":591},[555,22960,22962,22964,22966],{"class":557,"line":22961},35,[555,22963,788],{"class":591},[555,22965,743],{"class":742},[555,22967,746],{"class":591},[709,22969,22970],{},"啟用後：",[1562,22972,22973,22976,22979,22984,22987,22994],{},[1565,22974,22975],{},"toolbar 的插入表格按鈕插入 3×3 含標題列的表格",[1565,22977,22978],{},"游標移入表格時，欄頂 \u002F 列左浮出 grip；點 grip 選取整欄 \u002F 列並開啟選單，可在前後 \u002F 上下插入欄列、刪除欄列、刪除表格",[1565,22980,22981,22982,22135],{},"第 1 欄 grip 選單含「設為標題欄」、第 1 列 grip 選單含「設為標題列」（切換首欄 \u002F 首列的 ",[552,22983,5767],{},[1565,22985,22986],{},"表格右緣 \u002F 底緣 hover 浮出「+」條，點擊在末端追加一欄 \u002F 一列",[1565,22988,22989,22990,22993],{},"預設開啟欄寬拖曳（",[552,22991,22992],{},"resizable","），拖曳欄邊界調整寬度",[1565,22995,22996,22997,23000],{},"read-only（",[552,22998,22999],{},":editable=\"false\"","）時不顯示任何 grip 與「+」控制層",[540,23002,23004],{"id":23003},"進階-configure","進階 configure",[709,23006,23007,23008,2470],{},"需要關閉欄寬拖曳或調整其他設定，自行 ",[552,23009,22452],{},[543,23011,23013],{"className":578,"code":23012,"language":580,"meta":550,"style":550},"const tableKit = TableKit.configure({ table: { resizable: false } })\n",[552,23014,23015],{"__ignoreMap":550},[555,23016,23017,23019,23022,23024,23026,23028,23030,23032,23034,23036,23038,23040,23042,23044,23046,23048,23050],{"class":557,"line":558},[555,23018,3325],{"class":757},[555,23020,23021],{"class":598}," tableKit ",[555,23023,761],{"class":591},[555,23025,22379],{"class":598},[555,23027,1210],{"class":591},[555,23029,17527],{"class":1158},[555,23031,1162],{"class":598},[555,23033,4247],{"class":591},[555,23035,22693],{"class":742},[555,23037,1173],{"class":591},[555,23039,1277],{"class":591},[555,23041,22700],{"class":742},[555,23043,1173],{"class":591},[555,23045,17540],{"class":17539},[555,23047,1283],{"class":591},[555,23049,1283],{"class":591},[555,23051,1226],{"class":598},[540,23053,724],{"id":723},[696,23055,22945],{"id":22945},[944,23057],{"component":22434},[696,23059,23061],{"id":23060},"createtablehandler",[552,23062,22457],{},[709,23064,23065,23066,23069],{},"回傳 toolbar handler，以 ",[552,23067,23068],{},"{ kind: 'table' }"," 觸發插入 3×3 含標題列的表格。",[696,23071,23073],{"id":23072},"editortableclass",[552,23074,22442],{},[709,23076,23077,23078,717],{},"表格外觀的 Tailwind class 字串，append 到 editor 的 ",[552,23079,23080],{},":class",[540,23082,1560],{"id":1560},[1562,23084,23085,23103,23114,23120,23126],{},[1565,23086,23087,2470,23090,23092,23093,23095,23096,23098,23099,23102],{},[1139,23088,23089],{},"需要 TableKit",[552,23091,22464],{}," 依賴 editor 註冊 table extension；未以 ",[552,23094,22452],{}," 經 ",[552,23097,18284],{}," 注入時，dev 會 ",[552,23100,23101],{},"console.warn"," 且控制層不作用。",[1565,23104,23105,23110,23111,23113],{},[1139,23106,23107,23108],{},"欄寬拖曳需要 ",[552,23109,22442],{},"：其中 column resize handle 的樣式由 ",[552,23112,22442],{}," 提供，未 append 時拖曳功能仍在但無視覺提示。",[1565,23115,23116,23119],{},[1139,23117,23118],{},"標題切換僅限首欄 \u002F 首列","：對齊 Notion，只有第 1 欄 \u002F 第 1 列可切換為標題；grip 選單僅於首欄 \u002F 首列顯示對應切換項。",[1565,23121,23122,23125],{},[1139,23123,23124],{},"互動為 pointer 導向","：以滑鼠 hover \u002F 點擊操作 grip 與「+」，不提供鍵盤焦點導航；鍵盤使用者仍可用 toolbar 插入、方向鍵移動與官方表格快捷鍵。",[1565,23127,23128,23130,23131,4586,23133,4589,23135,717],{},[1139,23129,1591],{},"：表格 grip 與欄寬拖曳依賴瀏覽器 DOM；元件殼不含 ",[552,23132,1595],{},[552,23134,1595],{},[701,23136,1607],{"href":1606},[540,23138,989],{"id":989},[991,23140],{"component":22434},[994,23142,23143],{},"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":550,"searchDepth":605,"depth":605,"links":23145},[23146,23147,23148,23149,23154,23155],{"id":507,"depth":595,"text":507},{"id":687,"depth":595,"text":687},{"id":23003,"depth":595,"text":23004},{"id":723,"depth":595,"text":724,"children":23150},[23151,23152,23153],{"id":22945,"depth":605,"text":22945},{"id":23060,"depth":605,"text":22457},{"id":23072,"depth":605,"text":22442},{"id":1560,"depth":595,"text":1560},{"id":989,"depth":595,"text":989},"插入表格；Notion 式欄／列 grip 選取與操作。",{"doc":23158},"https:\u002F\u002Ftiptap.dev\u002Fdocs\u002Feditor\u002Fextensions\u002Fnodes\u002Ftable",{},{"title":442,"description":23156},"ZI3w_Yni4T-dExyJtusotwCsSoBN_L3mgPiujgYoCbY",{"id":23163,"title":478,"body":23164,"component":526,"description":23891,"extension":1019,"links":23892,"meta":23893,"navigation":526,"new":18,"path":479,"seo":23894,"stem":480,"wrapperKind":19,"__hash__":23895},"docs\u002Fdocs\u002Feditor\u002F4.addons\u002F5.text-align.md",{"type":537,"value":23165,"toc":23881},[23166,23168,23195,23236,23241,23243,23260,23263,23701,23712,23714,23720,23838,23840,23842,23844,23854,23856,23874,23876,23878],[540,23167,507],{"id":507},[543,23169,23171],{"className":545,"code":23170,"filename":547,"language":548,"meta":549,"style":550},"pnpm dlx shadcn-vue add @admin\u002Feditor-text-align\npnpm add @tiptap\u002Fextension-text-align\n",[552,23172,23173,23186],{"__ignoreMap":550},[555,23174,23175,23177,23179,23181,23183],{"class":557,"line":558},[555,23176,562],{"class":561},[555,23178,566],{"class":565},[555,23180,569],{"class":565},[555,23182,572],{"class":565},[555,23184,23185],{"class":565}," @admin\u002Feditor-text-align\n",[555,23187,23188,23190,23192],{"class":557,"line":595},[555,23189,562],{"class":561},[555,23191,572],{"class":565},[555,23193,23194],{"class":565}," @tiptap\u002Fextension-text-align\n",[543,23196,23198],{"className":578,"code":23197,"language":580,"meta":550,"style":550},"import TextAlign from '@tiptap\u002Fextension-text-align'\nimport { AdminEditorTextAlignButton } from '@\u002Fregistry\u002Fadmin\u002Fui\u002Feditor-text-align'\n",[552,23199,23200,23216],{"__ignoreMap":550},[555,23201,23202,23204,23207,23209,23211,23214],{"class":557,"line":558},[555,23203,588],{"class":587},[555,23205,23206],{"class":598}," TextAlign ",[555,23208,1263],{"class":587},[555,23210,678],{"class":591},[555,23212,23213],{"class":565},"@tiptap\u002Fextension-text-align",[555,23215,684],{"class":591},[555,23217,23218,23220,23222,23225,23227,23229,23231,23234],{"class":557,"line":595},[555,23219,588],{"class":587},[555,23221,1277],{"class":591},[555,23223,23224],{"class":598}," AdminEditorTextAlignButton",[555,23226,1283],{"class":591},[555,23228,675],{"class":587},[555,23230,678],{"class":591},[555,23232,23233],{"class":565},"@\u002Fregistry\u002Fadmin\u002Fui\u002Feditor-text-align",[555,23235,684],{"class":591},[709,23237,23238,23239,19192],{},"含並排左／中／右三顆對齊按鈕；對齊能力來自 tiptap ",[552,23240,277],{},[540,23242,687],{"id":687},[709,23244,23245,23246,18285,23248,18289,23251,18293,23254,18297,23257,717],{},"加入對齊按鈕需三個步驟：在 ",[552,23247,18284],{},[552,23249,23250],{},"TextAlign.configure({ types: ['heading', 'paragraph'] })",[552,23252,23253],{},"slot: 'textAlign'",[552,23255,23256],{},"#textAlign",[552,23258,23259],{},"\u003CAdminEditorTextAlignButton>",[689,23261],{"name":23262},"EditorTextAlignDemo",[543,23264,23266],{"className":730,"code":23265,"language":732,"meta":550,"style":550},"\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",[552,23267,23268,23288,23308,23327,23341,23359,23377,23399,23417,23421,23441,23445,23492,23508,23516,23558,23562,23570,23574,23582,23620,23638,23650,23669,23677,23685,23693],{"__ignoreMap":550},[555,23269,23270,23272,23274,23276,23278,23280,23282,23284,23286],{"class":557,"line":558},[555,23271,739],{"class":591},[555,23273,3280],{"class":742},[555,23275,3283],{"class":757},[555,23277,3286],{"class":757},[555,23279,761],{"class":591},[555,23281,764],{"class":591},[555,23283,580],{"class":565},[555,23285,764],{"class":591},[555,23287,746],{"class":591},[555,23289,23290,23292,23294,23296,23298,23300,23302,23304,23306],{"class":557,"line":595},[555,23291,588],{"class":587},[555,23293,3141],{"class":587},[555,23295,1277],{"class":591},[555,23297,18339],{"class":598},[555,23299,1283],{"class":591},[555,23301,675],{"class":587},[555,23303,678],{"class":591},[555,23305,17142],{"class":565},[555,23307,684],{"class":591},[555,23309,23310,23312,23314,23317,23319,23321,23323,23325],{"class":557,"line":605},[555,23311,588],{"class":587},[555,23313,1277],{"class":591},[555,23315,23316],{"class":598}," IconAlignLeft",[555,23318,1283],{"class":591},[555,23320,675],{"class":587},[555,23322,678],{"class":591},[555,23324,18367],{"class":565},[555,23326,684],{"class":591},[555,23328,23329,23331,23333,23335,23337,23339],{"class":557,"line":613},[555,23330,588],{"class":587},[555,23332,23206],{"class":598},[555,23334,1263],{"class":587},[555,23336,678],{"class":591},[555,23338,23213],{"class":565},[555,23340,684],{"class":591},[555,23342,23343,23345,23347,23349,23351,23353,23355,23357],{"class":557,"line":621},[555,23344,588],{"class":587},[555,23346,1277],{"class":591},[555,23348,3431],{"class":598},[555,23350,1283],{"class":591},[555,23352,675],{"class":587},[555,23354,678],{"class":591},[555,23356,732],{"class":565},[555,23358,684],{"class":591},[555,23360,23361,23363,23365,23367,23369,23371,23373,23375],{"class":557,"line":629},[555,23362,588],{"class":587},[555,23364,1277],{"class":591},[555,23366,23224],{"class":598},[555,23368,1283],{"class":591},[555,23370,675],{"class":587},[555,23372,678],{"class":591},[555,23374,23233],{"class":565},[555,23376,684],{"class":591},[555,23378,23379,23381,23383,23385,23387,23389,23391,23393,23395,23397],{"class":557,"line":637},[555,23380,588],{"class":587},[555,23382,1277],{"class":591},[555,23384,17128],{"class":598},[555,23386,3352],{"class":591},[555,23388,17133],{"class":598},[555,23390,1283],{"class":591},[555,23392,675],{"class":587},[555,23394,678],{"class":591},[555,23396,17142],{"class":565},[555,23398,684],{"class":591},[555,23400,23401,23403,23405,23407,23409,23411,23413,23415],{"class":557,"line":645},[555,23402,588],{"class":587},[555,23404,1277],{"class":591},[555,23406,17153],{"class":598},[555,23408,1283],{"class":591},[555,23410,675],{"class":587},[555,23412,678],{"class":591},[555,23414,17162],{"class":565},[555,23416,684],{"class":591},[555,23418,23419],{"class":557,"line":653},[555,23420,1297],{"emptyLinePlaceholder":526},[555,23422,23423,23425,23427,23429,23431,23433,23435,23437,23439],{"class":557,"line":661},[555,23424,3325],{"class":757},[555,23426,3426],{"class":598},[555,23428,761],{"class":591},[555,23430,3431],{"class":1158},[555,23432,1162],{"class":598},[555,23434,1218],{"class":591},[555,23436,18488],{"class":565},[555,23438,1218],{"class":591},[555,23440,1226],{"class":598},[555,23442,23443],{"class":557,"line":669},[555,23444,1297],{"emptyLinePlaceholder":526},[555,23446,23447,23449,23451,23453,23456,23458,23460,23462,23464,23467,23469,23471,23473,23475,23477,23479,23481,23484,23486,23488,23490],{"class":557,"line":905},[555,23448,3325],{"class":757},[555,23450,17517],{"class":598},[555,23452,761],{"class":591},[555,23454,23455],{"class":598}," [TextAlign",[555,23457,1210],{"class":591},[555,23459,17527],{"class":1158},[555,23461,1162],{"class":598},[555,23463,4247],{"class":591},[555,23465,23466],{"class":742}," types",[555,23468,1173],{"class":591},[555,23470,9074],{"class":598},[555,23472,1218],{"class":591},[555,23474,21968],{"class":565},[555,23476,1218],{"class":591},[555,23478,3352],{"class":591},[555,23480,678],{"class":591},[555,23482,23483],{"class":565},"paragraph",[555,23485,1218],{"class":591},[555,23487,3402],{"class":598},[555,23489,672],{"class":591},[555,23491,17545],{"class":598},[555,23493,23494,23496,23498,23500,23502,23504,23506],{"class":557,"line":914},[555,23495,3325],{"class":757},[555,23497,18525],{"class":598},[555,23499,1173],{"class":591},[555,23501,18339],{"class":561},[555,23503,18532],{"class":598},[555,23505,761],{"class":591},[555,23507,1319],{"class":598},[555,23509,23510,23512,23514],{"class":557,"line":924},[555,23511,18541],{"class":591},[555,23513,17258],{"class":598},[555,23515,602],{"class":591},[555,23517,23518,23520,23522,23524,23526,23528,23531,23533,23535,23537,23539,23541,23543,23545,23547,23549,23552,23554,23556],{"class":557,"line":934},[555,23519,17977],{"class":598},[555,23521,4247],{"class":591},[555,23523,18554],{"class":742},[555,23525,1173],{"class":591},[555,23527,678],{"class":591},[555,23529,23530],{"class":565},"textAlign",[555,23532,1218],{"class":591},[555,23534,3352],{"class":591},[555,23536,18568],{"class":742},[555,23538,1173],{"class":591},[555,23540,23316],{"class":598},[555,23542,3352],{"class":591},[555,23544,18577],{"class":742},[555,23546,1173],{"class":591},[555,23548,678],{"class":591},[555,23550,23551],{"class":565},"對齊",[555,23553,1218],{"class":591},[555,23555,1283],{"class":591},[555,23557,9084],{"class":598},[555,23559,23560],{"class":557,"line":3540},[555,23561,9084],{"class":598},[555,23563,23564,23566,23568],{"class":557,"line":4426},[555,23565,788],{"class":591},[555,23567,3280],{"class":742},[555,23569,746],{"class":591},[555,23571,23572],{"class":557,"line":6198},[555,23573,1297],{"emptyLinePlaceholder":526},[555,23575,23576,23578,23580],{"class":557,"line":6208},[555,23577,739],{"class":591},[555,23579,743],{"class":742},[555,23581,746],{"class":591},[555,23583,23584,23586,23588,23590,23592,23594,23596,23598,23600,23602,23604,23606,23608,23610,23612,23614,23616,23618],{"class":557,"line":6227},[555,23585,751],{"class":591},[555,23587,17216],{"class":742},[555,23589,3599],{"class":757},[555,23591,761],{"class":591},[555,23593,764],{"class":591},[555,23595,17225],{"class":565},[555,23597,764],{"class":591},[555,23599,2871],{"class":757},[555,23601,761],{"class":591},[555,23603,764],{"class":591},[555,23605,2724],{"class":565},[555,23607,764],{"class":591},[555,23609,17802],{"class":757},[555,23611,761],{"class":591},[555,23613,764],{"class":591},[555,23615,17809],{"class":565},[555,23617,764],{"class":591},[555,23619,746],{"class":591},[555,23621,23622,23624,23626,23628,23630,23632,23634,23636],{"class":557,"line":6237},[555,23623,776],{"class":591},[555,23625,17246],{"class":742},[555,23627,15264],{"class":757},[555,23629,761],{"class":591},[555,23631,764],{"class":591},[555,23633,7365],{"class":565},[555,23635,764],{"class":591},[555,23637,746],{"class":591},[555,23639,23640,23642,23644,23646,23648],{"class":557,"line":6246},[555,23641,806],{"class":591},[555,23643,743],{"class":742},[555,23645,8717],{"class":591},[555,23647,23530],{"class":757},[555,23649,746],{"class":591},[555,23651,23652,23654,23657,23659,23661,23663,23665,23667],{"class":557,"line":6255},[555,23653,816],{"class":591},[555,23655,23656],{"class":742},"admin-editor-text-align-button",[555,23658,17249],{"class":757},[555,23660,761],{"class":591},[555,23662,764],{"class":591},[555,23664,17316],{"class":565},[555,23666,764],{"class":591},[555,23668,1453],{"class":591},[555,23670,23671,23673,23675],{"class":557,"line":524},[555,23672,853],{"class":591},[555,23674,743],{"class":742},[555,23676,746],{"class":591},[555,23678,23679,23681,23683],{"class":557,"line":6868},[555,23680,917],{"class":591},[555,23682,17246],{"class":742},[555,23684,746],{"class":591},[555,23686,23687,23689,23691],{"class":557,"line":6877},[555,23688,927],{"class":591},[555,23690,17216],{"class":742},[555,23692,746],{"class":591},[555,23694,23695,23697,23699],{"class":557,"line":6898},[555,23696,788],{"class":591},[555,23698,743],{"class":742},[555,23700,746],{"class":591},[709,23702,23703,23704,23707,23708,23711],{},"注入後 ",[552,23705,23706],{},"setTextAlign('left' | 'center' | 'right')"," command 即可用，",[552,23709,23710],{},"AdminEditorTextAlignButton"," 每顆按鈕會依游標所在段落的對齊狀態高亮。",[540,23713,23004],{"id":23003},[709,23715,23716,23717,2470],{},"需要新增可對齊的 node type 或改預設對齊，自行用 ",[552,23718,23719],{},"TextAlign.configure({...})",[543,23721,23723],{"className":730,"code":23722,"language":732,"meta":550,"style":550},"\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",[552,23724,23725,23745,23759,23763,23783,23810,23824,23830],{"__ignoreMap":550},[555,23726,23727,23729,23731,23733,23735,23737,23739,23741,23743],{"class":557,"line":558},[555,23728,739],{"class":591},[555,23730,3280],{"class":742},[555,23732,3283],{"class":757},[555,23734,3286],{"class":757},[555,23736,761],{"class":591},[555,23738,764],{"class":591},[555,23740,580],{"class":565},[555,23742,764],{"class":591},[555,23744,746],{"class":591},[555,23746,23747,23749,23751,23753,23755,23757],{"class":557,"line":595},[555,23748,588],{"class":587},[555,23750,23206],{"class":598},[555,23752,1263],{"class":587},[555,23754,678],{"class":591},[555,23756,23213],{"class":565},[555,23758,684],{"class":591},[555,23760,23761],{"class":557,"line":605},[555,23762,1297],{"emptyLinePlaceholder":526},[555,23764,23765,23767,23770,23772,23775,23777,23779,23781],{"class":557,"line":613},[555,23766,3325],{"class":757},[555,23768,23769],{"class":598}," customTextAlign ",[555,23771,761],{"class":591},[555,23773,23774],{"class":598}," TextAlign",[555,23776,1210],{"class":591},[555,23778,17527],{"class":1158},[555,23780,1162],{"class":598},[555,23782,1165],{"class":591},[555,23784,23785,23788,23790,23792,23794,23796,23798,23800,23802,23804,23806,23808],{"class":557,"line":621},[555,23786,23787],{"class":742},"  types",[555,23789,1173],{"class":591},[555,23791,9074],{"class":598},[555,23793,1218],{"class":591},[555,23795,21968],{"class":565},[555,23797,1218],{"class":591},[555,23799,3352],{"class":591},[555,23801,678],{"class":591},[555,23803,23483],{"class":565},[555,23805,1218],{"class":591},[555,23807,3456],{"class":598},[555,23809,602],{"class":591},[555,23811,23812,23815,23817,23819,23822],{"class":557,"line":629},[555,23813,23814],{"class":742},"  defaultAlignment",[555,23816,1173],{"class":591},[555,23818,678],{"class":591},[555,23820,23821],{"class":565},"left",[555,23823,684],{"class":591},[555,23825,23826,23828],{"class":557,"line":637},[555,23827,672],{"class":591},[555,23829,1226],{"class":598},[555,23831,23832,23834,23836],{"class":557,"line":645},[555,23833,788],{"class":591},[555,23835,3280],{"class":742},[555,23837,746],{"class":591},[540,23839,724],{"id":723},[696,23841,23656],{"id":23656},[944,23843],{"component":23710},[709,23845,23846,23848,23849,717],{},[552,23847,23213],{}," 套件 API 詳見 ",[701,23850,23853],{"href":23851,"rel":23852},"https:\u002F\u002Ftiptap.dev\u002Fdocs\u002Feditor\u002Fextensions\u002Ffunctionality\u002Ftextalign",[705],"tiptap text-align 官方文件",[540,23855,1560],{"id":1560},[1562,23857,23858,23865],{},[1565,23859,23860,2470,23862,23864],{},[1139,23861,19047],{},[552,23863,277],{}," 無法於編輯器建立後補上，未注入時對齊按鈕不會生效。",[1565,23866,23867,23870,23871,717],{},[1139,23868,23869],{},"僅支援左\u002F中\u002F右三值","：不含 justify；需要 justify 請自行擴充按鈕與 ",[552,23872,23873],{},"TextAlign.configure",[540,23875,989],{"id":989},[991,23877],{"component":23710},[994,23879,23880],{},"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":550,"searchDepth":605,"depth":605,"links":23882},[23883,23884,23885,23886,23889,23890],{"id":507,"depth":595,"text":507},{"id":687,"depth":595,"text":687},{"id":23003,"depth":595,"text":23004},{"id":723,"depth":595,"text":724,"children":23887},[23888],{"id":23656,"depth":605,"text":23656},{"id":1560,"depth":595,"text":1560},{"id":989,"depth":595,"text":989},"toolbar 對齊按鈕；標題／段落左中右。",{"doc":23851},{},{"title":478,"description":23891},"H8gYub1Kdoez9zxk4fNosYa6goKM1FplvNqBQoaBkZc",{"id":23897,"title":470,"body":23898,"component":526,"description":24550,"extension":1019,"links":24551,"meta":24553,"navigation":526,"new":18,"path":471,"seo":24554,"stem":472,"wrapperKind":19,"__hash__":24555},"docs\u002Fdocs\u002Feditor\u002F4.addons\u002F3.text-color.md",{"type":537,"value":23899,"toc":24541},[23900,23902,23932,24006,24013,24015,24032,24035,24509,24511,24513,24516,24518,24535,24537,24539],[540,23901,507],{"id":507},[543,23903,23905],{"className":545,"code":23904,"filename":547,"language":548,"meta":549,"style":550},"pnpm dlx shadcn-vue add @admin\u002Feditor-text-color\npnpm add @tiptap\u002Fextension-text-style @tiptap\u002Fextension-color\n",[552,23906,23907,23920],{"__ignoreMap":550},[555,23908,23909,23911,23913,23915,23917],{"class":557,"line":558},[555,23910,562],{"class":561},[555,23912,566],{"class":565},[555,23914,569],{"class":565},[555,23916,572],{"class":565},[555,23918,23919],{"class":565}," @admin\u002Feditor-text-color\n",[555,23921,23922,23924,23926,23929],{"class":557,"line":595},[555,23923,562],{"class":561},[555,23925,572],{"class":565},[555,23927,23928],{"class":565}," @tiptap\u002Fextension-text-style",[555,23930,23931],{"class":565}," @tiptap\u002Fextension-color\n",[543,23933,23935],{"className":578,"code":23934,"language":580,"meta":550,"style":550},"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",[552,23936,23937,23957,23975,23981,23988,23993],{"__ignoreMap":550},[555,23938,23939,23941,23943,23946,23948,23950,23952,23955],{"class":557,"line":558},[555,23940,588],{"class":587},[555,23942,1277],{"class":591},[555,23944,23945],{"class":598}," Color",[555,23947,1283],{"class":591},[555,23949,675],{"class":587},[555,23951,678],{"class":591},[555,23953,23954],{"class":565},"@tiptap\u002Fextension-color",[555,23956,684],{"class":591},[555,23958,23959,23961,23963,23965,23967,23969,23971,23973],{"class":557,"line":595},[555,23960,588],{"class":587},[555,23962,1277],{"class":591},[555,23964,18227],{"class":598},[555,23966,1283],{"class":591},[555,23968,675],{"class":587},[555,23970,678],{"class":591},[555,23972,18236],{"class":565},[555,23974,684],{"class":591},[555,23976,23977,23979],{"class":557,"line":605},[555,23978,588],{"class":587},[555,23980,592],{"class":591},[555,23982,23983,23986],{"class":557,"line":613},[555,23984,23985],{"class":598},"  AdminEditorTextColorButton",[555,23987,602],{"class":591},[555,23989,23990],{"class":557,"line":621},[555,23991,23992],{"class":598},"  defaultColorSwatches\n",[555,23994,23995,23997,23999,24001,24004],{"class":557,"line":629},[555,23996,672],{"class":591},[555,23998,675],{"class":587},[555,24000,678],{"class":591},[555,24002,24003],{"class":565},"@\u002Fregistry\u002Fadmin\u002Fui\u002Feditor-text-color",[555,24005,684],{"class":591},[709,24007,24008,24009,2474,24011,19192],{},"含 toolbar 按鈕與色板；顏色能力來自 tiptap ",[552,24010,372],{},[552,24012,376],{},[540,24014,687],{"id":687},[709,24016,24017,24018,18285,24020,18289,24023,18293,24026,18297,24029,717],{},"加入文字顏色需三個步驟：在 ",[552,24019,18284],{},[552,24021,24022],{},"[TextStyle, Color]",[552,24024,24025],{},"slot: 'color'",[552,24027,24028],{},"#color",[552,24030,24031],{},"\u003CAdminEditorTextColorButton>",[689,24033],{"name":24034},"EditorTextColorDemo",[543,24036,24038],{"className":730,"code":24037,"language":732,"meta":550,"style":550},"\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",[552,24039,24040,24060,24080,24099,24117,24135,24153,24159,24165,24169,24181,24203,24221,24225,24245,24250,24265,24270,24286,24294,24355,24359,24367,24371,24379,24417,24435,24447,24477,24485,24493,24501],{"__ignoreMap":550},[555,24041,24042,24044,24046,24048,24050,24052,24054,24056,24058],{"class":557,"line":558},[555,24043,739],{"class":591},[555,24045,3280],{"class":742},[555,24047,3283],{"class":757},[555,24049,3286],{"class":757},[555,24051,761],{"class":591},[555,24053,764],{"class":591},[555,24055,580],{"class":565},[555,24057,764],{"class":591},[555,24059,746],{"class":591},[555,24061,24062,24064,24066,24068,24070,24072,24074,24076,24078],{"class":557,"line":595},[555,24063,588],{"class":587},[555,24065,3141],{"class":587},[555,24067,1277],{"class":591},[555,24069,18339],{"class":598},[555,24071,1283],{"class":591},[555,24073,675],{"class":587},[555,24075,678],{"class":591},[555,24077,17142],{"class":565},[555,24079,684],{"class":591},[555,24081,24082,24084,24086,24089,24091,24093,24095,24097],{"class":557,"line":605},[555,24083,588],{"class":587},[555,24085,1277],{"class":591},[555,24087,24088],{"class":598}," IconLetterA",[555,24090,1283],{"class":591},[555,24092,675],{"class":587},[555,24094,678],{"class":591},[555,24096,18367],{"class":565},[555,24098,684],{"class":591},[555,24100,24101,24103,24105,24107,24109,24111,24113,24115],{"class":557,"line":613},[555,24102,588],{"class":587},[555,24104,1277],{"class":591},[555,24106,23945],{"class":598},[555,24108,1283],{"class":591},[555,24110,675],{"class":587},[555,24112,678],{"class":591},[555,24114,23954],{"class":565},[555,24116,684],{"class":591},[555,24118,24119,24121,24123,24125,24127,24129,24131,24133],{"class":557,"line":621},[555,24120,588],{"class":587},[555,24122,1277],{"class":591},[555,24124,18227],{"class":598},[555,24126,1283],{"class":591},[555,24128,675],{"class":587},[555,24130,678],{"class":591},[555,24132,18236],{"class":565},[555,24134,684],{"class":591},[555,24136,24137,24139,24141,24143,24145,24147,24149,24151],{"class":557,"line":629},[555,24138,588],{"class":587},[555,24140,1277],{"class":591},[555,24142,3431],{"class":598},[555,24144,1283],{"class":591},[555,24146,675],{"class":587},[555,24148,678],{"class":591},[555,24150,732],{"class":565},[555,24152,684],{"class":591},[555,24154,24155,24157],{"class":557,"line":637},[555,24156,588],{"class":587},[555,24158,592],{"class":591},[555,24160,24161,24163],{"class":557,"line":645},[555,24162,23985],{"class":598},[555,24164,602],{"class":591},[555,24166,24167],{"class":557,"line":653},[555,24168,23992],{"class":598},[555,24170,24171,24173,24175,24177,24179],{"class":557,"line":661},[555,24172,672],{"class":591},[555,24174,675],{"class":587},[555,24176,678],{"class":591},[555,24178,24003],{"class":565},[555,24180,684],{"class":591},[555,24182,24183,24185,24187,24189,24191,24193,24195,24197,24199,24201],{"class":557,"line":669},[555,24184,588],{"class":587},[555,24186,1277],{"class":591},[555,24188,17128],{"class":598},[555,24190,3352],{"class":591},[555,24192,17133],{"class":598},[555,24194,1283],{"class":591},[555,24196,675],{"class":587},[555,24198,678],{"class":591},[555,24200,17142],{"class":565},[555,24202,684],{"class":591},[555,24204,24205,24207,24209,24211,24213,24215,24217,24219],{"class":557,"line":905},[555,24206,588],{"class":587},[555,24208,1277],{"class":591},[555,24210,17153],{"class":598},[555,24212,1283],{"class":591},[555,24214,675],{"class":587},[555,24216,678],{"class":591},[555,24218,17162],{"class":565},[555,24220,684],{"class":591},[555,24222,24223],{"class":557,"line":914},[555,24224,1297],{"emptyLinePlaceholder":526},[555,24226,24227,24229,24231,24233,24235,24237,24239,24241,24243],{"class":557,"line":924},[555,24228,3325],{"class":757},[555,24230,3426],{"class":598},[555,24232,761],{"class":591},[555,24234,3431],{"class":1158},[555,24236,1162],{"class":598},[555,24238,1218],{"class":591},[555,24240,18488],{"class":565},[555,24242,1218],{"class":591},[555,24244,1226],{"class":598},[555,24246,24247],{"class":557,"line":934},[555,24248,24249],{"class":4835},"\u002F\u002F 自行注入官方 extension（Color 依賴 TextStyle）\n",[555,24251,24252,24254,24256,24258,24260,24262],{"class":557,"line":3540},[555,24253,3325],{"class":757},[555,24255,17517],{"class":598},[555,24257,761],{"class":591},[555,24259,18508],{"class":598},[555,24261,3352],{"class":591},[555,24263,24264],{"class":598}," Color]\n",[555,24266,24267],{"class":557,"line":4426},[555,24268,24269],{"class":4835},"\u002F\u002F color picker 是 kindless slot item：由具名 slot 渲染，不綁 handler\n",[555,24271,24272,24274,24276,24278,24280,24282,24284],{"class":557,"line":6198},[555,24273,3325],{"class":757},[555,24275,18525],{"class":598},[555,24277,1173],{"class":591},[555,24279,18339],{"class":561},[555,24281,18532],{"class":598},[555,24283,761],{"class":591},[555,24285,1319],{"class":598},[555,24287,24288,24290,24292],{"class":557,"line":6208},[555,24289,18541],{"class":591},[555,24291,17258],{"class":598},[555,24293,602],{"class":591},[555,24295,24296,24298,24300,24302,24304,24306,24308,24310,24312,24314,24316,24318,24320,24322,24324,24326,24329,24331,24333,24335,24337,24339,24341,24343,24345,24347,24349,24351,24353],{"class":557,"line":6227},[555,24297,17977],{"class":598},[555,24299,4247],{"class":591},[555,24301,18554],{"class":742},[555,24303,1173],{"class":591},[555,24305,678],{"class":591},[555,24307,2496],{"class":565},[555,24309,1218],{"class":591},[555,24311,3352],{"class":591},[555,24313,18568],{"class":742},[555,24315,1173],{"class":591},[555,24317,24088],{"class":598},[555,24319,3352],{"class":591},[555,24321,18577],{"class":742},[555,24323,1173],{"class":591},[555,24325,678],{"class":591},[555,24327,24328],{"class":565},"文字顏色",[555,24330,1218],{"class":591},[555,24332,3352],{"class":591},[555,24334,18591],{"class":742},[555,24336,1173],{"class":591},[555,24338,1277],{"class":591},[555,24340,18598],{"class":742},[555,24342,1173],{"class":591},[555,24344,678],{"class":591},[555,24346,24328],{"class":565},[555,24348,1218],{"class":591},[555,24350,1283],{"class":591},[555,24352,1283],{"class":591},[555,24354,9084],{"class":598},[555,24356,24357],{"class":557,"line":6237},[555,24358,9084],{"class":598},[555,24360,24361,24363,24365],{"class":557,"line":6246},[555,24362,788],{"class":591},[555,24364,3280],{"class":742},[555,24366,746],{"class":591},[555,24368,24369],{"class":557,"line":6255},[555,24370,1297],{"emptyLinePlaceholder":526},[555,24372,24373,24375,24377],{"class":557,"line":524},[555,24374,739],{"class":591},[555,24376,743],{"class":742},[555,24378,746],{"class":591},[555,24380,24381,24383,24385,24387,24389,24391,24393,24395,24397,24399,24401,24403,24405,24407,24409,24411,24413,24415],{"class":557,"line":6868},[555,24382,751],{"class":591},[555,24384,17216],{"class":742},[555,24386,3599],{"class":757},[555,24388,761],{"class":591},[555,24390,764],{"class":591},[555,24392,17225],{"class":565},[555,24394,764],{"class":591},[555,24396,2871],{"class":757},[555,24398,761],{"class":591},[555,24400,764],{"class":591},[555,24402,2724],{"class":565},[555,24404,764],{"class":591},[555,24406,17802],{"class":757},[555,24408,761],{"class":591},[555,24410,764],{"class":591},[555,24412,17809],{"class":565},[555,24414,764],{"class":591},[555,24416,746],{"class":591},[555,24418,24419,24421,24423,24425,24427,24429,24431,24433],{"class":557,"line":6877},[555,24420,776],{"class":591},[555,24422,17246],{"class":742},[555,24424,15264],{"class":757},[555,24426,761],{"class":591},[555,24428,764],{"class":591},[555,24430,7365],{"class":565},[555,24432,764],{"class":591},[555,24434,746],{"class":591},[555,24436,24437,24439,24441,24443,24445],{"class":557,"line":6898},[555,24438,806],{"class":591},[555,24440,743],{"class":742},[555,24442,8717],{"class":591},[555,24444,2496],{"class":757},[555,24446,746],{"class":591},[555,24448,24449,24451,24454,24456,24458,24460,24462,24464,24466,24468,24470,24473,24475],{"class":557,"line":6907},[555,24450,816],{"class":591},[555,24452,24453],{"class":742},"admin-editor-text-color-button",[555,24455,17249],{"class":757},[555,24457,761],{"class":591},[555,24459,764],{"class":591},[555,24461,17316],{"class":565},[555,24463,764],{"class":591},[555,24465,3501],{"class":757},[555,24467,761],{"class":591},[555,24469,764],{"class":591},[555,24471,24472],{"class":565},"defaultColorSwatches",[555,24474,764],{"class":591},[555,24476,1453],{"class":591},[555,24478,24479,24481,24483],{"class":557,"line":6916},[555,24480,853],{"class":591},[555,24482,743],{"class":742},[555,24484,746],{"class":591},[555,24486,24487,24489,24491],{"class":557,"line":6925},[555,24488,917],{"class":591},[555,24490,17246],{"class":742},[555,24492,746],{"class":591},[555,24494,24495,24497,24499],{"class":557,"line":12227},[555,24496,927],{"class":591},[555,24498,17216],{"class":742},[555,24500,746],{"class":591},[555,24502,24503,24505,24507],{"class":557,"line":12236},[555,24504,788],{"class":591},[555,24506,743],{"class":742},[555,24508,746],{"class":591},[540,24510,724],{"id":723},[696,24512,24453],{"id":24453},[944,24514],{"component":24515},"AdminEditorTextColorButton",[540,24517,1560],{"id":1560},[1562,24519,24520,24529],{},[1565,24521,24522,2470,24524,1617,24526,24528],{},[1139,24523,19047],{},[552,24525,372],{},[552,24527,376],{}," 無法於編輯器建立後補上，未注入時顏色按鈕不會生效。",[1565,24530,24531,19707,24533,19710],{},[1139,24532,19706],{},[552,24534,24472],{},[540,24536,989],{"id":989},[991,24538],{"component":24515},[994,24540,10245],{},{"title":550,"searchDepth":605,"depth":605,"links":24542},[24543,24544,24545,24548,24549],{"id":507,"depth":595,"text":507},{"id":687,"depth":595,"text":687},{"id":723,"depth":595,"text":724,"children":24546},[24547],{"id":24453,"depth":605,"text":24453},{"id":1560,"depth":595,"text":1560},{"id":989,"depth":595,"text":989},"toolbar 文字顏色按鈕與色板；套用至選取文字。",{"doc":24552},"https:\u002F\u002Ftiptap.dev\u002Fdocs\u002Feditor\u002Fextensions\u002Ffunctionality\u002Fcolor",{},{"title":470,"description":24550},"BDRa_UoVPdzuakym0Mc_l7b4II_S4TOfU7_PzdlPut8",{"id":24557,"title":384,"body":24558,"component":526,"description":24661,"extension":1019,"links":24662,"meta":24664,"navigation":526,"new":18,"path":402,"seo":24665,"stem":403,"wrapperKind":19,"__hash__":24666},"docs\u002Fdocs\u002Feditor\u002F3.core\u002F1.editor.md",{"type":537,"value":24559,"toc":24651},[24560,24562,24580,24605,24607,24610,24613,24617,24620,24623,24627,24633,24636,24638,24641,24644,24646,24648],[540,24561,507],{"id":507},[543,24563,24565],{"className":545,"code":24564,"filename":547,"language":548,"meta":549,"style":550},"pnpm dlx shadcn-vue add @admin\u002Feditor\n",[552,24566,24567],{"__ignoreMap":550},[555,24568,24569,24571,24573,24575,24577],{"class":557,"line":558},[555,24570,562],{"class":561},[555,24572,566],{"class":565},[555,24574,569],{"class":565},[555,24576,572],{"class":565},[555,24578,24579],{"class":565}," @admin\u002Feditor\n",[543,24581,24583],{"className":578,"code":24582,"language":580,"meta":550,"style":550},"import { AdminEditor } from '@\u002Fregistry\u002Fadmin\u002Fui\u002Feditor'\n",[552,24584,24585],{"__ignoreMap":550},[555,24586,24587,24589,24591,24594,24596,24598,24600,24603],{"class":557,"line":558},[555,24588,588],{"class":587},[555,24590,1277],{"class":591},[555,24592,24593],{"class":598}," AdminEditor",[555,24595,1283],{"class":591},[555,24597,675],{"class":587},[555,24599,678],{"class":591},[555,24601,24602],{"class":565},"@\u002Fregistry\u002Fadmin\u002Fui\u002Feditor",[555,24604,684],{"class":591},[540,24606,687],{"id":687},[709,24608,24609],{},"傳入最小 ProseMirror schema（Document \u002F Paragraph \u002F Text）就是一個純文字輸入框，連粗體都沒有：",[689,24611],{"name":24612},"EditorBareDemo",[540,24614,24616],{"id":24615},"搭配-starterkit","搭配 StarterKit",[709,24618,24619],{},"要粗體、標題、清單這些基本格式，把 StarterKit 傳進來：",[689,24621],{"name":24622},"EditorDemo",[540,24624,24626],{"id":24625},"自訂-toolbarslot","自訂 toolbar（slot）",[709,24628,24629,24630,24632],{},"透過 default slot 取得 ",[552,24631,17316],{}," instance，渲染自訂 toolbar：",[689,24634],{"name":24635},"EditorCustomToolbarDemo",[540,24637,724],{"id":723},[696,24639,24640],{"id":24640},"admin-editor",[944,24642],{"component":24643},"AdminEditor",[540,24645,989],{"id":989},[991,24647],{"component":24643},[994,24649,24650],{},"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":550,"searchDepth":605,"depth":605,"links":24652},[24653,24654,24655,24656,24657,24660],{"id":507,"depth":595,"text":507},{"id":687,"depth":595,"text":687},{"id":24615,"depth":595,"text":24616},{"id":24625,"depth":595,"text":24626},{"id":723,"depth":595,"text":724,"children":24658},[24659],{"id":24640,"depth":605,"text":24640},{"id":989,"depth":595,"text":989},"基於 @tiptap\u002Fvue-3 的空白編輯器核心；無 extension、無 toolbar。",{"doc":24663},"https:\u002F\u002Ftiptap.dev\u002Fdocs",{},{"title":384,"description":24661},"iLDMKyUh1BeBbsUrZVZ04Xs-Y_rcjF4MxNM9bBnKGDI",{"id":24668,"title":405,"body":24669,"component":526,"description":26519,"extension":1019,"links":26520,"meta":26522,"navigation":526,"new":18,"path":406,"seo":26523,"stem":407,"wrapperKind":19,"__hash__":26524},"docs\u002Fdocs\u002Feditor\u002F3.core\u002F2.rich-editor.md",{"type":537,"value":24670,"toc":26494},[24671,24673,24691,24714,24716,24734,24737,24748,24751,24766,24784,24929,24939,24943,24950,24975,25192,25199,25201,25205,25214,25217,25221,25226,25243,25246,25250,25276,25279,25285,25288,25292,25569,25573,25581,25992,25994,26014,26028,26048,26050,26054,26066,26069,26072,26078,26314,26317,26320,26353,26357,26370,26387,26402,26404,26406,26483,26485,26487,26489,26491],[540,24672,507],{"id":507},[543,24674,24676],{"className":545,"code":24675,"filename":547,"language":548,"meta":549,"style":550},"pnpm dlx shadcn-vue add @admin\u002Frich-editor\n",[552,24677,24678],{"__ignoreMap":550},[555,24679,24680,24682,24684,24686,24688],{"class":557,"line":558},[555,24681,562],{"class":561},[555,24683,566],{"class":565},[555,24685,569],{"class":565},[555,24687,572],{"class":565},[555,24689,24690],{"class":565}," @admin\u002Frich-editor\n",[543,24692,24694],{"className":578,"code":24693,"language":580,"meta":550,"style":550},"import { AdminRichEditor } from '@\u002Fregistry\u002Fadmin\u002Fui\u002Frich-editor'\n",[552,24695,24696],{"__ignoreMap":550},[555,24697,24698,24700,24702,24704,24706,24708,24710,24712],{"class":557,"line":558},[555,24699,588],{"class":587},[555,24701,1277],{"class":591},[555,24703,17153],{"class":598},[555,24705,1283],{"class":591},[555,24707,675],{"class":587},[555,24709,678],{"class":591},[555,24711,17162],{"class":565},[555,24713,684],{"class":591},[540,24715,687],{"id":687},[709,24717,24718,24719,24721,24722,24725,24726,24729,24730,24733],{},"掛上 ",[552,24720,2728],{}," 即可編輯。StarterKit 快捷鍵與輸入規則：",[552,24723,24724],{},"Ctrl+B"," 粗體、行首 ",[552,24727,24728],{},"#"," 加空格變標題、",[552,24731,24732],{},"-"," 加空格變清單：",[689,24735],{"name":24736},"RichEditorBasicDemo",[2810,24738,24739],{},[709,24740,24741,24742,24747],{},"要按鈕式的工具列，裝 opt-in 的 ",[701,24743,24744],{"href":410},[552,24745,24746],{},"@admin\u002Feditor-toolbar","，下一章介紹。",[540,24749,24750],{"id":24750},"內容樣式",[709,24752,24753,1127,24755,24757,24758,24761,24762,24765],{},[552,24754,17054],{},[552,24756,21869],{}," 本身不套用任何內容外觀。要讓標題、清單這些內容長出樣子，把樣式常數用 ",[552,24759,24760],{},"cn(...)"," 組好、經 ",[552,24763,24764],{},":ui=\"{ base: ... }\""," 注入內容節點：",[1562,24767,24768,24776],{},[1565,24769,24770,8908,24773,24775],{},[552,24771,24772],{},"baseProseClass",[552,24774,24602],{},"）— block 間距、段落行高",[1565,24777,24778,8908,24781,24783],{},[552,24779,24780],{},"starterKitProseClass",[552,24782,17162],{},"）— 標題 \u002F 清單 \u002F 程式碼 \u002F 引言 \u002F hr \u002F link",[543,24785,24787],{"className":730,"code":24786,"language":732,"meta":550,"style":550},"\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",[552,24788,24789,24809,24829,24848,24871,24879,24883,24891,24921],{"__ignoreMap":550},[555,24790,24791,24793,24795,24797,24799,24801,24803,24805,24807],{"class":557,"line":558},[555,24792,739],{"class":591},[555,24794,3280],{"class":742},[555,24796,3283],{"class":757},[555,24798,3286],{"class":757},[555,24800,761],{"class":591},[555,24802,764],{"class":591},[555,24804,580],{"class":565},[555,24806,764],{"class":591},[555,24808,746],{"class":591},[555,24810,24811,24813,24815,24818,24820,24822,24824,24827],{"class":557,"line":595},[555,24812,588],{"class":587},[555,24814,1277],{"class":591},[555,24816,24817],{"class":598}," cn",[555,24819,1283],{"class":591},[555,24821,675],{"class":587},[555,24823,678],{"class":591},[555,24825,24826],{"class":565},"@\u002Flib\u002Futils",[555,24828,684],{"class":591},[555,24830,24831,24833,24835,24838,24840,24842,24844,24846],{"class":557,"line":605},[555,24832,588],{"class":587},[555,24834,1277],{"class":591},[555,24836,24837],{"class":598}," baseProseClass",[555,24839,1283],{"class":591},[555,24841,675],{"class":587},[555,24843,678],{"class":591},[555,24845,24602],{"class":565},[555,24847,684],{"class":591},[555,24849,24850,24852,24854,24856,24858,24861,24863,24865,24867,24869],{"class":557,"line":613},[555,24851,588],{"class":587},[555,24853,1277],{"class":591},[555,24855,17153],{"class":598},[555,24857,3352],{"class":591},[555,24859,24860],{"class":598}," starterKitProseClass",[555,24862,1283],{"class":591},[555,24864,675],{"class":587},[555,24866,678],{"class":591},[555,24868,17162],{"class":565},[555,24870,684],{"class":591},[555,24872,24873,24875,24877],{"class":557,"line":621},[555,24874,788],{"class":591},[555,24876,3280],{"class":742},[555,24878,746],{"class":591},[555,24880,24881],{"class":557,"line":629},[555,24882,1297],{"emptyLinePlaceholder":526},[555,24884,24885,24887,24889],{"class":557,"line":637},[555,24886,739],{"class":591},[555,24888,743],{"class":742},[555,24890,746],{"class":591},[555,24892,24893,24895,24897,24899,24901,24903,24905,24907,24910,24912,24914,24917,24919],{"class":557,"line":645},[555,24894,751],{"class":591},[555,24896,17216],{"class":742},[555,24898,2871],{"class":757},[555,24900,761],{"class":591},[555,24902,764],{"class":591},[555,24904,2724],{"class":565},[555,24906,764],{"class":591},[555,24908,24909],{"class":757}," :ui",[555,24911,761],{"class":591},[555,24913,764],{"class":591},[555,24915,24916],{"class":565},"{ base: cn(baseProseClass, starterKitProseClass) }",[555,24918,764],{"class":591},[555,24920,1453],{"class":591},[555,24922,24923,24925,24927],{"class":557,"line":653},[555,24924,788],{"class":591},[555,24926,743],{"class":742},[555,24928,746],{"class":591},[709,24930,24931,24932,24934,24935,24938],{},"擴充包各自帶自己的樣式常數（如 ",[552,24933,22442],{},"），裝了就一起放進 ",[552,24936,24937],{},"cn","，細節見各包文件。",[696,24940,24942],{"id":24941},"前台唯讀-viewer","前台唯讀 viewer",[709,24944,24945,24946,24949],{},"後台存的 HTML 要在前台展示時，不需要再掛一顆 editor。樣式常數就是一般的 package export，前台 import 同一份、套在 ",[552,24947,24948],{},"v-html"," 容器上，兩邊外觀就一致，之後改樣式也只改一處。",[709,24951,24952,24953,1127,24955,24958,24959,24962,24963,24965,24966,24968,24969,24974],{},"前台容器的直接子元素就是 ",[552,24954,709],{},[552,24956,24957],{},"h1"," 這些內容節點，和後台 ",[552,24960,24961],{},":ui.base"," 注入的是同一層，直接用 ",[552,24964,23080],{}," 套即可。",[552,24967,24948],{}," 輸出前記得先過一層 sanitizer（例如 ",[701,24970,24973],{"href":24971,"rel":24972},"https:\u002F\u002Fgithub.com\u002Fcure53\u002FDOMPurify",[705],"DOMPurify","），內容出自多人後台或舊資料匯入時尤其重要：",[543,24976,24978],{"className":730,"code":24977,"language":732,"meta":550,"style":550},"\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",[552,24979,24980,25000,25016,25034,25052,25070,25074,25094,25128,25136,25140,25148,25184],{"__ignoreMap":550},[555,24981,24982,24984,24986,24988,24990,24992,24994,24996,24998],{"class":557,"line":558},[555,24983,739],{"class":591},[555,24985,3280],{"class":742},[555,24987,3283],{"class":757},[555,24989,3286],{"class":757},[555,24991,761],{"class":591},[555,24993,764],{"class":591},[555,24995,580],{"class":565},[555,24997,764],{"class":591},[555,24999,746],{"class":591},[555,25001,25002,25004,25007,25009,25011,25014],{"class":557,"line":595},[555,25003,588],{"class":587},[555,25005,25006],{"class":598}," DOMPurify ",[555,25008,1263],{"class":587},[555,25010,678],{"class":591},[555,25012,25013],{"class":565},"dompurify",[555,25015,684],{"class":591},[555,25017,25018,25020,25022,25024,25026,25028,25030,25032],{"class":557,"line":605},[555,25019,588],{"class":587},[555,25021,1277],{"class":591},[555,25023,24817],{"class":598},[555,25025,1283],{"class":591},[555,25027,675],{"class":587},[555,25029,678],{"class":591},[555,25031,24826],{"class":565},[555,25033,684],{"class":591},[555,25035,25036,25038,25040,25042,25044,25046,25048,25050],{"class":557,"line":613},[555,25037,588],{"class":587},[555,25039,1277],{"class":591},[555,25041,24837],{"class":598},[555,25043,1283],{"class":591},[555,25045,675],{"class":587},[555,25047,678],{"class":591},[555,25049,24602],{"class":565},[555,25051,684],{"class":591},[555,25053,25054,25056,25058,25060,25062,25064,25066,25068],{"class":557,"line":621},[555,25055,588],{"class":587},[555,25057,1277],{"class":591},[555,25059,24860],{"class":598},[555,25061,1283],{"class":591},[555,25063,675],{"class":587},[555,25065,678],{"class":591},[555,25067,17162],{"class":565},[555,25069,684],{"class":591},[555,25071,25072],{"class":557,"line":629},[555,25073,1297],{"emptyLinePlaceholder":526},[555,25075,25076,25078,25081,25083,25085,25087,25089,25091],{"class":557,"line":637},[555,25077,3325],{"class":757},[555,25079,25080],{"class":598}," html ",[555,25082,761],{"class":591},[555,25084,3431],{"class":1158},[555,25086,1162],{"class":598},[555,25088,8643],{"class":591},[555,25090,10136],{"class":598},[555,25092,25093],{"class":4835},"\u002F\u002F 後台存下的 HTML\n",[555,25095,25096,25098,25101,25103,25106,25108,25110,25112,25115,25117,25120,25123,25125],{"class":557,"line":645},[555,25097,3325],{"class":757},[555,25099,25100],{"class":598}," safeHtml ",[555,25102,761],{"class":591},[555,25104,25105],{"class":1158}," computed",[555,25107,1162],{"class":598},[555,25109,10085],{"class":591},[555,25111,1204],{"class":757},[555,25113,25114],{"class":598}," DOMPurify",[555,25116,1210],{"class":591},[555,25118,25119],{"class":1158},"sanitize",[555,25121,25122],{"class":598},"(html",[555,25124,1210],{"class":591},[555,25126,25127],{"class":598},"value))\n",[555,25129,25130,25132,25134],{"class":557,"line":653},[555,25131,788],{"class":591},[555,25133,3280],{"class":742},[555,25135,746],{"class":591},[555,25137,25138],{"class":557,"line":661},[555,25139,1297],{"emptyLinePlaceholder":526},[555,25141,25142,25144,25146],{"class":557,"line":669},[555,25143,739],{"class":591},[555,25145,743],{"class":742},[555,25147,746],{"class":591},[555,25149,25150,25152,25154,25157,25159,25161,25164,25166,25169,25171,25173,25176,25178,25180,25182],{"class":557,"line":905},[555,25151,751],{"class":591},[555,25153,13316],{"class":742},[555,25155,25156],{"class":757}," :class",[555,25158,761],{"class":591},[555,25160,764],{"class":591},[555,25162,25163],{"class":565},"cn(baseProseClass, starterKitProseClass)",[555,25165,764],{"class":591},[555,25167,25168],{"class":757}," v-html",[555,25170,761],{"class":591},[555,25172,764],{"class":591},[555,25174,25175],{"class":565},"safeHtml",[555,25177,764],{"class":591},[555,25179,3663],{"class":591},[555,25181,13316],{"class":742},[555,25183,746],{"class":591},[555,25185,25186,25188,25190],{"class":557,"line":914},[555,25187,788],{"class":591},[555,25189,743],{"class":742},[555,25191,746],{"class":591},[709,25193,25194,25195,25198],{},"內容若存的是 JSON（ProseMirror doc）而不是 HTML，先用 tiptap 的 ",[552,25196,25197],{},"generateHTML(json, extensions)"," 轉成 HTML，再照上面套樣式。",[540,25200,694],{"id":694},[696,25202,25204],{"id":25203},"客製-starterkit精簡版","客製 starterKit（精簡版）",[709,25206,22117,25207,25210,25211,25213],{},[552,25208,25209],{},":starter-kit=\"{ heading: false, codeBlock: false, ... }\""," 關閉 sub-extension，自寫 ",[552,25212,7365],{}," 收緊功能。適合留言情境：",[689,25215],{"name":25216},"RichEditorStarterKitDemo",[696,25218,25220],{"id":25219},"唯讀-預覽模式","唯讀 \u002F 預覽模式",[709,25222,25223,25225],{},[552,25224,22999],{}," 切到唯讀：",[1562,25227,25228,25234,25237],{},[1565,25229,25230,25231],{},"無編輯游標、無 focus ring、",[552,25232,25233],{},"cursor: default",[1565,25235,25236],{},"文字仍可選取（允許 Ctrl+C 複製）",[1565,25238,25239,25242],{},[552,25240,25241],{},"\u003CAdminEditorToolbar>"," 可以選擇不渲染（純展示）",[689,25244],{"name":25245},"RichEditorReadonlyDemo",[696,25247,25249],{"id":25248},"表單整合vee-validate","表單整合（vee-validate）",[709,25251,25252,7627,25254,25256,25257,25260,25261,25264,25265,1127,25267,25269,25270,25272,25273,25275],{},[552,25253,17054],{},[552,25255,2728],{}," 可直接接 vee-validate 的 ",[552,25258,25259],{},"useField"," value。用 ",[552,25262,25263],{},"useField('content', rules)"," 取得 ",[552,25266,2724],{},[552,25268,8091],{},"，把 ",[552,25271,2724],{}," 綁到 editor、",[552,25274,8091],{}," 顯示錯誤即可：",[689,25277],{"name":25278},"RichEditorFormDemo",[709,25280,25281,25282,2733],{},"要在 error 狀態顯示錯誤邊框，自行透過 ",[552,25283,25284],{},":class=\"{ 'border-error-50': errorMessage }\"",[540,25286,25287],{"id":25287},"進階使用",[696,25289,25291],{"id":25290},"加自訂-extension","加自訂 extension",[543,25293,25295],{"className":730,"code":25294,"language":732,"meta":550,"style":550},"\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",[552,25296,25297,25317,25337,25359,25377,25381,25402,25413,25421,25478,25482,25490,25494,25502,25541,25553,25561],{"__ignoreMap":550},[555,25298,25299,25301,25303,25305,25307,25309,25311,25313,25315],{"class":557,"line":558},[555,25300,739],{"class":591},[555,25302,3280],{"class":742},[555,25304,3283],{"class":757},[555,25306,3286],{"class":757},[555,25308,761],{"class":591},[555,25310,764],{"class":591},[555,25312,580],{"class":565},[555,25314,764],{"class":591},[555,25316,746],{"class":591},[555,25318,25319,25321,25323,25326,25328,25330,25332,25335],{"class":557,"line":595},[555,25320,588],{"class":587},[555,25322,1277],{"class":591},[555,25324,25325],{"class":598}," Underline",[555,25327,1283],{"class":591},[555,25329,675],{"class":587},[555,25331,678],{"class":591},[555,25333,25334],{"class":565},"@tiptap\u002Fextension-underline",[555,25336,684],{"class":591},[555,25338,25339,25341,25343,25345,25347,25349,25351,25353,25355,25357],{"class":557,"line":605},[555,25340,588],{"class":587},[555,25342,1277],{"class":591},[555,25344,17128],{"class":598},[555,25346,3352],{"class":591},[555,25348,17133],{"class":598},[555,25350,1283],{"class":591},[555,25352,675],{"class":587},[555,25354,678],{"class":591},[555,25356,17142],{"class":565},[555,25358,684],{"class":591},[555,25360,25361,25363,25365,25367,25369,25371,25373,25375],{"class":557,"line":613},[555,25362,588],{"class":587},[555,25364,1277],{"class":591},[555,25366,17153],{"class":598},[555,25368,1283],{"class":591},[555,25370,675],{"class":587},[555,25372,678],{"class":591},[555,25374,17162],{"class":565},[555,25376,684],{"class":591},[555,25378,25379],{"class":557,"line":621},[555,25380,1297],{"emptyLinePlaceholder":526},[555,25382,25383,25385,25387,25389,25391,25393,25395,25398,25400],{"class":557,"line":629},[555,25384,3325],{"class":757},[555,25386,3426],{"class":598},[555,25388,761],{"class":591},[555,25390,3431],{"class":1158},[555,25392,1162],{"class":598},[555,25394,1218],{"class":591},[555,25396,25397],{"class":565},"\u003Cp>支援 underline 的內容\u003C\u002Fp>",[555,25399,1218],{"class":591},[555,25401,1226],{"class":598},[555,25403,25404,25406,25409,25411],{"class":557,"line":637},[555,25405,3325],{"class":757},[555,25407,25408],{"class":598}," items ",[555,25410,761],{"class":591},[555,25412,1319],{"class":598},[555,25414,25415,25417,25419],{"class":557,"line":645},[555,25416,18541],{"class":591},[555,25418,17258],{"class":598},[555,25420,602],{"class":591},[555,25422,25423,25425,25427,25429,25431,25433,25435,25437,25439,25442,25444,25446,25449,25451,25453,25455,25457,25459,25461,25463,25465,25468,25470,25472,25474,25476],{"class":557,"line":653},[555,25424,17977],{"class":598},[555,25426,4247],{"class":591},[555,25428,22001],{"class":742},[555,25430,1173],{"class":591},[555,25432,678],{"class":591},[555,25434,21965],{"class":565},[555,25436,1218],{"class":591},[555,25438,3352],{"class":591},[555,25440,25441],{"class":742}," mark",[555,25443,1173],{"class":591},[555,25445,678],{"class":591},[555,25447,25448],{"class":565},"underline",[555,25450,1218],{"class":591},[555,25452,3352],{"class":591},[555,25454,18591],{"class":742},[555,25456,1173],{"class":591},[555,25458,1277],{"class":591},[555,25460,18598],{"class":742},[555,25462,1173],{"class":591},[555,25464,678],{"class":591},[555,25466,25467],{"class":565},"底線",[555,25469,1218],{"class":591},[555,25471,1283],{"class":591},[555,25473,1283],{"class":591},[555,25475,3456],{"class":598},[555,25477,602],{"class":591},[555,25479,25480],{"class":557,"line":661},[555,25481,9084],{"class":598},[555,25483,25484,25486,25488],{"class":557,"line":669},[555,25485,788],{"class":591},[555,25487,3280],{"class":742},[555,25489,746],{"class":591},[555,25491,25492],{"class":557,"line":905},[555,25493,1297],{"emptyLinePlaceholder":526},[555,25495,25496,25498,25500],{"class":557,"line":914},[555,25497,739],{"class":591},[555,25499,743],{"class":742},[555,25501,746],{"class":591},[555,25503,25504,25506,25508,25510,25512,25514,25516,25518,25520,25522,25524,25526,25528,25530,25532,25534,25537,25539],{"class":557,"line":924},[555,25505,751],{"class":591},[555,25507,17216],{"class":742},[555,25509,3599],{"class":757},[555,25511,761],{"class":591},[555,25513,764],{"class":591},[555,25515,17225],{"class":565},[555,25517,764],{"class":591},[555,25519,2871],{"class":757},[555,25521,761],{"class":591},[555,25523,764],{"class":591},[555,25525,2724],{"class":565},[555,25527,764],{"class":591},[555,25529,17802],{"class":757},[555,25531,761],{"class":591},[555,25533,764],{"class":591},[555,25535,25536],{"class":565},"[Underline]",[555,25538,764],{"class":591},[555,25540,746],{"class":591},[555,25542,25543,25545,25547,25549,25551],{"class":557,"line":934},[555,25544,776],{"class":591},[555,25546,17246],{"class":742},[555,25548,17249],{"class":757},[555,25550,15264],{"class":757},[555,25552,1453],{"class":591},[555,25554,25555,25557,25559],{"class":557,"line":3540},[555,25556,927],{"class":591},[555,25558,17216],{"class":742},[555,25560,746],{"class":591},[555,25562,25563,25565,25567],{"class":557,"line":4426},[555,25564,788],{"class":591},[555,25566,743],{"class":742},[555,25568,746],{"class":591},[696,25570,25572],{"id":25571},"加自訂-kind-handler","加自訂 kind handler",[709,25574,22117,25575,25577,25578,2470],{},[552,25576,21862],{}," prop 新增任意 kind，toolbar items 直接寫 ",[552,25579,25580],{},"{ kind: 'myCustom' }",[543,25582,25584],{"className":730,"code":25583,"language":732,"meta":550,"style":550},"\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",[552,25585,25586,25606,25628,25646,25650,25660,25669,25685,25765,25780,25784,25788,25792,25802,25810,25815,25860,25902,25909,25913,25921,25925,25933,25964,25976,25984],{"__ignoreMap":550},[555,25587,25588,25590,25592,25594,25596,25598,25600,25602,25604],{"class":557,"line":558},[555,25589,739],{"class":591},[555,25591,3280],{"class":742},[555,25593,3283],{"class":757},[555,25595,3286],{"class":757},[555,25597,761],{"class":591},[555,25599,764],{"class":591},[555,25601,580],{"class":565},[555,25603,764],{"class":591},[555,25605,746],{"class":591},[555,25607,25608,25610,25612,25614,25616,25618,25620,25622,25624,25626],{"class":557,"line":595},[555,25609,588],{"class":587},[555,25611,1277],{"class":591},[555,25613,17128],{"class":598},[555,25615,3352],{"class":591},[555,25617,17133],{"class":598},[555,25619,1283],{"class":591},[555,25621,675],{"class":587},[555,25623,678],{"class":591},[555,25625,17142],{"class":565},[555,25627,684],{"class":591},[555,25629,25630,25632,25634,25636,25638,25640,25642,25644],{"class":557,"line":605},[555,25631,588],{"class":587},[555,25633,1277],{"class":591},[555,25635,17153],{"class":598},[555,25637,1283],{"class":591},[555,25639,675],{"class":587},[555,25641,678],{"class":591},[555,25643,17162],{"class":565},[555,25645,684],{"class":591},[555,25647,25648],{"class":557,"line":613},[555,25649,1297],{"emptyLinePlaceholder":526},[555,25651,25652,25654,25656,25658],{"class":557,"line":621},[555,25653,3325],{"class":757},[555,25655,22717],{"class":598},[555,25657,761],{"class":591},[555,25659,592],{"class":591},[555,25661,25662,25665,25667],{"class":557,"line":629},[555,25663,25664],{"class":742},"  insertVariable",[555,25666,1173],{"class":591},[555,25668,592],{"class":591},[555,25670,25671,25674,25676,25679,25681,25683],{"class":557,"line":637},[555,25672,25673],{"class":1158},"    canExecute",[555,25675,1173],{"class":591},[555,25677,25678],{"class":591}," ()",[555,25680,1204],{"class":757},[555,25682,19434],{"class":17539},[555,25684,602],{"class":591},[555,25686,25687,25690,25692,25694,25696,25698,25701,25703,25706,25708,25710,25712,25714,25717,25719,25722,25724,25726,25729,25731,25733,25736,25738,25741,25744,25747,25750,25752,25754,25756,25759,25761,25763],{"class":557,"line":645},[555,25688,25689],{"class":1158},"    execute",[555,25691,1173],{"class":591},[555,25693,1194],{"class":591},[555,25695,17316],{"class":1197},[555,25697,1173],{"class":591},[555,25699,25700],{"class":561}," any",[555,25702,3352],{"class":591},[555,25704,25705],{"class":1197}," cmd",[555,25707,1173],{"class":591},[555,25709,25700],{"class":561},[555,25711,1201],{"class":591},[555,25713,1204],{"class":757},[555,25715,25716],{"class":598}," editor",[555,25718,1210],{"class":591},[555,25720,25721],{"class":1158},"chain",[555,25723,10085],{"class":598},[555,25725,1210],{"class":591},[555,25727,25728],{"class":1158},"focus",[555,25730,10085],{"class":598},[555,25732,1210],{"class":591},[555,25734,25735],{"class":1158},"insertContent",[555,25737,1162],{"class":598},[555,25739,25740],{"class":591},"`",[555,25742,25743],{"class":565},"{{ ",[555,25745,25746],{"class":591},"${",[555,25748,25749],{"class":598},"cmd",[555,25751,1210],{"class":591},[555,25753,6625],{"class":598},[555,25755,672],{"class":591},[555,25757,25758],{"class":565}," }}",[555,25760,25740],{"class":591},[555,25762,1201],{"class":598},[555,25764,602],{"class":591},[555,25766,25767,25770,25772,25774,25776,25778],{"class":557,"line":653},[555,25768,25769],{"class":1158},"    isActive",[555,25771,1173],{"class":591},[555,25773,25678],{"class":591},[555,25775,1204],{"class":757},[555,25777,17540],{"class":17539},[555,25779,602],{"class":591},[555,25781,25782],{"class":557,"line":661},[555,25783,10061],{"class":591},[555,25785,25786],{"class":557,"line":669},[555,25787,10152],{"class":591},[555,25789,25790],{"class":557,"line":905},[555,25791,1297],{"emptyLinePlaceholder":526},[555,25793,25794,25796,25798,25800],{"class":557,"line":914},[555,25795,3325],{"class":757},[555,25797,25408],{"class":598},[555,25799,761],{"class":591},[555,25801,1319],{"class":598},[555,25803,25804,25806,25808],{"class":557,"line":924},[555,25805,18541],{"class":591},[555,25807,17258],{"class":598},[555,25809,602],{"class":591},[555,25811,25812],{"class":557,"line":934},[555,25813,25814],{"class":598},"  [\n",[555,25816,25817,25820,25822,25824,25826,25829,25831,25833,25836,25838,25840,25843,25845,25847,25849,25851,25853,25856,25858],{"class":557,"line":3540},[555,25818,25819],{"class":591},"    {",[555,25821,22001],{"class":742},[555,25823,1173],{"class":591},[555,25825,678],{"class":591},[555,25827,25828],{"class":565},"insertVariable",[555,25830,1218],{"class":591},[555,25832,3352],{"class":591},[555,25834,25835],{"class":742}," name",[555,25837,1173],{"class":591},[555,25839,678],{"class":591},[555,25841,25842],{"class":565},"username",[555,25844,1218],{"class":591},[555,25846,3352],{"class":591},[555,25848,18577],{"class":742},[555,25850,1173],{"class":591},[555,25852,678],{"class":591},[555,25854,25855],{"class":565},"使用者名稱",[555,25857,1218],{"class":591},[555,25859,3367],{"class":591},[555,25861,25862,25864,25866,25868,25870,25872,25874,25876,25878,25880,25882,25885,25887,25889,25891,25893,25895,25898,25900],{"class":557,"line":4426},[555,25863,25819],{"class":591},[555,25865,22001],{"class":742},[555,25867,1173],{"class":591},[555,25869,678],{"class":591},[555,25871,25828],{"class":565},[555,25873,1218],{"class":591},[555,25875,3352],{"class":591},[555,25877,25835],{"class":742},[555,25879,1173],{"class":591},[555,25881,678],{"class":591},[555,25883,25884],{"class":565},"orderId",[555,25886,1218],{"class":591},[555,25888,3352],{"class":591},[555,25890,18577],{"class":742},[555,25892,1173],{"class":591},[555,25894,678],{"class":591},[555,25896,25897],{"class":565},"訂單編號",[555,25899,1218],{"class":591},[555,25901,3367],{"class":591},[555,25903,25904,25907],{"class":557,"line":6198},[555,25905,25906],{"class":598},"  ]",[555,25908,602],{"class":591},[555,25910,25911],{"class":557,"line":6208},[555,25912,9084],{"class":598},[555,25914,25915,25917,25919],{"class":557,"line":6227},[555,25916,788],{"class":591},[555,25918,3280],{"class":742},[555,25920,746],{"class":591},[555,25922,25923],{"class":557,"line":6237},[555,25924,1297],{"emptyLinePlaceholder":526},[555,25926,25927,25929,25931],{"class":557,"line":6246},[555,25928,739],{"class":591},[555,25930,743],{"class":742},[555,25932,746],{"class":591},[555,25934,25935,25937,25939,25941,25943,25945,25947,25949,25951,25953,25955,25957,25959,25962],{"class":557,"line":6255},[555,25936,751],{"class":591},[555,25938,17216],{"class":742},[555,25940,3599],{"class":757},[555,25942,761],{"class":591},[555,25944,764],{"class":591},[555,25946,17225],{"class":565},[555,25948,764],{"class":591},[555,25950,2871],{"class":757},[555,25952,761],{"class":591},[555,25954,764],{"class":591},[555,25956,2724],{"class":565},[555,25958,764],{"class":591},[555,25960,25961],{"class":757}," :handlers",[555,25963,746],{"class":591},[555,25965,25966,25968,25970,25972,25974],{"class":557,"line":524},[555,25967,776],{"class":591},[555,25969,17246],{"class":742},[555,25971,17249],{"class":757},[555,25973,15264],{"class":757},[555,25975,1453],{"class":591},[555,25977,25978,25980,25982],{"class":557,"line":6868},[555,25979,927],{"class":591},[555,25981,17216],{"class":742},[555,25983,746],{"class":591},[555,25985,25986,25988,25990],{"class":557,"line":6877},[555,25987,788],{"class":591},[555,25989,743],{"class":742},[555,25991,746],{"class":591},[540,25993,2766],{"id":2765},[709,25995,25996,7627,25999,4786,26001,8590,26004,8593,26007,26009,26010,26013],{},[552,25997,25998],{},"AdminRichEditor",[552,26000,3252],{},[552,26002,26003],{},"string | JSONContent",[552,26005,26006],{},"contentType",[552,26008,2728],{}," 型別對齊。這與 tiptap 的 ",[552,26011,26012],{},"Content"," 型別一致：序列化格式在執行期才決定，型別層維持寬 union。",[709,26015,8599,26016,4163,26018,8604,26020,26023,26024,26027],{},[552,26017,2830],{},[552,26019,2834],{},[552,26021,26022],{},"ref\u003CJSONContent>","）綁定，容易出現型別錯誤。這屬刻意設計，而非元件缺漏——收窄會讓以 ",[552,26025,26026],{},"ref\u003Cstring>"," 綁 HTML／markdown 的常見用法直接 type error。",[709,26029,8614,26030,1617,26032,26034,26035,26037,26038,26041,26042,26045,26046,717],{},[552,26031,26006],{},[552,26033,2728],{}," 型別對齊，可自行封裝：以 ",[552,26036,26006],{}," 為 discriminant，",[552,26039,26040],{},"'json'"," 對應 ",[552,26043,26044],{},"JSONContent","、其餘對應 ",[552,26047,3265],{},[709,26049,8622],{},[2816,26051],{"name":26052,"title":26053},"TypedAdminRichEditorDemo","TypedAdminRichEditor.vue",[2821,26055,26056],{"title":2823,"type":2824},[709,26057,2827,26058,2831,26060,2835,26062,2838,26064,2842],{},[552,26059,2830],{},[552,26061,2834],{},[701,26063,515],{"href":516},[552,26065,2841],{},[2816,26067],{"name":26068},"RichEditorTypeSafeDemo",[540,26070,26071],{"id":26071},"字數限制",[709,26073,26074,26075,26077],{},"core 不內建 character count extension，要的話透過 ",[552,26076,18284],{}," 自帶：",[543,26079,26081],{"className":730,"code":26080,"language":732,"meta":550,"style":550},"\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",[552,26082,26083,26103,26119,26141,26159,26163,26179,26187,26191,26199,26205,26217,26229,26242,26246,26266,26285,26290,26298,26306],{"__ignoreMap":550},[555,26084,26085,26087,26089,26091,26093,26095,26097,26099,26101],{"class":557,"line":558},[555,26086,739],{"class":591},[555,26088,3280],{"class":742},[555,26090,3283],{"class":757},[555,26092,3286],{"class":757},[555,26094,761],{"class":591},[555,26096,764],{"class":591},[555,26098,580],{"class":565},[555,26100,764],{"class":591},[555,26102,746],{"class":591},[555,26104,26105,26107,26110,26112,26114,26117],{"class":557,"line":595},[555,26106,588],{"class":587},[555,26108,26109],{"class":598}," CharacterCount ",[555,26111,1263],{"class":587},[555,26113,678],{"class":591},[555,26115,26116],{"class":565},"@tiptap\u002Fextension-character-count",[555,26118,684],{"class":591},[555,26120,26121,26123,26125,26127,26129,26131,26133,26135,26137,26139],{"class":557,"line":605},[555,26122,588],{"class":587},[555,26124,1277],{"class":591},[555,26126,17128],{"class":598},[555,26128,3352],{"class":591},[555,26130,17133],{"class":598},[555,26132,1283],{"class":591},[555,26134,675],{"class":587},[555,26136,678],{"class":591},[555,26138,17142],{"class":565},[555,26140,684],{"class":591},[555,26142,26143,26145,26147,26149,26151,26153,26155,26157],{"class":557,"line":613},[555,26144,588],{"class":587},[555,26146,1277],{"class":591},[555,26148,17153],{"class":598},[555,26150,1283],{"class":591},[555,26152,675],{"class":587},[555,26154,678],{"class":591},[555,26156,17162],{"class":565},[555,26158,684],{"class":591},[555,26160,26161],{"class":557,"line":621},[555,26162,1297],{"emptyLinePlaceholder":526},[555,26164,26165,26167,26169,26171,26173,26175,26177],{"class":557,"line":629},[555,26166,3325],{"class":757},[555,26168,3426],{"class":598},[555,26170,761],{"class":591},[555,26172,3431],{"class":1158},[555,26174,1162],{"class":598},[555,26176,8643],{"class":591},[555,26178,1226],{"class":598},[555,26180,26181,26183,26185],{"class":557,"line":637},[555,26182,788],{"class":591},[555,26184,3280],{"class":742},[555,26186,746],{"class":591},[555,26188,26189],{"class":557,"line":645},[555,26190,1297],{"emptyLinePlaceholder":526},[555,26192,26193,26195,26197],{"class":557,"line":653},[555,26194,739],{"class":591},[555,26196,743],{"class":742},[555,26198,746],{"class":591},[555,26200,26201,26203],{"class":557,"line":661},[555,26202,751],{"class":591},[555,26204,22849],{"class":742},[555,26206,26207,26209,26211,26213,26215],{"class":557,"line":669},[555,26208,22854],{"class":757},[555,26210,761],{"class":591},[555,26212,764],{"class":591},[555,26214,17225],{"class":565},[555,26216,4285],{"class":591},[555,26218,26219,26221,26223,26225,26227],{"class":557,"line":905},[555,26220,4900],{"class":757},[555,26222,761],{"class":591},[555,26224,764],{"class":591},[555,26226,2724],{"class":565},[555,26228,4285],{"class":591},[555,26230,26231,26233,26235,26237,26240],{"class":557,"line":914},[555,26232,22892],{"class":757},[555,26234,761],{"class":591},[555,26236,764],{"class":591},[555,26238,26239],{"class":565},"[CharacterCount.configure({ limit: 500 })]",[555,26241,4285],{"class":591},[555,26243,26244],{"class":557,"line":924},[555,26245,9188],{"class":591},[555,26247,26248,26250,26252,26254,26256,26258,26260,26262,26264],{"class":557,"line":934},[555,26249,776],{"class":591},[555,26251,17246],{"class":742},[555,26253,17249],{"class":757},[555,26255,15264],{"class":757},[555,26257,761],{"class":591},[555,26259,764],{"class":591},[555,26261,17258],{"class":565},[555,26263,764],{"class":591},[555,26265,1453],{"class":591},[555,26267,26268,26270,26272,26274,26276,26278,26281,26283],{"class":557,"line":3540},[555,26269,776],{"class":591},[555,26271,13316],{"class":742},[555,26273,13319],{"class":757},[555,26275,761],{"class":591},[555,26277,764],{"class":591},[555,26279,26280],{"class":565},"mt-2 text-xs text-text-50",[555,26282,764],{"class":591},[555,26284,746],{"class":591},[555,26286,26287],{"class":557,"line":4426},[555,26288,26289],{"class":598},"      {{ editor.storage.characterCount.characters() }} \u002F 500\n",[555,26291,26292,26294,26296],{"class":557,"line":6198},[555,26293,917],{"class":591},[555,26295,13316],{"class":742},[555,26297,746],{"class":591},[555,26299,26300,26302,26304],{"class":557,"line":6208},[555,26301,927],{"class":591},[555,26303,17216],{"class":742},[555,26305,746],{"class":591},[555,26307,26308,26310,26312],{"class":557,"line":6227},[555,26309,788],{"class":591},[555,26311,743],{"class":742},[555,26313,746],{"class":591},[540,26315,26316],{"id":26316},"複製貼上行為",[709,26318,26319],{},"tiptap StarterKit 內建 paste rules，行為：",[1562,26321,26322,26330,26336,26346],{},[1565,26323,26324,26327,26328,22135],{},[1139,26325,26326],{},"保留","支援的 mark \u002F node（粗體、斜體、標題、清單、引言、code、link、",[552,26329,4649],{},[1565,26331,26332,26335],{},[1139,26333,26334],{},"丟棄","不在 schema 內的標籤（未安裝對應擴充包時，Mention \u002F Emoji \u002F TextAlign \u002F TaskList 這類內容貼上會被吃掉）",[1565,26337,26338,26339,14869,26342,26345],{},"從 Word 來源的 HTML（",[552,26340,26341],{},"\u003Co:p>",[552,26343,26344],{},"\u003Cspan style=\"...\">"," 等垃圾）會被清掉",[1565,26347,26348,26349,26352],{},"外部圖片 URL 直接顯示，但要注意 ",[1139,26350,26351],{},"CORS \u002F hot-link"," 問題（建議自行接上 upload Dialog 把圖上傳到自家 CDN）",[540,26354,26356],{"id":26355},"ssr-行為","SSR 行為",[709,26358,26359,26362,26363,26365,26366,26369],{},[552,26360,26361],{},"useEditor()"," 在 SSR 階段回 ",[552,26364,13830],{},"，template 內 ",[552,26367,26368],{},"\u003CEditorContent v-if=\"editor\">"," 守護：",[1562,26371,26372,26375,26378,26381],{},[1565,26373,26374],{},"Server-rendered HTML 不含 editor content",[1565,26376,26377],{},"Client hydration 後實例化，內容才出現（可能短暫跳動）",[1565,26379,26380],{},"後台場景無 SEO \u002F LCP 嚴格需求，可接受",[1565,26382,26383,26386],{},[1139,26384,26385],{},"不適合 SEO 場景","（若需要，該情境也不該用 editor）",[709,26388,26389,26391,26392,26394,26395,4586,26397,4589,26399,26401],{},[1139,26390,1591],{},"：tiptap ",[552,26393,26361],{}," 為 browser-only；元件殼不含 ",[552,26396,1595],{},[552,26398,1595],{},[701,26400,1607],{"href":1606},"。headed／vendor 命名與是否需包覆無關。",[540,26403,724],{"id":723},[696,26405,727],{"id":727},[543,26407,26409],{"className":730,"code":26408,"language":732,"meta":550,"style":550},"\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",[552,26410,26411,26419,26447,26467,26475],{"__ignoreMap":550},[555,26412,26413,26415,26417],{"class":557,"line":558},[555,26414,739],{"class":591},[555,26416,743],{"class":742},[555,26418,746],{"class":591},[555,26420,26421,26423,26425,26427,26429,26431,26433,26435,26437,26439,26441,26443,26445],{"class":557,"line":595},[555,26422,751],{"class":591},[555,26424,17216],{"class":742},[555,26426,3599],{"class":757},[555,26428,761],{"class":591},[555,26430,764],{"class":591},[555,26432,17225],{"class":565},[555,26434,764],{"class":591},[555,26436,2871],{"class":757},[555,26438,761],{"class":591},[555,26440,764],{"class":591},[555,26442,2724],{"class":565},[555,26444,764],{"class":591},[555,26446,746],{"class":591},[555,26448,26449,26451,26453,26455,26457,26459,26461,26463,26465],{"class":557,"line":605},[555,26450,776],{"class":591},[555,26452,17246],{"class":742},[555,26454,17249],{"class":757},[555,26456,15264],{"class":757},[555,26458,761],{"class":591},[555,26460,764],{"class":591},[555,26462,17258],{"class":565},[555,26464,764],{"class":591},[555,26466,1453],{"class":591},[555,26468,26469,26471,26473],{"class":557,"line":613},[555,26470,927],{"class":591},[555,26472,17216],{"class":742},[555,26474,746],{"class":591},[555,26476,26477,26479,26481],{"class":557,"line":621},[555,26478,788],{"class":591},[555,26480,743],{"class":742},[555,26482,746],{"class":591},[696,26484,17216],{"id":17216},[944,26486],{"component":25998},[540,26488,989],{"id":989},[991,26490],{"component":25998},[994,26492,26493],{},"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":550,"searchDepth":605,"depth":605,"links":26495},[26496,26497,26498,26501,26506,26510,26511,26512,26513,26514,26518],{"id":507,"depth":595,"text":507},{"id":687,"depth":595,"text":687},{"id":24750,"depth":595,"text":24750,"children":26499},[26500],{"id":24941,"depth":605,"text":24942},{"id":694,"depth":595,"text":694,"children":26502},[26503,26504,26505],{"id":25203,"depth":605,"text":25204},{"id":25219,"depth":605,"text":25220},{"id":25248,"depth":605,"text":25249},{"id":25287,"depth":595,"text":25287,"children":26507},[26508,26509],{"id":25290,"depth":605,"text":25291},{"id":25571,"depth":605,"text":25572},{"id":2765,"depth":595,"text":2766},{"id":26071,"depth":595,"text":26071},{"id":26316,"depth":595,"text":26316},{"id":26355,"depth":595,"text":26356},{"id":723,"depth":595,"text":724,"children":26515},[26516,26517],{"id":727,"depth":605,"text":727},{"id":17216,"depth":605,"text":17216},{"id":989,"depth":595,"text":989},"admin-editor 加上 StarterKit；粗體、標題、清單等基本格式。",{"doc":24663,"api":26521},"https:\u002F\u002Ftiptap.dev\u002Fdocs\u002Feditor\u002Fapi",{},{"title":405,"description":26519},"n7N1tZvtnKhW8D1zNSWhO5nt4von-eeEIQ1BLuKrllw",{"id":26526,"title":409,"body":26527,"component":526,"description":26896,"extension":1019,"links":26897,"meta":26898,"navigation":526,"new":18,"path":410,"seo":26899,"stem":411,"wrapperKind":19,"__hash__":26900},"docs\u002Fdocs\u002Feditor\u002F3.core\u002F3.toolbar.md",{"type":537,"value":26528,"toc":26879},[26529,26531,26554,26581,26583,26598,26601,26603,26607,26613,26616,26620,26627,26630,26634,26650,26652,26656,26684,26686,26689,26695,26768,26770,26772,26852,26854,26857,26859,26872,26874,26876],[540,26530,507],{"id":507},[543,26532,26534],{"className":545,"code":26533,"filename":547,"language":548,"meta":549,"style":550},"# 只依賴 @admin\u002Feditor-core;可搭 rich-editor 或 base editor 使用\npnpm dlx shadcn-vue add @admin\u002Feditor-toolbar\n",[552,26535,26536,26541],{"__ignoreMap":550},[555,26537,26538],{"class":557,"line":558},[555,26539,26540],{"class":4835},"# 只依賴 @admin\u002Feditor-core;可搭 rich-editor 或 base editor 使用\n",[555,26542,26543,26545,26547,26549,26551],{"class":557,"line":595},[555,26544,562],{"class":561},[555,26546,566],{"class":565},[555,26548,569],{"class":565},[555,26550,572],{"class":565},[555,26552,26553],{"class":565}," @admin\u002Feditor-toolbar\n",[543,26555,26557],{"className":578,"code":26556,"language":580,"meta":550,"style":550},"import { AdminEditorToolbar, defaultEditorItems } from '@\u002Fregistry\u002Fadmin\u002Fui\u002Feditor-toolbar'\n",[552,26558,26559],{"__ignoreMap":550},[555,26560,26561,26563,26565,26567,26569,26571,26573,26575,26577,26579],{"class":557,"line":558},[555,26562,588],{"class":587},[555,26564,1277],{"class":591},[555,26566,17128],{"class":598},[555,26568,3352],{"class":591},[555,26570,17133],{"class":598},[555,26572,1283],{"class":591},[555,26574,675],{"class":587},[555,26576,678],{"class":591},[555,26578,17142],{"class":565},[555,26580,684],{"class":591},[540,26582,687],{"id":687},[709,26584,26585,26586,26588,26589,26591,26592,26595,26596,2470],{},"最小可用組合：",[552,26587,17054],{}," 容器內擺 ",[552,26590,25241],{},"（預設 layout ",[552,26593,26594],{},"'fixed'","），items 給 ",[552,26597,17258],{},[689,26599],{"name":26600},"RichEditorDemo",[540,26602,694],{"id":694},[696,26604,26606],{"id":26605},"bubble-layout","Bubble layout",[709,26608,26609,26610,2470],{},"選取文字後浮現 toolbar（Notion \u002F Medium 風）。設定 ",[552,26611,26612],{},"layout=\"bubble\"",[689,26614],{"name":26615},"RichEditorBubbleDemo",[696,26617,26619],{"id":26618},"floating-layout","Floating layout",[709,26621,26622,26623,26626],{},"游標停在空行時浮現（Notion 的 block 插入選單風格）。設定 ",[552,26624,26625],{},"layout=\"floating\"","，items 只放區塊操作：",[689,26628],{"name":26629},"RichEditorFloatingDemo",[696,26631,26633],{"id":26632},"客製-items精簡版","客製 items（精簡版）",[709,26635,26636,26638,26639,26642,26643,26646,26647,26649],{},[552,26637,18089],{}," 接受 ",[552,26640,26641],{},"EditorToolbarItem[]","（單列）或 ",[552,26644,26645],{},"EditorToolbarItem[][]","（分組，每組之間自動加 separator）。自寫 ",[552,26648,7365],{}," 收緊功能：",[689,26651],{"name":25216},[696,26653,26655],{"id":26654},"具名-slot-與-item-slot","具名 slot 與 #item slot",[709,26657,26658,26659,26662,26663,26666,26667,26670,26671,26673,26674,26676,26677,1127,26680,26683],{},"item 可以整顆換成自訂元件：指定 ",[552,26660,26661],{},"slot: '\u003Cname>'"," 就交給同名具名 slot 渲染，沒指定的落到通用 ",[552,26664,26665],{},"#item"," slot。slot props 為 ",[552,26668,26669],{},"{ item, index, isActive, isDisabled, onClick }","；不含 ",[552,26672,17316],{},"，需要就從外層 ",[552,26675,22130],{}," 取。",[552,26678,26679],{},"@admin\u002Feditor-text-color",[552,26681,26682],{},"@admin\u002Feditor-highlight"," 就是這樣接入的：",[689,26685],{"name":24034},[540,26687,17258],{"id":26688},"defaulteditoritems",[709,26690,26691,26694],{},[552,26692,26693],{},"defaultEditorItems: EditorToolbarItem[][]"," 是預設工具列分組，只涵蓋 StarterKit 能力（復原、文字裝飾、段落樣式、區塊、Link），每個 item 都帶好 icon、繁中 label 與 tooltip。textAlign \u002F image \u002F indent 等非 StarterKit 能力由對應的 opt-in 包提供，spread 後追加即可：",[543,26696,26698],{"className":578,"code":26697,"language":580,"meta":550,"style":550},"const items = [\n  ...defaultEditorItems,\n  [{ kind: 'insertVariable', name: 'username', label: '使用者名稱' }],\n]\n",[552,26699,26700,26710,26718,26764],{"__ignoreMap":550},[555,26701,26702,26704,26706,26708],{"class":557,"line":558},[555,26703,3325],{"class":757},[555,26705,25408],{"class":598},[555,26707,761],{"class":591},[555,26709,1319],{"class":598},[555,26711,26712,26714,26716],{"class":557,"line":595},[555,26713,18541],{"class":591},[555,26715,17258],{"class":598},[555,26717,602],{"class":591},[555,26719,26720,26722,26724,26726,26728,26730,26732,26734,26736,26738,26740,26742,26744,26746,26748,26750,26752,26754,26756,26758,26760,26762],{"class":557,"line":605},[555,26721,17977],{"class":598},[555,26723,4247],{"class":591},[555,26725,22001],{"class":742},[555,26727,1173],{"class":591},[555,26729,678],{"class":591},[555,26731,25828],{"class":565},[555,26733,1218],{"class":591},[555,26735,3352],{"class":591},[555,26737,25835],{"class":742},[555,26739,1173],{"class":591},[555,26741,678],{"class":591},[555,26743,25842],{"class":565},[555,26745,1218],{"class":591},[555,26747,3352],{"class":591},[555,26749,18577],{"class":742},[555,26751,1173],{"class":591},[555,26753,678],{"class":591},[555,26755,25855],{"class":565},[555,26757,1218],{"class":591},[555,26759,1283],{"class":591},[555,26761,3456],{"class":598},[555,26763,602],{"class":591},[555,26765,26766],{"class":557,"line":613},[555,26767,9084],{"class":598},[540,26769,724],{"id":723},[696,26771,727],{"id":727},[543,26773,26775],{"className":730,"code":26774,"language":732,"meta":550,"style":550},"\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",[552,26776,26777,26785,26814,26836,26844],{"__ignoreMap":550},[555,26778,26779,26781,26783],{"class":557,"line":558},[555,26780,739],{"class":591},[555,26782,743],{"class":742},[555,26784,746],{"class":591},[555,26786,26787,26789,26791,26793,26795,26797,26800,26802,26804,26806,26808,26810,26812],{"class":557,"line":595},[555,26788,751],{"class":591},[555,26790,17216],{"class":742},[555,26792,3599],{"class":757},[555,26794,761],{"class":591},[555,26796,764],{"class":591},[555,26798,26799],{"class":565},"{ editor, handlers }",[555,26801,764],{"class":591},[555,26803,2871],{"class":757},[555,26805,761],{"class":591},[555,26807,764],{"class":591},[555,26809,2724],{"class":565},[555,26811,764],{"class":591},[555,26813,746],{"class":591},[555,26815,26816,26818,26820,26822,26824,26826,26828,26830,26832,26834],{"class":557,"line":605},[555,26817,776],{"class":591},[555,26819,17246],{"class":742},[555,26821,17249],{"class":757},[555,26823,25961],{"class":757},[555,26825,15264],{"class":757},[555,26827,761],{"class":591},[555,26829,764],{"class":591},[555,26831,17258],{"class":565},[555,26833,764],{"class":591},[555,26835,1453],{"class":591},[555,26837,26838,26840,26842],{"class":557,"line":613},[555,26839,927],{"class":591},[555,26841,17216],{"class":742},[555,26843,746],{"class":591},[555,26845,26846,26848,26850],{"class":557,"line":621},[555,26847,788],{"class":591},[555,26849,743],{"class":742},[555,26851,746],{"class":591},[696,26853,17246],{"id":17246},[944,26855],{"component":26856},"AdminEditorToolbar",[540,26858,1560],{"id":1560},[1562,26860,26861],{},[1565,26862,26863,26865,26866,4586,26868,4589,26870,717],{},[1139,26864,1591],{},"：bubble \u002F floating layout 依賴瀏覽器 DOM 定位；元件殼不含 ",[552,26867,1595],{},[552,26869,1595],{},[701,26871,1607],{"href":1606},[540,26873,989],{"id":989},[991,26875],{"component":26856},[994,26877,26878],{},"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":550,"searchDepth":605,"depth":605,"links":26880},[26881,26882,26883,26889,26890,26894,26895],{"id":507,"depth":595,"text":507},{"id":687,"depth":595,"text":687},{"id":694,"depth":595,"text":694,"children":26884},[26885,26886,26887,26888],{"id":26605,"depth":605,"text":26606},{"id":26618,"depth":605,"text":26619},{"id":26632,"depth":605,"text":26633},{"id":26654,"depth":605,"text":26655},{"id":26688,"depth":595,"text":17258},{"id":723,"depth":595,"text":724,"children":26891},[26892,26893],{"id":727,"depth":605,"text":727},{"id":17246,"depth":605,"text":17246},{"id":1560,"depth":595,"text":1560},{"id":989,"depth":595,"text":989},"admin-rich-editor 的工具列。layout：fixed／bubble／floating；可放按鈕、下拉選單與自訂元件。",{"doc":24663},{},{"title":409,"description":26896},"fzi4mSDXQEow2jmnSZYUlfBsSim_sFocV74IaE3o-74",[26902],{"id":26903,"title":200,"body":26904,"component":526,"description":27432,"extension":1019,"links":27433,"meta":27435,"navigation":526,"new":18,"path":201,"seo":27436,"stem":202,"wrapperKind":19,"__hash__":27437},"docs\u002Fdocs\u002Faio-editor\u002F2.editor.md",{"type":537,"value":26905,"toc":27416},[26906,26908,26927,26938,26940,26943,26946,26948,26952,26969,26972,26975,26984,26987,26991,27009,27012,27016,27023,27148,27151,27155,27170,27173,27175,27178,27181,27204,27206,27409,27411,27413],[540,26907,507],{"id":507},[543,26909,26911],{"className":545,"code":26910,"language":548,"meta":550,"style":550},"pnpm dlx shadcn-vue@latest add @admin\u002Faio-editor\n",[552,26912,26913],{"__ignoreMap":550},[555,26914,26915,26917,26919,26922,26924],{"class":557,"line":558},[555,26916,562],{"class":561},[555,26918,566],{"class":565},[555,26920,26921],{"class":565}," shadcn-vue@latest",[555,26923,572],{"class":565},[555,26925,26926],{"class":565}," @admin\u002Faio-editor\n",[709,26928,26929,26930,26933,26934,26937],{},"安裝即取得 UI 與邏輯核心（tiptap extensions、預設 config、",[552,26931,26932],{},"useAioEditor","），核心置於元件內 ",[552,26935,26936],{},"core\u002F"," 子目錄，無需另裝其他單元。",[540,26939,687],{"id":687},[709,26941,26942],{},"預設 config 即包含完整功能：36 個 extensions、35 顆 toolbar 控制項、7 種情境 bubble menu 與 drag handle。",[689,26944],{"name":26945},"AioEditorBasicDemo",[540,26947,694],{"id":694},[696,26949,26951],{"id":26950},"自訂-toolbar-與-custom-按鈕","自訂 toolbar 與 Custom 按鈕",[709,26953,26954,26957,26958,26960,26961,26964,26965,26968],{},[552,26955,26956],{},"config.features"," 以宣告陣列決定按鈕集合與順序（同時決定 extension 載入），",[552,26959,61],{}," 分組；",[552,26962,26963],{},"Custom"," 功能可帶 icon \u002F slot \u002F 自帶 extensions。bubble 跟隨宣告自動掛載，",[552,26966,26967],{},"dragHandle"," 可停用。",[689,26970],{"name":26971},"AioEditorCustomToolbarDemo",[696,26973,26974],{"id":26974},"表格",[709,26976,26977,26980,26981,26983],{},[552,26978,26979],{},"Table"," 功能載入 ",[552,26982,344],{},"（Table \u002F TableRow \u002F TableCell \u002F TableHeader）。游標進入表格時依位置掛載 Table \u002F TableColumn \u002F TableRow 三種 bubble，欄寬可拖曳框線調整。",[689,26985],{"name":26986},"AioEditorTableDemo",[696,26988,26990],{"id":26989},"圖片與-requesturl","圖片與 requestUrl",[709,26992,26993,26995,26996,26999,27000,27002,27003,27005,27006,27008],{},[552,26994,77],{}," 功能之插入來源走 ",[552,26997,26998],{},"config.toolbarOptions.requestUrl","（Link \u002F Video 共用同一入口，以 ",[552,27001,22267],{}," 區分）；未提供時 fallback 為 ",[552,27004,20048],{},"。實務上在此接上傳對話框或素材庫，回傳 ",[552,27007,8139],{}," 即取消。點選圖片出現 Image bubble，可切換對齊與寬度。",[689,27010],{"name":27011},"AioEditorImageDemo",[696,27013,27015],{"id":27014},"前台渲染輸出-html","前台渲染輸出 HTML",[709,27017,27018,27019,27022],{},"編輯器內容樣式已拆為共通 prose 樣式 ",[552,27020,27021],{},"adminAioEditorProseClass","：前台（或任何唯讀情境）渲染編輯器產出的 HTML 時，把它套在容器上即可對齊編輯時外觀，不需掛編輯器。",[543,27024,27026],{"className":730,"code":27025,"language":732,"meta":550,"style":550},"\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",[552,27027,27028,27048,27068,27086,27094,27098,27106,27140],{"__ignoreMap":550},[555,27029,27030,27032,27034,27036,27038,27040,27042,27044,27046],{"class":557,"line":558},[555,27031,739],{"class":591},[555,27033,3280],{"class":742},[555,27035,3283],{"class":757},[555,27037,3286],{"class":757},[555,27039,761],{"class":591},[555,27041,764],{"class":591},[555,27043,580],{"class":565},[555,27045,764],{"class":591},[555,27047,746],{"class":591},[555,27049,27050,27052,27054,27057,27059,27061,27063,27066],{"class":557,"line":595},[555,27051,588],{"class":587},[555,27053,1277],{"class":591},[555,27055,27056],{"class":598}," adminAioEditorProseClass",[555,27058,1283],{"class":591},[555,27060,675],{"class":587},[555,27062,678],{"class":591},[555,27064,27065],{"class":565},"@\u002Fcomponents\u002Fadmin\u002Faio-editor",[555,27067,684],{"class":591},[555,27069,27070,27072,27074,27076,27078,27080,27082,27084],{"class":557,"line":605},[555,27071,588],{"class":587},[555,27073,1277],{"class":591},[555,27075,24817],{"class":598},[555,27077,1283],{"class":591},[555,27079,675],{"class":587},[555,27081,678],{"class":591},[555,27083,24826],{"class":565},[555,27085,684],{"class":591},[555,27087,27088,27090,27092],{"class":557,"line":613},[555,27089,788],{"class":591},[555,27091,3280],{"class":742},[555,27093,746],{"class":591},[555,27095,27096],{"class":557,"line":621},[555,27097,1297],{"emptyLinePlaceholder":526},[555,27099,27100,27102,27104],{"class":557,"line":629},[555,27101,739],{"class":591},[555,27103,743],{"class":742},[555,27105,746],{"class":591},[555,27107,27108,27110,27112,27114,27116,27118,27121,27123,27125,27127,27129,27132,27134,27136,27138],{"class":557,"line":637},[555,27109,751],{"class":591},[555,27111,13316],{"class":742},[555,27113,25156],{"class":757},[555,27115,761],{"class":591},[555,27117,764],{"class":591},[555,27119,27120],{"class":565},"cn(adminAioEditorProseClass)",[555,27122,764],{"class":591},[555,27124,25168],{"class":757},[555,27126,761],{"class":591},[555,27128,764],{"class":591},[555,27130,27131],{"class":565},"htmlFromEditor",[555,27133,764],{"class":591},[555,27135,3663],{"class":591},[555,27137,13316],{"class":742},[555,27139,746],{"class":591},[555,27141,27142,27144,27146],{"class":557,"line":645},[555,27143,788],{"class":591},[555,27145,743],{"class":742},[555,27147,746],{"class":591},[689,27149],{"name":27150},"AioEditorProseRenderDemo",[696,27152,27154],{"id":27153},"mentionopt-in","Mention（opt-in）",[709,27156,27157,1127,27159,27161,27162,27165,27166,27169],{},[552,27158,348],{},[552,27160,352],{}," 不在預設集合——需經 ",[552,27163,27164],{},"config.include"," 啟用，並以 ",[552,27167,27168],{},"mentionSuggestion"," 的 runtime hooks 提供選單渲染實作（選單 UI 由 consumer 全權決定）。",[689,27171],{"name":27172},"AioEditorMentionDemo",[540,27174,724],{"id":723},[696,27176,27177],{"id":27177},"aio-editor",[944,27179],{"component":27180},"AdminAioEditor",[709,27182,27183,27186,27187,14869,27190,27193,27194,27197,27198,27201,27202,717],{},[552,27184,27185],{},"config"," 之完整型別（",[552,27188,27189],{},"AioEditorConfig",[552,27191,27192],{},"AioEditorExtensionsConfig","、enums 與各 ",[552,27195,27196],{},"default*Config","）由 ",[552,27199,27200],{},"@admin\u002Faio-editor"," 匯出，各 extension 的完整選項說明見 ",[701,27203,209],{"href":210},[540,27205,1560],{"id":1560},[1562,27207,27208,27229,27256,27287,27300,27319,27339,27355,27374,27393],{},[1565,27209,27210,27213,27214,27216,27217,27219,27220,1127,27222,1127,27225,27228],{},[1139,27211,27212],{},"URL 輸入來源","：Link \u002F Image \u002F Video 按鈕預設以 ",[552,27215,20048],{}," 取得 URL；提供 ",[552,27218,26998],{},"（ctx 帶 ",[552,27221,17316],{},[552,27223,27224],{},"editorId",[552,27226,27227],{},"target","）即可換成自訂 UI。連結編輯已內建於 LinkTips bubble 的 inline 輸入框。",[1565,27230,27231,27234,27235,27238,27239,27242,27243,27219,27246,27249,27250,27252,27253,717],{},[1139,27232,27233],{},"不允許的連結網址","：網址被 Link extension 的 ",[552,27236,27237],{},"isAllowedUri"," 拒絕（如 ",[552,27240,27241],{},"javascript:","）時不會套用，LinkTips 輸入框還原為原網址；提供 ",[552,27244,27245],{},"config.toolbarOptions.onInvalidLink",[552,27247,27248],{},"url","，LinkTips 觸發時 ",[552,27251,27227],{}," 為輸入框）即可顯示自訂提示。選取範圍本身不能加連結（程式碼區塊、行內程式碼）時同樣不會套用，但不屬網址問題，不會呼叫 ",[552,27254,27255],{},"onInvalidLink",[1565,27257,27258,27261,27262,27265,27266,27269,27270,717,27273,27276,27277,14869,27280,14869,27283,27286],{},[1139,27259,27260],{},"色盤","：TextColor \u002F Highlight 內建 ",[552,27263,27264],{},"@admin\u002Fcolor-picker"," 色票（",[552,27267,27268],{},"toolbarOptions.textColorSwatches \u002F highlightSwatches"," 自訂調色盤）；要自由取色提供 ",[552,27271,27272],{},"requestColor",[552,27274,27275],{},"value: ''"," 為清除項；完全透明之色票（",[552,27278,27279],{},"transparent",[552,27281,27282],{},"#0000",[552,27284,27285],{},"rgba(…, 0)"," 等）於浮層中會加上外框以便辨識。",[1565,27288,27289,2470,27292,27295,27296,27299],{},[1139,27290,27291],{},"工具列版面",[552,27293,27294],{},"toolbar: false"," 隱藏（extensions 照載）；",[552,27297,27298],{},"toolbarTarget"," 可把工具列 Teleport 到任意容器（多編輯器共用一條、頂部固定列、浮動容器）。",[1565,27301,27302,2470,27305,27308,27309,27312,27313,27315,27316,27318],{},[1139,27303,27304],{},"事件",[552,27306,27307],{},"create \u002F update \u002F selectionUpdate \u002F focus \u002F blur \u002F destroy \u002F contentError \u002F keydown"," 透傳，payload 統一帶 ",[552,27310,27311],{},"{ editor, editorId }","——多編輯器頁面以 ",[552,27314,27224],{},"（或 ",[552,27317,7309],{}," prop）辨識來源。",[1565,27320,27321,27324,27325,1127,27328,27331,27332,1127,27335,27338],{},[1139,27322,27323],{},"圖片 \u002F 影片上傳","：貼上與拖放檔案會觸發 ",[552,27326,27327],{},"extensionsConfig.Image.pasteAndDropHandle",[552,27329,27330],{},"extensionsConfig.Video.pasteAndDropHandle","，上傳邏輯由 consumer 實作後回呼 ",[552,27333,27334],{},"afterImageUpload",[552,27336,27337],{},"afterVideoUpload","。未實作時僅於 console 提示。",[1565,27340,27341,27344,27345,27347,27348,27351,27352,717],{},[1139,27342,27343],{},"Mention \u002F HashTag","：無按鈕功能，經 ",[552,27346,27164],{}," 啟用並提供 suggestion ",[552,27349,27350],{},"onRender"," 實作。UndoRedo \u002F Code 同理——未宣告按鈕時要保留能力就 ",[552,27353,27354],{},"include",[1565,27356,27357,27360,27361,27363,27364,27366,27367,1127,27370,27373],{},[1139,27358,27359],{},"v-model 型別","：綁 ",[552,27362,3265],{}," 視為 HTML、綁物件視為 JSON（tiptap ",[552,27365,26044],{},"）。不掛編輯器的轉換用 ",[552,27368,27369],{},"editorJson2Html",[552,27371,27372],{},"editorHtml2Json","（瀏覽器環境限定）。",[1565,27375,27376,27379,27380,27383,27384,1617,27386,27389,27390,27392],{},[1139,27377,27378],{},"外部寫入不觸發事件","：父層透過 v-model 寫入內容、或切換 ",[552,27381,27382],{},"editable"," 時，不會 emit ",[552,27385,7302],{},[552,27387,27388],{},"update","——父層拿到的值維持原樣，不會被換成編輯器正規化後的 HTML，表單載入後也不會被判為已修改。只有使用者編輯（含透過 ",[552,27391,17316],{}," 實例執行之 command）才會觸發；字數統計則一律隨內容更新。",[1565,27394,27395,2470,27398,27401,27402,27405,27406,27408],{},[1139,27396,27397],{},"exclude 一律生效",[552,27399,27400],{},"exclude"," 對任何 extension（含 schema 必備之 Document \u002F Text \u002F Paragraph）都會生效、不自動保留。排除後以 ",[552,27403,27404],{},"extraExtensions"," 或 Custom ",[552,27407,17809],{}," 提供同名 extension 即視為替換、不警告；未替換且有依賴者受影響時 console 警告；schema 必備項於最終清單缺席時給最強警告（編輯器將無法初始化）。toolbar 按鈕依 extension 啟用狀態自動隱藏。",[540,27410,989],{"id":989},[991,27412],{"component":27180},[994,27414,27415],{},"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":550,"searchDepth":605,"depth":605,"links":27417},[27418,27419,27420,27427,27430,27431],{"id":507,"depth":595,"text":507},{"id":687,"depth":595,"text":687},{"id":694,"depth":595,"text":694,"children":27421},[27422,27423,27424,27425,27426],{"id":26950,"depth":605,"text":26951},{"id":26974,"depth":605,"text":26974},{"id":26989,"depth":605,"text":26990},{"id":27014,"depth":605,"text":27015},{"id":27153,"depth":605,"text":27154},{"id":723,"depth":595,"text":724,"children":27428},[27429],{"id":27177,"depth":605,"text":27177},{"id":1560,"depth":595,"text":1560},{"id":989,"depth":595,"text":989},"config 驅動的 all-in-one 富文本編輯器，傳入設定即得完整編輯器，無需組裝子元件。",{"doc":27434},"https:\u002F\u002Ftiptap.dev\u002Fdocs\u002Feditor\u002Fgetting-started\u002Foverview",{},{"title":200,"description":27432},"2a0GBbRurfSOZinIqDFxpWFIgDiALABDybtQVSQZoNY",{"left":523,"top":523,"width":524,"height":524,"rotate":523,"vFlip":18,"hFlip":18,"body":27439},"\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":27441},"\u003Cpath fill=\"none\" stroke=\"currentColor\" stroke-linecap=\"round\" stroke-linejoin=\"round\" stroke-width=\"2\" d=\"M5 12h14m-7-7l7 7l-7 7\"\u002F>",{"left":523,"top":523,"width":524,"height":524,"rotate":523,"vFlip":18,"hFlip":18,"body":27443},"\u003Cpath fill=\"none\" stroke=\"currentColor\" stroke-linecap=\"round\" stroke-linejoin=\"round\" stroke-width=\"2\" d=\"M12 5v16m8.001-2A2 2 0 0 0 22 17V5a2 2 0 0 0-1.999-2L16 3.002A5 5 0 0 0 12 5a5 5 0 0 0-4-2H4a2 2 0 0 0-2 2v12a2 2 0 0 0 1.999 2H8a5 5 0 0 1 4 2a5 5 0 0 1 4-2z\"\u002F>",{"left":523,"top":523,"width":524,"height":524,"rotate":523,"vFlip":18,"hFlip":18,"body":27445},"\u003Cg fill=\"none\" stroke=\"currentColor\" stroke-linecap=\"round\" stroke-linejoin=\"round\" stroke-width=\"2\">\u003Cpath d=\"M11 21.73a2 2 0 0 0 2 0l7-4A2 2 0 0 0 21 16V8a2 2 0 0 0-1-1.73l-7-4a2 2 0 0 0-2 0l-7 4A2 2 0 0 0 3 8v8a2 2 0 0 0 1 1.73zm1 .27V12\"\u002F>\u003Cpath d=\"M3.29 7L12 12l8.71-5M7.5 4.27l9 5.15\"\u002F>\u003C\u002Fg>",{"left":523,"top":523,"width":524,"height":524,"rotate":523,"vFlip":18,"hFlip":18,"body":27447},"\u003Cpath fill=\"none\" stroke=\"currentColor\" stroke-linecap=\"round\" stroke-linejoin=\"round\" stroke-width=\"2\" d=\"M12 20h-1a2 2 0 0 1-2-2a2 2 0 0 1-2 2H6m7-12h7a2 2 0 0 1 2 2v4a2 2 0 0 1-2 2h-7m-8 0H4a2 2 0 0 1-2-2v-4a2 2 0 0 1 2-2h1m1-4h1a2 2 0 0 1 2 2a2 2 0 0 1 2-2h1M9 6v12\"\u002F>",{"left":523,"top":523,"width":524,"height":524,"rotate":523,"vFlip":18,"hFlip":18,"body":27449},"\u003Cpath fill=\"none\" stroke=\"currentColor\" stroke-linecap=\"round\" stroke-linejoin=\"round\" stroke-width=\"2\" d=\"m21.64 3.64l-1.28-1.28a1.21 1.21 0 0 0-1.72 0L2.36 18.64a1.21 1.21 0 0 0 0 1.72l1.28 1.28a1.2 1.2 0 0 0 1.72 0L21.64 5.36a1.2 1.2 0 0 0 0-1.72M14 7l3 3M5 6v4m14 4v4M10 2v2M7 8H3m18 8h-4M11 3H9\"\u002F>",1793254065221]