@ultimat3/ui 1.2.0 → 3.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/CATALOG.md +115 -8
- package/CLAUDE.md +77 -0
- package/README.md +131 -11
- package/package.json +10 -7
- package/src/a11y.ts +50 -11
- package/src/components/Accordion.module.scss +59 -0
- package/src/components/Accordion.tsx +63 -0
- package/src/components/Avatar.tsx +9 -1
- package/src/components/Breadcrumb.tsx +2 -1
- package/src/components/Checkbox.tsx +7 -2
- package/src/components/Combobox.module.scss +62 -0
- package/src/components/Combobox.tsx +111 -0
- package/src/components/Dialog.tsx +4 -3
- package/src/components/Dropzone.module.scss +73 -0
- package/src/components/Dropzone.tsx +116 -0
- package/src/components/ErrorState.tsx +10 -3
- package/src/components/Field.tsx +1 -7
- package/src/components/FileInput.module.scss +91 -0
- package/src/components/FileInput.tsx +82 -0
- package/src/components/Form.tsx +22 -3
- package/src/components/Icon.module.scss +29 -0
- package/src/components/Icon.tsx +72 -0
- package/src/components/InfiniteScroll.module.scss +43 -0
- package/src/components/InfiniteScroll.tsx +92 -0
- package/src/components/Link.tsx +8 -2
- package/src/components/Menu.tsx +13 -3
- package/src/components/Pagination.tsx +8 -1
- package/src/components/Popover.tsx +11 -1
- package/src/components/Select.tsx +17 -3
- package/src/components/Switch.tsx +11 -4
- package/src/components/Table.tsx +5 -3
- package/src/components/Tabs.tsx +14 -4
- package/src/components/Textarea.tsx +10 -2
- package/src/components/Toast.tsx +22 -10
- package/src/components/Toolbar.tsx +6 -2
- package/src/components/accordion-view.ts +32 -0
- package/src/components/combobox-filter.ts +50 -0
- package/src/components/date-time-view.ts +11 -0
- package/src/components/file-input-view.ts +127 -0
- package/src/components/icon-glyph.ts +74 -0
- package/src/components/infinite-scroll-view.ts +30 -0
- package/src/components/link-target.ts +23 -0
- package/src/debounce.ts +55 -0
- package/src/errors.ts +51 -4
- package/src/fake-dom.ts +194 -0
- package/src/global.scss +2 -0
- package/src/i18n-keys.ts +13 -2
- package/src/icons/LICENSE.lucide +43 -0
- package/src/icons/build-icons.ts +155 -0
- package/src/icons/glyphs/a-arrow-down.ts +11 -0
- package/src/icons/glyphs/a-arrow-up.ts +11 -0
- package/src/icons/glyphs/a-large-small.ts +11 -0
- package/src/icons/glyphs/accessibility.ts +12 -0
- package/src/icons/glyphs/activity.ts +13 -0
- package/src/icons/glyphs/ad.ts +16 -0
- package/src/icons/glyphs/air-vent.ts +11 -0
- package/src/icons/glyphs/airplay.ts +9 -0
- package/src/icons/glyphs/alarm-clock-check.ts +13 -0
- package/src/icons/glyphs/alarm-clock-minus.ts +13 -0
- package/src/icons/glyphs/alarm-clock-off.ts +13 -0
- package/src/icons/glyphs/alarm-clock-plus.ts +14 -0
- package/src/icons/glyphs/alarm-clock.ts +13 -0
- package/src/icons/glyphs/alarm-smoke.ts +12 -0
- package/src/icons/glyphs/album.ts +9 -0
- package/src/icons/glyphs/align-center-horizontal.ts +12 -0
- package/src/icons/glyphs/align-center-vertical.ts +12 -0
- package/src/icons/glyphs/align-end-horizontal.ts +10 -0
- package/src/icons/glyphs/align-end-vertical.ts +10 -0
- package/src/icons/glyphs/align-horizontal-distribute-center.ts +13 -0
- package/src/icons/glyphs/align-horizontal-distribute-end.ts +11 -0
- package/src/icons/glyphs/align-horizontal-distribute-start.ts +11 -0
- package/src/icons/glyphs/align-horizontal-justify-center.ts +10 -0
- package/src/icons/glyphs/align-horizontal-justify-end.ts +10 -0
- package/src/icons/glyphs/align-horizontal-justify-start.ts +10 -0
- package/src/icons/glyphs/align-horizontal-space-around.ts +10 -0
- package/src/icons/glyphs/align-horizontal-space-between.ts +11 -0
- package/src/icons/glyphs/align-start-horizontal.ts +10 -0
- package/src/icons/glyphs/align-start-vertical.ts +10 -0
- package/src/icons/glyphs/align-vertical-distribute-center.ts +13 -0
- package/src/icons/glyphs/align-vertical-distribute-end.ts +11 -0
- package/src/icons/glyphs/align-vertical-distribute-start.ts +11 -0
- package/src/icons/glyphs/align-vertical-justify-center.ts +10 -0
- package/src/icons/glyphs/align-vertical-justify-end.ts +10 -0
- package/src/icons/glyphs/align-vertical-justify-start.ts +10 -0
- package/src/icons/glyphs/align-vertical-space-around.ts +10 -0
- package/src/icons/glyphs/align-vertical-space-between.ts +11 -0
- package/src/icons/glyphs/ambulance.ts +19 -0
- package/src/icons/glyphs/ampersand.ts +14 -0
- package/src/icons/glyphs/ampersands.ts +15 -0
- package/src/icons/glyphs/amphora.ts +13 -0
- package/src/icons/glyphs/anchor.ts +11 -0
- package/src/icons/glyphs/angle.ts +9 -0
- package/src/icons/glyphs/antenna.ts +13 -0
- package/src/icons/glyphs/anvil.ts +12 -0
- package/src/icons/glyphs/aperture.ts +14 -0
- package/src/icons/glyphs/app-window-mac.ts +11 -0
- package/src/icons/glyphs/app-window.ts +11 -0
- package/src/icons/glyphs/apple.ts +14 -0
- package/src/icons/glyphs/archive-restore.ts +12 -0
- package/src/icons/glyphs/archive-x.ts +11 -0
- package/src/icons/glyphs/archive.ts +10 -0
- package/src/icons/glyphs/armchair.ts +16 -0
- package/src/icons/glyphs/arrow-big-down-dash.ts +14 -0
- package/src/icons/glyphs/arrow-big-down.ts +13 -0
- package/src/icons/glyphs/arrow-big-left-dash.ts +14 -0
- package/src/icons/glyphs/arrow-big-left.ts +13 -0
- package/src/icons/glyphs/arrow-big-right-dash.ts +14 -0
- package/src/icons/glyphs/arrow-big-right.ts +13 -0
- package/src/icons/glyphs/arrow-big-up-dash.ts +14 -0
- package/src/icons/glyphs/arrow-big-up.ts +13 -0
- package/src/icons/glyphs/arrow-down-0-1.ts +12 -0
- package/src/icons/glyphs/arrow-down-1-0.ts +12 -0
- package/src/icons/glyphs/arrow-down-a-z.ts +12 -0
- package/src/icons/glyphs/arrow-down-from-line.ts +10 -0
- package/src/icons/glyphs/arrow-down-left.ts +9 -0
- package/src/icons/glyphs/arrow-down-narrow-wide.ts +12 -0
- package/src/icons/glyphs/arrow-down-right.ts +9 -0
- package/src/icons/glyphs/arrow-down-to-dot.ts +10 -0
- package/src/icons/glyphs/arrow-down-to-line.ts +10 -0
- package/src/icons/glyphs/arrow-down-up.ts +11 -0
- package/src/icons/glyphs/arrow-down-wide-narrow.ts +12 -0
- package/src/icons/glyphs/arrow-down-z-a.ts +12 -0
- package/src/icons/glyphs/arrow-down.ts +9 -0
- package/src/icons/glyphs/arrow-left-from-line.ts +10 -0
- package/src/icons/glyphs/arrow-left-right.ts +11 -0
- package/src/icons/glyphs/arrow-left-to-line.ts +10 -0
- package/src/icons/glyphs/arrow-left.ts +9 -0
- package/src/icons/glyphs/arrow-right-from-line.ts +10 -0
- package/src/icons/glyphs/arrow-right-left.ts +11 -0
- package/src/icons/glyphs/arrow-right-to-line.ts +10 -0
- package/src/icons/glyphs/arrow-right.ts +9 -0
- package/src/icons/glyphs/arrow-up-0-1.ts +12 -0
- package/src/icons/glyphs/arrow-up-1-0.ts +12 -0
- package/src/icons/glyphs/arrow-up-a-z.ts +12 -0
- package/src/icons/glyphs/arrow-up-down.ts +11 -0
- package/src/icons/glyphs/arrow-up-from-dot.ts +10 -0
- package/src/icons/glyphs/arrow-up-from-line.ts +10 -0
- package/src/icons/glyphs/arrow-up-left.ts +9 -0
- package/src/icons/glyphs/arrow-up-narrow-wide.ts +12 -0
- package/src/icons/glyphs/arrow-up-right.ts +9 -0
- package/src/icons/glyphs/arrow-up-to-line.ts +10 -0
- package/src/icons/glyphs/arrow-up-wide-narrow.ts +12 -0
- package/src/icons/glyphs/arrow-up-z-a.ts +12 -0
- package/src/icons/glyphs/arrow-up.ts +9 -0
- package/src/icons/glyphs/arrows-up-from-line.ts +12 -0
- package/src/icons/glyphs/asterisk.ts +10 -0
- package/src/icons/glyphs/astroid.ts +13 -0
- package/src/icons/glyphs/at-sign.ts +9 -0
- package/src/icons/glyphs/atom.ts +20 -0
- package/src/icons/glyphs/audio-lines-x.ts +15 -0
- package/src/icons/glyphs/audio-lines.ts +13 -0
- package/src/icons/glyphs/audio-waveform.ts +13 -0
- package/src/icons/glyphs/award.ts +14 -0
- package/src/icons/glyphs/axe.ts +14 -0
- package/src/icons/glyphs/axis-3d.ts +11 -0
- package/src/icons/glyphs/baby.ts +16 -0
- package/src/icons/glyphs/backpack.ts +12 -0
- package/src/icons/glyphs/badge-alert.ts +15 -0
- package/src/icons/glyphs/badge-cent.ts +15 -0
- package/src/icons/glyphs/badge-check.ts +14 -0
- package/src/icons/glyphs/badge-dollar-sign.ts +15 -0
- package/src/icons/glyphs/badge-euro.ts +15 -0
- package/src/icons/glyphs/badge-indian-rupee.ts +16 -0
- package/src/icons/glyphs/badge-info.ts +15 -0
- package/src/icons/glyphs/badge-japanese-yen.ts +17 -0
- package/src/icons/glyphs/badge-minus.ts +14 -0
- package/src/icons/glyphs/badge-percent.ts +16 -0
- package/src/icons/glyphs/badge-plus.ts +15 -0
- package/src/icons/glyphs/badge-pound-sterling.ts +16 -0
- package/src/icons/glyphs/badge-question-mark.ts +15 -0
- package/src/icons/glyphs/badge-russian-ruble.ts +15 -0
- package/src/icons/glyphs/badge-swiss-franc.ts +16 -0
- package/src/icons/glyphs/badge-turkish-lira.ts +15 -0
- package/src/icons/glyphs/badge-x.ts +15 -0
- package/src/icons/glyphs/badge.ts +13 -0
- package/src/icons/glyphs/baggage-claim.ts +12 -0
- package/src/icons/glyphs/balloon.ts +10 -0
- package/src/icons/glyphs/ban.ts +9 -0
- package/src/icons/glyphs/banana.ts +14 -0
- package/src/icons/glyphs/bandage.ts +14 -0
- package/src/icons/glyphs/banknote-arrow-down.ts +13 -0
- package/src/icons/glyphs/banknote-arrow-up.ts +13 -0
- package/src/icons/glyphs/banknote-check.ts +12 -0
- package/src/icons/glyphs/banknote-x.ts +13 -0
- package/src/icons/glyphs/banknote.ts +10 -0
- package/src/icons/glyphs/barcode.ts +12 -0
- package/src/icons/glyphs/barrel.ts +17 -0
- package/src/icons/glyphs/baseline.ts +10 -0
- package/src/icons/glyphs/bath.ts +12 -0
- package/src/icons/glyphs/battery-charging.ts +11 -0
- package/src/icons/glyphs/battery-full.ts +12 -0
- package/src/icons/glyphs/battery-low.ts +10 -0
- package/src/icons/glyphs/battery-medium.ts +11 -0
- package/src/icons/glyphs/battery-plus.ts +12 -0
- package/src/icons/glyphs/battery-warning.ts +12 -0
- package/src/icons/glyphs/battery.ts +9 -0
- package/src/icons/glyphs/beaker.ts +10 -0
- package/src/icons/glyphs/bean-off.ts +11 -0
- package/src/icons/glyphs/bean.ts +14 -0
- package/src/icons/glyphs/bed-double.ts +11 -0
- package/src/icons/glyphs/bed-single.ts +10 -0
- package/src/icons/glyphs/bed.ts +11 -0
- package/src/icons/glyphs/beef-off.ts +18 -0
- package/src/icons/glyphs/beef.ts +20 -0
- package/src/icons/glyphs/beer-off.ts +20 -0
- package/src/icons/glyphs/beer.ts +17 -0
- package/src/icons/glyphs/bell-check.ts +16 -0
- package/src/icons/glyphs/bell-dot.ts +15 -0
- package/src/icons/glyphs/bell-electric.ts +13 -0
- package/src/icons/glyphs/bell-minus.ts +15 -0
- package/src/icons/glyphs/bell-off.ts +11 -0
- package/src/icons/glyphs/bell-plus.ts +16 -0
- package/src/icons/glyphs/bell-ring.ts +16 -0
- package/src/icons/glyphs/bell.ts +14 -0
- package/src/icons/glyphs/between-horizontal-end.ts +10 -0
- package/src/icons/glyphs/between-horizontal-start.ts +10 -0
- package/src/icons/glyphs/between-vertical-end.ts +10 -0
- package/src/icons/glyphs/between-vertical-start.ts +10 -0
- package/src/icons/glyphs/biceps-flexed.ts +15 -0
- package/src/icons/glyphs/bike.ts +11 -0
- package/src/icons/glyphs/binary.ts +13 -0
- package/src/icons/glyphs/binoculars.ts +23 -0
- package/src/icons/glyphs/biohazard.ts +17 -0
- package/src/icons/glyphs/bird.ts +13 -0
- package/src/icons/glyphs/birdhouse.ts +13 -0
- package/src/icons/glyphs/bitcoin.ts +13 -0
- package/src/icons/glyphs/blend.ts +9 -0
- package/src/icons/glyphs/blender.ts +18 -0
- package/src/icons/glyphs/blinds.ts +14 -0
- package/src/icons/glyphs/blocks.ts +14 -0
- package/src/icons/glyphs/bluetooth-connected.ts +10 -0
- package/src/icons/glyphs/bluetooth-off.ts +10 -0
- package/src/icons/glyphs/bluetooth-searching.ts +10 -0
- package/src/icons/glyphs/bluetooth.ts +6 -0
- package/src/icons/glyphs/bold.ts +8 -0
- package/src/icons/glyphs/bolt.ts +14 -0
- package/src/icons/glyphs/bomb.ts +13 -0
- package/src/icons/glyphs/bone-fracture.ts +23 -0
- package/src/icons/glyphs/bone.ts +13 -0
- package/src/icons/glyphs/book-a.ts +13 -0
- package/src/icons/glyphs/book-alert.ts +13 -0
- package/src/icons/glyphs/book-audio.ts +14 -0
- package/src/icons/glyphs/book-check.ts +12 -0
- package/src/icons/glyphs/book-copy.ts +13 -0
- package/src/icons/glyphs/book-dashed.ts +18 -0
- package/src/icons/glyphs/book-down.ts +13 -0
- package/src/icons/glyphs/book-headphones.ts +14 -0
- package/src/icons/glyphs/book-heart.ts +17 -0
- package/src/icons/glyphs/book-image.ts +13 -0
- package/src/icons/glyphs/book-key.ts +12 -0
- package/src/icons/glyphs/book-lock.ts +11 -0
- package/src/icons/glyphs/book-marked.ts +12 -0
- package/src/icons/glyphs/book-minus.ts +12 -0
- package/src/icons/glyphs/book-open-check.ts +15 -0
- package/src/icons/glyphs/book-open-text.ts +18 -0
- package/src/icons/glyphs/book-open.ts +14 -0
- package/src/icons/glyphs/book-plus.ts +13 -0
- package/src/icons/glyphs/book-search.ts +11 -0
- package/src/icons/glyphs/book-text.ts +13 -0
- package/src/icons/glyphs/book-type.ts +14 -0
- package/src/icons/glyphs/book-up-2.ts +12 -0
- package/src/icons/glyphs/book-up.ts +13 -0
- package/src/icons/glyphs/book-user.ts +13 -0
- package/src/icons/glyphs/book-x.ts +13 -0
- package/src/icons/glyphs/book.ts +11 -0
- package/src/icons/glyphs/bookmark-check.ts +14 -0
- package/src/icons/glyphs/bookmark-minus.ts +14 -0
- package/src/icons/glyphs/bookmark-off.ts +15 -0
- package/src/icons/glyphs/bookmark-plus.ts +15 -0
- package/src/icons/glyphs/bookmark-x.ts +15 -0
- package/src/icons/glyphs/bookmark.ts +13 -0
- package/src/icons/glyphs/boom-box.ts +14 -0
- package/src/icons/glyphs/bot-message-square.ts +18 -0
- package/src/icons/glyphs/bot-off.ts +14 -0
- package/src/icons/glyphs/bot.ts +13 -0
- package/src/icons/glyphs/bottle-wine.ts +14 -0
- package/src/icons/glyphs/bow-arrow.ts +17 -0
- package/src/icons/glyphs/box.ts +15 -0
- package/src/icons/glyphs/boxes.ts +34 -0
- package/src/icons/glyphs/braces.ts +9 -0
- package/src/icons/glyphs/brackets.ts +9 -0
- package/src/icons/glyphs/brain-circuit.ts +23 -0
- package/src/icons/glyphs/brain-cog.ts +30 -0
- package/src/icons/glyphs/brain.ts +15 -0
- package/src/icons/glyphs/brick-wall-fire.ts +19 -0
- package/src/icons/glyphs/brick-wall-shield.ts +20 -0
- package/src/icons/glyphs/brick-wall.ts +15 -0
- package/src/icons/glyphs/briefcase-business.ts +11 -0
- package/src/icons/glyphs/briefcase-conveyor-belt.ts +14 -0
- package/src/icons/glyphs/briefcase-medical.ts +13 -0
- package/src/icons/glyphs/briefcase.ts +9 -0
- package/src/icons/glyphs/bring-to-front.ts +10 -0
- package/src/icons/glyphs/broccoli.ts +21 -0
- package/src/icons/glyphs/broom-sparkles.ts +22 -0
- package/src/icons/glyphs/broom.ts +16 -0
- package/src/icons/glyphs/brush-cleaning.ts +16 -0
- package/src/icons/glyphs/brush.ts +10 -0
- package/src/icons/glyphs/bubbles.ts +11 -0
- package/src/icons/glyphs/bug-off.ts +19 -0
- package/src/icons/glyphs/bug-play.ts +21 -0
- package/src/icons/glyphs/bug.ts +18 -0
- package/src/icons/glyphs/building-2.ts +12 -0
- package/src/icons/glyphs/building.ts +18 -0
- package/src/icons/glyphs/bus-front.ts +16 -0
- package/src/icons/glyphs/bus.ts +19 -0
- package/src/icons/glyphs/cable-car.ts +15 -0
- package/src/icons/glyphs/cable.ts +14 -0
- package/src/icons/glyphs/cake-slice.ts +16 -0
- package/src/icons/glyphs/cake.ts +16 -0
- package/src/icons/glyphs/calculator.ts +17 -0
- package/src/icons/glyphs/calendar-1.ts +12 -0
- package/src/icons/glyphs/calendar-arrow-down.ts +13 -0
- package/src/icons/glyphs/calendar-arrow-up.ts +13 -0
- package/src/icons/glyphs/calendar-check-2.ts +18 -0
- package/src/icons/glyphs/calendar-check.ts +12 -0
- package/src/icons/glyphs/calendar-clock.ts +13 -0
- package/src/icons/glyphs/calendar-cog.ts +20 -0
- package/src/icons/glyphs/calendar-days.ts +17 -0
- package/src/icons/glyphs/calendar-fold.ts +16 -0
- package/src/icons/glyphs/calendar-heart.ts +17 -0
- package/src/icons/glyphs/calendar-minus-2.ts +12 -0
- package/src/icons/glyphs/calendar-minus.ts +12 -0
- package/src/icons/glyphs/calendar-off.ts +13 -0
- package/src/icons/glyphs/calendar-plus-2.ts +13 -0
- package/src/icons/glyphs/calendar-plus.ts +13 -0
- package/src/icons/glyphs/calendar-range.ts +15 -0
- package/src/icons/glyphs/calendar-search.ts +13 -0
- package/src/icons/glyphs/calendar-sync.ts +15 -0
- package/src/icons/glyphs/calendar-x-2.ts +13 -0
- package/src/icons/glyphs/calendar-x.ts +13 -0
- package/src/icons/glyphs/calendar.ts +11 -0
- package/src/icons/glyphs/calendars.ts +13 -0
- package/src/icons/glyphs/camera-off.ts +16 -0
- package/src/icons/glyphs/camera.ts +14 -0
- package/src/icons/glyphs/candy-cane.ts +15 -0
- package/src/icons/glyphs/candy-off.ts +24 -0
- package/src/icons/glyphs/candy.ts +27 -0
- package/src/icons/glyphs/cannabis-off.ts +18 -0
- package/src/icons/glyphs/cannabis.ts +14 -0
- package/src/icons/glyphs/captions-off.ts +13 -0
- package/src/icons/glyphs/captions.ts +9 -0
- package/src/icons/glyphs/car-front.ts +13 -0
- package/src/icons/glyphs/car-taxi-front.ts +14 -0
- package/src/icons/glyphs/car.ts +16 -0
- package/src/icons/glyphs/caravan.ts +11 -0
- package/src/icons/glyphs/card-sim.ts +16 -0
- package/src/icons/glyphs/carrot.ts +10 -0
- package/src/icons/glyphs/case-lower.ts +11 -0
- package/src/icons/glyphs/case-sensitive.ts +11 -0
- package/src/icons/glyphs/case-upper.ts +13 -0
- package/src/icons/glyphs/cassette-tape.ts +12 -0
- package/src/icons/glyphs/cast.ts +11 -0
- package/src/icons/glyphs/castle.ts +15 -0
- package/src/icons/glyphs/cat.ts +16 -0
- package/src/icons/glyphs/cctv-off.ts +23 -0
- package/src/icons/glyphs/cctv.ts +20 -0
- package/src/icons/glyphs/chart-area.ts +14 -0
- package/src/icons/glyphs/chart-bar-big.ts +10 -0
- package/src/icons/glyphs/chart-bar-decreasing.ts +11 -0
- package/src/icons/glyphs/chart-bar-increasing.ts +11 -0
- package/src/icons/glyphs/chart-bar-stacked.ts +12 -0
- package/src/icons/glyphs/chart-bar.ts +11 -0
- package/src/icons/glyphs/chart-candlestick.ts +14 -0
- package/src/icons/glyphs/chart-column-big.ts +10 -0
- package/src/icons/glyphs/chart-column-decreasing.ts +11 -0
- package/src/icons/glyphs/chart-column-increasing.ts +11 -0
- package/src/icons/glyphs/chart-column-stacked.ts +12 -0
- package/src/icons/glyphs/chart-column.ts +11 -0
- package/src/icons/glyphs/chart-gantt.ts +11 -0
- package/src/icons/glyphs/chart-line.ts +9 -0
- package/src/icons/glyphs/chart-network.ts +14 -0
- package/src/icons/glyphs/chart-no-axes-column-decreasing.ts +10 -0
- package/src/icons/glyphs/chart-no-axes-column-increasing.ts +10 -0
- package/src/icons/glyphs/chart-no-axes-column.ts +10 -0
- package/src/icons/glyphs/chart-no-axes-combined.ts +13 -0
- package/src/icons/glyphs/chart-no-axes-gantt.ts +10 -0
- package/src/icons/glyphs/chart-pie.ts +14 -0
- package/src/icons/glyphs/chart-scatter.ts +13 -0
- package/src/icons/glyphs/chart-spline.ts +9 -0
- package/src/icons/glyphs/check-check.ts +9 -0
- package/src/icons/glyphs/check-line.ts +10 -0
- package/src/icons/glyphs/check.ts +6 -0
- package/src/icons/glyphs/chef-hat.ts +14 -0
- package/src/icons/glyphs/cherry.ts +11 -0
- package/src/icons/glyphs/chess-bishop.ts +16 -0
- package/src/icons/glyphs/chess-king.ts +16 -0
- package/src/icons/glyphs/chess-knight.ts +17 -0
- package/src/icons/glyphs/chess-pawn.ts +12 -0
- package/src/icons/glyphs/chess-queen.ts +15 -0
- package/src/icons/glyphs/chess-rook.ts +14 -0
- package/src/icons/glyphs/chevron-down.ts +6 -0
- package/src/icons/glyphs/chevron-first.ts +9 -0
- package/src/icons/glyphs/chevron-last.ts +9 -0
- package/src/icons/glyphs/chevron-left.ts +6 -0
- package/src/icons/glyphs/chevron-right.ts +6 -0
- package/src/icons/glyphs/chevron-up.ts +6 -0
- package/src/icons/glyphs/chevrons-down-up.ts +9 -0
- package/src/icons/glyphs/chevrons-down.ts +9 -0
- package/src/icons/glyphs/chevrons-left-right-ellipsis.ts +12 -0
- package/src/icons/glyphs/chevrons-left-right.ts +9 -0
- package/src/icons/glyphs/chevrons-left.ts +9 -0
- package/src/icons/glyphs/chevrons-right-left.ts +9 -0
- package/src/icons/glyphs/chevrons-right.ts +9 -0
- package/src/icons/glyphs/chevrons-up-down.ts +9 -0
- package/src/icons/glyphs/chevrons-up.ts +9 -0
- package/src/icons/glyphs/church.ts +17 -0
- package/src/icons/glyphs/cigarette-off.ts +13 -0
- package/src/icons/glyphs/cigarette.ts +12 -0
- package/src/icons/glyphs/circle-alert.ts +10 -0
- package/src/icons/glyphs/circle-arrow-down.ts +10 -0
- package/src/icons/glyphs/circle-arrow-left.ts +10 -0
- package/src/icons/glyphs/circle-arrow-out-down-left.ts +10 -0
- package/src/icons/glyphs/circle-arrow-out-down-right.ts +10 -0
- package/src/icons/glyphs/circle-arrow-out-up-left.ts +10 -0
- package/src/icons/glyphs/circle-arrow-out-up-right.ts +10 -0
- package/src/icons/glyphs/circle-arrow-right.ts +10 -0
- package/src/icons/glyphs/circle-arrow-up.ts +10 -0
- package/src/icons/glyphs/circle-check-big.ts +9 -0
- package/src/icons/glyphs/circle-check.ts +9 -0
- package/src/icons/glyphs/circle-chevron-down.ts +9 -0
- package/src/icons/glyphs/circle-chevron-left.ts +9 -0
- package/src/icons/glyphs/circle-chevron-right.ts +9 -0
- package/src/icons/glyphs/circle-chevron-up.ts +9 -0
- package/src/icons/glyphs/circle-dashed.ts +15 -0
- package/src/icons/glyphs/circle-divide.ts +11 -0
- package/src/icons/glyphs/circle-dollar-sign.ts +10 -0
- package/src/icons/glyphs/circle-dot-dashed.ts +16 -0
- package/src/icons/glyphs/circle-dot.ts +9 -0
- package/src/icons/glyphs/circle-ellipsis.ts +11 -0
- package/src/icons/glyphs/circle-equal.ts +10 -0
- package/src/icons/glyphs/circle-euro.ts +10 -0
- package/src/icons/glyphs/circle-fading-arrow-up.ts +14 -0
- package/src/icons/glyphs/circle-fading-plus.ts +14 -0
- package/src/icons/glyphs/circle-gauge.ts +10 -0
- package/src/icons/glyphs/circle-minus.ts +9 -0
- package/src/icons/glyphs/circle-off.ts +10 -0
- package/src/icons/glyphs/circle-parking-off.ts +13 -0
- package/src/icons/glyphs/circle-parking.ts +9 -0
- package/src/icons/glyphs/circle-pause.ts +10 -0
- package/src/icons/glyphs/circle-percent.ts +11 -0
- package/src/icons/glyphs/circle-pile.ts +13 -0
- package/src/icons/glyphs/circle-play.ts +14 -0
- package/src/icons/glyphs/circle-plus.ts +10 -0
- package/src/icons/glyphs/circle-pound-sterling.ts +11 -0
- package/src/icons/glyphs/circle-power.ts +10 -0
- package/src/icons/glyphs/circle-question-mark.ts +10 -0
- package/src/icons/glyphs/circle-slash-2.ts +9 -0
- package/src/icons/glyphs/circle-slash.ts +9 -0
- package/src/icons/glyphs/circle-small.ts +6 -0
- package/src/icons/glyphs/circle-star.ts +14 -0
- package/src/icons/glyphs/circle-stop.ts +9 -0
- package/src/icons/glyphs/circle-user-round.ts +10 -0
- package/src/icons/glyphs/circle-user.ts +10 -0
- package/src/icons/glyphs/circle-x.ts +10 -0
- package/src/icons/glyphs/circle.ts +6 -0
- package/src/icons/glyphs/circuit-board.ts +12 -0
- package/src/icons/glyphs/citrus.ts +14 -0
- package/src/icons/glyphs/clapperboard.ts +11 -0
- package/src/icons/glyphs/clipboard-check.ts +10 -0
- package/src/icons/glyphs/clipboard-clock.ts +12 -0
- package/src/icons/glyphs/clipboard-copy.ts +12 -0
- package/src/icons/glyphs/clipboard-list.ts +13 -0
- package/src/icons/glyphs/clipboard-minus.ts +10 -0
- package/src/icons/glyphs/clipboard-paste.ts +12 -0
- package/src/icons/glyphs/clipboard-pen-line.ts +17 -0
- package/src/icons/glyphs/clipboard-pen.ts +16 -0
- package/src/icons/glyphs/clipboard-plus.ts +11 -0
- package/src/icons/glyphs/clipboard-type.ts +12 -0
- package/src/icons/glyphs/clipboard-x.ts +11 -0
- package/src/icons/glyphs/clipboard.ts +9 -0
- package/src/icons/glyphs/clock-1.ts +9 -0
- package/src/icons/glyphs/clock-10.ts +9 -0
- package/src/icons/glyphs/clock-11.ts +9 -0
- package/src/icons/glyphs/clock-12.ts +9 -0
- package/src/icons/glyphs/clock-2.ts +9 -0
- package/src/icons/glyphs/clock-3.ts +9 -0
- package/src/icons/glyphs/clock-4.ts +9 -0
- package/src/icons/glyphs/clock-5.ts +9 -0
- package/src/icons/glyphs/clock-6.ts +9 -0
- package/src/icons/glyphs/clock-7.ts +9 -0
- package/src/icons/glyphs/clock-8.ts +9 -0
- package/src/icons/glyphs/clock-9.ts +9 -0
- package/src/icons/glyphs/clock-alert.ts +11 -0
- package/src/icons/glyphs/clock-arrow-down.ts +11 -0
- package/src/icons/glyphs/clock-arrow-left.ts +11 -0
- package/src/icons/glyphs/clock-arrow-right.ts +11 -0
- package/src/icons/glyphs/clock-arrow-up.ts +11 -0
- package/src/icons/glyphs/clock-check.ts +10 -0
- package/src/icons/glyphs/clock-fading.ts +13 -0
- package/src/icons/glyphs/clock-plus.ts +11 -0
- package/src/icons/glyphs/clock.ts +9 -0
- package/src/icons/glyphs/closed-caption.ts +10 -0
- package/src/icons/glyphs/cloud-alert.ts +10 -0
- package/src/icons/glyphs/cloud-backup.ts +10 -0
- package/src/icons/glyphs/cloud-check.ts +9 -0
- package/src/icons/glyphs/cloud-cog.ts +16 -0
- package/src/icons/glyphs/cloud-download.ts +10 -0
- package/src/icons/glyphs/cloud-drizzle.ts +14 -0
- package/src/icons/glyphs/cloud-fog.ts +10 -0
- package/src/icons/glyphs/cloud-hail.ts +14 -0
- package/src/icons/glyphs/cloud-lightning.ts +9 -0
- package/src/icons/glyphs/cloud-moon-rain.ts +16 -0
- package/src/icons/glyphs/cloud-moon.ts +14 -0
- package/src/icons/glyphs/cloud-off.ts +10 -0
- package/src/icons/glyphs/cloud-rain-wind.ts +11 -0
- package/src/icons/glyphs/cloud-rain.ts +11 -0
- package/src/icons/glyphs/cloud-snow.ts +14 -0
- package/src/icons/glyphs/cloud-sun-rain.ts +15 -0
- package/src/icons/glyphs/cloud-sun.ts +13 -0
- package/src/icons/glyphs/cloud-sync.ts +12 -0
- package/src/icons/glyphs/cloud-upload.ts +10 -0
- package/src/icons/glyphs/cloud.ts +8 -0
- package/src/icons/glyphs/cloudy.ts +9 -0
- package/src/icons/glyphs/clover.ts +15 -0
- package/src/icons/glyphs/club.ts +12 -0
- package/src/icons/glyphs/code-xml.ts +10 -0
- package/src/icons/glyphs/code.ts +9 -0
- package/src/icons/glyphs/coffee.ts +16 -0
- package/src/icons/glyphs/cog.ts +21 -0
- package/src/icons/glyphs/coins.ts +11 -0
- package/src/icons/glyphs/columns-2.ts +9 -0
- package/src/icons/glyphs/columns-3-cog.ts +19 -0
- package/src/icons/glyphs/columns-3.ts +10 -0
- package/src/icons/glyphs/columns-4.ts +11 -0
- package/src/icons/glyphs/combine.ts +13 -0
- package/src/icons/glyphs/command.ts +8 -0
- package/src/icons/glyphs/compass.ts +14 -0
- package/src/icons/glyphs/component.ts +31 -0
- package/src/icons/glyphs/computer.ts +11 -0
- package/src/icons/glyphs/concierge-bell.ts +11 -0
- package/src/icons/glyphs/cone.ts +9 -0
- package/src/icons/glyphs/construction.ts +15 -0
- package/src/icons/glyphs/contact-round.ts +12 -0
- package/src/icons/glyphs/contact.ts +12 -0
- package/src/icons/glyphs/container.ts +17 -0
- package/src/icons/glyphs/contrast.ts +9 -0
- package/src/icons/glyphs/cookie.ts +13 -0
- package/src/icons/glyphs/cooking-pot.ts +11 -0
- package/src/icons/glyphs/copy-check.ts +10 -0
- package/src/icons/glyphs/copy-minus.ts +10 -0
- package/src/icons/glyphs/copy-plus.ts +11 -0
- package/src/icons/glyphs/copy-slash.ts +10 -0
- package/src/icons/glyphs/copy-x.ts +11 -0
- package/src/icons/glyphs/copy.ts +9 -0
- package/src/icons/glyphs/copyleft.ts +9 -0
- package/src/icons/glyphs/copyright.ts +9 -0
- package/src/icons/glyphs/corner-down-left.ts +9 -0
- package/src/icons/glyphs/corner-down-right.ts +9 -0
- package/src/icons/glyphs/corner-left-down.ts +9 -0
- package/src/icons/glyphs/corner-left-up.ts +9 -0
- package/src/icons/glyphs/corner-right-down.ts +9 -0
- package/src/icons/glyphs/corner-right-up.ts +9 -0
- package/src/icons/glyphs/corner-up-left.ts +9 -0
- package/src/icons/glyphs/corner-up-right.ts +9 -0
- package/src/icons/glyphs/cpu.ts +21 -0
- package/src/icons/glyphs/creative-commons.ts +10 -0
- package/src/icons/glyphs/credit-card.ts +9 -0
- package/src/icons/glyphs/croissant.ts +17 -0
- package/src/icons/glyphs/crop.ts +9 -0
- package/src/icons/glyphs/cross.ts +13 -0
- package/src/icons/glyphs/crosshair.ts +12 -0
- package/src/icons/glyphs/crown.ts +14 -0
- package/src/icons/glyphs/cuboid.ts +15 -0
- package/src/icons/glyphs/cup-soda.ts +11 -0
- package/src/icons/glyphs/currency.ts +12 -0
- package/src/icons/glyphs/cylinder.ts +9 -0
- package/src/icons/glyphs/dam.ts +14 -0
- package/src/icons/glyphs/database-arrow-down.ts +13 -0
- package/src/icons/glyphs/database-arrow-up.ts +13 -0
- package/src/icons/glyphs/database-backup.ts +13 -0
- package/src/icons/glyphs/database-check.ts +12 -0
- package/src/icons/glyphs/database-minus.ts +12 -0
- package/src/icons/glyphs/database-plus.ts +13 -0
- package/src/icons/glyphs/database-search.ts +13 -0
- package/src/icons/glyphs/database-x.ts +14 -0
- package/src/icons/glyphs/database-zap.ts +12 -0
- package/src/icons/glyphs/database.ts +10 -0
- package/src/icons/glyphs/decimals-arrow-left.ts +11 -0
- package/src/icons/glyphs/decimals-arrow-right.ts +12 -0
- package/src/icons/glyphs/delete.ts +15 -0
- package/src/icons/glyphs/dessert.ts +15 -0
- package/src/icons/glyphs/diameter.ts +12 -0
- package/src/icons/glyphs/diamond-minus.ts +14 -0
- package/src/icons/glyphs/diamond-percent.ts +16 -0
- package/src/icons/glyphs/diamond-plus.ts +15 -0
- package/src/icons/glyphs/diamond.ts +13 -0
- package/src/icons/glyphs/dice-1.ts +9 -0
- package/src/icons/glyphs/dice-2.ts +10 -0
- package/src/icons/glyphs/dice-3.ts +11 -0
- package/src/icons/glyphs/dice-4.ts +12 -0
- package/src/icons/glyphs/dice-5.ts +13 -0
- package/src/icons/glyphs/dice-6.ts +14 -0
- package/src/icons/glyphs/dices.ts +13 -0
- package/src/icons/glyphs/diff.ts +10 -0
- package/src/icons/glyphs/disc-2.ts +10 -0
- package/src/icons/glyphs/disc-3.ts +11 -0
- package/src/icons/glyphs/disc-album.ts +10 -0
- package/src/icons/glyphs/disc.ts +9 -0
- package/src/icons/glyphs/divide.ts +10 -0
- package/src/icons/glyphs/dna-off.ts +17 -0
- package/src/icons/glyphs/dna.ts +18 -0
- package/src/icons/glyphs/dock.ts +10 -0
- package/src/icons/glyphs/dog.ts +22 -0
- package/src/icons/glyphs/dollar-sign.ts +9 -0
- package/src/icons/glyphs/donut.ts +14 -0
- package/src/icons/glyphs/door-closed-locked.ts +12 -0
- package/src/icons/glyphs/door-closed.ts +10 -0
- package/src/icons/glyphs/door-open.ts +17 -0
- package/src/icons/glyphs/dot.ts +6 -0
- package/src/icons/glyphs/download.ts +10 -0
- package/src/icons/glyphs/drafting-compass.ts +12 -0
- package/src/icons/glyphs/drama.ts +20 -0
- package/src/icons/glyphs/drill.ts +18 -0
- package/src/icons/glyphs/drone.ts +16 -0
- package/src/icons/glyphs/droplet-off.ts +15 -0
- package/src/icons/glyphs/droplet.ts +13 -0
- package/src/icons/glyphs/droplets.ts +19 -0
- package/src/icons/glyphs/drum.ts +14 -0
- package/src/icons/glyphs/drumstick.ts +9 -0
- package/src/icons/glyphs/dumbbell.ts +22 -0
- package/src/icons/glyphs/ear-off.ts +12 -0
- package/src/icons/glyphs/ear.ts +9 -0
- package/src/icons/glyphs/earth-lock.ts +13 -0
- package/src/icons/glyphs/earth.ts +14 -0
- package/src/icons/glyphs/eclipse.ts +9 -0
- package/src/icons/glyphs/egg-fried.ts +14 -0
- package/src/icons/glyphs/egg-off.ts +10 -0
- package/src/icons/glyphs/egg.ts +8 -0
- package/src/icons/glyphs/eject.ts +12 -0
- package/src/icons/glyphs/ellipse.ts +6 -0
- package/src/icons/glyphs/ellipsis-vertical.ts +10 -0
- package/src/icons/glyphs/ellipsis.ts +10 -0
- package/src/icons/glyphs/equal-approximately.ts +9 -0
- package/src/icons/glyphs/equal-not.ts +10 -0
- package/src/icons/glyphs/equal.ts +9 -0
- package/src/icons/glyphs/eraser.ts +14 -0
- package/src/icons/glyphs/ethernet-port.ts +17 -0
- package/src/icons/glyphs/euro.ts +13 -0
- package/src/icons/glyphs/ev-charger.ts +12 -0
- package/src/icons/glyphs/expand.ts +15 -0
- package/src/icons/glyphs/external-link.ts +10 -0
- package/src/icons/glyphs/eye-closed.ts +12 -0
- package/src/icons/glyphs/eye-dashed.ts +16 -0
- package/src/icons/glyphs/eye-off.ts +21 -0
- package/src/icons/glyphs/eye.ts +14 -0
- package/src/icons/glyphs/face-angry.ts +13 -0
- package/src/icons/glyphs/face-expressionless.ts +11 -0
- package/src/icons/glyphs/face-grinning.ts +14 -0
- package/src/icons/glyphs/face-neutral.ts +11 -0
- package/src/icons/glyphs/face-slightly-frowning.ts +11 -0
- package/src/icons/glyphs/face-slightly-smiling-plus.ts +13 -0
- package/src/icons/glyphs/face-slightly-smiling.ts +11 -0
- package/src/icons/glyphs/factory.ts +16 -0
- package/src/icons/glyphs/fan.ts +14 -0
- package/src/icons/glyphs/fast-forward.ts +9 -0
- package/src/icons/glyphs/feather.ts +15 -0
- package/src/icons/glyphs/fence.ts +14 -0
- package/src/icons/glyphs/ferris-wheel.ts +16 -0
- package/src/icons/glyphs/file-archive.ts +18 -0
- package/src/icons/glyphs/file-axis-3d.ts +16 -0
- package/src/icons/glyphs/file-badge.ts +21 -0
- package/src/icons/glyphs/file-box.ts +22 -0
- package/src/icons/glyphs/file-braces-corner.ts +16 -0
- package/src/icons/glyphs/file-braces.ts +16 -0
- package/src/icons/glyphs/file-chart-column-increasing.ts +17 -0
- package/src/icons/glyphs/file-chart-column.ts +17 -0
- package/src/icons/glyphs/file-chart-line.ts +15 -0
- package/src/icons/glyphs/file-chart-pie.ts +21 -0
- package/src/icons/glyphs/file-check-corner.ts +15 -0
- package/src/icons/glyphs/file-check.ts +15 -0
- package/src/icons/glyphs/file-clock.ts +16 -0
- package/src/icons/glyphs/file-code-corner.ts +16 -0
- package/src/icons/glyphs/file-code.ts +16 -0
- package/src/icons/glyphs/file-cog.ts +19 -0
- package/src/icons/glyphs/file-diff.ts +16 -0
- package/src/icons/glyphs/file-digit.ts +17 -0
- package/src/icons/glyphs/file-down.ts +16 -0
- package/src/icons/glyphs/file-exclamation-point.ts +15 -0
- package/src/icons/glyphs/file-headphone.ts +18 -0
- package/src/icons/glyphs/file-heart.ts +20 -0
- package/src/icons/glyphs/file-image.ts +16 -0
- package/src/icons/glyphs/file-input.ts +16 -0
- package/src/icons/glyphs/file-key.ts +17 -0
- package/src/icons/glyphs/file-lock.ts +16 -0
- package/src/icons/glyphs/file-minus-corner.ts +15 -0
- package/src/icons/glyphs/file-minus.ts +15 -0
- package/src/icons/glyphs/file-music.ts +16 -0
- package/src/icons/glyphs/file-output.ts +16 -0
- package/src/icons/glyphs/file-pen-line.ts +21 -0
- package/src/icons/glyphs/file-pen.ts +20 -0
- package/src/icons/glyphs/file-play.ts +20 -0
- package/src/icons/glyphs/file-plus-corner.ts +16 -0
- package/src/icons/glyphs/file-plus.ts +16 -0
- package/src/icons/glyphs/file-question-mark.ts +15 -0
- package/src/icons/glyphs/file-scan.ts +18 -0
- package/src/icons/glyphs/file-search-corner.ts +16 -0
- package/src/icons/glyphs/file-search.ts +16 -0
- package/src/icons/glyphs/file-signal.ts +17 -0
- package/src/icons/glyphs/file-sliders.ts +18 -0
- package/src/icons/glyphs/file-spreadsheet.ts +18 -0
- package/src/icons/glyphs/file-stack.ts +15 -0
- package/src/icons/glyphs/file-symlink.ts +15 -0
- package/src/icons/glyphs/file-terminal.ts +16 -0
- package/src/icons/glyphs/file-text.ts +17 -0
- package/src/icons/glyphs/file-type-corner.ts +17 -0
- package/src/icons/glyphs/file-type.ts +17 -0
- package/src/icons/glyphs/file-up.ts +16 -0
- package/src/icons/glyphs/file-user.ts +16 -0
- package/src/icons/glyphs/file-video-camera.ts +19 -0
- package/src/icons/glyphs/file-volume.ts +21 -0
- package/src/icons/glyphs/file-x-corner.ts +16 -0
- package/src/icons/glyphs/file-x.ts +16 -0
- package/src/icons/glyphs/file.ts +14 -0
- package/src/icons/glyphs/files.ts +10 -0
- package/src/icons/glyphs/film.ts +15 -0
- package/src/icons/glyphs/fingerprint-pattern.ts +16 -0
- package/src/icons/glyphs/fire-extinguisher.ts +13 -0
- package/src/icons/glyphs/fish-off.ts +25 -0
- package/src/icons/glyphs/fish-symbol.ts +6 -0
- package/src/icons/glyphs/fish.ts +23 -0
- package/src/icons/glyphs/fishing-hook.ts +10 -0
- package/src/icons/glyphs/fishing-rod.ts +10 -0
- package/src/icons/glyphs/flag-off.ts +11 -0
- package/src/icons/glyphs/flag-triangle-left.ts +8 -0
- package/src/icons/glyphs/flag-triangle-right.ts +8 -0
- package/src/icons/glyphs/flag.ts +13 -0
- package/src/icons/glyphs/flame-kindling.ts +15 -0
- package/src/icons/glyphs/flame.ts +13 -0
- package/src/icons/glyphs/flashlight-off.ts +15 -0
- package/src/icons/glyphs/flashlight.ts +15 -0
- package/src/icons/glyphs/flask-conical-off.ts +13 -0
- package/src/icons/glyphs/flask-conical.ts +15 -0
- package/src/icons/glyphs/flask-round.ts +10 -0
- package/src/icons/glyphs/flip-horizontal-2.ts +13 -0
- package/src/icons/glyphs/flip-vertical-2.ts +13 -0
- package/src/icons/glyphs/flower-2.ts +17 -0
- package/src/icons/glyphs/flower.ts +22 -0
- package/src/icons/glyphs/focus.ts +12 -0
- package/src/icons/glyphs/fold-horizontal.ts +15 -0
- package/src/icons/glyphs/fold-vertical.ts +15 -0
- package/src/icons/glyphs/folder-archive.ts +16 -0
- package/src/icons/glyphs/folder-bookmark.ts +14 -0
- package/src/icons/glyphs/folder-check.ts +14 -0
- package/src/icons/glyphs/folder-clock.ts +15 -0
- package/src/icons/glyphs/folder-closed.ts +14 -0
- package/src/icons/glyphs/folder-code.ts +15 -0
- package/src/icons/glyphs/folder-cog.ts +22 -0
- package/src/icons/glyphs/folder-dot.ts +14 -0
- package/src/icons/glyphs/folder-down.ts +15 -0
- package/src/icons/glyphs/folder-git-2.ts +16 -0
- package/src/icons/glyphs/folder-git.ts +16 -0
- package/src/icons/glyphs/folder-heart.ts +19 -0
- package/src/icons/glyphs/folder-input.ts +15 -0
- package/src/icons/glyphs/folder-kanban.ts +16 -0
- package/src/icons/glyphs/folder-key.ts +16 -0
- package/src/icons/glyphs/folder-lock.ts +15 -0
- package/src/icons/glyphs/folder-minus.ts +14 -0
- package/src/icons/glyphs/folder-open-dot.ts +14 -0
- package/src/icons/glyphs/folder-open.ts +13 -0
- package/src/icons/glyphs/folder-output.ts +15 -0
- package/src/icons/glyphs/folder-pen.ts +19 -0
- package/src/icons/glyphs/folder-plus.ts +15 -0
- package/src/icons/glyphs/folder-root.ts +15 -0
- package/src/icons/glyphs/folder-search-2.ts +15 -0
- package/src/icons/glyphs/folder-search.ts +15 -0
- package/src/icons/glyphs/folder-symlink.ts +14 -0
- package/src/icons/glyphs/folder-sync.ts +17 -0
- package/src/icons/glyphs/folder-tree.ts +21 -0
- package/src/icons/glyphs/folder-up.ts +15 -0
- package/src/icons/glyphs/folder-x.ts +15 -0
- package/src/icons/glyphs/folder.ts +13 -0
- package/src/icons/glyphs/folders.ts +14 -0
- package/src/icons/glyphs/footprints.ts +21 -0
- package/src/icons/glyphs/forklift.ts +17 -0
- package/src/icons/glyphs/form.ts +11 -0
- package/src/icons/glyphs/forward.ts +9 -0
- package/src/icons/glyphs/frame.ts +11 -0
- package/src/icons/glyphs/fuel.ts +11 -0
- package/src/icons/glyphs/fullscreen.ts +12 -0
- package/src/icons/glyphs/funnel-plus.ts +15 -0
- package/src/icons/glyphs/funnel-x.ts +15 -0
- package/src/icons/glyphs/funnel.ts +13 -0
- package/src/icons/glyphs/gallery-horizontal-end.ts +10 -0
- package/src/icons/glyphs/gallery-horizontal.ts +10 -0
- package/src/icons/glyphs/gallery-thumbnails.ts +12 -0
- package/src/icons/glyphs/gallery-vertical-end.ts +10 -0
- package/src/icons/glyphs/gallery-vertical.ts +10 -0
- package/src/icons/glyphs/gamepad-2.ts +17 -0
- package/src/icons/glyphs/gamepad-directional.ts +31 -0
- package/src/icons/glyphs/gamepad.ts +12 -0
- package/src/icons/glyphs/gauge.ts +9 -0
- package/src/icons/glyphs/gavel.ts +12 -0
- package/src/icons/glyphs/gem.ts +15 -0
- package/src/icons/glyphs/georgian-lari.ts +11 -0
- package/src/icons/glyphs/ghost.ts +10 -0
- package/src/icons/glyphs/gift.ts +11 -0
- package/src/icons/glyphs/git-branch-minus.ts +11 -0
- package/src/icons/glyphs/git-branch-plus.ts +13 -0
- package/src/icons/glyphs/git-branch.ts +10 -0
- package/src/icons/glyphs/git-commit-horizontal.ts +10 -0
- package/src/icons/glyphs/git-commit-vertical.ts +10 -0
- package/src/icons/glyphs/git-compare-arrows.ts +13 -0
- package/src/icons/glyphs/git-compare.ts +11 -0
- package/src/icons/glyphs/git-fork.ts +12 -0
- package/src/icons/glyphs/git-graph.ts +13 -0
- package/src/icons/glyphs/git-merge-conflict.ts +12 -0
- package/src/icons/glyphs/git-merge.ts +10 -0
- package/src/icons/glyphs/git-pull-request-arrow.ts +12 -0
- package/src/icons/glyphs/git-pull-request-closed.ts +13 -0
- package/src/icons/glyphs/git-pull-request-create-arrow.ts +13 -0
- package/src/icons/glyphs/git-pull-request-create.ts +12 -0
- package/src/icons/glyphs/git-pull-request-draft.ts +12 -0
- package/src/icons/glyphs/git-pull-request.ts +11 -0
- package/src/icons/glyphs/glass-water.ts +14 -0
- package/src/icons/glyphs/glasses.ts +12 -0
- package/src/icons/glyphs/globe-check.ts +9 -0
- package/src/icons/glyphs/globe-lock.ts +11 -0
- package/src/icons/glyphs/globe-off.ts +14 -0
- package/src/icons/glyphs/globe-x.ts +10 -0
- package/src/icons/glyphs/globe.ts +10 -0
- package/src/icons/glyphs/goal.ts +10 -0
- package/src/icons/glyphs/gpu.ts +12 -0
- package/src/icons/glyphs/graduation-cap.ts +15 -0
- package/src/icons/glyphs/grape.ts +16 -0
- package/src/icons/glyphs/grid-2x2-check.ts +14 -0
- package/src/icons/glyphs/grid-2x2-plus.ts +15 -0
- package/src/icons/glyphs/grid-2x2-x.ts +15 -0
- package/src/icons/glyphs/grid-2x2.ts +10 -0
- package/src/icons/glyphs/grid-3x2.ts +11 -0
- package/src/icons/glyphs/grid-3x3.ts +12 -0
- package/src/icons/glyphs/grip-horizontal.ts +13 -0
- package/src/icons/glyphs/grip-vertical.ts +13 -0
- package/src/icons/glyphs/grip.ts +16 -0
- package/src/icons/glyphs/group.ts +13 -0
- package/src/icons/glyphs/guitar.ts +21 -0
- package/src/icons/glyphs/ham.ts +19 -0
- package/src/icons/glyphs/hamburger.ts +11 -0
- package/src/icons/glyphs/hammer.ts +15 -0
- package/src/icons/glyphs/hand-coins.ts +17 -0
- package/src/icons/glyphs/hand-fist.ts +16 -0
- package/src/icons/glyphs/hand-grab.ts +12 -0
- package/src/icons/glyphs/hand-heart.ts +19 -0
- package/src/icons/glyphs/hand-helping.ts +15 -0
- package/src/icons/glyphs/hand-metal.ts +16 -0
- package/src/icons/glyphs/hand-platter.ts +18 -0
- package/src/icons/glyphs/hand.ts +16 -0
- package/src/icons/glyphs/handbag.ts +14 -0
- package/src/icons/glyphs/handshake.ts +17 -0
- package/src/icons/glyphs/hard-drive-download.ts +12 -0
- package/src/icons/glyphs/hard-drive-upload.ts +12 -0
- package/src/icons/glyphs/hard-drive.ts +16 -0
- package/src/icons/glyphs/hard-hat.ts +11 -0
- package/src/icons/glyphs/hash.ts +11 -0
- package/src/icons/glyphs/hat-glasses.ts +17 -0
- package/src/icons/glyphs/haze.ts +15 -0
- package/src/icons/glyphs/hd.ts +17 -0
- package/src/icons/glyphs/hdmi-port.ts +14 -0
- package/src/icons/glyphs/heading-1.ts +11 -0
- package/src/icons/glyphs/heading-2.ts +11 -0
- package/src/icons/glyphs/heading-3.ts +12 -0
- package/src/icons/glyphs/heading-4.ts +12 -0
- package/src/icons/glyphs/heading-5.ts +12 -0
- package/src/icons/glyphs/heading-6.ts +12 -0
- package/src/icons/glyphs/heading.ts +10 -0
- package/src/icons/glyphs/headphone-off.ts +12 -0
- package/src/icons/glyphs/headphones.ts +13 -0
- package/src/icons/glyphs/headset.ts +14 -0
- package/src/icons/glyphs/heart-crack.ts +19 -0
- package/src/icons/glyphs/heart-handshake.ts +13 -0
- package/src/icons/glyphs/heart-minus.ts +14 -0
- package/src/icons/glyphs/heart-off.ts +20 -0
- package/src/icons/glyphs/heart-plus.ts +15 -0
- package/src/icons/glyphs/heart-pulse.ts +14 -0
- package/src/icons/glyphs/heart-x.ts +15 -0
- package/src/icons/glyphs/heart.ts +13 -0
- package/src/icons/glyphs/heater.ts +17 -0
- package/src/icons/glyphs/helicopter.ts +15 -0
- package/src/icons/glyphs/hexagon.ts +13 -0
- package/src/icons/glyphs/highlighter.ts +9 -0
- package/src/icons/glyphs/hop-off.ts +30 -0
- package/src/icons/glyphs/hop.ts +40 -0
- package/src/icons/glyphs/hospital.ts +12 -0
- package/src/icons/glyphs/hotel.ts +17 -0
- package/src/icons/glyphs/hourglass.ts +11 -0
- package/src/icons/glyphs/house-heart.ts +19 -0
- package/src/icons/glyphs/house-plug.ts +16 -0
- package/src/icons/glyphs/house-plus.ts +16 -0
- package/src/icons/glyphs/house-wifi.ts +16 -0
- package/src/icons/glyphs/house.ts +14 -0
- package/src/icons/glyphs/ice-cream-bowl.ts +13 -0
- package/src/icons/glyphs/ice-cream-cone.ts +10 -0
- package/src/icons/glyphs/id-card-lanyard.ts +12 -0
- package/src/icons/glyphs/id-card.ts +12 -0
- package/src/icons/glyphs/image-down.ts +16 -0
- package/src/icons/glyphs/image-minus.ts +11 -0
- package/src/icons/glyphs/image-off.ts +13 -0
- package/src/icons/glyphs/image-play.ts +16 -0
- package/src/icons/glyphs/image-plus.ts +12 -0
- package/src/icons/glyphs/image-up.ts +16 -0
- package/src/icons/glyphs/image-upscale.ts +15 -0
- package/src/icons/glyphs/image.ts +10 -0
- package/src/icons/glyphs/images.ts +11 -0
- package/src/icons/glyphs/import.ts +10 -0
- package/src/icons/glyphs/inbox.ts +14 -0
- package/src/icons/glyphs/indian-rupee.ts +12 -0
- package/src/icons/glyphs/infinity.ts +8 -0
- package/src/icons/glyphs/info.ts +10 -0
- package/src/icons/glyphs/inspection-panel.ts +12 -0
- package/src/icons/glyphs/italic.ts +10 -0
- package/src/icons/glyphs/iteration-ccw.ts +9 -0
- package/src/icons/glyphs/iteration-cw.ts +9 -0
- package/src/icons/glyphs/japanese-yen.ts +10 -0
- package/src/icons/glyphs/joystick.ts +11 -0
- package/src/icons/glyphs/kanban.ts +10 -0
- package/src/icons/glyphs/kayak.ts +16 -0
- package/src/icons/glyphs/key-round.ts +14 -0
- package/src/icons/glyphs/key-square.ts +20 -0
- package/src/icons/glyphs/key.ts +10 -0
- package/src/icons/glyphs/keyboard-music.ts +16 -0
- package/src/icons/glyphs/keyboard-off.ts +17 -0
- package/src/icons/glyphs/keyboard.ts +16 -0
- package/src/icons/glyphs/lamp-ceiling.ts +15 -0
- package/src/icons/glyphs/lamp-desk.ts +16 -0
- package/src/icons/glyphs/lamp-floor.ts +15 -0
- package/src/icons/glyphs/lamp-wall-down.ts +15 -0
- package/src/icons/glyphs/lamp-wall-up.ts +15 -0
- package/src/icons/glyphs/lamp.ts +15 -0
- package/src/icons/glyphs/land-plot.ts +16 -0
- package/src/icons/glyphs/landmark.ts +16 -0
- package/src/icons/glyphs/languages.ts +13 -0
- package/src/icons/glyphs/laptop-minimal-check.ts +10 -0
- package/src/icons/glyphs/laptop-minimal.ts +9 -0
- package/src/icons/glyphs/laptop.ts +14 -0
- package/src/icons/glyphs/lasso-select.ts +20 -0
- package/src/icons/glyphs/lasso.ts +10 -0
- package/src/icons/glyphs/layer-arrow-down.ts +16 -0
- package/src/icons/glyphs/layer-arrow-up.ts +15 -0
- package/src/icons/glyphs/layers-2.ts +19 -0
- package/src/icons/glyphs/layers-arrow-down.ts +17 -0
- package/src/icons/glyphs/layers-arrow-up.ts +16 -0
- package/src/icons/glyphs/layers-minus.ts +20 -0
- package/src/icons/glyphs/layers-plus.ts +17 -0
- package/src/icons/glyphs/layers.ts +15 -0
- package/src/icons/glyphs/layout-dashboard.ts +11 -0
- package/src/icons/glyphs/layout-freeform.ts +10 -0
- package/src/icons/glyphs/layout-grid.ts +11 -0
- package/src/icons/glyphs/layout-list.ts +13 -0
- package/src/icons/glyphs/layout-panel-left.ts +10 -0
- package/src/icons/glyphs/layout-panel-top.ts +10 -0
- package/src/icons/glyphs/layout-template.ts +10 -0
- package/src/icons/glyphs/leaf.ts +12 -0
- package/src/icons/glyphs/leafy-green.ts +14 -0
- package/src/icons/glyphs/lectern.ts +15 -0
- package/src/icons/glyphs/lens-concave.ts +13 -0
- package/src/icons/glyphs/lens-convex.ts +13 -0
- package/src/icons/glyphs/library-big.ts +15 -0
- package/src/icons/glyphs/library.ts +11 -0
- package/src/icons/glyphs/life-buoy.ts +13 -0
- package/src/icons/glyphs/ligature.ts +12 -0
- package/src/icons/glyphs/lightbulb-off.ts +12 -0
- package/src/icons/glyphs/lightbulb.ts +15 -0
- package/src/icons/glyphs/line-dot-right-horizontal.ts +9 -0
- package/src/icons/glyphs/line-squiggle.ts +11 -0
- package/src/icons/glyphs/line-style.ts +13 -0
- package/src/icons/glyphs/link-2-off.ts +11 -0
- package/src/icons/glyphs/link-2.ts +10 -0
- package/src/icons/glyphs/link.ts +9 -0
- package/src/icons/glyphs/list-check.ts +11 -0
- package/src/icons/glyphs/list-checks.ts +12 -0
- package/src/icons/glyphs/list-chevrons-down-up.ts +12 -0
- package/src/icons/glyphs/list-chevrons-up-down.ts +12 -0
- package/src/icons/glyphs/list-collapse.ts +12 -0
- package/src/icons/glyphs/list-end.ts +12 -0
- package/src/icons/glyphs/list-filter-plus.ts +12 -0
- package/src/icons/glyphs/list-filter.ts +10 -0
- package/src/icons/glyphs/list-indent-decrease.ts +11 -0
- package/src/icons/glyphs/list-indent-increase.ts +11 -0
- package/src/icons/glyphs/list-minus.ts +11 -0
- package/src/icons/glyphs/list-music.ts +12 -0
- package/src/icons/glyphs/list-ordered.ts +13 -0
- package/src/icons/glyphs/list-plus.ts +12 -0
- package/src/icons/glyphs/list-restart.ts +12 -0
- package/src/icons/glyphs/list-sort-ascending.ts +10 -0
- package/src/icons/glyphs/list-sort-descending.ts +10 -0
- package/src/icons/glyphs/list-start.ts +12 -0
- package/src/icons/glyphs/list-todo.ts +12 -0
- package/src/icons/glyphs/list-tree.ts +12 -0
- package/src/icons/glyphs/list-video.ts +16 -0
- package/src/icons/glyphs/list-x.ts +12 -0
- package/src/icons/glyphs/list.ts +13 -0
- package/src/icons/glyphs/loader-circle.ts +6 -0
- package/src/icons/glyphs/loader-pinwheel.ts +11 -0
- package/src/icons/glyphs/loader.ts +15 -0
- package/src/icons/glyphs/locate-fixed.ts +13 -0
- package/src/icons/glyphs/locate-off.ts +14 -0
- package/src/icons/glyphs/locate.ts +12 -0
- package/src/icons/glyphs/lock-keyhole-open.ts +10 -0
- package/src/icons/glyphs/lock-keyhole.ts +10 -0
- package/src/icons/glyphs/lock-open.ts +9 -0
- package/src/icons/glyphs/lock.ts +9 -0
- package/src/icons/glyphs/log-in.ts +10 -0
- package/src/icons/glyphs/log-out.ts +10 -0
- package/src/icons/glyphs/logs.ts +16 -0
- package/src/icons/glyphs/lollipop.ts +10 -0
- package/src/icons/glyphs/luggage.ts +12 -0
- package/src/icons/glyphs/magnet.ts +15 -0
- package/src/icons/glyphs/mail-badge.ts +16 -0
- package/src/icons/glyphs/mail-check.ts +10 -0
- package/src/icons/glyphs/mail-minus.ts +10 -0
- package/src/icons/glyphs/mail-open.ts +14 -0
- package/src/icons/glyphs/mail-plus.ts +11 -0
- package/src/icons/glyphs/mail-question-mark.ts +11 -0
- package/src/icons/glyphs/mail-search.ts +12 -0
- package/src/icons/glyphs/mail-warning.ts +11 -0
- package/src/icons/glyphs/mail-x.ts +11 -0
- package/src/icons/glyphs/mail.ts +9 -0
- package/src/icons/glyphs/mailbox.ts +11 -0
- package/src/icons/glyphs/mails.ts +10 -0
- package/src/icons/glyphs/map-minus.ts +16 -0
- package/src/icons/glyphs/map-pin-check-inside.ts +14 -0
- package/src/icons/glyphs/map-pin-check.ts +15 -0
- package/src/icons/glyphs/map-pin-house.ts +16 -0
- package/src/icons/glyphs/map-pin-minus-inside.ts +14 -0
- package/src/icons/glyphs/map-pin-minus.ts +15 -0
- package/src/icons/glyphs/map-pin-off.ts +17 -0
- package/src/icons/glyphs/map-pin-pen.ts +15 -0
- package/src/icons/glyphs/map-pin-plus-inside.ts +15 -0
- package/src/icons/glyphs/map-pin-plus.ts +16 -0
- package/src/icons/glyphs/map-pin-search.ts +16 -0
- package/src/icons/glyphs/map-pin-x-inside.ts +15 -0
- package/src/icons/glyphs/map-pin-x.ts +16 -0
- package/src/icons/glyphs/map-pin.ts +14 -0
- package/src/icons/glyphs/map-pinned.ts +20 -0
- package/src/icons/glyphs/map-plus.ts +17 -0
- package/src/icons/glyphs/map.ts +15 -0
- package/src/icons/glyphs/mars-stroke.ts +11 -0
- package/src/icons/glyphs/mars.ts +10 -0
- package/src/icons/glyphs/martini.ts +10 -0
- package/src/icons/glyphs/maximize-2.ts +11 -0
- package/src/icons/glyphs/maximize.ts +11 -0
- package/src/icons/glyphs/medal.ts +18 -0
- package/src/icons/glyphs/megaphone-off.ts +12 -0
- package/src/icons/glyphs/megaphone.ts +15 -0
- package/src/icons/glyphs/memory-stick.ts +18 -0
- package/src/icons/glyphs/menu.ts +10 -0
- package/src/icons/glyphs/merge.ts +10 -0
- package/src/icons/glyphs/message-circle-check.ts +14 -0
- package/src/icons/glyphs/message-circle-code.ts +15 -0
- package/src/icons/glyphs/message-circle-dashed.ts +15 -0
- package/src/icons/glyphs/message-circle-heart.ts +19 -0
- package/src/icons/glyphs/message-circle-more.ts +16 -0
- package/src/icons/glyphs/message-circle-off.ts +15 -0
- package/src/icons/glyphs/message-circle-plus.ts +15 -0
- package/src/icons/glyphs/message-circle-question-mark.ts +15 -0
- package/src/icons/glyphs/message-circle-reply.ts +15 -0
- package/src/icons/glyphs/message-circle-warning.ts +15 -0
- package/src/icons/glyphs/message-circle-x.ts +15 -0
- package/src/icons/glyphs/message-circle.ts +13 -0
- package/src/icons/glyphs/message-square-check.ts +14 -0
- package/src/icons/glyphs/message-square-code.ts +15 -0
- package/src/icons/glyphs/message-square-dashed.ts +17 -0
- package/src/icons/glyphs/message-square-diff.ts +16 -0
- package/src/icons/glyphs/message-square-dot.ts +14 -0
- package/src/icons/glyphs/message-square-heart.ts +19 -0
- package/src/icons/glyphs/message-square-lock.ts +15 -0
- package/src/icons/glyphs/message-square-more.ts +16 -0
- package/src/icons/glyphs/message-square-off.ts +15 -0
- package/src/icons/glyphs/message-square-plus.ts +15 -0
- package/src/icons/glyphs/message-square-quote.ts +15 -0
- package/src/icons/glyphs/message-square-reply.ts +15 -0
- package/src/icons/glyphs/message-square-share.ts +15 -0
- package/src/icons/glyphs/message-square-text.ts +16 -0
- package/src/icons/glyphs/message-square-warning.ts +15 -0
- package/src/icons/glyphs/message-square-x.ts +15 -0
- package/src/icons/glyphs/message-square.ts +13 -0
- package/src/icons/glyphs/messages-square.ts +19 -0
- package/src/icons/glyphs/metronome.ts +16 -0
- package/src/icons/glyphs/mic-audio-lines.ts +16 -0
- package/src/icons/glyphs/mic-off.ts +13 -0
- package/src/icons/glyphs/mic-signal.ts +14 -0
- package/src/icons/glyphs/mic-vocal.ts +15 -0
- package/src/icons/glyphs/mic.ts +10 -0
- package/src/icons/glyphs/microchip.ts +17 -0
- package/src/icons/glyphs/microscope.ts +13 -0
- package/src/icons/glyphs/microwave.ts +12 -0
- package/src/icons/glyphs/milestone.ts +15 -0
- package/src/icons/glyphs/milk-off.ts +16 -0
- package/src/icons/glyphs/milk.ts +15 -0
- package/src/icons/glyphs/minimize-2.ts +11 -0
- package/src/icons/glyphs/minimize.ts +11 -0
- package/src/icons/glyphs/minus.ts +6 -0
- package/src/icons/glyphs/mirror-rectangular.ts +10 -0
- package/src/icons/glyphs/mirror-round.ts +12 -0
- package/src/icons/glyphs/monitor-check.ts +11 -0
- package/src/icons/glyphs/monitor-cloud.ts +11 -0
- package/src/icons/glyphs/monitor-cog.ts +19 -0
- package/src/icons/glyphs/monitor-dot.ts +11 -0
- package/src/icons/glyphs/monitor-down.ts +12 -0
- package/src/icons/glyphs/monitor-off.ts +12 -0
- package/src/icons/glyphs/monitor-pause.ts +12 -0
- package/src/icons/glyphs/monitor-play.ts +16 -0
- package/src/icons/glyphs/monitor-smartphone.ts +11 -0
- package/src/icons/glyphs/monitor-speaker.ts +12 -0
- package/src/icons/glyphs/monitor-stop.ts +11 -0
- package/src/icons/glyphs/monitor-up.ts +12 -0
- package/src/icons/glyphs/monitor-x.ts +12 -0
- package/src/icons/glyphs/monitor.ts +10 -0
- package/src/icons/glyphs/moon-star.ts +15 -0
- package/src/icons/glyphs/moon.ts +13 -0
- package/src/icons/glyphs/mosque.ts +18 -0
- package/src/icons/glyphs/motorbike.ts +12 -0
- package/src/icons/glyphs/mountain-snow.ts +9 -0
- package/src/icons/glyphs/mountain.ts +6 -0
- package/src/icons/glyphs/mouse-left.ts +10 -0
- package/src/icons/glyphs/mouse-off.ts +11 -0
- package/src/icons/glyphs/mouse-pointer-2-off.ts +15 -0
- package/src/icons/glyphs/mouse-pointer-2.ts +13 -0
- package/src/icons/glyphs/mouse-pointer-ban.ts +15 -0
- package/src/icons/glyphs/mouse-pointer-click.ts +17 -0
- package/src/icons/glyphs/mouse-pointer.ts +14 -0
- package/src/icons/glyphs/mouse-right.ts +10 -0
- package/src/icons/glyphs/mouse.ts +9 -0
- package/src/icons/glyphs/move-3d.ts +11 -0
- package/src/icons/glyphs/move-diagonal-2.ts +10 -0
- package/src/icons/glyphs/move-diagonal.ts +10 -0
- package/src/icons/glyphs/move-down-left.ts +9 -0
- package/src/icons/glyphs/move-down-right.ts +9 -0
- package/src/icons/glyphs/move-down.ts +9 -0
- package/src/icons/glyphs/move-horizontal.ts +10 -0
- package/src/icons/glyphs/move-left.ts +9 -0
- package/src/icons/glyphs/move-right.ts +9 -0
- package/src/icons/glyphs/move-up-left.ts +9 -0
- package/src/icons/glyphs/move-up-right.ts +9 -0
- package/src/icons/glyphs/move-up.ts +9 -0
- package/src/icons/glyphs/move-vertical.ts +10 -0
- package/src/icons/glyphs/move.ts +13 -0
- package/src/icons/glyphs/music-2.ts +9 -0
- package/src/icons/glyphs/music-3.ts +9 -0
- package/src/icons/glyphs/music-4.ts +11 -0
- package/src/icons/glyphs/music.ts +10 -0
- package/src/icons/glyphs/navigation-2-off.ts +10 -0
- package/src/icons/glyphs/navigation-2.ts +6 -0
- package/src/icons/glyphs/navigation-off.ts +10 -0
- package/src/icons/glyphs/navigation.ts +6 -0
- package/src/icons/glyphs/network.ts +12 -0
- package/src/icons/glyphs/newspaper.ts +16 -0
- package/src/icons/glyphs/nfc.ts +11 -0
- package/src/icons/glyphs/non-binary.ts +11 -0
- package/src/icons/glyphs/notebook-pen.ts +18 -0
- package/src/icons/glyphs/notebook-tabs.ts +16 -0
- package/src/icons/glyphs/notebook-text.ts +15 -0
- package/src/icons/glyphs/notebook.ts +13 -0
- package/src/icons/glyphs/notepad-text-dashed.ts +20 -0
- package/src/icons/glyphs/notepad-text.ts +14 -0
- package/src/icons/glyphs/nut-off.ts +22 -0
- package/src/icons/glyphs/nut.ts +20 -0
- package/src/icons/glyphs/octagon-alert.ts +15 -0
- package/src/icons/glyphs/octagon-minus.ts +14 -0
- package/src/icons/glyphs/octagon-pause.ts +15 -0
- package/src/icons/glyphs/octagon-x.ts +15 -0
- package/src/icons/glyphs/octagon.ts +13 -0
- package/src/icons/glyphs/omega.ts +13 -0
- package/src/icons/glyphs/option.ts +9 -0
- package/src/icons/glyphs/orbit.ts +12 -0
- package/src/icons/glyphs/origami.ts +18 -0
- package/src/icons/glyphs/package-2.ts +15 -0
- package/src/icons/glyphs/package-check.ts +17 -0
- package/src/icons/glyphs/package-minus.ts +17 -0
- package/src/icons/glyphs/package-open.ts +26 -0
- package/src/icons/glyphs/package-plus.ts +18 -0
- package/src/icons/glyphs/package-search.ts +18 -0
- package/src/icons/glyphs/package-x.ts +18 -0
- package/src/icons/glyphs/package.ts +16 -0
- package/src/icons/glyphs/paint-bucket.ts +21 -0
- package/src/icons/glyphs/paint-roller.ts +10 -0
- package/src/icons/glyphs/paintbrush-vertical.ts +16 -0
- package/src/icons/glyphs/paintbrush.ts +20 -0
- package/src/icons/glyphs/palette.ts +17 -0
- package/src/icons/glyphs/panda.ts +18 -0
- package/src/icons/glyphs/panel-bottom-close.ts +10 -0
- package/src/icons/glyphs/panel-bottom-dashed.ts +12 -0
- package/src/icons/glyphs/panel-bottom-open.ts +10 -0
- package/src/icons/glyphs/panel-bottom.ts +9 -0
- package/src/icons/glyphs/panel-left-close.ts +10 -0
- package/src/icons/glyphs/panel-left-dashed.ts +12 -0
- package/src/icons/glyphs/panel-left-open.ts +10 -0
- package/src/icons/glyphs/panel-left-right-dashed.ts +16 -0
- package/src/icons/glyphs/panel-left.ts +9 -0
- package/src/icons/glyphs/panel-right-close.ts +10 -0
- package/src/icons/glyphs/panel-right-dashed.ts +12 -0
- package/src/icons/glyphs/panel-right-open.ts +10 -0
- package/src/icons/glyphs/panel-right.ts +9 -0
- package/src/icons/glyphs/panel-top-bottom-dashed.ts +16 -0
- package/src/icons/glyphs/panel-top-close.ts +10 -0
- package/src/icons/glyphs/panel-top-dashed.ts +12 -0
- package/src/icons/glyphs/panel-top-open.ts +10 -0
- package/src/icons/glyphs/panel-top.ts +9 -0
- package/src/icons/glyphs/panels-left-bottom.ts +10 -0
- package/src/icons/glyphs/panels-right-bottom.ts +10 -0
- package/src/icons/glyphs/panels-top-left.ts +10 -0
- package/src/icons/glyphs/paper-bag.ts +19 -0
- package/src/icons/glyphs/paperclip.ts +13 -0
- package/src/icons/glyphs/parasol.ts +15 -0
- package/src/icons/glyphs/parentheses.ts +9 -0
- package/src/icons/glyphs/parking-meter.ts +17 -0
- package/src/icons/glyphs/party-popper.ts +26 -0
- package/src/icons/glyphs/pause.ts +9 -0
- package/src/icons/glyphs/paw-print.ts +16 -0
- package/src/icons/glyphs/pc-case.ts +11 -0
- package/src/icons/glyphs/pen-line.ts +14 -0
- package/src/icons/glyphs/pen-off.ts +15 -0
- package/src/icons/glyphs/pen-tool.ts +21 -0
- package/src/icons/glyphs/pen.ts +13 -0
- package/src/icons/glyphs/pencil-line.ts +15 -0
- package/src/icons/glyphs/pencil-off.ts +16 -0
- package/src/icons/glyphs/pencil-ruler.ts +18 -0
- package/src/icons/glyphs/pencil-sparkles.ts +20 -0
- package/src/icons/glyphs/pencil.ts +14 -0
- package/src/icons/glyphs/pentagon.ts +13 -0
- package/src/icons/glyphs/percent.ts +10 -0
- package/src/icons/glyphs/person-standing.ts +11 -0
- package/src/icons/glyphs/phi.ts +9 -0
- package/src/icons/glyphs/philippine-peso.ts +10 -0
- package/src/icons/glyphs/phone-call.ts +15 -0
- package/src/icons/glyphs/phone-forwarded.ts +15 -0
- package/src/icons/glyphs/phone-incoming.ts +15 -0
- package/src/icons/glyphs/phone-missed.ts +15 -0
- package/src/icons/glyphs/phone-off.ts +20 -0
- package/src/icons/glyphs/phone-outgoing.ts +15 -0
- package/src/icons/glyphs/phone.ts +13 -0
- package/src/icons/glyphs/pi.ts +10 -0
- package/src/icons/glyphs/piano.ts +18 -0
- package/src/icons/glyphs/pickaxe.ts +26 -0
- package/src/icons/glyphs/picture-in-picture-2.ts +9 -0
- package/src/icons/glyphs/picture-in-picture.ts +12 -0
- package/src/icons/glyphs/piggy-bank.ts +15 -0
- package/src/icons/glyphs/pilcrow-left.ts +12 -0
- package/src/icons/glyphs/pilcrow-right.ts +12 -0
- package/src/icons/glyphs/pilcrow.ts +10 -0
- package/src/icons/glyphs/pill-bottle.ts +10 -0
- package/src/icons/glyphs/pill.ts +9 -0
- package/src/icons/glyphs/pin-off.ts +11 -0
- package/src/icons/glyphs/pin.ts +14 -0
- package/src/icons/glyphs/pipette.ts +15 -0
- package/src/icons/glyphs/pizza.ts +17 -0
- package/src/icons/glyphs/plane-landing.ts +14 -0
- package/src/icons/glyphs/plane-takeoff.ts +14 -0
- package/src/icons/glyphs/plane.ts +13 -0
- package/src/icons/glyphs/play-off.ts +10 -0
- package/src/icons/glyphs/play.ts +11 -0
- package/src/icons/glyphs/plug-2.ts +12 -0
- package/src/icons/glyphs/plug-zap.ts +12 -0
- package/src/icons/glyphs/plug.ts +11 -0
- package/src/icons/glyphs/plus.ts +9 -0
- package/src/icons/glyphs/pocket-knife.ts +12 -0
- package/src/icons/glyphs/podium.ts +15 -0
- package/src/icons/glyphs/pointer-off.ts +16 -0
- package/src/icons/glyphs/pointer.ts +17 -0
- package/src/icons/glyphs/popcorn.ts +16 -0
- package/src/icons/glyphs/popsicle.ts +12 -0
- package/src/icons/glyphs/pound-sterling.ts +11 -0
- package/src/icons/glyphs/power-off.ts +11 -0
- package/src/icons/glyphs/power.ts +9 -0
- package/src/icons/glyphs/presentation.ts +10 -0
- package/src/icons/glyphs/printer-check.ts +11 -0
- package/src/icons/glyphs/printer-x.ts +12 -0
- package/src/icons/glyphs/printer.ts +10 -0
- package/src/icons/glyphs/projector.ts +16 -0
- package/src/icons/glyphs/proportions.ts +10 -0
- package/src/icons/glyphs/puzzle.ts +13 -0
- package/src/icons/glyphs/pyramid.ts +14 -0
- package/src/icons/glyphs/qr-code.ts +19 -0
- package/src/icons/glyphs/quote.ts +19 -0
- package/src/icons/glyphs/rabbit.ts +17 -0
- package/src/icons/glyphs/radar.ts +15 -0
- package/src/icons/glyphs/radiation.ts +26 -0
- package/src/icons/glyphs/radical.ts +13 -0
- package/src/icons/glyphs/radio-off.ts +13 -0
- package/src/icons/glyphs/radio-receiver.ts +11 -0
- package/src/icons/glyphs/radio-tower.ts +14 -0
- package/src/icons/glyphs/radio.ts +12 -0
- package/src/icons/glyphs/radius.ts +11 -0
- package/src/icons/glyphs/rainbow.ts +10 -0
- package/src/icons/glyphs/rat.ts +17 -0
- package/src/icons/glyphs/ratio.ts +9 -0
- package/src/icons/glyphs/receipt-cent.ts +15 -0
- package/src/icons/glyphs/receipt-euro.ts +15 -0
- package/src/icons/glyphs/receipt-indian-rupee.ts +16 -0
- package/src/icons/glyphs/receipt-japanese-yen.ts +17 -0
- package/src/icons/glyphs/receipt-pound-sterling.ts +16 -0
- package/src/icons/glyphs/receipt-russian-ruble.ts +15 -0
- package/src/icons/glyphs/receipt-swiss-franc.ts +16 -0
- package/src/icons/glyphs/receipt-text.ts +16 -0
- package/src/icons/glyphs/receipt-turkish-lira.ts +15 -0
- package/src/icons/glyphs/receipt.ts +15 -0
- package/src/icons/glyphs/rectangle-circle.ts +9 -0
- package/src/icons/glyphs/rectangle-ellipsis.ts +11 -0
- package/src/icons/glyphs/rectangle-goggles.ts +13 -0
- package/src/icons/glyphs/rectangle-horizontal.ts +8 -0
- package/src/icons/glyphs/rectangle-vertical.ts +8 -0
- package/src/icons/glyphs/recycle.ts +18 -0
- package/src/icons/glyphs/redo-2.ts +9 -0
- package/src/icons/glyphs/redo-dot.ts +10 -0
- package/src/icons/glyphs/redo.ts +9 -0
- package/src/icons/glyphs/refresh-ccw-dot.ts +12 -0
- package/src/icons/glyphs/refresh-ccw.ts +11 -0
- package/src/icons/glyphs/refresh-cw-off.ts +14 -0
- package/src/icons/glyphs/refresh-cw.ts +11 -0
- package/src/icons/glyphs/refrigerator.ts +10 -0
- package/src/icons/glyphs/regex.ts +11 -0
- package/src/icons/glyphs/remove-formatting.ts +12 -0
- package/src/icons/glyphs/repeat-1.ts +12 -0
- package/src/icons/glyphs/repeat-2.ts +11 -0
- package/src/icons/glyphs/repeat-off.ts +14 -0
- package/src/icons/glyphs/repeat.ts +11 -0
- package/src/icons/glyphs/replace-all.ts +16 -0
- package/src/icons/glyphs/replace.ts +14 -0
- package/src/icons/glyphs/reply-all.ts +10 -0
- package/src/icons/glyphs/reply.ts +9 -0
- package/src/icons/glyphs/rewind.ts +9 -0
- package/src/icons/glyphs/ribbon.ts +17 -0
- package/src/icons/glyphs/road.ts +16 -0
- package/src/icons/glyphs/rocket.ts +21 -0
- package/src/icons/glyphs/rocking-chair.ts +11 -0
- package/src/icons/glyphs/roller-coaster.ts +14 -0
- package/src/icons/glyphs/rose.ts +15 -0
- package/src/icons/glyphs/rotate-3d.ts +10 -0
- package/src/icons/glyphs/rotate-ccw-clock.ts +10 -0
- package/src/icons/glyphs/rotate-ccw-key.ts +12 -0
- package/src/icons/glyphs/rotate-ccw-square.ts +10 -0
- package/src/icons/glyphs/rotate-ccw.ts +9 -0
- package/src/icons/glyphs/rotate-cw-fading-clock.ts +17 -0
- package/src/icons/glyphs/rotate-cw-square.ts +10 -0
- package/src/icons/glyphs/rotate-cw.ts +9 -0
- package/src/icons/glyphs/route-off.ts +14 -0
- package/src/icons/glyphs/route.ts +10 -0
- package/src/icons/glyphs/router.ts +13 -0
- package/src/icons/glyphs/rows-2.ts +9 -0
- package/src/icons/glyphs/rows-3.ts +10 -0
- package/src/icons/glyphs/rows-4.ts +11 -0
- package/src/icons/glyphs/rss.ts +10 -0
- package/src/icons/glyphs/ruler-dimension-line.ts +15 -0
- package/src/icons/glyphs/ruler.ts +17 -0
- package/src/icons/glyphs/russian-ruble.ts +9 -0
- package/src/icons/glyphs/sailboat.ts +13 -0
- package/src/icons/glyphs/salad.ts +17 -0
- package/src/icons/glyphs/sandwich.ts +12 -0
- package/src/icons/glyphs/satellite-dish.ts +11 -0
- package/src/icons/glyphs/satellite.ts +27 -0
- package/src/icons/glyphs/saudi-riyal.ts +11 -0
- package/src/icons/glyphs/save-all.ts +16 -0
- package/src/icons/glyphs/save-check.ts +16 -0
- package/src/icons/glyphs/save-off.ts +14 -0
- package/src/icons/glyphs/save-pen.ts +19 -0
- package/src/icons/glyphs/save-plus.ts +17 -0
- package/src/icons/glyphs/save.ts +15 -0
- package/src/icons/glyphs/scale-3d.ts +11 -0
- package/src/icons/glyphs/scale.ts +12 -0
- package/src/icons/glyphs/scaling.ts +11 -0
- package/src/icons/glyphs/scan-barcode.ts +14 -0
- package/src/icons/glyphs/scan-box.ts +19 -0
- package/src/icons/glyphs/scan-eye.ts +18 -0
- package/src/icons/glyphs/scan-face.ts +14 -0
- package/src/icons/glyphs/scan-heart.ts +15 -0
- package/src/icons/glyphs/scan-line.ts +12 -0
- package/src/icons/glyphs/scan-qr-code.ts +15 -0
- package/src/icons/glyphs/scan-search.ts +13 -0
- package/src/icons/glyphs/scan-square.ts +12 -0
- package/src/icons/glyphs/scan-text.ts +14 -0
- package/src/icons/glyphs/scan.ts +11 -0
- package/src/icons/glyphs/school.ts +18 -0
- package/src/icons/glyphs/scissors-line-dashed.ts +14 -0
- package/src/icons/glyphs/scissors.ts +12 -0
- package/src/icons/glyphs/scooter.ts +11 -0
- package/src/icons/glyphs/screen-share-off.ts +12 -0
- package/src/icons/glyphs/screen-share.ts +12 -0
- package/src/icons/glyphs/scroll-text.ts +16 -0
- package/src/icons/glyphs/scroll.ts +14 -0
- package/src/icons/glyphs/search-alert.ts +11 -0
- package/src/icons/glyphs/search-check.ts +10 -0
- package/src/icons/glyphs/search-code.ts +11 -0
- package/src/icons/glyphs/search-slash.ts +10 -0
- package/src/icons/glyphs/search-x.ts +11 -0
- package/src/icons/glyphs/search.ts +9 -0
- package/src/icons/glyphs/section.ts +9 -0
- package/src/icons/glyphs/send-horizontal.ts +14 -0
- package/src/icons/glyphs/send-to-back.ts +11 -0
- package/src/icons/glyphs/send.ts +14 -0
- package/src/icons/glyphs/separator-horizontal.ts +10 -0
- package/src/icons/glyphs/separator-vertical.ts +10 -0
- package/src/icons/glyphs/server-cog.ts +19 -0
- package/src/icons/glyphs/server-crash.ts +12 -0
- package/src/icons/glyphs/server-off.ts +13 -0
- package/src/icons/glyphs/server-plus.ts +13 -0
- package/src/icons/glyphs/server.ts +11 -0
- package/src/icons/glyphs/settings-2.ts +11 -0
- package/src/icons/glyphs/settings.ts +14 -0
- package/src/icons/glyphs/shapes.ts +15 -0
- package/src/icons/glyphs/share-2.ts +12 -0
- package/src/icons/glyphs/share.ts +10 -0
- package/src/icons/glyphs/sheet.ts +12 -0
- package/src/icons/glyphs/shell.ts +13 -0
- package/src/icons/glyphs/shelving-unit.ts +14 -0
- package/src/icons/glyphs/shield-alert.ts +15 -0
- package/src/icons/glyphs/shield-ban.ts +14 -0
- package/src/icons/glyphs/shield-check.ts +14 -0
- package/src/icons/glyphs/shield-cog-corner.ts +22 -0
- package/src/icons/glyphs/shield-cog.ts +22 -0
- package/src/icons/glyphs/shield-ellipsis.ts +16 -0
- package/src/icons/glyphs/shield-half.ts +14 -0
- package/src/icons/glyphs/shield-keyhole.ts +15 -0
- package/src/icons/glyphs/shield-lock.ts +15 -0
- package/src/icons/glyphs/shield-minus.ts +14 -0
- package/src/icons/glyphs/shield-off.ts +20 -0
- package/src/icons/glyphs/shield-plus.ts +15 -0
- package/src/icons/glyphs/shield-question-mark.ts +15 -0
- package/src/icons/glyphs/shield-user.ts +15 -0
- package/src/icons/glyphs/shield-x.ts +15 -0
- package/src/icons/glyphs/shield.ts +13 -0
- package/src/icons/glyphs/ship-wheel.ts +17 -0
- package/src/icons/glyphs/ship.ts +22 -0
- package/src/icons/glyphs/shirt.ts +13 -0
- package/src/icons/glyphs/shopping-bag.ts +15 -0
- package/src/icons/glyphs/shopping-basket.ts +14 -0
- package/src/icons/glyphs/shopping-cart.ts +13 -0
- package/src/icons/glyphs/shovel.ts +20 -0
- package/src/icons/glyphs/shower-head.ts +17 -0
- package/src/icons/glyphs/shredder.ts +17 -0
- package/src/icons/glyphs/shrimp.ts +17 -0
- package/src/icons/glyphs/shrink.ts +11 -0
- package/src/icons/glyphs/shrub.ts +10 -0
- package/src/icons/glyphs/shuffle.ts +12 -0
- package/src/icons/glyphs/sigma.ts +13 -0
- package/src/icons/glyphs/signal-high.ts +11 -0
- package/src/icons/glyphs/signal-low.ts +9 -0
- package/src/icons/glyphs/signal-medium.ts +10 -0
- package/src/icons/glyphs/signal-zero.ts +6 -0
- package/src/icons/glyphs/signal.ts +12 -0
- package/src/icons/glyphs/signature.ts +14 -0
- package/src/icons/glyphs/signpost-big.ts +11 -0
- package/src/icons/glyphs/signpost.ts +15 -0
- package/src/icons/glyphs/siren.ts +15 -0
- package/src/icons/glyphs/skip-back.ts +14 -0
- package/src/icons/glyphs/skip-forward.ts +12 -0
- package/src/icons/glyphs/skull.ts +16 -0
- package/src/icons/glyphs/slash.ts +6 -0
- package/src/icons/glyphs/slice.ts +13 -0
- package/src/icons/glyphs/sliders-horizontal.ts +16 -0
- package/src/icons/glyphs/sliders-vertical.ts +16 -0
- package/src/icons/glyphs/smartphone-charging.ts +9 -0
- package/src/icons/glyphs/smartphone-nfc.ts +11 -0
- package/src/icons/glyphs/smartphone.ts +9 -0
- package/src/icons/glyphs/snail.ts +12 -0
- package/src/icons/glyphs/snowflake.ts +19 -0
- package/src/icons/glyphs/soap-dispenser-droplet.ts +16 -0
- package/src/icons/glyphs/sofa.ts +17 -0
- package/src/icons/glyphs/solar-panel.ts +19 -0
- package/src/icons/glyphs/soup.ts +13 -0
- package/src/icons/glyphs/space.ts +6 -0
- package/src/icons/glyphs/spade.ts +14 -0
- package/src/icons/glyphs/sparkle.ts +13 -0
- package/src/icons/glyphs/sparkles.ts +16 -0
- package/src/icons/glyphs/speaker.ts +11 -0
- package/src/icons/glyphs/speech.ts +15 -0
- package/src/icons/glyphs/spell-check-2.ts +15 -0
- package/src/icons/glyphs/spell-check.ts +10 -0
- package/src/icons/glyphs/spline-pointer.ts +16 -0
- package/src/icons/glyphs/spline.ts +10 -0
- package/src/icons/glyphs/split.ts +11 -0
- package/src/icons/glyphs/spool.ts +19 -0
- package/src/icons/glyphs/sport-shoe.ts +15 -0
- package/src/icons/glyphs/spotlight.ts +17 -0
- package/src/icons/glyphs/spray-can.ts +17 -0
- package/src/icons/glyphs/sprout.ts +15 -0
- package/src/icons/glyphs/square-activity.ts +9 -0
- package/src/icons/glyphs/square-arrow-down-left.ts +10 -0
- package/src/icons/glyphs/square-arrow-down-right.ts +10 -0
- package/src/icons/glyphs/square-arrow-down.ts +10 -0
- package/src/icons/glyphs/square-arrow-left.ts +10 -0
- package/src/icons/glyphs/square-arrow-out-down-left.ts +10 -0
- package/src/icons/glyphs/square-arrow-out-down-right.ts +10 -0
- package/src/icons/glyphs/square-arrow-out-up-left.ts +10 -0
- package/src/icons/glyphs/square-arrow-out-up-right.ts +10 -0
- package/src/icons/glyphs/square-arrow-right-enter.ts +10 -0
- package/src/icons/glyphs/square-arrow-right-exit.ts +13 -0
- package/src/icons/glyphs/square-arrow-right.ts +10 -0
- package/src/icons/glyphs/square-arrow-up-left.ts +10 -0
- package/src/icons/glyphs/square-arrow-up-right.ts +10 -0
- package/src/icons/glyphs/square-arrow-up.ts +10 -0
- package/src/icons/glyphs/square-asterisk.ts +11 -0
- package/src/icons/glyphs/square-bottom-dashed-scissors.ts +15 -0
- package/src/icons/glyphs/square-centerline-dashed-horizontal.ts +13 -0
- package/src/icons/glyphs/square-centerline-dashed-vertical.ts +13 -0
- package/src/icons/glyphs/square-chart-gantt.ts +11 -0
- package/src/icons/glyphs/square-check-big.ts +9 -0
- package/src/icons/glyphs/square-check.ts +9 -0
- package/src/icons/glyphs/square-chevron-down.ts +9 -0
- package/src/icons/glyphs/square-chevron-left.ts +9 -0
- package/src/icons/glyphs/square-chevron-right.ts +9 -0
- package/src/icons/glyphs/square-chevron-up.ts +9 -0
- package/src/icons/glyphs/square-code.ts +10 -0
- package/src/icons/glyphs/square-dashed-bottom-code.ts +12 -0
- package/src/icons/glyphs/square-dashed-bottom.ts +10 -0
- package/src/icons/glyphs/square-dashed-kanban.ts +22 -0
- package/src/icons/glyphs/square-dashed-mouse-pointer.ts +22 -0
- package/src/icons/glyphs/square-dashed-text.ts +22 -0
- package/src/icons/glyphs/square-dashed-top-solid.ts +16 -0
- package/src/icons/glyphs/square-dashed.ts +19 -0
- package/src/icons/glyphs/square-divide.ts +11 -0
- package/src/icons/glyphs/square-dot.ts +9 -0
- package/src/icons/glyphs/square-equal.ts +10 -0
- package/src/icons/glyphs/square-function.ts +10 -0
- package/src/icons/glyphs/square-kanban.ts +11 -0
- package/src/icons/glyphs/square-library.ts +11 -0
- package/src/icons/glyphs/square-m.ts +12 -0
- package/src/icons/glyphs/square-menu.ts +11 -0
- package/src/icons/glyphs/square-minus.ts +9 -0
- package/src/icons/glyphs/square-mouse-pointer.ts +14 -0
- package/src/icons/glyphs/square-off.ts +10 -0
- package/src/icons/glyphs/square-parking-off.ts +12 -0
- package/src/icons/glyphs/square-parking.ts +9 -0
- package/src/icons/glyphs/square-pause.ts +10 -0
- package/src/icons/glyphs/square-pen.ts +14 -0
- package/src/icons/glyphs/square-percent.ts +11 -0
- package/src/icons/glyphs/square-pi.ts +11 -0
- package/src/icons/glyphs/square-pilcrow.ts +11 -0
- package/src/icons/glyphs/square-play.ts +14 -0
- package/src/icons/glyphs/square-plus.ts +10 -0
- package/src/icons/glyphs/square-power.ts +10 -0
- package/src/icons/glyphs/square-radical.ts +9 -0
- package/src/icons/glyphs/square-round-corner.ts +9 -0
- package/src/icons/glyphs/square-scissors.ts +13 -0
- package/src/icons/glyphs/square-sigma.ts +9 -0
- package/src/icons/glyphs/square-slash.ts +9 -0
- package/src/icons/glyphs/square-split-horizontal.ts +10 -0
- package/src/icons/glyphs/square-split-vertical.ts +10 -0
- package/src/icons/glyphs/square-square.ts +9 -0
- package/src/icons/glyphs/square-stack.ts +10 -0
- package/src/icons/glyphs/square-star.ts +14 -0
- package/src/icons/glyphs/square-stop.ts +9 -0
- package/src/icons/glyphs/square-terminal.ts +10 -0
- package/src/icons/glyphs/square-user-round.ts +10 -0
- package/src/icons/glyphs/square-user.ts +10 -0
- package/src/icons/glyphs/square-x.ts +10 -0
- package/src/icons/glyphs/square.ts +8 -0
- package/src/icons/glyphs/squares-exclude.ts +19 -0
- package/src/icons/glyphs/squares-intersect.ts +18 -0
- package/src/icons/glyphs/squares-subtract.ts +18 -0
- package/src/icons/glyphs/squares-unite.ts +13 -0
- package/src/icons/glyphs/squircle-dashed.ts +15 -0
- package/src/icons/glyphs/squircle.ts +8 -0
- package/src/icons/glyphs/squirrel.ts +16 -0
- package/src/icons/glyphs/stamp.ts +15 -0
- package/src/icons/glyphs/star-check.ts +14 -0
- package/src/icons/glyphs/star-half.ts +13 -0
- package/src/icons/glyphs/star-minus.ts +14 -0
- package/src/icons/glyphs/star-off.ts +20 -0
- package/src/icons/glyphs/star-plus.ts +15 -0
- package/src/icons/glyphs/star-x.ts +15 -0
- package/src/icons/glyphs/star.ts +13 -0
- package/src/icons/glyphs/step-back.ts +14 -0
- package/src/icons/glyphs/step-forward.ts +12 -0
- package/src/icons/glyphs/stethoscope.ts +12 -0
- package/src/icons/glyphs/sticker.ts +17 -0
- package/src/icons/glyphs/sticky-note-check.ts +15 -0
- package/src/icons/glyphs/sticky-note-minus.ts +15 -0
- package/src/icons/glyphs/sticky-note-off.ts +11 -0
- package/src/icons/glyphs/sticky-note-plus.ts +16 -0
- package/src/icons/glyphs/sticky-note-x.ts +16 -0
- package/src/icons/glyphs/sticky-note.ts +14 -0
- package/src/icons/glyphs/sticky-notes.ts +21 -0
- package/src/icons/glyphs/stone.ts +15 -0
- package/src/icons/glyphs/store.ts +15 -0
- package/src/icons/glyphs/stretch-horizontal.ts +9 -0
- package/src/icons/glyphs/stretch-vertical.ts +9 -0
- package/src/icons/glyphs/strikethrough.ts +10 -0
- package/src/icons/glyphs/subscript.ts +15 -0
- package/src/icons/glyphs/summary.ts +12 -0
- package/src/icons/glyphs/sun-dim.ts +16 -0
- package/src/icons/glyphs/sun-medium.ts +16 -0
- package/src/icons/glyphs/sun-moon.ts +17 -0
- package/src/icons/glyphs/sun-snow.ts +18 -0
- package/src/icons/glyphs/sun.ts +16 -0
- package/src/icons/glyphs/sunrise.ts +15 -0
- package/src/icons/glyphs/sunset.ts +15 -0
- package/src/icons/glyphs/superscript.ts +15 -0
- package/src/icons/glyphs/swatch-book.ts +14 -0
- package/src/icons/glyphs/swiss-franc.ts +10 -0
- package/src/icons/glyphs/switch-camera.ts +12 -0
- package/src/icons/glyphs/sword.ts +11 -0
- package/src/icons/glyphs/swords.ts +15 -0
- package/src/icons/glyphs/syringe.ts +13 -0
- package/src/icons/glyphs/table-2.ts +13 -0
- package/src/icons/glyphs/table-cells-merge.ts +12 -0
- package/src/icons/glyphs/table-cells-split.ts +11 -0
- package/src/icons/glyphs/table-columns-split.ts +18 -0
- package/src/icons/glyphs/table-of-contents.ts +13 -0
- package/src/icons/glyphs/table-properties.ts +11 -0
- package/src/icons/glyphs/table-rows-split.ts +18 -0
- package/src/icons/glyphs/table.ts +11 -0
- package/src/icons/glyphs/tablet-smartphone.ts +10 -0
- package/src/icons/glyphs/tablet.ts +9 -0
- package/src/icons/glyphs/tablets.ts +11 -0
- package/src/icons/glyphs/tag-plus.ts +16 -0
- package/src/icons/glyphs/tag-x.ts +16 -0
- package/src/icons/glyphs/tag.ts +14 -0
- package/src/icons/glyphs/tags.ts +15 -0
- package/src/icons/glyphs/tally-1.ts +6 -0
- package/src/icons/glyphs/tally-2.ts +9 -0
- package/src/icons/glyphs/tally-3.ts +10 -0
- package/src/icons/glyphs/tally-4.ts +11 -0
- package/src/icons/glyphs/tally-5.ts +12 -0
- package/src/icons/glyphs/tangent.ts +11 -0
- package/src/icons/glyphs/target.ts +10 -0
- package/src/icons/glyphs/telescope.ts +24 -0
- package/src/icons/glyphs/tent-tree.ts +14 -0
- package/src/icons/glyphs/tent.ts +11 -0
- package/src/icons/glyphs/terminal.ts +9 -0
- package/src/icons/glyphs/test-tube-diagonal.ts +10 -0
- package/src/icons/glyphs/test-tube.ts +10 -0
- package/src/icons/glyphs/test-tubes.ts +13 -0
- package/src/icons/glyphs/text-align-center.ts +10 -0
- package/src/icons/glyphs/text-align-end.ts +10 -0
- package/src/icons/glyphs/text-align-justify.ts +10 -0
- package/src/icons/glyphs/text-align-start.ts +10 -0
- package/src/icons/glyphs/text-cursor-input.ts +12 -0
- package/src/icons/glyphs/text-cursor.ts +10 -0
- package/src/icons/glyphs/text-initial.ts +12 -0
- package/src/icons/glyphs/text-quote.ts +11 -0
- package/src/icons/glyphs/text-search.ts +12 -0
- package/src/icons/glyphs/text-wrap.ts +11 -0
- package/src/icons/glyphs/theater.ts +16 -0
- package/src/icons/glyphs/thermometer-snowflake.ts +15 -0
- package/src/icons/glyphs/thermometer-sun.ts +13 -0
- package/src/icons/glyphs/thermometer.ts +8 -0
- package/src/icons/glyphs/thumbs-down.ts +14 -0
- package/src/icons/glyphs/thumbs-up.ts +14 -0
- package/src/icons/glyphs/ticket-check.ts +14 -0
- package/src/icons/glyphs/ticket-minus.ts +14 -0
- package/src/icons/glyphs/ticket-percent.ts +16 -0
- package/src/icons/glyphs/ticket-plus.ts +15 -0
- package/src/icons/glyphs/ticket-slash.ts +14 -0
- package/src/icons/glyphs/ticket-x.ts +15 -0
- package/src/icons/glyphs/ticket.ts +16 -0
- package/src/icons/glyphs/tickets-plane.ts +14 -0
- package/src/icons/glyphs/tickets.ts +12 -0
- package/src/icons/glyphs/timeline.ts +30 -0
- package/src/icons/glyphs/timer-off.ts +12 -0
- package/src/icons/glyphs/timer-reset.ts +11 -0
- package/src/icons/glyphs/timer.ts +10 -0
- package/src/icons/glyphs/toggle-left.ts +9 -0
- package/src/icons/glyphs/toggle-right.ts +9 -0
- package/src/icons/glyphs/toilet.ts +14 -0
- package/src/icons/glyphs/tool-case.ts +21 -0
- package/src/icons/glyphs/toolbox.ts +17 -0
- package/src/icons/glyphs/tornado.ts +12 -0
- package/src/icons/glyphs/torus.ts +9 -0
- package/src/icons/glyphs/touchpad-off.ts +13 -0
- package/src/icons/glyphs/touchpad.ts +10 -0
- package/src/icons/glyphs/towel-rack.ts +15 -0
- package/src/icons/glyphs/tower-control.ts +14 -0
- package/src/icons/glyphs/toy-brick.ts +10 -0
- package/src/icons/glyphs/tractor.ts +16 -0
- package/src/icons/glyphs/traffic-cone.ts +16 -0
- package/src/icons/glyphs/train-front-tunnel.ts +14 -0
- package/src/icons/glyphs/train-front.ts +13 -0
- package/src/icons/glyphs/train-track.ts +14 -0
- package/src/icons/glyphs/tram-front.ts +14 -0
- package/src/icons/glyphs/transgender.ts +15 -0
- package/src/icons/glyphs/trash-2.ts +12 -0
- package/src/icons/glyphs/trash.ts +10 -0
- package/src/icons/glyphs/tree-deciduous.ts +14 -0
- package/src/icons/glyphs/tree-palm.ts +16 -0
- package/src/icons/glyphs/tree-pine.ts +14 -0
- package/src/icons/glyphs/trees.ts +16 -0
- package/src/icons/glyphs/trending-down.ts +9 -0
- package/src/icons/glyphs/trending-up-down.ts +11 -0
- package/src/icons/glyphs/trending-up.ts +9 -0
- package/src/icons/glyphs/triangle-alert.ts +10 -0
- package/src/icons/glyphs/triangle-dashed.ts +16 -0
- package/src/icons/glyphs/triangle-right.ts +8 -0
- package/src/icons/glyphs/triangle.ts +8 -0
- package/src/icons/glyphs/trophy.ts +13 -0
- package/src/icons/glyphs/truck-electric.ts +14 -0
- package/src/icons/glyphs/truck.ts +15 -0
- package/src/icons/glyphs/turkish-lira.ts +10 -0
- package/src/icons/glyphs/turntable.ts +11 -0
- package/src/icons/glyphs/turtle.ts +16 -0
- package/src/icons/glyphs/tv-minimal-play.ts +15 -0
- package/src/icons/glyphs/tv-minimal.ts +9 -0
- package/src/icons/glyphs/tv.ts +9 -0
- package/src/icons/glyphs/type-outline.ts +13 -0
- package/src/icons/glyphs/type.ts +10 -0
- package/src/icons/glyphs/umbrella-off.ts +12 -0
- package/src/icons/glyphs/umbrella.ts +10 -0
- package/src/icons/glyphs/underline.ts +9 -0
- package/src/icons/glyphs/undo-2.ts +9 -0
- package/src/icons/glyphs/undo-dot.ts +10 -0
- package/src/icons/glyphs/undo.ts +9 -0
- package/src/icons/glyphs/unfold-horizontal.ts +15 -0
- package/src/icons/glyphs/unfold-vertical.ts +15 -0
- package/src/icons/glyphs/ungroup.ts +9 -0
- package/src/icons/glyphs/university.ts +19 -0
- package/src/icons/glyphs/unlink-2.ts +8 -0
- package/src/icons/glyphs/unlink.ts +21 -0
- package/src/icons/glyphs/unplug.ts +13 -0
- package/src/icons/glyphs/upload.ts +10 -0
- package/src/icons/glyphs/usb.ts +14 -0
- package/src/icons/glyphs/user-check.ts +10 -0
- package/src/icons/glyphs/user-cog.ts +18 -0
- package/src/icons/glyphs/user-key.ts +12 -0
- package/src/icons/glyphs/user-lock.ts +11 -0
- package/src/icons/glyphs/user-minus.ts +10 -0
- package/src/icons/glyphs/user-pen.ts +15 -0
- package/src/icons/glyphs/user-plus.ts +11 -0
- package/src/icons/glyphs/user-round-arrow-left.ts +11 -0
- package/src/icons/glyphs/user-round-check.ts +10 -0
- package/src/icons/glyphs/user-round-cog.ts +18 -0
- package/src/icons/glyphs/user-round-key.ts +12 -0
- package/src/icons/glyphs/user-round-minus.ts +10 -0
- package/src/icons/glyphs/user-round-pen.ts +15 -0
- package/src/icons/glyphs/user-round-plus.ts +11 -0
- package/src/icons/glyphs/user-round-search.ts +11 -0
- package/src/icons/glyphs/user-round-x.ts +11 -0
- package/src/icons/glyphs/user-round.ts +9 -0
- package/src/icons/glyphs/user-search.ts +11 -0
- package/src/icons/glyphs/user-shield.ts +15 -0
- package/src/icons/glyphs/user-star.ts +15 -0
- package/src/icons/glyphs/user-x.ts +11 -0
- package/src/icons/glyphs/user.ts +9 -0
- package/src/icons/glyphs/users-round.ts +10 -0
- package/src/icons/glyphs/users.ts +11 -0
- package/src/icons/glyphs/utensils-crossed.ts +11 -0
- package/src/icons/glyphs/utensils.ts +10 -0
- package/src/icons/glyphs/utility-pole.ts +14 -0
- package/src/icons/glyphs/van.ts +17 -0
- package/src/icons/glyphs/variable.ts +11 -0
- package/src/icons/glyphs/vault.ts +17 -0
- package/src/icons/glyphs/vector-square.ts +15 -0
- package/src/icons/glyphs/vegan.ts +10 -0
- package/src/icons/glyphs/venetian-mask.ts +15 -0
- package/src/icons/glyphs/venus-and-mars.ts +12 -0
- package/src/icons/glyphs/venus.ts +10 -0
- package/src/icons/glyphs/vibrate-off.ts +12 -0
- package/src/icons/glyphs/vibrate.ts +10 -0
- package/src/icons/glyphs/video-off.ts +10 -0
- package/src/icons/glyphs/video.ts +9 -0
- package/src/icons/glyphs/videotape.ts +12 -0
- package/src/icons/glyphs/view.ts +16 -0
- package/src/icons/glyphs/voicemail.ts +10 -0
- package/src/icons/glyphs/volleyball.ts +13 -0
- package/src/icons/glyphs/volume-1.ts +14 -0
- package/src/icons/glyphs/volume-2.ts +15 -0
- package/src/icons/glyphs/volume-off.ts +17 -0
- package/src/icons/glyphs/volume-x.ts +15 -0
- package/src/icons/glyphs/volume.ts +13 -0
- package/src/icons/glyphs/vote.ts +10 -0
- package/src/icons/glyphs/wallet-cards.ts +10 -0
- package/src/icons/glyphs/wallet-minimal.ts +9 -0
- package/src/icons/glyphs/wallet.ts +14 -0
- package/src/icons/glyphs/wallpaper.ts +12 -0
- package/src/icons/glyphs/wand-sparkles.ts +20 -0
- package/src/icons/glyphs/wand.ts +16 -0
- package/src/icons/glyphs/warehouse.ts +16 -0
- package/src/icons/glyphs/washing-machine.ts +12 -0
- package/src/icons/glyphs/watch.ts +11 -0
- package/src/icons/glyphs/waves-arrow-down.ts +21 -0
- package/src/icons/glyphs/waves-arrow-up.ts +21 -0
- package/src/icons/glyphs/waves-horizontal.ts +10 -0
- package/src/icons/glyphs/waves-ladder.ts +17 -0
- package/src/icons/glyphs/waves-vertical.ts +10 -0
- package/src/icons/glyphs/waypoints.ts +14 -0
- package/src/icons/glyphs/webcam-off.ts +14 -0
- package/src/icons/glyphs/webcam.ts +11 -0
- package/src/icons/glyphs/webhook-off.ts +14 -0
- package/src/icons/glyphs/webhook.ts +10 -0
- package/src/icons/glyphs/weight-tilde.ts +15 -0
- package/src/icons/glyphs/weight.ts +14 -0
- package/src/icons/glyphs/wheat-off.ts +25 -0
- package/src/icons/glyphs/wheat.ts +39 -0
- package/src/icons/glyphs/whole-word.ts +12 -0
- package/src/icons/glyphs/wifi-cog.ts +19 -0
- package/src/icons/glyphs/wifi-high.ts +10 -0
- package/src/icons/glyphs/wifi-low.ts +9 -0
- package/src/icons/glyphs/wifi-off.ts +14 -0
- package/src/icons/glyphs/wifi-pen.ts +16 -0
- package/src/icons/glyphs/wifi-sync.ts +14 -0
- package/src/icons/glyphs/wifi-zero.ts +6 -0
- package/src/icons/glyphs/wifi.ts +11 -0
- package/src/icons/glyphs/wind-arrow-down.ts +11 -0
- package/src/icons/glyphs/wind.ts +10 -0
- package/src/icons/glyphs/wine-off.ts +17 -0
- package/src/icons/glyphs/wine.ts +11 -0
- package/src/icons/glyphs/workflow.ts +10 -0
- package/src/icons/glyphs/worm.ts +15 -0
- package/src/icons/glyphs/wrench-off.ts +15 -0
- package/src/icons/glyphs/wrench.ts +13 -0
- package/src/icons/glyphs/x-line-top.ts +10 -0
- package/src/icons/glyphs/x.ts +9 -0
- package/src/icons/glyphs/zap-off.ts +16 -0
- package/src/icons/glyphs/zap.ts +13 -0
- package/src/icons/glyphs/zodiac-aquarius.ts +19 -0
- package/src/icons/glyphs/zodiac-aries.ts +9 -0
- package/src/icons/glyphs/zodiac-cancer.ts +11 -0
- package/src/icons/glyphs/zodiac-capricorn.ts +10 -0
- package/src/icons/glyphs/zodiac-gemini.ts +11 -0
- package/src/icons/glyphs/zodiac-leo.ts +9 -0
- package/src/icons/glyphs/zodiac-libra.ts +12 -0
- package/src/icons/glyphs/zodiac-ophiuchus.ts +9 -0
- package/src/icons/glyphs/zodiac-pisces.ts +10 -0
- package/src/icons/glyphs/zodiac-sagittarius.ts +10 -0
- package/src/icons/glyphs/zodiac-scorpio.ts +11 -0
- package/src/icons/glyphs/zodiac-taurus.ts +9 -0
- package/src/icons/glyphs/zodiac-virgo.ts +11 -0
- package/src/icons/glyphs/zoom-in.ts +11 -0
- package/src/icons/glyphs/zoom-out.ts +10 -0
- package/src/index.ts +54 -2
- package/src/jsx-probe.ts +125 -0
- package/src/roving.ts +65 -0
- package/src/theme/brand.ts +16 -1
- package/src/theme/context.ts +47 -7
- package/src/theme/inert-runtime.ts +48 -0
- package/src/theme/provider.tsx +7 -1
- package/src/theme/solid-adapter.ts +18 -4
- package/src/tokens/reset.scss +7 -0
package/CATALOG.md
CHANGED
|
@@ -4,7 +4,7 @@
|
|
|
4
4
|
|
|
5
5
|
Every component and every token, projected from source. Import all of it from `@ultimat3/ui`.
|
|
6
6
|
|
|
7
|
-
|
|
7
|
+
52 components: `Accordion` · `Alert` · `AppShell` · `Avatar` · `Badge` · `Breadcrumb` · `Button` · `Card` · `Checkbox` · `Combobox` · `Container` · `DataTable` · `DateTime` · `Dialog` · `Divider` · `Drawer` · `Dropzone` · `EmptyState` · `ErrorState` · `Field` · `FileInput` · `Form` · `Grid` · `Icon` · `IconButton` · `Image` · `InfiniteScroll` · `Input` · `Link` · `LocaleSwitcher` · `Menu` · `Money` · `PageHeader` · `Pagination` · `Popover` · `Radio` · `RelativeTime` · `Section` · `Select` · `Skeleton` · `Spinner` · `Stack` · `Switch` · `Table` · `Tabs` · `Text` · `Textarea` · `ThemeToggle` · `ToastRegion` · `Toast` · `Toolbar` · `Tooltip`
|
|
8
8
|
|
|
9
9
|
## Vocabulary
|
|
10
10
|
|
|
@@ -19,6 +19,18 @@ One size scale, one tone scale, one variant scale — shared by every component
|
|
|
19
19
|
|
|
20
20
|
## Components
|
|
21
21
|
|
|
22
|
+
### Accordion
|
|
23
|
+
|
|
24
|
+
Expandable sections built on `<details>`/`<summary>`: open/close, keyboard, focus and `aria-expanded` are the browser's, so the component works with JavaScript disabled and there is no open-state to hydrate. `exclusive` is the native `name` group, not a listener.
|
|
25
|
+
|
|
26
|
+
| Prop | Type | Required | Notes |
|
|
27
|
+
|---|---|---|---|
|
|
28
|
+
| `items` | `readonly AccordionItem[]` | yes | |
|
|
29
|
+
| `exclusive` | `boolean` | — | One section open at a time, through the native `<details name>` group. |
|
|
30
|
+
| `level` | `HeadingLevel` | — | Wraps each title in a heading of this level, putting the sections in the page outline. Left out, a title is plain text inside the disclosure button — which is what a screen reader announces either way. |
|
|
31
|
+
| `onToggle` | `((id: string, open: boolean) => void)` | — | Fires on every open and close, once the browser has already applied it. |
|
|
32
|
+
| `class` | `string` | — | |
|
|
33
|
+
|
|
22
34
|
### Alert
|
|
23
35
|
|
|
24
36
|
Inline message bound to the page, not the viewport. `danger`/`warning` use `role="alert"` (assertive); the rest use `role="status"`, so an informational banner never interrupts what a screen-reader user is doing.
|
|
@@ -134,7 +146,7 @@ Native checkbox with a token-drawn indicator. The label element wraps the input,
|
|
|
134
146
|
| `name` | `string` | — | |
|
|
135
147
|
| `value` | `string` | — | |
|
|
136
148
|
| `checked` | `boolean` | — | |
|
|
137
|
-
| `indeterminate` | `boolean` | — | Tri-state for "some children selected".
|
|
149
|
+
| `indeterminate` | `boolean` | — | Tri-state for "some children selected". The ONLY thing mirrored to `aria-checked`. |
|
|
138
150
|
| `disabled` | `boolean` | — | |
|
|
139
151
|
| `required` | `boolean` | — | |
|
|
140
152
|
| `description` | `string` | — | |
|
|
@@ -143,6 +155,28 @@ Native checkbox with a token-drawn indicator. The label element wraps the input,
|
|
|
143
155
|
| `aria-invalid` | `boolean` | — | |
|
|
144
156
|
| `onChange` | `JSX.EventHandlerUnion<HTMLInputElement, Event>` | — | |
|
|
145
157
|
|
|
158
|
+
### Combobox
|
|
159
|
+
|
|
160
|
+
A searchable text field with suggestions: one `<input list>` plus a `<datalist>`, which is a real combobox in every engine — typing, filtering, keyboard and mobile are the platform's, and the field still works with scripting off. `onFilter` is the debounced enhancement on top.
|
|
161
|
+
|
|
162
|
+
| Prop | Type | Required | Notes |
|
|
163
|
+
|---|---|---|---|
|
|
164
|
+
| `options` | `readonly ComboboxOption[]` | yes | |
|
|
165
|
+
| `value` | `string` | — | The current query. Suggestions are filtered to it before they are rendered. |
|
|
166
|
+
| `onFilter` | `((query: string) => void)` | — | Fires `debounceMs` after typing stops, and immediately when a suggestion is picked. Left out, the field is a plain filtered datalist — still correct, just not live. |
|
|
167
|
+
| `debounceMs` | `number` | — | Debounce window in ms. Read once, when the field mounts. |
|
|
168
|
+
| `limit` | `number` | — | Cap on rendered suggestions. |
|
|
169
|
+
| `id` | `string` | — | |
|
|
170
|
+
| `name` | `string` | — | |
|
|
171
|
+
| `placeholder` | `string` | — | Already-translated placeholder. |
|
|
172
|
+
| `size` | `Size` | — | |
|
|
173
|
+
| `required` | `boolean` | — | |
|
|
174
|
+
| `disabled` | `boolean` | — | |
|
|
175
|
+
| `class` | `string` | — | |
|
|
176
|
+
| `aria-label` | `string` | — | |
|
|
177
|
+
| `aria-describedby` | `string` | — | |
|
|
178
|
+
| `aria-invalid` | `boolean` | — | |
|
|
179
|
+
|
|
146
180
|
### Container
|
|
147
181
|
|
|
148
182
|
Centred measure with a gutter. `margin-inline: auto` and `min()` mean one declaration covers every viewport and both writing directions.
|
|
@@ -196,7 +230,7 @@ Renders <time datetime="<ISO instant>"> with text formatted in the context time
|
|
|
196
230
|
|
|
197
231
|
### Dialog
|
|
198
232
|
|
|
199
|
-
Modal built on native <dialog>: the platform gives us the top layer, the backdrop, inert background content, and Escape-to-close for free. We add the labelled heading
|
|
233
|
+
Modal built on native <dialog>: the platform gives us the top layer, the backdrop, inert background content, and Escape-to-close for free. We add the labelled heading and the close affordance. Body scroll locking is one CSS rule in `tokens/reset.scss` (`html:has(dialog:modal)`) rather than anything here, so it covers Drawer too and cannot leak when a close path throws.
|
|
200
234
|
|
|
201
235
|
| Prop | Type | Required | Notes |
|
|
202
236
|
|---|---|---|---|
|
|
@@ -234,6 +268,29 @@ Edge-anchored panel, also a native <dialog> so it inherits the top layer and ine
|
|
|
234
268
|
| `footer` | `JSX.Element` | — | |
|
|
235
269
|
| `class` | `string` | — | |
|
|
236
270
|
|
|
271
|
+
### Dropzone
|
|
272
|
+
|
|
273
|
+
A drop surface that is a real `<label>` around a real, visually-hidden `<input type="file">`. That shape is what makes it usable without a mouse: click, Enter and Space already open the picker, focus already lands somewhere, and the accessible name is the instruction the label renders. A `<div onClick>` with `tabindex` would reimplement all four and get one of them wrong. Dragging is the enhancement on top, never the only way in.
|
|
274
|
+
|
|
275
|
+
| Prop | Type | Required | Notes |
|
|
276
|
+
|---|---|---|---|
|
|
277
|
+
| `label` | `string` | yes | Already-translated instruction. Required — it is the control's accessible name. |
|
|
278
|
+
| `hint` | `string` | — | Already-translated secondary line: the accepted types, the size ceiling. |
|
|
279
|
+
| `id` | `string` | — | |
|
|
280
|
+
| `name` | `string` | — | |
|
|
281
|
+
| `accept` | `string` | — | The `accept` attribute, and the same list a dropped file is partitioned against. |
|
|
282
|
+
| `multiple` | `boolean` | — | |
|
|
283
|
+
| `required` | `boolean` | — | |
|
|
284
|
+
| `disabled` | `boolean` | — | |
|
|
285
|
+
| `maxBytes` | `number` | — | Client-side ceiling. The server enforces its own; this only spares a doomed transfer. |
|
|
286
|
+
| `maxFiles` | `number` | — | |
|
|
287
|
+
| `progress` | `number` | — | 0..1 while an upload runs. Absent renders no bar at all — never one stuck at zero. |
|
|
288
|
+
| `progressLabel` | `string` | — | Already-translated accessible name for the progress bar. |
|
|
289
|
+
| `class` | `string` | — | |
|
|
290
|
+
| `aria-describedby` | `string` | — | |
|
|
291
|
+
| `aria-invalid` | `boolean` | — | |
|
|
292
|
+
| `onSelect` | `(selection: FileSelection<File>) => void` | yes | Every file offered, partitioned into accepted and refused-with-a-reason. |
|
|
293
|
+
|
|
237
294
|
### EmptyState
|
|
238
295
|
|
|
239
296
|
The "nothing here yet" surface. Title and description arrive as already translated strings; the action slot takes a Button so there is one CTA shape.
|
|
@@ -272,9 +329,33 @@ Label + hint + error, wired for a11y. Field owns the ids and hands them to the c
|
|
|
272
329
|
| `markOptional` | `boolean` | — | Appends a translated "(optional)" marker instead of marking required. |
|
|
273
330
|
| `class` | `string` | — | |
|
|
274
331
|
|
|
332
|
+
### FileInput
|
|
333
|
+
|
|
334
|
+
A file picker that keeps the platform control and dresses it. The native button and the browser's own "no file chosen" summary are already localised, focusable and keyboard-driven, so replacing them with a div buys nothing and costs an accessible name. What the platform has no opinion about is added here: a determinate progress bar, and a partition of what it refused.
|
|
335
|
+
|
|
336
|
+
| Prop | Type | Required | Notes |
|
|
337
|
+
|---|---|---|---|
|
|
338
|
+
| `id` | `string` | — | |
|
|
339
|
+
| `name` | `string` | — | |
|
|
340
|
+
| `accept` | `string` | — | The `accept` attribute, and the same list the refusal partition is computed against. |
|
|
341
|
+
| `multiple` | `boolean` | — | |
|
|
342
|
+
| `size` | `Size` | — | |
|
|
343
|
+
| `required` | `boolean` | — | |
|
|
344
|
+
| `disabled` | `boolean` | — | |
|
|
345
|
+
| `maxBytes` | `number` | — | Client-side ceiling. The server enforces its own; this only spares a doomed transfer. |
|
|
346
|
+
| `maxFiles` | `number` | — | |
|
|
347
|
+
| `progress` | `number` | — | 0..1 while an upload runs. Absent renders no bar at all — never one stuck at zero. |
|
|
348
|
+
| `progressLabel` | `string` | — | Already-translated accessible name for the progress bar. |
|
|
349
|
+
| `class` | `string` | — | |
|
|
350
|
+
| `aria-label` | `string` | — | |
|
|
351
|
+
| `aria-describedby` | `string` | — | |
|
|
352
|
+
| `aria-invalid` | `boolean` | — | |
|
|
353
|
+
| `onSelect` | `((selection: FileSelection<File>) => void)` | — | Every chosen file, partitioned into accepted and refused-with-a-reason. |
|
|
354
|
+
| `onBlur` | `JSX.EventHandlerUnion<HTMLInputElement, FocusEvent>` | — | |
|
|
355
|
+
|
|
275
356
|
### Form
|
|
276
357
|
|
|
277
|
-
Form shell. Owns the one thing every form needs and always forgets: a top-of-form error summary that is
|
|
358
|
+
Form shell. Owns the one thing every form needs and always forgets: a top-of-form error summary that is announced (the Alert inside it is a live region) and that TAKES focus when an error arrives — the focus move is what makes the summary reachable at all, since its id is internal.
|
|
278
359
|
|
|
279
360
|
| Prop | Type | Required | Notes |
|
|
280
361
|
|---|---|---|---|
|
|
@@ -304,6 +385,17 @@ Grid layout primitive. The default is an intrinsic responsive grid (`auto-fit` +
|
|
|
304
385
|
| `as` | `'div' \| 'ul' \| 'ol' \| 'section'` | — | |
|
|
305
386
|
| `class` | `string` | — | |
|
|
306
387
|
|
|
388
|
+
### Icon
|
|
389
|
+
|
|
390
|
+
Inline SVG from one Lucide glyph. Decorative by default (`aria-hidden`); a `label` promotes it to `role="img"` with a name. Paint is `currentColor` and the box is one `em`, so an icon takes the tone and the type step of whatever it sits inside.
|
|
391
|
+
|
|
392
|
+
| Prop | Type | Required | Notes |
|
|
393
|
+
|---|---|---|---|
|
|
394
|
+
| `glyph` | `IconGlyph` | yes | One glyph module: `import { iconSearch } from '@ultimat3/ui/icons/search'`. |
|
|
395
|
+
| `label` | `string` | — | Already-translated accessible name. Omitted means decorative, and a decorative icon is hidden from assistive tech rather than read as a nameless image. |
|
|
396
|
+
| `size` | `Size` | — | |
|
|
397
|
+
| `class` | `string` | — | |
|
|
398
|
+
|
|
307
399
|
### IconButton
|
|
308
400
|
|
|
309
401
|
A button whose only content is an icon, so `label` is mandatory: it becomes the accessible name and the tooltip. There is no unlabelled icon button.
|
|
@@ -339,6 +431,20 @@ Zero-CLS image primitive: a plain <img>, no JS, no fetch, no client state. The
|
|
|
339
431
|
| `height` | `number` | — | |
|
|
340
432
|
| `class` | `string` | — | |
|
|
341
433
|
|
|
434
|
+
### InfiniteScroll
|
|
435
|
+
|
|
436
|
+
An endless list that degrades to pagination: the foot is always a real `rel="next"` link, so the next page is one navigation away with scripting off. With script, a sentinel below the list asks for that page before the reader reaches it, and the link's click is intercepted.
|
|
437
|
+
|
|
438
|
+
| Prop | Type | Required | Notes |
|
|
439
|
+
|---|---|---|---|
|
|
440
|
+
| `children` | `JSX.Element` | yes | The items rendered so far. This component owns the foot, never the list. |
|
|
441
|
+
| `hasMore` | `boolean` | yes | Another page exists. |
|
|
442
|
+
| `nextHref` | `string` | — | The next page's URL. Required whenever `hasMore` — it is the no-JS path. |
|
|
443
|
+
| `loading` | `boolean` | — | A page is in flight; the control stops inviting a second request. |
|
|
444
|
+
| `onLoadMore` | `(() => void)` | — | The enhancement: called when the sentinel appears, and in place of following the link. |
|
|
445
|
+
| `rootMargin` | `string` | — | How far below the fold loading starts. A CSS length, as IntersectionObserver takes it. |
|
|
446
|
+
| `class` | `string` | — | |
|
|
447
|
+
|
|
342
448
|
### Input
|
|
343
449
|
|
|
344
450
|
Single-line text control. No `type="number"` convenience wrapper: numeric input uses `inputmode` + a text type so locale decimal separators survive.
|
|
@@ -574,7 +680,7 @@ Flex layout primitive. Gap comes from the space scale as a custom property, so t
|
|
|
574
680
|
|
|
575
681
|
### Switch
|
|
576
682
|
|
|
577
|
-
Boolean toggle with immediate effect (as opposed to Checkbox, which is part of a form submit). `role="switch"` on a native checkbox keeps keyboard behaviour.
|
|
683
|
+
Boolean toggle with immediate effect (as opposed to Checkbox, which is part of a form submit). `role="switch"` on a native checkbox keeps keyboard behaviour — and its checked state, which is why nothing here writes `aria-checked`: `role="switch"` maps the host `checked` state on its own, and an attribute mirroring it never updates on the no-JS path, where ARIA would then outrank the truth and announce the switch stuck in whichever position it was rendered in.
|
|
578
684
|
|
|
579
685
|
| Prop | Type | Required | Notes |
|
|
580
686
|
|---|---|---|---|
|
|
@@ -664,18 +770,19 @@ Theme control. `toggle` flips light/dark; `select` also offers "system", which c
|
|
|
664
770
|
|
|
665
771
|
### ToastRegion
|
|
666
772
|
|
|
667
|
-
Transient notification. ToastRegion is the single live region for the app; individual Toasts are its children, so announcements are not duplicated and the region exists before the first message
|
|
773
|
+
Transient notification. ToastRegion is the single live region for the app; individual Toasts are its children, so announcements are not duplicated and the region exists before the first message. That ordering is the whole point: a live region created with its content already in it is not announced by most screen readers, which is why `aria-live` sits on the persistent <ol> here and NOT on the <li> each Toast renders.
|
|
668
774
|
|
|
669
775
|
| Prop | Type | Required | Notes |
|
|
670
776
|
|---|---|---|---|
|
|
671
777
|
| `children` | `JSX.Element` | yes | |
|
|
672
778
|
| `label` | `string` | yes | Already-translated landmark name, e.g. "Notifications". |
|
|
779
|
+
| `politeness` | `Politeness` | — | How the region announces. `polite` waits for a pause and is right for everything an app routinely confirms; `assertive` interrupts whatever the user is being read, so it belongs only to a region that carries errors alone. One region, one politeness — mixing tones inside one list cannot work, because the live semantics belong to the list, not to the message. |
|
|
673
780
|
| `placement` | `'block-end-inline-end' \| 'block-start-inline-end' \| 'block-end-center'` | — | |
|
|
674
781
|
| `class` | `string` | — | |
|
|
675
782
|
|
|
676
783
|
### Toast
|
|
677
784
|
|
|
678
|
-
Transient notification. ToastRegion is the single live region for the app; individual Toasts are its children, so announcements are not duplicated and the region exists before the first message
|
|
785
|
+
Transient notification. ToastRegion is the single live region for the app; individual Toasts are its children, so announcements are not duplicated and the region exists before the first message. That ordering is the whole point: a live region created with its content already in it is not announced by most screen readers, which is why `aria-live` sits on the persistent <ol> here and NOT on the <li> each Toast renders.
|
|
679
786
|
|
|
680
787
|
| Prop | Type | Required | Notes |
|
|
681
788
|
|---|---|---|---|
|
|
@@ -689,7 +796,7 @@ Transient notification. ToastRegion is the single live region for the app; indiv
|
|
|
689
796
|
|
|
690
797
|
### Toolbar
|
|
691
798
|
|
|
692
|
-
The control strip above a table or a list: filters and search at the inline start, actions at the inline end. `role="toolbar"` with the same roving-tabindex helper Tabs uses, so arrow keys move between
|
|
799
|
+
The control strip above a table or a list: filters and search at the inline start, actions at the inline end. `role="toolbar"` with the same roving-tabindex helper Tabs uses, so arrow keys move between the strip's buttons. It is NOT one tab stop: the strip holds arbitrary children it cannot reach into to set an initial `tabindex`, and a search field at the inline start keeps its own arrow keys, so making the strip a single stop would strand every control past it.
|
|
693
800
|
|
|
694
801
|
| Prop | Type | Required | Notes |
|
|
695
802
|
|---|---|---|---|
|
package/CLAUDE.md
ADDED
|
@@ -0,0 +1,77 @@
|
|
|
1
|
+
# @ultimat3/ui — agent notes
|
|
2
|
+
|
|
3
|
+
Tier 5. Imports `@ultimat3/core`, `schema`, `i18n`, `money`, `time`. Never `http`, `action`, `render`, `admin`.
|
|
4
|
+
|
|
5
|
+
## Boundary
|
|
6
|
+
|
|
7
|
+
| Owns | Does not own |
|
|
8
|
+
|---|---|
|
|
9
|
+
| design tokens, theme resolution, Solid primitives, a11y helpers, the Lucide icon wrapper | routing, data fetching, business logic, layout of a specific app, icon **artwork** |
|
|
10
|
+
|
|
11
|
+
## Hard rules
|
|
12
|
+
|
|
13
|
+
- **SCSS modules only.** `Foo.tsx` + `Foo.module.scss`, always paired. No Tailwind, no CSS-in-JS, no inline `style` except CSS custom properties.
|
|
14
|
+
- **No raw colours.** Only `t.role('<role>')` / `var(--color-*)`. Canonical roles live in `src/tokens/_colors.scss`; `tokens.ts` mirrors them and `tokens.test.ts` fails on drift.
|
|
15
|
+
- **Logical properties only.** `margin-inline`, `inset-inline-start`, `text-align: start`. A `left`/`right` in a stylesheet is a bug.
|
|
16
|
+
- **solid-js is a type-only import.** All reactive access goes through `src/theme/solid-adapter.ts`. Never `import { createSignal } from 'solid-js'`.
|
|
17
|
+
- **`solid()` always answers off-DOM.** No registered runtime and no DOM is a *server render*, and it gets `INERT_SOLID_RUNTIME` (`src/theme/inert-runtime.ts`) — signals hold, memos recompute on read, effects never run, `useContext` returns the default. No DOM means no reactivity to lose; a **DOM** with no runtime is still `X_UI_RUNTIME_MISSING`, because that one is the theme toggle that does nothing. Never widen this to "no runtime, never throw": that is the silent degradation the split exists to prevent.
|
|
18
|
+
- **`useUi()` reads the request on the server**, via `ambientUiContext()` — `currentLocale()`, `currentTimeZone()`, `useI18n()`. Those two read **core's own `Ctx.locale` / `Ctx.tz`**, which `@ultimat3/http`'s `locale` stage writes once per request; `@ultimat3/i18n` and `@ultimat3/time` publish no field of their own. Never add a second ambient store here or there — `time` kept a `ctx['timeZone']` nothing wrote until 2026-08, and the whole cost was invisible: every server-rendered date formatted in UTC under a doc comment saying it did not. `theme`/`currency` deliberately have no ambient source at all.
|
|
19
|
+
- **`UiProvider` is client-only and throws on the server** (`providerNeedsRuntimeError`, the same `X_UI_RUNTIME_MISSING`). A Provider in an inert tree reaches no descendant — the tree is built before the renderer walks it, so consumers are walked outside every owner and read the context default even with a real Solid runtime registered. Rendering the children anyway would drop its locale, zone, currency and translator silently. Making it work needs the *renderer* to scope a context around the walk; until then it refuses.
|
|
20
|
+
- **A component may call `solid()` freely.** Its effects must stay DOM-only work — they simply never run on the server.
|
|
21
|
+
- **No `{...rest}` prop spreading.** Splitting props reactively needs solid's `splitProps` (a value import), so components declare explicit props and read `props.x` inside JSX.
|
|
22
|
+
- **No hardcoded strings.** Label props, or `useUi().t(UI_KEYS.x)`. New built-in strings go in `src/i18n-keys.ts`.
|
|
23
|
+
- **Page layout is four composites**: `AppShell` (frame + skip link + landmarks), `PageHeader`, `Section`, `Toolbar`. A screen that hand-rolls a header grid is the bug they exist to prevent. `AppShell` holds no state — off-canvas is `Drawer`.
|
|
24
|
+
- **Restyling goes through `defineTheme()`**, never a forked stylesheet and never an SCSS `with ()` override. Its values are validated, not escaped: the output lands in a `<style>` element.
|
|
25
|
+
- **`@include t.tone-classes`** emits the `.tone-*` custom-property blocks. Never hand-write a seventh copy; `$tones` in `_colors.scss` mirrors `TONES` and `variants.test.ts` gates it.
|
|
26
|
+
- **Icons are generated, never authored.** `src/icons/glyphs/*.ts` is one module per Lucide icon, written by `bun run icons` from `lucide-static@LUCIDE_VERSION`. Never hand-edit a glyph, never add a hand-drawn one, never introduce a second icon source. An upstream fix is a version bump plus a re-run. `lucide` itself is NOT a dependency — the data is committed, so the package still installs, typechecks and renders offline with zero runtime deps.
|
|
27
|
+
- **One icon, one module.** The `Icon` component takes a `glyph`, not a name: a `name → glyph` map would be one module holding 1767 icons, and no bundler can split that. Per-icon imports are the whole point (1 icon = 104 B minified, 50 = 8.9 kB).
|
|
28
|
+
- **No client runtime exists yet.** A new interactive component must be correct server-rendered and usable with scripting off — `<details>` for disclosure, `<input list>`+`<datalist>` for suggestions, a real `rel="next"` link for paging — with listeners and observers as additive extras. A component that renders nothing until JS runs does not ship.
|
|
29
|
+
- **`inert-render.test.ts` must not assume which factory its `.tsx` compiled to.** `@ultimat3/render`'s `index.ts` installs a process-global `Bun.plugin` `onLoad` for `/\.tsx$/` at import, and `bun test` is one process — so any file in the run that imports render first makes every ui component after it compile to render's `h` instead of the file's own inert copy. The walker recognises both (`Symbol.for('ultimate.render.jsx')`, off the global registry, never an import), and the first test in the describe asserts a component returned a node it recognises. Without both halves the file silently rendered `"[object Object]"` and 26 assertions were decided by shard packing.
|
|
30
|
+
- **Components are not unit-tested through a renderer.** `.tsx` compiles to `@ultimat3/render`'s `h`, which this package may not import, so every rule lives in a pure module beside the component (`icon-glyph.ts`, `accordion-view.ts`, `combobox-filter.ts`, `infinite-scroll-view.ts`) and *that* is what the tests assert.
|
|
31
|
+
- Formatting logic lives in a pure `*-view.ts` next to the component (`money-view.ts`, `date-time-view.ts`) so it is testable with no renderer. Every other renderer-free core follows the same rule under its own name (`sort-state.ts`, `image-source.ts`) — the `.tsx` holds markup, never a rule.
|
|
32
|
+
- **The rule being pure is not enough — the WIRING has to be tested too.** `createRovingTabindex` was correct and `Menu` handed it `[role="menuitem"]`, so a disabled item made every item after it unreachable and every assertion in the package still passed. `src/jsx-probe.ts` reads the props an element actually carries (a `tabindex`, an `aria-live`, an `onKeyDown`, a `ref`) and `src/fake-dom.ts` gives it a DOM where a disabled control REFUSES focus, exactly as the real one does. Both are test-only and neither is in `index.ts`. `components/interaction.test.ts` is where a keyboard or form-participation claim gets proven; asserting the pure helper alone is how these shipped.
|
|
33
|
+
- **A roving group excludes disabled items from both answers** — the set arrows walk and the one item holding the tab stop (`src/roving.ts`). `focus()` on a disabled control is a no-op, so a disabled item left in the list pins the reducer on its index forever. And a control that answers arrows itself (`handlesOwnArrowKeys`) keeps them: a `Toolbar` exists to hold a search field.
|
|
34
|
+
- **Live semantics belong to the container that outlives the message.** `ToastRegion`'s `<ol>` carries `aria-live`; a `Toast` is a plain `<li>`. A region created with its content already inside it is not announced, and a `role="status"` on the `<li>` also strips its `listitem` semantics.
|
|
35
|
+
- **`aria-checked` never mirrors a native `checked`.** ARIA outranks host state in the accessibility tree, and on the no-JS path this package supports there is nothing to rewrite the attribute after the user ticks the box. `Checkbox` writes only `'mixed'` (an IDL property with no attribute form, so ARIA is the only server-side lever); `Switch` writes none at all, over a `biome-ignore` that says why.
|
|
36
|
+
- **Generated source is a CODE sink.** `build-icons.ts` writes modules every app EXECUTES at import, from data fetched over the network, so an attribute value goes through `JSON.stringify` and never `'${value}'` — and `SAFE_ATTR_VALUE` refuses anything that is not glyph geometry one layer earlier. `iconElements` guards tags and attribute NAMES; it has never guarded a value. Malformed upstream data is `X_UI_INVALID_VALUE`; only the generator's real environment faults (no network, no biome binary) are `X_UI_RUNTIME_MISSING`.
|
|
37
|
+
|
|
38
|
+
## Files
|
|
39
|
+
|
|
40
|
+
| Path | Responsibility |
|
|
41
|
+
|---|---|
|
|
42
|
+
| `src/tokens/*.scss` | canonical token maps + `_mixins.scss` authoring helpers |
|
|
43
|
+
| `src/tokens/theme.scss` | the only stylesheet that emits global custom properties |
|
|
44
|
+
| `src/theme/solid-adapter.ts` | the runtime slot and the one rule that decides which runtime a render gets |
|
|
45
|
+
| `src/theme/inert-runtime.ts` | `INERT_SOLID_RUNTIME` — what a server render IS, not a stub of what it lacks |
|
|
46
|
+
| `src/theme/theme.ts` | resolution: stored choice → OS; all side effects via injected `ThemeEnv` |
|
|
47
|
+
| `src/theme/inline-script.ts` | anti-flash `<head>` snippet + its CSP sha256 |
|
|
48
|
+
| `src/components/` | 50 components, `PascalCase.tsx` (component convention overrides the repo's kebab-case) |
|
|
49
|
+
| `src/icons/glyphs/` | GENERATED: 1767 per-icon modules, `@ultimat3/ui/icons/<name>` → `icon<Name>` |
|
|
50
|
+
| `src/icons/build-icons.ts` | the generator + the pinned `LUCIDE_VERSION`; `LICENSE.lucide` is upstream's ISC text |
|
|
51
|
+
| `src/theme/brand.ts` | `defineTheme()` — the ONE brand-override seam; there is no SCSS `@use ... with ()` path |
|
|
52
|
+
| `src/tokens/contrast.ts` | WCAG ratios over the channel tokens; `contrast.test.ts` gates AA in both themes |
|
|
53
|
+
| `src/catalog/` | parses `components/*.tsx` into `CATALOG.md`; `bun run catalog` writes it, `catalog.test.ts` fails on drift |
|
|
54
|
+
| `src/roving.ts` | the pure rules of a keyboard group: navigable set, tab stop, who keeps their own arrows |
|
|
55
|
+
| `src/fake-dom.ts` | TEST-ONLY: a DOM where a disabled control refuses focus. Never exported from `index.ts` |
|
|
56
|
+
| `src/jsx-probe.ts` | TEST-ONLY: a component's node tree, so a test can assert the props and call the handlers an element carries |
|
|
57
|
+
| `src/components/style-classes.test.ts` | the build error behind "every `styles['x']` a component names is declared in its own `.module.scss`" — under `bun test` a `.module.scss` import resolves to the file PATH, so no render can catch a dead class |
|
|
58
|
+
|
|
59
|
+
## Assumed peer contracts
|
|
60
|
+
|
|
61
|
+
`@ultimat3/money` → `formatMoney(money, { locale })`; `@ultimat3/time` → `formatDateTime(date, { locale, timeZone, dateStyle?, timeStyle? })`. Both are injectable via a `format` prop, so a signature change touches one line.
|
|
62
|
+
|
|
63
|
+
## Commands
|
|
64
|
+
|
|
65
|
+
```
|
|
66
|
+
bun test # from the repo root
|
|
67
|
+
bun run --filter @ultimat3/ui typecheck
|
|
68
|
+
bun run --filter @ultimat3/ui catalog # after any prop change — CATALOG.md is gated
|
|
69
|
+
bun run --filter @ultimat3/ui icons # regenerate the glyph set (network; dev-only)
|
|
70
|
+
```
|
|
71
|
+
|
|
72
|
+
## Deep import
|
|
73
|
+
|
|
74
|
+
`@ultimat3/ui/icons/*` resolves through the package's `exports` map. Inside this monorepo a
|
|
75
|
+
`tsconfig` that maps `@ultimat3/*` to `packages/*/src` needs the more specific entry
|
|
76
|
+
`"@ultimat3/ui/icons/*": ["./packages/ui/src/icons/glyphs/*"]` for TypeScript to follow it —
|
|
77
|
+
runtime resolution is the `exports` map either way.
|
package/README.md
CHANGED
|
@@ -61,7 +61,7 @@ Four composites cover the frame of an app screen. Below them are `Container`,
|
|
|
61
61
|
| `AppShell` | skip link + `header` / `nav` / `main` / `footer` landmarks on a CSS grid | the frame every screen sits in — one per document |
|
|
62
62
|
| `PageHeader` | breadcrumbs, the page's one `h1`, description, actions | the top of a screen |
|
|
63
63
|
| `Section` | a labelled `section` with a real heading and `aria-labelledby` | second-level structure inside a page |
|
|
64
|
-
| `Toolbar` | `role="toolbar"` strip, start + end slots, arrow-key roving | filters and actions above a table or list |
|
|
64
|
+
| `Toolbar` | `role="toolbar"` strip, start + end slots, arrow-key roving between its buttons (`As of 2026-08`) | filters and actions above a table or list |
|
|
65
65
|
|
|
66
66
|
`AppShell` holds no state: below `md` the sidebar becomes a band above the content,
|
|
67
67
|
and an off-canvas menu is `Drawer` — the one component that already does that.
|
|
@@ -82,6 +82,62 @@ never skips a level.
|
|
|
82
82
|
</AppShell>
|
|
83
83
|
```
|
|
84
84
|
|
|
85
|
+
## Icons
|
|
86
|
+
|
|
87
|
+
The set is [Lucide](https://lucide.dev) (ISC), wrapped — not redrawn. Every one of its
|
|
88
|
+
**1767 icons** is a module of its own, generated from upstream `lucide-static` node data
|
|
89
|
+
by `bun run icons`, so an import is one glyph and a bundler drops the rest.
|
|
90
|
+
|
|
91
|
+
```tsx
|
|
92
|
+
import { Icon } from '@ultimat3/ui';
|
|
93
|
+
import { iconSearch } from '@ultimat3/ui/icons/search'; // one module, one icon
|
|
94
|
+
import { iconCircleAlert } from '@ultimat3/ui/icons/circle-alert';
|
|
95
|
+
|
|
96
|
+
<Icon glyph={iconSearch} /> // decorative → aria-hidden
|
|
97
|
+
<Icon glyph={iconCircleAlert} label={t('form.invalid')} /> // meaningful → role="img"
|
|
98
|
+
```
|
|
99
|
+
|
|
100
|
+
| Rule | How |
|
|
101
|
+
|---|---|
|
|
102
|
+
| Module per icon | `@ultimat3/ui/icons/<kebab-name>`, exporting `icon<PascalName>` — `iconDelete`, not `delete`, so reserved words stay legal |
|
|
103
|
+
| Pay for what you use | one icon **104 B** minified, fifty **8.9 kB**, all 1767 **365 kB** — measured with `bun build --minify` |
|
|
104
|
+
| Colour | `currentColor` only; a glyph carrying a literal colour is refused with `X_UI_INVALID_VALUE` |
|
|
105
|
+
| Size | `sm` / `md` / `lg` map to `--text-*` and the box is `1em` — no icon carries a pixel literal |
|
|
106
|
+
| Accessible name | omitted `label` means `aria-hidden="true"`; a `label` promotes it to `role="img"` with that name |
|
|
107
|
+
| Attributes | only the tags and attributes in `ICON_TAGS` reach the DOM — glyph data never becomes an arbitrary attribute |
|
|
108
|
+
|
|
109
|
+
Upstream bump: raise `LUCIDE_VERSION` in `src/icons/build-icons.ts`, run `bun run icons`,
|
|
110
|
+
commit the diff. There is no hand-edited icon in the package.
|
|
111
|
+
|
|
112
|
+
## Works without JavaScript
|
|
113
|
+
|
|
114
|
+
Three components are interactive without a client runtime, because the platform already
|
|
115
|
+
has the behaviour. Each is correct server-rendered, and the script layer only adds.
|
|
116
|
+
|
|
117
|
+
| Component | Platform base | The enhancement |
|
|
118
|
+
|---|---|---|
|
|
119
|
+
| `Accordion` | `<details>` / `<summary>`; `exclusive` is the native `name` group | `onToggle` notification, after the browser has applied it |
|
|
120
|
+
| `Combobox` | `<input list>` + `<datalist>` — typing, filtering, keyboard, mobile | `onFilter`, debounced, for a live/server-side query |
|
|
121
|
+
| `InfiniteScroll` | a real `rel="next"` link to the next page | an `IntersectionObserver` sentinel that calls `onLoadMore` and intercepts the click |
|
|
122
|
+
|
|
123
|
+
```tsx
|
|
124
|
+
<Accordion level={3} exclusive items={[{ id: 'ship', title: t('faq.ship'), panel: <p>…</p> }]} />
|
|
125
|
+
|
|
126
|
+
<Combobox name="city" value={query()} options={cities} onFilter={setQuery} debounceMs={250} />
|
|
127
|
+
|
|
128
|
+
<InfiniteScroll hasMore={page.hasNext} nextHref={`?page=${page.next}`} onLoadMore={loadNext}>
|
|
129
|
+
{rows}
|
|
130
|
+
</InfiniteScroll>
|
|
131
|
+
```
|
|
132
|
+
|
|
133
|
+
`InfiniteScroll` refuses `hasMore` without a `nextHref` (`X_UI_INVALID_VALUE`): with
|
|
134
|
+
scripting off the control is a link, and a link needs somewhere to go. `Combobox` filters
|
|
135
|
+
what it is given by `value` (`filterOptions` — case- and accent-insensitive, prefix first),
|
|
136
|
+
so the list is right on the first paint and after a form round-trip, not only once JS runs.
|
|
137
|
+
|
|
138
|
+
`debounce(fn, ms)` is exported on its own: trailing edge, `cancel()`, `flush()`, `pending()`.
|
|
139
|
+
Components cancel theirs on cleanup, so a filter never fires into a tree that is gone.
|
|
140
|
+
|
|
85
141
|
## Branding
|
|
86
142
|
|
|
87
143
|
`defineTheme()` is the **only** seam for restyling. No SCSS `@use ... with ()`
|
|
@@ -89,7 +145,7 @@ override, no forked package, no second entry point — one call, validated, rend
|
|
|
89
145
|
as the custom properties that beat `theme.scss` at every specificity level it emits.
|
|
90
146
|
|
|
91
147
|
```ts
|
|
92
|
-
import { brandStyleTag, defineTheme } from '@ultimat3/ui';
|
|
148
|
+
import { brandStyleCspSource, brandStyleTag, defineTheme } from '@ultimat3/ui';
|
|
93
149
|
|
|
94
150
|
export const brand = defineTheme({
|
|
95
151
|
colors: {
|
|
@@ -102,6 +158,11 @@ export const brand = defineTheme({
|
|
|
102
158
|
|
|
103
159
|
// in <head>, AFTER global.scss
|
|
104
160
|
`${brandStyleTag(brand)}`;
|
|
161
|
+
|
|
162
|
+
// …and the one source that admits it under the framework's locked CSP. The baseline is
|
|
163
|
+
// `style-src 'self' 'sha256-…'` with no 'unsafe-inline', so a tag whose hash the header does
|
|
164
|
+
// not carry is a stylesheet the browser parses zero rules out of.
|
|
165
|
+
`Content-Security-Policy: style-src 'self' ${brandStyleCspSource(brand)}`;
|
|
105
166
|
```
|
|
106
167
|
|
|
107
168
|
| Slot | Accepts | Refused with |
|
|
@@ -115,19 +176,57 @@ anything carrying `;`, `}` or `</style>` is a refusal at the app's entry point r
|
|
|
115
176
|
than a CSS injection. Every component in the system follows the override — they only
|
|
116
177
|
ever read the roles, never a colour.
|
|
117
178
|
|
|
179
|
+
## The two render paths
|
|
180
|
+
|
|
181
|
+
Every component renders on the server. Half of them read the ambient presentation context —
|
|
182
|
+
locale, time zone, currency, direction, translator — and where that context comes from is the
|
|
183
|
+
only thing that differs between a server render and a hydrated one. **An app registers nothing
|
|
184
|
+
to render on the server.**
|
|
185
|
+
|
|
186
|
+
| | Server render | Client render |
|
|
187
|
+
|---|---|---|
|
|
188
|
+
| The renderer | `@ultimat3/render`'s inert JSX factory — a component is a plain function, called once | Solid, with a reactive graph |
|
|
189
|
+
| The runtime | `INERT_SOLID_RUNTIME`, handed out automatically: signals hold, memos recompute on read, effects never run | the real one, registered once: `setSolidRuntime(await import('solid-js'))` |
|
|
190
|
+
| Where `useUi()` reads | the request — `currentLocale()`, `currentTimeZone()`, `useI18n()` | `<UiProvider>`, through Solid's context |
|
|
191
|
+
| `<UiProvider>` | **throws** `X_UI_RUNTIME_MISSING` | the one injection point |
|
|
192
|
+
|
|
193
|
+
`<UiProvider>` is client-only on purpose. A Provider in an inert tree reaches no descendant —
|
|
194
|
+
the tree is already built when the renderer walks it, so every consumer is walked outside every
|
|
195
|
+
owner and sees the context default, with a real Solid runtime registered too. Rendering the
|
|
196
|
+
children anyway would drop the locale, zone, currency and translator it was handed while looking
|
|
197
|
+
like it worked, so it refuses instead and names the fix.
|
|
198
|
+
|
|
199
|
+
The mirror image is just as loud: a **DOM** with no registered runtime is the "my theme toggle
|
|
200
|
+
does nothing" bug, and `solid()` still throws there. No DOM, no reactivity to lose.
|
|
201
|
+
|
|
202
|
+
Server-side, the locale and zone are `ctx.locale` and `ctx.tz` — **core's own fields**, written
|
|
203
|
+
once per request by `@ultimat3/http`'s `locale` stage and read back by `currentLocale()` /
|
|
204
|
+
`currentTimeZone()`. `withChildContext({ locale, tz })` scopes a subtree. There is no second
|
|
205
|
+
ambient store, here or anywhere: `@ultimat3/time` used to keep its own `ctx['timeZone']` that
|
|
206
|
+
nothing ever wrote, so every server-rendered date was UTC however the request arrived.
|
|
207
|
+
|
|
118
208
|
## Example
|
|
119
209
|
|
|
120
210
|
```tsx
|
|
121
|
-
import { Button, Field, Input
|
|
122
|
-
import '@ultimat3/ui/global.scss'
|
|
211
|
+
import { Button, Field, Input } from '@ultimat3/ui';
|
|
212
|
+
import '../../shared/global'; // `shared/global.scss` is the app's one `@use '@ultimat3/ui/global.scss'`
|
|
213
|
+
|
|
214
|
+
// A server render. `useUi()` inside <Field> reads the request's locale, direction and zone —
|
|
215
|
+
// nothing to register, nothing to wrap.
|
|
216
|
+
<Field label={t('signup.email')} hint={t('signup.email.hint')} error={errors.email}>
|
|
217
|
+
{(control) => <Input {...control} type="email" autocomplete="email" />}
|
|
218
|
+
</Field>
|
|
219
|
+
<Button tone="accent">{t('signup.submit')}</Button>
|
|
220
|
+
```
|
|
123
221
|
|
|
124
|
-
|
|
222
|
+
```tsx
|
|
223
|
+
// A client entry — an island, or a hydrated app shell. Both lines, in this order, once.
|
|
224
|
+
import { setSolidRuntime, UiProvider } from '@ultimat3/ui';
|
|
225
|
+
|
|
226
|
+
setSolidRuntime(await import('solid-js'));
|
|
125
227
|
|
|
126
228
|
<UiProvider locale="ar-EG" timeZone="Africa/Cairo" currency="EGP" t={t}>
|
|
127
|
-
|
|
128
|
-
{(control) => <Input {...control} type="email" autocomplete="email" />}
|
|
129
|
-
</Field>
|
|
130
|
-
<Button tone="accent" loading={pending()}>{t('signup.submit')}</Button>
|
|
229
|
+
{tree}
|
|
131
230
|
</UiProvider>
|
|
132
231
|
```
|
|
133
232
|
|
|
@@ -163,6 +262,26 @@ renditions and the data-URI blur placeholder are build-pipeline steps
|
|
|
163
262
|
of this package. The component emits what it is handed and fabricates nothing —
|
|
164
263
|
no variants it was not given, no dimensions it did not measure.
|
|
165
264
|
|
|
265
|
+
## Keyboard groups
|
|
266
|
+
|
|
267
|
+
`As of 2026-08`: a roving group — `Menu`, `Tabs`, `Toolbar` — is one Tab stop into a set of
|
|
268
|
+
controls, and arrows move within it. Three rules, all of them in `src/roving.ts` and all of them
|
|
269
|
+
enforced by tests:
|
|
270
|
+
|
|
271
|
+
| Rule | Why |
|
|
272
|
+
|---|---|
|
|
273
|
+
| a disabled item is in neither the navigable set nor the tab stop (`MENU_ITEM_SELECTOR`, `TAB_SELECTOR`, `tabStopIndex`) | `focus()` on a disabled control is a **no-op**, so a disabled item left in the list pins the reducer on its index and hides everything after it |
|
|
274
|
+
| the tab stop is the selection, or the first **enabled** item (`tabStopIndex`) | a group whose only tab stop is disabled cannot be entered at all |
|
|
275
|
+
| a control that answers arrows itself keeps them (`handlesOwnArrowKeys`) | `Toolbar` exists to hold a search field, and stealing ArrowRight from it eats the keystroke moving the caret |
|
|
276
|
+
|
|
277
|
+
`Toolbar` is deliberately **not** a single Tab stop: it holds arbitrary children it cannot reach
|
|
278
|
+
into to set an initial `tabindex`, and a search field at its inline start keeps its own arrows —
|
|
279
|
+
one stop there would strand every control past it.
|
|
280
|
+
|
|
281
|
+
`As of 2026-08`, `ToastRegion` owns the live region, not `Toast`: the `<ol>` carries `aria-live`
|
|
282
|
+
and outlives every message, because a region created with its content already inside it is not announced. One region,
|
|
283
|
+
one politeness — `politeness="assertive"` for a region that carries errors alone.
|
|
284
|
+
|
|
166
285
|
## Theme resolution
|
|
167
286
|
|
|
168
287
|
`explicit choice in localStorage` → `OS preference`. `setTheme()` persists,
|
|
@@ -180,8 +299,8 @@ Content-Security-Policy: script-src 'self' 'sha256-…' # themeInlineScriptCsp
|
|
|
180
299
|
|---|---|
|
|
181
300
|
| `X_TOKEN_UNKNOWN` | a token role the SCSS source does not define — including a `defineTheme()` override of a role, radius or font slot that is not in the scale |
|
|
182
301
|
| `X_THEME_INVALID` | a theme other than `light` / `dark` |
|
|
183
|
-
| `X_UI_RUNTIME_MISSING` |
|
|
184
|
-
| `X_UI_INVALID_VALUE` | `<Money>` given a float, `<DateTime>` given an unparseable instant, `<Image>` given mixed `w`/`x` descriptors or one dimension without the other, a heading level off 1–6,
|
|
302
|
+
| `X_UI_RUNTIME_MISSING` | a DOM render with no registered Solid runtime, `<UiProvider>` on the server, or `browserThemeEnv()` off-DOM. A server render with no runtime is **not** one of them — it gets `INERT_SOLID_RUNTIME` |
|
|
303
|
+
| `X_UI_INVALID_VALUE` | `<Money>` given a float, `<DateTime>` given an unparseable instant, `<Image>` given mixed `w`/`x` descriptors or one dimension without the other, a heading level off 1–6, a `defineTheme()` value that is not a token value, an `<Icon>` glyph with a tag/attribute/colour outside `ICON_TAGS`, two `Accordion` items sharing an id, `InfiniteScroll` with `hasMore` and no `nextHref`, a negative `debounce` window, or (`As of 2026-08`) upstream icon data `bun run icons` refuses (not an object, no renderable nodes, an attribute value that is not glyph geometry) |
|
|
185
304
|
|
|
186
305
|
## Commands
|
|
187
306
|
|
|
@@ -189,4 +308,5 @@ Content-Security-Policy: script-src 'self' 'sha256-…' # themeInlineScriptCsp
|
|
|
189
308
|
bun test # token parity, contrast, theme resolution, brand, catalog drift, a11y
|
|
190
309
|
bun run typecheck
|
|
191
310
|
bun run catalog # regenerate CATALOG.md after changing a component's props
|
|
311
|
+
bun run icons # regenerate src/icons/glyphs/* from lucide-static (network, dev-only)
|
|
192
312
|
```
|
package/package.json
CHANGED
|
@@ -1,6 +1,6 @@
|
|
|
1
1
|
{
|
|
2
2
|
"name": "@ultimat3/ui",
|
|
3
|
-
"version": "
|
|
3
|
+
"version": "3.0.0",
|
|
4
4
|
"description": "SolidJS design system: semantic design tokens, dark/RTL-ready SCSS modules, a11y primitives",
|
|
5
5
|
"license": "MIT",
|
|
6
6
|
"type": "module",
|
|
@@ -15,6 +15,7 @@
|
|
|
15
15
|
},
|
|
16
16
|
"exports": {
|
|
17
17
|
".": "./src/index.ts",
|
|
18
|
+
"./icons/*": "./src/icons/glyphs/*.ts",
|
|
18
19
|
"./tokens": "./src/tokens/_index.scss",
|
|
19
20
|
"./theme.scss": "./src/tokens/theme.scss",
|
|
20
21
|
"./reset.scss": "./src/tokens/reset.scss",
|
|
@@ -24,6 +25,7 @@
|
|
|
24
25
|
"src",
|
|
25
26
|
"!src/**/*.test.ts",
|
|
26
27
|
"CATALOG.md",
|
|
28
|
+
"CLAUDE.md",
|
|
27
29
|
"README.md",
|
|
28
30
|
"LICENSE"
|
|
29
31
|
],
|
|
@@ -33,15 +35,16 @@
|
|
|
33
35
|
"scripts": {
|
|
34
36
|
"typecheck": "tsc --noEmit -p tsconfig.json",
|
|
35
37
|
"test": "bun test",
|
|
36
|
-
"catalog": "bun run src/catalog/build-catalog.ts"
|
|
38
|
+
"catalog": "bun run src/catalog/build-catalog.ts",
|
|
39
|
+
"icons": "bun run src/icons/build-icons.ts"
|
|
37
40
|
},
|
|
38
41
|
"dependencies": {
|
|
39
|
-
"@ultimat3/core": "
|
|
40
|
-
"@ultimat3/i18n": "
|
|
41
|
-
"@ultimat3/money": "
|
|
42
|
-
"@ultimat3/time": "
|
|
42
|
+
"@ultimat3/core": "3.0.0",
|
|
43
|
+
"@ultimat3/i18n": "3.0.0",
|
|
44
|
+
"@ultimat3/money": "3.0.0",
|
|
45
|
+
"@ultimat3/time": "3.0.0"
|
|
43
46
|
},
|
|
44
47
|
"peerDependencies": {
|
|
45
|
-
"solid-js": "^
|
|
48
|
+
"solid-js": "^1.9.0"
|
|
46
49
|
}
|
|
47
50
|
}
|