@nice2dev/icons 1.3.15 → 1.3.16
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/CHANGELOG.md +9 -0
- package/dist/cjs/NiceDesktopIconExporter.js +688 -599
- package/dist/cjs/NiceFaviconGenerator.js +603 -417
- package/dist/cjs/NiceIconPicker.js +788 -508
- package/dist/cjs/NiceIconPreview.js +246 -188
- package/dist/cjs/NiceIconSetCreator.js +683 -552
- package/dist/cjs/NiceIconStacker.js +547 -171
- package/dist/cjs/NiceIconValue.js +27 -35
- package/dist/cjs/NtdIconBadge.js +384 -360
- package/dist/cjs/NtdIconMorph.js +419 -354
- package/dist/cjs/NtdStateMorph.js +150 -147
- package/dist/cjs/advancedIconSearch.js +373 -510
- package/dist/cjs/animationControls.js +518 -642
- package/dist/cjs/client.js +12 -15
- package/dist/cjs/createIcon.js +349 -251
- package/dist/cjs/design-tokens.js +324 -390
- package/dist/cjs/figmaExport.js +162 -257
- package/dist/cjs/figmaSync.js +234 -316
- package/dist/cjs/headless-ui.js +240 -368
- package/dist/cjs/iconAnalytics.js +337 -393
- package/dist/cjs/iconHtml.js +64 -86
- package/dist/cjs/iconMetadata.js +392 -472
- package/dist/cjs/iconParts.js +120 -90
- package/dist/cjs/iconStack.js +136 -155
- package/dist/cjs/iconStyles.js +1609 -504
- package/dist/cjs/iconValue.js +359 -430
- package/dist/cjs/icons/accessibility.js +1119 -134
- package/dist/cjs/icons/actions.js +1290 -330
- package/dist/cjs/icons/ai.js +1424 -144
- package/dist/cjs/icons/brand.js +1344 -172
- package/dist/cjs/icons/business.js +903 -193
- package/dist/cjs/icons/devtech.js +1656 -227
- package/dist/cjs/icons/ecommerce.js +802 -111
- package/dist/cjs/icons/education.js +1345 -199
- package/dist/cjs/icons/files.js +1597 -328
- package/dist/cjs/icons/fintech.js +793 -104
- package/dist/cjs/icons/food.js +1507 -153
- package/dist/cjs/icons/fun.js +786 -109
- package/dist/cjs/icons/gaming.js +916 -170
- package/dist/cjs/icons/health.js +623 -112
- package/dist/cjs/icons/index.js +32 -35
- package/dist/cjs/icons/input.js +282 -83
- package/dist/cjs/icons/legal.js +1065 -122
- package/dist/cjs/icons/media.js +1061 -267
- package/dist/cjs/icons/navigation.js +387 -122
- package/dist/cjs/icons/omniverk.js +747 -90
- package/dist/cjs/icons/realestate.js +1520 -193
- package/dist/cjs/icons/saas.js +867 -98
- package/dist/cjs/icons/science.js +1451 -202
- package/dist/cjs/icons/shapes.js +1316 -308
- package/dist/cjs/icons/smarthome.js +786 -90
- package/dist/cjs/icons/social.js +591 -59
- package/dist/cjs/icons/sports.js +1225 -133
- package/dist/cjs/icons/sustainability.js +1211 -139
- package/dist/cjs/icons/travel.js +1470 -148
- package/dist/cjs/icons/ui.js +1508 -315
- package/dist/cjs/icons/weather.js +1160 -173
- package/dist/cjs/index.js +566 -568
- package/dist/cjs/lottieIntegration.js +261 -266
- package/dist/cjs/nicetodev-icons.css +1 -1
- package/dist/cjs/particleEffects.js +270 -251
- package/dist/cjs/resolver.js +229 -284
- package/dist/cjs/rsc.js +175 -193
- package/dist/cjs/sharpen.js +73 -130
- package/dist/cjs/smilAnimations.js +371 -165
- package/dist/cjs/stacking.js +87 -122
- package/dist/cjs/tailwind-plugin.js +280 -320
- package/dist/cjs/types.js +46 -72
- package/dist/cjs/utilities.js +163 -324
- package/dist/cjs/variantProps.js +12 -52
- package/dist/esm/NiceDesktopIconExporter.js +671 -598
- package/dist/esm/NiceFaviconGenerator.js +583 -416
- package/dist/esm/NiceIconPicker.js +789 -507
- package/dist/esm/NiceIconPreview.js +247 -187
- package/dist/esm/NiceIconSetCreator.js +685 -551
- package/dist/esm/NiceIconStacker.js +549 -170
- package/dist/esm/NiceIconValue.js +29 -34
- package/dist/esm/NtdIconBadge.js +388 -359
- package/dist/esm/NtdIconMorph.js +423 -353
- package/dist/esm/NtdStateMorph.js +152 -146
- package/dist/esm/advancedIconSearch.js +391 -509
- package/dist/esm/animationControls.js +527 -641
- package/dist/esm/client.js +48 -10
- package/dist/esm/createIcon.js +350 -250
- package/dist/esm/design-tokens.js +334 -387
- package/dist/esm/figmaExport.js +170 -256
- package/dist/esm/figmaSync.js +237 -315
- package/dist/esm/headless-ui.js +254 -365
- package/dist/esm/iconAnalytics.js +342 -392
- package/dist/esm/iconHtml.js +67 -85
- package/dist/esm/iconMetadata.js +404 -471
- package/dist/esm/iconParts.js +125 -89
- package/dist/esm/iconStack.js +145 -154
- package/dist/esm/iconStyles.js +1620 -503
- package/dist/esm/iconValue.js +361 -429
- package/dist/esm/icons/accessibility.js +1133 -133
- package/dist/esm/icons/actions.js +1320 -329
- package/dist/esm/icons/ai.js +1441 -143
- package/dist/esm/icons/brand.js +1351 -171
- package/dist/esm/icons/business.js +931 -201
- package/dist/esm/icons/devtech.js +1687 -226
- package/dist/esm/icons/ecommerce.js +816 -110
- package/dist/esm/icons/education.js +1364 -198
- package/dist/esm/icons/files.js +1628 -327
- package/dist/esm/icons/fintech.js +807 -103
- package/dist/esm/icons/food.js +1524 -152
- package/dist/esm/icons/fun.js +801 -108
- package/dist/esm/icons/gaming.js +933 -169
- package/dist/esm/icons/health.js +636 -111
- package/dist/esm/icons/index.js +596 -32
- package/dist/esm/icons/input.js +326 -82
- package/dist/esm/icons/legal.js +1079 -121
- package/dist/esm/icons/media.js +1086 -266
- package/dist/esm/icons/navigation.js +401 -121
- package/dist/esm/icons/omniverk.js +759 -89
- package/dist/esm/icons/realestate.js +1544 -198
- package/dist/esm/icons/saas.js +880 -97
- package/dist/esm/icons/science.js +1477 -208
- package/dist/esm/icons/shapes.js +1343 -307
- package/dist/esm/icons/smarthome.js +799 -89
- package/dist/esm/icons/social.js +599 -58
- package/dist/esm/icons/sports.js +1240 -132
- package/dist/esm/icons/sustainability.js +1226 -138
- package/dist/esm/icons/travel.js +1486 -147
- package/dist/esm/icons/ui.js +1540 -314
- package/dist/esm/icons/weather.js +1181 -172
- package/dist/esm/index.js +756 -58
- package/dist/esm/lottieIntegration.js +264 -265
- package/dist/esm/nicetodev-icons.css +1 -1
- package/dist/esm/particleEffects.js +271 -250
- package/dist/esm/resolver.js +231 -283
- package/dist/esm/rsc.js +182 -192
- package/dist/esm/sharpen.js +78 -129
- package/dist/esm/smilAnimations.js +376 -164
- package/dist/esm/stacking.js +99 -121
- package/dist/esm/tailwind-plugin.js +282 -319
- package/dist/esm/types.js +50 -71
- package/dist/esm/utilities.js +177 -321
- package/dist/esm/variantProps.js +23 -52
- package/package.json +15 -22
package/dist/esm/variantProps.js
CHANGED
|
@@ -1,71 +1,42 @@
|
|
|
1
|
-
/**
|
|
2
|
-
* @file variantProps.ts
|
|
3
|
-
* @description Discriminated unions and strict prop validation per icon variant.
|
|
4
|
-
*
|
|
5
|
-
* Provides narrowed prop types for each icon variant (solid, outline, duotone, cutout,
|
|
6
|
-
* sharp, rounded, mini, 3d, vivid) with variant-specific required/optional props.
|
|
7
|
-
*
|
|
8
|
-
* @example
|
|
9
|
-
* ```tsx
|
|
10
|
-
* // Narrows to DuotoneIconProps — guarantees secondaryColor is accepted
|
|
11
|
-
* const props: VariantIconProps = {
|
|
12
|
-
* variant: 'duotone',
|
|
13
|
-
* primaryColor: '#3b82f6',
|
|
14
|
-
* secondaryColor: '#93c5fd',
|
|
15
|
-
* secondaryOpacity: 0.4,
|
|
16
|
-
* };
|
|
17
|
-
*
|
|
18
|
-
* // Type guard usage
|
|
19
|
-
* if (isDuotoneProps(props)) {
|
|
20
|
-
* props.secondaryColor; // string — narrowed
|
|
21
|
-
* }
|
|
22
|
-
* ```
|
|
23
|
-
*/
|
|
24
|
-
/* ────────────────────────────────────────────────────────────────────────────
|
|
25
|
-
TYPE GUARDS
|
|
26
|
-
───────────────────────────────────────────────────────────────────────────── */
|
|
27
|
-
/** Narrows to `SolidIconProps` when `variant === 'solid'`. */
|
|
28
1
|
function isSolidProps(props) {
|
|
29
|
-
|
|
2
|
+
return props.variant === "solid";
|
|
30
3
|
}
|
|
31
|
-
/** Narrows to `OutlineIconProps` when `variant === 'outline'`. */
|
|
32
4
|
function isOutlineProps(props) {
|
|
33
|
-
|
|
5
|
+
return props.variant === "outline";
|
|
34
6
|
}
|
|
35
|
-
/** Narrows to `DuotoneIconProps` when `variant === 'duotone'`. */
|
|
36
7
|
function isDuotoneProps(props) {
|
|
37
|
-
|
|
8
|
+
return props.variant === "duotone";
|
|
38
9
|
}
|
|
39
|
-
/** Narrows to `CutoutIconProps` when `variant === 'cutout'`. */
|
|
40
10
|
function isCutoutProps(props) {
|
|
41
|
-
|
|
11
|
+
return props.variant === "cutout";
|
|
42
12
|
}
|
|
43
|
-
/** Narrows to `SharpIconProps` when `variant === 'sharp'`. */
|
|
44
13
|
function isSharpProps(props) {
|
|
45
|
-
|
|
14
|
+
return props.variant === "sharp";
|
|
46
15
|
}
|
|
47
|
-
/** Narrows to `RoundedIconProps` when `variant === 'rounded'`. */
|
|
48
16
|
function isRoundedProps(props) {
|
|
49
|
-
|
|
17
|
+
return props.variant === "rounded";
|
|
50
18
|
}
|
|
51
|
-
/** Narrows to `MiniIconProps` when `variant === 'mini'`. */
|
|
52
19
|
function isMiniProps(props) {
|
|
53
|
-
|
|
20
|
+
return props.variant === "mini";
|
|
54
21
|
}
|
|
55
|
-
/** Narrows to `ThreeDIconProps` when `variant === '3d'`. */
|
|
56
22
|
function isThreeDProps(props) {
|
|
57
|
-
|
|
23
|
+
return props.variant === "3d";
|
|
58
24
|
}
|
|
59
|
-
/** Narrows to `VividIconProps` when `variant === 'vivid'`. */
|
|
60
25
|
function isVividProps(props) {
|
|
61
|
-
|
|
26
|
+
return props.variant === "vivid";
|
|
62
27
|
}
|
|
63
|
-
/**
|
|
64
|
-
* Converts a discriminated `VariantIconProps` into the general `NtdIconProps`.
|
|
65
|
-
* Useful when passing narrowed props to actual icon components.
|
|
66
|
-
*/
|
|
67
28
|
function toIconProps(props) {
|
|
68
|
-
|
|
69
|
-
}
|
|
70
|
-
|
|
71
|
-
|
|
29
|
+
return props;
|
|
30
|
+
}
|
|
31
|
+
export {
|
|
32
|
+
isCutoutProps,
|
|
33
|
+
isDuotoneProps,
|
|
34
|
+
isMiniProps,
|
|
35
|
+
isOutlineProps,
|
|
36
|
+
isRoundedProps,
|
|
37
|
+
isSharpProps,
|
|
38
|
+
isSolidProps,
|
|
39
|
+
isThreeDProps,
|
|
40
|
+
isVividProps,
|
|
41
|
+
toIconProps
|
|
42
|
+
};
|
package/package.json
CHANGED
|
@@ -1,6 +1,6 @@
|
|
|
1
1
|
{
|
|
2
2
|
"name": "@nice2dev/icons",
|
|
3
|
-
"version": "1.3.
|
|
3
|
+
"version": "1.3.16",
|
|
4
4
|
"description": "Beautiful, lightweight, multi-color SVG icon library for React with animations",
|
|
5
5
|
"author": "NiceToDev <contact@nicetodev.com>",
|
|
6
6
|
"license": "SEE LICENSE IN LICENSE",
|
|
@@ -69,16 +69,16 @@
|
|
|
69
69
|
],
|
|
70
70
|
"scripts": {
|
|
71
71
|
"typecheck": "tsc --noEmit",
|
|
72
|
-
"build": "npm run build:types &&
|
|
72
|
+
"build": "npm run build:types && vite build",
|
|
73
73
|
"build:types": "tsc -p tsconfig.types.json",
|
|
74
74
|
"build:cdn": "vite build -c vite.cdn.config.ts",
|
|
75
75
|
"build:spritesheet": "node scripts/generate-spritesheet.mjs",
|
|
76
76
|
"build:iconfont": "node scripts/generate-iconfont.mjs",
|
|
77
77
|
"audit:treeshaking": "node scripts/tree-shaking-audit.mjs",
|
|
78
78
|
"audit:treeshaking:verbose": "node scripts/tree-shaking-audit.mjs --verbose --output reports/treeshaking-report.json",
|
|
79
|
-
"dev": "
|
|
80
|
-
"demo": "vite demo",
|
|
81
|
-
"demo:build": "vite build demo",
|
|
79
|
+
"dev": "vite build --watch",
|
|
80
|
+
"demo": "vite --config vite.demo.config.ts",
|
|
81
|
+
"demo:build": "vite build --config vite.demo.config.ts",
|
|
82
82
|
"lint": "eslint src/",
|
|
83
83
|
"test": "vitest run --config vitest.config.ts --passWithNoTests",
|
|
84
84
|
"test:watch": "vitest --config vitest.config.ts",
|
|
@@ -109,34 +109,27 @@
|
|
|
109
109
|
},
|
|
110
110
|
"devDependencies": {
|
|
111
111
|
"@chromatic-com/storybook": "^5.3.1",
|
|
112
|
-
"@nice2dev/ui-core": "^1.3.
|
|
113
|
-
"@
|
|
114
|
-
"@
|
|
115
|
-
"@
|
|
116
|
-
"@storybook/addon-a11y": "^10.6.0",
|
|
117
|
-
"@storybook/addon-docs": "^10.6.0",
|
|
118
|
-
"@storybook/addon-vitest": "^10.6.0",
|
|
119
|
-
"@storybook/react-vite": "^10.6.0",
|
|
112
|
+
"@nice2dev/ui-core": "^1.3.16",
|
|
113
|
+
"@storybook/addon-a11y": "^10.6.6",
|
|
114
|
+
"@storybook/addon-docs": "^10.6.6",
|
|
115
|
+
"@storybook/react-vite": "^10.6.6",
|
|
120
116
|
"@testing-library/jest-dom": "^7.0.1",
|
|
121
117
|
"@testing-library/react": "^16.3.3",
|
|
122
118
|
"@types/react": "^19.2.18",
|
|
123
119
|
"@types/react-dom": "^19.2.7",
|
|
124
120
|
"@vitejs/plugin-react": "^4.7.0",
|
|
125
|
-
"@vitest/
|
|
126
|
-
"
|
|
121
|
+
"@vitest/coverage-v8": "^4.1.12",
|
|
122
|
+
"chromatic": "^18.7.2",
|
|
123
|
+
"conventional-changelog-angular": "^9.4.0",
|
|
124
|
+
"conventional-changelog-cli": "^5.0.0",
|
|
127
125
|
"jsdom": "^29.0.0",
|
|
128
126
|
"playwright": "^1.62.1",
|
|
129
127
|
"react": "^19.2.8",
|
|
130
128
|
"react-dom": "^19.2.8",
|
|
131
|
-
"
|
|
132
|
-
"rollup-plugin-postcss": "^4.0.2",
|
|
133
|
-
"storybook": "^10.6.0",
|
|
129
|
+
"storybook": "^10.6.6",
|
|
134
130
|
"tslib": "^2.8.1",
|
|
135
131
|
"typescript": "^5.9.3",
|
|
136
132
|
"vite": "^6.4.1",
|
|
137
|
-
"vitest": "^4.1.
|
|
138
|
-
"chromatic": "^18.7.2",
|
|
139
|
-
"conventional-changelog-cli": "^5.0.0",
|
|
140
|
-
"conventional-changelog-angular": "^9.4.0"
|
|
133
|
+
"vitest": "^4.1.12"
|
|
141
134
|
}
|
|
142
135
|
}
|