@krollins/blueprint 0.1.14 → 0.1.16
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/dist/components/accordion/accordion.d.ts +1 -0
- package/dist/components/accordion/accordion.d.ts.map +1 -1
- package/dist/components/accordion.js.map +1 -1
- package/dist/components/alert/alert.d.ts +5 -0
- package/dist/components/alert/alert.d.ts.map +1 -1
- package/dist/components/alert.js.map +1 -1
- package/dist/components/avatar/avatar.d.ts +1 -0
- package/dist/components/avatar/avatar.d.ts.map +1 -1
- package/dist/components/avatar.js.map +1 -1
- package/dist/components/breadcrumb/breadcrumb.d.ts +2 -1
- package/dist/components/breadcrumb/breadcrumb.d.ts.map +1 -1
- package/dist/components/breadcrumb.js.map +1 -1
- package/dist/components/code-block/code-block.d.ts.map +1 -1
- package/dist/components/code-block.js +45 -47
- package/dist/components/code-block.js.map +1 -1
- package/dist/components/drawer/drawer.d.ts +1 -0
- package/dist/components/drawer/drawer.d.ts.map +1 -1
- package/dist/components/drawer.js.map +1 -1
- package/dist/components/icon/icon-registry.d.ts +26 -0
- package/dist/components/icon/icon-registry.d.ts.map +1 -0
- package/dist/components/icon/icon.d.ts +2 -1
- package/dist/components/icon/icon.d.ts.map +1 -1
- package/dist/components/icon/icons/all.d.ts +431 -0
- package/dist/components/icon/icons/all.d.ts.map +1 -0
- package/dist/components/icon/icons/entries/airplay.d.ts +2 -0
- package/dist/components/icon/icons/entries/airplay.d.ts.map +1 -0
- package/dist/components/icon/icons/entries/alarm-clock.d.ts +2 -0
- package/dist/components/icon/icons/entries/alarm-clock.d.ts.map +1 -0
- package/dist/components/icon/icons/entries/align-horizontal.d.ts +2 -0
- package/dist/components/icon/icons/entries/align-horizontal.d.ts.map +1 -0
- package/dist/components/icon/icons/entries/align-vertical.d.ts +2 -0
- package/dist/components/icon/icons/entries/align-vertical.d.ts.map +1 -0
- package/dist/components/icon/icons/entries/angle.d.ts +2 -0
- package/dist/components/icon/icons/entries/angle.d.ts.map +1 -0
- package/dist/components/icon/icons/entries/archive.d.ts +2 -0
- package/dist/components/icon/icons/entries/archive.d.ts.map +1 -0
- package/dist/components/icon/icons/entries/arrow-bottom-left.d.ts +2 -0
- package/dist/components/icon/icons/entries/arrow-bottom-left.d.ts.map +1 -0
- package/dist/components/icon/icons/entries/arrow-bottom-right.d.ts +2 -0
- package/dist/components/icon/icons/entries/arrow-bottom-right.d.ts.map +1 -0
- package/dist/components/icon/icons/entries/arrow-down-circle.d.ts +2 -0
- package/dist/components/icon/icons/entries/arrow-down-circle.d.ts.map +1 -0
- package/dist/components/icon/icons/entries/arrow-down.d.ts +2 -0
- package/dist/components/icon/icons/entries/arrow-down.d.ts.map +1 -0
- package/dist/components/icon/icons/entries/arrow-left-circle.d.ts +2 -0
- package/dist/components/icon/icons/entries/arrow-left-circle.d.ts.map +1 -0
- package/dist/components/icon/icons/entries/arrow-left.d.ts +2 -0
- package/dist/components/icon/icons/entries/arrow-left.d.ts.map +1 -0
- package/dist/components/icon/icons/entries/arrow-right-circle.d.ts +2 -0
- package/dist/components/icon/icons/entries/arrow-right-circle.d.ts.map +1 -0
- package/dist/components/icon/icons/entries/arrow-right.d.ts +2 -0
- package/dist/components/icon/icons/entries/arrow-right.d.ts.map +1 -0
- package/dist/components/icon/icons/entries/arrow-top-left.d.ts +2 -0
- package/dist/components/icon/icons/entries/arrow-top-left.d.ts.map +1 -0
- package/dist/components/icon/icons/entries/arrow-top-right.d.ts +2 -0
- package/dist/components/icon/icons/entries/arrow-top-right.d.ts.map +1 -0
- package/dist/components/icon/icons/entries/arrow-up-circle.d.ts +2 -0
- package/dist/components/icon/icons/entries/arrow-up-circle.d.ts.map +1 -0
- package/dist/components/icon/icons/entries/arrow-up.d.ts +2 -0
- package/dist/components/icon/icons/entries/arrow-up.d.ts.map +1 -0
- package/dist/components/icon/icons/entries/audio-wave.d.ts +2 -0
- package/dist/components/icon/icons/entries/audio-wave.d.ts.map +1 -0
- package/dist/components/icon/icons/entries/backspace.d.ts +2 -0
- package/dist/components/icon/icons/entries/backspace.d.ts.map +1 -0
- package/dist/components/icon/icons/entries/backward.d.ts +2 -0
- package/dist/components/icon/icons/entries/backward.d.ts.map +1 -0
- package/dist/components/icon/icons/entries/bag.d.ts +2 -0
- package/dist/components/icon/icons/entries/bag.d.ts.map +1 -0
- package/dist/components/icon/icons/entries/battery-75.d.ts +2 -0
- package/dist/components/icon/icons/entries/battery-75.d.ts.map +1 -0
- package/dist/components/icon/icons/entries/battery-charging.d.ts +2 -0
- package/dist/components/icon/icons/entries/battery-charging.d.ts.map +1 -0
- package/dist/components/icon/icons/entries/battery-empty.d.ts +2 -0
- package/dist/components/icon/icons/entries/battery-empty.d.ts.map +1 -0
- package/dist/components/icon/icons/entries/battery-full.d.ts +2 -0
- package/dist/components/icon/icons/entries/battery-full.d.ts.map +1 -0
- package/dist/components/icon/icons/entries/battery-half.d.ts +2 -0
- package/dist/components/icon/icons/entries/battery-half.d.ts.map +1 -0
- package/dist/components/icon/icons/entries/battery-low.d.ts +2 -0
- package/dist/components/icon/icons/entries/battery-low.d.ts.map +1 -0
- package/dist/components/icon/icons/entries/bell-disabled.d.ts +2 -0
- package/dist/components/icon/icons/entries/bell-disabled.d.ts.map +1 -0
- package/dist/components/icon/icons/entries/bell-ringing.d.ts +2 -0
- package/dist/components/icon/icons/entries/bell-ringing.d.ts.map +1 -0
- package/dist/components/icon/icons/entries/bell-snooze.d.ts +2 -0
- package/dist/components/icon/icons/entries/bell-snooze.d.ts.map +1 -0
- package/dist/components/icon/icons/entries/bell.d.ts +2 -0
- package/dist/components/icon/icons/entries/bell.d.ts.map +1 -0
- package/dist/components/icon/icons/entries/bluetooth.d.ts +2 -0
- package/dist/components/icon/icons/entries/bluetooth.d.ts.map +1 -0
- package/dist/components/icon/icons/entries/book-closed.d.ts +2 -0
- package/dist/components/icon/icons/entries/book-closed.d.ts.map +1 -0
- package/dist/components/icon/icons/entries/book-text.d.ts +2 -0
- package/dist/components/icon/icons/entries/book-text.d.ts.map +1 -0
- package/dist/components/icon/icons/entries/book.d.ts +2 -0
- package/dist/components/icon/icons/entries/book.d.ts.map +1 -0
- package/dist/components/icon/icons/entries/bookmark-book.d.ts +2 -0
- package/dist/components/icon/icons/entries/bookmark-book.d.ts.map +1 -0
- package/dist/components/icon/icons/entries/bookmark.d.ts +2 -0
- package/dist/components/icon/icons/entries/bookmark.d.ts.map +1 -0
- package/dist/components/icon/icons/entries/box-add.d.ts +2 -0
- package/dist/components/icon/icons/entries/box-add.d.ts.map +1 -0
- package/dist/components/icon/icons/entries/box-download.d.ts +2 -0
- package/dist/components/icon/icons/entries/box-download.d.ts.map +1 -0
- package/dist/components/icon/icons/entries/box-open.d.ts +2 -0
- package/dist/components/icon/icons/entries/box-open.d.ts.map +1 -0
- package/dist/components/icon/icons/entries/box-remove.d.ts +2 -0
- package/dist/components/icon/icons/entries/box-remove.d.ts.map +1 -0
- package/dist/components/icon/icons/entries/box.d.ts +2 -0
- package/dist/components/icon/icons/entries/box.d.ts.map +1 -0
- package/dist/components/icon/icons/entries/boxes.d.ts +2 -0
- package/dist/components/icon/icons/entries/boxes.d.ts.map +1 -0
- package/dist/components/icon/icons/entries/branch.d.ts +2 -0
- package/dist/components/icon/icons/entries/branch.d.ts.map +1 -0
- package/dist/components/icon/icons/entries/briefcase.d.ts +2 -0
- package/dist/components/icon/icons/entries/briefcase.d.ts.map +1 -0
- package/dist/components/icon/icons/entries/browser-alt.d.ts +2 -0
- package/dist/components/icon/icons/entries/browser-alt.d.ts.map +1 -0
- package/dist/components/icon/icons/entries/browser.d.ts +2 -0
- package/dist/components/icon/icons/entries/browser.d.ts.map +1 -0
- package/dist/components/icon/icons/entries/button-add.d.ts +2 -0
- package/dist/components/icon/icons/entries/button-add.d.ts.map +1 -0
- package/dist/components/icon/icons/entries/button-minus.d.ts +2 -0
- package/dist/components/icon/icons/entries/button-minus.d.ts.map +1 -0
- package/dist/components/icon/icons/entries/calculator.d.ts +2 -0
- package/dist/components/icon/icons/entries/calculator.d.ts.map +1 -0
- package/dist/components/icon/icons/entries/calendar-add.d.ts +2 -0
- package/dist/components/icon/icons/entries/calendar-add.d.ts.map +1 -0
- package/dist/components/icon/icons/entries/calendar-date.d.ts +2 -0
- package/dist/components/icon/icons/entries/calendar-date.d.ts.map +1 -0
- package/dist/components/icon/icons/entries/calendar-day.d.ts +2 -0
- package/dist/components/icon/icons/entries/calendar-day.d.ts.map +1 -0
- package/dist/components/icon/icons/entries/calendar-days.d.ts +2 -0
- package/dist/components/icon/icons/entries/calendar-days.d.ts.map +1 -0
- package/dist/components/icon/icons/entries/calendar-last-day.d.ts +2 -0
- package/dist/components/icon/icons/entries/calendar-last-day.d.ts.map +1 -0
- package/dist/components/icon/icons/entries/calendar-month.d.ts +2 -0
- package/dist/components/icon/icons/entries/calendar-month.d.ts.map +1 -0
- package/dist/components/icon/icons/entries/calendar-move.d.ts +2 -0
- package/dist/components/icon/icons/entries/calendar-move.d.ts.map +1 -0
- package/dist/components/icon/icons/entries/calendar-remove.d.ts +2 -0
- package/dist/components/icon/icons/entries/calendar-remove.d.ts.map +1 -0
- package/dist/components/icon/icons/entries/calendar-split.d.ts +2 -0
- package/dist/components/icon/icons/entries/calendar-split.d.ts.map +1 -0
- package/dist/components/icon/icons/entries/calendar-week.d.ts +2 -0
- package/dist/components/icon/icons/entries/calendar-week.d.ts.map +1 -0
- package/dist/components/icon/icons/entries/calendar.d.ts +2 -0
- package/dist/components/icon/icons/entries/calendar.d.ts.map +1 -0
- package/dist/components/icon/icons/entries/camera-alt.d.ts +2 -0
- package/dist/components/icon/icons/entries/camera-alt.d.ts.map +1 -0
- package/dist/components/icon/icons/entries/camera-noflash-alt.d.ts +2 -0
- package/dist/components/icon/icons/entries/camera-noflash-alt.d.ts.map +1 -0
- package/dist/components/icon/icons/entries/camera-noflash.d.ts +2 -0
- package/dist/components/icon/icons/entries/camera-noflash.d.ts.map +1 -0
- package/dist/components/icon/icons/entries/camera.d.ts +2 -0
- package/dist/components/icon/icons/entries/camera.d.ts.map +1 -0
- package/dist/components/icon/icons/entries/capture.d.ts +2 -0
- package/dist/components/icon/icons/entries/capture.d.ts.map +1 -0
- package/dist/components/icon/icons/entries/card-timeline.d.ts +2 -0
- package/dist/components/icon/icons/entries/card-timeline.d.ts.map +1 -0
- package/dist/components/icon/icons/entries/card-view.d.ts +2 -0
- package/dist/components/icon/icons/entries/card-view.d.ts.map +1 -0
- package/dist/components/icon/icons/entries/carousel.d.ts +2 -0
- package/dist/components/icon/icons/entries/carousel.d.ts.map +1 -0
- package/dist/components/icon/icons/entries/cart.d.ts +2 -0
- package/dist/components/icon/icons/entries/cart.d.ts.map +1 -0
- package/dist/components/icon/icons/entries/cast.d.ts +2 -0
- package/dist/components/icon/icons/entries/cast.d.ts.map +1 -0
- package/dist/components/icon/icons/entries/chain.d.ts +2 -0
- package/dist/components/icon/icons/entries/chain.d.ts.map +1 -0
- package/dist/components/icon/icons/entries/chat-add.d.ts +2 -0
- package/dist/components/icon/icons/entries/chat-add.d.ts.map +1 -0
- package/dist/components/icon/icons/entries/check-circle-outside.d.ts +2 -0
- package/dist/components/icon/icons/entries/check-circle-outside.d.ts.map +1 -0
- package/dist/components/icon/icons/entries/check-circle.d.ts +2 -0
- package/dist/components/icon/icons/entries/check-circle.d.ts.map +1 -0
- package/dist/components/icon/icons/entries/check.d.ts +2 -0
- package/dist/components/icon/icons/entries/check.d.ts.map +1 -0
- package/dist/components/icon/icons/entries/checkbox-checked.d.ts +2 -0
- package/dist/components/icon/icons/entries/checkbox-checked.d.ts.map +1 -0
- package/dist/components/icon/icons/entries/checkbox-empty.d.ts +2 -0
- package/dist/components/icon/icons/entries/checkbox-empty.d.ts.map +1 -0
- package/dist/components/icon/icons/entries/chevron-close.d.ts +2 -0
- package/dist/components/icon/icons/entries/chevron-close.d.ts.map +1 -0
- package/dist/components/icon/icons/entries/chevron-down-circle.d.ts +2 -0
- package/dist/components/icon/icons/entries/chevron-down-circle.d.ts.map +1 -0
- package/dist/components/icon/icons/entries/chevron-down-double.d.ts +2 -0
- package/dist/components/icon/icons/entries/chevron-down-double.d.ts.map +1 -0
- package/dist/components/icon/icons/entries/chevron-down.d.ts +2 -0
- package/dist/components/icon/icons/entries/chevron-down.d.ts.map +1 -0
- package/dist/components/icon/icons/entries/chevron-left-circle.d.ts +2 -0
- package/dist/components/icon/icons/entries/chevron-left-circle.d.ts.map +1 -0
- package/dist/components/icon/icons/entries/chevron-left-double.d.ts +2 -0
- package/dist/components/icon/icons/entries/chevron-left-double.d.ts.map +1 -0
- package/dist/components/icon/icons/entries/chevron-left.d.ts +2 -0
- package/dist/components/icon/icons/entries/chevron-left.d.ts.map +1 -0
- package/dist/components/icon/icons/entries/chevron-open.d.ts +2 -0
- package/dist/components/icon/icons/entries/chevron-open.d.ts.map +1 -0
- package/dist/components/icon/icons/entries/chevron-right-circle.d.ts +2 -0
- package/dist/components/icon/icons/entries/chevron-right-circle.d.ts.map +1 -0
- package/dist/components/icon/icons/entries/chevron-right-double.d.ts +2 -0
- package/dist/components/icon/icons/entries/chevron-right-double.d.ts.map +1 -0
- package/dist/components/icon/icons/entries/chevron-right.d.ts +2 -0
- package/dist/components/icon/icons/entries/chevron-right.d.ts.map +1 -0
- package/dist/components/icon/icons/entries/chevron-up-circle.d.ts +2 -0
- package/dist/components/icon/icons/entries/chevron-up-circle.d.ts.map +1 -0
- package/dist/components/icon/icons/entries/chevron-up-double.d.ts +2 -0
- package/dist/components/icon/icons/entries/chevron-up-double.d.ts.map +1 -0
- package/dist/components/icon/icons/entries/chevron-up.d.ts +2 -0
- package/dist/components/icon/icons/entries/chevron-up.d.ts.map +1 -0
- package/dist/components/icon/icons/entries/circle-menu.d.ts +2 -0
- package/dist/components/icon/icons/entries/circle-menu.d.ts.map +1 -0
- package/dist/components/icon/icons/entries/circle-split.d.ts +2 -0
- package/dist/components/icon/icons/entries/circle-split.d.ts.map +1 -0
- package/dist/components/icon/icons/entries/circle.d.ts +2 -0
- package/dist/components/icon/icons/entries/circle.d.ts.map +1 -0
- package/dist/components/icon/icons/entries/clipboard-add.d.ts +2 -0
- package/dist/components/icon/icons/entries/clipboard-add.d.ts.map +1 -0
- package/dist/components/icon/icons/entries/clipboard-check.d.ts +2 -0
- package/dist/components/icon/icons/entries/clipboard-check.d.ts.map +1 -0
- package/dist/components/icon/icons/entries/clipboard-copy.d.ts +2 -0
- package/dist/components/icon/icons/entries/clipboard-copy.d.ts.map +1 -0
- package/dist/components/icon/icons/entries/clipboard-cross.d.ts +2 -0
- package/dist/components/icon/icons/entries/clipboard-cross.d.ts.map +1 -0
- package/dist/components/icon/icons/entries/clipboard-notes.d.ts +2 -0
- package/dist/components/icon/icons/entries/clipboard-notes.d.ts.map +1 -0
- package/dist/components/icon/icons/entries/clipboard-remove.d.ts +2 -0
- package/dist/components/icon/icons/entries/clipboard-remove.d.ts.map +1 -0
- package/dist/components/icon/icons/entries/clipboard.d.ts +2 -0
- package/dist/components/icon/icons/entries/clipboard.d.ts.map +1 -0
- package/dist/components/icon/icons/entries/clock.d.ts +2 -0
- package/dist/components/icon/icons/entries/clock.d.ts.map +1 -0
- package/dist/components/icon/icons/entries/close.d.ts +2 -0
- package/dist/components/icon/icons/entries/close.d.ts.map +1 -0
- package/dist/components/icon/icons/entries/cloud-disconnect.d.ts +2 -0
- package/dist/components/icon/icons/entries/cloud-disconnect.d.ts.map +1 -0
- package/dist/components/icon/icons/entries/cloud-download-alt.d.ts +2 -0
- package/dist/components/icon/icons/entries/cloud-download-alt.d.ts.map +1 -0
- package/dist/components/icon/icons/entries/cloud-download.d.ts +2 -0
- package/dist/components/icon/icons/entries/cloud-download.d.ts.map +1 -0
- package/dist/components/icon/icons/entries/cloud-upload-alt.d.ts +2 -0
- package/dist/components/icon/icons/entries/cloud-upload-alt.d.ts.map +1 -0
- package/dist/components/icon/icons/entries/cloud-upload.d.ts +2 -0
- package/dist/components/icon/icons/entries/cloud-upload.d.ts.map +1 -0
- package/dist/components/icon/icons/entries/cloud.d.ts +2 -0
- package/dist/components/icon/icons/entries/cloud.d.ts.map +1 -0
- package/dist/components/icon/icons/entries/code.d.ts +2 -0
- package/dist/components/icon/icons/entries/code.d.ts.map +1 -0
- package/dist/components/icon/icons/entries/coffee.d.ts +2 -0
- package/dist/components/icon/icons/entries/coffee.d.ts.map +1 -0
- package/dist/components/icon/icons/entries/coin.d.ts +2 -0
- package/dist/components/icon/icons/entries/coin.d.ts.map +1 -0
- package/dist/components/icon/icons/entries/coins.d.ts +2 -0
- package/dist/components/icon/icons/entries/coins.d.ts.map +1 -0
- package/dist/components/icon/icons/entries/compass.d.ts +2 -0
- package/dist/components/icon/icons/entries/compass.d.ts.map +1 -0
- package/dist/components/icon/icons/entries/component-add.d.ts +2 -0
- package/dist/components/icon/icons/entries/component-add.d.ts.map +1 -0
- package/dist/components/icon/icons/entries/contacts.d.ts +2 -0
- package/dist/components/icon/icons/entries/contacts.d.ts.map +1 -0
- package/dist/components/icon/icons/entries/contract.d.ts +2 -0
- package/dist/components/icon/icons/entries/contract.d.ts.map +1 -0
- package/dist/components/icon/icons/entries/create.d.ts +2 -0
- package/dist/components/icon/icons/entries/create.d.ts.map +1 -0
- package/dist/components/icon/icons/entries/credit-card.d.ts +2 -0
- package/dist/components/icon/icons/entries/credit-card.d.ts.map +1 -0
- package/dist/components/icon/icons/entries/crop.d.ts +2 -0
- package/dist/components/icon/icons/entries/crop.d.ts.map +1 -0
- package/dist/components/icon/icons/entries/cross-circle.d.ts +2 -0
- package/dist/components/icon/icons/entries/cross-circle.d.ts.map +1 -0
- package/dist/components/icon/icons/entries/cross.d.ts +2 -0
- package/dist/components/icon/icons/entries/cross.d.ts.map +1 -0
- package/dist/components/icon/icons/entries/crosshair.d.ts +2 -0
- package/dist/components/icon/icons/entries/crosshair.d.ts.map +1 -0
- package/dist/components/icon/icons/entries/cube.d.ts +2 -0
- package/dist/components/icon/icons/entries/cube.d.ts.map +1 -0
- package/dist/components/icon/icons/entries/cubes.d.ts +2 -0
- package/dist/components/icon/icons/entries/cubes.d.ts.map +1 -0
- package/dist/components/icon/icons/entries/cylinder.d.ts +2 -0
- package/dist/components/icon/icons/entries/cylinder.d.ts.map +1 -0
- package/dist/components/icon/icons/entries/database.d.ts +2 -0
- package/dist/components/icon/icons/entries/database.d.ts.map +1 -0
- package/dist/components/icon/icons/entries/diamond.d.ts +2 -0
- package/dist/components/icon/icons/entries/diamond.d.ts.map +1 -0
- package/dist/components/icon/icons/entries/directions.d.ts +2 -0
- package/dist/components/icon/icons/entries/directions.d.ts.map +1 -0
- package/dist/components/icon/icons/entries/disc.d.ts +2 -0
- package/dist/components/icon/icons/entries/disc.d.ts.map +1 -0
- package/dist/components/icon/icons/entries/display-alt.d.ts +2 -0
- package/dist/components/icon/icons/entries/display-alt.d.ts.map +1 -0
- package/dist/components/icon/icons/entries/display.d.ts +2 -0
- package/dist/components/icon/icons/entries/display.d.ts.map +1 -0
- package/dist/components/icon/icons/entries/document-justified.d.ts +2 -0
- package/dist/components/icon/icons/entries/document-justified.d.ts.map +1 -0
- package/dist/components/icon/icons/entries/document-list.d.ts +2 -0
- package/dist/components/icon/icons/entries/document-list.d.ts.map +1 -0
- package/dist/components/icon/icons/entries/document-stack.d.ts +2 -0
- package/dist/components/icon/icons/entries/document-stack.d.ts.map +1 -0
- package/dist/components/icon/icons/entries/document-words.d.ts +2 -0
- package/dist/components/icon/icons/entries/document-words.d.ts.map +1 -0
- package/dist/components/icon/icons/entries/document.d.ts +2 -0
- package/dist/components/icon/icons/entries/document.d.ts.map +1 -0
- package/dist/components/icon/icons/entries/door-alt.d.ts +2 -0
- package/dist/components/icon/icons/entries/door-alt.d.ts.map +1 -0
- package/dist/components/icon/icons/entries/door.d.ts +2 -0
- package/dist/components/icon/icons/entries/door.d.ts.map +1 -0
- package/dist/components/icon/icons/entries/download-alt.d.ts +2 -0
- package/dist/components/icon/icons/entries/download-alt.d.ts.map +1 -0
- package/dist/components/icon/icons/entries/download.d.ts +2 -0
- package/dist/components/icon/icons/entries/download.d.ts.map +1 -0
- package/dist/components/icon/icons/entries/downward.d.ts +2 -0
- package/dist/components/icon/icons/entries/downward.d.ts.map +1 -0
- package/dist/components/icon/icons/entries/drag-circle.d.ts +2 -0
- package/dist/components/icon/icons/entries/drag-circle.d.ts.map +1 -0
- package/dist/components/icon/icons/entries/drag-vertical.d.ts +2 -0
- package/dist/components/icon/icons/entries/drag-vertical.d.ts.map +1 -0
- package/dist/components/icon/icons/entries/drag.d.ts +2 -0
- package/dist/components/icon/icons/entries/drag.d.ts.map +1 -0
- package/dist/components/icon/icons/entries/duplicate-alt.d.ts +2 -0
- package/dist/components/icon/icons/entries/duplicate-alt.d.ts.map +1 -0
- package/dist/components/icon/icons/entries/duplicate.d.ts +2 -0
- package/dist/components/icon/icons/entries/duplicate.d.ts.map +1 -0
- package/dist/components/icon/icons/entries/enter-alt.d.ts +2 -0
- package/dist/components/icon/icons/entries/enter-alt.d.ts.map +1 -0
- package/dist/components/icon/icons/entries/enter.d.ts +2 -0
- package/dist/components/icon/icons/entries/enter.d.ts.map +1 -0
- package/dist/components/icon/icons/entries/episodes.d.ts +2 -0
- package/dist/components/icon/icons/entries/episodes.d.ts.map +1 -0
- package/dist/components/icon/icons/entries/exit-left.d.ts +2 -0
- package/dist/components/icon/icons/entries/exit-left.d.ts.map +1 -0
- package/dist/components/icon/icons/entries/exit-right.d.ts +2 -0
- package/dist/components/icon/icons/entries/exit-right.d.ts.map +1 -0
- package/dist/components/icon/icons/entries/expand-height.d.ts +2 -0
- package/dist/components/icon/icons/entries/expand-height.d.ts.map +1 -0
- package/dist/components/icon/icons/entries/expand-width.d.ts +2 -0
- package/dist/components/icon/icons/entries/expand-width.d.ts.map +1 -0
- package/dist/components/icon/icons/entries/expand.d.ts +2 -0
- package/dist/components/icon/icons/entries/expand.d.ts.map +1 -0
- package/dist/components/icon/icons/entries/external.d.ts +2 -0
- package/dist/components/icon/icons/entries/external.d.ts.map +1 -0
- package/dist/components/icon/icons/entries/eye-closed.d.ts +2 -0
- package/dist/components/icon/icons/entries/eye-closed.d.ts.map +1 -0
- package/dist/components/icon/icons/entries/eye-no.d.ts +2 -0
- package/dist/components/icon/icons/entries/eye-no.d.ts.map +1 -0
- package/dist/components/icon/icons/entries/eye.d.ts +2 -0
- package/dist/components/icon/icons/entries/eye.d.ts.map +1 -0
- package/dist/components/icon/icons/entries/face-delighted.d.ts +2 -0
- package/dist/components/icon/icons/entries/face-delighted.d.ts.map +1 -0
- package/dist/components/icon/icons/entries/face-happy.d.ts +2 -0
- package/dist/components/icon/icons/entries/face-happy.d.ts.map +1 -0
- package/dist/components/icon/icons/entries/face-neutral.d.ts +2 -0
- package/dist/components/icon/icons/entries/face-neutral.d.ts.map +1 -0
- package/dist/components/icon/icons/entries/face-sad.d.ts +2 -0
- package/dist/components/icon/icons/entries/face-sad.d.ts.map +1 -0
- package/dist/components/icon/icons/entries/file-download.d.ts +2 -0
- package/dist/components/icon/icons/entries/file-download.d.ts.map +1 -0
- package/dist/components/icon/icons/entries/file-upload.d.ts +2 -0
- package/dist/components/icon/icons/entries/file-upload.d.ts.map +1 -0
- package/dist/components/icon/icons/entries/files-history.d.ts +2 -0
- package/dist/components/icon/icons/entries/files-history.d.ts.map +1 -0
- package/dist/components/icon/icons/entries/files-multi.d.ts +2 -0
- package/dist/components/icon/icons/entries/files-multi.d.ts.map +1 -0
- package/dist/components/icon/icons/entries/files-stack.d.ts +2 -0
- package/dist/components/icon/icons/entries/files-stack.d.ts.map +1 -0
- package/dist/components/icon/icons/entries/film.d.ts +2 -0
- package/dist/components/icon/icons/entries/film.d.ts.map +1 -0
- package/dist/components/icon/icons/entries/filter-circle.d.ts +2 -0
- package/dist/components/icon/icons/entries/filter-circle.d.ts.map +1 -0
- package/dist/components/icon/icons/entries/filter-single.d.ts +2 -0
- package/dist/components/icon/icons/entries/filter-single.d.ts.map +1 -0
- package/dist/components/icon/icons/entries/filter.d.ts +2 -0
- package/dist/components/icon/icons/entries/filter.d.ts.map +1 -0
- package/dist/components/icon/icons/entries/filtering.d.ts +2 -0
- package/dist/components/icon/icons/entries/filtering.d.ts.map +1 -0
- package/dist/components/icon/icons/entries/fingerprint.d.ts +2 -0
- package/dist/components/icon/icons/entries/fingerprint.d.ts.map +1 -0
- package/dist/components/icon/icons/entries/flag.d.ts +2 -0
- package/dist/components/icon/icons/entries/flag.d.ts.map +1 -0
- package/dist/components/icon/icons/entries/flame-alt.d.ts +2 -0
- package/dist/components/icon/icons/entries/flame-alt.d.ts.map +1 -0
- package/dist/components/icon/icons/entries/flame.d.ts +2 -0
- package/dist/components/icon/icons/entries/flame.d.ts.map +1 -0
- package/dist/components/icon/icons/entries/flip-view.d.ts +2 -0
- package/dist/components/icon/icons/entries/flip-view.d.ts.map +1 -0
- package/dist/components/icon/icons/entries/floppy.d.ts +2 -0
- package/dist/components/icon/icons/entries/floppy.d.ts.map +1 -0
- package/dist/components/icon/icons/entries/folder-add.d.ts +2 -0
- package/dist/components/icon/icons/entries/folder-add.d.ts.map +1 -0
- package/dist/components/icon/icons/entries/folder-closed.d.ts +2 -0
- package/dist/components/icon/icons/entries/folder-closed.d.ts.map +1 -0
- package/dist/components/icon/icons/entries/folder-minus.d.ts +2 -0
- package/dist/components/icon/icons/entries/folder-minus.d.ts.map +1 -0
- package/dist/components/icon/icons/entries/folder-open.d.ts +2 -0
- package/dist/components/icon/icons/entries/folder-open.d.ts.map +1 -0
- package/dist/components/icon/icons/entries/fork-git.d.ts +2 -0
- package/dist/components/icon/icons/entries/fork-git.d.ts.map +1 -0
- package/dist/components/icon/icons/entries/forward.d.ts +2 -0
- package/dist/components/icon/icons/entries/forward.d.ts.map +1 -0
- package/dist/components/icon/icons/entries/frame.d.ts +2 -0
- package/dist/components/icon/icons/entries/frame.d.ts.map +1 -0
- package/dist/components/icon/icons/entries/fullscreen.d.ts +2 -0
- package/dist/components/icon/icons/entries/fullscreen.d.ts.map +1 -0
- package/dist/components/icon/icons/entries/funnel.d.ts +2 -0
- package/dist/components/icon/icons/entries/funnel.d.ts.map +1 -0
- package/dist/components/icon/icons/entries/gauge.d.ts +2 -0
- package/dist/components/icon/icons/entries/gauge.d.ts.map +1 -0
- package/dist/components/icon/icons/entries/gift.d.ts +2 -0
- package/dist/components/icon/icons/entries/gift.d.ts.map +1 -0
- package/dist/components/icon/icons/entries/globe.d.ts +2 -0
- package/dist/components/icon/icons/entries/globe.d.ts.map +1 -0
- package/dist/components/icon/icons/entries/gps.d.ts +2 -0
- package/dist/components/icon/icons/entries/gps.d.ts.map +1 -0
- package/dist/components/icon/icons/entries/grab.d.ts +2 -0
- package/dist/components/icon/icons/entries/grab.d.ts.map +1 -0
- package/dist/components/icon/icons/entries/graph-bar.d.ts +2 -0
- package/dist/components/icon/icons/entries/graph-bar.d.ts.map +1 -0
- package/dist/components/icon/icons/entries/graph-box.d.ts +2 -0
- package/dist/components/icon/icons/entries/graph-box.d.ts.map +1 -0
- package/dist/components/icon/icons/entries/graph-increase.d.ts +2 -0
- package/dist/components/icon/icons/entries/graph-increase.d.ts.map +1 -0
- package/dist/components/icon/icons/entries/grid-circles-add.d.ts +2 -0
- package/dist/components/icon/icons/entries/grid-circles-add.d.ts.map +1 -0
- package/dist/components/icon/icons/entries/grid-circles.d.ts +2 -0
- package/dist/components/icon/icons/entries/grid-circles.d.ts.map +1 -0
- package/dist/components/icon/icons/entries/grid-small.d.ts +2 -0
- package/dist/components/icon/icons/entries/grid-small.d.ts.map +1 -0
- package/dist/components/icon/icons/entries/grid-squares-add.d.ts +2 -0
- package/dist/components/icon/icons/entries/grid-squares-add.d.ts.map +1 -0
- package/dist/components/icon/icons/entries/grid-squares.d.ts +2 -0
- package/dist/components/icon/icons/entries/grid-squares.d.ts.map +1 -0
- package/dist/components/icon/icons/entries/grid.d.ts +2 -0
- package/dist/components/icon/icons/entries/grid.d.ts.map +1 -0
- package/dist/components/icon/icons/entries/hand.d.ts +2 -0
- package/dist/components/icon/icons/entries/hand.d.ts.map +1 -0
- package/dist/components/icon/icons/entries/harddrive.d.ts +2 -0
- package/dist/components/icon/icons/entries/harddrive.d.ts.map +1 -0
- package/dist/components/icon/icons/entries/hash.d.ts +2 -0
- package/dist/components/icon/icons/entries/hash.d.ts.map +1 -0
- package/dist/components/icon/icons/entries/heart-rate.d.ts +2 -0
- package/dist/components/icon/icons/entries/heart-rate.d.ts.map +1 -0
- package/dist/components/icon/icons/entries/heart-remove.d.ts +2 -0
- package/dist/components/icon/icons/entries/heart-remove.d.ts.map +1 -0
- package/dist/components/icon/icons/entries/heart.d.ts +2 -0
- package/dist/components/icon/icons/entries/heart.d.ts.map +1 -0
- package/dist/components/icon/icons/entries/height.d.ts +2 -0
- package/dist/components/icon/icons/entries/height.d.ts.map +1 -0
- package/dist/components/icon/icons/entries/hierarchy.d.ts +2 -0
- package/dist/components/icon/icons/entries/hierarchy.d.ts.map +1 -0
- package/dist/components/icon/icons/entries/home-alt.d.ts +2 -0
- package/dist/components/icon/icons/entries/home-alt.d.ts.map +1 -0
- package/dist/components/icon/icons/entries/home-check.d.ts +2 -0
- package/dist/components/icon/icons/entries/home-check.d.ts.map +1 -0
- package/dist/components/icon/icons/entries/home-door.d.ts +2 -0
- package/dist/components/icon/icons/entries/home-door.d.ts.map +1 -0
- package/dist/components/icon/icons/entries/home.d.ts +2 -0
- package/dist/components/icon/icons/entries/home.d.ts.map +1 -0
- package/dist/components/icon/icons/entries/import.d.ts +2 -0
- package/dist/components/icon/icons/entries/import.d.ts.map +1 -0
- package/dist/components/icon/icons/entries/inbox-alt.d.ts +2 -0
- package/dist/components/icon/icons/entries/inbox-alt.d.ts.map +1 -0
- package/dist/components/icon/icons/entries/inbox.d.ts +2 -0
- package/dist/components/icon/icons/entries/inbox.d.ts.map +1 -0
- package/dist/components/icon/icons/entries/info-circle.d.ts +2 -0
- package/dist/components/icon/icons/entries/info-circle.d.ts.map +1 -0
- package/dist/components/icon/icons/entries/iphone-landscape.d.ts +2 -0
- package/dist/components/icon/icons/entries/iphone-landscape.d.ts.map +1 -0
- package/dist/components/icon/icons/entries/iphone-portrait.d.ts +2 -0
- package/dist/components/icon/icons/entries/iphone-portrait.d.ts.map +1 -0
- package/dist/components/icon/icons/entries/jump-backward.d.ts +2 -0
- package/dist/components/icon/icons/entries/jump-backward.d.ts.map +1 -0
- package/dist/components/icon/icons/entries/jump-forward.d.ts +2 -0
- package/dist/components/icon/icons/entries/jump-forward.d.ts.map +1 -0
- package/dist/components/icon/icons/entries/jump-left.d.ts +2 -0
- package/dist/components/icon/icons/entries/jump-left.d.ts.map +1 -0
- package/dist/components/icon/icons/entries/jump-right.d.ts +2 -0
- package/dist/components/icon/icons/entries/jump-right.d.ts.map +1 -0
- package/dist/components/icon/icons/entries/keyboard.d.ts +2 -0
- package/dist/components/icon/icons/entries/keyboard.d.ts.map +1 -0
- package/dist/components/icon/icons/entries/laptop.d.ts +2 -0
- package/dist/components/icon/icons/entries/laptop.d.ts.map +1 -0
- package/dist/components/icon/icons/entries/lightbulb-on.d.ts +2 -0
- package/dist/components/icon/icons/entries/lightbulb-on.d.ts.map +1 -0
- package/dist/components/icon/icons/entries/lightbulb.d.ts +2 -0
- package/dist/components/icon/icons/entries/lightbulb.d.ts.map +1 -0
- package/dist/components/icon/icons/entries/lightning-alt.d.ts +2 -0
- package/dist/components/icon/icons/entries/lightning-alt.d.ts.map +1 -0
- package/dist/components/icon/icons/entries/lightning.d.ts +2 -0
- package/dist/components/icon/icons/entries/lightning.d.ts.map +1 -0
- package/dist/components/icon/icons/entries/lineweight.d.ts +2 -0
- package/dist/components/icon/icons/entries/lineweight.d.ts.map +1 -0
- package/dist/components/icon/icons/entries/link-alt.d.ts +2 -0
- package/dist/components/icon/icons/entries/link-alt.d.ts.map +1 -0
- package/dist/components/icon/icons/entries/link-broken.d.ts +2 -0
- package/dist/components/icon/icons/entries/link-broken.d.ts.map +1 -0
- package/dist/components/icon/icons/entries/link-horizontal.d.ts +2 -0
- package/dist/components/icon/icons/entries/link-horizontal.d.ts.map +1 -0
- package/dist/components/icon/icons/entries/link-vertical.d.ts +2 -0
- package/dist/components/icon/icons/entries/link-vertical.d.ts.map +1 -0
- package/dist/components/icon/icons/entries/link.d.ts +2 -0
- package/dist/components/icon/icons/entries/link.d.ts.map +1 -0
- package/dist/components/icon/icons/entries/list-add.d.ts +2 -0
- package/dist/components/icon/icons/entries/list-add.d.ts.map +1 -0
- package/dist/components/icon/icons/entries/list-numbered.d.ts +2 -0
- package/dist/components/icon/icons/entries/list-numbered.d.ts.map +1 -0
- package/dist/components/icon/icons/entries/list.d.ts +2 -0
- package/dist/components/icon/icons/entries/list.d.ts.map +1 -0
- package/dist/components/icon/icons/entries/loader.d.ts +2 -0
- package/dist/components/icon/icons/entries/loader.d.ts.map +1 -0
- package/dist/components/icon/icons/entries/location.d.ts +2 -0
- package/dist/components/icon/icons/entries/location.d.ts.map +1 -0
- package/dist/components/icon/icons/entries/lock-open.d.ts +2 -0
- package/dist/components/icon/icons/entries/lock-open.d.ts.map +1 -0
- package/dist/components/icon/icons/entries/lock.d.ts +2 -0
- package/dist/components/icon/icons/entries/lock.d.ts.map +1 -0
- package/dist/components/icon/icons/entries/mail-add.d.ts +2 -0
- package/dist/components/icon/icons/entries/mail-add.d.ts.map +1 -0
- package/dist/components/icon/icons/entries/mail-delete.d.ts +2 -0
- package/dist/components/icon/icons/entries/mail-delete.d.ts.map +1 -0
- package/dist/components/icon/icons/entries/mail-minus.d.ts +2 -0
- package/dist/components/icon/icons/entries/mail-minus.d.ts.map +1 -0
- package/dist/components/icon/icons/entries/mail-new.d.ts +2 -0
- package/dist/components/icon/icons/entries/mail-new.d.ts.map +1 -0
- package/dist/components/icon/icons/entries/mail-open.d.ts +2 -0
- package/dist/components/icon/icons/entries/mail-open.d.ts.map +1 -0
- package/dist/components/icon/icons/entries/mail-remove.d.ts +2 -0
- package/dist/components/icon/icons/entries/mail-remove.d.ts.map +1 -0
- package/dist/components/icon/icons/entries/mail.d.ts +2 -0
- package/dist/components/icon/icons/entries/mail.d.ts.map +1 -0
- package/dist/components/icon/icons/entries/marquee.d.ts +2 -0
- package/dist/components/icon/icons/entries/marquee.d.ts.map +1 -0
- package/dist/components/icon/icons/entries/maximise.d.ts +2 -0
- package/dist/components/icon/icons/entries/maximise.d.ts.map +1 -0
- package/dist/components/icon/icons/entries/menu-hamburger.d.ts +2 -0
- package/dist/components/icon/icons/entries/menu-hamburger.d.ts.map +1 -0
- package/dist/components/icon/icons/entries/menu-horizontal.d.ts +2 -0
- package/dist/components/icon/icons/entries/menu-horizontal.d.ts.map +1 -0
- package/dist/components/icon/icons/entries/menu-vertical.d.ts +2 -0
- package/dist/components/icon/icons/entries/menu-vertical.d.ts.map +1 -0
- package/dist/components/icon/icons/entries/message-writing.d.ts +2 -0
- package/dist/components/icon/icons/entries/message-writing.d.ts.map +1 -0
- package/dist/components/icon/icons/entries/message.d.ts +2 -0
- package/dist/components/icon/icons/entries/message.d.ts.map +1 -0
- package/dist/components/icon/icons/entries/microphone-disabled.d.ts +2 -0
- package/dist/components/icon/icons/entries/microphone-disabled.d.ts.map +1 -0
- package/dist/components/icon/icons/entries/microphone-muted.d.ts +2 -0
- package/dist/components/icon/icons/entries/microphone-muted.d.ts.map +1 -0
- package/dist/components/icon/icons/entries/microphone.d.ts +2 -0
- package/dist/components/icon/icons/entries/microphone.d.ts.map +1 -0
- package/dist/components/icon/icons/entries/midpoint.d.ts +2 -0
- package/dist/components/icon/icons/entries/midpoint.d.ts.map +1 -0
- package/dist/components/icon/icons/entries/mini-player.d.ts +2 -0
- package/dist/components/icon/icons/entries/mini-player.d.ts.map +1 -0
- package/dist/components/icon/icons/entries/minimise.d.ts +2 -0
- package/dist/components/icon/icons/entries/minimise.d.ts.map +1 -0
- package/dist/components/icon/icons/entries/minus-circle.d.ts +2 -0
- package/dist/components/icon/icons/entries/minus-circle.d.ts.map +1 -0
- package/dist/components/icon/icons/entries/minus.d.ts +2 -0
- package/dist/components/icon/icons/entries/minus.d.ts.map +1 -0
- package/dist/components/icon/icons/entries/moon.d.ts +2 -0
- package/dist/components/icon/icons/entries/moon.d.ts.map +1 -0
- package/dist/components/icon/icons/entries/move.d.ts +2 -0
- package/dist/components/icon/icons/entries/move.d.ts.map +1 -0
- package/dist/components/icon/icons/entries/newspaper.d.ts +2 -0
- package/dist/components/icon/icons/entries/newspaper.d.ts.map +1 -0
- package/dist/components/icon/icons/entries/no-sign.d.ts +2 -0
- package/dist/components/icon/icons/entries/no-sign.d.ts.map +1 -0
- package/dist/components/icon/icons/entries/notebook.d.ts +2 -0
- package/dist/components/icon/icons/entries/notebook.d.ts.map +1 -0
- package/dist/components/icon/icons/entries/notification.d.ts +2 -0
- package/dist/components/icon/icons/entries/notification.d.ts.map +1 -0
- package/dist/components/icon/icons/entries/nut.d.ts +2 -0
- package/dist/components/icon/icons/entries/nut.d.ts.map +1 -0
- package/dist/components/icon/icons/entries/pages.d.ts +2 -0
- package/dist/components/icon/icons/entries/pages.d.ts.map +1 -0
- package/dist/components/icon/icons/entries/panel-bottom.d.ts +2 -0
- package/dist/components/icon/icons/entries/panel-bottom.d.ts.map +1 -0
- package/dist/components/icon/icons/entries/panel-center.d.ts +2 -0
- package/dist/components/icon/icons/entries/panel-center.d.ts.map +1 -0
- package/dist/components/icon/icons/entries/panel-left.d.ts +2 -0
- package/dist/components/icon/icons/entries/panel-left.d.ts.map +1 -0
- package/dist/components/icon/icons/entries/panel-right.d.ts +2 -0
- package/dist/components/icon/icons/entries/panel-right.d.ts.map +1 -0
- package/dist/components/icon/icons/entries/panel-sectioned.d.ts +2 -0
- package/dist/components/icon/icons/entries/panel-sectioned.d.ts.map +1 -0
- package/dist/components/icon/icons/entries/panel-top.d.ts +2 -0
- package/dist/components/icon/icons/entries/panel-top.d.ts.map +1 -0
- package/dist/components/icon/icons/entries/paper-folded.d.ts +2 -0
- package/dist/components/icon/icons/entries/paper-folded.d.ts.map +1 -0
- package/dist/components/icon/icons/entries/paper-plane-alt.d.ts +2 -0
- package/dist/components/icon/icons/entries/paper-plane-alt.d.ts.map +1 -0
- package/dist/components/icon/icons/entries/paper-plane.d.ts +2 -0
- package/dist/components/icon/icons/entries/paper-plane.d.ts.map +1 -0
- package/dist/components/icon/icons/entries/paper.d.ts +2 -0
- package/dist/components/icon/icons/entries/paper.d.ts.map +1 -0
- package/dist/components/icon/icons/entries/paperclip.d.ts +2 -0
- package/dist/components/icon/icons/entries/paperclip.d.ts.map +1 -0
- package/dist/components/icon/icons/entries/paragraph-center.d.ts +2 -0
- package/dist/components/icon/icons/entries/paragraph-center.d.ts.map +1 -0
- package/dist/components/icon/icons/entries/paragraph-end.d.ts +2 -0
- package/dist/components/icon/icons/entries/paragraph-end.d.ts.map +1 -0
- package/dist/components/icon/icons/entries/paragraph-left.d.ts +2 -0
- package/dist/components/icon/icons/entries/paragraph-left.d.ts.map +1 -0
- package/dist/components/icon/icons/entries/paragraph-right.d.ts +2 -0
- package/dist/components/icon/icons/entries/paragraph-right.d.ts.map +1 -0
- package/dist/components/icon/icons/entries/paragraph-start.d.ts +2 -0
- package/dist/components/icon/icons/entries/paragraph-start.d.ts.map +1 -0
- package/dist/components/icon/icons/entries/pen.d.ts +2 -0
- package/dist/components/icon/icons/entries/pen.d.ts.map +1 -0
- package/dist/components/icon/icons/entries/phone-landscape.d.ts +2 -0
- package/dist/components/icon/icons/entries/phone-landscape.d.ts.map +1 -0
- package/dist/components/icon/icons/entries/phone-portrait.d.ts +2 -0
- package/dist/components/icon/icons/entries/phone-portrait.d.ts.map +1 -0
- package/dist/components/icon/icons/entries/picture.d.ts +2 -0
- package/dist/components/icon/icons/entries/picture.d.ts.map +1 -0
- package/dist/components/icon/icons/entries/pie-half.d.ts +2 -0
- package/dist/components/icon/icons/entries/pie-half.d.ts.map +1 -0
- package/dist/components/icon/icons/entries/pie-quarter.d.ts +2 -0
- package/dist/components/icon/icons/entries/pie-quarter.d.ts.map +1 -0
- package/dist/components/icon/icons/entries/pie-third.d.ts +2 -0
- package/dist/components/icon/icons/entries/pie-third.d.ts.map +1 -0
- package/dist/components/icon/icons/entries/pill.d.ts +2 -0
- package/dist/components/icon/icons/entries/pill.d.ts.map +1 -0
- package/dist/components/icon/icons/entries/play-button.d.ts +2 -0
- package/dist/components/icon/icons/entries/play-button.d.ts.map +1 -0
- package/dist/components/icon/icons/entries/plus-circle.d.ts +2 -0
- package/dist/components/icon/icons/entries/plus-circle.d.ts.map +1 -0
- package/dist/components/icon/icons/entries/plus.d.ts +2 -0
- package/dist/components/icon/icons/entries/plus.d.ts.map +1 -0
- package/dist/components/icon/icons/entries/postcard.d.ts +2 -0
- package/dist/components/icon/icons/entries/postcard.d.ts.map +1 -0
- package/dist/components/icon/icons/entries/printer.d.ts +2 -0
- package/dist/components/icon/icons/entries/printer.d.ts.map +1 -0
- package/dist/components/icon/icons/entries/projector.d.ts +2 -0
- package/dist/components/icon/icons/entries/projector.d.ts.map +1 -0
- package/dist/components/icon/icons/entries/pull-down.d.ts +2 -0
- package/dist/components/icon/icons/entries/pull-down.d.ts.map +1 -0
- package/dist/components/icon/icons/entries/pull-left.d.ts +2 -0
- package/dist/components/icon/icons/entries/pull-left.d.ts.map +1 -0
- package/dist/components/icon/icons/entries/pull-right.d.ts +2 -0
- package/dist/components/icon/icons/entries/pull-right.d.ts.map +1 -0
- package/dist/components/icon/icons/entries/pull-up.d.ts +2 -0
- package/dist/components/icon/icons/entries/pull-up.d.ts.map +1 -0
- package/dist/components/icon/icons/entries/push-down.d.ts +2 -0
- package/dist/components/icon/icons/entries/push-down.d.ts.map +1 -0
- package/dist/components/icon/icons/entries/push-left.d.ts +2 -0
- package/dist/components/icon/icons/entries/push-left.d.ts.map +1 -0
- package/dist/components/icon/icons/entries/push-right.d.ts +2 -0
- package/dist/components/icon/icons/entries/push-right.d.ts.map +1 -0
- package/dist/components/icon/icons/entries/push-up.d.ts +2 -0
- package/dist/components/icon/icons/entries/push-up.d.ts.map +1 -0
- package/dist/components/icon/icons/entries/question-circle.d.ts +2 -0
- package/dist/components/icon/icons/entries/question-circle.d.ts.map +1 -0
- package/dist/components/icon/icons/entries/radio-on.d.ts +2 -0
- package/dist/components/icon/icons/entries/radio-on.d.ts.map +1 -0
- package/dist/components/icon/icons/entries/receipt.d.ts +2 -0
- package/dist/components/icon/icons/entries/receipt.d.ts.map +1 -0
- package/dist/components/icon/icons/entries/record.d.ts +2 -0
- package/dist/components/icon/icons/entries/record.d.ts.map +1 -0
- package/dist/components/icon/icons/entries/redo.d.ts +2 -0
- package/dist/components/icon/icons/entries/redo.d.ts.map +1 -0
- package/dist/components/icon/icons/entries/refresh-alt.d.ts +2 -0
- package/dist/components/icon/icons/entries/refresh-alt.d.ts.map +1 -0
- package/dist/components/icon/icons/entries/refresh.d.ts +2 -0
- package/dist/components/icon/icons/entries/refresh.d.ts.map +1 -0
- package/dist/components/icon/icons/entries/replicate-alt.d.ts +2 -0
- package/dist/components/icon/icons/entries/replicate-alt.d.ts.map +1 -0
- package/dist/components/icon/icons/entries/replicate.d.ts +2 -0
- package/dist/components/icon/icons/entries/replicate.d.ts.map +1 -0
- package/dist/components/icon/icons/entries/reset-alt.d.ts +2 -0
- package/dist/components/icon/icons/entries/reset-alt.d.ts.map +1 -0
- package/dist/components/icon/icons/entries/reset-forward.d.ts +2 -0
- package/dist/components/icon/icons/entries/reset-forward.d.ts.map +1 -0
- package/dist/components/icon/icons/entries/reset-hard.d.ts +2 -0
- package/dist/components/icon/icons/entries/reset-hard.d.ts.map +1 -0
- package/dist/components/icon/icons/entries/reset-temporary.d.ts +2 -0
- package/dist/components/icon/icons/entries/reset-temporary.d.ts.map +1 -0
- package/dist/components/icon/icons/entries/reset.d.ts +2 -0
- package/dist/components/icon/icons/entries/reset.d.ts.map +1 -0
- package/dist/components/icon/icons/entries/retweet.d.ts +2 -0
- package/dist/components/icon/icons/entries/retweet.d.ts.map +1 -0
- package/dist/components/icon/icons/entries/reuse.d.ts +2 -0
- package/dist/components/icon/icons/entries/reuse.d.ts.map +1 -0
- package/dist/components/icon/icons/entries/reverse-alt.d.ts +2 -0
- package/dist/components/icon/icons/entries/reverse-alt.d.ts.map +1 -0
- package/dist/components/icon/icons/entries/reverse.d.ts +2 -0
- package/dist/components/icon/icons/entries/reverse.d.ts.map +1 -0
- package/dist/components/icon/icons/entries/revert.d.ts +2 -0
- package/dist/components/icon/icons/entries/revert.d.ts.map +1 -0
- package/dist/components/icon/icons/entries/rocket.d.ts +2 -0
- package/dist/components/icon/icons/entries/rocket.d.ts.map +1 -0
- package/dist/components/icon/icons/entries/ruler.d.ts +2 -0
- package/dist/components/icon/icons/entries/ruler.d.ts.map +1 -0
- package/dist/components/icon/icons/entries/scale-contract.d.ts +2 -0
- package/dist/components/icon/icons/entries/scale-contract.d.ts.map +1 -0
- package/dist/components/icon/icons/entries/scale-extend.d.ts +2 -0
- package/dist/components/icon/icons/entries/scale-extend.d.ts.map +1 -0
- package/dist/components/icon/icons/entries/scale.d.ts +2 -0
- package/dist/components/icon/icons/entries/scale.d.ts.map +1 -0
- package/dist/components/icon/icons/entries/scalpel.d.ts +2 -0
- package/dist/components/icon/icons/entries/scalpel.d.ts.map +1 -0
- package/dist/components/icon/icons/entries/search.d.ts +2 -0
- package/dist/components/icon/icons/entries/search.d.ts.map +1 -0
- package/dist/components/icon/icons/entries/server.d.ts +2 -0
- package/dist/components/icon/icons/entries/server.d.ts.map +1 -0
- package/dist/components/icon/icons/entries/settings.d.ts +2 -0
- package/dist/components/icon/icons/entries/settings.d.ts.map +1 -0
- package/dist/components/icon/icons/entries/share-alt.d.ts +2 -0
- package/dist/components/icon/icons/entries/share-alt.d.ts.map +1 -0
- package/dist/components/icon/icons/entries/share.d.ts +2 -0
- package/dist/components/icon/icons/entries/share.d.ts.map +1 -0
- package/dist/components/icon/icons/entries/shuffle.d.ts +2 -0
- package/dist/components/icon/icons/entries/shuffle.d.ts.map +1 -0
- package/dist/components/icon/icons/entries/side-menu.d.ts +2 -0
- package/dist/components/icon/icons/entries/side-menu.d.ts.map +1 -0
- package/dist/components/icon/icons/entries/signal-full.d.ts +2 -0
- package/dist/components/icon/icons/entries/signal-full.d.ts.map +1 -0
- package/dist/components/icon/icons/entries/signal-low.d.ts +2 -0
- package/dist/components/icon/icons/entries/signal-low.d.ts.map +1 -0
- package/dist/components/icon/icons/entries/signal-medium.d.ts +2 -0
- package/dist/components/icon/icons/entries/signal-medium.d.ts.map +1 -0
- package/dist/components/icon/icons/entries/signal-none.d.ts +2 -0
- package/dist/components/icon/icons/entries/signal-none.d.ts.map +1 -0
- package/dist/components/icon/icons/entries/slash-backward.d.ts +2 -0
- package/dist/components/icon/icons/entries/slash-backward.d.ts.map +1 -0
- package/dist/components/icon/icons/entries/slash-forward.d.ts +2 -0
- package/dist/components/icon/icons/entries/slash-forward.d.ts.map +1 -0
- package/dist/components/icon/icons/entries/sliders.d.ts +2 -0
- package/dist/components/icon/icons/entries/sliders.d.ts.map +1 -0
- package/dist/components/icon/icons/entries/sort-alt.d.ts +2 -0
- package/dist/components/icon/icons/entries/sort-alt.d.ts.map +1 -0
- package/dist/components/icon/icons/entries/sort.d.ts +2 -0
- package/dist/components/icon/icons/entries/sort.d.ts.map +1 -0
- package/dist/components/icon/icons/entries/speaker.d.ts +2 -0
- package/dist/components/icon/icons/entries/speaker.d.ts.map +1 -0
- package/dist/components/icon/icons/entries/speech-bubble.d.ts +2 -0
- package/dist/components/icon/icons/entries/speech-bubble.d.ts.map +1 -0
- package/dist/components/icon/icons/entries/speech-typing.d.ts +2 -0
- package/dist/components/icon/icons/entries/speech-typing.d.ts.map +1 -0
- package/dist/components/icon/icons/entries/split-three.d.ts +2 -0
- package/dist/components/icon/icons/entries/split-three.d.ts.map +1 -0
- package/dist/components/icon/icons/entries/split.d.ts +2 -0
- package/dist/components/icon/icons/entries/split.d.ts.map +1 -0
- package/dist/components/icon/icons/entries/star.d.ts +2 -0
- package/dist/components/icon/icons/entries/star.d.ts.map +1 -0
- package/dist/components/icon/icons/entries/sun.d.ts +2 -0
- package/dist/components/icon/icons/entries/sun.d.ts.map +1 -0
- package/dist/components/icon/icons/entries/support.d.ts +2 -0
- package/dist/components/icon/icons/entries/support.d.ts.map +1 -0
- package/dist/components/icon/icons/entries/swap.d.ts +2 -0
- package/dist/components/icon/icons/entries/swap.d.ts.map +1 -0
- package/dist/components/icon/icons/entries/switch.d.ts +2 -0
- package/dist/components/icon/icons/entries/switch.d.ts.map +1 -0
- package/dist/components/icon/icons/entries/table-header.d.ts +2 -0
- package/dist/components/icon/icons/entries/table-header.d.ts.map +1 -0
- package/dist/components/icon/icons/entries/table.d.ts +2 -0
- package/dist/components/icon/icons/entries/table.d.ts.map +1 -0
- package/dist/components/icon/icons/entries/tag-milestone.d.ts +2 -0
- package/dist/components/icon/icons/entries/tag-milestone.d.ts.map +1 -0
- package/dist/components/icon/icons/entries/tag.d.ts +2 -0
- package/dist/components/icon/icons/entries/tag.d.ts.map +1 -0
- package/dist/components/icon/icons/entries/tags.d.ts +2 -0
- package/dist/components/icon/icons/entries/tags.d.ts.map +1 -0
- package/dist/components/icon/icons/entries/target.d.ts +2 -0
- package/dist/components/icon/icons/entries/target.d.ts.map +1 -0
- package/dist/components/icon/icons/entries/terminal.d.ts +2 -0
- package/dist/components/icon/icons/entries/terminal.d.ts.map +1 -0
- package/dist/components/icon/icons/entries/thread.d.ts +2 -0
- package/dist/components/icon/icons/entries/thread.d.ts.map +1 -0
- package/dist/components/icon/icons/entries/thumbs-down.d.ts +2 -0
- package/dist/components/icon/icons/entries/thumbs-down.d.ts.map +1 -0
- package/dist/components/icon/icons/entries/thumbs-up.d.ts +2 -0
- package/dist/components/icon/icons/entries/thumbs-up.d.ts.map +1 -0
- package/dist/components/icon/icons/entries/ticket.d.ts +2 -0
- package/dist/components/icon/icons/entries/ticket.d.ts.map +1 -0
- package/dist/components/icon/icons/entries/timeline.d.ts +2 -0
- package/dist/components/icon/icons/entries/timeline.d.ts.map +1 -0
- package/dist/components/icon/icons/entries/todo.d.ts +2 -0
- package/dist/components/icon/icons/entries/todo.d.ts.map +1 -0
- package/dist/components/icon/icons/entries/toggle.d.ts +2 -0
- package/dist/components/icon/icons/entries/toggle.d.ts.map +1 -0
- package/dist/components/icon/icons/entries/toggles.d.ts +2 -0
- package/dist/components/icon/icons/entries/toggles.d.ts.map +1 -0
- package/dist/components/icon/icons/entries/translate.d.ts +2 -0
- package/dist/components/icon/icons/entries/translate.d.ts.map +1 -0
- package/dist/components/icon/icons/entries/trash-alt.d.ts +2 -0
- package/dist/components/icon/icons/entries/trash-alt.d.ts.map +1 -0
- package/dist/components/icon/icons/entries/trash.d.ts +2 -0
- package/dist/components/icon/icons/entries/trash.d.ts.map +1 -0
- package/dist/components/icon/icons/entries/trophy.d.ts +2 -0
- package/dist/components/icon/icons/entries/trophy.d.ts.map +1 -0
- package/dist/components/icon/icons/entries/tv-mode.d.ts +2 -0
- package/dist/components/icon/icons/entries/tv-mode.d.ts.map +1 -0
- package/dist/components/icon/icons/entries/unarchive.d.ts +2 -0
- package/dist/components/icon/icons/entries/unarchive.d.ts.map +1 -0
- package/dist/components/icon/icons/entries/undo-history.d.ts +2 -0
- package/dist/components/icon/icons/entries/undo-history.d.ts.map +1 -0
- package/dist/components/icon/icons/entries/undo.d.ts +2 -0
- package/dist/components/icon/icons/entries/undo.d.ts.map +1 -0
- package/dist/components/icon/icons/entries/unlink-horizontal.d.ts +2 -0
- package/dist/components/icon/icons/entries/unlink-horizontal.d.ts.map +1 -0
- package/dist/components/icon/icons/entries/unlink-vertical.d.ts +2 -0
- package/dist/components/icon/icons/entries/unlink-vertical.d.ts.map +1 -0
- package/dist/components/icon/icons/entries/upload-alt.d.ts +2 -0
- package/dist/components/icon/icons/entries/upload-alt.d.ts.map +1 -0
- package/dist/components/icon/icons/entries/upload.d.ts +2 -0
- package/dist/components/icon/icons/entries/upload.d.ts.map +1 -0
- package/dist/components/icon/icons/entries/upward.d.ts +2 -0
- package/dist/components/icon/icons/entries/upward.d.ts.map +1 -0
- package/dist/components/icon/icons/entries/user-add.d.ts +2 -0
- package/dist/components/icon/icons/entries/user-add.d.ts.map +1 -0
- package/dist/components/icon/icons/entries/user-circle.d.ts +2 -0
- package/dist/components/icon/icons/entries/user-circle.d.ts.map +1 -0
- package/dist/components/icon/icons/entries/user-male-circle.d.ts +2 -0
- package/dist/components/icon/icons/entries/user-male-circle.d.ts.map +1 -0
- package/dist/components/icon/icons/entries/user-male.d.ts +2 -0
- package/dist/components/icon/icons/entries/user-male.d.ts.map +1 -0
- package/dist/components/icon/icons/entries/user-remove.d.ts +2 -0
- package/dist/components/icon/icons/entries/user-remove.d.ts.map +1 -0
- package/dist/components/icon/icons/entries/user.d.ts +2 -0
- package/dist/components/icon/icons/entries/user.d.ts.map +1 -0
- package/dist/components/icon/icons/entries/users.d.ts +2 -0
- package/dist/components/icon/icons/entries/users.d.ts.map +1 -0
- package/dist/components/icon/icons/entries/venn.d.ts +2 -0
- package/dist/components/icon/icons/entries/venn.d.ts.map +1 -0
- package/dist/components/icon/icons/entries/version.d.ts +2 -0
- package/dist/components/icon/icons/entries/version.d.ts.map +1 -0
- package/dist/components/icon/icons/entries/versions.d.ts +2 -0
- package/dist/components/icon/icons/entries/versions.d.ts.map +1 -0
- package/dist/components/icon/icons/entries/video.d.ts +2 -0
- package/dist/components/icon/icons/entries/video.d.ts.map +1 -0
- package/dist/components/icon/icons/entries/volume-0.d.ts +2 -0
- package/dist/components/icon/icons/entries/volume-0.d.ts.map +1 -0
- package/dist/components/icon/icons/entries/volume-add.d.ts +2 -0
- package/dist/components/icon/icons/entries/volume-add.d.ts.map +1 -0
- package/dist/components/icon/icons/entries/volume-disabled.d.ts +2 -0
- package/dist/components/icon/icons/entries/volume-disabled.d.ts.map +1 -0
- package/dist/components/icon/icons/entries/volume-high.d.ts +2 -0
- package/dist/components/icon/icons/entries/volume-high.d.ts.map +1 -0
- package/dist/components/icon/icons/entries/volume-low.d.ts +2 -0
- package/dist/components/icon/icons/entries/volume-low.d.ts.map +1 -0
- package/dist/components/icon/icons/entries/volume-minus.d.ts +2 -0
- package/dist/components/icon/icons/entries/volume-minus.d.ts.map +1 -0
- package/dist/components/icon/icons/entries/volume-muted.d.ts +2 -0
- package/dist/components/icon/icons/entries/volume-muted.d.ts.map +1 -0
- package/dist/components/icon/icons/entries/wallet.d.ts +2 -0
- package/dist/components/icon/icons/entries/wallet.d.ts.map +1 -0
- package/dist/components/icon/icons/entries/warning-circle.d.ts +2 -0
- package/dist/components/icon/icons/entries/warning-circle.d.ts.map +1 -0
- package/dist/components/icon/icons/entries/warning-hex.d.ts +2 -0
- package/dist/components/icon/icons/entries/warning-hex.d.ts.map +1 -0
- package/dist/components/icon/icons/entries/warning-triangle.d.ts +2 -0
- package/dist/components/icon/icons/entries/warning-triangle.d.ts.map +1 -0
- package/dist/components/icon/icons/entries/waves.d.ts +2 -0
- package/dist/components/icon/icons/entries/waves.d.ts.map +1 -0
- package/dist/components/icon/icons/entries/width.d.ts +2 -0
- package/dist/components/icon/icons/entries/width.d.ts.map +1 -0
- package/dist/components/icon/icons/entries/wifi-error.d.ts +2 -0
- package/dist/components/icon/icons/entries/wifi-error.d.ts.map +1 -0
- package/dist/components/icon/icons/entries/wifi-none.d.ts +2 -0
- package/dist/components/icon/icons/entries/wifi-none.d.ts.map +1 -0
- package/dist/components/icon/icons/entries/wifi.d.ts +2 -0
- package/dist/components/icon/icons/entries/wifi.d.ts.map +1 -0
- package/dist/components/icon/icons/entries/window-collapse-left.d.ts +2 -0
- package/dist/components/icon/icons/entries/window-collapse-left.d.ts.map +1 -0
- package/dist/components/icon/icons/entries/window-collapse-right.d.ts +2 -0
- package/dist/components/icon/icons/entries/window-collapse-right.d.ts.map +1 -0
- package/dist/components/icon/icons/entries/window-content.d.ts +2 -0
- package/dist/components/icon/icons/entries/window-content.d.ts.map +1 -0
- package/dist/components/icon/icons/entries/window.d.ts +2 -0
- package/dist/components/icon/icons/entries/window.d.ts.map +1 -0
- package/dist/components/icon/icons/entries/wrap-back.d.ts +2 -0
- package/dist/components/icon/icons/entries/wrap-back.d.ts.map +1 -0
- package/dist/components/icon/icons/entries/wrap-forward.d.ts +2 -0
- package/dist/components/icon/icons/entries/wrap-forward.d.ts.map +1 -0
- package/dist/components/icon/icons/entries/write.d.ts +2 -0
- package/dist/components/icon/icons/entries/write.d.ts.map +1 -0
- package/dist/components/icon/icons/entries/zoom-cancel.d.ts +2 -0
- package/dist/components/icon/icons/entries/zoom-cancel.d.ts.map +1 -0
- package/dist/components/icon/icons/entries/zoom-in.d.ts +2 -0
- package/dist/components/icon/icons/entries/zoom-in.d.ts.map +1 -0
- package/dist/components/icon/icons/entries/zoom-out.d.ts +2 -0
- package/dist/components/icon/icons/entries/zoom-out.d.ts.map +1 -0
- package/dist/components/icon/icons/entries/zoom-reset.d.ts +2 -0
- package/dist/components/icon/icons/entries/zoom-reset.d.ts.map +1 -0
- package/dist/components/icon/icons/{registry.generated.d.ts → icon-name.generated.d.ts} +1 -24
- package/dist/components/icon/icons/icon-name.generated.d.ts.map +1 -0
- package/dist/components/icon.js +31 -478
- package/dist/components/icon.js.map +1 -1
- package/dist/components/index.d.ts +1 -0
- package/dist/components/index.d.ts.map +1 -1
- package/dist/components/notification/notification.d.ts +4 -0
- package/dist/components/notification/notification.d.ts.map +1 -1
- package/dist/components/notification.js.map +1 -1
- package/dist/components/popover/popover.d.ts +1 -0
- package/dist/components/popover/popover.d.ts.map +1 -1
- package/dist/components/popover.js.map +1 -1
- package/dist/components/table/table.d.ts +2 -0
- package/dist/components/table/table.d.ts.map +1 -1
- package/dist/components/table.js.map +1 -1
- package/dist/components/tabs/tabs.d.ts +2 -1
- package/dist/components/tabs/tabs.d.ts.map +1 -1
- package/dist/components/tabs.js.map +1 -1
- package/dist/components/tag/tag.d.ts +1 -0
- package/dist/components/tag/tag.d.ts.map +1 -1
- package/dist/components/tag.js.map +1 -1
- package/dist/components/tree/tree.d.ts +1 -0
- package/dist/components/tree/tree.d.ts.map +1 -1
- package/dist/components/tree.js.map +1 -1
- package/dist/icons/airplay.js +4 -0
- package/dist/icons/airplay.js.map +1 -0
- package/dist/icons/alarm-clock.js +4 -0
- package/dist/icons/alarm-clock.js.map +1 -0
- package/dist/icons/align-horizontal.js +4 -0
- package/dist/icons/align-horizontal.js.map +1 -0
- package/dist/icons/align-vertical.js +4 -0
- package/dist/icons/align-vertical.js.map +1 -0
- package/dist/icons/angle.js +4 -0
- package/dist/icons/angle.js.map +1 -0
- package/dist/icons/archive.js +4 -0
- package/dist/icons/archive.js.map +1 -0
- package/dist/icons/arrow-bottom-left.js +4 -0
- package/dist/icons/arrow-bottom-left.js.map +1 -0
- package/dist/icons/arrow-bottom-right.js +4 -0
- package/dist/icons/arrow-bottom-right.js.map +1 -0
- package/dist/icons/arrow-down-circle.js +4 -0
- package/dist/icons/arrow-down-circle.js.map +1 -0
- package/dist/icons/arrow-down.js +4 -0
- package/dist/icons/arrow-down.js.map +1 -0
- package/dist/icons/arrow-left-circle.js +4 -0
- package/dist/icons/arrow-left-circle.js.map +1 -0
- package/dist/icons/arrow-left.js +4 -0
- package/dist/icons/arrow-left.js.map +1 -0
- package/dist/icons/arrow-right-circle.js +4 -0
- package/dist/icons/arrow-right-circle.js.map +1 -0
- package/dist/icons/arrow-right.js +4 -0
- package/dist/icons/arrow-right.js.map +1 -0
- package/dist/icons/arrow-top-left.js +4 -0
- package/dist/icons/arrow-top-left.js.map +1 -0
- package/dist/icons/arrow-top-right.js +4 -0
- package/dist/icons/arrow-top-right.js.map +1 -0
- package/dist/icons/arrow-up-circle.js +4 -0
- package/dist/icons/arrow-up-circle.js.map +1 -0
- package/dist/icons/arrow-up.js +4 -0
- package/dist/icons/arrow-up.js.map +1 -0
- package/dist/icons/audio-wave.js +4 -0
- package/dist/icons/audio-wave.js.map +1 -0
- package/dist/icons/backspace.js +4 -0
- package/dist/icons/backspace.js.map +1 -0
- package/dist/icons/backward.js +4 -0
- package/dist/icons/backward.js.map +1 -0
- package/dist/icons/bag.js +4 -0
- package/dist/icons/bag.js.map +1 -0
- package/dist/icons/battery-75.js +4 -0
- package/dist/icons/battery-75.js.map +1 -0
- package/dist/icons/battery-charging.js +4 -0
- package/dist/icons/battery-charging.js.map +1 -0
- package/dist/icons/battery-empty.js +4 -0
- package/dist/icons/battery-empty.js.map +1 -0
- package/dist/icons/battery-full.js +4 -0
- package/dist/icons/battery-full.js.map +1 -0
- package/dist/icons/battery-half.js +4 -0
- package/dist/icons/battery-half.js.map +1 -0
- package/dist/icons/battery-low.js +4 -0
- package/dist/icons/battery-low.js.map +1 -0
- package/dist/icons/bell-disabled.js +4 -0
- package/dist/icons/bell-disabled.js.map +1 -0
- package/dist/icons/bell-ringing.js +4 -0
- package/dist/icons/bell-ringing.js.map +1 -0
- package/dist/icons/bell-snooze.js +4 -0
- package/dist/icons/bell-snooze.js.map +1 -0
- package/dist/icons/bell.js +4 -0
- package/dist/icons/bell.js.map +1 -0
- package/dist/icons/bluetooth.js +4 -0
- package/dist/icons/bluetooth.js.map +1 -0
- package/dist/icons/book-closed.js +4 -0
- package/dist/icons/book-closed.js.map +1 -0
- package/dist/icons/book-text.js +4 -0
- package/dist/icons/book-text.js.map +1 -0
- package/dist/icons/book.js +4 -0
- package/dist/icons/book.js.map +1 -0
- package/dist/icons/bookmark-book.js +4 -0
- package/dist/icons/bookmark-book.js.map +1 -0
- package/dist/icons/bookmark.js +4 -0
- package/dist/icons/bookmark.js.map +1 -0
- package/dist/icons/box-add.js +4 -0
- package/dist/icons/box-add.js.map +1 -0
- package/dist/icons/box-download.js +4 -0
- package/dist/icons/box-download.js.map +1 -0
- package/dist/icons/box-open.js +4 -0
- package/dist/icons/box-open.js.map +1 -0
- package/dist/icons/box-remove.js +4 -0
- package/dist/icons/box-remove.js.map +1 -0
- package/dist/icons/box.js +4 -0
- package/dist/icons/box.js.map +1 -0
- package/dist/icons/boxes.js +4 -0
- package/dist/icons/boxes.js.map +1 -0
- package/dist/icons/branch.js +4 -0
- package/dist/icons/branch.js.map +1 -0
- package/dist/icons/briefcase.js +4 -0
- package/dist/icons/briefcase.js.map +1 -0
- package/dist/icons/browser-alt.js +4 -0
- package/dist/icons/browser-alt.js.map +1 -0
- package/dist/icons/browser.js +4 -0
- package/dist/icons/browser.js.map +1 -0
- package/dist/icons/button-add.js +4 -0
- package/dist/icons/button-add.js.map +1 -0
- package/dist/icons/button-minus.js +4 -0
- package/dist/icons/button-minus.js.map +1 -0
- package/dist/icons/calculator.js +4 -0
- package/dist/icons/calculator.js.map +1 -0
- package/dist/icons/calendar-add.js +4 -0
- package/dist/icons/calendar-add.js.map +1 -0
- package/dist/icons/calendar-date.js +4 -0
- package/dist/icons/calendar-date.js.map +1 -0
- package/dist/icons/calendar-day.js +4 -0
- package/dist/icons/calendar-day.js.map +1 -0
- package/dist/icons/calendar-days.js +4 -0
- package/dist/icons/calendar-days.js.map +1 -0
- package/dist/icons/calendar-last-day.js +4 -0
- package/dist/icons/calendar-last-day.js.map +1 -0
- package/dist/icons/calendar-month.js +4 -0
- package/dist/icons/calendar-month.js.map +1 -0
- package/dist/icons/calendar-move.js +4 -0
- package/dist/icons/calendar-move.js.map +1 -0
- package/dist/icons/calendar-remove.js +4 -0
- package/dist/icons/calendar-remove.js.map +1 -0
- package/dist/icons/calendar-split.js +4 -0
- package/dist/icons/calendar-split.js.map +1 -0
- package/dist/icons/calendar-week.js +4 -0
- package/dist/icons/calendar-week.js.map +1 -0
- package/dist/icons/calendar.js +4 -0
- package/dist/icons/calendar.js.map +1 -0
- package/dist/icons/camera-alt.js +4 -0
- package/dist/icons/camera-alt.js.map +1 -0
- package/dist/icons/camera-noflash-alt.js +4 -0
- package/dist/icons/camera-noflash-alt.js.map +1 -0
- package/dist/icons/camera-noflash.js +4 -0
- package/dist/icons/camera-noflash.js.map +1 -0
- package/dist/icons/camera.js +4 -0
- package/dist/icons/camera.js.map +1 -0
- package/dist/icons/capture.js +4 -0
- package/dist/icons/capture.js.map +1 -0
- package/dist/icons/card-timeline.js +4 -0
- package/dist/icons/card-timeline.js.map +1 -0
- package/dist/icons/card-view.js +4 -0
- package/dist/icons/card-view.js.map +1 -0
- package/dist/icons/carousel.js +4 -0
- package/dist/icons/carousel.js.map +1 -0
- package/dist/icons/cart.js +4 -0
- package/dist/icons/cart.js.map +1 -0
- package/dist/icons/cast.js +4 -0
- package/dist/icons/cast.js.map +1 -0
- package/dist/icons/chain.js +4 -0
- package/dist/icons/chain.js.map +1 -0
- package/dist/icons/chat-add.js +4 -0
- package/dist/icons/chat-add.js.map +1 -0
- package/dist/icons/check-circle-outside.js +4 -0
- package/dist/icons/check-circle-outside.js.map +1 -0
- package/dist/icons/check-circle.js +4 -0
- package/dist/icons/check-circle.js.map +1 -0
- package/dist/icons/check.js +4 -0
- package/dist/icons/check.js.map +1 -0
- package/dist/icons/checkbox-checked.js +4 -0
- package/dist/icons/checkbox-checked.js.map +1 -0
- package/dist/icons/checkbox-empty.js +4 -0
- package/dist/icons/checkbox-empty.js.map +1 -0
- package/dist/icons/chevron-close.js +4 -0
- package/dist/icons/chevron-close.js.map +1 -0
- package/dist/icons/chevron-down-circle.js +4 -0
- package/dist/icons/chevron-down-circle.js.map +1 -0
- package/dist/icons/chevron-down-double.js +4 -0
- package/dist/icons/chevron-down-double.js.map +1 -0
- package/dist/icons/chevron-down.js +4 -0
- package/dist/icons/chevron-down.js.map +1 -0
- package/dist/icons/chevron-left-circle.js +4 -0
- package/dist/icons/chevron-left-circle.js.map +1 -0
- package/dist/icons/chevron-left-double.js +4 -0
- package/dist/icons/chevron-left-double.js.map +1 -0
- package/dist/icons/chevron-left.js +4 -0
- package/dist/icons/chevron-left.js.map +1 -0
- package/dist/icons/chevron-open.js +4 -0
- package/dist/icons/chevron-open.js.map +1 -0
- package/dist/icons/chevron-right-circle.js +4 -0
- package/dist/icons/chevron-right-circle.js.map +1 -0
- package/dist/icons/chevron-right-double.js +4 -0
- package/dist/icons/chevron-right-double.js.map +1 -0
- package/dist/icons/chevron-right.js +4 -0
- package/dist/icons/chevron-right.js.map +1 -0
- package/dist/icons/chevron-up-circle.js +4 -0
- package/dist/icons/chevron-up-circle.js.map +1 -0
- package/dist/icons/chevron-up-double.js +4 -0
- package/dist/icons/chevron-up-double.js.map +1 -0
- package/dist/icons/chevron-up.js +4 -0
- package/dist/icons/chevron-up.js.map +1 -0
- package/dist/icons/circle-menu.js +4 -0
- package/dist/icons/circle-menu.js.map +1 -0
- package/dist/icons/circle-split.js +4 -0
- package/dist/icons/circle-split.js.map +1 -0
- package/dist/icons/circle.js +4 -0
- package/dist/icons/circle.js.map +1 -0
- package/dist/icons/clipboard-add.js +4 -0
- package/dist/icons/clipboard-add.js.map +1 -0
- package/dist/icons/clipboard-check.js +4 -0
- package/dist/icons/clipboard-check.js.map +1 -0
- package/dist/icons/clipboard-copy.js +4 -0
- package/dist/icons/clipboard-copy.js.map +1 -0
- package/dist/icons/clipboard-cross.js +4 -0
- package/dist/icons/clipboard-cross.js.map +1 -0
- package/dist/icons/clipboard-notes.js +4 -0
- package/dist/icons/clipboard-notes.js.map +1 -0
- package/dist/icons/clipboard-remove.js +4 -0
- package/dist/icons/clipboard-remove.js.map +1 -0
- package/dist/icons/clipboard.js +4 -0
- package/dist/icons/clipboard.js.map +1 -0
- package/dist/icons/clock.js +4 -0
- package/dist/icons/clock.js.map +1 -0
- package/dist/icons/close.js +4 -0
- package/dist/icons/close.js.map +1 -0
- package/dist/icons/cloud-disconnect.js +4 -0
- package/dist/icons/cloud-disconnect.js.map +1 -0
- package/dist/icons/cloud-download-alt.js +4 -0
- package/dist/icons/cloud-download-alt.js.map +1 -0
- package/dist/icons/cloud-download.js +4 -0
- package/dist/icons/cloud-download.js.map +1 -0
- package/dist/icons/cloud-upload-alt.js +4 -0
- package/dist/icons/cloud-upload-alt.js.map +1 -0
- package/dist/icons/cloud-upload.js +4 -0
- package/dist/icons/cloud-upload.js.map +1 -0
- package/dist/icons/cloud.js +4 -0
- package/dist/icons/cloud.js.map +1 -0
- package/dist/icons/code.js +4 -0
- package/dist/icons/code.js.map +1 -0
- package/dist/icons/coffee.js +4 -0
- package/dist/icons/coffee.js.map +1 -0
- package/dist/icons/coin.js +4 -0
- package/dist/icons/coin.js.map +1 -0
- package/dist/icons/coins.js +4 -0
- package/dist/icons/coins.js.map +1 -0
- package/dist/icons/compass.js +4 -0
- package/dist/icons/compass.js.map +1 -0
- package/dist/icons/component-add.js +4 -0
- package/dist/icons/component-add.js.map +1 -0
- package/dist/icons/contacts.js +4 -0
- package/dist/icons/contacts.js.map +1 -0
- package/dist/icons/contract.js +4 -0
- package/dist/icons/contract.js.map +1 -0
- package/dist/icons/create.js +11 -0
- package/dist/icons/create.js.map +1 -0
- package/dist/icons/credit-card.js +4 -0
- package/dist/icons/credit-card.js.map +1 -0
- package/dist/icons/crop.js +4 -0
- package/dist/icons/crop.js.map +1 -0
- package/dist/icons/cross-circle.js +4 -0
- package/dist/icons/cross-circle.js.map +1 -0
- package/dist/icons/cross.js +4 -0
- package/dist/icons/cross.js.map +1 -0
- package/dist/icons/crosshair.js +4 -0
- package/dist/icons/crosshair.js.map +1 -0
- package/dist/icons/cube.js +4 -0
- package/dist/icons/cube.js.map +1 -0
- package/dist/icons/cubes.js +4 -0
- package/dist/icons/cubes.js.map +1 -0
- package/dist/icons/cylinder.js +4 -0
- package/dist/icons/cylinder.js.map +1 -0
- package/dist/icons/database.js +4 -0
- package/dist/icons/database.js.map +1 -0
- package/dist/icons/diamond.js +4 -0
- package/dist/icons/diamond.js.map +1 -0
- package/dist/icons/directions.js +4 -0
- package/dist/icons/directions.js.map +1 -0
- package/dist/icons/disc.js +4 -0
- package/dist/icons/disc.js.map +1 -0
- package/dist/icons/display-alt.js +4 -0
- package/dist/icons/display-alt.js.map +1 -0
- package/dist/icons/display.js +4 -0
- package/dist/icons/display.js.map +1 -0
- package/dist/icons/document-justified.js +4 -0
- package/dist/icons/document-justified.js.map +1 -0
- package/dist/icons/document-list.js +4 -0
- package/dist/icons/document-list.js.map +1 -0
- package/dist/icons/document-stack.js +4 -0
- package/dist/icons/document-stack.js.map +1 -0
- package/dist/icons/document-words.js +4 -0
- package/dist/icons/document-words.js.map +1 -0
- package/dist/icons/document.js +4 -0
- package/dist/icons/document.js.map +1 -0
- package/dist/icons/door-alt.js +4 -0
- package/dist/icons/door-alt.js.map +1 -0
- package/dist/icons/door.js +4 -0
- package/dist/icons/door.js.map +1 -0
- package/dist/icons/download-alt.js +4 -0
- package/dist/icons/download-alt.js.map +1 -0
- package/dist/icons/download.js +4 -0
- package/dist/icons/download.js.map +1 -0
- package/dist/icons/downward.js +4 -0
- package/dist/icons/downward.js.map +1 -0
- package/dist/icons/drag-circle.js +4 -0
- package/dist/icons/drag-circle.js.map +1 -0
- package/dist/icons/drag-vertical.js +4 -0
- package/dist/icons/drag-vertical.js.map +1 -0
- package/dist/icons/drag.js +4 -0
- package/dist/icons/drag.js.map +1 -0
- package/dist/icons/duplicate-alt.js +4 -0
- package/dist/icons/duplicate-alt.js.map +1 -0
- package/dist/icons/duplicate.js +4 -0
- package/dist/icons/duplicate.js.map +1 -0
- package/dist/icons/enter-alt.js +4 -0
- package/dist/icons/enter-alt.js.map +1 -0
- package/dist/icons/enter.js +4 -0
- package/dist/icons/enter.js.map +1 -0
- package/dist/icons/episodes.js +4 -0
- package/dist/icons/episodes.js.map +1 -0
- package/dist/icons/exit-left.js +4 -0
- package/dist/icons/exit-left.js.map +1 -0
- package/dist/icons/exit-right.js +4 -0
- package/dist/icons/exit-right.js.map +1 -0
- package/dist/icons/expand-height.js +4 -0
- package/dist/icons/expand-height.js.map +1 -0
- package/dist/icons/expand-width.js +4 -0
- package/dist/icons/expand-width.js.map +1 -0
- package/dist/icons/expand.js +4 -0
- package/dist/icons/expand.js.map +1 -0
- package/dist/icons/external.js +4 -0
- package/dist/icons/external.js.map +1 -0
- package/dist/icons/eye-closed.js +4 -0
- package/dist/icons/eye-closed.js.map +1 -0
- package/dist/icons/eye-no.js +4 -0
- package/dist/icons/eye-no.js.map +1 -0
- package/dist/icons/eye.js +4 -0
- package/dist/icons/eye.js.map +1 -0
- package/dist/icons/face-delighted.js +4 -0
- package/dist/icons/face-delighted.js.map +1 -0
- package/dist/icons/face-happy.js +4 -0
- package/dist/icons/face-happy.js.map +1 -0
- package/dist/icons/face-neutral.js +4 -0
- package/dist/icons/face-neutral.js.map +1 -0
- package/dist/icons/face-sad.js +4 -0
- package/dist/icons/face-sad.js.map +1 -0
- package/dist/icons/file-download.js +4 -0
- package/dist/icons/file-download.js.map +1 -0
- package/dist/icons/file-upload.js +4 -0
- package/dist/icons/file-upload.js.map +1 -0
- package/dist/icons/files-history.js +4 -0
- package/dist/icons/files-history.js.map +1 -0
- package/dist/icons/files-multi.js +4 -0
- package/dist/icons/files-multi.js.map +1 -0
- package/dist/icons/files-stack.js +4 -0
- package/dist/icons/files-stack.js.map +1 -0
- package/dist/icons/film.js +4 -0
- package/dist/icons/film.js.map +1 -0
- package/dist/icons/filter-circle.js +4 -0
- package/dist/icons/filter-circle.js.map +1 -0
- package/dist/icons/filter-single.js +4 -0
- package/dist/icons/filter-single.js.map +1 -0
- package/dist/icons/filter.js +4 -0
- package/dist/icons/filter.js.map +1 -0
- package/dist/icons/filtering.js +4 -0
- package/dist/icons/filtering.js.map +1 -0
- package/dist/icons/fingerprint.js +4 -0
- package/dist/icons/fingerprint.js.map +1 -0
- package/dist/icons/flag.js +4 -0
- package/dist/icons/flag.js.map +1 -0
- package/dist/icons/flame-alt.js +4 -0
- package/dist/icons/flame-alt.js.map +1 -0
- package/dist/icons/flame.js +9 -0
- package/dist/icons/flame.js.map +1 -0
- package/dist/icons/flip-view.js +4 -0
- package/dist/icons/flip-view.js.map +1 -0
- package/dist/icons/floppy.js +4 -0
- package/dist/icons/floppy.js.map +1 -0
- package/dist/icons/folder-add.js +4 -0
- package/dist/icons/folder-add.js.map +1 -0
- package/dist/icons/folder-closed.js +4 -0
- package/dist/icons/folder-closed.js.map +1 -0
- package/dist/icons/folder-minus.js +4 -0
- package/dist/icons/folder-minus.js.map +1 -0
- package/dist/icons/folder-open.js +4 -0
- package/dist/icons/folder-open.js.map +1 -0
- package/dist/icons/fork-git.js +4 -0
- package/dist/icons/fork-git.js.map +1 -0
- package/dist/icons/forward.js +4 -0
- package/dist/icons/forward.js.map +1 -0
- package/dist/icons/frame.js +4 -0
- package/dist/icons/frame.js.map +1 -0
- package/dist/icons/fullscreen.js +4 -0
- package/dist/icons/fullscreen.js.map +1 -0
- package/dist/icons/funnel.js +4 -0
- package/dist/icons/funnel.js.map +1 -0
- package/dist/icons/gauge.js +4 -0
- package/dist/icons/gauge.js.map +1 -0
- package/dist/icons/gift.js +4 -0
- package/dist/icons/gift.js.map +1 -0
- package/dist/icons/globe.js +4 -0
- package/dist/icons/globe.js.map +1 -0
- package/dist/icons/gps.js +4 -0
- package/dist/icons/gps.js.map +1 -0
- package/dist/icons/grab.js +4 -0
- package/dist/icons/grab.js.map +1 -0
- package/dist/icons/graph-bar.js +4 -0
- package/dist/icons/graph-bar.js.map +1 -0
- package/dist/icons/graph-box.js +4 -0
- package/dist/icons/graph-box.js.map +1 -0
- package/dist/icons/graph-increase.js +4 -0
- package/dist/icons/graph-increase.js.map +1 -0
- package/dist/icons/grid-circles-add.js +4 -0
- package/dist/icons/grid-circles-add.js.map +1 -0
- package/dist/icons/grid-circles.js +4 -0
- package/dist/icons/grid-circles.js.map +1 -0
- package/dist/icons/grid-small.js +4 -0
- package/dist/icons/grid-small.js.map +1 -0
- package/dist/icons/grid-squares-add.js +4 -0
- package/dist/icons/grid-squares-add.js.map +1 -0
- package/dist/icons/grid-squares.js +4 -0
- package/dist/icons/grid-squares.js.map +1 -0
- package/dist/icons/grid.js +4 -0
- package/dist/icons/grid.js.map +1 -0
- package/dist/icons/hand.js +4 -0
- package/dist/icons/hand.js.map +1 -0
- package/dist/icons/harddrive.js +4 -0
- package/dist/icons/harddrive.js.map +1 -0
- package/dist/icons/hash.js +4 -0
- package/dist/icons/hash.js.map +1 -0
- package/dist/icons/heart-rate.js +4 -0
- package/dist/icons/heart-rate.js.map +1 -0
- package/dist/icons/heart-remove.js +4 -0
- package/dist/icons/heart-remove.js.map +1 -0
- package/dist/icons/heart.js +4 -0
- package/dist/icons/heart.js.map +1 -0
- package/dist/icons/height.js +4 -0
- package/dist/icons/height.js.map +1 -0
- package/dist/icons/hierarchy.js +4 -0
- package/dist/icons/hierarchy.js.map +1 -0
- package/dist/icons/home-alt.js +4 -0
- package/dist/icons/home-alt.js.map +1 -0
- package/dist/icons/home-check.js +4 -0
- package/dist/icons/home-check.js.map +1 -0
- package/dist/icons/home-door.js +4 -0
- package/dist/icons/home-door.js.map +1 -0
- package/dist/icons/home.js +4 -0
- package/dist/icons/home.js.map +1 -0
- package/dist/icons/import.js +4 -0
- package/dist/icons/import.js.map +1 -0
- package/dist/icons/inbox-alt.js +4 -0
- package/dist/icons/inbox-alt.js.map +1 -0
- package/dist/icons/inbox.js +4 -0
- package/dist/icons/inbox.js.map +1 -0
- package/dist/icons/info-circle.js +4 -0
- package/dist/icons/info-circle.js.map +1 -0
- package/dist/icons/iphone-landscape.js +4 -0
- package/dist/icons/iphone-landscape.js.map +1 -0
- package/dist/icons/iphone-portrait.js +4 -0
- package/dist/icons/iphone-portrait.js.map +1 -0
- package/dist/icons/jump-backward.js +4 -0
- package/dist/icons/jump-backward.js.map +1 -0
- package/dist/icons/jump-forward.js +4 -0
- package/dist/icons/jump-forward.js.map +1 -0
- package/dist/icons/jump-left.js +4 -0
- package/dist/icons/jump-left.js.map +1 -0
- package/dist/icons/jump-right.js +4 -0
- package/dist/icons/jump-right.js.map +1 -0
- package/dist/icons/keyboard.js +4 -0
- package/dist/icons/keyboard.js.map +1 -0
- package/dist/icons/laptop.js +4 -0
- package/dist/icons/laptop.js.map +1 -0
- package/dist/icons/lightbulb-on.js +4 -0
- package/dist/icons/lightbulb-on.js.map +1 -0
- package/dist/icons/lightbulb.js +4 -0
- package/dist/icons/lightbulb.js.map +1 -0
- package/dist/icons/lightning-alt.js +4 -0
- package/dist/icons/lightning-alt.js.map +1 -0
- package/dist/icons/lightning.js +4 -0
- package/dist/icons/lightning.js.map +1 -0
- package/dist/icons/lineweight.js +4 -0
- package/dist/icons/lineweight.js.map +1 -0
- package/dist/icons/link-alt.js +4 -0
- package/dist/icons/link-alt.js.map +1 -0
- package/dist/icons/link-broken.js +4 -0
- package/dist/icons/link-broken.js.map +1 -0
- package/dist/icons/link-horizontal.js +4 -0
- package/dist/icons/link-horizontal.js.map +1 -0
- package/dist/icons/link-vertical.js +4 -0
- package/dist/icons/link-vertical.js.map +1 -0
- package/dist/icons/link.js +4 -0
- package/dist/icons/link.js.map +1 -0
- package/dist/icons/list-add.js +4 -0
- package/dist/icons/list-add.js.map +1 -0
- package/dist/icons/list-numbered.js +4 -0
- package/dist/icons/list-numbered.js.map +1 -0
- package/dist/icons/list.js +4 -0
- package/dist/icons/list.js.map +1 -0
- package/dist/icons/loader.js +4 -0
- package/dist/icons/loader.js.map +1 -0
- package/dist/icons/location.js +4 -0
- package/dist/icons/location.js.map +1 -0
- package/dist/icons/lock-open.js +4 -0
- package/dist/icons/lock-open.js.map +1 -0
- package/dist/icons/lock.js +4 -0
- package/dist/icons/lock.js.map +1 -0
- package/dist/icons/mail-add.js +4 -0
- package/dist/icons/mail-add.js.map +1 -0
- package/dist/icons/mail-delete.js +4 -0
- package/dist/icons/mail-delete.js.map +1 -0
- package/dist/icons/mail-minus.js +4 -0
- package/dist/icons/mail-minus.js.map +1 -0
- package/dist/icons/mail-new.js +4 -0
- package/dist/icons/mail-new.js.map +1 -0
- package/dist/icons/mail-open.js +4 -0
- package/dist/icons/mail-open.js.map +1 -0
- package/dist/icons/mail-remove.js +4 -0
- package/dist/icons/mail-remove.js.map +1 -0
- package/dist/icons/mail.js +4 -0
- package/dist/icons/mail.js.map +1 -0
- package/dist/icons/marquee.js +4 -0
- package/dist/icons/marquee.js.map +1 -0
- package/dist/icons/maximise.js +4 -0
- package/dist/icons/maximise.js.map +1 -0
- package/dist/icons/menu-hamburger.js +4 -0
- package/dist/icons/menu-hamburger.js.map +1 -0
- package/dist/icons/menu-horizontal.js +4 -0
- package/dist/icons/menu-horizontal.js.map +1 -0
- package/dist/icons/menu-vertical.js +4 -0
- package/dist/icons/menu-vertical.js.map +1 -0
- package/dist/icons/message-writing.js +4 -0
- package/dist/icons/message-writing.js.map +1 -0
- package/dist/icons/message.js +4 -0
- package/dist/icons/message.js.map +1 -0
- package/dist/icons/microphone-disabled.js +4 -0
- package/dist/icons/microphone-disabled.js.map +1 -0
- package/dist/icons/microphone-muted.js +4 -0
- package/dist/icons/microphone-muted.js.map +1 -0
- package/dist/icons/microphone.js +4 -0
- package/dist/icons/microphone.js.map +1 -0
- package/dist/icons/midpoint.js +4 -0
- package/dist/icons/midpoint.js.map +1 -0
- package/dist/icons/mini-player.js +4 -0
- package/dist/icons/mini-player.js.map +1 -0
- package/dist/icons/minimise.js +4 -0
- package/dist/icons/minimise.js.map +1 -0
- package/dist/icons/minus-circle.js +4 -0
- package/dist/icons/minus-circle.js.map +1 -0
- package/dist/icons/minus.js +4 -0
- package/dist/icons/minus.js.map +1 -0
- package/dist/icons/moon.js +4 -0
- package/dist/icons/moon.js.map +1 -0
- package/dist/icons/move.js +4 -0
- package/dist/icons/move.js.map +1 -0
- package/dist/icons/newspaper.js +4 -0
- package/dist/icons/newspaper.js.map +1 -0
- package/dist/icons/no-sign.js +4 -0
- package/dist/icons/no-sign.js.map +1 -0
- package/dist/icons/notebook.js +4 -0
- package/dist/icons/notebook.js.map +1 -0
- package/dist/icons/notification.js +4 -0
- package/dist/icons/notification.js.map +1 -0
- package/dist/icons/nut.js +4 -0
- package/dist/icons/nut.js.map +1 -0
- package/dist/icons/pages.js +4 -0
- package/dist/icons/pages.js.map +1 -0
- package/dist/icons/panel-bottom.js +4 -0
- package/dist/icons/panel-bottom.js.map +1 -0
- package/dist/icons/panel-center.js +4 -0
- package/dist/icons/panel-center.js.map +1 -0
- package/dist/icons/panel-left.js +4 -0
- package/dist/icons/panel-left.js.map +1 -0
- package/dist/icons/panel-right.js +4 -0
- package/dist/icons/panel-right.js.map +1 -0
- package/dist/icons/panel-sectioned.js +4 -0
- package/dist/icons/panel-sectioned.js.map +1 -0
- package/dist/icons/panel-top.js +4 -0
- package/dist/icons/panel-top.js.map +1 -0
- package/dist/icons/paper-folded.js +4 -0
- package/dist/icons/paper-folded.js.map +1 -0
- package/dist/icons/paper-plane-alt.js +4 -0
- package/dist/icons/paper-plane-alt.js.map +1 -0
- package/dist/icons/paper-plane.js +4 -0
- package/dist/icons/paper-plane.js.map +1 -0
- package/dist/icons/paper.js +4 -0
- package/dist/icons/paper.js.map +1 -0
- package/dist/icons/paperclip.js +4 -0
- package/dist/icons/paperclip.js.map +1 -0
- package/dist/icons/paragraph-center.js +4 -0
- package/dist/icons/paragraph-center.js.map +1 -0
- package/dist/icons/paragraph-end.js +4 -0
- package/dist/icons/paragraph-end.js.map +1 -0
- package/dist/icons/paragraph-left.js +4 -0
- package/dist/icons/paragraph-left.js.map +1 -0
- package/dist/icons/paragraph-right.js +4 -0
- package/dist/icons/paragraph-right.js.map +1 -0
- package/dist/icons/paragraph-start.js +4 -0
- package/dist/icons/paragraph-start.js.map +1 -0
- package/dist/icons/pen.js +4 -0
- package/dist/icons/pen.js.map +1 -0
- package/dist/icons/phone-landscape.js +4 -0
- package/dist/icons/phone-landscape.js.map +1 -0
- package/dist/icons/phone-portrait.js +4 -0
- package/dist/icons/phone-portrait.js.map +1 -0
- package/dist/icons/picture.js +4 -0
- package/dist/icons/picture.js.map +1 -0
- package/dist/icons/pie-half.js +4 -0
- package/dist/icons/pie-half.js.map +1 -0
- package/dist/icons/pie-quarter.js +4 -0
- package/dist/icons/pie-quarter.js.map +1 -0
- package/dist/icons/pie-third.js +4 -0
- package/dist/icons/pie-third.js.map +1 -0
- package/dist/icons/pill.js +4 -0
- package/dist/icons/pill.js.map +1 -0
- package/dist/icons/play-button.js +4 -0
- package/dist/icons/play-button.js.map +1 -0
- package/dist/icons/plus-circle.js +4 -0
- package/dist/icons/plus-circle.js.map +1 -0
- package/dist/icons/plus.js +4 -0
- package/dist/icons/plus.js.map +1 -0
- package/dist/icons/postcard.js +4 -0
- package/dist/icons/postcard.js.map +1 -0
- package/dist/icons/printer.js +4 -0
- package/dist/icons/printer.js.map +1 -0
- package/dist/icons/projector.js +4 -0
- package/dist/icons/projector.js.map +1 -0
- package/dist/icons/pull-down.js +4 -0
- package/dist/icons/pull-down.js.map +1 -0
- package/dist/icons/pull-left.js +4 -0
- package/dist/icons/pull-left.js.map +1 -0
- package/dist/icons/pull-right.js +4 -0
- package/dist/icons/pull-right.js.map +1 -0
- package/dist/icons/pull-up.js +4 -0
- package/dist/icons/pull-up.js.map +1 -0
- package/dist/icons/push-down.js +4 -0
- package/dist/icons/push-down.js.map +1 -0
- package/dist/icons/push-left.js +4 -0
- package/dist/icons/push-left.js.map +1 -0
- package/dist/icons/push-right.js +4 -0
- package/dist/icons/push-right.js.map +1 -0
- package/dist/icons/push-up.js +4 -0
- package/dist/icons/push-up.js.map +1 -0
- package/dist/icons/question-circle.js +4 -0
- package/dist/icons/question-circle.js.map +1 -0
- package/dist/icons/radio-on.js +4 -0
- package/dist/icons/radio-on.js.map +1 -0
- package/dist/icons/receipt.js +4 -0
- package/dist/icons/receipt.js.map +1 -0
- package/dist/icons/record.js +4 -0
- package/dist/icons/record.js.map +1 -0
- package/dist/icons/redo.js +4 -0
- package/dist/icons/redo.js.map +1 -0
- package/dist/icons/refresh-alt.js +4 -0
- package/dist/icons/refresh-alt.js.map +1 -0
- package/dist/icons/refresh.js +4 -0
- package/dist/icons/refresh.js.map +1 -0
- package/dist/icons/replicate-alt.js +4 -0
- package/dist/icons/replicate-alt.js.map +1 -0
- package/dist/icons/replicate.js +4 -0
- package/dist/icons/replicate.js.map +1 -0
- package/dist/icons/reset-alt.js +4 -0
- package/dist/icons/reset-alt.js.map +1 -0
- package/dist/icons/reset-forward.js +4 -0
- package/dist/icons/reset-forward.js.map +1 -0
- package/dist/icons/reset-hard.js +4 -0
- package/dist/icons/reset-hard.js.map +1 -0
- package/dist/icons/reset-temporary.js +4 -0
- package/dist/icons/reset-temporary.js.map +1 -0
- package/dist/icons/reset.js +4 -0
- package/dist/icons/reset.js.map +1 -0
- package/dist/icons/retweet.js +4 -0
- package/dist/icons/retweet.js.map +1 -0
- package/dist/icons/reuse.js +4 -0
- package/dist/icons/reuse.js.map +1 -0
- package/dist/icons/reverse-alt.js +4 -0
- package/dist/icons/reverse-alt.js.map +1 -0
- package/dist/icons/reverse.js +4 -0
- package/dist/icons/reverse.js.map +1 -0
- package/dist/icons/revert.js +4 -0
- package/dist/icons/revert.js.map +1 -0
- package/dist/icons/rocket.js +4 -0
- package/dist/icons/rocket.js.map +1 -0
- package/dist/icons/ruler.js +4 -0
- package/dist/icons/ruler.js.map +1 -0
- package/dist/icons/scale-contract.js +4 -0
- package/dist/icons/scale-contract.js.map +1 -0
- package/dist/icons/scale-extend.js +4 -0
- package/dist/icons/scale-extend.js.map +1 -0
- package/dist/icons/scale.js +4 -0
- package/dist/icons/scale.js.map +1 -0
- package/dist/icons/scalpel.js +4 -0
- package/dist/icons/scalpel.js.map +1 -0
- package/dist/icons/search.js +4 -0
- package/dist/icons/search.js.map +1 -0
- package/dist/icons/server.js +4 -0
- package/dist/icons/server.js.map +1 -0
- package/dist/icons/settings.js +4 -0
- package/dist/icons/settings.js.map +1 -0
- package/dist/icons/share-alt.js +4 -0
- package/dist/icons/share-alt.js.map +1 -0
- package/dist/icons/share.js +4 -0
- package/dist/icons/share.js.map +1 -0
- package/dist/icons/shuffle.js +4 -0
- package/dist/icons/shuffle.js.map +1 -0
- package/dist/icons/side-menu.js +4 -0
- package/dist/icons/side-menu.js.map +1 -0
- package/dist/icons/signal-full.js +4 -0
- package/dist/icons/signal-full.js.map +1 -0
- package/dist/icons/signal-low.js +4 -0
- package/dist/icons/signal-low.js.map +1 -0
- package/dist/icons/signal-medium.js +4 -0
- package/dist/icons/signal-medium.js.map +1 -0
- package/dist/icons/signal-none.js +4 -0
- package/dist/icons/signal-none.js.map +1 -0
- package/dist/icons/slash-backward.js +4 -0
- package/dist/icons/slash-backward.js.map +1 -0
- package/dist/icons/slash-forward.js +4 -0
- package/dist/icons/slash-forward.js.map +1 -0
- package/dist/icons/sliders.js +4 -0
- package/dist/icons/sliders.js.map +1 -0
- package/dist/icons/sort-alt.js +4 -0
- package/dist/icons/sort-alt.js.map +1 -0
- package/dist/icons/sort.js +4 -0
- package/dist/icons/sort.js.map +1 -0
- package/dist/icons/speaker.js +4 -0
- package/dist/icons/speaker.js.map +1 -0
- package/dist/icons/speech-bubble.js +4 -0
- package/dist/icons/speech-bubble.js.map +1 -0
- package/dist/icons/speech-typing.js +4 -0
- package/dist/icons/speech-typing.js.map +1 -0
- package/dist/icons/split-three.js +4 -0
- package/dist/icons/split-three.js.map +1 -0
- package/dist/icons/split.js +4 -0
- package/dist/icons/split.js.map +1 -0
- package/dist/icons/star.js +4 -0
- package/dist/icons/star.js.map +1 -0
- package/dist/icons/sun.js +4 -0
- package/dist/icons/sun.js.map +1 -0
- package/dist/icons/support.js +4 -0
- package/dist/icons/support.js.map +1 -0
- package/dist/icons/swap.js +4 -0
- package/dist/icons/swap.js.map +1 -0
- package/dist/icons/switch.js +4 -0
- package/dist/icons/switch.js.map +1 -0
- package/dist/icons/table-header.js +4 -0
- package/dist/icons/table-header.js.map +1 -0
- package/dist/icons/table.js +4 -0
- package/dist/icons/table.js.map +1 -0
- package/dist/icons/tag-milestone.js +4 -0
- package/dist/icons/tag-milestone.js.map +1 -0
- package/dist/icons/tag.js +4 -0
- package/dist/icons/tag.js.map +1 -0
- package/dist/icons/tags.js +4 -0
- package/dist/icons/tags.js.map +1 -0
- package/dist/icons/target.js +4 -0
- package/dist/icons/target.js.map +1 -0
- package/dist/icons/terminal.js +4 -0
- package/dist/icons/terminal.js.map +1 -0
- package/dist/icons/thread.js +4 -0
- package/dist/icons/thread.js.map +1 -0
- package/dist/icons/thumbs-down.js +4 -0
- package/dist/icons/thumbs-down.js.map +1 -0
- package/dist/icons/thumbs-up.js +4 -0
- package/dist/icons/thumbs-up.js.map +1 -0
- package/dist/icons/ticket.js +4 -0
- package/dist/icons/ticket.js.map +1 -0
- package/dist/icons/timeline.js +4 -0
- package/dist/icons/timeline.js.map +1 -0
- package/dist/icons/todo.js +4 -0
- package/dist/icons/todo.js.map +1 -0
- package/dist/icons/toggle.js +4 -0
- package/dist/icons/toggle.js.map +1 -0
- package/dist/icons/toggles.js +4 -0
- package/dist/icons/toggles.js.map +1 -0
- package/dist/icons/translate.js +4 -0
- package/dist/icons/translate.js.map +1 -0
- package/dist/icons/trash-alt.js +4 -0
- package/dist/icons/trash-alt.js.map +1 -0
- package/dist/icons/trash.js +4 -0
- package/dist/icons/trash.js.map +1 -0
- package/dist/icons/trophy.js +4 -0
- package/dist/icons/trophy.js.map +1 -0
- package/dist/icons/tv-mode.js +4 -0
- package/dist/icons/tv-mode.js.map +1 -0
- package/dist/icons/unarchive.js +4 -0
- package/dist/icons/unarchive.js.map +1 -0
- package/dist/icons/undo-history.js +4 -0
- package/dist/icons/undo-history.js.map +1 -0
- package/dist/icons/undo.js +4 -0
- package/dist/icons/undo.js.map +1 -0
- package/dist/icons/unlink-horizontal.js +4 -0
- package/dist/icons/unlink-horizontal.js.map +1 -0
- package/dist/icons/unlink-vertical.js +4 -0
- package/dist/icons/unlink-vertical.js.map +1 -0
- package/dist/icons/upload-alt.js +4 -0
- package/dist/icons/upload-alt.js.map +1 -0
- package/dist/icons/upload.js +4 -0
- package/dist/icons/upload.js.map +1 -0
- package/dist/icons/upward.js +4 -0
- package/dist/icons/upward.js.map +1 -0
- package/dist/icons/user-add.js +4 -0
- package/dist/icons/user-add.js.map +1 -0
- package/dist/icons/user-circle.js +4 -0
- package/dist/icons/user-circle.js.map +1 -0
- package/dist/icons/user-male-circle.js +4 -0
- package/dist/icons/user-male-circle.js.map +1 -0
- package/dist/icons/user-male.js +4 -0
- package/dist/icons/user-male.js.map +1 -0
- package/dist/icons/user-remove.js +4 -0
- package/dist/icons/user-remove.js.map +1 -0
- package/dist/icons/user.js +4 -0
- package/dist/icons/user.js.map +1 -0
- package/dist/icons/users.js +4 -0
- package/dist/icons/users.js.map +1 -0
- package/dist/icons/venn.js +4 -0
- package/dist/icons/venn.js.map +1 -0
- package/dist/icons/version.js +4 -0
- package/dist/icons/version.js.map +1 -0
- package/dist/icons/versions.js +4 -0
- package/dist/icons/versions.js.map +1 -0
- package/dist/icons/video.js +4 -0
- package/dist/icons/video.js.map +1 -0
- package/dist/icons/volume-0.js +4 -0
- package/dist/icons/volume-0.js.map +1 -0
- package/dist/icons/volume-add.js +4 -0
- package/dist/icons/volume-add.js.map +1 -0
- package/dist/icons/volume-disabled.js +4 -0
- package/dist/icons/volume-disabled.js.map +1 -0
- package/dist/icons/volume-high.js +4 -0
- package/dist/icons/volume-high.js.map +1 -0
- package/dist/icons/volume-low.js +4 -0
- package/dist/icons/volume-low.js.map +1 -0
- package/dist/icons/volume-minus.js +4 -0
- package/dist/icons/volume-minus.js.map +1 -0
- package/dist/icons/volume-muted.js +4 -0
- package/dist/icons/volume-muted.js.map +1 -0
- package/dist/icons/wallet.js +4 -0
- package/dist/icons/wallet.js.map +1 -0
- package/dist/icons/warning-circle.js +4 -0
- package/dist/icons/warning-circle.js.map +1 -0
- package/dist/icons/warning-hex.js +4 -0
- package/dist/icons/warning-hex.js.map +1 -0
- package/dist/icons/warning-triangle.js +4 -0
- package/dist/icons/warning-triangle.js.map +1 -0
- package/dist/icons/waves.js +4 -0
- package/dist/icons/waves.js.map +1 -0
- package/dist/icons/width.js +4 -0
- package/dist/icons/width.js.map +1 -0
- package/dist/icons/wifi-error.js +4 -0
- package/dist/icons/wifi-error.js.map +1 -0
- package/dist/icons/wifi-none.js +4 -0
- package/dist/icons/wifi-none.js.map +1 -0
- package/dist/icons/wifi.js +4 -0
- package/dist/icons/wifi.js.map +1 -0
- package/dist/icons/window-collapse-left.js +4 -0
- package/dist/icons/window-collapse-left.js.map +1 -0
- package/dist/icons/window-collapse-right.js +4 -0
- package/dist/icons/window-collapse-right.js.map +1 -0
- package/dist/icons/window-content.js +4 -0
- package/dist/icons/window-content.js.map +1 -0
- package/dist/icons/window.js +4 -0
- package/dist/icons/window.js.map +1 -0
- package/dist/icons/wrap-back.js +4 -0
- package/dist/icons/wrap-back.js.map +1 -0
- package/dist/icons/wrap-forward.js +4 -0
- package/dist/icons/wrap-forward.js.map +1 -0
- package/dist/icons/write.js +4 -0
- package/dist/icons/write.js.map +1 -0
- package/dist/icons/zoom-cancel.js +4 -0
- package/dist/icons/zoom-cancel.js.map +1 -0
- package/dist/icons/zoom-in.js +4 -0
- package/dist/icons/zoom-in.js.map +1 -0
- package/dist/icons/zoom-out.js +4 -0
- package/dist/icons/zoom-out.js.map +1 -0
- package/dist/icons/zoom-reset.js +4 -0
- package/dist/icons/zoom-reset.js.map +1 -0
- package/dist/shared/icon-registry-BX6zIZU3.js +12 -0
- package/dist/shared/icon-registry-BX6zIZU3.js.map +1 -0
- package/package.json +145 -142
- package/dist/components/icon/icons/registry.generated.d.ts.map +0 -1
|
@@ -2,6 +2,7 @@ export { BpButton } from './button/button.js';
|
|
|
2
2
|
export { BpInput } from './input/input.js';
|
|
3
3
|
export { BpBadge } from './badge/badge.js';
|
|
4
4
|
export { BpIcon, type IconSize, type IconColor } from './icon/icon.js';
|
|
5
|
+
export type { IconName } from './icon/icons/icon-name.generated.js';
|
|
5
6
|
export { BpSpinner, type SpinnerSize, type SpinnerVariant, } from './spinner/spinner.js';
|
|
6
7
|
export { BpAvatar, type AvatarSize, type AvatarShape, type AvatarStatus, } from './avatar/avatar.js';
|
|
7
8
|
export { BpDivider, type DividerOrientation, type DividerSpacing, type DividerVariant, type DividerColor, type DividerWeight, } from './divider/divider.js';
|
|
@@ -1 +1 @@
|
|
|
1
|
-
{"version":3,"file":"index.d.ts","sourceRoot":"","sources":["../../source/components/index.ts"],"names":[],"mappings":"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"}
|
|
1
|
+
{"version":3,"file":"index.d.ts","sourceRoot":"","sources":["../../source/components/index.ts"],"names":[],"mappings":"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"}
|
|
@@ -1,5 +1,9 @@
|
|
|
1
1
|
import { LitElement, nothing } from 'lit';
|
|
2
2
|
import '../icon/icon.js';
|
|
3
|
+
import '../icon/icons/entries/check.js';
|
|
4
|
+
import '../icon/icons/entries/warning-circle.js';
|
|
5
|
+
import '../icon/icons/entries/cross.js';
|
|
6
|
+
import '../icon/icons/entries/info-circle.js';
|
|
3
7
|
/**
|
|
4
8
|
* A notification/toast component for displaying non-blocking messages.
|
|
5
9
|
* Notifications can be dismissed manually or auto-close after a duration.
|
|
@@ -1 +1 @@
|
|
|
1
|
-
{"version":3,"file":"notification.d.ts","sourceRoot":"","sources":["../../../source/components/notification/notification.ts"],"names":[],"mappings":"AAAA,OAAO,EAAE,UAAU,EAAQ,OAAO,EAAE,MAAM,KAAK,CAAC;AAIhD,OAAO,iBAAiB,CAAC;
|
|
1
|
+
{"version":3,"file":"notification.d.ts","sourceRoot":"","sources":["../../../source/components/notification/notification.ts"],"names":[],"mappings":"AAAA,OAAO,EAAE,UAAU,EAAQ,OAAO,EAAE,MAAM,KAAK,CAAC;AAIhD,OAAO,iBAAiB,CAAC;AACzB,OAAO,gCAAgC,CAAC;AACxC,OAAO,yCAAyC,CAAC;AACjD,OAAO,gCAAgC,CAAC;AACxC,OAAO,sCAAsC,CAAC;AAE9C;;;;;;;;;;;;;;;;;;GAkBG;AACH,qBACa,cAAe,SAAQ,UAAU;IAC5C,+BAA+B;IAWvB,OAAO,EAAE,MAAM,GAAG,SAAS,GAAG,SAAS,GAAG,OAAO,CAAC;IAE1D,0CAA0C;IACU,IAAI,EAAE,OAAO,CAAC;IAElE,gDAAgD;IAExC,QAAQ,EAAE,OAAO,CAAC;IAE1B,qEAAqE;IACjC,QAAQ,EAAE,MAAM,CAAC;IAErD,gCAAgC;IACI,KAAK,EAAE,MAAM,CAAC;IAElD,0CAA0C;IACN,OAAO,EAAE,MAAM,CAAC;IAEpD;;;OAGG;IAiBK,QAAQ,EACZ,UAAU,GACV,YAAY,GACZ,WAAW,GACX,aAAa,GACb,eAAe,GACf,cAAc,CAAC;IAEV,OAAO,CAAC,cAAc,CAAuB;IAC7C,OAAO,CAAC,aAAa,CAAa;IAClC,OAAO,CAAC,WAAW,CAAkB;IACrC,OAAO,CAAC,SAAS,CAAkB;IAE5C,MAAM,CAAC,MAAM,4BAAwB;;IAarC,OAAO,CAAC,iBAAiB,EAAE,GAAG,CAAC,MAAM,EAAE,OAAO,CAAC;IAc/C,oBAAoB;IAKpB,4BAA4B;IAC5B,IAAI;IAKJ,4BAA4B;IAC5B,IAAI;IAKJ;;;OAGG;IACH,OAAO,CAAC,UAAU;IAkBlB;;;OAGG;IACH,OAAO,CAAC,WAAW;IAOnB;;;OAGG;IACH,OAAO,CAAC,mBAAmB;IAW3B;;OAEG;IACH,OAAO,CAAC,mBAAmB;IAO3B;;;OAGG;IACH,OAAO,CAAC,mBAAmB;IAQ3B;;OAEG;IACH,OAAO,CAAC,oBAAoB;IAS5B;;;OAGG;IACH,OAAO,CAAC,gBAAgB;IAOxB;;;OAGG;IACH,OAAO,CAAC,aAAa;IAMrB;;;OAGG;IACH,OAAO,CAAC,cAAc;IAUtB,MAAM;CA4DP;AAED,OAAO,CAAC,MAAM,CAAC;IACb,UAAU,qBAAqB;QAC7B,iBAAiB,EAAE,cAAc,CAAC;KACnC;CACF"}
|
|
@@ -1 +1 @@
|
|
|
1
|
-
{"version":3,"file":"notification.js","sources":["../../source/components/notification/notification.style.ts","../../source/components/notification/notification.ts"],"sourcesContent":["import { css } from 'lit';\n\nexport const notificationStyles = css`\n /* Base styles */\n :host {\n display: block;\n }\n\n .notification {\n display: flex;\n align-items: flex-start;\n gap: var(--bp-spacing-3);\n padding: var(--bp-spacing-4);\n background-color: var(--bp-color-surface-elevated);\n border: var(--bp-border-width) solid var(--bp-color-border);\n border-radius: var(--bp-border-radius-lg);\n box-shadow: var(--bp-shadow-lg);\n font-family: var(--bp-font-sans);\n font-size: var(--bp-font-size-sm);\n line-height: var(--bp-line-height-normal);\n color: var(--bp-color-text);\n max-width: 400px;\n min-width: 300px;\n animation: notification-slide-in var(--bp-duration-fast) var(--bp-ease-out);\n }\n\n @keyframes notification-slide-in {\n from {\n opacity: 0;\n transform: translateY(calc(-1 * var(--bp-spacing-2)));\n }\n to {\n opacity: 1;\n transform: translateY(0);\n }\n }\n\n @keyframes notification-slide-out {\n from {\n opacity: 1;\n transform: translateY(0);\n }\n to {\n opacity: 0;\n transform: translateY(calc(-1 * var(--bp-spacing-2)));\n }\n }\n\n .notification--exiting {\n animation: notification-slide-out var(--bp-duration-fast) var(--bp-ease-in)\n forwards;\n }\n\n @media (prefers-reduced-motion: reduce) {\n .notification {\n animation: none;\n }\n\n .notification--exiting {\n animation: none;\n opacity: 0;\n }\n }\n\n /* Icon */\n .notification__icon {\n flex-shrink: 0;\n display: flex;\n align-items: center;\n justify-content: center;\n }\n\n .notification__icon svg {\n width: 100%;\n height: 100%;\n }\n\n /* Content */\n .notification__content {\n flex: 1;\n min-width: 0;\n }\n\n .notification__title {\n font-weight: var(--bp-font-weight-semibold);\n margin-bottom: var(--bp-spacing-1);\n color: var(--bp-color-text-strong);\n }\n\n .notification__message {\n color: var(--bp-color-text-muted);\n }\n\n /* Action */\n .notification__action {\n display: flex;\n align-items: center;\n gap: var(--bp-spacing-1);\n }\n\n .notification__action:empty {\n display: none;\n }\n\n /* Close button */\n .notification__close {\n flex-shrink: 0;\n display: flex;\n align-items: center;\n justify-content: center;\n width: var(--bp-spacing-11);\n height: var(--bp-spacing-11);\n padding: 0;\n margin: calc(-1 * var(--bp-spacing-2));\n background: none;\n border: none;\n border-radius: var(--bp-border-radius-sm);\n color: var(--bp-color-text-muted);\n cursor: pointer;\n transition:\n color var(--bp-transition-fast),\n background-color var(--bp-transition-fast);\n }\n\n .notification__close:hover {\n color: var(--bp-color-text);\n background-color: var(--bp-color-surface-subdued);\n }\n\n .notification__close:focus-visible {\n outline: var(--bp-focus-width) var(--bp-focus-style) var(--bp-color-focus);\n outline-offset: var(--bp-focus-offset);\n }\n\n .notification__close svg {\n width: var(--bp-spacing-4);\n height: var(--bp-spacing-4);\n }\n\n /* Variants */\n .notification--info {\n border-left: var(--bp-spacing-1) solid var(--bp-color-info);\n }\n\n .notification--info .notification__icon {\n color: var(--bp-color-info);\n }\n\n .notification--success {\n border-left: var(--bp-spacing-1) solid var(--bp-color-success);\n }\n\n .notification--success .notification__icon {\n color: var(--bp-color-success);\n }\n\n .notification--warning {\n border-left: var(--bp-spacing-1) solid var(--bp-color-warning);\n }\n\n .notification--warning .notification__icon {\n color: var(--bp-color-warning);\n }\n\n .notification--error {\n border-left: var(--bp-spacing-1) solid var(--bp-color-error);\n }\n\n .notification--error .notification__icon {\n color: var(--bp-color-error);\n }\n\n /* Position variants */\n .notification--top-left,\n .notification--top-center,\n .notification--top-right,\n .notification--bottom-left,\n .notification--bottom-center,\n .notification--bottom-right {\n position: fixed;\n z-index: 10000;\n margin: var(--bp-spacing-4);\n }\n\n .notification--top-left {\n top: 0;\n left: 0;\n }\n\n .notification--top-center {\n top: 0;\n left: 50%;\n transform: translateX(-50%);\n }\n\n .notification--top-right {\n top: 0;\n right: 0;\n }\n\n .notification--bottom-left {\n bottom: 0;\n left: 0;\n }\n\n .notification--bottom-center {\n bottom: 0;\n left: 50%;\n transform: translateX(-50%);\n }\n\n .notification--bottom-right {\n bottom: 0;\n right: 0;\n }\n`;\n","import { LitElement, html, nothing } from 'lit';\nimport { customElement, property, state } from 'lit/decorators.js';\nimport { notificationStyles } from './notification.style.js';\nimport { booleanConverter } from '../../utilities/boolean-converter.js';\nimport '../icon/icon.js';\n\n/**\n * A notification/toast component for displaying non-blocking messages.\n * Notifications can be dismissed manually or auto-close after a duration.\n *\n * @fires bp-close - Dispatched when the notification is closed\n * @fires bp-show - Dispatched when the notification becomes visible\n * @fires bp-hide - Dispatched when the notification is hidden\n *\n * @slot - Default slot for notification content\n * @slot icon - Custom icon to display\n * @slot action - Action buttons or links\n *\n * @csspart base - The notification container\n * @csspart icon - The icon container\n * @csspart content - The content area\n * @csspart message - The message text container\n * @csspart action - The action slot container\n * @csspart close-button - The close button\n */\n@customElement('bp-notification')\nexport class BpNotification extends LitElement {\n /** The notification variant */\n @property({\n type: String,\n reflect: true,\n converter: {\n fromAttribute: (value: string | null) => {\n const valid = ['info', 'success', 'warning', 'error'];\n return value && valid.includes(value) ? value : 'info';\n },\n },\n })\n declare variant: 'info' | 'success' | 'warning' | 'error';\n\n /** Whether the notification is visible */\n @property({ type: Boolean, reflect: true }) declare open: boolean;\n\n /** Whether the notification can be dismissed */\n @property({ converter: booleanConverter, reflect: true })\n declare closable: boolean;\n\n /** Duration in milliseconds before auto-close (0 = no auto-close) */\n @property({ type: Number }) declare duration: number;\n\n /** Title of the notification */\n @property({ type: String }) declare title: string;\n\n /** Message content of the notification */\n @property({ type: String }) declare message: string;\n\n /**\n * Position of the notification on screen.\n * Note: For multiple notifications, consider using a container component.\n */\n @property({\n type: String,\n converter: {\n fromAttribute: (value: string | null) => {\n const valid = [\n 'top-left',\n 'top-center',\n 'top-right',\n 'bottom-left',\n 'bottom-center',\n 'bottom-right',\n ];\n return value && valid.includes(value) ? value : 'top-right';\n },\n },\n })\n declare position:\n | 'top-left'\n | 'top-center'\n | 'top-right'\n | 'bottom-left'\n | 'bottom-center'\n | 'bottom-right';\n\n @state() private autoCloseTimer: number | null = null;\n @state() private remainingTime: number = 0;\n @state() private timerPaused: boolean = false;\n @state() private isExiting: boolean = false;\n\n static styles = [notificationStyles];\n\n constructor() {\n super();\n this.variant = 'info';\n this.open = false;\n this.closable = true;\n this.duration = 0;\n this.title = '';\n this.message = '';\n this.position = 'top-right';\n }\n\n updated(changedProperties: Map<string, unknown>) {\n if (changedProperties.has('open')) {\n if (this.open) {\n this.handleOpen();\n } else {\n this.handleClose();\n }\n }\n\n if (changedProperties.has('duration') && this.open) {\n this.startAutoCloseTimer();\n }\n }\n\n disconnectedCallback() {\n super.disconnectedCallback();\n this.clearAutoCloseTimer();\n }\n\n /** Show the notification */\n show() {\n if (this.open) return;\n this.open = true;\n }\n\n /** Hide the notification */\n hide() {\n if (!this.open) return;\n this.open = false;\n }\n\n /**\n * Handles the notification opening.\n * Dispatches bp-show event, starts auto-close timer, and manages focus.\n */\n private handleOpen() {\n this.isExiting = false;\n this.dispatchEvent(\n new CustomEvent('bp-show', { bubbles: true, composed: true })\n );\n this.startAutoCloseTimer();\n\n // Focus close button for accessibility\n this.updateComplete.then(() => {\n if (this.closable) {\n const closeButton = this.shadowRoot?.querySelector(\n '.notification__close'\n ) as HTMLElement;\n closeButton?.focus();\n }\n });\n }\n\n /**\n * Handles the notification closing.\n * Clears auto-close timer and dispatches bp-hide event.\n */\n private handleClose() {\n this.clearAutoCloseTimer();\n this.dispatchEvent(\n new CustomEvent('bp-hide', { bubbles: true, composed: true })\n );\n }\n\n /**\n * Starts the auto-close timer based on the duration property.\n * Timer can be paused/resumed with pauseAutoCloseTimer/resumeAutoCloseTimer.\n */\n private startAutoCloseTimer() {\n this.clearAutoCloseTimer();\n\n if (this.duration > 0 && !this.timerPaused) {\n this.remainingTime = this.duration;\n this.autoCloseTimer = window.setTimeout(() => {\n this.hide();\n }, this.duration);\n }\n }\n\n /**\n * Clears the auto-close timer if it exists.\n */\n private clearAutoCloseTimer() {\n if (this.autoCloseTimer) {\n window.clearTimeout(this.autoCloseTimer);\n this.autoCloseTimer = null;\n }\n }\n\n /**\n * Pauses the auto-close timer when user hovers or focuses.\n * Allows users to read content or interact with actions.\n */\n private pauseAutoCloseTimer() {\n if (this.autoCloseTimer && this.duration > 0) {\n this.timerPaused = true;\n window.clearTimeout(this.autoCloseTimer);\n this.autoCloseTimer = null;\n }\n }\n\n /**\n * Resumes the auto-close timer with remaining time.\n */\n private resumeAutoCloseTimer() {\n if (this.timerPaused && this.duration > 0) {\n this.timerPaused = false;\n this.autoCloseTimer = window.setTimeout(() => {\n this.hide();\n }, this.remainingTime);\n }\n }\n\n /**\n * Handles close button click.\n * Hides notification and dispatches bp-close event.\n */\n private handleCloseClick() {\n this.hide();\n this.dispatchEvent(\n new CustomEvent('bp-close', { bubbles: true, composed: true })\n );\n }\n\n /**\n * Handles keyboard events.\n * Closes notification on Escape key if closable.\n */\n private handleKeydown(event: KeyboardEvent) {\n if (event.key === 'Escape' && this.closable) {\n this.handleCloseClick();\n }\n }\n\n /**\n * Returns the default icon for the notification variant.\n * Uses the bp-icon component for consistency with the design system.\n */\n private getDefaultIcon() {\n const iconMap = {\n success: 'check',\n warning: 'warning-circle',\n error: 'cross',\n info: 'info-circle',\n } as const;\n return html`<bp-icon name=${iconMap[this.variant]} size=\"md\"></bp-icon>`;\n }\n\n render() {\n if (!this.open) {\n return nothing;\n }\n\n return html`\n <div\n class=\"notification notification--${this.variant} notification--${this\n .position} ${this.isExiting\n ? 'notification--exiting'\n : 'notification--entering'}\"\n part=\"base\"\n role=\"alert\"\n aria-live=${this.variant === 'error' ? 'assertive' : 'polite'}\n @keydown=${this.handleKeydown}\n @mouseenter=${this.pauseAutoCloseTimer}\n @mouseleave=${this.resumeAutoCloseTimer}\n @focusin=${this.pauseAutoCloseTimer}\n @focusout=${this.resumeAutoCloseTimer}\n >\n <div class=\"notification__icon\" part=\"icon\">\n <slot name=\"icon\">${this.getDefaultIcon()}</slot>\n </div>\n\n <div class=\"notification__content\" part=\"content\">\n ${this.title\n ? html`<div class=\"notification__title\">${this.title}</div>`\n : nothing}\n <div class=\"notification__message\" part=\"message\">\n ${this.message || html`<slot></slot>`}\n </div>\n </div>\n\n <div class=\"notification__action\" part=\"action\">\n <slot name=\"action\"></slot>\n </div>\n\n ${this.closable\n ? html`\n <button\n type=\"button\"\n class=\"notification__close\"\n part=\"close-button\"\n aria-label=\"Close notification\"\n @click=${this.handleCloseClick}\n >\n <svg\n viewBox=\"0 0 24 24\"\n fill=\"none\"\n stroke=\"currentColor\"\n stroke-width=\"2\"\n >\n <path d=\"M18 6L6 18M6 6l12 12\" />\n </svg>\n </button>\n `\n : nothing}\n </div>\n `;\n }\n}\n\ndeclare global {\n interface HTMLElementTagNameMap {\n 'bp-notification': BpNotification;\n }\n}\n"],"names":["notificationStyles","css","BpNotification","LitElement","changedProperties","event","html","nothing","__decorateClass","property","value","booleanConverter","state","customElement"],"mappings":"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"}
|
|
1
|
+
{"version":3,"file":"notification.js","sources":["../../source/components/notification/notification.style.ts","../../source/components/notification/notification.ts"],"sourcesContent":["import { css } from 'lit';\n\nexport const notificationStyles = css`\n /* Base styles */\n :host {\n display: block;\n }\n\n .notification {\n display: flex;\n align-items: flex-start;\n gap: var(--bp-spacing-3);\n padding: var(--bp-spacing-4);\n background-color: var(--bp-color-surface-elevated);\n border: var(--bp-border-width) solid var(--bp-color-border);\n border-radius: var(--bp-border-radius-lg);\n box-shadow: var(--bp-shadow-lg);\n font-family: var(--bp-font-sans);\n font-size: var(--bp-font-size-sm);\n line-height: var(--bp-line-height-normal);\n color: var(--bp-color-text);\n max-width: 400px;\n min-width: 300px;\n animation: notification-slide-in var(--bp-duration-fast) var(--bp-ease-out);\n }\n\n @keyframes notification-slide-in {\n from {\n opacity: 0;\n transform: translateY(calc(-1 * var(--bp-spacing-2)));\n }\n to {\n opacity: 1;\n transform: translateY(0);\n }\n }\n\n @keyframes notification-slide-out {\n from {\n opacity: 1;\n transform: translateY(0);\n }\n to {\n opacity: 0;\n transform: translateY(calc(-1 * var(--bp-spacing-2)));\n }\n }\n\n .notification--exiting {\n animation: notification-slide-out var(--bp-duration-fast) var(--bp-ease-in)\n forwards;\n }\n\n @media (prefers-reduced-motion: reduce) {\n .notification {\n animation: none;\n }\n\n .notification--exiting {\n animation: none;\n opacity: 0;\n }\n }\n\n /* Icon */\n .notification__icon {\n flex-shrink: 0;\n display: flex;\n align-items: center;\n justify-content: center;\n }\n\n .notification__icon svg {\n width: 100%;\n height: 100%;\n }\n\n /* Content */\n .notification__content {\n flex: 1;\n min-width: 0;\n }\n\n .notification__title {\n font-weight: var(--bp-font-weight-semibold);\n margin-bottom: var(--bp-spacing-1);\n color: var(--bp-color-text-strong);\n }\n\n .notification__message {\n color: var(--bp-color-text-muted);\n }\n\n /* Action */\n .notification__action {\n display: flex;\n align-items: center;\n gap: var(--bp-spacing-1);\n }\n\n .notification__action:empty {\n display: none;\n }\n\n /* Close button */\n .notification__close {\n flex-shrink: 0;\n display: flex;\n align-items: center;\n justify-content: center;\n width: var(--bp-spacing-11);\n height: var(--bp-spacing-11);\n padding: 0;\n margin: calc(-1 * var(--bp-spacing-2));\n background: none;\n border: none;\n border-radius: var(--bp-border-radius-sm);\n color: var(--bp-color-text-muted);\n cursor: pointer;\n transition:\n color var(--bp-transition-fast),\n background-color var(--bp-transition-fast);\n }\n\n .notification__close:hover {\n color: var(--bp-color-text);\n background-color: var(--bp-color-surface-subdued);\n }\n\n .notification__close:focus-visible {\n outline: var(--bp-focus-width) var(--bp-focus-style) var(--bp-color-focus);\n outline-offset: var(--bp-focus-offset);\n }\n\n .notification__close svg {\n width: var(--bp-spacing-4);\n height: var(--bp-spacing-4);\n }\n\n /* Variants */\n .notification--info {\n border-left: var(--bp-spacing-1) solid var(--bp-color-info);\n }\n\n .notification--info .notification__icon {\n color: var(--bp-color-info);\n }\n\n .notification--success {\n border-left: var(--bp-spacing-1) solid var(--bp-color-success);\n }\n\n .notification--success .notification__icon {\n color: var(--bp-color-success);\n }\n\n .notification--warning {\n border-left: var(--bp-spacing-1) solid var(--bp-color-warning);\n }\n\n .notification--warning .notification__icon {\n color: var(--bp-color-warning);\n }\n\n .notification--error {\n border-left: var(--bp-spacing-1) solid var(--bp-color-error);\n }\n\n .notification--error .notification__icon {\n color: var(--bp-color-error);\n }\n\n /* Position variants */\n .notification--top-left,\n .notification--top-center,\n .notification--top-right,\n .notification--bottom-left,\n .notification--bottom-center,\n .notification--bottom-right {\n position: fixed;\n z-index: 10000;\n margin: var(--bp-spacing-4);\n }\n\n .notification--top-left {\n top: 0;\n left: 0;\n }\n\n .notification--top-center {\n top: 0;\n left: 50%;\n transform: translateX(-50%);\n }\n\n .notification--top-right {\n top: 0;\n right: 0;\n }\n\n .notification--bottom-left {\n bottom: 0;\n left: 0;\n }\n\n .notification--bottom-center {\n bottom: 0;\n left: 50%;\n transform: translateX(-50%);\n }\n\n .notification--bottom-right {\n bottom: 0;\n right: 0;\n }\n`;\n","import { LitElement, html, nothing } from 'lit';\nimport { customElement, property, state } from 'lit/decorators.js';\nimport { notificationStyles } from './notification.style.js';\nimport { booleanConverter } from '../../utilities/boolean-converter.js';\nimport '../icon/icon.js';\nimport '../icon/icons/entries/check.js';\nimport '../icon/icons/entries/warning-circle.js';\nimport '../icon/icons/entries/cross.js';\nimport '../icon/icons/entries/info-circle.js';\n\n/**\n * A notification/toast component for displaying non-blocking messages.\n * Notifications can be dismissed manually or auto-close after a duration.\n *\n * @fires bp-close - Dispatched when the notification is closed\n * @fires bp-show - Dispatched when the notification becomes visible\n * @fires bp-hide - Dispatched when the notification is hidden\n *\n * @slot - Default slot for notification content\n * @slot icon - Custom icon to display\n * @slot action - Action buttons or links\n *\n * @csspart base - The notification container\n * @csspart icon - The icon container\n * @csspart content - The content area\n * @csspart message - The message text container\n * @csspart action - The action slot container\n * @csspart close-button - The close button\n */\n@customElement('bp-notification')\nexport class BpNotification extends LitElement {\n /** The notification variant */\n @property({\n type: String,\n reflect: true,\n converter: {\n fromAttribute: (value: string | null) => {\n const valid = ['info', 'success', 'warning', 'error'];\n return value && valid.includes(value) ? value : 'info';\n },\n },\n })\n declare variant: 'info' | 'success' | 'warning' | 'error';\n\n /** Whether the notification is visible */\n @property({ type: Boolean, reflect: true }) declare open: boolean;\n\n /** Whether the notification can be dismissed */\n @property({ converter: booleanConverter, reflect: true })\n declare closable: boolean;\n\n /** Duration in milliseconds before auto-close (0 = no auto-close) */\n @property({ type: Number }) declare duration: number;\n\n /** Title of the notification */\n @property({ type: String }) declare title: string;\n\n /** Message content of the notification */\n @property({ type: String }) declare message: string;\n\n /**\n * Position of the notification on screen.\n * Note: For multiple notifications, consider using a container component.\n */\n @property({\n type: String,\n converter: {\n fromAttribute: (value: string | null) => {\n const valid = [\n 'top-left',\n 'top-center',\n 'top-right',\n 'bottom-left',\n 'bottom-center',\n 'bottom-right',\n ];\n return value && valid.includes(value) ? value : 'top-right';\n },\n },\n })\n declare position:\n | 'top-left'\n | 'top-center'\n | 'top-right'\n | 'bottom-left'\n | 'bottom-center'\n | 'bottom-right';\n\n @state() private autoCloseTimer: number | null = null;\n @state() private remainingTime: number = 0;\n @state() private timerPaused: boolean = false;\n @state() private isExiting: boolean = false;\n\n static styles = [notificationStyles];\n\n constructor() {\n super();\n this.variant = 'info';\n this.open = false;\n this.closable = true;\n this.duration = 0;\n this.title = '';\n this.message = '';\n this.position = 'top-right';\n }\n\n updated(changedProperties: Map<string, unknown>) {\n if (changedProperties.has('open')) {\n if (this.open) {\n this.handleOpen();\n } else {\n this.handleClose();\n }\n }\n\n if (changedProperties.has('duration') && this.open) {\n this.startAutoCloseTimer();\n }\n }\n\n disconnectedCallback() {\n super.disconnectedCallback();\n this.clearAutoCloseTimer();\n }\n\n /** Show the notification */\n show() {\n if (this.open) return;\n this.open = true;\n }\n\n /** Hide the notification */\n hide() {\n if (!this.open) return;\n this.open = false;\n }\n\n /**\n * Handles the notification opening.\n * Dispatches bp-show event, starts auto-close timer, and manages focus.\n */\n private handleOpen() {\n this.isExiting = false;\n this.dispatchEvent(\n new CustomEvent('bp-show', { bubbles: true, composed: true })\n );\n this.startAutoCloseTimer();\n\n // Focus close button for accessibility\n this.updateComplete.then(() => {\n if (this.closable) {\n const closeButton = this.shadowRoot?.querySelector(\n '.notification__close'\n ) as HTMLElement;\n closeButton?.focus();\n }\n });\n }\n\n /**\n * Handles the notification closing.\n * Clears auto-close timer and dispatches bp-hide event.\n */\n private handleClose() {\n this.clearAutoCloseTimer();\n this.dispatchEvent(\n new CustomEvent('bp-hide', { bubbles: true, composed: true })\n );\n }\n\n /**\n * Starts the auto-close timer based on the duration property.\n * Timer can be paused/resumed with pauseAutoCloseTimer/resumeAutoCloseTimer.\n */\n private startAutoCloseTimer() {\n this.clearAutoCloseTimer();\n\n if (this.duration > 0 && !this.timerPaused) {\n this.remainingTime = this.duration;\n this.autoCloseTimer = window.setTimeout(() => {\n this.hide();\n }, this.duration);\n }\n }\n\n /**\n * Clears the auto-close timer if it exists.\n */\n private clearAutoCloseTimer() {\n if (this.autoCloseTimer) {\n window.clearTimeout(this.autoCloseTimer);\n this.autoCloseTimer = null;\n }\n }\n\n /**\n * Pauses the auto-close timer when user hovers or focuses.\n * Allows users to read content or interact with actions.\n */\n private pauseAutoCloseTimer() {\n if (this.autoCloseTimer && this.duration > 0) {\n this.timerPaused = true;\n window.clearTimeout(this.autoCloseTimer);\n this.autoCloseTimer = null;\n }\n }\n\n /**\n * Resumes the auto-close timer with remaining time.\n */\n private resumeAutoCloseTimer() {\n if (this.timerPaused && this.duration > 0) {\n this.timerPaused = false;\n this.autoCloseTimer = window.setTimeout(() => {\n this.hide();\n }, this.remainingTime);\n }\n }\n\n /**\n * Handles close button click.\n * Hides notification and dispatches bp-close event.\n */\n private handleCloseClick() {\n this.hide();\n this.dispatchEvent(\n new CustomEvent('bp-close', { bubbles: true, composed: true })\n );\n }\n\n /**\n * Handles keyboard events.\n * Closes notification on Escape key if closable.\n */\n private handleKeydown(event: KeyboardEvent) {\n if (event.key === 'Escape' && this.closable) {\n this.handleCloseClick();\n }\n }\n\n /**\n * Returns the default icon for the notification variant.\n * Uses the bp-icon component for consistency with the design system.\n */\n private getDefaultIcon() {\n const iconMap = {\n success: 'check',\n warning: 'warning-circle',\n error: 'cross',\n info: 'info-circle',\n } as const;\n return html`<bp-icon name=${iconMap[this.variant]} size=\"md\"></bp-icon>`;\n }\n\n render() {\n if (!this.open) {\n return nothing;\n }\n\n return html`\n <div\n class=\"notification notification--${this.variant} notification--${this\n .position} ${this.isExiting\n ? 'notification--exiting'\n : 'notification--entering'}\"\n part=\"base\"\n role=\"alert\"\n aria-live=${this.variant === 'error' ? 'assertive' : 'polite'}\n @keydown=${this.handleKeydown}\n @mouseenter=${this.pauseAutoCloseTimer}\n @mouseleave=${this.resumeAutoCloseTimer}\n @focusin=${this.pauseAutoCloseTimer}\n @focusout=${this.resumeAutoCloseTimer}\n >\n <div class=\"notification__icon\" part=\"icon\">\n <slot name=\"icon\">${this.getDefaultIcon()}</slot>\n </div>\n\n <div class=\"notification__content\" part=\"content\">\n ${this.title\n ? html`<div class=\"notification__title\">${this.title}</div>`\n : nothing}\n <div class=\"notification__message\" part=\"message\">\n ${this.message || html`<slot></slot>`}\n </div>\n </div>\n\n <div class=\"notification__action\" part=\"action\">\n <slot name=\"action\"></slot>\n </div>\n\n ${this.closable\n ? html`\n <button\n type=\"button\"\n class=\"notification__close\"\n part=\"close-button\"\n aria-label=\"Close notification\"\n @click=${this.handleCloseClick}\n >\n <svg\n viewBox=\"0 0 24 24\"\n fill=\"none\"\n stroke=\"currentColor\"\n stroke-width=\"2\"\n >\n <path d=\"M18 6L6 18M6 6l12 12\" />\n </svg>\n </button>\n `\n : nothing}\n </div>\n `;\n }\n}\n\ndeclare global {\n interface HTMLElementTagNameMap {\n 'bp-notification': BpNotification;\n }\n}\n"],"names":["notificationStyles","css","BpNotification","LitElement","changedProperties","event","html","nothing","__decorateClass","property","value","booleanConverter","state","customElement"],"mappings":"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"}
|
|
@@ -1,5 +1,6 @@
|
|
|
1
1
|
import { LitElement } from 'lit';
|
|
2
2
|
import '../icon/icon.js';
|
|
3
|
+
import '../icon/icons/entries/close.js';
|
|
3
4
|
export type PopoverPlacement = 'top' | 'top-start' | 'top-end' | 'bottom' | 'bottom-start' | 'bottom-end' | 'left' | 'left-start' | 'left-end' | 'right' | 'right-start' | 'right-end';
|
|
4
5
|
export type PopoverTrigger = 'click' | 'hover' | 'focus' | 'manual';
|
|
5
6
|
/**
|
|
@@ -1 +1 @@
|
|
|
1
|
-
{"version":3,"file":"popover.d.ts","sourceRoot":"","sources":["../../../source/components/popover/popover.ts"],"names":[],"mappings":"AAAA,OAAO,EAAE,UAAU,EAAiB,MAAM,KAAK,CAAC;AAIhD,OAAO,iBAAiB,CAAC;
|
|
1
|
+
{"version":3,"file":"popover.d.ts","sourceRoot":"","sources":["../../../source/components/popover/popover.ts"],"names":[],"mappings":"AAAA,OAAO,EAAE,UAAU,EAAiB,MAAM,KAAK,CAAC;AAIhD,OAAO,iBAAiB,CAAC;AACzB,OAAO,gCAAgC,CAAC;AAExC,MAAM,MAAM,gBAAgB,GACxB,KAAK,GACL,WAAW,GACX,SAAS,GACT,QAAQ,GACR,cAAc,GACd,YAAY,GACZ,MAAM,GACN,YAAY,GACZ,UAAU,GACV,OAAO,GACP,aAAa,GACb,WAAW,CAAC;AAEhB,MAAM,MAAM,cAAc,GAAG,OAAO,GAAG,OAAO,GAAG,OAAO,GAAG,QAAQ,CAAC;AAEpE;;;;;;;;;;;;;;;;;;;;;GAqBG;AACH,qBACa,SAAU,SAAQ,UAAU;IACvC,4CAA4C;IACQ,IAAI,EAAE,OAAO,CAAC;IAElE,uDAAuD;IA0B/C,SAAS,EAAE,gBAAgB,CAAC;IAEpC,mCAAmC;IAiB3B,OAAO,EAAE,cAAc,CAAC;IAEhC,uDAAuD;IAClB,KAAK,EAAE,OAAO,CAAC;IAEpD,oDAAoD;IAE5C,SAAS,EAAE,OAAO,CAAC;IAE3B,kDAAkD;IAM1C,mBAAmB,EAAE,OAAO,CAAC;IAErC,iDAAiD;IAMzC,aAAa,EAAE,OAAO,CAAC;IAE/B,2DAA2D;IACvB,QAAQ,EAAE,MAAM,CAAC;IAErD,+DAA+D;IAEvD,SAAS,EAAE,MAAM,CAAC;IAE1B,8DAA8D;IAEtD,SAAS,EAAE,MAAM,CAAC;IAE1B,sCAAsC;IACD,QAAQ,EAAE,OAAO,CAAC;IAEvD,6CAA6C;IACT,KAAK,EAAE,MAAM,CAAC;IAElD,kDAAkD;IACzC,OAAO,CAAC,SAAS,CAAS;IAEnC,kDAAkD;IACzC,OAAO,CAAC,SAAS,CAAS;IAEP,OAAO,CAAC,cAAc,CAAe;IAEjE,OAAO,CAAC,WAAW,CAAuB;IAC1C,OAAO,CAAC,WAAW,CAAuB;IAC1C,OAAO,CAAC,SAAS,CAA4D;IAE7E,MAAM,CAAC,MAAM,4BAAmB;;IAkBhC,iBAAiB,IAAI,IAAI;IAQzB,oBAAoB,IAAI,IAAI;IAS5B,uBAAuB;IACvB,IAAI,IAAI,IAAI;IAiBZ,uBAAuB;IACvB,IAAI,IAAI,IAAI;IAiBZ,qCAAqC;IACrC,MAAM,IAAI,IAAI;IAQd;;;OAGG;IACH,OAAO,CAAC,aAAa;IAWrB;;;;OAIG;IACH,OAAO,CAAC,kBAAkB,CAIxB;IAEF;;;;OAIG;IACH,OAAO,CAAC,oBAAoB,CAU1B;IAEF;;;OAGG;IACH,OAAO,CAAC,uBAAuB,CAO7B;IAEF;;;OAGG;IACH,OAAO,CAAC,uBAAuB,CAO7B;IAEF;;;OAGG;IACH,OAAO,CAAC,qBAAqB,CAG3B;IAEF;;;OAGG;IACH,OAAO,CAAC,qBAAqB,CAO3B;IAEF;;;OAGG;IACH,OAAO,CAAC,kBAAkB,CAGxB;IAEF;;;OAGG;IACH,OAAO,CAAC,iBAAiB,CAGvB;IAEF;;;;OAIG;IACH,OAAO,CAAC,mBAAmB,CAQzB;IAEF;;;;OAIG;IACH,OAAO,CAAC,qBAAqB,CAQ3B;IAEF;;;OAGG;IACH,OAAO,CAAC,gBAAgB,CAEtB;IAEF;;;;OAIG;IACH,OAAO,CAAC,sBAAsB,CAK5B;IAEF;;;;OAIG;IACH,OAAO,CAAC,sBAAsB,CAK5B;IAEF,MAAM;CAyFP;AAED,OAAO,CAAC,MAAM,CAAC;IACb,UAAU,qBAAqB;QAC7B,YAAY,EAAE,SAAS,CAAC;KACzB;CACF"}
|
|
@@ -1 +1 @@
|
|
|
1
|
-
{"version":3,"file":"popover.js","sources":["../../source/components/popover/popover.style.ts","../../source/components/popover/popover.ts"],"sourcesContent":["import { css } from 'lit';\n\nexport const popoverStyles = css`\n /* Base styles */\n :host {\n display: inline-block;\n position: relative;\n }\n\n .popover {\n position: relative;\n display: inline-block;\n font-family: var(--bp-font-family);\n font-size: var(--bp-font-size-base);\n color: var(--bp-color-text);\n }\n\n /* Trigger */\n .popover__trigger {\n display: inline-flex;\n align-items: center;\n cursor: pointer;\n outline: none;\n user-select: none;\n }\n\n .popover__trigger:hover {\n opacity: 0.8;\n }\n\n .popover__trigger:focus-visible {\n outline: var(--bp-focus-width) var(--bp-focus-style) var(--bp-color-focus);\n outline-offset: var(--bp-focus-offset);\n border-radius: var(--bp-border-radius-sm);\n }\n\n .popover--disabled .popover__trigger {\n cursor: not-allowed;\n opacity: var(--bp-opacity-disabled);\n }\n\n /* Panel base */\n .popover__panel {\n position: absolute;\n z-index: var(--bp-z-popover);\n min-width: 160px;\n max-width: 320px;\n max-height: calc(100vh - 80px);\n background-color: var(--bp-color-surface-elevated);\n border: var(--bp-border-width) solid var(--bp-color-border);\n border-radius: var(--bp-border-radius-lg);\n box-shadow: var(--bp-shadow-lg);\n opacity: 1;\n animation: popover-fade-in var(--bp-transition-fast) ease-out;\n }\n\n @keyframes popover-fade-in {\n from {\n opacity: 0;\n transform: scale(0.95);\n }\n to {\n opacity: 1;\n transform: scale(1);\n }\n }\n\n /* Panel placements - Bottom */\n .popover__panel--bottom,\n .popover__panel--bottom-start,\n .popover__panel--bottom-end {\n top: 100%;\n margin-top: var(--popover-distance);\n }\n\n .popover__panel--bottom {\n left: 50%;\n transform: translateX(-50%);\n }\n\n .popover__panel--bottom-start {\n left: 0;\n }\n\n .popover__panel--bottom-end {\n right: 0;\n }\n\n /* Panel placements - Top */\n .popover__panel--top,\n .popover__panel--top-start,\n .popover__panel--top-end {\n bottom: 100%;\n margin-bottom: var(--popover-distance);\n }\n\n .popover__panel--top {\n left: 50%;\n transform: translateX(-50%);\n }\n\n .popover__panel--top-start {\n left: 0;\n }\n\n .popover__panel--top-end {\n right: 0;\n }\n\n /* Panel placements - Left */\n .popover__panel--left,\n .popover__panel--left-start,\n .popover__panel--left-end {\n right: 100%;\n margin-right: var(--popover-distance);\n }\n\n .popover__panel--left {\n top: 50%;\n transform: translateY(-50%);\n }\n\n .popover__panel--left-start {\n top: 0;\n }\n\n .popover__panel--left-end {\n bottom: 0;\n }\n\n /* Panel placements - Right */\n .popover__panel--right,\n .popover__panel--right-start,\n .popover__panel--right-end {\n left: 100%;\n margin-left: var(--popover-distance);\n }\n\n .popover__panel--right {\n top: 50%;\n transform: translateY(-50%);\n }\n\n .popover__panel--right-start {\n top: 0;\n }\n\n .popover__panel--right-end {\n bottom: 0;\n }\n\n /* Arrow */\n .popover__arrow {\n position: absolute;\n width: var(--bp-spacing-5);\n height: var(--bp-spacing-5);\n background-color: var(--bp-color-surface-elevated);\n border: var(--bp-border-width) solid var(--bp-color-border);\n transform: rotate(45deg);\n z-index: -1;\n }\n\n /* Arrow positions - bottom placements */\n .popover__panel--bottom .popover__arrow,\n .popover__panel--bottom-start .popover__arrow,\n .popover__panel--bottom-end .popover__arrow {\n top: calc(var(--bp-spacing-2) * -1);\n border-bottom: none;\n border-right: none;\n }\n\n .popover__panel--bottom .popover__arrow {\n left: 50%;\n transform: translateX(-50%) rotate(45deg);\n }\n\n .popover__panel--bottom-start .popover__arrow {\n left: var(--bp-spacing-5);\n }\n\n .popover__panel--bottom-end .popover__arrow {\n right: var(--bp-spacing-5);\n }\n\n /* Arrow positions - top placements */\n .popover__panel--top .popover__arrow,\n .popover__panel--top-start .popover__arrow,\n .popover__panel--top-end .popover__arrow {\n bottom: calc(var(--bp-spacing-2) * -1);\n border-top: none;\n border-left: none;\n }\n\n .popover__panel--top .popover__arrow {\n left: 50%;\n transform: translateX(-50%) rotate(45deg);\n }\n\n .popover__panel--top-start .popover__arrow {\n left: var(--bp-spacing-5);\n }\n\n .popover__panel--top-end .popover__arrow {\n right: var(--bp-spacing-5);\n }\n\n /* Arrow positions - left placements */\n .popover__panel--left .popover__arrow,\n .popover__panel--left-start .popover__arrow,\n .popover__panel--left-end .popover__arrow {\n right: calc(var(--bp-spacing-2) * -1);\n border-left: none;\n border-bottom: none;\n }\n\n .popover__panel--left .popover__arrow {\n top: 50%;\n transform: translateY(-50%) rotate(45deg);\n }\n\n .popover__panel--left-start .popover__arrow {\n top: var(--bp-spacing-5);\n }\n\n .popover__panel--left-end .popover__arrow {\n bottom: var(--bp-spacing-5);\n }\n\n /* Arrow positions - right placements */\n .popover__panel--right .popover__arrow,\n .popover__panel--right-start .popover__arrow,\n .popover__panel--right-end .popover__arrow {\n left: calc(var(--bp-spacing-2) * -1);\n border-right: none;\n border-top: none;\n }\n\n .popover__panel--right .popover__arrow {\n top: 50%;\n transform: translateY(-50%) rotate(45deg);\n }\n\n .popover__panel--right-start .popover__arrow {\n top: var(--bp-spacing-5);\n }\n\n .popover__panel--right-end .popover__arrow {\n bottom: var(--bp-spacing-5);\n }\n\n /* Header */\n .popover__header {\n display: flex;\n align-items: center;\n justify-content: space-between;\n gap: var(--bp-spacing-4);\n padding: var(--bp-spacing-4) var(--bp-spacing-5);\n border-bottom: var(--bp-border-width) solid var(--bp-color-border);\n }\n\n .popover__header ::slotted(*) {\n margin: 0;\n font-size: var(--bp-font-size-base);\n font-weight: var(--bp-font-weight-semibold);\n color: var(--bp-color-text-strong);\n }\n\n /* Body */\n .popover__body {\n padding: var(--bp-spacing-4) var(--bp-spacing-5);\n overflow-y: auto;\n max-height: calc(100vh - 160px);\n }\n\n /* Footer */\n .popover__footer {\n display: flex;\n align-items: center;\n gap: var(--bp-spacing-4);\n padding: var(--bp-spacing-4) var(--bp-spacing-5);\n border-top: var(--bp-border-width) solid var(--bp-color-border);\n }\n\n /* Close button */\n .popover__close {\n display: flex;\n align-items: center;\n justify-content: center;\n width: 44px;\n height: 44px;\n padding: 0;\n margin-left: auto;\n background: transparent;\n border: none;\n border-radius: var(--bp-border-radius-sm);\n color: var(--bp-color-text-muted);\n cursor: pointer;\n transition:\n background-color var(--bp-transition-fast),\n color var(--bp-transition-fast),\n transform var(--bp-transition-fast);\n }\n\n .popover__close:hover {\n background-color: var(--bp-color-surface-subdued);\n color: var(--bp-color-text);\n }\n\n .popover__close:active {\n background-color: var(--bp-color-surface-pressed);\n transform: translateY(1px);\n }\n\n .popover__close:focus {\n outline: var(--bp-focus-width) var(--bp-focus-style) var(--bp-color-focus);\n outline-offset: var(--bp-focus-offset);\n }\n\n .popover__close:focus:not(:focus-visible) {\n outline: none;\n }\n\n .popover__close:focus-visible {\n outline: var(--bp-focus-width) var(--bp-focus-style) var(--bp-color-focus);\n outline-offset: var(--bp-focus-offset);\n }\n\n .popover__close bp-icon {\n width: var(--bp-spacing-4);\n height: var(--bp-spacing-4);\n }\n\n /* Reduced motion */\n @media (prefers-reduced-motion: reduce) {\n .popover__panel {\n animation: none;\n }\n\n .popover__close {\n transition: none;\n }\n }\n`;\n","import { LitElement, html, nothing } from 'lit';\nimport { customElement, property, state, query } from 'lit/decorators.js';\nimport { popoverStyles } from './popover.style.js';\nimport { booleanConverter } from '../../utilities/boolean-converter.js';\nimport '../icon/icon.js';\n\nexport type PopoverPlacement =\n | 'top'\n | 'top-start'\n | 'top-end'\n | 'bottom'\n | 'bottom-start'\n | 'bottom-end'\n | 'left'\n | 'left-start'\n | 'left-end'\n | 'right'\n | 'right-start'\n | 'right-end';\n\nexport type PopoverTrigger = 'click' | 'hover' | 'focus' | 'manual';\n\n/**\n * A popover component that displays rich content in a floating panel.\n * Supports multiple trigger modes: click, hover, focus, or manual control.\n *\n * @fires bp-show - Fired when the popover opens\n * @fires bp-hide - Fired when the popover closes\n * @fires bp-after-show - Fired after the popover open animation completes\n * @fires bp-after-hide - Fired after the popover close animation completes\n *\n * @slot - The trigger element that controls the popover\n * @slot content - The rich content to display in the popover panel\n * @slot header - Optional header content for the popover\n * @slot footer - Optional footer content for the popover\n *\n * @csspart trigger - The trigger wrapper element\n * @csspart panel - The popover panel container\n * @csspart header - The header section\n * @csspart body - The body/content section\n * @csspart footer - The footer section\n * @csspart arrow - The arrow pointing to the trigger\n * @csspart close-button - The close button (when showClose is true)\n */\n@customElement('bp-popover')\nexport class BpPopover extends LitElement {\n /** Whether the popover is currently open */\n @property({ type: Boolean, reflect: true }) declare open: boolean;\n\n /** Placement of the popover relative to the trigger */\n @property({\n type: String,\n reflect: true,\n converter: {\n fromAttribute: (value: string | null): PopoverPlacement => {\n const validPlacements: PopoverPlacement[] = [\n 'top',\n 'top-start',\n 'top-end',\n 'bottom',\n 'bottom-start',\n 'bottom-end',\n 'left',\n 'left-start',\n 'left-end',\n 'right',\n 'right-start',\n 'right-end',\n ];\n return validPlacements.includes(value as PopoverPlacement)\n ? (value as PopoverPlacement)\n : 'bottom';\n },\n },\n })\n declare placement: PopoverPlacement;\n\n /** How the popover is triggered */\n @property({\n type: String,\n converter: {\n fromAttribute: (value: string | null): PopoverTrigger => {\n const validTriggers: PopoverTrigger[] = [\n 'click',\n 'hover',\n 'focus',\n 'manual',\n ];\n return validTriggers.includes(value as PopoverTrigger)\n ? (value as PopoverTrigger)\n : 'click';\n },\n },\n })\n declare trigger: PopoverTrigger;\n\n /** Whether to show an arrow pointing to the trigger */\n @property({ type: Boolean }) declare arrow: boolean;\n\n /** Whether to show a close button in the popover */\n @property({ type: Boolean, attribute: 'show-close' })\n declare showClose: boolean;\n\n /** Whether clicking outside closes the popover */\n @property({\n converter: booleanConverter,\n attribute: 'close-on-outside-click',\n reflect: true,\n })\n declare closeOnOutsideClick: boolean;\n\n /** Whether pressing Escape closes the popover */\n @property({\n converter: booleanConverter,\n attribute: 'close-on-escape',\n reflect: true,\n })\n declare closeOnEscape: boolean;\n\n /** Distance in pixels between the trigger and the panel */\n @property({ type: Number }) declare distance: number;\n\n /** Delay in milliseconds before showing (for hover trigger) */\n @property({ type: Number, attribute: 'show-delay' })\n declare showDelay: number;\n\n /** Delay in milliseconds before hiding (for hover trigger) */\n @property({ type: Number, attribute: 'hide-delay' })\n declare hideDelay: number;\n\n /** Whether the popover is disabled */\n @property({ type: Boolean }) declare disabled: boolean;\n\n /** Accessible label for the popover panel */\n @property({ type: String }) declare label: string;\n\n /** Whether the popover has header slot content */\n @state() private hasHeader = false;\n\n /** Whether the popover has footer slot content */\n @state() private hasFooter = false;\n\n @query('.popover__trigger') private triggerElement!: HTMLElement;\n\n private showTimeout: number | null = null;\n private hideTimeout: number | null = null;\n private popoverId = `popover-${Math.random().toString(36).substring(2, 11)}`;\n\n static styles = [popoverStyles];\n\n constructor() {\n super();\n this.open = false;\n this.placement = 'bottom';\n this.trigger = 'click';\n this.arrow = false;\n this.showClose = false;\n this.closeOnOutsideClick = true;\n this.closeOnEscape = true;\n this.distance = 8;\n this.showDelay = 200;\n this.hideDelay = 200;\n this.disabled = false;\n this.label = '';\n }\n\n connectedCallback(): void {\n super.connectedCallback();\n document.addEventListener('click', this.handleDocumentClick, {\n passive: true,\n });\n document.addEventListener('keydown', this.handleDocumentKeydown);\n }\n\n disconnectedCallback(): void {\n super.disconnectedCallback();\n document.removeEventListener('click', this.handleDocumentClick, {\n passive: true,\n } as EventListenerOptions);\n document.removeEventListener('keydown', this.handleDocumentKeydown);\n this.clearTimeouts();\n }\n\n /** Show the popover */\n show(): void {\n if (this.disabled || this.open) return;\n\n this.clearTimeouts();\n this.open = true;\n\n this.dispatchEvent(\n new CustomEvent('bp-show', { bubbles: true, composed: true })\n );\n\n this.updateComplete.then(() => {\n this.dispatchEvent(\n new CustomEvent('bp-after-show', { bubbles: true, composed: true })\n );\n });\n }\n\n /** Hide the popover */\n hide(): void {\n if (!this.open) return;\n\n this.clearTimeouts();\n this.open = false;\n\n this.dispatchEvent(\n new CustomEvent('bp-hide', { bubbles: true, composed: true })\n );\n\n this.updateComplete.then(() => {\n this.dispatchEvent(\n new CustomEvent('bp-after-hide', { bubbles: true, composed: true })\n );\n });\n }\n\n /** Toggle the popover open/closed */\n toggle(): void {\n if (this.open) {\n this.hide();\n } else {\n this.show();\n }\n }\n\n /**\n * Clears any pending show/hide timeout operations.\n * Prevents race conditions with rapid trigger interactions.\n */\n private clearTimeouts(): void {\n if (this.showTimeout !== null) {\n window.clearTimeout(this.showTimeout);\n this.showTimeout = null;\n }\n if (this.hideTimeout !== null) {\n window.clearTimeout(this.hideTimeout);\n this.hideTimeout = null;\n }\n }\n\n /**\n * Handles click events on the trigger element.\n * Toggles popover state for click trigger mode.\n * @param event - The mouse click event\n */\n private handleTriggerClick = (event: MouseEvent): void => {\n if (this.disabled || this.trigger !== 'click') return;\n event.stopPropagation();\n this.toggle();\n };\n\n /**\n * Handles keyboard events on the trigger element.\n * Toggles popover on Enter or Space key for click trigger mode.\n * @param event - The keyboard event\n */\n private handleTriggerKeydown = (event: KeyboardEvent): void => {\n if (this.disabled) return;\n\n if (\n this.trigger === 'click' &&\n (event.key === 'Enter' || event.key === ' ')\n ) {\n event.preventDefault();\n this.toggle();\n }\n };\n\n /**\n * Handles mouse enter events on the trigger element.\n * Starts the show delay timer for hover trigger mode.\n */\n private handleTriggerMouseEnter = (): void => {\n if (this.disabled || this.trigger !== 'hover') return;\n\n this.clearTimeouts();\n this.showTimeout = window.setTimeout(() => {\n this.show();\n }, this.showDelay);\n };\n\n /**\n * Handles mouse leave events on the trigger element.\n * Starts the hide delay timer for hover trigger mode.\n */\n private handleTriggerMouseLeave = (): void => {\n if (this.trigger !== 'hover') return;\n\n this.clearTimeouts();\n this.hideTimeout = window.setTimeout(() => {\n this.hide();\n }, this.hideDelay);\n };\n\n /**\n * Handles mouse enter events on the popover panel.\n * Prevents the popover from hiding when hovering over panel content in hover trigger mode.\n */\n private handlePanelMouseEnter = (): void => {\n if (this.trigger !== 'hover') return;\n this.clearTimeouts();\n };\n\n /**\n * Handles mouse leave events on the popover panel.\n * Starts the hide delay timer when leaving panel in hover trigger mode.\n */\n private handlePanelMouseLeave = (): void => {\n if (this.trigger !== 'hover') return;\n\n this.clearTimeouts();\n this.hideTimeout = window.setTimeout(() => {\n this.hide();\n }, this.hideDelay);\n };\n\n /**\n * Handles focus events on the trigger element.\n * Shows popover immediately for focus trigger mode.\n */\n private handleTriggerFocus = (): void => {\n if (this.disabled || this.trigger !== 'focus') return;\n this.show();\n };\n\n /**\n * Handles blur events on the trigger element.\n * Hides popover immediately for focus trigger mode.\n */\n private handleTriggerBlur = (): void => {\n if (this.trigger !== 'focus') return;\n this.hide();\n };\n\n /**\n * Handles click events on the document.\n * Closes popover when clicking outside if closeOnOutsideClick is true.\n * @param event - The mouse click event\n */\n private handleDocumentClick = (event: MouseEvent): void => {\n if (!this.closeOnOutsideClick || !this.open) return;\n if (this.trigger === 'manual') return;\n\n const path = event.composedPath();\n if (!path.includes(this)) {\n this.hide();\n }\n };\n\n /**\n * Handles keyboard events on the document.\n * Closes popover on Escape key if closeOnEscape is true and returns focus to trigger.\n * @param event - The keyboard event\n */\n private handleDocumentKeydown = (event: KeyboardEvent): void => {\n if (!this.closeOnEscape || !this.open) return;\n\n if (event.key === 'Escape') {\n event.preventDefault();\n this.hide();\n this.triggerElement?.focus();\n }\n };\n\n /**\n * Handles click events on the close button.\n * Closes the popover immediately.\n */\n private handleCloseClick = (): void => {\n this.hide();\n };\n\n /**\n * Handles changes to the header slot.\n * Updates internal state to conditionally render header wrapper.\n * @param event - The slotchange event\n */\n private handleHeaderSlotChange = (event: Event): void => {\n const slot = event.target as HTMLElement & {\n assignedNodes: (options?: { flatten?: boolean }) => Node[];\n };\n this.hasHeader = slot.assignedNodes({ flatten: true }).length > 0;\n };\n\n /**\n * Handles changes to the footer slot.\n * Updates internal state to conditionally render footer wrapper.\n * @param event - The slotchange event\n */\n private handleFooterSlotChange = (event: Event): void => {\n const slot = event.target as HTMLElement & {\n assignedNodes: (options?: { flatten?: boolean }) => Node[];\n };\n this.hasFooter = slot.assignedNodes({ flatten: true }).length > 0;\n };\n\n render() {\n return html`\n <div\n class=\"popover ${this.open ? 'popover--open' : ''} ${this.disabled\n ? 'popover--disabled'\n : ''}\"\n >\n <div\n class=\"popover__trigger\"\n part=\"trigger\"\n tabindex=${this.disabled ? -1 : 0}\n role=\"button\"\n aria-haspopup=\"dialog\"\n aria-expanded=${this.open}\n aria-controls=${this.open ? this.popoverId : nothing}\n aria-disabled=${this.disabled}\n @click=${this.handleTriggerClick}\n @keydown=${this.handleTriggerKeydown}\n @mouseenter=${this.handleTriggerMouseEnter}\n @mouseleave=${this.handleTriggerMouseLeave}\n @focus=${this.handleTriggerFocus}\n @blur=${this.handleTriggerBlur}\n >\n <slot></slot>\n </div>\n ${this.open\n ? html`\n <div\n id=${this.popoverId}\n class=\"popover__panel popover__panel--${this.placement}\"\n part=\"panel\"\n role=\"dialog\"\n aria-label=${this.label || nothing}\n aria-modal=\"false\"\n style=\"--popover-distance: ${this.distance}px;\"\n @mouseenter=${this.handlePanelMouseEnter}\n @mouseleave=${this.handlePanelMouseLeave}\n >\n ${this.arrow\n ? html`<div class=\"popover__arrow\" part=\"arrow\"></div>`\n : nothing}\n ${this.hasHeader || this.showClose\n ? html`\n <div class=\"popover__header\" part=\"header\">\n <slot\n name=\"header\"\n @slotchange=${this.handleHeaderSlotChange}\n ></slot>\n ${this.showClose\n ? html`\n <button\n class=\"popover__close\"\n part=\"close-button\"\n type=\"button\"\n aria-label=\"Close popover\"\n @click=${this.handleCloseClick}\n >\n <bp-icon name=\"close\" size=\"sm\"></bp-icon>\n </button>\n `\n : nothing}\n </div>\n `\n : html`<slot\n name=\"header\"\n @slotchange=${this.handleHeaderSlotChange}\n ></slot>`}\n <div class=\"popover__body\" part=\"body\">\n <slot name=\"content\"></slot>\n </div>\n ${this.hasFooter\n ? html`\n <div class=\"popover__footer\" part=\"footer\">\n <slot\n name=\"footer\"\n @slotchange=${this.handleFooterSlotChange}\n ></slot>\n </div>\n `\n : html`<slot\n name=\"footer\"\n @slotchange=${this.handleFooterSlotChange}\n ></slot>`}\n </div>\n `\n : nothing}\n </div>\n `;\n }\n}\n\ndeclare global {\n interface HTMLElementTagNameMap {\n 'bp-popover': BpPopover;\n }\n}\n"],"names":["popoverStyles","css","BpPopover","LitElement","event","slot","html","nothing","__decorateClass","property","value","booleanConverter","state","query","customElement"],"mappings":";;;AAEO,MAAMA,IAAgBC;AAAA;AAAA;AAAA;AAAA;AAAA;AAAA;AAAA;AAAA;AAAA;AAAA;AAAA;AAAA;AAAA;AAAA;AAAA;AAAA;AAAA;AAAA;AAAA;AAAA;AAAA;AAAA;AAAA;AAAA;AAAA;AAAA;AAAA;AAAA;AAAA;AAAA;AAAA;AAAA;AAAA;AAAA;AAAA;AAAA;AAAA;AAAA;AAAA;AAAA;AAAA;AAAA;AAAA;AAAA;AAAA;AAAA;AAAA;AAAA;AAAA;AAAA;AAAA;AAAA;AAAA;AAAA;AAAA;AAAA;AAAA;AAAA;AAAA;AAAA;AAAA;AAAA;AAAA;AAAA;AAAA;AAAA;AAAA;AAAA;AAAA;AAAA;AAAA;AAAA;AAAA;AAAA;AAAA;AAAA;AAAA;AAAA;AAAA;AAAA;AAAA;AAAA;AAAA;AAAA;AAAA;AAAA;AAAA;AAAA;AAAA;AAAA;AAAA;AAAA;AAAA;AAAA;AAAA;AAAA;AAAA;AAAA;AAAA;AAAA;AAAA;AAAA;AAAA;AAAA;AAAA;AAAA;AAAA;AAAA;AAAA;AAAA;AAAA;AAAA;AAAA;AAAA;AAAA;AAAA;AAAA;AAAA;AAAA;AAAA;AAAA;AAAA;AAAA;AAAA;AAAA;AAAA;AAAA;AAAA;AAAA;AAAA;AAAA;AAAA;AAAA;AAAA;AAAA;AAAA;AAAA;AAAA;AAAA;AAAA;AAAA;AAAA;AAAA;AAAA;AAAA;AAAA;AAAA;AAAA;AAAA;AAAA;AAAA;AAAA;AAAA;AAAA;AAAA;AAAA;AAAA;AAAA;AAAA;AAAA;AAAA;AAAA;AAAA;AAAA;AAAA;AAAA;AAAA;AAAA;AAAA;AAAA;AAAA;AAAA;AAAA;AAAA;AAAA;AAAA;AAAA;AAAA;AAAA;AAAA;AAAA;AAAA;AAAA;AAAA;AAAA;AAAA;AAAA;AAAA;AAAA;AAAA;AAAA;AAAA;AAAA;AAAA;AAAA;AAAA;AAAA;AAAA;AAAA;AAAA;AAAA;AAAA;AAAA;AAAA;AAAA;AAAA;AAAA;AAAA;AAAA;AAAA;AAAA;AAAA;AAAA;AAAA;AAAA;AAAA;AAAA;AAAA;AAAA;AAAA;AAAA;AAAA;AAAA;AAAA;AAAA;AAAA;AAAA;AAAA;AAAA;AAAA;AAAA;AAAA;AAAA;AAAA;AAAA;AAAA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"}
|
|
1
|
+
{"version":3,"file":"popover.js","sources":["../../source/components/popover/popover.style.ts","../../source/components/popover/popover.ts"],"sourcesContent":["import { css } from 'lit';\n\nexport const popoverStyles = css`\n /* Base styles */\n :host {\n display: inline-block;\n position: relative;\n }\n\n .popover {\n position: relative;\n display: inline-block;\n font-family: var(--bp-font-family);\n font-size: var(--bp-font-size-base);\n color: var(--bp-color-text);\n }\n\n /* Trigger */\n .popover__trigger {\n display: inline-flex;\n align-items: center;\n cursor: pointer;\n outline: none;\n user-select: none;\n }\n\n .popover__trigger:hover {\n opacity: 0.8;\n }\n\n .popover__trigger:focus-visible {\n outline: var(--bp-focus-width) var(--bp-focus-style) var(--bp-color-focus);\n outline-offset: var(--bp-focus-offset);\n border-radius: var(--bp-border-radius-sm);\n }\n\n .popover--disabled .popover__trigger {\n cursor: not-allowed;\n opacity: var(--bp-opacity-disabled);\n }\n\n /* Panel base */\n .popover__panel {\n position: absolute;\n z-index: var(--bp-z-popover);\n min-width: 160px;\n max-width: 320px;\n max-height: calc(100vh - 80px);\n background-color: var(--bp-color-surface-elevated);\n border: var(--bp-border-width) solid var(--bp-color-border);\n border-radius: var(--bp-border-radius-lg);\n box-shadow: var(--bp-shadow-lg);\n opacity: 1;\n animation: popover-fade-in var(--bp-transition-fast) ease-out;\n }\n\n @keyframes popover-fade-in {\n from {\n opacity: 0;\n transform: scale(0.95);\n }\n to {\n opacity: 1;\n transform: scale(1);\n }\n }\n\n /* Panel placements - Bottom */\n .popover__panel--bottom,\n .popover__panel--bottom-start,\n .popover__panel--bottom-end {\n top: 100%;\n margin-top: var(--popover-distance);\n }\n\n .popover__panel--bottom {\n left: 50%;\n transform: translateX(-50%);\n }\n\n .popover__panel--bottom-start {\n left: 0;\n }\n\n .popover__panel--bottom-end {\n right: 0;\n }\n\n /* Panel placements - Top */\n .popover__panel--top,\n .popover__panel--top-start,\n .popover__panel--top-end {\n bottom: 100%;\n margin-bottom: var(--popover-distance);\n }\n\n .popover__panel--top {\n left: 50%;\n transform: translateX(-50%);\n }\n\n .popover__panel--top-start {\n left: 0;\n }\n\n .popover__panel--top-end {\n right: 0;\n }\n\n /* Panel placements - Left */\n .popover__panel--left,\n .popover__panel--left-start,\n .popover__panel--left-end {\n right: 100%;\n margin-right: var(--popover-distance);\n }\n\n .popover__panel--left {\n top: 50%;\n transform: translateY(-50%);\n }\n\n .popover__panel--left-start {\n top: 0;\n }\n\n .popover__panel--left-end {\n bottom: 0;\n }\n\n /* Panel placements - Right */\n .popover__panel--right,\n .popover__panel--right-start,\n .popover__panel--right-end {\n left: 100%;\n margin-left: var(--popover-distance);\n }\n\n .popover__panel--right {\n top: 50%;\n transform: translateY(-50%);\n }\n\n .popover__panel--right-start {\n top: 0;\n }\n\n .popover__panel--right-end {\n bottom: 0;\n }\n\n /* Arrow */\n .popover__arrow {\n position: absolute;\n width: var(--bp-spacing-5);\n height: var(--bp-spacing-5);\n background-color: var(--bp-color-surface-elevated);\n border: var(--bp-border-width) solid var(--bp-color-border);\n transform: rotate(45deg);\n z-index: -1;\n }\n\n /* Arrow positions - bottom placements */\n .popover__panel--bottom .popover__arrow,\n .popover__panel--bottom-start .popover__arrow,\n .popover__panel--bottom-end .popover__arrow {\n top: calc(var(--bp-spacing-2) * -1);\n border-bottom: none;\n border-right: none;\n }\n\n .popover__panel--bottom .popover__arrow {\n left: 50%;\n transform: translateX(-50%) rotate(45deg);\n }\n\n .popover__panel--bottom-start .popover__arrow {\n left: var(--bp-spacing-5);\n }\n\n .popover__panel--bottom-end .popover__arrow {\n right: var(--bp-spacing-5);\n }\n\n /* Arrow positions - top placements */\n .popover__panel--top .popover__arrow,\n .popover__panel--top-start .popover__arrow,\n .popover__panel--top-end .popover__arrow {\n bottom: calc(var(--bp-spacing-2) * -1);\n border-top: none;\n border-left: none;\n }\n\n .popover__panel--top .popover__arrow {\n left: 50%;\n transform: translateX(-50%) rotate(45deg);\n }\n\n .popover__panel--top-start .popover__arrow {\n left: var(--bp-spacing-5);\n }\n\n .popover__panel--top-end .popover__arrow {\n right: var(--bp-spacing-5);\n }\n\n /* Arrow positions - left placements */\n .popover__panel--left .popover__arrow,\n .popover__panel--left-start .popover__arrow,\n .popover__panel--left-end .popover__arrow {\n right: calc(var(--bp-spacing-2) * -1);\n border-left: none;\n border-bottom: none;\n }\n\n .popover__panel--left .popover__arrow {\n top: 50%;\n transform: translateY(-50%) rotate(45deg);\n }\n\n .popover__panel--left-start .popover__arrow {\n top: var(--bp-spacing-5);\n }\n\n .popover__panel--left-end .popover__arrow {\n bottom: var(--bp-spacing-5);\n }\n\n /* Arrow positions - right placements */\n .popover__panel--right .popover__arrow,\n .popover__panel--right-start .popover__arrow,\n .popover__panel--right-end .popover__arrow {\n left: calc(var(--bp-spacing-2) * -1);\n border-right: none;\n border-top: none;\n }\n\n .popover__panel--right .popover__arrow {\n top: 50%;\n transform: translateY(-50%) rotate(45deg);\n }\n\n .popover__panel--right-start .popover__arrow {\n top: var(--bp-spacing-5);\n }\n\n .popover__panel--right-end .popover__arrow {\n bottom: var(--bp-spacing-5);\n }\n\n /* Header */\n .popover__header {\n display: flex;\n align-items: center;\n justify-content: space-between;\n gap: var(--bp-spacing-4);\n padding: var(--bp-spacing-4) var(--bp-spacing-5);\n border-bottom: var(--bp-border-width) solid var(--bp-color-border);\n }\n\n .popover__header ::slotted(*) {\n margin: 0;\n font-size: var(--bp-font-size-base);\n font-weight: var(--bp-font-weight-semibold);\n color: var(--bp-color-text-strong);\n }\n\n /* Body */\n .popover__body {\n padding: var(--bp-spacing-4) var(--bp-spacing-5);\n overflow-y: auto;\n max-height: calc(100vh - 160px);\n }\n\n /* Footer */\n .popover__footer {\n display: flex;\n align-items: center;\n gap: var(--bp-spacing-4);\n padding: var(--bp-spacing-4) var(--bp-spacing-5);\n border-top: var(--bp-border-width) solid var(--bp-color-border);\n }\n\n /* Close button */\n .popover__close {\n display: flex;\n align-items: center;\n justify-content: center;\n width: 44px;\n height: 44px;\n padding: 0;\n margin-left: auto;\n background: transparent;\n border: none;\n border-radius: var(--bp-border-radius-sm);\n color: var(--bp-color-text-muted);\n cursor: pointer;\n transition:\n background-color var(--bp-transition-fast),\n color var(--bp-transition-fast),\n transform var(--bp-transition-fast);\n }\n\n .popover__close:hover {\n background-color: var(--bp-color-surface-subdued);\n color: var(--bp-color-text);\n }\n\n .popover__close:active {\n background-color: var(--bp-color-surface-pressed);\n transform: translateY(1px);\n }\n\n .popover__close:focus {\n outline: var(--bp-focus-width) var(--bp-focus-style) var(--bp-color-focus);\n outline-offset: var(--bp-focus-offset);\n }\n\n .popover__close:focus:not(:focus-visible) {\n outline: none;\n }\n\n .popover__close:focus-visible {\n outline: var(--bp-focus-width) var(--bp-focus-style) var(--bp-color-focus);\n outline-offset: var(--bp-focus-offset);\n }\n\n .popover__close bp-icon {\n width: var(--bp-spacing-4);\n height: var(--bp-spacing-4);\n }\n\n /* Reduced motion */\n @media (prefers-reduced-motion: reduce) {\n .popover__panel {\n animation: none;\n }\n\n .popover__close {\n transition: none;\n }\n }\n`;\n","import { LitElement, html, nothing } from 'lit';\nimport { customElement, property, state, query } from 'lit/decorators.js';\nimport { popoverStyles } from './popover.style.js';\nimport { booleanConverter } from '../../utilities/boolean-converter.js';\nimport '../icon/icon.js';\nimport '../icon/icons/entries/close.js';\n\nexport type PopoverPlacement =\n | 'top'\n | 'top-start'\n | 'top-end'\n | 'bottom'\n | 'bottom-start'\n | 'bottom-end'\n | 'left'\n | 'left-start'\n | 'left-end'\n | 'right'\n | 'right-start'\n | 'right-end';\n\nexport type PopoverTrigger = 'click' | 'hover' | 'focus' | 'manual';\n\n/**\n * A popover component that displays rich content in a floating panel.\n * Supports multiple trigger modes: click, hover, focus, or manual control.\n *\n * @fires bp-show - Fired when the popover opens\n * @fires bp-hide - Fired when the popover closes\n * @fires bp-after-show - Fired after the popover open animation completes\n * @fires bp-after-hide - Fired after the popover close animation completes\n *\n * @slot - The trigger element that controls the popover\n * @slot content - The rich content to display in the popover panel\n * @slot header - Optional header content for the popover\n * @slot footer - Optional footer content for the popover\n *\n * @csspart trigger - The trigger wrapper element\n * @csspart panel - The popover panel container\n * @csspart header - The header section\n * @csspart body - The body/content section\n * @csspart footer - The footer section\n * @csspart arrow - The arrow pointing to the trigger\n * @csspart close-button - The close button (when showClose is true)\n */\n@customElement('bp-popover')\nexport class BpPopover extends LitElement {\n /** Whether the popover is currently open */\n @property({ type: Boolean, reflect: true }) declare open: boolean;\n\n /** Placement of the popover relative to the trigger */\n @property({\n type: String,\n reflect: true,\n converter: {\n fromAttribute: (value: string | null): PopoverPlacement => {\n const validPlacements: PopoverPlacement[] = [\n 'top',\n 'top-start',\n 'top-end',\n 'bottom',\n 'bottom-start',\n 'bottom-end',\n 'left',\n 'left-start',\n 'left-end',\n 'right',\n 'right-start',\n 'right-end',\n ];\n return validPlacements.includes(value as PopoverPlacement)\n ? (value as PopoverPlacement)\n : 'bottom';\n },\n },\n })\n declare placement: PopoverPlacement;\n\n /** How the popover is triggered */\n @property({\n type: String,\n converter: {\n fromAttribute: (value: string | null): PopoverTrigger => {\n const validTriggers: PopoverTrigger[] = [\n 'click',\n 'hover',\n 'focus',\n 'manual',\n ];\n return validTriggers.includes(value as PopoverTrigger)\n ? (value as PopoverTrigger)\n : 'click';\n },\n },\n })\n declare trigger: PopoverTrigger;\n\n /** Whether to show an arrow pointing to the trigger */\n @property({ type: Boolean }) declare arrow: boolean;\n\n /** Whether to show a close button in the popover */\n @property({ type: Boolean, attribute: 'show-close' })\n declare showClose: boolean;\n\n /** Whether clicking outside closes the popover */\n @property({\n converter: booleanConverter,\n attribute: 'close-on-outside-click',\n reflect: true,\n })\n declare closeOnOutsideClick: boolean;\n\n /** Whether pressing Escape closes the popover */\n @property({\n converter: booleanConverter,\n attribute: 'close-on-escape',\n reflect: true,\n })\n declare closeOnEscape: boolean;\n\n /** Distance in pixels between the trigger and the panel */\n @property({ type: Number }) declare distance: number;\n\n /** Delay in milliseconds before showing (for hover trigger) */\n @property({ type: Number, attribute: 'show-delay' })\n declare showDelay: number;\n\n /** Delay in milliseconds before hiding (for hover trigger) */\n @property({ type: Number, attribute: 'hide-delay' })\n declare hideDelay: number;\n\n /** Whether the popover is disabled */\n @property({ type: Boolean }) declare disabled: boolean;\n\n /** Accessible label for the popover panel */\n @property({ type: String }) declare label: string;\n\n /** Whether the popover has header slot content */\n @state() private hasHeader = false;\n\n /** Whether the popover has footer slot content */\n @state() private hasFooter = false;\n\n @query('.popover__trigger') private triggerElement!: HTMLElement;\n\n private showTimeout: number | null = null;\n private hideTimeout: number | null = null;\n private popoverId = `popover-${Math.random().toString(36).substring(2, 11)}`;\n\n static styles = [popoverStyles];\n\n constructor() {\n super();\n this.open = false;\n this.placement = 'bottom';\n this.trigger = 'click';\n this.arrow = false;\n this.showClose = false;\n this.closeOnOutsideClick = true;\n this.closeOnEscape = true;\n this.distance = 8;\n this.showDelay = 200;\n this.hideDelay = 200;\n this.disabled = false;\n this.label = '';\n }\n\n connectedCallback(): void {\n super.connectedCallback();\n document.addEventListener('click', this.handleDocumentClick, {\n passive: true,\n });\n document.addEventListener('keydown', this.handleDocumentKeydown);\n }\n\n disconnectedCallback(): void {\n super.disconnectedCallback();\n document.removeEventListener('click', this.handleDocumentClick, {\n passive: true,\n } as EventListenerOptions);\n document.removeEventListener('keydown', this.handleDocumentKeydown);\n this.clearTimeouts();\n }\n\n /** Show the popover */\n show(): void {\n if (this.disabled || this.open) return;\n\n this.clearTimeouts();\n this.open = true;\n\n this.dispatchEvent(\n new CustomEvent('bp-show', { bubbles: true, composed: true })\n );\n\n this.updateComplete.then(() => {\n this.dispatchEvent(\n new CustomEvent('bp-after-show', { bubbles: true, composed: true })\n );\n });\n }\n\n /** Hide the popover */\n hide(): void {\n if (!this.open) return;\n\n this.clearTimeouts();\n this.open = false;\n\n this.dispatchEvent(\n new CustomEvent('bp-hide', { bubbles: true, composed: true })\n );\n\n this.updateComplete.then(() => {\n this.dispatchEvent(\n new CustomEvent('bp-after-hide', { bubbles: true, composed: true })\n );\n });\n }\n\n /** Toggle the popover open/closed */\n toggle(): void {\n if (this.open) {\n this.hide();\n } else {\n this.show();\n }\n }\n\n /**\n * Clears any pending show/hide timeout operations.\n * Prevents race conditions with rapid trigger interactions.\n */\n private clearTimeouts(): void {\n if (this.showTimeout !== null) {\n window.clearTimeout(this.showTimeout);\n this.showTimeout = null;\n }\n if (this.hideTimeout !== null) {\n window.clearTimeout(this.hideTimeout);\n this.hideTimeout = null;\n }\n }\n\n /**\n * Handles click events on the trigger element.\n * Toggles popover state for click trigger mode.\n * @param event - The mouse click event\n */\n private handleTriggerClick = (event: MouseEvent): void => {\n if (this.disabled || this.trigger !== 'click') return;\n event.stopPropagation();\n this.toggle();\n };\n\n /**\n * Handles keyboard events on the trigger element.\n * Toggles popover on Enter or Space key for click trigger mode.\n * @param event - The keyboard event\n */\n private handleTriggerKeydown = (event: KeyboardEvent): void => {\n if (this.disabled) return;\n\n if (\n this.trigger === 'click' &&\n (event.key === 'Enter' || event.key === ' ')\n ) {\n event.preventDefault();\n this.toggle();\n }\n };\n\n /**\n * Handles mouse enter events on the trigger element.\n * Starts the show delay timer for hover trigger mode.\n */\n private handleTriggerMouseEnter = (): void => {\n if (this.disabled || this.trigger !== 'hover') return;\n\n this.clearTimeouts();\n this.showTimeout = window.setTimeout(() => {\n this.show();\n }, this.showDelay);\n };\n\n /**\n * Handles mouse leave events on the trigger element.\n * Starts the hide delay timer for hover trigger mode.\n */\n private handleTriggerMouseLeave = (): void => {\n if (this.trigger !== 'hover') return;\n\n this.clearTimeouts();\n this.hideTimeout = window.setTimeout(() => {\n this.hide();\n }, this.hideDelay);\n };\n\n /**\n * Handles mouse enter events on the popover panel.\n * Prevents the popover from hiding when hovering over panel content in hover trigger mode.\n */\n private handlePanelMouseEnter = (): void => {\n if (this.trigger !== 'hover') return;\n this.clearTimeouts();\n };\n\n /**\n * Handles mouse leave events on the popover panel.\n * Starts the hide delay timer when leaving panel in hover trigger mode.\n */\n private handlePanelMouseLeave = (): void => {\n if (this.trigger !== 'hover') return;\n\n this.clearTimeouts();\n this.hideTimeout = window.setTimeout(() => {\n this.hide();\n }, this.hideDelay);\n };\n\n /**\n * Handles focus events on the trigger element.\n * Shows popover immediately for focus trigger mode.\n */\n private handleTriggerFocus = (): void => {\n if (this.disabled || this.trigger !== 'focus') return;\n this.show();\n };\n\n /**\n * Handles blur events on the trigger element.\n * Hides popover immediately for focus trigger mode.\n */\n private handleTriggerBlur = (): void => {\n if (this.trigger !== 'focus') return;\n this.hide();\n };\n\n /**\n * Handles click events on the document.\n * Closes popover when clicking outside if closeOnOutsideClick is true.\n * @param event - The mouse click event\n */\n private handleDocumentClick = (event: MouseEvent): void => {\n if (!this.closeOnOutsideClick || !this.open) return;\n if (this.trigger === 'manual') return;\n\n const path = event.composedPath();\n if (!path.includes(this)) {\n this.hide();\n }\n };\n\n /**\n * Handles keyboard events on the document.\n * Closes popover on Escape key if closeOnEscape is true and returns focus to trigger.\n * @param event - The keyboard event\n */\n private handleDocumentKeydown = (event: KeyboardEvent): void => {\n if (!this.closeOnEscape || !this.open) return;\n\n if (event.key === 'Escape') {\n event.preventDefault();\n this.hide();\n this.triggerElement?.focus();\n }\n };\n\n /**\n * Handles click events on the close button.\n * Closes the popover immediately.\n */\n private handleCloseClick = (): void => {\n this.hide();\n };\n\n /**\n * Handles changes to the header slot.\n * Updates internal state to conditionally render header wrapper.\n * @param event - The slotchange event\n */\n private handleHeaderSlotChange = (event: Event): void => {\n const slot = event.target as HTMLElement & {\n assignedNodes: (options?: { flatten?: boolean }) => Node[];\n };\n this.hasHeader = slot.assignedNodes({ flatten: true }).length > 0;\n };\n\n /**\n * Handles changes to the footer slot.\n * Updates internal state to conditionally render footer wrapper.\n * @param event - The slotchange event\n */\n private handleFooterSlotChange = (event: Event): void => {\n const slot = event.target as HTMLElement & {\n assignedNodes: (options?: { flatten?: boolean }) => Node[];\n };\n this.hasFooter = slot.assignedNodes({ flatten: true }).length > 0;\n };\n\n render() {\n return html`\n <div\n class=\"popover ${this.open ? 'popover--open' : ''} ${this.disabled\n ? 'popover--disabled'\n : ''}\"\n >\n <div\n class=\"popover__trigger\"\n part=\"trigger\"\n tabindex=${this.disabled ? -1 : 0}\n role=\"button\"\n aria-haspopup=\"dialog\"\n aria-expanded=${this.open}\n aria-controls=${this.open ? this.popoverId : nothing}\n aria-disabled=${this.disabled}\n @click=${this.handleTriggerClick}\n @keydown=${this.handleTriggerKeydown}\n @mouseenter=${this.handleTriggerMouseEnter}\n @mouseleave=${this.handleTriggerMouseLeave}\n @focus=${this.handleTriggerFocus}\n @blur=${this.handleTriggerBlur}\n >\n <slot></slot>\n </div>\n ${this.open\n ? html`\n <div\n id=${this.popoverId}\n class=\"popover__panel popover__panel--${this.placement}\"\n part=\"panel\"\n role=\"dialog\"\n aria-label=${this.label || nothing}\n aria-modal=\"false\"\n style=\"--popover-distance: ${this.distance}px;\"\n @mouseenter=${this.handlePanelMouseEnter}\n @mouseleave=${this.handlePanelMouseLeave}\n >\n ${this.arrow\n ? html`<div class=\"popover__arrow\" part=\"arrow\"></div>`\n : nothing}\n ${this.hasHeader || this.showClose\n ? html`\n <div class=\"popover__header\" part=\"header\">\n <slot\n name=\"header\"\n @slotchange=${this.handleHeaderSlotChange}\n ></slot>\n ${this.showClose\n ? html`\n <button\n class=\"popover__close\"\n part=\"close-button\"\n type=\"button\"\n aria-label=\"Close popover\"\n @click=${this.handleCloseClick}\n >\n <bp-icon name=\"close\" size=\"sm\"></bp-icon>\n </button>\n `\n : nothing}\n </div>\n `\n : html`<slot\n name=\"header\"\n @slotchange=${this.handleHeaderSlotChange}\n ></slot>`}\n <div class=\"popover__body\" part=\"body\">\n <slot name=\"content\"></slot>\n </div>\n ${this.hasFooter\n ? html`\n <div class=\"popover__footer\" part=\"footer\">\n <slot\n name=\"footer\"\n @slotchange=${this.handleFooterSlotChange}\n ></slot>\n </div>\n `\n : html`<slot\n name=\"footer\"\n @slotchange=${this.handleFooterSlotChange}\n ></slot>`}\n </div>\n `\n : nothing}\n </div>\n `;\n }\n}\n\ndeclare global {\n interface HTMLElementTagNameMap {\n 'bp-popover': BpPopover;\n }\n}\n"],"names":["popoverStyles","css","BpPopover","LitElement","event","slot","html","nothing","__decorateClass","property","value","booleanConverter","state","query","customElement"],"mappings":";;;AAEO,MAAMA,IAAgBC;AAAA;AAAA;AAAA;AAAA;AAAA;AAAA;AAAA;AAAA;AAAA;AAAA;AAAA;AAAA;AAAA;AAAA;AAAA;AAAA;AAAA;AAAA;AAAA;AAAA;AAAA;AAAA;AAAA;AAAA;AAAA;AAAA;AAAA;AAAA;AAAA;AAAA;AAAA;AAAA;AAAA;AAAA;AAAA;AAAA;AAAA;AAAA;AAAA;AAAA;AAAA;AAAA;AAAA;AAAA;AAAA;AAAA;AAAA;AAAA;AAAA;AAAA;AAAA;AAAA;AAAA;AAAA;AAAA;AAAA;AAAA;AAAA;AAAA;AAAA;AAAA;AAAA;AAAA;AAAA;AAAA;AAAA;AAAA;AAAA;AAAA;AAAA;AAAA;AAAA;AAAA;AAAA;AAAA;AAAA;AAAA;AAAA;AAAA;AAAA;AAAA;AAAA;AAAA;AAAA;AAAA;AAAA;AAAA;AAAA;AAAA;AAAA;AAAA;AAAA;AAAA;AAAA;AAAA;AAAA;AAAA;AAAA;AAAA;AAAA;AAAA;AAAA;AAAA;AAAA;AAAA;AAAA;AAAA;AAAA;AAAA;AAAA;AAAA;AAAA;AAAA;AAAA;AAAA;AAAA;AAAA;AAAA;AAAA;AAAA;AAAA;AAAA;AAAA;AAAA;AAAA;AAAA;AAAA;AAAA;AAAA;AAAA;AAAA;AAAA;AAAA;AAAA;AAAA;AAAA;AAAA;AAAA;AAAA;AAAA;AAAA;AAAA;AAAA;AAAA;AAAA;AAAA;AAAA;AAAA;AAAA;AAAA;AAAA;AAAA;AAAA;AAAA;AAAA;AAAA;AAAA;AAAA;AAAA;AAAA;AAAA;AAAA;AAAA;AAAA;AAAA;AAAA;AAAA;AAAA;AAAA;AAAA;AAAA;AAAA;AAAA;AAAA;AAAA;AAAA;AAAA;AAAA;AAAA;AAAA;AAAA;AAAA;AAAA;AAAA;AAAA;AAAA;AAAA;AAAA;AAAA;AAAA;AAAA;AAAA;AAAA;AAAA;AAAA;AAAA;AAAA;AAAA;AAAA;AAAA;AAAA;AAAA;AAAA;AAAA;AAAA;AAAA;AAAA;AAAA;AAAA;AAAA;AAAA;AAAA;AAAA;AAAA;AAAA;AAAA;AAAA;AAAA;AAAA;AAAA;AAAA;AAAA;AAAA;AAAA;AAAA;AAAA;AAAA;AAAA;AAAA;AAAA;AAAA;AAAA;AAAA;AAAA;AAAA;AAAA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"}
|
|
@@ -1,5 +1,7 @@
|
|
|
1
1
|
import { LitElement, TemplateResult, PropertyValues } from 'lit';
|
|
2
2
|
import '../icon/icon.js';
|
|
3
|
+
import '../icon/icons/entries/chevron-up.js';
|
|
4
|
+
import '../icon/icons/entries/chevron-down.js';
|
|
3
5
|
export type TableVariant = 'default' | 'striped' | 'bordered';
|
|
4
6
|
export type TableSize = 'sm' | 'md' | 'lg';
|
|
5
7
|
export type TableSortDirection = 'asc' | 'desc' | 'none';
|
|
@@ -1 +1 @@
|
|
|
1
|
-
{"version":3,"file":"table.d.ts","sourceRoot":"","sources":["../../../source/components/table/table.ts"],"names":[],"mappings":"AAAA,OAAO,EAAE,UAAU,EAAiB,cAAc,EAAE,cAAc,EAAE,MAAM,KAAK,CAAC;AAQhF,OAAO,iBAAiB,CAAC;
|
|
1
|
+
{"version":3,"file":"table.d.ts","sourceRoot":"","sources":["../../../source/components/table/table.ts"],"names":[],"mappings":"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"}
|
|
@@ -1 +1 @@
|
|
|
1
|
-
{"version":3,"file":"table.js","sources":["../../source/components/table/table.style.ts","../../source/components/table/table.ts"],"sourcesContent":["import { css } from 'lit';\n\nexport const tableStyles = css`\n /* Base styles */\n :host {\n display: block;\n }\n\n .table-wrapper {\n overflow-x: auto;\n border-radius: var(--bp-border-radius);\n }\n\n .table {\n width: 100%;\n border-collapse: collapse;\n font-family: var(--bp-font-family);\n font-size: var(--bp-font-size-sm);\n color: var(--bp-color-text);\n background: var(--bp-color-surface);\n }\n\n /* Header styles */\n .header-row {\n background: var(--bp-color-surface-subdued);\n border-bottom: var(--bp-border-width) solid var(--bp-color-border);\n }\n\n .header-cell {\n font-weight: var(--bp-font-weight-semibold);\n text-align: left;\n color: var(--bp-color-text);\n }\n\n .header-cell--sortable {\n cursor: pointer;\n user-select: none;\n transition: background-color var(--bp-transition-fast);\n position: relative;\n }\n\n .header-cell--sortable::after {\n content: '';\n position: absolute;\n bottom: 0;\n left: 0;\n right: 0;\n height: 2px;\n background: transparent;\n transition: background var(--bp-transition-fast);\n }\n\n .header-cell--sortable:hover::after {\n background: var(--bp-color-primary);\n opacity: 0.3;\n }\n\n .header-cell--sortable:hover {\n background: var(--bp-color-surface);\n }\n\n .header-cell--sortable:active {\n background: var(--bp-color-surface-subdued);\n transform: translateY(1px);\n }\n\n .header-cell__content {\n display: flex;\n align-items: center;\n gap: var(--bp-spacing-1);\n }\n\n .header-cell__label {\n flex: 1;\n }\n\n /* Sort icon */\n .sort-icon {\n display: flex;\n align-items: center;\n color: var(--bp-color-text-muted);\n transition: color var(--bp-transition-fast);\n }\n\n .sort-icon--active {\n color: var(--bp-color-primary);\n }\n\n /* Cell styles */\n .cell {\n padding: var(--bp-spacing-3) var(--bp-spacing-4);\n border-bottom: var(--bp-border-width) solid var(--bp-color-border);\n vertical-align: middle;\n }\n\n .cell--checkbox {\n width: var(--bp-spacing-10);\n text-align: center;\n padding-left: var(--bp-spacing-3);\n padding-right: 0;\n }\n\n .cell--checkbox input[type='checkbox'] {\n width: var(--bp-spacing-6);\n height: var(--bp-spacing-6);\n cursor: pointer;\n }\n\n /* Row styles */\n .row {\n transition: background-color var(--bp-transition-fast);\n content-visibility: auto;\n contain-intrinsic-size: auto 48px;\n }\n\n .row--hoverable:hover {\n background: var(--bp-color-surface-subdued);\n }\n\n .row--selected {\n background: oklch(from var(--bp-color-primary) l c h / 0.15);\n }\n\n .row--selected:hover {\n background: oklch(from var(--bp-color-primary) l c h / 0.2);\n }\n\n /* Remove border from last row */\n tbody tr:last-child .cell {\n border-bottom: none;\n }\n\n /* Variants */\n .table--striped tbody tr:nth-child(even) {\n background: var(--bp-color-surface-subdued);\n }\n\n .table--striped tbody tr:nth-child(even):hover {\n background: var(--bp-color-surface);\n }\n\n .table--striped .row--selected {\n background: oklch(from var(--bp-color-primary) l c h / 0.15) !important;\n }\n\n .table--striped .row--selected:hover {\n background: oklch(from var(--bp-color-primary) l c h / 0.2) !important;\n }\n\n .table--bordered {\n border: var(--bp-border-width) solid var(--bp-color-border);\n }\n\n .table--bordered .cell {\n border: var(--bp-border-width) solid var(--bp-color-border);\n }\n\n /* Sizes */\n .table--sm .cell {\n padding: var(--bp-spacing-1) var(--bp-spacing-3);\n font-size: var(--bp-font-size-xs);\n }\n\n .table--sm .row {\n contain-intrinsic-size: auto 36px;\n }\n\n .table--md .cell {\n padding: var(--bp-spacing-3) var(--bp-spacing-4);\n font-size: var(--bp-font-size-sm);\n }\n\n .table--md .row {\n contain-intrinsic-size: auto 48px;\n }\n\n .table--lg .cell {\n padding: var(--bp-spacing-4) var(--bp-spacing-5);\n font-size: var(--bp-font-size-base);\n }\n\n .table--lg .row {\n contain-intrinsic-size: auto 56px;\n }\n\n /* Sticky header */\n .table--sticky-header thead {\n position: sticky;\n top: 0;\n z-index: 1;\n }\n\n .table--sticky-header .header-row {\n box-shadow: var(--bp-shadow-sm);\n }\n\n /* Selectable - add pointer cursor */\n .table--selectable .row {\n cursor: pointer;\n }\n\n /* Loading state */\n .table--loading {\n opacity: var(--bp-opacity-disabled);\n pointer-events: none;\n }\n\n /* Empty state */\n .empty-state {\n text-align: center;\n padding: var(--bp-spacing-10);\n color: var(--bp-color-text-muted);\n background: var(--bp-color-surface-subdued);\n }\n\n .state-content {\n display: flex;\n flex-direction: column;\n align-items: center;\n justify-content: center;\n gap: var(--bp-spacing-3);\n padding: var(--bp-spacing-5);\n }\n\n .sort-icon--inactive {\n opacity: 0.4;\n }\n\n /* Focus styles for keyboard navigation */\n .header-cell--sortable:focus-visible {\n outline: var(--bp-focus-width) var(--bp-focus-style) var(--bp-color-focus);\n outline-offset: var(--bp-focus-offset);\n }\n\n .row:focus-visible {\n outline: var(--bp-focus-width) var(--bp-focus-style) var(--bp-color-focus);\n outline-offset: calc(-1 * var(--bp-focus-offset));\n }\n\n .cell--checkbox input[type='checkbox']:focus-visible {\n outline: var(--bp-focus-width) var(--bp-focus-style) var(--bp-color-focus);\n outline-offset: var(--bp-focus-offset);\n }\n\n /* Reduced motion */\n @media (prefers-reduced-motion: reduce) {\n .row,\n .header-cell--sortable,\n .sort-icon {\n transition: none;\n }\n\n .header-cell--sortable:active {\n transform: none;\n }\n\n .header-cell--sortable::after {\n transition: none;\n }\n }\n`;\n","import { LitElement, html, nothing, TemplateResult, PropertyValues } from 'lit';\nimport { customElement, property, state } from 'lit/decorators.js';\nimport { classMap } from 'lit/directives/class-map.js';\nimport { ifDefined } from 'lit/directives/if-defined.js';\nimport { repeat } from 'lit/directives/repeat.js';\nimport { tableStyles } from './table.style.js';\nimport { memoizeOne } from '../../utilities/memoize.js';\nimport { booleanConverter } from '../../utilities/boolean-converter.js';\nimport '../icon/icon.js';\n\nexport type TableVariant = 'default' | 'striped' | 'bordered';\nexport type TableSize = 'sm' | 'md' | 'lg';\nexport type TableSortDirection = 'asc' | 'desc' | 'none';\n\n/**\n * Column definition for the table\n */\nexport interface TableColumn {\n /** Unique key for the column (matches data property) */\n key: string;\n /** Header label for the column */\n label: string;\n /** Whether this column is sortable */\n sortable?: boolean;\n /** Text alignment */\n align?: 'left' | 'center' | 'right';\n /** Fixed width for the column */\n width?: string;\n /** Custom render function for cell content */\n render?: (value: unknown, row: TableRow) => TemplateResult | string;\n}\n\n/**\n * Row data for the table\n */\nexport interface TableRow {\n /** Unique identifier for the row */\n id: string | number;\n /** Row data keyed by column key */\n [key: string]: unknown;\n}\n\n/**\n * Sort state for the table\n */\nexport interface TableSortState {\n /** Column key being sorted */\n column: string;\n /** Sort direction */\n direction: TableSortDirection;\n}\n\n/**\n * A data table component for displaying tabular data with sorting and selection.\n *\n * @element bp-table\n *\n * @property {TableColumn[]} columns - Array of column definitions\n * @property {TableRow[]} rows - Array of row data objects\n * @property {TableVariant} variant - Visual style variant\n * @property {TableSize} size - Size of the table cells\n * @property {boolean} selectable - Whether rows can be selected\n * @property {boolean} multiSelect - Whether multiple rows can be selected\n * @property {(string|number)[]} selectedRows - Array of selected row IDs\n * @property {TableSortState} sortState - Current sort state\n * @property {boolean} stickyHeader - Whether the header sticks on scroll\n * @property {boolean} hoverable - Whether rows highlight on hover\n * @property {boolean} loading - Whether the table is in loading state\n *\n * @fires bp-sort - Fired when a sortable column header is clicked\n * @fires bp-select - Fired when row selection changes\n * @fires bp-row-click - Fired when a row is clicked\n *\n * @slot empty - Content to show when table has no data\n * @slot loading - Content to show when table is loading\n *\n * @csspart table - The table element\n * @csspart thead - The table header section\n * @csspart tbody - The table body section\n * @csspart header-row - A header row\n * @csspart header-cell - A header cell\n * @csspart row - A data row\n * @csspart cell - A data cell\n * @csspart checkbox - Selection checkbox\n * @csspart sort-icon - Sort direction icon\n * @csspart empty-state - Empty state container\n */\n@customElement('bp-table')\nexport class BpTable extends LitElement {\n /** Array of column definitions */\n @property({ type: Array }) declare columns: TableColumn[];\n\n /** Array of row data objects */\n @property({ type: Array }) declare rows: TableRow[];\n\n /** Visual style variant */\n @property({\n type: String,\n reflect: true,\n converter: {\n fromAttribute: (value: string | null) => {\n const valid: TableVariant[] = ['default', 'striped', 'bordered'];\n return value && valid.includes(value as TableVariant)\n ? (value as TableVariant)\n : 'default';\n },\n },\n })\n declare variant: TableVariant;\n\n /** Size of the table cells */\n @property({\n type: String,\n reflect: true,\n converter: {\n fromAttribute: (value: string | null) => {\n const valid: TableSize[] = ['sm', 'md', 'lg'];\n return value && valid.includes(value as TableSize)\n ? (value as TableSize)\n : 'md';\n },\n },\n })\n declare size: TableSize;\n\n /** Whether rows can be selected */\n @property({ type: Boolean, reflect: true }) declare selectable: boolean;\n\n /** Whether multiple rows can be selected */\n @property({ type: Boolean, reflect: true }) declare multiSelect: boolean;\n\n /** Array of selected row IDs */\n @property({ type: Array }) declare selectedRows: (string | number)[];\n\n /** Current sort state */\n @property({ type: Object }) declare sortState: TableSortState | null;\n\n /** Whether the header sticks on scroll */\n @property({ type: Boolean, reflect: true, attribute: 'sticky-header' })\n declare stickyHeader: boolean;\n\n /** Whether rows highlight on hover */\n @property({ converter: booleanConverter, reflect: true })\n declare hoverable: boolean;\n\n /** Whether the table is in loading state */\n @property({ type: Boolean, reflect: true }) declare loading: boolean;\n\n @state() private allSelected = false;\n\n /**\n * Properties that only affect visual styling, not rendered structure.\n * Changes to only these properties can skip a full re-render.\n */\n private static readonly VISUAL_ONLY_PROPS = new Set([\n 'hoverable',\n 'stickyHeader',\n ]);\n\n static styles = [tableStyles];\n\n constructor() {\n super();\n this.columns = [];\n this.rows = [];\n this.variant = 'default';\n this.size = 'md';\n this.selectable = false;\n this.multiSelect = false;\n this.selectedRows = [];\n this.sortState = null;\n this.stickyHeader = false;\n this.hoverable = true;\n this.loading = false;\n }\n\n protected shouldUpdate(changedProperties: PropertyValues): boolean {\n // If all changed properties are visual-only, skip the update.\n // Be conservative: return true if any non-visual property changed.\n for (const key of changedProperties.keys()) {\n if (!BpTable.VISUAL_ONLY_PROPS.has(key as string)) {\n return true;\n }\n }\n // All changes are visual-only — still need to update for CSS class changes\n return true;\n }\n\n updated(changedProperties: Map<string, unknown>): void {\n if (\n changedProperties.has('selectedRows') ||\n changedProperties.has('rows')\n ) {\n this.allSelected =\n this.rows.length > 0 && this.selectedRows.length === this.rows.length;\n }\n }\n\n /**\n * Memoized sorted rows computation.\n * Only recomputes when rows or sortState references change.\n */\n private computeSortedRows = memoizeOne(\n (rows: TableRow[], sortState: TableSortState | null): TableRow[] => {\n if (!sortState || sortState.direction === 'none') {\n return rows;\n }\n\n const { column, direction } = sortState;\n return [...rows].sort((a, b) => {\n const aVal = a[column];\n const bVal = b[column];\n\n if (aVal === bVal) return 0;\n if (aVal === null || aVal === undefined) return 1;\n if (bVal === null || bVal === undefined) return -1;\n\n let comparison = 0;\n if (typeof aVal === 'string' && typeof bVal === 'string') {\n comparison = aVal.localeCompare(bVal);\n } else if (typeof aVal === 'number' && typeof bVal === 'number') {\n comparison = aVal - bVal;\n } else {\n comparison = String(aVal).localeCompare(String(bVal));\n }\n\n return direction === 'desc' ? -comparison : comparison;\n });\n }\n );\n\n /**\n * Get sorted rows based on current sort state (memoized).\n */\n private get sortedRows(): TableRow[] {\n return this.computeSortedRows(this.rows, this.sortState);\n }\n\n /**\n * Handles click on sortable column header.\n * Cycles through sort directions: asc → desc → none.\n * Manages focus on header after sort completes.\n */\n private handleHeaderClick(column: TableColumn, event: Event) {\n if (!column.sortable) return;\n\n let direction: TableSortDirection = 'asc';\n if (this.sortState?.column === column.key) {\n if (this.sortState.direction === 'asc') {\n direction = 'desc';\n } else if (this.sortState.direction === 'desc') {\n direction = 'none';\n }\n }\n\n this.sortState = { column: column.key, direction };\n this.dispatchEvent(\n new CustomEvent('bp-sort', {\n detail: { column: column.key, direction },\n bubbles: true,\n composed: true,\n })\n );\n\n // Focus management: focus header after sort completes\n this.updateComplete.then(() => {\n (event.target as HTMLElement)?.focus();\n });\n }\n\n /**\n * Handles click events on table rows.\n * Dispatches bp-row-click event and toggles selection if selectable.\n */\n private handleRowClick(row: TableRow, event: Event) {\n this.dispatchEvent(\n new CustomEvent('bp-row-click', {\n detail: { row, originalEvent: event },\n bubbles: true,\n composed: true,\n })\n );\n\n if (this.selectable) {\n this.toggleRowSelection(row);\n }\n }\n\n /**\n * Handles keyboard events on table rows.\n * Triggers selection on Enter or Space key press when selectable.\n */\n private handleRowKeyDown(row: TableRow, event: KeyboardEvent) {\n if (!this.selectable) return;\n\n if (event.key === 'Enter' || event.key === ' ') {\n event.preventDefault();\n this.toggleRowSelection(row);\n }\n }\n\n /**\n * Toggles selection state for a row.\n * Respects multiSelect setting for single vs multiple selection.\n */\n private toggleRowSelection(row: TableRow) {\n const rowId = row.id;\n const isSelected = this.selectedRows.includes(rowId);\n\n let newSelection: (string | number)[];\n if (this.multiSelect) {\n newSelection = isSelected\n ? this.selectedRows.filter((id) => id !== rowId)\n : [...this.selectedRows, rowId];\n } else {\n newSelection = isSelected ? [] : [rowId];\n }\n\n this.selectedRows = newSelection;\n this.dispatchEvent(\n new CustomEvent('bp-select', {\n detail: { selectedRows: newSelection, row, selected: !isSelected },\n bubbles: true,\n composed: true,\n })\n );\n }\n\n /**\n * Handles select all checkbox toggle.\n * Selects or deselects all rows based on current state.\n */\n private handleSelectAll() {\n if (this.allSelected) {\n this.selectedRows = [];\n } else {\n this.selectedRows = this.rows.map((row) => row.id);\n }\n this.dispatchEvent(\n new CustomEvent('bp-select', {\n detail: {\n selectedRows: this.selectedRows,\n selectAll: !this.allSelected,\n },\n bubbles: true,\n composed: true,\n })\n );\n }\n\n /**\n * Handles checkbox click events.\n * Stops propagation only on the checkbox itself to prevent row click.\n */\n private handleCheckboxClick(event: Event, row?: TableRow) {\n // Only stop propagation on the checkbox to prevent triggering row click\n if (event.target instanceof HTMLInputElement) {\n event.stopPropagation();\n }\n if (row) {\n this.toggleRowSelection(row);\n } else {\n this.handleSelectAll();\n }\n }\n\n /** Select all rows */\n selectAll() {\n this.selectedRows = this.rows.map((row) => row.id);\n this.dispatchEvent(\n new CustomEvent('bp-select', {\n detail: { selectedRows: this.selectedRows, selectAll: true },\n bubbles: true,\n composed: true,\n })\n );\n }\n\n /** Deselect all rows */\n deselectAll() {\n this.selectedRows = [];\n this.dispatchEvent(\n new CustomEvent('bp-select', {\n detail: { selectedRows: [], selectAll: false },\n bubbles: true,\n composed: true,\n })\n );\n }\n\n /** Clear sort state */\n clearSort() {\n this.sortState = null;\n }\n\n /**\n * Renders the sort icon for sortable columns.\n * Shows chevron-up for ascending, chevron-down for descending, unsorted icon otherwise.\n */\n private renderSortIcon(column: TableColumn) {\n if (!column.sortable) return nothing;\n\n const isActive = this.sortState?.column === column.key;\n const direction = isActive ? this.sortState?.direction : 'none';\n\n const iconName =\n direction === 'asc'\n ? 'chevron-up'\n : direction === 'desc'\n ? 'chevron-down'\n : 'chevron-up';\n\n const iconClasses = {\n 'sort-icon': true,\n 'sort-icon--active': isActive && direction !== 'none',\n 'sort-icon--inactive': direction === 'none',\n };\n\n return html`\n <span class=${classMap(iconClasses)} part=\"sort-icon\" aria-hidden=\"true\">\n <bp-icon name=${iconName} size=\"sm\"></bp-icon>\n </span>\n `;\n }\n\n /**\n * Renders the table header with column labels and sort icons.\n */\n private renderHeader() {\n return html`\n <thead part=\"thead\">\n <tr class=\"header-row\" part=\"header-row\">\n ${this.selectable && this.multiSelect\n ? html`\n <th class=\"cell cell--checkbox\" part=\"header-cell\">\n <input\n type=\"checkbox\"\n part=\"checkbox\"\n .checked=${this.allSelected}\n .indeterminate=${this.selectedRows.length > 0 &&\n !this.allSelected}\n @click=${(e: Event) => this.handleCheckboxClick(e)}\n aria-label=\"Select all rows\"\n />\n </th>\n `\n : this.selectable\n ? html`<th class=\"cell cell--checkbox\" part=\"header-cell\"></th>`\n : nothing}\n ${repeat(\n this.columns,\n (column) => column.key,\n (column) => html`\n <th\n class=\"cell header-cell ${column.sortable\n ? 'header-cell--sortable'\n : ''}\"\n part=\"header-cell\"\n style=${column.width ? `width: ${column.width}` : ''}\n @click=${(e: Event) => this.handleHeaderClick(column, e)}\n tabindex=${column.sortable ? 0 : -1}\n @keydown=${(e: KeyboardEvent) => {\n if (column.sortable && (e.key === 'Enter' || e.key === ' ')) {\n e.preventDefault();\n this.handleHeaderClick(column, e);\n }\n }}\n aria-sort=${this.sortState?.column === column.key\n ? this.sortState.direction === 'asc'\n ? 'ascending'\n : this.sortState.direction === 'desc'\n ? 'descending'\n : 'none'\n : 'none'}\n >\n <span\n class=\"header-cell__content\"\n style=\"justify-content: ${column.align === 'center'\n ? 'center'\n : column.align === 'right'\n ? 'flex-end'\n : 'flex-start'}\"\n >\n <span class=\"header-cell__label\">${column.label}</span>\n ${this.renderSortIcon(column)}\n </span>\n </th>\n `\n )}\n </tr>\n </thead>\n `;\n }\n\n /**\n * Renders the table body with rows and cells.\n * Handles loading and empty states.\n */\n private renderBody() {\n const sortedRows = this.sortedRows;\n\n if (this.loading) {\n return html`\n <tbody part=\"tbody\">\n <tr>\n <td\n colspan=${this.columns.length + (this.selectable ? 1 : 0)}\n class=\"empty-state\"\n part=\"empty-state\"\n >\n <slot name=\"loading\">\n <div class=\"state-content\">Loading...</div>\n </slot>\n </td>\n </tr>\n </tbody>\n `;\n }\n\n if (sortedRows.length === 0) {\n return html`\n <tbody part=\"tbody\">\n <tr>\n <td\n colspan=${this.columns.length + (this.selectable ? 1 : 0)}\n class=\"empty-state\"\n part=\"empty-state\"\n >\n <slot name=\"empty\">\n <div class=\"state-content\">No data available</div>\n </slot>\n </td>\n </tr>\n </tbody>\n `;\n }\n\n return html`\n <tbody part=\"tbody\">\n ${repeat(\n sortedRows,\n (row) => row.id,\n (row) => {\n const isSelected = this.selectedRows.includes(row.id);\n const rowClasses = {\n row: true,\n 'row--selected': isSelected,\n 'row--hoverable': this.hoverable,\n };\n\n return html`\n <tr\n class=${classMap(rowClasses)}\n part=\"row\"\n @click=${(e: Event) => this.handleRowClick(row, e)}\n @keydown=${(e: KeyboardEvent) => this.handleRowKeyDown(row, e)}\n tabindex=${this.selectable ? 0 : -1}\n aria-selected=${ifDefined(\n this.selectable ? (isSelected ? 'true' : 'false') : undefined\n )}\n >\n ${this.selectable\n ? html`\n <td class=\"cell cell--checkbox\" part=\"cell\">\n <input\n type=\"checkbox\"\n part=\"checkbox\"\n .checked=${isSelected}\n @click=${(e: Event) =>\n this.handleCheckboxClick(e, row)}\n aria-label=\"Select row\"\n />\n </td>\n `\n : nothing}\n ${repeat(\n this.columns,\n (column) => column.key,\n (column) => {\n const value = row[column.key];\n const content = column.render\n ? column.render(value, row)\n : value;\n\n return html`\n <td\n class=\"cell\"\n part=\"cell\"\n style=\"text-align: ${column.align || 'left'}\"\n >\n ${content}\n </td>\n `;\n }\n )}\n </tr>\n `;\n }\n )}\n </tbody>\n `;\n }\n\n render() {\n const tableClasses = {\n table: true,\n [`table--${this.variant}`]: true,\n [`table--${this.size}`]: true,\n 'table--sticky-header': this.stickyHeader,\n 'table--selectable': this.selectable,\n 'table--loading': this.loading,\n };\n\n return html`\n <div class=\"table-wrapper\">\n <table\n class=${classMap(tableClasses)}\n part=\"table\"\n role=\"grid\"\n aria-busy=${this.loading}\n >\n ${this.renderHeader()} ${this.renderBody()}\n </table>\n </div>\n `;\n }\n}\n\ndeclare global {\n interface HTMLElementTagNameMap {\n 'bp-table': BpTable;\n }\n}\n"],"names":["tableStyles","css","BpTable","LitElement","memoizeOne","rows","sortState","column","direction","a","b","aVal","bVal","comparison","changedProperties","key","event","row","rowId","isSelected","newSelection","id","nothing","isActive","iconName","html","classMap","repeat","e","sortedRows","rowClasses","ifDefined","value","content","tableClasses","__decorateClass","property","booleanConverter","state","customElement"],"mappings":";;;;;;;AAEO,MAAMA,IAAcC;AAAA;AAAA;AAAA;AAAA;AAAA;AAAA;AAAA;AAAA;AAAA;AAAA;AAAA;AAAA;AAAA;AAAA;AAAA;AAAA;AAAA;AAAA;AAAA;AAAA;AAAA;AAAA;AAAA;AAAA;AAAA;AAAA;AAAA;AAAA;AAAA;AAAA;AAAA;AAAA;AAAA;AAAA;AAAA;AAAA;AAAA;AAAA;AAAA;AAAA;AAAA;AAAA;AAAA;AAAA;AAAA;AAAA;AAAA;AAAA;AAAA;AAAA;AAAA;AAAA;AAAA;AAAA;AAAA;AAAA;AAAA;AAAA;AAAA;AAAA;AAAA;AAAA;AAAA;AAAA;AAAA;AAAA;AAAA;AAAA;AAAA;AAAA;AAAA;AAAA;AAAA;AAAA;AAAA;AAAA;AAAA;AAAA;AAAA;AAAA;AAAA;AAAA;AAAA;AAAA;AAAA;AAAA;AAAA;AAAA;AAAA;AAAA;AAAA;AAAA;AAAA;AAAA;AAAA;AAAA;AAAA;AAAA;AAAA;AAAA;AAAA;AAAA;AAAA;AAAA;AAAA;AAAA;AAAA;AAAA;AAAA;AAAA;AAAA;AAAA;AAAA;AAAA;AAAA;AAAA;AAAA;AAAA;AAAA;AAAA;AAAA;AAAA;AAAA;AAAA;AAAA;AAAA;AAAA;AAAA;AAAA;AAAA;AAAA;AAAA;AAAA;AAAA;AAAA;AAAA;AAAA;AAAA;AAAA;AAAA;AAAA;AAAA;AAAA;AAAA;AAAA;AAAA;AAAA;AAAA;AAAA;AAAA;AAAA;AAAA;AAAA;AAAA;AAAA;AAAA;AAAA;AAAA;AAAA;AAAA;AAAA;AAAA;AAAA;AAAA;AAAA;AAAA;AAAA;AAAA;AAAA;AAAA;AAAA;AAAA;AAAA;AAAA;AAAA;AAAA;AAAA;AAAA;AAAA;AAAA;AAAA;AAAA;AAAA;AAAA;AAAA;AAAA;AAAA;AAAA;AAAA;AAAA;AAAA;AAAA;AAAA;AAAA;AAAA;AAAA;AAAA;AAAA;AAAA;AAAA;AAAA;AAAA;AAAA;AAAA;AAAA;AAAA;AAAA;AAAA;AAAA;AAAA;AAAA;AAAA;AAAA;AAAA;AAAA;AAAA;AAAA;AAAA;AAAA;AAAA;AAAA;AAAA;AAAA;AAAA;AAAA;AAAA;AAAA;AAAA;AAAA;AAAA;AAAA;AAAA;AAAA;AAAA;AAAA;A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"}
|
|
1
|
+
{"version":3,"file":"table.js","sources":["../../source/components/table/table.style.ts","../../source/components/table/table.ts"],"sourcesContent":["import { css } from 'lit';\n\nexport const tableStyles = css`\n /* Base styles */\n :host {\n display: block;\n }\n\n .table-wrapper {\n overflow-x: auto;\n border-radius: var(--bp-border-radius);\n }\n\n .table {\n width: 100%;\n border-collapse: collapse;\n font-family: var(--bp-font-family);\n font-size: var(--bp-font-size-sm);\n color: var(--bp-color-text);\n background: var(--bp-color-surface);\n }\n\n /* Header styles */\n .header-row {\n background: var(--bp-color-surface-subdued);\n border-bottom: var(--bp-border-width) solid var(--bp-color-border);\n }\n\n .header-cell {\n font-weight: var(--bp-font-weight-semibold);\n text-align: left;\n color: var(--bp-color-text);\n }\n\n .header-cell--sortable {\n cursor: pointer;\n user-select: none;\n transition: background-color var(--bp-transition-fast);\n position: relative;\n }\n\n .header-cell--sortable::after {\n content: '';\n position: absolute;\n bottom: 0;\n left: 0;\n right: 0;\n height: 2px;\n background: transparent;\n transition: background var(--bp-transition-fast);\n }\n\n .header-cell--sortable:hover::after {\n background: var(--bp-color-primary);\n opacity: 0.3;\n }\n\n .header-cell--sortable:hover {\n background: var(--bp-color-surface);\n }\n\n .header-cell--sortable:active {\n background: var(--bp-color-surface-subdued);\n transform: translateY(1px);\n }\n\n .header-cell__content {\n display: flex;\n align-items: center;\n gap: var(--bp-spacing-1);\n }\n\n .header-cell__label {\n flex: 1;\n }\n\n /* Sort icon */\n .sort-icon {\n display: flex;\n align-items: center;\n color: var(--bp-color-text-muted);\n transition: color var(--bp-transition-fast);\n }\n\n .sort-icon--active {\n color: var(--bp-color-primary);\n }\n\n /* Cell styles */\n .cell {\n padding: var(--bp-spacing-3) var(--bp-spacing-4);\n border-bottom: var(--bp-border-width) solid var(--bp-color-border);\n vertical-align: middle;\n }\n\n .cell--checkbox {\n width: var(--bp-spacing-10);\n text-align: center;\n padding-left: var(--bp-spacing-3);\n padding-right: 0;\n }\n\n .cell--checkbox input[type='checkbox'] {\n width: var(--bp-spacing-6);\n height: var(--bp-spacing-6);\n cursor: pointer;\n }\n\n /* Row styles */\n .row {\n transition: background-color var(--bp-transition-fast);\n content-visibility: auto;\n contain-intrinsic-size: auto 48px;\n }\n\n .row--hoverable:hover {\n background: var(--bp-color-surface-subdued);\n }\n\n .row--selected {\n background: oklch(from var(--bp-color-primary) l c h / 0.15);\n }\n\n .row--selected:hover {\n background: oklch(from var(--bp-color-primary) l c h / 0.2);\n }\n\n /* Remove border from last row */\n tbody tr:last-child .cell {\n border-bottom: none;\n }\n\n /* Variants */\n .table--striped tbody tr:nth-child(even) {\n background: var(--bp-color-surface-subdued);\n }\n\n .table--striped tbody tr:nth-child(even):hover {\n background: var(--bp-color-surface);\n }\n\n .table--striped .row--selected {\n background: oklch(from var(--bp-color-primary) l c h / 0.15) !important;\n }\n\n .table--striped .row--selected:hover {\n background: oklch(from var(--bp-color-primary) l c h / 0.2) !important;\n }\n\n .table--bordered {\n border: var(--bp-border-width) solid var(--bp-color-border);\n }\n\n .table--bordered .cell {\n border: var(--bp-border-width) solid var(--bp-color-border);\n }\n\n /* Sizes */\n .table--sm .cell {\n padding: var(--bp-spacing-1) var(--bp-spacing-3);\n font-size: var(--bp-font-size-xs);\n }\n\n .table--sm .row {\n contain-intrinsic-size: auto 36px;\n }\n\n .table--md .cell {\n padding: var(--bp-spacing-3) var(--bp-spacing-4);\n font-size: var(--bp-font-size-sm);\n }\n\n .table--md .row {\n contain-intrinsic-size: auto 48px;\n }\n\n .table--lg .cell {\n padding: var(--bp-spacing-4) var(--bp-spacing-5);\n font-size: var(--bp-font-size-base);\n }\n\n .table--lg .row {\n contain-intrinsic-size: auto 56px;\n }\n\n /* Sticky header */\n .table--sticky-header thead {\n position: sticky;\n top: 0;\n z-index: 1;\n }\n\n .table--sticky-header .header-row {\n box-shadow: var(--bp-shadow-sm);\n }\n\n /* Selectable - add pointer cursor */\n .table--selectable .row {\n cursor: pointer;\n }\n\n /* Loading state */\n .table--loading {\n opacity: var(--bp-opacity-disabled);\n pointer-events: none;\n }\n\n /* Empty state */\n .empty-state {\n text-align: center;\n padding: var(--bp-spacing-10);\n color: var(--bp-color-text-muted);\n background: var(--bp-color-surface-subdued);\n }\n\n .state-content {\n display: flex;\n flex-direction: column;\n align-items: center;\n justify-content: center;\n gap: var(--bp-spacing-3);\n padding: var(--bp-spacing-5);\n }\n\n .sort-icon--inactive {\n opacity: 0.4;\n }\n\n /* Focus styles for keyboard navigation */\n .header-cell--sortable:focus-visible {\n outline: var(--bp-focus-width) var(--bp-focus-style) var(--bp-color-focus);\n outline-offset: var(--bp-focus-offset);\n }\n\n .row:focus-visible {\n outline: var(--bp-focus-width) var(--bp-focus-style) var(--bp-color-focus);\n outline-offset: calc(-1 * var(--bp-focus-offset));\n }\n\n .cell--checkbox input[type='checkbox']:focus-visible {\n outline: var(--bp-focus-width) var(--bp-focus-style) var(--bp-color-focus);\n outline-offset: var(--bp-focus-offset);\n }\n\n /* Reduced motion */\n @media (prefers-reduced-motion: reduce) {\n .row,\n .header-cell--sortable,\n .sort-icon {\n transition: none;\n }\n\n .header-cell--sortable:active {\n transform: none;\n }\n\n .header-cell--sortable::after {\n transition: none;\n }\n }\n`;\n","import { LitElement, html, nothing, TemplateResult, PropertyValues } from 'lit';\nimport { customElement, property, state } from 'lit/decorators.js';\nimport { classMap } from 'lit/directives/class-map.js';\nimport { ifDefined } from 'lit/directives/if-defined.js';\nimport { repeat } from 'lit/directives/repeat.js';\nimport { tableStyles } from './table.style.js';\nimport { memoizeOne } from '../../utilities/memoize.js';\nimport { booleanConverter } from '../../utilities/boolean-converter.js';\nimport '../icon/icon.js';\nimport '../icon/icons/entries/chevron-up.js';\nimport '../icon/icons/entries/chevron-down.js';\n\nexport type TableVariant = 'default' | 'striped' | 'bordered';\nexport type TableSize = 'sm' | 'md' | 'lg';\nexport type TableSortDirection = 'asc' | 'desc' | 'none';\n\n/**\n * Column definition for the table\n */\nexport interface TableColumn {\n /** Unique key for the column (matches data property) */\n key: string;\n /** Header label for the column */\n label: string;\n /** Whether this column is sortable */\n sortable?: boolean;\n /** Text alignment */\n align?: 'left' | 'center' | 'right';\n /** Fixed width for the column */\n width?: string;\n /** Custom render function for cell content */\n render?: (value: unknown, row: TableRow) => TemplateResult | string;\n}\n\n/**\n * Row data for the table\n */\nexport interface TableRow {\n /** Unique identifier for the row */\n id: string | number;\n /** Row data keyed by column key */\n [key: string]: unknown;\n}\n\n/**\n * Sort state for the table\n */\nexport interface TableSortState {\n /** Column key being sorted */\n column: string;\n /** Sort direction */\n direction: TableSortDirection;\n}\n\n/**\n * A data table component for displaying tabular data with sorting and selection.\n *\n * @element bp-table\n *\n * @property {TableColumn[]} columns - Array of column definitions\n * @property {TableRow[]} rows - Array of row data objects\n * @property {TableVariant} variant - Visual style variant\n * @property {TableSize} size - Size of the table cells\n * @property {boolean} selectable - Whether rows can be selected\n * @property {boolean} multiSelect - Whether multiple rows can be selected\n * @property {(string|number)[]} selectedRows - Array of selected row IDs\n * @property {TableSortState} sortState - Current sort state\n * @property {boolean} stickyHeader - Whether the header sticks on scroll\n * @property {boolean} hoverable - Whether rows highlight on hover\n * @property {boolean} loading - Whether the table is in loading state\n *\n * @fires bp-sort - Fired when a sortable column header is clicked\n * @fires bp-select - Fired when row selection changes\n * @fires bp-row-click - Fired when a row is clicked\n *\n * @slot empty - Content to show when table has no data\n * @slot loading - Content to show when table is loading\n *\n * @csspart table - The table element\n * @csspart thead - The table header section\n * @csspart tbody - The table body section\n * @csspart header-row - A header row\n * @csspart header-cell - A header cell\n * @csspart row - A data row\n * @csspart cell - A data cell\n * @csspart checkbox - Selection checkbox\n * @csspart sort-icon - Sort direction icon\n * @csspart empty-state - Empty state container\n */\n@customElement('bp-table')\nexport class BpTable extends LitElement {\n /** Array of column definitions */\n @property({ type: Array }) declare columns: TableColumn[];\n\n /** Array of row data objects */\n @property({ type: Array }) declare rows: TableRow[];\n\n /** Visual style variant */\n @property({\n type: String,\n reflect: true,\n converter: {\n fromAttribute: (value: string | null) => {\n const valid: TableVariant[] = ['default', 'striped', 'bordered'];\n return value && valid.includes(value as TableVariant)\n ? (value as TableVariant)\n : 'default';\n },\n },\n })\n declare variant: TableVariant;\n\n /** Size of the table cells */\n @property({\n type: String,\n reflect: true,\n converter: {\n fromAttribute: (value: string | null) => {\n const valid: TableSize[] = ['sm', 'md', 'lg'];\n return value && valid.includes(value as TableSize)\n ? (value as TableSize)\n : 'md';\n },\n },\n })\n declare size: TableSize;\n\n /** Whether rows can be selected */\n @property({ type: Boolean, reflect: true }) declare selectable: boolean;\n\n /** Whether multiple rows can be selected */\n @property({ type: Boolean, reflect: true }) declare multiSelect: boolean;\n\n /** Array of selected row IDs */\n @property({ type: Array }) declare selectedRows: (string | number)[];\n\n /** Current sort state */\n @property({ type: Object }) declare sortState: TableSortState | null;\n\n /** Whether the header sticks on scroll */\n @property({ type: Boolean, reflect: true, attribute: 'sticky-header' })\n declare stickyHeader: boolean;\n\n /** Whether rows highlight on hover */\n @property({ converter: booleanConverter, reflect: true })\n declare hoverable: boolean;\n\n /** Whether the table is in loading state */\n @property({ type: Boolean, reflect: true }) declare loading: boolean;\n\n @state() private allSelected = false;\n\n /**\n * Properties that only affect visual styling, not rendered structure.\n * Changes to only these properties can skip a full re-render.\n */\n private static readonly VISUAL_ONLY_PROPS = new Set([\n 'hoverable',\n 'stickyHeader',\n ]);\n\n static styles = [tableStyles];\n\n constructor() {\n super();\n this.columns = [];\n this.rows = [];\n this.variant = 'default';\n this.size = 'md';\n this.selectable = false;\n this.multiSelect = false;\n this.selectedRows = [];\n this.sortState = null;\n this.stickyHeader = false;\n this.hoverable = true;\n this.loading = false;\n }\n\n protected shouldUpdate(changedProperties: PropertyValues): boolean {\n // If all changed properties are visual-only, skip the update.\n // Be conservative: return true if any non-visual property changed.\n for (const key of changedProperties.keys()) {\n if (!BpTable.VISUAL_ONLY_PROPS.has(key as string)) {\n return true;\n }\n }\n // All changes are visual-only — still need to update for CSS class changes\n return true;\n }\n\n updated(changedProperties: Map<string, unknown>): void {\n if (\n changedProperties.has('selectedRows') ||\n changedProperties.has('rows')\n ) {\n this.allSelected =\n this.rows.length > 0 && this.selectedRows.length === this.rows.length;\n }\n }\n\n /**\n * Memoized sorted rows computation.\n * Only recomputes when rows or sortState references change.\n */\n private computeSortedRows = memoizeOne(\n (rows: TableRow[], sortState: TableSortState | null): TableRow[] => {\n if (!sortState || sortState.direction === 'none') {\n return rows;\n }\n\n const { column, direction } = sortState;\n return [...rows].sort((a, b) => {\n const aVal = a[column];\n const bVal = b[column];\n\n if (aVal === bVal) return 0;\n if (aVal === null || aVal === undefined) return 1;\n if (bVal === null || bVal === undefined) return -1;\n\n let comparison = 0;\n if (typeof aVal === 'string' && typeof bVal === 'string') {\n comparison = aVal.localeCompare(bVal);\n } else if (typeof aVal === 'number' && typeof bVal === 'number') {\n comparison = aVal - bVal;\n } else {\n comparison = String(aVal).localeCompare(String(bVal));\n }\n\n return direction === 'desc' ? -comparison : comparison;\n });\n }\n );\n\n /**\n * Get sorted rows based on current sort state (memoized).\n */\n private get sortedRows(): TableRow[] {\n return this.computeSortedRows(this.rows, this.sortState);\n }\n\n /**\n * Handles click on sortable column header.\n * Cycles through sort directions: asc → desc → none.\n * Manages focus on header after sort completes.\n */\n private handleHeaderClick(column: TableColumn, event: Event) {\n if (!column.sortable) return;\n\n let direction: TableSortDirection = 'asc';\n if (this.sortState?.column === column.key) {\n if (this.sortState.direction === 'asc') {\n direction = 'desc';\n } else if (this.sortState.direction === 'desc') {\n direction = 'none';\n }\n }\n\n this.sortState = { column: column.key, direction };\n this.dispatchEvent(\n new CustomEvent('bp-sort', {\n detail: { column: column.key, direction },\n bubbles: true,\n composed: true,\n })\n );\n\n // Focus management: focus header after sort completes\n this.updateComplete.then(() => {\n (event.target as HTMLElement)?.focus();\n });\n }\n\n /**\n * Handles click events on table rows.\n * Dispatches bp-row-click event and toggles selection if selectable.\n */\n private handleRowClick(row: TableRow, event: Event) {\n this.dispatchEvent(\n new CustomEvent('bp-row-click', {\n detail: { row, originalEvent: event },\n bubbles: true,\n composed: true,\n })\n );\n\n if (this.selectable) {\n this.toggleRowSelection(row);\n }\n }\n\n /**\n * Handles keyboard events on table rows.\n * Triggers selection on Enter or Space key press when selectable.\n */\n private handleRowKeyDown(row: TableRow, event: KeyboardEvent) {\n if (!this.selectable) return;\n\n if (event.key === 'Enter' || event.key === ' ') {\n event.preventDefault();\n this.toggleRowSelection(row);\n }\n }\n\n /**\n * Toggles selection state for a row.\n * Respects multiSelect setting for single vs multiple selection.\n */\n private toggleRowSelection(row: TableRow) {\n const rowId = row.id;\n const isSelected = this.selectedRows.includes(rowId);\n\n let newSelection: (string | number)[];\n if (this.multiSelect) {\n newSelection = isSelected\n ? this.selectedRows.filter((id) => id !== rowId)\n : [...this.selectedRows, rowId];\n } else {\n newSelection = isSelected ? [] : [rowId];\n }\n\n this.selectedRows = newSelection;\n this.dispatchEvent(\n new CustomEvent('bp-select', {\n detail: { selectedRows: newSelection, row, selected: !isSelected },\n bubbles: true,\n composed: true,\n })\n );\n }\n\n /**\n * Handles select all checkbox toggle.\n * Selects or deselects all rows based on current state.\n */\n private handleSelectAll() {\n if (this.allSelected) {\n this.selectedRows = [];\n } else {\n this.selectedRows = this.rows.map((row) => row.id);\n }\n this.dispatchEvent(\n new CustomEvent('bp-select', {\n detail: {\n selectedRows: this.selectedRows,\n selectAll: !this.allSelected,\n },\n bubbles: true,\n composed: true,\n })\n );\n }\n\n /**\n * Handles checkbox click events.\n * Stops propagation only on the checkbox itself to prevent row click.\n */\n private handleCheckboxClick(event: Event, row?: TableRow) {\n // Only stop propagation on the checkbox to prevent triggering row click\n if (event.target instanceof HTMLInputElement) {\n event.stopPropagation();\n }\n if (row) {\n this.toggleRowSelection(row);\n } else {\n this.handleSelectAll();\n }\n }\n\n /** Select all rows */\n selectAll() {\n this.selectedRows = this.rows.map((row) => row.id);\n this.dispatchEvent(\n new CustomEvent('bp-select', {\n detail: { selectedRows: this.selectedRows, selectAll: true },\n bubbles: true,\n composed: true,\n })\n );\n }\n\n /** Deselect all rows */\n deselectAll() {\n this.selectedRows = [];\n this.dispatchEvent(\n new CustomEvent('bp-select', {\n detail: { selectedRows: [], selectAll: false },\n bubbles: true,\n composed: true,\n })\n );\n }\n\n /** Clear sort state */\n clearSort() {\n this.sortState = null;\n }\n\n /**\n * Renders the sort icon for sortable columns.\n * Shows chevron-up for ascending, chevron-down for descending, unsorted icon otherwise.\n */\n private renderSortIcon(column: TableColumn) {\n if (!column.sortable) return nothing;\n\n const isActive = this.sortState?.column === column.key;\n const direction = isActive ? this.sortState?.direction : 'none';\n\n const iconName =\n direction === 'asc'\n ? 'chevron-up'\n : direction === 'desc'\n ? 'chevron-down'\n : 'chevron-up';\n\n const iconClasses = {\n 'sort-icon': true,\n 'sort-icon--active': isActive && direction !== 'none',\n 'sort-icon--inactive': direction === 'none',\n };\n\n return html`\n <span class=${classMap(iconClasses)} part=\"sort-icon\" aria-hidden=\"true\">\n <bp-icon name=${iconName} size=\"sm\"></bp-icon>\n </span>\n `;\n }\n\n /**\n * Renders the table header with column labels and sort icons.\n */\n private renderHeader() {\n return html`\n <thead part=\"thead\">\n <tr class=\"header-row\" part=\"header-row\">\n ${this.selectable && this.multiSelect\n ? html`\n <th class=\"cell cell--checkbox\" part=\"header-cell\">\n <input\n type=\"checkbox\"\n part=\"checkbox\"\n .checked=${this.allSelected}\n .indeterminate=${this.selectedRows.length > 0 &&\n !this.allSelected}\n @click=${(e: Event) => this.handleCheckboxClick(e)}\n aria-label=\"Select all rows\"\n />\n </th>\n `\n : this.selectable\n ? html`<th class=\"cell cell--checkbox\" part=\"header-cell\"></th>`\n : nothing}\n ${repeat(\n this.columns,\n (column) => column.key,\n (column) => html`\n <th\n class=\"cell header-cell ${column.sortable\n ? 'header-cell--sortable'\n : ''}\"\n part=\"header-cell\"\n style=${column.width ? `width: ${column.width}` : ''}\n @click=${(e: Event) => this.handleHeaderClick(column, e)}\n tabindex=${column.sortable ? 0 : -1}\n @keydown=${(e: KeyboardEvent) => {\n if (column.sortable && (e.key === 'Enter' || e.key === ' ')) {\n e.preventDefault();\n this.handleHeaderClick(column, e);\n }\n }}\n aria-sort=${this.sortState?.column === column.key\n ? this.sortState.direction === 'asc'\n ? 'ascending'\n : this.sortState.direction === 'desc'\n ? 'descending'\n : 'none'\n : 'none'}\n >\n <span\n class=\"header-cell__content\"\n style=\"justify-content: ${column.align === 'center'\n ? 'center'\n : column.align === 'right'\n ? 'flex-end'\n : 'flex-start'}\"\n >\n <span class=\"header-cell__label\">${column.label}</span>\n ${this.renderSortIcon(column)}\n </span>\n </th>\n `\n )}\n </tr>\n </thead>\n `;\n }\n\n /**\n * Renders the table body with rows and cells.\n * Handles loading and empty states.\n */\n private renderBody() {\n const sortedRows = this.sortedRows;\n\n if (this.loading) {\n return html`\n <tbody part=\"tbody\">\n <tr>\n <td\n colspan=${this.columns.length + (this.selectable ? 1 : 0)}\n class=\"empty-state\"\n part=\"empty-state\"\n >\n <slot name=\"loading\">\n <div class=\"state-content\">Loading...</div>\n </slot>\n </td>\n </tr>\n </tbody>\n `;\n }\n\n if (sortedRows.length === 0) {\n return html`\n <tbody part=\"tbody\">\n <tr>\n <td\n colspan=${this.columns.length + (this.selectable ? 1 : 0)}\n class=\"empty-state\"\n part=\"empty-state\"\n >\n <slot name=\"empty\">\n <div class=\"state-content\">No data available</div>\n </slot>\n </td>\n </tr>\n </tbody>\n `;\n }\n\n return html`\n <tbody part=\"tbody\">\n ${repeat(\n sortedRows,\n (row) => row.id,\n (row) => {\n const isSelected = this.selectedRows.includes(row.id);\n const rowClasses = {\n row: true,\n 'row--selected': isSelected,\n 'row--hoverable': this.hoverable,\n };\n\n return html`\n <tr\n class=${classMap(rowClasses)}\n part=\"row\"\n @click=${(e: Event) => this.handleRowClick(row, e)}\n @keydown=${(e: KeyboardEvent) => this.handleRowKeyDown(row, e)}\n tabindex=${this.selectable ? 0 : -1}\n aria-selected=${ifDefined(\n this.selectable ? (isSelected ? 'true' : 'false') : undefined\n )}\n >\n ${this.selectable\n ? html`\n <td class=\"cell cell--checkbox\" part=\"cell\">\n <input\n type=\"checkbox\"\n part=\"checkbox\"\n .checked=${isSelected}\n @click=${(e: Event) =>\n this.handleCheckboxClick(e, row)}\n aria-label=\"Select row\"\n />\n </td>\n `\n : nothing}\n ${repeat(\n this.columns,\n (column) => column.key,\n (column) => {\n const value = row[column.key];\n const content = column.render\n ? column.render(value, row)\n : value;\n\n return html`\n <td\n class=\"cell\"\n part=\"cell\"\n style=\"text-align: ${column.align || 'left'}\"\n >\n ${content}\n </td>\n `;\n }\n )}\n </tr>\n `;\n }\n )}\n </tbody>\n `;\n }\n\n render() {\n const tableClasses = {\n table: true,\n [`table--${this.variant}`]: true,\n [`table--${this.size}`]: true,\n 'table--sticky-header': this.stickyHeader,\n 'table--selectable': this.selectable,\n 'table--loading': this.loading,\n };\n\n return html`\n <div class=\"table-wrapper\">\n <table\n class=${classMap(tableClasses)}\n part=\"table\"\n role=\"grid\"\n aria-busy=${this.loading}\n >\n ${this.renderHeader()} ${this.renderBody()}\n </table>\n </div>\n `;\n }\n}\n\ndeclare global {\n interface HTMLElementTagNameMap {\n 'bp-table': BpTable;\n }\n}\n"],"names":["tableStyles","css","BpTable","LitElement","memoizeOne","rows","sortState","column","direction","a","b","aVal","bVal","comparison","changedProperties","key","event","row","rowId","isSelected","newSelection","id","nothing","isActive","iconName","html","classMap","repeat","e","sortedRows","rowClasses","ifDefined","value","content","tableClasses","__decorateClass","property","booleanConverter","state","customElement"],"mappings":";;;;;;;AAEO,MAAMA,IAAcC;AAAA;AAAA;AAAA;AAAA;AAAA;AAAA;AAAA;AAAA;AAAA;AAAA;AAAA;AAAA;AAAA;AAAA;AAAA;AAAA;AAAA;AAAA;AAAA;AAAA;AAAA;AAAA;AAAA;AAAA;AAAA;AAAA;AAAA;AAAA;AAAA;AAAA;AAAA;AAAA;AAAA;AAAA;AAAA;AAAA;AAAA;AAAA;AAAA;AAAA;AAAA;AAAA;AAAA;AAAA;AAAA;AAAA;AAAA;AAAA;AAAA;AAAA;AAAA;AAAA;AAAA;AAAA;AAAA;AAAA;AAAA;AAAA;AAAA;AAAA;AAAA;AAAA;AAAA;AAAA;AAAA;AAAA;AAAA;AAAA;AAAA;AAAA;AAAA;AAAA;AAAA;AAAA;AAAA;AAAA;AAAA;AAAA;AAAA;AAAA;AAAA;AAAA;AAAA;AAAA;AAAA;AAAA;AAAA;AAAA;AAAA;AAAA;AAAA;AAAA;AAAA;AAAA;AAAA;AAAA;AAAA;AAAA;AAAA;AAAA;AAAA;AAAA;AAAA;AAAA;AAAA;AAAA;AAAA;AAAA;AAAA;AAAA;AAAA;AAAA;AAAA;AAAA;AAAA;AAAA;AAAA;AAAA;AAAA;AAAA;AAAA;AAAA;AAAA;AAAA;AAAA;AAAA;AAAA;AAAA;AAAA;AAAA;AAAA;AAAA;AAAA;AAAA;AAAA;AAAA;AAAA;AAAA;AAAA;AAAA;AAAA;AAAA;AAAA;AAAA;AAAA;AAAA;AAAA;AAAA;AAAA;AAAA;AAAA;AAAA;AAAA;AAAA;AAAA;AAAA;AAAA;AAAA;AAAA;AAAA;AAAA;AAAA;AAAA;AAAA;AAAA;AAAA;AAAA;AAAA;AAAA;AAAA;AAAA;AAAA;AAAA;AAAA;AAAA;AAAA;AAAA;AAAA;AAAA;AAAA;AAAA;AAAA;AAAA;AAAA;AAAA;AAAA;AAAA;AAAA;AAAA;AAAA;AAAA;AAAA;AAAA;AAAA;AAAA;AAAA;AAAA;AAAA;AAAA;AAAA;AAAA;AAAA;AAAA;AAAA;AAAA;AAAA;AAAA;AAAA;AAAA;AAAA;AAAA;AAAA;AAAA;AAAA;AAAA;AAAA;AAAA;AAAA;AAAA;AAAA;AAAA;AAAA;AAAA;AAAA;AAAA;AAAA;AAAA;AAAA;AAAA;AAAA;AAAA;AAAA;AAAA;AAAA;AAAA;A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"}
|
|
@@ -1,5 +1,6 @@
|
|
|
1
1
|
import { LitElement } from 'lit';
|
|
2
|
-
import type { IconName } from '../icon/icons/
|
|
2
|
+
import type { IconName } from '../icon/icons/icon-name.generated.js';
|
|
3
|
+
import '../icon/icon.js';
|
|
3
4
|
export type TabsSize = 'sm' | 'md' | 'lg';
|
|
4
5
|
export type TabsVariant = 'default' | 'pills' | 'underline';
|
|
5
6
|
export type TabsPlacement = 'top' | 'bottom' | 'start' | 'end';
|
|
@@ -1 +1 @@
|
|
|
1
|
-
{"version":3,"file":"tabs.d.ts","sourceRoot":"","sources":["../../../source/components/tabs/tabs.ts"],"names":[],"mappings":"AAAA,OAAO,EAAE,UAAU,EAAiB,MAAM,KAAK,CAAC;AAUhD,OAAO,KAAK,EAAE,QAAQ,EAAE,MAAM,
|
|
1
|
+
{"version":3,"file":"tabs.d.ts","sourceRoot":"","sources":["../../../source/components/tabs/tabs.ts"],"names":[],"mappings":"AAAA,OAAO,EAAE,UAAU,EAAiB,MAAM,KAAK,CAAC;AAUhD,OAAO,KAAK,EAAE,QAAQ,EAAE,MAAM,sCAAsC,CAAC;AACrE,OAAO,iBAAiB,CAAC;AAEzB,MAAM,MAAM,QAAQ,GAAG,IAAI,GAAG,IAAI,GAAG,IAAI,CAAC;AAC1C,MAAM,MAAM,WAAW,GAAG,SAAS,GAAG,OAAO,GAAG,WAAW,CAAC;AAC5D,MAAM,MAAM,aAAa,GAAG,KAAK,GAAG,QAAQ,GAAG,OAAO,GAAG,KAAK,CAAC;AAE/D;;GAEG;AACH,MAAM,WAAW,OAAO;IACtB,oCAAoC;IACpC,EAAE,EAAE,MAAM,CAAC;IACX,gCAAgC;IAChC,KAAK,EAAE,MAAM,CAAC;IACd,kCAAkC;IAClC,QAAQ,CAAC,EAAE,OAAO,CAAC;IACnB,4CAA4C;IAC5C,IAAI,CAAC,EAAE,QAAQ,CAAC;IAChB,qCAAqC;IACrC,QAAQ,CAAC,EAAE,OAAO,CAAC;CACpB;AAED;;;;;;;;;;;;;;;;;;;;;;;;;;GA0BG;AACH,qBACa,MAAO,SAAQ,UAAU;IACpC;;OAEG;IACgD,KAAK,EAAE,MAAM,CAAC;IAEjE;;OAEG;IACgC,IAAI,EAAE,OAAO,EAAE,CAAC;IAEnD;;OAEG;IACgD,IAAI,EAAE,QAAQ,CAAC;IAElE;;OAEG;IACgD,OAAO,EAAE,WAAW,CAAC;IAExE;;OAEG;IACgD,SAAS,EAAE,aAAa,CAAC;IAE5E;;OAEG;IACiD,QAAQ,EAAE,OAAO,CAAC;IAEtE;;OAEG;IACiD,MAAM,EAAE,OAAO,CAAC;IAE3D,OAAO,CAAC,YAAY,CAAuB;IAGpD,OAAO,CAAC,aAAa,CAAiB;IAEtC,MAAM,CAAC,MAAM,4BAAgB;;IAa7B,iBAAiB,IAAI,IAAI;IAKzB,OAAO,CAAC,iBAAiB,EAAE,GAAG,CAAC,MAAM,EAAE,OAAO,CAAC,GAAG,IAAI;IAQtD,OAAO,CAAC,gBAAgB,CAgBtB;IAEF,OAAO,CAAC,SAAS;IAMjB,OAAO,CAAC,cAAc;IAItB,OAAO,CAAC,qBAAqB;IAe7B,OAAO,CAAC,cAAc,CAIpB;IAEF,OAAO,CAAC,gBAAgB,CAqEtB;IAEF,OAAO,CAAC,QAAQ;IAOhB,OAAO,CAAC,SAAS;IAmBjB,OAAO,CAAC,cAAc,CAoBpB;IAEF,OAAO,CAAC,cAAc,CAEpB;IAEF,OAAO,CAAC,aAAa,CAEnB;IAEF,OAAO,CAAC,SAAS;IAyDjB,MAAM;CA8BP;AAED;;;;;;;;;;GAUG;AACH,qBACa,UAAW,SAAQ,UAAU;IACxC;;OAEG;IAEK,KAAK,EAAE,MAAM,CAAC;;IAOtB,iBAAiB,IAAI,IAAI;IAMzB,OAAO,CAAC,iBAAiB,EAAE,GAAG,CAAC,MAAM,EAAE,OAAO,CAAC,GAAG,IAAI;IAStD,MAAM;CAGP;AAED,OAAO,CAAC,MAAM,CAAC;IACb,UAAU,qBAAqB;QAC7B,SAAS,EAAE,MAAM,CAAC;QAClB,cAAc,EAAE,UAAU,CAAC;KAC5B;CACF"}
|