@zimyo/ui 1.2.1 → 1.3.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 (40) hide show
  1. package/dist/Accordion/index.esm.js +5 -218
  2. package/dist/Accordion/index.js +5 -225
  3. package/dist/Badge/index.d.ts +29 -0
  4. package/dist/Badge/index.esm.js +1 -0
  5. package/dist/Badge/index.js +1 -0
  6. package/dist/Button/index.esm.js +1 -13
  7. package/dist/Button/index.js +1 -18
  8. package/dist/Card/index.esm.js +1 -36
  9. package/dist/Card/index.js +1 -38
  10. package/dist/Input/index.d.ts +18 -0
  11. package/dist/Input/index.esm.js +26 -0
  12. package/dist/Input/index.js +26 -0
  13. package/dist/Modal/index.d.ts +11 -9
  14. package/dist/Modal/index.esm.js +5 -123
  15. package/dist/Modal/index.js +5 -128
  16. package/dist/Notice/index.d.ts +19 -0
  17. package/dist/Notice/index.esm.js +26 -0
  18. package/dist/Notice/index.js +26 -0
  19. package/dist/Popover/index.esm.js +1 -22
  20. package/dist/Popover/index.js +1 -27
  21. package/dist/RadioGroup/index.esm.js +1 -91
  22. package/dist/RadioGroup/index.js +1 -96
  23. package/dist/Select/index.d.ts +15 -13
  24. package/dist/Select/index.esm.js +5 -173
  25. package/dist/Select/index.js +5 -178
  26. package/dist/Switch/index.esm.js +1 -9
  27. package/dist/Switch/index.js +1 -14
  28. package/dist/Tabs/index.esm.js +1 -202
  29. package/dist/Tabs/index.js +1 -207
  30. package/dist/Typography/index.esm.js +1 -57
  31. package/dist/Typography/index.js +1 -66
  32. package/dist/index.d.ts +115 -44
  33. package/dist/index.esm.js +5 -746
  34. package/dist/index.js +5 -770
  35. package/dist/theme/index.esm.js +1 -234
  36. package/dist/theme/index.js +1 -239
  37. package/package.json +33 -3
  38. package/dist/TextInput/index.d.ts +0 -18
  39. package/dist/TextInput/index.esm.js +0 -33
  40. package/dist/TextInput/index.js +0 -38
@@ -1,202 +1 @@
1
- import React from 'react';
2
- import { useTheme, Box, Tab, Tabs as Tabs$1, alpha } from '@mui/material';
3
-
4
- // Custom Tab Component
5
- const CustomTab = React.forwardRef(({ badge, sx, label, ...props }, ref) => {
6
- const theme = useTheme();
7
- const tabLabel = badge ? React.createElement(Box, { sx: { display: 'flex', alignItems: 'center', gap: 1 } }, label, React.createElement(Box, {
8
- component: 'span',
9
- sx: {
10
- backgroundColor: theme.palette.error.main,
11
- color: theme.palette.error.contrastText,
12
- borderRadius: '10px',
13
- padding: '2px 6px',
14
- fontSize: '0.75rem',
15
- fontWeight: 600,
16
- minWidth: '18px',
17
- height: '18px',
18
- display: 'flex',
19
- alignItems: 'center',
20
- justifyContent: 'center',
21
- lineHeight: 1,
22
- }
23
- }, badge)) : label;
24
- return React.createElement(Tab, {
25
- ref,
26
- sx: {
27
- position: 'relative',
28
- ...sx,
29
- },
30
- label: tabLabel,
31
- ...props
32
- });
33
- });
34
- CustomTab.displayName = 'CustomTab';
35
- // Main Tabs Component
36
- const Tabs = React.forwardRef(({ items, value, onChange, variant = 'standard', orientation = 'horizontal', styleVariant = 'default', size = 'medium', centered = false, allowScrollButtonsMobile = false, scrollButtons = 'auto', sx = {}, tabSx = {}, iconPosition = 'start', indicatorColor = 'primary', textColor = 'primary', ...props }, ref) => {
37
- const theme = useTheme();
38
- // Get size-based styling
39
- const getSizeStyles = () => {
40
- switch (size) {
41
- case 'small':
42
- return {
43
- minHeight: 36,
44
- fontSize: '0.875rem',
45
- padding: '6px 12px',
46
- };
47
- case 'large':
48
- return {
49
- minHeight: 56,
50
- fontSize: '1rem',
51
- padding: '12px 24px',
52
- };
53
- default:
54
- return {
55
- minHeight: 48,
56
- fontSize: '0.9375rem',
57
- padding: '8px 16px',
58
- };
59
- }
60
- };
61
- // Get style variant specific styling
62
- const getStyleVariantStyles = () => {
63
- const baseStyles = getSizeStyles();
64
- switch (styleVariant) {
65
- case 'filled':
66
- return {
67
- '& .MuiTab-root': {
68
- ...baseStyles,
69
- backgroundColor: alpha(theme.palette.action.hover, 0.08),
70
- borderRadius: theme.shape.borderRadius,
71
- margin: '0 4px',
72
- border: 'none',
73
- '&.Mui-selected': {
74
- backgroundColor: theme.palette.primary.main,
75
- color: theme.palette.primary.contrastText,
76
- },
77
- '&:hover': {
78
- backgroundColor: alpha(theme.palette.action.hover, 0.12),
79
- },
80
- },
81
- '& .MuiTabs-indicator': {
82
- display: 'none',
83
- },
84
- };
85
- case 'outlined':
86
- return {
87
- '& .MuiTab-root': {
88
- ...baseStyles,
89
- border: `1px solid ${alpha(theme.palette.divider, 0.5)}`,
90
- borderRadius: theme.shape.borderRadius,
91
- margin: '0 2px',
92
- '&.Mui-selected': {
93
- borderColor: theme.palette.primary.main,
94
- backgroundColor: alpha(theme.palette.primary.main, 0.08),
95
- color: theme.palette.primary.main,
96
- },
97
- '&:hover': {
98
- borderColor: alpha(theme.palette.primary.main, 0.5),
99
- },
100
- },
101
- '& .MuiTabs-indicator': {
102
- display: 'none',
103
- },
104
- };
105
- case 'pills':
106
- return {
107
- '& .MuiTab-root': {
108
- ...baseStyles,
109
- borderRadius: 25,
110
- margin: '0 4px',
111
- backgroundColor: 'transparent',
112
- border: `1px solid transparent`,
113
- '&.Mui-selected': {
114
- backgroundColor: theme.palette.primary.main,
115
- color: theme.palette.primary.contrastText,
116
- },
117
- '&:hover': {
118
- backgroundColor: alpha(theme.palette.action.hover, 0.08),
119
- },
120
- },
121
- '& .MuiTabs-indicator': {
122
- display: 'none',
123
- },
124
- };
125
- case 'underlined':
126
- return {
127
- '& .MuiTab-root': {
128
- ...baseStyles,
129
- borderBottom: `2px solid transparent`,
130
- '&.Mui-selected': {
131
- borderBottomColor: theme.palette.primary.main,
132
- },
133
- },
134
- '& .MuiTabs-indicator': {
135
- display: 'none',
136
- },
137
- };
138
- default:
139
- return {
140
- '& .MuiTab-root': {
141
- ...baseStyles,
142
- },
143
- };
144
- }
145
- };
146
- return React.createElement(Box, { ref }, React.createElement(Tabs$1, {
147
- value,
148
- onChange,
149
- variant,
150
- orientation,
151
- centered,
152
- allowScrollButtonsMobile,
153
- scrollButtons,
154
- indicatorColor,
155
- textColor,
156
- sx: {
157
- ...getStyleVariantStyles(),
158
- '& .MuiTab-root': {
159
- textTransform: 'none',
160
- fontWeight: 500,
161
- letterSpacing: '0.5px',
162
- transition: 'all 0.2s ease-in-out',
163
- ...getStyleVariantStyles()['& .MuiTab-root'],
164
- ...tabSx,
165
- },
166
- ...sx,
167
- },
168
- ...props,
169
- }, ...items.map((item) => {
170
- // Create the label content based on icon position
171
- let labelContent;
172
- if (item.icon) {
173
- switch (iconPosition) {
174
- case 'end':
175
- labelContent = React.createElement(Box, { sx: { display: 'flex', alignItems: 'center', gap: 1, flexDirection: 'row-reverse' } }, item.icon, item.label);
176
- break;
177
- case 'top':
178
- labelContent = React.createElement(Box, { sx: { display: 'flex', alignItems: 'center', gap: 0.5, flexDirection: 'column' } }, item.icon, item.label);
179
- break;
180
- case 'bottom':
181
- labelContent = React.createElement(Box, { sx: { display: 'flex', alignItems: 'center', gap: 0.5, flexDirection: 'column-reverse' } }, item.icon, item.label);
182
- break;
183
- default: // 'start'
184
- labelContent = React.createElement(Box, { sx: { display: 'flex', alignItems: 'center', gap: 1 } }, item.icon, item.label);
185
- break;
186
- }
187
- }
188
- else {
189
- labelContent = item.label;
190
- }
191
- return React.createElement(CustomTab, {
192
- key: item.value,
193
- value: item.value,
194
- disabled: item.disabled,
195
- badge: item.badge,
196
- label: labelContent,
197
- });
198
- })));
199
- });
200
- Tabs.displayName = 'Tabs';
201
-
202
- export { Tabs, Tabs as default };
1
+ import e from"react";import{useTheme as r,Box as t,Tab as a,Tabs as o,alpha as i}from"@mui/material";const n=e.forwardRef(({badge:o,sx:i,label:n,...l},s)=>{const d=r(),c=o?e.createElement(t,{sx:{display:"flex",alignItems:"center",gap:1}},n,e.createElement(t,{component:"span",sx:{backgroundColor:d.palette.error.main,color:d.palette.error.contrastText,borderRadius:"10px",padding:"2px 6px",fontSize:"0.75rem",fontWeight:600,minWidth:"18px",height:"18px",display:"flex",alignItems:"center",justifyContent:"center",lineHeight:1}},o)):n;return e.createElement(a,{ref:s,sx:{position:"relative",...i},label:c,...l})});n.displayName="CustomTab";const l=e.forwardRef(({items:a,value:l,onChange:s,variant:d="standard",orientation:c="horizontal",styleVariant:p="default",size:m="medium",centered:u=!1,allowScrollButtonsMobile:b=!1,scrollButtons:x="auto",sx:g={},tabSx:f={},iconPosition:y="start",indicatorColor:h="primary",textColor:C="primary",...T},v)=>{const M=r(),k=()=>{const e=(()=>{switch(m){case"small":return{minHeight:36,fontSize:"0.875rem",padding:"6px 12px"};case"large":return{minHeight:56,fontSize:"1rem",padding:"12px 24px"};default:return{minHeight:48,fontSize:"0.9375rem",padding:"8px 16px"}}})();switch(p){case"filled":return{"& .MuiTab-root":{...e,backgroundColor:i(M.palette.action.hover,.08),borderRadius:M.shape.borderRadius,margin:"0 4px",border:"none","&.Mui-selected":{backgroundColor:M.palette.primary.main,color:M.palette.primary.contrastText},"&:hover":{backgroundColor:i(M.palette.action.hover,.12)}},"& .MuiTabs-indicator":{display:"none"}};case"outlined":return{"& .MuiTab-root":{...e,border:`1px solid ${i(M.palette.divider,.5)}`,borderRadius:M.shape.borderRadius,margin:"0 2px","&.Mui-selected":{borderColor:M.palette.primary.main,backgroundColor:i(M.palette.primary.main,.08),color:M.palette.primary.main},"&:hover":{borderColor:i(M.palette.primary.main,.5)}},"& .MuiTabs-indicator":{display:"none"}};case"pills":return{"& .MuiTab-root":{...e,borderRadius:25,margin:"0 4px",backgroundColor:"transparent",border:"1px solid transparent","&.Mui-selected":{backgroundColor:M.palette.primary.main,color:M.palette.primary.contrastText},"&:hover":{backgroundColor:i(M.palette.action.hover,.08)}},"& .MuiTabs-indicator":{display:"none"}};case"underlined":return{"& .MuiTab-root":{...e,borderBottom:"2px solid transparent","&.Mui-selected":{borderBottomColor:M.palette.primary.main}},"& .MuiTabs-indicator":{display:"none"}};default:return{"& .MuiTab-root":{...e}}}};return e.createElement(t,{ref:v},e.createElement(o,{value:l,onChange:s,variant:d,orientation:c,centered:u,allowScrollButtonsMobile:b,scrollButtons:x,indicatorColor:h,textColor:C,sx:{...k(),"& .MuiTab-root":{textTransform:"none",fontWeight:500,letterSpacing:"0.5px",transition:"all 0.2s ease-in-out",...k()["& .MuiTab-root"],...f},...g},...T},...a.map(r=>{let a;if(r.icon)switch(y){case"end":a=e.createElement(t,{sx:{display:"flex",alignItems:"center",gap:1,flexDirection:"row-reverse"}},r.icon,r.label);break;case"top":a=e.createElement(t,{sx:{display:"flex",alignItems:"center",gap:.5,flexDirection:"column"}},r.icon,r.label);break;case"bottom":a=e.createElement(t,{sx:{display:"flex",alignItems:"center",gap:.5,flexDirection:"column-reverse"}},r.icon,r.label);break;default:a=e.createElement(t,{sx:{display:"flex",alignItems:"center",gap:1}},r.icon,r.label)}else a=r.label;return e.createElement(n,{key:r.value,value:r.value,disabled:r.disabled,badge:r.badge,label:a})})))});l.displayName="Tabs";export{l as Tabs,l as default};
@@ -1,207 +1 @@
1
- 'use strict';
2
-
3
- Object.defineProperty(exports, '__esModule', { value: true });
4
-
5
- var React = require('react');
6
- var material = require('@mui/material');
7
-
8
- // Custom Tab Component
9
- const CustomTab = React.forwardRef(({ badge, sx, label, ...props }, ref) => {
10
- const theme = material.useTheme();
11
- const tabLabel = badge ? React.createElement(material.Box, { sx: { display: 'flex', alignItems: 'center', gap: 1 } }, label, React.createElement(material.Box, {
12
- component: 'span',
13
- sx: {
14
- backgroundColor: theme.palette.error.main,
15
- color: theme.palette.error.contrastText,
16
- borderRadius: '10px',
17
- padding: '2px 6px',
18
- fontSize: '0.75rem',
19
- fontWeight: 600,
20
- minWidth: '18px',
21
- height: '18px',
22
- display: 'flex',
23
- alignItems: 'center',
24
- justifyContent: 'center',
25
- lineHeight: 1,
26
- }
27
- }, badge)) : label;
28
- return React.createElement(material.Tab, {
29
- ref,
30
- sx: {
31
- position: 'relative',
32
- ...sx,
33
- },
34
- label: tabLabel,
35
- ...props
36
- });
37
- });
38
- CustomTab.displayName = 'CustomTab';
39
- // Main Tabs Component
40
- const Tabs = React.forwardRef(({ items, value, onChange, variant = 'standard', orientation = 'horizontal', styleVariant = 'default', size = 'medium', centered = false, allowScrollButtonsMobile = false, scrollButtons = 'auto', sx = {}, tabSx = {}, iconPosition = 'start', indicatorColor = 'primary', textColor = 'primary', ...props }, ref) => {
41
- const theme = material.useTheme();
42
- // Get size-based styling
43
- const getSizeStyles = () => {
44
- switch (size) {
45
- case 'small':
46
- return {
47
- minHeight: 36,
48
- fontSize: '0.875rem',
49
- padding: '6px 12px',
50
- };
51
- case 'large':
52
- return {
53
- minHeight: 56,
54
- fontSize: '1rem',
55
- padding: '12px 24px',
56
- };
57
- default:
58
- return {
59
- minHeight: 48,
60
- fontSize: '0.9375rem',
61
- padding: '8px 16px',
62
- };
63
- }
64
- };
65
- // Get style variant specific styling
66
- const getStyleVariantStyles = () => {
67
- const baseStyles = getSizeStyles();
68
- switch (styleVariant) {
69
- case 'filled':
70
- return {
71
- '& .MuiTab-root': {
72
- ...baseStyles,
73
- backgroundColor: material.alpha(theme.palette.action.hover, 0.08),
74
- borderRadius: theme.shape.borderRadius,
75
- margin: '0 4px',
76
- border: 'none',
77
- '&.Mui-selected': {
78
- backgroundColor: theme.palette.primary.main,
79
- color: theme.palette.primary.contrastText,
80
- },
81
- '&:hover': {
82
- backgroundColor: material.alpha(theme.palette.action.hover, 0.12),
83
- },
84
- },
85
- '& .MuiTabs-indicator': {
86
- display: 'none',
87
- },
88
- };
89
- case 'outlined':
90
- return {
91
- '& .MuiTab-root': {
92
- ...baseStyles,
93
- border: `1px solid ${material.alpha(theme.palette.divider, 0.5)}`,
94
- borderRadius: theme.shape.borderRadius,
95
- margin: '0 2px',
96
- '&.Mui-selected': {
97
- borderColor: theme.palette.primary.main,
98
- backgroundColor: material.alpha(theme.palette.primary.main, 0.08),
99
- color: theme.palette.primary.main,
100
- },
101
- '&:hover': {
102
- borderColor: material.alpha(theme.palette.primary.main, 0.5),
103
- },
104
- },
105
- '& .MuiTabs-indicator': {
106
- display: 'none',
107
- },
108
- };
109
- case 'pills':
110
- return {
111
- '& .MuiTab-root': {
112
- ...baseStyles,
113
- borderRadius: 25,
114
- margin: '0 4px',
115
- backgroundColor: 'transparent',
116
- border: `1px solid transparent`,
117
- '&.Mui-selected': {
118
- backgroundColor: theme.palette.primary.main,
119
- color: theme.palette.primary.contrastText,
120
- },
121
- '&:hover': {
122
- backgroundColor: material.alpha(theme.palette.action.hover, 0.08),
123
- },
124
- },
125
- '& .MuiTabs-indicator': {
126
- display: 'none',
127
- },
128
- };
129
- case 'underlined':
130
- return {
131
- '& .MuiTab-root': {
132
- ...baseStyles,
133
- borderBottom: `2px solid transparent`,
134
- '&.Mui-selected': {
135
- borderBottomColor: theme.palette.primary.main,
136
- },
137
- },
138
- '& .MuiTabs-indicator': {
139
- display: 'none',
140
- },
141
- };
142
- default:
143
- return {
144
- '& .MuiTab-root': {
145
- ...baseStyles,
146
- },
147
- };
148
- }
149
- };
150
- return React.createElement(material.Box, { ref }, React.createElement(material.Tabs, {
151
- value,
152
- onChange,
153
- variant,
154
- orientation,
155
- centered,
156
- allowScrollButtonsMobile,
157
- scrollButtons,
158
- indicatorColor,
159
- textColor,
160
- sx: {
161
- ...getStyleVariantStyles(),
162
- '& .MuiTab-root': {
163
- textTransform: 'none',
164
- fontWeight: 500,
165
- letterSpacing: '0.5px',
166
- transition: 'all 0.2s ease-in-out',
167
- ...getStyleVariantStyles()['& .MuiTab-root'],
168
- ...tabSx,
169
- },
170
- ...sx,
171
- },
172
- ...props,
173
- }, ...items.map((item) => {
174
- // Create the label content based on icon position
175
- let labelContent;
176
- if (item.icon) {
177
- switch (iconPosition) {
178
- case 'end':
179
- labelContent = React.createElement(material.Box, { sx: { display: 'flex', alignItems: 'center', gap: 1, flexDirection: 'row-reverse' } }, item.icon, item.label);
180
- break;
181
- case 'top':
182
- labelContent = React.createElement(material.Box, { sx: { display: 'flex', alignItems: 'center', gap: 0.5, flexDirection: 'column' } }, item.icon, item.label);
183
- break;
184
- case 'bottom':
185
- labelContent = React.createElement(material.Box, { sx: { display: 'flex', alignItems: 'center', gap: 0.5, flexDirection: 'column-reverse' } }, item.icon, item.label);
186
- break;
187
- default: // 'start'
188
- labelContent = React.createElement(material.Box, { sx: { display: 'flex', alignItems: 'center', gap: 1 } }, item.icon, item.label);
189
- break;
190
- }
191
- }
192
- else {
193
- labelContent = item.label;
194
- }
195
- return React.createElement(CustomTab, {
196
- key: item.value,
197
- value: item.value,
198
- disabled: item.disabled,
199
- badge: item.badge,
200
- label: labelContent,
201
- });
202
- })));
203
- });
204
- Tabs.displayName = 'Tabs';
205
-
206
- exports.Tabs = Tabs;
207
- exports.default = Tabs;
1
+ "use strict";Object.defineProperty(exports,"__esModule",{value:!0});var e=require("react"),a=require("@mui/material");const r=e.forwardRef(({badge:r,sx:t,label:o,...i},n)=>{const l=a.useTheme(),s=r?e.createElement(a.Box,{sx:{display:"flex",alignItems:"center",gap:1}},o,e.createElement(a.Box,{component:"span",sx:{backgroundColor:l.palette.error.main,color:l.palette.error.contrastText,borderRadius:"10px",padding:"2px 6px",fontSize:"0.75rem",fontWeight:600,minWidth:"18px",height:"18px",display:"flex",alignItems:"center",justifyContent:"center",lineHeight:1}},r)):o;return e.createElement(a.Tab,{ref:n,sx:{position:"relative",...t},label:s,...i})});r.displayName="CustomTab";const t=e.forwardRef(({items:t,value:o,onChange:i,variant:n="standard",orientation:l="horizontal",styleVariant:s="default",size:d="medium",centered:p=!1,allowScrollButtonsMobile:c=!1,scrollButtons:u="auto",sx:m={},tabSx:b={},iconPosition:x="start",indicatorColor:g="primary",textColor:f="primary",...h},y)=>{const T=a.useTheme(),v=()=>{const e=(()=>{switch(d){case"small":return{minHeight:36,fontSize:"0.875rem",padding:"6px 12px"};case"large":return{minHeight:56,fontSize:"1rem",padding:"12px 24px"};default:return{minHeight:48,fontSize:"0.9375rem",padding:"8px 16px"}}})();switch(s){case"filled":return{"& .MuiTab-root":{...e,backgroundColor:a.alpha(T.palette.action.hover,.08),borderRadius:T.shape.borderRadius,margin:"0 4px",border:"none","&.Mui-selected":{backgroundColor:T.palette.primary.main,color:T.palette.primary.contrastText},"&:hover":{backgroundColor:a.alpha(T.palette.action.hover,.12)}},"& .MuiTabs-indicator":{display:"none"}};case"outlined":return{"& .MuiTab-root":{...e,border:`1px solid ${a.alpha(T.palette.divider,.5)}`,borderRadius:T.shape.borderRadius,margin:"0 2px","&.Mui-selected":{borderColor:T.palette.primary.main,backgroundColor:a.alpha(T.palette.primary.main,.08),color:T.palette.primary.main},"&:hover":{borderColor:a.alpha(T.palette.primary.main,.5)}},"& .MuiTabs-indicator":{display:"none"}};case"pills":return{"& .MuiTab-root":{...e,borderRadius:25,margin:"0 4px",backgroundColor:"transparent",border:"1px solid transparent","&.Mui-selected":{backgroundColor:T.palette.primary.main,color:T.palette.primary.contrastText},"&:hover":{backgroundColor:a.alpha(T.palette.action.hover,.08)}},"& .MuiTabs-indicator":{display:"none"}};case"underlined":return{"& .MuiTab-root":{...e,borderBottom:"2px solid transparent","&.Mui-selected":{borderBottomColor:T.palette.primary.main}},"& .MuiTabs-indicator":{display:"none"}};default:return{"& .MuiTab-root":{...e}}}};return e.createElement(a.Box,{ref:y},e.createElement(a.Tabs,{value:o,onChange:i,variant:n,orientation:l,centered:p,allowScrollButtonsMobile:c,scrollButtons:u,indicatorColor:g,textColor:f,sx:{...v(),"& .MuiTab-root":{textTransform:"none",fontWeight:500,letterSpacing:"0.5px",transition:"all 0.2s ease-in-out",...v()["& .MuiTab-root"],...b},...m},...h},...t.map(t=>{let o;if(t.icon)switch(x){case"end":o=e.createElement(a.Box,{sx:{display:"flex",alignItems:"center",gap:1,flexDirection:"row-reverse"}},t.icon,t.label);break;case"top":o=e.createElement(a.Box,{sx:{display:"flex",alignItems:"center",gap:.5,flexDirection:"column"}},t.icon,t.label);break;case"bottom":o=e.createElement(a.Box,{sx:{display:"flex",alignItems:"center",gap:.5,flexDirection:"column-reverse"}},t.icon,t.label);break;default:o=e.createElement(a.Box,{sx:{display:"flex",alignItems:"center",gap:1}},t.icon,t.label)}else o=t.label;return e.createElement(r,{key:t.value,value:t.value,disabled:t.disabled,badge:t.badge,label:o})})))});t.displayName="Tabs",exports.Tabs=t,exports.default=t;
@@ -1,57 +1 @@
1
- import { jsx } from 'react/jsx-runtime';
2
- import { Typography, Box } from '@mui/material';
3
-
4
- const Heading = ({ level = 1, ...props }) => {
5
- const variant = `h${level}`;
6
- return (jsx(Typography, { variant: variant, component: props.component || `h${level}`, fontWeight: 600, gutterBottom: true, ...props }));
7
- };
8
-
9
- const Text = ({ size = 'md', ...props }) => {
10
- const variantMap = {
11
- sm: 'body2',
12
- md: 'body1',
13
- lg: 'subtitle1',
14
- };
15
- return (jsx(Typography, { variant: variantMap[size], component: props.component || 'p', ...props }));
16
- };
17
-
18
- const Lead = (props) => {
19
- return (jsx(Typography, { variant: "subtitle1", component: props.component || 'p', fontWeight: 400, color: "text.secondary", ...props }));
20
- };
21
-
22
- const Muted = (props) => {
23
- return (jsx(Typography, { variant: "body2", component: props.component || 'span', color: "text.disabled", ...props }));
24
- };
25
-
26
- const Strong = (props) => {
27
- return (jsx(Typography, { component: props.component || 'strong', fontWeight: 500, display: "inline", ...props }));
28
- };
29
-
30
- const Caption = (props) => {
31
- return (jsx(Typography, { variant: "caption", color: "text.secondary", component: props.component || 'span', ...props }));
32
- };
33
-
34
- const Blockquote = (props) => {
35
- return (jsx(Typography, { component: "blockquote", sx: {
36
- borderLeft: '4px solid',
37
- borderColor: 'divider',
38
- pl: 2,
39
- color: 'text.secondary',
40
- fontStyle: 'italic',
41
- }, ...props }));
42
- };
43
-
44
- const Code = ({ children, sx }) => {
45
- return (jsx(Box, { component: "code", sx: {
46
- fontFamily: 'monospace',
47
- backgroundColor: 'grey.100',
48
- color: 'primary.main',
49
- px: 0.5,
50
- py: 0.25,
51
- borderRadius: 1,
52
- fontSize: '0.875rem',
53
- ...sx,
54
- }, children: children }));
55
- };
56
-
57
- export { Blockquote, Caption, Code, Heading, Lead, Muted, Strong, Text };
1
+ import{jsx as o}from"react/jsx-runtime";import{Typography as t,Box as n}from"@mui/material";const e=({level:n=1,...e})=>o(t,{variant:`h${n}`,component:e.component||`h${n}`,fontWeight:600,gutterBottom:!0,...e}),r=({size:n="md",...e})=>o(t,{variant:{sm:"body2",md:"body1",lg:"subtitle1"}[n],component:e.component||"p",...e}),i=n=>o(t,{variant:"subtitle1",component:n.component||"p",fontWeight:400,color:"text.secondary",...n}),c=n=>o(t,{variant:"body2",component:n.component||"span",color:"text.disabled",...n}),m=n=>o(t,{component:n.component||"strong",fontWeight:500,display:"inline",...n}),p=n=>o(t,{variant:"caption",color:"text.secondary",component:n.component||"span",...n}),a=n=>o(t,{component:"blockquote",sx:{borderLeft:"4px solid",borderColor:"divider",pl:2,color:"text.secondary",fontStyle:"italic"},...n}),l=({children:t,sx:e})=>o(n,{component:"code",sx:{fontFamily:"monospace",backgroundColor:"grey.100",color:"primary.main",px:.5,py:.25,borderRadius:1,fontSize:"0.875rem",...e},children:t});export{a as Blockquote,p as Caption,l as Code,e as Heading,i as Lead,c as Muted,m as Strong,r as Text};
@@ -1,66 +1 @@
1
- 'use strict';
2
-
3
- var jsxRuntime = require('react/jsx-runtime');
4
- var material = require('@mui/material');
5
-
6
- const Heading = ({ level = 1, ...props }) => {
7
- const variant = `h${level}`;
8
- return (jsxRuntime.jsx(material.Typography, { variant: variant, component: props.component || `h${level}`, fontWeight: 600, gutterBottom: true, ...props }));
9
- };
10
-
11
- const Text = ({ size = 'md', ...props }) => {
12
- const variantMap = {
13
- sm: 'body2',
14
- md: 'body1',
15
- lg: 'subtitle1',
16
- };
17
- return (jsxRuntime.jsx(material.Typography, { variant: variantMap[size], component: props.component || 'p', ...props }));
18
- };
19
-
20
- const Lead = (props) => {
21
- return (jsxRuntime.jsx(material.Typography, { variant: "subtitle1", component: props.component || 'p', fontWeight: 400, color: "text.secondary", ...props }));
22
- };
23
-
24
- const Muted = (props) => {
25
- return (jsxRuntime.jsx(material.Typography, { variant: "body2", component: props.component || 'span', color: "text.disabled", ...props }));
26
- };
27
-
28
- const Strong = (props) => {
29
- return (jsxRuntime.jsx(material.Typography, { component: props.component || 'strong', fontWeight: 500, display: "inline", ...props }));
30
- };
31
-
32
- const Caption = (props) => {
33
- return (jsxRuntime.jsx(material.Typography, { variant: "caption", color: "text.secondary", component: props.component || 'span', ...props }));
34
- };
35
-
36
- const Blockquote = (props) => {
37
- return (jsxRuntime.jsx(material.Typography, { component: "blockquote", sx: {
38
- borderLeft: '4px solid',
39
- borderColor: 'divider',
40
- pl: 2,
41
- color: 'text.secondary',
42
- fontStyle: 'italic',
43
- }, ...props }));
44
- };
45
-
46
- const Code = ({ children, sx }) => {
47
- return (jsxRuntime.jsx(material.Box, { component: "code", sx: {
48
- fontFamily: 'monospace',
49
- backgroundColor: 'grey.100',
50
- color: 'primary.main',
51
- px: 0.5,
52
- py: 0.25,
53
- borderRadius: 1,
54
- fontSize: '0.875rem',
55
- ...sx,
56
- }, children: children }));
57
- };
58
-
59
- exports.Blockquote = Blockquote;
60
- exports.Caption = Caption;
61
- exports.Code = Code;
62
- exports.Heading = Heading;
63
- exports.Lead = Lead;
64
- exports.Muted = Muted;
65
- exports.Strong = Strong;
66
- exports.Text = Text;
1
+ "use strict";var o=require("react/jsx-runtime"),t=require("@mui/material");exports.Blockquote=e=>o.jsx(t.Typography,{component:"blockquote",sx:{borderLeft:"4px solid",borderColor:"divider",pl:2,color:"text.secondary",fontStyle:"italic"},...e}),exports.Caption=e=>o.jsx(t.Typography,{variant:"caption",color:"text.secondary",component:e.component||"span",...e}),exports.Code=({children:e,sx:n})=>o.jsx(t.Box,{component:"code",sx:{fontFamily:"monospace",backgroundColor:"grey.100",color:"primary.main",px:.5,py:.25,borderRadius:1,fontSize:"0.875rem",...n},children:e}),exports.Heading=({level:e=1,...n})=>{const r=`h${e}`;return o.jsx(t.Typography,{variant:r,component:n.component||`h${e}`,fontWeight:600,gutterBottom:!0,...n})},exports.Lead=e=>o.jsx(t.Typography,{variant:"subtitle1",component:e.component||"p",fontWeight:400,color:"text.secondary",...e}),exports.Muted=e=>o.jsx(t.Typography,{variant:"body2",component:e.component||"span",color:"text.disabled",...e}),exports.Strong=e=>o.jsx(t.Typography,{component:e.component||"strong",fontWeight:500,display:"inline",...e}),exports.Text=({size:e="md",...n})=>o.jsx(t.Typography,{variant:{sm:"body2",md:"body1",lg:"subtitle1"}[e],component:n.component||"p",...n});