Showing preview only (3,444K chars total). Download the full file or copy to clipboard to get everything.
Repository: pqoqubbw/icons
Branch: main
Commit: 1854968a5faa
Files: 869
Total size: 3.2 MB
Directory structure:
gitextract_z19nbr_4/
├── .github/
│ ├── pull_request_template.md
│ └── workflows/
│ └── ci.yml
├── .gitignore
├── .vscode/
│ └── settings.json
├── CONTRIBUTING.md
├── LICENSE
├── README.md
├── actions/
│ ├── get-icon-content.ts
│ ├── get-icons.ts
│ └── open-in-v0.ts
├── app/
│ ├── globals.css
│ ├── icon.tsx
│ ├── icons/
│ │ └── [slug]/
│ │ ├── icon-card.tsx
│ │ ├── page.tsx
│ │ └── similar-icons.tsx
│ ├── layout.tsx
│ ├── llms.txt/
│ │ └── route.ts
│ ├── page.tsx
│ ├── robots.ts
│ ├── sitemap.ts
│ └── sponsorship/
│ └── page.tsx
├── biome.jsonc
├── components/
│ ├── analytics.tsx
│ ├── card.tsx
│ ├── cli-block.tsx
│ ├── comment.client.tsx
│ ├── comment.tsx
│ ├── footer.tsx
│ ├── github-button.tsx
│ ├── header.tsx
│ ├── list.tsx
│ ├── search-input.tsx
│ ├── sponsorship/
│ │ ├── amount-selector.tsx
│ │ └── stamp.tsx
│ └── ui/
│ ├── avatar.tsx
│ ├── icon-state.tsx
│ ├── input.tsx
│ ├── portal.tsx
│ ├── radio.tsx
│ ├── scroll-area.tsx
│ ├── tabs.tsx
│ ├── text-loop.tsx
│ ├── theme-toggle.tsx
│ └── tooltip.tsx
├── constants.ts
├── fonts/
│ └── README.md
├── helpers/
│ └── get-icon-for-v0.ts
├── hooks/
│ └── use-touch-device.ts
├── icons/
│ ├── a-arrow-down.tsx
│ ├── a-arrow-up.tsx
│ ├── accessibility.tsx
│ ├── activity.tsx
│ ├── air-vent.tsx
│ ├── airplane.tsx
│ ├── airplay.tsx
│ ├── alarm-clock.tsx
│ ├── align-center.tsx
│ ├── align-horizontal.tsx
│ ├── align-left.tsx
│ ├── align-right.tsx
│ ├── align-vertical.tsx
│ ├── ambulance.tsx
│ ├── angry.tsx
│ ├── annoyed.tsx
│ ├── archive.tsx
│ ├── arrow-big-down-dash.tsx
│ ├── arrow-big-down.tsx
│ ├── arrow-big-left-dash.tsx
│ ├── arrow-big-left.tsx
│ ├── arrow-big-right-dash.tsx
│ ├── arrow-big-right.tsx
│ ├── arrow-big-up-dash.tsx
│ ├── arrow-big-up.tsx
│ ├── arrow-down-0-1.tsx
│ ├── arrow-down-1-0.tsx
│ ├── arrow-down-a-z.tsx
│ ├── arrow-down-left.tsx
│ ├── arrow-down-right.tsx
│ ├── arrow-down-z-a.tsx
│ ├── arrow-down.tsx
│ ├── arrow-left.tsx
│ ├── arrow-right.tsx
│ ├── arrow-up-left.tsx
│ ├── arrow-up-right.tsx
│ ├── arrow-up.tsx
│ ├── at-sign.tsx
│ ├── atom.tsx
│ ├── attach-file.tsx
│ ├── audio-lines.tsx
│ ├── axe.tsx
│ ├── badge-alert.tsx
│ ├── badge-percent.tsx
│ ├── ban.tsx
│ ├── banana.tsx
│ ├── battery-charging.tsx
│ ├── battery-full.tsx
│ ├── battery-low.tsx
│ ├── battery-medium.tsx
│ ├── battery-plus.tsx
│ ├── battery-warning.tsx
│ ├── battery.tsx
│ ├── bell-electric.tsx
│ ├── bell.tsx
│ ├── blocks.tsx
│ ├── bluetooth-connected.tsx
│ ├── bluetooth-off.tsx
│ ├── bluetooth-searching.tsx
│ ├── bluetooth.tsx
│ ├── bold.tsx
│ ├── bone.tsx
│ ├── book-text.tsx
│ ├── bookmark-check.tsx
│ ├── bookmark-minus.tsx
│ ├── bookmark-plus.tsx
│ ├── bookmark-x.tsx
│ ├── bookmark.tsx
│ ├── bot-message-square.tsx
│ ├── bot.tsx
│ ├── box.tsx
│ ├── boxes.tsx
│ ├── brain.tsx
│ ├── calendar-check-2.tsx
│ ├── calendar-check.tsx
│ ├── calendar-cog.tsx
│ ├── calendar-days.tsx
│ ├── cart.tsx
│ ├── cast.tsx
│ ├── cctv.tsx
│ ├── chart-bar-decreasing.tsx
│ ├── chart-bar-increasing.tsx
│ ├── chart-column-decreasing.tsx
│ ├── chart-column-increasing.tsx
│ ├── chart-line.tsx
│ ├── chart-no-axes-column-decreasing.tsx
│ ├── chart-no-axes-column-increasing.tsx
│ ├── chart-pie.tsx
│ ├── chart-scatter.tsx
│ ├── chart-spline.tsx
│ ├── check-check.tsx
│ ├── check.tsx
│ ├── chess-bishop.tsx
│ ├── chess-king.tsx
│ ├── chess-knight.tsx
│ ├── chess-pawn.tsx
│ ├── chevron-down.tsx
│ ├── chevron-first.tsx
│ ├── chevron-left.tsx
│ ├── chevron-right.tsx
│ ├── chevron-up.tsx
│ ├── chevrons-down-up.tsx
│ ├── chevrons-left-right.tsx
│ ├── chevrons-right-left.tsx
│ ├── chevrons-up-down.tsx
│ ├── chrome.tsx
│ ├── circle-check.tsx
│ ├── circle-chevron-down.tsx
│ ├── circle-chevron-left.tsx
│ ├── circle-chevron-right.tsx
│ ├── circle-chevron-up.tsx
│ ├── circle-dashed.tsx
│ ├── circle-dollar-sign.tsx
│ ├── circle-help.tsx
│ ├── clap.tsx
│ ├── clipboard-check.tsx
│ ├── clock.tsx
│ ├── cloud-cog.tsx
│ ├── cloud-download.tsx
│ ├── cloud-lightning.tsx
│ ├── cloud-rain-wind.tsx
│ ├── cloud-rain.tsx
│ ├── cloud-snow.tsx
│ ├── cloud-sun.tsx
│ ├── cloud-upload.tsx
│ ├── coffee.tsx
│ ├── cog.tsx
│ ├── compass.tsx
│ ├── connect.tsx
│ ├── construction.tsx
│ ├── contrast.tsx
│ ├── cooking-pot.tsx
│ ├── copy.tsx
│ ├── corner-down-left.tsx
│ ├── corner-down-right.tsx
│ ├── corner-left-down.tsx
│ ├── corner-left-up.tsx
│ ├── corner-right-down.tsx
│ ├── corner-right-up.tsx
│ ├── corner-up-left.tsx
│ ├── corner-up-right.tsx
│ ├── cpu.tsx
│ ├── cup-soda.tsx
│ ├── cursor-click.tsx
│ ├── database-backup.tsx
│ ├── delete.tsx
│ ├── disc-3.tsx
│ ├── discord.tsx
│ ├── dollar-sign.tsx
│ ├── download.tsx
│ ├── downvote.tsx
│ ├── dribbble.tsx
│ ├── droplet.tsx
│ ├── drum.tsx
│ ├── earth.tsx
│ ├── euro.tsx
│ ├── ev-charger.tsx
│ ├── expand.tsx
│ ├── eye-off.tsx
│ ├── eye.tsx
│ ├── facebook.tsx
│ ├── feather.tsx
│ ├── figma.tsx
│ ├── file-chart-line.tsx
│ ├── file-check-2.tsx
│ ├── file-check.tsx
│ ├── file-cog.tsx
│ ├── file-pen-line.tsx
│ ├── file-stack.tsx
│ ├── file-text.tsx
│ ├── fingerprint.tsx
│ ├── fish-symbol.tsx
│ ├── flame.tsx
│ ├── flask.tsx
│ ├── folder-archive.tsx
│ ├── folder-check.tsx
│ ├── folder-clock.tsx
│ ├── folder-code.tsx
│ ├── folder-cog.tsx
│ ├── folder-dot.tsx
│ ├── folder-down.tsx
│ ├── folder-git-2.tsx
│ ├── folder-git.tsx
│ ├── folder-heart.tsx
│ ├── folder-input.tsx
│ ├── folder-kanban.tsx
│ ├── folder-key.tsx
│ ├── folder-lock.tsx
│ ├── folder-minus.tsx
│ ├── folder-open.tsx
│ ├── folder-output.tsx
│ ├── folder-plus.tsx
│ ├── folder-root.tsx
│ ├── folder-sync.tsx
│ ├── folder-tree.tsx
│ ├── folder-up.tsx
│ ├── folder-x.tsx
│ ├── folders.tsx
│ ├── frame.tsx
│ ├── frown.tsx
│ ├── gallery-horizontal-end.tsx
│ ├── gallery-thumbnails.tsx
│ ├── gallery-vertical-end.tsx
│ ├── gauge.tsx
│ ├── gavel.tsx
│ ├── georgian-lari.tsx
│ ├── git-branch.tsx
│ ├── git-commit-horizontal.tsx
│ ├── git-commit-vertical.tsx
│ ├── git-compare-arrows.tsx
│ ├── git-compare.tsx
│ ├── git-fork.tsx
│ ├── git-graph.tsx
│ ├── git-merge.tsx
│ ├── git-pull-request-closed.tsx
│ ├── git-pull-request-create.tsx
│ ├── git-pull-request.tsx
│ ├── github.tsx
│ ├── gitlab.tsx
│ ├── graduation-cap.tsx
│ ├── grip-horizontal.tsx
│ ├── grip-vertical.tsx
│ ├── grip.tsx
│ ├── hammer.tsx
│ ├── hand-coins.tsx
│ ├── hand-fist.tsx
│ ├── hand-grab.tsx
│ ├── hand-heart.tsx
│ ├── hand-helping.tsx
│ ├── hand-metal.tsx
│ ├── hand.tsx
│ ├── hard-drive-download.tsx
│ ├── hard-drive-upload.tsx
│ ├── heart-handshake.tsx
│ ├── heart-pulse.tsx
│ ├── heart.tsx
│ ├── history.tsx
│ ├── home.tsx
│ ├── hourglass.tsx
│ ├── id-card.tsx
│ ├── index.ts
│ ├── indian-rupee.tsx
│ ├── instagram.tsx
│ ├── italic.tsx
│ ├── japanese-yen.tsx
│ ├── key-circle.tsx
│ ├── key-square.tsx
│ ├── key.tsx
│ ├── keyboard.tsx
│ ├── languages.tsx
│ ├── laptop-minimal-check.tsx
│ ├── laugh.tsx
│ ├── layers.tsx
│ ├── layout-panel-top.tsx
│ ├── link.tsx
│ ├── linkedin.tsx
│ ├── loader-pinwheel.tsx
│ ├── lock-keyhole-open.tsx
│ ├── lock-keyhole.tsx
│ ├── lock-open.tsx
│ ├── lock.tsx
│ ├── logout.tsx
│ ├── mail-check.tsx
│ ├── mailbox.tsx
│ ├── map-pin-check-inside.tsx
│ ├── map-pin-check.tsx
│ ├── map-pin-house.tsx
│ ├── map-pin-minus-inside.tsx
│ ├── map-pin-minus.tsx
│ ├── map-pin-off.tsx
│ ├── map-pin-plus-inside.tsx
│ ├── map-pin-plus.tsx
│ ├── map-pin-x-inside.tsx
│ ├── map-pin.tsx
│ ├── maximize-2.tsx
│ ├── maximize.tsx
│ ├── meh.tsx
│ ├── menu.tsx
│ ├── message-circle-check.tsx
│ ├── message-circle-dashed.tsx
│ ├── message-circle-more.tsx
│ ├── message-circle-plus.tsx
│ ├── message-circle-x.tsx
│ ├── message-circle.tsx
│ ├── message-square-check.tsx
│ ├── message-square-dashed.tsx
│ ├── message-square-more.tsx
│ ├── message-square-plus.tsx
│ ├── message-square-x.tsx
│ ├── message-square.tsx
│ ├── mic-off.tsx
│ ├── mic.tsx
│ ├── minimize.tsx
│ ├── monitor-check.tsx
│ ├── moon.tsx
│ ├── nfc.tsx
│ ├── panel-left-close.tsx
│ ├── panel-left-open.tsx
│ ├── panel-right-open.tsx
│ ├── party-popper.tsx
│ ├── pause.tsx
│ ├── pen-tool.tsx
│ ├── philippine-peso.tsx
│ ├── pickaxe.tsx
│ ├── play.tsx
│ ├── plug-zap.tsx
│ ├── plus.tsx
│ ├── pound-sterling.tsx
│ ├── rabbit.tsx
│ ├── radio-tower.tsx
│ ├── radio.tsx
│ ├── redo-dot.tsx
│ ├── redo.tsx
│ ├── refresh-ccw-dot.tsx
│ ├── refresh-ccw.tsx
│ ├── refresh-cw-off.tsx
│ ├── refresh-cw.tsx
│ ├── rocket.tsx
│ ├── rocking-chair.tsx
│ ├── roller-coaster.tsx
│ ├── rotate-ccw.tsx
│ ├── rotate-cw.tsx
│ ├── route.tsx
│ ├── russian-ruble.tsx
│ ├── saudi-riyal.tsx
│ ├── scan-face.tsx
│ ├── scan-text.tsx
│ ├── search.tsx
│ ├── send.tsx
│ ├── settings.tsx
│ ├── shield-check.tsx
│ ├── ship.tsx
│ ├── shower-head.tsx
│ ├── shrink.tsx
│ ├── sliders-horizontal.tsx
│ ├── smartphone-charging.tsx
│ ├── smartphone-nfc.tsx
│ ├── smile-plus.tsx
│ ├── smile.tsx
│ ├── snowflake.tsx
│ ├── sparkles.tsx
│ ├── square-activity.tsx
│ ├── square-arrow-down.tsx
│ ├── square-arrow-left.tsx
│ ├── square-arrow-right.tsx
│ ├── square-arrow-up.tsx
│ ├── square-chevron-down.tsx
│ ├── square-chevron-left.tsx
│ ├── square-chevron-right.tsx
│ ├── square-chevron-up.tsx
│ ├── square-pen.tsx
│ ├── square-stack.tsx
│ ├── stethoscope.tsx
│ ├── sun-dim.tsx
│ ├── sun-medium.tsx
│ ├── sun-moon.tsx
│ ├── sun.tsx
│ ├── sunset.tsx
│ ├── swiss-franc.tsx
│ ├── syringe.tsx
│ ├── telescope.tsx
│ ├── terminal.tsx
│ ├── thermometer.tsx
│ ├── timer.tsx
│ ├── tornado.tsx
│ ├── train-track.tsx
│ ├── trending-down.tsx
│ ├── trending-up-down.tsx
│ ├── trending-up.tsx
│ ├── truck.tsx
│ ├── turkish-lira.tsx
│ ├── twitch.tsx
│ ├── twitter.tsx
│ ├── underline.tsx
│ ├── undo-dot.tsx
│ ├── undo.tsx
│ ├── upload.tsx
│ ├── upvote.tsx
│ ├── user-check.tsx
│ ├── user-round-check.tsx
│ ├── user-round-plus.tsx
│ ├── user.tsx
│ ├── users.tsx
│ ├── vibrate.tsx
│ ├── volume.tsx
│ ├── washing-machine.tsx
│ ├── waves-ladder.tsx
│ ├── waves.tsx
│ ├── waypoints.tsx
│ ├── webhook.tsx
│ ├── wifi-low.tsx
│ ├── wifi.tsx
│ ├── wind-arrow-down.tsx
│ ├── wind.tsx
│ ├── workflow.tsx
│ ├── wrench.tsx
│ ├── x.tsx
│ ├── youtube.tsx
│ ├── zap-off.tsx
│ └── zap.tsx
├── lib/
│ ├── get-package-manager-prefix.ts
│ ├── kebab-to-pascal.ts
│ └── utils.ts
├── next.config.ts
├── package.json
├── postcss.config.mjs
├── providers/
│ ├── package-name.tsx
│ └── theme.tsx
├── public/
│ └── r/
│ ├── a-arrow-down.json
│ ├── a-arrow-up.json
│ ├── accessibility.json
│ ├── activity.json
│ ├── air-vent.json
│ ├── airplane.json
│ ├── airplay.json
│ ├── alarm-clock.json
│ ├── align-center.json
│ ├── align-horizontal.json
│ ├── align-left.json
│ ├── align-right.json
│ ├── align-vertical.json
│ ├── ambulance.json
│ ├── angry.json
│ ├── annoyed.json
│ ├── archive.json
│ ├── arrow-big-down-dash.json
│ ├── arrow-big-down.json
│ ├── arrow-big-left-dash.json
│ ├── arrow-big-left.json
│ ├── arrow-big-right-dash.json
│ ├── arrow-big-right.json
│ ├── arrow-big-up-dash.json
│ ├── arrow-big-up.json
│ ├── arrow-down-0-1.json
│ ├── arrow-down-1-0.json
│ ├── arrow-down-a-z.json
│ ├── arrow-down-left.json
│ ├── arrow-down-right.json
│ ├── arrow-down-z-a.json
│ ├── arrow-down.json
│ ├── arrow-left.json
│ ├── arrow-right.json
│ ├── arrow-up-left.json
│ ├── arrow-up-right.json
│ ├── arrow-up.json
│ ├── at-sign.json
│ ├── atom.json
│ ├── attach-file.json
│ ├── audio-lines.json
│ ├── axe.json
│ ├── badge-alert.json
│ ├── badge-percent.json
│ ├── ban.json
│ ├── banana.json
│ ├── battery-charging.json
│ ├── battery-full.json
│ ├── battery-low.json
│ ├── battery-medium.json
│ ├── battery-plus.json
│ ├── battery-warning.json
│ ├── battery.json
│ ├── bell-electric.json
│ ├── bell.json
│ ├── blocks.json
│ ├── bluetooth-connected.json
│ ├── bluetooth-off.json
│ ├── bluetooth-searching.json
│ ├── bluetooth.json
│ ├── bold.json
│ ├── bone.json
│ ├── book-text.json
│ ├── bookmark-check.json
│ ├── bookmark-minus.json
│ ├── bookmark-plus.json
│ ├── bookmark-x.json
│ ├── bookmark.json
│ ├── bot-message-square.json
│ ├── bot.json
│ ├── box.json
│ ├── boxes.json
│ ├── brain.json
│ ├── calendar-check-2.json
│ ├── calendar-check.json
│ ├── calendar-cog.json
│ ├── calendar-days.json
│ ├── cart.json
│ ├── cast.json
│ ├── cctv.json
│ ├── chart-bar-decreasing.json
│ ├── chart-bar-increasing.json
│ ├── chart-column-decreasing.json
│ ├── chart-column-increasing.json
│ ├── chart-line.json
│ ├── chart-no-axes-column-decreasing.json
│ ├── chart-no-axes-column-increasing.json
│ ├── chart-pie.json
│ ├── chart-scatter.json
│ ├── chart-spline.json
│ ├── check-check.json
│ ├── check.json
│ ├── chess-bishop.json
│ ├── chess-king.json
│ ├── chess-knight.json
│ ├── chess-pawn.json
│ ├── chevron-down.json
│ ├── chevron-first.json
│ ├── chevron-left.json
│ ├── chevron-right.json
│ ├── chevron-up.json
│ ├── chevrons-down-up.json
│ ├── chevrons-left-right.json
│ ├── chevrons-right-left.json
│ ├── chevrons-up-down.json
│ ├── chrome.json
│ ├── circle-check.json
│ ├── circle-chevron-down.json
│ ├── circle-chevron-left.json
│ ├── circle-chevron-right.json
│ ├── circle-chevron-up.json
│ ├── circle-dashed.json
│ ├── circle-dollar-sign.json
│ ├── circle-help.json
│ ├── clap.json
│ ├── clipboard-check.json
│ ├── clock.json
│ ├── cloud-cog.json
│ ├── cloud-download.json
│ ├── cloud-lightning.json
│ ├── cloud-rain-wind.json
│ ├── cloud-rain.json
│ ├── cloud-snow.json
│ ├── cloud-sun.json
│ ├── cloud-upload.json
│ ├── coffee.json
│ ├── cog.json
│ ├── compass.json
│ ├── connect.json
│ ├── construction.json
│ ├── contrast.json
│ ├── cooking-pot.json
│ ├── copy.json
│ ├── corner-down-left.json
│ ├── corner-down-right.json
│ ├── corner-left-down.json
│ ├── corner-left-up.json
│ ├── corner-right-down.json
│ ├── corner-right-up.json
│ ├── corner-up-left.json
│ ├── corner-up-right.json
│ ├── cpu.json
│ ├── cup-soda.json
│ ├── cursor-click.json
│ ├── database-backup.json
│ ├── delete.json
│ ├── disc-3.json
│ ├── discord.json
│ ├── dollar-sign.json
│ ├── download.json
│ ├── downvote.json
│ ├── dribbble.json
│ ├── droplet.json
│ ├── drum.json
│ ├── earth.json
│ ├── euro.json
│ ├── ev-charger.json
│ ├── expand.json
│ ├── eye-off.json
│ ├── eye.json
│ ├── facebook.json
│ ├── feather.json
│ ├── figma.json
│ ├── file-chart-line.json
│ ├── file-check-2.json
│ ├── file-check.json
│ ├── file-cog.json
│ ├── file-pen-line.json
│ ├── file-stack.json
│ ├── file-text.json
│ ├── fingerprint.json
│ ├── fish-symbol.json
│ ├── flame.json
│ ├── flask.json
│ ├── folder-archive.json
│ ├── folder-check.json
│ ├── folder-clock.json
│ ├── folder-code.json
│ ├── folder-cog.json
│ ├── folder-dot.json
│ ├── folder-down.json
│ ├── folder-git-2.json
│ ├── folder-git.json
│ ├── folder-heart.json
│ ├── folder-input.json
│ ├── folder-kanban.json
│ ├── folder-key.json
│ ├── folder-lock.json
│ ├── folder-minus.json
│ ├── folder-open.json
│ ├── folder-output.json
│ ├── folder-plus.json
│ ├── folder-root.json
│ ├── folder-sync.json
│ ├── folder-tree.json
│ ├── folder-up.json
│ ├── folder-x.json
│ ├── folders.json
│ ├── frame.json
│ ├── frown.json
│ ├── gallery-horizontal-end.json
│ ├── gallery-thumbnails.json
│ ├── gallery-vertical-end.json
│ ├── gauge.json
│ ├── gavel.json
│ ├── georgian-lari.json
│ ├── git-branch.json
│ ├── git-commit-horizontal.json
│ ├── git-commit-vertical.json
│ ├── git-compare-arrows.json
│ ├── git-compare.json
│ ├── git-fork.json
│ ├── git-graph.json
│ ├── git-merge.json
│ ├── git-pull-request-closed.json
│ ├── git-pull-request-create.json
│ ├── git-pull-request.json
│ ├── github.json
│ ├── gitlab.json
│ ├── graduation-cap.json
│ ├── grip-horizontal.json
│ ├── grip-vertical.json
│ ├── grip.json
│ ├── hammer.json
│ ├── hand-coins.json
│ ├── hand-fist.json
│ ├── hand-grab.json
│ ├── hand-heart.json
│ ├── hand-helping.json
│ ├── hand-metal.json
│ ├── hand.json
│ ├── hard-drive-download.json
│ ├── hard-drive-upload.json
│ ├── heart-handshake.json
│ ├── heart-pulse.json
│ ├── heart.json
│ ├── history.json
│ ├── home.json
│ ├── hourglass.json
│ ├── id-card.json
│ ├── indian-rupee.json
│ ├── instagram.json
│ ├── italic.json
│ ├── japanese-yen.json
│ ├── key-circle.json
│ ├── key-square.json
│ ├── key.json
│ ├── keyboard.json
│ ├── languages.json
│ ├── laptop-minimal-check.json
│ ├── laugh.json
│ ├── layers.json
│ ├── layout-panel-top.json
│ ├── link.json
│ ├── linkedin.json
│ ├── loader-pinwheel.json
│ ├── lock-keyhole-open.json
│ ├── lock-keyhole.json
│ ├── lock-open.json
│ ├── lock.json
│ ├── logout.json
│ ├── mail-check.json
│ ├── mailbox.json
│ ├── map-pin-check-inside.json
│ ├── map-pin-check.json
│ ├── map-pin-house.json
│ ├── map-pin-minus-inside.json
│ ├── map-pin-minus.json
│ ├── map-pin-off.json
│ ├── map-pin-plus-inside.json
│ ├── map-pin-plus.json
│ ├── map-pin-x-inside.json
│ ├── map-pin.json
│ ├── maximize-2.json
│ ├── maximize.json
│ ├── meh.json
│ ├── menu.json
│ ├── message-circle-check.json
│ ├── message-circle-dashed.json
│ ├── message-circle-more.json
│ ├── message-circle-plus.json
│ ├── message-circle-x.json
│ ├── message-circle.json
│ ├── message-square-check.json
│ ├── message-square-dashed.json
│ ├── message-square-more.json
│ ├── message-square-plus.json
│ ├── message-square-x.json
│ ├── message-square.json
│ ├── mic-off.json
│ ├── mic.json
│ ├── minimize.json
│ ├── monitor-check.json
│ ├── moon.json
│ ├── nfc.json
│ ├── panel-left-close.json
│ ├── panel-left-open.json
│ ├── panel-right-open.json
│ ├── party-popper.json
│ ├── pause.json
│ ├── pen-tool.json
│ ├── philippine-peso.json
│ ├── pickaxe.json
│ ├── play.json
│ ├── plug-zap.json
│ ├── plus.json
│ ├── pound-sterling.json
│ ├── rabbit.json
│ ├── radio-tower.json
│ ├── radio.json
│ ├── redo-dot.json
│ ├── redo.json
│ ├── refresh-ccw-dot.json
│ ├── refresh-ccw.json
│ ├── refresh-cw-off.json
│ ├── refresh-cw.json
│ ├── registry.json
│ ├── rocket.json
│ ├── rocking-chair.json
│ ├── roller-coaster.json
│ ├── rotate-ccw.json
│ ├── rotate-cw.json
│ ├── route.json
│ ├── russian-ruble.json
│ ├── saudi-riyal.json
│ ├── scan-face.json
│ ├── scan-text.json
│ ├── search.json
│ ├── send.json
│ ├── settings-gear.json
│ ├── settings.json
│ ├── shield-check.json
│ ├── ship.json
│ ├── shower-head.json
│ ├── shrink.json
│ ├── sliders-horizontal.json
│ ├── smartphone-charging.json
│ ├── smartphone-nfc.json
│ ├── smile-plus.json
│ ├── smile.json
│ ├── snowflake.json
│ ├── sparkles.json
│ ├── square-activity.json
│ ├── square-arrow-down.json
│ ├── square-arrow-left.json
│ ├── square-arrow-right.json
│ ├── square-arrow-up.json
│ ├── square-chevron-down.json
│ ├── square-chevron-left.json
│ ├── square-chevron-right.json
│ ├── square-chevron-up.json
│ ├── square-pen.json
│ ├── square-stack.json
│ ├── stethoscope.json
│ ├── sun-dim.json
│ ├── sun-medium.json
│ ├── sun-moon.json
│ ├── sun.json
│ ├── sunset.json
│ ├── swiss-franc.json
│ ├── syringe.json
│ ├── telescope.json
│ ├── terminal.json
│ ├── thermometer.json
│ ├── timer.json
│ ├── tornado.json
│ ├── train-track.json
│ ├── trending-down.json
│ ├── trending-up-down.json
│ ├── trending-up.json
│ ├── truck.json
│ ├── turkish-lira.json
│ ├── twitch.json
│ ├── twitter.json
│ ├── underline.json
│ ├── undo-dot.json
│ ├── undo.json
│ ├── upload.json
│ ├── upvote.json
│ ├── user-check.json
│ ├── user-round-check.json
│ ├── user-round-plus.json
│ ├── user.json
│ ├── users.json
│ ├── vibrate.json
│ ├── volume.json
│ ├── washing-machine.json
│ ├── waves-ladder.json
│ ├── waves.json
│ ├── waypoints.json
│ ├── webhook.json
│ ├── wifi-low.json
│ ├── wifi.json
│ ├── wind-arrow-down.json
│ ├── wind.json
│ ├── workflow.json
│ ├── wrench.json
│ ├── x.json
│ ├── youtube.json
│ ├── zap-off.json
│ └── zap.json
├── registry.json
├── scripts/
│ ├── check-duplicates.ts
│ ├── check-icon-style.ts
│ ├── check-imports.ts
│ ├── download-fonts.js
│ ├── registry-build.ts
│ ├── registry-components.ts
│ ├── registry-schema.ts
│ └── sync-registry.ts
├── seo/
│ ├── json-ld.tsx
│ └── metadata.ts
└── tsconfig.json
================================================
FILE CONTENTS
================================================
================================================
FILE: .github/pull_request_template.md
================================================
## I have read the [CONTRIBUTING.md](https://github.com/pqoqubbw/icons/blob/main/CONTRIBUTING.md) file.
YES/NO
## What kind of change does this PR introduce?
Bug fix, feature, docs update, ...
## What is the new behavior?
Feel free to include screenshots if it includes visual changes.
## Demo
Please attach a short video demo of the changes.
## Additional context
Add any other context or screenshots.
================================================
FILE: .github/workflows/ci.yml
================================================
name: CI
on:
pull_request:
branches: [main]
push:
branches: [main]
jobs:
check-imports:
name: Check Imports
runs-on: ubuntu-latest
steps:
- name: Checkout
uses: actions/checkout@v4
- name: Setup pnpm
uses: pnpm/action-setup@v4
with:
version: 9
- name: Setup Node.js
uses: actions/setup-node@v4
with:
node-version: '20'
cache: 'pnpm'
- name: Install dependencies
run: pnpm install --frozen-lockfile
- name: Check imports
run: pnpm check-imports
check-duplicates:
name: Check Duplicates
runs-on: ubuntu-latest
steps:
- name: Checkout
uses: actions/checkout@v4
- name: Setup pnpm
uses: pnpm/action-setup@v4
with:
version: 9
- name: Setup Node.js
uses: actions/setup-node@v4
with:
node-version: '20'
cache: 'pnpm'
- name: Install dependencies
run: pnpm install --frozen-lockfile
- name: Check duplicates
run: pnpm check-duplicates
================================================
FILE: .gitignore
================================================
# See https://help.github.com/articles/ignoring-files/ for more about ignoring files.
# dependencies
/node_modules
/.pnp
.pnp.*
.yarn/*
!.yarn/patches
!.yarn/plugins
!.yarn/releases
!.yarn/versions
_app/*
package-lock.json
yarn.lock
# testing
/coverage
# next.js
/.next/
/out/
# production
/build
# misc
.DS_Store
*.pem
# debug
npm-debug.log*
yarn-debug.log*
yarn-error.log*
# env files (can opt-in for commiting if needed)
.env*
# vercel
.vercel
.cursor
# typescript
*.tsbuildinfo
next-env.d.ts
# proprietary fonts (not licensed for public distribution)
# fonts are downloaded at build time from Vercel Blob Storage
/fonts/*.woff
/fonts/*.woff2
/fonts/*.ttf
/fonts/*.otf
/fonts/*EULA.pdf
/fonts/Grilli-Type-EULA.pdf
================================================
FILE: .vscode/settings.json
================================================
{
"cSpell.words": ["Downvote", "LUCIDE", "nuqs", "pqoqubbw", "Upvote"],
"typescript.tsdk": "node_modules/typescript/lib",
"css.lint.unknownAtRules": "ignore",
"editor.defaultFormatter": "biomejs.biome",
"editor.formatOnSave": true,
"biome.enabled": true,
"editor.codeActionsOnSave": {
"source.organizeImports.biome": "explicit",
"source.fixAll.biome": "explicit"
},
"[typescript]": {
"editor.defaultFormatter": "biomejs.biome"
},
"[typescriptreact]": {
"editor.defaultFormatter": "biomejs.biome"
},
"[javascript]": {
"editor.defaultFormatter": "biomejs.biome"
},
"[javascriptreact]": {
"editor.defaultFormatter": "biomejs.biome"
},
"[json]": {
"editor.defaultFormatter": "biomejs.biome"
},
"[jsonc]": {
"editor.defaultFormatter": "biomejs.biome"
}
}
================================================
FILE: CONTRIBUTING.md
================================================
# Contributing
**IMPORTANT:** This project only accepts contributions based on [lucide icons](https://lucide.dev/). Pull requests containing custom icons or icons from other icon packs will be closed.
**Animation Quality:** Pull requests with simple path length animations (`strokeDasharray`/`strokeDashoffset` "drawing" effect) will likely be rejected. This type of animation looks generic and doesn't add meaningful interaction. We're looking for creative, purposeful animations that enhance the icon's meaning.
We welcome contributions to our project! Please follow these steps to contribute:
1. Fork the repository on GitHub.
2. Clone your forked repository to your local machine:
```
git clone https://github.com/pqoqubbw/icons.git
```
3. Navigate to the project directory:
```
cd icons
```
4. Create a new branch for your feature or bug fix:
```
git checkout -b your-branch-name
```
5. Install the project dependencies:
```
pnpm install
```
6. **Create your animated icon:**
a. Navigate to the `/icons/` directory and create a new file with the icon name in lowercase, using hyphens for spaces (following Lucide naming convention):
```
/icons/[icon-name].tsx
```
For example: `heart-icon.tsx`, `arrow-up.tsx`, `user-profile.tsx`
b. Copy and paste the following template code into your new file:
```tsx
'use client';
import { useAnimation } from 'motion/react';
import type { HTMLAttributes } from 'react';
import { forwardRef, useCallback, useImperativeHandle, useRef } from 'react';
import { cn } from '@/lib/utils';
export interface [YourIconName]IconHandle {
startAnimation: () => void;
stopAnimation: () => void;
}
interface [YourIconName]IconProps extends HTMLAttributes<HTMLDivElement> {
size?: number;
}
const [YourIconName]Icon = forwardRef<[YourIconName]IconHandle, [YourIconName]IconProps>(
({ onMouseEnter, onMouseLeave, className, size = 28, ...props }, ref) => {
const controls = useAnimation();
const isControlledRef = useRef(false);
useImperativeHandle(ref, () => {
isControlledRef.current = true;
return {
startAnimation: () => controls.start('animate'),
stopAnimation: () => controls.start('normal'),
};
});
const handleMouseEnter = useCallback(
(e: React.MouseEvent<HTMLDivElement>) => {
if (!isControlledRef.current) {
controls.start('animate');
} else {
onMouseEnter?.(e);
}
},
[controls, onMouseEnter]
);
const handleMouseLeave = useCallback(
(e: React.MouseEvent<HTMLDivElement>) => {
if (!isControlledRef.current) {
controls.start('normal');
} else {
onMouseLeave?.(e);
}
},
[controls, onMouseLeave]
);
return (
<div
className={cn(className)}
onMouseEnter={handleMouseEnter}
onMouseLeave={handleMouseLeave}
{...props}
>
<svg
xmlns="http://www.w3.org/2000/svg"
width={size}
height={size}
viewBox="0 0 24 24"
fill="none"
stroke="currentColor"
strokeWidth="2"
strokeLinecap="round"
strokeLinejoin="round"
>
{/* your svg code here */}
</svg>
</div>
);
}
);
[YourIconName]Icon.displayName = '[YourIconName]Icon';
export { [YourIconName]Icon };
```
c. Replace `[YourIconName]` with your icon name in **PascalCase** (e.g., `HeartIcon`, `ArrowUp`, `UserProfile`).
d. Find your icon on [lucide.dev](https://lucide.dev/), copy the SVG path elements, and replace the `{/* your svg code here */}` comment with the actual SVG content.
e. Add your animation logic using Framer Motion's `motion` components and the `controls` object to create engaging hover animations.
7. **Add your icon to the icon list:**
a. Open the `icons/index.tsx` file.
b. Import your new icon component at the top of the file:
```tsx
import { [YourIconName]Icon } from './[icon-name]';
```
c. Add your icon to the `ICON_LIST` array at the very beginning (top) of the list in this format:
```tsx
{
name: '[icon-name]',
icon: [YourIconName]Icon,
keywords: ['keyword1', 'keyword2', 'keyword3'],
},
```
For example:
```tsx
{
name: 'smile-plus',
icon: SmilePlusIcon,
keywords: ['smile', 'plus', 'emotion', 'face'],
},
```
Note: Use the exact icon name, keywords, and other data from the [lucide.dev](https://lucide.dev/) website for your specific icon.
8. **Update the registry (for new icons):**
After creating a new icon, you need to update the registry so it can be used with the shadcn CLI:
```
pnpm run gen-cli
```
This command will automatically sync your new icon to the registry and build the necessary JSON files.
9. Build the project to check for errors:
```
pnpm build
```
10. Test the application to ensure your changes work as expected:
```
pnpm lint
```
11. Commit your changes:
```
git commit -m "Add [icon-name] animated icon"
```
12. Push your changes to your fork:
```
git push origin your-branch-name
```
13. Open a pull request on the original repository with a clear description of the icon you've added and the animation you've implemented.
Thank you for contributing to our project!
================================================
FILE: LICENSE
================================================
MIT License
Copyright (c) 2024-2026 pqoqubbw
Permission is hereby granted, free of charge, to any person obtaining a copy
of this software and associated documentation files (the "Software"), to deal
in the Software without restriction, including without limitation the rights
to use, copy, modify, merge, publish, distribute, sublicense, and/or sell
copies of the Software, and to permit persons to whom the Software is
furnished to do so, subject to the following conditions:
The above copyright notice and this permission notice shall be included in all
copies or substantial portions of the Software.
THE SOFTWARE IS PROVIDED "AS IS", WITHOUT WARRANTY OF ANY KIND, EXPRESS OR
IMPLIED, INCLUDING BUT NOT LIMITED TO THE WARRANTIES OF MERCHANTABILITY,
FITNESS FOR A PARTICULAR PURPOSE AND NONINFRINGEMENT. IN NO EVENT SHALL THE
AUTHORS OR COPYRIGHT HOLDERS BE LIABLE FOR ANY CLAIM, DAMAGES OR OTHER
LIABILITY, WHETHER IN AN ACTION OF CONTRACT, TORT OR OTHERWISE, ARISING FROM,
OUT OF OR IN CONNECTION WITH THE SOFTWARE OR THE USE OR OTHER DEALINGS IN THE
SOFTWARE.
================================================
FILE: README.md
================================================
<a href="https://vercel.com/oss">
<img alt="Vercel OSS Program" src="https://vercel.com/oss/program-badge.svg" />
</a>
<br />
## `lucide-animated` is beautifully crafted animated icons.

**Demo** → [lucide-animated](https://lucide-animated.com)
**Sponsorship** → [lucide-animated/sponsorship](https://lucide-animated.com/sponsorship)
#### Svelte icons: [movingicons.dev](https://www.movingicons.dev/) by [@jis3r](https://github.com/jis3r)
#### Vue icons: [imfenghuang.github.io/icons](https://imfenghuang.github.io/icons/) by [@imfenghuang](https://github.com/imfenghuang)
#### Angular icons: [ajitzero/animated-icons](https://github.com/ajitzero/animated-icons) by [@ajitzero](https://github.com/ajitzero)
#### Flutter icons: [flutter_lucide_animated](https://pub.dev/packages/flutter_lucide_animated) by [@ravikovind](https://github.com/ravikovind)
## Contributing
We welcome contributions to `lucide-animated`! Please read our [contributing guidelines](CONTRIBUTING.md) on how to submit improvements and new icons.
## Terms of Use
Feel free to use these components in personal and commercial projects. However, while the tutorials and demos are available for your use as-is, they cannot be redistributed or resold. Let’s keep things fair and respect each other’s work.
If you have any questions or just want to say hi, feel free to reach out to me on X 👉 [@pqoqubbw](https://x.com/pqoqubbw).
## Notes
This project is a work in progress, and i'm continuously working to improve and expand this collection. I’d love to hear your feedback or see your contributions as the project evolves!
================================================
FILE: actions/get-icon-content.ts
================================================
"use server";
import { promises as fs } from "node:fs";
import path from "node:path";
const ICONS_DIRECTORY = "icons";
export async function getIconContent(name: string): Promise<string> {
const iconsDir = path.join(process.cwd(), ICONS_DIRECTORY);
const content = await fs.readFile(
path.join(iconsDir, `${name}.tsx`),
"utf-8"
);
return content;
}
================================================
FILE: actions/get-icons.ts
================================================
import { ICON_LIST } from "@/icons";
type Icon = {
name: string;
keywords: string[];
};
const getIcons = (): Icon[] => {
return ICON_LIST.map(({ name, keywords }) => ({
name,
keywords,
}));
};
export { getIcons };
export type { Icon };
================================================
FILE: actions/open-in-v0.ts
================================================
"use server";
import { SITE } from "@/constants";
import { getIconForV0 } from "@/helpers/get-icon-for-v0";
export async function openInV0Action(name: string) {
try {
const template = await getIconForV0(name);
if (!template) {
throw new Error(`Icon ${name} not found.`);
}
const payload = {
...template,
meta: {
project: SITE.NAME,
author: SITE.AUTHOR.NAME,
url: SITE.URL,
},
source: {
title: SITE.NAME,
url: SITE.URL,
file: `${name}.tsx`,
},
};
const response = await fetch("https://v0.dev/chat/api/templates/open", {
method: "POST",
body: JSON.stringify({
version: 3,
template: payload,
}),
headers: {
"x-v0-edit-secret": process.env.V0_API_KEY ?? "",
"Content-Type": "application/json",
},
});
if (!response.ok) {
if (response.status === 403) {
throw new Error("Unauthorized");
}
console.error(
"Eror fetching /api/templates/open:",
await response.text()
);
throw new Error("Something went wrong. Please try again later.");
}
const result = await response.json();
return {
error: null,
url: result.url,
};
} catch (error) {
console.error(error);
if (error instanceof Error) {
return { error: error.message, url: null };
}
return { error: "Something went wrong. Please try again later.", url: "" };
}
}
================================================
FILE: app/globals.css
================================================
@import "tailwindcss";
@import "tw-animate-css";
@plugin "@toolwind/corner-shape";
@custom-variant dark (&:is(.dark *));
@theme inline {
--color-background: var(--background);
--color-foreground: var(--foreground);
--color-primary: var(--primary);
--color-secondary: var(--secondary);
--radius-lg: var(--radius);
--radius-md: calc(var(--radius) - 2px);
--radius-sm: calc(var(--radius) - 4px);
}
:root {
--background: #f2f2f2;
--foreground: #000;
--primary: #ee4822;
--secondary: #3f3f47;
--radius: 0.4rem;
}
.dark {
--background: #171717;
--foreground: #fff;
--secondary-bg: #262626;
--secondary: #d4d4d4;
}
@layer base {
* {
scrollbar-width: thin;
scrollbar-color: var(--color-neutral-700) transparent;
}
html {
scroll-behavior: smooth;
-webkit-font-smoothing: antialiased;
-moz-osx-font-smoothing: grayscale;
-webkit-tap-highlight-color: transparent;
}
html[data-base-ui-scroll-locked] {
scroll-behavior: auto;
}
body {
background-color: var(--background);
color: var(--foreground);
overscroll-behavior: none;
}
::selection {
background-color: var(--primary);
color: white;
}
.root {
isolation: isolate;
display: flex;
flex-direction: column;
min-height: 100vh;
}
::-webkit-scrollbar {
width: 2px;
}
::-webkit-scrollbar-track {
background: transparent;
}
::-webkit-scrollbar-thumb {
background: var(--color-neutral-700);
border-radius: 6px;
}
kbd {
@apply flex size-5 items-center justify-center rounded-[4px] select-none;
@apply font-sans text-xs uppercase;
@apply bg-neutral-200 text-neutral-500 dark:bg-neutral-800 dark:text-neutral-300;
@apply cursor-pointer transition-transform duration-100 active:scale-95;
}
}
================================================
FILE: app/icon.tsx
================================================
import { ImageResponse } from "next/og";
export const runtime = "edge";
export const size = {
width: 31,
height: 30,
};
export const contentType = "image/png";
export default function Icon() {
return new ImageResponse(
<svg
fill="none"
height="30"
viewBox="0 0 31 30"
width="31"
xmlns="http://www.w3.org/2000/svg"
>
<path
d="M30.8574 13.4209H25.0322V24.8223H17.4414L17.4961 26.2822C17.9462 26.0015 18.5219 25.8223 19.1543 25.7988C20.6429 25.744 21.8818 26.5719 21.9219 27.6484C21.96 28.6881 20.8658 29.576 19.4502 29.6855V29.6924L17.5859 29.7617C17.043 29.7816 16.5855 29.3565 16.5654 28.8135L16.5303 27.8643H16.5312C16.531 27.8588 16.5305 27.8531 16.5303 27.8477C16.5292 27.8173 16.5324 27.787 16.5332 27.7568L16.4229 24.8223H13.2686L13.1494 27.9941C13.1502 28.0242 13.1534 28.0546 13.1523 28.085C13.1521 28.0902 13.1517 28.0963 13.1514 28.1016H13.1523L13.1172 29.0518C13.097 29.5946 12.6395 30.0188 12.0967 29.999L10.2324 29.9297V29.9238C8.81666 29.8144 7.7226 28.9265 7.76074 27.8867C7.80082 26.8101 9.03966 25.9813 10.5283 26.0361C11.1608 26.0596 11.7364 26.2396 12.1865 26.5205L12.25 24.8223H4.72266L5.2832 13.4209H0L14.0205 0L30.8574 13.4209Z"
fill="#EE4822"
/>
<circle cx="10.4573" cy="14.5408" fill="white" r="2.62989" />
<circle cx="17.5155" cy="14.5408" fill="white" r="2.62989" />
<circle cx="10.6948" cy="14.88" fill="black" r="0.763516" />
<circle cx="17.0064" cy="14.88" fill="black" r="0.763516" />
</svg>,
{
...size,
}
);
}
================================================
FILE: app/icons/[slug]/icon-card.tsx
================================================
"use client";
import { useMemo, useRef } from "react";
import type { Icon } from "@/actions/get-icons";
import { Card, CardActions } from "@/components/card";
import { ICON_LIST } from "@/icons";
type Props = {
icon: Icon;
};
const IconCard = ({ icon }: Props) => {
const animationRef = useRef<{
startAnimation: () => void;
stopAnimation: () => void;
}>(null);
const IconComponent = useMemo(() => {
return ICON_LIST.find((item) => item.name === icon.name)?.icon;
}, [icon.name]);
if (!IconComponent) {
return null;
}
return (
<Card
animationRef={animationRef}
className="w-full min-[880px]:w-auto"
onMouseEnter={() => animationRef.current?.startAnimation()}
onMouseLeave={() => animationRef.current?.stopAnimation()}
>
<IconComponent
className="flex items-center justify-center [&>svg]:size-12 [&>svg]:text-neutral-800 dark:[&>svg]:text-neutral-100"
ref={animationRef}
/>
<CardActions alwaysVisible name={icon.name} />
</Card>
);
};
export { IconCard };
================================================
FILE: app/icons/[slug]/page.tsx
================================================
import { ArrowLeftIcon } from "lucide-react";
import type { Metadata } from "next";
import Link from "next/link";
import { notFound } from "next/navigation";
import { CliBlock } from "@/components/cli-block";
import { LINK, SITE } from "@/constants";
import { ICON_LIST } from "@/icons";
import { kebabToPascalCase } from "@/lib/kebab-to-pascal";
import { BreadcrumbJsonLd } from "@/seo/json-ld";
import { baseMetadata } from "@/seo/metadata";
import { IconCard } from "./icon-card";
import { SimilarIcons } from "./similar-icons";
type Props = {
params: Promise<{ slug: string }>;
};
const getIconBySlug = (slug: string) => {
return ICON_LIST.find((icon) => icon.name === slug);
};
export const generateStaticParams = () => {
return ICON_LIST.map((icon) => ({
slug: icon.name,
}));
};
export const generateMetadata = async ({
params,
}: Props): Promise<Metadata> => {
const { slug } = await params;
const icon = getIconBySlug(slug);
if (!icon) {
return {
title: "Icon Not Found",
};
}
const pascalName = kebabToPascalCase(slug);
const [keyword] = pascalName.split("Icon");
const title = `${keyword} Icon - Animated React Icon`;
const description = `Free animated ${icon.name} icon for React. Smooth Motion-powered animation, copy-paste ready. Keywords: ${icon.keywords.slice(0, 5).join(", ")}.`;
return {
title,
description,
alternates: {
canonical: `/icons/${slug}`,
},
openGraph: {
...baseMetadata.openGraph,
title: `${pascalName} | ${SITE.NAME}`,
description,
url: `${SITE.URL}/icons/${slug}`,
type: "website",
},
twitter: {
...baseMetadata.twitter,
title: `${pascalName} | ${SITE.NAME}`,
description,
},
keywords: [
...icon.keywords,
"animated icon",
"react icon",
"motion icon",
`${icon.name} animation`,
`${icon.name} react`,
],
};
};
const IconJsonLd = ({ icon }: { icon: (typeof ICON_LIST)[number] }) => {
const pascalName = kebabToPascalCase(icon.name);
const jsonLd = {
"@context": "https://schema.org",
"@type": "SoftwareSourceCode",
name: pascalName,
description: `Animated ${icon.name} icon component for React`,
codeRepository: LINK.GITHUB,
programmingLanguage: ["TypeScript", "React"],
license: LINK.LICENSE,
isPartOf: {
"@type": "SoftwareSourceCode",
name: SITE.NAME,
url: SITE.URL,
},
keywords: icon.keywords.join(", "),
};
return (
<script
// biome-ignore lint/security/noDangerouslySetInnerHtml: ignore
dangerouslySetInnerHTML={{ __html: JSON.stringify(jsonLd) }}
type="application/ld+json"
/>
);
};
const IconPage = async ({ params }: Props) => {
const { slug } = await params;
const icon = getIconBySlug(slug);
if (!icon) {
notFound();
}
const pascalName = kebabToPascalCase(slug);
return (
<>
<BreadcrumbJsonLd
items={[
{ name: "Home", url: SITE.URL },
{ name: "Icons", url: `${SITE.URL}/icons` },
{ name: pascalName, url: `${SITE.URL}/icons/${slug}` },
]}
/>
<IconJsonLd icon={icon} />
<section className="mx-auto mt-12 flex w-full max-w-[1292px] flex-col items-start px-4 min-[880px]:my-[60px]">
<Link
className="mb-8 flex items-center gap-2 font-sans text-secondary text-sm transition-[color] duration-100 hover:text-primary focus-visible:outline-1 focus-visible:outline-primary focus-visible:outline-offset-2"
href="/"
>
<ArrowLeftIcon className="size-4" />
Back to all icons
</Link>
<div className="flex w-full flex-col gap-6 min-[880px]:flex-row min-[880px]:items-center">
<IconCard icon={icon} />
<div className="flex h-full flex-col gap-1">
<h1 className="font-sans text-[28px] min-[640px]:text-[36px]">
{pascalName}
</h1>
<p className="font-mono text-secondary text-sm">
Animated {icon.name.replace(/-/g, " ")} icon for React
</p>
<CliBlock
className="mt-7 hidden px-0 min-[880px]:flex"
staticIconName={slug}
/>
</div>
</div>
<CliBlock
className="mt-8 flex px-0 min-[880px]:hidden"
staticIconName={slug}
/>
<div className="mt-12">
<h2 className="mb-3 font-sans text-xl">Keywords</h2>
<div className="flex flex-wrap gap-2">
{icon.keywords.map((keyword, index) => (
<span
className="supports-[corner-shape:squircle]:corner-squircle rounded-[12px] bg-neutral-200 px-3 py-1 font-mono text-secondary text-sm supports-[corner-shape:squircle]:rounded-[20px] dark:bg-[#262626]"
key={`${keyword}-${index}`}
>
{keyword}
</span>
))}
</div>
</div>
<SimilarIcons currentIcon={icon} />
</section>
</>
);
};
export default IconPage;
================================================
FILE: app/icons/[slug]/similar-icons.tsx
================================================
"use client";
import Link from "next/link";
import { useMemo, useRef } from "react";
import type { Icon } from "@/actions/get-icons";
import { Card, CardTitle } from "@/components/card";
import { ICON_LIST } from "@/icons";
type Props = {
currentIcon: Icon;
};
const ICON_MAP = new Map(ICON_LIST.map((item) => [item.name, item.icon]));
const SimilarIconItem = ({
icon,
Icon,
}: {
icon: Icon;
Icon: React.ElementType | undefined;
}) => {
const animationRef = useRef<{
startAnimation: () => void;
stopAnimation: () => void;
}>(null);
if (!Icon) {
return null;
}
return (
<Link
className="focus-visible:outline-1 focus-visible:outline-primary focus-visible:outline-offset-2"
href={`/icons/${icon.name}`}
>
<Card
animationRef={animationRef}
className="pb-[50px]"
onMouseEnter={() => animationRef.current?.startAnimation()}
onMouseLeave={() => animationRef.current?.stopAnimation()}
>
<Icon
className="flex items-center justify-center [&>svg]:size-10 [&>svg]:text-neutral-800 dark:[&>svg]:text-neutral-100"
ref={animationRef}
/>
<CardTitle>{icon.name}</CardTitle>
</Card>
</Link>
);
};
const SimilarIcons = ({ currentIcon }: Props) => {
const similarIcons = useMemo(() => {
const currentKeywords = new Set(currentIcon.keywords);
const scored = ICON_LIST.filter((icon) => icon.name !== currentIcon.name)
.map((icon) => {
const sharedKeywords = icon.keywords.filter((kw) =>
currentKeywords.has(kw)
).length;
return { icon, score: sharedKeywords };
})
.filter((item) => item.score > 0)
.sort((a, b) => b.score - a.score)
.slice(0, 6);
return scored.map((item) => item.icon);
}, [currentIcon]);
if (similarIcons.length === 0) {
return null;
}
return (
<div className="mt-12 w-full">
<h2 className="mb-4 font-sans text-xl">Similar Icons</h2>
<div className="grid grid-cols-[repeat(auto-fill,minmax(200px,1fr))] gap-[3px]">
{similarIcons.map((icon) => (
<SimilarIconItem
Icon={ICON_MAP.get(icon.name) ?? undefined}
icon={icon}
key={icon.name}
/>
))}
</div>
</div>
);
};
export { SimilarIcons };
================================================
FILE: app/layout.tsx
================================================
import type { Viewport } from "next";
import localFont from "next/font/local";
import "./globals.css";
import { CircleXIcon, TriangleAlertIcon } from "lucide-react";
import { Geist, Geist_Mono } from "next/font/google";
import { NuqsAdapter } from "nuqs/adapters/next/app";
import { Toaster } from "sonner";
import { Analytics } from "@/components/analytics";
import { Footer } from "@/components/footer";
import { Header } from "@/components/header";
import { PackageNameProvider } from "@/providers/package-name";
import { ThemeProvider } from "@/providers/theme";
import { JsonLdScripts } from "@/seo/json-ld";
import { baseMetadata } from "@/seo/metadata";
const andaleMonoLocal = localFont({
src: "../fonts/ANDALEMO.woff",
variable: "--font-mono",
display: "swap",
});
const gtCinetypeLocal = localFont({
src: "../fonts/GT-Cinetype-Regular.woff",
variable: "--font-sans",
display: "swap",
weight: "400",
});
const geistMono = Geist_Mono({
subsets: ["latin"],
variable: "--font-mono",
display: "swap",
});
const geist = Geist({
subsets: ["latin"],
variable: "--font-sans",
display: "swap",
});
const useProductionFonts =
process.env.NODE_ENV === "production" ||
process.env.USE_PRODUCTION_FONTS === "true";
const andaleMono = useProductionFonts ? andaleMonoLocal : geistMono;
const gtCinetype = useProductionFonts ? gtCinetypeLocal : geist;
export const metadata = baseMetadata;
export const viewport: Viewport = {
width: "device-width",
initialScale: 1,
userScalable: false,
maximumScale: 1,
minimumScale: 1,
};
export default function RootLayout({
children,
}: Readonly<{
children: React.ReactNode;
}>) {
return (
<html
className={`${andaleMono.variable} ${gtCinetype.variable}`}
lang="en"
suppressHydrationWarning
>
<head>
<JsonLdScripts />
</head>
<body
className={`${gtCinetype.className} relative bg-background antialiased`}
>
<div className="root">
<ThemeProvider
attribute="class"
defaultTheme="system"
disableTransitionOnChange
enableSystem
>
<PackageNameProvider>
<Header />
<main className="flex-1">
<NuqsAdapter>
{children}
<Toaster
icons={{
error: (
<CircleXIcon className="size-4 text-red-600 dark:text-red-400" />
),
warning: (
<TriangleAlertIcon className="size-4 text-yellow-500 dark:text-yellow-400" />
),
}}
position="top-center"
toastOptions={{
classNames: {
toast:
"!bg-white !px-4 !py-4 !flex-wrap dark:!bg-black !gap-0 !border-neutral-900/5 dark:!border-neutral-100/10 supports-[corner-shape:squircle]:!corner-squircle supports-[corner-shape:squircle]:!rounded-[30px] !rounded-[14px]",
title: "font-sans text-black dark:!text-white",
icon: "translate-y-[-9.5px]",
actionButton:
"!mt-2 w-full flex items-center justify-center !font-sans !bg-primary focus-visible:outline-primary cursor-pointer !h-8 !text-[14px] transition-colors duration-100 hover:!bg-[color-mix(in_oklab,var(--color-primary),black_10%)] focus-visible:outline-1 focus-visible:outline-offset-1 supports-[corner-shape:squircle]:!corner-squircle supports-[corner-shape:squircle]:!rounded-[30px] !rounded-[14px]",
description:
"font-sans text-secondary dark:!text-secondary",
},
}}
/>
</NuqsAdapter>
</main>
<Analytics />
<Footer />
</PackageNameProvider>
</ThemeProvider>
</div>
</body>
</html>
);
}
================================================
FILE: app/llms.txt/route.ts
================================================
import { getIcons } from "@/actions/get-icons";
import { LINK, SITE } from "@/constants";
export function GET() {
const icons = getIcons();
const iconNames = icons.map((icon) => icon.name).join(", ");
const content = `# ${SITE.NAME}
> Beautifully crafted animated icons
${SITE.NAME} is an open-source (MIT License) collection of smooth animated icons for React projects.
## Overview
- Website: ${SITE.URL}
- GitHub: ${LINK.GITHUB}
- Author: ${SITE.AUTHOR.TWITTER} (${LINK.TWITTER})
## Tech Stack
- React components with TypeScript
- Animations powered by Motion (${LINK.MOTION})
- Based on Lucide icons (${LINK.LUCIDE})
## Installation
\`\`\`bash
npx shadcn@latest add "${SITE.URL}/r/{icon-name}.json"
\`\`\`
Replace {icon-name} with the desired icon name (kebab-case).
## Available Icons (${icons.length} total)
${iconNames}
## Usage
Each icon is a React component that animates on hover. Example:
\`\`\`tsx
import { Activity } from '@/components/icons/activity';
export function MyComponent() {
return <Activity className="size-6" />;
}
\`\`\`
## Ports
- Svelte: https://www.movingicons.dev/ by @jis3r
- Vue: https://imfenghuang.github.io/icons/ by @imfenghuang
## License
MIT License - free for personal and commercial use.
## Contributing
Contributions welcome! See CONTRIBUTING.md for guidelines.
`;
return new Response(content, {
headers: {
"Content-Type": "text/plain; charset=utf-8",
},
});
}
================================================
FILE: app/page.tsx
================================================
import { getIcons } from "@/actions/get-icons";
import { CliBlock } from "@/components/cli-block";
import { CommentBlock } from "@/components/comment";
import { IconsList } from "@/components/list";
import { LINK } from "@/constants";
const Home = () => {
const icons = getIcons();
return (
<section className="mx-auto mt-[60px] flex w-full flex-col items-center justify-center">
<h1 className="px-4 text-center font-sans text-[32px] min-[640px]:text-[42px]">
Beautifully crafted <br />
animated icons<span className="text-primary">*</span>
</h1>
<p className="mt-5 max-w-[582px] px-4 text-center font-mono text-secondary text-sm">
an open-source (
<a
className="underline underline-offset-3 transition-[decoration-color] duration-100 focus-within:outline-offset-0 hover:decoration-primary focus-visible:outline-1 focus-visible:outline-primary"
href={`${LINK.GITHUB}/blob/main/LICENSE`}
rel="noopener noreferrer"
tabIndex={0}
target="_blank"
>
MIT License
</a>
) collection of smooth animated icons for your projects. feel free to
use them, share your feedback, and let's make this library awesome
together
</p>
<p className="mt-4 font-mono text-secondary text-xs min-[640px]:text-sm">
Crafted with{" "}
<a
className="bg-[#E5E5E5] px-2 py-0.5 text-primary focus-within:outline-offset-1 focus-visible:outline-1 focus-visible:outline-primary dark:bg-[#262626]"
href={LINK.MOTION}
rel="noopener noreferrer"
tabIndex={0}
target="_blank"
>
Motion
</a>{" "}
&{" "}
<a
className="bg-[#E5E5E5] px-2 py-0.5 text-primary focus-within:outline-offset-1 focus-visible:outline-1 focus-visible:outline-primary dark:bg-[#262626]"
href={LINK.LUCIDE}
rel="noopener noreferrer"
tabIndex={0}
target="_blank"
>
Lucide
</a>
</p>
<CliBlock icons={icons.filter((icon) => icon.name.length <= 20)} />
<CommentBlock />
<IconsList icons={icons} />
</section>
);
};
export default Home;
================================================
FILE: app/robots.ts
================================================
import type { MetadataRoute } from "next";
import { SITE } from "@/constants";
export default function robots(): MetadataRoute.Robots {
return {
rules: {
userAgent: "*",
allow: "/",
},
sitemap: `${SITE.URL}/sitemap.xml`,
};
}
================================================
FILE: app/sitemap.ts
================================================
import type { MetadataRoute } from "next";
import { SITE } from "@/constants";
import { ICON_LIST } from "@/icons";
// biome-ignore lint/suspicious/useAwait: ignore
export default async function sitemap(): Promise<MetadataRoute.Sitemap> {
const iconPages: MetadataRoute.Sitemap = ICON_LIST.map((icon) => ({
url: `${SITE.URL}/icons/${icon.name}`,
lastModified: new Date(),
changeFrequency: "monthly",
priority: 0.7,
}));
return [
{
url: SITE.URL,
lastModified: new Date(),
changeFrequency: "weekly",
priority: 1,
},
{
url: `${SITE.URL}/sponsorship`,
lastModified: new Date(),
changeFrequency: "monthly",
priority: 0.5,
},
...iconPages,
];
}
================================================
FILE: app/sponsorship/page.tsx
================================================
import { AmountSelector } from "@/components/sponsorship/amount-selector";
import { createMetadata } from "@/seo/metadata";
export const metadata = createMetadata({
title: "Sponsor lucide-animated",
description:
"Support the development of lucide-animated - free open-source animated React icons library. Your sponsorship helps maintain and grow this MIT licensed project.",
canonical: "/sponsorship",
ogTitle: "Sponsor lucide-animated | Support Open Source",
});
const SUPPORT_LIST = [
{
price: 5,
link: "https://www.creem.io/payment/prod_1G8q9yoWDEMUuMaYXjdMnk",
},
{
price: 10,
link: "https://www.creem.io/payment/prod_2fx79crTzRv8c6DCBiYSt4",
},
{
price: 25,
link: "https://www.creem.io/payment/prod_5GxIWzOFwl7JvFxtWV1x1O",
},
{
price: 50,
link: "https://www.creem.io/payment/prod_4wOq9XhPSA4jIt1EBdVEcR",
},
{
price: 100,
link: "https://www.creem.io/payment/prod_2BWHaJvZZUTYQONb5xpQIR",
},
{
price: 200,
link: "https://www.creem.io/payment/prod_49xErbm5DmJJZDBW7lA2lO",
},
{
price: 500,
link: "https://www.creem.io/payment/prod_2HSF38lRw7yMNy8Lb9f3p1",
},
];
const Sponsorship = () => {
return (
<section className="mx-auto mt-[60px] flex w-full flex-col items-center justify-center overflow-hidden pb-20">
<h1 className="px-4 text-center font-sans text-[32px] min-[640px]:text-[42px]">
Support the project
</h1>
<p className="mt-5 max-w-[582px] px-4 text-center font-mono text-secondary text-sm">
this is a place for those who want to go beyond a simple thank you.
I'm grateful for any kind of support, whether it's just a DM
with kind words or something more. your donation is by no means required
- this page is made just for those who asked for it. I am incredibly
grateful for any support you choose to provide
<br />
<br />
Choose amount you want to support the project with:
</p>
<AmountSelector amounts={SUPPORT_LIST} />
</section>
);
};
export { SUPPORT_LIST };
export default Sponsorship;
================================================
FILE: biome.jsonc
================================================
{
"$schema": "./node_modules/@biomejs/biome/configuration_schema.json",
"extends": [
"ultracite/biome/core",
"ultracite/biome/react",
"ultracite/biome/next"
],
"linter": {
"rules": {
"style": {
"useBlockStatements": "off",
"useConsistentTypeDefinitions": "off",
"noNestedTernary": "off"
},
"complexity": {
"noForEach": "off"
},
"a11y": {
"noSvgWithoutTitle": "off",
"noNoninteractiveElementInteractions": "off",
"noStaticElementInteractions": "off"
},
"suspicious": {
"noArrayIndexKey": "off",
"noSparseArray": "off"
},
"performance": {
"noNamespaceImport": "off"
}
}
}
}
================================================
FILE: components/analytics.tsx
================================================
import { OpenPanelComponent } from "@openpanel/nextjs";
const ANALYTIC_EVENT = {
HEADER_GITHUB: "header-github",
ICON_COPY: "icon-copy",
ICON_COPY_TERMINAL: "icon-copy-terminal",
ICON_OPEN_IN_V0: "icon-open-in-v0",
COMMENT_ANIMATION_DEV_LINK: "comment-link-click",
COMMENT_BUTTON_CLICK: "comment-button-click",
} as const;
const Analytics = () => {
if (process.env.NODE_ENV !== "production") return null;
return (
<OpenPanelComponent
clientId={process.env.CLIENT_ID ?? ""}
clientSecret={process.env.SECRET_KEY ?? ""}
trackScreenViews
/>
);
};
export { Analytics, ANALYTIC_EVENT };
================================================
FILE: components/card.tsx
================================================
"use client";
import { useOpenPanel } from "@openpanel/nextjs";
import { Copy, PauseIcon, PlayIcon, Terminal } from "lucide-react";
import type { RefObject } from "react";
import { useEffect, useRef, useState } from "react";
import { toast } from "sonner";
import { getIconContent } from "@/actions/get-icon-content";
import type { Icon } from "@/actions/get-icons";
import { openInV0Action } from "@/actions/open-in-v0";
import { ANALYTIC_EVENT } from "@/components/analytics";
import type { IconStatus } from "@/components/ui/icon-state";
import { IconState } from "@/components/ui/icon-state";
import {
Tooltip,
TooltipContent,
TooltipProvider,
TooltipTrigger,
} from "@/components/ui/tooltip";
import { SITE } from "@/constants";
import { useTouchDevice } from "@/hooks/use-touch-device";
import { getPackageManagerPrefix } from "@/lib/get-package-manager-prefix";
import { cn } from "@/lib/utils";
import { usePackageNameContext } from "@/providers/package-name";
const V0Icon = ({ className }: { className?: string }) => {
return (
<svg
className={className}
fill="currentColor"
viewBox="0 0 40 20"
xmlns="http://www.w3.org/2000/svg"
>
<path d="M23.3919 0H32.9188C36.7819 0 39.9136 3.13165 39.9136 6.99475V16.0805H36.0006V6.99475C36.0006 6.90167 35.9969 6.80925 35.9898 6.71766L26.4628 16.079C26.4949 16.08 26.5272 16.0805 26.5595 16.0805H36.0006V19.7762H26.5595C22.6964 19.7762 19.4788 16.6139 19.4788 12.7508V3.68923H23.3919V12.7508C23.3919 12.9253 23.4054 13.0977 23.4316 13.2668L33.1682 3.6995C33.0861 3.6927 33.003 3.68923 32.9188 3.68923H23.3919V0Z" />
<path d="M13.7688 19.0956L0 3.68759H5.53933L13.6231 12.7337V3.68759H17.7535V17.5746C17.7535 19.6705 15.1654 20.6584 13.7688 19.0956Z" />
</svg>
);
};
interface CardProps extends React.ComponentPropsWithoutRef<"div"> {
children: React.ReactNode;
animationRef?: RefObject<{
startAnimation: () => void;
stopAnimation: () => void;
} | null>;
}
const Card = ({ children, animationRef, className, ...props }: CardProps) => {
const isTouchDevice = useTouchDevice();
const [isAnimating, setIsAnimating] = useState(false);
const timeoutRef = useRef<NodeJS.Timeout | null>(null);
useEffect(() => {
return () => {
if (timeoutRef.current) {
clearTimeout(timeoutRef.current);
}
};
}, []);
const handlePlayClick = (e: React.MouseEvent) => {
e.stopPropagation();
if (isAnimating) {
animationRef?.current?.stopAnimation();
setIsAnimating(false);
if (timeoutRef.current) {
clearTimeout(timeoutRef.current);
timeoutRef.current = null;
}
} else {
animationRef?.current?.startAnimation();
setIsAnimating(true);
timeoutRef.current = setTimeout(() => {
setIsAnimating(false);
animationRef?.current?.stopAnimation();
}, 1500);
}
};
return (
<div
className={cn(
"group/card supports-[corner-shape:squircle]:corner-squircle relative flex flex-col items-center justify-center rounded-[20px] bg-white px-[28px] pt-[50px] supports-[corner-shape:squircle]:rounded-[30px] dark:bg-[#0A0A0A]",
className
)}
{...props}
onMouseEnter={isTouchDevice ? undefined : props.onMouseEnter}
onMouseLeave={isTouchDevice ? undefined : props.onMouseLeave}
>
{isTouchDevice && (
<button
aria-label={isAnimating ? "Stop animation" : "Play animation"}
aria-pressed={isAnimating}
className="supports-[corner-shape:squircle]:corner-squircle absolute top-3 right-3 z-10 flex size-10 cursor-pointer items-center justify-center rounded-[14px] bg-neutral-200/20 transition-[background-color] duration-100 focus-within:-outline-offset-1 hover:bg-neutral-200 focus-visible:outline-1 focus-visible:outline-primary supports-[corner-shape:squircle]:rounded-[20px] dark:bg-neutral-800/20 dark:hover:bg-neutral-700"
onClick={handlePlayClick}
type="button"
>
{isAnimating ? (
<PauseIcon
aria-hidden="true"
className="size-4 text-neutral-800 dark:text-neutral-100"
/>
) : (
<PlayIcon
aria-hidden="true"
className="size-4 text-neutral-800 dark:text-neutral-100"
/>
)}
</button>
)}
{children}
</div>
);
};
const Title = ({ children }: { children: React.ReactNode }) => {
return (
<p className="mt-[36px] text-center font-mono text-[#9F9FA9] text-xs dark:text-[#D4D4D4]">
{children}
</p>
);
};
const CopyCLIAction = ({ name }: Pick<Icon, "name">) => {
const op = useOpenPanel();
const { packageName } = usePackageNameContext();
const [state, setState] = useState<IconStatus>("idle");
const handleCopy = async () => {
if (state !== "idle") return;
try {
op.track(ANALYTIC_EVENT.ICON_COPY_TERMINAL, { icon: `${name}.tsx` });
await navigator.clipboard.writeText(
`${getPackageManagerPrefix(packageName)} shadcn@latest add "${SITE.URL}/r/${name}.json"`
);
setState("done");
setTimeout(() => setState("idle"), 2000);
} catch {
toast.error("Failed to copy to clipboard", {
description: "Please check your browser permissions.",
});
setState("error");
setTimeout(() => setState("idle"), 2000);
}
};
return (
<Tooltip>
<TooltipTrigger
aria-disabled={state !== "idle"}
aria-label="Copy shadcn/cli command"
className="supports-[corner-shape:squircle]:corner-squircle flex size-10 cursor-pointer items-center justify-center rounded-[14px] bg-neutral-200/20 transition-[background-color] duration-100 focus-within:-outline-offset-1 hover:bg-neutral-200 focus-visible:outline-1 focus-visible:outline-primary supports-[corner-shape:squircle]:rounded-[20px] dark:bg-neutral-800/20 dark:hover:bg-neutral-700"
data-busy={state !== "idle" ? "" : undefined}
onClick={handleCopy}
tabIndex={0}
>
<IconState status={state}>
<Terminal
aria-hidden="true"
className="size-4 text-neutral-800 dark:text-neutral-100"
/>
</IconState>
</TooltipTrigger>
<TooltipContent>
Copy{" "}
<code className="rounded-[4px] bg-neutral-50/20 px-1 py-0.5 font-mono">
shadcn/cli
</code>{" "}
command
</TooltipContent>
</Tooltip>
);
};
const CopyCodeAction = ({ name }: Pick<Icon, "name">) => {
const op = useOpenPanel();
const [state, setState] = useState<IconStatus>("idle");
const handleCopy = async () => {
if (state !== "idle") return;
try {
setState("loading");
op.track(ANALYTIC_EVENT.ICON_COPY, { icon: `${name}.tsx` });
const content = await getIconContent(name);
await navigator.clipboard.writeText(content);
setState("done");
setTimeout(() => setState("idle"), 2000);
} catch {
toast.error("Failed to copy to clipboard", {
description: "Please check your browser permissions.",
});
setState("error");
setTimeout(() => setState("idle"), 2000);
}
};
return (
<Tooltip>
<TooltipTrigger
aria-disabled={state !== "idle"}
aria-label="Copy .tsx code"
className="supports-[corner-shape:squircle]:corner-squircle flex size-10 cursor-pointer items-center justify-center rounded-[14px] bg-neutral-200/20 transition-[background-color] duration-100 focus-within:-outline-offset-1 hover:bg-neutral-200 focus-visible:outline-1 focus-visible:outline-primary supports-[corner-shape:squircle]:rounded-[20px] dark:bg-neutral-800/20 dark:hover:bg-neutral-700"
data-busy={state !== "idle" ? "" : undefined}
onClick={handleCopy}
tabIndex={0}
>
<IconState status={state}>
<Copy
aria-hidden="true"
className="size-4 text-neutral-800 dark:text-neutral-100"
/>
</IconState>
</TooltipTrigger>
<TooltipContent>
Copy{" "}
<code className="rounded-[4px] bg-neutral-50/20 px-1 py-0.5 font-mono">
.tsx
</code>{" "}
code
</TooltipContent>
</Tooltip>
);
};
const OpenInV0Action = ({ name }: Pick<Icon, "name">) => {
const op = useOpenPanel();
const [state, setState] = useState<IconStatus>("idle");
const handleOpenInV0 = async () => {
if (state !== "idle") return;
try {
setState("loading");
op.track(ANALYTIC_EVENT.ICON_OPEN_IN_V0, { icon: `${name}.tsx` });
const data = await openInV0Action(name);
if (data.url) {
const popupOpened = window.open(data.url, "_blank");
if (popupOpened === null) {
toast.warning("Pop-up window blocked.", {
description: "Click below to continue in new tab.",
duration: 5000,
action: {
label: "Open in new tab",
onClick: () => window.open(data.url, "_blank"),
},
});
setState("error");
}
} else {
setState("done");
}
setTimeout(() => setState("idle"), 2000);
} catch (_error) {
toast.error("Failed to open in v0", {
description: "Please try again later.",
});
setState("error");
setTimeout(() => setState("idle"), 2000);
}
};
return (
<Tooltip>
<TooltipTrigger
aria-disabled={state !== "idle"}
aria-label="Open in v0"
className="supports-[corner-shape:squircle]:corner-squircle flex size-10 cursor-pointer items-center justify-center rounded-[14px] bg-neutral-200/20 transition-[background-color] duration-100 focus-within:-outline-offset-1 hover:bg-neutral-200 focus-visible:outline-1 focus-visible:outline-primary supports-[corner-shape:squircle]:rounded-[20px] dark:bg-neutral-800/20 dark:hover:bg-neutral-700"
data-busy={state !== "idle" ? "" : undefined}
onClick={handleOpenInV0}
tabIndex={0}
>
<IconState status={state}>
<V0Icon
aria-hidden="true"
className="size-5 text-neutral-800 dark:text-neutral-100"
/>
</IconState>
</TooltipTrigger>
<TooltipContent>
Open in{" "}
<code className="rounded-[4px] bg-neutral-50/20 px-1 py-0.5 font-mono">
v0
</code>
</TooltipContent>
</Tooltip>
);
};
type ActionsProps = Pick<Icon, "name"> & {
alwaysVisible?: boolean;
};
const Actions = ({ name, alwaysVisible = false }: ActionsProps) => {
return (
<TooltipProvider>
<div
className={cn(
"my-6 flex items-center justify-center gap-2 transition-opacity duration-100",
alwaysVisible
? "opacity-100"
: "opacity-0 group-hover/card:opacity-100 has-data-busy:opacity-100 has-data-popup-open:opacity-100 has-focus-visible:opacity-100 [@media(hover:none)]:opacity-100"
)}
>
<CopyCodeAction name={name} />
<CopyCLIAction name={name} />
<OpenInV0Action name={name} />
</div>
</TooltipProvider>
);
};
const CardTitle = Title;
const CardActions = Actions;
export { Card, CardTitle, CardActions };
================================================
FILE: components/cli-block.tsx
================================================
"use client";
import { ScrollArea as BaseScrollArea } from "@base-ui/react/scroll-area";
import { CopyIcon } from "lucide-react";
import { useRef, useState, useTransition } from "react";
import { toast } from "sonner";
import type { Icon } from "@/actions/get-icons";
import type { IconStatus } from "@/components/ui/icon-state";
import { IconState } from "@/components/ui/icon-state";
import { Tabs, TabsContent, TabsList, TabsTrigger } from "@/components/ui/tabs";
import { TextLoop } from "@/components/ui/text-loop";
import { PACKAGE_MANAGER } from "@/constants";
import { getPackageManagerPrefix } from "@/lib/get-package-manager-prefix";
import { cn } from "@/lib/utils";
import { usePackageNameContext } from "@/providers/package-name";
type CliBlockProps = {
icons?: Icon[];
staticIconName?: string;
className?: string;
};
const CliBlock = ({ icons, staticIconName, className }: CliBlockProps) => {
const [state, setState] = useState<IconStatus>("idle");
const [_, startTransition] = useTransition();
const currentIconName = useRef(staticIconName || "");
const { packageName, setPackageName } = usePackageNameContext();
const isStatic = !!staticIconName;
const handleCopyToClipboard = () => {
startTransition(async () => {
const iconName =
staticIconName || currentIconName.current || icons?.[0]?.name || "";
try {
await navigator.clipboard.writeText(
`${getPackageManagerPrefix(packageName)} shadcn add @lucide-animated/${iconName}`
);
setState("done");
await new Promise((resolve) => setTimeout(resolve, 2000));
setState("idle");
} catch {
toast.error("Failed to copy to clipboard", {
description: "Please check your browser permissions.",
});
setState("error");
await new Promise((resolve) => setTimeout(resolve, 2000));
setState("idle");
}
});
};
return (
<div
className={cn("relative mt-[40px] w-full max-w-[642px] px-4", className)}
>
<Tabs
className="w-full"
onValueChange={setPackageName}
value={packageName}
>
<TabsList className="w-full" onClick={(e) => e.stopPropagation()}>
{Object.values(PACKAGE_MANAGER).map((pm) => (
<TabsTrigger key={pm} value={pm}>
{pm}
</TabsTrigger>
))}
</TabsList>
{Object.values(PACKAGE_MANAGER).map((pm) => (
<TabsContent
className="supports-[corner-shape:squircle]:corner-tr-squircle supports-[corner-shape:squircle]:corner-br-squircle supports-[corner-shape:squircle]:corner-bl-squircle mt-px overflow-hidden rounded-tr-[10px] rounded-br-[10px] rounded-bl-[10px] focus-within:outline-offset-0 focus-visible:outline-1 focus-visible:outline-primary supports-[corner-shape:squircle]:rounded-tr-[14px] supports-[corner-shape:squircle]:rounded-br-[14px] supports-[corner-shape:squircle]:rounded-bl-[14px]"
key={pm}
value={pm}
>
<BaseScrollArea.Root className="relative w-full overflow-hidden">
<BaseScrollArea.Viewport
className={cn(
"overflow-hidden rounded-tr-[10px] rounded-br-[10px] rounded-bl-[10px] bg-white focus-visible:outline-1 focus-visible:outline-primary focus-visible:outline-offset-0 dark:bg-white/10",
"supports-[corner-shape:squircle]:corner-tr-squircle supports-[corner-shape:squircle]:corner-br-squircle supports-[corner-shape:squircle]:corner-bl-squircle supports-[corner-shape:squircle]:rounded-tr-[14px] supports-[corner-shape:squircle]:rounded-br-[14px] supports-[corner-shape:squircle]:rounded-bl-[14px]",
"isolate whitespace-nowrap px-4 py-3 pr-20 font-mono text-sm tracking-[-0.39px]",
// left fade
"before:pointer-events-none before:absolute before:top-0 before:left-0 before:z-10 before:block before:h-full before:rounded-bl-[10px]",
"supports-[corner-shape:squircle]:before:corner-bl-squircle supports-[corner-shape:squircle]:before:rounded-bl-[14px]",
"before:transition-[width] before:duration-50 before:ease-out before:content-['']",
"before:w-[min(40px,var(--scroll-area-overflow-x-start))] before:bg-[linear-gradient(to_right,white,transparent)] dark:before:bg-[linear-gradient(to_right,rgb(47_47_47/1),transparent)] before:[--scroll-area-overflow-x-start:inherit]",
// right fade
"after:pointer-events-none after:absolute after:top-0 after:right-0 after:z-10 after:block after:h-full after:rounded-r-[10px]",
"supports-[corner-shape:squircle]:after:corner-r-squircle supports-[corner-shape:squircle]:after:rounded-r-[14px]",
"after:transition-[width] after:duration-50 after:ease-out after:content-['']",
"after:w-[calc(min(40px,var(--scroll-area-overflow-x-end,100px))+100px)] after:bg-[linear-gradient(to_left,white_0%,white_30%,transparent)] dark:after:bg-[linear-gradient(to_left,rgb(47_47_47/1)_0%,rgb(47_47_47/1)_30%,transparent)] after:[--scroll-area-overflow-x-end:inherit]"
)}
>
<span className="sr-only">
{getPackageManagerPrefix(pm)} shadcn add @lucide-animated/
{staticIconName || currentIconName.current}
</span>
<span
aria-hidden="true"
className="text-neutral-600 dark:text-neutral-400"
>
{getPackageManagerPrefix(pm)}
</span>{" "}
<span aria-hidden="true" className="text-black dark:text-white">
shadcn add @lucide-animated/
</span>
{isStatic ? (
<span className="shrink-0 text-primary">
{staticIconName}
</span>
) : (
<TextLoop
interval={1.5}
onIndexChange={(index) => {
currentIconName.current = icons?.[index]?.name || "";
}}
transition={{
duration: 0.25,
}}
variants={{
initial: {
y: -12,
rotateX: -90,
opacity: 0,
filter: "blur(2px)",
},
animate: {
y: 0,
rotateX: 0,
opacity: 1,
filter: "blur(0px)",
},
exit: {
y: 12,
rotateX: 90,
opacity: 0,
filter: "blur(2px)",
},
}}
>
{(icons || [])
.filter((icon) => icon.name.length <= 20)
.map((icon) => (
<span className="shrink-0 text-primary" key={icon.name}>
{icon.name}
</span>
))}
</TextLoop>
)}
</BaseScrollArea.Viewport>
<BaseScrollArea.Scrollbar
className="pointer-events-none absolute right-2! bottom-1! left-2! flex h-0.5 touch-none rounded bg-neutral-200 opacity-0 transition-opacity duration-100 data-hovering:pointer-events-auto data-scrolling:pointer-events-auto data-hovering:opacity-100 data-scrolling:opacity-100 data-hovering:delay-0 data-scrolling:duration-0 dark:bg-neutral-700"
keepMounted={false}
orientation="horizontal"
>
<BaseScrollArea.Thumb className="relative w-full rounded bg-neutral-600 dark:bg-neutral-400" />
</BaseScrollArea.Scrollbar>
<button
aria-disabled={state !== "idle"}
aria-label="Copy to clipboard"
className="supports-[corner-shape:squircle]:corner-squircle absolute top-1/2 right-1.5 z-20 -translate-y-1/2 cursor-pointer rounded-[6px] p-2 transition-[background-color] duration-100 focus-within:outline-offset-1 hover:bg-neutral-100 focus-visible:outline-1 focus-visible:outline-primary supports-[corner-shape:squircle]:rounded-[8px] dark:hover:bg-neutral-700"
onClick={handleCopyToClipboard}
tabIndex={0}
type="button"
>
<IconState status={state}>
<CopyIcon aria-hidden="true" className="size-4" />
</IconState>
</button>
</BaseScrollArea.Root>
</TabsContent>
))}
</Tabs>
</div>
);
};
export { CliBlock };
================================================
FILE: components/comment.client.tsx
================================================
"use client";
import { useOpenPanel } from "@openpanel/nextjs";
import { ExternalLinkIcon } from "lucide-react";
import { ANALYTIC_EVENT } from "./analytics";
const CommentAnimationsDevLinkClient = () => {
const op = useOpenPanel();
return (
<a
className="inline-block underline underline-offset-3 transition-[decoration-color,color] duration-100 focus-within:outline-offset-0 hover:text-primary hover:decoration-primary focus-visible:text-primary focus-visible:outline-1 focus-visible:outline-primary"
href="https://animations.dev/"
onClick={() => op.track(ANALYTIC_EVENT.COMMENT_ANIMATION_DEV_LINK)}
rel="noopener external"
tabIndex={0}
target="_blank"
>
animations.dev
</a>
);
};
const CommentButtonClient = () => {
const op = useOpenPanel();
return (
<a
className="supports-[corner-shape:squircle]:corner-squircle flex w-fit cursor-pointer items-center justify-center gap-1 rounded-[8px] bg-primary px-[12px] py-[4px] font-sans text-sm text-white transition-[background-color] duration-100 hover:bg-[color-mix(in_oklab,var(--color-primary),black_10%)] focus-visible:outline-1 focus-visible:outline-primary focus-visible:outline-offset-1 supports-[corner-shape:squircle]:rounded-[12px] max-[445px]:w-full"
href="https://animations.dev/"
onClick={() => op.track(ANALYTIC_EVENT.COMMENT_BUTTON_CLICK)}
rel="noopener external"
tabIndex={0}
target="_blank"
>
Take the course
<ExternalLinkIcon className="size-3" strokeWidth={2.5} />
</a>
);
};
export { CommentAnimationsDevLinkClient, CommentButtonClient };
================================================
FILE: components/comment.tsx
================================================
import {
CommentAnimationsDevLinkClient,
CommentButtonClient,
} from "./comment.client";
import { Avatar, AvatarFallback, AvatarImage } from "./ui/avatar";
const CommentBlock = () => {
return (
<div className="relative my-[40px] flex w-full max-w-[610px] flex-col items-center justify-center pl-4 after:absolute after:left-0 after:h-full after:w-[4px] after:bg-neutral-400/50 max-[655px]:px-4 max-[655px]:after:left-4">
<blockquote className="font-sans text-neutral-700 text-sm/[150%] tracking-[0.01em] before:content-[open-quote] after:content-[close-quote] max-[655px]:pl-4 dark:text-neutral-200">
these icons were a way to practice what i learned from the{" "}
<CommentAnimationsDevLinkClient /> course.
<br />
it really helped me understand how to turn simple transitions into the
polished motion you see here
</blockquote>
<div className="mt-4 flex w-full flex-wrap items-center justify-between gap-4 border-neutral-200 border-t pt-4 max-[655px]:pl-4 dark:border-neutral-800">
<div className="flex items-center gap-2">
<Avatar size="sm">
<AvatarImage
alt="Dmytro Tovstokor, the author of the lucide-animated"
className="select-none"
src="https://pqoqubbw.b-cdn.net/me.jpg"
/>
<AvatarFallback className="bg-neutral-200 font-sans dark:bg-neutral-800">
DT
</AvatarFallback>
</Avatar>
<p className="text-[13px] text-neutral-600 tracking-[0.01em] dark:text-neutral-400">
dmytro, creator of lucide-animated
</p>
</div>
<CommentButtonClient />
</div>
</div>
);
};
export { CommentBlock };
================================================
FILE: components/footer.tsx
================================================
const Footer = () => {
return (
<footer className="mt-auto mb-6 flex w-full items-center justify-center gap-1 font-sans text-secondary text-xs">
<span>analytics by</span>
<a
className="underline underline-offset-3 transition-[decoration-color] duration-100 focus-within:outline-offset-0 hover:decoration-primary focus-visible:outline-1 focus-visible:outline-primary"
href="https://openpanel.dev"
rel="noopener"
tabIndex={0}
target="_blank"
>
OpenPanel
</a>
</footer>
);
};
export { Footer };
================================================
FILE: components/github-button.tsx
================================================
import { unstable_cache } from "next/cache";
import { LINK } from "@/constants";
const DEFAULT_STARS = 6077;
const CACHE_TIME = 86_400; // 1 day
const fetchGithubStars = async (): Promise<number> => {
try {
const res = await fetch("https://api.github.com/repos/pqoqubbw/icons", {
headers: {
Authorization: `Bearer ${process.env.GITHUB_TOKEN}`,
},
});
if (!res.ok) {
return DEFAULT_STARS;
}
const data = await res.json();
return data.stargazers_count < DEFAULT_STARS
? DEFAULT_STARS
: data.stargazers_count;
} catch (error) {
console.error("Failed to fetch GitHub stars:", error);
return DEFAULT_STARS;
}
};
const getGithubStars = unstable_cache(fetchGithubStars, ["github-stars"], {
revalidate: CACHE_TIME,
});
const GithubStartsButton = async () => {
const stars =
process.env.NODE_ENV === "production"
? await getGithubStars()
: DEFAULT_STARS;
return (
<a
className="group/github-stars flex items-center gap-2 bg-white px-2.5 py-2 focus-within:outline-offset-2 focus-visible:outline-1 focus-visible:outline-primary dark:bg-white/10"
href={LINK.GITHUB}
rel="noopener noreferrer"
tabIndex={0}
target="_blank"
>
<span className="sr-only">
Star on GitHub ({stars.toLocaleString()} stars)
</span>
<svg
aria-hidden="true"
className="size-4"
fill="none"
height="96"
viewBox="0 0 98 96"
width="98"
xmlns="http://www.w3.org/2000/svg"
>
<g clipPath="url(#clip0_730_27126)">
<path
className="fill-black dark:fill-white"
d="M41.4395 69.3848C28.8066 67.8535 19.9062 58.7617 19.9062 46.9902C19.9062 42.2051 21.6289 37.0371 24.5 33.5918C23.2559 30.4336 23.4473 23.7344 24.8828 20.959C28.7109 20.4805 33.8789 22.4902 36.9414 25.2656C40.5781 24.1172 44.4062 23.543 49.0957 23.543C53.7852 23.543 57.6133 24.1172 61.0586 25.1699C64.0254 22.4902 69.2891 20.4805 73.1172 20.959C74.457 23.543 74.6484 30.2422 73.4043 33.4961C76.4668 37.1328 78.0937 42.0137 78.0937 46.9902C78.0937 58.7617 69.1934 67.6621 56.3691 69.2891C59.623 71.3945 61.8242 75.9883 61.8242 81.252L61.8242 91.2051C61.8242 94.0762 64.2168 95.7031 67.0879 94.5547C84.4102 87.9512 98 70.6289 98 49.1914C98 22.1074 75.9883 6.69539e-07 48.9043 4.309e-07C21.8203 1.92261e-07 -1.9479e-07 22.1074 -4.3343e-07 49.1914C-6.20631e-07 70.4375 13.4941 88.0469 31.6777 94.6504C34.2617 95.6074 36.75 93.8848 36.75 91.3008L36.75 83.6445C35.4102 84.2188 33.6875 84.6016 32.1562 84.6016C25.8398 84.6016 22.1074 81.1563 19.4277 74.7441C18.375 72.1602 17.2266 70.6289 15.0254 70.3418C13.877 70.2461 13.4941 69.7676 13.4941 69.1934C13.4941 68.0449 15.4082 67.1836 17.3223 67.1836C20.0977 67.1836 22.4902 68.9063 24.9785 72.4473C26.8926 75.2227 28.9023 76.4668 31.2949 76.4668C33.6875 76.4668 35.2187 75.6055 37.4199 73.4043C39.0469 71.7773 40.291 70.3418 41.4395 69.3848Z"
/>
</g>
<defs>
<clipPath id="clip0_730_27126">
<rect fill="white" height="96" width="98" />
</clipPath>
</defs>
</svg>
<span
aria-hidden="true"
className="font-sans text-black text-sm tabular-nums tracking-[-0.4px] [text-shadow:-0.1px_0_0_currentColor,0.1px_0_0_currentColor] dark:text-white"
>
{stars.toLocaleString()}
</span>
<svg
aria-hidden="true"
className="text-neutral-400 transition-colors duration-100 group-hover/github-stars:text-[#e3b341]"
fill="none"
height="13"
viewBox="0 0 13 13"
width="13"
xmlns="http://www.w3.org/2000/svg"
>
<path
clipRule="evenodd"
d="M6.45803 2.89654e-06C6.6061 0.000101587 6.75082 0.0440267 6.87397 0.126243C6.99712 0.208458 7.09317 0.325286 7.15003 0.462003L8.56003 3.855L12.224 4.148C12.3717 4.15988 12.5125 4.2152 12.6287 4.30699C12.7449 4.39878 12.8314 4.52293 12.8772 4.66379C12.923 4.80464 12.926 4.9559 12.8859 5.09849C12.8459 5.24108 12.7645 5.36861 12.652 5.465L9.86103 7.855L10.714 11.43C10.7483 11.574 10.7392 11.725 10.6878 11.8638C10.6364 12.0027 10.5451 12.1233 10.4253 12.2103C10.3056 12.2973 10.1627 12.347 10.0148 12.353C9.86685 12.359 9.72045 12.3211 9.59403 12.244L6.45603 10.33L3.32103 12.245C3.19461 12.3221 3.04821 12.36 2.90027 12.354C2.75234 12.348 2.60949 12.2983 2.48972 12.2113C2.36996 12.1243 2.27864 12.0037 2.22726 11.8649C2.17589 11.726 2.16676 11.575 2.20103 11.431L3.05303 7.857L0.263028 5.467C0.150277 5.37074 0.0685828 5.24323 0.028266 5.10056C-0.0120509 4.9579 -0.00918217 4.80648 0.0365099 4.66545C0.082202 4.52441 0.168667 4.40008 0.284984 4.30816C0.401301 4.21624 0.54225 4.16086 0.690028 4.149L4.35303 3.856L5.76303 0.463003C5.81993 0.325626 5.91638 0.208264 6.04013 0.125824C6.16387 0.0433847 6.30933 -0.000410263 6.45803 2.89654e-06Z"
fill="currentColor"
fillRule="evenodd"
/>
</svg>
</a>
);
};
export { GithubStartsButton };
================================================
FILE: components/header.tsx
================================================
import Link from "next/link";
import { GithubStartsButton } from "@/components/github-button";
import { ThemeToggle } from "@/components/ui/theme-toggle";
import { cn } from "@/lib/utils";
type LogoProps = {
className?: string;
type?: "christmas" | "default";
};
const Logo = ({ className, type = "default" }: LogoProps) => {
if (type === "christmas") {
return (
<svg
aria-hidden="true"
className={cn(className)}
data-type="christmas"
fill="none"
viewBox="0 0 382 502"
xmlns="http://www.w3.org/2000/svg"
>
<path
d="M381.997 296.275H309.884V437.321H215.915L216.597 455.488C222.168 452.015 229.293 449.8 237.12 449.512C255.552 448.832 270.892 459.089 271.384 472.42C271.858 485.293 258.315 496.324 240.788 497.68L240.79 497.723L217.701 498.574C210.978 498.822 205.326 493.573 205.078 486.85L204.645 475.096H204.647C204.644 475.025 204.638 474.953 204.636 474.882C204.616 474.334 204.622 473.789 204.652 473.248L203.304 437.321H164.245L162.786 476.194C162.816 476.736 162.823 477.282 162.803 477.831C162.8 477.901 162.794 477.971 162.791 478.041H162.797L162.363 489.796C162.115 496.519 156.464 501.769 149.74 501.521L126.651 500.669L126.653 500.629C109.125 499.274 95.5801 488.242 96.0547 475.369C96.5465 462.038 111.887 451.781 130.318 452.461C138.145 452.75 145.271 454.965 150.842 458.438L151.634 437.321H58.4609L65.3975 296.275H0L173.564 130.131L381.997 296.275Z"
fill="currentColor"
/>
<circle cx="129.45" cy="310.15" fill="white" r="32.5568" />
<circle cx="216.829" cy="310.15" fill="white" r="32.5568" />
<circle cx="132.392" cy="314.35" fill="black" r="9.45197" />
<circle cx="210.526" cy="314.35" fill="black" r="9.45197" />
<path
className="fill-red-800"
d="M219.443 149.146L135.452 148.927L177.707 50.6971L219.443 149.146Z"
/>
<path
d="M135.983 183.242L128.794 176.012L128.841 157.621L136.072 150.432L218.813 150.642L226.012 157.871L225.965 176.261L218.736 183.461L135.983 183.242Z"
fill="white"
/>
<path
d="M136.689 151.925L218.193 152.135L224.509 158.49L224.459 175.633L221.282 178.791L218.105 181.949L136.601 181.739L130.651 175.755L130.285 175.384L130.334 158.241L136.318 152.291L136.689 151.925ZM135.452 148.928C132.284 152.084 130.505 153.847 127.337 157.003L127.29 176.631C130.446 179.799 132.209 181.578 135.365 184.745L219.356 184.964C222.524 181.808 224.303 180.045 227.47 176.889L227.518 157.261C224.362 154.093 222.598 152.314 219.443 149.146L135.452 148.928Z"
fill="black"
/>
<path
d="M170.115 67.773C165.024 64.9802 161.889 59.6705 161.903 53.8372C161.919 46.4387 167.161 39.9423 174.367 38.3939C175.462 38.1586 176.602 38.0364 177.737 38.0378C186.446 38.0585 193.511 45.1833 193.484 53.9137C193.465 59.7274 190.324 65.0052 185.245 67.7844L170.115 67.773Z"
fill="white"
/>
<path
className="fill-black dark:fill-white"
d="M174.682 39.8603C175.68 39.646 176.7 39.5393 177.734 39.5421C181.551 39.5504 185.136 41.0506 187.826 43.7659C190.517 46.4812 191.998 50.0906 191.992 53.9173C191.981 59.0543 189.265 63.7395 184.863 66.2913L170.519 66.2746C166.11 63.7034 163.401 58.9976 163.408 53.8411C163.42 47.139 168.171 41.2596 174.692 39.8582M174.052 36.9273C166.27 38.5997 160.424 45.5225 160.399 53.8331C160.379 60.5471 164.17 66.381 169.732 69.2769L185.61 69.2914C191.161 66.4211 194.957 60.624 194.979 53.9197C195.007 44.34 187.28 36.5598 177.732 36.5354C176.463 36.5319 175.233 36.6633 174.05 36.9175L174.052 36.9273Z"
/>
<path
className="fill-black dark:fill-white"
d="M142.888 60.7772C142.633 59.5943 141.477 58.8302 140.302 59.0725L136.013 59.9634C134.83 60.2176 134.066 61.374 134.308 62.5493C134.563 63.7323 135.719 64.4964 136.894 64.2541L141.183 63.3631C142.366 63.1089 143.13 61.9526 142.888 60.7772Z"
/>
<path
className="fill-black dark:fill-white"
d="M142.081 39.6042L137.919 38.2279C136.774 37.85 135.527 38.4758 135.15 39.6208C134.772 40.7657 135.398 42.0121 136.542 42.39L140.705 43.7662C141.85 44.1441 143.096 43.5183 143.474 42.3733C143.852 41.2284 143.226 39.982 142.081 39.6042Z"
/>
<path
className="fill-black dark:fill-white"
d="M150.454 20.3558C149.646 19.4552 148.268 19.3729 147.358 20.1823C146.458 20.9895 146.375 22.3675 147.185 23.2778L150.097 26.5489C150.904 27.4494 152.282 27.5317 153.192 26.7224C154.093 25.9152 154.175 24.5372 153.366 23.6269L150.454 20.3558Z"
/>
<path
className="fill-black dark:fill-white"
d="M167.644 9.4405C166.461 9.69472 165.697 10.8511 165.939 12.0264L166.83 16.3149C167.084 17.4979 168.241 18.262 169.416 18.0197C170.599 17.7655 171.363 16.6091 171.121 15.4338L170.23 11.1453C169.976 9.96226 168.819 9.19816 167.644 9.4405Z"
/>
<path
className="fill-black dark:fill-white"
d="M190.584 10.2898C189.439 9.91192 188.193 10.5377 187.815 11.6827L186.439 15.8447C186.061 16.9897 186.687 18.236 187.832 18.6139C188.977 18.9918 190.223 18.366 190.601 17.221L191.977 13.059C192.355 11.914 191.729 10.6677 190.584 10.2898Z"
/>
<path
className="fill-black dark:fill-white"
d="M206.577 28.4957L209.848 25.5834C210.748 24.7762 210.831 23.3982 210.021 22.4879C209.214 21.5874 207.836 21.5051 206.926 22.3144L203.655 25.2267C202.754 26.0339 202.672 27.4119 203.481 28.3222C204.288 29.2227 205.667 29.305 206.577 28.4957Z"
/>
<path
className="fill-black dark:fill-white"
d="M218.179 41.0793L213.891 41.9702C212.708 42.2245 211.944 43.3808 212.186 44.5561C212.44 45.7391 213.596 46.5032 214.772 46.2609L219.06 45.37C220.243 45.1158 221.007 43.9594 220.765 42.7841C220.511 41.6011 219.355 40.837 218.179 41.0793Z"
/>
<path
className="fill-black dark:fill-white"
d="M218.531 62.943L214.369 61.5668C213.224 61.1889 211.978 61.8147 211.6 62.9597C211.222 64.1046 211.848 65.3509 212.993 65.7288L217.155 67.1051C218.3 67.483 219.546 66.8571 219.924 65.7122C220.302 64.5672 219.676 63.3209 218.531 62.943Z"
/>
<path
className="fill-black dark:fill-white"
d="M204.979 78.7942C204.171 77.8937 202.793 77.8114 201.883 78.6207C200.983 79.4279 200.9 80.806 201.71 81.7163L204.622 84.9874C205.429 85.8879 206.807 85.9702 207.717 85.1609C208.628 84.3516 208.7 82.9756 207.891 82.0654L204.979 78.7942Z"
/>
<path
className="fill-black dark:fill-white"
d="M148.497 76.8378L145.226 79.7501C144.325 80.5573 144.243 81.9354 145.052 82.8456C145.859 83.7461 147.237 83.8285 148.148 83.0191L151.419 80.1069C152.319 79.2996 152.402 77.9216 151.592 77.0113C150.785 76.1108 149.407 76.0285 148.497 76.8378Z"
/>
</svg>
);
}
if (type === "default") {
return (
<svg
aria-hidden="true"
className={cn(className)}
data-type="default"
fill="none"
viewBox="0 0 31 30"
xmlns="http://www.w3.org/2000/svg"
>
<path
d="M30.8574 13.4209H25.0322V24.8223H17.4414L17.4961 26.2822C17.9462 26.0015 18.5219 25.8223 19.1543 25.7988C20.6429 25.744 21.8818 26.5719 21.9219 27.6484C21.96 28.6881 20.8658 29.576 19.4502 29.6855V29.6924L17.5859 29.7617C17.043 29.7816 16.5855 29.3565 16.5654 28.8135L16.5303 27.8643H16.5312C16.531 27.8588 16.5305 27.8531 16.5303 27.8477C16.5292 27.8173 16.5324 27.787 16.5332 27.7568L16.4229 24.8223H13.2686L13.1494 27.9941C13.1502 28.0242 13.1534 28.0546 13.1523 28.085C13.1521 28.0902 13.1517 28.0963 13.1514 28.1016H13.1523L13.1172 29.0518C13.097 29.5946 12.6395 30.0188 12.0967 29.999L10.2324 29.9297V29.9238C8.81666 29.8144 7.7226 28.9265 7.76074 27.8867C7.80082 26.8101 9.03966 25.9813 10.5283 26.0361C11.1608 26.0596 11.7364 26.2396 12.1865 26.5205L12.25 24.8223H4.72266L5.2832 13.4209H0L14.0205 0L30.8574 13.4209Z"
fill="currentColor"
/>
<circle cx="10.457" cy="14.541" fill="white" r="2.62989" />
<circle cx="17.5156" cy="14.541" fill="white" r="2.62989" />
<circle cx="10.6947" cy="14.8797" fill="currentColor" r="0.763516" />
<circle cx="17.0062" cy="14.8797" fill="currentColor" r="0.763516" />
</svg>
);
}
return null;
};
const Header = () => {
return (
<header className="mx-auto mt-[25px] w-full max-w-[1292px] px-4 font-mono">
<div className="flex h-full w-full justify-between gap-4">
<Link
aria-label="Lucide Animated - Home"
className="mr-auto flex h-[42px] items-center gap-2 font-sans text-base focus-within:outline-offset-4 focus-visible:outline-1 focus-visible:outline-primary max-[524px]:translate-y-[-2px] min-[395px]:text-xl"
href="/"
tabIndex={0}
>
<Logo
className="w-6 text-primary data-[type='christmas']:translate-y-[-4px] min-[395px]:w-8"
type="default"
/>
lucide-animated
</Link>
<div className="ml-auto flex w-full flex-1 flex-wrap-reverse items-center justify-end gap-2">
<Link
aria-label="Sponsor Project"
className="flex items-center gap-1 pr-1 font-sans text-[#3F3F47] text-sm underline-offset-4 focus-within:outline-offset-4 hover:underline focus-visible:outline-1 focus-visible:outline-primary dark:text-[#FAFAFA]"
href="/sponsorship"
tabIndex={0}
>
<svg
fill="none"
height="16"
viewBox="0 0 16 16"
width="16"
xmlns="http://www.w3.org/2000/svg"
>
<path
className="fill-primary"
d="M7.72238 13.5321L7.71838 13.5297L7.70318 13.5217C7.38749 13.3499 7.07746 13.1679 6.77358 12.976C6.04907 12.5202 5.35871 12.0122 4.70798 11.456C3.23598 10.1864 1.59998 8.28165 1.59998 6.00005C1.60005 5.25562 1.8309 4.52952 2.26074 3.92172C2.69058 3.31393 3.29827 2.85433 4.00014 2.60622C4.702 2.35811 5.46353 2.33369 6.17985 2.53631C6.89618 2.73894 7.53207 3.15865 7.99998 3.73765C8.46788 3.15865 9.10377 2.73894 9.8201 2.53631C10.5364 2.33369 11.2979 2.35811 11.9998 2.60622C12.7017 2.85433 13.3094 3.31393 13.7392 3.92172C14.1691 4.52952 14.3999 5.25562 14.4 6.00005C14.4 8.28165 12.7648 10.1864 11.292 11.456C10.3674 12.246 9.36371 12.9382 8.29678 13.5217L8.28158 13.5297L8.27758 13.5321H8.27598C8.19097 13.5771 8.09627 13.6007 8.00007 13.6008C7.90388 13.601 7.80911 13.5776 7.72398 13.5329L7.72238 13.5321Z"
/>
</svg>
Sponsor Project
</Link>
<div className="flex items-center gap-2">
<ThemeToggle />
<GithubStartsButton />
</div>
</div>
</div>
</header>
);
};
export { Header };
================================================
FILE: components/list.tsx
================================================
"use client";
import Fuse from "fuse.js";
import { useDeferredValue, useMemo, useRef, useState } from "react";
import type { Icon } from "@/actions/get-icons";
import { Card, CardActions, CardTitle } from "@/components/card";
import { ICON_LIST } from "@/icons";
import { SearchInput } from "./search-input";
type Props = {
icons: Icon[];
};
const ICON_MAP = new Map(ICON_LIST.map((item) => [item.name, item.icon]));
const IconItem = ({
icon,
Icon,
}: {
icon: Icon;
Icon: React.ElementType | undefined;
}) => {
const animationRef = useRef<{
startAnimation: () => void;
stopAnimation: () => void;
}>(null);
if (!Icon) {
return null;
}
return (
<Card
animationRef={animationRef}
className="[contain-intrinsic-size:auto_180px] [content-visibility:auto]"
key={icon.name}
onMouseEnter={() => animationRef.current?.startAnimation()}
onMouseLeave={() => animationRef.current?.stopAnimation()}
>
<Icon
className="flex items-center justify-center [&>svg]:size-10 [&>svg]:text-neutral-800 dark:[&>svg]:text-neutral-100"
ref={animationRef}
/>
<CardTitle>{icon.name}</CardTitle>
<CardActions {...icon} />
</Card>
);
};
const IconsList = ({ icons }: Props) => {
const [searchValue, setSearchValue] = useState("");
const [searchOpen, setSearchOpen] = useState(false);
const deferredSearchValue = useDeferredValue(searchValue);
const fuse = useMemo(
() =>
new Fuse(icons, {
keys: [
{ name: "name", weight: 3 },
{ name: "keywords", weight: 2 },
],
threshold: 0.3,
ignoreLocation: true,
findAllMatches: true,
isCaseSensitive: false,
minMatchCharLength: 2,
}),
[icons]
);
const filteredIcons = useMemo(() => {
if (!deferredSearchValue.trim()) return icons;
return fuse.search(deferredSearchValue).map((result) => result.item);
}, [fuse, icons, deferredSearchValue]);
return (
<div className="mb-20 w-full">
<SearchInput
searchOpen={searchOpen}
searchValue={searchValue}
setSearchOpen={setSearchOpen}
setSearchValue={setSearchValue}
/>
<div className="grid grid-cols-[repeat(auto-fill,minmax(200px,1fr))] gap-[3px]">
{filteredIcons.length === 0 && (
<div className="col-span-full pt-10 text-center text-neutral-500 text-sm">
No icons found
</div>
)}
{filteredIcons.map((icon) => (
<IconItem
Icon={ICON_MAP.get(icon.name) ?? undefined}
icon={icon}
key={icon.name}
/>
))}
</div>
</div>
);
};
export { IconsList };
================================================
FILE: components/search-input.tsx
================================================
import { useHotkey } from "@tanstack/react-hotkeys";
import { SearchIcon } from "lucide-react";
import { Portal } from "@/components/ui/portal";
import { cn } from "@/lib/utils";
import { Input } from "./ui/input";
type SearchInputProps = {
searchValue: string;
setSearchValue: (value: string) => void;
searchOpen: boolean;
setSearchOpen: (value: boolean) => void;
};
const SearchInput = ({
searchValue,
setSearchValue,
searchOpen,
setSearchOpen,
}: SearchInputProps) => {
useHotkey(
"Mod+F",
() => {
setSearchOpen(!searchOpen);
setSearchValue("");
},
{
ignoreInputs: false,
}
);
useHotkey(
"Escape",
() => {
setSearchOpen(false);
setSearchValue("");
},
{
ignoreInputs: false,
}
);
return (
<>
<div
className={cn(
"hidden items-center justify-end gap-1 pr-4 pb-2 opacity-100 transition-opacity duration-75 md:flex",
searchOpen && "opacity-0"
)}
>
<div className="flex items-center justify-center gap-0.5">
<kbd>⌘</kbd>
<kbd>F</kbd>
</div>
<span className="font-sans text-neutral-500 text-sm dark:text-neutral-500">
for the search
</span>
</div>
{searchOpen && (
<Portal>
<div className="fixed top-4 right-4 w-[400px]">
<Input
aria-label="Search icons"
autoCapitalize="off"
autoComplete="off"
autoCorrect="off"
autoFocus
className="shadow-sm"
inputMode="search"
leadingIcon={
<SearchIcon
className="size-4 text-neutral-400"
strokeWidth={2.5}
/>
}
onChange={(e) => setSearchValue(e.target.value)}
placeholder="Search icons..."
role="search"
spellCheck="false"
trailingIcon={<kbd className="w-8">esc</kbd>}
value={searchValue}
/>
</div>
</Portal>
)}
</>
);
};
export { SearchInput };
================================================
FILE: components/sponsorship/amount-selector.tsx
================================================
"use client";
import { useEffect, useRef, useState } from "react";
import type { SUPPORT_LIST } from "@/app/sponsorship/page";
import { Radio, RadioGroup } from "@/components/ui/radio";
import { cn } from "@/lib/utils";
import { Stamp } from "./stamp";
const DESIGN_WIDTH = 1040;
const DESIGN_HEIGHT = 460;
type AmountSelectorProps = {
amounts: typeof SUPPORT_LIST;
};
const AmountSelector = ({ amounts }: AmountSelectorProps) => {
const [selectedAmount, setSelectedAmount] = useState(
amounts[0].price.toString()
);
const containerRef = useRef<HTMLDivElement>(null);
const [scale, setScale] = useState(0);
useEffect(() => {
const container = containerRef.current;
if (!container) return;
const updateScale = () => {
const width = container.offsetWidth;
setScale(width / DESIGN_WIDTH);
};
updateScale();
const resizeObserver = new ResizeObserver(updateScale);
resizeObserver.observe(container);
return () => resizeObserver.disconnect();
}, []);
const formatCurrency = (amount: number) => {
return new Intl.NumberFormat("en-US", {
style: "currency",
currency: "USD",
minimumFractionDigits: 0,
maximumFractionDigits: 0,
}).format(amount);
};
const isLastItemOdd = amounts.length % 2 !== 0;
const buyLink = amounts.find(
(amount) => amount.price.toString() === selectedAmount
)?.link;
return (
<div className="mx-auto mt-8 flex w-full max-w-[1016px] flex-col items-center gap-6 px-4">
<RadioGroup
aria-label="Select donation amount"
className="grid w-full grid-cols-2 gap-1 min-[610px]:flex min-[610px]:flex-row min-[610px]:justify-center"
onValueChange={(value) => setSelectedAmount(value as string)}
value={selectedAmount}
>
{amounts.map((amount, index) => {
const isLastItem = index === amounts.length - 1;
const shouldSpanFull = isLastItem && isLastItemOdd;
return (
<label
className={cn(
"group relative flex w-full cursor-pointer items-center justify-center data-checked:bg-primary data-unchecked:bg-white hover:data-unchecked:bg-neutral-50/80 dark:data-unchecked:bg-black dark:hover:data-unchecked:bg-neutral-950/60",
"h-[60px] min-[786px]:h-[84px]",
"supports-[corner-shape:squircle]:corner-squircle",
shouldSpanFull && "max-[610px]:col-span-2",
"max-[610px]:odd:rounded-l-[20px] max-[610px]:odd:supports-[corner-shape:squircle]:rounded-l-[20px]",
"max-[610px]:even:rounded-r-[20px] max-[610px]:even:supports-[corner-shape:squircle]:rounded-r-[20px]",
shouldSpanFull &&
"max-[610px]:rounded-r-[20px] max-[610px]:supports-[corner-shape:squircle]:rounded-r-[20px]",
"min-[610px]:first:rounded-l-[20px] min-[610px]:first:supports-[corner-shape:squircle]:rounded-l-[30px]",
"min-[610px]:last:rounded-r-[20px] min-[610px]:last:supports-[corner-shape:squircle]:rounded-r-[30px]",
"has-focus-visible:outline-2 has-focus-visible:outline-primary has-focus-visible:outline-offset-2"
)}
data-checked={
selectedAmount === amount.price.toString() ? "" : undefined
}
data-unchecked={
selectedAmount !== amount.price.toString() ? "" : undefined
}
htmlFor={amount.price.toString()}
key={amount.price}
>
<Radio.Root
aria-label={formatCurrency(amount.price)}
className="peer absolute inset-0 opacity-0"
value={amount.price.toString()}
>
<Radio.Indicator />
</Radio.Root>
<span className="pointer-events-none font-sans text-[#0A0A0A] text-[24px] group-data-checked:text-white min-[786px]:text-[30px] dark:text-white">
{formatCurrency(amount.price)}
</span>
</label>
);
})}
</RadioGroup>
<div
className={cn(
"supports-[corner-shape:squircle]:corner-squircle relative w-full rounded-[40px] bg-white supports-[corner-shape:squircle]:rounded-[60px] dark:bg-black",
"max-[610px]:hidden",
"transition-opacity duration-100",
scale === 0 ? "opacity-0" : "opacity-100"
)}
ref={containerRef}
style={{
height: scale === 0 ? DESIGN_HEIGHT : DESIGN_HEIGHT * scale,
}}
>
<div
className="origin-top-left"
style={{
width: DESIGN_WIDTH,
height: DESIGN_HEIGHT,
transform: `scale(${scale})`,
}}
>
<div className="flex items-center justify-between px-[70px] pt-[38px]">
<p className="font-sans text-[#525252] text-[42px] dark:text-[#D4D4D4]">
Chill Guy Certificate
</p>
<p className="font-sans text-[#737373] text-[24px] dark:text-[#D4D4D4]">
Supporter
</p>
</div>
<div
aria-hidden="true"
className="pointer-events-none relative mt-[38px] w-full select-none"
>
<svg
className="w-full"
height="2px"
preserveAspectRatio="none"
width="100%"
xmlns="http://www.w3.org/2000/svg"
>
<line
className="text-background"
stroke="currentColor"
strokeDasharray="14 14"
strokeWidth="2"
x1="0"
x2="100%"
y1="50%"
y2="50%"
/>
</svg>
<div className="absolute top-1/2 left-0 size-[100px] -translate-y-1/2 overflow-hidden">
<div className="size-full -translate-x-1/2 rounded-full bg-background" />
</div>
<div className="absolute top-1/2 right-0 size-[100px] -translate-y-1/2 overflow-hidden">
<div className="size-full translate-x-1/2 rounded-full bg-background" />
</div>
</div>
<div className="mt-[38px] flex w-full items-center gap-[60px] px-[70px]">
<div className="supports-[corner-shape:squircle]:corner-squircle h-[242px] w-[220px] overflow-hidden rounded-[20px] border border-[#DBD8D8] supports-[corner-shape:squircle]:rounded-[40px] dark:border-neutral-900">
<svg
className="scale-105"
fill="none"
height="242"
viewBox="0 0 220 242"
width="220"
xmlns="http://www.w3.org/2000/svg"
>
<g clipPath="url(#clip0_143_5174)">
<path
clipRule="evenodd"
d="M387.445 310.024C392.203 352.113 365.537 391.74 340.112 425.638C317.539 455.734 279.093 466.745 251.066 491.851C218.362 521.145 205.465 582.328 161.659 585.487C117.56 588.667 97.3329 526.999 58.585 505.731C23.546 486.498 -31.3131 501.235 -52.9846 467.669C-74.8857 433.747 -39.8347 389.355 -42.5564 349.077C-45.1892 310.113 -76.4582 275.144 -68.5785 236.891C-60.2811 196.611 -29.9371 164.636 1.02023 137.532C34.1658 108.511 71.7354 81.9862 115.372 75.834C159.818 69.5677 207.436 78.4201 244.877 103.151C280.668 126.793 291.176 172.726 315.509 208.034C339.526 242.883 382.691 267.978 387.445 310.024Z"
fill="#F2F2F2"
fillRule="evenodd"
opacity="0.7"
/>
<path
d="M233.483 147.193H192.798V226.768H50.9526L54.8667 147.193H17.9702L115.891 53.459L233.483 147.193Z"
fill="#EE4822"
/>
<circle cx="91.0027" cy="155.021" fill="white" r="18.3677" />
<circle cx="140.3" cy="155.021" fill="white" r="18.3677" />
<circle
cx="92.6623"
cy="157.391"
fill="#09090B"
r="5.33255"
/>
<circle
cx="136.743"
cy="157.391"
fill="#09090B"
r="5.33255"
/>
<path
d="M117.653 35.7343C116.161 32.7765 114.169 30.8566 113.209 29.9355C112.93 29.6696 112.762 29.5074 112.658 29.3712C112.029 28.5474 111.899 27.821 111.769 27.114C111.698 26.7313 111.627 26.3291 111.471 25.875C111.276 25.3107 110.868 24.1302 109.798 23.3843C109.324 23.0665 108.332 22.5541 107.106 22.7746C105.594 23.073 104.816 24.5908 103.843 26.5107C102.773 28.6318 101.553 31.0382 98.8876 32.5041C97.8043 33.1009 96.8768 33.3278 96.0335 33.49C96.0335 33.49 90.4034 34.6057 88.4899 34.9883C88.2824 35.0273 88.1461 34.7938 88.2759 34.6251C88.5353 34.2943 88.7883 33.957 89.0542 33.6327C92.0704 29.9355 93.1471 25.2783 92.0055 20.8741C89.9688 12.9867 81.4198 8.35546 72.9551 10.5414C70.873 11.0797 68.8947 12.0202 67.1693 13.3045C65.4699 14.5629 64.0169 16.152 62.9337 17.9682C61.2473 20.7962 60.3392 24.461 60.9489 27.8015C60.9878 28.0285 60.9035 28.2555 60.7154 28.3917C59.9824 28.9171 59.2106 30.0263 58.5619 30.396C57.0571 31.2522 55.4874 30.182 53.8918 30.7852C53.3469 30.9863 52.8929 31.4209 52.7177 31.9722C52.2507 33.4381 53.6907 34.7289 54.8518 35.3776C56.6096 36.357 59.3792 36.8889 62.4213 36.5905C62.577 36.5775 62.6872 36.7332 62.6159 36.8694C62.1424 37.8424 61.8764 38.9321 61.844 39.4574C61.7727 40.7353 62.5186 41.812 63.8548 41.8444C64.5683 41.8639 65.2558 41.5979 65.8915 41.2866C66.9034 40.7872 68.0774 39.8077 69.0568 38.5299C69.193 38.3548 69.4266 38.2899 69.6341 38.3807C70.1011 38.5818 71.8524 39.1721 72.8708 39.5094C73.1303 39.5937 73.1368 39.9504 72.8903 40.0607C72.1573 40.372 71.606 40.5991 71.366 40.7288C69.699 41.598 67.766 42.7525 66.0212 44.7308C64.4515 46.5211 63.2515 48.7329 62.6483 50.9578C61.6559 54.6874 62.1878 57.5868 62.8105 59.3575C64.9315 65.3898 71.0157 67.6341 72.8319 68.179C73.4416 68.3606 74.0902 68.3736 74.7064 68.2114L110.654 58.9165C111.867 58.6051 112.976 58.1057 113.949 57.4441C114.234 57.2495 114.416 57.1003 114.572 56.9706C118.074 53.9933 119.313 50.0561 119.683 48.4994C119.696 48.441 121.097 42.2141 117.646 35.7732V35.7343H117.653Z"
fill="#FDC700"
/>
<path
d="M117.653 35.7343C116.161 32.7765 114.169 30.8566 113.209 29.9355C112.93 29.6696 112.762 29.5074 112.658 29.3712C112.029 28.5474 111.899 27.821 111.769 27.114C111.698 26.7313 111.627 26.3291 111.471 25.875C111.276 25.3107 110.868 24.1302 109.798 23.3843C109.324 23.0665 108.332 22.5541 107.106 22.7746C105.594 23.073 104.816 24.5908 103.843 26.5107C102.773 28.6318 101.553 31.0382 98.8876 32.5041C97.8043 33.1009 96.8768 33.3278 96.0335 33.49C96.0335 33.49 90.4034 34.6057 88.4899 34.9883C88.2824 35.0273 88.1461 34.7938 88.2759 34.6251C88.5353 34.2943 88.7883 33.957 89.0542 33.6327C92.0704 29.9355 93.1471 25.2783 92.0055 20.8741C89.9688 12.9867 81.4198 8.35546 72.9551 10.5414C70.873 11.0797 68.8947 12.0202 67.1693 13.3045C65.4699 14.5629 64.0169 16.152 62.9337 17.9682C61.2473 20.7962 60.3392 24.461 60.9489 27.8015C60.9878 28.0285 60.9035 28.2555 60.7154 28.3917C59.9824 28.9171 59.2106 30.0263 58.5619 30.396C57.0571 31.2522 55.4874 30.182 53.8918 30.7852C53.3469 30.9863 52.8929 31.4209 52.7177 31.9722C52.2507 33.4381 53.6907 34.7289 54.8518 35.3776C56.6096 36.357 59.3792 36.8889 62.4213 36.5905C62.577 36.5775 62.6872 36.7332 62.6159 36.8694C62.1424 37.8424 61.8764 38.9321 61.844 39.4574C61.7727 40.7353 62.5186 41.812 63.8548 41.8444C64.5683 41.8639 65.2558 41.5979 65.8915 41.2866C66.9034 40.7872 68.0774 39.8077 69.0568 38.5299C69.193 38.3548 69.4266 38.2899 69.6341 38.3807C70.1011 38.5818 71.8524 39.1721 72.8708 39.5094C73.1303 39.5937 73.1368 39.9504 72.8903 40.0607C72.1573 40.372 71.606 40.5991 71.366 40.7288C69.699 41.598 67.766 42.7525 66.0212 44.7308C64.4515 46.5211 63.2515 48.7329 62.6483 50.9578C61.6559 54.6874 62.1878 57.5868 62.8105 59.3575C64.9315 65.3898 71.0157 67.6341 72.8319 68.179C73.4416 68.3606 74.0902 68.3736 74.7064 68.2114L110.654 58.9165C111.867 58.6051 112.976 58.1057 113.949 57.4441C114.234 57.2495 114.416 57.1003 114.572 56.9706C118.074 53.9933 119.313 50.0561 119.683 48.4994C119.696 48.441 121.097 42.2141 117.646 35.7732V35.7343H117.653Z"
fill="#FDC700"
/>
<path
d="M57.5 30.5C58.8723 30.3475 61 28 61 28C63.8333 31.3333 69.5 38.1 69.5 38.5C69.5 38.9 67.1667 40.8333 66 41.5C65.3333 41.8333 64 42.5 62.5 41.5C61.4475 40.7984 61.5 39 62.5 37C57.5 38 53 35 52.5 33.5C52.5 31.5 53.0528 31.2236 53.5 31C54.5 30.5 56 30.6667 57.5 30.5Z"
fill="#E7000B"
/>
<path
d="M66.7994 19.8228C64.9508 19.7839 63.5173 21.9308 63.4524 24.8237C63.3876 27.7166 64.7303 29.9285 66.5724 29.9674C66.7994 29.9674 67.0264 29.9414 67.2405 29.8831C67.9345 29.6885 68.5637 29.1566 69.0437 28.3458C69.582 27.4377 69.8934 26.2378 69.9193 24.9729C69.9842 22.08 68.6415 19.8682 66.7994 19.8292V19.8228Z"
fill="white"
/>
<path
d="M66.7477 21.6517C65.7552 21.6258 64.9834 23.0009 64.951 24.8495C64.9121 26.6981 65.632 28.1121 66.6244 28.1381C66.7477 28.1381 66.8644 28.1251 66.9812 28.0862C67.3574 27.963 67.6882 27.6192 67.9477 27.1003C68.2331 26.5165 68.4017 25.7511 68.4211 24.9403C68.4601 23.0917 67.7401 21.6777 66.7477 21.6517Z"
fill="black"
/>
<path
d="M91.1039 89.4934C91.1039 77.0266 80.9981 66.9209 68.5314 66.9209C56.0646 66.9209 45.9589 77.0266 45.9589 89.4934C45.9589 96.8164 49.4486 103.322 54.8517 107.448C51.4464 109.329 48.988 112.701 48.3459 116.691C47.0681 116.269 45.6995 116.029 44.279 116.029C37.1375 116.029 31.3452 121.821 31.3452 128.963C31.3452 136.104 37.1375 141.897 44.279 141.897C50.7134 141.897 56.0322 137.194 57.0311 131.045C58.3089 131.467 59.6776 131.706 61.0981 131.706C68.2395 131.706 74.0318 125.914 74.0318 118.773C74.0318 116.204 73.2729 113.817 71.9821 111.806C82.8143 110.146 91.1104 100.786 91.1104 89.4934H91.1039Z"
fill="#B8E6FE"
/>
<path
d="M42.0736 110.983C44.7525 110.983 46.9189 108.81 46.9189 106.137C46.9189 103.465 44.746 101.292 42.0736 101.292C39.4012 101.292 37.2283 103.465 37.2283 106.137C37.2283 108.81 39.4012 110.983 42.0736 110.983Z"
fill="#B8E6FE"
/>
<path
d="M3.28509 167.303C7.38683 167.303 10.712 163.978 10.712 159.876C10.712 155.774 7.38683 152.449 3.28509 152.449C-0.816657 152.449 -4.14178 155.774 -4.14178 159.876C-4.14178 163.978 -0.816657 167.303 3.28509 167.303Z"
fill="#B8E6FE"
/>
<path
d="M223.334 196.855C219.105 196.855 215.155 198.023 211.769 200.04C209.603 196.057 206.262 192.801 202.221 190.725C203.869 188.553 204.861 185.854 204.861 182.916C204.861 175.774 199.069 169.982 191.927 169.982C184.786 169.982 178.994 175.774 178.994 182.916C178.994 185.854 179.986 188.553 181.634 190.725C175.465 193.891 170.951 199.813 169.705 206.863H64.9897C65.2297 205.287 65.353 203.679 65.353 202.038C65.353 184.291 50.9662 169.904 33.2196 169.904C17.2308 169.904 3.97919 181.58 1.50789 196.868C1.36519 196.868 1.22896 196.855 1.08626 196.855C-11.3805 196.855 -21.4862 206.961 -21.4862 219.428C-21.4862 231.894 -11.3805 242 1.08626 242H223.341C235.808 242 245.913 231.894 245.913 219.428C245.913 206.961 235.808 196.855 223.341 196.855H223.334Z"
fill="#B8E6FE"
/>
<path
d="M223.334 196.855C219.105 196.855 215.155 198.023 211.769 200.04C209.603 196.057 206.262 192.801 202.221 190.725C203.869 188.553 204.861 185.854 204.861 182.916C204.861 175.774 199.069 169.982 191.927 169.982C184.786 169.982 178.994 175.774 178.994 182.916C178.994 185.854 179.986 188.553 181.633 190.725C175.465 193.891 170.951 199.813 169.705 206.863H64.9896C65.2296 205.287 65.3528 203.679 65.3528 202.038C65.3528 184.291 50.9661 169.904 33.2195 169.904C17.2306 169.904 3.97906 181.58 1.50777 196.868C1.36507 196.868 1.22884 196.855 1.08614 196.855C-11.3806 196.855 -21.4863 206.961 -21.4863 219.428C-21.4863 231.894 -11.3806 242 1.08614 242H223.341C235.807 242 245.913 231.894 245.913 219.428C245.913 206.961 235.807 196.855 223.341 196.855H223.334Z"
fill="#B8E6FE"
opacity="0.16"
/>
<path
d="M209.707 172.149C212.383 172.149 214.552 169.979 214.552 167.303C214.552 164.627 212.383 162.458 209.707 162.458C207.031 162.458 204.861 164.627 204.861 167.303C204.861 169.979 207.031 172.149 209.707 172.149Z"
fill="#B8E6FE"
/>
<path
d="M217.133 190.342C221.235 190.342 224.56 187.017 224.56 182.915C224.56 178.813 221.235 175.488 217.133 175.488C213.032 175.488 209.707 178.813 209.707 182.915C209.707 187.017 213.032 190.342 217.133 190.342Z"
fill="#B8E6FE"
/>
</g>
<defs>
<clipPath id="clip0_143_5174">
<rect fill="white" height="242" rx="30" width="220" />
</clipPath>
</defs>
</svg>
</div>
<div className="flex flex-col gap-[18px]">
<h3 className="font-sans text-[#0A0A0A] text-[42px] dark:text-white">
<span className="tabular-nums">
{formatCurrency(Number(selectedAmount))}
</span>{" "}
Donation
</h3>
<p className="max-w-[345px] font-mono text-[#404040] text-[14px] dark:text-[#D4D4D4]">
The icons will always be free and open-source, regardless of
donations
</p>
<a
className="mt-[16px] flex w-fit cursor-pointer items-center justify-center bg-primary px-[24px] py-[8px] font-sans text-[18px] text-white transition-colors duration-100 hover:bg-[color-mix(in_oklab,var(--color-primary),black_10%)] focus-visible:outline-1 focus-visible:outline-primary focus-visible:outline-offset-1"
href={buyLink}
rel="noopener noreferrer"
tabIndex={0}
target="_blank"
>
Sponsor
</a>
</div>
<Stamp className="absolute -right-[56px] -bottom-[48px] size-[230px]" />
</div>
</div>
</div>
<a
className="supports-[corner-shape:squircle]:corner-squircle hidden w-full cursor-pointer items-center justify-center rounded-[12px] bg-primary px-[24px] py-[8px] font-sans text-[18px] text-white transition-colors duration-100 hover:bg-[color-mix(in_oklab,var(--color-primary),black_10%)] focus-visible:outline-1 focus-visible:outline-primary focus-visible:outline-offset-1 supports-[corner-shape:squircle]:rounded-[20px] max-[610px]:flex"
href={buyLink}
rel="noopener noreferrer"
tabIndex={0}
target="_blank"
>
Sponsor
</a>
</div>
);
};
export { AmountSelector };
================================================
FILE: components/sponsorship/stamp.tsx
================================================
import { cn } from "@/lib/utils";
const DuckSvg = () => {
return (
<svg
className="translate-y-[-5%] [grid-area:1/1]"
fill="none"
height="87"
viewBox="0 0 101 87"
width="101"
xmlns="http://www.w3.org/2000/svg"
>
<path
d="M97.1846 38.3866C94.9593 33.9746 91.9889 31.1107 90.557 29.7368C90.1409 29.3401 89.8894 29.0982 89.7346 28.895C88.7961 27.6663 88.6026 26.5826 88.4091 25.528C88.3026 24.9572 88.1962 24.3573 87.964 23.68C87.6737 22.8382 87.0642 21.0774 85.4677 19.9647C84.7614 19.4906 83.2811 18.7263 81.4525 19.0552C79.1981 19.5003 78.0371 21.7643 76.5858 24.6282C74.9893 27.7921 73.1704 31.3816 69.1938 33.5682C67.578 34.4584 66.1944 34.797 64.9367 35.0389C64.9367 35.0389 56.5384 36.703 53.6842 37.2739C53.3746 37.3319 53.1714 36.9836 53.3649 36.732C53.7519 36.2386 54.1293 35.7355 54.526 35.2518C59.025 29.7368 60.6311 22.7899 58.9282 16.2203C55.8902 4.45512 43.1381 -2.45308 30.5117 0.807517C27.4059 1.61057 24.455 3.01345 21.8813 4.92917C19.3464 6.80619 17.1791 9.17665 15.5633 11.8857C13.0477 16.1042 11.6932 21.5708 12.6026 26.5536C12.6607 26.8923 12.5349 27.2309 12.2543 27.434C11.161 28.2178 10.0097 29.8723 9.04212 30.4238C6.79743 31.7009 4.45599 30.1044 2.07585 31.0043C1.26312 31.3042 0.585848 31.9525 0.324614 32.7749C-0.372012 34.9615 1.77595 36.8869 3.50784 37.8544C6.12986 39.3154 10.2612 40.1088 14.799 39.6637C15.0312 39.6444 15.1956 39.8766 15.0892 40.0797C14.3829 41.531 13.9862 43.1565 13.9378 43.9402C13.8314 45.8462 14.9441 47.4523 16.9372 47.5007C18.0015 47.5297 19.0271 47.1331 19.9753 46.6687C21.4846 45.9237 23.2359 44.4627 24.6968 42.5566C24.9 42.2954 25.2483 42.1987 25.558 42.3341C26.2546 42.6341 28.8669 43.5145 30.3859 44.0176C30.773 44.1434 30.7827 44.6755 30.415 44.84C29.3217 45.3044 28.4992 45.6431 28.1413 45.8366C25.6547 47.1331 22.7714 48.8553 20.1688 51.8063C17.8273 54.4767 16.0374 57.776 15.1376 61.0946C13.6572 66.658 14.4506 70.9828 15.3795 73.6242C18.5433 82.6222 27.6188 85.97 30.3279 86.7827C31.2374 87.0536 32.2049 87.0729 33.1241 86.831L86.7449 72.9663C88.5542 72.5018 90.2087 71.7569 91.66 70.77C92.0857 70.4797 92.3566 70.2572 92.5888 70.0636C97.8135 65.6227 99.6615 59.7497 100.213 57.4276C100.232 57.3406 102.322 48.0522 97.1749 38.4446V38.3866H97.1846Z"
fill="#FDC700"
/>
<path
d="M97.1846 38.3866C94.9593 33.9746 91.9889 31.1107 90.557 29.7368C90.1409 29.3401 89.8894 29.0982 89.7346 28.895C88.7961 27.6663 88.6026 26.5826 88.4091 25.528C88.3026 24.9572 88.1962 24.3573 87.964 23.68C87.6737 22.8382 87.0642 21.0774 85.4677 19.9647C84.7614 19.4906 83.2811 18.7263 81.4525 19.0552C79.1981 19.5003 78.0371 21.7643 76.5858 24.6282C74.9893 27.7921 73.1704 31.3816 69.1938 33.5682C67.578 34.4584 66.1944 34.797 64.9367 35.0389C64.9367 35.0389 56.5384 36.703 53.6842 37.2739C53.3746 37.3319 53.1714 36.9836 53.3649 36.732C53.7519 36.2386 54.1293 35.7355 54.526 35.2518C59.025 29.7368 60.6311 22.7899 58.9282 16.2203C55.8902 4.45512 43.1381 -2.45308 30.5117 0.807517C27.4059 1.61057 24.455 3.01345 21.8813 4.92917C19.3464 6.80619 17.1791 9.17665 15.5633 11.8857C13.0477 16.1042 11.6932 21.5708 12.6026 26.5536C12.6607 26.8923 12.5349 27.2309 12.2543 27.434C11.161 28.2178 10.0097 29.8723 9.04212 30.4238C6.79743 31.7009 4.45599 30.1044 2.07585 31.0043C1.26312 31.3042 0.585848 31.9525 0.324614 32.7749C-0.372012 34.9615 1.77595 36.8869 3.50784 37.8544C6.12986 39.3154 10.2612 40.1088 14.799 39.6637C15.0312 39.6444 15.1956 39.8766 15.0892 40.0797C14.3829 41.531 13.9862 43.1565 13.9378 43.9402C13.8314 45.8462 14.9441 47.4523 16.9372 47.5007C18.0015 47.5297 19.0271 47.1331 19.9753 46.6687C21.4846 45.9237 23.2359 44.4627 24.6968 42.5566C24.9 42.2954 25.2483 42.1987 25.558 42.3341C26.2546 42.6341 28.8669 43.5145 30.3859 44.0176C30.773 44.1434 30.7827 44.6755 30.415 44.84C29.3217 45.3044 28.4992 45.6431 28.1413 45.8366C25.6547 47.1331 22.7714 48.8553 20.1688 51.8063C17.8273 54.4767 16.0374 57.776 15.1376 61.0946C13.6572 66.658 14.4506 70.9828 15.3795 73.6242C18.5433 82.6222 27.6188 85.97 30.3279 86.7827C31.2374 87.0536 32.2049 87.0729 33.1241 86.831L86.7449 72.9663C88.5542 72.5018 90.2087 71.7569 91.66 70.77C92.0857 70.4797 92.3566 70.2572 92.5888 70.0636C97.8135 65.6227 99.6615 59.7497 100.213 57.4276C100.232 57.3406 102.322 48.0522 97.1749 38.4446V38.3866H97.1846Z"
fill="#FDC700"
/>
<path
d="M7.45825 30.5787C9.50519 30.3513 12.679 26.8496 12.679 26.8496C16.9053 31.8218 25.358 41.9153 25.358 42.5119C25.358 43.1086 21.8775 45.9924 20.1373 46.9869C19.1428 47.4841 17.154 48.4785 14.9164 46.9869C13.3465 45.9403 13.4248 43.2578 14.9165 40.2745C7.45825 41.7661 0.745825 37.2912 0 35.0537C0 32.0704 0.824535 31.6581 1.49165 31.3246C2.9833 30.5787 5.22077 30.8273 7.45825 30.5787Z"
fill="#E7000B"
/>
<path
d="M21.3296 14.6531C18.5721 14.5951 16.4339 17.7976 16.3371 22.1128C16.2403 26.428 18.2431 29.7273 20.9909 29.7853C21.3296 29.7853 21.6682 29.7466 21.9875 29.6595C23.0227 29.3693 23.9613 28.5759 24.6773 27.3665C25.4803 26.0119 25.9447 24.222 25.9834 22.3354C26.0802 18.0201 24.0774 14.7208 21.3296 14.6627V14.6531Z"
fill="white"
/>
<path
d="M21.2523 17.3814C19.772 17.3427 18.6207 19.3939 18.5723 22.1514C18.5143 24.9089 19.5882 27.0181 21.0685 27.0568C21.2523 27.0568 21.4265 27.0374 21.6007 26.9794C22.1619 26.7956 22.6553 26.2827 23.0423 25.5087C23.468 24.6379 23.7196 23.4962 23.7486 22.2868C23.8067 19.5293 22.7327 17.4201 21.2523 17.3814Z"
fill="black"
/>
</svg>
);
};
const Circles = () => {
return (
<svg
className="[grid-area:1/1]"
fill="none"
height="235"
viewBox="0 0 236 235"
width="236"
xmlns="http://www.w3.org/2000/svg"
>
<circle
cx="117.318"
cy="117.235"
r="104.12"
stroke="#737373"
strokeWidth="5"
/>
<path
d="M214.885 61.1481C215.447 62.6633 212.922 57.9804 214.347 61.2351C213.955 60.6129 213.554 59.9917 213.15 59.3785C213.185 59.14 213.216 58.8968 213.249 58.6571C213.805 59.4786 214.349 60.3065 214.886 61.1477C214.886 61.1478 214.886 61.1479 214.885 61.1481ZM217.23 61.3868C216.399 60.7882 214.835 58.3322 216.059 61.26C216.313 61.4033 216.57 61.5533 216.824 61.6992C217.258 62.7145 217.679 63.7378 218.081 64.76C218.314 65.0818 218.545 65.4048 218.774 65.7302C218.769 66.2954 218.756 66.8556 218.742 67.4184C218.581 67.0044 218.415 66.5857 218.249 66.1736C217.266 64.7104 216.493 63.3674 215.285 61.3265C215.335 61.5377 215.384 61.7491 215.433 61.9604C214.934 60.8632 214.418 59.7738 213.886 58.6962C214.514 59.5308 215.203 60.4774 215.765 61.2709C215.36 59.7177 213.744 57.4878 212.901 56.3403C211.755 54.776 212.154 55.0377 211.287 53.8889C211.148 53.7059 211.008 53.7696 210.75 53.397C209.468 51.5046 206.855 47.9116 208.698 49.7813C210.898 52.844 212.928 55.3691 214.762 58.6006C214.601 57.5513 215.758 59.1331 217.23 61.3868ZM166.582 15.3642C167.699 15.6779 169.741 16.8029 171.052 17.6763C171.054 17.6771 171.055 17.678 171.057 17.6789C171.347 17.8704 171.906 18.478 170.921 17.9298C169.317 17.0443 168.709 16.2724 167.718 16.0921C167.355 15.8518 166.968 15.6089 166.582 15.3642ZM162.942 13.7069C161.947 13.1606 162.545 13.0707 163.807 13.7285C163.807 13.7282 163.807 13.728 163.807 13.7278C164.331 14.0059 163.174 13.745 165.204 14.4031C165.514 14.7643 165.821 15.1079 166.122 15.4636C165.656 15.243 165.228 15.0465 164.735 14.8207C165.202 14.6816 163.935 14.2541 162.942 13.7069ZM207.404 48.3578C207.064 48.3937 207.524 48.982 208.115 50.1179C207.413 49.1536 206.695 48.1981 205.965 47.2599C206.448 47.6226 206.925 47.9857 207.404 48.3578ZM221.547 72.6153C221.548 72.617 221.549 72.6187 221.549 72.6203C221.746 72.9639 221.942 73.3086 222.132 73.6485C222.127 73.9049 222.12 74.1582 222.112 74.414C222.726 75.6572 223.321 76.9224 223.891 78.1951C223.54 78.1431 222.713 75.7931 221.985 74.6152C221.305 72.7032 221.064 71.7298 221.259 71.4999C221.356 71.87 221.451 72.2399 221.547 72.6153ZM5.08692 140.586C5.2683 141.029 5.45102 141.464 5.6374 141.903C5.54286 141.286 5.44443 140.673 5.36563 140.05C4.67329 138.52 4.96932 138.305 4.58391 136.19C3.53212 129.707 3.16491 131.449 3.51509 125.47C3.86125 130.22 4.12174 128.359 4.75096 131.168C4.58239 131.791 3.71443 129.021 3.82764 130.956C4.47754 134.228 5.21713 137.352 6.13408 140.908C6.15224 140.794 6.17083 140.681 6.18933 140.567C6.04392 139.998 5.90572 139.443 5.7698 138.877C5.99749 139.472 6.22515 140.047 6.46654 140.651C6.05337 139.912 6.61846 141.897 6.28055 141.689C6.12809 141.597 5.76114 140.742 5.53331 140.236C5.74758 141.617 6.00022 143.024 6.27036 144.406C5.99827 143.722 5.73236 143.035 5.47373 142.347C5.34011 141.764 5.21278 141.184 5.08806 140.597C5.08768 140.593 5.08731 140.59 5.08692 140.586ZM225.102 152.177C224.856 153.942 223.825 156.97 222.894 158.411C223.693 156.349 224.426 154.28 225.102 152.177ZM221.407 71.2883C221.442 71.4913 221.473 71.6883 221.506 71.8913C221.068 71.1225 220.621 70.3557 220.167 69.6009C220.229 69.3866 220.29 69.1685 220.348 68.949C220.709 69.7223 221.064 70.5058 221.407 71.2883ZM186.985 27.5148C187.497 27.9032 187.54 27.9417 188.153 28.4567C188.152 28.456 188.151 28.4554 188.151 28.4547C188.399 28.6527 190.392 30.4069 190.089 30.3078C189.079 29.4635 187.99 28.5802 186.927 27.7528C186.941 27.669 186.979 27.6053 186.985 27.5148ZM198.504 37.8885C198.505 37.89 198.506 37.8915 198.507 37.8929C198.83 38.248 199.12 38.5989 199.457 38.9613C198.096 37.8008 198.125 37.3783 196.911 36.3025C195.691 35.2333 194.847 34.6806 194.132 33.4279C194.553 33.7252 195.021 34.0318 195.457 34.3384C197.008 36.0529 197.556 36.3731 198.979 37.5734C198.82 37.6783 198.663 37.7833 198.504 37.8885ZM3.73931 111.39C3.54534 110.937 3.78621 110.456 3.79185 110.406C3.79204 110.407 3.79224 110.408 3.79244 110.409C3.85753 106.5 3.85599 110.916 4.17659 107.258C4.18321 107.806 4.19743 108.345 4.21275 108.889C4.04788 109.716 3.87673 110.574 3.73931 111.39ZM72.3753 12.7552C72.4332 12.7988 72.4975 12.8399 72.5553 12.8837C70.522 13.75 70.1192 14.2127 68.3695 14.7918C69.6878 14.0874 71.023 13.4082 72.375 12.7545C72.3751 12.7547 72.3752 12.7549 72.3753 12.7552ZM178.128 20.737C180.267 21.9508 181.811 22.9288 183.622 24.4549C183.623 24.4562 183.624 24.4574 183.626 24.4587C183.729 24.5471 183.118 24.2726 183.243 24.4027C183.65 24.6684 184.075 24.9374 184.486 25.2084C184.477 25.3329 184.466 25.4555 184.457 25.5793C183.363 24.7394 182.252 23.918 181.122 23.114C181.256 23.2801 181.395 23.4488 181.528 23.6154C180.541 22.9756 179.552 22.3563 178.547 21.7485C178.984 21.8235 179.42 21.9008 179.854 21.978C179.283 21.5594 178.707 21.1461 178.128 20.737ZM41.0553 31.9667C41.3925 31.7575 40.9301 32.3252 41.4216 31.9657C41.9115 31.6053 42.6705 30.7762 42.6003 31.0946C42.0019 31.6485 41.3818 32.2386 40.7858 32.8162C42.9909 31.2801 44.8391 29.3512 45.1469 29.6581C43.1076 31.1995 41.5625 32.6302 39.8388 34.4028C39.6727 34.0808 41.3062 32.1834 39.9337 33.0033C40.3017 32.6589 40.6895 32.2985 41.0517 31.9709C41.0529 31.9695 41.0541 31.9681 41.0553 31.9667ZM234.777 105.34C234.919 106.889 235.325 110.497 235.189 112.478C235.163 112.968 234.57 114.606 234.483 114.598C234.2 114.555 234.11 112.592 233.979 114.701C233.962 113.993 233.93 113.307 233.898 112.608C233.713 112.741 233.528 112.872 233.343 112.999C233.402 113.846 233.452 114.698 233.493 115.551C233.431 115.594 233.368 115.637 233.306 115.679C233.245 112.619 233.039 114.43 232.764 112.859C232.703 114.313 232.616 115.781 232.502 117.234C232.516 116.395 232.515 115.408 232.515 114.671C232.193 114.58 232.298 116.333 232.236 116.636C231.954 118.32 231.914 109.735 231.313 109.064C231.358 110.434 231.382 111.872 231.378 113.263C231.306 112.866 231.233 112.464 231.157 112.069C231.34 108.886 231.161 105.334 230.859 101.631C230.801 101.302 230.74 100.972 230.681 100.649C230.55 100.767 230.42 100.878 230.289 100.995C230.202 100.5 230.11 100.005 230.015 99.507C230.709 100.906 230.421 98.8643 230.258 96.359C230.666 97.6328 230.822 99.2749 231.114 99.114C230.175 94.6344 229.339 89.3487 227.823 85.1436C227.444 84.1044 227.078 84.2281 226.325 81.7527C226.394 81.8224 226.475 81.8119 226.548 81.848C224.964 77.6608 223.9 75.1794 222.224 70.846C222.2 71.1503 222.172 71.4503 222.144 71.7536C222.603 72.6273 223.05 73.5037 223.484 74.383C223.505 75.0951 223.061 74.2083 224.114 76.9405C224.952 79.1908 224.553 77.8138 224.845 78.402C225.236 79.1997 225.311 79.9943 225.716 80.8606C226.026 81.5331 225.972 80.7105 226.514 82.5587C226.035 81.8982 225.537 81.2339 225.042 80.5864C224.947 80.1271 224.851 79.6712 224.751 79.2127C224.972 79.6336 225.189 80.0493 225.406 80.4743C224.753 78.9406 224.108 77.5072 223.366 75.9537C223.916 76.3399 223.142 74.7338 222.731 73.863C222.093 72.5054 222.824 73.5924 222.402 72.7017C221.975 71.8096 221.294 70.9492 220.604 69.3139C221.154 70.1087 220.744 68.8702 220.988 69.0329C221.234 69.1947 222.05 70.9019 221.445 69.1803C219.844 66.0775 220.938 69.7436 219.841 67.6662C218.503 65.188 219.007 64.166 219.582 64.8214C220.035 65.3374 221.025 67.4166 221.451 67.9562C219.919 64.1148 219.343 64.3665 218.93 63.7931C217.369 61.7418 219.147 62.7224 217.322 60.2698C217.526 60.2189 217.707 60.169 217.904 60.1227C217.611 59.6847 217.395 59.4072 217.05 58.8753C217.646 60.6878 216.897 59.3552 216.498 58.6838C215.869 57.6255 216.674 59.3592 216.464 59.1041C215.906 58.413 215.236 57.1994 215.529 58.0161C215.401 57.6484 215.254 57.2516 215.115 56.8752C214.276 55.6936 211.731 53.35 213.61 55.9362C213.186 55.8535 212.756 54.9064 212.349 54.2099C211.942 53.5139 211.784 53.6386 211.417 53.0331C209.936 50.6355 211.264 51.9494 211.742 52.1682C209.431 49.2243 211.492 52.2409 208.188 48.0059C207.702 47.7264 209.01 49.8366 207.666 48.2738C207.734 47.746 207.044 46.3582 205.242 43.993C204.991 43.8274 204.739 43.6641 204.486 43.5009C203.699 42.0471 204.526 42.4148 202.201 40.4653C203.868 41.1351 202.772 40.6346 201.167 38.4402C200.838 37.9951 201.828 38.807 201.364 38.19C201.153 37.91 200.482 37.383 199.957 36.7073C199.705 36.3759 198.554 34.7747 197.478 33.9479C197.917 34.9091 195.859 33.3814 197.203 35.1242C194.367 32.2759 192.109 30.558 195.805 33.2096C195.137 32.4248 194.456 31.6476 193.765 30.8794C193.168 30.4738 192.563 30.0697 191.957 29.6724C192.077 29.3648 192.234 29.3458 190.016 27.5999C191.013 28.3129 191.999 29.0397 192.979 29.7889C193.053 29.7676 193.226 29.8297 193.236 29.7556C192.028 28.8389 188.696 26.2005 187.817 25.6547C186.95 25.0938 188.509 26.3257 188.224 26.2102C185.862 25.2415 186.318 24.9718 184.825 24.0205C183.948 23.468 185.899 24.9824 185.434 24.6804C183.719 23.5561 183.147 22.7173 181.639 21.6886C182.062 22.22 182.473 22.754 182.87 23.2831C181.317 22.1822 179.55 21.0143 178.016 20.1327C177.414 19.7869 177.778 20.1935 177.677 20.1421C177.175 19.8833 175.179 18.7799 174.968 18.6633C173.397 17.7523 173.455 17.544 171.908 16.6812C172.527 16.9979 173.107 17.3015 173.706 17.6218C174.143 17.4775 174.587 17.3388 175.028 17.1989C173.525 16.3015 171.999 15.4371 170.453 14.6072C171.54 15.2991 172.616 16.0096 173.678 16.7368C171.795 15.995 169.909 15.3116 168.005 14.6766C167.151 14.0651 166.295 13.4679 165.423 12.879C162.836 11.7504 163.078 12.6278 162.087 11.5438C161.304 11.2667 160.518 10.9985 159.729 10.7381C159.871 10.7022 160.012 10.6659 160.154 10.6306C159.205 10.3058 158.252 9.99315 157.293 9.69375C158.175 10.3464 159.018 11.0166 159.865 11.6768C158.028 11.0134 158.08 10.7713 157.831 10.6044C157.165 10.166 155.642 9.85674 155.114 9.50701C154.936 9.3839 156.801 9.87162 156.245 9.46379C156.142 9.3816 153.939 7.8371 152.299 7.49823C152.289 7.632 152.362 7.82332 152.383 7.97899C150.247 7.3802 149.35 6.42963 149.685 6.32466C148.508 6.11703 146.824 5.6785 146.535 5.82073C145.943 5.67136 145.365 5.53 144.775 5.39094C145.512 5.04424 143.023 4.54348 142.764 4.94055C143.778 5.18035 144.787 5.43437 145.79 5.70072C144.89 6.04811 147.898 7.04497 141.623 5.09421C140.454 4.55303 143.795 5.61363 142.841 5.18881C141.129 4.6763 139.475 4.44591 137.847 3.95512C135.812 3.36562 138.407 3.51867 133.502 3.08997C144.061 5.61531 131.982 3.16533 126.903 3.12053C125.734 2.34985 122.243 1.78399 117.318 1.8871C116.68 1.90074 116.02 1.9258 115.341 1.96327C115.707 2.08203 116.503 2.08491 117.318 2.08952C117.888 2.09236 118.464 2.09555 118.906 2.13041C119.978 2.21797 118.817 2.32181 120.148 2.44925C121.478 2.57212 124.288 2.84119 125.623 3.09611C124.468 3.10174 118.869 3.17725 122.579 2.98128C120.523 2.73496 119.27 2.54846 117.318 2.45665C116.659 2.42719 115.922 2.41105 115.05 2.41786C114.024 2.77924 114.108 2.94825 110.77 3.12794C112.736 2.55736 108.89 2.45554 109.701 1.93363C112.108 1.90054 110.798 2.44085 112.18 2.59445C112.32 2.60551 114.531 2.41358 115.05 2.41786C112.799 2.05208 112.009 1.94569 113.378 1.39683C111.785 1.4941 110.79 1.49399 110.655 1.7371C110.316 1.65377 109.974 1.57196 109.639 1.49123C109.118 1.52796 108.65 1.57095 108.099 1.61224C108.885 1.90923 107.397 1.79993 106.375 2.06045C105.351 2.32578 106.776 2.44925 103.923 2.76641C104.882 2.7395 105.76 2.72082 106.679 2.71561C104.864 2.97389 103.023 3.28019 101.224 3.62543C102.528 3.65151 105.34 3.66137 105.293 3.95985C104.439 3.93011 101.606 4.48096 101.3 4.54066C100.102 4.7421 100.731 4.46996 100.64 4.47827C98.7314 4.66874 97.18 5.01096 96.4159 4.87407C95.0215 5.25918 93.9444 5.40477 92.4467 5.74265C91.6245 5.93063 91.8297 6.09141 91.3415 6.16499C88.1104 6.70412 91.0401 5.61544 85.0834 7.792C85.8554 7.71095 86.6188 7.64366 87.3916 7.57963C86.719 7.81751 86.0541 8.06051 85.3887 8.31027C84.9265 8.41903 84.4691 8.52925 84.0085 8.6437C83.9293 8.35048 83.852 8.05602 83.773 7.76276C83.2685 7.89985 82.7575 8.04325 82.2517 8.1884C83.104 7.88315 83.9559 7.58935 84.8116 7.3055C84.8754 7.23097 84.9341 7.158 84.9982 7.08356C83.6897 7.38066 82.3856 7.70027 81.0808 8.04519C81.0896 8.15355 81.0989 8.2625 81.1077 8.37085C78.1989 9.20382 78.0963 9.14924 75.5157 10.4521C73.4532 11.257 71.9746 12.3786 70.8891 13.0664C70.4482 13.1984 70.007 13.3327 69.5627 13.4724C69.3338 13.6746 69.103 13.8785 68.8764 14.0822C68.301 14.2179 67.7193 14.3614 67.1427 14.5083C66.9742 14.9039 66.8612 15.0372 68.9392 14.158C68.3833 14.7822 64.7607 16.4101 63.2947 17.0942C62.1743 17.6033 63.2339 16.6992 63.0826 16.7421C62.5713 16.8777 60.8463 17.959 60.4702 18.1581C58.8671 18.988 57.7943 19.6554 56.3795 20.4703C56.1039 20.6279 55.258 20.9539 55.1917 20.9909C54.6804 21.2813 53.4241 22.0106 53.287 22.1024C46.2462 26.888 54.0702 22.2192 47.6905 26.8468C47.9411 26.7853 48.1762 26.7357 48.4226 26.679C47.9543 27.0439 47.4838 27.4159 47.0215 27.7878C46.3777 28.1865 46.9899 27.4938 45.9024 28.5285C45.8975 28.3673 45.8932 28.2058 45.8934 28.0417C45.4276 28.5042 44.9844 28.9544 44.5152 29.4339C43.4134 29.7439 40.4629 32.2055 40.3218 31.6436C40.2656 31.4448 42.2062 29.4978 40.9908 30.3107C40.0819 31.0634 40.8213 30.6941 40.4694 31.0215C37.9471 33.4032 37.9117 33.0734 36.9376 34.1096C36.8658 34.3569 36.7885 34.614 36.7158 34.8657C36.3082 35.2122 35.9016 35.5627 35.4948 35.9188C35.468 36.0677 35.4379 36.2203 35.4117 36.3691C35.7685 36.0157 36.1728 35.6202 36.5049 35.3009C36.2513 35.9644 32.3147 40.3294 33.6502 38.5072C34.1908 37.7602 35.3984 36.5922 34.3767 37.08C33.3171 38.2563 32.139 39.6119 31.0798 40.8944C30.9821 40.8771 30.8866 40.857 30.7888 40.8399C29.3509 42.5654 30.9499 41.2497 31.0828 41.3752C30.7489 41.7622 30.4135 42.1551 30.0848 42.5466C29.8815 42.6578 29.6824 42.759 29.4746 42.8813C29.5619 42.9829 29.6023 43.3914 28.5481 44.4942C27.8726 45.207 28.5896 43.7989 27.4485 45.2834C27.6973 45.3026 28.3029 44.9278 27.0671 46.5972C26.7726 46.6283 26.4434 46.7343 26.1684 46.7246C24.7506 48.9075 23.7812 49.6602 22.2433 52.3049C21.2677 53.9849 20.3063 56.4833 18.9586 57.1217C18.2045 58.3191 18.6156 58.0415 18.4398 58.4231C17.6196 60.224 16.5749 61.3167 16.3753 61.6294C15.1172 63.6187 14.7589 64.6159 13.7412 66.25C13.9236 66.2241 14.0777 66.2373 14.2473 66.229C14.8266 64.5622 15.2358 63.7734 16.459 61.644C16.0867 62.3811 15.7251 63.1187 15.3701 63.8612C15.5419 63.7995 15.7131 63.7394 15.8818 63.683C19.1265 56.8203 18.8848 58.7414 16.0287 64.3705C15.574 64.7469 15.1127 65.1463 14.6636 65.5278C13.3402 68.9681 12.3429 70.3958 10.6981 74.2107C10.5025 74.6638 9.97034 76.3856 9.7101 77.1134C9.71542 77.1017 9.72073 77.0899 9.72606 77.0782C9.76047 77.6039 10.0806 77.0285 10.2884 77.0245C10.1645 77.423 10.0417 77.8246 9.923 78.2223C9.47175 79.0455 9.45946 78.6947 8.89782 80.4387C9.11581 80.2518 9.33321 80.0691 9.55204 79.8847C8.90657 81.7737 8.354 82.9845 7.88943 84.7835C7.92511 84.468 7.96085 84.1562 7.99917 83.8408C6.71681 87.692 6.78452 84.351 6.37236 87.4384C6.24897 87.6089 6.12655 87.7748 6.0039 87.9465C6.30999 86.7072 6.63702 85.475 6.98157 84.256C6.88715 84.2009 6.79379 84.1438 6.69794 84.0935C6.33759 85.409 5.9993 86.7398 5.68515 88.0721C5.86799 87.0873 6.06504 86.1001 6.27326 85.1218C5.78528 86.6284 5.32474 88.16 4.90059 89.6823C5.68307 88.1452 5.2068 90.2698 5.68153 89.9636C4.72286 92.5979 3.81258 94.673 3.38134 99.0153C3.30473 99.8797 3.62688 99.4486 2.96733 101.819C3.46513 101.292 3.28615 104.342 3.74517 104C3.82221 103.158 3.91997 102.289 4.00757 101.477C3.74286 102.379 3.33205 102.485 3.41097 101.061C3.50766 99.25 4.23762 96.6683 3.79443 96.7035C3.94293 95.9926 4.08021 95.3324 4.23393 94.6463C4.28299 94.951 4.33506 95.2496 4.38745 95.5485C4.59697 93.5613 4.9314 92.3269 5.40828 91.4539C4.93534 93.7949 4.53994 96.1254 4.21391 98.4863C4.28905 98.143 4.36667 97.7958 4.44425 97.4538C4.42195 99.2733 4.95987 97.492 4.51754 100.799C4.39514 100.761 4.27208 100.726 4.14908 100.688C4.29564 101.935 3.91315 105.243 4.42278 104.232C4.19182 105.215 4.09714 105.419 4.25009 106C3.70075 108.589 3.24259 110.286 2.85437 109.306C2.85859 110.3 2.87533 111.304 2.90576 112.281C3.05202 111.718 3.20186 111.155 3.35669 110.589C3.25051 112.307 3.18314 114.018 3.15401 115.736C2.77924 115.893 3.12383 112.427 2.77393 113.419C2.70157 113.617 2.81531 114.547 2.77471 114.79C2.33387 117.356 2.69401 113.321 2.37929 114.073C2.25476 116.77 2.00828 116.054 1.994 117.234C1.9923 117.734 2.03398 118.576 2.19822 120.146C2.09736 120.288 1.99496 120.441 1.89497 120.574C1.94822 122.416 2.17975 122.247 2.30712 123.828C2.38993 124.816 2.06374 126.09 2.4382 127.156C2.51319 127.343 2.83279 125.484 3.18032 129.308C3.49359 132.287 3.00285 131.09 3.08196 132.714C3.15506 134.338 4.25783 137.925 3.92514 139.094C3.83777 138.246 3.6855 137.173 3.59166 136.23C3.42081 135.868 3.2544 135.515 3.08829 135.155C3.55908 137.278 3.81231 139.498 4.36622 140.868C4.55606 143.789 5.74026 146.814 5.957 145.857C5.66274 144.96 5.72078 146.003 5.52674 144.7C5.59678 144.545 5.66494 144.383 5.73562 144.228C6.24485 146.39 6.67503 147.892 6.09624 146.989C6.17847 147.326 6.26137 147.661 6.34659 147.997C6.58645 147.995 6.82521 147.986 7.06497 147.984C7.20057 148.374 7.33847 148.764 7.4781 149.152C7.55659 149.605 7.63756 150.059 7.72242 150.516C7.19885 150.027 6.85138 149.009 7.71136 152.44C7.83511 152.411 7.95987 152.387 8.08361 152.358C8.85538 155.211 8.57134 155.383 9.9027 158.86C8.46089 156.347 8.71429 154.609 7.87917 154.907C7.70028 154.21 7.52681 153.504 7.361 152.803C7.20566 152.738 7.05047 152.674 6.89678 152.614C8.10347 156.309 11.2372 161.922 11.8176 164.482C12.0073 164.739 12.1904 165 12.3887 165.257C13.1442 167.689 14.3038 168.337 15.0946 170.801C15.1848 171.053 14.2633 170.904 15.9069 173.832C15.9466 173.714 16.0611 173.6 16.1299 173.484C16.4328 174.144 16.7378 174.8 17.0494 175.45C17.1887 175.52 17.3311 175.595 17.4709 175.664C16.8759 174.584 16.3002 173.496 15.7395 172.397C16.2552 173.283 16.7854 174.168 17.3234 175.038C16.7767 173.813 16.4902 173.286 17.0775 173.876C17.6583 174.875 18.2552 175.864 18.8647 176.843C18.9752 176.915 19.0861 176.986 19.1969 177.058C19.0511 176.492 18.905 175.925 18.7713 175.359C20.1736 178.003 21.5873 180.187 22.6158 182.275C22.7948 182.628 21.8112 181.619 23.5143 183.697C23.4423 183.799 23.4061 183.913 23.3446 184.014C25.5331 186.487 26.0994 187.397 28.0702 190.211C26.8459 188.349 27.9769 189.98 28.4288 190.338C28.7367 190.585 27.7726 189.426 27.9482 189.503C28.1208 189.586 29.6262 190.873 28.5998 189.558C25.4889 186.801 25.4525 185.416 22.1999 181.282C22.7285 181.903 23.2666 182.522 23.807 183.13C23.638 182.783 23.4887 182.472 23.3089 182.097C24.8731 184.571 24.1333 183.354 24.9204 184.266C25.7109 185.176 27.0996 186.861 28.0341 187.983C28.3283 188.337 27.8998 188.057 28.5399 188.877C28.9739 189.437 30.392 190.771 30.4745 191.288C30.5324 191.628 28.1142 189.576 30.9368 192.854C31.3404 193.584 30.0161 191.984 29.9742 191.961C29.5649 191.812 31.1913 193.938 32.1476 194.736C32.2246 194.8 31.6922 193.971 32.4507 194.709C34.2575 196.453 35.1346 197.61 36.1073 198.94C36.445 198.854 38.1786 200.09 40.0385 201.935C40.195 201.962 40.3472 201.984 40.504 202.01C40.173 201.771 39.8435 201.53 39.5146 201.287C39.2258 200.946 38.9101 200.597 38.6398 200.254C40.6057 202.003 41.1687 201.931 42.2042 202.652C45.7815 205.064 43.1145 204.197 42.3973 203.828C42.0225 203.403 41.6709 202.982 41.3095 202.553C41.2865 202.671 41.2638 202.791 41.2369 202.907C46.1338 207.136 41.5272 204.077 43.9283 206.351C44.9117 206.499 46.8013 207.989 49.096 210.08C49.3729 210.28 49.6505 210.482 49.9295 210.68C50.0192 210.653 50.0851 210.56 50.1891 210.574C53.2582 212.657 53.4037 213.638 53.6531 213.904C54.7852 215.047 56.074 215.31 56.4678 215.55C58.1378 216.559 58.5203 217.021 60.1768 217.87C61.9643 218.77 60.8494 217.963 61.447 218.138C61.9256 218.28 63.3141 219.009 63.9419 219.205C63.6706 219.169 63.3746 219.117 63.1036 219.079C64.8634 220.159 66.3248 221.037 68.4361 222.061C71.1156 222.558 72.7436 224.475 72.2684 223.259C70.2513 222.327 69.1743 221.703 68.2087 220.984C69.5303 221.576 70.8653 222.146 72.2115 222.689C72.5607 222.951 72.7978 223.16 73.2196 223.45C74.3007 223.67 76.6063 224.673 77.5602 224.949C82.0098 226.216 80.7644 225.398 84.601 227.242C81.6839 226.418 81.58 226.704 78.7438 225.673C79.2831 226.098 80.7564 226.552 79.7289 226.477C82.5306 227.354 81.7069 226.822 82.8545 226.974C83.8419 227.102 85.7335 227.642 85.6915 227.387C85.8498 227.565 85.9661 227.726 86.1255 227.903C87.9508 228.415 89.7813 228.881 91.6258 229.301C90.8097 229.251 89.9941 229.192 89.1789 229.125C89.7585 229.322 90.3416 229.514 90.9263 229.703C95.5487 230.446 103.412 232.281 102.277 231.061C104.503 231.311 104.776 231.459 105.969 231.779C106.11 231.713 106.246 231.66 106.387 231.585C107.816 231.802 108.946 231.59 110.215 231.746C111.488 231.898 111.791 232.187 111.997 231.727C112.811 231.899 113.626 232.04 114.445 232.185C114.944 232.091 115.442 231.994 115.934 231.893C116.394 231.932 116.856 231.968 117.318 232.001C117.635 232.024 117.952 232.045 118.269 232.066C118.684 231.846 121.731 231.878 123.053 231.65C124.335 231.82 124.358 232.608 127.352 232.228C127.258 232.047 127.166 231.865 127.073 231.684C127.76 231.665 128.447 231.641 129.138 231.61C129.185 231.667 129.228 231.725 129.275 231.782C128.921 231.799 128.578 231.814 128.226 231.827C128.539 231.903 128.845 231.977 129.155 232.051C130.192 231.789 131.223 231.514 132.248 231.225C130.827 231.292 129.384 231.334 127.974 231.346C129.72 231.044 130.982 231.037 132.49 230.683C133.855 230.762 133.387 230.976 132.882 231.331C133.376 231.24 133.874 231.146 134.365 231.048C134.078 231.372 134.95 231.439 132.03 231.803C132.241 231.858 132.456 231.908 132.663 231.965C133.14 231.889 133.46 231.913 133.98 231.807C135.393 231.518 136.416 230.838 136.287 230.684C136.22 230.604 134.843 231 134.879 230.862C134.975 230.526 138.195 230.178 133.53 230.566C135.027 230.146 135.398 230.243 137.094 230.012C136.944 229.931 136.799 229.851 136.654 229.769C137.443 229.683 138.23 229.59 139.015 229.488C138.029 230.236 143.83 229.288 138.731 230.777C140.272 230.513 141.814 230.216 143.345 229.889C143.043 230.016 142.74 230.14 142.437 230.264C141.739 230.389 141.039 230.507 140.342 230.619C141.177 230.553 142.019 230.476 142.855 230.392C144.752 229.833 145.448 229.451 146.258 228.999C144.007 229.388 144.788 229.438 143.063 229.888C143.09 229.728 142.98 229.611 143.096 229.422C144.064 229.532 146.911 228.58 147.576 228.373C149.601 227.765 148.087 228.506 149.451 228.125C150.814 227.739 152.351 227.067 153.547 226.991C153.474 226.835 153.331 226.697 153.204 226.575C155.274 225.828 154.919 226.148 155.144 226.101C158.717 225.293 160.448 224.24 164.238 222.524C163.734 222.691 163.225 222.862 162.715 223.027C165.442 221.431 163.559 222.415 161.008 223.343C163.371 222.403 164.576 221.513 166.153 220.67C167.734 219.833 170.538 218.572 171.58 218.14C169.413 219.534 166.86 220.659 164.281 221.878C164.649 221.903 164.997 221.906 165.383 221.939C166.812 220.879 167.818 220.65 168.357 220.438C169.933 219.81 169.738 219.551 170.799 219.379C170.708 219.296 170.636 219.224 170.55 219.147C173.656 217.586 176.998 215.832 178.68 214.252C179.003 214.376 179.279 214.518 179.633 214.628C180.767 213.652 181.935 213.127 182.936 212.376C183.928 211.626 183.414 211.715 184.548 210.798C184.758 210.628 185.296 210.413 185.767 209.935C186.252 209.456 187.73 207.345 188.374 207.692C189.356 206.923 190.287 206.199 191.23 205.422C190.342 206.217 189.442 206.996 188.534 207.761C189.433 207.261 190.322 206.753 191.211 206.227C191.217 206.031 191.222 205.833 191.225 205.643C193.203 203.747 194.842 202.605 196.809 200.66C197.134 200.333 196.155 200.881 197.673 199.513C199.177 198.134 200.653 197.44 202.858 194.715C202.969 194.576 203.354 193.538 204.388 192.783C204.624 192.611 203.908 193.577 204.403 193.141C204.905 192.711 206.839 190.515 207.134 190.46C207.059 190.439 206.885 190.533 206.773 190.555C207.063 190.147 207.353 189.734 207.642 189.319C207.77 189.362 207.9 189.401 208.028 189.443C209.579 186.995 210.104 185.552 212.644 182.152C211.82 183.035 210.982 183.901 210.138 184.748C210.051 185.087 209.962 185.427 209.875 185.762C208.67 187.3 207.424 188.811 206.145 190.282C206.055 190.623 205.966 190.96 205.872 191.301C205.524 191.687 205.177 192.067 204.824 192.448C204.829 192.281 204.833 192.113 204.84 191.941C204.194 192.737 203.537 193.526 202.874 194.301C203.806 192.357 206.692 189.939 206.113 189.807C206.466 189.504 206.819 189.198 207.17 188.89C207.096 188.572 207.74 187.893 208.769 186.607C208.441 186.831 208.09 187.086 207.779 187.28C208.904 186.131 210.568 183.837 211.561 182.512C212 181.93 211.738 182.633 211.879 182.467C212.611 181.618 213.51 179.67 213.768 179.309C215.323 177.162 216.749 175.988 217.825 173.255C216.261 175.813 217.1 174.415 216.374 175.224C216.147 175.478 214.05 178.712 216.566 174.595C216.927 174.156 221.351 166.559 220.311 169.267C220.863 167.946 221.242 166.888 221.692 165.662C223.793 163.11 222.597 163.786 221.82 164.449C222.033 163.974 222.23 163.519 222.445 163.027C222.428 164.268 224.738 158.915 225.162 156.958C225.318 156.31 224.54 157.994 225.002 156.536C225.281 155.866 225.596 155.104 225.879 154.389C225.241 155.346 225.841 153.245 225.544 153.18C226.233 151.945 227.084 151.082 227.145 151.911C227.377 150.766 227.59 149.621 227.785 148.474C227.571 148.971 227.353 149.473 227.133 149.966C228.417 146.4 229.059 141.575 229.82 140.923C229.919 140.428 230.015 139.934 230.107 139.442C230.033 139.27 229.957 139.103 229.883 138.932C230.398 136.732 230.85 134.502 231.234 132.273C231.029 134.28 231.108 134.778 230.636 136.855C230.894 136.07 231.148 135.261 231.387 134.486C231.506 131.284 231.392 130.811 231.89 126.055C231.925 125.844 232.41 122.22 232.428 122.102C232.573 121.54 232.715 122.409 232.787 122.159C233.011 121.472 233.515 117.159 233.564 117.236C234.577 118.3 233.672 132.936 232.789 136.82C226.54 177.694 196.827 212.53 158.595 226.804C158.202 226.953 158.415 227 158.249 227.067C157.214 227.486 156.127 227.671 155.737 227.799C154.903 228.07 155.415 228.075 154.807 228.281C148.522 230.393 142.393 231.798 135.857 232.875C135.43 232.944 135.845 232.741 135.098 232.881C134.716 232.954 133.537 233.338 132.659 233.455C129.587 233.861 127.013 234.037 123.749 234.223C121.977 234.326 119.322 234.386 117.318 234.384C117.314 234.384 117.31 234.384 117.306 234.384C116.422 234.385 115.502 234.471 114.631 234.454C113.398 234.428 113.656 234.237 113.467 234.22C112.64 234.139 112.517 234.348 111.73 234.307C110.264 234.222 110.186 234.079 108.327 233.957C107 233.874 103.954 233.687 102.279 233.496C98.409 232.849 93.5219 232.007 89.9415 231.191C87.8273 230.711 87.6845 230.453 86.828 230.227C83.8193 229.415 81.4849 228.955 78.7079 228.002C75.0299 226.727 71.8938 225.275 68.4748 223.695C67.9215 223.438 67.9715 223.663 67.4266 223.413C65.4089 222.488 62.8589 221.222 61.1398 220.246C59.219 219.155 58.649 218.519 56.7775 217.458C56.23 217.144 55.9483 217.248 55.0325 216.71C53.5691 215.85 52.1371 214.653 51.177 213.965C49.8633 213.019 50.8799 214.023 49.1146 212.735C49.0423 212.681 48.8754 212.353 48.4918 212.085C47.378 211.296 47.4029 211.49 45.8201 210.266C45.6636 210.152 43.6846 208.383 43.4864 208.211C42.2782 207.241 39.9523 205.161 39.2531 204.569C36.7461 202.456 38.4679 204.386 36.8123 202.08C35.8303 201.334 34.8638 200.581 33.8536 199.747C34.5464 200.283 32.2118 197.637 32.0445 197.456C30.5829 196.02 31.2432 197.069 29.5314 195.11C32.187 197.338 27.3449 192.571 26.4131 191.368C21.764 185.748 18.1328 180.162 14.5823 173.76C13.393 171.62 11.8066 168.728 10.7284 166.37C10.4757 165.821 10.7732 166.187 10.5546 165.702C10.337 165.218 10.4592 165.809 10.2163 165.253C8.71539 161.78 7.87273 158.948 6.43803 155.793C6.42548 155.619 6.46073 155.613 6.41702 155.333C5.19879 152.752 4.05429 147.4 3.64565 145.403C2.97396 142.287 2.63196 141.506 2.2256 139.229C1.67728 136.201 1.44811 131.584 1.12191 133.706C0.810893 131.627 0.573659 129.583 0.447433 127.469C0.433549 127.233 0.601745 127.382 0.596853 127.288C0.568696 126.689 0.415843 126.505 0.378837 126.1C0.28214 125.003 0.575632 126.783 0.419063 125.22C0.342987 124.398 0.177454 123.922 0.083938 121.636C0.029081 120.188 0.000665412 118.72 0.000422266 117.234C-0.0362182 104.599 2.18106 91.2292 6.36027 79.1979C6.68034 78.2766 6.32589 78.8329 6.74374 77.6828C8.15589 73.6525 11.4595 66.7957 13.1624 63.5494C14.8349 60.2952 14.2684 60.923 15.3154 58.8748C15.5212 58.481 15.4477 58.8586 15.65 58.512C17.005 56.1803 18.8941 53.5633 20.1412 51.779C20.9681 50.596 20.7438 50.5815 21.3072 49.7517C22.1502 48.5165 23.2235 47.4004 23.7083 46.7696C25.991 43.8069 27.5108 41.7209 29.8935 39.1606C29.7702 39.2337 29.6803 39.2746 29.5716 39.3329C32.3281 36.2408 35.2432 33.2982 38.3091 30.5128C38.1382 30.6152 37.972 30.7135 37.8011 30.8163C41.422 27.567 41.3275 28.3091 40.403 27.8912C40.6512 27.6353 40.9138 27.3627 41.1542 27.121C41.3549 27.5667 43.799 25.9019 46.8503 23.7496C47.071 23.5892 48.2821 22.1319 48.438 22.6847C48.7476 22.2968 48.9266 22.0564 49.19 21.7264C49.928 21.3984 50.6759 21.071 51.4179 20.7591C51.7557 20.4986 52.1003 20.2374 52.4404 19.9809C52.4345 19.8586 52.3335 19.7949 52.3903 19.6331C54.0202 18.5049 57.5526 16.4829 58.908 15.7062C62.2553 13.7305 65.6802 11.6896 68.5594 10.7127C69.8887 10.0765 68.4653 10.4838 70.4852 9.62024C70.7545 9.61674 71.0083 9.61602 71.2881 9.61316C72.7555 8.48648 73.2096 8.59632 75.5335 7.80201C77.1116 7.27269 78.09 6.80001 79.5937 6.30962C79.9748 6.18642 79.9648 6.33449 80.223 6.24329C81.0851 5.93152 83.5302 4.97189 84.1514 4.79155C89.7849 3.09391 94.7254 2.055 100.273 1.28485C100.867 1.20422 100.078 1.1812 100.694 1.09885C101.685 0.969466 101.131 1.25606 101.705 1.18851C103.31 1.0097 103.296 0.782246 105.545 0.536951C109.245 0.147761 113.253 -0.035006 117.318 0.00488463C121.353 0.0415845 125.402 0.297601 129.233 0.693443C129.474 0.717938 129.474 0.588952 129.737 0.615247C131.455 0.789318 133.158 1.18383 134.693 1.41083C137.255 1.79423 139.199 1.96198 141.704 2.48745C146.602 3.53398 150.881 4.80975 155.746 6.49293C159.713 7.88433 163.119 9.23334 167.293 11.1934C185.513 19.7457 202.073 33.1585 213.543 49.9805C213.834 50.4078 213.621 50.3 213.715 50.4265C214.607 51.6314 214.804 51.6625 214.835 52.2817C215.938 53.8352 216.472 54.2104 217.667 56.1881C218.295 57.2459 217.509 56.6457 218.727 58.3379C219.798 59.8846 219.022 57.9511 221.478 62.9746C221.541 63.109 221.678 63.8563 222.25 64.8673C222.818 65.8878 222.382 64.5974 223.641 67.111C226.593 73.0275 229.342 80.9623 231.249 88.3934C231.391 88.8463 232.543 93.3472 232.75 94.2379C233.192 95.9539 233.298 95.557 233.727 97.8284C234.049 99.5956 234.071 101.06 234.36 103.139C234.392 103.381 234.643 103.765 234.777 105.34ZM7.2097 147.753C7.51292 148.108 8.37896 148.648 8.91763 151.122C8.97007 151.359 8.11575 150.261 8.46116 151.627C7.99772 150.329 7.60307 149.053 7.20898 147.753C7.20922 147.753 7.20946 147.753 7.2097 147.753ZM230.839 116.747C230.866 114.842 230.847 112.946 230.781 111.054C230.937 112.356 231.07 113.656 231.182 114.963C231.072 115.56 230.958 116.152 230.839 116.747ZM61.6551 17.8858C61.6567 17.8849 61.6583 17.884 61.6599 17.8831C59.9617 18.9417 58.2973 20.0417 56.6605 21.1861C56.8014 21.017 56.9433 20.8477 57.0856 20.6792C58.368 19.7522 59.6666 18.8539 60.9843 17.9821C61.2078 17.9494 61.4318 17.9171 61.6551 17.8858ZM75.6458 10.4754C76.8719 10.0861 76.6277 10.3275 77.3338 10.202C77.3337 10.2017 77.3336 10.2015 77.3335 10.2012C77.5198 10.1674 78.3428 9.89637 78.6578 9.78947C78.5134 9.75146 78.3355 9.72698 78.1813 9.69372C80.9266 8.4673 86.6943 7.38971 79.6429 10.0383C79.7134 9.90018 79.7797 9.76432 79.8509 9.62634C76.3279 10.8743 72.3749 12.29 75.6458 10.4754ZM19.2805 175.295C21.2311 177.853 21.821 178.674 23.811 182.005C23.4175 181.612 23.026 181.215 22.6376 180.816C22.364 180.228 22.0975 179.642 21.8344 179.051C21.8335 179.049 21.8325 179.048 21.8315 179.046C21.6727 178.997 21.5136 178.947 21.3576 178.901C20.6444 177.713 19.948 176.505 19.2805 175.295ZM191.161 29.9593C191.385 31.0747 191.465 30.5792 189.401 29.0801C188.684 28.566 189.272 29.2027 188.834 28.8734C186.464 27.1125 186.54 26.6197 187.218 26.8264C188.558 27.8427 189.886 28.8998 191.156 29.9557C191.158 29.9569 191.159 29.9581 191.161 29.9593ZM229.651 95.1281C229.651 95.1299 229.651 95.1317 229.652 95.1335C229.499 95.241 229.224 94.08 229.325 95.431C229.131 94.4287 228.923 93.4198 228.7 92.4122C228.782 92.7043 228.862 93.0033 228.941 93.2965C228.942 93.0226 228.943 92.7477 228.943 92.4736C228.672 92.1594 228.712 91.8034 228.528 90.7383C228.393 91.0765 228.257 91.4122 228.119 91.7481C227.9 90.5166 227.664 89.2943 227.404 88.0659C227.451 88.0375 227.498 88.0088 227.545 87.9804C227.359 87.5407 227.17 87.1077 226.979 86.6719C227.006 86.5317 227.032 86.3959 227.058 86.2555C226.858 85.7206 226.654 85.1873 226.445 84.6574C226.54 84.4487 226.969 85.6269 226.287 83.5151C226.637 84.1187 226.982 84.7264 227.324 85.3453C228.245 88.5746 229.02 91.833 229.651 95.1281ZM171.926 17.0202C175.161 18.7841 174.187 18.3888 173.282 18.2638C172.836 17.8474 172.381 17.4309 171.926 17.0202ZM12.2835 71.7942C12.0733 72.8736 11.8788 73.9481 11.6858 75.0445C11.0027 77.1012 9.86788 79.007 10.2728 77.4082C10.7733 75.4815 11.7513 73.6614 12.2835 71.7942ZM3.04825 120.221C3.10425 117.549 3.42909 120.058 3.61384 120.648C3.37389 121.392 3.42843 122.403 3.49428 124.06C3.38205 122.508 3.03914 120.667 3.0475 120.221C3.04775 120.221 3.048 120.221 3.04825 120.221ZM36.4742 36.6491C37.2224 35.8883 37.9379 35.0994 38.6853 34.4997C38.6297 34.8593 37.1199 36.0382 38.331 35.3305C37.8451 35.8072 37.3628 36.2886 36.8897 36.7706C37.0957 36.369 36.6135 36.7037 36.4766 36.6477C36.4758 36.6482 36.475 36.6486 36.4742 36.6491ZM138.438 5.35056C136.434 4.71161 136.007 4.75614 133.904 4.62744C133.637 4.36597 136.187 4.3748 137.759 4.58488C137.985 4.83905 138.21 5.09418 138.438 5.35056ZM213.981 177.604C213.961 178.183 211.971 181.322 210.828 182.776C210.92 182.572 211.012 182.368 211.103 182.164C212.099 180.666 213.059 179.145 213.981 177.604ZM3.52459 124.846C3.51452 124.57 3.50431 124.308 3.49428 124.06C3.51353 124.335 3.52548 124.6 3.52459 124.846ZM59.3436 216.86C58.447 216.636 60.6745 218.053 57.969 216.334C57.9689 216.334 57.9687 216.334 57.9686 216.334C56.1909 215.179 55.8044 214.912 54.1707 213.827C54.9475 213.935 58.3383 215.978 53.7949 212.949C53.7355 212.909 53.7427 213.157 53.0334 212.647C52.8147 212.488 52.1898 211.871 51.1471 211.076C50.8094 210.819 48.25 208.931 51.786 211.44C51.8142 211.174 52.1405 211.113 52.2617 210.92C53.6809 211.824 54.5008 212.923 56.0148 213.875C58.2688 215.281 59.6705 215.543 59.8031 216.328C57.7922 215.353 54.5499 213.278 54.3455 212.69C52.5577 211.494 51.8779 211.377 53.2364 212.483C59.6031 216.384 54.6785 214.052 60.4316 217.194C60.5409 217.159 60.8201 217.213 60.8235 217.123C62.4199 218.364 59.6604 216.947 59.3436 216.86ZM46.7705 207.553C47.8958 208.206 49.0283 208.836 50.1653 209.443C49.9949 209.676 49.2642 209.485 47.546 208.38C47.2875 208.106 47.0262 207.828 46.7705 207.553ZM149.285 227.237C149.419 227.034 149.852 226.756 150.151 226.508C150.582 226.607 159.366 223.679 154.968 225.361C154.333 225.623 150.274 226.637 149.285 227.237ZM152.556 8.70297C151.551 8.26516 150.549 7.84439 149.538 7.43749C151.156 7.84115 152.779 8.2831 154.384 8.75912C153.773 8.73488 153.166 8.71725 152.556 8.70297ZM6.25379 88.508C6.37591 88.0617 6.1999 89.6027 6.62664 87.8311C6.41348 89.1814 6.22807 90.4295 6.06162 91.7469C5.87315 92.1095 5.68592 92.4779 5.50093 92.8441C5.49997 93.1604 5.49867 93.4826 5.50036 93.7988C5.39121 93.5865 5.28179 93.3944 5.17343 93.1704C5.96372 91.0547 5.72786 90.4795 6.25379 88.508ZM39.7056 31.9956C40.2194 31.9649 37.9679 34.2972 40.3498 32.1842C40.0473 32.7496 39.4035 33.4794 38.0765 34.7784C37.8047 34.9259 37.5342 35.0746 37.2631 35.2246C37.3874 35.4109 37.0995 35.8013 36.4742 36.6491C36.4734 36.6495 36.4725 36.65 36.4717 36.6505C34.5031 38.6669 34.5858 38.5112 33.8526 38.7543C36.0626 36.726 35.8992 36.4467 37.221 34.87C38.1327 33.7901 39.5223 32.5871 39.7056 31.9956ZM139.688 229.579C141.701 228.881 139.799 229.045 143.518 228.505C143.299 228.628 143.078 228.751 142.857 228.873C141.807 229.123 140.741 229.36 139.688 229.579ZM48.4637 26.1684C47.9662 25.9057 46.1389 26.8226 46.387 27.6812C48.0126 26.6168 46.9826 26.8291 48.4637 26.1684ZM2.2374 119.324C2.22641 118.35 2.268 117.673 2.33288 117.234C2.48672 116.215 2.75725 116.486 2.96569 117.234C3.01371 117.406 3.05887 117.602 3.09927 117.815C2.99671 118.053 2.8947 118.291 2.79417 118.524C2.84851 119.18 2.90846 119.834 2.97312 120.486C2.72619 120.102 2.4805 119.714 2.2374 119.324ZM108.991 2.81698C106.169 3.38242 112.083 2.80986 110.106 3.16924C108.529 3.44294 106.421 3.27274 107.187 2.97528C107.736 2.92089 108.347 2.867 108.986 2.81738C108.988 2.81725 108.989 2.81711 108.991 2.81698ZM92.6572 5.28223C93.1984 5.56222 92.5119 5.58115 94.7055 5.06062C95.3213 4.88692 100.392 4.17308 98.2197 4.21615C96.4093 4.51958 94.5261 4.87606 92.6572 5.28223ZM11.5746 161.319C11.4208 161.426 9.61358 157.891 9.53812 157.371C9.53788 157.371 9.53765 157.371 9.53741 157.371C9.2895 156.003 10.8002 159.886 10.4787 158.075C11.6387 161.909 12.8447 162.692 11.8348 162.826C10.8679 160.67 11.4949 161.621 11.5746 161.319ZM231.081 132.284C231.081 132.282 231.081 132.28 231.082 132.278C231.045 132.543 230.491 134.661 230.442 134.385C230.887 131.812 230.986 132.29 231.002 129.832C231.102 129.708 231.197 129.603 231.299 129.468C231.245 130.44 231.288 130.989 231.081 132.284ZM158.9 224.339C158.015 224.733 156.296 225.177 155.265 225.546C158.325 223.744 162.41 222.742 158.9 224.339ZM217.235 61.3937C217.233 61.3914 217.232 61.3891 217.23 61.3868C217.231 61.3874 217.232 61.3881 217.233 61.3887C217.233 61.3903 217.234 61.392 217.235 61.3937ZM85.5165 227.201C85.6231 227.279 85.6797 227.336 85.6944 227.377C85.6935 227.38 85.6926 227.383 85.6917 227.386C85.6389 227.327 85.5821 227.266 85.5165 227.201ZM15.0438 168.736C15.5689 170.316 12.7816 165.573 12.175 163.893C12.3232 163.963 12.4194 163.941 12.6495 164.155C12.9696 165.582 14.9476 168.482 15.0438 168.736ZM24.1913 50.4826C21.6865 54.0157 24.1844 48.8662 24.9393 49.1272C24.9437 49.1419 24.2534 50.3903 24.1913 50.4826ZM4.35029 136.505C3.8978 135.462 4.16408 137.667 3.66732 134.149C3.70899 133.935 3.75146 133.721 3.79431 133.507C3.96537 134.503 4.15168 135.508 4.35029 136.505ZM9.5397 74.844C7.65435 80.0236 6.48171 85.1434 8.26534 81.9713C8.36857 81.5711 8.47654 81.1664 8.58408 80.7677C8.24874 80.5894 8.9161 79.2073 9.70554 77.1235C9.67492 76.7723 10.0856 75.6022 10.0536 75.3399C9.98915 74.8298 9.30767 76.0999 9.5397 74.844ZM200.662 37.7472C200.555 37.7278 200.449 37.7103 200.342 37.6909C199.692 37.1175 199.035 36.55 198.373 35.9925C198.559 36.0036 198.745 36.0153 198.931 36.0273C199.514 36.594 200.088 37.164 200.659 37.7429C200.66 37.7444 200.661 37.7458 200.662 37.7472ZM42.1512 204.793C42.9926 204.57 41.5704 203.584 38.7471 201.449C39.8564 202.584 40.9941 203.702 42.1512 204.793ZM68.8547 12.366C69.0428 12.5005 69.2284 12.6355 69.4202 12.7686C71.0314 11.8062 70.6293 11.7407 69.6979 11.8665C69.4139 12.0328 69.1368 12.1976 68.8547 12.366ZM94.461 3.9111C93.6921 4.0238 94.1126 4.10465 94.0324 4.11744C92.0834 4.43909 91.79 4.42134 89.4743 5.10929C89.1978 5.22166 88.9273 5.33593 88.6526 5.45149C89.8336 5.5888 90.558 5.16016 92.9147 4.89734C92.469 4.84591 92.0242 4.79647 91.5769 4.74957C92.8633 4.48771 94.1562 4.24721 95.4435 4.03106C95.5876 3.95803 95.7323 3.8856 95.8769 3.8131C95.408 3.84292 94.9232 3.87155 94.461 3.9111ZM207.105 45.3895C207.887 46.3926 208.656 47.4139 209.406 48.4428C209.517 48.4179 209.627 48.3912 209.738 48.3665C208.877 47.3591 207.997 46.3638 207.105 45.3895ZM63.9419 219.205C64.0483 219.22 64.1526 219.232 64.2475 219.239C64.2188 219.276 64.1045 219.257 63.9419 219.205ZM232.034 129.007C232.255 127.583 232.375 125.501 232.478 123.91C232.225 124.026 232.009 128.047 231.683 129.431C231.705 129.662 231.941 129.615 232.034 129.007ZM2.28311 114.117C2.16296 113.751 2.04514 113.386 1.92821 113.024C1.97365 112.148 2.02926 111.279 2.09514 110.392C1.99055 110.359 1.88503 110.327 1.78047 110.295C1.71767 114.195 1.47519 113.276 1.12248 115.21C1.50749 114.839 1.89409 114.479 2.28311 114.117ZM227.035 80.5294C226.065 77.8846 225.574 77.0135 225.814 78.6024C226.215 79.5079 226.606 80.4262 226.983 81.3462C227.001 81.0727 227.018 80.7986 227.035 80.5294ZM112.807 232.461C115.09 232.422 115.181 232.824 117.318 232.635C117.376 232.629 117.435 232.623 117.495 232.617C117.436 232.613 117.377 232.61 117.318 232.606C116.14 232.531 114.97 232.437 113.81 232.327C113.478 232.373 113.138 232.418 112.807 232.461ZM16.9763 176.439C17.3611 177.378 18.9139 178.611 20.0184 181.24C20.5176 181.713 20.8743 181.978 21.3234 182.367C21.3738 182.737 21.4504 183.146 21.4971 183.502C21.4982 183.504 21.4992 183.505 21.5003 183.507C23.0108 185.565 22.2309 184.089 22.4077 184.036C22.4799 184.018 23.4809 185.621 23.266 185.049C22.8778 184.077 20.6124 181.029 20.8959 180.831C21.5303 182.004 23.0997 184.083 22.8406 183.325C22.5547 182.502 20.8432 180.711 20.1789 179.285C20.9377 181.454 18.5829 177.473 18.6817 176.803C17.0342 174.642 18.1608 176.857 19.6657 179.199C18.4942 177.931 19.9704 179.954 19.9822 180.438C18.8558 179.075 15.9123 173.807 16.9763 176.439ZM19.8784 54.4323C18.8697 56.0143 17.2022 58.4399 16.7988 59.6901C16.5587 60.412 18.1296 57.9373 17.3267 59.805C18.2171 58.2188 18.3606 57.8204 18.0165 57.9774C18.208 57.6077 18.4044 57.2353 18.6011 56.8669C18.7369 56.7242 18.8753 56.5774 19.0118 56.4357C19.0528 56.2041 19.0958 55.9717 19.1356 55.7443C19.3855 55.3785 19.6401 55.0099 19.8945 54.6476C19.8858 54.5802 19.9018 54.4849 19.8784 54.4323ZM177.156 215.811C176.715 216.082 176.276 216.348 175.832 216.614C175.907 216.629 175.993 216.641 176.076 216.653C176.138 216.665 176.2 216.677 176.262 216.689C175.928 216.72 173.669 217.742 172.829 218.377C172.407 218.697 173.596 218.383 171.661 219.481C173.076 218.711 174.365 217.944 175.703 217.133C175.625 217.277 175.551 217.419 175.472 217.563C175.473 217.563 175.474 217.562 175.475 217.562C175.935 217.317 176.399 217.066 176.856 216.814C176.959 216.479 177.057 216.146 177.156 215.811ZM67.3069 12.6556C65.7761 13.5773 65.2914 13.9294 66.1586 13.7947C66.1603 13.794 66.162 13.7933 66.1637 13.7926C66.7018 13.3932 67.2459 12.9972 67.7906 12.6072C67.6309 12.6224 67.4714 12.6375 67.3069 12.6556ZM77.5328 226.188C81.4142 226.527 73.2534 224.163 74.6378 225.035C74.6969 225.084 77.2348 225.968 77.5328 226.188ZM1.93804 120.022C1.90872 119.098 1.89086 118.169 1.88359 117.234C1.88274 117.125 1.88203 117.015 1.88147 116.905C1.82435 117.014 1.76748 117.124 1.71076 117.234C1.64231 117.367 1.5741 117.501 1.50597 117.633C1.64168 118.433 1.78622 119.231 1.93804 120.022ZM222.958 68.944C222.766 67.832 221.629 65.2427 220.722 64.1643C221.02 64.8221 221.312 65.483 221.598 66.1464C220.965 64.9373 220.317 63.7566 219.641 62.5643C219.26 62.6855 220.218 63.9607 221.174 66.141C221.328 66.4806 221.9 68.7977 222.56 69.3848C222.7 69.5009 221.693 67.2133 222.624 68.6968C222.32 67.9989 222.036 67.4087 221.731 66.7567C221.792 66.6692 221.853 66.582 221.912 66.4896C222.272 67.3073 222.617 68.1198 222.958 68.944ZM14.4168 63.8941C13.2174 66.1768 13.237 66.5444 13.248 67.144C13.7396 66.0526 14.2486 64.9694 14.7733 63.8952C14.6535 63.8971 14.5372 63.8923 14.4168 63.8941ZM211.395 48.9888C210.596 47.8197 210.772 48.4426 210.4 48.0111C208.985 46.3867 208.207 45.1353 206.782 43.5592C206.905 43.6402 207.019 43.7144 207.137 43.7928C207.136 43.7913 207.135 43.7899 207.133 43.7884C200.717 36.0381 203.875 40.3087 207.731 44.9023C207.754 45.0641 207.772 45.2216 207.795 45.3829C209.581 47.3883 211.143 49.3191 211.395 48.9888ZM48.0603 210.291C48.1222 210.401 47.1371 210.088 48.7052 211.052C50.1624 211.516 48.0984 210.31 47.7386 209.799C48.1624 210.06 48.5945 210.324 49.0164 210.576C46.7242 208.71 46.3294 208.513 46.9659 209.456C47.0119 209.523 47.9986 210.183 48.0603 210.291ZM64.4666 220.784C65.1459 220.343 61.7031 218.891 61.7179 219.136C62.1682 219.392 62.5771 219.475 63.0354 219.779C63.499 220.084 63.5456 220.3 64.4666 220.784ZM3.01771 137.468C3.0321 137.576 2.93462 138.715 3.14643 138.564C3.43498 137.13 2.65925 134.479 2.54355 134.98C2.69223 135.88 2.87201 136.465 3.01697 137.468C3.01722 137.468 3.01746 137.468 3.01771 137.468ZM229.046 84.8587C229.057 84.8003 228.378 82.1342 228.153 81.8275C227.944 81.5863 227.771 81.4895 227.579 81.3213C228.176 82.726 228.939 85.6853 229.044 84.8533C229.045 84.8551 229.045 84.8569 229.046 84.8587Z"
fill="#737373"
/>
</svg>
);
};
const Vector = () => {
return (
<svg
fill="none"
height="22"
viewBox="0 0 93 22"
width="93"
xmlns="http://www.w3.org/2000/svg"
>
<path
d="M85.4315 8.12658C85.8083 7.83705 85.7188 7.76394 86.1501 7.45874C86.0094 7.56389 85.6668 7.90328 85.966 7.66256C86.6558 7.22122 86.2649 7.34041 86.6796 7.02305C86.6132 7.14569 86.8528 6.91901 86.9189 6.87642C86.9469 6.88667 86.9675 6.88763 86.9866 6.88157C86.9906 6.87879 86.9947 6.87602 86.9988 6.87324C87.1136 6.7562 87.2262 6.63987 87.3407 6.5207C87.8246 6.10459 88.2925 5.68361 88.7565 5.24517C88.9783 5.45491 89.2004 5.66439 89.4228 5.8736C89.4407 5.98062 85.3893 9.39718 85.3263 9.3618C85.3266 9.34944 85.3251 9.34101 85.3201 9.33428C85.2621 9.37735 85.2045 9.42 85.1469 9.46239C85.1922 9.40328 85.2374 9.34396 85.2829 9.28428C85.0964 9.21112 84.3103 9.98688 84.0226 10.2063C83.8316 10.2164 83.7999 10.4823 83.4477 10.6273C83.6105 10.4648 82.8282 10.987 82.8039 11.0754C82.4009 11.3006 82.4991 11.1965 82.3267 11.3867C81.8971 11.7145 81.6328 11.5588 81.5208 11.9301C80.6093 12.5125 80.2177 12.5645 79.8077 12.8344C79.064 13.2166 79.9184 12.8705 79.3839 13.1787C79.3591 13.1882 78.9152 13.4487 79.1594 13.2924C79.26 13.1798 78.7749 13.4424 79.1351 13.2172C78.9756 13.1677 77.9519 13.7435 78.7816 13.4082C79.1477 13.3269 78.3896 13.5838 78.106 13.7224C78.09 13.7245 78.0575 13.7352 78.0218 13.7562C77.9863 13.7771 77.9961 13.7799 78.0183 13.7738C78.0009 13.7892 77.9951 13.8019 78.0152 13.8079C76.2768 14.6004 77.6017 14.1293 76.9703 14.3775C76.9559 14.2134 76.2057 14.7636 76.1247 14.7766C76.0602 14.8154 75.8576 14.8519 75.7203 14.9738C75.6398 14.9964 75.5707 15.0344 75.5122 15.0687C75.5073 15.0671 75.4522 15.0912 75.4522 15.0912C75.4435 15.0992 75.4723 15.0896 75.4927 15.0801C75.4443 15.1085 75.4034 15.1329 75.3682 15.1423C75.3455 15.154 75.3242 15.1651 75.312 15.175C75.2973 15.1879 75.3072 15.1918 75.2811 15.207C75.2614 15.2176 75.2725 15.2064 75.2583 15.2114C75.2146 15.2239 75.2004 15.2382 75.1663 15.2539C75.1493 15.2617 75.1345 15.2654 75.1209 15.2716C75.0931 15.2828 75.0503 15.3056 75.0498 15.3059C75.0657 15.2955 75.0841 15.2816 75.0954 15.2702C75.0958 15.2711 75.0962 15.272 75.0966 15.2728C75.1531 15.243 75.1292 15.2624 75.1571 15.2512C75.1922 15.238 75.2217 15.2214 75.2557 15.2057C75.2645 15.1978 75.226 15.2124 75.2248 15.2098C75.2239 15.2072 75.2433 15.1967 75.2424 15.1941C75.2412 15.1916 75.2325 15.1909 75.2325 15.1909C75.2445 15.1808 75.3132 15.1598 75.3256 15.1509C75.3269 15.1503 75.3291 15.1482 75.3321 15.1458C75.3243 15.145 75.3167 15.1432 75.3094 15.1399C75.6803 14.9419 74.9899 15.2004 74.7422 15.316C74.3583 15.4738 74.1498 15.7619 73.9096 15.8597C73.8947 15.7035 73.7825 15.7927 73.5104 15.9286C73.5092 15.926 73.4908 15.9308 73.4704 15.9403C73.45 15.9499 73.4303 15.9796 73.4449 15.9757C73.327 16.0336 73.2247 16.0619 73.0493 16.1174C72.8588 16.2345 73.181 16.0926 73.2241 16.0696C72.828 16.2776 72.793 16.2028 72.539 16.4127C72.2429 16.5205 72.0739 16.6025 71.903 16.67C71.9132 16.6652 71.9232 16.6603 71.9259 16.657C71.8791 16.6607 71.8571 16.6664 71.8017 16.6892C71.7876 16.7046 71.8252 16.698 71.8646 16.6854C71.7524 16.7278 71.6369 16.7621 71.4798 16.7922C71.0812 16.9243 71.3147 16.9993 70.4976 17.2554C70.2402 17.3274 69.5802 17.475 69.791 17.4958C69.1733 17.7836 68.386 18.0063 68.285 17.9419C67.9742 17.9811 68.0811 18.0531 68.3656 17.9581C68.1167 18.0651 67.7216 18.0994 67.4462 18.2316C67.4492 18.3013 67.6658 18.1452 67.6618 18.2044C67.8712 18.1573 67.1751 18.4309 67.0523 18.4514C67.0295 18.4586 67.0067 18.4659 66.9839 18.4732C66.9942 18.4684 67.0224 18.4579 67.0224 18.4579C67.0253 18.457 67.0283 18.456 67.0312 18.4551C66.6494 18.5204 66.7871 18.5215 66.2304 18.7086C66.3799 18.6208 66.9311 18.4502 66.4906 18.5358C66.1697 18.6133 66.4701 18.5577 66.5139 18.5594C66.2602 18.6653 66.2477 18.6256 66.2342 18.5815C65.9405 18.7467 66.0864 18.6612 66.2081 18.6619C66.3711 18.6185 65.9691 18.7895 65.8312 18.8255C65.4157 18.9652 65.4903 18.8887 65.1499 18.9898C65.3372 18.8979 65.3 18.8626 64.9717 18.9926C65.0823 19.0109 64.84 19.0643 64.65 19.0947C64.6572 19.0927 64.6608 19.0917 64.6605 19.0904C64.6593 19.0863 64.5975 19.1023 64.5975 19.1023C64.549 19.1095 64.5077 19.1146 64.4812 19.117C64.5743 19.1719 63.9448 19.2831 63.6835 19.404C63.6317 19.3281 63.4132 19.4315 63.0963 19.5417C62.9163 19.5194 63.0798 19.5844 62.4488 19.7004C62.6013 19.6761 62.5346 19.6887 62.5259 19.7061C62.4203 19.7235 62.4233 19.7068 62.4161 19.7086C62.4054 19.712 62.4462 19.7362 62.4573 19.7341C61.7999 19.9817 60.2975 20.2852 59.6664 20.323C59.532 20.3756 59.5922 20.4096 59.1523 20.4833C59.3213 20.4874 58.7216 20.599 58.605 20.6234C58.7615 20.5875 58.7423 20.5485 58.6022 20.5698C58.6751 20.6752 57.3773 20.8246 57.0433 20.916C56.5306 20.9486 56.7063 20.8747 57.2516 20.83C57.0533 20.844 57.0883 20.827 57.003 20.8157C56.8629 20.858 56.8113 20.8442 56.9458 20.857C56.7294 20.8859 56.2482 20.9423 56.5469 20.9461C56.3503 20.9784 56.2882 21.0402 56.3821 21.0113C56.6359 20.9554 56.5325 20.9748 56.7239 20.955C56.0985 21.0961 55.8775 21.11 55.7228 21.0654C55.9728 20.9714 55.5548 21.055 55.4331 21.0981C55.8668 21.0956 55.2474 21.1159 55.0693 21.1394C54.7607 21.2399 55.2727 21.1507 55.3955 21.1485C55.09 21.2617 54.7637 21.2157 54.7464 21.274C54.1952 21.3527 53.8428 21.3871 53.8626 21.3086C53.2215 21.4915 53.5468 21.2816 53.1704 21.4193C53.0386 21.4966 52.3699 21.4537 52.6788 21.4844C52.3769 21.5494 52.1481 21.5885 52.0929 21.5261C52.0193 21.5366 51.8708 21.549 51.7501 21.5617C51.7614 21.5613 51.7729 21.5615 51.7731 21.5636C51.7736 21.5685 51.7245 21.5712 51.7165 21.5663C51.719 21.5656 51.722 21.5652 51.7253 21.5647C51.5986 21.5792 51.5214 21.5947 51.6487 21.6124C51.758 21.6924 50.01 21.7599 50.0445 21.6993C49.9236 21.8016 49.8121 21.8083 49.2062 21.8388C48.6188 21.863 48.6102 21.8489 48.0132 21.8712C47.4424 21.9273 46.969 21.9413 46.5076 21.8525C46.3835 21.8618 46.8806 21.8967 46.3425 21.8881C46.4657 21.8415 46.069 21.8669 45.9756 21.8397C46.065 21.8331 46.2067 21.8299 46.2181 21.8116C45.9703 21.8296 45.8698 21.8384 45.7727 21.8469C45.6834 21.8546 45.5971 21.8618 45.4033 21.8722C45.9544 21.9161 45.4145 21.8887 45.703 21.9337C45.7288 21.9348 45.752 21.9357 45.7727 21.9362C46.1386 21.9453 45.7459 21.8697 45.8375 21.8708C45.9789 21.8664 46.1434 21.8816 46.3012 21.9017C46.1399 21.9209 45.9456 21.937 45.7727 21.9419C45.5787 21.9473 45.4097 21.9386 45.3426 21.9066C44.8307 21.9004 45.3998 21.8669 45.3733 21.8453C45.1064 21.8561 45.1514 21.8582 44.8725 21.8522C44.8725 21.8531 44.8724 21.854 44.8724 21.8549C44.8687 21.8541 44.8648 21.8534 44.8611 21.8533C44.8611 21.8529 44.8611 21.8524 44.8611 21.852C44.8586 21.8519 44.856 21.8519 44.8535 21.8519C44.8572 21.8526 44.8611 21.8533 44.8611 21.8533C44.8611 21.8538 44.8611 21.8542 44.8611 21.8547C44.8429 21.8544 44.8667 21.8575 44.8683 21.8577C44.8683 21.8567 44.8684 21.8558 44.8684 21.8548C45.2225 21.9144 44.4751 21.8683 44.5553 21.828C44.8809 21.8074 44.4652 21.8015 44.532 21.8513C44.2967 21.8565 44.2283 21.8722 44.1695 21.8411C44.076 21.8375 43.939 21.7822 43.9484 21.8337C43.6899 21.8163 43.8067 21.8082 43.5551 21.7963C43.2806 21.7806 43.2735 21.8525 42.9738 21.8536C42.9739 21.8522 42.9739 21.8508 42.974 21.8494C42.9589 21.8486 42.9474 21.8507 42.9397 21.8531C42.9131 21.853 42.8939 21.8534 42.8636 21.8517C42.8383 21.8328 43.1632 21.7871 42.7745 21.7527C42.7322 21.7712 42.683 21.7803 42.6265 21.7832C42.6301 21.7786 42.5702 21.7806 42.5513 21.7843C42.4936 21.7825 42.4316 21.7758 42.3669 21.7667C42.5304 21.7773 42.5581 21.745 42.3891 21.7403C42.3295 21.7434 42.5071 21.7638 42.3625 21.7661C42.3279 21.7612 42.2925 21.7558 42.2568 21.7498C42.2682 21.7492 42.3357 21.7508 42.3357 21.7508C42.366 21.7458 42.232 21.732 42.2568 21.7491C42.2383 21.7457 42.2158 21.7421 42.1934 21.7384C41.4072 21.6631 42.6059 21.8289 41.9448 21.7918C41.9304 21.7783 41.8117 21.7642 41.7248 21.7532C41.7486 21.7567 41.7901 21.756 41.7739 21.7475C41.741 21.7463 41.7116 21.7482 41.7097 21.7483C41.7106 21.7502 41.716 21.7519 41.7236 21.7531C41.6392 21.7424 41.5855 21.7349 41.688 21.7353C41.4989 21.677 40.999 21.6938 40.735 21.6606C40.7389 21.6602 40.7463 21.6615 40.7464 21.6601C40.6955 21.6413 40.6992 21.6403 40.6242 21.6366C40.6204 21.6369 40.624 21.6388 40.6238 21.6402C40.5908 21.63 40.5656 21.6169 40.5634 21.5998C39.9609 21.5059 40.7511 21.6544 40.1878 21.6119C40.165 21.6124 40.1387 21.6111 40.1159 21.6115C40.0713 21.6033 40.0559 21.6066 40.0553 21.6115C39.5595 21.6018 38.9129 21.4621 38.4939 21.3712C38.5285 21.3959 38.5271 21.4106 38.4992 21.4178C38.5673 21.4216 38.6058 21.4178 38.6692 21.4443C38.6161 21.4495 38.5202 21.439 38.461 21.4229C38.2365 21.4349 37.4625 21.2809 37.168 21.2505C37.5051 21.282 36.9117 21.1176 36.8372 21.0779C36.7041 21.0983 37.273 21.2616 36.6125 21.074C35.1896 20.7991 37.2835 21.2691 35.6374 20.9928C35.5092 20.9833 35.2069 20.9011 35.4825 20.9618C35.4893 20.8862 35.1263 20.9138 34.7979 20.8386C35.0471 20.8465 35.5949 20.9346 34.9705 20.7727C35.2053 20.8672 34.9765 20.8381 34.8657 20.7839C34.9509 20.6966 34.4875 20.7106 34.8903 20.813C34.789 20.8049 34.6432 20.7901 34.4946 20.7691C34.5072 20.763 34.4423 20.7437 34.3721 20.7503C34.3498 20.7472 34.324 20.7427 34.3019 20.7383C34.3488 20.7307 34.0378 20.6633 34.2633 20.702C34.0289 20.6492 34.2153 20.7123 34.2908 20.7368C34.1208 20.706 33.9747 20.6685 33.9406 20.6293C33.5697 20.5502 33.8178 20.5907 33.8509 20.5627C33.9987 20.5717 33.5381 20.481 33.5111 20.4984C33.8302 20.5884 33.2457 20.4785 33.3479 20.4709C32.9794 20.3974 34.19 20.7051 33.5039 20.5663C33.3524 20.5504 33.0714 20.4225 33.0757 20.4714C33.1485 20.489 32.931 20.4498 33.033 20.456C33.023 20.4151 33.0241 20.3933 32.8948 20.3714C32.8789 20.3678 32.863 20.3643 32.8471 20.3607C32.8504 20.3628 32.8612 20.366 32.8685 20.3677C32.8389 20.3631 32.7978 20.3581 32.7494 20.3521C32.7531 20.3522 32.7566 20.353 32.7567 20.3524C32.7069 20.3396 32.655 20.3201 32.653 20.3193C32.6183 20.3199 32.6421 20.3327 32.6781 20.3431C31.8958 20.1777 32.3497 20.1821 32.0489 20.1644C31.8331 20.095 31.5994 20.1087 31.5953 20.0623C31.6171 20.0676 31.6351 20.0734 31.6361 20.0694C31.6183 20.0636 31.5967 20.0576 31.5955 20.0615C31.5965 20.0575 31.5975 20.0535 31.5984 20.0494C31.386 20.0518 31.2574 19.9937 31.0258 19.931C31.0298 19.9306 31.0299 19.9298 31.0302 19.9284C31.0772 19.926 30.8704 19.8731 30.8976 19.9017C30.905 19.9029 30.9195 19.9073 30.9303 19.9101C30.8413 19.8952 30.734 19.8753 30.6159 19.8516C30.6423 19.8549 30.6411 19.8445 30.5873 19.8275C30.5653 19.8245 30.5616 19.8368 30.5614 19.8373C30.5755 19.8424 30.5865 19.8453 30.5973 19.8481C30.494 19.8275 30.3836 19.8041 30.2697 19.7787C30.2878 19.7821 30.3106 19.7812 30.3116 19.7812C30.28 19.7684 30.2209 19.7577 30.2481 19.7723C30.255 19.7748 30.2587 19.7757 30.2659 19.7776C29.7904 19.671 29.2438 19.5214 28.9038 19.3713C28.6379 19.2745 28.3327 19.2131 28.2366 19.1292C28.0913 19.0925 28.1934 19.1816 27.8989 19.0805C27.2223 18.9182 26.9618 18.8072 26.0161 18.5007C26.0459 18.5064 26.0563 18.4995 26.0448 18.4749C25.9351 18.4364 25.7013 18.3539 25.7111 18.383C25.7911 18.4158 25.8638 18.4473 25.9197 18.4693C25.8733 18.4542 25.8233 18.4379 25.7698 18.4202C25.216 18.2053 25.2578 18.1214 25.8745 18.4052C25.6789 18.3159 25.7489 18.3309 25.6552 18.2689C25.5533 18.2536 25.459 18.1941 25.5919 18.2795C25.4076 18.203 24.7892 17.9666 25.2296 18.1698C25.0921 18.1428 24.8857 18.074 25.0295 18.1499C25.204 18.1853 25.2173 18.204 25.3562 18.261C24.7357 18.1038 24.1797 17.7868 24.5596 17.8947C24.5019 17.87 24.4534 17.8498 24.4127 17.8331C24.4232 17.8456 24.2643 17.8038 24.229 17.7692C24.2259 17.7657 24.2331 17.7671 24.246 17.7708C24.1 17.7285 24.4913 17.9432 23.8225 17.6175C23.6008 17.6107 23.4197 17.5789 22.8387 17.3231C23.0451 17.4033 22.7448 17.245 22.6022 17.1973C22.6531 17.1914 22.7336 17.2325 22.744 17.2065C22.8394 17.2409 23.046 17.3608 23.1498 17.4043C22.9217 17.3284 23.189 17.4684 23.1768 17.438C23.2846 17.4711 23.3097 17.5521 23.3603 17.4839C23.3077 17.4328 23.5212 17.5356 23.6095 17.5565C23.6611 17.5777 23.4379 17.4593 23.4397 17.4756C23.3147 17.4967 22.8509 17.2003 22.515 17.0619C22.0998 16.9285 22.7126 17.2438 22.2977 17.0591C22.175 17.0227 22.2371 16.999 22.2638 16.9932C22.2587 16.9463 21.7693 16.7972 22.0094 16.9319C21.962 16.9123 21.9146 16.8927 21.8672 16.8731C21.864 16.871 21.8573 16.8674 21.8439 16.8611C21.8232 16.8525 21.811 16.8421 21.7866 16.8327C21.7789 16.8317 21.7819 16.8346 21.7917 16.8402C21.6959 16.7972 21.6678 16.7771 21.8383 16.8254C21.6595 16.7289 21.7255 16.7938 21.5085 16.6812C21.6102 16.7587 21.0807 16.5662 21.163 16.5645C21.176 16.5723 21.1862 16.5774 21.1994 16.5846C21.2186 16.5936 21.235 16.6007 21.2368 16.6015C21.2332 16.6013 21.2302 16.6001 21.2296 16.5999C21.3453 16.6537 21.3851 16.6268 21.1607 16.5414C21.0185 16.5018 20.8179 16.4081 20.6432 16.3397C20.6332 16.3345 20.6195 16.3285 20.6126 16.3254C20.6052 16.3237 20.6083 16.3259 20.6115 16.328C20.5203 16.2933 20.4342 16.2651 20.3711 16.2592C20.0203 16.0875 20.0772 16.0804 19.8093 16.0257C19.3545 15.8104 19.6934 15.8557 19.2583 15.733C19.2105 15.7199 19.1911 15.7077 19.1419 15.6799C19.1989 15.6997 19.2151 15.7005 19.2104 15.6929C19.2305 15.703 19.2474 15.7116 19.2495 15.7072C19.234 15.6961 19.2132 15.6871 19.2018 15.6848C19.1707 15.6626 19.086 15.6229 19.0382 15.6188C19.0429 15.6443 19.1476 15.7206 18.9858 15.659C18.8409 15.6227 18.208 15.2826 18.0793 15.204C18.0484 15.1903 18.0277 15.1809 18.0002 15.1688C18.0042 15.1693 18.0081 15.1697 18.0023 15.1645C17.9738 15.1458 17.9181 15.1236 17.9419 15.1432C17.7999 15.08 17.7235 15.0429 17.684 15.021C17.6483 15.002 17.6167 14.9819 17.6008 14.966C17.6191 14.9752 17.6355 14.9826 17.6504 14.9891C17.6701 14.9771 17.7605 14.9883 17.3034 14.7488C16.9955 14.6015 17.3627 14.7965 17.416 14.8256C17.4147 14.8281 17.1073 14.7034 17.4711 14.8912C17.3963 14.8559 17.2081 14.7866 17.2199 14.7635C16.8193 14.5249 16.657 14.6312 16.4377 14.3065C16.8571 14.5168 15.9665 14.0578 16.3309 14.2753C16.041 14.1077 15.3042 13.6944 15.7785 13.8987C15.4867 13.7365 15.4994 13.7832 15.2834 13.6695C15.1227 13.5342 14.578 13.338 14.8824 13.4179C14.3383 13.0374 14.7802 13.4754 14.4879 13.2669C14.3904 13.0004 14.1536 13.1459 13.9417 12.9199C13.7676 12.779 13.8605 12.8502 13.5891 12.7111C13.5854 12.6445 13.3058 12.541 13.1231 12.4136C12.919 12.2864 13.2636 12.523 13.1761 12.493C12.946 12.3354 12.8674 12.3478 12.7706 12.2893C12.7201 12.2209 13.0914 12.4219 12.8664 12.2706C12.8823 12.2177 12.7137 12.1594 12.5879 12.1085C12.6075 12.113 12.5674 12.0744 12.5327 12.0525C12.4882 12.0244 12.4373 12.0278 12.5559 12.0935C12.5614 12.0967 12.5663 12.0992 12.5705 12.1013C12.5067 12.0751 12.458 12.0515 12.4567 12.0324C12.3932 11.9793 12.3362 11.9347 12.2856 11.8969C12.2854 11.8966 12.2816 11.894 12.2814 11.8937C11.9143 11.6204 11.8568 11.7179 11.7538 11.5673C11.4915 11.4245 11.4511 11.3349 11.1967 11.1339C10.6377 10.646 10.8295 10.9928 10.4257 10.7215C10.4478 10.736 10.4747 10.7497 10.4651 10.7371C10.4396 10.7143 10.3876 10.6839 10.4083 10.7069C10.4102 10.7107 10.4163 10.715 10.4224 10.7192C10.3848 10.6939 10.342 10.6631 10.2911 10.624C9.84949 10.3797 10.4751 10.6561 9.70156 10.1325C9.6861 10.1542 9.88831 10.2661 9.91107 10.2994C9.90947 10.3017 9.62343 10.1314 9.95596 10.3727C9.82065 10.2896 9.33605 9.92513 9.3797 9.90341C9.35427 9.80728 8.50038 9.3085 8.21492 8.99484C9.1354 9.58094 7.97983 8.76764 7.6317 8.54713C7.47651 8.46903 7.51795 8.44742 7.617 8.50471C7.52532 8.29406 6.99352 8.05895 6.91111 7.98022C6.38202 7.53809 7.16368 8.1772 6.599 7.67743C7.09335 8.08631 6.16264 7.2409 6.07471 7.21562C6.09449 7.27286 5.85969 7.09439 6.09586 7.31201C6.10112 7.34054 5.71262 7.03236 5.72605 7.01165C6.28666 7.38593 4.986 6.25431 4.88546 6.23786C4.99959 6.38746 4.80286 6.1654 4.82723 6.1506C5.44406 6.6923 4.5116 5.7637 4.75381 6.04128C4.65336 6.0156 4.56234 5.88043 4.42824 5.70457C4.34154 5.65853 4.25521 5.61244 4.16847 5.56552C2.67092 4.12314 1.26917 2.57067 5.35846e-05 0.907839C0.226632 0.664209 0.45423 0.421708 0.682842 0.180351C2.60911 2.74315 4.86261 5.04791 7.31745 7.10019C7.07153 6.99205 6.82505 6.88067 6.57986 6.76755C6.67743 6.82555 6.79659 6.91537 6.97966 7.0853C7.35458 7.47202 6.57117 6.56152 7.21928 7.17667C6.85241 6.71486 7.85826 7.77551 7.71669 7.46461C8.05379 7.75977 7.86441 7.70572 8.20357 7.91148C8.24152 8.02482 8.66689 8.27128 8.33046 7.99032C8.38673 8.02095 8.52033 8.15686 8.5022 8.0962C8.86063 8.36402 8.13836 7.89468 8.64943 8.29814C8.67217 8.26903 8.86583 8.44798 8.92091 8.49196C8.9964 8.50317 8.90426 8.39836 9.11801 8.6061C9.44033 8.80033 9.09429 8.62559 8.97093 8.53046C9.13316 8.75746 9.2962 8.79514 9.34086 8.81578C9.49759 8.8667 9.70633 8.9897 9.55702 8.95432C9.56794 9.04573 9.90144 9.17408 9.92979 9.21004C9.86693 9.23345 10.1131 9.41776 10.2535 9.48918C10.2491 9.50156 10.2608 9.52307 10.2953 9.5513C10.3591 9.60225 10.4095 9.57634 10.3903 9.53332C10.5113 9.63146 10.7719 9.79599 10.8954 9.87175C10.7256 9.81069 11.5816 10.514 11.1519 10.1129C11.6139 10.3149 12.8843 11.2382 13.714 11.7147C13.6125 11.7674 13.9988 11.8664 14.2848 12.0576C14.265 12.1682 14.6406 12.2108 14.816 12.3799C14.7611 12.3164 15.0827 12.5355 15.1081 12.5558C15.0359 12.5626 15.0232 12.5403 15.21 12.6463C15.7216 12.9668 15.236 12.699 15.6634 12.8518C16.1101 13.0912 15.1868 12.6732 15.9466 13.0276C15.7009 12.9443 15.9274 13.047 16.0763 13.1374C16.0726 13.1369 16.0748 13.1404 16.0863 13.1498C16.0871 13.1487 16.0944 13.1504 16.0952 13.1492C16.1046 13.1552 16.1143 13.1605 16.1234 13.1671C16.2062 13.17 16.0827 13.0718 16.3358 13.2492C16.7517 13.4146 15.8567 13.107 16.4893 13.3943C16.4949 13.3303 17.2311 13.6459 17.0279 13.6354C17.1008 13.7037 17.2521 13.7093 17.2346 13.727C17.1127 13.7769 17.9954 14.1171 17.5073 13.8445C17.9114 14.0619 18.2428 14.2102 18.4031 14.3448C18.2479 14.3 18.5175 14.4302 18.5122 14.4421C18.6529 14.4909 18.5497 14.424 18.4837 14.3822C19.2152 14.6466 21.7386 15.8875 22.183 16.0071C23.0075 16.3141 22.8445 16.4042 23.1194 16.4846C23.5461 16.6947 22.9573 16.2808 23.3748 16.5335C23.5822 16.6028 23.2439 16.4618 23.2258 16.4273C23.3435 16.4716 23.4185 16.5033 23.4721 16.5287C23.4701 16.5245 23.4711 16.5214 23.4713 16.521C23.5309 16.5444 23.5906 16.5676 23.6503 16.5908C23.6623 16.6007 23.6597 16.6071 23.6597 16.6071C23.6514 16.6053 23.5617 16.5631 23.509 16.5463C23.6641 16.6268 23.5607 16.6376 23.9086 16.7847C24.2507 16.8117 23.9802 16.8146 24.2479 16.9232C24.3748 16.9126 24.6127 16.9417 24.9701 17.0948C24.5858 17.0259 25.3821 17.3497 25.3664 17.2501C25.7639 17.4561 25.5682 17.2994 25.2328 17.1838C25.6166 17.2959 25.6979 17.3976 25.8479 17.4633C25.9355 17.4708 25.9735 17.4632 25.9946 17.5156C26.2864 17.6383 26.084 17.5255 26.1856 17.5335C26.0548 17.4815 25.9425 17.4676 25.8775 17.4085C25.951 17.434 26.0244 17.4594 26.098 17.4846C26.1438 17.5061 26.1796 17.5242 26.205 17.5406C26.2489 17.5639 26.3387 17.6117 26.4101 17.6398C26.3807 17.6343 26.3283 17.6268 26.3248 17.6256C26.4045 17.6674 26.4297 17.6625 26.4309 17.6474C26.4481 17.654 26.466 17.6586 26.4772 17.6602C26.4773 17.66 26.4774 17.6597 26.4775 17.6595C26.5073 17.6636 26.5185 17.6541 26.4985 17.6208C27.0293 17.7814 26.9373 17.9077 27.0133 17.7946C27.2605 17.8466 27.0619 17.9084 27.2578 17.927C27.3245 17.961 27.4414 17.9708 27.2328 17.9079C27.2665 17.9123 27.4744 17.9665 27.4771 17.946C27.9059 18.0765 27.2042 17.9239 27.6397 18.0703C27.6703 17.9491 28.0347 18.247 28.0248 18.1418C27.9345 18.1086 28.0367 18.1169 28.0784 18.132C28.2535 18.2292 28.4023 18.236 28.6652 18.3104C28.7473 18.3721 27.999 18.1886 28.4078 18.3317C28.4171 18.301 28.6754 18.38 28.6936 18.3188C28.9405 18.3683 28.7381 18.4665 28.9595 18.4363C28.8858 18.3324 29.2233 18.4954 29.3097 18.5447C29.2961 18.4234 30.4987 18.8873 30.7664 18.9267C30.7883 18.9193 31.1091 18.9968 31.5572 19.1055C31.5311 19.1184 31.6787 19.1517 31.5714 19.109C32.6478 19.3778 34.4478 19.7711 34.5107 19.8167C34.5408 19.7441 35.0249 19.8804 35.1182 19.902C35.4038 19.9657 34.8543 19.9201 35.2876 19.964C35.4865 19.8697 35.4121 20.0674 35.6512 20.0601C35.4253 19.9657 35.8807 20.0453 36.2824 20.1088C36.1091 20.0854 36.385 20.1889 36.4482 20.2067C36.5448 20.1882 36.5309 20.181 36.3624 20.1594C36.3837 20.0787 36.5805 20.1986 36.6604 20.2124C36.4571 20.0935 37.5555 20.3274 37.8352 20.3723C37.8204 20.3722 37.8241 20.3727 37.8427 20.3733C37.93 20.3881 37.9266 20.3842 37.7535 20.3433C38.5909 20.4425 38.4751 20.5333 38.5325 20.4883C38.6428 20.5328 38.7906 20.4893 38.788 20.5101C38.7059 20.5413 39.5612 20.5903 38.9928 20.5737C38.8134 20.5751 39.2789 20.613 39.2608 20.6069C39.3784 20.5887 39.0502 20.5031 39.3356 20.5716C39.5168 20.5532 39.7012 20.6395 39.9471 20.6243C39.9102 20.6535 40.2274 20.7287 40.3616 20.7661C39.9942 20.5655 42.9841 20.9164 43.5816 20.9269C43.8354 20.8782 43.899 20.9464 44.1454 20.9686C43.9202 20.8846 45.2819 20.9547 44.8213 20.9772C45.5468 21.0232 44.9156 20.9314 45.5353 20.9487C45.628 20.9502 45.718 20.9535 45.7727 20.9593C45.8308 20.9655 45.8493 20.9747 45.7889 20.9877C46.0085 21.0018 46.2813 21.0002 46.064 20.9646C46.1595 20.9543 46.3215 20.9613 46.4695 20.9664C46.4547 20.9659 46.4362 20.9669 46.4252 20.9698C46.4548 20.9743 46.4957 20.9752 46.5327 20.976C46.5178 20.97 46.4991 20.9674 46.4806 20.9662C46.662 20.9723 46.8148 20.9748 46.7806 20.9384C47.4501 20.8987 46.8688 21.0023 47.2951 20.9601C47.3781 20.9136 47.3469 20.9706 47.3362 20.9828C47.4908 20.998 47.6264 20.9744 47.6589 20.9522C47.6849 20.9605 47.7624 20.9592 47.8362 20.9564C47.8502 20.9405 47.7094 20.9164 47.6622 20.9355C47.6435 20.9256 47.5989 20.918 47.4961 20.9212C48.0913 20.9222 48.7205 20.8484 48.7093 20.9211C49.5569 20.8229 53.4616 20.4495 53.4284 20.481C53.6784 20.4678 53.9073 20.5125 53.5797 20.447C53.8796 20.4424 54.1011 20.3134 54.1718 20.3673C54.4102 20.3375 54.5686 20.3199 54.2864 20.3338C54.4455 20.3151 55.6144 20.1406 55.8587 20.0985C55.2038 20.215 56.1894 20.1731 55.8582 20.1404C56.0912 20.0744 56.0022 20.0803 56.1133 20.1167C56.1046 20.0634 56.1847 20.0726 56.4328 20.0471C56.4489 20.009 56.1451 20.0606 56.0196 20.0724C56.5438 19.9699 56.7228 20.0266 57.0111 19.9646C56.9363 19.9011 57.1093 19.9488 57.3123 19.8466C57.654 19.7852 57.9273 19.7719 57.7602 19.8264C57.979 19.8057 57.786 19.7816 57.8622 19.7458C57.9914 19.707 58.5245 19.6432 58.3564 19.649C58.6559 19.5691 58.2932 19.7667 58.6613 19.5955C58.8614 19.6359 58.9312 19.57 58.9327 19.5404C58.9054 19.5168 59.1052 19.5165 59.15 19.5135C59.2321 19.4895 59.5644 19.3799 59.5935 19.4085C59.5307 19.434 59.4933 19.4542 59.5939 19.4105C59.5938 19.4098 59.5936 19.4091 59.5935 19.4085C59.6318 19.3931 59.6771 19.3749 59.706 19.3686C59.946 19.3374 59.7176 19.4549 59.8919 19.3856C59.7697 19.3607 60.0288 19.2712 60.1108 19.3001C60.2228 19.2939 60.2451 19.309 60.182 19.2635C60.867 19.101 61.2244 19.0551 61.7075 18.9334C61.7583 18.9004 65.3205 17.9443 65.4232 17.9449C65.4433 17.8449 65.8399 17.8026 65.9807 17.7312C66.2465 17.6763 65.8387 17.8484 66.1831 17.709C66.3835 17.519 66.2586 17.7872 66.616 17.6055C66.1985 17.6822 66.7434 17.5302 66.8251 17.4704C67.1159 17.3791 67.1426 17.3661 67.0974 17.3834C67.1353 17.3711 67.1732 17.3587 67.2111 17.3464C67.1511 17.3888 67.1533 17.3726 67.0927 17.3893C67.0679 17.396 67.0413 17.4089 67.034 17.4114C67.0324 17.4119 67.0312 17.4115 67.0295 17.4114C66.9773 17.4347 66.9234 17.464 66.9408 17.481C67.1694 17.4549 67.6245 17.2511 67.2344 17.3792C67.18 17.3544 67.4035 17.2657 67.4203 17.3167C67.5766 17.3533 67.3356 17.2721 67.8585 17.1331C67.8104 17.234 67.9998 17.0539 68.3867 16.953C68.3804 17.0477 69.1042 16.6981 68.5614 16.8924C69.3158 16.6201 69.0318 16.7814 69.5013 16.6429C69.5374 16.5903 69.4344 16.5998 69.7033 16.5379C69.5837 16.5233 70.2523 16.3375 69.758 16.526C69.3973 16.6708 69.7926 16.6088 69.7328 16.5747C69.9459 16.5112 69.8007 16.4918 69.9816 16.4688C70.1764 16.3665 69.9795 16.3995 70.1423 16.3178C70.5345 16.2262 70.0419 16.4919 70.5853 16.2132C70.8883 16.0739 70.8515 16.1116 70.734 16.2079C71.1124 16.0987 70.9126 16.0744 71.0733 15.9676C71.1185 16.0225 71.5788 15.828 71.3087 15.8896C71.8832 15.6526 71.8948 15.6415 71.6457 15.8558C72.0505 15.7408 72.1431 15.7012 71.7608 15.8933C71.7815 15.925 72.0051 15.8252 72.1279 15.7825C72.6019 15.5321 71.2267 15.955 72.101 15.6378C71.7346 15.621 73.9238 14.8194 74.1485 14.7216C74.2082 14.6653 74.5743 14.6487 74.6569 14.4721C74.3093 14.5847 74.9059 14.3399 75.1601 14.2113C74.3874 14.5944 75.2597 14.2496 75.4326 14.1563C75.5515 14.079 75.5303 14.0519 75.4168 14.0887C75.5072 14.0463 75.8962 13.8578 75.7482 13.9499C75.9365 13.9243 75.8339 13.8979 75.8424 13.882C75.9487 13.8308 76.1664 13.821 76.1238 13.8433C76.411 13.6877 76.1069 13.7665 76.5118 13.6654C76.767 13.4969 76.4401 13.6543 76.5627 13.5432C76.6009 13.5533 76.9335 13.3583 77.1205 13.2858C77.1061 13.2657 77.2007 13.2564 77.1648 13.2827C77.1431 13.297 77.1344 13.3046 77.1323 13.3088C77.0435 13.3628 77.0776 13.3887 77.1941 13.3079C77.1814 13.3073 77.1686 13.3067 77.1559 13.3062C77.2197 13.2846 77.3962 13.1993 77.4243 13.1973C77.2478 13.2342 77.5011 13.1126 77.5559 13.1138C77.7079 13.1562 77.7381 12.9735 77.6138 12.992C77.8141 12.872 77.6467 13.0388 77.7911 13.027C77.8582 13.0272 77.7698 13.0819 77.6773 13.1374C77.6804 13.1191 77.6326 13.1253 77.5309 13.1781C77.3632 13.2644 77.3788 13.3107 77.5322 13.2367C77.516 13.2608 77.5654 13.2613 77.7514 13.2154C77.7346 13.3118 77.8605 13.1744 78.0402 13.0767C77.9515 13.0999 77.986 13.0541 77.8495 13.1141C77.5961 13.207 77.9092 13.0362 77.9239 13.0717C78.0527 13.0291 78.2718 12.981 78.2643 12.912C78.278 12.9689 78.3758 12.8531 78.5128 12.8177C78.7819 12.6288 78.1171 12.8425 78.4746 12.778C78.2212 12.926 78.3027 12.8263 78.3804 12.7518C78.2406 12.8204 78.0201 12.9828 78.0863 12.9808C77.9071 13.0474 78.0172 12.8034 78.198 12.6792C78.3478 12.6296 78.0942 12.8773 78.3517 12.7538C78.3343 12.7135 79.0147 12.4069 78.6975 12.529C78.7379 12.4566 78.8946 12.4268 78.8357 12.4881C78.9918 12.3883 79.1152 12.2901 79.3106 12.1453C79.2911 12.1482 79.2935 12.1373 79.3055 12.1209C79.2572 12.141 79.1578 12.2064 79.1506 12.2088C79.1429 12.2098 79.1671 12.1779 79.1557 12.1723C79.1547 12.1706 79.1396 12.1715 79.1384 12.1716C79.1544 12.1625 79.1705 12.1535 79.1865 12.1445C79.2377 12.1222 79.3146 12.0851 79.3231 12.0995C79.3933 12.0278 79.5715 11.8997 79.6555 11.89C79.475 12.0213 79.2665 12.1726 79.4361 12.1337C79.3344 12.2026 79.206 12.2316 79.2721 12.2585C79.4907 12.1246 79.8639 12.0583 79.7784 11.984C79.9492 11.8641 79.7943 11.6792 80.2293 11.5882C80.6521 11.2591 80.5275 11.4391 80.2615 11.5774C80.1757 11.6647 80.4688 11.5214 80.5431 11.5232C80.7122 11.3495 81.4845 10.9971 81.3815 10.951C81.6013 10.7996 81.427 10.8908 81.6871 10.7484C81.7763 10.6406 81.7201 10.697 81.6456 10.6828C81.7675 10.5719 82.0074 10.5086 81.8526 10.6433C81.9984 10.5846 82.2577 10.4359 82.1447 10.4258C82.724 10.1573 81.348 10.9755 82.387 10.4434C82.0024 10.7948 82.6931 10.2448 82.6771 10.2015C82.3717 10.3455 82.3231 10.4331 82.5901 10.171C83.0266 9.82953 82.3977 10.4174 82.9255 10.045C83.1929 9.7398 82.6037 10.1092 83.1086 9.70836C83.2773 9.6152 83.2009 9.76473 83.2075 9.83388C83.1513 9.86967 83.096 9.9071 83.096 9.9071C83.0414 9.95844 83.1304 9.91111 83.2143 9.85651C83.2408 9.88797 83.339 9.85077 83.6613 9.58845C82.829 9.85693 83.8241 9.43873 83.3562 9.5725C83.7139 9.29161 84.2301 8.88296 84.4214 8.8445C85.0284 8.49744 84.5932 8.75352 84.8207 8.5064C84.8507 8.60247 85.5986 8.08819 85.2449 8.25479C85.1267 8.32018 84.9992 8.38529 85.2342 8.24083C85.471 8.01378 85.3371 8.15588 85.4315 8.12658ZM35.6116 21.0023C35.5833 20.9972 35.555 20.992 35.5267 20.9869C35.5376 20.9875 35.5653 20.9911 35.5677 20.9914C35.5776 20.9932 35.5875 20.995 35.5974 20.9968C35.6041 20.9994 35.6107 21.002 35.6116 21.0023ZM55.6716 21.1088C55.6574 21.1145 55.6434 21.121 55.6585 21.1214C55.6661 21.1203 55.724 21.1176 55.7293 21.1174C55.7233 21.119 55.7174 21.1207 55.7114 21.1223C55.725 21.1202 55.7386 21.118 55.7522 21.1159C55.7523 21.1168 55.7525 21.1178 55.7526 21.1187C55.6678 21.1335 55.5722 21.1511 55.5429 21.157C55.5251 21.1611 55.4975 21.1709 55.4961 21.1714C55.437 21.1804 55.378 21.1894 55.319 21.1983C55.3334 21.1947 55.3407 21.1922 55.34 21.188C55.3399 21.1871 55.3398 21.1861 55.3396 21.1852C55.391 21.176 55.4386 21.1659 55.4386 21.1659C55.4457 21.1647 55.4378 21.1604 55.4378 21.1604C55.4561 21.1528 55.6389 21.1259 55.6393 21.1202C55.6391 21.1188 55.6304 21.1123 55.6304 21.1123C55.6441 21.1111 55.6578 21.11 55.6716 21.1088ZM74.6553 15.4805C74.6555 15.4809 74.6557 15.4813 74.6559 15.4817C74.6581 15.4807 74.6603 15.4797 74.6625 15.4787C74.6733 15.4754 74.6754 15.4797 74.7039 15.4699C74.7995 15.436 74.9032 15.3921 74.9924 15.3614C74.9382 15.3961 74.9012 15.4237 74.8685 15.4516C74.8332 15.4677 74.798 15.4836 74.7627 15.4996C74.7476 15.5026 74.7325 15.5062 74.725 15.508C74.645 15.5311 74.5471 15.569 74.4547 15.6102C74.4401 15.5961 74.5744 15.5476 74.6054 15.5251C74.6202 15.5123 74.5294 15.5294 74.6553 15.4805ZM79.0389 13.3329C79.0274 13.3432 79.016 13.3542 79.0305 13.3495C79.0371 13.3459 79.0967 13.3211 79.0967 13.3211C79.0957 13.3222 79.0948 13.3233 79.0938 13.3244C79.106 13.3177 79.1181 13.3111 79.1302 13.3044C79.1306 13.3052 79.1311 13.306 79.1315 13.3068C79.0564 13.3496 78.9719 13.3988 78.9462 13.4144C78.9309 13.4243 78.9082 13.4426 78.9067 13.4439C78.8493 13.475 78.7919 13.5061 78.7344 13.5371C78.7228 13.5394 78.6959 13.5522 78.6939 13.5485C78.7143 13.5391 78.8332 13.4688 78.8373 13.4663C78.8439 13.4627 78.8347 13.4614 78.8347 13.4614C78.8489 13.4483 79.0138 13.3601 79.0122 13.3546C79.0115 13.3534 79.0011 13.3503 79.0011 13.3503C79.0137 13.3445 79.0263 13.3387 79.0389 13.3329ZM57.5158 20.8181C57.5264 20.7729 57.1766 20.8337 57.1418 20.873C57.3038 20.8457 57.3234 20.8693 57.5158 20.8181ZM54.655 21.2438C54.9558 21.1777 54.0279 21.2817 54.4208 21.2766C54.4707 21.2824 54.2058 21.3092 54.4482 21.3104C54.5713 21.2417 54.5944 21.352 54.655 21.2438ZM65.9195 18.7681C65.6798 18.8814 66.1157 18.7322 65.9264 18.766C65.9241 18.7667 65.9218 18.7674 65.9195 18.7681ZM65.7823 18.8328C65.869 18.7835 65.5962 18.836 65.6205 18.8658C65.7607 18.8131 65.6895 18.8613 65.7823 18.8328ZM80.2726 12.6407C80.3768 12.5804 80.3981 12.542 80.4848 12.519C80.437 12.5639 80.323 12.6302 80.2726 12.6407ZM48.8469 21.8338C48.8135 21.8314 48.7534 21.8394 48.7838 21.8448C48.8067 21.8492 48.8694 21.8396 48.8469 21.8338ZM61.8385 19.8794C61.8049 19.8833 61.7483 19.902 61.7789 19.9018C61.8016 19.9019 61.8371 19.8803 61.8385 19.8794ZM35.7361 20.9969C35.7499 20.9837 35.6366 20.9563 35.6582 20.9843C35.6763 20.9897 35.729 20.9942 35.7361 20.9969ZM67.1693 18.3852C67.1752 18.3671 67.0628 18.3958 67.0948 18.4105C67.1133 18.4068 67.1617 18.3862 67.1693 18.3852ZM75.1224 15.2932C75.1264 15.2929 75.1407 15.288 75.1543 15.2817C75.1496 15.285 75.1382 15.2932 75.1326 15.2971C75.1385 15.2921 75.1304 15.2926 75.1224 15.2932ZM18.7058 15.4871C18.6105 15.4253 18.4276 15.3548 18.3862 15.354C18.4898 15.416 18.6141 15.4525 18.7058 15.4871ZM37.9405 21.3368C38.3203 21.3738 37.9684 21.2743 37.7361 21.2587C38.1829 21.333 37.4834 21.3065 37.9405 21.3368ZM29.3678 19.5102C29.1901 19.4496 29.1712 19.4747 29.3569 19.5208C29.4054 19.5287 29.425 19.5285 29.3678 19.5102ZM60.8727 20.0953C60.6882 20.1274 60.684 20.1584 60.8686 20.1098C60.9147 20.0935 60.9315 20.084 60.8727 20.0953ZM39.4615 21.5003C39.584 21.549 39.366 21.5139 39.4726 21.5375C39.6811 21.558 39.6664 21.519 39.4615 21.5003ZM69.3725 17.5719C68.7402 17.7825 69.4575 17.5541 69.1087 17.7247C69.3948 17.635 69.4249 17.5851 69.3725 17.5719ZM81.0842 12.0472C80.5361 12.3849 81.4404 11.915 81.0342 12.1907C81.4196 11.9742 81.3215 11.9446 81.0842 12.0472ZM48.3784 21.857C48.8068 21.8165 47.6339 21.8046 47.9519 21.8386C48.3459 21.8121 47.7121 21.8878 48.3784 21.857ZM70.7917 17.0591C70.5567 17.1572 70.9215 17.0423 70.6224 17.1718C70.7184 17.15 70.9714 17.0154 70.7917 17.0591ZM50.9234 21.6869C51.3348 21.6612 51.0311 21.6254 51.0792 21.6612C51.0491 21.6625 50.9 21.677 50.9234 21.6869ZM58.1083 20.6805C58.5717 20.5856 57.6724 20.6594 57.8131 20.675C58.3236 20.6096 57.7331 20.7778 58.1083 20.6805ZM49.5779 21.777C49.7496 21.7582 49.2508 21.7755 49.4283 21.7894C49.1371 21.8158 49.4591 21.8059 49.5779 21.777ZM26.4171 18.521C26.3431 18.5534 26.868 18.7203 26.478 18.6342C27.0574 18.8159 26.6194 18.6364 26.4171 18.521ZM29.916 19.6373C29.8708 19.6329 29.9255 19.6588 29.9438 19.6768C30.0026 19.6892 29.9694 19.6548 29.916 19.6373ZM61.4294 19.9403C61.3838 19.959 61.4446 19.9554 61.4694 19.9624C61.5304 19.9443 61.4847 19.9301 61.4294 19.9403ZM33.0697 20.4464C33.0683 20.4539 33.1531 20.4683 33.1332 20.4546C33.1 20.4487 33.0697 20.4464 33.0697 20.4464ZM52.2363 21.5336C52.2491 21.5808 52.5215 21.4981 52.2443 21.537C52.255 21.5316 52.2586 21.5312 52.2363 21.5336ZM27.6981 19.0061C27.6968 19.01 27.6889 19.0113 27.6877 19.0152C27.6876 19.0155 27.6875 19.0157 27.6874 19.016C27.7298 19.0313 27.7897 19.0396 27.6964 19.0114C27.697 19.0096 27.6975 19.0078 27.6981 19.0061ZM62.0974 19.7895C62.0763 19.7976 62.0795 19.8104 62.0795 19.8104C62.1573 19.7991 62.1779 19.7739 62.0974 19.7895ZM59.174 20.4574C59.1747 20.4608 59.168 20.4658 59.1687 20.4692C59.2603 20.4503 59.2195 20.4558 59.174 20.4574ZM19.5966 15.8953C19.5634 15.8962 19.6947 15.9695 19.7139 15.9637C19.7243 15.9584 19.6352 15.91 19.5966 15.8953ZM27.7434 19.0121C27.7108 19.0174 27.8502 19.0729 27.8685 19.0646C27.8782 19.0581 27.7836 19.0217 27.7434 19.0121ZM59.2123 20.4403C59.1864 20.4606 59.335 20.442 59.347 20.4259C59.3524 20.4155 59.252 20.4293 59.2123 20.4403ZM82.1464 11.4747C82.1292 11.503 82.2623 11.4327 82.2678 11.4134C82.2691 11.4018 82.1799 11.4503 82.1464 11.4747ZM29.5478 19.5485C29.5546 19.5511 29.5322 19.5543 29.5307 19.5545C29.5566 19.5595 29.5613 19.5559 29.5478 19.5485ZM61.0526 20.0416C61.0595 20.0408 61.0422 20.0538 61.0405 20.0551C61.0653 20.0472 61.0679 20.0417 61.0526 20.0416ZM10.4326 10.6982C10.5022 10.75 10.509 10.7403 10.437 10.6919C10.4355 10.694 10.4341 10.6961 10.4326 10.6982ZM40.0534 21.5915C40.1394 21.6034 40.1406 21.5916 40.0542 21.5839C40.0539 21.5864 40.0537 21.589 40.0534 21.5915ZM30.265 19.7528C30.3477 19.7779 30.3508 19.7664 30.267 19.7454C30.2663 19.7479 30.2656 19.7504 30.265 19.7528ZM50.7279 21.6859C50.7046 21.678 50.6491 21.684 50.6723 21.6933C50.6871 21.6921 50.7019 21.688 50.7279 21.6859ZM61.7877 19.8752C61.8717 19.8577 61.8689 19.8462 61.7859 19.8678C61.7865 19.8703 61.7871 19.8728 61.7877 19.8752ZM58.806 20.525C58.7482 20.5216 58.6641 20.5383 58.6754 20.5567C58.7306 20.5479 58.7941 20.5423 58.806 20.525ZM80.9609 12.2076C81.0009 12.1651 80.7428 12.3033 80.81 12.3064C80.8357 12.2904 80.961 12.2077 80.9609 12.2076ZM16.7008 14.476C16.6322 14.4369 16.6073 14.4356 16.6705 14.4687C16.7101 14.4895 16.7009 14.4761 16.7008 14.476ZM24.6859 17.9869C24.6128 17.9574 24.588 17.9594 24.655 17.9838C24.6973 17.9991 24.6845 17.9908 24.6859 17.9869ZM35.7625 20.9773C35.9077 20.996 35.6655 20.9232 35.6783 20.9566C35.7074 20.9647 35.7625 20.9773 35.7625 20.9773ZM47.369 21.8693C47.2908 21.8688 47.2687 21.8798 47.3393 21.8778C47.384 21.8766 47.3692 21.8735 47.369 21.8693ZM55.9828 21.0332C55.9325 21.0271 55.8879 21.0569 55.8508 21.0614C55.8826 21.0539 55.953 21.052 55.976 21.0394C55.9707 21.0426 55.9831 21.043 56.0176 21.0375C56.062 21.0303 56.0468 21.0292 56.0461 21.0251C56.0072 21.03 55.9827 21.0359 55.9764 21.0392C55.9796 21.0374 55.9817 21.0354 55.9828 21.0332ZM67.1833 18.3556C67.32 18.3043 67.0726 18.3531 67.0996 18.3767C67.1285 18.3703 67.1819 18.356 67.1833 18.3556ZM24.616 17.9592C24.5809 17.9241 24.5343 17.9421 24.4882 17.9156C24.5032 17.9293 24.6112 17.9724 24.616 17.9592ZM28.9968 19.3874C28.9682 19.3929 29.0157 19.4045 29.0851 19.4209C29.0919 19.4221 28.9816 19.3896 28.9968 19.3874ZM60.4937 20.1647C60.4712 20.1833 60.518 20.1708 60.5864 20.1518C60.5935 20.1495 60.4809 20.174 60.4937 20.1647ZM16.6351 14.4392C16.5921 14.4 16.5157 14.3598 16.5128 14.3812C16.5617 14.4094 16.615 14.4452 16.6351 14.4392ZM27.3422 18.887C27.2929 18.856 27.2106 18.8299 27.2116 18.8515C27.2646 18.8706 27.3234 18.8965 27.3422 18.887ZM79.3002 13.1595C79.2439 13.1739 79.1683 13.2156 79.1847 13.2298C79.235 13.2045 79.2942 13.1796 79.3002 13.1595ZM30.1714 19.7111C30.0804 19.6894 30.1866 19.7404 30.2056 19.7274C30.2064 19.7235 30.1735 19.7118 30.1714 19.7111ZM61.6784 19.8851C61.588 19.9098 61.7063 19.9035 61.7168 19.883C61.7156 19.8789 61.6784 19.8851 61.6784 19.8851ZM10.3896 10.6546C10.3872 10.6317 10.279 10.5823 10.3544 10.6385C10.3726 10.6512 10.3889 10.6545 10.3896 10.6546ZM18.3361 15.3025C18.3757 15.3155 18.2377 15.2482 18.2426 15.263C18.2832 15.2799 18.3336 15.3014 18.3361 15.3025ZM78.2823 13.688C78.2847 13.6882 78.287 13.6884 78.2894 13.6885C78.3065 13.6862 78.3625 13.6566 78.4097 13.6315C78.4141 13.6292 78.4185 13.6269 78.4229 13.6245C78.3918 13.6458 78.3781 13.6602 78.3549 13.6804C78.3389 13.6904 78.3218 13.6908 78.3078 13.6966C78.2756 13.7081 78.2278 13.7302 78.1912 13.7495C78.188 13.7433 78.2465 13.7171 78.2578 13.7064C78.2642 13.7023 78.2232 13.7129 78.281 13.6855C78.2814 13.6863 78.2819 13.6872 78.2823 13.688ZM26.3124 18.5378C26.3522 18.5607 26.3221 18.5691 26.4179 18.5899C26.4495 18.5893 26.3804 18.5591 26.3124 18.5378ZM57.737 20.7162C57.779 20.7177 57.7567 20.7396 57.8505 20.7114C57.8816 20.6949 57.8067 20.7019 57.737 20.7162ZM47.2944 21.8701C47.246 21.8595 47.1882 21.8596 47.1658 21.8692C47.2114 21.8709 47.2803 21.8816 47.2944 21.8701ZM32.776 20.3654C32.7649 20.3636 32.7217 20.3501 32.7398 20.3542C32.7545 20.3575 32.776 20.3654 32.776 20.3654ZM34.2721 20.6587C33.9844 20.5679 34.1478 20.6478 33.9137 20.5929C34.195 20.6971 34.3105 20.6757 34.2721 20.6587ZM57.6968 20.7264C57.6824 20.7305 57.6515 20.7483 57.6847 20.7422C57.6844 20.7408 57.6755 20.7346 57.6968 20.7264ZM65.6484 18.7897C65.4095 18.8126 65.6185 18.8337 65.3902 18.8786C65.6829 18.8529 65.9091 18.6954 65.6484 18.7897ZM64.229 19.2158C64.164 19.2055 64.0405 19.2919 64.2186 19.234C64.3102 19.2006 64.1435 19.2431 64.229 19.2158ZM12.5879 12.1085C12.5842 12.1077 12.5787 12.1056 12.5705 12.1013C12.5762 12.1037 12.582 12.1062 12.5879 12.1085ZM27.6105 18.9466C27.5845 18.9553 27.6928 18.9986 27.6928 18.9986C27.6884 18.9877 27.655 18.9678 27.6105 18.9466ZM59.0687 20.4461C59.0499 20.4664 59.1652 20.4522 59.1652 20.4521C59.156 20.4447 59.1176 20.4433 59.0687 20.4461ZM49.5763 21.7526C49.5786 21.737 49.4013 21.7249 49.2237 21.7558C49.4031 21.7507 49.5334 21.7883 49.5763 21.7526ZM37.6117 21.2553C37.6257 21.2637 37.6731 21.2735 37.6948 21.2809C37.7105 21.2768 37.6599 21.2625 37.6117 21.2553ZM68.9473 17.7398C68.9635 17.7408 69.0105 17.7273 69.0331 17.7238C69.0449 17.713 68.9932 17.7238 68.9473 17.7398ZM32.8903 20.3769C32.9106 20.3859 32.937 20.3981 32.9522 20.4015C32.9522 20.4015 32.927 20.3929 32.9162 20.3898C32.912 20.3888 32.9011 20.3825 32.8903 20.3769ZM18.6998 15.4734C18.6584 15.4294 18.6589 15.3588 18.3665 15.2401C18.2318 15.2166 18.5728 15.4169 18.6998 15.4734ZM24.9276 18.0484C24.9192 18.0508 24.8581 18.0421 24.9341 18.0719C24.9507 18.0756 24.935 18.0624 24.9288 18.0533C24.9284 18.0517 24.928 18.05 24.9276 18.0484ZM32.8733 20.3758C32.8608 20.3802 32.8174 20.369 32.7776 20.3585C32.7788 20.3587 32.7799 20.359 32.7811 20.3593C32.7961 20.3612 32.822 20.3657 32.8369 20.3676C32.849 20.3703 32.8611 20.3731 32.8733 20.3758ZM62.5295 19.6678C62.5691 19.6434 62.3629 19.6954 62.4006 19.7075C62.4439 19.6953 62.5404 19.6809 62.5295 19.6678ZM18.2217 15.2288C18.2573 15.25 18.2961 15.2736 18.3461 15.2995C18.3359 15.2859 18.2741 15.2497 18.2217 15.2288ZM11.8872 11.6177C11.8315 11.5857 11.6352 11.4461 11.7524 11.5488C11.7399 11.5886 12.0781 11.7459 11.8872 11.6177ZM33.0194 20.3807C32.9662 20.3782 33.0442 20.4235 33.1271 20.4303C33.0091 20.4092 33.1308 20.4127 33.0194 20.3807ZM41.8113 21.7027C41.673 21.6831 41.7464 21.7111 41.6517 21.7122C41.7407 21.7367 41.897 21.719 41.8113 21.7027ZM54.7756 21.1851C54.7414 21.2097 54.8615 21.2009 54.9345 21.1797C54.8859 21.1847 54.7736 21.1931 54.7756 21.1851ZM29.5237 19.5096C29.2986 19.4391 29.5022 19.5168 29.416 19.4918C29.5164 19.5361 29.4926 19.5096 29.5237 19.5096ZM61.0128 20.0191C60.7815 20.0653 60.9973 20.0358 60.9096 20.0552C61.0188 20.0459 60.9855 20.034 61.0128 20.0191ZM51.1255 21.6325C51.1175 21.629 51.0836 21.6279 51.0953 21.6338C51.0956 21.6366 51.1255 21.6325 51.1255 21.6325ZM12.3843 11.936C12.4208 11.9765 12.459 12 12.3693 11.9596C12.5549 12.0806 12.5409 12.0255 12.3843 11.936ZM42.3669 21.7667C42.3637 21.7665 42.3605 21.7665 42.3572 21.7662C42.359 21.7662 42.3608 21.7662 42.3625 21.7661C42.364 21.7663 42.3654 21.7665 42.3669 21.7667ZM32.5539 20.2808C32.6165 20.2931 32.5291 20.3052 32.5906 20.3057C32.6993 20.335 32.5839 20.2842 32.5539 20.2808ZM20.0746 16.0951C20.0629 16.0937 20.0583 16.0948 20.0928 16.1096C20.0871 16.1039 20.0746 16.0951 20.0746 16.0951ZM32.8685 20.3677C32.8734 20.3684 32.8819 20.3724 32.8903 20.3769C32.8814 20.3729 32.874 20.3693 32.8685 20.3677ZM64.0765 19.2252C64.0183 19.2536 64.0745 19.2462 64.0638 19.2636C64.1985 19.2178 64.1384 19.2249 64.0765 19.2252ZM64.3798 19.1716C64.3004 19.1931 64.3707 19.18 64.4208 19.1645C64.4096 19.1662 64.3798 19.1716 64.3798 19.1716ZM66.5242 18.4793C66.3395 18.5659 67.0446 18.4001 66.9888 18.3856C67.3774 18.2643 66.7133 18.43 66.5242 18.4793ZM47.0439 21.8546C47.0505 21.8551 47.0515 21.8563 47.0516 21.8565C47.0479 21.8587 47.044 21.8617 47.044 21.8617C47.0517 21.865 47.0631 21.8605 47.0516 21.8565C47.0516 21.8558 47.0516 21.8551 47.0516 21.8544C47.049 21.8545 47.0464 21.8545 47.0439 21.8546ZM75.0977 15.2568C75.1262 15.2468 75.1705 15.2265 75.1705 15.2265C75.1541 15.243 75.1038 15.2621 75.1006 15.2632C75.0996 15.2611 75.0987 15.259 75.0977 15.2568ZM54.9632 21.1699C54.9634 21.1727 54.9417 21.1786 54.9417 21.1786C54.9491 21.1775 54.9635 21.1726 54.9632 21.1699ZM44.6229 21.8534C44.6076 21.8587 44.6867 21.866 44.6868 21.8604C44.6868 21.8563 44.6267 21.8536 44.6229 21.8534ZM77.2121 14.2422C77.2131 14.244 77.203 14.2491 77.1929 14.2542C77.1993 14.2502 77.2054 14.2455 77.2121 14.2422ZM12.2856 11.8969C12.2854 11.8966 12.2816 11.894 12.2814 11.8937C12.2828 11.8948 12.2842 11.8959 12.2856 11.8969ZM12.8857 12.2686C12.8704 12.2655 12.9332 12.3047 12.9368 12.3069C12.939 12.3033 12.9048 12.2805 12.8857 12.2686ZM33.1006 20.4109C33.0852 20.4132 33.1616 20.4301 33.1616 20.4301C33.1624 20.426 33.1225 20.4158 33.1006 20.4109ZM35.1157 20.7947C35.0711 20.7871 35.4071 20.8933 35.35 20.8711C35.8201 20.9535 35.3926 20.85 35.1157 20.7947ZM63.1324 19.5018C63.1103 19.5062 63.0811 19.5131 63.0896 19.516C63.1114 19.5103 63.1335 19.5059 63.1324 19.5018ZM21.8777 16.8677C21.8554 16.8531 21.8208 16.8387 21.8177 16.8456C21.8408 16.8568 21.8761 16.8672 21.8777 16.8677ZM33.283 20.4525C33.2859 20.4567 33.3232 20.4619 33.313 20.4561C33.2987 20.453 33.2836 20.4525 33.283 20.4525ZM59.5442 20.3432C59.4996 20.3497 59.4835 20.3645 59.5453 20.3486C59.5682 20.3481 59.5731 20.335 59.5442 20.3432ZM28.0741 19.0843C28.0906 19.0922 28.0483 19.078 28.0453 19.077C28.0096 19.0785 28.1412 19.1084 28.0741 19.0843ZM64.7899 19.039C64.7428 19.051 64.739 19.0644 64.7854 19.0497C64.7848 19.0476 64.7833 19.0424 64.7899 19.039ZM14.0391 12.9466C14.0207 12.9318 13.8532 12.8342 13.9249 12.8961C13.9586 12.9202 14.0214 12.9394 14.0391 12.9466ZM44.305 21.8263C44.2111 21.8194 44.0651 21.8293 44.2105 21.8395C44.2142 21.839 44.3189 21.8289 44.305 21.8263ZM10.5592 10.7342C10.591 10.7478 10.44 10.6284 10.4633 10.6676C10.4737 10.6799 10.5592 10.7342 10.5592 10.7342ZM61.7851 19.832C61.
gitextract_z19nbr_4/ ├── .github/ │ ├── pull_request_template.md │ └── workflows/ │ └── ci.yml ├── .gitignore ├── .vscode/ │ └── settings.json ├── CONTRIBUTING.md ├── LICENSE ├── README.md ├── actions/ │ ├── get-icon-content.ts │ ├── get-icons.ts │ └── open-in-v0.ts ├── app/ │ ├── globals.css │ ├── icon.tsx │ ├── icons/ │ │ └── [slug]/ │ │ ├── icon-card.tsx │ │ ├── page.tsx │ │ └── similar-icons.tsx │ ├── layout.tsx │ ├── llms.txt/ │ │ └── route.ts │ ├── page.tsx │ ├── robots.ts │ ├── sitemap.ts │ └── sponsorship/ │ └── page.tsx ├── biome.jsonc ├── components/ │ ├── analytics.tsx │ ├── card.tsx │ ├── cli-block.tsx │ ├── comment.client.tsx │ ├── comment.tsx │ ├── footer.tsx │ ├── github-button.tsx │ ├── header.tsx │ ├── list.tsx │ ├── search-input.tsx │ ├── sponsorship/ │ │ ├── amount-selector.tsx │ │ └── stamp.tsx │ └── ui/ │ ├── avatar.tsx │ ├── icon-state.tsx │ ├── input.tsx │ ├── portal.tsx │ ├── radio.tsx │ ├── scroll-area.tsx │ ├── tabs.tsx │ ├── text-loop.tsx │ ├── theme-toggle.tsx │ └── tooltip.tsx ├── constants.ts ├── fonts/ │ └── README.md ├── helpers/ │ └── get-icon-for-v0.ts ├── hooks/ │ └── use-touch-device.ts ├── icons/ │ ├── a-arrow-down.tsx │ ├── a-arrow-up.tsx │ ├── accessibility.tsx │ ├── activity.tsx │ ├── air-vent.tsx │ ├── airplane.tsx │ ├── airplay.tsx │ ├── alarm-clock.tsx │ ├── align-center.tsx │ ├── align-horizontal.tsx │ ├── align-left.tsx │ ├── align-right.tsx │ ├── align-vertical.tsx │ ├── ambulance.tsx │ ├── angry.tsx │ ├── annoyed.tsx │ ├── archive.tsx │ ├── arrow-big-down-dash.tsx │ ├── arrow-big-down.tsx │ ├── arrow-big-left-dash.tsx │ ├── arrow-big-left.tsx │ ├── arrow-big-right-dash.tsx │ ├── arrow-big-right.tsx │ ├── arrow-big-up-dash.tsx │ ├── arrow-big-up.tsx │ ├── arrow-down-0-1.tsx │ ├── arrow-down-1-0.tsx │ ├── arrow-down-a-z.tsx │ ├── arrow-down-left.tsx │ ├── arrow-down-right.tsx │ ├── arrow-down-z-a.tsx │ ├── arrow-down.tsx │ ├── arrow-left.tsx │ ├── arrow-right.tsx │ ├── arrow-up-left.tsx │ ├── arrow-up-right.tsx │ ├── arrow-up.tsx │ ├── at-sign.tsx │ ├── atom.tsx │ ├── attach-file.tsx │ ├── audio-lines.tsx │ ├── axe.tsx │ ├── badge-alert.tsx │ ├── badge-percent.tsx │ ├── ban.tsx │ ├── banana.tsx │ ├── battery-charging.tsx │ ├── battery-full.tsx │ ├── battery-low.tsx │ ├── battery-medium.tsx │ ├── battery-plus.tsx │ ├── battery-warning.tsx │ ├── battery.tsx │ ├── bell-electric.tsx │ ├── bell.tsx │ ├── blocks.tsx │ ├── bluetooth-connected.tsx │ ├── bluetooth-off.tsx │ ├── bluetooth-searching.tsx │ ├── bluetooth.tsx │ ├── bold.tsx │ ├── bone.tsx │ ├── book-text.tsx │ ├── bookmark-check.tsx │ ├── bookmark-minus.tsx │ ├── bookmark-plus.tsx │ ├── bookmark-x.tsx │ ├── bookmark.tsx │ ├── bot-message-square.tsx │ ├── bot.tsx │ ├── box.tsx │ ├── boxes.tsx │ ├── brain.tsx │ ├── calendar-check-2.tsx │ ├── calendar-check.tsx │ ├── calendar-cog.tsx │ ├── calendar-days.tsx │ ├── cart.tsx │ ├── cast.tsx │ ├── cctv.tsx │ ├── chart-bar-decreasing.tsx │ ├── chart-bar-increasing.tsx │ ├── chart-column-decreasing.tsx │ ├── chart-column-increasing.tsx │ ├── chart-line.tsx │ ├── chart-no-axes-column-decreasing.tsx │ ├── chart-no-axes-column-increasing.tsx │ ├── chart-pie.tsx │ ├── chart-scatter.tsx │ ├── chart-spline.tsx │ ├── check-check.tsx │ ├── check.tsx │ ├── chess-bishop.tsx │ ├── chess-king.tsx │ ├── chess-knight.tsx │ ├── chess-pawn.tsx │ ├── chevron-down.tsx │ ├── chevron-first.tsx │ ├── chevron-left.tsx │ ├── chevron-right.tsx │ ├── chevron-up.tsx │ ├── chevrons-down-up.tsx │ ├── chevrons-left-right.tsx │ ├── chevrons-right-left.tsx │ ├── chevrons-up-down.tsx │ ├── chrome.tsx │ ├── circle-check.tsx │ ├── circle-chevron-down.tsx │ ├── circle-chevron-left.tsx │ ├── circle-chevron-right.tsx │ ├── circle-chevron-up.tsx │ ├── circle-dashed.tsx │ ├── circle-dollar-sign.tsx │ ├── circle-help.tsx │ ├── clap.tsx │ ├── clipboard-check.tsx │ ├── clock.tsx │ ├── cloud-cog.tsx │ ├── cloud-download.tsx │ ├── cloud-lightning.tsx │ ├── cloud-rain-wind.tsx │ ├── cloud-rain.tsx │ ├── cloud-snow.tsx │ ├── cloud-sun.tsx │ ├── cloud-upload.tsx │ ├── coffee.tsx │ ├── cog.tsx │ ├── compass.tsx │ ├── connect.tsx │ ├── construction.tsx │ ├── contrast.tsx │ ├── cooking-pot.tsx │ ├── copy.tsx │ ├── corner-down-left.tsx │ ├── corner-down-right.tsx │ ├── corner-left-down.tsx │ ├── corner-left-up.tsx │ ├── corner-right-down.tsx │ ├── corner-right-up.tsx │ ├── corner-up-left.tsx │ ├── corner-up-right.tsx │ ├── cpu.tsx │ ├── cup-soda.tsx │ ├── cursor-click.tsx │ ├── database-backup.tsx │ ├── delete.tsx │ ├── disc-3.tsx │ ├── discord.tsx │ ├── dollar-sign.tsx │ ├── download.tsx │ ├── downvote.tsx │ ├── dribbble.tsx │ ├── droplet.tsx │ ├── drum.tsx │ ├── earth.tsx │ ├── euro.tsx │ ├── ev-charger.tsx │ ├── expand.tsx │ ├── eye-off.tsx │ ├── eye.tsx │ ├── facebook.tsx │ ├── feather.tsx │ ├── figma.tsx │ ├── file-chart-line.tsx │ ├── file-check-2.tsx │ ├── file-check.tsx │ ├── file-cog.tsx │ ├── file-pen-line.tsx │ ├── file-stack.tsx │ ├── file-text.tsx │ ├── fingerprint.tsx │ ├── fish-symbol.tsx │ ├── flame.tsx │ ├── flask.tsx │ ├── folder-archive.tsx │ ├── folder-check.tsx │ ├── folder-clock.tsx │ ├── folder-code.tsx │ ├── folder-cog.tsx │ ├── folder-dot.tsx │ ├── folder-down.tsx │ ├── folder-git-2.tsx │ ├── folder-git.tsx │ ├── folder-heart.tsx │ ├── folder-input.tsx │ ├── folder-kanban.tsx │ ├── folder-key.tsx │ ├── folder-lock.tsx │ ├── folder-minus.tsx │ ├── folder-open.tsx │ ├── folder-output.tsx │ ├── folder-plus.tsx │ ├── folder-root.tsx │ ├── folder-sync.tsx │ ├── folder-tree.tsx │ ├── folder-up.tsx │ ├── folder-x.tsx │ ├── folders.tsx │ ├── frame.tsx │ ├── frown.tsx │ ├── gallery-horizontal-end.tsx │ ├── gallery-thumbnails.tsx │ ├── gallery-vertical-end.tsx │ ├── gauge.tsx │ ├── gavel.tsx │ ├── georgian-lari.tsx │ ├── git-branch.tsx │ ├── git-commit-horizontal.tsx │ ├── git-commit-vertical.tsx │ ├── git-compare-arrows.tsx │ ├── git-compare.tsx │ ├── git-fork.tsx │ ├── git-graph.tsx │ ├── git-merge.tsx │ ├── git-pull-request-closed.tsx │ ├── git-pull-request-create.tsx │ ├── git-pull-request.tsx │ ├── github.tsx │ ├── gitlab.tsx │ ├── graduation-cap.tsx │ ├── grip-horizontal.tsx │ ├── grip-vertical.tsx │ ├── grip.tsx │ ├── hammer.tsx │ ├── hand-coins.tsx │ ├── hand-fist.tsx │ ├── hand-grab.tsx │ ├── hand-heart.tsx │ ├── hand-helping.tsx │ ├── hand-metal.tsx │ ├── hand.tsx │ ├── hard-drive-download.tsx │ ├── hard-drive-upload.tsx │ ├── heart-handshake.tsx │ ├── heart-pulse.tsx │ ├── heart.tsx │ ├── history.tsx │ ├── home.tsx │ ├── hourglass.tsx │ ├── id-card.tsx │ ├── index.ts │ ├── indian-rupee.tsx │ ├── instagram.tsx │ ├── italic.tsx │ ├── japanese-yen.tsx │ ├── key-circle.tsx │ ├── key-square.tsx │ ├── key.tsx │ ├── keyboard.tsx │ ├── languages.tsx │ ├── laptop-minimal-check.tsx │ ├── laugh.tsx │ ├── layers.tsx │ ├── layout-panel-top.tsx │ ├── link.tsx │ ├── linkedin.tsx │ ├── loader-pinwheel.tsx │ ├── lock-keyhole-open.tsx │ ├── lock-keyhole.tsx │ ├── lock-open.tsx │ ├── lock.tsx │ ├── logout.tsx │ ├── mail-check.tsx │ ├── mailbox.tsx │ ├── map-pin-check-inside.tsx │ ├── map-pin-check.tsx │ ├── map-pin-house.tsx │ ├── map-pin-minus-inside.tsx │ ├── map-pin-minus.tsx │ ├── map-pin-off.tsx │ ├── map-pin-plus-inside.tsx │ ├── map-pin-plus.tsx │ ├── map-pin-x-inside.tsx │ ├── map-pin.tsx │ ├── maximize-2.tsx │ ├── maximize.tsx │ ├── meh.tsx │ ├── menu.tsx │ ├── message-circle-check.tsx │ ├── message-circle-dashed.tsx │ ├── message-circle-more.tsx │ ├── message-circle-plus.tsx │ ├── message-circle-x.tsx │ ├── message-circle.tsx │ ├── message-square-check.tsx │ ├── message-square-dashed.tsx │ ├── message-square-more.tsx │ ├── message-square-plus.tsx │ ├── message-square-x.tsx │ ├── message-square.tsx │ ├── mic-off.tsx │ ├── mic.tsx │ ├── minimize.tsx │ ├── monitor-check.tsx │ ├── moon.tsx │ ├── nfc.tsx │ ├── panel-left-close.tsx │ ├── panel-left-open.tsx │ ├── panel-right-open.tsx │ ├── party-popper.tsx │ ├── pause.tsx │ ├── pen-tool.tsx │ ├── philippine-peso.tsx │ ├── pickaxe.tsx │ ├── play.tsx │ ├── plug-zap.tsx │ ├── plus.tsx │ ├── pound-sterling.tsx │ ├── rabbit.tsx │ ├── radio-tower.tsx │ ├── radio.tsx │ ├── redo-dot.tsx │ ├── redo.tsx │ ├── refresh-ccw-dot.tsx │ ├── refresh-ccw.tsx │ ├── refresh-cw-off.tsx │ ├── refresh-cw.tsx │ ├── rocket.tsx │ ├── rocking-chair.tsx │ ├── roller-coaster.tsx │ ├── rotate-ccw.tsx │ ├── rotate-cw.tsx │ ├── route.tsx │ ├── russian-ruble.tsx │ ├── saudi-riyal.tsx │ ├── scan-face.tsx │ ├── scan-text.tsx │ ├── search.tsx │ ├── send.tsx │ ├── settings.tsx │ ├── shield-check.tsx │ ├── ship.tsx │ ├── shower-head.tsx │ ├── shrink.tsx │ ├── sliders-horizontal.tsx │ ├── smartphone-charging.tsx │ ├── smartphone-nfc.tsx │ ├── smile-plus.tsx │ ├── smile.tsx │ ├── snowflake.tsx │ ├── sparkles.tsx │ ├── square-activity.tsx │ ├── square-arrow-down.tsx │ ├── square-arrow-left.tsx │ ├── square-arrow-right.tsx │ ├── square-arrow-up.tsx │ ├── square-chevron-down.tsx │ ├── square-chevron-left.tsx │ ├── square-chevron-right.tsx │ ├── square-chevron-up.tsx │ ├── square-pen.tsx │ ├── square-stack.tsx │ ├── stethoscope.tsx │ ├── sun-dim.tsx │ ├── sun-medium.tsx │ ├── sun-moon.tsx │ ├── sun.tsx │ ├── sunset.tsx │ ├── swiss-franc.tsx │ ├── syringe.tsx │ ├── telescope.tsx │ ├── terminal.tsx │ ├── thermometer.tsx │ ├── timer.tsx │ ├── tornado.tsx │ ├── train-track.tsx │ ├── trending-down.tsx │ ├── trending-up-down.tsx │ ├── trending-up.tsx │ ├── truck.tsx │ ├── turkish-lira.tsx │ ├── twitch.tsx │ ├── twitter.tsx │ ├── underline.tsx │ ├── undo-dot.tsx │ ├── undo.tsx │ ├── upload.tsx │ ├── upvote.tsx │ ├── user-check.tsx │ ├── user-round-check.tsx │ ├── user-round-plus.tsx │ ├── user.tsx │ ├── users.tsx │ ├── vibrate.tsx │ ├── volume.tsx │ ├── washing-machine.tsx │ ├── waves-ladder.tsx │ ├── waves.tsx │ ├── waypoints.tsx │ ├── webhook.tsx │ ├── wifi-low.tsx │ ├── wifi.tsx │ ├── wind-arrow-down.tsx │ ├── wind.tsx │ ├── workflow.tsx │ ├── wrench.tsx │ ├── x.tsx │ ├── youtube.tsx │ ├── zap-off.tsx │ └── zap.tsx ├── lib/ │ ├── get-package-manager-prefix.ts │ ├── kebab-to-pascal.ts │ └── utils.ts ├── next.config.ts ├── package.json ├── postcss.config.mjs ├── providers/ │ ├── package-name.tsx │ └── theme.tsx ├── public/ │ └── r/ │ ├── a-arrow-down.json │ ├── a-arrow-up.json │ ├── accessibility.json │ ├── activity.json │ ├── air-vent.json │ ├── airplane.json │ ├── airplay.json │ ├── alarm-clock.json │ ├── align-center.json │ ├── align-horizontal.json │ ├── align-left.json │ ├── align-right.json │ ├── align-vertical.json │ ├── ambulance.json │ ├── angry.json │ ├── annoyed.json │ ├── archive.json │ ├── arrow-big-down-dash.json │ ├── arrow-big-down.json │ ├── arrow-big-left-dash.json │ ├── arrow-big-left.json │ ├── arrow-big-right-dash.json │ ├── arrow-big-right.json │ ├── arrow-big-up-dash.json │ ├── arrow-big-up.json │ ├── arrow-down-0-1.json │ ├── arrow-down-1-0.json │ ├── arrow-down-a-z.json │ ├── arrow-down-left.json │ ├── arrow-down-right.json │ ├── arrow-down-z-a.json │ ├── arrow-down.json │ ├── arrow-left.json │ ├── arrow-right.json │ ├── arrow-up-left.json │ ├── arrow-up-right.json │ ├── arrow-up.json │ ├── at-sign.json │ ├── atom.json │ ├── attach-file.json │ ├── audio-lines.json │ ├── axe.json │ ├── badge-alert.json │ ├── badge-percent.json │ ├── ban.json │ ├── banana.json │ ├── battery-charging.json │ ├── battery-full.json │ ├── battery-low.json │ ├── battery-medium.json │ ├── battery-plus.json │ ├── battery-warning.json │ ├── battery.json │ ├── bell-electric.json │ ├── bell.json │ ├── blocks.json │ ├── bluetooth-connected.json │ ├── bluetooth-off.json │ ├── bluetooth-searching.json │ ├── bluetooth.json │ ├── bold.json │ ├── bone.json │ ├── book-text.json │ ├── bookmark-check.json │ ├── bookmark-minus.json │ ├── bookmark-plus.json │ ├── bookmark-x.json │ ├── bookmark.json │ ├── bot-message-square.json │ ├── bot.json │ ├── box.json │ ├── boxes.json │ ├── brain.json │ ├── calendar-check-2.json │ ├── calendar-check.json │ ├── calendar-cog.json │ ├── calendar-days.json │ ├── cart.json │ ├── cast.json │ ├── cctv.json │ ├── chart-bar-decreasing.json │ ├── chart-bar-increasing.json │ ├── chart-column-decreasing.json │ ├── chart-column-increasing.json │ ├── chart-line.json │ ├── chart-no-axes-column-decreasing.json │ ├── chart-no-axes-column-increasing.json │ ├── chart-pie.json │ ├── chart-scatter.json │ ├── chart-spline.json │ ├── check-check.json │ ├── check.json │ ├── chess-bishop.json │ ├── chess-king.json │ ├── chess-knight.json │ ├── chess-pawn.json │ ├── chevron-down.json │ ├── chevron-first.json │ ├── chevron-left.json │ ├── chevron-right.json │ ├── chevron-up.json │ ├── chevrons-down-up.json │ ├── chevrons-left-right.json │ ├── chevrons-right-left.json │ ├── chevrons-up-down.json │ ├── chrome.json │ ├── circle-check.json │ ├── circle-chevron-down.json │ ├── circle-chevron-left.json │ ├── circle-chevron-right.json │ ├── circle-chevron-up.json │ ├── circle-dashed.json │ ├── circle-dollar-sign.json │ ├── circle-help.json │ ├── clap.json │ ├── clipboard-check.json │ ├── clock.json │ ├── cloud-cog.json │ ├── cloud-download.json │ ├── cloud-lightning.json │ ├── cloud-rain-wind.json │ ├── cloud-rain.json │ ├── cloud-snow.json │ ├── cloud-sun.json │ ├── cloud-upload.json │ ├── coffee.json │ ├── cog.json │ ├── compass.json │ ├── connect.json │ ├── construction.json │ ├── contrast.json │ ├── cooking-pot.json │ ├── copy.json │ ├── corner-down-left.json │ ├── corner-down-right.json │ ├── corner-left-down.json │ ├── corner-left-up.json │ ├── corner-right-down.json │ ├── corner-right-up.json │ ├── corner-up-left.json │ ├── corner-up-right.json │ ├── cpu.json │ ├── cup-soda.json │ ├── cursor-click.json │ ├── database-backup.json │ ├── delete.json │ ├── disc-3.json │ ├── discord.json │ ├── dollar-sign.json │ ├── download.json │ ├── downvote.json │ ├── dribbble.json │ ├── droplet.json │ ├── drum.json │ ├── earth.json │ ├── euro.json │ ├── ev-charger.json │ ├── expand.json │ ├── eye-off.json │ ├── eye.json │ ├── facebook.json │ ├── feather.json │ ├── figma.json │ ├── file-chart-line.json │ ├── file-check-2.json │ ├── file-check.json │ ├── file-cog.json │ ├── file-pen-line.json │ ├── file-stack.json │ ├── file-text.json │ ├── fingerprint.json │ ├── fish-symbol.json │ ├── flame.json │ ├── flask.json │ ├── folder-archive.json │ ├── folder-check.json │ ├── folder-clock.json │ ├── folder-code.json │ ├── folder-cog.json │ ├── folder-dot.json │ ├── folder-down.json │ ├── folder-git-2.json │ ├── folder-git.json │ ├── folder-heart.json │ ├── folder-input.json │ ├── folder-kanban.json │ ├── folder-key.json │ ├── folder-lock.json │ ├── folder-minus.json │ ├── folder-open.json │ ├── folder-output.json │ ├── folder-plus.json │ ├── folder-root.json │ ├── folder-sync.json │ ├── folder-tree.json │ ├── folder-up.json │ ├── folder-x.json │ ├── folders.json │ ├── frame.json │ ├── frown.json │ ├── gallery-horizontal-end.json │ ├── gallery-thumbnails.json │ ├── gallery-vertical-end.json │ ├── gauge.json │ ├── gavel.json │ ├── georgian-lari.json │ ├── git-branch.json │ ├── git-commit-horizontal.json │ ├── git-commit-vertical.json │ ├── git-compare-arrows.json │ ├── git-compare.json │ ├── git-fork.json │ ├── git-graph.json │ ├── git-merge.json │ ├── git-pull-request-closed.json │ ├── git-pull-request-create.json │ ├── git-pull-request.json │ ├── github.json │ ├── gitlab.json │ ├── graduation-cap.json │ ├── grip-horizontal.json │ ├── grip-vertical.json │ ├── grip.json │ ├── hammer.json │ ├── hand-coins.json │ ├── hand-fist.json │ ├── hand-grab.json │ ├── hand-heart.json │ ├── hand-helping.json │ ├── hand-metal.json │ ├── hand.json │ ├── hard-drive-download.json │ ├── hard-drive-upload.json │ ├── heart-handshake.json │ ├── heart-pulse.json │ ├── heart.json │ ├── history.json │ ├── home.json │ ├── hourglass.json │ ├── id-card.json │ ├── indian-rupee.json │ ├── instagram.json │ ├── italic.json │ ├── japanese-yen.json │ ├── key-circle.json │ ├── key-square.json │ ├── key.json │ ├── keyboard.json │ ├── languages.json │ ├── laptop-minimal-check.json │ ├── laugh.json │ ├── layers.json │ ├── layout-panel-top.json │ ├── link.json │ ├── linkedin.json │ ├── loader-pinwheel.json │ ├── lock-keyhole-open.json │ ├── lock-keyhole.json │ ├── lock-open.json │ ├── lock.json │ ├── logout.json │ ├── mail-check.json │ ├── mailbox.json │ ├── map-pin-check-inside.json │ ├── map-pin-check.json │ ├── map-pin-house.json │ ├── map-pin-minus-inside.json │ ├── map-pin-minus.json │ ├── map-pin-off.json │ ├── map-pin-plus-inside.json │ ├── map-pin-plus.json │ ├── map-pin-x-inside.json │ ├── map-pin.json │ ├── maximize-2.json │ ├── maximize.json │ ├── meh.json │ ├── menu.json │ ├── message-circle-check.json │ ├── message-circle-dashed.json │ ├── message-circle-more.json │ ├── message-circle-plus.json │ ├── message-circle-x.json │ ├── message-circle.json │ ├── message-square-check.json │ ├── message-square-dashed.json │ ├── message-square-more.json │ ├── message-square-plus.json │ ├── message-square-x.json │ ├── message-square.json │ ├── mic-off.json │ ├── mic.json │ ├── minimize.json │ ├── monitor-check.json │ ├── moon.json │ ├── nfc.json │ ├── panel-left-close.json │ ├── panel-left-open.json │ ├── panel-right-open.json │ ├── party-popper.json │ ├── pause.json │ ├── pen-tool.json │ ├── philippine-peso.json │ ├── pickaxe.json │ ├── play.json │ ├── plug-zap.json │ ├── plus.json │ ├── pound-sterling.json │ ├── rabbit.json │ ├── radio-tower.json │ ├── radio.json │ ├── redo-dot.json │ ├── redo.json │ ├── refresh-ccw-dot.json │ ├── refresh-ccw.json │ ├── refresh-cw-off.json │ ├── refresh-cw.json │ ├── registry.json │ ├── rocket.json │ ├── rocking-chair.json │ ├── roller-coaster.json │ ├── rotate-ccw.json │ ├── rotate-cw.json │ ├── route.json │ ├── russian-ruble.json │ ├── saudi-riyal.json │ ├── scan-face.json │ ├── scan-text.json │ ├── search.json │ ├── send.json │ ├── settings-gear.json │ ├── settings.json │ ├── shield-check.json │ ├── ship.json │ ├── shower-head.json │ ├── shrink.json │ ├── sliders-horizontal.json │ ├── smartphone-charging.json │ ├── smartphone-nfc.json │ ├── smile-plus.json │ ├── smile.json │ ├── snowflake.json │ ├── sparkles.json │ ├── square-activity.json │ ├── square-arrow-down.json │ ├── square-arrow-left.json │ ├── square-arrow-right.json │ ├── square-arrow-up.json │ ├── square-chevron-down.json │ ├── square-chevron-left.json │ ├── square-chevron-right.json │ ├── square-chevron-up.json │ ├── square-pen.json │ ├── square-stack.json │ ├── stethoscope.json │ ├── sun-dim.json │ ├── sun-medium.json │ ├── sun-moon.json │ ├── sun.json │ ├── sunset.json │ ├── swiss-franc.json │ ├── syringe.json │ ├── telescope.json │ ├── terminal.json │ ├── thermometer.json │ ├── timer.json │ ├── tornado.json │ ├── train-track.json │ ├── trending-down.json │ ├── trending-up-down.json │ ├── trending-up.json │ ├── truck.json │ ├── turkish-lira.json │ ├── twitch.json │ ├── twitter.json │ ├── underline.json │ ├── undo-dot.json │ ├── undo.json │ ├── upload.json │ ├── upvote.json │ ├── user-check.json │ ├── user-round-check.json │ ├── user-round-plus.json │ ├── user.json │ ├── users.json │ ├── vibrate.json │ ├── volume.json │ ├── washing-machine.json │ ├── waves-ladder.json │ ├── waves.json │ ├── waypoints.json │ ├── webhook.json │ ├── wifi-low.json │ ├── wifi.json │ ├── wind-arrow-down.json │ ├── wind.json │ ├── workflow.json │ ├── wrench.json │ ├── x.json │ ├── youtube.json │ ├── zap-off.json │ └── zap.json ├── registry.json ├── scripts/ │ ├── check-duplicates.ts │ ├── check-icon-style.ts │ ├── check-imports.ts │ ├── download-fonts.js │ ├── registry-build.ts │ ├── registry-components.ts │ ├── registry-schema.ts │ └── sync-registry.ts ├── seo/ │ ├── json-ld.tsx │ └── metadata.ts └── tsconfig.json
SYMBOL INDEX (1380 symbols across 440 files)
FILE: actions/get-icon-content.ts
constant ICONS_DIRECTORY (line 6) | const ICONS_DIRECTORY = "icons";
function getIconContent (line 8) | async function getIconContent(name: string): Promise<string> {
FILE: actions/get-icons.ts
type Icon (line 3) | type Icon = {
FILE: actions/open-in-v0.ts
function openInV0Action (line 6) | async function openInV0Action(name: string) {
FILE: app/icon.tsx
function Icon (line 12) | function Icon() {
FILE: app/icons/[slug]/icon-card.tsx
type Props (line 9) | type Props = {
FILE: app/icons/[slug]/page.tsx
type Props (line 15) | type Props = {
FILE: app/icons/[slug]/similar-icons.tsx
type Props (line 10) | type Props = {
constant ICON_MAP (line 14) | const ICON_MAP = new Map(ICON_LIST.map((item) => [item.name, item.icon]));
FILE: app/layout.tsx
function RootLayout (line 60) | function RootLayout({
FILE: app/llms.txt/route.ts
function GET (line 4) | function GET() {
FILE: app/robots.ts
function robots (line 5) | function robots(): MetadataRoute.Robots {
FILE: app/sitemap.ts
function sitemap (line 7) | async function sitemap(): Promise<MetadataRoute.Sitemap> {
FILE: app/sponsorship/page.tsx
constant SUPPORT_LIST (line 12) | const SUPPORT_LIST = [
FILE: components/analytics.tsx
constant ANALYTIC_EVENT (line 3) | const ANALYTIC_EVENT = {
FILE: components/card.tsx
type CardProps (line 40) | interface CardProps extends React.ComponentPropsWithoutRef<"div"> {
type ActionsProps (line 300) | type ActionsProps = Pick<Icon, "name"> & {
FILE: components/cli-block.tsx
type CliBlockProps (line 18) | type CliBlockProps = {
FILE: components/github-button.tsx
constant DEFAULT_STARS (line 4) | const DEFAULT_STARS = 6077;
constant CACHE_TIME (line 5) | const CACHE_TIME = 86_400;
FILE: components/header.tsx
type LogoProps (line 7) | type LogoProps = {
FILE: components/list.tsx
type Props (line 11) | type Props = {
constant ICON_MAP (line 15) | const ICON_MAP = new Map(ICON_LIST.map((item) => [item.name, item.icon]));
FILE: components/search-input.tsx
type SearchInputProps (line 8) | type SearchInputProps = {
FILE: components/sponsorship/amount-selector.tsx
constant DESIGN_WIDTH (line 10) | const DESIGN_WIDTH = 1040;
constant DESIGN_HEIGHT (line 11) | const DESIGN_HEIGHT = 460;
type AmountSelectorProps (line 13) | type AmountSelectorProps = {
FILE: components/sponsorship/stamp.tsx
type CircularTextProps (line 79) | interface CircularTextProps {
type StampProps (line 127) | type StampProps = {
FILE: components/ui/avatar.tsx
function Avatar (line 26) | function Avatar({
function AvatarImage (line 41) | function AvatarImage({
function AvatarFallback (line 54) | function AvatarFallback({
FILE: components/ui/icon-state.tsx
constant DEFAULT_LOADING_DELAY (line 7) | const DEFAULT_LOADING_DELAY = 150;
type IconStatus (line 9) | type IconStatus = "idle" | "loading" | "done" | "error";
type IconStateProps (line 11) | type IconStateProps = {
FILE: components/ui/input.tsx
type InputProps (line 6) | interface InputProps extends React.ComponentProps<typeof BaseInput> {
FILE: components/ui/portal.tsx
type PortalProps (line 3) | type PortalProps = {
FILE: components/ui/tabs.tsx
type TabsProps (line 8) | type TabsProps = React.ComponentProps<typeof BaseTabs.Root>;
type TabsListProps (line 20) | type TabsListProps = React.ComponentProps<typeof BaseTabs.List>;
type TabsTriggerProps (line 34) | type TabsTriggerProps = React.ComponentProps<typeof BaseTabs.Tab>;
FILE: components/ui/text-loop.tsx
type TextLoopProps (line 9) | type TextLoopProps = {
function TextLoop (line 18) | function TextLoop({
FILE: components/ui/theme-toggle.tsx
type Theme (line 7) | type Theme = "light" | "dark" | "system";
FILE: constants.ts
constant SITE (line 1) | const SITE = {
constant LINK (line 34) | const LINK = {
constant PACKAGE_MANAGER (line 42) | const PACKAGE_MANAGER = {
FILE: icons/a-arrow-down.tsx
type AArrowDownIconHandle (line 10) | interface AArrowDownIconHandle {
type AArrowDownIconProps (line 15) | interface AArrowDownIconProps extends HTMLAttributes<HTMLDivElement> {
constant LETTER_VARIANTS (line 19) | const LETTER_VARIANTS: Variants = {
constant ARROW_VARIANTS (line 28) | const ARROW_VARIANTS: Variants = {
FILE: icons/a-arrow-up.tsx
type AArrowUpIconHandle (line 10) | interface AArrowUpIconHandle {
type AArrowUpIconProps (line 15) | interface AArrowUpIconProps extends HTMLAttributes<HTMLDivElement> {
constant LETTER_VARIANTS (line 19) | const LETTER_VARIANTS: Variants = {
constant ARROW_VARIANTS (line 28) | const ARROW_VARIANTS: Variants = {
FILE: icons/accessibility.tsx
type AccessibilityIconHandle (line 10) | interface AccessibilityIconHandle {
type AccessibilityIconProps (line 15) | interface AccessibilityIconProps extends HTMLAttributes<HTMLDivElement> {
constant CIRCLE_VARIANTS (line 19) | const CIRCLE_VARIANTS: Variants = {
constant PRIMARY_GROUP_VARIANTS (line 34) | const PRIMARY_GROUP_VARIANTS: Variants = {
constant SECONDARY_GROUP_VARIANTS (line 47) | const SECONDARY_GROUP_VARIANTS: Variants = {
constant PATH_VARIANTS (line 61) | const PATH_VARIANTS: Variants = {
FILE: icons/activity.tsx
type ActivityIconHandle (line 10) | interface ActivityIconHandle {
type ActivityIconProps (line 15) | interface ActivityIconProps extends HTMLAttributes<HTMLDivElement> {
constant VARIANTS (line 19) | const VARIANTS: Variants = {
FILE: icons/air-vent.tsx
type AirVentIconHandle (line 10) | interface AirVentIconHandle {
type AirVentIconProps (line 15) | interface AirVentIconProps extends HTMLAttributes<HTMLDivElement> {
constant WIND_VARIANTS (line 19) | const WIND_VARIANTS: Variants = {
FILE: icons/airplane.tsx
type AirplaneIconHandle (line 9) | interface AirplaneIconHandle {
type AirplaneIconProps (line 14) | interface AirplaneIconProps extends HTMLAttributes<HTMLDivElement> {
constant SPEED_LINES (line 18) | const SPEED_LINES = [
FILE: icons/airplay.tsx
type AirplayIconHandle (line 9) | interface AirplayIconHandle {
type AirplayIconProps (line 14) | interface AirplayIconProps extends HTMLAttributes<HTMLDivElement> {
constant DURATION (line 18) | const DURATION = 0.3;
constant SCREEN_VARIANTS (line 20) | const SCREEN_VARIANTS = {
constant TRIANGLE_VARIANTS (line 38) | const TRIANGLE_VARIANTS = {
FILE: icons/alarm-clock.tsx
type AlarmClockIconHandle (line 10) | interface AlarmClockIconHandle {
type AlarmClockIconProps (line 15) | interface AlarmClockIconProps extends HTMLAttributes<HTMLDivElement> {
constant PATH_VARIANTS (line 19) | const PATH_VARIANTS: Variants = {
constant SECONDARY_PATH_VARIANTS (line 49) | const SECONDARY_PATH_VARIANTS: Variants = {
FILE: icons/align-center.tsx
type AlignCenterIconHandle (line 9) | interface AlignCenterIconHandle {
type AlignCenterIconProps (line 14) | interface AlignCenterIconProps extends HTMLAttributes<HTMLDivElement> {
FILE: icons/align-horizontal.tsx
type AlignHorizontalIconHandle (line 10) | interface AlignHorizontalIconHandle {
type AlignHorizontalIconProps (line 15) | interface AlignHorizontalIconProps extends HTMLAttributes<HTMLDivElement> {
constant DEFAULT_TRANSITION (line 19) | const DEFAULT_TRANSITION: Transition = {
FILE: icons/align-left.tsx
type AlignLeftIconHandle (line 10) | interface AlignLeftIconHandle {
type AlignLeftIconProps (line 15) | interface AlignLeftIconProps extends HTMLAttributes<HTMLDivElement> {
constant DEFAULT_TRANSITION (line 19) | const DEFAULT_TRANSITION: Transition = {
FILE: icons/align-right.tsx
type AlignRightIconHandle (line 10) | interface AlignRightIconHandle {
type AlignRightIconProps (line 15) | interface AlignRightIconProps extends HTMLAttributes<HTMLDivElement> {
constant DEFAULT_TRANSITION (line 19) | const DEFAULT_TRANSITION: Transition = {
FILE: icons/align-vertical.tsx
type AlignVerticalIconHandle (line 10) | interface AlignVerticalIconHandle {
type AlignVerticalIconProps (line 15) | interface AlignVerticalIconProps extends HTMLAttributes<HTMLDivElement> {
constant DEFAULT_TRANSITION (line 19) | const DEFAULT_TRANSITION: Transition = {
FILE: icons/ambulance.tsx
type AmbulanceIconHandle (line 8) | interface AmbulanceIconHandle {
type AmbulanceIconProps (line 13) | interface AmbulanceIconProps extends HTMLAttributes<HTMLDivElement> {
constant BODY_VARIANTS (line 17) | const BODY_VARIANTS: Variants = {
constant WHEEL_VARIANTS (line 30) | const WHEEL_VARIANTS: Variants = {
constant SPEED_LINE_VARIANTS (line 42) | const SPEED_LINE_VARIANTS: Variants = {
constant CROSS_VARIANTS (line 62) | const CROSS_VARIANTS: Variants = {
FILE: icons/angry.tsx
type AngryIconHandle (line 10) | interface AngryIconHandle {
type AngryIconProps (line 15) | interface AngryIconProps extends HTMLAttributes<HTMLDivElement> {
constant EYEBROW_ROTATION (line 19) | const EYEBROW_ROTATION = 20;
constant DURATION (line 20) | const DURATION = 0.6;
constant PATH_VARIANTS_FACE (line 22) | const PATH_VARIANTS_FACE: Variants = {
constant PATH_VARIANTS_LEFT_EYEBROW (line 35) | const PATH_VARIANTS_LEFT_EYEBROW: Variants = {
constant PATH_VARIANTS_RIGHT_EYEBROW (line 45) | const PATH_VARIANTS_RIGHT_EYEBROW: Variants = {
constant PATH_VARIANTS_EYE (line 55) | const PATH_VARIANTS_EYE: Variants = {
constant PATH_VARIANTS_MOUTH (line 65) | const PATH_VARIANTS_MOUTH: Variants = {
FILE: icons/annoyed.tsx
type AnnoyedIconHandle (line 10) | interface AnnoyedIconHandle {
type AnnoyedIconProps (line 15) | interface AnnoyedIconProps extends HTMLAttributes<HTMLDivElement> {
FILE: icons/archive.tsx
type ArchiveIconHandle (line 10) | interface ArchiveIconHandle {
type ArchiveIconProps (line 15) | interface ArchiveIconProps extends HTMLAttributes<HTMLDivElement> {
constant RECT_VARIANTS (line 19) | const RECT_VARIANTS: Variants = {
constant PATH_VARIANTS (line 40) | const PATH_VARIANTS: Variants = {
constant SECONDARY_PATH_VARIANTS (line 45) | const SECONDARY_PATH_VARIANTS: Variants = {
FILE: icons/arrow-big-down-dash.tsx
type ArrowBigDownDashIconHandle (line 10) | interface ArrowBigDownDashIconHandle {
type ArrowBigDownDashIconProps (line 15) | interface ArrowBigDownDashIconProps extends HTMLAttributes<HTMLDivElemen...
constant DASH_VARIANTS (line 19) | const DASH_VARIANTS: Variants = {
constant ARROW_VARIANTS (line 29) | const ARROW_VARIANTS: Variants = {
FILE: icons/arrow-big-down.tsx
type ArrowBigDownIconHandle (line 10) | interface ArrowBigDownIconHandle {
type ArrowBigDownIconProps (line 15) | interface ArrowBigDownIconProps extends HTMLAttributes<HTMLDivElement> {
constant PATH_VARIANTS (line 19) | const PATH_VARIANTS: Variants = {
FILE: icons/arrow-big-left-dash.tsx
type ArrowBigLeftDashIconHandle (line 10) | interface ArrowBigLeftDashIconHandle {
type ArrowBigLeftDashIconProps (line 15) | interface ArrowBigLeftDashIconProps extends HTMLAttributes<HTMLDivElemen...
constant DASH_VARIANTS (line 19) | const DASH_VARIANTS: Variants = {
constant ARROW_VARIANTS (line 29) | const ARROW_VARIANTS: Variants = {
FILE: icons/arrow-big-left.tsx
type ArrowBigLeftIconHandle (line 10) | interface ArrowBigLeftIconHandle {
type ArrowBigLeftIconProps (line 15) | interface ArrowBigLeftIconProps extends HTMLAttributes<HTMLDivElement> {
constant PATH_VARIANTS (line 19) | const PATH_VARIANTS: Variants = {
FILE: icons/arrow-big-right-dash.tsx
type ArrowBigRightDashIconHandle (line 10) | interface ArrowBigRightDashIconHandle {
type ArrowBigRightDashIconProps (line 15) | interface ArrowBigRightDashIconProps extends HTMLAttributes<HTMLDivEleme...
constant DASH_VARIANTS (line 19) | const DASH_VARIANTS: Variants = {
constant ARROW_VARIANTS (line 29) | const ARROW_VARIANTS: Variants = {
FILE: icons/arrow-big-right.tsx
type ArrowBigRightIconHandle (line 10) | interface ArrowBigRightIconHandle {
type ArrowBigRightIconProps (line 15) | interface ArrowBigRightIconProps extends HTMLAttributes<HTMLDivElement> {
constant PATH_VARIANTS (line 19) | const PATH_VARIANTS: Variants = {
FILE: icons/arrow-big-up-dash.tsx
type ArrowBigUpDashIconHandle (line 10) | interface ArrowBigUpDashIconHandle {
type ArrowBigUpDashIconProps (line 15) | interface ArrowBigUpDashIconProps extends HTMLAttributes<HTMLDivElement> {
constant DASH_VARIANTS (line 19) | const DASH_VARIANTS: Variants = {
constant ARROW_VARIANTS (line 29) | const ARROW_VARIANTS: Variants = {
FILE: icons/arrow-big-up.tsx
type ArrowBigUpIconHandle (line 10) | interface ArrowBigUpIconHandle {
type ArrowBigUpIconProps (line 15) | interface ArrowBigUpIconProps extends HTMLAttributes<HTMLDivElement> {
constant PATH_VARIANTS (line 19) | const PATH_VARIANTS: Variants = {
FILE: icons/arrow-down-0-1.tsx
type ArrowDown01IconHandle (line 10) | interface ArrowDown01IconHandle {
type ArrowDown01IconProps (line 15) | interface ArrowDown01IconProps extends HTMLAttributes<HTMLDivElement> {
constant SWAP_TRANSITION (line 19) | const SWAP_TRANSITION: Transition = {
constant SWAP_VARIANTS (line 25) | const SWAP_VARIANTS: Variants = {
FILE: icons/arrow-down-1-0.tsx
type ArrowDown10IconHandle (line 10) | interface ArrowDown10IconHandle {
type ArrowDown10IconProps (line 15) | interface ArrowDown10IconProps extends HTMLAttributes<HTMLDivElement> {
constant SWAP_TRANSITION (line 19) | const SWAP_TRANSITION: Transition = {
constant SWAP_VARIANTS (line 25) | const SWAP_VARIANTS: Variants = {
FILE: icons/arrow-down-a-z.tsx
type ArrowDownAZIconHandle (line 10) | interface ArrowDownAZIconHandle {
type ArrowDownAZIconProps (line 15) | interface ArrowDownAZIconProps extends HTMLAttributes<HTMLDivElement> {
constant SWAP_TRANSITION (line 19) | const SWAP_TRANSITION: Transition = {
constant SWAP_VARIANTS (line 25) | const SWAP_VARIANTS: Variants = {
FILE: icons/arrow-down-left.tsx
type ArrowDownLeftIconHandle (line 10) | interface ArrowDownLeftIconHandle {
type ArrowDownLeftIconProps (line 15) | interface ArrowDownLeftIconProps extends HTMLAttributes<HTMLDivElement> {
constant HEAD_VARIANTS (line 19) | const HEAD_VARIANTS: Variants = {
constant SHAFT_VARIANTS (line 31) | const SHAFT_VARIANTS: Variants = {
FILE: icons/arrow-down-right.tsx
type ArrowDownRightIconHandle (line 10) | interface ArrowDownRightIconHandle {
type ArrowDownRightIconProps (line 15) | interface ArrowDownRightIconProps extends HTMLAttributes<HTMLDivElement> {
constant HEAD_VARIANTS (line 19) | const HEAD_VARIANTS: Variants = {
constant SHAFT_VARIANTS (line 31) | const SHAFT_VARIANTS: Variants = {
FILE: icons/arrow-down-z-a.tsx
type ArrowDownZAIconHandle (line 10) | interface ArrowDownZAIconHandle {
type ArrowDownZAIconProps (line 15) | interface ArrowDownZAIconProps extends HTMLAttributes<HTMLDivElement> {
constant SWAP_TRANSITION (line 19) | const SWAP_TRANSITION: Transition = {
constant SWAP_VARIANTS (line 25) | const SWAP_VARIANTS: Variants = {
FILE: icons/arrow-down.tsx
type ArrowDownIconHandle (line 10) | interface ArrowDownIconHandle {
type ArrowDownIconProps (line 15) | interface ArrowDownIconProps extends HTMLAttributes<HTMLDivElement> {
constant PATH_VARIANTS (line 19) | const PATH_VARIANTS: Variants = {
constant SECOND_PATH_VARIANTS (line 30) | const SECOND_PATH_VARIANTS: Variants = {
FILE: icons/arrow-left.tsx
type ArrowLeftIconHandle (line 10) | interface ArrowLeftIconHandle {
type ArrowLeftIconProps (line 15) | interface ArrowLeftIconProps extends HTMLAttributes<HTMLDivElement> {
constant PATH_VARIANTS (line 19) | const PATH_VARIANTS: Variants = {
constant SECOND_PATH_VARIANTS (line 30) | const SECOND_PATH_VARIANTS: Variants = {
FILE: icons/arrow-right.tsx
type ArrowRightIconHandle (line 10) | interface ArrowRightIconHandle {
type ArrowRightIconProps (line 15) | interface ArrowRightIconProps extends HTMLAttributes<HTMLDivElement> {
constant PATH_VARIANTS (line 19) | const PATH_VARIANTS: Variants = {
constant SECONDARY_PATH_VARIANTS (line 29) | const SECONDARY_PATH_VARIANTS: Variants = {
FILE: icons/arrow-up-left.tsx
type ArrowUpLeftIconHandle (line 10) | interface ArrowUpLeftIconHandle {
type ArrowUpLeftIconProps (line 15) | interface ArrowUpLeftIconProps extends HTMLAttributes<HTMLDivElement> {
constant ARROW_VARIANTS (line 19) | const ARROW_VARIANTS: Variants = {
FILE: icons/arrow-up-right.tsx
type ArrowUpRightIconHandle (line 10) | interface ArrowUpRightIconHandle {
type ArrowUpRightIconProps (line 15) | interface ArrowUpRightIconProps extends HTMLAttributes<HTMLDivElement> {
constant ARROW_VARIANTS (line 19) | const ARROW_VARIANTS: Variants = {
FILE: icons/arrow-up.tsx
type ArrowUpIconHandle (line 10) | interface ArrowUpIconHandle {
type ArrowUpIconProps (line 15) | interface ArrowUpIconProps extends HTMLAttributes<HTMLDivElement> {
constant PATH_VARIANTS (line 19) | const PATH_VARIANTS: Variants = {
constant SECOND_PATH_VARIANTS (line 30) | const SECOND_PATH_VARIANTS: Variants = {
FILE: icons/at-sign.tsx
type AtSignIconHandle (line 10) | interface AtSignIconHandle {
type AtSignIconProps (line 15) | interface AtSignIconProps extends HTMLAttributes<HTMLDivElement> {
constant CIRCLE_VARIANTS (line 19) | const CIRCLE_VARIANTS: Variants = {
constant PATH_VARIANTS (line 40) | const PATH_VARIANTS: Variants = {
FILE: icons/atom.tsx
type AtomIconHandle (line 10) | interface AtomIconHandle {
type AtomIconProps (line 15) | interface AtomIconProps extends HTMLAttributes<HTMLDivElement> {
constant PATH_VARIANTS (line 19) | const PATH_VARIANTS: Variants = {
FILE: icons/attach-file.tsx
type AttachFileIconHandle (line 10) | interface AttachFileIconHandle {
type AttachFileIconProps (line 15) | interface AttachFileIconProps extends HTMLAttributes<HTMLDivElement> {
constant PATH_VARIANTS (line 19) | const PATH_VARIANTS: Variants = {
FILE: icons/audio-lines.tsx
type AudioLinesIconHandle (line 9) | interface AudioLinesIconHandle {
type AudioLinesIconProps (line 14) | interface AudioLinesIconProps extends HTMLAttributes<HTMLDivElement> {
FILE: icons/axe.tsx
type AxeIconHandle (line 10) | interface AxeIconHandle {
type AxeIconProps (line 15) | interface AxeIconProps extends HTMLAttributes<HTMLDivElement> {
constant AXE_VARIANTS (line 19) | const AXE_VARIANTS: Variants = {
FILE: icons/badge-alert.tsx
type BadgeAlertIconHandle (line 10) | interface BadgeAlertIconHandle {
type BadgeAlertIconProps (line 15) | interface BadgeAlertIconProps extends HTMLAttributes<HTMLDivElement> {
constant ICON_VARIANTS (line 19) | const ICON_VARIANTS: Variants = {
FILE: icons/badge-percent.tsx
type BadgePercentIconHandle (line 10) | interface BadgePercentIconHandle {
type BadgePercentIconProps (line 15) | interface BadgePercentIconProps extends HTMLAttributes<HTMLDivElement> {
constant PATH_VARIANTS (line 19) | const PATH_VARIANTS: Variants = {
FILE: icons/ban.tsx
type BanIconHandle (line 10) | interface BanIconHandle {
type BanIconProps (line 15) | interface BanIconProps extends HTMLAttributes<HTMLDivElement> {
constant CIRCLE_VARIANTS (line 19) | const CIRCLE_VARIANTS: Variants = {
constant LINE_VARIANTS (line 38) | const LINE_VARIANTS: Variants = {
FILE: icons/banana.tsx
type BananaIconHandle (line 10) | interface BananaIconHandle {
type BananaIconProps (line 15) | interface BananaIconProps extends HTMLAttributes<HTMLDivElement> {
constant TRANSITION (line 19) | const TRANSITION: Transition = {
constant VARIANTS (line 25) | const VARIANTS: Variants = {
FILE: icons/battery-charging.tsx
type BatteryChargingIconHandle (line 9) | interface BatteryChargingIconHandle {
type BatteryChargingIconProps (line 14) | interface BatteryChargingIconProps extends HTMLAttributes<HTMLDivElement> {
FILE: icons/battery-full.tsx
type BatteryFullIconHandle (line 10) | interface BatteryFullIconHandle {
type BatteryFullIconProps (line 15) | interface BatteryFullIconProps extends HTMLAttributes<HTMLDivElement> {
constant LINE_VARIANTS (line 19) | const LINE_VARIANTS: Variants = {
FILE: icons/battery-low.tsx
type BatteryLowIconHandle (line 10) | interface BatteryLowIconHandle {
type BatteryLowIconProps (line 15) | interface BatteryLowIconProps extends HTMLAttributes<HTMLDivElement> {
constant LINE_VARIANTS (line 19) | const LINE_VARIANTS: Variants = {
FILE: icons/battery-medium.tsx
type BatteryMediumIconHandle (line 10) | interface BatteryMediumIconHandle {
type BatteryMediumIconProps (line 15) | interface BatteryMediumIconProps extends HTMLAttributes<HTMLDivElement> {
constant LINE_VARIANTS (line 19) | const LINE_VARIANTS: Variants = {
FILE: icons/battery-plus.tsx
type BatteryPlusIconHandle (line 9) | interface BatteryPlusIconHandle {
type BatteryPlusIconProps (line 14) | interface BatteryPlusIconProps extends HTMLAttributes<HTMLDivElement> {
FILE: icons/battery-warning.tsx
type BatteryWarningIconHandle (line 9) | interface BatteryWarningIconHandle {
type BatteryWarningIconProps (line 14) | interface BatteryWarningIconProps extends HTMLAttributes<HTMLDivElement> {
FILE: icons/battery.tsx
type BatteryIconHandle (line 9) | interface BatteryIconHandle {
type BatteryIconProps (line 14) | interface BatteryIconProps extends HTMLAttributes<HTMLDivElement> {
FILE: icons/bell-electric.tsx
type BellElectricIconHandle (line 9) | interface BellElectricIconHandle {
type BellElectricIconProps (line 14) | interface BellElectricIconProps extends HTMLAttributes<HTMLDivElement> {
FILE: icons/bell.tsx
type BellIconHandle (line 10) | interface BellIconHandle {
type BellIconProps (line 15) | interface BellIconProps extends HTMLAttributes<HTMLDivElement> {
constant SVG_VARIANTS (line 19) | const SVG_VARIANTS: Variants = {
FILE: icons/blocks.tsx
type BlocksIconHandle (line 10) | interface BlocksIconHandle {
type BlocksIconProps (line 15) | interface BlocksIconProps extends HTMLAttributes<HTMLDivElement> {
constant VARIANTS (line 19) | const VARIANTS: Variants = {
FILE: icons/bluetooth-connected.tsx
type BluetoothConnectedIconHandle (line 10) | interface BluetoothConnectedIconHandle {
type BluetoothConnectedIconProps (line 15) | interface BluetoothConnectedIconProps extends HTMLAttributes<HTMLDivElem...
constant PATH_VARIANTS (line 19) | const PATH_VARIANTS: Variants = {
FILE: icons/bluetooth-off.tsx
type BluetoothOffIconHandle (line 10) | interface BluetoothOffIconHandle {
type BluetoothOffIconProps (line 15) | interface BluetoothOffIconProps extends HTMLAttributes<HTMLDivElement> {
constant PATH_VARIANTS (line 19) | const PATH_VARIANTS: Variants = {
constant OFFLINE_VARIANTS (line 28) | const OFFLINE_VARIANTS: Variants = {
FILE: icons/bluetooth-searching.tsx
type BluetoothSearchingIconHandle (line 10) | interface BluetoothSearchingIconHandle {
type BluetoothSearchingIconProps (line 15) | interface BluetoothSearchingIconProps extends HTMLAttributes<HTMLDivElem...
constant PATH_VARIANTS (line 19) | const PATH_VARIANTS: Variants = {
constant SECOND_VARIANTS (line 31) | const SECOND_VARIANTS: Variants = {
FILE: icons/bluetooth.tsx
type BluetoothIconHandle (line 10) | interface BluetoothIconHandle {
type BluetoothIconProps (line 15) | interface BluetoothIconProps extends HTMLAttributes<HTMLDivElement> {
constant PATH_VARIANTS (line 19) | const PATH_VARIANTS: Variants = {
FILE: icons/bold.tsx
type BoldIconHandle (line 10) | interface BoldIconHandle {
type BoldIconProps (line 15) | interface BoldIconProps extends HTMLAttributes<HTMLDivElement> {
constant PATH_VARIANTS (line 19) | const PATH_VARIANTS: Variants = {
FILE: icons/bone.tsx
type BoneIconHandle (line 10) | interface BoneIconHandle {
type BoneIconProps (line 15) | interface BoneIconProps extends HTMLAttributes<HTMLDivElement> {
constant VARIANTS (line 19) | const VARIANTS: Variants = {
FILE: icons/book-text.tsx
type BookTextIconHandle (line 9) | interface BookTextIconHandle {
type BookTextIconProps (line 14) | interface BookTextIconProps extends HTMLAttributes<HTMLDivElement> {
FILE: icons/bookmark-check.tsx
type BookmarkCheckIconHandle (line 10) | interface BookmarkCheckIconHandle {
type BookmarkCheckIconProps (line 15) | interface BookmarkCheckIconProps extends HTMLAttributes<HTMLDivElement> {
constant BOOKMARK_VARIANTS (line 19) | const BOOKMARK_VARIANTS: Variants = {
constant CHECK_VARIANTS (line 31) | const CHECK_VARIANTS: Variants = {
FILE: icons/bookmark-minus.tsx
type BookmarkMinusIconHandle (line 10) | interface BookmarkMinusIconHandle {
type BookmarkMinusIconProps (line 15) | interface BookmarkMinusIconProps extends HTMLAttributes<HTMLDivElement> {
constant BOOKMARK_VARIANTS (line 19) | const BOOKMARK_VARIANTS: Variants = {
constant MINUS_VARIANTS (line 31) | const MINUS_VARIANTS: Variants = {
FILE: icons/bookmark-plus.tsx
type BookmarkPlusIconHandle (line 10) | interface BookmarkPlusIconHandle {
type BookmarkPlusIconProps (line 15) | interface BookmarkPlusIconProps extends HTMLAttributes<HTMLDivElement> {
constant BOOKMARK_VARIANTS (line 19) | const BOOKMARK_VARIANTS: Variants = {
constant PLUS_LINE_VARIANTS (line 31) | const PLUS_LINE_VARIANTS: Variants = {
FILE: icons/bookmark-x.tsx
type BookmarkXIconHandle (line 10) | interface BookmarkXIconHandle {
type BookmarkXIconProps (line 15) | interface BookmarkXIconProps extends HTMLAttributes<HTMLDivElement> {
constant BOOKMARK_VARIANTS (line 19) | const BOOKMARK_VARIANTS: Variants = {
constant X_LINE_VARIANTS (line 31) | const X_LINE_VARIANTS: Variants = {
FILE: icons/bookmark.tsx
type BookmarkIconHandle (line 10) | interface BookmarkIconHandle {
type BookmarkIconProps (line 15) | interface BookmarkIconProps extends HTMLAttributes<HTMLDivElement> {
constant BOOKMARK_VARIANTS (line 19) | const BOOKMARK_VARIANTS: Variants = {
FILE: icons/bot-message-square.tsx
type BotMessageSquareHandle (line 9) | interface BotMessageSquareHandle {
type BotMessageSquareProps (line 14) | interface BotMessageSquareProps extends HTMLAttributes<HTMLDivElement> {
FILE: icons/bot.tsx
type BotIconHandle (line 9) | interface BotIconHandle {
type BotIconProps (line 14) | interface BotIconProps extends HTMLAttributes<HTMLDivElement> {
FILE: icons/box.tsx
type BoxIconHandle (line 10) | interface BoxIconHandle {
type BoxIconProps (line 15) | interface BoxIconProps extends HTMLAttributes<HTMLDivElement> {
constant PATH_VARIANTS (line 19) | const PATH_VARIANTS: Variants = {
FILE: icons/boxes.tsx
type BoxesIconHandle (line 9) | interface BoxesIconHandle {
type BoxesIconProps (line 14) | interface BoxesIconProps extends HTMLAttributes<HTMLDivElement> {
FILE: icons/brain.tsx
type BrainIconHandle (line 10) | interface BrainIconHandle {
type BrainIconProps (line 15) | interface BrainIconProps extends HTMLAttributes<HTMLDivElement> {
constant BRAIN_STEM_VARIANTS (line 19) | const BRAIN_STEM_VARIANTS: Variants = {
constant BRAIN_SIDE_VARIANTS (line 33) | const BRAIN_SIDE_VARIANTS: Variants = {
constant BRAIN_TOP_ARC_VARIANTS (line 47) | const BRAIN_TOP_ARC_VARIANTS: Variants = {
constant BRAIN_LOWER_ARC_VARIANTS (line 61) | const BRAIN_LOWER_ARC_VARIANTS: Variants = {
FILE: icons/calendar-check-2.tsx
type CalendarCheck2IconHandle (line 10) | interface CalendarCheck2IconHandle {
type CalendarCheck2IconProps (line 15) | interface CalendarCheck2IconProps extends HTMLAttributes<HTMLDivElement> {
constant CHECK_VARIANTS (line 19) | const CHECK_VARIANTS: Variants = {
FILE: icons/calendar-check.tsx
type CalendarCheckIconHandle (line 10) | interface CalendarCheckIconHandle {
type CalendarCheckIconProps (line 15) | interface CalendarCheckIconProps extends HTMLAttributes<HTMLDivElement> {
constant CHECK_VARIANTS (line 19) | const CHECK_VARIANTS: Variants = {
FILE: icons/calendar-cog.tsx
type CalendarCogIconHandle (line 10) | interface CalendarCogIconHandle {
type CalendarCogIconProps (line 15) | interface CalendarCogIconProps extends HTMLAttributes<HTMLDivElement> {
constant G_VARIANTS (line 19) | const G_VARIANTS: Variants = {
FILE: icons/calendar-days.tsx
type CalendarDaysIconHandle (line 10) | interface CalendarDaysIconHandle {
type CalendarDaysIconProps (line 15) | interface CalendarDaysIconProps extends HTMLAttributes<HTMLDivElement> {
constant DOTS (line 19) | const DOTS = [
constant VARIANTS (line 28) | const VARIANTS: Variants = {
FILE: icons/cart.tsx
type CartIconHandle (line 10) | interface CartIconHandle {
type CartIconProps (line 15) | interface CartIconProps extends HTMLAttributes<HTMLDivElement> {
constant CART_VARIANTS (line 19) | const CART_VARIANTS: Variants = {
FILE: icons/cast.tsx
type CastIconHandle (line 10) | interface CastIconHandle {
type CastIconProps (line 15) | interface CastIconProps extends HTMLAttributes<HTMLDivElement> {
constant VARIANTS (line 19) | const VARIANTS: Variants = {
FILE: icons/cctv.tsx
type CctvIconHandle (line 10) | interface CctvIconHandle {
type CctvIconProps (line 15) | interface CctvIconProps extends HTMLAttributes<HTMLDivElement> {
constant CCTV_GROUP_VARIANTS (line 19) | const CCTV_GROUP_VARIANTS: Variants = {
constant CCTV_PATH_VARIANTS (line 36) | const CCTV_PATH_VARIANTS: Variants = {
FILE: icons/chart-bar-decreasing.tsx
type ChartBarDecreasingIconHandle (line 10) | interface ChartBarDecreasingIconHandle {
type ChartBarDecreasingIconProps (line 15) | interface ChartBarDecreasingIconProps extends HTMLAttributes<HTMLDivElem...
constant LINE_VARIANTS (line 19) | const LINE_VARIANTS: Variants = {
FILE: icons/chart-bar-increasing.tsx
type ChartBarIncreasingIconHandle (line 10) | interface ChartBarIncreasingIconHandle {
type ChartBarIncreasingIconProps (line 15) | interface ChartBarIncreasingIconProps extends HTMLAttributes<HTMLDivElem...
constant LINE_VARIANTS (line 19) | const LINE_VARIANTS: Variants = {
FILE: icons/chart-column-decreasing.tsx
type ChartColumnDecreasingIconHandle (line 10) | interface ChartColumnDecreasingIconHandle {
type ChartColumnDecreasingIconProps (line 15) | interface ChartColumnDecreasingIconProps
constant LINE_VARIANTS (line 20) | const LINE_VARIANTS: Variants = {
FILE: icons/chart-column-increasing.tsx
type ChartColumnIncreasingIconHandle (line 10) | interface ChartColumnIncreasingIconHandle {
type ChartColumnIncreasingIconProps (line 15) | interface ChartColumnIncreasingIconProps
constant LINE_VARIANTS (line 20) | const LINE_VARIANTS: Variants = {
FILE: icons/chart-line.tsx
type ChartLineIconHandle (line 10) | interface ChartLineIconHandle {
type ChartLineIconProps (line 15) | interface ChartLineIconProps extends HTMLAttributes<HTMLDivElement> {
constant VARIANTS (line 19) | const VARIANTS: Variants = {
FILE: icons/chart-no-axes-column-decreasing.tsx
type ChartNoAxesColumnDecreasingIconHandle (line 10) | interface ChartNoAxesColumnDecreasingIconHandle {
type ChartNoAxesColumnDecreasingIconProps (line 15) | interface ChartNoAxesColumnDecreasingIconProps
constant LINE_VARIANTS (line 20) | const LINE_VARIANTS: Variants = {
FILE: icons/chart-no-axes-column-increasing.tsx
type ChartNoAxesColumnIncreasingIconHandle (line 10) | interface ChartNoAxesColumnIncreasingIconHandle {
type ChartNoAxesColumnIncreasingIconProps (line 15) | interface ChartNoAxesColumnIncreasingIconProps
constant LINE_VARIANTS (line 20) | const LINE_VARIANTS: Variants = {
FILE: icons/chart-pie.tsx
type ChartPieIconHandle (line 10) | interface ChartPieIconHandle {
type ChartPieIconProps (line 15) | interface ChartPieIconProps extends HTMLAttributes<HTMLDivElement> {
constant PATH_VARIANTS (line 19) | const PATH_VARIANTS: Variants = {
FILE: icons/chart-scatter.tsx
type ChartScatterIconHandle (line 10) | interface ChartScatterIconHandle {
type ChartScatterIconProps (line 15) | interface ChartScatterIconProps extends HTMLAttributes<HTMLDivElement> {
constant DOT_VARIANTS (line 19) | const DOT_VARIANTS: Variants = {
FILE: icons/chart-spline.tsx
type ChartSplineIconHandle (line 10) | interface ChartSplineIconHandle {
type ChartSplineIconProps (line 15) | interface ChartSplineIconProps extends HTMLAttributes<HTMLDivElement> {
constant VARIANTS (line 19) | const VARIANTS: Variants = {
FILE: icons/check-check.tsx
type CheckCheckIconHandle (line 10) | interface CheckCheckIconHandle {
type CheckCheckIconProps (line 15) | interface CheckCheckIconProps extends HTMLAttributes<HTMLDivElement> {
constant PATH_VARIANTS (line 19) | const PATH_VARIANTS: Variants = {
FILE: icons/check.tsx
type CheckIconHandle (line 10) | interface CheckIconHandle {
type CheckIconProps (line 15) | interface CheckIconProps extends HTMLAttributes<HTMLDivElement> {
constant PATH_VARIANTS (line 19) | const PATH_VARIANTS: Variants = {
FILE: icons/chess-bishop.tsx
type ChessBishopIconHandle (line 9) | interface ChessBishopIconHandle {
type ChessBishopIconProps (line 14) | interface ChessBishopIconProps extends HTMLAttributes<HTMLDivElement> {
constant BISHOP_VARIANTS (line 18) | const BISHOP_VARIANTS: Variants = {
FILE: icons/chess-king.tsx
type ChessKingIconHandle (line 9) | interface ChessKingIconHandle {
type ChessKingIconProps (line 14) | interface ChessKingIconProps extends HTMLAttributes<HTMLDivElement> {
constant KING_VARIANTS (line 18) | const KING_VARIANTS: Variants = {
FILE: icons/chess-knight.tsx
type ChessKnightIconHandle (line 9) | interface ChessKnightIconHandle {
type ChessKnightIconProps (line 14) | interface ChessKnightIconProps extends HTMLAttributes<HTMLDivElement> {
constant KNIGHT_VARIANTS (line 18) | const KNIGHT_VARIANTS: Variants = {
FILE: icons/chess-pawn.tsx
type ChessPawnIconHandle (line 9) | interface ChessPawnIconHandle {
type ChessPawnIconProps (line 14) | interface ChessPawnIconProps extends HTMLAttributes<HTMLDivElement> {
constant HEAD_VARIANTS (line 18) | const HEAD_VARIANTS: Variants = {
constant BODY_VARIANTS (line 41) | const BODY_VARIANTS: Variants = {
FILE: icons/chevron-down.tsx
type ChevronDownIconHandle (line 10) | interface ChevronDownIconHandle {
type ChevronDownIconProps (line 15) | interface ChevronDownIconProps extends HTMLAttributes<HTMLDivElement> {
constant DEFAULT_TRANSITION (line 19) | const DEFAULT_TRANSITION: Transition = {
FILE: icons/chevron-first.tsx
type ChevronFirstIconHandle (line 9) | interface ChevronFirstIconHandle {
type ChevronFirstIconProps (line 14) | interface ChevronFirstIconProps extends HTMLAttributes<HTMLDivElement> {
FILE: icons/chevron-left.tsx
type ChevronLeftIconHandle (line 10) | interface ChevronLeftIconHandle {
type ChevronLeftIconProps (line 15) | interface ChevronLeftIconProps extends HTMLAttributes<HTMLDivElement> {
constant DEFAULT_TRANSITION (line 19) | const DEFAULT_TRANSITION: Transition = {
FILE: icons/chevron-right.tsx
type ChevronRightIconHandle (line 10) | interface ChevronRightIconHandle {
type ChevronRightIconProps (line 15) | interface ChevronRightIconProps extends HTMLAttributes<HTMLDivElement> {
constant DEFAULT_TRANSITION (line 19) | const DEFAULT_TRANSITION: Transition = {
FILE: icons/chevron-up.tsx
type ChevronUpIconHandle (line 10) | interface ChevronUpIconHandle {
type ChevronUpIconProps (line 15) | interface ChevronUpIconProps extends HTMLAttributes<HTMLDivElement> {
constant DEFAULT_TRANSITION (line 19) | const DEFAULT_TRANSITION: Transition = {
FILE: icons/chevrons-down-up.tsx
type ChevronsDownUpIconHandle (line 10) | interface ChevronsDownUpIconHandle {
type ChevronsDownUpIconProps (line 15) | interface ChevronsDownUpIconProps extends HTMLAttributes<HTMLDivElement> {
constant DEFAULT_TRANSITION (line 19) | const DEFAULT_TRANSITION: Transition = {
FILE: icons/chevrons-left-right.tsx
type ChevronsLeftRightIconHandle (line 10) | interface ChevronsLeftRightIconHandle {
type ChevronsLeftRightIconProps (line 15) | interface ChevronsLeftRightIconProps extends HTMLAttributes<HTMLDivEleme...
constant DEFAULT_TRANSITION (line 19) | const DEFAULT_TRANSITION: Transition = {
FILE: icons/chevrons-right-left.tsx
type ChevronsRightLeftIconHandle (line 10) | interface ChevronsRightLeftIconHandle {
type ChevronsRightLeftIconProps (line 15) | interface ChevronsRightLeftIconProps extends HTMLAttributes<HTMLDivEleme...
constant DEFAULT_TRANSITION (line 19) | const DEFAULT_TRANSITION: Transition = {
FILE: icons/chevrons-up-down.tsx
type ChevronsUpDownIconHandle (line 10) | interface ChevronsUpDownIconHandle {
type ChevronsUpDownIconProps (line 15) | interface ChevronsUpDownIconProps extends HTMLAttributes<HTMLDivElement> {
constant DEFAULT_TRANSITION (line 19) | const DEFAULT_TRANSITION: Transition = {
FILE: icons/chrome.tsx
type ChromeIconHandle (line 10) | interface ChromeIconHandle {
type ChromeIconProps (line 15) | interface ChromeIconProps extends HTMLAttributes<HTMLDivElement> {
constant TRANSITION (line 19) | const TRANSITION: Transition = {
constant VARIANTS (line 24) | const VARIANTS: Variants = {
FILE: icons/circle-check.tsx
type CircleCheckIconHandle (line 10) | interface CircleCheckIconHandle {
type CircleCheckIconProps (line 15) | interface CircleCheckIconProps extends HTMLAttributes<HTMLDivElement> {
constant PATH_VARIANTS (line 19) | const PATH_VARIANTS: Variants = {
FILE: icons/circle-chevron-down.tsx
type CircleChevronDownIconHandle (line 10) | interface CircleChevronDownIconHandle {
type CircleChevronDownIconProps (line 15) | interface CircleChevronDownIconProps extends HTMLAttributes<HTMLDivEleme...
constant DEFAULT_TRANSITION (line 19) | const DEFAULT_TRANSITION: Transition = {
FILE: icons/circle-chevron-left.tsx
type CircleChevronLeftIconHandle (line 10) | interface CircleChevronLeftIconHandle {
type CircleChevronLeftIconProps (line 15) | interface CircleChevronLeftIconProps extends HTMLAttributes<HTMLDivEleme...
constant DEFAULT_TRANSITION (line 19) | const DEFAULT_TRANSITION: Transition = {
FILE: icons/circle-chevron-right.tsx
type CircleChevronRightIconHandle (line 10) | interface CircleChevronRightIconHandle {
type CircleChevronRightIconProps (line 15) | interface CircleChevronRightIconProps extends HTMLAttributes<HTMLDivElem...
constant DEFAULT_TRANSITION (line 19) | const DEFAULT_TRANSITION: Transition = {
FILE: icons/circle-chevron-up.tsx
type CircleChevronUpIconHandle (line 10) | interface CircleChevronUpIconHandle {
type CircleChevronUpIconProps (line 15) | interface CircleChevronUpIconProps extends HTMLAttributes<HTMLDivElement> {
constant DEFAULT_TRANSITION (line 19) | const DEFAULT_TRANSITION: Transition = {
FILE: icons/circle-dashed.tsx
type CircleDashedIconHandle (line 10) | interface CircleDashedIconHandle {
type CircleDashedIconProps (line 15) | interface CircleDashedIconProps extends HTMLAttributes<HTMLDivElement> {
constant PATH_VARIANTS (line 19) | const PATH_VARIANTS: Variants = {
FILE: icons/circle-dollar-sign.tsx
type CircleDollarSignIconHandle (line 10) | interface CircleDollarSignIconHandle {
type CircleDollarSignIconProps (line 15) | interface CircleDollarSignIconProps extends HTMLAttributes<HTMLDivElemen...
constant DOLLAR_MAIN_VARIANTS (line 19) | const DOLLAR_MAIN_VARIANTS: Variants = {
constant DOLLAR_SECONDARY_VARIANTS (line 38) | const DOLLAR_SECONDARY_VARIANTS: Variants = {
FILE: icons/circle-help.tsx
type CircleHelpIconHandle (line 10) | interface CircleHelpIconHandle {
type CircleHelpIconProps (line 15) | interface CircleHelpIconProps extends HTMLAttributes<HTMLDivElement> {
constant VARIANTS (line 19) | const VARIANTS: Variants = {
FILE: icons/clap.tsx
type ClapIconHandle (line 10) | interface ClapIconHandle {
type ClapIconProps (line 15) | interface ClapIconProps extends HTMLAttributes<HTMLDivElement> {
constant VARIANTS (line 19) | const VARIANTS: Variants = {
constant CLAP_VARIANTS (line 35) | const CLAP_VARIANTS: Variants = {
FILE: icons/clipboard-check.tsx
type ClipboardCheckIconHandle (line 10) | interface ClipboardCheckIconHandle {
type ClipboardCheckIconProps (line 15) | interface ClipboardCheckIconProps extends HTMLAttributes<HTMLDivElement> {
constant CHECK_VARIANTS (line 19) | const CHECK_VARIANTS: Variants = {
FILE: icons/clock.tsx
type ClockIconHandle (line 10) | interface ClockIconHandle {
type ClockIconProps (line 15) | interface ClockIconProps extends HTMLAttributes<HTMLDivElement> {
constant HAND_TRANSITION (line 19) | const HAND_TRANSITION: Transition = {
constant HAND_VARIANTS (line 24) | const HAND_VARIANTS: Variants = {
constant MINUTE_HAND_TRANSITION (line 37) | const MINUTE_HAND_TRANSITION: Transition = {
constant MINUTE_HAND_VARIANTS (line 42) | const MINUTE_HAND_VARIANTS: Variants = {
FILE: icons/cloud-cog.tsx
type CloudCogIconHandle (line 10) | interface CloudCogIconHandle {
type CloudCogIconProps (line 15) | interface CloudCogIconProps extends HTMLAttributes<HTMLDivElement> {
constant G_VARIANTS (line 19) | const G_VARIANTS: Variants = {
FILE: icons/cloud-download.tsx
type CloudDownloadIconHandle (line 10) | interface CloudDownloadIconHandle {
type CloudDownloadIconProps (line 15) | interface CloudDownloadIconProps extends HTMLAttributes<HTMLDivElement> {
constant CLOUD_VARIANTS (line 19) | const CLOUD_VARIANTS: Variants = {
FILE: icons/cloud-lightning.tsx
type CloudLightningIconHandle (line 9) | interface CloudLightningIconHandle {
type CloudLightningIconProps (line 14) | interface CloudLightningIconProps extends HTMLAttributes<HTMLDivElement> {
FILE: icons/cloud-rain-wind.tsx
type CloudRainWindIconHandle (line 10) | interface CloudRainWindIconHandle {
type CloudRainWindIconProps (line 15) | interface CloudRainWindIconProps extends HTMLAttributes<HTMLDivElement> {
constant WIND_VARIANTS (line 19) | const WIND_VARIANTS: Variants = {
constant WIND_CHILD_VARIANTS (line 27) | const WIND_CHILD_VARIANTS: Variants = {
FILE: icons/cloud-rain.tsx
type CloudRainIconHandle (line 10) | interface CloudRainIconHandle {
type CloudRainIconProps (line 15) | interface CloudRainIconProps extends HTMLAttributes<HTMLDivElement> {
constant RAIN_VARIANTS (line 19) | const RAIN_VARIANTS: Variants = {
constant RAIN_CHILD_VARIANTS (line 27) | const RAIN_CHILD_VARIANTS: Variants = {
FILE: icons/cloud-snow.tsx
type CloudSnowIconHandle (line 10) | interface CloudSnowIconHandle {
type CloudSnowIconProps (line 15) | interface CloudSnowIconProps extends HTMLAttributes<HTMLDivElement> {
constant SNOWFLAKE_VARIANTS (line 19) | const SNOWFLAKE_VARIANTS: Variants = {
constant SNOWFLAKE_CHILD_VARIANTS (line 27) | const SNOWFLAKE_CHILD_VARIANTS: Variants = {
constant SNOWFLAKE_PATH (line 41) | const SNOWFLAKE_PATH = [
FILE: icons/cloud-sun.tsx
type CloudSunIconHandle (line 10) | interface CloudSunIconHandle {
type CloudSunIconProps (line 15) | interface CloudSunIconProps extends HTMLAttributes<HTMLDivElement> {
constant CLOUD_VARIANTS (line 19) | const CLOUD_VARIANTS: Variants = {
constant SUN_VARIANTS (line 34) | const SUN_VARIANTS: Variants = {
FILE: icons/cloud-upload.tsx
type CloudUploadIconHandle (line 10) | interface CloudUploadIconHandle {
type CloudUploadIconProps (line 15) | interface CloudUploadIconProps extends HTMLAttributes<HTMLDivElement> {
constant CLOUD_VARIANTS (line 19) | const CLOUD_VARIANTS: Variants = {
FILE: icons/coffee.tsx
type CoffeeIconHandle (line 10) | interface CoffeeIconHandle {
type CoffeeIconProps (line 15) | interface CoffeeIconProps extends HTMLAttributes<HTMLDivElement> {
constant PATH_VARIANTS (line 19) | const PATH_VARIANTS: Variants = {
FILE: icons/cog.tsx
type CogIconHandle (line 9) | interface CogIconHandle {
type CogIconProps (line 14) | interface CogIconProps extends HTMLAttributes<HTMLDivElement> {
FILE: icons/compass.tsx
type CompassIconHandle (line 9) | interface CompassIconHandle {
type CompassIconProps (line 14) | interface CompassIconProps extends HTMLAttributes<HTMLDivElement> {
FILE: icons/connect.tsx
type ConnectIconHandle (line 10) | interface ConnectIconHandle {
type ConnectIconProps (line 15) | interface ConnectIconProps extends HTMLAttributes<HTMLDivElement> {
constant PLUG_VARIANTS (line 19) | const PLUG_VARIANTS: Variants = {
constant SOCKET_VARIANTS (line 30) | const SOCKET_VARIANTS: Variants = {
constant PATH_VARIANTS (line 41) | const PATH_VARIANTS = {
FILE: icons/construction.tsx
type ConstructionIconHandle (line 9) | interface ConstructionIconHandle {
type ConstructionIconProps (line 14) | interface ConstructionIconProps extends HTMLAttributes<HTMLDivElement> {
FILE: icons/contrast.tsx
type ContrastIconHandle (line 10) | interface ContrastIconHandle {
type ContrastIconProps (line 15) | interface ContrastIconProps extends HTMLAttributes<HTMLDivElement> {
constant PATH_VARIANT (line 19) | const PATH_VARIANT: Variants = {
FILE: icons/cooking-pot.tsx
type CookingPotIconHandle (line 10) | interface CookingPotIconHandle {
type CookingPotIconProps (line 15) | interface CookingPotIconProps extends HTMLAttributes<HTMLDivElement> {
constant LID_VARIANTS (line 19) | const LID_VARIANTS: Variants = {
constant POT_VARIANTS (line 30) | const POT_VARIANTS: Variants = {
FILE: icons/copy.tsx
type CopyIconHandle (line 10) | interface CopyIconHandle {
type CopyIconProps (line 15) | interface CopyIconProps extends HTMLAttributes<HTMLDivElement> {
constant DEFAULT_TRANSITION (line 19) | const DEFAULT_TRANSITION: Transition = {
FILE: icons/corner-down-left.tsx
constant STRETCH_VARIANTS (line 10) | const STRETCH_VARIANTS: Variants = {
type CornerDownLeftIconHandle (line 22) | interface CornerDownLeftIconHandle {
type CornerDownLeftIconProps (line 27) | interface CornerDownLeftIconProps extends HTMLAttributes<HTMLDivElement> {
FILE: icons/corner-down-right.tsx
constant STRETCH_VARIANTS (line 10) | const STRETCH_VARIANTS: Variants = {
type CornerDownRightIconHandle (line 22) | interface CornerDownRightIconHandle {
type CornerDownRightIconProps (line 27) | interface CornerDownRightIconProps extends HTMLAttributes<HTMLDivElement> {
FILE: icons/corner-left-down.tsx
constant STRETCH_VARIANTS (line 10) | const STRETCH_VARIANTS: Variants = {
type CornerLeftDownIconHandle (line 22) | interface CornerLeftDownIconHandle {
type CornerLeftDownIconProps (line 27) | interface CornerLeftDownIconProps extends HTMLAttributes<HTMLDivElement> {
FILE: icons/corner-left-up.tsx
constant STRETCH_VARIANTS (line 10) | const STRETCH_VARIANTS: Variants = {
type CornerLeftUpIconHandle (line 22) | interface CornerLeftUpIconHandle {
type CornerLeftUpIconProps (line 27) | interface CornerLeftUpIconProps extends HTMLAttributes<HTMLDivElement> {
FILE: icons/corner-right-down.tsx
constant STRETCH_VARIANTS (line 10) | const STRETCH_VARIANTS: Variants = {
type CornerRightDownIconHandle (line 22) | interface CornerRightDownIconHandle {
type CornerRightDownIconProps (line 27) | interface CornerRightDownIconProps extends HTMLAttributes<HTMLDivElement> {
FILE: icons/corner-right-up.tsx
constant STRETCH_VARIANTS (line 10) | const STRETCH_VARIANTS: Variants = {
type CornerRightUpIconHandle (line 22) | interface CornerRightUpIconHandle {
type CornerRightUpIconProps (line 27) | interface CornerRightUpIconProps extends HTMLAttributes<HTMLDivElement> {
FILE: icons/corner-up-left.tsx
constant STRETCH_VARIANTS (line 10) | const STRETCH_VARIANTS: Variants = {
type CornerUpLeftIconHandle (line 22) | interface CornerUpLeftIconHandle {
type CornerUpLeftIconProps (line 27) | interface CornerUpLeftIconProps extends HTMLAttributes<HTMLDivElement> {
FILE: icons/corner-up-right.tsx
constant STRETCH_VARIANTS (line 10) | const STRETCH_VARIANTS: Variants = {
type CornerUpRightIconHandle (line 22) | interface CornerUpRightIconHandle {
type CornerUpRightIconProps (line 27) | interface CornerUpRightIconProps extends HTMLAttributes<HTMLDivElement> {
FILE: icons/cpu.tsx
type CpuIconHandle (line 10) | interface CpuIconHandle {
type CpuIconProps (line 15) | interface CpuIconProps extends HTMLAttributes<HTMLDivElement> {
constant TRANSITION (line 19) | const TRANSITION: Transition = {
constant Y_VARIANTS (line 25) | const Y_VARIANTS: Variants = {
constant X_VARIANTS (line 36) | const X_VARIANTS: Variants = {
FILE: icons/cup-soda.tsx
type CupSodaIconHandle (line 10) | interface CupSodaIconHandle {
type CupSodaIconProps (line 15) | interface CupSodaIconProps extends HTMLAttributes<HTMLDivElement> {
constant STRAW_VARIANTS (line 19) | const STRAW_VARIANTS: Variants = {
constant WAVE_VARIANTS (line 39) | const WAVE_VARIANTS: Variants = {
constant BUBBLE_VARIANTS (line 57) | const BUBBLE_VARIANTS: Variants = {
constant BUBBLES (line 74) | const BUBBLES = [
FILE: icons/cursor-click.tsx
type CursorClickIconHandle (line 10) | interface CursorClickIconHandle {
type CursorClickIconProps (line 15) | interface CursorClickIconProps extends HTMLAttributes<HTMLDivElement> {
constant CURSOR_VARIANTS (line 19) | const CURSOR_VARIANTS: Variants = {
constant LINE_VARIANTS (line 31) | const LINE_VARIANTS: Variants = {
FILE: icons/database-backup.tsx
type DatabaseBackupIconHandle (line 8) | interface DatabaseBackupIconHandle {
type DatabaseBackupIconProps (line 13) | interface DatabaseBackupIconProps extends HTMLAttributes<HTMLDivElement> {
FILE: icons/delete.tsx
type DeleteIconHandle (line 10) | interface DeleteIconHandle {
type DeleteIconProps (line 15) | interface DeleteIconProps extends HTMLAttributes<HTMLDivElement> {
constant LID_VARIANTS (line 19) | const LID_VARIANTS: Variants = {
constant SPRING_TRANSITION (line 24) | const SPRING_TRANSITION: Transition = {
FILE: icons/disc-3.tsx
type Disc3IconHandle (line 8) | interface Disc3IconHandle {
type Disc3IconProps (line 13) | interface Disc3IconProps extends HTMLAttributes<HTMLDivElement> {
FILE: icons/discord.tsx
type DiscordIconHandle (line 10) | interface DiscordIconHandle {
type DiscordIconProps (line 15) | interface DiscordIconProps extends HTMLAttributes<HTMLDivElement> {
constant VARIANTS (line 19) | const VARIANTS: Variants = {
FILE: icons/dollar-sign.tsx
type DollarSignIconHandle (line 10) | interface DollarSignIconHandle {
type DollarSignIconProps (line 15) | interface DollarSignIconProps extends HTMLAttributes<HTMLDivElement> {
constant DOLLAR_MAIN_VARIANTS (line 19) | const DOLLAR_MAIN_VARIANTS: Variants = {
constant DOLLAR_SECONDARY_VARIANTS (line 38) | const DOLLAR_SECONDARY_VARIANTS: Variants = {
FILE: icons/download.tsx
type DownloadIconHandle (line 10) | interface DownloadIconHandle {
type DownloadIconProps (line 15) | interface DownloadIconProps extends HTMLAttributes<HTMLDivElement> {
constant ARROW_VARIANTS (line 19) | const ARROW_VARIANTS: Variants = {
FILE: icons/downvote.tsx
type DownvoteIconHandle (line 9) | interface DownvoteIconHandle {
type DownvoteIconProps (line 14) | interface DownvoteIconProps extends HTMLAttributes<HTMLDivElement> {
FILE: icons/dribbble.tsx
type DribbbleIconHandle (line 10) | interface DribbbleIconHandle {
type DribbbleIconProps (line 15) | interface DribbbleIconProps extends HTMLAttributes<HTMLDivElement> {
constant CIRCLE_VARIANTS (line 19) | const CIRCLE_VARIANTS: Variants = {
constant PATH_VARIANTS (line 41) | const PATH_VARIANTS: Variants = {
FILE: icons/droplet.tsx
type DropletIconHandle (line 9) | interface DropletIconHandle {
type DropletIconProps (line 14) | interface DropletIconProps extends HTMLAttributes<HTMLDivElement> {
FILE: icons/drum.tsx
type DrumIconHandle (line 10) | interface DrumIconHandle {
type DrumIconProps (line 15) | interface DrumIconProps extends HTMLAttributes<HTMLDivElement> {
constant VARIANTS (line 19) | const VARIANTS: Variants = {
FILE: icons/earth.tsx
type EarthIconHandle (line 10) | interface EarthIconHandle {
type EarthIconProps (line 15) | interface EarthIconProps extends HTMLAttributes<HTMLDivElement> {
constant CIRCLE_TRANSITION (line 19) | const CIRCLE_TRANSITION: Transition = {
constant CIRCLE_VARIANTS (line 25) | const CIRCLE_VARIANTS: Variants = {
FILE: icons/euro.tsx
type EuroIconHandle (line 10) | interface EuroIconHandle {
type EuroIconProps (line 15) | interface EuroIconProps extends HTMLAttributes<HTMLDivElement> {
constant EURO_MAIN_VARIANTS (line 19) | const EURO_MAIN_VARIANTS: Variants = {
constant EURO_SECONDARY_VARIANTS (line 38) | const EURO_SECONDARY_VARIANTS: Variants = {
FILE: icons/ev-charger.tsx
type EvChargerIconHandle (line 10) | interface EvChargerIconHandle {
type EvChargerIconProps (line 15) | interface EvChargerIconProps extends HTMLAttributes<HTMLDivElement> {
constant EV_CHARGER_VARIANT (line 19) | const EV_CHARGER_VARIANT: Variants = {
FILE: icons/expand.tsx
type ExpandIconHandle (line 10) | interface ExpandIconHandle {
type ExpandIconProps (line 15) | interface ExpandIconProps extends HTMLAttributes<HTMLDivElement> {
constant DEFAULT_TRANSITION (line 19) | const DEFAULT_TRANSITION: Transition = {
FILE: icons/eye-off.tsx
type EyeOffIconHandle (line 10) | interface EyeOffIconHandle {
type EyeOffIconProps (line 15) | interface EyeOffIconProps extends HTMLAttributes<HTMLDivElement> {
constant PATH_VARIANTS (line 19) | const PATH_VARIANTS: Variants = {
FILE: icons/eye.tsx
type EyeIconHandle (line 9) | interface EyeIconHandle {
type EyeIconProps (line 14) | interface EyeIconProps extends HTMLAttributes<HTMLDivElement> {
FILE: icons/facebook.tsx
type FacebookIconHandle (line 10) | interface FacebookIconHandle {
type FacebookIconProps (line 15) | interface FacebookIconProps extends HTMLAttributes<HTMLDivElement> {
constant FACEBOOK_VARIANTS (line 19) | const FACEBOOK_VARIANTS: Variants = {
FILE: icons/feather.tsx
type FeatherIconHandle (line 10) | interface FeatherIconHandle {
type FeatherIconProps (line 15) | interface FeatherIconProps extends HTMLAttributes<HTMLDivElement> {
constant FEATHER_VARIANTS (line 19) | const FEATHER_VARIANTS: Variants = {
FILE: icons/figma.tsx
type FigmaIconHandle (line 10) | interface FigmaIconHandle {
type FigmaIconProps (line 15) | interface FigmaIconProps extends HTMLAttributes<HTMLDivElement> {
constant VARIANTS (line 19) | const VARIANTS: Variants = {
FILE: icons/file-chart-line.tsx
type FileChartLineIconHandle (line 10) | interface FileChartLineIconHandle {
type FileChartLineIconProps (line 15) | interface FileChartLineIconProps extends HTMLAttributes<HTMLDivElement> {
constant VARIANTS (line 19) | const VARIANTS: Variants = {
FILE: icons/file-check-2.tsx
type FileCheck2IconHandle (line 10) | interface FileCheck2IconHandle {
type FileCheck2IconProps (line 15) | interface FileCheck2IconProps extends HTMLAttributes<HTMLDivElement> {
constant CHECK_VARIANTS (line 19) | const CHECK_VARIANTS: Variants = {
FILE: icons/file-check.tsx
type FileCheckIconHandle (line 10) | interface FileCheckIconHandle {
type FileCheckIconProps (line 15) | interface FileCheckIconProps extends HTMLAttributes<HTMLDivElement> {
constant CHECK_VARIANTS (line 19) | const CHECK_VARIANTS: Variants = {
FILE: icons/file-cog.tsx
type FileCogIconHandle (line 10) | interface FileCogIconHandle {
constant G_VARIANTS (line 15) | const G_VARIANTS: Variants = {
FILE: icons/file-pen-line.tsx
type FilePenLineIconHandle (line 10) | interface FilePenLineIconHandle {
type FilePenLineIconProps (line 15) | interface FilePenLineIconProps extends HTMLAttributes<HTMLDivElement> {
constant PEN_VARIANTS (line 19) | const PEN_VARIANTS: Variants = {
FILE: icons/file-stack.tsx
type FileStackIconHandle (line 9) | interface FileStackIconHandle {
type FileStackIconProps (line 14) | interface FileStackIconProps extends HTMLAttributes<HTMLDivElement> {
FILE: icons/file-text.tsx
type FileTextIconHandle (line 10) | interface FileTextIconHandle {
type FileTextIconProps (line 15) | interface FileTextIconProps extends HTMLAttributes<HTMLDivElement> {
constant FILE_TEXT (line 19) | const FILE_TEXT = forwardRef<FileTextIconHandle, FileTextIconProps>(
FILE: icons/fingerprint.tsx
type FingerprintIconHandle (line 10) | interface FingerprintIconHandle {
type FingerprintIconProps (line 15) | interface FingerprintIconProps extends HTMLAttributes<HTMLDivElement> {
constant PATH_VARIANTS (line 19) | const PATH_VARIANTS: Variants = {
FILE: icons/fish-symbol.tsx
type FishSymbolIconHandle (line 10) | interface FishSymbolIconHandle {
type FishSymbolIconProps (line 15) | interface FishSymbolIconProps extends HTMLAttributes<HTMLDivElement> {
constant VARIANTS (line 19) | const VARIANTS: Variants = {
FILE: icons/flame.tsx
type FlameIconHandle (line 10) | interface FlameIconHandle {
type FlameIconProps (line 15) | interface FlameIconProps extends HTMLAttributes<HTMLDivElement> {
constant PATH_VARIANTS (line 19) | const PATH_VARIANTS: Variants = {
FILE: icons/flask.tsx
type FlaskIconHandle (line 9) | interface FlaskIconHandle {
type FlaskIconProps (line 14) | interface FlaskIconProps extends HTMLAttributes<HTMLDivElement> {
FILE: icons/folder-archive.tsx
type FolderArchiveIconHandle (line 10) | interface FolderArchiveIconHandle {
type FolderArchiveIconProps (line 15) | interface FolderArchiveIconProps extends HTMLAttributes<HTMLDivElement> {
constant BLINK_VARIANTS (line 19) | const BLINK_VARIANTS: Variants = {
FILE: icons/folder-check.tsx
type FolderCheckIconHandle (line 10) | interface FolderCheckIconHandle {
type FolderCheckIconProps (line 15) | interface FolderCheckIconProps extends HTMLAttributes<HTMLDivElement> {
constant CHECK_VARIANTS (line 19) | const CHECK_VARIANTS: Variants = {
FILE: icons/folder-clock.tsx
type FolderClockIconHandle (line 10) | interface FolderClockIconHandle {
type FolderClockIconProps (line 15) | interface FolderClockIconProps extends HTMLAttributes<HTMLDivElement> {
constant HAND_TRANSITION (line 19) | const HAND_TRANSITION: Transition = {
constant HAND_VARIANTS (line 24) | const HAND_VARIANTS: Variants = {
constant MINUTE_HAND_TRANSITION (line 37) | const MINUTE_HAND_TRANSITION: Transition = {
constant MINUTE_HAND_VARIANTS (line 42) | const MINUTE_HAND_VARIANTS: Variants = {
FILE: icons/folder-code.tsx
type FolderCodeIconHandle (line 10) | interface FolderCodeIconHandle {
type FolderCodeIconProps (line 15) | interface FolderCodeIconProps extends HTMLAttributes<HTMLDivElement> {
constant CODE_VARIANTS (line 19) | const CODE_VARIANTS: Variants = {
FILE: icons/folder-cog.tsx
type FolderCogIconHandle (line 10) | interface FolderCogIconHandle {
type FolderCogIconProps (line 15) | interface FolderCogIconProps extends HTMLAttributes<HTMLDivElement> {
constant G_VARIANTS (line 19) | const G_VARIANTS: Variants = {
FILE: icons/folder-dot.tsx
type FolderDotIconHandle (line 10) | interface FolderDotIconHandle {
type FolderDotIconProps (line 15) | interface FolderDotIconProps extends HTMLAttributes<HTMLDivElement> {
constant DOT_VARIANTS (line 19) | const DOT_VARIANTS: Variants = {
FILE: icons/folder-down.tsx
type FolderDownIconHandle (line 10) | interface FolderDownIconHandle {
type FolderDownIconProps (line 15) | interface FolderDownIconProps extends HTMLAttributes<HTMLDivElement> {
constant ARROW_VARIANTS (line 19) | const ARROW_VARIANTS: Variants = {
constant ARROW_TRANSITION (line 24) | const ARROW_TRANSITION: Transition = {
FILE: icons/folder-git-2.tsx
type FolderGit2IconHandle (line 9) | interface FolderGit2IconHandle {
type FolderGit2IconProps (line 14) | interface FolderGit2IconProps extends HTMLAttributes<HTMLDivElement> {
constant DURATION (line 18) | const DURATION = 0.3;
FILE: icons/folder-git.tsx
type FolderGitIconHandle (line 10) | interface FolderGitIconHandle {
type FolderGitIconProps (line 15) | interface FolderGitIconProps extends HTMLAttributes<HTMLDivElement> {
constant COMMIT_VARIANTS (line 19) | const COMMIT_VARIANTS: Variants = {
FILE: icons/folder-heart.tsx
type FolderHeartIconHandle (line 10) | interface FolderHeartIconHandle {
type FolderHeartIconProps (line 15) | interface FolderHeartIconProps extends HTMLAttributes<HTMLDivElement> {
constant HEART_VARIANTS (line 19) | const HEART_VARIANTS: Variants = {
FILE: icons/folder-input.tsx
type FolderInputIconHandle (line 10) | interface FolderInputIconHandle {
type FolderInputIconProps (line 15) | interface FolderInputIconProps extends HTMLAttributes<HTMLDivElement> {
constant ARROW_VARIANTS (line 19) | const ARROW_VARIANTS: Variants = {
constant ARROW_TRANSITION (line 24) | const ARROW_TRANSITION: Transition = {
FILE: icons/folder-kanban.tsx
type FolderKanbanIconHandle (line 10) | interface FolderKanbanIconHandle {
type FolderKanbanIconProps (line 15) | interface FolderKanbanIconProps extends HTMLAttributes<HTMLDivElement> {
constant COLUMNS_VARIANTS (line 19) | const COLUMNS_VARIANTS: Variants = {
constant COLUMN_VARIANTS (line 27) | const COLUMN_VARIANTS: Variants = {
FILE: icons/folder-key.tsx
type FolderKeyIconHandle (line 10) | interface FolderKeyIconHandle {
type FolderKeyIconProps (line 15) | interface FolderKeyIconProps extends HTMLAttributes<HTMLDivElement> {
constant KEY_VARIANTS (line 19) | const KEY_VARIANTS: Variants = {
FILE: icons/folder-lock.tsx
type FolderLockIconHandle (line 10) | interface FolderLockIconHandle {
type FolderLockIconProps (line 15) | interface FolderLockIconProps extends HTMLAttributes<HTMLDivElement> {
constant LOCK_VARIANTS (line 19) | const LOCK_VARIANTS: Variants = {
FILE: icons/folder-minus.tsx
type FolderMinusIconHandle (line 10) | interface FolderMinusIconHandle {
type FolderMinusIconProps (line 15) | interface FolderMinusIconProps extends HTMLAttributes<HTMLDivElement> {
constant PATH_VARIANTS (line 19) | const PATH_VARIANTS: Variants = {
FILE: icons/folder-open.tsx
type FolderOpenIconHandle (line 10) | interface FolderOpenIconHandle {
type FolderOpenIconProps (line 15) | interface FolderOpenIconProps extends HTMLAttributes<HTMLDivElement> {
constant VARIANTS (line 19) | const VARIANTS: Variants = {
FILE: icons/folder-output.tsx
type FolderOutputIconHandle (line 10) | interface FolderOutputIconHandle {
type FolderOutputIconProps (line 15) | interface FolderOutputIconProps extends HTMLAttributes<HTMLDivElement> {
constant ARROW_VARIANTS (line 19) | const ARROW_VARIANTS: Variants = {
constant ARROW_TRANSITION (line 24) | const ARROW_TRANSITION: Transition = {
FILE: icons/folder-plus.tsx
type FolderPlusIconHandle (line 10) | interface FolderPlusIconHandle {
type FolderPlusIconProps (line 15) | interface FolderPlusIconProps extends HTMLAttributes<HTMLDivElement> {
constant PATH_VARIANTS (line 19) | const PATH_VARIANTS: Variants = {
FILE: icons/folder-root.tsx
type FolderRootIconHandle (line 10) | interface FolderRootIconHandle {
type FolderRootIconProps (line 15) | interface FolderRootIconProps extends HTMLAttributes<HTMLDivElement> {
constant ROOT_VARIANTS (line 19) | const ROOT_VARIANTS: Variants = {
FILE: icons/folder-sync.tsx
type FolderSyncIconHandle (line 10) | interface FolderSyncIconHandle {
type FolderSyncIconProps (line 15) | interface FolderSyncIconProps extends HTMLAttributes<HTMLDivElement> {
constant SYNC_VARIANTS (line 19) | const SYNC_VARIANTS: Variants = {
constant SYNC_TRANSITION (line 24) | const SYNC_TRANSITION: Transition = {
FILE: icons/folder-tree.tsx
type FolderTreeIconHandle (line 10) | interface FolderTreeIconHandle {
type FolderTreeIconProps (line 15) | interface FolderTreeIconProps extends HTMLAttributes<HTMLDivElement> {
constant DURATION (line 19) | const DURATION = 0.35;
constant BRANCH_VARIANTS (line 21) | const BRANCH_VARIANTS: Variants = {
constant PANEL_VARIANTS (line 30) | const PANEL_VARIANTS: Variants = {
FILE: icons/folder-up.tsx
type FolderUpIconHandle (line 10) | interface FolderUpIconHandle {
type FolderUpIconProps (line 15) | interface FolderUpIconProps extends HTMLAttributes<HTMLDivElement> {
constant ARROW_VARIANTS (line 19) | const ARROW_VARIANTS: Variants = {
constant ARROW_TRANSITION (line 24) | const ARROW_TRANSITION: Transition = {
FILE: icons/folder-x.tsx
type FolderXIconHandle (line 10) | interface FolderXIconHandle {
type FolderXIconProps (line 15) | interface FolderXIconProps extends HTMLAttributes<HTMLDivElement> {
constant PATH_VARIANTS (line 19) | const PATH_VARIANTS: Variants = {
FILE: icons/folders.tsx
type FoldersIconHandle (line 9) | interface FoldersIconHandle {
type FoldersIconProps (line 14) | interface FoldersIconProps extends HTMLAttributes<HTMLDivElement> {
FILE: icons/frame.tsx
type FrameIconHandle (line 10) | interface FrameIconHandle {
type FrameIconProps (line 15) | interface FrameIconProps extends HTMLAttributes<HTMLDivElement> {
constant DEFAULT_TRANSITION (line 19) | const DEFAULT_TRANSITION: Transition = {
FILE: icons/frown.tsx
type FrownIconHandle (line 10) | interface FrownIconHandle {
type FrownIconProps (line 15) | interface FrownIconProps extends HTMLAttributes<HTMLDivElement> {
FILE: icons/gallery-horizontal-end.tsx
type GalleryHorizontalEndIconHandle (line 10) | interface GalleryHorizontalEndIconHandle {
type GalleryHorizontalEndIconProps (line 15) | interface GalleryHorizontalEndIconProps extends HTMLAttributes<HTMLDivEl...
constant PATH_VARIANTS (line 19) | const PATH_VARIANTS: Variants = {
FILE: icons/gallery-thumbnails.tsx
type GalleryThumbnailsIconHandle (line 10) | interface GalleryThumbnailsIconHandle {
type GalleryThumbnailsIconProps (line 15) | interface GalleryThumbnailsIconProps extends HTMLAttributes<HTMLDivEleme...
constant PATH_VARIANTS (line 19) | const PATH_VARIANTS: Variants = {
FILE: icons/gallery-vertical-end.tsx
type GalleryVerticalEndIconHandle (line 10) | interface GalleryVerticalEndIconHandle {
type GalleryVerticalEndIconProps (line 15) | interface GalleryVerticalEndIconProps extends HTMLAttributes<HTMLDivElem...
constant PATH_VARIANTS (line 19) | const PATH_VARIANTS: Variants = {
FILE: icons/gauge.tsx
type GaugeIconHandle (line 10) | interface GaugeIconHandle {
type GaugeIconProps (line 15) | interface GaugeIconProps extends HTMLAttributes<HTMLDivElement> {
constant DEFAULT_TRANSITION (line 19) | const DEFAULT_TRANSITION: Transition = {
FILE: icons/gavel.tsx
type GavelIconHandle (line 10) | interface GavelIconHandle {
type GavelIconProps (line 15) | interface GavelIconProps extends HTMLAttributes<HTMLDivElement> {
constant GAVEL_VARIANTS (line 19) | const GAVEL_VARIANTS: Variants = {
FILE: icons/georgian-lari.tsx
type GeorgianLariIconHandle (line 10) | interface GeorgianLariIconHandle {
type GeorgianLariIconProps (line 15) | interface GeorgianLariIconProps extends HTMLAttributes<HTMLDivElement> {
constant LARI_MAIN_VARIANTS (line 19) | const LARI_MAIN_VARIANTS: Variants = {
constant LARI_SECONDARY_VARIANTS (line 38) | const LARI_SECONDARY_VARIANTS: Variants = {
FILE: icons/git-branch.tsx
type GitBranchIconHandle (line 9) | interface GitBranchIconHandle {
type GitBranchIconProps (line 14) | interface GitBranchIconProps extends HTMLAttributes<HTMLDivElement> {
constant DURATION (line 18) | const DURATION = 0.3;
FILE: icons/git-commit-horizontal.tsx
type GitCommitHorizontalIconHandle (line 10) | interface GitCommitHorizontalIconHandle {
type GitCommitHorizontalIconProps (line 15) | interface GitCommitHorizontalIconProps extends HTMLAttributes<HTMLDivEle...
constant VARIANTS (line 19) | const VARIANTS: Variants = {
FILE: icons/git-commit-vertical.tsx
type GitCommitVerticalIconHandle (line 10) | interface GitCommitVerticalIconHandle {
type GitCommitVerticalIconProps (line 15) | interface GitCommitVerticalIconProps extends HTMLAttributes<HTMLDivEleme...
constant VARIANTS (line 19) | const VARIANTS: Variants = {
FILE: icons/git-compare-arrows.tsx
type GitCompareArrowsIconHandle (line 9) | interface GitCompareArrowsIconHandle {
type GitCompareArrowsIconProps (line 14) | interface GitCompareArrowsIconProps extends HTMLAttributes<HTMLDivElemen...
constant DURATION (line 18) | const DURATION = 0.3;
FILE: icons/git-compare.tsx
type GitCompareIconHandle (line 9) | interface GitCompareIconHandle {
type GitCompareIconProps (line 14) | interface GitCompareIconProps extends HTMLAttributes<HTMLDivElement> {
constant DURATION (line 18) | const DURATION = 0.3;
FILE: icons/git-fork.tsx
type GitForkIconHandle (line 9) | interface GitForkIconHandle {
type GitForkIconProps (line 14) | interface GitForkIconProps extends HTMLAttributes<HTMLDivElement> {
constant DURATION (line 18) | const DURATION = 0.3;
FILE: icons/git-graph.tsx
type GitGraphIconHandle (line 9) | interface GitGraphIconHandle {
type GitGraphIconProps (line 14) | interface GitGraphIconProps extends HTMLAttributes<HTMLDivElement> {
constant DURATION (line 18) | const DURATION = 0.3;
FILE: icons/git-merge.tsx
type GitMergeIconHandle (line 9) | interface GitMergeIconHandle {
type GitMergeIconProps (line 14) | interface GitMergeIconProps extends HTMLAttributes<HTMLDivElement> {
constant DURATION (line 18) | const DURATION = 0.3;
FILE: icons/git-pull-request-closed.tsx
type GitPullRequestClosedIconHandle (line 9) | interface GitPullRequestClosedIconHandle {
type GitPullRequestClosedIconProps (line 14) | interface GitPullRequestClosedIconProps extends HTMLAttributes<HTMLDivEl...
constant DURATION (line 18) | const DURATION = 0.3;
FILE: icons/git-pull-request-create.tsx
type GitPullRequestCreateIconHandle (line 9) | interface GitPullRequestCreateIconHandle {
type GitPullRequestCreateIconProps (line 14) | interface GitPullRequestCreateIconProps extends HTMLAttributes<HTMLDivEl...
constant DURATION (line 18) | const DURATION = 0.3;
FILE: icons/git-pull-request.tsx
type GitPullRequestIconHandle (line 9) | interface GitPullRequestIconHandle {
type GitPullRequestIconProps (line 14) | interface GitPullRequestIconProps extends HTMLAttributes<HTMLDivElement> {
constant DURATION (line 18) | const DURATION = 0.3;
FILE: icons/github.tsx
type GithubIconHandle (line 10) | interface GithubIconHandle {
type GithubIconProps (line 15) | interface GithubIconProps extends HTMLAttributes<HTMLDivElement> {
constant BODY_VARIANTS (line 19) | const BODY_VARIANTS: Variants = {
constant TAIL_VARIANTS (line 38) | const TAIL_VARIANTS: Variants = {
FILE: icons/gitlab.tsx
type GitlabIconHandle (line 9) | interface GitlabIconHandle {
type GitlabIconProps (line 14) | interface GitlabIconProps extends HTMLAttributes<HTMLDivElement> {
constant DURATION (line 18) | const DURATION = 0.7;
FILE: icons/graduation-cap.tsx
type GraduationCapIconHandle (line 10) | interface GraduationCapIconHandle {
type GraduationCapIconProps (line 15) | interface GraduationCapIconProps extends HTMLAttributes<HTMLDivElement> {
constant CAP_VARIANTS (line 19) | const CAP_VARIANTS: Variants = {
constant TASSEL_VARIANTS (line 33) | const TASSEL_VARIANTS: Variants = {
FILE: icons/grip-horizontal.tsx
type GripHorizontalIconHandle (line 10) | interface GripHorizontalIconHandle {
type GripHorizontalIconProps (line 15) | interface GripHorizontalIconProps extends HTMLAttributes<HTMLDivElement> {
constant CIRCLES (line 19) | const CIRCLES = [
constant VARIANTS (line 28) | const VARIANTS: Variants = {
FILE: icons/grip-vertical.tsx
type GripVerticalIconHandle (line 10) | interface GripVerticalIconHandle {
type GripVerticalIconProps (line 15) | interface GripVerticalIconProps extends HTMLAttributes<HTMLDivElement> {
constant CIRCLES (line 19) | const CIRCLES = [
constant ROWS (line 28) | const ROWS = 3;
constant VARIANTS (line 30) | const VARIANTS: Variants = {
FILE: icons/grip.tsx
type GripIconHandle (line 10) | interface GripIconHandle {
type GripProps (line 15) | interface GripProps extends HTMLAttributes<HTMLDivElement> {
constant CIRCLES (line 19) | const CIRCLES = [
constant VARIANTS (line 31) | const VARIANTS: Variants = {
FILE: icons/hammer.tsx
type HammerIconHandle (line 10) | interface HammerIconHandle {
type HammerIconProps (line 15) | interface HammerIconProps extends HTMLAttributes<HTMLDivElement> {
constant HAMMER_VARIANTS (line 19) | const HAMMER_VARIANTS: Variants = {
FILE: icons/hand-coins.tsx
type HandCoinsIconHandle (line 10) | interface HandCoinsIconHandle {
type HandCoinsIconProps (line 15) | interface HandCoinsIconProps extends HTMLAttributes<HTMLDivElement> {
constant CIRCLE_VARIANTS (line 19) | const CIRCLE_VARIANTS: Variants = {
constant SECOND_CIRCLE_VARIANTS (line 44) | const SECOND_CIRCLE_VARIANTS: Variants = {
FILE: icons/hand-fist.tsx
type HandFistIconHandle (line 9) | interface HandFistIconHandle {
type HandFistIconProps (line 14) | interface HandFistIconProps extends HTMLAttributes<HTMLDivElement> {
FILE: icons/hand-grab.tsx
type HandGrabIconHandle (line 9) | interface HandGrabIconHandle {
type HandGrabIconProps (line 14) | interface HandGrabIconProps extends HTMLAttributes<HTMLDivElement> {
FILE: icons/hand-heart.tsx
type HandHeartIconHandle (line 10) | interface HandHeartIconHandle {
type HandHeartIconProps (line 15) | interface HandHeartIconProps extends HTMLAttributes<HTMLDivElement> {
constant HEART_VARIANTS (line 18) | const HEART_VARIANTS: Variants = {
FILE: icons/hand-helping.tsx
type HandHelpingIconHandle (line 9) | interface HandHelpingIconHandle {
type HandHelpingIconProps (line 14) | interface HandHelpingIconProps extends HTMLAttributes<HTMLDivElement> {
FILE: icons/hand-metal.tsx
type HandMetalIconHandle (line 9) | interface HandMetalIconHandle {
type HandMetalIconProps (line 14) | interface HandMetalIconProps extends HTMLAttributes<HTMLDivElement> {
FILE: icons/hand.tsx
type HandIconHandle (line 9) | interface HandIconHandle {
type HandIconProps (line 14) | interface HandIconProps extends HTMLAttributes<HTMLDivElement> {
FILE: icons/hard-drive-download.tsx
type HardDriveDownloadIconHandle (line 10) | interface HardDriveDownloadIconHandle {
type HardDriveDownloadIconProps (line 15) | interface HardDriveDownloadIconProps extends HTMLAttributes<HTMLDivEleme...
constant ARROW_VARIANTS (line 19) | const ARROW_VARIANTS: Variants = {
FILE: icons/hard-drive-upload.tsx
type HardDriveUploadIconHandle (line 10) | interface HardDriveUploadIconHandle {
type HardDriveUploadIconProps (line 15) | interface HardDriveUploadIconProps extends HTMLAttributes<HTMLDivElement> {
constant ARROW_VARIANTS (line 19) | const ARROW_VARIANTS: Variants = {
FILE: icons/heart-handshake.tsx
type HeartHandshakeIconHandle (line 9) | interface HeartHandshakeIconHandle {
type HeartHandshakeIconProps (line 14) | interface HeartHandshakeIconProps extends HTMLAttributes<HTMLDivElement> {
FILE: icons/heart-pulse.tsx
type HeartPulseIconHandle (line 10) | interface HeartPulseIconHandle {
type HeartPulseIconProps (line 15) | interface HeartPulseIconProps extends HTMLAttributes<HTMLDivElement> {
constant HEART_DRAW_VARIANTS (line 19) | const HEART_DRAW_VARIANTS: Variants = {
constant HEART_PULSE_VARIANTS (line 25) | const HEART_PULSE_VARIANTS: Variants = {
constant LINE_VARIANTS (line 30) | const LINE_VARIANTS: Variants = {
FILE: icons/heart.tsx
type HeartIconHandle (line 9) | interface HeartIconHandle {
type HeartIconProps (line 14) | interface HeartIconProps extends HTMLAttributes<HTMLDivElement> {
FILE: icons/history.tsx
type HistoryIconHandle (line 10) | interface HistoryIconHandle {
type HistoryIconProps (line 15) | interface HistoryIconProps extends HTMLAttributes<HTMLDivElement> {
constant ARROW_TRANSITION (line 19) | const ARROW_TRANSITION: Transition = {
constant ARROW_VARIANTS (line 25) | const ARROW_VARIANTS: Variants = {
constant HAND_TRANSITION (line 34) | const HAND_TRANSITION: Transition = {
constant HAND_VARIANTS (line 39) | const HAND_VARIANTS: Variants = {
constant MINUTE_HAND_TRANSITION (line 52) | const MINUTE_HAND_TRANSITION: Transition = {
constant MINUTE_HAND_VARIANTS (line 57) | const MINUTE_HAND_VARIANTS: Variants = {
FILE: icons/home.tsx
type HomeIconHandle (line 10) | interface HomeIconHandle {
type HomeIconProps (line 15) | interface HomeIconProps extends HTMLAttributes<HTMLDivElement> {
constant DEFAULT_TRANSITION (line 19) | const DEFAULT_TRANSITION: Transition = {
constant PATH_VARIANTS (line 24) | const PATH_VARIANTS: Variants = {
FILE: icons/hourglass.tsx
type HourglassIconHandle (line 9) | interface HourglassIconHandle {
type HourglassIconProps (line 14) | interface HourglassIconProps extends HTMLAttributes<HTMLDivElement> {
FILE: icons/id-card.tsx
type IdCardIconHandle (line 10) | interface IdCardIconHandle {
type IdCardIconProps (line 15) | interface IdCardIconProps extends HTMLAttributes<HTMLDivElement> {
constant VARIANTS (line 19) | const VARIANTS: Variants = {
FILE: icons/index.ts
type IconListItem (line 401) | type IconListItem = {
constant ICON_LIST (line 407) | const ICON_LIST: IconListItem[] = [
FILE: icons/indian-rupee.tsx
type IndianRupeeIconHandle (line 10) | interface IndianRupeeIconHandle {
type IndianRupeeIconProps (line 15) | interface IndianRupeeIconProps extends HTMLAttributes<HTMLDivElement> {
constant INDIAN_RUPEE_MAIN_VARIANTS (line 19) | const INDIAN_RUPEE_MAIN_VARIANTS: Variants = {
constant INDIAN_RUPEE_SECONDARY_VARIANTS (line 38) | const INDIAN_RUPEE_SECONDARY_VARIANTS: Variants = {
FILE: icons/instagram.tsx
type InstagramIconHandle (line 10) | interface InstagramIconHandle {
type InstagramIconProps (line 15) | interface InstagramIconProps extends HTMLAttributes<HTMLDivElement> {
constant RECT_VARIANTS (line 19) | const RECT_VARIANTS: Variants = {
constant PATH_VARIANTS (line 41) | const PATH_VARIANTS: Variants = {
constant LINE_VARIANTS (line 63) | const LINE_VARIANTS: Variants = {
FILE: icons/italic.tsx
type ItalicIconHandle (line 10) | interface ItalicIconHandle {
type ItalicIconProps (line 15) | interface ItalicIconProps extends HTMLAttributes<HTMLDivElement> {
constant LINE_VARIANTS (line 19) | const LINE_VARIANTS: Variants = {
FILE: icons/japanese-yen.tsx
type JapaneseYenIconHandle (line 10) | interface JapaneseYenIconHandle {
type JapaneseYenIconProps (line 15) | interface JapaneseYenIconProps extends HTMLAttributes<HTMLDivElement> {
constant JAPANESE_YEN_MAIN_VARIANTS (line 19) | const JAPANESE_YEN_MAIN_VARIANTS: Variants = {
constant JAPANESE_YEN_SECONDARY_VARIANTS (line 38) | const JAPANESE_YEN_SECONDARY_VARIANTS: Variants = {
FILE: icons/key-circle.tsx
type KeyIconHandle (line 9) | interface KeyIconHandle {
type KeyIconProps (line 14) | interface KeyIconProps extends HTMLAttributes<HTMLDivElement> {
FILE: icons/key-square.tsx
type KeyIconHandle (line 9) | interface KeyIconHandle {
type KeyIconProps (line 14) | interface KeyIconProps extends HTMLAttributes<HTMLDivElement> {
FILE: icons/key.tsx
type KeyIconHandle (line 9) | interface KeyIconHandle {
type KeyIconProps (line 14) | interface KeyIconProps extends HTMLAttributes<HTMLDivElement> {
FILE: icons/keyboard.tsx
type KeyboardIconHandle (line 16) | interface KeyboardIconHandle {
type KeyboardIconProps (line 21) | interface KeyboardIconProps extends HTMLAttributes<HTMLDivElement> {
constant KEYBOARD_PATHS (line 25) | const KEYBOARD_PATHS = [
FILE: icons/languages.tsx
type LanguagesIconHandle (line 10) | interface LanguagesIconHandle {
type LanguagesIconProps (line 15) | interface LanguagesIconProps extends HTMLAttributes<HTMLDivElement> {
constant PATH_VARIANTS (line 19) | const PATH_VARIANTS: Variants = {
constant SVG_VARIANTS (line 37) | const SVG_VARIANTS: Variants = {
FILE: icons/laptop-minimal-check.tsx
type LaptopMinimalCheckIconHandle (line 10) | interface LaptopMinimalCheckIconHandle {
type LaptopMinimalCheckIconProps (line 15) | interface LaptopMinimalCheckIconProps extends HTMLAttributes<HTMLDivElem...
constant CHECK_VARIANTS (line 19) | const CHECK_VARIANTS: Variants = {
FILE: icons/laugh.tsx
type LaughIconHandle (line 10) | interface LaughIconHandle {
type LaughIconProps (line 15) | interface LaughIconProps extends HTMLAttributes<HTMLDivElement> {
FILE: icons/layers.tsx
type LayersIconHandle (line 10) | interface LayersIconHandle {
type LayersIconProps (line 15) | interface LayersIconProps extends HTMLAttributes<HTMLDivElement> {
constant DEFAULT_TRANSITION (line 19) | const DEFAULT_TRANSITION: Transition = {
FILE: icons/layout-panel-top.tsx
type LayoutPanelTopIconHandle (line 9) | interface LayoutPanelTopIconHandle {
type LayoutPanelTopIconProps (line 14) | interface LayoutPanelTopIconProps extends HTMLAttributes<HTMLDivElement> {
FILE: icons/link.tsx
type LinkIconHandle (line 10) | interface LinkIconHandle {
type LinkIconProps (line 15) | interface LinkIconProps extends HTMLAttributes<HTMLDivElement> {
constant PATH_VARIANTS (line 19) | const PATH_VARIANTS: Variants = {
FILE: icons/linkedin.tsx
type LinkedinIconHandle (line 10) | interface LinkedinIconHandle {
type LinkedinIconProps (line 15) | interface LinkedinIconProps extends HTMLAttributes<HTMLDivElement> {
constant PATH_VARIANTS (line 19) | const PATH_VARIANTS: Variants = {
constant RECT_VARIANTS (line 41) | const RECT_VARIANTS: Variants = {
constant CIRCLE_VARIANTS (line 63) | const CIRCLE_VARIANTS: Variants = {
FILE: icons/loader-pinwheel.tsx
type LoaderPinwheelIconHandle (line 10) | interface LoaderPinwheelIconHandle {
type LoaderPinwheelIconProps (line 15) | interface LoaderPinwheelIconProps extends HTMLAttributes<HTMLDivElement> {
constant G_VARIANTS (line 19) | const G_VARIANTS: Variants = {
constant DEFAULT_TRANSITION (line 31) | const DEFAULT_TRANSITION: Transition = {
FILE: icons/lock-keyhole-open.tsx
type LockKeyholeOpenIconHandle (line 9) | interface LockKeyholeOpenIconHandle {
type LockKeyholeOpenIconProps (line 14) | interface LockKeyholeOpenIconProps extends HTMLAttributes<HTMLDivElement> {
FILE: icons/lock-keyhole.tsx
type LockKeyholeIconHandle (line 9) | interface LockKeyholeIconHandle {
type LockKeyholeIconProps (line 14) | interface LockKeyholeIconProps extends HTMLAttributes<HTMLDivElement> {
FILE: icons/lock-open.tsx
type LockOpenIconHandle (line 9) | interface LockOpenIconHandle {
type LockOpenIconProps (line 14) | interface LockOpenIconProps extends HTMLAttributes<HTMLDivElement> {
FILE: icons/lock.tsx
type LockIconHandle (line 9) | interface LockIconHandle {
type LockIconProps (line 14) | interface LockIconProps extends HTMLAttributes<HTMLDivElement> {
FILE: icons/logout.tsx
type LogoutIconHandle (line 10) | interface LogoutIconHandle {
type LogoutIconProps (line 15) | interface LogoutIconProps extends HTMLAttributes<HTMLDivElement> {
constant PATH_VARIANTS (line 19) | const PATH_VARIANTS: Variants = {
FILE: icons/mail-check.tsx
type MailCheckIconHandle (line 10) | interface MailCheckIconHandle {
type MailCheckIconProps (line 15) | interface MailCheckIconProps extends HTMLAttributes<HTMLDivElement> {
constant CHECK_VARIANTS (line 19) | const CHECK_VARIANTS: Variants = {
FILE: icons/mailbox.tsx
type MailboxIconHandle (line 9) | interface MailboxIconHandle {
type MailboxIconProps (line 14) | interface MailboxIconProps extends HTMLAttributes<HTMLDivElement> {
constant FLAG_VARIANTS (line 18) | const FLAG_VARIANTS: Variants = {
FILE: icons/map-pin-check-inside.tsx
type MapPinCheckInsideIconHandle (line 10) | interface MapPinCheckInsideIconHandle {
type MapPinCheckInsideIconProps (line 15) | interface MapPinCheckInsideIconProps extends HTMLAttributes<HTMLDivEleme...
constant SVG_VARIANTS (line 19) | const SVG_VARIANTS: Variants = {
constant CHECK_VARIANTS (line 32) | const CHECK_VARIANTS: Variants = {
FILE: icons/map-pin-check.tsx
type MapPinCheckIconHandle (line 10) | interface MapPinCheckIconHandle {
type MapPinCheckIconProps (line 15) | interface MapPinCheckIconProps extends HTMLAttributes<HTMLDivElement> {
constant SVG_VARIANTS (line 19) | const SVG_VARIANTS: Variants = {
constant CHECK_VARIANTS (line 32) | const CHECK_VARIANTS: Variants = {
FILE: icons/map-pin-house.tsx
type MapPinHouseIconHandle (line 10) | interface MapPinHouseIconHandle {
type MapPinHouseIconProps (line 15) | interface MapPinHouseIconProps extends HTMLAttributes<HTMLDivElement> {
constant SVG_VARIANTS (line 19) | const SVG_VARIANTS: Variants = {
constant HOUSE_VARIANTS (line 32) | const HOUSE_VARIANTS: Variants = {
FILE: icons/map-pin-minus-inside.tsx
type MapPinMinusInsideIconHandle (line 10) | interface MapPinMinusInsideIconHandle {
type MapPinMinusInsideIconProps (line 15) | interface MapPinMinusInsideIconProps extends HTMLAttributes<HTMLDivEleme...
constant SVG_VARIANTS (line 19) | const SVG_VARIANTS: Variants = {
constant MINUS_VARIANTS (line 32) | const MINUS_VARIANTS: Variants = {
FILE: icons/map-pin-minus.tsx
type MapPinMinusIconHandle (line 10) | interface MapPinMinusIconHandle {
type MapPinMinusIconProps (line 15) | interface MapPinMinusIconProps extends HTMLAttributes<HTMLDivElement> {
constant SVG_VARIANTS (line 19) | const SVG_VARIANTS: Variants = {
constant MINUS_VARIANTS (line 32) | const MINUS_VARIANTS: Variants = {
FILE: icons/map-pin-off.tsx
type MapPinOffIconHandle (line 10) | interface MapPinOffIconHandle {
type MapPinOffIconProps (line 15) | interface MapPinOffIconProps extends HTMLAttributes<HTMLDivElement> {
constant SVG_VARIANTS (line 19) | const SVG_VARIANTS: Variants = {
constant BAR_VARIANTS (line 32) | const BAR_VARIANTS: Variants = {
FILE: icons/map-pin-plus-inside.tsx
type MapPinPlusInsideIconHandle (line 10) | interface MapPinPlusInsideIconHandle {
type MapPinPlusInsideIconProps (line 15) | interface MapPinPlusInsideIconProps extends HTMLAttributes<HTMLDivElemen...
constant SVG_VARIANTS (line 19) | const SVG_VARIANTS: Variants = {
constant VERTICAL_BAR_VARIANTS (line 32) | const VERTICAL_BAR_VARIANTS: Variants = {
constant HORIZONTAL_BAR_VARIANTS (line 47) | const HORIZONTAL_BAR_VARIANTS: Variants = {
FILE: icons/map-pin-plus.tsx
type MapPinPlusIconHandle (line 10) | interface MapPinPlusIconHandle {
type MapPinPlusIconProps (line 15) | interface MapPinPlusIconProps extends HTMLAttributes<HTMLDivElement> {
constant SVG_VARIANTS (line 19) | const SVG_VARIANTS: Variants = {
constant VERTICAL_BAR_VARIANTS (line 32) | const VERTICAL_BAR_VARIANTS: Variants = {
constant HORIZONTAL_BAR_VARIANTS (line 47) | const HORIZONTAL_BAR_VARIANTS: Variants = {
FILE: icons/map-pin-x-inside.tsx
type MapPinXInsideIconHandle (line 10) | interface MapPinXInsideIconHandle {
type MapPinXInsideIconProps (line 15) | interface MapPinXInsideIconProps extends HTMLAttributes<HTMLDivElement> {
constant SVG_VARIANTS (line 19) | const SVG_VARIANTS: Variants = {
constant FIRST_BAR_VARIANTS (line 32) | const FIRST_BAR_VARIANTS: Variants = {
constant SECOND_BAR_VARIANTS (line 47) | const SECOND_BAR_VARIANTS: Variants = {
FILE: icons/map-pin.tsx
type MapPinIconHandle (line 10) | interface MapPinIconHandle {
type MapPinIconProps (line 15) | interface MapPinIconProps extends HTMLAttributes<HTMLDivElement> {
constant SVG_VARIANTS (line 19) | const SVG_VARIANTS: Variants = {
constant CIRCLE_VARIANTS (line 32) | const CIRCLE_VARIANTS: Variants = {
FILE: icons/maximize-2.tsx
type Maximize2IconHandle (line 10) | interface Maximize2IconHandle {
type Maximize2IconProps (line 15) | interface Maximize2IconProps extends HTMLAttributes<HTMLDivElement> {
constant DEFAULT_TRANSITION (line 19) | const DEFAULT_TRANSITION: Transition = {
FILE: icons/maximize.tsx
type MaximizeIconHandle (line 10) | interface MaximizeIconHandle {
constant DEFAULT_TRANSITION (line 15) | const DEFAULT_TRANSITION: Transition = {
type MaximizeIconProps (line 21) | interface MaximizeIconProps extends HTMLAttributes<HTMLDivElement> {
FILE: icons/meh.tsx
type MehIconHandle (line 10) | interface MehIconHandle {
type MehIconProps (line 15) | interface MehIconProps extends HTMLAttributes<HTMLDivElement> {
FILE: icons/menu.tsx
type MenuIconHandle (line 10) | interface MenuIconHandle {
type MenuIconProps (line 15) | interface MenuIconProps extends HTMLAttributes<HTMLDivElement> {
constant LINE_VARIANTS (line 19) | const LINE_VARIANTS: Variants = {
FILE: icons/message-circle-check.tsx
type MessageCircleCheckIconHandle (line 10) | interface MessageCircleCheckIconHandle {
type MessageCircleCheckIconProps (line 15) | interface MessageCircleCheckIconProps extends HTMLAttributes<HTMLDivElem...
constant CHECK_VARIANTS (line 19) | const CHECK_VARIANTS: Variants = {
FILE: icons/message-circle-dashed.tsx
type MessageCircleDashedIconHandle (line 10) | interface MessageCircleDashedIconHandle {
type MessageCircleDashedIconProps (line 15) | interface MessageCircleDashedIconProps extends HTMLAttributes<HTMLDivEle...
constant PATH_VARIANTS (line 19) | const PATH_VARIANTS: Variants = {
FILE: icons/message-circle-more.tsx
type MessageCircleMoreIconHandle (line 10) | interface MessageCircleMoreIconHandle {
type MessageCircleMoreIconProps (line 15) | interface MessageCircleMoreIconProps extends HTMLAttributes<HTMLDivEleme...
constant DOT_VARIANTS (line 19) | const DOT_VARIANTS: Variants = {
FILE: icons/message-circle-plus.tsx
type MessageCirclePlusIconHandle (line 10) | interface MessageCirclePlusIconHandle {
type MessageCirclePlusIconProps (line 15) | interface MessageCirclePlusIconProps extends HTMLAttributes<HTMLDivEleme...
constant PLUS_VARIANTS (line 19) | const PLUS_VARIANTS: Variants = {
constant PLUS_HORIZONTAL_VARIANTS (line 37) | const PLUS_HORIZONTAL_VARIANTS: Variants = {
FILE: icons/message-circle-x.tsx
type MessageCircleXIconHandle (line 10) | interface MessageCircleXIconHandle {
type MessageCircleXIconProps (line 15) | interface MessageCircleXIconProps extends HTMLAttributes<HTMLDivElement> {
constant FIRST_LINE_VARIANTS (line 19) | const FIRST_LINE_VARIANTS: Variants = {
constant SECOND_LINE_VARIANTS (line 37) | const SECOND_LINE_VARIANTS: Variants = {
FILE: icons/message-circle.tsx
type MessageCircleIconHandle (line 10) | interface MessageCircleIconHandle {
type MessageCircleIconProps (line 15) | interface MessageCircleIconProps extends HTMLAttributes<HTMLDivElement> {
constant ICON_VARIANTS (line 19) | const ICON_VARIANTS: Variants = {
FILE: icons/message-square-check.tsx
type MessageSquareCheckIconHandle (line 10) | interface MessageSquareCheckIconHandle {
type MessageSquareCheckIconProps (line 15) | interface MessageSquareCheckIconProps extends HTMLAttributes<HTMLDivElem...
constant CHECK_VARIANTS (line 19) | const CHECK_VARIANTS: Variants = {
FILE: icons/message-square-dashed.tsx
type MessageSquareDashedIconHandle (line 10) | interface MessageSquareDashedIconHandle {
type MessageSquareDashedIconProps (line 15) | interface MessageSquareDashedIconProps extends HTMLAttributes<HTMLDivEle...
constant PATH_VARIANTS (line 19) | const PATH_VARIANTS: Variants = {
FILE: icons/message-square-more.tsx
type MessageSquareMoreIconHandle (line 10) | interface MessageSquareMoreIconHandle {
type MessageSquareMoreIconProps (line 15) | interface MessageSquareMoreIconProps extends HTMLAttributes<HTMLDivEleme...
constant DOT_VARIANTS (line 19) | const DOT_VARIANTS: Variants = {
FILE: icons/message-square-plus.tsx
type MessageSquarePlusIconHandle (line 10) | interface MessageSquarePlusIconHandle {
type MessageSquarePlusIconProps (line 15) | interface MessageSquarePlusIconProps extends HTMLAttributes<HTMLDivEleme...
constant PLUS_VARIANTS (line 19) | const PLUS_VARIANTS: Variants = {
constant PLUS_HORIZONTAL_VARIANTS (line 37) | const PLUS_HORIZONTAL_VARIANTS: Variants = {
FILE: icons/message-square-x.tsx
type MessageSquareXIconHandle (line 10) | interface MessageSquareXIconHandle {
type MessageSquareXIconProps (line 15) | interface MessageSquareXIconProps extends HTMLAttributes<HTMLDivElement> {
constant FIRST_LINE_VARIANTS (line 19) | const FIRST_LINE_VARIANTS: Variants = {
constant SECOND_LINE_VARIANTS (line 37) | const SECOND_LINE_VARIANTS: Variants = {
FILE: icons/message-square.tsx
type MessageSquareIconHandle (line 10) | interface MessageSquareIconHandle {
type MessageSquareIconProps (line 15) | interface MessageSquareIconProps extends HTMLAttributes<HTMLDivElement> {
constant ICON_VARIANTS (line 19) | const ICON_VARIANTS: Variants = {
FILE: icons/mic-off.tsx
type MicOffIconHandle (line 10) | interface MicOffIconHandle {
type MicOffIconProps (line 15) | interface MicOffIconProps extends HTMLAttributes<HTMLDivElement> {
constant LINE_VARIANTS (line 19) | const LINE_VARIANTS: Variants = {
FILE: icons/mic.tsx
type MicIconHandle (line 10) | interface MicIconHandle {
type MicIconProps (line 15) | interface MicIconProps extends HTMLAttributes<HTMLDivElement> {
constant CAPSULE_VARIANTS (line 19) | const CAPSULE_VARIANTS: Variants = {
FILE: icons/minimize.tsx
type MinimizeIconHandle (line 10) | interface MinimizeIconHandle {
type MinimizeIconProps (line 15) | interface MinimizeIconProps extends HTMLAttributes<HTMLDivElement> {
constant DEFAULT_TRANSITION (line 19) | const DEFAULT_TRANSITION: Transition = {
FILE: icons/monitor-check.tsx
type MonitorCheckIconHandle (line 10) | interface MonitorCheckIconHandle {
type MonitorCheckIconProps (line 15) | interface MonitorCheckIconProps extends HTMLAttributes<HTMLDivElement> {
constant CHECK_VARIANTS (line 19) | const CHECK_VARIANTS: Variants = {
FILE: icons/moon.tsx
type MoonIconHandle (line 10) | interface MoonIconHandle {
type MoonIconProps (line 15) | interface MoonIconProps extends HTMLAttributes<HTMLDivElement> {
constant SVG_VARIANTS (line 19) | const SVG_VARIANTS: Variants = {
constant SVG_TRANSITION (line 28) | const SVG_TRANSITION: Transition = {
FILE: icons/nfc.tsx
type NfcIconHandle (line 10) | interface NfcIconHandle {
type NfcIconProps (line 15) | interface NfcIconProps extends HTMLAttributes<HTMLDivElement> {
constant PATH_VARIANTS (line 19) | const PATH_VARIANTS: Variants = {
FILE: icons/panel-left-close.tsx
type PanelLeftCloseIconHandle (line 10) | interface PanelLeftCloseIconHandle {
type PanelLeftCloseIconProps (line 15) | interface PanelLeftCloseIconProps extends HTMLAttributes<HTMLDivElement> {
constant DEFAULT_TRANSITION (line 19) | const DEFAULT_TRANSITION: Transition = {
constant PATH_VARIANTS (line 24) | const PATH_VARIANTS: Variants = {
FILE: icons/panel-left-open.tsx
type PanelLeftOpenIconHandle (line 10) | interface PanelLeftOpenIconHandle {
type PanelLeftOpenIconProps (line 15) | interface PanelLeftOpenIconProps extends HTMLAttributes<HTMLDivElement> {
constant DEFAULT_TRANSITION (line 19) | const DEFAULT_TRANSITION: Transition = {
constant PATH_VARIANTS (line 24) | const PATH_VARIANTS: Variants = {
FILE: icons/panel-right-open.tsx
type PanelRightOpenIconHandle (line 10) | interface PanelRightOpenIconHandle {
type PanelRightOpenIconProps (line 15) | interface PanelRightOpenIconProps extends HTMLAttributes<HTMLDivElement> {
constant DEFAULT_TRANSITION (line 19) | const DEFAULT_TRANSITION: Transition = {
constant PATH_VARIANTS (line 24) | const PATH_VARIANTS: Variants = {
FILE: icons/party-popper.tsx
type PartyPopperIconHandle (line 10) | interface PartyPopperIconHandle {
type PartyPopperIconProps (line 15) | interface PartyPopperIconProps extends HTMLAttributes<HTMLDivElement> {
constant LINES_VARIANTS (line 19) | const LINES_VARIANTS: Variants = {
constant DOTS_VARIANTS (line 40) | const DOTS_VARIANTS: Variants = {
constant POPPER_VARIANTS (line 53) | const POPPER_VARIANTS: Variants = {
FILE: icons/pause.tsx
type PauseIconHandle (line 10) | interface PauseIconHandle {
type PauseIconProps (line 15) | interface PauseIconProps extends HTMLAttributes<HTMLDivElement> {
constant BASE_RECT_VARIANTS (line 19) | const BASE_RECT_VARIANTS: Variants = {
constant BASE_RECT_TRANSITION (line 25) | const BASE_RECT_TRANSITION = {
constant LEFT_RECT_VARIANTS (line 34) | const LEFT_RECT_VARIANTS: Variants = {
constant RIGHT_RECT_VARIANTS (line 42) | const RIGHT_RECT_VARIANTS: Variants = {
FILE: icons/pen-tool.tsx
type PenToolIconHandle (line 10) | interface PenToolIconHandle {
type PenToolIconProps (line 15) | interface PenToolIconProps extends HTMLAttributes<HTMLDivElement> {
constant SVG_VARIANTS (line 19) | const SVG_VARIANTS: Variants = {
constant PATH_VARIANTS (line 27) | const PATH_VARIANTS: Variants = {
FILE: icons/philippine-peso.tsx
type PhilippinePesoIconHandle (line 10) | interface PhilippinePesoIconHandle {
type PhilippinePesoIconProps (line 15) | interface PhilippinePesoIconProps extends HTMLAttributes<HTMLDivElement> {
constant PESO_MAIN_VARIANTS (line 19) | const PESO_MAIN_VARIANTS: Variants = {
constant PESO_SECONDARY_VARIANTS (line 38) | const PESO_SECONDARY_VARIANTS: Variants = {
FILE: icons/pickaxe.tsx
type PickaxeIconHandle (line 10) | interface PickaxeIconHandle {
type PickaxeIconProps (line 15) | interface PickaxeIconProps extends HTMLAttributes<HTMLDivElement> {
constant PICKAXE_VARIANTS (line 19) | const PICKAXE_VARIANTS: Variants = {
FILE: icons/play.tsx
type PlayIconHandle (line 10) | interface PlayIconHandle {
type PlayIconProps (line 15) | interface PlayIconProps extends HTMLAttributes<HTMLDivElement> {
constant PATH_VARIANTS (line 19) | const PATH_VARIANTS: Variants = {
FILE: icons/plug-zap.tsx
type PlugZapIconHandle (line 10) | interface PlugZapIconHandle {
type PlugZapIconProps (line 15) | interface PlugZapIconProps extends HTMLAttributes<HTMLDivElement> {
constant ZAP_VARIANT (line 19) | const ZAP_VARIANT: Variants = {
FILE: icons/plus.tsx
type PlusIconHandle (line 9) | interface PlusIconHandle {
type PlusIconProps (line 14) | interface PlusIconProps extends HTMLAttributes<HTMLDivElement> {
FILE: icons/pound-sterling.tsx
type PoundSterlingIconHandle (line 10) | interface PoundSterlingIconHandle {
type PoundSterlingIconProps (line 15) | interface PoundSterlingIconProps extends HTMLAttributes<HTMLDivElement> {
constant POUND_MAIN_VARIANTS (line 19) | const POUND_MAIN_VARIANTS: Variants = {
constant POUND_SECONDARY_VARIANTS (line 38) | const POUND_SECONDARY_VARIANTS: Variants = {
FILE: icons/rabbit.tsx
type RabbitIconHandle (line 10) | interface RabbitIconHandle {
type RabbitIconProps (line 15) | interface RabbitIconProps extends HTMLAttributes<HTMLDivElement> {
constant TRANSITION (line 19) | const TRANSITION: Transition = {
constant SPEED_VARIANTS (line 24) | const SPEED_VARIANTS: Variants = {
FILE: icons/radio-tower.tsx
type RadioTowerIconHandle (line 10) | interface RadioTowerIconHandle {
type RadioTowerIconProps (line 15) | interface RadioTowerIconProps extends HTMLAttributes<HTMLDivElement> {
constant VARIANTS (line 19) | const VARIANTS: Variants = {
FILE: icons/radio.tsx
type RadioIconHandle (line 10) | interface RadioIconHandle {
type RadioIconProps (line 15) | interface RadioIconProps extends HTMLAttributes<HTMLDivElement> {
constant VARIANTS (line 19) | const VARIANTS: Variants = {
FILE: icons/redo-dot.tsx
type RedoDotIconHandle (line 9) | interface RedoDotIconHandle {
type RedoDotIconProps (line 14) | interface RedoDotIconProps extends HTMLAttributes<HTMLDivElement> {
constant CUSTOM_EASING (line 18) | const CUSTOM_EASING = cubicBezier(0.25, 0.1, 0.25, 1);
FILE: icons/redo.tsx
type RedoIconHandle (line 9) | interface RedoIconHandle {
type RedoIconProps (line 14) | interface RedoIconProps extends HTMLAttributes<HTMLDivElement> {
constant CUSTOM_EASING (line 18) | const CUSTOM_EASING = cubicBezier(0.25, 0.1, 0.25, 1);
FILE: icons/refresh-ccw-dot.tsx
type RefreshCCWDotIconHandle (line 9) | interface RefreshCCWDotIconHandle {
type RefreshCCWDotIconProps (line 14) | interface RefreshCCWDotIconProps extends HTMLAttributes<HTMLDivElement> {
FILE: icons/refresh-ccw.tsx
type RefreshCCWIconHandle (line 9) | interface RefreshCCWIconHandle {
type RefreshCCWIconProps (line 14) | interface RefreshCCWIconProps extends HTMLAttributes<HTMLDivElement> {
FILE: icons/refresh-cw-off.tsx
type RefreshCWOffIconHandle (line 9) | interface RefreshCWOffIconHandle {
type RefreshCWOffIconProps (line 14) | interface RefreshCWOffIconProps extends HTMLAttributes<HTMLDivElement> {
FILE: icons/refresh-cw.tsx
type RefreshCCWIconWIcon (line 9) | interface RefreshCCWIconWIcon {
type RefreshCCWIcoWIcon (line 14) | interface RefreshCCWIcoWIcon extends HTMLAttributes<HTMLDivElement> {
FILE: icons/rocket.tsx
type RocketIconHandle (line 10) | interface RocketIconHandle {
type RocketIconProps (line 15) | interface RocketIconProps extends HTMLAttributes<HTMLDivElement> {
constant VARIANTS (line 19) | const VARIANTS: Variants = {
constant FIRE_VARIANTS (line 37) | const FIRE_VARIANTS: Variants = {
FILE: icons/rocking-chair.tsx
type RockingChairIconHandle (line 10) | interface RockingChairIconHandle {
type RockingChairIconProps (line 15) | interface RockingChairIconProps extends HTMLAttributes<HTMLDivElement> {
constant DEFAULT_TRANSITION (line 19) | const DEFAULT_TRANSITION: Transition = {
constant ROCKING_VARIANTS (line 26) | const ROCKING_VARIANTS: Variants = {
FILE: icons/roller-coaster.tsx
type RollerCoasterIconHandle (line 10) | interface RollerCoasterIconHandle {
type RollerCoasterIconProps (line 15) | interface RollerCoasterIconProps extends HTMLAttributes<HTMLDivElement> {
constant VARIANTS (line 19) | const VARIANTS: Variants = {
FILE: icons/rotate-ccw.tsx
type RotateCCWIconHandle (line 9) | interface RotateCCWIconHandle {
type RotateCCWIconProps (line 14) | interface RotateCCWIconProps extends HTMLAttributes<HTMLDivElement> {
FILE: icons/rotate-cw.tsx
type RotateCWIconHandle (line 9) | interface RotateCWIconHandle {
type RotateCWIconProps (line 14) | interface RotateCWIconProps extends HTMLAttributes<HTMLDivElement> {
FILE: icons/route.tsx
type RouteIconHandle (line 10) | interface RouteIconHandle {
type RouteIconProps (line 15) | interface RouteIconProps extends HTMLAttributes<HTMLDivElement> {
constant CIRCLE_TRANSITION (line 19) | const CIRCLE_TRANSITION: Transition = {
constant CIRCLE_VARIANTS (line 25) | const CIRCLE_VARIANTS: Variants = {
FILE: icons/russian-ruble.tsx
type RussianRubleIconHandle (line 10) | interface RussianRubleIconHandle {
type RussianRubleIconProps (line 15) | interface RussianRubleIconProps extends HTMLAttributes<HTMLDivElement> {
constant RUSSIAN_RUBLE_MAIN_VARIANTS (line 19) | const RUSSIAN_RUBLE_MAIN_VARIANTS: Variants = {
constant RUSSIAN_RUBLE_SECONDARY_VARIANTS (line 38) | const RUSSIAN_RUBLE_SECONDARY_VARIANTS: Variants = {
FILE: icons/saudi-riyal.tsx
type SaudiRiyalIconHandle (line 10) | interface SaudiRiyalIconHandle {
type SaudiRiyalIconProps (line 15) | interface SaudiRiyalIconProps extends HTMLAttributes<HTMLDivElement> {
constant SAUDI_RIYAL_VARIANTS (line 19) | const SAUDI_RIYAL_VARIANTS: Variants = {
FILE: icons/scan-face.tsx
type ScanFaceIconHandle (line 10) | interface ScanFaceIconHandle {
type ScanFaceIconProps (line 15) | interface ScanFaceIconProps extends HTMLAttributes<HTMLDivElement> {
FILE: icons/scan-text.tsx
type ScanTextIconHandle (line 10) | interface ScanTextIconHandle {
type ScanTextIconProps (line 15) | interface ScanTextIconProps extends HTMLAttributes<HTMLDivElement> {
constant FRAME_VARIANTS (line 19) | const FRAME_VARIANTS: Variants = {
constant LINE_VARIANTS (line 24) | const LINE_VARIANTS: Variants = {
FILE: icons/search.tsx
type SearchIconHandle (line 9) | interface SearchIconHandle {
type SearchIconProps (line 14) | interface SearchIconProps extends HTMLAttributes<HTMLDivElement> {
FILE: icons/send.tsx
type SendIconHandle (line 8) | interface SendIconHandle {
type SendIconProps (line 13) | interface SendIconProps extends HTMLAttributes<HTMLDivElement> {
FILE: icons/settings.tsx
type SettingsIconHandle (line 9) | interface SettingsIconHandle {
type SettingsIconProps (line 14) | interface SettingsIconProps extends HTMLAttributes<HTMLDivElement> {
FILE: icons/shield-check.tsx
type ShieldCheckIconHandle (line 10) | interface ShieldCheckIconHandle {
type ShieldCheckIconProps (line 15) | interface ShieldCheckIconProps extends HTMLAttributes<HTMLDivElement> {
constant PATH_VARIANTS (line 19) | const PATH_VARIANTS: Variants = {
FILE: icons/ship.tsx
type ShipIconHandle (line 10) | interface ShipIconHandle {
type ShipIconProps (line 15) | interface ShipIconProps extends HTMLAttributes<HTMLDivElement> {
constant PATH_VARIANTS (line 19) | const PATH_VARIANTS: Variants = {
constant G_VARIANTS (line 34) | const G_VARIANTS: Variants = {
FILE: icons/shower-head.tsx
type ShowerHeadIconHandle (line 10) | interface ShowerHeadIconHandle {
type ShowerHeadIconProps (line 15) | interface ShowerHeadIconProps extends HTMLAttributes<HTMLDivElement> {
constant DROP_VARIANTS (line 19) | const DROP_VARIANTS: Variants = {
constant DROP_CHILD_VARIANTS (line 27) | const DROP_CHILD_VARIANTS: Variants = {
constant DROP_PATH (line 41) | const DROP_PATH = [
FILE: icons/shrink.tsx
type ShrinkIconHandle (line 10) | interface ShrinkIconHandle {
type ShrinkIconProps (line 15) | interface ShrinkIconProps extends HTMLAttributes<HTMLDivElement> {
constant DEFAULT_TRANSITION (line 19) | const DEFAULT_TRANSITION: Transition = {
FILE: icons/sliders-horizontal.tsx
type SlidersHorizontalIconHandle (line 10) | interface SlidersHorizontalIconHandle {
type SlidersHorizontalIconProps (line 15) | interface SlidersHorizontalIconProps extends HTMLAttributes<HTMLDivEleme...
constant DEFAULT_TRANSITION (line 19) | const DEFAULT_TRANSITION: Transition = {
FILE: icons/smartphone-charging.tsx
type SmartphoneChargingIconHandle (line 9) | interface SmartphoneChargingIconHandle {
type SmartphoneChargingIconProps (line 14) | interface SmartphoneChargingIconProps extends HTMLAttributes<HTMLDivElem...
FILE: icons/smartphone-nfc.tsx
type SmartphoneNfcIconHandle (line 10) | interface SmartphoneNfcIconHandle {
type SmartphoneNfcIconProps (line 15) | interface SmartphoneNfcIconProps extends HTMLAttributes<HTMLDivElement> {
constant PATH_VARIANTS (line 19) | const PATH_VARIANTS: Variants = {
FILE: icons/smile-plus.tsx
type SmilePlusIconHandle (line 10) | interface SmilePlusIconHandle {
type SmilePlusIconProps (line 15) | interface SmilePlusIconProps extends HTMLAttributes<HTMLDivElement> {
FILE: icons/smile.tsx
type SmileIconHandle (line 10) | interface SmileIconHandle {
type SmileIconProps (line 15) | interface SmileIconProps extends HTMLAttributes<HTMLDivElement> {
FILE: icons/snowflake.tsx
constant PATH_VARIANTS (line 10) | const PATH_VARIANTS: Variants = {
type SnowflakeIconHandle (line 23) | interface SnowflakeIconHandle {
type SnowflakeIconProps (line 28) | interface SnowflakeIconProps extends HTMLAttributes<HTMLDivElement> {
FILE: icons/sparkles.tsx
type SparklesIconHandle (line 10) | interface SparklesIconHandle {
type SparklesIconProps (line 15) | interface SparklesIconProps extends HTMLAttributes<HTMLDivElement> {
constant SPARKLE_VARIANTS (line 19) | const SPARKLE_VARIANTS: Variants = {
constant STAR_VARIANTS (line 34) | const STAR_VARIANTS: Variants = {
FILE: icons/square-activity.tsx
type ActivityIconHandle (line 10) | interface ActivityIconHandle {
type ActivityIconProps (line 15) | interface ActivityIconProps extends HTMLAttributes<HTMLDivElement> {
constant PATH_VARIANTS (line 19) | const PATH_VARIANTS: Variants = {
constant SQUARE_VARIANTS (line 41) | const SQUARE_VARIANTS: Variants = {
FILE: icons/square-arrow-down.tsx
type SquareArrowDownIconHandle (line 10) | interface SquareArrowDownIconHandle {
type SquareArrowDownIconProps (line 15) | interface SquareArrowDownIconProps extends HTMLAttributes<HTMLDivElement> {
constant SQUARE_VARIANTS (line 19) | const SQUARE_VARIANTS: Variants = {
constant PATH_VARIANTS (line 24) | const PATH_VARIANTS: Variants = {
constant SECOND_PATH_VARIANTS (line 33) | const SECOND_PATH_VARIANTS: Variants = {
FILE: icons/square-arrow-left.tsx
type SquareArrowLeftIconHandle (line 10) | interface SquareArrowLeftIconHandle {
type SquareArrowLeftIconProps (line 15) | interface SquareArrowLeftIconProps extends HTMLAttributes<HTMLDivElement> {
constant SQUARE_VARIANTS (line 19) | const SQUARE_VARIANTS: Variants = {
constant PATH_VARIANTS (line 24) | const PATH_VARIANTS: Variants = {
constant SECOND_PATH_VARIANTS (line 33) | const SECOND_PATH_VARIANTS: Variants = {
FILE: icons/square-arrow-right.tsx
type SquareArrowRightIconHandle (line 10) | interface SquareArrowRightIconHandle {
type SquareArrowRightIconProps (line 15) | interface SquareArrowRightIconProps extends HTMLAttributes<HTMLDivElemen...
constant SQUARE_VARIANTS (line 19) | const SQUARE_VARIANTS: Variants = {
constant PATH_VARIANTS (line 24) | const PATH_VARIANTS: Variants = {
constant SECOND_PATH_VARIANTS (line 32) | const SECOND_PATH_VARIANTS: Variants = {
FILE: icons/square-arrow-up.tsx
type SquareArrowUpIconHandle (line 10) | interface SquareArrowUpIconHandle {
type SquareArrowUpIconProps (line 15) | interface SquareArrowUpIconProps extends HTMLAttributes<HTMLDivElement> {
constant SQUARE_VARIANTS (line 19) | const SQUARE_VARIANTS: Variants = {
constant PATH_VARIANTS (line 24) | const PATH_VARIANTS: Variants = {
constant SECOND_PATH_VARIANTS (line 33) | const SECOND_PATH_VARIANTS: Variants = {
FILE: icons/square-chevron-down.tsx
type SquareChevronDownIconHandle (line 10) | interface SquareChevronDownIconHandle {
type SquareChevronDownIconProps (line 15) | interface SquareChevronDownIconProps extends HTMLAttributes<HTMLDivEleme...
constant DEFAULT_TRANSITION (line 19) | const DEFAULT_TRANSITION: Transition = {
FILE: icons/square-chevron-left.tsx
type SquareChevronLeftIconHandle (line 10) | interface SquareChevronLeftIconHandle {
type SquareChevronLeftIconProps (line 15) | interface SquareChevronLeftIconProps extends HTMLAttributes<HTMLDivEleme...
constant DEFAULT_TRANSITION (line 19) | const DEFAULT_TRANSITION: Transition = {
FILE: icons/square-chevron-right.tsx
type SquareChevronRightIconHandle (line 10) | interface SquareChevronRightIconHandle {
type SquareChevronRightIconProps (line 15) | interface SquareChevronRightIconProps extends HTMLAttributes<HTMLDivElem...
constant DEFAULT_TRANSITION (line 19) | const DEFAULT_TRANSITION: Transition = {
FILE: icons/square-chevron-up.tsx
type SquareChevronUpIconHandle (line 10) | interface SquareChevronUpIconHandle {
type SquareChevronUpIconProps (line 15) | interface SquareChevronUpIconProps extends HTMLAttributes<HTMLDivElement> {
constant DEFAULT_TRANSITION (line 19) | const DEFAULT_TRANSITION: Transition = {
FILE: icons/square-pen.tsx
type SquarePenIconHandle (line 10) | interface SquarePenIconHandle {
type SquarePenIconProps (line 15) | interface SquarePenIconProps extends HTMLAttributes<HTMLDivElement> {
constant PEN_VARIANTS (line 19) | const PEN_VARIANTS: Variants = {
FILE: icons/square-stack.tsx
type SquareStackIconHandle (line 10) | interface SquareStackIconHandle {
type SquareStackIconProps (line 15) | interface SquareStackIconProps extends HTMLAttributes<HTMLDivElement> {
constant RECT_VARIANTS (line 19) | const RECT_VARIANTS: Variants = {
constant PATH_VARIANTS (line 27) | const PATH_VARIANTS: Variants = {
FILE: icons/stethoscope.tsx
type StethoscopeIconHandle (line 9) | interface StethoscopeIconHandle {
type StethoscopeIconProps (line 14) | interface StethoscopeIconProps extends HTMLAttributes<HTMLDivElement> {
constant DURATION (line 18) | const DURATION = 0.25;
FILE: icons/sun-dim.tsx
type SunDimIconHandle (line 10) | interface SunDimIconHandle {
type SunDimIconProps (line 15) | interface SunDimIconProps extends HTMLAttributes<HTMLDivElement> {
constant PATH_VARIANTS (line 19) | const PATH_VARIANTS: Variants = {
FILE: icons/sun-medium.tsx
type SunMediumIconHandle (line 10) | interface SunMediumIconHandle {
type SunMediumIconProps (line 15) | interface SunMediumIconProps extends HTMLAttributes<HTMLDivElement> {
constant PATH_VARIANTS (line 19) | const PATH_VARIANTS: Variants = {
FILE: icons/sun-moon.tsx
type SunMoonIconHandle (line 10) | interface SunMoonIconHandle {
type SunMoonIconProps (line 15) | interface SunMoonIconProps extends HTMLAttributes<HTMLDivElement> {
constant SUN_VARIANTS (line 19) | const SUN_VARIANTS: Variants = {
constant MOON_VARIANTS (line 32) | const MOON_VARIANTS: Variants = {
FILE: icons/sun.tsx
type SunIconHandle (line 10) | interface SunIconHandle {
type SunIconProps (line 15) | interface SunIconProps extends HTMLAttributes<HTMLDivElement> {
constant PATH_VARIANTS (line 19) | const PATH_VARIANTS: Variants = {
FILE: icons/sunset.tsx
type SunsetIconHandle (line 10) | interface SunsetIconHandle {
type SunsetIconProps (line 15) | interface SunsetIconProps extends HTMLAttributes<HTMLDivElement> {
constant ARROW_VARIANTS (line 19) | const ARROW_VARIANTS: Variants = {
constant RAYS_VARIANTS (line 27) | const RAYS_VARIANTS: Variants = {
FILE: icons/swiss-franc.tsx
type SwissFrancIconHandle (line 10) | interface SwissFrancIconHandle {
type SwissFrancIconProps (line 15) | interface SwissFrancIconProps extends HTMLAttributes<HTMLDivElement> {
constant FRANC_MAIN_VARIANTS (line 19) | const FRANC_MAIN_VARIANTS: Variants = {
constant FRANC_SECONDARY_VARIANTS (line 38) | const FRANC_SECONDARY_VARIANTS: Variants = {
FILE: icons/syringe.tsx
type SyringeIconHandle (line 9) | interface SyringeIconHandle {
type SyringeIconProps (line 14) | interface SyringeIconProps extends HTMLAttributes<HTMLDivElement> {
FILE: icons/telescope.tsx
type TelescopeIconHandle (line 10) | interface TelescopeIconHandle {
type TelescopeIconProps (line 15) | interface TelescopeIconProps extends HTMLAttributes<HTMLDivElement> {
constant SCOPE_VARIANTS (line 19) | const SCOPE_VARIANTS: Variants = {
FILE: icons/terminal.tsx
type TerminalIconHandle (line 10) | interface TerminalIconHandle {
type TerminalIconProps (line 15) | interface TerminalIconProps extends HTMLAttributes<HTMLDivElement> {
constant LINE_VARIANTS (line 19) | const LINE_VARIANTS: Variants = {
FILE: icons/thermometer.tsx
constant PATH_VARIANTS (line 10) | const PATH_VARIANTS: Variants = {
type ThermometerIconHandle (line 23) | interface ThermometerIconHandle {
type ThermometerIconProps (line 28) | interface ThermometerIconProps extends HTMLAttributes<HTMLDivElement> {
FILE: icons/timer.tsx
type TimerIconHandle (line 10) | interface TimerIconHandle {
type TimerIconProps (line 15) | interface TimerIconProps extends HTMLAttributes<HTMLDivElement> {
constant HAND_VARIANTS (line 19) | const HAND_VARIANTS: Variants = {
constant BUTTON_VARIANTS (line 41) | const BUTTON_VARIANTS: Variants = {
FILE: icons/tornado.tsx
type TornadoIconHandle (line 10) | interface TornadoIconHandle {
type TornadoIconProps (line 15) | interface TornadoIconProps extends HTMLAttributes<HTMLDivElement> {
constant PATH_VARIANTS (line 19) | const PATH_VARIANTS: Variants = {
FILE: icons/train-track.tsx
type TrainTrackIconHandle (line 10) | interface TrainTrackIconHandle {
type TrainTrackIconProps (line 15) | interface TrainTrackIconProps extends HTMLAttributes<HTMLDivElement> {
constant TRANSITION (line 19) | const TRANSITION: Transition = {
constant VARIANTS (line 24) | const VARIANTS: Variants = {
FILE: icons/trending-down.tsx
type TrendingDownIconHandle (line 10) | interface TrendingDownIconHandle {
type TrendingDownIconProps (line 15) | interface TrendingDownIconProps extends HTMLAttributes<HTMLDivElement> {
constant SVG_VARIANTS (line 19) | const SVG_VARIANTS: Variants = {
constant PATH_VARIANTS (line 31) | const PATH_VARIANTS: Variants = {
constant ARROW_VARIANTS (line 51) | const ARROW_VARIANTS: Variants = {
FILE: icons/trending-up-down.tsx
type TrendingUpDownIconHandle (line 10) | interface TrendingUpDownIconHandle {
type TrendingUpDownIconProps (line 15) | interface TrendingUpDownIconProps extends HTMLAttributes<HTMLDivElement> {
constant SVG_VARIANTS (line 19) | const SVG_VARIANTS: Variants = {
constant PATH_VARIANTS (line 30) | const PATH_VARIANTS: Variants = {
constant ARROW_VARIANTS (line 50) | const ARROW_VARIANTS: Variants = {
FILE: icons/trending-up.tsx
type TrendingUpIconHandle (line 10) | interface TrendingUpIconHandle {
type TrendingUpIconProps (line 15) | interface TrendingUpIconProps extends HTMLAttributes<HTMLDivElement> {
constant SVG_VARIANTS (line 19) | const SVG_VARIANTS: Variants = {
constant PATH_VARIANTS (line 31) | const PATH_VARIANTS: Variants = {
constant ARROW_VARIANTS (line 51) | const ARROW_VARIANTS: Variants = {
FILE: icons/truck.tsx
type TruckIconHandle (line 8) | interface TruckIconHandle {
type TruckIconProps (line 13) | interface TruckIconProps extends HTMLAttributes<HTMLDivElement> {
constant TRUCK_VARIANTS (line 17) | const TRUCK_VARIANTS: Variants = {
constant WHEEL_VARIANTS (line 30) | const WHEEL_VARIANTS: Variants = {
constant SPEED_LINE_VARIANTS (line 42) | const SPEED_LINE_VARIANTS: Variants = {
FILE: icons/turkish-lira.tsx
type TurkishLiraIconHandle (line 10) | interface TurkishLiraIconHandle {
type TurkishLiraIconProps (line 15) | interface TurkishLiraIconProps extends HTMLAttributes<HTMLDivElement> {
constant LIRA_MAIN_VARIANTS (line 19) | const LIRA_MAIN_VARIANTS: Variants = {
constant LIRA_SECONDARY_VARIANTS (line 38) | const LIRA_SECONDARY_VARIANTS: Variants = {
FILE: icons/twitch.tsx
type TwitchIconHandle (line 10) | interface TwitchIconHandle {
type TwitchIconProps (line 15) | interface TwitchIconProps extends HTMLAttributes<HTMLDivElement> {
constant PATH_VARIANTS (line 19) | const PATH_VARIANTS: Variants = {
constant LINE_VARIANTS (line 41) | const LINE_VARIANTS: Variants = {
FILE: icons/twitter.tsx
type TwitterIconHandle (line 10) | interface TwitterIconHandle {
type TwitterIconProps (line 15) | interface TwitterIconProps extends HTMLAttributes<HTMLDivElement> {
constant PATH_VARIANTS (line 19) | const PATH_VARIANTS: Variants = {
FILE: icons/underline.tsx
type UnderlineIconHandle (line 10) | interface UnderlineIconHandle {
type UnderlineIconProps (line 15) | interface UnderlineIconProps extends HTMLAttributes<HTMLDivElement> {
constant VARIANTS (line 19) | const VARIANTS: Variants = {
FILE: icons/undo-dot.tsx
type UndoDotIconHandle (line 9) | interface UndoDotIconHandle {
type UndoDotIconProps (line 14) | interface UndoDotIconProps extends HTMLAttributes<HTMLDivElement> {
constant CUSTOM_EASING (line 18) | const CUSTOM_EASING = cubicBezier(0.25, 0.1, 0.25, 1);
FILE: icons/undo.tsx
type UndoIconHandle (line 9) | interface UndoIconHandle {
type UndoIconProps (line 14) | interface UndoIconProps extends HTMLAttributes<HTMLDivElement> {
constant CUSTOM_EASING (line 18) | const CUSTOM_EASING = cubicBezier(0.25, 0.1, 0.25, 1);
FILE: icons/upload.tsx
type UploadIconHandle (line 10) | interface UploadIconHandle {
type UploadIconProps (line 15) | interface UploadIconProps extends HTMLAttributes<HTMLDivElement> {
constant ARROW_VARIANTS (line 19) | const ARROW_VARIANTS: Variants = {
FILE: icons/upvote.tsx
type UpvoteIconHandle (line 9) | interface UpvoteIconHandle {
type UpvoteIconProps (line 14) | interface UpvoteIconProps extends HTMLAttributes<HTMLDivElement> {
FILE: icons/user-check.tsx
type UserCheckIconHandle (line 10) | interface UserCheckIconHandle {
type UserCheckIconProps (line 15) | interface UserCheckIconProps extends HTMLAttributes<HTMLDivElement> {
constant CHECK_VARIANTS (line 19) | const CHECK_VARIANTS: Variants = {
FILE: icons/user-round-check.tsx
type UserRoundCheckIconHandle (line 10) | interface UserRoundCheckIconHandle {
type UserRoundCheckIconProps (line 15) | interface UserRoundCheckIconProps extends HTMLAttributes<HTMLDivElement> {
constant CHECK_VARIANTS (line 19) | const CHECK_VARIANTS: Variants = {
FILE: icons/user-round-plus.tsx
type UserRoundPlusIconHandle (line 10) | interface UserRoundPlusIconHandle {
type UserRoundPlusIconProps (line 15) | interface UserRoundPlusIconProps extends HTMLAttributes<HTMLDivElement> {
constant VERTICAL_BAR_VARIANTS (line 19) | const VERTICAL_BAR_VARIANTS: Variants = {
constant HORIZONTAL_BAR_VARIANTS (line 34) | const HORIZONTAL_BAR_VARIANTS: Variants = {
FILE: icons/user.tsx
type UserIconHandle (line 10) | interface UserIconHandle {
type UserIconProps (line 15) | interface UserIconProps extends HTMLAttributes<HTMLDivElement> {
constant PATH_VARIANT (line 19) | const PATH_VARIANT: Variants = {
constant CIRCLE_VARIANT (line 28) | const CIRCLE_VARIANT: Variants = {
FILE: icons/users.tsx
type UsersIconHandle (line 10) | interface UsersIconHandle {
type UsersIconProps (line 15) | interface UsersIconProps extends HTMLAttributes<HTMLDivElement> {
constant PATH_VARIANTS (line 19) | const PATH_VARIANTS: Variants = {
FILE: icons/vibrate.tsx
type VibrateIconHandle (line 10) | interface VibrateIconHandle {
type VibrateIconProps (line 15) | interface VibrateIconProps extends HTMLAttributes<HTMLDivElement> {
constant RECT_VARIANTS (line 19) | const RECT_VARIANTS: Variants = {
FILE: icons/volume.tsx
type VolumeIconHandle (line 16) | interface VolumeIconHandle {
type VolumeIconProps (line 21) | interface VolumeIconProps extends HTMLAttributes<HTMLDivElement> {
FILE: icons/washing-machine.tsx
type WashingMachineIconHandle (line 9) | interface WashingMachineIconHandle {
type WashingMachineIconProps (line 14) | interface WashingMachineIconProps extends HTMLAttributes<HTMLDivElement> {
FILE: icons/waves-ladder.tsx
type WavesLadderIconHandle (line 9) | interface WavesLadderIconHandle {
type WavesLadderIconProps (line 14) | interface WavesLadderIconProps extends HTMLAttributes<HTMLDivElement> {
FILE: icons/waves.tsx
type WavesIconHandle (line 9) | interface WavesIconHandle {
type WavesIconProps (line 14) | interface WavesIconProps extends HTMLAttributes<HTMLDivElement> {
FILE: icons/waypoints.tsx
type WaypointsIconHandle (line 10) | interface WaypointsIconHandle {
type WaypointsIconProps (line 15) | interface WaypointsIconProps extends HTMLAttributes<HTMLDivElement> {
constant VARIANTS (line 19) | const VARIANTS: Variants = {
FILE: icons/webhook.tsx
type WebhookIconHandle (line 10) | interface WebhookIconHandle {
type WebhookIconProps (line 15) | interface WebhookIconProps extends HTMLAttributes<HTMLDivElement> {
constant TRANSITION (line 19) | const TRANSITION: Transition = {
constant VARIANTS (line 24) | const VARIANTS: Variants = {
FILE: icons/wifi-low.tsx
type WifiLowIconHandle (line 15) | interface WifiLowIconHandle {
type WifiLowIconProps (line 20) | interface WifiLowIconProps extends HTMLAttributes<HTMLDivElement> {
constant WIFI_LEVELS (line 24) | const WIFI_LEVELS = [
FILE: icons/wifi.tsx
type WifiIconHandle (line 9) | interface WifiIconHandle {
type WifiIconProps (line 14) | interface WifiIconProps extends HTMLAttributes<HTMLDivElement> {
constant WIFI_LEVELS (line 18) | const WIFI_LEVELS = [
FILE: icons/wind-arrow-down.tsx
type WindArrowDownIconHandle (line 10) | interface WindArrowDownIconHandle {
type WindArrowDownIconProps (line 15) | interface WindArrowDownIconProps extends HTMLAttributes<HTMLDivElement> {
constant WIND_VARIANTS (line 19) | const WIND_VARIANTS: Variants = {
constant ARROW_VARIANTS (line 42) | const ARROW_VARIANTS: Variants = {
FILE: icons/wind.tsx
type WindIconHandle (line 10) | interface WindIconHandle {
type WindIconProps (line 15) | interface WindIconProps extends HTMLAttributes<HTMLDivElement> {
constant PATH_VARIANTS (line 19) | const PATH_VARIANTS: Variants = {
FILE: icons/workflow.tsx
type WorkflowIconHandle (line 10) | interface WorkflowIconHandle {
type WorkflowIconProps (line 15) | interface WorkflowIconProps extends HTMLAttributes<HTMLDivElement> {
constant TRANSITION (line 19) | const TRANSITION: Transition = {
constant VARIANTS (line 24) | const VARIANTS: Variants = {
FILE: icons/wrench.tsx
type WrenchIconHandle (line 10) | interface WrenchIconHandle {
type WrenchIconProps (line 15) | interface WrenchIconProps extends HTMLAttributes<HTMLDivElement> {
constant ICON_VARIANTS (line 19) | const ICON_VARIANTS: Variants = {
FILE: icons/x.tsx
type XIconHandle (line 10) | interface XIconHandle {
type XIconProps (line 15) | interface XIconProps extends HTMLAttributes<HTMLDivElement> {
constant PATH_VARIANTS (line 19) | const PATH_VARIANTS: Variants = {
FILE: icons/youtube.tsx
type YoutubeIconHandle (line 10) | interface YoutubeIconHandle {
type YoutubeIconProps (line 15) | interface YoutubeIconProps extends HTMLAttributes<HTMLDivElement> {
constant PATH_VARIANTS (line 19) | const PATH_VARIANTS: Variants = {
constant TRIANGLE_VARIANTS (line 41) | const TRIANGLE_VARIANTS: Variants = {
FILE: icons/zap-off.tsx
type ZapOffIconHandle (line 10) | interface ZapOffIconHandle {
type ZapOffIconProps (line 15) | interface ZapOffIconProps extends HTMLAttributes<HTMLDivElement> {
constant PATH_VARIANTS (line 19) | const PATH_VARIANTS: Variants = {
FILE: icons/zap.tsx
type ZapHandle (line 10) | interface ZapHandle {
type ZapProps (line 15) | interface ZapProps extends HTMLAttributes<HTMLDivElement> {
constant PATH_VARIANTS (line 19) | const PATH_VARIANTS: Variants = {
FILE: lib/utils.ts
function cn (line 5) | function cn(...inputs: ClassValue[]) {
FILE: providers/package-name.tsx
type PackageManager (line 7) | type PackageManager = (typeof PACKAGE_MANAGER)[keyof typeof PACKAGE_MANA...
type PackageNameContextType (line 9) | type PackageNameContextType = {
FILE: providers/theme.tsx
function ThemeProvider (line 6) | function ThemeProvider({ children, ...props }: ThemeProviderProps) {
FILE: scripts/check-duplicates.ts
type DuplicateEntry (line 3) | type DuplicateEntry = {
type DuplicateReport (line 8) | type DuplicateReport = {
FILE: scripts/check-icon-style.ts
type Issue (line 4) | interface Issue {
constant UPPER_CASE_RE (line 11) | const UPPER_CASE_RE = /^[A-Z][A-Z0-9_]*$/;
constant ICON_COMPONENT_RE (line 12) | const ICON_COMPONENT_RE = /Icon$/;
constant ICON_HANDLE_RE (line 13) | const ICON_HANDLE_RE = /IconHandle$/;
constant ICON_PROPS_RE (line 14) | const ICON_PROPS_RE = /IconProps$/;
FILE: scripts/check-imports.ts
type CheckResult (line 4) | interface CheckResult {
FILE: scripts/download-fonts.js
function downloadFont (line 33) | function downloadFont(url, filepath, name) {
function downloadAllFonts (line 98) | async function downloadAllFonts() {
FILE: scripts/registry-components.ts
type ComponentDefinition (line 8) | type ComponentDefinition = Partial<
FILE: scripts/registry-schema.ts
type RegistryType (line 1) | type RegistryType =
type RegistryFile (line 13) | interface RegistryFile {
type TailwindConfig (line 20) | interface TailwindConfig {
type CssVars (line 24) | interface CssVars {
type Schema (line 30) | interface Schema {
FILE: scripts/sync-registry.ts
function updateRegistryComponents (line 9) | function updateRegistryComponents() {
FILE: seo/metadata.ts
type CreateMetadataOptions (line 5) | type CreateMetadataOptions = {
Condensed preview — 869 files, each showing path, character count, and a content snippet. Download the .json file or copy for the full structured content (3,586K chars).
[
{
"path": ".github/pull_request_template.md",
"chars": 412,
"preview": "## I have read the [CONTRIBUTING.md](https://github.com/pqoqubbw/icons/blob/main/CONTRIBUTING.md) file.\n\nYES/NO\n\n## What"
},
{
"path": ".github/workflows/ci.yml",
"chars": 1112,
"preview": "name: CI\n\non:\n pull_request:\n branches: [main]\n push:\n branches: [main]\n\njobs:\n check-imports:\n name: Check "
},
{
"path": ".gitignore",
"chars": 729,
"preview": "# See https://help.github.com/articles/ignoring-files/ for more about ignoring files.\n\n# dependencies\n/node_modules\n/.pn"
},
{
"path": ".vscode/settings.json",
"chars": 822,
"preview": "{\n \"cSpell.words\": [\"Downvote\", \"LUCIDE\", \"nuqs\", \"pqoqubbw\", \"Upvote\"],\n \"typescript.tsdk\": \"node_modules/typescript/"
},
{
"path": "CONTRIBUTING.md",
"chars": 5632,
"preview": "# Contributing\n\n**IMPORTANT:** This project only accepts contributions based on [lucide icons](https://lucide.dev/). Pul"
},
{
"path": "LICENSE",
"chars": 1070,
"preview": "MIT License\n\nCopyright (c) 2024-2026 pqoqubbw\n\nPermission is hereby granted, free of charge, to any person obtaining a c"
},
{
"path": "README.md",
"chars": 1630,
"preview": "<a href=\"https://vercel.com/oss\">\n <img alt=\"Vercel OSS Program\" src=\"https://vercel.com/oss/program-badge.svg\" />\n</a>"
},
{
"path": "actions/get-icon-content.ts",
"chars": 368,
"preview": "\"use server\";\n\nimport { promises as fs } from \"node:fs\";\nimport path from \"node:path\";\n\nconst ICONS_DIRECTORY = \"icons\";"
},
{
"path": "actions/get-icons.ts",
"chars": 255,
"preview": "import { ICON_LIST } from \"@/icons\";\n\ntype Icon = {\n name: string;\n keywords: string[];\n};\n\nconst getIcons = (): Icon["
},
{
"path": "actions/open-in-v0.ts",
"chars": 1505,
"preview": "\"use server\";\n\nimport { SITE } from \"@/constants\";\nimport { getIconForV0 } from \"@/helpers/get-icon-for-v0\";\n\nexport asy"
},
{
"path": "app/globals.css",
"chars": 1804,
"preview": "@import \"tailwindcss\";\n@import \"tw-animate-css\";\n@plugin \"@toolwind/corner-shape\";\n\n@custom-variant dark (&:is(.dark *))"
},
{
"path": "app/icon.tsx",
"chars": 1560,
"preview": "import { ImageResponse } from \"next/og\";\n\nexport const runtime = \"edge\";\n\nexport const size = {\n width: 31,\n height: 3"
},
{
"path": "app/icons/[slug]/icon-card.tsx",
"chars": 1066,
"preview": "\"use client\";\n\nimport { useMemo, useRef } from \"react\";\nimport type { Icon } from \"@/actions/get-icons\";\n\nimport { Card,"
},
{
"path": "app/icons/[slug]/page.tsx",
"chars": 5089,
"preview": "import { ArrowLeftIcon } from \"lucide-react\";\nimport type { Metadata } from \"next\";\nimport Link from \"next/link\";\nimport"
},
{
"path": "app/icons/[slug]/similar-icons.tsx",
"chars": 2339,
"preview": "\"use client\";\n\nimport Link from \"next/link\";\nimport { useMemo, useRef } from \"react\";\nimport type { Icon } from \"@/actio"
},
{
"path": "app/layout.tsx",
"chars": 4078,
"preview": "import type { Viewport } from \"next\";\nimport localFont from \"next/font/local\";\n\nimport \"./globals.css\";\nimport { CircleX"
},
{
"path": "app/llms.txt/route.ts",
"chars": 1451,
"preview": "import { getIcons } from \"@/actions/get-icons\";\nimport { LINK, SITE } from \"@/constants\";\n\nexport function GET() {\n con"
},
{
"path": "app/page.tsx",
"chars": 2250,
"preview": "import { getIcons } from \"@/actions/get-icons\";\nimport { CliBlock } from \"@/components/cli-block\";\nimport { CommentBlock"
},
{
"path": "app/robots.ts",
"chars": 256,
"preview": "import type { MetadataRoute } from \"next\";\n\nimport { SITE } from \"@/constants\";\n\nexport default function robots(): Metad"
},
{
"path": "app/sitemap.ts",
"chars": 735,
"preview": "import type { MetadataRoute } from \"next\";\n\nimport { SITE } from \"@/constants\";\nimport { ICON_LIST } from \"@/icons\";\n\n//"
},
{
"path": "app/sponsorship/page.tsx",
"chars": 2131,
"preview": "import { AmountSelector } from \"@/components/sponsorship/amount-selector\";\nimport { createMetadata } from \"@/seo/metadat"
},
{
"path": "biome.jsonc",
"chars": 742,
"preview": "{\n \"$schema\": \"./node_modules/@biomejs/biome/configuration_schema.json\",\n \"extends\": [\n \"ultracite/biome/core\",\n "
},
{
"path": "components/analytics.tsx",
"chars": 629,
"preview": "import { OpenPanelComponent } from \"@openpanel/nextjs\";\n\nconst ANALYTIC_EVENT = {\n HEADER_GITHUB: \"header-github\",\n IC"
},
{
"path": "components/card.tsx",
"chars": 11297,
"preview": "\"use client\";\n\nimport { useOpenPanel } from \"@openpanel/nextjs\";\nimport { Copy, PauseIcon, PlayIcon, Terminal } from \"lu"
},
{
"path": "components/cli-block.tsx",
"chars": 8952,
"preview": "\"use client\";\n\nimport { ScrollArea as BaseScrollArea } from \"@base-ui/react/scroll-area\";\nimport { CopyIcon } from \"luci"
},
{
"path": "components/comment.client.tsx",
"chars": 1639,
"preview": "\"use client\";\n\nimport { useOpenPanel } from \"@openpanel/nextjs\";\nimport { ExternalLinkIcon } from \"lucide-react\";\n\nimpor"
},
{
"path": "components/comment.tsx",
"chars": 1749,
"preview": "import {\n CommentAnimationsDevLinkClient,\n CommentButtonClient,\n} from \"./comment.client\";\nimport { Avatar, AvatarFall"
},
{
"path": "components/footer.tsx",
"chars": 577,
"preview": "const Footer = () => {\n return (\n <footer className=\"mt-auto mb-6 flex w-full items-center justify-center gap-1 font"
},
{
"path": "components/github-button.tsx",
"chars": 5032,
"preview": "import { unstable_cache } from \"next/cache\";\nimport { LINK } from \"@/constants\";\n\nconst DEFAULT_STARS = 6077;\nconst CACH"
},
{
"path": "components/header.tsx",
"chars": 10944,
"preview": "import Link from \"next/link\";\n\nimport { GithubStartsButton } from \"@/components/github-button\";\nimport { ThemeToggle } f"
},
{
"path": "components/list.tsx",
"chars": 2727,
"preview": "\"use client\";\n\nimport Fuse from \"fuse.js\";\nimport { useDeferredValue, useMemo, useRef, useState } from \"react\";\nimport t"
},
{
"path": "components/search-input.tsx",
"chars": 2165,
"preview": "import { useHotkey } from \"@tanstack/react-hotkeys\";\nimport { SearchIcon } from \"lucide-react\";\n\nimport { Portal } from "
},
{
"path": "components/sponsorship/amount-selector.tsx",
"chars": 19601,
"preview": "\"use client\";\n\nimport { useEffect, useRef, useState } from \"react\";\nimport type { SUPPORT_LIST } from \"@/app/sponsorship"
},
{
"path": "components/sponsorship/stamp.tsx",
"chars": 186810,
"preview": "import { cn } from \"@/lib/utils\";\n\nconst DuckSvg = () => {\n return (\n <svg\n className=\"translate-y-[-5%] [grid-"
},
{
"path": "components/ui/avatar.tsx",
"chars": 1467,
"preview": "\"use client\";\n\nimport { Avatar as AvatarBase } from \"@base-ui/react/avatar\";\nimport type { VariantProps } from \"class-va"
},
{
"path": "components/ui/icon-state.tsx",
"chars": 2032,
"preview": "\"use client\";\n\nimport { CheckIcon, LoaderIcon, XIcon } from \"lucide-react\";\nimport { AnimatePresence, motion } from \"mot"
},
{
"path": "components/ui/input.tsx",
"chars": 1996,
"preview": "import { Input as BaseInput } from \"@base-ui/react/input\";\nimport type * as React from \"react\";\n\nimport { cn } from \"@/l"
},
{
"path": "components/ui/portal.tsx",
"chars": 366,
"preview": "import { createPortal } from \"react-dom\";\n\ntype PortalProps = {\n children: React.ReactNode;\n container?: Element | nul"
},
{
"path": "components/ui/radio.tsx",
"chars": 1082,
"preview": "import { Radio as BaseRadio } from \"@base-ui/react/radio\";\nimport { RadioGroup as BaseRadioGroup } from \"@base-ui/react/"
},
{
"path": "components/ui/scroll-area.tsx",
"chars": 2834,
"preview": "import { ScrollArea as BaseScrollArea } from \"@base-ui/react/scroll-area\";\nimport * as React from \"react\";\n\nimport { cn "
},
{
"path": "components/ui/tabs.tsx",
"chars": 1987,
"preview": "\"use client\";\n\nimport { Tabs as BaseTabs } from \"@base-ui/react/tabs\";\nimport type * as React from \"react\";\n\nimport { cn"
},
{
"path": "components/ui/text-loop.tsx",
"chars": 1668,
"preview": "\"use client\";\n\nimport type { Transition, Variants } from \"motion/react\";\nimport { AnimatePresence, motion } from \"motion"
},
{
"path": "components/ui/theme-toggle.tsx",
"chars": 1353,
"preview": "\"use client\";\n\nimport { useHotkey } from \"@tanstack/react-hotkeys\";\nimport { MoonIcon, SunIcon } from \"lucide-react\";\nim"
},
{
"path": "components/ui/tooltip.tsx",
"chars": 3591,
"preview": "import { Tooltip as BaseTooltip } from \"@base-ui/react/tooltip\";\nimport type * as React from \"react\";\n\nimport { cn } fro"
},
{
"path": "constants.ts",
"chars": 1303,
"preview": "const SITE = {\n NAME: \"lucide-animated\",\n URL: \"https://lucide-animated.com\",\n OG_IMAGE: \"/og.png\",\n AUTHOR: {\n N"
},
{
"path": "fonts/README.md",
"chars": 1237,
"preview": "# Fonts Directory\n\n⚠️ **Proprietary font files (.woff) are NOT included in this repository due to licensing restrictions"
},
{
"path": "helpers/get-icon-for-v0.ts",
"chars": 2630,
"preview": "/** biome-ignore-all lint/suspicious/noTemplateCurlyInString: ignore */\nimport { SITE } from \"@/constants\";\n\nconst getIc"
},
{
"path": "hooks/use-touch-device.ts",
"chars": 517,
"preview": "\"use client\";\n\nimport { useEffect, useState } from \"react\";\n\nconst useTouchDevice = (): boolean => {\n const [isTouchDev"
},
{
"path": "icons/a-arrow-down.tsx",
"chars": 2919,
"preview": "\"use client\";\n\nimport type { Variants } from \"motion/react\";\nimport { motion, useAnimation } from \"motion/react\";\nimport"
},
{
"path": "icons/a-arrow-up.tsx",
"chars": 2904,
"preview": "\"use client\";\n\nimport type { Variants } from \"motion/react\";\nimport { motion, useAnimation } from \"motion/react\";\nimport"
},
{
"path": "icons/accessibility.tsx",
"chars": 3803,
"preview": "\"use client\";\n\nimport type { Variants } from \"motion/react\";\nimport { motion, useAnimation } from \"motion/react\";\nimport"
},
{
"path": "icons/activity.tsx",
"chars": 2661,
"preview": "\"use client\";\n\nimport type { Variants } from \"motion/react\";\nimport { motion, useAnimation } from \"motion/react\";\nimport"
},
{
"path": "icons/air-vent.tsx",
"chars": 3000,
"preview": "\"use client\";\n\nimport type { Variants } from \"motion/react\";\nimport { motion, useAnimation } from \"motion/react\";\nimport"
},
{
"path": "icons/airplane.tsx",
"chars": 3746,
"preview": "\"use client\";\n\nimport { motion, useAnimation } from \"motion/react\";\nimport type { HTMLAttributes } from \"react\";\nimport "
},
{
"path": "icons/airplay.tsx",
"chars": 3030,
"preview": "\"use client\";\n\nimport { easeInOut, easeOut, motion, useAnimation } from \"motion/react\";\nimport type { HTMLAttributes } f"
},
{
"path": "icons/alarm-clock.tsx",
"chars": 4240,
"preview": "\"use client\";\n\nimport type { Variants } from \"motion/react\";\nimport { motion, useAnimation } from \"motion/react\";\nimport"
},
{
"path": "icons/align-center.tsx",
"chars": 2495,
"preview": "\"use client\";\n\nimport { motion, useAnimation } from \"motion/react\";\nimport type { HTMLAttributes } from \"react\";\nimport "
},
{
"path": "icons/align-horizontal.tsx",
"chars": 2999,
"preview": "\"use client\";\n\nimport type { Transition } from \"motion/react\";\nimport { motion, useAnimation } from \"motion/react\";\nimpo"
},
{
"path": "icons/align-left.tsx",
"chars": 3034,
"preview": "\"use client\";\n\nimport type { Transition } from \"motion/react\";\nimport { motion, useAnimation } from \"motion/react\";\nimpo"
},
{
"path": "icons/align-right.tsx",
"chars": 3037,
"preview": "\"use client\";\n\nimport type { Transition } from \"motion/react\";\nimport { motion, useAnimation } from \"motion/react\";\nimpo"
},
{
"path": "icons/align-vertical.tsx",
"chars": 2982,
"preview": "\"use client\";\n\nimport type { Transition } from \"motion/react\";\nimport { motion, useAnimation } from \"motion/react\";\nimpo"
},
{
"path": "icons/ambulance.tsx",
"chars": 5107,
"preview": "\"use client\";\n\nimport type { Variants } from \"motion/react\";\nimport { motion, useAnimation } from \"motion/react\";\nimport"
},
{
"path": "icons/angry.tsx",
"chars": 3875,
"preview": "\"use client\";\n\nimport type { Variants } from \"motion/react\";\nimport { motion, useAnimation } from \"motion/react\";\nimport"
},
{
"path": "icons/annoyed.tsx",
"chars": 3856,
"preview": "\"use client\";\n\nimport type { Variants } from \"motion/react\";\nimport { motion, useAnimation } from \"motion/react\";\nimport"
},
{
"path": "icons/archive.tsx",
"chars": 3148,
"preview": "\"use client\";\n\nimport type { Variants } from \"motion/react\";\nimport { motion, useAnimation } from \"motion/react\";\nimport"
},
{
"path": "icons/arrow-big-down-dash.tsx",
"chars": 2516,
"preview": "\"use client\";\n\nimport type { Variants } from \"motion/react\";\nimport { motion, useAnimation } from \"motion/react\";\nimport"
},
{
"path": "icons/arrow-big-down.tsx",
"chars": 2315,
"preview": "\"use client\";\n\nimport type { Variants } from \"motion/react\";\nimport { motion, useAnimation } from \"motion/react\";\nimport"
},
{
"path": "icons/arrow-big-left-dash.tsx",
"chars": 2523,
"preview": "\"use client\";\n\nimport type { Variants } from \"motion/react\";\nimport { motion, useAnimation } from \"motion/react\";\nimport"
},
{
"path": "icons/arrow-big-left.tsx",
"chars": 2321,
"preview": "\"use client\";\n\nimport type { Variants } from \"motion/react\";\nimport { motion, useAnimation } from \"motion/react\";\nimport"
},
{
"path": "icons/arrow-big-right-dash.tsx",
"chars": 2524,
"preview": "\"use client\";\n\nimport type { Variants } from \"motion/react\";\nimport { motion, useAnimation } from \"motion/react\";\nimport"
},
{
"path": "icons/arrow-big-right.tsx",
"chars": 2319,
"preview": "\"use client\";\n\nimport type { Variants } from \"motion/react\";\nimport { motion, useAnimation } from \"motion/react\";\nimport"
},
{
"path": "icons/arrow-big-up-dash.tsx",
"chars": 2505,
"preview": "\"use client\";\n\nimport type { Variants } from \"motion/react\";\nimport { motion, useAnimation } from \"motion/react\";\nimport"
},
{
"path": "icons/arrow-big-up.tsx",
"chars": 2412,
"preview": "\"use client\";\n\nimport type { Variants } from \"motion/react\";\nimport { motion, useAnimation } from \"motion/react\";\nimport"
},
{
"path": "icons/arrow-down-0-1.tsx",
"chars": 2946,
"preview": "\"use client\";\n\nimport type { Transition, Variants } from \"motion/react\";\nimport { motion, useAnimation } from \"motion/re"
},
{
"path": "icons/arrow-down-1-0.tsx",
"chars": 2947,
"preview": "\"use client\";\n\nimport type { Transition, Variants } from \"motion/react\";\nimport { motion, useAnimation } from \"motion/re"
},
{
"path": "icons/arrow-down-a-z.tsx",
"chars": 2897,
"preview": "\"use client\";\n\nimport type { Transition, Variants } from \"motion/react\";\nimport { motion, useAnimation } from \"motion/re"
},
{
"path": "icons/arrow-down-left.tsx",
"chars": 2691,
"preview": "\"use client\";\n\nimport type { Variants } from \"motion/react\";\nimport { motion, useAnimation } from \"motion/react\";\nimport"
},
{
"path": "icons/arrow-down-right.tsx",
"chars": 2790,
"preview": "\"use client\";\n\nimport type { Variants } from \"motion/react\";\nimport { motion, useAnimation } from \"motion/react\";\nimport"
},
{
"path": "icons/arrow-down-z-a.tsx",
"chars": 2898,
"preview": "\"use client\";\n\nimport type { Transition, Variants } from \"motion/react\";\nimport { motion, useAnimation } from \"motion/re"
},
{
"path": "icons/arrow-down.tsx",
"chars": 2687,
"preview": "\"use client\";\n\nimport type { Variants } from \"motion/react\";\nimport { motion, useAnimation } from \"motion/react\";\nimport"
},
{
"path": "icons/arrow-left.tsx",
"chars": 2688,
"preview": "\"use client\";\n\nimport type { Variants } from \"motion/react\";\nimport { motion, useAnimation } from \"motion/react\";\nimport"
},
{
"path": "icons/arrow-right.tsx",
"chars": 2698,
"preview": "\"use client\";\n\nimport type { Variants } from \"motion/react\";\nimport { motion, useAnimation } from \"motion/react\";\nimport"
},
{
"path": "icons/arrow-up-left.tsx",
"chars": 2462,
"preview": "\"use client\";\n\nimport type { Variants } from \"motion/react\";\nimport { motion, useAnimation } from \"motion/react\";\nimport"
},
{
"path": "icons/arrow-up-right.tsx",
"chars": 2374,
"preview": "\"use client\";\n\nimport type { Variants } from \"motion/react\";\nimport { motion, useAnimation } from \"motion/react\";\nimport"
},
{
"path": "icons/arrow-up.tsx",
"chars": 2669,
"preview": "\"use client\";\n\nimport type { Variants } from \"motion/react\";\nimport { motion, useAnimation } from \"motion/react\";\nimport"
},
{
"path": "icons/at-sign.tsx",
"chars": 3063,
"preview": "\"use client\";\n\nimport type { Variants } from \"motion/react\";\nimport { motion, useAnimation } from \"motion/react\";\nimport"
},
{
"path": "icons/atom.tsx",
"chars": 3140,
"preview": "\"use client\";\n\nimport type { Variants } from \"motion/react\";\nimport { motion, useAnimation } from \"motion/react\";\nimport"
},
{
"path": "icons/attach-file.tsx",
"chars": 2675,
"preview": "\"use client\";\n\nimport type { Variants } from \"motion/react\";\nimport { motion, useAnimation } from \"motion/react\";\nimport"
},
{
"path": "icons/audio-lines.tsx",
"chars": 3661,
"preview": "\"use client\";\n\nimport { motion, useAnimation } from \"motion/react\";\nimport type { HTMLAttributes } from \"react\";\nimport "
},
{
"path": "icons/axe.tsx",
"chars": 2758,
"preview": "\"use client\";\n\nimport type { Variants } from \"motion/react\";\nimport { motion, useAnimation } from \"motion/react\";\nimport"
},
{
"path": "icons/badge-alert.tsx",
"chars": 2667,
"preview": "\"use client\";\n\nimport type { Variants } from \"motion/react\";\nimport { motion, useAnimation } from \"motion/react\";\nimport"
},
{
"path": "icons/badge-percent.tsx",
"chars": 2634,
"preview": "\"use client\";\n\nimport type { Variants } from \"motion/react\";\nimport { motion, useAnimation } from \"motion/react\";\nimport"
},
{
"path": "icons/ban.tsx",
"chars": 3104,
"preview": "\"use client\";\n\nimport type { Variants } from \"motion/react\";\nimport { motion, useAnimation } from \"motion/react\";\nimport"
},
{
"path": "icons/banana.tsx",
"chars": 2863,
"preview": "\"use client\";\n\nimport type { Transition, Variants } from \"motion/react\";\nimport { motion, useAnimation } from \"motion/re"
},
{
"path": "icons/battery-charging.tsx",
"chars": 2622,
"preview": "\"use client\";\n\nimport { motion, useAnimation } from \"motion/react\";\nimport type { HTMLAttributes } from \"react\";\nimport "
},
{
"path": "icons/battery-full.tsx",
"chars": 3321,
"preview": "\"use client\";\n\nimport type { Variants } from \"motion/react\";\nimport { motion, useAnimation } from \"motion/react\";\nimport"
},
{
"path": "icons/battery-low.tsx",
"chars": 2839,
"preview": "\"use client\";\n\nimport type { Variants } from \"motion/react\";\nimport { motion, useAnimation } from \"motion/react\";\nimport"
},
{
"path": "icons/battery-medium.tsx",
"chars": 2948,
"preview": "\"use client\";\n\nimport type { Variants } from \"motion/react\";\nimport { motion, useAnimation } from \"motion/react\";\nimport"
},
{
"path": "icons/battery-plus.tsx",
"chars": 2738,
"preview": "\"use client\";\n\nimport { motion, useAnimation } from \"motion/react\";\nimport type { HTMLAttributes } from \"react\";\nimport "
},
{
"path": "icons/battery-warning.tsx",
"chars": 2649,
"preview": "\"use client\";\n\nimport { motion, useAnimation } from \"motion/react\";\nimport type { HTMLAttributes } from \"react\";\nimport "
},
{
"path": "icons/battery.tsx",
"chars": 2541,
"preview": "\"use client\";\n\nimport { motion, useAnimation } from \"motion/react\";\nimport type { HTMLAttributes } from \"react\";\nimport "
},
{
"path": "icons/bell-electric.tsx",
"chars": 3600,
"preview": "\"use client\";\n\nimport { motion, useAnimation } from \"motion/react\";\nimport type { HTMLAttributes } from \"react\";\nimport "
},
{
"path": "icons/bell.tsx",
"chars": 2386,
"preview": "\"use client\";\n\nimport type { Variants } from \"motion/react\";\nimport { motion, useAnimation } from \"motion/react\";\nimport"
},
{
"path": "icons/blocks.tsx",
"chars": 2372,
"preview": "\"use client\";\n\nimport type { Variants } from \"motion/react\";\nimport { motion, useAnimation } from \"motion/react\";\nimport"
},
{
"path": "icons/bluetooth-connected.tsx",
"chars": 3212,
"preview": "\"use client\";\n\nimport type { Variants } from \"motion/react\";\nimport { motion, useAnimation } from \"motion/react\";\nimport"
},
{
"path": "icons/bluetooth-off.tsx",
"chars": 2882,
"preview": "\"use client\";\n\nimport type { Variants } from \"motion/react\";\nimport { motion, useAnimation } from \"motion/react\";\nimport"
},
{
"path": "icons/bluetooth-searching.tsx",
"chars": 2968,
"preview": "\"use client\";\n\nimport type { Variants } from \"motion/react\";\nimport { motion, useAnimation } from \"motion/react\";\nimport"
},
{
"path": "icons/bluetooth.tsx",
"chars": 2558,
"preview": "\"use client\";\n\nimport type { Variants } from \"motion/react\";\nimport { motion, useAnimation } from \"motion/react\";\nimport"
},
{
"path": "icons/bold.tsx",
"chars": 2336,
"preview": "\"use client\";\n\nimport type { Variants } from \"motion/react\";\nimport { motion, useAnimation } from \"motion/react\";\nimport"
},
{
"path": "icons/bone.tsx",
"chars": 2498,
"preview": "\"use client\";\n\nimport type { Variants } from \"motion/react\";\nimport { motion, useAnimation } from \"motion/react\";\nimport"
},
{
"path": "icons/book-text.tsx",
"chars": 2630,
"preview": "\"use client\";\n\nimport { motion, useAnimation } from \"motion/react\";\nimport type { HTMLAttributes } from \"react\";\nimport "
},
{
"path": "icons/bookmark-check.tsx",
"chars": 2843,
"preview": "\"use client\";\n\nimport type { Variants } from \"motion/react\";\nimport { motion, useAnimation } from \"motion/react\";\nimport"
},
{
"path": "icons/bookmark-minus.tsx",
"chars": 2884,
"preview": "\"use client\";\n\nimport type { Variants } from \"motion/react\";\nimport { motion, useAnimation } from \"motion/react\";\nimport"
},
{
"path": "icons/bookmark-plus.tsx",
"chars": 3221,
"preview": "\"use client\";\n\nimport type { Variants } from \"motion/react\";\nimport { motion, useAnimation } from \"motion/react\";\nimport"
},
{
"path": "icons/bookmark-x.tsx",
"chars": 3247,
"preview": "\"use client\";\n\nimport type { Variants } from \"motion/react\";\nimport { motion, useAnimation } from \"motion/react\";\nimport"
},
{
"path": "icons/bookmark.tsx",
"chars": 2484,
"preview": "\"use client\";\n\nimport type { Variants } from \"motion/react\";\nimport { motion, useAnimation } from \"motion/react\";\nimport"
},
{
"path": "icons/bot-message-square.tsx",
"chars": 4589,
"preview": "\"use client\";\n\nimport { motion, useAnimation } from \"motion/react\";\nimport type { HTMLAttributes } from \"react\";\nimport "
},
{
"path": "icons/bot.tsx",
"chars": 3040,
"preview": "\"use client\";\n\nimport { motion, useAnimation } from \"motion/react\";\nimport type { HTMLAttributes } from \"react\";\nimport "
},
{
"path": "icons/box.tsx",
"chars": 2888,
"preview": "\"use client\";\n\nimport type { Variants } from \"motion/react\";\nimport { motion, useAnimation } from \"motion/react\";\nimport"
},
{
"path": "icons/boxes.tsx",
"chars": 3149,
"preview": "\"use client\";\n\nimport { motion, useAnimation } from \"motion/react\";\nimport type { HTMLAttributes } from \"react\";\nimport "
},
{
"path": "icons/brain.tsx",
"chars": 4828,
"preview": "\"use client\";\n\nimport type { Variants } from \"motion/react\";\nimport { motion, useAnimation } from \"motion/react\";\nimport"
},
{
"path": "icons/calendar-check-2.tsx",
"chars": 2670,
"preview": "\"use client\";\n\nimport type { Variants } from \"motion/react\";\nimport { motion, useAnimation } from \"motion/react\";\nimport"
},
{
"path": "icons/calendar-check.tsx",
"chars": 2641,
"preview": "\"use client\";\n\nimport type { Variants } from \"motion/react\";\nimport { motion, useAnimation } from \"motion/react\";\nimport"
},
{
"path": "icons/calendar-cog.tsx",
"chars": 2877,
"preview": "\"use client\";\n\nimport type { Variants } from \"motion/react\";\nimport { motion, useAnimation } from \"motion/react\";\nimport"
},
{
"path": "icons/calendar-days.tsx",
"chars": 2981,
"preview": "\"use client\";\n\nimport type { Variants } from \"motion/react\";\nimport { AnimatePresence, motion, useAnimation } from \"moti"
},
{
"path": "icons/cart.tsx",
"chars": 2638,
"preview": "\"use client\";\n\nimport type { Variants } from \"motion/react\";\nimport { motion, useAnimation } from \"motion/react\";\nimport"
},
{
"path": "icons/cast.tsx",
"chars": 2779,
"preview": "\"use client\";\n\nimport type { Variants } from \"motion/react\";\nimport { motion, useAnimation } from \"motion/react\";\nimport"
},
{
"path": "icons/cctv.tsx",
"chars": 3137,
"preview": "\"use client\";\n\nimport type { Variants } from \"motion/react\";\nimport { motion, useAnimation } from \"motion/react\";\nimport"
},
{
"path": "icons/chart-bar-decreasing.tsx",
"chars": 3256,
"preview": "\"use client\";\n\nimport type { Variants } from \"motion/react\";\nimport { motion, useAnimation } from \"motion/react\";\nimport"
},
{
"path": "icons/chart-bar-increasing.tsx",
"chars": 3256,
"preview": "\"use client\";\n\nimport type { Variants } from \"motion/react\";\nimport { motion, useAnimation } from \"motion/react\";\nimport"
},
{
"path": "icons/chart-column-decreasing.tsx",
"chars": 3285,
"preview": "\"use client\";\n\nimport type { Variants } from \"motion/react\";\nimport { motion, useAnimation } from \"motion/react\";\nimport"
},
{
"path": "icons/chart-column-increasing.tsx",
"chars": 3285,
"preview": "\"use client\";\n\nimport type { Variants } from \"motion/react\";\nimport { motion, useAnimation } from \"motion/react\";\nimport"
},
{
"path": "icons/chart-line.tsx",
"chars": 2454,
"preview": "\"use client\";\n\nimport type { Variants } from \"motion/react\";\nimport { motion, useAnimation } from \"motion/react\";\nimport"
},
{
"path": "icons/chart-no-axes-column-decreasing.tsx",
"chars": 3288,
"preview": "\"use client\";\n\nimport type { Variants } from \"motion/react\";\nimport { motion, useAnimation } from \"motion/react\";\nimport"
},
{
"path": "icons/chart-no-axes-column-increasing.tsx",
"chars": 3291,
"preview": "\"use client\";\n\nimport type { Variants } from \"motion/react\";\nimport { motion, useAnimation } from \"motion/react\";\nimport"
},
{
"path": "icons/chart-pie.tsx",
"chars": 2584,
"preview": "\"use client\";\n\nimport type { Variants } from \"motion/react\";\nimport { motion, useAnimation } from \"motion/react\";\nimport"
},
{
"path": "icons/chart-scatter.tsx",
"chars": 3364,
"preview": "\"use client\";\n\nimport type { Variants } from \"motion/react\";\nimport { motion, useAnimation } from \"motion/react\";\nimport"
},
{
"path": "icons/chart-spline.tsx",
"chars": 2501,
"preview": "\"use client\";\n\nimport type { Variants } from \"motion/react\";\nimport { motion, useAnimation } from \"motion/react\";\nimport"
},
{
"path": "icons/check-check.tsx",
"chars": 2817,
"preview": "\"use client\";\n\nimport type { Variants } from \"motion/react\";\nimport { motion, useAnimation } from \"motion/react\";\nimport"
},
{
"path": "icons/check.tsx",
"chars": 2510,
"preview": "\"use client\";\n\nimport type { Variants } from \"motion/react\";\nimport { motion, useAnimation } from \"motion/react\";\nimport"
},
{
"path": "icons/chess-bishop.tsx",
"chars": 3061,
"preview": "\"use client\";\n\nimport { motion, useAnimation, type Variants } from \"motion/react\";\nimport type { HTMLAttributes } from \""
},
{
"path": "icons/chess-king.tsx",
"chars": 2999,
"preview": "\"use client\";\n\nimport { motion, useAnimation, type Variants } from \"motion/react\";\nimport type { HTMLAttributes } from \""
},
{
"path": "icons/chess-knight.tsx",
"chars": 3007,
"preview": "\"use client\";\n\nimport { motion, useAnimation, type Variants } from \"motion/react\";\nimport type { HTMLAttributes, MouseEv"
},
{
"path": "icons/chess-pawn.tsx",
"chars": 3702,
"preview": "\"use client\";\n\nimport { motion, useAnimation, type Variants } from \"motion/react\";\nimport type { HTMLAttributes } from \""
},
{
"path": "icons/chevron-down.tsx",
"chars": 2382,
"preview": "\"use client\";\n\nimport type { Transition } from \"motion/react\";\nimport { motion, useAnimation } from \"motion/react\";\nimpo"
},
{
"path": "icons/chevron-first.tsx",
"chars": 2451,
"preview": "\"use client\";\n\nimport { motion, useAnimation } from \"motion/react\";\nimport type { HTMLAttributes } from \"react\";\nimport "
},
{
"path": "icons/chevron-left.tsx",
"chars": 2385,
"preview": "\"use client\";\n\nimport type { Transition } from \"motion/react\";\nimport { motion, useAnimation } from \"motion/react\";\nimpo"
},
{
"path": "icons/chevron-right.tsx",
"chars": 2273,
"preview": "\"use client\";\n\nimport type { Transition } from \"motion/react\";\nimport { motion, useAnimation } from \"motion/react\";\nimpo"
},
{
"path": "icons/chevron-up.tsx",
"chars": 2369,
"preview": "\"use client\";\n\nimport type { Transition } from \"motion/react\";\nimport { motion, useAnimation } from \"motion/react\";\nimpo"
},
{
"path": "icons/chevrons-down-up.tsx",
"chars": 2625,
"preview": "\"use client\";\n\nimport type { Transition } from \"motion/react\";\nimport { motion, useAnimation } from \"motion/react\";\nimpo"
},
{
"path": "icons/chevrons-left-right.tsx",
"chars": 2649,
"preview": "\"use client\";\n\nimport type { Transition } from \"motion/react\";\nimport { motion, useAnimation } from \"motion/react\";\nimpo"
},
{
"path": "icons/chevrons-right-left.tsx",
"chars": 2651,
"preview": "\"use client\";\n\nimport type { Transition } from \"motion/react\";\nimport { motion, useAnimation } from \"motion/react\";\nimpo"
},
{
"path": "icons/chevrons-up-down.tsx",
"chars": 2625,
"preview": "\"use client\";\n\nimport type { Transition } from \"motion/react\";\nimport { motion, useAnimation } from \"motion/react\";\nimpo"
},
{
"path": "icons/chrome.tsx",
"chars": 3190,
"preview": "\"use client\";\n\nimport type { Transition, Variants } from \"motion/react\";\nimport { motion, useAnimation } from \"motion/re"
},
{
"path": "icons/circle-check.tsx",
"chars": 2565,
"preview": "\"use client\";\n\nimport type { Variants } from \"motion/react\";\nimport { motion, useAnimation } from \"motion/react\";\nimport"
},
{
"path": "icons/circle-chevron-down.tsx",
"chars": 2384,
"preview": "\"use client\";\n\nimport type { Transition } from \"motion/react\";\nimport { motion, useAnimation } from \"motion/react\";\nimpo"
},
{
"path": "icons/circle-chevron-left.tsx",
"chars": 2358,
"preview": "\"use client\";\n\nimport type { Transition } from \"motion/react\";\nimport { motion, useAnimation } from \"motion/react\";\nimpo"
},
{
"path": "icons/circle-chevron-right.tsx",
"chars": 2364,
"preview": "\"use client\";\n\nimport type { Transition } from \"motion/react\";\nimport { motion, useAnimation } from \"motion/react\";\nimpo"
},
{
"path": "icons/circle-chevron-up.tsx",
"chars": 2368,
"preview": "\"use client\";\n\nimport type { Transition } from \"motion/react\";\nimport { motion, useAnimation } from \"motion/react\";\nimpo"
},
{
"path": "icons/circle-dashed.tsx",
"chars": 2716,
"preview": "\"use client\";\n\nimport type { Variants } from \"motion/react\";\nimport { motion, useAnimation } from \"motion/react\";\nimport"
},
{
"path": "icons/circle-dollar-sign.tsx",
"chars": 3118,
"preview": "\"use client\";\n\nimport type { Variants } from \"motion/react\";\nimport { motion, useAnimation } from \"motion/react\";\nimport"
},
{
"path": "icons/circle-help.tsx",
"chars": 2502,
"preview": "\"use client\";\n\nimport type { Variants } from \"motion/react\";\nimport { motion, useAnimation } from \"motion/react\";\nimport"
},
{
"path": "icons/clap.tsx",
"chars": 2964,
"preview": "\"use client\";\n\nimport type { Variants } from \"motion/react\";\nimport { motion, useAnimation } from \"motion/react\";\nimport"
},
{
"path": "icons/clipboard-check.tsx",
"chars": 2661,
"preview": "\"use client\";\n\nimport type { Variants } from \"motion/react\";\nimport { motion, useAnimation } from \"motion/react\";\nimport"
},
{
"path": "icons/clock.tsx",
"chars": 3122,
"preview": "\"use client\";\n\nimport type { Transition, Variants } from \"motion/react\";\nimport { motion, useAnimation } from \"motion/re"
},
{
"path": "icons/cloud-cog.tsx",
"chars": 2752,
"preview": "\"use client\";\n\nimport type { Variants } from \"motion/react\";\nimport { motion, useAnimation } from \"motion/react\";\nimport"
},
{
"path": "icons/cloud-download.tsx",
"chars": 2407,
"preview": "\"use client\";\n\nimport type { Variants } from \"motion/react\";\nimport { motion, useAnimation } from \"motion/react\";\nimport"
},
{
"path": "icons/cloud-lightning.tsx",
"chars": 2423,
"preview": "\"use client\";\n\nimport { motion, useAnimation } from \"motion/react\";\nimport type { HTMLAttributes } from \"react\";\nimport "
},
{
"path": "icons/cloud-rain-wind.tsx",
"chars": 2693,
"preview": "\"use client\";\n\nimport type { Variants } from \"motion/react\";\nimport { motion, useAnimation } from \"motion/react\";\nimport"
},
{
"path": "icons/cloud-rain.tsx",
"chars": 2813,
"preview": "\"use client\";\n\nimport type { Variants } from \"motion/react\";\nimport { motion, useAnimation } from \"motion/react\";\nimport"
},
{
"path": "icons/cloud-snow.tsx",
"chars": 3101,
"preview": "\"use client\";\n\nimport type { Variants } from \"motion/react\";\nimport { motion, useAnimation } from \"motion/react\";\nimport"
},
{
"path": "icons/cloud-sun.tsx",
"chars": 3428,
"preview": "\"use client\";\n\nimport type { Variants } from \"motion/react\";\nimport { motion, useAnimation } from \"motion/react\";\nimport"
},
{
"path": "icons/cloud-upload.tsx",
"chars": 2514,
"preview": "\"use client\";\n\nimport type { Variants } from \"motion/react\";\nimport { motion, useAnimation } from \"motion/react\";\nimport"
},
{
"path": "icons/coffee.tsx",
"chars": 2908,
"preview": "\"use client\";\n\nimport type { Variants } from \"motion/react\";\nimport { motion, useAnimation } from \"motion/react\";\nimport"
},
{
"path": "icons/cog.tsx",
"chars": 2771,
"preview": "\"use client\";\n\nimport { motion, useAnimation } from \"motion/react\";\nimport type { HTMLAttributes } from \"react\";\nimport "
},
{
"path": "icons/compass.tsx",
"chars": 2463,
"preview": "\"use client\";\n\nimport { motion, useAnimation } from \"motion/react\";\nimport type { HTMLAttributes } from \"react\";\nimport "
},
{
"path": "icons/connect.tsx",
"chars": 4220,
"preview": "\"use client\";\n\nimport type { Variants } from \"motion/react\";\nimport { motion, useAnimation } from \"motion/react\";\nimport"
},
{
"path": "icons/construction.tsx",
"chars": 2823,
"preview": "\"use client\";\n\nimport { motion, useAnimation } from \"motion/react\";\nimport type { HTMLAttributes } from \"react\";\nimport "
},
{
"path": "icons/contrast.tsx",
"chars": 2458,
"preview": "\"use client\";\n\nimport type { Variants } from \"motion/react\";\nimport { motion, useAnimation } from \"motion/react\";\nimport"
},
{
"path": "icons/cooking-pot.tsx",
"chars": 3051,
"preview": "\"use client\";\n\nimport type { Variants } from \"motion/react\";\nimport { motion, useAnimation } from \"motion/react\";\nimport"
},
{
"path": "icons/copy.tsx",
"chars": 2782,
"preview": "\"use client\";\n\nimport type { Transition } from \"motion/react\";\nimport { motion, useAnimation } from \"motion/react\";\nimpo"
},
{
"path": "icons/corner-down-left.tsx",
"chars": 2370,
"preview": "\"use client\";\n\nimport type { Variants } from \"motion/react\";\nimport { motion, useAnimation } from \"motion/react\";\nimport"
},
{
"path": "icons/corner-down-right.tsx",
"chars": 2377,
"preview": "\"use client\";\n\nimport type { Variants } from \"motion/react\";\nimport { motion, useAnimation } from \"motion/react\";\nimport"
},
{
"path": "icons/corner-left-down.tsx",
"chars": 2371,
"preview": "\"use client\";\n\nimport type { Variants } from \"motion/react\";\nimport { motion, useAnimation } from \"motion/react\";\nimport"
},
{
"path": "icons/corner-left-up.tsx",
"chars": 2355,
"preview": "\"use client\";\n\nimport type { Variants } from \"motion/react\";\nimport { motion, useAnimation } from \"motion/react\";\nimport"
},
{
"path": "icons/corner-right-down.tsx",
"chars": 2377,
"preview": "\"use client\";\n\nimport type { Variants } from \"motion/react\";\nimport { motion, useAnimation } from \"motion/react\";\nimport"
},
{
"path": "icons/corner-right-up.tsx",
"chars": 2361,
"preview": "\"use client\";\n\nimport type { Variants } from \"motion/react\";\nimport { motion, useAnimation } from \"motion/react\";\nimport"
},
{
"path": "icons/corner-up-left.tsx",
"chars": 2355,
"preview": "\"use client\";\n\nimport type { Variants } from \"motion/react\";\nimport { motion, useAnimation } from \"motion/react\";\nimport"
},
{
"path": "icons/corner-up-right.tsx",
"chars": 2363,
"preview": "\"use client\";\n\nimport type { Variants } from \"motion/react\";\nimport { motion, useAnimation } from \"motion/react\";\nimport"
},
{
"path": "icons/cpu.tsx",
"chars": 3819,
"preview": "\"use client\";\n\nimport type { Transition, Variants } from \"motion/react\";\nimport { motion, useAnimation } from \"motion/re"
},
{
"path": "icons/cup-soda.tsx",
"chars": 4372,
"preview": "\"use client\";\n\nimport type { Variants } from \"motion/react\";\nimport { motion, useAnimation } from \"motion/react\";\nimport"
},
{
"path": "icons/cursor-click.tsx",
"chars": 3877,
"preview": "\"use client\";\n\nimport type { Variants } from \"motion/react\";\nimport { motion, useAnimation } from \"motion/react\";\nimport"
},
{
"path": "icons/database-backup.tsx",
"chars": 2525,
"preview": "\"use client\";\n\nimport { motion, useAnimation } from \"motion/react\";\nimport type { HTMLAttributes } from \"react\";\nimport "
},
{
"path": "icons/delete.tsx",
"chars": 3430,
"preview": "\"use client\";\n\nimport type { Transition, Variants } from \"motion/react\";\nimport { motion, useAnimation } from \"motion/re"
},
{
"path": "icons/disc-3.tsx",
"chars": 2456,
"preview": "\"use client\";\n\nimport { motion, useAnimation } from \"motion/react\";\nimport type { HTMLAttributes } from \"react\";\nimport "
},
{
"path": "icons/discord.tsx",
"chars": 3813,
"preview": "\"use client\";\n\nimport type { Variants } from \"motion/react\";\nimport { motion, useAnimation } from \"motion/react\";\nimport"
},
{
"path": "icons/dollar-sign.tsx",
"chars": 3165,
"preview": "\"use client\";\n\nimport type { Variants } from \"motion/react\";\nimport { motion, useAnimation } from \"motion/react\";\nimport"
},
{
"path": "icons/download.tsx",
"chars": 2467,
"preview": "\"use client\";\n\nimport type { Variants } from \"motion/react\";\nimport { motion, useAnimation } from \"motion/react\";\nimport"
},
{
"path": "icons/downvote.tsx",
"chars": 2601,
"preview": "\"use client\";\n\nimport { motion, useAnimation } from \"motion/react\";\nimport type { HTMLAttributes } from \"react\";\nimport "
},
{
"path": "icons/dribbble.tsx",
"chars": 4463,
"preview": "\"use client\";\n\nimport type { Variants } from \"motion/react\";\nimport { motion, useAnimation } from \"motion/react\";\nimport"
}
]
// ... and 669 more files (download for full content)
About this extraction
This page contains the full source code of the pqoqubbw/icons GitHub repository, extracted and formatted as plain text for AI agents and large language models (LLMs). The extraction includes 869 files (3.2 MB), approximately 863.8k tokens, and a symbol index with 1380 extracted functions, classes, methods, constants, and types. Use this with OpenClaw, Claude, ChatGPT, Cursor, Windsurf, or any other AI tool that accepts text input. You can copy the full output to your clipboard or download it as a .txt file.
Extracted by GitExtract — free GitHub repo to text converter for AI. Built by Nikandr Surkov.