organify-ui 0.1.0
This diff represents the content of publicly available package versions that have been released to one of the supported registries. The information contained in this diff is provided for informational purposes only and reflects changes between package versions as they appear in their respective public registries.
- package/dist/chunk-7GFTSEVQ.js +77 -0
- package/dist/chunk-7GFTSEVQ.js.map +1 -0
- package/dist/chunk-FWI3KZVO.js +508 -0
- package/dist/chunk-FWI3KZVO.js.map +1 -0
- package/dist/chunk-WPZJKIZT.js +248 -0
- package/dist/chunk-WPZJKIZT.js.map +1 -0
- package/dist/chunk-YIVDY4T6.js +412 -0
- package/dist/chunk-YIVDY4T6.js.map +1 -0
- package/dist/i18n/index.d.ts +169 -0
- package/dist/i18n/index.js +3 -0
- package/dist/i18n/index.js.map +1 -0
- package/dist/icons/index.d.ts +84 -0
- package/dist/icons/index.js +3 -0
- package/dist/icons/index.js.map +1 -0
- package/dist/index.d.ts +430 -0
- package/dist/index.js +1453 -0
- package/dist/index.js.map +1 -0
- package/dist/providers/theme-provider.d.ts +25 -0
- package/dist/providers/theme-provider.js +3 -0
- package/dist/providers/theme-provider.js.map +1 -0
- package/dist/tailwind-preset.d.ts +16 -0
- package/dist/tailwind-preset.js +91 -0
- package/dist/tailwind-preset.js.map +1 -0
- package/dist/tokens/index.d.ts +336 -0
- package/dist/tokens/index.js +59 -0
- package/dist/tokens/index.js.map +1 -0
- package/package.json +96 -0
- package/src/globals.css +396 -0
|
@@ -0,0 +1 @@
|
|
|
1
|
+
{"version":3,"sources":["../src/lib/utils.ts","../src/components/primitives/org-loader.tsx","../src/components/primitives/button.tsx","../src/components/primitives/input.tsx","../src/components/primitives/select.tsx","../src/components/primitives/toggle.tsx","../src/components/primitives/badge.tsx","../src/components/primitives/avatar.tsx","../src/components/primitives/tooltip.tsx","../src/components/primitives/skeleton.tsx","../src/components/primitives/progress.tsx","../src/components/feedback/alert.tsx","../src/components/feedback/toast.tsx","../src/components/feedback/empty-state.tsx","../src/components/layout/glass-panel.tsx","../src/components/layout/dock.tsx","../src/components/layout/logo.tsx","../src/components/layout/geometric-icon.tsx","../src/components/data/metric-card.tsx","../src/components/data/stepper.tsx","../src/components/data/status-pill.tsx"],"names":["cva","React","jsx","jsxs","React2","React4","React5","React6","React7","X"],"mappings":"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","file":"index.js","sourcesContent":["import { type ClassValue, clsx } from 'clsx';\nimport { twMerge } from 'tailwind-merge';\n\n/**\n * Merge Tailwind CSS classes with clsx — the standard shadcn pattern.\n */\nexport function cn(...inputs: ClassValue[]) {\n return twMerge(clsx(inputs));\n}\n","import * as React from 'react';\nimport { cva, type VariantProps } from 'class-variance-authority';\nimport { cn } from '../../lib/utils';\n\n/**\n * OrgLoader — Branded \"O\" loading animation\n *\n * An animated \"O\" ring with a diamond orbiting around it,\n * referencing the Organify brand identity.\n * Replaces traditional spinners across the platform.\n */\nconst orgLoaderVariants = cva('relative inline-flex items-center justify-center', {\n variants: {\n size: {\n xs: 'h-4 w-4',\n sm: 'h-6 w-6',\n default: 'h-10 w-10',\n lg: 'h-16 w-16',\n xl: 'h-24 w-24',\n full: 'h-32 w-32',\n },\n },\n defaultVariants: {\n size: 'default',\n },\n});\n\nconst diamondSizes: Record<string, number> = {\n xs: 3,\n sm: 4,\n default: 6,\n lg: 8,\n xl: 10,\n full: 14,\n};\n\nconst strokeWidths: Record<string, number> = {\n xs: 1.5,\n sm: 1.5,\n default: 2,\n lg: 2,\n xl: 2.5,\n full: 2.5,\n};\n\nexport interface OrgLoaderProps\n extends React.HTMLAttributes<HTMLDivElement>,\n VariantProps<typeof orgLoaderVariants> {\n /** Text below loader */\n caption?: string;\n /** Overlay mode: centered on dark/light scrim */\n overlay?: boolean;\n}\n\nfunction OrgLoader({\n size = 'default',\n caption,\n overlay = false,\n className,\n ...props\n}: OrgLoaderProps) {\n const s = size ?? 'default';\n const d = diamondSizes[s];\n const sw = strokeWidths[s];\n\n const loader = (\n <div\n className={cn(\n 'flex flex-col items-center gap-3',\n overlay && 'pointer-events-none',\n className,\n )}\n role=\"status\"\n aria-label=\"Loading\"\n {...props}\n >\n <div className={cn(orgLoaderVariants({ size }))}>\n <svg className=\"h-full w-full\" viewBox=\"0 0 48 48\" fill=\"none\" xmlns=\"http://www.w3.org/2000/svg\">\n {/* Background \"O\" ring */}\n <circle\n cx=\"24\"\n cy=\"24\"\n r=\"18\"\n className=\"stroke-current opacity-10 dark:opacity-[0.08]\"\n strokeWidth={sw}\n />\n\n {/* Animated gradient arc — the living \"O\" */}\n <circle\n cx=\"24\"\n cy=\"24\"\n r=\"18\"\n stroke=\"url(#org-loader-gradient)\"\n strokeWidth={sw}\n strokeLinecap=\"round\"\n strokeDasharray=\"85 28.27\"\n className=\"origin-center\"\n style={{ animation: 'org-loader-spin 1.4s cubic-bezier(0.4, 0, 0.2, 1) infinite' }}\n />\n\n {/* Orbiting diamond */}\n <g style={{ animation: 'org-loader-orbit 1.4s cubic-bezier(0.4, 0, 0.2, 1) infinite' }} className=\"origin-center\">\n <rect\n x={24 - d / 2}\n y={6 - d / 2}\n width={d}\n height={d}\n rx={d * 0.15}\n transform={`rotate(45 24 6)`}\n fill=\"url(#org-loader-diamond)\"\n className=\"drop-shadow-[0_0_6px_rgba(79,57,246,0.5)]\"\n />\n </g>\n\n {/* Center dot — the \"heartbeat\" */}\n <circle\n cx=\"24\"\n cy=\"24\"\n r=\"2\"\n className=\"fill-current opacity-20\"\n style={{ animation: 'org-loader-pulse 1.4s ease-in-out infinite' }}\n />\n\n <defs>\n <linearGradient id=\"org-loader-gradient\" x1=\"6\" y1=\"6\" x2=\"42\" y2=\"42\" gradientUnits=\"userSpaceOnUse\">\n <stop stopColor=\"#4F39F6\" />\n <stop offset=\"0.5\" stopColor=\"#5b42f2\" />\n <stop offset=\"1\" stopColor=\"#241979\" />\n </linearGradient>\n <linearGradient id=\"org-loader-diamond\" x1=\"0\" y1=\"0\" x2=\"1\" y2=\"1\">\n <stop stopColor=\"#4F39F6\" />\n <stop offset=\"1\" stopColor=\"#241979\" />\n </linearGradient>\n </defs>\n </svg>\n </div>\n\n {caption && (\n <span className={cn(\n 'font-mono uppercase tracking-widest text-current opacity-40',\n s === 'xs' || s === 'sm' ? 'text-[8px]' : 'text-[10px]',\n )}>\n {caption}\n </span>\n )}\n </div>\n );\n\n if (overlay) {\n return (\n <div className=\"fixed inset-0 z-50 flex items-center justify-center bg-black/40 backdrop-blur-sm dark:bg-black/60\">\n {loader}\n </div>\n );\n }\n\n return loader;\n}\n\n/**\n * OrgLoaderInline — Tiny inline loading for buttons, inputs, etc.\n * Just the \"O\" ring without caption support.\n */\nfunction OrgLoaderInline({ className, ...props }: React.SVGProps<SVGSVGElement>) {\n return (\n <svg\n className={cn('h-4 w-4', className)}\n viewBox=\"0 0 48 48\"\n fill=\"none\"\n xmlns=\"http://www.w3.org/2000/svg\"\n role=\"status\"\n aria-label=\"Loading\"\n {...props}\n >\n <circle cx=\"24\" cy=\"24\" r=\"18\" className=\"stroke-current opacity-10\" strokeWidth=\"2\" />\n <circle\n cx=\"24\"\n cy=\"24\"\n r=\"18\"\n stroke=\"currentColor\"\n strokeWidth=\"2\"\n strokeLinecap=\"round\"\n strokeDasharray=\"85 28.27\"\n className=\"origin-center\"\n style={{ animation: 'org-loader-spin 1.4s cubic-bezier(0.4, 0, 0.2, 1) infinite' }}\n />\n <g style={{ animation: 'org-loader-orbit 1.4s cubic-bezier(0.4, 0, 0.2, 1) infinite' }} className=\"origin-center\">\n <rect x=\"21\" y=\"3\" width=\"6\" height=\"6\" rx=\"1\" transform=\"rotate(45 24 6)\" fill=\"currentColor\" />\n </g>\n </svg>\n );\n}\n\nexport { OrgLoader, OrgLoaderInline, orgLoaderVariants };\n","import * as React from 'react';\nimport { Slot } from '@radix-ui/react-slot';\nimport { cva, type VariantProps } from 'class-variance-authority';\nimport { cn } from '../../lib/utils';\nimport { OrgLoaderInline } from './org-loader';\n\n/**\n * Button — Geometric Tactile Actions\n *\n * Two primary shapes from the design system:\n * - `glass-primary`: clip-path polygon, filled primary bg\n * - `glass-outline`: inverse clip-path, transparent + border\n * - Standard variants: default, secondary, ghost, destructive, link\n */\nconst buttonVariants = cva(\n 'inline-flex items-center justify-center gap-2 whitespace-nowrap text-sm font-medium tracking-wide uppercase transition-all duration-300 focus-visible:outline-none focus-visible:ring-2 focus-visible:ring-primary-light/50 disabled:pointer-events-none disabled:opacity-50 [&_svg]:pointer-events-none [&_svg]:size-4 [&_svg]:shrink-0',\n {\n variants: {\n variant: {\n default:\n 'bg-primary text-white hover:bg-primary-light shadow-glow-primary clip-geo',\n secondary:\n 'bg-transparent border border-white/20 text-white hover:text-white hover:border-primary-light hover:bg-white/5 clip-geo-inv',\n ghost:\n 'bg-transparent text-white/70 hover:bg-white/5 hover:text-white',\n destructive:\n 'bg-semantic-error text-white hover:bg-semantic-error/90 shadow-glow-error clip-geo',\n outline:\n 'bg-transparent border border-white/20 text-white hover:bg-white/5 hover:border-white/40',\n link:\n 'text-primary-light underline-offset-4 hover:underline',\n // ─── Cream Light theme buttons ─────────────\n cream:\n 'bg-primary text-white hover:shadow-cream-glow hover:translate-y-[-1px] rounded-lg',\n 'cream-secondary':\n 'bg-transparent border border-primary text-primary hover:bg-primary/[0.03] rounded-lg',\n },\n size: {\n default: 'px-8 py-3',\n sm: 'px-4 py-2 text-xs',\n lg: 'px-10 py-4 text-base',\n icon: 'h-10 w-10',\n 'icon-sm': 'h-8 w-8',\n 'icon-lg': 'h-12 w-12',\n },\n },\n defaultVariants: {\n variant: 'default',\n size: 'default',\n },\n },\n);\n\nexport interface ButtonProps\n extends React.ButtonHTMLAttributes<HTMLButtonElement>,\n VariantProps<typeof buttonVariants> {\n asChild?: boolean;\n loading?: boolean;\n}\n\nconst Button = React.forwardRef<HTMLButtonElement, ButtonProps>(\n ({ className, variant, size, asChild = false, loading = false, children, disabled, ...props }, ref) => {\n const Comp = asChild ? Slot : 'button';\n return (\n <Comp\n className={cn(buttonVariants({ variant, size, className }))}\n ref={ref}\n disabled={disabled || loading}\n {...props}\n >\n {loading ? (\n <>\n <OrgLoaderInline className=\"shrink-0\" />\n {children}\n </>\n ) : (\n children\n )}\n </Comp>\n );\n },\n);\nButton.displayName = 'Button';\n\nexport { Button, buttonVariants };\n","import * as React from 'react';\nimport { cva, type VariantProps } from 'class-variance-authority';\nimport { cn } from '../../lib/utils';\n\n/**\n * Input — Glass geometric input field\n *\n * From the design system: bg-white/5 backdrop-blur, geometric clip-path corner,\n * floating label support, error state with red accent.\n */\nconst inputVariants = cva(\n 'flex w-full bg-white/5 backdrop-blur-md border border-white/10 px-4 py-3 text-sm font-light text-white transition-all duration-200 file:border-0 file:bg-transparent file:text-sm file:font-medium placeholder:text-white/20 focus-visible:outline-none disabled:cursor-not-allowed disabled:opacity-50',\n {\n variants: {\n variant: {\n default: 'clip-geo-br focus:ring-1 focus:ring-primary-light/50 focus:border-primary-light/50',\n flat: 'rounded-none focus:ring-1 focus:ring-primary-light/50 focus:border-primary-light/50',\n rounded: 'rounded-lg focus:ring-1 focus:ring-primary-light/50 focus:border-primary-light/50',\n error:\n 'border-semantic-error/30 bg-semantic-error/5 text-red-100 placeholder:text-red-500/30 focus:border-semantic-error focus:ring-1 focus:ring-semantic-error/20 clip-geo-br',\n // ─── Cream Light theme ─────────────────────\n cream:\n 'bg-white/40 border-black/5 text-neutral-900 placeholder:text-neutral-400 rounded-lg focus:border-primary focus:bg-white/80 focus:shadow-[0_0_0_1px_rgba(36,25,121,0.05)] backdrop-blur-sm',\n },\n },\n defaultVariants: {\n variant: 'default',\n },\n },\n);\n\nexport interface InputProps\n extends Omit<React.InputHTMLAttributes<HTMLInputElement>, 'size'>,\n VariantProps<typeof inputVariants> {\n label?: string;\n error?: string;\n /** Position of the floating label */\n labelPosition?: 'left' | 'right';\n}\n\nconst Input = React.forwardRef<HTMLInputElement, InputProps>(\n ({ className, variant, type, label, error, labelPosition = 'left', ...props }, ref) => {\n const id = React.useId();\n const effectiveVariant = error ? 'error' : variant;\n\n return (\n <div className=\"relative group\">\n {label && (\n <label\n htmlFor={id}\n className={cn(\n 'absolute -top-3 z-10 px-2 text-label uppercase tracking-widest',\n effectiveVariant === 'cream' ? 'bg-cream-base' : 'bg-card-surface',\n labelPosition === 'left' ? 'left-0 ml-2' : 'right-0 mr-2',\n error ? 'text-semantic-error' : 'text-primary-light',\n )}\n >\n {label}\n </label>\n )}\n <input\n id={id}\n type={type}\n className={cn(inputVariants({ variant: effectiveVariant, className }))}\n ref={ref}\n aria-invalid={!!error}\n aria-describedby={error ? `${id}-error` : undefined}\n {...props}\n />\n {effectiveVariant !== 'cream' && (\n <div className=\"pointer-events-none absolute bottom-0 right-0 h-4 w-4 border-b border-r border-white/20\" />\n )}\n {error && (\n <div id={`${id}-error`} className=\"mt-2 flex items-center justify-end gap-2\">\n <span className=\"text-mono-xs text-semantic-error\">{error}</span>\n </div>\n )}\n </div>\n );\n },\n);\nInput.displayName = 'Input';\n\nexport { Input, inputVariants };\n","'use client';\n\nimport * as React from 'react';\nimport * as SelectPrimitive from '@radix-ui/react-select';\nimport { ChevronDown, ChevronUp, Check } from 'lucide-react';\nimport { cn } from '../../lib/utils';\n\n/**\n * Select — Glass geometric select\n *\n * Wraps Radix Select with Organify glass styling.\n */\n\nconst Select = SelectPrimitive.Root;\nconst SelectGroup = SelectPrimitive.Group;\nconst SelectValue = SelectPrimitive.Value;\n\nconst SelectTrigger = React.forwardRef<\n React.ComponentRef<typeof SelectPrimitive.Trigger>,\n React.ComponentPropsWithoutRef<typeof SelectPrimitive.Trigger> & {\n label?: string;\n }\n>(({ className, children, label, ...props }, ref) => (\n <div className=\"relative group\">\n {label && (\n <span className=\"absolute -top-3 right-0 z-10 mr-2 bg-card-surface px-2 text-label uppercase tracking-widest text-white/40\">\n {label}\n </span>\n )}\n <SelectPrimitive.Trigger\n ref={ref}\n className={cn(\n 'flex w-full items-center justify-between bg-white/5 backdrop-blur-md border border-white/10 px-4 py-3 text-sm font-light text-white/80 transition-all clip-geo-br focus:outline-none focus:ring-1 focus:ring-primary-light/50 focus:border-primary-light/50 disabled:cursor-not-allowed disabled:opacity-50 [&>span]:line-clamp-1',\n className,\n )}\n {...props}\n >\n {children}\n <SelectPrimitive.Icon asChild>\n <ChevronDown className=\"h-4 w-4 text-primary-light opacity-60\" />\n </SelectPrimitive.Icon>\n </SelectPrimitive.Trigger>\n </div>\n));\nSelectTrigger.displayName = SelectPrimitive.Trigger.displayName;\n\nconst SelectScrollUpButton = React.forwardRef<\n React.ComponentRef<typeof SelectPrimitive.ScrollUpButton>,\n React.ComponentPropsWithoutRef<typeof SelectPrimitive.ScrollUpButton>\n>(({ className, ...props }, ref) => (\n <SelectPrimitive.ScrollUpButton\n ref={ref}\n className={cn('flex cursor-default items-center justify-center py-1', className)}\n {...props}\n >\n <ChevronUp className=\"h-4 w-4 text-white/40\" />\n </SelectPrimitive.ScrollUpButton>\n));\nSelectScrollUpButton.displayName = SelectPrimitive.ScrollUpButton.displayName;\n\nconst SelectScrollDownButton = React.forwardRef<\n React.ComponentRef<typeof SelectPrimitive.ScrollDownButton>,\n React.ComponentPropsWithoutRef<typeof SelectPrimitive.ScrollDownButton>\n>(({ className, ...props }, ref) => (\n <SelectPrimitive.ScrollDownButton\n ref={ref}\n className={cn('flex cursor-default items-center justify-center py-1', className)}\n {...props}\n >\n <ChevronDown className=\"h-4 w-4 text-white/40\" />\n </SelectPrimitive.ScrollDownButton>\n));\nSelectScrollDownButton.displayName = SelectPrimitive.ScrollDownButton.displayName;\n\nconst SelectContent = React.forwardRef<\n React.ComponentRef<typeof SelectPrimitive.Content>,\n React.ComponentPropsWithoutRef<typeof SelectPrimitive.Content>\n>(({ className, children, position = 'popper', ...props }, ref) => (\n <SelectPrimitive.Portal>\n <SelectPrimitive.Content\n ref={ref}\n className={cn(\n 'glass-panel relative z-50 max-h-96 min-w-[8rem] overflow-hidden rounded-none border border-white/10 bg-card-surface/95 backdrop-blur-2xl text-white shadow-glass-xl data-[state=open]:animate-in data-[state=closed]:animate-out data-[state=closed]:fade-out-0 data-[state=open]:fade-in-0 data-[state=closed]:zoom-out-95 data-[state=open]:zoom-in-95 data-[side=bottom]:slide-in-from-top-2 data-[side=left]:slide-in-from-right-2 data-[side=right]:slide-in-from-left-2 data-[side=top]:slide-in-from-bottom-2',\n position === 'popper' &&\n 'data-[side=bottom]:translate-y-1 data-[side=left]:-translate-x-1 data-[side=right]:translate-x-1 data-[side=top]:-translate-y-1',\n className,\n )}\n position={position}\n {...props}\n >\n <SelectScrollUpButton />\n <SelectPrimitive.Viewport\n className={cn(\n 'p-1',\n position === 'popper' &&\n 'h-[var(--radix-select-trigger-height)] w-full min-w-[var(--radix-select-trigger-width)]',\n )}\n >\n {children}\n </SelectPrimitive.Viewport>\n <SelectScrollDownButton />\n </SelectPrimitive.Content>\n </SelectPrimitive.Portal>\n));\nSelectContent.displayName = SelectPrimitive.Content.displayName;\n\nconst SelectItem = React.forwardRef<\n React.ComponentRef<typeof SelectPrimitive.Item>,\n React.ComponentPropsWithoutRef<typeof SelectPrimitive.Item>\n>(({ className, children, ...props }, ref) => (\n <SelectPrimitive.Item\n ref={ref}\n className={cn(\n 'relative flex w-full cursor-default select-none items-center py-2 pl-8 pr-2 text-sm font-light text-white/80 outline-none transition-colors focus:bg-white/5 focus:text-white data-[disabled]:pointer-events-none data-[disabled]:opacity-50',\n className,\n )}\n {...props}\n >\n <span className=\"absolute left-2 flex h-3.5 w-3.5 items-center justify-center\">\n <SelectPrimitive.ItemIndicator>\n <Check className=\"h-4 w-4 text-primary-light\" />\n </SelectPrimitive.ItemIndicator>\n </span>\n <SelectPrimitive.ItemText>{children}</SelectPrimitive.ItemText>\n </SelectPrimitive.Item>\n));\nSelectItem.displayName = SelectPrimitive.Item.displayName;\n\nconst SelectSeparator = React.forwardRef<\n React.ComponentRef<typeof SelectPrimitive.Separator>,\n React.ComponentPropsWithoutRef<typeof SelectPrimitive.Separator>\n>(({ className, ...props }, ref) => (\n <SelectPrimitive.Separator\n ref={ref}\n className={cn('-mx-1 my-1 h-px bg-white/5', className)}\n {...props}\n />\n));\nSelectSeparator.displayName = SelectPrimitive.Separator.displayName;\n\nconst SelectLabel = React.forwardRef<\n React.ComponentRef<typeof SelectPrimitive.Label>,\n React.ComponentPropsWithoutRef<typeof SelectPrimitive.Label>\n>(({ className, ...props }, ref) => (\n <SelectPrimitive.Label\n ref={ref}\n className={cn('py-1.5 pl-8 pr-2 text-label uppercase tracking-widest text-white/30', className)}\n {...props}\n />\n));\nSelectLabel.displayName = SelectPrimitive.Label.displayName;\n\nexport {\n Select,\n SelectGroup,\n SelectValue,\n SelectTrigger,\n SelectContent,\n SelectItem,\n SelectSeparator,\n SelectLabel,\n SelectScrollUpButton,\n SelectScrollDownButton,\n};\n","'use client';\n\nimport * as React from 'react';\nimport * as SwitchPrimitive from '@radix-ui/react-switch';\nimport { cn } from '../../lib/utils';\n\n/**\n * Toggle / Switch — Glass toggle with geometric styling\n *\n * From the HTML: clip-path container, primary accent when checked.\n */\n\nexport interface ToggleProps\n extends React.ComponentPropsWithoutRef<typeof SwitchPrimitive.Root> {\n label?: string;\n description?: string;\n}\n\nconst Toggle = React.forwardRef<\n React.ComponentRef<typeof SwitchPrimitive.Root>,\n ToggleProps\n>(({ className, label, description, ...props }, ref) => {\n const id = React.useId();\n\n if (label) {\n return (\n <div\n className={cn(\n 'flex items-center justify-between border border-white/5 bg-white/5 p-4 clip-geo-br',\n className,\n )}\n >\n <div>\n <label htmlFor={id} className=\"text-xs font-bold uppercase tracking-wide text-white\">\n {label}\n </label>\n {description && (\n <p className=\"mt-1 font-mono text-mono-xs text-white/40\">{description}</p>\n )}\n </div>\n <SwitchPrimitive.Root\n id={id}\n ref={ref}\n className=\"peer inline-flex h-5 w-10 shrink-0 cursor-pointer items-center rounded-none border border-white/10 bg-black/40 transition-colors data-[state=checked]:border-primary-light data-[state=checked]:bg-primary/50 focus-visible:outline-none focus-visible:ring-2 focus-visible:ring-primary-light/50\"\n {...props}\n >\n <SwitchPrimitive.Thumb className=\"pointer-events-none block h-4 w-4 border border-white/10 bg-white/20 transition-transform data-[state=checked]:translate-x-5 data-[state=checked]:border-white data-[state=checked]:bg-white data-[state=unchecked]:translate-x-0\" />\n </SwitchPrimitive.Root>\n </div>\n );\n }\n\n return (\n <SwitchPrimitive.Root\n ref={ref}\n className={cn(\n 'peer inline-flex h-5 w-10 shrink-0 cursor-pointer items-center rounded-none border border-white/10 bg-black/40 transition-colors data-[state=checked]:border-primary-light data-[state=checked]:bg-primary/50 focus-visible:outline-none focus-visible:ring-2 focus-visible:ring-primary-light/50',\n className,\n )}\n {...props}\n >\n <SwitchPrimitive.Thumb className=\"pointer-events-none block h-4 w-4 border border-white/10 bg-white/20 transition-transform data-[state=checked]:translate-x-5 data-[state=checked]:border-white data-[state=checked]:bg-white data-[state=unchecked]:translate-x-0\" />\n </SwitchPrimitive.Root>\n );\n});\nToggle.displayName = 'Toggle';\n\nexport { Toggle };\n","import * as React from 'react';\nimport { cva, type VariantProps } from 'class-variance-authority';\nimport { cn } from '../../lib/utils';\n\n/**\n * Badge — Status badges & context indicators\n *\n * Standard rectangular badges + status flow indicators.\n */\nconst badgeVariants = cva(\n 'inline-flex items-center gap-2 text-caption font-bold uppercase tracking-wider transition-colors',\n {\n variants: {\n variant: {\n default:\n 'rounded-md border border-white/10 bg-white/5 px-3 py-1.5 text-white/80',\n primary:\n 'rounded-md border border-primary-light/30 bg-primary/20 px-3 py-1.5 text-primary-light',\n success:\n 'rounded-md border border-semantic-success/30 bg-semantic-success/10 px-3 py-1.5 text-emerald-200',\n warning:\n 'rounded-md border border-semantic-warning/30 bg-semantic-warning/10 px-3 py-1.5 text-amber-200',\n error:\n 'rounded-md border border-semantic-error/30 bg-semantic-error/10 px-3 py-1.5 text-rose-200',\n info:\n 'rounded-md border border-semantic-info/30 bg-semantic-info/10 px-3 py-1.5 text-blue-200',\n\n // ─── Flow status (from Brand Assets HTML) ──\n 'in-flow':\n 'rounded-md border border-indigo-500/30 bg-indigo-500/20 px-3 py-1.5 text-indigo-200 shadow-[0_0_15px_rgba(99,102,241,0.15)]',\n 'deep-work':\n 'rounded-md border border-fuchsia-500/20 bg-fuchsia-500/10 px-3 py-1.5 text-fuchsia-200',\n 'high-energy':\n 'rounded-md border border-emerald-500/20 bg-emerald-500/10 px-3 py-1.5 text-emerald-200',\n\n // ─── Cream Light theme ─────────────────────\n 'cream-default':\n 'rounded-full border border-neutral-200 bg-white/50 px-3 py-1 text-neutral-600 backdrop-blur-sm',\n 'cream-primary':\n 'rounded-full border border-primary/20 bg-primary/5 px-3 py-1 text-primary',\n },\n },\n defaultVariants: {\n variant: 'default',\n },\n },\n);\n\nexport interface BadgeProps\n extends React.HTMLAttributes<HTMLDivElement>,\n VariantProps<typeof badgeVariants> {\n /** Animated pulse dot */\n dot?: boolean;\n /** Dot color class (e.g. 'bg-indigo-400') */\n dotColor?: string;\n}\n\nfunction Badge({ className, variant, dot, dotColor, children, ...props }: BadgeProps) {\n return (\n <div className={cn(badgeVariants({ variant }), className)} {...props}>\n {dot && (\n <span\n className={cn(\n 'h-1.5 w-1.5 rounded-full animate-pulse',\n dotColor || 'bg-current',\n variant === 'in-flow' && 'shadow-[0_0_8px_rgba(129,140,248,0.8)]',\n )}\n />\n )}\n {children}\n </div>\n );\n}\n\nexport { Badge, badgeVariants };\n","'use client';\n\nimport * as React from 'react';\nimport * as AvatarPrimitive from '@radix-ui/react-avatar';\nimport { cva, type VariantProps } from 'class-variance-authority';\nimport { cn } from '../../lib/utils';\n\n/**\n * Avatar — Geometric asymmetric avatars\n *\n * From the Brand Assets HTML: asymmetric shapes with gradient backgrounds,\n * geometric corner accents, status dot indicators.\n */\nconst avatarVariants = cva(\n 'relative overflow-hidden border border-white/10 flex items-center justify-center',\n {\n variants: {\n shape: {\n circle: 'rounded-full',\n 'asym-1': 'rounded-asym-1',\n 'asym-2': 'rounded-asym-2',\n geo: 'rounded-geo',\n 'geo-inv': 'rounded-geo-inv',\n square: 'rounded-lg',\n },\n size: {\n sm: 'h-8 w-8',\n default: 'h-10 w-10',\n lg: 'h-16 w-16',\n xl: 'h-20 w-20',\n },\n },\n defaultVariants: {\n shape: 'circle',\n size: 'default',\n },\n },\n);\n\nexport interface AvatarProps\n extends React.ComponentPropsWithoutRef<typeof AvatarPrimitive.Root>,\n VariantProps<typeof avatarVariants> {\n /** Online status indicator */\n status?: 'online' | 'offline' | 'away' | 'busy';\n /** Status dot color class override */\n statusColor?: string;\n /** Gradient background for fallback */\n gradient?: string;\n}\n\nconst Avatar = React.forwardRef<\n React.ComponentRef<typeof AvatarPrimitive.Root>,\n AvatarProps\n>(({ className, shape, size, status, statusColor, gradient, ...props }, ref) => (\n <div className=\"relative inline-flex\">\n <AvatarPrimitive.Root\n ref={ref}\n className={cn(\n avatarVariants({ shape, size }),\n gradient && `bg-gradient-to-br ${gradient}`,\n className,\n )}\n {...props}\n />\n {status && (\n <span\n className={cn(\n 'absolute -bottom-0.5 -right-0.5 rounded-full border-2 border-card-surface',\n size === 'sm' && 'h-2.5 w-2.5',\n size === 'default' && 'h-3 w-3',\n (size === 'lg' || size === 'xl') && 'h-3.5 w-3.5',\n statusColor ||\n (status === 'online' && 'bg-green-500'),\n status === 'offline' && 'bg-neutral-500',\n status === 'away' && 'bg-amber-500',\n status === 'busy' && 'bg-red-500',\n )}\n />\n )}\n {/* Geometric corner accent for lg/xl */}\n {(size === 'lg' || size === 'xl') && shape !== 'circle' && (\n <div className=\"absolute bottom-0 right-0 h-3 w-3 rotate-45 translate-x-1/2 translate-y-1/2 bg-primary-light\" />\n )}\n </div>\n));\nAvatar.displayName = 'Avatar';\n\nconst AvatarImage = React.forwardRef<\n React.ComponentRef<typeof AvatarPrimitive.Image>,\n React.ComponentPropsWithoutRef<typeof AvatarPrimitive.Image>\n>(({ className, ...props }, ref) => (\n <AvatarPrimitive.Image\n ref={ref}\n className={cn('aspect-square h-full w-full object-cover', className)}\n {...props}\n />\n));\nAvatarImage.displayName = 'AvatarImage';\n\nconst AvatarFallback = React.forwardRef<\n React.ComponentRef<typeof AvatarPrimitive.Fallback>,\n React.ComponentPropsWithoutRef<typeof AvatarPrimitive.Fallback>\n>(({ className, ...props }, ref) => (\n <AvatarPrimitive.Fallback\n ref={ref}\n className={cn(\n 'flex h-full w-full items-center justify-center text-sm font-medium text-white/90',\n className,\n )}\n {...props}\n />\n));\nAvatarFallback.displayName = 'AvatarFallback';\n\nexport { Avatar, AvatarImage, AvatarFallback, avatarVariants };\n","'use client';\n\nimport * as React from 'react';\nimport * as TooltipPrimitive from '@radix-ui/react-tooltip';\nimport { cn } from '../../lib/utils';\n\n/**\n * Tooltip — Glass panel tooltip\n *\n * From the design system: glass background, arrow, clean typography.\n */\n\nconst TooltipProvider = TooltipPrimitive.Provider;\nconst Tooltip = TooltipPrimitive.Root;\nconst TooltipTrigger = TooltipPrimitive.Trigger;\n\nconst TooltipContent = React.forwardRef<\n React.ComponentRef<typeof TooltipPrimitive.Content>,\n React.ComponentPropsWithoutRef<typeof TooltipPrimitive.Content>\n>(({ className, sideOffset = 12, ...props }, ref) => (\n <TooltipPrimitive.Portal>\n <TooltipPrimitive.Content\n ref={ref}\n sideOffset={sideOffset}\n className={cn(\n 'z-50 max-w-[14rem] rounded-xl border border-white/20 bg-[#1a1a1d] p-4 text-xs leading-relaxed text-slate-200 shadow-[0_10px_40px_rgba(0,0,0,0.5)] backdrop-blur-2xl animate-in fade-in-0 zoom-in-95 data-[state=closed]:animate-out data-[state=closed]:fade-out-0 data-[state=closed]:zoom-out-95 data-[side=bottom]:slide-in-from-top-2 data-[side=left]:slide-in-from-right-2 data-[side=right]:slide-in-from-left-2 data-[side=top]:slide-in-from-bottom-2',\n className,\n )}\n {...props}\n />\n </TooltipPrimitive.Portal>\n));\nTooltipContent.displayName = TooltipPrimitive.Content.displayName;\n\nexport { Tooltip, TooltipTrigger, TooltipContent, TooltipProvider };\n","import * as React from 'react';\nimport { cn } from '../../lib/utils';\n\n/**\n * Skeleton — Shimmer loading placeholder\n *\n * From the design system: bg-white/10 with a sliding gradient shimmer animation.\n */\n\nexport interface SkeletonProps extends React.HTMLAttributes<HTMLDivElement> {\n /** Shape variant */\n variant?: 'rectangular' | 'circular' | 'rounded';\n}\n\nfunction Skeleton({ className, variant = 'rounded', ...props }: SkeletonProps) {\n return (\n <div\n className={cn(\n 'skeleton-shimmer',\n variant === 'circular' && 'rounded-full',\n variant === 'rounded' && 'rounded-lg',\n variant === 'rectangular' && 'rounded-none',\n className,\n )}\n {...props}\n />\n );\n}\n\n/**\n * SkeletonCard — Pre-built skeleton card from the design system\n */\nfunction SkeletonCard({ className, ...props }: React.HTMLAttributes<HTMLDivElement>) {\n return (\n <div className={cn('glass-panel space-y-6 p-6', className)} {...props}>\n <div className=\"flex items-center gap-5\">\n <Skeleton className=\"h-14 w-14 shrink-0\" variant=\"rounded\" />\n <div className=\"flex-1 space-y-2.5\">\n <Skeleton className=\"h-4 w-2/3\" />\n <Skeleton className=\"h-3 w-1/2 opacity-60\" />\n </div>\n </div>\n <div className=\"space-y-3 pt-2\">\n <Skeleton className=\"h-24 w-full rounded-xl\" />\n <div className=\"flex justify-between pt-1\">\n <Skeleton className=\"h-3 w-20 opacity-40\" />\n <Skeleton className=\"h-3 w-20 opacity-40\" />\n </div>\n </div>\n </div>\n );\n}\n\nexport { Skeleton, SkeletonCard };\n","'use client';\n\nimport * as React from 'react';\nimport * as ProgressPrimitive from '@radix-ui/react-progress';\nimport { cn } from '../../lib/utils';\n\n/**\n * Progress — Neon glow progress bar\n *\n * From the design system: thin bar with primary fill + trailing glow + end marker.\n */\n\nexport interface ProgressProps\n extends React.ComponentPropsWithoutRef<typeof ProgressPrimitive.Root> {\n /** Show percentage label */\n showLabel?: boolean;\n /** Label text above bar */\n label?: string;\n /** Visual variant */\n variant?: 'default' | 'cream';\n}\n\nconst Progress = React.forwardRef<\n React.ComponentRef<typeof ProgressPrimitive.Root>,\n ProgressProps\n>(({ className, value, showLabel, label, variant = 'default', ...props }, ref) => (\n <div className=\"space-y-2\">\n {(label || showLabel) && (\n <div className=\"flex items-end justify-between\">\n {label && (\n <span className=\"text-label uppercase tracking-widest text-white/40\">{label}</span>\n )}\n {showLabel && (\n <span className=\"font-mono text-lg text-primary-light\">\n {value}\n <span className=\"text-xs text-white/40\">%</span>\n </span>\n )}\n </div>\n )}\n <ProgressPrimitive.Root\n ref={ref}\n className={cn(\n 'relative h-1 w-full overflow-hidden',\n variant === 'default' ? 'bg-white/5' : 'bg-black/5 rounded-full',\n className,\n )}\n {...props}\n >\n <ProgressPrimitive.Indicator\n className={cn(\n 'h-full transition-all duration-500',\n variant === 'default'\n ? 'bg-primary-light shadow-[0_0_15px_rgba(79,57,246,0.8)]'\n : 'bg-primary rounded-full opacity-80',\n )}\n style={{ width: `${value || 0}%` }}\n >\n {variant === 'default' && (\n <div className=\"absolute bottom-0 right-0 top-0 w-1 bg-white\" />\n )}\n </ProgressPrimitive.Indicator>\n </ProgressPrimitive.Root>\n </div>\n));\nProgress.displayName = 'Progress';\n\nexport { Progress };\n","import * as React from 'react';\nimport { cva, type VariantProps } from 'class-variance-authority';\nimport { X } from 'lucide-react';\nimport { cn } from '../../lib/utils';\n\n/**\n * Alert — Asymmetric alerts with floating icon wrapper\n *\n * From the Feedback & Messaging HTML:\n * - border-l-4 with semantic color\n * - floating icon wrapper that rotates slightly and straightens on hover\n * - glass background\n */\nconst alertVariants = cva(\n 'group relative overflow-visible rounded-r-2xl rounded-l-md border-l-4 border-y border-r border-white/10 bg-card-surface/80 py-5 pl-12 pr-6 shadow-lg backdrop-blur-xl',\n {\n variants: {\n variant: {\n success: 'border-l-emerald-500',\n error: 'border-l-rose-500',\n warning: 'border-l-amber-400',\n info: 'border-l-blue-500',\n },\n },\n defaultVariants: {\n variant: 'info',\n },\n },\n);\n\nconst alertIconVariants = cva(\n 'absolute -left-4 top-1/2 z-10 flex h-10 w-10 -translate-y-1/2 items-center justify-center rounded-xl border border-white/20 shadow-lg transition-transform duration-300 group-hover:rotate-0',\n {\n variants: {\n variant: {\n success: 'bg-emerald-500 text-black rotate-[-6deg]',\n error: 'bg-rose-500 text-white rotate-[6deg]',\n warning: 'bg-amber-400 text-black rotate-[-3deg]',\n info: 'bg-blue-500 text-white rotate-[3deg]',\n },\n },\n defaultVariants: {\n variant: 'info',\n },\n },\n);\n\nexport interface AlertProps\n extends React.HTMLAttributes<HTMLDivElement>,\n VariantProps<typeof alertVariants> {\n /** Alert title */\n title: string;\n /** Alert description */\n description?: string;\n /** Custom icon (lucide-react icon or any ReactNode) */\n icon?: React.ReactNode;\n /** Close handler — shows close button when provided */\n onClose?: () => void;\n /** Action button */\n action?: {\n label: string;\n onClick: () => void;\n };\n}\n\nfunction Alert({\n className,\n variant,\n title,\n description,\n icon,\n onClose,\n action,\n ...props\n}: AlertProps) {\n return (\n <div className={cn(alertVariants({ variant }), className)} role=\"alert\" {...props}>\n {/* Floating icon */}\n <div className={cn(alertIconVariants({ variant }))}>\n {icon || (\n <span className=\"text-[24px]\">\n {variant === 'success' && '✓'}\n {variant === 'error' && '!'}\n {variant === 'warning' && '⚠'}\n {variant === 'info' && 'ℹ'}\n </span>\n )}\n </div>\n\n <div className=\"flex items-start justify-between gap-4\">\n <div className=\"flex-1\">\n <h4 className=\"text-base font-semibold text-white\">{title}</h4>\n {description && (\n <p className=\"mt-1 text-sm font-light text-slate-300\">{description}</p>\n )}\n </div>\n\n <div className=\"flex items-center gap-2\">\n {action && (\n <button\n onClick={action.onClick}\n className={cn(\n 'whitespace-nowrap rounded-lg border px-3 py-1.5 text-xs font-semibold tracking-wide transition-all',\n variant === 'error' &&\n 'border-rose-500/30 bg-rose-500/20 text-rose-300 hover:bg-rose-500/30',\n variant === 'success' &&\n 'border-emerald-500/30 bg-emerald-500/20 text-emerald-300 hover:bg-emerald-500/30',\n variant === 'warning' &&\n 'border-amber-400/30 bg-amber-400/20 text-amber-300 hover:bg-amber-400/30',\n variant === 'info' &&\n 'border-blue-500/30 bg-blue-500/20 text-blue-300 hover:bg-blue-500/30',\n )}\n >\n {action.label}\n </button>\n )}\n {onClose && (\n <button\n onClick={onClose}\n className=\"p-1 text-slate-400 transition-colors hover:text-white\"\n aria-label=\"Close alert\"\n >\n <X className=\"h-4 w-4\" />\n </button>\n )}\n </div>\n </div>\n </div>\n );\n}\n\nexport { Alert, alertVariants };\n","import * as React from 'react';\nimport { X } from 'lucide-react';\nimport { cn } from '../../lib/utils';\n\n/**\n * Toast — Asymmetric Glow Toasts\n *\n * From the Feedback HTML:\n * - Glass panel with rounded corners\n * - Asymmetric glow shadow behind (offset, blurred)\n * - Optional progress bar, avatar, close button\n *\n * NOTE: This is the visual component only.\n * For a full toast system, pair with Sonner or a toast context.\n */\n\nexport interface ToastProps extends React.HTMLAttributes<HTMLDivElement> {\n /** Glow color class, e.g. 'bg-blue-500/30' */\n glowColor?: string;\n /** Glow offset direction */\n glowDirection?: 'right' | 'left';\n /** Close handler */\n onClose?: () => void;\n}\n\nfunction Toast({\n className,\n glowColor = 'bg-blue-500/30',\n glowDirection = 'right',\n onClose,\n children,\n ...props\n}: ToastProps) {\n return (\n <div className={cn('group relative', className)} {...props}>\n {/* Asymmetric glow behind */}\n <div\n className={cn(\n 'absolute inset-0 -z-10 rounded-2xl opacity-40 blur-xl transition-all duration-500',\n glowColor,\n glowDirection === 'right'\n ? 'translate-x-2 translate-y-2 group-hover:translate-x-1 group-hover:translate-y-1'\n : '-translate-x-2 translate-y-2 group-hover:-translate-x-1 group-hover:translate-y-1',\n )}\n />\n {/* Main toast body */}\n <div className=\"relative z-10 flex min-w-[320px] items-center gap-4 rounded-2xl border border-white/10 bg-card-surface px-5 py-4 shadow-2xl backdrop-blur-2xl\">\n {children}\n {onClose && (\n <button\n onClick={onClose}\n className=\"text-slate-500 transition-colors hover:text-white\"\n aria-label=\"Dismiss\"\n >\n <X className=\"h-4 w-4\" />\n </button>\n )}\n </div>\n </div>\n );\n}\n\n/**\n * ToastProgress — Progress bar inside a toast\n */\nexport interface ToastProgressProps extends React.HTMLAttributes<HTMLDivElement> {\n value: number;\n label?: string;\n}\n\nfunction ToastProgress({ value, label, className, ...props }: ToastProgressProps) {\n return (\n <div className={cn('flex-1', className)} {...props}>\n {label && (\n <div className=\"mb-1.5 flex items-center justify-between\">\n <p className=\"text-sm font-semibold text-white\">{label}</p>\n <span className=\"text-xs font-bold text-white\">{value}%</span>\n </div>\n )}\n <div className=\"h-1 w-full overflow-hidden rounded-full bg-white/10\">\n <div\n className=\"h-full bg-gradient-to-r from-blue-500 to-purple-500 shadow-[0_0_10px_rgba(168,85,247,0.5)] transition-all duration-300\"\n style={{ width: `${value}%` }}\n />\n </div>\n </div>\n );\n}\n\nexport { Toast, ToastProgress };\n","import * as React from 'react';\nimport { cn } from '../../lib/utils';\n\n/**\n * EmptyState — Human-Centric Empty State\n *\n * From the Feedback HTML:\n * - Glass panel with gradient overlay\n * - Animated orb with floating colored dots\n * - Central icon inside bordered circle\n * - Sliding CTA button\n */\n\nexport interface EmptyStateProps extends React.HTMLAttributes<HTMLDivElement> {\n /** Icon to display in the center orb */\n icon?: React.ReactNode;\n /** Title text */\n title: string;\n /** Description text */\n description?: string;\n /** CTA button label */\n actionLabel?: string;\n /** CTA button handler */\n onAction?: () => void;\n}\n\nfunction EmptyState({\n className,\n icon,\n title,\n description,\n actionLabel,\n onAction,\n ...props\n}: EmptyStateProps) {\n return (\n <div\n className={cn(\n 'glass-panel group relative flex flex-col items-center overflow-hidden p-10 text-center',\n className,\n )}\n {...props}\n >\n {/* Gradient overlay */}\n <div className=\"pointer-events-none absolute left-0 right-0 top-0 h-32 bg-gradient-to-b from-primary/10 to-transparent\" />\n\n {/* Animated orb */}\n <div className=\"relative mb-6 h-32 w-32\">\n {/* Outer spinning ring */}\n <div className=\"absolute inset-0 animate-[spin_10s_linear_infinite] rounded-full border border-white/5\" />\n {/* Inner glow */}\n <div className=\"absolute inset-4 rounded-full bg-gradient-to-tr from-primary/30 to-purple-500/10 blur-xl transition-all duration-700 group-hover:blur-2xl\" />\n {/* Center icon container */}\n <div className=\"relative flex h-full w-full items-center justify-center\">\n <div className=\"z-10 flex h-20 w-20 items-center justify-center rounded-full border border-white/10 bg-card-surface shadow-2xl\">\n {icon || (\n <span className=\"text-4xl text-slate-200\">🧘</span>\n )}\n </div>\n {/* Floating accent dots */}\n <div className=\"absolute right-4 top-0 h-3 w-3 rounded-full bg-emerald-400 blur-[1px]\" />\n <div className=\"absolute bottom-2 left-6 h-2 w-2 rounded-full bg-purple-400 blur-[1px]\" />\n </div>\n </div>\n\n {/* Text */}\n <h4 className=\"text-xl font-medium tracking-tight text-white\">{title}</h4>\n {description && (\n <p className=\"mt-3 max-w-[260px] text-sm leading-relaxed text-slate-400\">\n {description}\n </p>\n )}\n\n {/* CTA button with slide animation */}\n {actionLabel && onAction && (\n <button\n onClick={onAction}\n className=\"group/btn relative mt-8 inline-flex items-center justify-center overflow-hidden rounded-full border border-white/20 px-6 py-2.5 font-medium text-white shadow-md transition duration-300 ease-out\"\n >\n <span className=\"absolute inset-0 flex h-full w-full -translate-x-full items-center justify-center bg-white/10 text-white transition duration-300 ease group-hover/btn:translate-x-0\">\n →\n </span>\n <span className=\"absolute flex h-full w-full items-center justify-center text-white transition-all duration-300 group-hover/btn:translate-x-full\">\n {actionLabel}\n </span>\n <span className=\"invisible relative\">{actionLabel}</span>\n </button>\n )}\n </div>\n );\n}\n\nexport { EmptyState };\n","import * as React from 'react';\nimport { cva, type VariantProps } from 'class-variance-authority';\nimport { cn } from '../../lib/utils';\n\n/**\n * GlassPanel — Core layout container\n *\n * Multiple variants from the design system:\n * - `default`: standard glass with clip-path\n * - `highlight`: primary-tinted glass with asymmetric borders\n * - `alt`: clip-path top-left variant\n * - `cream`: light theme glass\n * - `flat`: no clip-path, rounded corners\n */\nconst glassPanelVariants = cva('relative transition-all duration-300', {\n variants: {\n variant: {\n default: 'glass-panel',\n highlight: 'glass-panel-highlight',\n alt: 'glass-panel-alt',\n cream: 'glass-panel-cream',\n flat: 'rounded-2xl border border-white/10 bg-card-surface/80 shadow-glass-lg backdrop-blur-2xl',\n },\n corners: {\n none: '',\n tl: 'geometric-corner',\n br: 'geometric-corner-br',\n both: 'geometric-corner-both',\n },\n padding: {\n none: '',\n sm: 'p-6',\n default: 'p-8',\n lg: 'p-10',\n xl: 'p-12',\n },\n },\n defaultVariants: {\n variant: 'default',\n corners: 'none',\n padding: 'default',\n },\n});\n\nexport interface GlassPanelProps\n extends React.HTMLAttributes<HTMLDivElement>,\n VariantProps<typeof glassPanelVariants> {\n /** Add the in-flow indicator dot */\n indicator?: boolean;\n}\n\nfunction GlassPanel({\n className,\n variant,\n corners,\n padding,\n indicator,\n children,\n ...props\n}: GlassPanelProps) {\n return (\n <div className={cn(glassPanelVariants({ variant, corners, padding }), className)} {...props}>\n {indicator && <div className=\"in-flow-indicator\" />}\n {children}\n </div>\n );\n}\n\nexport { GlassPanel, glassPanelVariants };\n","import * as React from 'react';\nimport { cn } from '../../lib/utils';\n\n/**\n * Dock — Floating bottom navigation bar\n *\n * Glass background with icon buttons, separators, active state glow,\n * tooltips on hover. Derived from the Performance UI Library HTML.\n */\n\nexport interface DockItem {\n id: string;\n icon: React.ReactNode;\n label: string;\n onClick?: () => void;\n active?: boolean;\n badge?: number;\n}\n\nexport interface DockSeparator {\n type: 'separator';\n}\n\nexport type DockEntry = DockItem | DockSeparator;\n\nfunction isDockSeparator(entry: DockEntry): entry is DockSeparator {\n return 'type' in entry && entry.type === 'separator';\n}\n\nexport interface DockProps extends React.HTMLAttributes<HTMLDivElement> {\n items: DockEntry[];\n position?: 'bottom' | 'top';\n}\n\nfunction Dock({ items, position = 'bottom', className, ...props }: DockProps) {\n return (\n <div\n className={cn(\n 'fixed left-1/2 z-50 -translate-x-1/2',\n position === 'bottom' ? 'bottom-6' : 'top-6',\n className,\n )}\n {...props}\n >\n <nav\n className={cn(\n 'flex items-center gap-1 rounded-2xl border border-white/10',\n 'bg-card-surface/90 px-3 py-2 shadow-glass-xl backdrop-blur-2xl',\n 'transition-shadow duration-300 hover:shadow-neon-glow',\n )}\n >\n {items.map((entry, i) => {\n if (isDockSeparator(entry)) {\n return (\n <div\n key={`sep-${i}`}\n className=\"mx-1.5 h-6 w-px bg-gradient-to-b from-transparent via-white/20 to-transparent\"\n />\n );\n }\n\n return <DockButton key={entry.id} item={entry} />;\n })}\n </nav>\n </div>\n );\n}\n\ninterface DockButtonProps {\n item: DockItem;\n}\n\nfunction DockButton({ item }: DockButtonProps) {\n const { icon, label, onClick, active, badge } = item;\n\n return (\n <div className=\"group relative\">\n <button\n type=\"button\"\n onClick={onClick}\n aria-label={label}\n aria-current={active ? 'page' : undefined}\n className={cn(\n 'relative flex h-10 w-10 items-center justify-center rounded-xl',\n 'text-neutral-400 transition-all duration-300',\n 'hover:bg-white/5 hover:text-white',\n active && [\n 'bg-primary/15 text-primary-light',\n 'shadow-[0_0_12px_rgba(79,57,246,0.3)]',\n ],\n )}\n >\n {icon}\n\n {typeof badge === 'number' && badge > 0 && (\n <span\n className={cn(\n 'absolute -right-0.5 -top-0.5 flex h-4 min-w-4 items-center justify-center',\n 'rounded-full bg-error px-1 text-[10px] font-semibold text-white',\n 'shadow-[0_0_8px_rgba(224,17,95,0.4)]',\n )}\n >\n {badge > 99 ? '99+' : badge}\n </span>\n )}\n </button>\n\n {/* Tooltip */}\n <span\n className={cn(\n 'pointer-events-none absolute -top-10 left-1/2 -translate-x-1/2',\n 'whitespace-nowrap rounded-lg bg-neutral-800/95 px-2.5 py-1',\n 'text-xs font-medium text-white shadow-glass-md backdrop-blur-lg',\n 'opacity-0 transition-all duration-200',\n 'group-hover:-top-11 group-hover:opacity-100',\n )}\n >\n {label}\n <span className=\"absolute -bottom-1 left-1/2 h-2 w-2 -translate-x-1/2 rotate-45 bg-neutral-800/95\" />\n </span>\n </div>\n );\n}\n\nexport { Dock, DockButton };\n","import * as React from 'react';\nimport { cn } from '../../lib/utils';\n\n/**\n * Logo — Organify geometric diamond logo\n *\n * Rotating diamond inside bordered container with optional text.\n * From Brand Assets & Icons HTML.\n */\n\nexport interface LogoProps extends React.HTMLAttributes<HTMLDivElement> {\n size?: 'sm' | 'default' | 'lg' | 'xl';\n variant?: 'default' | 'minimal' | 'full';\n animated?: boolean;\n}\n\nconst sizes = {\n sm: { container: 'h-8 w-8', diamond: 'h-3.5 w-3.5', text: 'text-sm', gap: 'gap-2' },\n default: { container: 'h-10 w-10', diamond: 'h-4 w-4', text: 'text-base', gap: 'gap-2.5' },\n lg: { container: 'h-14 w-14', diamond: 'h-5.5 w-5.5', text: 'text-lg', gap: 'gap-3' },\n xl: { container: 'h-20 w-20', diamond: 'h-8 w-8', text: 'text-2xl', gap: 'gap-4' },\n};\n\nfunction Logo({ size = 'default', variant = 'default', animated = false, className, ...props }: LogoProps) {\n const s = sizes[size];\n\n return (\n <div\n className={cn(\n 'flex items-center',\n s.gap,\n className,\n )}\n {...props}\n >\n {/* Diamond mark */}\n <div\n className={cn(\n 'relative flex items-center justify-center',\n s.container,\n 'rounded-xl border-2 border-primary/30',\n 'bg-gradient-to-br from-primary/10 to-transparent',\n 'shadow-[0_0_20px_rgba(79,57,246,0.15)]',\n 'transition-all duration-500',\n animated && 'hover:border-primary/50 hover:shadow-[0_0_30px_rgba(79,57,246,0.3)]',\n )}\n >\n <div\n className={cn(\n s.diamond,\n 'rotate-45 rounded-sm bg-gradient-to-br from-primary to-primary-light',\n 'shadow-[0_0_12px_rgba(79,57,246,0.5)]',\n 'transition-transform duration-500',\n animated && 'hover:rotate-[135deg]',\n )}\n />\n\n {/* Corner accent line */}\n <div className=\"absolute -right-1 -top-1 h-3 w-3 border-r-2 border-t-2 border-primary/40 rounded-tr-md\" />\n </div>\n\n {/* Wordmark */}\n {variant !== 'minimal' && (\n <div className=\"flex flex-col\">\n <span\n className={cn(\n s.text,\n 'font-semibold tracking-tight text-white',\n )}\n >\n Organify\n </span>\n {variant === 'full' && (\n <span className=\"font-mono text-[10px] uppercase tracking-widest text-neutral-500\">\n Gestão inteligente\n </span>\n )}\n </div>\n )}\n </div>\n );\n}\n\nexport { Logo };\n","import * as React from 'react';\nimport { cva, type VariantProps } from 'class-variance-authority';\nimport { cn } from '../../lib/utils';\n\n/**\n * GeometricIcon — Diamond-shaped icon container\n *\n * Rotate-45 border with icon inside, hover transition from rotated to straight.\n * From Brand Assets & Icons HTML.\n */\nconst geometricIconVariants = cva(\n [\n 'relative inline-flex items-center justify-center',\n 'rotate-45 transition-all duration-500',\n ],\n {\n variants: {\n variant: {\n default: 'border-2 border-primary/30 bg-primary/10 shadow-[0_0_16px_rgba(79,57,246,0.2)]',\n filled: 'bg-gradient-to-br from-primary to-primary-light shadow-[0_0_20px_rgba(79,57,246,0.4)]',\n outline: 'border-2 border-white/20 bg-transparent',\n success: 'border-2 border-success/30 bg-success/10 shadow-[0_0_16px_rgba(16,185,129,0.2)]',\n warning: 'border-2 border-warning/30 bg-warning/10 shadow-[0_0_16px_rgba(245,158,11,0.2)]',\n error: 'border-2 border-error/30 bg-error/10 shadow-[0_0_16px_rgba(224,17,95,0.2)]',\n cream: 'border-2 border-primary/20 bg-cream-card shadow-cream-sm',\n },\n size: {\n sm: 'h-8 w-8 rounded-md',\n default: 'h-10 w-10 rounded-lg',\n lg: 'h-14 w-14 rounded-xl',\n xl: 'h-20 w-20 rounded-2xl',\n },\n },\n defaultVariants: {\n variant: 'default',\n size: 'default',\n },\n },\n);\n\nconst iconSizes = {\n sm: 'h-3.5 w-3.5',\n default: 'h-4.5 w-4.5',\n lg: 'h-6 w-6',\n xl: 'h-9 w-9',\n};\n\nexport interface GeometricIconProps\n extends React.HTMLAttributes<HTMLDivElement>,\n VariantProps<typeof geometricIconVariants> {\n icon: React.ReactNode;\n /** Straighten the icon on hover */\n interactive?: boolean;\n /** Show corner accent */\n accent?: boolean;\n}\n\nfunction GeometricIcon({\n icon,\n variant,\n size = 'default',\n interactive = false,\n accent = false,\n className,\n ...props\n}: GeometricIconProps) {\n return (\n <div\n className={cn(\n geometricIconVariants({ variant, size }),\n interactive && 'cursor-pointer hover:rotate-0 hover:scale-110',\n className,\n )}\n {...props}\n >\n {/* Counter-rotate the icon so it stays upright */}\n <span className={cn('-rotate-45 transition-transform duration-500', iconSizes[size ?? 'default'])}>\n {icon}\n </span>\n\n {/* Corner accent */}\n {accent && (\n <div className=\"absolute -right-0.5 -top-0.5 h-2.5 w-2.5 border-r-2 border-t-2 border-current opacity-40 rounded-tr-sm\" />\n )}\n </div>\n );\n}\n\nexport { GeometricIcon, geometricIconVariants };\n","import * as React from 'react';\nimport { cva, type VariantProps } from 'class-variance-authority';\nimport { cn } from '../../lib/utils';\n\n/**\n * MetricCard — Glass panel with large metric, label, and optional progress\n *\n * From Advanced Product Components HTML.\n */\nconst metricCardVariants = cva(\n [\n 'relative overflow-hidden rounded-2xl border p-6',\n 'transition-all duration-300',\n ],\n {\n variants: {\n variant: {\n default: [\n 'border-white/10 bg-card-surface/80 backdrop-blur-2xl',\n 'shadow-glass-lg hover:shadow-glass-xl',\n ],\n highlight: [\n 'border-primary/20 bg-gradient-to-br from-primary/5 to-transparent backdrop-blur-2xl',\n 'shadow-glass-lg hover:shadow-neon-glow',\n ],\n cream: [\n 'border-cream-border bg-cream-card',\n 'shadow-cream-md hover:shadow-cream-lg',\n ],\n },\n },\n defaultVariants: {\n variant: 'default',\n },\n },\n);\n\nexport interface MetricCardProps\n extends React.HTMLAttributes<HTMLDivElement>,\n VariantProps<typeof metricCardVariants> {\n /** The big number or value */\n value: string | number;\n /** Label / description below the value */\n label: string;\n /** Subtitle or secondary label */\n subtitle?: string;\n /** Icon element shown top-right */\n icon?: React.ReactNode;\n /** Progress percentage 0-100 */\n progress?: number;\n /** Trend indicator (positive or negative) */\n trend?: { value: string; positive: boolean };\n /** Badge content top-right near icon */\n badge?: React.ReactNode;\n}\n\nfunction MetricCard({\n value,\n label,\n subtitle,\n icon,\n progress,\n trend,\n badge,\n variant,\n className,\n ...props\n}: MetricCardProps) {\n return (\n <div className={cn(metricCardVariants({ variant }), className)} {...props}>\n {/* Header row: badge + icon */}\n {(icon || badge) && (\n <div className=\"mb-4 flex items-start justify-between\">\n {badge && <div>{badge}</div>}\n {icon && (\n <div\n className={cn(\n 'flex h-10 w-10 items-center justify-center rounded-xl',\n variant === 'cream'\n ? 'bg-primary/10 text-primary'\n : 'bg-white/5 text-neutral-400',\n )}\n >\n {icon}\n </div>\n )}\n </div>\n )}\n\n {/* Value */}\n <div className=\"mb-1 flex items-baseline gap-3\">\n <span\n className={cn(\n 'text-3xl font-semibold tracking-tight',\n variant === 'cream' ? 'text-cream-primary' : 'text-white',\n )}\n >\n {value}\n </span>\n\n {trend && (\n <span\n className={cn(\n 'rounded-full px-2 py-0.5 text-xs font-semibold',\n trend.positive\n ? 'bg-success/15 text-success'\n : 'bg-error/15 text-error',\n )}\n >\n {trend.positive ? '↑' : '↓'} {trend.value}\n </span>\n )}\n </div>\n\n {/* Label */}\n <p\n className={cn(\n 'text-sm',\n variant === 'cream' ? 'text-cream-secondary' : 'text-neutral-400',\n )}\n >\n {label}\n </p>\n\n {subtitle && (\n <p\n className={cn(\n 'mt-0.5 font-mono text-xs',\n variant === 'cream' ? 'text-cream-muted' : 'text-neutral-500',\n )}\n >\n {subtitle}\n </p>\n )}\n\n {/* Progress bar */}\n {typeof progress === 'number' && (\n <div className=\"mt-4\">\n <div className=\"flex items-center justify-between text-xs text-neutral-500 mb-1.5\">\n <span>Progresso</span>\n <span className={variant === 'cream' ? 'text-cream-primary' : 'text-white'}>\n {Math.round(progress)}%\n </span>\n </div>\n <div\n className={cn(\n 'h-1.5 w-full overflow-hidden rounded-full',\n variant === 'cream' ? 'bg-cream-border' : 'bg-white/5',\n )}\n >\n <div\n className=\"h-full rounded-full bg-gradient-to-r from-primary to-primary-light transition-all duration-700\"\n style={{ width: `${Math.min(100, Math.max(0, progress))}%` }}\n />\n </div>\n </div>\n )}\n\n {/* Geometric corner accent */}\n <div className=\"absolute -right-1 -top-1 h-6 w-6 border-r-2 border-t-2 border-primary/20 rounded-tr-xl pointer-events-none\" />\n </div>\n );\n}\n\nexport { MetricCard, metricCardVariants };\n","import * as React from 'react';\nimport { cn } from '../../lib/utils';\n\n/**\n * Stepper — Horizontal workflow steps with connecting line\n *\n * Completed / active / pending states, glow on active.\n * From Advanced Product Components HTML.\n */\n\nexport interface StepperStep {\n id: string;\n label: string;\n description?: string;\n icon?: React.ReactNode;\n}\n\nexport type StepStatus = 'completed' | 'active' | 'pending';\n\nexport interface StepperProps extends React.HTMLAttributes<HTMLDivElement> {\n steps: StepperStep[];\n /** Index of the currently active step (0-based) */\n activeStep: number;\n /** Vertical layout instead of horizontal */\n orientation?: 'horizontal' | 'vertical';\n /** Cream light theme */\n variant?: 'default' | 'cream';\n}\n\nfunction getStepStatus(index: number, activeStep: number): StepStatus {\n if (index < activeStep) return 'completed';\n if (index === activeStep) return 'active';\n return 'pending';\n}\n\nfunction Stepper({\n steps,\n activeStep,\n orientation = 'horizontal',\n variant = 'default',\n className,\n ...props\n}: StepperProps) {\n const isVertical = orientation === 'vertical';\n\n return (\n <div\n className={cn(\n 'flex',\n isVertical ? 'flex-col gap-0' : 'items-start gap-0',\n className,\n )}\n role=\"list\"\n {...props}\n >\n {steps.map((step, index) => {\n const status = getStepStatus(index, activeStep);\n const isLast = index === steps.length - 1;\n\n return (\n <div\n key={step.id}\n className={cn(\n 'flex',\n isVertical ? 'flex-row gap-3' : 'flex-1 flex-col items-center gap-2',\n )}\n role=\"listitem\"\n aria-current={status === 'active' ? 'step' : undefined}\n >\n {/* Step indicator row */}\n <div\n className={cn(\n 'flex items-center',\n isVertical ? 'flex-col' : 'w-full',\n )}\n >\n {/* Connector before (horizontal only, skip first) */}\n {!isVertical && index > 0 && (\n <StepConnector\n status={status === 'completed' || status === 'active' ? 'filled' : 'empty'}\n variant={variant}\n />\n )}\n\n {/* Circle */}\n <StepCircle status={status} icon={step.icon} index={index} variant={variant} />\n\n {/* Connector after (horizontal only, skip last) */}\n {!isVertical && !isLast && (\n <StepConnector\n status={status === 'completed' ? 'filled' : 'empty'}\n variant={variant}\n />\n )}\n\n {/* Vertical connector down */}\n {isVertical && !isLast && (\n <div\n className={cn(\n 'my-1 h-8 w-0.5',\n status === 'completed'\n ? 'bg-gradient-to-b from-primary to-primary-light'\n : variant === 'cream'\n ? 'bg-cream-border'\n : 'bg-white/10',\n )}\n />\n )}\n </div>\n\n {/* Label */}\n <div\n className={cn(\n isVertical ? 'pt-0.5' : 'mt-2 text-center',\n )}\n >\n <p\n className={cn(\n 'text-sm font-medium transition-colors',\n status === 'active'\n ? variant === 'cream'\n ? 'text-primary'\n : 'text-white'\n : status === 'completed'\n ? variant === 'cream'\n ? 'text-cream-primary'\n : 'text-neutral-300'\n : variant === 'cream'\n ? 'text-cream-muted'\n : 'text-neutral-500',\n )}\n >\n {step.label}\n </p>\n {step.description && (\n <p\n className={cn(\n 'mt-0.5 text-xs',\n variant === 'cream' ? 'text-cream-muted' : 'text-neutral-500',\n )}\n >\n {step.description}\n </p>\n )}\n </div>\n </div>\n );\n })}\n </div>\n );\n}\n\n/* ───────── Sub-components ───────── */\n\nfunction StepCircle({\n status,\n icon,\n index,\n variant,\n}: {\n status: StepStatus;\n icon?: React.ReactNode;\n index: number;\n variant: 'default' | 'cream';\n}) {\n return (\n <div\n className={cn(\n 'relative flex h-9 w-9 shrink-0 items-center justify-center rounded-full',\n 'text-sm font-semibold transition-all duration-300',\n status === 'completed' && [\n 'bg-gradient-to-br from-primary to-primary-light text-white',\n variant !== 'cream' && 'shadow-[0_0_12px_rgba(79,57,246,0.3)]',\n ],\n status === 'active' && [\n 'border-2 border-primary bg-primary/15 text-primary-light',\n variant !== 'cream' && 'shadow-[0_0_20px_rgba(79,57,246,0.4)]',\n ],\n status === 'pending' && [\n variant === 'cream'\n ? 'border-2 border-cream-border bg-cream-card text-cream-muted'\n : 'border-2 border-white/10 bg-card-surface text-neutral-500',\n ],\n )}\n >\n {status === 'completed' ? (\n <svg className=\"h-4 w-4\" fill=\"none\" viewBox=\"0 0 24 24\" stroke=\"currentColor\" strokeWidth={3}>\n <path strokeLinecap=\"round\" strokeLinejoin=\"round\" d=\"M5 13l4 4L19 7\" />\n </svg>\n ) : icon ? (\n <span className=\"h-4 w-4\">{icon}</span>\n ) : (\n <span>{index + 1}</span>\n )}\n\n {/* Active pulse ring */}\n {status === 'active' && (\n <span className=\"absolute inset-0 animate-ping rounded-full border-2 border-primary/30\" />\n )}\n </div>\n );\n}\n\nfunction StepConnector({\n status,\n variant,\n}: {\n status: 'filled' | 'empty';\n variant: 'default' | 'cream';\n}) {\n return (\n <div\n className={cn(\n 'h-0.5 flex-1 transition-colors duration-500',\n status === 'filled'\n ? 'bg-gradient-to-r from-primary to-primary-light'\n : variant === 'cream'\n ? 'bg-cream-border'\n : 'bg-white/10',\n )}\n />\n );\n}\n\nexport { Stepper, StepCircle, StepConnector };\n","import * as React from 'react';\nimport { cva, type VariantProps } from 'class-variance-authority';\nimport { cn } from '../../lib/utils';\n\n/**\n * StatusPill — Asymmetric border-radius pill with dot indicator\n *\n * Semantic colors, optional glow shadow.\n * From Brand Assets & Icons HTML.\n */\nconst statusPillVariants = cva(\n [\n 'inline-flex items-center gap-2 font-medium',\n 'transition-all duration-300',\n ],\n {\n variants: {\n variant: {\n default: 'border border-white/10 bg-card-surface/80 text-neutral-300',\n primary: 'border border-primary/20 bg-primary/10 text-primary-light',\n success: 'border border-success/20 bg-success/10 text-success',\n warning: 'border border-warning/20 bg-warning/10 text-warning',\n error: 'border border-error/20 bg-error/10 text-error',\n info: 'border border-info/20 bg-info/10 text-info',\n\n // Status-specific\n 'in-flow': 'border border-in-flow-border bg-in-flow-bg text-in-flow-text',\n 'deep-work': 'border border-deep-work-border bg-deep-work-bg text-deep-work-text',\n 'high-energy': 'border border-warning/20 bg-warning/10 text-warning',\n resting: 'border border-resting-border bg-resting-bg text-resting-text',\n disconnected: 'border border-disconnected-border bg-disconnected-bg text-disconnected-text',\n\n // Cream theme\n cream: 'border border-cream-border bg-cream-card text-cream-primary',\n },\n size: {\n sm: 'rounded-pill-asym px-2.5 py-0.5 text-xs',\n default: 'rounded-pill-asym px-3.5 py-1 text-sm',\n lg: 'rounded-pill-asym px-5 py-1.5 text-base',\n },\n glow: {\n true: '',\n false: '',\n },\n },\n compoundVariants: [\n { variant: 'primary', glow: true, class: 'shadow-[0_0_12px_rgba(79,57,246,0.3)]' },\n { variant: 'success', glow: true, class: 'shadow-[0_0_12px_rgba(16,185,129,0.3)]' },\n { variant: 'warning', glow: true, class: 'shadow-[0_0_12px_rgba(245,158,11,0.3)]' },\n { variant: 'error', glow: true, class: 'shadow-[0_0_12px_rgba(224,17,95,0.3)]' },\n { variant: 'info', glow: true, class: 'shadow-[0_0_12px_rgba(59,130,246,0.3)]' },\n { variant: 'in-flow', glow: true, class: 'shadow-[0_0_12px_rgba(79,57,246,0.25)]' },\n ],\n defaultVariants: {\n variant: 'default',\n size: 'default',\n glow: false,\n },\n },\n);\n\nconst dotColors: Record<string, string> = {\n default: 'bg-neutral-400',\n primary: 'bg-primary-light',\n success: 'bg-success',\n warning: 'bg-warning',\n error: 'bg-error',\n info: 'bg-info',\n 'in-flow': 'bg-primary-light',\n 'deep-work': 'bg-info',\n 'high-energy': 'bg-warning',\n resting: 'bg-neutral-400',\n disconnected: 'bg-neutral-500',\n cream: 'bg-primary',\n};\n\nexport interface StatusPillProps\n extends React.HTMLAttributes<HTMLSpanElement>,\n VariantProps<typeof statusPillVariants> {\n /** Show the animated dot indicator */\n dot?: boolean;\n /** Pulse the dot (animated) */\n pulse?: boolean;\n /** Icon before text */\n icon?: React.ReactNode;\n}\n\nfunction StatusPill({\n variant = 'default',\n size,\n glow,\n dot = true,\n pulse = false,\n icon,\n children,\n className,\n ...props\n}: StatusPillProps) {\n return (\n <span\n className={cn(statusPillVariants({ variant, size, glow }), className)}\n {...props}\n >\n {dot && (\n <span className=\"relative flex h-2 w-2\">\n {pulse && (\n <span\n className={cn(\n 'absolute inline-flex h-full w-full animate-ping rounded-full opacity-50',\n dotColors[variant ?? 'default'],\n )}\n />\n )}\n <span\n className={cn(\n 'relative inline-flex h-2 w-2 rounded-full',\n dotColors[variant ?? 'default'],\n )}\n />\n </span>\n )}\n\n {icon && <span className=\"h-3.5 w-3.5\">{icon}</span>}\n\n {children}\n </span>\n );\n}\n\nexport { StatusPill, statusPillVariants };\n"]}
|
|
@@ -0,0 +1,25 @@
|
|
|
1
|
+
import * as react_jsx_runtime from 'react/jsx-runtime';
|
|
2
|
+
import * as React from 'react';
|
|
3
|
+
|
|
4
|
+
type Theme = 'dark' | 'light' | 'system';
|
|
5
|
+
type ResolvedTheme = 'dark' | 'light';
|
|
6
|
+
interface ThemeContextValue {
|
|
7
|
+
theme: Theme;
|
|
8
|
+
resolvedTheme: ResolvedTheme;
|
|
9
|
+
setTheme: (theme: Theme) => void;
|
|
10
|
+
}
|
|
11
|
+
interface ThemeProviderProps {
|
|
12
|
+
children: React.ReactNode;
|
|
13
|
+
/** Default theme when no preference is stored */
|
|
14
|
+
defaultTheme?: Theme;
|
|
15
|
+
/** Force a specific theme (overrides user choice) */
|
|
16
|
+
forcedTheme?: ResolvedTheme;
|
|
17
|
+
/** Storage key for persistence */
|
|
18
|
+
storageKey?: string;
|
|
19
|
+
/** Apply to a specific element instead of <html> */
|
|
20
|
+
attribute?: string;
|
|
21
|
+
}
|
|
22
|
+
declare function ThemeProvider({ children, defaultTheme, forcedTheme, storageKey, attribute, }: ThemeProviderProps): react_jsx_runtime.JSX.Element;
|
|
23
|
+
declare function useTheme(): ThemeContextValue;
|
|
24
|
+
|
|
25
|
+
export { type Theme, ThemeProvider, type ThemeProviderProps, useTheme };
|
|
@@ -0,0 +1 @@
|
|
|
1
|
+
{"version":3,"sources":[],"names":[],"mappings":"","file":"theme-provider.js"}
|
|
@@ -0,0 +1,16 @@
|
|
|
1
|
+
import { Config } from 'tailwindcss';
|
|
2
|
+
|
|
3
|
+
/**
|
|
4
|
+
* @organify/ui — Tailwind CSS Preset
|
|
5
|
+
*
|
|
6
|
+
* Consumers import this preset to get all Organify design tokens,
|
|
7
|
+
* custom utilities and theme extensions.
|
|
8
|
+
*
|
|
9
|
+
* Usage in consuming app's tailwind config:
|
|
10
|
+
* import organifyPreset from '@organify/ui/tailwind-preset';
|
|
11
|
+
* export default { presets: [organifyPreset], ... }
|
|
12
|
+
*/
|
|
13
|
+
|
|
14
|
+
declare const organifyPreset: Partial<Config>;
|
|
15
|
+
|
|
16
|
+
export { organifyPreset as default };
|
|
@@ -0,0 +1,91 @@
|
|
|
1
|
+
import { animation, fontFamily, colors, shadows, borderRadius, fontWeight, fontSize } from './chunk-WPZJKIZT.js';
|
|
2
|
+
|
|
3
|
+
// src/tailwind-preset.ts
|
|
4
|
+
var organifyPreset = {
|
|
5
|
+
darkMode: "class",
|
|
6
|
+
theme: {
|
|
7
|
+
extend: {
|
|
8
|
+
colors: {
|
|
9
|
+
primary: {
|
|
10
|
+
DEFAULT: colors.primary.DEFAULT,
|
|
11
|
+
light: colors.primary.light,
|
|
12
|
+
glow: colors.primary.glow,
|
|
13
|
+
electric: colors.primary.electric,
|
|
14
|
+
dark: colors.primary.dark
|
|
15
|
+
},
|
|
16
|
+
"card-surface": colors.neutral[800],
|
|
17
|
+
cream: {
|
|
18
|
+
base: colors.cream.base,
|
|
19
|
+
surface: colors.cream.surface,
|
|
20
|
+
"surface-strong": colors.cream.surfaceStrong,
|
|
21
|
+
border: colors.cream.border,
|
|
22
|
+
text: colors.cream.text,
|
|
23
|
+
"text-muted": colors.cream.textMuted
|
|
24
|
+
},
|
|
25
|
+
glass: {
|
|
26
|
+
bg: colors.glass.bg,
|
|
27
|
+
"bg-heavy": colors.glass.bgHeavy,
|
|
28
|
+
surface: colors.glass.surface,
|
|
29
|
+
border: colors.glass.border,
|
|
30
|
+
"border-medium": colors.glass.borderMedium,
|
|
31
|
+
"border-strong": colors.glass.borderStrong,
|
|
32
|
+
highlight: colors.glass.highlight
|
|
33
|
+
},
|
|
34
|
+
semantic: {
|
|
35
|
+
success: colors.semantic.success.DEFAULT,
|
|
36
|
+
"success-light": colors.semantic.success.light,
|
|
37
|
+
"success-surface": colors.semantic.success.surface,
|
|
38
|
+
warning: colors.semantic.warning.DEFAULT,
|
|
39
|
+
"warning-light": colors.semantic.warning.light,
|
|
40
|
+
"warning-surface": colors.semantic.warning.surface,
|
|
41
|
+
error: colors.semantic.error.DEFAULT,
|
|
42
|
+
"error-light": colors.semantic.error.light,
|
|
43
|
+
"error-surface": colors.semantic.error.surface,
|
|
44
|
+
info: colors.semantic.info.DEFAULT,
|
|
45
|
+
"info-light": colors.semantic.info.light,
|
|
46
|
+
"info-surface": colors.semantic.info.surface
|
|
47
|
+
},
|
|
48
|
+
status: {
|
|
49
|
+
"in-flow-bg": colors.status.inFlow.bg,
|
|
50
|
+
"in-flow-text": colors.status.inFlow.text,
|
|
51
|
+
"in-flow-border": colors.status.inFlow.border,
|
|
52
|
+
"deep-work-bg": colors.status.deepWork.bg,
|
|
53
|
+
"deep-work-text": colors.status.deepWork.text,
|
|
54
|
+
"resting-bg": colors.status.resting.bg,
|
|
55
|
+
"resting-text": colors.status.resting.text,
|
|
56
|
+
"disconnected-bg": colors.status.disconnected.bg,
|
|
57
|
+
"disconnected-text": colors.status.disconnected.text
|
|
58
|
+
}
|
|
59
|
+
},
|
|
60
|
+
fontFamily: {
|
|
61
|
+
sans: fontFamily.sans,
|
|
62
|
+
mono: fontFamily.mono
|
|
63
|
+
},
|
|
64
|
+
fontSize,
|
|
65
|
+
fontWeight,
|
|
66
|
+
borderRadius,
|
|
67
|
+
boxShadow: shadows,
|
|
68
|
+
backgroundImage: {
|
|
69
|
+
"organic-grid": "radial-gradient(circle, rgba(255,255,255,0.03) 1px, transparent 1px)",
|
|
70
|
+
"organic-grid-lg": "linear-gradient(rgba(255,255,255,0.03) 1px, transparent 1px), linear-gradient(90deg, rgba(255,255,255,0.03) 1px, transparent 1px)",
|
|
71
|
+
"glow-gradient": "radial-gradient(circle at 80% -10%, rgba(79, 57, 246, 0.15) 0%, rgba(25, 25, 25, 0) 50%)",
|
|
72
|
+
"glow-spot": "radial-gradient(circle at 10% 100%, rgba(36, 25, 121, 0.2) 0%, rgba(25, 25, 25, 0) 50%)",
|
|
73
|
+
"vibrant-mesh": "radial-gradient(at 10% 10%, #241979 0px, transparent 60%), radial-gradient(at 90% 0%, #1F1F21 0px, transparent 50%), radial-gradient(at 90% 90%, #241979 0px, transparent 50%), radial-gradient(at 10% 90%, #000000 0px, transparent 50%)",
|
|
74
|
+
"glow-top": "radial-gradient(circle at 50% -20%, #4F39F6 15%, rgba(36, 25, 121, 0.8) 45%, #05060A 90%)",
|
|
75
|
+
"gradient-mesh-light": "radial-gradient(circle at 15% 15%, rgba(36, 25, 121, 0.08) 0%, transparent 40%), radial-gradient(circle at 85% 85%, rgba(60, 20, 100, 0.05) 0%, transparent 40%)",
|
|
76
|
+
"cream-grid": "linear-gradient(to right, rgba(0, 0, 0, 0.02) 1px, transparent 1px), linear-gradient(to bottom, rgba(0, 0, 0, 0.02) 1px, transparent 1px)"
|
|
77
|
+
},
|
|
78
|
+
keyframes: animation.keyframes,
|
|
79
|
+
animation: {
|
|
80
|
+
shimmer: "shimmer 2s infinite",
|
|
81
|
+
"spin-slow": "spin-slow 10s linear infinite",
|
|
82
|
+
"glow-pulse": "glow-pulse 2s ease-in-out infinite"
|
|
83
|
+
}
|
|
84
|
+
}
|
|
85
|
+
}
|
|
86
|
+
};
|
|
87
|
+
var tailwind_preset_default = organifyPreset;
|
|
88
|
+
|
|
89
|
+
export { tailwind_preset_default as default };
|
|
90
|
+
//# sourceMappingURL=tailwind-preset.js.map
|
|
91
|
+
//# sourceMappingURL=tailwind-preset.js.map
|
|
@@ -0,0 +1 @@
|
|
|
1
|
+
{"version":3,"sources":["../src/tailwind-preset.ts"],"names":[],"mappings":"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","file":"tailwind-preset.js","sourcesContent":["/**\n * @organify/ui — Tailwind CSS Preset\n *\n * Consumers import this preset to get all Organify design tokens,\n * custom utilities and theme extensions.\n *\n * Usage in consuming app's tailwind config:\n * import organifyPreset from '@organify/ui/tailwind-preset';\n * export default { presets: [organifyPreset], ... }\n */\n\nimport type { Config } from 'tailwindcss';\nimport { colors } from './tokens/colors';\nimport { fontFamily, fontSize, fontWeight } from './tokens/typography';\nimport { shadows } from './tokens/shadows';\nimport { borderRadius } from './tokens/borders';\nimport { animation } from './tokens/animations';\n\nconst organifyPreset: Partial<Config> = {\n darkMode: 'class',\n theme: {\n extend: {\n colors: {\n primary: {\n DEFAULT: colors.primary.DEFAULT,\n light: colors.primary.light,\n glow: colors.primary.glow,\n electric: colors.primary.electric,\n dark: colors.primary.dark,\n },\n 'card-surface': colors.neutral[800],\n cream: {\n base: colors.cream.base,\n surface: colors.cream.surface,\n 'surface-strong': colors.cream.surfaceStrong,\n border: colors.cream.border,\n text: colors.cream.text,\n 'text-muted': colors.cream.textMuted,\n },\n glass: {\n bg: colors.glass.bg,\n 'bg-heavy': colors.glass.bgHeavy,\n surface: colors.glass.surface,\n border: colors.glass.border,\n 'border-medium': colors.glass.borderMedium,\n 'border-strong': colors.glass.borderStrong,\n highlight: colors.glass.highlight,\n },\n semantic: {\n success: colors.semantic.success.DEFAULT,\n 'success-light': colors.semantic.success.light,\n 'success-surface': colors.semantic.success.surface,\n warning: colors.semantic.warning.DEFAULT,\n 'warning-light': colors.semantic.warning.light,\n 'warning-surface': colors.semantic.warning.surface,\n error: colors.semantic.error.DEFAULT,\n 'error-light': colors.semantic.error.light,\n 'error-surface': colors.semantic.error.surface,\n info: colors.semantic.info.DEFAULT,\n 'info-light': colors.semantic.info.light,\n 'info-surface': colors.semantic.info.surface,\n },\n status: {\n 'in-flow-bg': colors.status.inFlow.bg,\n 'in-flow-text': colors.status.inFlow.text,\n 'in-flow-border': colors.status.inFlow.border,\n 'deep-work-bg': colors.status.deepWork.bg,\n 'deep-work-text': colors.status.deepWork.text,\n 'resting-bg': colors.status.resting.bg,\n 'resting-text': colors.status.resting.text,\n 'disconnected-bg': colors.status.disconnected.bg,\n 'disconnected-text': colors.status.disconnected.text,\n },\n },\n fontFamily: {\n sans: fontFamily.sans,\n mono: fontFamily.mono,\n },\n fontSize,\n fontWeight,\n borderRadius,\n boxShadow: shadows,\n backgroundImage: {\n 'organic-grid':\n 'radial-gradient(circle, rgba(255,255,255,0.03) 1px, transparent 1px)',\n 'organic-grid-lg':\n 'linear-gradient(rgba(255,255,255,0.03) 1px, transparent 1px), linear-gradient(90deg, rgba(255,255,255,0.03) 1px, transparent 1px)',\n 'glow-gradient':\n 'radial-gradient(circle at 80% -10%, rgba(79, 57, 246, 0.15) 0%, rgba(25, 25, 25, 0) 50%)',\n 'glow-spot':\n 'radial-gradient(circle at 10% 100%, rgba(36, 25, 121, 0.2) 0%, rgba(25, 25, 25, 0) 50%)',\n 'vibrant-mesh':\n 'radial-gradient(at 10% 10%, #241979 0px, transparent 60%), radial-gradient(at 90% 0%, #1F1F21 0px, transparent 50%), radial-gradient(at 90% 90%, #241979 0px, transparent 50%), radial-gradient(at 10% 90%, #000000 0px, transparent 50%)',\n 'glow-top':\n 'radial-gradient(circle at 50% -20%, #4F39F6 15%, rgba(36, 25, 121, 0.8) 45%, #05060A 90%)',\n 'gradient-mesh-light':\n 'radial-gradient(circle at 15% 15%, rgba(36, 25, 121, 0.08) 0%, transparent 40%), radial-gradient(circle at 85% 85%, rgba(60, 20, 100, 0.05) 0%, transparent 40%)',\n 'cream-grid':\n 'linear-gradient(to right, rgba(0, 0, 0, 0.02) 1px, transparent 1px), linear-gradient(to bottom, rgba(0, 0, 0, 0.02) 1px, transparent 1px)',\n },\n keyframes: animation.keyframes,\n animation: {\n shimmer: 'shimmer 2s infinite',\n 'spin-slow': 'spin-slow 10s linear infinite',\n 'glow-pulse': 'glow-pulse 2s ease-in-out infinite',\n },\n },\n },\n};\n\nexport default organifyPreset;\n"]}
|