/* AUTO-GENERATED by build-site.ps1 + tools/precompute.mjs - do not edit by hand */ window.AA_DATA = {"meta":{"generated":"2026-09-20 02:57","lib":"aurora-admin","total":79,"core":10,"extension":69,"brand":"#2F54EB","version":"1.4.1","families":13,"familyMembers":44,"note":"generated by build-site.ps1 from components/index.json + frameworks/ + specs + contracts + tokens + families"},"categories":[{"key":"general","count":4},{"key":"navigation","count":10},{"key":"input","count":24},{"key":"display","count":20},{"key":"feedback","count":15},{"key":"system","count":6}],"tokens":[{"comment":"品牌主色:主按钮、选中态、链接","name":"au-color-brand","value":"#2F54EB"},{"comment":"品牌主色悬停","name":"au-color-brand-hover","value":"#1D39C4"},{"comment":"品牌主色点击","name":"au-color-brand-active","value":"#10239E"},{"comment":"品牌浅色背景:选中背景、标签背景、表格悬停","name":"au-color-brand-bg","value":"#F0F5FF"},{"comment":"辅助色","name":"au-color-secondary","value":"#13C2C2"},{"comment":"页面背景","name":"au-color-page-bg","value":"#F5F7FA"},{"comment":"卡片背景","name":"au-color-card-bg","value":"#FFFFFF"},{"comment":"表头背景","name":"au-color-table-header-bg","value":"#FAFAFA"},{"comment":"禁用背景(按钮禁用态)","name":"au-color-disabled-bg","value":"#F5F5F5"},{"comment":"标签绿底","name":"au-color-tag-green-bg","value":"#F6FFED"},{"comment":"Tooltip 深色背景","name":"au-color-tooltip-bg","value":"#1F2329"},{"comment":"标题文字 · 15.4:1","name":"au-color-text-title","value":"#1F2329"},{"comment":"正文文字 · 14.0:1","name":"au-color-text-body","value":"#262626"},{"comment":"次要文字 · 5.10:1(原 #8C8C8C 仅 3.36:1)","name":"au-color-text-secondary","value":"#6E6E6E"},{"comment":"三级文字/描述 · 7.00:1(规范未定义,实现补齐)","name":"au-color-text-tertiary","value":"#595959"},{"comment":"占位文字 · 4.54:1(原 #BFBFBF 仅 1.84:1)","name":"au-color-text-placeholder","value":"#767676"},{"comment":"反色文字(品牌色背景上的白字)","name":"au-color-text-inverse","value":"#FFFFFF"},{"comment":"禁用态文字 · WCAG 1.4.3 对禁用控件豁免(规范定义于组件1/2.txt)","name":"au-color-text-disabled","value":"#BFBFBF"},{"comment":"分割线/边框","name":"au-color-border","value":"#E8ECF1"},{"comment":"更强的实线边框(规范未定义,实现补齐)","name":"au-color-border-strong","value":"#F0F0F0"},{"comment":"","name":"au-color-icon-inactive","value":"#8F8F8F"},{"comment":"成功色 · 5.18:1(原 #52C41A 仅 2.27:1)","name":"au-color-success","value":"#2E7D0A"},{"comment":"警告色 · 5.87:1(原 #FAAD14 仅 1.90:1)","name":"au-color-warning","value":"#8C5A00"},{"comment":"错误色 · 5.57:1(原 #F5222D 仅 4.08:1)","name":"au-color-error","value":"#CF1322"},{"comment":"信息色 · 5.00:1(原 #1890FF 仅 3.24:1)","name":"au-color-info","value":"#096DD9"},{"comment":"弹窗遮罩","name":"au-color-mask","value":"rgba(0, 0, 0, 0.45)"},{"comment":"图片遮罩","name":"au-color-mask-strong","value":"rgba(0, 0, 0, 0.85)"},{"comment":"输入框聚焦外发光","name":"au-color-focus-ring","value":"rgba(47, 84, 235, 0.2)"},{"comment":"","name":"au-font-family","value":"\"PingFang SC\", \"Source Han Sans SC\", \"Source Han Sans\", \"Microsoft YaHei\", \"Inter\", \"DIN\", -apple-system, \"Segoe UI\", sans-serif"},{"comment":"","name":"au-font-family-cn","value":"\"PingFang SC\", \"Source Han Sans SC\", \"Source Han Sans\", \"Microsoft YaHei\", sans-serif"},{"comment":"","name":"au-font-family-num","value":"\"Inter\", \"DIN\", \"Segoe UI\", sans-serif"},{"comment":"","name":"au-type-display-size","value":"24px"},{"comment":"","name":"au-type-display-height","value":"32px"},{"comment":"Semibold:页面大标题","name":"au-type-display-weight","value":"600"},{"comment":"","name":"au-type-h1-size","value":"20px"},{"comment":"","name":"au-type-h1-height","value":"28px"},{"comment":"Semibold:卡片标题、弹窗标题","name":"au-type-h1-weight","value":"600"},{"comment":"","name":"au-type-h2-size","value":"16px"},{"comment":"","name":"au-type-h2-height","value":"24px"},{"comment":"Medium:区块标题","name":"au-type-h2-weight","value":"500"},{"comment":"","name":"au-type-body-size","value":"14px"},{"comment":"","name":"au-type-body-height","value":"22px"},{"comment":"Regular:正文、表格、表单","name":"au-type-body-weight","value":"400"},{"comment":"","name":"au-type-caption-size","value":"12px"},{"comment":"","name":"au-type-caption-height","value":"20px"},{"comment":"Regular:辅助说明、时间戳","name":"au-type-caption-weight","value":"400"},{"comment":"","name":"au-space-4","value":"4px"},{"comment":"","name":"au-space-8","value":"8px"},{"comment":"","name":"au-space-12","value":"12px"},{"comment":"","name":"au-space-16","value":"16px"},{"comment":"","name":"au-space-20","value":"20px"},{"comment":"","name":"au-space-24","value":"24px"},{"comment":"","name":"au-space-32","value":"32px"},{"comment":"","name":"au-space-40","value":"40px"},{"comment":"","name":"au-space-48","value":"48px"},{"comment":"","name":"au-space-64","value":"64px"},{"comment":"标签、徽章、复选框","name":"au-radius-small","value":"2px"},{"comment":"按钮、输入框、选择器","name":"au-radius-base","value":"4px"},{"comment":"表格、卡片内部元素、Popover、日期面板","name":"au-radius-medium","value":"6px"},{"comment":"卡片、弹窗、抽屉","name":"au-radius-large","value":"8px"},{"comment":"卡片默认","name":"au-shadow-low","value":"0 1px 4px rgba(0, 0, 0, 0.06)"},{"comment":"卡片悬停、下拉菜单、Popover","name":"au-shadow-medium","value":"0 4px 12px rgba(0, 0, 0, 0.08)"},{"comment":"弹窗、抽屉","name":"au-shadow-high","value":"0 8px 24px rgba(0, 0, 0, 0.12)"},{"comment":"","name":"au-duration-fast","value":"0.2s"},{"comment":"","name":"au-duration-base","value":"0.3s"},{"comment":"","name":"au-duration-slow","value":"0.4s"},{"comment":"","name":"au-ease-standard","value":"ease"},{"comment":"","name":"au-ease-out","value":"ease-out"},{"comment":"","name":"au-ease-in-out","value":"ease-in-out"},{"comment":"","name":"au-icon-size-16","value":"16px"},{"comment":"","name":"au-icon-size-20","value":"20px"},{"comment":"","name":"au-icon-size-24","value":"24px"},{"comment":"","name":"au-control-height-small","value":"24px"},{"comment":"","name":"au-control-height-default","value":"32px"},{"comment":"","name":"au-control-height-large","value":"40px"},{"comment":"","name":"au-color-page-bg","value":"#14161C"},{"comment":"","name":"au-color-card-bg","value":"#1C1F26"},{"comment":"","name":"au-color-table-header-bg","value":"#22262E"},{"comment":"","name":"au-color-disabled-bg","value":"#262A33"},{"comment":"","name":"au-color-tag-green-bg","value":"#16261A"},{"comment":"文字四层","name":"au-color-tooltip-bg","value":"#E8EAED"},{"comment":"","name":"au-color-text-title","value":"#E8EAED"},{"comment":"","name":"au-color-text-body","value":"#C9CDD4"},{"comment":"","name":"au-color-text-secondary","value":"#9CA3AF"},{"comment":"","name":"au-color-text-tertiary","value":"#B6BCC7"},{"comment":"","name":"au-color-text-placeholder","value":"#9CA3AF"},{"comment":"","name":"au-color-text-inverse","value":"#14161C"},{"comment":"边框","name":"au-color-text-disabled","value":"#6B7280"},{"comment":"","name":"au-color-border","value":"#2A2F38"},{"comment":"","name":"au-color-border-strong","value":"#363B45"},{"comment":"品牌色向白提亮(深底对比度不足,原 #2F54EB 卡片底仅 ~3.9:1)","name":"au-color-icon-inactive","value":"#9CA3AF"},{"comment":"","name":"au-color-brand","value":"#6B8CFF"},{"comment":"","name":"au-color-brand-hover","value":"#84A0FF"},{"comment":"","name":"au-color-brand-active","value":"#5570D8"},{"comment":"","name":"au-color-brand-bg","value":"rgba(107, 140, 255, 0.18)"},{"comment":"语义色提亮","name":"au-color-secondary","value":"#3FD4D4"},{"comment":"","name":"au-color-success","value":"#4CAF50"},{"comment":"","name":"au-color-warning","value":"#E5A300"},{"comment":"","name":"au-color-error","value":"#F26D6D"},{"comment":"遮罩与阴影","name":"au-color-info","value":"#4C9AFF"},{"comment":"","name":"au-color-mask","value":"rgba(0, 0, 0, 0.6)"},{"comment":"","name":"au-color-mask-strong","value":"rgba(0, 0, 0, 0.75)"},{"comment":"","name":"au-color-focus-ring","value":"rgba(107, 140, 255, 0.5)"},{"comment":"","name":"au-shadow-low","value":"0 1px 4px rgba(0, 0, 0, 0.5)"},{"comment":"","name":"au-shadow-medium","value":"0 4px 12px rgba(0, 0, 0, 0.55)"},{"comment":"","name":"au-shadow-high","value":"0 8px 24px rgba(0, 0, 0, 0.65)"}],"families":{"schemaVersion":1,"sourceKind":"family-model","generatedBy":"tools/gen-families.mjs","note":"由 tools/lib/family-model.mjs 生成,勿手改。族把「同源组件」表达为「1 个基座 + N 个参数取值」;组件身份(slug)保持不变,data.json 仍完整输出 79 个组件。","totalFamilies":13,"totalMembers":44,"implementedFamilies":["nav-menu"],"families":[{"id":"nav-menu","label":"导航菜单","base":"sidemenu","mergeBasis":"topmenu 与 sidemenu 的 semanticTypeCandidates 分别为 menu|topnav 与 menu|sidebar,同一 menu 语义的两个 direction 取值;mixednavigation 的 anatomy 即 [top/side/sync/memory],本身就是前两者的参数化组合。sidemenu 实现内已存在通用 menu 词汇(aa-menu-item/icon/label/badge/arrow/children/pop)。","paramSurface":[{"name":"direction","type":"enum","values":["top","side","mixed"],"default":"side","desc":"导航方向,决定一级菜单的排布"},{"name":"collapsed","type":"bool","default":false,"desc":"侧边模式折叠为仅图标,悬停弹出子级"},{"name":"level","type":"enum","values":["1","2"],"default":"2","desc":"最大层级;mixed 固定 2 级(顶一级 + 侧二级)"},{"name":"badge","type":"bool","default":false,"desc":"菜单项徽章"},{"name":"indicator","type":"enum","values":["none","top","left"],"default":"left","desc":"选中指示条;top 模式默认 top,side 模式默认 left"}],"members":[{"slug":"sidemenu","role":"base","params":{"direction":"side","indicator":"left","collapsed":false},"frameworksPrefix":"SideMenu"},{"slug":"topmenu","role":"variant","params":{"direction":"top","indicator":"top","collapsed":false},"frameworksPrefix":"TopMenu"},{"slug":"mixednavigation","role":"variant","params":{"direction":"mixed","level":"2","collapsed":false},"frameworksPrefix":"MixedNavigation"}],"basePrefix":"SideMenu","memberCount":3},{"id":"table","label":"数据表格","base":"table","mergeBasis":"六个成员的 semanticTypeCandidates 首项均为 table;每个变体的 anatomy 都是 Table 骨架(header/row/cell/selectedRow)加一个能力维度。treetable 额外带 indent/arrow/parentRow/childRow,是 table 的超集而非并列组件。","paramSurface":[{"name":"expandable","type":"bool","default":false,"desc":"行展开;anatomy 增 icon/content/state"},{"name":"fixedTarget","type":"enum","values":["none","left","right","header"],"default":"none","desc":"固定列 / 固定表头"},{"name":"mergeAxis","type":"enum","values":["none","vertical","horizontal"],"default":"none","desc":"单元格合并轴向"},{"name":"summary","type":"enum","values":["none","top","bottom"],"default":"none","desc":"统计行位置"},{"name":"treeMode","type":"bool","default":false,"desc":"树形层级(缩进 16px/级 + 展开箭头)"}],"members":[{"slug":"table","role":"base","params":{},"frameworksPrefix":"Table"},{"slug":"expandabletable","role":"variant","params":{"expandable":true},"frameworksPrefix":"ExpandableTable"},{"slug":"fixedcolumntable","role":"variant","params":{"fixedTarget":"left"},"frameworksPrefix":"FixedColumnTable"},{"slug":"mergedcelltable","role":"variant","params":{"mergeAxis":"vertical"},"frameworksPrefix":"MergedCellTable"},{"slug":"summaryrowtable","role":"variant","params":{"summary":"bottom"},"frameworksPrefix":"SummaryRowTable"},{"slug":"treetable","role":"variant","params":{"treeMode":true},"frameworksPrefix":"TreeTable"}],"basePrefix":"Table","memberCount":6},{"id":"masked-input","label":"掩码输入","base":"input","mergeBasis":"七个成员的 semanticTypeCandidates 第二项均为 input;anatomy 均为 input 加 format / validate / segment 的子集。差异只是掩码规则与校验规则不同,结构完全同源。","paramSurface":[{"name":"mask","type":"string","default":"","desc":"掩码模式(每 4 位空格、6/8/4 分段、7/8 位车牌等)"},{"name":"length","type":"int","default":0,"desc":"期望长度;0 表示不限"},{"name":"segment","type":"list","default":[],"desc":"分段长度数组,如 [6,8,4]"},{"name":"validate","type":"enum","values":["none","luhn","checksum","regex"],"default":"none","desc":"校验规则"},{"name":"scan","type":"bool","default":false,"desc":"扫码 / 识别入口"},{"name":"autoFocusNext","type":"bool","default":false,"desc":"输入满格自动跳下一格"},{"name":"masked","type":"bool","default":false,"desc":"回显脱敏(密码)"}],"members":[{"slug":"input","role":"base","params":{},"frameworksPrefix":"Input"},{"slug":"codeinput","role":"variant","params":{"length":6,"autoFocusNext":true,"scan":false},"frameworksPrefix":"CodeInput"},{"slug":"passwordinput","role":"variant","params":{"masked":true},"frameworksPrefix":"PasswordInput"},{"slug":"phoneinput","role":"variant","params":{"mask":"3-4-4","length":11},"frameworksPrefix":"PhoneInput"},{"slug":"idcardinput","role":"variant","params":{"segment":[6,8,4],"length":18,"scan":true},"frameworksPrefix":"IDCardInput"},{"slug":"bankcardinput","role":"variant","params":{"mask":"4-4-4-4","validate":"luhn","scan":true},"frameworksPrefix":"BankCardInput"},{"slug":"plateinput","role":"variant","params":{"length":7,"validate":"regex"},"frameworksPrefix":"PlateInput"}],"basePrefix":"Input","memberCount":7},{"id":"modal-shell","label":"对话弹窗","base":"modal","mergeBasis":"alertmodal 与 confirmmodal 的 doNotInvent 原文写着「弹窗尺寸档位(见 Modal 契约)」——规范自身声明从属。四个变体的 anatomy 均为 mask/container/title/content/footer 的子集或替换。popconfirm(240px 无遮罩面板)与 bottomsheet(底部滑出)不属本族:archetype 不同。","paramSurface":[{"name":"size","type":"enum","values":["sm","md","lg"],"default":"md","desc":"宽度档位"},{"name":"tone","type":"enum","values":["none","success","error","warning","info"],"default":"none","desc":"语义色 + 图标"},{"name":"footer","type":"enum","values":["none","confirm","confirm-cancel"],"default":"confirm-cancel","desc":"底部操作"},{"name":"columns","type":"enum","values":["1","2"],"default":"1","desc":"表单类弹窗的列数"},{"name":"fullscreen","type":"bool","default":false,"desc":"全屏铺满"}],"members":[{"slug":"modal","role":"base","params":{},"frameworksPrefix":"Modal"},{"slug":"alertmodal","role":"variant","params":{"tone":"info","footer":"confirm"},"frameworksPrefix":"AlertModal"},{"slug":"confirmmodal","role":"variant","params":{"footer":"confirm-cancel"},"frameworksPrefix":"ConfirmModal"},{"slug":"formmodal","role":"variant","params":{"columns":"2","footer":"confirm-cancel"},"frameworksPrefix":"FormModal"},{"slug":"fullscreenmodal","role":"variant","params":{"fullscreen":true},"frameworksPrefix":"FullScreenModal"}],"basePrefix":"Modal","memberCount":5},{"id":"preference-switcher","label":"偏好切换器","base":"themeswitcher","mergeBasis":"三个成员的 anatomy 全部包含 persist,structurePatterns 全部写着持久化到 localStorage,semanticTypeCandidates 末项均为 preference,变体维度均为同一形态的 3 档选项。三者完全同构,仅选项内容不同。","paramSurface":[{"name":"options","type":"list","default":[],"desc":"选项数组 [{value,label,preview?}]"},{"name":"selected","type":"string","default":"","desc":"当前选中值"},{"name":"persistKey","type":"string","default":"","desc":"localStorage 键名;空则持久化到内存"},{"name":"applyScope","type":"enum","values":["global","local"],"default":"global","desc":"生效范围:全站令牌 / 局部预览"},{"name":"extra","type":"enum","values":["none","brand-palette","demo-list"],"default":"none","desc":"附加区块(品牌色板 / 示例列表)"}],"members":[{"slug":"themeswitcher","role":"base","params":{"extra":"brand-palette","applyScope":"global"},"frameworksPrefix":"ThemeSwitcher"},{"slug":"layoutswitcher","role":"variant","params":{"extra":"none","applyScope":"global"},"frameworksPrefix":"LayoutSwitcher"},{"slug":"densityswitcher","role":"variant","params":{"extra":"demo-list","applyScope":"global"},"frameworksPrefix":"DensitySwitcher"}],"basePrefix":"ThemeSwitcher","memberCount":3},{"id":"card-shell","label":"卡片容器","base":"card","mergeBasis":"四个成员的 semanticTypeCandidates 均含 card 或 panel,anatomy 均为 card 骨架(style/padding/section)加各自填充区。本轮不合并实现:employeecard 有独立的字段面(status/contact),合并会污染 card 参数面,仅登记族关系。","paramSurface":[{"name":"style","type":"enum","values":["plain","outlined"],"default":"plain","desc":"描边 / 阴影"},{"name":"padding","type":"enum","values":["md","lg"],"default":"md","desc":"内边距档位"},{"name":"sections","type":"list","default":[],"desc":"区块序列:header/body/footer/media"},{"name":"actions","type":"list","default":[],"desc":"操作区按钮"},{"name":"layout","type":"enum","values":["vertical","horizontal"],"default":"vertical","desc":"内容排布方向"}],"members":[{"slug":"card","role":"base","params":{},"frameworksPrefix":"Card"},{"slug":"dashboardcard","role":"variant","params":{"layout":"horizontal"},"frameworksPrefix":"DashboardCard"},{"slug":"employeecard","role":"variant","params":{"sections":["media","body"]},"frameworksPrefix":"EmployeeCard"},{"slug":"chartpanel","role":"variant","params":{"sections":["header","body"]},"frameworksPrefix":"ChartPanel"}],"mergeStatus":"registered-only","basePrefix":"Card","memberCount":4},{"id":"feedback-page","label":"结果与异常页","base":"resultvariants","mergeBasis":"三个成员的 semanticTypeCandidates 分别为 result|feedback-page、exception|error-page、empty|placeholder,均为「占满内容区的状态说明 + 插画 + 操作」。resultvariants.status[4] 与 exceptionvariants.code[4] 同构。","paramSurface":[{"name":"status","type":"enum","values":["success","error","warning","info","empty"],"default":"info","desc":"状态语义"},{"name":"illustration","type":"enum","values":["none","icon","image"],"default":"icon","desc":"插画形态"},{"name":"extra","type":"list","default":[],"desc":"底部操作区"}],"members":[{"slug":"resultvariants","role":"base","params":{},"frameworksPrefix":"ResultVariants"},{"slug":"exceptionvariants","role":"variant","params":{"status":"error"},"frameworksPrefix":"ExceptionVariants"},{"slug":"emptypro","role":"variant","params":{"status":"empty"},"frameworksPrefix":"EmptyPro"}],"basePrefix":"ResultVariants","memberCount":3},{"id":"loading-state","label":"加载态","base":"loadingoverlay","mergeBasis":"三个成员的 semanticTypeCandidates 分别为 overlay|loading、skeleton|placeholder、progress|indicator,是同一语义(加载中)的三种承载形态,共享 coverage / status / showText 三要素。","paramSurface":[{"name":"shape","type":"enum","values":["overlay","block","bar"],"default":"overlay","desc":"承载形态:遮罩 / 占位块 / 进度条"},{"name":"status","type":"enum","values":["active","success","exception"],"default":"active","desc":"状态"},{"name":"coverage","type":"enum","values":["full","local"],"default":"local","desc":"覆盖范围"},{"name":"showText","type":"bool","default":false,"desc":"显示文案 / 百分比"}],"members":[{"slug":"loadingoverlay","role":"base","params":{"shape":"overlay"},"frameworksPrefix":"LoadingOverlay"},{"slug":"skeletonpro","role":"variant","params":{"shape":"block"},"frameworksPrefix":"SkeletonPro"},{"slug":"progressvariants","role":"variant","params":{"shape":"bar"},"frameworksPrefix":"ProgressVariants"}],"basePrefix":"LoadingOverlay","memberCount":3},{"id":"steps","label":"步骤","base":"steps","mergeBasis":"steps 与 steplist 的 semanticTypeCandidates 完全相同(均为 steps|wizard),变体维度同为 orientation[2] + state[3]。唯一差异是节点形态(横向步骤条 / 纵向列表)。","paramSurface":[{"name":"nodeStyle","type":"enum","values":["bar","list"],"default":"bar","desc":"步骤条 / 步骤列表"},{"name":"orientation","type":"enum","values":["horizontal","vertical"],"default":"horizontal","desc":"排布方向"},{"name":"editable","type":"bool","default":false,"desc":"可点击回退"}],"members":[{"slug":"steps","role":"base","params":{"nodeStyle":"bar"},"frameworksPrefix":"Steps"},{"slug":"steplist","role":"variant","params":{"nodeStyle":"list","orientation":"vertical"},"frameworksPrefix":"StepList"}],"basePrefix":"Steps","memberCount":2},{"id":"tabs","label":"标签页","base":"tabs","mergeBasis":"tabs 的 semanticTypeCandidates 为 tabs|tabnav,enhancedtabnav 为 tabs|browser-tabs;enhancedtabnav 的变体维度 state[4]+feature[2] 是 tabs 的 state[4] 超集 —— 增强项即参数。","paramSurface":[{"name":"type","type":"enum","values":["line","card"],"default":"line","desc":"标签形态"},{"name":"draggable","type":"bool","default":false,"desc":"拖拽排序"},{"name":"contextMenu","type":"bool","default":false,"desc":"右键菜单"},{"name":"unsavedMark","type":"bool","default":false,"desc":"未保存标记"}],"members":[{"slug":"tabs","role":"base","params":{},"frameworksPrefix":"Tabs"},{"slug":"enhancedtabnav","role":"variant","params":{"draggable":true,"contextMenu":true,"unsavedMark":true},"frameworksPrefix":"EnhancedTabNav"}],"basePrefix":"Tabs","memberCount":2},{"id":"notice","label":"全局轻提示","base":"messagepro","mergeBasis":"messagepro 为 message|toast、notificationpro 为 notification|notice,同属全局轻提示;差异只在承载形态(顶部条 / 卡片)与位置,type/action/duration 三要素共享。","paramSurface":[{"name":"placement","type":"enum","values":["top","top-right","bottom"],"default":"top","desc":"出现位置"},{"name":"type","type":"enum","values":["success","error","warning","info","loading"],"default":"info","desc":"语义类型"},{"name":"action","type":"bool","default":false,"desc":"操作按钮"},{"name":"duration","type":"int","default":3000,"desc":"自动关闭毫秒数;0 为不自动关闭"}],"members":[{"slug":"messagepro","role":"base","params":{"placement":"top"},"frameworksPrefix":"MessagePro"},{"slug":"notificationpro","role":"variant","params":{"placement":"top-right","action":true},"frameworksPrefix":"NotificationPro"}],"basePrefix":"MessagePro","memberCount":2},{"id":"selection-card","label":"选择卡片","base":"radiocard","mergeBasis":"radiocard(radio|card)与 checkboxcard(checkbox|card)的 anatomy 同为 card + 选中态 + 内嵌操作,变体维度均含 selection,差异仅为单选 / 多选语义。","paramSurface":[{"name":"mode","type":"enum","values":["single","multiple"],"default":"single","desc":"单选 / 多选"},{"name":"content","type":"enum","values":["text","rich"],"default":"text","desc":"内容形态"},{"name":"innerActions","type":"bool","default":false,"desc":"卡片内嵌操作区"}],"members":[{"slug":"radiocard","role":"base","params":{"mode":"single"},"frameworksPrefix":"RadioCard"},{"slug":"checkboxcard","role":"variant","params":{"mode":"multiple","innerActions":true},"frameworksPrefix":"CheckboxCard"}],"basePrefix":"RadioCard","memberCount":2},{"id":"combobox","label":"候选输入","base":"autocomplete","mergeBasis":"autocomplete(combobox|input)与 mention(mention|input)的 anatomy 均为 input + 候选面板 + 键盘选择,类名集合 Jaccard 0.448(全库最高组之一);差异仅为触发方式(连续输入 / 触发符)与插入行为。","paramSurface":[{"name":"trigger","type":"enum","values":["input","symbol"],"default":"input","desc":"触发方式:连续输入 / 触发符"},{"name":"suggestionSource","type":"enum","values":["static","async"],"default":"static","desc":"候选来源"},{"name":"itemRender","type":"enum","values":["plain","custom"],"default":"plain","desc":"候选项渲染"},{"name":"insert","type":"enum","values":["replace","token"],"default":"replace","desc":"选中后插入行为"}],"members":[{"slug":"autocomplete","role":"base","params":{"trigger":"input"},"frameworksPrefix":"AutoComplete"},{"slug":"mention","role":"variant","params":{"trigger":"symbol","insert":"token"},"frameworksPrefix":"Mention"}],"basePrefix":"AutoComplete","memberCount":2}]},"components":[{"slug":"button","name":"按钮 Button","tier":"core","confidence":"high","specBatch":1,"specFile":"组件1.txt","contractRef":"components/button.json","category":"general","family":null,"familyRole":null,"familyParams":null,"specSummary":"- 类型:主按钮、次按钮、文字按钮、链接按钮、危险按钮","files":{"html":"../frameworks/button.html","css":"../frameworks/Button.css","jsx":"../frameworks/Button.jsx","vue2":"../frameworks/Button.vue2.vue","vue3":"../frameworks/Button.vue3.vue"},"sizes":{"html":6053,"css":2138,"jsx":1586,"vue2":3232,"vue3":3122},"sources":{},"scenarios":["类型(默认尺寸)","尺寸(主按钮)","禁用态","加载态","带图标(内联 SVG 占位)"],"api":{"props":[{"name":"type","type":"String","def":"'default'","req":false,"desc":"—"},{"name":"loading","type":"Boolean","def":"false","req":false,"desc":"—"},{"name":"icon","type":"String","def":"''","req":false,"desc":"—"}],"emits":[{"name":"click","descZh":"组件交互触发事件","params":"(val: any) => void"}],"slots":[{"name":"default","descZh":"默认插槽(组件文本或主体内容)","custom":false}]},"sourcesRef":{"html":"sources/button/html.txt","css":"sources/button/css.txt","jsx":"sources/button/jsx.txt","vue2":"sources/button/vue2.txt","vue3":"sources/button/vue3.txt"},"hasContract":true},{"slug":"input","name":"输入框 Input","tier":"core","confidence":"high","specBatch":1,"specFile":"组件1.txt","contractRef":"components/input.json","category":"input","family":"masked-input","familyRole":"base","familyParams":{},"specSummary":"- 尺寸:Default(32px高)、Large(40px高)、Small(24px高)","files":{"html":"../frameworks/input.html","css":"../frameworks/Input.css","jsx":"../frameworks/Input.jsx","vue2":"../frameworks/Input.vue2.vue","vue3":"../frameworks/Input.vue3.vue"},"sizes":{"html":6182,"css":1817,"jsx":3920,"vue2":4594,"vue3":4619},"sources":{},"scenarios":["默认输入框","三种尺寸","错误态(含错误提示)","前后缀","清除按钮(clearable)","密码切换","禁用态"],"api":{"props":[{"name":"modelValue","type":"String | Number","def":"''","req":false,"desc":"—"},{"name":"size","type":"String","def":"'default'","req":false,"desc":"—"},{"name":"disabled","type":"Boolean","def":"false","req":false,"desc":"—"},{"name":"error","type":"Boolean","def":"false","req":false,"desc":"—"},{"name":"errorText","type":"String","def":"''","req":false,"desc":"—"},{"name":"clearable","type":"Boolean","def":"false","req":false,"desc":"—"}],"emits":[{"name":"update:modelValue","descZh":"双向绑定更新事件 (v-model)","params":"(val: any) => void"},{"name":"focus","descZh":"组件交互触发事件","params":"(val: any) => void"},{"name":"blur","descZh":"组件交互触发事件","params":"(val: any) => void"}],"slots":[{"name":"prefix","descZh":"","custom":true},{"name":"suffix","descZh":"","custom":true}]},"sourcesRef":{"html":"sources/input/html.txt","css":"sources/input/css.txt","jsx":"sources/input/jsx.txt","vue2":"sources/input/vue2.txt","vue3":"sources/input/vue3.txt"},"hasContract":true},{"slug":"select","name":"选择器 Select","tier":"core","confidence":"high","specBatch":1,"specFile":"组件1.txt","contractRef":"components/select.json","category":"input","family":null,"familyRole":null,"familyParams":null,"specSummary":"- 触发器样式同Input","files":{"html":"../frameworks/select.html","css":"../frameworks/Select.css","jsx":"../frameworks/Select.jsx","vue2":"../frameworks/Select.vue2.vue","vue3":"../frameworks/Select.vue3.vue"},"sizes":{"html":11682,"css":2954,"jsx":5803,"vue2":7153,"vue3":7205},"sources":{},"scenarios":["单选","多选","可搜索","分组","空态(无匹配选项)"],"api":{"props":[{"name":"modelValue","type":"String | Number | Array","def":"null","req":false,"desc":"—"},{"name":"options","type":"Array","def":"[]","req":false,"desc":"—"},{"name":"searchable","type":"Boolean","def":"false","req":false,"desc":"—"},{"name":"disabled","type":"Boolean","def":"false","req":false,"desc":"—"},{"name":"placeholder","type":"String","def":"'请选择'","req":false,"desc":"—"}],"emits":[{"name":"update:modelValue","descZh":"双向绑定更新事件 (v-model)","params":"(val: any) => void"},{"name":"change","descZh":"组件交互触发事件","params":"(val: any) => void"}],"slots":[]},"sourcesRef":{"html":"sources/select/html.txt","css":"sources/select/css.txt","jsx":"sources/select/jsx.txt","vue2":"sources/select/vue2.txt","vue3":"sources/select/vue3.txt"},"hasContract":true},{"slug":"table","name":"数据表格 Table","tier":"core","confidence":"high","specBatch":1,"specFile":"组件1.txt","contractRef":"components/table.json","category":"display","family":"table","familyRole":"base","familyParams":{},"specSummary":"- 表头:背景#FAFAFA,文字#262626,行高48px","files":{"html":"../frameworks/table.html","css":"../frameworks/Table.css","jsx":"../frameworks/Table.jsx","vue2":"../frameworks/Table.vue2.vue","vue3":"../frameworks/Table.vue3.vue"},"sizes":{"html":6838,"css":1898,"jsx":5568,"vue2":5981,"vue3":5887},"sources":{},"scenarios":[],"api":{"props":[{"name":"columns","type":"Array","def":"—","req":true,"desc":"—"},{"name":"rowKey","type":"String","def":"'id'","req":false,"desc":"—"},{"name":"selectable","type":"Boolean","def":"false","req":false,"desc":"—"},{"name":"selectedKeys","type":"Array","def":"[]","req":false,"desc":"—"},{"name":"emptyText","type":"String","def":"'暂无数据'","req":false,"desc":"—"}],"emits":[{"name":"update:selectedKeys","descZh":"双向绑定更新事件 (v-model)","params":"(val: any) => void"},{"name":"selection-change","descZh":"组件交互触发事件","params":"(val: any) => void"},{"name":"sort-change","descZh":"组件交互触发事件","params":"(val: any) => void"}],"slots":[{"name":"default","descZh":"默认插槽(组件文本或主体内容)","custom":false}]},"sourcesRef":{"html":"sources/table/html.txt","css":"sources/table/css.txt","jsx":"sources/table/jsx.txt","vue2":"sources/table/vue2.txt","vue3":"sources/table/vue3.txt"},"hasContract":true},{"slug":"card","name":"卡片 Card","tier":"core","confidence":"high","specBatch":1,"specFile":"组件1.txt","contractRef":"components/card.json","category":"general","family":"card-shell","familyRole":"base","familyParams":{},"specSummary":"- 圆角8px,边框1px #E8ECF1 或低阴影","files":{"html":"../frameworks/Card.html","css":"../frameworks/Card.css","jsx":"../frameworks/Card.jsx","vue2":"../frameworks/Card.vue2.vue","vue3":"../frameworks/Card.vue3.vue"},"sizes":{"html":3075,"css":780,"jsx":1337,"vue2":1732,"vue3":1714},"sources":{},"scenarios":[],"api":{"props":[{"name":"title","type":"String","def":"''","req":false,"desc":"—"},{"name":"bordered","type":"Boolean","def":"false","req":false,"desc":"—"},{"name":"shadowed","type":"Boolean","def":"false","req":false,"desc":"—"},{"name":"padding","type":"Number | String","def":"16","req":false,"desc":"16 | 24"}],"emits":[],"slots":[{"name":"title","descZh":"","custom":true},{"name":"extra","descZh":"","custom":true},{"name":"default","descZh":"默认插槽(组件文本或主体内容)","custom":false},{"name":"actions","descZh":"","custom":true}]},"sourcesRef":{"html":"sources/card/html.txt","css":"sources/card/css.txt","jsx":"sources/card/jsx.txt","vue2":"sources/card/vue2.txt","vue3":"sources/card/vue3.txt"},"hasContract":true},{"slug":"modal","name":"对话框 Modal","tier":"core","confidence":"high","specBatch":1,"specFile":"组件1.txt","contractRef":"components/modal.json","category":"feedback","family":"modal-shell","familyRole":"base","familyParams":{},"specSummary":"- 宽度480px(默认)/680px(大)/320px(小)","files":{"html":"../frameworks/modal.html","css":"../frameworks/Modal.css","jsx":"../frameworks/Modal.jsx","vue2":"../frameworks/Modal.vue2.vue","vue3":"../frameworks/Modal.vue3.vue"},"sizes":{"html":3677,"css":1466,"jsx":1849,"vue2":2706,"vue3":2645},"sources":{},"scenarios":[],"api":{"props":[{"name":"visible","type":"Boolean","def":"false","req":false,"desc":"—"},{"name":"title","type":"String","def":"''","req":false,"desc":"—"},{"name":"size","type":"String","def":"'default'","req":false,"desc":"—"},{"name":"maskClosable","type":"Boolean","def":"true","req":false,"desc":"—"},{"name":"hideFooter","type":"Boolean","def":"false","req":false,"desc":"—"},{"name":"cancelText","type":"String","def":"'取消'","req":false,"desc":"—"},{"name":"okText","type":"String","def":"'确定'","req":false,"desc":"—"}],"emits":[{"name":"update:visible","descZh":"双向绑定更新事件 (v-model)","params":"(val: any) => void"},{"name":"cancel","descZh":"组件交互触发事件","params":"(val: any) => void"},{"name":"ok","descZh":"组件交互触发事件","params":"(val: any) => void"}],"slots":[{"name":"title","descZh":"","custom":true},{"name":"default","descZh":"默认插槽(组件文本或主体内容)","custom":false},{"name":"footer","descZh":"","custom":true}]},"sourcesRef":{"html":"sources/modal/html.txt","css":"sources/modal/css.txt","jsx":"sources/modal/jsx.txt","vue2":"sources/modal/vue2.txt","vue3":"sources/modal/vue3.txt"},"hasContract":true},{"slug":"tag","name":"标签 Tag","tier":"core","confidence":"high","specBatch":1,"specFile":"组件1.txt","contractRef":"components/tag.json","category":"general","family":null,"familyRole":null,"familyParams":null,"specSummary":"- 圆角2px,高度22px,内边距左右8px","files":{"html":"../frameworks/Tag.html","css":"../frameworks/Tag.css","jsx":"../frameworks/Tag.jsx","vue2":"../frameworks/Tag.vue2.vue","vue3":"../frameworks/Tag.vue3.vue"},"sizes":{"html":2847,"css":1731,"jsx":1483,"vue2":2400,"vue3":2395},"sources":{},"scenarios":[],"api":{"props":[{"name":"color","type":"String","def":"''","req":false,"desc":"—"}],"emits":[{"name":"close","descZh":"组件交互触发事件","params":"(val: any) => void"}],"slots":[{"name":"default","descZh":"默认插槽(组件文本或主体内容)","custom":false}]},"sourcesRef":{"html":"sources/tag/html.txt","css":"sources/tag/css.txt","jsx":"sources/tag/jsx.txt","vue2":"sources/tag/vue2.txt","vue3":"sources/tag/vue3.txt"},"hasContract":true},{"slug":"tabs","name":"标签页 Tabs","tier":"core","confidence":"high","specBatch":1,"specFile":"组件1.txt","contractRef":"components/tabs.json","category":"navigation","family":"tabs","familyRole":"base","familyParams":{},"specSummary":"- 线型:底部2px品牌色指示条","files":{"html":"../frameworks/tabs.html","css":"../frameworks/Tabs.css","jsx":"../frameworks/Tabs.jsx","vue2":"../frameworks/Tabs.vue2.vue","vue3":"../frameworks/Tabs.vue3.vue"},"sizes":{"html":5204,"css":3594,"jsx":2284,"vue2":4236,"vue3":4280},"sources":{},"scenarios":[],"api":{"props":[{"name":"modelValue","type":"String | Number","def":"''","req":false,"desc":"—"},{"name":"addable","type":"Boolean","def":"false","req":false,"desc":"—"}],"emits":[{"name":"update:modelValue","descZh":"双向绑定更新事件 (v-model)","params":"(val: any) => void"},{"name":"change","descZh":"组件交互触发事件","params":"(val: any) => void"},{"name":"tab-remove","descZh":"组件交互触发事件","params":"(val: any) => void"},{"name":"tab-add","descZh":"组件交互触发事件","params":"(val: any) => void"}],"slots":[{"name":"default","descZh":"默认插槽(组件文本或主体内容)","custom":false}]},"sourcesRef":{"html":"sources/tabs/html.txt","css":"sources/tabs/css.txt","jsx":"sources/tabs/jsx.txt","vue2":"sources/tabs/vue2.txt","vue3":"sources/tabs/vue3.txt"},"hasContract":true},{"slug":"steps","name":"步骤条 Steps","tier":"core","confidence":"high","specBatch":1,"specFile":"组件1.txt","contractRef":"components/steps.json","category":"navigation","family":"steps","familyRole":"base","familyParams":{"nodeStyle":"bar"},"specSummary":"- 节点32px圆点,完成绿对勾,当前品牌色,未完成灰色","files":{"html":"../frameworks/steps.html","css":"../frameworks/Steps.css","jsx":"../frameworks/Steps.jsx","vue2":"../frameworks/Steps.vue2.vue","vue3":"../frameworks/Steps.vue3.vue"},"sizes":{"html":2421,"css":2157,"jsx":1439,"vue2":2868,"vue3":2850},"sources":{},"scenarios":[],"api":{"props":[{"name":"steps","type":"Array","def":"—","req":true,"desc":"—"}],"emits":[],"slots":[]},"sourcesRef":{"html":"sources/steps/html.txt","css":"sources/steps/css.txt","jsx":"sources/steps/jsx.txt","vue2":"sources/steps/vue2.txt","vue3":"sources/steps/vue3.txt"},"hasContract":true},{"slug":"breadcrumb","name":"面包屑 Breadcrumb","tier":"core","confidence":"high","specBatch":1,"specFile":"组件1.txt","contractRef":"components/breadcrumb.json","category":"navigation","family":null,"familyRole":null,"familyParams":null,"specSummary":"- 字号14px,层级用/分隔,次要文字#8C8C8C,当前页#262626","files":{"html":"../frameworks/Breadcrumb.html","css":"../frameworks/Breadcrumb.css","jsx":"../frameworks/Breadcrumb.jsx","vue2":"../frameworks/Breadcrumb.vue2.vue","vue3":"../frameworks/Breadcrumb.vue3.vue"},"sizes":{"html":1355,"css":625,"jsx":619,"vue2":559,"vue3":559},"sources":{},"scenarios":[],"api":{"props":[{"name":"items","type":"Array","def":"[]","req":false,"desc":"—"}],"emits":[{"name":"select","descZh":"组件交互触发事件","params":"(val: any) => void"}],"slots":[]},"sourcesRef":{"html":"sources/breadcrumb/html.txt","css":"sources/breadcrumb/css.txt","jsx":"sources/breadcrumb/jsx.txt","vue2":"sources/breadcrumb/vue2.txt","vue3":"sources/breadcrumb/vue3.txt"},"hasContract":true},{"slug":"tree","name":"树形控件 Tree","tier":"extension","confidence":"high","specBatch":2,"specFile":"组件2.txt","contractRef":"components/tree.json","category":"display","family":null,"familyRole":null,"familyParams":null,"specSummary":"- 用于层级数据展示:组织架构、菜单权限、分类目录","files":{"html":"../frameworks/tree.html","css":"../frameworks/Tree.css","jsx":"../frameworks/Tree.jsx","vue2":"../frameworks/Tree.vue2.vue","vue3":"../frameworks/Tree.vue3.vue"},"sizes":{"html":5393,"css":1085,"jsx":4278,"vue2":5030,"vue3":4751},"sources":{},"scenarios":[],"api":{"props":[{"name":"data","type":"Array","def":"—","req":true,"desc":"—"},{"name":"defaultExpandedKeys","type":"Array","def":"[]","req":false,"desc":"—"},{"name":"selectedKeys","type":"Array","def":"[]","req":false,"desc":"—"}],"emits":[{"name":"update:selectedKeys","descZh":"双向绑定更新事件 (v-model)","params":"(val: any) => void"},{"name":"select","descZh":"组件交互触发事件","params":"(val: any) => void"},{"name":"update:checkedKeys","descZh":"双向绑定更新事件 (v-model)","params":"(val: any) => void"},{"name":"check","descZh":"组件交互触发事件","params":"(val: any) => void"}],"slots":[]},"sourcesRef":{"html":"sources/tree/html.txt","css":"sources/tree/css.txt","jsx":"sources/tree/jsx.txt","vue2":"sources/tree/vue2.txt","vue3":"sources/tree/vue3.txt"},"hasContract":true},{"slug":"dropdown","name":"下拉菜单 Dropdown","tier":"extension","confidence":"high","specBatch":2,"specFile":"组件2.txt","contractRef":"components/dropdown.json","category":"navigation","family":null,"familyRole":null,"familyParams":null,"specSummary":"- 触发器为按钮或文字,点击展开菜单","files":{"html":"../frameworks/dropdown.html","css":"../frameworks/Dropdown.css","jsx":"../frameworks/Dropdown.jsx","vue2":"../frameworks/Dropdown.vue2.vue","vue3":"../frameworks/Dropdown.vue3.vue"},"sizes":{"html":3583,"css":1279,"jsx":2068,"vue2":2516,"vue3":2465},"sources":{},"scenarios":[],"api":{"props":[{"name":"items","type":"Array","def":"[]","req":false,"desc":"[{ key, label, danger, disabled, divider, icon }]"}],"emits":[{"name":"select","descZh":"组件交互触发事件","params":"(val: any) => void"}],"slots":[{"name":"default","descZh":"默认插槽(组件文本或主体内容)","custom":false}]},"sourcesRef":{"html":"sources/dropdown/html.txt","css":"sources/dropdown/css.txt","jsx":"sources/dropdown/jsx.txt","vue2":"sources/dropdown/vue2.txt","vue3":"sources/dropdown/vue3.txt"},"hasContract":true},{"slug":"popconfirm","name":"气泡确认框 Popconfirm","tier":"extension","confidence":"high","specBatch":2,"specFile":"组件2.txt","contractRef":"components/popconfirm.json","category":"feedback","family":null,"familyRole":null,"familyParams":null,"specSummary":"- 用于危险操作二次确认(删除、下线)","files":{"html":"../frameworks/popconfirm.html","css":"../frameworks/Popconfirm.css","jsx":"../frameworks/Popconfirm.jsx","vue2":"../frameworks/Popconfirm.vue2.vue","vue3":"../frameworks/Popconfirm.vue3.vue"},"sizes":{"html":3886,"css":1842,"jsx":2878,"vue2":3319,"vue3":4012},"sources":{},"scenarios":[],"api":{"props":[{"name":"modelValue","type":"Boolean","def":"undefined","req":false,"desc":"—"},{"name":"okText","type":"String","def":"'确定'","req":false,"desc":"—"},{"name":"cancelText","type":"String","def":"'取消'","req":false,"desc":"—"},{"name":"placement","type":"String","def":"'bottom'","req":false,"desc":"bottom | top"}],"emits":[{"name":"update:modelValue","descZh":"双向绑定更新事件 (v-model)","params":"(val: any) => void"},{"name":"confirm","descZh":"组件交互触发事件","params":"(val: any) => void"},{"name":"cancel","descZh":"组件交互触发事件","params":"(val: any) => void"}],"slots":[{"name":"default","descZh":"默认插槽(组件文本或主体内容)","custom":false}]},"sourcesRef":{"html":"sources/popconfirm/html.txt","css":"sources/popconfirm/css.txt","jsx":"sources/popconfirm/jsx.txt","vue2":"sources/popconfirm/vue2.txt","vue3":"sources/popconfirm/vue3.txt"},"hasContract":true},{"slug":"segmented","name":"分段控制器 Segmented","tier":"extension","confidence":"high","specBatch":2,"specFile":"组件2.txt","contractRef":"components/segmented.json","category":"input","family":null,"familyRole":null,"familyParams":null,"specSummary":"- 用于视图切换、筛选条件切换","files":{"html":"../frameworks/segmented.html","css":"../frameworks/Segmented.css","jsx":"../frameworks/Segmented.jsx","vue2":"../frameworks/Segmented.vue2.vue","vue3":"../frameworks/Segmented.vue3.vue"},"sizes":{"html":2433,"css":833,"jsx":1387,"vue2":1481,"vue3":1505},"sources":{},"scenarios":[],"api":{"props":[{"name":"modelValue","type":"String | Number","def":"''","req":false,"desc":"—"},{"name":"options","type":"Array","def":"—","req":true,"desc":"[{ label, value, icon?, disabled? }]"}],"emits":[{"name":"update:modelValue","descZh":"双向绑定更新事件 (v-model)","params":"(val: any) => void"},{"name":"change","descZh":"组件交互触发事件","params":"(val: any) => void"}],"slots":[]},"sourcesRef":{"html":"sources/segmented/html.txt","css":"sources/segmented/css.txt","jsx":"sources/segmented/jsx.txt","vue2":"sources/segmented/vue2.txt","vue3":"sources/segmented/vue3.txt"},"hasContract":true},{"slug":"transfer","name":"穿梭框 Transfer","tier":"extension","confidence":"high","specBatch":2,"specFile":"组件2.txt","contractRef":"components/transfer.json","category":"input","family":null,"familyRole":null,"familyParams":null,"specSummary":"- 用于批量选择,左右两栏列表","files":{"html":"../frameworks/transfer.html","css":"../frameworks/Transfer.css","jsx":"../frameworks/Transfer.jsx","vue2":"../frameworks/Transfer.vue2.vue","vue3":"../frameworks/Transfer.vue3.vue"},"sizes":{"html":4519,"css":2581,"jsx":3560,"vue2":5407,"vue3":5536},"sources":{},"scenarios":[],"api":{"props":[{"name":"modelValue","type":"Array","def":"[]","req":false,"desc":"—"},{"name":"filterable","type":"Boolean","def":"false","req":false,"desc":"—"}],"emits":[{"name":"update:modelValue","descZh":"双向绑定更新事件 (v-model)","params":"(val: any) => void"},{"name":"change","descZh":"组件交互触发事件","params":"(val: any) => void"}],"slots":[]},"sourcesRef":{"html":"sources/transfer/html.txt","css":"sources/transfer/css.txt","jsx":"sources/transfer/jsx.txt","vue2":"sources/transfer/vue2.txt","vue3":"sources/transfer/vue3.txt"},"hasContract":true},{"slug":"rate","name":"评分 Rate","tier":"extension","confidence":"high","specBatch":2,"specFile":"组件2.txt","contractRef":"components/rate.json","category":"input","family":null,"familyRole":null,"familyParams":null,"specSummary":"- 用于评价、满意度打分","files":{"html":"../frameworks/rate.html","css":"../frameworks/Rate.css","jsx":"../frameworks/Rate.jsx","vue2":"../frameworks/Rate.vue2.vue","vue3":"../frameworks/Rate.vue3.vue"},"sizes":{"html":3586,"css":1149,"jsx":2026,"vue2":2695,"vue3":2706},"sources":{},"scenarios":[],"api":{"props":[{"name":"modelValue","type":"Number","def":"0","req":false,"desc":"—"},{"name":"allowHalf","type":"Boolean","def":"false","req":false,"desc":"—"},{"name":"readonly","type":"Boolean","def":"false","req":false,"desc":"—"},{"name":"disabled","type":"Boolean","def":"false","req":false,"desc":"—"},{"name":"size","type":"String","def":"'default'","req":false,"desc":"—"},{"name":"texts","type":"Array","def":"['极差', '失望', '一般', '满意', '惊喜']","req":false,"desc":"—"}],"emits":[{"name":"update:modelValue","descZh":"双向绑定更新事件 (v-model)","params":"(val: any) => void"},{"name":"change","descZh":"组件交互触发事件","params":"(val: any) => void"}],"slots":[]},"sourcesRef":{"html":"sources/rate/html.txt","css":"sources/rate/css.txt","jsx":"sources/rate/jsx.txt","vue2":"sources/rate/vue2.txt","vue3":"sources/rate/vue3.txt"},"hasContract":true},{"slug":"slider","name":"滑块 Slider","tier":"extension","confidence":"high","specBatch":2,"specFile":"组件2.txt","contractRef":"components/slider.json","category":"input","family":null,"familyRole":null,"familyParams":null,"specSummary":"- 用于范围筛选、参数调节","files":{"html":"../frameworks/slider.html","css":"../frameworks/Slider.css","jsx":"../frameworks/Slider.jsx","vue2":"../frameworks/Slider.vue2.vue","vue3":"../frameworks/Slider.vue3.vue"},"sizes":{"html":6884,"css":1967,"jsx":4366,"vue2":5757,"vue3":5649},"sources":{},"scenarios":[],"api":{"props":[{"name":"modelValue","type":"Number | Array","def":"0","req":false,"desc":"—"},{"name":"max","type":"Number","def":"100","req":false,"desc":"—"},{"name":"step","type":"Number","def":"1","req":false,"desc":"—"},{"name":"range","type":"Boolean","def":"false","req":false,"desc":"—"},{"name":"showTicks","type":"Boolean","def":"false","req":false,"desc":"—"},{"name":"showInput","type":"Boolean","def":"false","req":false,"desc":"—"},{"name":"disabled","type":"Boolean","def":"false","req":false,"desc":"—"}],"emits":[{"name":"update:modelValue","descZh":"双向绑定更新事件 (v-model)","params":"(val: any) => void"},{"name":"change","descZh":"组件交互触发事件","params":"(val: any) => void"}],"slots":[]},"sourcesRef":{"html":"sources/slider/html.txt","css":"sources/slider/css.txt","jsx":"sources/slider/jsx.txt","vue2":"sources/slider/vue2.txt","vue3":"sources/slider/vue3.txt"},"hasContract":true},{"slug":"mention","name":"提及 Mention","tier":"extension","confidence":"high","specBatch":2,"specFile":"组件2.txt","contractRef":"components/mention.json","category":"input","family":"combobox","familyRole":"variant","familyParams":{"trigger":"symbol","insert":"token"},"specSummary":"- 用于评论、任务分配中 @用户","files":{"html":"../frameworks/Mention.html","css":"../frameworks/Mention.css","jsx":"../frameworks/Mention.jsx","vue2":"../frameworks/Mention.vue2.vue","vue3":"../frameworks/Mention.vue3.vue"},"sizes":{"html":4091,"css":1792,"jsx":3196,"vue2":2945,"vue3":3029},"sources":{},"scenarios":["Mention @ 提及"],"api":{"props":[{"name":"modelValue","type":"String","def":"''","req":false,"desc":"—"},{"name":"users","type":"Array","def":"[ { name: '王伟', dept: '华东大区' }, { name: '李娜',…","req":false,"desc":"—"}],"emits":[{"name":"update:modelValue","descZh":"双向绑定更新事件 (v-model)","params":"(val: any) => void"}],"slots":[]},"sourcesRef":{"html":"sources/mention/html.txt","css":"sources/mention/css.txt","jsx":"sources/mention/jsx.txt","vue2":"sources/mention/vue2.txt","vue3":"sources/mention/vue3.txt"},"hasContract":true},{"slug":"autocomplete","name":"自动完成 AutoComplete","tier":"extension","confidence":"high","specBatch":2,"specFile":"组件2.txt","contractRef":"components/autocomplete.json","category":"input","family":"combobox","familyRole":"base","familyParams":{"trigger":"input"},"specSummary":"- 输入时根据关键字匹配建议","files":{"html":"../frameworks/AutoComplete.html","css":"../frameworks/AutoComplete.css","jsx":"../frameworks/AutoComplete.jsx","vue2":"../frameworks/AutoComplete.vue2.vue","vue3":"../frameworks/AutoComplete.vue3.vue"},"sizes":{"html":3107,"css":1293,"jsx":2490,"vue2":2246,"vue3":2311},"sources":{},"scenarios":["AutoComplete 自动完成"],"api":{"props":[{"name":"modelValue","type":"String","def":"''","req":false,"desc":"—"},{"name":"options","type":"Array","def":"['北京', '上海', '广州', '深圳', '杭州', '成都', '重庆', '武…","req":false,"desc":"—"},{"name":"placeholder","type":"String","def":"'输入关键字…'","req":false,"desc":"—"}],"emits":[{"name":"update:modelValue","descZh":"双向绑定更新事件 (v-model)","params":"(val: any) => void"},{"name":"select","descZh":"组件交互触发事件","params":"(val: any) => void"}],"slots":[]},"sourcesRef":{"html":"sources/autocomplete/html.txt","css":"sources/autocomplete/css.txt","jsx":"sources/autocomplete/jsx.txt","vue2":"sources/autocomplete/vue2.txt","vue3":"sources/autocomplete/vue3.txt"},"hasContract":true},{"slug":"collapse","name":"折叠面板 Collapse","tier":"extension","confidence":"high","specBatch":2,"specFile":"组件2.txt","contractRef":"components/collapse.json","category":"display","family":null,"familyRole":null,"familyParams":null,"specSummary":"- 用于分组展示内容,默认展开第一项","files":{"html":"../frameworks/collapse.html","css":"../frameworks/Collapse.css","jsx":"../frameworks/Collapse.jsx","vue2":"../frameworks/Collapse.vue2.vue","vue3":"../frameworks/Collapse.vue3.vue"},"sizes":{"html":4000,"css":1642,"jsx":2367,"vue2":2821,"vue3":2856},"sources":{},"scenarios":[],"api":{"props":[{"name":"modelValue","type":"Array | String | null","def":"[]","req":false,"desc":"—"}],"emits":[{"name":"update:modelValue","descZh":"双向绑定更新事件 (v-model)","params":"(val: any) => void"},{"name":"change","descZh":"组件交互触发事件","params":"(val: any) => void"}],"slots":[{"name":"default","descZh":"默认插槽(组件文本或主体内容)","custom":false}]},"sourcesRef":{"html":"sources/collapse/html.txt","css":"sources/collapse/css.txt","jsx":"sources/collapse/jsx.txt","vue2":"sources/collapse/vue2.txt","vue3":"sources/collapse/vue3.txt"},"hasContract":true},{"slug":"calendar","name":"日历 Calendar","tier":"extension","confidence":"high","specBatch":2,"specFile":"组件2.txt","contractRef":"components/calendar.json","category":"display","family":null,"familyRole":null,"familyParams":null,"specSummary":"- 用于日程管理、考勤、排班","files":{"html":"../frameworks/Calendar.html","css":"../frameworks/Calendar.css","jsx":"../frameworks/Calendar.jsx","vue2":"../frameworks/Calendar.vue2.vue","vue3":"../frameworks/Calendar.vue3.vue"},"sizes":{"html":3495,"css":1622,"jsx":2644,"vue2":2714,"vue3":2585},"sources":{},"scenarios":[],"api":{"props":[{"name":"modelValue","type":"String","def":"''","req":false,"desc":"—"}],"emits":[{"name":"update:modelValue","descZh":"双向绑定更新事件 (v-model)","params":"(val: any) => void"},{"name":"change","descZh":"组件交互触发事件","params":"(val: any) => void"}],"slots":[]},"sourcesRef":{"html":"sources/calendar/html.txt","css":"sources/calendar/css.txt","jsx":"sources/calendar/jsx.txt","vue2":"sources/calendar/vue2.txt","vue3":"sources/calendar/vue3.txt"},"hasContract":true},{"slug":"carousel","name":"轮播 Carousel","tier":"extension","confidence":"high","specBatch":2,"specFile":"组件2.txt","contractRef":"components/carousel.json","category":"display","family":null,"familyRole":null,"familyParams":null,"specSummary":"- 用于运营 Banner、公告轮播","files":{"html":"../frameworks/Carousel.html","css":"../frameworks/Carousel.css","jsx":"../frameworks/Carousel.jsx","vue2":"../frameworks/Carousel.vue2.vue","vue3":"../frameworks/Carousel.vue3.vue"},"sizes":{"html":2120,"css":1375,"jsx":1310,"vue2":1491,"vue3":1321},"sources":{},"scenarios":[],"api":{"props":[{"name":"items","type":"Array","def":"[]","req":false,"desc":"—"},{"name":"autoplay","type":"Boolean","def":"true","req":false,"desc":"—"},{"name":"interval","type":"Number","def":"3000","req":false,"desc":"—"}],"emits":[],"slots":[]},"sourcesRef":{"html":"sources/carousel/html.txt","css":"sources/carousel/css.txt","jsx":"sources/carousel/jsx.txt","vue2":"sources/carousel/vue2.txt","vue3":"sources/carousel/vue3.txt"},"hasContract":true},{"slug":"imagepreview","name":"图片预览 ImagePreview","tier":"extension","confidence":"high","specBatch":2,"specFile":"组件2.txt","contractRef":"components/imagepreview.json","category":"display","family":null,"familyRole":null,"familyParams":null,"specSummary":"- 点击缩略图打开大图预览","files":{"html":"../frameworks/ImagePreview.html","css":"../frameworks/ImagePreview.css","jsx":"../frameworks/ImagePreview.jsx","vue2":"../frameworks/ImagePreview.vue2.vue","vue3":"../frameworks/ImagePreview.vue3.vue"},"sizes":{"html":3415,"css":1276,"jsx":1069,"vue2":1089,"vue3":1062},"sources":{},"scenarios":[],"api":{"props":[{"name":"images","type":"Array","def":"[]","req":false,"desc":"—"},{"name":"visible","type":"Boolean","def":"false","req":false,"desc":"—"},{"name":"index","type":"Number","def":"0","req":false,"desc":"—"}],"emits":[{"name":"close","descZh":"组件交互触发事件","params":"(val: any) => void"},{"name":"change","descZh":"组件交互触发事件","params":"(val: any) => void"}],"slots":[]},"sourcesRef":{"html":"sources/imagepreview/html.txt","css":"sources/imagepreview/css.txt","jsx":"sources/imagepreview/jsx.txt","vue2":"sources/imagepreview/vue2.txt","vue3":"sources/imagepreview/vue3.txt"},"hasContract":true},{"slug":"qrcode","name":"二维码 QRCode","tier":"extension","confidence":"high","specBatch":2,"specFile":"组件2.txt","contractRef":"components/qrcode.json","category":"display","family":null,"familyRole":null,"familyParams":null,"specSummary":"- 用于扫码登录、分享、设备绑定","files":{"html":"../frameworks/QRCode.html","css":"../frameworks/QRCode.css","jsx":"../frameworks/QRCode.jsx","vue2":"../frameworks/QRCode.vue2.vue","vue3":"../frameworks/QRCode.vue3.vue"},"sizes":{"html":2595,"css":535,"jsx":1679,"vue2":1998,"vue3":1818},"sources":{},"scenarios":[],"api":{"props":[{"name":"value","type":"String","def":"''","req":false,"desc":"—"},{"name":"size","type":"Number","def":"200","req":false,"desc":"—"},{"name":"color","type":"String","def":"'#1F2329'","req":false,"desc":"—"},{"name":"showText","type":"Boolean","def":"true","req":false,"desc":"—"}],"emits":[],"slots":[]},"sourcesRef":{"html":"sources/qrcode/html.txt","css":"sources/qrcode/css.txt","jsx":"sources/qrcode/jsx.txt","vue2":"sources/qrcode/vue2.txt","vue3":"sources/qrcode/vue3.txt"},"hasContract":true},{"slug":"countdown","name":"倒计时 Countdown","tier":"extension","confidence":"high","specBatch":2,"specFile":"组件2.txt","contractRef":"components/countdown.json","category":"display","family":null,"familyRole":null,"familyParams":null,"specSummary":"- 用于秒杀、验证码、会议开始","files":{"html":"../frameworks/Countdown.html","css":"../frameworks/Countdown.css","jsx":"../frameworks/Countdown.jsx","vue2":"../frameworks/Countdown.vue2.vue","vue3":"../frameworks/Countdown.vue3.vue"},"sizes":{"html":2065,"css":854,"jsx":1485,"vue2":1466,"vue3":1491},"sources":{},"scenarios":["Countdown 倒计时"],"api":{"props":[{"name":"target","type":"Number","def":"Date.now() + 3600000","req":false,"desc":"—"}],"emits":[],"slots":[]},"sourcesRef":{"html":"sources/countdown/html.txt","css":"sources/countdown/css.txt","jsx":"sources/countdown/jsx.txt","vue2":"sources/countdown/vue2.txt","vue3":"sources/countdown/vue3.txt"},"hasContract":true},{"slug":"watermark","name":"水印 Watermark","tier":"extension","confidence":"high","specBatch":2,"specFile":"组件2.txt","contractRef":"components/watermark.json","category":"display","family":null,"familyRole":null,"familyParams":null,"specSummary":"- 用于敏感信息防泄露","files":{"html":"../frameworks/Watermark.html","css":"../frameworks/Watermark.css","jsx":"../frameworks/Watermark.jsx","vue2":"../frameworks/Watermark.vue2.vue","vue3":"../frameworks/Watermark.vue3.vue"},"sizes":{"html":1605,"css":314,"jsx":676,"vue2":1031,"vue3":1011},"sources":{},"scenarios":[],"api":{"props":[{"name":"text","type":"String","def":"'Aurora Admin'","req":false,"desc":"—"},{"name":"color","type":"String","def":"'rgba(0,0,0,0.10)'","req":false,"desc":"—"},{"name":"fontSize","type":"Number","def":"14","req":false,"desc":"—"},{"name":"rotate","type":"Number","def":"-22","req":false,"desc":"—"},{"name":"gap","type":"Number","def":"160","req":false,"desc":"—"},{"name":"fullscreen","type":"Boolean","def":"false","req":false,"desc":"—"}],"emits":[],"slots":[]},"sourcesRef":{"html":"sources/watermark/html.txt","css":"sources/watermark/css.txt","jsx":"sources/watermark/jsx.txt","vue2":"sources/watermark/vue2.txt","vue3":"sources/watermark/vue3.txt"},"hasContract":true},{"slug":"cardlist","name":"卡片列表 CardList","tier":"extension","confidence":"high","specBatch":4,"specFile":"组件4.txt","contractRef":"components/cardlist.json","category":"display","family":null,"familyRole":null,"familyParams":null,"specSummary":"- 以卡片形式展示列表数据","files":{"html":"../frameworks/CardList.html","css":"../frameworks/CardList.css","jsx":"../frameworks/CardList.jsx","vue2":"../frameworks/CardList.vue2.vue","vue3":"../frameworks/CardList.vue3.vue"},"sizes":{"html":3426,"css":1548,"jsx":1191,"vue2":1023,"vue3":988},"sources":{},"scenarios":[],"api":{"props":[{"name":"items","type":"Array","def":"[]","req":false,"desc":"—"},{"name":"cols","type":"Number","def":"3","req":false,"desc":"—"}],"emits":[{"name":"action","descZh":"组件交互触发事件","params":"(val: any) => void"}],"slots":[]},"sourcesRef":{"html":"sources/cardlist/html.txt","css":"sources/cardlist/css.txt","jsx":"sources/cardlist/jsx.txt","vue2":"sources/cardlist/vue2.txt","vue3":"sources/cardlist/vue3.txt"},"hasContract":true},{"slug":"shortcutpanel","name":"键盘快捷键面板 ShortcutPanel","tier":"extension","confidence":"high","specBatch":5,"specFile":"组件5.txt","contractRef":"components/shortcutpanel.json","category":"system","family":null,"familyRole":null,"familyParams":null,"specSummary":"- 展示系统所有快捷键","files":{"html":"../frameworks/ShortcutPanel.html","css":"../frameworks/ShortcutPanel.css","jsx":"../frameworks/ShortcutPanel.jsx","vue2":"../frameworks/ShortcutPanel.vue2.vue","vue3":"../frameworks/ShortcutPanel.vue3.vue"},"sizes":{"html":1933,"css":1347,"jsx":1295,"vue2":1289,"vue3":1229},"sources":{},"scenarios":["ShortcutPanel 快捷键面板"],"api":{"props":[{"name":"items","type":"Array","def":"[ { name: '保存', key: 'Ctrl + S' }, { name: '搜…","req":false,"desc":"—"}],"emits":[],"slots":[]},"sourcesRef":{"html":"sources/shortcutpanel/html.txt","css":"sources/shortcutpanel/css.txt","jsx":"sources/shortcutpanel/jsx.txt","vue2":"sources/shortcutpanel/vue2.txt","vue3":"sources/shortcutpanel/vue3.txt"},"hasContract":true},{"slug":"bankcardinput","name":"银行卡输入 BankCardInput","tier":"extension","confidence":"high","specBatch":6,"specFile":"组件6.txt","contractRef":"components/bankcardinput.json","category":"input","family":"masked-input","familyRole":"variant","familyParams":{"mask":"4-4-4-4","validate":"luhn","scan":true},"specSummary":"- 用于银行卡号输入","files":{"html":"../frameworks/BankCardInput.html","css":"../frameworks/BankCardInput.css","jsx":"../frameworks/BankCardInput.jsx","vue2":"../frameworks/BankCardInput.vue2.vue","vue3":"../frameworks/BankCardInput.vue3.vue"},"sizes":{"html":2869,"css":1470,"jsx":2133,"vue2":2245,"vue3":2250},"sources":{},"scenarios":["BankCardInput 银行卡输入"],"api":{"props":[{"name":"modelValue","type":"String","def":"''","req":false,"desc":"—"},{"name":"placeholder","type":"String","def":"'请输入银行卡号'","req":false,"desc":"—"}],"emits":[{"name":"update:modelValue","descZh":"双向绑定更新事件 (v-model)","params":"(val: any) => void"}],"slots":[]},"sourcesRef":{"html":"sources/bankcardinput/html.txt","css":"sources/bankcardinput/css.txt","jsx":"sources/bankcardinput/jsx.txt","vue2":"sources/bankcardinput/vue2.txt","vue3":"sources/bankcardinput/vue3.txt"},"hasContract":true},{"slug":"idcardinput","name":"身份证输入 IDCardInput","tier":"extension","confidence":"high","specBatch":6,"specFile":"组件6.txt","contractRef":"components/idcardinput.json","category":"input","family":"masked-input","familyRole":"variant","familyParams":{"segment":[6,8,4],"length":18,"scan":true},"specSummary":"- 用于身份证号码输入","files":{"html":"../frameworks/IDCardInput.html","css":"../frameworks/IDCardInput.css","jsx":"../frameworks/IDCardInput.jsx","vue2":"../frameworks/IDCardInput.vue2.vue","vue3":"../frameworks/IDCardInput.vue3.vue"},"sizes":{"html":3039,"css":1394,"jsx":2156,"vue2":2211,"vue3":2246},"sources":{},"scenarios":["IDCardInput 身份证输入"],"api":{"props":[{"name":"modelValue","type":"String","def":"''","req":false,"desc":"—"},{"name":"placeholder","type":"String","def":"'请输入 18 位身份证号'","req":false,"desc":"—"}],"emits":[{"name":"update:modelValue","descZh":"双向绑定更新事件 (v-model)","params":"(val: any) => void"}],"slots":[]},"sourcesRef":{"html":"sources/idcardinput/html.txt","css":"sources/idcardinput/css.txt","jsx":"sources/idcardinput/jsx.txt","vue2":"sources/idcardinput/vue2.txt","vue3":"sources/idcardinput/vue3.txt"},"hasContract":true},{"slug":"plateinput","name":"车牌输入 PlateInput","tier":"extension","confidence":"high","specBatch":6,"specFile":"组件6.txt","contractRef":"components/plateinput.json","category":"input","family":"masked-input","familyRole":"variant","familyParams":{"length":7,"validate":"regex"},"specSummary":"- 用于车牌号输入","files":{"html":"../frameworks/PlateInput.html","css":"../frameworks/PlateInput.css","jsx":"../frameworks/PlateInput.jsx","vue2":"../frameworks/PlateInput.vue2.vue","vue3":"../frameworks/PlateInput.vue3.vue"},"sizes":{"html":3007,"css":1646,"jsx":1963,"vue2":1967,"vue3":1991},"sources":{},"scenarios":["PlateInput 车牌号输入"],"api":{"props":[{"name":"modelValue","type":"String","def":"''","req":false,"desc":"—"},{"name":"provinces","type":"Array","def":"['京', '沪', '粤', '津', '冀', '鲁', '苏', '浙', '川',…","req":false,"desc":"—"}],"emits":[{"name":"update:modelValue","descZh":"双向绑定更新事件 (v-model)","params":"(val: any) => void"}],"slots":[]},"sourcesRef":{"html":"sources/plateinput/html.txt","css":"sources/plateinput/css.txt","jsx":"sources/plateinput/jsx.txt","vue2":"sources/plateinput/vue2.txt","vue3":"sources/plateinput/vue3.txt"},"hasContract":true},{"slug":"bottomsheet","name":"底部面板 BottomSheet","tier":"extension","confidence":"high","specBatch":6,"specFile":"组件6.txt","contractRef":"components/bottomsheet.json","category":"feedback","family":null,"familyRole":null,"familyParams":null,"specSummary":"- 从底部滑出的面板","files":{"html":"../frameworks/BottomSheet.html","css":"../frameworks/BottomSheet.css","jsx":"../frameworks/BottomSheet.jsx","vue2":"../frameworks/BottomSheet.vue2.vue","vue3":"../frameworks/BottomSheet.vue3.vue"},"sizes":{"html":1754,"css":1679,"jsx":808,"vue2":886,"vue3":865},"sources":{},"scenarios":[],"api":{"props":[{"name":"visible","type":"Boolean","def":"false","req":false,"desc":"—"},{"name":"title","type":"String","def":"''","req":false,"desc":"—"}],"emits":[{"name":"close","descZh":"组件交互触发事件","params":"(val: any) => void"}],"slots":[{"name":"default","descZh":"默认插槽(组件文本或主体内容)","custom":false},{"name":"footer","descZh":"","custom":true}]},"sourcesRef":{"html":"sources/bottomsheet/html.txt","css":"sources/bottomsheet/css.txt","jsx":"sources/bottomsheet/jsx.txt","vue2":"sources/bottomsheet/vue2.txt","vue3":"sources/bottomsheet/vue3.txt"},"hasContract":true},{"slug":"treetable","name":"树形表格 TreeTable","tier":"extension","confidence":"high","specBatch":7,"specFile":"组件7.txt","contractRef":"components/treetable.json","category":"display","family":"table","familyRole":"variant","familyParams":{"treeMode":true},"specSummary":"- 在普通表格基础上支持树形层级展示","files":{"html":"../frameworks/treetable.html","css":"../frameworks/TreeTable.css","jsx":"../frameworks/TreeTable.jsx","vue2":"../frameworks/TreeTable.vue2.vue","vue3":"../frameworks/TreeTable.vue3.vue"},"sizes":{"html":6676,"css":1704,"jsx":6235,"vue2":7343,"vue3":7008},"sources":{},"scenarios":[],"api":{"props":[{"name":"columns","type":"Array","def":"—","req":true,"desc":"—"},{"name":"selectable","type":"Boolean","def":"false","req":false,"desc":"—"},{"name":"selectedKeys","type":"Array","def":"[]","req":false,"desc":"—"},{"name":"defaultExpandedKeys","type":"Array","def":"[]","req":false,"desc":"—"},{"name":"summaryColumn","type":"String","def":"''","req":false,"desc":"—"},{"name":"summary","type":"Object","def":"({ label: '合计' })","req":false,"desc":"—"}],"emits":[{"name":"update:selectedKeys","descZh":"双向绑定更新事件 (v-model)","params":"(val: any) => void"},{"name":"row-click","descZh":"组件交互触发事件","params":"(val: any) => void"}],"slots":[]},"sourcesRef":{"html":"sources/treetable/html.txt","css":"sources/treetable/css.txt","jsx":"sources/treetable/jsx.txt","vue2":"sources/treetable/vue2.txt","vue3":"sources/treetable/vue3.txt"},"hasContract":true},{"slug":"expandabletable","name":"可展开表格 ExpandableTable","tier":"extension","confidence":"high","specBatch":7,"specFile":"组件7.txt","contractRef":"components/expandabletable.json","category":"display","family":"table","familyRole":"variant","familyParams":{"expandable":true},"specSummary":"- 表格行支持展开显示额外内容","files":{"html":"../frameworks/ExpandableTable.html","css":"../frameworks/ExpandableTable.css","jsx":"../frameworks/ExpandableTable.jsx","vue2":"../frameworks/ExpandableTable.vue2.vue","vue3":"../frameworks/ExpandableTable.vue3.vue"},"sizes":{"html":2786,"css":1530,"jsx":1645,"vue2":1398,"vue3":1318},"sources":{},"scenarios":["ExpandableTable 可展开表格"],"api":{"props":[{"name":"data","type":"Array","def":"[]","req":false,"desc":"—"},{"name":"columns","type":"Array","def":"[]","req":false,"desc":"—"},{"name":"idKey","type":"String","def":"'id'","req":false,"desc":"—"}],"emits":[],"slots":[]},"sourcesRef":{"html":"sources/expandabletable/html.txt","css":"sources/expandabletable/css.txt","jsx":"sources/expandabletable/jsx.txt","vue2":"sources/expandabletable/vue2.txt","vue3":"sources/expandabletable/vue3.txt"},"hasContract":true},{"slug":"mergedcelltable","name":"合并单元格表格 MergedCellTable","tier":"extension","confidence":"high","specBatch":7,"specFile":"组件7.txt","contractRef":"components/mergedcelltable.json","category":"display","family":"table","familyRole":"variant","familyParams":{"mergeAxis":"vertical"},"specSummary":"- 支持按字段合并相同内容单元格","files":{"html":"../frameworks/MergedCellTable.html","css":"../frameworks/MergedCellTable.css","jsx":"../frameworks/MergedCellTable.jsx","vue2":"../frameworks/MergedCellTable.vue2.vue","vue3":"../frameworks/MergedCellTable.vue3.vue"},"sizes":{"html":2063,"css":1241,"jsx":1328,"vue2":1509,"vue3":1321},"sources":{},"scenarios":["MergedCellTable 合并单元格表格"],"api":{"props":[{"name":"data","type":"Array","def":"[]","req":false,"desc":"—"},{"name":"columns","type":"Array","def":"[]","req":false,"desc":"—"}],"emits":[],"slots":[]},"sourcesRef":{"html":"sources/mergedcelltable/html.txt","css":"sources/mergedcelltable/css.txt","jsx":"sources/mergedcelltable/jsx.txt","vue2":"sources/mergedcelltable/vue2.txt","vue3":"sources/mergedcelltable/vue3.txt"},"hasContract":true},{"slug":"summaryrowtable","name":"统计行表格 SummaryRowTable","tier":"extension","confidence":"high","specBatch":7,"specFile":"组件7.txt","contractRef":"components/summaryrowtable.json","category":"display","family":"table","familyRole":"variant","familyParams":{"summary":"bottom"},"specSummary":"- 表格底部或顶部显示汇总行","files":{"html":"../frameworks/SummaryRowTable.html","css":"../frameworks/SummaryRowTable.css","jsx":"../frameworks/SummaryRowTable.jsx","vue2":"../frameworks/SummaryRowTable.vue2.vue","vue3":"../frameworks/SummaryRowTable.vue3.vue"},"sizes":{"html":2436,"css":1186,"jsx":1532,"vue2":1653,"vue3":1460},"sources":{},"scenarios":["SummaryRowTable 统计汇总表格"],"api":{"props":[{"name":"data","type":"Array","def":"[]","req":false,"desc":"—"},{"name":"columns","type":"Array","def":"[]","req":false,"desc":"—"},{"name":"summary","type":"Object","def":"({})","req":false,"desc":"—"},{"name":"labelKey","type":"String","def":"'name'","req":false,"desc":"—"},{"name":"labelText","type":"String","def":"'合计 / 平均'","req":false,"desc":"—"}],"emits":[],"slots":[]},"sourcesRef":{"html":"sources/summaryrowtable/html.txt","css":"sources/summaryrowtable/css.txt","jsx":"sources/summaryrowtable/jsx.txt","vue2":"sources/summaryrowtable/vue2.txt","vue3":"sources/summaryrowtable/vue3.txt"},"hasContract":true},{"slug":"fixedcolumntable","name":"固定列表格 FixedColumnTable","tier":"extension","confidence":"high","specBatch":7,"specFile":"组件7.txt","contractRef":"components/fixedcolumntable.json","category":"display","family":"table","familyRole":"variant","familyParams":{"fixedTarget":"left"},"specSummary":"- 表格列过多时支持左右列固定","files":{"html":"../frameworks/FixedColumnTable.html","css":"../frameworks/FixedColumnTable.css","jsx":"../frameworks/FixedColumnTable.jsx","vue2":"../frameworks/FixedColumnTable.vue2.vue","vue3":"../frameworks/FixedColumnTable.vue3.vue"},"sizes":{"html":2893,"css":1494,"jsx":899,"vue2":942,"vue3":890},"sources":{},"scenarios":["FixedColumnTable 固定列表格"],"api":{"props":[{"name":"data","type":"Array","def":"[]","req":false,"desc":"—"},{"name":"columns","type":"Array","def":"[]","req":false,"desc":"—"}],"emits":[],"slots":[]},"sourcesRef":{"html":"sources/fixedcolumntable/html.txt","css":"sources/fixedcolumntable/css.txt","jsx":"sources/fixedcolumntable/jsx.txt","vue2":"sources/fixedcolumntable/vue2.txt","vue3":"sources/fixedcolumntable/vue3.txt"},"hasContract":true},{"slug":"timelinelist","name":"时间轴列表 TimelineList","tier":"extension","confidence":"high","specBatch":7,"specFile":"组件7.txt","contractRef":"components/timelinelist.json","category":"display","family":null,"familyRole":null,"familyParams":null,"specSummary":"- 以时间轴形式展示事件或记录","files":{"html":"../frameworks/TimelineList.html","css":"../frameworks/TimelineList.css","jsx":"../frameworks/TimelineList.jsx","vue2":"../frameworks/TimelineList.vue2.vue","vue3":"../frameworks/TimelineList.vue3.vue"},"sizes":{"html":2681,"css":2309,"jsx":748,"vue2":799,"vue3":740},"sources":{},"scenarios":[],"api":{"props":[{"name":"items","type":"Array","def":"[]","req":false,"desc":"—"},{"name":"direction","type":"String","def":"'vertical'","req":false,"desc":"—"}],"emits":[],"slots":[]},"sourcesRef":{"html":"sources/timelinelist/html.txt","css":"sources/timelinelist/css.txt","jsx":"sources/timelinelist/jsx.txt","vue2":"sources/timelinelist/vue2.txt","vue3":"sources/timelinelist/vue3.txt"},"hasContract":true},{"slug":"steplist","name":"步骤列表 StepList","tier":"extension","confidence":"high","specBatch":7,"specFile":"组件7.txt","contractRef":"components/steplist.json","category":"display","family":"steps","familyRole":"variant","familyParams":{"nodeStyle":"list","orientation":"vertical"},"specSummary":"- 展示多步骤流程的详细列表","files":{"html":"../frameworks/StepList.html","css":"../frameworks/StepList.css","jsx":"../frameworks/StepList.jsx","vue2":"../frameworks/StepList.vue2.vue","vue3":"../frameworks/StepList.vue3.vue"},"sizes":{"html":2739,"css":2439,"jsx":1012,"vue2":1066,"vue3":1025},"sources":{},"scenarios":[],"api":{"props":[{"name":"steps","type":"Array","def":"[]","req":false,"desc":"—"},{"name":"direction","type":"String","def":"'vertical'","req":false,"desc":"—"},{"name":"clickable","type":"Boolean","def":"false","req":false,"desc":"—"}],"emits":[{"name":"step-click","descZh":"组件交互触发事件","params":"(val: any) => void"}],"slots":[]},"sourcesRef":{"html":"sources/steplist/html.txt","css":"sources/steplist/css.txt","jsx":"sources/steplist/jsx.txt","vue2":"sources/steplist/vue2.txt","vue3":"sources/steplist/vue3.txt"},"hasContract":true},{"slug":"chartpanel","name":"图表面板 ChartPanel","tier":"extension","confidence":"high","specBatch":7,"specFile":"组件7.txt","contractRef":"components/chartpanel.json","category":"display","family":"card-shell","familyRole":"variant","familyParams":{"sections":["header","body"]},"specSummary":"- 可折叠的图表容器","files":{"html":"../frameworks/ChartPanel.html","css":"../frameworks/ChartPanel.css","jsx":"../frameworks/ChartPanel.jsx","vue2":"../frameworks/ChartPanel.vue2.vue","vue3":"../frameworks/ChartPanel.vue3.vue"},"sizes":{"html":1572,"css":1196,"jsx":960,"vue2":963,"vue3":987},"sources":{},"scenarios":[],"api":{"props":[{"name":"title","type":"String","def":"'图表'","req":false,"desc":"—"},{"name":"collapsible","type":"Boolean","def":"true","req":false,"desc":"—"},{"name":"collapsed","type":"Boolean","def":"false","req":false,"desc":"—"}],"emits":[{"name":"refresh","descZh":"组件交互触发事件","params":"(val: any) => void"},{"name":"export","descZh":"组件交互触发事件","params":"(val: any) => void"}],"slots":[{"name":"default","descZh":"默认插槽(组件文本或主体内容)","custom":false}]},"sourcesRef":{"html":"sources/chartpanel/html.txt","css":"sources/chartpanel/css.txt","jsx":"sources/chartpanel/jsx.txt","vue2":"sources/chartpanel/vue2.txt","vue3":"sources/chartpanel/vue3.txt"},"hasContract":true},{"slug":"dashboardcard","name":"仪表板卡片 DashboardCard","tier":"extension","confidence":"high","specBatch":7,"specFile":"组件7.txt","contractRef":"components/dashboardcard.json","category":"display","family":"card-shell","familyRole":"variant","familyParams":{"layout":"horizontal"},"specSummary":"- 用于数据看板中的卡片单元","files":{"html":"../frameworks/DashboardCard.html","css":"../frameworks/DashboardCard.css","jsx":"../frameworks/DashboardCard.jsx","vue2":"../frameworks/DashboardCard.vue2.vue","vue3":"../frameworks/DashboardCard.vue3.vue"},"sizes":{"html":1091,"css":1054,"jsx":529,"vue2":696,"vue3":648},"sources":{},"scenarios":[],"api":{"props":[{"name":"title","type":"String","def":"''","req":false,"desc":"—"},{"name":"value","type":"String | Number","def":"''","req":false,"desc":"—"},{"name":"icon","type":"String","def":"'📊'","req":false,"desc":"—"},{"name":"trend","type":"String","def":"'up'","req":false,"desc":"—"},{"name":"trendText","type":"String","def":"''","req":false,"desc":"—"}],"emits":[],"slots":[]},"sourcesRef":{"html":"sources/dashboardcard/html.txt","css":"sources/dashboardcard/css.txt","jsx":"sources/dashboardcard/jsx.txt","vue2":"sources/dashboardcard/vue2.txt","vue3":"sources/dashboardcard/vue3.txt"},"hasContract":true},{"slug":"enhancedtabnav","name":"标签页导航增强 EnhancedTabNav","tier":"extension","confidence":"high","specBatch":7,"specFile":"组件7.txt","contractRef":"components/enhancedtabnav.json","category":"navigation","family":"tabs","familyRole":"variant","familyParams":{"draggable":true,"contextMenu":true,"unsavedMark":true},"specSummary":"- 支持浏览器标签式导航","files":{"html":"../frameworks/EnhancedTabNav.html","css":"../frameworks/EnhancedTabNav.css","jsx":"../frameworks/EnhancedTabNav.jsx","vue2":"../frameworks/EnhancedTabNav.vue2.vue","vue3":"../frameworks/EnhancedTabNav.vue3.vue"},"sizes":{"html":4734,"css":1970,"jsx":3905,"vue2":3582,"vue3":3395},"sources":{},"scenarios":["EnhancedTabNav 增强页签导航"],"api":{"props":[],"emits":[],"slots":[]},"sourcesRef":{"html":"sources/enhancedtabnav/html.txt","css":"sources/enhancedtabnav/css.txt","jsx":"sources/enhancedtabnav/jsx.txt","vue2":"sources/enhancedtabnav/vue2.txt","vue3":"sources/enhancedtabnav/vue3.txt"},"hasContract":true},{"slug":"sidemenu","name":"侧边栏菜单 SideMenu","tier":"extension","confidence":"high","specBatch":7,"specFile":"组件7.txt","contractRef":"components/sidemenu.json","category":"navigation","family":"nav-menu","familyRole":"base","familyParams":{"direction":"side","indicator":"left","collapsed":false},"specSummary":"- 支持多级菜单、图标、徽章","files":{"html":"../frameworks/sidemenu.html","css":"../frameworks/SideMenu.css","jsx":"../frameworks/SideMenu.jsx","vue2":"../frameworks/SideMenu.vue2.vue","vue3":"../frameworks/SideMenu.vue3.vue"},"sizes":{"html":7124,"css":7083,"jsx":3583,"vue2":4518,"vue3":4254},"sources":{},"scenarios":[],"api":{"props":[{"name":"items","type":"Array","def":"[]","req":false,"desc":"—"},{"name":"activeKey","type":"String","def":"''","req":false,"desc":"—"}],"emits":[{"name":"update:activeKey","descZh":"双向绑定更新事件 (v-model)","params":"(val: any) => void"},{"name":"change","descZh":"组件交互触发事件","params":"(val: any) => void"}],"slots":[]},"sourcesRef":{"html":"sources/sidemenu/html.txt","css":"sources/sidemenu/css.txt","jsx":"sources/sidemenu/jsx.txt","vue2":"sources/sidemenu/vue2.txt","vue3":"sources/sidemenu/vue3.txt"},"hasContract":true},{"slug":"topmenu","name":"顶部菜单 TopMenu","tier":"extension","confidence":"high","specBatch":7,"specFile":"组件7.txt","contractRef":"components/topmenu.json","category":"navigation","family":"nav-menu","familyRole":"variant","familyParams":{"direction":"top","indicator":"top","collapsed":false},"specSummary":"- 水平导航菜单","files":{"html":"../frameworks/TopMenu.html","css":"../frameworks/TopMenu.css","jsx":"../frameworks/TopMenu.jsx","vue2":"../frameworks/TopMenu.vue2.vue","vue3":"../frameworks/TopMenu.vue3.vue"},"sizes":{"html":7116,"css":7083,"jsx":3576,"vue2":4511,"vue3":4248},"sources":{},"scenarios":[],"api":{"props":[{"name":"items","type":"Array","def":"[]","req":false,"desc":"—"},{"name":"activeKey","type":"String","def":"''","req":false,"desc":"—"}],"emits":[{"name":"update:activeKey","descZh":"双向绑定更新事件 (v-model)","params":"(val: any) => void"},{"name":"change","descZh":"组件交互触发事件","params":"(val: any) => void"}],"slots":[]},"sourcesRef":{"html":"sources/topmenu/html.txt","css":"sources/topmenu/css.txt","jsx":"sources/topmenu/jsx.txt","vue2":"sources/topmenu/vue2.txt","vue3":"sources/topmenu/vue3.txt"},"hasContract":true},{"slug":"mixednavigation","name":"混合导航 MixedNavigation","tier":"extension","confidence":"high","specBatch":7,"specFile":"组件7.txt","contractRef":"components/mixednavigation.json","category":"navigation","family":"nav-menu","familyRole":"variant","familyParams":{"direction":"mixed","level":"2","collapsed":false},"specSummary":"- 顶部一级菜单 + 侧边栏二级菜单","files":{"html":"../frameworks/MixedNavigation.html","css":"../frameworks/MixedNavigation.css","jsx":"../frameworks/MixedNavigation.jsx","vue2":"../frameworks/MixedNavigation.vue2.vue","vue3":"../frameworks/MixedNavigation.vue3.vue"},"sizes":{"html":7140,"css":7083,"jsx":3600,"vue2":4535,"vue3":4264},"sources":{},"scenarios":[],"api":{"props":[{"name":"items","type":"Array","def":"[]","req":false,"desc":"—"},{"name":"activeKey","type":"String","def":"''","req":false,"desc":"—"}],"emits":[{"name":"update:activeKey","descZh":"双向绑定更新事件 (v-model)","params":"(val: any) => void"},{"name":"change","descZh":"组件交互触发事件","params":"(val: any) => void"}],"slots":[]},"sourcesRef":{"html":"sources/mixednavigation/html.txt","css":"sources/mixednavigation/css.txt","jsx":"sources/mixednavigation/jsx.txt","vue2":"sources/mixednavigation/vue2.txt","vue3":"sources/mixednavigation/vue3.txt"},"hasContract":true},{"slug":"quicknav","name":"快捷导航 QuickNav","tier":"extension","confidence":"high","specBatch":7,"specFile":"组件7.txt","contractRef":"components/quicknav.json","category":"navigation","family":null,"familyRole":null,"familyParams":null,"specSummary":"- 常用页面快捷入口","files":{"html":"../frameworks/QuickNav.html","css":"../frameworks/QuickNav.css","jsx":"../frameworks/QuickNav.jsx","vue2":"../frameworks/QuickNav.vue2.vue","vue3":"../frameworks/QuickNav.vue3.vue"},"sizes":{"html":1716,"css":857,"jsx":833,"vue2":892,"vue3":884},"sources":{},"scenarios":["QuickNav 快捷导航"],"api":{"props":[{"name":"items","type":"Array","def":"[ { icon: '📊', label: '数据看板' }, { icon: '👥'…","req":false,"desc":"—"}],"emits":[{"name":"select","descZh":"组件交互触发事件","params":"(val: any) => void"}],"slots":[]},"sourcesRef":{"html":"sources/quicknav/html.txt","css":"sources/quicknav/css.txt","jsx":"sources/quicknav/jsx.txt","vue2":"sources/quicknav/vue2.txt","vue3":"sources/quicknav/vue3.txt"},"hasContract":true},{"slug":"anchornav","name":"锚点导航 AnchorNav","tier":"extension","confidence":"high","specBatch":7,"specFile":"组件7.txt","contractRef":"components/anchornav.json","category":"navigation","family":null,"familyRole":null,"familyParams":null,"specSummary":"- 长页面右侧固定目录","files":{"html":"../frameworks/anchornav.html","css":"../frameworks/AnchorNav.css","jsx":"../frameworks/AnchorNav.jsx","vue2":"../frameworks/AnchorNav.vue2.vue","vue3":"../frameworks/AnchorNav.vue3.vue"},"sizes":{"html":3813,"css":1075,"jsx":2105,"vue2":2558,"vue3":2530},"sources":{},"scenarios":["产品简介","安装与初始化","开发指南","常见问题"],"api":{"props":[{"name":"items","type":"Array","def":"—","req":true,"desc":"—"},{"name":"offset","type":"Number","def":"24","req":false,"desc":"滚动偏移(避开吸顶高度)"}],"emits":[],"slots":[]},"sourcesRef":{"html":"sources/anchornav/html.txt","css":"sources/anchornav/css.txt","jsx":"sources/anchornav/jsx.txt","vue2":"sources/anchornav/vue2.txt","vue3":"sources/anchornav/vue3.txt"},"hasContract":true},{"slug":"backtotop","name":"返回顶部 BackToTop","tier":"extension","confidence":"high","specBatch":7,"specFile":"组件7.txt","contractRef":"components/backtotop.json","category":"system","family":null,"familyRole":null,"familyParams":null,"specSummary":"- 页面滚动超过 400px 时出现","files":{"html":"../frameworks/BackToTop.html","css":"../frameworks/BackToTop.css","jsx":"../frameworks/BackToTop.jsx","vue2":"../frameworks/BackToTop.vue2.vue","vue3":"../frameworks/BackToTop.vue3.vue"},"sizes":{"html":2687,"css":1193,"jsx":1608,"vue2":1603,"vue3":1495},"sources":{},"scenarios":["向下滚动页面"],"api":{"props":[{"name":"threshold","type":"Number","def":"400","req":false,"desc":"—"},{"name":"showRing","type":"Boolean","def":"true","req":false,"desc":"—"}],"emits":[],"slots":[]},"sourcesRef":{"html":"sources/backtotop/html.txt","css":"sources/backtotop/css.txt","jsx":"sources/backtotop/jsx.txt","vue2":"sources/backtotop/vue2.txt","vue3":"sources/backtotop/vue3.txt"},"hasContract":true},{"slug":"pagetransition","name":"页面跳转 PageTransition","tier":"extension","confidence":"high","specBatch":7,"specFile":"组件7.txt","contractRef":"components/pagetransition.json","category":"system","family":null,"familyRole":null,"familyParams":null,"specSummary":"- 路由切换动画","files":{"html":"../frameworks/PageTransition.html","css":"../frameworks/PageTransition.css","jsx":"../frameworks/PageTransition.jsx","vue2":"../frameworks/PageTransition.vue2.vue","vue3":"../frameworks/PageTransition.vue3.vue"},"sizes":{"html":1529,"css":984,"jsx":793,"vue2":737,"vue3":709},"sources":{},"scenarios":["PageTransition 页面切换动画"],"api":{"props":[{"name":"text","type":"String","def":"'当前页面内容'","req":false,"desc":"—"}],"emits":[],"slots":[]},"sourcesRef":{"html":"sources/pagetransition/html.txt","css":"sources/pagetransition/css.txt","jsx":"sources/pagetransition/jsx.txt","vue2":"sources/pagetransition/vue2.txt","vue3":"sources/pagetransition/vue3.txt"},"hasContract":true},{"slug":"buttongroup","name":"按钮组 ButtonGroup","tier":"extension","confidence":"high","specBatch":7,"specFile":"组件7.txt","contractRef":"components/buttongroup.json","category":"general","family":null,"familyRole":null,"familyParams":null,"specSummary":"- 多个按钮组合","files":{"html":"../frameworks/ButtonGroup.html","css":"../frameworks/ButtonGroup.css","jsx":"../frameworks/ButtonGroup.jsx","vue2":"../frameworks/ButtonGroup.vue2.vue","vue3":"../frameworks/ButtonGroup.vue3.vue"},"sizes":{"html":1819,"css":1370,"jsx":1062,"vue2":1260,"vue3":1210},"sources":{},"scenarios":[],"api":{"props":[{"name":"options","type":"Array","def":"[]","req":false,"desc":"—"},{"name":"modelValue","type":"String | Array","def":"''","req":false,"desc":"—"},{"name":"multiple","type":"Boolean","def":"false","req":false,"desc":"—"},{"name":"size","type":"String","def":"'default'","req":false,"desc":"—"}],"emits":[{"name":"update:modelValue","descZh":"双向绑定更新事件 (v-model)","params":"(val: any) => void"},{"name":"change","descZh":"组件交互触发事件","params":"(val: any) => void"}],"slots":[]},"sourcesRef":{"html":"sources/buttongroup/html.txt","css":"sources/buttongroup/css.txt","jsx":"sources/buttongroup/jsx.txt","vue2":"sources/buttongroup/vue2.txt","vue3":"sources/buttongroup/vue3.txt"},"hasContract":true},{"slug":"radiocard","name":"单选卡片 RadioCard","tier":"extension","confidence":"high","specBatch":7,"specFile":"组件7.txt","contractRef":"components/radiocard.json","category":"input","family":"selection-card","familyRole":"base","familyParams":{"mode":"single"},"specSummary":"- 以卡片形式展示单选选项","files":{"html":"../frameworks/RadioCard.html","css":"../frameworks/RadioCard.css","jsx":"../frameworks/RadioCard.jsx","vue2":"../frameworks/RadioCard.vue2.vue","vue3":"../frameworks/RadioCard.vue3.vue"},"sizes":{"html":1814,"css":1296,"jsx":827,"vue2":865,"vue3":860},"sources":{},"scenarios":[],"api":{"props":[{"name":"options","type":"Array","def":"[]","req":false,"desc":"—"},{"name":"modelValue","type":"String | Number","def":"''","req":false,"desc":"—"},{"name":"cols","type":"Number","def":"3","req":false,"desc":"—"}],"emits":[{"name":"update:modelValue","descZh":"双向绑定更新事件 (v-model)","params":"(val: any) => void"}],"slots":[]},"sourcesRef":{"html":"sources/radiocard/html.txt","css":"sources/radiocard/css.txt","jsx":"sources/radiocard/jsx.txt","vue2":"sources/radiocard/vue2.txt","vue3":"sources/radiocard/vue3.txt"},"hasContract":true},{"slug":"checkboxcard","name":"复选卡片 CheckboxCard","tier":"extension","confidence":"high","specBatch":7,"specFile":"组件7.txt","contractRef":"components/checkboxcard.json","category":"input","family":"selection-card","familyRole":"variant","familyParams":{"mode":"multiple","innerActions":true},"specSummary":"- 以卡片形式展示多选选项","files":{"html":"../frameworks/CheckboxCard.html","css":"../frameworks/CheckboxCard.css","jsx":"../frameworks/CheckboxCard.jsx","vue2":"../frameworks/CheckboxCard.vue2.vue","vue3":"../frameworks/CheckboxCard.vue3.vue"},"sizes":{"html":1938,"css":1433,"jsx":1011,"vue2":1095,"vue3":1057},"sources":{},"scenarios":[],"api":{"props":[{"name":"options","type":"Array","def":"[]","req":false,"desc":"—"},{"name":"modelValue","type":"Array","def":"[]","req":false,"desc":"—"},{"name":"cols","type":"Number","def":"3","req":false,"desc":"—"}],"emits":[{"name":"update:modelValue","descZh":"双向绑定更新事件 (v-model)","params":"(val: any) => void"}],"slots":[]},"sourcesRef":{"html":"sources/checkboxcard/html.txt","css":"sources/checkboxcard/css.txt","jsx":"sources/checkboxcard/jsx.txt","vue2":"sources/checkboxcard/vue2.txt","vue3":"sources/checkboxcard/vue3.txt"},"hasContract":true},{"slug":"listpicker","name":"列表选择器 ListPicker","tier":"extension","confidence":"high","specBatch":7,"specFile":"组件7.txt","contractRef":"components/listpicker.json","category":"input","family":null,"familyRole":null,"familyParams":null,"specSummary":"- 下拉面板中显示列表,可多选","files":{"html":"../frameworks/listpicker.html","css":"../frameworks/ListPicker.css","jsx":"../frameworks/ListPicker.jsx","vue2":"../frameworks/ListPicker.vue2.vue","vue3":"../frameworks/ListPicker.vue3.vue"},"sizes":{"html":4595,"css":3191,"jsx":4014,"vue2":5775,"vue3":6059},"sources":{},"scenarios":[],"api":{"props":[{"name":"modelValue","type":"Array","def":"[]","req":false,"desc":"—"},{"name":"placeholder","type":"String","def":"'请选择'","req":false,"desc":"—"}],"emits":[{"name":"update:modelValue","descZh":"双向绑定更新事件 (v-model)","params":"(val: any) => void"},{"name":"change","descZh":"组件交互触发事件","params":"(val: any) => void"}],"slots":[]},"sourcesRef":{"html":"sources/listpicker/html.txt","css":"sources/listpicker/css.txt","jsx":"sources/listpicker/jsx.txt","vue2":"sources/listpicker/vue2.txt","vue3":"sources/listpicker/vue3.txt"},"hasContract":true},{"slug":"cascader","name":"级联选择器 Cascader","tier":"extension","confidence":"high","specBatch":7,"specFile":"组件7.txt","contractRef":"components/cascader.json","category":"input","family":null,"familyRole":null,"familyParams":null,"specSummary":"- 多级下拉选择","files":{"html":"../frameworks/cascader.html","css":"../frameworks/Cascader.css","jsx":"../frameworks/Cascader.jsx","vue2":"../frameworks/Cascader.vue2.vue","vue3":"../frameworks/Cascader.vue3.vue"},"sizes":{"html":7897,"css":3598,"jsx":5614,"vue2":7946,"vue3":8053},"sources":{},"scenarios":[],"api":{"props":[{"name":"modelValue","type":"Array | null","def":"[]","req":false,"desc":"—"},{"name":"filterable","type":"Boolean","def":"true","req":false,"desc":"—"},{"name":"placeholder","type":"String","def":"'请选择'","req":false,"desc":"—"}],"emits":[{"name":"update:modelValue","descZh":"双向绑定更新事件 (v-model)","params":"(val: any) => void"},{"name":"change","descZh":"组件交互触发事件","params":"(val: any) => void"}],"slots":[]},"sourcesRef":{"html":"sources/cascader/html.txt","css":"sources/cascader/css.txt","jsx":"sources/cascader/jsx.txt","vue2":"sources/cascader/vue2.txt","vue3":"sources/cascader/vue3.txt"},"hasContract":true},{"slug":"colorpicker","name":"颜色选择器 ColorPicker","tier":"extension","confidence":"high","specBatch":7,"specFile":"组件7.txt","contractRef":"components/colorpicker.json","category":"input","family":null,"familyRole":null,"familyParams":null,"specSummary":"- 预设色板 + 自定义拾色器","files":{"html":"../frameworks/ColorPicker.html","css":"../frameworks/ColorPicker.css","jsx":"../frameworks/ColorPicker.jsx","vue2":"../frameworks/ColorPicker.vue2.vue","vue3":"../frameworks/ColorPicker.vue3.vue"},"sizes":{"html":3251,"css":1516,"jsx":1917,"vue2":1988,"vue3":1899},"sources":{},"scenarios":[],"api":{"props":[{"name":"value","type":"String","def":"'#2F54EB'","req":false,"desc":"—"},{"name":"presets","type":"Array","def":"['#2F54EB','#1D39C4','#10239E','#CF1322','#8C…","req":false,"desc":"—"}],"emits":[{"name":"change","descZh":"组件交互触发事件","params":"(val: any) => void"}],"slots":[]},"sourcesRef":{"html":"sources/colorpicker/html.txt","css":"sources/colorpicker/css.txt","jsx":"sources/colorpicker/jsx.txt","vue2":"sources/colorpicker/vue2.txt","vue3":"sources/colorpicker/vue3.txt"},"hasContract":true},{"slug":"rangequickpicker","name":"日期范围快捷选择 RangeQuickPicker","tier":"extension","confidence":"high","specBatch":7,"specFile":"组件7.txt","contractRef":"components/rangequickpicker.json","category":"input","family":null,"familyRole":null,"familyParams":null,"specSummary":"- 日期范围选择器增强","files":{"html":"../frameworks/RangeQuickPicker.html","css":"../frameworks/RangeQuickPicker.css","jsx":"../frameworks/RangeQuickPicker.jsx","vue2":"../frameworks/RangeQuickPicker.vue2.vue","vue3":"../frameworks/RangeQuickPicker.vue3.vue"},"sizes":{"html":4846,"css":2211,"jsx":3513,"vue2":3132,"vue3":3107},"sources":{},"scenarios":["RangeQuickPicker 日期范围快捷选择"],"api":{"props":[{"name":"modelValue","type":"Object","def":"({ start: '', end: '' })","req":false,"desc":"—"},{"name":"presets","type":"Array","def":"[ { label: '今天', days: 0 }, { label: '昨天', da…","req":false,"desc":"—"}],"emits":[{"name":"update:modelValue","descZh":"双向绑定更新事件 (v-model)","params":"(val: any) => void"}],"slots":[]},"sourcesRef":{"html":"sources/rangequickpicker/html.txt","css":"sources/rangequickpicker/css.txt","jsx":"sources/rangequickpicker/jsx.txt","vue2":"sources/rangequickpicker/vue2.txt","vue3":"sources/rangequickpicker/vue3.txt"},"hasContract":true},{"slug":"numberrangeinput","name":"数字范围输入 NumberRangeInput","tier":"extension","confidence":"high","specBatch":7,"specFile":"组件7.txt","contractRef":"components/numberrangeinput.json","category":"input","family":null,"familyRole":null,"familyParams":null,"specSummary":"- 输入数字范围","files":{"html":"../frameworks/NumberRangeInput.html","css":"../frameworks/NumberRangeInput.css","jsx":"../frameworks/NumberRangeInput.jsx","vue2":"../frameworks/NumberRangeInput.vue2.vue","vue3":"../frameworks/NumberRangeInput.vue3.vue"},"sizes":{"html":1859,"css":1080,"jsx":1572,"vue2":1952,"vue3":1837},"sources":{},"scenarios":[],"api":{"props":[{"name":"modelValue","type":"Array","def":"['', '']","req":false,"desc":"—"},{"name":"step","type":"Number","def":"1","req":false,"desc":"—"},{"name":"min","type":"Number","def":"-Infinity","req":false,"desc":"—"},{"name":"max","type":"Number","def":"Infinity","req":false,"desc":"—"},{"name":"separator","type":"String","def":"'—'","req":false,"desc":"—"},{"name":"unit","type":"String","def":"''","req":false,"desc":"—"},{"name":"placeholder","type":"Array","def":"['最小', '最大']","req":false,"desc":"—"}],"emits":[{"name":"update:modelValue","descZh":"双向绑定更新事件 (v-model)","params":"(val: any) => void"},{"name":"error","descZh":"组件交互触发事件","params":"(val: any) => void"}],"slots":[]},"sourcesRef":{"html":"sources/numberrangeinput/html.txt","css":"sources/numberrangeinput/css.txt","jsx":"sources/numberrangeinput/jsx.txt","vue2":"sources/numberrangeinput/vue2.txt","vue3":"sources/numberrangeinput/vue3.txt"},"hasContract":true},{"slug":"switchgroup","name":"开关组 SwitchGroup","tier":"extension","confidence":"high","specBatch":7,"specFile":"组件7.txt","contractRef":"components/switchgroup.json","category":"input","family":null,"familyRole":null,"familyParams":null,"specSummary":"- 多个开关组合,可分组","files":{"html":"../frameworks/SwitchGroup.html","css":"../frameworks/SwitchGroup.css","jsx":"../frameworks/SwitchGroup.jsx","vue2":"../frameworks/SwitchGroup.vue2.vue","vue3":"../frameworks/SwitchGroup.vue3.vue"},"sizes":{"html":2487,"css":1332,"jsx":1376,"vue2":1549,"vue3":1471},"sources":{},"scenarios":[],"api":{"props":[{"name":"options","type":"Array","def":"[]","req":false,"desc":"—"},{"name":"modelValue","type":"Array","def":"[]","req":false,"desc":"—"},{"name":"title","type":"String","def":"''","req":false,"desc":"—"},{"name":"selectAll","type":"Boolean","def":"false","req":false,"desc":"—"}],"emits":[{"name":"update:modelValue","descZh":"双向绑定更新事件 (v-model)","params":"(val: any) => void"}],"slots":[]},"sourcesRef":{"html":"sources/switchgroup/html.txt","css":"sources/switchgroup/css.txt","jsx":"sources/switchgroup/jsx.txt","vue2":"sources/switchgroup/vue2.txt","vue3":"sources/switchgroup/vue3.txt"},"hasContract":true},{"slug":"dragupload","name":"拖拽上传 DragUpload","tier":"extension","confidence":"high","specBatch":7,"specFile":"组件7.txt","contractRef":"components/dragupload.json","category":"input","family":null,"familyRole":null,"familyParams":null,"specSummary":"- 支持点击或拖拽文件上传","files":{"html":"../frameworks/DragUpload.html","css":"../frameworks/DragUpload.css","jsx":"../frameworks/DragUpload.jsx","vue2":"../frameworks/DragUpload.vue2.vue","vue3":"../frameworks/DragUpload.vue3.vue"},"sizes":{"html":3702,"css":1962,"jsx":2691,"vue2":2303,"vue3":2172},"sources":{},"scenarios":["DragUpload 拖拽上传"],"api":{"props":[],"emits":[],"slots":[]},"sourcesRef":{"html":"sources/dragupload/html.txt","css":"sources/dragupload/css.txt","jsx":"sources/dragupload/jsx.txt","vue2":"sources/dragupload/vue2.txt","vue3":"sources/dragupload/vue3.txt"},"hasContract":true},{"slug":"signaturepad","name":"签名板 SignaturePad","tier":"extension","confidence":"high","specBatch":7,"specFile":"组件7.txt","contractRef":"components/signaturepad.json","category":"input","family":null,"familyRole":null,"familyParams":null,"specSummary":"- 手写签名区域","files":{"html":"../frameworks/SignaturePad.html","css":"../frameworks/SignaturePad.css","jsx":"../frameworks/SignaturePad.jsx","vue2":"../frameworks/SignaturePad.vue2.vue","vue3":"../frameworks/SignaturePad.vue3.vue"},"sizes":{"html":3328,"css":798,"jsx":2965,"vue2":2511,"vue3":2510},"sources":{},"scenarios":["SignaturePad 签名板"],"api":{"props":[],"emits":[],"slots":[]},"sourcesRef":{"html":"sources/signaturepad/html.txt","css":"sources/signaturepad/css.txt","jsx":"sources/signaturepad/jsx.txt","vue2":"sources/signaturepad/vue2.txt","vue3":"sources/signaturepad/vue3.txt"},"hasContract":true},{"slug":"codeinput","name":"验证码输入 CodeInput","tier":"extension","confidence":"high","specBatch":7,"specFile":"组件7.txt","contractRef":"components/codeinput.json","category":"input","family":"masked-input","familyRole":"variant","familyParams":{"length":6,"autoFocusNext":true,"scan":false},"specSummary":"- 多个独立输入格","files":{"html":"../frameworks/CodeInput.html","css":"../frameworks/CodeInput.css","jsx":"../frameworks/CodeInput.jsx","vue2":"../frameworks/CodeInput.vue2.vue","vue3":"../frameworks/CodeInput.vue3.vue"},"sizes":{"html":4115,"css":1211,"jsx":2755,"vue2":2981,"vue3":2697},"sources":{},"scenarios":["CodeInput 验证码输入"],"api":{"props":[{"name":"modelValue","type":"String","def":"''","req":false,"desc":"—"},{"name":"length","type":"Number","def":"6","req":false,"desc":"—"},{"name":"masked","type":"Boolean","def":"false","req":false,"desc":"—"},{"name":"tip","type":"String","def":"''","req":false,"desc":"—"},{"name":"hasError","type":"Boolean","def":"false","req":false,"desc":"—"}],"emits":[{"name":"update:modelValue","descZh":"双向绑定更新事件 (v-model)","params":"(val: any) => void"},{"name":"change","descZh":"组件交互触发事件","params":"(val: any) => void"}],"slots":[]},"sourcesRef":{"html":"sources/codeinput/html.txt","css":"sources/codeinput/css.txt","jsx":"sources/codeinput/jsx.txt","vue2":"sources/codeinput/vue2.txt","vue3":"sources/codeinput/vue3.txt"},"hasContract":true},{"slug":"passwordinput","name":"密码输入 PasswordInput","tier":"extension","confidence":"high","specBatch":7,"specFile":"组件7.txt","contractRef":"components/passwordinput.json","category":"input","family":"masked-input","familyRole":"variant","familyParams":{"masked":true},"specSummary":"- 密码可见切换","files":{"html":"../frameworks/PasswordInput.html","css":"../frameworks/PasswordInput.css","jsx":"../frameworks/PasswordInput.jsx","vue2":"../frameworks/PasswordInput.vue2.vue","vue3":"../frameworks/PasswordInput.vue3.vue"},"sizes":{"html":3628,"css":1217,"jsx":2124,"vue2":2171,"vue3":2161},"sources":{},"scenarios":["PasswordInput 密码输入"],"api":{"props":[{"name":"modelValue","type":"String","def":"''","req":false,"desc":"—"},{"name":"placeholder","type":"String","def":"'请输入密码'","req":false,"desc":"—"},{"name":"showStrength","type":"Boolean","def":"true","req":false,"desc":"—"}],"emits":[{"name":"update:modelValue","descZh":"双向绑定更新事件 (v-model)","params":"(val: any) => void"},{"name":"change","descZh":"组件交互触发事件","params":"(val: any) => void"}],"slots":[]},"sourcesRef":{"html":"sources/passwordinput/html.txt","css":"sources/passwordinput/css.txt","jsx":"sources/passwordinput/jsx.txt","vue2":"sources/passwordinput/vue2.txt","vue3":"sources/passwordinput/vue3.txt"},"hasContract":true},{"slug":"phoneinput","name":"手机号输入 PhoneInput","tier":"extension","confidence":"high","specBatch":7,"specFile":"组件7.txt","contractRef":"components/phoneinput.json","category":"input","family":"masked-input","familyRole":"variant","familyParams":{"mask":"3-4-4","length":11},"specSummary":"- 国际区号选择","files":{"html":"../frameworks/PhoneInput.html","css":"../frameworks/PhoneInput.css","jsx":"../frameworks/PhoneInput.jsx","vue2":"../frameworks/PhoneInput.vue2.vue","vue3":"../frameworks/PhoneInput.vue3.vue"},"sizes":{"html":2339,"css":1176,"jsx":1810,"vue2":1859,"vue3":1845},"sources":{},"scenarios":["PhoneInput 手机号输入"],"api":{"props":[{"name":"modelValue","type":"String","def":"''","req":false,"desc":"—"},{"name":"placeholder","type":"String","def":"'请输入手机号'","req":false,"desc":"—"},{"name":"codes","type":"Array","def":"[ { value: '+86', label: '中国大陆' }, { value: '…","req":false,"desc":"—"}],"emits":[{"name":"update:modelValue","descZh":"双向绑定更新事件 (v-model)","params":"(val: any) => void"}],"slots":[]},"sourcesRef":{"html":"sources/phoneinput/html.txt","css":"sources/phoneinput/css.txt","jsx":"sources/phoneinput/jsx.txt","vue2":"sources/phoneinput/vue2.txt","vue3":"sources/phoneinput/vue3.txt"},"hasContract":true},{"slug":"messagepro","name":"全局提示增强 MessagePro","tier":"extension","confidence":"high","specBatch":7,"specFile":"组件7.txt","contractRef":"components/messagepro.json","category":"feedback","family":"notice","familyRole":"base","familyParams":{"placement":"top"},"specSummary":"- 支持多种类型:成功、错误、警告、信息、加载","files":{"html":"../frameworks/MessagePro.html","css":"../frameworks/MessagePro.css","jsx":"../frameworks/MessagePro.jsx","vue2":"../frameworks/MessagePro.vue2.vue","vue3":"../frameworks/MessagePro.vue3.vue"},"sizes":{"html":2508,"css":1445,"jsx":1600,"vue2":1675,"vue3":1534},"sources":{},"scenarios":[],"api":{"props":[{"name":"duration","type":"Number","def":"3000","req":false,"desc":"—"}],"emits":[],"slots":[]},"sourcesRef":{"html":"sources/messagepro/html.txt","css":"sources/messagepro/css.txt","jsx":"sources/messagepro/jsx.txt","vue2":"sources/messagepro/vue2.txt","vue3":"sources/messagepro/vue3.txt"},"hasContract":true},{"slug":"notificationpro","name":"通知提醒增强 NotificationPro","tier":"extension","confidence":"high","specBatch":7,"specFile":"组件7.txt","contractRef":"components/notificationpro.json","category":"feedback","family":"notice","familyRole":"variant","familyParams":{"placement":"top-right","action":true},"specSummary":"- 右上角弹出","files":{"html":"../frameworks/NotificationPro.html","css":"../frameworks/NotificationPro.css","jsx":"../frameworks/NotificationPro.jsx","vue2":"../frameworks/NotificationPro.vue2.vue","vue3":"../frameworks/NotificationPro.vue3.vue"},"sizes":{"html":2609,"css":1551,"jsx":1711,"vue2":1714,"vue3":1594},"sources":{},"scenarios":[],"api":{"props":[{"name":"duration","type":"Number","def":"4500","req":false,"desc":"—"}],"emits":[],"slots":[]},"sourcesRef":{"html":"sources/notificationpro/html.txt","css":"sources/notificationpro/css.txt","jsx":"sources/notificationpro/jsx.txt","vue2":"sources/notificationpro/vue2.txt","vue3":"sources/notificationpro/vue3.txt"},"hasContract":true},{"slug":"progressvariants","name":"进度条变体 ProgressVariants","tier":"extension","confidence":"high","specBatch":7,"specFile":"组件7.txt","contractRef":"components/progressvariants.json","category":"feedback","family":"loading-state","familyRole":"variant","familyParams":{"shape":"bar"},"specSummary":"- 线型、圆形、仪表盘型","files":{"html":"../frameworks/ProgressVariants.html","css":"../frameworks/ProgressVariants.css","jsx":"../frameworks/ProgressVariants.jsx","vue2":"../frameworks/ProgressVariants.vue2.vue","vue3":"../frameworks/ProgressVariants.vue3.vue"},"sizes":{"html":2420,"css":1644,"jsx":1590,"vue2":1927,"vue3":1799},"sources":{},"scenarios":[],"api":{"props":[{"name":"type","type":"String","def":"'line'","req":false,"desc":"—"},{"name":"percent","type":"Number","def":"0","req":false,"desc":"—"},{"name":"status","type":"String","def":"'normal'","req":false,"desc":"—"},{"name":"showInfo","type":"Boolean","def":"true","req":false,"desc":"—"}],"emits":[],"slots":[]},"sourcesRef":{"html":"sources/progressvariants/html.txt","css":"sources/progressvariants/css.txt","jsx":"sources/progressvariants/jsx.txt","vue2":"sources/progressvariants/vue2.txt","vue3":"sources/progressvariants/vue3.txt"},"hasContract":true},{"slug":"skeletonpro","name":"骨架屏增强 SkeletonPro","tier":"extension","confidence":"high","specBatch":7,"specFile":"组件7.txt","contractRef":"components/skeletonpro.json","category":"feedback","family":"loading-state","familyRole":"variant","familyParams":{"shape":"block"},"specSummary":"- 支持多种占位形状","files":{"html":"../frameworks/SkeletonPro.html","css":"../frameworks/SkeletonPro.css","jsx":"../frameworks/SkeletonPro.jsx","vue2":"../frameworks/SkeletonPro.vue2.vue","vue3":"../frameworks/SkeletonPro.vue3.vue"},"sizes":{"html":1369,"css":1063,"jsx":827,"vue2":918,"vue3":803},"sources":{},"scenarios":[],"api":{"props":[{"name":"rows","type":"Number","def":"3","req":false,"desc":"—"},{"name":"avatar","type":"Boolean","def":"false","req":false,"desc":"—"},{"name":"block","type":"Boolean","def":"false","req":false,"desc":"—"},{"name":"active","type":"Boolean","def":"true","req":false,"desc":"—"}],"emits":[],"slots":[]},"sourcesRef":{"html":"sources/skeletonpro/html.txt","css":"sources/skeletonpro/css.txt","jsx":"sources/skeletonpro/jsx.txt","vue2":"sources/skeletonpro/vue2.txt","vue3":"sources/skeletonpro/vue3.txt"},"hasContract":true},{"slug":"emptypro","name":"空状态增强 EmptyPro","tier":"extension","confidence":"high","specBatch":7,"specFile":"组件7.txt","contractRef":"components/emptypro.json","category":"feedback","family":"feedback-page","familyRole":"variant","familyParams":{"status":"empty"},"specSummary":"- 多种场景:无数据、无权限、搜索无结果、网络错误","files":{"html":"../frameworks/EmptyPro.html","css":"../frameworks/EmptyPro.css","jsx":"../frameworks/EmptyPro.jsx","vue2":"../frameworks/EmptyPro.vue2.vue","vue3":"../frameworks/EmptyPro.vue3.vue"},"sizes":{"html":1986,"css":1279,"jsx":1387,"vue2":1631,"vue3":1629},"sources":{},"scenarios":[],"api":{"props":[{"name":"type","type":"String","def":"'empty'","req":false,"desc":"—"},{"name":"icon","type":"String","def":"''","req":false,"desc":"—"},{"name":"title","type":"String","def":"''","req":false,"desc":"—"},{"name":"desc","type":"String","def":"''","req":false,"desc":"—"},{"name":"actionText","type":"String","def":"''","req":false,"desc":"—"},{"name":"secondaryText","type":"String","def":"''","req":false,"desc":"—"}],"emits":[{"name":"action","descZh":"组件交互触发事件","params":"(val: any) => void"},{"name":"secondary","descZh":"组件交互触发事件","params":"(val: any) => void"}],"slots":[]},"sourcesRef":{"html":"sources/emptypro/html.txt","css":"sources/emptypro/css.txt","jsx":"sources/emptypro/jsx.txt","vue2":"sources/emptypro/vue2.txt","vue3":"sources/emptypro/vue3.txt"},"hasContract":true},{"slug":"loadingoverlay","name":"加载遮罩 LoadingOverlay","tier":"extension","confidence":"high","specBatch":7,"specFile":"组件7.txt","contractRef":"components/loadingoverlay.json","category":"feedback","family":"loading-state","familyRole":"base","familyParams":{"shape":"overlay"},"specSummary":"- 全屏或局部遮罩","files":{"html":"../frameworks/LoadingOverlay.html","css":"../frameworks/LoadingOverlay.css","jsx":"../frameworks/LoadingOverlay.jsx","vue2":"../frameworks/LoadingOverlay.vue2.vue","vue3":"../frameworks/LoadingOverlay.vue3.vue"},"sizes":{"html":1746,"css":1113,"jsx":434,"vue2":544,"vue3":497},"sources":{},"scenarios":[],"api":{"props":[{"name":"visible","type":"Boolean","def":"false","req":false,"desc":"—"},{"name":"text","type":"String","def":"''","req":false,"desc":"—"},{"name":"inline","type":"Boolean","def":"false","req":false,"desc":"—"},{"name":"dark","type":"Boolean","def":"false","req":false,"desc":"—"}],"emits":[],"slots":[]},"sourcesRef":{"html":"sources/loadingoverlay/html.txt","css":"sources/loadingoverlay/css.txt","jsx":"sources/loadingoverlay/jsx.txt","vue2":"sources/loadingoverlay/vue2.txt","vue3":"sources/loadingoverlay/vue3.txt"},"hasContract":true},{"slug":"resultvariants","name":"结果页变体 ResultVariants","tier":"extension","confidence":"high","specBatch":7,"specFile":"组件7.txt","contractRef":"components/resultvariants.json","category":"feedback","family":"feedback-page","familyRole":"base","familyParams":{},"specSummary":"- 成功、失败、警告、信息","files":{"html":"../frameworks/ResultVariants.html","css":"../frameworks/ResultVariants.css","jsx":"../frameworks/ResultVariants.jsx","vue2":"../frameworks/ResultVariants.vue2.vue","vue3":"../frameworks/ResultVariants.vue3.vue"},"sizes":{"html":2098,"css":1687,"jsx":940,"vue2":1116,"vue3":1090},"sources":{},"scenarios":[],"api":{"props":[{"name":"type","type":"String","def":"'success'","req":false,"desc":"—"},{"name":"title","type":"String","def":"''","req":false,"desc":"—"},{"name":"desc","type":"String","def":"''","req":false,"desc":"—"},{"name":"actionText","type":"String","def":"''","req":false,"desc":"—"},{"name":"secondaryText","type":"String","def":"''","req":false,"desc":"—"}],"emits":[{"name":"action","descZh":"组件交互触发事件","params":"(val: any) => void"},{"name":"secondary","descZh":"组件交互触发事件","params":"(val: any) => void"}],"slots":[{"name":"extra","descZh":"","custom":true}]},"sourcesRef":{"html":"sources/resultvariants/html.txt","css":"sources/resultvariants/css.txt","jsx":"sources/resultvariants/jsx.txt","vue2":"sources/resultvariants/vue2.txt","vue3":"sources/resultvariants/vue3.txt"},"hasContract":true},{"slug":"exceptionvariants","name":"异常页变体 ExceptionVariants","tier":"extension","confidence":"high","specBatch":7,"specFile":"组件7.txt","contractRef":"components/exceptionvariants.json","category":"feedback","family":"feedback-page","familyRole":"variant","familyParams":{"status":"error"},"specSummary":"- 403、404、500、502","files":{"html":"../frameworks/ExceptionVariants.html","css":"../frameworks/ExceptionVariants.css","jsx":"../frameworks/ExceptionVariants.jsx","vue2":"../frameworks/ExceptionVariants.vue2.vue","vue3":"../frameworks/ExceptionVariants.vue3.vue"},"sizes":{"html":2059,"css":1301,"jsx":1311,"vue2":1521,"vue3":1508},"sources":{},"scenarios":[],"api":{"props":[{"name":"type","type":"String","def":"'404'","req":false,"desc":"—"},{"name":"emoji","type":"String","def":"''","req":false,"desc":"—"},{"name":"title","type":"String","def":"''","req":false,"desc":"—"},{"name":"desc","type":"String","def":"''","req":false,"desc":"—"}],"emits":[{"name":"home","descZh":"组件交互触发事件","params":"(val: any) => void"},{"name":"retry","descZh":"组件交互触发事件","params":"(val: any) => void"}],"slots":[]},"sourcesRef":{"html":"sources/exceptionvariants/html.txt","css":"sources/exceptionvariants/css.txt","jsx":"sources/exceptionvariants/jsx.txt","vue2":"sources/exceptionvariants/vue2.txt","vue3":"sources/exceptionvariants/vue3.txt"},"hasContract":true},{"slug":"confirmmodal","name":"确认弹窗 ConfirmModal","tier":"extension","confidence":"high","specBatch":7,"specFile":"组件7.txt","contractRef":"components/confirmmodal.json","category":"feedback","family":"modal-shell","familyRole":"variant","familyParams":{"footer":"confirm-cancel"},"specSummary":"- 用于危险操作","files":{"html":"../frameworks/ConfirmModal.html","css":"../frameworks/ConfirmModal.css","jsx":"../frameworks/ConfirmModal.jsx","vue2":"../frameworks/ConfirmModal.vue2.vue","vue3":"../frameworks/ConfirmModal.vue3.vue"},"sizes":{"html":2729,"css":2312,"jsx":1525,"vue2":1554,"vue3":1564},"sources":{},"scenarios":[],"api":{"props":[{"name":"visible","type":"Boolean","def":"false","req":false,"desc":"—"},{"name":"title","type":"String","def":"'确认操作'","req":false,"desc":"—"},{"name":"content","type":"String","def":"''","req":false,"desc":"—"},{"name":"confirmType","type":"String","def":"'danger'","req":false,"desc":"—"},{"name":"confirmText","type":"String","def":"'确定'","req":false,"desc":"—"},{"name":"cancelText","type":"String","def":"'取消'","req":false,"desc":"—"},{"name":"loading","type":"Boolean","def":"false","req":false,"desc":"—"},{"name":"dontAsk","type":"Boolean","def":"false","req":false,"desc":"—"}],"emits":[{"name":"cancel","descZh":"组件交互触发事件","params":"(val: any) => void"},{"name":"confirm","descZh":"组件交互触发事件","params":"(val: any) => void"}],"slots":[]},"sourcesRef":{"html":"sources/confirmmodal/html.txt","css":"sources/confirmmodal/css.txt","jsx":"sources/confirmmodal/jsx.txt","vue2":"sources/confirmmodal/vue2.txt","vue3":"sources/confirmmodal/vue3.txt"},"hasContract":true},{"slug":"alertmodal","name":"提示弹窗 AlertModal","tier":"extension","confidence":"high","specBatch":7,"specFile":"组件7.txt","contractRef":"components/alertmodal.json","category":"feedback","family":"modal-shell","familyRole":"variant","familyParams":{"tone":"info","footer":"confirm"},"specSummary":"- 信息提示","files":{"html":"../frameworks/AlertModal.html","css":"../frameworks/AlertModal.css","jsx":"../frameworks/AlertModal.jsx","vue2":"../frameworks/AlertModal.vue2.vue","vue3":"../frameworks/AlertModal.vue3.vue"},"sizes":{"html":2368,"css":1661,"jsx":854,"vue2":984,"vue3":950},"sources":{},"scenarios":[],"api":{"props":[{"name":"visible","type":"Boolean","def":"false","req":false,"desc":"—"},{"name":"type","type":"String","def":"'info'","req":false,"desc":"—"},{"name":"title","type":"String","def":"'提示'","req":false,"desc":"—"},{"name":"content","type":"String","def":"''","req":false,"desc":"—"},{"name":"okText","type":"String","def":"'知道了'","req":false,"desc":"—"}],"emits":[{"name":"ok","descZh":"组件交互触发事件","params":"(val: any) => void"}],"slots":[]},"sourcesRef":{"html":"sources/alertmodal/html.txt","css":"sources/alertmodal/css.txt","jsx":"sources/alertmodal/jsx.txt","vue2":"sources/alertmodal/vue2.txt","vue3":"sources/alertmodal/vue3.txt"},"hasContract":true},{"slug":"formmodal","name":"表单弹窗 FormModal","tier":"extension","confidence":"high","specBatch":7,"specFile":"组件7.txt","contractRef":"components/formmodal.json","category":"feedback","family":"modal-shell","familyRole":"variant","familyParams":{"columns":"2","footer":"confirm-cancel"},"specSummary":"- 弹窗内嵌表单","files":{"html":"../frameworks/FormModal.html","css":"../frameworks/FormModal.css","jsx":"../frameworks/FormModal.jsx","vue2":"../frameworks/FormModal.vue2.vue","vue3":"../frameworks/FormModal.vue3.vue"},"sizes":{"html":3237,"css":1822,"jsx":2602,"vue2":2501,"vue3":2415},"sources":{},"scenarios":["FormModal 表单弹窗"],"api":{"props":[{"name":"visible","type":"Boolean","def":"false","req":false,"desc":"—"},{"name":"title","type":"String","def":"'表单'","req":false,"desc":"—"},{"name":"fields","type":"Array","def":"[ { key: 'name', label: '姓名', required: true,…","req":true,"desc":"—"},{"name":"value","type":"Object","def":"({})","req":false,"desc":"—"}],"emits":[{"name":"cancel","descZh":"组件交互触发事件","params":"(val: any) => void"},{"name":"submit","descZh":"组件交互触发事件","params":"(val: any) => void"}],"slots":[]},"sourcesRef":{"html":"sources/formmodal/html.txt","css":"sources/formmodal/css.txt","jsx":"sources/formmodal/jsx.txt","vue2":"sources/formmodal/vue2.txt","vue3":"sources/formmodal/vue3.txt"},"hasContract":true},{"slug":"fullscreenmodal","name":"全屏弹窗 FullScreenModal","tier":"extension","confidence":"high","specBatch":7,"specFile":"组件7.txt","contractRef":"components/fullscreenmodal.json","category":"feedback","family":"modal-shell","familyRole":"variant","familyParams":{"fullscreen":true},"specSummary":"- 全屏展示内容","files":{"html":"../frameworks/FullScreenModal.html","css":"../frameworks/FullScreenModal.css","jsx":"../frameworks/FullScreenModal.jsx","vue2":"../frameworks/FullScreenModal.vue2.vue","vue3":"../frameworks/FullScreenModal.vue3.vue"},"sizes":{"html":1890,"css":1060,"jsx":743,"vue2":727,"vue3":714},"sources":{},"scenarios":["FullScreenModal 全屏弹窗"],"api":{"props":[{"name":"visible","type":"Boolean","def":"false","req":false,"desc":"—"},{"name":"title","type":"String","def":"'全屏弹窗'","req":false,"desc":"—"}],"emits":[{"name":"cancel","descZh":"组件交互触发事件","params":"(val: any) => void"},{"name":"ok","descZh":"组件交互触发事件","params":"(val: any) => void"}],"slots":[{"name":"default","descZh":"默认插槽(组件文本或主体内容)","custom":false}]},"sourcesRef":{"html":"sources/fullscreenmodal/html.txt","css":"sources/fullscreenmodal/css.txt","jsx":"sources/fullscreenmodal/jsx.txt","vue2":"sources/fullscreenmodal/vue2.txt","vue3":"sources/fullscreenmodal/vue3.txt"},"hasContract":true},{"slug":"themeswitcher","name":"主题切换 ThemeSwitcher","tier":"extension","confidence":"high","specBatch":7,"specFile":"组件7.txt","contractRef":"components/themeswitcher.json","category":"system","family":"preference-switcher","familyRole":"base","familyParams":{"extra":"brand-palette","applyScope":"global"},"specSummary":"- 明暗主题","files":{"html":"../frameworks/ThemeSwitcher.html","css":"../frameworks/ThemeSwitcher.css","jsx":"../frameworks/ThemeSwitcher.jsx","vue2":"../frameworks/ThemeSwitcher.vue2.vue","vue3":"../frameworks/ThemeSwitcher.vue3.vue"},"sizes":{"html":4136,"css":1696,"jsx":1678,"vue2":1665,"vue3":1619},"sources":{},"scenarios":["ThemeSwitcher 主题切换"],"api":{"props":[{"name":"mode","type":"String","def":"'light'","req":false,"desc":"—"},{"name":"brand","type":"String","def":"'#2F54EB'","req":false,"desc":"—"}],"emits":[{"name":"update:mode","descZh":"双向绑定更新事件 (v-model)","params":"(val: any) => void"},{"name":"update:brand","descZh":"双向绑定更新事件 (v-model)","params":"(val: any) => void"}],"slots":[]},"sourcesRef":{"html":"sources/themeswitcher/html.txt","css":"sources/themeswitcher/css.txt","jsx":"sources/themeswitcher/jsx.txt","vue2":"sources/themeswitcher/vue2.txt","vue3":"sources/themeswitcher/vue3.txt"},"hasContract":true},{"slug":"layoutswitcher","name":"布局切换 LayoutSwitcher","tier":"extension","confidence":"high","specBatch":7,"specFile":"组件7.txt","contractRef":"components/layoutswitcher.json","category":"system","family":"preference-switcher","familyRole":"variant","familyParams":{"extra":"none","applyScope":"global"},"specSummary":"- 侧边、顶部、混合导航","files":{"html":"../frameworks/LayoutSwitcher.html","css":"../frameworks/LayoutSwitcher.css","jsx":"../frameworks/LayoutSwitcher.jsx","vue2":"../frameworks/LayoutSwitcher.vue2.vue","vue3":"../frameworks/LayoutSwitcher.vue3.vue"},"sizes":{"html":2200,"css":1125,"jsx":930,"vue2":956,"vue3":969},"sources":{},"scenarios":["LayoutSwitcher 布局切换"],"api":{"props":[{"name":"modelValue","type":"String","def":"'side'","req":false,"desc":"—"},{"name":"options","type":"Array","def":"[ { value: 'side', label: '侧边布局' }, { value: …","req":false,"desc":"—"}],"emits":[{"name":"update:modelValue","descZh":"双向绑定更新事件 (v-model)","params":"(val: any) => void"}],"slots":[]},"sourcesRef":{"html":"sources/layoutswitcher/html.txt","css":"sources/layoutswitcher/css.txt","jsx":"sources/layoutswitcher/jsx.txt","vue2":"sources/layoutswitcher/vue2.txt","vue3":"sources/layoutswitcher/vue3.txt"},"hasContract":true},{"slug":"densityswitcher","name":"密度切换 DensitySwitcher","tier":"extension","confidence":"high","specBatch":7,"specFile":"组件7.txt","contractRef":"components/densityswitcher.json","category":"system","family":"preference-switcher","familyRole":"variant","familyParams":{"extra":"demo-list","applyScope":"global"},"specSummary":"- 宽松、默认、紧凑","files":{"html":"../frameworks/DensitySwitcher.html","css":"../frameworks/DensitySwitcher.css","jsx":"../frameworks/DensitySwitcher.jsx","vue2":"../frameworks/DensitySwitcher.vue2.vue","vue3":"../frameworks/DensitySwitcher.vue3.vue"},"sizes":{"html":1716,"css":1296,"jsx":1051,"vue2":1099,"vue3":1100},"sources":{},"scenarios":["DensitySwitcher 密度切换"],"api":{"props":[{"name":"modelValue","type":"String","def":"'default'","req":false,"desc":"—"},{"name":"options","type":"Array","def":"[ { value: 'loose', label: '宽松' }, { value: '…","req":false,"desc":"—"},{"name":"rows","type":"Array","def":"[ { name: '用户管理', count: '128 项' }, { name: '…","req":false,"desc":"—"}],"emits":[{"name":"update:modelValue","descZh":"双向绑定更新事件 (v-model)","params":"(val: any) => void"}],"slots":[]},"sourcesRef":{"html":"sources/densityswitcher/html.txt","css":"sources/densityswitcher/css.txt","jsx":"sources/densityswitcher/jsx.txt","vue2":"sources/densityswitcher/vue2.txt","vue3":"sources/densityswitcher/vue3.txt"},"hasContract":true},{"slug":"employeecard","name":"员工卡片 EmployeeCard","tier":"extension","confidence":"high","specBatch":9,"specFile":"组件9.txt","contractRef":"components/employeecard.json","category":"display","family":"card-shell","familyRole":"variant","familyParams":{"sections":["media","body"]},"specSummary":"- 用于员工列表或组织架构展示","files":{"html":"../frameworks/employeecard.html","css":"../frameworks/EmployeeCard.css","jsx":"../frameworks/EmployeeCard.jsx","vue2":"../frameworks/EmployeeCard.vue2.vue","vue3":"../frameworks/EmployeeCard.vue3.vue"},"sizes":{"html":4937,"css":2221,"jsx":2307,"vue2":3568,"vue3":3632},"sources":{},"scenarios":[],"api":{"props":[{"name":"employee","type":"Object","def":"—","req":true,"desc":"—"}],"emits":[{"name":"message","descZh":"组件交互触发事件","params":"(val: any) => void"},{"name":"view","descZh":"组件交互触发事件","params":"(val: any) => void"},{"name":"edit","descZh":"组件交互触发事件","params":"(val: any) => void"}],"slots":[]},"sourcesRef":{"html":"sources/employeecard/html.txt","css":"sources/employeecard/css.txt","jsx":"sources/employeecard/jsx.txt","vue2":"sources/employeecard/vue2.txt","vue3":"sources/employeecard/vue3.txt"},"hasContract":true}]};