mta-design-system 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/README.md +198 -0
- package/dist/cli/src/index.cjs +1234 -0
- package/dist/cli/src/index.cjs.map +1 -0
- package/dist/index.cjs +2269 -0
- package/dist/index.cjs.map +1 -0
- package/dist/index.d.cts +350 -0
- package/dist/index.d.ts +350 -0
- package/dist/index.js +2151 -0
- package/dist/index.js.map +1 -0
- package/dist/mcp/src/index.cjs +1351 -0
- package/dist/mcp/src/index.cjs.map +1 -0
- package/dist/styles.css +171 -0
- package/package.json +120 -0
|
@@ -0,0 +1 @@
|
|
|
1
|
+
{"version":3,"sources":["../../../cli/src/index.ts","../../../cli/src/commands/list.ts","../../../cli/src/registry.ts","../../../cli/src/commands/show.ts","../../../cli/src/commands/init.ts","../../../cli/src/commands/add.ts"],"sourcesContent":["#!/usr/bin/env node\n\nimport { Command } from 'commander';\nimport chalk from 'chalk';\nimport { listCommand } from './commands/list.js';\nimport { showCommand } from './commands/show.js';\nimport { initCommand } from './commands/init.js';\nimport { addCommand } from './commands/add.js';\n\nconst program = new Command();\n\nprogram\n .name('mta-design-system')\n .alias('mta-ds')\n .description('MTA Design System CLI - Component library tools')\n .version('0.1.0');\n\n// List command\nprogram\n .command('list')\n .alias('ls')\n .description('List all available components')\n .option('-c, --category <category>', 'Filter by category (ui, claimmind, molecules, pages)')\n .option('-j, --json', 'Output as JSON')\n .action(listCommand);\n\n// Show command\nprogram\n .command('show <component>')\n .description('Show detailed information about a component')\n .option('-p, --props', 'Show component props')\n .option('-e, --examples', 'Show usage examples')\n .option('-s, --source', 'Show component source code')\n .action(showCommand);\n\n// Init command\nprogram\n .command('init')\n .description('Initialize MTA Design System in your project')\n .option('-p, --path <path>', 'Path to initialize', '.')\n .option('-t, --theme <theme>', 'Default theme (Default, Owlexa, BPJS)', 'Default')\n .option('--skip-deps', 'Skip installing dependencies')\n .action(initCommand);\n\n// Add command (shadcn-style)\nprogram\n .command('add <component>')\n .description('Copy a component source file to your project (shadcn-style)')\n .option('-o, --output <path>', 'Output directory', './src/components/ui')\n .option('-t, --theme <theme>', 'Theme variant for themed components (Default, Owlexa, BPJS)')\n .option('--overwrite', 'Overwrite existing files')\n .option('-a, --alias <alias>', 'Import alias to use', '@/')\n .action(addCommand);\n\n// Error handling\nprogram.exitOverride((err) => {\n if (err.code === 'commander.help' || err.code === 'commander.version') {\n process.exit(0);\n }\n if (err.code === 'commander.unknownOption') {\n console.log(chalk.yellow(`\\n ${err.message}`));\n console.log(chalk.gray(` Run ${chalk.cyan('mta-ds --help')} for usage information.\\n`));\n process.exit(1);\n }\n});\n\nprogram.parse();\n","import chalk from 'chalk';\nimport { componentRegistry, getComponentsByCategory, getCategories, type ComponentInfo } from '../registry.js';\n\ninterface ListOptions {\n category?: string;\n json?: boolean;\n}\n\nexport function listCommand(options: ListOptions) {\n const { category, json } = options;\n\n if (json) {\n let components = componentRegistry;\n if (category) {\n components = getComponentsByCategory(category as ComponentInfo['category']);\n }\n console.log(JSON.stringify(components, null, 2));\n return;\n }\n\n console.log(chalk.bold.cyan('\\nš¦ MTA Design System Components\\n'));\n\n if (category) {\n const components = getComponentsByCategory(category as ComponentInfo['category']);\n if (components.length === 0) {\n console.log(chalk.yellow(`No components found in category \"${category}\"`));\n console.log(chalk.gray(`Available categories: ${getCategories().join(', ')}`));\n return;\n }\n printCategory(category, components);\n } else {\n // Print all categories\n const categories = getCategories();\n for (const cat of categories) {\n const components = getComponentsByCategory(cat);\n printCategory(cat, components);\n }\n }\n\n console.log(chalk.gray(`\\n Total: ${componentRegistry.length} components`));\n console.log(chalk.gray(` Run ${chalk.cyan('mta-ds show <component>')} for details\\n`));\n}\n\nfunction printCategory(category: string, components: ComponentInfo[]) {\n const categoryLabels: Record<string, string> = {\n ui: 'UI Components (shadcn/ui based)',\n claimmind: 'ClaimMind Themed Components',\n molecules: 'Molecule Components',\n pages: 'Page Templates',\n };\n\n console.log(chalk.bold.white(`${categoryLabels[category] || category}:`));\n console.log(chalk.gray('ā'.repeat(40)));\n\n for (const comp of components) {\n const themableTag = comp.themable ? chalk.green(' [themable]') : '';\n console.log(` ${chalk.cyan(comp.name)}${themableTag}`);\n console.log(chalk.gray(` ${comp.description}`));\n }\n console.log();\n}\n","/**\n * Component Registry for MTA Design System\n * Re-export from shared location\n */\n\nexport * from '../../shared/registry.js';\n\nexport interface ComponentProp {\n name: string;\n type: string;\n required: boolean;\n default?: string;\n description: string;\n}\n\nexport interface ComponentExample {\n title: string;\n code: string;\n description?: string;\n}\n\nexport interface ComponentInfo {\n name: string;\n category: 'ui' | 'claimmind' | 'molecules' | 'pages';\n description: string;\n sourcePath: string;\n props: ComponentProp[];\n examples: ComponentExample[];\n dependencies?: string[];\n themable?: boolean;\n}\n\nexport const componentRegistry: ComponentInfo[] = [\n // ==================== BASE UI COMPONENTS ====================\n {\n name: 'Button',\n category: 'ui',\n description: 'A versatile button component with multiple variants and sizes.',\n sourcePath: 'src/components/ui/button.tsx',\n props: [\n { name: 'variant', type: \"'default' | 'destructive' | 'outline' | 'secondary' | 'ghost' | 'link'\", required: false, default: \"'default'\", description: 'Button visual style' },\n { name: 'size', type: \"'default' | 'sm' | 'lg' | 'icon' | 'icon-sm' | 'icon-lg'\", required: false, default: \"'default'\", description: 'Button size' },\n { name: 'asChild', type: 'boolean', required: false, default: 'false', description: 'Render as child element' },\n { name: 'className', type: 'string', required: false, description: 'Additional CSS classes' },\n { name: 'disabled', type: 'boolean', required: false, description: 'Disable the button' },\n ],\n examples: [\n {\n title: 'Basic Button',\n code: `import { Button } from 'mta-design-system';\n\n<Button>Click me</Button>`,\n },\n {\n title: 'Button Variants',\n code: `<Button variant=\"default\">Default</Button>\n<Button variant=\"destructive\">Destructive</Button>\n<Button variant=\"outline\">Outline</Button>\n<Button variant=\"secondary\">Secondary</Button>\n<Button variant=\"ghost\">Ghost</Button>\n<Button variant=\"link\">Link</Button>`,\n },\n {\n title: 'Button Sizes',\n code: `<Button size=\"sm\">Small</Button>\n<Button size=\"default\">Default</Button>\n<Button size=\"lg\">Large</Button>`,\n },\n ],\n dependencies: ['@radix-ui/react-slot', 'class-variance-authority'],\n themable: false,\n },\n {\n name: 'Alert',\n category: 'ui',\n description: 'Displays a callout for user attention.',\n sourcePath: 'src/components/ui/alert.tsx',\n props: [\n { name: 'variant', type: \"'default' | 'destructive'\", required: false, default: \"'default'\", description: 'Alert visual style' },\n { name: 'className', type: 'string', required: false, description: 'Additional CSS classes' },\n ],\n examples: [\n {\n title: 'Basic Alert',\n code: `import { Alert, AlertTitle, AlertDescription } from 'mta-design-system';\n\n<Alert>\n <AlertTitle>Heads up!</AlertTitle>\n <AlertDescription>You can add components to your app using the cli.</AlertDescription>\n</Alert>`,\n },\n {\n title: 'Destructive Alert',\n code: `<Alert variant=\"destructive\">\n <AlertTitle>Error</AlertTitle>\n <AlertDescription>Your session has expired. Please log in again.</AlertDescription>\n</Alert>`,\n },\n ],\n dependencies: ['class-variance-authority'],\n themable: false,\n },\n {\n name: 'Card',\n category: 'ui',\n description: 'Displays a card with header, content, and footer sections.',\n sourcePath: 'src/components/ui/card.tsx',\n props: [\n { name: 'className', type: 'string', required: false, description: 'Additional CSS classes' },\n ],\n examples: [\n {\n title: 'Basic Card',\n code: `import { Card, CardHeader, CardTitle, CardDescription, CardContent, CardFooter } from 'mta-design-system';\n\n<Card>\n <CardHeader>\n <CardTitle>Card Title</CardTitle>\n <CardDescription>Card Description</CardDescription>\n </CardHeader>\n <CardContent>\n <p>Card Content</p>\n </CardContent>\n <CardFooter>\n <p>Card Footer</p>\n </CardFooter>\n</Card>`,\n },\n ],\n dependencies: [],\n themable: false,\n },\n {\n name: 'Input',\n category: 'ui',\n description: 'A text input component for forms.',\n sourcePath: 'src/components/ui/input.tsx',\n props: [\n { name: 'type', type: 'string', required: false, default: \"'text'\", description: 'Input type' },\n { name: 'placeholder', type: 'string', required: false, description: 'Placeholder text' },\n { name: 'className', type: 'string', required: false, description: 'Additional CSS classes' },\n { name: 'disabled', type: 'boolean', required: false, description: 'Disable the input' },\n ],\n examples: [\n {\n title: 'Basic Input',\n code: `import { Input } from 'mta-design-system';\n\n<Input placeholder=\"Enter your name\" />`,\n },\n ],\n dependencies: [],\n themable: false,\n },\n {\n name: 'Label',\n category: 'ui',\n description: 'A label component for form fields.',\n sourcePath: 'src/components/ui/label.tsx',\n props: [\n { name: 'htmlFor', type: 'string', required: false, description: 'ID of the associated form element' },\n { name: 'className', type: 'string', required: false, description: 'Additional CSS classes' },\n ],\n examples: [\n {\n title: 'Basic Label',\n code: `import { Label } from 'mta-design-system';\n\n<Label htmlFor=\"email\">Email</Label>`,\n },\n ],\n dependencies: ['@radix-ui/react-label'],\n themable: false,\n },\n {\n name: 'Dialog',\n category: 'ui',\n description: 'A modal dialog component.',\n sourcePath: 'src/components/ui/dialog.tsx',\n props: [\n { name: 'open', type: 'boolean', required: false, description: 'Controlled open state' },\n { name: 'onOpenChange', type: '(open: boolean) => void', required: false, description: 'Callback when open state changes' },\n ],\n examples: [\n {\n title: 'Basic Dialog',\n code: `import { Dialog, DialogTrigger, DialogContent, DialogHeader, DialogTitle, DialogDescription, DialogFooter } from 'mta-design-system';\n\n<Dialog>\n <DialogTrigger>Open Dialog</DialogTrigger>\n <DialogContent>\n <DialogHeader>\n <DialogTitle>Are you sure?</DialogTitle>\n <DialogDescription>This action cannot be undone.</DialogDescription>\n </DialogHeader>\n <DialogFooter>\n <Button>Confirm</Button>\n </DialogFooter>\n </DialogContent>\n</Dialog>`,\n },\n ],\n dependencies: ['@radix-ui/react-dialog'],\n themable: false,\n },\n {\n name: 'Select',\n category: 'ui',\n description: 'A dropdown select component.',\n sourcePath: 'src/components/ui/select.tsx',\n props: [\n { name: 'value', type: 'string', required: false, description: 'Selected value' },\n { name: 'onValueChange', type: '(value: string) => void', required: false, description: 'Callback when value changes' },\n { name: 'disabled', type: 'boolean', required: false, description: 'Disable the select' },\n ],\n examples: [\n {\n title: 'Basic Select',\n code: `import { Select, SelectTrigger, SelectValue, SelectContent, SelectItem } from 'mta-design-system';\n\n<Select>\n <SelectTrigger>\n <SelectValue placeholder=\"Select an option\" />\n </SelectTrigger>\n <SelectContent>\n <SelectItem value=\"option1\">Option 1</SelectItem>\n <SelectItem value=\"option2\">Option 2</SelectItem>\n </SelectContent>\n</Select>`,\n },\n ],\n dependencies: ['@radix-ui/react-select'],\n themable: false,\n },\n {\n name: 'Switch',\n category: 'ui',\n description: 'A toggle switch component.',\n sourcePath: 'src/components/ui/switch.tsx',\n props: [\n { name: 'checked', type: 'boolean', required: false, description: 'Controlled checked state' },\n { name: 'onCheckedChange', type: '(checked: boolean) => void', required: false, description: 'Callback when checked state changes' },\n { name: 'disabled', type: 'boolean', required: false, description: 'Disable the switch' },\n ],\n examples: [\n {\n title: 'Basic Switch',\n code: `import { Switch } from 'mta-design-system';\n\n<Switch />`,\n },\n ],\n dependencies: ['@radix-ui/react-switch'],\n themable: false,\n },\n {\n name: 'Tooltip',\n category: 'ui',\n description: 'A tooltip component for displaying additional information.',\n sourcePath: 'src/components/ui/tooltip.tsx',\n props: [\n { name: 'content', type: 'ReactNode', required: false, description: 'Tooltip content' },\n { name: 'delayDuration', type: 'number', required: false, default: '400', description: 'Delay before showing tooltip' },\n ],\n examples: [\n {\n title: 'Basic Tooltip',\n code: `import { Tooltip, TooltipTrigger, TooltipContent, TooltipProvider } from 'mta-design-system';\n\n<TooltipProvider>\n <Tooltip>\n <TooltipTrigger>Hover me</TooltipTrigger>\n <TooltipContent>Tooltip content</TooltipContent>\n </Tooltip>\n</TooltipProvider>`,\n },\n ],\n dependencies: ['@radix-ui/react-tooltip'],\n themable: false,\n },\n {\n name: 'Table',\n category: 'ui',\n description: 'A table component for displaying data.',\n sourcePath: 'src/components/ui/table.tsx',\n props: [\n { name: 'className', type: 'string', required: false, description: 'Additional CSS classes' },\n ],\n examples: [\n {\n title: 'Basic Table',\n code: `import { Table, TableHeader, TableHead, TableBody, TableRow, TableCell } from 'mta-design-system';\n\n<Table>\n <TableHeader>\n <TableRow>\n <TableHead>Name</TableHead>\n <TableHead>Email</TableHead>\n </TableRow>\n </TableHeader>\n <TableBody>\n <TableRow>\n <TableCell>John Doe</TableCell>\n <TableCell>john@example.com</TableCell>\n </TableRow>\n </TableBody>\n</Table>`,\n },\n ],\n dependencies: [],\n themable: false,\n },\n {\n name: 'Progress',\n category: 'ui',\n description: 'A progress bar component.',\n sourcePath: 'src/components/ui/progress.tsx',\n props: [\n { name: 'value', type: 'number', required: false, description: 'Progress value (0-100)' },\n { name: 'max', type: 'number', required: false, default: '100', description: 'Maximum value' },\n ],\n examples: [\n {\n title: 'Basic Progress',\n code: `import { Progress } from 'mta-design-system';\n\n<Progress value={60} />`,\n },\n ],\n dependencies: ['@radix-ui/react-progress'],\n themable: false,\n },\n {\n name: 'Spinner',\n category: 'ui',\n description: 'A loading spinner component.',\n sourcePath: 'src/components/ui/spinner.tsx',\n props: [\n { name: 'size', type: \"'sm' | 'default' | 'lg'\", required: false, default: \"'default'\", description: 'Spinner size' },\n { name: 'className', type: 'string', required: false, description: 'Additional CSS classes' },\n ],\n examples: [\n {\n title: 'Basic Spinner',\n code: `import { Spinner } from 'mta-design-system';\n\n<Spinner />`,\n },\n ],\n dependencies: [],\n themable: false,\n },\n {\n name: 'Calendar',\n category: 'ui',\n description: 'A calendar component for date selection.',\n sourcePath: 'src/components/ui/calendar.tsx',\n props: [\n { name: 'selected', type: 'Date', required: false, description: 'Selected date' },\n { name: 'onSelect', type: '(date: Date | undefined) => void', required: false, description: 'Callback when date is selected' },\n { name: 'mode', type: \"'single' | 'multiple' | 'range'\", required: false, default: \"'single'\", description: 'Selection mode' },\n ],\n examples: [\n {\n title: 'Basic Calendar',\n code: `import { Calendar } from 'mta-design-system';\nimport 'mta-design-system/styles.css';\n\n<Calendar />`,\n },\n ],\n dependencies: ['react-day-picker', 'date-fns'],\n themable: false,\n },\n {\n name: 'Popover',\n category: 'ui',\n description: 'A popover component for displaying floating content.',\n sourcePath: 'src/components/ui/popover.tsx',\n props: [\n { name: 'open', type: 'boolean', required: false, description: 'Controlled open state' },\n { name: 'onOpenChange', type: '(open: boolean) => void', required: false, description: 'Callback when open state changes' },\n ],\n examples: [\n {\n title: 'Basic Popover',\n code: `import { Popover, PopoverTrigger, PopoverContent } from 'mta-design-system';\n\n<Popover>\n <PopoverTrigger>Open</PopoverTrigger>\n <PopoverContent>Popover content</PopoverContent>\n</Popover>`,\n },\n ],\n dependencies: ['@radix-ui/react-popover'],\n themable: false,\n },\n {\n name: 'Command',\n category: 'ui',\n description: 'A command menu component for search and actions.',\n sourcePath: 'src/components/ui/command.tsx',\n props: [\n { name: 'value', type: 'string', required: false, description: 'Selected value' },\n { name: 'onValueChange', type: '(value: string) => void', required: false, description: 'Callback when value changes' },\n { name: 'placeholder', type: 'string', required: false, description: 'Search placeholder' },\n ],\n examples: [\n {\n title: 'Basic Command',\n code: `import { Command, CommandInput, CommandList, CommandEmpty, CommandGroup, CommandItem } from 'mta-design-system';\n\n<Command>\n <CommandInput placeholder=\"Search...\" />\n <CommandList>\n <CommandEmpty>No results found.</CommandEmpty>\n <CommandGroup heading=\"Suggestions\">\n <CommandItem>Option 1</CommandItem>\n <CommandItem>Option 2</CommandItem>\n </CommandGroup>\n </CommandList>\n</Command>`,\n },\n ],\n dependencies: ['cmdk'],\n themable: false,\n },\n\n // ==================== CLAIMMIND THEMED COMPONENTS ====================\n {\n name: 'ClaimMindButton',\n category: 'claimmind',\n description: 'A themed button component with brand colors (Default, Owlexa, BPJS themes).',\n sourcePath: 'src/stories/claimmind/Button.tsx',\n props: [\n { name: 'theme', type: \"'Default' | 'Owlexa' | 'BPJS'\", required: false, default: \"'Default'\", description: 'Brand theme' },\n { name: 'variant', type: \"'default' | 'destructive' | 'outline' | 'secondary' | 'ghost' | 'link'\", required: false, default: \"'default'\", description: 'Button visual style' },\n { name: 'size', type: \"'default' | 'sm' | 'lg' | 'icon'\", required: false, default: \"'default'\", description: 'Button size' },\n { name: 'label', type: 'string', required: false, description: 'Button label text' },\n { name: 'loading', type: 'boolean', required: false, default: 'false', description: 'Show loading spinner' },\n { name: 'leftIconName', type: 'LucideIconName', required: false, description: 'Icon name for left side' },\n { name: 'rightIconName', type: 'LucideIconName', required: false, description: 'Icon name for right side' },\n ],\n examples: [\n {\n title: 'Basic ClaimMindButton',\n code: `import { ClaimMindButton } from 'mta-design-system';\nimport 'mta-design-system/styles.css';\n\n<ClaimMindButton theme=\"Default\">Click me</ClaimMindButton>`,\n },\n {\n title: 'Themed Buttons',\n code: `<ClaimMindButton theme=\"Default\">ClaimMind</ClaimMindButton>\n<ClaimMindButton theme=\"Owlexa\">Owlexa</ClaimMindButton>\n<ClaimMindButton theme=\"BPJS\">BPJS</ClaimMindButton>`,\n },\n {\n title: 'Loading State',\n code: `<ClaimMindButton loading>Processing...</ClaimMindButton>`,\n },\n {\n title: 'With Icons',\n code: `import { ClaimMindButton } from 'mta-design-system';\n\n<ClaimMindButton leftIconName=\"Mail\">Send Email</ClaimMindButton>\n<ClaimMindButton rightIconName=\"ChevronRight\">Continue</ClaimMindButton>`,\n },\n ],\n dependencies: ['lucide-react'],\n themable: true,\n },\n {\n name: 'ClaimMindInput',\n category: 'claimmind',\n description: 'A themed input component with brand colors.',\n sourcePath: 'src/stories/claimmind/Input.tsx',\n props: [\n { name: 'theme', type: \"'Default' | 'Owlexa' | 'BPJS'\", required: false, default: \"'Default'\", description: 'Brand theme' },\n { name: 'type', type: 'string', required: false, default: \"'text'\", description: 'Input type' },\n { name: 'placeholder', type: 'string', required: false, description: 'Placeholder text' },\n { name: 'className', type: 'string', required: false, description: 'Additional CSS classes' },\n ],\n examples: [\n {\n title: 'Basic ClaimMindInput',\n code: `import { ClaimMindInput } from 'mta-design-system';\nimport 'mta-design-system/styles.css';\n\n<ClaimMindInput theme=\"Default\" placeholder=\"Enter text...\" />`,\n },\n ],\n dependencies: [],\n themable: true,\n },\n {\n name: 'ClaimMindCard',\n category: 'claimmind',\n description: 'A themed card component with optional top border accent.',\n sourcePath: 'src/stories/claimmind/Card.tsx',\n props: [\n { name: 'theme', type: \"'Default' | 'Owlexa' | 'BPJS'\", required: false, default: \"'Default'\", description: 'Brand theme' },\n { name: 'showTopBorder', type: 'boolean', required: false, default: 'false', description: 'Show colored top border' },\n { name: 'className', type: 'string', required: false, description: 'Additional CSS classes' },\n ],\n examples: [\n {\n title: 'Basic ClaimMindCard',\n code: `import { ClaimMindCard, CardHeader, CardTitle, CardContent } from 'mta-design-system';\nimport 'mta-design-system/styles.css';\n\n<ClaimMindCard theme=\"Owlexa\" showTopBorder>\n <CardHeader>\n <CardTitle>Card Title</CardTitle>\n </CardHeader>\n <CardContent>\n <p>Card content goes here</p>\n </CardContent>\n</ClaimMindCard>`,\n },\n ],\n dependencies: [],\n themable: true,\n },\n {\n name: 'ClaimMindAlert',\n category: 'claimmind',\n description: 'A themed alert component with brand colors.',\n sourcePath: 'src/stories/claimmind/Alert.tsx',\n props: [\n { name: 'theme', type: \"'Default' | 'Owlexa' | 'BPJS'\", required: false, default: \"'Default'\", description: 'Brand theme' },\n { name: 'variant', type: \"'info' | 'success' | 'warning' | 'error'\", required: false, default: \"'info'\", description: 'Alert type' },\n { name: 'title', type: 'string', required: false, description: 'Alert title' },\n { name: 'description', type: 'string', required: false, description: 'Alert description' },\n ],\n examples: [\n {\n title: 'ClaimMindAlert Variants',\n code: `import { ClaimMindAlert } from 'mta-design-system';\nimport 'mta-design-system/styles.css';\n\n<ClaimMindAlert theme=\"Default\" variant=\"success\" title=\"Success!\" description=\"Operation completed.\" />\n<ClaimMindAlert theme=\"Owlexa\" variant=\"error\" title=\"Error\" description=\"Something went wrong.\" />`,\n },\n ],\n dependencies: ['lucide-react'],\n themable: true,\n },\n {\n name: 'ClaimMindSpinner',\n category: 'claimmind',\n description: 'A themed loading spinner component.',\n sourcePath: 'src/stories/claimmind/Spinner.tsx',\n props: [\n { name: 'theme', type: \"'Default' | 'Owlexa' | 'BPJS'\", required: false, default: \"'Default'\", description: 'Brand theme' },\n { name: 'size', type: \"'sm' | 'default' | 'lg'\", required: false, default: \"'default'\", description: 'Spinner size' },\n { name: 'className', type: 'string', required: false, description: 'Additional CSS classes' },\n ],\n examples: [\n {\n title: 'ClaimMindSpinner',\n code: `import { ClaimMindSpinner } from 'mta-design-system';\nimport 'mta-design-system/styles.css';\n\n<ClaimMindSpinner theme=\"BPJS\" size=\"lg\" />`,\n },\n ],\n dependencies: [],\n themable: true,\n },\n {\n name: 'ClaimMindSelect',\n category: 'claimmind',\n description: 'A themed select dropdown component.',\n sourcePath: 'src/stories/claimmind/Select.tsx',\n props: [\n { name: 'theme', type: \"'Default' | 'Owlexa' | 'BPJS'\", required: false, default: \"'Default'\", description: 'Brand theme' },\n { name: 'placeholder', type: 'string', required: false, description: 'Placeholder text' },\n { name: 'options', type: 'Array<{ value: string; label: string }>', required: true, description: 'Select options' },\n { name: 'value', type: 'string', required: false, description: 'Selected value' },\n { name: 'onValueChange', type: '(value: string) => void', required: false, description: 'Value change callback' },\n ],\n examples: [\n {\n title: 'ClaimMindSelect',\n code: `import { ClaimMindSelect } from 'mta-design-system';\nimport 'mta-design-system/styles.css';\n\nconst options = [\n { value: 'option1', label: 'Option 1' },\n { value: 'option2', label: 'Option 2' },\n];\n\n<ClaimMindSelect\n theme=\"Default\"\n options={options}\n placeholder=\"Select an option\"\n/>`,\n },\n ],\n dependencies: ['@radix-ui/react-select'],\n themable: true,\n },\n {\n name: 'ClaimMindCombobox',\n category: 'claimmind',\n description: 'A themed combobox component with search functionality.',\n sourcePath: 'src/stories/claimmind/Combobox.tsx',\n props: [\n { name: 'theme', type: \"'Default' | 'Owlexa' | 'BPJS'\", required: false, default: \"'Default'\", description: 'Brand theme' },\n { name: 'placeholder', type: 'string', required: false, description: 'Search placeholder' },\n { name: 'options', type: 'Array<{ value: string; label: string }>', required: true, description: 'Combobox options' },\n { name: 'value', type: 'string', required: false, description: 'Selected value' },\n { name: 'onValueChange', type: '(value: string) => void', required: false, description: 'Value change callback' },\n ],\n examples: [\n {\n title: 'ClaimMindCombobox',\n code: `import { ClaimMindCombobox } from 'mta-design-system';\nimport 'mta-design-system/styles.css';\n\nconst options = [\n { value: 'apple', label: 'Apple' },\n { value: 'banana', label: 'Banana' },\n];\n\n<ClaimMindCombobox\n theme=\"Owlexa\"\n options={options}\n placeholder=\"Search fruits...\"\n/>`,\n },\n ],\n dependencies: ['cmdk', '@radix-ui/react-popover'],\n themable: true,\n },\n {\n name: 'ClaimMindDatePicker',\n category: 'claimmind',\n description: 'A themed date picker component.',\n sourcePath: 'src/stories/claimmind/DatePicker.tsx',\n props: [\n { name: 'theme', type: \"'Default' | 'Owlexa' | 'BPJS'\", required: false, default: \"'Default'\", description: 'Brand theme' },\n { name: 'placeholder', type: 'string', required: false, description: 'Placeholder text' },\n { name: 'value', type: 'Date', required: false, description: 'Selected date' },\n { name: 'onChange', type: '(date: Date | undefined) => void', required: false, description: 'Date change callback' },\n ],\n examples: [\n {\n title: 'ClaimMindDatePicker',\n code: `import { ClaimMindDatePicker } from 'mta-design-system';\nimport 'mta-design-system/styles.css';\n\n<ClaimMindDatePicker theme=\"Default\" placeholder=\"Pick a date\" />`,\n },\n ],\n dependencies: ['react-day-picker', 'date-fns', '@radix-ui/react-popover'],\n themable: true,\n },\n {\n name: 'ClaimMindTable',\n category: 'claimmind',\n description: 'A themed table component for data display.',\n sourcePath: 'src/stories/claimmind/Table.tsx',\n props: [\n { name: 'theme', type: \"'Default' | 'Owlexa' | 'BPJS'\", required: false, default: \"'Default'\", description: 'Brand theme' },\n { name: 'className', type: 'string', required: false, description: 'Additional CSS classes' },\n ],\n examples: [\n {\n title: 'ClaimMindTable',\n code: `import { ClaimMindTable, TableHeader, TableHead, TableBody, TableRow, TableCell } from 'mta-design-system';\nimport 'mta-design-system/styles.css';\n\n<ClaimMindTable theme=\"BPJS\">\n <TableHeader>\n <TableRow>\n <TableHead>Name</TableHead>\n <TableHead>Status</TableHead>\n </TableRow>\n </TableHeader>\n <TableBody>\n <TableRow>\n <TableCell>John Doe</TableCell>\n <TableCell>Active</TableCell>\n </TableRow>\n </TableBody>\n</ClaimMindTable>`,\n },\n ],\n dependencies: [],\n themable: true,\n },\n\n // ==================== MOLECULES ====================\n {\n name: 'Chat',\n category: 'molecules',\n description: 'A floating chat widget component with theme support.',\n sourcePath: 'src/stories/claimmind/molecules/Chat.tsx',\n props: [\n { name: 'theme', type: \"'Default' | 'Owlexa' | 'BPJS'\", required: false, default: \"'Default'\", description: 'Brand theme' },\n { name: 'variant', type: \"'float' | 'bottom-side'\", required: false, default: \"'float'\", description: 'Chat widget position' },\n { name: 'title', type: 'string', required: false, default: \"'Chat Support'\", description: 'Chat window title' },\n { name: 'messages', type: 'ChatMessage[]', required: false, description: 'Chat messages array' },\n { name: 'onSendMessage', type: '(message: string) => void', required: false, description: 'Send message callback' },\n { name: 'isOpen', type: 'boolean', required: false, description: 'Control open state' },\n { name: 'onToggle', type: '() => void', required: false, description: 'Toggle callback' },\n { name: 'placeholder', type: 'string', required: false, description: 'Input placeholder' },\n ],\n examples: [\n {\n title: 'Chat Widget',\n code: `import { Chat } from 'mta-design-system';\nimport 'mta-design-system/styles.css';\n\nconst messages = [\n { id: '1', text: 'Hello!', sender: 'bot' as const, timestamp: new Date() },\n { id: '2', text: 'Hi there!', sender: 'user' as const, timestamp: new Date() },\n];\n\nfunction App() {\n const [isOpen, setIsOpen] = useState(false);\n\n return (\n <Chat\n theme=\"Owlexa\"\n variant=\"float\"\n messages={messages}\n isOpen={isOpen}\n onToggle={() => setIsOpen(!isOpen)}\n onSendMessage={(msg) => console.log(msg)}\n />\n );\n}`,\n },\n ],\n dependencies: ['lucide-react'],\n themable: true,\n },\n {\n name: 'DashboardCard',\n category: 'molecules',\n description: 'A themed dashboard card for displaying metrics.',\n sourcePath: 'src/stories/claimmind/molecules/DashboardCard.tsx',\n props: [\n { name: 'label', type: 'string', required: true, description: 'Card label (e.g., \"Total Claims\")' },\n { name: 'value', type: 'string | number', required: true, description: 'Value to display' },\n { name: 'iconName', type: 'LucideIconName', required: false, description: 'Icon name from lucide-react' },\n { name: 'icon', type: 'ReactNode', required: false, description: 'Custom icon element' },\n { name: 'theme', type: \"'Default' | 'Owlexa' | 'BPJS'\", required: false, default: \"'Default'\", description: 'Brand theme' },\n { name: 'colorVariant', type: \"'primary' | 'secondary' | 'tertiary' | 'success' | 'danger'\", required: false, default: \"'primary'\", description: 'Icon color variant' },\n ],\n examples: [\n {\n title: 'DashboardCard',\n code: `import { DashboardCard } from 'mta-design-system';\nimport 'mta-design-system/styles.css';\n\n<DashboardCard\n label=\"Total Claims\"\n value=\"1,234\"\n iconName=\"FileText\"\n theme=\"Default\"\n colorVariant=\"primary\"\n/>`,\n },\n ],\n dependencies: ['lucide-react'],\n themable: true,\n },\n {\n name: 'Title',\n category: 'molecules',\n description: 'A themed title component with underline accent.',\n sourcePath: 'src/stories/claimmind/molecules/Title.tsx',\n props: [\n { name: 'children', type: 'ReactNode', required: true, description: 'Title content' },\n { name: 'theme', type: \"'Default' | 'Owlexa' | 'BPJS'\", required: false, default: \"'Default'\", description: 'Brand theme' },\n { name: 'as', type: \"'h1' | 'h2' | 'h3' | 'h4'\", required: false, default: \"'h2'\", description: 'HTML heading tag' },\n { name: 'underline', type: 'boolean', required: false, default: 'true', description: 'Show underline accent' },\n { name: 'className', type: 'string', required: false, description: 'Additional CSS classes' },\n ],\n examples: [\n {\n title: 'Title Component',\n code: `import { Title } from 'mta-design-system';\nimport 'mta-design-system/styles.css';\n\n<Title theme=\"Owlexa\" as=\"h1\" underline>\n Welcome to ClaimMind\n</Title>`,\n },\n ],\n dependencies: [],\n themable: true,\n },\n {\n name: 'SyncProgress',\n category: 'molecules',\n description: 'A themed sync progress card showing synchronization status.',\n sourcePath: 'src/stories/claimmind/molecules/SyncProgress.tsx',\n props: [\n { name: 'progress', type: 'number', required: true, description: 'Progress percentage (0-100)' },\n { name: 'status', type: \"'syncing' | 'completed' | 'failed'\", required: false, default: \"'syncing'\", description: 'Sync status' },\n { name: 'theme', type: \"'Default' | 'Owlexa' | 'BPJS'\", required: false, default: \"'Default'\", description: 'Brand theme' },\n { name: 'message', type: 'string', required: false, description: 'Status message' },\n { name: 'onCancel', type: '() => void', required: false, description: 'Cancel callback' },\n ],\n examples: [\n {\n title: 'SyncProgress Card',\n code: `import { SyncProgress } from 'mta-design-system';\nimport 'mta-design-system/styles.css';\n\n<SyncProgress\n progress={65}\n status=\"syncing\"\n theme=\"BPJS\"\n message=\"Syncing data from server...\"\n onCancel={() => console.log('Cancelled')}\n/>`,\n },\n ],\n dependencies: ['lucide-react'],\n themable: true,\n },\n\n // ==================== PAGES ====================\n {\n name: 'LoginPage',\n category: 'pages',\n description: 'A complete login page template with theme support.',\n sourcePath: 'src/stories/claimmind/pages/LoginPage.tsx',\n props: [\n { name: 'theme', type: \"'Default' | 'Owlexa' | 'BPJS'\", required: false, default: \"'Default'\", description: 'Brand theme' },\n { name: 'title', type: 'string', required: false, default: \"'Login ke ClaimMind'\", description: 'Page title' },\n { name: 'description', type: 'string', required: false, description: 'Page description' },\n ],\n examples: [\n {\n title: 'LoginPage',\n code: `import { LoginPage } from 'mta-design-system';\nimport 'mta-design-system/styles.css';\n\n// In your Next.js app\nexport default function Login() {\n return (\n <LoginPage\n theme=\"Owlexa\"\n title=\"Welcome to Owlexa\"\n description=\"Enter your credentials to access your account.\"\n />\n );\n}`,\n },\n ],\n dependencies: ['lucide-react'],\n themable: true,\n },\n];\n\n// Helper functions\nexport function getComponentByName(name: string): ComponentInfo | undefined {\n return componentRegistry.find(\n (c) => c.name.toLowerCase() === name.toLowerCase() ||\n c.name.toLowerCase().replace('claimmind', '') === name.toLowerCase()\n );\n}\n\nexport function getComponentsByCategory(category: ComponentInfo['category']): ComponentInfo[] {\n return componentRegistry.filter((c) => c.category === category);\n}\n\nexport function searchComponents(query: string): ComponentInfo[] {\n const lowerQuery = query.toLowerCase();\n return componentRegistry.filter(\n (c) =>\n c.name.toLowerCase().includes(lowerQuery) ||\n c.description.toLowerCase().includes(lowerQuery) ||\n c.props.some((p) => p.name.toLowerCase().includes(lowerQuery))\n );\n}\n\nexport function getAllComponentNames(): string[] {\n return componentRegistry.map((c) => c.name);\n}\n\nexport function getCategories(): ComponentInfo['category'][] {\n return ['ui', 'claimmind', 'molecules', 'pages'];\n}\n","import chalk from 'chalk';\nimport { getComponentByName, type ComponentInfo } from '../registry.js';\nimport fs from 'fs';\nimport path from 'path';\n\ninterface ShowOptions {\n props?: boolean;\n examples?: boolean;\n source?: boolean;\n}\n\nexport function showCommand(componentName: string, options: ShowOptions) {\n const component = getComponentByName(componentName);\n\n if (!component) {\n console.log(chalk.red(`\\n Component \"${componentName}\" not found.`));\n console.log(chalk.gray(` Run ${chalk.cyan('mta-ds list')} to see all available components.\\n`));\n process.exit(1);\n }\n\n const { props, examples, source } = options;\n\n // If no specific flags, show everything\n const showAll = !props && !examples && !source;\n\n console.log(chalk.bold.cyan(`\\nš ${component.name}\\n`));\n console.log(chalk.white(component.description));\n\n if (component.themable) {\n console.log(chalk.green('\\n ⨠Themable: Yes (Default, Owlexa, BPJS)'));\n }\n\n // Dependencies\n if (component.dependencies && component.dependencies.length > 0) {\n console.log(chalk.gray(`\\n Dependencies: ${component.dependencies.join(', ')}`));\n }\n\n // Props\n if ((showAll || props) && component.props.length > 0) {\n console.log(chalk.bold.white('\\n Props:'));\n console.log(chalk.gray(' ā'.repeat(30)));\n\n for (const prop of component.props) {\n const required = prop.required ? chalk.red('*') : '';\n const defaultVal = prop.default ? chalk.gray(` = ${prop.default}`) : '';\n console.log(` ${chalk.cyan(prop.name)}${required}: ${chalk.yellow(prop.type)}${defaultVal}`);\n console.log(chalk.gray(` ${prop.description}`));\n }\n }\n\n // Examples\n if (showAll || examples) {\n console.log(chalk.bold.white('\\n Examples:'));\n console.log(chalk.gray(' ā'.repeat(30)));\n\n for (const example of component.examples) {\n console.log(chalk.white(`\\n ${example.title}:`));\n if (example.description) {\n console.log(chalk.gray(` ${example.description}`));\n }\n console.log(chalk.gray(' ' + 'ā'.repeat(20)));\n console.log(chalk.blue(example.code.split('\\n').map(line => ' ' + line).join('\\n')));\n }\n }\n\n // Source\n if (source) {\n console.log(chalk.bold.white('\\n Source:'));\n console.log(chalk.gray(' ā'.repeat(30)));\n console.log(chalk.gray(` Path: ${component.sourcePath}`));\n\n try {\n // Try to read the source file\n const packageRoot = path.resolve(__dirname, '..', '..', '..');\n const sourcePath = path.join(packageRoot, component.sourcePath);\n\n if (fs.existsSync(sourcePath)) {\n const sourceCode = fs.readFileSync(sourcePath, 'utf-8');\n console.log(chalk.gray('\\n'));\n console.log(chalk.blue(sourceCode.split('\\n').map(line => ' ' + line).join('\\n')));\n } else {\n console.log(chalk.yellow(' Source file not available in this context.'));\n }\n } catch (error) {\n console.log(chalk.yellow(' Could not read source file.'));\n }\n }\n\n console.log(chalk.gray(`\\n Import: ${chalk.cyan(`import { ${component.name} } from 'mta-design-system';`)}\\n`));\n}\n","import chalk from 'chalk';\nimport fs from 'fs-extra';\nimport path from 'path';\nimport inquirer from 'inquirer';\n\ninterface InitOptions {\n path?: string;\n theme?: string;\n skipDeps?: boolean;\n}\n\nexport async function initCommand(options: InitOptions) {\n const { path: targetPath = '.', theme = 'Default', skipDeps } = options;\n\n console.log(chalk.bold.cyan('\\nš Initializing MTA Design System...\\n'));\n\n const projectPath = path.resolve(targetPath);\n\n // Check if package.json exists\n const packageJsonPath = path.join(projectPath, 'package.json');\n if (!fs.existsSync(packageJsonPath)) {\n console.log(chalk.yellow(' No package.json found. Creating one...'));\n await fs.writeJson(packageJsonPath, {\n name: path.basename(projectPath),\n version: '0.1.0',\n private: true,\n }, { spaces: 2 });\n }\n\n // Prompt for configuration if not provided\n const answers = await inquirer.prompt([\n {\n type: 'list',\n name: 'defaultTheme',\n message: 'Select your default theme:',\n choices: ['Default', 'Owlexa', 'BPJS'],\n default: theme,\n when: !options.theme,\n },\n {\n type: 'confirm',\n name: 'installDeps',\n message: 'Install required dependencies?',\n default: true,\n when: !skipDeps,\n },\n {\n type: 'input',\n name: 'componentsPath',\n message: 'Where should components be stored?',\n default: './src/components',\n },\n ]);\n\n const config = {\n defaultTheme: answers.defaultTheme || theme,\n componentsPath: answers.componentsPath || './src/components',\n importAlias: '@/',\n };\n\n // Create config file\n const configPath = path.join(projectPath, 'mta-ds.config.json');\n await fs.writeJson(configPath, config, { spaces: 2 });\n console.log(chalk.green(' ā Created mta-ds.config.json'));\n\n // Create components directory\n const componentsDir = path.join(projectPath, config.componentsPath.replace('./', ''));\n await fs.ensureDir(componentsDir);\n await fs.ensureDir(path.join(componentsDir, 'ui'));\n console.log(chalk.green(` ā Created ${config.componentsPath}/ui directory`));\n\n // Create or update tailwind.config.js\n await createTailwindConfig(projectPath);\n\n // Create or update globals.css\n await createGlobalsCss(projectPath, config.componentsPath);\n\n // Install dependencies\n if (answers.installDeps && !skipDeps) {\n console.log(chalk.cyan('\\n Installing dependencies...\\n'));\n const { execSync } = await import('child_process');\n\n const deps = [\n 'mta-design-system',\n '@radix-ui/react-dialog',\n '@radix-ui/react-label',\n '@radix-ui/react-popover',\n '@radix-ui/react-progress',\n '@radix-ui/react-select',\n '@radix-ui/react-slot',\n '@radix-ui/react-switch',\n '@radix-ui/react-tooltip',\n 'class-variance-authority',\n 'clsx',\n 'tailwind-merge',\n 'lucide-react',\n ];\n\n try {\n execSync(`npm install ${deps.join(' ')}`, { cwd: projectPath, stdio: 'inherit' });\n console.log(chalk.green('\\n ā Dependencies installed'));\n } catch {\n console.log(chalk.yellow('\\n ā Could not install dependencies automatically.'));\n console.log(chalk.gray(` Run: npm install ${deps.join(' ')}`));\n }\n }\n\n console.log(chalk.bold.green('\\nā
MTA Design System initialized successfully!\\n'));\n console.log(chalk.white(' Next steps:'));\n console.log(chalk.gray(' 1. Import styles in your app:'));\n console.log(chalk.cyan(\" import 'mta-design-system/styles.css';\"));\n console.log(chalk.gray(' 2. Start using components:'));\n console.log(chalk.cyan(\" import { ClaimMindButton } from 'mta-design-system';\"));\n console.log(chalk.gray(' 3. Add components to your project:'));\n console.log(chalk.cyan(' npx mta-ds add Button'));\n console.log();\n}\n\nasync function createTailwindConfig(projectPath: string) {\n const tailwindConfigPath = path.join(projectPath, 'tailwind.config.ts');\n\n if (fs.existsSync(tailwindConfigPath)) {\n console.log(chalk.gray(' ā¹ tailwind.config.ts already exists'));\n return;\n }\n\n const tailwindConfig = `import type { Config } from 'tailwindcss';\n\nconst config: Config = {\n content: [\n './src/pages/**/*.{js,ts,jsx,tsx,mdx}',\n './src/components/**/*.{js,ts,jsx,tsx,mdx}',\n './src/app/**/*.{js,ts,jsx,tsx,mdx}',\n './node_modules/mta-design-system/dist/**/*.{js,mjs}',\n ],\n theme: {\n extend: {},\n },\n plugins: [],\n};\n\nexport default config;\n`;\n\n await fs.writeFile(tailwindConfigPath, tailwindConfig);\n console.log(chalk.green(' ā Created tailwind.config.ts'));\n}\n\nasync function createGlobalsCss(projectPath: string, componentsPath: string) {\n const globalsPath = path.join(projectPath, 'src', 'app', 'globals.css');\n\n if (fs.existsSync(globalsPath)) {\n console.log(chalk.gray(' ā¹ globals.css already exists'));\n return;\n }\n\n // Create the file with just an import\n const globalsContent = `/* MTA Design System Styles */\n@import \"mta-design-system/styles.css\";\n`;\n\n await fs.ensureDir(path.dirname(globalsPath));\n await fs.writeFile(globalsPath, globalsContent);\n console.log(chalk.green(` ā Created src/app/globals.css`));\n}\n","import chalk from 'chalk';\nimport fs from 'fs-extra';\nimport path from 'path';\nimport inquirer from 'inquirer';\nimport { getComponentByName, componentRegistry, type ComponentInfo } from '../registry.js';\n\ninterface AddOptions {\n output?: string;\n theme?: string;\n overwrite?: boolean;\n alias?: string;\n}\n\nexport async function addCommand(componentName: string, options: AddOptions) {\n const { output = './src/components/ui', theme, overwrite = false, alias = '@/' } = options;\n\n const component = getComponentByName(componentName);\n\n if (!component) {\n console.log(chalk.red(`\\n Component \"${componentName}\" not found.`));\n console.log(chalk.gray(` Run ${chalk.cyan('mta-ds list')} to see all available components.\\n`));\n process.exit(1);\n }\n\n console.log(chalk.bold.cyan(`\\nš¦ Adding ${component.name}...\\n`));\n\n // Determine the output directory based on category\n let outputDir = output;\n if (component.category === 'claimmind') {\n outputDir = output.replace('/ui', '/claimmind');\n } else if (component.category === 'molecules') {\n outputDir = output.replace('/ui', '/claimmind/molecules');\n } else if (component.category === 'pages') {\n outputDir = output.replace('/ui', '/claimmind/pages');\n }\n\n // Resolve the package root to find source files\n const packageRoot = path.resolve(__dirname, '..', '..', '..');\n const sourcePath = path.join(packageRoot, component.sourcePath);\n\n // Check if source file exists\n if (!fs.existsSync(sourcePath)) {\n console.log(chalk.yellow(' ā Source file not found in package.'));\n console.log(chalk.gray(' The component is still available via import:'));\n console.log(chalk.cyan(` import { ${component.name} } from 'mta-design-system';`));\n console.log();\n return;\n }\n\n // Check if target already exists\n const targetPath = path.resolve(outputDir, path.basename(component.sourcePath));\n if (fs.existsSync(targetPath) && !overwrite) {\n const { shouldOverwrite } = await inquirer.prompt([\n {\n type: 'confirm',\n name: 'shouldOverwrite',\n message: `File ${targetPath} already exists. Overwrite?`,\n default: false,\n },\n ]);\n if (!shouldOverwrite) {\n console.log(chalk.gray(' Skipped.'));\n return;\n }\n }\n\n // Read and transform the source file\n let sourceCode = await fs.readFile(sourcePath, 'utf-8');\n\n // Transform @/ imports to use the user's alias\n sourceCode = transformImports(sourceCode, alias);\n\n // Ensure output directory exists\n await fs.ensureDir(path.dirname(targetPath));\n\n // Write the file\n await fs.writeFile(targetPath, sourceCode);\n\n console.log(chalk.green(` ā Created ${path.relative(process.cwd(), targetPath)}`));\n\n // Check for dependencies\n if (component.dependencies && component.dependencies.length > 0) {\n console.log(chalk.white('\\n Dependencies needed:'));\n for (const dep of component.dependencies) {\n console.log(chalk.gray(` - ${dep}`));\n }\n console.log(chalk.gray(`\\n Install with: npm install ${component.dependencies.join(' ')}`));\n }\n\n // Show import example\n const relativePath = path.relative(process.cwd(), targetPath)\n .replace(/\\\\/g, '/')\n .replace(/^src\\//, '@/')\n .replace(/\\.tsx$/, '');\n\n console.log(chalk.white('\\n Import:'));\n console.log(chalk.cyan(` import { ${component.name} } from '${alias}components/${getComponentFolder(component)}/${path.basename(component.sourcePath, '.tsx')}';`));\n console.log(chalk.gray(' or'));\n console.log(chalk.cyan(` import { ${component.name} } from 'mta-design-system';`));\n console.log();\n}\n\nfunction transformImports(sourceCode: string, alias: string): string {\n // Replace @/ with the user's alias\n return sourceCode.replace(/from\\s+['\"]@\\/([^'\"]+)['\"]/g, (match, importPath) => {\n return `from '${alias}${importPath}'`;\n });\n}\n\nfunction getComponentFolder(component: ComponentInfo): string {\n switch (component.category) {\n case 'ui':\n return 'ui';\n case 'claimmind':\n return 'claimmind';\n case 'molecules':\n return 'claimmind/molecules';\n case 'pages':\n return 'claimmind/pages';\n default:\n return 'components';\n }\n}\n"],"mappings":"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","names":["import_chalk","chalk","import_chalk","chalk","path","fs","import_chalk","import_path","chalk","path","fs","inquirer","import_chalk","import_fs_extra","import_path","import_inquirer","chalk","path","fs","inquirer","chalk"]}
|