diff --git a/packages/lucide-flutter/.gitignore b/packages/lucide-flutter/.gitignore new file mode 100644 index 0000000000..a247422ef7 --- /dev/null +++ b/packages/lucide-flutter/.gitignore @@ -0,0 +1,75 @@ +# Miscellaneous +*.class +*.log +*.pyc +*.swp +.DS_Store +.atom/ +.buildlog/ +.history +.svn/ + +# IntelliJ related +*.iml +*.ipr +*.iws +.idea/ + +# The .vscode folder contains launch configuration and tasks you configure in +# VS Code which you may wish to be included in version control, so this line +# is commented out by default. +#.vscode/ + +# Flutter/Dart/Pub related +**/doc/api/ +.dart_tool/ +.flutter-plugins +.flutter-plugins-dependencies +.packages +.pub-cache/ +.pub/ +build/ + +# Android related +**/android/**/gradle-wrapper.jar +**/android/.gradle +**/android/captures/ +**/android/gradlew +**/android/gradlew.bat +**/android/local.properties +**/android/**/GeneratedPluginRegistrant.java + +# iOS/XCode related +**/ios/**/*.mode1v3 +**/ios/**/*.mode2v3 +**/ios/**/*.moved-aside +**/ios/**/*.pbxuser +**/ios/**/*.perspectivev3 +**/ios/**/*sync/ +**/ios/**/.sconsign.dblite +**/ios/**/.tags* +**/ios/**/.vagrant/ +**/ios/**/DerivedData/ +**/ios/**/Icon? +**/ios/**/Pods/ +**/ios/**/.symlinks/ +**/ios/**/profile +**/ios/**/xcuserdata +**/ios/.generated/ +**/ios/Flutter/App.framework +**/ios/Flutter/Flutter.framework +**/ios/Flutter/Flutter.podspec +**/ios/Flutter/Generated.xcconfig +**/ios/Flutter/ephemeral +**/ios/Flutter/app.flx +**/ios/Flutter/app.zip +**/ios/Flutter/flutter_assets/ +**/ios/Flutter/flutter_export_environment.sh +**/ios/ServiceDefinitions.json +**/ios/Runner/GeneratedPluginRegistrant.* + +# Exceptions to above rules. +!**/ios/**/default.mode1v3 +!**/ios/**/default.mode2v3 +!**/ios/**/default.pbxuser +!**/ios/**/default.perspectivev3 diff --git a/packages/lucide-flutter/CHANGELOG.md b/packages/lucide-flutter/CHANGELOG.md new file mode 100644 index 0000000000..e4e2a88ced --- /dev/null +++ b/packages/lucide-flutter/CHANGELOG.md @@ -0,0 +1,3 @@ +## 0.15.28 + +* Initial release diff --git a/packages/lucide-flutter/LICENSE b/packages/lucide-flutter/LICENSE new file mode 100644 index 0000000000..66cc022075 --- /dev/null +++ b/packages/lucide-flutter/LICENSE @@ -0,0 +1,15 @@ +ISC License + +Copyright (c) 2020, Lucide Contributors + +Permission to use, copy, modify, and/or distribute this software for any +purpose with or without fee is hereby granted, provided that the above +copyright notice and this permission notice appear in all copies. + +THE SOFTWARE IS PROVIDED "AS IS" AND THE AUTHOR DISCLAIMS ALL WARRANTIES +WITH REGARD TO THIS SOFTWARE INCLUDING ALL IMPLIED WARRANTIES OF +MERCHANTABILITY AND FITNESS. IN NO EVENT SHALL THE AUTHOR BE LIABLE FOR +ANY SPECIAL, DIRECT, INDIRECT, OR CONSEQUENTIAL DAMAGES OR ANY DAMAGES +WHATSOEVER RESULTING FROM LOSS OF USE, DATA OR PROFITS, WHETHER IN AN +ACTION OF CONTRACT, NEGLIGENCE OR OTHER TORTIOUS ACTION, ARISING OUT OF +OR IN CONNECTION WITH THE USE OR PERFORMANCE OF THIS SOFTWARE. diff --git a/packages/lucide-flutter/README.md b/packages/lucide-flutter/README.md new file mode 100644 index 0000000000..228758ba4b --- /dev/null +++ b/packages/lucide-flutter/README.md @@ -0,0 +1,8 @@ +# lucide_icons + +Lucide Icons ([lucide.dev](https://lucide.dev)) for Flutter. Visit the website for the full list of icons + +## Example +```dart +Icon(LucideIcons.activity); +``` diff --git a/packages/lucide-flutter/analysis_option.yaml b/packages/lucide-flutter/analysis_option.yaml new file mode 100644 index 0000000000..2d010597ce --- /dev/null +++ b/packages/lucide-flutter/analysis_option.yaml @@ -0,0 +1,18 @@ +include: package:lint/analysis_options.yaml + +linter: + rules: + omit_local_variable_types: true + avoid_classes_with_only_static_members: false + prefer_single_quotes: true + + file_names: false + + avoid_setters_without_getters: false + + sort_pub_dependencies: false + + prefer_relative_imports: true + + # only for debug + avoid_print: false diff --git a/packages/lucide-flutter/assets/Lucide.ttf b/packages/lucide-flutter/assets/Lucide.ttf new file mode 100644 index 0000000000..54550d9332 Binary files /dev/null and b/packages/lucide-flutter/assets/Lucide.ttf differ diff --git a/packages/lucide-flutter/example/README.md b/packages/lucide-flutter/example/README.md new file mode 100644 index 0000000000..ec110182a0 --- /dev/null +++ b/packages/lucide-flutter/example/README.md @@ -0,0 +1,9 @@ +```dart + +Icon(LucideIcons.activity); +Icon(LucideIcons.airplay); +// ... +// for full list see +// https://lucide.dev + +``` \ No newline at end of file diff --git a/packages/lucide-flutter/lib/lucide_icons.dart b/packages/lucide-flutter/lib/lucide_icons.dart new file mode 100644 index 0000000000..6922657c8a --- /dev/null +++ b/packages/lucide-flutter/lib/lucide_icons.dart @@ -0,0 +1,498 @@ +library lucide_icons; + +import "package:flutter/widgets.dart"; +import "src/icon_data.dart"; + +// THIS FILE IS AUTOMATICALLY GENERATED! + +class LucideIcons { + static const IconData activity = const LucideIconData(0xf100); + static const IconData airplay = const LucideIconData(0xf101); + static const IconData alarmCheck = const LucideIconData(0xf102); + static const IconData alarmClock = const LucideIconData(0xf103); + static const IconData alarmMinus = const LucideIconData(0xf104); + static const IconData alarmPlus = const LucideIconData(0xf105); + static const IconData album = const LucideIconData(0xf106); + static const IconData alertCircle = const LucideIconData(0xf107); + static const IconData alertOctagon = const LucideIconData(0xf108); + static const IconData alertTriangle = const LucideIconData(0xf109); + static const IconData alignCenter = const LucideIconData(0xf10a); + static const IconData alignJustify = const LucideIconData(0xf10b); + static const IconData alignLeft = const LucideIconData(0xf10c); + static const IconData alignRight = const LucideIconData(0xf10d); + static const IconData anchor = const LucideIconData(0xf10e); + static const IconData aperture = const LucideIconData(0xf10f); + static const IconData archive = const LucideIconData(0xf110); + static const IconData arrowBigDown = const LucideIconData(0xf111); + static const IconData arrowBigLeft = const LucideIconData(0xf112); + static const IconData arrowBigRight = const LucideIconData(0xf113); + static const IconData arrowBigUp = const LucideIconData(0xf114); + static const IconData arrowDown = const LucideIconData(0xf115); + static const IconData arrowDownCircle = const LucideIconData(0xf116); + static const IconData arrowDownLeft = const LucideIconData(0xf117); + static const IconData arrowDownRight = const LucideIconData(0xf118); + static const IconData arrowLeft = const LucideIconData(0xf119); + static const IconData arrowLeftCircle = const LucideIconData(0xf11a); + static const IconData arrowRight = const LucideIconData(0xf11b); + static const IconData arrowRightCircle = const LucideIconData(0xf11c); + static const IconData arrowUp = const LucideIconData(0xf11d); + static const IconData arrowUpCircle = const LucideIconData(0xf11e); + static const IconData arrowUpLeft = const LucideIconData(0xf11f); + static const IconData arrowUpRight = const LucideIconData(0xf120); + static const IconData asterisk = const LucideIconData(0xf121); + static const IconData atSign = const LucideIconData(0xf122); + static const IconData award = const LucideIconData(0xf123); + static const IconData axe = const LucideIconData(0xf124); + static const IconData banknote = const LucideIconData(0xf125); + static const IconData barChart = const LucideIconData(0xf126); + static const IconData barChart2 = const LucideIconData(0xf127); + static const IconData battery = const LucideIconData(0xf128); + static const IconData batteryCharging = const LucideIconData(0xf129); + static const IconData batteryFull = const LucideIconData(0xf12a); + static const IconData batteryLow = const LucideIconData(0xf12b); + static const IconData batteryMedium = const LucideIconData(0xf12c); + static const IconData beaker = const LucideIconData(0xf12d); + static const IconData bell = const LucideIconData(0xf12e); + static const IconData bellMinus = const LucideIconData(0xf12f); + static const IconData bellOff = const LucideIconData(0xf130); + static const IconData bellPlus = const LucideIconData(0xf131); + static const IconData bellRing = const LucideIconData(0xf132); + static const IconData bike = const LucideIconData(0xf133); + static const IconData binary = const LucideIconData(0xf134); + static const IconData bitcoin = const LucideIconData(0xf135); + static const IconData bluetooth = const LucideIconData(0xf136); + static const IconData bluetoothConnected = const LucideIconData(0xf137); + static const IconData bluetoothOff = const LucideIconData(0xf138); + static const IconData bluetoothSearching = const LucideIconData(0xf139); + static const IconData bold = const LucideIconData(0xf13a); + static const IconData book = const LucideIconData(0xf13b); + static const IconData bookOpen = const LucideIconData(0xf13c); + static const IconData bookmark = const LucideIconData(0xf13d); + static const IconData bot = const LucideIconData(0xf13e); + static const IconData box = const LucideIconData(0xf13f); + static const IconData boxSelect = const LucideIconData(0xf140); + static const IconData briefcase = const LucideIconData(0xf141); + static const IconData brush = const LucideIconData(0xf142); + static const IconData bug = const LucideIconData(0xf143); + static const IconData building = const LucideIconData(0xf144); + static const IconData bus = const LucideIconData(0xf145); + static const IconData calculator = const LucideIconData(0xf146); + static const IconData calendar = const LucideIconData(0xf147); + static const IconData camera = const LucideIconData(0xf148); + static const IconData cameraOff = const LucideIconData(0xf149); + static const IconData car = const LucideIconData(0xf14a); + static const IconData cast = const LucideIconData(0xf14b); + static const IconData check = const LucideIconData(0xf14c); + static const IconData checkCircle = const LucideIconData(0xf14d); + static const IconData checkCircle2 = const LucideIconData(0xf14e); + static const IconData checkSquare = const LucideIconData(0xf14f); + static const IconData chevronDown = const LucideIconData(0xf150); + static const IconData chevronLeft = const LucideIconData(0xf151); + static const IconData chevronRight = const LucideIconData(0xf152); + static const IconData chevronUp = const LucideIconData(0xf153); + static const IconData chevronsDown = const LucideIconData(0xf154); + static const IconData chevronsDownUp = const LucideIconData(0xf155); + static const IconData chevronsLeft = const LucideIconData(0xf156); + static const IconData chevronsRight = const LucideIconData(0xf157); + static const IconData chevronsUp = const LucideIconData(0xf158); + static const IconData chevronsUpDown = const LucideIconData(0xf159); + static const IconData chrome = const LucideIconData(0xf15a); + static const IconData circle = const LucideIconData(0xf15b); + static const IconData circleSlashed = const LucideIconData(0xf15c); + static const IconData clipboard = const LucideIconData(0xf15d); + static const IconData clipboardCheck = const LucideIconData(0xf15e); + static const IconData clipboardCopy = const LucideIconData(0xf15f); + static const IconData clipboardList = const LucideIconData(0xf160); + static const IconData clipboardX = const LucideIconData(0xf161); + static const IconData clock = const LucideIconData(0xf162); + static const IconData cloud = const LucideIconData(0xf163); + static const IconData cloudDrizzle = const LucideIconData(0xf164); + static const IconData cloudFog = const LucideIconData(0xf165); + static const IconData cloudHail = const LucideIconData(0xf166); + static const IconData cloudLightning = const LucideIconData(0xf167); + static const IconData cloudMoon = const LucideIconData(0xf168); + static const IconData cloudOff = const LucideIconData(0xf169); + static const IconData cloudRain = const LucideIconData(0xf16a); + static const IconData cloudRainWind = const LucideIconData(0xf16b); + static const IconData cloudSnow = const LucideIconData(0xf16c); + static const IconData cloudSun = const LucideIconData(0xf16d); + static const IconData cloudy = const LucideIconData(0xf16e); + static const IconData clover = const LucideIconData(0xf16f); + static const IconData code = const LucideIconData(0xf170); + static const IconData code2 = const LucideIconData(0xf171); + static const IconData codepen = const LucideIconData(0xf172); + static const IconData codesandbox = const LucideIconData(0xf173); + static const IconData coffee = const LucideIconData(0xf174); + static const IconData coins = const LucideIconData(0xf175); + static const IconData columns = const LucideIconData(0xf176); + static const IconData command = const LucideIconData(0xf177); + static const IconData compass = const LucideIconData(0xf178); + static const IconData contact = const LucideIconData(0xf179); + static const IconData contrast = const LucideIconData(0xf17a); + static const IconData copy = const LucideIconData(0xf17b); + static const IconData copyleft = const LucideIconData(0xf17c); + static const IconData copyright = const LucideIconData(0xf17d); + static const IconData cornerDownLeft = const LucideIconData(0xf17e); + static const IconData cornerDownRight = const LucideIconData(0xf17f); + static const IconData cornerLeftDown = const LucideIconData(0xf180); + static const IconData cornerLeftUp = const LucideIconData(0xf181); + static const IconData cornerRightDown = const LucideIconData(0xf182); + static const IconData cornerRightUp = const LucideIconData(0xf183); + static const IconData cornerUpLeft = const LucideIconData(0xf184); + static const IconData cornerUpRight = const LucideIconData(0xf185); + static const IconData cpu = const LucideIconData(0xf186); + static const IconData creditCard = const LucideIconData(0xf187); + static const IconData crop = const LucideIconData(0xf188); + static const IconData cross = const LucideIconData(0xf189); + static const IconData crosshair = const LucideIconData(0xf18a); + static const IconData crown = const LucideIconData(0xf18b); + static const IconData currency = const LucideIconData(0xf18c); + static const IconData database = const LucideIconData(0xf18d); + static const IconData delete = const LucideIconData(0xf18e); + static const IconData disc = const LucideIconData(0xf18f); + static const IconData divide = const LucideIconData(0xf190); + static const IconData divideCircle = const LucideIconData(0xf191); + static const IconData divideSquare = const LucideIconData(0xf192); + static const IconData dollarSign = const LucideIconData(0xf193); + static const IconData download = const LucideIconData(0xf194); + static const IconData downloadCloud = const LucideIconData(0xf195); + static const IconData dribbble = const LucideIconData(0xf196); + static const IconData droplet = const LucideIconData(0xf197); + static const IconData droplets = const LucideIconData(0xf198); + static const IconData edit = const LucideIconData(0xf199); + static const IconData edit2 = const LucideIconData(0xf19a); + static const IconData edit3 = const LucideIconData(0xf19b); + static const IconData equal = const LucideIconData(0xf19c); + static const IconData equalNot = const LucideIconData(0xf19d); + static const IconData euro = const LucideIconData(0xf19e); + static const IconData expand = const LucideIconData(0xf19f); + static const IconData externalLink = const LucideIconData(0xf1a0); + static const IconData eye = const LucideIconData(0xf1a1); + static const IconData eyeOff = const LucideIconData(0xf1a2); + static const IconData facebook = const LucideIconData(0xf1a3); + static const IconData fastForward = const LucideIconData(0xf1a4); + static const IconData feather = const LucideIconData(0xf1a5); + static const IconData figma = const LucideIconData(0xf1a6); + static const IconData file = const LucideIconData(0xf1a7); + static const IconData fileCheck = const LucideIconData(0xf1a8); + static const IconData fileCheck2 = const LucideIconData(0xf1a9); + static const IconData fileCode = const LucideIconData(0xf1aa); + static const IconData fileDigit = const LucideIconData(0xf1ab); + static const IconData fileInput = const LucideIconData(0xf1ac); + static const IconData fileMinus = const LucideIconData(0xf1ad); + static const IconData fileMinus2 = const LucideIconData(0xf1ae); + static const IconData fileOutput = const LucideIconData(0xf1af); + static const IconData filePlus = const LucideIconData(0xf1b0); + static const IconData filePlus2 = const LucideIconData(0xf1b1); + static const IconData fileSearch = const LucideIconData(0xf1b2); + static const IconData fileText = const LucideIconData(0xf1b3); + static const IconData fileX = const LucideIconData(0xf1b4); + static const IconData fileX2 = const LucideIconData(0xf1b5); + static const IconData files = const LucideIconData(0xf1b6); + static const IconData film = const LucideIconData(0xf1b7); + static const IconData filter = const LucideIconData(0xf1b8); + static const IconData flag = const LucideIconData(0xf1b9); + static const IconData flame = const LucideIconData(0xf1ba); + static const IconData flashlight = const LucideIconData(0xf1bb); + static const IconData flashlightOff = const LucideIconData(0xf1bc); + static const IconData flaskConical = const LucideIconData(0xf1bd); + static const IconData flaskRound = const LucideIconData(0xf1be); + static const IconData folder = const LucideIconData(0xf1bf); + static const IconData folderMinus = const LucideIconData(0xf1c0); + static const IconData folderPlus = const LucideIconData(0xf1c1); + static const IconData formInput = const LucideIconData(0xf1c2); + static const IconData forward = const LucideIconData(0xf1c3); + static const IconData framer = const LucideIconData(0xf1c4); + static const IconData frown = const LucideIconData(0xf1c5); + static const IconData functionSquare = const LucideIconData(0xf1c6); + static const IconData gamepad = const LucideIconData(0xf1c7); + static const IconData gamepad2 = const LucideIconData(0xf1c8); + static const IconData gauge = const LucideIconData(0xf1c9); + static const IconData gavel = const LucideIconData(0xf1ca); + static const IconData ghost = const LucideIconData(0xf1cb); + static const IconData gift = const LucideIconData(0xf1cc); + static const IconData gitBranch = const LucideIconData(0xf1cd); + static const IconData gitBranchPlus = const LucideIconData(0xf1ce); + static const IconData gitCommit = const LucideIconData(0xf1cf); + static const IconData gitMerge = const LucideIconData(0xf1d0); + static const IconData gitPullRequest = const LucideIconData(0xf1d1); + static const IconData github = const LucideIconData(0xf1d2); + static const IconData gitlab = const LucideIconData(0xf1d3); + static const IconData glasses = const LucideIconData(0xf1d4); + static const IconData globe = const LucideIconData(0xf1d5); + static const IconData globe2 = const LucideIconData(0xf1d6); + static const IconData grab = const LucideIconData(0xf1d7); + static const IconData grid = const LucideIconData(0xf1d8); + static const IconData gripHorizontal = const LucideIconData(0xf1d9); + static const IconData gripVertical = const LucideIconData(0xf1da); + static const IconData hammer = const LucideIconData(0xf1db); + static const IconData hand = const LucideIconData(0xf1dc); + static const IconData handMetal = const LucideIconData(0xf1dd); + static const IconData hardDrive = const LucideIconData(0xf1de); + static const IconData hardHat = const LucideIconData(0xf1df); + static const IconData hash = const LucideIconData(0xf1e0); + static const IconData haze = const LucideIconData(0xf1e1); + static const IconData headphones = const LucideIconData(0xf1e2); + static const IconData heart = const LucideIconData(0xf1e3); + static const IconData helpCircle = const LucideIconData(0xf1e4); + static const IconData hexagon = const LucideIconData(0xf1e5); + static const IconData highlighter = const LucideIconData(0xf1e6); + static const IconData history = const LucideIconData(0xf1e7); + static const IconData home = const LucideIconData(0xf1e8); + static const IconData image = const LucideIconData(0xf1e9); + static const IconData imageMinus = const LucideIconData(0xf1ea); + static const IconData imageOff = const LucideIconData(0xf1eb); + static const IconData imagePlus = const LucideIconData(0xf1ec); + static const IconData import = const LucideIconData(0xf1ed); + static const IconData inbox = const LucideIconData(0xf1ee); + static const IconData indent = const LucideIconData(0xf1ef); + static const IconData indianRupee = const LucideIconData(0xf1f0); + static const IconData infinity = const LucideIconData(0xf1f1); + static const IconData info = const LucideIconData(0xf1f2); + static const IconData inspect = const LucideIconData(0xf1f3); + static const IconData instagram = const LucideIconData(0xf1f4); + static const IconData italic = const LucideIconData(0xf1f5); + static const IconData jerseyPound = const LucideIconData(0xf1f6); + static const IconData key = const LucideIconData(0xf1f7); + static const IconData languages = const LucideIconData(0xf1f8); + static const IconData laptop = const LucideIconData(0xf1f9); + static const IconData laptop2 = const LucideIconData(0xf1fa); + static const IconData lasso = const LucideIconData(0xf1fb); + static const IconData lassoSelect = const LucideIconData(0xf1fc); + static const IconData layers = const LucideIconData(0xf1fd); + static const IconData layout = const LucideIconData(0xf1fe); + static const IconData layoutDashboard = const LucideIconData(0xf1ff); + static const IconData layoutGrid = const LucideIconData(0xf200); + static const IconData layoutList = const LucideIconData(0xf201); + static const IconData layoutTemplate = const LucideIconData(0xf202); + static const IconData library = const LucideIconData(0xf203); + static const IconData lifeBuoy = const LucideIconData(0xf204); + static const IconData lightbulb = const LucideIconData(0xf205); + static const IconData lightbulbOff = const LucideIconData(0xf206); + static const IconData link = const LucideIconData(0xf207); + static const IconData link2 = const LucideIconData(0xf208); + static const IconData link2Off = const LucideIconData(0xf209); + static const IconData linkedin = const LucideIconData(0xf20a); + static const IconData list = const LucideIconData(0xf20b); + static const IconData listChecks = const LucideIconData(0xf20c); + static const IconData listOrdered = const LucideIconData(0xf20d); + static const IconData loader = const LucideIconData(0xf20e); + static const IconData loader2 = const LucideIconData(0xf20f); + static const IconData locate = const LucideIconData(0xf210); + static const IconData locateFixed = const LucideIconData(0xf211); + static const IconData lock = const LucideIconData(0xf212); + static const IconData logIn = const LucideIconData(0xf213); + static const IconData logOut = const LucideIconData(0xf214); + static const IconData mail = const LucideIconData(0xf215); + static const IconData map = const LucideIconData(0xf216); + static const IconData mapPin = const LucideIconData(0xf217); + static const IconData maximize = const LucideIconData(0xf218); + static const IconData maximize2 = const LucideIconData(0xf219); + static const IconData meh = const LucideIconData(0xf21a); + static const IconData menu = const LucideIconData(0xf21b); + static const IconData messageCircle = const LucideIconData(0xf21c); + static const IconData messageSquare = const LucideIconData(0xf21d); + static const IconData mic = const LucideIconData(0xf21e); + static const IconData micOff = const LucideIconData(0xf21f); + static const IconData minimize = const LucideIconData(0xf220); + static const IconData minimize2 = const LucideIconData(0xf221); + static const IconData minus = const LucideIconData(0xf222); + static const IconData minusCircle = const LucideIconData(0xf223); + static const IconData minusSquare = const LucideIconData(0xf224); + static const IconData monitor = const LucideIconData(0xf225); + static const IconData monitorOff = const LucideIconData(0xf226); + static const IconData monitorSpeaker = const LucideIconData(0xf227); + static const IconData moon = const LucideIconData(0xf228); + static const IconData moreHorizontal = const LucideIconData(0xf229); + static const IconData moreVertical = const LucideIconData(0xf22a); + static const IconData mountain = const LucideIconData(0xf22b); + static const IconData mountainSnow = const LucideIconData(0xf22c); + static const IconData mousePointer = const LucideIconData(0xf22d); + static const IconData mousePointer2 = const LucideIconData(0xf22e); + static const IconData mousePointerClick = const LucideIconData(0xf22f); + static const IconData move = const LucideIconData(0xf230); + static const IconData moveDiagonal = const LucideIconData(0xf231); + static const IconData moveDiagonal2 = const LucideIconData(0xf232); + static const IconData moveHorizontal = const LucideIconData(0xf233); + static const IconData moveVertical = const LucideIconData(0xf234); + static const IconData music = const LucideIconData(0xf235); + static const IconData navigation = const LucideIconData(0xf236); + static const IconData navigation2 = const LucideIconData(0xf237); + static const IconData network = const LucideIconData(0xf238); + static const IconData octagon = const LucideIconData(0xf239); + static const IconData option = const LucideIconData(0xf23a); + static const IconData outdent = const LucideIconData(0xf23b); + static const IconData package = const LucideIconData(0xf23c); + static const IconData palette = const LucideIconData(0xf23d); + static const IconData paperclip = const LucideIconData(0xf23e); + static const IconData pause = const LucideIconData(0xf23f); + static const IconData pauseCircle = const LucideIconData(0xf240); + static const IconData pauseOctagon = const LucideIconData(0xf241); + static const IconData penTool = const LucideIconData(0xf242); + static const IconData pencil = const LucideIconData(0xf243); + static const IconData percent = const LucideIconData(0xf244); + static const IconData personStanding = const LucideIconData(0xf245); + static const IconData phone = const LucideIconData(0xf246); + static const IconData phoneCall = const LucideIconData(0xf247); + static const IconData phoneForwarded = const LucideIconData(0xf248); + static const IconData phoneIncoming = const LucideIconData(0xf249); + static const IconData phoneMissed = const LucideIconData(0xf24a); + static const IconData phoneOff = const LucideIconData(0xf24b); + static const IconData phoneOutgoing = const LucideIconData(0xf24c); + static const IconData pieChart = const LucideIconData(0xf24d); + static const IconData pipette = const LucideIconData(0xf24e); + static const IconData plane = const LucideIconData(0xf24f); + static const IconData play = const LucideIconData(0xf250); + static const IconData playCircle = const LucideIconData(0xf251); + static const IconData plugZap = const LucideIconData(0xf252); + static const IconData plus = const LucideIconData(0xf253); + static const IconData plusCircle = const LucideIconData(0xf254); + static const IconData plusSquare = const LucideIconData(0xf255); + static const IconData pocket = const LucideIconData(0xf256); + static const IconData podcast = const LucideIconData(0xf257); + static const IconData pointer = const LucideIconData(0xf258); + static const IconData poundSterling = const LucideIconData(0xf259); + static const IconData power = const LucideIconData(0xf25a); + static const IconData powerOff = const LucideIconData(0xf25b); + static const IconData printer = const LucideIconData(0xf25c); + static const IconData qrCode = const LucideIconData(0xf25d); + static const IconData radio = const LucideIconData(0xf25e); + static const IconData radioReceiver = const LucideIconData(0xf25f); + static const IconData redo = const LucideIconData(0xf260); + static const IconData refreshCcw = const LucideIconData(0xf261); + static const IconData refreshCw = const LucideIconData(0xf262); + static const IconData regex = const LucideIconData(0xf263); + static const IconData repeat = const LucideIconData(0xf264); + static const IconData repeat1 = const LucideIconData(0xf265); + static const IconData reply = const LucideIconData(0xf266); + static const IconData replyAll = const LucideIconData(0xf267); + static const IconData rewind = const LucideIconData(0xf268); + static const IconData rotateCcw = const LucideIconData(0xf269); + static const IconData rotateCw = const LucideIconData(0xf26a); + static const IconData rss = const LucideIconData(0xf26b); + static const IconData ruler = const LucideIconData(0xf26c); + static const IconData russianRuble = const LucideIconData(0xf26d); + static const IconData save = const LucideIconData(0xf26e); + static const IconData scale = const LucideIconData(0xf26f); + static const IconData scissors = const LucideIconData(0xf270); + static const IconData screenShare = const LucideIconData(0xf271); + static const IconData screenShareOff = const LucideIconData(0xf272); + static const IconData search = const LucideIconData(0xf273); + static const IconData send = const LucideIconData(0xf274); + static const IconData separatorHorizontal = const LucideIconData(0xf275); + static const IconData separatorVertical = const LucideIconData(0xf276); + static const IconData server = const LucideIconData(0xf277); + static const IconData serverCrash = const LucideIconData(0xf278); + static const IconData serverOff = const LucideIconData(0xf279); + static const IconData settings = const LucideIconData(0xf27a); + static const IconData share = const LucideIconData(0xf27b); + static const IconData share2 = const LucideIconData(0xf27c); + static const IconData sheet = const LucideIconData(0xf27d); + static const IconData shield = const LucideIconData(0xf27e); + static const IconData shieldAlert = const LucideIconData(0xf27f); + static const IconData shieldCheck = const LucideIconData(0xf280); + static const IconData shieldClose = const LucideIconData(0xf281); + static const IconData shieldOff = const LucideIconData(0xf282); + static const IconData shirt = const LucideIconData(0xf283); + static const IconData shoppingBag = const LucideIconData(0xf284); + static const IconData shoppingCart = const LucideIconData(0xf285); + static const IconData shovel = const LucideIconData(0xf286); + static const IconData shrink = const LucideIconData(0xf287); + static const IconData shuffle = const LucideIconData(0xf288); + static const IconData sidebar = const LucideIconData(0xf289); + static const IconData sidebarClose = const LucideIconData(0xf28a); + static const IconData sidebarOpen = const LucideIconData(0xf28b); + static const IconData sigma = const LucideIconData(0xf28c); + static const IconData skipBack = const LucideIconData(0xf28d); + static const IconData skipForward = const LucideIconData(0xf28e); + static const IconData skull = const LucideIconData(0xf28f); + static const IconData slack = const LucideIconData(0xf290); + static const IconData slash = const LucideIconData(0xf291); + static const IconData sliders = const LucideIconData(0xf292); + static const IconData smartphone = const LucideIconData(0xf293); + static const IconData smartphoneCharging = const LucideIconData(0xf294); + static const IconData smile = const LucideIconData(0xf295); + static const IconData snowflake = const LucideIconData(0xf296); + static const IconData sortAsc = const LucideIconData(0xf297); + static const IconData sortDesc = const LucideIconData(0xf298); + static const IconData speaker = const LucideIconData(0xf299); + static const IconData sprout = const LucideIconData(0xf29a); + static const IconData square = const LucideIconData(0xf29b); + static const IconData star = const LucideIconData(0xf29c); + static const IconData starHalf = const LucideIconData(0xf29d); + static const IconData stopCircle = const LucideIconData(0xf29e); + static const IconData strikethrough = const LucideIconData(0xf29f); + static const IconData sun = const LucideIconData(0xf2a0); + static const IconData sunrise = const LucideIconData(0xf2a1); + static const IconData sunset = const LucideIconData(0xf2a2); + static const IconData swissFranc = const LucideIconData(0xf2a3); + static const IconData switchCamera = const LucideIconData(0xf2a4); + static const IconData table = const LucideIconData(0xf2a5); + static const IconData tablet = const LucideIconData(0xf2a6); + static const IconData tag = const LucideIconData(0xf2a7); + static const IconData target = const LucideIconData(0xf2a8); + static const IconData tent = const LucideIconData(0xf2a9); + static const IconData terminal = const LucideIconData(0xf2aa); + static const IconData terminalSquare = const LucideIconData(0xf2ab); + static const IconData thermometer = const LucideIconData(0xf2ac); + static const IconData thermometerSnowflake = const LucideIconData(0xf2ad); + static const IconData thermometerSun = const LucideIconData(0xf2ae); + static const IconData thumbsDown = const LucideIconData(0xf2af); + static const IconData thumbsUp = const LucideIconData(0xf2b0); + static const IconData ticket = const LucideIconData(0xf2b1); + static const IconData timer = const LucideIconData(0xf2b2); + static const IconData toggleLeft = const LucideIconData(0xf2b3); + static const IconData toggleRight = const LucideIconData(0xf2b4); + static const IconData tornado = const LucideIconData(0xf2b5); + static const IconData trash = const LucideIconData(0xf2b6); + static const IconData trash2 = const LucideIconData(0xf2b7); + static const IconData trello = const LucideIconData(0xf2b8); + static const IconData trendingDown = const LucideIconData(0xf2b9); + static const IconData trendingUp = const LucideIconData(0xf2ba); + static const IconData triangle = const LucideIconData(0xf2bb); + static const IconData truck = const LucideIconData(0xf2bc); + static const IconData tv = const LucideIconData(0xf2bd); + static const IconData tv2 = const LucideIconData(0xf2be); + static const IconData twitch = const LucideIconData(0xf2bf); + static const IconData twitter = const LucideIconData(0xf2c0); + static const IconData type = const LucideIconData(0xf2c1); + static const IconData umbrella = const LucideIconData(0xf2c2); + static const IconData underline = const LucideIconData(0xf2c3); + static const IconData undo = const LucideIconData(0xf2c4); + static const IconData unlink = const LucideIconData(0xf2c5); + static const IconData unlink2 = const LucideIconData(0xf2c6); + static const IconData unlock = const LucideIconData(0xf2c7); + static const IconData upload = const LucideIconData(0xf2c8); + static const IconData uploadCloud = const LucideIconData(0xf2c9); + static const IconData user = const LucideIconData(0xf2ca); + static const IconData userCheck = const LucideIconData(0xf2cb); + static const IconData userMinus = const LucideIconData(0xf2cc); + static const IconData userPlus = const LucideIconData(0xf2cd); + static const IconData userX = const LucideIconData(0xf2ce); + static const IconData users = const LucideIconData(0xf2cf); + static const IconData vibrate = const LucideIconData(0xf2d0); + static const IconData video = const LucideIconData(0xf2d1); + static const IconData videoOff = const LucideIconData(0xf2d2); + static const IconData view = const LucideIconData(0xf2d3); + static const IconData voicemail = const LucideIconData(0xf2d4); + static const IconData volume = const LucideIconData(0xf2d5); + static const IconData volume1 = const LucideIconData(0xf2d6); + static const IconData volume2 = const LucideIconData(0xf2d7); + static const IconData volumeX = const LucideIconData(0xf2d8); + static const IconData wallet = const LucideIconData(0xf2d9); + static const IconData watch = const LucideIconData(0xf2da); + static const IconData webcam = const LucideIconData(0xf2db); + static const IconData wifi = const LucideIconData(0xf2dc); + static const IconData wifiOff = const LucideIconData(0xf2dd); + static const IconData wind = const LucideIconData(0xf2de); + static const IconData wrench = const LucideIconData(0xf2df); + static const IconData x = const LucideIconData(0xf2e0); + static const IconData xCircle = const LucideIconData(0xf2e1); + static const IconData xOctagon = const LucideIconData(0xf2e2); + static const IconData xSquare = const LucideIconData(0xf2e3); + static const IconData youtube = const LucideIconData(0xf2e4); + static const IconData zap = const LucideIconData(0xf2e5); + static const IconData zapOff = const LucideIconData(0xf2e6); + static const IconData zoomIn = const LucideIconData(0xf2e7); + static const IconData zoomOut = const LucideIconData(0xf2e8); +} diff --git a/packages/lucide-flutter/lib/src/icon_data.dart b/packages/lucide-flutter/lib/src/icon_data.dart new file mode 100644 index 0000000000..5ddfcb9e76 --- /dev/null +++ b/packages/lucide-flutter/lib/src/icon_data.dart @@ -0,0 +1,10 @@ +import 'package:flutter/widgets.dart'; + +class LucideIconData extends IconData { + const LucideIconData(int codePoint) + : super( + codePoint, + fontFamily: 'Lucide', + fontPackage: 'lucide_icons', + ); +} diff --git a/packages/lucide-flutter/pubspec.yaml b/packages/lucide-flutter/pubspec.yaml new file mode 100644 index 0000000000..1699b1ba72 --- /dev/null +++ b/packages/lucide-flutter/pubspec.yaml @@ -0,0 +1,29 @@ +name: lucide_icons +description: Lucide icon pack for Flutter +version: 0.15.28 +homepage: https://lucide.dev +repository: https://github.com/lucide-icons/lucide + +environment: + sdk: ">=2.12.0 <3.0.0" + flutter: ">=1.17.0" + +dependencies: + flutter: + sdk: flutter + +dev_dependencies: + flutter_test: + sdk: flutter + + html: ^0.15.0 + recase: ^4.0.0 + + lint: ^1.5.3 + + +flutter: + fonts: + - family: Lucide + fonts: + - asset: assets/Lucide.ttf diff --git a/packages/lucide-flutter/tool/generate_fonts.dart b/packages/lucide-flutter/tool/generate_fonts.dart new file mode 100644 index 0000000000..f30d437d75 --- /dev/null +++ b/packages/lucide-flutter/tool/generate_fonts.dart @@ -0,0 +1,49 @@ +import "dart:io"; + +import 'package:html/parser.dart' show parse; +import 'package:recase/recase.dart'; + +void main(List args) { + File fontsPreviewFile = File(args[0]); + + if (!fontsPreviewFile.existsSync()) { + print('lucide preview file not found'); + exit(0); + } + + String content = fontsPreviewFile.readAsStringSync(); + final c = parse(content); + final list = c.getElementsByClassName('glyph'); + + List generatedOutput = [ + "library lucide_icons;\n", + "import \"package:flutter/widgets.dart\";\n", + "import \"src/icon_data.dart\";\n\n", + "// THIS FILE IS AUTOMATICALLY GENERATED!\n\n", + "class LucideIcons {\n" + ]; + + for (final icon in list) { + final name = icon + .getElementsByClassName('class') + .first + .attributes['value']! + .replaceFirst('.icon-', ''); + final val = icon + .getElementsByClassName('point') + .first + .attributes['value']! + .replaceFirst('&#x', '') + .replaceFirst(';', ''); + + generatedOutput.add( + "static const IconData ${ReCase(name).camelCase} = const LucideIconData(0x$val);\n"); + + print('$val $name'); + } + + generatedOutput.add("}\n"); + + File output = File('./lib/lucide_icons.dart'); + output.writeAsStringSync(generatedOutput.join()); +}