pure-react-ui 1.4.7 → 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.
@@ -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 CHANGED
@@ -4,4 +4,13 @@ export { Card } from './components/Card/Card';
4
4
  export type { CardProps } from './components/Card/Card';
5
5
  export { Modal } from './components/Modal/Modal';
6
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';
7
16
  //# sourceMappingURL=index.d.ts.map
@@ -1 +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"}
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 CHANGED
@@ -1,4 +1,9 @@
1
1
  export { Button } from './components/Button/Button';
2
2
  export { Card } from './components/Card/Card';
3
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';
4
9
  //# sourceMappingURL=index.js.map
package/lib/index.js.map CHANGED
@@ -1 +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"}
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,7 +1,7 @@
1
1
  {
2
2
  "name": "pure-react-ui",
3
- "version": "1.4.7",
4
- "description": "A pure React UI component library with Button, Card, and Modal components",
3
+ "version": "1.5.0",
4
+ "description": "A pure React UI component library with Button, Card, Modal, Icon, Space, Flex, and Text components",
5
5
  "main": "lib/index.js",
6
6
  "types": "lib/index.d.ts",
7
7
  "files": [
@@ -21,6 +21,9 @@
21
21
  "button",
22
22
  "card",
23
23
  "modal",
24
+ "icon",
25
+ "icons",
26
+ "svg",
24
27
  "pure"
25
28
  ],
26
29
  "author": "",