@machinemetrics/mm-react-components 0.1.1-0 → 0.2.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.
Files changed (37) hide show
  1. package/CHANGELOG.md +61 -0
  2. package/README.md +218 -0
  3. package/dist/App.d.ts +3 -0
  4. package/dist/App.d.ts.map +1 -0
  5. package/dist/components/ui/button.d.ts +23 -0
  6. package/dist/components/ui/button.d.ts.map +1 -0
  7. package/dist/components/ui/checkbox.d.ts +17 -0
  8. package/dist/components/ui/checkbox.d.ts.map +1 -0
  9. package/dist/components/ui/input.d.ts +18 -0
  10. package/dist/components/ui/input.d.ts.map +1 -0
  11. package/dist/components/ui/label.d.ts +14 -0
  12. package/dist/components/ui/label.d.ts.map +1 -0
  13. package/dist/components/ui/radio-group.d.ts +25 -0
  14. package/dist/components/ui/radio-group.d.ts.map +1 -0
  15. package/dist/index.d.ts +8 -0
  16. package/dist/index.d.ts.map +1 -0
  17. package/dist/lib/theme-utils.d.ts +104 -0
  18. package/dist/lib/theme-utils.d.ts.map +1 -0
  19. package/dist/lib/utils.d.ts +3 -0
  20. package/dist/lib/utils.d.ts.map +1 -0
  21. package/dist/main.d.ts +3 -0
  22. package/dist/main.d.ts.map +1 -0
  23. package/dist/mm-react-components.es.js +4873 -26
  24. package/dist/mm-react-components.es.js.map +1 -0
  25. package/dist/mm-react-components.umd.js +36 -1
  26. package/dist/mm-react-components.umd.js.map +1 -0
  27. package/dist/preview/ButtonPreview.d.ts +2 -0
  28. package/dist/preview/ButtonPreview.d.ts.map +1 -0
  29. package/dist/preview/CheckboxPreview.d.ts +2 -0
  30. package/dist/preview/CheckboxPreview.d.ts.map +1 -0
  31. package/dist/preview/InputPreview.d.ts +2 -0
  32. package/dist/preview/InputPreview.d.ts.map +1 -0
  33. package/dist/preview/LabelPreview.d.ts +2 -0
  34. package/dist/preview/LabelPreview.d.ts.map +1 -0
  35. package/dist/preview/RadioGroupPreview.d.ts +2 -0
  36. package/dist/preview/RadioGroupPreview.d.ts.map +1 -0
  37. package/package.json +88 -15
package/CHANGELOG.md ADDED
@@ -0,0 +1,61 @@
1
+ # Changelog
2
+
3
+ All notable changes to this project will be documented in this file.
4
+
5
+ The format is based on [Keep a Changelog](https://keepachangelog.com/en/1.0.0/),
6
+ and this project adheres to [Semantic Versioning](https://semver.org/spec/v2.0.0.html).
7
+
8
+ ## [Unreleased]
9
+
10
+ ### Added
11
+
12
+ - Initial component library setup
13
+ - Button component with multiple variants
14
+ - Input component with validation states
15
+ - TypeScript support with full type definitions
16
+ - Tailwind CSS integration
17
+ - ESLint and Prettier configuration
18
+ - Playwright testing setup
19
+
20
+ ### Changed
21
+
22
+ - N/A
23
+
24
+ ### Deprecated
25
+
26
+ - N/A
27
+
28
+ ### Removed
29
+
30
+ - N/A
31
+
32
+ ### Fixed
33
+
34
+ - N/A
35
+
36
+ ### Security
37
+
38
+ - N/A
39
+
40
+ ## [0.1.0] - 2025-01-27
41
+
42
+ ### Added
43
+
44
+ - Initial release of @machinemetrics/mm-react-components
45
+ - Button component with variants: default, primary, secondary, outline, destructive
46
+ - Input component with type support
47
+ - Utility functions for class name merging
48
+ - Comprehensive TypeScript configuration
49
+ - Modern build system with Vite
50
+ - ESLint and Prettier for code quality
51
+ - Playwright for end-to-end testing
52
+ - NPM distribution configuration
53
+
54
+ ### Technical Details
55
+
56
+ - Built on React 19.1.1
57
+ - Uses shadcn/ui as component foundation
58
+ - Tailwind CSS for styling
59
+ - ES modules and UMD bundle support
60
+ - Tree-shakable architecture
61
+ - WCAG 2.1 AA accessibility compliance
package/README.md ADDED
@@ -0,0 +1,218 @@
1
+ # @machinemetrics/mm-react-components
2
+
3
+ A comprehensive React component library designed specifically for MachineMetrics industrial and manufacturing applications.
4
+
5
+ ## Features
6
+
7
+ - 🏭 **Industrial-Focused**: Components designed for manufacturing and industrial environments
8
+ - 🎨 **Modern Design**: Built on shadcn/ui with Tailwind CSS for consistent, accessible UI
9
+ - 📦 **Tree-Shakable**: ES modules with full tree-shaking support
10
+ - 🔧 **TypeScript**: Full TypeScript support with comprehensive type definitions
11
+ - ♿ **Accessible**: WCAG 2.1 AA compliant components
12
+ - 🚀 **Performance**: Optimized for real-time data display and monitoring
13
+
14
+ ## Installation
15
+
16
+ ```bash
17
+ npm install @machinemetrics/mm-react-components
18
+ ```
19
+
20
+ ## Quick Start
21
+
22
+ ```tsx
23
+ import { Button, Input } from '@machinemetrics/mm-react-components';
24
+ import '@machinemetrics/mm-react-components/styles';
25
+
26
+ function App() {
27
+ return (
28
+ <div>
29
+ <Button variant='primary'>Start Monitoring</Button>
30
+ <Input placeholder='Enter machine ID...' />
31
+ </div>
32
+ );
33
+ }
34
+ ```
35
+
36
+ ## Theme System
37
+
38
+ The component library includes a comprehensive theme system with two main themes:
39
+
40
+ ### Base Theme (OKLCH)
41
+
42
+ - Modern OKLCH color space for better perceptual uniformity
43
+ - Professional typography with Noto Sans and Inconsolata fonts
44
+ - Complete dark mode support
45
+ - Chart and sidebar color systems
46
+
47
+ ### Carbide Theme (Industrial)
48
+
49
+ - Manufacturing-appropriate color palette
50
+ - MachineMetrics brand colors (green, grey)
51
+ - Enhanced component styling for industrial applications
52
+ - Complete dark mode support
53
+
54
+ ### Using Themes
55
+
56
+ #### Option 1: Import CSS Files Directly
57
+
58
+ ```tsx
59
+ // In your main.tsx or App.tsx
60
+ import '@machinemetrics/mm-react-components/themes/base';
61
+ import '@machinemetrics/mm-react-components/themes/carbide';
62
+
63
+ // Add carbide class to activate Carbide theme
64
+ document.documentElement.classList.add('carbide');
65
+ ```
66
+
67
+ #### Option 2: Use Theme Utilities
68
+
69
+ ```tsx
70
+ import {
71
+ activateCarbideTheme,
72
+ toggleDarkMode,
73
+ isCarbideThemeActive,
74
+ } from '@machinemetrics/mm-react-components';
75
+
76
+ // Activate Carbide theme
77
+ activateCarbideTheme();
78
+
79
+ // Toggle dark mode
80
+ toggleDarkMode();
81
+
82
+ // Check theme status
83
+ const isCarbideActive = isCarbideThemeActive();
84
+ ```
85
+
86
+ #### Option 3: Manual CSS Import
87
+
88
+ ```css
89
+ /* In your CSS file */
90
+ @import '@machinemetrics/mm-react-components/themes/base';
91
+ @import '@machinemetrics/mm-react-components/themes/carbide';
92
+ ```
93
+
94
+ ### Theme Classes
95
+
96
+ The theme system uses CSS classes for activation:
97
+
98
+ - **Base theme**: Active by default
99
+ - **Carbide theme**: Add `carbide` class to `<html>` element
100
+ - **Dark mode**: Add `dark` class to `<html>` element
101
+
102
+ ```html
103
+ <!-- Base theme -->
104
+ <html>
105
+ <!-- Carbide theme -->
106
+ <html class="carbide">
107
+ <!-- Carbide theme + dark mode -->
108
+ <html class="carbide dark"></html>
109
+ </html>
110
+ </html>
111
+ ```
112
+
113
+ ### Available Theme Utilities
114
+
115
+ ```tsx
116
+ import {
117
+ // Carbide theme utilities
118
+ activateCarbideTheme,
119
+ deactivateCarbideTheme,
120
+ toggleCarbideTheme,
121
+ isCarbideThemeActive,
122
+
123
+ // Dark mode utilities
124
+ activateDarkMode,
125
+ deactivateDarkMode,
126
+ toggleDarkMode,
127
+ isDarkModeActive,
128
+ } from '@machinemetrics/mm-react-components';
129
+ ```
130
+
131
+ ## Components
132
+
133
+ ### Button
134
+
135
+ A versatile button component with multiple variants for different use cases.
136
+
137
+ ```tsx
138
+ import { Button } from '@machinemetrics/mm-react-components';
139
+
140
+ // Basic usage
141
+ <Button>Default</Button>
142
+
143
+ // Variants
144
+ <Button variant="primary">Primary</Button>
145
+ <Button variant="secondary">Secondary</Button>
146
+ <Button variant="outline">Outline</Button>
147
+ <Button variant="destructive">Destructive</Button>
148
+
149
+ // Sizes
150
+ <Button size="sm">Small</Button>
151
+ <Button size="lg">Large</Button>
152
+ ```
153
+
154
+ ### Input
155
+
156
+ Form input component with built-in validation states.
157
+
158
+ ```tsx
159
+ import { Input } from '@machinemetrics/mm-react-components';
160
+
161
+ <Input placeholder="Enter value..." />
162
+ <Input type="email" placeholder="Email address" />
163
+ <Input type="password" placeholder="Password" />
164
+ ```
165
+
166
+ ## Styling
167
+
168
+ The component library uses Tailwind CSS. Make sure to include the styles in your application:
169
+
170
+ ```tsx
171
+ import '@machinemetrics/mm-react-components/styles';
172
+ ```
173
+
174
+ If you're using Tailwind CSS in your project, you can also import the component styles directly:
175
+
176
+ ```css
177
+ @import '@machinemetrics/mm-react-components/styles';
178
+ ```
179
+
180
+ ## TypeScript Support
181
+
182
+ This library is built with TypeScript and provides full type definitions:
183
+
184
+ ```tsx
185
+ import { Button, type ButtonProps } from '@machinemetrics/mm-react-components';
186
+
187
+ const CustomButton: React.FC<ButtonProps> = props => {
188
+ return <Button {...props} />;
189
+ };
190
+ ```
191
+
192
+ ## Requirements
193
+
194
+ - React 18.0.0 or higher
195
+ - Node.js 20.0.0 or higher
196
+
197
+ ## Browser Support
198
+
199
+ - Chrome (latest)
200
+ - Firefox (latest)
201
+ - Safari (latest)
202
+ - Edge (latest)
203
+
204
+ ## Contributing
205
+
206
+ We welcome contributions! Please see our [Contributing Guide](CONTRIBUTING.md) for details.
207
+
208
+ ## License
209
+
210
+ MIT License - see [LICENSE](LICENSE) file for details.
211
+
212
+ ## Support
213
+
214
+ For support and questions, please contact the MachineMetrics development team.
215
+
216
+ ---
217
+
218
+ Built with ❤️ by the MachineMetrics team for industrial applications.
package/dist/App.d.ts ADDED
@@ -0,0 +1,3 @@
1
+ declare function App(): import("react/jsx-runtime").JSX.Element;
2
+ export default App;
3
+ //# sourceMappingURL=App.d.ts.map
@@ -0,0 +1 @@
1
+ {"version":3,"file":"App.d.ts","sourceRoot":"","sources":["../src/App.tsx"],"names":[],"mappings":"AA0CA,iBAAS,GAAG,4CA+IX;AAED,eAAe,GAAG,CAAC"}
@@ -0,0 +1,23 @@
1
+ import * as React from 'react';
2
+ import { type VariantProps } from 'class-variance-authority';
3
+ declare const buttonVariants: (props?: ({
4
+ variant?: "default" | "link" | "destructive" | "outline" | "secondary" | "ghost" | null | undefined;
5
+ size?: "default" | "sm" | "lg" | "icon" | null | undefined;
6
+ } & import("class-variance-authority/types").ClassProp) | undefined) => string;
7
+ /**
8
+ * Button component with multiple variants and sizes
9
+ *
10
+ * @example
11
+ * ```tsx
12
+ * <Button variant="default" size="lg" onClick={() => console.log('clicked')}>
13
+ * Click me
14
+ * </Button>
15
+ * ```
16
+ */
17
+ export interface ButtonProps extends React.ButtonHTMLAttributes<HTMLButtonElement>, VariantProps<typeof buttonVariants> {
18
+ /** Render as a different element using Radix Slot */
19
+ asChild?: boolean;
20
+ }
21
+ declare const Button: React.ForwardRefExoticComponent<ButtonProps & React.RefAttributes<HTMLButtonElement>>;
22
+ export { Button, buttonVariants };
23
+ //# sourceMappingURL=button.d.ts.map
@@ -0,0 +1 @@
1
+ {"version":3,"file":"button.d.ts","sourceRoot":"","sources":["../../../src/components/ui/button.tsx"],"names":[],"mappings":"AAAA,OAAO,KAAK,KAAK,MAAM,OAAO,CAAC;AAE/B,OAAO,EAAO,KAAK,YAAY,EAAE,MAAM,0BAA0B,CAAC;AAIlE,QAAA,MAAM,cAAc;;;8EA2BnB,CAAC;AAEF;;;;;;;;;GASG;AACH,MAAM,WAAW,WACf,SAAQ,KAAK,CAAC,oBAAoB,CAAC,iBAAiB,CAAC,EACnD,YAAY,CAAC,OAAO,cAAc,CAAC;IACrC,qDAAqD;IACrD,OAAO,CAAC,EAAE,OAAO,CAAC;CACnB;AAED,QAAA,MAAM,MAAM,uFAWX,CAAC;AAGF,OAAO,EAAE,MAAM,EAAE,cAAc,EAAE,CAAC"}
@@ -0,0 +1,17 @@
1
+ import * as React from 'react';
2
+ import * as CheckboxPrimitive from '@radix-ui/react-checkbox';
3
+ /**
4
+ * Checkbox component with checked, unchecked, and indeterminate states
5
+ *
6
+ * @example
7
+ * ```tsx
8
+ * <Checkbox
9
+ * id="terms"
10
+ * checked={checked}
11
+ * onCheckedChange={(value) => setChecked(value)}
12
+ * />
13
+ * ```
14
+ */
15
+ declare function Checkbox({ className, ...props }: React.ComponentProps<typeof CheckboxPrimitive.Root>): import("react/jsx-runtime").JSX.Element;
16
+ export { Checkbox };
17
+ //# sourceMappingURL=checkbox.d.ts.map
@@ -0,0 +1 @@
1
+ {"version":3,"file":"checkbox.d.ts","sourceRoot":"","sources":["../../../src/components/ui/checkbox.tsx"],"names":[],"mappings":"AAAA,OAAO,KAAK,KAAK,MAAM,OAAO,CAAC;AAC/B,OAAO,KAAK,iBAAiB,MAAM,0BAA0B,CAAC;AAK9D;;;;;;;;;;;GAWG;AACH,iBAAS,QAAQ,CAAC,EAChB,SAAS,EACT,GAAG,KAAK,EACT,EAAE,KAAK,CAAC,cAAc,CAAC,OAAO,iBAAiB,CAAC,IAAI,CAAC,2CAkBrD;AAED,OAAO,EAAE,QAAQ,EAAE,CAAC"}
@@ -0,0 +1,18 @@
1
+ import * as React from 'react';
2
+ /**
3
+ * Input component for text, email, password, and other input types
4
+ *
5
+ * @example
6
+ * ```tsx
7
+ * <Input
8
+ * type="email"
9
+ * placeholder="Enter your email"
10
+ * value={email}
11
+ * onChange={(e) => setEmail(e.target.value)}
12
+ * />
13
+ * ```
14
+ */
15
+ export type InputProps = React.InputHTMLAttributes<HTMLInputElement>;
16
+ declare const Input: React.ForwardRefExoticComponent<InputProps & React.RefAttributes<HTMLInputElement>>;
17
+ export { Input };
18
+ //# sourceMappingURL=input.d.ts.map
@@ -0,0 +1 @@
1
+ {"version":3,"file":"input.d.ts","sourceRoot":"","sources":["../../../src/components/ui/input.tsx"],"names":[],"mappings":"AAAA,OAAO,KAAK,KAAK,MAAM,OAAO,CAAC;AAI/B;;;;;;;;;;;;GAYG;AACH,MAAM,MAAM,UAAU,GAAG,KAAK,CAAC,mBAAmB,CAAC,gBAAgB,CAAC,CAAC;AAErE,QAAA,MAAM,KAAK,qFAcV,CAAC;AAGF,OAAO,EAAE,KAAK,EAAE,CAAC"}
@@ -0,0 +1,14 @@
1
+ import * as React from 'react';
2
+ import * as LabelPrimitive from '@radix-ui/react-label';
3
+ /**
4
+ * Label component for form inputs and accessibility
5
+ *
6
+ * @example
7
+ * ```tsx
8
+ * <Label htmlFor="email">Email Address</Label>
9
+ * <Input id="email" type="email" />
10
+ * ```
11
+ */
12
+ declare function Label({ className, ...props }: React.ComponentProps<typeof LabelPrimitive.Root>): import("react/jsx-runtime").JSX.Element;
13
+ export { Label };
14
+ //# sourceMappingURL=label.d.ts.map
@@ -0,0 +1 @@
1
+ {"version":3,"file":"label.d.ts","sourceRoot":"","sources":["../../../src/components/ui/label.tsx"],"names":[],"mappings":"AAAA,OAAO,KAAK,KAAK,MAAM,OAAO,CAAC;AAC/B,OAAO,KAAK,cAAc,MAAM,uBAAuB,CAAC;AAIxD;;;;;;;;GAQG;AACH,iBAAS,KAAK,CAAC,EACb,SAAS,EACT,GAAG,KAAK,EACT,EAAE,KAAK,CAAC,cAAc,CAAC,OAAO,cAAc,CAAC,IAAI,CAAC,2CAWlD;AAED,OAAO,EAAE,KAAK,EAAE,CAAC"}
@@ -0,0 +1,25 @@
1
+ import * as React from 'react';
2
+ import * as RadioGroupPrimitive from '@radix-ui/react-radio-group';
3
+ /**
4
+ * RadioGroup component for single selection from multiple options
5
+ *
6
+ * @example
7
+ * ```tsx
8
+ * <RadioGroup value={selected} onValueChange={setSelected}>
9
+ * <RadioGroupItem value="option1" id="option1" />
10
+ * <Label htmlFor="option1">Option 1</Label>
11
+ * </RadioGroup>
12
+ * ```
13
+ */
14
+ declare function RadioGroup({ className, ...props }: React.ComponentProps<typeof RadioGroupPrimitive.Root>): import("react/jsx-runtime").JSX.Element;
15
+ /**
16
+ * Individual radio button item within a RadioGroup
17
+ *
18
+ * @example
19
+ * ```tsx
20
+ * <RadioGroupItem value="option1" id="option1" />
21
+ * ```
22
+ */
23
+ declare function RadioGroupItem({ className, ...props }: React.ComponentProps<typeof RadioGroupPrimitive.Item>): import("react/jsx-runtime").JSX.Element;
24
+ export { RadioGroup, RadioGroupItem };
25
+ //# sourceMappingURL=radio-group.d.ts.map
@@ -0,0 +1 @@
1
+ {"version":3,"file":"radio-group.d.ts","sourceRoot":"","sources":["../../../src/components/ui/radio-group.tsx"],"names":[],"mappings":"AAAA,OAAO,KAAK,KAAK,MAAM,OAAO,CAAC;AAC/B,OAAO,KAAK,mBAAmB,MAAM,6BAA6B,CAAC;AAKnE;;;;;;;;;;GAUG;AACH,iBAAS,UAAU,CAAC,EAClB,SAAS,EACT,GAAG,KAAK,EACT,EAAE,KAAK,CAAC,cAAc,CAAC,OAAO,mBAAmB,CAAC,IAAI,CAAC,2CAQvD;AAED;;;;;;;GAOG;AACH,iBAAS,cAAc,CAAC,EACtB,SAAS,EACT,GAAG,KAAK,EACT,EAAE,KAAK,CAAC,cAAc,CAAC,OAAO,mBAAmB,CAAC,IAAI,CAAC,2CAkBvD;AAED,OAAO,EAAE,UAAU,EAAE,cAAc,EAAE,CAAC"}
@@ -0,0 +1,8 @@
1
+ export { cn } from './lib/utils';
2
+ export { Button, buttonVariants } from './components/ui/button';
3
+ export { Input } from './components/ui/input';
4
+ export { activateCarbideTheme } from './lib/theme-utils';
5
+ export { Label } from './components/ui/label';
6
+ export { Checkbox } from './components/ui/checkbox';
7
+ export { RadioGroup, RadioGroupItem } from './components/ui/radio-group';
8
+ //# sourceMappingURL=index.d.ts.map
@@ -0,0 +1 @@
1
+ {"version":3,"file":"index.d.ts","sourceRoot":"","sources":["../src/index.ts"],"names":[],"mappings":"AACA,OAAO,EAAE,EAAE,EAAE,MAAM,aAAa,CAAC;AACjC,OAAO,EAAE,MAAM,EAAE,cAAc,EAAE,MAAM,wBAAwB,CAAC;AAChE,OAAO,EAAE,KAAK,EAAE,MAAM,uBAAuB,CAAC;AAG9C,OAAO,EAAE,oBAAoB,EAAE,MAAM,mBAAmB,CAAC;AACzD,OAAO,EAAE,KAAK,EAAE,MAAM,uBAAuB,CAAC;AAC9C,OAAO,EAAE,QAAQ,EAAE,MAAM,0BAA0B,CAAC;AACpD,OAAO,EAAE,UAAU,EAAE,cAAc,EAAE,MAAM,6BAA6B,CAAC"}
@@ -0,0 +1,104 @@
1
+ /**
2
+ * Theme utilities for mm-react-components
3
+ *
4
+ * These utilities help consuming applications integrate the Carbide theme system.
5
+ */
6
+ /**
7
+ * Activates the Carbide theme by adding the 'carbide' class to the document element.
8
+ * This should be called once when your application initializes.
9
+ *
10
+ * @example
11
+ * ```tsx
12
+ * import { activateCarbideTheme } from '@machinemetrics/mm-react-components';
13
+ *
14
+ * // In your main.tsx or App.tsx
15
+ * activateCarbideTheme();
16
+ * ```
17
+ */
18
+ export declare function activateCarbideTheme(): void;
19
+ /**
20
+ * Deactivates the Carbide theme by removing the 'carbide' class from the document element.
21
+ *
22
+ * @example
23
+ * ```tsx
24
+ * import { deactivateCarbideTheme } from '@machinemetrics/mm-react-components';
25
+ *
26
+ * // To switch back to base theme
27
+ * deactivateCarbideTheme();
28
+ * ```
29
+ */
30
+ export declare function deactivateCarbideTheme(): void;
31
+ /**
32
+ * Toggles the Carbide theme on/off.
33
+ *
34
+ * @example
35
+ * ```tsx
36
+ * import { toggleCarbideTheme } from '@machinemetrics/mm-react-components';
37
+ *
38
+ * // Toggle theme
39
+ * toggleCarbideTheme();
40
+ * ```
41
+ */
42
+ export declare function toggleCarbideTheme(): void;
43
+ /**
44
+ * Checks if the Carbide theme is currently active.
45
+ *
46
+ * @returns true if Carbide theme is active, false otherwise
47
+ *
48
+ * @example
49
+ * ```tsx
50
+ * import { isCarbideThemeActive } from '@machinemetrics/mm-react-components';
51
+ *
52
+ * const isActive = isCarbideThemeActive();
53
+ * console.log('Carbide theme is active:', isActive);
54
+ * ```
55
+ */
56
+ export declare function isCarbideThemeActive(): boolean;
57
+ /**
58
+ * Activates dark mode by adding the 'dark' class to the document element.
59
+ *
60
+ * @example
61
+ * ```tsx
62
+ * import { activateDarkMode } from '@machinemetrics/mm-react-components';
63
+ *
64
+ * activateDarkMode();
65
+ * ```
66
+ */
67
+ export declare function activateDarkMode(): void;
68
+ /**
69
+ * Deactivates dark mode by removing the 'dark' class from the document element.
70
+ *
71
+ * @example
72
+ * ```tsx
73
+ * import { deactivateDarkMode } from '@machinemetrics/mm-react-components';
74
+ *
75
+ * deactivateDarkMode();
76
+ * ```
77
+ */
78
+ export declare function deactivateDarkMode(): void;
79
+ /**
80
+ * Toggles dark mode on/off.
81
+ *
82
+ * @example
83
+ * ```tsx
84
+ * import { toggleDarkMode } from '@machinemetrics/mm-react-components';
85
+ *
86
+ * toggleDarkMode();
87
+ * ```
88
+ */
89
+ export declare function toggleDarkMode(): void;
90
+ /**
91
+ * Checks if dark mode is currently active.
92
+ *
93
+ * @returns true if dark mode is active, false otherwise
94
+ *
95
+ * @example
96
+ * ```tsx
97
+ * import { isDarkModeActive } from '@machinemetrics/mm-react-components';
98
+ *
99
+ * const isDark = isDarkModeActive();
100
+ * console.log('Dark mode is active:', isDark);
101
+ * ```
102
+ */
103
+ export declare function isDarkModeActive(): boolean;
104
+ //# sourceMappingURL=theme-utils.d.ts.map
@@ -0,0 +1 @@
1
+ {"version":3,"file":"theme-utils.d.ts","sourceRoot":"","sources":["../../src/lib/theme-utils.ts"],"names":[],"mappings":"AAAA;;;;GAIG;AAEH;;;;;;;;;;;GAWG;AACH,wBAAgB,oBAAoB,IAAI,IAAI,CAI3C;AAED;;;;;;;;;;GAUG;AACH,wBAAgB,sBAAsB,IAAI,IAAI,CAI7C;AAED;;;;;;;;;;GAUG;AACH,wBAAgB,kBAAkB,IAAI,IAAI,CAIzC;AAED;;;;;;;;;;;;GAYG;AACH,wBAAgB,oBAAoB,IAAI,OAAO,CAK9C;AAED;;;;;;;;;GASG;AACH,wBAAgB,gBAAgB,IAAI,IAAI,CAIvC;AAED;;;;;;;;;GASG;AACH,wBAAgB,kBAAkB,IAAI,IAAI,CAIzC;AAED;;;;;;;;;GASG;AACH,wBAAgB,cAAc,IAAI,IAAI,CAIrC;AAED;;;;;;;;;;;;GAYG;AACH,wBAAgB,gBAAgB,IAAI,OAAO,CAK1C"}
@@ -0,0 +1,3 @@
1
+ import { type ClassValue } from 'clsx';
2
+ export declare function cn(...inputs: ClassValue[]): string;
3
+ //# sourceMappingURL=utils.d.ts.map
@@ -0,0 +1 @@
1
+ {"version":3,"file":"utils.d.ts","sourceRoot":"","sources":["../../src/lib/utils.ts"],"names":[],"mappings":"AAAA,OAAO,EAAE,KAAK,UAAU,EAAQ,MAAM,MAAM,CAAC;AAG7C,wBAAgB,EAAE,CAAC,GAAG,MAAM,EAAE,UAAU,EAAE,UAEzC"}
package/dist/main.d.ts ADDED
@@ -0,0 +1,3 @@
1
+ import './index.css';
2
+ import './themes/carbide.css';
3
+ //# sourceMappingURL=main.d.ts.map
@@ -0,0 +1 @@
1
+ {"version":3,"file":"main.d.ts","sourceRoot":"","sources":["../src/main.tsx"],"names":[],"mappings":"AAGA,OAAO,aAAa,CAAC;AACrB,OAAO,sBAAsB,CAAC"}