@inf-monkeys-tech/monkeys-design 2.0.168 → 2.0.169

This diff represents the content of publicly available package versions that have been released to one of the supported registries. The information contained in this diff is provided for informational purposes only and reflects changes between package versions as they appear in their respective public registries.
@@ -1 +1 @@
1
- {"version":3,"sources":["../../../src/ui/collection.tsx","../../../src/ui/panel-surface.ts","../../../src/ui/internal.ts","../../../src/theme-system/theme-tokens.ts","../../../src/locale/en-US.ts","../../../src/locale/zh-CN.ts","../../../src/locale/resolve-locale.ts","../../../src/provider/context.ts","../../../src/ui/theme/base.json","../../../src/ui/theme/tenants/bsd.json","../../../src/ui/theme/config.ts","../../../src/ui/theme/presets.ts","../../../src/ui/theme/theme.tsx","../../../src/ui/scroll-surface.tsx","../../../src/ui/motion.ts","../../../src/ui/theme/effect-tokens.ts","../../../src/ui/effects.tsx","../../../src/ui/sample-color.ts","../../../src/ui/button-light-edge.tsx","../../../src/ui/controls.tsx","../../../src/ui/overlays.tsx","../../../src/ui/sortable-collection.tsx","../../../src/ui/surface-effect.tsx","../../../src/ui/patterns.tsx"],"names":["PanelSurfaceContext","createContext","cx","__name","values","durationMilliseconds","token","value","unit","useControllable","defaultValue","fallback","onChange","controlled","initial","useRef","warned","local","setLocal","useState","current","next","useFormReset","ref","reset","latest","useEffect","element","form","active","listener","event","CSS_EXTENSION_KEY","isRecord","readCssExtension","extensions","extension","formatNumber","formatDimension","formatDuration","formatColorComponent","hexToSrgb","hex","colorSrgbComponents","component","srgbToHsl","red","green","blue","maximum","minimum","lightness","delta","saturation","hue","formatHslTriplet","formatColor","alpha","components","alphaSuffix","formatFontFamily","families","genericFamilies","family","formatShadow","shadow","formatGradient","stops","stop","gradient","formatTokenValue","styleToken","toCssVariableName","path","prefix","normalized","assertCssVariablePrefix","selectModePath","paths","basePath","colorMode","contextualPath","HSL_SEMANTIC_VARIABLES","THEME_TOKEN_CSS_ALIASES","variableName","getThemeTokenCssValue","compiled","compileThemeTokens","input","options","resolved","resolveThemeTokens","contract","density","variablePrefix","cssValues","cssVariables","canonicalVariableSources","cssValue","existingPath","alias","axis","cssText","left","right","name","enUS","page","pageCount","start","end","total","count","columnId","duration","completed","used","percent","code","zhCN","mergeMonkeysLocaleMessages","base","override","defaultMonkeysLocale","EMPTY_ENVIRONMENT","EMPTY_PORTAL","MONKEYS_PROVIDER_CONTEXTS_KEY","createMonkeysProviderContexts","getMonkeysProviderContexts","host","existing","contexts","providerContexts","MonkeysLocaleContext","MonkeysThemeContext","MonkeysDirectionContext","MonkeysEnvironmentContext","useMonkeysLocale","useContext","useMonkeysResolvedTheme","useMonkeysDirection","useMonkeysEnvironment","useMonkeysPortalOptions","base_default","bsd_default","isGroup","mergeThemeTokens","merge","a","b","result","key","uiVariable","baseThemeTokens","uiThemePresets","getTenantTheme","tenant","preset","defaultThemeTokens","defaultResolvedTokens","compileUITheme","tokens","variablesFromTheme","variables","UIThemeContext","PortalDepthContext","useUIDirection","explicit","theme","inherited","environment","documentDirection","setDocumentDirection","root","update","observer","useUILocale","locale","useTooltipScope","inputDocuments","observeInput","document","releaseInput","previous","pointer","keyboard","entry","useUIResolvedTokens","useMemo","Portal","children","direction","depth","setHost","baseLayer","nestingStep","content","jsx","createPortal","ScrollSurface","forwardRef","Element","className","onScroll","dir","props","delay","jsxs","useShaderEnabled","enabled","setEnabled","motion","colors","resolveEffectTokens","color","number","effect","BottomGlow","style","animated","hostStyle","sampleInk","channels","index","ButtonLightEdge","filterId","useId","hostRef","module","setModule","ready","setReady","shape","setShape","loaded","button","width","height","radiusValue","radius","inset","Button","variant","icon","tone","size","loading","lightEdge","toggle","checked","defaultChecked","onCheckedChange","required","type","onClick","onPointerDown","onKeyDown","pressed","setPressed","Switch","onValueChange","onValueCommit","disabled","readOnly","onPointerMove","onPointerCancel","onPointerUp","onKeyUp","field","useField","selected","setSelected","useImperativeHandle","option","motionEnabled","interaction","setInteraction","sample","samples","setSamples","layer","position","location","fraction","item","t","background","locked","commit","FieldContext","Input","InputTagSelectionControl","InputTagsControl","InputSearchControl","InputNumberControl","nativeProps","mode","inputValue","onInputValueChange","removeLabel","placeholder","onCompositionStart","onCompositionEnd","tags","setTags","draft","setDraft","announcement","setAnnouncement","composing","initialTags","remove","_","tag","InputTag","label","onRemove","X","items","onAdd","onInvalid","add","group","Plus","parseNumberValue","text","setText","SearchField","onSearch","clearLabel","clear","editor","Search","setValue","indicator","ChevronDown","MultipleSelect","SingleSelect","id","describedBy","invalid","_variant","fieldAttributes","ChevronUp","Check","open","defaultOpen","onOpenChange","shown","setShown","trigger","setValidationFailed","generatedId","triggerId","requiredId","validationFailed","selectedLabels","SegmentedControl","SectionTitle","Tabs","Tooltip","delayDuration","side","scoped","milliseconds","tooltip","src","alt","Sorting","canStartCollectionDrag","activeNode","target","_CardMouseSensor","MouseSensor","nativeEvent","_options","context","CardMouseSensor","_CardTouchSensor","TouchSensor","CardTouchSensor","SortableCollection","reorderItems","reorderAxis","reorderGroupField","reorderDisabled","onReorder","suppressClick","sensors","useSensors","useSensor","KeyboardSensor","sortableKeyboardCoordinates","ids","groups","over","DndContext","args","closestCenter","SortableContext","rectSortingStrategy","horizontalListSortingStrategy","verticalListSortingStrategy","SortableCollectionItem","itemId","ActiveItem","setNodeRef","attributes","listeners","transform","transition","isDragging","useSortable","CSS","Panel","title","actions","classNames","SplitLayout","primary","sidebar","ratio","primaryAspectRatio","minPrimarySize","maxPrimarySize","gap","sidebarWidth","share","useAspectRatio","dimension","CollectionToolbar","search","filters","CollectionSection","action","lead","CardGrid","view","minCardWidth","columnGap","Card","chrome","breadcrumbSurface","onSelectedChange","headingLevel","image","imageAlt","imagePosition","imageStyle","media","mediaOverlay","emptyMedia","href","onOpen","header","meta","description","stats","dragHandle","navigation","navigationLabel","footer","failedSource","setFailedSource","detail","hasDescription","hasEntry","descriptionId","Heading","tooltipTitle","headingContent","heading","mediaContent","ImageOff","statistics","StatGroup","body","sortable","dragId","sortableState","setCardRef","node","cardStyle","dragListeners","dragAttributes","GripVertical","columns","SurfaceEffect","shaders","setShaders","rendererState","setRendererState","surface","parent","move","bounds","leave","wrap","BrandBanner","caption","sortableId"],"mappings":"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","file":"index.mjs","sourcesContent":["import { forwardRef, useContext, useId, useState, type AnchorHTMLAttributes, type ButtonHTMLAttributes, type CSSProperties, type HTMLAttributes, type ReactNode } from 'react';\nimport { DndContext, KeyboardSensor, PointerSensor, closestCenter, useSensor, useSensors, type DragEndEvent } from '@dnd-kit/core';\nimport { SortableContext, rectSwappingStrategy, sortableKeyboardCoordinates, useSortable } from '@dnd-kit/sortable';\nimport { CSS } from '@dnd-kit/utilities';\nimport { PanelSurfaceContext } from './panel-surface';\nimport { cx } from './internal';\nimport { Check, GripVertical, ImageOff } from 'lucide-react';\nimport { ScrollSurface } from './scroll-surface';\nimport { BottomGlow } from './effects';\nimport { SurfaceEffect } from './surface-effect';\nimport { Tooltip } from './overlays';\nimport { SortableCollection, type CollectionSortingProps } from './sortable-collection';\n\nexport interface PanelProps extends Omit<HTMLAttributes<HTMLElement>, 'title'> { title?: ReactNode; actions?: ReactNode; density?: 'comfortable' | 'compact'; classNames?: { header?: string; body?: string }; children?: ReactNode }\nexport const Panel = forwardRef<HTMLElement, PanelProps>(function Panel({ title, actions, density = 'comfortable', classNames, className, children, ...props }, ref) {\n const id = useId();\n const surface = useContext(PanelSurfaceContext);\n if (surface === 'bento') return <section {...props} className={cx('monkeys-ui-bento-panel', className)} data-surface=\"bento\">\n <ScrollSurface ref={ref} aria-labelledby={title ? id : props['aria-labelledby']} className=\"monkeys-ui-bento-scroll\">\n {title || actions ? <div className={cx('monkeys-ui-panel-header', classNames?.header)}>{title ? <h2 id={id}>{title}</h2> : null}{actions}</div> : null}\n <div className={cx('monkeys-ui-panel-body', classNames?.body)}>{children}</div>\n </ScrollSurface>\n </section>;\n return <ScrollSurface {...props} ref={ref} data-density={density} aria-labelledby={title ? id : props['aria-labelledby']} className={cx('monkeys-ui-panel', className)}>{title || actions ? <div className={cx('monkeys-ui-panel-header', classNames?.header)}>{title ? <h2 id={id}>{title}</h2> : null}{actions}</div> : null}<div className={cx('monkeys-ui-panel-body', classNames?.body)}>{children}</div></ScrollSurface>;\n});\nexport interface PageShellProps extends HTMLAttributes<HTMLDivElement> { header?: ReactNode; classNames?: { main?: string } }\nexport function PageShell({ header, className, classNames, children, ...props }: PageShellProps) { return <div {...props} className={cx('monkeys-ui-page', className)}>{header}<main className={cx('monkeys-ui-page-main', classNames?.main)}>{children}</main></div>; }\nexport interface AppHeaderProps extends HTMLAttributes<HTMLElement> { logo: ReactNode; navigation?: ReactNode; account?: ReactNode }\nexport function AppHeader({ logo, navigation, account, className, ...props }: AppHeaderProps) { return <header {...props} className={cx('monkeys-ui-header', className)}><div className=\"monkeys-ui-header-logo\">{logo}</div><nav aria-label=\"主导航\" className=\"monkeys-ui-header-nav\">{navigation}</nav><div className=\"monkeys-ui-header-account\">{account}</div></header>; }\nexport interface SplitLayoutProps extends HTMLAttributes<HTMLDivElement> {\n primary?: ReactNode;\n /** Compatibility alias for primary. */\n sidebar?: ReactNode;\n side?: 'start' | 'end';\n direction?: 'horizontal' | 'vertical';\n /** Primary : remaining pane, after subtracting the gap. */\n ratio?: readonly [number, number];\n /** Width / height of the primary pane in vertical layouts; takes priority over ratio. */\n primaryAspectRatio?: number;\n minPrimarySize?: number | string;\n maxPrimarySize?: number | string;\n gap?: number | string;\n sidebarWidth?: string;\n}\nexport function SplitLayout({ primary, sidebar, side = 'start', direction = 'horizontal', ratio, primaryAspectRatio, minPrimarySize, maxPrimarySize, gap, sidebarWidth, children, className, style, ...props }: SplitLayoutProps) {\n const validRatio = ratio && ratio.every(value => Number.isFinite(value) && value > 0) && Number.isFinite(ratio[0] + ratio[1]);\n const share = validRatio ? ratio[0] / (ratio[0] + ratio[1]) : 0.5;\n const useAspectRatio = direction === 'vertical' && typeof primaryAspectRatio === 'number' && Number.isFinite(primaryAspectRatio) && primaryAspectRatio > 0;\n const dimension = (value: number | string | undefined) => typeof value === 'number' ? Math.max(0, value) + 'px' : value;\n return <div {...props} data-side={side} data-direction={direction} data-sizing={useAspectRatio ? 'aspect-ratio' : direction === 'horizontal' && !ratio && sidebarWidth === undefined ? 'responsive' : undefined} data-proportional={!!ratio || direction === 'vertical' ? true : undefined} className={cx('monkeys-ui-split', className)} style={{\n '--monkeys-ui-sidebar-width': sidebarWidth ?? 'var(--monkeys-ui-layout-sidebar-width,var(--monkeys-ui-default-layout-sidebar-width))',\n '--monkeys-ui-split-share': share,\n '--monkeys-ui-split-primary-aspect': useAspectRatio ? primaryAspectRatio : undefined,\n '--monkeys-ui-split-primary-min': dimension(minPrimarySize),\n '--monkeys-ui-split-primary-max': dimension(maxPrimarySize),\n '--monkeys-ui-split-gap': dimension(gap),\n ...style,\n } as CSSProperties}><div className=\"monkeys-ui-split-sidebar\">{primary !== undefined ? primary : sidebar}</div><div className=\"monkeys-ui-split-main\">{children}</div></div>;\n}\nexport interface CollectionToolbarProps extends HTMLAttributes<HTMLDivElement> { search?: ReactNode; filters?: ReactNode; actions?: ReactNode }\nexport function CollectionToolbar({ search, filters, actions, className, ...props }: CollectionToolbarProps) { return <div {...props} className={cx('monkeys-ui-toolbar', className)}><div className=\"monkeys-ui-toolbar-search\">{search}</div>{filters}<div className=\"monkeys-ui-toolbar-actions\">{actions}</div></div>; }\nexport interface CollectionSectionProps extends Omit<HTMLAttributes<HTMLElement>, 'title'> { title: ReactNode; action?: ReactNode; lead?: ReactNode }\nexport function CollectionSection({ title, action, lead, children, className, ...props }: CollectionSectionProps) { const id = useId(); return <section {...props} aria-labelledby={id} data-layout={lead ? 'featured' : undefined} className={cx('monkeys-ui-collection', className)}><div className={cx('monkeys-ui-collection-heading', !!lead && !action && 'monkeys-ui-visually-hidden')}><h2 id={id} tabIndex={-1} className={lead ? 'monkeys-ui-visually-hidden' : undefined}>{title}</h2>{action}</div>{lead ? <div className=\"monkeys-ui-collection-row\"><div className=\"monkeys-ui-collection-lead\">{lead}</div><div className=\"monkeys-ui-collection-members\">{children}</div></div> : children}</section>; }\nexport interface CardGridProps extends HTMLAttributes<HTMLDivElement>, CollectionSortingProps { view?: 'grid' | 'list'; minCardWidth?: number; columnGap?: number }\nexport function CardGrid({ view = 'grid', minCardWidth, columnGap, className, style, children, reorderItems, reorderAxis, reorderGroupField, reorderDisabled, onReorder, ...props }: CardGridProps) { return <div {...props} role=\"list\" data-view={view} className={cx('monkeys-ui-card-grid', className)} style={{ '--monkeys-ui-card-width': minCardWidth === undefined ? 'var(--monkeys-ui-layout-card-min-width,var(--monkeys-ui-default-layout-card-min-width))' : minCardWidth + 'px', ...(columnGap !== undefined ? { '--monkeys-ui-grid-column-gap': columnGap + 'px' } : {}), ...style } as CSSProperties}><SortableCollection {...{reorderItems, reorderAxis, reorderGroupField, reorderDisabled, onReorder}}>{children}</SortableCollection></div>; }\nexport interface CardProps extends Omit<HTMLAttributes<HTMLElement>, 'title' | 'content'> {\n title: ReactNode;\n variant?: 'card' | 'row' | 'detail' | 'preview' | 'content';\n /** Let a containing panel own the surface while preserving card content and interactions.\n * Add data-frame=\"bento\" to adapt detail borders and inset to the containing Bento tokens. */\n chrome?: 'card' | 'plain';\n selected?: boolean;\n onSelectedChange?: (selected: boolean) => void;\n size?: 'sm' | 'md' | 'lg';\n headingLevel?: 1 | 2 | 3 | 4 | 5 | 6;\n image?: string;\n imageAlt?: string;\n imagePosition?: string;\n imageStyle?: CSSProperties;\n media?: ReactNode;\n mediaOverlay?: ReactNode;\n emptyMedia?: ReactNode;\n href?: string;\n onOpen?: () => void;\n header?: ReactNode;\n /** Opt out of the detail breadcrumb chip without changing its content or actions. */\n breadcrumbSurface?: 'default' | 'transparent';\n meta?: ReactNode;\n /** Revealed on hover/focus for compact layouts; always visible in detail. Supplied by the host. */\n description?: ReactNode;\n content?: ReactNode;\n stats?: StatItem[];\n actions?: ReactNode;\n /** Independent handle; host owns drag/keyboard behavior and ordering. Not rendered in detail/preview. */\n dragHandle?: Omit<ButtonHTMLAttributes<HTMLButtonElement>, 'children' | 'type'> & { 'aria-label': string; id?: string };\n navigation?: ReactNode;\n navigationLabel?: string;\n footer?: ReactNode;\n classNames?: { image?: string; content?: string; actions?: string; heading?: string; media?: string };\n}\n/** Presentation only. Fields, formatting, labels and action contents belong to the host. */\nexport const Card = forwardRef<HTMLElement, CardProps>(function Card({ title, variant = 'card', chrome = 'card', breadcrumbSurface = 'default', selected, onSelectedChange, size, headingLevel, image, imageAlt = '', imagePosition, imageStyle, media, mediaOverlay, emptyMedia, href, onOpen, header, meta, description, content, children, stats = [], actions, dragHandle, navigation, navigationLabel, footer, className, classNames, style, ...props }, ref) {\n const [failedSource, setFailedSource] = useState<string>();\n const id = useId();\n const detail = variant === 'detail';\n const hasDescription = description !== undefined && description !== null && description !== false && description !== '';\n const hasEntry = variant !== 'preview' && !!(onSelectedChange || href || onOpen);\n const descriptionId = id + '-description';\n const describedBy = [props['aria-describedby'], hasDescription ? descriptionId : undefined].filter(Boolean).join(' ') || undefined;\n const Heading = `h${headingLevel ?? (detail ? 1 : 3)}` as 'h1' | 'h2' | 'h3' | 'h4' | 'h5' | 'h6';\n const tooltipTitle = detail && typeof title === 'string' && title.length > 0;\n const headingContent = <Heading id={id} className={cx('monkeys-ui-record-heading', classNames?.heading)} tabIndex={tooltipTitle ? 0 : undefined} title={!detail && typeof title === 'string' ? title : undefined}>{title}</Heading>;\n const heading = tooltipTitle ? <Tooltip content={title}>{headingContent}</Tooltip> : headingContent;\n const mediaContent = media ?? (image && failedSource !== image ? <img className={cx(detail ? 'monkeys-ui-sidebar-image' : 'monkeys-ui-record-card-image', classNames?.image)} src={image} alt={imageAlt} style={{ objectPosition: imagePosition, ...imageStyle }} onError={() => setFailedSource(image)} loading=\"lazy\" /> : emptyMedia ?? (!detail ? <div className=\"monkeys-ui-media-placeholder\" aria-label=\"暂无图片\"><ImageOff size={32} aria-hidden=\"true\" /></div> : null));\n const statistics = stats.length ? <StatGroup items={stats} /> : null;\n const body = content ?? children;\n const sortable = Boolean(dragHandle && variant !== 'preview' && variant !== 'detail');\n const dragId = dragHandle?.id ?? (typeof (props as Record<string, unknown>)['data-item-id'] === 'string' ? (props as Record<string, unknown>)['data-item-id'] as string : id);\n const sortableState = useSortable({ id: dragId, disabled: !sortable });\n const setCardRef = (node: HTMLElement | null) => { sortableState.setNodeRef(node); if (typeof ref === 'function') ref(node); else if (ref) ref.current = node; };\n const cardStyle = { ...style, ...(sortableState.transform ? { transform: CSS.Transform.toString(sortableState.transform), transition: sortableState.transition } : {}), ...(sortableState.isDragging ? { opacity: 0.5 } : {}) } as CSSProperties;\n const dragListeners = sortableState.listeners ?? {};\n const dragAttributes = sortableState.attributes;\n if (detail) return <ScrollSurface as=\"aside\" {...props} ref={ref} aria-labelledby={props['aria-label'] ? undefined : id} data-variant={variant} data-chrome={chrome === 'plain' ? chrome : undefined} className={cx('monkeys-ui-card', 'monkeys-ui-record-detail', className)}>\n <div className={cx('monkeys-ui-sidebar-media', classNames?.media)}>{mediaContent}{mediaOverlay}</div>\n <div className=\"monkeys-ui-sidebar-header\"><div className=\"monkeys-ui-breadcrumbs\" data-surface={breadcrumbSurface === 'transparent' ? 'transparent' : undefined}>{header}</div>{actions ? <div className={cx('monkeys-ui-sidebar-header-actions', classNames?.actions)}>{actions}</div> : null}</div>\n <div className={cx('monkeys-ui-sidebar-details', classNames?.content)}>\n <BottomGlow className=\"monkeys-ui-detail-bottom-glow\" style={{ height: '100%' }} aria-hidden=\"true\" />\n {heading}{meta ? <div className=\"monkeys-ui-sidebar-meta\">{meta}</div> : null}\n {description ? <div className=\"monkeys-ui-description\">{description}</div> : null}{body}{statistics}\n {navigation ? <nav aria-label={navigationLabel ?? '记录导航'} className=\"monkeys-ui-sidebar-navigation\">{navigation}</nav> : null}\n {footer ? <div className=\"monkeys-ui-sidebar-actions\">{footer}</div> : null}\n </div>\n </ScrollSurface>;\n return <article {...props} ref={setCardRef} style={cardStyle} aria-labelledby={props['aria-label'] ? undefined : id} aria-describedby={hasEntry ? props['aria-describedby'] : describedBy} tabIndex={props.tabIndex ?? (hasDescription && !hasEntry ? 0 : undefined)} data-variant={variant} data-chrome={chrome === 'plain' ? chrome : undefined} data-selected={selected || undefined} data-size={size} data-preview={variant === 'preview' || undefined} data-dragging={sortableState.isDragging || undefined} className={cx('monkeys-ui-card', 'monkeys-ui-record-card', className)}>\n {variant === 'content' && !media && !image ? null : media !== undefined ? <div className={cx('monkeys-ui-record-media', classNames?.media)}>{mediaContent}</div> : mediaContent}\n {mediaOverlay ? <div className=\"monkeys-ui-media-overlay\">{mediaOverlay}</div> : null}{header}\n {hasEntry && (onSelectedChange ? <button type=\"button\" aria-pressed={selected ?? false} onClick={() => onSelectedChange(!selected)} aria-labelledby={id} aria-describedby={describedBy} className=\"monkeys-ui-card-entry\" /> : href ? <a href={href} aria-labelledby={id} aria-describedby={describedBy} className=\"monkeys-ui-card-entry\" /> : <button type=\"button\" onClick={onOpen} aria-labelledby={id} aria-describedby={describedBy} className=\"monkeys-ui-card-entry\" />)}\n {sortable ? <button {...dragHandle} {...dragAttributes} {...dragListeners} ref={sortableState.setActivatorNodeRef} type=\"button\" draggable={false} className={cx('monkeys-ui-card-drag-handle', dragHandle!.className)} onClick={event => { event.stopPropagation(); dragHandle!.onClick?.(event); }}><GripVertical aria-hidden=\"true\" /></button> : null}\n {selected ? <span className=\"monkeys-ui-card-selection-mark\" aria-hidden=\"true\"><Check size={14} /></span> : null}\n <div className={cx('monkeys-ui-card-info', classNames?.content)}>\n {heading}{meta}{body}{statistics}\n {hasDescription ? <div className=\"monkeys-ui-card-description\"><div className=\"monkeys-ui-card-description-clip\"><div id={descriptionId} className=\"monkeys-ui-description\">{description}</div></div></div> : null}\n </div>\n {actions ? <div className={cx('monkeys-ui-card-actions', classNames?.actions)}>{actions}</div> : null}{footer}\n </article>;\n});\nexport interface CardDragProviderProps { children: ReactNode; items: string[]; onMove?: (activeId: string, overId: string) => void }\n/** Shared dnd-kit boundary; hosts own persistence and list-specific reorder rules. */\nexport function CardDragProvider({ children, items, onMove }: CardDragProviderProps) {\n const sensors = useSensors(useSensor(PointerSensor, { activationConstraint: { distance: 5 } }), useSensor(KeyboardSensor, { coordinateGetter: sortableKeyboardCoordinates }));\n const handleEnd = ({ active, over }: DragEndEvent) => { if (over && active.id !== over.id) onMove?.(String(active.id), String(over.id)); };\n return <DndContext sensors={sensors} collisionDetection={closestCenter} onDragEnd={handleEnd}><SortableContext items={items} strategy={rectSwappingStrategy}>{children}</SortableContext></DndContext>;\n}\nexport interface StatItem { label: string; value: ReactNode }\nexport interface StatGroupProps extends HTMLAttributes<HTMLDListElement> {\n items: StatItem[];\n /** Opt into metric tiles with a fixed column count; rows grow with the items. */\n columns?: 2 | 3;\n}\nexport function StatGroup({ items, columns, className, ...props }: StatGroupProps) { return <dl {...props} data-columns={columns} className={cx('monkeys-ui-stats', className)}>{items.map(item => <div key={item.label}><dt>{item.label}</dt><dd>{item.value}</dd></div>)}</dl>; }\n","import { createContext } from 'react';\n\n/** Internal surface choice for compound controls embedded in a Bento workspace. */\nexport const PanelSurfaceContext = createContext<'catalog' | 'bento'>('catalog');\n","import { useEffect, useRef, useState, type RefObject } from 'react';\nexport const cx = (...values: Array<string | false | undefined>) => values.filter(Boolean).join(' ');\n/** Radix durations are milliseconds; DTCG also allows seconds. */\nexport function durationMilliseconds(token: unknown) {\n const { value, unit } = token as { value: number; unit: 's' | 'ms' };\n return unit === 's' ? value * 1000 : value;\n}\nexport function useControllable<T>(value: T | undefined, defaultValue: T | undefined, fallback: T, onChange?: (value: T) => void) {\n const controlled = value !== undefined;\n const initial = useRef(controlled);\n const warned = useRef(false);\n if (process.env.NODE_ENV !== 'production' && !warned.current && ((value !== undefined && defaultValue !== undefined) || initial.current !== controlled)) {\n console.error('monkeys-design UI: choose controlled or uncontrolled state; do not supply both value and defaultValue or switch modes.');\n warned.current = true;\n }\n const [local, setLocal] = useState(defaultValue ?? fallback);\n const current = controlled ? value : local;\n const update = (next: T) => { if (!controlled) setLocal(next); if (next !== current) onChange?.(next); };\n return [current, update] as const;\n}\n\n/** Native reset is cancelable. Restore local state after every reset listener ran. */\nexport function useFormReset<T extends HTMLElement>(ref: RefObject<T>, reset: () => void) {\n const latest = useRef(reset);\n latest.current = reset;\n useEffect(() => {\n const element = ref.current;\n const form = element && ('form' in element ? (element as unknown as { form: HTMLFormElement | null }).form : element.closest('form'));\n if (!form) return;\n let active = true;\n const listener = (event: Event) => queueMicrotask(() => { if (active && !event.defaultPrevented) latest.current(); });\n form.addEventListener('reset', listener);\n return () => { active = false; form.removeEventListener('reset', listener); };\n });\n}\n","import type {\n ResolvedThemeToken,\n ThemeColorValue,\n ThemeDimensionValue,\n ThemeDurationValue,\n ThemeTokenExtensions,\n ThemeTokens,\n} from '@inf-monkeys-tech/monkeys/contracts';\nimport { resolveThemeTokens } from '@inf-monkeys-tech/monkeys/runtime';\n\nexport type MonkeysThemeColorMode = 'light' | 'dark' | (string & {});\nexport type MonkeysThemeDensity = 'compact' | 'default' | 'comfortable';\n\nexport interface CompileThemeTokensOptions {\n colorMode?: MonkeysThemeColorMode;\n density?: MonkeysThemeDensity;\n variablePrefix?: string;\n}\n\nexport interface CompiledThemeTokens {\n contract: ThemeTokens;\n colorMode: MonkeysThemeColorMode;\n density: MonkeysThemeDensity;\n values: Readonly<Record<string, unknown>>;\n cssValues: Readonly<Record<string, string>>;\n cssVariables: Readonly<Record<string, string>>;\n cssText: string;\n}\n\nexport interface ApplyThemeTokensOptions extends CompileThemeTokensOptions {\n target?: HTMLElement | null;\n themeId?: string;\n}\n\nexport interface ClearThemeTokensOptions {\n target?: HTMLElement | null;\n}\n\ntype ThemeTokenCssAliasAxis = 'colorMode' | 'density';\ntype ThemeTokenCssAliasFormat = 'hsl' | 'css';\n\ninterface ThemeTokenCssAlias {\n variableName: string;\n axis: ThemeTokenCssAliasAxis;\n expectedType: ResolvedThemeToken['type'];\n format: ThemeTokenCssAliasFormat;\n}\n\ntype CssExtension = {\n gradient?: {\n kind?: 'linear' | 'radial';\n angle?: number;\n };\n};\n\nconst CSS_EXTENSION_KEY = 'com.infmonkeys.css';\nconst APPLIED_VARIABLES = new WeakMap<object, Set<string>>();\n\nfunction isRecord(value: unknown): value is Record<string, unknown> {\n return value !== null && typeof value === 'object' && !Array.isArray(value);\n}\n\nfunction readCssExtension(extensions?: ThemeTokenExtensions): CssExtension | undefined {\n const extension = extensions?.[CSS_EXTENSION_KEY];\n return isRecord(extension) ? extension as CssExtension : undefined;\n}\n\nfunction formatNumber(value: number): string {\n return Number.isInteger(value) ? String(value) : String(Number(value.toFixed(6)));\n}\n\nfunction formatDimension(value: ThemeDimensionValue): string {\n return `${formatNumber(value.value)}${value.unit}`;\n}\n\nfunction formatDuration(value: ThemeDurationValue): string {\n return `${formatNumber(value.value)}${value.unit}`;\n}\n\nfunction formatColorComponent(value: number | 'none'): string {\n return value === 'none' ? value : formatNumber(value);\n}\n\nfunction hexToSrgb(hex: string): [number, number, number] {\n return [\n Number.parseInt(hex.slice(1, 3), 16) / 255,\n Number.parseInt(hex.slice(3, 5), 16) / 255,\n Number.parseInt(hex.slice(5, 7), 16) / 255,\n ];\n}\n\nfunction colorSrgbComponents(value: ThemeColorValue): [number, number, number] {\n if (value.colorSpace === 'srgb' && value.components.every((component) => typeof component === 'number')) {\n return value.components as [number, number, number];\n }\n if (value.hex) return hexToSrgb(value.hex);\n throw new TypeError(\n `Web semantic colors in ${value.colorSpace} require a six-digit hex fallback for hsl(var(--token)) consumers.`,\n );\n}\n\nfunction srgbToHsl([red, green, blue]: [number, number, number]): [number, number, number] {\n const maximum = Math.max(red, green, blue);\n const minimum = Math.min(red, green, blue);\n const lightness = (maximum + minimum) / 2;\n if (maximum === minimum) return [0, 0, lightness * 100];\n const delta = maximum - minimum;\n const saturation = lightness > 0.5\n ? delta / (2 - maximum - minimum)\n : delta / (maximum + minimum);\n let hue: number;\n if (maximum === red) hue = (green - blue) / delta + (green < blue ? 6 : 0);\n else if (maximum === green) hue = (blue - red) / delta + 2;\n else hue = (red - green) / delta + 4;\n return [(hue / 6) * 360, saturation * 100, lightness * 100];\n}\n\nfunction formatHslTriplet(value: ThemeColorValue): string {\n if (value.colorSpace === 'hsl' && value.components.every((component) => typeof component === 'number')) {\n const [hue, saturation, lightness] = value.components as [number, number, number];\n return `${formatNumber(hue)} ${formatNumber(saturation)}% ${formatNumber(lightness)}%`;\n }\n const [hue, saturation, lightness] = srgbToHsl(colorSrgbComponents(value));\n return `${formatNumber(hue)} ${formatNumber(saturation)}% ${formatNumber(lightness)}%`;\n}\n\nfunction formatColor(value: ThemeColorValue): string {\n const alpha = value.alpha ?? 1;\n if (value.hex && alpha === 1) return value.hex;\n const components = value.components.map(formatColorComponent).join(' ');\n const alphaSuffix = alpha === 1 ? '' : ` / ${formatNumber(alpha)}`;\n switch (value.colorSpace) {\n case 'srgb': {\n const rgb = value.components.map((component) => component === 'none' ? 'none' : formatNumber(component * 255));\n return `rgb(${rgb.join(' ')}${alphaSuffix})`;\n }\n case 'hsl':\n return `hsl(${formatColorComponent(value.components[0])} ${formatColorComponent(value.components[1])}% ${formatColorComponent(value.components[2])}%${alphaSuffix})`;\n case 'hwb':\n return `hwb(${formatColorComponent(value.components[0])} ${formatColorComponent(value.components[1])}% ${formatColorComponent(value.components[2])}%${alphaSuffix})`;\n case 'lab':\n case 'lch':\n case 'oklab':\n case 'oklch':\n return `${value.colorSpace}(${components}${alphaSuffix})`;\n default:\n return `color(${value.colorSpace} ${components}${alphaSuffix})`;\n }\n}\n\nfunction formatFontFamily(value: string | string[]): string {\n const families = Array.isArray(value) ? value : [value];\n const genericFamilies = new Set([\n 'serif', 'sans-serif', 'monospace', 'cursive', 'fantasy', 'system-ui',\n 'ui-serif', 'ui-sans-serif', 'ui-monospace', 'ui-rounded', 'math', 'emoji', 'fangsong',\n ]);\n return families.map((family) => {\n if (genericFamilies.has(family) || /^[a-zA-Z][\\w-]*$/.test(family)) return family;\n return `\"${family.replace(/\\\\/g, '\\\\\\\\').replace(/\"/g, '\\\\\"')}\"`;\n }).join(', ');\n}\n\nfunction formatShadow(value: unknown): string {\n const shadows = Array.isArray(value) ? value : [value];\n return shadows.map((shadow) => {\n if (!isRecord(shadow)) throw new TypeError('DTCG shadow values must be objects.');\n return [\n formatDimension(shadow.offsetX as ThemeDimensionValue),\n formatDimension(shadow.offsetY as ThemeDimensionValue),\n formatDimension(shadow.blur as ThemeDimensionValue),\n formatDimension(shadow.spread as ThemeDimensionValue),\n formatColor(shadow.color as ThemeColorValue),\n shadow.inset === true ? 'inset' : '',\n ].filter(Boolean).join(' ');\n }).join(', ');\n}\n\nfunction formatGradient(value: unknown, extensions?: ThemeTokenExtensions): string {\n if (!Array.isArray(value)) throw new TypeError('DTCG gradient values must be arrays.');\n const stops = value.map((stop) => {\n if (!isRecord(stop)) throw new TypeError('DTCG gradient stops must be objects.');\n return `${formatColor(stop.color as ThemeColorValue)} ${formatNumber(Number(stop.position) * 100)}%`;\n }).join(', ');\n const gradient = readCssExtension(extensions)?.gradient;\n if (gradient?.kind === 'radial') return `radial-gradient(${stops})`;\n return `linear-gradient(${formatNumber(gradient?.angle ?? 90)}deg, ${stops})`;\n}\n\nfunction formatTokenValue(token: ResolvedThemeToken): string {\n switch (token.type) {\n case 'color':\n return formatColor(token.value as ThemeColorValue);\n case 'dimension':\n return formatDimension(token.value as ThemeDimensionValue);\n case 'fontFamily':\n return formatFontFamily(token.value as string | string[]);\n case 'fontWeight':\n case 'number':\n return String(token.value);\n case 'duration':\n return formatDuration(token.value as ThemeDurationValue);\n case 'cubicBezier':\n return `cubic-bezier(${(token.value as number[]).map(formatNumber).join(', ')})`;\n case 'strokeStyle': {\n if (typeof token.value === 'string') return token.value;\n const value = token.value as { dashArray: ThemeDimensionValue[] };\n return value.dashArray.map(formatDimension).join(' ');\n }\n case 'border': {\n const value = token.value as { color: ThemeColorValue; width: ThemeDimensionValue; style: unknown };\n const styleToken: ResolvedThemeToken = { ...token, type: 'strokeStyle', value: value.style };\n return `${formatDimension(value.width)} ${formatTokenValue(styleToken)} ${formatColor(value.color)}`;\n }\n case 'transition': {\n const value = token.value as { duration: ThemeDurationValue; delay: ThemeDurationValue; timingFunction: number[] };\n return `${formatDuration(value.duration)} cubic-bezier(${value.timingFunction.map(formatNumber).join(', ')}) ${formatDuration(value.delay)}`;\n }\n case 'shadow':\n return formatShadow(token.value);\n case 'gradient':\n return formatGradient(token.value, token.extensions);\n case 'typography': {\n const value = token.value as {\n fontFamily: string | string[];\n fontSize: ThemeDimensionValue;\n fontWeight: string | number;\n lineHeight: number;\n };\n return `${value.fontWeight} ${formatDimension(value.fontSize)}/${formatNumber(value.lineHeight)} ${formatFontFamily(value.fontFamily)}`;\n }\n }\n}\n\nfunction toCssVariableName(path: string, prefix: string): string {\n const normalized = path\n .replace(/([a-z0-9])([A-Z])/g, '$1-$2')\n .replace(/[^a-zA-Z0-9]+/g, '-')\n .replace(/^-+|-+$/g, '')\n .toLowerCase();\n return `--${prefix}-${normalized}`;\n}\n\nfunction assertCssVariablePrefix(prefix: string): void {\n if (!/^[a-zA-Z][a-zA-Z0-9-]*$/.test(prefix)) {\n throw new TypeError(\n 'Theme token variablePrefix must start with a letter and contain only letters, numbers, or hyphens.',\n );\n }\n}\n\nfunction selectModePath(\n paths: ReadonlySet<string>,\n basePath: string,\n colorMode: MonkeysThemeColorMode,\n): string | undefined {\n const contextualPath = `${basePath}.${colorMode}`;\n if (paths.has(contextualPath)) return contextualPath;\n return paths.has(basePath) ? basePath : undefined;\n}\n\nconst HSL_SEMANTIC_VARIABLES: Readonly<Record<string, string>> = {\n 'semantic.color.background': '--background',\n 'semantic.color.foreground': '--foreground',\n 'semantic.color.card': '--card',\n 'semantic.color.card-foreground': '--card-foreground',\n 'semantic.color.popover': '--popover',\n 'semantic.color.popover-foreground': '--popover-foreground',\n 'semantic.color.primary': '--primary',\n 'semantic.color.primary-foreground': '--primary-foreground',\n 'semantic.color.secondary': '--secondary',\n 'semantic.color.secondary-foreground': '--secondary-foreground',\n 'semantic.color.muted': '--muted',\n 'semantic.color.muted-foreground': '--muted-foreground',\n 'semantic.color.accent': '--accent',\n 'semantic.color.accent-foreground': '--accent-foreground',\n 'semantic.color.destructive': '--destructive',\n 'semantic.color.destructive-foreground': '--destructive-foreground',\n 'semantic.color.success': '--success',\n 'semantic.color.success-foreground': '--success-foreground',\n 'semantic.color.warning': '--warning',\n 'semantic.color.warning-foreground': '--warning-foreground',\n 'semantic.color.border': '--border',\n 'semantic.color.input': '--input',\n 'semantic.color.ring': '--ring',\n 'semantic.color.media-surface': '--media-surface',\n 'semantic.color.media-foreground': '--media-foreground',\n 'semantic.color.media-overlay': '--media-overlay',\n 'semantic.color.radar-canvas': '--radar-canvas',\n 'semantic.color.radar-panel': '--radar-panel',\n 'semantic.color.radar-border': '--radar-border',\n 'semantic.color.radar-shell-border': '--radar-shell-border',\n 'semantic.color.radar-grid': '--radar-grid',\n 'semantic.color.radar-axis': '--radar-axis',\n 'semantic.color.radar-series-one': '--radar-series-one',\n 'semantic.color.radar-series-two': '--radar-series-two',\n 'semantic.color.radar-series-three': '--radar-series-three',\n 'semantic.color.radar-series-four': '--radar-series-four',\n};\n\nconst THEME_TOKEN_CSS_ALIASES: Readonly<Record<string, ThemeTokenCssAlias>> = Object.freeze({\n ...Object.fromEntries(\n Object.entries(HSL_SEMANTIC_VARIABLES).map(([path, variableName]) => [path, {\n variableName,\n axis: 'colorMode',\n expectedType: 'color',\n format: 'hsl',\n }]),\n ),\n 'semantic.color.neocard': {\n variableName: '--neocard',\n axis: 'colorMode',\n expectedType: 'color',\n format: 'css',\n },\n 'semantic.radius.base': {\n variableName: '--radius',\n axis: 'colorMode',\n expectedType: 'dimension',\n format: 'css',\n },\n 'semantic.spacing.global': {\n variableName: '--global-spacing',\n axis: 'density',\n expectedType: 'dimension',\n format: 'css',\n },\n 'semantic.gradient.brand': {\n variableName: '--monkeys-gradient',\n axis: 'colorMode',\n expectedType: 'gradient',\n format: 'css',\n },\n 'semantic.font.body': {\n variableName: '--font-sans',\n axis: 'colorMode',\n expectedType: 'fontFamily',\n format: 'css',\n },\n});\n\nexport function resolveThemeTokenCssVariable(reference: string): string {\n const path = reference.startsWith('$') ? reference.slice(1).trim() : reference.trim();\n if (!/^[a-z][a-z0-9]*(?:[.-][a-z0-9]+)*$/i.test(path)) {\n throw new TypeError(`Invalid Design Token path ${reference}.`);\n }\n const alias = THEME_TOKEN_CSS_ALIASES[path];\n if (alias) return alias.format === 'hsl' ? `hsl(var(${alias.variableName}))` : `var(${alias.variableName})`;\n return `var(${toCssVariableName(path, 'monkeys')})`;\n}\n\nexport function getThemeTokenCssValue(\n compiled: CompiledThemeTokens,\n basePath: string,\n): string | undefined {\n const path = selectModePath(new Set(Object.keys(compiled.cssValues)), basePath, compiled.colorMode);\n return path ? compiled.cssValues[path] : undefined;\n}\n\nexport function compileThemeTokens(\n input: ThemeTokens,\n options: CompileThemeTokensOptions = {},\n): CompiledThemeTokens {\n const resolved = resolveThemeTokens(input);\n const contract = resolved.document;\n const colorMode = options.colorMode ?? 'light';\n const density = options.density ?? 'default';\n const variablePrefix = options.variablePrefix ?? 'monkeys';\n assertCssVariablePrefix(variablePrefix);\n const values: Record<string, unknown> = {};\n const cssValues: Record<string, string> = {};\n const cssVariables: Record<string, string> = {};\n const canonicalVariableSources = new Map<string, string>();\n\n for (const [path, token] of resolved.tokens) {\n values[path] = token.value;\n const cssValue = formatTokenValue(token);\n cssValues[path] = cssValue;\n const variableName = toCssVariableName(path, variablePrefix);\n const existingPath = canonicalVariableSources.get(variableName);\n if (existingPath) {\n throw new TypeError(\n `Theme token paths ${existingPath} and ${path} both compile to ${variableName}. Rename one token.`,\n );\n }\n canonicalVariableSources.set(variableName, path);\n cssVariables[variableName] = cssValue;\n }\n\n const paths = new Set(resolved.tokens.keys());\n for (const [basePath, alias] of Object.entries(THEME_TOKEN_CSS_ALIASES)) {\n const axis = alias.axis === 'density' ? density : colorMode;\n const path = selectModePath(paths, basePath, axis);\n if (!path) continue;\n const token = resolved.tokens.get(path);\n if (!token || token.type !== alias.expectedType) {\n throw new TypeError(`${path} must be a ${alias.expectedType} token to drive ${alias.variableName}.`);\n }\n cssVariables[alias.variableName] = alias.format === 'hsl'\n ? formatHslTriplet(token.value as ThemeColorValue)\n : cssValues[path];\n }\n\n const cssText = Object.entries(cssVariables)\n .sort(([left], [right]) => left.localeCompare(right))\n .map(([name, value]) => `${name}:${value};`)\n .join('');\n\n return {\n contract,\n colorMode,\n density,\n values: Object.freeze(values),\n cssValues: Object.freeze(cssValues),\n cssVariables: Object.freeze(cssVariables),\n cssText,\n };\n}\n\nexport function applyThemeTokens(\n input: ThemeTokens,\n options: ApplyThemeTokensOptions = {},\n): CompiledThemeTokens {\n const compiled = compileThemeTokens(input, options);\n const target = options.target ?? (typeof document === 'undefined' ? null : document.documentElement);\n if (!target) return compiled;\n\n const previouslyApplied = APPLIED_VARIABLES.get(target) ?? new Set<string>();\n const nextVariables = new Set(Object.keys(compiled.cssVariables));\n for (const name of previouslyApplied) {\n if (!nextVariables.has(name)) target.style.removeProperty(name);\n }\n for (const [name, value] of Object.entries(compiled.cssVariables)) {\n target.style.setProperty(name, value);\n }\n APPLIED_VARIABLES.set(target, nextVariables);\n\n if (options.themeId) target.dataset.monkeysTheme = options.themeId;\n else delete target.dataset.monkeysTheme;\n target.dataset.monkeysColorMode = compiled.colorMode;\n target.dataset.monkeysDensity = compiled.density;\n return compiled;\n}\n\nexport function clearThemeTokens(options: ClearThemeTokensOptions = {}): void {\n const target = options.target ?? (typeof document === 'undefined' ? null : document.documentElement);\n if (!target) return;\n\n const previouslyApplied = APPLIED_VARIABLES.get(target) ?? new Set<string>();\n for (const name of previouslyApplied) target.style.removeProperty(name);\n APPLIED_VARIABLES.delete(target);\n\n delete target.dataset.monkeysTheme;\n delete target.dataset.monkeysColorMode;\n delete target.dataset.monkeysDensity;\n}\n","import type { MonkeysLocale } from \"./types\";\n\nexport const enUS = {\n locale: \"en-US\",\n messages: {\n pagination: {\n navigation: \"Pagination\",\n first: \"First\",\n previous: \"Previous\",\n next: \"Next\",\n last: \"Last\",\n page: ({ page, pageCount }) => `Page ${page} of ${pageCount}`,\n currentPage: ({ page, pageCount }) =>\n `Page ${page} of ${pageCount}, current page`,\n emptyResults: \"0 results\",\n range: ({ start, end, total }) => `${start}-${end} of ${total}`,\n selected: ({ count }) => `${count} selected`,\n pageSize: \"Items per page\",\n loadBatchSize: \"Items per load\",\n perLoad: \"Items per load\",\n jumpToPage: \"Jump to page\",\n pages: \"pages\",\n clickToJump: \"Click to jump to a page\",\n },\n dialog: {\n close: \"Close dialog\",\n },\n dropdownMenu: {\n actions: \"Actions\",\n },\n loading: {\n spinner: \"Loading\",\n },\n layout: {\n resizePanels: \"Resize panels\",\n expandPanel: \"Expand\",\n collapsePanel: \"Collapse\",\n movePanel: \"Move\",\n moveBefore: \"Move earlier\",\n moveAfter: \"Move later\",\n },\n steps: {\n label: \"Progress\",\n current: \"Current\",\n completed: \"Completed\",\n error: \"Error\",\n disabled: \"Disabled\",\n },\n numberInput: {\n increment: \"Increase value\",\n decrement: \"Decrease value\",\n },\n passwordInput: {\n showPassword: \"Show password\",\n hidePassword: \"Hide password\",\n },\n multiSelect: {\n placeholder: \"Select options\",\n empty: \"No options\",\n removeOption: ({ value }) => `Remove ${value}`,\n },\n table: {\n dragColumn: ({ columnId }) => `Drag column ${columnId}`,\n resizeColumn: ({ columnId }) => `Resize column ${columnId}`,\n sortColumn: ({ columnId }) =>\n columnId ? `Sort column ${columnId}` : \"Sort column\",\n loadingRow: \"Loading table row\",\n },\n toolbar: {\n theme: {\n label: \"Appearance\",\n toggle: \"Toggle theme\",\n auto: \"Auto\",\n light: \"Light\",\n dark: \"Dark\",\n },\n language: {\n label: \"Language\",\n switch: \"Switch language\",\n },\n },\n toast: {\n errorTitle: \"Error\",\n warningTitle: \"Warning\",\n defaultErrorDescription: \"Something went wrong.\",\n defaultWarningDescription: \"Please check and try again.\",\n },\n dataExplorer: {\n viewTree: {\n actions: \"More actions\",\n expand: \"Expand\",\n collapse: \"Collapse\",\n loading: \"Loading...\",\n empty: \"No views\",\n error: \"Unable to load views\",\n },\n },\n workbench: {\n relationshipGraph: { zoomOut: 'Zoom out', zoomIn: 'Zoom in', zoomToFit: 'Fit graph', minimap: 'Graph overview' },\n collection: {\n label: \"Collection\",\n loading: \"Loading items\",\n empty: \"No items\",\n loadError: \"Unable to load items\",\n refreshError: \"Unable to refresh items\",\n retry: \"Retry\",\n loadingMore: \"Loading more items\",\n permission: \"You do not have permission to view this content\",\n offline: \"You appear to be offline\",\n requestAccess: \"Request access\",\n },\n interactiveTable: {\n columnActions: \"Column actions\",\n freezeColumn: \"Freeze to left\",\n freezeEndColumn: \"Freeze to right\",\n unfreezeColumn: \"Unfreeze from left\",\n unfreezeEndColumn: \"Unfreeze from right\",\n unfreezeAllColumns: \"Unfreeze all columns\",\n resetColumnWidth: \"Reset column width\",\n frozenColumnTitle: \"Frozen column\",\n },\n },\n agentWorkbench: {\n label: \"Session activity\",\n reasoning: \"Reasoning\",\n plan: \"Plan\",\n taskNoDetail: \"No additional details\",\n modes: { chat: \"Chat\", work: \"Work\" },\n composer: {\n send: \"Send message\",\n stop: \"Stop generating\",\n queue: \"Queue message\",\n attach: \"Add photos or files\",\n voice: \"Start voice input\",\n webSearch: \"Web search\",\n chatMode: \"Chat mode\",\n model: \"Model\",\n reasoning: \"Reasoning effort\",\n permissions: \"Permissions\",\n removeAttachment: \"Remove attachment\",\n editQueued: \"Edit queued message\",\n deleteQueued: \"Delete queued message\",\n moveUp: \"Move message up\",\n moveDown: \"Move message down\",\n queued: \"Queued messages\",\n uploading: \"Uploading\",\n uploadFailed: \"Upload failed\",\n retryAttachment: \"Retry attachment upload\",\n noModels: \"No models available\",\n message: \"Message\",\n attachmentOnly: \"Attachment\",\n reasoningOptions: {\n low: \"Low\",\n medium: \"Medium\",\n high: \"High\",\n xhigh: \"Extra high\",\n },\n permissionOptions: {\n \"approval-required\": \"Approval required\",\n \"auto-approve\": \"Auto approve\",\n \"full-access\": \"Full access\",\n },\n },\n quickStart: {\n label: \"Quick start\",\n back: \"Back\",\n addFile: \"Add file\",\n },\n tool: {\n input: \"Input\",\n output: \"Output\",\n status: {\n pending: \"Pending\",\n running: \"Running\",\n completed: \"Completed\",\n failed: \"Error\",\n denied: \"Denied\",\n },\n },\n approval: {\n approve: \"Approve\",\n reject: \"Reject\",\n approved: \"Approved\",\n rejected: \"Rejected\",\n },\n artifact: {\n pending: \"Preparing\",\n ready: \"Ready\",\n failed: \"Failed\",\n open: ({ name }) => `Open ${name}`,\n },\n run: {\n stopping: \"Stopping...\",\n stoppedAfter: ({ duration }) => `You stopped after ${duration}`,\n },\n process: {\n running: \"Working\",\n queued: \"Queued\",\n waitingApproval: \"Waiting for approval\",\n failed: \"Failed\",\n stopped: \"Stopped\",\n processed: \"Processed\",\n processedFor: ({ duration }) => `Worked for ${duration}`,\n completedCount: ({ completed, total }) =>\n `${completed}/${total} completed`,\n },\n artifactWorkspace: {\n outputs: \"Outputs\",\n sources: \"Sources\",\n viewAll: \"View all\",\n toggleSummary: \"Toggle files\",\n tabs: \"Open files\",\n closeTab: ({ name }) => `Close ${name}`,\n closeWorkspace: \"Close workspace\",\n download: ({ name }) => `Download ${name}`,\n openExternal: ({ name }) => `Open ${name} in a new window`,\n loading: \"Loading preview...\",\n failed: \"Preview unavailable\",\n retry: \"Try again\",\n },\n usage: {\n label: \"Context usage\",\n context: ({ used, total }) => `${used} / ${total} tokens`,\n },\n navigation: {\n search: \"Search agents and sessions\",\n searchSessions: \"Search sessions\",\n searchShortcut: \"Focus search\",\n clearSearch: \"Clear search\",\n tabsLabel: \"Agent workbench navigation\",\n agents: \"Agents\",\n sessions: \"Sessions\",\n newAgent: \"New Agent\",\n newSession: \"New Session\",\n capabilities: \"Capabilities & Extensions\",\n settings: \"Agent Settings\",\n allAgents: \"All Agents\",\n recentSessions: \"Recent Sessions\",\n chat: \"Chat\",\n work: \"Work\",\n chats: \"Chats\",\n builtIn: \"Built-in\",\n noDescription: \"No description\",\n loading: \"Loading...\",\n emptyAgents: \"No agents yet\",\n emptySessions: \"No sessions yet\",\n noResults: \"No matching results\",\n retry: \"Retry\",\n pin: \"Pin\",\n unpin: \"Unpin\",\n rename: \"Rename\",\n delete: \"Delete\",\n actions: \"Actions\",\n save: \"Save\",\n cancel: \"Cancel\",\n running: \"Running\",\n completed: \"Completed\",\n failed: \"Failed\",\n contextUsage: ({ percent }) => `${percent}% context used`,\n },\n details: {\n title: \"Task details\",\n description: \"Summary and workspace activity\",\n duration: \"Duration\",\n updated: \"Updated\",\n model: \"Model\",\n mode: \"Mode\",\n permissions: \"Permissions\",\n tokenUsage: \"Token usage\",\n summary: \"Summary\",\n summaryEmpty: \"No summary is available yet.\",\n summaryFailed: \"The summary could not be generated.\",\n highlights: \"Highlights\",\n pendingItems: \"Pending items\",\n tabs: {\n label: \"Task detail views\",\n summary: \"Summary\",\n workspace: \"Workspace\",\n },\n status: {\n queued: \"Queued\",\n running: \"Running\",\n waiting_approval: \"Waiting for approval\",\n stopping: \"Stopping\",\n stopped: \"Stopped\",\n completed: \"Completed\",\n failed: \"Failed\",\n },\n state: {\n loading: {\n title: \"Loading task details\",\n description: \"Restoring the latest session activity.\",\n },\n empty: {\n title: \"No task selected\",\n description: \"Select a task to inspect its details.\",\n },\n error: {\n title: \"Unable to load task details\",\n description: \"Try again after the session is available.\",\n },\n },\n actions: {\n close: \"Close task details\",\n copySummary: \"Copy summary\",\n retry: \"Retry\",\n retrySummary: \"Retry summary\",\n resume: \"Resume\",\n continueInNewTask: \"Continue in new task\",\n editAndRerun: \"Edit and rerun\",\n export: \"Export\",\n },\n workspace: {\n diffs: \"Code changes\",\n files: \"Files\",\n terminals: \"Terminals\",\n tests: \"Tests\",\n artifacts: \"Artifacts\",\n exitCode: ({ code }) => `Exit code ${code}`,\n diffStatus: {\n added: \"Added\",\n modified: \"Modified\",\n deleted: \"Deleted\",\n renamed: \"Renamed\",\n },\n fileOperation: { upsert: \"Updated\", delete: \"Deleted\" },\n },\n },\n },\n },\n} satisfies MonkeysLocale;\n","import type { MonkeysLocale } from \"./types\";\n\nexport const zhCN = {\n locale: \"zh-CN\",\n messages: {\n pagination: {\n navigation: \"分页导航\",\n first: \"首页\",\n previous: \"上一页\",\n next: \"下一页\",\n last: \"末页\",\n page: ({ page, pageCount }) => `第 ${page} 页,共 ${pageCount} 页`,\n currentPage: ({ page, pageCount }) =>\n `第 ${page} 页,共 ${pageCount} 页,当前页`,\n emptyResults: \"共 0 条\",\n range: ({ start, end, total }) => `第 ${start}-${end} 条,共 ${total} 条`,\n selected: ({ count }) => `已选择 ${count} 项`,\n pageSize: \"每页显示数量\",\n loadBatchSize: \"每次加载数量\",\n perLoad: \"每次加载\",\n jumpToPage: \"跳转到页码\",\n pages: \"页\",\n clickToJump: \"点击跳转页码\",\n },\n dialog: {\n close: \"关闭对话框\",\n },\n dropdownMenu: {\n actions: \"操作\",\n },\n loading: {\n spinner: \"正在加载\",\n },\n layout: {\n resizePanels: \"调整面板大小\",\n expandPanel: \"展开\",\n collapsePanel: \"收起\",\n movePanel: \"移动\",\n moveBefore: \"向前移动\",\n moveAfter: \"向后移动\",\n },\n steps: {\n label: \"进度\",\n current: \"当前步骤\",\n completed: \"已完成\",\n error: \"错误\",\n disabled: \"已禁用\",\n },\n numberInput: {\n increment: \"增加数值\",\n decrement: \"减少数值\",\n },\n passwordInput: {\n showPassword: \"显示密码\",\n hidePassword: \"隐藏密码\",\n },\n multiSelect: {\n placeholder: \"请选择\",\n empty: \"暂无选项\",\n removeOption: ({ value }) => `移除 ${value}`,\n },\n table: {\n dragColumn: ({ columnId }) => `拖动列 ${columnId}`,\n resizeColumn: ({ columnId }) => `调整列宽 ${columnId}`,\n sortColumn: ({ columnId }) =>\n columnId ? `排序列 ${columnId}` : \"排序列\",\n loadingRow: \"正在加载表格行\",\n },\n toolbar: {\n theme: {\n label: \"外观\",\n toggle: \"切换主题\",\n auto: \"跟随系统\",\n light: \"浅色模式\",\n dark: \"深色模式\",\n },\n language: {\n label: \"语言\",\n switch: \"切换语言\",\n },\n },\n toast: {\n errorTitle: \"错误\",\n warningTitle: \"提示\",\n defaultErrorDescription: \"发生错误,请稍后重试。\",\n defaultWarningDescription: \"请检查后重试。\",\n },\n dataExplorer: {\n viewTree: {\n actions: \"更多操作\",\n expand: \"展开\",\n collapse: \"收起\",\n loading: \"正在加载...\",\n empty: \"暂无视图\",\n error: \"无法加载视图\",\n },\n },\n workbench: {\n relationshipGraph: { zoomOut: '缩小', zoomIn: '放大', zoomToFit: '适应画布', minimap: '图谱概览' },\n collection: {\n label: \"内容集合\",\n loading: \"正在加载内容\",\n empty: \"暂无内容\",\n loadError: \"无法加载内容\",\n refreshError: \"无法刷新内容\",\n retry: \"重试\",\n loadingMore: \"正在加载更多内容\",\n permission: \"你没有权限查看此内容\",\n offline: \"网络连接已断开\",\n requestAccess: \"申请权限\",\n },\n interactiveTable: {\n columnActions: \"列操作\",\n freezeColumn: \"固定到左侧\",\n freezeEndColumn: \"固定到右侧\",\n unfreezeColumn: \"取消左侧固定\",\n unfreezeEndColumn: \"取消右侧固定\",\n unfreezeAllColumns: \"取消全部固定\",\n resetColumnWidth: \"重置列宽\",\n frozenColumnTitle: \"已固定列\",\n },\n },\n agentWorkbench: {\n label: \"会话活动\",\n reasoning: \"思考过程\",\n plan: \"执行计划\",\n taskNoDetail: \"暂无更多详情\",\n modes: { chat: \"对话\", work: \"工作\" },\n composer: {\n send: \"发送消息\",\n stop: \"停止生成\",\n queue: \"排队发送\",\n attach: \"添加照片或文件\",\n voice: \"开始语音输入\",\n webSearch: \"联网搜索\",\n chatMode: \"对话模式\",\n model: \"模型\",\n reasoning: \"思考强度\",\n permissions: \"权限\",\n removeAttachment: \"移除附件\",\n editQueued: \"编辑排队消息\",\n deleteQueued: \"删除排队消息\",\n moveUp: \"上移消息\",\n moveDown: \"下移消息\",\n queued: \"排队消息\",\n uploading: \"上传中\",\n uploadFailed: \"上传失败\",\n retryAttachment: \"重试附件上传\",\n noModels: \"暂无可用模型\",\n message: \"消息\",\n attachmentOnly: \"附件\",\n reasoningOptions: {\n low: \"低\",\n medium: \"中\",\n high: \"高\",\n xhigh: \"最高\",\n },\n permissionOptions: {\n \"approval-required\": \"需要批准\",\n \"auto-approve\": \"自动批准\",\n \"full-access\": \"完全访问\",\n },\n },\n quickStart: {\n label: \"快速开始\",\n back: \"返回\",\n addFile: \"添加文件\",\n },\n tool: {\n input: \"输入\",\n output: \"输出\",\n status: {\n pending: \"等待中\",\n running: \"运行中\",\n completed: \"已完成\",\n failed: \"错误\",\n denied: \"已拒绝\",\n },\n },\n approval: {\n approve: \"允许\",\n reject: \"拒绝\",\n approved: \"已允许\",\n rejected: \"已拒绝\",\n },\n artifact: {\n pending: \"准备中\",\n ready: \"已就绪\",\n failed: \"失败\",\n open: ({ name }) => `打开 ${name}`,\n },\n run: {\n stopping: \"正在停止...\",\n stoppedAfter: ({ duration }) => `你在 ${duration} 后停止了任务`,\n },\n process: {\n running: \"执行过程\",\n queued: \"排队中\",\n waitingApproval: \"等待审批\",\n failed: \"失败\",\n stopped: \"已停止\",\n processed: \"已处理\",\n processedFor: ({ duration }) =>\n `耗时 ${duration\n .replace(/(\\d+)h/g, \"$1小时\")\n .replace(/(\\d+)m/g, \"$1分钟\")\n .replace(/(\\d+)s/g, \"$1秒\")\n .replace(/\\s+/g, \"\")}`,\n completedCount: ({ completed, total }) =>\n `${completed}/${total} 已完成`,\n },\n artifactWorkspace: {\n outputs: \"输出\",\n sources: \"来源\",\n viewAll: \"查看全部\",\n toggleSummary: \"切换文件摘要\",\n tabs: \"已打开文件\",\n closeTab: ({ name }) => `关闭 ${name}`,\n closeWorkspace: \"关闭工作区\",\n download: ({ name }) => `下载 ${name}`,\n openExternal: ({ name }) => `在新窗口打开 ${name}`,\n loading: \"正在加载预览...\",\n failed: \"预览不可用\",\n retry: \"重试\",\n },\n usage: {\n label: \"上下文用量\",\n context: ({ used, total }) => `${used} / ${total} tokens`,\n },\n navigation: {\n search: \"搜索智能体和会话\",\n searchSessions: \"搜索会话\",\n searchShortcut: \"聚焦搜索框\",\n clearSearch: \"清除搜索\",\n tabsLabel: \"智能体工作台导航\",\n agents: \"智能体\",\n sessions: \"会话\",\n newAgent: \"新建智能体\",\n newSession: \"新建会话\",\n capabilities: \"能力与扩展\",\n settings: \"智能体设置\",\n allAgents: \"全部智能体\",\n recentSessions: \"最近会话\",\n chat: \"对话\",\n work: \"工作\",\n chats: \"聊天\",\n builtIn: \"内置\",\n noDescription: \"暂无描述\",\n loading: \"加载中...\",\n emptyAgents: \"暂无智能体\",\n emptySessions: \"暂无会话\",\n noResults: \"没有匹配结果\",\n retry: \"重试\",\n pin: \"置顶\",\n unpin: \"取消置顶\",\n rename: \"重命名\",\n delete: \"删除\",\n actions: \"操作\",\n save: \"保存\",\n cancel: \"取消\",\n running: \"运行中\",\n completed: \"已完成\",\n failed: \"失败\",\n contextUsage: ({ percent }) => `已使用 ${percent}% 上下文`,\n },\n details: {\n title: \"任务详情\",\n description: \"摘要与工作区活动\",\n duration: \"耗时\",\n updated: \"更新时间\",\n model: \"模型\",\n mode: \"模式\",\n permissions: \"权限\",\n tokenUsage: \"Token 用量\",\n summary: \"摘要\",\n summaryEmpty: \"暂时没有可用摘要。\",\n summaryFailed: \"摘要生成失败。\",\n highlights: \"重点\",\n pendingItems: \"待处理事项\",\n tabs: {\n label: \"任务详情视图\",\n summary: \"摘要\",\n workspace: \"工作区\",\n },\n status: {\n queued: \"排队中\",\n running: \"运行中\",\n waiting_approval: \"等待审批\",\n stopping: \"正在停止\",\n stopped: \"已停止\",\n completed: \"已完成\",\n failed: \"失败\",\n },\n state: {\n loading: {\n title: \"正在加载任务详情\",\n description: \"正在恢复最新的会话活动。\",\n },\n empty: {\n title: \"未选择任务\",\n description: \"选择任务后查看详细信息。\",\n },\n error: {\n title: \"无法加载任务详情\",\n description: \"会话恢复可用后请重试。\",\n },\n },\n actions: {\n close: \"关闭任务详情\",\n copySummary: \"复制摘要\",\n retry: \"重试\",\n retrySummary: \"重新生成摘要\",\n resume: \"继续运行\",\n continueInNewTask: \"在新任务中继续\",\n editAndRerun: \"编辑并重新运行\",\n export: \"导出\",\n },\n workspace: {\n diffs: \"代码变更\",\n files: \"文件\",\n terminals: \"终端\",\n tests: \"测试\",\n artifacts: \"产物\",\n exitCode: ({ code }) => `退出码 ${code}`,\n diffStatus: {\n added: \"新增\",\n modified: \"修改\",\n deleted: \"删除\",\n renamed: \"重命名\",\n },\n fileOperation: { upsert: \"已更新\", delete: \"已删除\" },\n },\n },\n },\n },\n} satisfies MonkeysLocale;\n","import { enUS } from './en-US';\nimport type {\n MonkeysBuiltInLocaleId,\n MonkeysLocale,\n MonkeysLocaleInput,\n MonkeysLocaleMessages,\n MonkeysLocaleMessagesOverride,\n MonkeysResolvedLocale,\n} from './types';\nimport { zhCN } from './zh-CN';\n\nconst BUILT_IN_LOCALES: Record<MonkeysBuiltInLocaleId, MonkeysLocale> = {\n 'en-US': enUS,\n 'zh-CN': zhCN,\n};\n\nfunction normalizeLocaleId(locale: unknown): string {\n if (typeof locale !== 'string' || !locale.trim()) {\n throw new TypeError('Monkeys locale must be a non-empty BCP 47 string.');\n }\n\n try {\n return Intl.getCanonicalLocales(locale)[0];\n } catch {\n throw new RangeError(\n `Monkeys locale \"${locale}\" is not a valid BCP 47 identifier.`,\n );\n }\n}\n\nfunction isRecord(value: unknown): value is Record<string, unknown> {\n return Boolean(value) && typeof value === 'object' && !Array.isArray(value);\n}\n\nfunction validateMessageOverride(\n value: unknown,\n schema: unknown,\n path: string,\n) {\n if (!isRecord(value) || !isRecord(schema)) {\n throw new TypeError(`${path} must be an object.`);\n }\n\n for (const [key, candidate] of Object.entries(value)) {\n if (candidate === undefined) continue;\n if (!(key in schema)) {\n throw new TypeError(`${path}.${key} is not a supported Monkeys message.`);\n }\n\n const expected = schema[key];\n const candidatePath = `${path}.${key}`;\n if (typeof expected === 'function') {\n if (typeof candidate !== 'function') {\n throw new TypeError(`${candidatePath} must be a function.`);\n }\n } else if (typeof expected === 'string') {\n if (typeof candidate !== 'string') {\n throw new TypeError(`${candidatePath} must be a string.`);\n }\n } else {\n validateMessageOverride(candidate, expected, candidatePath);\n }\n }\n}\n\nfunction assertMessagesOverride(\n value: unknown,\n path: string,\n): asserts value is MonkeysLocaleMessagesOverride {\n validateMessageOverride(value, enUS.messages, path);\n}\n\nfunction isBuiltInLocale(locale: string): locale is MonkeysBuiltInLocaleId {\n return locale === 'en-US' || locale === 'zh-CN';\n}\n\nfunction normalizeLocaleInput(input: MonkeysLocaleInput | undefined): {\n locale: string | undefined;\n messages: MonkeysLocaleMessagesOverride | undefined;\n hasExplicitLocale: boolean;\n} {\n if (input === undefined) {\n return {\n locale: undefined,\n messages: undefined,\n hasExplicitLocale: false,\n };\n }\n\n if (typeof input === 'string') {\n const locale = normalizeLocaleId(input);\n if (!isBuiltInLocale(locale)) {\n throw new RangeError(\n `Unsupported built-in Monkeys locale \"${locale}\". Provide a locale pack object for custom locales.`,\n );\n }\n return { locale, messages: undefined, hasExplicitLocale: true };\n }\n\n if (!input || typeof input !== 'object' || Array.isArray(input)) {\n throw new TypeError('Monkeys locale must be a locale id or locale pack object.');\n }\n\n const locale = normalizeLocaleId(input.locale);\n assertMessagesOverride(input.messages, 'Monkeys locale messages');\n\n return {\n locale,\n messages: input.messages,\n hasExplicitLocale: true,\n };\n}\n\nexport function mergeMonkeysLocaleMessages(\n base: MonkeysLocaleMessages,\n override?: MonkeysLocaleMessagesOverride,\n): MonkeysLocaleMessages {\n if (!override) return base;\n\n return {\n pagination: { ...base.pagination, ...override.pagination },\n dialog: { ...base.dialog, ...override.dialog },\n dropdownMenu: { ...base.dropdownMenu, ...override.dropdownMenu },\n loading: { ...base.loading, ...override.loading },\n layout: { ...base.layout, ...override.layout },\n steps: { ...base.steps, ...override.steps },\n numberInput: { ...base.numberInput, ...override.numberInput },\n passwordInput: { ...base.passwordInput, ...override.passwordInput },\n multiSelect: { ...base.multiSelect, ...override.multiSelect },\n table: { ...base.table, ...override.table },\n toolbar: {\n theme: { ...base.toolbar.theme, ...override.toolbar?.theme },\n language: { ...base.toolbar.language, ...override.toolbar?.language },\n },\n toast: { ...base.toast, ...override.toast },\n dataExplorer: {\n viewTree: {\n ...base.dataExplorer.viewTree,\n ...override.dataExplorer?.viewTree,\n },\n },\n workbench: {\n relationshipGraph: { zoomOut: 'Zoom out', zoomIn: 'Zoom in', zoomToFit: 'Fit graph', minimap: 'Graph overview', ...base.workbench.relationshipGraph, ...override.workbench?.relationshipGraph },\n collection: {\n ...base.workbench.collection,\n ...override.workbench?.collection,\n },\n interactiveTable: {\n ...base.workbench.interactiveTable,\n ...override.workbench?.interactiveTable,\n },\n },\n agentWorkbench: {\n ...base.agentWorkbench,\n ...override.agentWorkbench,\n modes: {\n ...base.agentWorkbench.modes,\n ...override.agentWorkbench?.modes,\n },\n composer: {\n ...base.agentWorkbench.composer,\n ...override.agentWorkbench?.composer,\n },\n quickStart: {\n ...base.agentWorkbench.quickStart,\n ...override.agentWorkbench?.quickStart,\n },\n tool: {\n ...base.agentWorkbench.tool,\n ...override.agentWorkbench?.tool,\n status: {\n ...base.agentWorkbench.tool.status,\n ...override.agentWorkbench?.tool?.status,\n },\n },\n approval: {\n ...base.agentWorkbench.approval,\n ...override.agentWorkbench?.approval,\n },\n artifact: {\n ...base.agentWorkbench.artifact,\n ...override.agentWorkbench?.artifact,\n },\n run: {\n ...base.agentWorkbench.run,\n ...override.agentWorkbench?.run,\n },\n process: {\n ...base.agentWorkbench.process,\n ...override.agentWorkbench?.process,\n },\n artifactWorkspace: {\n ...base.agentWorkbench.artifactWorkspace,\n ...override.agentWorkbench?.artifactWorkspace,\n },\n usage: {\n ...base.agentWorkbench.usage,\n ...override.agentWorkbench?.usage,\n },\n navigation: {\n ...base.agentWorkbench.navigation,\n ...override.agentWorkbench?.navigation,\n },\n details: {\n ...base.agentWorkbench.details,\n ...override.agentWorkbench?.details,\n tabs: {\n ...base.agentWorkbench.details.tabs,\n ...override.agentWorkbench?.details?.tabs,\n },\n status: {\n ...base.agentWorkbench.details.status,\n ...override.agentWorkbench?.details?.status,\n },\n state: {\n loading: {\n ...base.agentWorkbench.details.state.loading,\n ...override.agentWorkbench?.details?.state?.loading,\n },\n empty: {\n ...base.agentWorkbench.details.state.empty,\n ...override.agentWorkbench?.details?.state?.empty,\n },\n error: {\n ...base.agentWorkbench.details.state.error,\n ...override.agentWorkbench?.details?.state?.error,\n },\n },\n actions: {\n ...base.agentWorkbench.details.actions,\n ...override.agentWorkbench?.details?.actions,\n },\n workspace: {\n ...base.agentWorkbench.details.workspace,\n ...override.agentWorkbench?.details?.workspace,\n diffStatus: {\n ...base.agentWorkbench.details.workspace.diffStatus,\n ...override.agentWorkbench?.details?.workspace?.diffStatus,\n },\n fileOperation: {\n ...base.agentWorkbench.details.workspace.fileOperation,\n ...override.agentWorkbench?.details?.workspace?.fileOperation,\n },\n },\n },\n },\n };\n}\n\nexport const defaultMonkeysLocale: MonkeysResolvedLocale = {\n locale: enUS.locale,\n messages: mergeMonkeysLocaleMessages(\n enUS.messages as MonkeysLocaleMessages,\n ),\n};\n\nexport function resolveMonkeysLocale(\n input?: MonkeysLocaleInput,\n override?: MonkeysLocaleMessagesOverride,\n parent?: MonkeysResolvedLocale,\n): MonkeysResolvedLocale {\n if (override !== undefined) {\n assertMessagesOverride(override, 'MonkeysProvider messages');\n }\n const normalized = normalizeLocaleInput(input);\n const locale = normalized.locale ?? parent?.locale ?? enUS.locale;\n const builtInMessages = isBuiltInLocale(locale)\n ? BUILT_IN_LOCALES[locale].messages\n : undefined;\n let messages = mergeMonkeysLocaleMessages(\n enUS.messages as MonkeysLocaleMessages,\n builtInMessages,\n );\n\n if (parent && (!normalized.hasExplicitLocale || parent.locale === locale)) {\n messages = mergeMonkeysLocaleMessages(messages, parent.messages);\n }\n\n messages = mergeMonkeysLocaleMessages(messages, normalized.messages);\n messages = mergeMonkeysLocaleMessages(messages, override);\n\n return { locale, messages };\n}\n","import {\n createContext,\n useContext,\n useMemo,\n type Context,\n} from 'react';\n\nimport type { AssetIconResolver, AssetImageResolver } from '../components/base/BaseAssetIcon';\nimport type { BaseAppearance } from '../components/base/types';\nimport type { DataExplorerAppearance } from '../components/data-explorer/types';\nimport {\n defaultMonkeysLocale,\n type MonkeysLocaleMessages,\n type MonkeysResolvedLocale,\n} from '../locale';\nimport type { CompiledThemeTokens } from '../theme-system';\n\nexport type MonkeysDirection = 'ltr' | 'rtl';\n\nexport interface MonkeysEnvironment {\n getDocument?: () => Document | null;\n getWindow?: () => Window | null;\n}\n\nexport type MonkeysPortalContainer =\n | Element\n | null\n | (() => Element | null);\n\nexport interface MonkeysPortalOptions {\n container?: MonkeysPortalContainer;\n disabled?: boolean;\n}\n\nexport type MonkeysLoadingStateVariant = 'spinner' | 'skeleton';\nexport type MonkeysEmptyStateVariant = 'default' | 'compact';\nexport type MonkeysStatusStateDensity = 'compact' | 'default' | 'comfortable';\n\nexport type MonkeysListFooterPaginationMode = 'auto' | 'pages' | 'compact';\nexport type MonkeysListFooterAlignment = 'start' | 'end' | 'space-between';\n\nexport interface MonkeysListFooterConfig {\n showTotal?: boolean;\n showPageSize?: boolean;\n pageSizeOptions?: number[];\n paginationMode?: MonkeysListFooterPaginationMode;\n alignment?: MonkeysListFooterAlignment;\n density?: MonkeysStatusStateDensity;\n}\n\nexport interface MonkeysStatusStatesConfig {\n loading?: { variant?: MonkeysLoadingStateVariant };\n empty?: { variant?: MonkeysEmptyStateVariant };\n error?: { showRetry?: boolean };\n permission?: { showRequestAccess?: boolean };\n density?: MonkeysStatusStateDensity;\n}\n\nexport interface MonkeysComponentAttributes {\n dir?: MonkeysDirection;\n 'data-monkeys-direction'?: MonkeysDirection;\n 'data-monkeys-locale'?: string;\n 'data-monkeys-theme'?: string;\n 'data-monkeys-theme-mode'?: string;\n}\n\ninterface MonkeysLocaleContextValue extends MonkeysResolvedLocale {\n provided: boolean;\n}\n\ninterface MonkeysThemeContextValue {\n provided: boolean;\n resolvedTheme?: CompiledThemeTokens;\n themeId?: string;\n baseAppearance?: BaseAppearance;\n dataExplorerAppearance?: DataExplorerAppearance;\n statusStates?: MonkeysStatusStatesConfig;\n listFooter?: MonkeysListFooterConfig;\n}\n\ninterface MonkeysDirectionContextValue {\n provided: boolean;\n direction?: MonkeysDirection;\n}\n\ninterface MonkeysEnvironmentContextValue {\n provided: boolean;\n environment: MonkeysEnvironment;\n portal: MonkeysPortalOptions;\n iconResolver?: AssetIconResolver;\n imageResolver?: AssetImageResolver;\n}\n\nconst EMPTY_ENVIRONMENT = Object.freeze({}) satisfies MonkeysEnvironment;\nconst EMPTY_PORTAL = Object.freeze({}) satisfies MonkeysPortalOptions;\n\ninterface MonkeysProviderContexts {\n locale: Context<MonkeysLocaleContextValue>;\n theme: Context<MonkeysThemeContextValue>;\n direction: Context<MonkeysDirectionContextValue>;\n environment: Context<MonkeysEnvironmentContextValue>;\n}\n\n// Every bundled public entry contains this module. Keep only the Context\n// identities in a realm-wide registry so root, provider, and component\n// subpaths interoperate in both CJS and ESM builds. Provider values remain in\n// React trees, so SSR requests are isolated. Bump the contract key only when\n// these Context value shapes become intentionally incompatible.\nconst MONKEYS_PROVIDER_CONTEXTS_KEY = Symbol.for(\n '@inf-monkeys-tech/monkeys-design/provider-context@1',\n);\n\ntype MonkeysProviderContextHost = typeof globalThis & {\n [MONKEYS_PROVIDER_CONTEXTS_KEY]?: MonkeysProviderContexts;\n};\n\nfunction createMonkeysProviderContexts(): MonkeysProviderContexts {\n return Object.freeze({\n locale: createContext<MonkeysLocaleContextValue>({\n ...defaultMonkeysLocale,\n provided: false,\n }),\n theme: createContext<MonkeysThemeContextValue>({\n provided: false,\n }),\n direction: createContext<MonkeysDirectionContextValue>({\n provided: false,\n }),\n environment: createContext<MonkeysEnvironmentContextValue>({\n provided: false,\n environment: EMPTY_ENVIRONMENT,\n portal: EMPTY_PORTAL,\n }),\n });\n}\n\nfunction getMonkeysProviderContexts(): MonkeysProviderContexts {\n const host = globalThis as MonkeysProviderContextHost;\n const existing = host[MONKEYS_PROVIDER_CONTEXTS_KEY];\n if (existing) return existing;\n\n const contexts = createMonkeysProviderContexts();\n Object.defineProperty(host, MONKEYS_PROVIDER_CONTEXTS_KEY, {\n value: contexts,\n enumerable: false,\n configurable: false,\n writable: false,\n });\n return contexts;\n}\n\nconst providerContexts = getMonkeysProviderContexts();\n\nexport const MonkeysLocaleContext = providerContexts.locale;\n\nexport const MonkeysThemeContext = providerContexts.theme;\n\nexport const MonkeysDirectionContext = providerContexts.direction;\n\nexport const MonkeysEnvironmentContext = providerContexts.environment;\n\nfunction mergeAppearance<T extends { slots?: object; styles?: object }>(\n inherited: T | undefined,\n explicit: T | undefined,\n): T | undefined {\n if (explicit === undefined) return inherited;\n if (inherited === undefined) return explicit;\n\n return {\n ...inherited,\n ...explicit,\n slots:\n inherited.slots || explicit.slots\n ? { ...inherited.slots, ...explicit.slots }\n : undefined,\n styles:\n inherited.styles || explicit.styles\n ? { ...inherited.styles, ...explicit.styles }\n : undefined,\n };\n}\n\nexport function useMonkeysLocale() {\n try {\n const context = useContext(MonkeysLocaleContext);\n return context ?? { ...defaultMonkeysLocale, provided: false };\n } catch {\n return { ...defaultMonkeysLocale, provided: false };\n }\n}\n\nexport function useMonkeysLocaleMessages(): MonkeysLocaleMessages {\n return useContext(MonkeysLocaleContext).messages;\n}\n\nexport function useMonkeysResolvedTheme() {\n return useContext(MonkeysThemeContext).resolvedTheme;\n}\n\nexport function useMonkeysBaseAppearance(\n explicit?: BaseAppearance,\n): BaseAppearance | undefined {\n const inherited = useContext(MonkeysThemeContext).baseAppearance;\n return useMemo(\n () => mergeAppearance(inherited, explicit),\n [explicit, inherited],\n );\n}\n\nexport function useMonkeysDataExplorerAppearance(\n explicit?: DataExplorerAppearance,\n): DataExplorerAppearance | undefined {\n const inherited = useContext(MonkeysThemeContext).dataExplorerAppearance;\n return useMemo(\n () => mergeAppearance(inherited, explicit),\n [explicit, inherited],\n );\n}\n\nexport function useMonkeysStatusStates(): MonkeysStatusStatesConfig {\n return useContext(MonkeysThemeContext).statusStates ?? {};\n}\n\nexport function useMonkeysListFooter(): MonkeysListFooterConfig {\n return useContext(MonkeysThemeContext).listFooter ?? {};\n}\n\nexport function useMonkeysDirection() {\n return useContext(MonkeysDirectionContext).direction;\n}\n\nexport function useMonkeysEnvironment() {\n return useContext(MonkeysEnvironmentContext).environment;\n}\n\nexport function useMonkeysPortalOptions() {\n return useContext(MonkeysEnvironmentContext).portal;\n}\n\nexport function useMonkeysComponentAttributes(): MonkeysComponentAttributes {\n const locale = useContext(MonkeysLocaleContext);\n const theme = useContext(MonkeysThemeContext);\n const direction = useContext(MonkeysDirectionContext);\n const providerActive = locale.provided || theme.provided || direction.provided;\n\n return useMemo(\n () =>\n providerActive\n ? {\n dir: direction.direction,\n 'data-monkeys-direction': direction.direction,\n 'data-monkeys-locale': locale.locale,\n 'data-monkeys-theme': theme.themeId,\n 'data-monkeys-theme-mode': theme.resolvedTheme?.colorMode,\n }\n : {},\n [\n direction.direction,\n locale.locale,\n providerActive,\n theme.resolvedTheme?.colorMode,\n theme.themeId,\n ],\n );\n}\n\nexport function useMonkeysAssetIconResolver(): AssetIconResolver | undefined {\n return useContext(MonkeysEnvironmentContext).iconResolver;\n}\nexport function useMonkeysAssetImageResolver(): AssetImageResolver | undefined {\n return useContext(MonkeysEnvironmentContext).imageResolver;\n}\n","{\n \"seed\": {\n \"ui\": {\n \"color\": {\n \"page\": {\n \"$type\": \"color\",\n \"$value\": {\n \"colorSpace\": \"srgb\",\n \"components\": [\n 0.09019607843137255,\n 0.09803921568627451,\n 0.11372549019607843\n ],\n \"hex\": \"#17191D\"\n },\n \"$description\": \"租户颜色原始值\"\n },\n \"surface\": {\n \"$type\": \"color\",\n \"$value\": {\n \"colorSpace\": \"srgb\",\n \"components\": [\n 0.12549019607843137,\n 0.13725490196078433,\n 0.1607843137254902\n ],\n \"hex\": \"#202329\"\n },\n \"$description\": \"租户颜色原始值\"\n },\n \"elevated\": {\n \"$type\": \"color\",\n \"$value\": {\n \"colorSpace\": \"srgb\",\n \"components\": [\n 0.16470588235294117,\n 0.1803921568627451,\n 0.21176470588235294\n ],\n \"hex\": \"#2A2E36\"\n },\n \"$description\": \"租户颜色原始值\"\n },\n \"foreground\": {\n \"$type\": \"color\",\n \"$value\": {\n \"colorSpace\": \"srgb\",\n \"components\": [\n 0.9568627450980393,\n 0.9607843137254902,\n 0.9686274509803922\n ],\n \"hex\": \"#F4F5F7\"\n },\n \"$description\": \"租户颜色原始值\"\n },\n \"muted\": {\n \"$type\": \"color\",\n \"$value\": {\n \"colorSpace\": \"srgb\",\n \"components\": [\n 0.803921568627451,\n 0.8196078431372549,\n 0.8470588235294118\n ],\n \"hex\": \"#CDD1D8\"\n },\n \"$description\": \"租户颜色原始值\"\n },\n \"subtle\": {\n \"$type\": \"color\",\n \"$value\": {\n \"colorSpace\": \"srgb\",\n \"components\": [\n 0.7254901960784313,\n 0.7450980392156863,\n 0.7843137254901961\n ],\n \"hex\": \"#B9BEC8\"\n },\n \"$description\": \"租户颜色原始值\"\n },\n \"primary\": {\n \"$type\": \"color\",\n \"$value\": {\n \"colorSpace\": \"srgb\",\n \"components\": [\n 0.5490196078431373,\n 0.6039215686274509,\n 0.6666666666666666\n ],\n \"hex\": \"#8C9AAA\"\n },\n \"$description\": \"租户颜色原始值\"\n },\n \"lightEdgeBlue\": {\n \"$type\": \"color\",\n \"$value\": {\n \"colorSpace\": \"srgb\",\n \"components\": [\n 0.6549019607843137,\n 0.7098039215686275,\n 0.7843137254901961\n ],\n \"hex\": \"#A7B5C8\"\n },\n \"$description\": \"租户颜色原始值\"\n },\n \"primaryHover\": {\n \"$type\": \"color\",\n \"$value\": {\n \"colorSpace\": \"srgb\",\n \"components\": [\n 0.6784313725490196,\n 0.7254901960784313,\n 0.7803921568627451\n ],\n \"hex\": \"#ADB9C7\"\n },\n \"$description\": \"租户颜色原始值\"\n },\n \"violet\": {\n \"$type\": \"color\",\n \"$value\": {\n \"colorSpace\": \"srgb\",\n \"components\": [\n 0.6784313725490196,\n 0.7137254901960784,\n 0.7686274509803922\n ],\n \"hex\": \"#ADB6C4\"\n },\n \"$description\": \"租户颜色原始值\"\n },\n \"focus\": {\n \"$type\": \"color\",\n \"$value\": {\n \"colorSpace\": \"srgb\",\n \"components\": [\n 0.7647058823529411,\n 0.8235294117647058,\n 0.9098039215686274\n ],\n \"hex\": \"#C3D2E8\"\n },\n \"$description\": \"租户颜色原始值\"\n },\n \"danger\": {\n \"$type\": \"color\",\n \"$value\": {\n \"colorSpace\": \"srgb\",\n \"components\": [\n 0.9411764705882353,\n 0.5019607843137255,\n 0.5019607843137255\n ],\n \"hex\": \"#F08080\"\n },\n \"$description\": \"租户颜色原始值\"\n },\n \"dangerBackground\": {\n \"$type\": \"color\",\n \"$value\": {\n \"colorSpace\": \"srgb\",\n \"components\": [\n 0.6078431372549019,\n 0.1450980392156863,\n 0.1843137254901961\n ],\n \"hex\": \"#9B252F\"\n },\n \"$description\": \"租户颜色原始值\"\n },\n \"success\": {\n \"$type\": \"color\",\n \"$value\": {\n \"colorSpace\": \"srgb\",\n \"components\": [\n 0.5176470588235295,\n 0.8588235294117647,\n 0.6784313725490196\n ],\n \"hex\": \"#84DBAD\"\n },\n \"$description\": \"租户颜色原始值\"\n },\n \"control\": {\n \"$type\": \"color\",\n \"$value\": {\n \"colorSpace\": \"srgb\",\n \"components\": [\n 0.47058823529411764,\n 0.47058823529411764,\n 0.47058823529411764\n ],\n \"hex\": \"#787878\",\n \"alpha\": 0.2\n },\n \"$description\": \"租户颜色原始值\"\n },\n \"border\": {\n \"$type\": \"color\",\n \"$value\": {\n \"colorSpace\": \"srgb\",\n \"components\": [\n 0.7176470588235294,\n 0.7568627450980392,\n 0.8313725490196079\n ],\n \"hex\": \"#B7C1D4\",\n \"alpha\": 0.5\n },\n \"$description\": \"租户颜色原始值\"\n },\n \"info\": {\n \"$type\": \"color\",\n \"$value\": {\n \"colorSpace\": \"srgb\",\n \"components\": [\n 0,\n 0,\n 0\n ],\n \"hex\": \"#000000\",\n \"alpha\": 0.8\n },\n \"$description\": \"租户颜色原始值\"\n },\n \"previewInfo\": {\n \"$type\": \"color\",\n \"$value\": {\n \"colorSpace\": \"srgb\",\n \"components\": [\n 0,\n 0,\n 0\n ],\n \"hex\": \"#000000\",\n \"alpha\": 0.4\n },\n \"$description\": \"租户颜色原始值\"\n },\n \"blueGlow\": {\n \"$type\": \"color\",\n \"$value\": {\n \"colorSpace\": \"srgb\",\n \"components\": [\n 0.5215686274509804,\n 0.6,\n 0.7098039215686275\n ],\n \"hex\": \"#8599B5\",\n \"alpha\": 0.35\n },\n \"$description\": \"租户颜色原始值\"\n },\n \"violetGlow\": {\n \"$type\": \"color\",\n \"$value\": {\n \"colorSpace\": \"srgb\",\n \"components\": [\n 0.6431372549019608,\n 0.6901960784313725,\n 0.7686274509803922\n ],\n \"hex\": \"#A4B0C4\",\n \"alpha\": 0.5\n },\n \"$description\": \"租户颜色原始值\"\n },\n \"transparent\": {\n \"$type\": \"color\",\n \"$value\": {\n \"colorSpace\": \"srgb\",\n \"components\": [\n 0,\n 0,\n 0\n ],\n \"hex\": \"#000000\",\n \"alpha\": 0\n },\n \"$description\": \"租户颜色原始值\"\n },\n \"overlay\": {\n \"$type\": \"color\",\n \"$value\": {\n \"colorSpace\": \"srgb\",\n \"components\": [\n 0,\n 0,\n 0\n ],\n \"hex\": \"#000000\",\n \"alpha\": 0.65\n },\n \"$description\": \"租户颜色原始值\"\n },\n \"primaryAccessible\": {\n \"$type\": \"color\",\n \"$value\": {\n \"colorSpace\": \"srgb\",\n \"components\": [\n 0.3215686274509804,\n 0.396078431372549,\n 0.49019607843137253\n ],\n \"hex\": \"#52657D\"\n },\n \"$description\": \"租户颜色原始值\"\n },\n \"header\": {\n \"$type\": \"color\",\n \"$value\": {\n \"colorSpace\": \"srgb\",\n \"components\": [\n 0.21568627450980393,\n 0.2549019607843137,\n 0.3176470588235294\n ],\n \"hex\": \"#374151\"\n },\n \"$description\": \"租户颜色原始值\"\n },\n \"detail\": {\n \"$type\": \"color\",\n \"$value\": {\n \"colorSpace\": \"srgb\",\n \"components\": [\n 0,\n 0,\n 0\n ],\n \"hex\": \"#000000\"\n },\n \"$description\": \"租户颜色原始值\"\n },\n \"white\": {\n \"$type\": \"color\",\n \"$value\": {\n \"colorSpace\": \"srgb\",\n \"components\": [\n 1,\n 1,\n 1\n ],\n \"hex\": \"#FFFFFF\"\n },\n \"$description\": \"租户颜色原始值\"\n },\n \"black\": {\n \"$type\": \"color\",\n \"$value\": {\n \"colorSpace\": \"srgb\",\n \"components\": [\n 0,\n 0,\n 0\n ],\n \"hex\": \"#000000\"\n },\n \"$description\": \"租户颜色原始值\"\n }\n },\n \"radius\": {\n \"r16\": {\n \"$type\": \"dimension\",\n \"$value\": {\n \"value\": 16,\n \"unit\": \"px\"\n },\n \"$description\": \"公共圆角刻度\"\n },\n \"r24\": {\n \"$type\": \"dimension\",\n \"$value\": {\n \"value\": 24,\n \"unit\": \"px\"\n },\n \"$description\": \"公共圆角刻度\"\n },\n \"r12\": {\n \"$type\": \"dimension\",\n \"$value\": {\n \"value\": 12,\n \"unit\": \"px\"\n },\n \"$description\": \"公共圆角刻度\"\n },\n \"scale\": {\n \"s24\": {\n \"$type\": \"dimension\",\n \"$value\": \"{seed.ui.radius.r24}\",\n \"$description\": \"共享 radius.scale 刻度 24px\"\n },\n \"s999\": {\n \"$type\": \"dimension\",\n \"$value\": \"{seed.ui.radius.r999}\",\n \"$description\": \"共享 radius.scale 刻度 999px\"\n },\n \"s12\": {\n \"$type\": \"dimension\",\n \"$value\": \"{seed.ui.radius.r12}\",\n \"$description\": \"共享 radius.scale 刻度 12px\"\n },\n \"s8\": {\n \"$type\": \"dimension\",\n \"$value\": {\n \"value\": 8,\n \"unit\": \"px\"\n },\n \"$description\": \"共享 radius.scale 刻度 8px\"\n },\n \"s4\": {\n \"$type\": \"dimension\",\n \"$value\": {\n \"value\": 4,\n \"unit\": \"px\"\n },\n \"$description\": \"共享 radius.scale 刻度 4px\"\n },\n \"s16\": {\n \"$type\": \"dimension\",\n \"$value\": \"{seed.ui.radius.r16}\",\n \"$description\": \"共享 radius.scale 刻度 16px\"\n },\n \"s10\": {\n \"$type\": \"dimension\",\n \"$value\": {\n \"value\": 10,\n \"unit\": \"px\"\n },\n \"$description\": \"共享 radius.scale 刻度 10px\"\n },\n \"s20\": {\n \"$type\": \"dimension\",\n \"$value\": {\n \"value\": 20,\n \"unit\": \"px\"\n },\n \"$description\": \"共享 radius.scale 刻度 20px\"\n },\n \"s2\": {\n \"$type\": \"dimension\",\n \"$value\": {\n \"value\": 2,\n \"unit\": \"px\"\n },\n \"$description\": \"共享 radius.scale 刻度 2px\"\n },\n \"s18\": {\n \"$type\": \"dimension\",\n \"$value\": {\n \"value\": 18,\n \"unit\": \"px\"\n },\n \"$description\": \"共享 radius.scale 刻度 18px\"\n }\n },\n \"r999\": {\n \"$type\": \"dimension\",\n \"$value\": {\n \"value\": 999,\n \"unit\": \"px\"\n },\n \"$description\": \"公共圆角刻度\"\n }\n },\n \"typography\": {\n \"lineHeight\": {\n \"s1p5\": {\n \"$type\": \"number\",\n \"$value\": 1.5,\n \"$description\": \"共享 typography.lineHeight 刻度 1.5\"\n },\n \"s1p4\": {\n \"$type\": \"number\",\n \"$value\": 1.4,\n \"$description\": \"共享 typography.lineHeight 刻度 1.4\"\n },\n \"s1p3\": {\n \"$type\": \"number\",\n \"$value\": 1.3,\n \"$description\": \"共享 typography.lineHeight 刻度 1.3\"\n },\n \"s1p2\": {\n \"$type\": \"number\",\n \"$value\": 1.2,\n \"$description\": \"共享 typography.lineHeight 刻度 1.2\"\n }\n },\n \"weight\": {\n \"s500\": {\n \"$type\": \"number\",\n \"$value\": 500,\n \"$description\": \"共享 typography.weight 刻度 500\"\n },\n \"s600\": {\n \"$type\": \"number\",\n \"$value\": 600,\n \"$description\": \"共享 typography.weight 刻度 600\"\n },\n \"s700\": {\n \"$type\": \"number\",\n \"$value\": 700,\n \"$description\": \"共享 typography.weight 刻度 700\"\n },\n \"s800\": {\n \"$type\": \"number\",\n \"$value\": 800,\n \"$description\": \"共享 typography.weight 刻度 800\"\n },\n \"s200\": {\n \"$type\": \"number\",\n \"$value\": 200,\n \"$description\": \"共享 typography.weight 刻度 200\"\n },\n \"s400\": {\n \"$type\": \"number\",\n \"$value\": 400,\n \"$description\": \"共享 typography.weight 刻度 400\"\n }\n }\n },\n \"size\": {\n \"s2\": {\n \"$type\": \"dimension\",\n \"$value\": {\n \"value\": 2,\n \"unit\": \"px\"\n },\n \"$description\": \"共享 size 刻度 2px\"\n },\n \"s3\": {\n \"$type\": \"dimension\",\n \"$value\": {\n \"value\": 3,\n \"unit\": \"px\"\n },\n \"$description\": \"共享 size 刻度 3px\"\n },\n \"s1\": {\n \"$type\": \"dimension\",\n \"$value\": {\n \"value\": 1,\n \"unit\": \"px\"\n },\n \"$description\": \"共享 size 刻度 1px\"\n },\n \"s28\": {\n \"$type\": \"dimension\",\n \"$value\": {\n \"value\": 28,\n \"unit\": \"px\"\n },\n \"$description\": \"共享 size 刻度 28px\"\n },\n \"s42\": {\n \"$type\": \"dimension\",\n \"$value\": {\n \"value\": 42,\n \"unit\": \"px\"\n },\n \"$description\": \"共享 size 刻度 42px\"\n },\n \"s14\": {\n \"$type\": \"dimension\",\n \"$value\": {\n \"value\": 14,\n \"unit\": \"px\"\n },\n \"$description\": \"共享 size 刻度 14px\"\n },\n \"s24\": {\n \"$type\": \"dimension\",\n \"$value\": {\n \"value\": 24,\n \"unit\": \"px\"\n },\n \"$description\": \"共享 size 刻度 24px\"\n },\n \"s18\": {\n \"$type\": \"dimension\",\n \"$value\": {\n \"value\": 18,\n \"unit\": \"px\"\n },\n \"$description\": \"共享 size 刻度 18px\"\n },\n \"s40\": {\n \"$type\": \"dimension\",\n \"$value\": {\n \"value\": 40,\n \"unit\": \"px\"\n },\n \"$description\": \"共享 size 刻度 40px\"\n },\n \"s16\": {\n \"$type\": \"dimension\",\n \"$value\": {\n \"value\": 16,\n \"unit\": \"px\"\n },\n \"$description\": \"共享 size 刻度 16px\"\n },\n \"s20\": {\n \"$type\": \"dimension\",\n \"$value\": {\n \"value\": 20,\n \"unit\": \"px\"\n },\n \"$description\": \"共享 size 刻度 20px\"\n },\n \"s22\": {\n \"$type\": \"dimension\",\n \"$value\": {\n \"value\": 22,\n \"unit\": \"px\"\n },\n \"$description\": \"共享 size 刻度 22px\"\n },\n \"s140\": {\n \"$type\": \"dimension\",\n \"$value\": {\n \"value\": 140,\n \"unit\": \"px\"\n },\n \"$description\": \"共享 size 刻度 140px\"\n },\n \"s85\": {\n \"$type\": \"dimension\",\n \"$value\": {\n \"value\": 85,\n \"unit\": \"px\"\n },\n \"$description\": \"共享 size 刻度 85px\"\n },\n \"s34\": {\n \"$type\": \"dimension\",\n \"$value\": {\n \"value\": 34,\n \"unit\": \"px\"\n },\n \"$description\": \"共享 size 刻度 34px\"\n },\n \"s320\": {\n \"$type\": \"dimension\",\n \"$value\": {\n \"value\": 320,\n \"unit\": \"px\"\n },\n \"$description\": \"共享 size 刻度 320px\"\n },\n \"s160\": {\n \"$type\": \"dimension\",\n \"$value\": {\n \"value\": 160,\n \"unit\": \"px\"\n },\n \"$description\": \"共享 size 刻度 160px\"\n },\n \"s280\": {\n \"$type\": \"dimension\",\n \"$value\": {\n \"value\": 280,\n \"unit\": \"px\"\n },\n \"$description\": \"共享 size 刻度 280px\"\n },\n \"s32\": {\n \"$type\": \"dimension\",\n \"$value\": {\n \"value\": 32,\n \"unit\": \"px\"\n },\n \"$description\": \"共享 size 刻度 32px\"\n },\n \"s53\": {\n \"$type\": \"dimension\",\n \"$value\": {\n \"value\": 53,\n \"unit\": \"px\"\n },\n \"$description\": \"共享 size 刻度 53px\"\n },\n \"s26\": {\n \"$type\": \"dimension\",\n \"$value\": {\n \"value\": 26,\n \"unit\": \"px\"\n },\n \"$description\": \"共享 size 刻度 26px\"\n },\n \"s8\": {\n \"$type\": \"dimension\",\n \"$value\": {\n \"value\": 8,\n \"unit\": \"px\"\n },\n \"$description\": \"共享 size 刻度 8px\"\n },\n \"s62\": {\n \"$type\": \"dimension\",\n \"$value\": {\n \"value\": 62,\n \"unit\": \"px\"\n },\n \"$description\": \"共享 size 刻度 62px\"\n },\n \"s10\": {\n \"$type\": \"dimension\",\n \"$value\": {\n \"value\": 10,\n \"unit\": \"px\"\n },\n \"$description\": \"共享 size 刻度 10px\"\n },\n \"s4\": {\n \"$type\": \"dimension\",\n \"$value\": {\n \"value\": 4,\n \"unit\": \"px\"\n },\n \"$description\": \"共享 size 刻度 4px\"\n },\n \"s5\": {\n \"$type\": \"dimension\",\n \"$value\": {\n \"value\": 5,\n \"unit\": \"px\"\n },\n \"$description\": \"共享 size 刻度 5px\"\n },\n \"s196\": {\n \"$type\": \"dimension\",\n \"$value\": {\n \"value\": 196,\n \"unit\": \"px\"\n },\n \"$description\": \"共享 size 刻度 196px\"\n },\n \"s480\": {\n \"$type\": \"dimension\",\n \"$value\": {\n \"value\": 480,\n \"unit\": \"px\"\n },\n \"$description\": \"共享 size 刻度 480px\"\n },\n \"s1000\": {\n \"$type\": \"dimension\",\n \"$value\": {\n \"value\": 1000,\n \"unit\": \"px\"\n },\n \"$description\": \"共享 size 刻度 1000px\"\n },\n \"s660\": {\n \"$type\": \"dimension\",\n \"$value\": {\n \"value\": 660,\n \"unit\": \"px\"\n },\n \"$description\": \"共享 size 刻度 660px\"\n },\n \"s48\": {\n \"$type\": \"dimension\",\n \"$value\": {\n \"value\": 48,\n \"unit\": \"px\"\n },\n \"$description\": \"共享 size 刻度 48px\"\n },\n \"s100\": {\n \"$type\": \"dimension\",\n \"$value\": {\n \"value\": 100,\n \"unit\": \"px\"\n },\n \"$description\": \"共享 size 刻度 100px\"\n },\n \"s64\": {\n \"$type\": \"dimension\",\n \"$value\": {\n \"value\": 64,\n \"unit\": \"px\"\n },\n \"$description\": \"共享 size 刻度 64px\"\n },\n \"s12\": {\n \"$type\": \"dimension\",\n \"$value\": {\n \"value\": 12,\n \"unit\": \"px\"\n },\n \"$description\": \"共享 size 刻度 12px\"\n },\n \"s6\": {\n \"$type\": \"dimension\",\n \"$value\": {\n \"value\": 6,\n \"unit\": \"px\"\n },\n \"$description\": \"共享 size 刻度 6px\"\n },\n \"s168\": {\n \"$type\": \"dimension\",\n \"$value\": {\n \"value\": 168,\n \"unit\": \"px\"\n },\n \"$description\": \"共享 size 刻度 168px\"\n },\n \"s96\": {\n \"$type\": \"dimension\",\n \"$value\": {\n \"value\": 96,\n \"unit\": \"px\"\n },\n \"$description\": \"共享 size 刻度 96px\"\n },\n \"s56\": {\n \"$type\": \"dimension\",\n \"$value\": {\n \"value\": 56,\n \"unit\": \"px\"\n },\n \"$description\": \"共享 size 刻度 56px\"\n },\n \"s1p5\": {\n \"$type\": \"dimension\",\n \"$value\": {\n \"value\": 1.5,\n \"unit\": \"px\"\n },\n \"$description\": \"共享 size 刻度 1.5px\"\n },\n \"s220\": {\n \"$type\": \"dimension\",\n \"$value\": {\n \"value\": 220,\n \"unit\": \"px\"\n },\n \"$description\": \"共享 size 刻度 220px\"\n },\n \"s379\": {\n \"$type\": \"dimension\",\n \"$value\": {\n \"value\": 379,\n \"unit\": \"px\"\n },\n \"$description\": \"共享 size 刻度 379px\"\n },\n \"s68\": {\n \"$type\": \"dimension\",\n \"$value\": {\n \"value\": 68,\n \"unit\": \"px\"\n },\n \"$description\": \"共享 size 刻度 68px\"\n },\n \"s108\": {\n \"$type\": \"dimension\",\n \"$value\": {\n \"value\": 108,\n \"unit\": \"px\"\n },\n \"$description\": \"共享 size 刻度 108px\"\n },\n \"s70\": {\n \"$type\": \"dimension\",\n \"$value\": {\n \"value\": 70,\n \"unit\": \"px\"\n },\n \"$description\": \"共享 size 刻度 70px\"\n },\n \"s57\": {\n \"$type\": \"dimension\",\n \"$value\": {\n \"value\": 57,\n \"unit\": \"px\"\n },\n \"$description\": \"共享 size 刻度 57px\"\n },\n \"s15\": {\n \"$type\": \"dimension\",\n \"$value\": {\n \"value\": 15,\n \"unit\": \"px\"\n },\n \"$description\": \"共享 size 刻度 15px\"\n },\n \"s244\": {\n \"$type\": \"dimension\",\n \"$value\": {\n \"value\": 244,\n \"unit\": \"px\"\n },\n \"$description\": \"共享 size 刻度 244px\"\n },\n \"s78\": {\n \"$type\": \"dimension\",\n \"$value\": {\n \"value\": 78,\n \"unit\": \"px\"\n },\n \"$description\": \"共享 size 刻度 78px\"\n },\n \"s36\": {\n \"$type\": \"dimension\",\n \"$value\": {\n \"value\": 36,\n \"unit\": \"px\"\n },\n \"$description\": \"共享 size 刻度 36px\"\n },\n \"s23\": {\n \"$type\": \"dimension\",\n \"$value\": {\n \"value\": 23,\n \"unit\": \"px\"\n },\n \"$description\": \"共享 size 刻度 23px\"\n },\n \"s117\": {\n \"$type\": \"dimension\",\n \"$value\": {\n \"value\": 117,\n \"unit\": \"px\"\n },\n \"$description\": \"共享 size 刻度 117px\"\n },\n \"s110\": {\n \"$type\": \"dimension\",\n \"$value\": {\n \"value\": 110,\n \"unit\": \"px\"\n },\n \"$description\": \"共享 size 刻度 110px\"\n },\n \"s156\": {\n \"$type\": \"dimension\",\n \"$value\": {\n \"value\": 156,\n \"unit\": \"px\"\n },\n \"$description\": \"共享 size 刻度 156px\"\n },\n \"s125\": {\n \"$type\": \"dimension\",\n \"$value\": {\n \"value\": 125,\n \"unit\": \"px\"\n },\n \"$description\": \"共享 size 刻度 125px\"\n },\n \"s121\": {\n \"$type\": \"dimension\",\n \"$value\": {\n \"value\": 121,\n \"unit\": \"px\"\n },\n \"$description\": \"共享 size 刻度 121px\"\n },\n \"s127\": {\n \"$type\": \"dimension\",\n \"$value\": {\n \"value\": 127,\n \"unit\": \"px\"\n },\n \"$description\": \"共享 size 刻度 127px\"\n },\n \"s55\": {\n \"$type\": \"dimension\",\n \"$value\": {\n \"value\": 55,\n \"unit\": \"px\"\n },\n \"$description\": \"共享 size 刻度 55px\"\n },\n \"s178\": {\n \"$type\": \"dimension\",\n \"$value\": {\n \"value\": 178,\n \"unit\": \"px\"\n },\n \"$description\": \"共享 size 刻度 178px\"\n },\n \"s497\": {\n \"$type\": \"dimension\",\n \"$value\": {\n \"value\": 497,\n \"unit\": \"px\"\n },\n \"$description\": \"共享 size 刻度 497px\"\n },\n \"s37\": {\n \"$type\": \"dimension\",\n \"$value\": {\n \"value\": 37,\n \"unit\": \"px\"\n },\n \"$description\": \"共享 size 刻度 37px\"\n },\n \"s60\": {\n \"$type\": \"dimension\",\n \"$value\": {\n \"value\": 60,\n \"unit\": \"px\"\n },\n \"$description\": \"共享 size 刻度 60px\"\n },\n \"s7\": {\n \"$type\": \"dimension\",\n \"$value\": {\n \"value\": 7,\n \"unit\": \"px\"\n },\n \"$description\": \"共享 size 刻度 7px\"\n },\n \"s128\": {\n \"$type\": \"dimension\",\n \"$value\": {\n \"value\": 128,\n \"unit\": \"px\"\n },\n \"$description\": \"共享 size 刻度 128px\"\n },\n \"s290\": {\n \"$type\": \"dimension\",\n \"$value\": {\n \"value\": 290,\n \"unit\": \"px\"\n },\n \"$description\": \"共享 size 刻度 290px\"\n },\n \"s210\": {\n \"$type\": \"dimension\",\n \"$value\": {\n \"value\": 210,\n \"unit\": \"px\"\n },\n \"$description\": \"共享 size 刻度 210px\"\n },\n \"s231\": {\n \"$type\": \"dimension\",\n \"$value\": {\n \"value\": 231,\n \"unit\": \"px\"\n },\n \"$description\": \"共享 size 刻度 231px\"\n },\n \"s440\": {\n \"$type\": \"dimension\",\n \"$value\": {\n \"value\": 440,\n \"unit\": \"px\"\n },\n \"$description\": \"共享 size 刻度 440px\"\n },\n \"s9\": {\n \"$type\": \"dimension\",\n \"$value\": {\n \"value\": 9,\n \"unit\": \"px\"\n },\n \"$description\": \"共享 size 刻度 9px\"\n },\n \"s190\": {\n \"$type\": \"dimension\",\n \"$value\": {\n \"value\": 190,\n \"unit\": \"px\"\n },\n \"$description\": \"共享 size 刻度 190px\"\n },\n \"s130\": {\n \"$type\": \"dimension\",\n \"$value\": {\n \"value\": 130,\n \"unit\": \"px\"\n },\n \"$description\": \"共享 size 刻度 130px\"\n },\n \"s200\": {\n \"$type\": \"dimension\",\n \"$value\": {\n \"value\": 200,\n \"unit\": \"px\"\n },\n \"$description\": \"共享 size 刻度 200px\"\n },\n \"s150\": {\n \"$type\": \"dimension\",\n \"$value\": {\n \"value\": 150,\n \"unit\": \"px\"\n },\n \"$description\": \"共享 size 刻度 150px\"\n },\n \"s350\": {\n \"$type\": \"dimension\",\n \"$value\": {\n \"value\": 350,\n \"unit\": \"px\"\n },\n \"$description\": \"共享 size 刻度 350px\"\n },\n \"s493\": {\n \"$type\": \"dimension\",\n \"$value\": {\n \"value\": 493,\n \"unit\": \"px\"\n },\n \"$description\": \"共享 size 刻度 493px\"\n },\n \"s17\": {\n \"$type\": \"dimension\",\n \"$value\": {\n \"value\": 17,\n \"unit\": \"px\"\n },\n \"$description\": \"共享 size 刻度 17px\"\n }\n },\n \"space\": {\n \"s6\": {\n \"$type\": \"dimension\",\n \"$value\": {\n \"value\": 6,\n \"unit\": \"px\"\n },\n \"$description\": \"共享 space 刻度 6px\"\n },\n \"s18\": {\n \"$type\": \"dimension\",\n \"$value\": {\n \"value\": 18,\n \"unit\": \"px\"\n },\n \"$description\": \"共享 space 刻度 18px\"\n },\n \"s3\": {\n \"$type\": \"dimension\",\n \"$value\": {\n \"value\": 3,\n \"unit\": \"px\"\n },\n \"$description\": \"共享 space 刻度 3px\"\n },\n \"s10\": {\n \"$type\": \"dimension\",\n \"$value\": {\n \"value\": 10,\n \"unit\": \"px\"\n },\n \"$description\": \"共享 space 刻度 10px\"\n },\n \"s8\": {\n \"$type\": \"dimension\",\n \"$value\": {\n \"value\": 8,\n \"unit\": \"px\"\n },\n \"$description\": \"共享 space 刻度 8px\"\n },\n \"s22\": {\n \"$type\": \"dimension\",\n \"$value\": {\n \"value\": 22,\n \"unit\": \"px\"\n },\n \"$description\": \"共享 space 刻度 22px\"\n },\n \"s7\": {\n \"$type\": \"dimension\",\n \"$value\": {\n \"value\": 7,\n \"unit\": \"px\"\n },\n \"$description\": \"共享 space 刻度 7px\"\n },\n \"s14\": {\n \"$type\": \"dimension\",\n \"$value\": {\n \"value\": 14,\n \"unit\": \"px\"\n },\n \"$description\": \"共享 space 刻度 14px\"\n },\n \"s84\": {\n \"$type\": \"dimension\",\n \"$value\": {\n \"value\": 84,\n \"unit\": \"px\"\n },\n \"$description\": \"共享 space 刻度 84px\"\n },\n \"s4\": {\n \"$type\": \"dimension\",\n \"$value\": {\n \"value\": 4,\n \"unit\": \"px\"\n },\n \"$description\": \"共享 space 刻度 4px\"\n },\n \"s2\": {\n \"$type\": \"dimension\",\n \"$value\": {\n \"value\": 2,\n \"unit\": \"px\"\n },\n \"$description\": \"共享 space 刻度 2px\"\n },\n \"s12\": {\n \"$type\": \"dimension\",\n \"$value\": {\n \"value\": 12,\n \"unit\": \"px\"\n },\n \"$description\": \"共享 space 刻度 12px\"\n },\n \"s5\": {\n \"$type\": \"dimension\",\n \"$value\": {\n \"value\": 5,\n \"unit\": \"px\"\n },\n \"$description\": \"共享 space 刻度 5px\"\n },\n \"s26\": {\n \"$type\": \"dimension\",\n \"$value\": {\n \"value\": 26,\n \"unit\": \"px\"\n },\n \"$description\": \"共享 space 刻度 26px\"\n },\n \"s16\": {\n \"$type\": \"dimension\",\n \"$value\": {\n \"value\": 16,\n \"unit\": \"px\"\n },\n \"$description\": \"共享 space 刻度 16px\"\n },\n \"s24\": {\n \"$type\": \"dimension\",\n \"$value\": {\n \"value\": 24,\n \"unit\": \"px\"\n },\n \"$description\": \"共享 space 刻度 24px\"\n },\n \"s30\": {\n \"$type\": \"dimension\",\n \"$value\": {\n \"value\": 30,\n \"unit\": \"px\"\n },\n \"$description\": \"共享 space 刻度 30px\"\n },\n \"s1\": {\n \"$type\": \"dimension\",\n \"$value\": {\n \"value\": 1,\n \"unit\": \"px\"\n },\n \"$description\": \"共享 space 刻度 1px\"\n },\n \"s15\": {\n \"$type\": \"dimension\",\n \"$value\": {\n \"value\": 15,\n \"unit\": \"px\"\n },\n \"$description\": \"共享 space 刻度 15px\"\n },\n \"s13\": {\n \"$type\": \"dimension\",\n \"$value\": {\n \"value\": 13,\n \"unit\": \"px\"\n },\n \"$description\": \"共享 space 刻度 13px\"\n },\n \"s20\": {\n \"$type\": \"dimension\",\n \"$value\": {\n \"value\": 20,\n \"unit\": \"px\"\n },\n \"$description\": \"共享 space 刻度 20px\"\n },\n \"s29\": {\n \"$type\": \"dimension\",\n \"$value\": {\n \"value\": 29,\n \"unit\": \"px\"\n },\n \"$description\": \"共享 space 刻度 29px\"\n },\n \"s9\": {\n \"$type\": \"dimension\",\n \"$value\": {\n \"value\": 9,\n \"unit\": \"px\"\n },\n \"$description\": \"共享 space 刻度 9px\"\n },\n \"s11\": {\n \"$type\": \"dimension\",\n \"$value\": {\n \"value\": 11,\n \"unit\": \"px\"\n },\n \"$description\": \"共享 space 刻度 11px\"\n },\n \"s115\": {\n \"$type\": \"dimension\",\n \"$value\": {\n \"value\": 115,\n \"unit\": \"px\"\n },\n \"$description\": \"共享 space 刻度 115px\"\n },\n \"s34\": {\n \"$type\": \"dimension\",\n \"$value\": {\n \"value\": 34,\n \"unit\": \"px\"\n },\n \"$description\": \"共享 space 刻度 34px\"\n },\n \"s40\": {\n \"$type\": \"dimension\",\n \"$value\": {\n \"value\": 40,\n \"unit\": \"px\"\n },\n \"$description\": \"共享 space 刻度 40px\"\n },\n \"s28\": {\n \"$type\": \"dimension\",\n \"$value\": {\n \"value\": 28,\n \"unit\": \"px\"\n },\n \"$description\": \"共享 space 刻度 28px\"\n },\n \"s44\": {\n \"$type\": \"dimension\",\n \"$value\": {\n \"value\": 44,\n \"unit\": \"px\"\n },\n \"$description\": \"共享 space 刻度 44px\"\n },\n \"s23\": {\n \"$type\": \"dimension\",\n \"$value\": {\n \"value\": 23,\n \"unit\": \"px\"\n },\n \"$description\": \"共享 space 刻度 23px\"\n },\n \"s70\": {\n \"$type\": \"dimension\",\n \"$value\": {\n \"value\": 70,\n \"unit\": \"px\"\n },\n \"$description\": \"共享 space 刻度 70px\"\n },\n \"s25\": {\n \"$type\": \"dimension\",\n \"$value\": {\n \"value\": 25,\n \"unit\": \"px\"\n },\n \"$description\": \"共享 space 刻度 25px\"\n },\n \"s19\": {\n \"$type\": \"dimension\",\n \"$value\": {\n \"value\": 19,\n \"unit\": \"px\"\n },\n \"$description\": \"共享 space 刻度 19px\"\n },\n \"s47\": {\n \"$type\": \"dimension\",\n \"$value\": {\n \"value\": 47,\n \"unit\": \"px\"\n },\n \"$description\": \"共享 space 刻度 47px\"\n }\n },\n \"duration\": {\n \"s240\": {\n \"$type\": \"duration\",\n \"$value\": {\n \"value\": 240,\n \"unit\": \"ms\"\n },\n \"$description\": \"共享 duration 刻度 240ms\"\n },\n \"s800\": {\n \"$type\": \"duration\",\n \"$value\": {\n \"value\": 800,\n \"unit\": \"ms\"\n },\n \"$description\": \"共享 duration 刻度 800ms\"\n },\n \"s180\": {\n \"$type\": \"duration\",\n \"$value\": {\n \"value\": 180,\n \"unit\": \"ms\"\n },\n \"$description\": \"共享 duration 刻度 180ms\"\n },\n \"s140\": {\n \"$type\": \"duration\",\n \"$value\": {\n \"value\": 140,\n \"unit\": \"ms\"\n },\n \"$description\": \"共享 duration 刻度 140ms\"\n }\n },\n \"opacity\": {\n \"s0p65\": {\n \"$type\": \"number\",\n \"$value\": 0.65,\n \"$description\": \"共享 opacity 刻度 0.65\"\n },\n \"s0p5\": {\n \"$type\": \"number\",\n \"$value\": 0.5,\n \"$description\": \"共享 opacity 刻度 0.5\"\n },\n \"s0p8\": {\n \"$type\": \"number\",\n \"$value\": 0.8,\n \"$description\": \"共享 opacity 刻度 0.8\"\n },\n \"s0p4\": {\n \"$type\": \"number\",\n \"$value\": 0.4,\n \"$description\": \"共享 opacity 刻度 0.4\"\n }\n },\n \"shadowSize\": {\n \"s8\": {\n \"$type\": \"dimension\",\n \"$value\": {\n \"value\": 8,\n \"unit\": \"px\"\n },\n \"$description\": \"共享 shadowSize 刻度 8px\"\n },\n \"s20\": {\n \"$type\": \"dimension\",\n \"$value\": {\n \"value\": 20,\n \"unit\": \"px\"\n },\n \"$description\": \"共享 shadowSize 刻度 20px\"\n },\n \"s12\": {\n \"$type\": \"dimension\",\n \"$value\": {\n \"value\": 12,\n \"unit\": \"px\"\n },\n \"$description\": \"共享 shadowSize 刻度 12px\"\n },\n \"s1\": {\n \"$type\": \"dimension\",\n \"$value\": {\n \"value\": 1,\n \"unit\": \"px\"\n },\n \"$description\": \"共享 shadowSize 刻度 1px\"\n },\n \"s4\": {\n \"$type\": \"dimension\",\n \"$value\": {\n \"value\": 4,\n \"unit\": \"px\"\n },\n \"$description\": \"共享 shadowSize 刻度 4px\"\n },\n \"s10\": {\n \"$type\": \"dimension\",\n \"$value\": {\n \"value\": 10,\n \"unit\": \"px\"\n },\n \"$description\": \"共享 shadowSize 刻度 10px\"\n },\n \"s2\": {\n \"$type\": \"dimension\",\n \"$value\": {\n \"value\": 2,\n \"unit\": \"px\"\n },\n \"$description\": \"共享 shadowSize 刻度 2px\"\n },\n \"s36\": {\n \"$type\": \"dimension\",\n \"$value\": {\n \"value\": 36,\n \"unit\": \"px\"\n },\n \"$description\": \"共享 shadowSize 刻度 36px\"\n },\n \"s5\": {\n \"$type\": \"dimension\",\n \"$value\": {\n \"value\": 5,\n \"unit\": \"px\"\n },\n \"$description\": \"共享 shadowSize 刻度 5px\"\n },\n \"s3\": {\n \"$type\": \"dimension\",\n \"$value\": {\n \"value\": 3,\n \"unit\": \"px\"\n },\n \"$description\": \"共享 shadowSize 刻度 3px\"\n },\n \"s24\": {\n \"$type\": \"dimension\",\n \"$value\": {\n \"value\": 24,\n \"unit\": \"px\"\n },\n \"$description\": \"共享 shadowSize 刻度 24px\"\n },\n \"s80\": {\n \"$type\": \"dimension\",\n \"$value\": {\n \"value\": 80,\n \"unit\": \"px\"\n },\n \"$description\": \"共享 shadowSize 刻度 80px\"\n },\n \"s15\": {\n \"$type\": \"dimension\",\n \"$value\": {\n \"value\": 15,\n \"unit\": \"px\"\n },\n \"$description\": \"共享 shadowSize 刻度 15px\"\n },\n \"s28\": {\n \"$type\": \"dimension\",\n \"$value\": {\n \"value\": 28,\n \"unit\": \"px\"\n },\n \"$description\": \"共享 shadowSize 刻度 28px\"\n },\n \"s14\": {\n \"$type\": \"dimension\",\n \"$value\": {\n \"value\": 14,\n \"unit\": \"px\"\n },\n \"$description\": \"共享 shadowSize 刻度 14px\"\n },\n \"s6\": {\n \"$type\": \"dimension\",\n \"$value\": {\n \"value\": 6,\n \"unit\": \"px\"\n },\n \"$description\": \"共享 shadowSize 刻度 6px\"\n },\n \"s9\": {\n \"$type\": \"dimension\",\n \"$value\": {\n \"value\": 9,\n \"unit\": \"px\"\n },\n \"$description\": \"共享 shadowSize 刻度 9px\"\n },\n \"s0p5\": {\n \"$type\": \"dimension\",\n \"$value\": {\n \"value\": 0.5,\n \"unit\": \"px\"\n },\n \"$description\": \"共享 shadowSize 刻度 0.5px\"\n },\n \"s7\": {\n \"$type\": \"dimension\",\n \"$value\": {\n \"value\": 7,\n \"unit\": \"px\"\n },\n \"$description\": \"共享 shadowSize 刻度 7px\"\n }\n },\n \"layer\": {\n \"local\": {\n \"s2\": {\n \"$type\": \"number\",\n \"$value\": 2,\n \"$description\": \"共享 layer.local 刻度 2\"\n },\n \"s3\": {\n \"$type\": \"number\",\n \"$value\": 3,\n \"$description\": \"共享 layer.local 刻度 3\"\n },\n \"s1100\": {\n \"$type\": \"number\",\n \"$value\": 1100,\n \"$description\": \"共享 layer.local 刻度 1100\"\n },\n \"s5\": {\n \"$type\": \"number\",\n \"$value\": 5,\n \"$description\": \"共享 layer.local 刻度 5\"\n },\n \"s10\": {\n \"$type\": \"number\",\n \"$value\": 10,\n \"$description\": \"共享 layer.local 刻度 10\"\n }\n }\n },\n \"lineClamp\": {\n \"s4\": {\n \"$type\": \"number\",\n \"$value\": 4,\n \"$description\": \"共享 lineClamp 刻度 4\"\n },\n \"s2\": {\n \"$type\": \"number\",\n \"$value\": 2,\n \"$description\": \"共享 lineClamp 刻度 2\"\n }\n }\n }\n },\n \"semantic\": {\n \"color\": {\n \"surface\": {\n \"page\": {\n \"dark\": {\n \"$type\": \"color\",\n \"$value\": \"{seed.ui.color.page}\",\n \"$description\": \"surface.page,供组件共同引用\"\n }\n },\n \"default\": {\n \"dark\": {\n \"$type\": \"color\",\n \"$value\": \"{seed.ui.color.surface}\",\n \"$description\": \"surface.default,供组件共同引用\"\n }\n },\n \"raised\": {\n \"dark\": {\n \"$type\": \"color\",\n \"$value\": \"{seed.ui.color.elevated}\",\n \"$description\": \"surface.raised,供组件共同引用\"\n }\n },\n \"control\": {\n \"dark\": {\n \"$type\": \"color\",\n \"$value\": \"{seed.ui.color.control}\",\n \"$description\": \"surface.control,供组件共同引用\"\n }\n },\n \"header\": {\n \"dark\": {\n \"$type\": \"color\",\n \"$value\": \"{seed.ui.color.header}\",\n \"$description\": \"header-background\"\n }\n },\n \"detail\": {\n \"dark\": {\n \"$type\": \"color\",\n \"$value\": \"{seed.ui.color.detail}\",\n \"$description\": \"sidebar-background\"\n }\n }\n },\n \"text\": {\n \"primary\": {\n \"dark\": {\n \"$type\": \"color\",\n \"$value\": \"{seed.ui.color.foreground}\",\n \"$description\": \"text.primary,供组件共同引用\"\n }\n },\n \"secondary\": {\n \"dark\": {\n \"$type\": \"color\",\n \"$value\": \"{seed.ui.color.muted}\",\n \"$description\": \"text.secondary,供组件共同引用\"\n }\n },\n \"tertiary\": {\n \"dark\": {\n \"$type\": \"color\",\n \"$value\": \"{seed.ui.color.subtle}\",\n \"$description\": \"text.tertiary,供组件共同引用\"\n }\n },\n \"onAction\": {\n \"dark\": {\n \"$type\": \"color\",\n \"$value\": \"{semantic.color.text.primary.dark}\",\n \"$description\": \"主操作背景上的文字\"\n }\n }\n },\n \"brand\": {\n \"accent\": {\n \"dark\": {\n \"$type\": \"color\",\n \"$value\": \"{seed.ui.color.primary}\",\n \"$description\": \"brand.accent,供组件共同引用\"\n }\n },\n \"accentHover\": {\n \"dark\": {\n \"$type\": \"color\",\n \"$value\": \"{seed.ui.color.primaryHover}\",\n \"$description\": \"brand.accentHover,供组件共同引用\"\n }\n },\n \"secondary\": {\n \"dark\": {\n \"$type\": \"color\",\n \"$value\": \"{seed.ui.color.violet}\",\n \"$description\": \"brand.secondary,供组件共同引用\"\n }\n }\n },\n \"status\": {\n \"danger\": {\n \"dark\": {\n \"$type\": \"color\",\n \"$value\": \"{seed.ui.color.danger}\",\n \"$description\": \"status.danger,供组件共同引用\"\n }\n },\n \"dangerSurface\": {\n \"dark\": {\n \"$type\": \"color\",\n \"$value\": \"{seed.ui.color.dangerBackground}\",\n \"$description\": \"status.dangerSurface,供组件共同引用\"\n }\n },\n \"success\": {\n \"dark\": {\n \"$type\": \"color\",\n \"$value\": \"{seed.ui.color.success}\",\n \"$description\": \"status.success,供组件共同引用\"\n }\n }\n },\n \"border\": {\n \"default\": {\n \"dark\": {\n \"$type\": \"color\",\n \"$value\": \"{seed.ui.color.border}\",\n \"$description\": \"border.default,供组件共同引用\"\n }\n }\n },\n \"scrim\": {\n \"media\": {\n \"dark\": {\n \"$type\": \"color\",\n \"$value\": \"{seed.ui.color.info}\",\n \"$description\": \"scrim.media,供组件共同引用\"\n }\n },\n \"backdrop\": {\n \"dark\": {\n \"$type\": \"color\",\n \"$value\": \"{seed.ui.color.overlay}\",\n \"$description\": \"scrim.backdrop,供组件共同引用\"\n }\n },\n \"preview\": {\n \"dark\": {\n \"$type\": \"color\",\n \"$value\": {\n \"colorSpace\": \"srgb\",\n \"components\": [\n 0,\n 0,\n 0\n ],\n \"hex\": \"#000000\",\n \"alpha\": 0.65\n },\n \"$description\": \"租户颜色原始值\"\n }\n }\n },\n \"primary\": {\n \"dark\": {\n \"$type\": \"color\",\n \"$value\": \"{seed.ui.color.primaryAccessible}\",\n \"$description\": \"主操作色,需与 onAction 验证对比度\"\n }\n },\n \"focus\": {\n \"ring\": {\n \"dark\": {\n \"$type\": \"color\",\n \"$value\": \"{semantic.color.primary.dark}\",\n \"$description\": \"键盘焦点色,可独立覆盖\"\n }\n }\n },\n \"action\": {\n \"primaryHover\": {\n \"dark\": {\n \"$type\": \"color\",\n \"$value\": \"{semantic.color.primary.dark}\",\n \"$description\": \"主操作悬停状态\"\n }\n }\n },\n \"effect\": {\n \"start\": {\n \"dark\": {\n \"$type\": \"color\",\n \"$value\": \"{seed.ui.color.blueGlow}\",\n \"$description\": \"特效色源;Shader 使用纯色与独立强度\"\n }\n },\n \"end\": {\n \"dark\": {\n \"$type\": \"color\",\n \"$value\": \"{seed.ui.color.violetGlow}\",\n \"$description\": \"特效色源;Shader 使用纯色与独立强度\"\n }\n },\n \"lightEdgeStart\": {\n \"dark\": {\n \"$type\": \"color\",\n \"$value\": \"{seed.ui.color.lightEdgeBlue}\",\n \"$description\": \"特效色源;Shader 使用纯色与独立强度\"\n }\n }\n },\n \"sample\": {\n \"inkLight\": {\n \"$type\": \"color\",\n \"$value\": \"{seed.ui.color.white}\",\n \"$description\": \"sample-ink-light\"\n },\n \"inkDark\": {\n \"$type\": \"color\",\n \"$value\": \"{seed.ui.color.black}\",\n \"$description\": \"sample-ink-dark\"\n }\n }\n },\n \"font\": {\n \"body\": {\n \"$type\": \"fontFamily\",\n \"$value\": [\n \"system-ui\",\n \"sans-serif\"\n ],\n \"$description\": \"正文与控件字体\"\n },\n \"size\": {\n \"xs\": {\n \"$type\": \"dimension\",\n \"$value\": {\n \"value\": 12,\n \"unit\": \"px\"\n },\n \"$description\": \"共享 typography.size 刻度 12px\"\n },\n \"ui11\": {\n \"$type\": \"dimension\",\n \"$value\": {\n \"value\": 11,\n \"unit\": \"px\"\n },\n \"$description\": \"共享 typography.size 刻度 11px\"\n },\n \"ui17\": {\n \"$type\": \"dimension\",\n \"$value\": {\n \"value\": 17,\n \"unit\": \"px\"\n },\n \"$description\": \"共享 typography.size 刻度 17px\"\n },\n \"sm\": {\n \"$type\": \"dimension\",\n \"$value\": {\n \"value\": 14,\n \"unit\": \"px\"\n },\n \"$description\": \"共享 typography.size 刻度 14px\"\n },\n \"ui22\": {\n \"$type\": \"dimension\",\n \"$value\": {\n \"value\": 22,\n \"unit\": \"px\"\n },\n \"$description\": \"共享 typography.size 刻度 22px\"\n },\n \"xl\": {\n \"$type\": \"dimension\",\n \"$value\": {\n \"value\": 20,\n \"unit\": \"px\"\n },\n \"$description\": \"共享 typography.size 刻度 20px\"\n },\n \"ui10\": {\n \"$type\": \"dimension\",\n \"$value\": {\n \"value\": 10,\n \"unit\": \"px\"\n },\n \"$description\": \"共享 typography.size 刻度 10px\"\n },\n \"lg\": {\n \"$type\": \"dimension\",\n \"$value\": {\n \"value\": 18,\n \"unit\": \"px\"\n },\n \"$description\": \"共享 typography.size 刻度 18px\"\n },\n \"ui28\": {\n \"$type\": \"dimension\",\n \"$value\": {\n \"value\": 28,\n \"unit\": \"px\"\n },\n \"$description\": \"共享 typography.size 刻度 28px\"\n },\n \"ui42\": {\n \"$type\": \"dimension\",\n \"$value\": {\n \"value\": 42,\n \"unit\": \"px\"\n },\n \"$description\": \"共享 typography.size 刻度 42px\"\n },\n \"base\": {\n \"$type\": \"dimension\",\n \"$value\": {\n \"value\": 16,\n \"unit\": \"px\"\n },\n \"$description\": \"共享 typography.size 刻度 16px\"\n },\n \"ui15\": {\n \"$type\": \"dimension\",\n \"$value\": {\n \"value\": 15,\n \"unit\": \"px\"\n },\n \"$description\": \"共享 typography.size 刻度 15px\"\n },\n \"ui21\": {\n \"$type\": \"dimension\",\n \"$value\": {\n \"value\": 21,\n \"unit\": \"px\"\n },\n \"$description\": \"共享 typography.size 刻度 21px\"\n },\n \"ui13\": {\n \"$type\": \"dimension\",\n \"$value\": {\n \"value\": 13,\n \"unit\": \"px\"\n },\n \"$description\": \"共享 typography.size 刻度 13px\"\n },\n \"4xl\": {\n \"$type\": \"dimension\",\n \"$value\": {\n \"value\": 36,\n \"unit\": \"px\"\n },\n \"$description\": \"共享 typography.size 刻度 36px\"\n },\n \"3xl\": {\n \"$type\": \"dimension\",\n \"$value\": {\n \"value\": 30,\n \"unit\": \"px\"\n },\n \"$description\": \"共享 typography.size 刻度 30px\"\n },\n \"ui9\": {\n \"$type\": \"dimension\",\n \"$value\": {\n \"value\": 9,\n \"unit\": \"px\"\n },\n \"$description\": \"共享 typography.size 刻度 9px\"\n }\n }\n },\n \"ui\": {\n \"control\": {\n \"height\": {\n \"sm\": {\n \"$type\": \"dimension\",\n \"$value\": {\n \"value\": 28,\n \"unit\": \"px\"\n },\n \"$description\": \"sm 控件高度\"\n },\n \"md\": {\n \"$type\": \"dimension\",\n \"$value\": {\n \"value\": 34,\n \"unit\": \"px\"\n },\n \"$description\": \"md 控件高度\"\n },\n \"lg\": {\n \"$type\": \"dimension\",\n \"$value\": {\n \"value\": 42,\n \"unit\": \"px\"\n },\n \"$description\": \"lg 控件高度\"\n }\n },\n \"paddingInline\": {\n \"sm\": {\n \"$type\": \"dimension\",\n \"$value\": \"{seed.ui.space.s10}\",\n \"$description\": \"sm 控件横向留白\"\n },\n \"md\": {\n \"$type\": \"dimension\",\n \"$value\": \"{seed.ui.space.s18}\",\n \"$description\": \"md 控件横向留白\"\n },\n \"lg\": {\n \"$type\": \"dimension\",\n \"$value\": \"{seed.ui.space.s22}\",\n \"$description\": \"lg 控件横向留白\"\n }\n }\n },\n \"radius\": {\n \"control\": {\n \"$type\": \"dimension\",\n \"$value\": \"{seed.ui.radius.r24}\",\n \"$description\": \"control 圆角语义,可独立覆盖\"\n },\n \"container\": {\n \"$type\": \"dimension\",\n \"$value\": \"{seed.ui.radius.r16}\",\n \"$description\": \"container 圆角语义,可独立覆盖\"\n },\n \"content\": {\n \"$type\": \"dimension\",\n \"$value\": \"{seed.ui.radius.r12}\",\n \"$description\": \"content 圆角语义,可独立覆盖\"\n },\n \"pill\": {\n \"$type\": \"dimension\",\n \"$value\": \"{seed.ui.radius.r999}\",\n \"$description\": \"pill 圆角语义,可独立覆盖\"\n }\n },\n \"spacing\": {\n \"fieldGap\": {\n \"$type\": \"dimension\",\n \"$value\": \"{seed.ui.space.s6}\",\n \"$description\": \"fieldGap 共享间距\"\n },\n \"controlGap\": {\n \"$type\": \"dimension\",\n \"$value\": \"{seed.ui.space.s6}\",\n \"$description\": \"controlGap 共享间距\"\n },\n \"sectionGap\": {\n \"$type\": \"dimension\",\n \"$value\": \"{seed.ui.space.s24}\",\n \"$description\": \"sectionGap 共享间距\"\n },\n \"surfacePadding\": {\n \"$type\": \"dimension\",\n \"$value\": \"{seed.ui.space.s16}\",\n \"$description\": \"surfacePadding 共享间距\"\n },\n \"pagePadding\": {\n \"$type\": \"dimension\",\n \"$value\": \"{seed.ui.space.s14}\",\n \"$description\": \"pagePadding 共享间距\"\n }\n },\n \"icon\": {\n \"size\": {\n \"sm\": {\n \"$type\": \"dimension\",\n \"$value\": \"{seed.ui.size.s14}\",\n \"$description\": \"sm 图标尺寸\"\n },\n \"md\": {\n \"$type\": \"dimension\",\n \"$value\": \"{seed.ui.size.s16}\",\n \"$description\": \"md 图标尺寸\"\n },\n \"lg\": {\n \"$type\": \"dimension\",\n \"$value\": \"{seed.ui.size.s20}\",\n \"$description\": \"lg 图标尺寸\"\n },\n \"xl\": {\n \"$type\": \"dimension\",\n \"$value\": \"{seed.ui.size.s24}\",\n \"$description\": \"xl 图标尺寸\"\n }\n },\n \"target\": {\n \"sm\": {\n \"$type\": \"dimension\",\n \"$value\": \"{seed.ui.size.s24}\",\n \"$description\": \"sm 图标点击区域\"\n },\n \"md\": {\n \"$type\": \"dimension\",\n \"$value\": \"{seed.ui.size.s28}\",\n \"$description\": \"md 图标点击区域\"\n },\n \"lg\": {\n \"$type\": \"dimension\",\n \"$value\": \"{seed.ui.size.s36}\",\n \"$description\": \"lg 图标点击区域\"\n }\n }\n },\n \"opacity\": {\n \"disabled\": {\n \"$type\": \"number\",\n \"$value\": 0.5,\n \"$description\": \"disabled 共享状态透明度\"\n },\n \"busy\": {\n \"$type\": \"number\",\n \"$value\": 0.8,\n \"$description\": \"busy 共享状态透明度\"\n }\n },\n \"motion\": {\n \"pressDuration\": {\n \"$type\": \"duration\",\n \"$value\": \"{seed.ui.duration.s140}\",\n \"$description\": \"pressDuration 动效时长\"\n },\n \"popupDuration\": {\n \"$type\": \"duration\",\n \"$value\": \"{seed.ui.duration.s180}\",\n \"$description\": \"popupDuration 动效时长\"\n },\n \"revealDuration\": {\n \"$type\": \"duration\",\n \"$value\": \"{seed.ui.duration.s240}\",\n \"$description\": \"revealDuration 动效时长\"\n },\n \"spinnerDuration\": {\n \"$type\": \"duration\",\n \"$value\": \"{seed.ui.duration.s800}\",\n \"$description\": \"spinnerDuration 动效时长\"\n },\n \"pressedScale\": {\n \"$type\": \"number\",\n \"$value\": 0.97,\n \"$description\": \"按下与浮层进入缩放\"\n },\n \"hoverBrightness\": {\n \"$type\": \"number\",\n \"$value\": 1.14,\n \"$description\": \"按钮悬停亮度\"\n }\n },\n \"glass\": {\n \"blur\": {\n \"$type\": \"dimension\",\n \"$value\": {\n \"value\": 14,\n \"unit\": \"px\"\n },\n \"$description\": \"通用毛玻璃模糊半径\"\n },\n \"saturation\": {\n \"$type\": \"number\",\n \"$value\": 1.25,\n \"$description\": \"通用毛玻璃饱和度\"\n }\n }\n }\n },\n \"component\": {\n \"ui\": {\n \"page\": {\n \"$type\": \"color\",\n \"$value\": \"{semantic.color.surface.page.dark}\",\n \"$description\": \"surface.page(兼容 CSS 变量)\"\n },\n \"surface\": {\n \"$type\": \"color\",\n \"$value\": \"{semantic.color.surface.default.dark}\",\n \"$description\": \"surface.default(兼容 CSS 变量)\"\n },\n \"elevated\": {\n \"$type\": \"color\",\n \"$value\": \"{semantic.color.surface.raised.dark}\",\n \"$description\": \"surface.raised(兼容 CSS 变量)\"\n },\n \"control\": {\n \"$type\": \"color\",\n \"$value\": \"{semantic.color.surface.control.dark}\",\n \"$description\": \"surface.control(兼容 CSS 变量)\"\n },\n \"foreground\": {\n \"$type\": \"color\",\n \"$value\": \"{semantic.color.text.primary.dark}\",\n \"$description\": \"text.primary(兼容 CSS 变量)\"\n },\n \"muted\": {\n \"$type\": \"color\",\n \"$value\": \"{semantic.color.text.secondary.dark}\",\n \"$description\": \"text.secondary(兼容 CSS 变量)\"\n },\n \"subtle\": {\n \"$type\": \"color\",\n \"$value\": \"{semantic.color.text.tertiary.dark}\",\n \"$description\": \"text.tertiary(兼容 CSS 变量)\"\n },\n \"primary\": {\n \"$type\": \"color\",\n \"$value\": \"{semantic.color.brand.accent.dark}\",\n \"$description\": \"brand.accent(兼容 CSS 变量)\"\n },\n \"primaryHover\": {\n \"$type\": \"color\",\n \"$value\": \"{semantic.color.brand.accentHover.dark}\",\n \"$description\": \"brand.accentHover(兼容 CSS 变量)\"\n },\n \"violet\": {\n \"$type\": \"color\",\n \"$value\": \"{semantic.color.brand.secondary.dark}\",\n \"$description\": \"brand.secondary(兼容 CSS 变量)\"\n },\n \"danger\": {\n \"$type\": \"color\",\n \"$value\": \"{semantic.color.status.danger.dark}\",\n \"$description\": \"status.danger(兼容 CSS 变量)\"\n },\n \"dangerBackground\": {\n \"$type\": \"color\",\n \"$value\": \"{semantic.color.status.dangerSurface.dark}\",\n \"$description\": \"status.dangerSurface(兼容 CSS 变量)\"\n },\n \"success\": {\n \"$type\": \"color\",\n \"$value\": \"{semantic.color.status.success.dark}\",\n \"$description\": \"status.success(兼容 CSS 变量)\"\n },\n \"border\": {\n \"$type\": \"color\",\n \"$value\": \"{semantic.color.border.default.dark}\",\n \"$description\": \"border.default(兼容 CSS 变量)\"\n },\n \"info\": {\n \"$type\": \"color\",\n \"$value\": \"{semantic.color.scrim.media.dark}\",\n \"$description\": \"scrim.media(兼容 CSS 变量)\"\n },\n \"overlay\": {\n \"$type\": \"color\",\n \"$value\": \"{semantic.color.scrim.backdrop.dark}\",\n \"$description\": \"scrim.backdrop(兼容 CSS 变量)\"\n },\n \"focus\": {\n \"$type\": \"color\",\n \"$value\": \"{semantic.color.focus.ring.dark}\",\n \"$description\": \"焦点环与聚焦描边\"\n },\n \"button\": {\n \"primary\": {\n \"background\": {\n \"$type\": \"color\",\n \"$value\": \"{semantic.color.primary.dark}\",\n \"$description\": \"主按钮背景\"\n },\n \"hover\": {\n \"$type\": \"color\",\n \"$value\": \"{semantic.color.action.primaryHover.dark}\",\n \"$description\": \"主按钮悬停背景\"\n },\n \"foreground\": {\n \"$type\": \"color\",\n \"$value\": \"{semantic.color.text.onAction.dark}\",\n \"$description\": \"主操作文字\"\n }\n },\n \"height\": {\n \"sm\": {\n \"$type\": \"dimension\",\n \"$value\": {\n \"value\": 28,\n \"unit\": \"px\"\n },\n \"$description\": \".monkeys-ui-button[data-size=sm] min-height\"\n },\n \"lg\": {\n \"$type\": \"dimension\",\n \"$value\": {\n \"value\": 42,\n \"unit\": \"px\"\n },\n \"$description\": \".monkeys-ui-button[data-size=lg] min-height\"\n }\n },\n \"glass\": {\n \"blur\": {\n \"$type\": \"dimension\",\n \"$value\": \"{semantic.ui.glass.blur}\",\n \"$description\": \"Inner Light Edge 按钮玻璃 blur\"\n },\n \"saturation\": {\n \"$type\": \"number\",\n \"$value\": \"{semantic.ui.glass.saturation}\",\n \"$description\": \"Inner Light Edge 按钮玻璃 saturation\"\n }\n },\n \"gap\": {\n \"$type\": \"dimension\",\n \"$value\": \"{semantic.ui.spacing.controlGap}\",\n \"$description\": \"button gap 独立覆盖入口\"\n },\n \"paddingInline\": {\n \"sm\": {\n \"$type\": \"dimension\",\n \"$value\": \"{semantic.ui.control.paddingInline.sm}\",\n \"$description\": \"button paddingInline.sm 独立覆盖入口\"\n },\n \"md\": {\n \"$type\": \"dimension\",\n \"$value\": \"{semantic.ui.control.paddingInline.md}\",\n \"$description\": \"button paddingInline.md 独立覆盖入口\"\n },\n \"lg\": {\n \"$type\": \"dimension\",\n \"$value\": \"{semantic.ui.control.paddingInline.lg}\",\n \"$description\": \"button paddingInline.lg 独立覆盖入口\"\n }\n },\n \"paddingBlock\": {\n \"$type\": \"dimension\",\n \"$value\": \"{component.ui.density.default.buttonPaddingBlock}\",\n \"$description\": \"默认按钮纵向留白;尺寸变体可覆盖\"\n }\n },\n \"transparent\": {\n \"$type\": \"color\",\n \"$value\": \"{seed.ui.color.transparent}\",\n \"$description\": \"transparent\"\n },\n \"header-background\": {\n \"$type\": \"color\",\n \"$value\": \"{semantic.color.surface.header.dark}\",\n \"$description\": \"兼容颜色出口\"\n },\n \"sidebar-background\": {\n \"$type\": \"color\",\n \"$value\": \"{semantic.color.surface.detail.dark}\",\n \"$description\": \"兼容颜色出口\"\n },\n \"sample-ink-light\": {\n \"$type\": \"color\",\n \"$value\": \"{semantic.color.sample.inkLight}\",\n \"$description\": \"兼容颜色出口\"\n },\n \"sample-ink-dark\": {\n \"$type\": \"color\",\n \"$value\": \"{semantic.color.sample.inkDark}\",\n \"$description\": \"兼容颜色出口\"\n },\n \"previewInfo\": {\n \"$type\": \"color\",\n \"$value\": \"{semantic.color.scrim.preview.dark}\",\n \"$description\": \"预览信息表面;保留当前 65% alpha\"\n },\n \"blueGlow\": {\n \"$type\": \"color\",\n \"$value\": \"{seed.ui.color.blueGlow}\",\n \"$description\": \"装饰色与透明度,Shader 另取纯色\"\n },\n \"violetGlow\": {\n \"$type\": \"color\",\n \"$value\": \"{seed.ui.color.violetGlow}\",\n \"$description\": \"装饰色与透明度,Shader 另取纯色\"\n },\n \"font\": {\n \"$type\": \"fontFamily\",\n \"$value\": \"{semantic.font.body}\",\n \"$description\": \"字体兼容入口\"\n },\n \"radius\": {\n \"panel\": {\n \"$type\": \"dimension\",\n \"$value\": \"{semantic.ui.radius.container}\",\n \"$description\": \"panel 圆角出口\"\n },\n \"card\": {\n \"$type\": \"dimension\",\n \"$value\": \"{semantic.ui.radius.container}\",\n \"$description\": \"card 圆角出口\"\n },\n \"control\": {\n \"$type\": \"dimension\",\n \"$value\": \"{semantic.ui.radius.control}\",\n \"$description\": \"control 圆角出口\"\n },\n \"info\": {\n \"$type\": \"dimension\",\n \"$value\": \"{semantic.ui.radius.content}\",\n \"$description\": \"info 圆角出口\"\n },\n \"scale\": {\n \"s24\": {\n \"$type\": \"dimension\",\n \"$value\": \"{seed.ui.radius.r24}\",\n \"$description\": \"共享圆角刻度\"\n },\n \"s999\": {\n \"$type\": \"dimension\",\n \"$value\": \"{seed.ui.radius.r999}\",\n \"$description\": \"共享圆角刻度\"\n },\n \"s12\": {\n \"$type\": \"dimension\",\n \"$value\": \"{seed.ui.radius.r12}\",\n \"$description\": \"共享圆角刻度\"\n },\n \"s8\": {\n \"$type\": \"dimension\",\n \"$value\": \"{seed.ui.radius.scale.s8}\",\n \"$description\": \"radius.scale 共享刻度,合并重复值\"\n },\n \"s4\": {\n \"$type\": \"dimension\",\n \"$value\": \"{seed.ui.radius.scale.s4}\",\n \"$description\": \"radius.scale 共享刻度,合并重复值\"\n },\n \"s16\": {\n \"$type\": \"dimension\",\n \"$value\": \"{seed.ui.radius.r16}\",\n \"$description\": \"共享圆角刻度\"\n },\n \"s10\": {\n \"$type\": \"dimension\",\n \"$value\": \"{seed.ui.radius.scale.s10}\",\n \"$description\": \"radius.scale 共享刻度,合并重复值\"\n },\n \"s20\": {\n \"$type\": \"dimension\",\n \"$value\": \"{seed.ui.radius.scale.s20}\",\n \"$description\": \"radius.scale 共享刻度,合并重复值\"\n },\n \"s2\": {\n \"$type\": \"dimension\",\n \"$value\": \"{seed.ui.radius.scale.s2}\",\n \"$description\": \"radius.scale 共享刻度,合并重复值\"\n },\n \"s18\": {\n \"$type\": \"dimension\",\n \"$value\": \"{seed.ui.radius.scale.s18}\",\n \"$description\": \"radius.scale 共享刻度,合并重复值\"\n }\n }\n },\n \"motion\": {\n \"press\": {\n \"$type\": \"duration\",\n \"$value\": \"{semantic.ui.motion.pressDuration}\",\n \"$description\": \"兼容按下时长\"\n },\n \"popup\": {\n \"$type\": \"duration\",\n \"$value\": \"{semantic.ui.motion.popupDuration}\",\n \"$description\": \"兼容浮层时长\"\n },\n \"ease\": {\n \"$type\": \"cubicBezier\",\n \"$value\": [\n 0.2,\n 0.8,\n 0.2,\n 1\n ],\n \"$description\": \"component.ui.motion.ease\"\n },\n \"pressedScale\": {\n \"$type\": \"number\",\n \"$value\": \"{semantic.ui.motion.pressedScale}\",\n \"$description\": \"按钮与浮层缩放\"\n },\n \"hoverBrightness\": {\n \"$type\": \"number\",\n \"$value\": \"{semantic.ui.motion.hoverBrightness}\",\n \"$description\": \"按钮悬停亮度\"\n }\n },\n \"controlHeight\": {\n \"$type\": \"dimension\",\n \"$value\": \"{semantic.ui.control.height.md}\",\n \"$description\": \"常规控件高度兼容入口\"\n },\n \"layout\": {\n \"stackGap\": {\n \"$type\": \"dimension\",\n \"$value\": \"{seed.ui.space.s16}\",\n \"$description\": \"stackGap 布局默认值;实例属性优先\"\n },\n \"sidebarWidth\": {\n \"$type\": \"dimension\",\n \"$value\": {\n \"value\": 252,\n \"unit\": \"px\"\n },\n \"$description\": \"sidebarWidth 布局默认值;实例属性优先\"\n },\n \"cardMinWidth\": {\n \"$type\": \"dimension\",\n \"$value\": {\n \"value\": 178,\n \"unit\": \"px\"\n },\n \"$description\": \"cardMinWidth 布局默认值;实例属性优先\"\n },\n \"gridGap\": {\n \"$type\": \"dimension\",\n \"$value\": \"{seed.ui.space.s20}\",\n \"$description\": \"gridGap 布局默认值;实例属性优先\"\n }\n },\n \"layer\": {\n \"overlayBase\": {\n \"$type\": \"number\",\n \"$value\": 1200,\n \"$description\": \"overlayBase 弹层层级\"\n },\n \"nestingStep\": {\n \"$type\": \"number\",\n \"$value\": 10,\n \"$description\": \"nestingStep 弹层层级\"\n },\n \"contentOffset\": {\n \"$type\": \"number\",\n \"$value\": 1,\n \"$description\": \"contentOffset 弹层层级\"\n },\n \"local\": {\n \"s2\": {\n \"$type\": \"number\",\n \"$value\": \"{seed.ui.layer.local.s2}\",\n \"$description\": \"layer.local 共享刻度,合并重复值\"\n },\n \"s3\": {\n \"$type\": \"number\",\n \"$value\": \"{seed.ui.layer.local.s3}\",\n \"$description\": \"layer.local 共享刻度,合并重复值\"\n },\n \"s1100\": {\n \"$type\": \"number\",\n \"$value\": \"{seed.ui.layer.local.s1100}\",\n \"$description\": \"layer.local 共享刻度,合并重复值\"\n },\n \"s5\": {\n \"$type\": \"number\",\n \"$value\": \"{seed.ui.layer.local.s5}\",\n \"$description\": \"layer.local 共享刻度,合并重复值\"\n },\n \"s10\": {\n \"$type\": \"number\",\n \"$value\": \"{seed.ui.layer.local.s10}\",\n \"$description\": \"layer.local 共享刻度,合并重复值\"\n }\n }\n },\n \"effect\": {\n \"hostHeight\": {\n \"$type\": \"dimension\",\n \"$value\": {\n \"value\": 240,\n \"unit\": \"px\"\n },\n \"$description\": \"独立特效默认高度\"\n },\n \"chroma\": {\n \"intensity\": {\n \"$type\": \"number\",\n \"$value\": 0.7,\n \"$description\": \"chroma 的 intensity;数值单位遵循 Shader API\"\n },\n \"momentum\": {\n \"$type\": \"number\",\n \"$value\": 23,\n \"$description\": \"chroma 的 momentum;数值单位遵循 Shader API\"\n },\n \"radius\": {\n \"$type\": \"number\",\n \"$value\": 6,\n \"$description\": \"chroma 的 radius;数值单位遵循 Shader API\"\n }\n },\n \"aurora\": {\n \"curtainCount\": {\n \"$type\": \"number\",\n \"$value\": 2,\n \"$description\": \"aurora 的 curtainCount;数值单位遵循 Shader API\"\n },\n \"height\": {\n \"$type\": \"number\",\n \"$value\": 81,\n \"$description\": \"aurora 的 height;数值单位遵循 Shader API\"\n },\n \"intensity\": {\n \"$type\": \"number\",\n \"$value\": 64,\n \"$description\": \"aurora 的 intensity;数值单位遵循 Shader API\"\n },\n \"rayDensity\": {\n \"$type\": \"number\",\n \"$value\": 12,\n \"$description\": \"aurora 的 rayDensity;数值单位遵循 Shader API\"\n },\n \"speed\": {\n \"$type\": \"number\",\n \"$value\": 10,\n \"$description\": \"aurora 的 speed;数值单位遵循 Shader API\"\n },\n \"waviness\": {\n \"$type\": \"number\",\n \"$value\": 39,\n \"$description\": \"aurora 的 waviness;数值单位遵循 Shader API\"\n },\n \"rotation\": {\n \"$type\": \"number\",\n \"$value\": 180,\n \"$description\": \"aurora 的 rotation;数值单位遵循 Shader API\"\n }\n },\n \"lightEdge\": {\n \"thickness\": {\n \"$type\": \"number\",\n \"$value\": 0.48,\n \"$description\": \"lightEdge 的 thickness;数值单位遵循 Shader API\"\n },\n \"softness\": {\n \"$type\": \"number\",\n \"$value\": 1,\n \"$description\": \"lightEdge 的 softness;数值单位遵循 Shader API\"\n },\n \"intensity\": {\n \"$type\": \"number\",\n \"$value\": 0.9,\n \"$description\": \"lightEdge 的 intensity;数值单位遵循 Shader API\"\n },\n \"bloom\": {\n \"$type\": \"number\",\n \"$value\": 0.2,\n \"$description\": \"lightEdge 的 bloom;数值单位遵循 Shader API\"\n },\n \"spots\": {\n \"$type\": \"number\",\n \"$value\": 1,\n \"$description\": \"lightEdge 的 spots;数值单位遵循 Shader API\"\n },\n \"spotSize\": {\n \"$type\": \"number\",\n \"$value\": 0.6,\n \"$description\": \"lightEdge 的 spotSize;数值单位遵循 Shader API\"\n },\n \"smoke\": {\n \"$type\": \"number\",\n \"$value\": 0.12,\n \"$description\": \"lightEdge 的 smoke;数值单位遵循 Shader API\"\n },\n \"smokeSize\": {\n \"$type\": \"number\",\n \"$value\": 0.65,\n \"$description\": \"lightEdge 的 smokeSize;数值单位遵循 Shader API\"\n },\n \"speed\": {\n \"$type\": \"number\",\n \"$value\": 0.45,\n \"$description\": \"lightEdge 的 speed;数值单位遵循 Shader API\"\n },\n \"glowBlur\": {\n \"$type\": \"number\",\n \"$value\": 4.5,\n \"$description\": \"lightEdge 的 glowBlur;数值单位遵循 Shader API\"\n },\n \"flowBlur\": {\n \"$type\": \"number\",\n \"$value\": 1,\n \"$description\": \"lightEdge 的 flowBlur;数值单位遵循 Shader API\"\n },\n \"shapeInset\": {\n \"$type\": \"number\",\n \"$value\": 1.5,\n \"$description\": \"lightEdge 的 shapeInset;数值单位遵循 Shader API\"\n }\n },\n \"bottomGlow\": {\n \"referenceWidth\": {\n \"$type\": \"dimension\",\n \"$value\": { \"value\": 730, \"unit\": \"px\" },\n \"$description\": \"bottomGlow 高度与模糊参数对应的基准容器宽度;实际光晕随容器宽度等比缩放\"\n },\n \"intensity\": {\n \"$type\": \"number\",\n \"$value\": 0.95,\n \"$description\": \"bottomGlow 底部光晕强度\"\n },\n \"height\": {\n \"$type\": \"dimension\",\n \"$value\": {\n \"value\": 260,\n \"unit\": \"px\"\n },\n \"$description\": \"bottomGlow 光晕区域高度\"\n },\n \"blur\": {\n \"$type\": \"dimension\",\n \"$value\": {\n \"value\": 28,\n \"unit\": \"px\"\n },\n \"$description\": \"bottomGlow 柔化模糊半径\"\n },\n \"duration\": {\n \"$type\": \"duration\",\n \"$value\": {\n \"value\": 9,\n \"unit\": \"s\"\n },\n \"$description\": \"bottomGlow 光晕漂移动画时长\"\n }\n }\n },\n \"typography\": {\n \"size\": {\n \"s12\": {\n \"$type\": \"dimension\",\n \"$value\": \"{semantic.font.size.xs}\",\n \"$description\": \"typography.size 共享刻度,合并重复值\"\n },\n \"s11\": {\n \"$type\": \"dimension\",\n \"$value\": \"{semantic.font.size.ui11}\",\n \"$description\": \"typography.size 共享刻度,合并重复值\"\n },\n \"s17\": {\n \"$type\": \"dimension\",\n \"$value\": \"{semantic.font.size.ui17}\",\n \"$description\": \"typography.size 共享刻度,合并重复值\"\n },\n \"s14\": {\n \"$type\": \"dimension\",\n \"$value\": \"{semantic.font.size.sm}\",\n \"$description\": \"typography.size 共享刻度,合并重复值\"\n },\n \"s22\": {\n \"$type\": \"dimension\",\n \"$value\": \"{semantic.font.size.ui22}\",\n \"$description\": \"typography.size 共享刻度,合并重复值\"\n },\n \"s20\": {\n \"$type\": \"dimension\",\n \"$value\": \"{semantic.font.size.xl}\",\n \"$description\": \"typography.size 共享刻度,合并重复值\"\n },\n \"s10\": {\n \"$type\": \"dimension\",\n \"$value\": \"{semantic.font.size.ui10}\",\n \"$description\": \"typography.size 共享刻度,合并重复值\"\n },\n \"s18\": {\n \"$type\": \"dimension\",\n \"$value\": \"{semantic.font.size.lg}\",\n \"$description\": \"typography.size 共享刻度,合并重复值\"\n },\n \"s28\": {\n \"$type\": \"dimension\",\n \"$value\": \"{semantic.font.size.ui28}\",\n \"$description\": \"typography.size 共享刻度,合并重复值\"\n },\n \"s42\": {\n \"$type\": \"dimension\",\n \"$value\": \"{semantic.font.size.ui42}\",\n \"$description\": \"typography.size 共享刻度,合并重复值\"\n },\n \"s16\": {\n \"$type\": \"dimension\",\n \"$value\": \"{semantic.font.size.base}\",\n \"$description\": \"typography.size 共享刻度,合并重复值\"\n },\n \"s15\": {\n \"$type\": \"dimension\",\n \"$value\": \"{semantic.font.size.ui15}\",\n \"$description\": \"typography.size 共享刻度,合并重复值\"\n },\n \"s21\": {\n \"$type\": \"dimension\",\n \"$value\": \"{semantic.font.size.ui21}\",\n \"$description\": \"typography.size 共享刻度,合并重复值\"\n },\n \"s13\": {\n \"$type\": \"dimension\",\n \"$value\": \"{semantic.font.size.ui13}\",\n \"$description\": \"typography.size 共享刻度,合并重复值\"\n },\n \"s36\": {\n \"$type\": \"dimension\",\n \"$value\": \"{semantic.font.size.4xl}\",\n \"$description\": \"typography.size 共享刻度,合并重复值\"\n },\n \"s30\": {\n \"$type\": \"dimension\",\n \"$value\": \"{semantic.font.size.3xl}\",\n \"$description\": \"typography.size 共享刻度,合并重复值\"\n },\n \"s9\": {\n \"$type\": \"dimension\",\n \"$value\": \"{semantic.font.size.ui9}\",\n \"$description\": \"typography.size 共享刻度,合并重复值\"\n }\n },\n \"lineHeight\": {\n \"s1p5\": {\n \"$type\": \"number\",\n \"$value\": \"{seed.ui.typography.lineHeight.s1p5}\",\n \"$description\": \"typography.lineHeight 共享刻度,合并重复值\"\n },\n \"s1p4\": {\n \"$type\": \"number\",\n \"$value\": \"{seed.ui.typography.lineHeight.s1p4}\",\n \"$description\": \"typography.lineHeight 共享刻度,合并重复值\"\n },\n \"s1p3\": {\n \"$type\": \"number\",\n \"$value\": \"{seed.ui.typography.lineHeight.s1p3}\",\n \"$description\": \"typography.lineHeight 共享刻度,合并重复值\"\n },\n \"s1p2\": {\n \"$type\": \"number\",\n \"$value\": \"{seed.ui.typography.lineHeight.s1p2}\",\n \"$description\": \"typography.lineHeight 共享刻度,合并重复值\"\n }\n },\n \"weight\": {\n \"s500\": {\n \"$type\": \"number\",\n \"$value\": \"{seed.ui.typography.weight.s500}\",\n \"$description\": \"typography.weight 共享刻度,合并重复值\"\n },\n \"s600\": {\n \"$type\": \"number\",\n \"$value\": \"{seed.ui.typography.weight.s600}\",\n \"$description\": \"typography.weight 共享刻度,合并重复值\"\n },\n \"s700\": {\n \"$type\": \"number\",\n \"$value\": \"{seed.ui.typography.weight.s700}\",\n \"$description\": \"typography.weight 共享刻度,合并重复值\"\n },\n \"s800\": {\n \"$type\": \"number\",\n \"$value\": \"{seed.ui.typography.weight.s800}\",\n \"$description\": \"typography.weight 共享刻度,合并重复值\"\n },\n \"s200\": {\n \"$type\": \"number\",\n \"$value\": \"{seed.ui.typography.weight.s200}\",\n \"$description\": \"typography.weight 共享刻度,合并重复值\"\n },\n \"s400\": {\n \"$type\": \"number\",\n \"$value\": \"{seed.ui.typography.weight.s400}\",\n \"$description\": \"typography.weight 共享刻度,合并重复值\"\n }\n }\n },\n \"size\": {\n \"s2\": {\n \"$type\": \"dimension\",\n \"$value\": \"{seed.ui.size.s2}\",\n \"$description\": \"size 共享刻度,合并重复值\"\n },\n \"s3\": {\n \"$type\": \"dimension\",\n \"$value\": \"{seed.ui.size.s3}\",\n \"$description\": \"size 共享刻度,合并重复值\"\n },\n \"s1\": {\n \"$type\": \"dimension\",\n \"$value\": \"{seed.ui.size.s1}\",\n \"$description\": \"size 共享刻度,合并重复值\"\n },\n \"s28\": {\n \"$type\": \"dimension\",\n \"$value\": \"{seed.ui.size.s28}\",\n \"$description\": \"size 共享刻度,合并重复值\"\n },\n \"s42\": {\n \"$type\": \"dimension\",\n \"$value\": \"{seed.ui.size.s42}\",\n \"$description\": \"size 共享刻度,合并重复值\"\n },\n \"s14\": {\n \"$type\": \"dimension\",\n \"$value\": \"{seed.ui.size.s14}\",\n \"$description\": \"size 共享刻度,合并重复值\"\n },\n \"s24\": {\n \"$type\": \"dimension\",\n \"$value\": \"{seed.ui.size.s24}\",\n \"$description\": \"size 共享刻度,合并重复值\"\n },\n \"s18\": {\n \"$type\": \"dimension\",\n \"$value\": \"{seed.ui.size.s18}\",\n \"$description\": \"size 共享刻度,合并重复值\"\n },\n \"s40\": {\n \"$type\": \"dimension\",\n \"$value\": \"{seed.ui.size.s40}\",\n \"$description\": \"size 共享刻度,合并重复值\"\n },\n \"s16\": {\n \"$type\": \"dimension\",\n \"$value\": \"{seed.ui.size.s16}\",\n \"$description\": \"size 共享刻度,合并重复值\"\n },\n \"s20\": {\n \"$type\": \"dimension\",\n \"$value\": \"{seed.ui.size.s20}\",\n \"$description\": \"size 共享刻度,合并重复值\"\n },\n \"s22\": {\n \"$type\": \"dimension\",\n \"$value\": \"{seed.ui.size.s22}\",\n \"$description\": \"size 共享刻度,合并重复值\"\n },\n \"s140\": {\n \"$type\": \"dimension\",\n \"$value\": \"{seed.ui.size.s140}\",\n \"$description\": \"size 共享刻度,合并重复值\"\n },\n \"s85\": {\n \"$type\": \"dimension\",\n \"$value\": \"{seed.ui.size.s85}\",\n \"$description\": \"size 共享刻度,合并重复值\"\n },\n \"s34\": {\n \"$type\": \"dimension\",\n \"$value\": \"{seed.ui.size.s34}\",\n \"$description\": \"size 共享刻度,合并重复值\"\n },\n \"s320\": {\n \"$type\": \"dimension\",\n \"$value\": \"{seed.ui.size.s320}\",\n \"$description\": \"size 共享刻度,合并重复值\"\n },\n \"s160\": {\n \"$type\": \"dimension\",\n \"$value\": \"{seed.ui.size.s160}\",\n \"$description\": \"size 共享刻度,合并重复值\"\n },\n \"s280\": {\n \"$type\": \"dimension\",\n \"$value\": \"{seed.ui.size.s280}\",\n \"$description\": \"size 共享刻度,合并重复值\"\n },\n \"s32\": {\n \"$type\": \"dimension\",\n \"$value\": \"{seed.ui.size.s32}\",\n \"$description\": \"size 共享刻度,合并重复值\"\n },\n \"s53\": {\n \"$type\": \"dimension\",\n \"$value\": \"{seed.ui.size.s53}\",\n \"$description\": \"size 共享刻度,合并重复值\"\n },\n \"s26\": {\n \"$type\": \"dimension\",\n \"$value\": \"{seed.ui.size.s26}\",\n \"$description\": \"size 共享刻度,合并重复值\"\n },\n \"s8\": {\n \"$type\": \"dimension\",\n \"$value\": \"{seed.ui.size.s8}\",\n \"$description\": \"size 共享刻度,合并重复值\"\n },\n \"s62\": {\n \"$type\": \"dimension\",\n \"$value\": \"{seed.ui.size.s62}\",\n \"$description\": \"size 共享刻度,合并重复值\"\n },\n \"s10\": {\n \"$type\": \"dimension\",\n \"$value\": \"{seed.ui.size.s10}\",\n \"$description\": \"size 共享刻度,合并重复值\"\n },\n \"s4\": {\n \"$type\": \"dimension\",\n \"$value\": \"{seed.ui.size.s4}\",\n \"$description\": \"size 共享刻度,合并重复值\"\n },\n \"s5\": {\n \"$type\": \"dimension\",\n \"$value\": \"{seed.ui.size.s5}\",\n \"$description\": \"size 共享刻度,合并重复值\"\n },\n \"s196\": {\n \"$type\": \"dimension\",\n \"$value\": \"{seed.ui.size.s196}\",\n \"$description\": \"size 共享刻度,合并重复值\"\n },\n \"s480\": {\n \"$type\": \"dimension\",\n \"$value\": \"{seed.ui.size.s480}\",\n \"$description\": \"size 共享刻度,合并重复值\"\n },\n \"s1000\": {\n \"$type\": \"dimension\",\n \"$value\": \"{seed.ui.size.s1000}\",\n \"$description\": \"size 共享刻度,合并重复值\"\n },\n \"s660\": {\n \"$type\": \"dimension\",\n \"$value\": \"{seed.ui.size.s660}\",\n \"$description\": \"size 共享刻度,合并重复值\"\n },\n \"s48\": {\n \"$type\": \"dimension\",\n \"$value\": \"{seed.ui.size.s48}\",\n \"$description\": \"size 共享刻度,合并重复值\"\n },\n \"s100\": {\n \"$type\": \"dimension\",\n \"$value\": \"{seed.ui.size.s100}\",\n \"$description\": \"size 共享刻度,合并重复值\"\n },\n \"s64\": {\n \"$type\": \"dimension\",\n \"$value\": \"{seed.ui.size.s64}\",\n \"$description\": \"size 共享刻度,合并重复值\"\n },\n \"s12\": {\n \"$type\": \"dimension\",\n \"$value\": \"{seed.ui.size.s12}\",\n \"$description\": \"size 共享刻度,合并重复值\"\n },\n \"s6\": {\n \"$type\": \"dimension\",\n \"$value\": \"{seed.ui.size.s6}\",\n \"$description\": \"size 共享刻度,合并重复值\"\n },\n \"s168\": {\n \"$type\": \"dimension\",\n \"$value\": \"{seed.ui.size.s168}\",\n \"$description\": \"size 共享刻度,合并重复值\"\n },\n \"s96\": {\n \"$type\": \"dimension\",\n \"$value\": \"{seed.ui.size.s96}\",\n \"$description\": \"size 共享刻度,合并重复值\"\n },\n \"s56\": {\n \"$type\": \"dimension\",\n \"$value\": \"{seed.ui.size.s56}\",\n \"$description\": \"size 共享刻度,合并重复值\"\n },\n \"s1p5\": {\n \"$type\": \"dimension\",\n \"$value\": \"{seed.ui.size.s1p5}\",\n \"$description\": \"size 共享刻度,合并重复值\"\n },\n \"s220\": {\n \"$type\": \"dimension\",\n \"$value\": \"{seed.ui.size.s220}\",\n \"$description\": \"size 共享刻度,合并重复值\"\n },\n \"s379\": {\n \"$type\": \"dimension\",\n \"$value\": \"{seed.ui.size.s379}\",\n \"$description\": \"size 共享刻度,合并重复值\"\n },\n \"s68\": {\n \"$type\": \"dimension\",\n \"$value\": \"{seed.ui.size.s68}\",\n \"$description\": \"size 共享刻度,合并重复值\"\n },\n \"s108\": {\n \"$type\": \"dimension\",\n \"$value\": \"{seed.ui.size.s108}\",\n \"$description\": \"size 共享刻度,合并重复值\"\n },\n \"s70\": {\n \"$type\": \"dimension\",\n \"$value\": \"{seed.ui.size.s70}\",\n \"$description\": \"size 共享刻度,合并重复值\"\n },\n \"s57\": {\n \"$type\": \"dimension\",\n \"$value\": \"{seed.ui.size.s57}\",\n \"$description\": \"size 共享刻度,合并重复值\"\n },\n \"s15\": {\n \"$type\": \"dimension\",\n \"$value\": \"{seed.ui.size.s15}\",\n \"$description\": \"size 共享刻度,合并重复值\"\n },\n \"s244\": {\n \"$type\": \"dimension\",\n \"$value\": \"{seed.ui.size.s244}\",\n \"$description\": \"size 共享刻度,合并重复值\"\n },\n \"s78\": {\n \"$type\": \"dimension\",\n \"$value\": \"{seed.ui.size.s78}\",\n \"$description\": \"size 共享刻度,合并重复值\"\n },\n \"s36\": {\n \"$type\": \"dimension\",\n \"$value\": \"{seed.ui.size.s36}\",\n \"$description\": \"size 共享刻度,合并重复值\"\n },\n \"s23\": {\n \"$type\": \"dimension\",\n \"$value\": \"{seed.ui.size.s23}\",\n \"$description\": \"size 共享刻度,合并重复值\"\n },\n \"s117\": {\n \"$type\": \"dimension\",\n \"$value\": \"{seed.ui.size.s117}\",\n \"$description\": \"size 共享刻度,合并重复值\"\n },\n \"s110\": {\n \"$type\": \"dimension\",\n \"$value\": \"{seed.ui.size.s110}\",\n \"$description\": \"size 共享刻度,合并重复值\"\n },\n \"s156\": {\n \"$type\": \"dimension\",\n \"$value\": \"{seed.ui.size.s156}\",\n \"$description\": \"size 共享刻度,合并重复值\"\n },\n \"s125\": {\n \"$type\": \"dimension\",\n \"$value\": \"{seed.ui.size.s125}\",\n \"$description\": \"size 共享刻度,合并重复值\"\n },\n \"s121\": {\n \"$type\": \"dimension\",\n \"$value\": \"{seed.ui.size.s121}\",\n \"$description\": \"size 共享刻度,合并重复值\"\n },\n \"s127\": {\n \"$type\": \"dimension\",\n \"$value\": \"{seed.ui.size.s127}\",\n \"$description\": \"size 共享刻度,合并重复值\"\n },\n \"s55\": {\n \"$type\": \"dimension\",\n \"$value\": \"{seed.ui.size.s55}\",\n \"$description\": \"size 共享刻度,合并重复值\"\n },\n \"s178\": {\n \"$type\": \"dimension\",\n \"$value\": \"{seed.ui.size.s178}\",\n \"$description\": \"size 共享刻度,合并重复值\"\n },\n \"s497\": {\n \"$type\": \"dimension\",\n \"$value\": \"{seed.ui.size.s497}\",\n \"$description\": \"size 共享刻度,合并重复值\"\n },\n \"s37\": {\n \"$type\": \"dimension\",\n \"$value\": \"{seed.ui.size.s37}\",\n \"$description\": \"size 共享刻度,合并重复值\"\n },\n \"s60\": {\n \"$type\": \"dimension\",\n \"$value\": \"{seed.ui.size.s60}\",\n \"$description\": \"size 共享刻度,合并重复值\"\n },\n \"s7\": {\n \"$type\": \"dimension\",\n \"$value\": \"{seed.ui.size.s7}\",\n \"$description\": \"size 共享刻度,合并重复值\"\n },\n \"s128\": {\n \"$type\": \"dimension\",\n \"$value\": \"{seed.ui.size.s128}\",\n \"$description\": \"size 共享刻度,合并重复值\"\n },\n \"s290\": {\n \"$type\": \"dimension\",\n \"$value\": \"{seed.ui.size.s290}\",\n \"$description\": \"size 共享刻度,合并重复值\"\n },\n \"s210\": {\n \"$type\": \"dimension\",\n \"$value\": \"{seed.ui.size.s210}\",\n \"$description\": \"size 共享刻度,合并重复值\"\n },\n \"s231\": {\n \"$type\": \"dimension\",\n \"$value\": \"{seed.ui.size.s231}\",\n \"$description\": \"size 共享刻度,合并重复值\"\n },\n \"s440\": {\n \"$type\": \"dimension\",\n \"$value\": \"{seed.ui.size.s440}\",\n \"$description\": \"size 共享刻度,合并重复值\"\n },\n \"s9\": {\n \"$type\": \"dimension\",\n \"$value\": \"{seed.ui.size.s9}\",\n \"$description\": \"size 共享刻度,合并重复值\"\n },\n \"s190\": {\n \"$type\": \"dimension\",\n \"$value\": \"{seed.ui.size.s190}\",\n \"$description\": \"size 共享刻度,合并重复值\"\n },\n \"s130\": {\n \"$type\": \"dimension\",\n \"$value\": \"{seed.ui.size.s130}\",\n \"$description\": \"size 共享刻度,合并重复值\"\n },\n \"s200\": {\n \"$type\": \"dimension\",\n \"$value\": \"{seed.ui.size.s200}\",\n \"$description\": \"size 共享刻度,合并重复值\"\n },\n \"s150\": {\n \"$type\": \"dimension\",\n \"$value\": \"{seed.ui.size.s150}\",\n \"$description\": \"size 共享刻度,合并重复值\"\n },\n \"s350\": {\n \"$type\": \"dimension\",\n \"$value\": \"{seed.ui.size.s350}\",\n \"$description\": \"size 共享刻度,合并重复值\"\n },\n \"s493\": {\n \"$type\": \"dimension\",\n \"$value\": \"{seed.ui.size.s493}\",\n \"$description\": \"size 共享刻度,合并重复值\"\n },\n \"s17\": {\n \"$type\": \"dimension\",\n \"$value\": \"{seed.ui.size.s17}\",\n \"$description\": \"size 共享刻度,合并重复值\"\n }\n },\n \"space\": {\n \"s6\": {\n \"$type\": \"dimension\",\n \"$value\": \"{seed.ui.space.s6}\",\n \"$description\": \"space 共享刻度,合并重复值\"\n },\n \"s18\": {\n \"$type\": \"dimension\",\n \"$value\": \"{seed.ui.space.s18}\",\n \"$description\": \"space 共享刻度,合并重复值\"\n },\n \"s3\": {\n \"$type\": \"dimension\",\n \"$value\": \"{seed.ui.space.s3}\",\n \"$description\": \"space 共享刻度,合并重复值\"\n },\n \"s10\": {\n \"$type\": \"dimension\",\n \"$value\": \"{seed.ui.space.s10}\",\n \"$description\": \"space 共享刻度,合并重复值\"\n },\n \"s8\": {\n \"$type\": \"dimension\",\n \"$value\": \"{seed.ui.space.s8}\",\n \"$description\": \"space 共享刻度,合并重复值\"\n },\n \"s22\": {\n \"$type\": \"dimension\",\n \"$value\": \"{seed.ui.space.s22}\",\n \"$description\": \"space 共享刻度,合并重复值\"\n },\n \"s7\": {\n \"$type\": \"dimension\",\n \"$value\": \"{seed.ui.space.s7}\",\n \"$description\": \"space 共享刻度,合并重复值\"\n },\n \"s14\": {\n \"$type\": \"dimension\",\n \"$value\": \"{seed.ui.space.s14}\",\n \"$description\": \"space 共享刻度,合并重复值\"\n },\n \"s84\": {\n \"$type\": \"dimension\",\n \"$value\": \"{seed.ui.space.s84}\",\n \"$description\": \"space 共享刻度,合并重复值\"\n },\n \"s4\": {\n \"$type\": \"dimension\",\n \"$value\": \"{seed.ui.space.s4}\",\n \"$description\": \"space 共享刻度,合并重复值\"\n },\n \"s2\": {\n \"$type\": \"dimension\",\n \"$value\": \"{seed.ui.space.s2}\",\n \"$description\": \"space 共享刻度,合并重复值\"\n },\n \"s12\": {\n \"$type\": \"dimension\",\n \"$value\": \"{seed.ui.space.s12}\",\n \"$description\": \"space 共享刻度,合并重复值\"\n },\n \"s5\": {\n \"$type\": \"dimension\",\n \"$value\": \"{seed.ui.space.s5}\",\n \"$description\": \"space 共享刻度,合并重复值\"\n },\n \"s26\": {\n \"$type\": \"dimension\",\n \"$value\": \"{seed.ui.space.s26}\",\n \"$description\": \"space 共享刻度,合并重复值\"\n },\n \"s16\": {\n \"$type\": \"dimension\",\n \"$value\": \"{seed.ui.space.s16}\",\n \"$description\": \"space 共享刻度,合并重复值\"\n },\n \"s24\": {\n \"$type\": \"dimension\",\n \"$value\": \"{seed.ui.space.s24}\",\n \"$description\": \"space 共享刻度,合并重复值\"\n },\n \"s30\": {\n \"$type\": \"dimension\",\n \"$value\": \"{seed.ui.space.s30}\",\n \"$description\": \"space 共享刻度,合并重复值\"\n },\n \"s1\": {\n \"$type\": \"dimension\",\n \"$value\": \"{seed.ui.space.s1}\",\n \"$description\": \"space 共享刻度,合并重复值\"\n },\n \"s15\": {\n \"$type\": \"dimension\",\n \"$value\": \"{seed.ui.space.s15}\",\n \"$description\": \"space 共享刻度,合并重复值\"\n },\n \"s13\": {\n \"$type\": \"dimension\",\n \"$value\": \"{seed.ui.space.s13}\",\n \"$description\": \"space 共享刻度,合并重复值\"\n },\n \"s20\": {\n \"$type\": \"dimension\",\n \"$value\": \"{seed.ui.space.s20}\",\n \"$description\": \"space 共享刻度,合并重复值\"\n },\n \"s29\": {\n \"$type\": \"dimension\",\n \"$value\": \"{seed.ui.space.s29}\",\n \"$description\": \"space 共享刻度,合并重复值\"\n },\n \"s9\": {\n \"$type\": \"dimension\",\n \"$value\": \"{seed.ui.space.s9}\",\n \"$description\": \"space 共享刻度,合并重复值\"\n },\n \"s11\": {\n \"$type\": \"dimension\",\n \"$value\": \"{seed.ui.space.s11}\",\n \"$description\": \"space 共享刻度,合并重复值\"\n },\n \"s115\": {\n \"$type\": \"dimension\",\n \"$value\": \"{seed.ui.space.s115}\",\n \"$description\": \"space 共享刻度,合并重复值\"\n },\n \"s34\": {\n \"$type\": \"dimension\",\n \"$value\": \"{seed.ui.space.s34}\",\n \"$description\": \"space 共享刻度,合并重复值\"\n },\n \"s40\": {\n \"$type\": \"dimension\",\n \"$value\": \"{seed.ui.space.s40}\",\n \"$description\": \"space 共享刻度,合并重复值\"\n },\n \"s28\": {\n \"$type\": \"dimension\",\n \"$value\": \"{seed.ui.space.s28}\",\n \"$description\": \"space 共享刻度,合并重复值\"\n },\n \"s44\": {\n \"$type\": \"dimension\",\n \"$value\": \"{seed.ui.space.s44}\",\n \"$description\": \"space 共享刻度,合并重复值\"\n },\n \"s23\": {\n \"$type\": \"dimension\",\n \"$value\": \"{seed.ui.space.s23}\",\n \"$description\": \"space 共享刻度,合并重复值\"\n },\n \"s70\": {\n \"$type\": \"dimension\",\n \"$value\": \"{seed.ui.space.s70}\",\n \"$description\": \"space 共享刻度,合并重复值\"\n },\n \"s25\": {\n \"$type\": \"dimension\",\n \"$value\": \"{seed.ui.space.s25}\",\n \"$description\": \"space 共享刻度,合并重复值\"\n },\n \"s19\": {\n \"$type\": \"dimension\",\n \"$value\": \"{seed.ui.space.s19}\",\n \"$description\": \"space 共享刻度,合并重复值\"\n },\n \"s47\": {\n \"$type\": \"dimension\",\n \"$value\": \"{seed.ui.space.s47}\",\n \"$description\": \"space 共享刻度,合并重复值\"\n }\n },\n \"duration\": {\n \"s240\": {\n \"$type\": \"duration\",\n \"$value\": \"{seed.ui.duration.s240}\",\n \"$description\": \"duration 共享刻度,合并重复值\"\n },\n \"s800\": {\n \"$type\": \"duration\",\n \"$value\": \"{seed.ui.duration.s800}\",\n \"$description\": \"duration 共享刻度,合并重复值\"\n },\n \"s180\": {\n \"$type\": \"duration\",\n \"$value\": \"{seed.ui.duration.s180}\",\n \"$description\": \"duration 共享刻度,合并重复值\"\n },\n \"s140\": {\n \"$type\": \"duration\",\n \"$value\": \"{seed.ui.duration.s140}\",\n \"$description\": \"duration 共享刻度,合并重复值\"\n }\n },\n \"opacity\": {\n \"s0p65\": {\n \"$type\": \"number\",\n \"$value\": \"{seed.ui.opacity.s0p65}\",\n \"$description\": \"opacity 共享刻度,合并重复值\"\n },\n \"s0p5\": {\n \"$type\": \"number\",\n \"$value\": \"{semantic.ui.opacity.disabled}\",\n \"$description\": \"共享状态透明度\"\n },\n \"s0p8\": {\n \"$type\": \"number\",\n \"$value\": \"{semantic.ui.opacity.busy}\",\n \"$description\": \"共享状态透明度\"\n },\n \"s0p4\": {\n \"$type\": \"number\",\n \"$value\": \"{seed.ui.opacity.s0p4}\",\n \"$description\": \"opacity 共享刻度,合并重复值\"\n }\n },\n \"shadowSize\": {\n \"s8\": {\n \"$type\": \"dimension\",\n \"$value\": \"{seed.ui.shadowSize.s8}\",\n \"$description\": \"shadowSize 共享刻度,合并重复值\"\n },\n \"s20\": {\n \"$type\": \"dimension\",\n \"$value\": \"{seed.ui.shadowSize.s20}\",\n \"$description\": \"shadowSize 共享刻度,合并重复值\"\n },\n \"s12\": {\n \"$type\": \"dimension\",\n \"$value\": \"{seed.ui.shadowSize.s12}\",\n \"$description\": \"shadowSize 共享刻度,合并重复值\"\n },\n \"s1\": {\n \"$type\": \"dimension\",\n \"$value\": \"{seed.ui.shadowSize.s1}\",\n \"$description\": \"shadowSize 共享刻度,合并重复值\"\n },\n \"s4\": {\n \"$type\": \"dimension\",\n \"$value\": \"{seed.ui.shadowSize.s4}\",\n \"$description\": \"shadowSize 共享刻度,合并重复值\"\n },\n \"s10\": {\n \"$type\": \"dimension\",\n \"$value\": \"{seed.ui.shadowSize.s10}\",\n \"$description\": \"shadowSize 共享刻度,合并重复值\"\n },\n \"s2\": {\n \"$type\": \"dimension\",\n \"$value\": \"{seed.ui.shadowSize.s2}\",\n \"$description\": \"shadowSize 共享刻度,合并重复值\"\n },\n \"s36\": {\n \"$type\": \"dimension\",\n \"$value\": \"{seed.ui.shadowSize.s36}\",\n \"$description\": \"shadowSize 共享刻度,合并重复值\"\n },\n \"s5\": {\n \"$type\": \"dimension\",\n \"$value\": \"{seed.ui.shadowSize.s5}\",\n \"$description\": \"shadowSize 共享刻度,合并重复值\"\n },\n \"s3\": {\n \"$type\": \"dimension\",\n \"$value\": \"{seed.ui.shadowSize.s3}\",\n \"$description\": \"shadowSize 共享刻度,合并重复值\"\n },\n \"s24\": {\n \"$type\": \"dimension\",\n \"$value\": \"{seed.ui.shadowSize.s24}\",\n \"$description\": \"shadowSize 共享刻度,合并重复值\"\n },\n \"s80\": {\n \"$type\": \"dimension\",\n \"$value\": \"{seed.ui.shadowSize.s80}\",\n \"$description\": \"shadowSize 共享刻度,合并重复值\"\n },\n \"s15\": {\n \"$type\": \"dimension\",\n \"$value\": \"{seed.ui.shadowSize.s15}\",\n \"$description\": \"shadowSize 共享刻度,合并重复值\"\n },\n \"s28\": {\n \"$type\": \"dimension\",\n \"$value\": \"{seed.ui.shadowSize.s28}\",\n \"$description\": \"shadowSize 共享刻度,合并重复值\"\n },\n \"s14\": {\n \"$type\": \"dimension\",\n \"$value\": \"{seed.ui.shadowSize.s14}\",\n \"$description\": \"shadowSize 共享刻度,合并重复值\"\n },\n \"s6\": {\n \"$type\": \"dimension\",\n \"$value\": \"{seed.ui.shadowSize.s6}\",\n \"$description\": \"shadowSize 共享刻度,合并重复值\"\n },\n \"s9\": {\n \"$type\": \"dimension\",\n \"$value\": \"{seed.ui.shadowSize.s9}\",\n \"$description\": \"shadowSize 共享刻度,合并重复值\"\n },\n \"s0p5\": {\n \"$type\": \"dimension\",\n \"$value\": \"{seed.ui.shadowSize.s0p5}\",\n \"$description\": \"shadowSize 共享刻度,合并重复值\"\n },\n \"s7\": {\n \"$type\": \"dimension\",\n \"$value\": \"{seed.ui.shadowSize.s7}\",\n \"$description\": \"shadowSize 共享刻度,合并重复值\"\n }\n },\n \"lineClamp\": {\n \"s4\": {\n \"$type\": \"number\",\n \"$value\": \"{seed.ui.lineClamp.s4}\",\n \"$description\": \"lineClamp 共享刻度,合并重复值\"\n },\n \"s2\": {\n \"$type\": \"number\",\n \"$value\": \"{seed.ui.lineClamp.s2}\",\n \"$description\": \"lineClamp 共享刻度,合并重复值\"\n }\n },\n \"material\": {\n \"control\": {\n \"background\": { \"$type\": \"color\", \"$value\": \"{component.ui.input.background}\", \"$description\": \"控件共用底材:以名称输入框为准,兼容现有 input.background 覆盖\" },\n \"border\": { \"$type\": \"color\", \"$value\": \"{component.ui.border}\", \"$description\": \"控件共用顶部柔和描边\" },\n \"highlight\": { \"$type\": \"color\", \"$value\": \"{component.ui.foreground}\", \"$description\": \"控件共用底部内高光颜色\" },\n \"highlightOffset\": { \"$type\": \"dimension\", \"$value\": \"{component.ui.shadowSize.s5}\", \"$description\": \"控件底部内高光向上偏移量\" },\n \"highlightBlur\": { \"$type\": \"dimension\", \"$value\": \"{component.ui.shadowSize.s9}\", \"$description\": \"控件底部内高光模糊半径\" },\n \"highlightSpread\": { \"$type\": \"dimension\", \"$value\": \"{component.ui.shadowSize.s8}\", \"$description\": \"控件底部内高光收缩量\" }\n }\n },\n \"input\": {\n \"tags\": {\n \"minHeight\": {\n \"$type\": \"dimension\",\n \"$value\": {\n \"value\": 40,\n \"unit\": \"px\"\n },\n \"$description\": \".monkeys-ui-tag-input min-height\"\n },\n \"gap\": {\n \"$type\": \"dimension\",\n \"$value\": {\n \"value\": 6,\n \"unit\": \"px\"\n },\n \"$description\": \"input.tags.gap 默认尺寸\"\n },\n \"glass\": {\n \"blur\": {\n \"$type\": \"dimension\",\n \"$value\": \"{seed.ui.size.s16}\",\n \"$description\": \"input.tags 材质模糊\"\n },\n \"saturation\": {\n \"$type\": \"number\",\n \"$value\": 1,\n \"$description\": \"input.tags 材质饱和度\"\n }\n }\n },\n \"paddingInline\": {\n \"$type\": \"dimension\",\n \"$value\": \"{seed.ui.space.s14}\",\n \"$description\": \"input paddingInline 独立覆盖入口\"\n },\n \"paddingBlock\": {\n \"$type\": \"dimension\",\n \"$value\": \"{seed.ui.space.s7}\",\n \"$description\": \"input paddingBlock 独立覆盖入口\"\n },\n \"radius\": {\n \"$type\": \"dimension\",\n \"$value\": \"{semantic.ui.radius.control}\",\n \"$description\": \"input radius 独立覆盖入口\"\n },\n \"background\": {\n \"$type\": \"color\",\n \"$value\": \"{semantic.color.surface.control.dark}\",\n \"$description\": \"input background 独立覆盖入口\"\n },\n \"placeholder\": {\n \"$type\": \"color\",\n \"$value\": \"{semantic.color.text.secondary.dark}\",\n \"$description\": \"input placeholder 独立覆盖入口\"\n },\n \"invalidBorder\": {\n \"$type\": \"color\",\n \"$value\": \"{semantic.color.status.danger.dark}\",\n \"$description\": \"input invalidBorder 独立覆盖入口\"\n }\n },\n \"textarea\": {\n \"minHeight\": {\n \"$type\": \"dimension\",\n \"$value\": {\n \"value\": 85,\n \"unit\": \"px\"\n },\n \"$description\": \".monkeys-ui-textarea min-height\"\n }\n },\n \"switch\": {\n \"height\": {\n \"md\": {\n \"$type\": \"dimension\",\n \"$value\": {\n \"value\": 34,\n \"unit\": \"px\"\n },\n \"$description\": \"switch.height.md 默认尺寸\"\n },\n \"sm\": {\n \"$type\": \"dimension\",\n \"$value\": {\n \"value\": 28,\n \"unit\": \"px\"\n },\n \"$description\": \"switch.height.sm 默认尺寸\"\n },\n \"lg\": {\n \"$type\": \"dimension\",\n \"$value\": {\n \"value\": 42,\n \"unit\": \"px\"\n },\n \"$description\": \"switch.height.lg 默认尺寸\"\n }\n }\n },\n \"colorSlider\": {\n \"thumbWidth\": {\n \"$type\": \"dimension\",\n \"$value\": {\n \"value\": 96,\n \"unit\": \"px\"\n },\n \"$description\": \"colorSlider.thumbWidth 默认尺寸\"\n },\n \"glass\": {\n \"blur\": {\n \"$type\": \"dimension\",\n \"$value\": \"{seed.ui.size.s12}\",\n \"$description\": \"colorSlider 材质模糊\"\n },\n \"saturation\": {\n \"$type\": \"number\",\n \"$value\": 1.15,\n \"$description\": \"colorSlider 材质饱和度\"\n }\n }\n },\n \"card\": {\n \"dragHandle\": {\n \"size\": { \"$type\": \"dimension\", \"$value\": \"{seed.ui.size.s24}\", \"$description\": \"卡片拖动手柄直径\" },\n \"offset\": { \"$type\": \"dimension\", \"$value\": \"{seed.ui.size.s5}\", \"$description\": \"卡片拖动手柄距顶边与起始边的距离\" },\n \"iconSize\": { \"$type\": \"dimension\", \"$value\": \"{seed.ui.size.s16}\", \"$description\": \"卡片拖动手柄六点图标尺寸\" },\n \"background\": { \"$type\": \"color\", \"$value\": \"{semantic.color.scrim.media.dark}\", \"$description\": \"卡片拖动手柄深色背景\" },\n \"foreground\": { \"$type\": \"color\", \"$value\": \"{semantic.color.sample.inkLight}\", \"$description\": \"卡片拖动手柄图标颜色\" }\n },\n \"actions\": {\n \"glass\": {\n \"blur\": {\n \"$type\": \"dimension\",\n \"$value\": \"{seed.ui.size.s12}\",\n \"$description\": \"card.actions 材质模糊\"\n },\n \"saturation\": {\n \"$type\": \"number\",\n \"$value\": 1.2,\n \"$description\": \"card.actions 材质饱和度\"\n }\n }\n },\n \"titleFontSize\": {\n \"$type\": \"dimension\",\n \"$value\": \"{semantic.font.size.sm}\",\n \"$description\": \"card titleFontSize 独立覆盖入口\"\n }\n },\n \"panel\": {\n \"padding\": {\n \"$type\": \"dimension\",\n \"$value\": \"{semantic.ui.spacing.surfacePadding}\",\n \"$description\": \"panel padding 独立覆盖入口\"\n }\n },\n \"field\": {\n \"gap\": {\n \"$type\": \"dimension\",\n \"$value\": \"{semantic.ui.spacing.fieldGap}\",\n \"$description\": \"field gap 独立覆盖入口\"\n }\n },\n \"tooltip\": {\n \"delay\": {\n \"$type\": \"duration\",\n \"$value\": {\n \"value\": 500,\n \"unit\": \"ms\"\n },\n \"$description\": \"tooltip delay\"\n },\n \"skipDelay\": {\n \"$type\": \"duration\",\n \"$value\": {\n \"value\": 300,\n \"unit\": \"ms\"\n },\n \"$description\": \"tooltip skipDelay\"\n },\n \"sideOffset\": {\n \"$type\": \"dimension\",\n \"$value\": {\n \"value\": 7,\n \"unit\": \"px\"\n },\n \"$description\": \"tooltip 与触发器的间距\"\n }\n },\n \"scrollSurface\": {\n \"hideDelay\": {\n \"$type\": \"duration\",\n \"$value\": {\n \"value\": 700,\n \"unit\": \"ms\"\n },\n \"$description\": \"scrollSurface hideDelay\"\n }\n },\n \"menu\": {\n \"sideOffset\": {\n \"$type\": \"dimension\",\n \"$value\": {\n \"value\": 6,\n \"unit\": \"px\"\n },\n \"$description\": \"menu 与触发器的间距\"\n }\n },\n \"icon\": {\n \"size\": {\n \"s12\": {\n \"$type\": \"dimension\",\n \"$value\": \"{semantic.font.size.xs}\",\n \"$description\": \"内置图标 12px,可独立于字体覆盖\"\n },\n \"s14\": {\n \"$type\": \"dimension\",\n \"$value\": \"{semantic.font.size.sm}\",\n \"$description\": \"内置图标 14px,可独立于字体覆盖\"\n },\n \"s16\": {\n \"$type\": \"dimension\",\n \"$value\": \"{semantic.font.size.base}\",\n \"$description\": \"内置图标 16px,可独立于字体覆盖\"\n },\n \"s17\": {\n \"$type\": \"dimension\",\n \"$value\": \"{semantic.font.size.ui17}\",\n \"$description\": \"内置图标 17px,可独立于字体覆盖\"\n },\n \"s28\": {\n \"$type\": \"dimension\",\n \"$value\": \"{semantic.font.size.ui28}\",\n \"$description\": \"内置图标 28px,可独立于字体覆盖\"\n }\n }\n },\n \"density\": {\n \"compact\": {\n \"buttonPaddingBlock\": {\n \"$type\": \"dimension\",\n \"$value\": \"{seed.ui.space.s3}\",\n \"$description\": \"compact buttonPaddingBlock 密度留白\"\n },\n \"inputPaddingBlock\": {\n \"$type\": \"dimension\",\n \"$value\": \"{seed.ui.space.s4}\",\n \"$description\": \"compact inputPaddingBlock 密度留白\"\n }\n },\n \"default\": {\n \"buttonPaddingBlock\": {\n \"$type\": \"dimension\",\n \"$value\": \"{seed.ui.space.s6}\",\n \"$description\": \"default buttonPaddingBlock 密度留白\"\n },\n \"inputPaddingBlock\": {\n \"$type\": \"dimension\",\n \"$value\": \"{seed.ui.space.s7}\",\n \"$description\": \"default inputPaddingBlock 密度留白\"\n }\n },\n \"comfortable\": {\n \"buttonPaddingBlock\": {\n \"$type\": \"dimension\",\n \"$value\": \"{seed.ui.space.s10}\",\n \"$description\": \"comfortable buttonPaddingBlock 密度留白\"\n },\n \"inputPaddingBlock\": {\n \"$type\": \"dimension\",\n \"$value\": \"{seed.ui.space.s11}\",\n \"$description\": \"comfortable inputPaddingBlock 密度留白\"\n }\n }\n }\n }\n }\n}\n","{\n \"seed\": {\n \"ui\": {\n \"color\": {\n \"page\": {\n \"$type\": \"color\",\n \"$value\": {\n \"colorSpace\": \"srgb\",\n \"components\": [\n 0.07450980392156863,\n 0.08235294117647059,\n 0.10196078431372549\n ],\n \"hex\": \"#13151A\"\n },\n \"$description\": \"seed.ui.color.page\"\n },\n \"surface\": {\n \"$type\": \"color\",\n \"$value\": {\n \"colorSpace\": \"srgb\",\n \"components\": [\n 0.09019607843137255,\n 0.10588235294117647,\n 0.15294117647058825\n ],\n \"hex\": \"#171B27\"\n },\n \"$description\": \"seed.ui.color.surface\"\n },\n \"elevated\": {\n \"$type\": \"color\",\n \"$value\": {\n \"colorSpace\": \"srgb\",\n \"components\": [\n 0.13333333333333333,\n 0.15294117647058825,\n 0.2196078431372549\n ],\n \"hex\": \"#222738\"\n },\n \"$description\": \"seed.ui.color.elevated\"\n },\n \"foreground\": {\n \"$type\": \"color\",\n \"$value\": {\n \"colorSpace\": \"srgb\",\n \"components\": [\n 1,\n 1,\n 1\n ],\n \"hex\": \"#FFFFFF\"\n },\n \"$description\": \"seed.ui.color.foreground\"\n },\n \"muted\": {\n \"$type\": \"color\",\n \"$value\": {\n \"colorSpace\": \"srgb\",\n \"components\": [\n 0.7843137254901961,\n 0.7843137254901961,\n 0.7843137254901961\n ],\n \"hex\": \"#C8C8C8\"\n },\n \"$description\": \"seed.ui.color.muted\"\n },\n \"subtle\": {\n \"$type\": \"color\",\n \"$value\": {\n \"colorSpace\": \"srgb\",\n \"components\": [\n 0.6980392156862745,\n 0.6980392156862745,\n 0.6980392156862745\n ],\n \"hex\": \"#B2B2B2\"\n },\n \"$description\": \"seed.ui.color.subtle\"\n },\n \"primary\": {\n \"$type\": \"color\",\n \"$value\": {\n \"colorSpace\": \"srgb\",\n \"components\": [\n 0.28627450980392155,\n 0.4666666666666667,\n 0.9215686274509803\n ],\n \"hex\": \"#4977EB\"\n },\n \"$description\": \"seed.ui.color.primary\"\n },\n \"lightEdgeBlue\": {\n \"$type\": \"color\",\n \"$value\": {\n \"colorSpace\": \"srgb\",\n \"components\": [\n 0.25882352941176473,\n 0.5215686274509804,\n 1\n ],\n \"hex\": \"#4285FF\"\n },\n \"$description\": \"seed.ui.color.lightEdgeBlue\"\n },\n \"primaryHover\": {\n \"$type\": \"color\",\n \"$value\": {\n \"colorSpace\": \"srgb\",\n \"components\": [\n 0.3803921568627451,\n 0.5450980392156862,\n 0.9568627450980393\n ],\n \"hex\": \"#618BF4\"\n },\n \"$description\": \"seed.ui.color.primaryHover\"\n },\n \"violet\": {\n \"$type\": \"color\",\n \"$value\": {\n \"colorSpace\": \"srgb\",\n \"components\": [\n 0.5764705882352941,\n 0.36470588235294116,\n 1\n ],\n \"hex\": \"#935DFF\"\n },\n \"$description\": \"seed.ui.color.violet\"\n },\n \"focus\": {\n \"$type\": \"color\",\n \"$value\": {\n \"colorSpace\": \"srgb\",\n \"components\": [\n 0.6627450980392157,\n 0.7333333333333333,\n 1\n ],\n \"hex\": \"#A9BBFF\"\n },\n \"$description\": \"seed.ui.color.focus\"\n },\n \"border\": {\n \"$type\": \"color\",\n \"$value\": {\n \"colorSpace\": \"srgb\",\n \"components\": [\n 0.6862745098039216,\n 0.7333333333333333,\n 1\n ],\n \"hex\": \"#AFBBFF\",\n \"alpha\": 0.5\n },\n \"$description\": \"seed.ui.color.border\"\n },\n \"blueGlow\": {\n \"$type\": \"color\",\n \"$value\": {\n \"colorSpace\": \"srgb\",\n \"components\": [\n 0.13725490196078433,\n 0.3411764705882353,\n 0.9176470588235294\n ],\n \"hex\": \"#2357EA\",\n \"alpha\": 0.35\n },\n \"$description\": \"seed.ui.color.blueGlow\"\n },\n \"violetGlow\": {\n \"$type\": \"color\",\n \"$value\": {\n \"colorSpace\": \"srgb\",\n \"components\": [\n 0.4627450980392157,\n 0.19215686274509805,\n 1\n ],\n \"hex\": \"#7631FF\",\n \"alpha\": 0.5\n },\n \"$description\": \"seed.ui.color.violetGlow\"\n },\n \"primaryAccessible\": {\n \"$type\": \"color\",\n \"$value\": {\n \"colorSpace\": \"srgb\",\n \"components\": [\n 0.23529411764705882,\n 0.38823529411764707,\n 0.8117647058823529\n ],\n \"hex\": \"#3C63CF\"\n },\n \"$description\": \"seed.ui.color.primaryAccessible\"\n },\n \"header\": {\n \"$type\": \"color\",\n \"$value\": {\n \"colorSpace\": \"srgb\",\n \"components\": [\n 0.12941176470588237,\n 0.32941176470588235,\n 0.8509803921568627\n ],\n \"hex\": \"#2154D9\"\n },\n \"$description\": \"租户颜色原始值\"\n }\n }\n }\n },\n \"semantic\": {\n \"font\": {\n \"body\": {\n \"$type\": \"fontFamily\",\n \"$value\": [\n \"Inter\",\n \"Monkeys UI Sans\",\n \"Microsoft YaHei\",\n \"sans-serif\"\n ],\n \"$description\": \"BSD 字体栈\"\n }\n }\n }\n}\n","import type { ThemeTokens } from '../../theme-system';\n\nconst isGroup = (value: unknown): value is Record<string, unknown> => !!value && typeof value === 'object' && !Array.isArray(value);\n/** Token leaves are atomic; groups merge without mutating either document. */\nexport function mergeThemeTokens(base: ThemeTokens, override?: ThemeTokens): ThemeTokens {\n function merge(a: unknown, b: unknown): unknown {\n if (b === undefined) return a;\n if (!isGroup(a) || !isGroup(b) || '$value' in b || '$value' in a) return b;\n const result = { ...a };\n for (const key of Object.keys(b)) result[key] = merge(a[key], b[key]);\n return result;\n }\n return merge(base, override) as ThemeTokens;\n}\n\nexport function uiVariable(path: string) {\n return '--monkeys-ui-' + path.replace(/^component\\.ui\\./, '').replace(/([a-z0-9])([A-Z])/g, '$1-$2').replace(/\\./g, '-').toLowerCase();\n}\n","import type { ThemeTokens } from '../../theme-system';\nimport base from './base.json';\nimport bsd from './tenants/bsd.json';\nimport { mergeThemeTokens } from './config';\n\nexport const baseThemeTokens = base as ThemeTokens;\nexport const uiThemePresets = {\n bsd: { id: 'bsd', label: 'BSD', colorModes: ['dark'], tokens: bsd as ThemeTokens },\n 'neutral-demo': { id: 'neutral-demo', label: 'Neutral Demo(演示)', colorModes: ['dark'], tokens: {} as ThemeTokens },\n} as const;\n\n/** Every selection starts from base, never from the previous tenant's result. */\nexport function getTenantTheme(tenant = 'bsd', override?: ThemeTokens): ThemeTokens {\n if (!Object.prototype.hasOwnProperty.call(uiThemePresets, tenant)) throw new TypeError(`Unknown UI tenant: ${tenant}`);\n const preset = uiThemePresets[tenant as keyof typeof uiThemePresets];\n return mergeThemeTokens(mergeThemeTokens(baseThemeTokens, preset.tokens), override);\n}\n","import { createContext, useContext, useEffect, useMemo, useState, type CSSProperties, type HTMLAttributes, type ReactNode } from 'react';\nimport { createPortal } from 'react-dom';\nimport { compileThemeTokens, getThemeTokenCssValue, type ThemeTokens, type CompiledThemeTokens } from '../../theme-system';\nimport { useMonkeysDirection, useMonkeysEnvironment, useMonkeysPortalOptions, useMonkeysResolvedTheme, useMonkeysLocale } from '../../provider/context';\nimport { zhCN, type MonkeysResolvedLocale } from '../../locale';\nimport * as TooltipPrimitive from '@radix-ui/react-tooltip';\nimport { getTenantTheme } from './presets';\nimport { mergeThemeTokens, uiVariable } from './config';\nimport { durationMilliseconds } from '../internal';\nexport { mergeThemeTokens } from './config';\n\nexport const defaultThemeTokens = getTenantTheme('bsd');\nconst defaultResolvedTokens = compileThemeTokens(defaultThemeTokens, { colorMode: 'dark' });\n\n/** Uses the canonical compiler: no second token resolver or value formatter. */\nexport function compileUITheme(tokens: ThemeTokens): Record<string, string> {\n return variablesFromTheme(compileThemeTokens(tokens, { colorMode: 'dark' }));\n}\nfunction variablesFromTheme(compiled: CompiledThemeTokens): Record<string, string> {\n const variables: Record<string, string> = {};\n for (const path of Object.keys(compiled.cssValues).filter(path => path.startsWith('component.ui.'))) {\n const name = uiVariable(path);\n if (variables[name] !== undefined) throw new TypeError(`Duplicate UI variable: ${name}`);\n variables[name] = getThemeTokenCssValue(compiled, path)!;\n }\n for (const name of ['foreground', 'page', 'focus', 'button-primary-background', 'font']) {\n if (!variables['--monkeys-ui-' + name]) throw new TypeError(`Missing required UI token: ${name}`);\n }\n return variables;\n}\n\ninterface UITheme { tokens: ThemeTokens; compiled: CompiledThemeTokens; variables: Record<string, string>; dir: 'ltr' | 'rtl'; tenant: string; density: 'compact' | 'default' | 'comfortable' }\nconst UIThemeContext = createContext<UITheme | null>(null);\nconst PortalDepthContext = createContext(0);\nexport function useUIDirection(explicit?: 'ltr' | 'rtl') {\n const theme = useContext(UIThemeContext);\n const inherited = useMonkeysDirection();\n const environment = useMonkeysEnvironment();\n const [documentDirection, setDocumentDirection] = useState<'ltr' | 'rtl'>();\n useEffect(() => {\n if (explicit || theme?.dir || inherited) return;\n const document = environment.getDocument?.() ?? globalThis.document;\n const root = document?.documentElement;\n if (!root) return;\n const update = () => setDocumentDirection(root.dir === 'rtl' ? 'rtl' : 'ltr');\n update(); const observer = new MutationObserver(update); observer.observe(root, { attributes: true, attributeFilter: ['dir'] });\n return () => observer.disconnect();\n }, [explicit, theme?.dir, inherited, environment]);\n return explicit ?? theme?.dir ?? inherited ?? documentDirection;\n}\nexport function useUILocale(): MonkeysResolvedLocale & { provided: boolean } { const locale = useMonkeysLocale(); return locale.provided ? locale : { ...zhCN, provided: false }; }\nexport function useTooltipScope() { return useContext(UIThemeContext) !== null; }\nconst inputDocuments = new WeakMap<Document, { count: number; dispose: () => void }>();\nfunction observeInput(document: Document) {\n const existing = inputDocuments.get(document);\n if (existing) { existing.count++; return () => releaseInput(document); }\n const root = document.documentElement;\n const previous = root.getAttribute('data-monkeys-ui-input');\n const pointer = () => root.setAttribute('data-monkeys-ui-input', 'pointer');\n const keyboard = () => root.setAttribute('data-monkeys-ui-input', 'keyboard');\n document.addEventListener('pointerdown', pointer, true);\n document.addEventListener('keydown', keyboard, true);\n inputDocuments.set(document, { count: 1, dispose: () => { document.removeEventListener('pointerdown', pointer, true); document.removeEventListener('keydown', keyboard, true); if (previous === null) root.removeAttribute('data-monkeys-ui-input'); else root.setAttribute('data-monkeys-ui-input', previous); } });\n return () => releaseInput(document);\n}\nfunction releaseInput(document: Document) { const entry = inputDocuments.get(document); if (entry && --entry.count === 0) { entry.dispose(); inputDocuments.delete(document); } }\nexport interface ThemeProviderProps extends HTMLAttributes<HTMLDivElement> { tokens?: ThemeTokens; tenant?: string; density?: 'compact' | 'default' | 'comfortable' }\nexport function ThemeProvider({ tokens, tenant, density, children, className, style, dir, ...rest }: ThemeProviderProps) {\n const parent = useContext(UIThemeContext);\n const inherited = useMonkeysResolvedTheme();\n const inheritedDirection = useMonkeysDirection();\n const tenantId = tenant ?? parent?.tenant ?? 'bsd';\n const effectiveDensity = density ?? parent?.density ?? 'default';\n const document = useMemo(() => {\n const foundation = tenant ? getTenantTheme(tenant) : parent?.tokens ?? mergeThemeTokens(defaultThemeTokens, inherited?.contract);\n const dimensionAlias = (path: string) => ({ $type: 'dimension' as const, $value: `{${path}}` });\n const densityOverride: ThemeTokens | undefined = density === undefined && !tenant ? undefined : { component: { ui: {\n controlHeight: dimensionAlias(`semantic.ui.control.height.${effectiveDensity === 'compact' ? 'sm' : effectiveDensity === 'comfortable' ? 'lg' : 'md'}`),\n button: { paddingBlock: dimensionAlias(`component.ui.density.${effectiveDensity}.buttonPaddingBlock`) },\n input: { paddingBlock: dimensionAlias(`component.ui.density.${effectiveDensity}.inputPaddingBlock`) },\n } } };\n return mergeThemeTokens(mergeThemeTokens(foundation, densityOverride), tokens);\n }, [tenant, density, effectiveDensity, parent?.tokens, inherited?.contract, tokens]);\n const compiled = useMemo(() => compileThemeTokens(document, { colorMode: 'dark', density: effectiveDensity }), [document, effectiveDensity]);\n const variables = useMemo(() => variablesFromTheme(compiled), [compiled]);\n const direction = (dir === 'rtl' || dir === 'ltr' ? dir : parent?.dir ?? inheritedDirection ?? 'ltr');\n const context = useMemo(() => ({ tokens: document, compiled, variables, dir: direction, tenant: tenantId, density: effectiveDensity }), [document, compiled, variables, direction, tenantId, effectiveDensity]);\n return <UIThemeContext.Provider value={context}><TooltipPrimitive.Provider delayDuration={durationMilliseconds(compiled.values['component.ui.tooltip.delay'])} skipDelayDuration={durationMilliseconds(compiled.values['component.ui.tooltip.skipDelay'])}><div {...rest} dir={direction} data-monkeys-ui-tenant={tenantId} data-monkeys-ui-theme=\"dark\" className={['monkeys-ui-scope', className].filter(Boolean).join(' ')} style={{ ...variables, ...style } as CSSProperties}>{children}</div></TooltipPrimitive.Provider></UIThemeContext.Provider>;\n}\n\n/** JS renderers consume the same resolved document as CSS and Portal. */\nexport function useUIResolvedTokens() {\n const theme = useContext(UIThemeContext);\n const inherited = useMonkeysResolvedTheme();\n return useMemo(() => theme?.compiled ?? (inherited?.contract ? compileThemeTokens(mergeThemeTokens(defaultThemeTokens, inherited.contract), { colorMode: 'dark' }) : defaultResolvedTokens), [theme?.compiled, inherited?.contract]);\n}\n\n/** Client-only host preserves the theme and direction across body portals. */\nexport function Portal({ children }: { children: ReactNode }) {\n const theme = useContext(UIThemeContext);\n const environment = useMonkeysEnvironment();\n const options = useMonkeysPortalOptions();\n const direction = useUIDirection();\n const depth = useContext(PortalDepthContext) + 1;\n const [host, setHost] = useState<Element | null>(null);\n useEffect(() => {\n const document = environment.getDocument?.() ?? globalThis.document;\n setHost(typeof options.container === 'function' ? options.container() : options.container ?? document?.body ?? null);\n return document ? observeInput(document) : undefined;\n }, [environment, options.container]);\n const baseLayer = Number(theme?.variables['--monkeys-ui-layer-overlay-base'] ?? defaultResolvedTokens.values['component.ui.layer.overlayBase']);\n const nestingStep = Number(theme?.variables['--monkeys-ui-layer-nesting-step'] ?? defaultResolvedTokens.values['component.ui.layer.nestingStep']);\n const content = <PortalDepthContext.Provider value={depth}><div className=\"monkeys-ui-scope monkeys-ui-portal\" dir={direction} data-monkeys-ui-tenant={theme?.tenant ?? 'bsd'} data-monkeys-ui-theme=\"dark\" style={{ ...theme?.variables, '--monkeys-ui-overlay-layer': baseLayer + depth * nestingStep } as CSSProperties}>{children}</div></PortalDepthContext.Provider>;\n return options.disabled ? content : host ? createPortal(content, host) : null;\n}\n","import { forwardRef, type HTMLAttributes } from 'react';\nimport * as ScrollArea from '@radix-ui/react-scroll-area';\nimport { useUIDirection, useUIResolvedTokens } from './theme/theme';\nimport { cx, durationMilliseconds } from './internal';\n\ninterface ScrollSurfaceProps extends HTMLAttributes<HTMLElement> {\n as?: 'section' | 'aside';\n}\n\n/** Internal bento surface: native scrolling with transient, overlaid drag handles. */\nexport const ScrollSurface = forwardRef<HTMLElement, ScrollSurfaceProps>(function ScrollSurface({ as: Element = 'section', children, className, onScroll, dir, ...props }, ref) {\n const direction = useUIDirection(dir === 'rtl' || dir === 'ltr' ? dir : undefined);\n const tokens = useUIResolvedTokens();\n const delay = durationMilliseconds(tokens.values['component.ui.scrollSurface.hideDelay']);\n return <ScrollArea.Root asChild type=\"scroll\" scrollHideDelay={delay} dir={direction}>\n <Element {...props} ref={ref} className={cx('monkeys-ui-scroll-surface', className)}>\n <ScrollArea.Viewport className=\"monkeys-ui-scroll-viewport\" tabIndex={0} role=\"group\" aria-labelledby={props['aria-labelledby']} aria-label={props['aria-labelledby'] ? undefined : props['aria-label'] ?? '滚动内容'} onScroll={onScroll}>\n {children}\n </ScrollArea.Viewport>\n <ScrollArea.Scrollbar orientation=\"vertical\" className=\"monkeys-ui-scrollbar\" aria-hidden=\"true\"><ScrollArea.Thumb className=\"monkeys-ui-scroll-thumb\" /></ScrollArea.Scrollbar>\n <ScrollArea.Scrollbar orientation=\"horizontal\" className=\"monkeys-ui-scrollbar\" aria-hidden=\"true\"><ScrollArea.Thumb className=\"monkeys-ui-scroll-thumb\" /></ScrollArea.Scrollbar>\n </Element>\n </ScrollArea.Root>;\n});\n","import { useEffect, useState } from 'react';\n\n/** SSR and accessibility modes use the static surface; preferences stay live. */\nexport function useShaderEnabled() {\n const [enabled, setEnabled] = useState(false);\n useEffect(() => {\n const motion = window.matchMedia('(prefers-reduced-motion: reduce)');\n const colors = window.matchMedia('(forced-colors: active)');\n const update = () => setEnabled(!motion.matches && !colors.matches);\n update();\n motion.addEventListener('change', update); colors.addEventListener('change', update);\n return () => { motion.removeEventListener('change', update); colors.removeEventListener('change', update); };\n }, []);\n return enabled;\n}\n","import { getThemeTokenCssValue, type CompiledThemeTokens } from '../../theme-system';\n\nexport function resolveEffectTokens(theme: CompiledThemeTokens) {\n const color = (name: string) => {\n const path = `semantic.color.effect.${name}.dark`;\n const value = theme.values[path] as { hex?: string } | undefined;\n return value?.hex ?? getThemeTokenCssValue(theme, path)!;\n };\n const number = (effect: string, name: string) => Number(theme.values[`component.ui.effect.${effect}.${name}`]);\n return {\n start: color('start'), end: color('end'), lightEdgeStart: color('lightEdgeStart'),\n chroma: { intensity: number('chroma', 'intensity'), momentum: number('chroma', 'momentum'), radius: number('chroma', 'radius') },\n aurora: { curtainCount: number('aurora', 'curtainCount'), height: number('aurora', 'height'), intensity: number('aurora', 'intensity'), rayDensity: number('aurora', 'rayDensity'), speed: number('aurora', 'speed'), waviness: number('aurora', 'waviness') },\n lightEdge: { thickness: number('lightEdge', 'thickness'), softness: number('lightEdge', 'softness'), intensity: number('lightEdge', 'intensity'), bloom: number('lightEdge', 'bloom'), spots: number('lightEdge', 'spots'), spotSize: number('lightEdge', 'spotSize'), smoke: number('lightEdge', 'smoke'), smokeSize: number('lightEdge', 'smokeSize'), speed: number('lightEdge', 'speed') },\n rotation: number('aurora', 'rotation'), glowBlur: number('lightEdge', 'glowBlur'), flowBlur: number('lightEdge', 'flowBlur'), shapeInset: number('lightEdge', 'shapeInset'),\n };\n}\n","import { useEffect, useRef, useState, type ComponentProps, type CSSProperties, type HTMLAttributes, type ReactNode } from 'react';\nimport { cx } from './internal';\nimport { useShaderEnabled } from './motion';\nimport { useUIResolvedTokens } from './theme/theme';\nimport { resolveEffectTokens } from './theme/effect-tokens';\n\ntype ShaderModule = typeof import('shaders/react');\ntype AuroraShaderProps = ComponentProps<ShaderModule['Aurora']>;\ntype ChromaFlowShaderProps = ComponentProps<ShaderModule['ChromaFlow']>;\ntype LightEdgeShaderProps = ComponentProps<ShaderModule['LightEdge']>;\ntype EffectHostProps = Omit<HTMLAttributes<HTMLDivElement>, 'children'> & {\n onUnavailable?: (reason: string) => void;\n};\n\n/** One lifecycle and fallback surface for all public shader effects. */\nfunction ShaderEffect({ effect, className, style, onUnavailable, children, ...hostProps }: EffectHostProps & {\n effect: 'aurora' | 'chroma' | 'light-edge';\n children: (module: ShaderModule) => ReactNode;\n}) {\n const [module, setModule] = useState<ShaderModule | null>(null);\n const [ready, setReady] = useState(false);\n const enabled = useShaderEnabled();\n const unavailable = useRef(onUnavailable);\n useEffect(() => { unavailable.current = onUnavailable; }, [onUnavailable]);\n useEffect(() => {\n if (!enabled) { setReady(false); return; }\n let active = true;\n import('shaders/react').then(loaded => {\n if (active) setModule(loaded);\n }).catch(error => {\n if (active) unavailable.current?.(error instanceof Error ? error.message : String(error));\n });\n return () => { active = false; };\n }, [enabled]);\n const hostStyle: CSSProperties = { height: 'var(--monkeys-ui-effect-host-height,var(--monkeys-ui-default-effect-host-height))', ...style, position: 'relative', overflow: 'hidden' };\n return <div {...hostProps} className={cx('monkeys-ui-shader-effect', className)} style={hostStyle}>\n {!ready ? <div aria-hidden=\"true\" className=\"monkeys-ui-shader-fallback\" data-effect={effect} /> : null}\n {enabled && module ? <module.Shader disableTelemetry style={{ width: '100%', height: '100%' }} onReady={() => setReady(true)} onUnavailable={reason => { setReady(false); unavailable.current?.(reason); }}>{children(module)}</module.Shader> : null}\n </div>;\n}\n\n/** Host identity, accessibility and events never become Shader component props. */\nfunction splitHostProps(props: Record<string, unknown>) {\n const host: Record<string, unknown> = {}; const shader: Record<string, unknown> = {};\n const native = new Set(['id', 'role', 'title', 'tabIndex', 'dir', 'lang', 'hidden', 'draggable', 'contentEditable', 'accessKey', 'translate', 'spellCheck', 'suppressHydrationWarning', 'slot']);\n for (const [key, value] of Object.entries(props)) (native.has(key) || key.startsWith('aria-') || key.startsWith('data-') || /^on[A-Z]/.test(key) ? host : shader)[key] = value;\n return { host, shader };\n}\n\nexport interface AuroraProps extends EffectHostProps, Partial<AuroraShaderProps> {}\nexport function Aurora({ className, style, onUnavailable, ...props }: AuroraProps) {\n const { host, shader } = splitHostProps(props); const tokens = resolveEffectTokens(useUIResolvedTokens());\n return <ShaderEffect {...host} effect=\"aurora\" className={className} style={style} onUnavailable={onUnavailable}>{module => <module.Aurora colorA={tokens.start} colorB={tokens.end} {...shader} />}</ShaderEffect>;\n}\n\nexport interface ChromaFlowProps extends EffectHostProps, Partial<ChromaFlowShaderProps> {}\nexport function ChromaFlow({ className, style, onUnavailable, ...props }: ChromaFlowProps) {\n const { host, shader } = splitHostProps(props); const tokens = resolveEffectTokens(useUIResolvedTokens());\n return <ShaderEffect {...host} effect=\"chroma\" className={className} style={style} onUnavailable={onUnavailable}>{module => <module.ChromaFlow baseColor={tokens.start} upColor={tokens.end} {...shader} />}</ShaderEffect>;\n}\n\nexport interface LightEdgeProps extends EffectHostProps, Partial<LightEdgeShaderProps> {}\nexport function LightEdge({ className, style, onUnavailable, ...props }: LightEdgeProps) {\n const { host, shader } = splitHostProps(props); const tokens = resolveEffectTokens(useUIResolvedTokens());\n return <ShaderEffect {...host} effect=\"light-edge\" className={className} style={style} onUnavailable={onUnavailable}>{module => <module.LightEdge colorA={tokens.lightEdgeStart} colorB={tokens.end} {...shader} />}</ShaderEffect>;\n}\n\n/** A CSS fallback-first surface effect with a soft blue/violet glow anchored to the bottom edge. */\nexport interface BottomGlowProps extends Omit<HTMLAttributes<HTMLDivElement>, 'children'> {\n /** Disable the very subtle drift while keeping the static glow. */\n animated?: boolean;\n}\n\nexport function BottomGlow({ className, style, animated = true, ...props }: BottomGlowProps) {\n const hostStyle: CSSProperties = {\n height: 'var(--monkeys-ui-effect-host-height,var(--monkeys-ui-default-effect-host-height))',\n ...style,\n };\n return <div {...props} className={cx('monkeys-ui-bottom-glow', className)} data-animated={animated ? 'true' : 'false'} style={hostStyle} />;\n}\n","/** Host-supplied samples use white ink, switching to black on near-white backgrounds. */\nexport function sampleInk(color?: string) {\n if (!color || !/^#([\\da-f]{3}|[\\da-f]{6})$/i.test(color)) return 'light';\n const hex = color.slice(1).length === 3 ? [...color.slice(1)].map(value => value + value).join('') : color.slice(1);\n const channels = [0, 2, 4].map(index => {\n const value = parseInt(hex.slice(index, index + 2), 16) / 255;\n return value <= 0.04045 ? value / 12.92 : ((value + 0.055) / 1.055) ** 2.4;\n });\n const luminance = channels[0] * 0.2126 + channels[1] * 0.7152 + channels[2] * 0.0722;\n // Preserve white labels on saturated swatches; reserve black for very light fills.\n return luminance >= 0.8 ? 'dark' : 'light';\n}\n","import { useEffect, useId, useRef, useState, type ComponentProps } from 'react';\nimport { useShaderEnabled } from './motion';\nimport { useUIResolvedTokens } from './theme/theme';\nimport { resolveEffectTokens } from './theme/effect-tokens';\n\ntype ShaderModule = typeof import('shaders/react');\nexport type ButtonLightEdgeOptions = Partial<Pick<ComponentProps<ShaderModule['LightEdge']>,\n 'colorA' | 'colorB' | 'colorSpace' | 'thickness' | 'softness' | 'intensity' | 'bloom' | 'spots' | 'spotSize' | 'pulse' | 'smoke' | 'smokeSize' | 'speed' | 'seed'>>;\n\n/** Decorative only: the button owns sizing, clipping, focus, and pointer input. */\nexport function ButtonLightEdge(options: ButtonLightEdgeOptions) {\n const filterId = `button-light-edge-${useId().replace(/:/g, '')}`;\n const hostRef = useRef<HTMLSpanElement>(null);\n const [module, setModule] = useState<ShaderModule | null>(null);\n const enabled = useShaderEnabled();\n const theme = useUIResolvedTokens();\n const tokens = resolveEffectTokens(theme);\n const [ready, setReady] = useState(false);\n const [shape, setShape] = useState<Record<string, number | string> | null>(null);\n\n\n useEffect(() => {\n if (!enabled) return;\n let active = true;\n import('shaders/react').then(loaded => { if (active) setModule(loaded); }).catch(() => {});\n return () => { active = false; };\n }, [enabled]);\n\n useEffect(() => {\n const host = hostRef.current;\n const button = host?.closest('button');\n if (!button || !host) return;\n const update = () => {\n const width = host.clientWidth;\n const height = host.clientHeight;\n if (!width || !height) return;\n const radiusValue = getComputedStyle(button).borderTopLeftRadius;\n const radius = radiusValue.endsWith('%')\n ? Math.min(width, height) * parseFloat(radiusValue) / 100\n : parseFloat(radiusValue) || 0;\n const inset = tokens.shapeInset;\n setShape({ type: 'roundedRectSDF', radius: Math.max(0.01, width / (2 * height) - inset / height), height: Math.max(0.01, 0.5 - inset / height), rounding: Math.max(0, Math.min(radius - inset, height / 2 - inset)) / height });\n };\n update();\n const observer = new ResizeObserver(update);\n observer.observe(button);\n return () => observer.disconnect();\n }, [theme]);\n\n return <span ref={hostRef} className=\"monkeys-ui-button-light-edge-mask\" data-ready={ready || undefined}>\n <svg width=\"0\" height=\"0\" aria-hidden=\"true\" className=\"monkeys-ui-button-light-edge-defs\">\n <defs>\n {/* Composite a diffuse glow and a soft flow from the same canvas. */}\n <filter id={filterId} x=\"-30%\" y=\"-100%\" width=\"160%\" height=\"300%\" colorInterpolationFilters=\"sRGB\">\n <feGaussianBlur in=\"SourceGraphic\" stdDeviation={tokens.glowBlur} result=\"glow\" />\n <feGaussianBlur in=\"SourceGraphic\" stdDeviation={tokens.flowBlur} result=\"flow\" />\n <feMerge><feMergeNode in=\"glow\" /><feMergeNode in=\"flow\" /></feMerge>\n </filter>\n </defs>\n </svg>\n <span className=\"monkeys-ui-button-light-edge-flow\" style={{ filter: `url(#${filterId})` }}>\n <span className=\"monkeys-ui-button-light-edge-ambient\" />\n {enabled && module && shape ? <module.Shader disableTelemetry style={{ width: '100%', height: '100%' }} onReady={() => setReady(true)}>\n <module.LightEdge colorA={tokens.lightEdgeStart} colorB={tokens.end} {...tokens.lightEdge} {...options} stops={null} shape={shape} />\n </module.Shader> : null}\n </span>\n </span>;\n}\n","import { Children, cloneElement, createContext, forwardRef, isValidElement, useContext, useEffect, useId, useImperativeHandle, useRef, useState, type ButtonHTMLAttributes, type InputHTMLAttributes, type TextareaHTMLAttributes, type HTMLAttributes, type ReactElement, type ReactNode, type CSSProperties } from 'react';\nimport * as SwitchPrimitive from '@radix-ui/react-switch';\nimport * as SelectPrimitive from '@radix-ui/react-select';\nimport * as TabsPrimitive from '@radix-ui/react-tabs';\nimport * as ToggleGroup from '@radix-ui/react-toggle-group';\nimport * as MenuPrimitive from '@radix-ui/react-dropdown-menu';\nimport { cx, useControllable, useFormReset } from './internal';\nimport { Portal, useUIDirection, useUILocale } from './theme/theme';\nimport { Search, X, Plus, ChevronDown, ChevronUp, Check } from 'lucide-react';\nimport { sampleInk } from './sample-color';\nimport { ButtonLightEdge, type ButtonLightEdgeOptions } from './button-light-edge';\nimport { useShaderEnabled } from './motion';\n\ninterface ButtonBaseProps extends ButtonHTMLAttributes<HTMLButtonElement> { variant?: 'solid' | 'soft' | 'outline' | 'ghost' | 'switch'; tone?: 'neutral' | 'primary' | 'danger'; size?: 'sm' | 'md' | 'lg'; loading?: boolean; icon?: ReactNode; lightEdge?: boolean | ButtonLightEdgeOptions; toggle?: boolean; checked?: boolean; defaultChecked?: boolean; onCheckedChange?: (checked: boolean) => void; required?: boolean }\ntype ButtonShapeProps = { shape?: 'default' | 'tile' } | { shape: 'icon'; 'aria-label': string };\nexport type ButtonProps = ButtonBaseProps & ButtonShapeProps;\nexport const Button = forwardRef<HTMLButtonElement, ButtonProps>(function Button({ variant, shape = 'default', icon, tone = 'neutral', size = 'md', loading = false, lightEdge = false, toggle = false, checked, defaultChecked, onCheckedChange, required, type = 'button', className, children, onClick, onPointerDown, onKeyDown, ...props }, ref) {\n const direction = useUIDirection();\n const [pressed, setPressed] = useControllable(checked, defaultChecked, false, onCheckedChange);\n if (variant === 'switch') return <Switch {...props} ref={ref} type={type} value={props.value === undefined ? undefined : String(props.value)} required={required} checked={checked} defaultChecked={defaultChecked} onCheckedChange={onCheckedChange} className={cx('monkeys-ui-button-switch', className)} data-variant=\"switch\" data-tone=\"primary\" data-size={size} aria-label={props['aria-label'] ?? (typeof children === 'string' ? children : undefined)} aria-busy={loading || undefined} aria-disabled={loading || props['aria-disabled']} onPointerDown={onPointerDown} onKeyDown={onKeyDown} onClick={event => { if (loading || props['aria-disabled'] === true || props['aria-disabled'] === 'true') { event.preventDefault(); return; } onClick?.(event); }} />;\n return <button {...props} dir={props.dir ?? direction} ref={ref} type={type} className={cx('monkeys-ui-button', className)} data-light-edge={lightEdge ? true : undefined} data-shape={shape} data-variant={variant ?? (shape === 'icon' ? 'ghost' : shape === 'tile' ? 'outline' : 'solid')} data-tone={tone} data-size={size} onPointerDown={event => { event.currentTarget.dataset.input = 'pointer'; onPointerDown?.(event); }} onKeyDown={event => { event.currentTarget.dataset.input = 'keyboard'; onKeyDown?.(event); }} aria-pressed={toggle ? pressed : props['aria-pressed']} aria-busy={loading || undefined} aria-disabled={loading || props['aria-disabled']} onClick={event => { if (loading || props['aria-disabled'] === true || props['aria-disabled'] === 'true') { event.preventDefault(); return; } onClick?.(event); if (toggle && !event.defaultPrevented) setPressed(!pressed); }}>{lightEdge ? <span className=\"monkeys-ui-button-light-edge\" aria-hidden=\"true\"><ButtonLightEdge {...(lightEdge === true ? {} : lightEdge)} /></span> : null}<span className=\"monkeys-ui-button-label\" data-loading={loading || undefined}>{icon ? <span className=\"monkeys-ui-button-icon\" aria-hidden=\"true\">{icon}</span> : null}{children}</span>{loading ? <span className=\"monkeys-ui-button-spinner\" aria-hidden=\"true\" /> : null}</button>;\n});\nexport type ToggleButtonProps = Omit<ButtonBaseProps, 'value' | 'defaultValue' | 'variant'> & ButtonShapeProps & { variant?: Exclude<ButtonBaseProps['variant'], 'switch'> };\n/** Compatibility entry; prefer Button toggle. */\nexport const ToggleButton = forwardRef<HTMLButtonElement, ToggleButtonProps>(function ToggleButton(props, ref) {\n return <Button {...props} ref={ref} toggle />;\n});\n\nexport interface ColorOption { id: string; label: string; color: string }\nexport interface ColorSliderProps extends Omit<InputHTMLAttributes<HTMLInputElement>, 'type' | 'value' | 'defaultValue' | 'onChange' | 'min' | 'max' | 'step' | 'children'> {\n options: ColorOption[];\n value?: string;\n defaultValue?: string;\n onValueChange?: (value: string) => void;\n onValueCommit?: (value: string) => void;\n}\n/** A native, discrete range control. The gradient never creates selectable intermediate colors. */\nexport const ColorSlider = forwardRef<HTMLInputElement, ColorSliderProps>(function ColorSlider({ options, value, defaultValue, onValueChange, onValueCommit, disabled, readOnly, className, style, onPointerDown, onPointerMove, onPointerCancel, onKeyDown, onPointerUp, onKeyUp, dir, name, ...props }, ref) {\n const field = useField(props);\n const direction = useUIDirection(dir === 'rtl' || dir === 'ltr' ? dir : undefined);\n const [selected, setSelected] = useControllable(value, defaultValue, options[0]?.id ?? '', onValueChange);\n const input = useRef<HTMLInputElement>(null);\n const initial = useRef(defaultValue ?? options[0]?.id ?? '');\n useImperativeHandle(ref, () => input.current!, []);\n useFormReset(input, () => { if (value === undefined) setSelected(initial.current); });\n const index = Math.max(0, options.findIndex(option => option.id === selected));\n const option = options[index];\n const motionEnabled = useShaderEnabled();\n const [interaction, setInteraction] = useState<'pointer' | 'drag' | 'keyboard'>('keyboard');\n const pointer = useRef<{ id: number; x: number; y: number } | null>(null);\n const animated = motionEnabled && interaction === 'pointer' && !disabled && !readOnly;\n // Keep two stable layers so rapid changes retarget their opacity transitions.\n const sample = { label: option?.label, color: option?.color };\n const [samples, setSamples] = useState({ layers: [sample, sample], active: 0 });\n const current = samples.layers[samples.active];\n if (current.label !== sample.label || current.color !== sample.color) {\n const active = 1 - samples.active;\n setSamples({ layers: samples.layers.map((layer, index) => index === active ? sample : layer), active });\n }\n const position = options.length > 1 ? index / (options.length - 1) : 0.5;\n // Native hit target, visual thumb and gradient stops share the same inset.\n const location = (fraction: number) => `calc(${fraction * 100}% + ${0.5 - fraction} * var(--monkeys-ui-color-slider-thumb-width,var(--monkeys-ui-default-color-slider-thumb-width)))`;\n const gradient = options.map((item, index) => {\n const t = options.length > 1 ? index / (options.length - 1) : 0;\n return `${item.color} ${location(t)}`;\n });\n const background = options.length > 1 ? `linear-gradient(to ${direction === 'rtl' ? 'left' : 'right'}, ${gradient.join(', ')})` : option?.color;\n const locked = disabled || readOnly || options.length < 2;\n const commit = (input: HTMLInputElement) => {\n const next = options[Number(input.value)];\n if (!locked && next) onValueCommit?.(next.id);\n };\n return <div className={cx('monkeys-ui-color-slider', className)} data-animated={animated || undefined} data-disabled={disabled || options.length === 0 || undefined} dir={direction} style={style}>\n <span className=\"monkeys-ui-color-slider-track\" style={{ background }} aria-hidden=\"true\" />\n <span className=\"monkeys-ui-color-slider-positioner\" style={{ transform: `translateX(${(direction === 'rtl' ? -1 : 1) * position * 100}%)` }} aria-hidden=\"true\">\n <span className=\"monkeys-ui-color-slider-thumb\" data-ink={sampleInk(option?.color)} style={{ '--monkeys-ui-color-slider-selected': option?.color } as CSSProperties}>\n {samples.layers.map((layer, index) => <span key={index} className=\"monkeys-ui-color-slider-sample\" data-active={index === samples.active} data-ink={sampleInk(layer.color)} style={{ '--monkeys-ui-color-slider-selected': layer.color } as CSSProperties}><span className={index === samples.active ? 'monkeys-ui-color-slider-label' : 'monkeys-ui-color-slider-previous-label'}>{layer.label}</span></span>)}\n </span>\n </span>\n <input {...props} {...field} ref={input} type=\"range\" dir={direction} min={0} max={Math.max(0, options.length - 1)} step={1} value={index} disabled={disabled || options.length === 0} aria-readonly={readOnly || undefined} aria-valuetext={option?.label ?? ''} className=\"monkeys-ui-color-slider-input\" onPointerDown={event => {\n onPointerDown?.(event);\n if (readOnly) event.preventDefault();\n if (!locked && !event.defaultPrevented && event.isPrimary !== false && event.button === 0) {\n pointer.current = { id: event.pointerId, x: event.clientX, y: event.clientY };\n setInteraction('pointer');\n }\n }} onPointerMove={event => {\n onPointerMove?.(event);\n const start = pointer.current;\n if (start?.id === event.pointerId && Math.hypot(event.clientX - start.x, event.clientY - start.y) > 3) setInteraction('drag');\n }} onPointerCancel={event => { pointer.current = null; setInteraction('keyboard'); onPointerCancel?.(event); }} onKeyDown={event => { pointer.current = null; setInteraction('keyboard'); onKeyDown?.(event); if (readOnly && ['ArrowLeft','ArrowRight','ArrowUp','ArrowDown','Home','End','PageUp','PageDown'].includes(event.key)) event.preventDefault(); }} onChange={event => { if (!locked) { const next = options[Number(event.target.value)]; if (next) setSelected(next.id); } }} onPointerUp={event => { pointer.current = null; onPointerUp?.(event); if (!event.defaultPrevented) commit(event.currentTarget); }} onKeyUp={event => { onKeyUp?.(event); if (!event.defaultPrevented && ['ArrowLeft','ArrowRight','ArrowUp','ArrowDown','Home','End','PageUp','PageDown'].includes(event.key)) commit(event.currentTarget); }} />\n {name ? <input type=\"hidden\" name={name} form={props.form} value={option?.id ?? ''} disabled={disabled || options.length === 0} /> : null}\n </div>;\n});\n\ninterface FieldContextValue { id: string; describedBy?: string; invalid?: boolean; required?: boolean }\nconst FieldContext = createContext<FieldContextValue | null>(null);\nfunction useField(props: { id?: string; dir?: string; 'aria-describedby'?: string; 'aria-invalid'?: InputHTMLAttributes<HTMLInputElement>['aria-invalid']; required?: boolean }) {\n const field = useContext(FieldContext);\n const direction = useUIDirection(props.dir === 'rtl' || props.dir === 'ltr' ? props.dir : undefined);\n return { id: field?.id ?? props.id, dir: props.dir ?? direction, 'aria-describedby': [field?.describedBy, props['aria-describedby']].filter(Boolean).join(' ') || undefined, 'aria-invalid': props['aria-invalid'] ?? field?.invalid, required: props.required ?? field?.required };\n}\nexport interface FieldProps extends Omit<HTMLAttributes<HTMLDivElement>, 'children'> { label: ReactNode; labelAccessory?: ReactNode; children: ReactElement; description?: ReactNode; descriptionHidden?: boolean; error?: ReactNode; invalid?: boolean; required?: boolean }\nexport function Field({ id: explicitId, label, labelAccessory, description, descriptionHidden, error, invalid, required, className, children, ...props }: FieldProps) {\n const generated = useId();\n const id = explicitId ?? (isValidElement<{ id?: string }>(children) ? children.props.id : undefined) ?? generated;\n const describedBy = [description ? id + '-description' : '', error ? id + '-error' : ''].filter(Boolean).join(' ') || undefined;\n const fieldLabel = <label className=\"monkeys-ui-label\" htmlFor={id}>{label}{required ? <span className=\"monkeys-ui-required\" aria-hidden=\"true\"> *</span> : null}</label>;\n return <div {...props} className={cx('monkeys-ui-field', className)}>\n {labelAccessory ? <div className=\"flex items-center gap-1\" data-slot=\"label-row\">{fieldLabel}{labelAccessory}</div> : fieldLabel}\n <FieldContext.Provider value={{ id, describedBy, invalid: invalid ?? !!error, required }}>{Children.only(children)}</FieldContext.Provider>\n {description ? <div id={id + '-description'} className={descriptionHidden ? 'monkeys-ui-visually-hidden' : 'monkeys-ui-description'}>{description}</div> : null}\n {error ? <div id={id + '-error'} className=\"monkeys-ui-error\" role=\"alert\">{error}</div> : null}\n </div>;\n}\nexport interface FieldsetProps extends HTMLAttributes<HTMLFieldSetElement> { legend: ReactNode; disabled?: boolean }\nexport function Fieldset({ legend, children, className, ...props }: FieldsetProps) { return <fieldset {...props} className={cx('monkeys-ui-fieldset', className)}>{legend != null ? <legend>{legend}</legend> : null}{children}</fieldset>; }\ntype InputTagsProps = Omit<InputHTMLAttributes<HTMLInputElement>, 'value' | 'defaultValue' | 'type'> & {\n variant: 'tags';\n mode?: 'input';\n value?: string[];\n defaultValue?: string[];\n onValueChange?: (value: string[]) => void;\n /** Optional controlled draft for forms that own uncommitted text. */\n inputValue?: string;\n onInputValueChange?: (value: string) => void;\n removeLabel?: string;\n};\nexport interface InputTagItem { id: string; label: string }\ntype InputTagSelectionProps = Omit<InputHTMLAttributes<HTMLInputElement>, 'value' | 'defaultValue' | 'type' | 'onChange' | 'children'> & {\n variant: 'tags';\n mode: 'select';\n label: string;\n items: InputTagItem[];\n onAdd?: () => void;\n onRemove?: (id: string) => void;\n removeLabel?: string;\n};\ntype InputSearchProps = SearchFieldProps & Pick<InputHTMLAttributes<HTMLInputElement>, 'onChange'> & { variant: 'search' };\ntype InputNumberProps = NumberInputProps & Pick<InputHTMLAttributes<HTMLInputElement>, 'onChange'> & { variant: 'number' };\nexport type InputProps = (InputHTMLAttributes<HTMLInputElement> & { variant?: 'default' }) | InputTagsProps | InputTagSelectionProps | InputSearchProps | InputNumberProps;\nexport const Input = forwardRef<HTMLInputElement, InputProps>(function Input(props, ref) {\n const field = useField(props);\n if (props.variant === 'tags') return props.mode === 'select' ? <InputTagSelectionControl {...props} ref={ref} /> : <InputTagsControl {...props} ref={ref} />;\n if (props.variant === 'search') return <InputSearchControl {...props} ref={ref} />;\n if (props.variant === 'number') return <InputNumberControl {...props} ref={ref} />;\n const { variant, className, ...nativeProps } = props;\n return <input {...nativeProps} {...field} className={cx('monkeys-ui-input', className)} ref={ref} />;\n});\nconst InputTagsControl = forwardRef<HTMLInputElement, InputTagsProps>(function InputTagsControl({\n variant, mode, value, defaultValue, onValueChange, inputValue, onInputValueChange, removeLabel = '删除', name, form, className, style,\n disabled, readOnly, placeholder = '输入并回车后添加', onChange, onKeyDown, onCompositionStart, onCompositionEnd, ...props\n}, ref) {\n const field = useField(props);\n const [tags, setTags] = useControllable(value, defaultValue, [], onValueChange);\n const [draft, setDraft] = useControllable(inputValue, undefined, '', onInputValueChange);\n const [announcement, setAnnouncement] = useState('');\n const composing = useRef(false);\n const input = useRef<HTMLInputElement>(null);\n const locked = disabled || readOnly;\n useImperativeHandle(ref, () => input.current!, []);\n const initialTags = useRef(defaultValue ?? []);\n useFormReset(input, () => { if (value === undefined) setTags(initialTags.current); setDraft(''); });\n useEffect(() => {\n input.current?.setCustomValidity(field.required && tags.length === 0 ? '请至少添加一个标签' : '');\n }, [field.required, tags.length]);\n const remove = (index: number) => {\n if (locked) return;\n setTags(tags.filter((_, current) => current !== index));\n setAnnouncement(`${removeLabel} ${tags[index]}`);\n input.current?.focus();\n };\n return <div className={cx('monkeys-ui-tag-input', className)} style={style} dir={field.dir} data-variant={variant} data-disabled={disabled || undefined} data-readonly={readOnly || undefined} data-invalid={field['aria-invalid'] || undefined} onClick={event => {\n if (!disabled && !(event.target as HTMLElement).closest('button')) input.current?.focus();\n }}>\n {tags.map((tag, index) => <InputTag key={`${index}:${tag}`} label={tag} disabled={locked} removeLabel={removeLabel} onRemove={() => remove(index)} />)}\n <input {...props} {...field} ref={input} form={form} type=\"text\" className=\"monkeys-ui-tag-input-editor\" disabled={disabled} readOnly={readOnly} placeholder={placeholder} value={draft} required={field.required && tags.length === 0} aria-required={field.required || undefined} onChange={event => {\n if (locked) return;\n setDraft(event.target.value);\n onChange?.(event);\n }} onCompositionStart={event => { composing.current = true; onCompositionStart?.(event); }} onCompositionEnd={event => { composing.current = false; onCompositionEnd?.(event); }} onKeyDown={event => {\n onKeyDown?.(event);\n if (event.defaultPrevented || locked || composing.current || event.nativeEvent.isComposing || event.keyCode === 229) return;\n if (event.key === 'Enter') {\n event.preventDefault();\n const next = draft.trim();\n if (next && !tags.includes(next)) {\n setTags([...tags, next]);\n setAnnouncement(next);\n }\n setDraft('');\n } else if (event.key === 'Backspace' && draft === '' && tags.length) {\n event.preventDefault();\n remove(tags.length - 1);\n }\n }} />\n {name ? tags.map((tag, index) => <input key={index} type=\"hidden\" name={name} form={form} value={tag} disabled={disabled} />) : null}\n <span className=\"monkeys-ui-visually-hidden\" aria-live=\"polite\" aria-atomic=\"true\">{announcement}</span>\n </div>;\n});\n/** One chip recipe for typed tags and ID-backed selections; not a public component. */\nfunction InputTag({ label, disabled, removeLabel, onRemove }: { label: string; disabled?: boolean; removeLabel: string; onRemove?: () => void }) {\n return <span className=\"monkeys-ui-input-tag\"><span className=\"monkeys-ui-input-tag-text\" title={label}>{label}</span>{onRemove ? <button type=\"button\" className=\"monkeys-ui-input-tag-remove\" disabled={disabled} aria-label={`${removeLabel} ${label}`} onClick={onRemove}><X size=\"var(--monkeys-ui-icon-size-s14,var(--monkeys-ui-default-icon-size-s14))\" aria-hidden=\"true\" /></button> : null}</span>;\n}\nconst InputTagSelectionControl = forwardRef<HTMLInputElement, InputTagSelectionProps>(function InputTagSelectionControl({\n variant, mode, label, items, onAdd, onRemove, removeLabel = '移除', name, form, disabled, readOnly, className, style, onInvalid, ...props\n}, ref) {\n const field = useField(props);\n const input = useRef<HTMLInputElement>(null);\n const add = useRef<HTMLButtonElement>(null);\n const group = useRef<HTMLDivElement>(null);\n const [announcement, setAnnouncement] = useState('');\n const locked = disabled || readOnly;\n useImperativeHandle(ref, () => input.current!, []);\n useEffect(() => { input.current?.setCustomValidity(field.required && !items.length ? '请至少添加一个标签' : ''); }, [field.required, items.length]);\n return <div ref={group} role=\"group\" aria-label={label} aria-describedby={field['aria-describedby']} aria-required={field.required || undefined} aria-invalid={field['aria-invalid']} tabIndex={-1} dir={field.dir} className={cx('monkeys-ui-tag-input', className)} data-mode={mode} data-empty={!items.length} data-disabled={disabled || undefined} data-readonly={readOnly || undefined} data-invalid={field['aria-invalid'] || undefined} style={style}>\n <div className=\"monkeys-ui-tag-input-header\"><span className=\"monkeys-ui-label\">{label}</span>{onAdd ? <button ref={add} type=\"button\" className=\"monkeys-ui-tag-input-add\" disabled={locked} aria-label={'添加' + label} onClick={onAdd}><Plus aria-hidden=\"true\" /></button> : null}</div>\n {items.length ? <div className=\"monkeys-ui-tag-input-items\">{items.map(item => <InputTag key={item.id} label={item.label} disabled={locked} removeLabel={removeLabel} onRemove={onRemove ? () => { if (locked) return; onRemove(item.id); setAnnouncement(`${removeLabel} ${item.label}`); (add.current ?? group.current)?.focus(); } : undefined} />)}</div> : null}\n <input {...props} {...field} ref={input} form={form} type=\"text\" className=\"monkeys-ui-visually-hidden\" aria-hidden=\"true\" tabIndex={-1} value={items.length ? 'selected' : ''} onChange={() => {}} disabled={disabled} required={field.required} onInvalid={event => { onInvalid?.(event); event.preventDefault(); (add.current ?? group.current)?.focus(); }} />\n {name ? items.map(item => <input key={item.id} type=\"hidden\" name={name} form={form} value={item.id} disabled={disabled} />) : null}\n <span className=\"monkeys-ui-visually-hidden\" aria-live=\"polite\" aria-atomic=\"true\">{announcement}</span>\n </div>;\n});\nexport const Textarea = forwardRef<HTMLTextAreaElement, TextareaHTMLAttributes<HTMLTextAreaElement>>(function Textarea({ className, ...props }, ref) { const field = useField(props); return <textarea {...props} {...field} ref={ref} className={cx('monkeys-ui-textarea', className)} />; });\nexport function parseNumberValue(text: string): number | null { return /^-?(?:\\d+|\\d*\\.\\d+)$/.test(text.trim()) && Number.isFinite(Number(text)) ? Number(text) : null; }\nexport interface NumberInputProps extends Omit<InputHTMLAttributes<HTMLInputElement>, 'type' | 'value' | 'defaultValue' | 'onChange'> { value?: string; defaultValue?: string; onValueChange?: (text: string, detail: { numberValue: number | null }) => void }\n/** Compatibility entry; prefer Input variant=\"number\". */\nexport const NumberInput = forwardRef<HTMLInputElement, NumberInputProps>(function NumberInput(props, ref) {\n return <Input {...props} variant=\"number\" ref={ref} />;\n});\nconst InputNumberControl = forwardRef<HTMLInputElement, InputNumberProps>(function InputNumberControl({ variant, value, defaultValue, onValueChange, onChange, ...props }, ref) {\n const [text, setText] = useControllable(value, defaultValue, '', next => onValueChange?.(next, { numberValue: parseNumberValue(next) }));\n const input = useRef<HTMLInputElement>(null);\n const initial = useRef(defaultValue ?? '');\n useImperativeHandle(ref, () => input.current!, []);\n useFormReset(input, () => { if (value === undefined) setText(initial.current); });\n return <Input {...props} variant=\"default\" type=\"text\" inputMode=\"decimal\" value={text} onChange={event => { setText(event.target.value); onChange?.(event); }} ref={input} />;\n});\nexport interface SearchFieldProps extends Omit<InputHTMLAttributes<HTMLInputElement>, 'type' | 'value' | 'defaultValue' | 'onChange' | 'onSubmit'> { value?: string; defaultValue?: string; onValueChange?: (value: string) => void; onSearch?: (value: string) => void; clearLabel?: string }\n/** Compatibility entry; prefer Input variant=\"search\". */\nexport const SearchField = forwardRef<HTMLInputElement, SearchFieldProps>(function SearchField(props, ref) {\n return <Input {...props} variant=\"search\" ref={ref} />;\n});\nconst InputSearchControl = forwardRef<HTMLInputElement, InputSearchProps>(function InputSearchControl({ variant, value, defaultValue, onValueChange, onChange, onSearch, clearLabel = '清空搜索', className, onKeyDown, onCompositionStart, onCompositionEnd, disabled, readOnly, ...props }, ref) {\n const [text, setText] = useControllable(value, defaultValue, '', onValueChange);\n const composing = useRef(false);\n const input = useRef<HTMLInputElement>(null);\n useImperativeHandle(ref, () => input.current!, []);\n const initial = useRef(defaultValue ?? '');\n useFormReset(input, () => { if (value === undefined) setText(initial.current); });\n const clear = () => {\n const editor = input.current;\n if (disabled || readOnly || !editor) return;\n // Dispatch a native input event through React's normal onChange path.\n const setter = Object.getOwnPropertyDescriptor(editor.ownerDocument.defaultView!.HTMLInputElement.prototype, 'value')!.set!;\n setter.call(editor, '');\n editor.dispatchEvent(new Event('input', { bubbles: true }));\n editor.focus();\n };\n return <div className={cx('monkeys-ui-search', className)}><Search size=\"var(--monkeys-ui-icon-size-s17,var(--monkeys-ui-default-icon-size-s17))\" aria-hidden=\"true\" /><Input {...props} variant=\"default\" ref={input} type=\"search\" disabled={disabled} readOnly={readOnly} value={text} onChange={event => { if (!disabled && !readOnly) { setText(event.target.value); onChange?.(event); } }} onCompositionStart={event => { composing.current = true; onCompositionStart?.(event); }} onCompositionEnd={event => { composing.current = false; onCompositionEnd?.(event); }} onKeyDown={event => { onKeyDown?.(event); if (!event.defaultPrevented && event.key === 'Enter' && !disabled && !readOnly && !composing.current && !event.nativeEvent.isComposing && event.keyCode !== 229) { event.preventDefault(); onSearch?.(text); } }} />{text ? <Button shape=\"icon\" aria-label={clearLabel} size=\"sm\" disabled={disabled || readOnly} onClick={clear}><X size=\"var(--monkeys-ui-icon-size-s14,var(--monkeys-ui-default-icon-size-s14))\" aria-hidden=\"true\" /></Button> : null}</div>;\n});\nexport interface SwitchProps extends Omit<SwitchPrimitive.SwitchProps, 'defaultChecked'> { defaultChecked?: boolean }\nexport const Switch = forwardRef<HTMLButtonElement, SwitchProps>(function Switch({ checked, defaultChecked, onCheckedChange, className, onPointerDown, onKeyDown, ...props }, ref) {\n const field = useField(props);\n const [value, setValue] = useControllable(checked, defaultChecked, false, onCheckedChange);\n return <SwitchPrimitive.Root {...props} {...field} ref={ref} checked={value} onCheckedChange={setValue} onPointerDown={event => { event.currentTarget.dataset.input = 'pointer'; onPointerDown?.(event); }} onKeyDown={event => { event.currentTarget.dataset.input = 'keyboard'; onKeyDown?.(event); }} className={cx('monkeys-ui-switch', className)}><SwitchPrimitive.Thumb className=\"monkeys-ui-switch-thumb\" /></SwitchPrimitive.Root>;\n});\nexport interface SelectOption { value: string; label: string; disabled?: boolean }\n/** Shared select appearance for popover-backed pickers; the parent owns selection semantics. */\nexport interface PickerTriggerProps extends ButtonHTMLAttributes<HTMLButtonElement> { indicator?: ReactNode }\nexport const PickerTrigger = forwardRef<HTMLButtonElement, PickerTriggerProps>(function PickerTrigger({ indicator = <ChevronDown size={12} />, className, children, type = 'button', ...props }, ref) {\n return <button {...props} ref={ref} type={type} className={cx('monkeys-ui-select', className)}><span className=\"min-w-0 truncate\">{children}</span><span className=\"shrink-0\" aria-hidden=\"true\">{indicator}</span></button>;\n});\ninterface SelectBaseProps extends Omit<SelectPrimitive.SelectProps, 'children' | 'value' | 'defaultValue' | 'onValueChange'> { options: SelectOption[]; placeholder?: string; id?: string; className?: string; style?: React.CSSProperties; 'aria-label'?: string; 'aria-describedby'?: string; 'aria-invalid'?: boolean }\ntype MultipleSelectProps = SelectBaseProps & { variant: 'multiple'; value?: string[]; defaultValue?: string[]; onValueChange?: (value: string[]) => void };\ntype SingleSelectProps = SelectBaseProps & { variant?: 'default'; value?: string; defaultValue?: string; onValueChange?: (value: string) => void };\nexport type SelectProps = SingleSelectProps | MultipleSelectProps;\nexport const Select = forwardRef<HTMLButtonElement, SelectProps>(function Select(props, ref) {\n if (props.variant === 'multiple') return <MultipleSelect {...props} ref={ref} />;\n return <SingleSelect {...props} ref={ref} />;\n});\nconst SingleSelect = forwardRef<HTMLButtonElement, SingleSelectProps>(function SingleSelect({ options, placeholder, className, style, id, 'aria-label': label, 'aria-describedby': describedBy, 'aria-invalid': invalid, value, defaultValue, onValueChange, variant: _variant, ...props }, ref) {\n const field = useField({ id, dir: props.dir, 'aria-describedby': describedBy, 'aria-invalid': invalid, required: props.required });\n const [selected, setSelected] = useControllable(value, defaultValue, '', onValueChange);\n const direction = useUIDirection(props.dir);\n const locale = useUILocale();\n const { required, ...fieldAttributes } = field;\n return <SelectPrimitive.Root {...props} dir={direction} required={required} value={selected} onValueChange={setSelected}><SelectPrimitive.Trigger ref={ref} {...fieldAttributes} aria-required={required || undefined} aria-label={label} className={cx('monkeys-ui-select', className)} style={style}><SelectPrimitive.Value placeholder={placeholder ?? locale.messages.multiSelect.placeholder} /><SelectPrimitive.Icon aria-hidden=\"true\"><ChevronDown size=\"var(--monkeys-ui-icon-size-s12,var(--monkeys-ui-default-icon-size-s12))\" /></SelectPrimitive.Icon></SelectPrimitive.Trigger><Portal><SelectPrimitive.Content className=\"monkeys-ui-select-content\" position=\"popper\" sideOffset={6}><SelectPrimitive.ScrollUpButton><ChevronUp size=\"var(--monkeys-ui-icon-size-s12,var(--monkeys-ui-default-icon-size-s12))\" aria-hidden=\"true\" /></SelectPrimitive.ScrollUpButton><SelectPrimitive.Viewport>{options.map(option => <SelectPrimitive.Item key={option.value} value={option.value} disabled={option.disabled} className=\"monkeys-ui-select-item\"><SelectPrimitive.ItemText>{option.label}</SelectPrimitive.ItemText><SelectPrimitive.ItemIndicator><Check size=\"var(--monkeys-ui-icon-size-s12,var(--monkeys-ui-default-icon-size-s12))\" aria-hidden=\"true\" /></SelectPrimitive.ItemIndicator></SelectPrimitive.Item>)}</SelectPrimitive.Viewport><SelectPrimitive.ScrollDownButton><ChevronDown size=\"var(--monkeys-ui-icon-size-s12,var(--monkeys-ui-default-icon-size-s12))\" aria-hidden=\"true\" /></SelectPrimitive.ScrollDownButton></SelectPrimitive.Content></Portal></SelectPrimitive.Root>;\n});\nconst MultipleSelect = forwardRef<HTMLButtonElement, MultipleSelectProps>(function MultipleSelect({ options, placeholder, className, style, id, 'aria-label': label, 'aria-describedby': describedBy, 'aria-invalid': invalid, value, defaultValue, onValueChange, open, defaultOpen, onOpenChange, ...props }, ref) {\n const field = useField({ id, dir: props.dir, 'aria-describedby': describedBy, 'aria-invalid': invalid, required: props.required });\n const [selected, setSelected] = useControllable(value, defaultValue, [], onValueChange);\n const [shown, setShown] = useControllable(open, defaultOpen, false, onOpenChange);\n const trigger = useRef<HTMLButtonElement>(null);\n const input = useRef<HTMLInputElement>(null);\n const initial = useRef(defaultValue ?? []);\n useImperativeHandle(ref, () => trigger.current!, []);\n useFormReset(input, () => { if (value === undefined) setSelected(initial.current); setShown(false); setValidationFailed(false); });\n const direction = useUIDirection(props.dir);\n const locale = useUILocale();\n const { required, ...fieldAttributes } = field;\n const generatedId = useId();\n const triggerId = field.id ?? generatedId;\n const requiredId = generatedId + '-required';\n const [validationFailed, setValidationFailed] = useState(false);\n useEffect(() => { if (selected.length || !required) setValidationFailed(false); }, [selected.length, required]);\n const selectedLabels = options.filter(option => selected.includes(option.value)).map(option => option.label);\n const toggle = (option: SelectOption) => {\n if (option.disabled || props.disabled) return;\n setSelected(selected.includes(option.value) ? selected.filter(value => value !== option.value) : [...selected, option.value]);\n };\n return <MenuPrimitive.Root dir={direction} open={shown} onOpenChange={setShown} modal={false}>\n <MenuPrimitive.Trigger asChild><button ref={trigger} type=\"button\" {...fieldAttributes} id={triggerId} aria-label={label} aria-describedby={[field['aria-describedby'], required ? requiredId : ''].filter(Boolean).join(' ') || undefined} aria-invalid={field['aria-invalid'] || validationFailed || undefined} disabled={props.disabled} className={cx('monkeys-ui-select', className)} style={style} data-variant=\"multiple\" data-placeholder={!selectedLabels.length || undefined}>\n <span className=\"monkeys-ui-select-value\">{selectedLabels.length ? selectedLabels.join('、') : (placeholder ?? locale.messages.multiSelect.placeholder)}</span><ChevronDown size=\"var(--monkeys-ui-icon-size-s12,var(--monkeys-ui-default-icon-size-s12))\" aria-hidden=\"true\" />\n </button></MenuPrimitive.Trigger>\n <Portal><MenuPrimitive.Content aria-label={label} aria-labelledby={label ? undefined : triggerId} sideOffset={6} align=\"start\" className=\"monkeys-ui-select-content monkeys-ui-select-multiple-content\">\n {options.map(option => <MenuPrimitive.CheckboxItem key={option.value} checked={selected.includes(option.value)} disabled={option.disabled} onSelect={event => { event.preventDefault(); toggle(option); }} className=\"monkeys-ui-select-item\">\n <span>{option.label}</span><MenuPrimitive.ItemIndicator><Check size=\"var(--monkeys-ui-icon-size-s12,var(--monkeys-ui-default-icon-size-s12))\" aria-hidden=\"true\" /></MenuPrimitive.ItemIndicator>\n </MenuPrimitive.CheckboxItem>)}\n </MenuPrimitive.Content></Portal>\n {required ? <span id={requiredId} className=\"monkeys-ui-visually-hidden\">{locale.locale.startsWith('zh') ? '必填,请至少选择一项' : 'Required. Select at least one option.'}</span> : null}\n <input ref={input} type=\"text\" className=\"monkeys-ui-visually-hidden\" aria-hidden=\"true\" tabIndex={-1} form={props.form} autoComplete={props.autoComplete} value={selected.length ? 'selected' : ''} onChange={() => {}} disabled={props.disabled} required={required} onInvalid={event => { event.preventDefault(); setValidationFailed(true); trigger.current?.focus(); }} />\n {props.name ? selected.map(item => <input key={item} type=\"hidden\" name={props.name} form={props.form} value={item} disabled={props.disabled} />) : null}\n </MenuPrimitive.Root>;\n});\nexport interface MonthYearPickerProps extends Omit<HTMLAttributes<HTMLDivElement>, 'onChange' | 'children' | 'defaultValue'> {\n month?: number;\n defaultMonth?: number;\n year?: number;\n defaultYear?: number;\n /** Inclusive year range. Defaults to 2020–2035. */\n minYear?: number;\n maxYear?: number;\n onMonthChange?: (month: number) => void;\n onYearChange?: (year: number) => void;\n monthLabel?: string;\n yearLabel?: string;\n disabled?: boolean;\n}\n/** Two existing Select controls; numeric values contain no day or time-zone conversion. */\nexport function MonthYearPicker({ month, defaultMonth = 1, year, defaultYear, minYear = 2020, maxYear = 2035, onMonthChange, onYearChange, monthLabel = '月份', yearLabel = '年份', disabled, className, dir, 'aria-label': label = '年月', ...props }: MonthYearPickerProps) {\n const direction = useUIDirection(dir === 'rtl' || dir === 'ltr' ? dir : undefined);\n if (!Number.isInteger(minYear) || !Number.isInteger(maxYear) || minYear < 1 || maxYear > 9999 || minYear > maxYear) throw new RangeError('MonthYearPicker requires an inclusive year range within 1–9999.');\n const initialYear = defaultYear ?? minYear;\n const selectedMonth = month ?? defaultMonth;\n const selectedYear = year ?? initialYear;\n if (!Number.isInteger(selectedMonth) || selectedMonth < 1 || selectedMonth > 12) throw new RangeError('MonthYearPicker month must be between 1 and 12.');\n if (!Number.isInteger(selectedYear) || selectedYear < minYear || selectedYear > maxYear) throw new RangeError('MonthYearPicker year must be within the configured range.');\n const months = Array.from({ length: 12 }, (_, index) => ({ value: String(index + 1), label: `${index + 1}月` }));\n const years = Array.from({ length: maxYear - minYear + 1 }, (_, index) => ({ value: String(minYear + index), label: String(minYear + index) }));\n return <div {...props} role=\"group\" aria-label={label} dir={direction} className={cx('monkeys-ui-month-year-picker', className)}><Select aria-label={monthLabel} dir={direction} options={months} value={month === undefined ? undefined : String(month)} defaultValue={month === undefined ? String(defaultMonth) : undefined} onValueChange={value => onMonthChange?.(Number(value))} disabled={disabled} /><Select aria-label={yearLabel} dir={direction} options={years} value={year === undefined ? undefined : String(year)} defaultValue={year === undefined ? String(initialYear) : undefined} onValueChange={value => onYearChange?.(Number(value))} disabled={disabled} /></div>;\n}\nexport interface ChoiceItem { value: string; label: ReactNode; ariaLabel?: string; disabled?: boolean }\nexport interface SegmentedControlProps extends Omit<HTMLAttributes<HTMLDivElement>, 'defaultValue' | 'onChange' | 'dir'> { dir?: 'ltr' | 'rtl'; items: ChoiceItem[]; value?: string; defaultValue?: string; onValueChange?: (value: string) => void; 'aria-label': string }\nexport function SegmentedControl({ items, value, defaultValue, onValueChange, className, ...props }: SegmentedControlProps) {\n const [selected, setSelected] = useControllable(value, defaultValue, items[0]?.value ?? '', onValueChange);\n const direction = useUIDirection(props.dir);\n return <ToggleGroup.Root {...props} dir={direction} type=\"single\" value={selected} onValueChange={next => { if (next) setSelected(next); }} className={cx('monkeys-ui-segmented', className)}>{items.map(item => <ToggleGroup.Item type=\"button\" key={item.value} value={item.value} aria-label={item.ariaLabel} disabled={item.disabled} className=\"monkeys-ui-segment\">{item.label}</ToggleGroup.Item>)}</ToggleGroup.Root>;\n}\nexport interface SectionTitleProps extends HTMLAttributes<HTMLElement> {\n as?: 'h1' | 'h2' | 'h3' | 'h4' | 'h5' | 'h6' | 'span';\n indicator?: boolean;\n}\n/** Shared title/indicator presentation; the parent owns navigation and selection. */\nexport function SectionTitle({ as: Element = 'h2', indicator = true, className, ...props }: SectionTitleProps) {\n return <Element {...props} className={cx('monkeys-ui-section-title', className)} data-indicator={indicator} />;\n}\nexport interface TabItem extends ChoiceItem { content: ReactNode }\nexport interface TabsProps extends Omit<TabsPrimitive.TabsProps, 'children'> { items: TabItem[]; 'aria-label': string }\nexport function Tabs({ items, value, defaultValue, onValueChange, className, 'aria-label': label, ...props }: TabsProps) {\n const [selected, setSelected] = useControllable(value, defaultValue, items[0]?.value ?? '', onValueChange);\n const direction = useUIDirection(props.dir);\n return <TabsPrimitive.Root {...props} dir={direction} value={selected} onValueChange={setSelected} className={cx('monkeys-ui-tabs', className)}><TabsPrimitive.List aria-label={label} className=\"monkeys-ui-tab-list\">{items.map(item => <TabsPrimitive.Trigger type=\"button\" key={item.value} value={item.value} aria-label={item.ariaLabel} disabled={item.disabled} className=\"monkeys-ui-tab\"><SectionTitle as=\"span\" indicator={selected === item.value}>{item.label}</SectionTitle></TabsPrimitive.Trigger>)}</TabsPrimitive.List>{items.map(item => <TabsPrimitive.Content key={item.value} value={item.value} className=\"monkeys-ui-tab-panel\">{item.content}</TabsPrimitive.Content>)}</TabsPrimitive.Root>;\n}\n","import { forwardRef, useId, useRef, type HTMLAttributes, type ReactElement, type ReactNode, type RefObject } from 'react';\nimport * as DialogPrimitive from '@radix-ui/react-dialog';\nimport * as MenuPrimitive from '@radix-ui/react-dropdown-menu';\nimport * as TooltipPrimitive from '@radix-ui/react-tooltip';\nimport * as AvatarPrimitive from '@radix-ui/react-avatar';\nimport { Button } from './controls';\nimport { Portal, useUIDirection, useUILocale, useTooltipScope, useUIResolvedTokens } from './theme/theme';\nimport { cx, durationMilliseconds, useControllable } from './internal';\nimport { X } from 'lucide-react';\nimport { ScrollSurface } from './scroll-surface';\n\nexport interface TooltipProps { content: ReactNode; children: ReactElement; delayDuration?: number; side?: 'top' | 'bottom' | 'left' | 'right' }\nexport function Tooltip({ content, children, delayDuration, side = 'top' }: TooltipProps) {\n const scoped = useTooltipScope();\n const theme = useUIResolvedTokens();\n const milliseconds = (path: string) => durationMilliseconds(theme.values[path]);\n const tooltip = <TooltipPrimitive.Root delayDuration={delayDuration}><TooltipPrimitive.Trigger asChild>{children}</TooltipPrimitive.Trigger><Portal><TooltipPrimitive.Content side={side} sideOffset={Number((theme.values[\"component.ui.tooltip.sideOffset\"] as { value: number }).value)} className=\"monkeys-ui-tooltip\">{content}</TooltipPrimitive.Content></Portal></TooltipPrimitive.Root>;\n return scoped ? tooltip : <TooltipPrimitive.Provider delayDuration={delayDuration ?? milliseconds(\"component.ui.tooltip.delay\")} skipDelayDuration={milliseconds(\"component.ui.tooltip.skipDelay\")}>{tooltip}</TooltipPrimitive.Provider>;\n}\nexport interface MenuItem { id: string; label: ReactNode; disabled?: boolean; danger?: boolean; onSelect?: () => void }\nexport interface MenuProps { trigger: ReactElement; items: MenuItem[]; label?: string; open?: boolean; defaultOpen?: boolean; onOpenChange?: (open: boolean) => void; onCloseAutoFocus?: (event: Event) => void }\nexport function Menu({ trigger, items, label, open, defaultOpen, onOpenChange, onCloseAutoFocus }: MenuProps) {\n const [shown, setShown] = useControllable(open, defaultOpen, false, onOpenChange);\n const direction = useUIDirection();\n const theme = useUIResolvedTokens();\n return <MenuPrimitive.Root dir={direction} open={shown} onOpenChange={setShown}><MenuPrimitive.Trigger asChild>{trigger}</MenuPrimitive.Trigger><Portal><MenuPrimitive.Content aria-label={label} sideOffset={(theme.values[\"component.ui.menu.sideOffset\"] as { value: number }).value} align=\"end\" onCloseAutoFocus={onCloseAutoFocus} className=\"monkeys-ui-menu\">{items.map(item => <MenuPrimitive.Item key={item.id} disabled={item.disabled} className=\"monkeys-ui-menu-item\" data-danger={item.danger || undefined} onSelect={item.onSelect}>{item.label}</MenuPrimitive.Item>)}</MenuPrimitive.Content></Portal></MenuPrimitive.Root>;\n}\nexport interface DialogProps { frame?: 'default' | 'bento'; size?: 'md' | 'xl'; scroll?: 'dialog' | 'body'; backdrop?: 'dim' | 'blur'; surface?: 'default' | 'gradient'; open?: boolean; defaultOpen?: boolean; onOpenChange?: (open: boolean) => void; trigger?: ReactElement; title: ReactNode; description?: ReactNode; children?: ReactNode; actions?: ReactNode; initialFocusRef?: RefObject<HTMLElement>; restoreFocusRef?: RefObject<HTMLElement>; onCloseAutoFocus?: (event: Event) => void; className?: string; closeLabel?: string }\nexport function Dialog({ frame = 'default', size = 'md', scroll = 'dialog', backdrop = 'dim', surface = 'default', open, defaultOpen, onOpenChange, trigger, title, description, children, actions, initialFocusRef, restoreFocusRef, onCloseAutoFocus, className, closeLabel }: DialogProps) {\n const [shown, setShown] = useControllable(open, defaultOpen, false, onOpenChange);\n const close = useRef<HTMLButtonElement>(null);\n const locale = useUILocale();\n return <DialogPrimitive.Root open={shown} onOpenChange={setShown}>{trigger ? <DialogPrimitive.Trigger asChild>{trigger}</DialogPrimitive.Trigger> : null}<Portal><DialogPrimitive.Overlay data-backdrop={backdrop} className=\"monkeys-ui-dialog-overlay\" /><DialogPrimitive.Content data-frame={frame} data-size={size} data-scroll={scroll} data-surface={surface} className={cx('monkeys-ui-dialog', className)} {...(description ? {} : { 'aria-describedby': undefined })} onOpenAutoFocus={event => {\n event.preventDefault();\n // Radix registers its dismissable layer after mounting. Focus marks the\n // dialog ready for keyboard input, so expose it after that registration.\n const button = close.current;\n button?.ownerDocument.defaultView?.requestAnimationFrame(() => {\n if (button.isConnected && button.closest('[role=\"dialog\"]')?.getAttribute('data-state') === 'open') (initialFocusRef?.current ?? button).focus();\n });\n }} onCloseAutoFocus={event => { onCloseAutoFocus?.(event); if (!event.defaultPrevented && restoreFocusRef?.current) { event.preventDefault(); restoreFocusRef.current.focus(); } }}><DialogPrimitive.Title className=\"monkeys-ui-dialog-title\">{title}</DialogPrimitive.Title>{description ? <DialogPrimitive.Description className=\"monkeys-ui-description\">{description}</DialogPrimitive.Description> : null}<DialogPrimitive.Close asChild><Button shape=\"icon\" ref={close} aria-label={closeLabel ?? locale.messages.dialog.close} className=\"monkeys-ui-dialog-close\"><X size=\"var(--monkeys-ui-icon-size-s16,var(--monkeys-ui-default-icon-size-s16))\" aria-hidden=\"true\" /></Button></DialogPrimitive.Close>{scroll === 'body' ? <ScrollSurface className=\"monkeys-ui-dialog-body\" aria-label={typeof title === 'string' ? title + '内容' : '对话框内容'}>{children}</ScrollSurface> : children}{actions ? <div className=\"monkeys-ui-dialog-actions\">{actions}</div> : null}</DialogPrimitive.Content></Portal></DialogPrimitive.Root>;\n}\nexport interface BadgeProps extends HTMLAttributes<HTMLSpanElement> { tone?: 'neutral' | 'primary' | 'danger' | 'success' }\nexport function Badge({ tone = 'neutral', className, ...props }: BadgeProps) { return <span {...props} data-tone={tone} className={cx('monkeys-ui-badge', className)} />; }\nexport interface NoticeProps extends HTMLAttributes<HTMLDivElement> { tone?: 'neutral' | 'danger' | 'success'; action?: ReactNode }\nexport function Notice({ tone = 'neutral', action, children, className, ...props }: NoticeProps) { return <div role={tone === 'danger' ? 'alert' : 'status'} {...props} data-tone={tone} className={cx('monkeys-ui-notice', className)}><div>{children}</div>{action}</div>; }\nexport interface EmptyStateProps extends HTMLAttributes<HTMLDivElement> { title: string; description?: ReactNode; action?: ReactNode }\nexport function EmptyState({ title, description, action, className, ...props }: EmptyStateProps) { return <div {...props} className={cx('monkeys-ui-empty', className)}><strong>{title}</strong>{description ? <p>{description}</p> : null}{action}</div>; }\nexport interface LoadingStateProps extends HTMLAttributes<HTMLDivElement> { label?: string }\nexport function LoadingState({ label, className, ...props }: LoadingStateProps) { const locale = useUILocale(); return <div role=\"status\" aria-busy=\"true\" {...props} className={cx('monkeys-ui-loading', className)}><span className=\"monkeys-ui-inline-spinner\" aria-hidden=\"true\" />{label ?? locale.messages.loading.spinner}</div>; }\nexport interface AvatarProps extends AvatarPrimitive.AvatarProps { src?: string; alt: string; fallback?: ReactNode }\nexport const Avatar = forwardRef<HTMLSpanElement, AvatarProps>(function Avatar({ src, alt, fallback, className, ...props }, ref) { return <AvatarPrimitive.Root {...props} ref={ref} className={cx('monkeys-ui-avatar', className)}><AvatarPrimitive.Image src={src} alt={alt} /><AvatarPrimitive.Fallback>{fallback ?? alt.slice(0, 1)}</AvatarPrimitive.Fallback></AvatarPrimitive.Root>; });\n","import { createContext, useContext, useRef, type HTMLAttributes, type ReactNode } from 'react';\nimport { DndContext, MouseSensor, TouchSensor, KeyboardSensor, closestCenter, useSensor, useSensors, type DragEndEvent } from '@dnd-kit/core';\nimport { SortableContext, useSortable, horizontalListSortingStrategy, verticalListSortingStrategy, rectSortingStrategy, sortableKeyboardCoordinates } from '@dnd-kit/sortable';\nimport { CSS } from '@dnd-kit/utilities';\n\nexport interface CollectionReorder { activeId: string; overId: string; beforeIds: string[] }\nexport interface CollectionSortingProps {\n /** Authoritative records in this window. Absence keeps the ordinary grid behavior. */\n reorderItems?: { id: string; [key: string]: unknown }[];\n reorderAxis?: 'horizontal' | 'vertical' | 'grid';\n /** Optional record field whose equal values define compatible drop targets. */\n reorderGroupField?: string;\n reorderDisabled?: boolean;\n onReorder?: (change: CollectionReorder) => void;\n}\nconst Sorting = createContext(false);\nexport function canStartCollectionDrag(event: Event, activeNode?: HTMLElement | null) {\n const target = event.target as Element | null;\n if (!target?.closest) return false;\n const item = target.closest('[data-sortable-item]');\n if (activeNode && item !== activeNode) return false;\n if (!item || target.closest('[data-sortable-region]') !== item.closest('[data-sortable-region]')) return false;\n // The stretched card entry remains an activator; its menus and other controls do not.\n return !target.closest('button:not(.monkeys-ui-card-entry):not([data-reorder-activator]),a:not(.monkeys-ui-card-entry):not([data-reorder-activator]),input,textarea,select,video,audio,[contenteditable=\"true\"],[role=\"menuitem\"],[data-no-reorder]');\n}\nclass CardMouseSensor extends MouseSensor {\n static activators = [{ eventName: 'onMouseDown' as const, handler: ({ nativeEvent }: { nativeEvent: MouseEvent }, _options: unknown, context?: { active: { node: { current: HTMLElement | null } } }) => nativeEvent.button === 0 && canStartCollectionDrag(nativeEvent, context?.active.node.current) }];\n}\nclass CardTouchSensor extends TouchSensor {\n static activators = [{ eventName: 'onTouchStart' as const, handler: ({ nativeEvent }: { nativeEvent: TouchEvent }, _options: unknown, context?: { active: { node: { current: HTMLElement | null } } }) => nativeEvent.touches.length === 1 && canStartCollectionDrag(nativeEvent, context?.active.node.current) }];\n}\nexport function SortableCollection({ reorderItems, reorderAxis = 'horizontal', reorderGroupField, reorderDisabled, onReorder, children }: CollectionSortingProps & { children: ReactNode }) {\n const suppressClick = useRef(false);\n const sensors = useSensors(useSensor(CardMouseSensor, { activationConstraint: { distance: 8 } }), useSensor(CardTouchSensor, { activationConstraint: { delay: 250, tolerance: 5 } }), useSensor(KeyboardSensor, { coordinateGetter: sortableKeyboardCoordinates }));\n const enabled = !!onReorder && !reorderDisabled && !!reorderItems && reorderItems.length > 1;\n const ids = (reorderItems ?? []).map(item => item.id);\n const groups = new Map((reorderItems ?? []).map(item => [item.id, reorderGroupField ? item[reorderGroupField] : undefined]));\n const end = ({ active, over }: DragEndEvent) => {\n if (over && active.id !== over.id && ids.includes(String(active.id)) && ids.includes(String(over.id))) onReorder?.({ activeId: String(active.id), overId: String(over.id), beforeIds: ids });\n // dnd-kit suppresses the immediate document click; retain a capture guard for card navigation.\n setTimeout(() => { suppressClick.current = false; }, 0);\n };\n if (!enabled) return <Sorting.Provider value={false}>{children}</Sorting.Provider>;\n return <DndContext sensors={sensors} collisionDetection={args => closestCenter({ ...args, droppableContainers: args.droppableContainers.filter(target => !reorderGroupField || groups.get(String(target.id)) === groups.get(String(args.active.id))) })} onDragStart={() => { suppressClick.current = true; }} onDragCancel={() => { setTimeout(() => { suppressClick.current = false; }, 0); }} onDragEnd={end} accessibility={{ screenReaderInstructions: { draggable: '按空格开始排序,使用方向键在同组内移动,再按空格保存。按 Escape 取消。' } }}>\n <Sorting.Provider value={true}><SortableContext items={ids} strategy={reorderAxis === 'grid' ? rectSortingStrategy : reorderAxis === 'horizontal' ? horizontalListSortingStrategy : verticalListSortingStrategy}>\n <div data-sortable-region={reorderAxis} style={{ display: 'contents' }} onClickCapture={event => { if (suppressClick.current) { event.preventDefault(); event.stopPropagation(); } }}>{children}</div>\n </SortableContext></Sorting.Provider>\n </DndContext>;\n}\nexport function SortableCollectionItem({ itemId, children, ...props }: HTMLAttributes<HTMLDivElement> & { itemId: string; children?: ReactNode }) {\n const enabled = useContext(Sorting);\n return enabled ? <ActiveItem itemId={itemId} {...props}>{children}</ActiveItem> : <div {...props}>{children}</div>;\n}\nfunction ActiveItem({ itemId, style, children, ...props }: HTMLAttributes<HTMLDivElement> & { itemId: string }) {\n const { setNodeRef, attributes, listeners, transform, transition, isDragging } = useSortable({ id: itemId });\n return <div {...props} ref={setNodeRef} {...attributes} {...listeners} data-sortable-item={itemId} style={{ ...style, transform: CSS.Transform.toString(transform), transition, position: 'relative', zIndex: isDragging ? 20 : undefined, opacity: isDragging ? .75 : undefined, cursor: isDragging ? 'grabbing' : 'grab' }}>{children}</div>;\n}\n","import { useEffect, useRef, useState } from 'react';\nimport type * as Shaders from 'shaders/react';\nimport { useShaderEnabled } from './motion';\nimport { useUIResolvedTokens } from './theme/theme';\nimport { resolveEffectTokens } from './theme/effect-tokens';\n\nexport function SurfaceEffect({ variant }: { variant: 'banner' | 'chroma' }) {\n const enabled = useShaderEnabled();\n const tokens = resolveEffectTokens(useUIResolvedTokens());\n const [shaders, setShaders] = useState<typeof Shaders | null>(null);\n const [rendererState, setRendererState] = useState<'loading' | 'ready' | 'unavailable'>('loading');\n const surface = useRef<HTMLDivElement>(null);\n\n useEffect(() => {\n if (!enabled || shaders) return;\n let active = true;\n import('shaders/react').then(module => {\n if (active) setShaders(module);\n }).catch(() => { if (active) setRendererState('unavailable'); });\n return () => { active = false; };\n }, [enabled, shaders]);\n\n useEffect(() => {\n const element = surface.current;\n const parent = element?.parentElement;\n if (!enabled || variant !== 'chroma' || rendererState === 'ready' || !element || !parent) return;\n // The decorative layer does not intercept input; listen on its content surface.\n const move = (event: PointerEvent) => {\n if (event.pointerType === 'touch') return;\n const bounds = element.getBoundingClientRect();\n element.style.setProperty('--monkeys-ui-surface-x', `${event.clientX - bounds.left}px`);\n element.style.setProperty('--monkeys-ui-surface-y', `${event.clientY - bounds.top}px`);\n element.dataset.pointerActive = '';\n };\n const leave = () => { delete element.dataset.pointerActive; };\n parent.addEventListener('pointerenter', move);\n parent.addEventListener('pointermove', move);\n parent.addEventListener('pointerleave', leave);\n return () => {\n parent.removeEventListener('pointerenter', move);\n parent.removeEventListener('pointermove', move);\n parent.removeEventListener('pointerleave', leave);\n leave();\n element.style.removeProperty('--monkeys-ui-surface-x');\n element.style.removeProperty('--monkeys-ui-surface-y');\n };\n }, [enabled, variant, rendererState]);\n\n return <div ref={surface} className={variant === 'banner' ? 'monkeys-ui-brand-banner-effect' : 'monkeys-ui-card-surface-effect'} data-monkeys-ui-brand-effect={variant === 'banner' ? '' : undefined} data-monkeys-ui-card-effect={variant === 'chroma' ? '' : undefined} data-renderer-state={enabled ? rendererState : 'disabled'} aria-hidden=\"true\">\n {enabled && variant === 'chroma' && rendererState !== 'ready' ? <div className=\"monkeys-ui-shader-fallback\" data-effect=\"surface-chroma\" /> : null}\n {enabled && shaders ? <shaders.Shader disableTelemetry onReady={() => setRendererState('ready')} onUnavailable={() => setRendererState('unavailable')} style={{ width: '100%', height: '100%' }}>\n <shaders.ChromaFlow baseColor={tokens.start} upColor={tokens.end} {...tokens.chroma} />\n {variant === 'banner' ? <shaders.Aurora colorA={tokens.start} colorB={tokens.end} colorSpace=\"hsl\" {...tokens.aurora} transform={{ rotation: tokens.rotation }} /> : null}\n </shaders.Shader> : null}\n </div>;\n}\n","import { forwardRef, useEffect, useRef, useState, type CSSProperties, type FormHTMLAttributes, type HTMLAttributes, type MouseEventHandler, type ReactNode } from 'react';\nimport { MoreHorizontal, Bookmark, LocateFixed } from 'lucide-react';\nimport { Button, SectionTitle, ToggleButton } from './controls';\nimport { Panel, type PanelProps } from './collection';\nimport { Badge, Menu, Notice, type MenuItem } from './overlays';\nimport { cx } from './internal';\nimport { SurfaceEffect } from './surface-effect';\nimport { SortableCollectionItem } from './sortable-collection';\n\nexport interface StackProps extends HTMLAttributes<HTMLDivElement> {\n direction?: 'vertical' | 'horizontal';\n gap?: number;\n wrap?: boolean;\n}\n/** Layout only: children keep their own semantics and keyboard order. */\nexport const Stack = forwardRef<HTMLDivElement, StackProps>(function Stack({ direction = 'vertical', gap, wrap, className, style, ...props }, ref) {\n return <div {...props} ref={ref} className={cx('monkeys-ui-stack', className)} data-direction={direction} style={{ flexDirection: direction === 'vertical' ? 'column' : 'row', gap: gap ?? 'var(--monkeys-ui-layout-stack-gap,var(--monkeys-ui-default-layout-stack-gap))', flexWrap: wrap ? 'wrap' : undefined, ...style }} />;\n});\n\nexport interface BreadcrumbItem {\n id: string;\n label: ReactNode;\n href?: string;\n onClick?: MouseEventHandler<HTMLButtonElement>;\n}\nexport interface BreadcrumbsProps extends HTMLAttributes<HTMLElement> { items: BreadcrumbItem[] }\nexport function Breadcrumbs({ items, className, 'aria-label': label = '面包屑', ...props }: BreadcrumbsProps) {\n return <nav {...props} aria-label={label} className={cx('monkeys-ui-breadcrumb-trail', className)}><ol>{items.map((item, index) => {\n const current = index === items.length - 1;\n return <li key={item.id}>{index > 0 ? <span aria-hidden=\"true\" className=\"monkeys-ui-breadcrumb-separator\">&gt;</span> : null}{current ? <span aria-current=\"page\">{item.label}</span> : item.href ? <a href={item.href}>{item.label}</a> : item.onClick ? <button type=\"button\" onClick={item.onClick}>{item.label}</button> : <span>{item.label}</span>}</li>;\n })}</ol></nav>;\n}\n\nexport interface BrandMarkProps extends HTMLAttributes<HTMLSpanElement> {\n label: string;\n image?: string;\n variant?: 'inline' | 'overlay';\n}\nexport function BrandMark({ label, image, variant = 'inline', className, ...props }: BrandMarkProps) {\n const [failedSource, setFailedSource] = useState<string>();\n return <span {...props} role=\"img\" aria-label={label} className={cx('monkeys-ui-brand-mark', className)} data-variant={variant}>{image && image !== failedSource ? <img src={image} alt=\"\" onError={() => setFailedSource(image)} /> : label}</span>;\n}\n\nexport interface BrandBannerProps extends PanelProps { description?: ReactNode; search?: ReactNode; caption?: ReactNode }\nexport function BrandBanner({ description, search, caption, children, className, ...props }: BrandBannerProps) {\n return <Panel {...props} className={cx('monkeys-ui-brand-banner', className)}><SurfaceEffect variant=\"banner\" />{description ? <p className=\"monkeys-ui-description\">{description}</p> : null}{search}{caption ? <div className=\"monkeys-ui-brand-caption\">{caption}</div> : null}{children}</Panel>;\n}\n\nexport interface CardGridItemProps extends HTMLAttributes<HTMLDivElement> { sortableId?: string }\nexport const CardGridItem = forwardRef<HTMLDivElement, CardGridItemProps>(function CardGridItem({ className, sortableId, ...props }, ref) {\n if (sortableId) return <SortableCollectionItem {...props} itemId={sortableId} role=\"listitem\" className={cx('monkeys-ui-card-grid-item', className)} />;\n return <div {...props} ref={ref} role=\"listitem\" className={cx('monkeys-ui-card-grid-item', className)} />;\n});\n\nexport interface CardActionsProps {\n label: string;\n monitored?: boolean;\n monitorPending?: boolean;\n onMonitoredChange?: (value: boolean) => void;\n favorite?: boolean;\n favoritePending?: boolean;\n onFavoriteChange?: (value: boolean) => void;\n menuItems?: MenuItem[];\n menuLabel?: string;\n onMenuCloseAutoFocus?: (event: Event) => void;\n}\n/** Host owns requests, optimistic rollback and the focus target after deletion. */\nexport function CardActions({ label, monitored, monitorPending, onMonitoredChange, favorite, favoritePending, onFavoriteChange, menuItems = [], menuLabel, onMenuCloseAutoFocus }: CardActionsProps) {\n return <>{onMonitoredChange ? <ToggleButton shape=\"icon\" aria-label={'监测 ' + label} data-monitored={monitored || undefined} size=\"sm\" variant=\"ghost\" checked={monitored ?? false} loading={monitorPending} onCheckedChange={onMonitoredChange}><LocateFixed size=\"var(--monkeys-ui-icon-size-s14,var(--monkeys-ui-default-icon-size-s14))\" fill={monitored ? 'currentColor' : 'none'} aria-hidden=\"true\" /></ToggleButton> : null}{onFavoriteChange ? <ToggleButton shape=\"icon\" aria-label={'收藏 ' + label} size=\"sm\" variant=\"ghost\" checked={favorite ?? false} loading={favoritePending} onCheckedChange={onFavoriteChange}><Bookmark size=\"var(--monkeys-ui-icon-size-s14,var(--monkeys-ui-default-icon-size-s14))\" fill={favorite ? 'currentColor' : 'none'} aria-hidden=\"true\" /></ToggleButton> : null}{menuItems.length ? <Menu label={menuLabel ?? label + ' 操作'} trigger={<Button shape=\"icon\" aria-label={'更多 ' + label}><MoreHorizontal size=\"var(--monkeys-ui-icon-size-s16,var(--monkeys-ui-default-icon-size-s16))\" aria-hidden=\"true\" /></Button>} onCloseAutoFocus={onMenuCloseAutoFocus} items={menuItems} /> : null}</>;\n}\n\nexport interface FormPanelProps extends Omit<FormHTMLAttributes<HTMLFormElement>, 'title'> {\n title: ReactNode;\n description?: ReactNode;\n actions?: ReactNode;\n}\n/** Ref and native form props are forwarded to the form, not the outer Panel. */\nexport const FormPanel = forwardRef<HTMLFormElement, FormPanelProps>(function FormPanel({ title, description, actions, children, className, ...props }, ref) {\n return <Panel className=\"monkeys-ui-form-panel\"><form {...props} ref={ref} className={className}><div className=\"monkeys-ui-form-header\"><div><SectionTitle as=\"h1\" indicator={false}>{title}</SectionTitle>{description ? <p>{description}</p> : null}</div>{actions ? <div className=\"monkeys-ui-form-actions\">{actions}</div> : null}</div><div className=\"monkeys-ui-form-body\">{children}</div></form></Panel>;\n});\n\nexport interface FormGridProps extends HTMLAttributes<HTMLDivElement> { variant?: 'standard' | 'compact' }\nexport function FormGrid({ variant = 'standard', className, children, ...props }: FormGridProps) {\n return <div {...props} className={cx('monkeys-ui-form-grid', className)} data-variant={variant}><div className=\"monkeys-ui-form-grid-content\">{children}</div></div>;\n}\n\nexport interface PreviewPanelProps extends PanelProps {\n state?: 'empty' | 'pending' | 'ready' | 'error';\n pendingLabel?: string;\n emptyMessage?: ReactNode;\n errorMessage?: ReactNode;\n}\n/** Scale the existing card as a whole; never maintain preview-only typography. */\nfunction PreviewMagnifier({ children }: { children: ReactNode }) {\n const frame = useRef<HTMLDivElement>(null);\n const stage = useRef<HTMLDivElement>(null);\n const [size, setSize] = useState({ scale: 1, height: 0 });\n useEffect(() => {\n const host = frame.current!;\n const content = stage.current!;\n const measure = () => {\n const width = content.offsetWidth;\n if (!width || !host.clientWidth) return;\n const scale = host.clientWidth / width;\n const height = content.offsetHeight * scale;\n setSize(previous => previous.scale === scale && previous.height === height ? previous : { scale, height });\n };\n const observer = new ResizeObserver(measure);\n observer.observe(host);\n observer.observe(content);\n measure();\n return () => observer.disconnect();\n }, []);\n return <div ref={frame} className=\"monkeys-ui-preview-magnifier\" style={{ height: size.height, visibility: size.height ? undefined : 'hidden' }}><div ref={stage} className=\"monkeys-ui-preview-magnifier-stage\" style={{ transform: `scale(${size.scale})` }}>{children}</div></div>;\n}\n\n/** Generic preview surface. Supply children and all labels. */\nexport function PreviewPanel({ children, state = 'ready', pendingLabel, emptyMessage, errorMessage, className, ...props }: PreviewPanelProps) {\n return <Panel {...props} className={cx('monkeys-ui-preview-panel', className)}><div className=\"monkeys-ui-preview-panel-card\"><PreviewMagnifier>{children}</PreviewMagnifier>{state === 'pending' && pendingLabel ? <Badge>{pendingLabel}</Badge> : null}{state === 'empty' && emptyMessage ? <span className=\"monkeys-ui-description\">{emptyMessage}</span> : null}{state === 'error' && errorMessage ? <Notice tone=\"danger\">{errorMessage}</Notice> : null}</div></Panel>;\n}\n\nexport interface NoticeRegionProps extends HTMLAttributes<HTMLElement> { position?: 'bottom-end' | 'top-end' }\nexport function NoticeRegion({ position = 'bottom-end', className, 'aria-label': label = '通知', ...props }: NoticeRegionProps) {\n return <aside {...props} aria-label={label} className={cx('monkeys-ui-notice-region', className)} data-position={position} />;\n}\n"]}
1
+ {"version":3,"sources":["../../../src/ui/collection.tsx","../../../src/ui/panel-surface.ts","../../../src/ui/internal.ts","../../../src/theme-system/theme-tokens.ts","../../../src/locale/en-US.ts","../../../src/locale/zh-CN.ts","../../../src/locale/resolve-locale.ts","../../../src/provider/context.ts","../../../src/ui/theme/base.json","../../../src/ui/theme/tenants/bsd.json","../../../src/ui/theme/config.ts","../../../src/ui/theme/presets.ts","../../../src/ui/theme/theme.tsx","../../../src/ui/scroll-surface.tsx","../../../src/ui/motion.ts","../../../src/ui/theme/effect-tokens.ts","../../../src/ui/effects.tsx","../../../src/ui/sample-color.ts","../../../src/ui/button-light-edge.tsx","../../../src/ui/controls.tsx","../../../src/ui/overlays.tsx","../../../src/ui/sortable-collection.tsx","../../../src/ui/surface-effect.tsx","../../../src/ui/patterns.tsx"],"names":["PanelSurfaceContext","createContext","cx","__name","values","durationMilliseconds","token","value","unit","useControllable","defaultValue","fallback","onChange","controlled","initial","useRef","warned","local","setLocal","useState","current","next","useFormReset","ref","reset","latest","useEffect","element","form","active","listener","event","CSS_EXTENSION_KEY","isRecord","readCssExtension","extensions","extension","formatNumber","formatDimension","formatDuration","formatColorComponent","hexToSrgb","hex","colorSrgbComponents","component","srgbToHsl","red","green","blue","maximum","minimum","lightness","delta","saturation","hue","formatHslTriplet","formatColor","alpha","components","alphaSuffix","formatFontFamily","families","genericFamilies","family","formatShadow","shadow","formatGradient","stops","stop","gradient","formatTokenValue","styleToken","toCssVariableName","path","prefix","normalized","assertCssVariablePrefix","selectModePath","paths","basePath","colorMode","contextualPath","HSL_SEMANTIC_VARIABLES","THEME_TOKEN_CSS_ALIASES","variableName","getThemeTokenCssValue","compiled","compileThemeTokens","input","options","resolved","resolveThemeTokens","contract","density","variablePrefix","cssValues","cssVariables","canonicalVariableSources","cssValue","existingPath","alias","axis","cssText","left","right","name","enUS","page","pageCount","start","end","total","count","columnId","duration","completed","used","percent","code","zhCN","mergeMonkeysLocaleMessages","base","override","defaultMonkeysLocale","EMPTY_ENVIRONMENT","EMPTY_PORTAL","MONKEYS_PROVIDER_CONTEXTS_KEY","createMonkeysProviderContexts","getMonkeysProviderContexts","host","existing","contexts","providerContexts","MonkeysLocaleContext","MonkeysThemeContext","MonkeysDirectionContext","MonkeysEnvironmentContext","useMonkeysLocale","useContext","useMonkeysResolvedTheme","useMonkeysDirection","useMonkeysEnvironment","useMonkeysPortalOptions","base_default","bsd_default","isGroup","mergeThemeTokens","merge","a","b","result","key","uiVariable","baseThemeTokens","uiThemePresets","getTenantTheme","tenant","preset","defaultThemeTokens","defaultResolvedTokens","compileUITheme","tokens","variablesFromTheme","variables","UIThemeContext","PortalDepthContext","useUIDirection","explicit","theme","inherited","environment","documentDirection","setDocumentDirection","root","update","observer","useUILocale","locale","useTooltipScope","inputDocuments","observeInput","document","releaseInput","previous","pointer","keyboard","entry","useUIResolvedTokens","useMemo","Portal","children","direction","depth","setHost","baseLayer","nestingStep","content","jsx","createPortal","ScrollSurface","forwardRef","Element","className","onScroll","dir","props","delay","jsxs","useShaderEnabled","enabled","setEnabled","motion","colors","resolveEffectTokens","color","number","effect","BottomGlow","style","animated","hostStyle","sampleInk","channels","index","ButtonLightEdge","filterId","useId","hostRef","module","setModule","ready","setReady","shape","setShape","loaded","button","width","height","radiusValue","radius","inset","Button","variant","icon","tone","size","loading","lightEdge","toggle","checked","defaultChecked","onCheckedChange","required","type","onClick","onPointerDown","onKeyDown","pressed","setPressed","Switch","onValueChange","onValueCommit","disabled","readOnly","onPointerMove","onPointerCancel","onPointerUp","onKeyUp","field","useField","selected","setSelected","useImperativeHandle","option","motionEnabled","interaction","setInteraction","sample","samples","setSamples","layer","position","location","fraction","item","t","background","locked","commit","FieldContext","Input","InputTagSelectionControl","InputTagsControl","InputSearchControl","InputNumberControl","nativeProps","mode","inputValue","onInputValueChange","removeLabel","placeholder","onCompositionStart","onCompositionEnd","tags","setTags","draft","setDraft","announcement","setAnnouncement","composing","initialTags","remove","_","tag","InputTag","label","onRemove","X","items","onAdd","onInvalid","add","group","Plus","parseNumberValue","text","setText","SearchField","onSearch","clearLabel","clear","editor","Search","setValue","indicator","ChevronDown","MultipleSelect","SingleSelect","id","describedBy","invalid","_variant","fieldAttributes","ChevronUp","Check","open","defaultOpen","onOpenChange","shown","setShown","trigger","setValidationFailed","generatedId","triggerId","requiredId","validationFailed","selectedLabels","SegmentedControl","SectionTitle","Tabs","Tooltip","delayDuration","side","scoped","milliseconds","tooltip","src","alt","Sorting","canStartCollectionDrag","activeNode","target","_CardMouseSensor","MouseSensor","nativeEvent","_options","context","CardMouseSensor","_CardTouchSensor","TouchSensor","CardTouchSensor","SortableCollection","reorderItems","reorderAxis","reorderGroupField","reorderDisabled","onReorder","suppressClick","sensors","useSensors","useSensor","KeyboardSensor","sortableKeyboardCoordinates","ids","groups","over","DndContext","args","closestCenter","SortableContext","rectSortingStrategy","horizontalListSortingStrategy","verticalListSortingStrategy","SortableCollectionItem","itemId","ActiveItem","setNodeRef","attributes","listeners","transform","transition","isDragging","useSortable","CSS","Panel","title","actions","classNames","SplitLayout","primary","sidebar","ratio","primaryAspectRatio","minPrimarySize","maxPrimarySize","gap","sidebarWidth","share","useAspectRatio","dimension","CollectionToolbar","search","filters","CollectionSection","action","lead","CardGrid","view","minCardWidth","columnGap","Card","chrome","breadcrumbSurface","onSelectedChange","headingLevel","image","imageAlt","imagePosition","imageStyle","media","mediaOverlay","emptyMedia","href","onOpen","header","meta","description","stats","dragHandle","navigation","navigationLabel","footer","failedSource","setFailedSource","detail","hasDescription","hasEntry","descriptionId","Heading","tooltipTitle","headingContent","heading","mediaContent","ImageOff","statistics","StatGroup","body","sortable","dragId","sortableState","setCardRef","node","cardStyle","dragListeners","dragAttributes","GripVertical","columns","SurfaceEffect","shaders","setShaders","rendererState","setRendererState","surface","parent","move","bounds","leave","wrap","BrandBanner","caption","sortableId"],"mappings":"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","file":"index.mjs","sourcesContent":["import { forwardRef, useContext, useId, useState, type AnchorHTMLAttributes, type ButtonHTMLAttributes, type CSSProperties, type HTMLAttributes, type ReactNode } from 'react';\nimport { DndContext, KeyboardSensor, PointerSensor, closestCenter, useSensor, useSensors, type DragEndEvent } from '@dnd-kit/core';\nimport { SortableContext, rectSwappingStrategy, sortableKeyboardCoordinates, useSortable } from '@dnd-kit/sortable';\nimport { CSS } from '@dnd-kit/utilities';\nimport { PanelSurfaceContext } from './panel-surface';\nimport { cx } from './internal';\nimport { Check, GripVertical, ImageOff } from 'lucide-react';\nimport { ScrollSurface } from './scroll-surface';\nimport { BottomGlow } from './effects';\nimport { SurfaceEffect } from './surface-effect';\nimport { Tooltip } from './overlays';\nimport { SortableCollection, type CollectionSortingProps } from './sortable-collection';\n\nexport interface PanelProps extends Omit<HTMLAttributes<HTMLElement>, 'title'> { title?: ReactNode; actions?: ReactNode; density?: 'comfortable' | 'compact'; classNames?: { header?: string; body?: string }; children?: ReactNode }\nexport const Panel = forwardRef<HTMLElement, PanelProps>(function Panel({ title, actions, density = 'comfortable', classNames, className, children, ...props }, ref) {\n const id = useId();\n const surface = useContext(PanelSurfaceContext);\n if (surface === 'bento') return <section {...props} className={cx('monkeys-ui-bento-panel', className)} data-surface=\"bento\">\n <ScrollSurface ref={ref} aria-labelledby={title ? id : props['aria-labelledby']} className=\"monkeys-ui-bento-scroll\">\n {title || actions ? <div className={cx('monkeys-ui-panel-header', classNames?.header)}>{title ? <h2 id={id}>{title}</h2> : null}{actions}</div> : null}\n <div className={cx('monkeys-ui-panel-body', classNames?.body)}>{children}</div>\n </ScrollSurface>\n </section>;\n return <ScrollSurface {...props} ref={ref} data-density={density} aria-labelledby={title ? id : props['aria-labelledby']} className={cx('monkeys-ui-panel', className)}>{title || actions ? <div className={cx('monkeys-ui-panel-header', classNames?.header)}>{title ? <h2 id={id}>{title}</h2> : null}{actions}</div> : null}<div className={cx('monkeys-ui-panel-body', classNames?.body)}>{children}</div></ScrollSurface>;\n});\nexport interface PageShellProps extends HTMLAttributes<HTMLDivElement> { header?: ReactNode; classNames?: { main?: string } }\nexport function PageShell({ header, className, classNames, children, ...props }: PageShellProps) { return <div {...props} className={cx('monkeys-ui-page', className)}>{header}<main className={cx('monkeys-ui-page-main', classNames?.main)}>{children}</main></div>; }\nexport interface AppHeaderProps extends HTMLAttributes<HTMLElement> { logo: ReactNode; navigation?: ReactNode; account?: ReactNode }\nexport function AppHeader({ logo, navigation, account, className, ...props }: AppHeaderProps) { return <header {...props} className={cx('monkeys-ui-header', className)}><div className=\"monkeys-ui-header-logo\">{logo}</div><nav aria-label=\"主导航\" className=\"monkeys-ui-header-nav\">{navigation}</nav><div className=\"monkeys-ui-header-account\">{account}</div></header>; }\nexport interface SplitLayoutProps extends HTMLAttributes<HTMLDivElement> {\n primary?: ReactNode;\n /** Compatibility alias for primary. */\n sidebar?: ReactNode;\n side?: 'start' | 'end';\n direction?: 'horizontal' | 'vertical';\n /** Primary : remaining pane, after subtracting the gap. */\n ratio?: readonly [number, number];\n /** Width / height of the primary pane in vertical layouts; takes priority over ratio. */\n primaryAspectRatio?: number;\n minPrimarySize?: number | string;\n maxPrimarySize?: number | string;\n gap?: number | string;\n sidebarWidth?: string;\n}\nexport function SplitLayout({ primary, sidebar, side = 'start', direction = 'horizontal', ratio, primaryAspectRatio, minPrimarySize, maxPrimarySize, gap, sidebarWidth, children, className, style, ...props }: SplitLayoutProps) {\n const validRatio = ratio && ratio.every(value => Number.isFinite(value) && value > 0) && Number.isFinite(ratio[0] + ratio[1]);\n const share = validRatio ? ratio[0] / (ratio[0] + ratio[1]) : 0.5;\n const useAspectRatio = direction === 'vertical' && typeof primaryAspectRatio === 'number' && Number.isFinite(primaryAspectRatio) && primaryAspectRatio > 0;\n const dimension = (value: number | string | undefined) => typeof value === 'number' ? Math.max(0, value) + 'px' : value;\n return <div {...props} data-side={side} data-direction={direction} data-sizing={useAspectRatio ? 'aspect-ratio' : direction === 'horizontal' && !ratio && sidebarWidth === undefined ? 'responsive' : undefined} data-proportional={!!ratio || direction === 'vertical' ? true : undefined} className={cx('monkeys-ui-split', className)} style={{\n '--monkeys-ui-sidebar-width': sidebarWidth ?? 'var(--monkeys-ui-layout-sidebar-width,var(--monkeys-ui-default-layout-sidebar-width))',\n '--monkeys-ui-split-share': share,\n '--monkeys-ui-split-primary-aspect': useAspectRatio ? primaryAspectRatio : undefined,\n '--monkeys-ui-split-primary-min': dimension(minPrimarySize),\n '--monkeys-ui-split-primary-max': dimension(maxPrimarySize),\n '--monkeys-ui-split-gap': dimension(gap),\n ...style,\n } as CSSProperties}><div className=\"monkeys-ui-split-sidebar\">{primary !== undefined ? primary : sidebar}</div><div className=\"monkeys-ui-split-main\">{children}</div></div>;\n}\nexport interface CollectionToolbarProps extends HTMLAttributes<HTMLDivElement> { search?: ReactNode; filters?: ReactNode; actions?: ReactNode }\nexport function CollectionToolbar({ search, filters, actions, className, ...props }: CollectionToolbarProps) { return <div {...props} className={cx('monkeys-ui-toolbar', className)}><div className=\"monkeys-ui-toolbar-search\">{search}</div>{filters}<div className=\"monkeys-ui-toolbar-actions\">{actions}</div></div>; }\nexport interface CollectionSectionProps extends Omit<HTMLAttributes<HTMLElement>, 'title'> { title: ReactNode; action?: ReactNode; lead?: ReactNode }\nexport function CollectionSection({ title, action, lead, children, className, ...props }: CollectionSectionProps) { const id = useId(); return <section {...props} aria-labelledby={id} data-layout={lead ? 'featured' : undefined} className={cx('monkeys-ui-collection', className)}><div className={cx('monkeys-ui-collection-heading', !!lead && !action && 'monkeys-ui-visually-hidden')}><h2 id={id} tabIndex={-1} className={lead ? 'monkeys-ui-visually-hidden' : undefined}>{title}</h2>{action}</div>{lead ? <div className=\"monkeys-ui-collection-row\"><div className=\"monkeys-ui-collection-lead\">{lead}</div><div className=\"monkeys-ui-collection-members\">{children}</div></div> : children}</section>; }\nexport interface CardGridProps extends HTMLAttributes<HTMLDivElement>, CollectionSortingProps { view?: 'grid' | 'list'; minCardWidth?: number; columnGap?: number }\nexport function CardGrid({ view = 'grid', minCardWidth, columnGap, className, style, children, reorderItems, reorderAxis, reorderGroupField, reorderDisabled, onReorder, ...props }: CardGridProps) { return <div {...props} role=\"list\" data-view={view} className={cx('monkeys-ui-card-grid', className)} style={{ '--monkeys-ui-card-width': minCardWidth === undefined ? 'var(--monkeys-ui-layout-card-min-width,var(--monkeys-ui-default-layout-card-min-width))' : minCardWidth + 'px', ...(columnGap !== undefined ? { '--monkeys-ui-grid-column-gap': columnGap + 'px' } : {}), ...style } as CSSProperties}><SortableCollection {...{reorderItems, reorderAxis, reorderGroupField, reorderDisabled, onReorder}}>{children}</SortableCollection></div>; }\nexport interface CardProps extends Omit<HTMLAttributes<HTMLElement>, 'title' | 'content'> {\n title: ReactNode;\n variant?: 'card' | 'row' | 'detail' | 'preview' | 'content';\n /** Let a containing panel own the surface while preserving card content and interactions.\n * Add data-frame=\"bento\" to adapt detail borders and inset to the containing Bento tokens. */\n chrome?: 'card' | 'plain';\n selected?: boolean;\n onSelectedChange?: (selected: boolean) => void;\n size?: 'sm' | 'md' | 'lg';\n headingLevel?: 1 | 2 | 3 | 4 | 5 | 6;\n image?: string;\n imageAlt?: string;\n imagePosition?: string;\n imageStyle?: CSSProperties;\n media?: ReactNode;\n mediaOverlay?: ReactNode;\n emptyMedia?: ReactNode;\n href?: string;\n onOpen?: () => void;\n header?: ReactNode;\n /** Opt out of the detail breadcrumb chip without changing its content or actions. */\n breadcrumbSurface?: 'default' | 'transparent';\n meta?: ReactNode;\n /** Revealed on hover/focus for compact layouts; always visible in detail. Supplied by the host. */\n description?: ReactNode;\n content?: ReactNode;\n stats?: StatItem[];\n actions?: ReactNode;\n /** Independent handle; host owns drag/keyboard behavior and ordering. Not rendered in detail/preview. */\n dragHandle?: Omit<ButtonHTMLAttributes<HTMLButtonElement>, 'children' | 'type'> & { 'aria-label': string; id?: string };\n navigation?: ReactNode;\n navigationLabel?: string;\n footer?: ReactNode;\n classNames?: { image?: string; content?: string; actions?: string; heading?: string; media?: string };\n}\n/** Presentation only. Fields, formatting, labels and action contents belong to the host. */\nexport const Card = forwardRef<HTMLElement, CardProps>(function Card({ title, variant = 'card', chrome = 'card', breadcrumbSurface = 'default', selected, onSelectedChange, size, headingLevel, image, imageAlt = '', imagePosition, imageStyle, media, mediaOverlay, emptyMedia, href, onOpen, header, meta, description, content, children, stats = [], actions, dragHandle, navigation, navigationLabel, footer, className, classNames, style, ...props }, ref) {\n const [failedSource, setFailedSource] = useState<string>();\n const id = useId();\n const detail = variant === 'detail';\n const hasDescription = description !== undefined && description !== null && description !== false && description !== '';\n const hasEntry = variant !== 'preview' && !!(onSelectedChange || href || onOpen);\n const descriptionId = id + '-description';\n const describedBy = [props['aria-describedby'], hasDescription ? descriptionId : undefined].filter(Boolean).join(' ') || undefined;\n const Heading = `h${headingLevel ?? (detail ? 1 : 3)}` as 'h1' | 'h2' | 'h3' | 'h4' | 'h5' | 'h6';\n const tooltipTitle = detail && typeof title === 'string' && title.length > 0;\n const headingContent = <Heading id={id} className={cx('monkeys-ui-record-heading', classNames?.heading)} tabIndex={tooltipTitle ? 0 : undefined} title={!detail && typeof title === 'string' ? title : undefined}>{title}</Heading>;\n const heading = tooltipTitle ? <Tooltip content={title}>{headingContent}</Tooltip> : headingContent;\n const mediaContent = media ?? (image && failedSource !== image ? <img className={cx(detail ? 'monkeys-ui-sidebar-image' : 'monkeys-ui-record-card-image', classNames?.image)} src={image} alt={imageAlt} style={{ objectPosition: imagePosition, ...imageStyle }} onError={() => setFailedSource(image)} loading=\"lazy\" /> : emptyMedia ?? (!detail ? <div className=\"monkeys-ui-media-placeholder\" aria-label=\"暂无图片\"><ImageOff size={32} aria-hidden=\"true\" /></div> : null));\n const statistics = stats.length ? <StatGroup items={stats} columns={detail ? (stats.length > 3 ? 2 : stats.length === 3 ? 3 : undefined) : undefined} /> : null;\n const body = content ?? children;\n const sortable = Boolean(dragHandle && variant !== 'preview' && variant !== 'detail');\n const dragId = dragHandle?.id ?? (typeof (props as Record<string, unknown>)['data-item-id'] === 'string' ? (props as Record<string, unknown>)['data-item-id'] as string : id);\n const sortableState = useSortable({ id: dragId, disabled: !sortable });\n const setCardRef = (node: HTMLElement | null) => { sortableState.setNodeRef(node); if (typeof ref === 'function') ref(node); else if (ref) ref.current = node; };\n const cardStyle = { ...style, ...(sortableState.transform ? { transform: CSS.Transform.toString(sortableState.transform), transition: sortableState.transition } : {}), ...(sortableState.isDragging ? { opacity: 0.5 } : {}) } as CSSProperties;\n const dragListeners = sortableState.listeners ?? {};\n const dragAttributes = sortableState.attributes;\n if (detail) return <ScrollSurface as=\"aside\" {...props} ref={ref} aria-labelledby={props['aria-label'] ? undefined : id} data-variant={variant} data-chrome={chrome === 'plain' ? chrome : undefined} className={cx('monkeys-ui-card', 'monkeys-ui-record-detail', className)}>\n <div className={cx('monkeys-ui-sidebar-media', classNames?.media)}>{mediaContent}{mediaOverlay}</div>\n <div className=\"monkeys-ui-sidebar-header\"><div className=\"monkeys-ui-breadcrumbs\" data-surface={breadcrumbSurface === 'transparent' ? 'transparent' : undefined}>{header}</div>{actions ? <div className={cx('monkeys-ui-sidebar-header-actions', classNames?.actions)}>{actions}</div> : null}</div>\n <div className={cx('monkeys-ui-sidebar-details', classNames?.content)}>\n <BottomGlow className=\"monkeys-ui-detail-bottom-glow\" style={{ height: '100%' }} aria-hidden=\"true\" />\n {heading}{meta ? <div className=\"monkeys-ui-sidebar-meta\">{meta}</div> : null}\n {description ? <div className=\"monkeys-ui-description\">{description}</div> : null}{body}{statistics}\n {navigation ? <nav aria-label={navigationLabel ?? '记录导航'} className=\"monkeys-ui-sidebar-navigation\">{navigation}</nav> : null}\n {footer ? <div className=\"monkeys-ui-sidebar-actions\">{footer}</div> : null}\n </div>\n </ScrollSurface>;\n return <article {...props} ref={setCardRef} style={cardStyle} aria-labelledby={props['aria-label'] ? undefined : id} aria-describedby={hasEntry ? props['aria-describedby'] : describedBy} tabIndex={props.tabIndex ?? (hasDescription && !hasEntry ? 0 : undefined)} data-variant={variant} data-chrome={chrome === 'plain' ? chrome : undefined} data-selected={selected || undefined} data-size={size} data-preview={variant === 'preview' || undefined} data-dragging={sortableState.isDragging || undefined} className={cx('monkeys-ui-card', 'monkeys-ui-record-card', className)}>\n {variant === 'content' && !media && !image ? null : media !== undefined ? <div className={cx('monkeys-ui-record-media', classNames?.media)}>{mediaContent}</div> : mediaContent}\n {mediaOverlay ? <div className=\"monkeys-ui-media-overlay\">{mediaOverlay}</div> : null}{header}\n {hasEntry && (onSelectedChange ? <button type=\"button\" aria-pressed={selected ?? false} onClick={() => onSelectedChange(!selected)} aria-labelledby={id} aria-describedby={describedBy} className=\"monkeys-ui-card-entry\" /> : href ? <a href={href} aria-labelledby={id} aria-describedby={describedBy} className=\"monkeys-ui-card-entry\" /> : <button type=\"button\" onClick={onOpen} aria-labelledby={id} aria-describedby={describedBy} className=\"monkeys-ui-card-entry\" />)}\n {sortable ? <button {...dragHandle} {...dragAttributes} {...dragListeners} ref={sortableState.setActivatorNodeRef} type=\"button\" draggable={false} className={cx('monkeys-ui-card-drag-handle', dragHandle!.className)} onClick={event => { event.stopPropagation(); dragHandle!.onClick?.(event); }}><GripVertical aria-hidden=\"true\" /></button> : null}\n {selected ? <span className=\"monkeys-ui-card-selection-mark\" aria-hidden=\"true\"><Check size={14} /></span> : null}\n <div className={cx('monkeys-ui-card-info', classNames?.content)}>\n {heading}{meta}{body}{statistics}\n {hasDescription ? <div className=\"monkeys-ui-card-description\"><div className=\"monkeys-ui-card-description-clip\"><div id={descriptionId} className=\"monkeys-ui-description\">{description}</div></div></div> : null}\n </div>\n {actions ? <div className={cx('monkeys-ui-card-actions', classNames?.actions)}>{actions}</div> : null}{footer}\n </article>;\n});\nexport interface CardDragProviderProps { children: ReactNode; items: string[]; onMove?: (activeId: string, overId: string) => void }\n/** Shared dnd-kit boundary; hosts own persistence and list-specific reorder rules. */\nexport function CardDragProvider({ children, items, onMove }: CardDragProviderProps) {\n const sensors = useSensors(useSensor(PointerSensor, { activationConstraint: { distance: 5 } }), useSensor(KeyboardSensor, { coordinateGetter: sortableKeyboardCoordinates }));\n const handleEnd = ({ active, over }: DragEndEvent) => { if (over && active.id !== over.id) onMove?.(String(active.id), String(over.id)); };\n return <DndContext sensors={sensors} collisionDetection={closestCenter} onDragEnd={handleEnd}><SortableContext items={items} strategy={rectSwappingStrategy}>{children}</SortableContext></DndContext>;\n}\nexport interface StatItem { label: string; value: ReactNode }\nexport interface StatGroupProps extends HTMLAttributes<HTMLDListElement> {\n items: StatItem[];\n /** Opt into metric tiles with a fixed column count; rows grow with the items. */\n columns?: 2 | 3;\n}\nexport function StatGroup({ items, columns, className, ...props }: StatGroupProps) { return <dl {...props} data-columns={columns} className={cx('monkeys-ui-stats', className)}>{items.map(item => <div key={item.label}><dt>{item.label}</dt><dd>{item.value}</dd></div>)}</dl>; }\n","import { createContext } from 'react';\n\n/** Internal surface choice for compound controls embedded in a Bento workspace. */\nexport const PanelSurfaceContext = createContext<'catalog' | 'bento'>('catalog');\n","import { useEffect, useRef, useState, type RefObject } from 'react';\nexport const cx = (...values: Array<string | false | undefined>) => values.filter(Boolean).join(' ');\n/** Radix durations are milliseconds; DTCG also allows seconds. */\nexport function durationMilliseconds(token: unknown) {\n const { value, unit } = token as { value: number; unit: 's' | 'ms' };\n return unit === 's' ? value * 1000 : value;\n}\nexport function useControllable<T>(value: T | undefined, defaultValue: T | undefined, fallback: T, onChange?: (value: T) => void) {\n const controlled = value !== undefined;\n const initial = useRef(controlled);\n const warned = useRef(false);\n if (process.env.NODE_ENV !== 'production' && !warned.current && ((value !== undefined && defaultValue !== undefined) || initial.current !== controlled)) {\n console.error('monkeys-design UI: choose controlled or uncontrolled state; do not supply both value and defaultValue or switch modes.');\n warned.current = true;\n }\n const [local, setLocal] = useState(defaultValue ?? fallback);\n const current = controlled ? value : local;\n const update = (next: T) => { if (!controlled) setLocal(next); if (next !== current) onChange?.(next); };\n return [current, update] as const;\n}\n\n/** Native reset is cancelable. Restore local state after every reset listener ran. */\nexport function useFormReset<T extends HTMLElement>(ref: RefObject<T>, reset: () => void) {\n const latest = useRef(reset);\n latest.current = reset;\n useEffect(() => {\n const element = ref.current;\n const form = element && ('form' in element ? (element as unknown as { form: HTMLFormElement | null }).form : element.closest('form'));\n if (!form) return;\n let active = true;\n const listener = (event: Event) => queueMicrotask(() => { if (active && !event.defaultPrevented) latest.current(); });\n form.addEventListener('reset', listener);\n return () => { active = false; form.removeEventListener('reset', listener); };\n });\n}\n","import type {\n ResolvedThemeToken,\n ThemeColorValue,\n ThemeDimensionValue,\n ThemeDurationValue,\n ThemeTokenExtensions,\n ThemeTokens,\n} from '@inf-monkeys-tech/monkeys/contracts';\nimport { resolveThemeTokens } from '@inf-monkeys-tech/monkeys/runtime';\n\nexport type MonkeysThemeColorMode = 'light' | 'dark' | (string & {});\nexport type MonkeysThemeDensity = 'compact' | 'default' | 'comfortable';\n\nexport interface CompileThemeTokensOptions {\n colorMode?: MonkeysThemeColorMode;\n density?: MonkeysThemeDensity;\n variablePrefix?: string;\n}\n\nexport interface CompiledThemeTokens {\n contract: ThemeTokens;\n colorMode: MonkeysThemeColorMode;\n density: MonkeysThemeDensity;\n values: Readonly<Record<string, unknown>>;\n cssValues: Readonly<Record<string, string>>;\n cssVariables: Readonly<Record<string, string>>;\n cssText: string;\n}\n\nexport interface ApplyThemeTokensOptions extends CompileThemeTokensOptions {\n target?: HTMLElement | null;\n themeId?: string;\n}\n\nexport interface ClearThemeTokensOptions {\n target?: HTMLElement | null;\n}\n\ntype ThemeTokenCssAliasAxis = 'colorMode' | 'density';\ntype ThemeTokenCssAliasFormat = 'hsl' | 'css';\n\ninterface ThemeTokenCssAlias {\n variableName: string;\n axis: ThemeTokenCssAliasAxis;\n expectedType: ResolvedThemeToken['type'];\n format: ThemeTokenCssAliasFormat;\n}\n\ntype CssExtension = {\n gradient?: {\n kind?: 'linear' | 'radial';\n angle?: number;\n };\n};\n\nconst CSS_EXTENSION_KEY = 'com.infmonkeys.css';\nconst APPLIED_VARIABLES = new WeakMap<object, Set<string>>();\n\nfunction isRecord(value: unknown): value is Record<string, unknown> {\n return value !== null && typeof value === 'object' && !Array.isArray(value);\n}\n\nfunction readCssExtension(extensions?: ThemeTokenExtensions): CssExtension | undefined {\n const extension = extensions?.[CSS_EXTENSION_KEY];\n return isRecord(extension) ? extension as CssExtension : undefined;\n}\n\nfunction formatNumber(value: number): string {\n return Number.isInteger(value) ? String(value) : String(Number(value.toFixed(6)));\n}\n\nfunction formatDimension(value: ThemeDimensionValue): string {\n return `${formatNumber(value.value)}${value.unit}`;\n}\n\nfunction formatDuration(value: ThemeDurationValue): string {\n return `${formatNumber(value.value)}${value.unit}`;\n}\n\nfunction formatColorComponent(value: number | 'none'): string {\n return value === 'none' ? value : formatNumber(value);\n}\n\nfunction hexToSrgb(hex: string): [number, number, number] {\n return [\n Number.parseInt(hex.slice(1, 3), 16) / 255,\n Number.parseInt(hex.slice(3, 5), 16) / 255,\n Number.parseInt(hex.slice(5, 7), 16) / 255,\n ];\n}\n\nfunction colorSrgbComponents(value: ThemeColorValue): [number, number, number] {\n if (value.colorSpace === 'srgb' && value.components.every((component) => typeof component === 'number')) {\n return value.components as [number, number, number];\n }\n if (value.hex) return hexToSrgb(value.hex);\n throw new TypeError(\n `Web semantic colors in ${value.colorSpace} require a six-digit hex fallback for hsl(var(--token)) consumers.`,\n );\n}\n\nfunction srgbToHsl([red, green, blue]: [number, number, number]): [number, number, number] {\n const maximum = Math.max(red, green, blue);\n const minimum = Math.min(red, green, blue);\n const lightness = (maximum + minimum) / 2;\n if (maximum === minimum) return [0, 0, lightness * 100];\n const delta = maximum - minimum;\n const saturation = lightness > 0.5\n ? delta / (2 - maximum - minimum)\n : delta / (maximum + minimum);\n let hue: number;\n if (maximum === red) hue = (green - blue) / delta + (green < blue ? 6 : 0);\n else if (maximum === green) hue = (blue - red) / delta + 2;\n else hue = (red - green) / delta + 4;\n return [(hue / 6) * 360, saturation * 100, lightness * 100];\n}\n\nfunction formatHslTriplet(value: ThemeColorValue): string {\n if (value.colorSpace === 'hsl' && value.components.every((component) => typeof component === 'number')) {\n const [hue, saturation, lightness] = value.components as [number, number, number];\n return `${formatNumber(hue)} ${formatNumber(saturation)}% ${formatNumber(lightness)}%`;\n }\n const [hue, saturation, lightness] = srgbToHsl(colorSrgbComponents(value));\n return `${formatNumber(hue)} ${formatNumber(saturation)}% ${formatNumber(lightness)}%`;\n}\n\nfunction formatColor(value: ThemeColorValue): string {\n const alpha = value.alpha ?? 1;\n if (value.hex && alpha === 1) return value.hex;\n const components = value.components.map(formatColorComponent).join(' ');\n const alphaSuffix = alpha === 1 ? '' : ` / ${formatNumber(alpha)}`;\n switch (value.colorSpace) {\n case 'srgb': {\n const rgb = value.components.map((component) => component === 'none' ? 'none' : formatNumber(component * 255));\n return `rgb(${rgb.join(' ')}${alphaSuffix})`;\n }\n case 'hsl':\n return `hsl(${formatColorComponent(value.components[0])} ${formatColorComponent(value.components[1])}% ${formatColorComponent(value.components[2])}%${alphaSuffix})`;\n case 'hwb':\n return `hwb(${formatColorComponent(value.components[0])} ${formatColorComponent(value.components[1])}% ${formatColorComponent(value.components[2])}%${alphaSuffix})`;\n case 'lab':\n case 'lch':\n case 'oklab':\n case 'oklch':\n return `${value.colorSpace}(${components}${alphaSuffix})`;\n default:\n return `color(${value.colorSpace} ${components}${alphaSuffix})`;\n }\n}\n\nfunction formatFontFamily(value: string | string[]): string {\n const families = Array.isArray(value) ? value : [value];\n const genericFamilies = new Set([\n 'serif', 'sans-serif', 'monospace', 'cursive', 'fantasy', 'system-ui',\n 'ui-serif', 'ui-sans-serif', 'ui-monospace', 'ui-rounded', 'math', 'emoji', 'fangsong',\n ]);\n return families.map((family) => {\n if (genericFamilies.has(family) || /^[a-zA-Z][\\w-]*$/.test(family)) return family;\n return `\"${family.replace(/\\\\/g, '\\\\\\\\').replace(/\"/g, '\\\\\"')}\"`;\n }).join(', ');\n}\n\nfunction formatShadow(value: unknown): string {\n const shadows = Array.isArray(value) ? value : [value];\n return shadows.map((shadow) => {\n if (!isRecord(shadow)) throw new TypeError('DTCG shadow values must be objects.');\n return [\n formatDimension(shadow.offsetX as ThemeDimensionValue),\n formatDimension(shadow.offsetY as ThemeDimensionValue),\n formatDimension(shadow.blur as ThemeDimensionValue),\n formatDimension(shadow.spread as ThemeDimensionValue),\n formatColor(shadow.color as ThemeColorValue),\n shadow.inset === true ? 'inset' : '',\n ].filter(Boolean).join(' ');\n }).join(', ');\n}\n\nfunction formatGradient(value: unknown, extensions?: ThemeTokenExtensions): string {\n if (!Array.isArray(value)) throw new TypeError('DTCG gradient values must be arrays.');\n const stops = value.map((stop) => {\n if (!isRecord(stop)) throw new TypeError('DTCG gradient stops must be objects.');\n return `${formatColor(stop.color as ThemeColorValue)} ${formatNumber(Number(stop.position) * 100)}%`;\n }).join(', ');\n const gradient = readCssExtension(extensions)?.gradient;\n if (gradient?.kind === 'radial') return `radial-gradient(${stops})`;\n return `linear-gradient(${formatNumber(gradient?.angle ?? 90)}deg, ${stops})`;\n}\n\nfunction formatTokenValue(token: ResolvedThemeToken): string {\n switch (token.type) {\n case 'color':\n return formatColor(token.value as ThemeColorValue);\n case 'dimension':\n return formatDimension(token.value as ThemeDimensionValue);\n case 'fontFamily':\n return formatFontFamily(token.value as string | string[]);\n case 'fontWeight':\n case 'number':\n return String(token.value);\n case 'duration':\n return formatDuration(token.value as ThemeDurationValue);\n case 'cubicBezier':\n return `cubic-bezier(${(token.value as number[]).map(formatNumber).join(', ')})`;\n case 'strokeStyle': {\n if (typeof token.value === 'string') return token.value;\n const value = token.value as { dashArray: ThemeDimensionValue[] };\n return value.dashArray.map(formatDimension).join(' ');\n }\n case 'border': {\n const value = token.value as { color: ThemeColorValue; width: ThemeDimensionValue; style: unknown };\n const styleToken: ResolvedThemeToken = { ...token, type: 'strokeStyle', value: value.style };\n return `${formatDimension(value.width)} ${formatTokenValue(styleToken)} ${formatColor(value.color)}`;\n }\n case 'transition': {\n const value = token.value as { duration: ThemeDurationValue; delay: ThemeDurationValue; timingFunction: number[] };\n return `${formatDuration(value.duration)} cubic-bezier(${value.timingFunction.map(formatNumber).join(', ')}) ${formatDuration(value.delay)}`;\n }\n case 'shadow':\n return formatShadow(token.value);\n case 'gradient':\n return formatGradient(token.value, token.extensions);\n case 'typography': {\n const value = token.value as {\n fontFamily: string | string[];\n fontSize: ThemeDimensionValue;\n fontWeight: string | number;\n lineHeight: number;\n };\n return `${value.fontWeight} ${formatDimension(value.fontSize)}/${formatNumber(value.lineHeight)} ${formatFontFamily(value.fontFamily)}`;\n }\n }\n}\n\nfunction toCssVariableName(path: string, prefix: string): string {\n const normalized = path\n .replace(/([a-z0-9])([A-Z])/g, '$1-$2')\n .replace(/[^a-zA-Z0-9]+/g, '-')\n .replace(/^-+|-+$/g, '')\n .toLowerCase();\n return `--${prefix}-${normalized}`;\n}\n\nfunction assertCssVariablePrefix(prefix: string): void {\n if (!/^[a-zA-Z][a-zA-Z0-9-]*$/.test(prefix)) {\n throw new TypeError(\n 'Theme token variablePrefix must start with a letter and contain only letters, numbers, or hyphens.',\n );\n }\n}\n\nfunction selectModePath(\n paths: ReadonlySet<string>,\n basePath: string,\n colorMode: MonkeysThemeColorMode,\n): string | undefined {\n const contextualPath = `${basePath}.${colorMode}`;\n if (paths.has(contextualPath)) return contextualPath;\n return paths.has(basePath) ? basePath : undefined;\n}\n\nconst HSL_SEMANTIC_VARIABLES: Readonly<Record<string, string>> = {\n 'semantic.color.background': '--background',\n 'semantic.color.foreground': '--foreground',\n 'semantic.color.card': '--card',\n 'semantic.color.card-foreground': '--card-foreground',\n 'semantic.color.popover': '--popover',\n 'semantic.color.popover-foreground': '--popover-foreground',\n 'semantic.color.primary': '--primary',\n 'semantic.color.primary-foreground': '--primary-foreground',\n 'semantic.color.secondary': '--secondary',\n 'semantic.color.secondary-foreground': '--secondary-foreground',\n 'semantic.color.muted': '--muted',\n 'semantic.color.muted-foreground': '--muted-foreground',\n 'semantic.color.accent': '--accent',\n 'semantic.color.accent-foreground': '--accent-foreground',\n 'semantic.color.destructive': '--destructive',\n 'semantic.color.destructive-foreground': '--destructive-foreground',\n 'semantic.color.success': '--success',\n 'semantic.color.success-foreground': '--success-foreground',\n 'semantic.color.warning': '--warning',\n 'semantic.color.warning-foreground': '--warning-foreground',\n 'semantic.color.border': '--border',\n 'semantic.color.input': '--input',\n 'semantic.color.ring': '--ring',\n 'semantic.color.media-surface': '--media-surface',\n 'semantic.color.media-foreground': '--media-foreground',\n 'semantic.color.media-overlay': '--media-overlay',\n 'semantic.color.radar-canvas': '--radar-canvas',\n 'semantic.color.radar-panel': '--radar-panel',\n 'semantic.color.radar-border': '--radar-border',\n 'semantic.color.radar-shell-border': '--radar-shell-border',\n 'semantic.color.radar-grid': '--radar-grid',\n 'semantic.color.radar-axis': '--radar-axis',\n 'semantic.color.radar-series-one': '--radar-series-one',\n 'semantic.color.radar-series-two': '--radar-series-two',\n 'semantic.color.radar-series-three': '--radar-series-three',\n 'semantic.color.radar-series-four': '--radar-series-four',\n};\n\nconst THEME_TOKEN_CSS_ALIASES: Readonly<Record<string, ThemeTokenCssAlias>> = Object.freeze({\n ...Object.fromEntries(\n Object.entries(HSL_SEMANTIC_VARIABLES).map(([path, variableName]) => [path, {\n variableName,\n axis: 'colorMode',\n expectedType: 'color',\n format: 'hsl',\n }]),\n ),\n 'semantic.color.neocard': {\n variableName: '--neocard',\n axis: 'colorMode',\n expectedType: 'color',\n format: 'css',\n },\n 'semantic.radius.base': {\n variableName: '--radius',\n axis: 'colorMode',\n expectedType: 'dimension',\n format: 'css',\n },\n 'semantic.spacing.global': {\n variableName: '--global-spacing',\n axis: 'density',\n expectedType: 'dimension',\n format: 'css',\n },\n 'semantic.gradient.brand': {\n variableName: '--monkeys-gradient',\n axis: 'colorMode',\n expectedType: 'gradient',\n format: 'css',\n },\n 'semantic.font.body': {\n variableName: '--font-sans',\n axis: 'colorMode',\n expectedType: 'fontFamily',\n format: 'css',\n },\n});\n\nexport function resolveThemeTokenCssVariable(reference: string): string {\n const path = reference.startsWith('$') ? reference.slice(1).trim() : reference.trim();\n if (!/^[a-z][a-z0-9]*(?:[.-][a-z0-9]+)*$/i.test(path)) {\n throw new TypeError(`Invalid Design Token path ${reference}.`);\n }\n const alias = THEME_TOKEN_CSS_ALIASES[path];\n if (alias) return alias.format === 'hsl' ? `hsl(var(${alias.variableName}))` : `var(${alias.variableName})`;\n return `var(${toCssVariableName(path, 'monkeys')})`;\n}\n\nexport function getThemeTokenCssValue(\n compiled: CompiledThemeTokens,\n basePath: string,\n): string | undefined {\n const path = selectModePath(new Set(Object.keys(compiled.cssValues)), basePath, compiled.colorMode);\n return path ? compiled.cssValues[path] : undefined;\n}\n\nexport function compileThemeTokens(\n input: ThemeTokens,\n options: CompileThemeTokensOptions = {},\n): CompiledThemeTokens {\n const resolved = resolveThemeTokens(input);\n const contract = resolved.document;\n const colorMode = options.colorMode ?? 'light';\n const density = options.density ?? 'default';\n const variablePrefix = options.variablePrefix ?? 'monkeys';\n assertCssVariablePrefix(variablePrefix);\n const values: Record<string, unknown> = {};\n const cssValues: Record<string, string> = {};\n const cssVariables: Record<string, string> = {};\n const canonicalVariableSources = new Map<string, string>();\n\n for (const [path, token] of resolved.tokens) {\n values[path] = token.value;\n const cssValue = formatTokenValue(token);\n cssValues[path] = cssValue;\n const variableName = toCssVariableName(path, variablePrefix);\n const existingPath = canonicalVariableSources.get(variableName);\n if (existingPath) {\n throw new TypeError(\n `Theme token paths ${existingPath} and ${path} both compile to ${variableName}. Rename one token.`,\n );\n }\n canonicalVariableSources.set(variableName, path);\n cssVariables[variableName] = cssValue;\n }\n\n const paths = new Set(resolved.tokens.keys());\n for (const [basePath, alias] of Object.entries(THEME_TOKEN_CSS_ALIASES)) {\n const axis = alias.axis === 'density' ? density : colorMode;\n const path = selectModePath(paths, basePath, axis);\n if (!path) continue;\n const token = resolved.tokens.get(path);\n if (!token || token.type !== alias.expectedType) {\n throw new TypeError(`${path} must be a ${alias.expectedType} token to drive ${alias.variableName}.`);\n }\n cssVariables[alias.variableName] = alias.format === 'hsl'\n ? formatHslTriplet(token.value as ThemeColorValue)\n : cssValues[path];\n }\n\n const cssText = Object.entries(cssVariables)\n .sort(([left], [right]) => left.localeCompare(right))\n .map(([name, value]) => `${name}:${value};`)\n .join('');\n\n return {\n contract,\n colorMode,\n density,\n values: Object.freeze(values),\n cssValues: Object.freeze(cssValues),\n cssVariables: Object.freeze(cssVariables),\n cssText,\n };\n}\n\nexport function applyThemeTokens(\n input: ThemeTokens,\n options: ApplyThemeTokensOptions = {},\n): CompiledThemeTokens {\n const compiled = compileThemeTokens(input, options);\n const target = options.target ?? (typeof document === 'undefined' ? null : document.documentElement);\n if (!target) return compiled;\n\n const previouslyApplied = APPLIED_VARIABLES.get(target) ?? new Set<string>();\n const nextVariables = new Set(Object.keys(compiled.cssVariables));\n for (const name of previouslyApplied) {\n if (!nextVariables.has(name)) target.style.removeProperty(name);\n }\n for (const [name, value] of Object.entries(compiled.cssVariables)) {\n target.style.setProperty(name, value);\n }\n APPLIED_VARIABLES.set(target, nextVariables);\n\n if (options.themeId) target.dataset.monkeysTheme = options.themeId;\n else delete target.dataset.monkeysTheme;\n target.dataset.monkeysColorMode = compiled.colorMode;\n target.dataset.monkeysDensity = compiled.density;\n return compiled;\n}\n\nexport function clearThemeTokens(options: ClearThemeTokensOptions = {}): void {\n const target = options.target ?? (typeof document === 'undefined' ? null : document.documentElement);\n if (!target) return;\n\n const previouslyApplied = APPLIED_VARIABLES.get(target) ?? new Set<string>();\n for (const name of previouslyApplied) target.style.removeProperty(name);\n APPLIED_VARIABLES.delete(target);\n\n delete target.dataset.monkeysTheme;\n delete target.dataset.monkeysColorMode;\n delete target.dataset.monkeysDensity;\n}\n","import type { MonkeysLocale } from \"./types\";\n\nexport const enUS = {\n locale: \"en-US\",\n messages: {\n pagination: {\n navigation: \"Pagination\",\n first: \"First\",\n previous: \"Previous\",\n next: \"Next\",\n last: \"Last\",\n page: ({ page, pageCount }) => `Page ${page} of ${pageCount}`,\n currentPage: ({ page, pageCount }) =>\n `Page ${page} of ${pageCount}, current page`,\n emptyResults: \"0 results\",\n range: ({ start, end, total }) => `${start}-${end} of ${total}`,\n selected: ({ count }) => `${count} selected`,\n pageSize: \"Items per page\",\n loadBatchSize: \"Items per load\",\n perLoad: \"Items per load\",\n jumpToPage: \"Jump to page\",\n pages: \"pages\",\n clickToJump: \"Click to jump to a page\",\n },\n dialog: {\n close: \"Close dialog\",\n },\n dropdownMenu: {\n actions: \"Actions\",\n },\n loading: {\n spinner: \"Loading\",\n },\n layout: {\n resizePanels: \"Resize panels\",\n expandPanel: \"Expand\",\n collapsePanel: \"Collapse\",\n movePanel: \"Move\",\n moveBefore: \"Move earlier\",\n moveAfter: \"Move later\",\n },\n steps: {\n label: \"Progress\",\n current: \"Current\",\n completed: \"Completed\",\n error: \"Error\",\n disabled: \"Disabled\",\n },\n numberInput: {\n increment: \"Increase value\",\n decrement: \"Decrease value\",\n },\n passwordInput: {\n showPassword: \"Show password\",\n hidePassword: \"Hide password\",\n },\n multiSelect: {\n placeholder: \"Select options\",\n empty: \"No options\",\n removeOption: ({ value }) => `Remove ${value}`,\n },\n table: {\n dragColumn: ({ columnId }) => `Drag column ${columnId}`,\n resizeColumn: ({ columnId }) => `Resize column ${columnId}`,\n sortColumn: ({ columnId }) =>\n columnId ? `Sort column ${columnId}` : \"Sort column\",\n loadingRow: \"Loading table row\",\n },\n toolbar: {\n theme: {\n label: \"Appearance\",\n toggle: \"Toggle theme\",\n auto: \"Auto\",\n light: \"Light\",\n dark: \"Dark\",\n },\n language: {\n label: \"Language\",\n switch: \"Switch language\",\n },\n },\n toast: {\n errorTitle: \"Error\",\n warningTitle: \"Warning\",\n defaultErrorDescription: \"Something went wrong.\",\n defaultWarningDescription: \"Please check and try again.\",\n },\n dataExplorer: {\n viewTree: {\n actions: \"More actions\",\n expand: \"Expand\",\n collapse: \"Collapse\",\n loading: \"Loading...\",\n empty: \"No views\",\n error: \"Unable to load views\",\n },\n },\n workbench: {\n relationshipGraph: { zoomOut: 'Zoom out', zoomIn: 'Zoom in', zoomToFit: 'Fit graph', minimap: 'Graph overview' },\n collection: {\n label: \"Collection\",\n loading: \"Loading items\",\n empty: \"No items\",\n loadError: \"Unable to load items\",\n refreshError: \"Unable to refresh items\",\n retry: \"Retry\",\n loadingMore: \"Loading more items\",\n permission: \"You do not have permission to view this content\",\n offline: \"You appear to be offline\",\n requestAccess: \"Request access\",\n },\n interactiveTable: {\n columnActions: \"Column actions\",\n freezeColumn: \"Freeze to left\",\n freezeEndColumn: \"Freeze to right\",\n unfreezeColumn: \"Unfreeze from left\",\n unfreezeEndColumn: \"Unfreeze from right\",\n unfreezeAllColumns: \"Unfreeze all columns\",\n resetColumnWidth: \"Reset column width\",\n frozenColumnTitle: \"Frozen column\",\n },\n },\n agentWorkbench: {\n label: \"Session activity\",\n reasoning: \"Reasoning\",\n plan: \"Plan\",\n taskNoDetail: \"No additional details\",\n modes: { chat: \"Chat\", work: \"Work\" },\n composer: {\n send: \"Send message\",\n stop: \"Stop generating\",\n queue: \"Queue message\",\n attach: \"Add photos or files\",\n voice: \"Start voice input\",\n webSearch: \"Web search\",\n chatMode: \"Chat mode\",\n model: \"Model\",\n reasoning: \"Reasoning effort\",\n permissions: \"Permissions\",\n removeAttachment: \"Remove attachment\",\n editQueued: \"Edit queued message\",\n deleteQueued: \"Delete queued message\",\n moveUp: \"Move message up\",\n moveDown: \"Move message down\",\n queued: \"Queued messages\",\n uploading: \"Uploading\",\n uploadFailed: \"Upload failed\",\n retryAttachment: \"Retry attachment upload\",\n noModels: \"No models available\",\n message: \"Message\",\n attachmentOnly: \"Attachment\",\n reasoningOptions: {\n low: \"Low\",\n medium: \"Medium\",\n high: \"High\",\n xhigh: \"Extra high\",\n },\n permissionOptions: {\n \"approval-required\": \"Approval required\",\n \"auto-approve\": \"Auto approve\",\n \"full-access\": \"Full access\",\n },\n },\n quickStart: {\n label: \"Quick start\",\n back: \"Back\",\n addFile: \"Add file\",\n },\n tool: {\n input: \"Input\",\n output: \"Output\",\n status: {\n pending: \"Pending\",\n running: \"Running\",\n completed: \"Completed\",\n failed: \"Error\",\n denied: \"Denied\",\n },\n },\n approval: {\n approve: \"Approve\",\n reject: \"Reject\",\n approved: \"Approved\",\n rejected: \"Rejected\",\n },\n artifact: {\n pending: \"Preparing\",\n ready: \"Ready\",\n failed: \"Failed\",\n open: ({ name }) => `Open ${name}`,\n },\n run: {\n stopping: \"Stopping...\",\n stoppedAfter: ({ duration }) => `You stopped after ${duration}`,\n },\n process: {\n running: \"Working\",\n queued: \"Queued\",\n waitingApproval: \"Waiting for approval\",\n failed: \"Failed\",\n stopped: \"Stopped\",\n processed: \"Processed\",\n processedFor: ({ duration }) => `Worked for ${duration}`,\n completedCount: ({ completed, total }) =>\n `${completed}/${total} completed`,\n },\n artifactWorkspace: {\n outputs: \"Outputs\",\n sources: \"Sources\",\n viewAll: \"View all\",\n toggleSummary: \"Toggle files\",\n tabs: \"Open files\",\n closeTab: ({ name }) => `Close ${name}`,\n closeWorkspace: \"Close workspace\",\n download: ({ name }) => `Download ${name}`,\n openExternal: ({ name }) => `Open ${name} in a new window`,\n loading: \"Loading preview...\",\n failed: \"Preview unavailable\",\n retry: \"Try again\",\n },\n usage: {\n label: \"Context usage\",\n context: ({ used, total }) => `${used} / ${total} tokens`,\n },\n navigation: {\n search: \"Search agents and sessions\",\n searchSessions: \"Search sessions\",\n searchShortcut: \"Focus search\",\n clearSearch: \"Clear search\",\n tabsLabel: \"Agent workbench navigation\",\n agents: \"Agents\",\n sessions: \"Sessions\",\n newAgent: \"New Agent\",\n newSession: \"New Session\",\n capabilities: \"Capabilities & Extensions\",\n settings: \"Agent Settings\",\n allAgents: \"All Agents\",\n recentSessions: \"Recent Sessions\",\n chat: \"Chat\",\n work: \"Work\",\n chats: \"Chats\",\n builtIn: \"Built-in\",\n noDescription: \"No description\",\n loading: \"Loading...\",\n emptyAgents: \"No agents yet\",\n emptySessions: \"No sessions yet\",\n noResults: \"No matching results\",\n retry: \"Retry\",\n pin: \"Pin\",\n unpin: \"Unpin\",\n rename: \"Rename\",\n delete: \"Delete\",\n actions: \"Actions\",\n save: \"Save\",\n cancel: \"Cancel\",\n running: \"Running\",\n completed: \"Completed\",\n failed: \"Failed\",\n contextUsage: ({ percent }) => `${percent}% context used`,\n },\n details: {\n title: \"Task details\",\n description: \"Summary and workspace activity\",\n duration: \"Duration\",\n updated: \"Updated\",\n model: \"Model\",\n mode: \"Mode\",\n permissions: \"Permissions\",\n tokenUsage: \"Token usage\",\n summary: \"Summary\",\n summaryEmpty: \"No summary is available yet.\",\n summaryFailed: \"The summary could not be generated.\",\n highlights: \"Highlights\",\n pendingItems: \"Pending items\",\n tabs: {\n label: \"Task detail views\",\n summary: \"Summary\",\n workspace: \"Workspace\",\n },\n status: {\n queued: \"Queued\",\n running: \"Running\",\n waiting_approval: \"Waiting for approval\",\n stopping: \"Stopping\",\n stopped: \"Stopped\",\n completed: \"Completed\",\n failed: \"Failed\",\n },\n state: {\n loading: {\n title: \"Loading task details\",\n description: \"Restoring the latest session activity.\",\n },\n empty: {\n title: \"No task selected\",\n description: \"Select a task to inspect its details.\",\n },\n error: {\n title: \"Unable to load task details\",\n description: \"Try again after the session is available.\",\n },\n },\n actions: {\n close: \"Close task details\",\n copySummary: \"Copy summary\",\n retry: \"Retry\",\n retrySummary: \"Retry summary\",\n resume: \"Resume\",\n continueInNewTask: \"Continue in new task\",\n editAndRerun: \"Edit and rerun\",\n export: \"Export\",\n },\n workspace: {\n diffs: \"Code changes\",\n files: \"Files\",\n terminals: \"Terminals\",\n tests: \"Tests\",\n artifacts: \"Artifacts\",\n exitCode: ({ code }) => `Exit code ${code}`,\n diffStatus: {\n added: \"Added\",\n modified: \"Modified\",\n deleted: \"Deleted\",\n renamed: \"Renamed\",\n },\n fileOperation: { upsert: \"Updated\", delete: \"Deleted\" },\n },\n },\n },\n },\n} satisfies MonkeysLocale;\n","import type { MonkeysLocale } from \"./types\";\n\nexport const zhCN = {\n locale: \"zh-CN\",\n messages: {\n pagination: {\n navigation: \"分页导航\",\n first: \"首页\",\n previous: \"上一页\",\n next: \"下一页\",\n last: \"末页\",\n page: ({ page, pageCount }) => `第 ${page} 页,共 ${pageCount} 页`,\n currentPage: ({ page, pageCount }) =>\n `第 ${page} 页,共 ${pageCount} 页,当前页`,\n emptyResults: \"共 0 条\",\n range: ({ start, end, total }) => `第 ${start}-${end} 条,共 ${total} 条`,\n selected: ({ count }) => `已选择 ${count} 项`,\n pageSize: \"每页显示数量\",\n loadBatchSize: \"每次加载数量\",\n perLoad: \"每次加载\",\n jumpToPage: \"跳转到页码\",\n pages: \"页\",\n clickToJump: \"点击跳转页码\",\n },\n dialog: {\n close: \"关闭对话框\",\n },\n dropdownMenu: {\n actions: \"操作\",\n },\n loading: {\n spinner: \"正在加载\",\n },\n layout: {\n resizePanels: \"调整面板大小\",\n expandPanel: \"展开\",\n collapsePanel: \"收起\",\n movePanel: \"移动\",\n moveBefore: \"向前移动\",\n moveAfter: \"向后移动\",\n },\n steps: {\n label: \"进度\",\n current: \"当前步骤\",\n completed: \"已完成\",\n error: \"错误\",\n disabled: \"已禁用\",\n },\n numberInput: {\n increment: \"增加数值\",\n decrement: \"减少数值\",\n },\n passwordInput: {\n showPassword: \"显示密码\",\n hidePassword: \"隐藏密码\",\n },\n multiSelect: {\n placeholder: \"请选择\",\n empty: \"暂无选项\",\n removeOption: ({ value }) => `移除 ${value}`,\n },\n table: {\n dragColumn: ({ columnId }) => `拖动列 ${columnId}`,\n resizeColumn: ({ columnId }) => `调整列宽 ${columnId}`,\n sortColumn: ({ columnId }) =>\n columnId ? `排序列 ${columnId}` : \"排序列\",\n loadingRow: \"正在加载表格行\",\n },\n toolbar: {\n theme: {\n label: \"外观\",\n toggle: \"切换主题\",\n auto: \"跟随系统\",\n light: \"浅色模式\",\n dark: \"深色模式\",\n },\n language: {\n label: \"语言\",\n switch: \"切换语言\",\n },\n },\n toast: {\n errorTitle: \"错误\",\n warningTitle: \"提示\",\n defaultErrorDescription: \"发生错误,请稍后重试。\",\n defaultWarningDescription: \"请检查后重试。\",\n },\n dataExplorer: {\n viewTree: {\n actions: \"更多操作\",\n expand: \"展开\",\n collapse: \"收起\",\n loading: \"正在加载...\",\n empty: \"暂无视图\",\n error: \"无法加载视图\",\n },\n },\n workbench: {\n relationshipGraph: { zoomOut: '缩小', zoomIn: '放大', zoomToFit: '适应画布', minimap: '图谱概览' },\n collection: {\n label: \"内容集合\",\n loading: \"正在加载内容\",\n empty: \"暂无内容\",\n loadError: \"无法加载内容\",\n refreshError: \"无法刷新内容\",\n retry: \"重试\",\n loadingMore: \"正在加载更多内容\",\n permission: \"你没有权限查看此内容\",\n offline: \"网络连接已断开\",\n requestAccess: \"申请权限\",\n },\n interactiveTable: {\n columnActions: \"列操作\",\n freezeColumn: \"固定到左侧\",\n freezeEndColumn: \"固定到右侧\",\n unfreezeColumn: \"取消左侧固定\",\n unfreezeEndColumn: \"取消右侧固定\",\n unfreezeAllColumns: \"取消全部固定\",\n resetColumnWidth: \"重置列宽\",\n frozenColumnTitle: \"已固定列\",\n },\n },\n agentWorkbench: {\n label: \"会话活动\",\n reasoning: \"思考过程\",\n plan: \"执行计划\",\n taskNoDetail: \"暂无更多详情\",\n modes: { chat: \"对话\", work: \"工作\" },\n composer: {\n send: \"发送消息\",\n stop: \"停止生成\",\n queue: \"排队发送\",\n attach: \"添加照片或文件\",\n voice: \"开始语音输入\",\n webSearch: \"联网搜索\",\n chatMode: \"对话模式\",\n model: \"模型\",\n reasoning: \"思考强度\",\n permissions: \"权限\",\n removeAttachment: \"移除附件\",\n editQueued: \"编辑排队消息\",\n deleteQueued: \"删除排队消息\",\n moveUp: \"上移消息\",\n moveDown: \"下移消息\",\n queued: \"排队消息\",\n uploading: \"上传中\",\n uploadFailed: \"上传失败\",\n retryAttachment: \"重试附件上传\",\n noModels: \"暂无可用模型\",\n message: \"消息\",\n attachmentOnly: \"附件\",\n reasoningOptions: {\n low: \"低\",\n medium: \"中\",\n high: \"高\",\n xhigh: \"最高\",\n },\n permissionOptions: {\n \"approval-required\": \"需要批准\",\n \"auto-approve\": \"自动批准\",\n \"full-access\": \"完全访问\",\n },\n },\n quickStart: {\n label: \"快速开始\",\n back: \"返回\",\n addFile: \"添加文件\",\n },\n tool: {\n input: \"输入\",\n output: \"输出\",\n status: {\n pending: \"等待中\",\n running: \"运行中\",\n completed: \"已完成\",\n failed: \"错误\",\n denied: \"已拒绝\",\n },\n },\n approval: {\n approve: \"允许\",\n reject: \"拒绝\",\n approved: \"已允许\",\n rejected: \"已拒绝\",\n },\n artifact: {\n pending: \"准备中\",\n ready: \"已就绪\",\n failed: \"失败\",\n open: ({ name }) => `打开 ${name}`,\n },\n run: {\n stopping: \"正在停止...\",\n stoppedAfter: ({ duration }) => `你在 ${duration} 后停止了任务`,\n },\n process: {\n running: \"执行过程\",\n queued: \"排队中\",\n waitingApproval: \"等待审批\",\n failed: \"失败\",\n stopped: \"已停止\",\n processed: \"已处理\",\n processedFor: ({ duration }) =>\n `耗时 ${duration\n .replace(/(\\d+)h/g, \"$1小时\")\n .replace(/(\\d+)m/g, \"$1分钟\")\n .replace(/(\\d+)s/g, \"$1秒\")\n .replace(/\\s+/g, \"\")}`,\n completedCount: ({ completed, total }) =>\n `${completed}/${total} 已完成`,\n },\n artifactWorkspace: {\n outputs: \"输出\",\n sources: \"来源\",\n viewAll: \"查看全部\",\n toggleSummary: \"切换文件摘要\",\n tabs: \"已打开文件\",\n closeTab: ({ name }) => `关闭 ${name}`,\n closeWorkspace: \"关闭工作区\",\n download: ({ name }) => `下载 ${name}`,\n openExternal: ({ name }) => `在新窗口打开 ${name}`,\n loading: \"正在加载预览...\",\n failed: \"预览不可用\",\n retry: \"重试\",\n },\n usage: {\n label: \"上下文用量\",\n context: ({ used, total }) => `${used} / ${total} tokens`,\n },\n navigation: {\n search: \"搜索智能体和会话\",\n searchSessions: \"搜索会话\",\n searchShortcut: \"聚焦搜索框\",\n clearSearch: \"清除搜索\",\n tabsLabel: \"智能体工作台导航\",\n agents: \"智能体\",\n sessions: \"会话\",\n newAgent: \"新建智能体\",\n newSession: \"新建会话\",\n capabilities: \"能力与扩展\",\n settings: \"智能体设置\",\n allAgents: \"全部智能体\",\n recentSessions: \"最近会话\",\n chat: \"对话\",\n work: \"工作\",\n chats: \"聊天\",\n builtIn: \"内置\",\n noDescription: \"暂无描述\",\n loading: \"加载中...\",\n emptyAgents: \"暂无智能体\",\n emptySessions: \"暂无会话\",\n noResults: \"没有匹配结果\",\n retry: \"重试\",\n pin: \"置顶\",\n unpin: \"取消置顶\",\n rename: \"重命名\",\n delete: \"删除\",\n actions: \"操作\",\n save: \"保存\",\n cancel: \"取消\",\n running: \"运行中\",\n completed: \"已完成\",\n failed: \"失败\",\n contextUsage: ({ percent }) => `已使用 ${percent}% 上下文`,\n },\n details: {\n title: \"任务详情\",\n description: \"摘要与工作区活动\",\n duration: \"耗时\",\n updated: \"更新时间\",\n model: \"模型\",\n mode: \"模式\",\n permissions: \"权限\",\n tokenUsage: \"Token 用量\",\n summary: \"摘要\",\n summaryEmpty: \"暂时没有可用摘要。\",\n summaryFailed: \"摘要生成失败。\",\n highlights: \"重点\",\n pendingItems: \"待处理事项\",\n tabs: {\n label: \"任务详情视图\",\n summary: \"摘要\",\n workspace: \"工作区\",\n },\n status: {\n queued: \"排队中\",\n running: \"运行中\",\n waiting_approval: \"等待审批\",\n stopping: \"正在停止\",\n stopped: \"已停止\",\n completed: \"已完成\",\n failed: \"失败\",\n },\n state: {\n loading: {\n title: \"正在加载任务详情\",\n description: \"正在恢复最新的会话活动。\",\n },\n empty: {\n title: \"未选择任务\",\n description: \"选择任务后查看详细信息。\",\n },\n error: {\n title: \"无法加载任务详情\",\n description: \"会话恢复可用后请重试。\",\n },\n },\n actions: {\n close: \"关闭任务详情\",\n copySummary: \"复制摘要\",\n retry: \"重试\",\n retrySummary: \"重新生成摘要\",\n resume: \"继续运行\",\n continueInNewTask: \"在新任务中继续\",\n editAndRerun: \"编辑并重新运行\",\n export: \"导出\",\n },\n workspace: {\n diffs: \"代码变更\",\n files: \"文件\",\n terminals: \"终端\",\n tests: \"测试\",\n artifacts: \"产物\",\n exitCode: ({ code }) => `退出码 ${code}`,\n diffStatus: {\n added: \"新增\",\n modified: \"修改\",\n deleted: \"删除\",\n renamed: \"重命名\",\n },\n fileOperation: { upsert: \"已更新\", delete: \"已删除\" },\n },\n },\n },\n },\n} satisfies MonkeysLocale;\n","import { enUS } from './en-US';\nimport type {\n MonkeysBuiltInLocaleId,\n MonkeysLocale,\n MonkeysLocaleInput,\n MonkeysLocaleMessages,\n MonkeysLocaleMessagesOverride,\n MonkeysResolvedLocale,\n} from './types';\nimport { zhCN } from './zh-CN';\n\nconst BUILT_IN_LOCALES: Record<MonkeysBuiltInLocaleId, MonkeysLocale> = {\n 'en-US': enUS,\n 'zh-CN': zhCN,\n};\n\nfunction normalizeLocaleId(locale: unknown): string {\n if (typeof locale !== 'string' || !locale.trim()) {\n throw new TypeError('Monkeys locale must be a non-empty BCP 47 string.');\n }\n\n try {\n return Intl.getCanonicalLocales(locale)[0];\n } catch {\n throw new RangeError(\n `Monkeys locale \"${locale}\" is not a valid BCP 47 identifier.`,\n );\n }\n}\n\nfunction isRecord(value: unknown): value is Record<string, unknown> {\n return Boolean(value) && typeof value === 'object' && !Array.isArray(value);\n}\n\nfunction validateMessageOverride(\n value: unknown,\n schema: unknown,\n path: string,\n) {\n if (!isRecord(value) || !isRecord(schema)) {\n throw new TypeError(`${path} must be an object.`);\n }\n\n for (const [key, candidate] of Object.entries(value)) {\n if (candidate === undefined) continue;\n if (!(key in schema)) {\n throw new TypeError(`${path}.${key} is not a supported Monkeys message.`);\n }\n\n const expected = schema[key];\n const candidatePath = `${path}.${key}`;\n if (typeof expected === 'function') {\n if (typeof candidate !== 'function') {\n throw new TypeError(`${candidatePath} must be a function.`);\n }\n } else if (typeof expected === 'string') {\n if (typeof candidate !== 'string') {\n throw new TypeError(`${candidatePath} must be a string.`);\n }\n } else {\n validateMessageOverride(candidate, expected, candidatePath);\n }\n }\n}\n\nfunction assertMessagesOverride(\n value: unknown,\n path: string,\n): asserts value is MonkeysLocaleMessagesOverride {\n validateMessageOverride(value, enUS.messages, path);\n}\n\nfunction isBuiltInLocale(locale: string): locale is MonkeysBuiltInLocaleId {\n return locale === 'en-US' || locale === 'zh-CN';\n}\n\nfunction normalizeLocaleInput(input: MonkeysLocaleInput | undefined): {\n locale: string | undefined;\n messages: MonkeysLocaleMessagesOverride | undefined;\n hasExplicitLocale: boolean;\n} {\n if (input === undefined) {\n return {\n locale: undefined,\n messages: undefined,\n hasExplicitLocale: false,\n };\n }\n\n if (typeof input === 'string') {\n const locale = normalizeLocaleId(input);\n if (!isBuiltInLocale(locale)) {\n throw new RangeError(\n `Unsupported built-in Monkeys locale \"${locale}\". Provide a locale pack object for custom locales.`,\n );\n }\n return { locale, messages: undefined, hasExplicitLocale: true };\n }\n\n if (!input || typeof input !== 'object' || Array.isArray(input)) {\n throw new TypeError('Monkeys locale must be a locale id or locale pack object.');\n }\n\n const locale = normalizeLocaleId(input.locale);\n assertMessagesOverride(input.messages, 'Monkeys locale messages');\n\n return {\n locale,\n messages: input.messages,\n hasExplicitLocale: true,\n };\n}\n\nexport function mergeMonkeysLocaleMessages(\n base: MonkeysLocaleMessages,\n override?: MonkeysLocaleMessagesOverride,\n): MonkeysLocaleMessages {\n if (!override) return base;\n\n return {\n pagination: { ...base.pagination, ...override.pagination },\n dialog: { ...base.dialog, ...override.dialog },\n dropdownMenu: { ...base.dropdownMenu, ...override.dropdownMenu },\n loading: { ...base.loading, ...override.loading },\n layout: { ...base.layout, ...override.layout },\n steps: { ...base.steps, ...override.steps },\n numberInput: { ...base.numberInput, ...override.numberInput },\n passwordInput: { ...base.passwordInput, ...override.passwordInput },\n multiSelect: { ...base.multiSelect, ...override.multiSelect },\n table: { ...base.table, ...override.table },\n toolbar: {\n theme: { ...base.toolbar.theme, ...override.toolbar?.theme },\n language: { ...base.toolbar.language, ...override.toolbar?.language },\n },\n toast: { ...base.toast, ...override.toast },\n dataExplorer: {\n viewTree: {\n ...base.dataExplorer.viewTree,\n ...override.dataExplorer?.viewTree,\n },\n },\n workbench: {\n relationshipGraph: { zoomOut: 'Zoom out', zoomIn: 'Zoom in', zoomToFit: 'Fit graph', minimap: 'Graph overview', ...base.workbench.relationshipGraph, ...override.workbench?.relationshipGraph },\n collection: {\n ...base.workbench.collection,\n ...override.workbench?.collection,\n },\n interactiveTable: {\n ...base.workbench.interactiveTable,\n ...override.workbench?.interactiveTable,\n },\n },\n agentWorkbench: {\n ...base.agentWorkbench,\n ...override.agentWorkbench,\n modes: {\n ...base.agentWorkbench.modes,\n ...override.agentWorkbench?.modes,\n },\n composer: {\n ...base.agentWorkbench.composer,\n ...override.agentWorkbench?.composer,\n },\n quickStart: {\n ...base.agentWorkbench.quickStart,\n ...override.agentWorkbench?.quickStart,\n },\n tool: {\n ...base.agentWorkbench.tool,\n ...override.agentWorkbench?.tool,\n status: {\n ...base.agentWorkbench.tool.status,\n ...override.agentWorkbench?.tool?.status,\n },\n },\n approval: {\n ...base.agentWorkbench.approval,\n ...override.agentWorkbench?.approval,\n },\n artifact: {\n ...base.agentWorkbench.artifact,\n ...override.agentWorkbench?.artifact,\n },\n run: {\n ...base.agentWorkbench.run,\n ...override.agentWorkbench?.run,\n },\n process: {\n ...base.agentWorkbench.process,\n ...override.agentWorkbench?.process,\n },\n artifactWorkspace: {\n ...base.agentWorkbench.artifactWorkspace,\n ...override.agentWorkbench?.artifactWorkspace,\n },\n usage: {\n ...base.agentWorkbench.usage,\n ...override.agentWorkbench?.usage,\n },\n navigation: {\n ...base.agentWorkbench.navigation,\n ...override.agentWorkbench?.navigation,\n },\n details: {\n ...base.agentWorkbench.details,\n ...override.agentWorkbench?.details,\n tabs: {\n ...base.agentWorkbench.details.tabs,\n ...override.agentWorkbench?.details?.tabs,\n },\n status: {\n ...base.agentWorkbench.details.status,\n ...override.agentWorkbench?.details?.status,\n },\n state: {\n loading: {\n ...base.agentWorkbench.details.state.loading,\n ...override.agentWorkbench?.details?.state?.loading,\n },\n empty: {\n ...base.agentWorkbench.details.state.empty,\n ...override.agentWorkbench?.details?.state?.empty,\n },\n error: {\n ...base.agentWorkbench.details.state.error,\n ...override.agentWorkbench?.details?.state?.error,\n },\n },\n actions: {\n ...base.agentWorkbench.details.actions,\n ...override.agentWorkbench?.details?.actions,\n },\n workspace: {\n ...base.agentWorkbench.details.workspace,\n ...override.agentWorkbench?.details?.workspace,\n diffStatus: {\n ...base.agentWorkbench.details.workspace.diffStatus,\n ...override.agentWorkbench?.details?.workspace?.diffStatus,\n },\n fileOperation: {\n ...base.agentWorkbench.details.workspace.fileOperation,\n ...override.agentWorkbench?.details?.workspace?.fileOperation,\n },\n },\n },\n },\n };\n}\n\nexport const defaultMonkeysLocale: MonkeysResolvedLocale = {\n locale: enUS.locale,\n messages: mergeMonkeysLocaleMessages(\n enUS.messages as MonkeysLocaleMessages,\n ),\n};\n\nexport function resolveMonkeysLocale(\n input?: MonkeysLocaleInput,\n override?: MonkeysLocaleMessagesOverride,\n parent?: MonkeysResolvedLocale,\n): MonkeysResolvedLocale {\n if (override !== undefined) {\n assertMessagesOverride(override, 'MonkeysProvider messages');\n }\n const normalized = normalizeLocaleInput(input);\n const locale = normalized.locale ?? parent?.locale ?? enUS.locale;\n const builtInMessages = isBuiltInLocale(locale)\n ? BUILT_IN_LOCALES[locale].messages\n : undefined;\n let messages = mergeMonkeysLocaleMessages(\n enUS.messages as MonkeysLocaleMessages,\n builtInMessages,\n );\n\n if (parent && (!normalized.hasExplicitLocale || parent.locale === locale)) {\n messages = mergeMonkeysLocaleMessages(messages, parent.messages);\n }\n\n messages = mergeMonkeysLocaleMessages(messages, normalized.messages);\n messages = mergeMonkeysLocaleMessages(messages, override);\n\n return { locale, messages };\n}\n","import {\n createContext,\n useContext,\n useMemo,\n type Context,\n} from 'react';\n\nimport type { AssetIconResolver, AssetImageResolver } from '../components/base/BaseAssetIcon';\nimport type { BaseAppearance } from '../components/base/types';\nimport type { DataExplorerAppearance } from '../components/data-explorer/types';\nimport {\n defaultMonkeysLocale,\n type MonkeysLocaleMessages,\n type MonkeysResolvedLocale,\n} from '../locale';\nimport type { CompiledThemeTokens } from '../theme-system';\n\nexport type MonkeysDirection = 'ltr' | 'rtl';\n\nexport interface MonkeysEnvironment {\n getDocument?: () => Document | null;\n getWindow?: () => Window | null;\n}\n\nexport type MonkeysPortalContainer =\n | Element\n | null\n | (() => Element | null);\n\nexport interface MonkeysPortalOptions {\n container?: MonkeysPortalContainer;\n disabled?: boolean;\n}\n\nexport type MonkeysLoadingStateVariant = 'spinner' | 'skeleton';\nexport type MonkeysEmptyStateVariant = 'default' | 'compact';\nexport type MonkeysStatusStateDensity = 'compact' | 'default' | 'comfortable';\n\nexport type MonkeysListFooterPaginationMode = 'auto' | 'pages' | 'compact';\nexport type MonkeysListFooterAlignment = 'start' | 'end' | 'space-between';\n\nexport interface MonkeysListFooterConfig {\n showTotal?: boolean;\n showPageSize?: boolean;\n pageSizeOptions?: number[];\n paginationMode?: MonkeysListFooterPaginationMode;\n alignment?: MonkeysListFooterAlignment;\n density?: MonkeysStatusStateDensity;\n}\n\nexport interface MonkeysStatusStatesConfig {\n loading?: { variant?: MonkeysLoadingStateVariant };\n empty?: { variant?: MonkeysEmptyStateVariant };\n error?: { showRetry?: boolean };\n permission?: { showRequestAccess?: boolean };\n density?: MonkeysStatusStateDensity;\n}\n\nexport interface MonkeysComponentAttributes {\n dir?: MonkeysDirection;\n 'data-monkeys-direction'?: MonkeysDirection;\n 'data-monkeys-locale'?: string;\n 'data-monkeys-theme'?: string;\n 'data-monkeys-theme-mode'?: string;\n}\n\ninterface MonkeysLocaleContextValue extends MonkeysResolvedLocale {\n provided: boolean;\n}\n\ninterface MonkeysThemeContextValue {\n provided: boolean;\n resolvedTheme?: CompiledThemeTokens;\n themeId?: string;\n baseAppearance?: BaseAppearance;\n dataExplorerAppearance?: DataExplorerAppearance;\n statusStates?: MonkeysStatusStatesConfig;\n listFooter?: MonkeysListFooterConfig;\n}\n\ninterface MonkeysDirectionContextValue {\n provided: boolean;\n direction?: MonkeysDirection;\n}\n\ninterface MonkeysEnvironmentContextValue {\n provided: boolean;\n environment: MonkeysEnvironment;\n portal: MonkeysPortalOptions;\n iconResolver?: AssetIconResolver;\n imageResolver?: AssetImageResolver;\n}\n\nconst EMPTY_ENVIRONMENT = Object.freeze({}) satisfies MonkeysEnvironment;\nconst EMPTY_PORTAL = Object.freeze({}) satisfies MonkeysPortalOptions;\n\ninterface MonkeysProviderContexts {\n locale: Context<MonkeysLocaleContextValue>;\n theme: Context<MonkeysThemeContextValue>;\n direction: Context<MonkeysDirectionContextValue>;\n environment: Context<MonkeysEnvironmentContextValue>;\n}\n\n// Every bundled public entry contains this module. Keep only the Context\n// identities in a realm-wide registry so root, provider, and component\n// subpaths interoperate in both CJS and ESM builds. Provider values remain in\n// React trees, so SSR requests are isolated. Bump the contract key only when\n// these Context value shapes become intentionally incompatible.\nconst MONKEYS_PROVIDER_CONTEXTS_KEY = Symbol.for(\n '@inf-monkeys-tech/monkeys-design/provider-context@1',\n);\n\ntype MonkeysProviderContextHost = typeof globalThis & {\n [MONKEYS_PROVIDER_CONTEXTS_KEY]?: MonkeysProviderContexts;\n};\n\nfunction createMonkeysProviderContexts(): MonkeysProviderContexts {\n return Object.freeze({\n locale: createContext<MonkeysLocaleContextValue>({\n ...defaultMonkeysLocale,\n provided: false,\n }),\n theme: createContext<MonkeysThemeContextValue>({\n provided: false,\n }),\n direction: createContext<MonkeysDirectionContextValue>({\n provided: false,\n }),\n environment: createContext<MonkeysEnvironmentContextValue>({\n provided: false,\n environment: EMPTY_ENVIRONMENT,\n portal: EMPTY_PORTAL,\n }),\n });\n}\n\nfunction getMonkeysProviderContexts(): MonkeysProviderContexts {\n const host = globalThis as MonkeysProviderContextHost;\n const existing = host[MONKEYS_PROVIDER_CONTEXTS_KEY];\n if (existing) return existing;\n\n const contexts = createMonkeysProviderContexts();\n Object.defineProperty(host, MONKEYS_PROVIDER_CONTEXTS_KEY, {\n value: contexts,\n enumerable: false,\n configurable: false,\n writable: false,\n });\n return contexts;\n}\n\nconst providerContexts = getMonkeysProviderContexts();\n\nexport const MonkeysLocaleContext = providerContexts.locale;\n\nexport const MonkeysThemeContext = providerContexts.theme;\n\nexport const MonkeysDirectionContext = providerContexts.direction;\n\nexport const MonkeysEnvironmentContext = providerContexts.environment;\n\nfunction mergeAppearance<T extends { slots?: object; styles?: object }>(\n inherited: T | undefined,\n explicit: T | undefined,\n): T | undefined {\n if (explicit === undefined) return inherited;\n if (inherited === undefined) return explicit;\n\n return {\n ...inherited,\n ...explicit,\n slots:\n inherited.slots || explicit.slots\n ? { ...inherited.slots, ...explicit.slots }\n : undefined,\n styles:\n inherited.styles || explicit.styles\n ? { ...inherited.styles, ...explicit.styles }\n : undefined,\n };\n}\n\nexport function useMonkeysLocale() {\n try {\n const context = useContext(MonkeysLocaleContext);\n return context ?? { ...defaultMonkeysLocale, provided: false };\n } catch {\n return { ...defaultMonkeysLocale, provided: false };\n }\n}\n\nexport function useMonkeysLocaleMessages(): MonkeysLocaleMessages {\n return useContext(MonkeysLocaleContext).messages;\n}\n\nexport function useMonkeysResolvedTheme() {\n return useContext(MonkeysThemeContext).resolvedTheme;\n}\n\nexport function useMonkeysBaseAppearance(\n explicit?: BaseAppearance,\n): BaseAppearance | undefined {\n const inherited = useContext(MonkeysThemeContext).baseAppearance;\n return useMemo(\n () => mergeAppearance(inherited, explicit),\n [explicit, inherited],\n );\n}\n\nexport function useMonkeysDataExplorerAppearance(\n explicit?: DataExplorerAppearance,\n): DataExplorerAppearance | undefined {\n const inherited = useContext(MonkeysThemeContext).dataExplorerAppearance;\n return useMemo(\n () => mergeAppearance(inherited, explicit),\n [explicit, inherited],\n );\n}\n\nexport function useMonkeysStatusStates(): MonkeysStatusStatesConfig {\n return useContext(MonkeysThemeContext).statusStates ?? {};\n}\n\nexport function useMonkeysListFooter(): MonkeysListFooterConfig {\n return useContext(MonkeysThemeContext).listFooter ?? {};\n}\n\nexport function useMonkeysDirection() {\n return useContext(MonkeysDirectionContext).direction;\n}\n\nexport function useMonkeysEnvironment() {\n return useContext(MonkeysEnvironmentContext).environment;\n}\n\nexport function useMonkeysPortalOptions() {\n return useContext(MonkeysEnvironmentContext).portal;\n}\n\nexport function useMonkeysComponentAttributes(): MonkeysComponentAttributes {\n const locale = useContext(MonkeysLocaleContext);\n const theme = useContext(MonkeysThemeContext);\n const direction = useContext(MonkeysDirectionContext);\n const providerActive = locale.provided || theme.provided || direction.provided;\n\n return useMemo(\n () =>\n providerActive\n ? {\n dir: direction.direction,\n 'data-monkeys-direction': direction.direction,\n 'data-monkeys-locale': locale.locale,\n 'data-monkeys-theme': theme.themeId,\n 'data-monkeys-theme-mode': theme.resolvedTheme?.colorMode,\n }\n : {},\n [\n direction.direction,\n locale.locale,\n providerActive,\n theme.resolvedTheme?.colorMode,\n theme.themeId,\n ],\n );\n}\n\nexport function useMonkeysAssetIconResolver(): AssetIconResolver | undefined {\n return useContext(MonkeysEnvironmentContext).iconResolver;\n}\nexport function useMonkeysAssetImageResolver(): AssetImageResolver | undefined {\n return useContext(MonkeysEnvironmentContext).imageResolver;\n}\n","{\n \"seed\": {\n \"ui\": {\n \"color\": {\n \"page\": {\n \"$type\": \"color\",\n \"$value\": {\n \"colorSpace\": \"srgb\",\n \"components\": [\n 0.09019607843137255,\n 0.09803921568627451,\n 0.11372549019607843\n ],\n \"hex\": \"#17191D\"\n },\n \"$description\": \"租户颜色原始值\"\n },\n \"surface\": {\n \"$type\": \"color\",\n \"$value\": {\n \"colorSpace\": \"srgb\",\n \"components\": [\n 0.12549019607843137,\n 0.13725490196078433,\n 0.1607843137254902\n ],\n \"hex\": \"#202329\"\n },\n \"$description\": \"租户颜色原始值\"\n },\n \"elevated\": {\n \"$type\": \"color\",\n \"$value\": {\n \"colorSpace\": \"srgb\",\n \"components\": [\n 0.16470588235294117,\n 0.1803921568627451,\n 0.21176470588235294\n ],\n \"hex\": \"#2A2E36\"\n },\n \"$description\": \"租户颜色原始值\"\n },\n \"foreground\": {\n \"$type\": \"color\",\n \"$value\": {\n \"colorSpace\": \"srgb\",\n \"components\": [\n 0.9568627450980393,\n 0.9607843137254902,\n 0.9686274509803922\n ],\n \"hex\": \"#F4F5F7\"\n },\n \"$description\": \"租户颜色原始值\"\n },\n \"muted\": {\n \"$type\": \"color\",\n \"$value\": {\n \"colorSpace\": \"srgb\",\n \"components\": [\n 0.803921568627451,\n 0.8196078431372549,\n 0.8470588235294118\n ],\n \"hex\": \"#CDD1D8\"\n },\n \"$description\": \"租户颜色原始值\"\n },\n \"subtle\": {\n \"$type\": \"color\",\n \"$value\": {\n \"colorSpace\": \"srgb\",\n \"components\": [\n 0.7254901960784313,\n 0.7450980392156863,\n 0.7843137254901961\n ],\n \"hex\": \"#B9BEC8\"\n },\n \"$description\": \"租户颜色原始值\"\n },\n \"primary\": {\n \"$type\": \"color\",\n \"$value\": {\n \"colorSpace\": \"srgb\",\n \"components\": [\n 0.5490196078431373,\n 0.6039215686274509,\n 0.6666666666666666\n ],\n \"hex\": \"#8C9AAA\"\n },\n \"$description\": \"租户颜色原始值\"\n },\n \"lightEdgeBlue\": {\n \"$type\": \"color\",\n \"$value\": {\n \"colorSpace\": \"srgb\",\n \"components\": [\n 0.6549019607843137,\n 0.7098039215686275,\n 0.7843137254901961\n ],\n \"hex\": \"#A7B5C8\"\n },\n \"$description\": \"租户颜色原始值\"\n },\n \"primaryHover\": {\n \"$type\": \"color\",\n \"$value\": {\n \"colorSpace\": \"srgb\",\n \"components\": [\n 0.6784313725490196,\n 0.7254901960784313,\n 0.7803921568627451\n ],\n \"hex\": \"#ADB9C7\"\n },\n \"$description\": \"租户颜色原始值\"\n },\n \"violet\": {\n \"$type\": \"color\",\n \"$value\": {\n \"colorSpace\": \"srgb\",\n \"components\": [\n 0.6784313725490196,\n 0.7137254901960784,\n 0.7686274509803922\n ],\n \"hex\": \"#ADB6C4\"\n },\n \"$description\": \"租户颜色原始值\"\n },\n \"focus\": {\n \"$type\": \"color\",\n \"$value\": {\n \"colorSpace\": \"srgb\",\n \"components\": [\n 0.7647058823529411,\n 0.8235294117647058,\n 0.9098039215686274\n ],\n \"hex\": \"#C3D2E8\"\n },\n \"$description\": \"租户颜色原始值\"\n },\n \"danger\": {\n \"$type\": \"color\",\n \"$value\": {\n \"colorSpace\": \"srgb\",\n \"components\": [\n 0.9411764705882353,\n 0.5019607843137255,\n 0.5019607843137255\n ],\n \"hex\": \"#F08080\"\n },\n \"$description\": \"租户颜色原始值\"\n },\n \"dangerBackground\": {\n \"$type\": \"color\",\n \"$value\": {\n \"colorSpace\": \"srgb\",\n \"components\": [\n 0.6078431372549019,\n 0.1450980392156863,\n 0.1843137254901961\n ],\n \"hex\": \"#9B252F\"\n },\n \"$description\": \"租户颜色原始值\"\n },\n \"success\": {\n \"$type\": \"color\",\n \"$value\": {\n \"colorSpace\": \"srgb\",\n \"components\": [\n 0.5176470588235295,\n 0.8588235294117647,\n 0.6784313725490196\n ],\n \"hex\": \"#84DBAD\"\n },\n \"$description\": \"租户颜色原始值\"\n },\n \"control\": {\n \"$type\": \"color\",\n \"$value\": {\n \"colorSpace\": \"srgb\",\n \"components\": [\n 0.47058823529411764,\n 0.47058823529411764,\n 0.47058823529411764\n ],\n \"hex\": \"#787878\",\n \"alpha\": 0.2\n },\n \"$description\": \"租户颜色原始值\"\n },\n \"border\": {\n \"$type\": \"color\",\n \"$value\": {\n \"colorSpace\": \"srgb\",\n \"components\": [\n 0.7176470588235294,\n 0.7568627450980392,\n 0.8313725490196079\n ],\n \"hex\": \"#B7C1D4\",\n \"alpha\": 0.5\n },\n \"$description\": \"租户颜色原始值\"\n },\n \"info\": {\n \"$type\": \"color\",\n \"$value\": {\n \"colorSpace\": \"srgb\",\n \"components\": [\n 0,\n 0,\n 0\n ],\n \"hex\": \"#000000\",\n \"alpha\": 0.8\n },\n \"$description\": \"租户颜色原始值\"\n },\n \"previewInfo\": {\n \"$type\": \"color\",\n \"$value\": {\n \"colorSpace\": \"srgb\",\n \"components\": [\n 0,\n 0,\n 0\n ],\n \"hex\": \"#000000\",\n \"alpha\": 0.4\n },\n \"$description\": \"租户颜色原始值\"\n },\n \"blueGlow\": {\n \"$type\": \"color\",\n \"$value\": {\n \"colorSpace\": \"srgb\",\n \"components\": [\n 0.5215686274509804,\n 0.6,\n 0.7098039215686275\n ],\n \"hex\": \"#8599B5\",\n \"alpha\": 0.35\n },\n \"$description\": \"租户颜色原始值\"\n },\n \"violetGlow\": {\n \"$type\": \"color\",\n \"$value\": {\n \"colorSpace\": \"srgb\",\n \"components\": [\n 0.6431372549019608,\n 0.6901960784313725,\n 0.7686274509803922\n ],\n \"hex\": \"#A4B0C4\",\n \"alpha\": 0.5\n },\n \"$description\": \"租户颜色原始值\"\n },\n \"transparent\": {\n \"$type\": \"color\",\n \"$value\": {\n \"colorSpace\": \"srgb\",\n \"components\": [\n 0,\n 0,\n 0\n ],\n \"hex\": \"#000000\",\n \"alpha\": 0\n },\n \"$description\": \"租户颜色原始值\"\n },\n \"overlay\": {\n \"$type\": \"color\",\n \"$value\": {\n \"colorSpace\": \"srgb\",\n \"components\": [\n 0,\n 0,\n 0\n ],\n \"hex\": \"#000000\",\n \"alpha\": 0.65\n },\n \"$description\": \"租户颜色原始值\"\n },\n \"primaryAccessible\": {\n \"$type\": \"color\",\n \"$value\": {\n \"colorSpace\": \"srgb\",\n \"components\": [\n 0.3215686274509804,\n 0.396078431372549,\n 0.49019607843137253\n ],\n \"hex\": \"#52657D\"\n },\n \"$description\": \"租户颜色原始值\"\n },\n \"header\": {\n \"$type\": \"color\",\n \"$value\": {\n \"colorSpace\": \"srgb\",\n \"components\": [\n 0.21568627450980393,\n 0.2549019607843137,\n 0.3176470588235294\n ],\n \"hex\": \"#374151\"\n },\n \"$description\": \"租户颜色原始值\"\n },\n \"detail\": {\n \"$type\": \"color\",\n \"$value\": {\n \"colorSpace\": \"srgb\",\n \"components\": [\n 0,\n 0,\n 0\n ],\n \"hex\": \"#000000\"\n },\n \"$description\": \"租户颜色原始值\"\n },\n \"white\": {\n \"$type\": \"color\",\n \"$value\": {\n \"colorSpace\": \"srgb\",\n \"components\": [\n 1,\n 1,\n 1\n ],\n \"hex\": \"#FFFFFF\"\n },\n \"$description\": \"租户颜色原始值\"\n },\n \"black\": {\n \"$type\": \"color\",\n \"$value\": {\n \"colorSpace\": \"srgb\",\n \"components\": [\n 0,\n 0,\n 0\n ],\n \"hex\": \"#000000\"\n },\n \"$description\": \"租户颜色原始值\"\n }\n },\n \"radius\": {\n \"r16\": {\n \"$type\": \"dimension\",\n \"$value\": {\n \"value\": 16,\n \"unit\": \"px\"\n },\n \"$description\": \"公共圆角刻度\"\n },\n \"r24\": {\n \"$type\": \"dimension\",\n \"$value\": {\n \"value\": 24,\n \"unit\": \"px\"\n },\n \"$description\": \"公共圆角刻度\"\n },\n \"r12\": {\n \"$type\": \"dimension\",\n \"$value\": {\n \"value\": 12,\n \"unit\": \"px\"\n },\n \"$description\": \"公共圆角刻度\"\n },\n \"scale\": {\n \"s24\": {\n \"$type\": \"dimension\",\n \"$value\": \"{seed.ui.radius.r24}\",\n \"$description\": \"共享 radius.scale 刻度 24px\"\n },\n \"s999\": {\n \"$type\": \"dimension\",\n \"$value\": \"{seed.ui.radius.r999}\",\n \"$description\": \"共享 radius.scale 刻度 999px\"\n },\n \"s12\": {\n \"$type\": \"dimension\",\n \"$value\": \"{seed.ui.radius.r12}\",\n \"$description\": \"共享 radius.scale 刻度 12px\"\n },\n \"s8\": {\n \"$type\": \"dimension\",\n \"$value\": {\n \"value\": 8,\n \"unit\": \"px\"\n },\n \"$description\": \"共享 radius.scale 刻度 8px\"\n },\n \"s4\": {\n \"$type\": \"dimension\",\n \"$value\": {\n \"value\": 4,\n \"unit\": \"px\"\n },\n \"$description\": \"共享 radius.scale 刻度 4px\"\n },\n \"s16\": {\n \"$type\": \"dimension\",\n \"$value\": \"{seed.ui.radius.r16}\",\n \"$description\": \"共享 radius.scale 刻度 16px\"\n },\n \"s10\": {\n \"$type\": \"dimension\",\n \"$value\": {\n \"value\": 10,\n \"unit\": \"px\"\n },\n \"$description\": \"共享 radius.scale 刻度 10px\"\n },\n \"s20\": {\n \"$type\": \"dimension\",\n \"$value\": {\n \"value\": 20,\n \"unit\": \"px\"\n },\n \"$description\": \"共享 radius.scale 刻度 20px\"\n },\n \"s2\": {\n \"$type\": \"dimension\",\n \"$value\": {\n \"value\": 2,\n \"unit\": \"px\"\n },\n \"$description\": \"共享 radius.scale 刻度 2px\"\n },\n \"s18\": {\n \"$type\": \"dimension\",\n \"$value\": {\n \"value\": 18,\n \"unit\": \"px\"\n },\n \"$description\": \"共享 radius.scale 刻度 18px\"\n }\n },\n \"r999\": {\n \"$type\": \"dimension\",\n \"$value\": {\n \"value\": 999,\n \"unit\": \"px\"\n },\n \"$description\": \"公共圆角刻度\"\n }\n },\n \"typography\": {\n \"lineHeight\": {\n \"s1p5\": {\n \"$type\": \"number\",\n \"$value\": 1.5,\n \"$description\": \"共享 typography.lineHeight 刻度 1.5\"\n },\n \"s1p4\": {\n \"$type\": \"number\",\n \"$value\": 1.4,\n \"$description\": \"共享 typography.lineHeight 刻度 1.4\"\n },\n \"s1p3\": {\n \"$type\": \"number\",\n \"$value\": 1.3,\n \"$description\": \"共享 typography.lineHeight 刻度 1.3\"\n },\n \"s1p2\": {\n \"$type\": \"number\",\n \"$value\": 1.2,\n \"$description\": \"共享 typography.lineHeight 刻度 1.2\"\n }\n },\n \"weight\": {\n \"s500\": {\n \"$type\": \"number\",\n \"$value\": 500,\n \"$description\": \"共享 typography.weight 刻度 500\"\n },\n \"s600\": {\n \"$type\": \"number\",\n \"$value\": 600,\n \"$description\": \"共享 typography.weight 刻度 600\"\n },\n \"s700\": {\n \"$type\": \"number\",\n \"$value\": 700,\n \"$description\": \"共享 typography.weight 刻度 700\"\n },\n \"s800\": {\n \"$type\": \"number\",\n \"$value\": 800,\n \"$description\": \"共享 typography.weight 刻度 800\"\n },\n \"s200\": {\n \"$type\": \"number\",\n \"$value\": 200,\n \"$description\": \"共享 typography.weight 刻度 200\"\n },\n \"s400\": {\n \"$type\": \"number\",\n \"$value\": 400,\n \"$description\": \"共享 typography.weight 刻度 400\"\n }\n }\n },\n \"size\": {\n \"s2\": {\n \"$type\": \"dimension\",\n \"$value\": {\n \"value\": 2,\n \"unit\": \"px\"\n },\n \"$description\": \"共享 size 刻度 2px\"\n },\n \"s3\": {\n \"$type\": \"dimension\",\n \"$value\": {\n \"value\": 3,\n \"unit\": \"px\"\n },\n \"$description\": \"共享 size 刻度 3px\"\n },\n \"s1\": {\n \"$type\": \"dimension\",\n \"$value\": {\n \"value\": 1,\n \"unit\": \"px\"\n },\n \"$description\": \"共享 size 刻度 1px\"\n },\n \"s28\": {\n \"$type\": \"dimension\",\n \"$value\": {\n \"value\": 28,\n \"unit\": \"px\"\n },\n \"$description\": \"共享 size 刻度 28px\"\n },\n \"s42\": {\n \"$type\": \"dimension\",\n \"$value\": {\n \"value\": 42,\n \"unit\": \"px\"\n },\n \"$description\": \"共享 size 刻度 42px\"\n },\n \"s14\": {\n \"$type\": \"dimension\",\n \"$value\": {\n \"value\": 14,\n \"unit\": \"px\"\n },\n \"$description\": \"共享 size 刻度 14px\"\n },\n \"s24\": {\n \"$type\": \"dimension\",\n \"$value\": {\n \"value\": 24,\n \"unit\": \"px\"\n },\n \"$description\": \"共享 size 刻度 24px\"\n },\n \"s18\": {\n \"$type\": \"dimension\",\n \"$value\": {\n \"value\": 18,\n \"unit\": \"px\"\n },\n \"$description\": \"共享 size 刻度 18px\"\n },\n \"s40\": {\n \"$type\": \"dimension\",\n \"$value\": {\n \"value\": 40,\n \"unit\": \"px\"\n },\n \"$description\": \"共享 size 刻度 40px\"\n },\n \"s16\": {\n \"$type\": \"dimension\",\n \"$value\": {\n \"value\": 16,\n \"unit\": \"px\"\n },\n \"$description\": \"共享 size 刻度 16px\"\n },\n \"s20\": {\n \"$type\": \"dimension\",\n \"$value\": {\n \"value\": 20,\n \"unit\": \"px\"\n },\n \"$description\": \"共享 size 刻度 20px\"\n },\n \"s22\": {\n \"$type\": \"dimension\",\n \"$value\": {\n \"value\": 22,\n \"unit\": \"px\"\n },\n \"$description\": \"共享 size 刻度 22px\"\n },\n \"s140\": {\n \"$type\": \"dimension\",\n \"$value\": {\n \"value\": 140,\n \"unit\": \"px\"\n },\n \"$description\": \"共享 size 刻度 140px\"\n },\n \"s85\": {\n \"$type\": \"dimension\",\n \"$value\": {\n \"value\": 85,\n \"unit\": \"px\"\n },\n \"$description\": \"共享 size 刻度 85px\"\n },\n \"s34\": {\n \"$type\": \"dimension\",\n \"$value\": {\n \"value\": 34,\n \"unit\": \"px\"\n },\n \"$description\": \"共享 size 刻度 34px\"\n },\n \"s320\": {\n \"$type\": \"dimension\",\n \"$value\": {\n \"value\": 320,\n \"unit\": \"px\"\n },\n \"$description\": \"共享 size 刻度 320px\"\n },\n \"s160\": {\n \"$type\": \"dimension\",\n \"$value\": {\n \"value\": 160,\n \"unit\": \"px\"\n },\n \"$description\": \"共享 size 刻度 160px\"\n },\n \"s280\": {\n \"$type\": \"dimension\",\n \"$value\": {\n \"value\": 280,\n \"unit\": \"px\"\n },\n \"$description\": \"共享 size 刻度 280px\"\n },\n \"s32\": {\n \"$type\": \"dimension\",\n \"$value\": {\n \"value\": 32,\n \"unit\": \"px\"\n },\n \"$description\": \"共享 size 刻度 32px\"\n },\n \"s53\": {\n \"$type\": \"dimension\",\n \"$value\": {\n \"value\": 53,\n \"unit\": \"px\"\n },\n \"$description\": \"共享 size 刻度 53px\"\n },\n \"s26\": {\n \"$type\": \"dimension\",\n \"$value\": {\n \"value\": 26,\n \"unit\": \"px\"\n },\n \"$description\": \"共享 size 刻度 26px\"\n },\n \"s8\": {\n \"$type\": \"dimension\",\n \"$value\": {\n \"value\": 8,\n \"unit\": \"px\"\n },\n \"$description\": \"共享 size 刻度 8px\"\n },\n \"s62\": {\n \"$type\": \"dimension\",\n \"$value\": {\n \"value\": 62,\n \"unit\": \"px\"\n },\n \"$description\": \"共享 size 刻度 62px\"\n },\n \"s10\": {\n \"$type\": \"dimension\",\n \"$value\": {\n \"value\": 10,\n \"unit\": \"px\"\n },\n \"$description\": \"共享 size 刻度 10px\"\n },\n \"s4\": {\n \"$type\": \"dimension\",\n \"$value\": {\n \"value\": 4,\n \"unit\": \"px\"\n },\n \"$description\": \"共享 size 刻度 4px\"\n },\n \"s5\": {\n \"$type\": \"dimension\",\n \"$value\": {\n \"value\": 5,\n \"unit\": \"px\"\n },\n \"$description\": \"共享 size 刻度 5px\"\n },\n \"s196\": {\n \"$type\": \"dimension\",\n \"$value\": {\n \"value\": 196,\n \"unit\": \"px\"\n },\n \"$description\": \"共享 size 刻度 196px\"\n },\n \"s480\": {\n \"$type\": \"dimension\",\n \"$value\": {\n \"value\": 480,\n \"unit\": \"px\"\n },\n \"$description\": \"共享 size 刻度 480px\"\n },\n \"s1000\": {\n \"$type\": \"dimension\",\n \"$value\": {\n \"value\": 1000,\n \"unit\": \"px\"\n },\n \"$description\": \"共享 size 刻度 1000px\"\n },\n \"s660\": {\n \"$type\": \"dimension\",\n \"$value\": {\n \"value\": 660,\n \"unit\": \"px\"\n },\n \"$description\": \"共享 size 刻度 660px\"\n },\n \"s48\": {\n \"$type\": \"dimension\",\n \"$value\": {\n \"value\": 48,\n \"unit\": \"px\"\n },\n \"$description\": \"共享 size 刻度 48px\"\n },\n \"s100\": {\n \"$type\": \"dimension\",\n \"$value\": {\n \"value\": 100,\n \"unit\": \"px\"\n },\n \"$description\": \"共享 size 刻度 100px\"\n },\n \"s64\": {\n \"$type\": \"dimension\",\n \"$value\": {\n \"value\": 64,\n \"unit\": \"px\"\n },\n \"$description\": \"共享 size 刻度 64px\"\n },\n \"s12\": {\n \"$type\": \"dimension\",\n \"$value\": {\n \"value\": 12,\n \"unit\": \"px\"\n },\n \"$description\": \"共享 size 刻度 12px\"\n },\n \"s6\": {\n \"$type\": \"dimension\",\n \"$value\": {\n \"value\": 6,\n \"unit\": \"px\"\n },\n \"$description\": \"共享 size 刻度 6px\"\n },\n \"s168\": {\n \"$type\": \"dimension\",\n \"$value\": {\n \"value\": 168,\n \"unit\": \"px\"\n },\n \"$description\": \"共享 size 刻度 168px\"\n },\n \"s96\": {\n \"$type\": \"dimension\",\n \"$value\": {\n \"value\": 96,\n \"unit\": \"px\"\n },\n \"$description\": \"共享 size 刻度 96px\"\n },\n \"s56\": {\n \"$type\": \"dimension\",\n \"$value\": {\n \"value\": 56,\n \"unit\": \"px\"\n },\n \"$description\": \"共享 size 刻度 56px\"\n },\n \"s1p5\": {\n \"$type\": \"dimension\",\n \"$value\": {\n \"value\": 1.5,\n \"unit\": \"px\"\n },\n \"$description\": \"共享 size 刻度 1.5px\"\n },\n \"s220\": {\n \"$type\": \"dimension\",\n \"$value\": {\n \"value\": 220,\n \"unit\": \"px\"\n },\n \"$description\": \"共享 size 刻度 220px\"\n },\n \"s379\": {\n \"$type\": \"dimension\",\n \"$value\": {\n \"value\": 379,\n \"unit\": \"px\"\n },\n \"$description\": \"共享 size 刻度 379px\"\n },\n \"s68\": {\n \"$type\": \"dimension\",\n \"$value\": {\n \"value\": 68,\n \"unit\": \"px\"\n },\n \"$description\": \"共享 size 刻度 68px\"\n },\n \"s108\": {\n \"$type\": \"dimension\",\n \"$value\": {\n \"value\": 108,\n \"unit\": \"px\"\n },\n \"$description\": \"共享 size 刻度 108px\"\n },\n \"s70\": {\n \"$type\": \"dimension\",\n \"$value\": {\n \"value\": 70,\n \"unit\": \"px\"\n },\n \"$description\": \"共享 size 刻度 70px\"\n },\n \"s57\": {\n \"$type\": \"dimension\",\n \"$value\": {\n \"value\": 57,\n \"unit\": \"px\"\n },\n \"$description\": \"共享 size 刻度 57px\"\n },\n \"s15\": {\n \"$type\": \"dimension\",\n \"$value\": {\n \"value\": 15,\n \"unit\": \"px\"\n },\n \"$description\": \"共享 size 刻度 15px\"\n },\n \"s244\": {\n \"$type\": \"dimension\",\n \"$value\": {\n \"value\": 244,\n \"unit\": \"px\"\n },\n \"$description\": \"共享 size 刻度 244px\"\n },\n \"s78\": {\n \"$type\": \"dimension\",\n \"$value\": {\n \"value\": 78,\n \"unit\": \"px\"\n },\n \"$description\": \"共享 size 刻度 78px\"\n },\n \"s36\": {\n \"$type\": \"dimension\",\n \"$value\": {\n \"value\": 36,\n \"unit\": \"px\"\n },\n \"$description\": \"共享 size 刻度 36px\"\n },\n \"s23\": {\n \"$type\": \"dimension\",\n \"$value\": {\n \"value\": 23,\n \"unit\": \"px\"\n },\n \"$description\": \"共享 size 刻度 23px\"\n },\n \"s117\": {\n \"$type\": \"dimension\",\n \"$value\": {\n \"value\": 117,\n \"unit\": \"px\"\n },\n \"$description\": \"共享 size 刻度 117px\"\n },\n \"s110\": {\n \"$type\": \"dimension\",\n \"$value\": {\n \"value\": 110,\n \"unit\": \"px\"\n },\n \"$description\": \"共享 size 刻度 110px\"\n },\n \"s156\": {\n \"$type\": \"dimension\",\n \"$value\": {\n \"value\": 156,\n \"unit\": \"px\"\n },\n \"$description\": \"共享 size 刻度 156px\"\n },\n \"s125\": {\n \"$type\": \"dimension\",\n \"$value\": {\n \"value\": 125,\n \"unit\": \"px\"\n },\n \"$description\": \"共享 size 刻度 125px\"\n },\n \"s121\": {\n \"$type\": \"dimension\",\n \"$value\": {\n \"value\": 121,\n \"unit\": \"px\"\n },\n \"$description\": \"共享 size 刻度 121px\"\n },\n \"s127\": {\n \"$type\": \"dimension\",\n \"$value\": {\n \"value\": 127,\n \"unit\": \"px\"\n },\n \"$description\": \"共享 size 刻度 127px\"\n },\n \"s55\": {\n \"$type\": \"dimension\",\n \"$value\": {\n \"value\": 55,\n \"unit\": \"px\"\n },\n \"$description\": \"共享 size 刻度 55px\"\n },\n \"s178\": {\n \"$type\": \"dimension\",\n \"$value\": {\n \"value\": 178,\n \"unit\": \"px\"\n },\n \"$description\": \"共享 size 刻度 178px\"\n },\n \"s497\": {\n \"$type\": \"dimension\",\n \"$value\": {\n \"value\": 497,\n \"unit\": \"px\"\n },\n \"$description\": \"共享 size 刻度 497px\"\n },\n \"s37\": {\n \"$type\": \"dimension\",\n \"$value\": {\n \"value\": 37,\n \"unit\": \"px\"\n },\n \"$description\": \"共享 size 刻度 37px\"\n },\n \"s60\": {\n \"$type\": \"dimension\",\n \"$value\": {\n \"value\": 60,\n \"unit\": \"px\"\n },\n \"$description\": \"共享 size 刻度 60px\"\n },\n \"s7\": {\n \"$type\": \"dimension\",\n \"$value\": {\n \"value\": 7,\n \"unit\": \"px\"\n },\n \"$description\": \"共享 size 刻度 7px\"\n },\n \"s128\": {\n \"$type\": \"dimension\",\n \"$value\": {\n \"value\": 128,\n \"unit\": \"px\"\n },\n \"$description\": \"共享 size 刻度 128px\"\n },\n \"s290\": {\n \"$type\": \"dimension\",\n \"$value\": {\n \"value\": 290,\n \"unit\": \"px\"\n },\n \"$description\": \"共享 size 刻度 290px\"\n },\n \"s210\": {\n \"$type\": \"dimension\",\n \"$value\": {\n \"value\": 210,\n \"unit\": \"px\"\n },\n \"$description\": \"共享 size 刻度 210px\"\n },\n \"s231\": {\n \"$type\": \"dimension\",\n \"$value\": {\n \"value\": 231,\n \"unit\": \"px\"\n },\n \"$description\": \"共享 size 刻度 231px\"\n },\n \"s440\": {\n \"$type\": \"dimension\",\n \"$value\": {\n \"value\": 440,\n \"unit\": \"px\"\n },\n \"$description\": \"共享 size 刻度 440px\"\n },\n \"s9\": {\n \"$type\": \"dimension\",\n \"$value\": {\n \"value\": 9,\n \"unit\": \"px\"\n },\n \"$description\": \"共享 size 刻度 9px\"\n },\n \"s190\": {\n \"$type\": \"dimension\",\n \"$value\": {\n \"value\": 190,\n \"unit\": \"px\"\n },\n \"$description\": \"共享 size 刻度 190px\"\n },\n \"s130\": {\n \"$type\": \"dimension\",\n \"$value\": {\n \"value\": 130,\n \"unit\": \"px\"\n },\n \"$description\": \"共享 size 刻度 130px\"\n },\n \"s200\": {\n \"$type\": \"dimension\",\n \"$value\": {\n \"value\": 200,\n \"unit\": \"px\"\n },\n \"$description\": \"共享 size 刻度 200px\"\n },\n \"s150\": {\n \"$type\": \"dimension\",\n \"$value\": {\n \"value\": 150,\n \"unit\": \"px\"\n },\n \"$description\": \"共享 size 刻度 150px\"\n },\n \"s350\": {\n \"$type\": \"dimension\",\n \"$value\": {\n \"value\": 350,\n \"unit\": \"px\"\n },\n \"$description\": \"共享 size 刻度 350px\"\n },\n \"s493\": {\n \"$type\": \"dimension\",\n \"$value\": {\n \"value\": 493,\n \"unit\": \"px\"\n },\n \"$description\": \"共享 size 刻度 493px\"\n },\n \"s17\": {\n \"$type\": \"dimension\",\n \"$value\": {\n \"value\": 17,\n \"unit\": \"px\"\n },\n \"$description\": \"共享 size 刻度 17px\"\n }\n },\n \"space\": {\n \"s6\": {\n \"$type\": \"dimension\",\n \"$value\": {\n \"value\": 6,\n \"unit\": \"px\"\n },\n \"$description\": \"共享 space 刻度 6px\"\n },\n \"s18\": {\n \"$type\": \"dimension\",\n \"$value\": {\n \"value\": 18,\n \"unit\": \"px\"\n },\n \"$description\": \"共享 space 刻度 18px\"\n },\n \"s3\": {\n \"$type\": \"dimension\",\n \"$value\": {\n \"value\": 3,\n \"unit\": \"px\"\n },\n \"$description\": \"共享 space 刻度 3px\"\n },\n \"s10\": {\n \"$type\": \"dimension\",\n \"$value\": {\n \"value\": 10,\n \"unit\": \"px\"\n },\n \"$description\": \"共享 space 刻度 10px\"\n },\n \"s8\": {\n \"$type\": \"dimension\",\n \"$value\": {\n \"value\": 8,\n \"unit\": \"px\"\n },\n \"$description\": \"共享 space 刻度 8px\"\n },\n \"s22\": {\n \"$type\": \"dimension\",\n \"$value\": {\n \"value\": 22,\n \"unit\": \"px\"\n },\n \"$description\": \"共享 space 刻度 22px\"\n },\n \"s7\": {\n \"$type\": \"dimension\",\n \"$value\": {\n \"value\": 7,\n \"unit\": \"px\"\n },\n \"$description\": \"共享 space 刻度 7px\"\n },\n \"s14\": {\n \"$type\": \"dimension\",\n \"$value\": {\n \"value\": 14,\n \"unit\": \"px\"\n },\n \"$description\": \"共享 space 刻度 14px\"\n },\n \"s84\": {\n \"$type\": \"dimension\",\n \"$value\": {\n \"value\": 84,\n \"unit\": \"px\"\n },\n \"$description\": \"共享 space 刻度 84px\"\n },\n \"s4\": {\n \"$type\": \"dimension\",\n \"$value\": {\n \"value\": 4,\n \"unit\": \"px\"\n },\n \"$description\": \"共享 space 刻度 4px\"\n },\n \"s2\": {\n \"$type\": \"dimension\",\n \"$value\": {\n \"value\": 2,\n \"unit\": \"px\"\n },\n \"$description\": \"共享 space 刻度 2px\"\n },\n \"s12\": {\n \"$type\": \"dimension\",\n \"$value\": {\n \"value\": 12,\n \"unit\": \"px\"\n },\n \"$description\": \"共享 space 刻度 12px\"\n },\n \"s5\": {\n \"$type\": \"dimension\",\n \"$value\": {\n \"value\": 5,\n \"unit\": \"px\"\n },\n \"$description\": \"共享 space 刻度 5px\"\n },\n \"s26\": {\n \"$type\": \"dimension\",\n \"$value\": {\n \"value\": 26,\n \"unit\": \"px\"\n },\n \"$description\": \"共享 space 刻度 26px\"\n },\n \"s16\": {\n \"$type\": \"dimension\",\n \"$value\": {\n \"value\": 16,\n \"unit\": \"px\"\n },\n \"$description\": \"共享 space 刻度 16px\"\n },\n \"s24\": {\n \"$type\": \"dimension\",\n \"$value\": {\n \"value\": 24,\n \"unit\": \"px\"\n },\n \"$description\": \"共享 space 刻度 24px\"\n },\n \"s30\": {\n \"$type\": \"dimension\",\n \"$value\": {\n \"value\": 30,\n \"unit\": \"px\"\n },\n \"$description\": \"共享 space 刻度 30px\"\n },\n \"s1\": {\n \"$type\": \"dimension\",\n \"$value\": {\n \"value\": 1,\n \"unit\": \"px\"\n },\n \"$description\": \"共享 space 刻度 1px\"\n },\n \"s15\": {\n \"$type\": \"dimension\",\n \"$value\": {\n \"value\": 15,\n \"unit\": \"px\"\n },\n \"$description\": \"共享 space 刻度 15px\"\n },\n \"s13\": {\n \"$type\": \"dimension\",\n \"$value\": {\n \"value\": 13,\n \"unit\": \"px\"\n },\n \"$description\": \"共享 space 刻度 13px\"\n },\n \"s20\": {\n \"$type\": \"dimension\",\n \"$value\": {\n \"value\": 20,\n \"unit\": \"px\"\n },\n \"$description\": \"共享 space 刻度 20px\"\n },\n \"s29\": {\n \"$type\": \"dimension\",\n \"$value\": {\n \"value\": 29,\n \"unit\": \"px\"\n },\n \"$description\": \"共享 space 刻度 29px\"\n },\n \"s9\": {\n \"$type\": \"dimension\",\n \"$value\": {\n \"value\": 9,\n \"unit\": \"px\"\n },\n \"$description\": \"共享 space 刻度 9px\"\n },\n \"s11\": {\n \"$type\": \"dimension\",\n \"$value\": {\n \"value\": 11,\n \"unit\": \"px\"\n },\n \"$description\": \"共享 space 刻度 11px\"\n },\n \"s115\": {\n \"$type\": \"dimension\",\n \"$value\": {\n \"value\": 115,\n \"unit\": \"px\"\n },\n \"$description\": \"共享 space 刻度 115px\"\n },\n \"s34\": {\n \"$type\": \"dimension\",\n \"$value\": {\n \"value\": 34,\n \"unit\": \"px\"\n },\n \"$description\": \"共享 space 刻度 34px\"\n },\n \"s40\": {\n \"$type\": \"dimension\",\n \"$value\": {\n \"value\": 40,\n \"unit\": \"px\"\n },\n \"$description\": \"共享 space 刻度 40px\"\n },\n \"s28\": {\n \"$type\": \"dimension\",\n \"$value\": {\n \"value\": 28,\n \"unit\": \"px\"\n },\n \"$description\": \"共享 space 刻度 28px\"\n },\n \"s44\": {\n \"$type\": \"dimension\",\n \"$value\": {\n \"value\": 44,\n \"unit\": \"px\"\n },\n \"$description\": \"共享 space 刻度 44px\"\n },\n \"s23\": {\n \"$type\": \"dimension\",\n \"$value\": {\n \"value\": 23,\n \"unit\": \"px\"\n },\n \"$description\": \"共享 space 刻度 23px\"\n },\n \"s70\": {\n \"$type\": \"dimension\",\n \"$value\": {\n \"value\": 70,\n \"unit\": \"px\"\n },\n \"$description\": \"共享 space 刻度 70px\"\n },\n \"s25\": {\n \"$type\": \"dimension\",\n \"$value\": {\n \"value\": 25,\n \"unit\": \"px\"\n },\n \"$description\": \"共享 space 刻度 25px\"\n },\n \"s19\": {\n \"$type\": \"dimension\",\n \"$value\": {\n \"value\": 19,\n \"unit\": \"px\"\n },\n \"$description\": \"共享 space 刻度 19px\"\n },\n \"s47\": {\n \"$type\": \"dimension\",\n \"$value\": {\n \"value\": 47,\n \"unit\": \"px\"\n },\n \"$description\": \"共享 space 刻度 47px\"\n }\n },\n \"duration\": {\n \"s240\": {\n \"$type\": \"duration\",\n \"$value\": {\n \"value\": 240,\n \"unit\": \"ms\"\n },\n \"$description\": \"共享 duration 刻度 240ms\"\n },\n \"s800\": {\n \"$type\": \"duration\",\n \"$value\": {\n \"value\": 800,\n \"unit\": \"ms\"\n },\n \"$description\": \"共享 duration 刻度 800ms\"\n },\n \"s180\": {\n \"$type\": \"duration\",\n \"$value\": {\n \"value\": 180,\n \"unit\": \"ms\"\n },\n \"$description\": \"共享 duration 刻度 180ms\"\n },\n \"s140\": {\n \"$type\": \"duration\",\n \"$value\": {\n \"value\": 140,\n \"unit\": \"ms\"\n },\n \"$description\": \"共享 duration 刻度 140ms\"\n }\n },\n \"opacity\": {\n \"s0p65\": {\n \"$type\": \"number\",\n \"$value\": 0.65,\n \"$description\": \"共享 opacity 刻度 0.65\"\n },\n \"s0p5\": {\n \"$type\": \"number\",\n \"$value\": 0.5,\n \"$description\": \"共享 opacity 刻度 0.5\"\n },\n \"s0p8\": {\n \"$type\": \"number\",\n \"$value\": 0.8,\n \"$description\": \"共享 opacity 刻度 0.8\"\n },\n \"s0p4\": {\n \"$type\": \"number\",\n \"$value\": 0.4,\n \"$description\": \"共享 opacity 刻度 0.4\"\n }\n },\n \"shadowSize\": {\n \"s8\": {\n \"$type\": \"dimension\",\n \"$value\": {\n \"value\": 8,\n \"unit\": \"px\"\n },\n \"$description\": \"共享 shadowSize 刻度 8px\"\n },\n \"s20\": {\n \"$type\": \"dimension\",\n \"$value\": {\n \"value\": 20,\n \"unit\": \"px\"\n },\n \"$description\": \"共享 shadowSize 刻度 20px\"\n },\n \"s12\": {\n \"$type\": \"dimension\",\n \"$value\": {\n \"value\": 12,\n \"unit\": \"px\"\n },\n \"$description\": \"共享 shadowSize 刻度 12px\"\n },\n \"s1\": {\n \"$type\": \"dimension\",\n \"$value\": {\n \"value\": 1,\n \"unit\": \"px\"\n },\n \"$description\": \"共享 shadowSize 刻度 1px\"\n },\n \"s4\": {\n \"$type\": \"dimension\",\n \"$value\": {\n \"value\": 4,\n \"unit\": \"px\"\n },\n \"$description\": \"共享 shadowSize 刻度 4px\"\n },\n \"s10\": {\n \"$type\": \"dimension\",\n \"$value\": {\n \"value\": 10,\n \"unit\": \"px\"\n },\n \"$description\": \"共享 shadowSize 刻度 10px\"\n },\n \"s2\": {\n \"$type\": \"dimension\",\n \"$value\": {\n \"value\": 2,\n \"unit\": \"px\"\n },\n \"$description\": \"共享 shadowSize 刻度 2px\"\n },\n \"s36\": {\n \"$type\": \"dimension\",\n \"$value\": {\n \"value\": 36,\n \"unit\": \"px\"\n },\n \"$description\": \"共享 shadowSize 刻度 36px\"\n },\n \"s5\": {\n \"$type\": \"dimension\",\n \"$value\": {\n \"value\": 5,\n \"unit\": \"px\"\n },\n \"$description\": \"共享 shadowSize 刻度 5px\"\n },\n \"s3\": {\n \"$type\": \"dimension\",\n \"$value\": {\n \"value\": 3,\n \"unit\": \"px\"\n },\n \"$description\": \"共享 shadowSize 刻度 3px\"\n },\n \"s24\": {\n \"$type\": \"dimension\",\n \"$value\": {\n \"value\": 24,\n \"unit\": \"px\"\n },\n \"$description\": \"共享 shadowSize 刻度 24px\"\n },\n \"s80\": {\n \"$type\": \"dimension\",\n \"$value\": {\n \"value\": 80,\n \"unit\": \"px\"\n },\n \"$description\": \"共享 shadowSize 刻度 80px\"\n },\n \"s15\": {\n \"$type\": \"dimension\",\n \"$value\": {\n \"value\": 15,\n \"unit\": \"px\"\n },\n \"$description\": \"共享 shadowSize 刻度 15px\"\n },\n \"s28\": {\n \"$type\": \"dimension\",\n \"$value\": {\n \"value\": 28,\n \"unit\": \"px\"\n },\n \"$description\": \"共享 shadowSize 刻度 28px\"\n },\n \"s14\": {\n \"$type\": \"dimension\",\n \"$value\": {\n \"value\": 14,\n \"unit\": \"px\"\n },\n \"$description\": \"共享 shadowSize 刻度 14px\"\n },\n \"s6\": {\n \"$type\": \"dimension\",\n \"$value\": {\n \"value\": 6,\n \"unit\": \"px\"\n },\n \"$description\": \"共享 shadowSize 刻度 6px\"\n },\n \"s9\": {\n \"$type\": \"dimension\",\n \"$value\": {\n \"value\": 9,\n \"unit\": \"px\"\n },\n \"$description\": \"共享 shadowSize 刻度 9px\"\n },\n \"s0p5\": {\n \"$type\": \"dimension\",\n \"$value\": {\n \"value\": 0.5,\n \"unit\": \"px\"\n },\n \"$description\": \"共享 shadowSize 刻度 0.5px\"\n },\n \"s7\": {\n \"$type\": \"dimension\",\n \"$value\": {\n \"value\": 7,\n \"unit\": \"px\"\n },\n \"$description\": \"共享 shadowSize 刻度 7px\"\n }\n },\n \"layer\": {\n \"local\": {\n \"s2\": {\n \"$type\": \"number\",\n \"$value\": 2,\n \"$description\": \"共享 layer.local 刻度 2\"\n },\n \"s3\": {\n \"$type\": \"number\",\n \"$value\": 3,\n \"$description\": \"共享 layer.local 刻度 3\"\n },\n \"s1100\": {\n \"$type\": \"number\",\n \"$value\": 1100,\n \"$description\": \"共享 layer.local 刻度 1100\"\n },\n \"s5\": {\n \"$type\": \"number\",\n \"$value\": 5,\n \"$description\": \"共享 layer.local 刻度 5\"\n },\n \"s10\": {\n \"$type\": \"number\",\n \"$value\": 10,\n \"$description\": \"共享 layer.local 刻度 10\"\n }\n }\n },\n \"lineClamp\": {\n \"s4\": {\n \"$type\": \"number\",\n \"$value\": 4,\n \"$description\": \"共享 lineClamp 刻度 4\"\n },\n \"s2\": {\n \"$type\": \"number\",\n \"$value\": 2,\n \"$description\": \"共享 lineClamp 刻度 2\"\n }\n }\n }\n },\n \"semantic\": {\n \"color\": {\n \"surface\": {\n \"page\": {\n \"dark\": {\n \"$type\": \"color\",\n \"$value\": \"{seed.ui.color.page}\",\n \"$description\": \"surface.page,供组件共同引用\"\n }\n },\n \"default\": {\n \"dark\": {\n \"$type\": \"color\",\n \"$value\": \"{seed.ui.color.surface}\",\n \"$description\": \"surface.default,供组件共同引用\"\n }\n },\n \"raised\": {\n \"dark\": {\n \"$type\": \"color\",\n \"$value\": \"{seed.ui.color.elevated}\",\n \"$description\": \"surface.raised,供组件共同引用\"\n }\n },\n \"control\": {\n \"dark\": {\n \"$type\": \"color\",\n \"$value\": \"{seed.ui.color.control}\",\n \"$description\": \"surface.control,供组件共同引用\"\n }\n },\n \"header\": {\n \"dark\": {\n \"$type\": \"color\",\n \"$value\": \"{seed.ui.color.header}\",\n \"$description\": \"header-background\"\n }\n },\n \"detail\": {\n \"dark\": {\n \"$type\": \"color\",\n \"$value\": \"{seed.ui.color.detail}\",\n \"$description\": \"sidebar-background\"\n }\n }\n },\n \"text\": {\n \"primary\": {\n \"dark\": {\n \"$type\": \"color\",\n \"$value\": \"{seed.ui.color.foreground}\",\n \"$description\": \"text.primary,供组件共同引用\"\n }\n },\n \"secondary\": {\n \"dark\": {\n \"$type\": \"color\",\n \"$value\": \"{seed.ui.color.muted}\",\n \"$description\": \"text.secondary,供组件共同引用\"\n }\n },\n \"tertiary\": {\n \"dark\": {\n \"$type\": \"color\",\n \"$value\": \"{seed.ui.color.subtle}\",\n \"$description\": \"text.tertiary,供组件共同引用\"\n }\n },\n \"onAction\": {\n \"dark\": {\n \"$type\": \"color\",\n \"$value\": \"{semantic.color.text.primary.dark}\",\n \"$description\": \"主操作背景上的文字\"\n }\n }\n },\n \"brand\": {\n \"accent\": {\n \"dark\": {\n \"$type\": \"color\",\n \"$value\": \"{seed.ui.color.primary}\",\n \"$description\": \"brand.accent,供组件共同引用\"\n }\n },\n \"accentHover\": {\n \"dark\": {\n \"$type\": \"color\",\n \"$value\": \"{seed.ui.color.primaryHover}\",\n \"$description\": \"brand.accentHover,供组件共同引用\"\n }\n },\n \"secondary\": {\n \"dark\": {\n \"$type\": \"color\",\n \"$value\": \"{seed.ui.color.violet}\",\n \"$description\": \"brand.secondary,供组件共同引用\"\n }\n }\n },\n \"status\": {\n \"danger\": {\n \"dark\": {\n \"$type\": \"color\",\n \"$value\": \"{seed.ui.color.danger}\",\n \"$description\": \"status.danger,供组件共同引用\"\n }\n },\n \"dangerSurface\": {\n \"dark\": {\n \"$type\": \"color\",\n \"$value\": \"{seed.ui.color.dangerBackground}\",\n \"$description\": \"status.dangerSurface,供组件共同引用\"\n }\n },\n \"success\": {\n \"dark\": {\n \"$type\": \"color\",\n \"$value\": \"{seed.ui.color.success}\",\n \"$description\": \"status.success,供组件共同引用\"\n }\n }\n },\n \"border\": {\n \"default\": {\n \"dark\": {\n \"$type\": \"color\",\n \"$value\": \"{seed.ui.color.border}\",\n \"$description\": \"border.default,供组件共同引用\"\n }\n }\n },\n \"scrim\": {\n \"media\": {\n \"dark\": {\n \"$type\": \"color\",\n \"$value\": \"{seed.ui.color.info}\",\n \"$description\": \"scrim.media,供组件共同引用\"\n }\n },\n \"backdrop\": {\n \"dark\": {\n \"$type\": \"color\",\n \"$value\": \"{seed.ui.color.overlay}\",\n \"$description\": \"scrim.backdrop,供组件共同引用\"\n }\n },\n \"preview\": {\n \"dark\": {\n \"$type\": \"color\",\n \"$value\": {\n \"colorSpace\": \"srgb\",\n \"components\": [\n 0,\n 0,\n 0\n ],\n \"hex\": \"#000000\",\n \"alpha\": 0.65\n },\n \"$description\": \"租户颜色原始值\"\n }\n }\n },\n \"primary\": {\n \"dark\": {\n \"$type\": \"color\",\n \"$value\": \"{seed.ui.color.primaryAccessible}\",\n \"$description\": \"主操作色,需与 onAction 验证对比度\"\n }\n },\n \"focus\": {\n \"ring\": {\n \"dark\": {\n \"$type\": \"color\",\n \"$value\": \"{semantic.color.primary.dark}\",\n \"$description\": \"键盘焦点色,可独立覆盖\"\n }\n }\n },\n \"action\": {\n \"primaryHover\": {\n \"dark\": {\n \"$type\": \"color\",\n \"$value\": \"{semantic.color.primary.dark}\",\n \"$description\": \"主操作悬停状态\"\n }\n }\n },\n \"effect\": {\n \"start\": {\n \"dark\": {\n \"$type\": \"color\",\n \"$value\": \"{seed.ui.color.blueGlow}\",\n \"$description\": \"特效色源;Shader 使用纯色与独立强度\"\n }\n },\n \"end\": {\n \"dark\": {\n \"$type\": \"color\",\n \"$value\": \"{seed.ui.color.violetGlow}\",\n \"$description\": \"特效色源;Shader 使用纯色与独立强度\"\n }\n },\n \"lightEdgeStart\": {\n \"dark\": {\n \"$type\": \"color\",\n \"$value\": \"{seed.ui.color.lightEdgeBlue}\",\n \"$description\": \"特效色源;Shader 使用纯色与独立强度\"\n }\n }\n },\n \"sample\": {\n \"inkLight\": {\n \"$type\": \"color\",\n \"$value\": \"{seed.ui.color.white}\",\n \"$description\": \"sample-ink-light\"\n },\n \"inkDark\": {\n \"$type\": \"color\",\n \"$value\": \"{seed.ui.color.black}\",\n \"$description\": \"sample-ink-dark\"\n }\n }\n },\n \"font\": {\n \"body\": {\n \"$type\": \"fontFamily\",\n \"$value\": [\n \"system-ui\",\n \"sans-serif\"\n ],\n \"$description\": \"正文与控件字体\"\n },\n \"size\": {\n \"xs\": {\n \"$type\": \"dimension\",\n \"$value\": {\n \"value\": 12,\n \"unit\": \"px\"\n },\n \"$description\": \"共享 typography.size 刻度 12px\"\n },\n \"ui11\": {\n \"$type\": \"dimension\",\n \"$value\": {\n \"value\": 11,\n \"unit\": \"px\"\n },\n \"$description\": \"共享 typography.size 刻度 11px\"\n },\n \"ui17\": {\n \"$type\": \"dimension\",\n \"$value\": {\n \"value\": 17,\n \"unit\": \"px\"\n },\n \"$description\": \"共享 typography.size 刻度 17px\"\n },\n \"sm\": {\n \"$type\": \"dimension\",\n \"$value\": {\n \"value\": 14,\n \"unit\": \"px\"\n },\n \"$description\": \"共享 typography.size 刻度 14px\"\n },\n \"ui22\": {\n \"$type\": \"dimension\",\n \"$value\": {\n \"value\": 22,\n \"unit\": \"px\"\n },\n \"$description\": \"共享 typography.size 刻度 22px\"\n },\n \"xl\": {\n \"$type\": \"dimension\",\n \"$value\": {\n \"value\": 20,\n \"unit\": \"px\"\n },\n \"$description\": \"共享 typography.size 刻度 20px\"\n },\n \"ui10\": {\n \"$type\": \"dimension\",\n \"$value\": {\n \"value\": 10,\n \"unit\": \"px\"\n },\n \"$description\": \"共享 typography.size 刻度 10px\"\n },\n \"lg\": {\n \"$type\": \"dimension\",\n \"$value\": {\n \"value\": 18,\n \"unit\": \"px\"\n },\n \"$description\": \"共享 typography.size 刻度 18px\"\n },\n \"ui28\": {\n \"$type\": \"dimension\",\n \"$value\": {\n \"value\": 28,\n \"unit\": \"px\"\n },\n \"$description\": \"共享 typography.size 刻度 28px\"\n },\n \"ui42\": {\n \"$type\": \"dimension\",\n \"$value\": {\n \"value\": 42,\n \"unit\": \"px\"\n },\n \"$description\": \"共享 typography.size 刻度 42px\"\n },\n \"base\": {\n \"$type\": \"dimension\",\n \"$value\": {\n \"value\": 16,\n \"unit\": \"px\"\n },\n \"$description\": \"共享 typography.size 刻度 16px\"\n },\n \"ui15\": {\n \"$type\": \"dimension\",\n \"$value\": {\n \"value\": 15,\n \"unit\": \"px\"\n },\n \"$description\": \"共享 typography.size 刻度 15px\"\n },\n \"ui21\": {\n \"$type\": \"dimension\",\n \"$value\": {\n \"value\": 21,\n \"unit\": \"px\"\n },\n \"$description\": \"共享 typography.size 刻度 21px\"\n },\n \"ui13\": {\n \"$type\": \"dimension\",\n \"$value\": {\n \"value\": 13,\n \"unit\": \"px\"\n },\n \"$description\": \"共享 typography.size 刻度 13px\"\n },\n \"4xl\": {\n \"$type\": \"dimension\",\n \"$value\": {\n \"value\": 36,\n \"unit\": \"px\"\n },\n \"$description\": \"共享 typography.size 刻度 36px\"\n },\n \"3xl\": {\n \"$type\": \"dimension\",\n \"$value\": {\n \"value\": 30,\n \"unit\": \"px\"\n },\n \"$description\": \"共享 typography.size 刻度 30px\"\n },\n \"ui9\": {\n \"$type\": \"dimension\",\n \"$value\": {\n \"value\": 9,\n \"unit\": \"px\"\n },\n \"$description\": \"共享 typography.size 刻度 9px\"\n }\n }\n },\n \"ui\": {\n \"control\": {\n \"height\": {\n \"sm\": {\n \"$type\": \"dimension\",\n \"$value\": {\n \"value\": 28,\n \"unit\": \"px\"\n },\n \"$description\": \"sm 控件高度\"\n },\n \"md\": {\n \"$type\": \"dimension\",\n \"$value\": {\n \"value\": 34,\n \"unit\": \"px\"\n },\n \"$description\": \"md 控件高度\"\n },\n \"lg\": {\n \"$type\": \"dimension\",\n \"$value\": {\n \"value\": 42,\n \"unit\": \"px\"\n },\n \"$description\": \"lg 控件高度\"\n }\n },\n \"paddingInline\": {\n \"sm\": {\n \"$type\": \"dimension\",\n \"$value\": \"{seed.ui.space.s10}\",\n \"$description\": \"sm 控件横向留白\"\n },\n \"md\": {\n \"$type\": \"dimension\",\n \"$value\": \"{seed.ui.space.s18}\",\n \"$description\": \"md 控件横向留白\"\n },\n \"lg\": {\n \"$type\": \"dimension\",\n \"$value\": \"{seed.ui.space.s22}\",\n \"$description\": \"lg 控件横向留白\"\n }\n }\n },\n \"radius\": {\n \"control\": {\n \"$type\": \"dimension\",\n \"$value\": \"{seed.ui.radius.r24}\",\n \"$description\": \"control 圆角语义,可独立覆盖\"\n },\n \"container\": {\n \"$type\": \"dimension\",\n \"$value\": \"{seed.ui.radius.r16}\",\n \"$description\": \"container 圆角语义,可独立覆盖\"\n },\n \"content\": {\n \"$type\": \"dimension\",\n \"$value\": \"{seed.ui.radius.r12}\",\n \"$description\": \"content 圆角语义,可独立覆盖\"\n },\n \"pill\": {\n \"$type\": \"dimension\",\n \"$value\": \"{seed.ui.radius.r999}\",\n \"$description\": \"pill 圆角语义,可独立覆盖\"\n }\n },\n \"spacing\": {\n \"fieldGap\": {\n \"$type\": \"dimension\",\n \"$value\": \"{seed.ui.space.s6}\",\n \"$description\": \"fieldGap 共享间距\"\n },\n \"controlGap\": {\n \"$type\": \"dimension\",\n \"$value\": \"{seed.ui.space.s6}\",\n \"$description\": \"controlGap 共享间距\"\n },\n \"sectionGap\": {\n \"$type\": \"dimension\",\n \"$value\": \"{seed.ui.space.s24}\",\n \"$description\": \"sectionGap 共享间距\"\n },\n \"surfacePadding\": {\n \"$type\": \"dimension\",\n \"$value\": \"{seed.ui.space.s16}\",\n \"$description\": \"surfacePadding 共享间距\"\n },\n \"pagePadding\": {\n \"$type\": \"dimension\",\n \"$value\": \"{seed.ui.space.s14}\",\n \"$description\": \"pagePadding 共享间距\"\n }\n },\n \"icon\": {\n \"size\": {\n \"sm\": {\n \"$type\": \"dimension\",\n \"$value\": \"{seed.ui.size.s14}\",\n \"$description\": \"sm 图标尺寸\"\n },\n \"md\": {\n \"$type\": \"dimension\",\n \"$value\": \"{seed.ui.size.s16}\",\n \"$description\": \"md 图标尺寸\"\n },\n \"lg\": {\n \"$type\": \"dimension\",\n \"$value\": \"{seed.ui.size.s20}\",\n \"$description\": \"lg 图标尺寸\"\n },\n \"xl\": {\n \"$type\": \"dimension\",\n \"$value\": \"{seed.ui.size.s24}\",\n \"$description\": \"xl 图标尺寸\"\n }\n },\n \"target\": {\n \"sm\": {\n \"$type\": \"dimension\",\n \"$value\": \"{seed.ui.size.s24}\",\n \"$description\": \"sm 图标点击区域\"\n },\n \"md\": {\n \"$type\": \"dimension\",\n \"$value\": \"{seed.ui.size.s28}\",\n \"$description\": \"md 图标点击区域\"\n },\n \"lg\": {\n \"$type\": \"dimension\",\n \"$value\": \"{seed.ui.size.s36}\",\n \"$description\": \"lg 图标点击区域\"\n }\n }\n },\n \"opacity\": {\n \"disabled\": {\n \"$type\": \"number\",\n \"$value\": 0.5,\n \"$description\": \"disabled 共享状态透明度\"\n },\n \"busy\": {\n \"$type\": \"number\",\n \"$value\": 0.8,\n \"$description\": \"busy 共享状态透明度\"\n }\n },\n \"motion\": {\n \"pressDuration\": {\n \"$type\": \"duration\",\n \"$value\": \"{seed.ui.duration.s140}\",\n \"$description\": \"pressDuration 动效时长\"\n },\n \"popupDuration\": {\n \"$type\": \"duration\",\n \"$value\": \"{seed.ui.duration.s180}\",\n \"$description\": \"popupDuration 动效时长\"\n },\n \"revealDuration\": {\n \"$type\": \"duration\",\n \"$value\": \"{seed.ui.duration.s240}\",\n \"$description\": \"revealDuration 动效时长\"\n },\n \"spinnerDuration\": {\n \"$type\": \"duration\",\n \"$value\": \"{seed.ui.duration.s800}\",\n \"$description\": \"spinnerDuration 动效时长\"\n },\n \"pressedScale\": {\n \"$type\": \"number\",\n \"$value\": 0.97,\n \"$description\": \"按下与浮层进入缩放\"\n },\n \"hoverBrightness\": {\n \"$type\": \"number\",\n \"$value\": 1.14,\n \"$description\": \"按钮悬停亮度\"\n }\n },\n \"glass\": {\n \"blur\": {\n \"$type\": \"dimension\",\n \"$value\": {\n \"value\": 14,\n \"unit\": \"px\"\n },\n \"$description\": \"通用毛玻璃模糊半径\"\n },\n \"saturation\": {\n \"$type\": \"number\",\n \"$value\": 1.25,\n \"$description\": \"通用毛玻璃饱和度\"\n }\n }\n }\n },\n \"component\": {\n \"ui\": {\n \"page\": {\n \"$type\": \"color\",\n \"$value\": \"{semantic.color.surface.page.dark}\",\n \"$description\": \"surface.page(兼容 CSS 变量)\"\n },\n \"surface\": {\n \"$type\": \"color\",\n \"$value\": \"{semantic.color.surface.default.dark}\",\n \"$description\": \"surface.default(兼容 CSS 变量)\"\n },\n \"elevated\": {\n \"$type\": \"color\",\n \"$value\": \"{semantic.color.surface.raised.dark}\",\n \"$description\": \"surface.raised(兼容 CSS 变量)\"\n },\n \"control\": {\n \"$type\": \"color\",\n \"$value\": \"{semantic.color.surface.control.dark}\",\n \"$description\": \"surface.control(兼容 CSS 变量)\"\n },\n \"foreground\": {\n \"$type\": \"color\",\n \"$value\": \"{semantic.color.text.primary.dark}\",\n \"$description\": \"text.primary(兼容 CSS 变量)\"\n },\n \"muted\": {\n \"$type\": \"color\",\n \"$value\": \"{semantic.color.text.secondary.dark}\",\n \"$description\": \"text.secondary(兼容 CSS 变量)\"\n },\n \"subtle\": {\n \"$type\": \"color\",\n \"$value\": \"{semantic.color.text.tertiary.dark}\",\n \"$description\": \"text.tertiary(兼容 CSS 变量)\"\n },\n \"primary\": {\n \"$type\": \"color\",\n \"$value\": \"{semantic.color.brand.accent.dark}\",\n \"$description\": \"brand.accent(兼容 CSS 变量)\"\n },\n \"primaryHover\": {\n \"$type\": \"color\",\n \"$value\": \"{semantic.color.brand.accentHover.dark}\",\n \"$description\": \"brand.accentHover(兼容 CSS 变量)\"\n },\n \"violet\": {\n \"$type\": \"color\",\n \"$value\": \"{semantic.color.brand.secondary.dark}\",\n \"$description\": \"brand.secondary(兼容 CSS 变量)\"\n },\n \"danger\": {\n \"$type\": \"color\",\n \"$value\": \"{semantic.color.status.danger.dark}\",\n \"$description\": \"status.danger(兼容 CSS 变量)\"\n },\n \"dangerBackground\": {\n \"$type\": \"color\",\n \"$value\": \"{semantic.color.status.dangerSurface.dark}\",\n \"$description\": \"status.dangerSurface(兼容 CSS 变量)\"\n },\n \"success\": {\n \"$type\": \"color\",\n \"$value\": \"{semantic.color.status.success.dark}\",\n \"$description\": \"status.success(兼容 CSS 变量)\"\n },\n \"border\": {\n \"$type\": \"color\",\n \"$value\": \"{semantic.color.border.default.dark}\",\n \"$description\": \"border.default(兼容 CSS 变量)\"\n },\n \"info\": {\n \"$type\": \"color\",\n \"$value\": \"{semantic.color.scrim.media.dark}\",\n \"$description\": \"scrim.media(兼容 CSS 变量)\"\n },\n \"overlay\": {\n \"$type\": \"color\",\n \"$value\": \"{semantic.color.scrim.backdrop.dark}\",\n \"$description\": \"scrim.backdrop(兼容 CSS 变量)\"\n },\n \"focus\": {\n \"$type\": \"color\",\n \"$value\": \"{semantic.color.focus.ring.dark}\",\n \"$description\": \"焦点环与聚焦描边\"\n },\n \"button\": {\n \"primary\": {\n \"background\": {\n \"$type\": \"color\",\n \"$value\": \"{semantic.color.primary.dark}\",\n \"$description\": \"主按钮背景\"\n },\n \"hover\": {\n \"$type\": \"color\",\n \"$value\": \"{semantic.color.action.primaryHover.dark}\",\n \"$description\": \"主按钮悬停背景\"\n },\n \"foreground\": {\n \"$type\": \"color\",\n \"$value\": \"{semantic.color.text.onAction.dark}\",\n \"$description\": \"主操作文字\"\n }\n },\n \"height\": {\n \"sm\": {\n \"$type\": \"dimension\",\n \"$value\": {\n \"value\": 28,\n \"unit\": \"px\"\n },\n \"$description\": \".monkeys-ui-button[data-size=sm] min-height\"\n },\n \"lg\": {\n \"$type\": \"dimension\",\n \"$value\": {\n \"value\": 42,\n \"unit\": \"px\"\n },\n \"$description\": \".monkeys-ui-button[data-size=lg] min-height\"\n }\n },\n \"glass\": {\n \"blur\": {\n \"$type\": \"dimension\",\n \"$value\": \"{semantic.ui.glass.blur}\",\n \"$description\": \"Inner Light Edge 按钮玻璃 blur\"\n },\n \"saturation\": {\n \"$type\": \"number\",\n \"$value\": \"{semantic.ui.glass.saturation}\",\n \"$description\": \"Inner Light Edge 按钮玻璃 saturation\"\n }\n },\n \"gap\": {\n \"$type\": \"dimension\",\n \"$value\": \"{semantic.ui.spacing.controlGap}\",\n \"$description\": \"button gap 独立覆盖入口\"\n },\n \"paddingInline\": {\n \"sm\": {\n \"$type\": \"dimension\",\n \"$value\": \"{semantic.ui.control.paddingInline.sm}\",\n \"$description\": \"button paddingInline.sm 独立覆盖入口\"\n },\n \"md\": {\n \"$type\": \"dimension\",\n \"$value\": \"{semantic.ui.control.paddingInline.md}\",\n \"$description\": \"button paddingInline.md 独立覆盖入口\"\n },\n \"lg\": {\n \"$type\": \"dimension\",\n \"$value\": \"{semantic.ui.control.paddingInline.lg}\",\n \"$description\": \"button paddingInline.lg 独立覆盖入口\"\n }\n },\n \"paddingBlock\": {\n \"$type\": \"dimension\",\n \"$value\": \"{component.ui.density.default.buttonPaddingBlock}\",\n \"$description\": \"默认按钮纵向留白;尺寸变体可覆盖\"\n }\n },\n \"transparent\": {\n \"$type\": \"color\",\n \"$value\": \"{seed.ui.color.transparent}\",\n \"$description\": \"transparent\"\n },\n \"header-background\": {\n \"$type\": \"color\",\n \"$value\": \"{semantic.color.surface.header.dark}\",\n \"$description\": \"兼容颜色出口\"\n },\n \"sidebar-background\": {\n \"$type\": \"color\",\n \"$value\": \"{semantic.color.surface.detail.dark}\",\n \"$description\": \"兼容颜色出口\"\n },\n \"sample-ink-light\": {\n \"$type\": \"color\",\n \"$value\": \"{semantic.color.sample.inkLight}\",\n \"$description\": \"兼容颜色出口\"\n },\n \"sample-ink-dark\": {\n \"$type\": \"color\",\n \"$value\": \"{semantic.color.sample.inkDark}\",\n \"$description\": \"兼容颜色出口\"\n },\n \"previewInfo\": {\n \"$type\": \"color\",\n \"$value\": \"{semantic.color.scrim.preview.dark}\",\n \"$description\": \"预览信息表面;保留当前 65% alpha\"\n },\n \"blueGlow\": {\n \"$type\": \"color\",\n \"$value\": \"{seed.ui.color.blueGlow}\",\n \"$description\": \"装饰色与透明度,Shader 另取纯色\"\n },\n \"violetGlow\": {\n \"$type\": \"color\",\n \"$value\": \"{seed.ui.color.violetGlow}\",\n \"$description\": \"装饰色与透明度,Shader 另取纯色\"\n },\n \"font\": {\n \"$type\": \"fontFamily\",\n \"$value\": \"{semantic.font.body}\",\n \"$description\": \"字体兼容入口\"\n },\n \"radius\": {\n \"panel\": {\n \"$type\": \"dimension\",\n \"$value\": \"{semantic.ui.radius.container}\",\n \"$description\": \"panel 圆角出口\"\n },\n \"card\": {\n \"$type\": \"dimension\",\n \"$value\": \"{semantic.ui.radius.container}\",\n \"$description\": \"card 圆角出口\"\n },\n \"control\": {\n \"$type\": \"dimension\",\n \"$value\": \"{semantic.ui.radius.control}\",\n \"$description\": \"control 圆角出口\"\n },\n \"info\": {\n \"$type\": \"dimension\",\n \"$value\": \"{semantic.ui.radius.content}\",\n \"$description\": \"info 圆角出口\"\n },\n \"scale\": {\n \"s24\": {\n \"$type\": \"dimension\",\n \"$value\": \"{seed.ui.radius.r24}\",\n \"$description\": \"共享圆角刻度\"\n },\n \"s999\": {\n \"$type\": \"dimension\",\n \"$value\": \"{seed.ui.radius.r999}\",\n \"$description\": \"共享圆角刻度\"\n },\n \"s12\": {\n \"$type\": \"dimension\",\n \"$value\": \"{seed.ui.radius.r12}\",\n \"$description\": \"共享圆角刻度\"\n },\n \"s8\": {\n \"$type\": \"dimension\",\n \"$value\": \"{seed.ui.radius.scale.s8}\",\n \"$description\": \"radius.scale 共享刻度,合并重复值\"\n },\n \"s4\": {\n \"$type\": \"dimension\",\n \"$value\": \"{seed.ui.radius.scale.s4}\",\n \"$description\": \"radius.scale 共享刻度,合并重复值\"\n },\n \"s16\": {\n \"$type\": \"dimension\",\n \"$value\": \"{seed.ui.radius.r16}\",\n \"$description\": \"共享圆角刻度\"\n },\n \"s10\": {\n \"$type\": \"dimension\",\n \"$value\": \"{seed.ui.radius.scale.s10}\",\n \"$description\": \"radius.scale 共享刻度,合并重复值\"\n },\n \"s20\": {\n \"$type\": \"dimension\",\n \"$value\": \"{seed.ui.radius.scale.s20}\",\n \"$description\": \"radius.scale 共享刻度,合并重复值\"\n },\n \"s2\": {\n \"$type\": \"dimension\",\n \"$value\": \"{seed.ui.radius.scale.s2}\",\n \"$description\": \"radius.scale 共享刻度,合并重复值\"\n },\n \"s18\": {\n \"$type\": \"dimension\",\n \"$value\": \"{seed.ui.radius.scale.s18}\",\n \"$description\": \"radius.scale 共享刻度,合并重复值\"\n }\n }\n },\n \"motion\": {\n \"press\": {\n \"$type\": \"duration\",\n \"$value\": \"{semantic.ui.motion.pressDuration}\",\n \"$description\": \"兼容按下时长\"\n },\n \"popup\": {\n \"$type\": \"duration\",\n \"$value\": \"{semantic.ui.motion.popupDuration}\",\n \"$description\": \"兼容浮层时长\"\n },\n \"ease\": {\n \"$type\": \"cubicBezier\",\n \"$value\": [\n 0.2,\n 0.8,\n 0.2,\n 1\n ],\n \"$description\": \"component.ui.motion.ease\"\n },\n \"pressedScale\": {\n \"$type\": \"number\",\n \"$value\": \"{semantic.ui.motion.pressedScale}\",\n \"$description\": \"按钮与浮层缩放\"\n },\n \"hoverBrightness\": {\n \"$type\": \"number\",\n \"$value\": \"{semantic.ui.motion.hoverBrightness}\",\n \"$description\": \"按钮悬停亮度\"\n }\n },\n \"controlHeight\": {\n \"$type\": \"dimension\",\n \"$value\": \"{semantic.ui.control.height.md}\",\n \"$description\": \"常规控件高度兼容入口\"\n },\n \"layout\": {\n \"stackGap\": {\n \"$type\": \"dimension\",\n \"$value\": \"{seed.ui.space.s16}\",\n \"$description\": \"stackGap 布局默认值;实例属性优先\"\n },\n \"sidebarWidth\": {\n \"$type\": \"dimension\",\n \"$value\": {\n \"value\": 252,\n \"unit\": \"px\"\n },\n \"$description\": \"sidebarWidth 布局默认值;实例属性优先\"\n },\n \"cardMinWidth\": {\n \"$type\": \"dimension\",\n \"$value\": {\n \"value\": 178,\n \"unit\": \"px\"\n },\n \"$description\": \"cardMinWidth 布局默认值;实例属性优先\"\n },\n \"gridGap\": {\n \"$type\": \"dimension\",\n \"$value\": \"{seed.ui.space.s20}\",\n \"$description\": \"gridGap 布局默认值;实例属性优先\"\n }\n },\n \"layer\": {\n \"overlayBase\": {\n \"$type\": \"number\",\n \"$value\": 1200,\n \"$description\": \"overlayBase 弹层层级\"\n },\n \"nestingStep\": {\n \"$type\": \"number\",\n \"$value\": 10,\n \"$description\": \"nestingStep 弹层层级\"\n },\n \"contentOffset\": {\n \"$type\": \"number\",\n \"$value\": 1,\n \"$description\": \"contentOffset 弹层层级\"\n },\n \"local\": {\n \"s2\": {\n \"$type\": \"number\",\n \"$value\": \"{seed.ui.layer.local.s2}\",\n \"$description\": \"layer.local 共享刻度,合并重复值\"\n },\n \"s3\": {\n \"$type\": \"number\",\n \"$value\": \"{seed.ui.layer.local.s3}\",\n \"$description\": \"layer.local 共享刻度,合并重复值\"\n },\n \"s1100\": {\n \"$type\": \"number\",\n \"$value\": \"{seed.ui.layer.local.s1100}\",\n \"$description\": \"layer.local 共享刻度,合并重复值\"\n },\n \"s5\": {\n \"$type\": \"number\",\n \"$value\": \"{seed.ui.layer.local.s5}\",\n \"$description\": \"layer.local 共享刻度,合并重复值\"\n },\n \"s10\": {\n \"$type\": \"number\",\n \"$value\": \"{seed.ui.layer.local.s10}\",\n \"$description\": \"layer.local 共享刻度,合并重复值\"\n }\n }\n },\n \"effect\": {\n \"hostHeight\": {\n \"$type\": \"dimension\",\n \"$value\": {\n \"value\": 240,\n \"unit\": \"px\"\n },\n \"$description\": \"独立特效默认高度\"\n },\n \"chroma\": {\n \"intensity\": {\n \"$type\": \"number\",\n \"$value\": 0.7,\n \"$description\": \"chroma 的 intensity;数值单位遵循 Shader API\"\n },\n \"momentum\": {\n \"$type\": \"number\",\n \"$value\": 23,\n \"$description\": \"chroma 的 momentum;数值单位遵循 Shader API\"\n },\n \"radius\": {\n \"$type\": \"number\",\n \"$value\": 6,\n \"$description\": \"chroma 的 radius;数值单位遵循 Shader API\"\n }\n },\n \"aurora\": {\n \"curtainCount\": {\n \"$type\": \"number\",\n \"$value\": 2,\n \"$description\": \"aurora 的 curtainCount;数值单位遵循 Shader API\"\n },\n \"height\": {\n \"$type\": \"number\",\n \"$value\": 81,\n \"$description\": \"aurora 的 height;数值单位遵循 Shader API\"\n },\n \"intensity\": {\n \"$type\": \"number\",\n \"$value\": 64,\n \"$description\": \"aurora 的 intensity;数值单位遵循 Shader API\"\n },\n \"rayDensity\": {\n \"$type\": \"number\",\n \"$value\": 12,\n \"$description\": \"aurora 的 rayDensity;数值单位遵循 Shader API\"\n },\n \"speed\": {\n \"$type\": \"number\",\n \"$value\": 10,\n \"$description\": \"aurora 的 speed;数值单位遵循 Shader API\"\n },\n \"waviness\": {\n \"$type\": \"number\",\n \"$value\": 39,\n \"$description\": \"aurora 的 waviness;数值单位遵循 Shader API\"\n },\n \"rotation\": {\n \"$type\": \"number\",\n \"$value\": 180,\n \"$description\": \"aurora 的 rotation;数值单位遵循 Shader API\"\n }\n },\n \"lightEdge\": {\n \"thickness\": {\n \"$type\": \"number\",\n \"$value\": 0.48,\n \"$description\": \"lightEdge 的 thickness;数值单位遵循 Shader API\"\n },\n \"softness\": {\n \"$type\": \"number\",\n \"$value\": 1,\n \"$description\": \"lightEdge 的 softness;数值单位遵循 Shader API\"\n },\n \"intensity\": {\n \"$type\": \"number\",\n \"$value\": 0.9,\n \"$description\": \"lightEdge 的 intensity;数值单位遵循 Shader API\"\n },\n \"bloom\": {\n \"$type\": \"number\",\n \"$value\": 0.2,\n \"$description\": \"lightEdge 的 bloom;数值单位遵循 Shader API\"\n },\n \"spots\": {\n \"$type\": \"number\",\n \"$value\": 1,\n \"$description\": \"lightEdge 的 spots;数值单位遵循 Shader API\"\n },\n \"spotSize\": {\n \"$type\": \"number\",\n \"$value\": 0.6,\n \"$description\": \"lightEdge 的 spotSize;数值单位遵循 Shader API\"\n },\n \"smoke\": {\n \"$type\": \"number\",\n \"$value\": 0.12,\n \"$description\": \"lightEdge 的 smoke;数值单位遵循 Shader API\"\n },\n \"smokeSize\": {\n \"$type\": \"number\",\n \"$value\": 0.65,\n \"$description\": \"lightEdge 的 smokeSize;数值单位遵循 Shader API\"\n },\n \"speed\": {\n \"$type\": \"number\",\n \"$value\": 0.45,\n \"$description\": \"lightEdge 的 speed;数值单位遵循 Shader API\"\n },\n \"glowBlur\": {\n \"$type\": \"number\",\n \"$value\": 4.5,\n \"$description\": \"lightEdge 的 glowBlur;数值单位遵循 Shader API\"\n },\n \"flowBlur\": {\n \"$type\": \"number\",\n \"$value\": 1,\n \"$description\": \"lightEdge 的 flowBlur;数值单位遵循 Shader API\"\n },\n \"shapeInset\": {\n \"$type\": \"number\",\n \"$value\": 1.5,\n \"$description\": \"lightEdge 的 shapeInset;数值单位遵循 Shader API\"\n }\n },\n \"bottomGlow\": {\n \"referenceWidth\": {\n \"$type\": \"dimension\",\n \"$value\": { \"value\": 730, \"unit\": \"px\" },\n \"$description\": \"bottomGlow 高度与模糊参数对应的基准容器宽度;实际光晕随容器宽度等比缩放\"\n },\n \"intensity\": {\n \"$type\": \"number\",\n \"$value\": 0.95,\n \"$description\": \"bottomGlow 底部光晕强度\"\n },\n \"height\": {\n \"$type\": \"dimension\",\n \"$value\": {\n \"value\": 260,\n \"unit\": \"px\"\n },\n \"$description\": \"bottomGlow 光晕区域高度\"\n },\n \"blur\": {\n \"$type\": \"dimension\",\n \"$value\": {\n \"value\": 28,\n \"unit\": \"px\"\n },\n \"$description\": \"bottomGlow 柔化模糊半径\"\n },\n \"duration\": {\n \"$type\": \"duration\",\n \"$value\": {\n \"value\": 9,\n \"unit\": \"s\"\n },\n \"$description\": \"bottomGlow 光晕漂移动画时长\"\n }\n }\n },\n \"typography\": {\n \"size\": {\n \"s12\": {\n \"$type\": \"dimension\",\n \"$value\": \"{semantic.font.size.xs}\",\n \"$description\": \"typography.size 共享刻度,合并重复值\"\n },\n \"s11\": {\n \"$type\": \"dimension\",\n \"$value\": \"{semantic.font.size.ui11}\",\n \"$description\": \"typography.size 共享刻度,合并重复值\"\n },\n \"s17\": {\n \"$type\": \"dimension\",\n \"$value\": \"{semantic.font.size.ui17}\",\n \"$description\": \"typography.size 共享刻度,合并重复值\"\n },\n \"s14\": {\n \"$type\": \"dimension\",\n \"$value\": \"{semantic.font.size.sm}\",\n \"$description\": \"typography.size 共享刻度,合并重复值\"\n },\n \"s22\": {\n \"$type\": \"dimension\",\n \"$value\": \"{semantic.font.size.ui22}\",\n \"$description\": \"typography.size 共享刻度,合并重复值\"\n },\n \"s20\": {\n \"$type\": \"dimension\",\n \"$value\": \"{semantic.font.size.xl}\",\n \"$description\": \"typography.size 共享刻度,合并重复值\"\n },\n \"s10\": {\n \"$type\": \"dimension\",\n \"$value\": \"{semantic.font.size.ui10}\",\n \"$description\": \"typography.size 共享刻度,合并重复值\"\n },\n \"s18\": {\n \"$type\": \"dimension\",\n \"$value\": \"{semantic.font.size.lg}\",\n \"$description\": \"typography.size 共享刻度,合并重复值\"\n },\n \"s28\": {\n \"$type\": \"dimension\",\n \"$value\": \"{semantic.font.size.ui28}\",\n \"$description\": \"typography.size 共享刻度,合并重复值\"\n },\n \"s42\": {\n \"$type\": \"dimension\",\n \"$value\": \"{semantic.font.size.ui42}\",\n \"$description\": \"typography.size 共享刻度,合并重复值\"\n },\n \"s16\": {\n \"$type\": \"dimension\",\n \"$value\": \"{semantic.font.size.base}\",\n \"$description\": \"typography.size 共享刻度,合并重复值\"\n },\n \"s15\": {\n \"$type\": \"dimension\",\n \"$value\": \"{semantic.font.size.ui15}\",\n \"$description\": \"typography.size 共享刻度,合并重复值\"\n },\n \"s21\": {\n \"$type\": \"dimension\",\n \"$value\": \"{semantic.font.size.ui21}\",\n \"$description\": \"typography.size 共享刻度,合并重复值\"\n },\n \"s13\": {\n \"$type\": \"dimension\",\n \"$value\": \"{semantic.font.size.ui13}\",\n \"$description\": \"typography.size 共享刻度,合并重复值\"\n },\n \"s36\": {\n \"$type\": \"dimension\",\n \"$value\": \"{semantic.font.size.4xl}\",\n \"$description\": \"typography.size 共享刻度,合并重复值\"\n },\n \"s30\": {\n \"$type\": \"dimension\",\n \"$value\": \"{semantic.font.size.3xl}\",\n \"$description\": \"typography.size 共享刻度,合并重复值\"\n },\n \"s9\": {\n \"$type\": \"dimension\",\n \"$value\": \"{semantic.font.size.ui9}\",\n \"$description\": \"typography.size 共享刻度,合并重复值\"\n }\n },\n \"lineHeight\": {\n \"s1p5\": {\n \"$type\": \"number\",\n \"$value\": \"{seed.ui.typography.lineHeight.s1p5}\",\n \"$description\": \"typography.lineHeight 共享刻度,合并重复值\"\n },\n \"s1p4\": {\n \"$type\": \"number\",\n \"$value\": \"{seed.ui.typography.lineHeight.s1p4}\",\n \"$description\": \"typography.lineHeight 共享刻度,合并重复值\"\n },\n \"s1p3\": {\n \"$type\": \"number\",\n \"$value\": \"{seed.ui.typography.lineHeight.s1p3}\",\n \"$description\": \"typography.lineHeight 共享刻度,合并重复值\"\n },\n \"s1p2\": {\n \"$type\": \"number\",\n \"$value\": \"{seed.ui.typography.lineHeight.s1p2}\",\n \"$description\": \"typography.lineHeight 共享刻度,合并重复值\"\n }\n },\n \"weight\": {\n \"s500\": {\n \"$type\": \"number\",\n \"$value\": \"{seed.ui.typography.weight.s500}\",\n \"$description\": \"typography.weight 共享刻度,合并重复值\"\n },\n \"s600\": {\n \"$type\": \"number\",\n \"$value\": \"{seed.ui.typography.weight.s600}\",\n \"$description\": \"typography.weight 共享刻度,合并重复值\"\n },\n \"s700\": {\n \"$type\": \"number\",\n \"$value\": \"{seed.ui.typography.weight.s700}\",\n \"$description\": \"typography.weight 共享刻度,合并重复值\"\n },\n \"s800\": {\n \"$type\": \"number\",\n \"$value\": \"{seed.ui.typography.weight.s800}\",\n \"$description\": \"typography.weight 共享刻度,合并重复值\"\n },\n \"s200\": {\n \"$type\": \"number\",\n \"$value\": \"{seed.ui.typography.weight.s200}\",\n \"$description\": \"typography.weight 共享刻度,合并重复值\"\n },\n \"s400\": {\n \"$type\": \"number\",\n \"$value\": \"{seed.ui.typography.weight.s400}\",\n \"$description\": \"typography.weight 共享刻度,合并重复值\"\n }\n }\n },\n \"size\": {\n \"s2\": {\n \"$type\": \"dimension\",\n \"$value\": \"{seed.ui.size.s2}\",\n \"$description\": \"size 共享刻度,合并重复值\"\n },\n \"s3\": {\n \"$type\": \"dimension\",\n \"$value\": \"{seed.ui.size.s3}\",\n \"$description\": \"size 共享刻度,合并重复值\"\n },\n \"s1\": {\n \"$type\": \"dimension\",\n \"$value\": \"{seed.ui.size.s1}\",\n \"$description\": \"size 共享刻度,合并重复值\"\n },\n \"s28\": {\n \"$type\": \"dimension\",\n \"$value\": \"{seed.ui.size.s28}\",\n \"$description\": \"size 共享刻度,合并重复值\"\n },\n \"s42\": {\n \"$type\": \"dimension\",\n \"$value\": \"{seed.ui.size.s42}\",\n \"$description\": \"size 共享刻度,合并重复值\"\n },\n \"s14\": {\n \"$type\": \"dimension\",\n \"$value\": \"{seed.ui.size.s14}\",\n \"$description\": \"size 共享刻度,合并重复值\"\n },\n \"s24\": {\n \"$type\": \"dimension\",\n \"$value\": \"{seed.ui.size.s24}\",\n \"$description\": \"size 共享刻度,合并重复值\"\n },\n \"s18\": {\n \"$type\": \"dimension\",\n \"$value\": \"{seed.ui.size.s18}\",\n \"$description\": \"size 共享刻度,合并重复值\"\n },\n \"s40\": {\n \"$type\": \"dimension\",\n \"$value\": \"{seed.ui.size.s40}\",\n \"$description\": \"size 共享刻度,合并重复值\"\n },\n \"s16\": {\n \"$type\": \"dimension\",\n \"$value\": \"{seed.ui.size.s16}\",\n \"$description\": \"size 共享刻度,合并重复值\"\n },\n \"s20\": {\n \"$type\": \"dimension\",\n \"$value\": \"{seed.ui.size.s20}\",\n \"$description\": \"size 共享刻度,合并重复值\"\n },\n \"s22\": {\n \"$type\": \"dimension\",\n \"$value\": \"{seed.ui.size.s22}\",\n \"$description\": \"size 共享刻度,合并重复值\"\n },\n \"s140\": {\n \"$type\": \"dimension\",\n \"$value\": \"{seed.ui.size.s140}\",\n \"$description\": \"size 共享刻度,合并重复值\"\n },\n \"s85\": {\n \"$type\": \"dimension\",\n \"$value\": \"{seed.ui.size.s85}\",\n \"$description\": \"size 共享刻度,合并重复值\"\n },\n \"s34\": {\n \"$type\": \"dimension\",\n \"$value\": \"{seed.ui.size.s34}\",\n \"$description\": \"size 共享刻度,合并重复值\"\n },\n \"s320\": {\n \"$type\": \"dimension\",\n \"$value\": \"{seed.ui.size.s320}\",\n \"$description\": \"size 共享刻度,合并重复值\"\n },\n \"s160\": {\n \"$type\": \"dimension\",\n \"$value\": \"{seed.ui.size.s160}\",\n \"$description\": \"size 共享刻度,合并重复值\"\n },\n \"s280\": {\n \"$type\": \"dimension\",\n \"$value\": \"{seed.ui.size.s280}\",\n \"$description\": \"size 共享刻度,合并重复值\"\n },\n \"s32\": {\n \"$type\": \"dimension\",\n \"$value\": \"{seed.ui.size.s32}\",\n \"$description\": \"size 共享刻度,合并重复值\"\n },\n \"s53\": {\n \"$type\": \"dimension\",\n \"$value\": \"{seed.ui.size.s53}\",\n \"$description\": \"size 共享刻度,合并重复值\"\n },\n \"s26\": {\n \"$type\": \"dimension\",\n \"$value\": \"{seed.ui.size.s26}\",\n \"$description\": \"size 共享刻度,合并重复值\"\n },\n \"s8\": {\n \"$type\": \"dimension\",\n \"$value\": \"{seed.ui.size.s8}\",\n \"$description\": \"size 共享刻度,合并重复值\"\n },\n \"s62\": {\n \"$type\": \"dimension\",\n \"$value\": \"{seed.ui.size.s62}\",\n \"$description\": \"size 共享刻度,合并重复值\"\n },\n \"s10\": {\n \"$type\": \"dimension\",\n \"$value\": \"{seed.ui.size.s10}\",\n \"$description\": \"size 共享刻度,合并重复值\"\n },\n \"s4\": {\n \"$type\": \"dimension\",\n \"$value\": \"{seed.ui.size.s4}\",\n \"$description\": \"size 共享刻度,合并重复值\"\n },\n \"s5\": {\n \"$type\": \"dimension\",\n \"$value\": \"{seed.ui.size.s5}\",\n \"$description\": \"size 共享刻度,合并重复值\"\n },\n \"s196\": {\n \"$type\": \"dimension\",\n \"$value\": \"{seed.ui.size.s196}\",\n \"$description\": \"size 共享刻度,合并重复值\"\n },\n \"s480\": {\n \"$type\": \"dimension\",\n \"$value\": \"{seed.ui.size.s480}\",\n \"$description\": \"size 共享刻度,合并重复值\"\n },\n \"s1000\": {\n \"$type\": \"dimension\",\n \"$value\": \"{seed.ui.size.s1000}\",\n \"$description\": \"size 共享刻度,合并重复值\"\n },\n \"s660\": {\n \"$type\": \"dimension\",\n \"$value\": \"{seed.ui.size.s660}\",\n \"$description\": \"size 共享刻度,合并重复值\"\n },\n \"s48\": {\n \"$type\": \"dimension\",\n \"$value\": \"{seed.ui.size.s48}\",\n \"$description\": \"size 共享刻度,合并重复值\"\n },\n \"s100\": {\n \"$type\": \"dimension\",\n \"$value\": \"{seed.ui.size.s100}\",\n \"$description\": \"size 共享刻度,合并重复值\"\n },\n \"s64\": {\n \"$type\": \"dimension\",\n \"$value\": \"{seed.ui.size.s64}\",\n \"$description\": \"size 共享刻度,合并重复值\"\n },\n \"s12\": {\n \"$type\": \"dimension\",\n \"$value\": \"{seed.ui.size.s12}\",\n \"$description\": \"size 共享刻度,合并重复值\"\n },\n \"s6\": {\n \"$type\": \"dimension\",\n \"$value\": \"{seed.ui.size.s6}\",\n \"$description\": \"size 共享刻度,合并重复值\"\n },\n \"s168\": {\n \"$type\": \"dimension\",\n \"$value\": \"{seed.ui.size.s168}\",\n \"$description\": \"size 共享刻度,合并重复值\"\n },\n \"s96\": {\n \"$type\": \"dimension\",\n \"$value\": \"{seed.ui.size.s96}\",\n \"$description\": \"size 共享刻度,合并重复值\"\n },\n \"s56\": {\n \"$type\": \"dimension\",\n \"$value\": \"{seed.ui.size.s56}\",\n \"$description\": \"size 共享刻度,合并重复值\"\n },\n \"s1p5\": {\n \"$type\": \"dimension\",\n \"$value\": \"{seed.ui.size.s1p5}\",\n \"$description\": \"size 共享刻度,合并重复值\"\n },\n \"s220\": {\n \"$type\": \"dimension\",\n \"$value\": \"{seed.ui.size.s220}\",\n \"$description\": \"size 共享刻度,合并重复值\"\n },\n \"s379\": {\n \"$type\": \"dimension\",\n \"$value\": \"{seed.ui.size.s379}\",\n \"$description\": \"size 共享刻度,合并重复值\"\n },\n \"s68\": {\n \"$type\": \"dimension\",\n \"$value\": \"{seed.ui.size.s68}\",\n \"$description\": \"size 共享刻度,合并重复值\"\n },\n \"s108\": {\n \"$type\": \"dimension\",\n \"$value\": \"{seed.ui.size.s108}\",\n \"$description\": \"size 共享刻度,合并重复值\"\n },\n \"s70\": {\n \"$type\": \"dimension\",\n \"$value\": \"{seed.ui.size.s70}\",\n \"$description\": \"size 共享刻度,合并重复值\"\n },\n \"s57\": {\n \"$type\": \"dimension\",\n \"$value\": \"{seed.ui.size.s57}\",\n \"$description\": \"size 共享刻度,合并重复值\"\n },\n \"s15\": {\n \"$type\": \"dimension\",\n \"$value\": \"{seed.ui.size.s15}\",\n \"$description\": \"size 共享刻度,合并重复值\"\n },\n \"s244\": {\n \"$type\": \"dimension\",\n \"$value\": \"{seed.ui.size.s244}\",\n \"$description\": \"size 共享刻度,合并重复值\"\n },\n \"s78\": {\n \"$type\": \"dimension\",\n \"$value\": \"{seed.ui.size.s78}\",\n \"$description\": \"size 共享刻度,合并重复值\"\n },\n \"s36\": {\n \"$type\": \"dimension\",\n \"$value\": \"{seed.ui.size.s36}\",\n \"$description\": \"size 共享刻度,合并重复值\"\n },\n \"s23\": {\n \"$type\": \"dimension\",\n \"$value\": \"{seed.ui.size.s23}\",\n \"$description\": \"size 共享刻度,合并重复值\"\n },\n \"s117\": {\n \"$type\": \"dimension\",\n \"$value\": \"{seed.ui.size.s117}\",\n \"$description\": \"size 共享刻度,合并重复值\"\n },\n \"s110\": {\n \"$type\": \"dimension\",\n \"$value\": \"{seed.ui.size.s110}\",\n \"$description\": \"size 共享刻度,合并重复值\"\n },\n \"s156\": {\n \"$type\": \"dimension\",\n \"$value\": \"{seed.ui.size.s156}\",\n \"$description\": \"size 共享刻度,合并重复值\"\n },\n \"s125\": {\n \"$type\": \"dimension\",\n \"$value\": \"{seed.ui.size.s125}\",\n \"$description\": \"size 共享刻度,合并重复值\"\n },\n \"s121\": {\n \"$type\": \"dimension\",\n \"$value\": \"{seed.ui.size.s121}\",\n \"$description\": \"size 共享刻度,合并重复值\"\n },\n \"s127\": {\n \"$type\": \"dimension\",\n \"$value\": \"{seed.ui.size.s127}\",\n \"$description\": \"size 共享刻度,合并重复值\"\n },\n \"s55\": {\n \"$type\": \"dimension\",\n \"$value\": \"{seed.ui.size.s55}\",\n \"$description\": \"size 共享刻度,合并重复值\"\n },\n \"s178\": {\n \"$type\": \"dimension\",\n \"$value\": \"{seed.ui.size.s178}\",\n \"$description\": \"size 共享刻度,合并重复值\"\n },\n \"s497\": {\n \"$type\": \"dimension\",\n \"$value\": \"{seed.ui.size.s497}\",\n \"$description\": \"size 共享刻度,合并重复值\"\n },\n \"s37\": {\n \"$type\": \"dimension\",\n \"$value\": \"{seed.ui.size.s37}\",\n \"$description\": \"size 共享刻度,合并重复值\"\n },\n \"s60\": {\n \"$type\": \"dimension\",\n \"$value\": \"{seed.ui.size.s60}\",\n \"$description\": \"size 共享刻度,合并重复值\"\n },\n \"s7\": {\n \"$type\": \"dimension\",\n \"$value\": \"{seed.ui.size.s7}\",\n \"$description\": \"size 共享刻度,合并重复值\"\n },\n \"s128\": {\n \"$type\": \"dimension\",\n \"$value\": \"{seed.ui.size.s128}\",\n \"$description\": \"size 共享刻度,合并重复值\"\n },\n \"s290\": {\n \"$type\": \"dimension\",\n \"$value\": \"{seed.ui.size.s290}\",\n \"$description\": \"size 共享刻度,合并重复值\"\n },\n \"s210\": {\n \"$type\": \"dimension\",\n \"$value\": \"{seed.ui.size.s210}\",\n \"$description\": \"size 共享刻度,合并重复值\"\n },\n \"s231\": {\n \"$type\": \"dimension\",\n \"$value\": \"{seed.ui.size.s231}\",\n \"$description\": \"size 共享刻度,合并重复值\"\n },\n \"s440\": {\n \"$type\": \"dimension\",\n \"$value\": \"{seed.ui.size.s440}\",\n \"$description\": \"size 共享刻度,合并重复值\"\n },\n \"s9\": {\n \"$type\": \"dimension\",\n \"$value\": \"{seed.ui.size.s9}\",\n \"$description\": \"size 共享刻度,合并重复值\"\n },\n \"s190\": {\n \"$type\": \"dimension\",\n \"$value\": \"{seed.ui.size.s190}\",\n \"$description\": \"size 共享刻度,合并重复值\"\n },\n \"s130\": {\n \"$type\": \"dimension\",\n \"$value\": \"{seed.ui.size.s130}\",\n \"$description\": \"size 共享刻度,合并重复值\"\n },\n \"s200\": {\n \"$type\": \"dimension\",\n \"$value\": \"{seed.ui.size.s200}\",\n \"$description\": \"size 共享刻度,合并重复值\"\n },\n \"s150\": {\n \"$type\": \"dimension\",\n \"$value\": \"{seed.ui.size.s150}\",\n \"$description\": \"size 共享刻度,合并重复值\"\n },\n \"s350\": {\n \"$type\": \"dimension\",\n \"$value\": \"{seed.ui.size.s350}\",\n \"$description\": \"size 共享刻度,合并重复值\"\n },\n \"s493\": {\n \"$type\": \"dimension\",\n \"$value\": \"{seed.ui.size.s493}\",\n \"$description\": \"size 共享刻度,合并重复值\"\n },\n \"s17\": {\n \"$type\": \"dimension\",\n \"$value\": \"{seed.ui.size.s17}\",\n \"$description\": \"size 共享刻度,合并重复值\"\n }\n },\n \"space\": {\n \"s6\": {\n \"$type\": \"dimension\",\n \"$value\": \"{seed.ui.space.s6}\",\n \"$description\": \"space 共享刻度,合并重复值\"\n },\n \"s18\": {\n \"$type\": \"dimension\",\n \"$value\": \"{seed.ui.space.s18}\",\n \"$description\": \"space 共享刻度,合并重复值\"\n },\n \"s3\": {\n \"$type\": \"dimension\",\n \"$value\": \"{seed.ui.space.s3}\",\n \"$description\": \"space 共享刻度,合并重复值\"\n },\n \"s10\": {\n \"$type\": \"dimension\",\n \"$value\": \"{seed.ui.space.s10}\",\n \"$description\": \"space 共享刻度,合并重复值\"\n },\n \"s8\": {\n \"$type\": \"dimension\",\n \"$value\": \"{seed.ui.space.s8}\",\n \"$description\": \"space 共享刻度,合并重复值\"\n },\n \"s22\": {\n \"$type\": \"dimension\",\n \"$value\": \"{seed.ui.space.s22}\",\n \"$description\": \"space 共享刻度,合并重复值\"\n },\n \"s7\": {\n \"$type\": \"dimension\",\n \"$value\": \"{seed.ui.space.s7}\",\n \"$description\": \"space 共享刻度,合并重复值\"\n },\n \"s14\": {\n \"$type\": \"dimension\",\n \"$value\": \"{seed.ui.space.s14}\",\n \"$description\": \"space 共享刻度,合并重复值\"\n },\n \"s84\": {\n \"$type\": \"dimension\",\n \"$value\": \"{seed.ui.space.s84}\",\n \"$description\": \"space 共享刻度,合并重复值\"\n },\n \"s4\": {\n \"$type\": \"dimension\",\n \"$value\": \"{seed.ui.space.s4}\",\n \"$description\": \"space 共享刻度,合并重复值\"\n },\n \"s2\": {\n \"$type\": \"dimension\",\n \"$value\": \"{seed.ui.space.s2}\",\n \"$description\": \"space 共享刻度,合并重复值\"\n },\n \"s12\": {\n \"$type\": \"dimension\",\n \"$value\": \"{seed.ui.space.s12}\",\n \"$description\": \"space 共享刻度,合并重复值\"\n },\n \"s5\": {\n \"$type\": \"dimension\",\n \"$value\": \"{seed.ui.space.s5}\",\n \"$description\": \"space 共享刻度,合并重复值\"\n },\n \"s26\": {\n \"$type\": \"dimension\",\n \"$value\": \"{seed.ui.space.s26}\",\n \"$description\": \"space 共享刻度,合并重复值\"\n },\n \"s16\": {\n \"$type\": \"dimension\",\n \"$value\": \"{seed.ui.space.s16}\",\n \"$description\": \"space 共享刻度,合并重复值\"\n },\n \"s24\": {\n \"$type\": \"dimension\",\n \"$value\": \"{seed.ui.space.s24}\",\n \"$description\": \"space 共享刻度,合并重复值\"\n },\n \"s30\": {\n \"$type\": \"dimension\",\n \"$value\": \"{seed.ui.space.s30}\",\n \"$description\": \"space 共享刻度,合并重复值\"\n },\n \"s1\": {\n \"$type\": \"dimension\",\n \"$value\": \"{seed.ui.space.s1}\",\n \"$description\": \"space 共享刻度,合并重复值\"\n },\n \"s15\": {\n \"$type\": \"dimension\",\n \"$value\": \"{seed.ui.space.s15}\",\n \"$description\": \"space 共享刻度,合并重复值\"\n },\n \"s13\": {\n \"$type\": \"dimension\",\n \"$value\": \"{seed.ui.space.s13}\",\n \"$description\": \"space 共享刻度,合并重复值\"\n },\n \"s20\": {\n \"$type\": \"dimension\",\n \"$value\": \"{seed.ui.space.s20}\",\n \"$description\": \"space 共享刻度,合并重复值\"\n },\n \"s29\": {\n \"$type\": \"dimension\",\n \"$value\": \"{seed.ui.space.s29}\",\n \"$description\": \"space 共享刻度,合并重复值\"\n },\n \"s9\": {\n \"$type\": \"dimension\",\n \"$value\": \"{seed.ui.space.s9}\",\n \"$description\": \"space 共享刻度,合并重复值\"\n },\n \"s11\": {\n \"$type\": \"dimension\",\n \"$value\": \"{seed.ui.space.s11}\",\n \"$description\": \"space 共享刻度,合并重复值\"\n },\n \"s115\": {\n \"$type\": \"dimension\",\n \"$value\": \"{seed.ui.space.s115}\",\n \"$description\": \"space 共享刻度,合并重复值\"\n },\n \"s34\": {\n \"$type\": \"dimension\",\n \"$value\": \"{seed.ui.space.s34}\",\n \"$description\": \"space 共享刻度,合并重复值\"\n },\n \"s40\": {\n \"$type\": \"dimension\",\n \"$value\": \"{seed.ui.space.s40}\",\n \"$description\": \"space 共享刻度,合并重复值\"\n },\n \"s28\": {\n \"$type\": \"dimension\",\n \"$value\": \"{seed.ui.space.s28}\",\n \"$description\": \"space 共享刻度,合并重复值\"\n },\n \"s44\": {\n \"$type\": \"dimension\",\n \"$value\": \"{seed.ui.space.s44}\",\n \"$description\": \"space 共享刻度,合并重复值\"\n },\n \"s23\": {\n \"$type\": \"dimension\",\n \"$value\": \"{seed.ui.space.s23}\",\n \"$description\": \"space 共享刻度,合并重复值\"\n },\n \"s70\": {\n \"$type\": \"dimension\",\n \"$value\": \"{seed.ui.space.s70}\",\n \"$description\": \"space 共享刻度,合并重复值\"\n },\n \"s25\": {\n \"$type\": \"dimension\",\n \"$value\": \"{seed.ui.space.s25}\",\n \"$description\": \"space 共享刻度,合并重复值\"\n },\n \"s19\": {\n \"$type\": \"dimension\",\n \"$value\": \"{seed.ui.space.s19}\",\n \"$description\": \"space 共享刻度,合并重复值\"\n },\n \"s47\": {\n \"$type\": \"dimension\",\n \"$value\": \"{seed.ui.space.s47}\",\n \"$description\": \"space 共享刻度,合并重复值\"\n }\n },\n \"duration\": {\n \"s240\": {\n \"$type\": \"duration\",\n \"$value\": \"{seed.ui.duration.s240}\",\n \"$description\": \"duration 共享刻度,合并重复值\"\n },\n \"s800\": {\n \"$type\": \"duration\",\n \"$value\": \"{seed.ui.duration.s800}\",\n \"$description\": \"duration 共享刻度,合并重复值\"\n },\n \"s180\": {\n \"$type\": \"duration\",\n \"$value\": \"{seed.ui.duration.s180}\",\n \"$description\": \"duration 共享刻度,合并重复值\"\n },\n \"s140\": {\n \"$type\": \"duration\",\n \"$value\": \"{seed.ui.duration.s140}\",\n \"$description\": \"duration 共享刻度,合并重复值\"\n }\n },\n \"opacity\": {\n \"s0p65\": {\n \"$type\": \"number\",\n \"$value\": \"{seed.ui.opacity.s0p65}\",\n \"$description\": \"opacity 共享刻度,合并重复值\"\n },\n \"s0p5\": {\n \"$type\": \"number\",\n \"$value\": \"{semantic.ui.opacity.disabled}\",\n \"$description\": \"共享状态透明度\"\n },\n \"s0p8\": {\n \"$type\": \"number\",\n \"$value\": \"{semantic.ui.opacity.busy}\",\n \"$description\": \"共享状态透明度\"\n },\n \"s0p4\": {\n \"$type\": \"number\",\n \"$value\": \"{seed.ui.opacity.s0p4}\",\n \"$description\": \"opacity 共享刻度,合并重复值\"\n }\n },\n \"shadowSize\": {\n \"s8\": {\n \"$type\": \"dimension\",\n \"$value\": \"{seed.ui.shadowSize.s8}\",\n \"$description\": \"shadowSize 共享刻度,合并重复值\"\n },\n \"s20\": {\n \"$type\": \"dimension\",\n \"$value\": \"{seed.ui.shadowSize.s20}\",\n \"$description\": \"shadowSize 共享刻度,合并重复值\"\n },\n \"s12\": {\n \"$type\": \"dimension\",\n \"$value\": \"{seed.ui.shadowSize.s12}\",\n \"$description\": \"shadowSize 共享刻度,合并重复值\"\n },\n \"s1\": {\n \"$type\": \"dimension\",\n \"$value\": \"{seed.ui.shadowSize.s1}\",\n \"$description\": \"shadowSize 共享刻度,合并重复值\"\n },\n \"s4\": {\n \"$type\": \"dimension\",\n \"$value\": \"{seed.ui.shadowSize.s4}\",\n \"$description\": \"shadowSize 共享刻度,合并重复值\"\n },\n \"s10\": {\n \"$type\": \"dimension\",\n \"$value\": \"{seed.ui.shadowSize.s10}\",\n \"$description\": \"shadowSize 共享刻度,合并重复值\"\n },\n \"s2\": {\n \"$type\": \"dimension\",\n \"$value\": \"{seed.ui.shadowSize.s2}\",\n \"$description\": \"shadowSize 共享刻度,合并重复值\"\n },\n \"s36\": {\n \"$type\": \"dimension\",\n \"$value\": \"{seed.ui.shadowSize.s36}\",\n \"$description\": \"shadowSize 共享刻度,合并重复值\"\n },\n \"s5\": {\n \"$type\": \"dimension\",\n \"$value\": \"{seed.ui.shadowSize.s5}\",\n \"$description\": \"shadowSize 共享刻度,合并重复值\"\n },\n \"s3\": {\n \"$type\": \"dimension\",\n \"$value\": \"{seed.ui.shadowSize.s3}\",\n \"$description\": \"shadowSize 共享刻度,合并重复值\"\n },\n \"s24\": {\n \"$type\": \"dimension\",\n \"$value\": \"{seed.ui.shadowSize.s24}\",\n \"$description\": \"shadowSize 共享刻度,合并重复值\"\n },\n \"s80\": {\n \"$type\": \"dimension\",\n \"$value\": \"{seed.ui.shadowSize.s80}\",\n \"$description\": \"shadowSize 共享刻度,合并重复值\"\n },\n \"s15\": {\n \"$type\": \"dimension\",\n \"$value\": \"{seed.ui.shadowSize.s15}\",\n \"$description\": \"shadowSize 共享刻度,合并重复值\"\n },\n \"s28\": {\n \"$type\": \"dimension\",\n \"$value\": \"{seed.ui.shadowSize.s28}\",\n \"$description\": \"shadowSize 共享刻度,合并重复值\"\n },\n \"s14\": {\n \"$type\": \"dimension\",\n \"$value\": \"{seed.ui.shadowSize.s14}\",\n \"$description\": \"shadowSize 共享刻度,合并重复值\"\n },\n \"s6\": {\n \"$type\": \"dimension\",\n \"$value\": \"{seed.ui.shadowSize.s6}\",\n \"$description\": \"shadowSize 共享刻度,合并重复值\"\n },\n \"s9\": {\n \"$type\": \"dimension\",\n \"$value\": \"{seed.ui.shadowSize.s9}\",\n \"$description\": \"shadowSize 共享刻度,合并重复值\"\n },\n \"s0p5\": {\n \"$type\": \"dimension\",\n \"$value\": \"{seed.ui.shadowSize.s0p5}\",\n \"$description\": \"shadowSize 共享刻度,合并重复值\"\n },\n \"s7\": {\n \"$type\": \"dimension\",\n \"$value\": \"{seed.ui.shadowSize.s7}\",\n \"$description\": \"shadowSize 共享刻度,合并重复值\"\n }\n },\n \"lineClamp\": {\n \"s4\": {\n \"$type\": \"number\",\n \"$value\": \"{seed.ui.lineClamp.s4}\",\n \"$description\": \"lineClamp 共享刻度,合并重复值\"\n },\n \"s2\": {\n \"$type\": \"number\",\n \"$value\": \"{seed.ui.lineClamp.s2}\",\n \"$description\": \"lineClamp 共享刻度,合并重复值\"\n }\n },\n \"material\": {\n \"control\": {\n \"background\": { \"$type\": \"color\", \"$value\": \"{component.ui.input.background}\", \"$description\": \"控件共用底材:以名称输入框为准,兼容现有 input.background 覆盖\" },\n \"border\": { \"$type\": \"color\", \"$value\": \"{component.ui.border}\", \"$description\": \"控件共用顶部柔和描边\" },\n \"highlight\": { \"$type\": \"color\", \"$value\": \"{component.ui.foreground}\", \"$description\": \"控件共用底部内高光颜色\" },\n \"highlightOffset\": { \"$type\": \"dimension\", \"$value\": \"{component.ui.shadowSize.s5}\", \"$description\": \"控件底部内高光向上偏移量\" },\n \"highlightBlur\": { \"$type\": \"dimension\", \"$value\": \"{component.ui.shadowSize.s9}\", \"$description\": \"控件底部内高光模糊半径\" },\n \"highlightSpread\": { \"$type\": \"dimension\", \"$value\": \"{component.ui.shadowSize.s8}\", \"$description\": \"控件底部内高光收缩量\" }\n }\n },\n \"input\": {\n \"tags\": {\n \"minHeight\": {\n \"$type\": \"dimension\",\n \"$value\": {\n \"value\": 40,\n \"unit\": \"px\"\n },\n \"$description\": \".monkeys-ui-tag-input min-height\"\n },\n \"gap\": {\n \"$type\": \"dimension\",\n \"$value\": {\n \"value\": 6,\n \"unit\": \"px\"\n },\n \"$description\": \"input.tags.gap 默认尺寸\"\n },\n \"glass\": {\n \"blur\": {\n \"$type\": \"dimension\",\n \"$value\": \"{seed.ui.size.s16}\",\n \"$description\": \"input.tags 材质模糊\"\n },\n \"saturation\": {\n \"$type\": \"number\",\n \"$value\": 1,\n \"$description\": \"input.tags 材质饱和度\"\n }\n }\n },\n \"paddingInline\": {\n \"$type\": \"dimension\",\n \"$value\": \"{seed.ui.space.s14}\",\n \"$description\": \"input paddingInline 独立覆盖入口\"\n },\n \"paddingBlock\": {\n \"$type\": \"dimension\",\n \"$value\": \"{seed.ui.space.s7}\",\n \"$description\": \"input paddingBlock 独立覆盖入口\"\n },\n \"radius\": {\n \"$type\": \"dimension\",\n \"$value\": \"{semantic.ui.radius.control}\",\n \"$description\": \"input radius 独立覆盖入口\"\n },\n \"background\": {\n \"$type\": \"color\",\n \"$value\": \"{semantic.color.surface.control.dark}\",\n \"$description\": \"input background 独立覆盖入口\"\n },\n \"placeholder\": {\n \"$type\": \"color\",\n \"$value\": \"{semantic.color.text.secondary.dark}\",\n \"$description\": \"input placeholder 独立覆盖入口\"\n },\n \"invalidBorder\": {\n \"$type\": \"color\",\n \"$value\": \"{semantic.color.status.danger.dark}\",\n \"$description\": \"input invalidBorder 独立覆盖入口\"\n }\n },\n \"textarea\": {\n \"minHeight\": {\n \"$type\": \"dimension\",\n \"$value\": {\n \"value\": 85,\n \"unit\": \"px\"\n },\n \"$description\": \".monkeys-ui-textarea min-height\"\n }\n },\n \"switch\": {\n \"height\": {\n \"md\": {\n \"$type\": \"dimension\",\n \"$value\": {\n \"value\": 34,\n \"unit\": \"px\"\n },\n \"$description\": \"switch.height.md 默认尺寸\"\n },\n \"sm\": {\n \"$type\": \"dimension\",\n \"$value\": {\n \"value\": 28,\n \"unit\": \"px\"\n },\n \"$description\": \"switch.height.sm 默认尺寸\"\n },\n \"lg\": {\n \"$type\": \"dimension\",\n \"$value\": {\n \"value\": 42,\n \"unit\": \"px\"\n },\n \"$description\": \"switch.height.lg 默认尺寸\"\n }\n }\n },\n \"colorSlider\": {\n \"thumbWidth\": {\n \"$type\": \"dimension\",\n \"$value\": {\n \"value\": 96,\n \"unit\": \"px\"\n },\n \"$description\": \"colorSlider.thumbWidth 默认尺寸\"\n },\n \"glass\": {\n \"blur\": {\n \"$type\": \"dimension\",\n \"$value\": \"{seed.ui.size.s12}\",\n \"$description\": \"colorSlider 材质模糊\"\n },\n \"saturation\": {\n \"$type\": \"number\",\n \"$value\": 1.15,\n \"$description\": \"colorSlider 材质饱和度\"\n }\n }\n },\n \"card\": {\n \"dragHandle\": {\n \"size\": { \"$type\": \"dimension\", \"$value\": \"{seed.ui.size.s24}\", \"$description\": \"卡片拖动手柄直径\" },\n \"offset\": { \"$type\": \"dimension\", \"$value\": \"{seed.ui.size.s5}\", \"$description\": \"卡片拖动手柄距顶边与起始边的距离\" },\n \"iconSize\": { \"$type\": \"dimension\", \"$value\": \"{seed.ui.size.s16}\", \"$description\": \"卡片拖动手柄六点图标尺寸\" },\n \"background\": { \"$type\": \"color\", \"$value\": \"{semantic.color.scrim.media.dark}\", \"$description\": \"卡片拖动手柄深色背景\" },\n \"foreground\": { \"$type\": \"color\", \"$value\": \"{semantic.color.sample.inkLight}\", \"$description\": \"卡片拖动手柄图标颜色\" }\n },\n \"actions\": {\n \"glass\": {\n \"blur\": {\n \"$type\": \"dimension\",\n \"$value\": \"{seed.ui.size.s12}\",\n \"$description\": \"card.actions 材质模糊\"\n },\n \"saturation\": {\n \"$type\": \"number\",\n \"$value\": 1.2,\n \"$description\": \"card.actions 材质饱和度\"\n }\n }\n },\n \"titleFontSize\": {\n \"$type\": \"dimension\",\n \"$value\": \"{semantic.font.size.sm}\",\n \"$description\": \"card titleFontSize 独立覆盖入口\"\n }\n },\n \"panel\": {\n \"padding\": {\n \"$type\": \"dimension\",\n \"$value\": \"{semantic.ui.spacing.surfacePadding}\",\n \"$description\": \"panel padding 独立覆盖入口\"\n }\n },\n \"field\": {\n \"gap\": {\n \"$type\": \"dimension\",\n \"$value\": \"{semantic.ui.spacing.fieldGap}\",\n \"$description\": \"field gap 独立覆盖入口\"\n }\n },\n \"tooltip\": {\n \"delay\": {\n \"$type\": \"duration\",\n \"$value\": {\n \"value\": 500,\n \"unit\": \"ms\"\n },\n \"$description\": \"tooltip delay\"\n },\n \"skipDelay\": {\n \"$type\": \"duration\",\n \"$value\": {\n \"value\": 300,\n \"unit\": \"ms\"\n },\n \"$description\": \"tooltip skipDelay\"\n },\n \"sideOffset\": {\n \"$type\": \"dimension\",\n \"$value\": {\n \"value\": 7,\n \"unit\": \"px\"\n },\n \"$description\": \"tooltip 与触发器的间距\"\n }\n },\n \"scrollSurface\": {\n \"hideDelay\": {\n \"$type\": \"duration\",\n \"$value\": {\n \"value\": 700,\n \"unit\": \"ms\"\n },\n \"$description\": \"scrollSurface hideDelay\"\n }\n },\n \"menu\": {\n \"sideOffset\": {\n \"$type\": \"dimension\",\n \"$value\": {\n \"value\": 6,\n \"unit\": \"px\"\n },\n \"$description\": \"menu 与触发器的间距\"\n }\n },\n \"icon\": {\n \"size\": {\n \"s12\": {\n \"$type\": \"dimension\",\n \"$value\": \"{semantic.font.size.xs}\",\n \"$description\": \"内置图标 12px,可独立于字体覆盖\"\n },\n \"s14\": {\n \"$type\": \"dimension\",\n \"$value\": \"{semantic.font.size.sm}\",\n \"$description\": \"内置图标 14px,可独立于字体覆盖\"\n },\n \"s16\": {\n \"$type\": \"dimension\",\n \"$value\": \"{semantic.font.size.base}\",\n \"$description\": \"内置图标 16px,可独立于字体覆盖\"\n },\n \"s17\": {\n \"$type\": \"dimension\",\n \"$value\": \"{semantic.font.size.ui17}\",\n \"$description\": \"内置图标 17px,可独立于字体覆盖\"\n },\n \"s28\": {\n \"$type\": \"dimension\",\n \"$value\": \"{semantic.font.size.ui28}\",\n \"$description\": \"内置图标 28px,可独立于字体覆盖\"\n }\n }\n },\n \"density\": {\n \"compact\": {\n \"buttonPaddingBlock\": {\n \"$type\": \"dimension\",\n \"$value\": \"{seed.ui.space.s3}\",\n \"$description\": \"compact buttonPaddingBlock 密度留白\"\n },\n \"inputPaddingBlock\": {\n \"$type\": \"dimension\",\n \"$value\": \"{seed.ui.space.s4}\",\n \"$description\": \"compact inputPaddingBlock 密度留白\"\n }\n },\n \"default\": {\n \"buttonPaddingBlock\": {\n \"$type\": \"dimension\",\n \"$value\": \"{seed.ui.space.s6}\",\n \"$description\": \"default buttonPaddingBlock 密度留白\"\n },\n \"inputPaddingBlock\": {\n \"$type\": \"dimension\",\n \"$value\": \"{seed.ui.space.s7}\",\n \"$description\": \"default inputPaddingBlock 密度留白\"\n }\n },\n \"comfortable\": {\n \"buttonPaddingBlock\": {\n \"$type\": \"dimension\",\n \"$value\": \"{seed.ui.space.s10}\",\n \"$description\": \"comfortable buttonPaddingBlock 密度留白\"\n },\n \"inputPaddingBlock\": {\n \"$type\": \"dimension\",\n \"$value\": \"{seed.ui.space.s11}\",\n \"$description\": \"comfortable inputPaddingBlock 密度留白\"\n }\n }\n }\n }\n }\n}\n","{\n \"seed\": {\n \"ui\": {\n \"color\": {\n \"page\": {\n \"$type\": \"color\",\n \"$value\": {\n \"colorSpace\": \"srgb\",\n \"components\": [\n 0.07450980392156863,\n 0.08235294117647059,\n 0.10196078431372549\n ],\n \"hex\": \"#13151A\"\n },\n \"$description\": \"seed.ui.color.page\"\n },\n \"surface\": {\n \"$type\": \"color\",\n \"$value\": {\n \"colorSpace\": \"srgb\",\n \"components\": [\n 0.09019607843137255,\n 0.10588235294117647,\n 0.15294117647058825\n ],\n \"hex\": \"#171B27\"\n },\n \"$description\": \"seed.ui.color.surface\"\n },\n \"elevated\": {\n \"$type\": \"color\",\n \"$value\": {\n \"colorSpace\": \"srgb\",\n \"components\": [\n 0.13333333333333333,\n 0.15294117647058825,\n 0.2196078431372549\n ],\n \"hex\": \"#222738\"\n },\n \"$description\": \"seed.ui.color.elevated\"\n },\n \"foreground\": {\n \"$type\": \"color\",\n \"$value\": {\n \"colorSpace\": \"srgb\",\n \"components\": [\n 1,\n 1,\n 1\n ],\n \"hex\": \"#FFFFFF\"\n },\n \"$description\": \"seed.ui.color.foreground\"\n },\n \"muted\": {\n \"$type\": \"color\",\n \"$value\": {\n \"colorSpace\": \"srgb\",\n \"components\": [\n 0.7843137254901961,\n 0.7843137254901961,\n 0.7843137254901961\n ],\n \"hex\": \"#C8C8C8\"\n },\n \"$description\": \"seed.ui.color.muted\"\n },\n \"subtle\": {\n \"$type\": \"color\",\n \"$value\": {\n \"colorSpace\": \"srgb\",\n \"components\": [\n 0.6980392156862745,\n 0.6980392156862745,\n 0.6980392156862745\n ],\n \"hex\": \"#B2B2B2\"\n },\n \"$description\": \"seed.ui.color.subtle\"\n },\n \"primary\": {\n \"$type\": \"color\",\n \"$value\": {\n \"colorSpace\": \"srgb\",\n \"components\": [\n 0.28627450980392155,\n 0.4666666666666667,\n 0.9215686274509803\n ],\n \"hex\": \"#4977EB\"\n },\n \"$description\": \"seed.ui.color.primary\"\n },\n \"lightEdgeBlue\": {\n \"$type\": \"color\",\n \"$value\": {\n \"colorSpace\": \"srgb\",\n \"components\": [\n 0.25882352941176473,\n 0.5215686274509804,\n 1\n ],\n \"hex\": \"#4285FF\"\n },\n \"$description\": \"seed.ui.color.lightEdgeBlue\"\n },\n \"primaryHover\": {\n \"$type\": \"color\",\n \"$value\": {\n \"colorSpace\": \"srgb\",\n \"components\": [\n 0.3803921568627451,\n 0.5450980392156862,\n 0.9568627450980393\n ],\n \"hex\": \"#618BF4\"\n },\n \"$description\": \"seed.ui.color.primaryHover\"\n },\n \"violet\": {\n \"$type\": \"color\",\n \"$value\": {\n \"colorSpace\": \"srgb\",\n \"components\": [\n 0.5764705882352941,\n 0.36470588235294116,\n 1\n ],\n \"hex\": \"#935DFF\"\n },\n \"$description\": \"seed.ui.color.violet\"\n },\n \"focus\": {\n \"$type\": \"color\",\n \"$value\": {\n \"colorSpace\": \"srgb\",\n \"components\": [\n 0.6627450980392157,\n 0.7333333333333333,\n 1\n ],\n \"hex\": \"#A9BBFF\"\n },\n \"$description\": \"seed.ui.color.focus\"\n },\n \"border\": {\n \"$type\": \"color\",\n \"$value\": {\n \"colorSpace\": \"srgb\",\n \"components\": [\n 0.6862745098039216,\n 0.7333333333333333,\n 1\n ],\n \"hex\": \"#AFBBFF\",\n \"alpha\": 0.5\n },\n \"$description\": \"seed.ui.color.border\"\n },\n \"blueGlow\": {\n \"$type\": \"color\",\n \"$value\": {\n \"colorSpace\": \"srgb\",\n \"components\": [\n 0.13725490196078433,\n 0.3411764705882353,\n 0.9176470588235294\n ],\n \"hex\": \"#2357EA\",\n \"alpha\": 0.35\n },\n \"$description\": \"seed.ui.color.blueGlow\"\n },\n \"violetGlow\": {\n \"$type\": \"color\",\n \"$value\": {\n \"colorSpace\": \"srgb\",\n \"components\": [\n 0.4627450980392157,\n 0.19215686274509805,\n 1\n ],\n \"hex\": \"#7631FF\",\n \"alpha\": 0.5\n },\n \"$description\": \"seed.ui.color.violetGlow\"\n },\n \"primaryAccessible\": {\n \"$type\": \"color\",\n \"$value\": {\n \"colorSpace\": \"srgb\",\n \"components\": [\n 0.23529411764705882,\n 0.38823529411764707,\n 0.8117647058823529\n ],\n \"hex\": \"#3C63CF\"\n },\n \"$description\": \"seed.ui.color.primaryAccessible\"\n },\n \"header\": {\n \"$type\": \"color\",\n \"$value\": {\n \"colorSpace\": \"srgb\",\n \"components\": [\n 0.12941176470588237,\n 0.32941176470588235,\n 0.8509803921568627\n ],\n \"hex\": \"#2154D9\"\n },\n \"$description\": \"租户颜色原始值\"\n }\n }\n }\n },\n \"semantic\": {\n \"font\": {\n \"body\": {\n \"$type\": \"fontFamily\",\n \"$value\": [\n \"Inter\",\n \"Monkeys UI Sans\",\n \"Microsoft YaHei\",\n \"sans-serif\"\n ],\n \"$description\": \"BSD 字体栈\"\n }\n }\n }\n}\n","import type { ThemeTokens } from '../../theme-system';\n\nconst isGroup = (value: unknown): value is Record<string, unknown> => !!value && typeof value === 'object' && !Array.isArray(value);\n/** Token leaves are atomic; groups merge without mutating either document. */\nexport function mergeThemeTokens(base: ThemeTokens, override?: ThemeTokens): ThemeTokens {\n function merge(a: unknown, b: unknown): unknown {\n if (b === undefined) return a;\n if (!isGroup(a) || !isGroup(b) || '$value' in b || '$value' in a) return b;\n const result = { ...a };\n for (const key of Object.keys(b)) result[key] = merge(a[key], b[key]);\n return result;\n }\n return merge(base, override) as ThemeTokens;\n}\n\nexport function uiVariable(path: string) {\n return '--monkeys-ui-' + path.replace(/^component\\.ui\\./, '').replace(/([a-z0-9])([A-Z])/g, '$1-$2').replace(/\\./g, '-').toLowerCase();\n}\n","import type { ThemeTokens } from '../../theme-system';\nimport base from './base.json';\nimport bsd from './tenants/bsd.json';\nimport { mergeThemeTokens } from './config';\n\nexport const baseThemeTokens = base as ThemeTokens;\nexport const uiThemePresets = {\n bsd: { id: 'bsd', label: 'BSD', colorModes: ['dark'], tokens: bsd as ThemeTokens },\n 'neutral-demo': { id: 'neutral-demo', label: 'Neutral Demo(演示)', colorModes: ['dark'], tokens: {} as ThemeTokens },\n} as const;\n\n/** Every selection starts from base, never from the previous tenant's result. */\nexport function getTenantTheme(tenant = 'bsd', override?: ThemeTokens): ThemeTokens {\n if (!Object.prototype.hasOwnProperty.call(uiThemePresets, tenant)) throw new TypeError(`Unknown UI tenant: ${tenant}`);\n const preset = uiThemePresets[tenant as keyof typeof uiThemePresets];\n return mergeThemeTokens(mergeThemeTokens(baseThemeTokens, preset.tokens), override);\n}\n","import { createContext, useContext, useEffect, useMemo, useState, type CSSProperties, type HTMLAttributes, type ReactNode } from 'react';\nimport { createPortal } from 'react-dom';\nimport { compileThemeTokens, getThemeTokenCssValue, type ThemeTokens, type CompiledThemeTokens } from '../../theme-system';\nimport { useMonkeysDirection, useMonkeysEnvironment, useMonkeysPortalOptions, useMonkeysResolvedTheme, useMonkeysLocale } from '../../provider/context';\nimport { zhCN, type MonkeysResolvedLocale } from '../../locale';\nimport * as TooltipPrimitive from '@radix-ui/react-tooltip';\nimport { getTenantTheme } from './presets';\nimport { mergeThemeTokens, uiVariable } from './config';\nimport { durationMilliseconds } from '../internal';\nexport { mergeThemeTokens } from './config';\n\nexport const defaultThemeTokens = getTenantTheme('bsd');\nconst defaultResolvedTokens = compileThemeTokens(defaultThemeTokens, { colorMode: 'dark' });\n\n/** Uses the canonical compiler: no second token resolver or value formatter. */\nexport function compileUITheme(tokens: ThemeTokens): Record<string, string> {\n return variablesFromTheme(compileThemeTokens(tokens, { colorMode: 'dark' }));\n}\nfunction variablesFromTheme(compiled: CompiledThemeTokens): Record<string, string> {\n const variables: Record<string, string> = {};\n for (const path of Object.keys(compiled.cssValues).filter(path => path.startsWith('component.ui.'))) {\n const name = uiVariable(path);\n if (variables[name] !== undefined) throw new TypeError(`Duplicate UI variable: ${name}`);\n variables[name] = getThemeTokenCssValue(compiled, path)!;\n }\n for (const name of ['foreground', 'page', 'focus', 'button-primary-background', 'font']) {\n if (!variables['--monkeys-ui-' + name]) throw new TypeError(`Missing required UI token: ${name}`);\n }\n return variables;\n}\n\ninterface UITheme { tokens: ThemeTokens; compiled: CompiledThemeTokens; variables: Record<string, string>; dir: 'ltr' | 'rtl'; tenant: string; density: 'compact' | 'default' | 'comfortable' }\nconst UIThemeContext = createContext<UITheme | null>(null);\nconst PortalDepthContext = createContext(0);\nexport function useUIDirection(explicit?: 'ltr' | 'rtl') {\n const theme = useContext(UIThemeContext);\n const inherited = useMonkeysDirection();\n const environment = useMonkeysEnvironment();\n const [documentDirection, setDocumentDirection] = useState<'ltr' | 'rtl'>();\n useEffect(() => {\n if (explicit || theme?.dir || inherited) return;\n const document = environment.getDocument?.() ?? globalThis.document;\n const root = document?.documentElement;\n if (!root) return;\n const update = () => setDocumentDirection(root.dir === 'rtl' ? 'rtl' : 'ltr');\n update(); const observer = new MutationObserver(update); observer.observe(root, { attributes: true, attributeFilter: ['dir'] });\n return () => observer.disconnect();\n }, [explicit, theme?.dir, inherited, environment]);\n return explicit ?? theme?.dir ?? inherited ?? documentDirection;\n}\nexport function useUILocale(): MonkeysResolvedLocale & { provided: boolean } { const locale = useMonkeysLocale(); return locale.provided ? locale : { ...zhCN, provided: false }; }\nexport function useTooltipScope() { return useContext(UIThemeContext) !== null; }\nconst inputDocuments = new WeakMap<Document, { count: number; dispose: () => void }>();\nfunction observeInput(document: Document) {\n const existing = inputDocuments.get(document);\n if (existing) { existing.count++; return () => releaseInput(document); }\n const root = document.documentElement;\n const previous = root.getAttribute('data-monkeys-ui-input');\n const pointer = () => root.setAttribute('data-monkeys-ui-input', 'pointer');\n const keyboard = () => root.setAttribute('data-monkeys-ui-input', 'keyboard');\n document.addEventListener('pointerdown', pointer, true);\n document.addEventListener('keydown', keyboard, true);\n inputDocuments.set(document, { count: 1, dispose: () => { document.removeEventListener('pointerdown', pointer, true); document.removeEventListener('keydown', keyboard, true); if (previous === null) root.removeAttribute('data-monkeys-ui-input'); else root.setAttribute('data-monkeys-ui-input', previous); } });\n return () => releaseInput(document);\n}\nfunction releaseInput(document: Document) { const entry = inputDocuments.get(document); if (entry && --entry.count === 0) { entry.dispose(); inputDocuments.delete(document); } }\nexport interface ThemeProviderProps extends HTMLAttributes<HTMLDivElement> { tokens?: ThemeTokens; tenant?: string; density?: 'compact' | 'default' | 'comfortable' }\nexport function ThemeProvider({ tokens, tenant, density, children, className, style, dir, ...rest }: ThemeProviderProps) {\n const parent = useContext(UIThemeContext);\n const inherited = useMonkeysResolvedTheme();\n const inheritedDirection = useMonkeysDirection();\n const tenantId = tenant ?? parent?.tenant ?? 'bsd';\n const effectiveDensity = density ?? parent?.density ?? 'default';\n const document = useMemo(() => {\n const foundation = tenant ? getTenantTheme(tenant) : parent?.tokens ?? mergeThemeTokens(defaultThemeTokens, inherited?.contract);\n const dimensionAlias = (path: string) => ({ $type: 'dimension' as const, $value: `{${path}}` });\n const densityOverride: ThemeTokens | undefined = density === undefined && !tenant ? undefined : { component: { ui: {\n controlHeight: dimensionAlias(`semantic.ui.control.height.${effectiveDensity === 'compact' ? 'sm' : effectiveDensity === 'comfortable' ? 'lg' : 'md'}`),\n button: { paddingBlock: dimensionAlias(`component.ui.density.${effectiveDensity}.buttonPaddingBlock`) },\n input: { paddingBlock: dimensionAlias(`component.ui.density.${effectiveDensity}.inputPaddingBlock`) },\n } } };\n return mergeThemeTokens(mergeThemeTokens(foundation, densityOverride), tokens);\n }, [tenant, density, effectiveDensity, parent?.tokens, inherited?.contract, tokens]);\n const compiled = useMemo(() => compileThemeTokens(document, { colorMode: 'dark', density: effectiveDensity }), [document, effectiveDensity]);\n const variables = useMemo(() => variablesFromTheme(compiled), [compiled]);\n const direction = (dir === 'rtl' || dir === 'ltr' ? dir : parent?.dir ?? inheritedDirection ?? 'ltr');\n const context = useMemo(() => ({ tokens: document, compiled, variables, dir: direction, tenant: tenantId, density: effectiveDensity }), [document, compiled, variables, direction, tenantId, effectiveDensity]);\n return <UIThemeContext.Provider value={context}><TooltipPrimitive.Provider delayDuration={durationMilliseconds(compiled.values['component.ui.tooltip.delay'])} skipDelayDuration={durationMilliseconds(compiled.values['component.ui.tooltip.skipDelay'])}><div {...rest} dir={direction} data-monkeys-ui-tenant={tenantId} data-monkeys-ui-theme=\"dark\" className={['monkeys-ui-scope', className].filter(Boolean).join(' ')} style={{ ...variables, ...style } as CSSProperties}>{children}</div></TooltipPrimitive.Provider></UIThemeContext.Provider>;\n}\n\n/** JS renderers consume the same resolved document as CSS and Portal. */\nexport function useUIResolvedTokens() {\n const theme = useContext(UIThemeContext);\n const inherited = useMonkeysResolvedTheme();\n return useMemo(() => theme?.compiled ?? (inherited?.contract ? compileThemeTokens(mergeThemeTokens(defaultThemeTokens, inherited.contract), { colorMode: 'dark' }) : defaultResolvedTokens), [theme?.compiled, inherited?.contract]);\n}\n\n/** Client-only host preserves the theme and direction across body portals. */\nexport function Portal({ children }: { children: ReactNode }) {\n const theme = useContext(UIThemeContext);\n const environment = useMonkeysEnvironment();\n const options = useMonkeysPortalOptions();\n const direction = useUIDirection();\n const depth = useContext(PortalDepthContext) + 1;\n const [host, setHost] = useState<Element | null>(null);\n useEffect(() => {\n const document = environment.getDocument?.() ?? globalThis.document;\n setHost(typeof options.container === 'function' ? options.container() : options.container ?? document?.body ?? null);\n return document ? observeInput(document) : undefined;\n }, [environment, options.container]);\n const baseLayer = Number(theme?.variables['--monkeys-ui-layer-overlay-base'] ?? defaultResolvedTokens.values['component.ui.layer.overlayBase']);\n const nestingStep = Number(theme?.variables['--monkeys-ui-layer-nesting-step'] ?? defaultResolvedTokens.values['component.ui.layer.nestingStep']);\n const content = <PortalDepthContext.Provider value={depth}><div className=\"monkeys-ui-scope monkeys-ui-portal\" dir={direction} data-monkeys-ui-tenant={theme?.tenant ?? 'bsd'} data-monkeys-ui-theme=\"dark\" style={{ ...theme?.variables, '--monkeys-ui-overlay-layer': baseLayer + depth * nestingStep } as CSSProperties}>{children}</div></PortalDepthContext.Provider>;\n return options.disabled ? content : host ? createPortal(content, host) : null;\n}\n","import { forwardRef, type HTMLAttributes } from 'react';\nimport * as ScrollArea from '@radix-ui/react-scroll-area';\nimport { useUIDirection, useUIResolvedTokens } from './theme/theme';\nimport { cx, durationMilliseconds } from './internal';\n\ninterface ScrollSurfaceProps extends HTMLAttributes<HTMLElement> {\n as?: 'section' | 'aside';\n}\n\n/** Internal bento surface: native scrolling with transient, overlaid drag handles. */\nexport const ScrollSurface = forwardRef<HTMLElement, ScrollSurfaceProps>(function ScrollSurface({ as: Element = 'section', children, className, onScroll, dir, ...props }, ref) {\n const direction = useUIDirection(dir === 'rtl' || dir === 'ltr' ? dir : undefined);\n const tokens = useUIResolvedTokens();\n const delay = durationMilliseconds(tokens.values['component.ui.scrollSurface.hideDelay']);\n return <ScrollArea.Root asChild type=\"scroll\" scrollHideDelay={delay} dir={direction}>\n <Element {...props} ref={ref} className={cx('monkeys-ui-scroll-surface', className)}>\n <ScrollArea.Viewport className=\"monkeys-ui-scroll-viewport\" tabIndex={0} role=\"group\" aria-labelledby={props['aria-labelledby']} aria-label={props['aria-labelledby'] ? undefined : props['aria-label'] ?? '滚动内容'} onScroll={onScroll}>\n {children}\n </ScrollArea.Viewport>\n <ScrollArea.Scrollbar orientation=\"vertical\" className=\"monkeys-ui-scrollbar\" aria-hidden=\"true\"><ScrollArea.Thumb className=\"monkeys-ui-scroll-thumb\" /></ScrollArea.Scrollbar>\n <ScrollArea.Scrollbar orientation=\"horizontal\" className=\"monkeys-ui-scrollbar\" aria-hidden=\"true\"><ScrollArea.Thumb className=\"monkeys-ui-scroll-thumb\" /></ScrollArea.Scrollbar>\n </Element>\n </ScrollArea.Root>;\n});\n","import { useEffect, useState } from 'react';\n\n/** SSR and accessibility modes use the static surface; preferences stay live. */\nexport function useShaderEnabled() {\n const [enabled, setEnabled] = useState(false);\n useEffect(() => {\n const motion = window.matchMedia('(prefers-reduced-motion: reduce)');\n const colors = window.matchMedia('(forced-colors: active)');\n const update = () => setEnabled(!motion.matches && !colors.matches);\n update();\n motion.addEventListener('change', update); colors.addEventListener('change', update);\n return () => { motion.removeEventListener('change', update); colors.removeEventListener('change', update); };\n }, []);\n return enabled;\n}\n","import { getThemeTokenCssValue, type CompiledThemeTokens } from '../../theme-system';\n\nexport function resolveEffectTokens(theme: CompiledThemeTokens) {\n const color = (name: string) => {\n const path = `semantic.color.effect.${name}.dark`;\n const value = theme.values[path] as { hex?: string } | undefined;\n return value?.hex ?? getThemeTokenCssValue(theme, path)!;\n };\n const number = (effect: string, name: string) => Number(theme.values[`component.ui.effect.${effect}.${name}`]);\n return {\n start: color('start'), end: color('end'), lightEdgeStart: color('lightEdgeStart'),\n chroma: { intensity: number('chroma', 'intensity'), momentum: number('chroma', 'momentum'), radius: number('chroma', 'radius') },\n aurora: { curtainCount: number('aurora', 'curtainCount'), height: number('aurora', 'height'), intensity: number('aurora', 'intensity'), rayDensity: number('aurora', 'rayDensity'), speed: number('aurora', 'speed'), waviness: number('aurora', 'waviness') },\n lightEdge: { thickness: number('lightEdge', 'thickness'), softness: number('lightEdge', 'softness'), intensity: number('lightEdge', 'intensity'), bloom: number('lightEdge', 'bloom'), spots: number('lightEdge', 'spots'), spotSize: number('lightEdge', 'spotSize'), smoke: number('lightEdge', 'smoke'), smokeSize: number('lightEdge', 'smokeSize'), speed: number('lightEdge', 'speed') },\n rotation: number('aurora', 'rotation'), glowBlur: number('lightEdge', 'glowBlur'), flowBlur: number('lightEdge', 'flowBlur'), shapeInset: number('lightEdge', 'shapeInset'),\n };\n}\n","import { useEffect, useRef, useState, type ComponentProps, type CSSProperties, type HTMLAttributes, type ReactNode } from 'react';\nimport { cx } from './internal';\nimport { useShaderEnabled } from './motion';\nimport { useUIResolvedTokens } from './theme/theme';\nimport { resolveEffectTokens } from './theme/effect-tokens';\n\ntype ShaderModule = typeof import('shaders/react');\ntype AuroraShaderProps = ComponentProps<ShaderModule['Aurora']>;\ntype ChromaFlowShaderProps = ComponentProps<ShaderModule['ChromaFlow']>;\ntype LightEdgeShaderProps = ComponentProps<ShaderModule['LightEdge']>;\ntype EffectHostProps = Omit<HTMLAttributes<HTMLDivElement>, 'children'> & {\n onUnavailable?: (reason: string) => void;\n};\n\n/** One lifecycle and fallback surface for all public shader effects. */\nfunction ShaderEffect({ effect, className, style, onUnavailable, children, ...hostProps }: EffectHostProps & {\n effect: 'aurora' | 'chroma' | 'light-edge';\n children: (module: ShaderModule) => ReactNode;\n}) {\n const [module, setModule] = useState<ShaderModule | null>(null);\n const [ready, setReady] = useState(false);\n const enabled = useShaderEnabled();\n const unavailable = useRef(onUnavailable);\n useEffect(() => { unavailable.current = onUnavailable; }, [onUnavailable]);\n useEffect(() => {\n if (!enabled) { setReady(false); return; }\n let active = true;\n import('shaders/react').then(loaded => {\n if (active) setModule(loaded);\n }).catch(error => {\n if (active) unavailable.current?.(error instanceof Error ? error.message : String(error));\n });\n return () => { active = false; };\n }, [enabled]);\n const hostStyle: CSSProperties = { height: 'var(--monkeys-ui-effect-host-height,var(--monkeys-ui-default-effect-host-height))', ...style, position: 'relative', overflow: 'hidden' };\n return <div {...hostProps} className={cx('monkeys-ui-shader-effect', className)} style={hostStyle}>\n {!ready ? <div aria-hidden=\"true\" className=\"monkeys-ui-shader-fallback\" data-effect={effect} /> : null}\n {enabled && module ? <module.Shader disableTelemetry style={{ width: '100%', height: '100%' }} onReady={() => setReady(true)} onUnavailable={reason => { setReady(false); unavailable.current?.(reason); }}>{children(module)}</module.Shader> : null}\n </div>;\n}\n\n/** Host identity, accessibility and events never become Shader component props. */\nfunction splitHostProps(props: Record<string, unknown>) {\n const host: Record<string, unknown> = {}; const shader: Record<string, unknown> = {};\n const native = new Set(['id', 'role', 'title', 'tabIndex', 'dir', 'lang', 'hidden', 'draggable', 'contentEditable', 'accessKey', 'translate', 'spellCheck', 'suppressHydrationWarning', 'slot']);\n for (const [key, value] of Object.entries(props)) (native.has(key) || key.startsWith('aria-') || key.startsWith('data-') || /^on[A-Z]/.test(key) ? host : shader)[key] = value;\n return { host, shader };\n}\n\nexport interface AuroraProps extends EffectHostProps, Partial<AuroraShaderProps> {}\nexport function Aurora({ className, style, onUnavailable, ...props }: AuroraProps) {\n const { host, shader } = splitHostProps(props); const tokens = resolveEffectTokens(useUIResolvedTokens());\n return <ShaderEffect {...host} effect=\"aurora\" className={className} style={style} onUnavailable={onUnavailable}>{module => <module.Aurora colorA={tokens.start} colorB={tokens.end} {...shader} />}</ShaderEffect>;\n}\n\nexport interface ChromaFlowProps extends EffectHostProps, Partial<ChromaFlowShaderProps> {}\nexport function ChromaFlow({ className, style, onUnavailable, ...props }: ChromaFlowProps) {\n const { host, shader } = splitHostProps(props); const tokens = resolveEffectTokens(useUIResolvedTokens());\n return <ShaderEffect {...host} effect=\"chroma\" className={className} style={style} onUnavailable={onUnavailable}>{module => <module.ChromaFlow baseColor={tokens.start} upColor={tokens.end} {...shader} />}</ShaderEffect>;\n}\n\nexport interface LightEdgeProps extends EffectHostProps, Partial<LightEdgeShaderProps> {}\nexport function LightEdge({ className, style, onUnavailable, ...props }: LightEdgeProps) {\n const { host, shader } = splitHostProps(props); const tokens = resolveEffectTokens(useUIResolvedTokens());\n return <ShaderEffect {...host} effect=\"light-edge\" className={className} style={style} onUnavailable={onUnavailable}>{module => <module.LightEdge colorA={tokens.lightEdgeStart} colorB={tokens.end} {...shader} />}</ShaderEffect>;\n}\n\n/** A CSS fallback-first surface effect with a soft blue/violet glow anchored to the bottom edge. */\nexport interface BottomGlowProps extends Omit<HTMLAttributes<HTMLDivElement>, 'children'> {\n /** Disable the very subtle drift while keeping the static glow. */\n animated?: boolean;\n}\n\nexport function BottomGlow({ className, style, animated = true, ...props }: BottomGlowProps) {\n const hostStyle: CSSProperties = {\n height: 'var(--monkeys-ui-effect-host-height,var(--monkeys-ui-default-effect-host-height))',\n ...style,\n };\n return <div {...props} className={cx('monkeys-ui-bottom-glow', className)} data-animated={animated ? 'true' : 'false'} style={hostStyle} />;\n}\n","/** Host-supplied samples use white ink, switching to black on near-white backgrounds. */\nexport function sampleInk(color?: string) {\n if (!color || !/^#([\\da-f]{3}|[\\da-f]{6})$/i.test(color)) return 'light';\n const hex = color.slice(1).length === 3 ? [...color.slice(1)].map(value => value + value).join('') : color.slice(1);\n const channels = [0, 2, 4].map(index => {\n const value = parseInt(hex.slice(index, index + 2), 16) / 255;\n return value <= 0.04045 ? value / 12.92 : ((value + 0.055) / 1.055) ** 2.4;\n });\n const luminance = channels[0] * 0.2126 + channels[1] * 0.7152 + channels[2] * 0.0722;\n // Preserve white labels on saturated swatches; reserve black for very light fills.\n return luminance >= 0.8 ? 'dark' : 'light';\n}\n","import { useEffect, useId, useRef, useState, type ComponentProps } from 'react';\nimport { useShaderEnabled } from './motion';\nimport { useUIResolvedTokens } from './theme/theme';\nimport { resolveEffectTokens } from './theme/effect-tokens';\n\ntype ShaderModule = typeof import('shaders/react');\nexport type ButtonLightEdgeOptions = Partial<Pick<ComponentProps<ShaderModule['LightEdge']>,\n 'colorA' | 'colorB' | 'colorSpace' | 'thickness' | 'softness' | 'intensity' | 'bloom' | 'spots' | 'spotSize' | 'pulse' | 'smoke' | 'smokeSize' | 'speed' | 'seed'>>;\n\n/** Decorative only: the button owns sizing, clipping, focus, and pointer input. */\nexport function ButtonLightEdge(options: ButtonLightEdgeOptions) {\n const filterId = `button-light-edge-${useId().replace(/:/g, '')}`;\n const hostRef = useRef<HTMLSpanElement>(null);\n const [module, setModule] = useState<ShaderModule | null>(null);\n const enabled = useShaderEnabled();\n const theme = useUIResolvedTokens();\n const tokens = resolveEffectTokens(theme);\n const [ready, setReady] = useState(false);\n const [shape, setShape] = useState<Record<string, number | string> | null>(null);\n\n\n useEffect(() => {\n if (!enabled) return;\n let active = true;\n import('shaders/react').then(loaded => { if (active) setModule(loaded); }).catch(() => {});\n return () => { active = false; };\n }, [enabled]);\n\n useEffect(() => {\n const host = hostRef.current;\n const button = host?.closest('button');\n if (!button || !host) return;\n const update = () => {\n const width = host.clientWidth;\n const height = host.clientHeight;\n if (!width || !height) return;\n const radiusValue = getComputedStyle(button).borderTopLeftRadius;\n const radius = radiusValue.endsWith('%')\n ? Math.min(width, height) * parseFloat(radiusValue) / 100\n : parseFloat(radiusValue) || 0;\n const inset = tokens.shapeInset;\n setShape({ type: 'roundedRectSDF', radius: Math.max(0.01, width / (2 * height) - inset / height), height: Math.max(0.01, 0.5 - inset / height), rounding: Math.max(0, Math.min(radius - inset, height / 2 - inset)) / height });\n };\n update();\n const observer = new ResizeObserver(update);\n observer.observe(button);\n return () => observer.disconnect();\n }, [theme]);\n\n return <span ref={hostRef} className=\"monkeys-ui-button-light-edge-mask\" data-ready={ready || undefined}>\n <svg width=\"0\" height=\"0\" aria-hidden=\"true\" className=\"monkeys-ui-button-light-edge-defs\">\n <defs>\n {/* Composite a diffuse glow and a soft flow from the same canvas. */}\n <filter id={filterId} x=\"-30%\" y=\"-100%\" width=\"160%\" height=\"300%\" colorInterpolationFilters=\"sRGB\">\n <feGaussianBlur in=\"SourceGraphic\" stdDeviation={tokens.glowBlur} result=\"glow\" />\n <feGaussianBlur in=\"SourceGraphic\" stdDeviation={tokens.flowBlur} result=\"flow\" />\n <feMerge><feMergeNode in=\"glow\" /><feMergeNode in=\"flow\" /></feMerge>\n </filter>\n </defs>\n </svg>\n <span className=\"monkeys-ui-button-light-edge-flow\" style={{ filter: `url(#${filterId})` }}>\n <span className=\"monkeys-ui-button-light-edge-ambient\" />\n {enabled && module && shape ? <module.Shader disableTelemetry style={{ width: '100%', height: '100%' }} onReady={() => setReady(true)}>\n <module.LightEdge colorA={tokens.lightEdgeStart} colorB={tokens.end} {...tokens.lightEdge} {...options} stops={null} shape={shape} />\n </module.Shader> : null}\n </span>\n </span>;\n}\n","import { Children, cloneElement, createContext, forwardRef, isValidElement, useContext, useEffect, useId, useImperativeHandle, useRef, useState, type ButtonHTMLAttributes, type InputHTMLAttributes, type TextareaHTMLAttributes, type HTMLAttributes, type ReactElement, type ReactNode, type CSSProperties } from 'react';\nimport * as SwitchPrimitive from '@radix-ui/react-switch';\nimport * as SelectPrimitive from '@radix-ui/react-select';\nimport * as TabsPrimitive from '@radix-ui/react-tabs';\nimport * as ToggleGroup from '@radix-ui/react-toggle-group';\nimport * as MenuPrimitive from '@radix-ui/react-dropdown-menu';\nimport { cx, useControllable, useFormReset } from './internal';\nimport { Portal, useUIDirection, useUILocale } from './theme/theme';\nimport { Search, X, Plus, ChevronDown, ChevronUp, Check } from 'lucide-react';\nimport { sampleInk } from './sample-color';\nimport { ButtonLightEdge, type ButtonLightEdgeOptions } from './button-light-edge';\nimport { useShaderEnabled } from './motion';\n\ninterface ButtonBaseProps extends ButtonHTMLAttributes<HTMLButtonElement> { variant?: 'solid' | 'soft' | 'outline' | 'ghost' | 'switch'; tone?: 'neutral' | 'primary' | 'danger'; size?: 'sm' | 'md' | 'lg'; loading?: boolean; icon?: ReactNode; lightEdge?: boolean | ButtonLightEdgeOptions; toggle?: boolean; checked?: boolean; defaultChecked?: boolean; onCheckedChange?: (checked: boolean) => void; required?: boolean }\ntype ButtonShapeProps = { shape?: 'default' | 'tile' } | { shape: 'icon'; 'aria-label': string };\nexport type ButtonProps = ButtonBaseProps & ButtonShapeProps;\nexport const Button = forwardRef<HTMLButtonElement, ButtonProps>(function Button({ variant, shape = 'default', icon, tone = 'neutral', size = 'md', loading = false, lightEdge = false, toggle = false, checked, defaultChecked, onCheckedChange, required, type = 'button', className, children, onClick, onPointerDown, onKeyDown, ...props }, ref) {\n const direction = useUIDirection();\n const [pressed, setPressed] = useControllable(checked, defaultChecked, false, onCheckedChange);\n if (variant === 'switch') return <Switch {...props} ref={ref} type={type} value={props.value === undefined ? undefined : String(props.value)} required={required} checked={checked} defaultChecked={defaultChecked} onCheckedChange={onCheckedChange} className={cx('monkeys-ui-button-switch', className)} data-variant=\"switch\" data-tone=\"primary\" data-size={size} aria-label={props['aria-label'] ?? (typeof children === 'string' ? children : undefined)} aria-busy={loading || undefined} aria-disabled={loading || props['aria-disabled']} onPointerDown={onPointerDown} onKeyDown={onKeyDown} onClick={event => { if (loading || props['aria-disabled'] === true || props['aria-disabled'] === 'true') { event.preventDefault(); return; } onClick?.(event); }} />;\n return <button {...props} dir={props.dir ?? direction} ref={ref} type={type} className={cx('monkeys-ui-button', className)} data-light-edge={lightEdge ? true : undefined} data-shape={shape} data-variant={variant ?? (shape === 'icon' ? 'ghost' : shape === 'tile' ? 'outline' : 'solid')} data-tone={tone} data-size={size} onPointerDown={event => { event.currentTarget.dataset.input = 'pointer'; onPointerDown?.(event); }} onKeyDown={event => { event.currentTarget.dataset.input = 'keyboard'; onKeyDown?.(event); }} aria-pressed={toggle ? pressed : props['aria-pressed']} aria-busy={loading || undefined} aria-disabled={loading || props['aria-disabled']} onClick={event => { if (loading || props['aria-disabled'] === true || props['aria-disabled'] === 'true') { event.preventDefault(); return; } onClick?.(event); if (toggle && !event.defaultPrevented) setPressed(!pressed); }}>{lightEdge ? <span className=\"monkeys-ui-button-light-edge\" aria-hidden=\"true\"><ButtonLightEdge {...(lightEdge === true ? {} : lightEdge)} /></span> : null}<span className=\"monkeys-ui-button-label\" data-loading={loading || undefined}>{icon ? <span className=\"monkeys-ui-button-icon\" aria-hidden=\"true\">{icon}</span> : null}{children}</span>{loading ? <span className=\"monkeys-ui-button-spinner\" aria-hidden=\"true\" /> : null}</button>;\n});\nexport type ToggleButtonProps = Omit<ButtonBaseProps, 'value' | 'defaultValue' | 'variant'> & ButtonShapeProps & { variant?: Exclude<ButtonBaseProps['variant'], 'switch'> };\n/** Compatibility entry; prefer Button toggle. */\nexport const ToggleButton = forwardRef<HTMLButtonElement, ToggleButtonProps>(function ToggleButton(props, ref) {\n return <Button {...props} ref={ref} toggle />;\n});\n\nexport interface ColorOption { id: string; label: string; color: string }\nexport interface ColorSliderProps extends Omit<InputHTMLAttributes<HTMLInputElement>, 'type' | 'value' | 'defaultValue' | 'onChange' | 'min' | 'max' | 'step' | 'children'> {\n options: ColorOption[];\n value?: string;\n defaultValue?: string;\n onValueChange?: (value: string) => void;\n onValueCommit?: (value: string) => void;\n}\n/** A native, discrete range control. The gradient never creates selectable intermediate colors. */\nexport const ColorSlider = forwardRef<HTMLInputElement, ColorSliderProps>(function ColorSlider({ options, value, defaultValue, onValueChange, onValueCommit, disabled, readOnly, className, style, onPointerDown, onPointerMove, onPointerCancel, onKeyDown, onPointerUp, onKeyUp, dir, name, ...props }, ref) {\n const field = useField(props);\n const direction = useUIDirection(dir === 'rtl' || dir === 'ltr' ? dir : undefined);\n const [selected, setSelected] = useControllable(value, defaultValue, options[0]?.id ?? '', onValueChange);\n const input = useRef<HTMLInputElement>(null);\n const initial = useRef(defaultValue ?? options[0]?.id ?? '');\n useImperativeHandle(ref, () => input.current!, []);\n useFormReset(input, () => { if (value === undefined) setSelected(initial.current); });\n const index = Math.max(0, options.findIndex(option => option.id === selected));\n const option = options[index];\n const motionEnabled = useShaderEnabled();\n const [interaction, setInteraction] = useState<'pointer' | 'drag' | 'keyboard'>('keyboard');\n const pointer = useRef<{ id: number; x: number; y: number } | null>(null);\n const animated = motionEnabled && interaction === 'pointer' && !disabled && !readOnly;\n // Keep two stable layers so rapid changes retarget their opacity transitions.\n const sample = { label: option?.label, color: option?.color };\n const [samples, setSamples] = useState({ layers: [sample, sample], active: 0 });\n const current = samples.layers[samples.active];\n if (current.label !== sample.label || current.color !== sample.color) {\n const active = 1 - samples.active;\n setSamples({ layers: samples.layers.map((layer, index) => index === active ? sample : layer), active });\n }\n const position = options.length > 1 ? index / (options.length - 1) : 0.5;\n // Native hit target, visual thumb and gradient stops share the same inset.\n const location = (fraction: number) => `calc(${fraction * 100}% + ${0.5 - fraction} * var(--monkeys-ui-color-slider-thumb-width,var(--monkeys-ui-default-color-slider-thumb-width)))`;\n const gradient = options.map((item, index) => {\n const t = options.length > 1 ? index / (options.length - 1) : 0;\n return `${item.color} ${location(t)}`;\n });\n const background = options.length > 1 ? `linear-gradient(to ${direction === 'rtl' ? 'left' : 'right'}, ${gradient.join(', ')})` : option?.color;\n const locked = disabled || readOnly || options.length < 2;\n const commit = (input: HTMLInputElement) => {\n const next = options[Number(input.value)];\n if (!locked && next) onValueCommit?.(next.id);\n };\n return <div className={cx('monkeys-ui-color-slider', className)} data-animated={animated || undefined} data-disabled={disabled || options.length === 0 || undefined} dir={direction} style={style}>\n <span className=\"monkeys-ui-color-slider-track\" style={{ background }} aria-hidden=\"true\" />\n <span className=\"monkeys-ui-color-slider-positioner\" style={{ transform: `translateX(${(direction === 'rtl' ? -1 : 1) * position * 100}%)` }} aria-hidden=\"true\">\n <span className=\"monkeys-ui-color-slider-thumb\" data-ink={sampleInk(option?.color)} style={{ '--monkeys-ui-color-slider-selected': option?.color } as CSSProperties}>\n {samples.layers.map((layer, index) => <span key={index} className=\"monkeys-ui-color-slider-sample\" data-active={index === samples.active} data-ink={sampleInk(layer.color)} style={{ '--monkeys-ui-color-slider-selected': layer.color } as CSSProperties}><span className={index === samples.active ? 'monkeys-ui-color-slider-label' : 'monkeys-ui-color-slider-previous-label'}>{layer.label}</span></span>)}\n </span>\n </span>\n <input {...props} {...field} ref={input} type=\"range\" dir={direction} min={0} max={Math.max(0, options.length - 1)} step={1} value={index} disabled={disabled || options.length === 0} aria-readonly={readOnly || undefined} aria-valuetext={option?.label ?? ''} className=\"monkeys-ui-color-slider-input\" onPointerDown={event => {\n onPointerDown?.(event);\n if (readOnly) event.preventDefault();\n if (!locked && !event.defaultPrevented && event.isPrimary !== false && event.button === 0) {\n pointer.current = { id: event.pointerId, x: event.clientX, y: event.clientY };\n setInteraction('pointer');\n }\n }} onPointerMove={event => {\n onPointerMove?.(event);\n const start = pointer.current;\n if (start?.id === event.pointerId && Math.hypot(event.clientX - start.x, event.clientY - start.y) > 3) setInteraction('drag');\n }} onPointerCancel={event => { pointer.current = null; setInteraction('keyboard'); onPointerCancel?.(event); }} onKeyDown={event => { pointer.current = null; setInteraction('keyboard'); onKeyDown?.(event); if (readOnly && ['ArrowLeft','ArrowRight','ArrowUp','ArrowDown','Home','End','PageUp','PageDown'].includes(event.key)) event.preventDefault(); }} onChange={event => { if (!locked) { const next = options[Number(event.target.value)]; if (next) setSelected(next.id); } }} onPointerUp={event => { pointer.current = null; onPointerUp?.(event); if (!event.defaultPrevented) commit(event.currentTarget); }} onKeyUp={event => { onKeyUp?.(event); if (!event.defaultPrevented && ['ArrowLeft','ArrowRight','ArrowUp','ArrowDown','Home','End','PageUp','PageDown'].includes(event.key)) commit(event.currentTarget); }} />\n {name ? <input type=\"hidden\" name={name} form={props.form} value={option?.id ?? ''} disabled={disabled || options.length === 0} /> : null}\n </div>;\n});\n\ninterface FieldContextValue { id: string; describedBy?: string; invalid?: boolean; required?: boolean }\nconst FieldContext = createContext<FieldContextValue | null>(null);\nfunction useField(props: { id?: string; dir?: string; 'aria-describedby'?: string; 'aria-invalid'?: InputHTMLAttributes<HTMLInputElement>['aria-invalid']; required?: boolean }) {\n const field = useContext(FieldContext);\n const direction = useUIDirection(props.dir === 'rtl' || props.dir === 'ltr' ? props.dir : undefined);\n return { id: field?.id ?? props.id, dir: props.dir ?? direction, 'aria-describedby': [field?.describedBy, props['aria-describedby']].filter(Boolean).join(' ') || undefined, 'aria-invalid': props['aria-invalid'] ?? field?.invalid, required: props.required ?? field?.required };\n}\nexport interface FieldProps extends Omit<HTMLAttributes<HTMLDivElement>, 'children'> { label: ReactNode; labelAccessory?: ReactNode; children: ReactElement; description?: ReactNode; descriptionHidden?: boolean; error?: ReactNode; invalid?: boolean; required?: boolean }\nexport function Field({ id: explicitId, label, labelAccessory, description, descriptionHidden, error, invalid, required, className, children, ...props }: FieldProps) {\n const generated = useId();\n const id = explicitId ?? (isValidElement<{ id?: string }>(children) ? children.props.id : undefined) ?? generated;\n const describedBy = [description ? id + '-description' : '', error ? id + '-error' : ''].filter(Boolean).join(' ') || undefined;\n const fieldLabel = <label className=\"monkeys-ui-label\" htmlFor={id}>{label}{required ? <span className=\"monkeys-ui-required\" aria-hidden=\"true\"> *</span> : null}</label>;\n return <div {...props} className={cx('monkeys-ui-field', className)}>\n {labelAccessory ? <div className=\"flex items-center gap-1\" data-slot=\"label-row\">{fieldLabel}{labelAccessory}</div> : fieldLabel}\n <FieldContext.Provider value={{ id, describedBy, invalid: invalid ?? !!error, required }}>{Children.only(children)}</FieldContext.Provider>\n {description ? <div id={id + '-description'} className={descriptionHidden ? 'monkeys-ui-visually-hidden' : 'monkeys-ui-description'}>{description}</div> : null}\n {error ? <div id={id + '-error'} className=\"monkeys-ui-error\" role=\"alert\">{error}</div> : null}\n </div>;\n}\nexport interface FieldsetProps extends HTMLAttributes<HTMLFieldSetElement> { legend: ReactNode; disabled?: boolean }\nexport function Fieldset({ legend, children, className, ...props }: FieldsetProps) { return <fieldset {...props} className={cx('monkeys-ui-fieldset', className)}>{legend != null ? <legend>{legend}</legend> : null}{children}</fieldset>; }\ntype InputTagsProps = Omit<InputHTMLAttributes<HTMLInputElement>, 'value' | 'defaultValue' | 'type'> & {\n variant: 'tags';\n mode?: 'input';\n value?: string[];\n defaultValue?: string[];\n onValueChange?: (value: string[]) => void;\n /** Optional controlled draft for forms that own uncommitted text. */\n inputValue?: string;\n onInputValueChange?: (value: string) => void;\n removeLabel?: string;\n};\nexport interface InputTagItem { id: string; label: string }\ntype InputTagSelectionProps = Omit<InputHTMLAttributes<HTMLInputElement>, 'value' | 'defaultValue' | 'type' | 'onChange' | 'children'> & {\n variant: 'tags';\n mode: 'select';\n label: string;\n items: InputTagItem[];\n onAdd?: () => void;\n onRemove?: (id: string) => void;\n removeLabel?: string;\n};\ntype InputSearchProps = SearchFieldProps & Pick<InputHTMLAttributes<HTMLInputElement>, 'onChange'> & { variant: 'search' };\ntype InputNumberProps = NumberInputProps & Pick<InputHTMLAttributes<HTMLInputElement>, 'onChange'> & { variant: 'number' };\nexport type InputProps = (InputHTMLAttributes<HTMLInputElement> & { variant?: 'default' }) | InputTagsProps | InputTagSelectionProps | InputSearchProps | InputNumberProps;\nexport const Input = forwardRef<HTMLInputElement, InputProps>(function Input(props, ref) {\n const field = useField(props);\n if (props.variant === 'tags') return props.mode === 'select' ? <InputTagSelectionControl {...props} ref={ref} /> : <InputTagsControl {...props} ref={ref} />;\n if (props.variant === 'search') return <InputSearchControl {...props} ref={ref} />;\n if (props.variant === 'number') return <InputNumberControl {...props} ref={ref} />;\n const { variant, className, ...nativeProps } = props;\n return <input {...nativeProps} {...field} className={cx('monkeys-ui-input', className)} ref={ref} />;\n});\nconst InputTagsControl = forwardRef<HTMLInputElement, InputTagsProps>(function InputTagsControl({\n variant, mode, value, defaultValue, onValueChange, inputValue, onInputValueChange, removeLabel = '删除', name, form, className, style,\n disabled, readOnly, placeholder = '输入并回车后添加', onChange, onKeyDown, onCompositionStart, onCompositionEnd, ...props\n}, ref) {\n const field = useField(props);\n const [tags, setTags] = useControllable(value, defaultValue, [], onValueChange);\n const [draft, setDraft] = useControllable(inputValue, undefined, '', onInputValueChange);\n const [announcement, setAnnouncement] = useState('');\n const composing = useRef(false);\n const input = useRef<HTMLInputElement>(null);\n const locked = disabled || readOnly;\n useImperativeHandle(ref, () => input.current!, []);\n const initialTags = useRef(defaultValue ?? []);\n useFormReset(input, () => { if (value === undefined) setTags(initialTags.current); setDraft(''); });\n useEffect(() => {\n input.current?.setCustomValidity(field.required && tags.length === 0 ? '请至少添加一个标签' : '');\n }, [field.required, tags.length]);\n const remove = (index: number) => {\n if (locked) return;\n setTags(tags.filter((_, current) => current !== index));\n setAnnouncement(`${removeLabel} ${tags[index]}`);\n input.current?.focus();\n };\n return <div className={cx('monkeys-ui-tag-input', className)} style={style} dir={field.dir} data-variant={variant} data-disabled={disabled || undefined} data-readonly={readOnly || undefined} data-invalid={field['aria-invalid'] || undefined} onClick={event => {\n if (!disabled && !(event.target as HTMLElement).closest('button')) input.current?.focus();\n }}>\n {tags.map((tag, index) => <InputTag key={`${index}:${tag}`} label={tag} disabled={locked} removeLabel={removeLabel} onRemove={() => remove(index)} />)}\n <input {...props} {...field} ref={input} form={form} type=\"text\" className=\"monkeys-ui-tag-input-editor\" disabled={disabled} readOnly={readOnly} placeholder={placeholder} value={draft} required={field.required && tags.length === 0} aria-required={field.required || undefined} onChange={event => {\n if (locked) return;\n setDraft(event.target.value);\n onChange?.(event);\n }} onCompositionStart={event => { composing.current = true; onCompositionStart?.(event); }} onCompositionEnd={event => { composing.current = false; onCompositionEnd?.(event); }} onKeyDown={event => {\n onKeyDown?.(event);\n if (event.defaultPrevented || locked || composing.current || event.nativeEvent.isComposing || event.keyCode === 229) return;\n if (event.key === 'Enter') {\n event.preventDefault();\n const next = draft.trim();\n if (next && !tags.includes(next)) {\n setTags([...tags, next]);\n setAnnouncement(next);\n }\n setDraft('');\n } else if (event.key === 'Backspace' && draft === '' && tags.length) {\n event.preventDefault();\n remove(tags.length - 1);\n }\n }} />\n {name ? tags.map((tag, index) => <input key={index} type=\"hidden\" name={name} form={form} value={tag} disabled={disabled} />) : null}\n <span className=\"monkeys-ui-visually-hidden\" aria-live=\"polite\" aria-atomic=\"true\">{announcement}</span>\n </div>;\n});\n/** One chip recipe for typed tags and ID-backed selections; not a public component. */\nfunction InputTag({ label, disabled, removeLabel, onRemove }: { label: string; disabled?: boolean; removeLabel: string; onRemove?: () => void }) {\n return <span className=\"monkeys-ui-input-tag\"><span className=\"monkeys-ui-input-tag-text\" title={label}>{label}</span>{onRemove ? <button type=\"button\" className=\"monkeys-ui-input-tag-remove\" disabled={disabled} aria-label={`${removeLabel} ${label}`} onClick={onRemove}><X size=\"var(--monkeys-ui-icon-size-s14,var(--monkeys-ui-default-icon-size-s14))\" aria-hidden=\"true\" /></button> : null}</span>;\n}\nconst InputTagSelectionControl = forwardRef<HTMLInputElement, InputTagSelectionProps>(function InputTagSelectionControl({\n variant, mode, label, items, onAdd, onRemove, removeLabel = '移除', name, form, disabled, readOnly, className, style, onInvalid, ...props\n}, ref) {\n const field = useField(props);\n const input = useRef<HTMLInputElement>(null);\n const add = useRef<HTMLButtonElement>(null);\n const group = useRef<HTMLDivElement>(null);\n const [announcement, setAnnouncement] = useState('');\n const locked = disabled || readOnly;\n useImperativeHandle(ref, () => input.current!, []);\n useEffect(() => { input.current?.setCustomValidity(field.required && !items.length ? '请至少添加一个标签' : ''); }, [field.required, items.length]);\n return <div ref={group} role=\"group\" aria-label={label} aria-describedby={field['aria-describedby']} aria-required={field.required || undefined} aria-invalid={field['aria-invalid']} tabIndex={-1} dir={field.dir} className={cx('monkeys-ui-tag-input', className)} data-mode={mode} data-empty={!items.length} data-disabled={disabled || undefined} data-readonly={readOnly || undefined} data-invalid={field['aria-invalid'] || undefined} style={style}>\n <div className=\"monkeys-ui-tag-input-header\"><span className=\"monkeys-ui-label\">{label}</span>{onAdd ? <button ref={add} type=\"button\" className=\"monkeys-ui-tag-input-add\" disabled={locked} aria-label={'添加' + label} onClick={onAdd}><Plus aria-hidden=\"true\" /></button> : null}</div>\n {items.length ? <div className=\"monkeys-ui-tag-input-items\">{items.map(item => <InputTag key={item.id} label={item.label} disabled={locked} removeLabel={removeLabel} onRemove={onRemove ? () => { if (locked) return; onRemove(item.id); setAnnouncement(`${removeLabel} ${item.label}`); (add.current ?? group.current)?.focus(); } : undefined} />)}</div> : null}\n <input {...props} {...field} ref={input} form={form} type=\"text\" className=\"monkeys-ui-visually-hidden\" aria-hidden=\"true\" tabIndex={-1} value={items.length ? 'selected' : ''} onChange={() => {}} disabled={disabled} required={field.required} onInvalid={event => { onInvalid?.(event); event.preventDefault(); (add.current ?? group.current)?.focus(); }} />\n {name ? items.map(item => <input key={item.id} type=\"hidden\" name={name} form={form} value={item.id} disabled={disabled} />) : null}\n <span className=\"monkeys-ui-visually-hidden\" aria-live=\"polite\" aria-atomic=\"true\">{announcement}</span>\n </div>;\n});\nexport const Textarea = forwardRef<HTMLTextAreaElement, TextareaHTMLAttributes<HTMLTextAreaElement>>(function Textarea({ className, ...props }, ref) { const field = useField(props); return <textarea {...props} {...field} ref={ref} className={cx('monkeys-ui-textarea', className)} />; });\nexport function parseNumberValue(text: string): number | null { return /^-?(?:\\d+|\\d*\\.\\d+)$/.test(text.trim()) && Number.isFinite(Number(text)) ? Number(text) : null; }\nexport interface NumberInputProps extends Omit<InputHTMLAttributes<HTMLInputElement>, 'type' | 'value' | 'defaultValue' | 'onChange'> { value?: string; defaultValue?: string; onValueChange?: (text: string, detail: { numberValue: number | null }) => void }\n/** Compatibility entry; prefer Input variant=\"number\". */\nexport const NumberInput = forwardRef<HTMLInputElement, NumberInputProps>(function NumberInput(props, ref) {\n return <Input {...props} variant=\"number\" ref={ref} />;\n});\nconst InputNumberControl = forwardRef<HTMLInputElement, InputNumberProps>(function InputNumberControl({ variant, value, defaultValue, onValueChange, onChange, ...props }, ref) {\n const [text, setText] = useControllable(value, defaultValue, '', next => onValueChange?.(next, { numberValue: parseNumberValue(next) }));\n const input = useRef<HTMLInputElement>(null);\n const initial = useRef(defaultValue ?? '');\n useImperativeHandle(ref, () => input.current!, []);\n useFormReset(input, () => { if (value === undefined) setText(initial.current); });\n return <Input {...props} variant=\"default\" type=\"text\" inputMode=\"decimal\" value={text} onChange={event => { setText(event.target.value); onChange?.(event); }} ref={input} />;\n});\nexport interface SearchFieldProps extends Omit<InputHTMLAttributes<HTMLInputElement>, 'type' | 'value' | 'defaultValue' | 'onChange' | 'onSubmit'> { value?: string; defaultValue?: string; onValueChange?: (value: string) => void; onSearch?: (value: string) => void; clearLabel?: string }\n/** Compatibility entry; prefer Input variant=\"search\". */\nexport const SearchField = forwardRef<HTMLInputElement, SearchFieldProps>(function SearchField(props, ref) {\n return <Input {...props} variant=\"search\" ref={ref} />;\n});\nconst InputSearchControl = forwardRef<HTMLInputElement, InputSearchProps>(function InputSearchControl({ variant, value, defaultValue, onValueChange, onChange, onSearch, clearLabel = '清空搜索', className, onKeyDown, onCompositionStart, onCompositionEnd, disabled, readOnly, ...props }, ref) {\n const [text, setText] = useControllable(value, defaultValue, '', onValueChange);\n const composing = useRef(false);\n const input = useRef<HTMLInputElement>(null);\n useImperativeHandle(ref, () => input.current!, []);\n const initial = useRef(defaultValue ?? '');\n useFormReset(input, () => { if (value === undefined) setText(initial.current); });\n const clear = () => {\n const editor = input.current;\n if (disabled || readOnly || !editor) return;\n // Dispatch a native input event through React's normal onChange path.\n const setter = Object.getOwnPropertyDescriptor(editor.ownerDocument.defaultView!.HTMLInputElement.prototype, 'value')!.set!;\n setter.call(editor, '');\n editor.dispatchEvent(new Event('input', { bubbles: true }));\n editor.focus();\n };\n return <div className={cx('monkeys-ui-search', className)}><Search size=\"var(--monkeys-ui-icon-size-s17,var(--monkeys-ui-default-icon-size-s17))\" aria-hidden=\"true\" /><Input {...props} variant=\"default\" ref={input} type=\"search\" disabled={disabled} readOnly={readOnly} value={text} onChange={event => { if (!disabled && !readOnly) { setText(event.target.value); onChange?.(event); } }} onCompositionStart={event => { composing.current = true; onCompositionStart?.(event); }} onCompositionEnd={event => { composing.current = false; onCompositionEnd?.(event); }} onKeyDown={event => { onKeyDown?.(event); if (!event.defaultPrevented && event.key === 'Enter' && !disabled && !readOnly && !composing.current && !event.nativeEvent.isComposing && event.keyCode !== 229) { event.preventDefault(); onSearch?.(text); } }} />{text ? <Button shape=\"icon\" aria-label={clearLabel} size=\"sm\" disabled={disabled || readOnly} onClick={clear}><X size=\"var(--monkeys-ui-icon-size-s14,var(--monkeys-ui-default-icon-size-s14))\" aria-hidden=\"true\" /></Button> : null}</div>;\n});\nexport interface SwitchProps extends Omit<SwitchPrimitive.SwitchProps, 'defaultChecked'> { defaultChecked?: boolean }\nexport const Switch = forwardRef<HTMLButtonElement, SwitchProps>(function Switch({ checked, defaultChecked, onCheckedChange, className, onPointerDown, onKeyDown, ...props }, ref) {\n const field = useField(props);\n const [value, setValue] = useControllable(checked, defaultChecked, false, onCheckedChange);\n return <SwitchPrimitive.Root {...props} {...field} ref={ref} checked={value} onCheckedChange={setValue} onPointerDown={event => { event.currentTarget.dataset.input = 'pointer'; onPointerDown?.(event); }} onKeyDown={event => { event.currentTarget.dataset.input = 'keyboard'; onKeyDown?.(event); }} className={cx('monkeys-ui-switch', className)}><SwitchPrimitive.Thumb className=\"monkeys-ui-switch-thumb\" /></SwitchPrimitive.Root>;\n});\nexport interface SelectOption { value: string; label: string; disabled?: boolean }\n/** Shared select appearance for popover-backed pickers; the parent owns selection semantics. */\nexport interface PickerTriggerProps extends ButtonHTMLAttributes<HTMLButtonElement> { indicator?: ReactNode }\nexport const PickerTrigger = forwardRef<HTMLButtonElement, PickerTriggerProps>(function PickerTrigger({ indicator = <ChevronDown size={12} />, className, children, type = 'button', ...props }, ref) {\n return <button {...props} ref={ref} type={type} className={cx('monkeys-ui-select', className)}><span className=\"min-w-0 truncate\">{children}</span><span className=\"shrink-0\" aria-hidden=\"true\">{indicator}</span></button>;\n});\ninterface SelectBaseProps extends Omit<SelectPrimitive.SelectProps, 'children' | 'value' | 'defaultValue' | 'onValueChange'> { options: SelectOption[]; placeholder?: string; id?: string; className?: string; style?: React.CSSProperties; 'aria-label'?: string; 'aria-describedby'?: string; 'aria-invalid'?: boolean }\ntype MultipleSelectProps = SelectBaseProps & { variant: 'multiple'; value?: string[]; defaultValue?: string[]; onValueChange?: (value: string[]) => void };\ntype SingleSelectProps = SelectBaseProps & { variant?: 'default'; value?: string; defaultValue?: string; onValueChange?: (value: string) => void };\nexport type SelectProps = SingleSelectProps | MultipleSelectProps;\nexport const Select = forwardRef<HTMLButtonElement, SelectProps>(function Select(props, ref) {\n if (props.variant === 'multiple') return <MultipleSelect {...props} ref={ref} />;\n return <SingleSelect {...props} ref={ref} />;\n});\nconst SingleSelect = forwardRef<HTMLButtonElement, SingleSelectProps>(function SingleSelect({ options, placeholder, className, style, id, 'aria-label': label, 'aria-describedby': describedBy, 'aria-invalid': invalid, value, defaultValue, onValueChange, variant: _variant, ...props }, ref) {\n const field = useField({ id, dir: props.dir, 'aria-describedby': describedBy, 'aria-invalid': invalid, required: props.required });\n const [selected, setSelected] = useControllable(value, defaultValue, '', onValueChange);\n const direction = useUIDirection(props.dir);\n const locale = useUILocale();\n const { required, ...fieldAttributes } = field;\n return <SelectPrimitive.Root {...props} dir={direction} required={required} value={selected} onValueChange={setSelected}><SelectPrimitive.Trigger ref={ref} {...fieldAttributes} aria-required={required || undefined} aria-label={label} className={cx('monkeys-ui-select', className)} style={style}><SelectPrimitive.Value placeholder={placeholder ?? locale.messages.multiSelect.placeholder} /><SelectPrimitive.Icon aria-hidden=\"true\"><ChevronDown size=\"var(--monkeys-ui-icon-size-s12,var(--monkeys-ui-default-icon-size-s12))\" /></SelectPrimitive.Icon></SelectPrimitive.Trigger><Portal><SelectPrimitive.Content className=\"monkeys-ui-select-content\" position=\"popper\" sideOffset={6}><SelectPrimitive.ScrollUpButton><ChevronUp size=\"var(--monkeys-ui-icon-size-s12,var(--monkeys-ui-default-icon-size-s12))\" aria-hidden=\"true\" /></SelectPrimitive.ScrollUpButton><SelectPrimitive.Viewport>{options.map(option => <SelectPrimitive.Item key={option.value} value={option.value} disabled={option.disabled} className=\"monkeys-ui-select-item\"><SelectPrimitive.ItemText>{option.label}</SelectPrimitive.ItemText><SelectPrimitive.ItemIndicator><Check size=\"var(--monkeys-ui-icon-size-s12,var(--monkeys-ui-default-icon-size-s12))\" aria-hidden=\"true\" /></SelectPrimitive.ItemIndicator></SelectPrimitive.Item>)}</SelectPrimitive.Viewport><SelectPrimitive.ScrollDownButton><ChevronDown size=\"var(--monkeys-ui-icon-size-s12,var(--monkeys-ui-default-icon-size-s12))\" aria-hidden=\"true\" /></SelectPrimitive.ScrollDownButton></SelectPrimitive.Content></Portal></SelectPrimitive.Root>;\n});\nconst MultipleSelect = forwardRef<HTMLButtonElement, MultipleSelectProps>(function MultipleSelect({ options, placeholder, className, style, id, 'aria-label': label, 'aria-describedby': describedBy, 'aria-invalid': invalid, value, defaultValue, onValueChange, open, defaultOpen, onOpenChange, ...props }, ref) {\n const field = useField({ id, dir: props.dir, 'aria-describedby': describedBy, 'aria-invalid': invalid, required: props.required });\n const [selected, setSelected] = useControllable(value, defaultValue, [], onValueChange);\n const [shown, setShown] = useControllable(open, defaultOpen, false, onOpenChange);\n const trigger = useRef<HTMLButtonElement>(null);\n const input = useRef<HTMLInputElement>(null);\n const initial = useRef(defaultValue ?? []);\n useImperativeHandle(ref, () => trigger.current!, []);\n useFormReset(input, () => { if (value === undefined) setSelected(initial.current); setShown(false); setValidationFailed(false); });\n const direction = useUIDirection(props.dir);\n const locale = useUILocale();\n const { required, ...fieldAttributes } = field;\n const generatedId = useId();\n const triggerId = field.id ?? generatedId;\n const requiredId = generatedId + '-required';\n const [validationFailed, setValidationFailed] = useState(false);\n useEffect(() => { if (selected.length || !required) setValidationFailed(false); }, [selected.length, required]);\n const selectedLabels = options.filter(option => selected.includes(option.value)).map(option => option.label);\n const toggle = (option: SelectOption) => {\n if (option.disabled || props.disabled) return;\n setSelected(selected.includes(option.value) ? selected.filter(value => value !== option.value) : [...selected, option.value]);\n };\n return <MenuPrimitive.Root dir={direction} open={shown} onOpenChange={setShown} modal={false}>\n <MenuPrimitive.Trigger asChild><button ref={trigger} type=\"button\" {...fieldAttributes} id={triggerId} aria-label={label} aria-describedby={[field['aria-describedby'], required ? requiredId : ''].filter(Boolean).join(' ') || undefined} aria-invalid={field['aria-invalid'] || validationFailed || undefined} disabled={props.disabled} className={cx('monkeys-ui-select', className)} style={style} data-variant=\"multiple\" data-placeholder={!selectedLabels.length || undefined}>\n <span className=\"monkeys-ui-select-value\">{selectedLabels.length ? selectedLabels.join('、') : (placeholder ?? locale.messages.multiSelect.placeholder)}</span><ChevronDown size=\"var(--monkeys-ui-icon-size-s12,var(--monkeys-ui-default-icon-size-s12))\" aria-hidden=\"true\" />\n </button></MenuPrimitive.Trigger>\n <Portal><MenuPrimitive.Content aria-label={label} aria-labelledby={label ? undefined : triggerId} sideOffset={6} align=\"start\" className=\"monkeys-ui-select-content monkeys-ui-select-multiple-content\">\n {options.map(option => <MenuPrimitive.CheckboxItem key={option.value} checked={selected.includes(option.value)} disabled={option.disabled} onSelect={event => { event.preventDefault(); toggle(option); }} className=\"monkeys-ui-select-item\">\n <span>{option.label}</span><MenuPrimitive.ItemIndicator><Check size=\"var(--monkeys-ui-icon-size-s12,var(--monkeys-ui-default-icon-size-s12))\" aria-hidden=\"true\" /></MenuPrimitive.ItemIndicator>\n </MenuPrimitive.CheckboxItem>)}\n </MenuPrimitive.Content></Portal>\n {required ? <span id={requiredId} className=\"monkeys-ui-visually-hidden\">{locale.locale.startsWith('zh') ? '必填,请至少选择一项' : 'Required. Select at least one option.'}</span> : null}\n <input ref={input} type=\"text\" className=\"monkeys-ui-visually-hidden\" aria-hidden=\"true\" tabIndex={-1} form={props.form} autoComplete={props.autoComplete} value={selected.length ? 'selected' : ''} onChange={() => {}} disabled={props.disabled} required={required} onInvalid={event => { event.preventDefault(); setValidationFailed(true); trigger.current?.focus(); }} />\n {props.name ? selected.map(item => <input key={item} type=\"hidden\" name={props.name} form={props.form} value={item} disabled={props.disabled} />) : null}\n </MenuPrimitive.Root>;\n});\nexport interface MonthYearPickerProps extends Omit<HTMLAttributes<HTMLDivElement>, 'onChange' | 'children' | 'defaultValue'> {\n month?: number;\n defaultMonth?: number;\n year?: number;\n defaultYear?: number;\n /** Inclusive year range. Defaults to 2020–2035. */\n minYear?: number;\n maxYear?: number;\n onMonthChange?: (month: number) => void;\n onYearChange?: (year: number) => void;\n monthLabel?: string;\n yearLabel?: string;\n disabled?: boolean;\n}\n/** Two existing Select controls; numeric values contain no day or time-zone conversion. */\nexport function MonthYearPicker({ month, defaultMonth = 1, year, defaultYear, minYear = 2020, maxYear = 2035, onMonthChange, onYearChange, monthLabel = '月份', yearLabel = '年份', disabled, className, dir, 'aria-label': label = '年月', ...props }: MonthYearPickerProps) {\n const direction = useUIDirection(dir === 'rtl' || dir === 'ltr' ? dir : undefined);\n if (!Number.isInteger(minYear) || !Number.isInteger(maxYear) || minYear < 1 || maxYear > 9999 || minYear > maxYear) throw new RangeError('MonthYearPicker requires an inclusive year range within 1–9999.');\n const initialYear = defaultYear ?? minYear;\n const selectedMonth = month ?? defaultMonth;\n const selectedYear = year ?? initialYear;\n if (!Number.isInteger(selectedMonth) || selectedMonth < 1 || selectedMonth > 12) throw new RangeError('MonthYearPicker month must be between 1 and 12.');\n if (!Number.isInteger(selectedYear) || selectedYear < minYear || selectedYear > maxYear) throw new RangeError('MonthYearPicker year must be within the configured range.');\n const months = Array.from({ length: 12 }, (_, index) => ({ value: String(index + 1), label: `${index + 1}月` }));\n const years = Array.from({ length: maxYear - minYear + 1 }, (_, index) => ({ value: String(minYear + index), label: String(minYear + index) }));\n return <div {...props} role=\"group\" aria-label={label} dir={direction} className={cx('monkeys-ui-month-year-picker', className)}><Select aria-label={monthLabel} dir={direction} options={months} value={month === undefined ? undefined : String(month)} defaultValue={month === undefined ? String(defaultMonth) : undefined} onValueChange={value => onMonthChange?.(Number(value))} disabled={disabled} /><Select aria-label={yearLabel} dir={direction} options={years} value={year === undefined ? undefined : String(year)} defaultValue={year === undefined ? String(initialYear) : undefined} onValueChange={value => onYearChange?.(Number(value))} disabled={disabled} /></div>;\n}\nexport interface ChoiceItem { value: string; label: ReactNode; ariaLabel?: string; disabled?: boolean }\nexport interface SegmentedControlProps extends Omit<HTMLAttributes<HTMLDivElement>, 'defaultValue' | 'onChange' | 'dir'> { dir?: 'ltr' | 'rtl'; items: ChoiceItem[]; value?: string; defaultValue?: string; onValueChange?: (value: string) => void; 'aria-label': string }\nexport function SegmentedControl({ items, value, defaultValue, onValueChange, className, ...props }: SegmentedControlProps) {\n const [selected, setSelected] = useControllable(value, defaultValue, items[0]?.value ?? '', onValueChange);\n const direction = useUIDirection(props.dir);\n return <ToggleGroup.Root {...props} dir={direction} type=\"single\" value={selected} onValueChange={next => { if (next) setSelected(next); }} className={cx('monkeys-ui-segmented', className)}>{items.map(item => <ToggleGroup.Item type=\"button\" key={item.value} value={item.value} aria-label={item.ariaLabel} disabled={item.disabled} className=\"monkeys-ui-segment\">{item.label}</ToggleGroup.Item>)}</ToggleGroup.Root>;\n}\nexport interface SectionTitleProps extends HTMLAttributes<HTMLElement> {\n as?: 'h1' | 'h2' | 'h3' | 'h4' | 'h5' | 'h6' | 'span';\n indicator?: boolean;\n}\n/** Shared title/indicator presentation; the parent owns navigation and selection. */\nexport function SectionTitle({ as: Element = 'h2', indicator = true, className, ...props }: SectionTitleProps) {\n return <Element {...props} className={cx('monkeys-ui-section-title', className)} data-indicator={indicator} />;\n}\nexport interface TabItem extends ChoiceItem { content: ReactNode }\nexport interface TabsProps extends Omit<TabsPrimitive.TabsProps, 'children'> { items: TabItem[]; 'aria-label': string }\nexport function Tabs({ items, value, defaultValue, onValueChange, className, 'aria-label': label, ...props }: TabsProps) {\n const [selected, setSelected] = useControllable(value, defaultValue, items[0]?.value ?? '', onValueChange);\n const direction = useUIDirection(props.dir);\n return <TabsPrimitive.Root {...props} dir={direction} value={selected} onValueChange={setSelected} className={cx('monkeys-ui-tabs', className)}><TabsPrimitive.List aria-label={label} className=\"monkeys-ui-tab-list\">{items.map(item => <TabsPrimitive.Trigger type=\"button\" key={item.value} value={item.value} aria-label={item.ariaLabel} disabled={item.disabled} className=\"monkeys-ui-tab\"><SectionTitle as=\"span\" indicator={selected === item.value}>{item.label}</SectionTitle></TabsPrimitive.Trigger>)}</TabsPrimitive.List>{items.map(item => <TabsPrimitive.Content key={item.value} value={item.value} className=\"monkeys-ui-tab-panel\">{item.content}</TabsPrimitive.Content>)}</TabsPrimitive.Root>;\n}\n","import { forwardRef, useId, useRef, type HTMLAttributes, type ReactElement, type ReactNode, type RefObject } from 'react';\nimport * as DialogPrimitive from '@radix-ui/react-dialog';\nimport * as MenuPrimitive from '@radix-ui/react-dropdown-menu';\nimport * as TooltipPrimitive from '@radix-ui/react-tooltip';\nimport * as AvatarPrimitive from '@radix-ui/react-avatar';\nimport { Button } from './controls';\nimport { Portal, useUIDirection, useUILocale, useTooltipScope, useUIResolvedTokens } from './theme/theme';\nimport { cx, durationMilliseconds, useControllable } from './internal';\nimport { X } from 'lucide-react';\nimport { ScrollSurface } from './scroll-surface';\nimport { useBentoSurface } from '../components/runtime/useBentoSurface';\n\nexport interface TooltipProps { content: ReactNode; children: ReactElement; delayDuration?: number; side?: 'top' | 'bottom' | 'left' | 'right' }\nexport function Tooltip({ content, children, delayDuration, side = 'top' }: TooltipProps) {\n const scoped = useTooltipScope();\n const theme = useUIResolvedTokens();\n const milliseconds = (path: string) => durationMilliseconds(theme.values[path]);\n const tooltip = <TooltipPrimitive.Root delayDuration={delayDuration}><TooltipPrimitive.Trigger asChild>{children}</TooltipPrimitive.Trigger><Portal><TooltipPrimitive.Content side={side} sideOffset={Number((theme.values[\"component.ui.tooltip.sideOffset\"] as { value: number }).value)} className=\"monkeys-ui-tooltip\">{content}</TooltipPrimitive.Content></Portal></TooltipPrimitive.Root>;\n return scoped ? tooltip : <TooltipPrimitive.Provider delayDuration={delayDuration ?? milliseconds(\"component.ui.tooltip.delay\")} skipDelayDuration={milliseconds(\"component.ui.tooltip.skipDelay\")}>{tooltip}</TooltipPrimitive.Provider>;\n}\nexport interface MenuItem { id: string; label: ReactNode; disabled?: boolean; danger?: boolean; onSelect?: () => void }\nexport interface MenuProps { trigger: ReactElement; items: MenuItem[]; label?: string; open?: boolean; defaultOpen?: boolean; onOpenChange?: (open: boolean) => void; onCloseAutoFocus?: (event: Event) => void }\nexport function Menu({ trigger, items, label, open, defaultOpen, onOpenChange, onCloseAutoFocus }: MenuProps) {\n const [shown, setShown] = useControllable(open, defaultOpen, false, onOpenChange);\n const direction = useUIDirection();\n const theme = useUIResolvedTokens();\n return <MenuPrimitive.Root dir={direction} open={shown} onOpenChange={setShown}><MenuPrimitive.Trigger asChild>{trigger}</MenuPrimitive.Trigger><Portal><MenuPrimitive.Content aria-label={label} sideOffset={(theme.values[\"component.ui.menu.sideOffset\"] as { value: number }).value} align=\"end\" onCloseAutoFocus={onCloseAutoFocus} className=\"monkeys-ui-menu\">{items.map(item => <MenuPrimitive.Item key={item.id} disabled={item.disabled} className=\"monkeys-ui-menu-item\" data-danger={item.danger || undefined} onSelect={item.onSelect}>{item.label}</MenuPrimitive.Item>)}</MenuPrimitive.Content></Portal></MenuPrimitive.Root>;\n}\nexport interface DialogProps { frame?: 'default' | 'bento'; size?: 'md' | 'xl'; scroll?: 'dialog' | 'body'; backdrop?: 'dim' | 'blur'; surface?: 'default' | 'gradient'; open?: boolean; defaultOpen?: boolean; onOpenChange?: (open: boolean) => void; trigger?: ReactElement; title: ReactNode; description?: ReactNode; children?: ReactNode; actions?: ReactNode; initialFocusRef?: RefObject<HTMLElement>; restoreFocusRef?: RefObject<HTMLElement>; onCloseAutoFocus?: (event: Event) => void; className?: string; closeLabel?: string }\nexport function Dialog({ frame = 'default', size = 'md', scroll = 'dialog', backdrop = 'dim', surface = 'default', open, defaultOpen, onOpenChange, trigger, title, description, children, actions, initialFocusRef, restoreFocusRef, onCloseAutoFocus, className, closeLabel }: DialogProps) {\n const [shown, setShown] = useControllable(open, defaultOpen, false, onOpenChange);\n const close = useRef<HTMLButtonElement>(null);\n const locale = useUILocale();\n const bento = useBentoSurface();\n return <DialogPrimitive.Root open={shown} onOpenChange={setShown}>{trigger ? <DialogPrimitive.Trigger asChild>{trigger}</DialogPrimitive.Trigger> : null}<Portal><DialogPrimitive.Overlay data-backdrop={backdrop} className=\"monkeys-ui-dialog-overlay\" /><DialogPrimitive.Content data-frame={frame} data-size={size} data-scroll={scroll} data-surface={surface} style={frame === 'bento' ? bento.variables : undefined} className={cx('monkeys-ui-dialog', className)} {...(description ? {} : { 'aria-describedby': undefined })} onOpenAutoFocus={event => {\n event.preventDefault();\n // Radix registers its dismissable layer after mounting. Focus marks the\n // dialog ready for keyboard input, so expose it after that registration.\n const button = close.current;\n button?.ownerDocument.defaultView?.requestAnimationFrame(() => {\n if (button.isConnected && button.closest('[role=\"dialog\"]')?.getAttribute('data-state') === 'open') (initialFocusRef?.current ?? button).focus();\n });\n }} onCloseAutoFocus={event => { onCloseAutoFocus?.(event); if (!event.defaultPrevented && restoreFocusRef?.current) { event.preventDefault(); restoreFocusRef.current.focus(); } }}><DialogPrimitive.Title className=\"monkeys-ui-dialog-title\">{title}</DialogPrimitive.Title>{description ? <DialogPrimitive.Description className=\"monkeys-ui-description\">{description}</DialogPrimitive.Description> : null}<DialogPrimitive.Close asChild><Button shape=\"icon\" ref={close} aria-label={closeLabel ?? locale.messages.dialog.close} className=\"monkeys-ui-dialog-close\"><X size=\"var(--monkeys-ui-icon-size-s16,var(--monkeys-ui-default-icon-size-s16))\" aria-hidden=\"true\" /></Button></DialogPrimitive.Close>{scroll === 'body' ? <ScrollSurface className=\"monkeys-ui-dialog-body\" aria-label={typeof title === 'string' ? title + '内容' : '对话框内容'}>{children}</ScrollSurface> : children}{actions ? <div className=\"monkeys-ui-dialog-actions\">{actions}</div> : null}</DialogPrimitive.Content></Portal></DialogPrimitive.Root>;\n}\nexport interface BadgeProps extends HTMLAttributes<HTMLSpanElement> { tone?: 'neutral' | 'primary' | 'danger' | 'success' }\nexport function Badge({ tone = 'neutral', className, ...props }: BadgeProps) { return <span {...props} data-tone={tone} className={cx('monkeys-ui-badge', className)} />; }\nexport interface NoticeProps extends HTMLAttributes<HTMLDivElement> { tone?: 'neutral' | 'danger' | 'success'; action?: ReactNode }\nexport function Notice({ tone = 'neutral', action, children, className, ...props }: NoticeProps) { return <div role={tone === 'danger' ? 'alert' : 'status'} {...props} data-tone={tone} className={cx('monkeys-ui-notice', className)}><div>{children}</div>{action}</div>; }\nexport interface EmptyStateProps extends HTMLAttributes<HTMLDivElement> { title: string; description?: ReactNode; action?: ReactNode }\nexport function EmptyState({ title, description, action, className, ...props }: EmptyStateProps) { return <div {...props} className={cx('monkeys-ui-empty', className)}><strong>{title}</strong>{description ? <p>{description}</p> : null}{action}</div>; }\nexport interface LoadingStateProps extends HTMLAttributes<HTMLDivElement> { label?: string }\nexport function LoadingState({ label, className, ...props }: LoadingStateProps) { const locale = useUILocale(); return <div role=\"status\" aria-busy=\"true\" {...props} className={cx('monkeys-ui-loading', className)}><span className=\"monkeys-ui-inline-spinner\" aria-hidden=\"true\" />{label ?? locale.messages.loading.spinner}</div>; }\nexport interface AvatarProps extends AvatarPrimitive.AvatarProps { src?: string; alt: string; fallback?: ReactNode }\nexport const Avatar = forwardRef<HTMLSpanElement, AvatarProps>(function Avatar({ src, alt, fallback, className, ...props }, ref) { return <AvatarPrimitive.Root {...props} ref={ref} className={cx('monkeys-ui-avatar', className)}><AvatarPrimitive.Image src={src} alt={alt} /><AvatarPrimitive.Fallback>{fallback ?? alt.slice(0, 1)}</AvatarPrimitive.Fallback></AvatarPrimitive.Root>; });\n","import { createContext, useContext, useRef, type HTMLAttributes, type ReactNode } from 'react';\nimport { DndContext, MouseSensor, TouchSensor, KeyboardSensor, closestCenter, useSensor, useSensors, type DragEndEvent } from '@dnd-kit/core';\nimport { SortableContext, useSortable, horizontalListSortingStrategy, verticalListSortingStrategy, rectSortingStrategy, sortableKeyboardCoordinates } from '@dnd-kit/sortable';\nimport { CSS } from '@dnd-kit/utilities';\n\nexport interface CollectionReorder { activeId: string; overId: string; beforeIds: string[] }\nexport interface CollectionSortingProps {\n /** Authoritative records in this window. Absence keeps the ordinary grid behavior. */\n reorderItems?: { id: string; [key: string]: unknown }[];\n reorderAxis?: 'horizontal' | 'vertical' | 'grid';\n /** Optional record field whose equal values define compatible drop targets. */\n reorderGroupField?: string;\n reorderDisabled?: boolean;\n onReorder?: (change: CollectionReorder) => void;\n}\nconst Sorting = createContext(false);\nexport function canStartCollectionDrag(event: Event, activeNode?: HTMLElement | null) {\n const target = event.target as Element | null;\n if (!target?.closest) return false;\n const item = target.closest('[data-sortable-item]');\n if (activeNode && item !== activeNode) return false;\n if (!item || target.closest('[data-sortable-region]') !== item.closest('[data-sortable-region]')) return false;\n // The stretched card entry remains an activator; its menus and other controls do not.\n return !target.closest('button:not(.monkeys-ui-card-entry):not([data-reorder-activator]),a:not(.monkeys-ui-card-entry):not([data-reorder-activator]),input,textarea,select,video,audio,[contenteditable=\"true\"],[role=\"menuitem\"],[data-no-reorder]');\n}\nclass CardMouseSensor extends MouseSensor {\n static activators = [{ eventName: 'onMouseDown' as const, handler: ({ nativeEvent }: { nativeEvent: MouseEvent }, _options: unknown, context?: { active: { node: { current: HTMLElement | null } } }) => nativeEvent.button === 0 && canStartCollectionDrag(nativeEvent, context?.active.node.current) }];\n}\nclass CardTouchSensor extends TouchSensor {\n static activators = [{ eventName: 'onTouchStart' as const, handler: ({ nativeEvent }: { nativeEvent: TouchEvent }, _options: unknown, context?: { active: { node: { current: HTMLElement | null } } }) => nativeEvent.touches.length === 1 && canStartCollectionDrag(nativeEvent, context?.active.node.current) }];\n}\nexport function SortableCollection({ reorderItems, reorderAxis = 'horizontal', reorderGroupField, reorderDisabled, onReorder, children }: CollectionSortingProps & { children: ReactNode }) {\n const suppressClick = useRef(false);\n const sensors = useSensors(useSensor(CardMouseSensor, { activationConstraint: { distance: 8 } }), useSensor(CardTouchSensor, { activationConstraint: { delay: 250, tolerance: 5 } }), useSensor(KeyboardSensor, { coordinateGetter: sortableKeyboardCoordinates }));\n const enabled = !!onReorder && !reorderDisabled && !!reorderItems && reorderItems.length > 1;\n const ids = (reorderItems ?? []).map(item => item.id);\n const groups = new Map((reorderItems ?? []).map(item => [item.id, reorderGroupField ? item[reorderGroupField] : undefined]));\n const end = ({ active, over }: DragEndEvent) => {\n if (over && active.id !== over.id && ids.includes(String(active.id)) && ids.includes(String(over.id))) onReorder?.({ activeId: String(active.id), overId: String(over.id), beforeIds: ids });\n // dnd-kit suppresses the immediate document click; retain a capture guard for card navigation.\n setTimeout(() => { suppressClick.current = false; }, 0);\n };\n if (!enabled) return <Sorting.Provider value={false}>{children}</Sorting.Provider>;\n return <DndContext sensors={sensors} collisionDetection={args => closestCenter({ ...args, droppableContainers: args.droppableContainers.filter(target => !reorderGroupField || groups.get(String(target.id)) === groups.get(String(args.active.id))) })} onDragStart={() => { suppressClick.current = true; }} onDragCancel={() => { setTimeout(() => { suppressClick.current = false; }, 0); }} onDragEnd={end} accessibility={{ screenReaderInstructions: { draggable: '按空格开始排序,使用方向键在同组内移动,再按空格保存。按 Escape 取消。' } }}>\n <Sorting.Provider value={true}><SortableContext items={ids} strategy={reorderAxis === 'grid' ? rectSortingStrategy : reorderAxis === 'horizontal' ? horizontalListSortingStrategy : verticalListSortingStrategy}>\n <div data-sortable-region={reorderAxis} style={{ display: 'contents' }} onClickCapture={event => { if (suppressClick.current) { event.preventDefault(); event.stopPropagation(); } }}>{children}</div>\n </SortableContext></Sorting.Provider>\n </DndContext>;\n}\nexport function SortableCollectionItem({ itemId, children, ...props }: HTMLAttributes<HTMLDivElement> & { itemId: string; children?: ReactNode }) {\n const enabled = useContext(Sorting);\n return enabled ? <ActiveItem itemId={itemId} {...props}>{children}</ActiveItem> : <div {...props}>{children}</div>;\n}\nfunction ActiveItem({ itemId, style, children, ...props }: HTMLAttributes<HTMLDivElement> & { itemId: string }) {\n const { setNodeRef, attributes, listeners, transform, transition, isDragging } = useSortable({ id: itemId });\n return <div {...props} ref={setNodeRef} {...attributes} {...listeners} data-sortable-item={itemId} style={{ ...style, transform: CSS.Transform.toString(transform), transition, position: 'relative', zIndex: isDragging ? 20 : undefined, opacity: isDragging ? .75 : undefined, cursor: isDragging ? 'grabbing' : 'grab' }}>{children}</div>;\n}\n","import { useEffect, useRef, useState } from 'react';\nimport type * as Shaders from 'shaders/react';\nimport { useShaderEnabled } from './motion';\nimport { useUIResolvedTokens } from './theme/theme';\nimport { resolveEffectTokens } from './theme/effect-tokens';\n\nexport function SurfaceEffect({ variant }: { variant: 'banner' | 'chroma' }) {\n const enabled = useShaderEnabled();\n const tokens = resolveEffectTokens(useUIResolvedTokens());\n const [shaders, setShaders] = useState<typeof Shaders | null>(null);\n const [rendererState, setRendererState] = useState<'loading' | 'ready' | 'unavailable'>('loading');\n const surface = useRef<HTMLDivElement>(null);\n\n useEffect(() => {\n if (!enabled || shaders) return;\n let active = true;\n import('shaders/react').then(module => {\n if (active) setShaders(module);\n }).catch(() => { if (active) setRendererState('unavailable'); });\n return () => { active = false; };\n }, [enabled, shaders]);\n\n useEffect(() => {\n const element = surface.current;\n const parent = element?.parentElement;\n if (!enabled || variant !== 'chroma' || rendererState === 'ready' || !element || !parent) return;\n // The decorative layer does not intercept input; listen on its content surface.\n const move = (event: PointerEvent) => {\n if (event.pointerType === 'touch') return;\n const bounds = element.getBoundingClientRect();\n element.style.setProperty('--monkeys-ui-surface-x', `${event.clientX - bounds.left}px`);\n element.style.setProperty('--monkeys-ui-surface-y', `${event.clientY - bounds.top}px`);\n element.dataset.pointerActive = '';\n };\n const leave = () => { delete element.dataset.pointerActive; };\n parent.addEventListener('pointerenter', move);\n parent.addEventListener('pointermove', move);\n parent.addEventListener('pointerleave', leave);\n return () => {\n parent.removeEventListener('pointerenter', move);\n parent.removeEventListener('pointermove', move);\n parent.removeEventListener('pointerleave', leave);\n leave();\n element.style.removeProperty('--monkeys-ui-surface-x');\n element.style.removeProperty('--monkeys-ui-surface-y');\n };\n }, [enabled, variant, rendererState]);\n\n return <div ref={surface} className={variant === 'banner' ? 'monkeys-ui-brand-banner-effect' : 'monkeys-ui-card-surface-effect'} data-monkeys-ui-brand-effect={variant === 'banner' ? '' : undefined} data-monkeys-ui-card-effect={variant === 'chroma' ? '' : undefined} data-renderer-state={enabled ? rendererState : 'disabled'} aria-hidden=\"true\">\n {enabled && variant === 'chroma' && rendererState !== 'ready' ? <div className=\"monkeys-ui-shader-fallback\" data-effect=\"surface-chroma\" /> : null}\n {enabled && shaders ? <shaders.Shader disableTelemetry onReady={() => setRendererState('ready')} onUnavailable={() => setRendererState('unavailable')} style={{ width: '100%', height: '100%' }}>\n <shaders.ChromaFlow baseColor={tokens.start} upColor={tokens.end} {...tokens.chroma} />\n {variant === 'banner' ? <shaders.Aurora colorA={tokens.start} colorB={tokens.end} colorSpace=\"hsl\" {...tokens.aurora} transform={{ rotation: tokens.rotation }} /> : null}\n </shaders.Shader> : null}\n </div>;\n}\n","import { forwardRef, useEffect, useRef, useState, type CSSProperties, type FormHTMLAttributes, type HTMLAttributes, type MouseEventHandler, type ReactNode } from 'react';\nimport { MoreHorizontal, Bookmark, LocateFixed } from 'lucide-react';\nimport { Button, SectionTitle, ToggleButton } from './controls';\nimport { Panel, type PanelProps } from './collection';\nimport { Badge, Menu, Notice, type MenuItem } from './overlays';\nimport { cx } from './internal';\nimport { SurfaceEffect } from './surface-effect';\nimport { SortableCollectionItem } from './sortable-collection';\n\nexport interface StackProps extends HTMLAttributes<HTMLDivElement> {\n direction?: 'vertical' | 'horizontal';\n gap?: number;\n wrap?: boolean;\n}\n/** Layout only: children keep their own semantics and keyboard order. */\nexport const Stack = forwardRef<HTMLDivElement, StackProps>(function Stack({ direction = 'vertical', gap, wrap, className, style, ...props }, ref) {\n return <div {...props} ref={ref} className={cx('monkeys-ui-stack', className)} data-direction={direction} style={{ flexDirection: direction === 'vertical' ? 'column' : 'row', gap: gap ?? 'var(--monkeys-ui-layout-stack-gap,var(--monkeys-ui-default-layout-stack-gap))', flexWrap: wrap ? 'wrap' : undefined, ...style }} />;\n});\n\nexport interface BreadcrumbItem {\n id: string;\n label: ReactNode;\n href?: string;\n onClick?: MouseEventHandler<HTMLButtonElement>;\n}\nexport interface BreadcrumbsProps extends HTMLAttributes<HTMLElement> { items: BreadcrumbItem[] }\nexport function Breadcrumbs({ items, className, 'aria-label': label = '面包屑', ...props }: BreadcrumbsProps) {\n return <nav {...props} aria-label={label} className={cx('monkeys-ui-breadcrumb-trail', className)}><ol>{items.map((item, index) => {\n const current = index === items.length - 1;\n return <li key={item.id}>{index > 0 ? <span aria-hidden=\"true\" className=\"monkeys-ui-breadcrumb-separator\">&gt;</span> : null}{current ? <span aria-current=\"page\">{item.label}</span> : item.href ? <a href={item.href}>{item.label}</a> : item.onClick ? <button type=\"button\" onClick={item.onClick}>{item.label}</button> : <span>{item.label}</span>}</li>;\n })}</ol></nav>;\n}\n\nexport interface BrandMarkProps extends HTMLAttributes<HTMLSpanElement> {\n label: string;\n image?: string;\n variant?: 'inline' | 'overlay';\n}\nexport function BrandMark({ label, image, variant = 'inline', className, ...props }: BrandMarkProps) {\n const [failedSource, setFailedSource] = useState<string>();\n return <span {...props} role=\"img\" aria-label={label} className={cx('monkeys-ui-brand-mark', className)} data-variant={variant}>{image && image !== failedSource ? <img src={image} alt=\"\" onError={() => setFailedSource(image)} /> : label}</span>;\n}\n\nexport interface BrandBannerProps extends PanelProps { description?: ReactNode; search?: ReactNode; caption?: ReactNode }\nexport function BrandBanner({ description, search, caption, children, className, ...props }: BrandBannerProps) {\n return <Panel {...props} className={cx('monkeys-ui-brand-banner', className)}><SurfaceEffect variant=\"banner\" />{description ? <p className=\"monkeys-ui-description\">{description}</p> : null}{search}{caption ? <div className=\"monkeys-ui-brand-caption\">{caption}</div> : null}{children}</Panel>;\n}\n\nexport interface CardGridItemProps extends HTMLAttributes<HTMLDivElement> { sortableId?: string }\nexport const CardGridItem = forwardRef<HTMLDivElement, CardGridItemProps>(function CardGridItem({ className, sortableId, ...props }, ref) {\n if (sortableId) return <SortableCollectionItem {...props} itemId={sortableId} role=\"listitem\" className={cx('monkeys-ui-card-grid-item', className)} />;\n return <div {...props} ref={ref} role=\"listitem\" className={cx('monkeys-ui-card-grid-item', className)} />;\n});\n\nexport interface CardActionsProps {\n label: string;\n monitored?: boolean;\n monitorPending?: boolean;\n onMonitoredChange?: (value: boolean) => void;\n favorite?: boolean;\n favoritePending?: boolean;\n onFavoriteChange?: (value: boolean) => void;\n menuItems?: MenuItem[];\n menuLabel?: string;\n onMenuCloseAutoFocus?: (event: Event) => void;\n}\n/** Host owns requests, optimistic rollback and the focus target after deletion. */\nexport function CardActions({ label, monitored, monitorPending, onMonitoredChange, favorite, favoritePending, onFavoriteChange, menuItems = [], menuLabel, onMenuCloseAutoFocus }: CardActionsProps) {\n return <>{onMonitoredChange ? <ToggleButton shape=\"icon\" aria-label={'监测 ' + label} data-monitored={monitored || undefined} size=\"sm\" variant=\"ghost\" checked={monitored ?? false} loading={monitorPending} onCheckedChange={onMonitoredChange}><LocateFixed size=\"var(--monkeys-ui-icon-size-s14,var(--monkeys-ui-default-icon-size-s14))\" fill={monitored ? 'currentColor' : 'none'} aria-hidden=\"true\" /></ToggleButton> : null}{onFavoriteChange ? <ToggleButton shape=\"icon\" aria-label={'收藏 ' + label} size=\"sm\" variant=\"ghost\" checked={favorite ?? false} loading={favoritePending} onCheckedChange={onFavoriteChange}><Bookmark size=\"var(--monkeys-ui-icon-size-s14,var(--monkeys-ui-default-icon-size-s14))\" fill={favorite ? 'currentColor' : 'none'} aria-hidden=\"true\" /></ToggleButton> : null}{menuItems.length ? <Menu label={menuLabel ?? label + ' 操作'} trigger={<Button shape=\"icon\" aria-label={'更多 ' + label}><MoreHorizontal size=\"var(--monkeys-ui-icon-size-s16,var(--monkeys-ui-default-icon-size-s16))\" aria-hidden=\"true\" /></Button>} onCloseAutoFocus={onMenuCloseAutoFocus} items={menuItems} /> : null}</>;\n}\n\nexport interface FormPanelProps extends Omit<FormHTMLAttributes<HTMLFormElement>, 'title'> {\n title: ReactNode;\n description?: ReactNode;\n actions?: ReactNode;\n}\n/** Ref and native form props are forwarded to the form, not the outer Panel. */\nexport const FormPanel = forwardRef<HTMLFormElement, FormPanelProps>(function FormPanel({ title, description, actions, children, className, ...props }, ref) {\n return <Panel className=\"monkeys-ui-form-panel\"><form {...props} ref={ref} className={className}><div className=\"monkeys-ui-form-header\"><div><SectionTitle as=\"h1\" indicator={false}>{title}</SectionTitle>{description ? <p>{description}</p> : null}</div>{actions ? <div className=\"monkeys-ui-form-actions\">{actions}</div> : null}</div><div className=\"monkeys-ui-form-body\">{children}</div></form></Panel>;\n});\n\nexport interface FormGridProps extends HTMLAttributes<HTMLDivElement> { variant?: 'standard' | 'compact' }\nexport function FormGrid({ variant = 'standard', className, children, ...props }: FormGridProps) {\n return <div {...props} className={cx('monkeys-ui-form-grid', className)} data-variant={variant}><div className=\"monkeys-ui-form-grid-content\">{children}</div></div>;\n}\n\nexport interface PreviewPanelProps extends PanelProps {\n state?: 'empty' | 'pending' | 'ready' | 'error';\n pendingLabel?: string;\n emptyMessage?: ReactNode;\n errorMessage?: ReactNode;\n}\n/** Scale the existing card as a whole; never maintain preview-only typography. */\nfunction PreviewMagnifier({ children }: { children: ReactNode }) {\n const frame = useRef<HTMLDivElement>(null);\n const stage = useRef<HTMLDivElement>(null);\n const [size, setSize] = useState({ scale: 1, height: 0 });\n useEffect(() => {\n const host = frame.current!;\n const content = stage.current!;\n const measure = () => {\n const width = content.offsetWidth;\n if (!width || !host.clientWidth) return;\n const scale = host.clientWidth / width;\n const height = content.offsetHeight * scale;\n setSize(previous => previous.scale === scale && previous.height === height ? previous : { scale, height });\n };\n const observer = new ResizeObserver(measure);\n observer.observe(host);\n observer.observe(content);\n measure();\n return () => observer.disconnect();\n }, []);\n return <div ref={frame} className=\"monkeys-ui-preview-magnifier\" style={{ height: size.height, visibility: size.height ? undefined : 'hidden' }}><div ref={stage} className=\"monkeys-ui-preview-magnifier-stage\" style={{ transform: `scale(${size.scale})` }}>{children}</div></div>;\n}\n\n/** Generic preview surface. Supply children and all labels. */\nexport function PreviewPanel({ children, state = 'ready', pendingLabel, emptyMessage, errorMessage, className, ...props }: PreviewPanelProps) {\n return <Panel {...props} className={cx('monkeys-ui-preview-panel', className)}><div className=\"monkeys-ui-preview-panel-card\"><PreviewMagnifier>{children}</PreviewMagnifier>{state === 'pending' && pendingLabel ? <Badge>{pendingLabel}</Badge> : null}{state === 'empty' && emptyMessage ? <span className=\"monkeys-ui-description\">{emptyMessage}</span> : null}{state === 'error' && errorMessage ? <Notice tone=\"danger\">{errorMessage}</Notice> : null}</div></Panel>;\n}\n\nexport interface NoticeRegionProps extends HTMLAttributes<HTMLElement> { position?: 'bottom-end' | 'top-end' }\nexport function NoticeRegion({ position = 'bottom-end', className, 'aria-label': label = '通知', ...props }: NoticeRegionProps) {\n return <aside {...props} aria-label={label} className={cx('monkeys-ui-notice-region', className)} data-position={position} />;\n}\n"]}