Skip to content
New issue

Have a question about this project? Sign up for a free GitHub account to open an issue and contact its maintainers and the community.

By clicking “Sign up for GitHub”, you agree to our terms of service and privacy statement. We’ll occasionally send you account related emails.

Already on GitHub? Sign in to your account

Fixed export maps, types, and packaging for lucide-svelte #1707

Merged
merged 12 commits into from
Dec 24, 2023

Conversation

AdrianGonz97
Copy link
Contributor

@AdrianGonz97 AdrianGonz97 commented Nov 29, 2023

Fixes #1284, fixes #1572

What is the purpose of this pull request?

  • New Icon
  • Bug fix
  • New Feature
  • Documentation update
  • Other: Replaced Rollup and other deps

Description

This PR contains a number of fixes:

  1. Simplified the current build system by replacing rollup and svelte-strip for the official @sveltejs/package CLI
    • this gets rid of the fully compiled svelte components and their respective source maps as they aren't necessary in svelte packages (which will also lessen the size of the overall package by a considerable amount)
  2. Fixed the export conditions in the export map such that direct import paths resolve properly, leading to faster load times
    • (e.g. import Circle from "lucide-svelte/icons/circle" will be faster to load than import { Circle } from "lucide-svelte")
  3. Fixed types for users that use moduleResolution: "NodeNext" in their tsconfig.json
  4. Updated the deprecated svelte.JSX namespace types for element types sourced from svelte/elements

Additional Notes

  • I noticed that the package included fully compiled svelte components (i.e. everything inside of the esm directory in dist are fully compiled vanilla JS components). Was there a particular reason for this? It's not really the recommended way of packaging Svelte components.

  • While updating the types, I noticed that the icons were meant to extend the attributes of an SVGElement like this in the build script:

interface IconProps extends Partial<svelte.JSX.SVGProps<SVGSVGElement>> {
  color?: string
  size?: number|string
  strokeWidth?: number|string
  absoluteStrokeWidth?: boolean
  class?: string
}

But, currently in the latest release, if you examine any of the icon's prop types on the end user's side, they only show the types for color, size, strokeWidth, etc, and none of the attributes that belong to SVGElement.

This doesn't seem intentional, so I could add a fix for this too by extending IconProps with SVGAttributes<SVGSVGElement> instead in types.ts.

While it would provide the proper types now, it would also flood the autocompletions with the SVGElement's attributes, making color, size, strokeWidth, etc, less noticeable:
img

Just wanted to note this as something to be aware of! Please let me know if I should apply the fix!

Before Submitting

@github-actions github-actions bot added 📦 dependencies Pull requests that update a dependency file 🧣 svelte package About the Svelte package labels Nov 29, 2023
@AdrianGonz97
Copy link
Contributor Author

I've gone ahead with adding the fix for the icon props type.

This PR is all set and ready to go👍

Copy link
Member

@ericfennis ericfennis left a comment

Choose a reason for hiding this comment

The reason will be displayed to describe this comment to others. Learn more.

@AdrianGonz97 Great work, this works great! I've tested it.
It works really well with SvelteKit.

Only Svelte with Vite is still loading all the component files from the index file. But yeah that's maybe more a Svelte/Vite problem than from us.

I've couple of questions.
With current build setup our license is bundled with the code, we use the rollup-plugin-license for this, is it possible to add custom rollup plugins in the build process?

And I noticed there is a .svelte-kit directory, do we need to ship this when we release the package?

@AdrianGonz97
Copy link
Contributor Author

@ericfennis Thanks for taking a look!

Only Svelte with Vite is still loading all the component files from the index file. But yeah that's maybe more a Svelte/Vite problem than from us.

Correct! Vite eagerly loads all of the dependencies of a loaded module, which leads to slowdowns if the loaded module is a very large barrel file, such as our index.ts. Being able to import icons with direct imports, such as import Circle from "lucide-svelte/icons/circle", prevents Vite from performing this "optimization".

With current build setup our license is bundled with the code, we use the rollup-plugin-license for this, is it possible to add custom rollup plugins in the build process?

It looks like this rollup plugin is limited to only prepending the license comment to .js files. If you look at the latest version of the package, you'll see that the license isn't present in any of the .svelte or .d.ts files here.

As a fix, I could write a simple build script that could just prepend the license to all the files in dist with the appropriate comment syntax.

And I noticed there is a .svelte-kit directory, do we need to ship this when we release the package?

Nope! Not necessary at all, it's just a build artifact and it shouldn't be included in the package.

@AdrianGonz97
Copy link
Contributor Author

I've created the build script under scripts/addLicense.mjs so that it prepends the license to all applicable distributed files (.svelte and .d.ts included!). Let me know what you think!

@huntabyte
Copy link

Thanks for tackling this @AdrianGonz97, this is going to be a gamechanger for dev servers everywhere 😂

Copy link
Member

@ericfennis ericfennis left a comment

Choose a reason for hiding this comment

The reason will be displayed to describe this comment to others. Learn more.

Nice work @AdrianGonz97!
Great solution, This almost ready to go!

The banner license text should be updated to latest text.

packages/lucide-svelte/scripts/addLicense.mjs Outdated Show resolved Hide resolved
@ericfennis ericfennis merged commit e71a776 into lucide-icons:main Dec 24, 2023
12 of 13 checks passed
kkrishguptaa referenced this pull request in kkrishguptaa/study-web3 Dec 30, 2023
[![Mend
Renovate](https://app.renovatebot.com/images/banner.svg)](https://renovatebot.com)

This PR contains the following updates:

| Package | Change | Age | Adoption | Passing | Confidence |
|---|---|---|---|---|---|
|
[@types/node](https://togithub.com/DefinitelyTyped/DefinitelyTyped/tree/master/types/node)
([source](https://togithub.com/DefinitelyTyped/DefinitelyTyped/tree/HEAD/types/node))
| [`20.10.5` ->
`20.10.6`](https://renovatebot.com/diffs/npm/@types%2fnode/20.10.5/20.10.6)
|
[![age](https://developer.mend.io/api/mc/badges/age/npm/@types%2fnode/20.10.6?slim=true)](https://docs.renovatebot.com/merge-confidence/)
|
[![adoption](https://developer.mend.io/api/mc/badges/adoption/npm/@types%2fnode/20.10.6?slim=true)](https://docs.renovatebot.com/merge-confidence/)
|
[![passing](https://developer.mend.io/api/mc/badges/compatibility/npm/@types%2fnode/20.10.5/20.10.6?slim=true)](https://docs.renovatebot.com/merge-confidence/)
|
[![confidence](https://developer.mend.io/api/mc/badges/confidence/npm/@types%2fnode/20.10.5/20.10.6?slim=true)](https://docs.renovatebot.com/merge-confidence/)
|
|
[@types/react](https://togithub.com/DefinitelyTyped/DefinitelyTyped/tree/master/types/react)
([source](https://togithub.com/DefinitelyTyped/DefinitelyTyped/tree/HEAD/types/react))
| [`18.2.45` ->
`18.2.46`](https://renovatebot.com/diffs/npm/@types%2freact/18.2.45/18.2.46)
|
[![age](https://developer.mend.io/api/mc/badges/age/npm/@types%2freact/18.2.46?slim=true)](https://docs.renovatebot.com/merge-confidence/)
|
[![adoption](https://developer.mend.io/api/mc/badges/adoption/npm/@types%2freact/18.2.46?slim=true)](https://docs.renovatebot.com/merge-confidence/)
|
[![passing](https://developer.mend.io/api/mc/badges/compatibility/npm/@types%2freact/18.2.45/18.2.46?slim=true)](https://docs.renovatebot.com/merge-confidence/)
|
[![confidence](https://developer.mend.io/api/mc/badges/confidence/npm/@types%2freact/18.2.45/18.2.46?slim=true)](https://docs.renovatebot.com/merge-confidence/)
|
| [clsx](https://togithub.com/lukeed/clsx) | [`2.0.0` ->
`2.1.0`](https://renovatebot.com/diffs/npm/clsx/2.0.0/2.1.0) |
[![age](https://developer.mend.io/api/mc/badges/age/npm/clsx/2.1.0?slim=true)](https://docs.renovatebot.com/merge-confidence/)
|
[![adoption](https://developer.mend.io/api/mc/badges/adoption/npm/clsx/2.1.0?slim=true)](https://docs.renovatebot.com/merge-confidence/)
|
[![passing](https://developer.mend.io/api/mc/badges/compatibility/npm/clsx/2.0.0/2.1.0?slim=true)](https://docs.renovatebot.com/merge-confidence/)
|
[![confidence](https://developer.mend.io/api/mc/badges/confidence/npm/clsx/2.0.0/2.1.0?slim=true)](https://docs.renovatebot.com/merge-confidence/)
|
| [lucide-react](https://lucide.dev)
([source](https://togithub.com/lucide-icons/lucide/tree/HEAD/packages/lucide-react))
| [`^0.300.0` ->
`^0.303.0`](https://renovatebot.com/diffs/npm/lucide-react/0.300.0/0.303.0)
|
[![age](https://developer.mend.io/api/mc/badges/age/npm/lucide-react/0.303.0?slim=true)](https://docs.renovatebot.com/merge-confidence/)
|
[![adoption](https://developer.mend.io/api/mc/badges/adoption/npm/lucide-react/0.303.0?slim=true)](https://docs.renovatebot.com/merge-confidence/)
|
[![passing](https://developer.mend.io/api/mc/badges/compatibility/npm/lucide-react/0.300.0/0.303.0?slim=true)](https://docs.renovatebot.com/merge-confidence/)
|
[![confidence](https://developer.mend.io/api/mc/badges/confidence/npm/lucide-react/0.300.0/0.303.0?slim=true)](https://docs.renovatebot.com/merge-confidence/)
|

---

### Release Notes

<details>
<summary>lukeed/clsx (clsx)</summary>

### [`v2.1.0`](https://togithub.com/lukeed/clsx/compare/v2.0.1...v2.1.0)

[Compare
Source](https://togithub.com/lukeed/clsx/compare/v2.0.1...v2.1.0)

### [`v2.0.1`](https://togithub.com/lukeed/clsx/releases/tag/v2.0.1)

[Compare
Source](https://togithub.com/lukeed/clsx/compare/v2.0.0...v2.0.1)

#### Patches

- (perf) Cache `arguments.length` & `array.length` for 6% performance
gain ([#&#8203;26](https://togithub.com/lukeed/clsx/issues/26)):
[`deff09b`](https://togithub.com/lukeed/clsx/commit/deff09b)
    *Adds 5 bytes (+2%) for ~3% avg performance gain*
    *Thank you [@&#8203;jalalazimi](https://togithub.com/jalalazimi)*

#### Chores

- Update module size:
[`bf64e71`](https://togithub.com/lukeed/clsx/commit/bf64e71)
- Update benchmark results:
[`855eec2`](https://togithub.com/lukeed/clsx/commit/855eec2),
[`6e3b2b9`](https://togithub.com/lukeed/clsx/commit/6e3b2b9),
- Replace `nyc` with `c8` in CI:
[`6e2468e`](https://togithub.com/lukeed/clsx/commit/6e2468e)
- Update Node CI matrix:
[`308a238`](https://togithub.com/lukeed/clsx/commit/308a238)
- Fix readme typos
([#&#8203;76](https://togithub.com/lukeed/clsx/issues/76),
[#&#8203;82](https://togithub.com/lukeed/clsx/issues/82)):
[`42354d3`](https://togithub.com/lukeed/clsx/commit/42354d3),
[`4c9a55d`](https://togithub.com/lukeed/clsx/commit/4c9a55d)
*Thank you [@&#8203;andipaetzold](https://togithub.com/andipaetzold) and
[@&#8203;acusti](https://togithub.com/acusti)*

***

> **Full Changelog**:
lukeed/clsx@v2.0.0...v2.0.1

</details>

<details>
<summary>lucide-icons/lucide (lucide-react)</summary>

###
[`v0.303.0`](https://togithub.com/lucide-icons/lucide/releases/tag/0.303.0):
New icons &amp; small fixes 0.303.0

[Compare
Source](https://togithub.com/lucide-icons/lucide/compare/0.302.0...0.303.0)

#### New icons 🎨

- `columns-1`
([#&#8203;1500](https://togithub.com/lucide-icons/lucide/issues/1500))
by [@&#8203;danielbayley](https://togithub.com/danielbayley)
- `columns-2`
([#&#8203;1500](https://togithub.com/lucide-icons/lucide/issues/1500))
by [@&#8203;danielbayley](https://togithub.com/danielbayley)
- `columns-3`
([#&#8203;1500](https://togithub.com/lucide-icons/lucide/issues/1500))
by [@&#8203;danielbayley](https://togithub.com/danielbayley)
- `columns-4`
([#&#8203;1500](https://togithub.com/lucide-icons/lucide/issues/1500))
by [@&#8203;danielbayley](https://togithub.com/danielbayley)
- `rows-1`
([#&#8203;1500](https://togithub.com/lucide-icons/lucide/issues/1500))
by [@&#8203;danielbayley](https://togithub.com/danielbayley)
- `rows-2`
([#&#8203;1500](https://togithub.com/lucide-icons/lucide/issues/1500))
by [@&#8203;danielbayley](https://togithub.com/danielbayley)
- `rows-3`
([#&#8203;1500](https://togithub.com/lucide-icons/lucide/issues/1500))
by [@&#8203;danielbayley](https://togithub.com/danielbayley)
- `rows-4`
([#&#8203;1500](https://togithub.com/lucide-icons/lucide/issues/1500))
by [@&#8203;danielbayley](https://togithub.com/danielbayley)

#### Optimized Icons 🔨

- `rabbit`
([#&#8203;1763](https://togithub.com/lucide-icons/lucide/issues/1763))
by [@&#8203;jguddas](https://togithub.com/jguddas)
- `squirrel`
([#&#8203;1764](https://togithub.com/lucide-icons/lucide/issues/1764))
by [@&#8203;jguddas](https://togithub.com/jguddas)

#### Other fixes

- Fixes package list item 404 navigation error by
[@&#8203;karsa-mistmere](https://togithub.com/karsa-mistmere) in
[https://github.com/lucide-icons/lucide/pull/1751](https://togithub.com/lucide-icons/lucide/pull/1751)
- fix: Exports `Icon` type by
[@&#8203;AdrianGonz97](https://togithub.com/AdrianGonz97) in
[https://github.com/lucide-icons/lucide/pull/1762](https://togithub.com/lucide-icons/lucide/pull/1762)
- Fix type error of preact `createLucideIcon()` by
[@&#8203;nix6839](https://togithub.com/nix6839) in
[https://github.com/lucide-icons/lucide/pull/1754](https://togithub.com/lucide-icons/lucide/pull/1754)
- improved SvgPreview radii highlighting by
[@&#8203;jguddas](https://togithub.com/jguddas) in
[https://github.com/lucide-icons/lucide/pull/1747](https://togithub.com/lucide-icons/lucide/pull/1747)
- Renamed alarm-minus to alarm-clock-minus by
[@&#8203;jguddas](https://togithub.com/jguddas) in
[https://github.com/lucide-icons/lucide/pull/1629](https://togithub.com/lucide-icons/lucide/pull/1629)

###
[`v0.302.0`](https://togithub.com/lucide-icons/lucide/releases/tag/0.302.0):
New icons 0.302.0

[Compare
Source](https://togithub.com/lucide-icons/lucide/compare/0.301.0...0.302.0)

#### New icons 🎨

- `panels-right-bottom`
([#&#8203;1156](https://togithub.com/lucide-icons/lucide/issues/1156))
by [@&#8203;danielbayley](https://togithub.com/danielbayley)
- `panels-top-left`
([#&#8203;1156](https://togithub.com/lucide-icons/lucide/issues/1156))
by [@&#8203;danielbayley](https://togithub.com/danielbayley)

#### Modified Icons 🔨

- `panel-bottom-close`
([#&#8203;1156](https://togithub.com/lucide-icons/lucide/issues/1156))
by [@&#8203;danielbayley](https://togithub.com/danielbayley)
- `panel-bottom-open`
([#&#8203;1156](https://togithub.com/lucide-icons/lucide/issues/1156))
by [@&#8203;danielbayley](https://togithub.com/danielbayley)
- `panel-bottom`
([#&#8203;1156](https://togithub.com/lucide-icons/lucide/issues/1156))
by [@&#8203;danielbayley](https://togithub.com/danielbayley)
- `panel-left-close`
([#&#8203;1156](https://togithub.com/lucide-icons/lucide/issues/1156))
by [@&#8203;danielbayley](https://togithub.com/danielbayley)
- `panel-left-open`
([#&#8203;1156](https://togithub.com/lucide-icons/lucide/issues/1156))
by [@&#8203;danielbayley](https://togithub.com/danielbayley)
- `panel-left`
([#&#8203;1156](https://togithub.com/lucide-icons/lucide/issues/1156))
by [@&#8203;danielbayley](https://togithub.com/danielbayley)
- `panel-right-close`
([#&#8203;1156](https://togithub.com/lucide-icons/lucide/issues/1156))
by [@&#8203;danielbayley](https://togithub.com/danielbayley)
- `panel-right-open`
([#&#8203;1156](https://togithub.com/lucide-icons/lucide/issues/1156))
by [@&#8203;danielbayley](https://togithub.com/danielbayley)
- `panel-right`
([#&#8203;1156](https://togithub.com/lucide-icons/lucide/issues/1156))
by [@&#8203;danielbayley](https://togithub.com/danielbayley)
- `panel-top-close`
([#&#8203;1156](https://togithub.com/lucide-icons/lucide/issues/1156))
by [@&#8203;danielbayley](https://togithub.com/danielbayley)
- `panel-top-open`
([#&#8203;1156](https://togithub.com/lucide-icons/lucide/issues/1156))
by [@&#8203;danielbayley](https://togithub.com/danielbayley)
- `panel-top`
([#&#8203;1156](https://togithub.com/lucide-icons/lucide/issues/1156))
by [@&#8203;danielbayley](https://togithub.com/danielbayley)

###
[`v0.301.0`](https://togithub.com/lucide-icons/lucide/releases/tag/0.301.0):
Fixed export maps, types, and packaging for `lucide-svelte` &amp; new
icons 0.301.0

[Compare
Source](https://togithub.com/lucide-icons/lucide/compare/0.300.0...0.301.0)

#### Lucide Svelte update ⛏️

- Fixed export maps, types, and packaging for `lucide-svelte` by
[@&#8203;AdrianGonz97](https://togithub.com/AdrianGonz97) in
[https://github.com/lucide-icons/lucide/pull/1707](https://togithub.com/lucide-icons/lucide/pull/1707)

#### New icons 🎨

- `a-arrow-down`
([#&#8203;1222](https://togithub.com/lucide-icons/lucide/issues/1222))
by [@&#8203;it-is-not](https://togithub.com/it-is-not)
- `a-arrow-up`
([#&#8203;1222](https://togithub.com/lucide-icons/lucide/issues/1222))
by [@&#8203;it-is-not](https://togithub.com/it-is-not)
- `a-large-small`
([#&#8203;1222](https://togithub.com/lucide-icons/lucide/issues/1222))
by [@&#8203;it-is-not](https://togithub.com/it-is-not)

#### Modified Icons 🔨

- `gavel`
([#&#8203;1744](https://togithub.com/lucide-icons/lucide/issues/1744))
by [@&#8203;jguddas](https://togithub.com/jguddas)

</details>

---

### Configuration

📅 **Schedule**: Branch creation - "every weekend" (UTC), Automerge - At
any time (no schedule defined).

🚦 **Automerge**: Disabled by config. Please merge this manually once you
are satisfied.

♻ **Rebasing**: Whenever PR is behind base branch, or you tick the
rebase/retry checkbox.

👻 **Immortal**: This PR will be recreated if closed unmerged. Get
[config help](https://togithub.com/renovatebot/renovate/discussions) if
that's undesired.

---

- [ ] <!-- rebase-check -->If you want to rebase/retry this PR, check
this box

---

This PR has been generated by [Mend
Renovate](https://www.mend.io/free-developer-tools/renovate/). View
repository job log
[here](https://developer.mend.io/github/xkrishguptaa/study-web3).

<!--renovate-debug:eyJjcmVhdGVkSW5WZXIiOiIzNy4xMDMuMSIsInVwZGF0ZWRJblZlciI6IjM3LjEwMy4xIiwidGFyZ2V0QnJhbmNoIjoibWFpbiJ9-->

Signed-off-by: renovate[bot] <29139614+renovate[bot]@users.noreply.github.com>
Co-authored-by: renovate[bot] <29139614+renovate[bot]@users.noreply.github.com>
@isker
Copy link

isker commented Jan 17, 2024

@AdrianGonz97 I think your script to insert the license comment at the top of all of the svelte components has created some of the infamous svelte whitespace problems when rendering icons inline.

Check out an example from my SvelteKit site. See how the ChevronRight jumps around between SSR and CSR? You can disable JS to get a better look. All this extra whitespace is to the left of the chevron:
Screenshot 2024-01-17 at 00 35 09
Relevant source code: https://github.com/isker/neogrok/blob/d36fe3efa5fc792a53b89a3d41036706ccafacdd/src/routes/(search-page)/search-results-file-header.svelte#L29-L32

When I go into node_modules and remove the license comment at the top of chevron-right.svelte and Icon.svelte, the problem goes away. (If I only do one of those two, the size of the whitespace is reduced by half 🌞.) Also goes away if I downgrade to lucide-svelte 0.300.0, which is the last version before this PR landed.

Would you be willing to fix this? I'd think the license has to stop being in an HTML comment 😞. Maybe it can go into a JS comment instead, but you'd have to put it inside the script tag then.

If not, I will probably try to do it.

@AdrianGonz97
Copy link
Contributor Author

@isker Thanks for pointing this out. This game of whackamole never seems to end 😅. Hopefully this is the last one.

I have an idea for a fix that should still preserve the license comment. Will implement it when I get a chance.

BaBa0525 referenced this pull request in GymSquad/admin-page Jan 29, 2024
[![Mend
Renovate](https://app.renovatebot.com/images/banner.svg)](https://renovatebot.com)

This PR contains the following updates:

| Package | Change | Age | Adoption | Passing | Confidence |
|---|---|---|---|---|---|
| [lucide-react](https://lucide.dev)
([source](https://togithub.com/lucide-icons/lucide/tree/HEAD/packages/lucide-react))
| [`^0.292.0` ->
`^0.316.0`](https://renovatebot.com/diffs/npm/lucide-react/0.292.0/0.316.0)
|
[![age](https://developer.mend.io/api/mc/badges/age/npm/lucide-react/0.316.0?slim=true)](https://docs.renovatebot.com/merge-confidence/)
|
[![adoption](https://developer.mend.io/api/mc/badges/adoption/npm/lucide-react/0.316.0?slim=true)](https://docs.renovatebot.com/merge-confidence/)
|
[![passing](https://developer.mend.io/api/mc/badges/compatibility/npm/lucide-react/0.292.0/0.316.0?slim=true)](https://docs.renovatebot.com/merge-confidence/)
|
[![confidence](https://developer.mend.io/api/mc/badges/confidence/npm/lucide-react/0.292.0/0.316.0?slim=true)](https://docs.renovatebot.com/merge-confidence/)
|

---

### Release Notes

<details>
<summary>lucide-icons/lucide (lucide-react)</summary>

###
[`v0.316.0`](https://togithub.com/lucide-icons/lucide/releases/tag/0.316.0):
New icons 0.316.0

[Compare
Source](https://togithub.com/lucide-icons/lucide/compare/0.315.0...0.316.0)

#### New icons 🎨

- `hand-coins`
([#&#8203;1328](https://togithub.com/lucide-icons/lucide/issues/1328))
by [@&#8203;danielbayley](https://togithub.com/danielbayley)
- `hand-heart`
([#&#8203;1328](https://togithub.com/lucide-icons/lucide/issues/1328))
by [@&#8203;danielbayley](https://togithub.com/danielbayley)
- `hand-platter`
([#&#8203;1328](https://togithub.com/lucide-icons/lucide/issues/1328))
by [@&#8203;danielbayley](https://togithub.com/danielbayley)

#### Modified Icons 🔨

- `guitar`
([#&#8203;1436](https://togithub.com/lucide-icons/lucide/issues/1436))
by [@&#8203;karsa-mistmere](https://togithub.com/karsa-mistmere)
- `key-round`
([#&#8203;1436](https://togithub.com/lucide-icons/lucide/issues/1436))
by [@&#8203;karsa-mistmere](https://togithub.com/karsa-mistmere)
- `palette`
([#&#8203;1436](https://togithub.com/lucide-icons/lucide/issues/1436))
by [@&#8203;karsa-mistmere](https://togithub.com/karsa-mistmere)
- `scatter-chart`
([#&#8203;1436](https://togithub.com/lucide-icons/lucide/issues/1436))
by [@&#8203;karsa-mistmere](https://togithub.com/karsa-mistmere)
- `vault`
([#&#8203;1436](https://togithub.com/lucide-icons/lucide/issues/1436))
by [@&#8203;karsa-mistmere](https://togithub.com/karsa-mistmere)

###
[`v0.315.0`](https://togithub.com/lucide-icons/lucide/releases/tag/0.315.0):
New icons 0.315.0

[Compare
Source](https://togithub.com/lucide-icons/lucide/compare/0.314.0...0.315.0)

#### New icons 🎨

- `calendar-fold`
([#&#8203;1377](https://togithub.com/lucide-icons/lucide/issues/1377))
by [@&#8203;danielbayley](https://togithub.com/danielbayley)
- `calendar-minus-2`
([#&#8203;1377](https://togithub.com/lucide-icons/lucide/issues/1377))
by [@&#8203;danielbayley](https://togithub.com/danielbayley)
- `calendar-plus-2`
([#&#8203;1377](https://togithub.com/lucide-icons/lucide/issues/1377))
by [@&#8203;danielbayley](https://togithub.com/danielbayley)
- `webhook-off`
([#&#8203;1566](https://togithub.com/lucide-icons/lucide/issues/1566))
by [@&#8203;jguddas](https://togithub.com/jguddas)

#### Modified Icons 🔨

- `calendar-check-2`
([#&#8203;1377](https://togithub.com/lucide-icons/lucide/issues/1377))
by [@&#8203;danielbayley](https://togithub.com/danielbayley)
- `calendar-check`
([#&#8203;1377](https://togithub.com/lucide-icons/lucide/issues/1377))
by [@&#8203;danielbayley](https://togithub.com/danielbayley)
- `calendar-clock`
([#&#8203;1377](https://togithub.com/lucide-icons/lucide/issues/1377))
by [@&#8203;danielbayley](https://togithub.com/danielbayley)
- `calendar-days`
([#&#8203;1377](https://togithub.com/lucide-icons/lucide/issues/1377))
by [@&#8203;danielbayley](https://togithub.com/danielbayley)
- `calendar-heart`
([#&#8203;1377](https://togithub.com/lucide-icons/lucide/issues/1377))
by [@&#8203;danielbayley](https://togithub.com/danielbayley)
- `calendar-minus`
([#&#8203;1377](https://togithub.com/lucide-icons/lucide/issues/1377))
by [@&#8203;danielbayley](https://togithub.com/danielbayley)
- `calendar-off`
([#&#8203;1377](https://togithub.com/lucide-icons/lucide/issues/1377))
by [@&#8203;danielbayley](https://togithub.com/danielbayley)
- `calendar-plus`
([#&#8203;1377](https://togithub.com/lucide-icons/lucide/issues/1377))
by [@&#8203;danielbayley](https://togithub.com/danielbayley)
- `calendar-range`
([#&#8203;1377](https://togithub.com/lucide-icons/lucide/issues/1377))
by [@&#8203;danielbayley](https://togithub.com/danielbayley)
- `calendar-search`
([#&#8203;1377](https://togithub.com/lucide-icons/lucide/issues/1377))
by [@&#8203;danielbayley](https://togithub.com/danielbayley)
- `calendar-x-2`
([#&#8203;1377](https://togithub.com/lucide-icons/lucide/issues/1377))
by [@&#8203;danielbayley](https://togithub.com/danielbayley)
- `calendar-x`
([#&#8203;1377](https://togithub.com/lucide-icons/lucide/issues/1377))
by [@&#8203;danielbayley](https://togithub.com/danielbayley)
- `calendar`
([#&#8203;1377](https://togithub.com/lucide-icons/lucide/issues/1377))
by [@&#8203;danielbayley](https://togithub.com/danielbayley)

###
[`v0.314.0`](https://togithub.com/lucide-icons/lucide/releases/tag/0.314.0):
New icons 0.314.0

[Compare
Source](https://togithub.com/lucide-icons/lucide/compare/0.313.0...0.314.0)

#### New icons 🎨

- `ticket-check`
([#&#8203;1312](https://togithub.com/lucide-icons/lucide/issues/1312))
by [@&#8203;danielbayley](https://togithub.com/danielbayley)
- `ticket-minus`
([#&#8203;1312](https://togithub.com/lucide-icons/lucide/issues/1312))
by [@&#8203;danielbayley](https://togithub.com/danielbayley)
- `ticket-percent`
([#&#8203;1312](https://togithub.com/lucide-icons/lucide/issues/1312))
by [@&#8203;danielbayley](https://togithub.com/danielbayley)
- `ticket-plus`
([#&#8203;1312](https://togithub.com/lucide-icons/lucide/issues/1312))
by [@&#8203;danielbayley](https://togithub.com/danielbayley)
- `ticket-slash`
([#&#8203;1312](https://togithub.com/lucide-icons/lucide/issues/1312))
by [@&#8203;danielbayley](https://togithub.com/danielbayley)
- `ticket-x`
([#&#8203;1312](https://togithub.com/lucide-icons/lucide/issues/1312))
by [@&#8203;danielbayley](https://togithub.com/danielbayley)

###
[`v0.313.0`](https://togithub.com/lucide-icons/lucide/releases/tag/0.313.0):
New icons 0.313.0

[Compare
Source](https://togithub.com/lucide-icons/lucide/compare/0.312.0...0.313.0)

#### New icons 🎨

- `text-search`
([#&#8203;1807](https://togithub.com/lucide-icons/lucide/issues/1807))
by [@&#8203;danielbayley](https://togithub.com/danielbayley)

###
[`v0.312.0`](https://togithub.com/lucide-icons/lucide/releases/tag/0.312.0):
New icons 0.312.0

[Compare
Source](https://togithub.com/lucide-icons/lucide/compare/0.311.0...0.312.0)

#### New icons 🎨

- `receipt-cent`
([#&#8203;1401](https://togithub.com/lucide-icons/lucide/issues/1401))
by [@&#8203;danielbayley](https://togithub.com/danielbayley)
- `receipt-euro`
([#&#8203;1401](https://togithub.com/lucide-icons/lucide/issues/1401))
by [@&#8203;danielbayley](https://togithub.com/danielbayley)
- `receipt-indian-rupee`
([#&#8203;1401](https://togithub.com/lucide-icons/lucide/issues/1401))
by [@&#8203;danielbayley](https://togithub.com/danielbayley)
- `receipt-japanese-yen`
([#&#8203;1401](https://togithub.com/lucide-icons/lucide/issues/1401))
by [@&#8203;danielbayley](https://togithub.com/danielbayley)
- `receipt-pound-sterling`
([#&#8203;1401](https://togithub.com/lucide-icons/lucide/issues/1401))
by [@&#8203;danielbayley](https://togithub.com/danielbayley)
- `receipt-russian-ruble`
([#&#8203;1401](https://togithub.com/lucide-icons/lucide/issues/1401))
by [@&#8203;danielbayley](https://togithub.com/danielbayley)
- `receipt-swiss-franc`
([#&#8203;1401](https://togithub.com/lucide-icons/lucide/issues/1401))
by [@&#8203;danielbayley](https://togithub.com/danielbayley)
- `receipt-text`
([#&#8203;1401](https://togithub.com/lucide-icons/lucide/issues/1401))
by [@&#8203;danielbayley](https://togithub.com/danielbayley)

#### Modified Icons 🔨

- `receipt`
([#&#8203;1401](https://togithub.com/lucide-icons/lucide/issues/1401))
by [@&#8203;danielbayley](https://togithub.com/danielbayley)

###
[`v0.311.0`](https://togithub.com/lucide-icons/lucide/releases/tag/0.311.0):
New icons 0.311.0

[Compare
Source](https://togithub.com/lucide-icons/lucide/compare/0.310.0...0.311.0)

#### New icons 🎨

- `arrow-down-left-from-square`
([#&#8203;1383](https://togithub.com/lucide-icons/lucide/issues/1383))
by [@&#8203;danielbayley](https://togithub.com/danielbayley)
- `arrow-down-right-from-square`
([#&#8203;1383](https://togithub.com/lucide-icons/lucide/issues/1383))
by [@&#8203;danielbayley](https://togithub.com/danielbayley)
- `arrow-up-left-from-square`
([#&#8203;1383](https://togithub.com/lucide-icons/lucide/issues/1383))
by [@&#8203;danielbayley](https://togithub.com/danielbayley)
- `arrow-up-right-from-square`
([#&#8203;1383](https://togithub.com/lucide-icons/lucide/issues/1383))
by [@&#8203;danielbayley](https://togithub.com/danielbayley)
- `file-sliders`
([#&#8203;1378](https://togithub.com/lucide-icons/lucide/issues/1378))
by [@&#8203;danielbayley](https://togithub.com/danielbayley)

#### Modified Icons 🔨

- `external-link`
([#&#8203;1383](https://togithub.com/lucide-icons/lucide/issues/1383))
by [@&#8203;danielbayley](https://togithub.com/danielbayley)
- `file-archive`
([#&#8203;1378](https://togithub.com/lucide-icons/lucide/issues/1378))
by [@&#8203;danielbayley](https://togithub.com/danielbayley)
- `file-audio-2`
([#&#8203;1378](https://togithub.com/lucide-icons/lucide/issues/1378))
by [@&#8203;danielbayley](https://togithub.com/danielbayley)
- `file-audio`
([#&#8203;1378](https://togithub.com/lucide-icons/lucide/issues/1378))
by [@&#8203;danielbayley](https://togithub.com/danielbayley)
- `file-axis-3d`
([#&#8203;1378](https://togithub.com/lucide-icons/lucide/issues/1378))
by [@&#8203;danielbayley](https://togithub.com/danielbayley)
- `file-badge-2`
([#&#8203;1378](https://togithub.com/lucide-icons/lucide/issues/1378))
by [@&#8203;danielbayley](https://togithub.com/danielbayley)
- `file-badge`
([#&#8203;1378](https://togithub.com/lucide-icons/lucide/issues/1378))
by [@&#8203;danielbayley](https://togithub.com/danielbayley)
- `file-bar-chart-2`
([#&#8203;1378](https://togithub.com/lucide-icons/lucide/issues/1378))
by [@&#8203;danielbayley](https://togithub.com/danielbayley)
- `file-bar-chart`
([#&#8203;1378](https://togithub.com/lucide-icons/lucide/issues/1378))
by [@&#8203;danielbayley](https://togithub.com/danielbayley)
- `file-box`
([#&#8203;1378](https://togithub.com/lucide-icons/lucide/issues/1378))
by [@&#8203;danielbayley](https://togithub.com/danielbayley)
- `file-check-2`
([#&#8203;1378](https://togithub.com/lucide-icons/lucide/issues/1378))
by [@&#8203;danielbayley](https://togithub.com/danielbayley)
- `file-check`
([#&#8203;1378](https://togithub.com/lucide-icons/lucide/issues/1378))
by [@&#8203;danielbayley](https://togithub.com/danielbayley)
- `file-clock`
([#&#8203;1378](https://togithub.com/lucide-icons/lucide/issues/1378))
by [@&#8203;danielbayley](https://togithub.com/danielbayley)
- `file-code-2`
([#&#8203;1378](https://togithub.com/lucide-icons/lucide/issues/1378))
by [@&#8203;danielbayley](https://togithub.com/danielbayley)
- `file-code`
([#&#8203;1378](https://togithub.com/lucide-icons/lucide/issues/1378))
by [@&#8203;danielbayley](https://togithub.com/danielbayley)
- `file-cog`
([#&#8203;1378](https://togithub.com/lucide-icons/lucide/issues/1378))
by [@&#8203;danielbayley](https://togithub.com/danielbayley)
- `file-diff`
([#&#8203;1378](https://togithub.com/lucide-icons/lucide/issues/1378))
by [@&#8203;danielbayley](https://togithub.com/danielbayley)
- `file-digit`
([#&#8203;1378](https://togithub.com/lucide-icons/lucide/issues/1378))
by [@&#8203;danielbayley](https://togithub.com/danielbayley)
- `file-down`
([#&#8203;1378](https://togithub.com/lucide-icons/lucide/issues/1378))
by [@&#8203;danielbayley](https://togithub.com/danielbayley)
- `file-heart`
([#&#8203;1378](https://togithub.com/lucide-icons/lucide/issues/1378))
by [@&#8203;danielbayley](https://togithub.com/danielbayley)
- `file-image`
([#&#8203;1378](https://togithub.com/lucide-icons/lucide/issues/1378))
by [@&#8203;danielbayley](https://togithub.com/danielbayley)
- `file-input`
([#&#8203;1378](https://togithub.com/lucide-icons/lucide/issues/1378))
by [@&#8203;danielbayley](https://togithub.com/danielbayley)
- `file-json-2`
([#&#8203;1378](https://togithub.com/lucide-icons/lucide/issues/1378))
by [@&#8203;danielbayley](https://togithub.com/danielbayley)
- `file-json`
([#&#8203;1378](https://togithub.com/lucide-icons/lucide/issues/1378))
by [@&#8203;danielbayley](https://togithub.com/danielbayley)
- `file-key-2`
([#&#8203;1378](https://togithub.com/lucide-icons/lucide/issues/1378))
by [@&#8203;danielbayley](https://togithub.com/danielbayley)
- `file-key`
([#&#8203;1378](https://togithub.com/lucide-icons/lucide/issues/1378))
by [@&#8203;danielbayley](https://togithub.com/danielbayley)
- `file-line-chart`
([#&#8203;1378](https://togithub.com/lucide-icons/lucide/issues/1378))
by [@&#8203;danielbayley](https://togithub.com/danielbayley)
- `file-lock-2`
([#&#8203;1378](https://togithub.com/lucide-icons/lucide/issues/1378))
by [@&#8203;danielbayley](https://togithub.com/danielbayley)
- `file-lock`
([#&#8203;1378](https://togithub.com/lucide-icons/lucide/issues/1378))
by [@&#8203;danielbayley](https://togithub.com/danielbayley)
- `file-minus-2`
([#&#8203;1378](https://togithub.com/lucide-icons/lucide/issues/1378))
by [@&#8203;danielbayley](https://togithub.com/danielbayley)
- `file-minus`
([#&#8203;1378](https://togithub.com/lucide-icons/lucide/issues/1378))
by [@&#8203;danielbayley](https://togithub.com/danielbayley)
- `file-output`
([#&#8203;1378](https://togithub.com/lucide-icons/lucide/issues/1378))
by [@&#8203;danielbayley](https://togithub.com/danielbayley)
- `file-pen-line`
([#&#8203;1378](https://togithub.com/lucide-icons/lucide/issues/1378))
by [@&#8203;danielbayley](https://togithub.com/danielbayley)
- `file-pen`
([#&#8203;1378](https://togithub.com/lucide-icons/lucide/issues/1378))
by [@&#8203;danielbayley](https://togithub.com/danielbayley)
- `file-pie-chart`
([#&#8203;1378](https://togithub.com/lucide-icons/lucide/issues/1378))
by [@&#8203;danielbayley](https://togithub.com/danielbayley)
- `file-plus-2`
([#&#8203;1378](https://togithub.com/lucide-icons/lucide/issues/1378))
by [@&#8203;danielbayley](https://togithub.com/danielbayley)
- `file-plus`
([#&#8203;1378](https://togithub.com/lucide-icons/lucide/issues/1378))
by [@&#8203;danielbayley](https://togithub.com/danielbayley)
- `file-question`
([#&#8203;1378](https://togithub.com/lucide-icons/lucide/issues/1378))
by [@&#8203;danielbayley](https://togithub.com/danielbayley)
- `file-scan`
([#&#8203;1378](https://togithub.com/lucide-icons/lucide/issues/1378))
by [@&#8203;danielbayley](https://togithub.com/danielbayley)
- `file-search-2`
([#&#8203;1378](https://togithub.com/lucide-icons/lucide/issues/1378))
by [@&#8203;danielbayley](https://togithub.com/danielbayley)
- `file-search`
([#&#8203;1378](https://togithub.com/lucide-icons/lucide/issues/1378))
by [@&#8203;danielbayley](https://togithub.com/danielbayley)
- `file-spreadsheet`
([#&#8203;1378](https://togithub.com/lucide-icons/lucide/issues/1378))
by [@&#8203;danielbayley](https://togithub.com/danielbayley)
- `file-stack`
([#&#8203;1378](https://togithub.com/lucide-icons/lucide/issues/1378))
by [@&#8203;danielbayley](https://togithub.com/danielbayley)
- `file-symlink`
([#&#8203;1378](https://togithub.com/lucide-icons/lucide/issues/1378))
by [@&#8203;danielbayley](https://togithub.com/danielbayley)
- `file-terminal`
([#&#8203;1378](https://togithub.com/lucide-icons/lucide/issues/1378))
by [@&#8203;danielbayley](https://togithub.com/danielbayley)
- `file-text`
([#&#8203;1378](https://togithub.com/lucide-icons/lucide/issues/1378))
by [@&#8203;danielbayley](https://togithub.com/danielbayley)
- `file-type-2`
([#&#8203;1378](https://togithub.com/lucide-icons/lucide/issues/1378))
by [@&#8203;danielbayley](https://togithub.com/danielbayley)
- `file-type`
([#&#8203;1378](https://togithub.com/lucide-icons/lucide/issues/1378))
by [@&#8203;danielbayley](https://togithub.com/danielbayley)
- `file-up`
([#&#8203;1378](https://togithub.com/lucide-icons/lucide/issues/1378))
by [@&#8203;danielbayley](https://togithub.com/danielbayley)
- `file-video-2`
([#&#8203;1378](https://togithub.com/lucide-icons/lucide/issues/1378))
by [@&#8203;danielbayley](https://togithub.com/danielbayley)
- `file-video`
([#&#8203;1378](https://togithub.com/lucide-icons/lucide/issues/1378))
by [@&#8203;danielbayley](https://togithub.com/danielbayley)
- `file-volume-2`
([#&#8203;1378](https://togithub.com/lucide-icons/lucide/issues/1378))
by [@&#8203;danielbayley](https://togithub.com/danielbayley)
- `file-volume`
([#&#8203;1378](https://togithub.com/lucide-icons/lucide/issues/1378))
by [@&#8203;danielbayley](https://togithub.com/danielbayley)
- `file-warning`
([#&#8203;1378](https://togithub.com/lucide-icons/lucide/issues/1378))
by [@&#8203;danielbayley](https://togithub.com/danielbayley)
- `file-x-2`
([#&#8203;1378](https://togithub.com/lucide-icons/lucide/issues/1378))
by [@&#8203;danielbayley](https://togithub.com/danielbayley)
- `file-x`
([#&#8203;1378](https://togithub.com/lucide-icons/lucide/issues/1378))
by [@&#8203;danielbayley](https://togithub.com/danielbayley)
- `file`
([#&#8203;1378](https://togithub.com/lucide-icons/lucide/issues/1378))
by [@&#8203;danielbayley](https://togithub.com/danielbayley)
- `files`
([#&#8203;1378](https://togithub.com/lucide-icons/lucide/issues/1378))
by [@&#8203;danielbayley](https://togithub.com/danielbayley)
- `sticker`
([#&#8203;1378](https://togithub.com/lucide-icons/lucide/issues/1378))
by [@&#8203;danielbayley](https://togithub.com/danielbayley)
- `sticky-note`
([#&#8203;1378](https://togithub.com/lucide-icons/lucide/issues/1378))
by [@&#8203;danielbayley](https://togithub.com/danielbayley)

###
[`v0.310.0`](https://togithub.com/lucide-icons/lucide/releases/tag/0.310.0):
New icons 0.310.0

[Compare
Source](https://togithub.com/lucide-icons/lucide/compare/0.309.0...0.310.0)

#### New icons 🎨

- `blend`
([#&#8203;1280](https://togithub.com/lucide-icons/lucide/issues/1280))
by [@&#8203;danielbayley](https://togithub.com/danielbayley)
- `eclipse`
([#&#8203;1280](https://togithub.com/lucide-icons/lucide/issues/1280))
by [@&#8203;danielbayley](https://togithub.com/danielbayley)
- `paint-roller`
([#&#8203;1280](https://togithub.com/lucide-icons/lucide/issues/1280))
by [@&#8203;danielbayley](https://togithub.com/danielbayley)
- `swatch-book`
([#&#8203;1280](https://togithub.com/lucide-icons/lucide/issues/1280))
by [@&#8203;danielbayley](https://togithub.com/danielbayley)

#### Modified Icons 🔨

- `aperture`
([#&#8203;1280](https://togithub.com/lucide-icons/lucide/issues/1280))
by [@&#8203;danielbayley](https://togithub.com/danielbayley)

###
[`v0.309.0`](https://togithub.com/lucide-icons/lucide/releases/tag/0.309.0):
New icons 0.309.0

[Compare
Source](https://togithub.com/lucide-icons/lucide/compare/0.308.0...0.309.0)

#### New icons 🎨

- `list-collapse`
([#&#8203;1790](https://togithub.com/lucide-icons/lucide/issues/1790))
by [@&#8203;ocavue](https://togithub.com/ocavue)

###
[`v0.308.0`](https://togithub.com/lucide-icons/lucide/releases/tag/0.308.0):
New icons 0.308.0

[Compare
Source](https://togithub.com/lucide-icons/lucide/compare/0.307.0...0.308.0)

###
[`v0.307.0`](https://togithub.com/lucide-icons/lucide/releases/tag/0.307.0):
New icons 0.307.0

[Compare
Source](https://togithub.com/lucide-icons/lucide/compare/0.306.0...0.307.0)

#### New icons 🎨

- `notebook-pen`
([#&#8203;1363](https://togithub.com/lucide-icons/lucide/issues/1363))
by [@&#8203;danielbayley](https://togithub.com/danielbayley)
- `notebook-tabs`
([#&#8203;1363](https://togithub.com/lucide-icons/lucide/issues/1363))
by [@&#8203;danielbayley](https://togithub.com/danielbayley)
- `notebook-text`
([#&#8203;1363](https://togithub.com/lucide-icons/lucide/issues/1363))
by [@&#8203;danielbayley](https://togithub.com/danielbayley)
- `notebook`
([#&#8203;1363](https://togithub.com/lucide-icons/lucide/issues/1363))
by [@&#8203;danielbayley](https://togithub.com/danielbayley)
- `notepad-text-dashed`
([#&#8203;1363](https://togithub.com/lucide-icons/lucide/issues/1363))
by [@&#8203;danielbayley](https://togithub.com/danielbayley)
- `notepad-text`
([#&#8203;1363](https://togithub.com/lucide-icons/lucide/issues/1363))
by [@&#8203;danielbayley](https://togithub.com/danielbayley)

#### Modified Icons 🔨

- `folder-sync`
([#&#8203;1745](https://togithub.com/lucide-icons/lucide/issues/1745))
by [@&#8203;jguddas](https://togithub.com/jguddas)

###
[`v0.306.0`](https://togithub.com/lucide-icons/lucide/releases/tag/0.306.0):
New icons 0.306.0

[Compare
Source](https://togithub.com/lucide-icons/lucide/compare/0.305.0...0.306.0)

#### New icons 🎨

- `between-horizonal-end`
([#&#8203;1508](https://togithub.com/lucide-icons/lucide/issues/1508))
by [@&#8203;danielbayley](https://togithub.com/danielbayley)
- `between-horizonal-start`
([#&#8203;1508](https://togithub.com/lucide-icons/lucide/issues/1508))
by [@&#8203;danielbayley](https://togithub.com/danielbayley)
- `between-vertical-end`
([#&#8203;1508](https://togithub.com/lucide-icons/lucide/issues/1508))
by [@&#8203;danielbayley](https://togithub.com/danielbayley)
- `between-vertical-start`
([#&#8203;1508](https://togithub.com/lucide-icons/lucide/issues/1508))
by [@&#8203;danielbayley](https://togithub.com/danielbayley)

###
[`v0.305.0`](https://togithub.com/lucide-icons/lucide/releases/tag/0.305.0):
New icons 0.305.0

[Compare
Source](https://togithub.com/lucide-icons/lucide/compare/0.304.0...0.305.0)

#### New icons 🎨

- `heater`
([#&#8203;1461](https://togithub.com/lucide-icons/lucide/issues/1461))
by [@&#8203;danielbayley](https://togithub.com/danielbayley)
- `vault`
([#&#8203;1461](https://togithub.com/lucide-icons/lucide/issues/1461))
by [@&#8203;danielbayley](https://togithub.com/danielbayley)
- `washing-machine`
([#&#8203;1461](https://togithub.com/lucide-icons/lucide/issues/1461))
by [@&#8203;danielbayley](https://togithub.com/danielbayley)

###
[`v0.304.0`](https://togithub.com/lucide-icons/lucide/releases/tag/0.304.0):
New icons 0.304.0

[Compare
Source](https://togithub.com/lucide-icons/lucide/compare/0.303.0...0.304.0)

#### New icons 🎨

- `bolt`
([#&#8203;1340](https://togithub.com/lucide-icons/lucide/issues/1340))
by [@&#8203;danielbayley](https://togithub.com/danielbayley)
- `drill`
([#&#8203;1340](https://togithub.com/lucide-icons/lucide/issues/1340))
by [@&#8203;danielbayley](https://togithub.com/danielbayley)

###
[`v0.303.0`](https://togithub.com/lucide-icons/lucide/releases/tag/0.303.0):
New icons &amp; small fixes 0.303.0

[Compare
Source](https://togithub.com/lucide-icons/lucide/compare/0.302.0...0.303.0)

#### New icons 🎨

- `columns-1`
([#&#8203;1500](https://togithub.com/lucide-icons/lucide/issues/1500))
by [@&#8203;danielbayley](https://togithub.com/danielbayley)
- `columns-2`
([#&#8203;1500](https://togithub.com/lucide-icons/lucide/issues/1500))
by [@&#8203;danielbayley](https://togithub.com/danielbayley)
- `columns-3`
([#&#8203;1500](https://togithub.com/lucide-icons/lucide/issues/1500))
by [@&#8203;danielbayley](https://togithub.com/danielbayley)
- `columns-4`
([#&#8203;1500](https://togithub.com/lucide-icons/lucide/issues/1500))
by [@&#8203;danielbayley](https://togithub.com/danielbayley)
- `rows-1`
([#&#8203;1500](https://togithub.com/lucide-icons/lucide/issues/1500))
by [@&#8203;danielbayley](https://togithub.com/danielbayley)
- `rows-2`
([#&#8203;1500](https://togithub.com/lucide-icons/lucide/issues/1500))
by [@&#8203;danielbayley](https://togithub.com/danielbayley)
- `rows-3`
([#&#8203;1500](https://togithub.com/lucide-icons/lucide/issues/1500))
by [@&#8203;danielbayley](https://togithub.com/danielbayley)
- `rows-4`
([#&#8203;1500](https://togithub.com/lucide-icons/lucide/issues/1500))
by [@&#8203;danielbayley](https://togithub.com/danielbayley)

#### Optimized Icons 🔨

- `rabbit`
([#&#8203;1763](https://togithub.com/lucide-icons/lucide/issues/1763))
by [@&#8203;jguddas](https://togithub.com/jguddas)
- `squirrel`
([#&#8203;1764](https://togithub.com/lucide-icons/lucide/issues/1764))
by [@&#8203;jguddas](https://togithub.com/jguddas)

#### Other fixes

- Fixes package list item 404 navigation error by
[@&#8203;karsa-mistmere](https://togithub.com/karsa-mistmere) in
[https://github.com/lucide-icons/lucide/pull/1751](https://togithub.com/lucide-icons/lucide/pull/1751)
- fix: Exports `Icon` type by
[@&#8203;AdrianGonz97](https://togithub.com/AdrianGonz97) in
[https://github.com/lucide-icons/lucide/pull/1762](https://togithub.com/lucide-icons/lucide/pull/1762)
- Fix type error of preact `createLucideIcon()` by
[@&#8203;nix6839](https://togithub.com/nix6839) in
[https://github.com/lucide-icons/lucide/pull/1754](https://togithub.com/lucide-icons/lucide/pull/1754)
- improved SvgPreview radii highlighting by
[@&#8203;jguddas](https://togithub.com/jguddas) in
[https://github.com/lucide-icons/lucide/pull/1747](https://togithub.com/lucide-icons/lucide/pull/1747)
- Renamed alarm-minus to alarm-clock-minus by
[@&#8203;jguddas](https://togithub.com/jguddas) in
[https://github.com/lucide-icons/lucide/pull/1629](https://togithub.com/lucide-icons/lucide/pull/1629)

###
[`v0.302.0`](https://togithub.com/lucide-icons/lucide/releases/tag/0.302.0):
New icons 0.302.0

[Compare
Source](https://togithub.com/lucide-icons/lucide/compare/0.301.0...0.302.0)

#### New icons 🎨

- `panels-right-bottom`
([#&#8203;1156](https://togithub.com/lucide-icons/lucide/issues/1156))
by [@&#8203;danielbayley](https://togithub.com/danielbayley)
- `panels-top-left`
([#&#8203;1156](https://togithub.com/lucide-icons/lucide/issues/1156))
by [@&#8203;danielbayley](https://togithub.com/danielbayley)

#### Modified Icons 🔨

- `panel-bottom-close`
([#&#8203;1156](https://togithub.com/lucide-icons/lucide/issues/1156))
by [@&#8203;danielbayley](https://togithub.com/danielbayley)
- `panel-bottom-open`
([#&#8203;1156](https://togithub.com/lucide-icons/lucide/issues/1156))
by [@&#8203;danielbayley](https://togithub.com/danielbayley)
- `panel-bottom`
([#&#8203;1156](https://togithub.com/lucide-icons/lucide/issues/1156))
by [@&#8203;danielbayley](https://togithub.com/danielbayley)
- `panel-left-close`
([#&#8203;1156](https://togithub.com/lucide-icons/lucide/issues/1156))
by [@&#8203;danielbayley](https://togithub.com/danielbayley)
- `panel-left-open`
([#&#8203;1156](https://togithub.com/lucide-icons/lucide/issues/1156))
by [@&#8203;danielbayley](https://togithub.com/danielbayley)
- `panel-left`
([#&#8203;1156](https://togithub.com/lucide-icons/lucide/issues/1156))
by [@&#8203;danielbayley](https://togithub.com/danielbayley)
- `panel-right-close`
([#&#8203;1156](https://togithub.com/lucide-icons/lucide/issues/1156))
by [@&#8203;danielbayley](https://togithub.com/danielbayley)
- `panel-right-open`
([#&#8203;1156](https://togithub.com/lucide-icons/lucide/issues/1156))
by [@&#8203;danielbayley](https://togithub.com/danielbayley)
- `panel-right`
([#&#8203;1156](https://togithub.com/lucide-icons/lucide/issues/1156))
by [@&#8203;danielbayley](https://togithub.com/danielbayley)
- `panel-top-close`
([#&#8203;1156](https://togithub.com/lucide-icons/lucide/issues/1156))
by [@&#8203;danielbayley](https://togithub.com/danielbayley)
- `panel-top-open`
([#&#8203;1156](https://togithub.com/lucide-icons/lucide/issues/1156))
by [@&#8203;danielbayley](https://togithub.com/danielbayley)
- `panel-top`
([#&#8203;1156](https://togithub.com/lucide-icons/lucide/issues/1156))
by [@&#8203;danielbayley](https://togithub.com/danielbayley)

###
[`v0.301.0`](https://togithub.com/lucide-icons/lucide/releases/tag/0.301.0):
Fixed export maps, types, and packaging for `lucide-svelte` &amp; new
icons 0.301.0

[Compare
Source](https://togithub.com/lucide-icons/lucide/compare/0.300.0...0.301.0)

#### Lucide Svelte update ⛏️

- Fixed export maps, types, and packaging for `lucide-svelte` by
[@&#8203;AdrianGonz97](https://togithub.com/AdrianGonz97) in
[https://github.com/lucide-icons/lucide/pull/1707](https://togithub.com/lucide-icons/lucide/pull/1707)

#### New icons 🎨

- `a-arrow-down`
([#&#8203;1222](https://togithub.com/lucide-icons/lucide/issues/1222))
by [@&#8203;it-is-not](https://togithub.com/it-is-not)
- `a-arrow-up`
([#&#8203;1222](https://togithub.com/lucide-icons/lucide/issues/1222))
by [@&#8203;it-is-not](https://togithub.com/it-is-not)
- `a-large-small`
([#&#8203;1222](https://togithub.com/lucide-icons/lucide/issues/1222))
by [@&#8203;it-is-not](https://togithub.com/it-is-not)

#### Modified Icons 🔨

- `gavel`
([#&#8203;1744](https://togithub.com/lucide-icons/lucide/issues/1744))
by [@&#8203;jguddas](https://togithub.com/jguddas)

###
[`v0.300.0`](https://togithub.com/lucide-icons/lucide/releases/tag/0.300.0):
New icons 0.300.0

[Compare
Source](https://togithub.com/lucide-icons/lucide/compare/0.299.0...0.300.0)

#### New icons 🎨

- `cooking-pot`
([#&#8203;1737](https://togithub.com/lucide-icons/lucide/issues/1737))
by [@&#8203;ericfennis](https://togithub.com/ericfennis)

###
[`v0.299.0`](https://togithub.com/lucide-icons/lucide/releases/tag/0.299.0):
New icons 0.299.0

[Compare
Source](https://togithub.com/lucide-icons/lucide/compare/0.298.0...0.299.0)

#### New icons 🎨

- `anvil`
([#&#8203;1407](https://togithub.com/lucide-icons/lucide/issues/1407))
by [@&#8203;danielbayley](https://togithub.com/danielbayley)
- `brick-wall`
([#&#8203;1407](https://togithub.com/lucide-icons/lucide/issues/1407))
by [@&#8203;danielbayley](https://togithub.com/danielbayley)
- `fence`
([#&#8203;1407](https://togithub.com/lucide-icons/lucide/issues/1407))
by [@&#8203;danielbayley](https://togithub.com/danielbayley)
- `inspection-panel`
([#&#8203;1407](https://togithub.com/lucide-icons/lucide/issues/1407))
by [@&#8203;danielbayley](https://togithub.com/danielbayley)

###
[`v0.298.0`](https://togithub.com/lucide-icons/lucide/releases/tag/0.298.0):
New icons 0.298.0

[Compare
Source](https://togithub.com/lucide-icons/lucide/compare/0.297.0...0.298.0)

#### New icons 🎨

- `alarm-smoke`
([#&#8203;1392](https://togithub.com/lucide-icons/lucide/issues/1392))
by [@&#8203;danielbayley](https://togithub.com/danielbayley)
- `bell-electric`
([#&#8203;1392](https://togithub.com/lucide-icons/lucide/issues/1392))
by [@&#8203;danielbayley](https://togithub.com/danielbayley)
- `cctv`
([#&#8203;1392](https://togithub.com/lucide-icons/lucide/issues/1392))
by [@&#8203;danielbayley](https://togithub.com/danielbayley)
- `fire-extinguisher`
([#&#8203;1392](https://togithub.com/lucide-icons/lucide/issues/1392))
by [@&#8203;danielbayley](https://togithub.com/danielbayley)
- `pointer-off`
([#&#8203;1567](https://togithub.com/lucide-icons/lucide/issues/1567))
by [@&#8203;jguddas](https://togithub.com/jguddas)

###
[`v0.297.0`](https://togithub.com/lucide-icons/lucide/releases/tag/0.297.0):
New icons 0.297.0

[Compare
Source](https://togithub.com/lucide-icons/lucide/compare/0.296.0...0.297.0)

#### New icons 🎨

- `squircle`
([#&#8203;1293](https://togithub.com/lucide-icons/lucide/issues/1293))
by [@&#8203;jguddas](https://togithub.com/jguddas)

###
[`v0.296.0`](https://togithub.com/lucide-icons/lucide/releases/tag/0.296.0):
New icons 0.296.0

[Compare
Source](https://togithub.com/lucide-icons/lucide/compare/0.295.0...0.296.0)

#### New icons 🎨

- `user-round-search`
([#&#8203;1620](https://togithub.com/lucide-icons/lucide/issues/1620))
by [@&#8203;jmsv](https://togithub.com/jmsv)
- `user-search`
([#&#8203;1620](https://togithub.com/lucide-icons/lucide/issues/1620))
by [@&#8203;jmsv](https://togithub.com/jmsv)

###
[`v0.295.0`](https://togithub.com/lucide-icons/lucide/releases/tag/0.295.0):
New icons 0.295.0

[Compare
Source](https://togithub.com/lucide-icons/lucide/compare/0.294.0...0.295.0)

#### New icons 🎨

- `message-circle-code`
([#&#8203;1208](https://togithub.com/lucide-icons/lucide/issues/1208))
by [@&#8203;danielbayley](https://togithub.com/danielbayley)
- `message-circle-dashed`
([#&#8203;1208](https://togithub.com/lucide-icons/lucide/issues/1208))
by [@&#8203;danielbayley](https://togithub.com/danielbayley)
- `message-circle-heart`
([#&#8203;1208](https://togithub.com/lucide-icons/lucide/issues/1208))
by [@&#8203;danielbayley](https://togithub.com/danielbayley)
- `message-circle-more`
([#&#8203;1208](https://togithub.com/lucide-icons/lucide/issues/1208))
by [@&#8203;danielbayley](https://togithub.com/danielbayley)
- `message-circle-off`
([#&#8203;1208](https://togithub.com/lucide-icons/lucide/issues/1208))
by [@&#8203;danielbayley](https://togithub.com/danielbayley)
- `message-circle-plus`
([#&#8203;1208](https://togithub.com/lucide-icons/lucide/issues/1208))
by [@&#8203;danielbayley](https://togithub.com/danielbayley)
- `message-circle-question`
([#&#8203;1208](https://togithub.com/lucide-icons/lucide/issues/1208))
by [@&#8203;danielbayley](https://togithub.com/danielbayley)
- `message-circle-reply`
([#&#8203;1208](https://togithub.com/lucide-icons/lucide/issues/1208))
by [@&#8203;danielbayley](https://togithub.com/danielbayley)
- `message-circle-warning`
([#&#8203;1208](https://togithub.com/lucide-icons/lucide/issues/1208))
by [@&#8203;danielbayley](https://togithub.com/danielbayley)
- `message-circle-x`
([#&#8203;1208](https://togithub.com/lucide-icons/lucide/issues/1208))
by [@&#8203;danielbayley](https://togithub.com/danielbayley)
- `message-square-code`
([#&#8203;1208](https://togithub.com/lucide-icons/lucide/issues/1208))
by [@&#8203;danielbayley](https://togithub.com/danielbayley)
- `message-square-diff`
([#&#8203;1208](https://togithub.com/lucide-icons/lucide/issues/1208))
by [@&#8203;danielbayley](https://togithub.com/danielbayley)
- `message-square-dot`
([#&#8203;1208](https://togithub.com/lucide-icons/lucide/issues/1208))
by [@&#8203;danielbayley](https://togithub.com/danielbayley)
- `message-square-heart`
([#&#8203;1208](https://togithub.com/lucide-icons/lucide/issues/1208))
by [@&#8203;danielbayley](https://togithub.com/danielbayley)
- `message-square-more`
([#&#8203;1208](https://togithub.com/lucide-icons/lucide/issues/1208))
by [@&#8203;danielbayley](https://togithub.com/danielbayley)
- `message-square-off`
([#&#8203;1208](https://togithub.com/lucide-icons/lucide/issues/1208))
by [@&#8203;danielbayley](https://togithub.com/danielbayley)
- `message-square-quote`
([#&#8203;1208](https://togithub.com/lucide-icons/lucide/issues/1208))
by [@&#8203;danielbayley](https://togithub.com/danielbayley)
- `message-square-reply`
([#&#8203;1208](https://togithub.com/lucide-icons/lucide/issues/1208))
by [@&#8203;danielbayley](https://togithub.com/danielbayley)
- `message-square-share`
([#&#8203;1208](https://togithub.com/lucide-icons/lucide/issues/1208))
by [@&#8203;danielbayley](https://togithub.com/danielbayley)
- `message-square-text`
([#&#8203;1208](https://togithub.com/lucide-icons/lucide/issues/1208))
by [@&#8203;danielbayley](https://togithub.com/danielbayley)
- `message-square-warning`
([#&#8203;1208](https://togithub.com/lucide-icons/lucide/issues/1208))
by [@&#8203;danielbayley](https://togithub.com/danielbayley)
- `message-square-x`
([#&#8203;1208](https://togithub.com/lucide-icons/lucide/issues/1208))
by [@&#8203;danielbayley](https://togithub.com/danielbayley)

#### Modified Icons 🔨

- `message-circle`
([#&#8203;1208](https://togithub.com/lucide-icons/lucide/issues/1208))
by [@&#8203;danielbayley](https://togithub.com/danielbayley)
- `message-square-plus`
([#&#8203;1208](https://togithub.com/lucide-icons/lucide/issues/1208))
by [@&#8203;danielbayley](https://togithub.com/danielbayley)

###
[`v0.294.0`](https://togithub.com/lucide-icons/lucide/releases/tag/0.294.0):
New icons 0.294.0

[Compare
Source](https://togithub.com/lucide-icons/lucide/compare/0.293.0...0.294.0)

#### New icons 🎨

- `audio-lines`
([#&#8203;1124](https://togithub.com/lucide-icons/lucide/issues/1124))
by [@&#8203;danielbayley](https://togithub.com/danielbayley)
- `audio-waveform`
([#&#8203;1124](https://togithub.com/lucide-icons/lucide/issues/1124))
by [@&#8203;danielbayley](https://togithub.com/danielbayley)
- `disc-album`
([#&#8203;1124](https://togithub.com/lucide-icons/lucide/issues/1124))
by [@&#8203;danielbayley](https://togithub.com/danielbayley)
- `drum`
([#&#8203;1124](https://togithub.com/lucide-icons/lucide/issues/1124))
by [@&#8203;danielbayley](https://togithub.com/danielbayley)
- `file-music`
([#&#8203;1124](https://togithub.com/lucide-icons/lucide/issues/1124))
by [@&#8203;danielbayley](https://togithub.com/danielbayley)
- `guitar`
([#&#8203;1124](https://togithub.com/lucide-icons/lucide/issues/1124))
by [@&#8203;danielbayley](https://togithub.com/danielbayley)
- `keyboard-music`
([#&#8203;1124](https://togithub.com/lucide-icons/lucide/issues/1124))
by [@&#8203;danielbayley](https://togithub.com/danielbayley)
- `piano`
([#&#8203;1124](https://togithub.com/lucide-icons/lucide/issues/1124))
by [@&#8203;danielbayley](https://togithub.com/danielbayley)

#### Modified Icons 🔨

- `speaker`
([#&#8203;1124](https://togithub.com/lucide-icons/lucide/issues/1124))
by [@&#8203;danielbayley](https://togithub.com/danielbayley)

###
[`v0.293.0`](https://togithub.com/lucide-icons/lucide/releases/tag/0.293.0):
Renamed user icons and package updates 0.293.0

[Compare
Source](https://togithub.com/lucide-icons/lucide/compare/0.292.0...0.293.0)

#### Packages updates 📦

- Angular 17 support for `lucide-angular`
[#&#8203;1696](https://togithub.com/lucide-icons/lucide/issues/1696)
- Make sure "lucide" classes are applied on elements for all packages
[#&#8203;1691](https://togithub.com/lucide-icons/lucide/issues/1691)

#### Renamed Icons 🔨

- `user-2` to `user-round`
([#&#8203;1638](https://togithub.com/lucide-icons/lucide/issues/1638))
by [@&#8203;jmsv](https://togithub.com/jmsv)
- `user-check-2` to `user-round-check`
([#&#8203;1638](https://togithub.com/lucide-icons/lucide/issues/1638))
by [@&#8203;jmsv](https://togithub.com/jmsv)
- `user-circle-2` to `user-round-circle`
([#&#8203;1638](https://togithub.com/lucide-icons/lucide/issues/1638))
by [@&#8203;jmsv](https://togithub.com/jmsv)
- `user-cog-2` to `user-round-cog`
([#&#8203;1638](https://togithub.com/lucide-icons/lucide/issues/1638))
by [@&#8203;jmsv](https://togithub.com/jmsv)
- `user-minus-2` to `user-round-minus`
([#&#8203;1638](https://togithub.com/lucide-icons/lucide/issues/1638))
by [@&#8203;jmsv](https://togithub.com/jmsv)
- `user-plus-2` to `user-round-plus`
([#&#8203;1638](https://togithub.com/lucide-icons/lucide/issues/1638))
by [@&#8203;jmsv](https://togithub.com/jmsv)
- `user-search-2` to `user-round-search`
([#&#8203;1638](https://togithub.com/lucide-icons/lucide/issues/1638))
by [@&#8203;jmsv](https://togithub.com/jmsv)
- `user-square-2` to `user-round-square`
([#&#8203;1638](https://togithub.com/lucide-icons/lucide/issues/1638))
by [@&#8203;jmsv](https://togithub.com/jmsv)
- `user-x-2` to `user-round-x`
([#&#8203;1638](https://togithub.com/lucide-icons/lucide/issues/1638))
by [@&#8203;jmsv](https://togithub.com/jmsv)
- `users-2` to `users-round`
([#&#8203;1638](https://togithub.com/lucide-icons/lucide/issues/1638))
by [@&#8203;jmsv](https://togithub.com/jmsv)

</details>

---

### Configuration

📅 **Schedule**: Branch creation - At any time (no schedule defined),
Automerge - At any time (no schedule defined).

🚦 **Automerge**: Disabled by config. Please merge this manually once you
are satisfied.

♻ **Rebasing**: Whenever PR becomes conflicted, or you tick the
rebase/retry checkbox.

🔕 **Ignore**: Close this PR and you won't be reminded about this update
again.

---

- [ ] <!-- rebase-check -->If you want to rebase/retry this PR, check
this box

---

This PR has been generated by [Mend
Renovate](https://www.mend.io/free-developer-tools/renovate/). View
repository job log
[here](https://developer.mend.io/github/GymSquad/admin-page).

<!--renovate-debug:eyJjcmVhdGVkSW5WZXIiOiIzNy41OS44IiwidXBkYXRlZEluVmVyIjoiMzcuMTM1LjAiLCJ0YXJnZXRCcmFuY2giOiJtYWluIn0=-->
@WarningImHack3r WarningImHack3r mentioned this pull request Jul 7, 2024
14 tasks
@WarningImHack3r
Copy link

@AdrianGonz97 @huntabyte @ericfennis I made a Vite preprocessor for this

realguse pushed a commit to realguse/lucide that referenced this pull request Dec 25, 2024
…cons#1707)

* add extensions for `NodeNext` support

* fixed exports map and replaced the packaging system for `@sveltejs/pacakge`

* lockfile

* ignore generated `.svelte-kit` dir

* no longer needed

* fixed main export

* fixed IconNode and IconProps types

* have icon props extend svg attributes

* build script for prepending the license to each `dist` file

* Update packages/lucide-svelte/scripts/addLicense.mjs

---------

Co-authored-by: Eric Fennis <[email protected]>
Sign up for free to join this conversation on GitHub. Already have an account? Sign in to comment
Labels
📦 dependencies Pull requests that update a dependency file 🧣 svelte package About the Svelte package
Projects
None yet
Development

Successfully merging this pull request may close these issues.

Svelte: Module not found: Error: Default condition should be last one Lucide-svelte slow import of icon
5 participants