@jis3r/icons 1.24.0 → 1.25.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.
@@ -484,6 +484,7 @@ import user from './user.svelte';
484
484
  import userCheck from './user-check.svelte';
485
485
  import userCog from './user-cog.svelte';
486
486
  import userPen from './user-pen.svelte';
487
+ import userRound from './user-round.svelte';
487
488
  import userRoundCheck from './user-round-check.svelte';
488
489
  import userRoundCog from './user-round-cog.svelte';
489
490
  import userRoundPen from './user-round-pen.svelte';
@@ -5645,6 +5646,12 @@ let ICONS_LIST = [
5645
5646
  tags: ['person', 'account', 'contact', 'profile', 'edit', 'change'],
5646
5647
  categories: ['account']
5647
5648
  },
5649
+ {
5650
+ name: 'user-round',
5651
+ icon: userRound,
5652
+ tags: ['person', 'account', 'contact'],
5653
+ categories: ['account']
5654
+ },
5648
5655
  {
5649
5656
  name: 'user-round-check',
5650
5657
  icon: userRoundCheck,
@@ -0,0 +1,95 @@
1
+ <script>
2
+ /**
3
+ * @typedef {Object} Props
4
+ * @property {string} [color]
5
+ * @property {number} [size]
6
+ * @property {number} [strokeWidth]
7
+ * @property {boolean} [isHovered]
8
+ * @property {string} [class]
9
+ */
10
+
11
+ /** @type {Props} */
12
+ let {
13
+ color = 'currentColor',
14
+ size = 24,
15
+ strokeWidth = 2,
16
+ isHovered = false,
17
+ class: className = ''
18
+ } = $props();
19
+
20
+ function handleMouseEnter() {
21
+ isHovered = true;
22
+
23
+ setTimeout(() => {
24
+ isHovered = false;
25
+ }, 600);
26
+ }
27
+ </script>
28
+
29
+ <div class={className} aria-label="user-round" role="img" onmouseenter={handleMouseEnter}>
30
+ <svg
31
+ xmlns="http://www.w3.org/2000/svg"
32
+ width={size}
33
+ height={size}
34
+ viewBox="0 0 24 24"
35
+ fill="none"
36
+ stroke={color}
37
+ stroke-width={strokeWidth}
38
+ stroke-linecap="round"
39
+ stroke-linejoin="round"
40
+ class="user-round-icon"
41
+ class:animate={isHovered}
42
+ >
43
+ <path d="M20 21a8 8 0 0 0-16 0" class="user-round-path" />
44
+ <circle cx="12" cy="8" r="5" class="user-round-circle" />
45
+ </svg>
46
+ </div>
47
+
48
+ <style>
49
+ div {
50
+ display: inline-block;
51
+ }
52
+
53
+ .user-round-path,
54
+ .user-round-circle {
55
+ transition: transform 0.6s ease-in-out;
56
+ }
57
+
58
+ .user-round-icon.animate .user-round-path {
59
+ animation: pathBounce 0.6s ease-in-out;
60
+ }
61
+
62
+ .user-round-icon.animate .user-round-circle {
63
+ animation: circleBounce 0.6s ease-in-out;
64
+ }
65
+
66
+ @keyframes pathBounce {
67
+ 0% {
68
+ transform: translateY(0);
69
+ }
70
+ 33% {
71
+ transform: translateY(4px);
72
+ }
73
+ 66% {
74
+ transform: translateY(-2px);
75
+ }
76
+ 100% {
77
+ transform: translateY(0);
78
+ }
79
+ }
80
+
81
+ @keyframes circleBounce {
82
+ 0% {
83
+ transform: translateY(0);
84
+ }
85
+ 33% {
86
+ transform: translateY(1px);
87
+ }
88
+ 66% {
89
+ transform: translateY(-2px);
90
+ }
91
+ 100% {
92
+ transform: translateY(0);
93
+ }
94
+ }
95
+ </style>
@@ -0,0 +1,19 @@
1
+ export default UserRound;
2
+ type UserRound = {
3
+ $on?(type: string, callback: (e: any) => void): () => void;
4
+ $set?(props: Partial<Props>): void;
5
+ };
6
+ declare const UserRound: import("svelte").Component<{
7
+ color?: string;
8
+ size?: number;
9
+ strokeWidth?: number;
10
+ isHovered?: boolean;
11
+ class?: string;
12
+ }, {}, "">;
13
+ type Props = {
14
+ color?: string;
15
+ size?: number;
16
+ strokeWidth?: number;
17
+ isHovered?: boolean;
18
+ class?: string;
19
+ };
package/dist/index.d.ts CHANGED
@@ -486,6 +486,7 @@ export { default as UserPen } from "./icons/user-pen.svelte";
486
486
  export { default as UserRoundCheck } from "./icons/user-round-check.svelte";
487
487
  export { default as UserRoundCog } from "./icons/user-round-cog.svelte";
488
488
  export { default as UserRoundPen } from "./icons/user-round-pen.svelte";
489
+ export { default as UserRound } from "./icons/user-round.svelte";
489
490
  export { default as User } from "./icons/user.svelte";
490
491
  export { default as UsersRound } from "./icons/users-round.svelte";
491
492
  export { default as Users } from "./icons/users.svelte";
package/dist/index.js CHANGED
@@ -486,6 +486,7 @@ export { default as UserPen } from './icons/user-pen.svelte';
486
486
  export { default as UserRoundCheck } from './icons/user-round-check.svelte';
487
487
  export { default as UserRoundCog } from './icons/user-round-cog.svelte';
488
488
  export { default as UserRoundPen } from './icons/user-round-pen.svelte';
489
+ export { default as UserRound } from './icons/user-round.svelte';
489
490
  export { default as User } from './icons/user.svelte';
490
491
  export { default as UsersRound } from './icons/users-round.svelte';
491
492
  export { default as Users } from './icons/users.svelte';
package/package.json CHANGED
@@ -1,6 +1,6 @@
1
1
  {
2
2
  "name": "@jis3r/icons",
3
- "version": "1.24.0",
3
+ "version": "1.25.0",
4
4
  "description": "beautifully crafted, moving icons. for svelte.",
5
5
  "keywords": [
6
6
  "svelte",