@jis3r/icons 1.22.0 → 1.24.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.
@@ -362,6 +362,7 @@ import phoneOff from './phone-off.svelte';
362
362
  import pickaxe from './pickaxe.svelte';
363
363
  import pinOff from './pin-off.svelte';
364
364
  import plane from './plane.svelte';
365
+ import play from './play.svelte';
365
366
  import plus from './plus.svelte';
366
367
  import pointerOff from './pointer-off.svelte';
367
368
  import powerOff from './power-off.svelte';
@@ -479,6 +480,7 @@ import unfoldHorizontal from './unfold-horizontal.svelte';
479
480
  import unfoldVertical from './unfold-vertical.svelte';
480
481
  import unplug from './unplug.svelte';
481
482
  import upload from './upload.svelte';
483
+ import user from './user.svelte';
482
484
  import userCheck from './user-check.svelte';
483
485
  import userCog from './user-cog.svelte';
484
486
  import userPen from './user-pen.svelte';
@@ -4274,6 +4276,12 @@ let ICONS_LIST = [
4274
4276
  tags: ['plane', 'trip', 'airplane'],
4275
4277
  categories: ['transportation', 'travel']
4276
4278
  },
4279
+ {
4280
+ name: 'play',
4281
+ icon: play,
4282
+ tags: ['music', 'audio', 'video', 'start', 'run'],
4283
+ categories: ['arrows', 'multimedia']
4284
+ },
4277
4285
  {
4278
4286
  name: 'plus',
4279
4287
  icon: plus,
@@ -5613,6 +5621,12 @@ let ICONS_LIST = [
5613
5621
  tags: ['file'],
5614
5622
  categories: ['arrows', 'files']
5615
5623
  },
5624
+ {
5625
+ name: 'user',
5626
+ icon: user,
5627
+ tags: ['person', 'account', 'contact'],
5628
+ categories: ['account']
5629
+ },
5616
5630
  {
5617
5631
  name: 'user-check',
5618
5632
  icon: userCheck,
@@ -0,0 +1,62 @@
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
+
24
+ function handleMouseLeave() {
25
+ isHovered = false;
26
+ }
27
+ </script>
28
+
29
+ <div
30
+ class={className}
31
+ aria-label="play"
32
+ role="img"
33
+ onmouseenter={handleMouseEnter}
34
+ onmouseleave={handleMouseLeave}
35
+ >
36
+ <svg
37
+ xmlns="http://www.w3.org/2000/svg"
38
+ width={size}
39
+ height={size}
40
+ viewBox="0 0 24 24"
41
+ fill="none"
42
+ stroke={color}
43
+ stroke-width={strokeWidth}
44
+ stroke-linecap="round"
45
+ stroke-linejoin="round"
46
+ >
47
+ <polygon points="6 3 20 12 6 21 6 3" class:animate={isHovered} />
48
+ </svg>
49
+ </div>
50
+
51
+ <style>
52
+ div {
53
+ display: inline-block;
54
+ }
55
+ polygon {
56
+ transition: transform 0.3s cubic-bezier(0.175, 0.885, 0.32, 1.275);
57
+ }
58
+
59
+ polygon.animate {
60
+ transform: translateX(3px);
61
+ }
62
+ </style>
@@ -0,0 +1,19 @@
1
+ export default Play;
2
+ type Play = {
3
+ $on?(type: string, callback: (e: any) => void): () => void;
4
+ $set?(props: Partial<Props>): void;
5
+ };
6
+ declare const Play: 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
+ };
@@ -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" 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-icon"
41
+ class:animate={isHovered}
42
+ >
43
+ <path d="M19 21v-2a4 4 0 0 0-4-4H9a4 4 0 0 0-4 4v2" class="user-path" />
44
+ <circle cx="12" cy="7" r="4" class="user-circle" />
45
+ </svg>
46
+ </div>
47
+
48
+ <style>
49
+ div {
50
+ display: inline-block;
51
+ }
52
+
53
+ .user-path,
54
+ .user-circle {
55
+ transition: transform 0.6s ease-in-out;
56
+ }
57
+
58
+ .user-icon.animate .user-path {
59
+ animation: pathBounce 0.6s ease-in-out;
60
+ }
61
+
62
+ .user-icon.animate .user-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(2px);
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(4px);
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 User;
2
+ type User = {
3
+ $on?(type: string, callback: (e: any) => void): () => void;
4
+ $set?(props: Partial<Props>): void;
5
+ };
6
+ declare const User: 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
@@ -362,6 +362,7 @@ export { default as PhoneOff } from "./icons/phone-off.svelte";
362
362
  export { default as Pickaxe } from "./icons/pickaxe.svelte";
363
363
  export { default as PinOff } from "./icons/pin-off.svelte";
364
364
  export { default as Plane } from "./icons/plane.svelte";
365
+ export { default as Play } from "./icons/play.svelte";
365
366
  export { default as Plus } from "./icons/plus.svelte";
366
367
  export { default as PointerOff } from "./icons/pointer-off.svelte";
367
368
  export { default as PowerOff } from "./icons/power-off.svelte";
@@ -485,6 +486,7 @@ export { default as UserPen } from "./icons/user-pen.svelte";
485
486
  export { default as UserRoundCheck } from "./icons/user-round-check.svelte";
486
487
  export { default as UserRoundCog } from "./icons/user-round-cog.svelte";
487
488
  export { default as UserRoundPen } from "./icons/user-round-pen.svelte";
489
+ export { default as User } from "./icons/user.svelte";
488
490
  export { default as UsersRound } from "./icons/users-round.svelte";
489
491
  export { default as Users } from "./icons/users.svelte";
490
492
  export { default as Vault } from "./icons/vault.svelte";
package/dist/index.js CHANGED
@@ -362,6 +362,7 @@ export { default as PhoneOff } from './icons/phone-off.svelte';
362
362
  export { default as Pickaxe } from './icons/pickaxe.svelte';
363
363
  export { default as PinOff } from './icons/pin-off.svelte';
364
364
  export { default as Plane } from './icons/plane.svelte';
365
+ export { default as Play } from './icons/play.svelte';
365
366
  export { default as Plus } from './icons/plus.svelte';
366
367
  export { default as PointerOff } from './icons/pointer-off.svelte';
367
368
  export { default as PowerOff } from './icons/power-off.svelte';
@@ -485,6 +486,7 @@ export { default as UserPen } from './icons/user-pen.svelte';
485
486
  export { default as UserRoundCheck } from './icons/user-round-check.svelte';
486
487
  export { default as UserRoundCog } from './icons/user-round-cog.svelte';
487
488
  export { default as UserRoundPen } from './icons/user-round-pen.svelte';
489
+ export { default as User } from './icons/user.svelte';
488
490
  export { default as UsersRound } from './icons/users-round.svelte';
489
491
  export { default as Users } from './icons/users.svelte';
490
492
  export { default as Vault } from './icons/vault.svelte';
package/package.json CHANGED
@@ -1,6 +1,6 @@
1
1
  {
2
2
  "name": "@jis3r/icons",
3
- "version": "1.22.0",
3
+ "version": "1.24.0",
4
4
  "description": "beautifully crafted, moving icons. for svelte.",
5
5
  "keywords": [
6
6
  "svelte",