@loomidev/icons 0.9.0 → 0.10.0
This diff represents the content of publicly available package versions that have been released to one of the supported registries. The information contained in this diff is provided for informational purposes only and reflects changes between package versions as they appear in their respective public registries.
- package/README.md +156 -35
- package/custom-elements.json +274 -6
- package/dist/all.d.ts +2 -0
- package/dist/all.d.ts.map +1 -0
- package/dist/all.js +11 -0
- package/dist/all.js.map +1 -0
- package/dist/directive.d.ts +19 -0
- package/dist/directive.d.ts.map +1 -0
- package/dist/directive.js +39 -0
- package/dist/directive.js.map +1 -0
- package/dist/disk-icons.d.ts +22 -3
- package/dist/disk-icons.d.ts.map +1 -1
- package/dist/disk-icons.js +45 -18
- package/dist/disk-icons.js.map +1 -1
- package/dist/generated/sources/iconsax.d.ts +2 -0
- package/dist/generated/sources/iconsax.d.ts.map +1 -0
- package/dist/generated/sources/iconsax.js +20 -0
- package/dist/generated/sources/iconsax.js.map +1 -0
- package/dist/generated/sources/untitledui.d.ts +2 -0
- package/dist/generated/sources/untitledui.d.ts.map +1 -0
- package/dist/generated/sources/untitledui.js +12 -0
- package/dist/generated/sources/untitledui.js.map +1 -0
- package/dist/heroicons/icon-module.d.ts +5 -0
- package/dist/heroicons/loaders.js +656 -0
- package/dist/heroicons/names.js +3 -0
- package/dist/heroicons/outline/academic-cap.js +3 -0
- package/dist/heroicons/outline/adjustments-horizontal.js +3 -0
- package/dist/heroicons/outline/adjustments-vertical.js +3 -0
- package/dist/heroicons/outline/all.js +652 -0
- package/dist/heroicons/outline/archive-box-arrow-down.js +3 -0
- package/dist/heroicons/outline/archive-box-x-mark.js +3 -0
- package/dist/heroicons/outline/archive-box.js +3 -0
- package/dist/heroicons/outline/arrow-down-circle.js +3 -0
- package/dist/heroicons/outline/arrow-down-left.js +3 -0
- package/dist/heroicons/outline/arrow-down-on-square-stack.js +3 -0
- package/dist/heroicons/outline/arrow-down-on-square.js +3 -0
- package/dist/heroicons/outline/arrow-down-right.js +3 -0
- package/dist/heroicons/outline/arrow-down-tray.js +3 -0
- package/dist/heroicons/outline/arrow-down.js +3 -0
- package/dist/heroicons/outline/arrow-left-circle.js +3 -0
- package/dist/heroicons/outline/arrow-left-end-on-rectangle.js +3 -0
- package/dist/heroicons/outline/arrow-left-on-rectangle.js +3 -0
- package/dist/heroicons/outline/arrow-left-start-on-rectangle.js +3 -0
- package/dist/heroicons/outline/arrow-left.js +3 -0
- package/dist/heroicons/outline/arrow-long-down.js +3 -0
- package/dist/heroicons/outline/arrow-long-left.js +3 -0
- package/dist/heroicons/outline/arrow-long-right.js +3 -0
- package/dist/heroicons/outline/arrow-long-up.js +3 -0
- package/dist/heroicons/outline/arrow-path-rounded-square.js +3 -0
- package/dist/heroicons/outline/arrow-path.js +3 -0
- package/dist/heroicons/outline/arrow-right-circle.js +3 -0
- package/dist/heroicons/outline/arrow-right-end-on-rectangle.js +3 -0
- package/dist/heroicons/outline/arrow-right-on-rectangle.js +3 -0
- package/dist/heroicons/outline/arrow-right-start-on-rectangle.js +3 -0
- package/dist/heroicons/outline/arrow-right.js +3 -0
- package/dist/heroicons/outline/arrow-small-down.js +3 -0
- package/dist/heroicons/outline/arrow-small-left.js +3 -0
- package/dist/heroicons/outline/arrow-small-right.js +3 -0
- package/dist/heroicons/outline/arrow-small-up.js +3 -0
- package/dist/heroicons/outline/arrow-top-right-on-square.js +3 -0
- package/dist/heroicons/outline/arrow-trending-down.js +3 -0
- package/dist/heroicons/outline/arrow-trending-up.js +3 -0
- package/dist/heroicons/outline/arrow-turn-down-left.js +3 -0
- package/dist/heroicons/outline/arrow-turn-down-right.js +3 -0
- package/dist/heroicons/outline/arrow-turn-left-down.js +3 -0
- package/dist/heroicons/outline/arrow-turn-left-up.js +3 -0
- package/dist/heroicons/outline/arrow-turn-right-down.js +3 -0
- package/dist/heroicons/outline/arrow-turn-right-up.js +3 -0
- package/dist/heroicons/outline/arrow-turn-up-left.js +3 -0
- package/dist/heroicons/outline/arrow-turn-up-right.js +3 -0
- package/dist/heroicons/outline/arrow-up-circle.js +3 -0
- package/dist/heroicons/outline/arrow-up-left.js +3 -0
- package/dist/heroicons/outline/arrow-up-on-square-stack.js +3 -0
- package/dist/heroicons/outline/arrow-up-on-square.js +3 -0
- package/dist/heroicons/outline/arrow-up-right.js +3 -0
- package/dist/heroicons/outline/arrow-up-tray.js +3 -0
- package/dist/heroicons/outline/arrow-up.js +3 -0
- package/dist/heroicons/outline/arrow-uturn-down.js +3 -0
- package/dist/heroicons/outline/arrow-uturn-left.js +3 -0
- package/dist/heroicons/outline/arrow-uturn-right.js +3 -0
- package/dist/heroicons/outline/arrow-uturn-up.js +3 -0
- package/dist/heroicons/outline/arrows-pointing-in.js +3 -0
- package/dist/heroicons/outline/arrows-pointing-out.js +3 -0
- package/dist/heroicons/outline/arrows-right-left.js +3 -0
- package/dist/heroicons/outline/arrows-up-down.js +3 -0
- package/dist/heroicons/outline/at-symbol.js +3 -0
- package/dist/heroicons/outline/backspace.js +3 -0
- package/dist/heroicons/outline/backward.js +3 -0
- package/dist/heroicons/outline/banknotes.js +3 -0
- package/dist/heroicons/outline/bars-2.js +3 -0
- package/dist/heroicons/outline/bars-3-bottom-left.js +3 -0
- package/dist/heroicons/outline/bars-3-bottom-right.js +3 -0
- package/dist/heroicons/outline/bars-3-center-left.js +3 -0
- package/dist/heroicons/outline/bars-3.js +3 -0
- package/dist/heroicons/outline/bars-4.js +3 -0
- package/dist/heroicons/outline/bars-arrow-down.js +3 -0
- package/dist/heroicons/outline/bars-arrow-up.js +3 -0
- package/dist/heroicons/outline/battery-0.js +3 -0
- package/dist/heroicons/outline/battery-100.js +3 -0
- package/dist/heroicons/outline/battery-50.js +3 -0
- package/dist/heroicons/outline/beaker.js +3 -0
- package/dist/heroicons/outline/bell-alert.js +3 -0
- package/dist/heroicons/outline/bell-slash.js +3 -0
- package/dist/heroicons/outline/bell-snooze.js +3 -0
- package/dist/heroicons/outline/bell.js +3 -0
- package/dist/heroicons/outline/bold.js +3 -0
- package/dist/heroicons/outline/bolt-slash.js +3 -0
- package/dist/heroicons/outline/bolt.js +3 -0
- package/dist/heroicons/outline/book-open.js +3 -0
- package/dist/heroicons/outline/bookmark-slash.js +3 -0
- package/dist/heroicons/outline/bookmark-square.js +3 -0
- package/dist/heroicons/outline/bookmark.js +3 -0
- package/dist/heroicons/outline/briefcase.js +3 -0
- package/dist/heroicons/outline/bug-ant.js +3 -0
- package/dist/heroicons/outline/building-library.js +3 -0
- package/dist/heroicons/outline/building-office-2.js +3 -0
- package/dist/heroicons/outline/building-office.js +3 -0
- package/dist/heroicons/outline/building-storefront.js +3 -0
- package/dist/heroicons/outline/cake.js +3 -0
- package/dist/heroicons/outline/calculator.js +3 -0
- package/dist/heroicons/outline/calendar-date-range.js +3 -0
- package/dist/heroicons/outline/calendar-days.js +3 -0
- package/dist/heroicons/outline/calendar.js +3 -0
- package/dist/heroicons/outline/camera.js +3 -0
- package/dist/heroicons/outline/chart-bar-square.js +3 -0
- package/dist/heroicons/outline/chart-bar.js +3 -0
- package/dist/heroicons/outline/chart-pie.js +3 -0
- package/dist/heroicons/outline/chat-bubble-bottom-center-text.js +3 -0
- package/dist/heroicons/outline/chat-bubble-bottom-center.js +3 -0
- package/dist/heroicons/outline/chat-bubble-left-ellipsis.js +3 -0
- package/dist/heroicons/outline/chat-bubble-left-right.js +3 -0
- package/dist/heroicons/outline/chat-bubble-left.js +3 -0
- package/dist/heroicons/outline/chat-bubble-oval-left-ellipsis.js +3 -0
- package/dist/heroicons/outline/chat-bubble-oval-left.js +3 -0
- package/dist/heroicons/outline/check-badge.js +3 -0
- package/dist/heroicons/outline/check-circle.js +3 -0
- package/dist/heroicons/outline/check.js +3 -0
- package/dist/heroicons/outline/chevron-double-down.js +3 -0
- package/dist/heroicons/outline/chevron-double-left.js +3 -0
- package/dist/heroicons/outline/chevron-double-right.js +3 -0
- package/dist/heroicons/outline/chevron-double-up.js +3 -0
- package/dist/heroicons/outline/chevron-down.js +3 -0
- package/dist/heroicons/outline/chevron-left.js +3 -0
- package/dist/heroicons/outline/chevron-right.js +3 -0
- package/dist/heroicons/outline/chevron-up-down.js +3 -0
- package/dist/heroicons/outline/chevron-up.js +3 -0
- package/dist/heroicons/outline/circle-stack.js +3 -0
- package/dist/heroicons/outline/clipboard-document-check.js +3 -0
- package/dist/heroicons/outline/clipboard-document-list.js +3 -0
- package/dist/heroicons/outline/clipboard-document.js +3 -0
- package/dist/heroicons/outline/clipboard.js +3 -0
- package/dist/heroicons/outline/clock.js +3 -0
- package/dist/heroicons/outline/cloud-arrow-down.js +3 -0
- package/dist/heroicons/outline/cloud-arrow-up.js +3 -0
- package/dist/heroicons/outline/cloud.js +3 -0
- package/dist/heroicons/outline/code-bracket-square.js +3 -0
- package/dist/heroicons/outline/code-bracket.js +3 -0
- package/dist/heroicons/outline/cog-6-tooth.js +3 -0
- package/dist/heroicons/outline/cog-8-tooth.js +3 -0
- package/dist/heroicons/outline/cog.js +3 -0
- package/dist/heroicons/outline/command-line.js +3 -0
- package/dist/heroicons/outline/computer-desktop.js +3 -0
- package/dist/heroicons/outline/cpu-chip.js +3 -0
- package/dist/heroicons/outline/credit-card.js +3 -0
- package/dist/heroicons/outline/cube-transparent.js +3 -0
- package/dist/heroicons/outline/cube.js +3 -0
- package/dist/heroicons/outline/currency-bangladeshi.js +3 -0
- package/dist/heroicons/outline/currency-dollar.js +3 -0
- package/dist/heroicons/outline/currency-euro.js +3 -0
- package/dist/heroicons/outline/currency-pound.js +3 -0
- package/dist/heroicons/outline/currency-rupee.js +3 -0
- package/dist/heroicons/outline/currency-yen.js +3 -0
- package/dist/heroicons/outline/cursor-arrow-rays.js +3 -0
- package/dist/heroicons/outline/cursor-arrow-ripple.js +3 -0
- package/dist/heroicons/outline/device-phone-mobile.js +3 -0
- package/dist/heroicons/outline/device-tablet.js +3 -0
- package/dist/heroicons/outline/divide.js +3 -0
- package/dist/heroicons/outline/document-arrow-down.js +3 -0
- package/dist/heroicons/outline/document-arrow-up.js +3 -0
- package/dist/heroicons/outline/document-chart-bar.js +3 -0
- package/dist/heroicons/outline/document-check.js +3 -0
- package/dist/heroicons/outline/document-currency-bangladeshi.js +3 -0
- package/dist/heroicons/outline/document-currency-dollar.js +3 -0
- package/dist/heroicons/outline/document-currency-euro.js +3 -0
- package/dist/heroicons/outline/document-currency-pound.js +3 -0
- package/dist/heroicons/outline/document-currency-rupee.js +3 -0
- package/dist/heroicons/outline/document-currency-yen.js +3 -0
- package/dist/heroicons/outline/document-duplicate.js +3 -0
- package/dist/heroicons/outline/document-magnifying-glass.js +3 -0
- package/dist/heroicons/outline/document-minus.js +3 -0
- package/dist/heroicons/outline/document-plus.js +3 -0
- package/dist/heroicons/outline/document-text.js +3 -0
- package/dist/heroicons/outline/document.js +3 -0
- package/dist/heroicons/outline/ellipsis-horizontal-circle.js +3 -0
- package/dist/heroicons/outline/ellipsis-horizontal.js +3 -0
- package/dist/heroicons/outline/ellipsis-vertical.js +3 -0
- package/dist/heroicons/outline/envelope-open.js +3 -0
- package/dist/heroicons/outline/envelope.js +3 -0
- package/dist/heroicons/outline/equals.js +3 -0
- package/dist/heroicons/outline/exclamation-circle.js +3 -0
- package/dist/heroicons/outline/exclamation-triangle.js +3 -0
- package/dist/heroicons/outline/eye-dropper.js +3 -0
- package/dist/heroicons/outline/eye-slash.js +3 -0
- package/dist/heroicons/outline/eye.js +3 -0
- package/dist/heroicons/outline/face-frown.js +3 -0
- package/dist/heroicons/outline/face-smile.js +3 -0
- package/dist/heroicons/outline/film.js +3 -0
- package/dist/heroicons/outline/finger-print.js +3 -0
- package/dist/heroicons/outline/fire.js +3 -0
- package/dist/heroicons/outline/flag.js +3 -0
- package/dist/heroicons/outline/folder-arrow-down.js +3 -0
- package/dist/heroicons/outline/folder-minus.js +3 -0
- package/dist/heroicons/outline/folder-open.js +3 -0
- package/dist/heroicons/outline/folder-plus.js +3 -0
- package/dist/heroicons/outline/folder.js +3 -0
- package/dist/heroicons/outline/forward.js +3 -0
- package/dist/heroicons/outline/funnel.js +3 -0
- package/dist/heroicons/outline/gif.js +3 -0
- package/dist/heroicons/outline/gift-top.js +3 -0
- package/dist/heroicons/outline/gift.js +3 -0
- package/dist/heroicons/outline/globe-alt.js +3 -0
- package/dist/heroicons/outline/globe-americas.js +3 -0
- package/dist/heroicons/outline/globe-asia-australia.js +3 -0
- package/dist/heroicons/outline/globe-europe-africa.js +3 -0
- package/dist/heroicons/outline/h-1.js +3 -0
- package/dist/heroicons/outline/h-2.js +3 -0
- package/dist/heroicons/outline/h-3.js +3 -0
- package/dist/heroicons/outline/hand-raised.js +3 -0
- package/dist/heroicons/outline/hand-thumb-down.js +3 -0
- package/dist/heroicons/outline/hand-thumb-up.js +3 -0
- package/dist/heroicons/outline/hashtag.js +3 -0
- package/dist/heroicons/outline/heart.js +3 -0
- package/dist/heroicons/outline/home-modern.js +3 -0
- package/dist/heroicons/outline/home.js +3 -0
- package/dist/heroicons/outline/identification.js +3 -0
- package/dist/heroicons/outline/inbox-arrow-down.js +3 -0
- package/dist/heroicons/outline/inbox-stack.js +3 -0
- package/dist/heroicons/outline/inbox.js +3 -0
- package/dist/heroicons/outline/information-circle.js +3 -0
- package/dist/heroicons/outline/italic.js +3 -0
- package/dist/heroicons/outline/key.js +3 -0
- package/dist/heroicons/outline/language.js +3 -0
- package/dist/heroicons/outline/lifebuoy.js +3 -0
- package/dist/heroicons/outline/light-bulb.js +3 -0
- package/dist/heroicons/outline/link-slash.js +3 -0
- package/dist/heroicons/outline/link.js +3 -0
- package/dist/heroicons/outline/list-bullet.js +3 -0
- package/dist/heroicons/outline/lock-closed.js +3 -0
- package/dist/heroicons/outline/lock-open.js +3 -0
- package/dist/heroicons/outline/magnifying-glass-circle.js +3 -0
- package/dist/heroicons/outline/magnifying-glass-minus.js +3 -0
- package/dist/heroicons/outline/magnifying-glass-plus.js +3 -0
- package/dist/heroicons/outline/magnifying-glass.js +3 -0
- package/dist/heroicons/outline/map-pin.js +3 -0
- package/dist/heroicons/outline/map.js +3 -0
- package/dist/heroicons/outline/megaphone.js +3 -0
- package/dist/heroicons/outline/microphone.js +3 -0
- package/dist/heroicons/outline/minus-circle.js +3 -0
- package/dist/heroicons/outline/minus-small.js +3 -0
- package/dist/heroicons/outline/minus.js +3 -0
- package/dist/heroicons/outline/moon.js +3 -0
- package/dist/heroicons/outline/musical-note.js +3 -0
- package/dist/heroicons/outline/newspaper.js +3 -0
- package/dist/heroicons/outline/no-symbol.js +3 -0
- package/dist/heroicons/outline/numbered-list.js +3 -0
- package/dist/heroicons/outline/paint-brush.js +3 -0
- package/dist/heroicons/outline/paper-airplane.js +3 -0
- package/dist/heroicons/outline/paper-clip.js +3 -0
- package/dist/heroicons/outline/pause-circle.js +3 -0
- package/dist/heroicons/outline/pause.js +3 -0
- package/dist/heroicons/outline/pencil-square.js +3 -0
- package/dist/heroicons/outline/pencil.js +3 -0
- package/dist/heroicons/outline/percent-badge.js +3 -0
- package/dist/heroicons/outline/phone-arrow-down-left.js +3 -0
- package/dist/heroicons/outline/phone-arrow-up-right.js +3 -0
- package/dist/heroicons/outline/phone-x-mark.js +3 -0
- package/dist/heroicons/outline/phone.js +3 -0
- package/dist/heroicons/outline/photo.js +3 -0
- package/dist/heroicons/outline/play-circle.js +3 -0
- package/dist/heroicons/outline/play-pause.js +3 -0
- package/dist/heroicons/outline/play.js +3 -0
- package/dist/heroicons/outline/plus-circle.js +3 -0
- package/dist/heroicons/outline/plus-small.js +3 -0
- package/dist/heroicons/outline/plus.js +3 -0
- package/dist/heroicons/outline/power.js +3 -0
- package/dist/heroicons/outline/presentation-chart-bar.js +3 -0
- package/dist/heroicons/outline/presentation-chart-line.js +3 -0
- package/dist/heroicons/outline/printer.js +3 -0
- package/dist/heroicons/outline/puzzle-piece.js +3 -0
- package/dist/heroicons/outline/qr-code.js +3 -0
- package/dist/heroicons/outline/question-mark-circle.js +3 -0
- package/dist/heroicons/outline/queue-list.js +3 -0
- package/dist/heroicons/outline/radio.js +3 -0
- package/dist/heroicons/outline/receipt-percent.js +3 -0
- package/dist/heroicons/outline/receipt-refund.js +3 -0
- package/dist/heroicons/outline/rectangle-group.js +3 -0
- package/dist/heroicons/outline/rectangle-stack.js +3 -0
- package/dist/heroicons/outline/rocket-launch.js +3 -0
- package/dist/heroicons/outline/rss.js +3 -0
- package/dist/heroicons/outline/scale.js +3 -0
- package/dist/heroicons/outline/scissors.js +3 -0
- package/dist/heroicons/outline/server-stack.js +3 -0
- package/dist/heroicons/outline/server.js +3 -0
- package/dist/heroicons/outline/share.js +3 -0
- package/dist/heroicons/outline/shield-check.js +3 -0
- package/dist/heroicons/outline/shield-exclamation.js +3 -0
- package/dist/heroicons/outline/shopping-bag.js +3 -0
- package/dist/heroicons/outline/shopping-cart.js +3 -0
- package/dist/heroicons/outline/signal-slash.js +3 -0
- package/dist/heroicons/outline/signal.js +3 -0
- package/dist/heroicons/outline/slash.js +3 -0
- package/dist/heroicons/outline/sparkles.js +3 -0
- package/dist/heroicons/outline/speaker-wave.js +3 -0
- package/dist/heroicons/outline/speaker-x-mark.js +3 -0
- package/dist/heroicons/outline/square-2-stack.js +3 -0
- package/dist/heroicons/outline/square-3-stack-3-d.js +3 -0
- package/dist/heroicons/outline/squares-2-x-2.js +3 -0
- package/dist/heroicons/outline/squares-plus.js +3 -0
- package/dist/heroicons/outline/star.js +3 -0
- package/dist/heroicons/outline/stop-circle.js +3 -0
- package/dist/heroicons/outline/stop.js +3 -0
- package/dist/heroicons/outline/strikethrough.js +3 -0
- package/dist/heroicons/outline/sun.js +3 -0
- package/dist/heroicons/outline/swatch.js +3 -0
- package/dist/heroicons/outline/table-cells.js +3 -0
- package/dist/heroicons/outline/tag.js +3 -0
- package/dist/heroicons/outline/ticket.js +3 -0
- package/dist/heroicons/outline/trash.js +3 -0
- package/dist/heroicons/outline/trophy.js +3 -0
- package/dist/heroicons/outline/truck.js +3 -0
- package/dist/heroicons/outline/tv.js +3 -0
- package/dist/heroicons/outline/underline.js +3 -0
- package/dist/heroicons/outline/user-circle.js +3 -0
- package/dist/heroicons/outline/user-group.js +3 -0
- package/dist/heroicons/outline/user-minus.js +3 -0
- package/dist/heroicons/outline/user-plus.js +3 -0
- package/dist/heroicons/outline/user.js +3 -0
- package/dist/heroicons/outline/users.js +3 -0
- package/dist/heroicons/outline/variable.js +3 -0
- package/dist/heroicons/outline/video-camera-slash.js +3 -0
- package/dist/heroicons/outline/video-camera.js +3 -0
- package/dist/heroicons/outline/view-columns.js +3 -0
- package/dist/heroicons/outline/viewfinder-circle.js +3 -0
- package/dist/heroicons/outline/wallet.js +3 -0
- package/dist/heroicons/outline/wifi.js +3 -0
- package/dist/heroicons/outline/window.js +3 -0
- package/dist/heroicons/outline/wrench-screwdriver.js +3 -0
- package/dist/heroicons/outline/wrench.js +3 -0
- package/dist/heroicons/outline/x-circle.js +3 -0
- package/dist/heroicons/outline/x-mark.js +3 -0
- package/dist/heroicons/solid/academic-cap.js +3 -0
- package/dist/heroicons/solid/adjustments-horizontal.js +3 -0
- package/dist/heroicons/solid/adjustments-vertical.js +3 -0
- package/dist/heroicons/solid/all.js +652 -0
- package/dist/heroicons/solid/archive-box-arrow-down.js +3 -0
- package/dist/heroicons/solid/archive-box-x-mark.js +3 -0
- package/dist/heroicons/solid/archive-box.js +3 -0
- package/dist/heroicons/solid/arrow-down-circle.js +3 -0
- package/dist/heroicons/solid/arrow-down-left.js +3 -0
- package/dist/heroicons/solid/arrow-down-on-square-stack.js +3 -0
- package/dist/heroicons/solid/arrow-down-on-square.js +3 -0
- package/dist/heroicons/solid/arrow-down-right.js +3 -0
- package/dist/heroicons/solid/arrow-down-tray.js +3 -0
- package/dist/heroicons/solid/arrow-down.js +3 -0
- package/dist/heroicons/solid/arrow-left-circle.js +3 -0
- package/dist/heroicons/solid/arrow-left-end-on-rectangle.js +3 -0
- package/dist/heroicons/solid/arrow-left-on-rectangle.js +3 -0
- package/dist/heroicons/solid/arrow-left-start-on-rectangle.js +3 -0
- package/dist/heroicons/solid/arrow-left.js +3 -0
- package/dist/heroicons/solid/arrow-long-down.js +3 -0
- package/dist/heroicons/solid/arrow-long-left.js +3 -0
- package/dist/heroicons/solid/arrow-long-right.js +3 -0
- package/dist/heroicons/solid/arrow-long-up.js +3 -0
- package/dist/heroicons/solid/arrow-path-rounded-square.js +3 -0
- package/dist/heroicons/solid/arrow-path.js +3 -0
- package/dist/heroicons/solid/arrow-right-circle.js +3 -0
- package/dist/heroicons/solid/arrow-right-end-on-rectangle.js +3 -0
- package/dist/heroicons/solid/arrow-right-on-rectangle.js +3 -0
- package/dist/heroicons/solid/arrow-right-start-on-rectangle.js +3 -0
- package/dist/heroicons/solid/arrow-right.js +3 -0
- package/dist/heroicons/solid/arrow-small-down.js +3 -0
- package/dist/heroicons/solid/arrow-small-left.js +3 -0
- package/dist/heroicons/solid/arrow-small-right.js +3 -0
- package/dist/heroicons/solid/arrow-small-up.js +3 -0
- package/dist/heroicons/solid/arrow-top-right-on-square.js +3 -0
- package/dist/heroicons/solid/arrow-trending-down.js +3 -0
- package/dist/heroicons/solid/arrow-trending-up.js +3 -0
- package/dist/heroicons/solid/arrow-turn-down-left.js +3 -0
- package/dist/heroicons/solid/arrow-turn-down-right.js +3 -0
- package/dist/heroicons/solid/arrow-turn-left-down.js +3 -0
- package/dist/heroicons/solid/arrow-turn-left-up.js +3 -0
- package/dist/heroicons/solid/arrow-turn-right-down.js +3 -0
- package/dist/heroicons/solid/arrow-turn-right-up.js +3 -0
- package/dist/heroicons/solid/arrow-turn-up-left.js +3 -0
- package/dist/heroicons/solid/arrow-turn-up-right.js +3 -0
- package/dist/heroicons/solid/arrow-up-circle.js +3 -0
- package/dist/heroicons/solid/arrow-up-left.js +3 -0
- package/dist/heroicons/solid/arrow-up-on-square-stack.js +3 -0
- package/dist/heroicons/solid/arrow-up-on-square.js +3 -0
- package/dist/heroicons/solid/arrow-up-right.js +3 -0
- package/dist/heroicons/solid/arrow-up-tray.js +3 -0
- package/dist/heroicons/solid/arrow-up.js +3 -0
- package/dist/heroicons/solid/arrow-uturn-down.js +3 -0
- package/dist/heroicons/solid/arrow-uturn-left.js +3 -0
- package/dist/heroicons/solid/arrow-uturn-right.js +3 -0
- package/dist/heroicons/solid/arrow-uturn-up.js +3 -0
- package/dist/heroicons/solid/arrows-pointing-in.js +3 -0
- package/dist/heroicons/solid/arrows-pointing-out.js +3 -0
- package/dist/heroicons/solid/arrows-right-left.js +3 -0
- package/dist/heroicons/solid/arrows-up-down.js +3 -0
- package/dist/heroicons/solid/at-symbol.js +3 -0
- package/dist/heroicons/solid/backspace.js +3 -0
- package/dist/heroicons/solid/backward.js +3 -0
- package/dist/heroicons/solid/banknotes.js +3 -0
- package/dist/heroicons/solid/bars-2.js +3 -0
- package/dist/heroicons/solid/bars-3-bottom-left.js +3 -0
- package/dist/heroicons/solid/bars-3-bottom-right.js +3 -0
- package/dist/heroicons/solid/bars-3-center-left.js +3 -0
- package/dist/heroicons/solid/bars-3.js +3 -0
- package/dist/heroicons/solid/bars-4.js +3 -0
- package/dist/heroicons/solid/bars-arrow-down.js +3 -0
- package/dist/heroicons/solid/bars-arrow-up.js +3 -0
- package/dist/heroicons/solid/battery-0.js +3 -0
- package/dist/heroicons/solid/battery-100.js +3 -0
- package/dist/heroicons/solid/battery-50.js +3 -0
- package/dist/heroicons/solid/beaker.js +3 -0
- package/dist/heroicons/solid/bell-alert.js +3 -0
- package/dist/heroicons/solid/bell-slash.js +3 -0
- package/dist/heroicons/solid/bell-snooze.js +3 -0
- package/dist/heroicons/solid/bell.js +3 -0
- package/dist/heroicons/solid/bold.js +3 -0
- package/dist/heroicons/solid/bolt-slash.js +3 -0
- package/dist/heroicons/solid/bolt.js +3 -0
- package/dist/heroicons/solid/book-open.js +3 -0
- package/dist/heroicons/solid/bookmark-slash.js +3 -0
- package/dist/heroicons/solid/bookmark-square.js +3 -0
- package/dist/heroicons/solid/bookmark.js +3 -0
- package/dist/heroicons/solid/briefcase.js +3 -0
- package/dist/heroicons/solid/bug-ant.js +3 -0
- package/dist/heroicons/solid/building-library.js +3 -0
- package/dist/heroicons/solid/building-office-2.js +3 -0
- package/dist/heroicons/solid/building-office.js +3 -0
- package/dist/heroicons/solid/building-storefront.js +3 -0
- package/dist/heroicons/solid/cake.js +3 -0
- package/dist/heroicons/solid/calculator.js +3 -0
- package/dist/heroicons/solid/calendar-date-range.js +3 -0
- package/dist/heroicons/solid/calendar-days.js +3 -0
- package/dist/heroicons/solid/calendar.js +3 -0
- package/dist/heroicons/solid/camera.js +3 -0
- package/dist/heroicons/solid/chart-bar-square.js +3 -0
- package/dist/heroicons/solid/chart-bar.js +3 -0
- package/dist/heroicons/solid/chart-pie.js +3 -0
- package/dist/heroicons/solid/chat-bubble-bottom-center-text.js +3 -0
- package/dist/heroicons/solid/chat-bubble-bottom-center.js +3 -0
- package/dist/heroicons/solid/chat-bubble-left-ellipsis.js +3 -0
- package/dist/heroicons/solid/chat-bubble-left-right.js +3 -0
- package/dist/heroicons/solid/chat-bubble-left.js +3 -0
- package/dist/heroicons/solid/chat-bubble-oval-left-ellipsis.js +3 -0
- package/dist/heroicons/solid/chat-bubble-oval-left.js +3 -0
- package/dist/heroicons/solid/check-badge.js +3 -0
- package/dist/heroicons/solid/check-circle.js +3 -0
- package/dist/heroicons/solid/check.js +3 -0
- package/dist/heroicons/solid/chevron-double-down.js +3 -0
- package/dist/heroicons/solid/chevron-double-left.js +3 -0
- package/dist/heroicons/solid/chevron-double-right.js +3 -0
- package/dist/heroicons/solid/chevron-double-up.js +3 -0
- package/dist/heroicons/solid/chevron-down.js +3 -0
- package/dist/heroicons/solid/chevron-left.js +3 -0
- package/dist/heroicons/solid/chevron-right.js +3 -0
- package/dist/heroicons/solid/chevron-up-down.js +3 -0
- package/dist/heroicons/solid/chevron-up.js +3 -0
- package/dist/heroicons/solid/circle-stack.js +3 -0
- package/dist/heroicons/solid/clipboard-document-check.js +3 -0
- package/dist/heroicons/solid/clipboard-document-list.js +3 -0
- package/dist/heroicons/solid/clipboard-document.js +3 -0
- package/dist/heroicons/solid/clipboard.js +3 -0
- package/dist/heroicons/solid/clock.js +3 -0
- package/dist/heroicons/solid/cloud-arrow-down.js +3 -0
- package/dist/heroicons/solid/cloud-arrow-up.js +3 -0
- package/dist/heroicons/solid/cloud.js +3 -0
- package/dist/heroicons/solid/code-bracket-square.js +3 -0
- package/dist/heroicons/solid/code-bracket.js +3 -0
- package/dist/heroicons/solid/cog-6-tooth.js +3 -0
- package/dist/heroicons/solid/cog-8-tooth.js +3 -0
- package/dist/heroicons/solid/cog.js +3 -0
- package/dist/heroicons/solid/command-line.js +3 -0
- package/dist/heroicons/solid/computer-desktop.js +3 -0
- package/dist/heroicons/solid/cpu-chip.js +3 -0
- package/dist/heroicons/solid/credit-card.js +3 -0
- package/dist/heroicons/solid/cube-transparent.js +3 -0
- package/dist/heroicons/solid/cube.js +3 -0
- package/dist/heroicons/solid/currency-bangladeshi.js +3 -0
- package/dist/heroicons/solid/currency-dollar.js +3 -0
- package/dist/heroicons/solid/currency-euro.js +3 -0
- package/dist/heroicons/solid/currency-pound.js +3 -0
- package/dist/heroicons/solid/currency-rupee.js +3 -0
- package/dist/heroicons/solid/currency-yen.js +3 -0
- package/dist/heroicons/solid/cursor-arrow-rays.js +3 -0
- package/dist/heroicons/solid/cursor-arrow-ripple.js +3 -0
- package/dist/heroicons/solid/device-phone-mobile.js +3 -0
- package/dist/heroicons/solid/device-tablet.js +3 -0
- package/dist/heroicons/solid/divide.js +3 -0
- package/dist/heroicons/solid/document-arrow-down.js +3 -0
- package/dist/heroicons/solid/document-arrow-up.js +3 -0
- package/dist/heroicons/solid/document-chart-bar.js +3 -0
- package/dist/heroicons/solid/document-check.js +3 -0
- package/dist/heroicons/solid/document-currency-bangladeshi.js +3 -0
- package/dist/heroicons/solid/document-currency-dollar.js +3 -0
- package/dist/heroicons/solid/document-currency-euro.js +3 -0
- package/dist/heroicons/solid/document-currency-pound.js +3 -0
- package/dist/heroicons/solid/document-currency-rupee.js +3 -0
- package/dist/heroicons/solid/document-currency-yen.js +3 -0
- package/dist/heroicons/solid/document-duplicate.js +3 -0
- package/dist/heroicons/solid/document-magnifying-glass.js +3 -0
- package/dist/heroicons/solid/document-minus.js +3 -0
- package/dist/heroicons/solid/document-plus.js +3 -0
- package/dist/heroicons/solid/document-text.js +3 -0
- package/dist/heroicons/solid/document.js +3 -0
- package/dist/heroicons/solid/ellipsis-horizontal-circle.js +3 -0
- package/dist/heroicons/solid/ellipsis-horizontal.js +3 -0
- package/dist/heroicons/solid/ellipsis-vertical.js +3 -0
- package/dist/heroicons/solid/envelope-open.js +3 -0
- package/dist/heroicons/solid/envelope.js +3 -0
- package/dist/heroicons/solid/equals.js +3 -0
- package/dist/heroicons/solid/exclamation-circle.js +3 -0
- package/dist/heroicons/solid/exclamation-triangle.js +3 -0
- package/dist/heroicons/solid/eye-dropper.js +3 -0
- package/dist/heroicons/solid/eye-slash.js +3 -0
- package/dist/heroicons/solid/eye.js +3 -0
- package/dist/heroicons/solid/face-frown.js +3 -0
- package/dist/heroicons/solid/face-smile.js +3 -0
- package/dist/heroicons/solid/film.js +3 -0
- package/dist/heroicons/solid/finger-print.js +3 -0
- package/dist/heroicons/solid/fire.js +3 -0
- package/dist/heroicons/solid/flag.js +3 -0
- package/dist/heroicons/solid/folder-arrow-down.js +3 -0
- package/dist/heroicons/solid/folder-minus.js +3 -0
- package/dist/heroicons/solid/folder-open.js +3 -0
- package/dist/heroicons/solid/folder-plus.js +3 -0
- package/dist/heroicons/solid/folder.js +3 -0
- package/dist/heroicons/solid/forward.js +3 -0
- package/dist/heroicons/solid/funnel.js +3 -0
- package/dist/heroicons/solid/gif.js +3 -0
- package/dist/heroicons/solid/gift-top.js +3 -0
- package/dist/heroicons/solid/gift.js +3 -0
- package/dist/heroicons/solid/globe-alt.js +3 -0
- package/dist/heroicons/solid/globe-americas.js +3 -0
- package/dist/heroicons/solid/globe-asia-australia.js +3 -0
- package/dist/heroicons/solid/globe-europe-africa.js +3 -0
- package/dist/heroicons/solid/h-1.js +3 -0
- package/dist/heroicons/solid/h-2.js +3 -0
- package/dist/heroicons/solid/h-3.js +3 -0
- package/dist/heroicons/solid/hand-raised.js +3 -0
- package/dist/heroicons/solid/hand-thumb-down.js +3 -0
- package/dist/heroicons/solid/hand-thumb-up.js +3 -0
- package/dist/heroicons/solid/hashtag.js +3 -0
- package/dist/heroicons/solid/heart.js +3 -0
- package/dist/heroicons/solid/home-modern.js +3 -0
- package/dist/heroicons/solid/home.js +3 -0
- package/dist/heroicons/solid/identification.js +3 -0
- package/dist/heroicons/solid/inbox-arrow-down.js +3 -0
- package/dist/heroicons/solid/inbox-stack.js +3 -0
- package/dist/heroicons/solid/inbox.js +3 -0
- package/dist/heroicons/solid/information-circle.js +3 -0
- package/dist/heroicons/solid/italic.js +3 -0
- package/dist/heroicons/solid/key.js +3 -0
- package/dist/heroicons/solid/language.js +3 -0
- package/dist/heroicons/solid/lifebuoy.js +3 -0
- package/dist/heroicons/solid/light-bulb.js +3 -0
- package/dist/heroicons/solid/link-slash.js +3 -0
- package/dist/heroicons/solid/link.js +3 -0
- package/dist/heroicons/solid/list-bullet.js +3 -0
- package/dist/heroicons/solid/lock-closed.js +3 -0
- package/dist/heroicons/solid/lock-open.js +3 -0
- package/dist/heroicons/solid/magnifying-glass-circle.js +3 -0
- package/dist/heroicons/solid/magnifying-glass-minus.js +3 -0
- package/dist/heroicons/solid/magnifying-glass-plus.js +3 -0
- package/dist/heroicons/solid/magnifying-glass.js +3 -0
- package/dist/heroicons/solid/map-pin.js +3 -0
- package/dist/heroicons/solid/map.js +3 -0
- package/dist/heroicons/solid/megaphone.js +3 -0
- package/dist/heroicons/solid/microphone.js +3 -0
- package/dist/heroicons/solid/minus-circle.js +3 -0
- package/dist/heroicons/solid/minus-small.js +3 -0
- package/dist/heroicons/solid/minus.js +3 -0
- package/dist/heroicons/solid/moon.js +3 -0
- package/dist/heroicons/solid/musical-note.js +3 -0
- package/dist/heroicons/solid/newspaper.js +3 -0
- package/dist/heroicons/solid/no-symbol.js +3 -0
- package/dist/heroicons/solid/numbered-list.js +3 -0
- package/dist/heroicons/solid/paint-brush.js +3 -0
- package/dist/heroicons/solid/paper-airplane.js +3 -0
- package/dist/heroicons/solid/paper-clip.js +3 -0
- package/dist/heroicons/solid/pause-circle.js +3 -0
- package/dist/heroicons/solid/pause.js +3 -0
- package/dist/heroicons/solid/pencil-square.js +3 -0
- package/dist/heroicons/solid/pencil.js +3 -0
- package/dist/heroicons/solid/percent-badge.js +3 -0
- package/dist/heroicons/solid/phone-arrow-down-left.js +3 -0
- package/dist/heroicons/solid/phone-arrow-up-right.js +3 -0
- package/dist/heroicons/solid/phone-x-mark.js +3 -0
- package/dist/heroicons/solid/phone.js +3 -0
- package/dist/heroicons/solid/photo.js +3 -0
- package/dist/heroicons/solid/play-circle.js +3 -0
- package/dist/heroicons/solid/play-pause.js +3 -0
- package/dist/heroicons/solid/play.js +3 -0
- package/dist/heroicons/solid/plus-circle.js +3 -0
- package/dist/heroicons/solid/plus-small.js +3 -0
- package/dist/heroicons/solid/plus.js +3 -0
- package/dist/heroicons/solid/power.js +3 -0
- package/dist/heroicons/solid/presentation-chart-bar.js +3 -0
- package/dist/heroicons/solid/presentation-chart-line.js +3 -0
- package/dist/heroicons/solid/printer.js +3 -0
- package/dist/heroicons/solid/puzzle-piece.js +3 -0
- package/dist/heroicons/solid/qr-code.js +3 -0
- package/dist/heroicons/solid/question-mark-circle.js +3 -0
- package/dist/heroicons/solid/queue-list.js +3 -0
- package/dist/heroicons/solid/radio.js +3 -0
- package/dist/heroicons/solid/receipt-percent.js +3 -0
- package/dist/heroicons/solid/receipt-refund.js +3 -0
- package/dist/heroicons/solid/rectangle-group.js +3 -0
- package/dist/heroicons/solid/rectangle-stack.js +3 -0
- package/dist/heroicons/solid/rocket-launch.js +3 -0
- package/dist/heroicons/solid/rss.js +3 -0
- package/dist/heroicons/solid/scale.js +3 -0
- package/dist/heroicons/solid/scissors.js +3 -0
- package/dist/heroicons/solid/server-stack.js +3 -0
- package/dist/heroicons/solid/server.js +3 -0
- package/dist/heroicons/solid/share.js +3 -0
- package/dist/heroicons/solid/shield-check.js +3 -0
- package/dist/heroicons/solid/shield-exclamation.js +3 -0
- package/dist/heroicons/solid/shopping-bag.js +3 -0
- package/dist/heroicons/solid/shopping-cart.js +3 -0
- package/dist/heroicons/solid/signal-slash.js +3 -0
- package/dist/heroicons/solid/signal.js +3 -0
- package/dist/heroicons/solid/slash.js +3 -0
- package/dist/heroicons/solid/sparkles.js +3 -0
- package/dist/heroicons/solid/speaker-wave.js +3 -0
- package/dist/heroicons/solid/speaker-x-mark.js +3 -0
- package/dist/heroicons/solid/square-2-stack.js +3 -0
- package/dist/heroicons/solid/square-3-stack-3-d.js +3 -0
- package/dist/heroicons/solid/squares-2-x-2.js +3 -0
- package/dist/heroicons/solid/squares-plus.js +3 -0
- package/dist/heroicons/solid/star.js +3 -0
- package/dist/heroicons/solid/stop-circle.js +3 -0
- package/dist/heroicons/solid/stop.js +3 -0
- package/dist/heroicons/solid/strikethrough.js +3 -0
- package/dist/heroicons/solid/sun.js +3 -0
- package/dist/heroicons/solid/swatch.js +3 -0
- package/dist/heroicons/solid/table-cells.js +3 -0
- package/dist/heroicons/solid/tag.js +3 -0
- package/dist/heroicons/solid/ticket.js +3 -0
- package/dist/heroicons/solid/trash.js +3 -0
- package/dist/heroicons/solid/trophy.js +3 -0
- package/dist/heroicons/solid/truck.js +3 -0
- package/dist/heroicons/solid/tv.js +3 -0
- package/dist/heroicons/solid/underline.js +3 -0
- package/dist/heroicons/solid/user-circle.js +3 -0
- package/dist/heroicons/solid/user-group.js +3 -0
- package/dist/heroicons/solid/user-minus.js +3 -0
- package/dist/heroicons/solid/user-plus.js +3 -0
- package/dist/heroicons/solid/user.js +3 -0
- package/dist/heroicons/solid/users.js +3 -0
- package/dist/heroicons/solid/variable.js +3 -0
- package/dist/heroicons/solid/video-camera-slash.js +3 -0
- package/dist/heroicons/solid/video-camera.js +3 -0
- package/dist/heroicons/solid/view-columns.js +3 -0
- package/dist/heroicons/solid/viewfinder-circle.js +3 -0
- package/dist/heroicons/solid/wallet.js +3 -0
- package/dist/heroicons/solid/wifi.js +3 -0
- package/dist/heroicons/solid/window.js +3 -0
- package/dist/heroicons/solid/wrench-screwdriver.js +3 -0
- package/dist/heroicons/solid/wrench.js +3 -0
- package/dist/heroicons/solid/x-circle.js +3 -0
- package/dist/heroicons/solid/x-mark.js +3 -0
- package/dist/heroicons.d.ts +24 -4
- package/dist/heroicons.d.ts.map +1 -1
- package/dist/heroicons.js +103 -664
- package/dist/heroicons.js.map +1 -1
- package/dist/index.d.ts +2 -0
- package/dist/index.d.ts.map +1 -1
- package/dist/index.js +11 -7
- package/dist/index.js.map +1 -1
- package/dist/names.d.ts +9 -0
- package/dist/names.d.ts.map +1 -0
- package/dist/names.js +27 -0
- package/dist/names.js.map +1 -0
- package/package.json +25 -5
- package/dist/generated/disk-loaders.d.ts +0 -9
- package/dist/generated/disk-loaders.d.ts.map +0 -1
- package/dist/generated/disk-loaders.js +0 -10
- package/dist/generated/disk-loaders.js.map +0 -1
- package/dist/generated/disk-manifest.d.ts +0 -12
- package/dist/generated/disk-manifest.d.ts.map +0 -1
- package/dist/generated/disk-manifest.js +0 -3877
- package/dist/generated/disk-manifest.js.map +0 -1
package/README.md
CHANGED
|
@@ -2,58 +2,118 @@
|
|
|
2
2
|
|
|
3
3
|
The shared icon registry used across loomi components, covering three sources:
|
|
4
4
|
|
|
5
|
-
- **`heroicons`** (default) -
|
|
6
|
-
|
|
7
|
-
|
|
8
|
-
|
|
9
|
-
|
|
10
|
-
|
|
11
|
-
|
|
12
|
-
whole set up front. They ship twice: as per-icon ES modules under
|
|
13
|
-
`dist/icons/<source>/<type>/<name>.js`, and as the original `.svg` files under
|
|
14
|
-
`dist/svg/<source>/<type>/<name>.svg`.
|
|
5
|
+
- **`heroicons`** (default) - the official Heroicons 24px outline and solid sets, as plain
|
|
6
|
+
Lit SVG templates. No React or Heroicons runtime dependency ships to consumers.
|
|
7
|
+
- **`iconsax`** and **`untitledui`** - disk-based sets, enabled per app with one import.
|
|
8
|
+
|
|
9
|
+
Every icon is its own module and loads the first time something renders it, so a page
|
|
10
|
+
that shows three icons downloads three icons, not a set. Nothing here costs you icon data
|
|
11
|
+
until an icon is on screen.
|
|
15
12
|
|
|
16
13
|
```bash
|
|
17
14
|
npm install @loomidev/icons lit
|
|
18
15
|
```
|
|
19
16
|
|
|
20
|
-
## Heroicons
|
|
17
|
+
## Heroicons
|
|
18
|
+
|
|
19
|
+
Components that take an icon name (`<loomi-icon>`, `<loomi-button icon="…">`,
|
|
20
|
+
`<loomi-input prefix-icon="…">`, `<loomi-alert>`, `<loomi-tabs>`, …) all read from this one
|
|
21
|
+
registry, so an icon you register is available everywhere.
|
|
22
|
+
|
|
23
|
+
A named icon renders as soon as its module arrives, usually within the same frame on a
|
|
24
|
+
warm cache. A component's own built-in icons (a clear button, a chevron, the password
|
|
25
|
+
reveal eye) are imported statically by that component and render on first paint.
|
|
21
26
|
|
|
22
27
|
```ts
|
|
23
|
-
import {
|
|
28
|
+
import { registerLoomiIcon, hasLoomiIcon, loadLoomiIcon } from "@loomidev/icons";
|
|
24
29
|
import { svg } from "lit";
|
|
25
30
|
|
|
26
|
-
registerLoomiIcon("rocket", svg`<path d="…" />`);
|
|
27
|
-
|
|
28
|
-
|
|
31
|
+
registerLoomiIcon("rocket", svg`<path d="…" />`); // your own icon, or override a Heroicon
|
|
32
|
+
hasLoomiIcon("bell-alert"); // true: a known name, checked without loading anything
|
|
33
|
+
await loadLoomiIcon("bell-alert", "solid"); // load one ahead of time
|
|
34
|
+
```
|
|
35
|
+
|
|
36
|
+
### Load every Heroicon up front
|
|
37
|
+
|
|
38
|
+
If you'd rather pay for the whole set once than load icons one by one, for example in an
|
|
39
|
+
app that shows dozens of different icons on its first screen, import it eagerly:
|
|
40
|
+
|
|
41
|
+
```ts
|
|
42
|
+
import "@loomidev/icons/all";
|
|
43
|
+
```
|
|
44
|
+
|
|
45
|
+
Every named icon then renders synchronously. Icons you registered still win. This adds
|
|
46
|
+
the size shown under [Bundle size](#bundle-size).
|
|
47
|
+
|
|
48
|
+
### Importing one icon directly
|
|
49
|
+
|
|
50
|
+
Each Heroicon is also a subpath module you can import statically. It ships inside your
|
|
51
|
+
bundle with no lazy load:
|
|
52
|
+
|
|
53
|
+
```ts
|
|
54
|
+
import bell from "@loomidev/icons/heroicons/outline/bell.js";
|
|
55
|
+
import { provideLoomiIcons } from "@loomidev/icons";
|
|
56
|
+
|
|
57
|
+
provideLoomiIcons({ bell }); // `icon="bell"` now renders on first paint
|
|
29
58
|
```
|
|
30
59
|
|
|
31
|
-
|
|
32
|
-
|
|
33
|
-
|
|
60
|
+
### Rendering icons in your own Lit components
|
|
61
|
+
|
|
62
|
+
```ts
|
|
63
|
+
import { hasLoomiIcon, loomiIcon } from "@loomidev/icons";
|
|
34
64
|
|
|
35
|
-
|
|
36
|
-
|
|
37
|
-
|
|
38
|
-
|
|
39
|
-
|
|
65
|
+
render() {
|
|
66
|
+
return hasLoomiIcon(this.icon)
|
|
67
|
+
? html`<svg viewBox="0 0 24 24" fill="none" stroke="currentColor">${loomiIcon(this.icon)}</svg>`
|
|
68
|
+
: nothing;
|
|
69
|
+
}
|
|
70
|
+
```
|
|
71
|
+
|
|
72
|
+
`loomiIcon(name, variant?)` is a Lit directive: it renders the icon right away when it's
|
|
73
|
+
available and otherwise fills it in once it loads.
|
|
74
|
+
|
|
75
|
+
| Export | Description |
|
|
76
|
+
| --------------------------------------- | ----------------------------------------------------------------------------------------------------------------------- |
|
|
77
|
+
| `loomiIcon(name, variant?)` | Lit directive that renders an icon's inner SVG, loading it on first use. `variant` is `outline` (default) or `solid`. |
|
|
78
|
+
| `hasLoomiIcon(name, variant?)` | Whether the name is a known icon (registered, provided, or a shipped Heroicon). Synchronous; loads nothing. |
|
|
79
|
+
| `loadLoomiIcon(name, variant?)` | Loads (once, then cached) and resolves the icon's inner SVG, or `undefined` for an unknown name or a failed load. |
|
|
80
|
+
| `getLoomiIcon(name, variant?)` | The icon's inner SVG if it's ready now (registered, provided or already loaded), else `undefined`. Never starts a load. |
|
|
81
|
+
| `registerLoomiIcon(name, svg, variant)` | Register or override an icon for `outline` or `solid`; default is `outline`. |
|
|
82
|
+
| `provideLoomiIcons(icons, variant?)` | Hand over statically imported icons so they render synchronously. Never replaces an icon you registered. |
|
|
83
|
+
| `loomiIconNames(variant)` | List every known icon name for a variant; default is `outline`. |
|
|
84
|
+
| `isLoomiIconAvailable(name, variant?)` | Whether the icon is registered, provided or already loaded, i.e. renders with no load. |
|
|
85
|
+
| `registeredLoomiIconNames(variant?)` | Names registered or provided for a variant (not the shipped set). |
|
|
86
|
+
|
|
87
|
+
A solid icon that doesn't exist falls back to its outline version.
|
|
40
88
|
|
|
41
89
|
## Iconsax and Untitled UI (disk-based)
|
|
42
90
|
|
|
43
|
-
|
|
44
|
-
[`@loomidev/icon`](../icon)) rather than calling these directly - they exist so other
|
|
45
|
-
components can adopt the same sources later the way they already do for Heroicons.
|
|
91
|
+
These sets are opt-in. Import each one you use once, anywhere in your app:
|
|
46
92
|
|
|
47
|
-
|
|
48
|
-
|
|
49
|
-
|
|
50
|
-
|
|
93
|
+
```ts
|
|
94
|
+
import "@loomidev/icons/iconsax";
|
|
95
|
+
import "@loomidev/icons/untitledui";
|
|
96
|
+
```
|
|
97
|
+
|
|
98
|
+
`<loomi-icon source="iconsax" name="home">` (see [`@loomidev/icon`](../icon)) and every
|
|
99
|
+
component with an `icon-source` attribute then render from it. Until a source is
|
|
100
|
+
imported, its names are unknown: the component shows its slot fallback and logs a
|
|
101
|
+
one-time warning naming the import to add. An app that never imports a set bundles none
|
|
102
|
+
of it, not even its name list.
|
|
103
|
+
|
|
104
|
+
| Source | Types | Icons |
|
|
105
|
+
| ------------ | ------------------------------------------- | ----- |
|
|
106
|
+
| `iconsax` | `outline` (default), `solid`, `twotone` | 2,686 |
|
|
107
|
+
| `untitledui` | `outline` (default; the only type it ships) | 1,173 |
|
|
108
|
+
|
|
109
|
+
Most consumers should just use `<loomi-icon>` rather than calling these directly.
|
|
51
110
|
|
|
52
111
|
| Export | Description |
|
|
53
112
|
| ---------------------------------------------------- | --------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------- |
|
|
54
113
|
| `loadLoomiDiskIcon(source, name, type?)` | Loads (and caches) the icon, resolving to a value renderable directly inside a Lit `html` template: `` html`<svg>${await loadLoomiDiskIcon(...)}</svg>` ``. Resolves `undefined` for an unregistered name or a failed load. |
|
|
55
|
-
| `hasLoomiDiskIcon(source, name, type?)` | Whether the name is a real icon. Synchronous - it only consults the name
|
|
56
|
-
| `registerLoomiDiskIcon(source, name, markup, type?)` | Register a statically imported icon so it renders with no network request and no dynamic chunk. See [Static imports](#static-imports).
|
|
114
|
+
| `hasLoomiDiskIcon(source, name, type?)` | Whether the name is a real icon. Synchronous - it only consults the source's name list, so it's `false` until the source is imported. |
|
|
115
|
+
| `registerLoomiDiskIcon(source, name, markup, type?)` | Register a statically imported icon so it renders with no network request and no dynamic chunk, even without importing its source. See [Static imports](#static-imports). |
|
|
116
|
+
| `isLoomiDiskIconSourceRegistered(source)` | Whether `@loomidev/icons/<source>` has been imported. |
|
|
57
117
|
| `setLoomiIconBasePath(path)` | Serve the raw `.svg` files from a path you control instead of loading the modules. See [Serving the SVGs yourself](#serving-the-svgs-yourself). Pass `undefined` to go back to modules. |
|
|
58
118
|
| `getLoomiIconBasePath()` | The base path currently set, or `undefined` when icons load from the generated modules. |
|
|
59
119
|
| `getLoomiDiskIconUrl(source, name, type?)` | Resolves to the icon's `.svg` URL, or `undefined` if `name` isn't registered. An unavailable `type` for that source (e.g. `untitledui` + `"twotone"`) falls back to `outline` rather than failing. |
|
|
@@ -85,7 +145,7 @@ cannot survive is bundling: a bundler inlines this module into a chunk and never
|
|
|
85
145
|
### Static imports
|
|
86
146
|
|
|
87
147
|
Importing an icon directly is the leanest option - no runtime lookup, no dynamic chunk,
|
|
88
|
-
and dead icons drop out of the bundle:
|
|
148
|
+
no source import needed, and dead icons drop out of the bundle:
|
|
89
149
|
|
|
90
150
|
```ts
|
|
91
151
|
import homeOutline from "@loomidev/icons/icons/iconsax/outline/home.js";
|
|
@@ -116,6 +176,58 @@ Relative paths resolve against the document. A failed fetch resolves to `undefin
|
|
|
116
176
|
rather than throwing, so a wrong base path degrades to the component's slot fallback
|
|
117
177
|
instead of breaking the page.
|
|
118
178
|
|
|
179
|
+
## Fewer, bigger icon chunks
|
|
180
|
+
|
|
181
|
+
Because every icon is its own module, your bundler emits one small lazy chunk per icon it
|
|
182
|
+
can reach: 648 for Heroicons, plus one per icon in each disk-based set you import (about
|
|
183
|
+
3,900 for both). Only the icons a page renders are ever downloaded, but a long list of
|
|
184
|
+
files can slow builds and clutter deploys.
|
|
185
|
+
|
|
186
|
+
To trade that for one chunk per set, group them in your bundler config. A page then
|
|
187
|
+
downloads the whole set the first time it shows any icon from it: about 35 KB gzipped per
|
|
188
|
+
Heroicons variant, and up to about 375 KB for an Iconsax type, so this suits Heroicons far
|
|
189
|
+
better than the disk-based sets.
|
|
190
|
+
|
|
191
|
+
Vite (Rollup):
|
|
192
|
+
|
|
193
|
+
```js
|
|
194
|
+
// vite.config.js
|
|
195
|
+
export default {
|
|
196
|
+
build: {
|
|
197
|
+
rollupOptions: {
|
|
198
|
+
output: {
|
|
199
|
+
manualChunks(id) {
|
|
200
|
+
const match = id.match(/@loomidev\/icons\/dist\/(heroicons|icons\/[^/]+)\/([^/]+)\//);
|
|
201
|
+
if (match) return `icons-${match[1].replace("icons/", "")}-${match[2]}`;
|
|
202
|
+
},
|
|
203
|
+
},
|
|
204
|
+
},
|
|
205
|
+
},
|
|
206
|
+
};
|
|
207
|
+
```
|
|
208
|
+
|
|
209
|
+
webpack:
|
|
210
|
+
|
|
211
|
+
```js
|
|
212
|
+
// webpack.config.js
|
|
213
|
+
module.exports = {
|
|
214
|
+
optimization: {
|
|
215
|
+
splitChunks: {
|
|
216
|
+
cacheGroups: {
|
|
217
|
+
heroicons: {
|
|
218
|
+
test: /@loomidev[\\/]icons[\\/]dist[\\/]heroicons[\\/]/,
|
|
219
|
+
name: "icons-heroicons",
|
|
220
|
+
chunks: "async",
|
|
221
|
+
},
|
|
222
|
+
},
|
|
223
|
+
},
|
|
224
|
+
},
|
|
225
|
+
};
|
|
226
|
+
```
|
|
227
|
+
|
|
228
|
+
For the disk-based sets, [serving the SVGs yourself](#serving-the-svgs-yourself) removes
|
|
229
|
+
their chunks entirely.
|
|
230
|
+
|
|
119
231
|
### Adding another disk-based source later
|
|
120
232
|
|
|
121
233
|
There's no source-specific code to touch. Vendor the new set with the generic import
|
|
@@ -124,10 +236,19 @@ files):
|
|
|
124
236
|
|
|
125
237
|
```bash
|
|
126
238
|
node scripts/import-icon-set.mjs --source <name> --from /path/to/icons
|
|
127
|
-
pnpm build # regenerates the
|
|
239
|
+
pnpm build # regenerates the source entry and copies the files into dist/svg/
|
|
128
240
|
```
|
|
129
241
|
|
|
130
|
-
Then widen `LoomiDiskIconSource` in `src/disk-icons.ts` to include the new name
|
|
242
|
+
Then widen `LoomiDiskIconSource` in `src/disk-icons.ts` to include the new name, and add
|
|
243
|
+
`./<name>` to `exports` in `package.json`.
|
|
244
|
+
|
|
245
|
+
<!-- bundle-size:start -->
|
|
246
|
+
|
|
247
|
+
## Bundle size
|
|
248
|
+
|
|
249
|
+
The registry is about **3.3 KB** minified and gzipped, excluding `lit`, and loads no icon data up front. Each Heroicon is its own module of a few hundred bytes, loaded the first time it renders. `import "@loomidev/icons/all"` loads every Heroicon eagerly instead: about 72.9 KB. Measured by `pnpm check:bundle-size`.
|
|
250
|
+
|
|
251
|
+
<!-- bundle-size:end -->
|
|
131
252
|
|
|
132
253
|
## Dependencies
|
|
133
254
|
|
package/custom-elements.json
CHANGED
|
@@ -2,10 +2,79 @@
|
|
|
2
2
|
"schemaVersion": "1.0.0",
|
|
3
3
|
"readme": "",
|
|
4
4
|
"modules": [
|
|
5
|
+
{
|
|
6
|
+
"kind": "javascript-module",
|
|
7
|
+
"path": "src/all.ts",
|
|
8
|
+
"declarations": [],
|
|
9
|
+
"exports": []
|
|
10
|
+
},
|
|
11
|
+
{
|
|
12
|
+
"kind": "javascript-module",
|
|
13
|
+
"path": "src/directive.ts",
|
|
14
|
+
"declarations": [
|
|
15
|
+
{
|
|
16
|
+
"kind": "variable",
|
|
17
|
+
"name": "loomiIcon",
|
|
18
|
+
"description": "Renders a Heroicon's inner SVG inside an `<svg>` element, loading that one icon on\nfirst use: `` svg`<svg viewBox=\"0 0 24 24\">${loomiIcon(\"bell\")}</svg>` ``.\n\nRenders synchronously when the icon is already registered, provided or loaded;\notherwise it renders nothing and fills in once the icon's module arrives. Check\nhasLoomiIcon first when an unknown name should fall back to something else."
|
|
19
|
+
}
|
|
20
|
+
],
|
|
21
|
+
"exports": [
|
|
22
|
+
{
|
|
23
|
+
"kind": "js",
|
|
24
|
+
"name": "loomiIcon",
|
|
25
|
+
"declaration": {
|
|
26
|
+
"name": "loomiIcon",
|
|
27
|
+
"module": "src/directive.ts"
|
|
28
|
+
}
|
|
29
|
+
}
|
|
30
|
+
]
|
|
31
|
+
},
|
|
5
32
|
{
|
|
6
33
|
"kind": "javascript-module",
|
|
7
34
|
"path": "src/disk-icons.ts",
|
|
8
35
|
"declarations": [
|
|
36
|
+
{
|
|
37
|
+
"kind": "function",
|
|
38
|
+
"name": "registerLoomiDiskIconSource",
|
|
39
|
+
"return": {
|
|
40
|
+
"type": {
|
|
41
|
+
"text": "void"
|
|
42
|
+
}
|
|
43
|
+
},
|
|
44
|
+
"parameters": [
|
|
45
|
+
{
|
|
46
|
+
"name": "source",
|
|
47
|
+
"type": {
|
|
48
|
+
"text": "LoomiDiskIconSource"
|
|
49
|
+
}
|
|
50
|
+
},
|
|
51
|
+
{
|
|
52
|
+
"name": "sets",
|
|
53
|
+
"type": {
|
|
54
|
+
"text": "Partial<Record<LoomiIconType, LoomiDiskIconSetEntry>>"
|
|
55
|
+
}
|
|
56
|
+
}
|
|
57
|
+
],
|
|
58
|
+
"description": "Registers a disk-based source's names and lazy loaders. Called by the generated\n`@loomidev/icons/<source>` entries; you shouldn't need to call it yourself."
|
|
59
|
+
},
|
|
60
|
+
{
|
|
61
|
+
"kind": "function",
|
|
62
|
+
"name": "isLoomiDiskIconSourceRegistered",
|
|
63
|
+
"return": {
|
|
64
|
+
"type": {
|
|
65
|
+
"text": "boolean"
|
|
66
|
+
}
|
|
67
|
+
},
|
|
68
|
+
"parameters": [
|
|
69
|
+
{
|
|
70
|
+
"name": "source",
|
|
71
|
+
"type": {
|
|
72
|
+
"text": "LoomiDiskIconSource"
|
|
73
|
+
}
|
|
74
|
+
}
|
|
75
|
+
],
|
|
76
|
+
"description": "Whether `@loomidev/icons/<source>` has been imported."
|
|
77
|
+
},
|
|
9
78
|
{
|
|
10
79
|
"kind": "function",
|
|
11
80
|
"name": "setLoomiIconBasePath",
|
|
@@ -123,7 +192,7 @@
|
|
|
123
192
|
}
|
|
124
193
|
}
|
|
125
194
|
],
|
|
126
|
-
"description": "Whether `(source, name)` is a real icon in this package. Cheap and\nsynchronous — it only consults the
|
|
195
|
+
"description": "Whether `(source, name)` is a real icon in this package. Cheap and\nsynchronous — it only consults the source's name list, so it is `false` for\nevery name until `@loomidev/icons/<source>` has been imported."
|
|
127
196
|
},
|
|
128
197
|
{
|
|
129
198
|
"kind": "function",
|
|
@@ -226,6 +295,22 @@
|
|
|
226
295
|
}
|
|
227
296
|
],
|
|
228
297
|
"exports": [
|
|
298
|
+
{
|
|
299
|
+
"kind": "js",
|
|
300
|
+
"name": "registerLoomiDiskIconSource",
|
|
301
|
+
"declaration": {
|
|
302
|
+
"name": "registerLoomiDiskIconSource",
|
|
303
|
+
"module": "src/disk-icons.ts"
|
|
304
|
+
}
|
|
305
|
+
},
|
|
306
|
+
{
|
|
307
|
+
"kind": "js",
|
|
308
|
+
"name": "isLoomiDiskIconSourceRegistered",
|
|
309
|
+
"declaration": {
|
|
310
|
+
"name": "isLoomiDiskIconSourceRegistered",
|
|
311
|
+
"module": "src/disk-icons.ts"
|
|
312
|
+
}
|
|
313
|
+
},
|
|
229
314
|
{
|
|
230
315
|
"kind": "js",
|
|
231
316
|
"name": "setLoomiIconBasePath",
|
|
@@ -335,6 +420,56 @@
|
|
|
335
420
|
],
|
|
336
421
|
"description": "Register (or override) an icon by name so `icon=\"<name>\"` can render it."
|
|
337
422
|
},
|
|
423
|
+
{
|
|
424
|
+
"kind": "function",
|
|
425
|
+
"name": "provideLoomiIcons",
|
|
426
|
+
"return": {
|
|
427
|
+
"type": {
|
|
428
|
+
"text": "void"
|
|
429
|
+
}
|
|
430
|
+
},
|
|
431
|
+
"parameters": [
|
|
432
|
+
{
|
|
433
|
+
"name": "icons",
|
|
434
|
+
"type": {
|
|
435
|
+
"text": "Record<string, SVGTemplateResult>"
|
|
436
|
+
}
|
|
437
|
+
},
|
|
438
|
+
{
|
|
439
|
+
"name": "variant",
|
|
440
|
+
"default": "\"outline\"",
|
|
441
|
+
"type": {
|
|
442
|
+
"text": "LoomiIconVariant"
|
|
443
|
+
}
|
|
444
|
+
}
|
|
445
|
+
],
|
|
446
|
+
"description": "Hand over icons that are already imported, so they render synchronously with no\nlazy load. Unlike registerLoomiIcon, this never replaces an icon an app\nregistered, so a component providing its own chrome icons can't clobber an\napp's override."
|
|
447
|
+
},
|
|
448
|
+
{
|
|
449
|
+
"kind": "function",
|
|
450
|
+
"name": "isLoomiIconAvailable",
|
|
451
|
+
"return": {
|
|
452
|
+
"type": {
|
|
453
|
+
"text": "boolean"
|
|
454
|
+
}
|
|
455
|
+
},
|
|
456
|
+
"parameters": [
|
|
457
|
+
{
|
|
458
|
+
"name": "name",
|
|
459
|
+
"type": {
|
|
460
|
+
"text": "string"
|
|
461
|
+
}
|
|
462
|
+
},
|
|
463
|
+
{
|
|
464
|
+
"name": "variant",
|
|
465
|
+
"default": "\"outline\"",
|
|
466
|
+
"type": {
|
|
467
|
+
"text": "LoomiIconVariant"
|
|
468
|
+
}
|
|
469
|
+
}
|
|
470
|
+
],
|
|
471
|
+
"description": "Whether `name` is registered or provided for `variant`, i.e. renders without a load."
|
|
472
|
+
},
|
|
338
473
|
{
|
|
339
474
|
"kind": "function",
|
|
340
475
|
"name": "getLoomiIcon",
|
|
@@ -358,11 +493,36 @@
|
|
|
358
493
|
}
|
|
359
494
|
}
|
|
360
495
|
],
|
|
361
|
-
"description": "
|
|
496
|
+
"description": "The icon's inner SVG if it is ready to render right now — registered, provided,\nor already loaded — else `undefined`. It never starts a load: use\nloadLoomiIcon, or render through the `loomiIcon()` directive, which does\nboth. Use `hasLoomiIcon()` to ask whether a name exists at all."
|
|
362
497
|
},
|
|
363
498
|
{
|
|
364
499
|
"kind": "function",
|
|
365
|
-
"name": "
|
|
500
|
+
"name": "loadLoomiIcon",
|
|
501
|
+
"return": {
|
|
502
|
+
"type": {
|
|
503
|
+
"text": "Promise<SVGTemplateResult | undefined>"
|
|
504
|
+
}
|
|
505
|
+
},
|
|
506
|
+
"parameters": [
|
|
507
|
+
{
|
|
508
|
+
"name": "name",
|
|
509
|
+
"type": {
|
|
510
|
+
"text": "string"
|
|
511
|
+
}
|
|
512
|
+
},
|
|
513
|
+
{
|
|
514
|
+
"name": "variant",
|
|
515
|
+
"default": "\"outline\"",
|
|
516
|
+
"type": {
|
|
517
|
+
"text": "LoomiIconVariant"
|
|
518
|
+
}
|
|
519
|
+
}
|
|
520
|
+
],
|
|
521
|
+
"description": "Loads (once, then cached) and resolves the icon's inner SVG, or `undefined` for an\nunknown name or a failed load. A `solid` request for an icon with no solid version\nresolves to its outline icon."
|
|
522
|
+
},
|
|
523
|
+
{
|
|
524
|
+
"kind": "function",
|
|
525
|
+
"name": "registeredLoomiIconNames",
|
|
366
526
|
"return": {
|
|
367
527
|
"type": {
|
|
368
528
|
"text": "string[]"
|
|
@@ -377,7 +537,7 @@
|
|
|
377
537
|
}
|
|
378
538
|
}
|
|
379
539
|
],
|
|
380
|
-
"description": "Names
|
|
540
|
+
"description": "Names registered or provided for a variant (shipped Heroicons not yet loaded aren't included)."
|
|
381
541
|
}
|
|
382
542
|
],
|
|
383
543
|
"exports": [
|
|
@@ -389,6 +549,22 @@
|
|
|
389
549
|
"module": "src/heroicons.ts"
|
|
390
550
|
}
|
|
391
551
|
},
|
|
552
|
+
{
|
|
553
|
+
"kind": "js",
|
|
554
|
+
"name": "provideLoomiIcons",
|
|
555
|
+
"declaration": {
|
|
556
|
+
"name": "provideLoomiIcons",
|
|
557
|
+
"module": "src/heroicons.ts"
|
|
558
|
+
}
|
|
559
|
+
},
|
|
560
|
+
{
|
|
561
|
+
"kind": "js",
|
|
562
|
+
"name": "isLoomiIconAvailable",
|
|
563
|
+
"declaration": {
|
|
564
|
+
"name": "isLoomiIconAvailable",
|
|
565
|
+
"module": "src/heroicons.ts"
|
|
566
|
+
}
|
|
567
|
+
},
|
|
392
568
|
{
|
|
393
569
|
"kind": "js",
|
|
394
570
|
"name": "getLoomiIcon",
|
|
@@ -399,9 +575,17 @@
|
|
|
399
575
|
},
|
|
400
576
|
{
|
|
401
577
|
"kind": "js",
|
|
402
|
-
"name": "
|
|
578
|
+
"name": "loadLoomiIcon",
|
|
403
579
|
"declaration": {
|
|
404
|
-
"name": "
|
|
580
|
+
"name": "loadLoomiIcon",
|
|
581
|
+
"module": "src/heroicons.ts"
|
|
582
|
+
}
|
|
583
|
+
},
|
|
584
|
+
{
|
|
585
|
+
"kind": "js",
|
|
586
|
+
"name": "registeredLoomiIconNames",
|
|
587
|
+
"declaration": {
|
|
588
|
+
"name": "registeredLoomiIconNames",
|
|
405
589
|
"module": "src/heroicons.ts"
|
|
406
590
|
}
|
|
407
591
|
}
|
|
@@ -420,6 +604,22 @@
|
|
|
420
604
|
"module": "src/heroicons.js"
|
|
421
605
|
}
|
|
422
606
|
},
|
|
607
|
+
{
|
|
608
|
+
"kind": "js",
|
|
609
|
+
"name": "*",
|
|
610
|
+
"declaration": {
|
|
611
|
+
"name": "*",
|
|
612
|
+
"module": "src/names.js"
|
|
613
|
+
}
|
|
614
|
+
},
|
|
615
|
+
{
|
|
616
|
+
"kind": "js",
|
|
617
|
+
"name": "*",
|
|
618
|
+
"declaration": {
|
|
619
|
+
"name": "*",
|
|
620
|
+
"module": "src/directive.js"
|
|
621
|
+
}
|
|
622
|
+
},
|
|
423
623
|
{
|
|
424
624
|
"kind": "js",
|
|
425
625
|
"name": "*",
|
|
@@ -429,6 +629,74 @@
|
|
|
429
629
|
}
|
|
430
630
|
}
|
|
431
631
|
]
|
|
632
|
+
},
|
|
633
|
+
{
|
|
634
|
+
"kind": "javascript-module",
|
|
635
|
+
"path": "src/names.ts",
|
|
636
|
+
"declarations": [
|
|
637
|
+
{
|
|
638
|
+
"kind": "function",
|
|
639
|
+
"name": "hasLoomiIcon",
|
|
640
|
+
"return": {
|
|
641
|
+
"type": {
|
|
642
|
+
"text": "boolean"
|
|
643
|
+
}
|
|
644
|
+
},
|
|
645
|
+
"parameters": [
|
|
646
|
+
{
|
|
647
|
+
"name": "name",
|
|
648
|
+
"type": {
|
|
649
|
+
"text": "string"
|
|
650
|
+
}
|
|
651
|
+
},
|
|
652
|
+
{
|
|
653
|
+
"name": "variant",
|
|
654
|
+
"default": "\"outline\"",
|
|
655
|
+
"type": {
|
|
656
|
+
"text": "LoomiIconVariant"
|
|
657
|
+
}
|
|
658
|
+
}
|
|
659
|
+
],
|
|
660
|
+
"description": "Whether `name` is a known icon (registered, provided, or a shipped Heroicon). Loads\nnothing. A `solid` name with only an outline version counts, since it renders that."
|
|
661
|
+
},
|
|
662
|
+
{
|
|
663
|
+
"kind": "function",
|
|
664
|
+
"name": "loomiIconNames",
|
|
665
|
+
"return": {
|
|
666
|
+
"type": {
|
|
667
|
+
"text": "string[]"
|
|
668
|
+
}
|
|
669
|
+
},
|
|
670
|
+
"parameters": [
|
|
671
|
+
{
|
|
672
|
+
"name": "variant",
|
|
673
|
+
"default": "\"outline\"",
|
|
674
|
+
"type": {
|
|
675
|
+
"text": "LoomiIconVariant"
|
|
676
|
+
}
|
|
677
|
+
}
|
|
678
|
+
],
|
|
679
|
+
"description": "Names of every known icon for a variant: the shipped Heroicons plus any registered ones."
|
|
680
|
+
}
|
|
681
|
+
],
|
|
682
|
+
"exports": [
|
|
683
|
+
{
|
|
684
|
+
"kind": "js",
|
|
685
|
+
"name": "hasLoomiIcon",
|
|
686
|
+
"declaration": {
|
|
687
|
+
"name": "hasLoomiIcon",
|
|
688
|
+
"module": "src/names.ts"
|
|
689
|
+
}
|
|
690
|
+
},
|
|
691
|
+
{
|
|
692
|
+
"kind": "js",
|
|
693
|
+
"name": "loomiIconNames",
|
|
694
|
+
"declaration": {
|
|
695
|
+
"name": "loomiIconNames",
|
|
696
|
+
"module": "src/names.ts"
|
|
697
|
+
}
|
|
698
|
+
}
|
|
699
|
+
]
|
|
432
700
|
}
|
|
433
701
|
]
|
|
434
702
|
}
|
package/dist/all.d.ts
ADDED
|
@@ -0,0 +1 @@
|
|
|
1
|
+
{"version":3,"file":"all.d.ts","sourceRoot":"","sources":["../src/all.ts"],"names":[],"mappings":""}
|
package/dist/all.js
ADDED
|
@@ -0,0 +1,11 @@
|
|
|
1
|
+
// `import "@loomidev/icons/all";` — every Heroicon, eagerly, in the importing chunk.
|
|
2
|
+
//
|
|
3
|
+
// Opt-in for apps that would rather pay the whole set (~73 KB gzipped, both variants) up front than
|
|
4
|
+
// load icons one by one: every `icon="<name>"` then renders synchronously on first
|
|
5
|
+
// paint. Icons an app registered with registerLoomiIcon() still win.
|
|
6
|
+
import { provideLoomiIcons } from "./heroicons.js";
|
|
7
|
+
import outline from "./heroicons/outline/all.js";
|
|
8
|
+
import solid from "./heroicons/solid/all.js";
|
|
9
|
+
provideLoomiIcons(outline, "outline");
|
|
10
|
+
provideLoomiIcons(solid, "solid");
|
|
11
|
+
//# sourceMappingURL=all.js.map
|
package/dist/all.js.map
ADDED
|
@@ -0,0 +1 @@
|
|
|
1
|
+
{"version":3,"file":"all.js","sourceRoot":"","sources":["../src/all.ts"],"names":[],"mappings":"AAAA,qFAAqF;AACrF,EAAE;AACF,oGAAoG;AACpG,mFAAmF;AACnF,qEAAqE;AACrE,OAAO,EAAE,iBAAiB,EAAE,MAAM,gBAAgB,CAAC;AACnD,OAAO,OAAO,MAAM,4BAA4B,CAAC;AACjD,OAAO,KAAK,MAAM,0BAA0B,CAAC;AAE7C,iBAAiB,CAAC,OAAO,EAAE,SAAS,CAAC,CAAC;AACtC,iBAAiB,CAAC,KAAK,EAAE,OAAO,CAAC,CAAC"}
|
|
@@ -0,0 +1,19 @@
|
|
|
1
|
+
import { nothing, type SVGTemplateResult } from "lit";
|
|
2
|
+
import { AsyncDirective } from "lit/async-directive.js";
|
|
3
|
+
import { type LoomiIconVariant } from "./heroicons.js";
|
|
4
|
+
declare class LoomiIconDirective extends AsyncDirective {
|
|
5
|
+
private request;
|
|
6
|
+
render(name: string, variant?: LoomiIconVariant): SVGTemplateResult | typeof nothing;
|
|
7
|
+
protected reconnected(): void;
|
|
8
|
+
}
|
|
9
|
+
/**
|
|
10
|
+
* Renders a Heroicon's inner SVG inside an `<svg>` element, loading that one icon on
|
|
11
|
+
* first use: `` svg`<svg viewBox="0 0 24 24">${loomiIcon("bell")}</svg>` ``.
|
|
12
|
+
*
|
|
13
|
+
* Renders synchronously when the icon is already registered, provided or loaded;
|
|
14
|
+
* otherwise it renders nothing and fills in once the icon's module arrives. Check
|
|
15
|
+
* {@link hasLoomiIcon} first when an unknown name should fall back to something else.
|
|
16
|
+
*/
|
|
17
|
+
export declare const loomiIcon: (name: string, variant?: LoomiIconVariant | undefined) => import("lit/async-directive.js").DirectiveResult<typeof LoomiIconDirective>;
|
|
18
|
+
export {};
|
|
19
|
+
//# sourceMappingURL=directive.d.ts.map
|
|
@@ -0,0 +1 @@
|
|
|
1
|
+
{"version":3,"file":"directive.d.ts","sourceRoot":"","sources":["../src/directive.ts"],"names":[],"mappings":"AAAA,OAAO,EAAY,OAAO,EAAE,KAAK,iBAAiB,EAAE,MAAM,KAAK,CAAC;AAChE,OAAO,EAAE,cAAc,EAAa,MAAM,wBAAwB,CAAC;AACnE,OAAO,EAA+B,KAAK,gBAAgB,EAAE,MAAM,gBAAgB,CAAC;AAEpF,cAAM,kBAAmB,SAAQ,cAAc;IAC7C,OAAO,CAAC,OAAO,CAAM;IAErB,MAAM,CAAC,IAAI,EAAE,MAAM,EAAE,OAAO,GAAE,gBAA4B,GAAG,iBAAiB,GAAG,OAAO,OAAO;cAgB5E,WAAW,IAAI,IAAI;CAIvC;AAED;;;;;;;GAOG;AACH,eAAO,MAAM,SAAS,uIAAgC,CAAC"}
|