pure-react-ui 1.4.6 → 1.5.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 +263 -47
- package/lib/components/Button/Button.css +170 -0
- package/lib/components/Button/Button.d.ts +11 -0
- package/lib/components/Button/Button.d.ts.map +1 -0
- package/lib/components/Button/Button.js +30 -0
- package/lib/components/Button/Button.js.map +1 -0
- package/lib/components/Card/Card.css +116 -0
- package/lib/components/Card/Card.d.ts +16 -0
- package/lib/components/Card/Card.d.ts.map +1 -0
- package/lib/components/Card/Card.js +29 -0
- package/lib/components/Card/Card.js.map +1 -0
- package/lib/components/Flex/Flex.css +106 -0
- package/lib/components/Flex/Flex.d.ts +14 -0
- package/lib/components/Flex/Flex.d.ts.map +1 -0
- package/lib/components/Flex/Flex.js +40 -0
- package/lib/components/Flex/Flex.js.map +1 -0
- package/lib/components/Icon/Icon.css +88 -0
- package/lib/components/Icon/Icon.d.ts +13 -0
- package/lib/components/Icon/Icon.d.ts.map +1 -0
- package/lib/components/Icon/Icon.js +26 -0
- package/lib/components/Icon/Icon.js.map +1 -0
- package/lib/components/Icon/icons.d.ts +198 -0
- package/lib/components/Icon/icons.d.ts.map +1 -0
- package/lib/components/Icon/icons.js +155 -0
- package/lib/components/Icon/icons.js.map +1 -0
- package/lib/components/Modal/Modal.css +197 -0
- package/lib/components/Modal/Modal.d.ts +16 -0
- package/lib/components/Modal/Modal.d.ts.map +1 -0
- package/lib/components/Modal/Modal.js +45 -0
- package/lib/components/Modal/Modal.js.map +1 -0
- package/lib/components/Space/Space.css +73 -0
- package/lib/components/Space/Space.d.ts +12 -0
- package/lib/components/Space/Space.d.ts.map +1 -0
- package/lib/components/Space/Space.js +33 -0
- package/lib/components/Space/Space.js.map +1 -0
- package/lib/components/Text/Text.css +240 -0
- package/lib/components/Text/Text.d.ts +16 -0
- package/lib/components/Text/Text.d.ts.map +1 -0
- package/lib/components/Text/Text.js +26 -0
- package/lib/components/Text/Text.js.map +1 -0
- package/lib/index.d.ts +16 -0
- package/lib/index.d.ts.map +1 -0
- package/lib/index.js +9 -0
- package/lib/index.js.map +1 -0
- package/package.json +41 -58
- package/dist/components/Button/Button.d.ts +0 -5
- package/dist/components/Button/Button.d.ts.map +0 -1
- package/dist/components/Button/Button.types.d.ts +0 -14
- package/dist/components/Button/Button.types.d.ts.map +0 -1
- package/dist/components/Button/index.d.ts +0 -2
- package/dist/components/Button/index.d.ts.map +0 -1
- package/dist/dist/index.css +0 -1
- package/dist/index.css +0 -1
- package/dist/index.d.ts +0 -2
- package/dist/index.d.ts.map +0 -1
- package/dist/index.esm.css +0 -1
- package/dist/index.esm.js +0 -25
- package/dist/index.esm.js.map +0 -1
- package/dist/index.js +0 -27
- package/dist/index.js.map +0 -1
- package/dist/setupTests.d.ts +0 -2
- package/dist/setupTests.d.ts.map +0 -1
- package/src/styles/index.css +0 -81
- package/src/styles/variables.css +0 -80
|
@@ -0,0 +1,240 @@
|
|
|
1
|
+
/* Pure Text Component Styles */
|
|
2
|
+
.pure-text {
|
|
3
|
+
margin: 0;
|
|
4
|
+
padding: 0;
|
|
5
|
+
line-height: 1.5;
|
|
6
|
+
}
|
|
7
|
+
|
|
8
|
+
/* Size Variants */
|
|
9
|
+
.pure-text--xs {
|
|
10
|
+
font-size: 0.75rem;
|
|
11
|
+
line-height: 1rem;
|
|
12
|
+
}
|
|
13
|
+
|
|
14
|
+
.pure-text--sm {
|
|
15
|
+
font-size: 0.875rem;
|
|
16
|
+
line-height: 1.25rem;
|
|
17
|
+
}
|
|
18
|
+
|
|
19
|
+
.pure-text--md {
|
|
20
|
+
font-size: 1rem;
|
|
21
|
+
line-height: 1.5rem;
|
|
22
|
+
}
|
|
23
|
+
|
|
24
|
+
.pure-text--lg {
|
|
25
|
+
font-size: 1.125rem;
|
|
26
|
+
line-height: 1.75rem;
|
|
27
|
+
}
|
|
28
|
+
|
|
29
|
+
.pure-text--xl {
|
|
30
|
+
font-size: 1.25rem;
|
|
31
|
+
line-height: 1.75rem;
|
|
32
|
+
}
|
|
33
|
+
|
|
34
|
+
.pure-text--2xl {
|
|
35
|
+
font-size: 1.5rem;
|
|
36
|
+
line-height: 2rem;
|
|
37
|
+
}
|
|
38
|
+
|
|
39
|
+
.pure-text--3xl {
|
|
40
|
+
font-size: 1.875rem;
|
|
41
|
+
line-height: 2.25rem;
|
|
42
|
+
}
|
|
43
|
+
|
|
44
|
+
.pure-text--4xl {
|
|
45
|
+
font-size: 2.25rem;
|
|
46
|
+
line-height: 2.5rem;
|
|
47
|
+
}
|
|
48
|
+
|
|
49
|
+
/* Weight Variants */
|
|
50
|
+
.pure-text--light {
|
|
51
|
+
font-weight: 300;
|
|
52
|
+
}
|
|
53
|
+
|
|
54
|
+
.pure-text--normal {
|
|
55
|
+
font-weight: 400;
|
|
56
|
+
}
|
|
57
|
+
|
|
58
|
+
.pure-text--medium {
|
|
59
|
+
font-weight: 500;
|
|
60
|
+
}
|
|
61
|
+
|
|
62
|
+
.pure-text--semibold {
|
|
63
|
+
font-weight: 600;
|
|
64
|
+
}
|
|
65
|
+
|
|
66
|
+
.pure-text--bold {
|
|
67
|
+
font-weight: 700;
|
|
68
|
+
}
|
|
69
|
+
|
|
70
|
+
/* Color Variants */
|
|
71
|
+
.pure-text--default {
|
|
72
|
+
color: #212529;
|
|
73
|
+
}
|
|
74
|
+
|
|
75
|
+
.pure-text--primary {
|
|
76
|
+
color: #007bff;
|
|
77
|
+
}
|
|
78
|
+
|
|
79
|
+
.pure-text--secondary {
|
|
80
|
+
color: #6c757d;
|
|
81
|
+
}
|
|
82
|
+
|
|
83
|
+
.pure-text--success {
|
|
84
|
+
color: #28a745;
|
|
85
|
+
}
|
|
86
|
+
|
|
87
|
+
.pure-text--danger {
|
|
88
|
+
color: #dc3545;
|
|
89
|
+
}
|
|
90
|
+
|
|
91
|
+
.pure-text--warning {
|
|
92
|
+
color: #ffc107;
|
|
93
|
+
}
|
|
94
|
+
|
|
95
|
+
.pure-text--info {
|
|
96
|
+
color: #17a2b8;
|
|
97
|
+
}
|
|
98
|
+
|
|
99
|
+
.pure-text--muted {
|
|
100
|
+
color: #6c757d;
|
|
101
|
+
opacity: 0.8;
|
|
102
|
+
}
|
|
103
|
+
|
|
104
|
+
/* Alignment */
|
|
105
|
+
.pure-text--align-left {
|
|
106
|
+
text-align: left;
|
|
107
|
+
}
|
|
108
|
+
|
|
109
|
+
.pure-text--align-center {
|
|
110
|
+
text-align: center;
|
|
111
|
+
}
|
|
112
|
+
|
|
113
|
+
.pure-text--align-right {
|
|
114
|
+
text-align: right;
|
|
115
|
+
}
|
|
116
|
+
|
|
117
|
+
.pure-text--align-justify {
|
|
118
|
+
text-align: justify;
|
|
119
|
+
}
|
|
120
|
+
|
|
121
|
+
/* Text Transform */
|
|
122
|
+
.pure-text--uppercase {
|
|
123
|
+
text-transform: uppercase;
|
|
124
|
+
}
|
|
125
|
+
|
|
126
|
+
.pure-text--lowercase {
|
|
127
|
+
text-transform: lowercase;
|
|
128
|
+
}
|
|
129
|
+
|
|
130
|
+
.pure-text--capitalize {
|
|
131
|
+
text-transform: capitalize;
|
|
132
|
+
}
|
|
133
|
+
|
|
134
|
+
/* Text Decoration */
|
|
135
|
+
.pure-text--underline {
|
|
136
|
+
text-decoration: underline;
|
|
137
|
+
}
|
|
138
|
+
|
|
139
|
+
.pure-text--line-through {
|
|
140
|
+
text-decoration: line-through;
|
|
141
|
+
}
|
|
142
|
+
|
|
143
|
+
.pure-text--overline {
|
|
144
|
+
text-decoration: overline;
|
|
145
|
+
}
|
|
146
|
+
|
|
147
|
+
/* Truncate */
|
|
148
|
+
.pure-text--truncate {
|
|
149
|
+
overflow: hidden;
|
|
150
|
+
text-overflow: ellipsis;
|
|
151
|
+
white-space: nowrap;
|
|
152
|
+
}
|
|
153
|
+
|
|
154
|
+
/* Heading Styles */
|
|
155
|
+
.pure-text h1,
|
|
156
|
+
h1.pure-text {
|
|
157
|
+
font-size: 2.25rem;
|
|
158
|
+
font-weight: 700;
|
|
159
|
+
line-height: 1.2;
|
|
160
|
+
margin-bottom: 0.5rem;
|
|
161
|
+
}
|
|
162
|
+
|
|
163
|
+
.pure-text h2,
|
|
164
|
+
h2.pure-text {
|
|
165
|
+
font-size: 1.875rem;
|
|
166
|
+
font-weight: 600;
|
|
167
|
+
line-height: 1.3;
|
|
168
|
+
margin-bottom: 0.5rem;
|
|
169
|
+
}
|
|
170
|
+
|
|
171
|
+
.pure-text h3,
|
|
172
|
+
h3.pure-text {
|
|
173
|
+
font-size: 1.5rem;
|
|
174
|
+
font-weight: 600;
|
|
175
|
+
line-height: 1.4;
|
|
176
|
+
margin-bottom: 0.5rem;
|
|
177
|
+
}
|
|
178
|
+
|
|
179
|
+
.pure-text h4,
|
|
180
|
+
h4.pure-text {
|
|
181
|
+
font-size: 1.25rem;
|
|
182
|
+
font-weight: 600;
|
|
183
|
+
line-height: 1.4;
|
|
184
|
+
margin-bottom: 0.5rem;
|
|
185
|
+
}
|
|
186
|
+
|
|
187
|
+
.pure-text h5,
|
|
188
|
+
h5.pure-text {
|
|
189
|
+
font-size: 1.125rem;
|
|
190
|
+
font-weight: 500;
|
|
191
|
+
line-height: 1.5;
|
|
192
|
+
margin-bottom: 0.5rem;
|
|
193
|
+
}
|
|
194
|
+
|
|
195
|
+
.pure-text h6,
|
|
196
|
+
h6.pure-text {
|
|
197
|
+
font-size: 1rem;
|
|
198
|
+
font-weight: 500;
|
|
199
|
+
line-height: 1.5;
|
|
200
|
+
margin-bottom: 0.5rem;
|
|
201
|
+
}
|
|
202
|
+
|
|
203
|
+
/* Code and Pre Styles */
|
|
204
|
+
code.pure-text,
|
|
205
|
+
.pure-text code {
|
|
206
|
+
font-family: 'Courier New', Courier, monospace;
|
|
207
|
+
background-color: #f5f5f5;
|
|
208
|
+
padding: 0.125rem 0.25rem;
|
|
209
|
+
border-radius: 0.25rem;
|
|
210
|
+
font-size: 0.875em;
|
|
211
|
+
}
|
|
212
|
+
|
|
213
|
+
pre.pure-text,
|
|
214
|
+
.pure-text pre {
|
|
215
|
+
font-family: 'Courier New', Courier, monospace;
|
|
216
|
+
background-color: #f5f5f5;
|
|
217
|
+
padding: 1rem;
|
|
218
|
+
border-radius: 0.375rem;
|
|
219
|
+
overflow-x: auto;
|
|
220
|
+
line-height: 1.5;
|
|
221
|
+
}
|
|
222
|
+
|
|
223
|
+
/* Responsive */
|
|
224
|
+
@media (max-width: 768px) {
|
|
225
|
+
.pure-text--4xl {
|
|
226
|
+
font-size: 1.875rem;
|
|
227
|
+
line-height: 2.25rem;
|
|
228
|
+
}
|
|
229
|
+
|
|
230
|
+
.pure-text--3xl {
|
|
231
|
+
font-size: 1.5rem;
|
|
232
|
+
line-height: 2rem;
|
|
233
|
+
}
|
|
234
|
+
|
|
235
|
+
.pure-text--2xl {
|
|
236
|
+
font-size: 1.25rem;
|
|
237
|
+
line-height: 1.75rem;
|
|
238
|
+
}
|
|
239
|
+
}
|
|
240
|
+
|
|
@@ -0,0 +1,16 @@
|
|
|
1
|
+
import React from 'react';
|
|
2
|
+
import './Text.css';
|
|
3
|
+
export interface TextProps {
|
|
4
|
+
as?: 'p' | 'span' | 'div' | 'h1' | 'h2' | 'h3' | 'h4' | 'h5' | 'h6' | 'label' | 'small' | 'strong' | 'em' | 'code' | 'pre';
|
|
5
|
+
size?: 'xs' | 'sm' | 'md' | 'lg' | 'xl' | '2xl' | '3xl' | '4xl';
|
|
6
|
+
weight?: 'light' | 'normal' | 'medium' | 'semibold' | 'bold';
|
|
7
|
+
color?: 'default' | 'primary' | 'secondary' | 'success' | 'danger' | 'warning' | 'info' | 'muted';
|
|
8
|
+
align?: 'left' | 'center' | 'right' | 'justify';
|
|
9
|
+
transform?: 'none' | 'uppercase' | 'lowercase' | 'capitalize';
|
|
10
|
+
decoration?: 'none' | 'underline' | 'line-through' | 'overline';
|
|
11
|
+
truncate?: boolean;
|
|
12
|
+
className?: string;
|
|
13
|
+
children: React.ReactNode;
|
|
14
|
+
}
|
|
15
|
+
export declare const Text: React.FC<TextProps>;
|
|
16
|
+
//# sourceMappingURL=Text.d.ts.map
|
|
@@ -0,0 +1 @@
|
|
|
1
|
+
{"version":3,"file":"Text.d.ts","sourceRoot":"","sources":["../../../src/components/Text/Text.tsx"],"names":[],"mappings":"AAAA,OAAO,KAAK,MAAM,OAAO,CAAC;AAC1B,OAAO,YAAY,CAAC;AAEpB,MAAM,WAAW,SAAS;IACxB,EAAE,CAAC,EAAE,GAAG,GAAG,MAAM,GAAG,KAAK,GAAG,IAAI,GAAG,IAAI,GAAG,IAAI,GAAG,IAAI,GAAG,IAAI,GAAG,IAAI,GAAG,OAAO,GAAG,OAAO,GAAG,QAAQ,GAAG,IAAI,GAAG,MAAM,GAAG,KAAK,CAAC;IAC3H,IAAI,CAAC,EAAE,IAAI,GAAG,IAAI,GAAG,IAAI,GAAG,IAAI,GAAG,IAAI,GAAG,KAAK,GAAG,KAAK,GAAG,KAAK,CAAC;IAChE,MAAM,CAAC,EAAE,OAAO,GAAG,QAAQ,GAAG,QAAQ,GAAG,UAAU,GAAG,MAAM,CAAC;IAC7D,KAAK,CAAC,EAAE,SAAS,GAAG,SAAS,GAAG,WAAW,GAAG,SAAS,GAAG,QAAQ,GAAG,SAAS,GAAG,MAAM,GAAG,OAAO,CAAC;IAClG,KAAK,CAAC,EAAE,MAAM,GAAG,QAAQ,GAAG,OAAO,GAAG,SAAS,CAAC;IAChD,SAAS,CAAC,EAAE,MAAM,GAAG,WAAW,GAAG,WAAW,GAAG,YAAY,CAAC;IAC9D,UAAU,CAAC,EAAE,MAAM,GAAG,WAAW,GAAG,cAAc,GAAG,UAAU,CAAC;IAChE,QAAQ,CAAC,EAAE,OAAO,CAAC;IACnB,SAAS,CAAC,EAAE,MAAM,CAAC;IACnB,QAAQ,EAAE,KAAK,CAAC,SAAS,CAAC;CAC3B;AAED,eAAO,MAAM,IAAI,EAAE,KAAK,CAAC,EAAE,CAAC,SAAS,CAwCpC,CAAC"}
|
|
@@ -0,0 +1,26 @@
|
|
|
1
|
+
import React from 'react';
|
|
2
|
+
import './Text.css';
|
|
3
|
+
export const Text = ({ as = 'p', size = 'md', weight = 'normal', color = 'default', align = 'left', transform = 'none', decoration = 'none', truncate = false, className = '', children }) => {
|
|
4
|
+
const baseClass = 'pure-text';
|
|
5
|
+
const sizeClass = `pure-text--${size}`;
|
|
6
|
+
const weightClass = `pure-text--${weight}`;
|
|
7
|
+
const colorClass = `pure-text--${color}`;
|
|
8
|
+
const alignClass = `pure-text--align-${align}`;
|
|
9
|
+
const transformClass = transform !== 'none' ? `pure-text--${transform}` : '';
|
|
10
|
+
const decorationClass = decoration !== 'none' ? `pure-text--${decoration}` : '';
|
|
11
|
+
const truncateClass = truncate ? 'pure-text--truncate' : '';
|
|
12
|
+
const combinedClassName = [
|
|
13
|
+
baseClass,
|
|
14
|
+
sizeClass,
|
|
15
|
+
weightClass,
|
|
16
|
+
colorClass,
|
|
17
|
+
alignClass,
|
|
18
|
+
transformClass,
|
|
19
|
+
decorationClass,
|
|
20
|
+
truncateClass,
|
|
21
|
+
className
|
|
22
|
+
].filter(Boolean).join(' ');
|
|
23
|
+
const Component = as;
|
|
24
|
+
return (React.createElement(Component, { className: combinedClassName }, children));
|
|
25
|
+
};
|
|
26
|
+
//# sourceMappingURL=Text.js.map
|
|
@@ -0,0 +1 @@
|
|
|
1
|
+
{"version":3,"file":"Text.js","sourceRoot":"","sources":["../../../src/components/Text/Text.tsx"],"names":[],"mappings":"AAAA,OAAO,KAAK,MAAM,OAAO,CAAC;AAC1B,OAAO,YAAY,CAAC;AAepB,MAAM,CAAC,MAAM,IAAI,GAAwB,CAAC,EACxC,EAAE,GAAG,GAAG,EACR,IAAI,GAAG,IAAI,EACX,MAAM,GAAG,QAAQ,EACjB,KAAK,GAAG,SAAS,EACjB,KAAK,GAAG,MAAM,EACd,SAAS,GAAG,MAAM,EAClB,UAAU,GAAG,MAAM,EACnB,QAAQ,GAAG,KAAK,EAChB,SAAS,GAAG,EAAE,EACd,QAAQ,EACT,EAAE,EAAE;IACH,MAAM,SAAS,GAAG,WAAW,CAAC;IAC9B,MAAM,SAAS,GAAG,cAAc,IAAI,EAAE,CAAC;IACvC,MAAM,WAAW,GAAG,cAAc,MAAM,EAAE,CAAC;IAC3C,MAAM,UAAU,GAAG,cAAc,KAAK,EAAE,CAAC;IACzC,MAAM,UAAU,GAAG,oBAAoB,KAAK,EAAE,CAAC;IAC/C,MAAM,cAAc,GAAG,SAAS,KAAK,MAAM,CAAC,CAAC,CAAC,cAAc,SAAS,EAAE,CAAC,CAAC,CAAC,EAAE,CAAC;IAC7E,MAAM,eAAe,GAAG,UAAU,KAAK,MAAM,CAAC,CAAC,CAAC,cAAc,UAAU,EAAE,CAAC,CAAC,CAAC,EAAE,CAAC;IAChF,MAAM,aAAa,GAAG,QAAQ,CAAC,CAAC,CAAC,qBAAqB,CAAC,CAAC,CAAC,EAAE,CAAC;IAE5D,MAAM,iBAAiB,GAAG;QACxB,SAAS;QACT,SAAS;QACT,WAAW;QACX,UAAU;QACV,UAAU;QACV,cAAc;QACd,eAAe;QACf,aAAa;QACb,SAAS;KACV,CAAC,MAAM,CAAC,OAAO,CAAC,CAAC,IAAI,CAAC,GAAG,CAAC,CAAC;IAE5B,MAAM,SAAS,GAAG,EAAiC,CAAC;IAEpD,OAAO,CACL,oBAAC,SAAS,IAAC,SAAS,EAAE,iBAAiB,IACpC,QAAQ,CACC,CACb,CAAC;AACJ,CAAC,CAAC"}
|
package/lib/index.d.ts
ADDED
|
@@ -0,0 +1,16 @@
|
|
|
1
|
+
export { Button } from './components/Button/Button';
|
|
2
|
+
export type { ButtonProps } from './components/Button/Button';
|
|
3
|
+
export { Card } from './components/Card/Card';
|
|
4
|
+
export type { CardProps } from './components/Card/Card';
|
|
5
|
+
export { Modal } from './components/Modal/Modal';
|
|
6
|
+
export type { ModalProps } from './components/Modal/Modal';
|
|
7
|
+
export { Icon } from './components/Icon/Icon';
|
|
8
|
+
export type { IconProps, IconName } from './components/Icon/Icon';
|
|
9
|
+
export * from './components/Icon/icons';
|
|
10
|
+
export { Space } from './components/Space/Space';
|
|
11
|
+
export type { SpaceProps } from './components/Space/Space';
|
|
12
|
+
export { Flex } from './components/Flex/Flex';
|
|
13
|
+
export type { FlexProps } from './components/Flex/Flex';
|
|
14
|
+
export { Text } from './components/Text/Text';
|
|
15
|
+
export type { TextProps } from './components/Text/Text';
|
|
16
|
+
//# sourceMappingURL=index.d.ts.map
|
|
@@ -0,0 +1 @@
|
|
|
1
|
+
{"version":3,"file":"index.d.ts","sourceRoot":"","sources":["../src/index.ts"],"names":[],"mappings":"AAAA,OAAO,EAAE,MAAM,EAAE,MAAM,4BAA4B,CAAC;AACpD,YAAY,EAAE,WAAW,EAAE,MAAM,4BAA4B,CAAC;AAE9D,OAAO,EAAE,IAAI,EAAE,MAAM,wBAAwB,CAAC;AAC9C,YAAY,EAAE,SAAS,EAAE,MAAM,wBAAwB,CAAC;AAExD,OAAO,EAAE,KAAK,EAAE,MAAM,0BAA0B,CAAC;AACjD,YAAY,EAAE,UAAU,EAAE,MAAM,0BAA0B,CAAC;AAE3D,OAAO,EAAE,IAAI,EAAE,MAAM,wBAAwB,CAAC;AAC9C,YAAY,EAAE,SAAS,EAAE,QAAQ,EAAE,MAAM,wBAAwB,CAAC;AAClE,cAAc,yBAAyB,CAAC;AAExC,OAAO,EAAE,KAAK,EAAE,MAAM,0BAA0B,CAAC;AACjD,YAAY,EAAE,UAAU,EAAE,MAAM,0BAA0B,CAAC;AAE3D,OAAO,EAAE,IAAI,EAAE,MAAM,wBAAwB,CAAC;AAC9C,YAAY,EAAE,SAAS,EAAE,MAAM,wBAAwB,CAAC;AAExD,OAAO,EAAE,IAAI,EAAE,MAAM,wBAAwB,CAAC;AAC9C,YAAY,EAAE,SAAS,EAAE,MAAM,wBAAwB,CAAC"}
|
package/lib/index.js
ADDED
|
@@ -0,0 +1,9 @@
|
|
|
1
|
+
export { Button } from './components/Button/Button';
|
|
2
|
+
export { Card } from './components/Card/Card';
|
|
3
|
+
export { Modal } from './components/Modal/Modal';
|
|
4
|
+
export { Icon } from './components/Icon/Icon';
|
|
5
|
+
export * from './components/Icon/icons';
|
|
6
|
+
export { Space } from './components/Space/Space';
|
|
7
|
+
export { Flex } from './components/Flex/Flex';
|
|
8
|
+
export { Text } from './components/Text/Text';
|
|
9
|
+
//# sourceMappingURL=index.js.map
|
package/lib/index.js.map
ADDED
|
@@ -0,0 +1 @@
|
|
|
1
|
+
{"version":3,"file":"index.js","sourceRoot":"","sources":["../src/index.ts"],"names":[],"mappings":"AAAA,OAAO,EAAE,MAAM,EAAE,MAAM,4BAA4B,CAAC;AAGpD,OAAO,EAAE,IAAI,EAAE,MAAM,wBAAwB,CAAC;AAG9C,OAAO,EAAE,KAAK,EAAE,MAAM,0BAA0B,CAAC;AAGjD,OAAO,EAAE,IAAI,EAAE,MAAM,wBAAwB,CAAC;AAE9C,cAAc,yBAAyB,CAAC;AAExC,OAAO,EAAE,KAAK,EAAE,MAAM,0BAA0B,CAAC;AAGjD,OAAO,EAAE,IAAI,EAAE,MAAM,wBAAwB,CAAC;AAG9C,OAAO,EAAE,IAAI,EAAE,MAAM,wBAAwB,CAAC"}
|
package/package.json
CHANGED
|
@@ -1,58 +1,41 @@
|
|
|
1
|
-
{
|
|
2
|
-
"name": "pure-react-ui",
|
|
3
|
-
"version": "1.
|
|
4
|
-
"description": "A
|
|
5
|
-
"main": "
|
|
6
|
-
"
|
|
7
|
-
"
|
|
8
|
-
|
|
9
|
-
|
|
10
|
-
|
|
11
|
-
|
|
12
|
-
"
|
|
13
|
-
|
|
14
|
-
|
|
15
|
-
|
|
16
|
-
|
|
17
|
-
"
|
|
18
|
-
"
|
|
19
|
-
"
|
|
20
|
-
"
|
|
21
|
-
|
|
22
|
-
|
|
23
|
-
"
|
|
24
|
-
"
|
|
25
|
-
"
|
|
26
|
-
"
|
|
27
|
-
"
|
|
28
|
-
],
|
|
29
|
-
"author": "
|
|
30
|
-
"license": "
|
|
31
|
-
"peerDependencies": {
|
|
32
|
-
"react": "
|
|
33
|
-
"react-dom": "
|
|
34
|
-
},
|
|
35
|
-
"devDependencies": {
|
|
36
|
-
"@
|
|
37
|
-
"@
|
|
38
|
-
"
|
|
39
|
-
|
|
40
|
-
|
|
41
|
-
|
|
42
|
-
"@types/react": "^19.2.7",
|
|
43
|
-
"@types/react-dom": "^19.2.3",
|
|
44
|
-
"@typescript-eslint/eslint-plugin": "^8.51.0",
|
|
45
|
-
"@typescript-eslint/parser": "^8.51.0",
|
|
46
|
-
"eslint": "^9.39.2",
|
|
47
|
-
"jest": "^30.2.0",
|
|
48
|
-
"jest-environment-jsdom": "^30.2.0",
|
|
49
|
-
"postcss": "^8.5.6",
|
|
50
|
-
"prettier": "^3.7.4",
|
|
51
|
-
"rollup": "^4.54.0",
|
|
52
|
-
"rollup-plugin-peer-deps-external": "^2.2.4",
|
|
53
|
-
"rollup-plugin-postcss": "^4.0.2",
|
|
54
|
-
"ts-jest": "^29.4.6",
|
|
55
|
-
"tslib": "^2.8.1",
|
|
56
|
-
"typescript": "^5.9.3"
|
|
57
|
-
}
|
|
58
|
-
}
|
|
1
|
+
{
|
|
2
|
+
"name": "pure-react-ui",
|
|
3
|
+
"version": "1.5.0",
|
|
4
|
+
"description": "A pure React UI component library with Button, Card, Modal, Icon, Space, Flex, and Text components",
|
|
5
|
+
"main": "lib/index.js",
|
|
6
|
+
"types": "lib/index.d.ts",
|
|
7
|
+
"files": [
|
|
8
|
+
"lib",
|
|
9
|
+
"README.md"
|
|
10
|
+
],
|
|
11
|
+
"scripts": {
|
|
12
|
+
"build": "tsc && node scripts/copy-css.js",
|
|
13
|
+
"prepublishOnly": "npm run build",
|
|
14
|
+
"test": "echo \"Error: no test specified\" && exit 1"
|
|
15
|
+
},
|
|
16
|
+
"keywords": [
|
|
17
|
+
"react",
|
|
18
|
+
"typescript",
|
|
19
|
+
"ui",
|
|
20
|
+
"components",
|
|
21
|
+
"button",
|
|
22
|
+
"card",
|
|
23
|
+
"modal",
|
|
24
|
+
"icon",
|
|
25
|
+
"icons",
|
|
26
|
+
"svg",
|
|
27
|
+
"pure"
|
|
28
|
+
],
|
|
29
|
+
"author": "",
|
|
30
|
+
"license": "MIT",
|
|
31
|
+
"peerDependencies": {
|
|
32
|
+
"react": ">=16.8.0",
|
|
33
|
+
"react-dom": ">=16.8.0"
|
|
34
|
+
},
|
|
35
|
+
"devDependencies": {
|
|
36
|
+
"@types/react": "^18.2.0",
|
|
37
|
+
"@types/react-dom": "^18.2.0",
|
|
38
|
+
"typescript": "^5.0.0"
|
|
39
|
+
}
|
|
40
|
+
}
|
|
41
|
+
|
|
@@ -1 +0,0 @@
|
|
|
1
|
-
{"version":3,"file":"Button.d.ts","sourceRoot":"","sources":["../../../src/components/Button/Button.tsx"],"names":[],"mappings":"AAAA,OAAO,KAAK,MAAM,OAAO,CAAC;AAC1B,OAAO,EAAE,WAAW,EAAE,MAAM,gBAAgB,CAAC;AAE7C,OAAO,4BAA4B,CAAC;AAEpC,eAAO,MAAM,UAAU,EAAE,KAAK,CAAC,EAAE,CAAC,WAAW,CAmD5C,CAAC"}
|
|
@@ -1,14 +0,0 @@
|
|
|
1
|
-
import { ButtonHTMLAttributes, ReactNode } from 'react';
|
|
2
|
-
export type ButtonVariant = 'primary' | 'secondary' | 'success' | 'danger' | 'warning' | 'outline' | 'ghost';
|
|
3
|
-
export type ButtonSize = 'sm' | 'md' | 'lg';
|
|
4
|
-
export interface ButtonProps extends ButtonHTMLAttributes<HTMLButtonElement> {
|
|
5
|
-
variant?: ButtonVariant;
|
|
6
|
-
size?: ButtonSize;
|
|
7
|
-
fullWidth?: boolean;
|
|
8
|
-
loading?: boolean;
|
|
9
|
-
disabled?: boolean;
|
|
10
|
-
children: ReactNode;
|
|
11
|
-
leftIcon?: ReactNode;
|
|
12
|
-
rightIcon?: ReactNode;
|
|
13
|
-
}
|
|
14
|
-
//# sourceMappingURL=Button.types.d.ts.map
|
|
@@ -1 +0,0 @@
|
|
|
1
|
-
{"version":3,"file":"Button.types.d.ts","sourceRoot":"","sources":["../../../src/components/Button/Button.types.ts"],"names":[],"mappings":"AAAA,OAAO,EAAE,oBAAoB,EAAE,SAAS,EAAE,MAAM,OAAO,CAAC;AAExD,MAAM,MAAM,aAAa,GAAG,SAAS,GAAG,WAAW,GAAG,SAAS,GAAG,QAAQ,GAAG,SAAS,GAAG,SAAS,GAAG,OAAO,CAAC;AAC7G,MAAM,MAAM,UAAU,GAAG,IAAI,GAAG,IAAI,GAAG,IAAI,CAAC;AAE5C,MAAM,WAAW,WAAY,SAAQ,oBAAoB,CAAC,iBAAiB,CAAC;IAC1E,OAAO,CAAC,EAAE,aAAa,CAAC;IACxB,IAAI,CAAC,EAAE,UAAU,CAAC;IAClB,SAAS,CAAC,EAAE,OAAO,CAAC;IACpB,OAAO,CAAC,EAAE,OAAO,CAAC;IAClB,QAAQ,CAAC,EAAE,OAAO,CAAC;IACnB,QAAQ,EAAE,SAAS,CAAC;IACpB,QAAQ,CAAC,EAAE,SAAS,CAAC;IACrB,SAAS,CAAC,EAAE,SAAS,CAAC;CACvB"}
|
|
@@ -1 +0,0 @@
|
|
|
1
|
-
{"version":3,"file":"index.d.ts","sourceRoot":"","sources":["../../../src/components/Button/index.ts"],"names":[],"mappings":"AAAA,OAAO,EAAE,UAAU,EAAE,MAAM,UAAU,CAAC"}
|
package/dist/dist/index.css
DELETED
|
@@ -1 +0,0 @@
|
|
|
1
|
-
.Button-module_button__2ZuB7{align-items:center;border:none;border-radius:var(--pure-radius-md);cursor:pointer;display:inline-flex;font-family:var(--pure-font-family);font-size:var(--pure-font-size-md);font-weight:500;gap:var(--pure-spacing-sm);justify-content:center;overflow:hidden;position:relative;text-decoration:none;transition:all var(--pure-transition-base)}.Button-module_button--primary__0eqDM{background-color:var(--pure-color-primary);color:var(--pure-color-white)}.Button-module_button--primary__0eqDM:hover:not(:disabled){background-color:var(--pure-color-primary-hover)}.Button-module_button--secondary__iK3TS{background-color:var(--pure-color-secondary);color:var(--pure-color-white)}.Button-module_button--secondary__iK3TS:hover:not(:disabled){background-color:var(--pure-color-secondary-hover)}.Button-module_button--success__1WVzM{background-color:var(--pure-color-success);color:var(--pure-color-white)}.Button-module_button--success__1WVzM:hover:not(:disabled){background-color:var(--pure-color-success-hover)}.Button-module_button--danger__y2uGS{background-color:var(--pure-color-danger);color:var(--pure-color-white)}.Button-module_button--danger__y2uGS:hover:not(:disabled){background-color:var(--pure-color-danger-hover)}.Button-module_button--warning__cp3iP{background-color:var(--pure-color-warning);color:var(--pure-color-white)}.Button-module_button--warning__cp3iP:hover:not(:disabled){background-color:var(--pure-color-warning-hover)}.Button-module_button--outline__eVhnr{background-color:transparent;border:1px solid var(--pure-color-primary);color:var(--pure-color-primary)}.Button-module_button--outline__eVhnr:hover:not(:disabled){background-color:var(--pure-color-primary-light)}.Button-module_button--ghost__nktSD{background-color:transparent;color:var(--pure-color-primary)}.Button-module_button--ghost__nktSD:hover:not(:disabled){background-color:var(--pure-color-primary-light)}.Button-module_button--sm__-XOLs{font-size:var(--pure-font-size-sm);padding:var(--pure-spacing-xs) var(--pure-spacing-sm)}.Button-module_button--md__-GRga{font-size:var(--pure-font-size-md);padding:var(--pure-spacing-sm) var(--pure-spacing-md)}.Button-module_button--lg__p-URz{font-size:var(--pure-font-size-lg);padding:var(--pure-spacing-md) var(--pure-spacing-lg)}.Button-module_button--full-width__XyuwA{width:100%}.Button-module_button--loading__lNyfH{opacity:.8;pointer-events:none}.Button-module_button__2ZuB7:disabled{cursor:not-allowed;opacity:.6}.Button-module_button__icon__e6c-f,.Button-module_button__text__JjFiL{align-items:center;display:flex;justify-content:center}.Button-module_button__spinner__1soI4{height:20px;position:absolute;width:20px}.Button-module_spinner__ZExvW{animation:Button-module_rotate__TQjyl 2s linear infinite;height:100%;width:100%}.Button-module_spinner-path__Zk3SN{stroke:currentColor;stroke-linecap:round;animation:Button-module_dash__NItHE 1.5s ease-in-out infinite}@keyframes Button-module_rotate__TQjyl{to{transform:rotate(1turn)}}@keyframes Button-module_dash__NItHE{0%{stroke-dasharray:1,150;stroke-dashoffset:0}50%{stroke-dasharray:90,150;stroke-dashoffset:-35}to{stroke-dasharray:90,150;stroke-dashoffset:-124}}:root{--pure-color-primary:#2563eb;--pure-color-primary-hover:#1d4ed8;--pure-color-primary-light:#dbeafe;--pure-color-secondary:#64748b;--pure-color-secondary-hover:#475569;--pure-color-secondary-light:#f1f5f9;--pure-color-success:#10b981;--pure-color-success-hover:#059669;--pure-color-success-light:#d1fae5;--pure-color-danger:#ef4444;--pure-color-danger-hover:#dc2626;--pure-color-danger-light:#fee2e2;--pure-color-warning:#f59e0b;--pure-color-warning-hover:#d97706;--pure-color-warning-light:#fef3c7;--pure-color-info:#3b82f6;--pure-color-info-hover:#2563eb;--pure-color-info-light:#dbeafe;--pure-color-white:#fff;--pure-color-black:#000;--pure-color-gray-50:#f9fafb;--pure-color-gray-100:#f3f4f6;--pure-color-gray-200:#e5e7eb;--pure-color-gray-300:#d1d5db;--pure-color-gray-400:#9ca3af;--pure-color-gray-500:#6b7280;--pure-color-gray-600:#4b5563;--pure-color-gray-700:#374151;--pure-color-gray-800:#1f2937;--pure-color-gray-900:#111827;--pure-spacing-xs:0.25rem;--pure-spacing-sm:0.5rem;--pure-spacing-md:1rem;--pure-spacing-lg:1.5rem;--pure-spacing-xl:2rem;--pure-spacing-2xl:3rem;--pure-radius-sm:0.25rem;--pure-radius-md:0.375rem;--pure-radius-lg:0.5rem;--pure-radius-xl:0.75rem;--pure-radius-full:9999px;--pure-shadow-sm:0 1px 2px 0 rgba(0,0,0,.05);--pure-shadow-md:0 4px 6px -1px rgba(0,0,0,.1),0 2px 4px -1px rgba(0,0,0,.06);--pure-shadow-lg:0 10px 15px -3px rgba(0,0,0,.1),0 4px 6px -2px rgba(0,0,0,.05);--pure-shadow-xl:0 20px 25px -5px rgba(0,0,0,.1),0 10px 10px -5px rgba(0,0,0,.04);--pure-font-family:-apple-system,BlinkMacSystemFont,"Segoe UI","Roboto","Oxygen","Ubuntu","Cantarell","Fira Sans","Droid Sans","Helvetica Neue",sans-serif;--pure-font-size-xs:0.75rem;--pure-font-size-sm:0.875rem;--pure-font-size-md:1rem;--pure-font-size-lg:1.125rem;--pure-font-size-xl:1.25rem;--pure-font-size-2xl:1.5rem;--pure-transition-fast:150ms ease-in-out;--pure-transition-base:200ms ease-in-out;--pure-transition-slow:300ms ease-in-out;--pure-z-dropdown:1000;--pure-z-modal:1050;--pure-z-tooltip:1100}
|
package/dist/index.css
DELETED
|
@@ -1 +0,0 @@
|
|
|
1
|
-
.Button-module__button___2ZuB7{align-items:center;border:none;border-radius:var(--pure-radius-md);cursor:pointer;display:inline-flex;font-family:var(--pure-font-family);font-size:var(--pure-font-size-md);font-weight:500;gap:var(--pure-spacing-sm);justify-content:center;overflow:hidden;position:relative;text-decoration:none;transition:all var(--pure-transition-base)}.Button-module__button--primary___0eqDM{background-color:var(--pure-color-primary);color:var(--pure-color-white)}.Button-module__button--primary___0eqDM:hover:not(:disabled){background-color:var(--pure-color-primary-hover)}.Button-module__button--secondary___iK3TS{background-color:var(--pure-color-secondary);color:var(--pure-color-white)}.Button-module__button--secondary___iK3TS:hover:not(:disabled){background-color:var(--pure-color-secondary-hover)}.Button-module__button--success___1WVzM{background-color:var(--pure-color-success);color:var(--pure-color-white)}.Button-module__button--success___1WVzM:hover:not(:disabled){background-color:var(--pure-color-success-hover)}.Button-module__button--danger___y2uGS{background-color:var(--pure-color-danger);color:var(--pure-color-white)}.Button-module__button--danger___y2uGS:hover:not(:disabled){background-color:var(--pure-color-danger-hover)}.Button-module__button--warning___cp3iP{background-color:var(--pure-color-warning);color:var(--pure-color-white)}.Button-module__button--warning___cp3iP:hover:not(:disabled){background-color:var(--pure-color-warning-hover)}.Button-module__button--outline___eVhnr{background-color:transparent;border:1px solid var(--pure-color-primary);color:var(--pure-color-primary)}.Button-module__button--outline___eVhnr:hover:not(:disabled){background-color:var(--pure-color-primary-light)}.Button-module__button--ghost___nktSD{background-color:transparent;color:var(--pure-color-primary)}.Button-module__button--ghost___nktSD:hover:not(:disabled){background-color:var(--pure-color-primary-light)}.Button-module__button--sm___-XOLs{font-size:var(--pure-font-size-sm);padding:var(--pure-spacing-xs) var(--pure-spacing-sm)}.Button-module__button--md___-GRga{font-size:var(--pure-font-size-md);padding:var(--pure-spacing-sm) var(--pure-spacing-md)}.Button-module__button--lg___p-URz{font-size:var(--pure-font-size-lg);padding:var(--pure-spacing-md) var(--pure-spacing-lg)}.Button-module__button--full-width___XyuwA{width:100%}.Button-module__button--loading___lNyfH{opacity:.8;pointer-events:none}.Button-module__button___2ZuB7:disabled{cursor:not-allowed;opacity:.6}.Button-module__button__icon___e6c-f,.Button-module__button__text___JjFiL{align-items:center;display:flex;justify-content:center}.Button-module__button__spinner___1soI4{height:20px;position:absolute;width:20px}.Button-module__spinner___ZExvW{animation:Button-module__rotate___TQjyl 2s linear infinite;height:100%;width:100%}.Button-module__spinner-path___Zk3SN{stroke:currentColor;stroke-linecap:round;animation:Button-module__dash___NItHE 1.5s ease-in-out infinite}@keyframes Button-module__rotate___TQjyl{to{transform:rotate(1turn)}}@keyframes Button-module__dash___NItHE{0%{stroke-dasharray:1,150;stroke-dashoffset:0}50%{stroke-dasharray:90,150;stroke-dashoffset:-35}to{stroke-dasharray:90,150;stroke-dashoffset:-124}}:root{--pure-color-primary:#2563eb;--pure-color-primary-hover:#1d4ed8;--pure-color-primary-light:#dbeafe;--pure-color-secondary:#64748b;--pure-color-secondary-hover:#475569;--pure-color-secondary-light:#f1f5f9;--pure-color-success:#10b981;--pure-color-success-hover:#059669;--pure-color-success-light:#d1fae5;--pure-color-danger:#ef4444;--pure-color-danger-hover:#dc2626;--pure-color-danger-light:#fee2e2;--pure-color-warning:#f59e0b;--pure-color-warning-hover:#d97706;--pure-color-warning-light:#fef3c7;--pure-color-info:#3b82f6;--pure-color-info-hover:#2563eb;--pure-color-info-light:#dbeafe;--pure-color-white:#fff;--pure-color-black:#000;--pure-color-gray-50:#f9fafb;--pure-color-gray-100:#f3f4f6;--pure-color-gray-200:#e5e7eb;--pure-color-gray-300:#d1d5db;--pure-color-gray-400:#9ca3af;--pure-color-gray-500:#6b7280;--pure-color-gray-600:#4b5563;--pure-color-gray-700:#374151;--pure-color-gray-800:#1f2937;--pure-color-gray-900:#111827;--pure-spacing-xs:0.25rem;--pure-spacing-sm:0.5rem;--pure-spacing-md:1rem;--pure-spacing-lg:1.5rem;--pure-spacing-xl:2rem;--pure-spacing-2xl:3rem;--pure-radius-sm:0.25rem;--pure-radius-md:0.375rem;--pure-radius-lg:0.5rem;--pure-radius-xl:0.75rem;--pure-radius-full:9999px;--pure-shadow-sm:0 1px 2px 0 rgba(0,0,0,.05);--pure-shadow-md:0 4px 6px -1px rgba(0,0,0,.1),0 2px 4px -1px rgba(0,0,0,.06);--pure-shadow-lg:0 10px 15px -3px rgba(0,0,0,.1),0 4px 6px -2px rgba(0,0,0,.05);--pure-shadow-xl:0 20px 25px -5px rgba(0,0,0,.1),0 10px 10px -5px rgba(0,0,0,.04);--pure-font-family:-apple-system,BlinkMacSystemFont,"Segoe UI","Roboto","Oxygen","Ubuntu","Cantarell","Fira Sans","Droid Sans","Helvetica Neue",sans-serif;--pure-font-size-xs:0.75rem;--pure-font-size-sm:0.875rem;--pure-font-size-md:1rem;--pure-font-size-lg:1.125rem;--pure-font-size-xl:1.25rem;--pure-font-size-2xl:1.5rem;--pure-transition-fast:150ms ease-in-out;--pure-transition-base:200ms ease-in-out;--pure-transition-slow:300ms ease-in-out;--pure-z-dropdown:1000;--pure-z-modal:1050;--pure-z-tooltip:1100}
|
package/dist/index.d.ts
DELETED
package/dist/index.d.ts.map
DELETED
|
@@ -1 +0,0 @@
|
|
|
1
|
-
{"version":3,"file":"index.d.ts","sourceRoot":"","sources":["../src/index.ts"],"names":[],"mappings":"AAAA,OAAO,EAAE,UAAU,EAAE,MAAM,qBAAqB,CAAC"}
|
package/dist/index.esm.css
DELETED
|
@@ -1 +0,0 @@
|
|
|
1
|
-
.Button-module__button___2ZuB7{align-items:center;border:none;border-radius:var(--pure-radius-md);cursor:pointer;display:inline-flex;font-family:var(--pure-font-family);font-size:var(--pure-font-size-md);font-weight:500;gap:var(--pure-spacing-sm);justify-content:center;overflow:hidden;position:relative;text-decoration:none;transition:all var(--pure-transition-base)}.Button-module__button--primary___0eqDM{background-color:var(--pure-color-primary);color:var(--pure-color-white)}.Button-module__button--primary___0eqDM:hover:not(:disabled){background-color:var(--pure-color-primary-hover)}.Button-module__button--secondary___iK3TS{background-color:var(--pure-color-secondary);color:var(--pure-color-white)}.Button-module__button--secondary___iK3TS:hover:not(:disabled){background-color:var(--pure-color-secondary-hover)}.Button-module__button--success___1WVzM{background-color:var(--pure-color-success);color:var(--pure-color-white)}.Button-module__button--success___1WVzM:hover:not(:disabled){background-color:var(--pure-color-success-hover)}.Button-module__button--danger___y2uGS{background-color:var(--pure-color-danger);color:var(--pure-color-white)}.Button-module__button--danger___y2uGS:hover:not(:disabled){background-color:var(--pure-color-danger-hover)}.Button-module__button--warning___cp3iP{background-color:var(--pure-color-warning);color:var(--pure-color-white)}.Button-module__button--warning___cp3iP:hover:not(:disabled){background-color:var(--pure-color-warning-hover)}.Button-module__button--outline___eVhnr{background-color:transparent;border:1px solid var(--pure-color-primary);color:var(--pure-color-primary)}.Button-module__button--outline___eVhnr:hover:not(:disabled){background-color:var(--pure-color-primary-light)}.Button-module__button--ghost___nktSD{background-color:transparent;color:var(--pure-color-primary)}.Button-module__button--ghost___nktSD:hover:not(:disabled){background-color:var(--pure-color-primary-light)}.Button-module__button--sm___-XOLs{font-size:var(--pure-font-size-sm);padding:var(--pure-spacing-xs) var(--pure-spacing-sm)}.Button-module__button--md___-GRga{font-size:var(--pure-font-size-md);padding:var(--pure-spacing-sm) var(--pure-spacing-md)}.Button-module__button--lg___p-URz{font-size:var(--pure-font-size-lg);padding:var(--pure-spacing-md) var(--pure-spacing-lg)}.Button-module__button--full-width___XyuwA{width:100%}.Button-module__button--loading___lNyfH{opacity:.8;pointer-events:none}.Button-module__button___2ZuB7:disabled{cursor:not-allowed;opacity:.6}.Button-module__button__icon___e6c-f,.Button-module__button__text___JjFiL{align-items:center;display:flex;justify-content:center}.Button-module__button__spinner___1soI4{height:20px;position:absolute;width:20px}.Button-module__spinner___ZExvW{animation:Button-module__rotate___TQjyl 2s linear infinite;height:100%;width:100%}.Button-module__spinner-path___Zk3SN{stroke:currentColor;stroke-linecap:round;animation:Button-module__dash___NItHE 1.5s ease-in-out infinite}@keyframes Button-module__rotate___TQjyl{to{transform:rotate(1turn)}}@keyframes Button-module__dash___NItHE{0%{stroke-dasharray:1,150;stroke-dashoffset:0}50%{stroke-dasharray:90,150;stroke-dashoffset:-35}to{stroke-dasharray:90,150;stroke-dashoffset:-124}}:root{--pure-color-primary:#2563eb;--pure-color-primary-hover:#1d4ed8;--pure-color-primary-light:#dbeafe;--pure-color-secondary:#64748b;--pure-color-secondary-hover:#475569;--pure-color-secondary-light:#f1f5f9;--pure-color-success:#10b981;--pure-color-success-hover:#059669;--pure-color-success-light:#d1fae5;--pure-color-danger:#ef4444;--pure-color-danger-hover:#dc2626;--pure-color-danger-light:#fee2e2;--pure-color-warning:#f59e0b;--pure-color-warning-hover:#d97706;--pure-color-warning-light:#fef3c7;--pure-color-info:#3b82f6;--pure-color-info-hover:#2563eb;--pure-color-info-light:#dbeafe;--pure-color-white:#fff;--pure-color-black:#000;--pure-color-gray-50:#f9fafb;--pure-color-gray-100:#f3f4f6;--pure-color-gray-200:#e5e7eb;--pure-color-gray-300:#d1d5db;--pure-color-gray-400:#9ca3af;--pure-color-gray-500:#6b7280;--pure-color-gray-600:#4b5563;--pure-color-gray-700:#374151;--pure-color-gray-800:#1f2937;--pure-color-gray-900:#111827;--pure-spacing-xs:0.25rem;--pure-spacing-sm:0.5rem;--pure-spacing-md:1rem;--pure-spacing-lg:1.5rem;--pure-spacing-xl:2rem;--pure-spacing-2xl:3rem;--pure-radius-sm:0.25rem;--pure-radius-md:0.375rem;--pure-radius-lg:0.5rem;--pure-radius-xl:0.75rem;--pure-radius-full:9999px;--pure-shadow-sm:0 1px 2px 0 rgba(0,0,0,.05);--pure-shadow-md:0 4px 6px -1px rgba(0,0,0,.1),0 2px 4px -1px rgba(0,0,0,.06);--pure-shadow-lg:0 10px 15px -3px rgba(0,0,0,.1),0 4px 6px -2px rgba(0,0,0,.05);--pure-shadow-xl:0 20px 25px -5px rgba(0,0,0,.1),0 10px 10px -5px rgba(0,0,0,.04);--pure-font-family:-apple-system,BlinkMacSystemFont,"Segoe UI","Roboto","Oxygen","Ubuntu","Cantarell","Fira Sans","Droid Sans","Helvetica Neue",sans-serif;--pure-font-size-xs:0.75rem;--pure-font-size-sm:0.875rem;--pure-font-size-md:1rem;--pure-font-size-lg:1.125rem;--pure-font-size-xl:1.25rem;--pure-font-size-2xl:1.5rem;--pure-transition-fast:150ms ease-in-out;--pure-transition-base:200ms ease-in-out;--pure-transition-slow:300ms ease-in-out;--pure-z-dropdown:1000;--pure-z-modal:1050;--pure-z-tooltip:1100}
|
package/dist/index.esm.js
DELETED
|
@@ -1,25 +0,0 @@
|
|
|
1
|
-
import React from 'react';
|
|
2
|
-
|
|
3
|
-
var styles = {"button":"Button-module__button___2ZuB7","button--primary":"Button-module__button--primary___0eqDM","button--secondary":"Button-module__button--secondary___iK3TS","button--success":"Button-module__button--success___1WVzM","button--danger":"Button-module__button--danger___y2uGS","button--warning":"Button-module__button--warning___cp3iP","button--outline":"Button-module__button--outline___eVhnr","button--ghost":"Button-module__button--ghost___nktSD","button--sm":"Button-module__button--sm___-XOLs","button--md":"Button-module__button--md___-GRga","button--lg":"Button-module__button--lg___p-URz","button--full-width":"Button-module__button--full-width___XyuwA","button--loading":"Button-module__button--loading___lNyfH","button__icon":"Button-module__button__icon___e6c-f","button__text":"Button-module__button__text___JjFiL","button__spinner":"Button-module__button__spinner___1soI4","spinner":"Button-module__spinner___ZExvW","rotate":"Button-module__rotate___TQjyl","spinner-path":"Button-module__spinner-path___Zk3SN","dash":"Button-module__dash___NItHE"};
|
|
4
|
-
|
|
5
|
-
const PureButton = ({ variant = 'primary', size = 'md', fullWidth = false, loading = false, disabled = false, children, leftIcon, rightIcon, className = '', ...props }) => {
|
|
6
|
-
const classes = [
|
|
7
|
-
styles.button,
|
|
8
|
-
styles[`button--${variant}`],
|
|
9
|
-
styles[`button--${size}`],
|
|
10
|
-
fullWidth && styles['button--full-width'],
|
|
11
|
-
loading && styles['button--loading'],
|
|
12
|
-
className
|
|
13
|
-
].filter(Boolean).join(' ');
|
|
14
|
-
return (React.createElement("button", { className: classes, disabled: disabled || loading, ...props },
|
|
15
|
-
loading && (React.createElement("span", { className: styles['button__spinner'] },
|
|
16
|
-
React.createElement("svg", { className: styles['spinner'], viewBox: "0 0 50 50" },
|
|
17
|
-
React.createElement("circle", { className: styles['spinner-path'], cx: "25", cy: "25", r: "20", fill: "none", strokeWidth: "4" })))),
|
|
18
|
-
!loading && leftIcon && (React.createElement("span", { className: styles['button__icon'] }, leftIcon)),
|
|
19
|
-
React.createElement("span", { className: styles['button__text'] }, children),
|
|
20
|
-
!loading && rightIcon && (React.createElement("span", { className: styles['button__icon'] }, rightIcon))));
|
|
21
|
-
};
|
|
22
|
-
PureButton.displayName = 'PureButton';
|
|
23
|
-
|
|
24
|
-
export { PureButton };
|
|
25
|
-
//# sourceMappingURL=index.esm.js.map
|
package/dist/index.esm.js.map
DELETED
|
@@ -1 +0,0 @@
|
|
|
1
|
-
{"version":3,"file":"index.esm.js","sources":["../src/components/Button/Button.tsx"],"sourcesContent":["import React from 'react';\r\nimport { ButtonProps } from './Button.types';\r\nimport styles from \"./Button.module.css\";\r\nimport \"../../styles/variables.css\";\r\n\r\nexport const PureButton: React.FC<ButtonProps> = ({\r\n variant = 'primary',\r\n size = 'md',\r\n fullWidth = false,\r\n loading = false,\r\n disabled = false,\r\n children,\r\n leftIcon,\r\n rightIcon,\r\n className = '',\r\n ...props\r\n}) => {\r\n const classes = [\r\n styles.button,\r\n styles[`button--${variant}`],\r\n styles[`button--${size}`],\r\n fullWidth && styles['button--full-width'],\r\n loading && styles['button--loading'],\r\n className\r\n ].filter(Boolean).join(' ');\r\n\r\n return (\r\n <button\r\n className={classes}\r\n disabled={disabled || loading}\r\n {...props}\r\n >\r\n {loading && (\r\n <span className={styles['button__spinner']}>\r\n {/* Loading spinner */}\r\n <svg className={styles['spinner']} viewBox=\"0 0 50 50\">\r\n <circle\r\n className={styles['spinner-path']}\r\n cx=\"25\"\r\n cy=\"25\"\r\n r=\"20\"\r\n fill=\"none\"\r\n strokeWidth=\"4\"\r\n />\r\n </svg>\r\n </span>\r\n )}\r\n {!loading && leftIcon && (\r\n <span className={styles['button__icon']}>{leftIcon}</span>\r\n )}\r\n <span className={styles['button__text']}>{children}</span>\r\n {!loading && rightIcon && (\r\n <span className={styles['button__icon']}>{rightIcon}</span>\r\n )}\r\n </button>\r\n );\r\n};\r\n\r\nPureButton.displayName = 'PureButton';"],"names":[],"mappings":";;;;AAKO,MAAM,UAAU,GAA0B,CAAC,EAC9C,OAAO,GAAG,SAAS,EACnB,IAAI,GAAG,IAAI,EACX,SAAS,GAAG,KAAK,EACjB,OAAO,GAAG,KAAK,EACf,QAAQ,GAAG,KAAK,EAChB,QAAQ,EACR,QAAQ,EACR,SAAS,EACT,SAAS,GAAG,EAAE,EACd,GAAG,KAAK,EACX,KAAI;AACD,IAAA,MAAM,OAAO,GAAG;AACZ,QAAA,MAAM,CAAC,MAAM;AACb,QAAA,MAAM,CAAC,CAAA,QAAA,EAAW,OAAO,CAAA,CAAE,CAAC;AAC5B,QAAA,MAAM,CAAC,CAAA,QAAA,EAAW,IAAI,CAAA,CAAE,CAAC;AACzB,QAAA,SAAS,IAAI,MAAM,CAAC,oBAAoB,CAAC;AACzC,QAAA,OAAO,IAAI,MAAM,CAAC,iBAAiB,CAAC;QACpC;KACH,CAAC,MAAM,CAAC,OAAO,CAAC,CAAC,IAAI,CAAC,GAAG,CAAC;AAE3B,IAAA,QACI,KAAA,CAAA,aAAA,CAAA,QAAA,EAAA,EACI,SAAS,EAAE,OAAO,EAClB,QAAQ,EAAE,QAAQ,IAAI,OAAO,EAAA,GACzB,KAAK,EAAA;QAER,OAAO,KACJ,KAAA,CAAA,aAAA,CAAA,MAAA,EAAA,EAAM,SAAS,EAAE,MAAM,CAAC,iBAAiB,CAAC,EAAA;YAEtC,KAAA,CAAA,aAAA,CAAA,KAAA,EAAA,EAAK,SAAS,EAAE,MAAM,CAAC,SAAS,CAAC,EAAE,OAAO,EAAC,WAAW,EAAA;AAClD,gBAAA,KAAA,CAAA,aAAA,CAAA,QAAA,EAAA,EACI,SAAS,EAAE,MAAM,CAAC,cAAc,CAAC,EACjC,EAAE,EAAC,IAAI,EACP,EAAE,EAAC,IAAI,EACP,CAAC,EAAC,IAAI,EACN,IAAI,EAAC,MAAM,EACX,WAAW,EAAC,GAAG,EAAA,CACjB,CACA,CACH,CACV;AACA,QAAA,CAAC,OAAO,IAAI,QAAQ,KACjB,KAAA,CAAA,aAAA,CAAA,MAAA,EAAA,EAAM,SAAS,EAAE,MAAM,CAAC,cAAc,CAAC,EAAA,EAAG,QAAQ,CAAQ,CAC7D;QACD,KAAA,CAAA,aAAA,CAAA,MAAA,EAAA,EAAM,SAAS,EAAE,MAAM,CAAC,cAAc,CAAC,EAAA,EAAG,QAAQ,CAAQ;AACzD,QAAA,CAAC,OAAO,IAAI,SAAS,KAClB,KAAA,CAAA,aAAA,CAAA,MAAA,EAAA,EAAM,SAAS,EAAE,MAAM,CAAC,cAAc,CAAC,EAAA,EAAG,SAAS,CAAQ,CAC9D,CACI;AAEjB;AAEA,UAAU,CAAC,WAAW,GAAG,YAAY;;;;"}
|
package/dist/index.js
DELETED
|
@@ -1,27 +0,0 @@
|
|
|
1
|
-
'use strict';
|
|
2
|
-
|
|
3
|
-
var React = require('react');
|
|
4
|
-
|
|
5
|
-
var styles = {"button":"Button-module__button___2ZuB7","button--primary":"Button-module__button--primary___0eqDM","button--secondary":"Button-module__button--secondary___iK3TS","button--success":"Button-module__button--success___1WVzM","button--danger":"Button-module__button--danger___y2uGS","button--warning":"Button-module__button--warning___cp3iP","button--outline":"Button-module__button--outline___eVhnr","button--ghost":"Button-module__button--ghost___nktSD","button--sm":"Button-module__button--sm___-XOLs","button--md":"Button-module__button--md___-GRga","button--lg":"Button-module__button--lg___p-URz","button--full-width":"Button-module__button--full-width___XyuwA","button--loading":"Button-module__button--loading___lNyfH","button__icon":"Button-module__button__icon___e6c-f","button__text":"Button-module__button__text___JjFiL","button__spinner":"Button-module__button__spinner___1soI4","spinner":"Button-module__spinner___ZExvW","rotate":"Button-module__rotate___TQjyl","spinner-path":"Button-module__spinner-path___Zk3SN","dash":"Button-module__dash___NItHE"};
|
|
6
|
-
|
|
7
|
-
const PureButton = ({ variant = 'primary', size = 'md', fullWidth = false, loading = false, disabled = false, children, leftIcon, rightIcon, className = '', ...props }) => {
|
|
8
|
-
const classes = [
|
|
9
|
-
styles.button,
|
|
10
|
-
styles[`button--${variant}`],
|
|
11
|
-
styles[`button--${size}`],
|
|
12
|
-
fullWidth && styles['button--full-width'],
|
|
13
|
-
loading && styles['button--loading'],
|
|
14
|
-
className
|
|
15
|
-
].filter(Boolean).join(' ');
|
|
16
|
-
return (React.createElement("button", { className: classes, disabled: disabled || loading, ...props },
|
|
17
|
-
loading && (React.createElement("span", { className: styles['button__spinner'] },
|
|
18
|
-
React.createElement("svg", { className: styles['spinner'], viewBox: "0 0 50 50" },
|
|
19
|
-
React.createElement("circle", { className: styles['spinner-path'], cx: "25", cy: "25", r: "20", fill: "none", strokeWidth: "4" })))),
|
|
20
|
-
!loading && leftIcon && (React.createElement("span", { className: styles['button__icon'] }, leftIcon)),
|
|
21
|
-
React.createElement("span", { className: styles['button__text'] }, children),
|
|
22
|
-
!loading && rightIcon && (React.createElement("span", { className: styles['button__icon'] }, rightIcon))));
|
|
23
|
-
};
|
|
24
|
-
PureButton.displayName = 'PureButton';
|
|
25
|
-
|
|
26
|
-
exports.PureButton = PureButton;
|
|
27
|
-
//# sourceMappingURL=index.js.map
|
package/dist/index.js.map
DELETED
|
@@ -1 +0,0 @@
|
|
|
1
|
-
{"version":3,"file":"index.js","sources":["../src/components/Button/Button.tsx"],"sourcesContent":["import React from 'react';\r\nimport { ButtonProps } from './Button.types';\r\nimport styles from \"./Button.module.css\";\r\nimport \"../../styles/variables.css\";\r\n\r\nexport const PureButton: React.FC<ButtonProps> = ({\r\n variant = 'primary',\r\n size = 'md',\r\n fullWidth = false,\r\n loading = false,\r\n disabled = false,\r\n children,\r\n leftIcon,\r\n rightIcon,\r\n className = '',\r\n ...props\r\n}) => {\r\n const classes = [\r\n styles.button,\r\n styles[`button--${variant}`],\r\n styles[`button--${size}`],\r\n fullWidth && styles['button--full-width'],\r\n loading && styles['button--loading'],\r\n className\r\n ].filter(Boolean).join(' ');\r\n\r\n return (\r\n <button\r\n className={classes}\r\n disabled={disabled || loading}\r\n {...props}\r\n >\r\n {loading && (\r\n <span className={styles['button__spinner']}>\r\n {/* Loading spinner */}\r\n <svg className={styles['spinner']} viewBox=\"0 0 50 50\">\r\n <circle\r\n className={styles['spinner-path']}\r\n cx=\"25\"\r\n cy=\"25\"\r\n r=\"20\"\r\n fill=\"none\"\r\n strokeWidth=\"4\"\r\n />\r\n </svg>\r\n </span>\r\n )}\r\n {!loading && leftIcon && (\r\n <span className={styles['button__icon']}>{leftIcon}</span>\r\n )}\r\n <span className={styles['button__text']}>{children}</span>\r\n {!loading && rightIcon && (\r\n <span className={styles['button__icon']}>{rightIcon}</span>\r\n )}\r\n </button>\r\n );\r\n};\r\n\r\nPureButton.displayName = 'PureButton';"],"names":[],"mappings":";;;;;;AAKO,MAAM,UAAU,GAA0B,CAAC,EAC9C,OAAO,GAAG,SAAS,EACnB,IAAI,GAAG,IAAI,EACX,SAAS,GAAG,KAAK,EACjB,OAAO,GAAG,KAAK,EACf,QAAQ,GAAG,KAAK,EAChB,QAAQ,EACR,QAAQ,EACR,SAAS,EACT,SAAS,GAAG,EAAE,EACd,GAAG,KAAK,EACX,KAAI;AACD,IAAA,MAAM,OAAO,GAAG;AACZ,QAAA,MAAM,CAAC,MAAM;AACb,QAAA,MAAM,CAAC,CAAA,QAAA,EAAW,OAAO,CAAA,CAAE,CAAC;AAC5B,QAAA,MAAM,CAAC,CAAA,QAAA,EAAW,IAAI,CAAA,CAAE,CAAC;AACzB,QAAA,SAAS,IAAI,MAAM,CAAC,oBAAoB,CAAC;AACzC,QAAA,OAAO,IAAI,MAAM,CAAC,iBAAiB,CAAC;QACpC;KACH,CAAC,MAAM,CAAC,OAAO,CAAC,CAAC,IAAI,CAAC,GAAG,CAAC;AAE3B,IAAA,QACI,KAAA,CAAA,aAAA,CAAA,QAAA,EAAA,EACI,SAAS,EAAE,OAAO,EAClB,QAAQ,EAAE,QAAQ,IAAI,OAAO,EAAA,GACzB,KAAK,EAAA;QAER,OAAO,KACJ,KAAA,CAAA,aAAA,CAAA,MAAA,EAAA,EAAM,SAAS,EAAE,MAAM,CAAC,iBAAiB,CAAC,EAAA;YAEtC,KAAA,CAAA,aAAA,CAAA,KAAA,EAAA,EAAK,SAAS,EAAE,MAAM,CAAC,SAAS,CAAC,EAAE,OAAO,EAAC,WAAW,EAAA;AAClD,gBAAA,KAAA,CAAA,aAAA,CAAA,QAAA,EAAA,EACI,SAAS,EAAE,MAAM,CAAC,cAAc,CAAC,EACjC,EAAE,EAAC,IAAI,EACP,EAAE,EAAC,IAAI,EACP,CAAC,EAAC,IAAI,EACN,IAAI,EAAC,MAAM,EACX,WAAW,EAAC,GAAG,EAAA,CACjB,CACA,CACH,CACV;AACA,QAAA,CAAC,OAAO,IAAI,QAAQ,KACjB,KAAA,CAAA,aAAA,CAAA,MAAA,EAAA,EAAM,SAAS,EAAE,MAAM,CAAC,cAAc,CAAC,EAAA,EAAG,QAAQ,CAAQ,CAC7D;QACD,KAAA,CAAA,aAAA,CAAA,MAAA,EAAA,EAAM,SAAS,EAAE,MAAM,CAAC,cAAc,CAAC,EAAA,EAAG,QAAQ,CAAQ;AACzD,QAAA,CAAC,OAAO,IAAI,SAAS,KAClB,KAAA,CAAA,aAAA,CAAA,MAAA,EAAA,EAAM,SAAS,EAAE,MAAM,CAAC,cAAc,CAAC,EAAA,EAAG,SAAS,CAAQ,CAC9D,CACI;AAEjB;AAEA,UAAU,CAAC,WAAW,GAAG,YAAY;;;;"}
|
package/dist/setupTests.d.ts
DELETED
package/dist/setupTests.d.ts.map
DELETED
|
@@ -1 +0,0 @@
|
|
|
1
|
-
{"version":3,"file":"setupTests.d.ts","sourceRoot":"","sources":["../src/setupTests.ts"],"names":[],"mappings":"AAAA,OAAO,2BAA2B,CAAC"}
|