{ "$schema": "https://ui.shadcn.com/schema/registry.json", "name": "scrapscn", "homepage": "https://scrapscn.sentry.dev", "items": [ { "name": "sentry-base", "type": "registry:base", "title": "Sentry Base Theme", "description": "Complete Sentry design system theme for shadcn — purple-tinted neutrals, Blurple primary, Rubik typography, both light and dark modes. Includes warning, success, and promotion semantic tokens beyond the shadcn defaults.", "dependencies": ["next-themes", "tw-animate-css@1.4.0"], "registryDependencies": [], "files": [ { "path": "src/app/globals.css", "type": "registry:file", "target": "src/app/globals.css" }, { "path": "src/components/theme-provider.tsx", "type": "registry:component" } ] }, { "name": "scraps-locale", "type": "registry:lib", "title": "Scraps Locale Adapter", "description": "Shared standalone English locale fallback and host adapter for regular Scraps component strings.", "dependencies": ["sprintf-js@1.0.3"], "files": [ { "path": "src/lib/scraps-locale.ts", "type": "registry:lib" } ] }, { "name": "button", "type": "registry:ui", "title": "Button", "description": "Regular Scraps Button, LinkButton, and ButtonBar translated to Tailwind.", "registryDependencies": [ "https://scrapscn.sentry.dev/r/layout.json", "https://scrapscn.sentry.dev/r/link.json", "https://scrapscn.sentry.dev/r/loader.json", "https://scrapscn.sentry.dev/r/tooltip.json" ], "cssVars": { "light": { "scraps-button-secondary-surface": "#ffffff", "scraps-button-secondary-chonk": "#dad9de", "scraps-button-secondary-content": "#181225", "scraps-button-primary-chonk": "#5827d6", "scraps-button-danger-chonk": "#c10000", "scraps-button-warning-chonk": "#d59600", "scraps-button-transparent-content": "#302e36", "scraps-button-transparent-hover": "#10103008", "scraps-button-transparent-active": "#0000200f", "scraps-button-link-content": "#653de9" }, "dark": { "scraps-button-secondary-surface": "#2e2936", "scraps-button-secondary-chonk": "#141119", "scraps-button-secondary-content": "#ffffff", "scraps-button-primary-chonk": "#120539", "scraps-button-danger-chonk": "#330000", "scraps-button-warning-chonk": "#260900", "scraps-button-transparent-content": "#e7e5ea", "scraps-button-transparent-hover": "#d8a0f80f", "scraps-button-transparent-active": "#c0a8f81a", "scraps-button-link-content": "#aba8f8" } }, "files": [ { "path": "src/components/ui/button.tsx", "type": "registry:ui" }, { "path": "src/components/ui/size-context.tsx", "type": "registry:ui" } ] }, { "name": "tooltip", "type": "registry:ui", "title": "Tooltip", "description": "Regular Scraps collision-aware tooltip with shared delays, overflow detection, and interactive content.", "dependencies": ["@base-ui/react@1.5.0", "@fontsource/rubik@5.2.8", "framer-motion@12.38.0"], "files": [ { "path": "src/components/ui/rubik.css", "type": "registry:file", "target": "src/components/ui/rubik.css" }, { "path": "src/components/ui/tooltip.tsx", "type": "registry:ui" } ] }, { "name": "textarea", "type": "registry:ui", "title": "TextArea", "description": "Regular Scraps TextArea with exact sizes, native behavior, and width-aware autosizing.", "dependencies": ["react-textarea-autosize@8.5.7"], "registryDependencies": ["https://scrapscn.sentry.dev/r/sentry-base.json"], "files": [ { "path": "src/components/ui/textarea.tsx", "type": "registry:ui" } ] }, { "name": "input", "type": "registry:ui", "title": "Input", "description": "Regular Scraps Input, compound InputGroup, accessible numeric controls, drag input, and autosizing hook.", "dependencies": [ "@fontsource-variable/roboto-mono@5.2.9", "input-otp@1.5.0", "@react-aria/button@3.15.1", "@react-aria/i18n@3.13.1", "@react-aria/numberfield@3.13.1", "@react-aria/utils@3.34.1", "@react-stately/numberfield@3.12.1" ], "registryDependencies": [ "https://scrapscn.sentry.dev/r/button.json", "https://scrapscn.sentry.dev/r/scraps-locale.json", "https://scrapscn.sentry.dev/r/sentry-base.json", "https://scrapscn.sentry.dev/r/textarea.json", "https://scrapscn.sentry.dev/r/tooltip.json" ], "cssVars": { "light": { "scraps-input-background": "#10103008", "scraps-input-content-secondary": "#6a6772" }, "dark": { "scraps-input-background": "#00002033", "scraps-input-content-secondary": "#b5b0bd" } }, "files": [ { "path": "src/components/ui/roboto-mono.css", "type": "registry:file", "target": "src/components/ui/roboto-mono.css" }, { "path": "src/components/ui/input.tsx", "type": "registry:ui" } ] }, { "name": "breadcrumb-list", "type": "registry:ui", "title": "BreadcrumbList", "description": "Regular Scraps BreadcrumbList parent trail, responsive overflow, project selector, titles, pagination, and actions translated to Tailwind.", "dependencies": ["@base-ui/react@1.5.0", "lucide-react@1.16.0"], "registryDependencies": [ "https://scrapscn.sentry.dev/r/button.json", "https://scrapscn.sentry.dev/r/info.json", "https://scrapscn.sentry.dev/r/layout.json", "https://scrapscn.sentry.dev/r/link.json", "https://scrapscn.sentry.dev/r/menu-list-item.json", "https://scrapscn.sentry.dev/r/scraps-locale.json", "https://scrapscn.sentry.dev/r/tooltip.json" ], "files": [ { "path": "src/components/ui/breadcrumb-list.tsx", "type": "registry:ui" }, { "path": "src/components/ui/dropdown-menu.tsx", "type": "registry:ui" } ] }, { "name": "compact-select", "type": "registry:ui", "title": "CompactSelect", "description": "Regular Scraps controlled single, multiple, searchable, sectioned, composite, and virtualized select translated to Tailwind.", "dependencies": [ "@floating-ui/dom@1.7.6", "@popperjs/core@2.11.8", "@react-aria/focus@3.22.1", "@react-aria/gridlist@3.15.1", "@react-aria/interactions@3.28.1", "@react-aria/listbox@3.16.1", "@react-aria/separator@3.5.1", "@react-aria/utils@3.34.1", "@react-aria/visually-hidden@3.9.1", "@react-stately/collections@3.13.1", "@react-stately/list@3.14.1", "@react-types/shared@3.36.0", "@tanstack/react-virtual@3.14.6" ], "registryDependencies": [ "https://scrapscn.sentry.dev/r/alert.json", "https://scrapscn.sentry.dev/r/badge.json", "https://scrapscn.sentry.dev/r/button.json", "https://scrapscn.sentry.dev/r/checkbox.json", "https://scrapscn.sentry.dev/r/input.json", "https://scrapscn.sentry.dev/r/layout.json", "https://scrapscn.sentry.dev/r/menu-list-item.json", "https://scrapscn.sentry.dev/r/scraps-locale.json", "https://scrapscn.sentry.dev/r/text.json" ], "files": [ { "path": "THIRD_PARTY_NOTICES.md", "type": "registry:file", "target": "src/components/ui/SENTRY_SOURCE_NOTICE.md" }, { "path": "src/components/ui/compact-select-support.tsx", "type": "registry:ui" }, { "path": "src/components/ui/boundary-context.tsx", "type": "registry:file", "target": "src/components/ui/boundary-context.tsx" }, { "path": "src/components/ui/compact-select.tsx", "type": "registry:ui" } ] }, { "name": "modal", "type": "registry:ui", "title": "Modal", "description": "Regular Scraps GlobalModal singleton translated to Tailwind.", "dependencies": ["focus-trap@8.2.2", "framer-motion@12.38.0"], "registryDependencies": [ "https://scrapscn.sentry.dev/r/backdrop.json", "https://scrapscn.sentry.dev/r/button.json", "https://scrapscn.sentry.dev/r/layout.json", "https://scrapscn.sentry.dev/r/scraps-locale.json", "https://scrapscn.sentry.dev/r/tooltip.json" ], "files": [ { "path": "THIRD_PARTY_NOTICES.md", "type": "registry:file", "target": "src/components/ui/SENTRY_SOURCE_NOTICE.md" }, { "path": "src/components/ui/body-scroll-lock.ts", "type": "registry:ui" }, { "path": "src/components/ui/modal.tsx", "type": "registry:ui" } ] }, { "name": "drawer", "type": "registry:ui", "title": "Drawer", "description": "Regular Scraps global drawer with blocking and passive modes, resize persistence, and Tailwind styling.", "dependencies": ["@types/history@3.2.5", "framer-motion@12.38.0"], "registryDependencies": [ "https://scrapscn.sentry.dev/r/backdrop.json", "https://scrapscn.sentry.dev/r/button.json", "https://scrapscn.sentry.dev/r/hotkey.json", "https://scrapscn.sentry.dev/r/scraps-locale.json", "https://scrapscn.sentry.dev/r/slide-over-panel.json", "https://scrapscn.sentry.dev/r/tooltip.json" ], "files": [ { "path": "src/components/ui/body-scroll-lock.ts", "type": "registry:ui" }, { "path": "src/components/ui/drawer-resizing.ts", "type": "registry:ui" }, { "path": "src/components/ui/drawer.tsx", "type": "registry:ui" } ] }, { "name": "interaction-state-layer", "type": "registry:ui", "title": "Interaction State Layer", "description": "Regular Scraps interaction overlay for hover, press, selected, and expanded states.", "registryDependencies": ["sentry-base"], "files": [ { "path": "src/components/ui/interaction-state-layer.tsx", "type": "registry:ui" } ] }, { "name": "checkbox", "type": "registry:ui", "title": "Checkbox", "description": "Regular Scraps native checkbox with exact sizes, indeterminate state, focus treatment, and interaction layer.", "registryDependencies": [], "cssVars": { "light": { "checkbox-border": "#dad9de", "checkbox-checked": "#7553ff", "checkbox-checked-chonk": "#5827d6", "checkbox-focus": "#7553ff", "scraps-checkbox-focus-mask": "#ffffff" }, "dark": { "checkbox-border": "#141119", "checkbox-checked": "#7553ff", "checkbox-checked-chonk": "#120539", "checkbox-focus": "#7553ff", "scraps-checkbox-focus-mask": "#2e2936" } }, "files": [ { "path": "src/components/ui/interaction-state-layer.tsx", "type": "registry:ui" }, { "path": "src/components/ui/checkbox.tsx", "type": "registry:ui" } ] }, { "name": "alert", "type": "registry:ui", "title": "Alert", "description": "Sentry alert with the colored icon rail, system banner, expand/collapse, trailing items, and AlertLink.", "registryDependencies": [ "https://scrapscn.sentry.dev/r/button.json", "https://scrapscn.sentry.dev/r/link.json", "https://scrapscn.sentry.dev/r/scraps-locale.json" ], "cssVars": { "light": { "scraps-alert-info-background": "#0008f012", "scraps-alert-info-border": "#b7b2ff", "scraps-alert-danger-background": "#f828081c", "scraps-alert-danger-border": "#ff978f", "scraps-alert-warning-background": "#e0b01030", "scraps-alert-warning-border": "#edca60", "scraps-alert-success-background": "#00b8001c", "scraps-alert-success-border": "#7cd88a" }, "dark": { "scraps-alert-info-background": "#4828b894", "scraps-alert-info-border": "#7553ff", "scraps-alert-danger-background": "#f8000033", "scraps-alert-danger-border": "#ff002b", "scraps-alert-warning-background": "#e8380029", "scraps-alert-warning-border": "#ca9b00", "scraps-alert-success-background": "#00f8001f", "scraps-alert-success-border": "#00a719" } }, "files": [ { "path": "src/components/ui/alert.tsx", "type": "registry:ui" } ] }, { "name": "badge", "type": "registry:ui", "title": "Badge", "description": "Regular Scraps Badge module with Badge, Tag, FeatureBadge, AlertBadge, DeployBadge, and ProjectsBadge.", "dependencies": ["@react-aria/utils@3.34.1", "platformicons@9.6.0"], "registryDependencies": [ "https://scrapscn.sentry.dev/r/button.json", "https://scrapscn.sentry.dev/r/link.json", "https://scrapscn.sentry.dev/r/scraps-locale.json", "https://scrapscn.sentry.dev/r/tooltip.json" ], "cssVars": { "light": { "scraps-badge-neutral-muted": "#0000200f", "scraps-badge-accent-muted": "#0008f012", "scraps-badge-promotion-muted": "#f000901a", "scraps-badge-danger-muted": "#f828081c", "scraps-badge-warning-muted": "#e0b01030", "scraps-badge-success-muted": "#00b8001c", "scraps-badge-promotion-vibrant": "#fc5cb4", "scraps-badge-danger-vibrant": "#ff002b", "scraps-badge-warning-vibrant": "#ffce00", "scraps-badge-success-vibrant": "#00f261", "scraps-badge-on-vibrant-dark": "#000000", "scraps-badge-on-vibrant-light": "#ffffff" }, "dark": { "scraps-badge-neutral-muted": "#c0a8f81a", "scraps-badge-accent-muted": "#4828b894", "scraps-badge-promotion-muted": "#f800782e", "scraps-badge-danger-muted": "#f8000033", "scraps-badge-warning-muted": "#e8380029", "scraps-badge-success-muted": "#00f8001f", "scraps-badge-promotion-vibrant": "#ff45a8", "scraps-badge-danger-vibrant": "#ff002b", "scraps-badge-warning-vibrant": "#ffce00", "scraps-badge-success-vibrant": "#00f261", "scraps-badge-on-vibrant-dark": "#000000", "scraps-badge-on-vibrant-light": "#ffffff" } }, "files": [ { "path": "src/components/ui/badge.tsx", "type": "registry:ui" }, { "path": "src/components/ui/translation-context.tsx", "type": "registry:ui" }, { "path": "src/components/ui/use-is-inside-interactive-element.ts", "type": "registry:ui" } ] }, { "name": "select", "type": "registry:ui", "title": "Select", "description": "Regular Scraps react-select v4-compatible Select with single, multiple, searchable, async, creatable, grouped, form, and replacement-slot behavior.", "registryDependencies": [ "https://scrapscn.sentry.dev/r/menu-list-item.json", "https://scrapscn.sentry.dev/r/scraps-locale.json" ], "cssVars": { "light": { "scraps-select-border": "#dad9de", "scraps-select-border-secondary": "#e6e6e9", "scraps-select-transparent-hover": "#10103008", "scraps-select-surface": "#ffffff", "scraps-select-content": "#302e36", "scraps-select-muted": "#6a6772", "scraps-select-disabled": "#878490", "scraps-select-content-accent": "#653de9", "scraps-select-vibrant-accent": "#7553ff", "scraps-select-graphics-accent": "#b7b2ff", "scraps-select-option-focus": "#f8f8f9", "scraps-select-background": "#10103008", "scraps-select-chonk": "#dad9de", "scraps-select-focus": "#7553ff" }, "dark": { "scraps-select-border": "#141119", "scraps-select-border-secondary": "#1b1821", "scraps-select-transparent-hover": "#d8a0f80f", "scraps-select-surface": "#2e2936", "scraps-select-content": "#e7e5ea", "scraps-select-muted": "#b5b0bd", "scraps-select-disabled": "#958e9f", "scraps-select-content-accent": "#aba8f8", "scraps-select-vibrant-accent": "#7553ff", "scraps-select-graphics-accent": "#7553ff", "scraps-select-option-focus": "#4d4857", "scraps-select-background": "#00002033", "scraps-select-chonk": "#141119", "scraps-select-focus": "#7553ff" } }, "files": [ { "path": "src/components/ui/body-scroll-lock.ts", "type": "registry:ui" }, { "path": "src/components/ui/select-types.ts", "type": "registry:ui" }, { "path": "src/components/ui/select.tsx", "type": "registry:ui" } ] }, { "name": "form", "type": "registry:ui", "title": "Form", "description": "Regular Scraps TanStack Form hook, bound fields, layouts, auto-save wrapper, and field-error helper with Tailwind styling.", "dependencies": [ "@base-ui/react@1.5.0", "@tanstack/react-form@1.28.6", "@tanstack/react-query@5.101.4", "type-fest@5.8.0", "zod@4.3.5" ], "registryDependencies": [ "https://scrapscn.sentry.dev/r/button.json", "https://scrapscn.sentry.dev/r/info.json", "https://scrapscn.sentry.dev/r/input.json", "https://scrapscn.sentry.dev/r/radio.json", "https://scrapscn.sentry.dev/r/scraps-locale.json", "https://scrapscn.sentry.dev/r/select.json", "https://scrapscn.sentry.dev/r/slider.json", "https://scrapscn.sentry.dev/r/switch.json", "https://scrapscn.sentry.dev/r/textarea.json" ], "files": [ { "path": "src/components/ui/form-auto-save-context.tsx", "type": "registry:ui" }, { "path": "src/components/ui/form-context.ts", "type": "registry:ui" }, { "path": "src/components/ui/form-fields.tsx", "type": "registry:ui" }, { "path": "src/components/ui/form.tsx", "type": "registry:ui" } ] }, { "name": "radio", "type": "registry:ui", "title": "Radio", "description": "Regular Scraps native radio with exact xs, sm, and md geometry and form behavior.", "registryDependencies": [], "cssVars": { "light": { "radio-border": "#dad9de", "radio-checked": "#7553ff", "radio-checked-chonk": "#5827d6", "radio-focus": "#7553ff", "scraps-radio-focus-mask": "#ffffff" }, "dark": { "radio-border": "#141119", "radio-checked": "#7553ff", "radio-checked-chonk": "#120539", "radio-focus": "#7553ff", "scraps-radio-focus-mask": "#2e2936" } }, "files": [ { "path": "src/components/ui/radio.css", "type": "registry:file", "target": "src/components/ui/radio.css" }, { "path": "src/components/ui/radio.tsx", "type": "registry:ui" } ] }, { "name": "chip", "type": "registry:ui", "title": "Chip", "description": "Regular Scraps query chip with exact sizes, readonly summary, and dismiss behavior.", "registryDependencies": [ "https://scrapscn.sentry.dev/r/button.json", "https://scrapscn.sentry.dev/r/layout.json", "https://scrapscn.sentry.dev/r/text.json" ], "cssVars": { "light": { "scraps-chip-background": "#ffffff", "scraps-chip-chonk": "#dad9de", "scraps-chip-content-primary": "#181225", "scraps-chip-content-secondary": "#6a6772", "scraps-chip-hover": "#f8f8f9" }, "dark": { "scraps-chip-background": "#2e2936", "scraps-chip-chonk": "#141119", "scraps-chip-content-primary": "#ffffff", "scraps-chip-content-secondary": "#b5b0bd", "scraps-chip-hover": "#24202b" } }, "files": [ { "path": "src/components/ui/chip.tsx", "type": "registry:ui" } ] }, { "name": "info", "type": "registry:ui", "title": "Info", "description": "Regular Scraps InfoText, InfoTip, and DisabledTip tooltip helpers.", "cssVars": { "light": { "scraps-info-graphics-warning-vibrant": "#d59600" }, "dark": { "scraps-info-graphics-warning-vibrant": "#ffce00" } }, "registryDependencies": [ "https://scrapscn.sentry.dev/r/text.json", "https://scrapscn.sentry.dev/r/tooltip.json" ], "files": [ { "path": "src/components/ui/info.tsx", "type": "registry:ui" } ] }, { "name": "segmented-control", "type": "registry:ui", "title": "Segmented Control", "description": "Regular Scraps controlled segmented control with React Aria radio semantics, exact chonky geometry, priorities, tooltip composition, and xs/sm/md sizes.", "dependencies": [ "@react-aria/radio@3.13.1", "@react-stately/collections@3.13.1", "@react-stately/list@3.14.1", "@react-stately/radio@3.12.1", "@react-types/shared@3.36.0" ], "registryDependencies": [ "https://scrapscn.sentry.dev/r/sentry-base.json", "https://scrapscn.sentry.dev/r/tooltip.json" ], "cssVars": { "light": { "scraps-segmented-control-focus-mask": "#ffffff", "scraps-segmented-control-focus": "#7553ff" }, "dark": { "scraps-segmented-control-focus-mask": "#2e2936", "scraps-segmented-control-focus": "#7553ff" } }, "files": [ { "path": "src/components/ui/segmented-control.tsx", "type": "registry:ui" } ] }, { "name": "slider", "type": "registry:ui", "title": "Slider", "description": "Range slider with value label, ticks, formatOptions, and a chonk thumb.", "dependencies": [ "@react-aria/i18n@3.13.1", "@react-aria/slider@3.9.1", "@react-aria/visually-hidden@3.9.1", "@react-stately/slider@3.8.1" ], "cssVars": { "light": { "scraps-slider-accent-background": "#7553ff", "scraps-slider-accent-chonk": "#5827d6", "scraps-slider-neutral-background": "#10103008", "scraps-slider-neutral-chonk": "#dad9de", "scraps-slider-thumb-surface": "#ffffff", "scraps-slider-label-content": "#6a6772", "scraps-slider-label-hover": "#653de9", "scraps-slider-focus-mask": "#ffffff", "scraps-slider-focus": "#7553ff", "scraps-slider-disabled-content": "#878490", "scraps-slider-on-vibrant": "#ffffff" }, "dark": { "scraps-slider-accent-background": "#7553ff", "scraps-slider-accent-chonk": "#120539", "scraps-slider-neutral-background": "#00002033", "scraps-slider-neutral-chonk": "#141119", "scraps-slider-thumb-surface": "#393442", "scraps-slider-label-content": "#b5b0bd", "scraps-slider-label-hover": "#aba8f8", "scraps-slider-focus-mask": "#2e2936", "scraps-slider-focus": "#7553ff", "scraps-slider-disabled-content": "#958e9f", "scraps-slider-on-vibrant": "#ffffff" } }, "files": [ { "path": "src/components/ui/slider.tsx", "type": "registry:ui" } ] }, { "name": "switch", "type": "registry:ui", "title": "Switch", "description": "Regular Scraps native switch with exact chonk geometry, icons, focus treatment, and form behavior.", "registryDependencies": [], "cssVars": { "light": { "scraps-switch-neutral-background": "#10103008", "scraps-switch-neutral-chonk": "#dad9de", "scraps-switch-thumb-surface": "#ffffff", "scraps-switch-accent-background": "#7553ff", "scraps-switch-accent-chonk": "#5827d6", "scraps-switch-close": "#6a6772", "scraps-switch-check": "#653de9", "scraps-switch-focus-mask": "#ffffff", "scraps-switch-focus": "#7553ff" }, "dark": { "scraps-switch-neutral-background": "#00002033", "scraps-switch-neutral-chonk": "#141119", "scraps-switch-thumb-surface": "#2e2936", "scraps-switch-accent-background": "#7553ff", "scraps-switch-accent-chonk": "#120539", "scraps-switch-close": "#b5b0bd", "scraps-switch-check": "#aba8f8", "scraps-switch-focus-mask": "#2e2936", "scraps-switch-focus": "#7553ff" } }, "files": [{ "path": "src/components/ui/switch.tsx", "type": "registry:ui" }] }, { "name": "tabs", "type": "registry:ui", "title": "Tabs", "description": "Regular Scraps compound tabs with controlled and uncontrolled selection, horizontal overflow, links, tooltips, and vertical layouts.", "dependencies": [ "@react-aria/tabs@3.12.1", "@react-stately/collections@3.13.1", "@react-stately/list@3.14.1", "@react-stately/tabs@3.9.1", "@react-types/shared@3.36.0", "lucide-react@1.16.0" ], "registryDependencies": [ "https://scrapscn.sentry.dev/r/button.json", "https://scrapscn.sentry.dev/r/compact-select.json", "https://scrapscn.sentry.dev/r/link.json", "https://scrapscn.sentry.dev/r/scraps-locale.json", "https://scrapscn.sentry.dev/r/sentry-base.json", "https://scrapscn.sentry.dev/r/tooltip.json" ], "cssVars": { "light": { "scraps-tabs-neutral-hover": "#5b5864", "scraps-tabs-neutral-active": "#4c4954", "scraps-tabs-accent-hover": "#5827d6", "scraps-tabs-accent-active": "#4c0fc0", "scraps-tabs-neutral-hover-background": "#10103008", "scraps-tabs-neutral-active-background": "#0000200f", "scraps-tabs-accent-selected-rest": "#0000f008", "scraps-tabs-accent-selected-hover": "#0008f012", "scraps-tabs-accent-selected-active": "#1010f81f", "scraps-tabs-focus": "#7553ff", "scraps-tabs-indicator": "#7553ff" }, "dark": { "scraps-tabs-neutral-hover": "#c4c0cb", "scraps-tabs-neutral-active": "#d5d2da", "scraps-tabs-accent-hover": "#bcbafd", "scraps-tabs-accent-active": "#cfceff", "scraps-tabs-neutral-hover-background": "#d8a0f80f", "scraps-tabs-neutral-active-background": "#c0a8f81a", "scraps-tabs-accent-selected-rest": "#5828f05e", "scraps-tabs-accent-selected-hover": "#4828b894", "scraps-tabs-accent-selected-active": "#402898d1", "scraps-tabs-focus": "#7553ff", "scraps-tabs-indicator": "#7553ff" } }, "files": [{ "path": "src/components/ui/tabs.tsx", "type": "registry:ui" }] }, { "name": "avatar", "type": "registry:ui", "title": "Avatar", "description": "Regular Scraps user, team, organization, project, integration, actor, and collapsed-list avatars translated to Tailwind.", "dependencies": ["platformicons@9.6.0"], "registryDependencies": [ "https://scrapscn.sentry.dev/r/badge.json", "https://scrapscn.sentry.dev/r/image.json", "https://scrapscn.sentry.dev/r/sentry-base.json", "https://scrapscn.sentry.dev/r/tooltip.json" ], "cssVars": { "light": { "scraps-border-primary": "#dad9de", "scraps-border-neutral-vibrant": "#a29faa", "scraps-border-transparent-neutral-muted": "#00002026" }, "dark": { "scraps-border-primary": "#141119", "scraps-border-neutral-vibrant": "#b5b0bd", "scraps-border-transparent-neutral-muted": "#c0a8e03d" } }, "files": [ { "path": "src/components/ui/avatar-actor-resolver.tsx", "type": "registry:ui" }, { "path": "src/components/ui/avatar.tsx", "type": "registry:ui" } ] }, { "name": "link", "type": "registry:ui", "title": "Link", "description": "Regular Scraps router Link, ExternalLink, and Link behavior context.", "dependencies": ["@sentry/react@10.69.0", "@types/history@3.2.5", "react-router-dom@7.18.3"], "cssVars": { "light": { "scraps-link-disabled": "#878490" }, "dark": { "scraps-link-disabled": "#958e9f" } }, "files": [ { "path": "src/components/ui/link-behavior-context.tsx", "type": "registry:ui" }, { "path": "src/components/ui/link.tsx", "type": "registry:ui" }, { "path": "src/components/ui/tracking-context.tsx", "type": "registry:ui" } ] }, { "name": "layout", "type": "registry:ui", "title": "Layout", "description": "Regular Scraps responsive Container, Flex, Grid, Stack, and Surface primitives.", "dependencies": [], "registryDependencies": ["https://scrapscn.sentry.dev/r/sentry-base.json"], "files": [ { "path": "src/components/ui/container-query-context.ts", "type": "registry:ui" }, { "path": "src/components/ui/layout-style-engine.ts", "type": "registry:ui" }, { "path": "src/components/ui/layout-tailwind-candidates.ts", "type": "registry:ui" }, { "path": "src/components/ui/layout-tailwind.ts", "type": "registry:ui" }, { "path": "src/components/ui/layout.tsx", "type": "registry:ui" }, { "path": "src/components/ui/separator.tsx", "type": "registry:ui" } ] }, { "name": "separator", "type": "registry:ui", "title": "Separator", "description": "Regular Scraps native horizontal or vertical separator.", "dependencies": [], "registryDependencies": ["https://scrapscn.sentry.dev/r/sentry-base.json"], "files": [ { "path": "src/components/ui/container-query-context.ts", "type": "registry:ui" }, { "path": "src/components/ui/layout-style-engine.ts", "type": "registry:ui" }, { "path": "src/components/ui/layout-tailwind-candidates.ts", "type": "registry:ui" }, { "path": "src/components/ui/layout-tailwind.ts", "type": "registry:ui" }, { "path": "src/components/ui/separator.tsx", "type": "registry:ui" } ] }, { "name": "quote", "type": "registry:ui", "title": "Quote", "description": "Regular Scraps semantic extended quotation with an optional source attribution and citation.", "registryDependencies": [ "https://scrapscn.sentry.dev/r/layout.json", "https://scrapscn.sentry.dev/r/text.json" ], "files": [ { "path": "src/components/ui/quote.tsx", "type": "registry:ui" } ] }, { "name": "pagination", "type": "registry:ui", "title": "Pagination", "description": "Regular Scraps cursor-based previous and next controls driven by an API Link header.", "cssVars": { "light": { "scraps-content-secondary": "#6a6772" }, "dark": { "scraps-content-secondary": "#b5b0bd" } }, "registryDependencies": [ "https://scrapscn.sentry.dev/r/button.json", "https://scrapscn.sentry.dev/r/scraps-locale.json" ], "files": [ { "path": "src/components/ui/pagination.tsx", "type": "registry:ui" } ] }, { "name": "avatar-button", "type": "registry:ui", "title": "AvatarButton", "description": "Regular Scraps square AvatarButton with letter, upload, and gravatar avatar sources.", "dependencies": ["color@5.0.2"], "registryDependencies": ["https://scrapscn.sentry.dev/r/button.json"], "cssVars": { "light": { "scraps-avatar-padded-background": "#fff" }, "dark": { "scraps-avatar-padded-background": "#2e2936" } }, "files": [ { "path": "src/components/ui/avatar-button.tsx", "type": "registry:ui" } ] }, { "name": "toast", "type": "registry:ui", "title": "Toast", "description": "Regular Scraps temporary notification with type rails, canonical icons, undo action, and dismissal callback.", "dependencies": ["@sentry/react@10.69.0", "framer-motion@12.38.0"], "registryDependencies": [ "https://scrapscn.sentry.dev/r/button.json", "https://scrapscn.sentry.dev/r/scraps-locale.json" ], "cssVars": { "light": { "scraps-toast-primary": "#fff", "scraps-toast-overlay": "#fff", "scraps-toast-success-muted": "#00b8001c", "scraps-toast-danger-muted": "#f828081c", "scraps-toast-success-vibrant": "#00f261", "scraps-toast-danger-vibrant": "#ff002b", "scraps-toast-border": "#dad9de", "scraps-toast-success-border": "#7cd88a", "scraps-toast-danger-border": "#ff978f", "scraps-toast-on-vibrant-dark": "#000", "scraps-toast-on-vibrant-light": "#fff" }, "dark": { "scraps-toast-primary": "#2e2936", "scraps-toast-overlay": "#393442", "scraps-toast-success-muted": "#00f8001f", "scraps-toast-danger-muted": "#f8000033", "scraps-toast-success-vibrant": "#00f261", "scraps-toast-danger-vibrant": "#ff002b", "scraps-toast-border": "#141119", "scraps-toast-success-border": "#00a719", "scraps-toast-danger-border": "#ff002b", "scraps-toast-on-vibrant-dark": "#000", "scraps-toast-on-vibrant-light": "#fff" } }, "files": [ { "path": "src/components/ui/toast.tsx", "type": "registry:ui" } ] }, { "name": "chat", "type": "registry:ui", "title": "Chat", "description": "Regular Scraps conversation messages, feedback actions, tool status, spinner, and thinking disclosure.", "dependencies": ["framer-motion@12.38.0"], "registryDependencies": [ "https://scrapscn.sentry.dev/r/button.json", "https://scrapscn.sentry.dev/r/disclosure.json", "https://scrapscn.sentry.dev/r/markdown.json", "https://scrapscn.sentry.dev/r/scraps-locale.json", "https://scrapscn.sentry.dev/r/text.json" ], "cssVars": { "light": { "scraps-theme-surface400": "#f8f8f9", "scraps-theme-border-primary": "#dad9de", "scraps-theme-border-accent": "#7553ff", "scraps-content-primary": "#302e36", "scraps-content-secondary": "#6a6772", "scraps-content-danger": "#d50000", "scraps-content-success": "#008900", "scraps-info-graphics-warning-vibrant": "#d59600" }, "dark": { "scraps-theme-surface400": "#24202b", "scraps-theme-border-primary": "#141119", "scraps-theme-border-accent": "#7553ff", "scraps-content-primary": "#e7e5ea", "scraps-content-secondary": "#b5b0bd", "scraps-content-danger": "#f6938c", "scraps-content-success": "#5ece73", "scraps-info-graphics-warning-vibrant": "#ffce00" } }, "files": [ { "path": "src/components/ui/chat.css", "type": "registry:file", "target": "src/components/ui/chat.css" }, { "path": "src/components/ui/chat.tsx", "type": "registry:ui" } ] }, { "name": "markdown", "type": "registry:ui", "title": "Markdown", "description": "Regular Scraps safe Markdown renderer with component overrides, custom tags, and streaming decode animation.", "dependencies": ["framer-motion@12.38.0", "isomorphic-dompurify@2.20.0", "marked@18.0.2"], "registryDependencies": [ "https://scrapscn.sentry.dev/r/checkbox.json", "https://scrapscn.sentry.dev/r/code.json", "https://scrapscn.sentry.dev/r/layout.json", "https://scrapscn.sentry.dev/r/link.json", "https://scrapscn.sentry.dev/r/quote.json", "https://scrapscn.sentry.dev/r/text.json" ], "files": [ { "path": "src/components/ui/markdown.css", "type": "registry:file", "target": "src/components/ui/markdown.css" }, { "path": "src/components/ui/markdown-default-components.tsx", "type": "registry:ui" }, { "path": "src/components/ui/markdown-parser.ts", "type": "registry:ui" }, { "path": "src/components/ui/markdown-streaming.ts", "type": "registry:ui" }, { "path": "src/components/ui/markdown-token.tsx", "type": "registry:ui" }, { "path": "src/components/ui/markdown-types.ts", "type": "registry:ui" }, { "path": "src/components/ui/markdown.tsx", "type": "registry:ui" } ] }, { "name": "menu-list-item", "type": "registry:ui", "title": "MenuListItem", "description": "Regular Scraps menu item with state slots, delayed tooltip, and fixed details overlay.", "dependencies": ["@floating-ui/dom@1.7.6", "@react-aria/utils@3.34.1"], "registryDependencies": [ "https://scrapscn.sentry.dev/r/interaction-state-layer.json", "https://scrapscn.sentry.dev/r/tooltip.json" ], "cssVars": { "light": { "scraps-content-primary": "#302e36", "scraps-content-secondary": "#6a6772", "scraps-content-accent": "#653de9", "scraps-content-danger": "#d50000", "scraps-menu-list-item-overlay-background": "#ffffff", "scraps-menu-list-item-overlay-border": "#dad9de", "scraps-menu-list-item-overlay-shadow": "#dad9de", "scraps-theme-border-primary": "#dad9de" }, "dark": { "scraps-content-primary": "#e7e5ea", "scraps-content-secondary": "#b5b0bd", "scraps-content-accent": "#aba8f8", "scraps-content-danger": "#f6938c", "scraps-menu-list-item-overlay-background": "#393442", "scraps-menu-list-item-overlay-border": "#141119", "scraps-menu-list-item-overlay-shadow": "#141119", "scraps-theme-border-primary": "#141119" } }, "files": [ { "path": "src/components/ui/menu-list-item.tsx", "type": "registry:ui" } ] }, { "name": "picture-in-picture", "type": "registry:ui", "title": "PictureInPicture", "description": "Regular Scraps native Document Picture-in-Picture provider, hook, and portal with Tailwind style transfer.", "registryDependencies": ["https://scrapscn.sentry.dev/r/tooltip.json"], "files": [ { "path": "src/components/ui/picture-in-picture.tsx", "type": "registry:ui" }, { "path": "src/components/ui/picture-in-picture-portal.tsx", "type": "registry:ui" }, { "path": "src/types/document-picture-in-picture.d.ts", "type": "registry:file", "target": "src/types/document-picture-in-picture.d.ts" } ] }, { "name": "empty-state", "type": "registry:ui", "title": "Empty State", "description": "Regular Scraps responsive no-content layout with optional illustration, description, and action.", "registryDependencies": [ "https://scrapscn.sentry.dev/r/layout.json", "https://scrapscn.sentry.dev/r/text.json" ], "files": [ { "path": "src/components/ui/empty-state.tsx", "type": "registry:ui" } ] }, { "name": "loader", "type": "registry:ui", "title": "Indeterminate Loader", "description": "Regular Scraps animated squiggle progress indicator.", "dependencies": ["@react-aria/utils@3.34.1"], "registryDependencies": [], "files": [ { "path": "src/components/ui/loader.css", "type": "registry:file", "target": "src/components/ui/loader.css" }, { "path": "src/components/ui/loader.tsx", "type": "registry:ui" } ] }, { "name": "slide-over-panel", "type": "registry:ui", "title": "Slide Over Panel", "description": "Regular Scraps complementary panel with deferred opening content and responsive placements.", "dependencies": ["framer-motion@12.38.0"], "registryDependencies": [], "cssVars": { "light": { "scraps-slide-over-background": "#ffffff", "scraps-slide-over-content": "#302e36", "scraps-slide-over-shadow": "0px 4px 0px 2px #10103008, 0px 1px 0px 1px #10103008" }, "dark": { "scraps-slide-over-background": "#393442", "scraps-slide-over-content": "#e7e5ea", "scraps-slide-over-shadow": "0px 4px 0px 2px #0000181a, 0px 1px 0px 1px #0000181a" } }, "files": [ { "path": "src/components/ui/boundary-context.tsx", "type": "registry:file", "target": "src/components/ui/boundary-context.tsx" }, { "path": "src/components/ui/slide-over-panel-environment.tsx", "type": "registry:file", "target": "src/components/ui/slide-over-panel-environment.tsx" }, { "path": "src/components/ui/slide-over-panel.tsx", "type": "registry:ui" } ] }, { "name": "drag-handle", "type": "registry:ui", "title": "Drag Handle", "description": "Self-contained regular Scraps keyboard and pointer separator for resizable panes with merge-safe theme tokens.", "dependencies": ["@react-aria/interactions@3.28.1", "@react-aria/utils@3.34.1"], "registryDependencies": [], "cssVars": { "theme": { "duration-slow": "240ms", "ease-smooth": "cubic-bezier(0.72, 0, 0.16, 1)" }, "light": { "scraps-theme-border-primary": "#dad9de" }, "dark": { "scraps-theme-border-primary": "#141119" } }, "files": [ { "path": "src/components/ui/drag-handle.tsx", "type": "registry:ui" }, { "path": "src/components/ui/use-drag-move.tsx", "type": "registry:ui" }, { "path": "src/components/ui/use-drag-separator.tsx", "type": "registry:ui" } ] }, { "name": "slot", "type": "registry:ui", "title": "Slot", "description": "Regular Scraps typed portal slots with outlet fallbacks and logical size and container-query context bridging.", "dependencies": ["@sentry/react@10.69.0"], "files": [ { "path": "src/components/ui/container-query-context.ts", "type": "registry:ui" }, { "path": "src/components/ui/size-context.tsx", "type": "registry:ui" }, { "path": "src/components/ui/slot.tsx", "type": "registry:ui" } ] }, { "name": "split-panel", "type": "registry:ui", "title": "Split Panel", "description": "Regular Scraps two-pane layout with a resizable sized pane and keyboard-accessible divider.", "dependencies": ["@react-aria/interactions@3.28.1", "@react-aria/utils@3.34.1"], "registryDependencies": [], "cssVars": { "theme": { "duration-slow": "240ms", "ease-smooth": "cubic-bezier(0.72, 0, 0.16, 1)" }, "light": { "scraps-theme-border-primary": "#dad9de" }, "dark": { "scraps-theme-border-primary": "#141119" } }, "files": [ { "path": "src/components/ui/container-query-context.ts", "type": "registry:ui" }, { "path": "src/components/ui/drag-handle.tsx", "type": "registry:ui" }, { "path": "src/components/ui/layout-style-engine.ts", "type": "registry:ui" }, { "path": "src/components/ui/layout-tailwind-candidates.ts", "type": "registry:ui" }, { "path": "src/components/ui/layout-tailwind.ts", "type": "registry:ui" }, { "path": "src/components/ui/layout.tsx", "type": "registry:ui" }, { "path": "src/components/ui/separator.tsx", "type": "registry:ui" }, { "path": "src/components/ui/split-panel.tsx", "type": "registry:ui" }, { "path": "src/components/ui/use-drag-move.tsx", "type": "registry:ui" }, { "path": "src/components/ui/use-drag-separator.tsx", "type": "registry:ui" } ] }, { "name": "table", "type": "registry:ui", "title": "Table", "description": "Regular Scraps CSS-grid table with sortable headers and accessible resizable columns.", "dependencies": ["@react-aria/interactions@3.28.1", "@react-aria/utils@3.34.1"], "registryDependencies": ["https://scrapscn.sentry.dev/r/tooltip.json"], "cssVars": { "theme": { "duration-slow": "240ms", "ease-smooth": "cubic-bezier(0.72, 0, 0.16, 1)" }, "light": { "scraps-theme-border-primary": "#dad9de", "scraps-theme-border-secondary": "#e6e6e9" }, "dark": { "scraps-theme-border-primary": "#141119", "scraps-theme-border-secondary": "#1b1821" } }, "files": [ { "path": "src/components/ui/drag-handle.tsx", "type": "registry:ui" }, { "path": "src/components/ui/table.tsx", "type": "registry:ui" }, { "path": "src/components/ui/use-drag-move.tsx", "type": "registry:ui" }, { "path": "src/components/ui/use-drag-separator.tsx", "type": "registry:ui" } ] }, { "name": "status-indicator", "type": "registry:ui", "title": "Status Indicator", "description": "Regular Scraps status dot with accessible finite and infinite pulse states.", "dependencies": [], "registryDependencies": [], "cssVars": { "light": { "scraps-status-accent-dot": "#7553ff", "scraps-status-accent-pulse": "#0008f012", "scraps-status-danger-dot": "#ff002b", "scraps-status-danger-pulse": "#f828081c", "scraps-status-warning-dot": "#ffce00", "scraps-status-warning-pulse": "#e0b01030", "scraps-status-success-dot": "#00f261", "scraps-status-success-pulse": "#00b8001c", "scraps-status-promotion-dot": "#fc5cb4", "scraps-status-promotion-pulse": "#f000901a", "scraps-status-muted-dot": "#c0bec6", "scraps-status-muted-pulse": "#0000200f" }, "dark": { "scraps-status-accent-dot": "#7553ff", "scraps-status-accent-pulse": "#4828b894", "scraps-status-danger-dot": "#ff002b", "scraps-status-danger-pulse": "#f8000033", "scraps-status-warning-dot": "#ffce00", "scraps-status-warning-pulse": "#e8380029", "scraps-status-success-dot": "#00f261", "scraps-status-success-pulse": "#00f8001f", "scraps-status-promotion-dot": "#ff45a8", "scraps-status-promotion-pulse": "#f800782e", "scraps-status-muted-dot": "#898294", "scraps-status-muted-pulse": "#c0a8f81a" } }, "files": [ { "path": "src/components/ui/status-indicator.css", "type": "registry:file", "target": "src/components/ui/status-indicator.css" }, { "path": "src/components/ui/status-indicator.tsx", "type": "registry:ui" } ] }, { "name": "reveal-on-hover", "type": "registry:ui", "title": "Reveal On Hover", "description": "Regular Scraps hover and focus action reveal primitive.", "dependencies": [], "registryDependencies": [], "cssVars": { "theme": { "duration-fast": "120ms", "duration-moderate": "160ms", "ease-enter": "cubic-bezier(0.24, 1, 0.32, 1)", "ease-exit": "cubic-bezier(0.64, 0, 0.8, 0)" } }, "files": [ { "path": "src/components/ui/container-query-context.ts", "type": "registry:ui" }, { "path": "src/components/ui/layout-style-engine.ts", "type": "registry:ui" }, { "path": "src/components/ui/layout-tailwind-candidates.ts", "type": "registry:ui" }, { "path": "src/components/ui/layout-tailwind.ts", "type": "registry:ui" }, { "path": "src/components/ui/layout.tsx", "type": "registry:ui" }, { "path": "src/components/ui/reveal-on-hover.tsx", "type": "registry:ui" }, { "path": "src/components/ui/separator.tsx", "type": "registry:ui" } ] }, { "name": "hotkey", "type": "registry:ui", "title": "Hotkey", "description": "Regular Scraps platform-aware keyboard shortcut display and document listener.", "dependencies": [ "@fontsource-variable/roboto-mono@5.2.9", "@react-aria/utils@3.34.1", "@sentry/react@10.69.0" ], "registryDependencies": [], "cssVars": { "light": { "scraps-hotkey-background-primary": "#ffffff", "scraps-hotkey-background-secondary": "#f8f8f9", "scraps-hotkey-border-primary": "#dad9de", "scraps-hotkey-content-primary": "#302e36", "scraps-hotkey-content-secondary": "#6a6772" }, "dark": { "scraps-hotkey-background-primary": "#2e2936", "scraps-hotkey-background-secondary": "#24202b", "scraps-hotkey-border-primary": "#141119", "scraps-hotkey-content-primary": "#e7e5ea", "scraps-hotkey-content-secondary": "#b5b0bd" } }, "files": [ { "path": "src/components/ui/roboto-mono.css", "type": "registry:file", "target": "src/components/ui/roboto-mono.css" }, { "path": "src/components/ui/hotkey.tsx", "type": "registry:ui" } ] }, { "name": "image", "type": "registry:ui", "title": "Image", "description": "Regular Scraps native image with responsive dimensions and radius.", "dependencies": [], "registryDependencies": [], "cssVars": { "light": { "scraps-theme-border-primary": "#dad9de", "scraps-theme-border-secondary": "#e6e6e9" }, "dark": { "scraps-theme-border-primary": "#141119", "scraps-theme-border-secondary": "#1b1821" } }, "files": [ { "path": "src/components/ui/container-query-context.ts", "type": "registry:ui" }, { "path": "src/components/ui/layout-style-engine.ts", "type": "registry:ui" }, { "path": "src/components/ui/layout-tailwind-candidates.ts", "type": "registry:ui" }, { "path": "src/components/ui/layout-tailwind.ts", "type": "registry:ui" }, { "path": "src/components/ui/layout.tsx", "type": "registry:ui" }, { "path": "src/components/ui/separator.tsx", "type": "registry:ui" }, { "path": "src/components/ui/image.tsx", "type": "registry:ui" } ] }, { "name": "backdrop", "type": "registry:ui", "title": "Backdrop", "description": "Regular Scraps animated overlay for drawers and modals.", "dependencies": ["framer-motion@12.38.0"], "registryDependencies": [], "cssVars": { "light": { "scraps-backdrop-background": "#10082845" }, "dark": { "scraps-backdrop-background": "#10082080" } }, "files": [{ "path": "src/components/ui/backdrop.tsx", "type": "registry:ui" }] }, { "name": "code", "type": "registry:ui", "title": "Code", "description": "Regular Scraps block and inline code with lazy Prism language highlighting.", "dependencies": [ "@fontsource-variable/roboto-mono@5.2.9", "@types/prismjs@1.26.0", "prismjs@1.30.0" ], "registryDependencies": ["https://scrapscn.sentry.dev/r/button.json"], "cssVars": { "light": { "scraps-theme-border-primary": "#dad9de", "scraps-inline-code-content": "#c8007e", "scraps-inline-code-background": "#f000901a", "scraps-inline-code-neutral-content": "#302e36", "scraps-inline-code-neutral-background": "#0000200f", "scraps-code-accent": "#7553ff", "scraps-code-button-active": "#0000181a", "scraps-code-button-hover": "#0000200f", "scraps-code-focus": "#7553ff", "scraps-code-focus-mask": "#ffffff", "scraps-code-tooltip-background": "#ffffff", "scraps-code-tooltip-arrow-background": "#ffffff", "scraps-code-tooltip-content": "#302e36", "prism-base": "#302e36", "prism-block-background": "#f8f8f9", "prism-comment": "#6a6772", "prism-function": "#653de9", "prism-highlight-accent": "#00002026", "prism-highlight-background": "#0000200f", "prism-keyword": "#d50000", "prism-operator": "#653de9", "prism-property": "#653de9", "prism-punctuation": "#302e36", "prism-selector": "#008900", "prism-variable": "#302e36" }, "dark": { "scraps-theme-border-primary": "#141119", "scraps-inline-code-content": "#ea95b9", "scraps-inline-code-background": "#f800782e", "scraps-inline-code-neutral-content": "#e7e5ea", "scraps-inline-code-neutral-background": "#c0a8f81a", "scraps-code-accent": "#7553ff", "scraps-code-button-active": "#d0b8f821", "scraps-code-button-hover": "#c0a8f81a", "scraps-code-focus": "#7553ff", "scraps-code-focus-mask": "#2e2936", "scraps-code-tooltip-background": "#393442", "scraps-code-tooltip-arrow-background": "#2e2936", "scraps-code-tooltip-content": "#e7e5ea", "prism-base": "#e7e5ea", "prism-block-background": "#24202b", "prism-comment": "#b5b0bd", "prism-function": "#aba8f8", "prism-highlight-accent": "#c0b0f02e", "prism-highlight-background": "#c0a8f81a", "prism-keyword": "#f6938c", "prism-operator": "#aba8f8", "prism-property": "#aba8f8", "prism-punctuation": "#e7e5ea", "prism-selector": "#5ece73", "prism-variable": "#e7e5ea" } }, "files": [ { "path": "THIRD_PARTY_NOTICES.md", "type": "registry:file", "target": "src/components/ui/SENTRY_SOURCE_NOTICE.md" }, { "path": "src/components/ui/roboto-mono.css", "type": "registry:file", "target": "src/components/ui/roboto-mono.css" }, { "path": "src/components/ui/code-block.tsx", "type": "registry:ui" }, { "path": "src/components/ui/code-messages.tsx", "type": "registry:ui" }, { "path": "src/components/ui/code.tsx", "type": "registry:ui" }, { "path": "src/components/ui/prism-language-loaders.ts", "type": "registry:ui" }, { "path": "src/components/ui/prism-language-reloaders.d.ts", "type": "registry:file", "target": "src/components/ui/prism-language-reloaders.d.ts" }, { "path": "src/components/ui/prism-language-reloaders.js", "type": "registry:file", "target": "src/components/ui/prism-language-reloaders.js" }, { "path": "src/components/ui/prism-plugin.d.ts", "type": "registry:ui" }, { "path": "src/components/ui/prism.ts", "type": "registry:ui" } ] }, { "name": "text", "type": "registry:ui", "title": "Text", "description": "Regular Scraps Text, Heading, and Prose primitives.", "dependencies": ["@fontsource-variable/roboto-mono@5.2.9", "@fontsource/rubik@5.2.8"], "registryDependencies": [], "cssVars": { "light": { "scraps-content-primary": "#302e36", "scraps-content-secondary": "#6a6772", "scraps-content-accent": "#653de9", "scraps-content-promotion": "#c8007e", "scraps-content-danger": "#d50000", "scraps-content-warning": "#a45200", "scraps-content-success": "#008900", "scraps-inline-code-content": "#c8007e", "scraps-inline-code-background": "#f000901a", "scraps-hotkey-background-primary": "#ffffff", "scraps-hotkey-background-secondary": "#f8f8f9", "scraps-hotkey-border-primary": "#dad9de", "scraps-hotkey-content-primary": "#302e36", "scraps-hotkey-content-secondary": "#6a6772" }, "dark": { "scraps-content-primary": "#e7e5ea", "scraps-content-secondary": "#b5b0bd", "scraps-content-accent": "#aba8f8", "scraps-content-promotion": "#ea95b9", "scraps-content-danger": "#f6938c", "scraps-content-warning": "#ffce00", "scraps-content-success": "#5ece73", "scraps-inline-code-content": "#ea95b9", "scraps-inline-code-background": "#f800782e", "scraps-hotkey-background-primary": "#2e2936", "scraps-hotkey-background-secondary": "#24202b", "scraps-hotkey-border-primary": "#141119", "scraps-hotkey-content-primary": "#e7e5ea", "scraps-hotkey-content-secondary": "#b5b0bd" } }, "files": [ { "path": "src/components/ui/roboto-mono.css", "type": "registry:file", "target": "src/components/ui/roboto-mono.css" }, { "path": "src/components/ui/rubik.css", "type": "registry:file", "target": "src/components/ui/rubik.css" }, { "path": "src/components/ui/container-query-context.ts", "type": "registry:ui" }, { "path": "src/components/ui/layout-style-engine.ts", "type": "registry:ui" }, { "path": "src/components/ui/text-tailwind.ts", "type": "registry:ui" }, { "path": "src/components/ui/text.tsx", "type": "registry:ui" }, { "path": "src/components/ui/heading.tsx", "type": "registry:ui" }, { "path": "src/components/ui/prose.tsx", "type": "registry:ui" }, { "path": "src/components/ui/text-index.ts", "type": "registry:ui" } ] }, { "name": "disclosure", "type": "registry:ui", "title": "Disclosure", "description": "Regular Scraps Disclosure with controlled state, compound slots, and outline content.", "dependencies": [ "@react-aria/disclosure@3.2.1", "@react-aria/interactions@3.28.1", "@react-stately/disclosure@3.1.1" ], "registryDependencies": [ "https://scrapscn.sentry.dev/r/button.json", "https://scrapscn.sentry.dev/r/layout.json", "https://scrapscn.sentry.dev/r/text.json" ], "files": [ { "path": "src/components/ui/disclosure.tsx", "type": "registry:ui" } ] } ] }