@economic/taco 1.0.2 → 1.0.5
This diff represents the content of publicly available package versions that have been released to one of the supported registries. The information contained in this diff is provided for informational purposes only and reflects changes between package versions as they appear in their respective public registries.
- package/README.md +84 -84
- package/dist/components/HoverCard/HoverCard.d.ts +16 -0
- package/dist/index.css +661 -661
- package/dist/index.d.ts +1 -0
- package/dist/taco.cjs.development.js +1520 -1821
- package/dist/taco.cjs.development.js.map +1 -1
- package/package.json +3 -2
- package/plugins/tailwindcss-aria-attributes.js +73 -73
- package/tailwind.config.js +297 -297
- package/types.json +405 -379
- package/dist/esm/_virtual/_rollupPluginBabelHelpers.js +0 -35
- package/dist/esm/_virtual/_rollupPluginBabelHelpers.js.map +0 -1
- package/dist/esm/components/Accordion/Accordion.js +0 -93
- package/dist/esm/components/Accordion/Accordion.js.map +0 -1
- package/dist/esm/components/Backdrop/Backdrop.js +0 -13
- package/dist/esm/components/Backdrop/Backdrop.js.map +0 -1
- package/dist/esm/components/Badge/Badge.js +0 -32
- package/dist/esm/components/Badge/Badge.js.map +0 -1
- package/dist/esm/components/Banner/Banner.js +0 -24
- package/dist/esm/components/Banner/Banner.js.map +0 -1
- package/dist/esm/components/Banner/util.js +0 -36
- package/dist/esm/components/Banner/util.js.map +0 -1
- package/dist/esm/components/Button/Button.js +0 -36
- package/dist/esm/components/Button/Button.js.map +0 -1
- package/dist/esm/components/Button/util.js +0 -82
- package/dist/esm/components/Button/util.js.map +0 -1
- package/dist/esm/components/Calendar/Calendar.js +0 -152
- package/dist/esm/components/Calendar/Calendar.js.map +0 -1
- package/dist/esm/components/Checkbox/Checkbox.js +0 -58
- package/dist/esm/components/Checkbox/Checkbox.js.map +0 -1
- package/dist/esm/components/Combobox/Combobox.js +0 -89
- package/dist/esm/components/Combobox/Combobox.js.map +0 -1
- package/dist/esm/components/Combobox/useCombobox.js +0 -305
- package/dist/esm/components/Combobox/useCombobox.js.map +0 -1
- package/dist/esm/components/Datepicker/Datepicker.js +0 -75
- package/dist/esm/components/Datepicker/Datepicker.js.map +0 -1
- package/dist/esm/components/Datepicker/useDatepicker.js +0 -95
- package/dist/esm/components/Datepicker/useDatepicker.js.map +0 -1
- package/dist/esm/components/Dialog/Context.js +0 -26
- package/dist/esm/components/Dialog/Context.js.map +0 -1
- package/dist/esm/components/Dialog/Dialog.js +0 -98
- package/dist/esm/components/Dialog/Dialog.js.map +0 -1
- package/dist/esm/components/Dialog/components/Content.js +0 -140
- package/dist/esm/components/Dialog/components/Content.js.map +0 -1
- package/dist/esm/components/Dialog/components/Drawer.js +0 -42
- package/dist/esm/components/Dialog/components/Drawer.js.map +0 -1
- package/dist/esm/components/Dialog/components/Extra.js +0 -15
- package/dist/esm/components/Dialog/components/Extra.js.map +0 -1
- package/dist/esm/components/Dialog/components/Trigger.js +0 -15
- package/dist/esm/components/Dialog/components/Trigger.js.map +0 -1
- package/dist/esm/components/Field/Field.js +0 -33
- package/dist/esm/components/Field/Field.js.map +0 -1
- package/dist/esm/components/Form/Form.js +0 -22
- package/dist/esm/components/Form/Form.js.map +0 -1
- package/dist/esm/components/Group/Group.js +0 -20
- package/dist/esm/components/Group/Group.js.map +0 -1
- package/dist/esm/components/Hanger/Hanger.js +0 -104
- package/dist/esm/components/Hanger/Hanger.js.map +0 -1
- package/dist/esm/components/Icon/Icon.js +0 -30
- package/dist/esm/components/Icon/Icon.js.map +0 -1
- package/dist/esm/components/Icon/components/AccountPreview.js +0 -18
- package/dist/esm/components/Icon/components/AccountPreview.js.map +0 -1
- package/dist/esm/components/Icon/components/Accounting.js +0 -18
- package/dist/esm/components/Icon/components/Accounting.js.map +0 -1
- package/dist/esm/components/Icon/components/AccountingYear.js +0 -18
- package/dist/esm/components/Icon/components/AccountingYear.js.map +0 -1
- package/dist/esm/components/Icon/components/AccountingYearCancel.js +0 -18
- package/dist/esm/components/Icon/components/AccountingYearCancel.js.map +0 -1
- package/dist/esm/components/Icon/components/ArrowBottom.js +0 -18
- package/dist/esm/components/Icon/components/ArrowBottom.js.map +0 -1
- package/dist/esm/components/Icon/components/ArrowDown.js +0 -18
- package/dist/esm/components/Icon/components/ArrowDown.js.map +0 -1
- package/dist/esm/components/Icon/components/ArrowEnd.js +0 -18
- package/dist/esm/components/Icon/components/ArrowEnd.js.map +0 -1
- package/dist/esm/components/Icon/components/ArrowLeft.js +0 -18
- package/dist/esm/components/Icon/components/ArrowLeft.js.map +0 -1
- package/dist/esm/components/Icon/components/ArrowRight.js +0 -18
- package/dist/esm/components/Icon/components/ArrowRight.js.map +0 -1
- package/dist/esm/components/Icon/components/ArrowStart.js +0 -18
- package/dist/esm/components/Icon/components/ArrowStart.js.map +0 -1
- package/dist/esm/components/Icon/components/ArrowTop.js +0 -18
- package/dist/esm/components/Icon/components/ArrowTop.js.map +0 -1
- package/dist/esm/components/Icon/components/ArrowUp.js +0 -18
- package/dist/esm/components/Icon/components/ArrowUp.js.map +0 -1
- package/dist/esm/components/Icon/components/Attach.js +0 -18
- package/dist/esm/components/Icon/components/Attach.js.map +0 -1
- package/dist/esm/components/Icon/components/AttachAuto.js +0 -18
- package/dist/esm/components/Icon/components/AttachAuto.js.map +0 -1
- package/dist/esm/components/Icon/components/AttachCancel.js +0 -18
- package/dist/esm/components/Icon/components/AttachCancel.js.map +0 -1
- package/dist/esm/components/Icon/components/Autotext.js +0 -18
- package/dist/esm/components/Icon/components/Autotext.js.map +0 -1
- package/dist/esm/components/Icon/components/AutotextInsert.js +0 -18
- package/dist/esm/components/Icon/components/AutotextInsert.js.map +0 -1
- package/dist/esm/components/Icon/components/Basic.js +0 -18
- package/dist/esm/components/Icon/components/Basic.js.map +0 -1
- package/dist/esm/components/Icon/components/BasicTabs.js +0 -18
- package/dist/esm/components/Icon/components/BasicTabs.js.map +0 -1
- package/dist/esm/components/Icon/components/BellSolid.js +0 -18
- package/dist/esm/components/Icon/components/BellSolid.js.map +0 -1
- package/dist/esm/components/Icon/components/Book.js +0 -18
- package/dist/esm/components/Icon/components/Book.js.map +0 -1
- package/dist/esm/components/Icon/components/Booking.js +0 -18
- package/dist/esm/components/Icon/components/Booking.js.map +0 -1
- package/dist/esm/components/Icon/components/Budget.js +0 -18
- package/dist/esm/components/Icon/components/Budget.js.map +0 -1
- package/dist/esm/components/Icon/components/Calendar.js +0 -18
- package/dist/esm/components/Icon/components/Calendar.js.map +0 -1
- package/dist/esm/components/Icon/components/CashAccount.js +0 -17
- package/dist/esm/components/Icon/components/CashAccount.js.map +0 -1
- package/dist/esm/components/Icon/components/CashReports.js +0 -18
- package/dist/esm/components/Icon/components/CashReports.js.map +0 -1
- package/dist/esm/components/Icon/components/Chat.js +0 -18
- package/dist/esm/components/Icon/components/Chat.js.map +0 -1
- package/dist/esm/components/Icon/components/ChatSolid.js +0 -18
- package/dist/esm/components/Icon/components/ChatSolid.js.map +0 -1
- package/dist/esm/components/Icon/components/ChevronDown.js +0 -18
- package/dist/esm/components/Icon/components/ChevronDown.js.map +0 -1
- package/dist/esm/components/Icon/components/ChevronDownDouble.js +0 -18
- package/dist/esm/components/Icon/components/ChevronDownDouble.js.map +0 -1
- package/dist/esm/components/Icon/components/ChevronDownSolid.js +0 -18
- package/dist/esm/components/Icon/components/ChevronDownSolid.js.map +0 -1
- package/dist/esm/components/Icon/components/ChevronLeft.js +0 -18
- package/dist/esm/components/Icon/components/ChevronLeft.js.map +0 -1
- package/dist/esm/components/Icon/components/ChevronLeftDouble.js +0 -18
- package/dist/esm/components/Icon/components/ChevronLeftDouble.js.map +0 -1
- package/dist/esm/components/Icon/components/ChevronRight.js +0 -18
- package/dist/esm/components/Icon/components/ChevronRight.js.map +0 -1
- package/dist/esm/components/Icon/components/ChevronRightDouble.js +0 -18
- package/dist/esm/components/Icon/components/ChevronRightDouble.js.map +0 -1
- package/dist/esm/components/Icon/components/ChevronUp.js +0 -18
- package/dist/esm/components/Icon/components/ChevronUp.js.map +0 -1
- package/dist/esm/components/Icon/components/ChevronUpDouble.js +0 -18
- package/dist/esm/components/Icon/components/ChevronUpDouble.js.map +0 -1
- package/dist/esm/components/Icon/components/ChevronUpSolid.js +0 -18
- package/dist/esm/components/Icon/components/ChevronUpSolid.js.map +0 -1
- package/dist/esm/components/Icon/components/CircleClose.js +0 -19
- package/dist/esm/components/Icon/components/CircleClose.js.map +0 -1
- package/dist/esm/components/Icon/components/CircleMinus.js +0 -18
- package/dist/esm/components/Icon/components/CircleMinus.js.map +0 -1
- package/dist/esm/components/Icon/components/CirclePlus.js +0 -18
- package/dist/esm/components/Icon/components/CirclePlus.js.map +0 -1
- package/dist/esm/components/Icon/components/CircleTick.js +0 -18
- package/dist/esm/components/Icon/components/CircleTick.js.map +0 -1
- package/dist/esm/components/Icon/components/Clamp.js +0 -18
- package/dist/esm/components/Icon/components/Clamp.js.map +0 -1
- package/dist/esm/components/Icon/components/ClampOpen.js +0 -18
- package/dist/esm/components/Icon/components/ClampOpen.js.map +0 -1
- package/dist/esm/components/Icon/components/Close.js +0 -18
- package/dist/esm/components/Icon/components/Close.js.map +0 -1
- package/dist/esm/components/Icon/components/ConnectionEnable.js +0 -17
- package/dist/esm/components/Icon/components/ConnectionEnable.js.map +0 -1
- package/dist/esm/components/Icon/components/ConnectionRevoke.js +0 -17
- package/dist/esm/components/Icon/components/ConnectionRevoke.js.map +0 -1
- package/dist/esm/components/Icon/components/Contacts.js +0 -18
- package/dist/esm/components/Icon/components/Contacts.js.map +0 -1
- package/dist/esm/components/Icon/components/Copy.js +0 -18
- package/dist/esm/components/Icon/components/Copy.js.map +0 -1
- package/dist/esm/components/Icon/components/Courses.js +0 -17
- package/dist/esm/components/Icon/components/Courses.js.map +0 -1
- package/dist/esm/components/Icon/components/Credit.js +0 -18
- package/dist/esm/components/Icon/components/Credit.js.map +0 -1
- package/dist/esm/components/Icon/components/Delete.js +0 -18
- package/dist/esm/components/Icon/components/Delete.js.map +0 -1
- package/dist/esm/components/Icon/components/DeletePermanently.js +0 -18
- package/dist/esm/components/Icon/components/DeletePermanently.js.map +0 -1
- package/dist/esm/components/Icon/components/Depecriate.js +0 -18
- package/dist/esm/components/Icon/components/Depecriate.js.map +0 -1
- package/dist/esm/components/Icon/components/Developer.js +0 -18
- package/dist/esm/components/Icon/components/Developer.js.map +0 -1
- package/dist/esm/components/Icon/components/DistributionTemplate.js +0 -18
- package/dist/esm/components/Icon/components/DistributionTemplate.js.map +0 -1
- package/dist/esm/components/Icon/components/Document.js +0 -17
- package/dist/esm/components/Icon/components/Document.js.map +0 -1
- package/dist/esm/components/Icon/components/DocumentApprove.js +0 -18
- package/dist/esm/components/Icon/components/DocumentApprove.js.map +0 -1
- package/dist/esm/components/Icon/components/DocumentCreateEntry.js +0 -18
- package/dist/esm/components/Icon/components/DocumentCreateEntry.js.map +0 -1
- package/dist/esm/components/Icon/components/DocumentCut.js +0 -18
- package/dist/esm/components/Icon/components/DocumentCut.js.map +0 -1
- package/dist/esm/components/Icon/components/DocumentError.js +0 -18
- package/dist/esm/components/Icon/components/DocumentError.js.map +0 -1
- package/dist/esm/components/Icon/components/DocumentIsolatePage.js +0 -18
- package/dist/esm/components/Icon/components/DocumentIsolatePage.js.map +0 -1
- package/dist/esm/components/Icon/components/DocumentMerge.js +0 -18
- package/dist/esm/components/Icon/components/DocumentMerge.js.map +0 -1
- package/dist/esm/components/Icon/components/DocumentMove.js +0 -18
- package/dist/esm/components/Icon/components/DocumentMove.js.map +0 -1
- package/dist/esm/components/Icon/components/DocumentPreview.js +0 -18
- package/dist/esm/components/Icon/components/DocumentPreview.js.map +0 -1
- package/dist/esm/components/Icon/components/DocumentReceived.js +0 -17
- package/dist/esm/components/Icon/components/DocumentReceived.js.map +0 -1
- package/dist/esm/components/Icon/components/DocumentRejectedRequest.js +0 -17
- package/dist/esm/components/Icon/components/DocumentRejectedRequest.js.map +0 -1
- package/dist/esm/components/Icon/components/DocumentSplit.js +0 -18
- package/dist/esm/components/Icon/components/DocumentSplit.js.map +0 -1
- package/dist/esm/components/Icon/components/DocumentTime.js +0 -18
- package/dist/esm/components/Icon/components/DocumentTime.js.map +0 -1
- package/dist/esm/components/Icon/components/Download.js +0 -18
- package/dist/esm/components/Icon/components/Download.js.map +0 -1
- package/dist/esm/components/Icon/components/Drag.js +0 -18
- package/dist/esm/components/Icon/components/Drag.js.map +0 -1
- package/dist/esm/components/Icon/components/ECopedia.js +0 -18
- package/dist/esm/components/Icon/components/ECopedia.js.map +0 -1
- package/dist/esm/components/Icon/components/ESignature.js +0 -18
- package/dist/esm/components/Icon/components/ESignature.js.map +0 -1
- package/dist/esm/components/Icon/components/Edit.js +0 -18
- package/dist/esm/components/Icon/components/Edit.js.map +0 -1
- package/dist/esm/components/Icon/components/EllipsisHorizontal.js +0 -18
- package/dist/esm/components/Icon/components/EllipsisHorizontal.js.map +0 -1
- package/dist/esm/components/Icon/components/EllipsisVertical.js +0 -18
- package/dist/esm/components/Icon/components/EllipsisVertical.js.map +0 -1
- package/dist/esm/components/Icon/components/EntriesOnAccount.js +0 -18
- package/dist/esm/components/Icon/components/EntriesOnAccount.js.map +0 -1
- package/dist/esm/components/Icon/components/EntriesOpen.js +0 -18
- package/dist/esm/components/Icon/components/EntriesOpen.js.map +0 -1
- package/dist/esm/components/Icon/components/EntriesWarning.js +0 -18
- package/dist/esm/components/Icon/components/EntriesWarning.js.map +0 -1
- package/dist/esm/components/Icon/components/EntryTypeCustomerInvoice.js +0 -18
- package/dist/esm/components/Icon/components/EntryTypeCustomerInvoice.js.map +0 -1
- package/dist/esm/components/Icon/components/EntryTypeCustomerPayment.js +0 -18
- package/dist/esm/components/Icon/components/EntryTypeCustomerPayment.js.map +0 -1
- package/dist/esm/components/Icon/components/EntryTypeJournalEntry.js +0 -18
- package/dist/esm/components/Icon/components/EntryTypeJournalEntry.js.map +0 -1
- package/dist/esm/components/Icon/components/EntryTypeManualCustomerInvoice.js +0 -18
- package/dist/esm/components/Icon/components/EntryTypeManualCustomerInvoice.js.map +0 -1
- package/dist/esm/components/Icon/components/EntryTypeSupplierInvoice.js +0 -18
- package/dist/esm/components/Icon/components/EntryTypeSupplierInvoice.js.map +0 -1
- package/dist/esm/components/Icon/components/EntryTypeSupplierPayment.js +0 -18
- package/dist/esm/components/Icon/components/EntryTypeSupplierPayment.js.map +0 -1
- package/dist/esm/components/Icon/components/Envelope.js +0 -18
- package/dist/esm/components/Icon/components/Envelope.js.map +0 -1
- package/dist/esm/components/Icon/components/EnvelopeApproved.js +0 -18
- package/dist/esm/components/Icon/components/EnvelopeApproved.js.map +0 -1
- package/dist/esm/components/Icon/components/ExpandView.js +0 -18
- package/dist/esm/components/Icon/components/ExpandView.js.map +0 -1
- package/dist/esm/components/Icon/components/Expenses.js +0 -18
- package/dist/esm/components/Icon/components/Expenses.js.map +0 -1
- package/dist/esm/components/Icon/components/Export.js +0 -18
- package/dist/esm/components/Icon/components/Export.js.map +0 -1
- package/dist/esm/components/Icon/components/ExportToExcel.js +0 -18
- package/dist/esm/components/Icon/components/ExportToExcel.js.map +0 -1
- package/dist/esm/components/Icon/components/ExportToPdf.js +0 -18
- package/dist/esm/components/Icon/components/ExportToPdf.js.map +0 -1
- package/dist/esm/components/Icon/components/Filter.js +0 -18
- package/dist/esm/components/Icon/components/Filter.js.map +0 -1
- package/dist/esm/components/Icon/components/FilterSolid.js +0 -18
- package/dist/esm/components/Icon/components/FilterSolid.js.map +0 -1
- package/dist/esm/components/Icon/components/GraphSolid.js +0 -18
- package/dist/esm/components/Icon/components/GraphSolid.js.map +0 -1
- package/dist/esm/components/Icon/components/Hash.js +0 -18
- package/dist/esm/components/Icon/components/Hash.js.map +0 -1
- package/dist/esm/components/Icon/components/Home.js +0 -18
- package/dist/esm/components/Icon/components/Home.js.map +0 -1
- package/dist/esm/components/Icon/components/Images.js +0 -18
- package/dist/esm/components/Icon/components/Images.js.map +0 -1
- package/dist/esm/components/Icon/components/Import.js +0 -18
- package/dist/esm/components/Icon/components/Import.js.map +0 -1
- package/dist/esm/components/Icon/components/Inbox.js +0 -20
- package/dist/esm/components/Icon/components/Inbox.js.map +0 -1
- package/dist/esm/components/Icon/components/InboxEinvoicing.js +0 -20
- package/dist/esm/components/Icon/components/InboxEinvoicing.js.map +0 -1
- package/dist/esm/components/Icon/components/InboxScanning.js +0 -20
- package/dist/esm/components/Icon/components/InboxScanning.js.map +0 -1
- package/dist/esm/components/Icon/components/InboxSmart.js +0 -20
- package/dist/esm/components/Icon/components/InboxSmart.js.map +0 -1
- package/dist/esm/components/Icon/components/Info.js +0 -18
- package/dist/esm/components/Icon/components/Info.js.map +0 -1
- package/dist/esm/components/Icon/components/Inventory.js +0 -18
- package/dist/esm/components/Icon/components/Inventory.js.map +0 -1
- package/dist/esm/components/Icon/components/InventoryMatrix.js +0 -18
- package/dist/esm/components/Icon/components/InventoryMatrix.js.map +0 -1
- package/dist/esm/components/Icon/components/JournalPro.js +0 -18
- package/dist/esm/components/Icon/components/JournalPro.js.map +0 -1
- package/dist/esm/components/Icon/components/Layout.js +0 -18
- package/dist/esm/components/Icon/components/Layout.js.map +0 -1
- package/dist/esm/components/Icon/components/LayoutBoth.js +0 -18
- package/dist/esm/components/Icon/components/LayoutBoth.js.map +0 -1
- package/dist/esm/components/Icon/components/LayoutFirst.js +0 -18
- package/dist/esm/components/Icon/components/LayoutFirst.js.map +0 -1
- package/dist/esm/components/Icon/components/LayoutLast.js +0 -18
- package/dist/esm/components/Icon/components/LayoutLast.js.map +0 -1
- package/dist/esm/components/Icon/components/LayoutNone.js +0 -18
- package/dist/esm/components/Icon/components/LayoutNone.js.map +0 -1
- package/dist/esm/components/Icon/components/LedgerCard.js +0 -18
- package/dist/esm/components/Icon/components/LedgerCard.js.map +0 -1
- package/dist/esm/components/Icon/components/LedgerCardCustomerReminder.js +0 -18
- package/dist/esm/components/Icon/components/LedgerCardCustomerReminder.js.map +0 -1
- package/dist/esm/components/Icon/components/LedgerCardManualCustomerInvoice.js +0 -18
- package/dist/esm/components/Icon/components/LedgerCardManualCustomerInvoice.js.map +0 -1
- package/dist/esm/components/Icon/components/LedgerCardObsoleteStock.js +0 -18
- package/dist/esm/components/Icon/components/LedgerCardObsoleteStock.js.map +0 -1
- package/dist/esm/components/Icon/components/LedgerCardOpeningEntry.js +0 -18
- package/dist/esm/components/Icon/components/LedgerCardOpeningEntry.js.map +0 -1
- package/dist/esm/components/Icon/components/LedgerCardReservedEntry.js +0 -18
- package/dist/esm/components/Icon/components/LedgerCardReservedEntry.js.map +0 -1
- package/dist/esm/components/Icon/components/LedgerCardShrinkagePilferage.js +0 -18
- package/dist/esm/components/Icon/components/LedgerCardShrinkagePilferage.js.map +0 -1
- package/dist/esm/components/Icon/components/LedgerCardStockAdjustment.js +0 -18
- package/dist/esm/components/Icon/components/LedgerCardStockAdjustment.js.map +0 -1
- package/dist/esm/components/Icon/components/LedgerCardTransferredOpeningEntry.js +0 -18
- package/dist/esm/components/Icon/components/LedgerCardTransferredOpeningEntry.js.map +0 -1
- package/dist/esm/components/Icon/components/Lightbulb.js +0 -18
- package/dist/esm/components/Icon/components/Lightbulb.js.map +0 -1
- package/dist/esm/components/Icon/components/Line.js +0 -18
- package/dist/esm/components/Icon/components/Line.js.map +0 -1
- package/dist/esm/components/Icon/components/List.js +0 -18
- package/dist/esm/components/Icon/components/List.js.map +0 -1
- package/dist/esm/components/Icon/components/ListBulleted.js +0 -18
- package/dist/esm/components/Icon/components/ListBulleted.js.map +0 -1
- package/dist/esm/components/Icon/components/ListSearch.js +0 -18
- package/dist/esm/components/Icon/components/ListSearch.js.map +0 -1
- package/dist/esm/components/Icon/components/LockOpen.js +0 -18
- package/dist/esm/components/Icon/components/LockOpen.js.map +0 -1
- package/dist/esm/components/Icon/components/Log.js +0 -18
- package/dist/esm/components/Icon/components/Log.js.map +0 -1
- package/dist/esm/components/Icon/components/Market.js +0 -18
- package/dist/esm/components/Icon/components/Market.js.map +0 -1
- package/dist/esm/components/Icon/components/MatchAmount.js +0 -18
- package/dist/esm/components/Icon/components/MatchAmount.js.map +0 -1
- package/dist/esm/components/Icon/components/MatchEntries.js +0 -18
- package/dist/esm/components/Icon/components/MatchEntries.js.map +0 -1
- package/dist/esm/components/Icon/components/Mileage.js +0 -18
- package/dist/esm/components/Icon/components/Mileage.js.map +0 -1
- package/dist/esm/components/Icon/components/ModalResize.js +0 -18
- package/dist/esm/components/Icon/components/ModalResize.js.map +0 -1
- package/dist/esm/components/Icon/components/ModalShrink.js +0 -18
- package/dist/esm/components/Icon/components/ModalShrink.js.map +0 -1
- package/dist/esm/components/Icon/components/More.js +0 -18
- package/dist/esm/components/Icon/components/More.js.map +0 -1
- package/dist/esm/components/Icon/components/MoreSolid.js +0 -18
- package/dist/esm/components/Icon/components/MoreSolid.js.map +0 -1
- package/dist/esm/components/Icon/components/Move.js +0 -18
- package/dist/esm/components/Icon/components/Move.js.map +0 -1
- package/dist/esm/components/Icon/components/NavigationList.js +0 -18
- package/dist/esm/components/Icon/components/NavigationList.js.map +0 -1
- package/dist/esm/components/Icon/components/Note.js +0 -18
- package/dist/esm/components/Icon/components/Note.js.map +0 -1
- package/dist/esm/components/Icon/components/NoteFollowUp.js +0 -18
- package/dist/esm/components/Icon/components/NoteFollowUp.js.map +0 -1
- package/dist/esm/components/Icon/components/NoteRead.js +0 -18
- package/dist/esm/components/Icon/components/NoteRead.js.map +0 -1
- package/dist/esm/components/Icon/components/PartnerApi.js +0 -18
- package/dist/esm/components/Icon/components/PartnerApi.js.map +0 -1
- package/dist/esm/components/Icon/components/Period.js +0 -18
- package/dist/esm/components/Icon/components/Period.js.map +0 -1
- package/dist/esm/components/Icon/components/PersonChange.js +0 -18
- package/dist/esm/components/Icon/components/PersonChange.js.map +0 -1
- package/dist/esm/components/Icon/components/PersonMinus.js +0 -18
- package/dist/esm/components/Icon/components/PersonMinus.js.map +0 -1
- package/dist/esm/components/Icon/components/PersonPlus.js +0 -18
- package/dist/esm/components/Icon/components/PersonPlus.js.map +0 -1
- package/dist/esm/components/Icon/components/PersonTick.js +0 -18
- package/dist/esm/components/Icon/components/PersonTick.js.map +0 -1
- package/dist/esm/components/Icon/components/Play.js +0 -18
- package/dist/esm/components/Icon/components/Play.js.map +0 -1
- package/dist/esm/components/Icon/components/PlusMinus.js +0 -18
- package/dist/esm/components/Icon/components/PlusMinus.js.map +0 -1
- package/dist/esm/components/Icon/components/Print.js +0 -18
- package/dist/esm/components/Icon/components/Print.js.map +0 -1
- package/dist/esm/components/Icon/components/ProcessPayment.js +0 -18
- package/dist/esm/components/Icon/components/ProcessPayment.js.map +0 -1
- package/dist/esm/components/Icon/components/ProductLedgerCard.js +0 -18
- package/dist/esm/components/Icon/components/ProductLedgerCard.js.map +0 -1
- package/dist/esm/components/Icon/components/ProjectCards.js +0 -18
- package/dist/esm/components/Icon/components/ProjectCards.js.map +0 -1
- package/dist/esm/components/Icon/components/Projects.js +0 -18
- package/dist/esm/components/Icon/components/Projects.js.map +0 -1
- package/dist/esm/components/Icon/components/Quicklinks.js +0 -18
- package/dist/esm/components/Icon/components/Quicklinks.js.map +0 -1
- package/dist/esm/components/Icon/components/RatingBankruptcy.js +0 -18
- package/dist/esm/components/Icon/components/RatingBankruptcy.js.map +0 -1
- package/dist/esm/components/Icon/components/RatingPaymentProblems.js +0 -18
- package/dist/esm/components/Icon/components/RatingPaymentProblems.js.map +0 -1
- package/dist/esm/components/Icon/components/Reconciled.js +0 -18
- package/dist/esm/components/Icon/components/Reconciled.js.map +0 -1
- package/dist/esm/components/Icon/components/Refresh.js +0 -17
- package/dist/esm/components/Icon/components/Refresh.js.map +0 -1
- package/dist/esm/components/Icon/components/Report.js +0 -18
- package/dist/esm/components/Icon/components/Report.js.map +0 -1
- package/dist/esm/components/Icon/components/ReportSolid.js +0 -18
- package/dist/esm/components/Icon/components/ReportSolid.js.map +0 -1
- package/dist/esm/components/Icon/components/Restore.js +0 -18
- package/dist/esm/components/Icon/components/Restore.js.map +0 -1
- package/dist/esm/components/Icon/components/RotateLeft.js +0 -17
- package/dist/esm/components/Icon/components/RotateLeft.js.map +0 -1
- package/dist/esm/components/Icon/components/RotateRight.js +0 -17
- package/dist/esm/components/Icon/components/RotateRight.js.map +0 -1
- package/dist/esm/components/Icon/components/Sales.js +0 -18
- package/dist/esm/components/Icon/components/Sales.js.map +0 -1
- package/dist/esm/components/Icon/components/Search.js +0 -18
- package/dist/esm/components/Icon/components/Search.js.map +0 -1
- package/dist/esm/components/Icon/components/SearchBold.js +0 -18
- package/dist/esm/components/Icon/components/SearchBold.js.map +0 -1
- package/dist/esm/components/Icon/components/Secure.js +0 -18
- package/dist/esm/components/Icon/components/Secure.js.map +0 -1
- package/dist/esm/components/Icon/components/SecureTick.js +0 -18
- package/dist/esm/components/Icon/components/SecureTick.js.map +0 -1
- package/dist/esm/components/Icon/components/Settings.js +0 -18
- package/dist/esm/components/Icon/components/Settings.js.map +0 -1
- package/dist/esm/components/Icon/components/SettingsSolid.js +0 -18
- package/dist/esm/components/Icon/components/SettingsSolid.js.map +0 -1
- package/dist/esm/components/Icon/components/Shortcuts.js +0 -18
- package/dist/esm/components/Icon/components/Shortcuts.js.map +0 -1
- package/dist/esm/components/Icon/components/ShowAll.js +0 -18
- package/dist/esm/components/Icon/components/ShowAll.js.map +0 -1
- package/dist/esm/components/Icon/components/ShowLess.js +0 -18
- package/dist/esm/components/Icon/components/ShowLess.js.map +0 -1
- package/dist/esm/components/Icon/components/ShowMore.js +0 -18
- package/dist/esm/components/Icon/components/ShowMore.js.map +0 -1
- package/dist/esm/components/Icon/components/ShowTemplate.js +0 -18
- package/dist/esm/components/Icon/components/ShowTemplate.js.map +0 -1
- package/dist/esm/components/Icon/components/Sliders.js +0 -18
- package/dist/esm/components/Icon/components/Sliders.js.map +0 -1
- package/dist/esm/components/Icon/components/Smartpay.js +0 -18
- package/dist/esm/components/Icon/components/Smartpay.js.map +0 -1
- package/dist/esm/components/Icon/components/SortBy.js +0 -18
- package/dist/esm/components/Icon/components/SortBy.js.map +0 -1
- package/dist/esm/components/Icon/components/Spinner.js +0 -21
- package/dist/esm/components/Icon/components/Spinner.js.map +0 -1
- package/dist/esm/components/Icon/components/Star.js +0 -18
- package/dist/esm/components/Icon/components/Star.js.map +0 -1
- package/dist/esm/components/Icon/components/StarSolid.js +0 -18
- package/dist/esm/components/Icon/components/StarSolid.js.map +0 -1
- package/dist/esm/components/Icon/components/Subscriptions.js +0 -18
- package/dist/esm/components/Icon/components/Subscriptions.js.map +0 -1
- package/dist/esm/components/Icon/components/SystemEntries.js +0 -18
- package/dist/esm/components/Icon/components/SystemEntries.js.map +0 -1
- package/dist/esm/components/Icon/components/Tag.js +0 -18
- package/dist/esm/components/Icon/components/Tag.js.map +0 -1
- package/dist/esm/components/Icon/components/TemplateOverride.js +0 -18
- package/dist/esm/components/Icon/components/TemplateOverride.js.map +0 -1
- package/dist/esm/components/Icon/components/Templates.js +0 -18
- package/dist/esm/components/Icon/components/Templates.js.map +0 -1
- package/dist/esm/components/Icon/components/ThumbBoth.js +0 -18
- package/dist/esm/components/Icon/components/ThumbBoth.js.map +0 -1
- package/dist/esm/components/Icon/components/ThumbDown.js +0 -18
- package/dist/esm/components/Icon/components/ThumbDown.js.map +0 -1
- package/dist/esm/components/Icon/components/ThumbDownSolid.js +0 -18
- package/dist/esm/components/Icon/components/ThumbDownSolid.js.map +0 -1
- package/dist/esm/components/Icon/components/ThumbUp.js +0 -18
- package/dist/esm/components/Icon/components/ThumbUp.js.map +0 -1
- package/dist/esm/components/Icon/components/ThumbUpSolid.js +0 -18
- package/dist/esm/components/Icon/components/ThumbUpSolid.js.map +0 -1
- package/dist/esm/components/Icon/components/Tick.js +0 -18
- package/dist/esm/components/Icon/components/Tick.js.map +0 -1
- package/dist/esm/components/Icon/components/Time.js +0 -18
- package/dist/esm/components/Icon/components/Time.js.map +0 -1
- package/dist/esm/components/Icon/components/Transfer.js +0 -18
- package/dist/esm/components/Icon/components/Transfer.js.map +0 -1
- package/dist/esm/components/Icon/components/TransferCancel.js +0 -24
- package/dist/esm/components/Icon/components/TransferCancel.js.map +0 -1
- package/dist/esm/components/Icon/components/TransferLocked.js +0 -18
- package/dist/esm/components/Icon/components/TransferLocked.js.map +0 -1
- package/dist/esm/components/Icon/components/Undock.js +0 -18
- package/dist/esm/components/Icon/components/Undock.js.map +0 -1
- package/dist/esm/components/Icon/components/Unreconciled.js +0 -18
- package/dist/esm/components/Icon/components/Unreconciled.js.map +0 -1
- package/dist/esm/components/Icon/components/Warning.js +0 -17
- package/dist/esm/components/Icon/components/Warning.js.map +0 -1
- package/dist/esm/components/Icon/components/Webshop.js +0 -18
- package/dist/esm/components/Icon/components/Webshop.js.map +0 -1
- package/dist/esm/components/Icon/components/Website.js +0 -18
- package/dist/esm/components/Icon/components/Website.js.map +0 -1
- package/dist/esm/components/Icon/components/Workflow.js +0 -17
- package/dist/esm/components/Icon/components/Workflow.js.map +0 -1
- package/dist/esm/components/Icon/components/Zoom.js +0 -18
- package/dist/esm/components/Icon/components/Zoom.js.map +0 -1
- package/dist/esm/components/Icon/components/index.js +0 -414
- package/dist/esm/components/Icon/components/index.js.map +0 -1
- package/dist/esm/components/IconButton/IconButton.js +0 -35
- package/dist/esm/components/IconButton/IconButton.js.map +0 -1
- package/dist/esm/components/Input/Input.js +0 -85
- package/dist/esm/components/Input/Input.js.map +0 -1
- package/dist/esm/components/Input/util.js +0 -22
- package/dist/esm/components/Input/util.js.map +0 -1
- package/dist/esm/components/Listbox/Listbox.js +0 -58
- package/dist/esm/components/Listbox/Listbox.js.map +0 -1
- package/dist/esm/components/Listbox/ScrollableList.js +0 -193
- package/dist/esm/components/Listbox/ScrollableList.js.map +0 -1
- package/dist/esm/components/Listbox/useListbox.js +0 -154
- package/dist/esm/components/Listbox/useListbox.js.map +0 -1
- package/dist/esm/components/Listbox/useMultiListbox.js +0 -223
- package/dist/esm/components/Listbox/useMultiListbox.js.map +0 -1
- package/dist/esm/components/Listbox/useTypeahead.js +0 -27
- package/dist/esm/components/Listbox/useTypeahead.js.map +0 -1
- package/dist/esm/components/Listbox/util.js +0 -187
- package/dist/esm/components/Listbox/util.js.map +0 -1
- package/dist/esm/components/Menu/Context.js +0 -9
- package/dist/esm/components/Menu/Context.js.map +0 -1
- package/dist/esm/components/Menu/Menu.js +0 -74
- package/dist/esm/components/Menu/Menu.js.map +0 -1
- package/dist/esm/components/Menu/components/Checkbox.js +0 -32
- package/dist/esm/components/Menu/components/Checkbox.js.map +0 -1
- package/dist/esm/components/Menu/components/Content.js +0 -53
- package/dist/esm/components/Menu/components/Content.js.map +0 -1
- package/dist/esm/components/Menu/components/Header.js +0 -38
- package/dist/esm/components/Menu/components/Header.js.map +0 -1
- package/dist/esm/components/Menu/components/Item.js +0 -141
- package/dist/esm/components/Menu/components/Item.js.map +0 -1
- package/dist/esm/components/Menu/components/Link.js +0 -40
- package/dist/esm/components/Menu/components/Link.js.map +0 -1
- package/dist/esm/components/Menu/components/RadioGroup.js +0 -50
- package/dist/esm/components/Menu/components/RadioGroup.js.map +0 -1
- package/dist/esm/components/Menu/components/Separator.js +0 -35
- package/dist/esm/components/Menu/components/Separator.js.map +0 -1
- package/dist/esm/components/Menu/components/Trigger.js +0 -33
- package/dist/esm/components/Menu/components/Trigger.js.map +0 -1
- package/dist/esm/components/Navigation/Navigation.js +0 -134
- package/dist/esm/components/Navigation/Navigation.js.map +0 -1
- package/dist/esm/components/Pagination/PageNumbers.js +0 -55
- package/dist/esm/components/Pagination/PageNumbers.js.map +0 -1
- package/dist/esm/components/Pagination/Pagination.js +0 -120
- package/dist/esm/components/Pagination/Pagination.js.map +0 -1
- package/dist/esm/components/Pagination/usePagination.js +0 -29
- package/dist/esm/components/Pagination/usePagination.js.map +0 -1
- package/dist/esm/components/Pagination/usePaginationShortcuts.js +0 -50
- package/dist/esm/components/Pagination/usePaginationShortcuts.js.map +0 -1
- package/dist/esm/components/Popover/Popover.js +0 -89
- package/dist/esm/components/Popover/Popover.js.map +0 -1
- package/dist/esm/components/Popover/Primitives.js +0 -42
- package/dist/esm/components/Popover/Primitives.js.map +0 -1
- package/dist/esm/components/Progress/Progress.js +0 -36
- package/dist/esm/components/Progress/Progress.js.map +0 -1
- package/dist/esm/components/Provider/Provider.js +0 -110
- package/dist/esm/components/Provider/Provider.js.map +0 -1
- package/dist/esm/components/RadioGroup/RadioGroup.js +0 -118
- package/dist/esm/components/RadioGroup/RadioGroup.js.map +0 -1
- package/dist/esm/components/SearchInput/SearchInput.js +0 -94
- package/dist/esm/components/SearchInput/SearchInput.js.map +0 -1
- package/dist/esm/components/Select/Select.js +0 -101
- package/dist/esm/components/Select/Select.js.map +0 -1
- package/dist/esm/components/Select/useSelect.js +0 -230
- package/dist/esm/components/Select/useSelect.js.map +0 -1
- package/dist/esm/components/Spinner/Spinner.js +0 -55
- package/dist/esm/components/Spinner/Spinner.js.map +0 -1
- package/dist/esm/components/Switch/Switch.js +0 -38
- package/dist/esm/components/Switch/Switch.js.map +0 -1
- package/dist/esm/components/Table/components/BaseTable.js +0 -55
- package/dist/esm/components/Table/components/BaseTable.js.map +0 -1
- package/dist/esm/components/Table/components/PaginatedTable.js +0 -20
- package/dist/esm/components/Table/components/PaginatedTable.js.map +0 -1
- package/dist/esm/components/Table/components/Table.js +0 -63
- package/dist/esm/components/Table/components/Table.js.map +0 -1
- package/dist/esm/components/Table/components/WindowedTable.js +0 -202
- package/dist/esm/components/Table/components/WindowedTable.js.map +0 -1
- package/dist/esm/components/Table/hooks/plugins/useRowActions.js +0 -261
- package/dist/esm/components/Table/hooks/plugins/useRowActions.js.map +0 -1
- package/dist/esm/components/Table/hooks/plugins/useRowDraggable.js +0 -133
- package/dist/esm/components/Table/hooks/plugins/useRowDraggable.js.map +0 -1
- package/dist/esm/components/Table/hooks/plugins/useRowEditing.js +0 -97
- package/dist/esm/components/Table/hooks/plugins/useRowEditing.js.map +0 -1
- package/dist/esm/components/Table/hooks/plugins/useRowSelect.js +0 -118
- package/dist/esm/components/Table/hooks/plugins/useRowSelect.js.map +0 -1
- package/dist/esm/components/Table/hooks/useRowCreation.js +0 -141
- package/dist/esm/components/Table/hooks/useRowCreation.js.map +0 -1
- package/dist/esm/components/Table/hooks/useTable.js +0 -239
- package/dist/esm/components/Table/hooks/useTable.js.map +0 -1
- package/dist/esm/components/Table/hooks/useTableKeyboardNavigation.js +0 -135
- package/dist/esm/components/Table/hooks/useTableKeyboardNavigation.js.map +0 -1
- package/dist/esm/components/Table/util/renderColumn.js +0 -40
- package/dist/esm/components/Table/util/renderColumn.js.map +0 -1
- package/dist/esm/components/Table/util/renderRow.js +0 -110
- package/dist/esm/components/Table/util/renderRow.js.map +0 -1
- package/dist/esm/components/Table/util/rowIndexPath.js +0 -59
- package/dist/esm/components/Table/util/rowIndexPath.js.map +0 -1
- package/dist/esm/components/Table/util/sortTypes.js +0 -90
- package/dist/esm/components/Table/util/sortTypes.js.map +0 -1
- package/dist/esm/components/Table/util.js +0 -111
- package/dist/esm/components/Table/util.js.map +0 -1
- package/dist/esm/components/Tabs/Tabs.js +0 -71
- package/dist/esm/components/Tabs/Tabs.js.map +0 -1
- package/dist/esm/components/Textarea/Textarea.js +0 -37
- package/dist/esm/components/Textarea/Textarea.js.map +0 -1
- package/dist/esm/components/Toast/Toast.js +0 -80
- package/dist/esm/components/Toast/Toast.js.map +0 -1
- package/dist/esm/components/Toast/Toaster.js +0 -193
- package/dist/esm/components/Toast/Toaster.js.map +0 -1
- package/dist/esm/components/Toast/util.js +0 -46
- package/dist/esm/components/Toast/util.js.map +0 -1
- package/dist/esm/components/Tooltip/Tooltip.js +0 -33
- package/dist/esm/components/Tooltip/Tooltip.js.map +0 -1
- package/dist/esm/components/Tour/Tour.js +0 -148
- package/dist/esm/components/Tour/Tour.js.map +0 -1
- package/dist/esm/components/Treeview/Treeview.js +0 -83
- package/dist/esm/components/Treeview/Treeview.js.map +0 -1
- package/dist/esm/components/VisuallyHidden/VisuallyHidden.js +0 -11
- package/dist/esm/components/VisuallyHidden/VisuallyHidden.js.map +0 -1
- package/dist/esm/index.css +0 -661
- package/dist/esm/index.js +0 -49
- package/dist/esm/index.js.map +0 -1
- package/dist/esm/primitives/Button.js +0 -25
- package/dist/esm/primitives/Button.js.map +0 -1
- package/dist/esm/utils/date.js +0 -98
- package/dist/esm/utils/date.js.map +0 -1
- package/dist/esm/utils/hooks/useBoundingClientRectListener.js +0 -50
- package/dist/esm/utils/hooks/useBoundingClientRectListener.js.map +0 -1
- package/dist/esm/utils/hooks/useDraggable.js +0 -44
- package/dist/esm/utils/hooks/useDraggable.js.map +0 -1
- package/dist/esm/utils/hooks/useDropTarget.js +0 -41
- package/dist/esm/utils/hooks/useDropTarget.js.map +0 -1
- package/dist/esm/utils/hooks/useListKeyboardNavigation.js +0 -58
- package/dist/esm/utils/hooks/useListKeyboardNavigation.js.map +0 -1
- package/dist/esm/utils/hooks/useListScrollTo.js +0 -38
- package/dist/esm/utils/hooks/useListScrollTo.js.map +0 -1
- package/dist/esm/utils/hooks/useOnClickOutside.js +0 -27
- package/dist/esm/utils/hooks/useOnClickOutside.js.map +0 -1
- package/dist/esm/utils/hooks/useProxiedRef.js +0 -18
- package/dist/esm/utils/hooks/useProxiedRef.js.map +0 -1
- package/dist/esm/utils/hooks/useTimer.js +0 -58
- package/dist/esm/utils/hooks/useTimer.js.map +0 -1
- package/dist/esm/utils/input.js +0 -53
- package/dist/esm/utils/input.js.map +0 -1
- package/dist/esm/utils/mergeRefs.js +0 -14
- package/dist/esm/utils/mergeRefs.js.map +0 -1
- package/dist/esm/utils/taillwind.js +0 -41
- package/dist/esm/utils/taillwind.js.map +0 -1
- package/dist/taco.cjs.production.min.js +0 -2
- package/dist/taco.cjs.production.min.js.map +0 -1
@@ -1,22 +0,0 @@
|
|
1
|
-
import cn from 'classnames';
|
2
|
-
|
3
|
-
var getInputClasses = function getInputClasses(props) {
|
4
|
-
return cn('peer bg-white text-black text-sm border font-normal not-italic no-underline rounded inline-flex leading-6 px-2 relative w-full text-ellipsis flex items-center', {
|
5
|
-
'cursor-not-allowed text-black bg-grey': props.readOnly,
|
6
|
-
'border-grey text-opacity-25 cursor-not-allowed': props.disabled,
|
7
|
-
'bg-[rgba(255,255,0,0.075)]': props.highlighted && props.disabled,
|
8
|
-
'bg-[rgba(255,255,0,0.2)]': props.highlighted && !props.disabled,
|
9
|
-
'border-grey-dark hover:shadow-[0_0_0.1rem_theme(colors.grey.darker)] focus:border-blue-light focus:yt-focus active:border-blue-dark': !props.invalid,
|
10
|
-
'border-red hover:shadow-[0_0_0.15rem_theme(colors.red.DEFAULT)] focus:border-red-light focus:yt-focus-red active:border-red-dark': props.invalid
|
11
|
-
});
|
12
|
-
};
|
13
|
-
var getButtonStateClasses = function getButtonStateClasses(invalid) {
|
14
|
-
if (invalid) {
|
15
|
-
return '!border-red focus:!border-red-light focus:yt-focus-red peer-focus:!border-red-light peer-focus:peer-active:!border-red-dark';
|
16
|
-
}
|
17
|
-
|
18
|
-
return '!border-grey-dark focus:!border-blue-light peer-focus:!border-blue-light peer-focus:peer-active:!border-blue-dark';
|
19
|
-
};
|
20
|
-
|
21
|
-
export { getButtonStateClasses, getInputClasses };
|
22
|
-
//# sourceMappingURL=util.js.map
|
@@ -1 +0,0 @@
|
|
1
|
-
{"version":3,"file":"util.js","sources":["../../../../src/components/Input/util.ts"],"sourcesContent":["import cn from 'classnames';\n\nexport const getInputClasses = props => {\n return cn(\n 'peer bg-white text-black text-sm border font-normal not-italic no-underline rounded inline-flex leading-6 px-2 relative w-full text-ellipsis flex items-center',\n {\n 'cursor-not-allowed text-black bg-grey': props.readOnly,\n 'border-grey text-opacity-25 cursor-not-allowed': props.disabled,\n 'bg-[rgba(255,255,0,0.075)]': props.highlighted && props.disabled,\n 'bg-[rgba(255,255,0,0.2)]': props.highlighted && !props.disabled,\n 'border-grey-dark hover:shadow-[0_0_0.1rem_theme(colors.grey.darker)] focus:border-blue-light focus:yt-focus active:border-blue-dark':\n !props.invalid,\n 'border-red hover:shadow-[0_0_0.15rem_theme(colors.red.DEFAULT)] focus:border-red-light focus:yt-focus-red active:border-red-dark':\n props.invalid,\n }\n );\n};\n\nexport const getButtonStateClasses = (invalid: boolean | undefined): string => {\n if (invalid) {\n return '!border-red focus:!border-red-light focus:yt-focus-red peer-focus:!border-red-light peer-focus:peer-active:!border-red-dark';\n }\n\n return '!border-grey-dark focus:!border-blue-light peer-focus:!border-blue-light peer-focus:peer-active:!border-blue-dark';\n};\n"],"names":["getInputClasses","props","cn","readOnly","disabled","highlighted","invalid","getButtonStateClasses"],"mappings":";;IAEaA,eAAe,GAAG,SAAlBA,eAAkB,CAAAC,KAAK;AAChC,SAAOC,EAAE,CACL,gKADK,EAEL;AACI,6CAAyCD,KAAK,CAACE,QADnD;AAEI,sDAAkDF,KAAK,CAACG,QAF5D;AAGI,kCAA8BH,KAAK,CAACI,WAAN,IAAqBJ,KAAK,CAACG,QAH7D;AAII,gCAA4BH,KAAK,CAACI,WAAN,IAAqB,CAACJ,KAAK,CAACG,QAJ5D;AAKI,2IACI,CAACH,KAAK,CAACK,OANf;AAOI,wIACIL,KAAK,CAACK;AARd,GAFK,CAAT;AAaH;IAEYC,qBAAqB,GAAG,SAAxBA,qBAAwB,CAACD,OAAD;AACjC,MAAIA,OAAJ,EAAa;AACT,WAAO,6HAAP;AACH;;AAED,SAAO,mHAAP;AACH;;;;"}
|
@@ -1,58 +0,0 @@
|
|
1
|
-
import { objectWithoutPropertiesLoose as _objectWithoutPropertiesLoose, extends as _extends } from '../../_virtual/_rollupPluginBabelHelpers.js';
|
2
|
-
import { forwardRef, createElement } from 'react';
|
3
|
-
import cn from 'classnames';
|
4
|
-
import { ScrollableList } from './ScrollableList.js';
|
5
|
-
import { useListbox } from './useListbox.js';
|
6
|
-
import { useMultiListbox } from './useMultiListbox.js';
|
7
|
-
|
8
|
-
var _excluded = ["className"],
|
9
|
-
_excluded2 = ["className"];
|
10
|
-
var Listbox = /*#__PURE__*/forwardRef(function Listbox(props, ref) {
|
11
|
-
var externalClassName = props.className,
|
12
|
-
otherProps = _objectWithoutPropertiesLoose(props, _excluded);
|
13
|
-
|
14
|
-
var _useListbox = useListbox(otherProps, ref),
|
15
|
-
list = _useListbox.list,
|
16
|
-
input = _useListbox.input;
|
17
|
-
|
18
|
-
var className = cn('bg-white inline-flex relative w-full', externalClassName);
|
19
|
-
return createElement("span", {
|
20
|
-
"data-taco": "listbox",
|
21
|
-
className: className
|
22
|
-
}, createElement(ScrollableList, Object.assign({}, list, {
|
23
|
-
style: _extends({}, list.style, {
|
24
|
-
maxHeight: 'calc(12rem + 2px)'
|
25
|
-
/* (6 * option height) + listbox border */
|
26
|
-
|
27
|
-
})
|
28
|
-
})), createElement("input", Object.assign({}, input, {
|
29
|
-
className: "hidden",
|
30
|
-
type: "text"
|
31
|
-
})));
|
32
|
-
});
|
33
|
-
var MultiListbox = /*#__PURE__*/forwardRef(function Listbox(props, ref) {
|
34
|
-
var externalClassName = props.className,
|
35
|
-
otherProps = _objectWithoutPropertiesLoose(props, _excluded2);
|
36
|
-
|
37
|
-
var _useMultiListbox = useMultiListbox(otherProps, ref),
|
38
|
-
list = _useMultiListbox.list,
|
39
|
-
input = _useMultiListbox.input;
|
40
|
-
|
41
|
-
var className = cn('bg-white inline-flex relative w-full', externalClassName);
|
42
|
-
return createElement("span", {
|
43
|
-
"data-taco": "listbox",
|
44
|
-
className: className
|
45
|
-
}, createElement(ScrollableList, Object.assign({}, list, {
|
46
|
-
style: _extends({}, list.style, {
|
47
|
-
maxHeight: 'calc(12rem + 2px + 2px)'
|
48
|
-
/* (6 * option height) + listbox border + ALL_OPTIONS bottom border */
|
49
|
-
|
50
|
-
})
|
51
|
-
})), createElement("input", Object.assign({}, input, {
|
52
|
-
className: "hidden",
|
53
|
-
type: "text"
|
54
|
-
})));
|
55
|
-
});
|
56
|
-
|
57
|
-
export { Listbox, MultiListbox };
|
58
|
-
//# sourceMappingURL=Listbox.js.map
|
@@ -1 +0,0 @@
|
|
1
|
-
{"version":3,"file":"Listbox.js","sources":["../../../../src/components/Listbox/Listbox.tsx"],"sourcesContent":["import * as React from 'react';\nimport cn from 'classnames';\nimport { useListbox } from './useListbox';\nimport { useMultiListbox } from './useMultiListbox';\nimport { ScrollableList, ScrollableListItemValue, ScrollableListItem } from './ScrollableList';\n\nexport type ListboxItem = ScrollableListItem;\nexport type ListboxValue = ScrollableListItemValue;\n\nexport type ListboxTexts = {\n /**\n * Text displayed in the listbox if no data provided.\n * To read more about how to provide the text, see [Provider](component:provider) component\n */\n empty: string;\n /**\n * Text displayed in the listbox to indicate the data is loading.\n * Read more about how to provide the text in [Provider](component:provider) component\n */\n loading: string;\n /**\n * The first option displayed in a multiselect listbox that selects all available options.\n * Read more about how to provide the text in [Provider](component:provider) component\n */\n allOption: string;\n};\n\nexport type ListboxProps = Pick<React.InputHTMLAttributes<HTMLInputElement>, 'onChange' | 'onFocus'> &\n Omit<React.InputHTMLAttributes<HTMLElement>, 'defaultValue' | 'onChange' | 'value'> & {\n /** Data indicating the options in listbox */\n data?: ListboxItem[];\n /**\n * Initial value of the listbox.\n * This is used when listbox is mounted, if no value is provided.\n * *Note* that listbox is a controlled component, setting this will also trigger the `onChange` event\n */\n defaultValue?: ListboxValue;\n /** Set what value should have an empty option in listbox */\n emptyValue?: ListboxValue;\n /** Draws attention to the listbox by changing its style and making it visually prominent */\n highlighted?: boolean;\n /* Whether the input is in an invalid state */\n invalid?: boolean;\n /**\n * Shows a loading indicator with a text next to it.\n * Read more about how to provide the text in [Provider](component:provider) component\n */\n loading?: boolean;\n /**\n * Value of the listbox representing the selected item.\n * It needs to be an existing value from the provided data\n */\n value?: ListboxValue;\n };\n\nexport const Listbox = React.forwardRef(function Listbox(props: ListboxProps, ref: React.Ref<HTMLInputElement>) {\n const { className: externalClassName, ...otherProps } = props;\n const { list, input } = useListbox(otherProps, ref);\n const className = cn('bg-white inline-flex relative w-full', externalClassName);\n\n return (\n <span data-taco=\"listbox\" className={className}>\n <ScrollableList\n {...list}\n style={{ ...list.style, maxHeight: 'calc(12rem + 2px)' /* (6 * option height) + listbox border */ }}\n />\n <input {...input} className=\"hidden\" type=\"text\" />\n </span>\n );\n});\n\nexport const MultiListbox = React.forwardRef(function Listbox(props: ListboxProps, ref: React.Ref<HTMLInputElement>) {\n const { className: externalClassName, ...otherProps } = props;\n const { list, input } = useMultiListbox(otherProps, ref);\n const className = cn('bg-white inline-flex relative w-full', externalClassName);\n\n return (\n <span data-taco=\"listbox\" className={className}>\n <ScrollableList\n {...list}\n style={{\n ...list.style,\n maxHeight: 'calc(12rem + 2px + 2px)' /* (6 * option height) + listbox border + ALL_OPTIONS bottom border */,\n }}\n />\n <input {...input} className=\"hidden\" type=\"text\" />\n </span>\n );\n});\n"],"names":["Listbox","React","props","ref","externalClassName","className","otherProps","useListbox","list","input","cn","ScrollableList","style","maxHeight","type","MultiListbox","useMultiListbox"],"mappings":";;;;;;;;;IAuDaA,OAAO,gBAAGC,UAAA,CAAiB,SAASD,OAAT,CAAiBE,KAAjB,EAAsCC,GAAtC;AACpC,MAAmBC,iBAAnB,GAAwDF,KAAxD,CAAQG,SAAR;AAAA,MAAyCC,UAAzC,iCAAwDJ,KAAxD;;AACA,oBAAwBK,UAAU,CAACD,UAAD,EAAaH,GAAb,CAAlC;AAAA,MAAQK,IAAR,eAAQA,IAAR;AAAA,MAAcC,KAAd,eAAcA,KAAd;;AACA,MAAMJ,SAAS,GAAGK,EAAE,CAAC,sCAAD,EAAyCN,iBAAzC,CAApB;AAEA,SACIH,aAAA,OAAA;iBAAgB;AAAUI,IAAAA,SAAS,EAAEA;GAArC,EACIJ,aAAA,CAACU,cAAD,oBACQH;AACJI,IAAAA,KAAK,eAAOJ,IAAI,CAACI,KAAZ;AAAmBC,MAAAA,SAAS,EAAE;AAAoB;;AAAlD;IAFT,CADJ,EAKIZ,aAAA,QAAA,oBAAWQ;AAAOJ,IAAAA,SAAS,EAAC;AAASS,IAAAA,IAAI,EAAC;IAA1C,CALJ,CADJ;AASH,CAdsB;IAgBVC,YAAY,gBAAGd,UAAA,CAAiB,SAASD,OAAT,CAAiBE,KAAjB,EAAsCC,GAAtC;AACzC,MAAmBC,iBAAnB,GAAwDF,KAAxD,CAAQG,SAAR;AAAA,MAAyCC,UAAzC,iCAAwDJ,KAAxD;;AACA,yBAAwBc,eAAe,CAACV,UAAD,EAAaH,GAAb,CAAvC;AAAA,MAAQK,IAAR,oBAAQA,IAAR;AAAA,MAAcC,KAAd,oBAAcA,KAAd;;AACA,MAAMJ,SAAS,GAAGK,EAAE,CAAC,sCAAD,EAAyCN,iBAAzC,CAApB;AAEA,SACIH,aAAA,OAAA;iBAAgB;AAAUI,IAAAA,SAAS,EAAEA;GAArC,EACIJ,aAAA,CAACU,cAAD,oBACQH;AACJI,IAAAA,KAAK,eACEJ,IAAI,CAACI,KADP;AAEDC,MAAAA,SAAS,EAAE;AAA0B;;AAFpC;IAFT,CADJ,EAQIZ,aAAA,QAAA,oBAAWQ;AAAOJ,IAAAA,SAAS,EAAC;AAASS,IAAAA,IAAI,EAAC;IAA1C,CARJ,CADJ;AAYH,CAjB2B;;;;"}
|
@@ -1,193 +0,0 @@
|
|
1
|
-
import { objectWithoutPropertiesLoose as _objectWithoutPropertiesLoose, extends as _extends } from '../../_virtual/_rollupPluginBabelHelpers.js';
|
2
|
-
import { forwardRef, useMemo, createRef, useEffect, createElement } from 'react';
|
3
|
-
import cn from 'classnames';
|
4
|
-
import { Spinner } from '../Spinner/Spinner.js';
|
5
|
-
import { useLocalization } from '../Provider/Provider.js';
|
6
|
-
import { Checkbox } from '../Checkbox/Checkbox.js';
|
7
|
-
import { useProxiedRef } from '../../utils/hooks/useProxiedRef.js';
|
8
|
-
import { getInputClasses } from '../Input/util.js';
|
9
|
-
import { getNextIndexFromKeycode } from '../../utils/hooks/useListKeyboardNavigation.js';
|
10
|
-
import { useListScrollTo } from '../../utils/hooks/useListScrollTo.js';
|
11
|
-
|
12
|
-
var _excluded = ["data", "disabled", "highlighted", "id", "invalid", "loading", "onChange", "onClick", "onFocus", "onKeyDown", "readOnly", "scrollOnFocus", "value", "multiselect", "selectedIndexes", "allOptionsSelected"],
|
13
|
-
_excluded2 = ["children", "icon"];
|
14
|
-
var getId = function getId(id, value) {
|
15
|
-
return id + "_" + value;
|
16
|
-
};
|
17
|
-
|
18
|
-
var getNextEnabledItem = function getNextEnabledItem(event, data, index) {
|
19
|
-
var nextIndex = getNextIndexFromKeycode(event.keyCode, data.length, index);
|
20
|
-
|
21
|
-
if (nextIndex) {
|
22
|
-
if (nextIndex === index) {
|
23
|
-
return index;
|
24
|
-
} else if (data[nextIndex] && data[nextIndex].disabled) {
|
25
|
-
return getNextEnabledItem(event, data, nextIndex);
|
26
|
-
}
|
27
|
-
}
|
28
|
-
|
29
|
-
return nextIndex;
|
30
|
-
};
|
31
|
-
|
32
|
-
var ScrollableList = /*#__PURE__*/forwardRef(function ScrollableList(props, ref) {
|
33
|
-
var data = props.data,
|
34
|
-
disabled = props.disabled,
|
35
|
-
id = props.id,
|
36
|
-
loading = props.loading,
|
37
|
-
setCurrentIndex = props.onChange,
|
38
|
-
onClick = props.onClick,
|
39
|
-
onFocus = props.onFocus,
|
40
|
-
onKeyDown = props.onKeyDown,
|
41
|
-
readOnly = props.readOnly,
|
42
|
-
_props$scrollOnFocus = props.scrollOnFocus,
|
43
|
-
scrollOnFocus = _props$scrollOnFocus === void 0 ? false : _props$scrollOnFocus,
|
44
|
-
currentIndex = props.value,
|
45
|
-
multiselect = props.multiselect,
|
46
|
-
_props$selectedIndexe = props.selectedIndexes,
|
47
|
-
selectedIndexes = _props$selectedIndexe === void 0 ? [] : _props$selectedIndexe,
|
48
|
-
_props$allOptionsSele = props.allOptionsSelected,
|
49
|
-
allOptionsSelected = _props$allOptionsSele === void 0 ? false : _props$allOptionsSele,
|
50
|
-
otherProps = _objectWithoutPropertiesLoose(props, _excluded);
|
51
|
-
|
52
|
-
var listRef = useProxiedRef(ref);
|
53
|
-
var itemRefs = useMemo(function () {
|
54
|
-
return data.map(function () {
|
55
|
-
return createRef();
|
56
|
-
});
|
57
|
-
}, [data]);
|
58
|
-
|
59
|
-
var _useLocalization = useLocalization(),
|
60
|
-
texts = _useLocalization.texts;
|
61
|
-
|
62
|
-
var _useListScrollTo = useListScrollTo(listRef, itemRefs),
|
63
|
-
scrollTo = _useListScrollTo.scrollTo;
|
64
|
-
|
65
|
-
useEffect(function () {
|
66
|
-
var _itemRefs$currentInde;
|
67
|
-
|
68
|
-
if (currentIndex && (_itemRefs$currentInde = itemRefs[currentIndex]) !== null && _itemRefs$currentInde !== void 0 && _itemRefs$currentInde.current) {
|
69
|
-
var _itemRefs$currentInde2;
|
70
|
-
|
71
|
-
(_itemRefs$currentInde2 = itemRefs[currentIndex].current) === null || _itemRefs$currentInde2 === void 0 ? void 0 : _itemRefs$currentInde2.scrollIntoView({
|
72
|
-
block: 'center'
|
73
|
-
});
|
74
|
-
}
|
75
|
-
}, []);
|
76
|
-
useEffect(function () {
|
77
|
-
scrollTo(currentIndex);
|
78
|
-
}, [currentIndex]);
|
79
|
-
|
80
|
-
var handleKeyDown = function handleKeyDown(event) {
|
81
|
-
var nextIndex = getNextEnabledItem(event, data, currentIndex);
|
82
|
-
|
83
|
-
if (nextIndex !== undefined && nextIndex !== currentIndex) {
|
84
|
-
event.preventDefault();
|
85
|
-
scrollTo(nextIndex);
|
86
|
-
setCurrentIndex(nextIndex);
|
87
|
-
}
|
88
|
-
|
89
|
-
if (onKeyDown) {
|
90
|
-
event.persist();
|
91
|
-
var index = nextIndex !== undefined ? nextIndex : currentIndex;
|
92
|
-
onKeyDown(event, index);
|
93
|
-
}
|
94
|
-
};
|
95
|
-
|
96
|
-
var handleClick = function handleClick(index) {
|
97
|
-
return function (event) {
|
98
|
-
setCurrentIndex(index);
|
99
|
-
|
100
|
-
if (onClick) {
|
101
|
-
event.persist();
|
102
|
-
onClick(event, index);
|
103
|
-
}
|
104
|
-
};
|
105
|
-
};
|
106
|
-
|
107
|
-
var handleFocus = function handleFocus(event) {
|
108
|
-
if (scrollOnFocus) {
|
109
|
-
scrollTo(currentIndex);
|
110
|
-
}
|
111
|
-
|
112
|
-
if (onFocus) {
|
113
|
-
event.persist();
|
114
|
-
onFocus(event);
|
115
|
-
}
|
116
|
-
};
|
117
|
-
|
118
|
-
var getOptionCheckedState = function getOptionCheckedState(optionValue, index) {
|
119
|
-
if (optionValue === '#ALL-OPTIONS#') {
|
120
|
-
return allOptionsSelected;
|
121
|
-
} else if (!optionValue || !selectedIndexes) {
|
122
|
-
return false;
|
123
|
-
} else {
|
124
|
-
return selectedIndexes.findIndex(function (i) {
|
125
|
-
return i === index;
|
126
|
-
}) !== -1;
|
127
|
-
}
|
128
|
-
};
|
129
|
-
|
130
|
-
var list = _extends({}, otherProps, {
|
131
|
-
className: cn('inline-flex flex-col list-none !p-0 m-0 overflow-y-auto h-auto', getInputClasses(props), {
|
132
|
-
'yt-list--multiselect': multiselect,
|
133
|
-
'pointer-events-none': disabled,
|
134
|
-
'cursor-not-allowed': disabled || readOnly
|
135
|
-
}, otherProps.className),
|
136
|
-
disabled: disabled,
|
137
|
-
id: id,
|
138
|
-
onFocus: !disabled && !readOnly ? handleFocus : undefined,
|
139
|
-
onKeyDown: !disabled && !readOnly ? handleKeyDown : undefined,
|
140
|
-
readOnly: readOnly,
|
141
|
-
ref: listRef,
|
142
|
-
role: 'listbox',
|
143
|
-
tabIndex: otherProps.tabIndex || 0
|
144
|
-
});
|
145
|
-
|
146
|
-
var options = data.map(function (option, index) {
|
147
|
-
var depth = option.path ? option.path.split('.').length - 1 : 0;
|
148
|
-
return {
|
149
|
-
'aria-selected': multiselect ? getOptionCheckedState(String(option.value), index) : currentIndex === index,
|
150
|
-
'data-focused': currentIndex === index,
|
151
|
-
children: option.text,
|
152
|
-
className: cn('flex items-center px-3 w-full cursor-pointer bg-white flex-[0_0_2rem] focus:wcag-blue focus:border-blue', {
|
153
|
-
'sticky top-0 font-bold': depth === 0 && !!option.hasChildren
|
154
|
-
}),
|
155
|
-
disabled: option.disabled,
|
156
|
-
icon: option.icon,
|
157
|
-
id: getId(id, option.value),
|
158
|
-
key: getId(id, option.value),
|
159
|
-
onClick: !disabled && !readOnly ? handleClick(index) : undefined,
|
160
|
-
ref: itemRefs[index],
|
161
|
-
role: 'option',
|
162
|
-
style: depth > 0 ? {
|
163
|
-
paddingLeft: depth + 1 + "rem"
|
164
|
-
} : undefined
|
165
|
-
};
|
166
|
-
});
|
167
|
-
return createElement("ul", Object.assign({}, list, {
|
168
|
-
"data-taco": "scrollable-list"
|
169
|
-
}), loading ? createElement("li", {
|
170
|
-
className: "yt-list__empty"
|
171
|
-
}, createElement("span", null, createElement(Spinner, {
|
172
|
-
delay: 0
|
173
|
-
})), createElement("span", null, texts.listbox.loading)) : options.length ? options.map(function (_ref) {
|
174
|
-
var children = _ref.children,
|
175
|
-
icon = _ref.icon,
|
176
|
-
optionProps = _objectWithoutPropertiesLoose(_ref, _excluded2);
|
177
|
-
|
178
|
-
return createElement("li", Object.assign({}, optionProps), icon, createElement("span", {
|
179
|
-
className: "flex-grow truncate text-left"
|
180
|
-
}, children), multiselect && createElement(Checkbox, {
|
181
|
-
checked: optionProps['aria-selected'],
|
182
|
-
onChange: function onChange() {
|
183
|
-
return null;
|
184
|
-
},
|
185
|
-
className: "pointer-events-none ml-2 self-center p-px"
|
186
|
-
}));
|
187
|
-
}) : createElement("li", {
|
188
|
-
className: "yt-list__empty"
|
189
|
-
}, createElement("span", null, texts.listbox.empty)));
|
190
|
-
});
|
191
|
-
|
192
|
-
export { ScrollableList, getId };
|
193
|
-
//# sourceMappingURL=ScrollableList.js.map
|
@@ -1 +0,0 @@
|
|
1
|
-
{"version":3,"file":"ScrollableList.js","sources":["../../../../src/components/Listbox/ScrollableList.tsx"],"sourcesContent":["import * as React from 'react';\nimport cn from 'classnames';\nimport { useProxiedRef } from '../../utils/hooks/useProxiedRef';\nimport { getNextIndexFromKeycode } from '../../utils/hooks/useListKeyboardNavigation';\nimport { useListScrollTo } from '../../utils/hooks/useListScrollTo';\nimport './ScrollableList.css';\nimport { Spinner } from '../Spinner/Spinner';\nimport { useLocalization } from '../Provider/Provider';\nimport { Checkbox } from '../Checkbox/Checkbox';\nimport { getInputClasses } from '../Input/util';\n\nexport type ScrollableListItemValue = string | number | boolean | null;\n\nexport type ScrollableListItem = {\n /**\n * Set whether the item is disabled.\n * This will both change the style and make the item unselectable\n */\n disabled?: boolean;\n /* Specifies whether the item has child items -- intended for internal use only */\n hasChildren?: boolean;\n /** Place an icon before the item's text */\n icon?: React.ReactElement;\n /* The index path to the item -- intended for internal use only */\n path?: string;\n /** Text describing the item */\n text: string | JSX.Element;\n /** Value of the item */\n value: ScrollableListItemValue;\n /** Child items to show hierarchical data */\n children?: ScrollableListItem[];\n};\n\n/** @internal */\nexport type ScrollableListProps = Omit<\n React.HTMLAttributes<HTMLUListElement>,\n 'defaultValue' | 'id' | 'onChange' | 'onClick' | 'onKeyDown'\n> & {\n /** Data indicating the options in scrollable list */\n data: ScrollableListItem[];\n /** Sets the list to be disabled */\n disabled?: boolean;\n /** Draws attention to the scrollable list by changing its style and making it visually prominent */\n highlighted?: boolean;\n /** Set an id for the scrollable list */\n id: string;\n /* Whether the input is in an invalid state */\n invalid?: boolean;\n /**\n * Shows a loading indicator with a text next to it.\n * Read more about how to provide the text in `Provider` component.\n */\n loading?: boolean;\n /**\n * Handler called when current active/selected option changes in a scrollable list.\n * @param index indicates the index of the current active option\n */\n onChange: (index: number) => void;\n /** Handler called when option is clicked */\n onClick?: (event: React.MouseEvent<HTMLLIElement>, index: number) => void;\n /**\n * Set whether the selected item should be scrolled into view when listbox is focused.\n * Default value is `false`\n */\n scrollOnFocus?: boolean;\n /** Handler called when a key is pressed */\n onKeyDown?: (event: React.KeyboardEvent<HTMLUListElement>, index: number | undefined) => void;\n /* Sets the list to read only mode */\n readOnly?: boolean;\n /**\n * Value of the scrollable list representing the selected item.\n * It needs to be an existing value from the provided data.\n */\n value: number | undefined;\n /**\n * Allows to select multiple items from the list\n */\n multiselect?: boolean;\n /**\n * Contains the currently selected values when multiselect mode is ON.\n */\n selectedIndexes?: number[];\n /**\n * True when all available (not disabled) options are selected\n */\n allOptionsSelected?: boolean;\n};\n\n/** @internal */\nexport type ScrollableListPropsWithRef = ScrollableListProps & React.RefAttributes<HTMLUListElement>;\n\nexport const getId = (id: string, value: ScrollableListItemValue): string => `${id}_${value}`;\n\nconst getNextEnabledItem = (\n event: React.KeyboardEvent<HTMLElement>,\n data: ScrollableListItem[],\n index: number | undefined\n): number | undefined => {\n const nextIndex = getNextIndexFromKeycode(event.keyCode, data.length, index);\n\n if (nextIndex) {\n if (nextIndex === index) {\n return index;\n } else if (data[nextIndex] && data[nextIndex].disabled) {\n return getNextEnabledItem(event, data, nextIndex);\n }\n }\n\n return nextIndex;\n};\n\nexport const ScrollableList = React.forwardRef(function ScrollableList(\n props: ScrollableListProps,\n ref: React.Ref<HTMLUListElement>\n) {\n const {\n data,\n disabled,\n highlighted,\n id,\n invalid: _,\n loading,\n onChange: setCurrentIndex,\n onClick,\n onFocus,\n onKeyDown,\n readOnly,\n scrollOnFocus = false,\n value: currentIndex,\n multiselect,\n selectedIndexes = [],\n allOptionsSelected = false,\n ...otherProps\n } = props;\n const listRef = useProxiedRef<HTMLUListElement>(ref);\n const itemRefs = React.useMemo(() => data.map(() => React.createRef<HTMLLIElement>()), [data]);\n const { texts } = useLocalization();\n const { scrollTo } = useListScrollTo(listRef, itemRefs);\n\n React.useEffect(() => {\n if (currentIndex && itemRefs[currentIndex]?.current) {\n itemRefs[currentIndex].current?.scrollIntoView({\n block: 'center',\n });\n }\n }, []);\n\n React.useEffect(() => {\n scrollTo(currentIndex);\n }, [currentIndex]);\n\n const handleKeyDown = (event: React.KeyboardEvent<HTMLUListElement>): void => {\n const nextIndex = getNextEnabledItem(event, data, currentIndex);\n\n if (nextIndex !== undefined && nextIndex !== currentIndex) {\n event.preventDefault();\n scrollTo(nextIndex);\n setCurrentIndex(nextIndex);\n }\n\n if (onKeyDown) {\n event.persist();\n const index = nextIndex !== undefined ? nextIndex : currentIndex;\n onKeyDown(event, index);\n }\n };\n\n const handleClick = (index: number) => (event: React.MouseEvent<HTMLLIElement>) => {\n setCurrentIndex(index);\n\n if (onClick) {\n event.persist();\n onClick(event, index);\n }\n };\n\n const handleFocus = (event: React.FocusEvent<HTMLUListElement>): void => {\n if (scrollOnFocus) {\n scrollTo(currentIndex);\n }\n\n if (onFocus) {\n event.persist();\n onFocus(event);\n }\n };\n\n const getOptionCheckedState = (optionValue: string, index: number): boolean => {\n if (optionValue === '#ALL-OPTIONS#') {\n return allOptionsSelected;\n } else if (!optionValue || !selectedIndexes) {\n return false;\n } else {\n return selectedIndexes.findIndex(i => i === index) !== -1;\n }\n };\n\n const list: React.HTMLAttributes<HTMLUListElement> &\n React.RefAttributes<HTMLUListElement> & { disabled?: boolean; readOnly?: boolean } = {\n ...otherProps,\n className: cn(\n 'inline-flex flex-col list-none !p-0 m-0 overflow-y-auto h-auto',\n getInputClasses(props),\n {\n 'yt-list--multiselect': multiselect,\n 'pointer-events-none': disabled,\n 'cursor-not-allowed': disabled || readOnly,\n },\n otherProps.className\n ),\n disabled,\n id,\n onFocus: !disabled && !readOnly ? handleFocus : undefined,\n onKeyDown: !disabled && !readOnly ? handleKeyDown : undefined,\n readOnly,\n ref: listRef,\n role: 'listbox',\n tabIndex: otherProps.tabIndex || 0,\n };\n\n const options = data.map((option, index) => {\n const depth = option.path ? option.path.split('.').length - 1 : 0;\n\n return {\n 'aria-selected': multiselect ? getOptionCheckedState(String(option.value), index) : currentIndex === index,\n 'data-focused': currentIndex === index,\n children: option.text,\n className: cn(\n 'flex items-center px-3 w-full cursor-pointer bg-white flex-[0_0_2rem] focus:wcag-blue focus:border-blue',\n {\n 'sticky top-0 font-bold': depth === 0 && !!option.hasChildren,\n }\n ),\n disabled: option.disabled,\n icon: option.icon,\n id: getId(id, option.value),\n key: getId(id, option.value),\n onClick: !disabled && !readOnly ? handleClick(index) : undefined,\n ref: itemRefs[index],\n role: 'option',\n style:\n depth > 0\n ? {\n paddingLeft: `${depth + 1}rem`,\n }\n : undefined,\n };\n });\n\n return (\n <ul {...list} data-taco=\"scrollable-list\">\n {loading ? (\n <li className=\"yt-list__empty\">\n <span>\n <Spinner delay={0} />\n </span>\n <span>{texts.listbox.loading}</span>\n </li>\n ) : options.length ? (\n options.map(({ children, icon, ...optionProps }) => (\n <li {...optionProps}>\n {icon}\n <span className=\"flex-grow truncate text-left\">{children}</span>\n {multiselect && (\n <Checkbox\n checked={optionProps['aria-selected']}\n onChange={() => null}\n className=\"pointer-events-none ml-2 self-center p-px\"\n />\n )}\n </li>\n ))\n ) : (\n <li className=\"yt-list__empty\">\n <span>{texts.listbox.empty}</span>\n </li>\n )}\n </ul>\n );\n});\n"],"names":["getId","id","value","getNextEnabledItem","event","data","index","nextIndex","getNextIndexFromKeycode","keyCode","length","disabled","ScrollableList","React","props","ref","loading","setCurrentIndex","onChange","onClick","onFocus","onKeyDown","readOnly","scrollOnFocus","currentIndex","multiselect","selectedIndexes","allOptionsSelected","otherProps","listRef","useProxiedRef","itemRefs","map","useLocalization","texts","useListScrollTo","scrollTo","current","scrollIntoView","block","handleKeyDown","undefined","preventDefault","persist","handleClick","handleFocus","getOptionCheckedState","optionValue","findIndex","i","list","className","cn","getInputClasses","role","tabIndex","options","option","depth","path","split","String","children","text","hasChildren","icon","key","style","paddingLeft","Spinner","delay","listbox","optionProps","Checkbox","checked","empty"],"mappings":"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"}
|
@@ -1,154 +0,0 @@
|
|
1
|
-
import { objectWithoutPropertiesLoose as _objectWithoutPropertiesLoose, extends as _extends } from '../../_virtual/_rollupPluginBabelHelpers.js';
|
2
|
-
import { useMemo, useEffect } from 'react';
|
3
|
-
import { v4 } from 'uuid';
|
4
|
-
import { useProxiedRef } from '../../utils/hooks/useProxiedRef.js';
|
5
|
-
import { useFlattenedData, getIndexFromValue, getActiveDescendant, setInputValueByRef, findByValue, sanitizeItem } from './util.js';
|
6
|
-
import { useTypeahead } from './useTypeahead.js';
|
7
|
-
|
8
|
-
var _excluded = ["data", "defaultValue", "disabled", "emptyValue", "id", "invalid", "name", "onChange", "onFocus", "onKeyDown", "value"];
|
9
|
-
var useListbox = function useListbox(_ref, ref) {
|
10
|
-
var _ref$data = _ref.data,
|
11
|
-
externalData = _ref$data === void 0 ? [] : _ref$data,
|
12
|
-
defaultValue = _ref.defaultValue,
|
13
|
-
disabled = _ref.disabled,
|
14
|
-
emptyValue = _ref.emptyValue,
|
15
|
-
nativeId = _ref.id,
|
16
|
-
invalid = _ref.invalid,
|
17
|
-
name = _ref.name,
|
18
|
-
onChange = _ref.onChange,
|
19
|
-
onFocus = _ref.onFocus,
|
20
|
-
onKeyDown = _ref.onKeyDown,
|
21
|
-
_ref$value = _ref.value,
|
22
|
-
value = _ref$value === void 0 ? emptyValue : _ref$value,
|
23
|
-
otherProps = _objectWithoutPropertiesLoose(_ref, _excluded);
|
24
|
-
|
25
|
-
var data = useFlattenedData(emptyValue !== undefined ? [{
|
26
|
-
text: '',
|
27
|
-
value: emptyValue
|
28
|
-
}].concat(externalData) : externalData);
|
29
|
-
var id = useMemo(function () {
|
30
|
-
return nativeId || v4();
|
31
|
-
}, [nativeId]);
|
32
|
-
var inputRef = useProxiedRef(ref);
|
33
|
-
var currentIndex = value !== undefined ? getIndexFromValue(data, value) : undefined;
|
34
|
-
|
35
|
-
var _useTypeahead = useTypeahead({
|
36
|
-
data: data,
|
37
|
-
currentIndex: currentIndex
|
38
|
-
}),
|
39
|
-
getNextIndex = _useTypeahead.getNextIndex;
|
40
|
-
|
41
|
-
var setInputValueByIndex = function setInputValueByIndex(index) {
|
42
|
-
if (index !== undefined) {
|
43
|
-
var option = data[index];
|
44
|
-
|
45
|
-
if (option && !option.disabled) {
|
46
|
-
setInputValueByRef(inputRef.current, option.value);
|
47
|
-
}
|
48
|
-
}
|
49
|
-
};
|
50
|
-
|
51
|
-
var handleListboxChange = function handleListboxChange(index) {
|
52
|
-
setInputValueByIndex(index);
|
53
|
-
};
|
54
|
-
|
55
|
-
useEffect(function () {
|
56
|
-
if (data.length && currentIndex === undefined) {
|
57
|
-
if (defaultValue !== undefined) {
|
58
|
-
var defaultValueIndex = getIndexFromValue(data, defaultValue);
|
59
|
-
|
60
|
-
if (defaultValueIndex !== undefined) {
|
61
|
-
setInputValueByIndex(defaultValueIndex);
|
62
|
-
}
|
63
|
-
} else {
|
64
|
-
setInputValueByIndex(0);
|
65
|
-
}
|
66
|
-
}
|
67
|
-
}, [data]);
|
68
|
-
|
69
|
-
var handleListboxKeyDown = function handleListboxKeyDown(event) {
|
70
|
-
var charKey = String.fromCharCode(event.keyCode);
|
71
|
-
|
72
|
-
if (charKey.match(/(\w)/g)) {
|
73
|
-
var nextIndex = getNextIndex(charKey);
|
74
|
-
|
75
|
-
if (nextIndex > -1 && nextIndex !== currentIndex) {
|
76
|
-
setInputValueByIndex(nextIndex);
|
77
|
-
}
|
78
|
-
|
79
|
-
return;
|
80
|
-
}
|
81
|
-
|
82
|
-
if (onKeyDown) {
|
83
|
-
event.persist();
|
84
|
-
onKeyDown(event);
|
85
|
-
}
|
86
|
-
};
|
87
|
-
|
88
|
-
var handleListboxFocus = function handleListboxFocus(event) {
|
89
|
-
if (currentIndex === undefined && data.length) {
|
90
|
-
setInputValueByIndex(0);
|
91
|
-
}
|
92
|
-
|
93
|
-
if (onFocus) {
|
94
|
-
event.persist();
|
95
|
-
onFocus(event);
|
96
|
-
}
|
97
|
-
};
|
98
|
-
|
99
|
-
var handleInputChange = function handleInputChange(event) {
|
100
|
-
event.persist();
|
101
|
-
|
102
|
-
if (onChange) {
|
103
|
-
var _item$path$split, _item$path;
|
104
|
-
|
105
|
-
var item = findByValue(data, event.target.value);
|
106
|
-
event.detail = sanitizeItem(item);
|
107
|
-
var indexes = (_item$path$split = item === null || item === void 0 ? void 0 : (_item$path = item.path) === null || _item$path === void 0 ? void 0 : _item$path.split('.')) !== null && _item$path$split !== void 0 ? _item$path$split : [];
|
108
|
-
|
109
|
-
if (indexes.length > 1) {
|
110
|
-
// we don't want to map the current item
|
111
|
-
indexes.pop(); // we need to rebuild the path as we map
|
112
|
-
|
113
|
-
var lastPath;
|
114
|
-
event.detail.parents = indexes.map(function (i) {
|
115
|
-
lastPath = lastPath ? [lastPath, i].join('.') : i;
|
116
|
-
return sanitizeItem(data.find(function (i) {
|
117
|
-
return i.path === lastPath;
|
118
|
-
}));
|
119
|
-
});
|
120
|
-
}
|
121
|
-
|
122
|
-
onChange(event);
|
123
|
-
}
|
124
|
-
};
|
125
|
-
|
126
|
-
var list = _extends({}, otherProps, {
|
127
|
-
'aria-activedescendant': getActiveDescendant(data, currentIndex, id),
|
128
|
-
data: data,
|
129
|
-
disabled: disabled,
|
130
|
-
id: id,
|
131
|
-
invalid: invalid,
|
132
|
-
onChange: handleListboxChange,
|
133
|
-
onFocus: handleListboxFocus,
|
134
|
-
onKeyDown: handleListboxKeyDown,
|
135
|
-
scrollOnFocus: true,
|
136
|
-
tabIndex: disabled ? -1 : otherProps.tabIndex ? otherProps.tabIndex : 0,
|
137
|
-
value: currentIndex
|
138
|
-
});
|
139
|
-
|
140
|
-
var input = {
|
141
|
-
name: name,
|
142
|
-
onChange: handleInputChange,
|
143
|
-
ref: inputRef,
|
144
|
-
tabIndex: -1,
|
145
|
-
value: value !== null && value !== void 0 ? value : ''
|
146
|
-
};
|
147
|
-
return {
|
148
|
-
list: list,
|
149
|
-
input: input
|
150
|
-
};
|
151
|
-
};
|
152
|
-
|
153
|
-
export { useListbox };
|
154
|
-
//# sourceMappingURL=useListbox.js.map
|
@@ -1 +0,0 @@
|
|
1
|
-
{"version":3,"file":"useListbox.js","sources":["../../../../src/components/Listbox/useListbox.tsx"],"sourcesContent":["import * as React from 'react';\nimport { v4 as uuid } from 'uuid';\nimport { ListboxProps } from './Listbox';\nimport { useProxiedRef } from '../../utils/hooks/useProxiedRef';\nimport { setInputValueByRef, getIndexFromValue, findByValue, getActiveDescendant, useFlattenedData, sanitizeItem } from './util';\nimport { ScrollableListProps } from './ScrollableList';\nimport { useTypeahead } from './useTypeahead';\n\ntype useListbox = {\n list: ScrollableListProps;\n input: Omit<React.HTMLAttributes<HTMLInputElement>, 'defaultValue'>;\n};\n\nexport const useListbox = (\n {\n data: externalData = [],\n defaultValue,\n disabled,\n emptyValue,\n id: nativeId,\n invalid,\n name,\n onChange,\n onFocus,\n onKeyDown,\n value = emptyValue,\n ...otherProps\n }: ListboxProps,\n ref: React.Ref<HTMLInputElement>\n): useListbox => {\n const data = useFlattenedData(emptyValue !== undefined ? [{ text: '', value: emptyValue }, ...externalData] : externalData);\n const id = React.useMemo(() => nativeId || uuid(), [nativeId]);\n const inputRef = useProxiedRef<HTMLInputElement>(ref);\n const currentIndex = value !== undefined ? getIndexFromValue(data, value) : undefined;\n const { getNextIndex } = useTypeahead({ data, currentIndex });\n\n const setInputValueByIndex = (index: number | undefined): void => {\n if (index !== undefined) {\n const option = data[index];\n\n if (option && !option.disabled) {\n setInputValueByRef(inputRef.current, option.value);\n }\n }\n };\n\n const handleListboxChange = (index: number): void => {\n setInputValueByIndex(index);\n };\n\n React.useEffect(() => {\n if (data.length && currentIndex === undefined) {\n if (defaultValue !== undefined) {\n const defaultValueIndex = getIndexFromValue(data, defaultValue);\n\n if (defaultValueIndex !== undefined) {\n setInputValueByIndex(defaultValueIndex);\n }\n } else {\n setInputValueByIndex(0);\n }\n }\n }, [data]);\n\n const handleListboxKeyDown = (event: React.KeyboardEvent<HTMLElement>): void => {\n const charKey = String.fromCharCode(event.keyCode);\n\n if (charKey.match(/(\\w)/g)) {\n const nextIndex = getNextIndex(charKey);\n\n if (nextIndex > -1 && nextIndex !== currentIndex) {\n setInputValueByIndex(nextIndex);\n }\n return;\n }\n\n if (onKeyDown) {\n event.persist();\n onKeyDown(event);\n }\n };\n\n const handleListboxFocus = (event: React.FocusEvent<HTMLElement>): void => {\n if (currentIndex === undefined && data.length) {\n setInputValueByIndex(0);\n }\n\n if (onFocus) {\n event.persist();\n onFocus(event);\n }\n };\n\n const handleInputChange = (event: React.ChangeEvent<HTMLInputElement>): void => {\n event.persist();\n\n if (onChange) {\n const item = findByValue(data, event.target.value);\n (event as any).detail = sanitizeItem(item);\n\n const indexes = item?.path?.split('.') ?? [];\n\n if (indexes.length > 1) {\n // we don't want to map the current item\n indexes.pop();\n // we need to rebuild the path as we map\n let lastPath: string;\n\n (event as any).detail.parents = indexes.map(i => {\n lastPath = lastPath ? [lastPath, i].join('.') : i;\n return sanitizeItem(data.find(i => i.path === lastPath));\n });\n }\n\n onChange(event);\n }\n };\n\n const list: ScrollableListProps = {\n ...otherProps,\n 'aria-activedescendant': getActiveDescendant(data, currentIndex, id),\n data,\n disabled,\n id,\n invalid,\n onChange: handleListboxChange,\n onFocus: handleListboxFocus,\n onKeyDown: handleListboxKeyDown,\n scrollOnFocus: true,\n tabIndex: disabled ? -1 : otherProps.tabIndex ? otherProps.tabIndex : 0,\n value: currentIndex,\n };\n\n const input = {\n name,\n onChange: handleInputChange,\n ref: inputRef,\n tabIndex: -1,\n value: value ?? '',\n };\n\n return { list, input };\n};\n"],"names":["useListbox","ref","data","externalData","defaultValue","disabled","emptyValue","nativeId","id","invalid","name","onChange","onFocus","onKeyDown","value","otherProps","useFlattenedData","undefined","text","React","uuid","inputRef","useProxiedRef","currentIndex","getIndexFromValue","useTypeahead","getNextIndex","setInputValueByIndex","index","option","setInputValueByRef","current","handleListboxChange","length","defaultValueIndex","handleListboxKeyDown","event","charKey","String","fromCharCode","keyCode","match","nextIndex","persist","handleListboxFocus","handleInputChange","item","findByValue","target","detail","sanitizeItem","indexes","path","split","pop","lastPath","parents","map","i","join","find","list","getActiveDescendant","scrollOnFocus","tabIndex","input"],"mappings":"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"}
|