huspy-icons 0.1.7 → 0.1.8
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 +62 -6
- package/dist/fonts/HuspyIcons.css +10 -7
- package/dist/fonts/HuspyIcons.eot +0 -0
- package/dist/fonts/HuspyIcons.json +4 -3
- package/dist/fonts/HuspyIcons.ts +6 -3
- package/dist/fonts/HuspyIcons.ttf +0 -0
- package/dist/fonts/HuspyIcons.woff +0 -0
- package/dist/fonts/HuspyIcons.woff2 +0 -0
- package/dist/native/index.d.ts +1 -1
- package/dist/native/index.js +4 -3
- package/dist/native/index.js.map +1 -1
- package/dist/react/index.d.mts +4 -2
- package/dist/react/index.d.ts +4 -2
- package/dist/react/index.js +82 -31
- package/dist/react/index.js.map +1 -1
- package/dist/react/index.mjs +77 -26
- package/dist/react/index.mjs.map +1 -1
- package/package.json +6 -2
- package/src/native/glyphMap.ts +5 -4
- package/src/react/Edit.tsx +32 -0
- package/src/react/Icon.tsx +4 -1
- package/src/react/index.ts +1 -0
- package/src/react/index.tsx +1 -0
package/README.md
CHANGED
|
@@ -139,10 +139,31 @@ This will:
|
|
|
139
139
|
npm run build
|
|
140
140
|
```
|
|
141
141
|
|
|
142
|
-
4.
|
|
142
|
+
4. Version bump and publish:
|
|
143
143
|
|
|
144
144
|
```bash
|
|
145
|
-
|
|
145
|
+
# Patch version (0.1.9 → 0.1.10)
|
|
146
|
+
npm run version:patch
|
|
147
|
+
|
|
148
|
+
# Minor version (0.1.9 → 0.2.0)
|
|
149
|
+
npm run version:minor
|
|
150
|
+
|
|
151
|
+
# Major version (0.1.9 → 1.0.0)
|
|
152
|
+
npm run version:major
|
|
153
|
+
```
|
|
154
|
+
|
|
155
|
+
This will:
|
|
156
|
+
- Update `package.json` version
|
|
157
|
+
- Update `package-lock.json` version
|
|
158
|
+
- Update `CHANGELOG.md` with a new version entry
|
|
159
|
+
- Print next steps for committing and tagging
|
|
160
|
+
|
|
161
|
+
Then commit, tag, and publish:
|
|
162
|
+
```bash
|
|
163
|
+
git add package.json package-lock.json CHANGELOG.md
|
|
164
|
+
git commit -m "chore: bump version to X.X.X"
|
|
165
|
+
git tag vX.X.X
|
|
166
|
+
git push && git push --tags
|
|
146
167
|
npm publish
|
|
147
168
|
```
|
|
148
169
|
|
|
@@ -176,7 +197,11 @@ huspy-icons/
|
|
|
176
197
|
"gen:types": "Generate TypeScript types",
|
|
177
198
|
"gen": "Run all generation scripts",
|
|
178
199
|
"build": "Build TypeScript to JavaScript",
|
|
179
|
-
"prepare": "Full build (runs on npm install)"
|
|
200
|
+
"prepare": "Full build (runs on npm install)",
|
|
201
|
+
"typecheck": "Run TypeScript type checking",
|
|
202
|
+
"version:patch": "Bump patch version and update changelog",
|
|
203
|
+
"version:minor": "Bump minor version and update changelog",
|
|
204
|
+
"version:major": "Bump major version and update changelog"
|
|
180
205
|
}
|
|
181
206
|
```
|
|
182
207
|
|
|
@@ -213,9 +238,40 @@ import { Icon } from 'huspy-icons/native';
|
|
|
213
238
|
|
|
214
239
|
## 🔒 Versioning
|
|
215
240
|
|
|
216
|
-
|
|
217
|
-
|
|
218
|
-
* **
|
|
241
|
+
This project follows [Semantic Versioning](https://semver.org/):
|
|
242
|
+
|
|
243
|
+
* **Patch** (0.1.9 → 0.1.10): Bug fixes, path tweaks, metadata changes
|
|
244
|
+
* **Minor** (0.1.9 → 0.2.0): New icons, non-breaking API additions
|
|
245
|
+
* **Major** (0.1.9 → 1.0.0): Icon removals/renames, breaking API changes
|
|
246
|
+
|
|
247
|
+
### Releasing a New Version
|
|
248
|
+
|
|
249
|
+
Use the version bump scripts to update version and changelog:
|
|
250
|
+
|
|
251
|
+
```bash
|
|
252
|
+
# For patch releases (bug fixes)
|
|
253
|
+
npm run version:patch
|
|
254
|
+
|
|
255
|
+
# For minor releases (new icons)
|
|
256
|
+
npm run version:minor
|
|
257
|
+
|
|
258
|
+
# For major releases (breaking changes)
|
|
259
|
+
npm run version:major
|
|
260
|
+
```
|
|
261
|
+
|
|
262
|
+
The script will:
|
|
263
|
+
- ✅ Bump version in `package.json`
|
|
264
|
+
- ✅ Bump version in `package-lock.json`
|
|
265
|
+
- ✅ Update `CHANGELOG.md` with a new version entry
|
|
266
|
+
|
|
267
|
+
After running, commit, tag, and publish:
|
|
268
|
+
```bash
|
|
269
|
+
git add package.json package-lock.json CHANGELOG.md
|
|
270
|
+
git commit -m "chore: bump version to X.X.X"
|
|
271
|
+
git tag vX.X.X
|
|
272
|
+
git push && git push --tags
|
|
273
|
+
npm publish
|
|
274
|
+
```
|
|
219
275
|
|
|
220
276
|
---
|
|
221
277
|
|
|
@@ -1,9 +1,9 @@
|
|
|
1
1
|
@font-face {
|
|
2
2
|
font-family: "HuspyIcons";
|
|
3
|
-
src: url(".//HuspyIcons.ttf?
|
|
4
|
-
url(".//HuspyIcons.woff?
|
|
5
|
-
url(".//HuspyIcons.woff2?
|
|
6
|
-
url(".//HuspyIcons.eot?
|
|
3
|
+
src: url(".//HuspyIcons.ttf?205afe71b5266cc3b69b2d08638c65ec") format("truetype"),
|
|
4
|
+
url(".//HuspyIcons.woff?205afe71b5266cc3b69b2d08638c65ec") format("woff"),
|
|
5
|
+
url(".//HuspyIcons.woff2?205afe71b5266cc3b69b2d08638c65ec") format("woff2"),
|
|
6
|
+
url(".//HuspyIcons.eot?205afe71b5266cc3b69b2d08638c65ec#iefix") format("embedded-opentype");
|
|
7
7
|
}
|
|
8
8
|
|
|
9
9
|
.icon:before {
|
|
@@ -32,12 +32,15 @@ url(".//HuspyIcons.eot?d1b413dd5ca9bd51e6ff81a64788c5c7#iefix") format("embedded
|
|
|
32
32
|
.icon.huspy-icon-eye-hidden:before {
|
|
33
33
|
content: "\f105";
|
|
34
34
|
}
|
|
35
|
-
.icon.huspy-icon-
|
|
35
|
+
.icon.huspy-icon-edit:before {
|
|
36
36
|
content: "\f106";
|
|
37
37
|
}
|
|
38
|
-
.icon.huspy-icon-
|
|
38
|
+
.icon.huspy-icon-check:before {
|
|
39
39
|
content: "\f107";
|
|
40
40
|
}
|
|
41
|
-
.icon.huspy-icon-
|
|
41
|
+
.icon.huspy-icon-cancel:before {
|
|
42
42
|
content: "\f108";
|
|
43
43
|
}
|
|
44
|
+
.icon.huspy-icon-arrow-left:before {
|
|
45
|
+
content: "\f109";
|
|
46
|
+
}
|
|
Binary file
|
package/dist/fonts/HuspyIcons.ts
CHANGED
|
@@ -4,6 +4,7 @@ export type HuspyIconsId =
|
|
|
4
4
|
| "icon-slot"
|
|
5
5
|
| "eye-visible"
|
|
6
6
|
| "eye-hidden"
|
|
7
|
+
| "edit"
|
|
7
8
|
| "check"
|
|
8
9
|
| "cancel"
|
|
9
10
|
| "arrow-left";
|
|
@@ -14,6 +15,7 @@ export enum HuspyIcons {
|
|
|
14
15
|
IconSlot = "icon-slot",
|
|
15
16
|
EyeVisible = "eye-visible",
|
|
16
17
|
EyeHidden = "eye-hidden",
|
|
18
|
+
Edit = "edit",
|
|
17
19
|
Check = "check",
|
|
18
20
|
Cancel = "cancel",
|
|
19
21
|
ArrowLeft = "arrow-left",
|
|
@@ -25,7 +27,8 @@ export const HUSPY_ICONS_CODEPOINTS: { [key in HuspyIcons]: string } = {
|
|
|
25
27
|
[HuspyIcons.IconSlot]: "61699",
|
|
26
28
|
[HuspyIcons.EyeVisible]: "61700",
|
|
27
29
|
[HuspyIcons.EyeHidden]: "61701",
|
|
28
|
-
[HuspyIcons.
|
|
29
|
-
[HuspyIcons.
|
|
30
|
-
[HuspyIcons.
|
|
30
|
+
[HuspyIcons.Edit]: "61702",
|
|
31
|
+
[HuspyIcons.Check]: "61703",
|
|
32
|
+
[HuspyIcons.Cancel]: "61704",
|
|
33
|
+
[HuspyIcons.ArrowLeft]: "61705",
|
|
31
34
|
};
|
|
Binary file
|
|
Binary file
|
|
Binary file
|
package/dist/native/index.d.ts
CHANGED
|
@@ -4,7 +4,7 @@ import { TextProps } from 'react-native';
|
|
|
4
4
|
/**
|
|
5
5
|
* Available icon names in the HuspyIcons font
|
|
6
6
|
*/
|
|
7
|
-
type IconName = 'user' | 'search' | 'icon-slot' | 'eye-visible' | 'eye-hidden' | 'check' | 'cancel' | 'arrow-left';
|
|
7
|
+
type IconName = 'user' | 'search' | 'icon-slot' | 'eye-visible' | 'eye-hidden' | 'edit' | 'check' | 'cancel' | 'arrow-left';
|
|
8
8
|
/**
|
|
9
9
|
* Mapping of icon names to unicode codepoints
|
|
10
10
|
* Used by the Icon component to render the correct glyph
|
package/dist/native/index.js
CHANGED
|
@@ -47,9 +47,10 @@ var glyphMap = {
|
|
|
47
47
|
"icon-slot": 61699,
|
|
48
48
|
"eye-visible": 61700,
|
|
49
49
|
"eye-hidden": 61701,
|
|
50
|
-
"
|
|
51
|
-
"
|
|
52
|
-
"
|
|
50
|
+
"edit": 61702,
|
|
51
|
+
"check": 61703,
|
|
52
|
+
"cancel": 61704,
|
|
53
|
+
"arrow-left": 61705
|
|
53
54
|
};
|
|
54
55
|
var fontFamily = "HuspyIcons";
|
|
55
56
|
|
package/dist/native/index.js.map
CHANGED
|
@@ -1 +1 @@
|
|
|
1
|
-
{"version":3,"sources":["../../src/native/index.ts","../../src/native/Icon.tsx","../../src/native/glyphMap.ts"],"sourcesContent":["/**\n * Huspy Icons - React Native (Font-based)\n * \n * This package provides icon components for React Native using a custom font.\n * \n * @example\n * ```tsx\n * import { Icon } from 'huspy-icons/native';\n * \n * function MyComponent() {\n * return <Icon name=\"arrow-left\" size={24} color=\"#000\" />;\n * }\n * ```\n */\n\nexport { default as Icon } from './Icon';\nexport type { IconProps, IconName } from './Icon';\nexport { glyphMap, fontFamily } from './glyphMap';\n\n","import * as React from 'react';\nimport { Text, TextProps } from 'react-native';\nimport { glyphMap, fontFamily, IconName } from './glyphMap';\n\n/**\n * Props for the Icon component (React Native)\n */\nexport interface IconProps extends Omit<TextProps, 'children'> {\n /**\n * Name of the icon to display\n */\n name: IconName;\n\n /**\n * Size of the icon (default: 16)\n */\n size?: number;\n\n /**\n * Color of the icon (default: inherits from parent or 'black')\n */\n color?: string;\n}\n\n/**\n * Icon component for React Native\n *\n * Renders icons using a custom font (HuspyIcons)\n *\n * @example\n * ```tsx\n * <Icon name=\"arrow-left\" size={24} color=\"#000\" />\n * ```\n */\nconst Icon = ({ name, size = 16, color = '#000', style, ...props }: IconProps) => {\n const codepoint = glyphMap[name];\n\n if (!codepoint) {\n if (__DEV__) {\n console.warn(`Icon \"${name}\" not found in HuspyIcons font`);\n }\n return null;\n }\n\n // Convert codepoint to character\n const glyph = String.fromCharCode(codepoint);\n\n return (\n <Text\n {...props}\n style={[\n {\n fontFamily: fontFamily,\n fontSize: size,\n color: color,\n // Ensure icon doesn't inherit text styles\n fontWeight: 'normal',\n fontStyle: 'normal',\n // Prevent text selection and ensure proper rendering\n includeFontPadding: false, // Android: removes extra padding\n textAlignVertical: 'center', // Android: centers the glyph vertically\n },\n style,\n ]}\n // Accessibility\n accessible\n accessibilityLabel={props.accessibilityLabel || name}\n accessibilityRole=\"image\"\n >\n {glyph}\n </Text>\n );\n};\n\nexport default Icon;\nexport type { IconName };\n","// Auto-generated by generate-font.js - do not edit manually\n// Source: icons-src/*.svg → dist/fonts/HuspyIcons.*\n\n/**\n * Available icon names in the HuspyIcons font\n */\nexport type IconName = 'user' | 'search' | 'icon-slot' | 'eye-visible' | 'eye-hidden' | 'check' | 'cancel' | 'arrow-left';\n\n/**\n * Mapping of icon names to unicode codepoints\n * Used by the Icon component to render the correct glyph\n */\nexport const glyphMap: Record<IconName, number> = {\n \"user\": 61697,\n \"search\": 61698,\n \"icon-slot\": 61699,\n \"eye-visible\": 61700,\n \"eye-hidden\": 61701,\n \"
|
|
1
|
+
{"version":3,"sources":["../../src/native/index.ts","../../src/native/Icon.tsx","../../src/native/glyphMap.ts"],"sourcesContent":["/**\n * Huspy Icons - React Native (Font-based)\n * \n * This package provides icon components for React Native using a custom font.\n * \n * @example\n * ```tsx\n * import { Icon } from 'huspy-icons/native';\n * \n * function MyComponent() {\n * return <Icon name=\"arrow-left\" size={24} color=\"#000\" />;\n * }\n * ```\n */\n\nexport { default as Icon } from './Icon';\nexport type { IconProps, IconName } from './Icon';\nexport { glyphMap, fontFamily } from './glyphMap';\n\n","import * as React from 'react';\nimport { Text, TextProps } from 'react-native';\nimport { glyphMap, fontFamily, IconName } from './glyphMap';\n\n/**\n * Props for the Icon component (React Native)\n */\nexport interface IconProps extends Omit<TextProps, 'children'> {\n /**\n * Name of the icon to display\n */\n name: IconName;\n\n /**\n * Size of the icon (default: 16)\n */\n size?: number;\n\n /**\n * Color of the icon (default: inherits from parent or 'black')\n */\n color?: string;\n}\n\n/**\n * Icon component for React Native\n *\n * Renders icons using a custom font (HuspyIcons)\n *\n * @example\n * ```tsx\n * <Icon name=\"arrow-left\" size={24} color=\"#000\" />\n * ```\n */\nconst Icon = ({ name, size = 16, color = '#000', style, ...props }: IconProps) => {\n const codepoint = glyphMap[name];\n\n if (!codepoint) {\n if (__DEV__) {\n console.warn(`Icon \"${name}\" not found in HuspyIcons font`);\n }\n return null;\n }\n\n // Convert codepoint to character\n const glyph = String.fromCharCode(codepoint);\n\n return (\n <Text\n {...props}\n style={[\n {\n fontFamily: fontFamily,\n fontSize: size,\n color: color,\n // Ensure icon doesn't inherit text styles\n fontWeight: 'normal',\n fontStyle: 'normal',\n // Prevent text selection and ensure proper rendering\n includeFontPadding: false, // Android: removes extra padding\n textAlignVertical: 'center', // Android: centers the glyph vertically\n },\n style,\n ]}\n // Accessibility\n accessible\n accessibilityLabel={props.accessibilityLabel || name}\n accessibilityRole=\"image\"\n >\n {glyph}\n </Text>\n );\n};\n\nexport default Icon;\nexport type { IconName };\n","// Auto-generated by generate-font.js - do not edit manually\n// Source: icons-src/*.svg → dist/fonts/HuspyIcons.*\n\n/**\n * Available icon names in the HuspyIcons font\n */\nexport type IconName = 'user' | 'search' | 'icon-slot' | 'eye-visible' | 'eye-hidden' | 'edit' | 'check' | 'cancel' | 'arrow-left';\n\n/**\n * Mapping of icon names to unicode codepoints\n * Used by the Icon component to render the correct glyph\n */\nexport const glyphMap: Record<IconName, number> = {\n \"user\": 61697,\n \"search\": 61698,\n \"icon-slot\": 61699,\n \"eye-visible\": 61700,\n \"eye-hidden\": 61701,\n \"edit\": 61702,\n \"check\": 61703,\n \"cancel\": 61704,\n \"arrow-left\": 61705\n};\n\n/**\n * Font family name for React Native\n */\nexport const fontFamily = 'HuspyIcons';\n"],"mappings":";;;;;;;;;;;;;;;;;;;;;;;;;;;;;;AAAA;AAAA;AAAA;AAAA;AAAA;AAAA;AAAA;;;ACAA,YAAuB;AACvB,0BAAgC;;;ACWzB,IAAM,WAAqC;AAAA,EAChD,QAAQ;AAAA,EACR,UAAU;AAAA,EACV,aAAa;AAAA,EACb,eAAe;AAAA,EACf,cAAc;AAAA,EACd,QAAQ;AAAA,EACR,SAAS;AAAA,EACT,UAAU;AAAA,EACV,cAAc;AAChB;AAKO,IAAM,aAAa;;;ADO1B,IAAM,OAAO,CAAC,EAAE,MAAM,OAAO,IAAI,QAAQ,QAAQ,OAAO,GAAG,MAAM,MAAiB;AAChF,QAAM,YAAY,SAAS,IAAI;AAE/B,MAAI,CAAC,WAAW;AACd,QAAI,SAAS;AACX,cAAQ,KAAK,SAAS,IAAI,gCAAgC;AAAA,IAC5D;AACA,WAAO;AAAA,EACT;AAGA,QAAM,QAAQ,OAAO,aAAa,SAAS;AAE3C,SACE;AAAA,IAAC;AAAA;AAAA,MACE,GAAG;AAAA,MACJ,OAAO;AAAA,QACL;AAAA,UACE;AAAA,UACA,UAAU;AAAA,UACV;AAAA;AAAA,UAEA,YAAY;AAAA,UACZ,WAAW;AAAA;AAAA,UAEX,oBAAoB;AAAA;AAAA,UACpB,mBAAmB;AAAA;AAAA,QACrB;AAAA,QACA;AAAA,MACF;AAAA,MAEA,YAAU;AAAA,MACV,oBAAoB,MAAM,sBAAsB;AAAA,MAChD,mBAAkB;AAAA;AAAA,IAEjB;AAAA,EACH;AAEJ;AAEA,IAAO,eAAQ;","names":[]}
|
package/dist/react/index.d.mts
CHANGED
|
@@ -34,6 +34,8 @@ declare const SvgCancel: ({ size, ...props }: ReactIconProps) => React$1.JSX.Ele
|
|
|
34
34
|
|
|
35
35
|
declare const SvgCheck: ({ size, ...props }: ReactIconProps) => React$1.JSX.Element;
|
|
36
36
|
|
|
37
|
+
declare const SvgEdit: ({ size, ...props }: ReactIconProps) => React$1.JSX.Element;
|
|
38
|
+
|
|
37
39
|
declare const SvgEyeHidden: ({ size, ...props }: ReactIconProps) => React$1.JSX.Element;
|
|
38
40
|
|
|
39
41
|
declare const SvgEyeVisible: ({ size, ...props }: ReactIconProps) => React$1.JSX.Element;
|
|
@@ -51,7 +53,7 @@ declare const SvgUser: ({ size, ...props }: ReactIconProps) => React$1.JSX.Eleme
|
|
|
51
53
|
/**
|
|
52
54
|
* Available icon names
|
|
53
55
|
*/
|
|
54
|
-
type IconName = 'arrow-left' | 'cancel' | 'check' | 'eye-hidden' | 'eye-visible' | 'icon-slot' | 'search' | 'user';
|
|
56
|
+
type IconName = 'arrow-left' | 'cancel' | 'check' | 'edit' | 'eye-hidden' | 'eye-visible' | 'icon-slot' | 'search' | 'user';
|
|
55
57
|
/**
|
|
56
58
|
* Props for the unified Icon component
|
|
57
59
|
*/
|
|
@@ -66,4 +68,4 @@ interface IconProps extends Omit<ReactIconProps, 'size'> {
|
|
|
66
68
|
*/
|
|
67
69
|
declare const Icon: ({ name, size, color, ...props }: IconProps) => React$1.JSX.Element | null;
|
|
68
70
|
|
|
69
|
-
export { SvgArrowLeft as ArrowLeft, SvgCancel as Cancel, SvgCheck as Check, SvgEyeHidden as EyeHidden, SvgEyeVisible as EyeVisible, ICON_SIZES, Icon, type IconName, type IconProps, type IconSize, type IconSizeToken, SvgIconSlot as IconSlot, type ReactIconProps, SvgSearch as Search, SvgUser as User, resolveSize };
|
|
71
|
+
export { SvgArrowLeft as ArrowLeft, SvgCancel as Cancel, SvgCheck as Check, SvgEdit as Edit, SvgEyeHidden as EyeHidden, SvgEyeVisible as EyeVisible, ICON_SIZES, Icon, type IconName, type IconProps, type IconSize, type IconSizeToken, SvgIconSlot as IconSlot, type ReactIconProps, SvgSearch as Search, SvgUser as User, resolveSize };
|
package/dist/react/index.d.ts
CHANGED
|
@@ -34,6 +34,8 @@ declare const SvgCancel: ({ size, ...props }: ReactIconProps) => React$1.JSX.Ele
|
|
|
34
34
|
|
|
35
35
|
declare const SvgCheck: ({ size, ...props }: ReactIconProps) => React$1.JSX.Element;
|
|
36
36
|
|
|
37
|
+
declare const SvgEdit: ({ size, ...props }: ReactIconProps) => React$1.JSX.Element;
|
|
38
|
+
|
|
37
39
|
declare const SvgEyeHidden: ({ size, ...props }: ReactIconProps) => React$1.JSX.Element;
|
|
38
40
|
|
|
39
41
|
declare const SvgEyeVisible: ({ size, ...props }: ReactIconProps) => React$1.JSX.Element;
|
|
@@ -51,7 +53,7 @@ declare const SvgUser: ({ size, ...props }: ReactIconProps) => React$1.JSX.Eleme
|
|
|
51
53
|
/**
|
|
52
54
|
* Available icon names
|
|
53
55
|
*/
|
|
54
|
-
type IconName = 'arrow-left' | 'cancel' | 'check' | 'eye-hidden' | 'eye-visible' | 'icon-slot' | 'search' | 'user';
|
|
56
|
+
type IconName = 'arrow-left' | 'cancel' | 'check' | 'edit' | 'eye-hidden' | 'eye-visible' | 'icon-slot' | 'search' | 'user';
|
|
55
57
|
/**
|
|
56
58
|
* Props for the unified Icon component
|
|
57
59
|
*/
|
|
@@ -66,4 +68,4 @@ interface IconProps extends Omit<ReactIconProps, 'size'> {
|
|
|
66
68
|
*/
|
|
67
69
|
declare const Icon: ({ name, size, color, ...props }: IconProps) => React$1.JSX.Element | null;
|
|
68
70
|
|
|
69
|
-
export { SvgArrowLeft as ArrowLeft, SvgCancel as Cancel, SvgCheck as Check, SvgEyeHidden as EyeHidden, SvgEyeVisible as EyeVisible, ICON_SIZES, Icon, type IconName, type IconProps, type IconSize, type IconSizeToken, SvgIconSlot as IconSlot, type ReactIconProps, SvgSearch as Search, SvgUser as User, resolveSize };
|
|
71
|
+
export { SvgArrowLeft as ArrowLeft, SvgCancel as Cancel, SvgCheck as Check, SvgEdit as Edit, SvgEyeHidden as EyeHidden, SvgEyeVisible as EyeVisible, ICON_SIZES, Icon, type IconName, type IconProps, type IconSize, type IconSizeToken, SvgIconSlot as IconSlot, type ReactIconProps, SvgSearch as Search, SvgUser as User, resolveSize };
|
package/dist/react/index.js
CHANGED
|
@@ -183,20 +183,67 @@ var init_Check = __esm({
|
|
|
183
183
|
}
|
|
184
184
|
});
|
|
185
185
|
|
|
186
|
+
// src/react/Edit.tsx
|
|
187
|
+
var Edit_exports = {};
|
|
188
|
+
__export(Edit_exports, {
|
|
189
|
+
default: () => Edit_default
|
|
190
|
+
});
|
|
191
|
+
var React4, SvgEdit, Edit_default;
|
|
192
|
+
var init_Edit = __esm({
|
|
193
|
+
"src/react/Edit.tsx"() {
|
|
194
|
+
"use strict";
|
|
195
|
+
React4 = __toESM(require("react"));
|
|
196
|
+
init_types();
|
|
197
|
+
SvgEdit = ({ size = 16, ...props }) => {
|
|
198
|
+
const sizeValue = resolveSize(size);
|
|
199
|
+
return /* @__PURE__ */ React4.createElement(
|
|
200
|
+
"svg",
|
|
201
|
+
{
|
|
202
|
+
width: sizeValue,
|
|
203
|
+
height: sizeValue,
|
|
204
|
+
viewBox: "0 0 24 24",
|
|
205
|
+
fill: "none",
|
|
206
|
+
xmlns: "http://www.w3.org/2000/svg",
|
|
207
|
+
...props
|
|
208
|
+
},
|
|
209
|
+
/* @__PURE__ */ React4.createElement(
|
|
210
|
+
"path",
|
|
211
|
+
{
|
|
212
|
+
fillRule: "evenodd",
|
|
213
|
+
clipRule: "evenodd",
|
|
214
|
+
d: "M19.8596 3.11765C19.6197 3.02426 19.3627 2.98143 19.1049 2.99207C18.8471 3.00271 18.5946 3.06656 18.3636 3.1793C18.1325 3.29203 17.9282 3.45107 17.7634 3.64587C17.7455 3.66702 17.7267 3.68742 17.7071 3.70701L4.39491 17.0192L3.42524 20.5747L6.9807 19.605L20.2929 6.2928C20.3158 6.26991 20.3398 6.24815 20.3648 6.22759C20.5625 6.06494 20.7235 5.86358 20.8378 5.6366C20.9522 5.40964 21.0174 5.16186 21.0298 4.90899C21.0422 4.65612 21.0014 4.40333 20.9099 4.16664C20.8183 3.92993 20.6779 3.71425 20.4972 3.53353C20.3165 3.3528 20.0994 3.21103 19.8596 3.11765ZM19.0224 0.993769C19.5557 0.971764 20.088 1.06031 20.5852 1.25394C21.0825 1.44757 21.5343 1.74216 21.9114 2.11932C22.2886 2.4965 22.5829 2.948 22.7752 3.44525C22.9676 3.94252 23.0535 4.47436 23.0274 5.00678C23.0014 5.5392 22.8639 6.06014 22.624 6.53634C22.392 6.99698 22.0692 7.4058 21.6754 7.73877L8.20713 21.207C8.08407 21.3301 7.93104 21.4189 7.76314 21.4647L2.26314 22.9647C1.91693 23.0591 1.54667 22.9608 1.29292 22.707C1.03917 22.4533 0.940838 22.083 1.03526 21.7368L2.53526 16.2368C2.58105 16.0689 2.66986 15.9159 2.79292 15.7928L16.2657 2.31998C16.605 1.92839 17.0203 1.60935 17.4865 1.38187C17.9661 1.14787 18.4891 1.01577 19.0224 0.993769Z",
|
|
215
|
+
fill: "currentColor"
|
|
216
|
+
}
|
|
217
|
+
),
|
|
218
|
+
/* @__PURE__ */ React4.createElement(
|
|
219
|
+
"path",
|
|
220
|
+
{
|
|
221
|
+
fillRule: "evenodd",
|
|
222
|
+
clipRule: "evenodd",
|
|
223
|
+
d: "M14.2929 4.29289C14.6834 3.90237 15.3166 3.90237 15.7071 4.29289L19.7071 8.29289C20.0976 8.68342 20.0976 9.31658 19.7071 9.70711C19.3166 10.0976 18.6834 10.0976 18.2929 9.70711L14.2929 5.70711C13.9024 5.31658 13.9024 4.68342 14.2929 4.29289Z",
|
|
224
|
+
fill: "currentColor"
|
|
225
|
+
}
|
|
226
|
+
)
|
|
227
|
+
);
|
|
228
|
+
};
|
|
229
|
+
Edit_default = SvgEdit;
|
|
230
|
+
}
|
|
231
|
+
});
|
|
232
|
+
|
|
186
233
|
// src/react/EyeHidden.tsx
|
|
187
234
|
var EyeHidden_exports = {};
|
|
188
235
|
__export(EyeHidden_exports, {
|
|
189
236
|
default: () => EyeHidden_default
|
|
190
237
|
});
|
|
191
|
-
var
|
|
238
|
+
var React5, SvgEyeHidden, EyeHidden_default;
|
|
192
239
|
var init_EyeHidden = __esm({
|
|
193
240
|
"src/react/EyeHidden.tsx"() {
|
|
194
241
|
"use strict";
|
|
195
|
-
|
|
242
|
+
React5 = __toESM(require("react"));
|
|
196
243
|
init_types();
|
|
197
244
|
SvgEyeHidden = ({ size = 16, ...props }) => {
|
|
198
245
|
const sizeValue = resolveSize(size);
|
|
199
|
-
return /* @__PURE__ */
|
|
246
|
+
return /* @__PURE__ */ React5.createElement(
|
|
200
247
|
"svg",
|
|
201
248
|
{
|
|
202
249
|
width: sizeValue,
|
|
@@ -206,7 +253,7 @@ var init_EyeHidden = __esm({
|
|
|
206
253
|
xmlns: "http://www.w3.org/2000/svg",
|
|
207
254
|
...props
|
|
208
255
|
},
|
|
209
|
-
/* @__PURE__ */
|
|
256
|
+
/* @__PURE__ */ React5.createElement(
|
|
210
257
|
"path",
|
|
211
258
|
{
|
|
212
259
|
fillRule: "evenodd",
|
|
@@ -215,7 +262,7 @@ var init_EyeHidden = __esm({
|
|
|
215
262
|
fill: "currentColor"
|
|
216
263
|
}
|
|
217
264
|
),
|
|
218
|
-
/* @__PURE__ */
|
|
265
|
+
/* @__PURE__ */ React5.createElement(
|
|
219
266
|
"path",
|
|
220
267
|
{
|
|
221
268
|
fillRule: "evenodd",
|
|
@@ -224,7 +271,7 @@ var init_EyeHidden = __esm({
|
|
|
224
271
|
fill: "currentColor"
|
|
225
272
|
}
|
|
226
273
|
),
|
|
227
|
-
/* @__PURE__ */
|
|
274
|
+
/* @__PURE__ */ React5.createElement(
|
|
228
275
|
"path",
|
|
229
276
|
{
|
|
230
277
|
fillRule: "evenodd",
|
|
@@ -244,15 +291,15 @@ var EyeVisible_exports = {};
|
|
|
244
291
|
__export(EyeVisible_exports, {
|
|
245
292
|
default: () => EyeVisible_default
|
|
246
293
|
});
|
|
247
|
-
var
|
|
294
|
+
var React6, SvgEyeVisible, EyeVisible_default;
|
|
248
295
|
var init_EyeVisible = __esm({
|
|
249
296
|
"src/react/EyeVisible.tsx"() {
|
|
250
297
|
"use strict";
|
|
251
|
-
|
|
298
|
+
React6 = __toESM(require("react"));
|
|
252
299
|
init_types();
|
|
253
300
|
SvgEyeVisible = ({ size = 16, ...props }) => {
|
|
254
301
|
const sizeValue = resolveSize(size);
|
|
255
|
-
return /* @__PURE__ */
|
|
302
|
+
return /* @__PURE__ */ React6.createElement(
|
|
256
303
|
"svg",
|
|
257
304
|
{
|
|
258
305
|
width: sizeValue,
|
|
@@ -262,7 +309,7 @@ var init_EyeVisible = __esm({
|
|
|
262
309
|
xmlns: "http://www.w3.org/2000/svg",
|
|
263
310
|
...props
|
|
264
311
|
},
|
|
265
|
-
/* @__PURE__ */
|
|
312
|
+
/* @__PURE__ */ React6.createElement(
|
|
266
313
|
"path",
|
|
267
314
|
{
|
|
268
315
|
fillRule: "evenodd",
|
|
@@ -271,7 +318,7 @@ var init_EyeVisible = __esm({
|
|
|
271
318
|
fill: "currentColor"
|
|
272
319
|
}
|
|
273
320
|
),
|
|
274
|
-
/* @__PURE__ */
|
|
321
|
+
/* @__PURE__ */ React6.createElement(
|
|
275
322
|
"path",
|
|
276
323
|
{
|
|
277
324
|
fillRule: "evenodd",
|
|
@@ -291,15 +338,15 @@ var IconSlot_exports = {};
|
|
|
291
338
|
__export(IconSlot_exports, {
|
|
292
339
|
default: () => IconSlot_default
|
|
293
340
|
});
|
|
294
|
-
var
|
|
341
|
+
var React7, SvgIconSlot, IconSlot_default;
|
|
295
342
|
var init_IconSlot = __esm({
|
|
296
343
|
"src/react/IconSlot.tsx"() {
|
|
297
344
|
"use strict";
|
|
298
|
-
|
|
345
|
+
React7 = __toESM(require("react"));
|
|
299
346
|
init_types();
|
|
300
347
|
SvgIconSlot = ({ size = 16, ...props }) => {
|
|
301
348
|
const sizeValue = resolveSize(size);
|
|
302
|
-
return /* @__PURE__ */
|
|
349
|
+
return /* @__PURE__ */ React7.createElement(
|
|
303
350
|
"svg",
|
|
304
351
|
{
|
|
305
352
|
width: sizeValue,
|
|
@@ -309,7 +356,7 @@ var init_IconSlot = __esm({
|
|
|
309
356
|
xmlns: "http://www.w3.org/2000/svg",
|
|
310
357
|
...props
|
|
311
358
|
},
|
|
312
|
-
/* @__PURE__ */
|
|
359
|
+
/* @__PURE__ */ React7.createElement(
|
|
313
360
|
"path",
|
|
314
361
|
{
|
|
315
362
|
d: "M21 12C21 7.02944 16.9706 3 12 3C7.02944 3 3 7.02944 3 12C3 16.9706 7.02944 21 12 21C16.9706 21 21 16.9706 21 12ZM23 12C23 18.0751 18.0751 23 12 23C5.92487 23 1 18.0751 1 12C1 5.92487 5.92487 1 12 1C18.0751 1 23 5.92487 23 12Z",
|
|
@@ -327,15 +374,15 @@ var Search_exports = {};
|
|
|
327
374
|
__export(Search_exports, {
|
|
328
375
|
default: () => Search_default
|
|
329
376
|
});
|
|
330
|
-
var
|
|
377
|
+
var React8, SvgSearch, Search_default;
|
|
331
378
|
var init_Search = __esm({
|
|
332
379
|
"src/react/Search.tsx"() {
|
|
333
380
|
"use strict";
|
|
334
|
-
|
|
381
|
+
React8 = __toESM(require("react"));
|
|
335
382
|
init_types();
|
|
336
383
|
SvgSearch = ({ size = 16, ...props }) => {
|
|
337
384
|
const sizeValue = resolveSize(size);
|
|
338
|
-
return /* @__PURE__ */
|
|
385
|
+
return /* @__PURE__ */ React8.createElement(
|
|
339
386
|
"svg",
|
|
340
387
|
{
|
|
341
388
|
width: sizeValue,
|
|
@@ -345,7 +392,7 @@ var init_Search = __esm({
|
|
|
345
392
|
xmlns: "http://www.w3.org/2000/svg",
|
|
346
393
|
...props
|
|
347
394
|
},
|
|
348
|
-
/* @__PURE__ */
|
|
395
|
+
/* @__PURE__ */ React8.createElement(
|
|
349
396
|
"path",
|
|
350
397
|
{
|
|
351
398
|
fillRule: "evenodd",
|
|
@@ -354,7 +401,7 @@ var init_Search = __esm({
|
|
|
354
401
|
fill: "currentColor"
|
|
355
402
|
}
|
|
356
403
|
),
|
|
357
|
-
/* @__PURE__ */
|
|
404
|
+
/* @__PURE__ */ React8.createElement(
|
|
358
405
|
"path",
|
|
359
406
|
{
|
|
360
407
|
fillRule: "evenodd",
|
|
@@ -374,15 +421,15 @@ var User_exports = {};
|
|
|
374
421
|
__export(User_exports, {
|
|
375
422
|
default: () => User_default
|
|
376
423
|
});
|
|
377
|
-
var
|
|
424
|
+
var React9, SvgUser, User_default;
|
|
378
425
|
var init_User = __esm({
|
|
379
426
|
"src/react/User.tsx"() {
|
|
380
427
|
"use strict";
|
|
381
|
-
|
|
428
|
+
React9 = __toESM(require("react"));
|
|
382
429
|
init_types();
|
|
383
430
|
SvgUser = ({ size = 16, ...props }) => {
|
|
384
431
|
const sizeValue = resolveSize(size);
|
|
385
|
-
return /* @__PURE__ */
|
|
432
|
+
return /* @__PURE__ */ React9.createElement(
|
|
386
433
|
"svg",
|
|
387
434
|
{
|
|
388
435
|
width: sizeValue,
|
|
@@ -392,7 +439,7 @@ var init_User = __esm({
|
|
|
392
439
|
xmlns: "http://www.w3.org/2000/svg",
|
|
393
440
|
...props
|
|
394
441
|
},
|
|
395
|
-
/* @__PURE__ */
|
|
442
|
+
/* @__PURE__ */ React9.createElement(
|
|
396
443
|
"path",
|
|
397
444
|
{
|
|
398
445
|
fillRule: "evenodd",
|
|
@@ -401,7 +448,7 @@ var init_User = __esm({
|
|
|
401
448
|
fill: "currentColor"
|
|
402
449
|
}
|
|
403
450
|
),
|
|
404
|
-
/* @__PURE__ */
|
|
451
|
+
/* @__PURE__ */ React9.createElement(
|
|
405
452
|
"path",
|
|
406
453
|
{
|
|
407
454
|
fillRule: "evenodd",
|
|
@@ -422,6 +469,7 @@ __export(react_exports, {
|
|
|
422
469
|
ArrowLeft: () => ArrowLeft_default,
|
|
423
470
|
Cancel: () => Cancel_default,
|
|
424
471
|
Check: () => Check_default,
|
|
472
|
+
Edit: () => Edit_default,
|
|
425
473
|
EyeHidden: () => EyeHidden_default,
|
|
426
474
|
EyeVisible: () => EyeVisible_default,
|
|
427
475
|
ICON_SIZES: () => ICON_SIZES,
|
|
@@ -435,6 +483,7 @@ module.exports = __toCommonJS(react_exports);
|
|
|
435
483
|
init_ArrowLeft();
|
|
436
484
|
init_Cancel();
|
|
437
485
|
init_Check();
|
|
486
|
+
init_Edit();
|
|
438
487
|
init_EyeHidden();
|
|
439
488
|
init_EyeVisible();
|
|
440
489
|
init_IconSlot();
|
|
@@ -442,7 +491,7 @@ init_Search();
|
|
|
442
491
|
init_User();
|
|
443
492
|
|
|
444
493
|
// src/react/Icon.tsx
|
|
445
|
-
var
|
|
494
|
+
var React10 = __toESM(require("react"));
|
|
446
495
|
function loadIcon(name) {
|
|
447
496
|
switch (name) {
|
|
448
497
|
case "arrow-left":
|
|
@@ -451,6 +500,8 @@ function loadIcon(name) {
|
|
|
451
500
|
return Promise.resolve().then(() => (init_Cancel(), Cancel_exports)).then((m) => m.default);
|
|
452
501
|
case "check":
|
|
453
502
|
return Promise.resolve().then(() => (init_Check(), Check_exports)).then((m) => m.default);
|
|
503
|
+
case "edit":
|
|
504
|
+
return Promise.resolve().then(() => (init_Edit(), Edit_exports)).then((m) => m.default);
|
|
454
505
|
case "eye-hidden":
|
|
455
506
|
return Promise.resolve().then(() => (init_EyeHidden(), EyeHidden_exports)).then((m) => m.default);
|
|
456
507
|
case "eye-visible":
|
|
@@ -466,10 +517,10 @@ function loadIcon(name) {
|
|
|
466
517
|
}
|
|
467
518
|
}
|
|
468
519
|
var Icon = ({ name, size = 16, color, ...props }) => {
|
|
469
|
-
const [IconComponent, setIconComponent] =
|
|
470
|
-
const [loading, setLoading] =
|
|
471
|
-
const [error, setError] =
|
|
472
|
-
|
|
520
|
+
const [IconComponent, setIconComponent] = React10.useState(null);
|
|
521
|
+
const [loading, setLoading] = React10.useState(true);
|
|
522
|
+
const [error, setError] = React10.useState(null);
|
|
523
|
+
React10.useEffect(() => {
|
|
473
524
|
setLoading(true);
|
|
474
525
|
setError(null);
|
|
475
526
|
loadIcon(name).then((Component) => {
|
|
@@ -488,7 +539,7 @@ var Icon = ({ name, size = 16, color, ...props }) => {
|
|
|
488
539
|
return null;
|
|
489
540
|
}
|
|
490
541
|
const style = color ? { ...props.style, color } : props.style;
|
|
491
|
-
return /* @__PURE__ */
|
|
542
|
+
return /* @__PURE__ */ React10.createElement(IconComponent, { size, ...props, style });
|
|
492
543
|
};
|
|
493
544
|
var Icon_default = Icon;
|
|
494
545
|
|
package/dist/react/index.js.map
CHANGED
|
@@ -1 +1 @@
|
|
|
1
|
-
{"version":3,"sources":["../../src/shared/types.ts","../../src/react/ArrowLeft.tsx","../../src/react/Cancel.tsx","../../src/react/Check.tsx","../../src/react/EyeHidden.tsx","../../src/react/EyeVisible.tsx","../../src/react/IconSlot.tsx","../../src/react/Search.tsx","../../src/react/User.tsx","../../src/react/index.ts","../../src/react/Icon.tsx"],"sourcesContent":["export type IconSize = number | 'xs' | 'sm' | 'md' | 'lg' | 'xl';\n\n/**\n * Icon size presets\n */\nexport const ICON_SIZES = {\n xs: 8,\n sm: 12,\n md: 16,\n lg: 20,\n xl: 24,\n} as const;\n\n/**\n * Icon size token type\n */\nexport type IconSizeToken = keyof typeof ICON_SIZES;\n\n/**\n * Props for React (web) icons\n */\nexport interface ReactIconProps extends React.SVGProps<SVGSVGElement> {\n size?: IconSize;\n}\n\n/**\n * Props for React Native icons\n */\nexport interface NativeIconProps {\n size?: IconSize;\n width?: number;\n height?: number;\n color?: string;\n style?: any;\n}\n\n/**\n * Resolves an icon size to a numeric value\n * @param size - Size value or token\n * @returns Numeric size in pixels\n */\nexport function resolveSize(size: IconSize = 'lg'): number {\n if (typeof size === 'number') {\n return size;\n }\n \n return ICON_SIZES[size] ?? ICON_SIZES.lg;\n}\n","import * as React from 'react';\nimport type { ReactIconProps } from '../shared/types';\nimport { resolveSize } from '../shared/types';\n\nconst SvgArrowLeft = ({ size = 16, ...props }: ReactIconProps) => {\n const sizeValue = resolveSize(size);\n \n return (\n <svg\n width={sizeValue} height={sizeValue}\n viewBox=\"0 0 24 24\"\n fill=\"none\"\n xmlns=\"http://www.w3.org/2000/svg\"\n {...props}\n >\n <path\n fillRule=\"evenodd\"\n clipRule=\"evenodd\"\n d=\"M12.7071 4.29289C13.0976 4.68342 13.0976 5.31658 12.7071 5.70711L6.41421 12L12.7071 18.2929C13.0976 18.6834 13.0976 19.3166 12.7071 19.7071C12.3166 20.0976 11.6834 20.0976 11.2929 19.7071L4.29289 12.7071C3.90237 12.3166 3.90237 11.6834 4.29289 11.2929L11.2929 4.29289C11.6834 3.90237 12.3166 3.90237 12.7071 4.29289Z\"\n fill=\"currentColor\"\n />\n <path\n fillRule=\"evenodd\"\n clipRule=\"evenodd\"\n d=\"M4 12C4 11.4477 4.44772 11 5 11H19C19.5523 11 20 11.4477 20 12C20 12.5523 19.5523 13 19 13H5C4.44772 13 4 12.5523 4 12Z\"\n fill=\"currentColor\"\n />\n </svg>\n );\n};\n\nexport default SvgArrowLeft;\n","import * as React from 'react';\nimport type { ReactIconProps } from '../shared/types';\nimport { resolveSize } from '../shared/types';\n\nconst SvgCancel = ({ size = 16, ...props }: ReactIconProps) => {\n const sizeValue = resolveSize(size);\n \n return (\n <svg\n width={sizeValue} height={sizeValue}\n viewBox=\"0 0 24 24\"\n fill=\"none\"\n xmlns=\"http://www.w3.org/2000/svg\"\n {...props}\n >\n <path\n fillRule=\"evenodd\"\n clipRule=\"evenodd\"\n d=\"M18.7071 5.29289C19.0976 5.68342 19.0976 6.31658 18.7071 6.70711L6.70711 18.7071C6.31658 19.0976 5.68342 19.0976 5.29289 18.7071C4.90237 18.3166 4.90237 17.6834 5.29289 17.2929L17.2929 5.29289C17.6834 4.90237 18.3166 4.90237 18.7071 5.29289Z\"\n fill=\"currentColor\"\n />\n <path\n fillRule=\"evenodd\"\n clipRule=\"evenodd\"\n d=\"M5.29289 5.29289C5.68342 4.90237 6.31658 4.90237 6.70711 5.29289L18.7071 17.2929C19.0976 17.6834 19.0976 18.3166 18.7071 18.7071C18.3166 19.0976 17.6834 19.0976 17.2929 18.7071L5.29289 6.70711C4.90237 6.31658 4.90237 5.68342 5.29289 5.29289Z\"\n fill=\"currentColor\"\n />\n </svg>\n );\n};\n\nexport default SvgCancel;\n","import * as React from 'react';\nimport type { ReactIconProps } from '../shared/types';\nimport { resolveSize } from '../shared/types';\n\nconst SvgCheck = ({ size = 16, ...props }: ReactIconProps) => {\n const sizeValue = resolveSize(size);\n \n return (\n <svg\n width={sizeValue} height={sizeValue}\n viewBox=\"0 0 16 16\"\n fill=\"none\"\n xmlns=\"http://www.w3.org/2000/svg\"\n {...props}\n >\n <path\n fillRule=\"evenodd\"\n clipRule=\"evenodd\"\n d=\"M13.8047 3.52858C14.0651 3.78892 14.0651 4.21103 13.8047 4.47138L6.4714 11.8047C6.21106 12.0651 5.78894 12.0651 5.5286 11.8047L2.19526 8.47138C1.93491 8.21103 1.93491 7.78892 2.19526 7.52858C2.45561 7.26823 2.87772 7.26823 3.13807 7.52858L6 10.3905L12.8619 3.52858C13.1223 3.26823 13.5444 3.26823 13.8047 3.52858Z\"\n fill=\"currentColor\"\n />\n </svg>\n );\n};\n\nexport default SvgCheck;\n","import * as React from 'react';\nimport type { ReactIconProps } from '../shared/types';\nimport { resolveSize } from '../shared/types';\n\nconst SvgEyeHidden = ({ size = 16, ...props }: ReactIconProps) => {\n const sizeValue = resolveSize(size);\n \n return (\n <svg\n width={sizeValue} height={sizeValue}\n viewBox=\"0 0 24 24\"\n fill=\"none\"\n xmlns=\"http://www.w3.org/2000/svg\"\n {...props}\n >\n <path\n fillRule=\"evenodd\"\n clipRule=\"evenodd\"\n d=\"M2.02994 11.7575C2.61883 9.4019 5.4549 5 12.0001 5C18.5453 5 21.3813 9.4019 21.9702 11.7575L22.0285 11.9907L21.9745 12.2249C21.3836 14.7852 18.5247 19 12.0001 19C5.42044 19 2.6206 14.4091 2.03532 12.2631L1.96655 12.011L2.02994 11.7575ZM4.04308 11.9886C4.61202 13.6329 6.83349 17 12.0001 17C17.2425 17 19.4283 13.8356 19.9639 12.0101C19.4182 10.2828 17.2104 7 12.0001 7C6.81136 7 4.60029 10.2556 4.04308 11.9886Z\"\n fill=\"currentColor\"\n />\n <path\n fillRule=\"evenodd\"\n clipRule=\"evenodd\"\n d=\"M12.0001 10C10.8955 10 10.0001 10.8954 10.0001 12C10.0001 13.1046 10.8955 14 12.0001 14C13.1046 14 14.0001 13.1046 14.0001 12C14.0001 10.8954 13.1046 10 12.0001 10ZM8.00008 12C8.00008 9.79086 9.79094 8 12.0001 8C14.2092 8 16.0001 9.79086 16.0001 12C16.0001 14.2091 14.2092 16 12.0001 16C9.79094 16 8.00008 14.2091 8.00008 12Z\"\n fill=\"currentColor\"\n />\n <path\n fillRule=\"evenodd\"\n clipRule=\"evenodd\"\n d=\"M20.7072 3.29289C21.0977 3.68342 21.0977 4.31658 20.7072 4.70711L4.70719 20.7071C4.31666 21.0976 3.6835 21.0976 3.29297 20.7071C2.90245 20.3166 2.90245 19.6834 3.29297 19.2929L19.293 3.29289C19.6835 2.90237 20.3167 2.90237 20.7072 3.29289Z\"\n fill=\"currentColor\"\n />\n </svg>\n );\n};\n\nexport default SvgEyeHidden;\n","import * as React from 'react';\nimport type { ReactIconProps } from '../shared/types';\nimport { resolveSize } from '../shared/types';\n\nconst SvgEyeVisible = ({ size = 16, ...props }: ReactIconProps) => {\n const sizeValue = resolveSize(size);\n \n return (\n <svg\n width={sizeValue} height={sizeValue}\n viewBox=\"0 0 24 24\"\n fill=\"none\"\n xmlns=\"http://www.w3.org/2000/svg\"\n {...props}\n >\n <path\n fillRule=\"evenodd\"\n clipRule=\"evenodd\"\n d=\"M2.02994 11.7575C2.61883 9.4019 5.4549 5 12.0001 5C18.5453 5 21.3813 9.4019 21.9702 11.7575L22.0285 11.9906L21.9745 12.2249C21.3836 14.7852 18.5247 19 12.0001 19C5.42044 19 2.6206 14.4091 2.03532 12.2631L1.96655 12.011L2.02994 11.7575ZM4.04308 11.9886C4.61202 13.6329 6.83349 17 12.0001 17C17.2425 17 19.4283 13.8356 19.9639 12.0101C19.4182 10.2828 17.2104 7 12.0001 7C6.81136 7 4.60029 10.2556 4.04308 11.9886Z\"\n fill=\"currentColor\"\n />\n <path\n fillRule=\"evenodd\"\n clipRule=\"evenodd\"\n d=\"M12.0001 10C10.8955 10 10.0001 10.8954 10.0001 12C10.0001 13.1046 10.8955 14 12.0001 14C13.1046 14 14.0001 13.1046 14.0001 12C14.0001 10.8954 13.1046 10 12.0001 10ZM8.00008 12C8.00008 9.79086 9.79094 8 12.0001 8C14.2092 8 16.0001 9.79086 16.0001 12C16.0001 14.2091 14.2092 16 12.0001 16C9.79094 16 8.00008 14.2091 8.00008 12Z\"\n fill=\"currentColor\"\n />\n </svg>\n );\n};\n\nexport default SvgEyeVisible;\n","import * as React from 'react';\nimport type { ReactIconProps } from '../shared/types';\nimport { resolveSize } from '../shared/types';\n\nconst SvgIconSlot = ({ size = 16, ...props }: ReactIconProps) => {\n const sizeValue = resolveSize(size);\n \n return (\n <svg\n width={sizeValue} height={sizeValue}\n viewBox=\"0 0 24 24\"\n fill=\"none\"\n xmlns=\"http://www.w3.org/2000/svg\"\n {...props}\n >\n <path\n d=\"M21 12C21 7.02944 16.9706 3 12 3C7.02944 3 3 7.02944 3 12C3 16.9706 7.02944 21 12 21C16.9706 21 21 16.9706 21 12ZM23 12C23 18.0751 18.0751 23 12 23C5.92487 23 1 18.0751 1 12C1 5.92487 5.92487 1 12 1C18.0751 1 23 5.92487 23 12Z\"\n fill=\"currentColor\"\n />\n </svg>\n );\n};\n\nexport default SvgIconSlot;\n","import * as React from 'react';\nimport type { ReactIconProps } from '../shared/types';\nimport { resolveSize } from '../shared/types';\n\nconst SvgSearch = ({ size = 16, ...props }: ReactIconProps) => {\n const sizeValue = resolveSize(size);\n \n return (\n <svg\n width={sizeValue} height={sizeValue}\n viewBox=\"0 0 24 24\"\n fill=\"none\"\n xmlns=\"http://www.w3.org/2000/svg\"\n {...props}\n >\n <path\n fillRule=\"evenodd\"\n clipRule=\"evenodd\"\n d=\"M11 4C7.13401 4 4 7.13401 4 11C4 14.866 7.13401 18 11 18C14.866 18 18 14.866 18 11C18 7.13401 14.866 4 11 4ZM2 11C2 6.02944 6.02944 2 11 2C15.9706 2 20 6.02944 20 11C20 15.9706 15.9706 20 11 20C6.02944 20 2 15.9706 2 11Z\"\n fill=\"currentColor\"\n />\n <path\n fillRule=\"evenodd\"\n clipRule=\"evenodd\"\n d=\"M15.9929 15.9929C16.3834 15.6024 17.0166 15.6024 17.4071 15.9929L21.7071 20.2929C22.0976 20.6834 22.0976 21.3166 21.7071 21.7071C21.3166 22.0976 20.6834 22.0976 20.2929 21.7071L15.9929 17.4071C15.6024 17.0166 15.6024 16.3834 15.9929 15.9929Z\"\n fill=\"currentColor\"\n />\n </svg>\n );\n};\n\nexport default SvgSearch;\n","import * as React from 'react';\nimport type { ReactIconProps } from '../shared/types';\nimport { resolveSize } from '../shared/types';\n\nconst SvgUser = ({ size = 16, ...props }: ReactIconProps) => {\n const sizeValue = resolveSize(size);\n \n return (\n <svg\n width={sizeValue} height={sizeValue}\n viewBox=\"0 0 24 24\"\n fill=\"none\"\n xmlns=\"http://www.w3.org/2000/svg\"\n {...props}\n >\n <path\n fillRule=\"evenodd\"\n clipRule=\"evenodd\"\n d=\"M5.46447 15.4645C6.40215 14.5268 7.67392 14 9 14H15C16.3261 14 17.5979 14.5268 18.5355 15.4645C19.4732 16.4021 20 17.6739 20 19V21C20 21.5523 19.5523 22 19 22C18.4477 22 18 21.5523 18 21V19C18 18.2044 17.6839 17.4413 17.1213 16.8787C16.5587 16.3161 15.7956 16 15 16H9C8.20435 16 7.44129 16.3161 6.87868 16.8787C6.31607 17.4413 6 18.2043 6 19V21C6 21.5523 5.55228 22 5 22C4.44772 22 4 21.5523 4 21V19C4 17.6739 4.52678 16.4021 5.46447 15.4645Z\"\n fill=\"currentColor\"\n />\n <path\n fillRule=\"evenodd\"\n clipRule=\"evenodd\"\n d=\"M12 4C10.3431 4 9 5.34315 9 7C9 8.65685 10.3431 10 12 10C13.6569 10 15 8.65685 15 7C15 5.34315 13.6569 4 12 4ZM7 7C7 4.23858 9.23858 2 12 2C14.7614 2 17 4.23858 17 7C17 9.76142 14.7614 12 12 12C9.23858 12 7 9.76142 7 7Z\"\n fill=\"currentColor\"\n />\n </svg>\n );\n};\n\nexport default SvgUser;\n","// Auto-generated exports\nexport { default as ArrowLeft } from './ArrowLeft';\nexport { default as Cancel } from './Cancel';\nexport { default as Check } from './Check';\nexport { default as EyeHidden } from './EyeHidden';\nexport { default as EyeVisible } from './EyeVisible';\nexport { default as IconSlot } from './IconSlot';\nexport { default as Search } from './Search';\nexport { default as User } from './User';\n\n// Unified Icon component\nexport { default as Icon } from './Icon';\nexport type { IconName, IconProps } from './Icon';\n\n // Export types\nexport type {\n IconSize,\n IconSizeToken,\n ReactIconProps,\n} from '../shared/types';\n\nexport { ICON_SIZES, resolveSize } from '../shared/types';\n","import * as React from 'react';\nimport type { ReactIconProps } from '../shared/types';\n\n/**\n * Icon imports - using dynamic imports for tree-shaking\n * Auto-generated - do not edit manually\n */\n// Icon: arrow-left\n// Icon: cancel\n// Icon: check\n// Icon: eye-hidden\n// Icon: eye-visible\n// Icon: icon-slot\n// Icon: search\n// Icon: user\n\n/**\n * Available icon names\n */\nexport type IconName = 'arrow-left' | 'cancel' | 'check' | 'eye-hidden' | 'eye-visible' | 'icon-slot' | 'search' | 'user';\n\n/**\n * Props for the unified Icon component\n */\nexport interface IconProps extends Omit<ReactIconProps, 'size'> {\n name: IconName;\n size?: ReactIconProps['size'];\n color?: string;\n}\n\n/**\n * Loads an icon component dynamically\n * This pattern allows bundlers to tree-shake unused icons\n * \n * Icons use default exports (export default SvgIconName),\n * so we access .default from the dynamic import result\n */\nfunction loadIcon(name: IconName): Promise<React.ComponentType<any>> {\n switch (name) {\n case 'arrow-left':\n return import('./ArrowLeft').then(m => m.default);\n case 'cancel':\n return import('./Cancel').then(m => m.default);\n case 'check':\n return import('./Check').then(m => m.default);\n case 'eye-hidden':\n return import('./EyeHidden').then(m => m.default);\n case 'eye-visible':\n return import('./EyeVisible').then(m => m.default);\n case 'icon-slot':\n return import('./IconSlot').then(m => m.default);\n case 'search':\n return import('./Search').then(m => m.default);\n case 'user':\n return import('./User').then(m => m.default);\n default:\n return Promise.reject(new Error(`Icon \"${name}\" not found`));\n }\n}\n\n/**\n * Unified Icon component that renders icons by name\n * Uses dynamic imports for tree-shaking support\n */\nconst Icon = ({ name, size = 16, color, ...props }: IconProps) => {\n const [IconComponent, setIconComponent] = React.useState<React.ComponentType<any> | null>(null);\n const [loading, setLoading] = React.useState(true);\n const [error, setError] = React.useState<string | null>(null);\n\n React.useEffect(() => {\n setLoading(true);\n setError(null);\n \n loadIcon(name)\n .then((Component) => {\n setIconComponent(() => Component);\n setLoading(false);\n })\n .catch((err) => {\n console.warn(err.message);\n setError(err.message);\n setLoading(false);\n });\n }, [name]);\n\n if (loading) {\n return null; // Consider showing a placeholder\n }\n\n if (error || !IconComponent) {\n return null;\n }\n\n // Apply color via style prop if provided (SVGs use fill=\"currentColor\")\n const style = color \n ? { ...props.style, color } \n : props.style;\n\n return <IconComponent size={size} {...props} style={style} />;\n};\n\nexport default Icon;"],"mappings":"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","names":["React","React","React","React","React","React","React","React"]}
|
|
1
|
+
{"version":3,"sources":["../../src/shared/types.ts","../../src/react/ArrowLeft.tsx","../../src/react/Cancel.tsx","../../src/react/Check.tsx","../../src/react/Edit.tsx","../../src/react/EyeHidden.tsx","../../src/react/EyeVisible.tsx","../../src/react/IconSlot.tsx","../../src/react/Search.tsx","../../src/react/User.tsx","../../src/react/index.ts","../../src/react/Icon.tsx"],"sourcesContent":["export type IconSize = number | 'xs' | 'sm' | 'md' | 'lg' | 'xl';\n\n/**\n * Icon size presets\n */\nexport const ICON_SIZES = {\n xs: 8,\n sm: 12,\n md: 16,\n lg: 20,\n xl: 24,\n} as const;\n\n/**\n * Icon size token type\n */\nexport type IconSizeToken = keyof typeof ICON_SIZES;\n\n/**\n * Props for React (web) icons\n */\nexport interface ReactIconProps extends React.SVGProps<SVGSVGElement> {\n size?: IconSize;\n}\n\n/**\n * Props for React Native icons\n */\nexport interface NativeIconProps {\n size?: IconSize;\n width?: number;\n height?: number;\n color?: string;\n style?: any;\n}\n\n/**\n * Resolves an icon size to a numeric value\n * @param size - Size value or token\n * @returns Numeric size in pixels\n */\nexport function resolveSize(size: IconSize = 'lg'): number {\n if (typeof size === 'number') {\n return size;\n }\n \n return ICON_SIZES[size] ?? ICON_SIZES.lg;\n}\n","import * as React from 'react';\nimport type { ReactIconProps } from '../shared/types';\nimport { resolveSize } from '../shared/types';\n\nconst SvgArrowLeft = ({ size = 16, ...props }: ReactIconProps) => {\n const sizeValue = resolveSize(size);\n \n return (\n <svg\n width={sizeValue} height={sizeValue}\n viewBox=\"0 0 24 24\"\n fill=\"none\"\n xmlns=\"http://www.w3.org/2000/svg\"\n {...props}\n >\n <path\n fillRule=\"evenodd\"\n clipRule=\"evenodd\"\n d=\"M12.7071 4.29289C13.0976 4.68342 13.0976 5.31658 12.7071 5.70711L6.41421 12L12.7071 18.2929C13.0976 18.6834 13.0976 19.3166 12.7071 19.7071C12.3166 20.0976 11.6834 20.0976 11.2929 19.7071L4.29289 12.7071C3.90237 12.3166 3.90237 11.6834 4.29289 11.2929L11.2929 4.29289C11.6834 3.90237 12.3166 3.90237 12.7071 4.29289Z\"\n fill=\"currentColor\"\n />\n <path\n fillRule=\"evenodd\"\n clipRule=\"evenodd\"\n d=\"M4 12C4 11.4477 4.44772 11 5 11H19C19.5523 11 20 11.4477 20 12C20 12.5523 19.5523 13 19 13H5C4.44772 13 4 12.5523 4 12Z\"\n fill=\"currentColor\"\n />\n </svg>\n );\n};\n\nexport default SvgArrowLeft;\n","import * as React from 'react';\nimport type { ReactIconProps } from '../shared/types';\nimport { resolveSize } from '../shared/types';\n\nconst SvgCancel = ({ size = 16, ...props }: ReactIconProps) => {\n const sizeValue = resolveSize(size);\n \n return (\n <svg\n width={sizeValue} height={sizeValue}\n viewBox=\"0 0 24 24\"\n fill=\"none\"\n xmlns=\"http://www.w3.org/2000/svg\"\n {...props}\n >\n <path\n fillRule=\"evenodd\"\n clipRule=\"evenodd\"\n d=\"M18.7071 5.29289C19.0976 5.68342 19.0976 6.31658 18.7071 6.70711L6.70711 18.7071C6.31658 19.0976 5.68342 19.0976 5.29289 18.7071C4.90237 18.3166 4.90237 17.6834 5.29289 17.2929L17.2929 5.29289C17.6834 4.90237 18.3166 4.90237 18.7071 5.29289Z\"\n fill=\"currentColor\"\n />\n <path\n fillRule=\"evenodd\"\n clipRule=\"evenodd\"\n d=\"M5.29289 5.29289C5.68342 4.90237 6.31658 4.90237 6.70711 5.29289L18.7071 17.2929C19.0976 17.6834 19.0976 18.3166 18.7071 18.7071C18.3166 19.0976 17.6834 19.0976 17.2929 18.7071L5.29289 6.70711C4.90237 6.31658 4.90237 5.68342 5.29289 5.29289Z\"\n fill=\"currentColor\"\n />\n </svg>\n );\n};\n\nexport default SvgCancel;\n","import * as React from 'react';\nimport type { ReactIconProps } from '../shared/types';\nimport { resolveSize } from '../shared/types';\n\nconst SvgCheck = ({ size = 16, ...props }: ReactIconProps) => {\n const sizeValue = resolveSize(size);\n \n return (\n <svg\n width={sizeValue} height={sizeValue}\n viewBox=\"0 0 16 16\"\n fill=\"none\"\n xmlns=\"http://www.w3.org/2000/svg\"\n {...props}\n >\n <path\n fillRule=\"evenodd\"\n clipRule=\"evenodd\"\n d=\"M13.8047 3.52858C14.0651 3.78892 14.0651 4.21103 13.8047 4.47138L6.4714 11.8047C6.21106 12.0651 5.78894 12.0651 5.5286 11.8047L2.19526 8.47138C1.93491 8.21103 1.93491 7.78892 2.19526 7.52858C2.45561 7.26823 2.87772 7.26823 3.13807 7.52858L6 10.3905L12.8619 3.52858C13.1223 3.26823 13.5444 3.26823 13.8047 3.52858Z\"\n fill=\"currentColor\"\n />\n </svg>\n );\n};\n\nexport default SvgCheck;\n","import * as React from 'react';\nimport type { ReactIconProps } from '../shared/types';\nimport { resolveSize } from '../shared/types';\n\nconst SvgEdit = ({ size = 16, ...props }: ReactIconProps) => {\n const sizeValue = resolveSize(size);\n \n return (\n <svg\n width={sizeValue} height={sizeValue}\n viewBox=\"0 0 24 24\"\n fill=\"none\"\n xmlns=\"http://www.w3.org/2000/svg\"\n {...props}\n >\n <path\n fillRule=\"evenodd\"\n clipRule=\"evenodd\"\n d=\"M19.8596 3.11765C19.6197 3.02426 19.3627 2.98143 19.1049 2.99207C18.8471 3.00271 18.5946 3.06656 18.3636 3.1793C18.1325 3.29203 17.9282 3.45107 17.7634 3.64587C17.7455 3.66702 17.7267 3.68742 17.7071 3.70701L4.39491 17.0192L3.42524 20.5747L6.9807 19.605L20.2929 6.2928C20.3158 6.26991 20.3398 6.24815 20.3648 6.22759C20.5625 6.06494 20.7235 5.86358 20.8378 5.6366C20.9522 5.40964 21.0174 5.16186 21.0298 4.90899C21.0422 4.65612 21.0014 4.40333 20.9099 4.16664C20.8183 3.92993 20.6779 3.71425 20.4972 3.53353C20.3165 3.3528 20.0994 3.21103 19.8596 3.11765ZM19.0224 0.993769C19.5557 0.971764 20.088 1.06031 20.5852 1.25394C21.0825 1.44757 21.5343 1.74216 21.9114 2.11932C22.2886 2.4965 22.5829 2.948 22.7752 3.44525C22.9676 3.94252 23.0535 4.47436 23.0274 5.00678C23.0014 5.5392 22.8639 6.06014 22.624 6.53634C22.392 6.99698 22.0692 7.4058 21.6754 7.73877L8.20713 21.207C8.08407 21.3301 7.93104 21.4189 7.76314 21.4647L2.26314 22.9647C1.91693 23.0591 1.54667 22.9608 1.29292 22.707C1.03917 22.4533 0.940838 22.083 1.03526 21.7368L2.53526 16.2368C2.58105 16.0689 2.66986 15.9159 2.79292 15.7928L16.2657 2.31998C16.605 1.92839 17.0203 1.60935 17.4865 1.38187C17.9661 1.14787 18.4891 1.01577 19.0224 0.993769Z\"\n fill=\"currentColor\"\n />\n <path\n fillRule=\"evenodd\"\n clipRule=\"evenodd\"\n d=\"M14.2929 4.29289C14.6834 3.90237 15.3166 3.90237 15.7071 4.29289L19.7071 8.29289C20.0976 8.68342 20.0976 9.31658 19.7071 9.70711C19.3166 10.0976 18.6834 10.0976 18.2929 9.70711L14.2929 5.70711C13.9024 5.31658 13.9024 4.68342 14.2929 4.29289Z\"\n fill=\"currentColor\"\n />\n </svg>\n );\n};\n\nexport default SvgEdit;\n","import * as React from 'react';\nimport type { ReactIconProps } from '../shared/types';\nimport { resolveSize } from '../shared/types';\n\nconst SvgEyeHidden = ({ size = 16, ...props }: ReactIconProps) => {\n const sizeValue = resolveSize(size);\n \n return (\n <svg\n width={sizeValue} height={sizeValue}\n viewBox=\"0 0 24 24\"\n fill=\"none\"\n xmlns=\"http://www.w3.org/2000/svg\"\n {...props}\n >\n <path\n fillRule=\"evenodd\"\n clipRule=\"evenodd\"\n d=\"M2.02994 11.7575C2.61883 9.4019 5.4549 5 12.0001 5C18.5453 5 21.3813 9.4019 21.9702 11.7575L22.0285 11.9907L21.9745 12.2249C21.3836 14.7852 18.5247 19 12.0001 19C5.42044 19 2.6206 14.4091 2.03532 12.2631L1.96655 12.011L2.02994 11.7575ZM4.04308 11.9886C4.61202 13.6329 6.83349 17 12.0001 17C17.2425 17 19.4283 13.8356 19.9639 12.0101C19.4182 10.2828 17.2104 7 12.0001 7C6.81136 7 4.60029 10.2556 4.04308 11.9886Z\"\n fill=\"currentColor\"\n />\n <path\n fillRule=\"evenodd\"\n clipRule=\"evenodd\"\n d=\"M12.0001 10C10.8955 10 10.0001 10.8954 10.0001 12C10.0001 13.1046 10.8955 14 12.0001 14C13.1046 14 14.0001 13.1046 14.0001 12C14.0001 10.8954 13.1046 10 12.0001 10ZM8.00008 12C8.00008 9.79086 9.79094 8 12.0001 8C14.2092 8 16.0001 9.79086 16.0001 12C16.0001 14.2091 14.2092 16 12.0001 16C9.79094 16 8.00008 14.2091 8.00008 12Z\"\n fill=\"currentColor\"\n />\n <path\n fillRule=\"evenodd\"\n clipRule=\"evenodd\"\n d=\"M20.7072 3.29289C21.0977 3.68342 21.0977 4.31658 20.7072 4.70711L4.70719 20.7071C4.31666 21.0976 3.6835 21.0976 3.29297 20.7071C2.90245 20.3166 2.90245 19.6834 3.29297 19.2929L19.293 3.29289C19.6835 2.90237 20.3167 2.90237 20.7072 3.29289Z\"\n fill=\"currentColor\"\n />\n </svg>\n );\n};\n\nexport default SvgEyeHidden;\n","import * as React from 'react';\nimport type { ReactIconProps } from '../shared/types';\nimport { resolveSize } from '../shared/types';\n\nconst SvgEyeVisible = ({ size = 16, ...props }: ReactIconProps) => {\n const sizeValue = resolveSize(size);\n \n return (\n <svg\n width={sizeValue} height={sizeValue}\n viewBox=\"0 0 24 24\"\n fill=\"none\"\n xmlns=\"http://www.w3.org/2000/svg\"\n {...props}\n >\n <path\n fillRule=\"evenodd\"\n clipRule=\"evenodd\"\n d=\"M2.02994 11.7575C2.61883 9.4019 5.4549 5 12.0001 5C18.5453 5 21.3813 9.4019 21.9702 11.7575L22.0285 11.9906L21.9745 12.2249C21.3836 14.7852 18.5247 19 12.0001 19C5.42044 19 2.6206 14.4091 2.03532 12.2631L1.96655 12.011L2.02994 11.7575ZM4.04308 11.9886C4.61202 13.6329 6.83349 17 12.0001 17C17.2425 17 19.4283 13.8356 19.9639 12.0101C19.4182 10.2828 17.2104 7 12.0001 7C6.81136 7 4.60029 10.2556 4.04308 11.9886Z\"\n fill=\"currentColor\"\n />\n <path\n fillRule=\"evenodd\"\n clipRule=\"evenodd\"\n d=\"M12.0001 10C10.8955 10 10.0001 10.8954 10.0001 12C10.0001 13.1046 10.8955 14 12.0001 14C13.1046 14 14.0001 13.1046 14.0001 12C14.0001 10.8954 13.1046 10 12.0001 10ZM8.00008 12C8.00008 9.79086 9.79094 8 12.0001 8C14.2092 8 16.0001 9.79086 16.0001 12C16.0001 14.2091 14.2092 16 12.0001 16C9.79094 16 8.00008 14.2091 8.00008 12Z\"\n fill=\"currentColor\"\n />\n </svg>\n );\n};\n\nexport default SvgEyeVisible;\n","import * as React from 'react';\nimport type { ReactIconProps } from '../shared/types';\nimport { resolveSize } from '../shared/types';\n\nconst SvgIconSlot = ({ size = 16, ...props }: ReactIconProps) => {\n const sizeValue = resolveSize(size);\n \n return (\n <svg\n width={sizeValue} height={sizeValue}\n viewBox=\"0 0 24 24\"\n fill=\"none\"\n xmlns=\"http://www.w3.org/2000/svg\"\n {...props}\n >\n <path\n d=\"M21 12C21 7.02944 16.9706 3 12 3C7.02944 3 3 7.02944 3 12C3 16.9706 7.02944 21 12 21C16.9706 21 21 16.9706 21 12ZM23 12C23 18.0751 18.0751 23 12 23C5.92487 23 1 18.0751 1 12C1 5.92487 5.92487 1 12 1C18.0751 1 23 5.92487 23 12Z\"\n fill=\"currentColor\"\n />\n </svg>\n );\n};\n\nexport default SvgIconSlot;\n","import * as React from 'react';\nimport type { ReactIconProps } from '../shared/types';\nimport { resolveSize } from '../shared/types';\n\nconst SvgSearch = ({ size = 16, ...props }: ReactIconProps) => {\n const sizeValue = resolveSize(size);\n \n return (\n <svg\n width={sizeValue} height={sizeValue}\n viewBox=\"0 0 24 24\"\n fill=\"none\"\n xmlns=\"http://www.w3.org/2000/svg\"\n {...props}\n >\n <path\n fillRule=\"evenodd\"\n clipRule=\"evenodd\"\n d=\"M11 4C7.13401 4 4 7.13401 4 11C4 14.866 7.13401 18 11 18C14.866 18 18 14.866 18 11C18 7.13401 14.866 4 11 4ZM2 11C2 6.02944 6.02944 2 11 2C15.9706 2 20 6.02944 20 11C20 15.9706 15.9706 20 11 20C6.02944 20 2 15.9706 2 11Z\"\n fill=\"currentColor\"\n />\n <path\n fillRule=\"evenodd\"\n clipRule=\"evenodd\"\n d=\"M15.9929 15.9929C16.3834 15.6024 17.0166 15.6024 17.4071 15.9929L21.7071 20.2929C22.0976 20.6834 22.0976 21.3166 21.7071 21.7071C21.3166 22.0976 20.6834 22.0976 20.2929 21.7071L15.9929 17.4071C15.6024 17.0166 15.6024 16.3834 15.9929 15.9929Z\"\n fill=\"currentColor\"\n />\n </svg>\n );\n};\n\nexport default SvgSearch;\n","import * as React from 'react';\nimport type { ReactIconProps } from '../shared/types';\nimport { resolveSize } from '../shared/types';\n\nconst SvgUser = ({ size = 16, ...props }: ReactIconProps) => {\n const sizeValue = resolveSize(size);\n \n return (\n <svg\n width={sizeValue} height={sizeValue}\n viewBox=\"0 0 24 24\"\n fill=\"none\"\n xmlns=\"http://www.w3.org/2000/svg\"\n {...props}\n >\n <path\n fillRule=\"evenodd\"\n clipRule=\"evenodd\"\n d=\"M5.46447 15.4645C6.40215 14.5268 7.67392 14 9 14H15C16.3261 14 17.5979 14.5268 18.5355 15.4645C19.4732 16.4021 20 17.6739 20 19V21C20 21.5523 19.5523 22 19 22C18.4477 22 18 21.5523 18 21V19C18 18.2044 17.6839 17.4413 17.1213 16.8787C16.5587 16.3161 15.7956 16 15 16H9C8.20435 16 7.44129 16.3161 6.87868 16.8787C6.31607 17.4413 6 18.2043 6 19V21C6 21.5523 5.55228 22 5 22C4.44772 22 4 21.5523 4 21V19C4 17.6739 4.52678 16.4021 5.46447 15.4645Z\"\n fill=\"currentColor\"\n />\n <path\n fillRule=\"evenodd\"\n clipRule=\"evenodd\"\n d=\"M12 4C10.3431 4 9 5.34315 9 7C9 8.65685 10.3431 10 12 10C13.6569 10 15 8.65685 15 7C15 5.34315 13.6569 4 12 4ZM7 7C7 4.23858 9.23858 2 12 2C14.7614 2 17 4.23858 17 7C17 9.76142 14.7614 12 12 12C9.23858 12 7 9.76142 7 7Z\"\n fill=\"currentColor\"\n />\n </svg>\n );\n};\n\nexport default SvgUser;\n","// Auto-generated exports\nexport { default as ArrowLeft } from './ArrowLeft';\nexport { default as Cancel } from './Cancel';\nexport { default as Check } from './Check';\nexport { default as Edit } from './Edit';\nexport { default as EyeHidden } from './EyeHidden';\nexport { default as EyeVisible } from './EyeVisible';\nexport { default as IconSlot } from './IconSlot';\nexport { default as Search } from './Search';\nexport { default as User } from './User';\n\n// Unified Icon component\nexport { default as Icon } from './Icon';\nexport type { IconName, IconProps } from './Icon';\n\n // Export types\nexport type {\n IconSize,\n IconSizeToken,\n ReactIconProps,\n} from '../shared/types';\n\nexport { ICON_SIZES, resolveSize } from '../shared/types';\n","import * as React from 'react';\nimport type { ReactIconProps } from '../shared/types';\n\n/**\n * Icon imports - using dynamic imports for tree-shaking\n * Auto-generated - do not edit manually\n */\n// Icon: arrow-left\n// Icon: cancel\n// Icon: check\n// Icon: edit\n// Icon: eye-hidden\n// Icon: eye-visible\n// Icon: icon-slot\n// Icon: search\n// Icon: user\n\n/**\n * Available icon names\n */\nexport type IconName = 'arrow-left' | 'cancel' | 'check' | 'edit' | 'eye-hidden' | 'eye-visible' | 'icon-slot' | 'search' | 'user';\n\n/**\n * Props for the unified Icon component\n */\nexport interface IconProps extends Omit<ReactIconProps, 'size'> {\n name: IconName;\n size?: ReactIconProps['size'];\n color?: string;\n}\n\n/**\n * Loads an icon component dynamically\n * This pattern allows bundlers to tree-shake unused icons\n * \n * Icons use default exports (export default SvgIconName),\n * so we access .default from the dynamic import result\n */\nfunction loadIcon(name: IconName): Promise<React.ComponentType<any>> {\n switch (name) {\n case 'arrow-left':\n return import('./ArrowLeft').then(m => m.default);\n case 'cancel':\n return import('./Cancel').then(m => m.default);\n case 'check':\n return import('./Check').then(m => m.default);\n case 'edit':\n return import('./Edit').then(m => m.default);\n case 'eye-hidden':\n return import('./EyeHidden').then(m => m.default);\n case 'eye-visible':\n return import('./EyeVisible').then(m => m.default);\n case 'icon-slot':\n return import('./IconSlot').then(m => m.default);\n case 'search':\n return import('./Search').then(m => m.default);\n case 'user':\n return import('./User').then(m => m.default);\n default:\n return Promise.reject(new Error(`Icon \"${name}\" not found`));\n }\n}\n\n/**\n * Unified Icon component that renders icons by name\n * Uses dynamic imports for tree-shaking support\n */\nconst Icon = ({ name, size = 16, color, ...props }: IconProps) => {\n const [IconComponent, setIconComponent] = React.useState<React.ComponentType<any> | null>(null);\n const [loading, setLoading] = React.useState(true);\n const [error, setError] = React.useState<string | null>(null);\n\n React.useEffect(() => {\n setLoading(true);\n setError(null);\n \n loadIcon(name)\n .then((Component) => {\n setIconComponent(() => Component);\n setLoading(false);\n })\n .catch((err) => {\n console.warn(err.message);\n setError(err.message);\n setLoading(false);\n });\n }, [name]);\n\n if (loading) {\n return null; // Consider showing a placeholder\n }\n\n if (error || !IconComponent) {\n return null;\n }\n\n // Apply color via style prop if provided (SVGs use fill=\"currentColor\")\n const style = color \n ? { ...props.style, color } \n : props.style;\n\n return <IconComponent size={size} {...props} style={style} />;\n};\n\nexport default Icon;"],"mappings":";;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;AAyCO,SAAS,YAAY,OAAiB,MAAc;AACzD,MAAI,OAAO,SAAS,UAAU;AAC5B,WAAO;AAAA,EACT;AAEA,SAAO,WAAW,IAAI,KAAK,WAAW;AACxC;AA/CA,IAKa;AALb;AAAA;AAAA;AAKO,IAAM,aAAa;AAAA,MACxB,IAAI;AAAA,MACJ,IAAI;AAAA,MACJ,IAAI;AAAA,MACJ,IAAI;AAAA,MACJ,IAAI;AAAA,IACN;AAAA;AAAA;;;ACXA;AAAA;AAAA;AAAA;AAAA,WAIM,cA2BC;AA/BP;AAAA;AAAA;AAAA,YAAuB;AAEvB;AAEA,IAAM,eAAe,CAAC,EAAE,OAAO,IAAI,GAAG,MAAM,MAAsB;AAChE,YAAM,YAAY,YAAY,IAAI;AAElC,aACE;AAAA,QAAC;AAAA;AAAA,UACD,OAAO;AAAA,UAAW,QAAQ;AAAA,UAC1B,SAAQ;AAAA,UACR,MAAK;AAAA,UACL,OAAM;AAAA,UACL,GAAG;AAAA;AAAA,QAEJ;AAAA,UAAC;AAAA;AAAA,YACC,UAAS;AAAA,YACT,UAAS;AAAA,YACT,GAAE;AAAA,YACF,MAAK;AAAA;AAAA,QACP;AAAA,QACA;AAAA,UAAC;AAAA;AAAA,YACC,UAAS;AAAA,YACT,UAAS;AAAA,YACT,GAAE;AAAA,YACF,MAAK;AAAA;AAAA,QACP;AAAA,MACF;AAAA,IAEF;AAEA,IAAO,oBAAQ;AAAA;AAAA;;;AC/Bf;AAAA;AAAA;AAAA;AAAA,IAAAA,QAIM,WA2BC;AA/BP;AAAA;AAAA;AAAA,IAAAA,SAAuB;AAEvB;AAEA,IAAM,YAAY,CAAC,EAAE,OAAO,IAAI,GAAG,MAAM,MAAsB;AAC7D,YAAM,YAAY,YAAY,IAAI;AAElC,aACE;AAAA,QAAC;AAAA;AAAA,UACD,OAAO;AAAA,UAAW,QAAQ;AAAA,UAC1B,SAAQ;AAAA,UACR,MAAK;AAAA,UACL,OAAM;AAAA,UACL,GAAG;AAAA;AAAA,QAEJ;AAAA,UAAC;AAAA;AAAA,YACC,UAAS;AAAA,YACT,UAAS;AAAA,YACT,GAAE;AAAA,YACF,MAAK;AAAA;AAAA,QACP;AAAA,QACA;AAAA,UAAC;AAAA;AAAA,YACC,UAAS;AAAA,YACT,UAAS;AAAA,YACT,GAAE;AAAA,YACF,MAAK;AAAA;AAAA,QACP;AAAA,MACF;AAAA,IAEF;AAEA,IAAO,iBAAQ;AAAA;AAAA;;;AC/Bf;AAAA;AAAA;AAAA;AAAA,IAAAC,QAIM,UAqBC;AAzBP;AAAA;AAAA;AAAA,IAAAA,SAAuB;AAEvB;AAEA,IAAM,WAAW,CAAC,EAAE,OAAO,IAAI,GAAG,MAAM,MAAsB;AAC5D,YAAM,YAAY,YAAY,IAAI;AAElC,aACE;AAAA,QAAC;AAAA;AAAA,UACD,OAAO;AAAA,UAAW,QAAQ;AAAA,UAC1B,SAAQ;AAAA,UACR,MAAK;AAAA,UACL,OAAM;AAAA,UACL,GAAG;AAAA;AAAA,QAEJ;AAAA,UAAC;AAAA;AAAA,YACC,UAAS;AAAA,YACT,UAAS;AAAA,YACT,GAAE;AAAA,YACF,MAAK;AAAA;AAAA,QACP;AAAA,MACF;AAAA,IAEF;AAEA,IAAO,gBAAQ;AAAA;AAAA;;;ACzBf;AAAA;AAAA;AAAA;AAAA,IAAAC,QAIM,SA2BC;AA/BP;AAAA;AAAA;AAAA,IAAAA,SAAuB;AAEvB;AAEA,IAAM,UAAU,CAAC,EAAE,OAAO,IAAI,GAAG,MAAM,MAAsB;AAC3D,YAAM,YAAY,YAAY,IAAI;AAElC,aACE;AAAA,QAAC;AAAA;AAAA,UACD,OAAO;AAAA,UAAW,QAAQ;AAAA,UAC1B,SAAQ;AAAA,UACR,MAAK;AAAA,UACL,OAAM;AAAA,UACL,GAAG;AAAA;AAAA,QAEJ;AAAA,UAAC;AAAA;AAAA,YACC,UAAS;AAAA,YACT,UAAS;AAAA,YACT,GAAE;AAAA,YACF,MAAK;AAAA;AAAA,QACP;AAAA,QACA;AAAA,UAAC;AAAA;AAAA,YACC,UAAS;AAAA,YACT,UAAS;AAAA,YACT,GAAE;AAAA,YACF,MAAK;AAAA;AAAA,QACP;AAAA,MACF;AAAA,IAEF;AAEA,IAAO,eAAQ;AAAA;AAAA;;;AC/Bf;AAAA;AAAA;AAAA;AAAA,IAAAC,QAIM,cAiCC;AArCP;AAAA;AAAA;AAAA,IAAAA,SAAuB;AAEvB;AAEA,IAAM,eAAe,CAAC,EAAE,OAAO,IAAI,GAAG,MAAM,MAAsB;AAChE,YAAM,YAAY,YAAY,IAAI;AAElC,aACE;AAAA,QAAC;AAAA;AAAA,UACD,OAAO;AAAA,UAAW,QAAQ;AAAA,UAC1B,SAAQ;AAAA,UACR,MAAK;AAAA,UACL,OAAM;AAAA,UACL,GAAG;AAAA;AAAA,QAEJ;AAAA,UAAC;AAAA;AAAA,YACC,UAAS;AAAA,YACT,UAAS;AAAA,YACT,GAAE;AAAA,YACF,MAAK;AAAA;AAAA,QACP;AAAA,QACA;AAAA,UAAC;AAAA;AAAA,YACC,UAAS;AAAA,YACT,UAAS;AAAA,YACT,GAAE;AAAA,YACF,MAAK;AAAA;AAAA,QACP;AAAA,QACA;AAAA,UAAC;AAAA;AAAA,YACC,UAAS;AAAA,YACT,UAAS;AAAA,YACT,GAAE;AAAA,YACF,MAAK;AAAA;AAAA,QACP;AAAA,MACF;AAAA,IAEF;AAEA,IAAO,oBAAQ;AAAA;AAAA;;;ACrCf;AAAA;AAAA;AAAA;AAAA,IAAAC,QAIM,eA2BC;AA/BP;AAAA;AAAA;AAAA,IAAAA,SAAuB;AAEvB;AAEA,IAAM,gBAAgB,CAAC,EAAE,OAAO,IAAI,GAAG,MAAM,MAAsB;AACjE,YAAM,YAAY,YAAY,IAAI;AAElC,aACE;AAAA,QAAC;AAAA;AAAA,UACD,OAAO;AAAA,UAAW,QAAQ;AAAA,UAC1B,SAAQ;AAAA,UACR,MAAK;AAAA,UACL,OAAM;AAAA,UACL,GAAG;AAAA;AAAA,QAEJ;AAAA,UAAC;AAAA;AAAA,YACC,UAAS;AAAA,YACT,UAAS;AAAA,YACT,GAAE;AAAA,YACF,MAAK;AAAA;AAAA,QACP;AAAA,QACA;AAAA,UAAC;AAAA;AAAA,YACC,UAAS;AAAA,YACT,UAAS;AAAA,YACT,GAAE;AAAA,YACF,MAAK;AAAA;AAAA,QACP;AAAA,MACF;AAAA,IAEF;AAEA,IAAO,qBAAQ;AAAA;AAAA;;;AC/Bf;AAAA;AAAA;AAAA;AAAA,IAAAC,QAIM,aAmBC;AAvBP;AAAA;AAAA;AAAA,IAAAA,SAAuB;AAEvB;AAEA,IAAM,cAAc,CAAC,EAAE,OAAO,IAAI,GAAG,MAAM,MAAsB;AAC/D,YAAM,YAAY,YAAY,IAAI;AAElC,aACE;AAAA,QAAC;AAAA;AAAA,UACD,OAAO;AAAA,UAAW,QAAQ;AAAA,UAC1B,SAAQ;AAAA,UACR,MAAK;AAAA,UACL,OAAM;AAAA,UACL,GAAG;AAAA;AAAA,QAEJ;AAAA,UAAC;AAAA;AAAA,YACC,GAAE;AAAA,YACF,MAAK;AAAA;AAAA,QACP;AAAA,MACF;AAAA,IAEF;AAEA,IAAO,mBAAQ;AAAA;AAAA;;;ACvBf;AAAA;AAAA;AAAA;AAAA,IAAAC,QAIM,WA2BC;AA/BP;AAAA;AAAA;AAAA,IAAAA,SAAuB;AAEvB;AAEA,IAAM,YAAY,CAAC,EAAE,OAAO,IAAI,GAAG,MAAM,MAAsB;AAC7D,YAAM,YAAY,YAAY,IAAI;AAElC,aACE;AAAA,QAAC;AAAA;AAAA,UACD,OAAO;AAAA,UAAW,QAAQ;AAAA,UAC1B,SAAQ;AAAA,UACR,MAAK;AAAA,UACL,OAAM;AAAA,UACL,GAAG;AAAA;AAAA,QAEJ;AAAA,UAAC;AAAA;AAAA,YACC,UAAS;AAAA,YACT,UAAS;AAAA,YACT,GAAE;AAAA,YACF,MAAK;AAAA;AAAA,QACP;AAAA,QACA;AAAA,UAAC;AAAA;AAAA,YACC,UAAS;AAAA,YACT,UAAS;AAAA,YACT,GAAE;AAAA,YACF,MAAK;AAAA;AAAA,QACP;AAAA,MACF;AAAA,IAEF;AAEA,IAAO,iBAAQ;AAAA;AAAA;;;AC/Bf;AAAA;AAAA;AAAA;AAAA,IAAAC,QAIM,SA2BC;AA/BP;AAAA;AAAA;AAAA,IAAAA,SAAuB;AAEvB;AAEA,IAAM,UAAU,CAAC,EAAE,OAAO,IAAI,GAAG,MAAM,MAAsB;AAC3D,YAAM,YAAY,YAAY,IAAI;AAElC,aACE;AAAA,QAAC;AAAA;AAAA,UACD,OAAO;AAAA,UAAW,QAAQ;AAAA,UAC1B,SAAQ;AAAA,UACR,MAAK;AAAA,UACL,OAAM;AAAA,UACL,GAAG;AAAA;AAAA,QAEJ;AAAA,UAAC;AAAA;AAAA,YACC,UAAS;AAAA,YACT,UAAS;AAAA,YACT,GAAE;AAAA,YACF,MAAK;AAAA;AAAA,QACP;AAAA,QACA;AAAA,UAAC;AAAA;AAAA,YACC,UAAS;AAAA,YACT,UAAS;AAAA,YACT,GAAE;AAAA,YACF,MAAK;AAAA;AAAA,QACP;AAAA,MACF;AAAA,IAEF;AAEA,IAAO,eAAQ;AAAA;AAAA;;;AC/Bf;AAAA;AAAA;AAAA;AAAA;AAAA;AAAA;AAAA;AAAA;AAAA;AAAA;AAAA;AAAA;AAAA;AAAA;AAAA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;;;ACTA,IAAAC,UAAuB;AAsCvB,SAAS,SAAS,MAAmD;AACnE,UAAQ,MAAM;AAAA,IACZ,KAAK;AACH,aAAO,oEAAsB,KAAK,OAAK,EAAE,OAAO;AAAA,IAClD,KAAK;AACH,aAAO,8DAAmB,KAAK,OAAK,EAAE,OAAO;AAAA,IAC/C,KAAK;AACH,aAAO,4DAAkB,KAAK,OAAK,EAAE,OAAO;AAAA,IAC9C,KAAK;AACH,aAAO,0DAAiB,KAAK,OAAK,EAAE,OAAO;AAAA,IAC7C,KAAK;AACH,aAAO,oEAAsB,KAAK,OAAK,EAAE,OAAO;AAAA,IAClD,KAAK;AACH,aAAO,sEAAuB,KAAK,OAAK,EAAE,OAAO;AAAA,IACnD,KAAK;AACH,aAAO,kEAAqB,KAAK,OAAK,EAAE,OAAO;AAAA,IACjD,KAAK;AACH,aAAO,8DAAmB,KAAK,OAAK,EAAE,OAAO;AAAA,IAC/C,KAAK;AACH,aAAO,0DAAiB,KAAK,OAAK,EAAE,OAAO;AAAA,IAC7C;AACE,aAAO,QAAQ,OAAO,IAAI,MAAM,SAAS,IAAI,aAAa,CAAC;AAAA,EAC/D;AACF;AAMA,IAAM,OAAO,CAAC,EAAE,MAAM,OAAO,IAAI,OAAO,GAAG,MAAM,MAAiB;AAChE,QAAM,CAAC,eAAe,gBAAgB,IAAU,iBAA0C,IAAI;AAC9F,QAAM,CAAC,SAAS,UAAU,IAAU,iBAAS,IAAI;AACjD,QAAM,CAAC,OAAO,QAAQ,IAAU,iBAAwB,IAAI;AAE5D,EAAM,kBAAU,MAAM;AACpB,eAAW,IAAI;AACf,aAAS,IAAI;AAEb,aAAS,IAAI,EACV,KAAK,CAAC,cAAc;AACnB,uBAAiB,MAAM,SAAS;AAChC,iBAAW,KAAK;AAAA,IAClB,CAAC,EACA,MAAM,CAAC,QAAQ;AACd,cAAQ,KAAK,IAAI,OAAO;AACxB,eAAS,IAAI,OAAO;AACpB,iBAAW,KAAK;AAAA,IAClB,CAAC;AAAA,EACL,GAAG,CAAC,IAAI,CAAC;AAET,MAAI,SAAS;AACX,WAAO;AAAA,EACT;AAEA,MAAI,SAAS,CAAC,eAAe;AAC3B,WAAO;AAAA,EACT;AAGA,QAAM,QAAQ,QACV,EAAE,GAAG,MAAM,OAAO,MAAM,IACxB,MAAM;AAEV,SAAO,sCAAC,iBAAc,MAAa,GAAG,OAAO,OAAc;AAC7D;AAEA,IAAO,eAAQ;;;ADlFf;","names":["React","React","React","React","React","React","React","React","React"]}
|
package/dist/react/index.mjs
CHANGED
|
@@ -161,12 +161,59 @@ var init_Check = __esm({
|
|
|
161
161
|
}
|
|
162
162
|
});
|
|
163
163
|
|
|
164
|
+
// src/react/Edit.tsx
|
|
165
|
+
var Edit_exports = {};
|
|
166
|
+
__export(Edit_exports, {
|
|
167
|
+
default: () => Edit_default
|
|
168
|
+
});
|
|
169
|
+
import * as React4 from "react";
|
|
170
|
+
var SvgEdit, Edit_default;
|
|
171
|
+
var init_Edit = __esm({
|
|
172
|
+
"src/react/Edit.tsx"() {
|
|
173
|
+
"use strict";
|
|
174
|
+
init_types();
|
|
175
|
+
SvgEdit = ({ size = 16, ...props }) => {
|
|
176
|
+
const sizeValue = resolveSize(size);
|
|
177
|
+
return /* @__PURE__ */ React4.createElement(
|
|
178
|
+
"svg",
|
|
179
|
+
{
|
|
180
|
+
width: sizeValue,
|
|
181
|
+
height: sizeValue,
|
|
182
|
+
viewBox: "0 0 24 24",
|
|
183
|
+
fill: "none",
|
|
184
|
+
xmlns: "http://www.w3.org/2000/svg",
|
|
185
|
+
...props
|
|
186
|
+
},
|
|
187
|
+
/* @__PURE__ */ React4.createElement(
|
|
188
|
+
"path",
|
|
189
|
+
{
|
|
190
|
+
fillRule: "evenodd",
|
|
191
|
+
clipRule: "evenodd",
|
|
192
|
+
d: "M19.8596 3.11765C19.6197 3.02426 19.3627 2.98143 19.1049 2.99207C18.8471 3.00271 18.5946 3.06656 18.3636 3.1793C18.1325 3.29203 17.9282 3.45107 17.7634 3.64587C17.7455 3.66702 17.7267 3.68742 17.7071 3.70701L4.39491 17.0192L3.42524 20.5747L6.9807 19.605L20.2929 6.2928C20.3158 6.26991 20.3398 6.24815 20.3648 6.22759C20.5625 6.06494 20.7235 5.86358 20.8378 5.6366C20.9522 5.40964 21.0174 5.16186 21.0298 4.90899C21.0422 4.65612 21.0014 4.40333 20.9099 4.16664C20.8183 3.92993 20.6779 3.71425 20.4972 3.53353C20.3165 3.3528 20.0994 3.21103 19.8596 3.11765ZM19.0224 0.993769C19.5557 0.971764 20.088 1.06031 20.5852 1.25394C21.0825 1.44757 21.5343 1.74216 21.9114 2.11932C22.2886 2.4965 22.5829 2.948 22.7752 3.44525C22.9676 3.94252 23.0535 4.47436 23.0274 5.00678C23.0014 5.5392 22.8639 6.06014 22.624 6.53634C22.392 6.99698 22.0692 7.4058 21.6754 7.73877L8.20713 21.207C8.08407 21.3301 7.93104 21.4189 7.76314 21.4647L2.26314 22.9647C1.91693 23.0591 1.54667 22.9608 1.29292 22.707C1.03917 22.4533 0.940838 22.083 1.03526 21.7368L2.53526 16.2368C2.58105 16.0689 2.66986 15.9159 2.79292 15.7928L16.2657 2.31998C16.605 1.92839 17.0203 1.60935 17.4865 1.38187C17.9661 1.14787 18.4891 1.01577 19.0224 0.993769Z",
|
|
193
|
+
fill: "currentColor"
|
|
194
|
+
}
|
|
195
|
+
),
|
|
196
|
+
/* @__PURE__ */ React4.createElement(
|
|
197
|
+
"path",
|
|
198
|
+
{
|
|
199
|
+
fillRule: "evenodd",
|
|
200
|
+
clipRule: "evenodd",
|
|
201
|
+
d: "M14.2929 4.29289C14.6834 3.90237 15.3166 3.90237 15.7071 4.29289L19.7071 8.29289C20.0976 8.68342 20.0976 9.31658 19.7071 9.70711C19.3166 10.0976 18.6834 10.0976 18.2929 9.70711L14.2929 5.70711C13.9024 5.31658 13.9024 4.68342 14.2929 4.29289Z",
|
|
202
|
+
fill: "currentColor"
|
|
203
|
+
}
|
|
204
|
+
)
|
|
205
|
+
);
|
|
206
|
+
};
|
|
207
|
+
Edit_default = SvgEdit;
|
|
208
|
+
}
|
|
209
|
+
});
|
|
210
|
+
|
|
164
211
|
// src/react/EyeHidden.tsx
|
|
165
212
|
var EyeHidden_exports = {};
|
|
166
213
|
__export(EyeHidden_exports, {
|
|
167
214
|
default: () => EyeHidden_default
|
|
168
215
|
});
|
|
169
|
-
import * as
|
|
216
|
+
import * as React5 from "react";
|
|
170
217
|
var SvgEyeHidden, EyeHidden_default;
|
|
171
218
|
var init_EyeHidden = __esm({
|
|
172
219
|
"src/react/EyeHidden.tsx"() {
|
|
@@ -174,7 +221,7 @@ var init_EyeHidden = __esm({
|
|
|
174
221
|
init_types();
|
|
175
222
|
SvgEyeHidden = ({ size = 16, ...props }) => {
|
|
176
223
|
const sizeValue = resolveSize(size);
|
|
177
|
-
return /* @__PURE__ */
|
|
224
|
+
return /* @__PURE__ */ React5.createElement(
|
|
178
225
|
"svg",
|
|
179
226
|
{
|
|
180
227
|
width: sizeValue,
|
|
@@ -184,7 +231,7 @@ var init_EyeHidden = __esm({
|
|
|
184
231
|
xmlns: "http://www.w3.org/2000/svg",
|
|
185
232
|
...props
|
|
186
233
|
},
|
|
187
|
-
/* @__PURE__ */
|
|
234
|
+
/* @__PURE__ */ React5.createElement(
|
|
188
235
|
"path",
|
|
189
236
|
{
|
|
190
237
|
fillRule: "evenodd",
|
|
@@ -193,7 +240,7 @@ var init_EyeHidden = __esm({
|
|
|
193
240
|
fill: "currentColor"
|
|
194
241
|
}
|
|
195
242
|
),
|
|
196
|
-
/* @__PURE__ */
|
|
243
|
+
/* @__PURE__ */ React5.createElement(
|
|
197
244
|
"path",
|
|
198
245
|
{
|
|
199
246
|
fillRule: "evenodd",
|
|
@@ -202,7 +249,7 @@ var init_EyeHidden = __esm({
|
|
|
202
249
|
fill: "currentColor"
|
|
203
250
|
}
|
|
204
251
|
),
|
|
205
|
-
/* @__PURE__ */
|
|
252
|
+
/* @__PURE__ */ React5.createElement(
|
|
206
253
|
"path",
|
|
207
254
|
{
|
|
208
255
|
fillRule: "evenodd",
|
|
@@ -222,7 +269,7 @@ var EyeVisible_exports = {};
|
|
|
222
269
|
__export(EyeVisible_exports, {
|
|
223
270
|
default: () => EyeVisible_default
|
|
224
271
|
});
|
|
225
|
-
import * as
|
|
272
|
+
import * as React6 from "react";
|
|
226
273
|
var SvgEyeVisible, EyeVisible_default;
|
|
227
274
|
var init_EyeVisible = __esm({
|
|
228
275
|
"src/react/EyeVisible.tsx"() {
|
|
@@ -230,7 +277,7 @@ var init_EyeVisible = __esm({
|
|
|
230
277
|
init_types();
|
|
231
278
|
SvgEyeVisible = ({ size = 16, ...props }) => {
|
|
232
279
|
const sizeValue = resolveSize(size);
|
|
233
|
-
return /* @__PURE__ */
|
|
280
|
+
return /* @__PURE__ */ React6.createElement(
|
|
234
281
|
"svg",
|
|
235
282
|
{
|
|
236
283
|
width: sizeValue,
|
|
@@ -240,7 +287,7 @@ var init_EyeVisible = __esm({
|
|
|
240
287
|
xmlns: "http://www.w3.org/2000/svg",
|
|
241
288
|
...props
|
|
242
289
|
},
|
|
243
|
-
/* @__PURE__ */
|
|
290
|
+
/* @__PURE__ */ React6.createElement(
|
|
244
291
|
"path",
|
|
245
292
|
{
|
|
246
293
|
fillRule: "evenodd",
|
|
@@ -249,7 +296,7 @@ var init_EyeVisible = __esm({
|
|
|
249
296
|
fill: "currentColor"
|
|
250
297
|
}
|
|
251
298
|
),
|
|
252
|
-
/* @__PURE__ */
|
|
299
|
+
/* @__PURE__ */ React6.createElement(
|
|
253
300
|
"path",
|
|
254
301
|
{
|
|
255
302
|
fillRule: "evenodd",
|
|
@@ -269,7 +316,7 @@ var IconSlot_exports = {};
|
|
|
269
316
|
__export(IconSlot_exports, {
|
|
270
317
|
default: () => IconSlot_default
|
|
271
318
|
});
|
|
272
|
-
import * as
|
|
319
|
+
import * as React7 from "react";
|
|
273
320
|
var SvgIconSlot, IconSlot_default;
|
|
274
321
|
var init_IconSlot = __esm({
|
|
275
322
|
"src/react/IconSlot.tsx"() {
|
|
@@ -277,7 +324,7 @@ var init_IconSlot = __esm({
|
|
|
277
324
|
init_types();
|
|
278
325
|
SvgIconSlot = ({ size = 16, ...props }) => {
|
|
279
326
|
const sizeValue = resolveSize(size);
|
|
280
|
-
return /* @__PURE__ */
|
|
327
|
+
return /* @__PURE__ */ React7.createElement(
|
|
281
328
|
"svg",
|
|
282
329
|
{
|
|
283
330
|
width: sizeValue,
|
|
@@ -287,7 +334,7 @@ var init_IconSlot = __esm({
|
|
|
287
334
|
xmlns: "http://www.w3.org/2000/svg",
|
|
288
335
|
...props
|
|
289
336
|
},
|
|
290
|
-
/* @__PURE__ */
|
|
337
|
+
/* @__PURE__ */ React7.createElement(
|
|
291
338
|
"path",
|
|
292
339
|
{
|
|
293
340
|
d: "M21 12C21 7.02944 16.9706 3 12 3C7.02944 3 3 7.02944 3 12C3 16.9706 7.02944 21 12 21C16.9706 21 21 16.9706 21 12ZM23 12C23 18.0751 18.0751 23 12 23C5.92487 23 1 18.0751 1 12C1 5.92487 5.92487 1 12 1C18.0751 1 23 5.92487 23 12Z",
|
|
@@ -305,7 +352,7 @@ var Search_exports = {};
|
|
|
305
352
|
__export(Search_exports, {
|
|
306
353
|
default: () => Search_default
|
|
307
354
|
});
|
|
308
|
-
import * as
|
|
355
|
+
import * as React8 from "react";
|
|
309
356
|
var SvgSearch, Search_default;
|
|
310
357
|
var init_Search = __esm({
|
|
311
358
|
"src/react/Search.tsx"() {
|
|
@@ -313,7 +360,7 @@ var init_Search = __esm({
|
|
|
313
360
|
init_types();
|
|
314
361
|
SvgSearch = ({ size = 16, ...props }) => {
|
|
315
362
|
const sizeValue = resolveSize(size);
|
|
316
|
-
return /* @__PURE__ */
|
|
363
|
+
return /* @__PURE__ */ React8.createElement(
|
|
317
364
|
"svg",
|
|
318
365
|
{
|
|
319
366
|
width: sizeValue,
|
|
@@ -323,7 +370,7 @@ var init_Search = __esm({
|
|
|
323
370
|
xmlns: "http://www.w3.org/2000/svg",
|
|
324
371
|
...props
|
|
325
372
|
},
|
|
326
|
-
/* @__PURE__ */
|
|
373
|
+
/* @__PURE__ */ React8.createElement(
|
|
327
374
|
"path",
|
|
328
375
|
{
|
|
329
376
|
fillRule: "evenodd",
|
|
@@ -332,7 +379,7 @@ var init_Search = __esm({
|
|
|
332
379
|
fill: "currentColor"
|
|
333
380
|
}
|
|
334
381
|
),
|
|
335
|
-
/* @__PURE__ */
|
|
382
|
+
/* @__PURE__ */ React8.createElement(
|
|
336
383
|
"path",
|
|
337
384
|
{
|
|
338
385
|
fillRule: "evenodd",
|
|
@@ -352,7 +399,7 @@ var User_exports = {};
|
|
|
352
399
|
__export(User_exports, {
|
|
353
400
|
default: () => User_default
|
|
354
401
|
});
|
|
355
|
-
import * as
|
|
402
|
+
import * as React9 from "react";
|
|
356
403
|
var SvgUser, User_default;
|
|
357
404
|
var init_User = __esm({
|
|
358
405
|
"src/react/User.tsx"() {
|
|
@@ -360,7 +407,7 @@ var init_User = __esm({
|
|
|
360
407
|
init_types();
|
|
361
408
|
SvgUser = ({ size = 16, ...props }) => {
|
|
362
409
|
const sizeValue = resolveSize(size);
|
|
363
|
-
return /* @__PURE__ */
|
|
410
|
+
return /* @__PURE__ */ React9.createElement(
|
|
364
411
|
"svg",
|
|
365
412
|
{
|
|
366
413
|
width: sizeValue,
|
|
@@ -370,7 +417,7 @@ var init_User = __esm({
|
|
|
370
417
|
xmlns: "http://www.w3.org/2000/svg",
|
|
371
418
|
...props
|
|
372
419
|
},
|
|
373
|
-
/* @__PURE__ */
|
|
420
|
+
/* @__PURE__ */ React9.createElement(
|
|
374
421
|
"path",
|
|
375
422
|
{
|
|
376
423
|
fillRule: "evenodd",
|
|
@@ -379,7 +426,7 @@ var init_User = __esm({
|
|
|
379
426
|
fill: "currentColor"
|
|
380
427
|
}
|
|
381
428
|
),
|
|
382
|
-
/* @__PURE__ */
|
|
429
|
+
/* @__PURE__ */ React9.createElement(
|
|
383
430
|
"path",
|
|
384
431
|
{
|
|
385
432
|
fillRule: "evenodd",
|
|
@@ -398,6 +445,7 @@ var init_User = __esm({
|
|
|
398
445
|
init_ArrowLeft();
|
|
399
446
|
init_Cancel();
|
|
400
447
|
init_Check();
|
|
448
|
+
init_Edit();
|
|
401
449
|
init_EyeHidden();
|
|
402
450
|
init_EyeVisible();
|
|
403
451
|
init_IconSlot();
|
|
@@ -405,7 +453,7 @@ init_Search();
|
|
|
405
453
|
init_User();
|
|
406
454
|
|
|
407
455
|
// src/react/Icon.tsx
|
|
408
|
-
import * as
|
|
456
|
+
import * as React10 from "react";
|
|
409
457
|
function loadIcon(name) {
|
|
410
458
|
switch (name) {
|
|
411
459
|
case "arrow-left":
|
|
@@ -414,6 +462,8 @@ function loadIcon(name) {
|
|
|
414
462
|
return Promise.resolve().then(() => (init_Cancel(), Cancel_exports)).then((m) => m.default);
|
|
415
463
|
case "check":
|
|
416
464
|
return Promise.resolve().then(() => (init_Check(), Check_exports)).then((m) => m.default);
|
|
465
|
+
case "edit":
|
|
466
|
+
return Promise.resolve().then(() => (init_Edit(), Edit_exports)).then((m) => m.default);
|
|
417
467
|
case "eye-hidden":
|
|
418
468
|
return Promise.resolve().then(() => (init_EyeHidden(), EyeHidden_exports)).then((m) => m.default);
|
|
419
469
|
case "eye-visible":
|
|
@@ -429,10 +479,10 @@ function loadIcon(name) {
|
|
|
429
479
|
}
|
|
430
480
|
}
|
|
431
481
|
var Icon = ({ name, size = 16, color, ...props }) => {
|
|
432
|
-
const [IconComponent, setIconComponent] =
|
|
433
|
-
const [loading, setLoading] =
|
|
434
|
-
const [error, setError] =
|
|
435
|
-
|
|
482
|
+
const [IconComponent, setIconComponent] = React10.useState(null);
|
|
483
|
+
const [loading, setLoading] = React10.useState(true);
|
|
484
|
+
const [error, setError] = React10.useState(null);
|
|
485
|
+
React10.useEffect(() => {
|
|
436
486
|
setLoading(true);
|
|
437
487
|
setError(null);
|
|
438
488
|
loadIcon(name).then((Component) => {
|
|
@@ -451,7 +501,7 @@ var Icon = ({ name, size = 16, color, ...props }) => {
|
|
|
451
501
|
return null;
|
|
452
502
|
}
|
|
453
503
|
const style = color ? { ...props.style, color } : props.style;
|
|
454
|
-
return /* @__PURE__ */
|
|
504
|
+
return /* @__PURE__ */ React10.createElement(IconComponent, { size, ...props, style });
|
|
455
505
|
};
|
|
456
506
|
var Icon_default = Icon;
|
|
457
507
|
|
|
@@ -461,6 +511,7 @@ export {
|
|
|
461
511
|
ArrowLeft_default as ArrowLeft,
|
|
462
512
|
Cancel_default as Cancel,
|
|
463
513
|
Check_default as Check,
|
|
514
|
+
Edit_default as Edit,
|
|
464
515
|
EyeHidden_default as EyeHidden,
|
|
465
516
|
EyeVisible_default as EyeVisible,
|
|
466
517
|
ICON_SIZES,
|
package/dist/react/index.mjs.map
CHANGED
|
@@ -1 +1 @@
|
|
|
1
|
-
{"version":3,"sources":["../../src/shared/types.ts","../../src/react/ArrowLeft.tsx","../../src/react/Cancel.tsx","../../src/react/Check.tsx","../../src/react/EyeHidden.tsx","../../src/react/EyeVisible.tsx","../../src/react/IconSlot.tsx","../../src/react/Search.tsx","../../src/react/User.tsx","../../src/react/index.ts","../../src/react/Icon.tsx"],"sourcesContent":["export type IconSize = number | 'xs' | 'sm' | 'md' | 'lg' | 'xl';\n\n/**\n * Icon size presets\n */\nexport const ICON_SIZES = {\n xs: 8,\n sm: 12,\n md: 16,\n lg: 20,\n xl: 24,\n} as const;\n\n/**\n * Icon size token type\n */\nexport type IconSizeToken = keyof typeof ICON_SIZES;\n\n/**\n * Props for React (web) icons\n */\nexport interface ReactIconProps extends React.SVGProps<SVGSVGElement> {\n size?: IconSize;\n}\n\n/**\n * Props for React Native icons\n */\nexport interface NativeIconProps {\n size?: IconSize;\n width?: number;\n height?: number;\n color?: string;\n style?: any;\n}\n\n/**\n * Resolves an icon size to a numeric value\n * @param size - Size value or token\n * @returns Numeric size in pixels\n */\nexport function resolveSize(size: IconSize = 'lg'): number {\n if (typeof size === 'number') {\n return size;\n }\n \n return ICON_SIZES[size] ?? ICON_SIZES.lg;\n}\n","import * as React from 'react';\nimport type { ReactIconProps } from '../shared/types';\nimport { resolveSize } from '../shared/types';\n\nconst SvgArrowLeft = ({ size = 16, ...props }: ReactIconProps) => {\n const sizeValue = resolveSize(size);\n \n return (\n <svg\n width={sizeValue} height={sizeValue}\n viewBox=\"0 0 24 24\"\n fill=\"none\"\n xmlns=\"http://www.w3.org/2000/svg\"\n {...props}\n >\n <path\n fillRule=\"evenodd\"\n clipRule=\"evenodd\"\n d=\"M12.7071 4.29289C13.0976 4.68342 13.0976 5.31658 12.7071 5.70711L6.41421 12L12.7071 18.2929C13.0976 18.6834 13.0976 19.3166 12.7071 19.7071C12.3166 20.0976 11.6834 20.0976 11.2929 19.7071L4.29289 12.7071C3.90237 12.3166 3.90237 11.6834 4.29289 11.2929L11.2929 4.29289C11.6834 3.90237 12.3166 3.90237 12.7071 4.29289Z\"\n fill=\"currentColor\"\n />\n <path\n fillRule=\"evenodd\"\n clipRule=\"evenodd\"\n d=\"M4 12C4 11.4477 4.44772 11 5 11H19C19.5523 11 20 11.4477 20 12C20 12.5523 19.5523 13 19 13H5C4.44772 13 4 12.5523 4 12Z\"\n fill=\"currentColor\"\n />\n </svg>\n );\n};\n\nexport default SvgArrowLeft;\n","import * as React from 'react';\nimport type { ReactIconProps } from '../shared/types';\nimport { resolveSize } from '../shared/types';\n\nconst SvgCancel = ({ size = 16, ...props }: ReactIconProps) => {\n const sizeValue = resolveSize(size);\n \n return (\n <svg\n width={sizeValue} height={sizeValue}\n viewBox=\"0 0 24 24\"\n fill=\"none\"\n xmlns=\"http://www.w3.org/2000/svg\"\n {...props}\n >\n <path\n fillRule=\"evenodd\"\n clipRule=\"evenodd\"\n d=\"M18.7071 5.29289C19.0976 5.68342 19.0976 6.31658 18.7071 6.70711L6.70711 18.7071C6.31658 19.0976 5.68342 19.0976 5.29289 18.7071C4.90237 18.3166 4.90237 17.6834 5.29289 17.2929L17.2929 5.29289C17.6834 4.90237 18.3166 4.90237 18.7071 5.29289Z\"\n fill=\"currentColor\"\n />\n <path\n fillRule=\"evenodd\"\n clipRule=\"evenodd\"\n d=\"M5.29289 5.29289C5.68342 4.90237 6.31658 4.90237 6.70711 5.29289L18.7071 17.2929C19.0976 17.6834 19.0976 18.3166 18.7071 18.7071C18.3166 19.0976 17.6834 19.0976 17.2929 18.7071L5.29289 6.70711C4.90237 6.31658 4.90237 5.68342 5.29289 5.29289Z\"\n fill=\"currentColor\"\n />\n </svg>\n );\n};\n\nexport default SvgCancel;\n","import * as React from 'react';\nimport type { ReactIconProps } from '../shared/types';\nimport { resolveSize } from '../shared/types';\n\nconst SvgCheck = ({ size = 16, ...props }: ReactIconProps) => {\n const sizeValue = resolveSize(size);\n \n return (\n <svg\n width={sizeValue} height={sizeValue}\n viewBox=\"0 0 16 16\"\n fill=\"none\"\n xmlns=\"http://www.w3.org/2000/svg\"\n {...props}\n >\n <path\n fillRule=\"evenodd\"\n clipRule=\"evenodd\"\n d=\"M13.8047 3.52858C14.0651 3.78892 14.0651 4.21103 13.8047 4.47138L6.4714 11.8047C6.21106 12.0651 5.78894 12.0651 5.5286 11.8047L2.19526 8.47138C1.93491 8.21103 1.93491 7.78892 2.19526 7.52858C2.45561 7.26823 2.87772 7.26823 3.13807 7.52858L6 10.3905L12.8619 3.52858C13.1223 3.26823 13.5444 3.26823 13.8047 3.52858Z\"\n fill=\"currentColor\"\n />\n </svg>\n );\n};\n\nexport default SvgCheck;\n","import * as React from 'react';\nimport type { ReactIconProps } from '../shared/types';\nimport { resolveSize } from '../shared/types';\n\nconst SvgEyeHidden = ({ size = 16, ...props }: ReactIconProps) => {\n const sizeValue = resolveSize(size);\n \n return (\n <svg\n width={sizeValue} height={sizeValue}\n viewBox=\"0 0 24 24\"\n fill=\"none\"\n xmlns=\"http://www.w3.org/2000/svg\"\n {...props}\n >\n <path\n fillRule=\"evenodd\"\n clipRule=\"evenodd\"\n d=\"M2.02994 11.7575C2.61883 9.4019 5.4549 5 12.0001 5C18.5453 5 21.3813 9.4019 21.9702 11.7575L22.0285 11.9907L21.9745 12.2249C21.3836 14.7852 18.5247 19 12.0001 19C5.42044 19 2.6206 14.4091 2.03532 12.2631L1.96655 12.011L2.02994 11.7575ZM4.04308 11.9886C4.61202 13.6329 6.83349 17 12.0001 17C17.2425 17 19.4283 13.8356 19.9639 12.0101C19.4182 10.2828 17.2104 7 12.0001 7C6.81136 7 4.60029 10.2556 4.04308 11.9886Z\"\n fill=\"currentColor\"\n />\n <path\n fillRule=\"evenodd\"\n clipRule=\"evenodd\"\n d=\"M12.0001 10C10.8955 10 10.0001 10.8954 10.0001 12C10.0001 13.1046 10.8955 14 12.0001 14C13.1046 14 14.0001 13.1046 14.0001 12C14.0001 10.8954 13.1046 10 12.0001 10ZM8.00008 12C8.00008 9.79086 9.79094 8 12.0001 8C14.2092 8 16.0001 9.79086 16.0001 12C16.0001 14.2091 14.2092 16 12.0001 16C9.79094 16 8.00008 14.2091 8.00008 12Z\"\n fill=\"currentColor\"\n />\n <path\n fillRule=\"evenodd\"\n clipRule=\"evenodd\"\n d=\"M20.7072 3.29289C21.0977 3.68342 21.0977 4.31658 20.7072 4.70711L4.70719 20.7071C4.31666 21.0976 3.6835 21.0976 3.29297 20.7071C2.90245 20.3166 2.90245 19.6834 3.29297 19.2929L19.293 3.29289C19.6835 2.90237 20.3167 2.90237 20.7072 3.29289Z\"\n fill=\"currentColor\"\n />\n </svg>\n );\n};\n\nexport default SvgEyeHidden;\n","import * as React from 'react';\nimport type { ReactIconProps } from '../shared/types';\nimport { resolveSize } from '../shared/types';\n\nconst SvgEyeVisible = ({ size = 16, ...props }: ReactIconProps) => {\n const sizeValue = resolveSize(size);\n \n return (\n <svg\n width={sizeValue} height={sizeValue}\n viewBox=\"0 0 24 24\"\n fill=\"none\"\n xmlns=\"http://www.w3.org/2000/svg\"\n {...props}\n >\n <path\n fillRule=\"evenodd\"\n clipRule=\"evenodd\"\n d=\"M2.02994 11.7575C2.61883 9.4019 5.4549 5 12.0001 5C18.5453 5 21.3813 9.4019 21.9702 11.7575L22.0285 11.9906L21.9745 12.2249C21.3836 14.7852 18.5247 19 12.0001 19C5.42044 19 2.6206 14.4091 2.03532 12.2631L1.96655 12.011L2.02994 11.7575ZM4.04308 11.9886C4.61202 13.6329 6.83349 17 12.0001 17C17.2425 17 19.4283 13.8356 19.9639 12.0101C19.4182 10.2828 17.2104 7 12.0001 7C6.81136 7 4.60029 10.2556 4.04308 11.9886Z\"\n fill=\"currentColor\"\n />\n <path\n fillRule=\"evenodd\"\n clipRule=\"evenodd\"\n d=\"M12.0001 10C10.8955 10 10.0001 10.8954 10.0001 12C10.0001 13.1046 10.8955 14 12.0001 14C13.1046 14 14.0001 13.1046 14.0001 12C14.0001 10.8954 13.1046 10 12.0001 10ZM8.00008 12C8.00008 9.79086 9.79094 8 12.0001 8C14.2092 8 16.0001 9.79086 16.0001 12C16.0001 14.2091 14.2092 16 12.0001 16C9.79094 16 8.00008 14.2091 8.00008 12Z\"\n fill=\"currentColor\"\n />\n </svg>\n );\n};\n\nexport default SvgEyeVisible;\n","import * as React from 'react';\nimport type { ReactIconProps } from '../shared/types';\nimport { resolveSize } from '../shared/types';\n\nconst SvgIconSlot = ({ size = 16, ...props }: ReactIconProps) => {\n const sizeValue = resolveSize(size);\n \n return (\n <svg\n width={sizeValue} height={sizeValue}\n viewBox=\"0 0 24 24\"\n fill=\"none\"\n xmlns=\"http://www.w3.org/2000/svg\"\n {...props}\n >\n <path\n d=\"M21 12C21 7.02944 16.9706 3 12 3C7.02944 3 3 7.02944 3 12C3 16.9706 7.02944 21 12 21C16.9706 21 21 16.9706 21 12ZM23 12C23 18.0751 18.0751 23 12 23C5.92487 23 1 18.0751 1 12C1 5.92487 5.92487 1 12 1C18.0751 1 23 5.92487 23 12Z\"\n fill=\"currentColor\"\n />\n </svg>\n );\n};\n\nexport default SvgIconSlot;\n","import * as React from 'react';\nimport type { ReactIconProps } from '../shared/types';\nimport { resolveSize } from '../shared/types';\n\nconst SvgSearch = ({ size = 16, ...props }: ReactIconProps) => {\n const sizeValue = resolveSize(size);\n \n return (\n <svg\n width={sizeValue} height={sizeValue}\n viewBox=\"0 0 24 24\"\n fill=\"none\"\n xmlns=\"http://www.w3.org/2000/svg\"\n {...props}\n >\n <path\n fillRule=\"evenodd\"\n clipRule=\"evenodd\"\n d=\"M11 4C7.13401 4 4 7.13401 4 11C4 14.866 7.13401 18 11 18C14.866 18 18 14.866 18 11C18 7.13401 14.866 4 11 4ZM2 11C2 6.02944 6.02944 2 11 2C15.9706 2 20 6.02944 20 11C20 15.9706 15.9706 20 11 20C6.02944 20 2 15.9706 2 11Z\"\n fill=\"currentColor\"\n />\n <path\n fillRule=\"evenodd\"\n clipRule=\"evenodd\"\n d=\"M15.9929 15.9929C16.3834 15.6024 17.0166 15.6024 17.4071 15.9929L21.7071 20.2929C22.0976 20.6834 22.0976 21.3166 21.7071 21.7071C21.3166 22.0976 20.6834 22.0976 20.2929 21.7071L15.9929 17.4071C15.6024 17.0166 15.6024 16.3834 15.9929 15.9929Z\"\n fill=\"currentColor\"\n />\n </svg>\n );\n};\n\nexport default SvgSearch;\n","import * as React from 'react';\nimport type { ReactIconProps } from '../shared/types';\nimport { resolveSize } from '../shared/types';\n\nconst SvgUser = ({ size = 16, ...props }: ReactIconProps) => {\n const sizeValue = resolveSize(size);\n \n return (\n <svg\n width={sizeValue} height={sizeValue}\n viewBox=\"0 0 24 24\"\n fill=\"none\"\n xmlns=\"http://www.w3.org/2000/svg\"\n {...props}\n >\n <path\n fillRule=\"evenodd\"\n clipRule=\"evenodd\"\n d=\"M5.46447 15.4645C6.40215 14.5268 7.67392 14 9 14H15C16.3261 14 17.5979 14.5268 18.5355 15.4645C19.4732 16.4021 20 17.6739 20 19V21C20 21.5523 19.5523 22 19 22C18.4477 22 18 21.5523 18 21V19C18 18.2044 17.6839 17.4413 17.1213 16.8787C16.5587 16.3161 15.7956 16 15 16H9C8.20435 16 7.44129 16.3161 6.87868 16.8787C6.31607 17.4413 6 18.2043 6 19V21C6 21.5523 5.55228 22 5 22C4.44772 22 4 21.5523 4 21V19C4 17.6739 4.52678 16.4021 5.46447 15.4645Z\"\n fill=\"currentColor\"\n />\n <path\n fillRule=\"evenodd\"\n clipRule=\"evenodd\"\n d=\"M12 4C10.3431 4 9 5.34315 9 7C9 8.65685 10.3431 10 12 10C13.6569 10 15 8.65685 15 7C15 5.34315 13.6569 4 12 4ZM7 7C7 4.23858 9.23858 2 12 2C14.7614 2 17 4.23858 17 7C17 9.76142 14.7614 12 12 12C9.23858 12 7 9.76142 7 7Z\"\n fill=\"currentColor\"\n />\n </svg>\n );\n};\n\nexport default SvgUser;\n","// Auto-generated exports\nexport { default as ArrowLeft } from './ArrowLeft';\nexport { default as Cancel } from './Cancel';\nexport { default as Check } from './Check';\nexport { default as EyeHidden } from './EyeHidden';\nexport { default as EyeVisible } from './EyeVisible';\nexport { default as IconSlot } from './IconSlot';\nexport { default as Search } from './Search';\nexport { default as User } from './User';\n\n// Unified Icon component\nexport { default as Icon } from './Icon';\nexport type { IconName, IconProps } from './Icon';\n\n // Export types\nexport type {\n IconSize,\n IconSizeToken,\n ReactIconProps,\n} from '../shared/types';\n\nexport { ICON_SIZES, resolveSize } from '../shared/types';\n","import * as React from 'react';\nimport type { ReactIconProps } from '../shared/types';\n\n/**\n * Icon imports - using dynamic imports for tree-shaking\n * Auto-generated - do not edit manually\n */\n// Icon: arrow-left\n// Icon: cancel\n// Icon: check\n// Icon: eye-hidden\n// Icon: eye-visible\n// Icon: icon-slot\n// Icon: search\n// Icon: user\n\n/**\n * Available icon names\n */\nexport type IconName = 'arrow-left' | 'cancel' | 'check' | 'eye-hidden' | 'eye-visible' | 'icon-slot' | 'search' | 'user';\n\n/**\n * Props for the unified Icon component\n */\nexport interface IconProps extends Omit<ReactIconProps, 'size'> {\n name: IconName;\n size?: ReactIconProps['size'];\n color?: string;\n}\n\n/**\n * Loads an icon component dynamically\n * This pattern allows bundlers to tree-shake unused icons\n * \n * Icons use default exports (export default SvgIconName),\n * so we access .default from the dynamic import result\n */\nfunction loadIcon(name: IconName): Promise<React.ComponentType<any>> {\n switch (name) {\n case 'arrow-left':\n return import('./ArrowLeft').then(m => m.default);\n case 'cancel':\n return import('./Cancel').then(m => m.default);\n case 'check':\n return import('./Check').then(m => m.default);\n case 'eye-hidden':\n return import('./EyeHidden').then(m => m.default);\n case 'eye-visible':\n return import('./EyeVisible').then(m => m.default);\n case 'icon-slot':\n return import('./IconSlot').then(m => m.default);\n case 'search':\n return import('./Search').then(m => m.default);\n case 'user':\n return import('./User').then(m => m.default);\n default:\n return Promise.reject(new Error(`Icon \"${name}\" not found`));\n }\n}\n\n/**\n * Unified Icon component that renders icons by name\n * Uses dynamic imports for tree-shaking support\n */\nconst Icon = ({ name, size = 16, color, ...props }: IconProps) => {\n const [IconComponent, setIconComponent] = React.useState<React.ComponentType<any> | null>(null);\n const [loading, setLoading] = React.useState(true);\n const [error, setError] = React.useState<string | null>(null);\n\n React.useEffect(() => {\n setLoading(true);\n setError(null);\n \n loadIcon(name)\n .then((Component) => {\n setIconComponent(() => Component);\n setLoading(false);\n })\n .catch((err) => {\n console.warn(err.message);\n setError(err.message);\n setLoading(false);\n });\n }, [name]);\n\n if (loading) {\n return null; // Consider showing a placeholder\n }\n\n if (error || !IconComponent) {\n return null;\n }\n\n // Apply color via style prop if provided (SVGs use fill=\"currentColor\")\n const style = color \n ? { ...props.style, color } \n : props.style;\n\n return <IconComponent size={size} {...props} style={style} />;\n};\n\nexport default Icon;"],"mappings":"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","names":["React","React","React","React","React","React","React","React"]}
|
|
1
|
+
{"version":3,"sources":["../../src/shared/types.ts","../../src/react/ArrowLeft.tsx","../../src/react/Cancel.tsx","../../src/react/Check.tsx","../../src/react/Edit.tsx","../../src/react/EyeHidden.tsx","../../src/react/EyeVisible.tsx","../../src/react/IconSlot.tsx","../../src/react/Search.tsx","../../src/react/User.tsx","../../src/react/index.ts","../../src/react/Icon.tsx"],"sourcesContent":["export type IconSize = number | 'xs' | 'sm' | 'md' | 'lg' | 'xl';\n\n/**\n * Icon size presets\n */\nexport const ICON_SIZES = {\n xs: 8,\n sm: 12,\n md: 16,\n lg: 20,\n xl: 24,\n} as const;\n\n/**\n * Icon size token type\n */\nexport type IconSizeToken = keyof typeof ICON_SIZES;\n\n/**\n * Props for React (web) icons\n */\nexport interface ReactIconProps extends React.SVGProps<SVGSVGElement> {\n size?: IconSize;\n}\n\n/**\n * Props for React Native icons\n */\nexport interface NativeIconProps {\n size?: IconSize;\n width?: number;\n height?: number;\n color?: string;\n style?: any;\n}\n\n/**\n * Resolves an icon size to a numeric value\n * @param size - Size value or token\n * @returns Numeric size in pixels\n */\nexport function resolveSize(size: IconSize = 'lg'): number {\n if (typeof size === 'number') {\n return size;\n }\n \n return ICON_SIZES[size] ?? ICON_SIZES.lg;\n}\n","import * as React from 'react';\nimport type { ReactIconProps } from '../shared/types';\nimport { resolveSize } from '../shared/types';\n\nconst SvgArrowLeft = ({ size = 16, ...props }: ReactIconProps) => {\n const sizeValue = resolveSize(size);\n \n return (\n <svg\n width={sizeValue} height={sizeValue}\n viewBox=\"0 0 24 24\"\n fill=\"none\"\n xmlns=\"http://www.w3.org/2000/svg\"\n {...props}\n >\n <path\n fillRule=\"evenodd\"\n clipRule=\"evenodd\"\n d=\"M12.7071 4.29289C13.0976 4.68342 13.0976 5.31658 12.7071 5.70711L6.41421 12L12.7071 18.2929C13.0976 18.6834 13.0976 19.3166 12.7071 19.7071C12.3166 20.0976 11.6834 20.0976 11.2929 19.7071L4.29289 12.7071C3.90237 12.3166 3.90237 11.6834 4.29289 11.2929L11.2929 4.29289C11.6834 3.90237 12.3166 3.90237 12.7071 4.29289Z\"\n fill=\"currentColor\"\n />\n <path\n fillRule=\"evenodd\"\n clipRule=\"evenodd\"\n d=\"M4 12C4 11.4477 4.44772 11 5 11H19C19.5523 11 20 11.4477 20 12C20 12.5523 19.5523 13 19 13H5C4.44772 13 4 12.5523 4 12Z\"\n fill=\"currentColor\"\n />\n </svg>\n );\n};\n\nexport default SvgArrowLeft;\n","import * as React from 'react';\nimport type { ReactIconProps } from '../shared/types';\nimport { resolveSize } from '../shared/types';\n\nconst SvgCancel = ({ size = 16, ...props }: ReactIconProps) => {\n const sizeValue = resolveSize(size);\n \n return (\n <svg\n width={sizeValue} height={sizeValue}\n viewBox=\"0 0 24 24\"\n fill=\"none\"\n xmlns=\"http://www.w3.org/2000/svg\"\n {...props}\n >\n <path\n fillRule=\"evenodd\"\n clipRule=\"evenodd\"\n d=\"M18.7071 5.29289C19.0976 5.68342 19.0976 6.31658 18.7071 6.70711L6.70711 18.7071C6.31658 19.0976 5.68342 19.0976 5.29289 18.7071C4.90237 18.3166 4.90237 17.6834 5.29289 17.2929L17.2929 5.29289C17.6834 4.90237 18.3166 4.90237 18.7071 5.29289Z\"\n fill=\"currentColor\"\n />\n <path\n fillRule=\"evenodd\"\n clipRule=\"evenodd\"\n d=\"M5.29289 5.29289C5.68342 4.90237 6.31658 4.90237 6.70711 5.29289L18.7071 17.2929C19.0976 17.6834 19.0976 18.3166 18.7071 18.7071C18.3166 19.0976 17.6834 19.0976 17.2929 18.7071L5.29289 6.70711C4.90237 6.31658 4.90237 5.68342 5.29289 5.29289Z\"\n fill=\"currentColor\"\n />\n </svg>\n );\n};\n\nexport default SvgCancel;\n","import * as React from 'react';\nimport type { ReactIconProps } from '../shared/types';\nimport { resolveSize } from '../shared/types';\n\nconst SvgCheck = ({ size = 16, ...props }: ReactIconProps) => {\n const sizeValue = resolveSize(size);\n \n return (\n <svg\n width={sizeValue} height={sizeValue}\n viewBox=\"0 0 16 16\"\n fill=\"none\"\n xmlns=\"http://www.w3.org/2000/svg\"\n {...props}\n >\n <path\n fillRule=\"evenodd\"\n clipRule=\"evenodd\"\n d=\"M13.8047 3.52858C14.0651 3.78892 14.0651 4.21103 13.8047 4.47138L6.4714 11.8047C6.21106 12.0651 5.78894 12.0651 5.5286 11.8047L2.19526 8.47138C1.93491 8.21103 1.93491 7.78892 2.19526 7.52858C2.45561 7.26823 2.87772 7.26823 3.13807 7.52858L6 10.3905L12.8619 3.52858C13.1223 3.26823 13.5444 3.26823 13.8047 3.52858Z\"\n fill=\"currentColor\"\n />\n </svg>\n );\n};\n\nexport default SvgCheck;\n","import * as React from 'react';\nimport type { ReactIconProps } from '../shared/types';\nimport { resolveSize } from '../shared/types';\n\nconst SvgEdit = ({ size = 16, ...props }: ReactIconProps) => {\n const sizeValue = resolveSize(size);\n \n return (\n <svg\n width={sizeValue} height={sizeValue}\n viewBox=\"0 0 24 24\"\n fill=\"none\"\n xmlns=\"http://www.w3.org/2000/svg\"\n {...props}\n >\n <path\n fillRule=\"evenodd\"\n clipRule=\"evenodd\"\n d=\"M19.8596 3.11765C19.6197 3.02426 19.3627 2.98143 19.1049 2.99207C18.8471 3.00271 18.5946 3.06656 18.3636 3.1793C18.1325 3.29203 17.9282 3.45107 17.7634 3.64587C17.7455 3.66702 17.7267 3.68742 17.7071 3.70701L4.39491 17.0192L3.42524 20.5747L6.9807 19.605L20.2929 6.2928C20.3158 6.26991 20.3398 6.24815 20.3648 6.22759C20.5625 6.06494 20.7235 5.86358 20.8378 5.6366C20.9522 5.40964 21.0174 5.16186 21.0298 4.90899C21.0422 4.65612 21.0014 4.40333 20.9099 4.16664C20.8183 3.92993 20.6779 3.71425 20.4972 3.53353C20.3165 3.3528 20.0994 3.21103 19.8596 3.11765ZM19.0224 0.993769C19.5557 0.971764 20.088 1.06031 20.5852 1.25394C21.0825 1.44757 21.5343 1.74216 21.9114 2.11932C22.2886 2.4965 22.5829 2.948 22.7752 3.44525C22.9676 3.94252 23.0535 4.47436 23.0274 5.00678C23.0014 5.5392 22.8639 6.06014 22.624 6.53634C22.392 6.99698 22.0692 7.4058 21.6754 7.73877L8.20713 21.207C8.08407 21.3301 7.93104 21.4189 7.76314 21.4647L2.26314 22.9647C1.91693 23.0591 1.54667 22.9608 1.29292 22.707C1.03917 22.4533 0.940838 22.083 1.03526 21.7368L2.53526 16.2368C2.58105 16.0689 2.66986 15.9159 2.79292 15.7928L16.2657 2.31998C16.605 1.92839 17.0203 1.60935 17.4865 1.38187C17.9661 1.14787 18.4891 1.01577 19.0224 0.993769Z\"\n fill=\"currentColor\"\n />\n <path\n fillRule=\"evenodd\"\n clipRule=\"evenodd\"\n d=\"M14.2929 4.29289C14.6834 3.90237 15.3166 3.90237 15.7071 4.29289L19.7071 8.29289C20.0976 8.68342 20.0976 9.31658 19.7071 9.70711C19.3166 10.0976 18.6834 10.0976 18.2929 9.70711L14.2929 5.70711C13.9024 5.31658 13.9024 4.68342 14.2929 4.29289Z\"\n fill=\"currentColor\"\n />\n </svg>\n );\n};\n\nexport default SvgEdit;\n","import * as React from 'react';\nimport type { ReactIconProps } from '../shared/types';\nimport { resolveSize } from '../shared/types';\n\nconst SvgEyeHidden = ({ size = 16, ...props }: ReactIconProps) => {\n const sizeValue = resolveSize(size);\n \n return (\n <svg\n width={sizeValue} height={sizeValue}\n viewBox=\"0 0 24 24\"\n fill=\"none\"\n xmlns=\"http://www.w3.org/2000/svg\"\n {...props}\n >\n <path\n fillRule=\"evenodd\"\n clipRule=\"evenodd\"\n d=\"M2.02994 11.7575C2.61883 9.4019 5.4549 5 12.0001 5C18.5453 5 21.3813 9.4019 21.9702 11.7575L22.0285 11.9907L21.9745 12.2249C21.3836 14.7852 18.5247 19 12.0001 19C5.42044 19 2.6206 14.4091 2.03532 12.2631L1.96655 12.011L2.02994 11.7575ZM4.04308 11.9886C4.61202 13.6329 6.83349 17 12.0001 17C17.2425 17 19.4283 13.8356 19.9639 12.0101C19.4182 10.2828 17.2104 7 12.0001 7C6.81136 7 4.60029 10.2556 4.04308 11.9886Z\"\n fill=\"currentColor\"\n />\n <path\n fillRule=\"evenodd\"\n clipRule=\"evenodd\"\n d=\"M12.0001 10C10.8955 10 10.0001 10.8954 10.0001 12C10.0001 13.1046 10.8955 14 12.0001 14C13.1046 14 14.0001 13.1046 14.0001 12C14.0001 10.8954 13.1046 10 12.0001 10ZM8.00008 12C8.00008 9.79086 9.79094 8 12.0001 8C14.2092 8 16.0001 9.79086 16.0001 12C16.0001 14.2091 14.2092 16 12.0001 16C9.79094 16 8.00008 14.2091 8.00008 12Z\"\n fill=\"currentColor\"\n />\n <path\n fillRule=\"evenodd\"\n clipRule=\"evenodd\"\n d=\"M20.7072 3.29289C21.0977 3.68342 21.0977 4.31658 20.7072 4.70711L4.70719 20.7071C4.31666 21.0976 3.6835 21.0976 3.29297 20.7071C2.90245 20.3166 2.90245 19.6834 3.29297 19.2929L19.293 3.29289C19.6835 2.90237 20.3167 2.90237 20.7072 3.29289Z\"\n fill=\"currentColor\"\n />\n </svg>\n );\n};\n\nexport default SvgEyeHidden;\n","import * as React from 'react';\nimport type { ReactIconProps } from '../shared/types';\nimport { resolveSize } from '../shared/types';\n\nconst SvgEyeVisible = ({ size = 16, ...props }: ReactIconProps) => {\n const sizeValue = resolveSize(size);\n \n return (\n <svg\n width={sizeValue} height={sizeValue}\n viewBox=\"0 0 24 24\"\n fill=\"none\"\n xmlns=\"http://www.w3.org/2000/svg\"\n {...props}\n >\n <path\n fillRule=\"evenodd\"\n clipRule=\"evenodd\"\n d=\"M2.02994 11.7575C2.61883 9.4019 5.4549 5 12.0001 5C18.5453 5 21.3813 9.4019 21.9702 11.7575L22.0285 11.9906L21.9745 12.2249C21.3836 14.7852 18.5247 19 12.0001 19C5.42044 19 2.6206 14.4091 2.03532 12.2631L1.96655 12.011L2.02994 11.7575ZM4.04308 11.9886C4.61202 13.6329 6.83349 17 12.0001 17C17.2425 17 19.4283 13.8356 19.9639 12.0101C19.4182 10.2828 17.2104 7 12.0001 7C6.81136 7 4.60029 10.2556 4.04308 11.9886Z\"\n fill=\"currentColor\"\n />\n <path\n fillRule=\"evenodd\"\n clipRule=\"evenodd\"\n d=\"M12.0001 10C10.8955 10 10.0001 10.8954 10.0001 12C10.0001 13.1046 10.8955 14 12.0001 14C13.1046 14 14.0001 13.1046 14.0001 12C14.0001 10.8954 13.1046 10 12.0001 10ZM8.00008 12C8.00008 9.79086 9.79094 8 12.0001 8C14.2092 8 16.0001 9.79086 16.0001 12C16.0001 14.2091 14.2092 16 12.0001 16C9.79094 16 8.00008 14.2091 8.00008 12Z\"\n fill=\"currentColor\"\n />\n </svg>\n );\n};\n\nexport default SvgEyeVisible;\n","import * as React from 'react';\nimport type { ReactIconProps } from '../shared/types';\nimport { resolveSize } from '../shared/types';\n\nconst SvgIconSlot = ({ size = 16, ...props }: ReactIconProps) => {\n const sizeValue = resolveSize(size);\n \n return (\n <svg\n width={sizeValue} height={sizeValue}\n viewBox=\"0 0 24 24\"\n fill=\"none\"\n xmlns=\"http://www.w3.org/2000/svg\"\n {...props}\n >\n <path\n d=\"M21 12C21 7.02944 16.9706 3 12 3C7.02944 3 3 7.02944 3 12C3 16.9706 7.02944 21 12 21C16.9706 21 21 16.9706 21 12ZM23 12C23 18.0751 18.0751 23 12 23C5.92487 23 1 18.0751 1 12C1 5.92487 5.92487 1 12 1C18.0751 1 23 5.92487 23 12Z\"\n fill=\"currentColor\"\n />\n </svg>\n );\n};\n\nexport default SvgIconSlot;\n","import * as React from 'react';\nimport type { ReactIconProps } from '../shared/types';\nimport { resolveSize } from '../shared/types';\n\nconst SvgSearch = ({ size = 16, ...props }: ReactIconProps) => {\n const sizeValue = resolveSize(size);\n \n return (\n <svg\n width={sizeValue} height={sizeValue}\n viewBox=\"0 0 24 24\"\n fill=\"none\"\n xmlns=\"http://www.w3.org/2000/svg\"\n {...props}\n >\n <path\n fillRule=\"evenodd\"\n clipRule=\"evenodd\"\n d=\"M11 4C7.13401 4 4 7.13401 4 11C4 14.866 7.13401 18 11 18C14.866 18 18 14.866 18 11C18 7.13401 14.866 4 11 4ZM2 11C2 6.02944 6.02944 2 11 2C15.9706 2 20 6.02944 20 11C20 15.9706 15.9706 20 11 20C6.02944 20 2 15.9706 2 11Z\"\n fill=\"currentColor\"\n />\n <path\n fillRule=\"evenodd\"\n clipRule=\"evenodd\"\n d=\"M15.9929 15.9929C16.3834 15.6024 17.0166 15.6024 17.4071 15.9929L21.7071 20.2929C22.0976 20.6834 22.0976 21.3166 21.7071 21.7071C21.3166 22.0976 20.6834 22.0976 20.2929 21.7071L15.9929 17.4071C15.6024 17.0166 15.6024 16.3834 15.9929 15.9929Z\"\n fill=\"currentColor\"\n />\n </svg>\n );\n};\n\nexport default SvgSearch;\n","import * as React from 'react';\nimport type { ReactIconProps } from '../shared/types';\nimport { resolveSize } from '../shared/types';\n\nconst SvgUser = ({ size = 16, ...props }: ReactIconProps) => {\n const sizeValue = resolveSize(size);\n \n return (\n <svg\n width={sizeValue} height={sizeValue}\n viewBox=\"0 0 24 24\"\n fill=\"none\"\n xmlns=\"http://www.w3.org/2000/svg\"\n {...props}\n >\n <path\n fillRule=\"evenodd\"\n clipRule=\"evenodd\"\n d=\"M5.46447 15.4645C6.40215 14.5268 7.67392 14 9 14H15C16.3261 14 17.5979 14.5268 18.5355 15.4645C19.4732 16.4021 20 17.6739 20 19V21C20 21.5523 19.5523 22 19 22C18.4477 22 18 21.5523 18 21V19C18 18.2044 17.6839 17.4413 17.1213 16.8787C16.5587 16.3161 15.7956 16 15 16H9C8.20435 16 7.44129 16.3161 6.87868 16.8787C6.31607 17.4413 6 18.2043 6 19V21C6 21.5523 5.55228 22 5 22C4.44772 22 4 21.5523 4 21V19C4 17.6739 4.52678 16.4021 5.46447 15.4645Z\"\n fill=\"currentColor\"\n />\n <path\n fillRule=\"evenodd\"\n clipRule=\"evenodd\"\n d=\"M12 4C10.3431 4 9 5.34315 9 7C9 8.65685 10.3431 10 12 10C13.6569 10 15 8.65685 15 7C15 5.34315 13.6569 4 12 4ZM7 7C7 4.23858 9.23858 2 12 2C14.7614 2 17 4.23858 17 7C17 9.76142 14.7614 12 12 12C9.23858 12 7 9.76142 7 7Z\"\n fill=\"currentColor\"\n />\n </svg>\n );\n};\n\nexport default SvgUser;\n","// Auto-generated exports\nexport { default as ArrowLeft } from './ArrowLeft';\nexport { default as Cancel } from './Cancel';\nexport { default as Check } from './Check';\nexport { default as Edit } from './Edit';\nexport { default as EyeHidden } from './EyeHidden';\nexport { default as EyeVisible } from './EyeVisible';\nexport { default as IconSlot } from './IconSlot';\nexport { default as Search } from './Search';\nexport { default as User } from './User';\n\n// Unified Icon component\nexport { default as Icon } from './Icon';\nexport type { IconName, IconProps } from './Icon';\n\n // Export types\nexport type {\n IconSize,\n IconSizeToken,\n ReactIconProps,\n} from '../shared/types';\n\nexport { ICON_SIZES, resolveSize } from '../shared/types';\n","import * as React from 'react';\nimport type { ReactIconProps } from '../shared/types';\n\n/**\n * Icon imports - using dynamic imports for tree-shaking\n * Auto-generated - do not edit manually\n */\n// Icon: arrow-left\n// Icon: cancel\n// Icon: check\n// Icon: edit\n// Icon: eye-hidden\n// Icon: eye-visible\n// Icon: icon-slot\n// Icon: search\n// Icon: user\n\n/**\n * Available icon names\n */\nexport type IconName = 'arrow-left' | 'cancel' | 'check' | 'edit' | 'eye-hidden' | 'eye-visible' | 'icon-slot' | 'search' | 'user';\n\n/**\n * Props for the unified Icon component\n */\nexport interface IconProps extends Omit<ReactIconProps, 'size'> {\n name: IconName;\n size?: ReactIconProps['size'];\n color?: string;\n}\n\n/**\n * Loads an icon component dynamically\n * This pattern allows bundlers to tree-shake unused icons\n * \n * Icons use default exports (export default SvgIconName),\n * so we access .default from the dynamic import result\n */\nfunction loadIcon(name: IconName): Promise<React.ComponentType<any>> {\n switch (name) {\n case 'arrow-left':\n return import('./ArrowLeft').then(m => m.default);\n case 'cancel':\n return import('./Cancel').then(m => m.default);\n case 'check':\n return import('./Check').then(m => m.default);\n case 'edit':\n return import('./Edit').then(m => m.default);\n case 'eye-hidden':\n return import('./EyeHidden').then(m => m.default);\n case 'eye-visible':\n return import('./EyeVisible').then(m => m.default);\n case 'icon-slot':\n return import('./IconSlot').then(m => m.default);\n case 'search':\n return import('./Search').then(m => m.default);\n case 'user':\n return import('./User').then(m => m.default);\n default:\n return Promise.reject(new Error(`Icon \"${name}\" not found`));\n }\n}\n\n/**\n * Unified Icon component that renders icons by name\n * Uses dynamic imports for tree-shaking support\n */\nconst Icon = ({ name, size = 16, color, ...props }: IconProps) => {\n const [IconComponent, setIconComponent] = React.useState<React.ComponentType<any> | null>(null);\n const [loading, setLoading] = React.useState(true);\n const [error, setError] = React.useState<string | null>(null);\n\n React.useEffect(() => {\n setLoading(true);\n setError(null);\n \n loadIcon(name)\n .then((Component) => {\n setIconComponent(() => Component);\n setLoading(false);\n })\n .catch((err) => {\n console.warn(err.message);\n setError(err.message);\n setLoading(false);\n });\n }, [name]);\n\n if (loading) {\n return null; // Consider showing a placeholder\n }\n\n if (error || !IconComponent) {\n return null;\n }\n\n // Apply color via style prop if provided (SVGs use fill=\"currentColor\")\n const style = color \n ? { ...props.style, color } \n : props.style;\n\n return <IconComponent size={size} {...props} style={style} />;\n};\n\nexport default Icon;"],"mappings":"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","names":["React","React","React","React","React","React","React","React","React"]}
|
package/package.json
CHANGED
|
@@ -1,6 +1,6 @@
|
|
|
1
1
|
{
|
|
2
2
|
"name": "huspy-icons",
|
|
3
|
-
"version": "0.1.
|
|
3
|
+
"version": "0.1.8",
|
|
4
4
|
"description": "Cross-platform icon package for Huspy - React and React Native compatible",
|
|
5
5
|
"author": "Huspy",
|
|
6
6
|
"license": "MIT",
|
|
@@ -46,7 +46,11 @@
|
|
|
46
46
|
"gen": "npm run svgo && npm run gen:react && npm run gen:native && npm run gen:types",
|
|
47
47
|
"build": "tsup",
|
|
48
48
|
"prepare": "npm run svgo && npm run gen:react && npm run gen:native && npm run gen:types && npm run build",
|
|
49
|
-
"typecheck": "tsc --noEmit"
|
|
49
|
+
"typecheck": "tsc --noEmit",
|
|
50
|
+
"version:patch": "node scripts/bump-version.js patch",
|
|
51
|
+
"version:minor": "node scripts/bump-version.js minor",
|
|
52
|
+
"version:major": "node scripts/bump-version.js major",
|
|
53
|
+
"postversion": "git push && git push --tags"
|
|
50
54
|
},
|
|
51
55
|
"devDependencies": {
|
|
52
56
|
"@svgr/cli": "^8.1.0",
|
package/src/native/glyphMap.ts
CHANGED
|
@@ -4,7 +4,7 @@
|
|
|
4
4
|
/**
|
|
5
5
|
* Available icon names in the HuspyIcons font
|
|
6
6
|
*/
|
|
7
|
-
export type IconName = 'user' | 'search' | 'icon-slot' | 'eye-visible' | 'eye-hidden' | 'check' | 'cancel' | 'arrow-left';
|
|
7
|
+
export type IconName = 'user' | 'search' | 'icon-slot' | 'eye-visible' | 'eye-hidden' | 'edit' | 'check' | 'cancel' | 'arrow-left';
|
|
8
8
|
|
|
9
9
|
/**
|
|
10
10
|
* Mapping of icon names to unicode codepoints
|
|
@@ -16,9 +16,10 @@ export const glyphMap: Record<IconName, number> = {
|
|
|
16
16
|
"icon-slot": 61699,
|
|
17
17
|
"eye-visible": 61700,
|
|
18
18
|
"eye-hidden": 61701,
|
|
19
|
-
"
|
|
20
|
-
"
|
|
21
|
-
"
|
|
19
|
+
"edit": 61702,
|
|
20
|
+
"check": 61703,
|
|
21
|
+
"cancel": 61704,
|
|
22
|
+
"arrow-left": 61705
|
|
22
23
|
};
|
|
23
24
|
|
|
24
25
|
/**
|
|
@@ -0,0 +1,32 @@
|
|
|
1
|
+
import * as React from 'react';
|
|
2
|
+
import type { ReactIconProps } from '../shared/types';
|
|
3
|
+
import { resolveSize } from '../shared/types';
|
|
4
|
+
|
|
5
|
+
const SvgEdit = ({ size = 16, ...props }: ReactIconProps) => {
|
|
6
|
+
const sizeValue = resolveSize(size);
|
|
7
|
+
|
|
8
|
+
return (
|
|
9
|
+
<svg
|
|
10
|
+
width={sizeValue} height={sizeValue}
|
|
11
|
+
viewBox="0 0 24 24"
|
|
12
|
+
fill="none"
|
|
13
|
+
xmlns="http://www.w3.org/2000/svg"
|
|
14
|
+
{...props}
|
|
15
|
+
>
|
|
16
|
+
<path
|
|
17
|
+
fillRule="evenodd"
|
|
18
|
+
clipRule="evenodd"
|
|
19
|
+
d="M19.8596 3.11765C19.6197 3.02426 19.3627 2.98143 19.1049 2.99207C18.8471 3.00271 18.5946 3.06656 18.3636 3.1793C18.1325 3.29203 17.9282 3.45107 17.7634 3.64587C17.7455 3.66702 17.7267 3.68742 17.7071 3.70701L4.39491 17.0192L3.42524 20.5747L6.9807 19.605L20.2929 6.2928C20.3158 6.26991 20.3398 6.24815 20.3648 6.22759C20.5625 6.06494 20.7235 5.86358 20.8378 5.6366C20.9522 5.40964 21.0174 5.16186 21.0298 4.90899C21.0422 4.65612 21.0014 4.40333 20.9099 4.16664C20.8183 3.92993 20.6779 3.71425 20.4972 3.53353C20.3165 3.3528 20.0994 3.21103 19.8596 3.11765ZM19.0224 0.993769C19.5557 0.971764 20.088 1.06031 20.5852 1.25394C21.0825 1.44757 21.5343 1.74216 21.9114 2.11932C22.2886 2.4965 22.5829 2.948 22.7752 3.44525C22.9676 3.94252 23.0535 4.47436 23.0274 5.00678C23.0014 5.5392 22.8639 6.06014 22.624 6.53634C22.392 6.99698 22.0692 7.4058 21.6754 7.73877L8.20713 21.207C8.08407 21.3301 7.93104 21.4189 7.76314 21.4647L2.26314 22.9647C1.91693 23.0591 1.54667 22.9608 1.29292 22.707C1.03917 22.4533 0.940838 22.083 1.03526 21.7368L2.53526 16.2368C2.58105 16.0689 2.66986 15.9159 2.79292 15.7928L16.2657 2.31998C16.605 1.92839 17.0203 1.60935 17.4865 1.38187C17.9661 1.14787 18.4891 1.01577 19.0224 0.993769Z"
|
|
20
|
+
fill="currentColor"
|
|
21
|
+
/>
|
|
22
|
+
<path
|
|
23
|
+
fillRule="evenodd"
|
|
24
|
+
clipRule="evenodd"
|
|
25
|
+
d="M14.2929 4.29289C14.6834 3.90237 15.3166 3.90237 15.7071 4.29289L19.7071 8.29289C20.0976 8.68342 20.0976 9.31658 19.7071 9.70711C19.3166 10.0976 18.6834 10.0976 18.2929 9.70711L14.2929 5.70711C13.9024 5.31658 13.9024 4.68342 14.2929 4.29289Z"
|
|
26
|
+
fill="currentColor"
|
|
27
|
+
/>
|
|
28
|
+
</svg>
|
|
29
|
+
);
|
|
30
|
+
};
|
|
31
|
+
|
|
32
|
+
export default SvgEdit;
|
package/src/react/Icon.tsx
CHANGED
|
@@ -8,6 +8,7 @@ import type { ReactIconProps } from '../shared/types';
|
|
|
8
8
|
// Icon: arrow-left
|
|
9
9
|
// Icon: cancel
|
|
10
10
|
// Icon: check
|
|
11
|
+
// Icon: edit
|
|
11
12
|
// Icon: eye-hidden
|
|
12
13
|
// Icon: eye-visible
|
|
13
14
|
// Icon: icon-slot
|
|
@@ -17,7 +18,7 @@ import type { ReactIconProps } from '../shared/types';
|
|
|
17
18
|
/**
|
|
18
19
|
* Available icon names
|
|
19
20
|
*/
|
|
20
|
-
export type IconName = 'arrow-left' | 'cancel' | 'check' | 'eye-hidden' | 'eye-visible' | 'icon-slot' | 'search' | 'user';
|
|
21
|
+
export type IconName = 'arrow-left' | 'cancel' | 'check' | 'edit' | 'eye-hidden' | 'eye-visible' | 'icon-slot' | 'search' | 'user';
|
|
21
22
|
|
|
22
23
|
/**
|
|
23
24
|
* Props for the unified Icon component
|
|
@@ -43,6 +44,8 @@ function loadIcon(name: IconName): Promise<React.ComponentType<any>> {
|
|
|
43
44
|
return import('./Cancel').then(m => m.default);
|
|
44
45
|
case 'check':
|
|
45
46
|
return import('./Check').then(m => m.default);
|
|
47
|
+
case 'edit':
|
|
48
|
+
return import('./Edit').then(m => m.default);
|
|
46
49
|
case 'eye-hidden':
|
|
47
50
|
return import('./EyeHidden').then(m => m.default);
|
|
48
51
|
case 'eye-visible':
|
package/src/react/index.ts
CHANGED
|
@@ -2,6 +2,7 @@
|
|
|
2
2
|
export { default as ArrowLeft } from './ArrowLeft';
|
|
3
3
|
export { default as Cancel } from './Cancel';
|
|
4
4
|
export { default as Check } from './Check';
|
|
5
|
+
export { default as Edit } from './Edit';
|
|
5
6
|
export { default as EyeHidden } from './EyeHidden';
|
|
6
7
|
export { default as EyeVisible } from './EyeVisible';
|
|
7
8
|
export { default as IconSlot } from './IconSlot';
|
package/src/react/index.tsx
CHANGED
|
@@ -1,6 +1,7 @@
|
|
|
1
1
|
export { default as ArrowLeft } from './ArrowLeft';
|
|
2
2
|
export { default as Cancel } from './Cancel';
|
|
3
3
|
export { default as Check } from './Check';
|
|
4
|
+
export { default as Edit } from './Edit';
|
|
4
5
|
export { default as EyeHidden } from './EyeHidden';
|
|
5
6
|
export { default as EyeVisible } from './EyeVisible';
|
|
6
7
|
export { default as IconSlot } from './IconSlot';
|