@nice2dev/icons 1.3.17 → 1.4.0
This diff represents the content of publicly available package versions that have been released to one of the supported registries. The information contained in this diff is provided for informational purposes only and reflects changes between package versions as they appear in their respective public registries.
- package/CHANGELOG.md +34 -0
- package/README.md +20 -0
- package/dist/cjs/animationControls.js +10 -5
- package/dist/cjs/animationSpeed.js +33 -0
- package/dist/cjs/createIcon.js +26 -6
- package/dist/cjs/iconStyles.js +56 -22
- package/dist/cjs/reducedMotion.js +30 -0
- package/dist/cjs/smilAnimations.js +5 -1
- package/dist/cjs/utilities.js +4 -25
- package/dist/esm/animationControls.js +10 -5
- package/dist/esm/animationSpeed.js +34 -1
- package/dist/esm/createIcon.js +28 -8
- package/dist/esm/iconStyles.js +57 -23
- package/dist/esm/nicetodev-icons.css +1 -1
- package/dist/esm/reducedMotion.js +30 -0
- package/dist/esm/smilAnimations.js +6 -2
- package/dist/esm/utilities.js +5 -26
- package/dist/types/animationSpeed.d.ts +9 -0
- package/dist/types/iconStyles.d.ts +6 -0
- package/dist/types/reducedMotion.d.ts +6 -0
- package/dist/types/smilAnimations.d.ts +7 -1
- package/dist/types/types.d.ts +19 -0
- package/dist/types/utilities.d.ts +2 -2
- package/package.json +2 -2
- package/dist/cjs/nicetodev-icons.css +0 -1
package/dist/esm/iconStyles.js
CHANGED
|
@@ -1,6 +1,7 @@
|
|
|
1
1
|
import { jsxs, jsx, Fragment } from "react/jsx-runtime";
|
|
2
2
|
import { forwardRef, useId } from "react";
|
|
3
|
-
import {
|
|
3
|
+
import { motionTree, durationScale } from "./animationSpeed.js";
|
|
4
|
+
import { useStillMotion } from "./reducedMotion.js";
|
|
4
5
|
const wrapperBase = {
|
|
5
6
|
position: "relative",
|
|
6
7
|
display: "inline-flex",
|
|
@@ -19,6 +20,7 @@ const NtdIconFloral = /* @__PURE__ */ Object.assign(
|
|
|
19
20
|
animate = true,
|
|
20
21
|
duration: durationProp,
|
|
21
22
|
animationSpeed,
|
|
23
|
+
reducedMotion,
|
|
22
24
|
intensity = "normal",
|
|
23
25
|
vineColor = "#22c55e",
|
|
24
26
|
petalColor = "#f472b6",
|
|
@@ -26,6 +28,7 @@ const NtdIconFloral = /* @__PURE__ */ Object.assign(
|
|
|
26
28
|
className,
|
|
27
29
|
style
|
|
28
30
|
}, ref) => {
|
|
31
|
+
const still = useStillMotion(reducedMotion);
|
|
29
32
|
const duration = durationProp ?? 2;
|
|
30
33
|
const lc = leafColor ?? vineColor;
|
|
31
34
|
const dur = `${duration}s`;
|
|
@@ -67,7 +70,7 @@ const NtdIconFloral = /* @__PURE__ */ Object.assign(
|
|
|
67
70
|
] : []
|
|
68
71
|
];
|
|
69
72
|
const dashLen = 250;
|
|
70
|
-
return
|
|
73
|
+
return motionTree(
|
|
71
74
|
/* @__PURE__ */ jsxs("span", { ref, className, style: { ...wrapperBase, ...style }, children: [
|
|
72
75
|
children,
|
|
73
76
|
/* @__PURE__ */ jsxs(
|
|
@@ -199,7 +202,8 @@ const NtdIconFloral = /* @__PURE__ */ Object.assign(
|
|
|
199
202
|
}
|
|
200
203
|
)
|
|
201
204
|
] }),
|
|
202
|
-
durationScale(durationProp !== void 0, animationSpeed)
|
|
205
|
+
durationScale(durationProp !== void 0, animationSpeed),
|
|
206
|
+
still
|
|
203
207
|
);
|
|
204
208
|
}
|
|
205
209
|
),
|
|
@@ -212,12 +216,14 @@ const NtdIconFestive = /* @__PURE__ */ Object.assign(
|
|
|
212
216
|
animate = true,
|
|
213
217
|
duration: durationProp,
|
|
214
218
|
animationSpeed,
|
|
219
|
+
reducedMotion,
|
|
215
220
|
intensity = "normal",
|
|
216
221
|
colors,
|
|
217
222
|
sparkleColor = "#fbbf24",
|
|
218
223
|
className,
|
|
219
224
|
style
|
|
220
225
|
}, ref) => {
|
|
226
|
+
const still = useStillMotion(reducedMotion);
|
|
221
227
|
const duration = durationProp ?? 1.5;
|
|
222
228
|
const cols = colors ?? ["#ef4444", "#f59e0b", "#22c55e", "#3b82f6", "#a855f7", "#ec4899"];
|
|
223
229
|
const dur = `${duration * 0.6}s`;
|
|
@@ -268,7 +274,7 @@ const NtdIconFestive = /* @__PURE__ */ Object.assign(
|
|
|
268
274
|
{ cx: 97, cy: 45, r: 1.1 }
|
|
269
275
|
] : []
|
|
270
276
|
];
|
|
271
|
-
return
|
|
277
|
+
return motionTree(
|
|
272
278
|
/* @__PURE__ */ jsxs("span", { ref, className, style: { ...wrapperBase, ...style }, children: [
|
|
273
279
|
children,
|
|
274
280
|
/* @__PURE__ */ jsxs(
|
|
@@ -385,7 +391,8 @@ const NtdIconFestive = /* @__PURE__ */ Object.assign(
|
|
|
385
391
|
}
|
|
386
392
|
)
|
|
387
393
|
] }),
|
|
388
|
-
durationScale(durationProp !== void 0, animationSpeed)
|
|
394
|
+
durationScale(durationProp !== void 0, animationSpeed),
|
|
395
|
+
still
|
|
389
396
|
);
|
|
390
397
|
}
|
|
391
398
|
),
|
|
@@ -398,6 +405,7 @@ const NtdIconNeon = /* @__PURE__ */ Object.assign(
|
|
|
398
405
|
animate = true,
|
|
399
406
|
duration: durationProp,
|
|
400
407
|
animationSpeed,
|
|
408
|
+
reducedMotion,
|
|
401
409
|
intensity = "normal",
|
|
402
410
|
glowColor = "#0ff",
|
|
403
411
|
secondaryGlow,
|
|
@@ -405,6 +413,7 @@ const NtdIconNeon = /* @__PURE__ */ Object.assign(
|
|
|
405
413
|
className,
|
|
406
414
|
style
|
|
407
415
|
}, ref) => {
|
|
416
|
+
const still = useStillMotion(reducedMotion);
|
|
408
417
|
const duration = durationProp ?? 4;
|
|
409
418
|
const uid = useId().replace(/[^a-zA-Z0-9]/g, "_");
|
|
410
419
|
const glow2 = secondaryGlow ?? glowColor;
|
|
@@ -418,7 +427,7 @@ const NtdIconNeon = /* @__PURE__ */ Object.assign(
|
|
|
418
427
|
].filter(Boolean).join(" ");
|
|
419
428
|
const dimFilter = `drop-shadow(0 0 ${blur * 0.2}px ${glowColor})`;
|
|
420
429
|
const animName = `ntd_neon_${uid}`;
|
|
421
|
-
return
|
|
430
|
+
return motionTree(
|
|
422
431
|
/* @__PURE__ */ jsxs("span", { ref, className, style: { ...wrapperBase, ...style }, children: [
|
|
423
432
|
animate && flicker && /* @__PURE__ */ jsx("style", { children: `
|
|
424
433
|
@keyframes ${animName} {
|
|
@@ -438,7 +447,8 @@ const NtdIconNeon = /* @__PURE__ */ Object.assign(
|
|
|
438
447
|
}
|
|
439
448
|
)
|
|
440
449
|
] }),
|
|
441
|
-
durationScale(durationProp !== void 0, animationSpeed)
|
|
450
|
+
durationScale(durationProp !== void 0, animationSpeed),
|
|
451
|
+
still
|
|
442
452
|
);
|
|
443
453
|
}
|
|
444
454
|
),
|
|
@@ -451,12 +461,14 @@ const NtdIconSketch = /* @__PURE__ */ Object.assign(
|
|
|
451
461
|
animate = true,
|
|
452
462
|
duration: durationProp,
|
|
453
463
|
animationSpeed,
|
|
464
|
+
reducedMotion,
|
|
454
465
|
intensity = "normal",
|
|
455
466
|
strokeColor = "#374151",
|
|
456
467
|
roughness = 2,
|
|
457
468
|
className,
|
|
458
469
|
style
|
|
459
470
|
}, ref) => {
|
|
471
|
+
const still = useStillMotion(reducedMotion);
|
|
460
472
|
const duration = durationProp ?? 1.5;
|
|
461
473
|
const uid = useId().replace(/[^a-zA-Z0-9]/g, "_");
|
|
462
474
|
const filterId = `ntd_sketch_${uid}`;
|
|
@@ -473,7 +485,7 @@ const NtdIconSketch = /* @__PURE__ */ Object.assign(
|
|
|
473
485
|
{ x1: 10, y1: 12, x2: 16, y2: 10 },
|
|
474
486
|
{ x1: 84, y1: 12, x2: 90, y2: 10 }
|
|
475
487
|
];
|
|
476
|
-
return
|
|
488
|
+
return motionTree(
|
|
477
489
|
/* @__PURE__ */ jsxs("span", { ref, className, style: { ...wrapperBase, ...style }, children: [
|
|
478
490
|
/* @__PURE__ */ jsx("svg", { style: { position: "absolute", width: 0, height: 0 }, "aria-hidden": true, children: /* @__PURE__ */ jsx("defs", { children: /* @__PURE__ */ jsxs("filter", { id: filterId, children: [
|
|
479
491
|
/* @__PURE__ */ jsx(
|
|
@@ -580,7 +592,8 @@ const NtdIconSketch = /* @__PURE__ */ Object.assign(
|
|
|
580
592
|
}
|
|
581
593
|
)
|
|
582
594
|
] }),
|
|
583
|
-
durationScale(durationProp !== void 0, animationSpeed)
|
|
595
|
+
durationScale(durationProp !== void 0, animationSpeed),
|
|
596
|
+
still
|
|
584
597
|
);
|
|
585
598
|
}
|
|
586
599
|
),
|
|
@@ -593,12 +606,14 @@ const NtdIconWatercolor = /* @__PURE__ */ Object.assign(
|
|
|
593
606
|
animate = true,
|
|
594
607
|
duration: durationProp,
|
|
595
608
|
animationSpeed,
|
|
609
|
+
reducedMotion,
|
|
596
610
|
intensity = "normal",
|
|
597
611
|
tintColor = "#818cf8",
|
|
598
612
|
bleedColor = "#f0abfc",
|
|
599
613
|
className,
|
|
600
614
|
style
|
|
601
615
|
}, ref) => {
|
|
616
|
+
const still = useStillMotion(reducedMotion);
|
|
602
617
|
const duration = durationProp ?? 2;
|
|
603
618
|
const uid = useId().replace(/[^a-zA-Z0-9]/g, "_");
|
|
604
619
|
const filterId = `ntd_wc_${uid}`;
|
|
@@ -628,7 +643,7 @@ const NtdIconWatercolor = /* @__PURE__ */ Object.assign(
|
|
|
628
643
|
{ cx: 92, cy: 55, r: 1 }
|
|
629
644
|
] : []
|
|
630
645
|
];
|
|
631
|
-
return
|
|
646
|
+
return motionTree(
|
|
632
647
|
/* @__PURE__ */ jsxs("span", { ref, className, style: { ...wrapperBase, ...style }, children: [
|
|
633
648
|
/* @__PURE__ */ jsx("svg", { style: { position: "absolute", width: 0, height: 0 }, "aria-hidden": true, children: /* @__PURE__ */ jsxs("defs", { children: [
|
|
634
649
|
/* @__PURE__ */ jsxs("filter", { id: filterId, x: "-20%", y: "-20%", width: "140%", height: "140%", children: [
|
|
@@ -738,7 +753,8 @@ const NtdIconWatercolor = /* @__PURE__ */ Object.assign(
|
|
|
738
753
|
}
|
|
739
754
|
)
|
|
740
755
|
] }),
|
|
741
|
-
durationScale(durationProp !== void 0, animationSpeed)
|
|
756
|
+
durationScale(durationProp !== void 0, animationSpeed),
|
|
757
|
+
still
|
|
742
758
|
);
|
|
743
759
|
}
|
|
744
760
|
),
|
|
@@ -751,6 +767,7 @@ const NtdIconCosmic = /* @__PURE__ */ Object.assign(
|
|
|
751
767
|
animate = true,
|
|
752
768
|
duration: durationProp,
|
|
753
769
|
animationSpeed,
|
|
770
|
+
reducedMotion,
|
|
754
771
|
intensity = "normal",
|
|
755
772
|
starColor = "#e2e8f0",
|
|
756
773
|
nebulaColor = "#7c3aed",
|
|
@@ -758,6 +775,7 @@ const NtdIconCosmic = /* @__PURE__ */ Object.assign(
|
|
|
758
775
|
className,
|
|
759
776
|
style
|
|
760
777
|
}, ref) => {
|
|
778
|
+
const still = useStillMotion(reducedMotion);
|
|
761
779
|
const duration = durationProp ?? 2;
|
|
762
780
|
const uid = useId().replace(/[^a-zA-Z0-9]/g, "_");
|
|
763
781
|
const nebulaFilter = `ntd_cosm_${uid}`;
|
|
@@ -809,7 +827,7 @@ const NtdIconCosmic = /* @__PURE__ */ Object.assign(
|
|
|
809
827
|
] : []
|
|
810
828
|
];
|
|
811
829
|
const lineLen = 80;
|
|
812
|
-
return
|
|
830
|
+
return motionTree(
|
|
813
831
|
/* @__PURE__ */ jsxs("span", { ref, className, style: { ...wrapperBase, ...style }, children: [
|
|
814
832
|
/* @__PURE__ */ jsx("svg", { style: { position: "absolute", width: 0, height: 0 }, "aria-hidden": true, children: /* @__PURE__ */ jsx("defs", { children: /* @__PURE__ */ jsx("filter", { id: nebulaFilter, children: /* @__PURE__ */ jsx("feGaussianBlur", { stdDeviation: "4" }) }) }) }),
|
|
815
833
|
/* @__PURE__ */ jsxs(
|
|
@@ -958,7 +976,8 @@ const NtdIconCosmic = /* @__PURE__ */ Object.assign(
|
|
|
958
976
|
}
|
|
959
977
|
)
|
|
960
978
|
] }),
|
|
961
|
-
durationScale(durationProp !== void 0, animationSpeed)
|
|
979
|
+
durationScale(durationProp !== void 0, animationSpeed),
|
|
980
|
+
still
|
|
962
981
|
);
|
|
963
982
|
}
|
|
964
983
|
),
|
|
@@ -971,6 +990,7 @@ const NtdIconSteampunk = /* @__PURE__ */ Object.assign(
|
|
|
971
990
|
animate = true,
|
|
972
991
|
duration: durationProp,
|
|
973
992
|
animationSpeed,
|
|
993
|
+
reducedMotion,
|
|
974
994
|
intensity = "normal",
|
|
975
995
|
brassColor = "#b45309",
|
|
976
996
|
pipeColor = "#78350f",
|
|
@@ -978,6 +998,7 @@ const NtdIconSteampunk = /* @__PURE__ */ Object.assign(
|
|
|
978
998
|
className,
|
|
979
999
|
style
|
|
980
1000
|
}, ref) => {
|
|
1001
|
+
const still = useStillMotion(reducedMotion);
|
|
981
1002
|
const duration = durationProp ?? 3;
|
|
982
1003
|
const makeGear = (cx, cy, r, teeth) => {
|
|
983
1004
|
const inner = r * 0.68;
|
|
@@ -1030,7 +1051,7 @@ const NtdIconSteampunk = /* @__PURE__ */ Object.assign(
|
|
|
1030
1051
|
{ cx: 55, cy: -4, r: 2.2 },
|
|
1031
1052
|
{ cx: 47, cy: -10, r: 1.6 }
|
|
1032
1053
|
];
|
|
1033
|
-
return
|
|
1054
|
+
return motionTree(
|
|
1034
1055
|
/* @__PURE__ */ jsxs("span", { ref, className, style: { ...wrapperBase, ...style }, children: [
|
|
1035
1056
|
/* @__PURE__ */ jsxs(
|
|
1036
1057
|
"svg",
|
|
@@ -1135,7 +1156,8 @@ const NtdIconSteampunk = /* @__PURE__ */ Object.assign(
|
|
|
1135
1156
|
}
|
|
1136
1157
|
)
|
|
1137
1158
|
] }),
|
|
1138
|
-
durationScale(durationProp !== void 0, animationSpeed)
|
|
1159
|
+
durationScale(durationProp !== void 0, animationSpeed),
|
|
1160
|
+
still
|
|
1139
1161
|
);
|
|
1140
1162
|
}
|
|
1141
1163
|
),
|
|
@@ -1148,12 +1170,14 @@ const NtdIconFrost = /* @__PURE__ */ Object.assign(
|
|
|
1148
1170
|
animate = true,
|
|
1149
1171
|
duration: durationProp,
|
|
1150
1172
|
animationSpeed,
|
|
1173
|
+
reducedMotion,
|
|
1151
1174
|
intensity = "normal",
|
|
1152
1175
|
crystalColor = "#bae6fd",
|
|
1153
1176
|
glowColor = "#38bdf8",
|
|
1154
1177
|
className,
|
|
1155
1178
|
style
|
|
1156
1179
|
}, ref) => {
|
|
1180
|
+
const still = useStillMotion(reducedMotion);
|
|
1157
1181
|
const duration = durationProp ?? 2;
|
|
1158
1182
|
const uid = useId().replace(/[^a-zA-Z0-9]/g, "_");
|
|
1159
1183
|
const glowFilterId = `ntd_frost_${uid}`;
|
|
@@ -1211,7 +1235,7 @@ const NtdIconFrost = /* @__PURE__ */ Object.assign(
|
|
|
1211
1235
|
{ cx: 14, cy: 96, r: 1 },
|
|
1212
1236
|
{ cx: 86, cy: 96, r: 1.1 }
|
|
1213
1237
|
];
|
|
1214
|
-
return
|
|
1238
|
+
return motionTree(
|
|
1215
1239
|
/* @__PURE__ */ jsxs("span", { ref, className, style: { ...wrapperBase, ...style }, children: [
|
|
1216
1240
|
/* @__PURE__ */ jsx("svg", { style: { position: "absolute", width: 0, height: 0 }, "aria-hidden": true, children: /* @__PURE__ */ jsx("defs", { children: /* @__PURE__ */ jsx("filter", { id: glowFilterId, children: /* @__PURE__ */ jsx("feGaussianBlur", { stdDeviation: "6" }) }) }) }),
|
|
1217
1241
|
/* @__PURE__ */ jsxs(
|
|
@@ -1330,7 +1354,8 @@ const NtdIconFrost = /* @__PURE__ */ Object.assign(
|
|
|
1330
1354
|
),
|
|
1331
1355
|
/* @__PURE__ */ jsx("span", { style: { display: "inline-flex", position: "relative", zIndex: 1 }, children })
|
|
1332
1356
|
] }),
|
|
1333
|
-
durationScale(durationProp !== void 0, animationSpeed)
|
|
1357
|
+
durationScale(durationProp !== void 0, animationSpeed),
|
|
1358
|
+
still
|
|
1334
1359
|
);
|
|
1335
1360
|
}
|
|
1336
1361
|
),
|
|
@@ -1343,6 +1368,7 @@ const NtdIconPixel = /* @__PURE__ */ Object.assign(
|
|
|
1343
1368
|
animate = true,
|
|
1344
1369
|
duration: durationProp,
|
|
1345
1370
|
animationSpeed,
|
|
1371
|
+
reducedMotion,
|
|
1346
1372
|
intensity = "normal",
|
|
1347
1373
|
pixelColor = "#22d3ee",
|
|
1348
1374
|
scanlineColor = "#000000",
|
|
@@ -1350,6 +1376,7 @@ const NtdIconPixel = /* @__PURE__ */ Object.assign(
|
|
|
1350
1376
|
className,
|
|
1351
1377
|
style
|
|
1352
1378
|
}, ref) => {
|
|
1379
|
+
const still = useStillMotion(reducedMotion);
|
|
1353
1380
|
const duration = durationProp ?? 0.5;
|
|
1354
1381
|
const uid = useId().replace(/[^a-zA-Z0-9]/g, "_");
|
|
1355
1382
|
const scanAnimName = `ntd_pixel_scan_${uid}`;
|
|
@@ -1388,7 +1415,7 @@ const NtdIconPixel = /* @__PURE__ */ Object.assign(
|
|
|
1388
1415
|
{ x: 48, y: 96 }
|
|
1389
1416
|
] : [];
|
|
1390
1417
|
const allPixels = intensity === "subtle" ? basePixels.filter((_, i) => i % 2 === 0) : [...basePixels, ...extraPixels];
|
|
1391
|
-
return
|
|
1418
|
+
return motionTree(
|
|
1392
1419
|
/* @__PURE__ */ jsxs("span", { ref, className, style: { ...wrapperBase, ...style }, children: [
|
|
1393
1420
|
animate && /* @__PURE__ */ jsx("style", { children: `
|
|
1394
1421
|
@keyframes ${scanAnimName} {
|
|
@@ -1470,7 +1497,8 @@ const NtdIconPixel = /* @__PURE__ */ Object.assign(
|
|
|
1470
1497
|
}
|
|
1471
1498
|
)
|
|
1472
1499
|
] }),
|
|
1473
|
-
durationScale(durationProp !== void 0, animationSpeed)
|
|
1500
|
+
durationScale(durationProp !== void 0, animationSpeed),
|
|
1501
|
+
still
|
|
1474
1502
|
);
|
|
1475
1503
|
}
|
|
1476
1504
|
),
|
|
@@ -1483,6 +1511,7 @@ const NtdIconOrganic = /* @__PURE__ */ Object.assign(
|
|
|
1483
1511
|
animate = true,
|
|
1484
1512
|
duration: durationProp,
|
|
1485
1513
|
animationSpeed,
|
|
1514
|
+
reducedMotion,
|
|
1486
1515
|
intensity = "normal",
|
|
1487
1516
|
cellColor = "#86efac",
|
|
1488
1517
|
membraneColor = "#4ade80",
|
|
@@ -1490,6 +1519,7 @@ const NtdIconOrganic = /* @__PURE__ */ Object.assign(
|
|
|
1490
1519
|
className,
|
|
1491
1520
|
style
|
|
1492
1521
|
}, ref) => {
|
|
1522
|
+
const still = useStillMotion(reducedMotion);
|
|
1493
1523
|
const duration = durationProp ?? 3;
|
|
1494
1524
|
const uid = useId().replace(/[^a-zA-Z0-9]/g, "_");
|
|
1495
1525
|
const blobFilterId = `ntd_org_${uid}`;
|
|
@@ -1520,7 +1550,7 @@ const NtdIconOrganic = /* @__PURE__ */ Object.assign(
|
|
|
1520
1550
|
{ cx: 60, cy: 95, r: 1.5 }
|
|
1521
1551
|
];
|
|
1522
1552
|
const bubbleCount = intensity === "subtle" ? 2 : intensity === "dense" ? 6 : 4;
|
|
1523
|
-
return
|
|
1553
|
+
return motionTree(
|
|
1524
1554
|
/* @__PURE__ */ jsxs("span", { ref, className, style: { ...wrapperBase, ...style }, children: [
|
|
1525
1555
|
/* @__PURE__ */ jsx("svg", { style: { position: "absolute", width: 0, height: 0 }, "aria-hidden": true, children: /* @__PURE__ */ jsx("defs", { children: /* @__PURE__ */ jsx("filter", { id: blobFilterId, children: /* @__PURE__ */ jsx("feGaussianBlur", { stdDeviation: "4" }) }) }) }),
|
|
1526
1556
|
/* @__PURE__ */ jsxs(
|
|
@@ -1640,7 +1670,8 @@ const NtdIconOrganic = /* @__PURE__ */ Object.assign(
|
|
|
1640
1670
|
),
|
|
1641
1671
|
/* @__PURE__ */ jsx("span", { style: { display: "inline-flex", position: "relative", zIndex: 1 }, children })
|
|
1642
1672
|
] }),
|
|
1643
|
-
durationScale(durationProp !== void 0, animationSpeed)
|
|
1673
|
+
durationScale(durationProp !== void 0, animationSpeed),
|
|
1674
|
+
still
|
|
1644
1675
|
);
|
|
1645
1676
|
}
|
|
1646
1677
|
),
|
|
@@ -1653,6 +1684,7 @@ const NtdIconGeometric = /* @__PURE__ */ Object.assign(
|
|
|
1653
1684
|
animate = true,
|
|
1654
1685
|
duration: durationProp,
|
|
1655
1686
|
animationSpeed,
|
|
1687
|
+
reducedMotion,
|
|
1656
1688
|
intensity = "normal",
|
|
1657
1689
|
primaryColor = "#6366f1",
|
|
1658
1690
|
secondaryColor = "#8b5cf6",
|
|
@@ -1660,6 +1692,7 @@ const NtdIconGeometric = /* @__PURE__ */ Object.assign(
|
|
|
1660
1692
|
className,
|
|
1661
1693
|
style
|
|
1662
1694
|
}, ref) => {
|
|
1695
|
+
const still = useStillMotion(reducedMotion);
|
|
1663
1696
|
const duration = durationProp ?? 8;
|
|
1664
1697
|
const makeTriangle = (cx, cy, r, rotDeg) => Array.from({ length: 3 }, (_, i) => {
|
|
1665
1698
|
const a = (i * 120 - 90 + rotDeg) * Math.PI / 180;
|
|
@@ -1692,7 +1725,7 @@ const NtdIconGeometric = /* @__PURE__ */ Object.assign(
|
|
|
1692
1725
|
] : []
|
|
1693
1726
|
];
|
|
1694
1727
|
const diamondPath = (cx, cy, s = 3) => `M${cx},${cy - s} L${cx + s},${cy} L${cx},${cy + s} L${cx - s},${cy}Z`;
|
|
1695
|
-
return
|
|
1728
|
+
return motionTree(
|
|
1696
1729
|
/* @__PURE__ */ jsxs("span", { ref, className, style: { ...wrapperBase, ...style }, children: [
|
|
1697
1730
|
/* @__PURE__ */ jsxs(
|
|
1698
1731
|
"svg",
|
|
@@ -1786,7 +1819,8 @@ const NtdIconGeometric = /* @__PURE__ */ Object.assign(
|
|
|
1786
1819
|
),
|
|
1787
1820
|
/* @__PURE__ */ jsx("span", { style: { display: "inline-flex", position: "relative", zIndex: 1 }, children })
|
|
1788
1821
|
] }),
|
|
1789
|
-
durationScale(durationProp !== void 0, animationSpeed)
|
|
1822
|
+
durationScale(durationProp !== void 0, animationSpeed),
|
|
1823
|
+
still
|
|
1790
1824
|
);
|
|
1791
1825
|
}
|
|
1792
1826
|
),
|