Compare commits

...

15 Commits

Author SHA1 Message Date
Karsa
3df9be04a8 Renames stars to sparkles (#1221)
Co-authored-by: Karsa <karsa@karsa.org>
2023-05-06 15:12:21 +02:00
Jakob Guddas
016c9d1fac feat: added 100% preview with different stroke widths and in context with other icons (#1180)
* feat: added 100% preview with different stroke widths

* feat: added 100% preview with different stroke widths

* fix: fixed detail section issue

* fix: added lost detail section

* feat: added cohesion preview
2023-05-06 15:02:52 +02:00
Daniel Bayley
17f9509f71 Add/optimise layout-* alternate icons (#1184)
* Optimise `layout-template`

* Add `layout-grid` alternate icon

* Add `layout-template` alternate icon`

* Refine `layout-*` icons

* Refine `layout-*` icons

* Rename `layout-grid-2` to `layout-panel-left`

* Rename `layout-template-2` to `layout-panel-top`
2023-05-06 15:01:35 +02:00
Karsa
b6c7434e92 [lucide-angular] Adds support for ng@16.x (#1219)
Co-authored-by: Karsa <karsa@karsa.org>
2023-05-06 07:27:43 +02:00
Daniel Bayley
47aa3c2664 Optimiseat-sign icon (#1213)
* Optimise `at-sign` icon

* Refine `at-sign` icon

* Restore `at-sign` ascender
2023-05-05 14:14:23 +02:00
Karsa
e50b03f316 Adds leafy-green icon (#1168)
Co-authored-by: Karsa <karsa@karsa.org>
2023-05-05 13:27:35 +02:00
Karsa
0065b5952b Adds alternate user icons (#1116)
Co-authored-by: Karsa <karsa@karsa.org>
2023-05-05 09:32:23 +02:00
Daniel Bayley
b35b586eda Add [un]group icons (#1108)
* Add `group` icon

* Add `ungroup` icon
2023-05-05 09:31:56 +02:00
Jakob Guddas
8b57fab71b Increased size of orbit (#1195) 2023-05-05 09:31:03 +02:00
Daniel Bayley
badd34374d Add list-filter icon (#1185) 2023-05-05 08:51:35 +02:00
Daniel Bayley
902431199c Fix unplug metadata (#1212)
This broke the `pre-commit` hook again, because it was `merge`d after the `coding` category was removed.
2023-05-03 22:33:22 +02:00
Daniel Bayley
bdbb4834b0 Replace shuffle icon (#1162)
* Add `shuffle` alternate icon

* Improve `shuffle` metadata

* Replace `shuffle` icon

* Update icons/shuffle.svg

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

* Refine `shuffle` icon

---------

Co-authored-by: Karsa <contact@karsa.org>
Co-authored-by: Eric Fennis <eric.fennis@gmail.com>
2023-05-03 17:24:45 +02:00
Daniel Bayley
07fc4da6fa Optimise/add scroll[-text] (script) icon (#1211)
* Optimise `scroll` icon

* Add `scroll-text` (script) icon
2023-05-03 17:21:14 +02:00
Daniel Bayley
e1815242cf Fix folder-git icons (#1128)
* Fix `folder-git*` icons

* Refine `folder-git` icon

* Update icons/folder-git-2.svg

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

* Update icons/folder-git.svg

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

---------

Co-authored-by: Karsa <contact@karsa.org>
Co-authored-by: Eric Fennis <eric.fennis@gmail.com>
2023-05-03 16:41:28 +02:00
Daniel Bayley
d104ad5c8a Add file-code-2 icon (#1058)
* Add `file-code-2` icon

* Update icons/file-code-2.svg

Co-authored-by: Eric Fennis <eric.fennis@gmail.com>

* Swap `file-code`/`-2` icons

* Update icons/file-code-2.json

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

* Improve `file-code` metadata

---------

Co-authored-by: Eric Fennis <eric.fennis@gmail.com>
Co-authored-by: Karsa <contact@karsa.org>
2023-05-03 16:40:51 +02:00
61 changed files with 749 additions and 50 deletions

View File

@@ -22,8 +22,78 @@ jobs:
uses: tj-actions/changed-files@v35
with:
files: icons/*.svg
- name: Generate comment
id: generate-comment
- name: Generate cohesion check random
id: generate-cohesion-check-random
run: |
delimiter="$(openssl rand -hex 8)"
echo "body<<$delimiter" >> $GITHUB_OUTPUT
for file in $(printf "%s\\n" icons/*.svg | shuf | head -n$(awk -F' ' '{print NF}' <<< '${{ steps.changed-files.outputs.all_changed_files }}')); do
cat "$file" | # get file content
tr '\n' ' ' | # remove line breaks
sed -e 's/<svg[^>]*>/<svg>/g' | # remove attributes from svg element
base64 -w 0 | # encode svg
sed "s|.*|<img title=\"$file\" alt=\"$file\" src=\"https://lucide.dev/api/gh-icon/stroke-width/2/&.svg\"/> |"
done | tr '\n' ' ' >> $GITHUB_OUTPUT
echo >> $GITHUB_OUTPUT
echo "$delimiter" >> $GITHUB_OUTPUT
- name: Generate cohesion check squares
id: generate-cohesion-check-squares
run: |
delimiter="$(openssl rand -hex 8)"
echo "body<<$delimiter" >> $GITHUB_OUTPUT
for file in $(printf "%s\\n" icons/*square*.svg | shuf | head -n$(awk -F' ' '{print NF}' <<< '${{ steps.changed-files.outputs.all_changed_files }}')); do
cat "$file" | # get file content
tr '\n' ' ' | # remove line breaks
sed -e 's/<svg[^>]*>/<svg>/g' | # remove attributes from svg element
base64 -w 0 | # encode svg
sed "s|.*|<img title=\"$file\" alt=\"$file\" src=\"https://lucide.dev/api/gh-icon/stroke-width/2/&.svg\"/> |"
done | tr '\n' ' ' >> $GITHUB_OUTPUT
echo >> $GITHUB_OUTPUT
echo "$delimiter" >> $GITHUB_OUTPUT
- name: Generate 1px stroke-width
id: generate-1px-stroke-width
run: |
delimiter="$(openssl rand -hex 8)"
echo "body<<$delimiter" >> $GITHUB_OUTPUT
for file in ${{ steps.changed-files.outputs.all_changed_files }}; do
cat "$file" | # get file content
tr '\n' ' ' | # remove line breaks
sed -e 's/<svg[^>]*>/<svg>/g' | # remove attributes from svg element
base64 -w 0 | # encode svg
sed "s|.*|<img title=\"$file\" alt=\"$file\" src=\"https://lucide.dev/api/gh-icon/stroke-width/1/&.svg\"/> |"
done | tr '\n' ' ' >> $GITHUB_OUTPUT
echo >> $GITHUB_OUTPUT
echo "$delimiter" >> $GITHUB_OUTPUT
- name: Generate 2px stroke-width
id: generate-2px-stroke-width
run: |
delimiter="$(openssl rand -hex 8)"
echo "body<<$delimiter" >> $GITHUB_OUTPUT
for file in ${{ steps.changed-files.outputs.all_changed_files }}; do
cat "$file" | # get file content
tr '\n' ' ' | # remove line breaks
sed -e 's/<svg[^>]*>/<svg>/g' | # remove attributes from svg element
base64 -w 0 | # encode svg
sed "s|.*|<img title=\"$file\" alt=\"$file\" src=\"https://lucide.dev/api/gh-icon/stroke-width/2/&.svg\"/> |"
done | tr '\n' ' ' >> $GITHUB_OUTPUT
echo >> $GITHUB_OUTPUT
echo "$delimiter" >> $GITHUB_OUTPUT
- name: Generate 3px stroke-width
id: generate-3px-stroke-width
run: |
delimiter="$(openssl rand -hex 8)"
echo "body<<$delimiter" >> $GITHUB_OUTPUT
for file in ${{ steps.changed-files.outputs.all_changed_files }}; do
cat "$file" | # get file content
tr '\n' ' ' | # remove line breaks
sed -e 's/<svg[^>]*>/<svg>/g' | # remove attributes from svg element
base64 -w 0 | # encode svg
sed "s|.*|<img title=\"$file\" alt=\"$file\" src=\"https://lucide.dev/api/gh-icon/stroke-width/3/&.svg\"/> |"
done | tr '\n' ' ' >> $GITHUB_OUTPUT
echo >> $GITHUB_OUTPUT
echo "$delimiter" >> $GITHUB_OUTPUT
- name: Generate X-rays
id: generate-x-rays
run: |
delimiter="$(openssl rand -hex 8)"
echo "body<<$delimiter" >> $GITHUB_OUTPUT
@@ -50,8 +120,21 @@ jobs:
issue-number: ${{ github.event.pull_request.number }}
body: |
### Added or changed icons
${{ steps.generate-2px-stroke-width.outputs.body }}<br/>
<details>
<summary>Preview cohesion</summary>
${{ steps.generate-cohesion-check-squares.outputs.body }}<br/>
${{ steps.generate-2px-stroke-width.outputs.body }}<br/>
${{ steps.generate-cohesion-check-random.outputs.body }}<br/>
</details>
<details>
<summary>Preview stroke widths</summary>
${{ steps.generate-1px-stroke-width.outputs.body }}<br/>
${{ steps.generate-2px-stroke-width.outputs.body }}<br/>
${{ steps.generate-3px-stroke-width.outputs.body }}<br/>
</details>
<details>
<summary>Icon X-rays</summary>
${{ steps.generate-comment.outputs.body }}
${{ steps.generate-x-rays.outputs.body }}
</details>
edit-mode: replace

View File

@@ -10,5 +10,5 @@
stroke-linejoin="round"
>
<circle cx="12" cy="12" r="4" />
<path d="M16 8v5a3 3 0 0 0 6 0v-1a10 10 0 1 0-3.92 7.94" />
<path d="M16 8v5a3 3 0 0 0 6 0v-1a10 10 0 1 0-4 8" />
</svg>

Before

Width:  |  Height:  |  Size: 305 B

After

Width:  |  Height:  |  Size: 299 B

10
icons/contact-2.json Normal file
View File

@@ -0,0 +1,10 @@
{
"$schema": "../icon.schema.json",
"tags": [
"person",
"user"
],
"categories": [
"account"
]
}

17
icons/contact-2.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="M16 18a4 4 0 0 0-8 0" />
<circle cx="12" cy="11" r="3" />
<rect width="18" height="18" x="3" y="4" rx="2" />
<line x1="8" x2="8" y1="2" y2="4" />
<line x1="16" x2="16" y1="2" y2="4" />
</svg>

After

Width:  |  Height:  |  Size: 412 B

15
icons/file-code-2.json Normal file
View File

@@ -0,0 +1,15 @@
{
"$schema": "../icon.schema.json",
"tags": [
"script",
"document",
"html",
"xml",
"property list",
"plist"
],
"categories": [
"files",
"development"
]
}

16
icons/file-code-2.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 22h14a2 2 0 0 0 2-2V7.5L14.5 2H6a2 2 0 0 0-2 2v4" />
<polyline points="14 2 14 8 20 8" />
<path d="m9 18 3-3-3-3" />
<path d="m5 12-3 3 3 3" />
</svg>

After

Width:  |  Height:  |  Size: 372 B

View File

@@ -2,10 +2,15 @@
"$schema": "../icon.schema.json",
"tags": [
"script",
"document"
"document",
"gist",
"html",
"xml",
"property list",
"plist"
],
"categories": [
"files",
"development"
]
}
}

View File

@@ -9,8 +9,8 @@
stroke-linecap="round"
stroke-linejoin="round"
>
<path d="M4 22h14a2 2 0 0 0 2-2V7.5L14.5 2H6a2 2 0 0 0-2 2v4" />
<path d="M14.5 2H6a2 2 0 0 0-2 2v16a2 2 0 0 0 2 2h12a2 2 0 0 0 2-2V7.5L14.5 2z" />
<polyline points="14 2 14 8 20 8" />
<path d="m9 18 3-3-3-3" />
<path d="m5 12-3 3 3 3" />
<path d="m10 13-2 2 2 2" />
<path d="m14 17 2-2-2-2" />
</svg>

Before

Width:  |  Height:  |  Size: 372 B

After

Width:  |  Height:  |  Size: 392 B

View File

@@ -9,8 +9,8 @@
stroke-linecap="round"
stroke-linejoin="round"
>
<path d="M22 13V8a1.974 1.974 0 0 0-2-2h-7.9c-.3 0-.7-.1-.9-.2-.3-.2-.5-.4-.7-.7l-.9-1.2c-.2-.3-.4-.5-.7-.7-.3-.1-.6-.2-1-.2H4a1.974 1.974 0 0 0-2 2v13c0 1.1.9 2 2 2h5"/>
<circle cx="20" cy="19" r="2"/>
<circle cx="13" cy="12." r="2"/>
<path d="M18 19c-2.8 0-5-2.2-5-5v8"/>
<path d="M9 20H4a2 2 0 0 1-2-2V5a2 2 0 0 1 2-2h3.9a2 2 0 0 1 1.69.9l.81 1.2a2 2 0 0 0 1.67.9H20a2 2 0 0 1 2 2v5" />
<circle cx="13" cy="12" r="2" />
<path d="M18 19c-2.8 0-5-2.2-5-5v8" />
<circle cx="20" cy="19" r="2" />
</svg>

Before

Width:  |  Height:  |  Size: 490 B

After

Width:  |  Height:  |  Size: 437 B

View File

@@ -10,7 +10,7 @@
stroke-linejoin="round"
>
<path d="M4 20h16a2 2 0 0 0 2-2V8a2 2 0 0 0-2-2h-7.93a2 2 0 0 1-1.66-.9l-.82-1.2A2 2 0 0 0 7.93 3H4a2 2 0 0 0-2 2v13c0 1.1.9 2 2 2Z" />
<circle class="st0" cx="12" cy="13" r="2" />
<line class="st0" x1="6" y1="13" x2="10" y2="13" />
<line class="st0" x1="14" y1="13" x2="18" y2="13" />
<circle cx="12" cy="13" r="2" />
<path d="M14 13h3" />
<path d="M7 13h3" />
</svg>

Before

Width:  |  Height:  |  Size: 502 B

After

Width:  |  Height:  |  Size: 428 B

16
icons/group.json Normal file
View File

@@ -0,0 +1,16 @@
{
"$schema": "../icon.schema.json",
"tags": [
"cubes",
"packages",
"parts",
"units",
"collection",
"cluster",
"gather"
],
"categories": [
"shapes",
"files"
]
}

18
icons/group.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="M3 7V5c0-1.1.9-2 2-2h2" />
<path d="M17 3h2c1.1 0 2 .9 2 2v2" />
<path d="M21 17v2c0 1.1-.9 2-2 2h-2" />
<path d="M7 21H5c-1.1 0-2-.9-2-2v-2" />
<rect width="7" height="5" x="7" y="7" rx="1" />
<rect width="7" height="5" x="10" y="12" rx="1" />
</svg>

After

Width:  |  Height:  |  Size: 474 B

View File

@@ -9,8 +9,8 @@
stroke-linecap="round"
stroke-linejoin="round"
>
<rect width="7" height="9" x="3" y="3" />
<rect width="7" height="5" x="14" y="3" />
<rect width="7" height="9" x="14" y="12" />
<rect width="7" height="5" x="3" y="16" />
<rect width="7" height="9" x="3" y="3" rx="1" />
<rect width="7" height="5" x="14" y="3" rx="1" />
<rect width="7" height="9" x="14" y="12" rx="1" />
<rect width="7" height="5" x="3" y="16" rx="1" />
</svg>

Before

Width:  |  Height:  |  Size: 388 B

After

Width:  |  Height:  |  Size: 416 B

View File

@@ -9,8 +9,8 @@
stroke-linecap="round"
stroke-linejoin="round"
>
<rect width="7" height="7" x="3" y="3" />
<rect width="7" height="7" x="14" y="3" />
<rect width="7" height="7" x="14" y="14" />
<rect width="7" height="7" x="3" y="14" />
<rect width="7" height="7" x="3" y="3" rx="1" />
<rect width="7" height="7" x="14" y="3" rx="1" />
<rect width="7" height="7" x="14" y="14" rx="1" />
<rect width="7" height="7" x="3" y="14" rx="1" />
</svg>

Before

Width:  |  Height:  |  Size: 388 B

After

Width:  |  Height:  |  Size: 416 B

View File

@@ -9,8 +9,8 @@
stroke-linecap="round"
stroke-linejoin="round"
>
<rect width="7" height="7" x="3" y="14" />
<rect width="7" height="7" x="3" y="3" />
<rect width="7" height="7" x="3" y="14" rx="1" />
<rect width="7" height="7" x="3" y="3" rx="1" />
<line x1="14" x2="21" y1="4" y2="4" />
<line x1="14" x2="21" y1="9" y2="9" />
<line x1="14" x2="21" y1="15" y2="15" />

Before

Width:  |  Height:  |  Size: 465 B

After

Width:  |  Height:  |  Size: 479 B

View File

@@ -0,0 +1,13 @@
{
"$schema": "../icon.schema.json",
"tags": [
"app",
"home",
"start",
"grid"
],
"categories": [
"design",
"layout"
]
}

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="7" height="18" x="3" y="3" rx="1" />
<rect width="7" height="7" x="14" y="3" rx="1" />
<rect width="7" height="7" x="14" y="14" rx="1" />
</svg>

After

Width:  |  Height:  |  Size: 365 B

View File

@@ -0,0 +1,15 @@
{
"$schema": "../icon.schema.json",
"tags": [
"window",
"webpage",
"block",
"section",
"grid",
"template",
"structure"
],
"categories": [
"layout"
]
}

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="18" height="7" x="3" y="3" rx="1" />
<rect width="7" height="7" x="3" y="14" rx="1" />
<rect width="7" height="7" x="14" y="14" rx="1" />
</svg>

After

Width:  |  Height:  |  Size: 365 B

View File

@@ -9,7 +9,7 @@
stroke-linecap="round"
stroke-linejoin="round"
>
<path d="M21 3H3v7h18V3z" />
<path d="M21 14h-5v7h5v-7z" />
<path d="M12 14H3v7h9v-7z" />
<rect width="18" height="7" x="3" y="3" rx="1" />
<rect width="9" height="7" x="3" y="14" rx="1" />
<rect width="5" height="7" x="16" y="14" rx="1" />
</svg>

Before

Width:  |  Height:  |  Size: 304 B

After

Width:  |  Height:  |  Size: 365 B

15
icons/leafy-green.json Normal file
View File

@@ -0,0 +1,15 @@
{
"$schema": "../icon.schema.json",
"tags": [
"salad",
"lettuce",
"vegetable",
"chard",
"cabbage",
"bok choy"
],
"categories": [
"food-beverage",
"emoji"
]
}

14
icons/leafy-green.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="M2 22c1.25-.987 2.27-1.975 3.9-2.2a5.56 5.56 0 0 1 3.8 1.5 4 4 0 0 0 6.187-2.353 3.5 3.5 0 0 0 3.69-5.116A3.5 3.5 0 0 0 20.95 8 3.5 3.5 0 1 0 16 3.05a3.5 3.5 0 0 0-5.831 1.373 3.5 3.5 0 0 0-5.116 3.69 4 4 0 0 0-2.348 6.155C3.499 15.42 4.409 16.712 4.2 18.1 3.926 19.743 3.014 20.732 2 22" />
<path d="M2 22 17 7" />
</svg>

After

Width:  |  Height:  |  Size: 537 B

9
icons/list-filter.json Normal file
View File

@@ -0,0 +1,9 @@
{
"$schema": "../icon.schema.json",
"tags": [
"options"
],
"categories": [
"text"
]
}

15
icons/list-filter.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="M3 6h18" />
<path d="M7 12h10" />
<path d="M10 18h4" />
</svg>

After

Width:  |  Height:  |  Size: 279 B

View File

@@ -10,8 +10,8 @@
stroke-linejoin="round"
>
<circle cx="12" cy="12" r="3" />
<circle cx="18" cy="6" r="2" />
<circle cx="6" cy="18" r="2" />
<path d="M12 20a8 8 0 0 0 6.82-12.17" />
<path d="M12 4a8 8 0 0 0-6.82 12.17" />
<circle cx="19" cy="5" r="2" />
<circle cx="5" cy="19" r="2" />
<path d="M10.4 21.9a10 10 0 0 0 9.941-15.416" />
<path d="M13.5 2.1a10 10 0 0 0-9.841 15.416" />
</svg>

Before

Width:  |  Height:  |  Size: 396 B

After

Width:  |  Height:  |  Size: 412 B

View File

@@ -12,6 +12,7 @@
"health"
],
"categories": [
"food-beverage"
"food-beverage",
"emoji"
]
}

19
icons/scroll-text.json Normal file
View File

@@ -0,0 +1,19 @@
{
"$schema": "../icon.schema.json",
"tags": [
"paper",
"log",
"scripture",
"document",
"parchment",
"list",
"long",
"script",
"code"
],
"categories": [
"gaming",
"development",
"text"
]
}

16
icons/scroll-text.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="M8 21h12a2 2 0 0 0 2-2v-2H10v2a2 2 0 1 1-4 0V5a2 2 0 1 0-4 0v3h4" />
<path d="M19 17V5a2 2 0 0 0-2-2H4" />
<path d="M15 8h-5" />
<path d="M15 12h-5" />
</svg>

After

Width:  |  Height:  |  Size: 377 B

View File

@@ -5,10 +5,15 @@
"log",
"scripture",
"document",
"parchment"
"parchment",
"list",
"long",
"script",
"code"
],
"categories": [
"gaming",
"development"
"development",
"text"
]
}
}

View File

@@ -9,8 +9,6 @@
stroke-linecap="round"
stroke-linejoin="round"
>
<path d="M10 17v2a2 2 0 0 1-2 2v0a2 2 0 0 1-2-2V5a2 2 0 0 0-2-2v0a2 2 0 0 0-2 2v3h3" />
<path d="M22 17v2a2 2 0 0 1-2 2H8" />
<path d="M8 21h12a2 2 0 0 0 2-2v-2H10v2a2 2 0 1 1-4 0V5a2 2 0 1 0-4 0v3h4" />
<path d="M19 17V5a2 2 0 0 0-2-2H4" />
<path d="M22 17H10" />
</svg>

Before

Width:  |  Height:  |  Size: 403 B

After

Width:  |  Height:  |  Size: 328 B

View File

@@ -1,7 +1,9 @@
{
"$schema": "../icon.schema.json",
"tags": [
"music"
"music",
"random",
"reorder"
],
"categories": [
"multimedia",

View File

@@ -9,9 +9,9 @@
stroke-linecap="round"
stroke-linejoin="round"
>
<polyline points="16 3 21 3 21 8" />
<line x1="4" x2="21" y1="20" y2="3" />
<polyline points="21 16 21 21 16 21" />
<line x1="15" x2="21" y1="15" y2="21" />
<line x1="4" x2="9" y1="4" y2="9" />
<path d="M2 18h1.4c1.3 0 2.5-.6 3.3-1.7l6.1-8.6c.7-1.1 2-1.7 3.3-1.7H22" />
<path d="m18 2 4 4-4 4" />
<path d="M2 6h1.9c1.5 0 2.9.9 3.6 2.2" />
<path d="M22 18h-5.9c-1.3 0-2.6-.7-3.3-1.8l-.5-.8" />
<path d="m18 14 4 4-4 4" />
</svg>

Before

Width:  |  Height:  |  Size: 412 B

After

Width:  |  Height:  |  Size: 445 B

View File

@@ -1,10 +1,10 @@
{
"$schema": "../icon.schema.json",
"tags": [
"stars",
"effect",
"filter",
"night",
"sparkles",
"magic"
],
"categories": [
@@ -13,5 +13,8 @@
"multimedia",
"gaming",
"weather"
],
"aliases": [
"stars"
]
}

View File

Before

Width:  |  Height:  |  Size: 481 B

After

Width:  |  Height:  |  Size: 481 B

16
icons/ungroup.json Normal file
View File

@@ -0,0 +1,16 @@
{
"$schema": "../icon.schema.json",
"tags": [
"cubes",
"packages",
"parts",
"units",
"collection",
"cluster",
"separate"
],
"categories": [
"shapes",
"files"
]
}

14
icons/ungroup.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="8" height="6" x="5" y="4" rx="1" />
<rect width="8" height="6" x="11" y="14" rx="1" />
</svg>

After

Width:  |  Height:  |  Size: 312 B

View File

@@ -9,7 +9,6 @@
],
"categories": [
"devices",
"coding",
"development"
]
}

11
icons/user-2.json Normal file
View File

@@ -0,0 +1,11 @@
{
"$schema": "../icon.schema.json",
"tags": [
"person",
"account",
"contact"
],
"categories": [
"account"
]
}

14
icons/user-2.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"
>
<circle cx="12" cy="8" r="5" />
<path d="M20 21a8 8 0 1 0-16 0" />
</svg>

After

Width:  |  Height:  |  Size: 279 B

15
icons/user-check-2.json Normal file
View File

@@ -0,0 +1,15 @@
{
"$schema": "../icon.schema.json",
"tags": [
"followed",
"subscribed",
"done",
"todo",
"tick",
"complete",
"task"
],
"categories": [
"account"
]
}

15
icons/user-check-2.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="M14 19a6 6 0 0 0-12 0" />
<circle cx="8" cy="9" r="4" />
<polyline points="16 11 18 13 22 9" />
</svg>

After

Width:  |  Height:  |  Size: 319 B

12
icons/user-circle-2.json Normal file
View File

@@ -0,0 +1,12 @@
{
"$schema": "../icon.schema.json",
"tags": [
"person",
"account",
"contact"
],
"categories": [
"account",
"shapes"
]
}

15
icons/user-circle-2.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="M18 20a6 6 0 0 0-12 0" />
<circle cx="12" cy="10" r="4" />
<circle cx="12" cy="12" r="10" />
</svg>

After

Width:  |  Height:  |  Size: 316 B

12
icons/user-circle.json Normal file
View File

@@ -0,0 +1,12 @@
{
"$schema": "../icon.schema.json",
"tags": [
"person",
"account",
"contact"
],
"categories": [
"account",
"shapes"
]
}

15
icons/user-circle.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"
>
<circle cx="12" cy="12" r="10" />
<circle cx="12" cy="10" r="3" />
<path d="M7 20.662V19a2 2 0 0 1 2-2h6a2 2 0 0 1 2 2v1.662" />
</svg>

After

Width:  |  Height:  |  Size: 343 B

12
icons/user-cog-2.json Normal file
View File

@@ -0,0 +1,12 @@
{
"$schema": "../icon.schema.json",
"tags": [
"settings",
"edit",
"cog",
"gear"
],
"categories": [
"account"
]
}

21
icons/user-cog-2.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="M14 19a6 6 0 0 0-12 0" />
<circle cx="8" cy="9" r="4" />
<circle cx="19" cy="11" r="2" />
<path d="M19 8v1" />
<path d="M19 13v1" />
<path d="m21.6 9.5-.87.5" />
<path d="m17.27 12-.87.5" />
<path d="m21.6 12.5-.87-.5" />
<path d="m17.27 10-.87-.5" />
</svg>

After

Width:  |  Height:  |  Size: 487 B

12
icons/user-minus-2.json Normal file
View File

@@ -0,0 +1,12 @@
{
"$schema": "../icon.schema.json",
"tags": [
"delete",
"remove",
"unfollow",
"unsubscribe"
],
"categories": [
"account"
]
}

15
icons/user-minus-2.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="M14 19a6 6 0 0 0-12 0" />
<circle cx="8" cy="9" r="4" />
<line x1="22" x2="16" y1="11" y2="11" />
</svg>

After

Width:  |  Height:  |  Size: 321 B

13
icons/user-plus-2.json Normal file
View File

@@ -0,0 +1,13 @@
{
"$schema": "../icon.schema.json",
"tags": [
"new",
"add",
"create",
"follow",
"subscribe"
],
"categories": [
"account"
]
}

16
icons/user-plus-2.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="M14 19a6 6 0 0 0-12 0" />
<circle cx="8" cy="9" r="4" />
<line x1="19" x2="19" y1="8" y2="14" />
<line x1="22" x2="16" y1="11" y2="11" />
</svg>

After

Width:  |  Height:  |  Size: 363 B

12
icons/user-square-2.json Normal file
View File

@@ -0,0 +1,12 @@
{
"$schema": "../icon.schema.json",
"tags": [
"person",
"account",
"contact"
],
"categories": [
"account",
"shapes"
]
}

15
icons/user-square-2.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="M18 21a6 6 0 0 0-12 0" />
<circle cx="12" cy="11" r="4" />
<rect width="18" height="18" x="3" y="3" rx="2" />
</svg>

After

Width:  |  Height:  |  Size: 333 B

12
icons/user-square.json Normal file
View File

@@ -0,0 +1,12 @@
{
"$schema": "../icon.schema.json",
"tags": [
"person",
"account",
"contact"
],
"categories": [
"account",
"shapes"
]
}

15
icons/user-square.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="18" height="18" x="3" y="3" rx="2" />
<circle cx="12" cy="10" r="3" />
<path d="M7 21v-2a2 2 0 0 1 2-2h6a2 2 0 0 1 2 2v2" />
</svg>

After

Width:  |  Height:  |  Size: 352 B

13
icons/user-x-2.json Normal file
View File

@@ -0,0 +1,13 @@
{
"$schema": "../icon.schema.json",
"tags": [
"delete",
"remove",
"unfollow",
"unsubscribe",
"unavailable"
],
"categories": [
"account"
]
}

16
icons/user-x-2.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="M14 19a6 6 0 0 0-12 0" />
<circle cx="8" cy="9" r="4" />
<line x1="17" x2="22" y1="8" y2="13" />
<line x1="22" x2="17" y1="8" y2="13" />
</svg>

After

Width:  |  Height:  |  Size: 362 B

10
icons/users-2.json Normal file
View File

@@ -0,0 +1,10 @@
{
"$schema": "../icon.schema.json",
"tags": [
"group",
"people"
],
"categories": [
"account"
]
}

15
icons/users-2.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="M14 19a6 6 0 0 0-12 0" />
<circle cx="8" cy="9" r="4" />
<path d="M22 19a6 6 0 0 0-6-6 4 4 0 1 0 0-8" />
</svg>

After

Width:  |  Height:  |  Size: 328 B

View File

@@ -77,7 +77,7 @@
"zone.js": "~0.11.4"
},
"peerDependencies": {
"@angular/common": "13.x - 15.x",
"@angular/core": "13.x - 15.x"
"@angular/common": "13.x - 16.x",
"@angular/core": "13.x - 16.x"
}
}

View File

@@ -0,0 +1,29 @@
import { parseSync } from 'svgson';
import { createLucideIcon, IconNode } from 'lucide-react';
export default async function handler(req, res) {
// ReactDOMServer needs to be imported dynamically
// https://github.com/vercel/next.js/issues/43810
const ReactDOMServer = (await import('react-dom/server')).default;
const url = req.url.split('/');
const src = Buffer.from(url.at(-1).slice(0, -4), 'base64').toString('utf8');
const Icon = createLucideIcon(
'icon',
parseSync(src.includes('<svg') ? src : `<svg>${src}</svg>`).children.map(
({ name, attributes }) => [name, attributes]
) as IconNode
);
const svg = Buffer.from(
ReactDOMServer.renderToString(<Icon strokeWidth={url.at(-2)} />).replace(
/>/,
'><style>@media screen and (prefers-color-scheme: dark) { svg { stroke: #fff } }</style>'
)
);
res.setHeader('Cache-Control', 'public,max-age=31536000');
res.setHeader('Content-Type', 'image/svg+xml');
res.status(200).end(svg);
}