mirror of
https://github.com/johndoe6345789/metabuilder.git
synced 2026-04-26 14:54:55 +00:00
ORGANIZED INTO 4 MAIN CATEGORIES: - react/ React TypeScript components (145 components + Python bindings) - qml/ QML desktop components (104+ QML components) - python/ Python package implementations - legacy/ Utilities, contexts, and migration-in-progress code SUPPORTING FOLDERS (kept as-is): - icons/ 421 SVG icons - theming/ Material Design 3 theme system - styles/ SCSS modules and utilities - scss/ SCSS preprocessor files - docs/ Documentation files STRUCTURE IMPROVEMENTS: ✅ All code preserved (nothing deleted) ✅ Clear separation by implementation type ✅ Better navigation and discoverability ✅ Easy to find what you need ✅ Professional organization DOCUMENTATION: - Added STRUCTURE.md explaining the new layout - Updated folder organization with clear purpose - Maintained all original functionality All files reorganized while keeping full functionality intact. Co-Authored-By: Claude Haiku 4.5 <noreply@anthropic.com>
70 lines
2.1 KiB
TypeScript
70 lines
2.1 KiB
TypeScript
import React from 'react'
|
|
|
|
export interface DialogOverlayProps extends React.HTMLAttributes<HTMLDivElement> {
|
|
children?: React.ReactNode
|
|
}
|
|
|
|
export const DialogOverlay: React.FC<DialogOverlayProps> = ({ children, onClick, className = '', ...props }) => (
|
|
<div className={`dialog-overlay ${className}`} onClick={onClick} {...props}>
|
|
{children}
|
|
</div>
|
|
)
|
|
|
|
export interface DialogPanelProps extends React.HTMLAttributes<HTMLDivElement> {
|
|
children?: React.ReactNode
|
|
sm?: boolean
|
|
lg?: boolean
|
|
xl?: boolean
|
|
}
|
|
|
|
export const DialogPanel: React.FC<DialogPanelProps> = ({ children, sm, lg, xl, className = '', ...props }) => (
|
|
<div
|
|
className={`dialog-panel ${sm ? 'dialog-panel--sm' : ''} ${lg ? 'dialog-panel--lg' : ''} ${xl ? 'dialog-panel--xl' : ''} ${className}`}
|
|
onClick={(e) => e.stopPropagation()}
|
|
{...props}
|
|
>
|
|
{children}
|
|
</div>
|
|
)
|
|
|
|
export interface DialogHeaderProps extends React.HTMLAttributes<HTMLDivElement> {
|
|
children?: React.ReactNode
|
|
}
|
|
|
|
export const DialogHeader: React.FC<DialogHeaderProps> = ({ children, className = '', ...props }) => (
|
|
<div className={`dialog-header ${className}`} {...props}>
|
|
{children}
|
|
</div>
|
|
)
|
|
|
|
export interface DialogTitleProps extends React.HTMLAttributes<HTMLHeadingElement> {
|
|
children?: React.ReactNode
|
|
}
|
|
|
|
export const DialogTitle: React.FC<DialogTitleProps> = ({ children, className = '', ...props }) => (
|
|
<h2 className={`dialog-title ${className}`} {...props}>
|
|
{children}
|
|
</h2>
|
|
)
|
|
|
|
export interface DialogContentProps extends React.HTMLAttributes<HTMLDivElement> {
|
|
children?: React.ReactNode
|
|
dividers?: boolean
|
|
}
|
|
|
|
export const DialogContent: React.FC<DialogContentProps> = ({ children, dividers, className = '', ...props }) => (
|
|
<div className={`dialog-content ${dividers ? 'dialog-content--dividers' : ''} ${className}`} {...props}>
|
|
{children}
|
|
</div>
|
|
)
|
|
|
|
export interface DialogActionsProps extends React.HTMLAttributes<HTMLDivElement> {
|
|
children?: React.ReactNode
|
|
}
|
|
|
|
export const DialogActions: React.FC<DialogActionsProps> = ({ children, className = '', ...props }) => (
|
|
<div className={`dialog-footer ${className}`} {...props}>
|
|
{children}
|
|
</div>
|
|
)
|