{
	"$schema": "https://ui.shadcn.com/schema/registry.json",
	"name": "rapidui",
	"homepage": "https://rdf.dev.360online.com",
	"items": [
		{
			"$schema": "https://ui.shadcn.com/schema/registry-item.json",
			"name": "rapid-theme",
			"type": "registry:style",
			"title": "Rapid theme",
			"description": "Rapid theme: shadcn tokens with the Rapid (blue) colours, light and dark.",
			"dependencies": ["cn@^0.4.0", "@base-ui/react@^1.8.0", "class-variance-authority@^0.7.1", "lucide-react@^1.48.0"],
			"registryDependencies": ["https://rdf.dev.360online.com/r/utils.json"],
			"extends": "none",
			"author": "rapidUI",
			"cssVars": {
				"light": {
					"background": "#ffffff",
					"foreground": "#393a3b",
					"card": "#ffffff",
					"card-foreground": "#393a3b",
					"popover": "#ffffff",
					"popover-foreground": "#393a3b",
					"primary": "#1861f2",
					"primary-foreground": "#ffffff",
					"secondary": "#e8effe",
					"secondary-foreground": "#1861f2",
					"muted": "#edeeee",
					"muted-foreground": "#686973",
					"accent": "#e8effe",
					"accent-foreground": "#1861f2",
					"destructive": "#eb0c00",
					"border": "#d6d7d7",
					"input": "#86888b",
					"ring": "#1657da",
					"chart-1": "#d2691e",
					"chart-2": "#4b6f9c",
					"chart-3": "#3b4c7a",
					"chart-4": "#d4a017",
					"chart-5": "#c99a0f",
					"radius": "0.625rem",
					"sidebar": "#ffffff",
					"sidebar-foreground": "#393a3b",
					"sidebar-primary": "#1861f2",
					"sidebar-primary-foreground": "#ffffff",
					"sidebar-accent": "#e8effe",
					"sidebar-accent-foreground": "#1861f2",
					"sidebar-border": "#d6d7d7",
					"sidebar-ring": "#1657da",
					"success": "#207e38",
					"success-foreground": "#ffffff",
					"warning": "#895916",
					"warning-foreground": "#ffffff",
					"info-subtle": "#e8effe",
					"info-subtle-foreground": "#1045a8",
					"info-border": "#abc6fb",
					"success-subtle": "#ebf9ee",
					"success-subtle-foreground": "#207e38",
					"success-border": "#c0eecc",
					"warning-subtle": "#fff4e6",
					"warning-subtle-foreground": "#895916",
					"warning-border": "#ffdeb0",
					"destructive-subtle": "#ffebea",
					"destructive-subtle-foreground": "#db0b00",
					"destructive-border": "#ffb1ad"
				},
				"dark": {
					"background": "#282c2f",
					"foreground": "#d6d7d7",
					"card": "#282c2f",
					"card-foreground": "#d6d7d7",
					"popover": "#282c2f",
					"popover-foreground": "#d6d7d7",
					"primary": "#85aeff",
					"primary-foreground": "#000000",
					"secondary": "#363f4e",
					"secondary-foreground": "#85aeff",
					"muted": "#393a3b",
					"muted-foreground": "#babbbd",
					"accent": "#363f4e",
					"accent-foreground": "#85aeff",
					"destructive": "#eb0c00",
					"border": "#393a3b",
					"input": "#86888b",
					"ring": "#85aeff",
					"chart-1": "oklch(0.488 0.243 264.376)",
					"chart-2": "oklch(0.696 0.17 162.48)",
					"chart-3": "oklch(0.769 0.188 70.08)",
					"chart-4": "oklch(0.627 0.265 303.9)",
					"chart-5": "oklch(0.645 0.246 16.439)",
					"sidebar": "#282c2f",
					"sidebar-foreground": "#d6d7d7",
					"sidebar-primary": "#85aeff",
					"sidebar-primary-foreground": "#000000",
					"sidebar-accent": "#363f4e",
					"sidebar-accent-foreground": "#85aeff",
					"sidebar-border": "#393a3b",
					"sidebar-ring": "#85aeff",
					"success": "#8fdca4",
					"success-foreground": "#0b1f12",
					"warning": "#f5c97a",
					"warning-foreground": "#241703",
					"info-subtle": "#363f4e",
					"info-subtle-foreground": "#ccddff",
					"info-border": "#576d97",
					"success-subtle": "#1f3325",
					"success-subtle-foreground": "#8fdca4",
					"success-border": "#3f6b4d",
					"warning-subtle": "#3d3320",
					"warning-subtle-foreground": "#f5c97a",
					"warning-border": "#7a6132",
					"destructive-subtle": "#3a1f1d",
					"destructive-subtle-foreground": "#ff9b95",
					"destructive-border": "#6b2f2b"
				},
				"theme": {
					"color-success": "var(--success)",
					"color-success-foreground": "var(--success-foreground)",
					"color-warning": "var(--warning)",
					"color-warning-foreground": "var(--warning-foreground)",
					"color-info-subtle": "var(--info-subtle)",
					"color-info-subtle-foreground": "var(--info-subtle-foreground)",
					"color-info-border": "var(--info-border)",
					"color-success-subtle": "var(--success-subtle)",
					"color-success-subtle-foreground": "var(--success-subtle-foreground)",
					"color-success-border": "var(--success-border)",
					"color-warning-subtle": "var(--warning-subtle)",
					"color-warning-subtle-foreground": "var(--warning-subtle-foreground)",
					"color-warning-border": "var(--warning-border)",
					"color-destructive-subtle": "var(--destructive-subtle)",
					"color-destructive-subtle-foreground": "var(--destructive-subtle-foreground)",
					"color-destructive-border": "var(--destructive-border)"
				}
			},
			"css": {
				"@import \"tw-animate-css\"": {},
				"@import \"shadcn/tailwind.css\"": {},
				"@layer base": {
					"*": {
						"@apply border-border outline-ring/50": {}
					},
					"body": {
						"@apply bg-background text-foreground": {}
					},
					"html": {
						"@apply font-sans": {}
					}
				}
			},
			"devDependencies": ["tw-animate-css@^1.4.0", "shadcn@^4.21.0"]
		},
		{
			"$schema": "https://ui.shadcn.com/schema/registry-item.json",
			"name": "neutral-theme",
			"type": "registry:style",
			"title": "Neutral theme",
			"description": "Neutral theme: shadcn tokens with a black-and-grey palette, light and dark.",
			"dependencies": ["cn@^0.4.0", "@base-ui/react@^1.8.0", "class-variance-authority@^0.7.1", "lucide-react@^1.48.0"],
			"registryDependencies": ["https://rdf.dev.360online.com/r/utils.json"],
			"extends": "none",
			"author": "rapidUI",
			"cssVars": {
				"light": {
					"background": "#ffffff",
					"foreground": "#09090b",
					"card": "#ffffff",
					"card-foreground": "#09090b",
					"popover": "#ffffff",
					"popover-foreground": "#09090b",
					"primary": "#18181b",
					"primary-foreground": "#fafafa",
					"secondary": "#f4f4f5",
					"secondary-foreground": "#18181b",
					"muted": "#f4f4f5",
					"muted-foreground": "#6b6b73",
					"accent": "#f4f4f5",
					"accent-foreground": "#18181b",
					"destructive": "#c81e1e",
					"border": "#e4e4e7",
					"input": "#868690",
					"ring": "#18181b",
					"chart-1": "oklch(0.87 0 0)",
					"chart-2": "oklch(0.556 0 0)",
					"chart-3": "oklch(0.439 0 0)",
					"chart-4": "oklch(0.371 0 0)",
					"chart-5": "oklch(0.269 0 0)",
					"radius": "0.625rem",
					"sidebar": "#ffffff",
					"sidebar-foreground": "#09090b",
					"sidebar-primary": "#18181b",
					"sidebar-primary-foreground": "#fafafa",
					"sidebar-accent": "#f4f4f5",
					"sidebar-accent-foreground": "#18181b",
					"sidebar-border": "#e4e4e7",
					"sidebar-ring": "#18181b",
					"success": "#166534",
					"success-foreground": "#fafafa",
					"warning": "#92400e",
					"warning-foreground": "#fafafa",
					"info-subtle": "#eff6ff",
					"info-subtle-foreground": "#1d4ed8",
					"info-border": "#bfdbfe",
					"success-subtle": "#dcfce7",
					"success-subtle-foreground": "#166534",
					"success-border": "#22c55e",
					"warning-subtle": "#fef3c7",
					"warning-subtle-foreground": "#92400e",
					"warning-border": "#f59e0b",
					"destructive-subtle": "#fee2e2",
					"destructive-subtle-foreground": "#b91c1c",
					"destructive-border": "#ef4444"
				},
				"dark": {
					"background": "#09090b",
					"foreground": "#fafafa",
					"card": "#09090b",
					"card-foreground": "#fafafa",
					"popover": "#09090b",
					"popover-foreground": "#fafafa",
					"primary": "#fafafa",
					"primary-foreground": "#18181b",
					"secondary": "#27272a",
					"secondary-foreground": "#fafafa",
					"muted": "#27272a",
					"muted-foreground": "#a1a1aa",
					"accent": "#27272a",
					"accent-foreground": "#fafafa",
					"destructive": "#7f1d1d",
					"border": "#27272a",
					"input": "#27272a",
					"ring": "#d4d4d8",
					"chart-1": "oklch(0.87 0 0)",
					"chart-2": "oklch(0.556 0 0)",
					"chart-3": "oklch(0.439 0 0)",
					"chart-4": "oklch(0.371 0 0)",
					"chart-5": "oklch(0.269 0 0)",
					"sidebar": "#09090b",
					"sidebar-foreground": "#fafafa",
					"sidebar-primary": "#fafafa",
					"sidebar-primary-foreground": "#18181b",
					"sidebar-accent": "#27272a",
					"sidebar-accent-foreground": "#fafafa",
					"sidebar-border": "#27272a",
					"sidebar-ring": "#d4d4d8",
					"success": "#86efac",
					"success-foreground": "#052e16",
					"warning": "#fcd34d",
					"warning-foreground": "#422006",
					"info-subtle": "#172554",
					"info-subtle-foreground": "#93c5fd",
					"info-border": "#1e3a8a",
					"success-subtle": "#064e3b",
					"success-subtle-foreground": "#86efac",
					"success-border": "#22c55e",
					"warning-subtle": "#78350f",
					"warning-subtle-foreground": "#fcd34d",
					"warning-border": "#f59e0b",
					"destructive-subtle": "#450a0a",
					"destructive-subtle-foreground": "#fca5a5",
					"destructive-border": "#ef4444"
				},
				"theme": {
					"color-success": "var(--success)",
					"color-success-foreground": "var(--success-foreground)",
					"color-warning": "var(--warning)",
					"color-warning-foreground": "var(--warning-foreground)",
					"color-info-subtle": "var(--info-subtle)",
					"color-info-subtle-foreground": "var(--info-subtle-foreground)",
					"color-info-border": "var(--info-border)",
					"color-success-subtle": "var(--success-subtle)",
					"color-success-subtle-foreground": "var(--success-subtle-foreground)",
					"color-success-border": "var(--success-border)",
					"color-warning-subtle": "var(--warning-subtle)",
					"color-warning-subtle-foreground": "var(--warning-subtle-foreground)",
					"color-warning-border": "var(--warning-border)",
					"color-destructive-subtle": "var(--destructive-subtle)",
					"color-destructive-subtle-foreground": "var(--destructive-subtle-foreground)",
					"color-destructive-border": "var(--destructive-border)"
				}
			},
			"css": {
				"@import \"tw-animate-css\"": {},
				"@import \"shadcn/tailwind.css\"": {},
				"@layer base": {
					"*": {
						"@apply border-border outline-ring/50": {}
					},
					"body": {
						"@apply bg-background text-foreground": {}
					},
					"html": {
						"@apply font-sans": {}
					}
				}
			},
			"devDependencies": ["tw-animate-css@^1.4.0", "shadcn@^4.21.0"]
		},
		{
			"$schema": "https://ui.shadcn.com/schema/registry-item.json",
			"name": "tieto-theme",
			"type": "registry:style",
			"title": "Tieto theme",
			"description": "Tieto theme: shadcn tokens in Tieto's navy, light blue and impact yellow, light and dark.",
			"dependencies": ["cn@^0.4.0", "@base-ui/react@^1.8.0", "class-variance-authority@^0.7.1", "lucide-react@^1.48.0"],
			"registryDependencies": ["https://rdf.dev.360online.com/r/utils.json"],
			"extends": "none",
			"author": "rapidUI",
			"cssVars": {
				"light": {
					"background": "#ffffff",
					"foreground": "#15245e",
					"card": "#ffffff",
					"card-foreground": "#15245e",
					"popover": "#ffffff",
					"popover-foreground": "#15245e",
					"primary": "#15245e",
					"primary-foreground": "#ffffff",
					"secondary": "#c2d3ff",
					"secondary-foreground": "#15245e",
					"muted": "#f3f0ef",
					"muted-foreground": "#57524f",
					"accent": "#eef2ff",
					"accent-foreground": "#131e82",
					"destructive": "#be163c",
					"border": "#e2e0df",
					"input": "#a8a29e",
					"ring": "#4e60e7",
					"chart-1": "#15245e",
					"chart-2": "#4e60e7",
					"chart-3": "#839df9",
					"chart-4": "#f5ff56",
					"chart-5": "#a8a29e",
					"radius": "0.25rem",
					"sidebar": "#15245e",
					"sidebar-foreground": "#ffffff",
					"sidebar-primary": "#f5ff56",
					"sidebar-primary-foreground": "#15245e",
					"sidebar-accent": "#27366e",
					"sidebar-accent-foreground": "#f5ff56",
					"sidebar-border": "#27366e",
					"sidebar-ring": "#839df9",
					"success": "#207e38",
					"success-foreground": "#ffffff",
					"warning": "#895916",
					"warning-foreground": "#ffffff",
					"info-subtle": "#eef2ff",
					"info-subtle-foreground": "#131e82",
					"info-border": "#c2d3ff",
					"success-subtle": "#ebf9ee",
					"success-subtle-foreground": "#207e38",
					"success-border": "#c0eecc",
					"warning-subtle": "#fff4e6",
					"warning-subtle-foreground": "#895916",
					"warning-border": "#ffdeb0",
					"destructive-subtle": "#fbe9ee",
					"destructive-subtle-foreground": "#be163c",
					"destructive-border": "#f0b4c3"
				},
				"dark": {
					"background": "#282c2f",
					"foreground": "#d6d7d7",
					"card": "#282c2f",
					"card-foreground": "#d6d7d7",
					"popover": "#282c2f",
					"popover-foreground": "#d6d7d7",
					"primary": "#839df9",
					"primary-foreground": "#15245e",
					"secondary": "#1b2a5c",
					"secondary-foreground": "#c2d3ff",
					"muted": "#393a3b",
					"muted-foreground": "#babbbd",
					"accent": "#1b2a5c",
					"accent-foreground": "#c2d3ff",
					"destructive": "#eb0c00",
					"border": "#393a3b",
					"input": "#86888b",
					"ring": "#839df9",
					"chart-1": "oklch(0.488 0.243 264.376)",
					"chart-2": "oklch(0.696 0.17 162.48)",
					"chart-3": "oklch(0.769 0.188 70.08)",
					"chart-4": "oklch(0.627 0.265 303.9)",
					"chart-5": "oklch(0.645 0.246 16.439)",
					"sidebar": "#0a1430",
					"sidebar-foreground": "#d6d7d7",
					"sidebar-primary": "#f5ff56",
					"sidebar-primary-foreground": "#15245e",
					"sidebar-accent": "#131e82",
					"sidebar-accent-foreground": "#f5ff56",
					"sidebar-border": "#1b2a5c",
					"sidebar-ring": "#839df9",
					"success": "#8fdca4",
					"success-foreground": "#0b1f12",
					"warning": "#f5c97a",
					"warning-foreground": "#241703",
					"info-subtle": "#1b2a5c",
					"info-subtle-foreground": "#c2d3ff",
					"info-border": "#4e60e7",
					"success-subtle": "#1f3325",
					"success-subtle-foreground": "#8fdca4",
					"success-border": "#3f6b4d",
					"warning-subtle": "#3d3320",
					"warning-subtle-foreground": "#f5c97a",
					"warning-border": "#7a6132",
					"destructive-subtle": "#3a1f1d",
					"destructive-subtle-foreground": "#ff9b95",
					"destructive-border": "#6b2f2b"
				},
				"theme": {
					"color-success": "var(--success)",
					"color-success-foreground": "var(--success-foreground)",
					"color-warning": "var(--warning)",
					"color-warning-foreground": "var(--warning-foreground)",
					"color-info-subtle": "var(--info-subtle)",
					"color-info-subtle-foreground": "var(--info-subtle-foreground)",
					"color-info-border": "var(--info-border)",
					"color-success-subtle": "var(--success-subtle)",
					"color-success-subtle-foreground": "var(--success-subtle-foreground)",
					"color-success-border": "var(--success-border)",
					"color-warning-subtle": "var(--warning-subtle)",
					"color-warning-subtle-foreground": "var(--warning-subtle-foreground)",
					"color-warning-border": "var(--warning-border)",
					"color-destructive-subtle": "var(--destructive-subtle)",
					"color-destructive-subtle-foreground": "var(--destructive-subtle-foreground)",
					"color-destructive-border": "var(--destructive-border)"
				}
			},
			"css": {
				"@import \"tw-animate-css\"": {},
				"@import \"shadcn/tailwind.css\"": {},
				"@layer base": {
					"*": {
						"@apply border-border outline-ring/50": {}
					},
					"body": {
						"@apply bg-background text-foreground": {}
					},
					"html": {
						"@apply font-sans": {}
					}
				}
			},
			"devDependencies": ["tw-animate-css@^1.4.0", "shadcn@^4.21.0"]
		},
		{
			"name": "utils",
			"type": "registry:lib",
			"title": "Utils",
			"description": "The `cn()` class-name helper (shadcn's `cn` package) used by every component.",
			"dependencies": ["cn@^0.4.0"],
			"files": [
				{
					"path": "lib/utils.ts",
					"type": "registry:lib"
				}
			]
		},
		{
			"$schema": "https://ui.shadcn.com/schema/registry-item.json",
			"name": "accordion",
			"type": "registry:ui",
			"title": "Accordion",
			"description": "Vertically stacked, collapsible sections built on Base UI Accordion.",
			"dependencies": ["@base-ui/react@^1.8.0", "lucide-react@^1.48.0"],
			"files": [
				{
					"path": "registry/rapid/ui/accordion/accordion.tsx",
					"type": "registry:ui",
					"target": "components/ui/accordion.tsx"
				}
			]
		},
		{
			"$schema": "https://ui.shadcn.com/schema/registry-item.json",
			"name": "alert",
			"type": "registry:ui",
			"title": "Alert",
			"description": "Inline callout for status messages, with default and destructive variants and an optional action.",
			"dependencies": ["class-variance-authority@^0.7.1"],
			"files": [
				{
					"path": "registry/rapid/ui/alert/alert.tsx",
					"type": "registry:ui",
					"target": "components/ui/alert.tsx"
				}
			]
		},
		{
			"$schema": "https://ui.shadcn.com/schema/registry-item.json",
			"name": "alert-dialog",
			"type": "registry:ui",
			"title": "Alert Dialog",
			"description": "Modal confirmation dialog that interrupts the user and expects a response.",
			"dependencies": ["@base-ui/react@^1.8.0"],
			"registryDependencies": ["https://rdf.dev.360online.com/r/button.json"],
			"files": [
				{
					"path": "registry/rapid/ui/alert-dialog/alert-dialog.tsx",
					"type": "registry:ui",
					"target": "components/ui/alert-dialog.tsx"
				}
			]
		},
		{
			"$schema": "https://ui.shadcn.com/schema/registry-item.json",
			"name": "avatar",
			"type": "registry:ui",
			"title": "Avatar",
			"description": "User image with a text fallback, built on Base UI Avatar.",
			"dependencies": ["@base-ui/react@^1.8.0"],
			"files": [
				{
					"path": "registry/rapid/ui/avatar/avatar.tsx",
					"type": "registry:ui",
					"target": "components/ui/avatar.tsx"
				}
			]
		},
		{
			"$schema": "https://ui.shadcn.com/schema/registry-item.json",
			"name": "badge",
			"type": "registry:ui",
			"title": "Badge",
			"description": "Small status or count label with semantic color variants.",
			"dependencies": ["@base-ui/react@^1.8.0", "class-variance-authority@^0.7.1"],
			"files": [
				{
					"path": "registry/rapid/ui/badge/badge.tsx",
					"type": "registry:ui",
					"target": "components/ui/badge.tsx"
				}
			]
		},
		{
			"$schema": "https://ui.shadcn.com/schema/registry-item.json",
			"name": "breadcrumb",
			"type": "registry:ui",
			"title": "Breadcrumb",
			"description": "Hierarchical page trail with separators and an overflow ellipsis.",
			"dependencies": ["@base-ui/react@^1.8.0", "lucide-react@^1.48.0"],
			"files": [
				{
					"path": "registry/rapid/ui/breadcrumb/breadcrumb.tsx",
					"type": "registry:ui",
					"target": "components/ui/breadcrumb.tsx"
				}
			]
		},
		{
			"$schema": "https://ui.shadcn.com/schema/registry-item.json",
			"name": "button",
			"type": "registry:ui",
			"title": "Button",
			"description": "Button with default, outline, secondary, ghost, destructive and link variants, sm, default and lg sizes plus icon sizes; renders as a link or another element with `render`.",
			"dependencies": ["@base-ui/react@^1.8.0", "class-variance-authority@^0.7.1"],
			"files": [
				{
					"path": "registry/rapid/ui/button/button.tsx",
					"type": "registry:ui",
					"target": "components/ui/button.tsx"
				}
			]
		},
		{
			"$schema": "https://ui.shadcn.com/schema/registry-item.json",
			"name": "card",
			"type": "registry:ui",
			"title": "Card",
			"description": "Surface container with header, title, description, content and footer slots.",
			"files": [
				{
					"path": "registry/rapid/ui/card/card.tsx",
					"type": "registry:ui",
					"target": "components/ui/card.tsx"
				}
			]
		},
		{
			"$schema": "https://ui.shadcn.com/schema/registry-item.json",
			"name": "chart",
			"type": "registry:ui",
			"title": "Chart",
			"description": "Recharts wrapper with theme-aware colors, tooltips and legends.",
			"dependencies": ["recharts@3.8.0"],
			"files": [
				{
					"path": "registry/rapid/ui/chart/chart.tsx",
					"type": "registry:ui",
					"target": "components/ui/chart.tsx"
				}
			]
		},
		{
			"$schema": "https://ui.shadcn.com/schema/registry-item.json",
			"name": "checkbox",
			"type": "registry:ui",
			"title": "Checkbox",
			"description": "Accessible checkbox with checked, unchecked and indeterminate states.",
			"dependencies": ["@base-ui/react@^1.8.0", "lucide-react@^1.48.0"],
			"files": [
				{
					"path": "registry/rapid/ui/checkbox/checkbox.tsx",
					"type": "registry:ui",
					"target": "components/ui/checkbox.tsx"
				}
			]
		},
		{
			"$schema": "https://ui.shadcn.com/schema/registry-item.json",
			"name": "collapsible",
			"type": "registry:ui",
			"title": "Collapsible",
			"description": "Show and hide a single region of content, built on Base UI Collapsible.",
			"dependencies": ["@base-ui/react@^1.8.0"],
			"files": [
				{
					"path": "registry/rapid/ui/collapsible/collapsible.tsx",
					"type": "registry:ui",
					"target": "components/ui/collapsible.tsx"
				}
			]
		},
		{
			"$schema": "https://ui.shadcn.com/schema/registry-item.json",
			"name": "color-picker",
			"type": "registry:ui",
			"title": "Color Picker",
			"description": "Color picker with a saturation/hue area and hex input in a popover.",
			"dependencies": ["react-colorful@^5.6.1"],
			"registryDependencies": [
				"https://rdf.dev.360online.com/r/input.json",
				"https://rdf.dev.360online.com/r/popover.json"
			],
			"files": [
				{
					"path": "registry/rapid/ui/color-picker/color-picker.tsx",
					"type": "registry:ui",
					"target": "components/ui/color-picker.tsx"
				}
			]
		},
		{
			"$schema": "https://ui.shadcn.com/schema/registry-item.json",
			"name": "command",
			"type": "registry:ui",
			"title": "Command",
			"description": "Command menu / searchable list built on cmdk, usable inline or in a dialog.",
			"dependencies": ["cmdk@^1.1.1", "lucide-react@^1.48.0"],
			"registryDependencies": [
				"https://rdf.dev.360online.com/r/dialog.json",
				"https://rdf.dev.360online.com/r/input-group.json"
			],
			"files": [
				{
					"path": "registry/rapid/ui/command/command.tsx",
					"type": "registry:ui",
					"target": "components/ui/command.tsx"
				}
			]
		},
		{
			"$schema": "https://ui.shadcn.com/schema/registry-item.json",
			"name": "context-menu",
			"type": "registry:ui",
			"title": "Context Menu",
			"description": "Right-click menu with items, checkboxes, radio items and submenus.",
			"dependencies": ["@base-ui/react@^1.8.0", "lucide-react@^1.48.0"],
			"files": [
				{
					"path": "registry/rapid/ui/context-menu/context-menu.tsx",
					"type": "registry:ui",
					"target": "components/ui/context-menu.tsx"
				}
			]
		},
		{
			"$schema": "https://ui.shadcn.com/schema/registry-item.json",
			"name": "dialog",
			"type": "registry:ui",
			"title": "Dialog",
			"description": "Modal window with header, footer, title and description, built on Base UI Dialog.",
			"dependencies": ["@base-ui/react@^1.8.0", "lucide-react@^1.48.0"],
			"registryDependencies": ["https://rdf.dev.360online.com/r/button.json"],
			"files": [
				{
					"path": "registry/rapid/ui/dialog/dialog.tsx",
					"type": "registry:ui",
					"target": "components/ui/dialog.tsx"
				}
			]
		},
		{
			"$schema": "https://ui.shadcn.com/schema/registry-item.json",
			"name": "dropdown-menu",
			"type": "registry:ui",
			"title": "Dropdown Menu",
			"description": "Menu triggered by a button, with items, groups, checkboxes, radio items and submenus.",
			"dependencies": ["@base-ui/react@^1.8.0", "lucide-react@^1.48.0"],
			"files": [
				{
					"path": "registry/rapid/ui/dropdown-menu/dropdown-menu.tsx",
					"type": "registry:ui",
					"target": "components/ui/dropdown-menu.tsx"
				}
			]
		},
		{
			"$schema": "https://ui.shadcn.com/schema/registry-item.json",
			"name": "form",
			"type": "registry:ui",
			"title": "Form",
			"description": "react-hook-form bindings (`Form`, `FormField`, `FormItem`, `FormMessage`) with accessible labels and errors.",
			"dependencies": ["@base-ui/react@^1.8.0", "react-hook-form@^7.62.0"],
			"registryDependencies": ["https://rdf.dev.360online.com/r/label.json"],
			"files": [
				{
					"path": "registry/rapid/ui/form/form.tsx",
					"type": "registry:ui",
					"target": "components/ui/form.tsx"
				}
			]
		},
		{
			"$schema": "https://ui.shadcn.com/schema/registry-item.json",
			"name": "input",
			"type": "registry:ui",
			"title": "Input",
			"description": "Text input with consistent sizing, focus and invalid states.",
			"dependencies": ["@base-ui/react@^1.8.0"],
			"files": [
				{
					"path": "registry/rapid/ui/input/input.tsx",
					"type": "registry:ui",
					"target": "components/ui/input.tsx"
				}
			]
		},
		{
			"$schema": "https://ui.shadcn.com/schema/registry-item.json",
			"name": "input-otp",
			"type": "registry:ui",
			"title": "Input OTP",
			"description": "One-time-password input with individual slots, built on input-otp.",
			"dependencies": ["input-otp@^1.5.0", "lucide-react@^1.48.0"],
			"files": [
				{
					"path": "registry/rapid/ui/input-otp/input-otp.tsx",
					"type": "registry:ui",
					"target": "components/ui/input-otp.tsx"
				}
			]
		},
		{
			"$schema": "https://ui.shadcn.com/schema/registry-item.json",
			"name": "label",
			"type": "registry:ui",
			"title": "Label",
			"description": "Accessible form label built on Base UI Label.",
			"files": [
				{
					"path": "registry/rapid/ui/label/label.tsx",
					"type": "registry:ui",
					"target": "components/ui/label.tsx"
				}
			]
		},
		{
			"$schema": "https://ui.shadcn.com/schema/registry-item.json",
			"name": "pagination",
			"type": "registry:ui",
			"title": "Pagination",
			"description": "Page navigation with previous/next, page links and ellipsis.",
			"dependencies": ["lucide-react@^1.48.0"],
			"registryDependencies": ["https://rdf.dev.360online.com/r/button.json"],
			"files": [
				{
					"path": "registry/rapid/ui/pagination/pagination.tsx",
					"type": "registry:ui",
					"target": "components/ui/pagination.tsx"
				}
			]
		},
		{
			"$schema": "https://ui.shadcn.com/schema/registry-item.json",
			"name": "popover",
			"type": "registry:ui",
			"title": "Popover",
			"description": "Floating panel anchored to a trigger, built on Base UI Popover.",
			"dependencies": ["@base-ui/react@^1.8.0"],
			"files": [
				{
					"path": "registry/rapid/ui/popover/popover.tsx",
					"type": "registry:ui",
					"target": "components/ui/popover.tsx"
				}
			]
		},
		{
			"$schema": "https://ui.shadcn.com/schema/registry-item.json",
			"name": "progress",
			"type": "registry:ui",
			"title": "Progress",
			"description": "Horizontal progress bar built on Base UI Progress.",
			"dependencies": ["@base-ui/react@^1.8.0"],
			"files": [
				{
					"path": "registry/rapid/ui/progress/progress.tsx",
					"type": "registry:ui",
					"target": "components/ui/progress.tsx"
				}
			]
		},
		{
			"$schema": "https://ui.shadcn.com/schema/registry-item.json",
			"name": "radio-group",
			"type": "registry:ui",
			"title": "Radio Group",
			"description": "Set of mutually exclusive options built on Base UI Radio Group.",
			"dependencies": ["@base-ui/react@^1.8.0"],
			"files": [
				{
					"path": "registry/rapid/ui/radio-group/radio-group.tsx",
					"type": "registry:ui",
					"target": "components/ui/radio-group.tsx"
				}
			]
		},
		{
			"$schema": "https://ui.shadcn.com/schema/registry-item.json",
			"name": "resizable",
			"type": "registry:ui",
			"title": "Resizable",
			"description": "Resizable panel groups with drag handles, built on react-resizable-panels.",
			"dependencies": ["react-resizable-panels@^4.14.1"],
			"files": [
				{
					"path": "registry/rapid/ui/resizable/resizable.tsx",
					"type": "registry:ui",
					"target": "components/ui/resizable.tsx"
				}
			]
		},
		{
			"$schema": "https://ui.shadcn.com/schema/registry-item.json",
			"name": "scroll-area",
			"type": "registry:ui",
			"title": "Scroll Area",
			"description": "Custom-styled scroll container built on Base UI Scroll Area.",
			"dependencies": ["@base-ui/react@^1.8.0"],
			"files": [
				{
					"path": "registry/rapid/ui/scroll-area/scroll-area.tsx",
					"type": "registry:ui",
					"target": "components/ui/scroll-area.tsx"
				}
			]
		},
		{
			"$schema": "https://ui.shadcn.com/schema/registry-item.json",
			"name": "select",
			"type": "registry:ui",
			"title": "Select",
			"description": "Native-feeling select menu built on Base UI Select.",
			"dependencies": ["@base-ui/react@^1.8.0", "lucide-react@^1.48.0"],
			"files": [
				{
					"path": "registry/rapid/ui/select/select.tsx",
					"type": "registry:ui",
					"target": "components/ui/select.tsx"
				}
			]
		},
		{
			"$schema": "https://ui.shadcn.com/schema/registry-item.json",
			"name": "separator",
			"type": "registry:ui",
			"title": "Separator",
			"description": "Horizontal or vertical divider line.",
			"dependencies": ["@base-ui/react@^1.8.0"],
			"files": [
				{
					"path": "registry/rapid/ui/separator/separator.tsx",
					"type": "registry:ui",
					"target": "components/ui/separator.tsx"
				}
			]
		},
		{
			"$schema": "https://ui.shadcn.com/schema/registry-item.json",
			"name": "sheet",
			"type": "registry:ui",
			"title": "Sheet",
			"description": "Panel that slides in from a screen edge, built on Base UI Dialog.",
			"dependencies": ["@base-ui/react@^1.8.0", "class-variance-authority@^0.7.1", "lucide-react@^1.48.0"],
			"registryDependencies": ["https://rdf.dev.360online.com/r/button.json"],
			"files": [
				{
					"path": "registry/rapid/ui/sheet/sheet.tsx",
					"type": "registry:ui",
					"target": "components/ui/sheet.tsx"
				}
			]
		},
		{
			"$schema": "https://ui.shadcn.com/schema/registry-item.json",
			"name": "sidebar",
			"type": "registry:ui",
			"title": "Sidebar",
			"description": "Composable, collapsible application sidebar with mobile sheet support.",
			"dependencies": ["@base-ui/react@^1.8.0", "class-variance-authority@^0.7.1", "lucide-react@^1.48.0"],
			"registryDependencies": [
				"https://rdf.dev.360online.com/r/button.json",
				"https://rdf.dev.360online.com/r/input.json",
				"https://rdf.dev.360online.com/r/separator.json",
				"https://rdf.dev.360online.com/r/sheet.json",
				"https://rdf.dev.360online.com/r/skeleton.json",
				"https://rdf.dev.360online.com/r/tooltip.json"
			],
			"files": [
				{
					"path": "registry/rapid/ui/sidebar/sidebar.tsx",
					"type": "registry:ui",
					"target": "components/ui/sidebar.tsx"
				},
				{
					"path": "hooks/use-mobile.ts",
					"type": "registry:hook",
					"target": "hooks/use-mobile.ts"
				}
			]
		},
		{
			"$schema": "https://ui.shadcn.com/schema/registry-item.json",
			"name": "skeleton",
			"type": "registry:ui",
			"title": "Skeleton",
			"description": "Animated placeholder shown while content loads.",
			"files": [
				{
					"path": "registry/rapid/ui/skeleton/skeleton.tsx",
					"type": "registry:ui",
					"target": "components/ui/skeleton.tsx"
				}
			]
		},
		{
			"$schema": "https://ui.shadcn.com/schema/registry-item.json",
			"name": "slider",
			"type": "registry:ui",
			"title": "Slider",
			"description": "Range slider with one or more thumbs, built on Base UI Slider.",
			"dependencies": ["@base-ui/react@^1.8.0"],
			"files": [
				{
					"path": "registry/rapid/ui/slider/slider.tsx",
					"type": "registry:ui",
					"target": "components/ui/slider.tsx"
				}
			]
		},
		{
			"$schema": "https://ui.shadcn.com/schema/registry-item.json",
			"name": "sub-tabs",
			"type": "registry:ui",
			"title": "Sub Tabs",
			"description": "Secondary, lower-emphasis tabs for nested navigation.",
			"dependencies": ["@base-ui/react@^1.8.0"],
			"files": [
				{
					"path": "registry/rapid/ui/sub-tabs/sub-tabs.tsx",
					"type": "registry:ui",
					"target": "components/ui/sub-tabs.tsx"
				}
			]
		},
		{
			"$schema": "https://ui.shadcn.com/schema/registry-item.json",
			"name": "switch",
			"type": "registry:ui",
			"title": "Switch",
			"description": "On/off toggle switch built on Base UI Switch.",
			"dependencies": ["@base-ui/react@^1.8.0"],
			"files": [
				{
					"path": "registry/rapid/ui/switch/switch.tsx",
					"type": "registry:ui",
					"target": "components/ui/switch.tsx"
				}
			]
		},
		{
			"$schema": "https://ui.shadcn.com/schema/registry-item.json",
			"name": "table",
			"type": "registry:ui",
			"title": "Table",
			"description": "Semantic, styled HTML table primitives.",
			"files": [
				{
					"path": "registry/rapid/ui/table/table.tsx",
					"type": "registry:ui",
					"target": "components/ui/table.tsx"
				}
			]
		},
		{
			"$schema": "https://ui.shadcn.com/schema/registry-item.json",
			"name": "tabs",
			"type": "registry:ui",
			"title": "Tabs",
			"description": "Tabbed views built on Base UI Tabs.",
			"dependencies": ["@base-ui/react@^1.8.0"],
			"files": [
				{
					"path": "registry/rapid/ui/tabs/tabs.tsx",
					"type": "registry:ui",
					"target": "components/ui/tabs.tsx"
				}
			]
		},
		{
			"$schema": "https://ui.shadcn.com/schema/registry-item.json",
			"name": "textarea",
			"type": "registry:ui",
			"title": "Textarea",
			"description": "Multi-line text input.",
			"files": [
				{
					"path": "registry/rapid/ui/textarea/textarea.tsx",
					"type": "registry:ui",
					"target": "components/ui/textarea.tsx"
				}
			]
		},
		{
			"$schema": "https://ui.shadcn.com/schema/registry-item.json",
			"name": "tooltip",
			"type": "registry:ui",
			"title": "Tooltip",
			"description": "Hover/focus hint built on Base UI Tooltip.",
			"dependencies": ["@base-ui/react@^1.8.0"],
			"files": [
				{
					"path": "registry/rapid/ui/tooltip/tooltip.tsx",
					"type": "registry:ui",
					"target": "components/ui/tooltip.tsx"
				}
			]
		},
		{
			"$schema": "https://ui.shadcn.com/schema/registry-item.json",
			"name": "toggle",
			"type": "registry:ui",
			"title": "Toggle",
			"description": "Two-state button built on Base UI Toggle.",
			"dependencies": ["@base-ui/react@^1.8.0", "class-variance-authority@^0.7.1"],
			"files": [
				{
					"path": "registry/rapid/ui/toggle/toggle.tsx",
					"type": "registry:ui",
					"target": "components/ui/toggle.tsx"
				}
			]
		},
		{
			"$schema": "https://ui.shadcn.com/schema/registry-item.json",
			"name": "toggle-group",
			"type": "registry:ui",
			"title": "Toggle Group",
			"description": "Group of toggles with single or multiple selection.",
			"dependencies": ["@base-ui/react@^1.8.0", "class-variance-authority@^0.7.1"],
			"registryDependencies": ["https://rdf.dev.360online.com/r/toggle.json"],
			"files": [
				{
					"path": "registry/rapid/ui/toggle-group/toggle-group.tsx",
					"type": "registry:ui",
					"target": "components/ui/toggle-group.tsx"
				}
			]
		},
		{
			"$schema": "https://ui.shadcn.com/schema/registry-item.json",
			"name": "datetime-picker",
			"type": "registry:ui",
			"title": "Date Time Picker",
			"description": "Combined date and time picker in a popover.",
			"dependencies": ["date-fns@^4.4.0", "lucide-react@^1.48.0", "react-day-picker@^10.0.1"],
			"registryDependencies": [
				"https://rdf.dev.360online.com/r/button.json",
				"https://rdf.dev.360online.com/r/calendar.json",
				"https://rdf.dev.360online.com/r/popover.json",
				"https://rdf.dev.360online.com/r/scroll-area.json"
			],
			"files": [
				{
					"path": "registry/rapid/ui/datetime-picker/datetime-picker.tsx",
					"type": "registry:ui",
					"target": "components/ui/datetime-picker.tsx"
				}
			]
		},
		{
			"$schema": "https://ui.shadcn.com/schema/registry-item.json",
			"name": "calendar",
			"type": "registry:ui",
			"title": "Calendar",
			"description": "Date grid built on react-day-picker, used by the date pickers.",
			"dependencies": ["lucide-react@^1.48.0", "react-day-picker@^10.0.1"],
			"registryDependencies": ["https://rdf.dev.360online.com/r/button.json"],
			"files": [
				{
					"path": "registry/rapid/ui/calendar/calendar.tsx",
					"type": "registry:ui",
					"target": "components/ui/calendar.tsx"
				}
			]
		},
		{
			"name": "full-calendar",
			"type": "registry:ui",
			"title": "Full Calendar",
			"description": "Month, week and day calendar for apps that show and schedule events, with a time grid and all-day events.",
			"dependencies": ["date-fns@^4.4.0", "lucide-react@^1.48.0"],
			"registryDependencies": [
				"https://rdf.dev.360online.com/r/button.json",
				"https://rdf.dev.360online.com/r/popover.json",
				"https://rdf.dev.360online.com/r/toggle-group.json"
			],
			"files": [
				{
					"path": "registry/rapid/ui/full-calendar/full-calendar.tsx",
					"type": "registry:ui",
					"target": "components/ui/full-calendar.tsx"
				}
			],
			"meta": {
				"new": true
			}
		},
		{
			"$schema": "https://ui.shadcn.com/schema/registry-item.json",
			"name": "button-group",
			"type": "registry:ui",
			"title": "Button Group",
			"description": "Groups related buttons into a single attached control, with optional separators.",
			"dependencies": ["@base-ui/react@^1.8.0", "class-variance-authority@^0.7.1"],
			"registryDependencies": ["https://rdf.dev.360online.com/r/separator.json"],
			"files": [
				{
					"path": "registry/rapid/ui/button-group/button-group.tsx",
					"type": "registry:ui",
					"target": "components/ui/button-group.tsx"
				}
			]
		},
		{
			"$schema": "https://ui.shadcn.com/schema/registry-item.json",
			"name": "combobox",
			"type": "registry:ui",
			"title": "Combobox",
			"description": "Composable combobox with a compound API built on Popover and Command.",
			"dependencies": ["@base-ui/react@^1.8.0", "lucide-react@^1.48.0"],
			"registryDependencies": [
				"https://rdf.dev.360online.com/r/button.json",
				"https://rdf.dev.360online.com/r/input-group.json"
			],
			"files": [
				{
					"path": "registry/rapid/ui/combobox/combobox.tsx",
					"type": "registry:ui",
					"target": "components/ui/combobox.tsx"
				}
			]
		},
		{
			"$schema": "https://ui.shadcn.com/schema/registry-item.json",
			"name": "data-table",
			"type": "registry:ui",
			"title": "Data Table",
			"description": "TanStack Table wrapper with toolbar, faceted filters, pagination, column visibility and resizing.",
			"dependencies": ["@tanstack/react-table@^8.21.3", "lucide-react@^1.48.0"],
			"registryDependencies": [
				"https://rdf.dev.360online.com/r/badge.json",
				"https://rdf.dev.360online.com/r/button.json",
				"https://rdf.dev.360online.com/r/command.json",
				"https://rdf.dev.360online.com/r/dropdown-menu.json",
				"https://rdf.dev.360online.com/r/input.json",
				"https://rdf.dev.360online.com/r/pagination.json",
				"https://rdf.dev.360online.com/r/popover.json",
				"https://rdf.dev.360online.com/r/separator.json",
				"https://rdf.dev.360online.com/r/table.json",
				"https://rdf.dev.360online.com/r/tooltip.json"
			],
			"files": [
				{
					"path": "registry/rapid/ui/data-table/creator-name-cell.tsx",
					"type": "registry:ui",
					"target": "components/ui/data-table/creator-name-cell.tsx"
				},
				{
					"path": "registry/rapid/ui/data-table/data-table-column-header.tsx",
					"type": "registry:ui",
					"target": "components/ui/data-table/data-table-column-header.tsx"
				},
				{
					"path": "registry/rapid/ui/data-table/data-table-faceted-filter.tsx",
					"type": "registry:ui",
					"target": "components/ui/data-table/data-table-faceted-filter.tsx"
				},
				{
					"path": "registry/rapid/ui/data-table/data-table-pagination.tsx",
					"type": "registry:ui",
					"target": "components/ui/data-table/data-table-pagination.tsx"
				},
				{
					"path": "registry/rapid/ui/data-table/data-table-toolbar.tsx",
					"type": "registry:ui",
					"target": "components/ui/data-table/data-table-toolbar.tsx"
				},
				{
					"path": "registry/rapid/ui/data-table/data-table-view-options.tsx",
					"type": "registry:ui",
					"target": "components/ui/data-table/data-table-view-options.tsx"
				},
				{
					"path": "registry/rapid/ui/data-table/data-table.tsx",
					"type": "registry:ui",
					"target": "components/ui/data-table/data-table.tsx"
				},
				{
					"path": "registry/rapid/ui/data-table/data.ts",
					"type": "registry:ui",
					"target": "components/ui/data-table/data.ts"
				},
				{
					"path": "registry/rapid/ui/data-table/index.ts",
					"type": "registry:ui",
					"target": "components/ui/data-table/index.ts"
				},
				{
					"path": "registry/rapid/ui/data-table/truncated-tooltip.tsx",
					"type": "registry:ui",
					"target": "components/ui/data-table/truncated-tooltip.tsx"
				}
			]
		},
		{
			"$schema": "https://ui.shadcn.com/schema/registry-item.json",
			"name": "input-group",
			"type": "registry:ui",
			"title": "Input Group",
			"description": "Input with leading/trailing addons, buttons and text slots.",
			"dependencies": ["class-variance-authority@^0.7.1"],
			"registryDependencies": [
				"https://rdf.dev.360online.com/r/button.json",
				"https://rdf.dev.360online.com/r/input.json",
				"https://rdf.dev.360online.com/r/textarea.json"
			],
			"files": [
				{
					"path": "registry/rapid/ui/input-group/input-group.tsx",
					"type": "registry:ui",
					"target": "components/ui/input-group.tsx"
				}
			]
		},
		{
			"$schema": "https://ui.shadcn.com/schema/registry-item.json",
			"name": "number-input",
			"type": "registry:ui",
			"title": "Number Input",
			"description": "Numeric input with increment and decrement buttons and min/max/step.",
			"registryDependencies": ["https://rdf.dev.360online.com/r/input-group.json"],
			"files": [
				{
					"path": "registry/rapid/ui/number-input/number-input.tsx",
					"type": "registry:ui",
					"target": "components/ui/number-input.tsx"
				}
			],
			"dependencies": ["lucide-react@^1.48.0"]
		},
		{
			"$schema": "https://ui.shadcn.com/schema/registry-item.json",
			"name": "rich-text-content",
			"type": "registry:ui",
			"title": "Rich Text Content",
			"description": "Renders HTML produced by the rich text editor with consistent typography.",
			"files": [
				{
					"path": "registry/rapid/ui/rich-text-content/rich-text-content.tsx",
					"type": "registry:ui",
					"target": "components/ui/rich-text-content.tsx"
				}
			]
		},
		{
			"$schema": "https://ui.shadcn.com/schema/registry-item.json",
			"name": "time-picker",
			"type": "registry:ui",
			"title": "Time Picker",
			"description": "Time picker: a 24-hour field with hour/minute segments in the style of Input, standalone segment inputs, and a visual popover variant.",
			"registryDependencies": [
				"https://rdf.dev.360online.com/r/button.json",
				"https://rdf.dev.360online.com/r/popover.json",
				"https://rdf.dev.360online.com/r/scroll-area.json"
			],
			"files": [
				{
					"path": "registry/rapid/ui/time-picker/index.ts",
					"type": "registry:ui",
					"target": "components/ui/time-picker/index.ts"
				},
				{
					"path": "registry/rapid/ui/time-picker/time-picker-utils.ts",
					"type": "registry:ui",
					"target": "components/ui/time-picker/time-picker-utils.ts"
				},
				{
					"path": "registry/rapid/ui/time-picker/time-picker.tsx",
					"type": "registry:ui",
					"target": "components/ui/time-picker/time-picker.tsx"
				},
				{
					"path": "registry/rapid/ui/time-picker/visual-time-picker.tsx",
					"type": "registry:ui",
					"target": "components/ui/time-picker/visual-time-picker.tsx"
				}
			],
			"dependencies": ["lucide-react@^1.48.0"]
		},
		{
			"$schema": "https://ui.shadcn.com/schema/registry-item.json",
			"name": "file-dropzone",
			"type": "registry:ui",
			"title": "File Dropzone",
			"description": "Drag-and-drop multi-file uploader with size and type validation, built on react-dropzone.",
			"dependencies": ["class-variance-authority@^0.7.1", "lucide-react@^1.48.0", "react-dropzone@^14.2.9"],
			"registryDependencies": ["https://rdf.dev.360online.com/r/button.json"],
			"files": [
				{
					"path": "registry/rapid/ui/file-dropzone/file-dropzone.tsx",
					"type": "registry:ui",
					"target": "components/ui/file-dropzone.tsx"
				},
				{
					"path": "hooks/use-file.ts",
					"type": "registry:hook",
					"target": "hooks/use-file.ts"
				}
			],
			"docs": "UI strings in this component are hardcoded in English. It is a template component: wire it to your app's i18n (e.g. next-intl) after installing."
		},
		{
			"$schema": "https://ui.shadcn.com/schema/registry-item.json",
			"name": "file-input",
			"type": "registry:ui",
			"title": "File Input",
			"description": "Single file or image input with preview, drag-and-drop and size validation.",
			"registryDependencies": ["https://rdf.dev.360online.com/r/button.json"],
			"files": [
				{
					"path": "registry/rapid/ui/file-input/file-input.tsx",
					"type": "registry:ui",
					"target": "components/ui/file-input.tsx"
				}
			],
			"docs": "UI strings in this component are hardcoded in English. It is a template component: wire it to your app's i18n (e.g. next-intl) after installing.",
			"dependencies": ["lucide-react@^1.48.0"]
		},
		{
			"$schema": "https://ui.shadcn.com/schema/registry-item.json",
			"name": "rich-text-editor",
			"type": "registry:ui",
			"title": "Rich Text Editor",
			"description": "Tiptap rich text editor with formatting toolbar, links, alignment and font size.",
			"dependencies": [
				"@tiptap/extension-link@^3.3.0",
				"@tiptap/extension-placeholder@^3.3.0",
				"@tiptap/extension-text-align@^3.3.0",
				"@tiptap/extension-text-style@^3.3.0",
				"@tiptap/react@^3.3.0",
				"@tiptap/starter-kit@^3.3.0",
				"lucide-react@^1.48.0"
			],
			"registryDependencies": [
				"https://rdf.dev.360online.com/r/button.json",
				"https://rdf.dev.360online.com/r/field.json",
				"https://rdf.dev.360online.com/r/input.json",
				"https://rdf.dev.360online.com/r/label.json",
				"https://rdf.dev.360online.com/r/popover.json",
				"https://rdf.dev.360online.com/r/tooltip.json"
			],
			"files": [
				{
					"path": "registry/rapid/ui/rich-text-editor/extensions/font-size.ts",
					"type": "registry:ui",
					"target": "components/ui/rich-text-editor/extensions/font-size.ts"
				},
				{
					"path": "registry/rapid/ui/rich-text-editor/extensions/index.ts",
					"type": "registry:ui",
					"target": "components/ui/rich-text-editor/extensions/index.ts"
				},
				{
					"path": "registry/rapid/ui/rich-text-editor/index.ts",
					"type": "registry:ui",
					"target": "components/ui/rich-text-editor/index.ts"
				},
				{
					"path": "registry/rapid/ui/rich-text-editor/rich-text-editor.tsx",
					"type": "registry:ui",
					"target": "components/ui/rich-text-editor/rich-text-editor.tsx"
				}
			],
			"docs": "UI strings in this component are hardcoded in English. It is a template component: wire it to your app's i18n (e.g. next-intl) after installing."
		},
		{
			"name": "aspect-ratio",
			"type": "registry:ui",
			"title": "Aspect Ratio",
			"description": "Displays content within a fixed width-to-height ratio.",
			"files": [
				{
					"path": "registry/rapid/ui/aspect-ratio/aspect-ratio.tsx",
					"type": "registry:ui",
					"target": "components/ui/aspect-ratio.tsx"
				}
			],
			"meta": {
				"new": true
			}
		},
		{
			"name": "attachment",
			"type": "registry:ui",
			"title": "Attachment",
			"description": "File attachment chip with name, size and remove action, for chat and forms.",
			"dependencies": ["@base-ui/react@^1.8.0", "class-variance-authority@^0.7.1"],
			"registryDependencies": ["https://rdf.dev.360online.com/r/button.json"],
			"files": [
				{
					"path": "registry/rapid/ui/attachment/attachment.tsx",
					"type": "registry:ui",
					"target": "components/ui/attachment.tsx"
				}
			],
			"meta": {
				"new": true
			}
		},
		{
			"name": "bubble",
			"type": "registry:ui",
			"title": "Bubble",
			"description": "Chat message bubble with incoming and outgoing styles.",
			"dependencies": ["@base-ui/react@^1.8.0", "class-variance-authority@^0.7.1"],
			"files": [
				{
					"path": "registry/rapid/ui/bubble/bubble.tsx",
					"type": "registry:ui",
					"target": "components/ui/bubble.tsx"
				}
			],
			"meta": {
				"new": true
			}
		},
		{
			"name": "carousel",
			"type": "registry:ui",
			"title": "Carousel",
			"description": "Swipeable carousel with previous/next controls, built on Embla.",
			"dependencies": ["embla-carousel-react@^8.6.0", "lucide-react@^1.48.0"],
			"registryDependencies": ["https://rdf.dev.360online.com/r/button.json"],
			"files": [
				{
					"path": "registry/rapid/ui/carousel/carousel.tsx",
					"type": "registry:ui",
					"target": "components/ui/carousel.tsx"
				}
			],
			"meta": {
				"new": true
			}
		},
		{
			"name": "direction",
			"type": "registry:ui",
			"title": "Direction",
			"description": "Provider that sets left-to-right or right-to-left direction for its subtree.",
			"dependencies": ["@base-ui/react@^1.8.0"],
			"files": [
				{
					"path": "registry/rapid/ui/direction/direction.tsx",
					"type": "registry:ui",
					"target": "components/ui/direction.tsx"
				}
			],
			"meta": {
				"new": true
			}
		},
		{
			"name": "drawer",
			"type": "registry:ui",
			"title": "Drawer",
			"description": "Panel that slides in from an edge of the screen and can be swiped closed, built on Base UI Drawer.",
			"dependencies": ["@base-ui/react@^1.8.0"],
			"files": [
				{
					"path": "registry/rapid/ui/drawer/drawer.tsx",
					"type": "registry:ui",
					"target": "components/ui/drawer.tsx"
				}
			],
			"meta": {
				"new": true
			}
		},
		{
			"name": "empty",
			"type": "registry:ui",
			"title": "Empty",
			"description": "Empty state with icon, title, description and actions.",
			"dependencies": ["class-variance-authority@^0.7.1"],
			"files": [
				{
					"path": "registry/rapid/ui/empty/empty.tsx",
					"type": "registry:ui",
					"target": "components/ui/empty.tsx"
				}
			],
			"meta": {
				"new": true
			}
		},
		{
			"name": "field",
			"type": "registry:ui",
			"title": "Field",
			"description": "Accessible form field layout: label, control, description and error, with horizontal and vertical orientations.",
			"dependencies": ["class-variance-authority@^0.7.1"],
			"registryDependencies": [
				"https://rdf.dev.360online.com/r/label.json",
				"https://rdf.dev.360online.com/r/separator.json"
			],
			"files": [
				{
					"path": "registry/rapid/ui/field/field.tsx",
					"type": "registry:ui",
					"target": "components/ui/field.tsx"
				}
			],
			"meta": {
				"new": true
			}
		},
		{
			"name": "hover-card",
			"type": "registry:ui",
			"title": "Hover Card",
			"description": "Preview card shown when hovering or focusing a link.",
			"dependencies": ["@base-ui/react@^1.8.0"],
			"files": [
				{
					"path": "registry/rapid/ui/hover-card/hover-card.tsx",
					"type": "registry:ui",
					"target": "components/ui/hover-card.tsx"
				}
			],
			"meta": {
				"new": true
			}
		},
		{
			"name": "item",
			"type": "registry:ui",
			"title": "Item",
			"description": "Flexible row for lists: media, title, description and actions, with outline and muted variants.",
			"dependencies": ["@base-ui/react@^1.8.0", "class-variance-authority@^0.7.1"],
			"registryDependencies": ["https://rdf.dev.360online.com/r/separator.json"],
			"files": [
				{
					"path": "registry/rapid/ui/item/item.tsx",
					"type": "registry:ui",
					"target": "components/ui/item.tsx"
				}
			],
			"meta": {
				"new": true
			}
		},
		{
			"name": "kbd",
			"type": "registry:ui",
			"title": "Kbd",
			"description": "Keyboard key and shortcut display.",
			"files": [
				{
					"path": "registry/rapid/ui/kbd/kbd.tsx",
					"type": "registry:ui",
					"target": "components/ui/kbd.tsx"
				}
			],
			"meta": {
				"new": true
			}
		},
		{
			"name": "marker",
			"type": "registry:ui",
			"title": "Marker",
			"description": "Small status marker (dot, count or label) to annotate other elements.",
			"dependencies": ["@base-ui/react@^1.8.0", "class-variance-authority@^0.7.1"],
			"files": [
				{
					"path": "registry/rapid/ui/marker/marker.tsx",
					"type": "registry:ui",
					"target": "components/ui/marker.tsx"
				}
			],
			"meta": {
				"new": true
			}
		},
		{
			"name": "menubar",
			"type": "registry:ui",
			"title": "Menubar",
			"description": "Desktop-style menu bar with menus, submenus, checkboxes and radio items.",
			"dependencies": ["@base-ui/react@^1.8.0", "lucide-react@^1.48.0"],
			"files": [
				{
					"path": "registry/rapid/ui/menubar/menubar.tsx",
					"type": "registry:ui",
					"target": "components/ui/menubar.tsx"
				}
			],
			"meta": {
				"new": true
			},
			"registryDependencies": ["https://rdf.dev.360online.com/r/dropdown-menu.json"]
		},
		{
			"name": "message-scroller",
			"type": "registry:ui",
			"title": "Message Scroller",
			"description": "Scroll container for chat messages that sticks to the bottom as new messages arrive.",
			"dependencies": ["@shadcn/react@^0.3.1", "lucide-react@^1.48.0"],
			"registryDependencies": ["https://rdf.dev.360online.com/r/button.json"],
			"files": [
				{
					"path": "registry/rapid/ui/message-scroller/message-scroller.tsx",
					"type": "registry:ui",
					"target": "components/ui/message-scroller.tsx"
				}
			],
			"meta": {
				"new": true
			}
		},
		{
			"name": "message",
			"type": "registry:ui",
			"title": "Message",
			"description": "Chat message layout with avatar, author, content and actions.",
			"files": [
				{
					"path": "registry/rapid/ui/message/message.tsx",
					"type": "registry:ui",
					"target": "components/ui/message.tsx"
				}
			],
			"meta": {
				"new": true
			}
		},
		{
			"name": "native-select",
			"type": "registry:ui",
			"title": "Native Select",
			"description": "A styled native HTML select element for simple lists and mobile-friendly forms.",
			"dependencies": ["lucide-react@^1.48.0"],
			"files": [
				{
					"path": "registry/rapid/ui/native-select/native-select.tsx",
					"type": "registry:ui",
					"target": "components/ui/native-select.tsx"
				}
			],
			"meta": {
				"new": true
			}
		},
		{
			"name": "navigation-menu",
			"type": "registry:ui",
			"title": "Navigation Menu",
			"description": "Top-level site navigation with dropdown panels.",
			"dependencies": ["@base-ui/react@^1.8.0", "class-variance-authority@^0.7.1", "lucide-react@^1.48.0"],
			"files": [
				{
					"path": "registry/rapid/ui/navigation-menu/navigation-menu.tsx",
					"type": "registry:ui",
					"target": "components/ui/navigation-menu.tsx"
				}
			],
			"meta": {
				"new": true
			}
		},
		{
			"name": "questionnaire",
			"type": "registry:ui",
			"title": "Questionnaire",
			"description": "Step-by-step question flow with single and multiple choice answers.",
			"dependencies": ["@shadcn/react@^0.3.1", "lucide-react@^1.48.0"],
			"registryDependencies": ["https://rdf.dev.360online.com/r/button.json"],
			"files": [
				{
					"path": "registry/rapid/ui/questionnaire/questionnaire.tsx",
					"type": "registry:ui",
					"target": "components/ui/questionnaire.tsx"
				}
			],
			"meta": {
				"new": true
			}
		},
		{
			"name": "spinner",
			"type": "registry:ui",
			"title": "Spinner",
			"description": "Loading indicator.",
			"dependencies": ["lucide-react@^1.48.0"],
			"files": [
				{
					"path": "registry/rapid/ui/spinner/spinner.tsx",
					"type": "registry:ui",
					"target": "components/ui/spinner.tsx"
				}
			],
			"meta": {
				"new": true
			}
		},
		{
			"name": "banner",
			"type": "registry:ui",
			"title": "Banner",
			"description": "Page-wide message at the top of a page, such as planned maintenance or an outage, that can be dismissed.",
			"dependencies": ["@base-ui/react@^1.8.0", "class-variance-authority@^0.7.1", "lucide-react@^1.48.0"],
			"registryDependencies": ["https://rdf.dev.360online.com/r/button.json"],
			"files": [
				{
					"path": "registry/rapid/ui/banner/banner.tsx",
					"type": "registry:ui",
					"target": "components/ui/banner.tsx"
				}
			],
			"meta": {
				"new": true
			}
		},
		{
			"name": "description-list",
			"type": "registry:ui",
			"title": "Description List",
			"description": "Key–value pairs such as applicant, property and fee, as valid dl markup in stacked, side-by-side or grid layouts.",
			"files": [
				{
					"path": "registry/rapid/ui/description-list/description-list.tsx",
					"type": "registry:ui",
					"target": "components/ui/description-list.tsx"
				}
			],
			"meta": {
				"new": true
			}
		},
		{
			"name": "stat-card",
			"type": "registry:ui",
			"title": "Stat Card",
			"description": "A key figure with a label, a trend and a comparison, for dashboards and overviews.",
			"dependencies": ["@base-ui/react@^1.8.0", "lucide-react@^1.48.0"],
			"files": [
				{
					"path": "registry/rapid/ui/stat-card/stat-card.tsx",
					"type": "registry:ui",
					"target": "components/ui/stat-card.tsx"
				}
			],
			"meta": {
				"new": true
			}
		},
		{
			"name": "toast",
			"type": "registry:ui",
			"title": "Toast",
			"description": "Short notifications that appear over the page, built on Base UI Toast, with types, actions and loading states.",
			"dependencies": ["@base-ui/react@^1.8.0", "lucide-react@^1.48.0"],
			"registryDependencies": ["https://rdf.dev.360online.com/r/button.json"],
			"files": [
				{
					"path": "registry/rapid/ui/toast/toast.tsx",
					"type": "registry:ui",
					"target": "components/ui/toast.tsx"
				}
			],
			"meta": {
				"new": true
			}
		},
		{
			"name": "organization-switcher",
			"type": "registry:ui",
			"title": "Organization Switcher",
			"description": "Shows which organisation the user works in and lets them switch, with optional sub-organisations, search and favourites.",
			"dependencies": ["@base-ui/react@^1.8.0", "lucide-react@^1.48.0"],
			"files": [
				{
					"path": "registry/rapid/ui/organization-switcher/organization-switcher.tsx",
					"type": "registry:ui",
					"target": "components/ui/organization-switcher.tsx"
				}
			],
			"meta": {
				"new": true
			}
		}
	]
}
