@iconix/icons 0.0.0-stage → 1.0.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/CHANGELOG.md +8 -0
- package/LICENSE +21 -0
- package/README.md +822 -2
- package/data/meta.json +8442 -0
- package/dist/cli.js +154 -0
- package/dist/core.cjs +405 -0
- package/dist/core.d.cts +37 -0
- package/dist/core.d.ts +37 -0
- package/dist/core.js +386 -0
- package/dist/element.cjs +85 -0
- package/dist/element.d.cts +18 -0
- package/dist/element.d.ts +18 -0
- package/dist/element.js +66 -0
- package/dist/generated/data.cjs +2411 -0
- package/dist/generated/data.d.cts +1196 -0
- package/dist/generated/data.d.ts +1196 -0
- package/dist/generated/data.js +2392 -0
- package/dist/generated/names.cjs +15 -0
- package/dist/generated/names.d.cts +4 -0
- package/dist/generated/names.d.ts +4 -0
- package/dist/generated/names.js +0 -0
- package/dist/generated/react-icons.cjs +2413 -0
- package/dist/generated/react-icons.d.cts +1196 -0
- package/dist/generated/react-icons.d.ts +1196 -0
- package/dist/generated/react-icons.js +3590 -0
- package/dist/generated/registry.cjs +1224 -0
- package/dist/generated/registry.d.cts +6 -0
- package/dist/generated/registry.d.ts +6 -0
- package/dist/generated/registry.js +2401 -0
- package/dist/generated/vue-icons.cjs +2413 -0
- package/dist/generated/vue-icons.d.cts +1196 -0
- package/dist/generated/vue-icons.d.ts +1196 -0
- package/dist/generated/vue-icons.js +3590 -0
- package/dist/index.cjs +116 -0
- package/dist/index.d.cts +32 -0
- package/dist/index.d.ts +32 -0
- package/dist/index.js +98 -0
- package/dist/lite.cjs +40 -0
- package/dist/lite.d.cts +3 -0
- package/dist/lite.d.ts +3 -0
- package/dist/lite.js +37 -0
- package/dist/react-core.cjs +133 -0
- package/dist/react-core.d.cts +22 -0
- package/dist/react-core.d.ts +22 -0
- package/dist/react-core.js +104 -0
- package/dist/react.cjs +28 -0
- package/dist/react.d.cts +4 -0
- package/dist/react.d.ts +4 -0
- package/dist/react.js +8 -0
- package/dist/types.cjs +15 -0
- package/dist/types.d.cts +103 -0
- package/dist/types.d.ts +103 -0
- package/dist/types.js +0 -0
- package/dist/vue-core.cjs +107 -0
- package/dist/vue-core.d.cts +390 -0
- package/dist/vue-core.d.ts +390 -0
- package/dist/vue-core.js +88 -0
- package/dist/vue.cjs +30 -0
- package/dist/vue.d.cts +4 -0
- package/dist/vue.d.ts +4 -0
- package/dist/vue.js +10 -0
- package/iconix.css +34 -0
- package/package.json +156 -4
- package/sprites/iconix-circle.svg +1 -0
- package/sprites/iconix-square.svg +1 -0
- package/sprites/iconix.svg +1 -0
- package/svg/3d-printer.svg +1 -0
- package/svg/abacus.svg +1 -0
- package/svg/accessibility.svg +1 -0
- package/svg/acorn.svg +1 -0
- package/svg/activity.svg +1 -0
- package/svg/address-book.svg +1 -0
- package/svg/advent-candles.svg +1 -0
- package/svg/ai-chip.svg +1 -0
- package/svg/air-conditioner.svg +1 -0
- package/svg/air-filter.svg +1 -0
- package/svg/airflow.svg +1 -0
- package/svg/alarm-off.svg +1 -0
- package/svg/alarm-plus.svg +1 -0
- package/svg/alarm.svg +1 -0
- package/svg/alert-circle.svg +1 -0
- package/svg/alert-octagon.svg +1 -0
- package/svg/alert-square.svg +1 -0
- package/svg/alert-triangle.svg +1 -0
- package/svg/align-center.svg +1 -0
- package/svg/align-justify.svg +1 -0
- package/svg/align-left.svg +1 -0
- package/svg/align-right.svg +1 -0
- package/svg/alphabet.svg +1 -0
- package/svg/ambulance.svg +1 -0
- package/svg/anchor.svg +1 -0
- package/svg/angel.svg +1 -0
- package/svg/ant.svg +1 -0
- package/svg/antenna.svg +1 -0
- package/svg/anvil.svg +1 -0
- package/svg/aperture.svg +1 -0
- package/svg/api.svg +1 -0
- package/svg/apple.svg +1 -0
- package/svg/apps.svg +1 -0
- package/svg/aquarium.svg +1 -0
- package/svg/archive.svg +1 -0
- package/svg/arrow-big-left.svg +1 -0
- package/svg/arrow-big-right.svg +1 -0
- package/svg/arrow-big-up.svg +1 -0
- package/svg/arrow-circle-left.svg +1 -0
- package/svg/arrow-circle-right.svg +1 -0
- package/svg/arrow-down-circle.svg +1 -0
- package/svg/arrow-down-left.svg +1 -0
- package/svg/arrow-down-right.svg +1 -0
- package/svg/arrow-down.svg +1 -0
- package/svg/arrow-left-right.svg +1 -0
- package/svg/arrow-left.svg +1 -0
- package/svg/arrow-right.svg +1 -0
- package/svg/arrow-to-bottom.svg +1 -0
- package/svg/arrow-to-left.svg +1 -0
- package/svg/arrow-to-right.svg +1 -0
- package/svg/arrow-to-top.svg +1 -0
- package/svg/arrow-up-circle.svg +1 -0
- package/svg/arrow-up-left.svg +1 -0
- package/svg/arrow-up-right.svg +1 -0
- package/svg/arrow-up.svg +1 -0
- package/svg/arrows-up-down.svg +1 -0
- package/svg/at-sign.svg +1 -0
- package/svg/atm.svg +1 -0
- package/svg/atom.svg +1 -0
- package/svg/audio-waveform.svg +1 -0
- package/svg/award.svg +1 -0
- package/svg/baby.svg +1 -0
- package/svg/backend.svg +1 -0
- package/svg/backpack.svg +1 -0
- package/svg/badge-alert.svg +1 -0
- package/svg/badge-dot.svg +1 -0
- package/svg/badge-star.svg +1 -0
- package/svg/badge-x.svg +1 -0
- package/svg/bag-cement.svg +1 -0
- package/svg/bag-check.svg +1 -0
- package/svg/bag-plus.svg +1 -0
- package/svg/ball-valve.svg +1 -0
- package/svg/ball.svg +1 -0
- package/svg/balloon.svg +1 -0
- package/svg/balloons.svg +1 -0
- package/svg/ballot.svg +1 -0
- package/svg/ban.svg +1 -0
- package/svg/bandage.svg +1 -0
- package/svg/bank.svg +1 -0
- package/svg/bar-chart-horizontal.svg +1 -0
- package/svg/bar-chart.svg +1 -0
- package/svg/barcode-label.svg +1 -0
- package/svg/barcode.svg +1 -0
- package/svg/barn.svg +1 -0
- package/svg/barrel.svg +1 -0
- package/svg/basket.svg +1 -0
- package/svg/basketball.svg +1 -0
- package/svg/bathroom-scale.svg +1 -0
- package/svg/bathtub.svg +1 -0
- package/svg/battery-cell.svg +1 -0
- package/svg/battery-charging.svg +1 -0
- package/svg/battery-full.svg +1 -0
- package/svg/battery-low.svg +1 -0
- package/svg/battery-warning.svg +1 -0
- package/svg/battery.svg +1 -0
- package/svg/beaker.svg +1 -0
- package/svg/beanie.svg +1 -0
- package/svg/bear.svg +1 -0
- package/svg/bearing.svg +1 -0
- package/svg/bed.svg +1 -0
- package/svg/bee.svg +1 -0
- package/svg/beehive.svg +1 -0
- package/svg/beer.svg +1 -0
- package/svg/bell-curve.svg +1 -0
- package/svg/bell-off.svg +1 -0
- package/svg/bell-ring.svg +1 -0
- package/svg/bell.svg +1 -0
- package/svg/belt.svg +1 -0
- package/svg/bezier.svg +1 -0
- package/svg/bike.svg +1 -0
- package/svg/binary.svg +1 -0
- package/svg/binoculars.svg +1 -0
- package/svg/biomass.svg +1 -0
- package/svg/bird.svg +1 -0
- package/svg/birdhouse.svg +1 -0
- package/svg/blood-drop.svg +1 -0
- package/svg/blueprint.svg +1 -0
- package/svg/bluetooth.svg +1 -0
- package/svg/boiler.svg +1 -0
- package/svg/bold.svg +1 -0
- package/svg/book-open.svg +1 -0
- package/svg/book.svg +1 -0
- package/svg/bookmark.svg +1 -0
- package/svg/books.svg +1 -0
- package/svg/boot.svg +1 -0
- package/svg/bot.svg +1 -0
- package/svg/bouquet.svg +1 -0
- package/svg/bow-tie.svg +1 -0
- package/svg/bowling-ball.svg +1 -0
- package/svg/box-taped.svg +1 -0
- package/svg/boxes.svg +1 -0
- package/svg/braces.svg +1 -0
- package/svg/brackets.svg +1 -0
- package/svg/brain.svg +1 -0
- package/svg/brake-disc.svg +1 -0
- package/svg/bread.svg +1 -0
- package/svg/breadboard.svg +1 -0
- package/svg/brick-wall.svg +1 -0
- package/svg/bricks.svg +1 -0
- package/svg/briefcase.svg +1 -0
- package/svg/broadcast.svg +1 -0
- package/svg/browser.svg +1 -0
- package/svg/brush.svg +1 -0
- package/svg/bucket.svg +1 -0
- package/svg/bug.svg +1 -0
- package/svg/building.svg +1 -0
- package/svg/bulb-led.svg +1 -0
- package/svg/bulb-off.svg +1 -0
- package/svg/bulb-on.svg +1 -0
- package/svg/burger.svg +1 -0
- package/svg/bus.svg +1 -0
- package/svg/butterfly.svg +1 -0
- package/svg/button.svg +1 -0
- package/svg/buzzer.svg +1 -0
- package/svg/cable-car.svg +1 -0
- package/svg/cable-reel.svg +1 -0
- package/svg/cable.svg +1 -0
- package/svg/cactus.svg +1 -0
- package/svg/cake.svg +1 -0
- package/svg/calculator.svg +1 -0
- package/svg/calendar-check.svg +1 -0
- package/svg/calendar-clock.svg +1 -0
- package/svg/calendar-days.svg +1 -0
- package/svg/calendar-edit.svg +1 -0
- package/svg/calendar-heart.svg +1 -0
- package/svg/calendar-minus.svg +1 -0
- package/svg/calendar-off.svg +1 -0
- package/svg/calendar-plus.svg +1 -0
- package/svg/calendar-range.svg +1 -0
- package/svg/calendar-repeat.svg +1 -0
- package/svg/calendar-search.svg +1 -0
- package/svg/calendar-x.svg +1 -0
- package/svg/calendar.svg +1 -0
- package/svg/camera-off.svg +1 -0
- package/svg/camera.svg +1 -0
- package/svg/campfire.svg +1 -0
- package/svg/candle.svg +1 -0
- package/svg/candlestick.svg +1 -0
- package/svg/candy-cane.svg +1 -0
- package/svg/capacitor-polar.svg +1 -0
- package/svg/capacitor.svg +1 -0
- package/svg/car-battery.svg +1 -0
- package/svg/car-door.svg +1 -0
- package/svg/car-front.svg +1 -0
- package/svg/car-insurance.svg +1 -0
- package/svg/car-lift.svg +1 -0
- package/svg/car-wash.svg +1 -0
- package/svg/car.svg +1 -0
- package/svg/caravan.svg +1 -0
- package/svg/care.svg +1 -0
- package/svg/carrot.svg +1 -0
- package/svg/cart-check.svg +1 -0
- package/svg/cart-plus.svg +1 -0
- package/svg/cart-remove.svg +1 -0
- package/svg/cart.svg +1 -0
- package/svg/cash.svg +1 -0
- package/svg/cassette.svg +1 -0
- package/svg/cast.svg +1 -0
- package/svg/castle.svg +1 -0
- package/svg/cat.svg +1 -0
- package/svg/ceiling-lamp.svg +1 -0
- package/svg/cell.svg +1 -0
- package/svg/certificate.svg +1 -0
- package/svg/chain.svg +1 -0
- package/svg/chair.svg +1 -0
- package/svg/chalice.svg +1 -0
- package/svg/chalkboard.svg +1 -0
- package/svg/champagne.svg +1 -0
- package/svg/chart-area.svg +1 -0
- package/svg/chart-donut.svg +1 -0
- package/svg/check-circle.svg +1 -0
- package/svg/check-double.svg +1 -0
- package/svg/check.svg +1 -0
- package/svg/checklist.svg +1 -0
- package/svg/chef-hat.svg +1 -0
- package/svg/cherry.svg +1 -0
- package/svg/chess-pawn.svg +1 -0
- package/svg/chess-rook.svg +1 -0
- package/svg/chevron-down.svg +1 -0
- package/svg/chevron-left.svg +1 -0
- package/svg/chevron-right.svg +1 -0
- package/svg/chevron-up-down.svg +1 -0
- package/svg/chevron-up.svg +1 -0
- package/svg/chevrons-down.svg +1 -0
- package/svg/chevrons-left.svg +1 -0
- package/svg/chevrons-right.svg +1 -0
- package/svg/chevrons-up.svg +1 -0
- package/svg/chick.svg +1 -0
- package/svg/child.svg +1 -0
- package/svg/chimney.svg +1 -0
- package/svg/christmas-tree.svg +1 -0
- package/svg/church-bell.svg +1 -0
- package/svg/church.svg +1 -0
- package/svg/circle-dashed.svg +1 -0
- package/svg/circle-dot.svg +1 -0
- package/svg/circle-minus.svg +1 -0
- package/svg/circle-pause.svg +1 -0
- package/svg/circuit-board.svg +1 -0
- package/svg/circuit-breaker.svg +1 -0
- package/svg/clapperboard.svg +1 -0
- package/svg/classroom.svg +1 -0
- package/svg/clipboard-list.svg +1 -0
- package/svg/clipboard.svg +1 -0
- package/svg/clock-check.svg +1 -0
- package/svg/clock-fast.svg +1 -0
- package/svg/clock.svg +1 -0
- package/svg/close.svg +1 -0
- package/svg/cloud-alert.svg +1 -0
- package/svg/cloud-check.svg +1 -0
- package/svg/cloud-code.svg +1 -0
- package/svg/cloud-download.svg +1 -0
- package/svg/cloud-drizzle.svg +1 -0
- package/svg/cloud-lightning.svg +1 -0
- package/svg/cloud-off.svg +1 -0
- package/svg/cloud-rain.svg +1 -0
- package/svg/cloud-snow.svg +1 -0
- package/svg/cloud-sun.svg +1 -0
- package/svg/cloud-upload.svg +1 -0
- package/svg/cloud.svg +1 -0
- package/svg/cloudy.svg +1 -0
- package/svg/clover.svg +1 -0
- package/svg/code-block.svg +1 -0
- package/svg/code-review.svg +1 -0
- package/svg/code-slash.svg +1 -0
- package/svg/code.svg +1 -0
- package/svg/coffee.svg +1 -0
- package/svg/cog.svg +1 -0
- package/svg/cogs.svg +1 -0
- package/svg/coil.svg +1 -0
- package/svg/coins.svg +1 -0
- package/svg/collapse.svg +1 -0
- package/svg/color-picker.svg +1 -0
- package/svg/column.svg +1 -0
- package/svg/columns.svg +1 -0
- package/svg/comet.svg +1 -0
- package/svg/command.svg +1 -0
- package/svg/commit-log.svg +1 -0
- package/svg/committee.svg +1 -0
- package/svg/compare.svg +1 -0
- package/svg/compass.svg +1 -0
- package/svg/complaint.svg +1 -0
- package/svg/component.svg +1 -0
- package/svg/compressor.svg +1 -0
- package/svg/confetti.svg +1 -0
- package/svg/constellation.svg +1 -0
- package/svg/contact-nc.svg +1 -0
- package/svg/contact-no.svg +1 -0
- package/svg/contact.svg +1 -0
- package/svg/contactless.svg +1 -0
- package/svg/contactor.svg +1 -0
- package/svg/container-ship.svg +1 -0
- package/svg/container.svg +1 -0
- package/svg/contrast.svg +1 -0
- package/svg/control-loop.svg +1 -0
- package/svg/conveyor.svg +1 -0
- package/svg/cooking-pot.svg +1 -0
- package/svg/coolant-temp.svg +1 -0
- package/svg/coolant.svg +1 -0
- package/svg/cooling-tower.svg +1 -0
- package/svg/copy.svg +1 -0
- package/svg/corner-down-left.svg +1 -0
- package/svg/corner-down-right.svg +1 -0
- package/svg/corner-up-left.svg +1 -0
- package/svg/corner-up-right.svg +1 -0
- package/svg/coupon.svg +1 -0
- package/svg/cpu.svg +1 -0
- package/svg/crab.svg +1 -0
- package/svg/crane-hook.svg +1 -0
- package/svg/crane.svg +1 -0
- package/svg/credit-card.svg +1 -0
- package/svg/crop.svg +1 -0
- package/svg/cross.svg +1 -0
- package/svg/crown.svg +1 -0
- package/svg/crystal.svg +1 -0
- package/svg/current-source.svg +1 -0
- package/svg/cursor-pointer.svg +1 -0
- package/svg/curtains.svg +1 -0
- package/svg/dashboard.svg +1 -0
- package/svg/data-protection.svg +1 -0
- package/svg/database-backup.svg +1 -0
- package/svg/database.svg +1 -0
- package/svg/dehumidifier.svg +1 -0
- package/svg/delivery-done.svg +1 -0
- package/svg/dependency.svg +1 -0
- package/svg/devices.svg +1 -0
- package/svg/dice.svg +1 -0
- package/svg/dimension.svg +1 -0
- package/svg/dimmer.svg +1 -0
- package/svg/din-rail.svg +1 -0
- package/svg/diode.svg +1 -0
- package/svg/diploma.svg +1 -0
- package/svg/disc.svg +1 -0
- package/svg/discount.svg +1 -0
- package/svg/dispatch.svg +1 -0
- package/svg/distance.svg +1 -0
- package/svg/dna.svg +1 -0
- package/svg/dog-house.svg +1 -0
- package/svg/dollar.svg +1 -0
- package/svg/door-frame.svg +1 -0
- package/svg/door.svg +1 -0
- package/svg/doorbell.svg +1 -0
- package/svg/download.svg +1 -0
- package/svg/drafting-compass.svg +1 -0
- package/svg/drag-handle.svg +1 -0
- package/svg/drain.svg +1 -0
- package/svg/dress.svg +1 -0
- package/svg/dresser.svg +1 -0
- package/svg/droplet.svg +1 -0
- package/svg/droplets.svg +1 -0
- package/svg/drum.svg +1 -0
- package/svg/duct.svg +1 -0
- package/svg/dumbbell.svg +1 -0
- package/svg/e-learning.svg +1 -0
- package/svg/easel.svg +1 -0
- package/svg/easter-egg.svg +1 -0
- package/svg/eco-bulb.svg +1 -0
- package/svg/eco-energy.svg +1 -0
- package/svg/edit.svg +1 -0
- package/svg/egg.svg +1 -0
- package/svg/electric-car.svg +1 -0
- package/svg/electric-meter.svg +1 -0
- package/svg/electrical-panel.svg +1 -0
- package/svg/elements.svg +1 -0
- package/svg/emergency-stop.svg +1 -0
- package/svg/encoder.svg +1 -0
- package/svg/energy-rating.svg +1 -0
- package/svg/energy-storage.svg +1 -0
- package/svg/energy.svg +1 -0
- package/svg/engine.svg +1 -0
- package/svg/equalizer.svg +1 -0
- package/svg/eraser.svg +1 -0
- package/svg/ethernet-port.svg +1 -0
- package/svg/euro.svg +1 -0
- package/svg/ev-charger.svg +1 -0
- package/svg/ev-plug.svg +1 -0
- package/svg/event-ticket.svg +1 -0
- package/svg/exchange.svg +1 -0
- package/svg/expand.svg +1 -0
- package/svg/external-link.svg +1 -0
- package/svg/eye-off.svg +1 -0
- package/svg/eye.svg +1 -0
- package/svg/face-id.svg +1 -0
- package/svg/factory.svg +1 -0
- package/svg/family.svg +1 -0
- package/svg/fan.svg +1 -0
- package/svg/farmer.svg +1 -0
- package/svg/fast-forward.svg +1 -0
- package/svg/faucet.svg +1 -0
- package/svg/feather.svg +1 -0
- package/svg/fence.svg +1 -0
- package/svg/field.svg +1 -0
- package/svg/fieldbus.svg +1 -0
- package/svg/file-archive.svg +1 -0
- package/svg/file-audio.svg +1 -0
- package/svg/file-chart.svg +1 -0
- package/svg/file-check.svg +1 -0
- package/svg/file-clock.svg +1 -0
- package/svg/file-code.svg +1 -0
- package/svg/file-diff.svg +1 -0
- package/svg/file-download.svg +1 -0
- package/svg/file-heart.svg +1 -0
- package/svg/file-image.svg +1 -0
- package/svg/file-lock.svg +1 -0
- package/svg/file-minus.svg +1 -0
- package/svg/file-pen.svg +1 -0
- package/svg/file-plus.svg +1 -0
- package/svg/file-question.svg +1 -0
- package/svg/file-search.svg +1 -0
- package/svg/file-settings.svg +1 -0
- package/svg/file-signature.svg +1 -0
- package/svg/file-spreadsheet.svg +1 -0
- package/svg/file-star.svg +1 -0
- package/svg/file-text.svg +1 -0
- package/svg/file-upload.svg +1 -0
- package/svg/file-user.svg +1 -0
- package/svg/file-video.svg +1 -0
- package/svg/file-warning.svg +1 -0
- package/svg/file-x.svg +1 -0
- package/svg/file.svg +1 -0
- package/svg/files.svg +1 -0
- package/svg/film-reel.svg +1 -0
- package/svg/film.svg +1 -0
- package/svg/filter.svg +1 -0
- package/svg/fingerprint.svg +1 -0
- package/svg/fire-extinguisher.svg +1 -0
- package/svg/fireplace.svg +1 -0
- package/svg/fireworks.svg +1 -0
- package/svg/first-aid-kit.svg +1 -0
- package/svg/first-aid.svg +1 -0
- package/svg/fish.svg +1 -0
- package/svg/fishing-hook.svg +1 -0
- package/svg/fishing-rod.svg +1 -0
- package/svg/flag.svg +1 -0
- package/svg/flame.svg +1 -0
- package/svg/flask-bubbles.svg +1 -0
- package/svg/flask-round.svg +1 -0
- package/svg/flask.svg +1 -0
- package/svg/flip-flop.svg +1 -0
- package/svg/float-switch.svg +1 -0
- package/svg/flood.svg +1 -0
- package/svg/floor-heating.svg +1 -0
- package/svg/floor-plan.svg +1 -0
- package/svg/flow-meter.svg +1 -0
- package/svg/flowchart.svg +1 -0
- package/svg/flower.svg +1 -0
- package/svg/fog.svg +1 -0
- package/svg/folder-check.svg +1 -0
- package/svg/folder-clock.svg +1 -0
- package/svg/folder-code.svg +1 -0
- package/svg/folder-download.svg +1 -0
- package/svg/folder-heart.svg +1 -0
- package/svg/folder-lock.svg +1 -0
- package/svg/folder-minus.svg +1 -0
- package/svg/folder-open.svg +1 -0
- package/svg/folder-plus.svg +1 -0
- package/svg/folder-search.svg +1 -0
- package/svg/folder-settings.svg +1 -0
- package/svg/folder-star.svg +1 -0
- package/svg/folder-sync.svg +1 -0
- package/svg/folder-tree.svg +1 -0
- package/svg/folder-upload.svg +1 -0
- package/svg/folder-user.svg +1 -0
- package/svg/folder-x.svg +1 -0
- package/svg/folder.svg +1 -0
- package/svg/folders.svg +1 -0
- package/svg/font-size.svg +1 -0
- package/svg/forest.svg +1 -0
- package/svg/forklift.svg +1 -0
- package/svg/forward.svg +1 -0
- package/svg/fox.svg +1 -0
- package/svg/fragile.svg +1 -0
- package/svg/frame.svg +1 -0
- package/svg/fridge.svg +1 -0
- package/svg/fried-egg.svg +1 -0
- package/svg/frog.svg +1 -0
- package/svg/frown.svg +1 -0
- package/svg/fruit-tree.svg +1 -0
- package/svg/fuel-gauge.svg +1 -0
- package/svg/fuel.svg +1 -0
- package/svg/function.svg +1 -0
- package/svg/fuse-symbol.svg +1 -0
- package/svg/fuse.svg +1 -0
- package/svg/gamepad.svg +1 -0
- package/svg/garage.svg +1 -0
- package/svg/garland.svg +1 -0
- package/svg/gate-valve.svg +1 -0
- package/svg/gauge.svg +1 -0
- package/svg/gavel.svg +1 -0
- package/svg/gear-shift.svg +1 -0
- package/svg/gem.svg +1 -0
- package/svg/generator.svg +1 -0
- package/svg/geothermal.svg +1 -0
- package/svg/ghost.svg +1 -0
- package/svg/gift-card.svg +1 -0
- package/svg/gift.svg +1 -0
- package/svg/git-branch.svg +1 -0
- package/svg/git-commit.svg +1 -0
- package/svg/git-compare.svg +1 -0
- package/svg/git-fork.svg +1 -0
- package/svg/git-merge.svg +1 -0
- package/svg/git-pull-request.svg +1 -0
- package/svg/glass-water.svg +1 -0
- package/svg/glasses.svg +1 -0
- package/svg/globe.svg +1 -0
- package/svg/glue.svg +1 -0
- package/svg/golf.svg +1 -0
- package/svg/government.svg +1 -0
- package/svg/grade.svg +1 -0
- package/svg/graduation-cap.svg +1 -0
- package/svg/grapes.svg +1 -0
- package/svg/green-power.svg +1 -0
- package/svg/greenhouse.svg +1 -0
- package/svg/grid.svg +1 -0
- package/svg/ground.svg +1 -0
- package/svg/growth.svg +1 -0
- package/svg/hail.svg +1 -0
- package/svg/hammer.svg +1 -0
- package/svg/hand-pointer.svg +1 -0
- package/svg/hand-stop.svg +1 -0
- package/svg/handbag.svg +1 -0
- package/svg/handwheel.svg +1 -0
- package/svg/hanger.svg +1 -0
- package/svg/hard-drive.svg +1 -0
- package/svg/hard-hat.svg +1 -0
- package/svg/harvest.svg +1 -0
- package/svg/hash.svg +1 -0
- package/svg/hat.svg +1 -0
- package/svg/hay-bale.svg +1 -0
- package/svg/heading-1.svg +1 -0
- package/svg/heading-2.svg +1 -0
- package/svg/heading.svg +1 -0
- package/svg/headlight.svg +1 -0
- package/svg/headphones.svg +1 -0
- package/svg/headset.svg +1 -0
- package/svg/heart-pulse.svg +1 -0
- package/svg/heart.svg +1 -0
- package/svg/heat-pump.svg +1 -0
- package/svg/heat-sink.svg +1 -0
- package/svg/helicopter.svg +1 -0
- package/svg/help-circle.svg +1 -0
- package/svg/high-heel.svg +1 -0
- package/svg/high-voltage.svg +1 -0
- package/svg/highlighter.svg +1 -0
- package/svg/history.svg +1 -0
- package/svg/hmi-panel.svg +1 -0
- package/svg/holiday.svg +1 -0
- package/svg/home-battery.svg +1 -0
- package/svg/home-heart.svg +1 -0
- package/svg/home.svg +1 -0
- package/svg/homework.svg +1 -0
- package/svg/hoodie.svg +1 -0
- package/svg/hopper.svg +1 -0
- package/svg/horseshoe.svg +1 -0
- package/svg/hospital-bed.svg +1 -0
- package/svg/hospital.svg +1 -0
- package/svg/hotel.svg +1 -0
- package/svg/hourglass.svg +1 -0
- package/svg/house-construction.svg +1 -0
- package/svg/house-frame.svg +1 -0
- package/svg/house-key.svg +1 -0
- package/svg/house-plan.svg +1 -0
- package/svg/humidity.svg +1 -0
- package/svg/hydro-dam.svg +1 -0
- package/svg/hydrogen.svg +1 -0
- package/svg/hypothesis.svg +1 -0
- package/svg/i-beam.svg +1 -0
- package/svg/ic-chip.svg +1 -0
- package/svg/ice-cream.svg +1 -0
- package/svg/id-badge.svg +1 -0
- package/svg/id-verified.svg +1 -0
- package/svg/image.svg +1 -0
- package/svg/images.svg +1 -0
- package/svg/inbox.svg +1 -0
- package/svg/indent.svg +1 -0
- package/svg/inductor.svg +1 -0
- package/svg/infinity.svg +1 -0
- package/svg/info-square.svg +1 -0
- package/svg/info.svg +1 -0
- package/svg/inspection.svg +1 -0
- package/svg/inventory.svg +1 -0
- package/svg/inverter.svg +1 -0
- package/svg/invoice.svg +1 -0
- package/svg/io-module.svg +1 -0
- package/svg/irrigation.svg +1 -0
- package/svg/italic.svg +1 -0
- package/svg/jacket.svg +1 -0
- package/svg/jackhammer.svg +1 -0
- package/svg/jellyfish.svg +1 -0
- package/svg/joystick.svg +1 -0
- package/svg/jumper-wire.svg +1 -0
- package/svg/junction-box.svg +1 -0
- package/svg/karaoke.svg +1 -0
- package/svg/keep-dry.svg +1 -0
- package/svg/kettle.svg +1 -0
- package/svg/key-fob.svg +1 -0
- package/svg/key.svg +1 -0
- package/svg/keyboard.svg +1 -0
- package/svg/keyhole.svg +1 -0
- package/svg/kite.svg +1 -0
- package/svg/koala.svg +1 -0
- package/svg/lab-results.svg +1 -0
- package/svg/ladder-logic.svg +1 -0
- package/svg/ladder.svg +1 -0
- package/svg/ladybug.svg +1 -0
- package/svg/lambda.svg +1 -0
- package/svg/lamp-symbol.svg +1 -0
- package/svg/lamp.svg +1 -0
- package/svg/lantern.svg +1 -0
- package/svg/laptop-code.svg +1 -0
- package/svg/laptop.svg +1 -0
- package/svg/laundry.svg +1 -0
- package/svg/law-book.svg +1 -0
- package/svg/lawyer.svg +1 -0
- package/svg/layers.svg +1 -0
- package/svg/layout.svg +1 -0
- package/svg/ldr.svg +1 -0
- package/svg/leaf.svg +1 -0
- package/svg/led-strip.svg +1 -0
- package/svg/led.svg +1 -0
- package/svg/ledger.svg +1 -0
- package/svg/legal-document.svg +1 -0
- package/svg/letter-case.svg +1 -0
- package/svg/level-sensor.svg +1 -0
- package/svg/library.svg +1 -0
- package/svg/license-plate.svg +1 -0
- package/svg/light-switch.svg +1 -0
- package/svg/lightbulb.svg +1 -0
- package/svg/lighthouse.svg +1 -0
- package/svg/lightning-rod.svg +1 -0
- package/svg/limit-switch.svg +1 -0
- package/svg/line-chart-down.svg +1 -0
- package/svg/line-chart.svg +1 -0
- package/svg/line-height.svg +1 -0
- package/svg/link.svg +1 -0
- package/svg/lion.svg +1 -0
- package/svg/list-checks.svg +1 -0
- package/svg/list-ordered.svg +1 -0
- package/svg/list.svg +1 -0
- package/svg/live.svg +1 -0
- package/svg/loaded-pallet.svg +1 -0
- package/svg/loader.svg +1 -0
- package/svg/locate.svg +1 -0
- package/svg/lock.svg +1 -0
- package/svg/log-in.svg +1 -0
- package/svg/log-out.svg +1 -0
- package/svg/logic-and.svg +1 -0
- package/svg/logic-nand.svg +1 -0
- package/svg/logic-not.svg +1 -0
- package/svg/logic-or.svg +1 -0
- package/svg/logic-xor.svg +1 -0
- package/svg/loyalty-card.svg +1 -0
- package/svg/luggage.svg +1 -0
- package/svg/lungs.svg +1 -0
- package/svg/magnet.svg +1 -0
- package/svg/mail-check.svg +1 -0
- package/svg/mail-open.svg +1 -0
- package/svg/mail-plus.svg +1 -0
- package/svg/mail-x.svg +1 -0
- package/svg/mail.svg +1 -0
- package/svg/mailbox.svg +1 -0
- package/svg/manifold.svg +1 -0
- package/svg/map-pin-check.svg +1 -0
- package/svg/map-pin-plus.svg +1 -0
- package/svg/map-pin.svg +1 -0
- package/svg/map.svg +1 -0
- package/svg/mask.svg +1 -0
- package/svg/math.svg +1 -0
- package/svg/maximize.svg +1 -0
- package/svg/measuring-tape.svg +1 -0
- package/svg/medal.svg +1 -0
- package/svg/meditation.svg +1 -0
- package/svg/megaphone.svg +1 -0
- package/svg/menu.svg +1 -0
- package/svg/message-check.svg +1 -0
- package/svg/message-circle.svg +1 -0
- package/svg/message-dots.svg +1 -0
- package/svg/message-plus.svg +1 -0
- package/svg/message-square.svg +1 -0
- package/svg/messages.svg +1 -0
- package/svg/meter-bidirectional.svg +1 -0
- package/svg/metro.svg +1 -0
- package/svg/metronome.svg +1 -0
- package/svg/mic-off.svg +1 -0
- package/svg/mic.svg +1 -0
- package/svg/microcontroller.svg +1 -0
- package/svg/microscope.svg +1 -0
- package/svg/microwave.svg +1 -0
- package/svg/milk.svg +1 -0
- package/svg/minimize.svg +1 -0
- package/svg/minus.svg +1 -0
- package/svg/mitten.svg +1 -0
- package/svg/molecule.svg +1 -0
- package/svg/money-bag.svg +1 -0
- package/svg/monitor-check.svg +1 -0
- package/svg/monitor.svg +1 -0
- package/svg/monkey.svg +1 -0
- package/svg/moon-phase.svg +1 -0
- package/svg/moon-stars.svg +1 -0
- package/svg/moon.svg +1 -0
- package/svg/more-horizontal.svg +1 -0
- package/svg/more-vertical.svg +1 -0
- package/svg/motor-symbol.svg +1 -0
- package/svg/motor-valve.svg +1 -0
- package/svg/motor.svg +1 -0
- package/svg/mountain-snow.svg +1 -0
- package/svg/mountain.svg +1 -0
- package/svg/mouse-face.svg +1 -0
- package/svg/mouse.svg +1 -0
- package/svg/move.svg +1 -0
- package/svg/multimeter.svg +1 -0
- package/svg/mushroom.svg +1 -0
- package/svg/music-note.svg +1 -0
- package/svg/music.svg +1 -0
- package/svg/navigation.svg +1 -0
- package/svg/necklace.svg +1 -0
- package/svg/network.svg +1 -0
- package/svg/newspaper.svg +1 -0
- package/svg/notebook.svg +1 -0
- package/svg/notepad.svg +1 -0
- package/svg/numbers.svg +1 -0
- package/svg/nut.svg +1 -0
- package/svg/object.svg +1 -0
- package/svg/octopus.svg +1 -0
- package/svg/official-mail.svg +1 -0
- package/svg/official-seal.svg +1 -0
- package/svg/ohm.svg +1 -0
- package/svg/oil-can.svg +1 -0
- package/svg/oil-rig.svg +1 -0
- package/svg/oil.svg +1 -0
- package/svg/op-amp.svg +1 -0
- package/svg/orbit.svg +1 -0
- package/svg/org-chart.svg +1 -0
- package/svg/ornament.svg +1 -0
- package/svg/oscilloscope.svg +1 -0
- package/svg/outdent.svg +1 -0
- package/svg/oven.svg +1 -0
- package/svg/owl.svg +1 -0
- package/svg/package-check.svg +1 -0
- package/svg/package-clock.svg +1 -0
- package/svg/package-x.svg +1 -0
- package/svg/package.svg +1 -0
- package/svg/page-break.svg +1 -0
- package/svg/paint-brush.svg +1 -0
- package/svg/paint-bucket.svg +1 -0
- package/svg/paintbrush-roller.svg +1 -0
- package/svg/palette.svg +1 -0
- package/svg/pallet-jack.svg +1 -0
- package/svg/pallet.svg +1 -0
- package/svg/palm-tree.svg +1 -0
- package/svg/panda.svg +1 -0
- package/svg/panel-bottom.svg +1 -0
- package/svg/pants.svg +1 -0
- package/svg/paperclip.svg +1 -0
- package/svg/paragraph.svg +1 -0
- package/svg/parcel-locker.svg +1 -0
- package/svg/parcel.svg +1 -0
- package/svg/parking.svg +1 -0
- package/svg/partners.svg +1 -0
- package/svg/party-popper.svg +1 -0
- package/svg/passport.svg +1 -0
- package/svg/password.svg +1 -0
- package/svg/pause.svg +1 -0
- package/svg/paw.svg +1 -0
- package/svg/payment-received.svg +1 -0
- package/svg/pen-nib.svg +1 -0
- package/svg/pen-tool.svg +1 -0
- package/svg/pencil-line.svg +1 -0
- package/svg/pending.svg +1 -0
- package/svg/people.svg +1 -0
- package/svg/percent.svg +1 -0
- package/svg/permit.svg +1 -0
- package/svg/person.svg +1 -0
- package/svg/petri-dish.svg +1 -0
- package/svg/phone-call.svg +1 -0
- package/svg/phone-incoming.svg +1 -0
- package/svg/phone-off.svg +1 -0
- package/svg/phone-outgoing.svg +1 -0
- package/svg/phone.svg +1 -0
- package/svg/photo-sensor.svg +1 -0
- package/svg/pi.svg +1 -0
- package/svg/piano.svg +1 -0
- package/svg/pickup-truck.svg +1 -0
- package/svg/picture-frame.svg +1 -0
- package/svg/pie-chart.svg +1 -0
- package/svg/pilcrow.svg +1 -0
- package/svg/pill-bottle.svg +1 -0
- package/svg/pill.svg +1 -0
- package/svg/pin.svg +1 -0
- package/svg/pip.svg +1 -0
- package/svg/pipe-tee.svg +1 -0
- package/svg/pipe.svg +1 -0
- package/svg/pipeline-ci.svg +1 -0
- package/svg/pipette.svg +1 -0
- package/svg/piston.svg +1 -0
- package/svg/pitchfork.svg +1 -0
- package/svg/pizza.svg +1 -0
- package/svg/plane.svg +1 -0
- package/svg/planet.svg +1 -0
- package/svg/plant-pot.svg +1 -0
- package/svg/play-circle.svg +1 -0
- package/svg/play.svg +1 -0
- package/svg/playing-cards.svg +1 -0
- package/svg/playlist.svg +1 -0
- package/svg/plc.svg +1 -0
- package/svg/plug-eu.svg +1 -0
- package/svg/plug.svg +1 -0
- package/svg/plumb-bob.svg +1 -0
- package/svg/plunger.svg +1 -0
- package/svg/plus-circle.svg +1 -0
- package/svg/plus.svg +1 -0
- package/svg/pneumatic-cylinder.svg +1 -0
- package/svg/podcast.svg +1 -0
- package/svg/port-crane.svg +1 -0
- package/svg/pos-terminal.svg +1 -0
- package/svg/potentiometer.svg +1 -0
- package/svg/pound.svg +1 -0
- package/svg/power-bank.svg +1 -0
- package/svg/power-cord.svg +1 -0
- package/svg/power-flow.svg +1 -0
- package/svg/power-off.svg +1 -0
- package/svg/power-pylon.svg +1 -0
- package/svg/power-strip.svg +1 -0
- package/svg/power.svg +1 -0
- package/svg/presentation.svg +1 -0
- package/svg/press.svg +1 -0
- package/svg/printer.svg +1 -0
- package/svg/prism.svg +1 -0
- package/svg/privacy.svg +1 -0
- package/svg/produce-crate.svg +1 -0
- package/svg/progress.svg +1 -0
- package/svg/projector.svg +1 -0
- package/svg/proximity-sensor.svg +1 -0
- package/svg/pump.svg +1 -0
- package/svg/pumpjack.svg +1 -0
- package/svg/pumpkin.svg +1 -0
- package/svg/push-button.svg +1 -0
- package/svg/puzzle.svg +1 -0
- package/svg/qr-code.svg +1 -0
- package/svg/quiz.svg +1 -0
- package/svg/quote.svg +1 -0
- package/svg/rabbit.svg +1 -0
- package/svg/racing-flag.svg +1 -0
- package/svg/radar.svg +1 -0
- package/svg/radiator.svg +1 -0
- package/svg/radio.svg +1 -0
- package/svg/rainbow.svg +1 -0
- package/svg/rake.svg +1 -0
- package/svg/rating.svg +1 -0
- package/svg/receipt-check.svg +1 -0
- package/svg/receipt.svg +1 -0
- package/svg/receive.svg +1 -0
- package/svg/record.svg +1 -0
- package/svg/recycle.svg +1 -0
- package/svg/redo.svg +1 -0
- package/svg/refresh.svg +1 -0
- package/svg/regex.svg +1 -0
- package/svg/relay.svg +1 -0
- package/svg/remove-format.svg +1 -0
- package/svg/repeat-once.svg +1 -0
- package/svg/repeat.svg +1 -0
- package/svg/reply.svg +1 -0
- package/svg/resistor.svg +1 -0
- package/svg/returns.svg +1 -0
- package/svg/reviews.svg +1 -0
- package/svg/rewind.svg +1 -0
- package/svg/ring.svg +1 -0
- package/svg/road-sign.svg +1 -0
- package/svg/road.svg +1 -0
- package/svg/rock.svg +1 -0
- package/svg/rocket.svg +1 -0
- package/svg/roof.svg +1 -0
- package/svg/room-size.svg +1 -0
- package/svg/rosary.svg +1 -0
- package/svg/rose.svg +1 -0
- package/svg/rotate-ccw.svg +1 -0
- package/svg/rotate-cw.svg +1 -0
- package/svg/route.svg +1 -0
- package/svg/router.svg +1 -0
- package/svg/rss.svg +1 -0
- package/svg/rug.svg +1 -0
- package/svg/ruler.svg +1 -0
- package/svg/running.svg +1 -0
- package/svg/safe.svg +1 -0
- package/svg/safety-goggles.svg +1 -0
- package/svg/sailboat.svg +1 -0
- package/svg/salad.svg +1 -0
- package/svg/sale-tag.svg +1 -0
- package/svg/satellite-dish.svg +1 -0
- package/svg/save.svg +1 -0
- package/svg/scada.svg +1 -0
- package/svg/scaffold.svg +1 -0
- package/svg/scale.svg +1 -0
- package/svg/scan-qr.svg +1 -0
- package/svg/scan.svg +1 -0
- package/svg/scatter-plot.svg +1 -0
- package/svg/school-bell.svg +1 -0
- package/svg/school-bus.svg +1 -0
- package/svg/school-desk.svg +1 -0
- package/svg/school.svg +1 -0
- package/svg/scissors.svg +1 -0
- package/svg/scooter.svg +1 -0
- package/svg/screen-share.svg +1 -0
- package/svg/screw.svg +1 -0
- package/svg/screwdriver.svg +1 -0
- package/svg/sd-card.svg +1 -0
- package/svg/search.svg +1 -0
- package/svg/secure-code.svg +1 -0
- package/svg/secure-payment.svg +1 -0
- package/svg/secured.svg +1 -0
- package/svg/seismic.svg +1 -0
- package/svg/selection.svg +1 -0
- package/svg/selector-switch.svg +1 -0
- package/svg/send.svg +1 -0
- package/svg/senior.svg +1 -0
- package/svg/sensor.svg +1 -0
- package/svg/server.svg +1 -0
- package/svg/servo.svg +1 -0
- package/svg/set-square.svg +1 -0
- package/svg/settings.svg +1 -0
- package/svg/seven-segment.svg +1 -0
- package/svg/shapes.svg +1 -0
- package/svg/share-out.svg +1 -0
- package/svg/share.svg +1 -0
- package/svg/shell.svg +1 -0
- package/svg/shelving.svg +1 -0
- package/svg/shield-alert.svg +1 -0
- package/svg/shield-check.svg +1 -0
- package/svg/shield-lock.svg +1 -0
- package/svg/shield-user.svg +1 -0
- package/svg/shield-x.svg +1 -0
- package/svg/shield.svg +1 -0
- package/svg/ship.svg +1 -0
- package/svg/shipment-tracking.svg +1 -0
- package/svg/shipping-container.svg +1 -0
- package/svg/shipping-fast.svg +1 -0
- package/svg/shipping-label.svg +1 -0
- package/svg/shoe.svg +1 -0
- package/svg/shooting-star.svg +1 -0
- package/svg/shopping-bag.svg +1 -0
- package/svg/shorts.svg +1 -0
- package/svg/shovel.svg +1 -0
- package/svg/shower.svg +1 -0
- package/svg/shuffle.svg +1 -0
- package/svg/sidebar.svg +1 -0
- package/svg/sigma.svg +1 -0
- package/svg/sign.svg +1 -0
- package/svg/signal-weak.svg +1 -0
- package/svg/signal.svg +1 -0
- package/svg/signature.svg +1 -0
- package/svg/signpost.svg +1 -0
- package/svg/silo.svg +1 -0
- package/svg/sine-wave.svg +1 -0
- package/svg/sink.svg +1 -0
- package/svg/siren.svg +1 -0
- package/svg/sitemap.svg +1 -0
- package/svg/skateboard.svg +1 -0
- package/svg/skip-back.svg +1 -0
- package/svg/skip-forward.svg +1 -0
- package/svg/skirt.svg +1 -0
- package/svg/sleep.svg +1 -0
- package/svg/sliders-vertical.svg +1 -0
- package/svg/sliders.svg +1 -0
- package/svg/smart-home.svg +1 -0
- package/svg/smartphone.svg +1 -0
- package/svg/smile.svg +1 -0
- package/svg/smoke-detector.svg +1 -0
- package/svg/snail.svg +1 -0
- package/svg/snake.svg +1 -0
- package/svg/snowflake.svg +1 -0
- package/svg/snowman.svg +1 -0
- package/svg/sock.svg +1 -0
- package/svg/socket.svg +1 -0
- package/svg/sofa.svg +1 -0
- package/svg/soil-moisture.svg +1 -0
- package/svg/solar-home.svg +1 -0
- package/svg/solar-panel.svg +1 -0
- package/svg/solar-system.svg +1 -0
- package/svg/soldering-iron.svg +1 -0
- package/svg/solenoid-valve.svg +1 -0
- package/svg/soup.svg +1 -0
- package/svg/spark-plug.svg +1 -0
- package/svg/spark.svg +1 -0
- package/svg/sparkles.svg +1 -0
- package/svg/speaker-user.svg +1 -0
- package/svg/speaker.svg +1 -0
- package/svg/speech-bubbles.svg +1 -0
- package/svg/speed-camera.svg +1 -0
- package/svg/speedometer.svg +1 -0
- package/svg/spider.svg +1 -0
- package/svg/spinner.svg +1 -0
- package/svg/spirit-level.svg +1 -0
- package/svg/spray-can.svg +1 -0
- package/svg/sprinkler.svg +1 -0
- package/svg/sprout.svg +1 -0
- package/svg/square-check.svg +1 -0
- package/svg/square-plus.svg +1 -0
- package/svg/square-root.svg +1 -0
- package/svg/square-wave.svg +1 -0
- package/svg/square-x.svg +1 -0
- package/svg/stack-light.svg +1 -0
- package/svg/stairs.svg +1 -0
- package/svg/stamp.svg +1 -0
- package/svg/star-half.svg +1 -0
- package/svg/star.svg +1 -0
- package/svg/starburst.svg +1 -0
- package/svg/stationery.svg +1 -0
- package/svg/steering-wheel.svg +1 -0
- package/svg/stethoscope.svg +1 -0
- package/svg/sticky-note.svg +1 -0
- package/svg/stock-ok.svg +1 -0
- package/svg/stop.svg +1 -0
- package/svg/stopwatch.svg +1 -0
- package/svg/store.svg +1 -0
- package/svg/strikethrough.svg +1 -0
- package/svg/student.svg +1 -0
- package/svg/subscript.svg +1 -0
- package/svg/subscription.svg +1 -0
- package/svg/substation.svg +1 -0
- package/svg/subtitles.svg +1 -0
- package/svg/suit.svg +1 -0
- package/svg/sun-dim.svg +1 -0
- package/svg/sun.svg +1 -0
- package/svg/sunglasses.svg +1 -0
- package/svg/sunrise.svg +1 -0
- package/svg/sunset.svg +1 -0
- package/svg/superscript.svg +1 -0
- package/svg/surfboard.svg +1 -0
- package/svg/swap.svg +1 -0
- package/svg/swimming.svg +1 -0
- package/svg/swing.svg +1 -0
- package/svg/switch-spst.svg +1 -0
- package/svg/sync.svg +1 -0
- package/svg/syringe.svg +1 -0
- package/svg/table-desk.svg +1 -0
- package/svg/table.svg +1 -0
- package/svg/tablet.svg +1 -0
- package/svg/tag-check.svg +1 -0
- package/svg/tag.svg +1 -0
- package/svg/tank.svg +1 -0
- package/svg/target.svg +1 -0
- package/svg/tax.svg +1 -0
- package/svg/taxi.svg +1 -0
- package/svg/team.svg +1 -0
- package/svg/telescope.svg +1 -0
- package/svg/temp-sensor.svg +1 -0
- package/svg/tennis-ball.svg +1 -0
- package/svg/tent.svg +1 -0
- package/svg/terminal-block.svg +1 -0
- package/svg/terminal-square.svg +1 -0
- package/svg/terminal.svg +1 -0
- package/svg/terms.svg +1 -0
- package/svg/test-pass.svg +1 -0
- package/svg/test-tube.svg +1 -0
- package/svg/text-cursor.svg +1 -0
- package/svg/text-image.svg +1 -0
- package/svg/text-wrap.svg +1 -0
- package/svg/thermometer-cold.svg +1 -0
- package/svg/thermometer-sun.svg +1 -0
- package/svg/thermometer.svg +1 -0
- package/svg/thermostat.svg +1 -0
- package/svg/this-side-up.svg +1 -0
- package/svg/three-phase.svg +1 -0
- package/svg/thumbs-down.svg +1 -0
- package/svg/thumbs-up.svg +1 -0
- package/svg/ticket.svg +1 -0
- package/svg/tie.svg +1 -0
- package/svg/tiles.svg +1 -0
- package/svg/time-zone.svg +1 -0
- package/svg/timer-off.svg +1 -0
- package/svg/timer-relay.svg +1 -0
- package/svg/timer.svg +1 -0
- package/svg/timetable.svg +1 -0
- package/svg/tire-pressure.svg +1 -0
- package/svg/toggle.svg +1 -0
- package/svg/toilet.svg +1 -0
- package/svg/tomato.svg +1 -0
- package/svg/toolbox.svg +1 -0
- package/svg/tooth.svg +1 -0
- package/svg/tornado.svg +1 -0
- package/svg/touch.svg +1 -0
- package/svg/tow-truck.svg +1 -0
- package/svg/town-hall.svg +1 -0
- package/svg/toy-blocks.svg +1 -0
- package/svg/traffic-cone.svg +1 -0
- package/svg/traffic-light.svg +1 -0
- package/svg/train.svg +1 -0
- package/svg/tram.svg +1 -0
- package/svg/transformer.svg +1 -0
- package/svg/transistor.svg +1 -0
- package/svg/translate.svg +1 -0
- package/svg/transmitter.svg +1 -0
- package/svg/trash.svg +1 -0
- package/svg/tree-round.svg +1 -0
- package/svg/tree.svg +1 -0
- package/svg/trending-down.svg +1 -0
- package/svg/trending-up.svg +1 -0
- package/svg/triangle-wave.svg +1 -0
- package/svg/trophy.svg +1 -0
- package/svg/truck.svg +1 -0
- package/svg/tshirt.svg +1 -0
- package/svg/tulip.svg +1 -0
- package/svg/turbo.svg +1 -0
- package/svg/tv.svg +1 -0
- package/svg/type.svg +1 -0
- package/svg/ufo.svg +1 -0
- package/svg/umbrella.svg +1 -0
- package/svg/under-construction.svg +1 -0
- package/svg/underline.svg +1 -0
- package/svg/undo.svg +1 -0
- package/svg/unlock.svg +1 -0
- package/svg/upload.svg +1 -0
- package/svg/usb-outlet.svg +1 -0
- package/svg/usb.svg +1 -0
- package/svg/user-alert.svg +1 -0
- package/svg/user-check.svg +1 -0
- package/svg/user-circle.svg +1 -0
- package/svg/user-clock.svg +1 -0
- package/svg/user-edit.svg +1 -0
- package/svg/user-heart.svg +1 -0
- package/svg/user-lock.svg +1 -0
- package/svg/user-minus.svg +1 -0
- package/svg/user-plus.svg +1 -0
- package/svg/user-search.svg +1 -0
- package/svg/user-settings.svg +1 -0
- package/svg/user-shield.svg +1 -0
- package/svg/user-square.svg +1 -0
- package/svg/user-star.svg +1 -0
- package/svg/user-x.svg +1 -0
- package/svg/user.svg +1 -0
- package/svg/users.svg +1 -0
- package/svg/utensils.svg +1 -0
- package/svg/uv-index.svg +1 -0
- package/svg/valve.svg +1 -0
- package/svg/van.svg +1 -0
- package/svg/variable.svg +1 -0
- package/svg/vase.svg +1 -0
- package/svg/vent.svg +1 -0
- package/svg/verified.svg +1 -0
- package/svg/vfd-drive.svg +1 -0
- package/svg/video-off.svg +1 -0
- package/svg/video.svg +1 -0
- package/svg/virus.svg +1 -0
- package/svg/voicemail.svg +1 -0
- package/svg/volcano.svg +1 -0
- package/svg/voltage-ac.svg +1 -0
- package/svg/voltage-dc.svg +1 -0
- package/svg/voltage-source.svg +1 -0
- package/svg/volume-1.svg +1 -0
- package/svg/volume-2.svg +1 -0
- package/svg/volume-x.svg +1 -0
- package/svg/volume.svg +1 -0
- package/svg/vr-headset.svg +1 -0
- package/svg/walkie-talkie.svg +1 -0
- package/svg/walking.svg +1 -0
- package/svg/wallet.svg +1 -0
- package/svg/wand.svg +1 -0
- package/svg/wardrobe.svg +1 -0
- package/svg/warehouse.svg +1 -0
- package/svg/washing-machine.svg +1 -0
- package/svg/watch.svg +1 -0
- package/svg/water-filter.svg +1 -0
- package/svg/water-heater.svg +1 -0
- package/svg/water-pipe-leak.svg +1 -0
- package/svg/watering-can.svg +1 -0
- package/svg/wave-energy.svg +1 -0
- package/svg/waves.svg +1 -0
- package/svg/web-code.svg +1 -0
- package/svg/webcam.svg +1 -0
- package/svg/wedding-rings.svg +1 -0
- package/svg/weight.svg +1 -0
- package/svg/wheat.svg +1 -0
- package/svg/wheel.svg +1 -0
- package/svg/wheelbarrow.svg +1 -0
- package/svg/wifi-off.svg +1 -0
- package/svg/wifi.svg +1 -0
- package/svg/wind-farm.svg +1 -0
- package/svg/wind-turbine.svg +1 -0
- package/svg/wind.svg +1 -0
- package/svg/windmill.svg +1 -0
- package/svg/window.svg +1 -0
- package/svg/windsock.svg +1 -0
- package/svg/wine.svg +1 -0
- package/svg/wires.svg +1 -0
- package/svg/wishlist.svg +1 -0
- package/svg/work-glove.svg +1 -0
- package/svg/work-zone.svg +1 -0
- package/svg/workflow.svg +1 -0
- package/svg/wrench.svg +1 -0
- package/svg/x-circle.svg +1 -0
- package/svg/yen.svg +1 -0
- package/svg/zap-off.svg +1 -0
- package/svg/zap.svg +1 -0
- package/svg/zener-diode.svg +1 -0
- package/svg/zoom-in.svg +1 -0
- package/svg/zoom-out.svg +1 -0
package/dist/cli.js
ADDED
|
@@ -0,0 +1,154 @@
|
|
|
1
|
+
#!/usr/bin/env node
|
|
2
|
+
import { parseArgs } from "node:util";
|
|
3
|
+
import { writeFileSync, mkdirSync, readFileSync } from "node:fs";
|
|
4
|
+
import { join, dirname, resolve } from "node:path";
|
|
5
|
+
import { fileURLToPath } from "node:url";
|
|
6
|
+
import * as ik from "./index.js";
|
|
7
|
+
const pkg = JSON.parse(readFileSync(join(dirname(fileURLToPath(import.meta.url)), "..", "package.json"), "utf8"));
|
|
8
|
+
const HELP = `iconix ${pkg.version} \u2013 ${ik.iconNames.length} SVG icons
|
|
9
|
+
|
|
10
|
+
Usage:
|
|
11
|
+
iconix list [--category <cat>] [--json] list icons
|
|
12
|
+
iconix categories list categories
|
|
13
|
+
iconix search <query> [--category <cat>] search icons
|
|
14
|
+
iconix svg <name> [options] print SVG to stdout
|
|
15
|
+
iconix export <names...> [options] -o <dir> write .svg files
|
|
16
|
+
iconix sprite <names...> [options] -o <file> write a <symbol> sprite
|
|
17
|
+
|
|
18
|
+
Selecting icons (export/sprite): names, --category <cat> (repeatable), --all
|
|
19
|
+
|
|
20
|
+
Appearance options:
|
|
21
|
+
-s, --size <n> size (px or CSS length, e.g. 2em) [24]
|
|
22
|
+
--width <n> width
|
|
23
|
+
--height <n> height
|
|
24
|
+
--color <color> stroke color [currentColor]
|
|
25
|
+
--fill <color> fill [none]
|
|
26
|
+
-w, --stroke-width <n> stroke width [2]
|
|
27
|
+
--absolute-stroke-width constant stroke width in px
|
|
28
|
+
--linecap <butt|round|square> [round]
|
|
29
|
+
--linejoin <miter|round|bevel> [round]
|
|
30
|
+
-v, --variant <default|circle|square> [default]
|
|
31
|
+
-b, --background <color> frame background
|
|
32
|
+
-r, --rotate <degrees> rotation
|
|
33
|
+
--flip <horizontal|vertical|both>
|
|
34
|
+
--title <text> accessible title
|
|
35
|
+
--prefix <text> sprite symbol id prefix [i-]
|
|
36
|
+
-o, --out <path> directory (export) or file (sprite)
|
|
37
|
+
-h, --help | --version
|
|
38
|
+
`;
|
|
39
|
+
const { values: opt, positionals } = parseArgs({
|
|
40
|
+
allowPositionals: true,
|
|
41
|
+
options: {
|
|
42
|
+
help: { type: "boolean", short: "h" },
|
|
43
|
+
version: { type: "boolean" },
|
|
44
|
+
json: { type: "boolean" },
|
|
45
|
+
all: { type: "boolean" },
|
|
46
|
+
category: { type: "string", short: "c", multiple: true },
|
|
47
|
+
out: { type: "string", short: "o" },
|
|
48
|
+
size: { type: "string", short: "s" },
|
|
49
|
+
width: { type: "string" },
|
|
50
|
+
height: { type: "string" },
|
|
51
|
+
color: { type: "string" },
|
|
52
|
+
fill: { type: "string" },
|
|
53
|
+
"stroke-width": { type: "string", short: "w" },
|
|
54
|
+
"absolute-stroke-width": { type: "boolean" },
|
|
55
|
+
linecap: { type: "string" },
|
|
56
|
+
linejoin: { type: "string" },
|
|
57
|
+
variant: { type: "string", short: "v" },
|
|
58
|
+
background: { type: "string", short: "b" },
|
|
59
|
+
rotate: { type: "string", short: "r" },
|
|
60
|
+
flip: { type: "string" },
|
|
61
|
+
title: { type: "string" },
|
|
62
|
+
prefix: { type: "string" }
|
|
63
|
+
}
|
|
64
|
+
});
|
|
65
|
+
function fail(message) {
|
|
66
|
+
process.stderr.write(`iconix: ${message}
|
|
67
|
+
`);
|
|
68
|
+
process.exit(1);
|
|
69
|
+
}
|
|
70
|
+
function renderOptions() {
|
|
71
|
+
const o = {
|
|
72
|
+
size: opt.size,
|
|
73
|
+
width: opt.width,
|
|
74
|
+
height: opt.height,
|
|
75
|
+
color: opt.color,
|
|
76
|
+
fill: opt.fill,
|
|
77
|
+
strokeWidth: opt["stroke-width"],
|
|
78
|
+
absoluteStrokeWidth: opt["absolute-stroke-width"],
|
|
79
|
+
strokeLinecap: opt.linecap,
|
|
80
|
+
strokeLinejoin: opt.linejoin,
|
|
81
|
+
variant: opt.variant,
|
|
82
|
+
background: opt.background,
|
|
83
|
+
rotate: opt.rotate,
|
|
84
|
+
flip: opt.flip,
|
|
85
|
+
title: opt.title
|
|
86
|
+
};
|
|
87
|
+
for (const k of Object.keys(o)) if (o[k] === void 0) delete o[k];
|
|
88
|
+
ik.resolveOptions(o);
|
|
89
|
+
return o;
|
|
90
|
+
}
|
|
91
|
+
function selectIcons(names) {
|
|
92
|
+
const picked = /* @__PURE__ */ new Map();
|
|
93
|
+
if (opt.all) for (const n of ik.iconNames) picked.set(n, ik.icons[n]);
|
|
94
|
+
for (const cat of opt.category || []) {
|
|
95
|
+
if (!ik.categories.includes(cat)) fail(`unknown category "${cat}". Available: ${ik.categories.join(", ")}`);
|
|
96
|
+
for (const icon of ik.getIconsByCategory(cat)) picked.set(icon.name, icon);
|
|
97
|
+
}
|
|
98
|
+
for (const n of names) {
|
|
99
|
+
const icon = ik.getIcon(n);
|
|
100
|
+
if (!icon) fail(`unknown icon "${n}". Did you mean: ${ik.suggestIcons(n).join(", ")}?`);
|
|
101
|
+
picked.set(n, icon);
|
|
102
|
+
}
|
|
103
|
+
if (!picked.size) fail("no icons selected (pass names, --category or --all)");
|
|
104
|
+
return [...picked.values()];
|
|
105
|
+
}
|
|
106
|
+
const [command, ...args] = positionals;
|
|
107
|
+
try {
|
|
108
|
+
if (opt.version) {
|
|
109
|
+
process.stdout.write(`${pkg.version}
|
|
110
|
+
`);
|
|
111
|
+
} else if (opt.help || !command || command === "help") {
|
|
112
|
+
process.stdout.write(HELP);
|
|
113
|
+
} else if (command === "list") {
|
|
114
|
+
const list = opt.category ? opt.category.flatMap((c) => ik.getIconsByCategory(c)) : Object.values(ik.icons);
|
|
115
|
+
if (opt.json) process.stdout.write(`${JSON.stringify(list.map(({ name, category }) => ({ name, category })), null, 2)}
|
|
116
|
+
`);
|
|
117
|
+
else process.stdout.write(`${list.map((i) => i.name).join("\n")}
|
|
118
|
+
`);
|
|
119
|
+
} else if (command === "categories") {
|
|
120
|
+
process.stdout.write(`${ik.categories.map((c) => `${c} (${ik.getIconsByCategory(c).length})`).join("\n")}
|
|
121
|
+
`);
|
|
122
|
+
} else if (command === "search") {
|
|
123
|
+
if (!args.length) fail("provide a search query");
|
|
124
|
+
const res = ik.searchIcons(args.join(" "), { category: opt.category?.[0] });
|
|
125
|
+
process.stdout.write(res.length ? `${res.map((i) => `${i.name} ${i.category}`).join("\n")}
|
|
126
|
+
` : "no results\n");
|
|
127
|
+
} else if (command === "svg") {
|
|
128
|
+
if (args.length !== 1) fail("provide exactly one icon name");
|
|
129
|
+
const [icon] = selectIcons(args);
|
|
130
|
+
process.stdout.write(`${ik.toSvg(icon, renderOptions())}
|
|
131
|
+
`);
|
|
132
|
+
} else if (command === "export") {
|
|
133
|
+
const icons = selectIcons(args);
|
|
134
|
+
const options = renderOptions();
|
|
135
|
+
const outDir = resolve(opt.out || "iconix-svg");
|
|
136
|
+
mkdirSync(outDir, { recursive: true });
|
|
137
|
+
for (const icon of icons) writeFileSync(join(outDir, `${icon.name}.svg`), `${ik.toSvg(icon, options)}
|
|
138
|
+
`);
|
|
139
|
+
process.stdout.write(`wrote ${icons.length} files to ${outDir}
|
|
140
|
+
`);
|
|
141
|
+
} else if (command === "sprite") {
|
|
142
|
+
const icons = selectIcons(args);
|
|
143
|
+
const file = resolve(opt.out || "iconix-sprite.svg");
|
|
144
|
+
mkdirSync(dirname(file), { recursive: true });
|
|
145
|
+
writeFileSync(file, `${ik.toSprite(icons, { ...renderOptions(), idPrefix: opt.prefix ?? "i-" })}
|
|
146
|
+
`);
|
|
147
|
+
process.stdout.write(`wrote sprite (${icons.length} icons) to ${file}
|
|
148
|
+
`);
|
|
149
|
+
} else {
|
|
150
|
+
fail(`unknown command "${command}" (iconix --help)`);
|
|
151
|
+
}
|
|
152
|
+
} catch (err) {
|
|
153
|
+
fail((err instanceof Error ? err.message : String(err)).replace(/^\[iconix\] /, ""));
|
|
154
|
+
}
|
package/dist/core.cjs
ADDED
|
@@ -0,0 +1,405 @@
|
|
|
1
|
+
var __defProp = Object.defineProperty;
|
|
2
|
+
var __getOwnPropDesc = Object.getOwnPropertyDescriptor;
|
|
3
|
+
var __getOwnPropNames = Object.getOwnPropertyNames;
|
|
4
|
+
var __hasOwnProp = Object.prototype.hasOwnProperty;
|
|
5
|
+
var __export = (target, all) => {
|
|
6
|
+
for (var name in all)
|
|
7
|
+
__defProp(target, name, { get: all[name], enumerable: true });
|
|
8
|
+
};
|
|
9
|
+
var __copyProps = (to, from, except, desc) => {
|
|
10
|
+
if (from && typeof from === "object" || typeof from === "function") {
|
|
11
|
+
for (let key of __getOwnPropNames(from))
|
|
12
|
+
if (!__hasOwnProp.call(to, key) && key !== except)
|
|
13
|
+
__defProp(to, key, { get: () => from[key], enumerable: !(desc = __getOwnPropDesc(from, key)) || desc.enumerable });
|
|
14
|
+
}
|
|
15
|
+
return to;
|
|
16
|
+
};
|
|
17
|
+
var __toCommonJS = (mod) => __copyProps(__defProp({}, "__esModule", { value: true }), mod);
|
|
18
|
+
var core_exports = {};
|
|
19
|
+
__export(core_exports, {
|
|
20
|
+
DEFAULT_OPTIONS: () => DEFAULT_OPTIONS,
|
|
21
|
+
OPTION_KEYS: () => OPTION_KEYS,
|
|
22
|
+
SVG_NS: () => SVG_NS,
|
|
23
|
+
VIEWBOX_SIZE: () => VIEWBOX_SIZE,
|
|
24
|
+
buildIconTree: () => buildIconTree,
|
|
25
|
+
createElement: () => createElement,
|
|
26
|
+
escapeHtml: () => escapeHtml,
|
|
27
|
+
getDefaults: () => getDefaults,
|
|
28
|
+
isIcon: () => isIcon,
|
|
29
|
+
levenshtein: () => levenshtein,
|
|
30
|
+
nodesToString: () => nodesToString,
|
|
31
|
+
parseBoolean: () => parseBoolean,
|
|
32
|
+
readOptionsFromAttributes: () => readOptionsFromAttributes,
|
|
33
|
+
replaceElements: () => replaceElements,
|
|
34
|
+
resetDefaults: () => resetDefaults,
|
|
35
|
+
resolveOptions: () => resolveOptions,
|
|
36
|
+
setDefaults: () => setDefaults,
|
|
37
|
+
styleToString: () => styleToString,
|
|
38
|
+
toDataUri: () => toDataUri,
|
|
39
|
+
toPascalCase: () => toPascalCase,
|
|
40
|
+
toSprite: () => toSprite,
|
|
41
|
+
toSvg: () => toSvg,
|
|
42
|
+
treeToElement: () => treeToElement,
|
|
43
|
+
treeToString: () => treeToString
|
|
44
|
+
});
|
|
45
|
+
module.exports = __toCommonJS(core_exports);
|
|
46
|
+
const SVG_NS = "http://www.w3.org/2000/svg";
|
|
47
|
+
const VIEWBOX_SIZE = 24;
|
|
48
|
+
const VARIANT_ALIASES = {
|
|
49
|
+
default: "default",
|
|
50
|
+
circle: "circle",
|
|
51
|
+
square: "square"
|
|
52
|
+
};
|
|
53
|
+
const FLIPS = ["horizontal", "vertical", "both"];
|
|
54
|
+
const LINECAPS = ["butt", "round", "square"];
|
|
55
|
+
const LINEJOINS = ["miter", "round", "bevel", "arcs", "miter-clip"];
|
|
56
|
+
const INNER_SCALE = 0.6;
|
|
57
|
+
const DEFAULT_OPTIONS = Object.freeze({
|
|
58
|
+
size: 24,
|
|
59
|
+
width: void 0,
|
|
60
|
+
height: void 0,
|
|
61
|
+
color: "currentColor",
|
|
62
|
+
fill: "none",
|
|
63
|
+
strokeWidth: 2,
|
|
64
|
+
absoluteStrokeWidth: false,
|
|
65
|
+
strokeLinecap: "round",
|
|
66
|
+
strokeLinejoin: "round",
|
|
67
|
+
variant: "default",
|
|
68
|
+
background: "none",
|
|
69
|
+
rotate: 0,
|
|
70
|
+
flip: void 0,
|
|
71
|
+
spin: false,
|
|
72
|
+
pulse: false,
|
|
73
|
+
title: void 0,
|
|
74
|
+
className: void 0,
|
|
75
|
+
style: void 0,
|
|
76
|
+
attrs: void 0
|
|
77
|
+
});
|
|
78
|
+
const OPTION_KEYS = Object.freeze(Object.keys(DEFAULT_OPTIONS));
|
|
79
|
+
let globalDefaults = { ...DEFAULT_OPTIONS };
|
|
80
|
+
function pickDefined(obj) {
|
|
81
|
+
const out = {};
|
|
82
|
+
if (!obj) return out;
|
|
83
|
+
for (const key of OPTION_KEYS) {
|
|
84
|
+
if (obj[key] !== void 0) out[key] = obj[key];
|
|
85
|
+
}
|
|
86
|
+
return out;
|
|
87
|
+
}
|
|
88
|
+
function setDefaults(options) {
|
|
89
|
+
if (options == null || typeof options !== "object") {
|
|
90
|
+
throw new TypeError("[iconix] setDefaults() expects an options object");
|
|
91
|
+
}
|
|
92
|
+
const next = { ...globalDefaults, ...pickDefined(options) };
|
|
93
|
+
resolveOptions(next);
|
|
94
|
+
globalDefaults = next;
|
|
95
|
+
return getDefaults();
|
|
96
|
+
}
|
|
97
|
+
function getDefaults() {
|
|
98
|
+
return { ...globalDefaults };
|
|
99
|
+
}
|
|
100
|
+
function resetDefaults() {
|
|
101
|
+
globalDefaults = { ...DEFAULT_OPTIONS };
|
|
102
|
+
return getDefaults();
|
|
103
|
+
}
|
|
104
|
+
const CSS_LENGTH = /^\s*\d*\.?\d+\s*(px|em|rem|%|vw|vh|vmin|vmax|pt|cm|mm|in|ch|ex)?\s*$/;
|
|
105
|
+
function isLength(value) {
|
|
106
|
+
if (typeof value === "number") return Number.isFinite(value) && value > 0;
|
|
107
|
+
if (typeof value === "string") return CSS_LENGTH.test(value) && parseFloat(value) > 0;
|
|
108
|
+
return false;
|
|
109
|
+
}
|
|
110
|
+
function toNumberIfNumeric(value) {
|
|
111
|
+
if (typeof value === "string" && /^\s*\d*\.?\d+\s*$/.test(value)) return parseFloat(value);
|
|
112
|
+
return value;
|
|
113
|
+
}
|
|
114
|
+
function nonEmptyString(value, key) {
|
|
115
|
+
if (typeof value !== "string" || !value.trim()) throw new TypeError(`[iconix] ${key} must be a non-empty string`);
|
|
116
|
+
return value;
|
|
117
|
+
}
|
|
118
|
+
function resolveOptions(options = {}, base = globalDefaults) {
|
|
119
|
+
const o = { ...base, ...pickDefined(options) };
|
|
120
|
+
const size = toNumberIfNumeric(o.size);
|
|
121
|
+
if (!isLength(size)) throw new TypeError(`[iconix] invalid size: ${JSON.stringify(o.size)} (use a positive number or CSS length like "2em")`);
|
|
122
|
+
const dimension = (key) => {
|
|
123
|
+
const raw = o[key];
|
|
124
|
+
if (raw === void 0 || raw === null) return void 0;
|
|
125
|
+
const value = toNumberIfNumeric(raw);
|
|
126
|
+
if (!isLength(value)) throw new TypeError(`[iconix] invalid ${key}: ${JSON.stringify(raw)}`);
|
|
127
|
+
return value;
|
|
128
|
+
};
|
|
129
|
+
const strokeWidth = Number(o.strokeWidth);
|
|
130
|
+
if (!Number.isFinite(strokeWidth) || strokeWidth < 0) {
|
|
131
|
+
throw new TypeError(`[iconix] invalid strokeWidth: ${JSON.stringify(o.strokeWidth)}`);
|
|
132
|
+
}
|
|
133
|
+
const variant = VARIANT_ALIASES[String(o.variant).toLowerCase()];
|
|
134
|
+
if (!variant) throw new TypeError(`[iconix] unknown variant "${String(o.variant)}" (use "default", "circle" or "square")`);
|
|
135
|
+
let flip = o.flip;
|
|
136
|
+
if (flip === false || flip === null || flip === "") flip = void 0;
|
|
137
|
+
if (flip === true) flip = "horizontal";
|
|
138
|
+
if (flip !== void 0 && !FLIPS.includes(flip)) {
|
|
139
|
+
throw new TypeError(`[iconix] unknown flip "${String(flip)}" (use "horizontal", "vertical" or "both")`);
|
|
140
|
+
}
|
|
141
|
+
const rotate = Number(o.rotate || 0);
|
|
142
|
+
if (!Number.isFinite(rotate)) throw new TypeError("[iconix] rotate must be a number (degrees)");
|
|
143
|
+
if (!LINECAPS.includes(o.strokeLinecap)) throw new TypeError(`[iconix] invalid strokeLinecap "${String(o.strokeLinecap)}"`);
|
|
144
|
+
if (!LINEJOINS.includes(o.strokeLinejoin)) throw new TypeError(`[iconix] invalid strokeLinejoin "${String(o.strokeLinejoin)}"`);
|
|
145
|
+
return {
|
|
146
|
+
size,
|
|
147
|
+
width: dimension("width"),
|
|
148
|
+
height: dimension("height"),
|
|
149
|
+
color: nonEmptyString(o.color, "color"),
|
|
150
|
+
fill: nonEmptyString(o.fill, "fill"),
|
|
151
|
+
strokeWidth,
|
|
152
|
+
absoluteStrokeWidth: Boolean(o.absoluteStrokeWidth),
|
|
153
|
+
strokeLinecap: o.strokeLinecap,
|
|
154
|
+
strokeLinejoin: o.strokeLinejoin,
|
|
155
|
+
variant,
|
|
156
|
+
background: nonEmptyString(o.background, "background"),
|
|
157
|
+
rotate,
|
|
158
|
+
flip,
|
|
159
|
+
spin: Boolean(o.spin),
|
|
160
|
+
pulse: Boolean(o.pulse),
|
|
161
|
+
title: o.title === void 0 || o.title === null ? void 0 : String(o.title),
|
|
162
|
+
className: o.className,
|
|
163
|
+
style: o.style,
|
|
164
|
+
attrs: o.attrs
|
|
165
|
+
};
|
|
166
|
+
}
|
|
167
|
+
function round(n) {
|
|
168
|
+
return Math.round(n * 1e3) / 1e3;
|
|
169
|
+
}
|
|
170
|
+
function isIcon(value) {
|
|
171
|
+
return Boolean(
|
|
172
|
+
value && typeof value === "object" && typeof value.name === "string" && Array.isArray(value.nodes)
|
|
173
|
+
);
|
|
174
|
+
}
|
|
175
|
+
function assertIcon(icon) {
|
|
176
|
+
if (!isIcon(icon)) {
|
|
177
|
+
throw new TypeError('[iconix] expected an icon object (e.g. iconHome). To use icon names import from "@iconix/icons" instead of "@iconix/icons/lite".');
|
|
178
|
+
}
|
|
179
|
+
}
|
|
180
|
+
function cloneNodes(nodes) {
|
|
181
|
+
return nodes.map(([tag, attrs, children]) => children ? [tag, { ...attrs }, cloneNodes(children)] : [tag, { ...attrs }]);
|
|
182
|
+
}
|
|
183
|
+
function buildIconTree(icon, options) {
|
|
184
|
+
assertIcon(icon);
|
|
185
|
+
const o = resolveOptions(options);
|
|
186
|
+
let strokeWidth = o.strokeWidth;
|
|
187
|
+
if (o.absoluteStrokeWidth && typeof o.size === "number") {
|
|
188
|
+
strokeWidth = strokeWidth * VIEWBOX_SIZE / o.size;
|
|
189
|
+
}
|
|
190
|
+
const attrs = {
|
|
191
|
+
xmlns: SVG_NS,
|
|
192
|
+
width: o.width ?? o.size,
|
|
193
|
+
height: o.height ?? o.size,
|
|
194
|
+
viewBox: `0 0 ${VIEWBOX_SIZE} ${VIEWBOX_SIZE}`,
|
|
195
|
+
fill: o.fill,
|
|
196
|
+
stroke: o.color,
|
|
197
|
+
"stroke-width": round(strokeWidth),
|
|
198
|
+
"stroke-linecap": o.strokeLinecap,
|
|
199
|
+
"stroke-linejoin": o.strokeLinejoin
|
|
200
|
+
};
|
|
201
|
+
const classes = ["iconix", `iconix-${icon.name}`];
|
|
202
|
+
if (o.variant !== "default") classes.push(`iconix-${o.variant}`);
|
|
203
|
+
if (o.spin) classes.push("iconix-spin");
|
|
204
|
+
if (o.pulse) classes.push("iconix-pulse");
|
|
205
|
+
if (o.className) classes.push(...String(o.className).split(/\s+/).filter(Boolean));
|
|
206
|
+
attrs.class = classes.join(" ");
|
|
207
|
+
if (o.title) {
|
|
208
|
+
attrs.role = "img";
|
|
209
|
+
attrs["aria-label"] = o.title;
|
|
210
|
+
} else {
|
|
211
|
+
attrs["aria-hidden"] = "true";
|
|
212
|
+
}
|
|
213
|
+
let content = cloneNodes(icon.nodes);
|
|
214
|
+
const transforms = [];
|
|
215
|
+
if (o.rotate % 360 !== 0) transforms.push(`rotate(${round(o.rotate)} 12 12)`);
|
|
216
|
+
if (o.flip === "horizontal") transforms.push("translate(24 0) scale(-1 1)");
|
|
217
|
+
if (o.flip === "vertical") transforms.push("translate(0 24) scale(1 -1)");
|
|
218
|
+
if (o.flip === "both") transforms.push("rotate(180 12 12)");
|
|
219
|
+
if (transforms.length) content = [["g", { transform: transforms.join(" ") }, content]];
|
|
220
|
+
const children = [];
|
|
221
|
+
const hasBackground = o.background !== "none" && o.background !== "transparent";
|
|
222
|
+
const bgFill = hasBackground ? { fill: o.background } : {};
|
|
223
|
+
if (o.variant === "circle") {
|
|
224
|
+
children.push(["circle", { cx: 12, cy: 12, r: 11, ...bgFill }]);
|
|
225
|
+
} else if (o.variant === "square") {
|
|
226
|
+
children.push(["rect", { x: 1, y: 1, width: 22, height: 22, rx: 5, ...bgFill }]);
|
|
227
|
+
} else if (hasBackground) {
|
|
228
|
+
children.push(["rect", { x: 0, y: 0, width: 24, height: 24, rx: 4, fill: o.background, stroke: "none" }]);
|
|
229
|
+
}
|
|
230
|
+
if (o.variant !== "default") {
|
|
231
|
+
content = [["g", {
|
|
232
|
+
transform: `translate(12 12) scale(${INNER_SCALE}) translate(-12 -12)`,
|
|
233
|
+
"stroke-width": round(strokeWidth / INNER_SCALE)
|
|
234
|
+
}, content]];
|
|
235
|
+
}
|
|
236
|
+
children.push(...content);
|
|
237
|
+
if (o.attrs && typeof o.attrs === "object") {
|
|
238
|
+
for (const [key, value] of Object.entries(o.attrs)) {
|
|
239
|
+
if (value === void 0 || value === null || value === false) delete attrs[key];
|
|
240
|
+
else attrs[key] = value === true ? "" : value;
|
|
241
|
+
}
|
|
242
|
+
}
|
|
243
|
+
return { tag: "svg", attrs, children, title: o.title, style: o.style, name: icon.name };
|
|
244
|
+
}
|
|
245
|
+
function escapeHtml(value) {
|
|
246
|
+
return String(value).replace(/&/g, "&").replace(/</g, "<").replace(/>/g, ">").replace(/"/g, """).replace(/'/g, "'");
|
|
247
|
+
}
|
|
248
|
+
function hyphenate(key) {
|
|
249
|
+
return key.replace(/[A-Z]/g, (m) => `-${m.toLowerCase()}`);
|
|
250
|
+
}
|
|
251
|
+
function styleToString(style) {
|
|
252
|
+
if (!style) return "";
|
|
253
|
+
if (typeof style === "string") return style.trim();
|
|
254
|
+
return Object.entries(style).filter(([, v]) => v !== void 0 && v !== null && v !== "").map(([k, v]) => `${k.startsWith("--") ? k : hyphenate(k)}:${String(v)}`).join(";");
|
|
255
|
+
}
|
|
256
|
+
function attrsToString(attrs) {
|
|
257
|
+
return Object.entries(attrs).filter(([, v]) => v !== void 0 && v !== null).map(([k, v]) => ` ${k}="${escapeHtml(v)}"`).join("");
|
|
258
|
+
}
|
|
259
|
+
function nodesToString(nodes) {
|
|
260
|
+
return nodes.map(([tag, attrs, children]) => children && children.length ? `<${tag}${attrsToString(attrs)}>${nodesToString(children)}</${tag}>` : `<${tag}${attrsToString(attrs)}/>`).join("");
|
|
261
|
+
}
|
|
262
|
+
function treeToString(tree) {
|
|
263
|
+
const attrs = { ...tree.attrs };
|
|
264
|
+
const style = styleToString(tree.style);
|
|
265
|
+
if (style) attrs.style = style;
|
|
266
|
+
const title = tree.title ? `<title>${escapeHtml(tree.title)}</title>` : "";
|
|
267
|
+
return `<svg${attrsToString(attrs)}>${title}${nodesToString(tree.children)}</svg>`;
|
|
268
|
+
}
|
|
269
|
+
function toSvg(icon, options) {
|
|
270
|
+
return treeToString(buildIconTree(icon, options));
|
|
271
|
+
}
|
|
272
|
+
function toDataUri(icon, options) {
|
|
273
|
+
const opts = { ...options };
|
|
274
|
+
if (resolveOptions(opts).color === "currentColor") opts.color = "#000";
|
|
275
|
+
return `data:image/svg+xml;charset=utf-8,${encodeURIComponent(toSvg(icon, opts))}`;
|
|
276
|
+
}
|
|
277
|
+
function toSprite(iconList, options = {}) {
|
|
278
|
+
const { idPrefix = "i-", ...renderOptions } = options;
|
|
279
|
+
const list = Array.isArray(iconList) ? iconList : Object.values(iconList || {});
|
|
280
|
+
const symbols = list.map((icon) => {
|
|
281
|
+
const tree = buildIconTree(icon, renderOptions);
|
|
282
|
+
const rest = { ...tree.attrs };
|
|
283
|
+
for (const key of ["width", "height", "xmlns", "class", "role", "aria-hidden", "aria-label"]) delete rest[key];
|
|
284
|
+
const attrs = { id: `${idPrefix}${icon.name}`, ...rest };
|
|
285
|
+
const title = tree.title ? `<title>${escapeHtml(tree.title)}</title>` : "";
|
|
286
|
+
return `<symbol${attrsToString(attrs)}>${title}${nodesToString(tree.children)}</symbol>`;
|
|
287
|
+
});
|
|
288
|
+
return `<svg xmlns="${SVG_NS}" style="display:none">${symbols.join("")}</svg>`;
|
|
289
|
+
}
|
|
290
|
+
function getDocument(doc) {
|
|
291
|
+
const d = doc || (typeof document !== "undefined" ? document : void 0);
|
|
292
|
+
if (!d) throw new Error("[iconix] createElement() needs a DOM (browser or jsdom). Use toSvg() on the server.");
|
|
293
|
+
return d;
|
|
294
|
+
}
|
|
295
|
+
function appendNodes(doc, parent, nodes) {
|
|
296
|
+
for (const [tag, attrs, children] of nodes) {
|
|
297
|
+
const el = doc.createElementNS(SVG_NS, tag);
|
|
298
|
+
for (const [k, v] of Object.entries(attrs)) el.setAttribute(k, String(v));
|
|
299
|
+
if (children) appendNodes(doc, el, children);
|
|
300
|
+
parent.appendChild(el);
|
|
301
|
+
}
|
|
302
|
+
}
|
|
303
|
+
function treeToElement(tree, doc) {
|
|
304
|
+
const d = getDocument(doc);
|
|
305
|
+
const svg = d.createElementNS(SVG_NS, "svg");
|
|
306
|
+
for (const [k, v] of Object.entries(tree.attrs)) {
|
|
307
|
+
if (k === "xmlns" || v === void 0 || v === null) continue;
|
|
308
|
+
svg.setAttribute(k, String(v));
|
|
309
|
+
}
|
|
310
|
+
const style = styleToString(tree.style);
|
|
311
|
+
if (style) svg.setAttribute("style", style);
|
|
312
|
+
if (tree.title) {
|
|
313
|
+
const t = d.createElementNS(SVG_NS, "title");
|
|
314
|
+
t.textContent = tree.title;
|
|
315
|
+
svg.appendChild(t);
|
|
316
|
+
}
|
|
317
|
+
appendNodes(d, svg, tree.children);
|
|
318
|
+
return svg;
|
|
319
|
+
}
|
|
320
|
+
function createElement(icon, options, doc) {
|
|
321
|
+
return treeToElement(buildIconTree(icon, options), doc);
|
|
322
|
+
}
|
|
323
|
+
const DATA_OPTIONS = {
|
|
324
|
+
size: "size",
|
|
325
|
+
width: "width",
|
|
326
|
+
height: "height",
|
|
327
|
+
color: "color",
|
|
328
|
+
fill: "fill",
|
|
329
|
+
strokeWidth: "stroke-width",
|
|
330
|
+
absoluteStrokeWidth: "absolute-stroke-width",
|
|
331
|
+
strokeLinecap: "stroke-linecap",
|
|
332
|
+
strokeLinejoin: "stroke-linejoin",
|
|
333
|
+
variant: "variant",
|
|
334
|
+
background: "background",
|
|
335
|
+
rotate: "rotate",
|
|
336
|
+
flip: "flip",
|
|
337
|
+
spin: "spin",
|
|
338
|
+
pulse: "pulse",
|
|
339
|
+
title: "title"
|
|
340
|
+
};
|
|
341
|
+
const BOOLEAN_OPTIONS = /* @__PURE__ */ new Set(["absoluteStrokeWidth", "spin", "pulse"]);
|
|
342
|
+
function parseBoolean(value) {
|
|
343
|
+
if (value === null || value === void 0) return void 0;
|
|
344
|
+
return value === "" || /^(true|1|yes)$/i.test(String(value));
|
|
345
|
+
}
|
|
346
|
+
function readOptionsFromAttributes(el, prefix = "data-") {
|
|
347
|
+
const opts = {};
|
|
348
|
+
for (const [key, attr] of Object.entries(DATA_OPTIONS)) {
|
|
349
|
+
const name = prefix + attr;
|
|
350
|
+
if (!el.hasAttribute(name)) continue;
|
|
351
|
+
const raw = el.getAttribute(name);
|
|
352
|
+
opts[key] = BOOLEAN_OPTIONS.has(key) ? parseBoolean(raw) : raw;
|
|
353
|
+
}
|
|
354
|
+
return opts;
|
|
355
|
+
}
|
|
356
|
+
function replaceElements(resolve, options = {}) {
|
|
357
|
+
const { root, attribute = "data-icon", ...renderOptions } = options;
|
|
358
|
+
const scope = root || getDocument();
|
|
359
|
+
const doc = scope.ownerDocument || scope;
|
|
360
|
+
const prefix = attribute.startsWith("data-") ? "data-" : "";
|
|
361
|
+
const optionAttrs = new Set(Object.values(DATA_OPTIONS).map((a) => prefix + a));
|
|
362
|
+
let count = 0;
|
|
363
|
+
for (const el of Array.from(scope.querySelectorAll(`[${attribute}]`))) {
|
|
364
|
+
const name = el.getAttribute(attribute) ?? "";
|
|
365
|
+
const icon = resolve(name);
|
|
366
|
+
if (!icon) {
|
|
367
|
+
if (typeof console !== "undefined") console.warn(`[iconix] unknown icon "${name}"`);
|
|
368
|
+
continue;
|
|
369
|
+
}
|
|
370
|
+
const opts = { ...renderOptions, ...readOptionsFromAttributes(el, prefix) };
|
|
371
|
+
const extra = el.getAttribute("class");
|
|
372
|
+
if (extra) opts.className = [opts.className, extra].filter(Boolean).join(" ");
|
|
373
|
+
const svg = createElement(icon, opts, doc);
|
|
374
|
+
for (const keep of ["id", "style"]) {
|
|
375
|
+
const value = el.getAttribute(keep);
|
|
376
|
+
if (value !== null) svg.setAttribute(keep, value);
|
|
377
|
+
}
|
|
378
|
+
for (const { name: attrName, value } of Array.from(el.attributes)) {
|
|
379
|
+
if (attrName === attribute || optionAttrs.has(attrName)) continue;
|
|
380
|
+
if (attrName.startsWith("aria-") || attrName.startsWith("data-")) {
|
|
381
|
+
svg.setAttribute(attrName, value);
|
|
382
|
+
if (attrName === "aria-label") {
|
|
383
|
+
svg.setAttribute("role", "img");
|
|
384
|
+
svg.removeAttribute("aria-hidden");
|
|
385
|
+
}
|
|
386
|
+
}
|
|
387
|
+
}
|
|
388
|
+
el.replaceWith(svg);
|
|
389
|
+
count += 1;
|
|
390
|
+
}
|
|
391
|
+
return count;
|
|
392
|
+
}
|
|
393
|
+
function toPascalCase(name) {
|
|
394
|
+
return String(name).split(/[-_\s]+/).filter(Boolean).map((part) => part.charAt(0).toUpperCase() + part.slice(1)).join("");
|
|
395
|
+
}
|
|
396
|
+
function levenshtein(a, b) {
|
|
397
|
+
const dp = Array.from({ length: a.length + 1 }, (_, i) => [i]);
|
|
398
|
+
for (let j = 1; j <= b.length; j++) dp[0][j] = j;
|
|
399
|
+
for (let i = 1; i <= a.length; i++) {
|
|
400
|
+
for (let j = 1; j <= b.length; j++) {
|
|
401
|
+
dp[i][j] = Math.min(dp[i - 1][j] + 1, dp[i][j - 1] + 1, dp[i - 1][j - 1] + (a[i - 1] === b[j - 1] ? 0 : 1));
|
|
402
|
+
}
|
|
403
|
+
}
|
|
404
|
+
return dp[a.length][b.length];
|
|
405
|
+
}
|
package/dist/core.d.cts
ADDED
|
@@ -0,0 +1,37 @@
|
|
|
1
|
+
import type { IconLike, IconNode, IconOptions, IconResolver, IconStyle, IconixTree, ReplaceOptions, ResolvedIconOptions, SpriteOptions } from './types.cjs';
|
|
2
|
+
export declare const SVG_NS = "http://www.w3.org/2000/svg";
|
|
3
|
+
export declare const VIEWBOX_SIZE = 24;
|
|
4
|
+
export declare const DEFAULT_OPTIONS: Readonly<IconOptions>;
|
|
5
|
+
export declare const OPTION_KEYS: readonly (keyof IconOptions)[];
|
|
6
|
+
/** Sets global defaults (toSvg, createElement, replace, Web Component). */
|
|
7
|
+
export declare function setDefaults(options: IconOptions): IconOptions;
|
|
8
|
+
export declare function getDefaults(): IconOptions;
|
|
9
|
+
export declare function resetDefaults(): IconOptions;
|
|
10
|
+
/** Merges options with defaults and validates them. Throws TypeError on invalid values. */
|
|
11
|
+
export declare function resolveOptions(options?: IconOptions, base?: IconOptions): ResolvedIconOptions;
|
|
12
|
+
export declare function isIcon(value: unknown): value is IconLike;
|
|
13
|
+
/** Builds an abstract SVG tree – the common base of all renderers. */
|
|
14
|
+
export declare function buildIconTree(icon: IconLike, options?: IconOptions): IconixTree;
|
|
15
|
+
export declare function escapeHtml(value: unknown): string;
|
|
16
|
+
export declare function styleToString(style: IconStyle | undefined): string;
|
|
17
|
+
export declare function nodesToString(nodes: IconNode[]): string;
|
|
18
|
+
export declare function treeToString(tree: IconixTree): string;
|
|
19
|
+
/** Returns SVG markup as a string. */
|
|
20
|
+
export declare function toSvg(icon: IconLike, options?: IconOptions): string;
|
|
21
|
+
/** Returns a data URI (e.g. for CSS background-image or <img src>). */
|
|
22
|
+
export declare function toDataUri(icon: IconLike, options?: IconOptions): string;
|
|
23
|
+
/** Returns an SVG sprite with <symbol id="{prefix}{name}"> elements. */
|
|
24
|
+
export declare function toSprite(iconList: IconLike[] | Record<string, IconLike>, options?: SpriteOptions): string;
|
|
25
|
+
export declare function treeToElement(tree: IconixTree, doc?: Document): SVGSVGElement;
|
|
26
|
+
/** Creates an <svg> DOM element. */
|
|
27
|
+
export declare function createElement(icon: IconLike, options?: IconOptions, doc?: Document): SVGSVGElement;
|
|
28
|
+
export declare function parseBoolean(value: string | null | undefined): boolean | undefined;
|
|
29
|
+
/** Reads options from element attributes (prefix e.g. "data-" or ""). */
|
|
30
|
+
export declare function readOptionsFromAttributes(el: Element, prefix?: string): IconOptions;
|
|
31
|
+
/**
|
|
32
|
+
* Replaces elements like <i data-icon="home" data-size="32"></i> with <svg>.
|
|
33
|
+
* Returns the number of replaced elements.
|
|
34
|
+
*/
|
|
35
|
+
export declare function replaceElements(resolve: IconResolver, options?: ReplaceOptions): number;
|
|
36
|
+
export declare function toPascalCase(name: string): string;
|
|
37
|
+
export declare function levenshtein(a: string, b: string): number;
|
package/dist/core.d.ts
ADDED
|
@@ -0,0 +1,37 @@
|
|
|
1
|
+
import type { IconLike, IconNode, IconOptions, IconResolver, IconStyle, IconixTree, ReplaceOptions, ResolvedIconOptions, SpriteOptions } from './types.js';
|
|
2
|
+
export declare const SVG_NS = "http://www.w3.org/2000/svg";
|
|
3
|
+
export declare const VIEWBOX_SIZE = 24;
|
|
4
|
+
export declare const DEFAULT_OPTIONS: Readonly<IconOptions>;
|
|
5
|
+
export declare const OPTION_KEYS: readonly (keyof IconOptions)[];
|
|
6
|
+
/** Sets global defaults (toSvg, createElement, replace, Web Component). */
|
|
7
|
+
export declare function setDefaults(options: IconOptions): IconOptions;
|
|
8
|
+
export declare function getDefaults(): IconOptions;
|
|
9
|
+
export declare function resetDefaults(): IconOptions;
|
|
10
|
+
/** Merges options with defaults and validates them. Throws TypeError on invalid values. */
|
|
11
|
+
export declare function resolveOptions(options?: IconOptions, base?: IconOptions): ResolvedIconOptions;
|
|
12
|
+
export declare function isIcon(value: unknown): value is IconLike;
|
|
13
|
+
/** Builds an abstract SVG tree – the common base of all renderers. */
|
|
14
|
+
export declare function buildIconTree(icon: IconLike, options?: IconOptions): IconixTree;
|
|
15
|
+
export declare function escapeHtml(value: unknown): string;
|
|
16
|
+
export declare function styleToString(style: IconStyle | undefined): string;
|
|
17
|
+
export declare function nodesToString(nodes: IconNode[]): string;
|
|
18
|
+
export declare function treeToString(tree: IconixTree): string;
|
|
19
|
+
/** Returns SVG markup as a string. */
|
|
20
|
+
export declare function toSvg(icon: IconLike, options?: IconOptions): string;
|
|
21
|
+
/** Returns a data URI (e.g. for CSS background-image or <img src>). */
|
|
22
|
+
export declare function toDataUri(icon: IconLike, options?: IconOptions): string;
|
|
23
|
+
/** Returns an SVG sprite with <symbol id="{prefix}{name}"> elements. */
|
|
24
|
+
export declare function toSprite(iconList: IconLike[] | Record<string, IconLike>, options?: SpriteOptions): string;
|
|
25
|
+
export declare function treeToElement(tree: IconixTree, doc?: Document): SVGSVGElement;
|
|
26
|
+
/** Creates an <svg> DOM element. */
|
|
27
|
+
export declare function createElement(icon: IconLike, options?: IconOptions, doc?: Document): SVGSVGElement;
|
|
28
|
+
export declare function parseBoolean(value: string | null | undefined): boolean | undefined;
|
|
29
|
+
/** Reads options from element attributes (prefix e.g. "data-" or ""). */
|
|
30
|
+
export declare function readOptionsFromAttributes(el: Element, prefix?: string): IconOptions;
|
|
31
|
+
/**
|
|
32
|
+
* Replaces elements like <i data-icon="home" data-size="32"></i> with <svg>.
|
|
33
|
+
* Returns the number of replaced elements.
|
|
34
|
+
*/
|
|
35
|
+
export declare function replaceElements(resolve: IconResolver, options?: ReplaceOptions): number;
|
|
36
|
+
export declare function toPascalCase(name: string): string;
|
|
37
|
+
export declare function levenshtein(a: string, b: string): number;
|