Compare commits

...

19 Commits

Author SHA1 Message Date
Daniel Bayley
37cb860ebe Add square-asterisk icon (#1179) 2023-05-02 20:47:11 +02:00
Daniel Bayley
bd74ac880e Refine lightbulb icons (#1197) 2023-05-02 20:28:02 +02:00
Karsa
e81b76f445 Adds computer hardware icons from #527 (#1170)
* Adds computer hardware icons from #527

* extend top line

* Added satellite

---------

Co-authored-by: Karsa <karsa@karsa.org>
Co-authored-by: Eric Fennis <eric.fennis@gmail.com>
2023-05-01 19:18:15 +02:00
Daniel Bayley
c50c0e435b Improve align-* metadata (#1193) 2023-05-01 19:00:31 +02:00
Daniel Bayley
afd2db296c Improve milestone metadata (#1194) 2023-05-01 18:59:57 +02:00
Daniel Bayley
175b2cd483 Add/rename braces/brackets/parenthesis icons and improve braces/json metadata (#1063)
* Add `square-brackets` icon

* Add `parentheses` icon

* Improve `curly-braces`/`json` metadata

* Refine `parentheses` icon

Match `path`s in #1134.

* Rename `square-brackets` to `brackets`

* Rename `curly-braces` to `braces`

* Update icons/parentheses.json

---------

Co-authored-by: Karsa <contact@karsa.org>
2023-05-01 18:58:43 +02:00
Daniel Bayley
716c5baea0 Add radiation/biohazard icons (#1153)
* Add `radiation` icon

* Refine `radiation` icon

* Refine `radiation` icon

* Fix `radiation` corner radius

* Add `biohazard` icon

---------

Co-authored-by: Eric Fennis <eric.fennis@gmail.com>
2023-04-30 23:57:34 +02:00
Jakob Guddas
890474889a Simplified microscope (#1189) 2023-04-30 22:11:54 +02:00
Jakob Guddas
e596cd2bad Optimized parking-square-off.svg (#1182) 2023-04-30 22:07:29 +02:00
Quentin Sommer
d4641a4641 Fix children handling in lucide-react-native (#1177) 2023-04-30 22:06:49 +02:00
Karsa
3e3409cee2 Adds generic merge and split icons (#1167)
Co-authored-by: Karsa <karsa@karsa.org>
Co-authored-by: Eric Fennis <eric.fennis@gmail.com>
2023-04-30 21:44:15 +02:00
Daniel Bayley
477f2b2aff Improve heading[-16] metadata (#1173) 2023-04-29 11:24:35 +02:00
Jakob Guddas
000ff56278 Optimized and fixed plug-zap (#1120) 2023-04-29 11:08:03 +02:00
Daniel Bayley
7117220943 Add [un]fold icons (#1060)
* Add `fold-vertical` icon

* Add `unfold-vertical` icon

* Add `fold-horizontal` icon

* Add `unfold-horizontal` icon

* Update icons/fold-horizontal.svg

Co-authored-by: Karsa <contact@karsa.org>

* Update icons/fold-vertical.svg

Co-authored-by: Karsa <contact@karsa.org>

* Update icons/unfold-horizontal.svg

Co-authored-by: Karsa <contact@karsa.org>

* Update icons/unfold-vertical.svg

Co-authored-by: Karsa <contact@karsa.org>

---------

Co-authored-by: Karsa <contact@karsa.org>
2023-04-29 11:06:08 +02:00
Eric Fennis
f820da257d Create FUNDING.yml 2023-04-28 22:59:05 +02:00
Daniel Bayley
de629f0fcc Fix removal of sidebar.json (#1174)
Not sure what happened, but `sidebar.json` should have been deleted when replaced with
`panel-left.json` in #1003… This is currently breaking the `pre-commit` hook!
2023-04-28 21:04:02 +02:00
Daniel Bayley
8f7e9b3cde Rename text-selection to text-select (#1131)
This should have been called `text-select`, consistent with `box-select`…
2023-04-28 10:35:35 +02:00
Daniel Bayley
4e79f147cf Add ligature icon (#1160)
* Add `ligature` icon

* Refine `ligature` icon

* Fix missing serifs
2023-04-28 10:33:41 +02:00
Daniel Bayley
3482cd0949 Add rows icon (#1059)
* Add `rows` icon

* Improve `columns` metadata
2023-04-28 10:17:35 +02:00
66 changed files with 756 additions and 43 deletions

2
.github/FUNDING.yml vendored Normal file
View File

@@ -0,0 +1,2 @@
# These are supported funding model platforms
open_collective: lucide-icons

View File

@@ -3,7 +3,9 @@
"tags": [
"text",
"alignment",
"justified"
"justified",
"menu",
"list"
],
"categories": [
"text"

View File

@@ -3,7 +3,8 @@
"tags": [
"text",
"alignment",
"left"
"left",
"list"
],
"categories": [
"text"

14
icons/biohazard.json Normal file
View File

@@ -0,0 +1,14 @@
{
"$schema": "../icon.schema.json",
"tags": [
"fallout",
"waste",
"biology",
"chemistry",
"chemical",
"element"
],
"categories": [
"science"
]
}

22
icons/biohazard.svg Normal file
View File

@@ -0,0 +1,22 @@
<svg
xmlns="http://www.w3.org/2000/svg"
width="24"
height="24"
viewBox="0 0 24 24"
fill="none"
stroke="currentColor"
stroke-width="2"
stroke-linecap="round"
stroke-linejoin="round"
>
<circle cx="12" cy="11.9" r="2" />
<path d="M6.7 3.4c-.9 2.5 0 5.2 2.2 6.7C6.5 9 3.7 9.6 2 11.6" />
<path d="m8.9 10.1 1.4.8" />
<path d="M17.3 3.4c.9 2.5 0 5.2-2.2 6.7 2.4-1.2 5.2-.6 6.9 1.5" />
<path d="m15.1 10.1-1.4.8" />
<path d="M16.7 20.8c-2.6-.4-4.6-2.6-4.7-5.3-.2 2.6-2.1 4.8-4.7 5.2" />
<path d="M12 13.9v1.6" />
<path d="M13.5 5.4c-1-.2-2-.2-3 0" />
<path d="M17 16.4c.7-.7 1.2-1.6 1.5-2.5" />
<path d="M5.5 13.9c.3.9.8 1.8 1.5 2.5" />
</svg>

After

Width:  |  Height:  |  Size: 675 B

17
icons/braces.json Normal file
View File

@@ -0,0 +1,17 @@
{
"$schema": "../icon.schema.json",
"tags": [
"json",
"code",
"token",
"curly brackets",
"data"
],
"categories": [
"development",
"files"
],
"aliases": [
"curly-braces"
]
}

View File

Before

Width:  |  Height:  |  Size: 380 B

After

Width:  |  Height:  |  Size: 380 B

View File

@@ -1,12 +1,14 @@
{
"$schema": "../icon.schema.json",
"tags": [
"json",
"code",
"token"
"token",
"array",
"list",
"square"
],
"categories": [
"development",
"files"
]
}
}

14
icons/brackets.svg Normal file
View File

@@ -0,0 +1,14 @@
<svg
xmlns="http://www.w3.org/2000/svg"
width="24"
height="24"
viewBox="0 0 24 24"
fill="none"
stroke="currentColor"
stroke-width="2"
stroke-linecap="round"
stroke-linejoin="round"
>
<path d="M16 3h3v18h-3" />
<path d="M8 21H5V3h3" />
</svg>

After

Width:  |  Height:  |  Size: 264 B

View File

@@ -1,9 +1,14 @@
{
"$schema": "../icon.schema.json",
"tags": [
"layout"
"split",
"parallel",
"vertical",
"horizontal"
],
"categories": [
"layout",
"design",
"text"
]
}

View File

@@ -3,7 +3,8 @@
"tags": [
"code",
"json",
"curly braces"
"curly braces",
"curly brackets"
],
"categories": [
"files",

View File

@@ -3,7 +3,8 @@
"tags": [
"code",
"json",
"curly braces"
"curly braces",
"curly brackets"
],
"categories": [
"files",

View File

@@ -0,0 +1,14 @@
{
"$schema": "../icon.schema.json",
"tags": [
"arrow",
"collapse",
"fold",
"vertical",
"dashed"
],
"categories": [
"arrows",
"layout"
]
}

20
icons/fold-horizontal.svg Normal file
View File

@@ -0,0 +1,20 @@
<svg
xmlns="http://www.w3.org/2000/svg"
width="24"
height="24"
viewBox="0 0 24 24"
fill="none"
stroke="currentColor"
stroke-width="2"
stroke-linecap="round"
stroke-linejoin="round"
>
<path d="M2 12h6" />
<path d="M22 12h-6" />
<path d="M12 2v2" />
<path d="M12 8v2" />
<path d="M12 14v2" />
<path d="M12 20v2" />
<path d="m19 9-3 3 3 3" />
<path d="m5 15 3-3-3-3" />
</svg>

After

Width:  |  Height:  |  Size: 408 B

14
icons/fold-vertical.json Normal file
View File

@@ -0,0 +1,14 @@
{
"$schema": "../icon.schema.json",
"tags": [
"arrow",
"collapse",
"fold",
"vertical",
"dashed"
],
"categories": [
"arrows",
"layout"
]
}

20
icons/fold-vertical.svg Normal file
View File

@@ -0,0 +1,20 @@
<svg
xmlns="http://www.w3.org/2000/svg"
width="24"
height="24"
viewBox="0 0 24 24"
fill="none"
stroke="currentColor"
stroke-width="2"
stroke-linecap="round"
stroke-linejoin="round"
>
<path d="M12 22v-6" />
<path d="M12 8V2" />
<path d="M4 12H2" />
<path d="M10 12H8" />
<path d="M16 12h-2" />
<path d="M22 12h-2" />
<path d="m15 19-3-3-3 3" />
<path d="m15 5-3 3-3-3" />
</svg>

After

Width:  |  Height:  |  Size: 412 B

View File

@@ -1,7 +1,13 @@
{
"$schema": "../icon.schema.json",
"tags": [],
"tags": [
"h1",
"html",
"markup",
"markdown"
],
"categories": [
"text"
"text",
"development"
]
}

View File

@@ -1,7 +1,13 @@
{
"$schema": "../icon.schema.json",
"tags": [],
"tags": [
"h2",
"html",
"markup",
"markdown"
],
"categories": [
"text"
"text",
"development"
]
}

View File

@@ -1,7 +1,13 @@
{
"$schema": "../icon.schema.json",
"tags": [],
"tags": [
"h3",
"html",
"markup",
"markdown"
],
"categories": [
"text"
"text",
"development"
]
}

View File

@@ -1,7 +1,13 @@
{
"$schema": "../icon.schema.json",
"tags": [],
"tags": [
"h4",
"html",
"markup",
"markdown"
],
"categories": [
"text"
"text",
"development"
]
}

View File

@@ -1,7 +1,13 @@
{
"$schema": "../icon.schema.json",
"tags": [],
"tags": [
"h5",
"html",
"markup",
"markdown"
],
"categories": [
"text"
"text",
"development"
]
}

View File

@@ -1,7 +1,13 @@
{
"$schema": "../icon.schema.json",
"tags": [],
"tags": [
"h6",
"html",
"markup",
"markdown"
],
"categories": [
"text"
"text",
"development"
]
}

View File

@@ -1,7 +1,13 @@
{
"$schema": "../icon.schema.json",
"tags": [],
"tags": [
"h1",
"html",
"markup",
"markdown"
],
"categories": [
"text"
"text",
"development"
]
}

13
icons/ligature.json Normal file
View File

@@ -0,0 +1,13 @@
{
"$schema": "../icon.schema.json",
"tags": [
"text",
"font",
"typography",
"alternates",
"alternatives"
],
"categories": [
"text"
]
}

17
icons/ligature.svg Normal file
View File

@@ -0,0 +1,17 @@
<svg
xmlns="http://www.w3.org/2000/svg"
width="24"
height="24"
viewBox="0 0 24 24"
fill="none"
stroke="currentColor"
stroke-width="2"
stroke-linecap="round"
stroke-linejoin="round"
>
<path d="M8 20V8c0-2.2 1.8-4 4-4 1.5 0 2.8.8 3.5 2" />
<path d="M6 12h4" />
<path d="M14 12h2v8" />
<path d="M6 20h4" />
<path d="M14 20h4" />
</svg>

After

Width:  |  Height:  |  Size: 361 B

View File

@@ -9,9 +9,9 @@
stroke-linecap="round"
stroke-linejoin="round"
>
<path d="M16.8 11.2c.8-.9 1.2-2 1.2-3.2a6 6 0 0 0-9.3-5" />
<path d="m2 2 20 20" />
<path d="M6.3 6.3a4.67 4.67 0 0 0 1.2 5.2c.7.7 1.3 1.5 1.5 2.5" />
<path d="M9 18h6" />
<path d="M10 22h4" />
<path d="m2 2 20 20" />
<path d="M9 2.804A6 6 0 0 1 18 8a4.65 4.65 0 0 1-1.03 3" />
<path d="M8.91 14a4.61 4.61 0 0 0-1.41-2.5C6.23 10.23 6 9 6 8a6 6 0 0 1 .084-1" />
</svg>

Before

Width:  |  Height:  |  Size: 428 B

After

Width:  |  Height:  |  Size: 412 B

View File

@@ -9,7 +9,7 @@
stroke-linecap="round"
stroke-linejoin="round"
>
<line x1="9" x2="15" y1="18" y2="18" />
<line x1="10" x2="14" y1="22" y2="22" />
<path d="M15.09 14c.18-.98.65-1.74 1.41-2.5A4.65 4.65 0 0 0 18 8 6 6 0 0 0 6 8c0 1 .23 2.23 1.5 3.5A4.61 4.61 0 0 1 8.91 14" />
<path d="M15 14c.2-1 .7-1.7 1.5-2.5 1-.9 1.5-2.2 1.5-3.5A6 6 0 0 0 6 8c0 1 .2 2.2 1.5 3.5.7.7 1.3 1.5 1.5 2.5" />
<path d="M9 18h6" />
<path d="M10 22h4" />
</svg>

Before

Width:  |  Height:  |  Size: 423 B

After

Width:  |  Height:  |  Size: 371 B

11
icons/memory-stick.json Normal file
View File

@@ -0,0 +1,11 @@
{
"$schema": "../icon.schema.json",
"tags": [
"ram"
],
"categories": [
"devices",
"development",
"gaming"
]
}

21
icons/memory-stick.svg Normal file
View File

@@ -0,0 +1,21 @@
<svg
xmlns="http://www.w3.org/2000/svg"
width="24"
height="24"
viewBox="0 0 24 24"
fill="none"
stroke="currentColor"
stroke-width="2"
stroke-linecap="round"
stroke-linejoin="round"
>
<path d="M6 19v-3" />
<path d="M10 19v-3" />
<path d="M14 19v-3" />
<path d="M18 19v-3" />
<path d="M8 11V9" />
<path d="M16 11V9" />
<path d="M12 11V9" />
<path d="M2 15h20" />
<path d="M2 7a2 2 0 0 1 2-2h16a2 2 0 0 1 2 2v1.1a2 2 0 0 0 0 3.837V17a2 2 0 0 1-2 2H4a2 2 0 0 1-2-2v-5.1a2 2 0 0 0 0-3.837Z" />
</svg>

After

Width:  |  Height:  |  Size: 532 B

12
icons/merge.json Normal file
View File

@@ -0,0 +1,12 @@
{
"$schema": "../icon.schema.json",
"tags": [
"combine",
"join",
"unite"
],
"categories": [
"development",
"arrows"
]
}

15
icons/merge.svg Normal file
View File

@@ -0,0 +1,15 @@
<svg
xmlns="http://www.w3.org/2000/svg"
width="24"
height="24"
viewBox="0 0 24 24"
fill="none"
stroke="currentColor"
stroke-width="2"
stroke-linecap="round"
stroke-linejoin="round"
>
<path d="m8 6 4-4 4 4" />
<path d="M12 2v10.3a4 4 0 0 1-1.172 2.872L4 22" />
<path d="m20 22-5-5" />
</svg>

After

Width:  |  Height:  |  Size: 315 B

View File

@@ -13,6 +13,6 @@
<path d="M3 22h18" />
<path d="M14 22a7 7 0 1 0 0-14h-1" />
<path d="M9 14h2" />
<path d="M8 6h4" />
<path d="M13 10V6.5a.5.5 0 0 0-.5-.5.5.5 0 0 1-.5-.5V3a1 1 0 0 0-1-1H9a1 1 0 0 0-1 1v2.5a.5.5 0 0 1-.5.5.5.5 0 0 0-.5.5V10c0 1.1.9 2 2 2h2a2 2 0 0 0 2-2Z" />
<path d="M9 12a2 2 0 0 1-2-2V6h6v4a2 2 0 0 1-2 2Z" />
<path d="M12 6V3a1 1 0 0 0-1-1H9a1 1 0 0 0-1 1v3" />
</svg>

Before

Width:  |  Height:  |  Size: 500 B

After

Width:  |  Height:  |  Size: 429 B

View File

@@ -3,11 +3,13 @@
"tags": [
"sign",
"signpost",
"direction",
"version control"
],
"categories": [
"arrows",
"navigation",
"development",
"gaming"
]
}
}

23
icons/parentheses.json Normal file
View File

@@ -0,0 +1,23 @@
{
"$schema": "../icon.schema.json",
"tags": [
"code",
"token",
"parenthesis",
"parens",
"brackets",
"parameters",
"arguments",
"args",
"input",
"call",
"maths",
"formula",
"function"
],
"categories": [
"development",
"files",
"maths"
]
}

14
icons/parentheses.svg Normal file
View File

@@ -0,0 +1,14 @@
<svg
xmlns="http://www.w3.org/2000/svg"
width="24"
height="24"
viewBox="0 0 24 24"
fill="none"
stroke="currentColor"
stroke-width="2"
stroke-linecap="round"
stroke-linejoin="round"
>
<path d="M8 21s-4-3-4-9 4-9 4-9" />
<path d="M16 3s4 3 4 9-4 9-4 9" />
</svg>

After

Width:  |  Height:  |  Size: 283 B

View File

@@ -9,9 +9,9 @@
stroke-linecap="round"
stroke-linejoin="round"
>
<path d="M3.59 3.59A2 2 0 0 1 5 3h14a2 2 0 0 1 2 2v14a2 2 0 0 1-.59 1.41" />
<path d="M3 8.66V19c0 1.1.9 2 2 2h10.34" />
<path d="M3.6 3.6A2 2 0 0 1 5 3h14a2 2 0 0 1 2 2v14a2 2 0 0 1-.59 1.41" />
<path d="M3 8.7V19a2 2 0 0 0 2 2h10.3" />
<path d="m2 2 20 20" />
<path d="M13 13a3 3 0 1 0 0-6H9v2" />
<path d="M9 17v-2.34" />
<path d="M9 17v-2.3" />
</svg>

Before

Width:  |  Height:  |  Size: 426 B

After

Width:  |  Height:  |  Size: 421 B

11
icons/pc-case.json Normal file
View File

@@ -0,0 +1,11 @@
{
"$schema": "../icon.schema.json",
"tags": [
"computer",
"chassis"
],
"categories": [
"devices",
"gaming"
]
}

16
icons/pc-case.svg Normal file
View File

@@ -0,0 +1,16 @@
<svg
xmlns="http://www.w3.org/2000/svg"
width="24"
height="24"
viewBox="0 0 24 24"
fill="none"
stroke="currentColor"
stroke-width="2"
stroke-linecap="round"
stroke-linejoin="round"
>
<rect width="14" height="20" x="5" y="2" rx="2" />
<path d="M15 14h.01" />
<path d="M9 6h6" />
<path d="M9 10h6" />
</svg>

After

Width:  |  Height:  |  Size: 332 B

View File

@@ -9,10 +9,9 @@
stroke-linecap="round"
stroke-linejoin="round"
>
<rect x="8" y="13" width="8" height="6" rx="2" />
<path d="m13 2-2 2.5h3L12 7" />
<path d="M12 22v-3" />
<path d="M10 13v-2.5" />
<path d="M10 12.5v-2" />
<path d="M14 12.5v-2" />
<path d="M16 15a2 2 0 0 0-2-2h-4a2 2 0 0 0-2 2v2a2 2 0 0 0 2 2h4a2 2 0 0 0 2-2v-2z" />
<path d="M14 13v-2.5" />
</svg>

Before

Width:  |  Height:  |  Size: 437 B

After

Width:  |  Height:  |  Size: 373 B

17
icons/radiation.json Normal file
View File

@@ -0,0 +1,17 @@
{
"$schema": "../icon.schema.json",
"tags": [
"radioactive",
"nuclear",
"fallout",
"waste",
"atomic",
"physics",
"particle",
"element",
"molecule"
],
"categories": [
"science"
]
}

16
icons/radiation.svg Normal file
View File

@@ -0,0 +1,16 @@
<svg
xmlns="http://www.w3.org/2000/svg"
width="24"
height="24"
viewBox="0 0 24 24"
fill="none"
stroke="currentColor"
stroke-width="2"
stroke-linecap="round"
stroke-linejoin="round"
>
<path d="M12 12h0" />
<path d="M7.5 4.2c-.3-.5-.9-.7-1.3-.4C3.9 5.5 2.3 8.1 2 11c-.1.5.4 1 1 1h5c0-1.5.8-2.8 2-3.4-1.1-1.9-2-3.5-2.5-4.4z" />
<path d="M21 12c.6 0 1-.4 1-1-.3-2.9-1.8-5.5-4.1-7.1-.4-.3-1.1-.2-1.3.3-.6.9-1.5 2.5-2.6 4.3 1.2.7 2 2 2 3.5h5z" />
<path d="M7.5 19.8c-.3.5-.1 1.1.4 1.3 2.6 1.2 5.6 1.2 8.2 0 .5-.2.7-.8.4-1.3-.5-.9-1.4-2.5-2.5-4.3-1.2.7-2.8.7-4 0-1.1 1.8-2 3.4-2.5 4.3z" />
</svg>

After

Width:  |  Height:  |  Size: 616 B

17
icons/rows.json Normal file
View File

@@ -0,0 +1,17 @@
{
"$schema": "../icon.schema.json",
"tags": [
"split",
"lines",
"queue",
"series",
"list",
"vertical",
"horizontal"
],
"categories": [
"layout",
"design",
"text"
]
}

14
icons/rows.svg Normal file
View File

@@ -0,0 +1,14 @@
<svg
xmlns="http://www.w3.org/2000/svg"
width="24"
height="24"
viewBox="0 0 24 24"
fill="none"
stroke="currentColor"
stroke-width="2"
stroke-linecap="round"
stroke-linejoin="round"
>
<rect width="18" height="18" x="3" y="3" rx="2" ry="2" />
<line x1="3" x2="21" y1="12" y2="12" />
</svg>

After

Width:  |  Height:  |  Size: 310 B

14
icons/satellite-dish.json Normal file
View File

@@ -0,0 +1,14 @@
{
"$schema": "../icon.schema.json",
"tags": [
"antenna",
"receiver",
"dish aerial",
"saucer"
],
"categories": [
"connectivity",
"devices",
"multimedia"
]
}

16
icons/satellite-dish.svg Normal file
View File

@@ -0,0 +1,16 @@
<svg
xmlns="http://www.w3.org/2000/svg"
width="24"
height="24"
viewBox="0 0 24 24"
fill="none"
stroke="currentColor"
stroke-width="2"
stroke-linecap="round"
stroke-linejoin="round"
>
<path d="M4 10a7.31 7.31 0 0 0 10 10Z" />
<path d="m9 15 3-3" />
<path d="M17 13a6 6 0 0 0-6-6" />
<path d="M21 13A10 10 0 0 0 11 3" />
</svg>

After

Width:  |  Height:  |  Size: 352 B

12
icons/satellite.json Normal file
View File

@@ -0,0 +1,12 @@
{
"$schema": "../icon.schema.json",
"tags": [
"space station",
"orbit",
"transmitter"
],
"categories": [
"connectivity",
"science"
]
}

17
icons/satellite.svg Normal file
View File

@@ -0,0 +1,17 @@
<svg
xmlns="http://www.w3.org/2000/svg"
width="24"
height="24"
viewBox="0 0 24 24"
fill="none"
stroke="currentColor"
stroke-width="2"
stroke-linecap="round"
stroke-linejoin="round"
>
<path d="M13 7 9 3 5 7l4 4" />
<path d="m17 11 4 4-4 4-4-4" />
<path d="m8 12 4 4 6-6-4-4Z" />
<path d="m16 8 3-3" />
<path d="M9 21a6 6 0 0 0-6-6" />
</svg>

After

Width:  |  Height:  |  Size: 369 B

15
icons/split.json Normal file
View File

@@ -0,0 +1,15 @@
{
"$schema": "../icon.schema.json",
"tags": [
"break",
"disband",
"divide",
"separate",
"branch",
"disunite"
],
"categories": [
"development",
"arrows"
]
}

16
icons/split.svg Normal file
View File

@@ -0,0 +1,16 @@
<svg
xmlns="http://www.w3.org/2000/svg"
width="24"
height="24"
viewBox="0 0 24 24"
fill="none"
stroke="currentColor"
stroke-width="2"
stroke-linecap="round"
stroke-linejoin="round"
>
<path d="M16 3h5v5" />
<path d="M8 3H3v5" />
<path d="M12 22v-8.3a4 4 0 0 0-1.172-2.872L3 3" />
<path d="m15 9 6-6" />
</svg>

After

Width:  |  Height:  |  Size: 335 B

View File

@@ -0,0 +1,14 @@
{
"$schema": "../icon.schema.json",
"tags": [
"password",
"secret",
"access",
"key"
],
"categories": [
"text",
"security",
"account"
]
}

16
icons/square-asterisk.svg Normal file
View File

@@ -0,0 +1,16 @@
<svg
xmlns="http://www.w3.org/2000/svg"
width="24"
height="24"
viewBox="0 0 24 24"
fill="none"
stroke="currentColor"
stroke-width="2"
stroke-linecap="round"
stroke-linejoin="round"
>
<rect width="18" height="18" x="3" y="3" rx="2" />
<path d="M12 8v8" />
<path d="m8.5 14 7-4" />
<path d="m8.5 10 7 4" />
</svg>

After

Width:  |  Height:  |  Size: 338 B

View File

@@ -2,10 +2,14 @@
"$schema": "../icon.schema.json",
"tags": [
"find",
"search"
"search",
"selection"
],
"categories": [
"text",
"cursors"
],
"aliases": [
"text-selection"
]
}
}

View File

Before

Width:  |  Height:  |  Size: 656 B

After

Width:  |  Height:  |  Size: 656 B

View File

@@ -1,9 +1,10 @@
{
"$schema": "../icon.schema.json",
"tags": [
"menu"
"trackpad",
"cursor"
],
"categories": [
"layout"
"devices"
]
}
}

18
icons/touchpad-off.svg Normal file
View File

@@ -0,0 +1,18 @@
<svg
xmlns="http://www.w3.org/2000/svg"
width="24"
height="24"
viewBox="0 0 24 24"
fill="none"
stroke="currentColor"
stroke-width="2"
stroke-linecap="round"
stroke-linejoin="round"
>
<path d="M4 4a2 2 0 0 0-2 2v12a2 2 0 0 0 2 2h16" />
<path d="M2 14h12" />
<path d="M22 14h-2" />
<path d="M12 20v-6" />
<path d="m2 2 20 20" />
<path d="M22 16V6a2 2 0 0 0-2-2H10" />
</svg>

After

Width:  |  Height:  |  Size: 403 B

10
icons/touchpad.json Normal file
View File

@@ -0,0 +1,10 @@
{
"$schema": "../icon.schema.json",
"tags": [
"trackpad",
"cursor"
],
"categories": [
"devices"
]
}

15
icons/touchpad.svg Normal file
View File

@@ -0,0 +1,15 @@
<svg
xmlns="http://www.w3.org/2000/svg"
width="24"
height="24"
viewBox="0 0 24 24"
fill="none"
stroke="currentColor"
stroke-width="2"
stroke-linecap="round"
stroke-linejoin="round"
>
<rect width="20" height="16" x="2" y="4" rx="2" />
<path d="M2 14h20" />
<path d="M12 20v-6" />
</svg>

After

Width:  |  Height:  |  Size: 310 B

View File

@@ -0,0 +1,14 @@
{
"$schema": "../icon.schema.json",
"tags": [
"arrow",
"collapse",
"fold",
"vertical",
"dashed"
],
"categories": [
"arrows",
"layout"
]
}

View File

@@ -0,0 +1,20 @@
<svg
xmlns="http://www.w3.org/2000/svg"
width="24"
height="24"
viewBox="0 0 24 24"
fill="none"
stroke="currentColor"
stroke-width="2"
stroke-linecap="round"
stroke-linejoin="round"
>
<path d="M16 12h6" />
<path d="M8 12H2" />
<path d="M12 2v2" />
<path d="M12 8v2" />
<path d="M12 14v2" />
<path d="M12 20v2" />
<path d="m19 15 3-3-3-3" />
<path d="m5 9-3 3 3 3" />
</svg>

After

Width:  |  Height:  |  Size: 407 B

View File

@@ -0,0 +1,13 @@
{
"$schema": "../icon.schema.json",
"tags": [
"arrow",
"expand",
"vertical",
"dashed"
],
"categories": [
"arrows",
"layout"
]
}

20
icons/unfold-vertical.svg Normal file
View File

@@ -0,0 +1,20 @@
<svg
xmlns="http://www.w3.org/2000/svg"
width="24"
height="24"
viewBox="0 0 24 24"
fill="none"
stroke="currentColor"
stroke-width="2"
stroke-linecap="round"
stroke-linejoin="round"
>
<path d="M12 22v-6" />
<path d="M12 8V2" />
<path d="M4 12H2" />
<path d="M10 12H8" />
<path d="M16 12h-2" />
<path d="M22 12h-2" />
<path d="m15 19-3 3-3-3" />
<path d="m15 5-3-3-3 3" />
</svg>

After

Width:  |  Height:  |  Size: 412 B

11
icons/wallpaper.json Normal file
View File

@@ -0,0 +1,11 @@
{
"$schema": "../icon.schema.json",
"tags": [
"cover",
"lock screen"
],
"categories": [
"account",
"devices"
]
}

16
icons/wallpaper.svg Normal file
View File

@@ -0,0 +1,16 @@
<svg
xmlns="http://www.w3.org/2000/svg"
width="24"
height="24"
viewBox="0 0 24 24"
fill="none"
stroke="currentColor"
stroke-width="2"
stroke-linecap="round"
stroke-linejoin="round"
>
<circle cx="8" cy="9" r="2" />
<path d="m9 17 6.1-6.1a2 2 0 0 1 2.81.01L22 15V5a2 2 0 0 0-2-2H4a2 2 0 0 0-2 2v10a2 2 0 0 0 2 2h16a2 2 0 0 0 2-2" />
<path d="M8 21h8" />
<path d="M12 17v4" />
</svg>

After

Width:  |  Height:  |  Size: 407 B

View File

@@ -30,7 +30,9 @@ const createLucideIcon = (iconName: string, iconNode: IconNode) => {
const upperCasedTag = (tag.charAt(0).toUpperCase() + tag.slice(1)) as keyof (typeof NativeSvg);
return createElement(NativeSvg[upperCasedTag] as FunctionComponent<Record<string, string>>, attrs);
}),
...(children as ReactNode[] || []),
...(
(Array.isArray(children) ? children : [children]) || []
),
],
),
);

View File

@@ -5,3 +5,7 @@ exports[`Using lucide icon components > should adjust the size, stroke color and
exports[`Using lucide icon components > should not scale the strokeWidth when absoluteStrokeWidth is set 1`] = `"<svg xmlns=\\"http://www.w3.org/2000/svg\\" width=\\"48\\" height=\\"48\\" viewBox=\\"0 0 24 24\\" fill=\\"none\\" stroke=\\"red\\" stroke-width=\\"1\\" stroke-linecap=\\"round\\" stroke-linejoin=\\"round\\" data-testid=\\"grid-icon\\"><rect width=\\"18\\" height=\\"18\\" x=\\"3\\" y=\\"3\\" rx=\\"2\\" ry=\\"2\\"></rect><line x1=\\"3\\" x2=\\"21\\" y1=\\"9\\" y2=\\"9\\"></line><line x1=\\"3\\" x2=\\"21\\" y1=\\"15\\" y2=\\"15\\"></line><line x1=\\"9\\" x2=\\"9\\" y1=\\"3\\" y2=\\"21\\"></line><line x1=\\"15\\" x2=\\"15\\" y1=\\"3\\" y2=\\"21\\"></line></svg>"`;
exports[`Using lucide icon components > should render an component 1`] = `"<svg xmlns=\\"http://www.w3.org/2000/svg\\" width=\\"24\\" height=\\"24\\" viewBox=\\"0 0 24 24\\" fill=\\"none\\" stroke=\\"currentColor\\" stroke-width=\\"2\\" stroke-linecap=\\"round\\" stroke-linejoin=\\"round\\"><rect width=\\"18\\" height=\\"18\\" x=\\"3\\" y=\\"3\\" rx=\\"2\\" ry=\\"2\\"></rect><line x1=\\"3\\" x2=\\"21\\" y1=\\"9\\" y2=\\"9\\"></line><line x1=\\"3\\" x2=\\"21\\" y1=\\"15\\" y2=\\"15\\"></line><line x1=\\"9\\" x2=\\"9\\" y1=\\"3\\" y2=\\"21\\"></line><line x1=\\"15\\" x2=\\"15\\" y1=\\"3\\" y2=\\"21\\"></line></svg>"`;
exports[`Using lucide icon components > should work with a single child component 1`] = `"<svg xmlns=\\"http://www.w3.org/2000/svg\\" width=\\"24\\" height=\\"24\\" viewBox=\\"0 0 24 24\\" fill=\\"none\\" stroke=\\"currentColor\\" stroke-width=\\"2\\" stroke-linecap=\\"round\\" stroke-linejoin=\\"round\\" data-testid=\\"single-child\\"><rect width=\\"18\\" height=\\"18\\" x=\\"3\\" y=\\"3\\" rx=\\"2\\" ry=\\"2\\"></rect><line x1=\\"3\\" x2=\\"21\\" y1=\\"9\\" y2=\\"9\\"></line><line x1=\\"3\\" x2=\\"21\\" y1=\\"15\\" y2=\\"15\\"></line><line x1=\\"9\\" x2=\\"9\\" y1=\\"3\\" y2=\\"21\\"></line><line x1=\\"15\\" x2=\\"15\\" y1=\\"3\\" y2=\\"21\\"></line><svg xmlns=\\"http://www.w3.org/2000/svg\\" width=\\"24\\" height=\\"24\\" viewBox=\\"0 0 24 24\\" fill=\\"none\\" stroke=\\"currentColor\\" stroke-width=\\"2\\" stroke-linecap=\\"round\\" stroke-linejoin=\\"round\\" data-testid=\\"child\\"><rect width=\\"18\\" height=\\"18\\" x=\\"3\\" y=\\"3\\" rx=\\"2\\" ry=\\"2\\"></rect><line x1=\\"3\\" x2=\\"21\\" y1=\\"9\\" y2=\\"9\\"></line><line x1=\\"3\\" x2=\\"21\\" y1=\\"15\\" y2=\\"15\\"></line><line x1=\\"9\\" x2=\\"9\\" y1=\\"3\\" y2=\\"21\\"></line><line x1=\\"15\\" x2=\\"15\\" y1=\\"3\\" y2=\\"21\\"></line></svg></svg>"`;
exports[`Using lucide icon components > should work with several children components 1`] = `"<svg xmlns=\\"http://www.w3.org/2000/svg\\" width=\\"24\\" height=\\"24\\" viewBox=\\"0 0 24 24\\" fill=\\"none\\" stroke=\\"currentColor\\" stroke-width=\\"2\\" stroke-linecap=\\"round\\" stroke-linejoin=\\"round\\" data-testid=\\"multiple-children\\"><rect width=\\"18\\" height=\\"18\\" x=\\"3\\" y=\\"3\\" rx=\\"2\\" ry=\\"2\\"></rect><line x1=\\"3\\" x2=\\"21\\" y1=\\"9\\" y2=\\"9\\"></line><line x1=\\"3\\" x2=\\"21\\" y1=\\"15\\" y2=\\"15\\"></line><line x1=\\"9\\" x2=\\"9\\" y1=\\"3\\" y2=\\"21\\"></line><line x1=\\"15\\" x2=\\"15\\" y1=\\"3\\" y2=\\"21\\"></line><svg xmlns=\\"http://www.w3.org/2000/svg\\" width=\\"24\\" height=\\"24\\" viewBox=\\"0 0 24 24\\" fill=\\"none\\" stroke=\\"currentColor\\" stroke-width=\\"2\\" stroke-linecap=\\"round\\" stroke-linejoin=\\"round\\" data-testid=\\"child1\\"><rect width=\\"18\\" height=\\"18\\" x=\\"3\\" y=\\"3\\" rx=\\"2\\" ry=\\"2\\"></rect><line x1=\\"3\\" x2=\\"21\\" y1=\\"9\\" y2=\\"9\\"></line><line x1=\\"3\\" x2=\\"21\\" y1=\\"15\\" y2=\\"15\\"></line><line x1=\\"9\\" x2=\\"9\\" y1=\\"3\\" y2=\\"21\\"></line><line x1=\\"15\\" x2=\\"15\\" y1=\\"3\\" y2=\\"21\\"></line></svg><svg xmlns=\\"http://www.w3.org/2000/svg\\" width=\\"24\\" height=\\"24\\" viewBox=\\"0 0 24 24\\" fill=\\"none\\" stroke=\\"currentColor\\" stroke-width=\\"2\\" stroke-linecap=\\"round\\" stroke-linejoin=\\"round\\" data-testid=\\"child2\\"><rect width=\\"18\\" height=\\"18\\" x=\\"3\\" y=\\"3\\" rx=\\"2\\" ry=\\"2\\"></rect><line x1=\\"3\\" x2=\\"21\\" y1=\\"9\\" y2=\\"9\\"></line><line x1=\\"3\\" x2=\\"21\\" y1=\\"15\\" y2=\\"15\\"></line><line x1=\\"9\\" x2=\\"9\\" y1=\\"3\\" y2=\\"21\\"></line><line x1=\\"15\\" x2=\\"15\\" y1=\\"3\\" y2=\\"21\\"></line></svg></svg>"`;

View File

@@ -80,4 +80,40 @@ describe('Using lucide icon components', () => {
expect( container.innerHTML ).toMatchSnapshot();
});
it('should work with a single child component', () => {
const testId = "single-child";
const childId = "child";
const { container, getByTestId } = render(
<Grid data-testid={testId}>
<Grid data-testid={childId}/>
</Grid>
);
const { children} = getByTestId(testId) as unknown as{ children: HTMLCollection};
const lastChild = children[children.length -1];
expect(lastChild).toEqual(getByTestId(childId));
expect(container.innerHTML).toMatchSnapshot();
})
it('should work with several children components', () => {
const testId = "multiple-children";
const childId1 = "child1";
const childId2 = "child2";
const { container, getByTestId } = render(
<Grid data-testid={testId}>
<Grid data-testid={childId1}/>
<Grid data-testid={childId2}/>
</Grid>
);
const {children} = getByTestId(testId) as unknown as{ children: HTMLCollection};
const child1 = children[children.length - 2];
const child2 = children[children.length - 1];
expect(child1).toEqual(getByTestId(childId1));
expect(child2).toEqual(getByTestId(childId2));
expect(container.innerHTML).toMatchSnapshot();
})
})