@fremtind/jokul 0.12.1 → 0.13.0
This diff represents the content of publicly available package versions that have been released to one of the supported registries. The information contained in this diff is provided for informational purposes only and reflects changes between package versions as they appear in their respective public registries.
- package/build/ExpandableTableRow-BJSqC_Jo.js +2 -0
- package/build/ExpandableTableRow-BJSqC_Jo.js.map +1 -0
- package/build/ExpandableTableRow-BQjBxKCX.cjs +2 -0
- package/build/ExpandableTableRow-BQjBxKCX.cjs.map +1 -0
- package/build/build-stats.html +1 -1
- package/build/cjs/components/description-list/DescriptionList.js +2 -0
- package/build/cjs/components/description-list/DescriptionList.js.map +1 -0
- package/build/cjs/components/description-list/index.js +2 -0
- package/build/cjs/components/description-list/index.js.map +1 -0
- package/build/cjs/components/expander/ExpandSection.js +2 -0
- package/build/cjs/components/expander/ExpandSection.js.map +1 -0
- package/build/cjs/components/expander/Expander.js +2 -0
- package/build/cjs/components/expander/Expander.js.map +1 -0
- package/build/cjs/components/expander/index.js +2 -0
- package/build/cjs/components/expander/index.js.map +1 -0
- package/build/cjs/components/feedback/followup/Followup.js +1 -1
- package/build/cjs/components/feedback/followup/Followup.js.map +1 -1
- package/build/cjs/components/index.js +1 -1
- package/build/cjs/components/logo/Logo.js +2 -0
- package/build/cjs/components/logo/Logo.js.map +1 -0
- package/build/cjs/components/logo/LogoStamp.js +2 -0
- package/build/cjs/components/logo/LogoStamp.js.map +1 -0
- package/build/cjs/components/logo/index.js +2 -0
- package/build/cjs/components/logo/index.js.map +1 -0
- package/build/cjs/components/logo/text-paths/ForsikringLevertAvFremtind.js +2 -0
- package/build/cjs/components/logo/text-paths/ForsikringLevertAvFremtind.js.map +1 -0
- package/build/cjs/components/logo/text-paths/FraSB1ogDNB.js +2 -0
- package/build/cjs/components/logo/text-paths/FraSB1ogDNB.js.map +1 -0
- package/build/cjs/components/logo/text-paths/InnovasjonFraFremtind.js +2 -0
- package/build/cjs/components/logo/text-paths/InnovasjonFraFremtind.js.map +1 -0
- package/build/cjs/components/logo/text-paths/TeknologiFraFremtind.js +2 -0
- package/build/cjs/components/logo/text-paths/TeknologiFraFremtind.js.map +1 -0
- package/build/cjs/components/logo/text-paths/VartEgetForsikringsselskap.js +2 -0
- package/build/cjs/components/logo/text-paths/VartEgetForsikringsselskap.js.map +1 -0
- package/build/cjs/components/logo/text-paths/VartForsikringsselskap.js +2 -0
- package/build/cjs/components/logo/text-paths/VartForsikringsselskap.js.map +1 -0
- package/build/cjs/components/logo/text-paths/index.js +2 -0
- package/build/cjs/components/logo/text-paths/index.js.map +1 -0
- package/build/cjs/components/logo/useTextSpinner.js +2 -0
- package/build/cjs/components/logo/useTextSpinner.js.map +1 -0
- package/build/cjs/components/progress-bar/Countdown.js +2 -0
- package/build/cjs/components/progress-bar/Countdown.js.map +1 -0
- package/build/cjs/components/progress-bar/ProgressBar.js +2 -0
- package/build/cjs/components/progress-bar/ProgressBar.js.map +1 -0
- package/build/cjs/components/progress-bar/index.js +2 -0
- package/build/cjs/components/progress-bar/index.js.map +1 -0
- package/build/cjs/components/select/NativeSelect.js +1 -1
- package/build/cjs/components/select/Select.js +1 -1
- package/build/cjs/components/select/index.js +1 -1
- package/build/cjs/components/summary-table/SummaryTable.js +2 -0
- package/build/cjs/components/summary-table/SummaryTable.js.map +1 -0
- package/build/cjs/components/summary-table/SummaryTableRow.js +2 -0
- package/build/cjs/components/summary-table/SummaryTableRow.js.map +1 -0
- package/build/cjs/components/summary-table/index.js +2 -0
- package/build/cjs/components/summary-table/index.js.map +1 -0
- package/build/cjs/components/summary-table/mocks/index.js +2 -0
- package/build/cjs/components/summary-table/mocks/index.js.map +1 -0
- package/build/cjs/components/system-message/SystemMessage.js +2 -0
- package/build/cjs/components/system-message/SystemMessage.js.map +1 -0
- package/build/cjs/components/system-message/common/DismissButton.js +2 -0
- package/build/cjs/components/system-message/common/DismissButton.js.map +1 -0
- package/build/cjs/components/system-message/common/MessageIcon.js +2 -0
- package/build/cjs/components/system-message/common/MessageIcon.js.map +1 -0
- package/build/cjs/components/system-message/index.js +2 -0
- package/build/cjs/components/system-message/index.js.map +1 -0
- package/build/cjs/components/table/DataTable.js +2 -0
- package/build/cjs/components/table/DataTable.js.map +1 -0
- package/build/cjs/components/table/ExpandableTableRow.js +2 -0
- package/build/cjs/components/table/ExpandableTableRow.js.map +1 -0
- package/build/cjs/components/table/ExpandableTableRowController.js +2 -0
- package/build/cjs/components/table/ExpandableTableRowController.js.map +1 -0
- package/build/cjs/components/table/Table.js +2 -0
- package/build/cjs/components/table/Table.js.map +1 -0
- package/build/cjs/components/table/TableBody.js +2 -0
- package/build/cjs/components/table/TableBody.js.map +1 -0
- package/build/cjs/components/table/TableCaption.js +2 -0
- package/build/cjs/components/table/TableCaption.js.map +1 -0
- package/build/cjs/components/table/TableCell.js +2 -0
- package/build/cjs/components/table/TableCell.js.map +1 -0
- package/build/cjs/components/table/TableColumn.js +2 -0
- package/build/cjs/components/table/TableColumn.js.map +1 -0
- package/build/cjs/components/table/TableColumnGroup.js +2 -0
- package/build/cjs/components/table/TableColumnGroup.js.map +1 -0
- package/build/cjs/components/table/TableFooter.js +2 -0
- package/build/cjs/components/table/TableFooter.js.map +1 -0
- package/build/cjs/components/table/TableHead.js +2 -0
- package/build/cjs/components/table/TableHead.js.map +1 -0
- package/build/cjs/components/table/TableHeader.js +2 -0
- package/build/cjs/components/table/TableHeader.js.map +1 -0
- package/build/cjs/components/table/TablePagination.js +2 -0
- package/build/cjs/components/table/TablePagination.js.map +1 -0
- package/build/cjs/components/table/TableRow.js +2 -0
- package/build/cjs/components/table/TableRow.js.map +1 -0
- package/build/cjs/components/table/index.js +2 -0
- package/build/cjs/components/table/index.js.map +1 -0
- package/build/cjs/components/table/tableContext.js +2 -0
- package/build/cjs/components/table/tableContext.js.map +1 -0
- package/build/cjs/components/table/tableSectionContext.js +2 -0
- package/build/cjs/components/table/tableSectionContext.js.map +1 -0
- package/build/cjs/components/table/utils.js +2 -0
- package/build/cjs/components/table/utils.js.map +1 -0
- package/build/cjs/components/tabs/NavTab.js +2 -0
- package/build/cjs/components/tabs/NavTab.js.map +1 -0
- package/build/cjs/components/tabs/NavTabs.js +2 -0
- package/build/cjs/components/tabs/NavTabs.js.map +1 -0
- package/build/cjs/components/tabs/Tab.js +2 -0
- package/build/cjs/components/tabs/Tab.js.map +1 -0
- package/build/cjs/components/tabs/TabList.js +2 -0
- package/build/cjs/components/tabs/TabList.js.map +1 -0
- package/build/cjs/components/tabs/TabPanel.js +2 -0
- package/build/cjs/components/tabs/TabPanel.js.map +1 -0
- package/build/cjs/components/tabs/Tabs.js +2 -0
- package/build/cjs/components/tabs/Tabs.js.map +1 -0
- package/build/cjs/components/tabs/index.js +2 -0
- package/build/cjs/components/tabs/index.js.map +1 -0
- package/build/cjs/components/tabs/tabsContext.js +2 -0
- package/build/cjs/components/tabs/tabsContext.js.map +1 -0
- package/build/cjs/components/toast/Toast.js +2 -0
- package/build/cjs/components/toast/Toast.js.map +1 -0
- package/build/cjs/components/toast/ToastRegion.js +2 -0
- package/build/cjs/components/toast/ToastRegion.js.map +1 -0
- package/build/cjs/components/toast/index.js +2 -0
- package/build/cjs/components/toast/index.js.map +1 -0
- package/build/cjs/components/toast/toastContext.js +2 -0
- package/build/cjs/components/toast/toastContext.js.map +1 -0
- package/build/cjs/components/toast/types.js +2 -0
- package/build/cjs/components/toast/types.js.map +1 -0
- package/build/cjs/components/toggle-switch/ToggleSlider.js +2 -0
- package/build/cjs/components/toggle-switch/ToggleSlider.js.map +1 -0
- package/build/cjs/components/toggle-switch/ToggleSwitch.js +2 -0
- package/build/cjs/components/toggle-switch/ToggleSwitch.js.map +1 -0
- package/build/cjs/components/toggle-switch/index.js +2 -0
- package/build/cjs/components/toggle-switch/index.js.map +1 -0
- package/build/cjs/components/toggle-switch/usePillStyles.js +2 -0
- package/build/cjs/components/toggle-switch/usePillStyles.js.map +1 -0
- package/build/cjs/index.js +1 -1
- package/build/components/description-list/DescriptionList.d.ts +14 -0
- package/build/components/description-list/index.d.ts +1 -0
- package/build/components/expander/ExpandSection.d.ts +22 -0
- package/build/components/expander/Expander.d.ts +28 -0
- package/build/components/expander/index.d.ts +4 -0
- package/build/components/index.d.ts +10 -0
- package/build/components/logo/Logo.d.ts +15 -0
- package/build/components/logo/LogoStamp.d.ts +16 -0
- package/build/components/logo/index.d.ts +5 -0
- package/build/components/logo/text-paths/ForsikringLevertAvFremtind.d.ts +2 -0
- package/build/components/logo/text-paths/FraSB1ogDNB.d.ts +2 -0
- package/build/components/logo/text-paths/InnovasjonFraFremtind.d.ts +2 -0
- package/build/components/logo/text-paths/TeknologiFraFremtind.d.ts +2 -0
- package/build/components/logo/text-paths/VartEgetForsikringsselskap.d.ts +2 -0
- package/build/components/logo/text-paths/VartForsikringsselskap.d.ts +2 -0
- package/build/components/logo/text-paths/index.d.ts +6 -0
- package/build/components/logo/useTextSpinner.d.ts +5 -0
- package/build/components/progress-bar/Countdown.d.ts +12 -0
- package/build/components/progress-bar/ProgressBar.d.ts +22 -0
- package/build/components/progress-bar/index.d.ts +4 -0
- package/build/components/summary-table/SummaryTable.d.ts +9 -0
- package/build/components/summary-table/SummaryTableRow.d.ts +7 -0
- package/build/components/summary-table/index.d.ts +2 -0
- package/build/components/summary-table/mocks/index.d.ts +10 -0
- package/build/components/system-message/SystemMessage.d.ts +21 -0
- package/build/components/system-message/common/DismissButton.d.ts +5 -0
- package/build/components/system-message/common/MessageIcon.d.ts +7 -0
- package/build/components/system-message/index.d.ts +1 -0
- package/build/components/table/DataTable.d.ts +18 -0
- package/build/components/table/ExpandableTableRow.d.ts +17 -0
- package/build/components/table/ExpandableTableRowController.d.ts +10 -0
- package/build/components/table/Table.d.ts +11 -0
- package/build/components/table/TableBody.d.ts +5 -0
- package/build/components/table/TableCaption.d.ts +7 -0
- package/build/components/table/TableCell.d.ts +17 -0
- package/build/components/table/TableColumn.d.ts +5 -0
- package/build/components/table/TableColumnGroup.d.ts +5 -0
- package/build/components/table/TableFooter.d.ts +5 -0
- package/build/components/table/TableHead.d.ts +7 -0
- package/build/components/table/TableHeader.d.ts +22 -0
- package/build/components/table/TablePagination.d.ts +43 -0
- package/build/components/table/TableRow.d.ts +15 -0
- package/build/components/table/index.d.ts +34 -0
- package/build/components/table/tableContext.d.ts +12 -0
- package/build/components/table/tableSectionContext.d.ts +13 -0
- package/build/components/table/utils.d.ts +10 -0
- package/build/components/tabs/NavTab.d.ts +25 -0
- package/build/components/tabs/NavTabs.d.ts +9 -0
- package/build/components/tabs/Tab.d.ts +11 -0
- package/build/components/tabs/TabList.d.ts +18 -0
- package/build/components/tabs/TabPanel.d.ts +11 -0
- package/build/components/tabs/Tabs.d.ts +15 -0
- package/build/components/tabs/index.d.ts +6 -0
- package/build/components/tabs/tabsContext.d.ts +11 -0
- package/build/components/toast/Toast.d.ts +11 -0
- package/build/components/toast/ToastRegion.d.ts +7 -0
- package/build/components/toast/index.d.ts +2 -0
- package/build/components/toast/toastContext.d.ts +16 -0
- package/build/components/toast/types.d.ts +10 -0
- package/build/components/toggle-switch/ToggleSlider.d.ts +12 -0
- package/build/components/toggle-switch/ToggleSwitch.d.ts +32 -0
- package/build/components/toggle-switch/index.d.ts +2 -0
- package/build/components/toggle-switch/usePillStyles.d.ts +5 -0
- package/build/es/components/description-list/DescriptionList.js +2 -0
- package/build/es/components/description-list/DescriptionList.js.map +1 -0
- package/build/es/components/description-list/index.js +2 -0
- package/build/es/components/description-list/index.js.map +1 -0
- package/build/es/components/expander/ExpandSection.js +2 -0
- package/build/es/components/expander/ExpandSection.js.map +1 -0
- package/build/es/components/expander/Expander.js +2 -0
- package/build/es/components/expander/Expander.js.map +1 -0
- package/build/es/components/expander/index.js +2 -0
- package/build/es/components/expander/index.js.map +1 -0
- package/build/es/components/feedback/followup/Followup.js +1 -1
- package/build/es/components/feedback/followup/Followup.js.map +1 -1
- package/build/es/components/index.js +1 -1
- package/build/es/components/logo/Logo.js +2 -0
- package/build/es/components/logo/Logo.js.map +1 -0
- package/build/es/components/logo/LogoStamp.js +2 -0
- package/build/es/components/logo/LogoStamp.js.map +1 -0
- package/build/es/components/logo/index.js +2 -0
- package/build/es/components/logo/index.js.map +1 -0
- package/build/es/components/logo/text-paths/ForsikringLevertAvFremtind.js +2 -0
- package/build/es/components/logo/text-paths/ForsikringLevertAvFremtind.js.map +1 -0
- package/build/es/components/logo/text-paths/FraSB1ogDNB.js +2 -0
- package/build/es/components/logo/text-paths/FraSB1ogDNB.js.map +1 -0
- package/build/es/components/logo/text-paths/InnovasjonFraFremtind.js +2 -0
- package/build/es/components/logo/text-paths/InnovasjonFraFremtind.js.map +1 -0
- package/build/es/components/logo/text-paths/TeknologiFraFremtind.js +2 -0
- package/build/es/components/logo/text-paths/TeknologiFraFremtind.js.map +1 -0
- package/build/es/components/logo/text-paths/VartEgetForsikringsselskap.js +2 -0
- package/build/es/components/logo/text-paths/VartEgetForsikringsselskap.js.map +1 -0
- package/build/es/components/logo/text-paths/VartForsikringsselskap.js +2 -0
- package/build/es/components/logo/text-paths/VartForsikringsselskap.js.map +1 -0
- package/build/es/components/logo/text-paths/index.js +2 -0
- package/build/es/components/logo/text-paths/index.js.map +1 -0
- package/build/es/components/logo/useTextSpinner.js +2 -0
- package/build/es/components/logo/useTextSpinner.js.map +1 -0
- package/build/es/components/progress-bar/Countdown.js +2 -0
- package/build/es/components/progress-bar/Countdown.js.map +1 -0
- package/build/es/components/progress-bar/ProgressBar.js +2 -0
- package/build/es/components/progress-bar/ProgressBar.js.map +1 -0
- package/build/es/components/progress-bar/index.js +2 -0
- package/build/es/components/progress-bar/index.js.map +1 -0
- package/build/es/components/select/NativeSelect.js +1 -1
- package/build/es/components/select/Select.js +1 -1
- package/build/es/components/select/index.js +1 -1
- package/build/es/components/summary-table/SummaryTable.js +2 -0
- package/build/es/components/summary-table/SummaryTable.js.map +1 -0
- package/build/es/components/summary-table/SummaryTableRow.js +2 -0
- package/build/es/components/summary-table/SummaryTableRow.js.map +1 -0
- package/build/es/components/summary-table/index.js +2 -0
- package/build/es/components/summary-table/index.js.map +1 -0
- package/build/es/components/summary-table/mocks/index.js +2 -0
- package/build/es/components/summary-table/mocks/index.js.map +1 -0
- package/build/es/components/system-message/SystemMessage.js +2 -0
- package/build/es/components/system-message/SystemMessage.js.map +1 -0
- package/build/es/components/system-message/common/DismissButton.js +2 -0
- package/build/es/components/system-message/common/DismissButton.js.map +1 -0
- package/build/es/components/system-message/common/MessageIcon.js +2 -0
- package/build/es/components/system-message/common/MessageIcon.js.map +1 -0
- package/build/es/components/system-message/index.js +2 -0
- package/build/es/components/system-message/index.js.map +1 -0
- package/build/es/components/table/DataTable.js +2 -0
- package/build/es/components/table/DataTable.js.map +1 -0
- package/build/es/components/table/ExpandableTableRow.js +2 -0
- package/build/es/components/table/ExpandableTableRow.js.map +1 -0
- package/build/es/components/table/ExpandableTableRowController.js +2 -0
- package/build/es/components/table/ExpandableTableRowController.js.map +1 -0
- package/build/es/components/table/Table.js +2 -0
- package/build/es/components/table/Table.js.map +1 -0
- package/build/es/components/table/TableBody.js +2 -0
- package/build/es/components/table/TableBody.js.map +1 -0
- package/build/es/components/table/TableCaption.js +2 -0
- package/build/es/components/table/TableCaption.js.map +1 -0
- package/build/es/components/table/TableCell.js +2 -0
- package/build/es/components/table/TableCell.js.map +1 -0
- package/build/es/components/table/TableColumn.js +2 -0
- package/build/es/components/table/TableColumn.js.map +1 -0
- package/build/es/components/table/TableColumnGroup.js +2 -0
- package/build/es/components/table/TableColumnGroup.js.map +1 -0
- package/build/es/components/table/TableFooter.js +2 -0
- package/build/es/components/table/TableFooter.js.map +1 -0
- package/build/es/components/table/TableHead.js +2 -0
- package/build/es/components/table/TableHead.js.map +1 -0
- package/build/es/components/table/TableHeader.js +2 -0
- package/build/es/components/table/TableHeader.js.map +1 -0
- package/build/es/components/table/TablePagination.js +2 -0
- package/build/es/components/table/TablePagination.js.map +1 -0
- package/build/es/components/table/TableRow.js +2 -0
- package/build/es/components/table/TableRow.js.map +1 -0
- package/build/es/components/table/index.js +2 -0
- package/build/es/components/table/index.js.map +1 -0
- package/build/es/components/table/tableContext.js +2 -0
- package/build/es/components/table/tableContext.js.map +1 -0
- package/build/es/components/table/tableSectionContext.js +2 -0
- package/build/es/components/table/tableSectionContext.js.map +1 -0
- package/build/es/components/table/utils.js +2 -0
- package/build/es/components/table/utils.js.map +1 -0
- package/build/es/components/tabs/NavTab.js +2 -0
- package/build/es/components/tabs/NavTab.js.map +1 -0
- package/build/es/components/tabs/NavTabs.js +2 -0
- package/build/es/components/tabs/NavTabs.js.map +1 -0
- package/build/es/components/tabs/Tab.js +2 -0
- package/build/es/components/tabs/Tab.js.map +1 -0
- package/build/es/components/tabs/TabList.js +2 -0
- package/build/es/components/tabs/TabList.js.map +1 -0
- package/build/es/components/tabs/TabPanel.js +2 -0
- package/build/es/components/tabs/TabPanel.js.map +1 -0
- package/build/es/components/tabs/Tabs.js +2 -0
- package/build/es/components/tabs/Tabs.js.map +1 -0
- package/build/es/components/tabs/index.js +2 -0
- package/build/es/components/tabs/index.js.map +1 -0
- package/build/es/components/tabs/tabsContext.js +2 -0
- package/build/es/components/tabs/tabsContext.js.map +1 -0
- package/build/es/components/toast/Toast.js +2 -0
- package/build/es/components/toast/Toast.js.map +1 -0
- package/build/es/components/toast/ToastRegion.js +2 -0
- package/build/es/components/toast/ToastRegion.js.map +1 -0
- package/build/es/components/toast/index.js +2 -0
- package/build/es/components/toast/index.js.map +1 -0
- package/build/es/components/toast/toastContext.js +2 -0
- package/build/es/components/toast/toastContext.js.map +1 -0
- package/build/es/components/toast/types.js +2 -0
- package/build/es/components/toast/types.js.map +1 -0
- package/build/es/components/toggle-switch/ToggleSlider.js +2 -0
- package/build/es/components/toggle-switch/ToggleSlider.js.map +1 -0
- package/build/es/components/toggle-switch/ToggleSwitch.js +2 -0
- package/build/es/components/toggle-switch/ToggleSwitch.js.map +1 -0
- package/build/es/components/toggle-switch/index.js +2 -0
- package/build/es/components/toggle-switch/index.js.map +1 -0
- package/build/es/components/toggle-switch/usePillStyles.js +2 -0
- package/build/es/components/toggle-switch/usePillStyles.js.map +1 -0
- package/build/es/index.js +1 -1
- package/package.json +26 -2
- package/src/components/button/styles/button.css +4 -4
- package/src/components/button/styles/button.min.css +1 -1
- package/src/components/checkbox/styles/checkbox.css +4 -4
- package/src/components/checkbox/styles/checkbox.min.css +1 -1
- package/src/components/description-list/styles/_index.scss +1 -0
- package/src/components/description-list/styles/description-list.css +42 -0
- package/src/components/description-list/styles/description-list.min.css +1 -0
- package/src/components/description-list/styles/description-list.scss +56 -0
- package/src/components/expander/styles/_index.scss +1 -0
- package/src/components/expander/styles/expander.css +80 -0
- package/src/components/expander/styles/expander.min.css +1 -0
- package/src/components/expander/styles/expander.scss +84 -0
- package/src/components/feedback/styles/feedback.css +2 -2
- package/src/components/feedback/styles/feedback.min.css +1 -1
- package/src/components/input-group/styles/_field-group.scss +5 -0
- package/src/components/input-group/styles/_index.scss +1 -0
- package/src/components/input-group/styles/_labels.scss +142 -0
- package/src/components/input-group/styles/input-group.css +189 -0
- package/src/components/input-group/styles/input-group.min.css +1 -0
- package/src/components/input-group/styles/input-group.scss +9 -0
- package/src/components/loader/styles/loader.css +6 -6
- package/src/components/loader/styles/loader.min.css +1 -1
- package/src/components/loader/styles/skeleton-loader.css +5 -5
- package/src/components/loader/styles/skeleton-loader.min.css +1 -1
- package/src/components/logo/styles/_index.scss +1 -0
- package/src/components/logo/styles/logo.css +92 -0
- package/src/components/logo/styles/logo.min.css +1 -0
- package/src/components/logo/styles/logo.scss +89 -0
- package/src/components/message/styles/message.css +2 -2
- package/src/components/message/styles/message.min.css +1 -1
- package/src/components/progress-bar/styles/_index.scss +1 -0
- package/src/components/progress-bar/styles/progress-bar.css +51 -0
- package/src/components/progress-bar/styles/progress-bar.min.css +1 -0
- package/src/components/progress-bar/styles/progress-bar.scss +55 -0
- package/src/components/radio-button/styles/radio-button.css +2 -2
- package/src/components/radio-button/styles/radio-button.min.css +1 -1
- package/src/components/summary-table/styles/_index.scss +1 -0
- package/src/components/summary-table/styles/summary-table.css +61 -0
- package/src/components/summary-table/styles/summary-table.min.css +1 -0
- package/src/components/summary-table/styles/summary-table.scss +56 -0
- package/src/components/system-message/styles/_index.scss +1 -0
- package/src/components/system-message/styles/system-message.css +179 -0
- package/src/components/system-message/styles/system-message.min.css +1 -0
- package/src/components/system-message/styles/system-message.scss +158 -0
- package/src/components/table/styles/_index.scss +1 -0
- package/src/components/table/styles/_table-caption.scss +7 -0
- package/src/components/table/styles/_table-cell.scss +83 -0
- package/src/components/table/styles/_table-head.scss +35 -0
- package/src/components/table/styles/_table-header.scss +76 -0
- package/src/components/table/styles/_table-pagination.scss +121 -0
- package/src/components/table/styles/_table-row.scss +183 -0
- package/src/components/tabs/styles/_index.scss +1 -0
- package/src/components/tabs/styles/tabs.css +116 -0
- package/src/components/tabs/styles/tabs.min.css +1 -0
- package/src/components/tabs/styles/tabs.scss +89 -0
- package/src/components/toast/styles/_index.scss +1 -0
- package/src/components/toast/styles/toast.css +222 -0
- package/src/components/toast/styles/toast.min.css +1 -0
- package/src/components/toast/styles/toast.scss +214 -0
- package/src/components/toggle-switch/styles/_index.scss +1 -0
- package/src/components/toggle-switch/styles/_toggle-slider.scss +132 -0
- package/build/NativeSelect-CNcZmpDZ.cjs +0 -2
- package/build/NativeSelect-CNcZmpDZ.cjs.map +0 -1
- package/build/NativeSelect-CfNZEQF0.js +0 -2
- package/build/NativeSelect-CfNZEQF0.js.map +0 -1
|
@@ -0,0 +1 @@
|
|
|
1
|
+
{"version":3,"file":"SummaryTableRow.js","sources":["../../../../src/components/summary-table/SummaryTableRow.tsx"],"sourcesContent":["import React, { FC, ReactNode } from \"react\";\n\nexport interface SummaryTableRowProps {\n className?: string;\n header: string | ReactNode;\n content: string | ReactNode;\n}\n\nexport const SummaryTableRow: FC<SummaryTableRowProps> = ({ className, header, content, ...rest }) => {\n return (\n <tr {...rest} className={className}>\n <th scope=\"row\">{header}</th>\n <td>{content}</td>\n </tr>\n );\n};\n"],"names":["className","header","content","rest","jsxs","children","jsx","scope"],"mappings":"6IAQyD,EAAGA,UAAAA,EAAWC,OAAAA,EAAQC,QAAAA,KAAYC,KAElFC,EAAAA,KAAA,KAAA,IAAOD,EAAMH,UAAAA,EACVK,SAAA,CAACC,EAAAA,IAAA,KAAA,CAAGC,MAAM,MAAOF,SAAOJ,IACxBK,EAAAA,IAAC,MAAID,SAAQH"}
|
|
@@ -0,0 +1 @@
|
|
|
1
|
+
{"version":3,"file":"index.js","sources":[],"sourcesContent":[],"names":[],"mappings":""}
|
|
@@ -0,0 +1,2 @@
|
|
|
1
|
+
"use strict";Object.defineProperty(exports,Symbol.toStringTag,{value:"Module"});const e=require("react/jsx-runtime"),r=require("../SummaryTableRow.js"),o="",a=["Product","Price"],t=e.jsxs(e.Fragment,{children:[e.jsx(r.SummaryTableRow,{header:`Uføre${o}pensjon`,content:"340,00 kr/mnd"}),e.jsx(r.SummaryTableRow,{className:"summary-table-example__custom-row",header:`Livs${o}forsikring`,content:"Tatt ut av tilbudet"}),e.jsx(r.SummaryTableRow,{header:`Innbo${o}forsikring`,content:"122,00 kr/mnd"}),e.jsx(r.SummaryTableRow,{header:`Reise${o}forsikring`,content:"249,00 kr/mnd"}),e.jsx(r.SummaryTableRow,{className:"summary-table-example__custom-row",header:"Rabatt",content:"- 17,50 kr/mnd"})]}),m=e.jsxs(e.Fragment,{children:[e.jsx(r.SummaryTableRow,{header:"Total sum",content:"693,50 kr/mnd"}),e.jsx(r.SummaryTableRow,{header:e.jsx("span",{className:"jkl-sr-only",children:"Total sum per år"}),content:"8322,50 kr/mnd"})]}),s={header:a,body:t,footer:m,caption:"Informasjon om produkter og pris i handlekurven"};exports.mockBody=t,exports.mockFooter=m,exports.mockHeader=a,exports.mockProps=s;
|
|
2
|
+
//# sourceMappingURL=index.js.map
|
|
@@ -0,0 +1 @@
|
|
|
1
|
+
{"version":3,"file":"index.js","sources":["../../../../../src/components/summary-table/mocks/index.tsx"],"sourcesContent":["import React from \"react\";\nimport { SummaryTableRow } from \"../SummaryTableRow\";\n\nconst SOFT_HYPHEN = \"\\u00AD\";\n\nexport const mockHeader = [\"Product\", \"Price\"] as [string, string];\nexport const mockBody = (\n <>\n <SummaryTableRow header={`Uføre${SOFT_HYPHEN}pensjon`} content=\"340,00 kr/mnd\" />\n <SummaryTableRow\n className=\"summary-table-example__custom-row\"\n header={`Livs${SOFT_HYPHEN}forsikring`}\n content=\"Tatt ut av tilbudet\"\n />\n <SummaryTableRow header={`Innbo${SOFT_HYPHEN}forsikring`} content=\"122,00 kr/mnd\" />\n <SummaryTableRow header={`Reise${SOFT_HYPHEN}forsikring`} content=\"249,00 kr/mnd\" />\n <SummaryTableRow className=\"summary-table-example__custom-row\" header=\"Rabatt\" content=\"- 17,50 kr/mnd\" />\n </>\n);\nexport const mockFooter = (\n <>\n <SummaryTableRow header=\"Total sum\" content=\"693,50 kr/mnd\" />\n <SummaryTableRow header={<span className=\"jkl-sr-only\">Total sum per år</span>} content=\"8322,50 kr/mnd\" />\n </>\n);\n\nexport const mockProps = {\n header: mockHeader,\n body: mockBody,\n footer: mockFooter,\n caption: \"Informasjon om produkter og pris i handlekurven\",\n};\n"],"names":["SOFT_HYPHEN","mockHeader","mockBody","jsxs","Fragment","children","jsx","SummaryTableRow","header","content","className","mockFooter","mockProps","body","footer","caption"],"mappings":"wJAGMA,EAAc,IAEPC,EAAa,CAAC,UAAW,SACzBC,EAELC,EAAAA,KAAAC,WAAA,CAAAC,SAAA,CAAAC,MAACC,EAAAA,iBAAgBC,OAAQ,QAAQR,WAAsBS,QAAQ,kBAC/DH,EAAAA,IAACC,EAAAA,gBAAA,CACGG,UAAU,oCACVF,OAAQ,OAAOR,cACfS,QAAQ,8BAEXF,EAAAA,gBAAgB,CAAAC,OAAQ,QAAQR,cAAyBS,QAAQ,wBACjEF,EAAAA,gBAAgB,CAAAC,OAAQ,QAAQR,cAAyBS,QAAQ,wBACjEF,EAAAA,gBAAgB,CAAAG,UAAU,oCAAoCF,OAAO,SAASC,QAAQ,sBAGlFE,EAELR,EAAAA,KAAAC,WAAA,CAAAC,SAAA,CAAAC,EAAAA,IAACC,EAAgBA,gBAAA,CAAAC,OAAO,YAAYC,QAAQ,kBAC5CH,EAAAA,IAACC,EAAAA,gBAAgB,CAAAC,OAASF,EAAAA,IAAA,OAAA,CAAKI,UAAU,cAAcL,SAAA,qBAAyBI,QAAQ,sBAInFG,EAAY,CACrBJ,OAAQP,EACRY,KAAMX,EACNY,OAAQH,EACRI,QAAS"}
|
|
@@ -0,0 +1,2 @@
|
|
|
1
|
+
"use strict";Object.defineProperty(exports,Symbol.toStringTag,{value:"Module"});const s=require("react/jsx-runtime"),e=require("../../../clsx-E3yX_9sL.cjs");require("react"),require("../../hooks/useScreen/useScreen.js");const t=require("../../hooks/useId/useId.js"),a=require("./common/DismissButton.js"),i=require("./common/MessageIcon.js");function n(n){return({id:r,className:m,density:o,maxContentWidth:c,paddingLeft:d,role:l="status",dismissed:u,dismissAction:g,children:y,...j})=>{const x=t.useId(r||"jkl-system-message",{generateSuffix:!r});return s.jsx("div",{role:l,...j,id:x,className:e.clsx("jkl-system-message","jkl-system-message--"+n,m,{"jkl-system-message--dismissed":u}),"data-density":o,children:s.jsxs("div",{className:"jkl-system-message__content","data-testid":"system-message-content","data-theme":"light",style:{maxWidth:c,paddingLeft:d},children:[s.jsx(i.MessageIcon,{messageType:n}),s.jsx("span",{className:"jkl-system-message__message",children:y}),(null==g?void 0:g.handleDismiss)&&s.jsx(a.DismissButton,{"aria-controls":x,className:"jkl-system-message__dismiss-button",label:g.buttonTitle||"Lukk",onClick:g.handleDismiss})]})})}}const r=n("info");r.displayName="InfoSystemMessage";const m=n("error");m.displayName="ErrorSystemMessage";const o=n("warning");o.displayName="WarningSystemMessage";const c=n("success");c.displayName="SuccessSystemMessage",exports.ErrorSystemMessage=m,exports.InfoSystemMessage=r,exports.SuccessSystemMessage=c,exports.WarningSystemMessage=o;
|
|
2
|
+
//# sourceMappingURL=SystemMessage.js.map
|
|
@@ -0,0 +1 @@
|
|
|
1
|
+
{"version":3,"file":"SystemMessage.js","sources":["../../../../src/components/system-message/SystemMessage.tsx"],"sourcesContent":["import clsx from \"clsx\";\nimport React from \"react\";\nimport { Density, WithChildren } from \"../..\";\nimport { useId } from \"../../hooks\";\nimport { DismissButton } from \"./common/DismissButton\";\nimport { MessageIcon } from \"./common/MessageIcon\";\n\ntype messageTypes = \"info\" | \"error\" | \"success\" | \"warning\";\n\ninterface Props extends WithChildren {\n id?: string;\n className?: string;\n density?: Density;\n maxContentWidth?: string;\n paddingLeft?: string;\n /** Overstyr standardrollen til meldingen. Om du ønsker å \"skru av\" rollen kan du bruke verdien `none presentation`. */\n role?: string;\n dismissed?: boolean;\n dismissAction?: {\n handleDismiss: () => void;\n buttonTitle?: string;\n };\n}\n\nfunction systemFactory(messageType: messageTypes): React.FC<Props> {\n const SystemMessage: React.FC<Props> = ({\n id,\n className,\n density,\n maxContentWidth,\n paddingLeft,\n role = \"status\",\n dismissed,\n dismissAction,\n children,\n ...rest\n }) => {\n const systemId = useId(id || \"jkl-system-message\", { generateSuffix: !id });\n\n return (\n <div\n role={role}\n {...rest}\n id={systemId}\n className={clsx(\"jkl-system-message\", \"jkl-system-message--\" + messageType, className, {\n \"jkl-system-message--dismissed\": dismissed,\n })}\n data-density={density}\n >\n <div\n className=\"jkl-system-message__content\"\n data-testid=\"system-message-content\"\n data-theme=\"light\"\n style={{\n maxWidth: maxContentWidth,\n paddingLeft,\n }}\n >\n <MessageIcon messageType={messageType} />\n <span className=\"jkl-system-message__message\">{children}</span>\n {dismissAction?.handleDismiss && (\n <DismissButton\n aria-controls={systemId}\n className=\"jkl-system-message__dismiss-button\"\n label={dismissAction.buttonTitle || \"Lukk\"}\n onClick={dismissAction.handleDismiss}\n />\n )}\n </div>\n </div>\n );\n };\n return SystemMessage;\n}\n\nexport const InfoSystemMessage = systemFactory(\"info\");\nInfoSystemMessage.displayName = \"InfoSystemMessage\";\nexport const ErrorSystemMessage = systemFactory(\"error\");\nErrorSystemMessage.displayName = \"ErrorSystemMessage\";\nexport const WarningSystemMessage = systemFactory(\"warning\");\nWarningSystemMessage.displayName = \"WarningSystemMessage\";\nexport const SuccessSystemMessage = systemFactory(\"success\");\nSuccessSystemMessage.displayName = \"SuccessSystemMessage\";\n"],"names":["systemFactory","messageType","id","className","density","maxContentWidth","paddingLeft","role","dismissed","dismissAction","children","rest","systemId","useId","generateSuffix","jsx","clsx","jsxs","style","maxWidth","MessageIcon","handleDismiss","DismissButton","label","buttonTitle","onClick","InfoSystemMessage","displayName","ErrorSystemMessage","WarningSystemMessage","SuccessSystemMessage"],"mappings":"sVAwBA,SAASA,EAAcC,GAgDZ,MA/CgC,EACnCC,GAAAA,EACAC,UAAAA,EACAC,QAAAA,EACAC,gBAAAA,EACAC,YAAAA,EACAC,KAAAA,EAAO,SACPC,UAAAA,EACAC,cAAAA,EACAC,SAAAA,KACGC,MAEG,MAAAC,EAAWC,QAAMX,GAAM,qBAAsB,CAAEY,gBAAiBZ,IAGlE,OAAAa,EAAAA,IAAC,MAAA,CACGR,KAAAA,KACII,EACJT,GAAIU,EACJT,UAAWa,EAAAA,KAAK,qBAAsB,uBAAyBf,EAAaE,EAAW,CACnF,gCAAiCK,IAErC,eAAcJ,EAEdM,SAAAO,EAAAA,KAAC,MAAA,CACGd,UAAU,8BACV,cAAY,yBACZ,aAAW,QACXe,MAAO,CACHC,SAAUd,EACVC,YAAAA,GAGJI,SAAA,CAAAK,MAACK,EAAAA,aAAYnB,YAAAA,IACZc,EAAAA,IAAA,OAAA,CAAKZ,UAAU,8BAA+BO,SAAAA,KAC9C,MAAAD,OAAA,EAAAA,EAAeY,gBACZN,EAAAA,IAACO,EAAAA,cAAA,CACG,gBAAeV,EACfT,UAAU,qCACVoB,MAAOd,EAAce,aAAe,OACpCC,QAAShB,EAAcY,oBAGnC,CAKhB,CAEa,MAAAK,EAAoB1B,EAAc,QAC/C0B,EAAkBC,YAAc,oBACnB,MAAAC,EAAqB5B,EAAc,SAChD4B,EAAmBD,YAAc,qBACpB,MAAAE,EAAuB7B,EAAc,WAClD6B,EAAqBF,YAAc,uBACtB,MAAAG,EAAuB9B,EAAc,WAClD8B,EAAqBH,YAAc"}
|
|
@@ -0,0 +1,2 @@
|
|
|
1
|
+
"use strict";Object.defineProperty(exports,Symbol.toStringTag,{value:"Module"});const o=require("react/jsx-runtime"),n=require("react");require("../../icon/Icon.js"),require("../../icon/icons/animated/ArrowVerticalAnimated.js"),require("../../icon/icons/animated/ArrowHorizontalAnimated.js"),require("../../icon/icons/animated/PlusRemoveAnimated.js"),require("../../icon/icons/ArrowDownIcon.js"),require("../../icon/icons/ArrowLeftIcon.js"),require("../../icon/icons/ArrowNorthEastIcon.js"),require("../../icon/icons/ArrowRightIcon.js"),require("../../icon/icons/ArrowUpIcon.js"),require("../../icon/icons/CalendarIcon.js"),require("../../icon/icons/CheckIcon.js"),require("../../icon/icons/ChevronDownIcon.js"),require("../../icon/icons/ChevronLeftIcon.js"),require("../../icon/icons/ChevronRightIcon.js"),require("../../icon/icons/ChevronUpIcon.js");const i=require("../../icon/icons/CloseIcon.js");require("../../icon/icons/CopyIcon.js"),require("../../icon/icons/DotsIcon.js"),require("../../icon/icons/DragIcon.js"),require("../../icon/icons/ErrorIcon.js"),require("../../icon/icons/GreenCheckIcon.js"),require("../../icon/icons/HamburgerIcon.js"),require("../../icon/icons/InfoIcon.js"),require("../../icon/icons/LinkIcon.js"),require("../../icon/icons/PlusIcon.js"),require("../../icon/icons/QuestionIcon.js"),require("../../icon/icons/RedCrossIcon.js"),require("../../icon/icons/SearchIcon.js"),require("../../icon/icons/SuccessIcon.js"),require("../../icon/icons/WarningIcon.js"),require("../../icon/icons/MinusIcon.js"),require("../../icon/icons/ThumbDownIcon.js"),require("../../icon/icons/ThumbUpIcon.js"),require("../../icon/icons/TrashCanIcon.js"),require("../../icon/icons/PenIcon.js");const e=n.forwardRef((({label:n="Lukk",...e},r)=>o.jsxs("button",{ref:r,type:"button",title:n,...e,children:[o.jsx(i.CloseIcon,{variant:"small",bold:!0}),o.jsx("span",{className:"jkl-sr-only",children:n})]})));e.displayName="DismissButton",exports.DismissButton=e;
|
|
2
|
+
//# sourceMappingURL=DismissButton.js.map
|
|
@@ -0,0 +1 @@
|
|
|
1
|
+
{"version":3,"file":"DismissButton.js","sources":["../../../../../src/components/system-message/common/DismissButton.tsx"],"sourcesContent":["import React, { ButtonHTMLAttributes, forwardRef } from \"react\";\nimport { CloseIcon } from \"../../icon\";\n\nexport interface DismissButtonProps extends Exclude<ButtonHTMLAttributes<HTMLButtonElement>, \"disabled\"> {\n label?: string;\n}\n\nexport const DismissButton = forwardRef<HTMLButtonElement, DismissButtonProps>(({ label = \"Lukk\", ...rest }, ref) => {\n return (\n <button ref={ref} type=\"button\" title={label} {...rest}>\n <CloseIcon variant=\"small\" bold />\n <span className=\"jkl-sr-only\">{label}</span>\n </button>\n );\n});\n\nDismissButton.displayName = \"DismissButton\";\n"],"names":["DismissButton","forwardRef","label","rest","ref","jsxs","type","title","children","jsx","CloseIcon","variant","bold","className","displayName"],"mappings":"qqDAOa,MAAAA,EAAgBC,cAAkD,EAAGC,MAAAA,EAAQ,UAAWC,GAAQC,IAErGC,OAAC,UAAOD,IAAAA,EAAUE,KAAK,SAASC,MAAOL,KAAWC,EAC9CK,SAAA,CAAAC,EAAAA,IAACC,EAAUA,UAAA,CAAAC,QAAQ,QAAQC,MAAI,IAC9BH,EAAAA,IAAA,OAAA,CAAKI,UAAU,cAAeL,SAAMN,SAKjDF,EAAcc,YAAc"}
|
|
@@ -0,0 +1,2 @@
|
|
|
1
|
+
"use strict";Object.defineProperty(exports,Symbol.toStringTag,{value:"Module"});const n=require("react/jsx-runtime");require("../../icon/Icon.js"),require("../../icon/icons/animated/ArrowVerticalAnimated.js"),require("../../icon/icons/animated/ArrowHorizontalAnimated.js"),require("../../icon/icons/animated/PlusRemoveAnimated.js"),require("../../icon/icons/ArrowDownIcon.js"),require("../../icon/icons/ArrowLeftIcon.js"),require("../../icon/icons/ArrowNorthEastIcon.js"),require("../../icon/icons/ArrowRightIcon.js"),require("../../icon/icons/ArrowUpIcon.js"),require("../../icon/icons/CalendarIcon.js"),require("../../icon/icons/CheckIcon.js"),require("../../icon/icons/ChevronDownIcon.js"),require("../../icon/icons/ChevronLeftIcon.js"),require("../../icon/icons/ChevronRightIcon.js"),require("../../icon/icons/ChevronUpIcon.js"),require("../../icon/icons/CloseIcon.js"),require("../../icon/icons/CopyIcon.js"),require("../../icon/icons/DotsIcon.js"),require("../../icon/icons/DragIcon.js");const o=require("../../icon/icons/ErrorIcon.js");require("../../icon/icons/GreenCheckIcon.js"),require("../../icon/icons/HamburgerIcon.js");const e=require("../../icon/icons/InfoIcon.js");require("../../icon/icons/LinkIcon.js"),require("../../icon/icons/PlusIcon.js"),require("../../icon/icons/QuestionIcon.js"),require("../../icon/icons/RedCrossIcon.js"),require("../../icon/icons/SearchIcon.js");const c=require("../../icon/icons/SuccessIcon.js"),s=require("../../icon/icons/WarningIcon.js");require("../../icon/icons/MinusIcon.js"),require("../../icon/icons/ThumbDownIcon.js"),require("../../icon/icons/ThumbUpIcon.js"),require("../../icon/icons/TrashCanIcon.js"),require("../../icon/icons/PenIcon.js");exports.MessageIcon=({messageType:i})=>{switch(i){case"error":return n.jsx(o.ErrorIcon,{className:"jkl-system-message__icon"});case"info":return n.jsx(e.InfoIcon,{className:"jkl-system-message__icon"});case"success":return n.jsx(c.SuccessIcon,{className:"jkl-system-message__icon"});case"warning":return n.jsx(s.WarningIcon,{className:"jkl-system-message__icon"});default:return null}};
|
|
2
|
+
//# sourceMappingURL=MessageIcon.js.map
|
|
@@ -0,0 +1 @@
|
|
|
1
|
+
{"version":3,"file":"MessageIcon.js","sources":["../../../../../src/components/system-message/common/MessageIcon.tsx"],"sourcesContent":["import React, { FC } from \"react\";\nimport { ErrorIcon, InfoIcon, WarningIcon, SuccessIcon } from \"../../icon\";\n\ntype MessageTypes = \"info\" | \"error\" | \"success\" | \"warning\";\n\ntype Props = {\n messageType: MessageTypes;\n};\n\nexport const MessageIcon: FC<Props> = ({ messageType }) => {\n switch (messageType) {\n case \"error\":\n return <ErrorIcon className=\"jkl-system-message__icon\" />;\n case \"info\":\n return <InfoIcon className=\"jkl-system-message__icon\" />;\n case \"success\":\n return <SuccessIcon className=\"jkl-system-message__icon\" />;\n case \"warning\":\n return <WarningIcon className=\"jkl-system-message__icon\" />;\n\n default:\n return null;\n }\n};\n"],"names":["messageType","jsx","ErrorIcon","className","InfoIcon","SuccessIcon","WarningIcon"],"mappings":"wrDASsC,EAAGA,YAAAA,MACrC,OAAQA,GACJ,IAAK,QACM,OAAAC,EAAAA,IAACC,EAAUA,UAAA,CAAAC,UAAU,6BAChC,IAAK,OACM,OAAAF,EAAAA,IAACG,EAASA,SAAA,CAAAD,UAAU,6BAC/B,IAAK,UACM,OAAAF,EAAAA,IAACI,EAAYA,YAAA,CAAAF,UAAU,6BAClC,IAAK,UACM,OAAAF,EAAAA,IAACK,EAAYA,YAAA,CAAAH,UAAU,6BAElC,QACW,OAAA,KACf"}
|
|
@@ -0,0 +1,2 @@
|
|
|
1
|
+
"use strict";Object.defineProperty(exports,Symbol.toStringTag,{value:"Module"});const e=require("./SystemMessage.js");exports.ErrorSystemMessage=e.ErrorSystemMessage,exports.InfoSystemMessage=e.InfoSystemMessage,exports.SuccessSystemMessage=e.SuccessSystemMessage,exports.WarningSystemMessage=e.WarningSystemMessage;
|
|
2
|
+
//# sourceMappingURL=index.js.map
|
|
@@ -0,0 +1 @@
|
|
|
1
|
+
{"version":3,"file":"index.js","sources":[],"sourcesContent":[],"names":[],"mappings":""}
|
|
@@ -0,0 +1,2 @@
|
|
|
1
|
+
"use strict";Object.defineProperty(exports,Symbol.toStringTag,{value:"Module"});const e=require("react/jsx-runtime"),l=require("react"),a=require("./Table.js"),r=require("./TableBody.js"),i=require("./TableCaption.js"),s=require("./TableCell.js"),t=require("./TableHead.js"),n=require("./TableHeader.js"),d=require("./TableRow.js"),b=l.forwardRef((({caption:l,columns:b,emptyTableText:c,rows:o,verticalAlign:T,...j},u)=>e.jsxs(a.Table,{fullWidth:!0,...j,ref:u,children:[l&&e.jsx(i.TableCaption,{srOnly:!0,children:l}),e.jsx(t.TableHead,{children:e.jsx(d.TableRow,{children:b.map(((l,a)=>e.jsx(n.TableHeader,{density:"compact",bold:!0,children:l},a)))})}),e.jsxs(r.TableBody,{children:[0===o.length&&c&&e.jsx(d.TableRow,{children:e.jsx(s.TableCell,{colSpan:b.length,children:c})}),o.map(((l,a)=>e.jsx(d.TableRow,{children:l.map(((l,a)=>e.jsx(s.TableCell,{"data-th":b[a],verticalAlign:T,children:l},a)))},a)))]})]})));b.displayName="DataTable",exports.DataTable=b;
|
|
2
|
+
//# sourceMappingURL=DataTable.js.map
|
|
@@ -0,0 +1 @@
|
|
|
1
|
+
{"version":3,"file":"DataTable.js","sources":["../../../../src/components/table/DataTable.tsx"],"sourcesContent":["import React, { forwardRef, TableHTMLAttributes } from \"react\";\nimport { Density } from \"../..\";\nimport { Table } from \"./Table\";\nimport { TableBody } from \"./TableBody\";\nimport { TableCaption } from \"./TableCaption\";\nimport { TableCell } from \"./TableCell\";\nimport { TableHead } from \"./TableHead\";\nimport { TableHeader } from \"./TableHeader\";\nimport { TableRow } from \"./TableRow\";\n\nexport interface DataTableProps extends TableHTMLAttributes<HTMLTableElement> {\n /** Beskrivelse av tabellen for skjermlesere */\n caption?: string;\n density?: Density;\n collapseToList?: boolean;\n rows: React.ReactNode[][];\n columns: string[];\n emptyTableText?: string;\n /**\n * Velg mellom vertikal sentrering av innholdet eller toppjustering. Typisk skal innholdet være toppjustert, men dersom raden har knapper kan midtstilling fungere bedre.\n * @default \"top\"\n */\n verticalAlign?: \"center\" | \"top\";\n}\n\nconst DataTable = forwardRef<HTMLTableElement, DataTableProps>(\n ({ caption, columns, emptyTableText, rows, verticalAlign, ...rest }, ref) => {\n return (\n <Table fullWidth={true} {...rest} ref={ref}>\n {caption && <TableCaption srOnly>{caption}</TableCaption>}\n <TableHead>\n <TableRow>\n {columns.map((column, index) => (\n <TableHeader key={index} density=\"compact\" bold>\n {column}\n </TableHeader>\n ))}\n </TableRow>\n </TableHead>\n <TableBody>\n {rows.length === 0 && emptyTableText && (\n <TableRow>\n <TableCell colSpan={columns.length}>{emptyTableText}</TableCell>\n </TableRow>\n )}\n {rows.map((row, rowIndex) => (\n <TableRow key={rowIndex}>\n {row.map((cell, cellIndex) => (\n <TableCell key={cellIndex} data-th={columns[cellIndex]} verticalAlign={verticalAlign}>\n {cell}\n </TableCell>\n ))}\n </TableRow>\n ))}\n </TableBody>\n </Table>\n );\n },\n);\n\nDataTable.displayName = \"DataTable\";\n\nexport { DataTable };\n"],"names":["DataTable","forwardRef","caption","columns","emptyTableText","rows","verticalAlign","rest","ref","Table","fullWidth","children","jsx","TableCaption","srOnly","TableHead","TableRow","map","column","index","TableHeader","density","bold","TableBody","length","TableCell","colSpan","row","rowIndex","cell","cellIndex","displayName"],"mappings":"4UAyBMA,EAAYC,EAAAA,YACd,EAAGC,QAAAA,EAASC,QAAAA,EAASC,eAAAA,EAAgBC,KAAAA,EAAMC,cAAAA,KAAkBC,GAAQC,WAE5DC,EAAMA,MAAA,CAAAC,WAAW,KAAUH,EAAMC,IAAAA,EAC7BG,SAAA,CAAAT,GAAYU,EAAAA,IAAAC,eAAA,CAAaC,QAAM,EAAEH,SAAQT,UACzCa,EACGA,UAAA,CAAAJ,SAAAC,MAACI,EAAAA,UACIL,SAAQR,EAAAc,KAAI,CAACC,EAAQC,UACjBC,EAAAA,YAAwB,CAAAC,QAAQ,UAAUC,MAAI,EAC1CX,YADaQ,gBAM7BI,EAAAA,UACI,CAAAZ,SAAA,CAAgB,IAAXN,EAAAmB,QAAgBpB,GACjBQ,EAAAA,IAAAI,EAAAA,SAAA,CACGL,SAACC,EAAAA,IAAAa,EAAAA,UAAA,CAAUC,QAASvB,EAAQqB,OAASb,SAAAP,MAG5CC,EAAKY,KAAI,CAACU,EAAKC,UACXZ,WACI,CAAAL,SAAAgB,EAAIV,KAAI,CAACY,EAAMC,UACXL,EAAAA,UAA0B,CAAA,UAAStB,EAAQ2B,GAAYxB,cAAAA,EACnDK,YADWmB,MAFTF,aAcvC5B,EAAU+B,YAAc"}
|
|
@@ -0,0 +1,2 @@
|
|
|
1
|
+
"use strict";Object.defineProperty(exports,Symbol.toStringTag,{value:"Module"}),require("react/jsx-runtime"),require("../../../clsx-E3yX_9sL.cjs"),require("react"),require("../../hooks/useAnimatedHeight/useAnimatedHeight.js"),require("../../hooks/useScreen/useScreen.js"),require("../../hooks/useId/useId.js");const e=require("../../../ExpandableTableRow-BQjBxKCX.cjs");require("./TableRow.js"),exports.ExpandableTableRow=e.ExpandableTableRow;
|
|
2
|
+
//# sourceMappingURL=ExpandableTableRow.js.map
|
|
@@ -0,0 +1 @@
|
|
|
1
|
+
{"version":3,"file":"ExpandableTableRow.js","sources":[],"sourcesContent":[],"names":[],"mappings":""}
|
|
@@ -0,0 +1,2 @@
|
|
|
1
|
+
"use strict";Object.defineProperty(exports,Symbol.toStringTag,{value:"Module"}),require("react/jsx-runtime"),require("../../../clsx-E3yX_9sL.cjs"),require("react");const e=require("../../../ExpandableTableRow-BQjBxKCX.cjs");require("../../hooks/useScreen/useScreen.js"),require("../../hooks/useId/useId.js"),require("./TableCell.js"),require("./tableContext.js"),exports.ExpandableTableRowController=e.ExpandableTableRowController;
|
|
2
|
+
//# sourceMappingURL=ExpandableTableRowController.js.map
|
|
@@ -0,0 +1 @@
|
|
|
1
|
+
{"version":3,"file":"ExpandableTableRowController.js","sources":[],"sourcesContent":[],"names":[],"mappings":""}
|
|
@@ -0,0 +1,2 @@
|
|
|
1
|
+
"use strict";Object.defineProperty(exports,Symbol.toStringTag,{value:"Module"});const e=require("react/jsx-runtime"),l=require("../../../clsx-E3yX_9sL.cjs"),t=require("react"),s=require("./tableContext.js"),a=t.forwardRef((({className:t,density:a,collapseToList:r=!1,fullWidth:i=!1,...o},c)=>e.jsx(s.TableContextProvider,{state:{density:a,collapseToList:r},children:e.jsx("table",{className:l.clsx("jkl-table",t,{"jkl-table--full-width":i,"jkl-table--collapse-to-list":r}),...o,ref:c})})));a.displayName="Table",exports.Table=a;
|
|
2
|
+
//# sourceMappingURL=Table.js.map
|
|
@@ -0,0 +1 @@
|
|
|
1
|
+
{"version":3,"file":"Table.js","sources":["../../../../src/components/table/Table.tsx"],"sourcesContent":["import clsx from \"clsx\";\nimport React, { forwardRef, TableHTMLAttributes } from \"react\";\nimport { Density } from \"../..\";\nimport { TableContextProvider } from \"./tableContext\";\n\nexport interface TableProps extends TableHTMLAttributes<HTMLTableElement> {\n density?: Density;\n /** Bryt ned til en stablet listevisning på små skjermer. NB: husk å sette `data-th` på hver celle! */\n collapseToList?: boolean;\n /** Setter width: 100% */\n fullWidth?: boolean;\n}\n\nconst Table = forwardRef<HTMLTableElement, TableProps>(\n ({ className, density, collapseToList = false, fullWidth = false, ...rest }, ref) => {\n return (\n <TableContextProvider state={{ density, collapseToList }}>\n <table\n className={clsx(\"jkl-table\", className, {\n [\"jkl-table--full-width\"]: fullWidth,\n [\"jkl-table--collapse-to-list\"]: collapseToList,\n })}\n {...rest}\n ref={ref}\n />\n </TableContextProvider>\n );\n },\n);\n\nTable.displayName = \"Table\";\n\nexport { Table };\n"],"names":["Table","forwardRef","className","density","collapseToList","fullWidth","rest","ref","TableContextProvider","state","children","jsx","clsx","displayName"],"mappings":"+MAaMA,EAAQC,EAAAA,YACV,EAAGC,UAAAA,EAAWC,QAAAA,EAASC,eAAAA,GAAiB,EAAOC,UAAAA,GAAY,KAAUC,GAAQC,UAEpEC,EAAqBA,qBAAA,CAAAC,MAAO,CAAEN,QAAAA,EAASC,eAAAA,GACpCM,SAAAC,EAAAA,IAAC,QAAA,CACGT,UAAWU,EAAAA,KAAK,YAAaV,EAAW,CACnC,wBAA0BG,EAC1B,8BAAgCD,OAEjCE,EACJC,IAAAA,QAOpBP,EAAMa,YAAc"}
|
|
@@ -0,0 +1,2 @@
|
|
|
1
|
+
"use strict";Object.defineProperty(exports,Symbol.toStringTag,{value:"Module"});const e=require("react/jsx-runtime"),t=require("react"),r=require("./tableSectionContext.js"),o=t.forwardRef(((t,o)=>e.jsx(r.TableSectionContextProvider,{state:{isTableHead:!1,isTableBody:!0,isTableFooter:!1},children:e.jsx("tbody",{...t,ref:o})})));o.displayName="TableBody",exports.TableBody=o;
|
|
2
|
+
//# sourceMappingURL=TableBody.js.map
|
|
@@ -0,0 +1 @@
|
|
|
1
|
+
{"version":3,"file":"TableBody.js","sources":["../../../../src/components/table/TableBody.tsx"],"sourcesContent":["import React, { forwardRef, HTMLAttributes } from \"react\";\nimport { TableSectionContextProvider } from \"./tableSectionContext\";\n\nexport interface TableBodyProps extends HTMLAttributes<HTMLTableSectionElement> {}\n\nconst TableBody = forwardRef<HTMLTableSectionElement, TableBodyProps>((props, ref) => {\n return (\n <TableSectionContextProvider state={{ isTableHead: false, isTableBody: true, isTableFooter: false }}>\n <tbody {...props} ref={ref} />\n </TableSectionContextProvider>\n );\n});\n\nTableBody.displayName = \"TableBody\";\n\nexport { TableBody };\n"],"names":["TableBody","forwardRef","props","ref","TableSectionContextProvider","state","isTableHead","isTableBody","isTableFooter","children","jsx","displayName"],"mappings":"8KAKMA,EAAYC,EAAAA,YAAoD,CAACC,EAAOC,UAErEC,EAA4BA,4BAAA,CAAAC,MAAO,CAAEC,aAAa,EAAOC,aAAa,EAAMC,eAAe,GACxFC,SAACC,EAAAA,IAAA,QAAA,IAAUR,EAAOC,IAAAA,QAK9BH,EAAUW,YAAc"}
|
|
@@ -0,0 +1,2 @@
|
|
|
1
|
+
"use strict";Object.defineProperty(exports,Symbol.toStringTag,{value:"Module"});const e=require("react/jsx-runtime"),r=require("../../../clsx-E3yX_9sL.cjs"),t=require("react").forwardRef((({srOnly:t=!0,...a},l)=>e.jsx("caption",{className:r.clsx("jkl-table-caption",{"jkl-table-caption--sr-only":t}),...a,ref:l})));t.displayName="TableCaption",exports.TableCaption=t;
|
|
2
|
+
//# sourceMappingURL=TableCaption.js.map
|
|
@@ -0,0 +1 @@
|
|
|
1
|
+
{"version":3,"file":"TableCaption.js","sources":["../../../../src/components/table/TableCaption.tsx"],"sourcesContent":["import clsx from \"clsx\";\nimport React, { forwardRef, HTMLAttributes } from \"react\";\n\nexport interface TableCaptionProps extends HTMLAttributes<HTMLTableCaptionElement> {\n /** Skjuler caption visuelt */\n srOnly?: boolean;\n}\n\nconst TableCaption = forwardRef<HTMLTableCaptionElement, TableCaptionProps>(({ srOnly = true, ...rest }, ref) => {\n return (\n <caption\n className={clsx(\"jkl-table-caption\", { [\"jkl-table-caption--sr-only\"]: srOnly })}\n {...rest}\n ref={ref}\n />\n );\n});\n\nTableCaption.displayName = \"TableCaption\";\n\nexport { TableCaption };\n"],"names":["TableCaption","srOnly","rest","ref","jsx","className","clsx","displayName"],"mappings":"6JAQMA,+BAAsE,EAAGC,OAAAA,GAAS,KAASC,GAAQC,IAEjGC,EAAAA,IAAC,UAAA,CACGC,UAAWC,OAAK,oBAAqB,CAAG,6BAA+BL,OACnEC,EACJC,IAAAA,MAKZH,EAAaO,YAAc"}
|
|
@@ -0,0 +1,2 @@
|
|
|
1
|
+
"use strict";Object.defineProperty(exports,Symbol.toStringTag,{value:"Module"});const e=require("react/jsx-runtime"),l=require("../../../clsx-E3yX_9sL.cjs"),t=require("react"),r=require("./tableContext.js"),a=t.forwardRef((({align:t="left",verticalAlign:a="top",className:c,density:i,...s},n)=>{const{density:o}=r.useTableContext();return e.jsx("td",{className:l.clsx("jkl-table-cell",c,{"jkl-table-cell--align-right":"right"===t,"jkl-table-cell--align-center":"center"===t,"jkl-table-cell--vertical-align-center":"center"===a}),...s,"data-density":i||o,ref:n})}));a.displayName="TableCell",exports.TableCell=a;
|
|
2
|
+
//# sourceMappingURL=TableCell.js.map
|
|
@@ -0,0 +1 @@
|
|
|
1
|
+
{"version":3,"file":"TableCell.js","sources":["../../../../src/components/table/TableCell.tsx"],"sourcesContent":["import clsx from \"clsx\";\nimport React, { forwardRef, TdHTMLAttributes } from \"react\";\nimport { Density } from \"../..\";\nimport { useTableContext } from \"./tableContext\";\n\nexport interface TableCellProps extends TdHTMLAttributes<HTMLTableCellElement> {\n density?: Density;\n /**\n * Velg mellom venstrejustering og høyrejustering av innholdet. Typisk skal innholdet være venstrejustert, men for eksempel summer er høyrejustert.\n * @default \"left\"\n */\n align?: \"left\" | \"center\" | \"right\";\n /**\n * Velg mellom vertikal sentrering av innholdet eller toppjustering. Typisk skal innholdet være toppjustert, men dersom raden har knapper kan midtstilling fungere bedre.\n * @default \"top\"\n */\n verticalAlign?: \"center\" | \"top\";\n}\n\nconst TableCell = forwardRef<HTMLTableCellElement, TableCellProps>(\n ({ align = \"left\", verticalAlign = \"top\", className, density, ...rest }, ref) => {\n const { density: contextDensity } = useTableContext();\n return (\n <td\n className={clsx(\"jkl-table-cell\", className, {\n [\"jkl-table-cell--align-right\"]: align === \"right\",\n [\"jkl-table-cell--align-center\"]: align === \"center\",\n [\"jkl-table-cell--vertical-align-center\"]: verticalAlign === \"center\",\n })}\n {...rest}\n data-density={density || contextDensity}\n ref={ref}\n />\n );\n },\n);\n\nTableCell.displayName = \"TableCell\";\n\nexport { TableCell };\n"],"names":["TableCell","forwardRef","align","verticalAlign","className","density","rest","ref","contextDensity","useTableContext","jsx","clsx","displayName"],"mappings":"+MAmBMA,EAAYC,EAAAA,YACd,EAAGC,MAAAA,EAAQ,OAAQC,cAAAA,EAAgB,MAAOC,UAAAA,EAAWC,QAAAA,KAAYC,GAAQC,KACrE,MAAQF,QAASG,GAAmBC,EAAgBA,kBAEhD,OAAAC,EAAAA,IAAC,KAAA,CACGN,UAAWO,EAAAA,KAAK,iBAAkBP,EAAW,CACxC,8BAA0C,UAAVF,EAChC,+BAA2C,WAAVA,EACjC,wCAA4D,WAAlBC,OAE3CG,EACJ,eAAcD,GAAWG,EACzBD,IAAAA,GAAA,IAMhBP,EAAUY,YAAc"}
|
|
@@ -0,0 +1 @@
|
|
|
1
|
+
{"version":3,"file":"TableColumn.js","sources":["../../../../src/components/table/TableColumn.tsx"],"sourcesContent":["import React, { forwardRef, ColHTMLAttributes } from \"react\";\n\nexport interface TableColumnProps extends ColHTMLAttributes<HTMLTableColElement> {}\n\nconst TableColumn = forwardRef<HTMLTableColElement, TableColumnProps>((props, ref) => {\n return <col {...props} ref={ref} />;\n});\n\nTableColumn.displayName = \"TableColumn\";\n\nexport { TableColumn };\n"],"names":["TableColumn","forwardRef","props","ref","jsx","displayName"],"mappings":"qHAIMA,mBAAcC,YAAkD,CAACC,EAAOC,IAClEC,EAAAA,IAAA,MAAA,IAAQF,EAAOC,IAAAA,MAG3BH,EAAYK,YAAc"}
|
|
@@ -0,0 +1,2 @@
|
|
|
1
|
+
"use strict";Object.defineProperty(exports,Symbol.toStringTag,{value:"Module"});const e=require("react/jsx-runtime"),r=require("react").forwardRef(((r,o)=>e.jsx("colgroup",{...r,ref:o})));r.displayName="TableColumnGroup",exports.TableColumnGroup=r;
|
|
2
|
+
//# sourceMappingURL=TableColumnGroup.js.map
|
|
@@ -0,0 +1 @@
|
|
|
1
|
+
{"version":3,"file":"TableColumnGroup.js","sources":["../../../../src/components/table/TableColumnGroup.tsx"],"sourcesContent":["import React, { forwardRef, ColgroupHTMLAttributes } from \"react\";\n\nexport interface TableColumnGroupProps extends ColgroupHTMLAttributes<HTMLTableColElement> {}\n\nconst TableColumnGroup = forwardRef<HTMLTableColElement, TableColumnGroupProps>((props, ref) => {\n return <colgroup {...props} ref={ref} />;\n});\n\nTableColumnGroup.displayName = \"TableColumnGroup\";\n\nexport { TableColumnGroup };\n"],"names":["TableColumnGroup","forwardRef","props","ref","jsx","displayName"],"mappings":"qHAIMA,mBAAmBC,YAAuD,CAACC,EAAOC,IAC5EC,EAAAA,IAAA,WAAA,IAAaF,EAAOC,IAAAA,MAGhCH,EAAiBK,YAAc"}
|
|
@@ -0,0 +1,2 @@
|
|
|
1
|
+
"use strict";Object.defineProperty(exports,Symbol.toStringTag,{value:"Module"});const e=require("react/jsx-runtime"),t=require("../../../clsx-E3yX_9sL.cjs"),r=require("react"),o=require("./tableSectionContext.js"),a=r.forwardRef((({className:r,...a},s)=>e.jsx(o.TableSectionContextProvider,{state:{isTableHead:!1,isTableBody:!1,isTableFooter:!0},children:e.jsx("tfoot",{className:t.clsx("jkl-table-foot",r),...a,ref:s})})));a.displayName="TableFooter",exports.TableFooter=a;
|
|
2
|
+
//# sourceMappingURL=TableFooter.js.map
|
|
@@ -0,0 +1 @@
|
|
|
1
|
+
{"version":3,"file":"TableFooter.js","sources":["../../../../src/components/table/TableFooter.tsx"],"sourcesContent":["import clsx from \"clsx\";\nimport React, { forwardRef, HTMLAttributes } from \"react\";\nimport { TableSectionContextProvider } from \"./tableSectionContext\";\n\nexport interface TableFooterProps extends HTMLAttributes<HTMLTableSectionElement> {}\n\nconst TableFooter = forwardRef<HTMLTableSectionElement, TableFooterProps>(({ className, ...rest }, ref) => {\n return (\n <TableSectionContextProvider state={{ isTableHead: false, isTableBody: false, isTableFooter: true }}>\n <tfoot className={clsx(\"jkl-table-foot\", className)} {...rest} ref={ref} />\n </TableSectionContextProvider>\n );\n});\n\nTableFooter.displayName = \"TableFooter\";\n\nexport { TableFooter };\n"],"names":["TableFooter","forwardRef","className","rest","ref","jsx","TableSectionContextProvider","state","isTableHead","isTableBody","isTableFooter","children","clsx","displayName"],"mappings":"sNAMMA,EAAcC,cAAsD,EAAGC,UAAAA,KAAcC,GAAQC,IAE3FC,MAACC,EAAAA,6BAA4BC,MAAO,CAAEC,aAAa,EAAOC,aAAa,EAAOC,eAAe,GACzFC,SAACN,EAAAA,IAAA,QAAA,CAAMH,UAAWU,EAAAA,KAAK,iBAAkBV,MAAgBC,EAAMC,IAAAA,QAK3EJ,EAAYa,YAAc"}
|
|
@@ -0,0 +1,2 @@
|
|
|
1
|
+
"use strict";Object.defineProperty(exports,Symbol.toStringTag,{value:"Module"});const e=require("react/jsx-runtime"),a=require("../../../clsx-E3yX_9sL.cjs"),t=require("react"),r=require("./tableSectionContext.js"),s=t.forwardRef((({className:t,srOnly:s,sticky:l,...i},o)=>e.jsx(r.TableSectionContextProvider,{state:{isTableHead:!0,isTableBody:!1,isTableFooter:!1},children:e.jsx("thead",{className:a.clsx("jkl-table-head",t,{"jkl-table-head--sr-only":s,"jkl-table-head--sticky":l}),...i,ref:o})})));s.displayName="TableHead",exports.TableHead=s;
|
|
2
|
+
//# sourceMappingURL=TableHead.js.map
|
|
@@ -0,0 +1 @@
|
|
|
1
|
+
{"version":3,"file":"TableHead.js","sources":["../../../../src/components/table/TableHead.tsx"],"sourcesContent":["import clsx from \"clsx\";\nimport React, { forwardRef, HTMLAttributes } from \"react\";\nimport { TableSectionContextProvider } from \"./tableSectionContext\";\n\nexport interface TableHeadProps extends HTMLAttributes<HTMLTableSectionElement> {\n srOnly?: boolean;\n sticky?: boolean;\n}\n\nconst TableHead = forwardRef<HTMLTableSectionElement, TableHeadProps>(({ className, srOnly, sticky, ...rest }, ref) => {\n return (\n <TableSectionContextProvider state={{ isTableHead: true, isTableBody: false, isTableFooter: false }}>\n <thead\n className={clsx(\"jkl-table-head\", className, {\n [\"jkl-table-head--sr-only\"]: srOnly,\n [\"jkl-table-head--sticky\"]: sticky,\n })}\n {...rest}\n ref={ref}\n />\n </TableSectionContextProvider>\n );\n});\n\nTableHead.displayName = \"TableHead\";\n\nexport { TableHead };\n"],"names":["TableHead","forwardRef","className","srOnly","sticky","rest","ref","jsx","TableSectionContextProvider","state","isTableHead","isTableBody","isTableFooter","children","clsx","displayName"],"mappings":"sNASMA,EAAYC,EAAAA,YAAoD,EAAGC,UAAAA,EAAWC,OAAAA,EAAQC,OAAAA,KAAWC,GAAQC,IAEvGC,EAAAA,IAACC,EAA4BA,4BAAA,CAAAC,MAAO,CAAEC,aAAa,EAAMC,aAAa,EAAOC,eAAe,GACxFC,SAAAN,EAAAA,IAAC,QAAA,CACGL,UAAWY,EAAAA,KAAK,iBAAkBZ,EAAW,CACxC,0BAA4BC,EAC5B,yBAA2BC,OAE5BC,EACJC,IAAAA,QAMhBN,EAAUe,YAAc"}
|
|
@@ -0,0 +1,2 @@
|
|
|
1
|
+
"use strict";Object.defineProperty(exports,Symbol.toStringTag,{value:"Module"});const e=require("react/jsx-runtime"),n=require("../../../clsx-E3yX_9sL.cjs"),o=require("react");require("../icon/Icon.js");const r=require("../icon/icons/animated/ArrowVerticalAnimated.js");require("../icon/icons/animated/ArrowHorizontalAnimated.js"),require("../icon/icons/animated/PlusRemoveAnimated.js"),require("../icon/icons/ArrowDownIcon.js"),require("../icon/icons/ArrowLeftIcon.js"),require("../icon/icons/ArrowNorthEastIcon.js"),require("../icon/icons/ArrowRightIcon.js"),require("../icon/icons/ArrowUpIcon.js"),require("../icon/icons/CalendarIcon.js"),require("../icon/icons/CheckIcon.js"),require("../icon/icons/ChevronDownIcon.js"),require("../icon/icons/ChevronLeftIcon.js"),require("../icon/icons/ChevronRightIcon.js"),require("../icon/icons/ChevronUpIcon.js"),require("../icon/icons/CloseIcon.js"),require("../icon/icons/CopyIcon.js"),require("../icon/icons/DotsIcon.js"),require("../icon/icons/DragIcon.js"),require("../icon/icons/ErrorIcon.js"),require("../icon/icons/GreenCheckIcon.js"),require("../icon/icons/HamburgerIcon.js"),require("../icon/icons/InfoIcon.js"),require("../icon/icons/LinkIcon.js"),require("../icon/icons/PlusIcon.js"),require("../icon/icons/QuestionIcon.js"),require("../icon/icons/RedCrossIcon.js"),require("../icon/icons/SearchIcon.js"),require("../icon/icons/SuccessIcon.js"),require("../icon/icons/WarningIcon.js"),require("../icon/icons/MinusIcon.js"),require("../icon/icons/ThumbDownIcon.js"),require("../icon/icons/ThumbUpIcon.js"),require("../icon/icons/TrashCanIcon.js"),require("../icon/icons/PenIcon.js");const i=require("./tableContext.js"),c=o.forwardRef(((o,c)=>{const{bold:s=!0,density:a,sortable:t,className:l,scope:u="col",srOnly:j,align:q="left",children:d,onClick:I,...h}=o,{density:b}=i.useTableContext();return e.jsxs("th",{className:n.clsx("jkl-table-header",l,{"jkl-table-header--bold":s,"jkl-table-header--align-right":"right"===q,"jkl-table-header--align-center":"center"===q,"jkl-table-header--sr-only":j,"jkl-table-header--sortable":typeof t<"u"}),scope:u,onClick:e=>{null==I||I(e),null==t||t.onClick()},...h,"data-density":a||b,ref:c,children:[d,t&&e.jsx("div",{className:n.clsx("jkl-table-header__arrows",{"jkl-table-header__arrows--active":!!t.direction}),children:t.direction&&e.jsx(r.ArrowVerticalAnimated,{pointingDown:"desc"===t.direction,bold:!0})})]})}));c.displayName="TableHeader",exports.TableHeader=c;
|
|
2
|
+
//# sourceMappingURL=TableHeader.js.map
|
|
@@ -0,0 +1 @@
|
|
|
1
|
+
{"version":3,"file":"TableHeader.js","sources":["../../../../src/components/table/TableHeader.tsx"],"sourcesContent":["import clsx from \"clsx\";\nimport React, { forwardRef, MouseEventHandler, ThHTMLAttributes } from \"react\";\nimport { Density } from \"../..\";\nimport { ArrowVerticalAnimated } from \"../icon\";\nimport { useTableContext } from \"./tableContext\";\nimport { TableSortProps } from \"./utils\";\n\nexport type TableSortDirection = \"asc\" | \"desc\";\n\nexport interface TableHeaderProps extends ThHTMLAttributes<HTMLTableCellElement> {\n bold?: boolean;\n density?: Density;\n /**\n * Velg mellom venstrejustering og høyrejustering av innholdet. Typisk skal header følge innholdet i radene.\n * @default \"left\"\n */\n align?: \"left\" | \"center\" | \"right\";\n /**\n * Si om headeren gjelder for en kolonne eller en rad\n * @default \"col\"\n */\n scope?: \"col\" | \"row\";\n srOnly?: boolean;\n sortable?: TableSortProps;\n}\n\nconst TableHeader = forwardRef<HTMLTableCellElement, TableHeaderProps>((props, ref) => {\n const {\n bold = true,\n density,\n sortable,\n className,\n scope = \"col\",\n srOnly,\n align = \"left\",\n children,\n onClick,\n ...rest\n } = props;\n const { density: contextDensity } = useTableContext();\n\n const handleClick: MouseEventHandler<HTMLTableCellElement> = (e) => {\n onClick?.(e);\n sortable?.onClick();\n };\n\n return (\n <th\n className={clsx(\"jkl-table-header\", className, {\n [\"jkl-table-header--bold\"]: bold,\n [\"jkl-table-header--align-right\"]: align === \"right\",\n [\"jkl-table-header--align-center\"]: align === \"center\",\n [\"jkl-table-header--sr-only\"]: srOnly,\n [\"jkl-table-header--sortable\"]: typeof sortable !== \"undefined\",\n })}\n scope={scope}\n onClick={handleClick}\n {...rest}\n data-density={density || contextDensity}\n ref={ref}\n >\n {children}\n {sortable && (\n <div\n className={clsx(\"jkl-table-header__arrows\", {\n \"jkl-table-header__arrows--active\": Boolean(sortable.direction),\n })}\n >\n {sortable.direction && <ArrowVerticalAnimated pointingDown={sortable.direction === \"desc\"} bold />}\n </div>\n )}\n </th>\n );\n});\n\nTableHeader.displayName = \"TableHeader\";\n\nexport { TableHeader };\n"],"names":["TableHeader","forwardRef","props","ref","bold","density","sortable","className","scope","srOnly","align","children","onClick","rest","contextDensity","useTableContext","jsxs","clsx","e","jsx","direction","ArrowVerticalAnimated","pointingDown","displayName"],"mappings":"yoDA0BMA,EAAcC,EAAAA,YAAmD,CAACC,EAAOC,KACrE,MACFC,KAAAA,GAAO,EACPC,QAAAA,EACAC,SAAAA,EACAC,UAAAA,EACAC,MAAAA,EAAQ,MACRC,OAAAA,EACAC,MAAAA,EAAQ,OACRC,SAAAA,EACAC,QAAAA,KACGC,GACHX,GACIG,QAASS,GAAmBC,EAAgBA,kBAQhD,OAAAC,EAAAA,KAAC,KAAA,CACGT,UAAWU,EAAAA,KAAK,mBAAoBV,EAAW,CAC1C,yBAA2BH,EAC3B,gCAA4C,UAAVM,EAClC,iCAA6C,WAAVA,EACnC,4BAA8BD,EAC9B,oCAAsCH,EAAa,MAExDE,MAAAA,EACAI,QAfsDM,IAC1D,MAAAN,GAAAA,EAAUM,GACV,MAAAZ,GAAAA,EAAUM,SAAA,KAcFC,EACJ,eAAcR,GAAWS,EACzBX,IAAAA,EAECQ,SAAA,CAAAA,EACAL,GACGa,EAAAA,IAAC,MAAA,CACGZ,UAAWU,OAAK,2BAA4B,CACxC,qCAA4CX,EAASc,YAGxDT,SAAAL,EAASc,WAAcD,EAAAA,IAAAE,EAAAA,sBAAA,CAAsBC,aAAqC,SAAvBhB,EAASc,UAAsBhB,MAAI,QACnG,IAMhBJ,EAAYuB,YAAc"}
|
|
@@ -0,0 +1,2 @@
|
|
|
1
|
+
"use strict";Object.defineProperty(exports,Symbol.toStringTag,{value:"Module"}),require("react/jsx-runtime"),require("../../../clsx-E3yX_9sL.cjs"),require("react"),require("../../hooks/useScreen/useScreen.js"),require("../../hooks/useId/useId.js"),require("../icon/Icon.js"),require("../icon/icons/animated/ArrowVerticalAnimated.js"),require("../icon/icons/animated/ArrowHorizontalAnimated.js"),require("../icon/icons/animated/PlusRemoveAnimated.js"),require("../icon/icons/ArrowDownIcon.js"),require("../icon/icons/ArrowLeftIcon.js"),require("../icon/icons/ArrowNorthEastIcon.js"),require("../icon/icons/ArrowRightIcon.js"),require("../icon/icons/ArrowUpIcon.js"),require("../icon/icons/CalendarIcon.js"),require("../icon/icons/CheckIcon.js"),require("../icon/icons/ChevronDownIcon.js"),require("../icon/icons/ChevronLeftIcon.js"),require("../icon/icons/ChevronRightIcon.js"),require("../icon/icons/ChevronUpIcon.js"),require("../icon/icons/CloseIcon.js"),require("../icon/icons/CopyIcon.js"),require("../icon/icons/DotsIcon.js"),require("../icon/icons/DragIcon.js"),require("../icon/icons/ErrorIcon.js"),require("../icon/icons/GreenCheckIcon.js"),require("../icon/icons/HamburgerIcon.js"),require("../icon/icons/InfoIcon.js"),require("../icon/icons/LinkIcon.js"),require("../icon/icons/PlusIcon.js"),require("../icon/icons/QuestionIcon.js"),require("../icon/icons/RedCrossIcon.js"),require("../icon/icons/SearchIcon.js"),require("../icon/icons/SuccessIcon.js"),require("../icon/icons/WarningIcon.js"),require("../icon/icons/MinusIcon.js"),require("../icon/icons/ThumbDownIcon.js"),require("../icon/icons/ThumbUpIcon.js"),require("../icon/icons/TrashCanIcon.js"),require("../icon/icons/PenIcon.js"),require("../icon-button/IconButton.js");const e=require("../../../ExpandableTableRow-BQjBxKCX.cjs");require("../text-input/BaseTextArea.js"),require("../text-input/BaseTextInput.js"),require("../text-input/TextArea.js"),require("../text-input/TextInput.js"),require("./tableContext.js"),exports.TablePagination=e.TablePagination;
|
|
2
|
+
//# sourceMappingURL=TablePagination.js.map
|
|
@@ -0,0 +1 @@
|
|
|
1
|
+
{"version":3,"file":"TablePagination.js","sources":[],"sourcesContent":[],"names":[],"mappings":""}
|
|
@@ -0,0 +1,2 @@
|
|
|
1
|
+
"use strict";Object.defineProperty(exports,Symbol.toStringTag,{value:"Module"});const e=require("react/jsx-runtime"),l=require("../../../clsx-E3yX_9sL.cjs"),t=require("react"),i=require("./tableContext.js"),a=require("./tableSectionContext.js"),r=t.forwardRef((({className:r,clickable:s,children:c,...o},n)=>{const{density:d}=i.useTableContext(),{isTableBody:k}=a.useTableSectionContext(),[u,b]=t.useState((null==s?void 0:s.isClicked)||!1);return t.useEffect((()=>{b((e=>void 0!==(null==s?void 0:s.isClicked)?s.isClicked:e))}),[null==s?void 0:s.isClicked]),k&&s?e.jsx("tr",{onClick:function(e){b(!u),s.onClick(e)},onKeyPress:function(e){(" "===e.key||"Enter"===e.key)&&(e.preventDefault(),b(!u),s.onClick(e))},"data-testid":"jkl-clickable-table-row",className:l.clsx("jkl-table-row","jkl-table-row--clickable",r,{"jkl-table-row--clicked":(null==s?void 0:s.markClickedRows)&&u}),"aria-label":"Klikkbar rad","aria-pressed":null!=s&&s.markClickedRows?u?"true":"false":void 0,tabIndex:0,...o,"data-density":d,ref:n,children:c}):e.jsx("tr",{className:l.clsx("jkl-table-row",r),...o,ref:n,"data-density":d,children:c})}));r.displayName="TableRow",exports.TableRow=r;
|
|
2
|
+
//# sourceMappingURL=TableRow.js.map
|
|
@@ -0,0 +1 @@
|
|
|
1
|
+
{"version":3,"file":"TableRow.js","sources":["../../../../src/components/table/TableRow.tsx"],"sourcesContent":["import clsx from \"clsx\";\nimport React, { forwardRef, HTMLAttributes, useEffect, useState } from \"react\";\nimport { useTableContext } from \"./tableContext\";\nimport { useTableSectionContext } from \"./tableSectionContext\";\n\nexport interface ClickableRowProps {\n markClickedRows?: boolean;\n /** Lar deg kontrollere radens tilstand untenfra */\n isClicked?: boolean;\n onClick: (e: React.MouseEvent<HTMLTableRowElement, MouseEvent> | React.KeyboardEvent<HTMLTableRowElement>) => void;\n}\n\nexport interface TableRowProps extends HTMLAttributes<HTMLTableRowElement> {\n /**\n * Gir raden interaktivitet og en click-handler.\n */\n clickable?: ClickableRowProps;\n}\n\nconst TableRow = forwardRef<HTMLTableRowElement, TableRowProps>(({ className, clickable, children, ...rest }, ref) => {\n const { density } = useTableContext();\n const { isTableBody } = useTableSectionContext();\n\n const [clicked, setClicked] = useState(clickable?.isClicked || false);\n\n useEffect(() => {\n setClicked((prev) => (clickable?.isClicked !== undefined ? clickable.isClicked : prev));\n }, [clickable?.isClicked]);\n\n if (isTableBody && clickable) {\n return (\n <tr\n onClick={function handleOnClick(e) {\n setClicked(!clicked);\n clickable.onClick(e);\n }}\n onKeyPress={function handleKeyPress(e) {\n if (e.key === \" \" || e.key === \"Enter\") {\n e.preventDefault();\n setClicked(!clicked);\n clickable.onClick(e);\n }\n }}\n data-testid=\"jkl-clickable-table-row\"\n className={clsx(\"jkl-table-row\", \"jkl-table-row--clickable\", className, {\n [\"jkl-table-row--clicked\"]: clickable?.markClickedRows && clicked,\n })}\n aria-label=\"Klikkbar rad\"\n aria-pressed={clickable?.markClickedRows ? (clicked ? \"true\" : \"false\") : undefined}\n tabIndex={0}\n {...rest}\n data-density={density}\n ref={ref}\n >\n {children}\n </tr>\n );\n }\n\n return (\n <tr className={clsx(\"jkl-table-row\", className)} {...rest} ref={ref} data-density={density}>\n {children}\n </tr>\n );\n});\n\nTableRow.displayName = \"TableRow\";\n\nexport { TableRow };\n"],"names":["TableRow","forwardRef","className","clickable","children","rest","ref","density","useTableContext","isTableBody","useTableSectionContext","clicked","setClicked","useState","isClicked","useEffect","prev","jsx","onClick","e","onKeyPress","key","preventDefault","clsx","markClickedRows","tabIndex","displayName"],"mappings":"qPAmBMA,EAAWC,EAAAA,YAA+C,EAAGC,UAAAA,EAAWC,UAAAA,EAAWC,SAAAA,KAAaC,GAAQC,KACpG,MAAEC,QAAAA,GAAYC,EAAAA,mBACZC,YAAAA,GAAgBC,EAAAA,0BAEjBC,EAASC,GAAcC,EAASA,UAAA,MAAAV,OAAA,EAAAA,EAAWW,aAAa,GAM/D,OAJAC,EAAAA,WAAU,KACNH,GAAYI,QAAmC,KAAzB,MAAAb,OAAA,EAAAA,EAAWW,WAA0BX,EAAUW,UAAYE,GAAK,GACvF,CAAC,MAAAb,SAAAA,EAAWW,YAEXL,GAAeN,EAEXc,EAAAA,IAAC,KAAA,CACGC,QAAS,SAAuBC,GAC5BP,GAAYD,GACZR,EAAUe,QAAQC,EACtB,EACAC,WAAY,SAAwBD,IAClB,MAAVA,EAAEE,KAAyB,UAAVF,EAAEE,OACnBF,EAAEG,iBACFV,GAAYD,GACZR,EAAUe,QAAQC,GAE1B,EACA,cAAY,0BACZjB,UAAWqB,EAAAA,KAAK,gBAAiB,2BAA4BrB,EAAW,CACnE,0BAA2B,MAAAC,OAAA,EAAAA,EAAWqB,kBAAmBb,IAE9D,aAAW,eACX,eAAc,MAAAR,GAAAA,EAAWqB,gBAAmBb,EAAU,OAAS,aAAW,EAC1Ec,SAAU,KACNpB,EACJ,eAAcE,EACdD,IAAAA,EAECF,SAAAA,IAMRa,EAAAA,IAAA,KAAA,CAAGf,UAAWqB,EAAAA,KAAK,gBAAiBrB,MAAgBG,EAAMC,IAAAA,EAAU,eAAcC,EAC9EH,SAAAA,GACL,IAIRJ,EAAS0B,YAAc"}
|
|
@@ -0,0 +1,2 @@
|
|
|
1
|
+
"use strict";Object.defineProperty(exports,Symbol.toStringTag,{value:"Module"});const e=require("./DataTable.js"),a=require("./Table.js"),o=require("./TableBody.js"),l=require("./TableCaption.js"),r=require("./TableCell.js"),t=require("./TableColumn.js"),b=require("./TableColumnGroup.js"),T=require("./tableContext.js"),s=require("./tableSectionContext.js"),n=require("./TableFooter.js"),i=require("./TableHead.js"),x=require("./TableHeader.js"),u=require("../../../ExpandableTableRow-BQjBxKCX.cjs"),p=require("./TableRow.js"),C=require("./utils.js");exports.DataTable=e.DataTable,exports.Table=a.Table,exports.TableBody=o.TableBody,exports.TableCaption=l.TableCaption,exports.TableCell=r.TableCell,exports.TableColumn=t.TableColumn,exports.TableColumnGroup=b.TableColumnGroup,exports.TableContextProvider=T.TableContextProvider,exports.useTableContext=T.useTableContext,exports.TableSectionContextProvider=s.TableSectionContextProvider,exports.useTableSectionContext=s.useTableSectionContext,exports.TableFooter=n.TableFooter,exports.TableHead=i.TableHead,exports.TableHeader=x.TableHeader,exports.ExpandableTableRow=u.ExpandableTableRow,exports.ExpandableTableRowController=u.ExpandableTableRowController,exports.TablePagination=u.TablePagination,exports.TableRow=p.TableRow,exports.useSortableTableHeader=C.useSortableTableHeader;
|
|
2
|
+
//# sourceMappingURL=index.js.map
|
|
@@ -0,0 +1 @@
|
|
|
1
|
+
{"version":3,"file":"index.js","sources":[],"sourcesContent":[],"names":[],"mappings":""}
|
|
@@ -0,0 +1,2 @@
|
|
|
1
|
+
"use strict";Object.defineProperty(exports,Symbol.toStringTag,{value:"Module"});const e=require("react/jsx-runtime"),t=require("react"),r=t.createContext({density:void 0,collapseToList:!1});exports.TableContextProvider=({state:t,children:o})=>e.jsx(r.Provider,{value:t,children:o}),exports.useTableContext=()=>t.useContext(r);
|
|
2
|
+
//# sourceMappingURL=tableContext.js.map
|
|
@@ -0,0 +1 @@
|
|
|
1
|
+
{"version":3,"file":"tableContext.js","sources":["../../../../src/components/table/tableContext.tsx"],"sourcesContent":["import React, { createContext, useContext } from \"react\";\nimport { Density, WithChildren } from \"../..\";\n\ntype TableContext = {\n density?: Density;\n collapseToList: boolean;\n};\n\nconst tableContext = createContext<TableContext>({\n density: undefined,\n collapseToList: false,\n});\n\nexport const useTableContext = (): TableContext => useContext(tableContext);\n\nexport interface TableContextProviderProps extends WithChildren {\n state: TableContext;\n}\n\nexport const TableContextProvider: React.FC<TableContextProviderProps> = ({ state, children }) => (\n <tableContext.Provider value={state}>{children}</tableContext.Provider>\n);\n"],"names":["tableContext","createContext","density","collapseToList","state","children","jsx","Provider","value","useContext"],"mappings":"wIAQMA,EAAeC,EAAAA,cAA4B,CAC7CC,aAAS,EACTC,gBAAgB,iCASqD,EAAGC,MAAAA,EAAOC,SAAAA,KAC9EC,EAAAA,IAAAN,EAAaO,SAAb,CAAsBC,MAAOJ,EAAQC,SAAAA,4BAPX,IAAoBI,EAAAA,WAAWT"}
|
|
@@ -0,0 +1,2 @@
|
|
|
1
|
+
"use strict";Object.defineProperty(exports,Symbol.toStringTag,{value:"Module"});const e=require("react/jsx-runtime"),t=require("react"),r=t.createContext({isTableHead:!1,isTableBody:!1,isTableFooter:!1});exports.TableSectionContextProvider=({state:t,children:o})=>e.jsx(r.Provider,{value:t,children:o}),exports.useTableSectionContext=()=>t.useContext(r);
|
|
2
|
+
//# sourceMappingURL=tableSectionContext.js.map
|
|
@@ -0,0 +1 @@
|
|
|
1
|
+
{"version":3,"file":"tableSectionContext.js","sources":["../../../../src/components/table/tableSectionContext.tsx"],"sourcesContent":["import React, { createContext, useContext } from \"react\";\nimport { WithChildren } from \"../..\";\n\ntype TableSectionContext = {\n isTableHead: boolean;\n isTableBody: boolean;\n isTableFooter: boolean;\n};\n\nconst tableSectionContext = createContext<TableSectionContext>({\n isTableHead: false,\n isTableBody: false,\n isTableFooter: false,\n});\n\nexport const useTableSectionContext = (): TableSectionContext => useContext(tableSectionContext);\n\nexport interface TableSectionContextProviderProps extends WithChildren {\n state: TableSectionContext;\n}\n\nexport const TableSectionContextProvider: React.FC<TableSectionContextProviderProps> = ({ state, children }) => (\n <tableSectionContext.Provider value={state}>{children}</tableSectionContext.Provider>\n);\n"],"names":["tableSectionContext","createContext","isTableHead","isTableBody","isTableFooter","state","children","jsx","Provider","value","useContext"],"mappings":"wIASMA,EAAsBC,EAAAA,cAAmC,CAC3DC,aAAa,EACbC,aAAa,EACbC,eAAe,wCASoE,EAAGC,MAAAA,EAAOC,SAAAA,KAC5FC,EAAAA,IAAAP,EAAoBQ,SAApB,CAA6BC,MAAOJ,EAAQC,SAAAA,mCAPX,IAA2BI,EAAAA,WAAWV"}
|
|
@@ -0,0 +1,2 @@
|
|
|
1
|
+
"use strict";Object.defineProperty(exports,Symbol.toStringTag,{value:"Module"});exports.useSortableTableHeader=(e,t,o)=>{const r=r=>{const s=(o=>o===e&&"desc"===t?"asc":"desc")(r);o(r,s)};return{getSortProps:o=>({sortable:{onClick:()=>r(o),direction:e===o?t:void 0}})}};
|
|
2
|
+
//# sourceMappingURL=utils.js.map
|
|
@@ -0,0 +1 @@
|
|
|
1
|
+
{"version":3,"file":"utils.js","sources":["../../../../src/components/table/utils.ts"],"sourcesContent":["import { TableSortDirection } from \"./TableHeader\";\n\nexport type TableSortProps = ReturnType<ReturnType<typeof useSortableTableHeader>[\"getSortProps\"]>[\"sortable\"];\n\nexport const useSortableTableHeader = (\n activeSortKey: string,\n activeSortDirection: TableSortDirection,\n onChange: (newSortKey: string, newSortDirection: TableSortDirection) => void,\n) => {\n const calculateNewSortParameters = (sortKey: string): TableSortDirection => {\n if (sortKey === activeSortKey && activeSortDirection === \"desc\") {\n return \"asc\";\n }\n\n return \"desc\";\n };\n\n const handleClick = (sortKey: string) => {\n const newSortParameters = calculateNewSortParameters(sortKey);\n onChange(sortKey, newSortParameters);\n };\n\n const getSortProps = (sortKey: string) => {\n return {\n sortable: {\n onClick: () => handleClick(sortKey),\n direction: activeSortKey === sortKey ? activeSortDirection : undefined,\n },\n };\n };\n\n return {\n getSortProps,\n };\n};\n"],"names":["activeSortKey","activeSortDirection","onChange","handleClick","sortKey","newSortParameters","calculateNewSortParameters","getSortProps","sortable","onClick","direction"],"mappings":"+GAIsC,CAClCA,EACAC,EACAC,KAEM,MAQAC,EAAeC,IACX,MAAAC,EAT0BD,IAC5BA,IAAYJ,GAAyC,SAAxBC,EACtB,MAGJ,OAImBK,CAA2BF,GACrDF,EAASE,EAASC,EAAiB,EAYhC,MAAA,CACHE,aAVkBH,IAAAA,CAEdI,SAAU,CACNC,QAAS,IAAMN,EAAYC,GAC3BM,UAAWV,IAAkBI,EAAUH,OAAsB,KAMrE"}
|
|
@@ -0,0 +1,2 @@
|
|
|
1
|
+
"use strict";Object.defineProperty(exports,Symbol.toStringTag,{value:"Module"});const e=require("react/jsx-runtime"),r=require("../../../clsx-E3yX_9sL.cjs"),t=require("react"),a=t.forwardRef(((a,n)=>{const{component:o="a","aria-selected":l,className:i,componentProps:s={},onBeforeKeyboardNavigation:c,...u}=a,d=o,b=t.useCallback(((e,r)=>{c&&!1===c(e,r)||(r.focus(),r.click())}),[c]),g=t.useCallback((e=>{var r,t,a;if("ArrowLeft"===e.key){const a=e.currentTarget,n=e.currentTarget.previousSibling;b(a,n||(null==(t=null==(r=a.parentElement)?void 0:r.lastChild)?void 0:t.previousSibling))}if("ArrowRight"===e.key){const r=e.currentTarget,t=e.currentTarget.nextSibling;t&&"A"===t.nodeName?b(r,t):b(r,null==(a=r.parentElement)?void 0:a.firstChild)}}),[b]);return e.jsx(d,{ref:n,...u,...s,role:"tab","aria-selected":l,className:r.clsx("jkl-tab",i),onKeyDown:g,tabIndex:l?0:-1})}));a.displayName="NavTab",exports.NavTab=a;
|
|
2
|
+
//# sourceMappingURL=NavTab.js.map
|
|
@@ -0,0 +1 @@
|
|
|
1
|
+
{"version":3,"file":"NavTab.js","sources":["../../../../src/components/tabs/NavTab.tsx"],"sourcesContent":["import clsx from \"clsx\";\nimport React, { type ElementType, forwardRef, useCallback, type AnchorHTMLAttributes } from \"react\";\n\nexport interface NavTabProps<T extends object = Record<string, unknown>>\n extends AnchorHTMLAttributes<HTMLAnchorElement> {\n /** Sett til true for den nåværende fanen. False på resten. */\n \"aria-selected\": boolean;\n className?: string;\n id?: string;\n /**\n * Overstyr hvilken komponent som skal brukes, for eksempel hvis du har en Link-komponent fra en router.\n * @default \"a\"\n */\n component?: ElementType;\n /** Send inn custom props til `component`. Nyttig om routeren din har noe fancy custom greier. */\n componentProps?: T;\n /** Vanlig alternativ til `href` i routere. */\n to?: string;\n href?: string;\n /**\n * Hook for å kunne stoppe default oppførsel ved tastaturnavigasjon.\n *\n * Om default oppførsel ikke fungerer for deg og du mister tastaturfokus etter\n * navigasjon kan du returnere `false` her og sørge for korrekt oppførsel selv.\n */\n onBeforeKeyboardNavigation?: (from: HTMLAnchorElement, to: HTMLAnchorElement) => boolean | void;\n}\n\nexport const NavTab = forwardRef<HTMLAnchorElement, NavTabProps>((props, ref) => {\n const {\n component = \"a\",\n \"aria-selected\": selected,\n className,\n componentProps = {},\n onBeforeKeyboardNavigation: onBeforeNavigate,\n ...rest\n } = props;\n\n const Component = component;\n\n const navigate = useCallback(\n (from: HTMLAnchorElement, to: HTMLAnchorElement) => {\n if (onBeforeNavigate) {\n // Åpne for å stoppe selve navigeringen hvis det skulle være behov for å gjøre noe custom med fokus og navigasjon\n const doNavigate = onBeforeNavigate(from, to);\n if (doNavigate === false) {\n return;\n }\n }\n\n to.focus();\n // Click brukes for å være router-agnostisk\n to.click();\n },\n [onBeforeNavigate],\n );\n\n const handleOnKeyDown = useCallback(\n (event: React.KeyboardEvent<HTMLAnchorElement>) => {\n if (event.key === \"ArrowLeft\") {\n const current = event.currentTarget;\n const prev = event.currentTarget.previousSibling;\n\n if (prev) {\n navigate(current, prev as HTMLAnchorElement);\n } else {\n navigate(current, current.parentElement?.lastChild?.previousSibling as HTMLAnchorElement);\n }\n }\n\n if (event.key === \"ArrowRight\") {\n const current = event.currentTarget;\n const next = event.currentTarget.nextSibling;\n\n // skip the focus indicator element\n if (next && next.nodeName === \"A\") {\n navigate(current, next as HTMLAnchorElement);\n } else {\n navigate(current, current.parentElement?.firstChild as HTMLAnchorElement);\n }\n }\n },\n [navigate],\n );\n\n return (\n <Component\n ref={ref}\n {...rest}\n {...componentProps}\n role=\"tab\"\n aria-selected={selected}\n className={clsx(\"jkl-tab\", className)}\n onKeyDown={handleOnKeyDown}\n // En faneliste skal være én fokuserbar gruppe.\n // Piltaster brukes for å veksle mellom faner.\n // Bare den aktive fanen skal være fokuserbar med tastatur.\n tabIndex={selected ? 0 : -1}\n />\n );\n});\n\nNavTab.displayName = \"NavTab\";\n"],"names":["NavTab","forwardRef","props","ref","component","selected","className","componentProps","onBeforeKeyboardNavigation","onBeforeNavigate","rest","Component","navigate","useCallback","from","to","focus","click","handleOnKeyDown","event","key","current","currentTarget","prev","previousSibling","_b","_a","parentElement","lastChild","next","nextSibling","nodeName","_c","firstChild","jsx","role","clsx","onKeyDown","tabIndex","displayName"],"mappings":"gLA4BaA,EAASC,EAAAA,YAA2C,CAACC,EAAOC,KAC/D,MACFC,UAAAA,EAAY,IACZ,gBAAiBC,EACjBC,UAAAA,EACAC,eAAAA,EAAiB,CAAC,EAClBC,2BAA4BC,KACzBC,GACHR,EAEES,EAAYP,EAEZQ,EAAWC,EAAAA,aACb,CAACC,EAAyBC,KAClBN,IAGmB,IADAA,EAAiBK,EAAMC,KAM9CA,EAAGC,QAEHD,EAAGE,QAAM,GAEb,CAACR,IAGCS,EAAkBL,EAAAA,aACnBM,cACO,GAAc,cAAdA,EAAMC,IAAqB,CAC3B,MAAMC,EAAUF,EAAMG,cAChBC,EAAOJ,EAAMG,cAAcE,gBAG7BZ,EAASS,EADTE,IAGkB,OAAAE,EAAA,OAAAC,EAAAL,EAAQM,sBAARD,EAAuBE,kBAAvBH,EAAkCD,iBAE5D,CAEI,GAAc,eAAdL,EAAMC,IAAsB,CAC5B,MAAMC,EAAUF,EAAMG,cAChBO,EAAOV,EAAMG,cAAcQ,YAG7BD,GAA0B,MAAlBA,EAAKE,SACbnB,EAASS,EAASQ,GAETjB,EAAAS,EAAS,OAAAW,EAAAX,EAAQM,oBAARK,EAAAA,EAAuBC,WAEjD,IAEJ,CAACrB,IAID,OAAAsB,EAAAA,IAACvB,EAAA,CACGR,IAAAA,KACIO,KACAH,EACJ4B,KAAK,MACL,gBAAe9B,EACfC,UAAW8B,EAAAA,KAAK,UAAW9B,GAC3B+B,UAAWnB,EAIXoB,SAAUjC,EAAW,GAAI,GAAA,IAKrCL,EAAOuC,YAAc"}
|
|
@@ -0,0 +1,2 @@
|
|
|
1
|
+
"use strict";Object.defineProperty(exports,Symbol.toStringTag,{value:"Module"});const e=require("react/jsx-runtime"),l=require("../../../clsx-E3yX_9sL.cjs"),t=require("react");exports.NavTabs=({"aria-label":r,children:s,className:a,density:i="comfortable",...n})=>{var c;const[u,d]=t.useState(),[o,f]=t.useState(),m=t.useRef(null),b=t.useRef(null),v=t.useRef(null),j=t.Children.toArray(s).findIndex((e=>!!t.isValidElement(e)&&!0===e.props["aria-selected"]));return t.useEffect((()=>{b.current&&d(b.current.getBoundingClientRect()),v.current&&f(v.current.getBoundingClientRect())}),[j,i]),e.jsx("div",{...n,"data-layout-density":i,className:l.clsx("jkl-tabs",a),ref:m,children:e.jsxs("div",{role:"tablist","aria-label":r,ref:b,className:"jkl-tablist",children:[t.Children.map(s,((e,l)=>t.isValidElement(e)?t.cloneElement(e,{ref:j===l?v:void 0}):null)),e.jsx("span",{className:"jkl-tablist__indicator",style:{left:((null==o?void 0:o.left)||0)-((null==u?void 0:u.left)||0)+((null==(c=m.current)?void 0:c.scrollLeft)||0),bottom:-1,width:((null==o?void 0:o.width)||0)-("compact"===i?32:38)}})]})})};
|
|
2
|
+
//# sourceMappingURL=NavTabs.js.map
|
|
@@ -0,0 +1 @@
|
|
|
1
|
+
{"version":3,"file":"NavTabs.js","sources":["../../../../src/components/tabs/NavTabs.tsx"],"sourcesContent":["import clsx from \"clsx\";\nimport React, { useEffect, useRef, useState } from \"react\";\nimport type { Density, WithChildren } from \"../..\";\n\nexport interface NavTabsProps extends WithChildren {\n \"aria-label\"?: string;\n className?: string;\n density?: Density;\n id?: string;\n}\n\nexport const NavTabs = ({\n \"aria-label\": ariaLabel,\n children,\n className,\n density = \"comfortable\",\n ...rest\n}: NavTabsProps) => {\n const [tabsRect, setTabsRect] = useState<DOMRect>();\n const [activeRect, setActiveRect] = useState<DOMRect>();\n\n const scrollRef = useRef<HTMLDivElement>(null);\n const tablistRef = useRef<HTMLDivElement>(null);\n const activeRef = useRef<HTMLElement>(null);\n\n const selectedIndex = React.Children.toArray(children).findIndex((navTab) => {\n if (!React.isValidElement(navTab)) {\n return false;\n }\n return navTab.props[\"aria-selected\"] === true;\n });\n\n useEffect(() => {\n if (tablistRef.current) {\n setTabsRect(tablistRef.current.getBoundingClientRect());\n }\n if (activeRef.current) {\n setActiveRect(activeRef.current.getBoundingClientRect());\n }\n }, [selectedIndex, density]);\n\n return (\n <div {...rest} data-layout-density={density} className={clsx(\"jkl-tabs\", className)} ref={scrollRef}>\n <div role=\"tablist\" aria-label={ariaLabel} ref={tablistRef} className=\"jkl-tablist\">\n {React.Children.map(children, (child, index) => {\n return React.isValidElement(child)\n ? React.cloneElement<any>(child, {\n ref: selectedIndex === index ? activeRef : undefined,\n })\n : null;\n })}\n <span\n className=\"jkl-tablist__indicator\"\n style={{\n left: (activeRect?.left || 0) - (tabsRect?.left || 0) + (scrollRef.current?.scrollLeft || 0),\n bottom: -1,\n width: (activeRect?.width || 0) - (density === \"compact\" ? 32 : 38),\n }}\n />\n </div>\n </div>\n );\n};\n"],"names":["ariaLabel","children","className","density","rest","tabsRect","setTabsRect","useState","activeRect","setActiveRect","scrollRef","useRef","tablistRef","activeRef","selectedIndex","React","Children","toArray","findIndex","navTab","isValidElement","props","useEffect","current","getBoundingClientRect","jsx","clsx","ref","jsxs","role","map","child","index","cloneElement","style","left","_a","scrollLeft","bottom","width"],"mappings":"gMAWuB,EACnB,aAAcA,EACdC,SAAAA,EACAC,UAAAA,EACAC,QAAAA,EAAU,iBACPC,YAEH,MAAOC,EAAUC,GAAeC,EAAkBA,YAC3CC,EAAYC,GAAiBF,EAAkBA,WAEhDG,EAAYC,SAAuB,MACnCC,EAAaD,SAAuB,MACpCE,EAAYF,SAAoB,MAEhCG,EAAgBC,EAAMC,SAASC,QAAQhB,GAAUiB,WAAWC,KACzDJ,EAAMK,eAAeD,KAGe,IAAlCA,EAAOE,MAAM,mBAGxBC,OAAAA,EAAAA,WAAU,KACFV,EAAWW,SACCjB,EAAAM,EAAWW,QAAQC,yBAE/BX,EAAUU,SACId,EAAAI,EAAUU,QAAQC,wBAAuB,GAE5D,CAACV,EAAeX,IAGfsB,MAAC,UAAQrB,EAAM,sBAAqBD,EAASD,UAAWwB,EAAAA,KAAK,WAAYxB,GAAYyB,IAAKjB,EACtFT,SAAA2B,OAAC,OAAIC,KAAK,UAAU,aAAY7B,EAAW2B,IAAKf,EAAYV,UAAU,cACjED,SAAA,CAAAc,EAAMC,SAASc,IAAI7B,GAAU,CAAC8B,EAAOC,IAC3BjB,EAAMK,eAAeW,GACtBhB,EAAMkB,aAAkBF,EAAO,CAC3BJ,IAAKb,IAAkBkB,EAAQnB,OAAY,IAE/C,OAEVY,EAAAA,IAAC,OAAA,CACGvB,UAAU,yBACVgC,MAAO,CACHC,OAAO,MAAA3B,OAAA,EAAAA,EAAY2B,OAAQ,KAAM,MAAA9B,SAAAA,EAAU8B,OAAQ,KAAM,OAAAC,EAAA1B,EAAUa,gBAAVa,EAAmBC,aAAc,GAC1FC,QACA,EAAAC,QAAQ,MAAA/B,OAAAA,EAAAA,EAAY+B,QAAS,IAAkB,YAAZpC,EAAwB,GAAK,WAIhF"}
|
|
@@ -0,0 +1,2 @@
|
|
|
1
|
+
"use strict";Object.defineProperty(exports,Symbol.toStringTag,{value:"Module"});const e=require("react/jsx-runtime"),r=require("../../../clsx-E3yX_9sL.cjs"),t=require("react").forwardRef(((t,s)=>{const a=r.clsx("jkl-tab",t.className);return e.jsx("button",{role:"tab",type:"button",ref:s,...t,className:a})}));t.displayName="Tab",exports.Tab=t;
|
|
2
|
+
//# sourceMappingURL=Tab.js.map
|
|
@@ -0,0 +1 @@
|
|
|
1
|
+
{"version":3,"file":"Tab.js","sources":["../../../../src/components/tabs/Tab.tsx"],"sourcesContent":["import clsx from \"clsx\";\nimport React from \"react\";\nimport { WithChildren } from \"../..\";\n\nexport interface TabProps extends WithChildren {\n className?: string;\n}\n\n/**\n * En Tab til bruk som element i TabList. Ikke funksjonell utenfor et TabList element.\n *\n * Docs: https://jokul.fremtind.no/komponenter/tabs\n */\nexport const Tab = React.forwardRef<HTMLButtonElement, TabProps>((props, ref) => {\n const classes = clsx(\"jkl-tab\", props.className);\n\n return <button role=\"tab\" type=\"button\" ref={ref} {...props} className={classes} />;\n});\n\nTab.displayName = \"Tab\";\n"],"names":["Tab","forwardRef","props","ref","classes","clsx","className","jsx","role","type","displayName"],"mappings":"6JAaaA,mBAAYC,YAAwC,CAACC,EAAOC,KACrE,MAAMC,EAAUC,EAAAA,KAAK,UAAWH,EAAMI,WAE/B,OAAAC,EAAAA,IAAC,SAAO,CAAAC,KAAK,MAAMC,KAAK,SAASN,IAAAA,KAAcD,EAAOI,UAAWF,GAAS,IAGrFJ,EAAIU,YAAc"}
|
|
@@ -0,0 +1,2 @@
|
|
|
1
|
+
"use strict";Object.defineProperty(exports,Symbol.toStringTag,{value:"Module"});const e=require("react/jsx-runtime"),t=require("../../../clsx-E3yX_9sL.cjs"),n=require("react"),r=require("./tabsContext.js");exports.TabList=({children:l,className:i,...s})=>{const{activeIndex:o,setActiveIndex:a,tabIDs:c,tabPanelIDs:u,...d}=s,{density:f}=r.useTabsContext(),[b,v]=n.useState(),[g,m]=n.useState(),x=n.useRef(null),p=n.useRef(null);n.useEffect((()=>{x.current&&v(x.current.getBoundingClientRect()),p.current&&m(p.current.getBoundingClientRect())}),[o,f]);const C=n.useCallback((e=>{var t,n,r;if("ArrowLeft"===e.key){const r=e.currentTarget,l=e.currentTarget.previousSibling;l?l.focus():(null==(n=null==(t=r.parentElement)?void 0:t.lastChild)?void 0:n.previousSibling).focus()}if("ArrowRight"===e.key){const t=e.currentTarget,n=e.currentTarget.nextSibling;n&&"BUTTON"===n.nodeName?n.focus():(null==(r=t.parentElement)?void 0:r.firstChild).focus()}}),[]);return e.jsxs("div",{role:"tablist",ref:x,...d,className:t.clsx("jkl-tablist",i),children:[n.Children.map(l,((e,t)=>{const r=o===t;return n.isValidElement(e)?n.cloneElement(e,{onKeyDown:C,tabIndex:r?void 0:-1,ref:r?p:void 0,onClick:()=>a(t),"aria-selected":r,"aria-controls":u[t],id:c[t]}):null})),e.jsx("span",{className:"jkl-tablist__indicator",style:{left:((null==g?void 0:g.left)||0)-((null==b?void 0:b.left)||0),bottom:-1,width:((null==g?void 0:g.width)||0)-("compact"===f?32:38)}})]})};
|
|
2
|
+
//# sourceMappingURL=TabList.js.map
|
|
@@ -0,0 +1 @@
|
|
|
1
|
+
{"version":3,"file":"TabList.js","sources":["../../../../src/components/tabs/TabList.tsx"],"sourcesContent":["import clsx from \"clsx\";\nimport React, { useCallback, useEffect, useRef, useState } from \"react\";\nimport { WithChildren } from \"../..\";\nimport { useTabsContext } from \"./tabsContext\";\n\nexport interface TabListProps extends WithChildren {\n \"aria-label\"?: string;\n className?: string;\n}\n\nexport interface InjectedProps {\n activeIndex: number;\n setActiveIndex: React.Dispatch<React.SetStateAction<number>>;\n tabIDs: string[];\n tabPanelIDs: string[];\n}\n\n/**\n * Konteiner for elementer av typen Tab. Ikke funksjonell utenfor et Tabs element.\n *\n * Docs: https://jokul.fremtind.no/komponenter/tabs\n */\nexport const TabList = ({ children, className, ...injected }: TabListProps) => {\n // props injected by Tabs\n const { activeIndex, setActiveIndex, tabIDs, tabPanelIDs, ...rest } = injected as TabListProps & InjectedProps;\n const { density } = useTabsContext();\n\n const [tabsRect, setTabsRect] = useState<DOMRect>();\n const [activeRect, setActiveRect] = useState<DOMRect>();\n\n const tabsRef = useRef<HTMLDivElement>(null);\n const activeRef = useRef<HTMLButtonElement>(null);\n\n useEffect(() => {\n if (tabsRef.current) {\n setTabsRect(tabsRef.current.getBoundingClientRect());\n }\n if (activeRef.current) {\n setActiveRect(activeRef.current.getBoundingClientRect());\n }\n }, [activeIndex, density]);\n\n const keyDownHandler = useCallback((event: React.KeyboardEvent<HTMLButtonElement>) => {\n if (event.key === \"ArrowLeft\") {\n const current = event.currentTarget;\n const prev = event.currentTarget.previousSibling;\n\n if (prev) {\n (prev as HTMLElement).focus();\n } else {\n (current.parentElement?.lastChild?.previousSibling as HTMLElement).focus();\n }\n }\n\n if (event.key === \"ArrowRight\") {\n const current = event.currentTarget;\n const next = event.currentTarget.nextSibling;\n\n // skip the focus indicator element\n if (next && next.nodeName === \"BUTTON\") {\n (next as HTMLElement).focus();\n } else {\n (current.parentElement?.firstChild as HTMLElement).focus();\n }\n }\n }, []);\n\n return (\n <div role=\"tablist\" ref={tabsRef} {...rest} className={clsx(\"jkl-tablist\", className)}>\n {React.Children.map(children, (tab, tabIndex) => {\n const isActive = activeIndex === tabIndex;\n\n return React.isValidElement(tab)\n ? React.cloneElement<any>(tab, {\n onKeyDown: keyDownHandler,\n tabIndex: isActive ? undefined : -1,\n ref: isActive ? activeRef : undefined,\n onClick: () => setActiveIndex(tabIndex),\n \"aria-selected\": isActive,\n \"aria-controls\": tabPanelIDs[tabIndex],\n id: tabIDs[tabIndex],\n })\n : null;\n })}\n\n <span\n className=\"jkl-tablist__indicator\"\n style={{\n left: (activeRect?.left || 0) - (tabsRect?.left || 0),\n bottom: -1,\n width: (activeRect?.width || 0) - (density === \"compact\" ? 32 : 38),\n }}\n />\n </div>\n );\n};\n"],"names":["children","className","injected","activeIndex","setActiveIndex","tabIDs","tabPanelIDs","rest","density","useTabsContext","tabsRect","setTabsRect","useState","activeRect","setActiveRect","tabsRef","useRef","activeRef","useEffect","current","getBoundingClientRect","keyDownHandler","useCallback","event","key","currentTarget","prev","previousSibling","focus","_b","_a","parentElement","lastChild","next","nextSibling","nodeName","_c","firstChild","jsxs","role","ref","clsx","React","Children","map","tab","tabIndex","isActive","isValidElement","cloneElement","onKeyDown","onClick","id","jsx","style","left","bottom","width"],"mappings":"8NAsBuB,EAAGA,SAAAA,EAAUC,UAAAA,KAAcC,MAE9C,MAAQC,YAAAA,EAAaC,eAAAA,EAAgBC,OAAAA,EAAQC,YAAAA,KAAgBC,GAASL,GAC9DM,QAAAA,GAAYC,EAAAA,kBAEbC,EAAUC,GAAeC,EAAkBA,YAC3CC,EAAYC,GAAiBF,EAAkBA,WAEhDG,EAAUC,SAAuB,MACjCC,EAAYD,SAA0B,MAE5CE,EAAAA,WAAU,KACFH,EAAQI,SACIR,EAAAI,EAAQI,QAAQC,yBAE5BH,EAAUE,SACIL,EAAAG,EAAUE,QAAQC,wBAAuB,GAE5D,CAACjB,EAAaK,IAEX,MAAAa,EAAiBC,eAAaC,cAC5B,GAAc,cAAdA,EAAMC,IAAqB,CAC3B,MAAML,EAAUI,EAAME,cAChBC,EAAOH,EAAME,cAAcE,gBAE7BD,EACCA,EAAqBE,SAErB,OAAAC,EAAA,OAAAC,EAAAX,EAAQY,oBAAR,EAAAD,EAAuBE,kBAAvBH,EAAkCF,iBAAgCC,OAE3E,CAEI,GAAc,eAAdL,EAAMC,IAAsB,CAC5B,MAAML,EAAUI,EAAME,cAChBQ,EAAOV,EAAME,cAAcS,YAG7BD,GAA0B,WAAlBA,EAAKE,SACZF,EAAqBL,SAErB,OAAAQ,EAAAjB,EAAQY,oBAAR,EAAAK,EAAuBC,YAA2BT,OAE3D,IACD,IAEH,OACKU,EAAAA,KAAA,MAAA,CAAIC,KAAK,UAAUC,IAAKzB,KAAaR,EAAMN,UAAWwC,EAAAA,KAAK,cAAexC,GACtED,SAAA,CAAA0C,EAAMC,SAASC,IAAI5C,GAAU,CAAC6C,EAAKC,KAChC,MAAMC,EAAW5C,IAAgB2C,EAEjC,OAAOJ,EAAMM,eAAeH,GACtBH,EAAMO,aAAkBJ,EAAK,CACzBK,UAAW7B,EACXyB,SAAUC,OAAW,GAAY,EACjCP,IAAKO,EAAW9B,OAAY,EAC5BkC,QAAS,IAAM/C,EAAe0C,GAC9B,gBAAiBC,EACjB,gBAAiBzC,EAAYwC,GAC7BM,GAAI/C,EAAOyC,KAEf,QAGVO,EAAAA,IAAC,OAAA,CACGpD,UAAU,yBACVqD,MAAO,CACHC,OAAO,MAAA1C,SAAAA,EAAY0C,OAAQ,KAAM,MAAA7C,OAAAA,EAAAA,EAAU6C,OAAQ,GACnDC,QACA,EAAAC,QAAQ,MAAA5C,OAAA,EAAAA,EAAY4C,QAAS,IAAkB,YAAZjD,EAAwB,GAAK,SAG5E"}
|
|
@@ -0,0 +1,2 @@
|
|
|
1
|
+
"use strict";Object.defineProperty(exports,Symbol.toStringTag,{value:"Module"});const e=require("react/jsx-runtime"),r=require("../../../clsx-E3yX_9sL.cjs");exports.TabPanel=({children:s,...t})=>{const l=r.clsx("jkl-tabpanel",t.className);return e.jsx("div",{role:"tabpanel",...t,className:l,children:s})};
|
|
2
|
+
//# sourceMappingURL=TabPanel.js.map
|
|
@@ -0,0 +1 @@
|
|
|
1
|
+
{"version":3,"file":"TabPanel.js","sources":["../../../../src/components/tabs/TabPanel.tsx"],"sourcesContent":["import clsx from \"clsx\";\nimport React from \"react\";\nimport { WithChildren } from \"../..\";\n\nexport interface TabPanelProps extends WithChildren {\n className?: string;\n}\n\n/**\n * Konteiner for innhold i et tabbet brukergrensesnitt. Ikke funksjonell utenfor et Tabs element.\n *\n * Docs: https://jokul.fremtind.no/komponenter/tabs\n */\nexport const TabPanel = ({ children, ...props }: TabPanelProps) => {\n const classes = clsx(\"jkl-tabpanel\", props.className);\n\n return (\n <div role=\"tabpanel\" {...props} className={classes}>\n {children}\n </div>\n );\n};\n"],"names":["children","props","classes","clsx","className","jsx","role"],"mappings":"8KAawB,EAAGA,SAAAA,KAAaC,MACpC,MAAMC,EAAUC,EAAAA,KAAK,eAAgBF,EAAMG,WAGvC,OAAAC,MAAC,OAAIC,KAAK,cAAeL,EAAOG,UAAWF,EACtCF,SAAAA,GACL"}
|
|
@@ -0,0 +1,2 @@
|
|
|
1
|
+
"use strict";Object.defineProperty(exports,Symbol.toStringTag,{value:"Module"});const e=require("react/jsx-runtime"),t=require("../../../clsx-E3yX_9sL.cjs"),r=require("react"),s=require("../../hooks/usePreviousValue/usePreviousValue.js");require("../../hooks/useScreen/useScreen.js"),require("../../hooks/useId/useId.js");const n=require("./tabsContext.js");let a=(e=21)=>crypto.getRandomValues(new Uint8Array(e)).reduce(((e,t)=>e+=(t&=63)<36?t.toString(36):t<62?(t-26).toString(36).toUpperCase():t>62?"-":"_"),"");exports.Tabs=({onChange:i,defaultTab:l,density:o,...u})=>{const[c,d]=r.useState(l??0),h=s.usePreviousValue(c);r.useEffect((()=>{void 0!==h&&h!==c&&i&&i(c)}),[i,h,c]);const[b,j]=r.useState([]),[m,x]=r.useState([]),p=r.useCallback((()=>{const e=r.Children.toArray(u.children)[0];r.isValidElement(e)&&r.Children.forEach(e.props.children,(e=>{r.isValidElement(e)&&(j((e=>[...e,`jkl-tab-${a(8)}`])),x((e=>[...e,`jkl-tabpanel-${a(8)}`])))}))}),[u.children]);return r.useEffect((()=>{p()}),[p]),e.jsx(n.TabsContextProvider,{state:{density:o},children:e.jsxs("div",{...u,className:t.clsx("jkl-tabs",u.className),"data-density":o,children:[(()=>{const e=r.Children.toArray(u.children)[0];if(r.isValidElement(e))return r.cloneElement(e,{activeIndex:c,setActiveIndex:d,tabIDs:b,tabPanelIDs:m})})(),r.Children.map(u.children,((e,t)=>{if(!r.isValidElement(e)||0===t)return;const s=t-1;return s===c?r.cloneElement(e,{"aria-labelledby":b[s],id:m[s]}):null}))]})})};
|
|
2
|
+
//# sourceMappingURL=Tabs.js.map
|
|
@@ -0,0 +1 @@
|
|
|
1
|
+
{"version":3,"file":"Tabs.js","sources":["../../../../../../node_modules/.pnpm/nanoid@3.3.7/node_modules/nanoid/index.browser.js","../../../../src/components/tabs/Tabs.tsx"],"sourcesContent":["import { urlAlphabet } from './url-alphabet/index.js'\nlet random = bytes => crypto.getRandomValues(new Uint8Array(bytes))\nlet customRandom = (alphabet, defaultSize, getRandom) => {\n let mask = (2 << (Math.log(alphabet.length - 1) / Math.LN2)) - 1\n let step = -~((1.6 * mask * defaultSize) / alphabet.length)\n return (size = defaultSize) => {\n let id = ''\n while (true) {\n let bytes = getRandom(step)\n let j = step\n while (j--) {\n id += alphabet[bytes[j] & mask] || ''\n if (id.length === size) return id\n }\n }\n }\n}\nlet customAlphabet = (alphabet, size = 21) =>\n customRandom(alphabet, size, random)\nlet nanoid = (size = 21) =>\n crypto.getRandomValues(new Uint8Array(size)).reduce((id, byte) => {\n byte &= 63\n if (byte < 36) {\n id += byte.toString(36)\n } else if (byte < 62) {\n id += (byte - 26).toString(36).toUpperCase()\n } else if (byte > 62) {\n id += '-'\n } else {\n id += '_'\n }\n return id\n }, '')\nexport { nanoid, customAlphabet, customRandom, urlAlphabet, random }\n","import clsx from \"clsx\";\nimport { nanoid } from \"nanoid\";\nimport React, { useState, useCallback, useEffect } from \"react\";\nimport { Density, WithChildren } from \"../..\";\nimport { usePreviousValue } from \"../../hooks\";\nimport { InjectedProps, TabListProps } from \"./TabList\";\nimport { TabPanelProps } from \"./TabPanel\";\nimport { TabsContextProvider } from \"./tabsContext\";\n\nexport interface TabsProps extends WithChildren {\n className?: string;\n density?: Density;\n onChange?: (tabIndex: number) => void;\n defaultTab?: number;\n}\n\n/**\n * Konteiner for et grensesnitt hvor man kan tabbe mellom innhold.\n * Må inneholde en TabList etterfulgt av en eller flere TabPanel.\n *\n * Docs: https://jokul.fremtind.no/komponenter/tabs\n */\nexport const Tabs = ({ onChange, defaultTab, density, ...props }: TabsProps) => {\n const [activeIndex, setActiveIndex] = useState(defaultTab ?? 0);\n\n const previousTabIndex = usePreviousValue(activeIndex);\n\n useEffect(() => {\n if (previousTabIndex !== undefined && previousTabIndex !== activeIndex && onChange) {\n onChange(activeIndex);\n }\n }, [onChange, previousTabIndex, activeIndex]);\n\n const [tabIDs, setTabIDs] = useState<string[]>([]);\n const [tabPanelIDs, setTabPanelIds] = useState<string[]>([]);\n\n const resolveIDs = useCallback(() => {\n const tabList = React.Children.toArray(props.children)[0];\n\n if (!React.isValidElement(tabList)) return;\n\n React.Children.forEach(tabList.props.children, (tab) => {\n if (!React.isValidElement(tab)) return;\n\n setTabIDs((prev) => [...prev, `jkl-tab-${nanoid(8)}`]);\n setTabPanelIds((prev) => [...prev, `jkl-tabpanel-${nanoid(8)}`]);\n });\n }, [props.children]);\n\n const renderTabList = () => {\n const tabList = React.Children.toArray(props.children)[0];\n\n if (!React.isValidElement<TabListProps & InjectedProps>(tabList)) return;\n\n return React.cloneElement<TabListProps & InjectedProps>(tabList, {\n activeIndex,\n setActiveIndex,\n tabIDs,\n tabPanelIDs,\n });\n };\n\n const renderTabPanels = () => {\n return React.Children.map(props.children, (child, childIndex) => {\n if (!React.isValidElement<TabPanelProps & React.HTMLAttributes<HTMLDivElement>>(child) || childIndex === 0)\n return;\n\n const tabPanelIndex = childIndex - 1;\n\n return tabPanelIndex === activeIndex\n ? React.cloneElement<TabPanelProps & React.HTMLAttributes<HTMLDivElement>>(child, {\n \"aria-labelledby\": tabIDs[tabPanelIndex],\n id: tabPanelIDs[tabPanelIndex],\n })\n : null;\n });\n };\n\n useEffect(() => {\n resolveIDs();\n }, [resolveIDs]);\n\n return (\n <TabsContextProvider state={{ density }}>\n <div {...props} className={clsx(\"jkl-tabs\", props.className)} data-density={density}>\n {renderTabList()}\n {renderTabPanels()}\n </div>\n </TabsContextProvider>\n );\n};\n"],"names":["nanoid","size","crypto","getRandomValues","Uint8Array","reduce","id","byte","toString","toUpperCase","onChange","defaultTab","density","props","activeIndex","setActiveIndex","useState","previousTabIndex","usePreviousValue","useEffect","tabIDs","setTabIDs","tabPanelIDs","setTabPanelIds","resolveIDs","useCallback","tabList","React","Children","toArray","children","isValidElement","forEach","tab","prev","TabsContextProvider","state","jsxs","className","clsx","cloneElement","renderTabList","map","child","childIndex","tabPanelIndex"],"mappings":"sWAmBA,IAAIA,EAAS,CAACC,EAAO,KACnBC,OAAOC,gBAAgB,IAAIC,WAAWH,IAAOI,QAAO,CAACC,EAAIC,IAGrDD,IAFFC,GAAQ,IACG,GACHA,EAAKC,SAAS,IACXD,EAAO,IACTA,EAAO,IAAIC,SAAS,IAAIC,cACtBF,EAAO,GACV,IAEA,KAGP,iBCVe,EAAGG,SAAAA,EAAUC,WAAAA,EAAYC,QAAAA,KAAYC,MACrD,MAAOC,EAAaC,GAAkBC,EAAAA,SAASL,GAAc,GAEvDM,EAAmBC,mBAAiBJ,GAE1CK,EAAAA,WAAU,UACmB,IAArBF,GAAkCA,IAAqBH,GAAeJ,GACtEA,EAASI,EAAW,GAEzB,CAACJ,EAAUO,EAAkBH,IAEhC,MAAOM,EAAQC,GAAaL,EAAAA,SAAmB,KACxCM,EAAaC,GAAkBP,EAAAA,SAAmB,IAEnDQ,EAAaC,EAAAA,aAAY,KAC3B,MAAMC,EAAUC,EAAMC,SAASC,QAAQhB,EAAMiB,UAAU,GAElDH,EAAMI,eAAeL,IAE1BC,EAAMC,SAASI,QAAQN,EAAQb,MAAMiB,UAAWG,IACvCN,EAAMI,eAAeE,KAEhBZ,GAACa,GAAS,IAAIA,EAAM,WAAWlC,EAAO,QACjCuB,GAACW,GAAS,IAAIA,EAAM,gBAAgBlC,EAAO,QAAK,GAClE,GACF,CAACa,EAAMiB,WA+BVX,OAAAA,EAAAA,WAAU,KACKK,MACZ,CAACA,UAGCW,EAAoBA,oBAAA,CAAAC,MAAO,CAAExB,QAAAA,GAC1BkB,SAACO,EAAAA,KAAA,MAAA,IAAQxB,EAAOyB,UAAWC,EAAKA,KAAA,WAAY1B,EAAMyB,WAAY,eAAc1B,EACvEkB,SAAA,CApCS,MAClB,MAAMJ,EAAUC,EAAMC,SAASC,QAAQhB,EAAMiB,UAAU,GAEvD,GAAKH,EAAMI,eAA6CL,GAEjD,OAAAC,EAAMa,aAA2Cd,EAAS,CAC7DZ,YAAAA,EACAC,eAAAA,EACAK,OAAAA,EACAE,YAAAA,GACH,EA0BsBmB,GAtBhBd,EAAMC,SAASc,IAAI7B,EAAMiB,UAAU,CAACa,EAAOC,KAC9C,IAAKjB,EAAMI,eAAqEY,IAAyB,IAAfC,EACtF,OAEJ,MAAMC,EAAgBD,EAAa,EAEnC,OAAOC,IAAkB/B,EACnBa,EAAMa,aAAmEG,EAAO,CAC5E,kBAAmBvB,EAAOyB,GAC1BvC,GAAIgB,EAAYuB,KAEpB,YAcV","x_google_ignoreList":[0]}
|
|
@@ -0,0 +1,2 @@
|
|
|
1
|
+
"use strict";Object.defineProperty(exports,Symbol.toStringTag,{value:"Module"});const a=require("./NavTab.js"),e=require("./NavTabs.js"),s=require("./Tabs.js"),r=require("./TabList.js"),b=require("./Tab.js"),T=require("./TabPanel.js");exports.NavTab=a.NavTab,exports.NavTabs=e.NavTabs,exports.Tabs=s.Tabs,exports.TabList=r.TabList,exports.Tab=b.Tab,exports.TabPanel=T.TabPanel;
|
|
2
|
+
//# sourceMappingURL=index.js.map
|
|
@@ -0,0 +1 @@
|
|
|
1
|
+
{"version":3,"file":"index.js","sources":[],"sourcesContent":[],"names":[],"mappings":""}
|
|
@@ -0,0 +1,2 @@
|
|
|
1
|
+
"use strict";Object.defineProperty(exports,Symbol.toStringTag,{value:"Module"});const e=require("react/jsx-runtime"),t=require("react"),r=t.createContext({density:void 0});exports.TabsContextProvider=({state:t,children:o})=>e.jsx(r.Provider,{value:t,children:o}),exports.useTabsContext=()=>t.useContext(r);
|
|
2
|
+
//# sourceMappingURL=tabsContext.js.map
|
|
@@ -0,0 +1 @@
|
|
|
1
|
+
{"version":3,"file":"tabsContext.js","sources":["../../../../src/components/tabs/tabsContext.tsx"],"sourcesContent":["import React, { createContext, useContext } from \"react\";\nimport { Density, WithChildren } from \"../..\";\n\ntype TabsContext = {\n density?: Density;\n};\n\nconst tabsContext = createContext<TabsContext>({\n density: undefined,\n});\n\nexport const useTabsContext = (): TabsContext => useContext(tabsContext);\n\ninterface Props extends WithChildren {\n state: TabsContext;\n}\n\nexport const TabsContextProvider: React.FC<Props> = ({ state, children }) => (\n <tabsContext.Provider value={state}>{children}</tabsContext.Provider>\n);\n"],"names":["tabsContext","createContext","density","state","children","jsx","Provider","value","useContext"],"mappings":"wIAOMA,EAAcC,EAAAA,cAA2B,CAC3CC,aAAS,gCASuC,EAAGC,MAAAA,EAAOC,SAAAA,KACzDC,EAAAA,IAAAL,EAAYM,SAAZ,CAAqBC,MAAOJ,EAAQC,SAAAA,2BAPX,IAAmBI,EAAAA,WAAWR"}
|
|
@@ -0,0 +1,2 @@
|
|
|
1
|
+
"use strict";Object.defineProperty(exports,Symbol.toStringTag,{value:"Module"});const o=require("react/jsx-runtime"),e=require("@react-aria/toast"),n=require("../../../clsx-E3yX_9sL.cjs"),s=require("react"),r=require("../../hooks/useBrowserPreferences/useBrowserPreferences.js");require("../../hooks/useScreen/useScreen.js"),require("../../hooks/useId/useId.js"),require("../icon/Icon.js"),require("../icon/icons/animated/ArrowVerticalAnimated.js"),require("../icon/icons/animated/ArrowHorizontalAnimated.js"),require("../icon/icons/animated/PlusRemoveAnimated.js"),require("../icon/icons/ArrowDownIcon.js"),require("../icon/icons/ArrowLeftIcon.js"),require("../icon/icons/ArrowNorthEastIcon.js"),require("../icon/icons/ArrowRightIcon.js"),require("../icon/icons/ArrowUpIcon.js"),require("../icon/icons/CalendarIcon.js"),require("../icon/icons/CheckIcon.js"),require("../icon/icons/ChevronDownIcon.js"),require("../icon/icons/ChevronLeftIcon.js"),require("../icon/icons/ChevronRightIcon.js"),require("../icon/icons/ChevronUpIcon.js");const i=require("../icon/icons/CloseIcon.js");require("../icon/icons/CopyIcon.js"),require("../icon/icons/DotsIcon.js"),require("../icon/icons/DragIcon.js");const t=require("../icon/icons/ErrorIcon.js");require("../icon/icons/GreenCheckIcon.js"),require("../icon/icons/HamburgerIcon.js");const c=require("../icon/icons/InfoIcon.js");require("../icon/icons/LinkIcon.js"),require("../icon/icons/PlusIcon.js"),require("../icon/icons/QuestionIcon.js"),require("../icon/icons/RedCrossIcon.js"),require("../icon/icons/SearchIcon.js");const a=require("../icon/icons/SuccessIcon.js"),u=require("../icon/icons/WarningIcon.js");require("../icon/icons/MinusIcon.js"),require("../icon/icons/ThumbDownIcon.js"),require("../icon/icons/ThumbUpIcon.js"),require("../icon/icons/TrashCanIcon.js"),require("../icon/icons/PenIcon.js");const j=require("../icon-button/IconButton.js"),l=require("../progress-bar/Countdown.js"),q=e=>{switch(e){case"error":return o.jsx(t.ErrorIcon,{className:"jkl-toast__icon"});case"info":return o.jsx(c.InfoIcon,{className:"jkl-toast__icon"});case"success":return o.jsx(a.SuccessIcon,{className:"jkl-toast__icon"});case"warning":return o.jsx(u.WarningIcon,{className:"jkl-toast__icon"});default:return null}};exports.Toast=function({className:t,state:c,...a}){var u;let I=s.useRef(null),{toastProps:m,titleProps:d}=e.useToast(a,c,I);const k="string"==typeof a.toast.content?a.toast.content:a.toast.content.content,h="string"==typeof a.toast.content?void 0:a.toast.content.title,f=null==(null==(u=a.toast.timer)?void 0:u.timerId),{prefersReducedMotion:g}=r.useBrowserPreferences();return s.useEffect((()=>{g&&"exiting"===a.toast.animation&&c.remove(a.toast.key)}),[g,a.toast.animation,a.toast.key,c]),o.jsxs("div",{...m,ref:I,className:n.clsx("jkl-toast",{"jkl-toast--info":"info"===a.toast.variant,"jkl-toast--error":"error"===a.toast.variant,"jkl-toast--warning":"warning"===a.toast.variant,"jkl-toast--success":"success"===a.toast.variant},t),"data-animation":a.toast.animation,onAnimationEnd:()=>{"exiting"===a.toast.animation&&c.remove(a.toast.key)},children:[o.jsx("span",{className:"jkl-toast__progress",children:a.toast.timeout?o.jsx(l.Countdown,{from:a.toast.timeout,isPaused:f,onAnimationEnd:o=>{o.stopPropagation()}}):null}),q(a.toast.variant),o.jsxs("div",{...d,className:"jkl-toast__content",children:[h&&o.jsx("p",{className:"jkl-toast__title",children:h}),o.jsx("p",{className:"jkl-toast__message",children:k})]}),o.jsx(j.IconButton,{"aria-label":"Lukk varsel",className:"jkl-toast__dismiss-button",onClick:()=>{c.close(a.toast.key)},children:o.jsx(i.CloseIcon,{})})]})};
|
|
2
|
+
//# sourceMappingURL=Toast.js.map
|
|
@@ -0,0 +1 @@
|
|
|
1
|
+
{"version":3,"file":"Toast.js","sources":["../../../../src/components/toast/Toast.tsx"],"sourcesContent":["import { type AriaToastProps, useToast } from \"@react-aria/toast\";\nimport { QueuedToast, type ToastState } from \"@react-stately/toast\";\nimport clsx from \"clsx\";\nimport React, { useEffect, useRef } from \"react\";\nimport { useBrowserPreferences } from \"../../hooks\";\nimport { CloseIcon, ErrorIcon, InfoIcon, SuccessIcon, WarningIcon } from \"../icon\";\nimport { IconButton } from \"../icon-button\";\nimport { Countdown } from \"../progress-bar\";\nimport { ToastContent, ToastOptions } from \"./types\";\n\ninterface ToastProps<T extends ToastContent> extends AriaToastProps<T> {\n className?: string;\n state: ToastState<T>;\n toast: QueuedToast<T> & ToastOptions;\n}\n\nconst getIcon = (messageType?: \"error\" | \"info\" | \"success\" | \"warning\") => {\n switch (messageType) {\n case \"error\":\n return <ErrorIcon className=\"jkl-toast__icon\" />;\n case \"info\":\n return <InfoIcon className=\"jkl-toast__icon\" />;\n case \"success\":\n return <SuccessIcon className=\"jkl-toast__icon\" />;\n case \"warning\":\n return <WarningIcon className=\"jkl-toast__icon\" />;\n default:\n return null;\n }\n};\n\nexport function Toast<T extends ToastContent>({ className, state, ...props }: ToastProps<T>) {\n let ref = useRef(null);\n let { toastProps, titleProps } = useToast(props, state, ref);\n\n const content = typeof props.toast.content === \"string\" ? props.toast.content : props.toast.content.content;\n const title = typeof props.toast.content === \"string\" ? undefined : props.toast.content.title;\n\n // @ts-ignore Proxy for å sjekke om timeren er pauset: https://github.com/adobe/react-spectrum/blob/b1545c0d225b12672fb6a4e7b787268591d66b90/packages/%40react-stately/toast/src/useToastState.ts#L222\n const isPaused = props.toast.timer?.timerId == null;\n\n const { prefersReducedMotion } = useBrowserPreferences();\n\n useEffect(() => {\n if (prefersReducedMotion && props.toast.animation === \"exiting\") {\n // If user has prefers-reduced-motion the exit animation won't run and our\n // onAnimationEnd callback won't be invoked. In this case, remove the toast\n // manually.\n state.remove(props.toast.key);\n }\n }, [prefersReducedMotion, props.toast.animation, props.toast.key, state]);\n\n return (\n <div\n {...toastProps}\n ref={ref}\n className={clsx(\n \"jkl-toast\",\n {\n \"jkl-toast--info\": props.toast.variant === \"info\",\n \"jkl-toast--error\": props.toast.variant === \"error\",\n \"jkl-toast--warning\": props.toast.variant === \"warning\",\n \"jkl-toast--success\": props.toast.variant === \"success\",\n },\n className,\n )}\n data-animation={props.toast.animation}\n onAnimationEnd={() => {\n // Remove the toast when the exiting animation completes.\n if (props.toast.animation === \"exiting\") {\n state.remove(props.toast.key);\n }\n }}\n >\n <span className=\"jkl-toast__progress\">\n {props.toast.timeout ? (\n <Countdown\n from={props.toast.timeout}\n isPaused={isPaused}\n onAnimationEnd={(e) => {\n // Avoid triggering the toast's onAnimationEnd handler so we still get our exit animation\n e.stopPropagation();\n }}\n />\n ) : null}\n </span>\n {getIcon(props.toast.variant)}\n <div {...titleProps} className=\"jkl-toast__content\">\n {title && <p className=\"jkl-toast__title\">{title}</p>}\n <p className=\"jkl-toast__message\">{content}</p>\n </div>\n <IconButton\n aria-label=\"Lukk varsel\"\n className=\"jkl-toast__dismiss-button\"\n onClick={() => {\n state.close(props.toast.key);\n }}\n >\n <CloseIcon />\n </IconButton>\n </div>\n );\n}\n"],"names":["getIcon","messageType","jsx","ErrorIcon","className","InfoIcon","SuccessIcon","WarningIcon","state","props","ref","useRef","toastProps","titleProps","useToast","content","toast","title","isPaused","_a","timer","timerId","prefersReducedMotion","useBrowserPreferences","useEffect","animation","remove","key","jsxs","clsx","variant","onAnimationEnd","children","timeout","Countdown","from","e","stopPropagation","IconButton","onClick","close","CloseIcon"],"mappings":"m5DAgBMA,EAAWC,IACb,OAAQA,GACJ,IAAK,QACM,OAAAC,EAAAA,IAACC,EAAUA,UAAA,CAAAC,UAAU,oBAChC,IAAK,OACM,OAAAF,EAAAA,IAACG,EAASA,SAAA,CAAAD,UAAU,oBAC/B,IAAK,UACM,OAAAF,EAAAA,IAACI,EAAYA,YAAA,CAAAF,UAAU,oBAClC,IAAK,UACM,OAAAF,EAAAA,IAACK,EAAYA,YAAA,CAAAH,UAAU,oBAClC,QACW,OAAA,KACf,gBAGG,UAAyCA,UAAAA,EAAWI,MAAAA,KAAUC,UAC7D,IAAAC,EAAMC,SAAO,OACXC,WAAAA,EAAYC,WAAAA,GAAeC,EAASA,SAAAL,EAAOD,EAAOE,GAElD,MAAAK,EAAyC,iBAAxBN,EAAMO,MAAMD,QAAuBN,EAAMO,MAAMD,QAAUN,EAAMO,MAAMD,QAAQA,QAC9FE,EAAuC,iBAAxBR,EAAMO,MAAMD,aAAuB,EAAYN,EAAMO,MAAMD,QAAQE,MAGlFC,EAAyC,OAA9B,OAAAC,EAAAV,EAAMO,MAAMI,YAAZD,EAAAA,EAAmBE,UAE5BC,qBAAAA,GAAyBC,EAAAA,wBAEjCC,OAAAA,EAAAA,WAAU,KACFF,GAAkD,YAA1Bb,EAAMO,MAAMS,WAI9BjB,EAAAkB,OAAOjB,EAAMO,MAAMW,IAAG,GAEjC,CAACL,EAAsBb,EAAMO,MAAMS,UAAWhB,EAAMO,MAAMW,IAAKnB,IAG9DoB,EAAAA,KAAC,MAAA,IACOhB,EACJF,IAAAA,EACAN,UAAWyB,EAAAA,KACP,YACA,CACI,kBAA2C,SAAxBpB,EAAMO,MAAMc,QAC/B,mBAA4C,UAAxBrB,EAAMO,MAAMc,QAChC,qBAA8C,YAAxBrB,EAAMO,MAAMc,QAClC,qBAA8C,YAAxBrB,EAAMO,MAAMc,SAEtC1B,GAEJ,iBAAgBK,EAAMO,MAAMS,UAC5BM,eAAgB,KAEkB,YAA1BtB,EAAMO,MAAMS,WACNjB,EAAAkB,OAAOjB,EAAMO,MAAMW,IAAG,EAIpCK,SAAA,CAAA9B,MAAC,OAAK,CAAAE,UAAU,sBACX4B,SAAAvB,EAAMO,MAAMiB,QACT/B,EAAAA,IAACgC,EAAAA,UAAA,CACGC,KAAM1B,EAAMO,MAAMiB,QAClBf,SAAAA,EACAa,eAAiBK,IAEbA,EAAEC,iBAAgB,IAG1B,OAEPrC,EAAQS,EAAMO,MAAMc,SACpBF,EAAAA,KAAA,MAAA,IAAQf,EAAYT,UAAU,qBAC1B4B,SAAA,CAAAf,GAAUf,EAAAA,IAAA,IAAA,CAAEE,UAAU,mBAAoB4B,SAAMf,IAChDf,EAAAA,IAAA,IAAA,CAAEE,UAAU,qBAAsB4B,SAAQjB,OAE/Cb,EAAAA,IAACoC,EAAAA,WAAA,CACG,aAAW,cACXlC,UAAU,4BACVmC,QAAS,KACC/B,EAAAgC,MAAM/B,EAAMO,MAAMW,IAAG,EAG/BK,eAACS,EAAUA,UAAA,QAI3B"}
|
|
@@ -0,0 +1,2 @@
|
|
|
1
|
+
"use strict";Object.defineProperty(exports,Symbol.toStringTag,{value:"Module"});const e=require("react/jsx-runtime"),t=require("@react-aria/toast"),s=require("@react-stately/toast"),r=require("../../../clsx-E3yX_9sL.cjs"),a=require("react"),o=require("react-dom"),i=require("./Toast.js");function l({placement:s,state:o,...l}){let n=a.useRef(null),{regionProps:u}=t.useToastRegion(l,o,n);return e.jsx("div",{className:r.clsx("jkl","jkl-toast-region",{"jkl-toast-region--left":"left"===s}),children:e.jsx("div",{...u,ref:n,className:"jkl-toast-region__toasts",children:[...o.visibleToasts].reverse().map((t=>e.jsx(i.Toast,{toast:t,state:o},t.key)))})})}exports.ToastRegion=function({queue:t,placement:r}){const a=s.useToastQueue(t);return a.visibleToasts.length>0?o.createPortal(e.jsx(l,{state:a,placement:r}),document.body):null};
|
|
2
|
+
//# sourceMappingURL=ToastRegion.js.map
|
|
@@ -0,0 +1 @@
|
|
|
1
|
+
{"version":3,"file":"ToastRegion.js","sources":["../../../../src/components/toast/ToastRegion.tsx"],"sourcesContent":["import { type AriaToastRegionProps, useToastRegion } from \"@react-aria/toast\";\nimport { useToastQueue, type ToastState, ToastQueue } from \"@react-stately/toast\";\nimport clsx from \"clsx\";\nimport React from \"react\";\nimport ReactDOM from \"react-dom\";\nimport { Toast } from \"./Toast\";\nimport { ToastContent } from \"./types\";\n\ninterface ToastRegionProps<T extends ToastContent = ToastContent> extends AriaToastRegionProps {\n placement: \"center\" | \"left\";\n state: ToastState<T>;\n}\n\nfunction Region<T extends ToastContent>({ placement, state, ...props }: ToastRegionProps<T>) {\n let ref = React.useRef(null);\n let { regionProps } = useToastRegion(props, state, ref);\n\n return (\n <div\n className={clsx(\"jkl\", \"jkl-toast-region\", {\n \"jkl-toast-region--left\": placement === \"left\",\n })}\n >\n <div {...regionProps} ref={ref} className=\"jkl-toast-region__toasts\">\n {[...state.visibleToasts].reverse().map((toast) => (\n <Toast key={toast.key} toast={toast} state={state} />\n ))}\n </div>\n </div>\n );\n}\n\nexport function ToastRegion({ queue, placement }: { queue: ToastQueue<ToastContent>; placement: \"center\" | \"left\" }) {\n const state = useToastQueue<ToastContent>(queue);\n return state.visibleToasts.length > 0\n ? ReactDOM.createPortal(<Region state={state} placement={placement} />, document.body)\n : null;\n}\n"],"names":["Region","placement","state","props","ref","React","useRef","regionProps","useToastRegion","jsx","className","clsx","children","visibleToasts","reverse","map","toast","Toast","key","queue","useToastQueue","length","ReactDOM","createPortal","document","body"],"mappings":"gSAaA,SAASA,GAAiCC,UAAAA,EAAWC,MAAAA,KAAUC,IACvD,IAAAC,EAAMC,EAAMC,OAAO,OACjBC,YAAAA,GAAgBC,EAAAA,eAAeL,EAAOD,EAAOE,GAG/C,OAAAK,EAAAA,IAAC,MAAA,CACGC,UAAWC,EAAAA,KAAK,MAAO,mBAAoB,CACvC,yBAAwC,SAAdV,IAG9BW,SAAAH,EAAAA,IAAC,MAAK,IAAGF,EAAaH,IAAAA,EAAUM,UAAU,2BACrCE,SAAA,IAAIV,EAAMW,eAAeC,UAAUC,KAAKC,GACpCP,EAAAA,IAAAQ,EAAAA,MAAA,CAAsBD,MAAAA,EAAcd,MAAAA,GAAzBc,EAAME,UAKtC,qBAEO,UAAuBC,MAAAA,EAAOlB,UAAAA,IAC3B,MAAAC,EAAQkB,gBAA4BD,GAC1C,OAAOjB,EAAMW,cAAcQ,OAAS,EAC9BC,EAASC,aAAcd,EAAAA,IAAAT,EAAA,CAAOE,MAAAA,EAAcD,UAAAA,IAA0BuB,SAASC,MAC/E,IACV"}
|
|
@@ -0,0 +1 @@
|
|
|
1
|
+
{"version":3,"file":"index.js","sources":[],"sourcesContent":[],"names":[],"mappings":""}
|
|
@@ -0,0 +1,2 @@
|
|
|
1
|
+
"use strict";Object.defineProperty(exports,Symbol.toStringTag,{value:"Module"});const e=require("react/jsx-runtime"),t=require("@react-stately/toast"),o=require("react"),r=require("./ToastRegion.js"),i=o.createContext({add:()=>"missing-provider"});exports.ToastProvider=({children:s,maxVisibleToasts:u=5,placement:a="center"})=>{const[n]=o.useState(new t.ToastQueue({maxVisibleToasts:u,hasExitAnimation:!0}));return e.jsxs(i.Provider,{value:{add:(e,t)=>{let o=5e3;return"number"==typeof(null==t?void 0:t.timeout)?o=t.timeout:(null===(null==t?void 0:t.timeout)||"off"===(null==t?void 0:t.timeout))&&(o=void 0),n.add(e,{...t,timeout:o})}},children:[s,e.jsx(r.ToastRegion,{queue:n,placement:a})]})},exports.useToast=()=>o.useContext(i);
|
|
2
|
+
//# sourceMappingURL=toastContext.js.map
|
|
@@ -0,0 +1 @@
|
|
|
1
|
+
{"version":3,"file":"toastContext.js","sources":["../../../../src/components/toast/toastContext.tsx"],"sourcesContent":["import { ToastQueue } from \"@react-stately/toast\";\nimport React, { createContext, useContext, useState, type FC } from \"react\";\nimport { type WithChildren } from \"../..\";\nimport { ToastRegion } from \"./ToastRegion\";\nimport { ToastContent, ToastOptions } from \"./types\";\n\ninterface ToastContextProviderProps extends WithChildren {\n maxVisibleToasts?: number;\n /**\n * @default \"center\"\n */\n placement?: \"center\" | \"left\";\n}\n\ntype ToastContext = {\n add: (toast: ToastContent, options?: ToastOptions) => string;\n};\n\nconst context = createContext<ToastContext>({\n add: () => {\n return \"missing-provider\";\n },\n});\n\nexport const useToast = (): ToastContext => useContext(context);\n\nexport const ToastProvider: FC<ToastContextProviderProps> = ({\n children,\n maxVisibleToasts = 5,\n placement = \"center\",\n}) => {\n const [queue] = useState(new ToastQueue<ToastContent>({ maxVisibleToasts, hasExitAnimation: true }));\n\n return (\n <context.Provider\n value={{\n add: (toast: ToastContent, options?: ToastOptions) => {\n let timeout: number | undefined = 5000;\n\n if (typeof options?.timeout === \"number\") {\n timeout = options.timeout as number;\n } else if (options?.timeout === null || options?.timeout === \"off\") {\n timeout = undefined;\n }\n\n return queue.add(toast, {\n ...options,\n timeout,\n });\n },\n }}\n >\n {children}\n <ToastRegion queue={queue} placement={placement} />\n </context.Provider>\n );\n};\n"],"names":["context","createContext","add","children","maxVisibleToasts","placement","queue","useState","ToastQueue","hasExitAnimation","jsxs","Provider","value","toast","options","timeout","jsx","ToastRegion","useContext"],"mappings":"wMAkBMA,EAAUC,EAAAA,cAA4B,CACxCC,IAAK,IACM,2CAM6C,EACxDC,SAAAA,EACAC,iBAAAA,EAAmB,EACnBC,UAAAA,EAAY,aAEN,MAACC,GAASC,EAAAA,SAAS,IAAIC,EAAAA,WAAyB,CAAEJ,iBAAAA,EAAkBK,kBAAkB,KAGxF,OAAAC,EAAAA,KAACV,EAAQW,SAAR,CACGC,MAAO,CACHV,IAAK,CAACW,EAAqBC,KACvB,IAAIC,EAA8B,IAE9B,MAA4B,iBAArB,MAAAD,OAAA,EAAAA,EAASC,SAChBA,EAAUD,EAAQC,SACU,QAArB,MAAAD,OAAAA,EAAAA,EAASC,UAAyC,SAArB,MAAAD,OAAAA,EAAAA,EAASC,YACnCA,OAAA,GAGPT,EAAMJ,IAAIW,EAAO,IACjBC,EACHC,QAAAA,GACH,GAIRZ,SAAA,CAAAA,EACDa,EAAAA,IAACC,EAAYA,YAAA,CAAAX,MAAAA,EAAcD,UAAAA,MAAsB,mBA7BrC,IAAoBa,EAAAA,WAAWlB"}
|
|
@@ -0,0 +1 @@
|
|
|
1
|
+
{"version":3,"file":"types.js","sources":[],"sourcesContent":[],"names":[],"mappings":""}
|
|
@@ -0,0 +1,2 @@
|
|
|
1
|
+
"use strict";Object.defineProperty(exports,Symbol.toStringTag,{value:"Module"});const e=require("react/jsx-runtime"),l=require("../../../clsx-E3yX_9sL.cjs"),s=require("react");require("../../hooks/useScreen/useScreen.js");const r=require("../../hooks/useId/useId.js"),i=require("../../hooks/useSwipeGesture/useSwipeGesture.js"),t=require("./usePillStyles.js");exports.ToggleSlider=({children:d,labels:o,className:n="",onToggle:a,defaultValue:u,hideLegend:c=!1,density:g,...j})=>{const[k,h]=s.useState(u||o[0]),p=r.useId("jkl-toggle-slider"),m=r.useId("jkl-toggle-slider-legend"),_=s.useRef(null),x=k===o[1],S=t.usePillStyles(_,x,[g]),{gestureHandlers:b}=i.useSwipeGesture({onClick:e=>{const{value:l}=e.currentTarget;h(l),a(l)},onChange:(e,l)=>{h(l?o[1]:o[0]),a(l?o[1]:o[0])}}),{onClick:y,...N}=b;return"production"!==process.env.NODE_ENV&&console.error("WARNING: ToggleSlider component has been deprecated and will be removed in some future version of the library"),e.jsxs("fieldset",{...j,className:l.clsx("jkl-toggle-slider",n),"aria-labelledby":m,"data-testid":"jkl-toggle-slider","data-density":g,children:[e.jsx("div",{id:m,className:l.clsx("jkl-toggle-slider__legend",{"jkl-toggle-slider__legend--sr-only":c}),children:d}),e.jsxs("div",{className:"jkl-toggle-slider__inputs",...N,children:[o.map((r=>e.jsxs(s.Fragment,{children:[e.jsx("input",{className:"jkl-toggle-slider__input",type:"radio",value:r,checked:r===k,name:p,id:`${r}-${p}`,onClick:y,onChange:()=>{}}),e.jsx("label",{className:l.clsx("jkl-toggle-slider__label",{"jkl-toggle-slider__label--selected":r===k}),ref:r===k?_:void 0,htmlFor:`${r}-${p}`,children:r})]},r))),e.jsx("span",{className:"jkl-toggle-slider__pill",style:S,"aria-hidden":!0})]})]})};
|
|
2
|
+
//# sourceMappingURL=ToggleSlider.js.map
|