From a7f2285e7dc76282a28854081450c2b5469fd307 Mon Sep 17 00:00:00 2001 From: Prateek SU <41370460+prateekmedia@users.noreply.github.com> Date: Thu, 14 Oct 2021 16:07:40 +0530 Subject: [PATCH] =?UTF-8?q?=E2=9C=85=20Add=20tests=20for=20flutter=20packa?= =?UTF-8?q?ge=20and=20Formatted=20files=20(#421)?= MIME-Version: 1.0 Content-Type: text/plain; charset=UTF-8 Content-Transfer-Encoding: 8bit * ✅ Add tests for flutter release package * 👷 Format files * Add long description to fix pubspec score --- .github/workflows/ci.yml | 1 - .github/workflows/close-stale-prs.yml | 10 +- .github/workflows/release.yml | 101 +- packages/lucide-flutter/.gitignore | 1 + packages/lucide-flutter/lib/lucide_icons.dart | 983 +++++++++--------- packages/lucide-flutter/pubspec.lock | 175 ---- packages/lucide-flutter/pubspec.yaml | 2 +- packages/lucide-flutter/test/icon_test.dart | 147 +++ 8 files changed, 704 insertions(+), 716 deletions(-) delete mode 100644 packages/lucide-flutter/pubspec.lock create mode 100644 packages/lucide-flutter/test/icon_test.dart diff --git a/.github/workflows/ci.yml b/.github/workflows/ci.yml index baa3c5a00..dd56edde9 100644 --- a/.github/workflows/ci.yml +++ b/.github/workflows/ci.yml @@ -71,4 +71,3 @@ jobs: tag_name: ${{ steps.new-version.outputs.NEW_VERSION }} name: New icons ${{ steps.new-version.outputs.NEW_VERSION }} body: ${{ steps.change-log.outputs.CHANGE_LOG }} - diff --git a/.github/workflows/close-stale-prs.yml b/.github/workflows/close-stale-prs.yml index 24747ff07..b51e9d6f5 100644 --- a/.github/workflows/close-stale-prs.yml +++ b/.github/workflows/close-stale-prs.yml @@ -1,7 +1,7 @@ -name: 'Close stale issues and PR' +name: Close stale issues and PR on: schedule: - - cron: '45 1 * * *' + - cron: "45 1 * * *" jobs: stale: @@ -10,9 +10,9 @@ jobs: - uses: actions/stale@v3 with: repo-token: ${{ secrets.GITHUB_TOKEN }} - stale-pr-message: 'This PR is stale because it has been open 45 days with no activity. Remove stale label or comment or this will be closed in 5 days.' - close-pr-message: 'This PR was closed because it has been stalled for 5 days with no activity.' - close-pr-label: '🧶 stale' + stale-pr-message: This PR is stale because it has been open 45 days with no activity. Remove stale label or comment or this will be closed in 5 days. + close-pr-message: This PR was closed because it has been stalled for 5 days with no activity. + close-pr-label: 🧶 stale days-before-stale: 30 days-before-close: 5 days-before-pr-close: -1 diff --git a/.github/workflows/release.yml b/.github/workflows/release.yml index 1f6e88fb0..d339d86be 100644 --- a/.github/workflows/release.yml +++ b/.github/workflows/release.yml @@ -3,12 +3,12 @@ name: Release Packages on: push: tags: - - 'v*' + - "v*" workflow_dispatch: inputs: version: - description: 'Version' + description: Version required: true jobs: @@ -35,8 +35,8 @@ jobs: - uses: actions/checkout@v2 - uses: actions/setup-node@v2.4.0 with: - node-version: '14' - cache: 'yarn' + node-version: "14" + cache: yarn - name: Install dependencies run: yarn --prefer-offline @@ -70,8 +70,8 @@ jobs: - uses: actions/checkout@v2 - uses: actions/setup-node@v2.4.0 with: - node-version: '14' - cache: 'yarn' + node-version: "14" + cache: yarn - name: Install dependencies run: yarn --prefer-offline @@ -105,8 +105,8 @@ jobs: - uses: actions/checkout@v2 - uses: actions/setup-node@v2.4.0 with: - node-version: '14' - cache: 'yarn' + node-version: "14" + cache: yarn - name: Install dependencies run: yarn --prefer-offline @@ -140,8 +140,8 @@ jobs: - uses: actions/checkout@v2 - uses: actions/setup-node@v2.4.0 with: - node-version: '14' - cache: 'yarn' + node-version: "14" + cache: yarn - name: Install dependencies run: yarn --prefer-offline @@ -175,8 +175,8 @@ jobs: - uses: actions/checkout@v2 - uses: actions/setup-node@v2.4.0 with: - node-version: '14' - cache: 'yarn' + node-version: "14" + cache: yarn - name: Install dependencies run: yarn --prefer-offline @@ -210,8 +210,8 @@ jobs: - uses: actions/checkout@v2 - uses: actions/setup-node@v2.4.0 with: - node-version: '14' - cache: 'yarn' + node-version: "14" + cache: yarn - name: Install dependencies run: yarn --prefer-offline @@ -245,8 +245,8 @@ jobs: - uses: actions/checkout@v2 - uses: actions/setup-node@v2.4.0 with: - node-version: '14' - cache: 'yarn' + node-version: "14" + cache: yarn - name: Install FontForge run: sudo apt-get install zlib1g-dev fontforge @@ -256,18 +256,18 @@ jobs: - name: Install and move sfnt2woff-zopfli run: | - cd sfnt2woff-zopfli - make - sudo mv sfnt2woff-zopfli /usr/local/bin/sfnt2woff + cd sfnt2woff-zopfli + make + sudo mv sfnt2woff-zopfli /usr/local/bin/sfnt2woff - name: Clone woff2 run: git clone --recursive https://github.com/google/woff2.git - name: Install woff2 run: | - cd woff2 - sudo make clean all - sudo mv woff2_compress /usr/local/bin/ && sudo mv woff2_decompress /usr/local/bin/ + cd woff2 + sudo make clean all + sudo mv woff2_compress /usr/local/bin/ && sudo mv woff2_decompress /usr/local/bin/ - name: Install Font Custom dependency run: sudo gem install fontcustom @@ -277,23 +277,23 @@ jobs: - name: Build Icon Font run: | - mkdir build - list=(-200 -300 "" -500 -600) - command='' - for name in "${list[@]}" - do - subcommand="(yarn build:outline-icons --outputDir=converted_icons${name} && fontcustom compile "./converted_icons${name}" -h -n "lucide${name}" -o ./build -F)" - if [ -z "$command" ] - then - command="$subcommand"; - else - command="$command & $subcommand"; - fi - done + mkdir build + list=(-200 -300 "" -500 -600) + command='' + for name in "${list[@]}" + do + subcommand="(yarn build:outline-icons --outputDir=converted_icons${name} && fontcustom compile "./converted_icons${name}" -h -n "lucide${name}" -o ./build -F)" + if [ -z "$command" ] + then + command="$subcommand"; + else + command="$command & $subcommand"; + fi + done - eval $command + eval $command - - name: 'Upload to Artifacts' + - name: "Upload to Artifacts" uses: actions/upload-artifact@v1 with: name: lucide-font @@ -304,13 +304,13 @@ jobs: runs-on: ubuntu-latest needs: [pre-build, lucide-font] container: - image: cirrusci/flutter:latest + image: cirrusci/flutter:latest steps: - uses: actions/checkout@v2 - uses: actions/download-artifact@v2 - uses: actions/cache@v2 with: - path: '~/.pub-cache' + path: ~/.pub-cache key: ${{ runner.os }}-pub-${{ hashFiles('~/.pub-cache') }} restore-keys: | ${{ runner.os }}-pub- @@ -336,16 +336,21 @@ jobs: - name: List lucide-font folder run: ls lucide-font - - name: Move assets from lucide-font directory + - name: Copy assets from lucide-font directory run: | mkdir packages/lucide-flutter/assets cp lucide-font/lucide.ttf packages/lucide-flutter/assets/lucide.ttf cp lucide-font/lucide-preview.html packages/lucide-flutter/assets/lucide-preview.html - name: Generate exports file - run: dart tool/generate_fonts.dart assets/lucide-preview.html + run: | + dart tool/generate_fonts.dart assets/lucide-preview.html + flutter format . working-directory: packages/lucide-flutter + - name: Test + run: flutter test + - name: Update yaml run: sed -E 's/(version:)[^\n]*/\1 ${{ needs.pre-build.outputs.VERSION }}/;' pubspec.yaml > pubspec && mv pubspec pubspec.yaml working-directory: packages/lucide-flutter @@ -360,11 +365,21 @@ jobs: name: lucide-flutter-pubspec-yaml path: packages/lucide-flutter/pubspec.yaml - post-release: if: github.repository == 'lucide-icons/lucide' runs-on: ubuntu-latest - needs: [pre-build, lucide, lucide-react, lucide-vue, lucide-vue-next, lucide-angular, lucide-preact, lucide-flutter, lucide-font] + needs: + [ + pre-build, + lucide, + lucide-react, + lucide-vue, + lucide-vue-next, + lucide-angular, + lucide-preact, + lucide-flutter, + lucide-font, + ] steps: - uses: actions/checkout@v2 diff --git a/packages/lucide-flutter/.gitignore b/packages/lucide-flutter/.gitignore index 911326b3f..8d8d10800 100644 --- a/packages/lucide-flutter/.gitignore +++ b/packages/lucide-flutter/.gitignore @@ -30,6 +30,7 @@ .pub/ build/ assets +pubspec.lock # Android related **/android/**/gradle-wrapper.jar diff --git a/packages/lucide-flutter/lib/lucide_icons.dart b/packages/lucide-flutter/lib/lucide_icons.dart index a19b62224..f2f9d5fed 100644 --- a/packages/lucide-flutter/lib/lucide_icons.dart +++ b/packages/lucide-flutter/lib/lucide_icons.dart @@ -1,499 +1,500 @@ 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 graduationCap = const LucideIconData(0xf1d8); -static const IconData grid = const LucideIconData(0xf1d9); -static const IconData gripHorizontal = const LucideIconData(0xf1da); -static const IconData gripVertical = const LucideIconData(0xf1db); -static const IconData hammer = const LucideIconData(0xf1dc); -static const IconData hand = const LucideIconData(0xf1dd); -static const IconData handMetal = const LucideIconData(0xf1de); -static const IconData hardDrive = const LucideIconData(0xf1df); -static const IconData hardHat = const LucideIconData(0xf1e0); -static const IconData hash = const LucideIconData(0xf1e1); -static const IconData haze = const LucideIconData(0xf1e2); -static const IconData headphones = const LucideIconData(0xf1e3); -static const IconData heart = const LucideIconData(0xf1e4); -static const IconData helpCircle = const LucideIconData(0xf1e5); -static const IconData hexagon = const LucideIconData(0xf1e6); -static const IconData highlighter = const LucideIconData(0xf1e7); -static const IconData history = const LucideIconData(0xf1e8); -static const IconData home = const LucideIconData(0xf1e9); -static const IconData image = const LucideIconData(0xf1ea); -static const IconData imageMinus = const LucideIconData(0xf1eb); -static const IconData imageOff = const LucideIconData(0xf1ec); -static const IconData imagePlus = const LucideIconData(0xf1ed); -static const IconData import = const LucideIconData(0xf1ee); -static const IconData inbox = const LucideIconData(0xf1ef); -static const IconData indent = const LucideIconData(0xf1f0); -static const IconData indianRupee = const LucideIconData(0xf1f1); -static const IconData infinity = const LucideIconData(0xf1f2); -static const IconData info = const LucideIconData(0xf1f3); -static const IconData inspect = const LucideIconData(0xf1f4); -static const IconData instagram = const LucideIconData(0xf1f5); -static const IconData italic = const LucideIconData(0xf1f6); -static const IconData jerseyPound = const LucideIconData(0xf1f7); -static const IconData key = const LucideIconData(0xf1f8); -static const IconData languages = const LucideIconData(0xf1f9); -static const IconData laptop = const LucideIconData(0xf1fa); -static const IconData laptop2 = const LucideIconData(0xf1fb); -static const IconData lasso = const LucideIconData(0xf1fc); -static const IconData lassoSelect = const LucideIconData(0xf1fd); -static const IconData layers = const LucideIconData(0xf1fe); -static const IconData layout = const LucideIconData(0xf1ff); -static const IconData layoutDashboard = const LucideIconData(0xf200); -static const IconData layoutGrid = const LucideIconData(0xf201); -static const IconData layoutList = const LucideIconData(0xf202); -static const IconData layoutTemplate = const LucideIconData(0xf203); -static const IconData library = const LucideIconData(0xf204); -static const IconData lifeBuoy = const LucideIconData(0xf205); -static const IconData lightbulb = const LucideIconData(0xf206); -static const IconData lightbulbOff = const LucideIconData(0xf207); -static const IconData link = const LucideIconData(0xf208); -static const IconData link2 = const LucideIconData(0xf209); -static const IconData link2Off = const LucideIconData(0xf20a); -static const IconData linkedin = const LucideIconData(0xf20b); -static const IconData list = const LucideIconData(0xf20c); -static const IconData listChecks = const LucideIconData(0xf20d); -static const IconData listOrdered = const LucideIconData(0xf20e); -static const IconData loader = const LucideIconData(0xf20f); -static const IconData loader2 = const LucideIconData(0xf210); -static const IconData locate = const LucideIconData(0xf211); -static const IconData locateFixed = const LucideIconData(0xf212); -static const IconData lock = const LucideIconData(0xf213); -static const IconData logIn = const LucideIconData(0xf214); -static const IconData logOut = const LucideIconData(0xf215); -static const IconData mail = const LucideIconData(0xf216); -static const IconData map = const LucideIconData(0xf217); -static const IconData mapPin = const LucideIconData(0xf218); -static const IconData maximize = const LucideIconData(0xf219); -static const IconData maximize2 = const LucideIconData(0xf21a); -static const IconData meh = const LucideIconData(0xf21b); -static const IconData menu = const LucideIconData(0xf21c); -static const IconData messageCircle = const LucideIconData(0xf21d); -static const IconData messageSquare = const LucideIconData(0xf21e); -static const IconData mic = const LucideIconData(0xf21f); -static const IconData micOff = const LucideIconData(0xf220); -static const IconData minimize = const LucideIconData(0xf221); -static const IconData minimize2 = const LucideIconData(0xf222); -static const IconData minus = const LucideIconData(0xf223); -static const IconData minusCircle = const LucideIconData(0xf224); -static const IconData minusSquare = const LucideIconData(0xf225); -static const IconData monitor = const LucideIconData(0xf226); -static const IconData monitorOff = const LucideIconData(0xf227); -static const IconData monitorSpeaker = const LucideIconData(0xf228); -static const IconData moon = const LucideIconData(0xf229); -static const IconData moreHorizontal = const LucideIconData(0xf22a); -static const IconData moreVertical = const LucideIconData(0xf22b); -static const IconData mountain = const LucideIconData(0xf22c); -static const IconData mountainSnow = const LucideIconData(0xf22d); -static const IconData mousePointer = const LucideIconData(0xf22e); -static const IconData mousePointer2 = const LucideIconData(0xf22f); -static const IconData mousePointerClick = const LucideIconData(0xf230); -static const IconData move = const LucideIconData(0xf231); -static const IconData moveDiagonal = const LucideIconData(0xf232); -static const IconData moveDiagonal2 = const LucideIconData(0xf233); -static const IconData moveHorizontal = const LucideIconData(0xf234); -static const IconData moveVertical = const LucideIconData(0xf235); -static const IconData music = const LucideIconData(0xf236); -static const IconData navigation = const LucideIconData(0xf237); -static const IconData navigation2 = const LucideIconData(0xf238); -static const IconData network = const LucideIconData(0xf239); -static const IconData octagon = const LucideIconData(0xf23a); -static const IconData option = const LucideIconData(0xf23b); -static const IconData outdent = const LucideIconData(0xf23c); -static const IconData package = const LucideIconData(0xf23d); -static const IconData palette = const LucideIconData(0xf23e); -static const IconData paperclip = const LucideIconData(0xf23f); -static const IconData pause = const LucideIconData(0xf240); -static const IconData pauseCircle = const LucideIconData(0xf241); -static const IconData pauseOctagon = const LucideIconData(0xf242); -static const IconData penTool = const LucideIconData(0xf243); -static const IconData pencil = const LucideIconData(0xf244); -static const IconData percent = const LucideIconData(0xf245); -static const IconData personStanding = const LucideIconData(0xf246); -static const IconData phone = const LucideIconData(0xf247); -static const IconData phoneCall = const LucideIconData(0xf248); -static const IconData phoneForwarded = const LucideIconData(0xf249); -static const IconData phoneIncoming = const LucideIconData(0xf24a); -static const IconData phoneMissed = const LucideIconData(0xf24b); -static const IconData phoneOff = const LucideIconData(0xf24c); -static const IconData phoneOutgoing = const LucideIconData(0xf24d); -static const IconData pieChart = const LucideIconData(0xf24e); -static const IconData pipette = const LucideIconData(0xf24f); -static const IconData plane = const LucideIconData(0xf250); -static const IconData play = const LucideIconData(0xf251); -static const IconData playCircle = const LucideIconData(0xf252); -static const IconData plugZap = const LucideIconData(0xf253); -static const IconData plus = const LucideIconData(0xf254); -static const IconData plusCircle = const LucideIconData(0xf255); -static const IconData plusSquare = const LucideIconData(0xf256); -static const IconData pocket = const LucideIconData(0xf257); -static const IconData podcast = const LucideIconData(0xf258); -static const IconData pointer = const LucideIconData(0xf259); -static const IconData poundSterling = const LucideIconData(0xf25a); -static const IconData power = const LucideIconData(0xf25b); -static const IconData powerOff = const LucideIconData(0xf25c); -static const IconData printer = const LucideIconData(0xf25d); -static const IconData qrCode = const LucideIconData(0xf25e); -static const IconData radio = const LucideIconData(0xf25f); -static const IconData radioReceiver = const LucideIconData(0xf260); -static const IconData redo = const LucideIconData(0xf261); -static const IconData refreshCcw = const LucideIconData(0xf262); -static const IconData refreshCw = const LucideIconData(0xf263); -static const IconData regex = const LucideIconData(0xf264); -static const IconData repeat = const LucideIconData(0xf265); -static const IconData repeat1 = const LucideIconData(0xf266); -static const IconData reply = const LucideIconData(0xf267); -static const IconData replyAll = const LucideIconData(0xf268); -static const IconData rewind = const LucideIconData(0xf269); -static const IconData rockingChair = const LucideIconData(0xf26a); -static const IconData rotateCcw = const LucideIconData(0xf26b); -static const IconData rotateCw = const LucideIconData(0xf26c); -static const IconData rss = const LucideIconData(0xf26d); -static const IconData ruler = const LucideIconData(0xf26e); -static const IconData russianRuble = const LucideIconData(0xf26f); -static const IconData save = const LucideIconData(0xf270); -static const IconData scale = const LucideIconData(0xf271); -static const IconData scissors = const LucideIconData(0xf272); -static const IconData screenShare = const LucideIconData(0xf273); -static const IconData screenShareOff = const LucideIconData(0xf274); -static const IconData search = const LucideIconData(0xf275); -static const IconData send = const LucideIconData(0xf276); -static const IconData separatorHorizontal = const LucideIconData(0xf277); -static const IconData separatorVertical = const LucideIconData(0xf278); -static const IconData server = const LucideIconData(0xf279); -static const IconData serverCrash = const LucideIconData(0xf27a); -static const IconData serverOff = const LucideIconData(0xf27b); -static const IconData settings = const LucideIconData(0xf27c); -static const IconData share = const LucideIconData(0xf27d); -static const IconData share2 = const LucideIconData(0xf27e); -static const IconData sheet = const LucideIconData(0xf27f); -static const IconData shield = const LucideIconData(0xf280); -static const IconData shieldAlert = const LucideIconData(0xf281); -static const IconData shieldCheck = const LucideIconData(0xf282); -static const IconData shieldClose = const LucideIconData(0xf283); -static const IconData shieldOff = const LucideIconData(0xf284); -static const IconData shirt = const LucideIconData(0xf285); -static const IconData shoppingBag = const LucideIconData(0xf286); -static const IconData shoppingCart = const LucideIconData(0xf287); -static const IconData shovel = const LucideIconData(0xf288); -static const IconData shrink = const LucideIconData(0xf289); -static const IconData shuffle = const LucideIconData(0xf28a); -static const IconData sidebar = const LucideIconData(0xf28b); -static const IconData sidebarClose = const LucideIconData(0xf28c); -static const IconData sidebarOpen = const LucideIconData(0xf28d); -static const IconData sigma = const LucideIconData(0xf28e); -static const IconData skipBack = const LucideIconData(0xf28f); -static const IconData skipForward = const LucideIconData(0xf290); -static const IconData skull = const LucideIconData(0xf291); -static const IconData slack = const LucideIconData(0xf292); -static const IconData slash = const LucideIconData(0xf293); -static const IconData sliders = const LucideIconData(0xf294); -static const IconData smartphone = const LucideIconData(0xf295); -static const IconData smartphoneCharging = const LucideIconData(0xf296); -static const IconData smile = const LucideIconData(0xf297); -static const IconData snowflake = const LucideIconData(0xf298); -static const IconData sortAsc = const LucideIconData(0xf299); -static const IconData sortDesc = const LucideIconData(0xf29a); -static const IconData speaker = const LucideIconData(0xf29b); -static const IconData sprout = const LucideIconData(0xf29c); -static const IconData square = const LucideIconData(0xf29d); -static const IconData star = const LucideIconData(0xf29e); -static const IconData starHalf = const LucideIconData(0xf29f); -static const IconData stopCircle = const LucideIconData(0xf2a0); -static const IconData strikethrough = const LucideIconData(0xf2a1); -static const IconData sun = const LucideIconData(0xf2a2); -static const IconData sunrise = const LucideIconData(0xf2a3); -static const IconData sunset = const LucideIconData(0xf2a4); -static const IconData swissFranc = const LucideIconData(0xf2a5); -static const IconData switchCamera = const LucideIconData(0xf2a6); -static const IconData table = const LucideIconData(0xf2a7); -static const IconData tablet = const LucideIconData(0xf2a8); -static const IconData tag = const LucideIconData(0xf2a9); -static const IconData target = const LucideIconData(0xf2aa); -static const IconData tent = const LucideIconData(0xf2ab); -static const IconData terminal = const LucideIconData(0xf2ac); -static const IconData terminalSquare = const LucideIconData(0xf2ad); -static const IconData thermometer = const LucideIconData(0xf2ae); -static const IconData thermometerSnowflake = const LucideIconData(0xf2af); -static const IconData thermometerSun = const LucideIconData(0xf2b0); -static const IconData thumbsDown = const LucideIconData(0xf2b1); -static const IconData thumbsUp = const LucideIconData(0xf2b2); -static const IconData ticket = const LucideIconData(0xf2b3); -static const IconData timer = const LucideIconData(0xf2b4); -static const IconData toggleLeft = const LucideIconData(0xf2b5); -static const IconData toggleRight = const LucideIconData(0xf2b6); -static const IconData tornado = const LucideIconData(0xf2b7); -static const IconData trash = const LucideIconData(0xf2b8); -static const IconData trash2 = const LucideIconData(0xf2b9); -static const IconData trello = const LucideIconData(0xf2ba); -static const IconData trendingDown = const LucideIconData(0xf2bb); -static const IconData trendingUp = const LucideIconData(0xf2bc); -static const IconData triangle = const LucideIconData(0xf2bd); -static const IconData truck = const LucideIconData(0xf2be); -static const IconData tv = const LucideIconData(0xf2bf); -static const IconData tv2 = const LucideIconData(0xf2c0); -static const IconData twitch = const LucideIconData(0xf2c1); -static const IconData twitter = const LucideIconData(0xf2c2); -static const IconData type = const LucideIconData(0xf2c3); -static const IconData umbrella = const LucideIconData(0xf2c4); -static const IconData underline = const LucideIconData(0xf2c5); -static const IconData undo = const LucideIconData(0xf2c6); -static const IconData unlink = const LucideIconData(0xf2c7); -static const IconData unlink2 = const LucideIconData(0xf2c8); -static const IconData unlock = const LucideIconData(0xf2c9); -static const IconData upload = const LucideIconData(0xf2ca); -static const IconData uploadCloud = const LucideIconData(0xf2cb); -static const IconData user = const LucideIconData(0xf2cc); -static const IconData userCheck = const LucideIconData(0xf2cd); -static const IconData userMinus = const LucideIconData(0xf2ce); -static const IconData userPlus = const LucideIconData(0xf2cf); -static const IconData userX = const LucideIconData(0xf2d0); -static const IconData users = const LucideIconData(0xf2d1); -static const IconData vibrate = const LucideIconData(0xf2d2); -static const IconData video = const LucideIconData(0xf2d3); -static const IconData videoOff = const LucideIconData(0xf2d4); -static const IconData view = const LucideIconData(0xf2d5); -static const IconData voicemail = const LucideIconData(0xf2d6); -static const IconData volume = const LucideIconData(0xf2d7); -static const IconData volume1 = const LucideIconData(0xf2d8); -static const IconData volume2 = const LucideIconData(0xf2d9); -static const IconData volumeX = const LucideIconData(0xf2da); -static const IconData wallet = const LucideIconData(0xf2db); -static const IconData watch = const LucideIconData(0xf2dc); -static const IconData webcam = const LucideIconData(0xf2dd); -static const IconData wifi = const LucideIconData(0xf2de); -static const IconData wifiOff = const LucideIconData(0xf2df); -static const IconData wind = const LucideIconData(0xf2e0); -static const IconData wrench = const LucideIconData(0xf2e1); -static const IconData x = const LucideIconData(0xf2e2); -static const IconData xCircle = const LucideIconData(0xf2e3); -static const IconData xOctagon = const LucideIconData(0xf2e4); -static const IconData xSquare = const LucideIconData(0xf2e5); -static const IconData youtube = const LucideIconData(0xf2e6); -static const IconData zap = const LucideIconData(0xf2e7); -static const IconData zapOff = const LucideIconData(0xf2e8); -static const IconData zoomIn = const LucideIconData(0xf2e9); -static const IconData zoomOut = const LucideIconData(0xf2ea); + 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 graduationCap = const LucideIconData(0xf1d8); + static const IconData grid = const LucideIconData(0xf1d9); + static const IconData gripHorizontal = const LucideIconData(0xf1da); + static const IconData gripVertical = const LucideIconData(0xf1db); + static const IconData hammer = const LucideIconData(0xf1dc); + static const IconData hand = const LucideIconData(0xf1dd); + static const IconData handMetal = const LucideIconData(0xf1de); + static const IconData hardDrive = const LucideIconData(0xf1df); + static const IconData hardHat = const LucideIconData(0xf1e0); + static const IconData hash = const LucideIconData(0xf1e1); + static const IconData haze = const LucideIconData(0xf1e2); + static const IconData headphones = const LucideIconData(0xf1e3); + static const IconData heart = const LucideIconData(0xf1e4); + static const IconData helpCircle = const LucideIconData(0xf1e5); + static const IconData hexagon = const LucideIconData(0xf1e6); + static const IconData highlighter = const LucideIconData(0xf1e7); + static const IconData history = const LucideIconData(0xf1e8); + static const IconData home = const LucideIconData(0xf1e9); + static const IconData image = const LucideIconData(0xf1ea); + static const IconData imageMinus = const LucideIconData(0xf1eb); + static const IconData imageOff = const LucideIconData(0xf1ec); + static const IconData imagePlus = const LucideIconData(0xf1ed); + static const IconData import = const LucideIconData(0xf1ee); + static const IconData inbox = const LucideIconData(0xf1ef); + static const IconData indent = const LucideIconData(0xf1f0); + static const IconData indianRupee = const LucideIconData(0xf1f1); + static const IconData infinity = const LucideIconData(0xf1f2); + static const IconData info = const LucideIconData(0xf1f3); + static const IconData inspect = const LucideIconData(0xf1f4); + static const IconData instagram = const LucideIconData(0xf1f5); + static const IconData italic = const LucideIconData(0xf1f6); + static const IconData jerseyPound = const LucideIconData(0xf1f7); + static const IconData key = const LucideIconData(0xf1f8); + static const IconData languages = const LucideIconData(0xf1f9); + static const IconData laptop = const LucideIconData(0xf1fa); + static const IconData laptop2 = const LucideIconData(0xf1fb); + static const IconData lasso = const LucideIconData(0xf1fc); + static const IconData lassoSelect = const LucideIconData(0xf1fd); + static const IconData layers = const LucideIconData(0xf1fe); + static const IconData layout = const LucideIconData(0xf1ff); + static const IconData layoutDashboard = const LucideIconData(0xf200); + static const IconData layoutGrid = const LucideIconData(0xf201); + static const IconData layoutList = const LucideIconData(0xf202); + static const IconData layoutTemplate = const LucideIconData(0xf203); + static const IconData library = const LucideIconData(0xf204); + static const IconData lifeBuoy = const LucideIconData(0xf205); + static const IconData lightbulb = const LucideIconData(0xf206); + static const IconData lightbulbOff = const LucideIconData(0xf207); + static const IconData link = const LucideIconData(0xf208); + static const IconData link2 = const LucideIconData(0xf209); + static const IconData link2Off = const LucideIconData(0xf20a); + static const IconData linkedin = const LucideIconData(0xf20b); + static const IconData list = const LucideIconData(0xf20c); + static const IconData listChecks = const LucideIconData(0xf20d); + static const IconData listOrdered = const LucideIconData(0xf20e); + static const IconData loader = const LucideIconData(0xf20f); + static const IconData loader2 = const LucideIconData(0xf210); + static const IconData locate = const LucideIconData(0xf211); + static const IconData locateFixed = const LucideIconData(0xf212); + static const IconData lock = const LucideIconData(0xf213); + static const IconData logIn = const LucideIconData(0xf214); + static const IconData logOut = const LucideIconData(0xf215); + static const IconData mail = const LucideIconData(0xf216); + static const IconData map = const LucideIconData(0xf217); + static const IconData mapPin = const LucideIconData(0xf218); + static const IconData maximize = const LucideIconData(0xf219); + static const IconData maximize2 = const LucideIconData(0xf21a); + static const IconData meh = const LucideIconData(0xf21b); + static const IconData menu = const LucideIconData(0xf21c); + static const IconData messageCircle = const LucideIconData(0xf21d); + static const IconData messageSquare = const LucideIconData(0xf21e); + static const IconData mic = const LucideIconData(0xf21f); + static const IconData micOff = const LucideIconData(0xf220); + static const IconData minimize = const LucideIconData(0xf221); + static const IconData minimize2 = const LucideIconData(0xf222); + static const IconData minus = const LucideIconData(0xf223); + static const IconData minusCircle = const LucideIconData(0xf224); + static const IconData minusSquare = const LucideIconData(0xf225); + static const IconData monitor = const LucideIconData(0xf226); + static const IconData monitorOff = const LucideIconData(0xf227); + static const IconData monitorSpeaker = const LucideIconData(0xf228); + static const IconData moon = const LucideIconData(0xf229); + static const IconData moreHorizontal = const LucideIconData(0xf22a); + static const IconData moreVertical = const LucideIconData(0xf22b); + static const IconData mountain = const LucideIconData(0xf22c); + static const IconData mountainSnow = const LucideIconData(0xf22d); + static const IconData mousePointer = const LucideIconData(0xf22e); + static const IconData mousePointer2 = const LucideIconData(0xf22f); + static const IconData mousePointerClick = const LucideIconData(0xf230); + static const IconData move = const LucideIconData(0xf231); + static const IconData moveDiagonal = const LucideIconData(0xf232); + static const IconData moveDiagonal2 = const LucideIconData(0xf233); + static const IconData moveHorizontal = const LucideIconData(0xf234); + static const IconData moveVertical = const LucideIconData(0xf235); + static const IconData music = const LucideIconData(0xf236); + static const IconData navigation = const LucideIconData(0xf237); + static const IconData navigation2 = const LucideIconData(0xf238); + static const IconData network = const LucideIconData(0xf239); + static const IconData octagon = const LucideIconData(0xf23a); + static const IconData option = const LucideIconData(0xf23b); + static const IconData outdent = const LucideIconData(0xf23c); + static const IconData package = const LucideIconData(0xf23d); + static const IconData palette = const LucideIconData(0xf23e); + static const IconData paperclip = const LucideIconData(0xf23f); + static const IconData pause = const LucideIconData(0xf240); + static const IconData pauseCircle = const LucideIconData(0xf241); + static const IconData pauseOctagon = const LucideIconData(0xf242); + static const IconData penTool = const LucideIconData(0xf243); + static const IconData pencil = const LucideIconData(0xf244); + static const IconData percent = const LucideIconData(0xf245); + static const IconData personStanding = const LucideIconData(0xf246); + static const IconData phone = const LucideIconData(0xf247); + static const IconData phoneCall = const LucideIconData(0xf248); + static const IconData phoneForwarded = const LucideIconData(0xf249); + static const IconData phoneIncoming = const LucideIconData(0xf24a); + static const IconData phoneMissed = const LucideIconData(0xf24b); + static const IconData phoneOff = const LucideIconData(0xf24c); + static const IconData phoneOutgoing = const LucideIconData(0xf24d); + static const IconData pieChart = const LucideIconData(0xf24e); + static const IconData pipette = const LucideIconData(0xf24f); + static const IconData plane = const LucideIconData(0xf250); + static const IconData play = const LucideIconData(0xf251); + static const IconData playCircle = const LucideIconData(0xf252); + static const IconData plugZap = const LucideIconData(0xf253); + static const IconData plus = const LucideIconData(0xf254); + static const IconData plusCircle = const LucideIconData(0xf255); + static const IconData plusSquare = const LucideIconData(0xf256); + static const IconData pocket = const LucideIconData(0xf257); + static const IconData podcast = const LucideIconData(0xf258); + static const IconData pointer = const LucideIconData(0xf259); + static const IconData poundSterling = const LucideIconData(0xf25a); + static const IconData power = const LucideIconData(0xf25b); + static const IconData powerOff = const LucideIconData(0xf25c); + static const IconData printer = const LucideIconData(0xf25d); + static const IconData qrCode = const LucideIconData(0xf25e); + static const IconData radio = const LucideIconData(0xf25f); + static const IconData radioReceiver = const LucideIconData(0xf260); + static const IconData redo = const LucideIconData(0xf261); + static const IconData refreshCcw = const LucideIconData(0xf262); + static const IconData refreshCw = const LucideIconData(0xf263); + static const IconData regex = const LucideIconData(0xf264); + static const IconData repeat = const LucideIconData(0xf265); + static const IconData repeat1 = const LucideIconData(0xf266); + static const IconData reply = const LucideIconData(0xf267); + static const IconData replyAll = const LucideIconData(0xf268); + static const IconData rewind = const LucideIconData(0xf269); + static const IconData rockingChair = const LucideIconData(0xf26a); + static const IconData rotateCcw = const LucideIconData(0xf26b); + static const IconData rotateCw = const LucideIconData(0xf26c); + static const IconData rss = const LucideIconData(0xf26d); + static const IconData ruler = const LucideIconData(0xf26e); + static const IconData russianRuble = const LucideIconData(0xf26f); + static const IconData save = const LucideIconData(0xf270); + static const IconData scale = const LucideIconData(0xf271); + static const IconData scissors = const LucideIconData(0xf272); + static const IconData screenShare = const LucideIconData(0xf273); + static const IconData screenShareOff = const LucideIconData(0xf274); + static const IconData search = const LucideIconData(0xf275); + static const IconData send = const LucideIconData(0xf276); + static const IconData separatorHorizontal = const LucideIconData(0xf277); + static const IconData separatorVertical = const LucideIconData(0xf278); + static const IconData server = const LucideIconData(0xf279); + static const IconData serverCrash = const LucideIconData(0xf27a); + static const IconData serverOff = const LucideIconData(0xf27b); + static const IconData settings = const LucideIconData(0xf27c); + static const IconData share = const LucideIconData(0xf27d); + static const IconData share2 = const LucideIconData(0xf27e); + static const IconData sheet = const LucideIconData(0xf27f); + static const IconData shield = const LucideIconData(0xf280); + static const IconData shieldAlert = const LucideIconData(0xf281); + static const IconData shieldCheck = const LucideIconData(0xf282); + static const IconData shieldClose = const LucideIconData(0xf283); + static const IconData shieldOff = const LucideIconData(0xf284); + static const IconData shirt = const LucideIconData(0xf285); + static const IconData shoppingBag = const LucideIconData(0xf286); + static const IconData shoppingCart = const LucideIconData(0xf287); + static const IconData shovel = const LucideIconData(0xf288); + static const IconData shrink = const LucideIconData(0xf289); + static const IconData shuffle = const LucideIconData(0xf28a); + static const IconData sidebar = const LucideIconData(0xf28b); + static const IconData sidebarClose = const LucideIconData(0xf28c); + static const IconData sidebarOpen = const LucideIconData(0xf28d); + static const IconData sigma = const LucideIconData(0xf28e); + static const IconData skipBack = const LucideIconData(0xf28f); + static const IconData skipForward = const LucideIconData(0xf290); + static const IconData skull = const LucideIconData(0xf291); + static const IconData slack = const LucideIconData(0xf292); + static const IconData slash = const LucideIconData(0xf293); + static const IconData sliders = const LucideIconData(0xf294); + static const IconData smartphone = const LucideIconData(0xf295); + static const IconData smartphoneCharging = const LucideIconData(0xf296); + static const IconData smile = const LucideIconData(0xf297); + static const IconData snowflake = const LucideIconData(0xf298); + static const IconData sortAsc = const LucideIconData(0xf299); + static const IconData sortDesc = const LucideIconData(0xf29a); + static const IconData speaker = const LucideIconData(0xf29b); + static const IconData sprout = const LucideIconData(0xf29c); + static const IconData square = const LucideIconData(0xf29d); + static const IconData star = const LucideIconData(0xf29e); + static const IconData starHalf = const LucideIconData(0xf29f); + static const IconData stopCircle = const LucideIconData(0xf2a0); + static const IconData strikethrough = const LucideIconData(0xf2a1); + static const IconData sun = const LucideIconData(0xf2a2); + static const IconData sunrise = const LucideIconData(0xf2a3); + static const IconData sunset = const LucideIconData(0xf2a4); + static const IconData swissFranc = const LucideIconData(0xf2a5); + static const IconData switchCamera = const LucideIconData(0xf2a6); + static const IconData table = const LucideIconData(0xf2a7); + static const IconData tablet = const LucideIconData(0xf2a8); + static const IconData tag = const LucideIconData(0xf2a9); + static const IconData target = const LucideIconData(0xf2aa); + static const IconData tent = const LucideIconData(0xf2ab); + static const IconData terminal = const LucideIconData(0xf2ac); + static const IconData terminalSquare = const LucideIconData(0xf2ad); + static const IconData thermometer = const LucideIconData(0xf2ae); + static const IconData thermometerSnowflake = const LucideIconData(0xf2af); + static const IconData thermometerSun = const LucideIconData(0xf2b0); + static const IconData thumbsDown = const LucideIconData(0xf2b1); + static const IconData thumbsUp = const LucideIconData(0xf2b2); + static const IconData ticket = const LucideIconData(0xf2b3); + static const IconData timer = const LucideIconData(0xf2b4); + static const IconData toggleLeft = const LucideIconData(0xf2b5); + static const IconData toggleRight = const LucideIconData(0xf2b6); + static const IconData tornado = const LucideIconData(0xf2b7); + static const IconData trash = const LucideIconData(0xf2b8); + static const IconData trash2 = const LucideIconData(0xf2b9); + static const IconData trello = const LucideIconData(0xf2ba); + static const IconData trendingDown = const LucideIconData(0xf2bb); + static const IconData trendingUp = const LucideIconData(0xf2bc); + static const IconData triangle = const LucideIconData(0xf2bd); + static const IconData truck = const LucideIconData(0xf2be); + static const IconData tv = const LucideIconData(0xf2bf); + static const IconData tv2 = const LucideIconData(0xf2c0); + static const IconData twitch = const LucideIconData(0xf2c1); + static const IconData twitter = const LucideIconData(0xf2c2); + static const IconData type = const LucideIconData(0xf2c3); + static const IconData umbrella = const LucideIconData(0xf2c4); + static const IconData underline = const LucideIconData(0xf2c5); + static const IconData undo = const LucideIconData(0xf2c6); + static const IconData unlink = const LucideIconData(0xf2c7); + static const IconData unlink2 = const LucideIconData(0xf2c8); + static const IconData unlock = const LucideIconData(0xf2c9); + static const IconData upload = const LucideIconData(0xf2ca); + static const IconData uploadCloud = const LucideIconData(0xf2cb); + static const IconData user = const LucideIconData(0xf2cc); + static const IconData userCheck = const LucideIconData(0xf2cd); + static const IconData userMinus = const LucideIconData(0xf2ce); + static const IconData userPlus = const LucideIconData(0xf2cf); + static const IconData userX = const LucideIconData(0xf2d0); + static const IconData users = const LucideIconData(0xf2d1); + static const IconData vibrate = const LucideIconData(0xf2d2); + static const IconData video = const LucideIconData(0xf2d3); + static const IconData videoOff = const LucideIconData(0xf2d4); + static const IconData view = const LucideIconData(0xf2d5); + static const IconData voicemail = const LucideIconData(0xf2d6); + static const IconData volume = const LucideIconData(0xf2d7); + static const IconData volume1 = const LucideIconData(0xf2d8); + static const IconData volume2 = const LucideIconData(0xf2d9); + static const IconData volumeX = const LucideIconData(0xf2da); + static const IconData wallet = const LucideIconData(0xf2db); + static const IconData watch = const LucideIconData(0xf2dc); + static const IconData webcam = const LucideIconData(0xf2dd); + static const IconData wifi = const LucideIconData(0xf2de); + static const IconData wifiOff = const LucideIconData(0xf2df); + static const IconData wind = const LucideIconData(0xf2e0); + static const IconData wrench = const LucideIconData(0xf2e1); + static const IconData x = const LucideIconData(0xf2e2); + static const IconData xCircle = const LucideIconData(0xf2e3); + static const IconData xOctagon = const LucideIconData(0xf2e4); + static const IconData xSquare = const LucideIconData(0xf2e5); + static const IconData youtube = const LucideIconData(0xf2e6); + static const IconData zap = const LucideIconData(0xf2e7); + static const IconData zapOff = const LucideIconData(0xf2e8); + static const IconData zoomIn = const LucideIconData(0xf2e9); + static const IconData zoomOut = const LucideIconData(0xf2ea); } diff --git a/packages/lucide-flutter/pubspec.lock b/packages/lucide-flutter/pubspec.lock deleted file mode 100644 index 3c79d7435..000000000 --- a/packages/lucide-flutter/pubspec.lock +++ /dev/null @@ -1,175 +0,0 @@ -# Generated by pub -# See https://dart.dev/tools/pub/glossary#lockfile -packages: - async: - dependency: transitive - description: - name: async - url: "https://pub.dartlang.org" - source: hosted - version: "2.6.1" - boolean_selector: - dependency: transitive - description: - name: boolean_selector - url: "https://pub.dartlang.org" - source: hosted - version: "2.1.0" - characters: - dependency: transitive - description: - name: characters - url: "https://pub.dartlang.org" - source: hosted - version: "1.1.0" - charcode: - dependency: transitive - description: - name: charcode - url: "https://pub.dartlang.org" - source: hosted - version: "1.2.0" - clock: - dependency: transitive - description: - name: clock - url: "https://pub.dartlang.org" - source: hosted - version: "1.1.0" - collection: - dependency: transitive - description: - name: collection - url: "https://pub.dartlang.org" - source: hosted - version: "1.15.0" - csslib: - dependency: transitive - description: - name: csslib - url: "https://pub.dartlang.org" - source: hosted - version: "0.17.0" - fake_async: - dependency: transitive - description: - name: fake_async - url: "https://pub.dartlang.org" - source: hosted - version: "1.2.0" - flutter: - dependency: "direct main" - description: flutter - source: sdk - version: "0.0.0" - flutter_test: - dependency: "direct dev" - description: flutter - source: sdk - version: "0.0.0" - html: - dependency: "direct dev" - description: - name: html - url: "https://pub.dartlang.org" - source: hosted - version: "0.15.0" - lint: - dependency: "direct dev" - description: - name: lint - url: "https://pub.dartlang.org" - source: hosted - version: "1.6.0" - matcher: - dependency: transitive - description: - name: matcher - url: "https://pub.dartlang.org" - source: hosted - version: "0.12.10" - meta: - dependency: transitive - description: - name: meta - url: "https://pub.dartlang.org" - source: hosted - version: "1.3.0" - path: - dependency: transitive - description: - name: path - url: "https://pub.dartlang.org" - source: hosted - version: "1.8.0" - recase: - dependency: "direct dev" - description: - name: recase - url: "https://pub.dartlang.org" - source: hosted - version: "4.0.0" - sky_engine: - dependency: transitive - description: flutter - source: sdk - version: "0.0.99" - source_span: - dependency: transitive - description: - name: source_span - url: "https://pub.dartlang.org" - source: hosted - version: "1.8.1" - stack_trace: - dependency: transitive - description: - name: stack_trace - url: "https://pub.dartlang.org" - source: hosted - version: "1.10.0" - stream_channel: - dependency: transitive - description: - name: stream_channel - url: "https://pub.dartlang.org" - source: hosted - version: "2.1.0" - string_scanner: - dependency: transitive - description: - name: string_scanner - url: "https://pub.dartlang.org" - source: hosted - version: "1.1.0" - term_glyph: - dependency: transitive - description: - name: term_glyph - url: "https://pub.dartlang.org" - source: hosted - version: "1.2.0" - test_api: - dependency: transitive - description: - name: test_api - url: "https://pub.dartlang.org" - source: hosted - version: "0.3.0" - typed_data: - dependency: transitive - description: - name: typed_data - url: "https://pub.dartlang.org" - source: hosted - version: "1.3.0" - vector_math: - dependency: transitive - description: - name: vector_math - url: "https://pub.dartlang.org" - source: hosted - version: "2.1.0" -sdks: - dart: ">=2.13.0 <3.0.0" - flutter: ">=1.17.0" diff --git a/packages/lucide-flutter/pubspec.yaml b/packages/lucide-flutter/pubspec.yaml index 03eafd86d..ae504a8ff 100644 --- a/packages/lucide-flutter/pubspec.yaml +++ b/packages/lucide-flutter/pubspec.yaml @@ -1,5 +1,5 @@ name: lucide_icons -description: A Lucide icon library package for Flutter applications. +description: A Lucide icon library package for Flutter applications. Fork of Feather Icons, open for anyone to contribute icons. version: 0.16.10 homepage: https://lucide.dev repository: https://github.com/lucide-icons/lucide diff --git a/packages/lucide-flutter/test/icon_test.dart b/packages/lucide-flutter/test/icon_test.dart new file mode 100644 index 000000000..3428ccd12 --- /dev/null +++ b/packages/lucide-flutter/test/icon_test.dart @@ -0,0 +1,147 @@ +// Tests adapted from https://github.com/fluttercommunity/font_awesome_flutter/blob/master/test/fa_icon_test.dart +// Copyright 2014 The Flutter Authors. All rights reserved. + +import 'package:flutter/material.dart'; +import 'package:flutter_test/flutter_test.dart'; +import 'package:flutter/widgets.dart'; +import 'package:lucide_icons/lucide_icons.dart'; + +void main() { + testWidgets('Can set opacity for an Icon', (WidgetTester tester) async { + await tester.pumpWidget( + const Directionality( + textDirection: TextDirection.ltr, + child: IconTheme( + data: IconThemeData( + color: Color(0xFF666666), + opacity: 0.5, + ), + child: Icon(LucideIcons.bot), + ), + ), + ); + final RichText text = tester.widget(find.byType(RichText)); + expect(text.text.style!.color, const Color(0xFF666666).withOpacity(0.5)); + }); + + testWidgets('Icon sizing - no theme, default size', + (WidgetTester tester) async { + await tester.pumpWidget( + const Directionality( + textDirection: TextDirection.ltr, + child: Center( + child: Icon(LucideIcons.bot), + ), + ), + ); + + final RenderBox renderObject = tester.renderObject(find.byType(Icon)); + expect(renderObject.size, equals(const Size.square(24.0))); + }); + + testWidgets('Icon sizing - no theme, explicit size', + (WidgetTester tester) async { + await tester.pumpWidget( + const Directionality( + textDirection: TextDirection.ltr, + child: Center( + child: Icon( + LucideIcons.bot, + size: 96.0, + ), + ), + ), + ); + + final RenderBox renderObject = tester.renderObject(find.byType(Icon)); + expect(renderObject.size, equals(const Size.square(96.0))); + }); + + testWidgets('Icon sizing - sized theme', (WidgetTester tester) async { + await tester.pumpWidget( + const Directionality( + textDirection: TextDirection.ltr, + child: Center( + child: IconTheme( + data: IconThemeData(size: 36.0), + child: Icon(LucideIcons.bot), + ), + ), + ), + ); + + final RenderBox renderObject = tester.renderObject(find.byType(Icon)); + expect(renderObject.size, equals(const Size.square(36.0))); + }); + + testWidgets('Icon sizing - sized theme, explicit size', + (WidgetTester tester) async { + await tester.pumpWidget( + const Directionality( + textDirection: TextDirection.ltr, + child: Center( + child: IconTheme( + data: IconThemeData(size: 36.0), + child: Icon( + LucideIcons.bot, + size: 48.0, + ), + ), + ), + ), + ); + + final RenderBox renderObject = tester.renderObject(find.byType(Icon)); + expect(renderObject.size, equals(const Size.square(48.0))); + }); + + testWidgets('Icon sizing - sizeless theme, default size', + (WidgetTester tester) async { + await tester.pumpWidget( + const Directionality( + textDirection: TextDirection.ltr, + child: Center( + child: IconTheme( + data: IconThemeData(), + child: Icon(LucideIcons.bot), + ), + ), + ), + ); + + final RenderBox renderObject = tester.renderObject(find.byType(Icon)); + expect(renderObject.size, equals(const Size.square(24.0))); + }); + + testWidgets("Changing semantic label from null doesn't rebuild tree ", + (WidgetTester tester) async { + await tester.pumpWidget( + const Directionality( + textDirection: TextDirection.ltr, + child: Center( + child: Icon(LucideIcons.bot), + ), + ), + ); + + final Element richText1 = tester.element(find.byType(RichText)); + + await tester.pumpWidget( + const Directionality( + textDirection: TextDirection.ltr, + child: Center( + child: Icon( + LucideIcons.bot, + semanticLabel: 'a label', + ), + ), + ), + ); + + final Element richText2 = tester.element(find.byType(RichText)); + + // Compare a leaf Element in the Icon subtree before and after changing the + // semanticLabel to make sure the subtree was not rebuilt. + expect(richText2, same(richText1)); + }); +}