Skip to content

Commit 2cbad42

Browse files
committed
Added GetGeometryData extension for LucideIconKind
Introduces a GetGeometryData method to retrieve geometry data for a given LucideIconKind in both IconToGeometryBuilder and IconToGeometry. Also adds a LucideIconExtensions class providing an extension method for easier access to geometry data.
1 parent 7a387b9 commit 2cbad42

3 files changed

Lines changed: 12 additions & 2 deletions

File tree

src/Generator.Icons/IconToGeometryBuilder.cs

Lines changed: 3 additions & 1 deletion
Original file line numberDiff line numberDiff line change
@@ -42,14 +42,16 @@ static IconToGeometry()
4242
_geometries = entries.ToFrozenDictionary(x => x.Key, x => x.Geometry);
4343
}
4444
45+
public static string GetGeometryData(LucideIconKind icon) => _geometries[icon];
46+
4547
public static Geometry CreateGeometry(LucideIconKind icon)
4648
{
4749
if (_geometryCache.TryGetValue(icon, out var geometry))
4850
{
4951
return geometry;
5052
}
5153
52-
geometry = Geometry.Parse(_geometries[icon]);
54+
geometry = Geometry.Parse(GetGeometryData(icon));
5355
5456
_geometryCache.Add(icon, geometry);
5557

src/Lucide.Avalonia/IconToGeometry.cs

Lines changed: 3 additions & 1 deletion
Original file line numberDiff line numberDiff line change
@@ -1652,14 +1652,16 @@ static IconToGeometry()
16521652
_geometries = entries.ToFrozenDictionary(x => x.Key, x => x.Geometry);
16531653
}
16541654

1655+
public static string GetGeometryData(LucideIconKind icon) => _geometries[icon];
1656+
16551657
public static Geometry CreateGeometry(LucideIconKind icon)
16561658
{
16571659
if (_geometryCache.TryGetValue(icon, out var geometry))
16581660
{
16591661
return geometry;
16601662
}
16611663

1662-
geometry = Geometry.Parse(_geometries[icon]);
1664+
geometry = Geometry.Parse(GetGeometryData(icon));
16631665

16641666
_geometryCache.Add(icon, geometry);
16651667

Lines changed: 6 additions & 0 deletions
Original file line numberDiff line numberDiff line change
@@ -0,0 +1,6 @@
1+
namespace Lucide.Avalonia;
2+
3+
public static class LucideIconExtensions
4+
{
5+
public static string GetGeometryData(this LucideIconKind kind) => IconToGeometry.GetGeometryData(kind);
6+
}

0 commit comments

Comments
 (0)