| import { type Component } from 'vue'; |
|
|
| |
| export { default as Button } from './Button.vue'; |
| export { default as Input } from './Input.vue'; |
| export { default as Card } from './Card.vue'; |
| export { default as Tabs } from './Tabs.vue'; |
|
|
| |
| export function cn(...classes: string[]): string { |
| return classes.filter(Boolean).join(' '); |
| } |
|
|
| |
| export const Icons = { |
| |
| Grid: (): Component => ({ |
| template: ` |
| <svg xmlns="http://www.w3.org/2000/svg" width="20" height="20" viewBox="0 0 24 24" fill="none" stroke="currentColor" stroke-width="2" stroke-linecap="round" stroke-linejoin="round"> |
| <rect width="7" height="7" x="3" y="3" rx="1"/> |
| <rect width="7" height="7" x="14" y="3" rx="1"/> |
| <rect width="7" height="7" x="14" y="14" rx="1"/> |
| <rect width="7" height="7" x="3" y="14" rx="1"/> |
| </svg> |
| ` |
| }), |
| |
| Search: (): Component => ({ |
| template: ` |
| <svg xmlns="http://www.w3.org/2000/svg" width="20" height="20" viewBox="0 0 24 24" fill="none" stroke="currentColor" stroke-width="2" stroke-linecap="round" stroke-linejoin="round"> |
| <circle cx="11" cy="11" r="8"/> |
| <path d="m21 21-4.35-4.35"/> |
| </svg> |
| ` |
| }), |
| |
| Send: (): Component => ({ |
| template: ` |
| <svg viewBox="0 0 24 24" xmlns="http://www.w3.org/2000/svg" width="24" height="24" fill="currentColor"> |
| <path d="M21.7267 2.95694L16.2734 22.0432C16.1225 22.5716 15.7979 22.5956 15.5563 22.1126L11 13L1.9229 9.36919C1.41322 9.16532 1.41953 8.86022 1.95695 8.68108L21.0432 2.31901C21.5716 2.14285 21.8747 2.43866 21.7267 2.95694ZM19.0353 5.09647L6.81221 9.17085L12.4488 11.4255L15.4895 17.5068L19.0353 5.09647Z"/> |
| </svg> |
| ` |
| }), |
| |
| Loading: (): Component => ({ |
| template: ` |
| <svg xmlns="http://www.w3.org/2000/svg" width="20" height="20" viewBox="0 0 24 24" fill="none" stroke="currentColor" stroke-width="2" stroke-linecap="round" stroke-linejoin="round"> |
| <path d="M21 12a9 9 0 1 1-6.219-8.56"/> |
| </svg> |
| ` |
| }), |
| |
| Folder: (): Component => ({ |
| template: ` |
| <svg xmlns="http://www.w3.org/2000/svg" width="20" height="20" viewBox="0 0 24 24" fill="none" stroke="currentColor" stroke-width="2" stroke-linecap="round" stroke-linejoin="round"> |
| <path d="M20 20a2 2 0 0 0 2-2V8a2 2 0 0 0-2-2h-7.9a2 2 0 0 1-1.69-.9L9.6 3.9A2 2 0 0 0 7.93 3H4a2 2 0 0 0-2 2v13a2 2 0 0 0 2 2Z"/> |
| </svg> |
| ` |
| }), |
| |
| Clock: (): Component => ({ |
| template: ` |
| <svg xmlns="http://www.w3.org/2000/svg" width="20" height="20" viewBox="0 0 24 24" fill="none" stroke="currentColor" stroke-width="2" stroke-linecap="round" stroke-linejoin="round"> |
| <circle cx="12" cy="12" r="10"/> |
| <polyline points="12,6 12,12 16,14"/> |
| </svg> |
| ` |
| }), |
| |
| ChevronRight: (): Component => ({ |
| template: ` |
| <svg xmlns="http://www.w3.org/2000/svg" width="20" height="20" viewBox="0 0 24 24" fill="none" stroke="currentColor" stroke-width="2" stroke-linecap="round" stroke-linejoin="round"> |
| <path d="m9 18 6-6-6-6"/> |
| </svg> |
| ` |
| }), |
| |
| Download: (): Component => ({ |
| template: ` |
| <svg xmlns="http://www.w3.org/2000/svg" width="20" height="20" viewBox="0 0 24 24" fill="none" stroke="currentColor" stroke-width="2" stroke-linecap="round" stroke-linejoin="round"> |
| <path d="M21 15v4a2 2 0 0 1-2 2H5a2 2 0 0 1-2-2v-4"/> |
| <polyline points="7,10 12,15 17,10"/> |
| <line x1="12" x2="12" y1="15" y2="3"/> |
| </svg> |
| ` |
| }), |
| |
| Copy: (): Component => ({ |
| template: ` |
| <svg xmlns="http://www.w3.org/2000/svg" width="20" height="20" viewBox="0 0 24 24" fill="none" stroke="currentColor" stroke-width="2" stroke-linecap="round" stroke-linejoin="round"> |
| <rect width="14" height="14" x="8" y="8" rx="2" ry="2"/> |
| <path d="M4 16c-1.1 0-2-.9-2-2V4c0-1.1.9-2 2-2h10c1.1 0 2 .9 2 2"/> |
| </svg> |
| ` |
| }), |
| }; |